/* ==========================================================================
   CONVERTBOX MODAL STYLES
   Box-level: .cb-box__type-center_modal
   Content:   .cb-box__inner-col
   ========================================================================== */

/* ── Modal box ──────────────────────────────────────────────────────────── */
#cbox .cb-box__type-center_modal {
	max-width: 520px;
}

#cbox .cb-box__type-center_modal .cb-box__inner-wrap {
	position: relative; /* needed for ::before gradient border */
	border-radius: var(--radius-xl);
	box-shadow:
		0 30px 80px -20px rgba(10, 71, 89, .35),
		0 12px 40px rgba(10, 71, 89, .18);
}

/* Rainbow gradient border */
#cbox .cb-box__type-center_modal .cb-box__inner-wrap::before {
	content: "";
	position: absolute;
	inset: -1px;
	border-radius: inherit;
	z-index: -1;
	background: linear-gradient(135deg, var(--eln-teal) 0%, #8a7fad 35%, var(--eln-magenta) 70%, #e0a62c 100%);
	padding: 2px;
	-webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
	        mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
	-webkit-mask-composite: xor;
	        mask-composite: exclude;
	opacity: .9;
}

/* ── Close button ───────────────────────────────────────────────────────── */
#cbox .cb-box__type-center_modal .cb-close {
	position: absolute;
	top: 16px;
	right: 16px;
	width: 32px;
	height: 32px;
	border-radius: var(--radius-pill);
	background: var(--bg-paper);
	display: grid;
	place-items: center;
	transition: all var(--dur) var(--ease-out);
}

#cbox .cb-box__type-center_modal .cb-close:hover {
	background: #fbe6ec;
	color: var(--eln-magenta) !important;
	transform: rotate(90deg);
}

/* ── Content area ───────────────────────────────────────────────────────── */
.cb-box__inner-col .cb-element__type-html {
	text-align: center;
}

#cbox .cb-element {
	margin-top: 0;
}

/* Icon */
.cb-box__inner-col img {
	display: block;
	width: 50px;
	height: 50px;
	margin: 0 auto 18px;
	padding: 17px;
	box-sizing: content-box;
	background: var(--eln-pink-50);
	border-radius: var(--radius-pill);
}

/* ── Eyebrow (.eln-eyebrow) ─────────────────────────────────────────────── */
.cb-box__inner-col .eln-eyebrow {
	font-family: var(--font-display);
	font-weight: 800;
	font-size: 12px;
	letter-spacing: .12em;
	text-transform: uppercase;
	color: var(--eln-teal);
	margin: 0 0 8px;
	display: inline-flex;
	align-items: center;
	gap: 8px;
}

.cb-box__inner-col .eln-eyebrow::before {
	content: "";
	width: 18px;
	height: 2px;
	background: var(--eln-teal);
	border-radius: 2px;
	flex-shrink: 0;
}

/* ── Heading ────────────────────────────────────────────────────────────── */
.cb-box__inner-col h1,
.cb-box__inner-col h2 {
	font-family: var(--font-display);
	font-weight: 900;
	font-size: 40px;
	line-height: 1.1;
	letter-spacing: -0.02em;
	color: var(--eln-midnight);
	text-align: center;
	margin: 0 0 6px;
}

/* ── Script subtitle (.eln-script) ─────────────────────────────────────── */
.cb-box__inner-col .eln-script {
	font-family: var(--font-script);
	font-weight: 400;
	font-size: 22px;
	line-height: 1.15;
	color: var(--eln-magenta);
	margin: 0 0 16px;
}

/* ── Body paragraph (HTML <p> elements) ─────────────────────────────────── */
.cb-box__inner-col .cb-element__type-text .ff-inherit {
	margin-bottom: 22px;
}

.cb-box__inner-col .cb-element__type-text .ff-inherit b {
	color: var(--eln-midnight) !important;
}

/* ── Form - Input ────────────────────────────────────────────────────────── */
#cbox .cb-box__inner-col input {
	font-family: var(--font-body);
	color: var(--eln-midnight);
	border: 1.5px solid var(--border-2);
	padding: 13px 18px;
	outline: none;
	transition: border-color var(--dur) var(--ease-out), box-shadow var(--dur) var(--ease-out);
}

#cbox .cb-box__inner-col input::placeholder { color: #95a3a8; }

#cbox .cb-box__inner-col input:focus {
	border-color: var(--eln-teal) !important;
	box-shadow: 0 0 0 3px rgba(27, 154, 163, .15);
}

/* ── Form - Checkbox ────────────────────────────────────────────────────────── */
#cbox .cb-form-checkbox {
	margin: 20px 0;
}
#cbox .cb-form-checkbox .cb-form-checkbox__text {
	font-family: var(--font-body);
	font-size: 14px;
}

/* ── Form -Submit button ──────────────────────────────────────────────────────── */
#cbox .cb-box__inner-col .cb-form-group__btn {
	padding: 13px 22px;
	box-shadow: var(--shadow-pink);
	transition: transform var(--dur) var(--ease-out), box-shadow var(--dur) var(--ease-out), background var(--dur) var(--ease-out);
}

#cbox .cb-box__inner-col .cb-form-group__btn:hover {
	background: color-mix(in oklab, var(--eln-magenta) 88%, #000);
	transform: translateY(-1px);
	box-shadow: 0 6px 18px rgba(198, 90, 129, .35);
}

/* ── Consent text (.eln-consent) ────────────────────────────────────────── */
.cb-box__inner-col .eln-consent {
	font-size: 14px;
	line-height: 1.5;
	color: #6b7b83;
	margin-top: 15px;
}

/* ── Backdrop ───────────────────────────────────────────────────────────── */
.cb-overlay,
.cb-backdrop {
	background: rgba(10, 71, 89, .58) !important;
	backdrop-filter: blur(2px);
}

/* ── Responsive ─────────────────────────────────────────────────────────── */
@media (max-width: 540px) {
	#cbox .cb-box__type-center_modal .cb-box__inner-wrap { border-radius: 22px !important; }

	.cb-box__inner-col h2 { font-size: 32px; }

	.cb-box__inner-col .eln-script { font-size: 18px; }

	.cb-box__inner-col .eln-eyebrow { font-size: 11px; }

	#cbox .cb-box__inner-col input {
		padding: 12px 16px;
		font-size: 14px;
	}

	.cb-box__inner-col img {
		width: 40px;
		height: 40px;
		padding: 14px;
		margin-bottom: 14px;
	}
}
