/* ace-bl.tech — design system
   Two accents. Amber is emphasis. Green means one thing only: done.
   Every animation is opt-in via prefers-reduced-motion: no-preference.
   Reduced-motion visitors get the FINAL state of every element, never the empty one. */

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
@media (min-width:901px){html{scrollbar-gutter:stable}}
@media (prefers-reduced-motion: no-preference){html{scroll-behavior:smooth}}
/* Anchor jumps must clear the sticky header, or the target lands underneath it (WCAG 2.4.11). */
html{scroll-padding-top:112px}
body{margin:0}
img,video{max-width:100%;display:block;height:auto}
a{color:inherit}
button,input,select,textarea{font:inherit;color:inherit}

/* The `hidden` attribute must beat any class that sets display. Without this, a component styled
   `display:flex` (like .approve) silently ignores hidden="" — the element stays on screen while
   the script believes it is concealed, and any sequence built on hidden/unhidden plays wrong. */
[hidden]{display:none !important}

:root{
  --ink:#070605;
  --panel:#12100C;
  --panel-hi:#1B1811;
  --body:#EDE7DC;
  --mute:#A79E8E;          /* ≥7:1 on --ink (WCAG AA normal text) */
  --amber:#FFB627;
  --amber-hi:#FFD98A;
  --amber-dim:#7A5510;
  --on-gold:#070605;
  --sky:#4CC5FF;
  --violet:#B08CFF;
  --red:#FF6B57;
  --green:#3FE08F;
  --line:rgba(255,255,255,.12);
  --line-amber:rgba(255,182,39,.32);

  --sans:-apple-system,BlinkMacSystemFont,"SF Pro Display",ui-sans-serif,"Helvetica Neue","Segoe UI",system-ui,Arial,sans-serif;
  --mono:ui-monospace,"SF Mono",SFMono-Regular,Menlo,Consolas,monospace;

  --wrap:1180px;
  --pad:clamp(18px,5vw,40px);
  --sec:clamp(56px,8vw,104px);
  --ease:cubic-bezier(.2,.7,.2,1);
}

body{
  background:var(--ink);
  color:var(--body);
  font-family:var(--sans);
  font-size:17px;
  line-height:1.55;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
  overflow-x:hidden;
}

/* ---------- layout ---------- */
.wrap{width:100%;max-width:var(--wrap);margin-inline:auto;
  padding-left:max(var(--pad),env(safe-area-inset-left));
  padding-right:max(var(--pad),env(safe-area-inset-right))}
.wrap--narrow{max-width:760px}
section{padding-block:var(--sec)}
.center{text-align:center}
.stack>*+*{margin-top:var(--gap,16px)}

/* ---------- type ---------- */
h1,h2,h3,h4{margin:0;font-weight:700;letter-spacing:-.02em;line-height:1.05;text-wrap:balance}
h1{font-size:clamp(40px,6.2vw,82px);letter-spacing:-.03em;line-height:.98}
h2{font-size:clamp(28px,3.6vw,46px)}
h3{font-size:22px;font-weight:600;letter-spacing:-.01em}
p{margin:0;text-wrap:pretty}
.lead{font-size:clamp(17px,1.6vw,20px);line-height:1.5;color:var(--body);max-width:62ch}
.eyebrow{font-size:12px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--amber);margin:0}
.cap{font-size:13px;line-height:1.45;color:var(--mute)}
.mono{font-family:var(--mono);font-size:13px;letter-spacing:-.01em}
.mono,code{overflow-wrap:anywhere;word-break:break-word}
pre{max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
pre code{overflow-wrap:normal;word-break:normal}
.amber{color:var(--amber)}
.measure{max-width:62ch}

/* ---------- skip link + focus ---------- */
.skip{position:absolute;left:-9999px;top:0;z-index:100;background:var(--amber);color:#000;padding:12px 18px;font-weight:700;border-radius:0 0 8px 0}
.skip:focus{left:0}
:focus-visible{outline:3px solid var(--amber);outline-offset:3px;border-radius:4px}

/* ---------- buttons ---------- */
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:10px;
  min-height:52px;padding:14px 26px;border-radius:10px;
  max-width:100%;white-space:normal;text-align:center;
  font-size:16px;font-weight:650;letter-spacing:-.01em;text-decoration:none;
  border:1px solid transparent;cursor:pointer;
  transition:transform .18s var(--ease),background-color .18s var(--ease),border-color .18s var(--ease);
}
.btn--primary,.btn--primary:visited{background:linear-gradient(180deg,var(--amber-hi),var(--amber));color:var(--on-gold);-webkit-text-fill-color:var(--on-gold);border-color:var(--amber)}
.btn--ghost{background:transparent;color:var(--body);border-color:rgba(255,255,255,.22)}
@media (hover:hover){
  .btn--primary:hover{background:linear-gradient(180deg,#FFE3A8,#FFC85A);color:var(--on-gold);-webkit-text-fill-color:var(--on-gold)}
  .btn--ghost:hover{border-color:var(--amber);color:var(--amber)}
  .btn:hover{transform:translateY(-1px)}
}
.btn--primary:active{color:var(--on-gold);-webkit-text-fill-color:var(--on-gold);background:linear-gradient(180deg,#FFC85A,var(--amber))}
.btn--primary:focus-visible{color:var(--on-gold);-webkit-text-fill-color:var(--on-gold);outline-color:#fff;outline-offset:4px}
.btn--primary:disabled,.btn--primary[aria-disabled="true"]{color:var(--on-gold);-webkit-text-fill-color:var(--on-gold);cursor:default}
.btn:active{transform:translateY(0)}

/* ---------- the offer line: the price is part of the 3-second sell, not fine print ---------- */
.offer{font-size:19px;letter-spacing:-.01em;color:var(--body)}
.offer a{text-decoration:none;color:inherit}
.offer b{color:var(--amber-hi);font-weight:750}
.offer__more{display:inline-block;margin-left:8px;font-size:14px;font-weight:600;color:var(--amber)}
@media (hover:hover){.offer a:hover .offer__more{text-decoration:underline}}

/* ---------- mini film box: the proof, clickable from the first screen ---------- */
.minifilm{position:relative;display:block;max-width:320px;margin-top:18px;border:1px solid var(--line-amber);border-radius:12px;overflow:hidden;text-decoration:none;box-shadow:0 14px 40px rgba(0,0,0,.5)}
.minifilm--big{max-width:none;margin-top:0;border-radius:16px;box-shadow:0 30px 80px rgba(0,0,0,.65)}
.minifilm--big .minifilm__play{width:64px;height:64px}
.minifilm--big .minifilm__cap{font-size:14px;padding:28px 16px 12px}
.minifilm__picture{display:block}
.minifilm img{display:block;width:100%;height:auto}
.minifilm__play{position:absolute;inset:0;margin:auto;width:48px;height:48px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:linear-gradient(180deg,var(--amber-hi),var(--amber));color:#120C00;padding-left:3px}
.minifilm__cap{position:absolute;left:0;right:0;bottom:0;padding:22px 12px 9px;font-size:12.5px;font-weight:600;color:#fff;background:linear-gradient(180deg,transparent,rgba(0,0,0,.85))}
@media (hover:hover){
  .minifilm{transition:transform .18s var(--ease),box-shadow .18s var(--ease)}
  .minifilm:hover{transform:translateY(-2px);box-shadow:0 20px 54px rgba(0,0,0,.6)}
}

/* ---------- lightbox: the film plays in a floating box over the page ---------- */
.lightbox{position:fixed;inset:0;z-index:90;display:flex;align-items:center;justify-content:center;padding:max(clamp(12px,4vw,40px),env(safe-area-inset-top)) max(clamp(12px,4vw,40px),env(safe-area-inset-right)) max(clamp(12px,4vw,40px),env(safe-area-inset-bottom)) max(clamp(12px,4vw,40px),env(safe-area-inset-left));background:rgba(4,3,2,.84);backdrop-filter:blur(10px) saturate(120%)}
.lightbox__box{position:relative;width:min(960px,94vw)}
.lightbox__close{position:absolute;top:-54px;right:-6px;width:48px;height:48px;border-radius:50%;border:1px solid rgba(255,255,255,.3);background:rgba(0,0,0,.5);color:#fff;font-size:22px;line-height:1;cursor:pointer}
.lightbox__close:hover{border-color:var(--amber);color:var(--amber)}
.lightbox video{box-shadow:0 40px 120px rgba(0,0,0,.8)}
.film-player{display:block;width:100%;aspect-ratio:16/9;background:#000;border-radius:12px;object-fit:contain}
@media (max-width:700px){
  .minifilm--big{width:min(100%,360px);justify-self:center}
  .minifilm--big .minifilm__picture{aspect-ratio:16/9}
  .lightbox{padding:max(8px,env(safe-area-inset-top)) max(8px,env(safe-area-inset-right)) max(8px,env(safe-area-inset-bottom)) max(8px,env(safe-area-inset-left))}
  .lightbox__box{width:calc(100vw - 16px)}
  .lightbox__close{top:max(8px,env(safe-area-inset-top));right:max(8px,env(safe-area-inset-right));z-index:1;width:48px;height:48px;background:rgba(0,0,0,.75)}
  .film-player{aspect-ratio:16/9;max-height:calc(100vh - 16px);max-height:calc(100dvh - 16px);object-fit:contain}
}
@media (max-height:500px){
  .lightbox{padding:max(8px,env(safe-area-inset-top)) max(8px,env(safe-area-inset-right)) max(8px,env(safe-area-inset-bottom)) max(8px,env(safe-area-inset-left))}
  .lightbox__box{width:min(calc(100vw - max(8px,env(safe-area-inset-left)) - max(8px,env(safe-area-inset-right))),calc((100dvh - max(8px,env(safe-area-inset-top)) - max(8px,env(safe-area-inset-bottom))) * 16 / 9))}
  .lightbox__close{top:max(8px,env(safe-area-inset-top));right:max(8px,env(safe-area-inset-right));z-index:1;background:rgba(0,0,0,.75)}
}

/* ---------- chips ---------- */
.chips{display:flex;flex-wrap:wrap;gap:8px 18px;padding:0;margin:0;list-style:none}
.chips li{font-size:13px;color:var(--mute);display:flex;align-items:center;gap:7px}
.chips li::before{content:"";width:5px;height:5px;border-radius:50%;background:var(--amber);flex:none}

/* ---------- section washes — one accent each, fading to black ---------- */
.band-warm{background:linear-gradient(180deg,rgba(255,150,20,.07),transparent 60%)}
.band-cool{background:linear-gradient(180deg,rgba(76,197,255,.07),transparent 60%)}
.band-violet{background:linear-gradient(180deg,rgba(176,140,255,.08),transparent 60%)}

/* ---------- surfaces ---------- */
.card{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:clamp(20px,3vw,30px)}
.frame{border:1px solid var(--amber-dim);border-radius:8px;overflow:hidden;box-shadow:0 24px 60px rgba(0,0,0,.6)}
.privacy-proof{display:grid;grid-template-columns:minmax(240px,360px) minmax(0,1fr);gap:18px;align-items:start}
.privacy-proof__shot{margin:0;padding:0;overflow:hidden;width:min(100%,320px);justify-self:center}
.privacy-proof__shot img{width:320px;max-width:100%;height:auto}
.privacy-proof__shot figcaption{padding:14px 16px}
@media (max-width:760px){.privacy-proof{grid-template-columns:1fr}}
.rule{height:1px;background:var(--line);border:0;margin:0}

/* ---------- announcement bar ---------- */
.ann{background:var(--panel);border-bottom:1px solid var(--line);font-size:13px}
.ann .wrap{min-height:38px;display:flex;align-items:center;justify-content:center;gap:10px;flex-wrap:wrap;padding-block:8px;text-align:center}
.ann a{color:var(--amber);text-decoration:none;font-weight:600;white-space:nowrap}
.ann a:hover{text-decoration:underline}
.dot{width:7px;height:7px;border-radius:50%;background:var(--green);flex:none}
@media (prefers-reduced-motion: no-preference){
  .dot{animation:pulse 2s var(--ease) infinite}
  @keyframes pulse{0%,100%{opacity:1}50%{opacity:.35}}
}

/* ---------- nav ---------- */
.nav{position:sticky;top:0;z-index:50;padding-top:env(safe-area-inset-top);background:var(--ink);border-bottom:1px solid var(--line)}
.nav .wrap{display:flex;align-items:center;gap:16px;min-height:62px}
.nav__brand{display:flex;align-items:center;gap:10px;text-decoration:none;font-weight:700;letter-spacing:-.02em;font-size:19px;margin-right:auto}
.nav__brand img{width:26px;height:26px;border-radius:6px}
.nav__links{display:flex;align-items:center;gap:26px;list-style:none;margin:0;padding:0}
.nav__links a{text-decoration:none;font-size:15px;color:var(--body);opacity:.82}
.nav__links a:hover,.nav__links a[aria-current="page"]{opacity:1;color:var(--amber)}
/* The nav-link selectors above are more specific than the generic primary-button rule. Keep the
   launch control opaque and explicitly dark in every state so Safari never paints gold-on-gold. */
.nav__links .btn--primary,
.nav__links .btn--primary:visited,
.nav__links .btn--primary:hover,
.nav__links .btn--primary:active,
.nav__links .btn--primary:focus-visible{color:var(--on-gold);-webkit-text-fill-color:var(--on-gold);opacity:1}
.nav .btn{min-height:42px;padding:9px 18px;font-size:14px}
.nav__toggle{display:none}
@media (max-width:900px){
  .nav__links,.nav .btn--nav{display:none}
  .nav__toggle{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;background:transparent;border:1px solid var(--line);border-radius:9px}
  .nav[data-open="true"] .nav__links{
    display:flex;position:absolute;left:0;right:0;top:100%;flex-direction:column;align-items:stretch;gap:0;
    background:var(--panel);border-bottom:1px solid var(--line);
    padding:8px max(var(--pad),env(safe-area-inset-right)) 18px max(var(--pad),env(safe-area-inset-left));
  }
  .nav[data-open="true"] .nav__links a{display:block;width:100%;padding:14px 0;font-size:17px;border-bottom:1px solid var(--line)}
  .nav[data-open="true"] .btn--nav{display:inline-flex;margin-top:16px;width:100%}
}

/* ---------- hero ---------- */
/* The aurora: sky top-left, warm amber top-right — the two brand accents meeting over black.
   Painted on a pseudo-element so the markup stays clean and the content stacks above it. */
.hero{position:relative;overflow:hidden;border-bottom:1px solid var(--line);padding-top:clamp(44px,6vw,80px);padding-bottom:clamp(44px,6vw,80px)}
.hero::before{content:"";position:absolute;inset:0;pointer-events:none;background:
  radial-gradient(70% 48% at 12% 0%, rgba(76,197,255,.20) 0%, rgba(76,197,255,.05) 44%, transparent 72%),
  radial-gradient(78% 54% at 88% 6%, rgba(255,150,20,.26) 0%, rgba(255,120,10,.07) 42%, transparent 70%)}
.hero .wrap{position:relative}
.h1-hi{color:var(--amber)}
@supports (-webkit-background-clip:text) or (background-clip:text){
  .h1-hi{background:linear-gradient(92deg,var(--amber-hi),var(--amber));-webkit-background-clip:text;background-clip:text;color:transparent}
}
.hero__grid{display:grid;grid-template-columns:1.03fr .97fr;gap:clamp(28px,4vw,56px);align-items:center}
.hero__cta{display:flex;flex-wrap:wrap;gap:12px}
@media (max-width:980px){.hero__grid{grid-template-columns:1fr}}

/* ---------- the live panel (hero proof, HTML not video) ---------- */
.panel{background:var(--panel);border:1px solid var(--line);border-radius:16px;overflow:hidden;box-shadow:0 30px 80px rgba(0,0,0,.65)}
.panel__bar{display:flex;align-items:center;gap:8px;padding:11px 14px;border-bottom:1px solid var(--line);background:var(--panel-hi)}
/* :not(.t) matters — the title is also a <span>, and without the exclusion it inherits the
   10px traffic-light size and wraps one character per line behind the heading. */
.panel__bar span:not(.t){width:10px;height:10px;border-radius:50%;background:rgba(255,255,255,.16);flex:none}
.panel__bar span:nth-child(1){background:#FF5F57}
.panel__bar span:nth-child(2){background:#FEBC2E}
.panel__bar span:nth-child(3){background:#28C840}
.panel__bar .t{margin-left:6px;font-size:12px;color:var(--mute);font-family:var(--mono);white-space:nowrap}
.panel__body{padding:18px}
/* Spoken, never typed: no caret, no typewriter. A small waveform marks the phrase as VOICE —
   it pulses while "listening", then the sentence lands whole, like a caption of speech. */
.panel__said{font-size:19px;line-height:1.35;letter-spacing:-.01em;min-height:2.7em;display:flex;gap:10px;align-items:baseline}
.voice{display:inline-flex;gap:3px;align-items:center;height:18px;flex:none;transform:translateY(2px)}
.voice i{width:3px;height:7px;border-radius:2px;background:var(--amber)}
.voice i:nth-child(2){height:13px}
.voice i:nth-child(3){height:17px}
.voice i:nth-child(4){height:11px}
.voice i:nth-child(5){height:6px}
@media (prefers-reduced-motion: no-preference){
  .is-listening .voice i{animation:vox .8s ease-in-out infinite}
  .is-listening .voice i:nth-child(2){animation-delay:.12s}
  .is-listening .voice i:nth-child(3){animation-delay:.24s}
  .is-listening .voice i:nth-child(4){animation-delay:.36s}
  .is-listening .voice i:nth-child(5){animation-delay:.48s}
  @keyframes vox{0%,100%{transform:scaleY(.4)}50%{transform:scaleY(1.5)}}
  .said-txt{transition:opacity .3s var(--ease)}
}
.routes{list-style:none;margin:16px 0 0;padding:0;display:grid;gap:7px}
.routes li{display:flex;align-items:center;gap:9px;font-family:var(--mono);font-size:12.5px;color:var(--mute)}
.routes li::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--amber-dim);flex:none}
.routes li[data-done="true"]::before{background:var(--green)}
.artifact{margin-top:16px;background:var(--ink);border:1px solid var(--line);border-radius:11px;padding:15px}
.artifact h4{font-size:14px;margin-bottom:9px}
.artifact ul{margin:0;padding-left:17px;font-size:13.5px;color:var(--body);display:grid;gap:5px}
.approve{margin-top:15px;display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.approve .btn{min-height:44px;padding:11px 22px;font-size:15px}
.approve__path{font-family:var(--mono);font-size:12px;color:var(--mute)}
.is-approved .btn--primary{background:var(--green);border-color:var(--green);color:#04170D}
@media (prefers-reduced-motion: no-preference){
  .panel:not(.is-approved) .approve .btn--primary{animation:breathe 2.4s var(--ease) infinite}
  @keyframes breathe{0%,100%{box-shadow:0 0 0 0 rgba(255,182,39,.42)}50%{box-shadow:0 0 0 11px rgba(255,182,39,0)}}
}

/* ---------- generic grids ---------- */
.grid{display:grid;gap:18px}
.grid--2{grid-template-columns:repeat(2,1fr)}
.grid--3{grid-template-columns:repeat(3,1fr)}
.grid--4{grid-template-columns:repeat(4,1fr)}
.grid--5{grid-template-columns:repeat(5,1fr)}
@media (max-width:1040px){.grid--5,.grid--4{grid-template-columns:repeat(2,1fr)}}
@media (max-width:820px){.grid--3{grid-template-columns:1fr}}
@media (max-width:640px){.grid--2,.grid--4,.grid--5{grid-template-columns:1fr}}

/* ---------- definition rows ---------- */
.rows{display:grid;margin-top:26px;border:1px solid var(--line);border-radius:14px;overflow:hidden;background:rgba(10,9,7,.72)}
.row{display:grid;grid-template-columns:minmax(150px,.32fr) minmax(0,1fr);gap:22px;padding:20px 22px;border-bottom:1px solid var(--line)}
.row:last-child{border-bottom:0}
.row .k{font-size:11px;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:var(--amber);padding-top:3px}
.row .v{min-width:0;font-size:15.5px;line-height:1.6;color:var(--body);overflow-wrap:anywhere}

/* ---------- numbered process ---------- */
.step-list{margin-top:26px!important;padding-left:0!important;list-style:none;display:grid;gap:0;max-width:none}
.step-row{display:grid;grid-template-columns:64px minmax(0,1fr);gap:20px;padding:22px 0;border-bottom:1px solid var(--line)}

/* ---------- numbers band ---------- */
.num{font-size:clamp(34px,4.4vw,54px);font-weight:700;letter-spacing:-.03em;line-height:1;color:var(--amber)}
.num--green{color:var(--green)}

/* ---------- artifact cards (what lands on your desk) ---------- */
.desk{display:grid;gap:18px;grid-template-columns:repeat(2,1fr)}
@media (max-width:820px){.desk{grid-template-columns:1fr}}
.desk__said{font-size:19px;line-height:1.35;letter-spacing:-.01em;margin-bottom:15px}
.doc{background:var(--ink);border:1px solid var(--line);border-radius:11px;padding:16px}
.doc h4{font-size:14px;margin-bottom:4px}
.doc .k{font-size:11px;letter-spacing:.13em;text-transform:uppercase;color:var(--mute);margin:12px 0 5px}
.doc ul{margin:0;padding-left:17px;font-size:14px;display:grid;gap:5px}
.doc__path{margin-top:13px;padding-top:11px;border-top:1px solid var(--line)}
.flag{color:var(--amber);font-size:13px;display:block;margin-top:7px}

/* ---------- two-column argument ---------- */
.vs{display:grid;grid-template-columns:1fr 1fr;gap:clamp(20px,3vw,40px)}
@media (max-width:820px){.vs{grid-template-columns:1fr}}
.vs__before{color:var(--mute)}
.vs__before li{text-decoration:line-through;text-decoration-color:rgba(255,255,255,.28)}
.vs ol{margin:0;padding-left:20px;display:grid;gap:9px;font-size:16px}

/* ---------- tabs (jobs) ---------- */
.tabs__list{display:flex;flex-wrap:wrap;gap:8px;padding:0;margin:0 0 22px;list-style:none}
.tabs__btn{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:11px 16px;text-align:left;cursor:pointer;min-height:48px}
.tabs__btn[aria-selected="true"]{border-color:var(--amber);background:var(--panel-hi)}
.tabs__btn b{display:block;font-size:14.5px;font-weight:600}
.tabs__btn span{display:block;font-size:12px;color:var(--mute);margin-top:2px}
.tabs__panel[hidden]{display:none}

/* ---------- FAQ ---------- */
.faq details{border-bottom:1px solid var(--line);padding:18px 0}
.faq summary{cursor:pointer;font-size:18px;font-weight:600;letter-spacing:-.01em;list-style:none;display:flex;gap:14px;align-items:flex-start}
.faq summary::-webkit-details-marker{display:none}
.faq summary::before{content:"+";color:var(--amber);font-weight:700;flex:none;width:1em}
.faq details[open] summary::before{content:"–"}
.faq details>*+*{margin-top:12px}
.faq p{color:var(--body);max-width:70ch;padding-left:calc(1em + 14px)}

/* ---------- price ---------- */
.price__card{max-width:520px;margin-inline:auto;text-align:center;border-color:var(--amber-dim)}
.price__num{font-size:clamp(44px,6vw,68px);font-weight:700;letter-spacing:-.03em;line-height:1}
.price__card .btn{width:100%;margin-top:20px}
.price__card .chips{justify-content:center;margin-top:16px}
.offer-card{display:grid;grid-template-columns:minmax(118px,132px) minmax(0,1fr) minmax(190px,auto);gap:14px 26px;align-items:center;border-color:var(--amber)}
.offer-card__price,.offer-card__body,.offer-card__action{min-width:0}
.offer-card__action{display:flex;flex-direction:column;gap:8px;align-items:flex-end;text-align:right}
.math{display:grid;gap:10px;font-size:16px}
.math__row{display:flex;justify-content:space-between;gap:16px;padding-bottom:10px;border-bottom:1px solid var(--line)}
.math__row:last-child{border:0;font-weight:700;color:var(--amber)}

/* ---------- founder ---------- */
.founder{display:grid;grid-template-columns:132px 1fr;gap:26px;align-items:start}
.founder img{width:132px;height:132px;border-radius:14px;object-fit:cover;border:1px solid var(--amber-dim)}
@media (max-width:640px){.founder{grid-template-columns:1fr}.founder img{width:104px;height:104px}}

/* ---------- footer ---------- */
.foot{border-top:1px solid var(--line);padding-top:44px;padding-bottom:max(44px,env(safe-area-inset-bottom));font-size:14px;color:var(--mute)}
.foot__grid{display:grid;grid-template-columns:1.4fr repeat(3,1fr);gap:28px}
@media (max-width:820px){.foot__grid{grid-template-columns:1fr 1fr}}
@media (max-width:520px){.foot__grid{grid-template-columns:1fr}}
.foot h4{font-size:12px;letter-spacing:.13em;text-transform:uppercase;color:var(--body);margin-bottom:12px}
.foot ul{list-style:none;margin:0;padding:0;display:grid;gap:9px}
.foot a{text-decoration:none;color:var(--mute)}
.foot a:hover{color:var(--amber)}
.foot__legal{margin-top:34px;padding-top:22px;border-top:1px solid var(--line);font-size:13px;line-height:1.6}

/* ---------- forms ---------- */
.field{display:grid;gap:7px;margin-bottom:16px;text-align:left}
.field label{font-size:14px;font-weight:600}
.field input,.field select,.field textarea{
  width:100%;min-height:50px;padding:13px 15px;border-radius:10px;
  background:var(--ink);border:1px solid rgba(255,255,255,.20);color:var(--body);
}
.field input:focus{border-color:var(--amber)}
.field .hint{font-size:13px;color:var(--mute)}
.field .err{font-size:13px;color:#FF8F7A}
.checkout-consent{
  display:grid;grid-template-columns:34px minmax(0,1fr);gap:15px;align-items:start;
  margin-top:18px;padding:18px;border:1px solid rgba(255,182,39,.42);border-radius:13px;
  background:linear-gradient(145deg,rgba(255,182,39,.09),rgba(255,255,255,.025));
  cursor:pointer;transition:border-color .18s var(--ease),background-color .18s var(--ease),box-shadow .18s var(--ease)
}
.checkout-consent:hover,.checkout-consent:focus-within{border-color:var(--amber);box-shadow:0 0 0 3px rgba(255,182,39,.1)}
.checkout-consent:has(input:checked){border-color:var(--green);background:rgba(95,208,138,.08);box-shadow:inset 0 1px 0 rgba(255,255,255,.08)}
.checkout-consent input{
  width:30px;height:30px;min-height:30px;margin:1px 0 0;accent-color:var(--amber);cursor:pointer
}
.checkout-consent__copy{display:grid;gap:7px;min-width:0;font-size:15px;line-height:1.58;color:var(--mute)}
.checkout-consent__title{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px;font-size:17px;line-height:1.3;color:var(--body)}
.checkout-consent__required{align-self:center;padding:3px 8px;border-radius:999px;background:rgba(255,182,39,.14);color:var(--amber);font-size:10px;letter-spacing:.1em;text-transform:uppercase}
.checkout-consent a{position:relative;color:var(--amber)}
.platform-buy{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.platform-buy--centered{justify-content:center}
.platform-buy__note{margin-top:10px;color:var(--mute);font-size:12px;line-height:1.45}
.platform-choice{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.platform-choice__card{display:flex;align-items:flex-start;gap:12px;padding:16px;border:1px solid var(--line);border-radius:14px;background:rgba(255,255,255,.025);cursor:pointer}
.platform-choice__card:hover,.platform-choice__card:focus-within{border-color:var(--amber);box-shadow:0 0 0 3px rgba(255,182,39,.1)}
.platform-choice__card:has(input:checked){border-color:var(--green);background:rgba(95,208,138,.08)}
.platform-choice__card input{width:21px;height:21px;min-height:21px;margin:2px 0 0;flex:none;accent-color:var(--green)}
.platform-choice__card span{display:grid;gap:5px}.platform-choice__card strong{color:var(--body);font-size:17px}.platform-choice__card small{color:var(--mute);line-height:1.45}
@media(max-width:620px){.platform-buy{display:grid}.platform-buy .btn{width:100%}.platform-choice{grid-template-columns:1fr}}
.form__note{font-size:13px;color:var(--mute);line-height:1.55}
.status{margin-top:14px;padding:13px 15px;border-radius:10px;font-size:14.5px;display:none}
.status[data-show="true"]{display:block}
.status[data-kind="ok"]{background:rgba(95,208,138,.11);border:1px solid rgba(95,208,138,.4);color:var(--green)}
.status[data-kind="err"]{background:rgba(255,143,122,.10);border:1px solid rgba(255,143,122,.4);color:#FF8F7A}

/* ---------- prose (legal pages) ---------- */
.prose{max-width:72ch}
.prose h2{font-size:clamp(24px,2.6vw,32px);margin-top:44px}
.prose h3{margin-top:30px}
.prose p,.prose li{font-size:16.5px;line-height:1.65}
.prose ul,.prose ol{padding-left:22px;display:grid;gap:9px;margin:0}
.prose>*+*{margin-top:16px}
.prose table{width:100%;border-collapse:collapse;font-size:15px}
.prose th,.prose td{text-align:left;padding:11px 12px;border:1px solid var(--line);vertical-align:top}
.prose th{background:var(--panel-hi);font-size:13px;letter-spacing:.04em;text-transform:uppercase}
.tablewrap{max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
.tablewrap table{min-width:600px}

/* ---------- static depth shell for every non-home route ----------
   Subpages share the homepage's light language without inheriting pointer motion. The fixed
   gradients and lit slab edges add depth at paint time, so they remain calm on legal pages and do
   not create compositor work while someone is reading. */
.site-depth main{position:relative;isolation:isolate;background:
  radial-gradient(900px 520px at 88% 0%,rgba(76,197,255,.075),transparent 68%),
  radial-gradient(760px 520px at 8% 34%,rgba(255,182,39,.065),transparent 70%),
  radial-gradient(860px 620px at 76% 78%,rgba(176,140,255,.055),transparent 72%),
  linear-gradient(180deg,#070605 0%,#0A0806 48%,#070605 100%)}
.site-depth main::before{content:"";position:absolute;z-index:-1;inset:0;pointer-events:none;opacity:.22;background:
  linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px) 0 0/100% 72px,
  linear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px) 0 0/72px 100%;
  -webkit-mask-image:linear-gradient(180deg,transparent,#000 12%,#000 78%,transparent);mask-image:linear-gradient(180deg,transparent,#000 12%,#000 78%,transparent)}
.site-depth main>section{position:relative;z-index:1}
.site-depth .nav{box-shadow:0 1px 0 rgba(255,255,255,.05),0 18px 34px -24px rgba(0,0,0,.96)}
.site-depth .card{border-color:rgba(255,255,255,.1);border-top-color:rgba(255,236,201,.25);border-bottom-color:rgba(0,0,0,.84);background:linear-gradient(168deg,#27231D 0%,#1A1712 48%,#100E0B 100%);box-shadow:inset 0 1px 0 rgba(255,244,224,.24),inset 0 -1px 0 rgba(0,0,0,.76),0 1px 1px rgba(0,0,0,.88),0 7px 14px -7px rgba(0,0,0,.72),0 28px 54px -30px rgba(0,0,0,.94)}
.site-depth .rows{border-color:rgba(255,255,255,.1);background:linear-gradient(168deg,rgba(36,31,24,.92),rgba(14,12,9,.96));box-shadow:inset 0 1px 0 rgba(255,244,224,.16),0 18px 42px -26px rgba(0,0,0,.9)}
.site-depth .btn--primary{box-shadow:inset 0 1px 0 rgba(255,255,255,.46),inset 0 -3px 0 rgba(126,79,0,.4),0 12px 28px -12px rgba(255,182,39,.4)}
.legal-depth .prose{max-width:76ch}
.legal-depth .card{box-shadow:inset 0 1px 0 rgba(255,244,224,.16),0 14px 32px -26px rgba(0,0,0,.88)}
@media (max-width:560px){
  .site-depth main::before{display:none}
  .site-depth .card{box-shadow:inset 0 1px 0 rgba(255,244,224,.18),0 12px 28px -22px rgba(0,0,0,.88)}
  .legal-depth .prose h2{margin-top:36px}
}

/* print */
@media print{
  body{background:#fff;color:#000}
  .nav,.ann,.foot,.btn{display:none}
}


/* ---- gem-glass hero backdrop (2026-08-12) ------------------------------------------------
   The five agents as leaded panes of light behind the hero — Ace's stained glass. Decorative
   only (aria-hidden), sits behind content, and holds still for prefers-reduced-motion. */
.hero{position:relative;overflow:hidden}
.gemglass{position:absolute;inset:0;pointer-events:none;z-index:0;opacity:.5}
.hero .wrap{position:relative;z-index:1}
.gg{position:absolute;width:44vmax;height:44vmax;border-radius:50%;filter:blur(70px);mix-blend-mode:screen;will-change:transform}
.gg-gold{background:radial-gradient(circle at 35% 35%,rgba(255,182,39,.5),rgba(255,182,39,0) 62%);top:-16vmax;right:-8vmax;animation:gg-drift 26s ease-in-out infinite}
.gg-red{background:radial-gradient(circle at 60% 40%,rgba(229,72,77,.32),rgba(229,72,77,0) 60%);bottom:-22vmax;left:-12vmax;animation:gg-drift 34s ease-in-out -8s infinite reverse}
.gg-blue{background:radial-gradient(circle at 50% 50%,rgba(59,130,246,.26),rgba(59,130,246,0) 60%);top:-10vmax;left:22vw;animation:gg-drift 40s ease-in-out -17s infinite}
.gg-purple{background:radial-gradient(circle at 45% 55%,rgba(168,85,247,.24),rgba(168,85,247,0) 60%);bottom:-18vmax;right:24vw;animation:gg-drift 31s ease-in-out -4s infinite reverse}
.gg-silver{background:radial-gradient(circle at 50% 45%,rgba(198,204,214,.20),rgba(198,204,214,0) 58%);top:30%;left:-14vmax;animation:gg-drift 38s ease-in-out -22s infinite}
.gg-lead{position:absolute;inset:0;background:
  linear-gradient(115deg,transparent 31.8%,rgba(255,217,138,.05) 32%,transparent 32.3%),
  linear-gradient(63deg,transparent 58.8%,rgba(255,217,138,.045) 59%,transparent 59.3%),
  linear-gradient(150deg,transparent 71.8%,rgba(255,217,138,.04) 72%,transparent 72.4%)}
@keyframes gg-drift{0%,100%{transform:translate3d(0,0,0) scale(1)}50%{transform:translate3d(3vmax,-2vmax,0) scale(1.07)}}
@media (prefers-reduced-motion: reduce){.gg{animation:none}}

/* ---- shared static subpage depth -------------------------------------------------------------
   Subpages use the homepage's lit-slab language without any cursor observer, moving aura, tilt,
   or parallax. The hierarchy is entirely paint: ambient section light, a bright top edge, a dark
   lower edge, then fixed contact and cast shadows. */
.site-depth main{position:relative;isolation:isolate;background:
  radial-gradient(75% 420px at 86% -80px,rgba(255,156,36,.13),rgba(255,156,36,0) 72%),
  radial-gradient(62% 380px at 8% 2%,rgba(76,197,255,.10),rgba(76,197,255,0) 72%),
  var(--ink)}
.site-depth main>section:first-child{position:relative;overflow:hidden;border-bottom:1px solid rgba(255,255,255,.08);background:
  linear-gradient(180deg,rgba(255,255,255,.018),rgba(255,255,255,0)),
  radial-gradient(70% 130% at 86% -18%,rgba(255,182,39,.12),rgba(255,182,39,0) 70%)}
.site-depth main>section:first-child::after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;pointer-events:none;background:linear-gradient(90deg,transparent,rgba(255,182,39,.38),rgba(76,197,255,.25),transparent)}
.site-depth main>section:first-child>.wrap{position:relative;z-index:1}
.site-depth .card{border-top-color:rgba(255,244,224,.25);border-bottom-color:rgba(0,0,0,.8);background:linear-gradient(168deg,#27231C 0%,#1B1813 42%,#100E0B 100%);box-shadow:inset 0 1px 0 rgba(255,244,224,.22),inset 0 -5px 12px -9px rgba(0,0,0,.92),0 1px 1px rgba(0,0,0,.85),0 14px 26px -9px rgba(0,0,0,.58),0 38px 60px -34px rgba(0,0,0,.88)}
.site-depth .band-cool .card{border-top-color:rgba(124,211,255,.31)}
.site-depth .rows{box-shadow:inset 0 1px 0 rgba(255,244,224,.12),0 16px 34px -22px rgba(0,0,0,.86)}
.site-depth .row:nth-child(even){background:rgba(255,255,255,.018)}
.site-depth .faq{display:grid;gap:12px;margin-top:24px}
.site-depth .faq details{padding:18px 20px 21px;border:1px solid rgba(255,255,255,.09);border-top-color:rgba(255,244,224,.19);border-radius:13px;background:linear-gradient(168deg,#211E18,#12100C);box-shadow:inset 0 1px 0 rgba(255,244,224,.15),0 12px 24px -16px rgba(0,0,0,.82)}
.site-depth .faq details[open]{border-top-color:rgba(255,182,39,.54)}
.site-depth .nav{box-shadow:0 1px 0 rgba(255,255,255,.04),0 14px 28px -18px rgba(0,0,0,.96)}

/* Legal pages keep the shared shell at the edges, then quiet the reading column so dozens of
   numbered clauses read as one document instead of a pile of marketing hardware. */
.legal-depth main{background:radial-gradient(80% 340px at 50% -100px,rgba(255,182,39,.08),transparent 74%),var(--ink)}
.legal-depth .prose{max-width:68ch}
.legal-depth .card{background:linear-gradient(180deg,rgba(37,33,26,.82),rgba(18,16,12,.88));box-shadow:inset 0 1px 0 rgba(255,244,224,.13),0 14px 28px -22px rgba(0,0,0,.78)}
.legal-depth .prose h2{padding-top:4px;border-top:1px solid rgba(255,255,255,.07)}

@media (max-width:700px){
  .site-depth main>section:first-child{background:radial-gradient(125% 100% at 82% 0%,rgba(255,182,39,.10),transparent 68%)}
  .site-depth .card{box-shadow:inset 0 1px 0 rgba(255,244,224,.18),inset 0 -4px 10px -8px rgba(0,0,0,.9),0 12px 24px -14px rgba(0,0,0,.76)}
  .offer-card{grid-template-columns:1fr;gap:18px}
  .offer-card__action{align-items:stretch;text-align:left}
  .offer-card__action .btn{width:100%}
}
@media (max-width:560px){
  .row{grid-template-columns:1fr;gap:7px;padding:17px 18px}
  .row .k{padding-top:0}
  .legal-depth .prose h2{margin-top:36px;padding-top:18px}
  .legal-depth .prose p,.legal-depth .prose li{font-size:15.5px;line-height:1.68}
  .tablewrap{margin-inline:calc(var(--pad) * -.35);padding-bottom:5px}
  .step-row{grid-template-columns:44px minmax(0,1fr);gap:12px;padding:19px 0}
}
@media (max-width:520px){
  .hero__cta{flex-direction:column;align-items:stretch}
  .hero__cta>.btn{width:100%}
  .site-depth .card form .btn,.site-depth form>.btn{width:100%}
  .math__row{display:grid;gap:4px}
  .foot__grid{gap:30px}
}

/* ---- homepage command-deck depth ------------------------------------------------------------
   WHY THIS IS BUILT THE WAY IT IS. A black drop shadow cannot be seen on a black page: measured
   on the previous build, a card interior read rgb(16,15,12) against ground rgb(7,7,6) — a 9/255
   separation — and the "cast shadow" below it got LIGHTER with distance (5 -> 8), i.e. there was
   no shadow at all, only the section wash. Depth on near-black therefore needs three things that
   a shadow value alone cannot supply:
     1. a LIT FLOOR behind each raised group, so a dark shadow has something bright to fall on;
     2. a SLAB that is genuinely lighter than that floor at its top edge and darker at its base,
        so the surface reads as lit from above rather than as an outlined rectangle;
     3. a CONTACT shadow tight under the object plus a wide soft cast shadow, so the eye gets the
        two cues it actually uses to judge height.
   The complete page is painted before JS. Fine-pointer desktops add a restrained local tilt and
   light response; the removed Ace bubble never returns and nothing trails the cursor. */
.home-depth .hero__grid{perspective:1500px;perspective-origin:50% 42%}
.home-depth .hero__copy{position:relative;padding-block:clamp(8px,2vw,22px);transform:none;transition:transform .28s var(--ease)}
/* the lit edge beside the headline: a light source, not a divider rule */
.home-depth .hero__copy::before{content:"";position:absolute;left:-20px;top:6%;bottom:6%;width:4px;border-radius:4px;background:linear-gradient(180deg,var(--sky),var(--amber) 52%,var(--violet));box-shadow:0 0 10px rgba(255,182,39,.55),0 0 42px rgba(255,182,39,.34),0 0 90px rgba(176,140,255,.22);pointer-events:none}
.home-depth .gemglass{transform:none;transition:transform .4s var(--ease)}
/* Static midground haze gives the hero another focal plane without tracking the cursor. */
.gg-motes{position:absolute;inset:-10%;pointer-events:none;transform:none;transition:transform .4s var(--ease);background:
  radial-gradient(closest-side,rgba(255,214,158,.10),rgba(0,0,0,0)) 14% 30%/280px 280px no-repeat,
  radial-gradient(closest-side,rgba(120,190,255,.085),rgba(0,0,0,0)) 76% 18%/220px 220px no-repeat,
  radial-gradient(closest-side,rgba(190,150,255,.075),rgba(0,0,0,0)) 58% 78%/320px 320px no-repeat,
  radial-gradient(closest-side,rgba(255,180,90,.06),rgba(0,0,0,0)) 30% 86%/240px 240px no-repeat}
.home-depth .gg-motes::before{content:"";position:absolute;inset:7%;pointer-events:none;opacity:.3;background:
  radial-gradient(circle,rgba(255,226,174,.58) 0 1px,rgba(0,0,0,0) 1.7px) 0 0/113px 113px,
  radial-gradient(circle,rgba(115,202,255,.42) 0 1px,rgba(0,0,0,0) 1.7px) 43px 29px/157px 157px}
.home-depth [data-depth-scene][data-depth-active="true"] .hero__copy{transform:translate3d(var(--copy-x,0),var(--copy-y,0),0)}
.home-depth [data-depth-scene][data-depth-active="true"] .gemglass{transform:translate3d(var(--aurora-x,0),var(--aurora-y,0),0) scale(1.04)}
.home-depth [data-depth-scene][data-depth-active="true"] .gg-motes{transform:translate3d(var(--motes-x,0),var(--motes-y,0),0)}
/* The live proof film is the primary artifact: centered, wide and visually separate from the
   smaller menu-bar receipt below it. */
.home-depth .home-film-stage{position:relative;display:grid;grid-template-columns:minmax(0,1fr);justify-items:center;gap:clamp(24px,3.2vw,38px);width:100%;margin-inline:auto}
.home-depth .proof-card--film{width:min(100%,900px);margin:0 auto!important}
.home-depth .proof-card--menubar{width:min(100%,540px);margin:0 auto!important}
.home-depth .proof-card--film .film-shell{isolation:isolate;display:block;width:100%;max-width:none;margin:0 auto;border:0;border-bottom:1px solid rgba(232,184,69,.34);border-radius:13px 13px 0 0;background:#080604;box-shadow:inset 0 1px 0 rgba(255,238,198,.2),0 2px 4px rgba(0,0,0,.76),0 18px 34px -10px rgba(0,0,0,.82)}
.home-depth .proof-card--film .film-shell::before{content:"";position:absolute;z-index:2;inset:-24%;pointer-events:none;border-radius:inherit;background:linear-gradient(108deg,rgba(0,0,0,0) 42%,rgba(255,225,164,.72) 49%,rgba(232,184,69,.34) 52%,rgba(0,0,0,0) 59%);opacity:0;transform:translate3d(-68%,0,0)}
.home-depth .proof-card--film .film-shell::after{content:"";position:absolute;z-index:2;inset:0;pointer-events:none;border-radius:inherit;box-shadow:inset 0 1px rgba(255,228,172,.36),inset 1px 0 rgba(232,184,69,.28),inset -1px 0 rgba(161,112,25,.32)}
.home-depth .proof-card--film .minifilm__picture{display:block;width:100%;aspect-ratio:16/9;overflow:hidden}
.home-depth .proof-card--film .minifilm__picture img{width:100%;height:100%;object-fit:cover}
.home-depth .proof-card--film .minifilm__play,.home-depth .proof-card--film .minifilm__cap{z-index:3}
.home-depth .proof-card--film .minifilm__play::before{content:"";position:absolute;inset:-9px;border:1px solid rgba(255,217,138,.56);border-radius:inherit;opacity:0;pointer-events:none;transform:scale(.82)}
.home-depth .proof-card--menubar>img{width:100%;height:auto}

/* raised card groups. Each group gets its own lit floor so the cast shadows are visible. */
.home-depth .depth-grid--steps,.home-depth .depth-grid--proof,.home-depth .depth-grid--trust{position:relative;perspective:1250px;perspective-origin:center}
.home-depth .depth-grid--steps::before,.home-depth .depth-grid--proof::before,.home-depth .depth-grid--trust::before{
  /* Horizontal insets stay at 0. These sections are NOT inside an overflow-clipping ancestor, so a
     negative left/right bleed here widens the document: at 1263px it produced exactly 7px of
     horizontal scroll (scrollWidth 1270 vs clientWidth 1263). The pool is widened through the
     gradient instead, which cannot affect layout. Vertical bleed is safe and is kept. */
  content:"";position:absolute;z-index:0;left:0;right:0;top:-16%;bottom:-34%;pointer-events:none;background:
    radial-gradient(76% 62% at 50% 32%,rgba(255,214,158,.125),rgba(255,190,120,.055) 44%,rgba(0,0,0,0) 76%),
    radial-gradient(100% 46% at 50% 100%,rgba(255,176,88,.08),rgba(0,0,0,0) 74%)}
.home-depth .depth-grid--proof::before{background:
    radial-gradient(76% 62% at 50% 32%,rgba(232,184,69,.13),rgba(176,119,26,.055) 44%,rgba(0,0,0,0) 76%),
    radial-gradient(100% 46% at 50% 100%,rgba(132,84,20,.08),rgba(0,0,0,0) 74%)}
.home-depth .depth-card{--tilt-x:0deg;--tilt-y:0deg;--glow-x:50%;--glow-y:20%;--shadow-x:0px;position:relative;z-index:1;isolation:isolate;overflow:hidden;
  border:1px solid rgba(255,255,255,.09);border-bottom-color:rgba(0,0,0,.8);
  background:linear-gradient(168deg,#2E2921 0%,#241F19 30%,#171410 70%,#100E0B 100%);
  box-shadow:
    inset 0 1px 0 rgba(255,244,224,.30),
    inset 0 -1px 0 rgba(0,0,0,.7),
    inset 0 -6px 14px -9px rgba(0,0,0,.92),
    0 5px 0 -1px #1D1913,
    0 10px 0 -2px #12100C,
    0 11px 1px -2px rgba(0,0,0,.94),
    0 3px 6px rgba(0,0,0,.74),
    0 16px 22px -5px rgba(0,0,0,.7),
    0 38px 52px -16px rgba(0,0,0,.82),
    0 70px 100px -42px rgba(0,0,0,.94),
    var(--shadow-x) 40px 80px -42px rgba(255,150,20,.32);
  transform:none;transform-style:preserve-3d;-webkit-backface-visibility:hidden;backface-visibility:hidden;transition:transform .22s var(--ease),box-shadow .22s var(--ease)}
.home-depth .depth-card::after{content:"";position:absolute;z-index:0;inset:0;border-radius:inherit;pointer-events:none;background:
  radial-gradient(260px 260px at var(--glow-x) var(--glow-y),rgba(255,240,210,.22),rgba(255,200,120,.07) 40%,rgba(0,0,0,0) 68%),
  radial-gradient(70px 70px at var(--glow-x) var(--glow-y),rgba(255,255,255,.13),rgba(0,0,0,0) 72%);
  opacity:var(--depth-glow,0);transition:opacity .18s var(--ease)}
.home-depth .depth-card[data-depth-active="true"]{transform:rotateX(var(--tilt-x)) rotateY(var(--tilt-y)) translate3d(0,-2px,0);will-change:transform}
.home-depth .depth-card>*{position:relative;z-index:1}
/* the staircase reads as deliberate layering only when each step also sits at its own height */
.home-depth .depth-grid--steps .depth-card{border-top-color:rgba(255,182,39,.62)}
.home-depth .depth-grid--steps .depth-card:nth-child(2){margin-top:22px}
.home-depth .depth-grid--steps .depth-card:nth-child(3){margin-top:44px}
.home-depth .depth-grid--proof .depth-card{border-top-color:rgba(232,184,69,.58)}
.home-depth .depth-grid--proof .depth-card:nth-child(2){margin-top:0;margin-bottom:0}
.home-depth .depth-grid--trust .depth-card{border-top-color:rgba(255,217,138,.46)}
.home-depth .depth-grid--trust .depth-card:nth-child(2){margin-top:26px}
.home-depth .depth-grid--trust .depth-card:nth-child(3){margin-top:52px}
@media (max-width:820px){
  .home-depth .depth-grid--trust .depth-card:nth-child(2),
  .home-depth .depth-grid--trust .depth-card:nth-child(3){margin-top:0}
}
.home-depth .proof-card img{border-bottom:1px solid rgba(232,184,69,.3)}
.home-depth .depth-card--offer{border-color:rgba(190,137,42,.5);border-top-color:rgba(255,217,138,.7);border-bottom-color:rgba(0,0,0,.86);
  background:linear-gradient(168deg,#392A17 0%,#2B2014 28%,#19130D 68%,#0D0A07 100%);
  box-shadow:
    inset 0 1px 0 rgba(255,231,186,.42),
    inset 0 -1px 0 rgba(0,0,0,.72),
    inset 0 -8px 18px -11px rgba(0,0,0,.92),
    0 1px 1px rgba(0,0,0,.9),
    0 5px 9px rgba(0,0,0,.78),
    0 16px 28px -5px rgba(0,0,0,.7),
    0 44px 66px -16px rgba(0,0,0,.84),
    0 90px 130px -50px rgba(0,0,0,.96),
    0 46px 96px -44px rgba(205,145,38,.42)}
.home-depth .faq{display:grid;gap:14px;margin-top:24px}
.home-depth .faq details{position:relative;padding:18px 20px 22px;border:1px solid rgba(255,255,255,.09);border-top-color:rgba(255,244,224,.24);border-bottom-color:rgba(0,0,0,.8);border-radius:14px;
  background:linear-gradient(168deg,#26221B 0%,#1B1813 40%,#100E0B 100%);
  box-shadow:inset 0 1px 0 rgba(255,244,224,.24),inset 0 -5px 12px -8px rgba(0,0,0,.9),0 1px 1px rgba(0,0,0,.85),0 3px 6px rgba(0,0,0,.6),0 16px 28px -8px rgba(0,0,0,.62),0 40px 64px -34px rgba(0,0,0,.9)}
.home-depth .faq details[open]{border-top-color:rgba(255,182,39,.66)}
/* the sticky header must look like the page slides UNDER it, not beside it */
.home-depth .nav{box-shadow:0 1px 0 rgba(255,255,255,.05),0 14px 26px -12px rgba(0,0,0,.9),0 30px 60px -40px rgba(0,0,0,.95)}
.home-depth .btn--primary{box-shadow:inset 0 1px 0 rgba(255,255,255,.5),inset 0 -3px 0 rgba(126,79,0,.42),0 1px 1px rgba(0,0,0,.6),0 6px 12px -2px rgba(0,0,0,.5),0 16px 30px -10px rgba(255,182,39,.42)}
@media (hover:hover){.home-depth .btn--primary:hover{box-shadow:inset 0 1px 0 rgba(255,255,255,.6),inset 0 -3px 0 rgba(126,79,0,.42),0 2px 3px rgba(0,0,0,.6),0 10px 20px -3px rgba(0,0,0,.55),0 24px 44px -12px rgba(255,182,39,.55)}}

@media (prefers-reduced-motion:no-preference) and (min-width:701px){
  .home-depth .home-film-stage [data-home-film-stage][data-film-visible="true"] .film-shell::before{animation:ace-film-edge-sweep 8.6s var(--ease) infinite}
  .home-depth .home-film-stage [data-home-film-stage][data-film-visible="true"] .minifilm__play::before{will-change:transform,opacity;animation:ace-film-play-pulse 3.4s ease-in-out infinite}
  .home-depth .gg-motes::before{animation:ace-motes-shimmer 11s ease-in-out infinite alternate}
  @keyframes ace-film-edge-sweep{0%,30%{opacity:0;transform:translate3d(-68%,0,0)}48%{opacity:.17}66%,100%{opacity:0;transform:translate3d(68%,0,0)}}
  @keyframes ace-film-play-pulse{0%,100%{opacity:0;transform:scale(.82)}42%{opacity:.72}70%{opacity:0;transform:scale(1.18)}}
  @keyframes ace-motes-shimmer{0%{opacity:.22}55%{opacity:.42}100%{opacity:.3}}
}

@media (max-width:700px){
  .home-depth .gemglass{display:none}
  .home-depth .hero__copy{padding-block:0;padding-left:10px;transform:none}
  .home-depth .hero__copy::before{left:-4px;width:3px;box-shadow:0 0 12px rgba(255,182,39,.4)}
  .home-depth .home-film-stage{gap:22px;margin-top:24px!important}
  .home-depth .proof-card--film{width:min(100%,390px)}
  .home-depth .proof-card--menubar{width:min(100%,360px)}
  .home-depth .proof-card--film .film-shell::before{display:none}
  .home-depth .proof-card--film .minifilm__picture{aspect-ratio:16/9}
  .home-depth .depth-grid--steps::before,.home-depth .depth-grid--proof::before,.home-depth .depth-grid--trust::before{display:none}
  .home-depth .depth-card{margin-top:0 !important;margin-bottom:0 !important;transform:none;box-shadow:inset 0 1px 0 rgba(255,244,224,.26),inset 0 -1px 0 rgba(0,0,0,.7),inset 0 -5px 12px -9px rgba(0,0,0,.9),0 1px 1px rgba(0,0,0,.85),0 3px 6px rgba(0,0,0,.7),0 14px 26px -6px rgba(0,0,0,.6),0 34px 54px -30px rgba(0,0,0,.85)}
  .home-depth .depth-card::after{display:none}
  .home-depth .faq details{box-shadow:inset 0 1px 0 rgba(255,244,224,.2),inset 0 -4px 10px -8px rgba(0,0,0,.9),0 1px 1px rgba(0,0,0,.8),0 12px 24px -8px rgba(0,0,0,.55)}
  .home-depth .nav{box-shadow:0 1px 0 rgba(255,255,255,.05),0 10px 20px -12px rgba(0,0,0,.9)}
  .lightbox{backdrop-filter:none}
}

@media (prefers-reduced-motion:reduce){
  .home-depth .hero__copy,.home-depth .depth-card,.home-depth .gemglass,.gg-motes{transform:none;transition:none}
  .home-depth .depth-card::after{display:none}
  .home-depth .home-film-stage .film-shell::before{display:none;animation:none}
  .home-depth .home-film-stage .minifilm__play,.home-depth .gg-motes::before{animation:none}
}

/* ---- founder-approved student-night hero --------------------------------------------------- */
.home-depth{
  --ink:#101211;--panel:#171918;--panel-hi:#202221;--body:#ECEEED;--mute:#ADB5B2;
  --amber:#E8B845;--amber-hi:#FFD97A;--amber-dim:#B7841F;--on-gold:#070A10;
  --sky:#3B82F6;--red:#E5484D;--silver:#B8C0CA;--silver-hi:#F4F7FA;
  --silver-deep:#4F5966;--obsidian:#070A10;--obsidian-hi:#1B2942;--obsidian-deep:#010205;
  --green:#34D399;--line:rgba(236,238,237,.12);--line-amber:rgba(232,184,69,.32);
  background:#090705
}
.home-depth main{background:#090705}
.home-depth #proof.band-cool{background:
  radial-gradient(72% 54% at 50% 14%,rgba(232,184,69,.09),rgba(0,0,0,0) 72%),
  linear-gradient(180deg,#0E0B08 0%,#0B0806 100%)}
.home-depth #trust{background:
  radial-gradient(68% 52% at 16% 8%,rgba(190,126,30,.055),rgba(0,0,0,0) 74%),
  linear-gradient(180deg,#0B0806 0%,#090705 100%)}
.home-depth #offer.band-violet{background:
  radial-gradient(68% 58% at 50% 20%,rgba(232,184,69,.105),rgba(0,0,0,0) 74%),
  linear-gradient(180deg,#090705 0%,#0C0906 100%)}
.home-depth .hero--photo{
  padding:0;
  overflow:hidden;
  border-bottom:0;
  background:#030302
}
.home-depth .hero--photo::before{display:none}
.home-depth .nav{background:#030302;border-bottom-color:#030302}
.home-depth .ace-photo-hero{
  --ace-photo-duration:5.2s;
  --ace-photo-source-x:45.09%;
  --ace-photo-source-y:46.28%;
  --ace-photo-submit-x:51.98%;
  --ace-photo-submit-y:59.34%;
  position:relative;
  isolation:isolate;
  width:100%;
  aspect-ratio:1670/942;
  overflow:hidden;
  background:#030302;
  container-type:inline-size;
  container-name:ace-photo-camera;
  contain:layout paint
}
.home-depth .ace-photo-hero__plane{
  position:absolute;
  z-index:0;
  inset:0;
  display:block;
  width:100%;
  height:100%;
  max-width:none;
  aspect-ratio:1670/942;
  overflow:hidden;
  container-type:inline-size;
  container-name:ace-photo-plane;
  transform:none;
  transform-origin:0 50%
}
.home-depth .ace-photo-hero__art{
  position:absolute;
  z-index:0;
  inset:0;
  display:block;
  width:100%;
  height:100%;
  max-width:none;
  object-fit:contain;
  image-rendering:auto;
  pointer-events:none;
  user-select:none
}
.home-depth .ace-photo-hero__source-button-mask{
  position:absolute;
  z-index:1;
  left:3%;
  top:69.15%;
  width:15.3%;
  height:7.25%;
  border-radius:999px;
  background:#030302;
  pointer-events:none;
  transform:scale(1.04,1.12)
}
.home-depth .ace-photo-hero__semantic{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  padding:0!important;
  margin:-1px!important;
  overflow:hidden!important;
  clip:rect(0,0,0,0)!important;
  clip-path:inset(50%)!important;
  white-space:nowrap!important;
  border:0!important
}

/* An invisible point keeps the moving Ace aligned with the photographed press receipt. The
   approved photo stays intact: no blurred cleanup patches are painted over the Mac screen. */
.home-depth .ace-photo-hero__submit-target{
  position:absolute;
  left:51.98%;
  top:59.34%;
  width:0;
  height:0;
  pointer-events:none
}

.home-depth .ace-photo-hero__answer{
  position:absolute;
  z-index:4;
  left:39.86%;
  top:48.78%;
  display:flex;
  align-items:center;
  width:12.32%;
  height:4.46%;
  padding:0 .55%;
  overflow:hidden;
  border:max(1px,.065vw) solid rgba(104,100,94,.42);
  border-left-color:rgba(232,184,69,.8);
  border-bottom-color:rgba(232,184,69,.65);
  border-radius:.32vw;
  background:linear-gradient(90deg,#D0C9C3,#CEC8C4 54%,#CBC7C5);
  color:#272522;
  box-shadow:inset 2px 0 rgba(255,217,122,.22),inset 0 1px rgba(255,255,255,.58),inset 0 -1px rgba(66,60,53,.16);
  font-family:Georgia,"Times New Roman",serif;
  font-size:clamp(5px,1.16vw,20px);
  font-style:italic;
  line-height:1;
  white-space:nowrap;
  pointer-events:none
}
.home-depth .ace-photo-hero__answer b{
  display:inline;
  min-width:0;
  font:inherit;
  font-weight:400;
  letter-spacing:.015em
}
.home-depth .ace-photo-hero__answer b::before{content:"(x − 2)(x − 4)"}
.home-depth .ace-photo-hero__answer i{
  display:block;
  flex:0 0 auto;
  width:max(1px,.08vw);
  height:66%;
  margin-left:.2em;
  background:#37322d;
  opacity:0
}

.home-depth .ace-photo-hero__trail{
  position:absolute;
  z-index:3;
  inset:0;
  display:none;
  width:100%;
  height:100%;
  overflow:visible;
  pointer-events:none
}
.home-depth .ace-photo-hero__trail path{
  fill:none;
  stroke:#E8B845;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-dasharray:1;
  stroke-dashoffset:1;
  opacity:0;
  vector-effect:non-scaling-stroke;
  filter:drop-shadow(0 0 2px rgba(255,217,122,.5))
}
.home-depth .ace-photo-hero__gem{
  position:absolute;
  z-index:6;
  left:var(--ace-photo-source-x);
  top:var(--ace-photo-source-y);
  display:grid;
  place-items:center;
  width:clamp(11px,2.1vw,35px);
  aspect-ratio:.7288;
  opacity:1;
  color:#070A10;
  pointer-events:none;
  transform:translate(-50%,-50%);
  transform-origin:50% 58%;
  filter:drop-shadow(0 1px 2px rgba(0,0,0,.68))
}
.home-depth .ace-photo-hero__gem svg{display:block;width:100%;height:100%;overflow:visible}
.home-depth .ace-photo-hero__gem-base{fill:#0B0B0C}
.home-depth .ace-photo-hero__gem-facet{stroke:rgba(244,247,250,.16);stroke-width:.45}
.home-depth .ace-photo-hero__gem-facet--1{fill:#FFD97A}
.home-depth .ace-photo-hero__gem-facet--2{fill:#E8B845}
.home-depth .ace-photo-hero__gem-facet--3{fill:#805C18}
.home-depth .ace-photo-hero__gem-facet--4{fill:#0B0B0C}
.home-depth .ace-photo-hero__gem-facet--5{fill:#B7841F}
.home-depth .ace-photo-hero__gem-facet--6{fill:#FFD97A}
.home-depth .ace-photo-hero__gem-rim{fill:none;stroke:url(#ace-photo-gem-rim);stroke-width:2}
.home-depth .ace-photo-hero__gem-flare{fill:none;stroke:#F4F7FA;stroke-width:.8;stroke-linecap:round;opacity:.48}

.home-depth .ace-photo-hero__submit-ripple{
  position:absolute;
  display:none;
  z-index:5;
  left:var(--ace-photo-submit-x,51.98%);
  top:var(--ace-photo-submit-y,59.34%);
  width:clamp(12px,2.75vw,46px);
  aspect-ratio:1;
  border:1px solid rgba(255,217,122,.92);
  border-radius:50%;
  opacity:0;
  pointer-events:none;
  transform:translate(-50%,-50%) scale(.2);
  box-shadow:none
}

.home-depth .ace-photo-hero__cta{
  position:absolute;
  z-index:8;
  left:3%;
  top:69.15%;
  display:flex;
  align-items:center;
  justify-content:center;
  width:15.3%;
  height:7.25%;
  min-height:44px;
  padding:0 clamp(12px,1.2vw,20px);
  overflow:hidden;
  border:1px solid #FFD97A;
  border-radius:999px;
  background:linear-gradient(180deg,#FFE49B,#E5AE32);
  color:#080705;
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  font-size:clamp(13px,1.08vw,17px);
  font-weight:850;
  line-height:1;
  letter-spacing:.01em;
  text-decoration:none;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.55),0 2px 0 #7D5713,0 12px 32px rgba(0,0,0,.48),0 0 28px rgba(232,184,69,.3);
  transition:filter .16s ease,transform .16s ease,box-shadow .16s ease
}
.home-depth .ace-photo-hero__cta:visited{color:#080705}
.home-depth .ace-photo-hero__cta:hover{
  color:#080705;
  filter:brightness(1.08);
  transform:translateY(-1px);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.65),0 3px 0 #7D5713,0 14px 34px rgba(0,0,0,.52),0 0 34px rgba(232,184,69,.38)
}
.home-depth .ace-photo-hero__cta:focus-visible{
  outline:2px solid #FFD97A;
  outline-offset:3px;
  box-shadow:0 0 0 6px rgba(7,10,16,.82),0 0 26px rgba(232,184,69,.62)
}
.home-depth .ace-photo-hero__terms{
  width:100%;
  max-width:none;
  margin:0;
  padding:9px clamp(14px,3vw,44px) 10px;
  border-top:0;
  background:linear-gradient(180deg,#120F0C,#0E0B08);
  text-align:center
}
.home-depth .ace-photo-hero__terms .fineprint,
.home-depth .ace-photo-hero__terms .measure{margin-inline:auto}

.home-depth .ace-photo-hero[data-photo-active="true"] .ace-photo-hero__gem{
  animation:ace-photo-gem-flight 5.2s cubic-bezier(.2,.72,.18,1) both
}
.home-depth .ace-photo-hero[data-photo-active="true"] .ace-photo-hero__answer b::before{
  animation:ace-photo-type var(--ace-photo-duration) step-end both
}
.home-depth .ace-photo-hero[data-photo-active="true"] .ace-photo-hero__answer i{
  animation:ace-photo-caret var(--ace-photo-duration) step-end both
}
.home-depth .ace-photo-hero[data-photo-settled="true"] .ace-photo-hero__gem{
  left:var(--ace-photo-submit-x,51.98%);
  top:var(--ace-photo-submit-y,59.34%);
  opacity:0;
  transform:translate(-50%,-50%) scale(.92)
}

@keyframes ace-photo-gem-flight{
  0%,10%{
    left:var(--ace-photo-source-x);
    top:var(--ace-photo-source-y);
    opacity:1;
    transform:translate(-50%,-50%) rotate(0) scale(1)
  }
  21%{
    left:calc(var(--ace-photo-answer-x,46.11%) - 1.15%);
    top:calc(var(--ace-photo-answer-y,51.12%) - 3.1%);
    opacity:1;
    transform:translate(-50%,-50%) rotate(18deg) scale(1.14)
  }
  29%,56%{
    left:calc(var(--ace-photo-answer-x) + 3%);
    top:var(--ace-photo-answer-y);
    opacity:1;
    transform:translate(-50%,-50%) rotate(0) scale(.86)
  }
  69%{
    left:calc(var(--ace-photo-submit-x,51.98%) - .9%);
    top:calc(var(--ace-photo-submit-y,59.34%) - 2.45%);
    opacity:1;
    transform:translate(-50%,-50%) rotate(18deg) scale(1.14)
  }
  79%{
    left:var(--ace-photo-submit-x);
    top:var(--ace-photo-submit-y);
    opacity:1;
    transform:translate(-50%,-50%) rotate(0) scale(1)
  }
  84%{
    left:var(--ace-photo-submit-x,51.98%);
    top:var(--ace-photo-submit-y,59.34%);
    opacity:1;
    transform:translate(-50%,-50%) rotate(0) scale(.7)
  }
  89%,93%{
    left:var(--ace-photo-submit-x,51.98%);
    top:var(--ace-photo-submit-y,59.34%);
    opacity:1;
    transform:translate(-50%,-50%) rotate(0) scale(1.06)
  }
  100%{
    left:var(--ace-photo-submit-x,51.98%);
    top:var(--ace-photo-submit-y,59.34%);
    opacity:0;
    transform:translate(-50%,-50%) rotate(0) scale(.92)
  }
}
@keyframes ace-photo-type{
  0%,29%{content:""}
  32%{content:"(x"}
  36%{content:"(x −"}
  41%{content:"(x − 2)"}
  46%{content:"(x − 2)(x"}
  51%,100%{content:"(x − 2)(x − 4)"}
}
@keyframes ace-photo-caret{
  0%,29%,33%,38%,43%,48%,53%,100%{opacity:0}
  30%,32%,34%,37%,39%,42%,44%,47%,49%,52%{opacity:1}
}

@media (max-width:760px){
  .home-depth .ace-photo-hero__terms{padding-block:7px 8px}
  .home-depth .ace-photo-hero__cta{min-width:44px;min-height:44px}
  .home-depth .ace-photo-hero__answer{border-radius:2px}
  .home-depth .proof-card--film>figcaption{display:none}
}
@media (max-width:900px) and (orientation:portrait){
  .home-depth .ace-photo-hero{
    height:clamp(560px,73svh,620px);
    aspect-ratio:auto
  }
  .home-depth .ace-photo-hero__plane{
    inset:0 auto auto 0;
    width:auto;
    min-width:100%;
    height:100%;
    aspect-ratio:1670/942
  }
  .home-depth .ace-photo-hero[data-photo-active="true"] .ace-photo-hero__plane{
    animation:ace-mobile-camera 8.2s linear both
  }
  .home-depth .ace-photo-hero[data-photo-settled="true"] .ace-photo-hero__plane{
    transform:translate3d(calc(100cqw - 100%),0,0)
  }
  .home-depth .ace-photo-hero[data-photo-active="true"] .ace-photo-hero__gem,
  .home-depth .ace-photo-hero[data-photo-active="true"] .ace-photo-hero__answer b::before,
  .home-depth .ace-photo-hero[data-photo-active="true"] .ace-photo-hero__answer i{
    animation-delay:1.25s
  }
  .home-depth .ace-photo-hero__answer{
    border:max(1px,.065cqw) solid rgba(104,100,94,.42);
    border-left-color:rgba(232,184,69,.8);
    border-bottom-color:rgba(232,184,69,.65);
    border-radius:.32cqw;
    box-shadow:inset 2px 0 rgba(255,217,122,.22),inset 0 1px rgba(255,255,255,.58),inset 0 -1px rgba(66,60,53,.16);
    font-size:clamp(12px,1.44cqw,24px)
  }
  .home-depth .ace-photo-hero__answer i{width:max(1px,.08cqw)}
  .home-depth .ace-photo-hero__gem{
    width:clamp(26px,2.5cqw,42px);
  }
  .home-depth .ace-photo-hero__cta{
    left:max(clamp(30px,3.9svh,33px),calc(env(safe-area-inset-left) + 8px));
    top:69.15%;
    display:flex;
    align-items:center;
    justify-content:center;
    width:clamp(158px,19.85svh,168px);
    min-width:158px;
    height:48px;
    min-height:48px;
    padding:0 18px;
    overflow:visible;
    border:1px solid #FFD97A;
    background:linear-gradient(180deg,#FFE49B,#E5AE32);
    color:#080705;
    font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
    font-size:15px;
    font-weight:800;
    line-height:1;
    letter-spacing:.01em;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.13),0 1px 0 rgba(0,0,0,.9),0 10px 26px rgba(0,0,0,.48),0 0 28px rgba(232,184,69,.2)
  }
  @keyframes ace-mobile-camera{
    0%,10%{transform:translate3d(0,0,0);animation-timing-function:cubic-bezier(.58,0,.28,1)}
    18%,80%{transform:translate3d(calc(50cqw - 50%),0,0);animation-timing-function:cubic-bezier(.58,0,.28,1)}
    88%,100%{transform:translate3d(calc(100cqw - 100%),0,0)}
  }
}
@media (max-width:900px) and (orientation:landscape){
  .home-depth .ace-photo-hero{height:auto;aspect-ratio:1670/942}
  .home-depth .ace-photo-hero__plane{inset:0;width:100%;height:100%;transform:none;animation:none!important}
  .home-depth .ace-photo-hero__answer{font-size:clamp(11px,1.76vw,16px)}
  .home-depth .ace-photo-hero__gem{width:clamp(22px,3.4vw,36px)}
  .home-depth .ace-photo-hero__cta{
    left:max(3%,calc(env(safe-area-inset-left) + 8px));
    display:flex;
    align-items:center;
    justify-content:center;
    width:clamp(148px,20vw,168px);
    min-width:148px;
    height:44px;
    min-height:44px;
    padding:0 16px;
    overflow:visible;
    border:1px solid #FFD97A;
    background:linear-gradient(180deg,#FFE49B,#E5AE32);
    color:#080705;
    font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
    font-size:14px;
    font-weight:800;
    line-height:1;
    letter-spacing:.01em;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.13),0 1px 0 rgba(0,0,0,.9),0 8px 20px rgba(0,0,0,.44),0 0 22px rgba(232,184,69,.18)
  }
}
@media (max-width:900px) and (max-height:500px) and (orientation:landscape){
  .home-depth .ace-photo-hero__cta{top:calc(69.15% - 12px - env(safe-area-inset-bottom))}
}
@media (prefers-reduced-motion:reduce){
  .home-depth .ace-photo-hero__trail,
  .home-depth .ace-photo-hero__submit-ripple{display:none}
  .home-depth .ace-photo-hero__gem,
  .home-depth .ace-photo-hero__answer b::before,
  .home-depth .ace-photo-hero__answer i{animation:none!important}
  .home-depth .ace-photo-hero__answer b::before{content:"(x − 2)(x − 4)"}
  .home-depth .ace-photo-hero__answer i{opacity:0}
  .home-depth .ace-photo-hero__gem{
    left:var(--ace-photo-submit-x,51.98%);
    top:var(--ace-photo-submit-y,59.34%);
    opacity:1;
    transform:translate(-50%,-50%) scale(.9)
  }
}
@media (prefers-reduced-motion:reduce) and (max-width:900px) and (orientation:portrait){
  .home-depth .ace-photo-hero__plane{
    animation:none!important;
    transform:translate3d(calc(50cqw - 50%),0,0)
  }
}
.home-depth .ace-photo-hero[data-photo-error="true"]{
  display:grid;
  align-content:center;
  justify-items:start;
  height:auto;
  min-height:clamp(440px,70svh,620px);
  padding:clamp(28px,7vw,88px);
  aspect-ratio:auto;
  background:
    radial-gradient(70% 80% at 10% 10%,rgba(232,184,69,.15),transparent 70%),
    linear-gradient(145deg,#17130D,#050403 72%)
}
.home-depth .ace-photo-hero[data-photo-error="true"] .ace-photo-hero__plane{display:none}
.home-depth .ace-photo-hero[data-photo-error="true"] .ace-photo-hero__semantic{
  position:relative!important;
  width:min(680px,100%)!important;
  height:auto!important;
  padding:0!important;
  margin:0!important;
  overflow:visible!important;
  clip:auto!important;
  clip-path:none!important;
  white-space:normal!important;
  border:0!important
}
.home-depth .ace-photo-hero[data-photo-error="true"] .ace-photo-hero__semantic h1{
  margin-top:12px;
  font-size:clamp(42px,7vw,82px)
}
.home-depth .ace-photo-hero[data-photo-error="true"] .ace-photo-hero__semantic p:not(.eyebrow){
  max-width:58ch;
  margin-top:18px;
  color:var(--mute)
}
.home-depth .ace-photo-hero[data-photo-error="true"] .ace-photo-hero__cta{
  position:relative;
  left:auto;
  top:auto;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:auto;
  min-width:158px;
  height:48px;
  min-height:48px;
  margin-top:26px;
  padding:0 20px;
  border:1px solid rgba(255,217,122,.86);
  border-radius:999px;
  background:linear-gradient(180deg,rgba(19,18,15,.96),rgba(4,4,3,.98));
  color:#FFD97A;
  font-size:15px;
  font-weight:800;
  line-height:1
}
@media (forced-colors:active){
  .home-depth .ace-photo-hero__answer{
    border:1px solid CanvasText;
    background:Canvas;
    color:CanvasText;
    box-shadow:none;
    forced-color-adjust:auto
  }
  .home-depth .ace-photo-hero__gem{filter:none}
  .home-depth .ace-photo-hero__gem-base{fill:CanvasText}
  .home-depth .ace-photo-hero__gem-facet{fill:Canvas;stroke:CanvasText}
  .home-depth .ace-photo-hero__gem-rim,
  .home-depth .ace-photo-hero__gem-flare{stroke:CanvasText}
  .home-depth .ace-photo-hero__cta{
    display:grid;
    place-items:center;
    border:2px solid LinkText;
    background:Canvas;
    color:LinkText;
    min-width:44px;
    min-height:44px;
    font-size:clamp(14px,1.2vw,16px);
    line-height:1
  }
}

/* ---- 2026-08-28 high-fidelity storefront pass ----------------------------------------------
   Keep the visual hierarchy photographic and neutral. Gold is a precise material accent, not a
   fog layer. Supporting proof is native HTML/SVG so it stays pin-sharp on every density. */
:root{
  --ink:#050607;
  --panel:#101214;
  --panel-hi:#171A1D;
  --body:#F0F1F2;
  --mute:#A7ADB3;
  --line:rgba(255,255,255,.105);
  --amber:#E8B845;
  --amber-hi:#FFE09A;
  --amber-dim:#8E6722
}
body{background:#050607}
.nav{background:rgba(5,6,7,.98);border-bottom-color:rgba(255,255,255,.08)}
.ann{background:#0B0D0F;border-bottom-color:rgba(255,255,255,.08)}
.site-depth main{background:
  radial-gradient(900px 420px at 82% -110px,rgba(232,184,69,.07),transparent 70%),
  linear-gradient(180deg,#08090A,#050607 52%,#08090A)}
.site-depth main::before{opacity:.1;background:
  linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px) 0 0/100% 96px,
  linear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px) 0 0/96px 100%}
.site-depth .card,.site-depth .faq details{
  border-color:rgba(255,255,255,.105);
  border-top-color:rgba(255,255,255,.18);
  background:linear-gradient(180deg,#17191C,#0E1012);
  box-shadow:inset 0 1px rgba(255,255,255,.055),0 18px 48px -32px rgba(0,0,0,.9)
}
.site-depth .rows{background:rgba(12,14,16,.9);box-shadow:none}
.site-depth .row:nth-child(even){background:rgba(255,255,255,.016)}

.home-depth,.home-depth main{background:#050607}
.home-depth #proof.band-cool,.home-depth #trust,.home-depth #offer.band-violet{
  border-top:1px solid rgba(255,255,255,.06);
  background:
    radial-gradient(800px 340px at 50% 0,rgba(232,184,69,.055),transparent 72%),
    #070809
}
.home-depth #trust{background:#050607}
.home-depth #offer.band-violet{background:
  radial-gradient(700px 360px at 50% 16%,rgba(232,184,69,.075),transparent 70%),#070809}
.home-depth .hero--photo,.home-depth .nav{background:#030303;border-bottom-color:#030303}
.home-depth .ace-photo-hero{background:#030303}
.home-depth .ace-photo-hero::before{
  content:"";
  position:absolute;
  z-index:2;
  inset:0 auto 0 0;
  width:28%;
  pointer-events:none;
  background:linear-gradient(90deg,#030303 0 72%,rgba(3,3,3,.985) 80%,rgba(3,3,3,.72) 90%,transparent 100%);
  -webkit-mask-image:linear-gradient(180deg,#000 0 70%,rgba(0,0,0,.9) 78%,transparent 94%);
  mask-image:linear-gradient(180deg,#000 0 70%,rgba(0,0,0,.9) 78%,transparent 94%)
}
.home-depth .ace-photo-hero__art{filter:contrast(1.025) saturate(.93)}
.home-depth .ace-photo-hero__semantic{
  position:absolute!important;
  z-index:7;
  left:3%!important;
  top:8.5%!important;
  display:block!important;
  width:19.4%!important;
  height:auto!important;
  padding:0!important;
  margin:0!important;
  overflow:visible!important;
  clip:auto!important;
  clip-path:none!important;
  white-space:normal!important;
  border:0!important
}
.home-depth .ace-photo-hero__semantic .eyebrow{
  color:#F2B900;
  font-size:clamp(7px,.66vw,11px);
  font-weight:750;
  letter-spacing:.14em;
  white-space:nowrap
}
.home-depth .ace-photo-hero__semantic h1{
  margin-top:clamp(12px,1.8vw,30px);
  color:#F4F4F2;
  font-family:"Iowan Old Style","Palatino Linotype",Palatino,Georgia,serif;
  font-size:clamp(27px,3.25vw,54px);
  font-weight:500;
  letter-spacing:-.035em;
  line-height:1.02
}
.home-depth .ace-photo-hero__semantic h1::first-line{color:#F4F4F2}
.home-depth .ace-photo-hero__semantic p:not(.eyebrow){
  margin-top:clamp(14px,2vw,32px);
  color:#C5C9CC;
  font-size:clamp(9px,1.05vw,17px);
  line-height:1.55
}
.home-depth .ace-photo-hero__semantic p:last-child{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  margin:-1px!important;
  overflow:hidden!important;
  clip:rect(0,0,0,0)!important;
  clip-path:inset(50%)!important;
  white-space:nowrap!important
}
.home-depth .ace-photo-hero__source-button-mask{z-index:3;background:#030303}
.home-depth .ace-photo-hero__cta{
  z-index:8;
  border-color:#E8B845;
  background:linear-gradient(180deg,#FFD97A,#DDA521);
  box-shadow:inset 0 1px rgba(255,255,255,.42),0 1px 0 #73510E,0 14px 38px -18px rgba(232,184,69,.8)
}
.home-depth .ace-photo-hero__terms{background:#08090A;border-top:1px solid rgba(255,255,255,.06)}

.home-depth .home-film-stage{gap:clamp(28px,4vw,52px)}
.home-depth .proof-card--film{width:min(100%,1040px)}
.home-depth .proof-card--film .film-shell{
  border:1px solid rgba(255,255,255,.13);
  border-bottom-color:rgba(255,255,255,.08);
  background:#030405;
  box-shadow:0 28px 80px -36px rgba(0,0,0,.95)
}
.home-depth .proof-card--film .film-shell::before{display:none}
.home-depth .proof-card--film .film-shell::after{box-shadow:inset 0 1px rgba(255,255,255,.16)}
.home-depth .proof-card--film .minifilm__picture img{
  transform:scale(1.62);
  transform-origin:54% 48%;
  filter:contrast(1.035) saturate(.92)
}
.home-depth .proof-card--menubar{width:min(100%,720px)}
.home-depth .depth-card{
  border-color:rgba(255,255,255,.105);
  border-top-color:rgba(255,255,255,.2);
  background:linear-gradient(180deg,#17191C 0%,#101214 54%,#0B0D0F 100%);
  box-shadow:inset 0 1px rgba(255,255,255,.06),0 1px 0 #1C1F22,0 24px 70px -38px rgba(0,0,0,.95),0 44px 100px -72px rgba(232,184,69,.6)
}
.home-depth .depth-card::after{background:radial-gradient(240px 200px at var(--glow-x) var(--glow-y),rgba(255,224,154,.12),transparent 72%)}
.home-depth .depth-grid--proof::before,.home-depth .depth-grid--trust::before{
  background:radial-gradient(70% 54% at 50% 30%,rgba(232,184,69,.075),transparent 76%)
}
.ace-product-window{background:#090B0D;color:#F0F1F2;text-align:left}
.ace-product-window__bar{display:flex;align-items:center;gap:7px;padding:12px 15px;border-bottom:1px solid rgba(255,255,255,.1);background:#14171A}
.ace-product-window__bar>span{width:9px;height:9px;border-radius:50%;background:#32363B}
.ace-product-window__bar>span:first-child{background:#FF5F57}
.ace-product-window__bar>span:nth-child(2){background:#FEBC2E}
.ace-product-window__bar>span:nth-child(3){background:#28C840}
.ace-product-window__bar b{margin-left:8px;font-size:13px;letter-spacing:.01em}
.ace-product-window__bar i{margin-left:auto;color:#68E3AD;font-size:12px;font-style:normal}
.ace-product-window__body{padding:clamp(18px,3.5vw,32px)}
.ace-product-window__prompt{display:flex;align-items:center;gap:15px;padding-bottom:22px;border-bottom:1px solid rgba(255,255,255,.1)}
.ace-product-window__prompt>div{display:grid;gap:3px}
.ace-product-window__prompt strong{font-size:clamp(18px,2.2vw,25px);letter-spacing:-.02em}
.ace-product-window__prompt small,.ace-product-window__flow small{color:#9199A1;font-size:12px}
.ace-product-window__gem{display:grid;place-items:center;width:42px;height:42px;border:1px solid #E8B845;border-radius:12px;color:#FFD97A;background:#11100D;box-shadow:inset 0 1px rgba(255,255,255,.08)}
.ace-product-window__flow{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:18px}
.ace-product-window__flow>div{display:grid;gap:5px;min-height:116px;padding:15px;border:1px solid rgba(255,255,255,.09);border-radius:10px;background:#101214}
.ace-product-window__flow span{color:#E8B845;font-size:10px;font-weight:800;letter-spacing:.13em}
.ace-product-window__flow b{font-size:14px;line-height:1.25}
.trust-mark{display:block;width:34px;height:34px;margin-bottom:22px;fill:none;stroke:#E8B845;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}
.home-depth .depth-grid--trust .depth-card:nth-child(2),.home-depth .depth-grid--trust .depth-card:nth-child(3){margin-top:0}
.home-depth .depth-card--offer{
  border-color:rgba(232,184,69,.35);
  border-top-color:rgba(255,224,154,.62);
  background:linear-gradient(180deg,#1B1811,#0F1011 72%);
  box-shadow:inset 0 1px rgba(255,255,255,.08),0 34px 90px -52px rgba(232,184,69,.65)
}

@media (max-width:900px) and (orientation:portrait){
  .home-depth .ace-photo-hero::before{
    width:100%;
    height:58%;
    background:linear-gradient(180deg,#030303 0 62%,rgba(3,3,3,.94) 75%,transparent 100%);
    -webkit-mask-image:none;
    mask-image:none
  }
  .home-depth .ace-photo-hero__semantic{left:7%!important;top:6%!important;width:86%!important;text-align:left}
  .home-depth .ace-photo-hero__semantic .eyebrow{font-size:9px}
  .home-depth .ace-photo-hero__semantic h1{max-width:9ch;margin-top:12px;font-size:clamp(38px,11vw,52px)}
  .home-depth .ace-photo-hero__semantic p:not(.eyebrow){max-width:28ch;margin-top:12px;font-size:14px;line-height:1.45}
  .home-depth .ace-photo-hero__cta{left:7%;top:54%;width:auto;min-width:158px}
  .home-depth .ace-photo-hero__source-button-mask{display:none}
}
@media (max-width:360px) and (orientation:portrait){
  .home-depth .ace-photo-hero__semantic h1{font-size:34px}
  .home-depth .ace-photo-hero__semantic p:not(.eyebrow){font-size:13px}
}
@media (max-width:700px){
  .home-depth .proof-card--film,.home-depth .proof-card--menubar{width:100%}
  .ace-product-window__flow{grid-template-columns:1fr}
  .ace-product-window__flow>div{min-height:0}
}

/* A complete phone composition: compact type, the whole product scene, one clear action. */
.ace-mobile-offer{display:none}
@media (max-width:900px) and (orientation:portrait){
  .home-depth .hero--photo{background:#080807}
  .home-depth .ace-photo-hero,
  .home-depth .ace-photo-hero[data-photo-error="true"]{
    display:flex;flex-direction:column;align-items:stretch;
    height:auto;min-height:0;aspect-ratio:auto;contain:none;padding:0;
    background:radial-gradient(ellipse at 50% 40%,#211a0e 0, #080807 68%);
  }
  .home-depth .ace-photo-hero::before{display:none}
  .home-depth .ace-photo-hero .ace-photo-hero__semantic{
    order:1;position:relative!important;left:auto!important;top:auto!important;
    width:auto!important;max-width:none;height:auto!important;
    margin:0!important;padding:22px 20px 18px!important;text-align:center;
  }
  .home-depth .ace-photo-hero__semantic .eyebrow{
    font-size:9px;font-weight:600;letter-spacing:.13em;color:#d9b563;
    white-space:normal;line-height:1.5;
  }
  .home-depth .ace-photo-hero__semantic h1{
    max-width:none;margin:12px auto 0;font-size:clamp(27px,8.1vw,44px);
    line-height:1.12;letter-spacing:-.035em;font-weight:500;
  }
  .home-depth .ace-photo-hero__semantic h1 span{display:block;color:#e6bd68}
  .home-depth .ace-photo-hero__semantic p:not(.eyebrow){
    max-width:34ch;margin:13px auto 0;font-size:13px;line-height:1.55;color:#b8b7b1;
  }
  .home-depth .ace-photo-hero .ace-photo-hero__plane{
    order:2;position:relative;inset:auto;width:calc(100% - 24px);min-width:0;
    height:auto;aspect-ratio:1292/942;margin:0 12px;
    transform:none!important;animation:none!important;container-type:normal;
    border-radius:16px;box-shadow:0 16px 40px #0006;
    background:#10100d;
  }
  .home-depth .ace-photo-hero__art{
    inset:0 0 auto auto;top:0;width:129.257%;height:auto;
    object-fit:contain;transform:none;filter:none;
  }
  .home-depth .ace-photo-hero__plane> :not(.ace-photo-hero__art){display:none}
  .home-depth .ace-photo-hero .ace-photo-hero__cta{
    order:3;position:relative;left:auto;top:auto;right:auto;bottom:auto;
    align-self:center;margin:20px 20px 0;width:calc(100% - 40px);max-width:420px;
    min-width:0;min-height:48px;height:48px;font-size:15px;transform:none;
    border-radius:12px;border:1px solid #e5bd68;
    background:linear-gradient(180deg,#f0d18c,#d7aa52);
    box-shadow:inset 0 1px 0 #fff5,0 4px 18px #0004;color:#181308;
    font-weight:650;letter-spacing:0;
  }
  .home-depth .ace-photo-hero__terms{background:#080807;border:0;padding:13px 20px 22px;text-align:center}
  .home-depth .ace-photo-hero__terms>.measure{display:none}
  .home-depth .ace-mobile-offer{display:block;margin:0 auto;max-width:420px;color:#b8b7b1;font-size:11px;line-height:1.7}
  .home-depth .ace-mobile-offer strong{font-weight:500;color:#e7e3d9}
  .home-depth .ace-mobile-offer a{color:inherit;text-decoration:underline;text-underline-offset:2px}
}
