* {
	box-sizing: border-box;
}

html {
	min-height: 100%;
	background: #07020d;
}

body.mvdl-mm-page {
	min-height: 100vh;
	margin: 0;
	color: #fff8ff;
	background:
		radial-gradient(circle at 24% 14%, rgba(196, 96, 255, .26), transparent 34rem),
		radial-gradient(circle at 88% 82%, rgba(91, 24, 154, .52), transparent 30rem),
		linear-gradient(135deg, #07020d 0%, #17031f 46%, #3f0b5d 100%);
	font-family: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
	line-height: 1.6;
}

.mvdl-mm-shell {
	position: relative;
	display: flex;
	flex-direction: column;
	min-height: 100vh;
	padding: clamp(1rem, 2.8vw, 2.5rem);
	overflow: hidden;
	isolation: isolate;
}

.mvdl-mm-video,
.mvdl-mm-overlay {
	position: fixed;
	inset: 0;
	width: 100%;
	height: 100%;
}

.mvdl-mm-video {
	z-index: -3;
	object-fit: cover;
	opacity: .86;
	filter: saturate(1.14) contrast(1.08) brightness(.82);
}

.mvdl-mm-overlay {
	z-index: -2;
	background:
		linear-gradient(180deg, rgba(7, 2, 13, .5) 0%, rgba(7, 2, 13, .1) 42%, rgba(7, 2, 13, .82) 100%),
		radial-gradient(circle at 50% 18%, rgba(255, 255, 255, .08), transparent 24rem),
		radial-gradient(circle at 50% 96%, rgba(92, 18, 130, .82), transparent 28rem);
}

.mvdl-mm-hero {
	position: relative;
	z-index: 1;
	display: grid;
	justify-items: center;
	gap: .9rem;
	width: 100%;
	min-height: calc(100vh - 11rem);
	padding: clamp(1.5rem, 8vh, 5.5rem) 0 3rem;
	text-align: center;
	pointer-events: none;
}

.mvdl-mm-logo {
	display: block;
	width: min(760px, 82vw);
	height: auto;
	margin: 0;
	filter:
		drop-shadow(0 22px 58px rgba(9, 2, 15, .72))
		drop-shadow(0 0 38px rgba(224, 170, 255, .36));
}

.mvdl-mm-logo--legal {
	width: min(360px, 76vw);
	margin: 0 auto 1.4rem;
}

.mvdl-mm-logo-fallback {
	display: inline-flex;
	color: #ead3ff;
	font-size: clamp(2rem, 7vw, 5rem);
	font-weight: 700;
	letter-spacing: .08em;
	text-transform: uppercase;
	text-shadow: 0 18px 48px rgba(199, 125, 255, .32);
}

.mvdl-mm-status-label,
.mvdl-mm-kicker {
	margin: 0;
	color: #f1d8ff;
	font-size: .78rem;
	font-weight: 800;
	letter-spacing: .32em;
	text-transform: uppercase;
	text-shadow: 0 10px 30px rgba(7, 2, 13, .7);
}

.mvdl-mm-status-label {
	padding: .5rem .9rem;
	border: 1px solid rgba(241, 216, 255, .28);
	border-radius: 999px;
	background: rgba(10, 3, 18, .38);
	backdrop-filter: blur(12px);
}

.mvdl-mm-footer {
	position: relative;
	z-index: 2;
	display: grid;
	justify-items: center;
	gap: .9rem;
	width: 100%;
	margin-top: auto;
	padding-bottom: clamp(.25rem, 1.5vh, 1rem);
	color: rgba(255, 248, 255, .72);
	font-size: .86rem;
	text-align: center;
}

.mvdl-mm-footer p {
	margin: 0;
}

.mvdl-mm-legal-links {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: .7rem;
}

.mvdl-mm-legal-links a,
.mvdl-mm-back {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 2.8rem;
	padding: .72rem 1.05rem;
	border: 1px solid rgba(224, 170, 255, .38);
	border-radius: 999px;
	color: #fff8ff;
	background: rgba(10, 3, 18, .42);
	box-shadow: 0 16px 44px rgba(7, 2, 13, .28);
	text-decoration: none;
	backdrop-filter: blur(14px);
	transition: transform .18s ease, border-color .18s ease, background .18s ease;
}

.mvdl-mm-legal-links a:hover,
.mvdl-mm-legal-links a:focus,
.mvdl-mm-back:hover,
.mvdl-mm-back:focus {
	border-color: rgba(244, 213, 255, .84);
	background: linear-gradient(135deg, rgba(91, 24, 154, .88), rgba(157, 78, 221, .86));
	transform: translateY(-1px);
	outline: none;
}

.mvdl-mm-legal-page {
	padding: clamp(1rem, 3vw, 3rem);
}

.mvdl-mm-legal-shell {
	width: min(1080px, 100%);
	margin: 0 auto;
}

.mvdl-mm-legal-card {
	padding: clamp(1.4rem, 4vw, 4rem);
	border: 1px solid rgba(224, 170, 255, .22);
	border-radius: clamp(1.4rem, 3vw, 2.4rem);
	background: rgba(8, 3, 13, .76);
	box-shadow: 0 28px 80px rgba(8, 3, 13, .44);
}

.mvdl-mm-legal-card h1 {
	max-width: 980px;
	margin: 1rem 0 1.8rem;
	font-size: clamp(2.2rem, 5vw, 4.8rem);
	line-height: .98;
	letter-spacing: -.055em;
}

.mvdl-mm-legal-content {
	display: block;
	color: rgba(255, 248, 255, .88);
	font-size: clamp(1rem, 1.3vw, 1.08rem);
	white-space: pre-wrap;
}

.mvdl-mm-footer--legal {
	padding: 1.25rem 0 0;
}

@media (max-width: 720px) {
	.mvdl-mm-shell {
		padding: .9rem;
	}

	.mvdl-mm-hero {
		min-height: calc(100vh - 14rem);
		padding-top: clamp(1.25rem, 8vh, 4rem);
	}

	.mvdl-mm-logo {
		width: min(560px, 92vw);
	}

	.mvdl-mm-legal-links {
		display: grid;
		width: 100%;
	}

	.mvdl-mm-legal-links a {
		width: 100%;
	}
}

@media (prefers-reduced-motion: reduce) {
	.mvdl-mm-video {
		display: none;
	}

	.mvdl-mm-legal-links a,
	.mvdl-mm-back {
		transition: none;
	}
}
