/* ============================================================
   Variant A — Light editorial
   Warm paper, deep green, charcoal ink, generous air.
   Loads AFTER site.css and overrides it.
   ============================================================ */
:root{
  --paper:#f7f4ee; --paper2:#efeadf; --card:#fffdf8;
  --ground:#f7f4ee; --panel:#fffdf8; --panel2:#fffdf8;
  --ink:#1c2420; --ink-soft:#414e47; --ink-dim:#5d6b64;
  --line:rgba(28,36,32,.10); --line-strong:rgba(28,36,32,.20);
  --acc:#2E7D32; --acc-deep:#245c28;
  --g1:#2E7D32; --g2:#56a83f;
  --grad:linear-gradient(135deg,#56a83f 0%,#2E7D32 100%);
}
body{background:var(--paper);color:var(--ink);font-weight:400;font-size:16.5px;}


/* Header */
.site-head{border-bottom:1px solid var(--line-strong);background:var(--paper);}
.mark .name{color:var(--ink);}
.mark .name span{color:var(--ink-dim);}
.nav a{color:var(--ink-soft);}
.nav a:hover,.nav a[aria-current="page"]{color:var(--acc);}
.nav a.nav-score{color:var(--acc);font-weight:600;}
.nav a.btn{color:#fff;}
.nav-toggle{border-color:var(--line-strong);color:var(--ink-soft);}
@media(max-width:1240px){.nav{background:var(--card);border-bottom:1px solid var(--line-strong);}}

/* Buttons */
.btn{background:var(--acc-deep);color:#fff;box-shadow:none;}
.btn:hover{box-shadow:0 10px 24px rgba(36,92,40,.22);}
.btn-ghost{color:var(--ink);border-color:var(--line-strong);}
.btn-ghost:hover{border-color:var(--acc);color:var(--acc);}

/* Type */
.eyebrow{color:var(--ink-dim);}
.eyebrow::before{background:var(--acc);}
h1.lead{font-size:clamp(38px,5.2vw,64px);line-height:1.12;color:var(--ink);}
h1.lead .dim{color:var(--ink-dim);}
h1.lead .lift{color:var(--acc);}
.hero-subrole{color:var(--ink-dim);}
.standfirst{color:var(--ink-soft);font-weight:400;font-size:18px;}
section{padding:84px 0;border-top:1px solid var(--line);}
.hero{padding:58px 0 56px;}
.sec-eyebrow{color:var(--acc);}
.sec-eyebrow .no{color:var(--ink-dim);}
h2.sec{font-size:clamp(27px,3.4vw,40px);color:var(--ink);}
.prose{color:var(--ink-soft);font-weight:400;font-size:17px;line-height:1.8;}
.prose em{color:var(--acc);}
.prose b,.prose strong{color:var(--ink);}
.prose li::before{background:var(--acc);}
.fine{color:var(--ink-dim);}

/* Hero role card — a proper card, so the role can't be scrolled past */

/* Contour motif in hero (quiet nod to the path device) */
.hero::after{content:"";position:absolute;right:-40px;top:36px;width:400px;height:390px;pointer-events:none;background:url("/assets/img/path-device-wm.png") no-repeat center/contain;}
@media(max-width:900px){.hero::after{display:none;}}

/* Chips */
.fit .it{background:var(--card);border-color:var(--line-strong);color:var(--ink-soft);}
a.door{background:var(--card);border-color:var(--line-strong);box-shadow:0 1px 2px rgba(28,36,32,.05),0 8px 20px rgba(28,36,32,.05);}
a.door:hover{border-color:var(--acc);box-shadow:0 16px 34px rgba(28,36,32,.14);}
.door-q{color:var(--ink);}
.door-a{background:var(--acc-deep);color:#fff;}
a.door-both .door-a{background:transparent;color:var(--acc-deep);border-color:var(--acc-deep);}
.door-lead em{color:var(--acc-deep);}
a.pcard:hover{border-color:var(--acc);}
.fit .it b{color:var(--ink);}

/* Tiles */
.tile{background:var(--card);border-color:var(--line-strong);box-shadow:0 1px 2px rgba(28,36,32,.05),0 12px 28px rgba(28,36,32,.06);}
.tile:hover{border-color:rgba(46,125,50,.45);box-shadow:0 16px 34px rgba(28,36,32,.10);}
.tile .step{color:var(--acc);}
.tile .role{color:var(--ink-dim);}
.tile h3,.tile .tile-h{color:var(--ink);}
.tile .face{color:var(--ink-soft);font-weight:400;}
.tile .promise{color:var(--ink-dim);}
.tile-foot{color:var(--ink-dim);}
.tile:hover .tile-foot{color:var(--acc);}

/* Legend */
.legend .it{color:var(--ink-soft);}
.chip.face{border-color:var(--acc);}
.chip.mach{background:rgba(86,168,63,.18);border-color:var(--g2);}
.chip.evi{background:rgba(46,125,50,.08);border-color:var(--acc);}

/* Proof */
.proof{background:var(--card);border-color:var(--line-strong);}
.proof .big{color:var(--acc);font-size:38px;}
.proof .lbl{color:var(--ink-dim);}
.proof p{color:var(--ink-soft);font-weight:400;}
.exhibit{border-color:var(--line-strong);background:var(--paper2);}
.exhibit .tag{color:var(--acc-deep);border-color:rgba(46,125,50,.5);}
.exhibit-cap .tag{color:var(--acc-deep);border-color:rgba(46,125,50,.5);}
.reads .n{color:var(--acc-deep);}
.case .stage{color:var(--acc-deep);}
a.watch:hover{border-color:rgba(46,125,50,.45);}
.stand svg g{fill:#e9eee1;}
.sc-dot{border-color:rgba(28,36,32,.45);}
.email-form input{border-color:rgba(255,255,255,.4);}
.contact-form input,.contact-form textarea{background:var(--card);color:var(--ink);border-color:var(--line-strong);}
.contact-form input::placeholder,.contact-form textarea::placeholder{color:var(--ink-dim);}
.contact-form input:focus,.contact-form textarea:focus{outline:none;border-color:var(--g1);box-shadow:0 0 0 3px rgba(46,125,50,.15);}
.chip.mach{background:rgba(46,125,50,.15);border-color:#3d7a2c;}
.exhibit p{color:var(--ink-soft);font-weight:400;}
.exhibit p b{color:var(--ink);}

/* Guide */
.guide .photo{border-color:var(--line-strong);}
.guide-credits .c{border-left-color:var(--acc);color:var(--ink-soft);}
.guide-credits .c b{color:var(--ink);}

/* Quotes */
.quote{background:var(--card);border-color:var(--line-strong);}
.quote p{color:var(--ink-soft);}
.quote .who{color:var(--ink-dim);}
.quote .who b{color:var(--acc);}

/* Scorecard */
.sc{background:var(--card);border-color:var(--line-strong);}
.svc-q{color:var(--acc-deep);}
.rq-result{background:var(--paper2,#f1ede4);border-color:var(--line-strong);}
.rq-result p{color:var(--ink-soft);}
.sc-head h2,.sc-head h3{color:var(--ink);}
.sc-reset{color:var(--ink-dim);border-color:var(--line-strong);}
.sc-reset:hover{border-color:var(--acc);color:var(--acc);}
.sc-sub{color:var(--ink-dim);}
.sc-area{border-top-color:var(--line);}
.sc-q{color:var(--ink-soft);}
.sc-q b{color:var(--ink);}
.sc-dot{border-color:rgba(28,36,32,.45);color:var(--ink-dim);}
.sc-dot:hover{border-color:var(--acc);color:var(--acc);}
.sc-dot.on{background:var(--acc-deep);color:#fff;}
.sc-scale{color:var(--ink-dim);}
.sc-out{border-top-color:var(--line);}
.sc-band{color:var(--ink-dim);}
.sc-band b{color:var(--acc);}
.sc-desc{color:var(--ink-soft);font-weight:400;}

/* Strips & onramp */
.sc-strip{background:var(--paper2);border-color:var(--line-strong);}
.sc-strip h3{color:var(--ink);}
.sc-strip p{color:var(--ink-dim);}
.onramp{background:var(--paper2);border-color:var(--line-strong);}
.onramp h3{color:var(--ink);}

/* CFO strip */
.cfo-strip{background:var(--card);border-color:var(--line-strong);}
.cfo-strip h3,.cfo-strip h2.strip-h{color:var(--ink);}
.cfo-strip p{color:var(--ink-soft);font-weight:400;}
.cfo-strip .photo{border-color:var(--line-strong);}

/* Practice cards / question links */
.pcard{background:var(--card);border-color:var(--line-strong);box-shadow:0 1px 2px rgba(28,36,32,.05),0 12px 28px rgba(28,36,32,.06);}
.pcard h3{color:var(--ink);}
.pcard p{color:var(--ink-soft);font-weight:400;}
.pcard-eyebrow{color:var(--acc);}
.pcard .plink{color:var(--acc-deep);}
a.q-link{color:var(--ink);border-bottom-color:var(--line);}
a.q-link:hover{color:var(--acc);}
a.q-link .ch{color:var(--acc);}

/* Question cards */
a.q-card{background:var(--card);border-color:var(--line-strong);}
a.q-card h3{color:var(--ink);}
a.q-card p{color:var(--ink-dim);}
a.q-card .meta{color:var(--acc);}

/* Services / rhythm */
.svc{background:var(--card);border-color:var(--line-strong);}
.svc h3{color:var(--ink);}
.svc p{color:var(--ink-soft);font-weight:400;}
.rhythm .r{border-left-color:var(--acc);}
.rhythm .r h3{color:var(--ink);}
.rhythm .r p{color:var(--ink-soft);font-weight:400;}
.faq-item{border-top-color:var(--line);}
.faq-item h2{color:var(--ink);}

/* Modal */
.modal{background:rgba(28,36,32,.45);}
.modal-card{background:var(--card);border-color:var(--line-strong);box-shadow:0 36px 90px rgba(28,36,32,.28);}
.modal-close{border-color:var(--line-strong);color:var(--ink-dim);}
.modal-close:hover{border-color:var(--acc);color:var(--acc);}
.modal-head .step{color:var(--acc);}
.modal-head .role{color:var(--ink-dim);}
.modal-head h2{color:var(--ink);}
.layer.face{border-left-color:var(--acc);}
.layer.face .layer-lbl{color:var(--acc);}
.layer.face .body{color:var(--ink-soft);}
.layer.face .body em{color:var(--acc);}
.layer.mach{border-left-color:var(--g2);}
.layer.mach .layer-lbl{color:#3d7a2c;}
.layer.mach li{color:var(--ink-soft);font-weight:400;}
.layer.mach li b{color:var(--ink);}
.layer.evi{background:var(--paper2);border-color:var(--line);}
.layer.evi .layer-lbl{color:var(--acc-deep);}
.layer.evi .body{color:var(--ink-soft);font-weight:400;}
.layer.evi .body b{color:var(--ink);}

/* Video */
.video{border-color:var(--line-strong);}

/* Footer — grounded dark band */
.site-foot{background:#182119;border-top:none;margin-top:90px;}
.site-foot .cols{padding:60px 0 44px;}
.site-foot h4{color:#8a9a90;}
.site-foot .mark .name{color:#f0f4f1;}
.site-foot .mark .name span{color:#8a9a90;}
.site-foot a{color:#c3cec7;}
.site-foot a:hover{color:#9fd06a;}
.site-foot .fine{color:#8a9a90;}
.email-form input{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.18);color:#f0f4f1;}
.email-form input::placeholder{color:#8a9a90;}
.email-form .btn,.site-foot .btn{background:var(--acc-deep);color:#fff;}
.site-foot .legal{border-top-color:rgba(255,255,255,.10);color:#8a9a90;}

/* Breadcrumb / misc */
.crumb,.crumb a{color:var(--ink-dim);}
.transcript h2{color:var(--ink);}
h3.sub{color:var(--ink);}

/* Mobile — this variant loads last, so the phone overrides must live here too.
   Keeps the primary CTA within the first screen at 390px (red-team #23). */
@media(max-width:600px){
  .hero{padding:30px 0 28px;}
  section{padding:52px 0;}
  h1.lead{font-size:clamp(31px,8.4vw,44px);}
  .standfirst{margin-top:16px;font-size:16.5px;}
  /* Phone: DOM order is already headline → standfirst → CTAs → video → role cards */
  .hero .btn-row{margin-top:20px;}
  .hero .doors{margin-top:22px;gap:11px;}
  .door-lead{font-size:20px;}
  .door-q{font-size:15.5px;}
  .hero-media{margin-top:26px;}
  .seat-panel{padding:22px 18px 18px;}
  .cfo-strip{padding:22px 20px;}
  .exhibit-cap{flex-direction:column;gap:10px;}
  /* Buttons: one width, one height, stacked */
  .btn-row{flex-direction:column;align-items:stretch;}
  .btn-row .btn,.btn-row .btn-ghost{width:100%;justify-content:center;padding-top:14px;padding-bottom:14px;box-sizing:border-box;}
  .sc-strip .btn,.onramp .btn{width:100%;justify-content:center;box-sizing:border-box;}
}

details.faq-item summary:hover h2{color:var(--acc-deep);}
.faq-chev::before{border-color:var(--acc-deep);}
details.faq-item summary:hover .faq-chev{border-color:var(--acc);}

.seat-tag{color:var(--acc-deep);border-color:rgba(46,125,50,.4);}

.ph-icon{border-color:var(--ink);color:var(--acc-deep);background:var(--card);}

.rq-opt{border-color:var(--line-strong);color:var(--ink-soft);background:var(--card);}
.rq-opt[aria-pressed="true"]{background:var(--acc-deep);border-color:var(--acc-deep);color:#fff;}
.rq-opt:hover{border-color:var(--acc);}
