/* Content finishing layer, September 20, 2026. Keeps the Pass 2A system intact. */
.hero-definition{
  max-width:540px;margin:-8px 0 18px;color:var(--gold);font-size:15px;
  line-height:1.55;letter-spacing:.02em;
}
.film-band{
  max-width:1280px;margin:0 auto;padding:94px 40px 100px;
  display:grid;grid-template-columns:minmax(250px,.72fr) minmax(0,1.28fr);
  column-gap:60px;align-items:end;
}
.film-copy{align-self:center;}
.film-copy h2,.card-copy h2{font-size:clamp(30px,3.5vw,48px);line-height:1.16;margin-bottom:18px;}
.film-copy p,.card-copy p{color:var(--dim);font-size:16px;line-height:1.72;max-width:560px;margin-bottom:16px;}
.amy-film{width:100%;border:1px solid var(--hair);background:#050505;aspect-ratio:16/9;object-fit:cover;}
.media-limit{grid-column:2;color:var(--floor);font-size:13px;line-height:1.6;margin-top:12px;}
.film-cta{grid-column:2;margin-top:24px;}
.founder-inline-photo{max-width:230px;margin:26px 0 28px;border:1px solid var(--hair);}
.founder-inline-photo img{filter:grayscale(18%) contrast(1.04);}
/* Founder-requested framing at the top tip of the race bib. The original photograph is preserved. */
.founder-inline-photo img,.founder-portrait img{display:block;width:100%;height:auto;aspect-ratio:180/169;object-fit:cover;object-position:center 10.8%;}
.founder-inline-photo figcaption,.concept-card figcaption,.wallet-figure figcaption{
  color:var(--floor);font-size:13px;line-height:1.55;padding-top:10px;
}
.founder-story p{font-size:16px;line-height:1.76;color:var(--dim);margin-bottom:18px;max-width:650px;}
/* Founder page Foundation route (Sep 25): secondary plane button + one note line. Phones: button full width, label wraps balanced, no overflow at 390. */
.fdn-route{margin:6px 0 30px;}
.founder-story .fdn-route .fdn-note{font-size:13px;line-height:1.6;color:var(--floor);margin:14px 0 0;max-width:520px;}
@media(max-width:480px){.fdn-route .btn{width:100%;min-width:0;font-size:15px;gap:16px;padding:0 26px 0 20px;text-align:left;text-wrap:balance;}}
.trust-passage{max-width:960px;}
.trust-passage p{color:var(--steel);font-size:clamp(17px,1.7vw,21px);line-height:1.65;max-width:800px;margin-bottom:18px;font-weight:300;}
.card-concept{max-width:1280px;margin:0 auto;padding:100px 40px;}
.card-copy{display:grid;grid-template-columns:.8fr 1.2fr;gap:0 60px;margin-bottom:54px;}
.card-copy .kicker{grid-column:1/-1;}
.card-stage{display:grid;grid-template-columns:1fr 1fr minmax(230px,.72fr);gap:24px;align-items:end;}
.concept-card img{width:100%;border:1px solid #292929;background:#050505;box-shadow:0 24px 70px rgba(0,0,0,.5);}
.gold-card{transform:translateY(-20px);}
.wallet-figure{align-self:stretch;display:flex;flex-direction:column;justify-content:flex-end;}
.phone-shell{
  max-width:270px;width:100%;min-height:475px;margin:0 auto;padding:15px;
  border:2px solid #424242;border-radius:38px;background:linear-gradient(150deg,#141414,#030303 70%);
  box-shadow:0 28px 80px rgba(0,0,0,.62),inset 0 1px 0 rgba(255,255,255,.13);
}
.phone-speaker{width:72px;height:6px;border-radius:9px;background:#343434;margin:0 auto 17px;}
.wallet-pass{
  min-height:405px;border-radius:24px;padding:28px 22px;
  background:linear-gradient(155deg,#151515 0%,#020202 65%);
  border:1px solid rgba(255,198,0,.55);position:relative;overflow:hidden;
}
.wallet-pass::after{content:"";position:absolute;width:220px;height:220px;right:-105px;bottom:-110px;border:1px solid rgba(255,198,0,.22);border-radius:50%;box-shadow:0 0 60px rgba(255,198,0,.1);}
.wallet-wordmark{font-style:italic;color:var(--gold);font-size:21px;letter-spacing:.08em;margin-bottom:54px;}
.wallet-field{margin-bottom:28px;position:relative;z-index:1;}
.wallet-field span{display:block;color:var(--gold);font-size:13px;letter-spacing:.15em;margin-bottom:7px;}
.wallet-field strong{display:block;color:#fff;font-size:14px;font-weight:400;letter-spacing:.03em;}
.faq-bridge{padding-bottom:90px;}

@media(max-width:900px){
  .film-band{grid-template-columns:1fr;row-gap:30px;}
  .media-limit,.film-cta{grid-column:1;}
  .card-copy{grid-template-columns:1fr;}
  .card-stage{grid-template-columns:1fr 1fr;}
  .wallet-figure{grid-column:1/-1;margin-top:28px;}
  .gold-card{transform:none;}
}
@media(max-width:620px){
  .film-band,.card-concept{padding:72px 22px;}
  .card-stage{grid-template-columns:1fr;gap:34px;}
  .wallet-figure{grid-column:1;}
  .receipt-visuals{grid-template-columns:1fr;}
}

.statstrip .stats{grid-template-columns:repeat(3,minmax(0,1fr));}
@media(max-width:620px){.statstrip .stats{grid-template-columns:1fr;}}

.invite-page p{max-width:640px;margin:18px 0;line-height:1.55}.invite-page #invite-url{background:#0b0b0b;color:#ddd;border:1px solid #444;font:inherit}.invite-page label{font-size:14px;color:#b8b8b8}

@media(max-width:960px){.score-illustag{position:static;display:table;margin-top:6px;max-width:100%;left:auto;right:auto}.hero-score{right:24px;left:24px}.score-label{letter-spacing:.2em}}

/* W07: Amy captions smaller (Marc Sep 20). Browser default cue is ~5% of video height; fixed readable sizes instead. */
.amy-film::cue{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:15px;line-height:1.35;color:#EAEAEA;background:rgba(0,0,0,.62);} /* no-JS fallback only */
@media(max-width:620px){.amy-film::cue{font-size:11px;}}
/* Marc Sep 21: captions placed LOWER. Native cues sit above the control bar; this overlay renders the same VTT lower in the frame. */
.amy-wrap{position:relative;width:100%;}
.amy-wrap .amy-film{display:block;}
.amy-cue{position:absolute;left:0;right:0;bottom:11%;transition:bottom .2s ease;pointer-events:none;text-align:center;padding:0 3%;}
.amy-cue span{display:inline-block;max-width:100%;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:15px;line-height:1.35;font-weight:400;color:#EAEAEA;white-space:pre-line;
  background:rgba(0,0,0,.62);padding:5px 10px;}
.amy-cue[hidden]{display:none;}
.amy-wrap.is-paused .amy-cue{bottom:17%;}   /* native control bar visible: lift clear of it */
@media(max-width:620px){.amy-cue{bottom:12%;} .amy-cue span{font-size:11px;padding:3px 7px;} .amy-wrap.is-paused .amy-cue{bottom:42%;}}

/* ===== Unit 3, For Institutions = Comp A "Six Doors" (Marc DIRECT Sep 22, 2026). One argument, pilot conditions once, six cards, partner route. ===== */
.inst-arg{display:grid;grid-template-columns:1.05fr 1fr;gap:64px;align-items:start;}
.inst-arg .big{font-size:clamp(28px,3.4vw,46px);font-weight:200;line-height:1.15;color:var(--steel);}
.inst-arg .big b{font-weight:200;color:var(--gold);}
.inst-arg p{font-size:16px;line-height:1.72;color:var(--dim);margin-bottom:16px;}
.inst-arg p.close{color:var(--steel);font-size:17px;margin-top:22px;}
.pilot-cond{display:grid;grid-template-columns:auto repeat(4,1fr);gap:0 28px;align-items:center;border-top:1px solid var(--gold);border-bottom:1px solid var(--hair);padding:20px 0;margin:44px 0 0;}
.pilot-cond .lbl{font-size:12px;letter-spacing:.24em;text-transform:uppercase;color:var(--gold);font-weight:400;padding-right:12px;}
.pilot-cond .it{font-size:14.5px;color:var(--steel);line-height:1.4;}
.pilot-cond .it small{display:block;font-size:12.5px;color:var(--floor);margin-top:3px;}
.sixgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:34px;}
.who{border:1px solid var(--hair);background:var(--card);padding:30px 28px 30px;display:flex;flex-direction:column;min-height:240px;transition:border-color .3s;}
.who:hover{border-color:rgba(255,198,0,.45);}
.who .k{font-size:12px;letter-spacing:.22em;text-transform:uppercase;color:var(--gold);font-weight:400;margin-bottom:18px;}
.who .q{font-size:20px;font-weight:300;color:var(--steel);line-height:1.3;margin-bottom:16px;}
.who p{font-size:14.5px;line-height:1.62;color:var(--dim);margin-top:auto;}
.partner-route{margin-top:18px;border:1px dashed #4a4a4a;background:transparent;padding:28px 30px;display:grid;grid-template-columns:auto 1fr auto;gap:36px;align-items:center;}
.partner-route .k{font-size:12px;letter-spacing:.22em;text-transform:uppercase;color:var(--floor);font-weight:400;white-space:nowrap;}
.partner-route p{font-size:14.5px;line-height:1.62;color:var(--dim);max-width:720px;}
.partner-route p b{font-weight:400;color:var(--steel);}
.partner-route a.textlink{white-space:nowrap;}
@media(max-width:900px){
  .inst-arg{grid-template-columns:1fr;gap:26px;}
  .pilot-cond{grid-template-columns:1fr;gap:12px;} .pilot-cond .lbl{padding:0 0 4px;}
  .sixgrid{grid-template-columns:1fr 1fr;} .who{min-height:0;}
  .partner-route{grid-template-columns:1fr;gap:14px;}
}
@media(max-width:620px){.sixgrid{grid-template-columns:1fr;}}

/* ============================================================
   How It Works: THE RAIL (checkpoint-05, Sep 22, 2026, The Voice).
   Comp A ruled by Marc. Live behaviors (auto tour, hover enlarge, pulse
   docks in the diamond, G-shield at 4, outcomes drop one by one, 902 at 5)
   run only when JS adds .live. Without JS, reduced motion, or captures,
   every element renders static and visible.
   ============================================================ */
.hiw-h2{max-width:760px;}
.hiw-intro{max-width:640px;}
.hiw{position:relative;margin-top:136px;}
.hiw-rail{position:relative;display:grid;grid-template-columns:repeat(5,1fr);}
.hiw-rail::before{content:"";position:absolute;left:0;right:0;top:9px;height:1px;background:linear-gradient(90deg,var(--hair) 0,var(--gold) 12%,var(--gold) 88%,var(--hair) 100%);}
.hiw-st{position:relative;padding:34px 40px 0 0;outline:none;}
.hiw-st:focus-visible .hiw-body{outline:1px solid var(--gold);outline-offset:10px;}
.hiw-dia{position:absolute;left:0;top:4px;width:11px;height:11px;border:1px solid var(--gold);background:#000;transform:rotate(45deg);transition:transform .45s ease,box-shadow .45s ease;z-index:1;}
.hiw-st.gate .hiw-dia{background:var(--gold);box-shadow:0 0 16px rgba(255,212,0,.55);}
.hiw-body{transform-origin:0 0;transition:transform .5s cubic-bezier(.2,.7,.2,1);}
.hiw-n{font-family:Menlo,monospace;font-size:13px;letter-spacing:.18em;text-transform:uppercase;color:var(--gold);opacity:.9;margin-bottom:10px;}
.hiw-st h3{font-size:22px;font-weight:300;color:var(--steel);line-height:1.25;margin-bottom:10px;}
.hiw-st p{font-size:14.5px;line-height:1.6;color:var(--dim);transition:color .4s ease;}
.hiw-st p.not{color:var(--floor);font-size:13px;margin-top:8px;}

/* above-rail marks: centered on the station's column, not on its diamond */
.hiw-mark{position:absolute;left:0;right:40px;bottom:calc(100% + 18px);display:flex;flex-direction:column;align-items:center;pointer-events:none;transition:opacity .5s ease;}
.hiw-shield svg{width:58px;height:67px;overflow:visible;filter:drop-shadow(0 0 7px rgba(255,212,0,.55)) drop-shadow(0 0 18px rgba(255,212,0,.22));}
.hiw-shield .sh-out{fill:rgba(0,0,0,.35);stroke:var(--gold);stroke-width:3.2;stroke-linecap:round;stroke-dasharray:1;stroke-dashoffset:0;}
.hiw-shield .sh-g{fill:var(--gold);font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-weight:500;font-size:52px;letter-spacing:1px;}
.hiw-num{font-size:64px;font-variant-numeric:tabular-nums;}
.hiw-illus{margin-top:10px;font-size:13px;letter-spacing:.2em;text-transform:uppercase;color:var(--floor);font-weight:400;border:1px solid var(--hair);padding:4px 8px;}

/* the fork under station 4 */
.hiw-fork{position:relative;margin:84px 0 0 calc(60% + 6px);padding-left:34px;}
.hiw-fork::before{content:"";position:absolute;left:5px;top:-46px;bottom:26px;width:1px;background:var(--gold);transform-origin:50% 0;}
.hiw-lane{position:relative;padding:18px 0;border-top:1px solid var(--hair);}
.hiw-lane::before{content:"";position:absolute;left:-29px;top:50%;width:22px;height:1px;background:var(--gold);}
.hiw-lane:last-child{border-bottom:1px solid var(--hair);}
.hiw-lane.h::before{background:repeating-linear-gradient(90deg,var(--gold) 0 3px,transparent 3px 6px);}
.hiw-tag{display:block;margin-bottom:8px;font-family:Menlo,monospace;font-size:13px;letter-spacing:.22em;text-transform:uppercase;font-weight:400;}
.hiw-tag.v{color:var(--gold);} .hiw-tag.c{color:var(--steel);} .hiw-tag.h{color:var(--floor);}
.hiw-lane p{font-size:14.5px;line-height:1.6;color:var(--dim);max-width:520px;}
.hiw-lane.v p{color:var(--steel);}
.hiw-out{margin:26px 0 0 calc(60% + 40px);font-size:13.5px;color:var(--floor);letter-spacing:.06em;}
.hiw-out b{color:var(--gold);font-weight:400;}

/* the traveling pulse (Signal Yellow = verification pulse only) */
.hiw-trav{position:absolute;left:0;top:0;width:9px;height:9px;border-radius:50%;background:var(--pulse);box-shadow:0 0 0 2px #000,0 0 14px var(--pulse);opacity:0;z-index:3;pointer-events:none;transition:transform .9s cubic-bezier(.65,0,.35,1),opacity .45s ease;}
.hiw-trav.jump{transition:none;}

.hiw-receipt-band{padding-top:30px;}
.hiw-pull{margin-top:64px;max-width:760px;font-size:clamp(20px,2.4vw,28px);line-height:1.4;color:var(--steel);font-weight:300;font-style:italic;}
.hiw-pull small{display:block;font-style:normal;font-size:13px;letter-spacing:.2em;text-transform:uppercase;color:var(--floor);margin-top:14px;}

/* ---------- LIVE STATE (JS present, motion allowed) ---------- */
.hiw.live .hiw-trav.shown{opacity:1;}
.hiw.live .hiw-st.on .hiw-dia{transform:rotate(45deg) scale(1.6);box-shadow:0 0 20px rgba(255,212,0,.6);}
.hiw.live .hiw-st.on .hiw-body{transform:scale(1.12);}
.hiw.live .hiw-st.on p{color:var(--steel);}
.hiw.live .hiw-st.on p.not{color:var(--dim);}
/* G-shield: only while the pulse sits at 4; outline draws, then the G lands */
.hiw.live .hiw-shield{opacity:0;}
.hiw.live .hiw-shield .sh-out{stroke-dashoffset:1;transition:stroke-dashoffset .2s ease;}
.hiw.live .hiw-shield .sh-g{opacity:0;transition:opacity .2s ease;}
.hiw.live.at4 .hiw-shield{opacity:1;transition-delay:.35s;}
.hiw.live.at4 .hiw-shield .sh-out{stroke-dashoffset:0;transition:stroke-dashoffset 1.1s cubic-bezier(.45,0,.2,1) .4s;}
.hiw.live.at4 .hiw-shield .sh-g{opacity:1;transition:opacity .5s ease 1.3s;}
.hiw.live.at4 .hiw-shield svg{animation:hiwBreathe 3.2s ease-in-out 1.6s infinite;}
@keyframes hiwBreathe{0%,100%{filter:drop-shadow(0 0 7px rgba(255,212,0,.55)) drop-shadow(0 0 18px rgba(255,212,0,.22));}50%{filter:drop-shadow(0 0 12px rgba(255,212,0,.75)) drop-shadow(0 0 28px rgba(255,212,0,.32));}}
/* 902: only once the pulse reaches 5 */
.hiw.live .hiw-score{opacity:0;}
.hiw.live.at5 .hiw-score{opacity:1;}
/* outcomes: drop one at a time on arrival at 4, stay through 5 */
.hiw.live .hiw-fork::before{transform:scaleY(0);transition:transform .3s ease;}
.hiw.live .hiw-lane,.hiw.live .hiw-out{opacity:0;transform:translateY(-16px);transition:opacity .3s ease,transform .3s ease;}
.hiw.live.past4 .hiw-fork::before{transform:scaleY(1);transition:transform 1.3s cubic-bezier(.3,0,.2,1) .3s;}
.hiw.live.past4 .hiw-lane,.hiw.live.past4 .hiw-out{opacity:1;transform:none;transition:opacity .55s ease,transform .6s cubic-bezier(.2,.8,.2,1);}
.hiw.live.past4 .hiw-lane.v{transition-delay:.45s;}
.hiw.live.past4 .hiw-lane.c{transition-delay:.95s;}
.hiw.live.past4 .hiw-lane.h{transition-delay:1.45s;}
.hiw.live.past4 .hiw-out{transition-delay:1.95s;}

@media(max-width:900px){
  /* phone: the rail becomes a vertical spine; the fork sits between station 4 and station 5 */
  .hiw{margin-top:48px;display:flex;flex-direction:column;}
  .hiw::before{content:"";position:absolute;left:5px;top:0;bottom:0;width:1px;background:linear-gradient(180deg,var(--hair),var(--gold) 6%,var(--gold) 94%,var(--hair));}
  .hiw-rail{display:contents;}
  .hiw-rail::before{content:none;}
  .hiw-st{order:1;padding:0 0 30px 34px;}
  .hiw-st[data-st="5"]{order:3;padding-top:34px;}
  .hiw-st[data-st="4"] .hiw-n,.hiw-st[data-st="4"] h3{padding-right:56px;}
  .hiw-st[data-st="5"] .hiw-n,.hiw-st[data-st="5"] h3{padding-right:150px;}
  .hiw-mark{left:auto;right:0;bottom:auto;top:-4px;align-items:flex-end;}
  .hiw-st[data-st="5"] .hiw-mark{top:28px;}
  .hiw-st[data-st="5"] h3{margin-bottom:20px;}
  .hiw-shield svg{width:40px;height:46px;}
  .hiw-num{font-size:40px;}
  .hiw-illus{margin-top:6px;}
  .hiw-fork{order:2;margin:0 0 0 34px;padding-left:28px;}
  .hiw-fork::before{content:none;}
  .hiw-out{order:4;margin:18px 0 0 34px;}
  .hiw-trav{order:5;}
  .hiw.live .hiw-st.on .hiw-body{transform:none;}
}

/* ===== Education pages (Oct 3, 2026; Marc DIRECT approval of copy v5): /score/guide, /learn,
   /learn/movement-and-health. Existing tokens and components only (pagehero, band, prose,
   callout, btn). Additions: breadcrumb line, small inset, real tables, disclaimer box,
   source list, superscript links. ===== */
.edu-crumbs{font-size:13px;letter-spacing:.06em;color:var(--floor);margin-bottom:22px;}
.edu-crumbs ol{list-style:none;display:flex;flex-wrap:wrap;gap:0 10px;}
.edu-crumbs li+li::before{content:"\203A";margin-right:10px;color:var(--floor);}
.edu-crumbs a{color:var(--dim);border-bottom:1px solid transparent;transition:color .2s,border-color .2s;}
.edu-crumbs a:hover{color:var(--steel);border-color:rgba(255,198,0,.35);}
.edu-crumbs [aria-current="page"]{color:var(--floor);}
.pagehero .lede+.lede{margin-top:16px;}
.edu-h1-l2{display:block;}  /* /learn H1: line 2 starts after the colon, words unchanged (accessible name keeps the space) */
@media(max-width:480px){.edu .pagehero h1{font-size:31px;}}  /* education H1s on phones: largest size that gives /learn exactly two lines at 375px; desktop unchanged */
.edu-plain{font-size:15.5px;line-height:1.7;color:var(--steel);margin:-6px 0 22px;max-width:600px;}
.edu-status{margin-top:22px;max-width:600px;}
.edu .band{padding-top:64px;padding-bottom:64px;}
.edu .prose .kicker{margin-bottom:12px;}
.edu .prose h2.edu-h{margin-top:0;}
.edu .prose ol{margin:0 0 14px 22px;}
.edu .prose ol li{margin-bottom:8px;}
.edu .prose sup{font-size:.72em;line-height:0;vertical-align:super;}
.edu .prose sup a{border-bottom:none;padding:0 1px;}
.edu-inset{margin:26px 0 4px;padding:4px 0 4px 18px;border-left:1px solid var(--hair);font-size:14px !important;line-height:1.65 !important;color:var(--floor) !important;max-width:620px;}
.edu-inset strong{color:var(--dim) !important;font-weight:400;}
.edu-table{width:100%;max-width:720px;border-collapse:collapse;margin:8px 0 22px;font-size:14.5px;line-height:1.55;}
.edu-table caption{caption-side:top;text-align:left;font-size:15.5px;color:var(--steel);font-weight:400;padding-bottom:10px;}
.edu-table th,.edu-table td{border-bottom:1px solid var(--hair);padding:11px 14px 11px 0;text-align:left;vertical-align:top;color:var(--dim);font-weight:300;}
.edu-table thead th{color:var(--floor);font-size:13px;letter-spacing:.14em;text-transform:uppercase;font-weight:400;border-bottom:1px solid #444;}
.edu-table tbody th{color:var(--steel);font-weight:300;}
.edu-table tfoot th,.edu-table tfoot td{color:var(--steel);border-top:1px solid #444;}
.edu-table strong{font-weight:400;color:var(--steel);}
.edu-tablewrap{overflow-x:auto;-webkit-overflow-scrolling:touch;}
.edu-tablewrap:focus-visible{outline:2px solid var(--gold);outline-offset:3px;}
.edu .prose .callout.edu-help{border-left:3px solid var(--gold);background:#0b0a05;padding:18px 22px 6px 24px;}
.edu .prose .callout.edu-help p,.edu .prose .callout.edu-help li{color:var(--steel);}
.edu .prose .callout.edu-help ul{margin-left:18px;}
.edu-disclaimer{border:1px solid var(--hair);background:var(--card);padding:22px 24px 8px;margin:10px 0 34px;}
.edu-disclaimer p{font-size:14.5px !important;}
.edu .prose .edu-sources-h{font-size:15.5px;color:var(--steel);font-weight:400;margin:0 0 12px;}
.edu-sources{margin:0 0 22px 22px !important;}
.edu-sources li{font-size:13.5px !important;line-height:1.65 !important;color:var(--floor) !important;margin-bottom:8px;scroll-margin-top:96px;}
.edu-sources li:target{color:var(--steel) !important;}
.edu .prose .edu-reviewed{font-size:13px;color:var(--floor);letter-spacing:.04em;margin:18px 0 0;}
.edu-close .hero-ctarow{margin-top:4px;}
.edu-back{margin-top:26px !important;}
@media(max-width:620px){
  .edu-table{font-size:13.5px;}
  .edu-table th,.edu-table td{padding:10px 10px 10px 0;}
  .edu .band{padding-top:52px;padding-bottom:52px;}
}
