/* =====================================================
   Mido Hasan — Internal Page Final CTA (scoped)
   /assets/css/19__page-cta.css
   MIDO PHASE 9.5 NAV CTA CSS ACTIVE

   Matches the visual language of 10__final-cta.css but is
   scoped to .cbm-page-cta so it applies only to internal pages.
   The homepage final-cta is untouched.

   Key fixes over the about/thinking/work raw CTA styles:
   - Glow centred at 50% 55% (never cropped at top)
   - Padding is content-driven via clamp; no forced min-height
   - Ornament circles, card atmosphere, and status dot match homepage
   ===================================================== */

/* MIDO PHASE 9.5 NAV CTA CSS ACTIVE */

/* ── Section wrapper ── */
.cbm-page-cta {
	position: relative;
	background: transparent;
	overflow: clip;
	isolation: isolate;
	padding-block: clamp(64px, 9vw, 120px);
}

/* Section-level atmosphere: glow sits at 50% 55% so it never touches the top edge */
.cbm-page-cta::before {
	content: '';
	position: absolute;
	inset: 0;
	z-index: 0;
	background:
		radial-gradient(ellipse 54% 44% at 50% 55%, rgba(142, 99, 163, .28), transparent 68%),
		radial-gradient(ellipse 36% 28% at 72% 72%, rgba(183, 140, 255, .14), transparent 70%);
	pointer-events: none;
}

.cbm-page-cta .cbm-shell {
	width: min(940px, calc(100% - var(--site-gutter)));
	position: relative;
	z-index: 1;
}

/* ── Glass card ── */
.cbm-page-cta__card {
	/* Locked glass effect (preserved exactly) */
	backdrop-filter: blur(20px) saturate(200%);
	-webkit-backdrop-filter: blur(20px) saturate(200%);
	background-color: rgba(1, 0, 5, 0.1);
	border-radius: 20px;
	border: 1px solid rgba(255, 255, 255, 0.125);

	position: relative;
	overflow: hidden;
	isolation: isolate;

	/* Content-driven height — no min-height */
	display: grid;
	place-items: center;
	padding: clamp(48px, 6vw, 76px);
}

/* Inner card gradient atmosphere */
.cbm-page-cta__card::before {
	content: '';
	position: absolute;
	inset: 0;
	z-index: 0;
	background:
		radial-gradient(circle 480px at 50% 38%, rgba(142, 99, 163, .16), transparent 68%),
		radial-gradient(circle 320px at 16% 16%, rgba(197, 166, 211, .07), transparent 66%),
		linear-gradient(135deg, rgba(255, 255, 255, .05), rgba(255, 255, 255, .005));
	pointer-events: none;
}

/* Inner card depth shadow */
.cbm-page-cta__card::after {
	content: '';
	position: absolute;
	inset: 0;
	z-index: 0;
	border-radius: inherit;
	pointer-events: none;
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, .12),
		inset 0 -1px 0 rgba(183, 140, 255, .07),
		0 4px 10px rgba(0, 0, 0, .10),
		0 14px 32px rgba(0, 0, 0, .12),
		0 32px 68px rgba(0, 0, 0, .14),
		0 60px 120px rgba(0, 0, 0, .12);
}

/* ── Content block ── */
.cbm-page-cta__content {
	position: relative;
	z-index: 2;
	width: min(760px, 100%);
	text-align: center;
	display: flex;
	flex-direction: column;
	align-items: center;
}

.cbm-page-cta__kicker {
	justify-content: center;
	margin-bottom: clamp(14px, 1.8vw, 22px);
}

.cbm-page-cta__heading {
	font-size: clamp(2.4rem, 5.4vw, 5.6rem);
	line-height: .96;
	letter-spacing: -.048em;
	margin-bottom: clamp(20px, 2.6vw, 32px);
	max-width: 800px;
	text-align: center;
}

.cbm-page-cta__heading em {
	padding-bottom: .18em;
}

.cbm-page-cta__copy {
	max-width: 560px;
	margin-inline: auto;
	margin-bottom: clamp(26px, 3.2vw, 40px);
	text-align: center;
}

.cbm-page-cta__actions {
	display: flex;
	align-items: center;
	justify-content: center;
	width: auto;
	margin-inline: auto;
}

.cbm-page-cta__details {
	position: relative;
	z-index: 2;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	margin-top: clamp(30px, 3.8vw, 46px);
	color: var(--text-muted);
	font-size: 9px;
	font-weight: 700;
	letter-spacing: .16em;
	text-transform: uppercase;
	text-align: center;
}

.cbm-page-cta__status {
	display: inline-flex;
	align-items: center;
	gap: 9px;
}

.cbm-page-cta__dot {
	width: 7px;
	height: 7px;
	border-radius: 999px;
	background: var(--accent-lime);
	box-shadow: 0 0 16px rgba(183, 140, 255, .38);
	animation: cbm-page-cta-dot 2.4s ease-in-out infinite;
}

@keyframes cbm-page-cta-dot {
	0%, 100% { opacity: 1; transform: scale(1); }
	50% { opacity: .35; transform: scale(.72); }
}

/* ── Ornament circles (same as homepage) ── */
.cbm-page-cta__ornament {
	position: absolute;
	z-index: 1;
	pointer-events: none;
	opacity: .9;
	will-change: transform, opacity;
}

.cbm-page-cta__ornament--one {
	width: clamp(160px, 20vw, 300px);
	height: clamp(160px, 20vw, 300px);
	top: 8%;
	left: 6%;
	border-radius: 50%;
	border: 1px solid rgba(197, 166, 211, .18);
	background: radial-gradient(circle, rgba(197, 166, 211, .05), transparent 62%);
	animation: cbm-page-cta-orbit 6.4s var(--ease-soft, ease-in-out) infinite;
}

.cbm-page-cta__ornament--one::before,
.cbm-page-cta__ornament--one::after {
	content: '';
	position: absolute;
	border-radius: 50%;
	pointer-events: none;
	will-change: transform, opacity;
}

.cbm-page-cta__ornament--one::before {
	inset: 18%;
	border: 1px solid rgba(183, 140, 255, .16);
	animation: cbm-page-cta-ring 6.4s var(--ease-soft, ease-in-out) infinite .35s;
}

.cbm-page-cta__ornament--one::after {
	inset: 36%;
	border: 1px solid rgba(142, 99, 163, .26);
	background: radial-gradient(circle, rgba(142, 99, 163, .07), transparent 62%);
	animation: cbm-page-cta-ring 6.4s var(--ease-soft, ease-in-out) infinite .7s;
}

.cbm-page-cta__ornament--two {
	display: none;
}

@keyframes cbm-page-cta-orbit {
	0%, 100% { transform: scale(.96); opacity: .46; }
	50%       { transform: scale(1.08); opacity: .9; }
}

@keyframes cbm-page-cta-ring {
	0%, 100% { transform: scale(.86); opacity: .42; }
	50%       { transform: scale(1.16); opacity: 1; }
}

/* ── Mobile ── */
@media (max-width: 760px) {
	.cbm-page-cta .cbm-shell { width: min(100% - 40px, 940px); }

	.cbm-page-cta__card {
		padding: 34px 20px;
	}

	.cbm-page-cta__content {
		text-align: left;
		align-items: flex-start;
	}

	.cbm-page-cta__kicker { justify-content: flex-start; }
	.cbm-page-cta__copy   { margin-inline: 0; text-align: left; }

	.cbm-page-cta__actions {
		justify-content: flex-start;
		align-items: stretch;
		flex-direction: column;
		width: 100%;
	}

	.cbm-page-cta__actions .cbm-u-btn {
		width: 100%;
	}

	.cbm-page-cta__details {
		justify-content: flex-start;
	}
}

@media (min-width: 761px) {
	.cbm-page-cta__actions,
	.cbm-page-cta__actions .cbm-u-btn {
		width: auto !important;
		max-width: max-content;
		flex: 0 0 auto;
	}
}

@media (max-width: 420px) {
	.cbm-page-cta__heading { font-size: clamp(2.2rem, 15vw, 3.6rem); }
}

@media (prefers-reduced-motion: reduce) {
	.cbm-page-cta__ornament,
	.cbm-page-cta__ornament::before,
	.cbm-page-cta__ornament::after,
	.cbm-page-cta__dot {
		animation: none !important;
	}
}
