.maratonou-waitlist-section {
	position: relative;
	overflow: hidden;
	padding: var(--section-space, 112px) 0;
	background:
		radial-gradient(circle at 50% -20%, rgba(155, 92, 255, .17), transparent 42%),
		linear-gradient(180deg, #0c0910, #08070a);
	color: #f8f5ff;
}

.maratonou-waitlist-section::before {
	content: "";
	position: absolute;
	inset: 0;
	pointer-events: none;
	opacity: .16;
	background-image: linear-gradient(rgba(255,255,255,.035) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.035) 1px, transparent 1px);
	background-size: 58px 58px;
	mask-image: linear-gradient(to bottom, #000, transparent 75%);
}

.maratonou-waitlist-container {
	position: relative;
	z-index: 1;
}

.maratonou-waitlist-card,
.maratonou-waitlist-success {
	width: min(100%, 720px);
	margin-inline: auto;
	padding: 68px 72px;
	border: 1px solid rgba(255,255,255,.1);
	border-radius: 28px;
	background: rgba(13, 11, 16, .88);
	box-shadow: 0 35px 90px rgba(0,0,0,.38), inset 0 1px rgba(255,255,255,.035);
	backdrop-filter: blur(16px);
}

.maratonou-waitlist-copy {
	max-width: 600px;
	margin: 0 auto 34px;
	text-align: center;
}

.maratonou-waitlist-kicker,
.maratonou-waitlist-success-eyebrow {
	margin-bottom: 14px;
	color: var(--purple-bright, #b97aff);
	font-size: 11px;
	font-weight: 800;
	letter-spacing: .18em;
	text-transform: uppercase;
}

.maratonou-waitlist-copy h2,
.maratonou-waitlist-success h2 {
	margin: 0 0 16px;
	font-family: var(--heading-font, inherit);
	font-size: clamp(36px, 5vw, 54px);
	font-weight: 800;
	line-height: 1.03;
	letter-spacing: -.045em;
}

.maratonou-waitlist-copy > p,
.maratonou-waitlist-success > p {
	max-width: 540px;
	margin: 0 auto;
	color: #aaa3b3;
	font-size: 16px;
	line-height: 1.7;
}

.maratonou-waitlist-form {
	display: grid;
	gap: 18px;
	width: min(100%, 520px);
	margin-inline: auto;
}

.maratonou-waitlist-signup-row {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 10px;
}

.maratonou-waitlist-field {
	display: block;
}

.maratonou-waitlist-field .sr-only {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}

.maratonou-waitlist-form input[type="email"] {
	width: 100%;
	min-height: 56px;
	padding: 0 18px;
	border: 1px solid rgba(255,255,255,.15);
	border-radius: 12px;
	outline: 0;
	background: rgba(255,255,255,.035);
	color: #fff;
	font: 600 15px var(--body-font, inherit);
}

.maratonou-waitlist-form input[type="email"]::placeholder {
	color: #716a77;
}

.maratonou-waitlist-form input[type="email"]:focus {
	border-color: var(--purple, #9b5cff);
	box-shadow: 0 0 0 3px rgba(155,92,255,.2);
}

.maratonou-waitlist-consent {
	display: grid;
	grid-template-columns: 18px 1fr;
	gap: 10px;
	align-items: start;
	color: #8f8898;
	font-size: 11px;
	line-height: 1.55;
}

.maratonou-waitlist-consent input {
	width: 16px;
	height: 16px;
	margin: 1px 0 0;
	accent-color: var(--purple, #9b5cff);
}

.maratonou-waitlist-consent a {
	color: #d8d1df;
	text-decoration: underline;
	text-underline-offset: 2px;
}

.maratonou-waitlist-submit {
	min-height: 56px;
	padding: 0 21px;
	border: 1px solid rgba(255,255,255,.35);
	border-radius: 12px;
	background: #f8f5ff;
	color: #151119;
	font: 800 14px var(--body-font, inherit);
	white-space: nowrap;
	cursor: pointer;
	transition: transform .2s, background .2s, border-color .2s;
}

.maratonou-waitlist-submit:hover {
	transform: translateY(-2px);
	background: #fff;
	border-color: #fff;
}

.maratonou-waitlist-notice {
	width: min(100%, 720px);
	margin: 0 auto 18px;
	padding: 14px 16px;
	border: 1px solid rgba(200,244,90,.2);
	border-radius: 12px;
	background: rgba(200,244,90,.09);
	color: #e7f6c6;
	font-weight: 650;
}

.maratonou-waitlist-notice.is-error {
	border-color: rgba(255,116,72,.24);
	background: rgba(255,116,72,.1);
	color: #ffd7ca;
}

.maratonou-waitlist-success {
	display: grid;
	justify-items: center;
	text-align: center;
}

.maratonou-waitlist-success-icon {
	display: grid;
	place-content: center;
	width: 70px;
	height: 70px;
	margin-bottom: 24px;
	border: 1px solid rgba(255,255,255,.2);
	border-radius: 50%;
	background: linear-gradient(135deg, var(--purple, #9b5cff), #d36ff3);
	color: #fff;
	box-shadow: 0 18px 45px rgba(155,92,255,.3);
	font-size: 30px;
	font-weight: 800;
}

.maratonou-waitlist-success-detail {
	margin-bottom: 10px !important;
	color: #e3dce9 !important;
	font-weight: 650;
}

.maratonou-waitlist-follow {
	margin-top: 30px;
	color: #fff;
	font-size: 13px;
}

.maratonou-waitlist-socials {
	display: flex;
	justify-content: center;
	gap: 10px;
	margin-top: 14px;
}

.maratonou-waitlist-socials a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 9px;
	min-height: 48px;
	padding: 0 20px;
	border: 1px solid rgba(255,255,255,.16);
	border-radius: 12px;
	background: rgba(255,255,255,.045);
	color: #fff;
	font-size: 13px;
	font-weight: 750;
	transition: transform .2s, border-color .2s, background .2s;
}

.maratonou-waitlist-socials a:hover {
	transform: translateY(-2px);
	border-color: rgba(185,122,255,.7);
	background: rgba(155,92,255,.12);
}

.maratonou-waitlist-socials span {
	font-size: 18px;
}

.maratonou-waitlist-hp {
	position: absolute !important;
	left: -9999px !important;
	width: 1px !important;
	height: 1px !important;
	overflow: hidden !important;
}

@media (max-width: 720px) {
	.maratonou-waitlist-section { padding: 74px 0; }
	.maratonou-waitlist-card,
	.maratonou-waitlist-success { padding: 48px 24px; border-radius: 22px; }
	.maratonou-waitlist-signup-row { grid-template-columns: 1fr; }
	.maratonou-waitlist-submit { width: 100%; }
}

@media (max-width: 440px) {
	.maratonou-waitlist-card,
	.maratonou-waitlist-success { margin-inline: -5px; width: calc(100% + 10px); padding-inline: 19px; }
	.maratonou-waitlist-copy h2,
	.maratonou-waitlist-success h2 { font-size: 34px; }
	.maratonou-waitlist-socials { width: 100%; flex-direction: column; }
	.maratonou-waitlist-socials a { width: 100%; }
}
