:root {
	--mmtv-color-ink: #101419;
	--mmtv-color-muted: #666a70;
	--mmtv-color-surface: #ffffff;
	--mmtv-color-surface-soft: #f7f7f5;
	--mmtv-color-line: #dedfdb;
	--mmtv-color-lime: #d7ff01;
	--mmtv-color-lime-strong: #c7ed00;
	--mmtv-color-focus: #789400;
	--mmtv-space-2xs: 4px;
	--mmtv-space-xs: 8px;
	--mmtv-space-sm: 12px;
	--mmtv-space-md: 16px;
	--mmtv-space-lg: 24px;
	--mmtv-space-xl: 32px;
	--mmtv-space-2xl: 48px;
	--mmtv-space-3xl: 72px;
	--mmtv-space-section: clamp(64px, 8vw, 112px);
	--mmtv-font-sans: -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif;
	--mmtv-type-display: clamp(46px, 7vw, 96px);
	--mmtv-type-h1: clamp(40px, 6vw, 76px);
	--mmtv-type-h2: clamp(32px, 4.5vw, 56px);
	--mmtv-type-h3: clamp(22px, 2.4vw, 32px);
	--mmtv-type-body-lg: clamp(18px, 1.6vw, 21px);
	--mmtv-type-body: 16px;
	--mmtv-type-small: 14px;
	--mmtv-type-eyebrow: 12px;
	--mmtv-leading-tight: 1.04;
	--mmtv-leading-heading: 1.12;
	--mmtv-leading-body: 1.62;
	--mmtv-radius-sm: 12px;
	--mmtv-radius-md: 18px;
	--mmtv-radius-lg: 22px;
	--mmtv-radius-xl: 30px;
	--mmtv-radius-pill: 999px;
	--mmtv-shadow-sm: 0 8px 24px rgba(16, 20, 25, .06);
	--mmtv-shadow-md: 0 18px 50px rgba(16, 20, 25, .09);
	--mmtv-shadow-lg: 0 28px 80px rgba(16, 20, 25, .12);
	--mmtv-container-text: 760px;
	--mmtv-container-content: 1180px;
	--mmtv-container-wide: 1380px;
	--mmtv-gutter: clamp(18px, 4vw, 48px);
	--mmtv-transition-fast: 160ms ease;
	--mmtv-transition-base: 220ms ease;
}

.mmtv-performance-ready,
.mmtv-performance-ready * {
	box-sizing: border-box;
}

.mmtv-performance-ready img,
.mmtv-performance-ready video,
.mmtv-performance-ready iframe {
	max-width: 100%;
}

.mmtv-performance-ready img,
.mmtv-performance-ready video {
	height: auto;
}

.mmtv-container {
	width: min(calc(100% - (2 * var(--mmtv-gutter))), var(--mmtv-container-content));
	margin-inline: auto;
}

.mmtv-container--text {
	max-width: var(--mmtv-container-text);
}

.mmtv-container--wide {
	width: min(calc(100% - (2 * var(--mmtv-gutter))), var(--mmtv-container-wide));
}

.mmtv-section {
	padding-block: var(--mmtv-space-section);
}

.mmtv-section--soft {
	background: var(--mmtv-color-surface-soft);
}

.mmtv-section-header {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(240px, .5fr);
	gap: var(--mmtv-space-xl);
	align-items: end;
	margin-bottom: clamp(30px, 5vw, 60px);
}

.mmtv-section-header__eyebrow {
	margin: 0 0 var(--mmtv-space-sm);
	color: var(--mmtv-color-muted);
	font: 750 var(--mmtv-type-eyebrow)/1.3 var(--mmtv-font-sans);
	letter-spacing: .14em;
	text-transform: uppercase;
}

.mmtv-section-header h2,
.mmtv-section-title {
	margin: 0;
	color: var(--mmtv-color-ink);
	font: 750 var(--mmtv-type-h2)/var(--mmtv-leading-heading) var(--mmtv-font-sans);
	letter-spacing: -.045em;
}

.mmtv-section-header p:last-child {
	margin: 0;
	color: var(--mmtv-color-muted);
	font: 400 var(--mmtv-type-body)/var(--mmtv-leading-body) var(--mmtv-font-sans);
}

.mmtv-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: clamp(16px, 2.5vw, 30px);
}

.mmtv-grid--2 {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.mmtv-grid--4 {
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.mmtv-card {
	position: relative;
	overflow: hidden;
	border: 1px solid var(--mmtv-color-line);
	border-radius: var(--mmtv-radius-lg);
	background: var(--mmtv-color-surface);
	box-shadow: var(--mmtv-shadow-sm);
}

.mmtv-card__body {
	padding: clamp(20px, 3vw, 30px);
}

.mmtv-aspect-media {
	position: relative;
	overflow: hidden;
	background: var(--mmtv-color-surface-soft);
	aspect-ratio: 16 / 9;
}

.mmtv-aspect-media > img,
.mmtv-aspect-media > video,
.mmtv-aspect-media > iframe {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.mmtv-button {
	display: inline-flex;
	min-height: 48px;
	padding: 12px 22px;
	align-items: center;
	justify-content: center;
	gap: var(--mmtv-space-xs);
	border: 1px solid var(--mmtv-color-ink);
	border-radius: var(--mmtv-radius-pill);
	background: var(--mmtv-color-ink);
	color: #fff;
	font: 700 var(--mmtv-type-small)/1.2 var(--mmtv-font-sans);
	text-align: center;
	text-decoration: none;
	cursor: pointer;
	transition: transform var(--mmtv-transition-fast), background-color var(--mmtv-transition-fast), border-color var(--mmtv-transition-fast);
}

.mmtv-button--lime {
	border-color: var(--mmtv-color-lime);
	background: var(--mmtv-color-lime);
	color: var(--mmtv-color-ink);
}

.mmtv-button--quiet {
	border-color: var(--mmtv-color-line);
	background: transparent;
	color: var(--mmtv-color-ink);
}

.mmtv-button:hover {
	transform: translateY(-1px);
}

.mmtv-button--lime:hover {
	border-color: var(--mmtv-color-lime-strong);
	background: var(--mmtv-color-lime-strong);
}

.mmtv-field {
	width: 100%;
	min-height: 54px;
	padding: 13px 17px;
	border: 1px solid var(--mmtv-color-line);
	border-radius: var(--mmtv-radius-md);
	background: var(--mmtv-color-surface);
	color: var(--mmtv-color-ink);
	font: 500 16px/1.35 var(--mmtv-font-sans);
	box-shadow: none;
}

.mmtv-field::placeholder {
	color: var(--mmtv-color-muted);
	opacity: 1;
}

.mmtv-button:focus-visible,
.mmtv-field:focus-visible,
.mmtv-card a:focus-visible,
.mmtv-performance-ready [data-mmtv-interactive]:focus-visible {
	outline: 3px solid var(--mmtv-color-focus);
	outline-offset: 3px;
}

.mmtv-content-auto {
	content-visibility: auto;
	contain-intrinsic-size: auto 700px;
}

.mmtv-render-boundary {
	contain: layout paint style;
}

.mmtv-skeleton {
	min-height: 18px;
	border-radius: var(--mmtv-radius-sm);
	background: #eceee9;
}

.mmtv-stack > * {
	margin-block: 0;
}

.mmtv-stack > * + * {
	margin-top: var(--mmtv-stack-space, var(--mmtv-space-md));
}

.mmtv-cluster {
	display: flex;
	flex-wrap: wrap;
	gap: var(--mmtv-cluster-space, var(--mmtv-space-sm));
	align-items: center;
}

@media (max-width: 980px) {
	.mmtv-grid,
	.mmtv-grid--4 {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.mmtv-section-header {
		grid-template-columns: 1fr;
		gap: var(--mmtv-space-md);
	}
}

@media (max-width: 640px) {
	:root {
		--mmtv-space-section: clamp(52px, 14vw, 78px);
		--mmtv-gutter: 16px;
	}

	.mmtv-grid,
	.mmtv-grid--2,
	.mmtv-grid--4 {
		grid-template-columns: 1fr;
	}

	.mmtv-button {
		min-height: 50px;
	}
}

@media (prefers-reduced-motion: reduce) {
	.mmtv-performance-ready *,
	.mmtv-performance-ready *::before,
	.mmtv-performance-ready *::after {
		scroll-behavior: auto !important;
		animation-duration: .001ms !important;
		animation-iteration-count: 1 !important;
		transition-duration: .001ms !important;
	}
}

