@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=Unbounded:wght@400;500;600;700&display=swap');

:root {
  --brand: #41080e;
  --brand-strong: #2a070b;
  --brand-soft: #7b2530;
  --brand-bright: #9d3642;
  --ink: #171012;
  --ink-soft: #5e5355;
  --paper: #f6f2ed;
  --paper-deep: #eee7df;
  --white: #fffdfa;
  --night: #14090b;
  --night-soft: #1d0d10;
  --line: rgba(65, 8, 14, 0.13);
  --line-dark: rgba(255, 255, 255, 0.12);
  --success: #2d6b4a;
  --error: #a1212d;
  --shadow-sm: 0 10px 30px rgba(39, 10, 14, 0.08);
  --shadow-lg: 0 28px 80px rgba(30, 5, 9, 0.16);
  --radius-sm: 14px;
  --radius-md: 22px;
  --radius-lg: 30px;
  --container: 1180px;
  --ease: cubic-bezier(.16, 1, .3, 1);
  --font-body: Inter, "Segoe UI", Arial, sans-serif;
  --font-accent: Unbounded, Inter, "Segoe UI", sans-serif;
  --glass-light: linear-gradient(145deg, rgba(255,255,255,.7), rgba(255,255,255,.28));
  --glass-dark: linear-gradient(145deg, rgba(255,255,255,.1), rgba(255,255,255,.035));
}

*, *::before, *::after { box-sizing: border-box; }
html { width: 100%; max-width: 100%; overflow-x: clip; overflow-y: auto; overscroll-behavior: none; background: #0c0708; scroll-behavior: smooth; scroll-padding-top: 88px; }
html.menu-open-root, html.legal-open-root { overflow-y: hidden; }
html.is-page-transitioning, html.is-scroll-restoring { scroll-behavior: auto; }
html::after { content: ""; position: fixed; z-index: 109; inset: 0; visibility: hidden; pointer-events: none; opacity: 0; background: radial-gradient(circle at 76% 18%, rgba(123,37,48,.46), transparent 34%), rgba(20,9,11,.96); transition: opacity 360ms ease, visibility 0s linear 360ms; }
html.is-page-transitioning::after { visibility: visible; opacity: 1; transition: opacity 220ms ease; }
body { position: relative; width: 100%; max-width: 100%; margin: 0; min-width: 320px; overflow-x: clip; color: var(--ink); background: var(--paper); font-family: var(--font-body); font-size: 16px; line-height: 1.55; -webkit-font-smoothing: antialiased; overscroll-behavior: none; }
body.menu-open { overflow: hidden; touch-action: none; }
body.menu-open.menu-lock-fixed { position: fixed; top: var(--locked-scroll-y, 0); right: 0; left: 0; width: 100%; height: 100%; }
body.legal-open { overflow: hidden; }
body.legal-open.legal-lock-fixed { position: fixed; top: var(--legal-locked-scroll-y, 0); right: 0; left: 0; width: 100%; height: 100%; }
body:not(.flow-page) { padding-bottom: 0; }
img { display: block; max-width: 100%; }
a { color: inherit; text-decoration: none; }
button, input { font: inherit; }
button, a { -webkit-tap-highlight-color: transparent; touch-action: manipulation; }
button { color: inherit; }
svg { display: block; flex: 0 0 auto; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
h1, h2, h3, p, blockquote { margin-top: 0; }
h1, h2, h3 { font-family: var(--font-accent); font-weight: 500; letter-spacing: -1px; line-height: .96; }
h1 { font-size: clamp(2.45rem, 10vw, 5.3rem); }
h2 { font-size: clamp(1.85rem, 7.4vw, 3.8rem); }
h3 { font-size: 1.25rem; }

:focus-visible { outline: 3px solid rgba(157, 54, 66, 0.55); outline-offset: 4px; }
.skip-link { position: fixed; z-index: 1000; top: 10px; left: 10px; transform: translateY(-160%); padding: 10px 14px; border-radius: 8px; color: var(--white); background: var(--brand); transition: transform 180ms ease; }
.skip-link:focus { transform: translateY(0); }
.container { width: min(calc(100% - 36px), var(--container)); margin-inline: auto; }
.section { position: relative; padding: 78px 0; }
.section--light { background: radial-gradient(circle at 12% 18%, rgba(123,37,48,.08), transparent 26%), radial-gradient(circle at 88% 72%, rgba(255,255,255,.85), transparent 24%), var(--paper); }

.eyebrow { display: inline-flex; align-items: center; gap: 8px; margin-bottom: 18px; color: rgba(255,255,255,.68); font-size: .72rem; font-weight: 700; letter-spacing: .15em; line-height: 1.4; text-transform: uppercase; }
.eyebrow svg { width: 17px; height: 17px; }
.eyebrow--dark { color: var(--brand-soft); }
.section-heading { max-width: 740px; margin-bottom: 38px; }
.section-heading h2 { margin-bottom: 18px; }
.section-heading > p:last-child { max-width: 620px; margin-bottom: 0; color: var(--ink-soft); font-size: 1.05rem; }
.section-heading--dark { color: var(--white); }
.section-heading--dark > p:last-child { color: rgba(255,255,255,.62); }

.site-nav { position: fixed; z-index: 120; top: 0; right: 0; left: 0; padding-top: max(12px, env(safe-area-inset-top)); pointer-events: none; transition: padding-top 320ms var(--ease), transform 320ms var(--ease); }
.nav__inner { display: flex; min-height: 58px; align-items: center; justify-content: space-between; gap: 12px; padding: 7px 7px 7px 14px; border: 1px solid rgba(255,255,255,.13); border-radius: 18px; background: rgba(18,7,9,.48); box-shadow: 0 12px 40px rgba(0,0,0,.12), inset 0 1px 0 rgba(255,255,255,.08); backdrop-filter: blur(22px) saturate(130%); -webkit-backdrop-filter: blur(22px) saturate(130%); pointer-events: auto; transition: min-height 320ms var(--ease), padding 320ms var(--ease), border-color 260ms ease, border-radius 320ms var(--ease), background-color 260ms ease, box-shadow 320ms var(--ease), transform 320ms var(--ease); }
.site-nav.is-scrolled { padding-top: max(8px, env(safe-area-inset-top)); }
.site-nav.is-scrolled .nav__inner { min-height: 54px; padding-top: 5px; padding-bottom: 5px; border-color: rgba(255,255,255,.17); border-radius: 16px; background: rgba(18,7,9,.78); box-shadow: 0 16px 44px rgba(0,0,0,.22), inset 0 1px 0 rgba(255,255,255,.09); }
.brand { display: inline-flex; min-height: 44px; align-items: center; gap: 10px; color: var(--white); font-size: .88rem; font-weight: 500; letter-spacing: -.02em; transform-origin: left center; transition: opacity 200ms ease, transform 240ms var(--ease); }
.brand:active { opacity: .76; transform: scale(.985); }
.brand__text strong { font-family: var(--font-accent); font-size: .86em; font-weight: 500; letter-spacing: -1px; }
.brand__mark { position: relative; display: grid; width: 28px; height: 28px; place-items: center; overflow: hidden; border: 1px solid rgba(255,255,255,.4); border-radius: 9px; background: linear-gradient(145deg, var(--brand-bright), var(--brand)); }
.brand__mark::before, .brand__mark::after, .brand__mark span { content: ""; position: absolute; width: 10px; height: 10px; border: 1.5px solid rgba(255,255,255,.9); border-radius: 50%; }
.brand__mark::before { transform: translate(-4px,-3px); }
.brand__mark::after { transform: translate(4px,3px); }
.brand__mark span { width: 4px; height: 4px; border: 0; background: var(--white); }
.menu-toggle { position: relative; display: grid; width: 44px; height: 44px; place-items: center; padding: 0; border: 1px solid rgba(255,255,255,.13); border-radius: 13px; color: var(--white); background: rgba(255,255,255,.07); cursor: pointer; transform: translateZ(0); transition: background-color 240ms ease, border-color 240ms ease, transform 240ms var(--ease), box-shadow 240ms ease; }
.menu-toggle:hover { border-color: rgba(255,255,255,.22); background: rgba(255,255,255,.12); box-shadow: inset 0 1px 0 rgba(255,255,255,.1); }
.menu-toggle:active { transform: scale(.96); }
.menu-toggle span { position: absolute; width: 18px; height: 1.5px; border-radius: 2px; background: currentColor; transform-origin: center; transition: transform 340ms var(--ease), top 340ms var(--ease), width 280ms var(--ease); }
.menu-toggle span:first-child { top: 18px; }
.menu-toggle span:last-child { top: 25px; }
.menu-open .menu-toggle span:first-child { top: 21px; transform: rotate(45deg); }
.menu-open .menu-toggle span:last-child { top: 21px; transform: rotate(-45deg); }
.menu-overlay { position: fixed; z-index: 110; top: 0; right: 0; bottom: auto; left: 0; width: 100%; height: var(--visible-viewport-height, 100dvh); max-height: var(--visible-viewport-height, 100dvh); visibility: hidden; overflow: hidden; color: var(--white); background: linear-gradient(145deg, rgba(20,9,11,.96), rgba(65,8,14,.86)); opacity: 0; clip-path: circle(0 at calc(100% - 42px) calc(42px + env(safe-area-inset-top))); pointer-events: none; backdrop-filter: blur(28px) saturate(125%); -webkit-backdrop-filter: blur(28px) saturate(125%); overscroll-behavior: none; transform: translateZ(0); transition: clip-path 560ms var(--ease), opacity 300ms ease, visibility 560ms; }
.menu-overlay::before { content: ""; position: absolute; inset: 0; pointer-events: none; opacity: .3; background: radial-gradient(circle at 80% 10%, rgba(207,138,146,.3), transparent 30%), linear-gradient(rgba(255,255,255,.035) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.035) 1px, transparent 1px); background-size: auto, 44px 44px, 44px 44px; }
.menu-open .menu-overlay { visibility: visible; opacity: 1; clip-path: circle(150vmax at calc(100% - 42px) calc(42px + env(safe-area-inset-top))); pointer-events: auto; }
.menu-navigating .menu-overlay { visibility: visible; opacity: 0; clip-path: circle(150vmax at calc(100% - 42px) calc(42px + env(safe-area-inset-top))); pointer-events: none; transition: opacity 220ms ease, visibility 220ms; }
.menu-overlay__inner { position: relative; display: flex; height: 100%; min-height: 0; flex-direction: column; overflow: hidden; padding-top: calc(78px + env(safe-area-inset-top)); padding-bottom: max(12px, env(safe-area-inset-bottom)); }
.menu-overlay__label { margin-bottom: 8px; color: rgba(255,255,255,.42); font-size: .64rem; font-weight: 700; letter-spacing: .16em; text-transform: uppercase; opacity: 0; transform: translateY(8px); transition: opacity 240ms ease, transform 360ms var(--ease); }
.menu-open .menu-overlay__label { opacity: 1; transform: translateY(0); transition-delay: 50ms; }
.menu-links { display: grid; min-height: 0; flex: 1; grid-template-rows: repeat(6, minmax(44px, 1fr)); gap: 0; }
.menu-links a { display: grid; min-height: 44px; grid-template-columns: 32px 1fr; align-items: center; gap: 10px; border-bottom: 1px solid rgba(255,255,255,.09); font-family: var(--font-accent); font-size: clamp(1.08rem, 5.3vw, 1.45rem); font-weight: 500; letter-spacing: -1px; line-height: .96; opacity: 0; transform: translateY(12px); transition: color 220ms ease, padding-left 260ms var(--ease), opacity 300ms ease, transform 420ms var(--ease); }
.menu-open .menu-links a { opacity: 1; transform: translateY(0); }
.menu-open .menu-links a:nth-child(1) { transition-delay: 45ms; }
.menu-open .menu-links a:nth-child(2) { transition-delay: 70ms; }
.menu-open .menu-links a:nth-child(3) { transition-delay: 95ms; }
.menu-open .menu-links a:nth-child(4) { transition-delay: 120ms; }
.menu-open .menu-links a:nth-child(5) { transition-delay: 145ms; }
.menu-open .menu-links a:nth-child(6) { transition-delay: 170ms; }
.menu-open .menu-links a:nth-child(7) { transition-delay: 195ms; }
.menu-links a:hover { padding-left: 8px; color: #e5afb6; }
.menu-links a span { color: rgba(255,255,255,.35); font-family: var(--font-body); font-size: .62rem; letter-spacing: .08em; }
.menu-overlay__footer { display: grid; gap: 8px; margin-top: 10px; padding-top: 0; opacity: 0; transform: translateY(10px); transition: opacity 280ms ease, transform 420ms var(--ease); }
.menu-open .menu-overlay__footer { opacity: 1; transform: translateY(0); transition-delay: 190ms; }
.menu-overlay__footer p { max-width: 360px; margin: 0; color: rgba(255,255,255,.52); font-size: .72rem; }
.menu-overlay__footer .button { min-height: 48px; padding-block: 12px; }

.button { display: inline-flex; min-height: 52px; align-items: center; justify-content: center; gap: 10px; padding: 14px 22px; border: 0; border-radius: 14px; font-family: var(--font-accent); font-size: .76rem; font-weight: 500; letter-spacing: -.3px; line-height: 1.15; text-align: center; cursor: pointer; transform: translateZ(0); transition: transform 280ms var(--ease), background-color 240ms ease, color 240ms ease, box-shadow 280ms ease, opacity 200ms ease, filter 200ms ease; }
.button svg { width: 19px; height: 19px; }
.button:hover { transform: translateY(-2px); }
.button:active { transform: translateY(0) scale(.97); filter: brightness(.94); transition-duration: 120ms; }
.button--small { min-height: 44px; padding: 10px 15px; border-radius: 12px; font-size: .86rem; }
.button--primary { color: var(--white); background: linear-gradient(135deg, var(--brand-soft), var(--brand)); box-shadow: 0 12px 30px rgba(65,8,14,.24); }
.button--primary:hover { background: linear-gradient(135deg, var(--brand-bright), var(--brand)); box-shadow: 0 16px 34px rgba(65,8,14,.32); }
.button--light { color: var(--brand); background: var(--white); box-shadow: 0 16px 35px rgba(10,0,2,.15); }
.button--light:hover { background: #fff; }
.button--wide { width: 100%; }

.hero { --hero-copy-y: 0px; --hero-media-y: 0px; --hero-media-scale: 1; --hero-fade: 1; position: relative; min-height: 100svh; overflow: clip; padding: 116px 0 144px; color: var(--white); background: radial-gradient(circle at 76% 20%, rgba(134,43,55,.4), transparent 28%), radial-gradient(circle at 18% 72%, rgba(65,8,14,.46), transparent 30%), linear-gradient(145deg, #180b0d 0%, #0e090a 54%, #25070c 100%); }
.hero::before { content: "REALISM"; position: absolute; z-index: 0; top: 36%; left: 50%; color: rgba(255,255,255,.025); font-family: var(--font-accent); font-size: clamp(5rem, 22vw, 19rem); font-weight: 600; letter-spacing: -.08em; line-height: .8; transform: translateX(-50%); pointer-events: none; white-space: nowrap; }
.hero::after { content: ""; position: absolute; inset: 0; pointer-events: none; opacity: .25; background-image: linear-gradient(rgba(255,255,255,.032) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.032) 1px, transparent 1px); background-size: 42px 42px; mask-image: linear-gradient(to bottom, black, transparent 86%); }
.hero__stage { position: relative; z-index: 2; display: grid; gap: 0; }
.hero__copy { display: contents; }
.hero__copy h1 { order: 1; max-width: 760px; margin-bottom: 0; font-size: clamp(2.15rem, 8.8vw, 4.8rem); font-weight: 560; }
.hero__copy h1 span { color: #d5929b; }
.hero__eyebrow { order: 3; margin: 0 0 14px; }
.hero__lead { order: 4; max-width: 610px; margin: 0 0 48px; color: rgba(255,255,255,.72); font-size: 1rem; }
.media-placeholder { position: relative; display: flex; flex-direction: column; align-items: center; justify-content: center; overflow: hidden; border: 1px solid rgba(255,255,255,.13); border-radius: var(--radius-lg); color: var(--white); background: radial-gradient(circle at 65% 30%, rgba(184,79,91,.3), transparent 28%), linear-gradient(145deg, rgba(255,255,255,.1), rgba(255,255,255,.025)); box-shadow: var(--shadow-lg); }
.media-placeholder::before { content: ""; position: absolute; inset: 0; opacity: .16; background-image: linear-gradient(120deg, transparent 25%, rgba(255,255,255,.15) 50%, transparent 75%); transform: translateX(-100%); }
.media-placeholder__top { position: absolute; top: 18px; right: 18px; left: 18px; display: flex; align-items: center; justify-content: space-between; gap: 12px; color: rgba(255,255,255,.55); font-size: .72rem; text-transform: uppercase; letter-spacing: .08em; }
.live-dot { display: flex; align-items: center; gap: 6px; }
.live-dot::before { content: ""; width: 6px; height: 6px; border-radius: 50%; background: #cf8a92; box-shadow: 0 0 0 4px rgba(207,138,146,.12); }
.media-placeholder > p { position: absolute; right: 20px; bottom: 18px; left: 20px; margin: 0; color: rgba(255,255,255,.62); font-size: .78rem; text-align: center; }
.play-mark { display: grid; width: 72px; height: 72px; place-items: center; border: 1px solid rgba(255,255,255,.3); border-radius: 50%; background: rgba(20,9,11,.32); box-shadow: 0 16px 45px rgba(0,0,0,.2); backdrop-filter: blur(10px); }
.play-mark svg { width: 28px; height: 28px; margin: auto; }
.hero__media { position: relative; order: 2; width: min(100%, 390px); margin: 22px 0 30px; justify-self: center; transform: translate3d(0,var(--hero-media-y),0) scale(var(--hero-media-scale)); transform-origin: center bottom; }
.hero-media { position: relative; display: flex; aspect-ratio: 4 / 5; min-height: 410px; flex-direction: column; overflow: hidden; border: 1px solid rgba(255,255,255,.19); border-radius: 30px; background: radial-gradient(circle at 58% 34%, rgba(229,148,158,.42), transparent 16%), radial-gradient(circle at 42% 54%, rgba(115,25,36,.65), transparent 35%), linear-gradient(150deg, rgba(255,255,255,.13), rgba(255,255,255,.025) 58%), #1a0a0d; box-shadow: 0 32px 90px rgba(0,0,0,.4), inset 0 1px 0 rgba(255,255,255,.13); backdrop-filter: blur(20px) saturate(125%); -webkit-backdrop-filter: blur(20px) saturate(125%); }
.hero-media::before { content: ""; position: absolute; inset: 12% -22% 18%; border: 1px solid rgba(255,255,255,.08); border-radius: 46%; background: conic-gradient(from 210deg, transparent, rgba(213,146,155,.18), transparent 42%); transform: rotate(-16deg); }
.hero-media::after { content: ""; position: absolute; inset: 0; opacity: .34; background: linear-gradient(115deg, transparent 22%, rgba(255,255,255,.08) 47%, transparent 69%); transform: translateX(-68%); }
.hero-media__top { position: relative; z-index: 2; display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 18px; color: rgba(255,255,255,.6); font-size: .65rem; font-weight: 600; letter-spacing: .1em; text-transform: uppercase; }
.hero-media__core { position: relative; z-index: 2; display: grid; flex: 1; place-items: center; padding: 34px 24px 28px; text-align: center; }
.hero-media__core::before { content: ""; position: absolute; width: 52%; aspect-ratio: 1; border: 1px solid rgba(255,255,255,.12); border-radius: 28%; background: linear-gradient(145deg, rgba(255,255,255,.1), rgba(255,255,255,.015)); box-shadow: 0 25px 70px rgba(0,0,0,.2); transform: rotate(12deg); }
.hero-media__ring { position: absolute; width: 70%; aspect-ratio: 1; border: 1px solid rgba(213,146,155,.2); border-radius: 35%; transform: rotate(-9deg); }
.hero-media .play-mark { position: relative; z-index: 2; width: 68px; height: 68px; background: rgba(20,9,11,.48); box-shadow: 0 18px 48px rgba(0,0,0,.3), inset 0 1px 0 rgba(255,255,255,.12); }
.hero-media__core p { position: absolute; right: 22px; bottom: 4px; left: 22px; margin: 0; color: rgba(255,255,255,.62); font-size: .74rem; }
.hero-media__timeline { position: relative; z-index: 2; display: grid; height: 48px; grid-template-columns: 1fr auto auto auto; align-items: center; gap: 6px; margin: 0 18px 18px; padding: 0 13px; border: 1px solid rgba(255,255,255,.11); border-radius: 14px; background: rgba(11,5,6,.32); backdrop-filter: blur(12px); }
.hero-media__timeline span { height: 3px; overflow: hidden; border-radius: 999px; background: rgba(255,255,255,.13); }
.hero-media__timeline span::before { content: ""; display: block; width: 36%; height: 100%; border-radius: inherit; background: #d5929b; }
.hero-media__timeline i { width: 6px; height: 6px; border-radius: 2px; background: rgba(255,255,255,.22); }
.hero-float { position: absolute; z-index: 3; border: 1px solid rgba(255,255,255,.17); color: var(--white); background: rgba(21,8,10,.68); box-shadow: 0 18px 50px rgba(0,0,0,.3), inset 0 1px 0 rgba(255,255,255,.09); backdrop-filter: blur(18px) saturate(125%); -webkit-backdrop-filter: blur(18px) saturate(125%); }
.hero-float--days { top: 25%; right: -6px; display: grid; min-width: 122px; gap: 1px; padding: 13px 15px; border-radius: 16px; }
.hero-float--days strong { font-family: var(--font-accent); font-size: .95rem; letter-spacing: -.5px; }
.hero-float--days span { color: rgba(255,255,255,.58); font-size: .65rem; }
.hero__proof { display: grid; order: 5; gap: 18px; padding: 4px 0 72px; isolation: isolate; }
.hero-proof-card { --stack-offset: 0px; position: sticky; z-index: 1; top: calc(82px + env(safe-area-inset-top) + var(--stack-offset)); display: flex; min-width: 0; min-height: 258px; flex-direction: column; align-self: start; padding: 20px; overflow: hidden; border: 1px solid rgba(255,255,255,.16); border-radius: 26px; background: radial-gradient(circle at 92% 6%, rgba(213,146,155,.16), transparent 31%), linear-gradient(145deg, rgba(255,255,255,.115), rgba(255,255,255,.045) 62%), rgba(20,8,10,.92); box-shadow: 0 28px 64px rgba(0,0,0,.34), inset 0 1px 0 rgba(255,255,255,.1); backdrop-filter: blur(24px) saturate(125%); -webkit-backdrop-filter: blur(24px) saturate(125%); transform: translateZ(0); }
.hero-proof-card::before { content: ""; position: absolute; top: 0; right: 18px; left: 18px; height: 1px; background: linear-gradient(90deg, transparent, rgba(229,175,182,.72), transparent); }
.hero-proof-card:nth-child(2) { --stack-offset: 12px; z-index: 2; background: radial-gradient(circle at 8% 100%, rgba(123,37,48,.28), transparent 34%), linear-gradient(145deg, rgba(255,255,255,.12), rgba(255,255,255,.045) 62%), rgba(22,8,11,.94); }
.hero-proof-card:nth-child(3) { --stack-offset: 24px; z-index: 3; background: radial-gradient(circle at 94% 2%, rgba(157,54,66,.24), transparent 34%), linear-gradient(145deg, rgba(255,255,255,.12), rgba(255,255,255,.04) 62%), rgba(24,8,11,.96); }
.hero-proof-card__top { display: flex; align-items: center; justify-content: space-between; gap: 16px; }
.hero-proof-card__index { color: rgba(255,255,255,.4); font-size: .6rem; font-weight: 600; letter-spacing: .12em; text-transform: uppercase; }
.hero-proof-card__icon { display: grid; width: 42px; height: 42px; flex: 0 0 auto; place-items: center; border: 1px solid rgba(255,255,255,.14); border-radius: 13px; color: #e1abb2; background: rgba(255,255,255,.065); box-shadow: inset 0 1px 0 rgba(255,255,255,.07); }
.hero-proof-card__icon svg { width: 20px; height: 20px; margin: auto; }
.hero-proof-card__body { margin: 22px 0 20px; }
.hero-proof-card__label { margin-bottom: 8px; color: #d5929b; font-size: .62rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
.hero-proof-card__body h3 { margin-bottom: 10px; font-family: var(--font-accent); font-size: 1.28rem; font-weight: 500; letter-spacing: -1px; line-height: .96; text-wrap: balance; }
.hero-proof-card__body > p:last-child { max-width: 32rem; margin: 0; color: rgba(255,255,255,.58); font-size: .79rem; line-height: 1.5; }
.hero-proof-card__meta { display: flex; min-height: 58px; align-items: flex-end; justify-content: space-between; gap: 16px; margin-top: auto; padding-top: 14px; border-top: 1px solid rgba(255,255,255,.1); }
.hero-proof-card__meta > div { display: grid; min-width: 0; gap: 5px; }
.hero-proof-card__meta span { display: block; color: rgba(255,255,255,.43); font-size: .59rem; font-weight: 600; letter-spacing: .1em; line-height: 1.25; text-transform: uppercase; }
.hero-proof-card__meta strong { display: block; color: rgba(255,255,255,.95); font-family: var(--font-accent); font-size: 1.08rem; font-weight: 500; letter-spacing: -1px; line-height: .96; text-wrap: balance; }
.hero-proof-card__meta--split { align-items: start; }
.hero-proof-card__meta--split > div:last-child { text-align: right; }
.hero-proof-card__meta--mentor { align-items: center; }
.hero-proof-card__meta--mentor img { width: 44px; height: 44px; flex: 0 0 auto; border: 1px solid rgba(255,255,255,.12); border-radius: 14px; object-fit: cover; object-position: 58% 30%; box-shadow: 0 8px 24px rgba(0,0,0,.24); }
.hero__glow { position: absolute; border-radius: 50%; filter: blur(80px); pointer-events: none; }
.hero__glow--one { top: 20%; right: -18%; width: 320px; height: 320px; background: rgba(123,37,48,.32); }
.hero__glow--two { bottom: -10%; left: -20%; width: 300px; height: 300px; background: rgba(65,8,14,.5); }
.section--bridge { --bridge-y: 20px; --bridge-opacity: .82; z-index: 4; margin-top: -48px; padding-top: 102px; overflow: hidden; border-radius: 32px 32px 0 0; box-shadow: 0 -18px 55px rgba(0,0,0,.12); }
.section--bridge > .container { opacity: var(--bridge-opacity); transform: translate3d(0,var(--bridge-y),0); will-change: transform,opacity; }

.benefit-grid { display: grid; gap: 14px; }
.card { position: relative; border: 1px solid rgba(255,255,255,.72); border-radius: var(--radius-md); background: var(--glass-light); box-shadow: 0 18px 46px rgba(39,10,14,.08), inset 0 1px 0 rgba(255,255,255,.9); backdrop-filter: blur(18px) saturate(120%); -webkit-backdrop-filter: blur(18px) saturate(120%); }
.benefit-card { min-height: 270px; padding: 24px; }
.icon-box { display: grid; width: 46px; height: 46px; place-items: center; margin-bottom: 40px; border: 1px solid var(--line); border-radius: 14px; color: var(--brand); background: rgba(65,8,14,.04); }
.icon-box svg { width: 23px; height: 23px; }
.card__index { position: absolute; top: 27px; right: 24px; color: rgba(65,8,14,.34); font-size: .72rem; letter-spacing: .12em; }
.benefit-card h3 { margin-bottom: 12px; }
.benefit-card > p:last-child { margin: 0; color: var(--ink-soft); }
.section-caption { max-width: 760px; margin: 28px auto 0; color: var(--ink-soft); font-size: .84rem; text-align: center; }

.section--program { --program-scroll-distance: 0px; height: calc(100svh + var(--program-scroll-distance)); min-height: 100svh; padding: 0; overflow: clip; color: var(--white); background: radial-gradient(circle at 10% 20%, rgba(123,37,48,.18), transparent 28%), var(--night); }
.program-layout { position: sticky; top: 0; display: grid; min-width: 0; min-height: 100svh; align-content: center; gap: 20px; padding-top: calc(82px + env(safe-area-inset-top)); padding-bottom: calc(88px + env(safe-area-inset-bottom)); }
.program-layout__intro { margin-bottom: 0; }
.program-layout__intro h2 { font-size: clamp(1.75rem,7vw,2.25rem); }
.program-layout__intro > p:last-of-type { font-size: .9rem; line-height: 1.45; }
.text-link { display: inline-flex; min-height: 44px; align-items: center; gap: 6px; color: #e3b3b9; font-weight: 700; }
.text-link svg { width: 18px; height: 18px; transition: transform 200ms ease; }
.text-link:hover svg { transform: translateX(3px); }
.program-viewport { min-width: 0; overflow: hidden; contain: layout paint; transform: translateZ(0); }
.program-track { --program-gap: 64px; display: grid; width: max-content; grid-auto-flow: column; grid-auto-columns: min(82vw, 310px); gap: var(--program-gap); padding: 4px var(--program-tail-space,0px) 8px 0; transform: translate3d(0,0,0); backface-visibility: hidden; will-change: transform; }
.program-card { --program-card-opacity: 1; --program-card-x: 0px; --program-card-y: 0px; --program-card-rotate: 0deg; position: relative; display: flex; min-height: clamp(300px,42svh,350px); flex-direction: column; padding: 20px; border: 1px solid rgba(255,255,255,.15); border-radius: 24px; opacity: var(--program-card-opacity); background: radial-gradient(circle at 90% 8%, rgba(157,54,66,.2), transparent 30%), linear-gradient(145deg, rgba(255,255,255,.11), rgba(255,255,255,.035)); box-shadow: 0 24px 56px rgba(0,0,0,.24), inset 0 1px 0 rgba(255,255,255,.08); transform: translate3d(var(--program-card-x),var(--program-card-y),0) rotate(var(--program-card-rotate)); transform-origin: 50% 58%; backdrop-filter: blur(20px) saturate(120%); -webkit-backdrop-filter: blur(20px) saturate(120%); contain: layout style; backface-visibility: hidden; will-change: transform, opacity; }
.program-card::after { content: ""; position: absolute; top: calc(50% - 17px); left: calc(100% + 6px); width: calc(var(--program-gap) - 12px); height: 34px; opacity: .82; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 34' preserveAspectRatio='none'%3E%3Cpath d='M2 17 C18 4 31 30 49 17 S79 4 98 17' fill='none' stroke='%23d5929b' stroke-opacity='.9' stroke-width='2.4' stroke-linecap='round' stroke-dasharray='1 8'/%3E%3C/svg%3E") center / 100% 100% no-repeat; clip-path: inset(0 var(--connector-clip,0%) 0 0); filter: drop-shadow(0 0 7px rgba(213,146,155,.22)); pointer-events: none; }
.has-js .program-card { --connector-clip: 100%; }
.program-card:last-child::after { display: none; }
.program-card__top { display: flex; align-items: center; gap: 11px; }
.program-card__top small { color: rgba(255,255,255,.46); font-size: .67rem; font-weight: 600; letter-spacing: .1em; text-transform: uppercase; }
.program-card h3 { margin: 24px 0 18px; font-size: 1.22rem; }
.program-card ul { margin: 0 0 22px; padding-left: 18px; color: rgba(255,255,255,.58); font-size: .82rem; line-height: 1.48; }
.program-card li + li { margin-top: 7px; }
.program-card .result { margin: auto 0 0; }
.accordion { display: grid; gap: 10px; }
.accordion__item { border: 1px solid rgba(255,255,255,.14); border-radius: 18px; background: var(--glass-dark); box-shadow: inset 0 1px 0 rgba(255,255,255,.06); backdrop-filter: blur(16px) saturate(120%); -webkit-backdrop-filter: blur(16px) saturate(120%); transition: border-color 220ms ease, background-color 220ms ease; }
.accordion__item.is-open { border-color: rgba(207,138,146,.38); background: linear-gradient(145deg, rgba(255,255,255,.14), rgba(255,255,255,.055)); }
.accordion__trigger { display: grid; width: 100%; min-height: 76px; grid-template-columns: auto 1fr auto; align-items: center; gap: 13px; padding: 15px 16px; border: 0; text-align: left; background: none; cursor: pointer; }
.accordion__trigger small, .accordion__trigger strong { display: block; }
.accordion__trigger small { margin-bottom: 4px; color: rgba(255,255,255,.46); font-size: .67rem; font-weight: 500; letter-spacing: .08em; text-transform: uppercase; }
.accordion__trigger strong { color: var(--white); font-size: .96rem; line-height: 1.25; letter-spacing: -.015em; }
.day-number { display: grid; width: 38px; height: 38px; place-items: center; border: 1px solid rgba(255,255,255,.14); border-radius: 12px; color: #d6a1a8; font-size: .7rem; }
.accordion__plus { position: relative; width: 24px; height: 24px; }
.accordion__plus::before, .accordion__plus::after { content: ""; position: absolute; top: 50%; left: 50%; width: 12px; height: 1.5px; background: currentColor; transform: translate(-50%,-50%); transition: transform 240ms ease; }
.accordion__plus::after { transform: translate(-50%,-50%) rotate(90deg); }
.is-open .accordion__plus::after { transform: translate(-50%,-50%) rotate(0); }
.accordion__panel { display: grid; grid-template-rows: 0fr; transition: grid-template-rows 300ms var(--ease); }
.accordion__panel > div { overflow: hidden; }
.is-open .accordion__panel { grid-template-rows: 1fr; }
.accordion__panel ul, .accordion__panel p { margin: 0 18px 18px 68px; }
.accordion__panel ul { padding-left: 17px; color: rgba(255,255,255,.6); font-size: .88rem; }
.accordion__panel li + li { margin-top: 6px; }
.result { padding: 12px 14px; border-radius: 12px; color: rgba(255,255,255,.78); background: rgba(123,37,48,.24); font-size: .82rem; }
.result span { display: block; margin-bottom: 3px; color: #e3b3b9; font-size: .64rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; }

.case-grid { display: grid; gap: 12px; grid-template-columns: repeat(2, minmax(0, 1fr)); }
.media-placeholder--case { aspect-ratio: 3 / 4; border-color: rgba(255,255,255,.72); border-radius: 20px; color: var(--brand); background: radial-gradient(circle at 70% 20%, rgba(123,37,48,.2), transparent 27%), var(--glass-light); box-shadow: 0 18px 44px rgba(39,10,14,.08), inset 0 1px 0 rgba(255,255,255,.9); backdrop-filter: blur(18px); -webkit-backdrop-filter: blur(18px); }
.media-placeholder--case:last-child { grid-column: 1 / -1; aspect-ratio: 16 / 11; }
.media-placeholder--case > span { position: absolute; top: 14px; left: 14px; color: rgba(65,8,14,.5); font-size: .65rem; letter-spacing: .12em; text-transform: uppercase; }
.media-placeholder--case > p { color: rgba(65,8,14,.48); }
.play-mark--small { width: 52px; height: 52px; border-color: rgba(65,8,14,.18); color: var(--brand); background: rgba(255,255,255,.36); box-shadow: none; }
.play-mark--small svg { width: 21px; height: 21px; }

.section--offer { color: var(--white); background: linear-gradient(145deg, var(--brand-strong), var(--brand) 65%, #55121a); }
.offer-grid { display: grid; gap: 16px; }
.price-card, .form-card, .offer-action-card { border: 1px solid rgba(255,255,255,.18); border-radius: var(--radius-lg); box-shadow: 0 24px 70px rgba(18,4,7,.18), inset 0 1px 0 rgba(255,255,255,.1); backdrop-filter: blur(22px) saturate(125%); -webkit-backdrop-filter: blur(22px) saturate(125%); }
.price-card { padding: 28px 22px; background: var(--glass-dark); }
.price-card--combined { display: grid; gap: 24px; }
.price-card h2 { margin-bottom: 16px; font-size: clamp(2.2rem, 11vw, 4rem); }
.price-card__subtitle { color: rgba(255,255,255,.62); }
.price-card__price { display: flex; align-items: flex-end; gap: 10px; margin: 24px 0 0; }
.price-card__price strong { font-size: 4rem; letter-spacing: -.08em; line-height: .8; }
.price-card__price span { color: rgba(255,255,255,.72); font-weight: 700; line-height: 1.15; }
.price-card__price s { color: rgba(255,255,255,.35); font-size: .74rem; font-weight: 500; }
.check-list { display: grid; gap: 13px; margin: 0; padding: 0; list-style: none; }
.check-list li { display: grid; grid-template-columns: 25px 1fr; align-items: start; gap: 9px; color: rgba(255,255,255,.76); font-size: .91rem; }
.check-list li > span { display: grid; width: 23px; height: 23px; place-items: center; border-radius: 8px; color: var(--white); background: rgba(255,255,255,.1); }
.check-list svg { width: 14px; height: 14px; }
.price-card__action { display: grid; gap: 22px; padding-top: 22px; border-top: 1px solid rgba(255,255,255,.12); }
.check-list--compact { gap: 12px; }
.price-card__action small { display: block; margin-top: -10px; color: rgba(255,255,255,.46); font-size: .68rem; text-align: center; }
.form-card { padding: 26px 20px; color: var(--ink); background: var(--glass-light); box-shadow: var(--shadow-lg); }
.form-card__heading { margin-bottom: 24px; }
.form-card__heading h2 { margin-bottom: 10px; font-size: 2rem; }
.form-card__heading > p:last-child { margin: 0; color: var(--ink-soft); }
.step-label { margin-bottom: 8px; color: var(--brand-soft); font-size: .67rem; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.field { margin-bottom: 17px; }
.field label { display: block; margin-bottom: 7px; font-size: .86rem; font-weight: 700; }
.field input[type="text"], .field input[type="tel"] { width: 100%; min-height: 52px; padding: 13px 14px; border: 1px solid #d9d0cb; border-radius: 12px; outline: 0; color: var(--ink); background: #fff; transition: border-color 180ms ease, box-shadow 180ms ease, background-color 180ms ease; }
.field input::placeholder { color: #9a8f8d; }
.field input:focus { border-color: var(--brand-soft); box-shadow: 0 0 0 4px rgba(123,37,48,.1); }
.field.is-error input[type="text"], .field.is-error input[type="tel"] { border-color: var(--error); background: #fff9f9; }
.field__help, .field__error { display: block; margin-top: 5px; font-size: .72rem; line-height: 1.35; }
.field__help { color: #756a6b; }
.field__error { min-height: 0; color: var(--error); font-weight: 600; }
.field--checkbox label { display: grid; grid-template-columns: auto 1fr; align-items: start; gap: 10px; margin-bottom: 0; color: var(--ink-soft); font-size: .75rem; font-weight: 500; cursor: pointer; }
.field--checkbox input { position: absolute; width: 1px; height: 1px; opacity: 0; }
.custom-check { display: grid; width: 22px; height: 22px; place-items: center; border: 1px solid #c9bfba; border-radius: 7px; color: transparent; background: white; transition: background 180ms ease, border-color 180ms ease, color 180ms ease, box-shadow 180ms ease; }
.custom-check svg { width: 15px; height: 15px; }
.field--checkbox input:checked + .custom-check { border-color: var(--brand); color: var(--white); background: var(--brand); }
.field--checkbox input:focus-visible + .custom-check { box-shadow: 0 0 0 4px rgba(123,37,48,.18); }
.field--optional { margin-top: -5px; }
.field__legal { margin: 7px 0 0 32px; color: rgba(94,83,85,.78); font-size: .68rem; line-height: 1.45; }
.field__legal button { display: inline; min-height: 28px; padding: 0; border: 0; color: var(--brand-soft); font: inherit; font-weight: 700; text-decoration: underline; text-underline-offset: 2px; background: none; cursor: pointer; }
.submit-button { position: relative; }
.button__loader { display: none; width: 18px; height: 18px; border: 2px solid rgba(255,255,255,.35); border-top-color: white; border-radius: 50%; animation: spin .7s linear infinite; }
.submit-button.is-loading .button__loader { display: block; }
.submit-button.is-loading .button__arrow { display: none; }
.submit-button:disabled { cursor: wait; opacity: .76; }
.secure-note { display: flex; align-items: center; justify-content: center; gap: 7px; margin: 12px 0 0; color: #756a6b; font-size: .69rem; text-align: center; }
.secure-note svg { flex: 0 0 auto; width: 14px; height: 14px; }
.form-status { margin-top: 8px; color: var(--success); font-size: .76rem; text-align: center; }
.offer-action-card { display: flex; flex-direction: column; justify-content: center; padding: 30px 22px; background: linear-gradient(145deg, rgba(255,255,255,.14), rgba(255,255,255,.055)); }
.offer-action-card__icon { display: grid; width: 52px; height: 52px; place-items: center; margin-bottom: 28px; border: 1px solid rgba(255,255,255,.18); border-radius: 16px; background: rgba(255,255,255,.08); }
.offer-action-card__icon svg { width: 24px; height: 24px; margin: auto; }
.offer-action-card h2 { margin-bottom: 18px; font-size: clamp(1.7rem, 7vw, 3rem); }
.offer-action-card > p:not(.eyebrow) { margin-bottom: 28px; color: rgba(255,255,255,.62); }
.offer-action-card small { display: block; margin-top: 13px; color: rgba(255,255,255,.46); font-size: .7rem; text-align: center; }

.author-grid { display: grid; gap: 34px; }
.author-photo { position: relative; overflow: hidden; border-radius: var(--radius-lg); background: var(--brand); box-shadow: var(--shadow-lg); }
.author-photo::after { content: ""; position: absolute; inset: 0; background: linear-gradient(to top, rgba(19,4,7,.7), transparent 45%); pointer-events: none; }
.author-photo img { width: 100%; height: auto; aspect-ratio: 1 / 1; object-fit: cover; }
.author-photo__label { position: absolute; z-index: 2; right: 16px; bottom: 16px; left: 16px; color: var(--white); font-size: .73rem; font-weight: 700; letter-spacing: .07em; text-transform: uppercase; }
.author-copy h2 { margin-bottom: 22px; }
.author-copy blockquote { margin: 0 0 22px; padding: 20px 0 20px 18px; border-left: 2px solid var(--brand-soft); color: var(--brand); font-size: 1.13rem; font-weight: 650; line-height: 1.45; }
.author-copy > p { color: var(--ink-soft); }
.author-values { display: grid; gap: 1px; margin-top: 28px; overflow: hidden; border: 1px solid var(--line); border-radius: 16px; background: var(--line); }
.author-values div { padding: 15px; background: rgba(255,255,255,.58); backdrop-filter: blur(14px); -webkit-backdrop-filter: blur(14px); }
.author-values strong, .author-values span { display: block; }
.author-values strong { color: var(--brand); }
.author-values span { color: var(--ink-soft); font-size: .76rem; }

.section--journey { color: var(--white); background: var(--night); }
.journey-list { position: relative; display: grid; gap: 0; margin: 0; padding: 0; list-style: none; }
.journey-list::before { content: ""; position: absolute; top: 23px; bottom: 23px; left: 21px; width: 1px; background: linear-gradient(#a95863, rgba(255,255,255,.1)); }
.journey-list li { position: relative; display: grid; grid-template-columns: 44px 1fr; gap: 15px; padding: 0 0 28px; }
.journey-list li:last-child { padding-bottom: 0; }
.journey-list li > span { z-index: 1; display: grid; width: 44px; height: 44px; place-items: center; border: 1px solid rgba(255,255,255,.14); border-radius: 14px; color: #dfaab1; background: var(--night-soft); font-size: .68rem; font-weight: 700; }
.journey-list h3 { margin: 1px 0 6px; color: var(--white); font-size: 1rem; }
.journey-list p { margin: 0; color: rgba(255,255,255,.54); font-size: .86rem; }
.has-js .journey-list::before { transform: scaleY(0); transform-origin: center top; transition: transform 1100ms var(--ease); }
.has-js .journey-list li { opacity: 0; transform: translate3d(0, 16px, 0); transition: opacity 520ms ease, transform 650ms var(--ease); }
.has-js .journey-list.is-visible::before { transform: scaleY(1); }
.has-js .journey-list.is-visible li { opacity: 1; transform: translate3d(0, 0, 0); }
.has-js .journey-list.is-visible li:nth-child(1) { transition-delay: 80ms; }
.has-js .journey-list.is-visible li:nth-child(2) { transition-delay: 190ms; }
.has-js .journey-list.is-visible li:nth-child(3) { transition-delay: 300ms; }
.has-js .journey-list.is-visible li:nth-child(4) { transition-delay: 410ms; }
.has-js .journey-list.is-visible li:nth-child(5) { transition-delay: 520ms; }

.certificate-grid { display: grid; gap: 32px; align-items: center; }
.certificate-copy h2 { margin-bottom: 18px; }
.certificate-copy > p:last-child { color: var(--ink-soft); }
.certificate { position: relative; aspect-ratio: 1.42 / 1; overflow: hidden; padding: 26px; border: 1px solid rgba(255,255,255,.22); border-radius: var(--radius-md); color: var(--white); background: radial-gradient(circle at 90% 10%, rgba(207,138,146,.32), transparent 28%), linear-gradient(145deg, var(--brand-strong), var(--brand)); box-shadow: var(--shadow-lg); }
.certificate::before { content: ""; position: absolute; inset: 10px; border: 1px solid rgba(255,255,255,.2); border-radius: 15px; }
.certificate__mark { position: relative; width: 24px; height: 24px; margin-bottom: 15px; border: 1px solid rgba(255,255,255,.5); border-radius: 8px; }
.certificate__mark::after { content: ""; position: absolute; inset: 6px; border-radius: 50%; background: var(--white); }
.certificate p { position: relative; margin-bottom: 9px; color: rgba(255,255,255,.5); font-size: .57rem; letter-spacing: .13em; text-transform: uppercase; }
.certificate h3 { position: relative; margin-bottom: 20px; font-size: clamp(1.65rem, 8vw, 3rem); letter-spacing: -.05em; }
.certificate__line { position: relative; display: block; width: 55%; height: 1px; margin-top: auto; background: rgba(255,255,255,.3); }
.certificate small { position: absolute; right: 26px; bottom: 24px; color: rgba(255,255,255,.4); font-size: .54rem; text-transform: uppercase; }

.section--faq { background: var(--paper-deep); }
.faq-grid { display: grid; gap: 6px; }
.accordion--light .accordion__item { border-color: rgba(255,255,255,.72); background: var(--glass-light); box-shadow: 0 14px 34px rgba(39,10,14,.06), inset 0 1px 0 rgba(255,255,255,.9); }
.accordion--light .accordion__item.is-open { border-color: rgba(65,8,14,.22); background: linear-gradient(145deg, rgba(255,255,255,.82), rgba(255,255,255,.48)); }
.accordion--light .accordion__trigger { grid-template-columns: minmax(0, 1fr) 24px; gap: 20px; padding: 17px 20px; }
.accordion--light .accordion__trigger > span:first-child { min-width: 0; }
.accordion--light .accordion__plus { justify-self: end; color: var(--ink); }
.accordion--light .accordion__trigger strong { color: var(--ink); }
.accordion--light .accordion__panel p { margin: 0 20px 20px; color: var(--ink-soft); font-size: .9rem; }

.final-cta { padding: 74px 0; color: var(--white); background: radial-gradient(circle at 20% 10%, rgba(200,105,116,.3), transparent 25%), var(--brand); }
.final-cta__inner { display: grid; gap: 28px; }
.final-cta h2 { max-width: 760px; margin-bottom: 0; }
.final-cta__action > p { display: flex; align-items: baseline; gap: 10px; margin-bottom: 14px; }
.final-cta__action strong { font-size: 2rem; }
.final-cta__action s { color: rgba(255,255,255,.42); }

.site-footer { position: relative; overflow: hidden; padding: 36px 0 calc(94px + env(safe-area-inset-bottom)); color: rgba(255,255,255,.62); background: radial-gradient(circle at 86% 5%, rgba(123,37,48,.22), transparent 31%), #0c0708; }
.site-footer::before { content: ""; position: absolute; inset: 0; pointer-events: none; opacity: .16; background-image: linear-gradient(rgba(255,255,255,.04) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.04) 1px, transparent 1px); background-size: 46px 46px; mask-image: linear-gradient(to bottom, black, transparent 74%); }
.footer__shell { position: relative; z-index: 1; }
.footer__hero { display: grid; gap: 0; padding-bottom: 22px; border-bottom: 1px solid rgba(255,255,255,.12); }
.footer__brand-block { min-width: 0; }
.brand--footer { justify-self: start; margin-bottom: 0; }
.footer__wordmark { display: none; margin: 0; color: var(--white); font-family: var(--font-accent); font-size: clamp(2.25rem,13vw,5.8rem); font-weight: 500; letter-spacing: -.085em; line-height: .82; }
.footer__wordmark span { display: block; color: #d5929b; }
.footer__pitch { display: none; max-width: 390px; align-self: end; }
.footer__pitch > p:last-child { margin: 0; color: rgba(255,255,255,.78); font-size: 1rem; line-height: 1.45; }
.footer__label { margin: 0 0 7px; color: rgba(255,255,255,.36); font-size: .63rem; font-weight: 700; letter-spacing: .14em; line-height: 1.35; text-transform: uppercase; }
.footer__cta { display: none; width: 100%; align-self: end; }
.footer__grid { display: grid; gap: 24px; padding: 24px 0; border-bottom: 1px solid rgba(255,255,255,.12); }
.footer__column { display: grid; align-content: start; gap: 4px; min-width: 0; }
.footer__nav { display: none; }
.footer__nav a { display: flex; min-height: 38px; align-items: center; color: rgba(255,255,255,.72); font-size: .84rem; transition: color 180ms ease, transform 220ms var(--ease); }
.footer__nav a:hover { color: var(--white); transform: translateX(4px); }
.footer__links { display: grid; border-top: 1px solid rgba(255,255,255,.1); }
.footer__links button { display: grid; min-height: 44px; grid-template-columns: minmax(0,1fr) 20px; align-items: center; gap: 12px; padding: 6px 0; border: 0; border-bottom: 1px solid rgba(255,255,255,.1); color: rgba(255,255,255,.72); font-size: .76rem; line-height: 1.25; text-align: left; background: none; cursor: pointer; transition: color 180ms ease, padding-left 220ms var(--ease); }
.footer__links button:hover { padding-left: 5px; color: var(--white); }
.footer__links svg { width: 18px; height: 18px; justify-self: end; color: rgba(255,255,255,.4); transition: color 180ms ease, transform 220ms var(--ease); }
.footer__links button:hover svg { color: #d5929b; transform: translateX(3px); }
.footer__contact { grid-template-columns: minmax(0,.72fr) minmax(0,1.28fr); gap: 0 14px; }
.footer__contact .footer__label { grid-column: 1 / -1; }
.footer__contact-value { min-width: 0; margin: 0; padding: 9px 0; border-bottom: 1px solid rgba(255,255,255,.1); color: rgba(255,255,255,.76); font-family: var(--font-accent); font-size: .72rem; letter-spacing: -.5px; overflow-wrap: anywhere; transition: color 180ms ease; }
.footer__contact-value:hover { color: var(--white); }
.footer__contact-note { display: none; max-width: 300px; margin: 8px 0 0; color: rgba(255,255,255,.38); font-size: .69rem; line-height: 1.5; }
.footer__bottom { display: grid; gap: 9px; padding-top: 18px; }
.footer__bottom > p { margin: 0; color: rgba(255,255,255,.4); font-size: .68rem; }
.footer__bottom > p:nth-child(2) { display: none; }
.footer__status { display: inline-flex; width: fit-content; align-items: center; gap: 7px; padding: 6px 9px; border: 1px solid rgba(213,146,155,.2); border-radius: 999px; color: rgba(255,255,255,.56); background: rgba(65,8,14,.2); font-size: .58rem; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; }
.footer__status > span { width: 6px; height: 6px; border-radius: 50%; background: #d5929b; box-shadow: 0 0 0 4px rgba(213,146,155,.1); }

.legal-modal[hidden] { display: none; }
.legal-modal { position: fixed; z-index: 500; inset: 0; display: flex; align-items: flex-end; justify-content: center; padding-top: max(20px,env(safe-area-inset-top)); }
.legal-modal__backdrop { position: absolute; inset: 0; width: 100%; height: 100%; padding: 0; border: 0; background: rgba(8,3,4,.76); opacity: 0; cursor: default; backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px); transition: opacity 240ms ease; }
.legal-modal__dialog { position: relative; display: grid; width: 100%; max-height: calc(var(--visible-viewport-height,100dvh) - max(20px,env(safe-area-inset-top))); grid-template-rows: auto auto minmax(0,1fr) auto; overflow: hidden; border: 1px solid rgba(255,255,255,.64); border-radius: 26px 26px 0 0; color: var(--ink); background: var(--paper); box-shadow: 0 -28px 90px rgba(0,0,0,.36); opacity: 0; transform: translateY(28px); transition: opacity 220ms ease, transform 340ms var(--ease); }
.legal-modal.is-visible .legal-modal__backdrop { opacity: 1; }
.legal-modal.is-visible .legal-modal__dialog { opacity: 1; transform: translateY(0); }
.legal-modal__header { display: flex; align-items: flex-start; justify-content: space-between; gap: 18px; padding: 20px 18px 16px; border-bottom: 1px solid var(--line); background: rgba(255,253,250,.92); }
.legal-modal__header p { margin: 0 0 6px; color: var(--brand-soft); font-size: .62rem; font-weight: 800; letter-spacing: .14em; text-transform: uppercase; }
.legal-modal__header h2 { max-width: 660px; margin: 0; font-size: clamp(1.32rem,5.6vw,2.25rem); line-height: 1; }
.legal-modal__close { display: grid; width: 44px; height: 44px; flex: 0 0 auto; place-items: center; padding: 0; border: 1px solid rgba(65,8,14,.13); border-radius: 13px; color: var(--brand); background: rgba(65,8,14,.055); cursor: pointer; transition: background-color 180ms ease, transform 220ms var(--ease); }
.legal-modal__close:hover { background: rgba(65,8,14,.1); transform: rotate(3deg); }
.legal-modal__close svg { width: 20px; height: 20px; margin: auto; }
.legal-modal__meta { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 11px 18px; border-bottom: 1px solid var(--line); color: var(--ink-soft); background: rgba(238,231,223,.68); font-size: .67rem; }
.legal-modal__draft { display: inline-flex; flex: 0 0 auto; align-items: center; gap: 6px; color: var(--brand-soft); font-weight: 700; }
.legal-modal__draft > span { width: 6px; height: 6px; border-radius: 50%; background: var(--brand-bright); }
.legal-modal__scroll { min-height: 0; overflow-y: auto; padding: 22px 18px 38px; overscroll-behavior: contain; scrollbar-color: rgba(65,8,14,.34) transparent; scrollbar-width: thin; }
.legal-modal__loading { margin: 0; color: var(--ink-soft); font-size: .88rem; }
.legal-modal__content { width: min(100%,780px); margin-inline: auto; }
.legal-document__notice { margin: 0 0 28px; padding: 14px 15px; border: 1px solid rgba(123,37,48,.17); border-radius: 14px; color: var(--brand); background: rgba(123,37,48,.065); font-size: .78rem; font-weight: 650; line-height: 1.5; }
.legal-document__section { padding: 22px 0; border-top: 1px solid var(--line); }
.legal-document__notice + .legal-document__section { border-top: 0; padding-top: 0; }
.legal-document__section h3 { margin: 0 0 12px; font-family: var(--font-body); font-size: 1rem; font-weight: 700; letter-spacing: -.02em; line-height: 1.25; }
.legal-document__section p, .legal-document__section li { color: #493f41; font-size: .84rem; line-height: 1.65; }
.legal-document__section p { margin: 0 0 12px; }
.legal-document__section p:last-child { margin-bottom: 0; }
.legal-document__section ul { display: grid; gap: 9px; margin: 0; padding-left: 20px; }
.legal-document__sources a { color: var(--brand-soft); text-decoration: underline; text-underline-offset: 3px; }
.legal-modal__actions { display: grid; grid-template-columns: 1fr auto; align-items: center; gap: 14px; padding: 12px 18px calc(12px + env(safe-area-inset-bottom)); border-top: 1px solid var(--line); background: rgba(255,253,250,.96); box-shadow: 0 -12px 30px rgba(39,10,14,.07); }
.legal-modal__actions .button { min-height: 48px; padding: 12px 16px; font-size: .7rem; }
.legal-modal__download { display: inline-flex; min-height: 44px; align-items: center; justify-content: center; gap: 7px; color: var(--brand-soft); font-size: .71rem; font-weight: 750; }
.legal-modal__download svg { width: 18px; height: 18px; }
.mobile-cta { position: fixed; z-index: 90; right: 0; bottom: 0; left: 0; display: flex; justify-content: center; padding: 0 14px calc(12px + env(safe-area-inset-bottom)); pointer-events: none; }
.mobile-cta .button { width: min(100%, 430px); min-height: 58px; border: 1px solid rgba(255,255,255,.16); border-radius: 17px; box-shadow: 0 18px 45px rgba(29,4,8,.34), inset 0 1px 0 rgba(255,255,255,.14); pointer-events: auto; }
.toast { position: fixed; z-index: 300; right: 16px; bottom: calc(86px + env(safe-area-inset-bottom)); left: 16px; padding: 13px 16px; border: 1px solid rgba(255,255,255,.14); border-radius: 13px; color: var(--white); background: rgba(20,9,11,.94); box-shadow: var(--shadow-lg); font-size: .8rem; text-align: center; opacity: 0; pointer-events: none; transform: translateY(12px); transition: opacity 220ms ease, transform 220ms var(--ease); }
.toast.is-visible { opacity: 1; transform: translateY(0); }

.flow-page { min-height: 100svh; color: var(--white); background: radial-gradient(circle at 75% 10%, rgba(123,37,48,.38), transparent 30%), radial-gradient(circle at 10% 88%, rgba(123,37,48,.18), transparent 28%), var(--night); }
.flow-header { display: flex; min-height: 78px; align-items: center; justify-content: center; padding: max(18px, env(safe-area-inset-top)) 18px 10px; }
.flow-header--split { width: min(calc(100% - 36px), 960px); justify-content: space-between; gap: 16px; margin-inline: auto; padding-inline: 0; }
.back-link { display: inline-flex; min-height: 44px; align-items: center; gap: 6px; color: rgba(255,255,255,.62); font-size: .75rem; font-weight: 600; transition: color 180ms ease; }
.back-link:hover { color: var(--white); }
.back-link svg { width: 17px; height: 17px; }
.flow-main { display: grid; min-height: calc(100svh - 78px); place-items: center; padding: 24px 18px 56px; }
.flow-card { width: min(100%, 540px); padding: 27px 20px; border: 1px solid rgba(255,255,255,.64); border-radius: var(--radius-lg); color: var(--ink); background: linear-gradient(145deg, rgba(255,255,255,.9), rgba(255,253,250,.68)); box-shadow: 0 30px 100px rgba(0,0,0,.32), inset 0 1px 0 rgba(255,255,255,.95); backdrop-filter: blur(22px) saturate(120%); -webkit-backdrop-filter: blur(22px) saturate(120%); }
.flow-card--registration { width: min(100%, 960px); }
.flow-main--registration { align-items: start; padding-top: 24px; }
.registration-layout { display: grid; gap: 30px; }
.registration-intro > p:not(.step-label) { color: var(--ink-soft); }
.registration-summary { background: rgba(246,242,237,.58); backdrop-filter: blur(12px); -webkit-backdrop-filter: blur(12px); }
.registration-bonus { display: grid; grid-template-columns: 44px 1fr; align-items: center; gap: 11px; padding: 14px; border: 1px solid rgba(65,8,14,.1); border-radius: 14px; background: rgba(65,8,14,.045); }
.registration-bonus > span { display: grid; width: 42px; height: 42px; place-items: center; border-radius: 13px; color: var(--brand); background: rgba(65,8,14,.07); }
.registration-bonus svg { width: 20px; height: 20px; margin: auto; }
.registration-bonus p { margin: 0; color: var(--ink-soft); font-size: .75rem; }
.registration-bonus strong { display: block; margin-bottom: 2px; color: var(--ink); font-size: .8rem; }
.registration-form { padding-top: 4px; }
.flow-progress { display: grid; grid-template-columns: 1fr 1fr; gap: 6px; margin-bottom: 24px; }
.flow-progress span { height: 4px; border-radius: 4px; background: #e8dfda; }
.flow-progress .is-done, .flow-progress .is-active { background: var(--brand); }
.flow-icon { display: grid; width: 54px; height: 54px; place-items: center; margin: 12px 0 20px; border-radius: 17px; color: var(--brand); background: rgba(65,8,14,.07); }
.flow-icon svg { width: 27px; height: 27px; }
.flow-card h1 { margin-bottom: 13px; font-size: clamp(2rem, 9vw, 3.3rem); }
.flow-card > p:not(.step-label):not(.secure-note):not(.prototype-label) { color: var(--ink-soft); }
.order-summary { display: grid; gap: 12px; margin: 26px 0 22px; padding: 18px; border: 1px solid var(--line); border-radius: 16px; background: var(--paper); }
.order-summary div { display: flex; justify-content: space-between; gap: 14px; }
.order-summary span { color: var(--ink-soft); font-size: .78rem; }
.order-summary strong { font-size: .82rem; text-align: right; }
.order-summary__total { margin-top: 4px; padding-top: 13px; border-top: 1px solid var(--line); }
.order-summary__total strong { color: var(--brand); font-size: 1.12rem; }
.prototype-note { margin-top: 22px; padding: 15px; border-radius: 14px; background: #f2ebe5; }
.prototype-note strong { display: block; margin-bottom: 4px; color: var(--brand); font-size: .78rem; }
.prototype-note p { margin-bottom: 8px; color: var(--ink-soft); font-size: .73rem; }
.prototype-note a { display: inline-flex; min-height: 44px; align-items: center; color: var(--brand); font-size: .76rem; font-weight: 750; text-decoration: underline; text-underline-offset: 3px; }
.success-card { text-align: center; }
.success-mark { display: grid; width: 74px; height: 74px; place-items: center; margin: 0 auto 20px; border-radius: 50%; color: var(--white); background: var(--brand); box-shadow: 0 14px 35px rgba(65,8,14,.25); }
.success-mark svg { width: 36px; height: 36px; stroke-width: 2.2; }
.success-card h1 span { display: block; color: var(--brand-soft); font-size: .46em; letter-spacing: -.02em; line-height: 1.18; }
.success-card h1 span:not(:empty) { margin-top: 18px; }
.success-card h1 span:empty { display: none; }
.next-steps { display: grid; gap: 8px; margin: 25px 0; text-align: left; }
.next-steps > div { display: grid; grid-template-columns: 34px 1fr; gap: 11px; padding: 13px; border: 1px solid var(--line); border-radius: 13px; }
.next-steps > div > span { display: grid; width: 32px; height: 32px; place-items: center; border-radius: 10px; color: var(--brand); background: rgba(65,8,14,.06); font-size: .65rem; font-weight: 750; }
.next-steps p { margin: 0; color: var(--ink-soft); font-size: .75rem; }
.next-steps strong { display: block; margin-bottom: 2px; color: var(--ink); font-size: .84rem; }
.prototype-label { margin: 13px 0 0; color: #8b7f80; font-size: .67rem; }

.icon-box svg,
.floating-card__icon svg,
.check-list li > span svg,
.flow-icon svg,
.success-mark svg,
.next-steps > div > span svg,
.custom-check svg { margin: auto; }

.has-js [data-reveal] { opacity: 0; transform: translateY(20px); transition: opacity 520ms var(--ease), transform 520ms var(--ease); }
.has-js [data-reveal].is-visible { opacity: 1; transform: translateY(0); }
.hero__copy > * { animation: hero-in 620ms var(--ease) both; }
.hero__copy > *:nth-child(2) { animation-delay: 60ms; }
.hero__copy > *:nth-child(3) { animation-delay: 110ms; }
.hero__copy > *:nth-child(4) { animation-delay: 160ms; }
.hero__copy > *:nth-child(5), .hero__copy > *:nth-child(6) { animation-delay: 210ms; }
@keyframes hero-in { from { opacity: 0; transform: translateY(16px); } }
@keyframes spin { to { transform: rotate(360deg); } }
@keyframes benefit-enter-one {
  0% { opacity: 0; transform: translate3d(-76px,58px,0) rotate(-13deg) scale(.955); }
  66% { opacity: 1; transform: translate3d(9px,-6px,0) rotate(1.8deg) scale(1.012); }
  84% { transform: translate3d(-3px,2px,0) rotate(-.65deg) scale(.997); }
  100% { opacity: 1; transform: translate3d(0,0,0) rotate(0) scale(1); }
}
@keyframes benefit-enter-two {
  0% { opacity: 0; transform: translate3d(68px,86px,0) rotate(14deg) scale(.95); }
  64% { opacity: 1; transform: translate3d(-10px,-5px,0) rotate(-2deg) scale(1.014); }
  83% { transform: translate3d(4px,2px,0) rotate(.7deg) scale(.997); }
  100% { opacity: 1; transform: translate3d(0,0,0) rotate(0) scale(1); }
}
@keyframes benefit-enter-three {
  0% { opacity: 0; transform: translate3d(-58px,44px,0) rotate(-9deg) scale(.965); }
  68% { opacity: 1; transform: translate3d(8px,-7px,0) rotate(1.35deg) scale(1.01); }
  86% { transform: translate3d(-2px,2px,0) rotate(-.45deg) scale(.998); }
  100% { opacity: 1; transform: translate3d(0,0,0) rotate(0) scale(1); }
}

@media (max-width: 767px) {
  .has-js .benefit-card[data-reveal] { opacity: 0; transition: none; transform-origin: 50% 70%; will-change: transform, opacity; }
  .has-js .benefit-card:nth-child(1)[data-reveal] { transform: translate3d(-76px,58px,0) rotate(-13deg) scale(.955); }
  .has-js .benefit-card:nth-child(2)[data-reveal] { transform: translate3d(68px,86px,0) rotate(14deg) scale(.95); }
  .has-js .benefit-card:nth-child(3)[data-reveal] { transform: translate3d(-58px,44px,0) rotate(-9deg) scale(.965); }
  .has-js .benefit-card:nth-child(1)[data-reveal].is-visible { animation: benefit-enter-one 1040ms cubic-bezier(.2,.74,.18,1) both; }
  .has-js .benefit-card:nth-child(2)[data-reveal].is-visible { animation: benefit-enter-two 1100ms 110ms cubic-bezier(.2,.74,.18,1) both; }
  .has-js .benefit-card:nth-child(3)[data-reveal].is-visible { animation: benefit-enter-three 1010ms 220ms cubic-bezier(.2,.74,.18,1) both; }
}

@media (min-width: 560px) {
  .container { width: min(calc(100% - 52px), var(--container)); }
  .form-card, .price-card, .offer-action-card { padding: 34px; }
  .author-values { grid-template-columns: repeat(3, 1fr); }
  .case-grid { grid-template-columns: repeat(3, 1fr); }
  .media-placeholder--case:last-child { grid-column: auto; aspect-ratio: 3 / 4; }
  .flow-card { padding: 36px; }
}

@media (min-width: 768px) {
  body:not(.flow-page) { padding-bottom: 0; }
  .section { padding: 110px 0; }
  .site-nav { padding-top: 16px; }
  .nav__inner { min-height: 66px; padding: 9px 10px 9px 18px; border-radius: 21px; }
  .brand { font-size: .96rem; }
  .brand__mark { width: 32px; height: 32px; }
  .menu-overlay__inner { padding-top: calc(140px + env(safe-area-inset-top)); padding-bottom: calc(44px + env(safe-area-inset-bottom)); }
  .menu-links { max-width: 820px; }
  .menu-links a { font-size: clamp(2rem, 5vw, 4.6rem); }
  .menu-overlay__footer { grid-template-columns: minmax(0, 1fr) auto; align-items: end; gap: 28px; }
  .menu-overlay__footer .button { min-width: 260px; }
  .hero { padding: 140px 0 154px; }
  .section--bridge { margin-top: -58px; padding-top: 132px; border-radius: 40px 40px 0 0; }
  .hero__stage { grid-template-columns: minmax(0,.92fr) minmax(330px,1.08fr); grid-template-areas: "copy media" "proof proof"; align-items: center; gap: 28px 34px; }
  .hero__copy { display: flex; grid-area: copy; flex-direction: column; opacity: var(--hero-fade); transform: translate3d(0,var(--hero-copy-y),0); transition: opacity 120ms linear; }
  .hero__copy h1 { order: 0; margin-bottom: 18px; }
  .hero__eyebrow { order: -1; margin-bottom: 18px; }
  .hero__lead { order: 0; margin-bottom: 0; }
  .hero__media { grid-area: media; order: 0; width: 100%; max-width: 390px; margin: 0; }
  .hero__proof { grid-area: proof; order: 0; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 14px; padding: 8px 0 0; isolation: auto; }
  .hero-proof-card { position: relative; top: auto; min-height: 218px; align-self: stretch; padding: 20px; }
  .hero-proof-card__body { margin-top: 18px; }
  .benefit-grid { grid-template-columns: repeat(3, 1fr); }
  .benefit-card { min-height: 340px; padding: 28px; }
  .icon-box { margin-bottom: 78px; }
  .program-layout { grid-template-columns: minmax(250px,.62fr) minmax(0,1.38fr); align-items: center; gap: 48px; padding-top: 104px; padding-bottom: 70px; }
  .program-layout__intro { max-width: 480px; }
  .program-layout__intro h2 { font-size: clamp(2.15rem,3.5vw,3.45rem); }
  .program-layout__intro > p:last-of-type { font-size: 1rem; }
  .program-viewport { -webkit-mask-image: linear-gradient(90deg, transparent 0, #000 7%, #000 93%, transparent 100%); mask-image: linear-gradient(90deg, transparent 0, #000 7%, #000 93%, transparent 100%); }
  .program-track { --program-gap: 92px; grid-auto-columns: clamp(310px,32vw,380px); }
  .program-card { min-height: min(430px,58svh); }
  .offer-grid { grid-template-columns: 1fr; }
  .price-card--combined { grid-template-columns: minmax(0,.9fr) minmax(0,1.1fr); gap: 48px; }
  .price-card__action { align-content: center; padding: 0 0 0 48px; border-top: 0; border-left: 1px solid rgba(255,255,255,.12); }
  .price-card, .form-card, .offer-action-card { padding: 42px; }
  .registration-layout { grid-template-columns: minmax(0, .9fr) minmax(340px, 1.1fr); gap: 48px; align-items: start; }
  .registration-intro { position: sticky; top: 30px; }
  .author-grid { grid-template-columns: .82fr 1.18fr; align-items: center; gap: 70px; }
  .certificate-grid { grid-template-columns: .82fr 1.18fr; gap: 80px; }
  .faq-grid { grid-template-columns: .7fr 1.3fr; gap: 70px; align-items: start; }
  .faq-grid .section-heading { position: sticky; top: 110px; }
  .final-cta__inner { grid-template-columns: 1fr auto; align-items: end; }
  .final-cta__action { min-width: 300px; }
  .site-footer { padding: 78px 0 42px; }
  .footer__hero { grid-template-columns: minmax(0,1.12fr) minmax(250px,.7fr) auto; align-items: end; gap: 48px; padding-bottom: 48px; }
  .brand--footer { margin-bottom: 30px; }
  .footer__wordmark { display: block; font-size: clamp(3.9rem,7.1vw,6.6rem); }
  .footer__pitch { display: block; }
  .footer__cta { display: inline-flex; width: auto; min-width: 230px; }
  .footer__grid { grid-template-columns: minmax(170px,.62fr) minmax(300px,1.18fr) minmax(210px,.72fr); gap: clamp(42px,6vw,90px); padding: 46px 0; }
  .footer__nav { display: grid; }
  .footer__links button { min-height: 53px; padding: 8px 0; font-size: .8rem; }
  .footer__contact { grid-template-columns: 1fr; gap: 9px; }
  .footer__contact .footer__label { grid-column: auto; }
  .footer__contact-value { padding: 12px 0; font-size: .88rem; }
  .footer__contact-note { display: block; }
  .footer__bottom { grid-template-columns: 1fr 1fr auto; align-items: center; gap: 24px; }
  .footer__bottom > p:nth-child(2) { display: block; text-align: center; }
  .footer__status { justify-self: end; }
  .legal-modal { align-items: center; padding: 24px; }
  .legal-modal__dialog { width: min(920px,calc(100% - 48px)); max-height: min(880px,calc(var(--visible-viewport-height,100dvh) - 48px)); border-radius: 28px; box-shadow: 0 34px 110px rgba(0,0,0,.42); transform: translateY(18px) scale(.985); }
  .legal-modal.is-visible .legal-modal__dialog { transform: translateY(0) scale(1); }
  .legal-modal__header { padding: 24px 28px 20px; }
  .legal-modal__meta { padding: 12px 28px; }
  .legal-modal__scroll { padding: 30px 28px 46px; }
  .legal-modal__actions { padding: 14px 28px; }
  .legal-modal__actions .button { min-width: 180px; }
  .mobile-cta { display: none; }
  .toast { right: 24px; bottom: 24px; left: auto; width: min(390px, calc(100% - 48px)); }
}

@media (min-width: 1024px) {
  .hero { padding-top: 136px; }
  .hero__stage { min-height: 760px; grid-template-columns: minmax(0,.92fr) minmax(390px,1.08fr); grid-template-areas: "copy media" "proof proof"; align-content: center; gap: 30px 46px; }
  .hero__copy h1 { font-size: clamp(3.5rem,5.2vw,4.8rem); }
  .hero__lead { max-width: 530px; font-size: 1.08rem; }
  .hero__media { max-width: 360px; }
  .hero__proof { gap: 14px; }
  .hero-proof-card { min-height: 224px; padding: 22px; }
  .benefit-card { transition: transform 240ms var(--ease), box-shadow 240ms ease, border-color 240ms ease; }
  .benefit-card:hover { transform: translateY(-5px); border-color: rgba(65,8,14,.22); box-shadow: 0 22px 50px rgba(39,10,14,.12); }
  .journey-list { grid-template-columns: repeat(5, 1fr); }
  .journey-list::before { top: 21px; right: 9%; bottom: auto; left: 9%; width: auto; height: 1px; }
  .has-js .journey-list::before { transform: scaleX(0); transform-origin: left center; }
  .has-js .journey-list.is-visible::before { transform: scaleX(1); }
  .journey-list li { grid-template-columns: 1fr; gap: 18px; padding: 0 24px 0 0; }
  .journey-list li > span { background: var(--night); }
}

@media (min-width: 1280px) {
  .hero__stage { grid-template-columns: minmax(0,1fr) minmax(420px,.82fr); gap: 34px 58px; }
  .hero__media { max-width: 390px; }
  .hero__copy h1 { font-size: 4.85rem; }
}

@media (min-width: 768px) and (max-height: 680px) {
  .hero { min-height: auto; padding-top: 112px; }
  .hero__stage { min-height: 0; }
  .hero__media { max-width: 330px; }
}

@media (max-height: 680px) {
  .menu-overlay__inner { padding-top: calc(70px + env(safe-area-inset-top)); padding-bottom: max(8px, env(safe-area-inset-bottom)); }
  .menu-overlay__label, .menu-overlay__footer p { display: none; }
  .menu-links a { font-size: clamp(1rem, 4.8vw, 1.22rem); }
  .menu-overlay__footer { margin-top: 8px; }
  .menu-overlay__footer .button { min-height: 46px; }
}

@media (max-width: 767px) and (max-height: 760px) {
  .program-layout { gap: 14px; padding-top: calc(74px + env(safe-area-inset-top)); padding-bottom: calc(76px + env(safe-area-inset-bottom)); }
  .program-layout__intro > p:last-of-type { display: none; }
  .program-layout__intro h2 { margin-bottom: 8px; font-size: clamp(1.48rem,6.5vw,1.85rem); }
  .program-layout__intro .eyebrow { margin-bottom: 10px; }
  .program-card { min-height: 292px; }
  .program-card h3 { margin-block: 18px 14px; }
}

@media (max-width: 767px) {
  .program-card {
    background: radial-gradient(circle at 90% 8%, rgba(157,54,66,.2), transparent 31%), linear-gradient(145deg, rgba(45,24,28,.97), rgba(25,13,16,.95));
    box-shadow: 0 18px 42px rgba(0,0,0,.22), inset 0 1px 0 rgba(255,255,255,.08);
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
  }
}

@media (min-width: 560px) and (max-height: 680px) {
  .menu-links { grid-template-columns: repeat(2, minmax(0, 1fr)); grid-template-rows: repeat(3, minmax(44px, 1fr)); column-gap: 28px; }
  .menu-links a { grid-template-columns: 28px 1fr; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; scroll-behavior: auto !important; }
  .has-js [data-reveal] { opacity: 1; transform: none; }
  .hero__copy, .hero__media, .section--bridge > .container { opacity: 1; transform: none; }
  .hero-proof-card { position: relative; top: auto; }
  .program-card { opacity: 1 !important; transform: none !important; }
  .program-card::after { --connector-clip: 0% !important; opacity: .82; clip-path: none; }
  .has-js .journey-list::before, .has-js .journey-list li { opacity: 1; transform: none; }
}

/* A/B concepts assembled from the first lesson. */
.variant-video .concept--text,
.variant-text .concept--video { display: none !important; }

.variant-switcher { display: none; }
.has-variant-preview .variant-switcher {
  position: fixed;
  z-index: 135;
  right: 14px;
  bottom: max(14px, env(safe-area-inset-bottom));
  display: flex;
  min-height: 54px;
  align-items: center;
  gap: 4px;
  padding: 5px;
  border: 1px solid rgba(255,255,255,.16);
  border-radius: 16px;
  color: rgba(255,255,255,.74);
  background: rgba(18,7,9,.9);
  box-shadow: 0 16px 48px rgba(0,0,0,.28);
  backdrop-filter: blur(18px) saturate(125%);
  -webkit-backdrop-filter: blur(18px) saturate(125%);
}
.variant-switcher > span { padding: 0 9px; font-size: .63rem; font-weight: 700; letter-spacing: .09em; text-transform: uppercase; }
.variant-switcher a { display: grid; min-height: 44px; place-items: center; padding: 7px 11px; border-radius: 11px; font-size: .7rem; font-weight: 700; cursor: pointer; transition: color 200ms ease, background-color 200ms ease; }
.variant-switcher a:hover { color: var(--white); background: rgba(255,255,255,.09); }
.variant-switcher a[aria-current="page"] { color: var(--brand); background: var(--white); }

.hero__actions { display: flex; order: 5; flex-wrap: wrap; align-items: center; gap: 13px 20px; margin-bottom: 36px; }
.hero__actions .button { min-width: 220px; }
.hero__lesson-link { display: inline-flex; min-height: 44px; align-items: center; gap: 7px; color: rgba(255,255,255,.72); font-size: .78rem; font-weight: 700; cursor: pointer; transition: color 200ms ease, transform 240ms var(--ease); }
.hero__lesson-link:hover { color: var(--white); transform: translateX(3px); }
.hero__lesson-link svg { width: 17px; height: 17px; }
.hero__proof { order: 6; }

.hero-media--video::before,
.hero-media--video::after { content: none; }
.hero-media--video { aspect-ratio: 9 / 16; min-height: 0; background: #080405; }
.hero-media--video > video { position: absolute; z-index: 0; inset: 0; width: 100%; height: 100%; object-fit: contain; background: #080405; cursor: pointer; }
.hero-media--video > video:focus-visible { outline: 3px solid #e2abb2; outline-offset: -5px; }
.hero-media--video:fullscreen { width: 100vw; height: 100vh; aspect-ratio: auto; border: 0; border-radius: 0; }
.hero-media--video:fullscreen > video { object-fit: contain; }
.video-fullscreen-open { overflow: hidden; }
.hero-media--video.is-site-fullscreen { position: fixed; z-index: 1000; inset: 0; width: 100vw; height: 100svh; aspect-ratio: auto; border: 0; border-radius: 0; }
.hero-media--video.is-site-fullscreen > video { object-fit: contain; }
.hero-media--video::selection { background: transparent; }
.hero-media--video .hero-media__top { z-index: 3; text-shadow: 0 1px 14px rgba(0,0,0,.48); }
.hero-media--video .hero-media__top::before { content: ""; position: absolute; z-index: -1; top: 0; right: 0; left: 0; height: 120px; background: linear-gradient(to bottom, rgba(9,3,4,.72), transparent); pointer-events: none; }
.hero-video-play { position: absolute; z-index: 4; top: 50%; left: 50%; display: grid; min-width: 122px; justify-items: center; gap: 10px; padding: 0; border: 0; color: var(--white); background: transparent; cursor: pointer; transform: translate(-50%,-50%); transition: opacity 220ms ease, transform 260ms var(--ease); }
.hero-video-play:hover { transform: translate(-50%,-50%) scale(1.025); }
.hero-video-play:active { transform: translate(-50%,-50%) scale(.97); }
.hero-video-play__icon { display: grid; width: 72px; height: 72px; place-items: center; border: 1px solid rgba(255,255,255,.34); border-radius: 50%; background: rgba(20,9,11,.62); box-shadow: 0 18px 46px rgba(0,0,0,.32), inset 0 1px 0 rgba(255,255,255,.16); backdrop-filter: blur(14px); -webkit-backdrop-filter: blur(14px); }
.hero-video-play__icon svg { width: 29px; height: 29px; margin: auto; }
.hero-video-play__label { display: inline-flex; min-height: 34px; align-items: center; padding: 7px 12px; border: 1px solid rgba(255,255,255,.2); border-radius: 999px; background: rgba(20,9,11,.68); box-shadow: 0 10px 28px rgba(0,0,0,.22); font-size: .68rem; font-weight: 750; letter-spacing: .04em; backdrop-filter: blur(12px); -webkit-backdrop-filter: blur(12px); }
.hero-media--video.is-playing .hero-video-play { visibility: hidden; opacity: 0; pointer-events: none; transform: translate(-50%,-50%) scale(.88); }
.hero-media__video-footer { position: absolute; z-index: 3; right: 14px; bottom: 14px; left: 14px; display: grid; grid-template-columns: 1fr auto; align-items: end; gap: 12px; padding: 15px; border: 1px solid rgba(255,255,255,.16); border-radius: 17px; color: var(--white); background: rgba(15,6,8,.66); box-shadow: 0 15px 38px rgba(0,0,0,.25); backdrop-filter: blur(16px); -webkit-backdrop-filter: blur(16px); }
.hero-media__video-footer p { margin: 0; color: rgba(255,255,255,.72); font-size: .72rem; line-height: 1.45; }
.hero-media__video-footer strong { color: var(--white); }
.hero-media__controls { display: flex; align-items: center; gap: 8px; }
.video-control { display: grid; width: 44px; height: 44px; place-items: center; padding: 0; border: 1px solid rgba(255,255,255,.2); border-radius: 13px; color: var(--white); background: rgba(255,255,255,.08); cursor: pointer; transition: background-color 200ms ease, transform 200ms var(--ease); }
.video-control:hover { background: rgba(255,255,255,.16); }
.video-control:active { transform: scale(.96); }
.video-control svg { width: 21px; height: 21px; margin: auto; }
.sound-icon__mute { display: none; }
[data-video-player][data-muted="true"] .sound-icon__waves { display: none; }
[data-video-player][data-muted="true"] .sound-icon__mute { display: block; }

.outcome-board { position: relative; display: flex; aspect-ratio: 4 / 5; min-height: 410px; flex-direction: column; overflow: hidden; padding: 22px; border: 1px solid rgba(255,255,255,.18); border-radius: 30px; color: var(--white); background: radial-gradient(circle at 86% 12%, rgba(213,146,155,.3), transparent 26%), radial-gradient(circle at 12% 76%, rgba(123,37,48,.38), transparent 32%), linear-gradient(145deg, rgba(255,255,255,.11), rgba(255,255,255,.025)), #180b0e; box-shadow: 0 32px 90px rgba(0,0,0,.38), inset 0 1px 0 rgba(255,255,255,.12); }
.outcome-board::before { content: "01"; position: absolute; right: -8px; bottom: 6px; color: rgba(255,255,255,.035); font-family: var(--font-accent); font-size: 9rem; font-weight: 700; line-height: .8; }
.outcome-board__top { position: relative; z-index: 1; display: flex; justify-content: space-between; gap: 12px; color: rgba(255,255,255,.5); font-size: .62rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
.outcome-board__quote { position: relative; z-index: 1; margin: auto 0 26px; font-family: var(--font-accent); font-size: clamp(1.35rem,5.7vw,2rem); font-weight: 500; letter-spacing: -1px; line-height: 1.08; }
.outcome-board__stats { position: relative; z-index: 1; display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 1px; overflow: hidden; border: 1px solid rgba(255,255,255,.13); border-radius: 15px; background: rgba(255,255,255,.12); }
.outcome-board__stats div { min-width: 0; padding: 12px 9px; background: rgba(16,6,8,.72); }
.outcome-board__stats strong, .outcome-board__stats span { display: block; }
.outcome-board__stats strong { margin-bottom: 4px; font-family: var(--font-accent); font-size: .95rem; }
.outcome-board__stats span { color: rgba(255,255,255,.56); font-size: .58rem; line-height: 1.3; }
.outcome-board__path { position: relative; z-index: 1; display: grid; grid-template-columns: auto 1fr auto 1fr auto; align-items: center; gap: 7px; margin-top: 18px; color: rgba(255,255,255,.65); font-size: .6rem; }
.outcome-board__path i { height: 1px; background: linear-gradient(90deg, rgba(213,146,155,.2), #d5929b); }
.outcome-board__note { position: relative; z-index: 1; margin: 16px 0 0; color: rgba(255,255,255,.53); font-size: .68rem; }

.section--author { overflow: hidden; }
.variant-text .section--author { background: radial-gradient(circle at 92% 12%, rgba(123,37,48,.08), transparent 28%), radial-gradient(circle at 8% 78%, rgba(213,146,155,.12), transparent 26%), var(--paper); }
.author-video-grid { display: grid; gap: 34px; align-items: center; }
.author-video-card { position: relative; overflow: hidden; border: 1px solid var(--line); border-radius: 26px; background: var(--night); box-shadow: var(--shadow-lg); }
.author-video-card video { display: block; width: 100%; aspect-ratio: 16 / 9; object-fit: contain; background: var(--night); }
.author-video-card__meta { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 14px 17px; color: rgba(255,255,255,.58); background: var(--night); font-size: .65rem; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.author-video-card__meta strong { color: #d5929b; }
.author-copy--video h2 { margin-bottom: 22px; }
.author-copy--video > p:not(.eyebrow) { max-width: 660px; }
.author-video-points { display: flex; flex-wrap: wrap; gap: 8px; margin: 25px 0 24px; }
.author-video-points span { padding: 8px 11px; border: 1px solid var(--line); border-radius: 999px; color: var(--brand); background: rgba(255,255,255,.48); font-size: .7rem; font-weight: 700; }
.text-link--brand { color: var(--brand); }

.author-editorial { display: grid; grid-template-areas: "intro" "portrait" "story" "quote"; gap: 20px; }
.author-editorial__intro { grid-area: intro; }
.author-editorial__intro h2 { max-width: 840px; margin: 0; font-size: clamp(1.75rem,7.7vw,2.65rem); line-height: 1; }
.author-editorial__intro h2 span { display: block; margin-bottom: 6px; color: var(--brand); }
.author-editorial__portrait { position: relative; grid-area: portrait; align-self: stretch; aspect-ratio: 4 / 3; overflow: hidden; border-radius: 26px; background: var(--brand); box-shadow: var(--shadow-lg); }
.author-editorial__portrait::after { content: ""; position: absolute; inset: 0; background: linear-gradient(to top, rgba(19,4,7,.78), transparent 48%); pointer-events: none; }
.author-editorial__portrait img { width: 100%; height: 100%; object-fit: cover; object-position: 52% 27%; }
.author-editorial__portrait span { position: absolute; z-index: 1; right: 16px; bottom: 15px; left: 16px; color: var(--white); font-size: .7rem; font-weight: 700; letter-spacing: .07em; text-transform: uppercase; }
.author-editorial__story { grid-area: story; padding: 20px; border: 1px solid rgba(65,8,14,.12); border-radius: 24px; background: rgba(255,255,255,.7); box-shadow: 0 18px 44px rgba(39,10,14,.07), inset 0 1px 0 rgba(255,255,255,.86); }
.author-editorial__story-label { display: flex; align-items: center; gap: 10px; margin: 0 0 20px; color: var(--brand-soft); font-size: .6rem; font-weight: 780; letter-spacing: .1em; text-transform: uppercase; }
.author-editorial__story-label span { display: grid; width: 32px; height: 32px; place-items: center; border: 1px solid rgba(65,8,14,.16); border-radius: 10px; background: rgba(65,8,14,.045); }
.author-editorial__story-lead { max-width: 660px; margin: 0; color: var(--ink); font-family: var(--font-accent); font-size: clamp(1.1rem,4.6vw,1.45rem); font-weight: 540; letter-spacing: -.45px; line-height: 1.2; }
.author-editorial__story-points { display: grid; gap: 12px; margin-top: 20px; padding-top: 17px; border-top: 1px solid var(--line); }
.author-editorial__story-points p { display: grid; grid-template-columns: 8px minmax(0,1fr); gap: 10px; margin: 0; color: var(--ink-soft); font-size: .92rem; line-height: 1.5; }
.author-editorial__story-points p > span { width: 7px; height: 7px; margin-top: .52em; border-radius: 50%; background: var(--brand-soft); box-shadow: 0 0 0 4px rgba(123,37,48,.08); }
.author-editorial__quote { position: relative; grid-area: quote; overflow: hidden; margin: 0; padding: 22px; border: 1px solid rgba(255,255,255,.12); border-radius: 26px; color: var(--white); background: radial-gradient(circle at 92% 8%, rgba(213,146,155,.3), transparent 28%), linear-gradient(145deg, var(--brand-soft), var(--brand)); box-shadow: 0 24px 58px rgba(65,8,14,.2), inset 0 1px 0 rgba(255,255,255,.12); }
.author-editorial__quote::after { content: "“"; position: absolute; right: 12px; bottom: -34px; color: rgba(255,255,255,.08); font-family: var(--font-accent); font-size: 10rem; line-height: 1; pointer-events: none; }
.author-editorial__quote p { position: relative; z-index: 1; max-width: 980px; margin: 0; font-family: var(--font-accent); font-size: clamp(1.1rem,4.6vw,1.9rem); font-weight: 500; letter-spacing: -.7px; line-height: 1.22; }
.author-editorial__quote footer { position: relative; z-index: 1; margin-top: 18px; padding-top: 13px; border-top: 1px solid rgba(255,255,255,.16); color: rgba(255,255,255,.58); font-size: .6rem; font-weight: 750; letter-spacing: .1em; text-transform: uppercase; }
.author-editorial__stats { display: grid; gap: 1px; overflow: hidden; border: 1px solid var(--line); border-radius: 21px; background: var(--line); }
.author-editorial__stats article { min-width: 0; padding: 22px; background: rgba(255,255,255,.62); }
.author-editorial__stats strong, .author-editorial__stats span { display: block; }
.author-editorial__stats strong { margin-bottom: 9px; color: var(--brand); font-family: var(--font-accent); font-size: 1.18rem; letter-spacing: -.8px; }
.author-editorial__stats span { color: var(--ink-soft); font-size: .8rem; }
.author-editorial__source { margin: 0; color: #75696b; font-size: .7rem; }
.author-accent-grid { display: grid; gap: 1px; margin-top: 28px; overflow: hidden; border: 1px solid var(--line); border-radius: 22px; background: var(--line); }
.author-accent-grid article { position: relative; min-width: 0; padding: 20px; background: rgba(255,255,255,.62); }
.author-accent-grid article > span { display: block; margin-bottom: 20px; color: rgba(65,8,14,.36); font-size: .6rem; font-weight: 750; letter-spacing: .11em; }
.author-accent-grid h3 { margin-bottom: 8px; color: var(--brand); font-family: var(--font-accent); font-size: 1.08rem; font-weight: 550; letter-spacing: -.5px; }
.author-accent-grid p { margin: 0; color: var(--ink-soft); font-size: .86rem; line-height: 1.48; }

@media (min-width: 768px) {
  .hero__actions { margin-top: 28px; margin-bottom: 0; }
  .hero__copy h1 { max-width: 700px; }
  .variant-text .hero__copy h1 { font-size: clamp(3.1rem,4.5vw,4.35rem); }
  .author-video-grid { grid-template-columns: minmax(0,1.08fr) minmax(340px,.92fr); gap: 64px; }
  .author-editorial__stats { grid-column: 1 / 13; grid-template-columns: repeat(3,minmax(0,1fr)); }
  .author-editorial__source { grid-column: 1 / 13; }
  .author-accent-grid { grid-template-columns: repeat(3,minmax(0,1fr)); margin-top: 38px; }
  .author-accent-grid article { padding: 28px; }
}

@media (min-width: 900px) {
  .author-editorial { grid-template-columns: minmax(0,1.18fr) minmax(260px,.82fr); grid-template-areas: "intro portrait" "story portrait" "quote quote"; align-items: stretch; gap: 28px 34px; }
  .author-editorial__intro h2 { font-size: clamp(2.35rem,3.7vw,3.7rem); }
  .author-editorial__portrait { aspect-ratio: auto; min-height: 100%; }
  .author-editorial__story { padding: 28px; }
  .author-editorial__story-points p { font-size: .96rem; }
  .author-editorial__quote { padding: 32px; }
  .author-editorial__quote p { font-size: clamp(1.3rem,2.5vw,2.05rem); }
}

@media (max-width: 620px) {
  .has-variant-preview .variant-switcher { right: 12px; left: 12px; justify-content: center; }
  .variant-switcher > span { display: none; }
  .variant-switcher a { flex: 1; }
  .hero__actions { align-items: stretch; }
  .hero__actions .button { width: 100%; }
  .hero__lesson-link { justify-content: center; }
  .hero-media__video-footer p { font-size: .66rem; }
  .hero-media__video-footer { right: 10px; bottom: 10px; left: 10px; padding: 11px; }
}

@media (prefers-reduced-motion: reduce) {
  .hero-video-play,
  .hero-media--video.is-playing .hero-video-play { transition: none; }
}

/* Honeypot field for the registration form: invisible for humans. */
.hp-field { position: absolute; left: -9999px; width: 1px; height: 1px; opacity: 0; pointer-events: none; }
