[hidden]{display:none !important}  /* the hidden attribute must win over .btn / .upiqr display rules */
:root{
  --mid:#0F1B33; --mid-2:#152647; --amber:#F2A33A; --coral:#F0684A; --off:#F3EEE4; --dim:rgba(243,238,228,.74);
  --paper:#F5F1E9; --ink:#0F1B33; --ink-2:#4B5566; --rule:rgba(15,27,51,.22); --rule-l:rgba(243,238,228,.28);
  --disp:'Bricolage Grotesque','Arial Black',sans-serif; --body:'Figtree','Segoe UI',system-ui,sans-serif; --mono:'DM Mono','Consolas',monospace;
}
*{box-sizing:border-box} html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--mid);color:var(--off);font-family:var(--body);font-size:17px;line-height:1.5}
img{max-width:100%;display:block}
h1,h2,h3{margin:0;font-family:var(--disp);font-weight:800;line-height:.95;letter-spacing:-.02em;text-wrap:balance}
.caps{text-transform:uppercase} .caps em{font-style:normal;color:var(--amber)}
.paper .caps em{color:var(--amber)} .paper h2,.paper h3{color:var(--ink)}
h1{font-size:clamp(46px,9vw,112px)} h2{font-size:clamp(36px,6vw,72px)} h3{font-size:22px;text-transform:uppercase;letter-spacing:-.01em}
.sub-caps{font-size:26px;text-transform:uppercase;color:var(--amber);margin-top:18px}
p{margin:0} .body-l{font-size:clamp(18px,2vw,22px);max-width:72ch;margin-top:18px;line-height:1.5} .dim{color:var(--dim)}
.paper{background:var(--paper);color:var(--ink)} .paper .body-l{color:var(--ink)} .navy{background:var(--mid)} .amber{background:var(--amber);color:var(--mid)}
.mono{font-family:var(--mono);font-size:14px;letter-spacing:.06em}
.wrap{max-width:1180px;margin:0 auto;padding:0 22px} .narrow{max-width:860px}
.sec{padding:clamp(56px,9vw,120px) 0;position:relative}
.paper::before{content:"";position:absolute;inset:0;pointer-events:none;background:repeating-linear-gradient(0deg,rgba(0,0,0,.05) 0 2px,transparent 2px 6px);opacity:.4}
.paper .wrap{position:relative}
a{color:inherit}

/* chips, tags, stamps */
.chips{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:18px}
.chip{font-family:var(--mono);font-size:12px;letter-spacing:.14em;text-transform:uppercase;padding:6px 10px;border:2px solid var(--off);color:var(--off);line-height:1}
.chip-fill{background:var(--amber);border-color:var(--amber);color:var(--mid)} .chip-amber{border-color:var(--amber);color:var(--amber)}
.chip-navy{background:var(--mid);border-color:var(--mid);color:var(--off)} .chip-line{border-color:var(--mid);color:var(--mid)} .chip-coral{background:var(--coral);border-color:var(--coral);color:var(--off)}
.tag{display:inline-block;font-family:var(--mono);font-style:normal;font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;padding:3px 7px;border:2px solid currentColor;vertical-align:middle;margin-left:6px;white-space:nowrap}
.tag-m{color:var(--amber)} .tag-p{color:var(--coral)} .tag-a{color:var(--dim)} .paper .tag{color:var(--ink-2)} .paper .tag-m{color:#b8731a} .paper .tag-p{color:var(--coral)}
.stamp{display:inline-block;transform:rotate(-8deg);padding:8px 14px;border:4px solid var(--coral);color:var(--coral);border-radius:6px;font-family:var(--disp);font-weight:800;font-size:22px;letter-spacing:.04em;line-height:1;background:rgba(15,27,51,.45)}
.hero-photo{position:relative} .stamp-hero{position:absolute;right:-16px;top:26px} .stamp-tier{position:absolute;right:16px;top:-18px;font-size:14px;padding:6px 10px;border-color:var(--amber);color:var(--amber);background:var(--mid)}

/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-family:var(--disp);font-weight:800;font-size:18px;letter-spacing:.01em;padding:14px 22px;border:3px solid transparent;border-radius:6px;cursor:pointer;text-decoration:none;line-height:1;transition:transform .08s ease,background .15s}
.btn:active{transform:translateY(1px)} .btn:focus-visible{outline:3px solid var(--amber);outline-offset:3px}
.btn-lg{font-size:21px;padding:18px 28px} .btn-sm{font-size:15px;padding:10px 14px} .btn-block{width:100%}
.btn-amber{background:var(--amber);color:var(--mid);border-color:var(--amber)} .btn-amber:hover{background:#ffb44e}
.btn-navy{background:var(--mid);color:var(--off);border-color:var(--mid)} .btn-navy:hover{background:#1a2c52}
.btn-coral{background:var(--coral);color:var(--off);border-color:var(--coral)}
.btn-ghost{background:transparent;color:var(--off);border-color:var(--off)} .btn-ghost:hover{background:rgba(243,238,228,.1)}
.btn-ghost-navy{background:transparent;color:var(--mid);border-color:var(--mid)} .btn-ghost-navy:hover{background:rgba(15,27,51,.08)}
.cta-row{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}

/* nav */
.nav{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 22px;background:rgba(15,27,51,.92);backdrop-filter:blur(8px);border-bottom:1px solid var(--rule-l)}
.nav-logo img{height:34px;width:auto} .nav-links{display:flex;gap:22px;font-family:var(--mono);font-size:13px;letter-spacing:.1em;text-transform:uppercase} .nav-links a{text-decoration:none;color:var(--dim)} .nav-links a:hover{color:var(--amber)}
.nav-cta{display:flex;gap:8px}
@media (max-width:820px){.nav-links{display:none} .nav .btn-sm{white-space:nowrap;font-size:14px;padding:10px 12px} .nav-cta [data-wa]{display:none}}

/* hero */
.hero{position:relative;min-height:min(92vh,900px);display:flex;align-items:flex-end;overflow:hidden;padding:40px 0 clamp(40px,7vw,80px)}
.hero-photo{position:absolute;inset:0;z-index:0} .hero-photo img{width:100%;height:100%;object-fit:cover;object-position:50% 20%}
.hero-shade{position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(15,27,51,.3) 0%,rgba(15,27,51,.1) 30%,rgba(15,27,51,.86) 60%,var(--mid) 100%)}
.hero-grid{position:relative;z-index:2;width:100%} .hero-in{position:relative} .hero .lede{font-size:clamp(17px,2.2vw,22px);max-width:62ch;margin-top:20px;color:var(--off)}
@media (min-width:960px){
  .hero{align-items:center;min-height:auto;padding:56px 0 64px;background:radial-gradient(ellipse at 70% 50%,rgba(242,163,58,.16),transparent 55%),var(--mid)}
  .hero-shade{display:none}
  .hero-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:48px;align-items:center}
  .hero-photo{position:relative;inset:auto;order:2;height:min(74vh,720px);border-radius:12px;overflow:hidden;box-shadow:0 30px 60px rgba(0,0,0,.45)} .hero-photo img{object-position:50% 15%}
  .hero-in{order:1} .stamp-hero{left:auto;right:-16px;top:26px;transform:rotate(8deg)}
}
.trust{list-style:none;padding:0;margin:30px 0 0;display:flex;flex-wrap:wrap;gap:10px 26px;font-size:14px;color:var(--dim)} .trust b{display:block;font-family:var(--disp);font-size:26px;color:var(--off);line-height:1;margin-bottom:4px}
@media (max-width:959px){.stamp-hero{display:none} .hero{min-height:100vh} .hero-photo img{object-position:50% 6%}}

/* set list */
.setlist{list-style:none;margin:32px 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(340px,1fr));gap:0 40px}
.setlist li{display:grid;grid-template-columns:44px minmax(0,1fr);gap:12px;padding:16px 0;border-top:2px dashed var(--rule)} .navy .setlist li{border-color:var(--rule-l)}
.setlist .n{font-family:var(--mono);color:var(--coral);padding-top:4px} .setlist h3{font-size:20px} .setlist p{color:var(--ink-2);margin-top:6px;font-size:15.5px} .navy .setlist p{color:var(--dim)}
.setlist.compact{grid-template-columns:1fr}

/* tabs */
.tabs{display:flex;flex-wrap:wrap;gap:8px;margin-top:28px}
.tab{font-family:var(--mono);font-size:13px;letter-spacing:.1em;text-transform:uppercase;padding:10px 14px;border:2px solid var(--rule-l);background:transparent;color:var(--dim);cursor:pointer;border-radius:4px}
.tab.is-on{background:var(--amber);border-color:var(--amber);color:var(--mid)}
.pane{display:none;margin-top:18px} .pane.is-on{display:block}
.makes{list-style:none;padding:0;margin:0} .makes li{padding:14px 0;border-top:2px dashed var(--rule-l);font-size:17px;color:var(--dim)} .makes b{color:var(--off)} .makes .tag{color:var(--dim)} .makes .tag-m{color:var(--amber)} .makes .tag-p{color:var(--coral)}
.fine{font-size:14px;color:var(--dim);margin-top:18px;max-width:80ch} .paper .fine{color:var(--ink-2)}

/* deep dives */
.dive{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:clamp(24px,5vw,64px);align-items:center;padding:clamp(28px,5vw,56px) 0;border-top:3px dashed var(--rule)}
.dive:first-child{border-top:0;padding-top:0} .dive-flip .dive-img{order:2}
.dive-img{position:relative} .dive-img > img{width:100%;height:auto;border-radius:6px;aspect-ratio:3/4;object-fit:cover}
.dive-over{position:absolute;right:-6%;bottom:-4%;width:46%;height:auto;filter:drop-shadow(0 18px 30px rgba(0,0,0,.35))}
.dive-txt h2{font-size:clamp(34px,4.6vw,58px)} .dive-txt p{margin-top:14px;color:var(--ink-2);font-size:17px;max-width:58ch} .dive-txt .btn{margin-top:22px}
@media (max-width:820px){.dive{grid-template-columns:1fr} .dive-flip .dive-img{order:0} .dive-img > img{aspect-ratio:4/3}}

/* tiers */
.tier-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:18px;margin-top:32px}
.tier{position:relative;padding:26px 24px 24px;border:3px dashed var(--rule-l);border-radius:10px;display:flex;flex-direction:column;gap:12px}
.tier h3{font-size:44px;line-height:.9} .tier .mono{color:var(--dim)} .tier p{color:var(--dim);font-size:16px} .tier .tier-for{color:var(--off);border-top:2px dashed var(--rule-l);padding-top:12px;margin-top:auto} .tier .btn{margin-top:8px}
.tier-featured{border-style:solid;border-color:var(--amber);background:rgba(242,163,58,.06)} .tier-featured h3{color:var(--amber)} .tier-pro h3{color:var(--coral)}

/* run */
.two-col{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:clamp(24px,5vw,64px);align-items:center}
.run-img img{border-radius:6px;aspect-ratio:3/4;object-fit:cover}
@media (max-width:820px){.two-col{grid-template-columns:1fr}}

/* faq */
.faq{margin-top:28px} .faq details{border-top:2px dashed var(--rule-l);padding:6px 0} .faq summary{cursor:pointer;font-family:var(--disp);font-weight:800;font-size:22px;padding:14px 0;list-style:none;display:flex;justify-content:space-between;gap:16px}
.faq summary::after{content:"+";color:var(--amber);font-family:var(--mono)} .faq details[open] summary::after{content:"–"} .faq p{color:var(--dim);padding:0 0 16px;max-width:70ch}

/* final + footer */
.final{text-align:center} .final .caps em{color:var(--off)} .final p{max-width:60ch;margin:16px auto 0;font-size:18px} .final .cta-row{justify-content:center} .final .mono a{color:var(--mid)}
.foot{padding:36px 0 110px;border-top:1px solid var(--rule-l)} .foot-in{display:flex;flex-wrap:wrap;gap:20px;align-items:center;justify-content:space-between;color:var(--dim);font-size:14px} .foot-in img{height:34px;width:auto} .foot-in p{max-width:60ch}
.ph{padding:6px 10px;border:1px dashed rgba(243,238,228,.45);border-radius:4px;color:rgba(243,238,228,.5)}

/* sticky mobile bar */
.sticky{position:fixed;left:0;right:0;bottom:0;z-index:15;display:none;gap:10px;padding:10px 12px calc(10px + env(safe-area-inset-bottom));background:rgba(15,27,51,.96);border-top:1px solid var(--rule-l)} .sticky .btn{flex:1}
@media (max-width:820px){.sticky{display:flex}}

/* modal */
.modal{position:fixed;inset:0;z-index:50;display:flex;align-items:flex-end;justify-content:center} .modal[hidden]{display:none}
.modal-back{position:absolute;inset:0;background:rgba(5,10,22,.7)}
.modal-card{position:relative;width:min(720px,100%);max-height:92vh;overflow:auto;background:var(--paper);color:var(--ink);border-radius:16px 16px 0 0;padding:28px 22px 32px}
@media (min-width:720px){.modal{align-items:center} .modal-card{border-radius:14px;padding:34px 36px}}
.modal-x{position:absolute;right:14px;top:10px;border:0;background:transparent;font-size:34px;line-height:1;cursor:pointer;color:var(--ink-2)}
.modal .caps{font-size:clamp(34px,5vw,52px);color:var(--ink)} .modal .body{margin-top:12px;color:var(--ink-2)}
form{margin-top:18px;display:flex;flex-direction:column;gap:14px}
label{display:flex;flex-direction:column;gap:6px;font-family:var(--mono);font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-2)} label small{text-transform:none;letter-spacing:0}
input,select{font-family:var(--body);font-size:18px;padding:13px 14px;border:2px solid var(--rule);border-radius:6px;background:#fff;color:var(--ink)} input:focus,select:focus{outline:3px solid var(--amber);outline-offset:1px;border-color:var(--mid)}
.tiers-pick{border:2px dashed var(--rule);border-radius:6px;padding:12px 14px;display:flex;flex-wrap:wrap;gap:14px;margin:0} .tiers-pick legend{font-family:var(--mono);font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-2);padding:0 6px}
.tiers-pick label{flex-direction:row;align-items:center;font-family:var(--body);font-size:17px;text-transform:none;letter-spacing:0;color:var(--ink)} .tiers-pick input{accent-color:var(--amber);width:20px;height:20px} .tiers-pick small{color:var(--ink-2);font-size:12px}
.err{color:var(--coral);font-weight:600} .modal .fine{margin-top:8px;color:var(--ink-2)} .modal .body{color:var(--ink-2)}
.bill-toggle{display:inline-flex;border:2px solid var(--mid);border-radius:6px;overflow:hidden;margin-top:18px} .bill-toggle button{font-family:var(--mono);font-size:12px;letter-spacing:.1em;text-transform:uppercase;padding:10px 14px;border:0;background:transparent;color:var(--mid);cursor:pointer} .bill-toggle .is-on{background:var(--mid);color:var(--off)}
.price-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:16px}
.pc{border:2px dashed var(--rule);border-radius:8px;padding:14px 12px;display:flex;flex-direction:column;gap:6px;min-height:150px} .pc h4{margin:0;font-family:var(--disp);font-size:24px;text-transform:uppercase;line-height:1} .pc .amt{font-family:var(--disp);font-size:clamp(22px,4vw,34px);line-height:1;letter-spacing:-.02em;color:var(--ink)} .pc .per{font-family:var(--mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-2)} .pc .what{font-size:13px;color:var(--ink-2);line-height:1.35}
.pc.is-pick{border-style:solid;border-color:var(--amber);background:rgba(242,163,58,.12)} .pc.is-na{opacity:.55} .pc h4.t-medium{color:#b8731a} .pc h4.t-pro{color:var(--coral)}
@media (max-width:560px){.price-grid{grid-template-columns:1fr}}
.next{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px} .next .btn{flex:1 1 auto}
.pay{margin-top:22px;padding:18px;border:3px dashed var(--mid);border-radius:10px} .pay-opts{display:flex;flex-direction:column;gap:10px;margin-top:12px} .upiqr{display:flex;flex-direction:column;align-items:center;gap:8px;padding:10px;background:#fff;border-radius:8px}
.done{margin-top:18px;padding:16px;border-radius:8px;background:rgba(15,27,51,.08);font-weight:600}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto} .btn{transition:none}}

/* =================================================================== v2 polish */
body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale} ::selection{background:var(--amber);color:var(--mid)}
p{text-wrap:pretty}
:root{--ease:cubic-bezier(.16,1,.3,1)}

/* hero: a living photo that fades in over the still once it is actually playing */
.hero-photo .hero-vid{position:absolute;inset:0;z-index:1;width:100%;height:100%;object-fit:cover;object-position:50% 30%;opacity:0;transition:opacity .8s ease}
.hero-photo.is-playing .hero-vid{opacity:1} .hero-photo .stamp{z-index:2}
.hero-h .w{display:inline-block;overflow:hidden;vertical-align:top;padding-bottom:.08em;margin-bottom:-.08em}
.hero-h .w > span{display:inline-block}
.js .hero-h .w > span{transform:translateY(110%);animation:rise 1.05s var(--ease) forwards;animation-delay:calc(.12s + var(--i) * .075s)}
.js .hero-in .chips,.js .hero .lede,.js .hero .cta-row,.js .hero .trust{opacity:0;animation:fadeup .9s var(--ease) forwards}
.js .hero-in .chips{animation-delay:.05s} .js .hero .lede{animation-delay:.6s} .js .hero .cta-row{animation-delay:.72s} .js .hero .trust{animation-delay:.84s}
.js .hero-photo{animation:photo-in 1.4s var(--ease) .15s both}
@keyframes rise{to{transform:none}} @keyframes fadeup{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
@keyframes photo-in{from{opacity:0;transform:scale(1.045)}to{opacity:1;transform:none}}
.trust{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;margin-top:34px;padding-top:18px;border-top:1px solid var(--rule-l)}
.trust li{padding-right:14px} .trust li + li{padding-left:16px;border-left:1px solid var(--rule-l)}
.trust b{font-size:clamp(20px,2vw,25px);white-space:nowrap}
@media (max-width:600px){.trust{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:16px} .trust li:nth-child(3){border-left:0;padding-left:0}}
.play-dot{position:relative;width:24px;height:24px;border-radius:50%;background:var(--amber);flex:none}
.play-dot::after{content:"";position:absolute;left:9px;top:6.5px;border-style:solid;border-width:5.5px 0 5.5px 9px;border-color:transparent transparent transparent var(--mid)}

/* ticker */
.ticker{background:var(--amber);color:var(--mid);overflow:hidden;border-block:3px solid var(--mid);position:relative;z-index:3}
.ticker-track{display:flex;width:max-content;animation:tick 46s linear infinite}
.ticker span{display:flex;align-items:center;font-family:var(--disp);font-weight:800;text-transform:uppercase;letter-spacing:-.01em;font-size:clamp(19px,2.3vw,28px);padding:15px 0;white-space:nowrap}
.ticker span::after{content:"";width:9px;height:9px;border-radius:50%;background:var(--mid);margin:0 26px;opacity:.85}
@keyframes tick{to{transform:translateX(-50%)}}

/* the film */
.film-head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:20px 28px}
.film-pick{display:inline-flex;border:2px solid var(--rule-l);border-radius:999px;padding:4px;gap:2px}
.film-pick button{font-family:var(--mono);font-size:13px;letter-spacing:.1em;text-transform:uppercase;padding:11px 18px;border:0;border-radius:999px;background:transparent;color:var(--dim);cursor:pointer;transition:background .2s,color .2s}
.film-pick button:hover{color:var(--off)} .film-pick .is-on,.film-pick .is-on:hover{background:var(--amber);color:var(--mid)}
.film-pick button:focus-visible{outline:3px solid var(--amber);outline-offset:2px}
.film-frame{position:relative;margin-top:30px;border-radius:16px;overflow:hidden;aspect-ratio:16/9;background:#05080F;box-shadow:0 50px 90px rgba(0,0,0,.5),0 0 0 1px var(--rule-l)}
.film-frame video{width:100%;height:100%;display:block;object-fit:cover;background:#05080F}
.film-play{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;border:0;padding:0;cursor:pointer;color:var(--off);background:radial-gradient(ellipse at 50% 50%,rgba(15,27,51,.05),rgba(15,27,51,.45))}
.film-btn{position:relative;width:clamp(68px,8vw,100px);aspect-ratio:1;border-radius:50%;background:var(--amber);animation:pulse 2.6s infinite;transition:transform .25s var(--ease)}
.film-btn::after{content:"";position:absolute;left:55%;top:50%;transform:translate(-50%,-50%);border-style:solid;border-width:clamp(11px,1.3vw,16px) 0 clamp(11px,1.3vw,16px) clamp(17px,2vw,25px);border-color:transparent transparent transparent var(--mid)}
.film-play:hover .film-btn{transform:scale(1.07)} .film-play:focus-visible{outline:3px solid var(--amber);outline-offset:-6px}
.film-len{font-family:var(--mono);font-size:13px;letter-spacing:.14em;text-transform:uppercase;background:rgba(15,27,51,.72);padding:7px 13px;border-radius:999px;backdrop-filter:blur(6px)}
@keyframes pulse{0%{box-shadow:0 0 0 0 rgba(242,163,58,.55)}70%{box-shadow:0 0 0 24px rgba(242,163,58,0)}100%{box-shadow:0 0 0 0 rgba(242,163,58,0)}}

/* scroll reveals (only when JS is on, so nothing is ever stuck invisible) */
.js .rv{opacity:0;transform:translateY(28px);transition:opacity .9s var(--ease),transform 1s var(--ease)}
.js .rv.in{opacity:1;transform:none}
.js .rv-kids > *{opacity:0;transform:translateY(24px);transition:opacity .8s var(--ease),transform .9s var(--ease);transition-delay:calc(var(--i,0) * 70ms)}
.js .rv-kids.in > *{opacity:1;transform:none}
.pane.is-on{animation:fadeup .5s var(--ease)}

/* details */
.dive-img > img,.run-img img{box-shadow:0 30px 60px rgba(15,27,51,.22);border-radius:10px}
@supports (animation-timeline: view()){
  .dive-over{animation:assemble linear both;animation-timeline:view();animation-range:entry 10% cover 55%}
  @keyframes assemble{from{transform:translateY(70px) rotate(-5deg) scale(.92);opacity:0}to{transform:none;opacity:1}}
}
@supports (animation-timeline: scroll()){
  .nav::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;background:var(--amber);transform-origin:0 50%;animation:progress linear both;animation-timeline:scroll(root)}
  @keyframes progress{from{transform:scaleX(0)}to{transform:scaleX(1)}}
}
.tier{transition:transform .3s var(--ease),box-shadow .3s var(--ease),border-color .3s}
.tier:hover{transform:translateY(-6px);box-shadow:0 28px 60px rgba(0,0,0,.35)} .tier:not(.tier-featured):hover{border-color:rgba(243,238,228,.5)}
.btn-amber{box-shadow:0 10px 26px rgba(242,163,58,.22)} .btn-amber:hover{transform:translateY(-1px);box-shadow:0 14px 30px rgba(242,163,58,.32)}
.faq summary:hover{color:var(--amber)} .faq details[open] p{animation:fadeup .45s var(--ease)}

/* footer */
.foot{padding:60px 0 120px}
.foot-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr) minmax(0,1fr);gap:28px;align-items:start}
.foot-brand img{height:34px;width:auto} .foot-brand p{color:var(--dim);font-size:15px;margin-top:16px;max-width:46ch}
.foot-links,.foot-contact{display:flex;flex-direction:column;gap:12px;font-family:var(--mono);font-size:13px;letter-spacing:.1em;text-transform:uppercase}
.foot a{text-decoration:none;color:var(--off)} .foot a:hover{color:var(--amber)}
.foot-base{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px 28px;margin-top:40px;padding-top:22px;border-top:1px solid var(--rule-l);color:var(--dim);font-size:13px} .foot-base p:first-child{max-width:86ch}
@media (max-width:760px){.foot-grid{grid-template-columns:1fr 1fr} .foot-brand{grid-column:1 / -1}}
@media (min-width:821px){.foot{padding-bottom:60px}}

@media (prefers-reduced-motion:reduce){
  .js .rv,.js .rv-kids > *{opacity:1;transform:none;transition:none}
  .js .hero-h .w > span,.js .hero-in .chips,.js .hero .lede,.js .hero .cta-row,.js .hero .trust,.js .hero-photo{animation:none;opacity:1;transform:none}
  .ticker-track,.film-btn,.pane.is-on,.dive-over,.nav::after{animation:none}
}

/* hero balance: a headline that fits in three or four lines, a solid stamp, legible text over the loop on phones */
.stamp-hero{background:var(--mid)}
@media (min-width:960px){
  .hero-grid{grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr)}
  .hero h1{font-size:clamp(56px,6.3vw,92px)}
  .stamp-hero{right:18px}
}
@media (max-width:959px){
  .hero-shade{background:linear-gradient(180deg,rgba(15,27,51,.62) 0%,rgba(15,27,51,.58) 30%,rgba(15,27,51,.86) 58%,var(--mid) 100%)}
  .hero-photo .hero-vid,.hero-photo .hero-still{filter:brightness(.82) saturate(1.05)}
}
@media (max-width:959px){
  .hero-photo::after{content:"";position:absolute;inset:0;z-index:2;pointer-events:none;
    background:linear-gradient(180deg,rgba(15,27,51,.72) 0%,rgba(15,27,51,.62) 32%,rgba(15,27,51,.88) 62%,var(--mid) 100%)}
}
/* phones: one CTA at a time — the sticky bar arrives once the hero buttons scroll away */
@media (max-width:820px){
  .nav-cta{display:none}
  .js .sticky{transform:translateY(110%);transition:transform .4s var(--ease)} .js .sticky.show{transform:none}
}
.foot-base{border-top:0;position:relative} .foot-base::before{content:"";position:absolute;left:22px;right:22px;top:0;border-top:1px solid var(--rule-l)}
