  /* AA contrast: small uppercase labels use --red-deep on light */
  h2.sec{font-size:clamp(1.65rem,3vw,2.35rem);font-weight:700;line-height:1.22;letter-spacing:-.01em;margin-bottom:10px;max-width:46rem}
  p.sec-sub{color:var(--gray);max-width:40rem;margin-bottom:44px;font-size:1rem}

  /* ---- avatars / photo fallback layers (same approach as original) ---- */
  .pf{border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-family:'Poppins',sans-serif;font-weight:700;background-color:var(--photo);background-size:cover;background-position:center;flex-shrink:0;position:relative;overflow:hidden}
  .pf .ini{position:absolute;z-index:0;font-size:inherit;letter-spacing:.02em;color:#8C8880}
  .pf img,.mphoto img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;z-index:1}
  .g1{background:linear-gradient(135deg,#EF2D56,#F5A623)}
  .g2{background:linear-gradient(135deg,#6C4CF1,#EF2D56)}
  .g3{background:linear-gradient(135deg,#F5A623,#12A87B)}
  .g4{background:linear-gradient(135deg,#12A87B,#6C4CF1)}
  .g5{background:linear-gradient(135deg,#EF2D56,#6C4CF1)}
  .g6{background:linear-gradient(135deg,#F5A623,#EF2D56)}

  /* ---- rail + nav (identical brand furniture) ---- */

  /* ================================ HERO ================================ */
  .hero{position:relative;padding:44px 0 0;isolation:isolate;overflow-x:clip}
  .hero::before{content:"";position:absolute;top:-6%;right:-10%;width:54%;height:78%;
    background:radial-gradient(closest-side,rgba(239,45,86,.15),rgba(245,166,35,.10) 55%,transparent 72%);
    filter:blur(16px);z-index:0;pointer-events:none;animation:heroGlow 11s ease-in-out infinite alternate}
  .hero .wrap{position:relative;z-index:1}
  .hero-grid{display:grid;grid-template-columns:1.09fr .91fr;gap:32px;align-items:end}
  .hero-copy{padding:26px 0 64px}
  .hero h1{font-size:clamp(2.5rem,4.9vw,4.1rem);line-height:1.04;font-weight:800;letter-spacing:-.022em}
  .hero h1 .script{font-size:1.12em;line-height:1;background:linear-gradient(100deg,var(--red),var(--amber),var(--red));
    background-size:220% 100%;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:var(--red);
    animation:heroSheen 6s linear infinite;
    /* Caveat swashes paint outside the em box; pad the paint area (and pull it
       back with negative margins) so background-clip:text never crops a glyph */
    display:inline-block;padding:.22em .18em .14em .08em;margin:-.22em -.18em -.14em -.08em}
  /* the editor's red pen: hand-drawn strike through "hours" */
  /* the payoff sub-line sits smaller than the headline (em keeps it in
     proportion as the h1 scales). As its own block with a tight line-height we
     control the gap above it directly — matched to the headline's own leading
     instead of inheriting the tall line box of the 4.1rem font. */
  .h1-sub{display:block;font-size:.58em;font-weight:800;letter-spacing:-.01em;line-height:1.65}
  .nb{white-space:nowrap}
  .cross svg{position:absolute;left:-3%;right:-3%;top:52%;width:106%;height:.42em;transform:translateY(-50%) rotate(-1.6deg);overflow:visible;pointer-events:none}
  .hero p.sub{margin:24px 0 30px;font-size:1.13rem;color:var(--gray);max-width:31rem}
  .hero p.sub b{color:var(--ink)}
  .hero-ctas{display:flex;gap:20px;flex-wrap:wrap;align-items:center}
  .hero-ctas .btn-red{box-shadow:0 10px 26px rgba(239,45,86,.28)}
  .hero-ctas .btn-red:hover{box-shadow:0 14px 32px rgba(239,45,86,.38)}
  .hero-alt{font-size:.92rem;color:var(--gray);max-width:15rem;line-height:1.45}
  .hero-alt a{color:var(--red-deep);font-weight:700;border-bottom:1.5px solid transparent;transition:border-color .15s ease}
  .hero-alt a:hover{border-bottom-color:var(--red-deep)}
  .trust-row{display:flex;align-items:center;gap:14px;margin-top:34px;padding-top:24px;border-top:1px solid var(--line)}
  .pf-stack{display:flex}
  .pf-stack .pf{width:40px;height:40px;font-size:.72rem;margin-left:-10px;box-shadow:0 0 0 3px #fff}
  .pf-stack .pf:first-child{margin-left:0}
  .trust-row p{font-size:.88rem;color:var(--gray);max-width:21rem;line-height:1.5}
  .trust-row b{color:var(--ink)}

  /* magazine cut-out portrait stage */
  .stage{position:relative;align-self:end;min-height:620px;display:flex;align-items:flex-end;justify-content:center}
  /* magazine-cover scale: the portrait owns the right half of the fold */
  .stage .cutout{position:relative;z-index:2;width:min(620px,124%);max-width:none;height:auto;display:block;
    filter:drop-shadow(0 28px 44px rgba(21,21,28,.20))}
  .stage::after{content:"";position:absolute;left:6%;right:0;bottom:0;height:1px;background:var(--line)}
  .stage .halo{position:absolute;bottom:-4%;left:50%;transform:translateX(-50%);width:120%;aspect-ratio:1;
    background:radial-gradient(closest-side,rgba(239,45,86,.13),rgba(245,166,35,.08) 52%,transparent 70%);z-index:1;pointer-events:none}
  .anno{position:absolute;z-index:3;font-family:'Caveat',cursive;font-weight:700;color:var(--red);line-height:1.15}
  .anno-top{top:3%;left:-6%;font-size:clamp(1.25rem,1.7vw,1.55rem);max-width:12rem;transform:rotate(-4deg)}
  .anno-top svg{position:absolute;top:88%;left:78%;width:74px;height:52px;overflow:visible}
  .anno-top svg path{stroke:var(--red);stroke-width:2.4;fill:none;stroke-linecap:round}
  .anno-top svg polyline{stroke:var(--red);stroke-width:2.4;fill:none;stroke-linecap:round;stroke-linejoin:round}
  .stat-chip{position:absolute;z-index:3;background:#fff;border:1px solid var(--line);border-radius:10px;
    padding:12px 16px;box-shadow:0 14px 30px rgba(21,21,28,.12);animation:chipFloat 7s ease-in-out infinite}
  .stat-chip b{display:block;font-family:'Poppins',sans-serif;font-weight:800;font-size:1.3rem;color:var(--red-deep);line-height:1.15}
  .stat-chip span{font-size:.68rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--gray);white-space:nowrap}
  .chip-1{left:60%;right:auto;top:30%}
  .chip-2{left:75%;right:auto;top:54%;animation-delay:-3.5s}
  .name-chip{position:absolute;z-index:3;left:0;bottom:26px;background:#fff;border:1px solid var(--line);border-radius:10px;
    padding:11px 15px;box-shadow:0 14px 30px rgba(21,21,28,.12);display:flex;align-items:center;gap:11px}
  .name-chip .pf{width:36px;height:36px;font-size:.66rem}
  .name-chip h4{font-size:.85rem;line-height:1.2}
  .name-chip small{display:block;font-size:.66rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--red-deep)}

  @keyframes heroSheen{to{background-position:220% 0}}
  @keyframes heroGlow{0%{transform:translateY(0) scale(1);opacity:.85}100%{transform:translateY(14px) scale(1.06);opacity:1}}
  @keyframes chipFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}
  @keyframes penDraw{to{stroke-dashoffset:0}}

  /* ====================== PROOF LEDGER (ink band) ======================= */
  .ledger{background:var(--ink);color:#fff;padding:64px 0 58px}
  .ledger-eyebrow{color:#F7A8B8;font-weight:700;font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;margin-bottom:8px;display:flex;align-items:center;gap:10px}
  .ledger-eyebrow::before{content:"";width:26px;height:2px;background:var(--red);flex:none}
  .ledger h2{font-size:clamp(1.35rem,2.3vw,1.8rem);font-weight:700;letter-spacing:-.01em;margin-bottom:36px;max-width:40rem}
  .ledger h2 .script{color:var(--amber)}
  .ledger-grid{display:grid;grid-template-columns:1.1fr 1.2fr 1fr;border-top:1px solid rgba(255,255,255,.16)}
  .lg-item{padding:30px 34px 6px 0}
  .lg-item + .lg-item{border-left:1px solid rgba(255,255,255,.16);padding-left:34px}
  .lg-item > b{display:block;font-family:'Poppins',sans-serif;font-weight:800;font-size:clamp(2.3rem,3.8vw,3.3rem);line-height:1.05;letter-spacing:-.02em;color:#fff;margin-bottom:10px;white-space:nowrap}
  .lg-item > b .arw{color:var(--amber);font-weight:700}
  .lg-mid > b{font-size:clamp(1.95rem,3.1vw,2.7rem);padding-top:.22em}
  .lg-item > span{display:block;font-size:.88rem;color:#C9C9D2;line-height:1.55;max-width:17rem;padding-bottom:22px}
  .lg-item > span i{font-style:normal;color:#fff;font-weight:700}
  .ledger-foot{margin-top:26px;padding-top:22px;border-top:1px solid rgba(255,255,255,.16);font-size:.92rem;color:#C9C9D2}
  .ledger-foot b{color:#fff}
  .ledger-foot .script{color:var(--amber);font-size:1.25rem;margin-left:6px}

  /* ====================== PRESS / AWARDS STRIP ========================== */
  .creds{border-bottom:1px solid var(--line);background:var(--soft);padding:42px 0 40px;text-align:center}
  .creds-lede{font-family:'Poppins',sans-serif;font-weight:600;font-size:.78rem;letter-spacing:.16em;text-transform:uppercase;color:var(--gray);margin-bottom:28px}
  .cred-wall{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:22px 40px;max-width:980px;margin:0 auto}
  .cred-wall img{height:44px;width:auto;max-width:120px;object-fit:contain;
    filter:grayscale(1) opacity(.52);transition:filter .25s ease,transform .25s ease}
  .cred-wall img:hover{filter:grayscale(0) opacity(1);transform:translateY(-2px)}
  .cw{font-family:Georgia,'Times New Roman',serif;font-size:1rem;letter-spacing:.03em;color:var(--gray);white-space:nowrap}

  /* ========================= MASTERS ROSTER ============================= */
  .masters{padding:92px 0 84px}
  .mhead{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;flex-wrap:wrap}
  .mgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
  .mcard{background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;
    transition:transform .25s ease,box-shadow .25s ease}
  .mcard:hover{transform:translateY(-5px);box-shadow:0 20px 40px rgba(21,21,28,.10)}
  .mphoto{position:relative;height:210px;background-color:var(--photo);background-size:cover;background-position:center top;
    border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:center;
    color:#fff;font-family:'Poppins',sans-serif;font-weight:700;font-size:1.5rem;overflow:hidden}
  .mphoto img{filter:saturate(.85);transition:filter .35s ease,transform .45s ease}
  .mcard:hover .mphoto img{filter:saturate(1.05);transform:scale(1.035)}
  .mcard .body{padding:15px 16px 17px}
  .mcard .role{font-size:.62rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--red-deep)}
  .mcard h4{font-size:.95rem;margin:4px 0 5px}
  .mcard p{font-size:.75rem;color:var(--gray);line-height:1.5}
  .masters-foot{display:flex;justify-content:space-between;align-items:center;margin-top:26px;flex-wrap:wrap;gap:14px}
  .masters-foot p{font-size:.92rem;color:var(--gray)}
  .masters-foot b{color:var(--ink)}

  /* ======================== IN THEIR WORDS ============================== */
  /* Editorial spread, not boxes: the page already carries one ink band (the
     ledger) and one red slab (the killshot), so the testimonials go quiet —
     a soft paper band with one featured pull-quote and three clippings on a
     shared rule. The Masters' key phrases get an amber highlighter sweep:
     the light-ground twin of the hero's red-pen strike. */
  .quote-sec{background:var(--soft);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:76px 0 84px}
  .quote-sec blockquote b{font-weight:inherit;color:var(--ink);
    background:linear-gradient(100deg,rgba(245,166,35,.34),rgba(245,166,35,.16));
    padding:.03em .14em;margin:0 -.05em;
    -webkit-box-decoration-break:clone;box-decoration-break:clone}
  .q-feature{position:relative;max-width:46rem;margin:12px auto 0;padding-top:14px}
  /* one oversized hand-drawn mark for the whole spread, hanging in the margin */
  .q-feature::before{content:"\201C";position:absolute;top:-16px;left:-88px;font-family:'Caveat',cursive;font-size:6.5rem;line-height:1;color:var(--red)}
  .q-feature blockquote{font-family:'Poppins',sans-serif;font-weight:600;font-size:clamp(1.22rem,2vw,1.6rem);line-height:1.5;letter-spacing:-.012em;color:var(--ink)}
  .q-row{display:grid;grid-template-columns:1fr 1fr 1fr;max-width:1040px;margin:60px auto 0;border-top:1px solid var(--line)}
  .q-item{display:flex;flex-direction:column;padding:32px 32px 0}
  .q-item:first-child{padding-left:0}
  .q-item:last-child{padding-right:0}
  .q-item + .q-item{border-left:1px solid var(--line)}
  /* flex:1 pins each attribution to the bottom so uneven quotes still align */
  .q-item blockquote{flex:1;font-size:.95rem;line-height:1.65;color:#3C3C46}
  .q-meta{display:flex;align-items:center;gap:14px;margin-top:22px}
  .q-meta .pf{width:44px;height:44px;font-size:.78rem;box-shadow:0 0 0 3px #fff}
  .q-feature .q-meta{margin-top:26px}
  .q-feature .q-meta .pf{width:52px;height:52px;font-size:.86rem}
  .q-meta .who{font-size:.86rem;color:var(--gray);line-height:1.45;min-width:0}
  .q-meta .who b{display:block;color:var(--ink);font-size:.94rem}

  /* ==================== CATEGORY / KILLSHOT ============================= */
  .category{padding:88px 0 96px}
  .trade{max-width:44rem;margin:0 auto 34px;text-align:center;font-size:1.08rem;line-height:2;color:#3C3C46}
  .trade b{color:var(--ink)}
  .trade .x{color:var(--red-deep);font-weight:700}
  .killshot{position:relative;background:var(--red);color:#fff;border-radius:var(--radius);padding:52px 32px 56px;text-align:center;
    font-family:'Poppins',sans-serif;font-weight:700;font-size:clamp(1.5rem,3.3vw,2.3rem);letter-spacing:-.01em;overflow:hidden}
  .killshot::before{content:"";position:absolute;top:-42%;right:-12%;width:52%;aspect-ratio:1;border-radius:50%;
    background:radial-gradient(closest-side,rgba(255,255,255,.16),transparent 72%);pointer-events:none}
  /* the script word must read as the last word of the sentence: normal word
     gap, baseline-locked (Caveat rides high optically, hence the tiny nudge) */
  .killshot .script{color:#fff;font-size:1.24em;margin-left:.04em;position:relative;display:inline-block;line-height:1;top:.07em}
  .killshot .script svg{position:absolute;left:-2%;bottom:-.28em;width:104%;height:.42em;overflow:visible}
  .killshot .script svg path{stroke:#fff;stroke-width:5;fill:none;stroke-linecap:round;
    stroke-dasharray:1;stroke-dashoffset:1}
  .killshot.in .script svg path{animation:penDraw .55s ease-out .35s forwards}

  /* ================= THE CEILING (trimmed, hairline style) ============== */
  .insight{background:var(--soft);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:88px 0}
  .insight h2{font-size:clamp(1.6rem,2.9vw,2.3rem);font-weight:700;line-height:1.24;letter-spacing:-.01em;max-width:44rem}
  .insight h2 em{font-style:normal;color:var(--red)}
  .duality{display:grid;grid-template-columns:1fr 1fr;gap:44px;margin-top:40px;padding-top:34px;border-top:1px solid var(--line)}
  .dual-card h3{font-size:.82rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;margin-bottom:10px}
  .gift h3{color:var(--red-deep)}
  .curse h3{color:#9A5E06}
  .dual-card p{color:#3C3C46;font-size:1.02rem;line-height:1.7;max-width:26rem}
  .dual-card p em{font-style:italic}
  .resolve{max-width:44rem;margin:40px auto 0;padding-top:30px;border-top:1px solid var(--line);text-align:center;font-size:1.08rem;color:#3C3C46;line-height:1.75}
  .resolve b{color:var(--red-deep)}

  /* ========================= FLYWHEEL =================================== */
  .flywheel{padding:92px 0}
  .fly-grid{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center}
  .steps{position:relative}
  .steps::before{content:"";position:absolute;left:18px;top:14px;bottom:26px;width:1px;background:var(--line)}
  .step{position:relative;display:flex;gap:20px;margin-bottom:26px;align-items:flex-start}
  .stepnum{position:relative;z-index:1;flex:0 0 37px;height:37px;background:#fff;border:2px solid var(--red);color:var(--red-deep);border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:'Poppins',sans-serif;font-weight:700;font-size:.88rem}
  .step h3{font-size:1.06rem;margin-bottom:3px}
  .step p{color:var(--gray);font-size:.94rem;max-width:26rem}
  .wheel{position:relative;width:min(470px,100%);aspect-ratio:1;margin:0 auto}
  .wheel-ring{position:absolute;inset:15%;border:2px dashed rgba(239,45,86,.45);border-radius:50%;animation:ringTurn 28s linear infinite}
  /* orbiting dot: rides the dashed ring, makes the cycle's motion unmissable */
  .orbit{position:absolute;inset:15%;border-radius:50%;animation:ringTurn 14s linear infinite;pointer-events:none}
  .orbit::before{content:"";position:absolute;top:-7px;left:50%;transform:translateX(-50%);width:14px;height:14px;border-radius:50%;
    background:var(--red);box-shadow:0 0 0 5px rgba(239,45,86,.18)}
  /* directional chevrons on the ring's diagonals: the loop reads clockwise */
  .warr{position:absolute;width:20px;height:20px;transform:translate(-50%,-50%) rotate(var(--a));pointer-events:none}
  .warr svg{display:block;width:100%;height:100%;overflow:visible}
  .warr svg path{fill:var(--red);stroke:var(--red);stroke-width:2;stroke-linejoin:round}
  .wa1{top:25.3%;left:74.7%;--a:45deg}
  .wa2{top:74.7%;left:74.7%;--a:135deg}
  .wa3{top:74.7%;left:25.3%;--a:225deg}
  .wa4{top:25.3%;left:25.3%;--a:315deg}
  .node{position:absolute;z-index:2;width:138px;background:#fff;border:1.5px solid var(--line);border-radius:10px;padding:13px 12px;text-align:center;font-size:.76rem;font-weight:700;font-family:'Poppins',sans-serif;line-height:1.3;box-shadow:0 10px 24px rgba(21,21,28,.08);
    animation:nodeCycle 12s ease-in-out infinite}
  .node small{display:block;font-family:'DM Sans',sans-serif;font-weight:500;color:var(--gray);font-size:.68rem;margin-top:3px}
  /* Each node's CENTRE sits on the dashed ring (radius = 35% of the box, i.e.
     50% ± 35%, matching .wheel-ring's inset:15%). translate(-50%,-50%) then
     centres the box on that point, so all four boxes ride the same circle. */
  .n1{top:15%;left:50%;transform:translate(-50%,-50%);animation-delay:0s}
  .n2{top:50%;left:85%;transform:translate(-50%,-50%);animation-delay:3s}
  .n3{top:85%;left:50%;transform:translate(-50%,-50%);animation-delay:6s}
  .n4{top:50%;left:15%;transform:translate(-50%,-50%);animation-delay:9s}
  .wheel-core{position:absolute;z-index:1;top:50%;left:50%;transform:translate(-50%,-50%);width:132px;height:132px;border-radius:50%;background:var(--red);color:#fff;display:flex;align-items:center;justify-content:center;text-align:center;font-family:'Caveat',cursive;font-size:1.65rem;font-weight:700;line-height:1.05;
    box-shadow:0 16px 36px rgba(239,45,86,.35)}
  @keyframes ringTurn{to{transform:rotate(360deg)}}
  /* stages light up in sequence, following the orbit's direction */
  @keyframes nodeCycle{
    0%,100%{border-color:var(--line);box-shadow:0 10px 24px rgba(21,21,28,.08)}
    6%,19%{border-color:var(--red);box-shadow:0 14px 30px rgba(239,45,86,.20)}
    25%{border-color:var(--line);box-shadow:0 10px 24px rgba(21,21,28,.08)}
  }

  /* =========================== CLOSE ==================================== */
  .close{padding:16px 0 100px;text-align:center}
  .close .pf-stack{justify-content:center;margin-bottom:24px}
  .close .pf-stack .pf{width:52px;height:52px;font-size:.9rem;margin-left:-12px}
  .close h2{font-size:clamp(2rem,3.8vw,2.9rem);font-weight:800;line-height:1.12;letter-spacing:-.018em}
  .close h2 .script{font-size:1.18em}
  .close p{margin:16px auto 30px;max-width:33rem;color:var(--gray);font-size:1.04rem}
  .close-alt{margin-top:22px;font-size:.92rem;color:var(--gray)}
  .close-alt a{color:var(--red-deep);font-weight:700;border-bottom:1.5px solid transparent;transition:border-color .15s ease}
  .close-alt a:hover{border-bottom-color:var(--red-deep)}

  /* ==================== scroll reveal ==================== */

  /* ==================== responsive ==================== */
  /* small-desktop / landscape-tablet band (still 2-col, but the stage is taller
     here so the base top:3% floats the annotation above his head) */
  @media (max-width:1200px) and (min-width:901px){
    .anno-top{top:20%;left:-16%}
  }
  /* the quote mark can no longer hang in the margin; tuck it above the text */
  @media (max-width:1000px){
    .q-feature{padding-top:56px}
    .q-feature::before{left:-6px;top:-12px}
  }
  @media (max-width:900px){
    .hero-grid,.fly-grid{grid-template-columns:1fr}
    .hero-copy{padding-bottom:26px}
    .stage{min-height:0;margin-top:8px}
    .stage .cutout{width:min(460px,96%)}
    /* tablet: the stage is taller here, so the base top:3% floats the
       annotation too high — bring it down and flush it left */
    .anno-top{top:22%;left:10%}
    .ledger-grid{grid-template-columns:1fr}
    .lg-item{padding:22px 0 0}
    .lg-item + .lg-item{border-left:none;border-top:1px solid rgba(255,255,255,.16);padding-left:0;padding-top:22px}
    .lg-item span{padding-bottom:16px}
    .duality{grid-template-columns:1fr;gap:28px}
    .mgrid{grid-template-columns:repeat(2,1fr)}
    .q-row{grid-template-columns:1fr;max-width:560px}
    .q-item{padding:28px 0}
    .q-item:last-child{padding-bottom:0}
    .q-item + .q-item{border-left:none;border-top:1px solid var(--line)}
  }
  @media (max-width:560px){
    .mgrid{grid-template-columns:1fr}
    .mphoto{height:250px}
    .hero{padding-top:28px}
    .hero p.sub{font-size:1.05rem}
    /* nudge the annotation up and slightly left so it clears his face */
    .anno-top{top:-50px;left:-3%}
    .anno-top svg{top:92%;left:43%}
    /* lift the stat chips so they don't cover his face */
    .chip-1{top:-3%;left:50%;right:auto}
    .chip-2{top:38%;left: 65%;right:auto}
    .cred-wall{gap:18px 26px}
    .cred-wall img{height:36px}
    .trade{font-size:1rem}
  }

  /* ==================== reduced motion: everything still, instantly ===== */
  @media (prefers-reduced-motion: reduce){
    .hero::before,.hero h1 .script,.stat-chip,.wheel-ring,.orbit,.node{animation:none}
    .orbit{display:none}
    .cross svg path,.killshot .script svg path,.killshot.in .script svg path{animation:none;stroke-dashoffset:0}
    .mcard,.mcard:hover,.btn,.btn:hover{transition:none;transform:none}
    .mphoto img,.cred-wall img{transition:none}
  }

  /* base64 master photos spliced from homepage.html — must stay last:
     they override .pf / .mphoto gradient fills wherever a p-* class is set */
    
  .p-nausheen{background-image:url(/assets/img/nausheen-chen.webp);background-size:cover;background-position:center 25%}

  .p-clary{background-image:url(/assets/img/scott-clary.webp);background-size:cover;background-position:center 25%}

  
  
  