:root{
    --ink:#16261f;          /* near-black green ink (wordmark dark) */
    --ink-2:#22332b;
    --ink-soft:#52615b;
    --forest:#16322a;       /* deep green ground */
    --forest-2:#0e241e;
    --teal:#1f8a7e;
    --teal-deep:#15665d;
    --yellow:#ffc534;       /* OFFICIAL brand color */
    --yellow-deep:#e8ad1c;
    --yellow-soft:#fff1cc;
    --yellow-wash:#fffaf0;
    --coral:#e8623a;        /* secondary action warmth */
    --coral-deep:#c64a26;
    --coral-text:#b84420;   /* coral for small text on light grounds, 5:1 on cream, white, and yellow-wash */
    --cream:#fbf7ee;
    --cream-2:#f4eede;
    --card:#ffffff;
    --line:#e6ddca;
    --line-soft:#efe8d8;
    --shadow:0 14px 40px rgba(22,38,31,.10);
    --shadow-lg:0 24px 60px rgba(22,38,31,.14);
  }
  *{margin:0;padding:0;box-sizing:border-box}
  html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
  body{font-family:'Inter',sans-serif;background:var(--cream);color:var(--ink);line-height:1.6;overflow-x:hidden;-webkit-font-smoothing:antialiased;font-size:17px}
  .wrap{max-width:1180px;margin:0 auto;padding:0 20px;position:relative}
  h1,h2,h3,h4,.display{font-family:'Poppins',sans-serif}
  a{color:inherit}
  img,svg{max-width:100%}

  /* ---------- TOP BAR ---------- */
  .topbar{background:var(--forest);color:var(--cream);position:relative;z-index:51;border-bottom:3px solid var(--yellow)}
  .topbar-in{max-width:900px;margin:0 auto;padding:34px 20px 30px;display:flex;flex-direction:column;align-items:center;gap:10px;text-align:center}
  a[data-view],a[data-anchor],a[data-contact],a[data-preview],a[role="button"]{cursor:pointer}
  .topbar-q{font-family:'Poppins',sans-serif;font-size:clamp(21px,3.6vw,30px);font-weight:700;color:#fff;letter-spacing:-.01em}
  .topbar-q span{color:var(--yellow)}
  .topbar-q::after{content:"";display:block;width:54px;height:4px;background:var(--yellow);border-radius:2px;margin:12px auto 0}
  .topbar-msg{font-size:clamp(14.5px,2vw,16.5px);line-height:1.65;color:rgba(251,247,238,.92);max-width:74ch;margin:0}
  .topbar-msg b{color:var(--yellow);font-weight:700}
  .topbar-cta{background:var(--yellow);color:var(--ink);font-size:12.5px;font-weight:700;text-decoration:none;padding:6px 14px;border-radius:30px;white-space:nowrap;transition:background .2s,transform .15s}
  .topbar-cta:active,.topbar-cta:hover{background:#fff;transform:translateY(-1px)}

  /* ---------- NAV ---------- */
  nav{position:sticky;top:0;z-index:50;background:rgba(251,247,238,.95);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
  .nav-in{max-width:1180px;margin:0 auto;padding:11px 20px;display:flex;align-items:center;justify-content:space-between;gap:16px}
  .logo{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--ink);flex:0 0 auto}
  .logo img{display:block;height:36px;width:auto;flex:0 0 auto}
  .logo .lw{font-family:'Poppins',sans-serif;font-weight:700;font-size:18px;letter-spacing:-.01em;line-height:1}
  .logo .lw small{display:block;font-size:9.5px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-soft);margin-top:2px}
  .nav-right{display:flex;align-items:center;gap:14px}
  .nav-links{display:flex;gap:10px;align-items:center;font-size:14px;font-weight:500;flex-wrap:nowrap}
  .nav-links a{text-decoration:none;color:var(--ink-soft);transition:color .2s;white-space:nowrap}
  .nav-links a:hover{color:var(--teal)}
  .nav-links a.active{color:var(--teal-deep);font-weight:600}
  .drawer-links a.active{color:var(--teal-deep)}
  .nav-cta{background:var(--ink);color:var(--cream)!important;padding:9px 16px;border-radius:8px;font-weight:600;font-size:13.5px;text-decoration:none;transition:transform .15s,background .2s}
  .nav-cta:hover{background:var(--teal);transform:translateY(-1px)}
  @media(max-width:1023px){.nav-links a:not(.nav-cta){display:none}}
  .nav-burger{display:flex;flex-direction:column;gap:5px;background:none;border:none;cursor:pointer;padding:8px;border-radius:8px;transition:background .2s;flex:0 0 auto}
  .nav-burger:hover{background:var(--cream-2)}
  .nav-burger span{width:23px;height:2px;background:var(--ink);border-radius:2px;transition:.25s}
  .nav-burger.open span:nth-child(1){transform:translateY(7px) rotate(45deg)}
  .nav-burger.open span:nth-child(2){opacity:0}
  .nav-burger.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

  /* drawer */
  .drawer-backdrop{position:fixed;inset:0;background:rgba(22,38,31,.45);opacity:0;visibility:hidden;transition:opacity .3s,visibility .3s;z-index:64}
  .drawer-backdrop.open{opacity:1;visibility:visible}
  /* ===== contact form modal ===== */
  .modal-backdrop{position:fixed;inset:0;background:rgba(14,36,30,.55);backdrop-filter:blur(3px);opacity:0;visibility:hidden;transition:opacity .25s,visibility .25s;z-index:80;display:flex;align-items:center;justify-content:center;padding:20px}
  .modal-backdrop.open{opacity:1;visibility:visible}
  .modal{background:var(--cream);border-radius:18px;width:100%;max-width:520px;max-height:92vh;overflow-y:auto;box-shadow:0 30px 80px rgba(0,0,0,.35);transform:translateY(20px) scale(.98);transition:transform .3s cubic-bezier(.6,.2,.1,1);position:relative}
  .modal-backdrop.open .modal{transform:none}
  .modal-head{padding:26px 28px 0;position:relative}
  .modal-head .ey{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--coral-text);font-weight:700;margin-bottom:8px}
  .modal-head h3{font-family:'Poppins',sans-serif;font-size:23px;font-weight:700;color:var(--ink);line-height:1.15;max-width:22ch}
  .modal-head p{font-size:14px;color:var(--ink-soft);margin-top:10px;line-height:1.5}
  .modal-close{position:absolute;top:18px;right:20px;background:none;border:none;font-size:30px;line-height:1;color:var(--ink-soft);cursor:pointer;padding:0 4px}
  .modal-close:hover{color:var(--coral)}
  .modal-body{padding:20px 28px 28px}
  .mfield{margin-bottom:14px}
  .mfield label{display:block;font-size:12.5px;font-weight:700;color:var(--ink-2);margin-bottom:6px;letter-spacing:.01em}
  .mfield label .req{color:var(--coral-text)}
  .mfield input,.mfield textarea{width:100%;padding:12px 14px;border:1.5px solid var(--line);border-radius:10px;font-family:inherit;font-size:15px;background:#fff;color:var(--ink);transition:border-color .2s}
  .mfield input:focus,.mfield textarea:focus{outline:none;border-color:var(--yellow-deep)}
  .mfield textarea{resize:vertical;min-height:88px}
  .mfield.err input,.mfield.err textarea{border-color:var(--coral)}
  .form-err{background:#fdeae3;border:1px solid var(--coral);border-radius:10px;padding:11px 14px;font-size:13px;color:var(--coral-text);line-height:1.5;margin-bottom:14px}
  .form-err a{color:var(--coral-text);font-weight:700}
  .modal .submit{width:100%;margin-top:4px}
  .pv-block{background:var(--cream);border:1px solid var(--line);border-radius:10px;padding:13px 15px;font-size:14px;line-height:1.55;color:var(--ink-2);margin-bottom:10px}
  .pv-block b{color:var(--ink)}
  .modal-done{text-align:center;padding:40px 28px 36px}
  .modal-done .check{width:58px;height:58px;border-radius:50%;background:var(--yellow-soft);border:2px solid var(--yellow);display:flex;align-items:center;justify-content:center;font-size:28px;color:var(--yellow-deep);margin:0 auto 16px}
  .modal-done h3{font-family:'Poppins',sans-serif;font-size:22px;font-weight:700;margin-bottom:10px}
  .modal-done p{font-size:14.5px;color:var(--ink-soft);line-height:1.55;max-width:38ch;margin:0 auto}
  .drawer{position:fixed;top:0;right:0;height:100vh;width:320px;max-width:86vw;background:var(--cream);box-shadow:-14px 0 44px rgba(22,38,31,.2);transform:translateX(100%);visibility:hidden;transition:transform .3s cubic-bezier(.6,.2,.1,1),visibility 0s .3s;z-index:65;display:flex;flex-direction:column;overflow-y:auto}
  .drawer.open{transform:translateX(0);visibility:visible;transition:transform .3s cubic-bezier(.6,.2,.1,1),visibility 0s}
  .drawer-head{display:flex;align-items:center;justify-content:space-between;padding:18px 22px;border-bottom:1px solid var(--line)}
  .drawer-head span{font-family:'Poppins',sans-serif;font-weight:700;font-size:14px;color:var(--ink);letter-spacing:.04em;text-transform:uppercase}
  .drawer-close{background:none;border:none;font-size:30px;line-height:1;color:var(--ink-soft);cursor:pointer;padding:0 4px}
  .drawer-close:hover{color:var(--coral)}
  .drawer-links{display:flex;flex-direction:column;padding:12px 22px 26px}
  .drawer-group{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-soft);font-weight:700;opacity:.6;margin:16px 0 6px}
  .drawer-group:first-child{margin-top:4px}
  .drawer-links a{text-decoration:none;color:var(--ink);font-size:16px;font-weight:500;padding:11px 0;border-bottom:1px solid var(--line);transition:color .2s}
  .drawer-links a:hover{color:var(--teal)}
  .drawer-cart{display:flex;align-items:center;gap:8px;color:var(--ink)!important}
  .drawer-cart-count{color:var(--ink-soft);font-size:13px}

  /* ---------- AUDIENCE SWITCH ---------- */
  .switch-bar{display:flex;justify-content:center;padding:22px 0 4px;flex-direction:column;align-items:center;gap:9px}
  .switch-hint{font-size:12.5px;color:var(--ink-soft);text-align:center;padding:0 16px}
  .switch-hint b{color:var(--ink);font-weight:700}
  .switch{display:inline-flex;background:var(--cream-2);border:1px solid var(--line);border-radius:12px;padding:5px;gap:4px;position:relative;font-size:13.5px;font-weight:600;flex-wrap:wrap;justify-content:center}
  .switch button{border:none;background:none;cursor:pointer;padding:10px 16px;border-radius:8px;color:var(--ink-soft);font-family:inherit;font-weight:600;transition:color .25s;position:relative;z-index:2;white-space:nowrap;font-size:13.5px}
  .switch button.on{color:var(--ink)}
  .switch .pill{position:absolute;top:5px;bottom:5px;border-radius:8px;background:var(--yellow);transition:left .3s cubic-bezier(.6,.2,.1,1),width .3s;z-index:1}
  @media(max-width:640px){
    .switch{display:flex;flex-direction:column;width:100%;max-width:340px;gap:6px}
    .switch button{width:100%;white-space:normal;text-align:center;line-height:1.3;padding:11px 14px}
    .switch button.on{background:var(--yellow)}
    .switch .pill{display:none}
  }

  /* ---------- HERO ---------- */
  header{padding:26px 0 30px;position:relative}
  .eyebrow{font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--coral-text);font-weight:700;margin-bottom:16px}
  h1.hero{font-size:clamp(34px,7vw,62px);line-height:1.05;font-weight:700;letter-spacing:-.02em;color:var(--ink)}
  h1.hero .hl{color:var(--ink);background:linear-gradient(transparent 60%,var(--yellow-soft) 60%);padding:0 .04em}
  .hero-sub{font-size:clamp(19px,2.9vw,26px);color:var(--ink-2);max-width:52ch;margin:14px 0 0;line-height:1.45;font-weight:500}
  .hero-cta-row{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px;align-items:center}
  .btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;padding:15px 24px;border-radius:10px;font-weight:600;font-size:16px;text-decoration:none;cursor:pointer;border:none;font-family:inherit;transition:transform .15s,box-shadow .2s,background .2s;text-align:center}
  .btn-primary{background:var(--coral);color:var(--ink);box-shadow:0 4px 14px rgba(232,98,58,.3)}
  .btn-primary:hover,.btn-primary:active{transform:translateY(-2px);box-shadow:0 6px 18px rgba(232,98,58,.45)}
  .btn-yellow{background:var(--yellow);color:var(--ink);box-shadow:0 4px 14px rgba(255,197,52,.4)}
  .btn-yellow:hover,.btn-yellow:active{transform:translateY(-2px);background:var(--yellow-deep)}
  .btn-ghost{background:transparent;color:var(--ink);border:1.5px solid var(--ink)}
  .btn-ghost:hover{background:var(--ink);color:var(--cream)}
  .hero-note{font-size:13px;color:var(--ink-soft);margin-top:16px;line-height:1.5}
  .hero-note b{color:var(--ink)}
  .hero-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:44px;align-items:center}

  /* receipt card */
  .receipt{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:24px;box-shadow:var(--shadow-lg);position:relative}
  .receipt h4{font-size:13px;letter-spacing:.02em;color:var(--ink);margin-bottom:5px;font-weight:700}
  .receipt .sub{font-size:12.5px;color:var(--ink-soft);margin-bottom:14px;padding-bottom:13px;border-bottom:1.5px solid var(--line)}
  .receipt .line{display:flex;justify-content:space-between;font-size:14px;padding:8px 0;border-bottom:1px solid var(--cream-2);gap:12px}
  .receipt .line span:last-child{font-weight:700;color:var(--teal-deep);white-space:nowrap;font-variant-numeric:tabular-nums}
  .receipt .line.bad span:last-child{color:var(--coral-text)}
  .receipt .tot{margin-top:13px;padding-top:15px;border-top:1.5px solid var(--line)}
  .receipt .tot .row{display:flex;justify-content:space-between;align-items:baseline;gap:12px}
  .receipt .tot .row b{font-family:'Poppins',sans-serif;font-size:14px;font-weight:600;color:var(--ink);max-width:60%}
  .receipt .tot .row .amt{font-family:'Poppins',sans-serif;color:var(--coral);font-size:22px;font-weight:800;white-space:nowrap}
  .receipt .tot small{display:block;margin-top:8px;font-size:11.5px;color:var(--ink-soft);line-height:1.5}
  .receipt .stamp{margin-top:14px;text-align:center;font-size:10px;letter-spacing:.06em;background:var(--yellow-soft);color:var(--ink-2);border-radius:6px;padding:8px;text-transform:uppercase;font-weight:700}

  /* ---------- LOGO STRIP ---------- */
  .logos{border-top:3px solid var(--yellow);border-bottom:1px solid var(--line);background:var(--yellow-wash);margin-top:24px}
  .logos-in{padding:20px 0 22px}
  .logos .lead-line{text-align:center;font-size:12.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-soft);font-weight:700;margin-bottom:14px}
  .logos .row{display:flex;flex-wrap:wrap;justify-content:center;gap:12px 26px;align-items:center}
  .logos .row span:not(.logo-item):not(.logo-fallback){font-family:'Poppins',sans-serif;font-weight:700;font-size:clamp(14px,2.4vw,18px);color:var(--ink);opacity:.72}
  .logos .logo-row{gap:18px 32px;align-items:center}
  .logos .logo-item{display:inline-flex;align-items:center;justify-content:center;background:#fff;border:1px solid var(--line);border-radius:12px;padding:12px 18px;box-shadow:0 2px 10px rgba(22,38,31,.06);transition:transform .2s,box-shadow .2s}
  .logos .logo-item:hover{transform:translateY(-2px);box-shadow:var(--shadow)}
  .logos .logo-item img{height:38px;width:auto;max-width:150px;object-fit:contain}
  .logos .logo-item img.logo-sq{height:50px;border-radius:6px}
  .logos .logo-fallback{display:none;font-family:'Poppins',sans-serif;font-weight:700;font-size:clamp(13px,2vw,16px);color:var(--ink-soft)}
  .logos .note{text-align:center;font-size:12.5px;color:var(--ink-soft);margin-top:14px;font-style:italic}

  /* ---------- SECTION SCAFFOLD ---------- */
  section{padding:56px 0;position:relative}
  .sec-tag{display:inline-block;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink);font-weight:700;margin-bottom:14px;background:var(--yellow-soft);border:1px solid var(--yellow);padding:5px 12px;border-radius:30px}
  h2.sec{font-size:clamp(26px,5vw,42px);line-height:1.1;font-weight:700;letter-spacing:-.018em;color:var(--ink)}
  h2.sec .hl{background:linear-gradient(transparent 60%,var(--yellow-soft) 60%);padding:0 .04em}
  .lead{font-size:clamp(16px,2.3vw,18.5px);color:var(--ink-soft);max-width:64ch;margin-top:16px;line-height:1.6}

  /* ---------- PROMISE ROW (unified offerings) ---------- */
  .promise{background:var(--forest);color:var(--cream);border-radius:20px;padding:40px 32px;position:relative;overflow:hidden}
  .promise::after{content:"";position:absolute;right:-90px;top:-90px;width:280px;height:280px;border-radius:50%;background:radial-gradient(circle,rgba(255,197,52,.18),transparent 70%)}
  .promise .sec-tag{background:rgba(255,197,52,.16);border-color:var(--yellow);color:var(--yellow)}
  .promise h2{color:#fff;font-size:clamp(23px,4vw,36px);font-weight:700;letter-spacing:-.015em;line-height:1.14;position:relative;z-index:2;max-width:24ch}
  .promise h2 .hl{color:var(--yellow)}
  .promise .psub{color:rgba(251,247,238,.75);font-size:clamp(15px,2.2vw,17.5px);margin-top:14px;max-width:60ch;position:relative;z-index:2;line-height:1.55}
  .pillars{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:30px;position:relative;z-index:2}
  .pillar{background:rgba(251,247,238,.06);border:1px solid rgba(255,197,52,.22);border-radius:14px;padding:22px 20px}
  .pillar .pn{font-family:'Poppins',sans-serif;font-size:13px;font-weight:700;color:var(--yellow);letter-spacing:.02em;margin-bottom:8px;display:flex;align-items:center;gap:9px}
  .pillar .pn .dot{width:8px;height:8px;border-radius:50%;background:var(--yellow);flex:0 0 auto}
  .pillar h3{font-size:18px;color:#fff;font-weight:600;margin-bottom:7px;line-height:1.25}
  .pillar p{font-size:14.5px;color:rgba(251,247,238,.78);line-height:1.5}

  /* ---------- DIAGNOSTIC ---------- */
  .diag{background:var(--card);border:1px solid var(--line);border-top:4px solid var(--yellow);border-radius:18px;padding:36px 28px;position:relative;overflow:hidden;box-shadow:var(--shadow)}
  .pains{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-top:26px;position:relative;z-index:2}
  .pain{background:var(--cream);border:1.5px solid var(--line);border-radius:12px;padding:18px 18px;cursor:pointer;transition:border-color .2s,transform .2s;display:flex;gap:13px;align-items:flex-start;text-align:left;font-family:inherit;color:var(--ink);font-size:15.5px;line-height:1.45}
  .pain:hover{border-color:var(--teal);transform:translateY(-2px)}
  .pain .box{flex:0 0 22px;height:22px;border:2px solid var(--line);border-radius:6px;margin-top:1px;display:flex;align-items:center;justify-content:center;font-size:14px;color:var(--ink);transition:all .2s}
  .pain.checked{background:var(--yellow-soft);border-color:var(--yellow-deep)}
  .pain.checked .box{background:var(--yellow);border-color:var(--yellow-deep)}
  .pain .txt b{color:var(--coral-text);font-weight:700}
  .diag-result{margin-top:26px;background:var(--forest);color:var(--cream);border-radius:12px;padding:24px 24px;position:relative;z-index:2;min-height:88px}
  .diag-result .verdict[data-empty]{color:rgba(251,247,238,.72);font-weight:400;font-size:15.5px}
  .diag-result .score{font-family:'Poppins',sans-serif;font-size:21px;font-weight:700;color:var(--yellow);line-height:1.25}
  .diag-result .verdict{font-size:15.5px;margin-top:8px;color:var(--cream);font-weight:500;line-height:1.55}
  .diag-result .verdict span{color:rgba(251,247,238,.78);font-weight:400;display:block;margin-top:8px;font-size:14.5px}
  .diag-cta{margin-top:20px}
  .diag-result .btn{box-shadow:none;width:100%}

  /* ---------- COST / PROOF ---------- */
  .cost-line{font-family:'Poppins',sans-serif;font-size:clamp(22px,4vw,34px);font-weight:700;line-height:1.15;letter-spacing:-.015em;color:var(--ink);max-width:20ch}
  .cost-line .hl{background:linear-gradient(transparent 60%,var(--yellow-soft) 60%)}
  .reasons{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:30px}
  .reason{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:24px 22px;border-top:3px solid var(--yellow)}
  .reason .rn{font-family:'Poppins',sans-serif;font-size:26px;font-weight:800;color:var(--coral);line-height:1;margin-bottom:10px}
  .reason h3{font-size:16.5px;font-weight:600;margin-bottom:7px;color:var(--ink)}
  .reason p{font-size:14.5px;color:var(--ink-soft);line-height:1.5}

  /* ---------- RESULTS BAND ---------- */
  .results{background:var(--forest);color:var(--cream);padding:50px 0;position:relative;overflow:hidden}
  .results::after{content:"";position:absolute;left:-90px;bottom:-90px;width:300px;height:300px;border-radius:50%;background:radial-gradient(circle,rgba(255,197,52,.16),transparent 70%)}
  .results .hd{text-align:center;margin-bottom:34px;position:relative;z-index:2}
  .results .hd .k{font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--yellow);font-weight:700}
  .results .hd h2{font-size:clamp(23px,4vw,36px);font-weight:700;margin-top:10px;color:#fff;letter-spacing:-.015em;max-width:24ch;margin-left:auto;margin-right:auto;line-height:1.16}
  .results .hd p{color:rgba(251,247,238,.5);font-size:12.5px;margin-top:10px}
  .rgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;position:relative;z-index:2}
  .rstat{text-align:center}
  .rstat .num{font-family:'Poppins',sans-serif;font-size:clamp(32px,5.5vw,48px);font-weight:800;color:var(--yellow);line-height:1}
  .rstat .lab{font-size:13px;color:rgba(251,247,238,.82);margin-top:9px;line-height:1.4;max-width:22ch;margin-left:auto;margin-right:auto}
  .results .quote{text-align:center;margin-top:34px;position:relative;z-index:2;font-family:'Poppins',sans-serif;font-style:normal;font-size:clamp(16px,2.4vw,20px);color:#fff;font-weight:500;max-width:44ch;margin-left:auto;margin-right:auto;line-height:1.45}
  .results .quote .by{display:block;font-family:'Inter',sans-serif;font-size:13px;color:var(--yellow);margin-top:12px;font-weight:600}

  /* ---------- LADDER ---------- */
  .ladder{margin-top:34px;display:flex;flex-direction:column;gap:12px}
  .rung{display:grid;grid-template-columns:auto 1fr auto;gap:22px;align-items:center;padding:22px 24px;background:var(--card);border:1px solid var(--line);border-radius:14px;transition:transform .25s,border-color .25s,box-shadow .25s;position:relative}
  .rung:hover{transform:translateX(5px);border-color:var(--yellow-deep);box-shadow:var(--shadow)}
  .rung .step::before{content:attr(data-n)}
  .rung .step{font-family:'Poppins',sans-serif;font-size:30px;font-weight:800;color:var(--cream-2);line-height:1;width:46px;transition:color .25s}
  .rung:hover .step{color:var(--yellow-deep)}
  .rung h3{font-size:19px;font-weight:600;letter-spacing:-.01em;color:var(--ink)}
  .rung .verb{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--coral-text);font-weight:700;display:block;margin-bottom:4px}
  .rung p{font-size:14.5px;color:var(--ink-soft);margin-top:4px;line-height:1.5}
  .rung p b{color:var(--teal-deep);font-weight:600}
  .rung .who{font-size:11px;color:var(--ink-soft);text-align:right;white-space:nowrap;background:var(--cream);padding:6px 12px;border-radius:30px;border:1px solid var(--line);font-weight:600}

  /* ---------- BOUTIQUE / SCALE ---------- */
  .boutique{background:linear-gradient(135deg,var(--yellow),var(--yellow-deep));border-radius:20px;padding:44px 36px;position:relative;overflow:hidden;text-align:center}
  .boutique::before{content:"";position:absolute;inset:0;background-image:radial-gradient(circle at 16% 24%,rgba(255,255,255,.3),transparent 42%),radial-gradient(circle at 84% 78%,rgba(0,0,0,.06),transparent 46%)}
  .boutique h2{position:relative;font-size:clamp(24px,4.4vw,40px);font-weight:700;color:var(--ink);letter-spacing:-.015em;line-height:1.12;max-width:22ch;margin:0 auto}
  .boutique p{position:relative;font-size:clamp(15px,2.3vw,18px);color:var(--ink-2);margin:16px auto 0;max-width:58ch;line-height:1.55}
  .boutique .split{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:30px;text-align:left}
  .boutique .half{background:rgba(255,255,255,.55);border:1px solid rgba(22,38,31,.12);border-radius:14px;padding:22px 22px}
  .boutique .half h3{font-family:'Poppins',sans-serif;font-size:16px;font-weight:700;color:var(--ink);margin-bottom:8px}
  .boutique .half p{font-size:14.5px;color:var(--ink-2);margin:0;line-height:1.5}

  /* ---------- WHO CARDS ---------- */
  .who-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:34px}
  .who-card{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:24px 22px;transition:transform .25s,box-shadow .25s,border-color .25s}
  .who-card.spotlight{border-color:var(--yellow-deep);box-shadow:0 0 0 3px rgba(255,197,52,.25),var(--shadow);transform:translateY(-3px)}
  .who-card:hover{transform:translateY(-4px);box-shadow:var(--shadow);border-color:var(--yellow-deep)}
  .who-card .role{font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--coral-text);font-weight:700}
  .who-card h3{font-size:17px;margin:8px 0 8px;font-weight:600;line-height:1.25;color:var(--ink)}
  .who-card p{font-size:14px;color:var(--ink-soft);line-height:1.5}
  .who-card .tagme{display:none;margin-top:11px;font-size:10.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--coral-text)}
  .who-card.spotlight .tagme{display:block}

  /* ---------- FINAL CTA ---------- */
  .final{background:var(--forest);color:#fff;border-radius:20px;padding:48px 32px;text-align:center;position:relative;overflow:hidden}
  .final .row{position:relative}
  .final .row:has(.alink){display:flex;gap:14px 26px;justify-content:center;align-items:center;flex-wrap:wrap}
  .final .alink{position:relative;color:var(--cream)}
  .final .alink:hover,.final .alink .ar{color:var(--yellow)}
  .promise::after,.results::after,.boutique::before,.final::before,.final::after,.pdark::after,.mix-inner::after,#view-snapshot .res-hero::after,#view-work .final::before{pointer-events:none}
  .final::before{content:"";position:absolute;inset:0;background-image:radial-gradient(circle at 18% 24%,rgba(255,197,52,.16),transparent 44%),radial-gradient(circle at 84% 80%,rgba(0,0,0,.16),transparent 46%)}
  .final h2{font-size:clamp(25px,4.4vw,40px);font-weight:700;line-height:1.12;position:relative;max-width:22ch;margin:0 auto;letter-spacing:-.015em;color:#fff}
  .final h2 .hl{color:var(--yellow)}
  .final p{position:relative;font-size:clamp(15px,2.3vw,18px);margin:16px auto 28px;max-width:54ch;color:rgba(251,247,238,.86);line-height:1.55}
  .final .btn-yellow{position:relative}
  .final .alt{position:relative;display:block;margin-top:18px;font-size:13.5px;color:rgba(251,247,238,.8)}
  .final .alt a{font-weight:700;color:var(--yellow);text-decoration:underline;text-underline-offset:3px}
  /* Secondary CTA on the forest .final ground reads as an outlined button so it stays visible against the dark background instead of blending into it. #view-work is listed too because its scoped .btn-dark rule outranks a plain .final .btn-dark. */
  .final .btn-dark,#view-work .final .btn-dark{position:relative;background:transparent;color:var(--cream);border:1.5px solid rgba(251,247,238,.6);box-shadow:none}
  .final .btn-dark:hover,.final .btn-dark:active,#view-work .final .btn-dark:hover,#view-work .final .btn-dark:active{background:var(--cream);color:var(--forest);border-color:var(--cream);transform:translateY(-2px)}

  /* ---------- FOOTER ---------- */
  /* One footer on the forest ground: the lockup and blurb on the left, four link columns on the
     right, the small print under a hairline. */
  footer{padding:56px 0 30px;background:var(--forest);color:var(--cream)}
  footer .sf-top{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:36px 64px;align-items:start}
  footer .logo{display:inline-flex;color:var(--cream)}
  footer .logo .lw{color:var(--cream)}
  footer .pf-blurb{font-size:14.5px;color:rgba(251,247,238,.78);line-height:1.6;max-width:42ch;margin-top:16px}
  .foot-links{display:flex;gap:44px;flex-wrap:wrap}
  .foot-col h3{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--yellow);margin-bottom:11px;font-family:'Poppins',sans-serif;font-weight:700}
  .foot-col a{display:block;font-size:14px;color:rgba(251,247,238,.78);text-decoration:none;padding:4px 0;transition:color .2s}
  .foot-col a:hover{color:#fff}
  .copy{margin-top:40px;padding-top:18px;border-top:1px solid rgba(251,247,238,.16);font-size:12px;color:rgba(251,247,238,.62)}
  @media(max-width:1000px){footer .sf-top{grid-template-columns:1fr}}

  /* ---------- STICKY MOBILE CTA ---------- */

  .reveal{opacity:0;transform:translateY(22px);transition:opacity .7s ease,transform .7s ease}
  .reveal.in{opacity:1;transform:none}
  .swap{transition:opacity .26s}
  .swap.fade{opacity:0}

  /* ============ RESPONSIVE (mobile-first refinements) ============ */
  @media(min-width:641px){
    .wrap{padding:0 28px}
  }
  /* tablet/desktop layout switches */
  @media(min-width:901px){
    .hero-grid{grid-template-columns:1.1fr .9fr}
  }
  @media(max-width:900px){
    .hero-grid{grid-template-columns:1fr;gap:30px}
    .receipt{max-width:460px}
    .pillars{grid-template-columns:1fr}
    .reasons{grid-template-columns:1fr}
    .who-grid{grid-template-columns:1fr 1fr}
    .boutique .split{grid-template-columns:1fr}
    .results .quote{margin-top:28px}
  }
  @media(max-width:760px){
    .rgrid{grid-template-columns:1fr 1fr;gap:28px 18px}
    .rung{grid-template-columns:auto 1fr;gap:14px}
    .rung .who{display:none}
    .pains{grid-template-columns:1fr}
  }
  @media(max-width:640px){
    body{font-size:16px}
    section{padding:46px 0}
    .nav-links{display:none}
    .nav-cta{display:none}
    .promise,.diag,.boutique,.final,.results{border-radius:16px}
    .promise{padding:32px 22px}
    .boutique{padding:34px 22px}
    .diag{padding:28px 20px}
    .final{padding:40px 22px}
    .who-grid{grid-template-columns:1fr}
    .btn{width:100%}
    .hero-cta-row .btn{width:100%}
    .topbar-msg{font-size:14px}
    .logo .lw small{display:none}
  }
  @media(min-width:1024px){
    .nav-links{gap:26px}
    .nav-burger{display:none}
  }

/* ===== view system ===== */
.view{}
:root {
    --ink:#16261f;--ink-2:#22332b;--ink-soft:#52615b;
    --forest:#16322a;--forest-2:#0e241e;
    --teal:#1f8a7e;--teal-deep:#15665d;
    --yellow:#ffc534;--yellow-deep:#e8ad1c;--yellow-soft:#fff1cc;--yellow-wash:#fffaf0;
    --coral:#e8623a;--coral-deep:#c64a26;
    --cream:#fbf7ee;--cream-2:#f4eede;--card:#ffffff;
    --line:#e6ddca;--line-soft:#efe8d8;
    --shadow:0 14px 40px rgba(22,38,31,.10);--shadow-lg:0 24px 60px rgba(22,38,31,.14);
  }* {margin:0;padding:0;box-sizing:border-box}html {scroll-behavior:smooth;-webkit-text-size-adjust:100%}body {font-family:'Inter',sans-serif;background:var(--cream);color:var(--ink);line-height:1.6;-webkit-font-smoothing:antialiased;font-size:17px;overflow-x:hidden}#view-snapshot h1, #view-snapshot h2, #view-snapshot h3, #view-snapshot h4 {font-family:'Poppins',sans-serif}#view-snapshot a {color:inherit}#view-snapshot .wrap {max-width:760px;margin:0 auto;padding:0 20px;position:relative}#view-snapshot .wrap-wide {max-width:980px;margin:0 auto;padding:0 20px}#view-snapshot /* NAV */
  nav {position:sticky;top:0;z-index:40;background:rgba(251,247,238,.95);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}#view-snapshot .nav-in {max-width:980px;margin:0 auto;padding:11px 20px;display:flex;align-items:center;justify-content:space-between;gap:16px}#view-snapshot .logo {display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--ink)}#view-snapshot .logo svg {width:28px;height:28px}#view-snapshot .logo .lw {font-family:'Poppins',sans-serif;font-weight:700;font-size:17px;letter-spacing:-.01em}#view-snapshot .nav-back {font-size:13.5px;font-weight:600;color:var(--ink-soft);text-decoration:none;display:inline-flex;align-items:center;gap:6px}#view-snapshot .nav-back:hover {color:var(--teal)}#view-snapshot /* PROGRESS */
  .progress-wrap {position:sticky;top:53px;z-index:39;background:var(--cream);border-bottom:1px solid var(--line)}#view-snapshot .progress-in {max-width:760px;margin:0 auto;padding:12px 20px;display:flex;align-items:center;gap:14px}#view-snapshot .progress-track {flex:1;height:8px;background:var(--cream-2);border-radius:20px;overflow:hidden;border:1px solid var(--line)}#view-snapshot .progress-fill {height:100%;width:0;background:linear-gradient(90deg,var(--yellow),var(--yellow-deep));border-radius:20px;transition:width .4s cubic-bezier(.6,.2,.1,1)}#view-snapshot .progress-label {font-size:12.5px;font-weight:700;color:var(--ink-soft);white-space:nowrap;font-variant-numeric:tabular-nums}#view-snapshot /* INTRO */
  .intro {padding:46px 0 30px;text-align:center}#view-snapshot .sec-tag {display:inline-block;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink);font-weight:700;margin-bottom:16px;background:var(--yellow-soft);border:1px solid var(--yellow);padding:5px 12px;border-radius:30px}#view-snapshot .intro h1 {font-size:clamp(30px,6vw,48px);line-height:1.08;font-weight:700;letter-spacing:-.02em}#view-snapshot .intro h1 .hl {background:linear-gradient(transparent 60%,var(--yellow-soft) 60%);padding:0 .04em}#view-snapshot .intro p {font-size:clamp(16px,2.4vw,19px);color:var(--ink-soft);max-width:54ch;margin:18px auto 0;line-height:1.55}#view-snapshot .intro .meta {display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin:26px 0 30px}#view-snapshot .intro .chip {background:var(--card);border:1px solid var(--line);border-radius:30px;padding:9px 16px;font-size:13px;font-weight:600;color:var(--ink-2);display:inline-flex;align-items:center;gap:8px}#view-snapshot .intro .chip .d {width:7px;height:7px;border-radius:50%;background:var(--yellow);flex:0 0 auto}#view-snapshot .role-pick {margin:8px auto 0;max-width:520px}#view-snapshot .role-pick .rp-label {font-size:13px;color:var(--ink-soft);margin-bottom:10px;font-weight:600}#view-snapshot .role-row {display:inline-flex;background:var(--cream-2);border:1px solid var(--line);border-radius:12px;padding:5px;gap:4px;flex-wrap:wrap;justify-content:center;position:relative}#view-snapshot .role-row button {border:none;background:none;cursor:pointer;padding:9px 14px;border-radius:8px;color:var(--ink-soft);font-family:inherit;font-weight:600;font-size:13px;transition:background .2s,color .2s}#view-snapshot .role-row button.on {background:var(--yellow);color:var(--ink)}#view-snapshot .btn {display:inline-flex;align-items:center;justify-content:center;gap:9px;padding:15px 26px;border-radius:10px;font-weight:600;font-size:16px;text-decoration:none;cursor:pointer;border:none;font-family:inherit;transition:transform .15s,background .2s,box-shadow .2s}#view-snapshot .btn-yellow {background:var(--yellow);color:var(--ink);box-shadow:0 4px 14px rgba(255,197,52,.4)}#view-snapshot .btn-yellow:hover {transform:translateY(-2px);background:var(--yellow-deep)}#view-snapshot .btn-primary {background:var(--coral);color:var(--ink);box-shadow:0 4px 14px rgba(232,98,58,.3)}#view-snapshot .btn-primary:hover {transform:translateY(-2px);box-shadow:0 6px 18px rgba(232,98,58,.45)}#view-snapshot .btn-ghost {background:transparent;color:var(--ink);border:1.5px solid var(--ink)}#view-snapshot .btn-ghost:hover {background:var(--ink);color:var(--cream)}#view-snapshot .btn-light {background:var(--cream-2);color:var(--ink);border:1px solid var(--line)}#view-snapshot .btn-light:hover {background:var(--line-soft)}#view-snapshot /* QUESTION CARD */
  .stage {padding:30px 0 60px;min-height:60vh}#view-snapshot .qcard {background:var(--card);border:1px solid var(--line);border-top:4px solid var(--yellow);border-radius:18px;box-shadow:var(--shadow);padding:32px 28px;opacity:0;transform:translateY(16px);transition:opacity .35s,transform .35s}#view-snapshot .qcard.in {opacity:1;transform:none}#view-snapshot .q-theme {font-size:11.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--coral-text);font-weight:700;margin-bottom:12px;display:flex;align-items:center;gap:9px}#view-snapshot .q-theme .qn {background:var(--yellow-soft);color:var(--ink-2);border-radius:20px;padding:3px 10px;font-size:11px;letter-spacing:.04em}#view-snapshot .q-text {font-size:clamp(19px,3vw,24px);font-weight:600;line-height:1.32;letter-spacing:-.01em;color:var(--ink)}#view-snapshot .q-sub {font-size:14.5px;color:var(--ink-soft);margin-top:10px;line-height:1.5}#view-snapshot .options {display:flex;flex-direction:column;gap:11px;margin-top:24px}#view-snapshot .opt {display:flex;gap:14px;align-items:flex-start;text-align:left;background:var(--cream);border:1.5px solid var(--line);border-radius:13px;padding:17px 18px;cursor:pointer;font-family:inherit;font-size:15.5px;line-height:1.45;color:var(--ink);transition:border-color .18s,background .18s,transform .12s;width:100%}#view-snapshot .opt:hover {border-color:var(--teal);transform:translateY(-1px)}#view-snapshot .opt.sel {border-color:var(--yellow-deep);background:var(--yellow-soft)}#view-snapshot .opt .mk {flex:0 0 24px;height:24px;border-radius:50%;border:2px solid var(--line);display:flex;align-items:center;justify-content:center;font-size:13px;color:#fff;background:#fff;transition:all .18s;margin-top:1px}#view-snapshot .opt.sel .mk {background:var(--yellow-deep);border-color:var(--yellow-deep)}#view-snapshot .opt .ot {flex:1}#view-snapshot .scale-row {display:flex;gap:8px;margin-top:24px;flex-wrap:wrap}#view-snapshot .scale-btn {flex:1;min-width:84px;background:var(--cream);border:1.5px solid var(--line);border-radius:12px;padding:16px 8px;cursor:pointer;font-family:inherit;text-align:center;transition:all .15s}#view-snapshot .scale-btn:hover {border-color:var(--teal)}#view-snapshot .scale-btn.sel {border-color:var(--yellow-deep);background:var(--yellow-soft)}#view-snapshot .scale-btn .sv {font-family:'Poppins',sans-serif;font-size:22px;font-weight:800;color:var(--ink)}#view-snapshot .scale-btn .sl {font-size:11.5px;color:var(--ink-soft);margin-top:4px;line-height:1.3}#view-snapshot .qnav {display:flex;justify-content:space-between;align-items:center;margin-top:26px;gap:12px}#view-snapshot .qnav .back {background:none;border:none;color:var(--ink-soft);font-weight:600;font-size:14px;cursor:pointer;font-family:inherit;display:inline-flex;align-items:center;gap:6px;padding:8px 4px}#view-snapshot .qnav .back:hover {color:var(--ink)}#view-snapshot .qnav .back[disabled] {opacity:.35;cursor:default}#view-snapshot .qnav .hint {font-size:13px;color:var(--ink-soft)}#view-snapshot /* RESULTS */
  .results {padding:30px 0 70px;opacity:0;transition:opacity .5s}#view-snapshot .results.in {opacity:1}#view-snapshot .res-hero {background:var(--forest);color:var(--cream);border-radius:20px;padding:38px 30px;text-align:center;position:relative;overflow:hidden}#view-snapshot .res-hero::after {content:"";position:absolute;right:-90px;top:-90px;width:280px;height:280px;border-radius:50%;background:radial-gradient(circle,rgba(255,197,52,.2),transparent 70%)}#view-snapshot .res-hero .rk {font-size:11.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--yellow);font-weight:700;position:relative}#view-snapshot .res-hero .scorebig {font-family:'Poppins',sans-serif;font-size:clamp(54px,13vw,86px);font-weight:800;line-height:1;color:#fff;position:relative;margin-top:6px}#view-snapshot .res-hero .scorebig small {font-size:.4em;color:rgba(251,247,238,.6);font-weight:600}#view-snapshot .res-hero .pct {position:relative;font-size:14px;color:rgba(251,247,238,.7);margin-top:4px}#view-snapshot .res-hero .arch {position:relative;display:inline-flex;align-items:center;gap:10px;margin-top:20px;background:rgba(255,197,52,.16);border:1px solid var(--yellow);border-radius:40px;padding:9px 20px}#view-snapshot .res-hero .arch .star {color:var(--yellow);font-size:16px}#view-snapshot .res-hero .arch .an {font-family:'Poppins',sans-serif;font-weight:700;font-size:17px;color:#fff}#view-snapshot .res-hero .arch .axx {font-size:12.5px;color:rgba(251,247,238,.75)}#view-snapshot .res-block {background:var(--card);border:1px solid var(--line);border-radius:18px;padding:30px 26px;margin-top:18px;box-shadow:var(--shadow)}#view-snapshot .res-block h2 {font-size:clamp(20px,3.4vw,26px);font-weight:700;letter-spacing:-.01em;margin-bottom:6px;color:var(--forest)}#view-snapshot .res-block .bsub {font-size:14.5px;color:var(--ink-soft);margin-bottom:22px;line-height:1.55}#view-snapshot .arch-desc {font-size:15.5px;color:var(--ink-2);line-height:1.6}#view-snapshot .arch-desc b {color:var(--ink)}#view-snapshot /* radar */
  .radar-wrap {display:flex;justify-content:center;padding:6px 0 4px}#view-snapshot .radar-wrap svg {width:100%;max-width:440px;height:auto}#view-snapshot /* theme bars */
  .theme-row {display:flex;align-items:center;gap:14px;padding:11px 0;border-bottom:1px solid var(--line-soft)}#view-snapshot .theme-row:last-child {border-bottom:none}#view-snapshot .theme-row .tname {flex:0 0 42%;font-size:14.5px;font-weight:600;color:var(--ink)}#view-snapshot .theme-row .tbar {flex:1;height:9px;background:var(--cream-2);border-radius:20px;overflow:hidden}#view-snapshot .theme-row .tfill {height:100%;border-radius:20px;transition:width .9s cubic-bezier(.6,.2,.1,1)}#view-snapshot .theme-row .tval {flex:0 0 38px;text-align:right;font-size:13px;font-weight:700;color:var(--ink-soft);font-variant-numeric:tabular-nums}#view-snapshot .tleg {display:flex;gap:16px;flex-wrap:wrap;margin-top:16px;font-size:12px;color:var(--ink-soft)}#view-snapshot .tleg span {display:inline-flex;align-items:center;gap:6px}#view-snapshot .tleg .sw {width:11px;height:11px;border-radius:3px}#view-snapshot .focus-list {display:flex;flex-direction:column;gap:12px;margin-top:4px}#view-snapshot .focus-item {display:flex;gap:14px;align-items:flex-start;background:var(--cream);border:1px solid var(--line);border-left:4px solid var(--coral);border-radius:12px;padding:16px 18px}#view-snapshot .focus-item .fn {font-family:'Poppins',sans-serif;font-weight:800;font-size:15px;color:var(--coral-text);flex:0 0 auto}#view-snapshot .focus-item h4 {font-size:15.5px;font-weight:600;margin-bottom:4px}#view-snapshot .focus-item p {font-size:14px;color:var(--ink-soft);line-height:1.5}#view-snapshot .strength-item {border-left-color:var(--teal)}#view-snapshot .strength-item .fn {color:var(--teal-deep)}#view-snapshot .res-cta {background:linear-gradient(135deg,var(--yellow),var(--yellow-deep));border-radius:18px;padding:34px 28px;text-align:center;margin-top:18px;position:relative;overflow:hidden}#view-snapshot .res-cta::before {content:"";position:absolute;inset:0;background-image:radial-gradient(circle at 16% 22%,rgba(255,255,255,.32),transparent 44%)}#view-snapshot .res-cta h2 {position:relative;font-size:clamp(21px,3.6vw,30px);font-weight:700;color:var(--ink);letter-spacing:-.01em;max-width:24ch;margin:0 auto;line-height:1.16}#view-snapshot .res-cta p {position:relative;font-size:15px;color:var(--ink-2);margin:12px auto 22px;max-width:50ch;line-height:1.5}#view-snapshot .res-cta .row {position:relative;display:flex;gap:12px;justify-content:center;flex-wrap:wrap}#view-snapshot .res-cta .btn-dark {background:var(--ink);color:var(--cream)}#view-snapshot .res-cta .btn-dark:hover {background:var(--forest);transform:translateY(-2px)}#view-snapshot /* lead capture */
  .lead {background:var(--card);border:1px solid var(--line);border-radius:18px;padding:28px 26px;margin-top:18px}#view-snapshot .lead h3 {font-size:18px;font-weight:700;margin-bottom:6px}#view-snapshot .lead p {font-size:14px;color:var(--ink-soft);margin-bottom:18px;line-height:1.5}#view-snapshot .lead .frow {display:flex;gap:10px;flex-wrap:wrap}#view-snapshot .lead input {flex:1;min-width:200px;padding:14px 16px;border:1.5px solid var(--line);border-radius:10px;font-family:inherit;font-size:15px;background:var(--cream);color:var(--ink)}#view-snapshot .lead input:focus {outline:none;border-color:var(--yellow-deep)}#view-snapshot .lead .fine {font-size:12px;color:var(--ink-soft);margin-top:12px}#view-snapshot .lead.done {text-align:center}#view-snapshot .lead.done .check {width:54px;height:54px;border-radius:50%;background:var(--yellow-soft);border:2px solid var(--yellow);display:flex;align-items:center;justify-content:center;font-size:26px;margin:0 auto 14px;color:var(--yellow-deep)}#view-snapshot .restart {text-align:center;margin-top:24px}#view-snapshot .restart button {background:none;border:none;color:var(--ink-soft);font-weight:600;font-size:13.5px;cursor:pointer;font-family:inherit;text-decoration:underline;text-underline-offset:3px}#view-snapshot .restart button:hover {color:var(--ink)}#view-snapshot .footnote {text-align:center;font-size:12px;color:var(--ink-soft);margin-top:26px;line-height:1.5}

  @media(max-width:560px){body {font-size:16px}#view-snapshot .qcard {padding:26px 20px}#view-snapshot .res-hero, #view-snapshot .res-block, #view-snapshot .res-cta, #view-snapshot .lead {padding-left:20px;padding-right:20px}#view-snapshot .theme-row .tname {flex-basis:48%;font-size:13.5px}#view-snapshot .scale-btn {min-width:0;flex:1 1 28%}#view-snapshot .btn {width:100%}#view-snapshot .res-cta .row .btn {width:100%}#view-snapshot .nav-back {display:none}
  }

:root {
    --ink:#16261f;--ink-2:#22332b;--ink-soft:#52615b;
    --forest:#16322a;--forest-2:#0e241e;
    --teal:#1f8a7e;--teal-deep:#15665d;
    --yellow:#ffc534;--yellow-deep:#e8ad1c;--yellow-soft:#fff1cc;--yellow-wash:#fffaf0;
    --coral:#e8623a;--coral-deep:#c64a26;
    --cream:#fbf7ee;--cream-2:#f4eede;--card:#ffffff;
    --line:#e6ddca;--line-soft:#efe8d8;
    --shadow:0 14px 40px rgba(22,38,31,.10);--shadow-lg:0 24px 60px rgba(22,38,31,.14);
  }* {margin:0;padding:0;box-sizing:border-box}html {scroll-behavior:smooth;-webkit-text-size-adjust:100%}body {font-family:'Inter',sans-serif;background:var(--cream);color:var(--ink);line-height:1.6;-webkit-font-smoothing:antialiased;font-size:17px;overflow-x:hidden}#view-work h1, #view-work h2, #view-work h3, #view-work h4 {font-family:'Poppins',sans-serif}#view-work a {color:inherit}#view-work img, #view-work svg {max-width:100%}#view-work .wrap {max-width:1120px;margin:0 auto;padding:0 20px;position:relative}#view-work .narrow {max-width:780px}#view-work /* NAV */
  nav {position:sticky;top:0;z-index:50;background:rgba(251,247,238,.95);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}#view-work .nav-in {max-width:1120px;margin:0 auto;padding:11px 20px;display:flex;align-items:center;justify-content:space-between;gap:16px}#view-work .logo {display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--ink)}#view-work .logo svg {width:28px;height:28px}#view-work .logo .lw {font-family:'Poppins',sans-serif;font-weight:700;font-size:17px;letter-spacing:-.01em}#view-work .nav-actions {display:flex;align-items:center;gap:14px}#view-work .nav-back {font-size:13.5px;font-weight:600;color:var(--ink-soft);text-decoration:none}#view-work .nav-back:hover {color:var(--teal)}#view-work .nav-cta {background:var(--coral);color:var(--ink);padding:9px 16px;border-radius:8px;font-weight:600;font-size:13.5px;text-decoration:none;transition:transform .15s,background .2s}#view-work .nav-cta:hover {transform:translateY(-1px)}#view-work .btn {display:inline-flex;align-items:center;justify-content:center;gap:9px;padding:15px 26px;border-radius:10px;font-weight:600;font-size:16px;text-decoration:none;cursor:pointer;border:none;font-family:inherit;transition:transform .15s,background .2s,box-shadow .2s}#view-work .btn-yellow {background:var(--yellow);color:var(--ink);box-shadow:0 4px 14px rgba(255,197,52,.4)}#view-work .btn-yellow:hover {transform:translateY(-2px);background:var(--yellow-deep)}#view-work .btn-primary {background:var(--coral);color:var(--ink);box-shadow:0 4px 14px rgba(232,98,58,.3)}#view-work .btn-primary:hover {transform:translateY(-2px);box-shadow:0 6px 18px rgba(232,98,58,.45)}#view-work .btn-ghost {background:transparent;color:var(--ink);border:1.5px solid var(--ink)}#view-work .btn-ghost:hover {background:var(--ink);color:var(--cream)}#view-work .btn-dark {background:var(--ink);color:var(--cream)}#view-work .btn-dark:hover {background:var(--forest);transform:translateY(-2px)}#view-work /* HERO */
  header {padding:48px 0 36px;text-align:center}#view-work .sec-tag {display:inline-block;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink);font-weight:700;margin-bottom:16px;background:var(--yellow-soft);border:1px solid var(--yellow);padding:5px 12px;border-radius:30px}#view-work header h1 {font-size:clamp(32px,6vw,54px);line-height:1.06;font-weight:700;letter-spacing:-.02em;max-width:18ch;margin:0 auto}#view-work header h1 .hl {background:linear-gradient(transparent 60%,var(--yellow-soft) 60%);padding:0 .04em}#view-work header p {font-size:clamp(16px,2.4vw,20px);color:var(--ink-soft);max-width:60ch;margin:20px auto 0;line-height:1.55}#view-work header .hero-cta {margin-top:28px;display:flex;gap:12px;justify-content:center;flex-wrap:wrap}#view-work /* PRINCIPLE STRIP */
  .principles {background:var(--forest);color:var(--cream);padding:40px 0;position:relative;overflow:hidden}#view-work .principles::after {content:"";position:absolute;right:-90px;top:-90px;width:260px;height:260px;border-radius:50%;background:radial-gradient(circle,rgba(255,197,52,.16),transparent 70%)}#view-work .principles .grid {display:grid;grid-template-columns:repeat(3,1fr);gap:22px;position:relative;z-index:2}#view-work .principle .pn {font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--yellow);font-weight:700;margin-bottom:8px}#view-work .principle h3 {font-size:18px;color:#fff;font-weight:600;margin-bottom:6px;line-height:1.25}#view-work .principle p {font-size:14.5px;color:rgba(251,247,238,.78);line-height:1.5}#view-work section {padding:58px 0}#view-work .shead {text-align:center;max-width:60ch;margin:0 auto 8px}#view-work .shead h2 {font-size:clamp(26px,4.6vw,40px);line-height:1.12;font-weight:700;letter-spacing:-.018em}#view-work .shead h2 .hl {background:linear-gradient(transparent 60%,var(--yellow-soft) 60%);padding:0 .04em}#view-work .shead p {font-size:clamp(16px,2.3vw,18.5px);color:var(--ink-soft);margin-top:14px;line-height:1.6}#view-work /* JOURNEY crawl-walk-run */
  .cwr {display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:38px}#view-work .cwr .stage {background:var(--card);border:1px solid var(--line);border-top:4px solid var(--yellow);border-radius:16px;padding:26px 24px;position:relative}#view-work .cwr .stage .tag {font-size:11px;letter-spacing:.14em;text-transform:uppercase;font-weight:700;color:var(--coral-text);margin-bottom:6px}#view-work .cwr .stage .big {font-family:'Poppins',sans-serif;font-size:13px;font-weight:700;color:var(--ink-soft);letter-spacing:.06em;text-transform:uppercase}#view-work .cwr .stage h3 {font-size:21px;font-weight:700;margin:8px 0 8px;color:var(--ink)}#view-work .cwr .stage p {font-size:14.5px;color:var(--ink-soft);line-height:1.55}#view-work .cwr .stage .mods {margin-top:14px;font-size:13px;color:var(--ink-2)}#view-work .cwr .stage .mods b {color:var(--teal-deep);font-weight:600}#view-work /* MODULE BUILDER */
  .builder {background:var(--card);border:1px solid var(--line);border-radius:20px;box-shadow:var(--shadow);padding:30px 26px;margin-top:38px}#view-work .builder .bhead {display:flex;justify-content:space-between;align-items:flex-start;gap:16px;flex-wrap:wrap;margin-bottom:8px}#view-work .builder .bhead h3 {font-size:20px;font-weight:700}#view-work .builder .bhead p {font-size:14px;color:var(--ink-soft);margin-top:4px;max-width:52ch}#view-work .mod-grid {display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin-top:18px}#view-work .mod {border:1.5px solid var(--line);border-radius:14px;padding:20px 20px;cursor:pointer;transition:border-color .18s,background .18s,transform .12s;background:var(--cream);position:relative}#view-work .mod:hover {border-color:var(--teal);transform:translateY(-2px)}#view-work .mod.on {border-color:var(--yellow-deep);background:var(--yellow-wash)}#view-work .mod .mtop {display:flex;align-items:flex-start;gap:12px}#view-work .mod .check {flex:0 0 24px;height:24px;border-radius:7px;border:2px solid var(--line);display:flex;align-items:center;justify-content:center;font-size:14px;color:#fff;background:#fff;transition:all .18s;margin-top:1px}#view-work .mod.on .check {background:var(--yellow-deep);border-color:var(--yellow-deep)}#view-work .mod .mname {font-family:'Poppins',sans-serif;font-size:16.5px;font-weight:700;color:var(--ink);line-height:1.2}#view-work .mod .mphase {font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;font-weight:700;color:var(--coral-text);margin-top:3px}#view-work .mod .mdesc {font-size:13.5px;color:var(--ink-soft);line-height:1.5;margin-top:10px}#view-work .mod .mmeta {font-size:12px;color:var(--ink-2);margin-top:10px;display:flex;flex-wrap:wrap;gap:6px}#view-work .mod .pill {background:rgba(31,138,126,.1);color:var(--teal-deep);border-radius:20px;padding:3px 10px;font-weight:600}#view-work .mod .out {font-size:12.5px;color:var(--ink-2);margin-top:9px;font-style:italic}#view-work .summary {margin-top:20px;background:var(--forest);color:var(--cream);border-radius:14px;padding:22px 22px;display:flex;justify-content:space-between;align-items:center;gap:18px;flex-wrap:wrap}#view-work .summary .sl {font-size:14px;color:rgba(251,247,238,.8);line-height:1.5}#view-work .summary .sl b {color:var(--yellow);font-weight:700}#view-work .summary .picked {font-family:'Poppins',sans-serif;font-weight:600;color:#fff;font-size:15px;margin-top:4px}#view-work .summary a {flex:0 0 auto}#view-work /* PATHWAYS */
  .paths {display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:38px}#view-work .path {background:var(--card);border:1px solid var(--line);border-radius:16px;padding:26px 24px;display:flex;flex-direction:column}#view-work .path.feat {border-color:var(--yellow-deep);box-shadow:0 0 0 3px rgba(255,197,52,.2),var(--shadow)}#view-work .path .pbadge {align-self:flex-start;font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;font-weight:700;color:var(--coral-text);margin-bottom:8px}#view-work .path .feat-badge {background:var(--yellow);color:var(--ink);border-radius:20px;padding:4px 12px}#view-work .path h3 {font-size:20px;font-weight:700;margin-bottom:4px}#view-work .path .who {font-size:13px;color:var(--ink-soft);margin-bottom:14px}#view-work .path ul {list-style:none;margin:0 0 18px;flex:1}#view-work .path li {font-size:14px;color:var(--ink-2);padding:7px 0;border-bottom:1px solid var(--line-soft);display:flex;gap:9px;align-items:flex-start}#view-work .path li:last-child {border-bottom:none}#view-work .path li .ar {color:var(--yellow-deep);font-weight:700;flex:0 0 auto}#view-work .path .pfoot {font-size:13px;color:var(--ink-soft)}#view-work /* MIX principle band */
  .mixband {background:var(--yellow-wash);border-top:3px solid var(--yellow);border-bottom:1px solid var(--line)}#view-work .mixband .in {display:grid;grid-template-columns:repeat(3,1fr);gap:22px;padding:42px 0}#view-work .mixitem {text-align:center}#view-work .mixitem .mi {font-family:'Poppins',sans-serif;font-size:30px;font-weight:800;color:var(--yellow-deep);line-height:1}#view-work .mixitem h3 {font-size:16px;font-weight:700;margin:8px 0 6px}#view-work .mixitem p {font-size:14px;color:var(--ink-soft);line-height:1.5;max-width:34ch;margin:0 auto}#view-work /* BOUTIQUE reuse */
  .boutique {background:linear-gradient(135deg,var(--yellow),var(--yellow-deep));border-radius:20px;padding:42px 32px;text-align:center;position:relative;overflow:hidden}#view-work .boutique::before {content:"";position:absolute;inset:0;background-image:radial-gradient(circle at 16% 22%,rgba(255,255,255,.3),transparent 44%)}#view-work .boutique h2 {position:relative;font-size:clamp(23px,4.2vw,36px);font-weight:700;color:var(--ink);letter-spacing:-.015em;line-height:1.14;max-width:24ch;margin:0 auto}#view-work .boutique p {position:relative;font-size:clamp(15px,2.3vw,17.5px);color:var(--ink-2);margin:14px auto 0;max-width:58ch;line-height:1.55}#view-work /* FINAL */
  .final {background:var(--forest);color:#fff;border-radius:20px;padding:50px 32px;text-align:center;position:relative;overflow:hidden}#view-work .final::before {content:"";position:absolute;inset:0;background-image:radial-gradient(circle at 18% 24%,rgba(255,197,52,.16),transparent 44%),radial-gradient(circle at 84% 80%,rgba(0,0,0,.16),transparent 46%)}#view-work .final h2 {position:relative;font-size:clamp(25px,4.2vw,40px);font-weight:700;line-height:1.12;max-width:22ch;margin:0 auto;color:#fff}#view-work .final h2 .hl {color:var(--yellow)}#view-work .final p {position:relative;font-size:clamp(15px,2.3vw,18px);margin:16px auto 28px;max-width:54ch;color:rgba(251,247,238,.86);line-height:1.55}#view-work .final .row {position:relative;display:flex;gap:12px;justify-content:center;flex-wrap:wrap}#view-work .reveal {opacity:0;transform:translateY(20px);transition:opacity .7s,transform .7s}#view-work .reveal.in {opacity:1;transform:none}

  @media(max-width:900px){#view-work .cwr, #view-work .paths, #view-work .principles .grid, #view-work .mixband .in {grid-template-columns:1fr}#view-work .mod-grid {grid-template-columns:1fr}#view-work .principles .grid {gap:24px}#view-work .mixband .in {gap:30px;padding:34px 0}
  }

  /* snapshot vs diagnostic comparison */
  .twopath{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:30px}
  .tp-card{border-radius:16px;padding:28px 26px;display:flex;flex-direction:column;border:1px solid var(--line)}
  .tp-card .tp-k{font-size:11px;letter-spacing:.12em;text-transform:uppercase;font-weight:700;margin-bottom:10px}
  .tp-card h3{font-family:'Poppins',sans-serif;font-size:20px;font-weight:700;line-height:1.2;margin-bottom:14px}
  .tp-card ul{list-style:none;margin:0 0 20px;flex:1}
  .tp-card li{font-size:14.5px;padding:8px 0;display:flex;gap:10px;align-items:flex-start;line-height:1.45;border-bottom:1px solid rgba(0,0,0,.06)}
  .tp-card li:last-child{border-bottom:none}
  .tp-card li .ic{flex:0 0 auto;font-weight:700}
  .tp-card .tp-note{margin-top:10px;font-size:13px;opacity:.8}
  .tp-snap{background:var(--yellow-wash);border-color:var(--yellow-deep)}
  .tp-snap .tp-k{color:var(--coral-text)}
  .tp-snap li .ic{color:var(--yellow-deep)}
  .tp-diag{background:var(--forest);color:var(--cream);border-color:var(--forest)}
  .tp-diag h3{color:#fff}
  .tp-diag .tp-k{color:var(--yellow)}
  .tp-diag li{color:rgba(251,247,238,.88);border-bottom-color:rgba(251,247,238,.12)}
  .tp-diag li .ic{color:var(--yellow)}
  @media(max-width:860px){.twopath{grid-template-columns:1fr}}


  /* north page */
  .north-video{margin:26px 0 0;border-radius:16px;overflow:hidden;box-shadow:var(--shadow-lg);background:#0c1a2b}
  .north-video video{width:100%;display:block}
  .north-video .video-fb{padding:0 0 4px;text-align:center;background:#0c1a2b}
  .north-video .video-fb img{width:100%;display:block}
  .north-video .video-fb p{color:rgba(251,247,238,.75);font-size:13px;padding:12px 16px}
  .ns-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:28px}
  .ns-card{background:var(--card);border:1px solid var(--line);border-radius:16px;overflow:hidden;display:flex;flex-direction:column}
  .ns-card .ns-img{width:100%;display:block;border-bottom:1px solid var(--line)}
  .ns-card figcaption{padding:16px 18px;font-size:13.5px;color:var(--ink-soft);line-height:1.55}
  .ns-card figcaption b{color:var(--ink);display:block;margin-bottom:4px}
  @media(max-width:900px){.ns-grid{grid-template-columns:1fr}}
  /* coaches page */
  /* ---------- COACHES PAGE ---------- */
  .eb-line{display:flex;align-items:center;gap:10px;font-size:12px;letter-spacing:.16em;text-transform:uppercase;font-weight:700;margin-bottom:6px}
  .eb-line::before{content:"";width:18px;height:2px;background:currentColor;border-radius:2px;flex:0 0 auto}
  .founder{background:#faeee3;padding:56px 0}
  .founder-grid{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}
  .founder-copy h2.dh{font-size:clamp(34px,4.6vw,48px);color:var(--ink);margin:6px 0 18px}
  .founder-copy p{font-size:15.5px;color:var(--ink-2);line-height:1.65;max-width:56ch}
  .founder-copy p+p{margin-top:14px}
  .founder-copy .alt-cta{margin-top:26px;gap:18px}
  .founder-photo{margin:0;border-radius:18px;overflow:hidden;box-shadow:0 14px 40px rgba(22,38,31,.14);aspect-ratio:1/1;background:var(--cream-2)}
  .founder-photo img{display:block;width:100%;height:100%;object-fit:cover}
  .team-band{background:#e9f0ea;padding:60px 0 48px}
  .team-band .lede{max-width:50ch}
  .coach-list{border-top:1px solid rgba(22,38,31,.12);margin-top:30px}
  .coach-row{display:grid;grid-template-columns:180px 1fr;gap:36px;padding:36px 0;border-bottom:1px solid rgba(22,38,31,.12);align-items:start}
  .coach-row img{width:180px;aspect-ratio:4/5;object-fit:cover;border-radius:16px;background:#fff;box-shadow:0 8px 24px rgba(22,38,31,.08);display:block}
  .coach-row h3{font-family:'Poppins',sans-serif;font-size:24px;font-weight:700;color:var(--ink);line-height:1.15}
  .coach-role{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--teal-deep);font-weight:700;margin:6px 0 14px}
  .coach-row p{font-size:14.5px;color:var(--ink-2);line-height:1.62;max-width:66ch}
  .coach-row p+p{margin-top:12px}
  @media(max-width:860px){.founder-grid{grid-template-columns:1fr;gap:26px}.founder-photo{max-width:420px}.coach-row{grid-template-columns:1fr;gap:16px}.coach-row img{width:150px}}
  /* ===== shared styles for added content pages (overview/advisor/course/book/coaching/resources) ===== */
  .btn-dark{background:var(--ink);color:var(--cream)}
  .btn-dark:hover{background:var(--forest);transform:translateY(-2px)}
  .btn-light{background:var(--cream-2);color:var(--ink);border:1px solid var(--line)}
  .btn-light:hover{background:var(--line-soft)}
  /* On the forest mix panel the light button inherits cream text, so it becomes an outlined button there. */
  .mix-inner .btn-light,#view-work .mix-inner .btn-light{background:transparent;color:var(--cream);border:1.5px solid rgba(251,247,238,.6);box-shadow:none}
  .mix-inner .btn-light:hover,.mix-inner .btn-light:active,#view-work .mix-inner .btn-light:hover,#view-work .mix-inner .btn-light:active{background:var(--cream);color:var(--forest);border-color:var(--cream);transform:translateY(-2px)}
  .mix-result{margin-top:18px;border-radius:16px;overflow:hidden;animation:mixIn .4s ease}
  @keyframes mixIn{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
  .mix-inner{background:var(--forest);color:var(--cream);padding:30px 28px;border-radius:16px;position:relative;overflow:hidden}
  .mix-inner::after{content:"";position:absolute;right:-80px;top:-80px;width:230px;height:230px;border-radius:50%;background:radial-gradient(circle,rgba(255,197,52,.16),transparent 70%)}
  .mix-inner .mix-k{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--yellow);font-weight:700;margin-bottom:8px;position:relative;z-index:2}
  .mix-inner h3{font-family:'Poppins',sans-serif;font-size:clamp(20px,3vw,26px);font-weight:700;color:#fff;line-height:1.18;position:relative;z-index:2;max-width:26ch}
  .mix-inner .mix-lead{font-size:15px;color:rgba(251,247,238,.84);line-height:1.55;margin-top:12px;position:relative;z-index:2;max-width:60ch}
  .mix-list{margin-top:18px;display:flex;flex-direction:column;gap:9px;position:relative;z-index:2}
  .mix-item{display:flex;gap:11px;align-items:flex-start;font-size:14px;color:rgba(251,247,238,.92);line-height:1.45}
  .mix-item .mi-ic{flex:0 0 auto;color:var(--yellow);font-weight:700;margin-top:1px}
  .mix-item b{color:#fff;font-weight:700}
  .mix-cta{margin-top:22px;display:flex;gap:10px;flex-wrap:wrap;position:relative;z-index:2}
  .mix-fine{font-size:12.5px;color:rgba(251,247,238,.6);margin-top:16px;position:relative;z-index:2;line-height:1.5}
  .page{padding-top:0}
  .page .phero{padding:46px 0 30px;text-align:center}
  .page .phero .eyebrow{font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--coral-text);font-weight:700;margin-bottom:14px}
  .page .phero h1{font-size:clamp(30px,5.6vw,50px);line-height:1.07;font-weight:700;letter-spacing:-.02em;max-width:20ch;margin:0 auto}
  .page .phero h1 .hl{background:linear-gradient(transparent 60%,var(--yellow-soft) 60%);padding:0 .04em}
  .page .phero p.sub{font-size:clamp(16px,2.3vw,20px);color:var(--ink-soft);max-width:60ch;margin:18px auto 0;line-height:1.55}
  .page .phero .cta-row{margin-top:26px;display:flex;gap:14px 26px;justify-content:center;align-items:center;flex-wrap:wrap}
  .page section{padding:50px 0}
  .page .ptag{display:inline-block;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink);font-weight:700;margin-bottom:14px;background:var(--yellow-soft);border:1px solid var(--yellow);padding:5px 12px;border-radius:30px}
  .page h2.ph{font-size:clamp(25px,4.4vw,38px);line-height:1.12;font-weight:700;letter-spacing:-.018em;max-width:24ch}
  .page h2.ph.ctr{margin-left:auto;margin-right:auto;text-align:center}
  .page h2.ph .hl{background:linear-gradient(transparent 60%,var(--yellow-soft) 60%);padding:0 .04em}
  .page .plead{font-size:clamp(16px,2.2vw,18px);color:var(--ink-soft);max-width:64ch;margin-top:14px;line-height:1.6}
  .page .plead.ctr{margin-left:auto;margin-right:auto;text-align:center}
  /* stat band */
  .pstats{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:30px}
  .pstat{text-align:center;background:var(--card);border:1px solid var(--line);border-top:3px solid var(--yellow);border-radius:14px;padding:22px 14px}
  .pstat .n{font-family:'Poppins',sans-serif;font-size:clamp(26px,4vw,38px);font-weight:800;color:var(--ink);line-height:1}
  .pstat .l{font-size:12.5px;color:var(--ink-soft);margin-top:8px;line-height:1.35}
  /* feature cards */
  .pcards{display:grid;gap:16px;margin-top:30px}
  .pcards.c2{grid-template-columns:repeat(2,1fr)}
  .pcards.c3{grid-template-columns:repeat(3,1fr)}
  .pcard{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:26px 24px;border-top:3px solid var(--yellow)}
  .pcard .pnum{font-family:'Poppins',sans-serif;font-size:13px;font-weight:800;color:var(--coral-text);letter-spacing:.04em;margin-bottom:8px}
  .pcard h3{font-size:18px;font-weight:600;margin-bottom:8px;line-height:1.25;color:var(--ink)}
  .pcard p{font-size:14.5px;color:var(--ink-soft);line-height:1.55}
  .pcard p + p{margin-top:10px}
  .pcard p b{color:var(--ink-2)}
  /* dark band */
  .pdark{background:var(--forest);color:var(--cream);border-radius:20px;padding:40px 32px;position:relative;overflow:hidden}
  .pdark::after{content:"";position:absolute;right:-90px;top:-90px;width:260px;height:260px;border-radius:50%;background:radial-gradient(circle,rgba(255,197,52,.16),transparent 70%)}
  .pdark .ptag{background:rgba(255,197,52,.16);border-color:var(--yellow);color:var(--yellow)}
  .pdark h2{color:#fff;position:relative;z-index:2}
  .pdark .plead{color:rgba(251,247,238,.8);position:relative;z-index:2}
  .pdark-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:28px;position:relative;z-index:2}
  .pdark-item{background:rgba(251,247,238,.06);border:1px solid rgba(255,197,52,.22);border-radius:14px;padding:22px 20px}
  .pdark-item .k{font-family:'Poppins',sans-serif;font-size:12px;font-weight:700;color:var(--yellow);letter-spacing:.06em;text-transform:uppercase;margin-bottom:8px}
  .pdark-item h3{font-size:17px;color:#fff;font-weight:600;margin-bottom:6px;line-height:1.25}
  .pdark-item p{font-size:14px;color:rgba(251,247,238,.78);line-height:1.5}
  /* two-column compare */
  .compare{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:30px}
  .compare .col{border-radius:16px;padding:26px 24px;border:1px solid var(--line)}
  .compare .col.without{background:var(--cream-2)}
  .compare .col.with{background:var(--yellow-wash);border-color:var(--yellow-deep)}
  .compare .col h3{font-size:16px;font-weight:700;margin-bottom:14px;display:flex;align-items:center;gap:9px}
  .compare .col.without h3{color:var(--ink-soft)}
  .compare .col.with h3{color:var(--ink)}
  .compare .col ul{list-style:none}
  .compare .col li{font-size:14px;padding:9px 0;border-bottom:1px solid rgba(0,0,0,.06);line-height:1.45;display:flex;gap:10px;align-items:flex-start}
  .compare .col li:last-child{border-bottom:none}
  .compare .col li .ic{flex:0 0 auto;font-weight:700}
  .compare .without li .ic{color:var(--coral)}
  .compare .with li .ic{color:var(--teal)}
  /* steps */
  .psteps{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:30px}
  .pstep{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:24px 22px;position:relative}
  .pstep .sn{font-family:'Poppins',sans-serif;font-size:30px;font-weight:800;color:var(--cream-2);line-height:1;position:absolute;top:16px;right:20px}
  .pstep .sk{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--coral-text);font-weight:700;margin-bottom:6px}
  .pstep h3{font-size:17px;font-weight:600;margin-bottom:7px;color:var(--ink);max-width:14ch}
  .pstep p{font-size:14px;color:var(--ink-soft);line-height:1.5}
  /* quote */
  .pquote{background:var(--card);border:1px solid var(--line);border-left:4px solid var(--yellow);border-radius:14px;padding:26px 26px;margin-top:24px}
  .pquote p{font-family:'Poppins',sans-serif;font-size:clamp(17px,2.4vw,21px);font-weight:500;color:var(--ink);line-height:1.4}
  .pquote .by{display:block;font-family:'Inter',sans-serif;font-size:13px;color:var(--ink-soft);margin-top:12px;font-weight:600}
  .pquote-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:24px}
  .pquote-grid .pquote{margin-top:0}
  .pquote-grid .pquote p{font-size:15.5px}
  /* curriculum list */
  .curric{display:grid;gap:14px;margin-top:28px}
  .curric .part{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:22px 24px}
  .curric .part .pt{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--coral-text);font-weight:700;margin-bottom:6px}
  .curric .part h3{font-size:18px;font-weight:600;margin-bottom:10px;color:var(--ink)}
  .curric .part ul{margin:0;padding-left:18px}
  .curric .part li{font-size:14px;color:var(--ink-soft);line-height:1.5;margin-bottom:5px}
  .curric .part li b{color:var(--ink-2)}
  /* pricing */
  .price{background:var(--card);border:2px solid var(--yellow-deep);border-radius:18px;padding:30px 28px;margin-top:28px;box-shadow:var(--shadow);max-width:560px;margin-left:auto;margin-right:auto;text-align:center}
  .price .pp{font-family:'Poppins',sans-serif;font-size:36px;font-weight:800;color:var(--ink);line-height:1}
  .price .pp small{font-size:15px;color:var(--ink-soft);font-weight:600}
  .price .alt{font-size:14px;color:var(--ink-soft);margin:8px 0 18px}
  .price .feats{display:grid;grid-template-columns:1fr 1fr;gap:8px 18px;text-align:left;margin-top:16px}
  .price .feats div{font-size:13.5px;color:var(--ink-2);display:flex;gap:8px;align-items:flex-start}
  .price .feats .ic{color:var(--teal);font-weight:700;flex:0 0 auto}
  /* fit columns */
  .fitcols{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:28px}
  .fitcol{border-radius:16px;padding:24px;border:1px solid var(--line)}
  .fitcol.good{background:var(--yellow-wash);border-color:var(--yellow-deep)}
  .fitcol.bad{background:var(--cream-2)}
  .fitcol h3{font-size:16px;font-weight:700;margin-bottom:12px}
  .fitcol ul{list-style:none}
  .fitcol li{font-size:14px;line-height:1.5;padding:7px 0;display:flex;gap:9px;align-items:flex-start}
  .fitcol li .ic{flex:0 0 auto;font-weight:700}
  .fitcol.good li .ic{color:var(--teal)}
  .fitcol.bad li .ic{color:var(--coral)}
  /* faq */
  .faq{margin-top:24px;max-width:760px}
  .faq details{background:var(--card);border:1px solid var(--line);border-radius:12px;margin-bottom:10px;overflow:hidden}
  .faq summary{padding:18px 20px;font-weight:600;font-size:15.5px;cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:14px;color:var(--ink)}
  .faq summary::-webkit-details-marker{display:none}
  .faq summary::after{content:"+";font-size:22px;color:var(--yellow-deep);font-weight:700;flex:0 0 auto;transition:transform .2s}
  .faq details[open] summary::after{transform:rotate(45deg)}
  .faq .fa-body{padding:0 20px 18px;font-size:14.5px;color:var(--ink-soft);line-height:1.6}
  /* resource cards */
  .rescards{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:30px}
  .rescard{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:26px 24px;border-top:4px solid var(--yellow);display:flex;flex-direction:column}
  .rescard .rk{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--coral-text);font-weight:700;margin-bottom:8px}
  .rescard h3,.rescard .rc-h{font-size:21px;font-weight:700;margin-bottom:8px;color:var(--ink)}
  .rescard p{font-size:14px;color:var(--ink-soft);line-height:1.5;margin-bottom:14px}
  .rescard .solves{font-size:13px;color:var(--ink-2);margin-bottom:16px;flex:1}
  .rescard .solves b{display:block;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:6px;font-weight:700}
  .rescard .solves span{display:block;padding:3px 0}
  /* book layout */
  .booklay{display:grid;grid-template-columns:.8fr 1.2fr;gap:36px;align-items:center;margin-top:10px}
  .bookcover{background:linear-gradient(135deg,var(--forest),var(--forest-2));border-radius:16px;aspect-ratio:3/4;display:flex;align-items:center;justify-content:center;padding:30px;text-align:center;box-shadow:var(--shadow-lg);position:relative;overflow:hidden}
  .bookcover::after{content:"";position:absolute;left:0;top:0;bottom:0;width:8px;background:rgba(0,0,0,.25)}
  .bookcover .bc-in{position:relative}
  .bookcover .bc-k{font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--yellow);font-weight:700;margin-bottom:14px}
  .bookcover .bc-t{font-family:'Poppins',sans-serif;font-size:clamp(22px,3vw,30px);font-weight:800;color:#fff;line-height:1.1}
  .bookcover .bc-by{font-size:13px;color:rgba(251,247,238,.7);margin-top:16px}
  .bookcover .bc-star{color:var(--yellow);font-size:15px;margin-top:18px}
  .page .e3row{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:28px}
  .page .e3card{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:22px;border-left:4px solid var(--yellow)}
  .page .e3card .ek{font-family:'Poppins',sans-serif;font-size:13px;font-weight:800;letter-spacing:.04em;color:var(--coral-text);text-transform:uppercase;margin-bottom:6px}
  .page .e3card h3{font-size:17px;font-weight:600;margin-bottom:6px}
  .page .e3card p{font-size:14px;color:var(--ink-soft);line-height:1.5}
  @media(max-width:860px){
    .pstats{grid-template-columns:repeat(2,1fr)}
    .pcards.c3,.pdark-grid,.psteps,.pquote-grid,.rescards,.page .e3row{grid-template-columns:1fr}
    .pcards.c2,.compare,.fitcols,.price .feats{grid-template-columns:1fr}
    .booklay{grid-template-columns:1fr;gap:24px}
    .bookcover{max-width:280px;margin:0 auto}
  }

  /* ---------- REDESIGN: hero, offers, cost grid, engagement steps ---------- */
  .hero2{padding:54px 0 42px}
  .hero2-grid{max-width:1120px;margin:0 auto;padding:0 20px;display:grid;grid-template-columns:1.15fr .85fr;gap:46px;align-items:center}
  .hero2-copy h1{font-family:'Poppins',sans-serif;font-size:clamp(34px,5.4vw,54px);line-height:1.06;font-weight:700;letter-spacing:-.02em;margin:12px 0 16px}
  .hero2-copy h1 .hl{background:linear-gradient(transparent 62%,var(--yellow-soft) 62%);padding:0 .04em}
  .hero2 .hero-sub{font-size:clamp(15.5px,2.2vw,18px);color:var(--ink-2);line-height:1.62;max-width:56ch}
  .hero2 .hero-cta-row{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}
  .hero2 .hero-note{margin-top:14px;font-size:13.5px;color:var(--ink-soft)}
  .hero2 .hero-note b{color:var(--ink)}
  .hero2-side{background:var(--card);border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow);padding:26px 24px;display:flex;flex-direction:column;gap:14px}
  .team-cluster{display:flex}
  .team-cluster img{width:76px;height:76px;border-radius:50%;object-fit:cover;border:3px solid #fff;box-shadow:0 3px 10px rgba(22,38,31,.18);margin-left:-16px;background:var(--cream-2)}
  .team-cluster img:first-child{margin-left:0}
  .team-line{font-size:14px;color:var(--ink-2);line-height:1.5}
  .proof-chips{display:flex;gap:8px;flex-wrap:wrap}
  .proof-chips span{background:var(--cream-2);border:1px solid var(--line);border-radius:20px;padding:6px 12px;font-size:12.5px;color:var(--ink-2);white-space:nowrap}
  .proof-chips b{color:var(--ink)}
  .team-link{font-size:14px;font-weight:700;color:var(--teal-deep);cursor:pointer}
  .team-link:hover{text-decoration:underline}
  .offer-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:28px}
  .offer{display:flex;flex-direction:column;gap:10px;background:var(--card);border:1px solid var(--line);border-top:4px solid var(--yellow);border-radius:16px;padding:24px 22px;text-decoration:none;color:var(--ink);cursor:pointer;transition:transform .18s,box-shadow .2s}
  .offer:hover{transform:translateY(-3px);box-shadow:var(--shadow)}
  .offer .oicon{width:38px;height:38px;color:var(--teal-deep)}
  .offer h3{font-family:'Poppins',sans-serif;font-size:19px;font-weight:700}
  .offer p{font-size:14.5px;color:var(--ink-soft);line-height:1.55;flex:1}
  .offer .more{font-size:13.5px;font-weight:700;color:var(--teal-deep)}
  .offer-north{background:var(--forest);border-color:var(--forest);color:#fff}
  .offer-north h3{color:#fff}
  .offer-north p{color:rgba(251,247,238,.86)}
  .offer-north .chip{align-self:flex-start;background:var(--yellow);color:var(--ink);font-size:10.5px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;padding:4px 11px;border-radius:20px}
  .offer-north .more{color:var(--yellow)}
  .offer-shot{width:100%;border-radius:10px;border:1px solid rgba(251,247,238,.25)}
  .cost-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:22px;align-items:start;margin-top:6px}
  .cost-grid .reasons{grid-template-columns:1fr;margin-top:0}
  .loop-cta{display:flex;gap:16px;align-items:center;justify-content:center;flex-wrap:wrap;margin-top:26px;background:var(--yellow-wash);border:1px solid var(--yellow);border-radius:14px;padding:16px 20px}
  .loop-cta span{font-weight:600;font-size:15px;color:var(--ink)}
  .btn-sm{padding:11px 18px;font-size:14px}
  .engage3{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:28px}
  .e-step{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:24px 22px}
  .e-step .en{font-family:'Poppins',sans-serif;font-size:30px;font-weight:800;color:var(--yellow-deep);line-height:1}
  .e-step .en::before{content:attr(data-n)}
  .e-step h3{font-family:'Poppins',sans-serif;font-size:18px;font-weight:700;margin:8px 0 6px}
  .e-step p{font-size:14px;color:var(--ink-soft);line-height:1.55}
  .e-step .ew{display:inline-block;margin-top:12px;font-size:11px;letter-spacing:.1em;text-transform:uppercase;font-weight:700;color:var(--teal-deep);background:rgba(31,138,126,.09);padding:4px 10px;border-radius:20px}
  .pyramid-fig{margin:26px auto 6px;max-width:400px}
  .pyramid-fig svg{width:100%;height:auto;display:block}
  .north-chip{display:inline-block;background:var(--forest);color:var(--yellow);font-weight:800;letter-spacing:.14em;padding:3px 10px;border-radius:7px;margin-right:8px}
  .tp-diag .btn-dark{background:transparent;color:var(--cream);border:1.5px solid rgba(251,247,238,.6);box-shadow:none}
  .tp-diag .btn-dark:hover{background:var(--cream);color:var(--forest)}
  @media(max-width:920px){
    .hero2-grid{grid-template-columns:1fr;gap:28px}
    .offer-grid{grid-template-columns:1fr}
    .engage3{grid-template-columns:1fr}
    .cost-grid{grid-template-columns:1fr}
  }

  /* ================= ALT SYSTEM: editorial rework ================= */
  :root{--paper:#fdfdfa;--hairline:#e8e4d9;--sienna:var(--coral-text)}
  body{background:var(--paper)}
  nav{background:rgba(253,253,250,.95)}
  .dh{font-family:'Poppins',sans-serif;font-weight:600;color:var(--forest);letter-spacing:-.02em;line-height:1.08;text-wrap:balance}
  h1.dh{font-size:clamp(38px,6.6vw,64px);max-width:16ch}
  /* Section headings run the full row, in balanced lines; the lede stays beneath on its own measure (Sep 17, 2026). */
  h2.dh{font-size:clamp(30px,3.6vw,52px);max-width:none;margin:10px 0 18px}
  .eb{font-size:12px;letter-spacing:.16em;text-transform:uppercase;font-weight:700;margin-bottom:6px}
  .eb-s{color:var(--sienna)}
  .eb-t{color:var(--teal-deep)}
  .chip-o{display:inline-block;border:1px solid var(--yellow-deep);background:var(--yellow-wash);color:var(--ink);font-size:12.5px;font-weight:700;padding:5px 13px;border-radius:30px;vertical-align:middle;margin-left:10px}
  .lede{font-size:clamp(16px,2.3vw,19px);color:var(--ink-2);line-height:1.62;max-width:66ch;margin-top:16px}
  .alt-cta{display:flex;gap:26px;align-items:center;flex-wrap:wrap;margin-top:28px}
  .cta-note{margin-top:14px;max-width:44ch;font-size:13.5px;line-height:1.55;color:var(--ink-2)}
  .asec-forest .cta-note{color:rgba(251,247,238,.78)}
  .north-call .sidefig{grid-template-columns:.85fr 1.15fr;gap:clamp(32px,4vw,56px)}
  /* .np-side: the Product Story in a side column (Home's North call-out, the North hero): two across, Metrics beneath */
  .np-side .nx{margin:0}
  .np-side .np-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .np-side .np-sec--env > .np-grid > .np-card:nth-child(3){grid-column:1/-1}
  .np-side .np-kpi{grid-template-columns:1fr auto;gap:3px 12px}
  #view-north header .np-toggle{margin-top:12px}
  .ntab-screens .nd{margin-top:26px}
  .asec-forest .np-toggle{color:var(--cream)}
  .asec-forest .np-toggle:hover{color:var(--yellow)}
  .asec-forest .np-toggle .nx-chev{color:var(--yellow)}
  @media(max-width:900px){.north-call .sidefig{grid-template-columns:1fr}}
  .alink{font-weight:700;color:var(--ink);cursor:pointer;font-size:15.5px;white-space:nowrap}
  .alink:hover{color:var(--teal-deep)}
  .alink .ar{color:var(--teal-deep)}
  .subnote{font-size:14px;color:var(--ink-soft);margin-top:16px;max-width:56ch}
  .asec{padding:64px 0}
  .asec-band{background:var(--cream);border-top:1px solid var(--hairline);border-bottom:1px solid var(--hairline)}
  .asec-sienna{border-top:2px solid var(--coral)}
  /* The offer as a sequence (September 21, 2026): one ink line through three stops, because the
     four services read as a list until a buyer saw how they follow one another. */
  .seq{list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin:44px 0 0;padding:0;border-top:2.5px solid var(--ink);counter-reset:seq}
  .seq li{position:relative;padding:20px 28px 4px 0;counter-increment:seq}
  .seq li::before{content:"";position:absolute;left:0;top:-2.5px;width:2.5px;height:12px;background:var(--ink)}
  .seq .seq-k{display:block;font-family:'Poppins',sans-serif;font-size:19px;font-weight:600;line-height:1.25;color:var(--ink)}
  .seq .seq-k::before{content:counter(seq,decimal-leading-zero);display:block;margin-bottom:6px;font-family:'Inter',sans-serif;font-size:12px;font-weight:700;letter-spacing:.12em;color:var(--teal-deep)}
  .seq p{margin-top:8px;max-width:34ch;font-size:15px;line-height:1.55;color:var(--ink-2)}
  .seq .seq-l{display:flex;flex-wrap:wrap;gap:6px 18px;margin-top:12px}
  .seq .seq-l a{font-size:14px;font-weight:700;color:var(--ink);text-decoration:underline;text-decoration-color:var(--line);text-underline-offset:4px;cursor:pointer}
  .seq .seq-l a:hover{color:var(--teal-deep)}
  @media(max-width:767px){.seq{grid-template-columns:1fr;border-top:0;border-left:2.5px solid var(--ink);margin-top:32px}.seq li{padding:0 0 26px 20px}.seq li:last-child{padding-bottom:4px}.seq li::before{left:-2.5px;top:0;width:12px;height:2.5px}}
  .defs{border-top:1px solid var(--hairline);margin-top:26px}
  .defrow{display:grid;grid-template-columns:190px 1fr;gap:18px;padding:22px 0;border-bottom:1px solid var(--hairline)}
  .defrow .dt{font-family:'Poppins',sans-serif;font-weight:600;font-size:17px;color:var(--teal-deep)}
  .defrow .dt.sienna{color:var(--sienna)}
  .defrow h3{font-family:'Poppins',sans-serif;font-size:19px;font-weight:600;color:var(--ink);margin-bottom:6px}
  .defrow p{font-size:15.5px;color:var(--ink-2);line-height:1.6;max-width:58ch}
  .defrow .dnum{font-family:'Poppins',sans-serif;font-weight:700;font-size:19px;color:var(--teal-deep)}
  .defrow .dnum.sienna{color:var(--sienna)}
  .statlist{border-top:1px solid var(--hairline);margin-top:30px}
  .statlist .srow{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:15px 0;border-bottom:1px solid var(--hairline);font-size:16px;color:var(--ink-2)}
  .statlist .pillv{border:1px solid var(--hairline);background:#fff;border-radius:20px;padding:4px 14px;font-weight:700;color:var(--forest);white-space:nowrap}
  .photo-fig{margin:34px 0 0;border-radius:16px;overflow:hidden;box-shadow:0 10px 34px rgba(22,38,31,.14)}
  .photo-fig img{display:block;width:100%;height:auto}
  .pullq{font-family:'Poppins',sans-serif;font-weight:600;font-size:clamp(24px,3.6vw,34px);line-height:1.22;color:var(--sienna);max-width:24ch;letter-spacing:-.01em;text-wrap:balance}
  .bigstate{font-family:'Poppins',sans-serif;font-weight:600;font-size:clamp(24px,3.8vw,36px);line-height:1.2;color:var(--forest);max-width:26ch;letter-spacing:-.015em;text-wrap:balance}
  .ocards{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-top:30px}
  .ocard{background:#fff;border:1px solid var(--hairline);border-radius:14px;padding:26px 24px}
  .ocard h3{font-family:'Poppins',sans-serif;font-size:20px;font-weight:600;color:var(--ink);margin-bottom:10px;line-height:1.2}
  .ocard p{font-size:15px;color:var(--ink-2);line-height:1.6}
  .bignums{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;margin-top:34px}
  /* the home outcome carries four figures: one line of them wherever there is room */
  @media(min-width:861px){#view-home .bignums{grid-template-columns:repeat(4,minmax(0,1fr))}}
  .bignums .bn{font-family:'Poppins',sans-serif;font-weight:600;font-size:clamp(44px,6vw,64px);color:var(--forest);line-height:1}
  .bignums .bl{font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-soft);font-weight:700;margin-top:10px;line-height:1.5}
  .quoteblk{margin-top:44px}
  .quoteblk .qt{font-family:'Poppins',sans-serif;font-weight:600;font-size:clamp(20px,3vw,28px);line-height:1.3;color:var(--forest);max-width:26ch}
  .quoteblk .qby{margin-top:12px;color:var(--sienna);font-weight:600;font-size:15px}
  .quote-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px;margin-top:44px}
  .quote-grid .quoteblk{margin-top:0;padding-left:22px;border-left:4px solid var(--yellow)}
  .quote-grid .qt{font-size:clamp(18px,2.2vw,23px);max-width:none}
  @media(max-width:860px){.quote-grid{grid-template-columns:1fr;gap:26px}}
  .phase3{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;margin-top:34px}
  .phase3 .ph-k{font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;font-weight:700;color:var(--sienna)}
  .phase3 h3{font-family:'Poppins',sans-serif;font-size:24px;font-weight:600;color:var(--ink);margin:6px 0 2px}
  .phase3 .ph-sub{color:var(--ink-soft);font-size:15px;border-bottom:1px solid var(--hairline);padding-bottom:12px;margin-bottom:12px}
  .phase3 p{font-size:14.5px;color:var(--ink-2);line-height:1.55;margin-bottom:14px}
  .phase3 ul{list-style:none;display:flex;flex-direction:column;gap:8px}
  .phase3 li{border:1px solid var(--hairline);background:#fff;border-radius:9px;padding:9px 14px;font-size:14px;color:var(--ink);position:relative;padding-left:30px}
  .phase3 li::before{content:"";position:absolute;left:11px;top:50%;transform:translateY(-50%);width:8px;height:8px;border:2px solid var(--teal);border-radius:50%}
  .phase3 .ph-end{font-size:13.5px;color:var(--ink-soft);margin-top:12px}
  .modlist{border-top:1px solid var(--hairline);margin-top:28px}
  .modrow{display:grid;grid-template-columns:44px 62px 1fr;gap:18px;align-items:start;padding:22px 0;border-bottom:1px solid var(--hairline)}
  .modrow .mn{font-family:'Poppins',sans-serif;font-weight:700;font-size:18px;color:var(--teal-deep);padding-top:8px}
  .modrow .mic{width:56px;height:56px;border:1px solid var(--hairline);border-radius:14px;display:flex;align-items:center;justify-content:center;color:var(--teal-deep);background:#fff}
  .modrow .mic svg{width:26px;height:26px}
  .modrow .mod-main{flex:1;min-width:0}
  .modrow-head{display:block;width:100%;padding:0;background:none;border:0;text-align:left;font:inherit;line-height:inherit;color:inherit}
  .modrow .mod-get,.modrow .chev{display:none}
  .modrow h3{font-family:'Poppins',sans-serif;font-size:19px;font-weight:600;color:var(--ink);margin-bottom:4px}
  .modrow p{font-size:14.5px;color:var(--ink-2);line-height:1.55;max-width:60ch}
  .shape{border-top:1px solid var(--hairline);margin-top:28px}
  .shape-row{padding:22px 0;border-bottom:1px solid var(--hairline)}
  .shape-row .sk{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-soft);font-weight:700;margin-top:10px}
  .shape-row .sk:first-child{margin-top:0}
  .shape-row .sv{font-size:16px;color:var(--ink);font-weight:600;margin-top:2px}
  .shape-row .sv.link{color:var(--teal-deep)}
  .speccard{background:#fff;border:1px solid var(--hairline);border-radius:20px;box-shadow:0 14px 40px rgba(22,38,31,.08);padding:32px 30px;max-width:600px;margin-top:34px}
  .speccard .sc-logo svg{width:34px;height:52px}
  .speccard .sc-name{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-soft);font-weight:700;margin:10px 0 4px;border-bottom:1px solid var(--hairline);padding-bottom:12px}
  .speccard .sc-row{display:flex;justify-content:space-between;align-items:baseline;gap:18px;padding:13px 0;border-bottom:1px solid var(--hairline)}
  .speccard .sc-k{font-size:11.5px;letter-spacing:.13em;text-transform:uppercase;color:var(--ink-soft);font-weight:700;flex:0 0 auto}
  .speccard .sc-v{font-family:'Poppins',sans-serif;font-weight:600;font-size:clamp(16px,2.4vw,21px);color:var(--ink);text-align:right}
  .speccard .sc-cta{display:flex;flex-direction:column;gap:12px;align-items:stretch;margin-top:24px;text-align:center}
  .speccard .sc-cta .btn{width:100%}
  .talkline{margin-top:30px;padding-top:22px;border-top:1px solid var(--hairline);font-size:15px;color:var(--ink-2)}
  .talkline a,.talkline .alink{font-weight:700;color:var(--ink);text-decoration:underline;text-underline-offset:3px}
  /* The Snapshot and How We Work views carry older scoped rules (narrow .wrap, inherited link color, borderless
     buttons). Keep the shared comparison block and footer identical to every other view. */
  #view-snapshot .asec .wrap,#view-snapshot footer .wrap,#view-work footer .wrap{max-width:1180px}
  @media(min-width:641px){#view-snapshot .asec .wrap,#view-snapshot footer .wrap,#view-work footer .wrap{padding:0 28px}}
  #view-snapshot .twopath .btn,#view-work .twopath .btn{padding:15px 24px}
  #view-snapshot .tp-diag .btn-dark,#view-work .tp-diag .btn-dark{background:transparent;border:1.5px solid rgba(251,247,238,.6);box-shadow:none}
  #view-snapshot .tp-diag .btn-dark:hover,#view-work .tp-diag .btn-dark:hover{background:var(--cream);color:var(--forest)}
  #view-snapshot footer .logo,#view-work footer .logo{display:inline-flex;color:var(--cream)}
  #view-snapshot footer .btn,#view-work footer .btn{padding:15px 24px}
  #view-snapshot footer .logo .lw,#view-work footer .logo .lw{font-size:18px}
  #view-snapshot .foot-col a,#view-work .foot-col a{color:rgba(251,247,238,.78)}
  #view-snapshot .foot-col a:hover,#view-work .foot-col a:hover{color:#fff}
  #view-snapshot .alink:hover,#view-work .alink:hover{color:var(--teal-deep)}
  .whatkills{margin-top:18px}
  .whatkills .wk-k{font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-soft);font-weight:700;margin-bottom:8px}
  .whatkills p{font-size:15px;color:var(--ink-2);line-height:1.6;max-width:58ch}
  .shot{margin:26px 0 0;border:1px solid var(--hairline);border-radius:14px;overflow:hidden;box-shadow:0 12px 34px rgba(22,38,31,.1);background:#fff}
  .shot img{display:block;width:100%;height:auto}
  .shotcap{font-size:13.5px;color:var(--ink-soft);margin-top:10px}
  .shotcap b{color:var(--ink-2)}
  .presetrow{display:flex;gap:12px 14px;flex-wrap:wrap;align-items:flex-start;margin:20px 0 10px}
  .preset{border:1px solid var(--hairline);background:#fff;border-radius:30px;padding:9px 18px;cursor:pointer;font-family:inherit;font-size:14px;font-weight:700;color:var(--ink);transition:border-color .15s,background .15s}
  .preset:hover{border-color:var(--teal)}
  .preset.on{border-color:var(--yellow-deep);background:var(--yellow-wash)}
  .checkline{list-style:none;display:flex;flex-direction:column;gap:12px;margin-top:22px}
  .checkline li{position:relative;padding-left:30px;font-size:15.5px;color:var(--ink-2);line-height:1.55;max-width:60ch}
  .checkline li::before{content:"\2713";position:absolute;left:0;top:1px;color:var(--teal-deep);font-weight:700}
  .fitcols2{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-top:28px}
  .themebar-card{background:#fff;border:1px solid var(--hairline);border-radius:16px;padding:26px 24px;margin-top:30px}
  .themebar-card .tb-k{font-size:11.5px;letter-spacing:.13em;text-transform:uppercase;color:var(--ink-soft);font-weight:700;display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:16px}
  .themebar-card .tb-leg{display:flex;gap:14px;font-weight:600;text-transform:none;letter-spacing:0;font-size:12.5px}
  .themebar-card .tb-leg .lg{display:inline-flex;align-items:center;gap:6px}
  .themebar-card .tb-leg .swb{width:10px;height:10px;border-radius:3px;background:var(--teal)}
  .themebar-card .tb-leg .swb.dev{background:var(--yellow-deep)}
  .tbrow{display:grid;grid-template-columns:150px 1fr;gap:12px;align-items:center;padding:7px 0}
  .tbrow .tbn{font-size:13.5px;font-weight:600;color:var(--ink-2)}
  .tbrow .tbtrack{height:10px;background:var(--cream-2);border-radius:20px;overflow:hidden}
  .tbrow .tbfill{height:100%;border-radius:20px;background:var(--teal)}
  .tbrow .tbfill.dev{background:var(--yellow-deep)}
  .themebar-card .tb-foot{border-top:1px solid var(--hairline);margin-top:14px;padding-top:12px;font-size:13.5px;color:var(--ink-soft)}
  .themebar-card .tb-foot b{font-family:'Poppins',sans-serif;font-size:20px;color:var(--forest);margin-right:6px}
  .secline{border:none;border-top:1px solid var(--hairline);margin:0}
  @media(max-width:860px){
    .defrow{grid-template-columns:1fr;gap:6px}
    .ocards{grid-template-columns:1fr}
    .bignums{grid-template-columns:1fr 1fr}
    .phase3{grid-template-columns:1fr}
    .modrow{grid-template-columns:34px 1fr;grid-template-rows:auto auto}
    .modrow .mic{display:none}
    .fitcols2{grid-template-columns:1fr}
    .tbrow{grid-template-columns:110px 1fr}
  }

  /* ================= SIDE-BY-SIDE FIGURES ================= */
  .sidefig{display:grid;grid-template-columns:1.05fr .95fr;gap:44px;align-items:center}
  .sidefig>div{min-width:0}
  .sidefig .photo-fig,.sidefig .shot{margin-top:0}
  .sidefig .hero-photo img{aspect-ratio:4/3;object-fit:cover;object-position:50% 22%}
  .sidefig .statlist{margin-top:22px}
  .sidefig .shotcap{margin-top:10px}
  @media(max-width:900px){.sidefig{grid-template-columns:1fr;gap:26px}.sidefig .photo-fig,.sidefig .shot{margin-top:6px}}

  /* ================= CHALLENGE PICKER (home) ================= */
  .picks{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin-top:30px}
  .pick{position:relative;display:flex;flex-direction:column;align-items:flex-start;width:100%;text-align:left;background:#fff;border:1.5px solid var(--hairline);border-radius:14px;padding:22px 22px 22px 58px;cursor:pointer;font-family:inherit;color:var(--ink);transition:border-color .15s,background .15s,box-shadow .15s}
  .pick:hover{border-color:var(--teal)}
  .pick:focus-within{outline:3px solid var(--yellow-deep);outline-offset:2px}
  .pick-head{display:block;width:100%;padding:0;background:none;border:0;text-align:left;font:inherit;line-height:inherit;color:inherit;cursor:pointer}
  .pick-check{position:absolute;left:20px;top:24px;display:block;padding:0;background:none;border:0;cursor:pointer;font-family:inherit}
  .pick .pc-label{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
  .pick .chev{display:none}
  .pick .pk{width:22px;height:22px;border-radius:6px;border:2px solid var(--line);background:#fff;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:800;color:var(--ink);transition:background .15s,border-color .15s}
  .pick.is-on{border-color:var(--yellow-deep);background:var(--yellow-wash);box-shadow:0 8px 24px rgba(22,38,31,.08)}
  .pick.is-on .pk{background:var(--yellow);border-color:var(--yellow)}
  .pick .pt{display:block;font-family:'Poppins',sans-serif;font-size:19px;font-weight:600;line-height:1.25;margin-bottom:8px;color:var(--ink)}
  .pick-note{font-size:13.5px;color:var(--ink-soft);margin-top:14px}
  .pick-out{margin-top:22px;background:var(--cream);border:1px solid var(--hairline);border-left:5px solid var(--yellow);border-radius:14px;padding:26px 28px;animation:mixIn .4s ease}
  .pick-out .alt-cta{margin-top:22px;gap:22px}
  @media(max-width:860px){.picks{grid-template-columns:1fr}}

  /* ===== Home hero (September 24, 2026): a forest block across the page, the session photo in it =====
     Jason's mobile pass, then the same on desktop. The photo is the hero's right column on wide
     screens and sits under the headline on a phone. The challenge picker, which held this column
     from September 21 to 24, is the first section after the hero. The logo row closes the hero as
     its floor, on a cream bar, because half the logo files carry opaque grounds and cannot go white. */
  .hero-home{padding-top:48px;padding-bottom:34px;border-top:0}
  .hero-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:0 clamp(32px,4vw,64px);align-items:center}
  .hero-grid > *{grid-column:1}
  .hero-grid .hero-photo{grid-column:2;grid-row:1 / span 5;margin:0;border-radius:16px;overflow:hidden;box-shadow:0 18px 50px rgba(0,0,0,.28)}
  .hero-photo img{display:block;width:100%;height:auto}
  .hero-home .proof-strip{margin-top:30px;padding:16px 22px;border-radius:14px;background:var(--cream)}
  @media(min-width:1024px){
    .hero-home .proof-strip{flex-direction:row;align-items:center;gap:40px}
    .hero-home .proof-strip .ps-k{max-width:30ch;line-height:1.5}
    .hero-home .proof-strip .ps-row{flex:1;flex-wrap:nowrap;justify-content:space-between}
  }
  @media(max-width:767px){
    .hero-home{padding-top:40px}
    .hero-grid{display:block}
    .hero-grid .hero-photo{margin:22px 0 4px}
    /* the Diagnostic button and its note stand down on a phone: the fixed Snapshot bar sits right
       under them, and the Diagnostic returns in the two steps, the questions and the footer */
    .hero-home .alt-cta,.hero-home .cta-note{display:none}
    /* the four drawings and What is Product Protégé share the plain ground: a shorter join, so it
       does not read as a missing picture */
    [data-challenge]{padding-bottom:16px}
  }
  .picks-sec .pick-out{margin-top:26px}
  .picks-sec .pick-out:focus{outline:none}

  /* ================= FOREST BAND (full-bleed deep green section) ================= */
  .asec-forest{background:var(--forest);color:var(--cream);border-top:3px solid var(--yellow);position:relative;overflow:hidden}
  .asec-forest::after{content:"";position:absolute;right:-120px;top:-120px;width:380px;height:380px;border-radius:50%;background:radial-gradient(circle,rgba(255,197,52,.16),transparent 70%);pointer-events:none}
  .asec-forest .wrap{position:relative;z-index:2}
  .asec-forest .eb-t{color:var(--yellow)}
  .asec-forest .dh{color:#fff}
  .asec-forest .lede{color:rgba(251,247,238,.84)}
  .asec-forest .compare .col{border-color:rgba(251,247,238,.16)}
  .asec-forest .compare .col.without{background:rgba(251,247,238,.06)}
  .asec-forest .compare .col.with{background:rgba(255,197,52,.12);border-color:var(--yellow)}
  .asec-forest .compare .col h3{color:#fff}
  .asec-forest .compare .col.without h3{color:rgba(251,247,238,.72)}
  .asec-forest .compare .col li{color:rgba(251,247,238,.92);border-bottom-color:rgba(251,247,238,.1)}
  .asec-forest .compare .without li .ic{color:rgba(251,247,238,.55)}
  .asec-forest .compare .with li .ic{color:var(--yellow)}
  .asec-forest .bignums .bn{color:var(--yellow)}
  .asec-forest .bignums .bl{color:rgba(251,247,238,.74)}

  /* ===== The challenge we solve: four drawn arguments (restored September 15, 2026) =====
     Each stage is a drawing in the mark's own line, not a screenshot, because what is being
     shown is a way of working going wrong. No yellow appears in this section: yellow means
     the thing you click, and there is nothing to click inside a diagram. Motion is paused
     until the section is on screen (app.js toggles .is-live) and off entirely for readers
     who prefer reduced motion. */
  [data-challenge]{--ch-ink:var(--ink-soft);--ch-stroke:2.5px;--ch-ease:cubic-bezier(.2,.6,.2,1);/* @kind other */--ch-cycle:7s;/* @kind other */--line-strong:#bfb8a8}
  .ch-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(26rem,100%),1fr));gap:clamp(40px,2.5vw + 26px,72px) clamp(32px,1.8vw + 22px,56px);margin-top:40px}
  .ch{display:grid;grid-template-columns:minmax(0,1fr);gap:24px;align-content:start}
  .ch-say h3{font-family:'Poppins',sans-serif;font-size:22px;font-weight:600;color:var(--ink);line-height:1.2;max-width:20ch;letter-spacing:-.01em;text-wrap:balance}
  .ch-say p{margin-top:12px;color:var(--ink-2);font-size:14.5px;line-height:1.6;max-width:40ch}
  .ch-stage{position:relative;aspect-ratio:1/1;border-radius:22px;overflow:hidden;background:linear-gradient(180deg,var(--cream-2) 0%,#ede7d6 100%);border:1px solid var(--hairline);color:var(--ch-ink)}
  .ch-art{position:absolute;inset:10%}
  .ch-art svg{display:block;width:100%;height:100%;overflow:visible}
  .ch-art path,.ch-art circle,.ch-art line{fill:none;stroke:currentColor;stroke-width:var(--ch-stroke);stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}
  .ch-tag{font-size:10px;letter-spacing:.06em;text-transform:uppercase;fill:var(--ink);stroke:none;font-family:'Inter',sans-serif;font-weight:500}
  .ch-note{font-size:11px;fill:var(--ink);stroke:none;font-family:'Inter',sans-serif;font-weight:500}
  [data-challenge] .ch-stage *{animation-play-state:paused}
  [data-challenge].is-live .ch-stage *{animation-play-state:running}
  .ch-route{stroke-dasharray:1;stroke-dashoffset:1;animation:ch-draw var(--ch-cycle) var(--ch-ease) infinite;animation-delay:var(--d)}
  @keyframes ch-draw{0%,4%{stroke-dashoffset:1}34%,90%{stroke-dashoffset:0}100%{stroke-dashoffset:1}}
  .ch-end{fill:currentColor;stroke:none;opacity:0;animation:ch-pop var(--ch-cycle) var(--ch-ease) infinite;animation-delay:var(--d)}
  @keyframes ch-pop{0%,26%{opacity:0}36%,90%{opacity:1}100%{opacity:0}}
  .ch-target{stroke:var(--ink);stroke-dasharray:3 5}
  .ch-link{stroke-dasharray:1;stroke-dashoffset:1;animation:ch-link var(--ch-cycle) var(--ch-ease) infinite;animation-delay:var(--d)}
  @keyframes ch-link{0%,3%{stroke-dashoffset:1}20%,56%{stroke-dashoffset:0}66%,100%{stroke-dashoffset:1}}
  .ch-art .ch-pulse{stroke:var(--ink);stroke-width:5px;stroke-dasharray:.05 2;stroke-dashoffset:.09;opacity:0;animation:ch-pulse var(--ch-cycle) var(--ch-ease) infinite;animation-delay:var(--d)}
  @keyframes ch-pulse{0%,24%{stroke-dashoffset:.09;opacity:0}25%{stroke-dashoffset:.09;opacity:1}37%{stroke-dashoffset:-1;opacity:1}38%{stroke-dashoffset:-1;opacity:0}39%{stroke-dashoffset:.09;opacity:0}40%{stroke-dashoffset:.09;opacity:1}52%{stroke-dashoffset:-1;opacity:1}53%,100%{stroke-dashoffset:-1;opacity:0}}
  .ch-node{fill:currentColor;stroke:none;opacity:.3;animation:ch-node var(--ch-cycle) var(--ch-ease) infinite;animation-delay:var(--d)}
  @keyframes ch-node{0%,12%{opacity:.3}20%,58%{opacity:1}68%,100%{opacity:.3}}
  .ch-person{animation:ch-walk var(--ch-cycle) var(--ch-ease) infinite}
  .ch-person .ch-hub{fill:#fff;stroke:var(--ink)}
  @keyframes ch-walk{0%{transform:none;opacity:1}70%{transform:none;opacity:1;animation-timing-function:cubic-bezier(.45,0,.8,.55)}83%{transform:translate(120px,0);opacity:1;animation-timing-function:linear}87%{transform:translate(176px,0);opacity:0}88%,93%{transform:none;opacity:0}100%{transform:none;opacity:1}}
  .ch-rise{stroke:var(--ink);stroke-dasharray:1;stroke-dashoffset:1;animation:ch-draw var(--ch-cycle) var(--ch-ease) infinite}
  .ch-ship{opacity:0;animation:ch-pop var(--ch-cycle) var(--ch-ease) infinite;animation-delay:.4s}
  .ch-after{stroke-dasharray:4 6;opacity:0;animation:ch-fade var(--ch-cycle) var(--ch-ease) infinite}
  @keyframes ch-fade{0%,40%{opacity:0}52%{opacity:.55}72%,90%{opacity:0}100%{opacity:0}}
  .ch-rows{position:absolute;inset:14% 10%;display:flex;flex-direction:column;gap:8px}
  .ch-row{display:flex;align-items:center;justify-content:space-between;gap:10px;white-space:nowrap;padding:9px 11px;border-radius:8px;background:#fff;border:1px solid var(--hairline);font-size:12.5px;color:var(--ink)}
  .ch-row b{font-size:10px;letter-spacing:.06em;text-transform:uppercase;color:var(--ink);font-weight:600}
  .ch-row--loud{animation:ch-jump var(--ch-cycle) var(--ch-ease) infinite;position:relative;z-index:2}
  @keyframes ch-jump{0%,30%{transform:none;border-color:var(--hairline)}46%,88%{transform:translateY(calc(-300% - 24px));border-color:var(--ink)}100%{transform:none;border-color:var(--hairline)}}
  .ch-row--push{animation:ch-push var(--ch-cycle) var(--ch-ease) infinite}
  @keyframes ch-push{0%,30%{transform:none}46%,88%{transform:translateY(calc(100% + 8px))}100%{transform:none}}
  .ch-say .alink{display:inline-block;margin-top:14px;font-size:14.5px}
  @media (min-width:46rem){.ch{grid-template-columns:minmax(0,1.04fr) minmax(0,1fr);gap:clamp(24px,1.2vw + 16px,40px);align-items:center}}
  @media (max-width:45.999rem){.ch-stage{aspect-ratio:4/3}}
  @media (prefers-reduced-motion:reduce){[data-challenge] .ch-stage *,[data-challenge].is-live .ch-stage *{animation:none!important}.ch-link{stroke-dashoffset:0}.ch-node{opacity:1}}

  /* ===== The North mark, drawn (September 21, 2026) =====
     The official lockup, path for path from the designer's file, in the same language as the four
     challenge drawings: a matte stage, ink line, motion that waits for the reader. The glass rises
     from the base up both sides and meets at the crown, the filament climbs the stem and resolves
     into the P, and the N settles like a compass needle. It is a data-mock surface, so it draws
     once each time it scrolls into view and then holds. Only the tip keeps a slow glow. */
  .nl.ch-stage{width:var(--nl-w,168px);aspect-ratio:1/1;border-radius:18px;color:var(--ink)}
  .nl svg{position:absolute;inset:13%;width:74%;height:74%;overflow:visible}
  .nl path{fill:currentColor}
  .nl .nl-tip{fill:var(--yellow)}
  .nl .nl-draw{fill:none;stroke:#fff;stroke-dasharray:1;stroke-dashoffset:0}
  .nl .nl-draw--glass{stroke-width:26}
  .nl .nl-draw--fil{stroke-width:13.5;stroke-linecap:round;stroke-linejoin:round}
  .nl .nl-n,.nl .nl-bar,.nl .nl-l{transform-box:fill-box;transform-origin:50% 50%}
  .nl.is-armed:not(.is-live) .nl-draw{stroke-dashoffset:1}
  .nl.is-armed:not(.is-live) :is(.nl-bar,.nl-tip,.nl-n,.nl-l,.nl-by){opacity:0}
  .nl.is-live .nl-bar{animation:nl-pop .4s var(--ch-ease,cubic-bezier(.2,.6,.2,1)) both;animation-delay:calc(var(--i)*.09s)}
  .nl.is-live .nl-draw--glass{animation:nl-draw 1s cubic-bezier(.45,.05,.3,1) .3s both}
  .nl.is-live .nl-draw--fil{animation:nl-draw 1.35s cubic-bezier(.5,.05,.35,1) .55s both}
  .nl.is-live .nl-n{animation:nl-north 1.1s cubic-bezier(.3,.7,.3,1) 1.2s both}
  .nl.is-live .nl-tip{animation:nl-pop .5s ease 1.85s both,nl-glow 3.6s ease-in-out 3s infinite}
  .nl.is-live .nl-l{animation:nl-rise .55s cubic-bezier(.2,.6,.2,1) both;animation-delay:calc(1.55s + var(--i)*.07s)}
  .nl.is-live .nl-by{animation:nl-pop .6s ease 2.15s both}
  @keyframes nl-draw{from{stroke-dashoffset:1}to{stroke-dashoffset:0}}
  @keyframes nl-pop{from{opacity:0}to{opacity:1}}
  @keyframes nl-rise{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}
  @keyframes nl-north{0%{opacity:0;transform:rotate(-38deg)}30%{opacity:1;transform:rotate(16deg)}55%{transform:rotate(-8deg)}78%{transform:rotate(3deg)}100%{opacity:1;transform:none}}
  @keyframes nl-glow{0%,100%{opacity:1}50%{opacity:.45}}
  @media (prefers-reduced-motion:reduce){.nl *{animation:none!important}}
  .nl-row{display:flex;align-items:center;gap:20px;margin-bottom:22px}
  .nl-row .nl{flex:0 0 auto;width:var(--nl-w,168px)}
  .nl-row .eb{margin:0;display:flex;flex-direction:column;align-items:flex-start;gap:10px}
  #view-north header .nl-row{--nl-w:132px}
  @media(max-width:767px){.nl-row{gap:16px;margin-bottom:18px}.nl-row .nl{--nl-w:104px}#view-north header .nl-row{--nl-w:96px}}

  /* ===== North: Above the backlog (added September 15, 2026) =====
     North's chain sits in a forest panel (North is the dark room), the delivery,
     build and evidence layers sit in paper panels beneath it, and one drawn line
     returns evidence to the top. Product surfaces stay DOM, never bitmaps. The
     faint green ground is this section's own and marks it off from the cream
     platform band that follows. */
  .nb{--nb-mono:ui-monospace,"SF Mono",Menlo,Consolas,monospace;/* @kind font */--nb-ground:#eef3ef;--nb-line:#c9d6ce;background:var(--nb-ground);border-top:1px solid var(--hairline);border-bottom:1px solid var(--hairline)}
  .nb-stack{position:relative;margin-top:48px;display:grid;gap:18px;padding-right:118px}
  .nb-row{display:grid;grid-template-columns:200px minmax(0,1fr);gap:28px;align-items:center}
  .nb-label{text-align:right;padding-right:4px}
  .nb-label .nb-k{display:block;font-size:12px;letter-spacing:.16em;text-transform:uppercase;font-weight:700;color:var(--forest)}
  .nb-label .nb-s{display:block;font-family:var(--nb-mono);font-size:12.5px;line-height:1.5;color:var(--ink-soft);margin-top:4px}
  .nb-panel{background:#fff;border:1px solid var(--nb-line);border-radius:16px;padding:22px 28px;display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;min-height:84px}
  .nb-panel--north{background:var(--forest);border-color:var(--forest);color:#f3efe4;display:block;padding:26px 30px 28px;box-shadow:0 18px 44px rgba(22,50,42,.22)}
  .nb-head{display:flex;align-items:baseline;gap:16px;flex-wrap:wrap}
  .nb-name{font-family:'Poppins',sans-serif;font-weight:600;font-size:22px;color:#fff}
  .nb-panel--north .nb-mono{color:#b9dccb}
  .nb-mono{font-family:var(--nb-mono);font-size:13px;letter-spacing:.01em;color:var(--teal-deep)}
  .nb-chain{list-style:none;margin:20px 0 0;padding:0;display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:12px}
  .nb-chain li{position:relative;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.16);border-radius:10px;padding:12px 14px 13px;font-size:15px;font-weight:600;color:#f3efe4;line-height:1.2}
  .nb-chain li+li::before{content:"\203A";position:absolute;left:-10px;top:50%;transform:translateY(-50%);font-family:var(--nb-mono);font-size:14px;color:rgba(243,239,228,.55)}
  .nb-chain .nb-n{display:block;font-family:var(--nb-mono);font-size:11.5px;font-weight:400;color:#8fbfaa;margin-bottom:6px}
  .nb-handoff{display:flex;justify-content:flex-end;align-items:center;gap:14px;color:var(--teal-deep);padding-right:16px;margin:-4px 0}
  .nb-chips{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:10px}
  .nb-chips li{font-family:var(--nb-mono);font-size:14px;color:var(--ink);background:#fff;border:1px solid var(--nb-line);border-radius:8px;padding:9px 14px}
  .nb-note{color:var(--ink-soft)}
  .nb-return{position:absolute;top:-22px;right:0;bottom:36px;width:118px;pointer-events:none}
  .nb-return::before{content:"";position:absolute;top:0;right:60px;bottom:0;width:44px;border:1.5px solid var(--teal-deep);border-left:0;border-radius:0 12px 12px 0;opacity:.75}
  .nb-return .nb-mono{position:absolute;right:-72px;top:50%;width:200px;text-align:center;transform:translateY(-50%) rotate(90deg);white-space:nowrap;color:var(--teal-deep)}
  .nb-return-fallback{display:none;margin:4px 0 0;text-align:right}
  .nb-points{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:36px 48px;margin-top:56px;padding-top:36px;border-top:1px solid var(--nb-line)}
  .nb-points h3{font-size:13px;letter-spacing:.12em;text-transform:uppercase;font-weight:700;color:var(--teal-deep);margin:0 0 12px}
  .nb-points p{font-size:15.5px;line-height:1.6;color:var(--ink-2);max-width:40ch;margin:0}
  @media (max-width:1100px){.nb-chain{grid-template-columns:repeat(4,minmax(0,1fr))}.nb-chain li:nth-child(4n+1)::before{content:none}}
  @media (max-width:1000px){.nb-stack{padding-right:0}.nb-return{display:none}.nb-return-fallback{display:block}}
  @media (max-width:900px){
    .nb-stack{padding-right:0}
    .nb-row{grid-template-columns:1fr;gap:10px}
    .nb-label{text-align:left;display:flex;gap:12px;align-items:baseline}
    .nb-label .nb-s{margin-top:0}
    .nb-return{display:none}
    .nb-return-fallback{display:block}
    .nb-points{grid-template-columns:1fr;gap:28px}
  }
  @media (max-width:560px){.nb-chain{grid-template-columns:repeat(2,minmax(0,1fr))}.nb-chain li::before{content:none}.nb-chain li+li::before{content:none}.nb-panel{padding:18px 20px}.nb-panel--north{padding:22px 20px 24px}}

  /* ===== North hero: the Manager Dashboard, drawn rather than screenshotted (Sep 16, 2026) =====
     Same elements as the shipped screen, at the site's own fidelity, so the hero reads as
     the product rather than a picture of it. Product palette lives on the .nd scope so
     nothing leaks into the site. Motion: tiles and roadmap rows rise in on a stagger, the
     readiness meter fills, the figures count up (app.js), one sheen crosses the panel. All
     of it runs once each time the North view is shown and is off under reduced motion. */
  .nd{--n-green:#1B4D3E;--n-success:#16A34A;--n-amber:#E07B39;--n-warn:#C64A26;--n-info:#3B82F6;--n-ink:#111827;--n-ink-2:#6B7280;--n-canvas:#F9FAFB;--n-card:#fff;--n-border:#E5E7EB;--nd-ui:11.5px;--nd-label:9px;--nd-r:10px;--nd-r-sm:7px;position:relative;font-family:'Inter',sans-serif}
  .nd-glow{position:absolute;inset:6% -6% -8% -4%;border-radius:22px;background:radial-gradient(70% 60% at 30% 0%,rgba(27,77,62,.16),transparent 70%),radial-gradient(60% 60% at 90% 100%,rgba(27,77,62,.10),transparent 72%);filter:blur(26px);pointer-events:none}
  .nd-panel{position:relative;overflow:hidden;background:var(--n-canvas);color:var(--n-ink);border:1px solid var(--n-border);border-radius:22px;box-shadow:0 24px 60px -18px rgba(22,38,31,.28),0 1px 2px rgba(22,38,31,.06);padding:clamp(15px,10px + 1vw,22px);display:grid;gap:clamp(11px,8px + .6vw,16px)}
  .nd-panel::after{content:"";position:absolute;inset:-40% -60%;background:linear-gradient(104deg,transparent 40%,rgba(255,255,255,.55) 50%,transparent 60%);transform:translateX(-40%);opacity:0;pointer-events:none}
  .nd.is-live .nd-panel::after{animation:nd-sheen 1.5s .5s cubic-bezier(.4,0,.2,1) both}
  @keyframes nd-sheen{from{transform:translateX(-60%);opacity:0}35%{opacity:1}to{transform:translateX(60%);opacity:0}}
  .nd p{margin:0}
  .nd-top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-wrap:wrap}
  .nd-title{display:flex;align-items:center;gap:6px;font-family:'Poppins',sans-serif;font-weight:700;font-size:clamp(15px,13px + .5vw,19px);letter-spacing:-.01em;line-height:1.1;color:var(--n-ink)}
  .nd-shield{width:1em;height:1em;color:var(--n-green);flex:none}
  .nd-lvl{font-family:'Inter',sans-serif;font-size:var(--nd-label);font-weight:500;letter-spacing:.02em;color:#fff;background:var(--n-green);padding:.22em .5em;border-radius:999px}
  .nd-sub{margin-top:5px;font-size:var(--nd-ui);line-height:1.35;color:var(--n-ink-2)}
  .nd-ctl{display:flex;align-items:center;gap:5px;flex:none}
  .nd-seg{display:flex;align-items:center;gap:2px;padding:2px;background:#fff;border:1px solid var(--n-border);border-radius:var(--nd-r-sm)}
  .nd-seg b{font-size:var(--nd-label);font-weight:500;color:var(--n-ink-2);padding:.3em .5em;border-radius:5px;white-space:nowrap}
  .nd-seg b.is-on{background:var(--n-green);color:#fff}
  .nd-pick,.nd-btn{display:none;align-items:center;gap:4px;font-size:var(--nd-label);color:var(--n-ink-2);background:#fff;border:1px solid var(--n-border);border-radius:var(--nd-r-sm);padding:.42em .6em;white-space:nowrap}
  .nd-btn{color:var(--n-ink);font-weight:500}
  .nd-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
  .nd-stat{background:var(--n-card);border:1px solid var(--n-border);border-radius:var(--nd-r);padding:10px 11px 9px;display:grid;gap:3px;align-content:start}
  .nd.is-live .nd-stat{animation:nd-in .6s var(--d,0s) cubic-bezier(.2,.7,.3,1) both}
  .nd-stat__k{font-size:var(--nd-label);letter-spacing:.07em;text-transform:uppercase;color:var(--n-ink-2);font-weight:500}
  .nd-stat__v{font-family:'Poppins',sans-serif;font-weight:700;line-height:1;font-size:clamp(22px,16px + 1.4vw,31px);letter-spacing:-.02em;font-variant-numeric:tabular-nums;color:var(--n-ink)}
  .nd-stat__v--amber{color:var(--n-amber)}
  .nd-stat__v--mix{display:flex;flex-wrap:wrap;gap:6px 12px;font-size:clamp(17px,13px + .9vw,22px);align-items:baseline}
  .nd-stat__v--mix small{font-family:'Inter',sans-serif;font-weight:500;font-size:var(--nd-label);letter-spacing:0;text-transform:none}
  .nd-go{color:var(--n-success)}.nd-amber{color:var(--n-amber)}.nd-warn{color:var(--n-warn)}
  .nd-stat__n{font-size:var(--nd-label);color:var(--n-ink-2);line-height:1.3}
  .nd-meter{height:3px;border-radius:2px;background:rgba(17,24,39,.08);margin-top:3px;overflow:hidden}
  .nd-meter span{display:flex;height:100%;width:var(--w,0%);gap:1px;border-radius:inherit;overflow:hidden}
  .nd.is-live .nd-meter span{animation:nd-fill 1.1s .6s cubic-bezier(.2,.7,.3,1) both}
  .nd-meter i{display:block;height:100%;background:currentColor}
  .nd-road{background:var(--n-card);border:1px solid var(--n-border);border-radius:var(--nd-r);padding:11px 11px 12px;display:grid;gap:9px}
  .nd.is-live .nd-road{animation:nd-in .6s .34s cubic-bezier(.2,.7,.3,1) both}
  .nd-road__top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-wrap:wrap}
  .nd-road__id{display:grid;gap:1px}
  .nd-road__h{display:flex;align-items:center;gap:6px;font-family:'Poppins',sans-serif;font-weight:700;font-size:13.5px;letter-spacing:-.01em;line-height:1.2;white-space:nowrap;color:var(--n-ink)}
  .nd-road__h svg{color:var(--n-green)}
  .nd-road__n{font-size:var(--nd-label);color:var(--n-ink-2);line-height:1.3}
  .nd-road__acts{display:flex;align-items:center;gap:8px;flex:none}
  .nd-tabs{display:flex;gap:2px;padding:2px;background:var(--n-canvas);border-radius:6px;flex:none}
  .nd-tabs b{font-size:var(--nd-label);font-weight:500;color:var(--n-ink-2);padding:.28em .45em;border-radius:4px;white-space:nowrap}
  .nd-tabs b.is-on{background:#fff;color:var(--n-ink);box-shadow:0 1px 2px rgba(17,24,39,.1)}
  .nd-act{display:none;font-size:var(--nd-label);color:var(--n-ink-2);white-space:nowrap}
  .nd-cols{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}
  .nd-col{display:grid;gap:5px;align-content:start}
  .nd-col__k{display:flex;align-items:center;gap:5px;font-size:var(--nd-label);font-weight:500;letter-spacing:.06em;text-transform:uppercase}
  .nd-col__k i,.nd-back i{width:6px;height:6px;border-radius:50%;background:currentColor;flex:none}
  .nd-col--now .nd-col__k{color:var(--n-success)}
  .nd-col--next .nd-col__k{color:var(--n-info)}
  .nd-col--later .nd-col__k{color:#8B93A1}
  .nd-item{background:var(--n-canvas);border-radius:var(--nd-r-sm);padding:7px 8px;display:grid;gap:2px}
  .nd.is-live .nd-item{animation:nd-in .55s var(--d,0s) cubic-bezier(.2,.7,.3,1) both}
  .nd.is-armed:not(.is-live) .nd-stat,.nd.is-armed:not(.is-live) .nd-road,.nd.is-armed:not(.is-live) .nd-item{opacity:0}
  .nd.is-armed:not(.is-live) .nd-meter span{width:0}
  .nd-item b{font-size:var(--nd-ui);font-weight:500;line-height:1.25;color:var(--n-ink)}
  .nd-item span{font-size:var(--nd-label);color:var(--n-ink-2)}
  .nd-back{display:flex;align-items:center;gap:6px;padding-top:2px;font-size:var(--nd-label);font-weight:500;letter-spacing:.06em;text-transform:uppercase;color:var(--n-amber)}
  .nd-back em{font-style:normal;color:var(--n-ink-2);letter-spacing:0;text-transform:none;white-space:nowrap}
  @keyframes nd-in{from{opacity:0;transform:translateY(9px)}to{opacity:1;transform:none}}
  @keyframes nd-fill{from{width:0}to{width:var(--w,0%)}}
  @media (min-width:1100px){.nd-pick,.nd-btn,.nd-act{display:inline-flex}}
  @media (max-width:560px){.nd-cols{grid-template-columns:1fr}.nd-stats{grid-template-columns:1fr 1fr}}
  @media (prefers-reduced-motion:reduce){.nd-panel::after,.nd-stat,.nd-road,.nd-item,.nd-meter span{animation:none}.nd-meter span{width:var(--w,0%)}}

  /* ===== North, mechanic 04: the roadmap board, drawn rather than screenshotted (Sep 16, 2026) =====
     The product's Now / Next / Later read, transcribed from the live screen. Shares the
     dashboard mock's palette and motion (rows rise in on a stagger, one sheen on arrival)
     so the two product surfaces on this page read as one system. No yellow: the Later
     column's tint is the product's amber, and the one filled button is the product's green. */
  .nr{--n-green:#1B4D3E;--n-success:#16A34A;--n-info:#3B82F6;--n-amber:#E07B39;--n-ink:#111827;--n-ink-2:#6B7280;--n-canvas:#F9FAFB;--n-border:#E5E7EB;--nr-ui:12px;--nr-label:9.5px;position:relative;margin:26px 0 0;width:min(100%,900px);font-family:'Inter',sans-serif;color:var(--n-ink)}
  .nr-panel{position:relative;overflow:hidden;background:#fff;border:1px solid var(--hairline);border-radius:14px;box-shadow:0 12px 34px rgba(22,38,31,.1);padding:clamp(12px,8px + 1vw,20px);display:grid;gap:14px}
  .nr-panel::after{content:"";position:absolute;inset:-40% -60%;background:linear-gradient(104deg,transparent 40%,rgba(255,255,255,.55) 50%,transparent 60%);transform:translateX(-40%);opacity:0;pointer-events:none}
  .nr.is-live .nr-panel::after{animation:nd-sheen 1.5s .5s cubic-bezier(.4,0,.2,1) both}
  .nr p{margin:0}
  .nr-top{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding-bottom:12px;border-bottom:1px solid var(--n-border)}
  .nr-id{margin-right:auto}
  .nr-title{display:flex;align-items:center;gap:7px;font-family:'Poppins',sans-serif;font-weight:700;font-size:clamp(15px,13px + .4vw,18px);letter-spacing:-.01em;line-height:1.1}
  .nr-title svg{color:var(--n-green)}
  .nr-sub{margin-top:4px;font-size:var(--nr-ui);color:var(--n-ink-2);line-height:1.35}
  .nr-btn{display:none;align-items:center;gap:6px;font-size:var(--nr-ui);font-weight:500;white-space:nowrap;border-radius:7px;padding:.5em .8em;border:1px solid var(--n-border);background:#fff;color:var(--n-ink)}
  .nr-btn--bare{border-color:transparent;color:var(--n-ink-2)}
  .nr-btn--go{background:var(--n-green);border-color:var(--n-green);color:#fff}
  .nr-tabs{display:flex;gap:2px;padding:2px;background:var(--n-canvas);border-radius:7px;flex:none;order:1}
  .nr-tabs b{font-size:var(--nr-ui);font-weight:500;color:var(--n-ink-2);padding:.4em .7em;border-radius:5px;white-space:nowrap}
  .nr-tabs b.is-on{background:#fff;color:var(--n-ink);box-shadow:0 1px 2px rgba(17,24,39,.1)}
  .nr-acts{display:flex;align-items:center;gap:6px;order:2}
  .nr-cols{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
  .nr-col{border:1px solid var(--n-border);border-radius:9px;overflow:hidden;display:grid;grid-template-rows:auto 1fr;background:#fff;min-height:190px}
  .nr.is-live .nr-col{animation:nd-in .55s var(--d,.2s) cubic-bezier(.2,.7,.3,1) both}
  .nr-col--now{--d:.14s}.nr-col--next{--d:.2s}.nr-col--later{--d:.26s}
  .nr-col__head{display:flex;align-items:center;gap:10px;padding:12px 12px 11px;border-top:3px solid var(--n-green)}
  .nr-col--now .nr-col__head{background:#EAF7EF}.nr-col--next .nr-col__head{background:#EAF1FD}.nr-col--later .nr-col__head{background:#FDF7E6}
  .nr-col__ic{width:16px;height:16px;flex:none;border-radius:50%;border:2px solid currentColor;position:relative}
  .nr-col--now .nr-col__ic{color:var(--n-success)}.nr-col--next .nr-col__ic{color:var(--n-info)}.nr-col--later .nr-col__ic{color:var(--n-amber)}
  .nr-col--now .nr-col__ic::after{content:"";position:absolute;left:50%;top:50%;width:6px;height:6px;margin:-3px 0 0 -3px;border-radius:50%;background:currentColor}
  .nr-col--next .nr-col__ic::after{content:"";position:absolute;left:50%;top:3px;width:2px;height:6px;margin-left:-1px;background:currentColor;border-radius:1px}
  .nr-col--later .nr-col__ic{border-radius:3px}
  .nr-col__k{font-family:'Poppins',sans-serif;font-weight:700;font-size:13px;letter-spacing:.06em;text-transform:uppercase;line-height:1.1}
  .nr-col__s{font-size:var(--nr-label);color:var(--n-ink-2);margin-top:3px;line-height:1.3}
  .nr-count{margin-left:auto;font-size:var(--nr-label);font-weight:600;color:var(--n-ink);background:rgba(17,24,39,.07);border-radius:999px;padding:.35em .7em;min-width:1.6em;text-align:center}
  .nr-col__body{display:grid;gap:7px;align-content:start;padding:10px}
  .nr-item{display:grid;grid-template-columns:10px 1fr 14px;align-items:center;gap:9px;background:#fff;border:1px solid var(--n-border);border-radius:7px;padding:9px 10px;box-shadow:0 1px 2px rgba(17,24,39,.05)}
  .nr.is-live .nr-item{animation:nd-in .5s var(--d,0s) cubic-bezier(.2,.7,.3,1) both}
  .nr.is-armed:not(.is-live) .nr-col,.nr.is-armed:not(.is-live) .nr-item{opacity:0}
  .nr-item b{font-size:var(--nr-ui);font-weight:500;line-height:1.3}
  .nr-grip{width:6px;height:10px;background:radial-gradient(circle,#C4C8CF 1px,transparent 1.2px) 0 0/3px 3.4px}
  .nr-more{width:14px;height:14px;border-radius:4px;background:var(--n-canvas) radial-gradient(circle,#4B5563 .9px,transparent 1.1px) center/4px 4px;background-size:4px 4px;background-position:center;background-repeat:repeat-x;background-clip:padding-box}
  @media (min-width:1100px){.nr-btn{display:inline-flex}}
  @media (max-width:760px){.nr-cols{grid-template-columns:1fr}.nr-col{min-height:0}.nr-tabs{order:0;width:100%;overflow-x:auto}.nr-tabs b{flex:none}}
  @media (prefers-reduced-motion:reduce){.nr-panel::after,.nr-col,.nr-item{animation:none}}

  /* ===== North, mechanics 01 to 03: four more product surfaces drawn in DOM (Sep 16, 2026) =====
     Metric Tree (.nm), Prioritization Hub (.nh), User Stories (.ns) and Influence Matrix (.ni),
     each transcribed from the live screen, share one base (.nx): the dashboard palette, panel,
     sheen and rise-in motion, capped at 900px so the surfaces sit a notch smaller than the
     screenshots they replace. Every product surface on the page carries data-mock; app.js adds
     is-armed at load and toggles is-live as each one scrolls into view, so the motion plays every
     time a surface appears and holds still under reduced motion. Nothing moves without is-live. */
  .nx{--n-green:#1B4D3E;--n-success:#16A34A;--n-info:#3B82F6;--n-amber:#E07B39;--n-red:#E5484D;--n-ink:#111827;--n-ink-2:#6B7280;--n-ink-3:#9CA3AF;--n-canvas:#F9FAFB;--n-card:#fff;--n-border:#E5E7EB;--nx-ui:11px;--nx-label:9.5px;--nx-mono:ui-monospace,SFMono-Regular,Menlo,monospace;position:relative;margin:26px 0 0;width:min(100%,900px);font-family:'Inter',sans-serif;color:var(--n-ink);line-height:1.3}
  .nx p{margin:0}
  .nx-panel{position:relative;overflow:hidden;background:#fff;border:1px solid var(--hairline);border-radius:14px;box-shadow:0 12px 34px rgba(22,38,31,.1);padding:clamp(12px,8px + .8vw,18px);display:grid;gap:12px}
  .nx-panel::after{content:"";position:absolute;inset:-40% -60%;background:linear-gradient(104deg,transparent 40%,rgba(255,255,255,.55) 50%,transparent 60%);transform:translateX(-40%);opacity:0;pointer-events:none}
  .nx.is-live .nx-panel::after{animation:nd-sheen 1.5s .5s cubic-bezier(.4,0,.2,1) both}
  .nx-top{display:flex;align-items:flex-start;justify-content:space-between;gap:10px 14px;flex-wrap:wrap}
  .nx-title{display:flex;align-items:center;gap:7px;font-family:'Poppins',sans-serif;font-weight:700;font-size:clamp(14px,12px + .4vw,17px);letter-spacing:-.01em;line-height:1.1}
  .nx-title svg{color:var(--n-green);flex:none}
  .nx-sub{margin-top:4px;font-size:var(--nx-ui);color:var(--n-ink-2)}
  .nx-acts{display:flex;align-items:center;gap:6px;flex-wrap:wrap;justify-content:flex-end}
  .nx-acts--row{justify-content:flex-start}
  .nx-btn{display:inline-flex;align-items:center;gap:5px;font-size:var(--nx-ui);font-weight:500;white-space:nowrap;border-radius:7px;padding:.45em .7em;border:1px solid var(--n-border);background:#fff;color:var(--n-ink)}
  .nx-btn--go{background:var(--n-green);border-color:var(--n-green);color:#fff}
  .nx-btn--md{display:none}
  .nx-chev{display:inline-block;width:6px;height:6px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);margin:0 2px 2px;color:var(--n-ink-2)}
  .nx-chev--up{transform:rotate(-135deg);margin:4px 4px 0}
  .nx-tag{display:inline-block;font-size:var(--nx-label);font-weight:500;color:var(--n-ink);background:var(--n-canvas);border:1px solid var(--n-border);border-radius:5px;padding:.2em .55em;white-space:nowrap;max-width:100%;overflow:hidden;text-overflow:ellipsis}
  .nx-bar{display:inline-block;width:56px;height:3px;border-radius:2px;background:rgba(17,24,39,.1);overflow:hidden;vertical-align:middle}
  .nx-bar span{display:block;height:100%;width:var(--w,0%);background:var(--n-green);border-radius:inherit}
  .nx.is-armed:not(.is-live) .nx-in{opacity:0}
  .nx.is-live .nx-in{animation:nd-in .55s var(--d,0s) cubic-bezier(.2,.7,.3,1) both}
  /* nx-in ends on transform:none, so anything that keeps its own transform (the rotated axis label, the centred quadrant labels) fades instead */
  .nx.is-armed:not(.is-live) .nx-fade{opacity:0}
  .nx.is-live .nx-fade{animation:nx-fade .55s var(--d,0s) ease-out both}
  @keyframes nx-fade{from{opacity:0}to{opacity:1}}
  .nx.is-armed:not(.is-live) .nx-bar span{width:0}
  .nx.is-live .nx-bar span{animation:nd-fill 1s calc(var(--d,0s) + .35s) cubic-bezier(.2,.7,.3,1) both}
  @media (min-width:1000px){.nx-btn--md{display:inline-flex}}

  /* Metric Tree: King KPI cards on a dotted canvas, signals connected beneath by lines that draw in */
  .nm-canvas{border:1px solid var(--n-border);border-radius:9px;padding:clamp(12px,8px + 1vw,20px);background:var(--n-canvas) radial-gradient(circle,#D7DBE0 .9px,transparent 1.1px) 0 0/14px 14px;overflow:hidden}
  .nm-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:26px 12px;align-items:start}
  .nm-kpi,.nm-sig{position:relative;background:var(--n-card);border:1px solid var(--n-border);border-radius:8px;padding:9px 10px 8px;display:grid;gap:5px;box-shadow:0 1px 2px rgba(17,24,39,.05)}
  .nm-kpi{border-color:var(--n-amber);box-shadow:0 0 0 1px rgba(224,123,57,.22),0 1px 2px rgba(17,24,39,.05)}
  .nm-k{display:flex;align-items:center;gap:5px;color:var(--n-amber)}
  .nm-k svg{flex:none}
  .nm-king{font-size:var(--nx-label);font-weight:600;color:#fff;background:var(--n-amber);border-radius:5px;padding:.2em .5em}
  .nm-name{font-size:var(--nx-ui);font-weight:600;line-height:1.3}
  .nm-pill{justify-self:start;font-size:var(--nx-label);font-weight:500;border:1px solid var(--n-border);border-radius:5px;padding:.2em .5em;background:#fff;white-space:nowrap;max-width:100%;overflow:hidden;text-overflow:ellipsis}
  .nm-desc{font-size:var(--nx-label);color:var(--n-ink-2);line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
  .nm-view{display:flex;align-items:center;justify-content:center;gap:5px;font-size:var(--nx-label);font-weight:500;color:var(--n-ink);padding-top:6px;border-top:1px solid var(--n-border);margin-top:2px}
  .nm-sig{width:84%;justify-self:center}
  .nm-sig .nx-tag{justify-self:start}
  .nm-sig::before{content:"";position:absolute;left:50%;bottom:100%;width:2px;height:26px;margin-left:-1px;background:#4B6B5E;transform-origin:top}
  .nm-sig::after{content:"";position:absolute;left:50%;top:-6px;margin-left:-4px;border:4px solid transparent;border-top:5px solid #4B6B5E;border-bottom:0}
  .nm-r2{grid-row:2}.nm-r3{grid-row:3}.nm-col1{grid-column:1}.nm-col3{grid-column:3}
  .nx.is-armed:not(.is-live) .nm-sig::before{transform:scaleY(0)}
  .nx.is-armed:not(.is-live) .nm-sig::after{opacity:0}
  .nx.is-live .nm-sig::before{animation:nm-draw .4s calc(var(--d,0s) - .15s) cubic-bezier(.2,.7,.3,1) both}
  .nx.is-live .nm-sig::after{animation:nm-tip .25s calc(var(--d,0s) + .1s) both}
  @keyframes nm-draw{from{transform:scaleY(0)}to{transform:scaleY(1)}}
  @keyframes nm-tip{from{opacity:0}to{opacity:1}}
  @media (max-width:900px){.nm-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.nm-c2,.nm-c4{display:none}.nm-col3{grid-column:2}}
  @media (max-width:560px){.nm-grid{grid-template-columns:1fr}.nm-c3{display:none}}

  /* Prioritization Hub: the MoSCoW board, with one card sliding into Should Have as if just dropped */
  .nh-tip{display:flex;gap:10px;align-items:flex-start;background:var(--n-canvas);border:1px solid var(--n-border);border-radius:9px;padding:10px 12px}
  .nh-tip__ic{flex:none;width:24px;height:24px;border-radius:6px;background:#E6EFEA;color:var(--n-green);display:grid;place-items:center}
  .nh-tip__h{font-size:var(--nx-ui);font-weight:600}
  .nh-tip__p{font-size:var(--nx-label);color:var(--n-ink-2);margin-top:2px;line-height:1.4}
  .nh-tip__warn{margin-top:7px;font-size:var(--nx-label);color:#7A4A1C;background:#FDF1E3;border:1px solid #F5D9BC;border-radius:6px;padding:6px 8px;line-height:1.4}
  .nh-tip__warn b{font-weight:600}
  .nh-hint{display:flex;align-items:center;justify-content:space-between;gap:8px 12px;flex-wrap:wrap;font-size:var(--nx-ui);color:var(--n-ink-2)}
  .nh-cols{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;align-items:start}
  .nh-col{display:grid;gap:7px;align-content:start}
  .nh-col__head{display:flex;align-items:center;gap:6px;font-size:var(--nx-ui);font-weight:600;padding:2px 0 3px}
  .nh-dot{width:11px;height:11px;border-radius:50%;border:2px solid currentColor;flex:none}
  .nh-col--must .nh-col__head{color:var(--n-success)}.nh-col--should .nh-col__head{color:var(--n-info)}.nh-col--could .nh-col__head{color:var(--n-amber)}.nh-col--wont .nh-col__head{color:var(--n-red)}.nh-col--park .nh-col__head{color:var(--n-ink-2)}
  .nh-col--park .nh-dot{border-radius:2px}
  .nh-count{margin-left:auto;font-size:var(--nx-label);font-weight:600;color:var(--n-ink);background:rgba(17,24,39,.07);border-radius:999px;padding:.3em .65em;font-variant-numeric:tabular-nums}
  .nh-card{position:relative;display:grid;grid-template-columns:8px minmax(0,1fr) auto;gap:4px 8px;align-items:start;background:#fff;border:1px solid var(--n-border);border-radius:7px;padding:8px 9px;box-shadow:0 1px 2px rgba(17,24,39,.05)}
  .nh-card p{font-size:var(--nx-ui);font-weight:500;line-height:1.3}
  .nh-grip{width:6px;height:10px;margin-top:2px;background:radial-gradient(circle,#C4C8CF 1px,transparent 1.2px) 0 0/3px 3.4px}
  .nh-score{font-family:var(--nx-mono);font-size:var(--nx-label);font-weight:600;color:var(--n-ink);font-variant-numeric:tabular-nums;padding-top:1px}
  .nh-card .nx-tag{grid-column:2/-1;justify-self:start;margin-top:1px}
  .nx.is-live .nh-card--moved{animation:nh-slide .75s var(--d,0s) cubic-bezier(.2,.7,.3,1) both}
  @keyframes nh-slide{from{opacity:0;transform:translate(-44px,12px) rotate(-2.5deg)}55%{opacity:1;transform:translate(3px,-2px) rotate(.5deg)}to{opacity:1;transform:none}}
  @media (max-width:960px){.nh-cols{grid-template-columns:repeat(3,minmax(0,1fr))}.nh-c4,.nh-c5{display:none}}
  @media (max-width:620px){.nh-cols{grid-template-columns:repeat(2,minmax(0,1fr))}.nh-c3{display:none}.nh-tip__warn{display:none}}

  /* User Stories: one epic, five scored stories; bars fill and the percentages count up */
  .ns-epic{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:2px 2px 0}
  .ns-epic__h{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-family:'Poppins',sans-serif;font-weight:700;font-size:clamp(13px,11px + .4vw,15.5px);letter-spacing:-.01em}
  .ns-n{font-family:'Inter',sans-serif;font-size:var(--nx-label);font-weight:500;color:var(--n-ink-2);background:var(--n-canvas);border:1px solid var(--n-border);border-radius:5px;padding:.2em .55em;letter-spacing:0}
  .ns-list{display:grid;gap:7px}
  .ns-row{display:flex;align-items:center;justify-content:space-between;gap:10px 16px;background:#fff;border:1px solid var(--n-border);border-radius:8px;padding:9px 11px;box-shadow:0 1px 2px rgba(17,24,39,.04)}
  .ns-row--on{background:var(--n-canvas)}
  .ns-txt{min-width:0}
  .ns-t{font-size:var(--nx-ui);font-weight:600}
  .ns-s{font-size:var(--nx-label);color:var(--n-ink-2);margin-top:2px;line-height:1.4}
  .ns-meta{display:flex;align-items:center;gap:10px;flex:none}
  .ns-prod{font-size:var(--nx-label);font-weight:500;border:1px solid var(--n-border);border-radius:999px;padding:.3em .6em;white-space:nowrap}
  .ns-score{display:grid;grid-template-columns:auto auto;gap:1px 8px;align-items:center;font-size:var(--nx-label);color:var(--n-ink-2)}
  .ns-score b{font-family:var(--nx-mono);font-size:var(--nx-label);color:var(--n-ink);font-variant-numeric:tabular-nums;text-align:right;min-width:3.4ch}
  .ns-score .nx-bar{grid-column:1/-1;width:100%}
  .ns-rate{font-size:var(--nx-label);font-weight:600;border-radius:5px;padding:.3em .6em;white-space:nowrap}
  .ns-rate--ex{color:#15803D;background:#DCFCE7}.ns-rate--good{color:#9A5B12;background:#FDF1E3}
  .ns-more{width:3px;height:13px;background:radial-gradient(circle,#4B5563 1.2px,transparent 1.4px) 0 0/3px 4.5px}
  @media (max-width:760px){.ns-row{flex-direction:column;align-items:stretch}.ns-meta{justify-content:space-between}.ns-prod{display:none}}
  @media (max-width:480px){.ns-s{display:none}}

  /* Influence Matrix: the quadrant map draws its axes, then the two stakeholders drop in */
  .ni-wrap{display:grid;grid-template-columns:auto minmax(0,520px);gap:6px 8px;align-items:center;justify-items:center;justify-content:center;padding-top:2px}
  .ni-ylab{writing-mode:vertical-rl;transform:rotate(180deg);font-size:var(--nx-label);font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--n-ink-2)}
  .ni-plot{position:relative;width:100%;aspect-ratio:1.3;background:var(--n-canvas);border:1px solid var(--n-border);border-radius:6px;font-size:var(--nx-label);color:var(--n-ink-2)}
  .ni-yt{position:absolute;left:8px;top:var(--y);transform:translateY(-50%)}
  .ni-xt{position:absolute;bottom:5px;left:var(--x);transform:translateX(-50%)}
  .ni-vline,.ni-hline{position:absolute;background:#D1D5DB}
  .ni-vline{left:50%;top:0;bottom:0;width:1px;transform-origin:top}
  .ni-hline{top:50%;left:0;right:0;height:1px;transform-origin:left}
  .ni-q{position:absolute;left:var(--x);top:var(--y);transform:translateX(-50%);text-align:center;display:grid;gap:2px;width:44%}
  .ni-q b{font-size:var(--nx-ui);font-weight:600;color:var(--n-ink-2)}
  .ni-q span{font-size:var(--nx-label);color:var(--n-ink-3)}
  .ni-legend i{width:10px;height:10px;border-radius:50%;display:inline-block}
  .ni-dot{position:absolute;left:var(--x);top:var(--y);transform:translate(-50%,-50%);width:13px;height:13px;border-radius:50%}
  .ni-dot::after{content:"";position:absolute;inset:0;border-radius:50%;border:2px solid currentColor;opacity:0}
  .ni-dot--champion{background:var(--n-success);color:var(--n-success)}.ni-dot--neutral{background:var(--n-amber);color:var(--n-amber)}.ni-dot--blocker{background:var(--n-red);color:var(--n-red)}
  .ni-xlab{grid-column:2;font-size:var(--nx-label);font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--n-ink-2)}
  .ni-legend{grid-column:1/-1;display:flex;gap:16px;flex-wrap:wrap;justify-content:center;font-size:var(--nx-ui);color:var(--n-ink-2)}
  .ni-legend span{display:inline-flex;align-items:center;gap:6px}
  .nx.is-armed:not(.is-live) .ni-vline{transform:scaleY(0)}
  .nx.is-armed:not(.is-live) .ni-hline{transform:scaleX(0)}
  .nx.is-armed:not(.is-live) .ni-dot{opacity:0}
  .nx.is-live .ni-vline{animation:ni-v .6s .15s cubic-bezier(.2,.7,.3,1) both}
  .nx.is-live .ni-hline{animation:ni-h .6s .25s cubic-bezier(.2,.7,.3,1) both}
  .nx.is-live .ni-dot{animation:ni-drop .6s var(--d,.8s) cubic-bezier(.34,1.56,.64,1) both}
  .nx.is-live .ni-dot::after{animation:ni-ring .9s calc(var(--d,.8s) + .45s) ease-out both}
  @keyframes ni-v{from{transform:scaleY(0)}to{transform:scaleY(1)}}
  @keyframes ni-h{from{transform:scaleX(0)}to{transform:scaleX(1)}}
  @keyframes ni-drop{from{opacity:0;transform:translate(-50%,-50%) translateY(-16px) scale(.4)}to{opacity:1;transform:translate(-50%,-50%)}}
  @keyframes ni-ring{from{opacity:.55;transform:scale(1)}to{opacity:0;transform:scale(2.6)}}
  @media (max-width:560px){.ni-q{width:46%}.ni-q span{display:none}.ni-plot{aspect-ratio:1.1}}
  @media (prefers-reduced-motion:reduce){.nx *,.nx *::before,.nx *::after,.nx-panel::after{animation:none!important}}

  /* Metric Marketplace (.nk): the browse view of the product's modal, two of its 176 templates.
     Shares the .nx base; the count ticks up and the tag chips pop in after each card lands. */
  .nk-panel{background:#fff}
  .nk-x{position:absolute;top:14px;right:16px;width:12px;height:12px;opacity:.7}
  .nk-x::before,.nk-x::after{content:"";position:absolute;left:5px;top:-1px;width:1.5px;height:14px;background:var(--n-ink);transform:rotate(45deg)}
  .nk-x::after{transform:rotate(-45deg)}
  .nk-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;padding:4px;border:1px solid var(--n-border);border-radius:9px;background:var(--n-canvas)}
  .nk-tabs b{display:flex;align-items:center;justify-content:center;gap:6px;font-size:var(--nx-ui);font-weight:500;color:var(--n-ink-2);padding:.6em .5em;border-radius:6px;white-space:nowrap}
  .nk-tabs b.is-on{background:#fff;color:var(--n-ink);box-shadow:0 1px 2px rgba(17,24,39,.08)}
  .nk-hint{font-size:var(--nx-ui);color:var(--n-ink-2)}
  .nk-search{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:8px;align-items:center}
  .nk-input{display:flex;align-items:center;gap:8px;border:1px solid var(--n-border);border-radius:7px;padding:.55em .8em;font-size:var(--nx-ui);color:var(--n-ink-2);min-width:0}
  .nk-input i{font-style:normal;color:var(--n-ink-3);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .nk-count{font-size:var(--nx-ui);color:var(--n-ink-2)}
  .nk-count b{color:var(--n-ink);font-variant-numeric:tabular-nums}
  .nk-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
  .nk-card{border:1px solid var(--n-border);border-radius:10px;padding:14px;display:grid;gap:8px;align-content:start;background:#fff}
  .nk-tags{display:flex;flex-wrap:wrap;gap:6px}
  .nk-tag{font-size:var(--nx-label);font-weight:500;background:var(--n-canvas);border:1px solid var(--n-border);border-radius:5px;padding:.25em .6em;color:var(--n-ink)}
  .nk-tag--tan{background:#F3EDE4;border-color:#EADFCF;color:#5B4A33}
  .nk-tag--blue{background:#E8F0FD;border-color:#D6E3FA;color:#1D4ED8}
  .nk-name{font-family:'Poppins',sans-serif;font-weight:700;font-size:clamp(13px,11px + .4vw,15.5px);letter-spacing:-.01em;padding-bottom:8px;border-bottom:1px solid var(--n-border)}
  .nk-desc{font-size:var(--nx-ui);color:var(--n-ink-2);line-height:1.45;padding-bottom:8px;border-bottom:1px solid var(--n-border)}
  .nk-k{font-size:var(--nx-label);letter-spacing:.08em;text-transform:uppercase;color:var(--n-ink-2);font-weight:600}
  .nk-f{font-size:var(--nx-ui);font-weight:500;margin-top:-4px}
  .nk-code{font-family:var(--nx-mono);font-size:var(--nx-label);color:var(--n-ink);margin-top:-4px}
  .nk-go{display:flex;align-items:center;justify-content:center;gap:8px;background:var(--n-green);color:#fff;font-size:var(--nx-ui);font-weight:600;border-radius:7px;padding:.7em 1em;margin-top:4px}
  .nk-go i{font-style:normal}
  .nx.is-live .nk-tag{animation:nx-pop .35s calc(var(--d,0s) + .3s) cubic-bezier(.2,.7,.3,1) both}
  .nx.is-live .nk-tag:nth-child(2){animation-delay:calc(var(--d,0s) + .36s)}
  .nx.is-live .nk-tag:nth-child(3){animation-delay:calc(var(--d,0s) + .42s)}
  .nx.is-live .nk-tag:nth-child(4){animation-delay:calc(var(--d,0s) + .48s)}
  @keyframes nx-pop{from{opacity:0;transform:scale(.85)}to{opacity:1;transform:none}}

  /* ----- Your Product Story (.np, September 23, 2026): the E3 narrative page, drawn with North as the
     product. Eight modules in three phases. On arrival the progress bar fills module by module and each
     card rises as its module lights, so the page tells the chain in order: vision to roadmap. ----- */
  .np{--np-env:#14A08F;--np-emp:#F0742E;--np-ele:#22A85B;--np-env-wash:#E4F6F2;--np-emp-wash:#FEEEE3;--np-ele-wash:#E6F6EC}
  .np .nx-panel{gap:0;padding:0;background:var(--n-canvas)}
  .np-head{padding:clamp(12px,8px + .8vw,18px);background:#fff;border-bottom:1px solid var(--n-border);display:grid;gap:14px}
  .np-chip{display:inline-flex;align-items:center;gap:6px;font-size:var(--nx-label);font-weight:500;border:1px solid var(--n-border);border-radius:999px;padding:.4em .85em;background:#fff}
  .np-chip i{width:6px;height:6px;border-radius:50%;background:var(--yellow-deep)}
  .np-title{font-family:'Poppins',sans-serif;font-weight:700;font-size:clamp(17px,14px + .7vw,24px);letter-spacing:-.02em;line-height:1.1;margin-top:8px}
  .np .nx-btn svg{flex:none}
  .np .nx-btn--sq{padding:.45em .5em}
  .np-prog{display:grid;gap:7px}
  .np-prog__k{display:flex;justify-content:space-between;align-items:baseline;font-size:var(--nx-label);letter-spacing:.08em;text-transform:uppercase;color:var(--n-ink-2);font-weight:600}
  .np-prog__k b{font-size:var(--nx-ui);letter-spacing:0;text-transform:none;color:var(--n-ink);font-variant-numeric:tabular-nums}
  .np-steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(8,1fr);gap:6px}
  .np-steps li{font-size:var(--nx-label);color:var(--n-ink-3);display:grid;gap:5px;min-width:0}
  .np-steps li span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .np-steps li i{display:block;height:5px;border-radius:3px;background:#E5E7EB;overflow:hidden}
  .np-steps li i::after{content:"";display:block;height:100%;background:var(--np-env);border-radius:inherit;transform-origin:left}
  .np-steps li.np-emp i::after{background:var(--np-emp)}
  .np-steps li.np-ele i::after{background:var(--np-ele)}
  .np-ref{font-size:var(--nx-label);color:var(--n-ink-3)}
  .np-body{padding:clamp(12px,8px + .8vw,18px);display:grid;gap:18px}
  .np-sec{display:grid;gap:12px}
  .np-sec--env{--np-c:var(--np-env);--np-wash:var(--np-env-wash)}
  .np-sec--emp{--np-c:var(--np-emp);--np-wash:var(--np-emp-wash)}
  .np-sec--ele{--np-c:var(--np-ele);--np-wash:var(--np-ele-wash)}
  .np-phase{display:flex;align-items:center;gap:10px}
  .np-ph__ic{width:30px;height:30px;border-radius:8px;display:grid;place-items:center;background:var(--np-wash);color:var(--np-c);flex:none}
  .np-phase b{display:block;font-family:'Poppins',sans-serif;font-weight:700;font-size:var(--nx-ui);letter-spacing:.1em;text-transform:uppercase;line-height:1.1}
  .np-phase small{display:block;font-size:var(--nx-label);color:var(--n-ink-2);margin-top:2px}
  .np-phase hr{flex:1;border:0;border-top:1px solid var(--n-border);margin:0 0 0 8px;transform-origin:left}
  .np-grid{display:grid;gap:12px;grid-template-columns:repeat(3,minmax(0,1fr))}
  .np-grid--2{grid-template-columns:repeat(2,minmax(0,1fr))}
  .np-card{position:relative;background:#fff;border:1px solid var(--n-border);border-top:2px solid var(--np-c);border-radius:10px;padding:12px 12px 10px;display:flex;flex-direction:column;gap:9px;box-shadow:0 1px 2px rgba(17,24,39,.04)}
  .np-num{position:absolute;top:-10px;left:-10px;width:20px;height:20px;border-radius:50%;background:var(--np-c);color:#fff;font-size:9.5px;font-weight:700;display:grid;place-items:center;box-shadow:0 0 0 2px #fff}
  .np-card__h{display:flex;align-items:flex-start;gap:8px}
  .np-card__id{min-width:0}
  .np-ic{width:24px;height:24px;border-radius:6px;background:var(--np-wash);color:var(--np-c);display:grid;place-items:center;flex:none}
  .np-card__t{font-size:var(--nx-ui);font-weight:700;line-height:1.2}
  .np-card__s{font-size:var(--nx-label);color:var(--n-ink-2);margin-top:2px;line-height:1.35}
  .np-badge{margin-left:auto;display:inline-flex;align-items:center;gap:4px;font-size:var(--nx-label);font-weight:600;color:var(--np-c);background:var(--np-wash);border-radius:5px;padding:.35em .6em;white-space:nowrap;flex:none}
  .np-quote{font-size:var(--nx-ui);line-height:1.5;color:var(--n-ink);padding:8px 10px;background:var(--np-wash);border-radius:7px}
  .np-list{display:grid;gap:5px}
  .np-row{display:flex;align-items:center;justify-content:space-between;gap:6px 10px;font-size:var(--nx-label);padding:6px 8px;border-radius:6px;background:var(--n-canvas);line-height:1.35}
  .np-row b{font-weight:600;color:var(--n-ink);min-width:0}
  .np-row em{font-style:normal;color:var(--n-ink-2);display:inline-flex;align-items:center;gap:6px;flex:none;text-align:right}
  .np-row--epic em .nx-bar{width:44px}
  .np-row--stack{flex-direction:column;align-items:flex-start;gap:2px}
  .np-row--stack em{text-align:left;color:var(--n-ink-2)}
  .np-score{font-family:var(--nx-mono);font-weight:600;color:var(--n-ink);font-variant-numeric:tabular-nums;min-width:2.2ch;text-align:right}
  .np-st{font-weight:600;border-radius:5px;padding:.3em .55em;background:#fff;border:1px solid var(--n-border);white-space:nowrap}
  .np-st--ok{color:#15803D;background:#DCFCE7;border-color:#DCFCE7}
  .np-mo{font-weight:600;border-radius:5px;padding:.3em .55em;white-space:nowrap}
  .np-mo--m{color:#B91C1C;background:#FEE2E2}.np-mo--s{color:#9A5B12;background:#FDF1E3}.np-mo--c{color:#1D4ED8;background:#DBEAFE}
  .np-kpi{display:grid;grid-template-columns:1fr auto;gap:3px 10px;align-items:baseline;font-size:var(--nx-label);color:var(--n-ink-2);padding:6px 8px;border-radius:6px;background:var(--n-canvas)}
  .np-kpi b{font-family:'Poppins',sans-serif;font-weight:700;font-size:15px;color:var(--np-c);font-variant-numeric:tabular-nums;line-height:1}
  .np-kpi .nx-bar{grid-column:1/-1;width:100%}
  .np-kpi .nx-bar span{background:var(--np-c)}
  .np-link{margin-top:auto;padding-top:8px;border-top:1px solid var(--n-border);font-size:var(--nx-ui);font-weight:700;color:var(--np-c)}
  .np-road{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
  .np-road__col{background:var(--n-canvas);border-radius:8px;padding:8px}
  .np-road__k{font-size:var(--nx-label);font-weight:700;letter-spacing:.06em;text-transform:uppercase;display:flex;align-items:center;gap:5px;color:var(--n-ink-2)}
  .np-road__k::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--c)}
  .np-road__item{margin-top:6px;background:#fff;border:1px solid var(--n-border);border-radius:6px;padding:6px 8px;font-size:var(--nx-label);font-weight:500;line-height:1.35}
  /* motion: bar segments fill in module order, labels light as they fill, phase rules draw */
  .nx.is-armed:not(.is-live) .np-steps li i::after{transform:scaleX(0)}
  .nx.is-live .np-steps li i::after{animation:np-fill .45s var(--d,0s) cubic-bezier(.2,.7,.3,1) both}
  .nx.is-live .np-steps li span{animation:np-lit .3s calc(var(--d,0s) + .25s) both}
  .nx.is-armed:not(.is-live) .np-phase hr{transform:scaleX(0)}
  .nx.is-live .np-phase hr{animation:np-rule .6s calc(var(--d,0s) + .2s) cubic-bezier(.2,.7,.3,1) both}
  .nx.is-armed:not(.is-live) .nx-pop{opacity:0}
  .np.is-live .nx-pop{animation:nx-pop .35s var(--d,0s) cubic-bezier(.2,.7,.3,1) both}
  @keyframes np-fill{from{transform:scaleX(0)}to{transform:scaleX(1)}}
  @keyframes np-lit{to{color:var(--n-ink)}}
  @keyframes np-rule{from{transform:scaleX(0)}to{transform:scaleX(1)}}
  /* the short read: header, progress and the first Envision row. The other five modules open on request */
  .np:not(.is-open) .np-more{display:none}
  .np-more{display:grid;gap:18px}
  .np-more .nx-in{animation-delay:calc(var(--d,0s) - .85s)!important}
  .np-more .nx-pop{animation-delay:calc(var(--d,0s) - .85s)!important}
  .np-toggle{display:inline-flex;align-items:center;gap:9px;margin:14px 0 0;padding:0;background:none;border:0;font-family:inherit;font-size:14.5px;font-weight:700;color:var(--ink);cursor:pointer}
  .np-toggle:hover{color:var(--teal-deep)}
  .np-toggle .nx-chev{color:var(--teal-deep);margin:0 0 3px}
  .np-toggle[aria-expanded="true"] .np-toggle__more,.np-toggle[aria-expanded="false"] .np-toggle__less{display:none}
  .np-toggle[aria-expanded="true"] .nx-chev{transform:rotate(-135deg);margin:3px 0 0}
  @media(max-width:820px){.np-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
  @media(max-width:560px){.np-grid,.np-grid--2,.np-road{grid-template-columns:1fr}.np-steps{grid-template-columns:repeat(4,1fr)}.np-badge{margin-left:0}}
  @media (max-width:700px){.nk-cards{grid-template-columns:1fr}.nk-search{grid-template-columns:1fr}.nk-tabs b{font-size:var(--nx-label)}}
  @media (max-width:480px){.nk-tabs b svg{display:none}}

  /* Above the backlog: the stack assembles as it scrolls into view (data-mock, app.js). North lands
     first and its chain lights up left to right; the hand-off arrow draws; Execution, Build and
     Evidence arrive in order with their chips; the return loop traces itself and its caption fades in. */
  .nb-stack.is-armed:not(.is-live) .nb-row,.nb-stack.is-armed:not(.is-live) .nb-chain li,.nb-stack.is-armed:not(.is-live) .nb-handoff,.nb-stack.is-armed:not(.is-live) .nb-return,.nb-stack.is-armed:not(.is-live) .nb-return-fallback,.nb-stack.is-armed:not(.is-live) .nb-chips li{opacity:0}
  .nb-stack.is-live .nb-row{animation:nd-in .6s var(--d,0s) cubic-bezier(.2,.7,.3,1) both}
  .nb-chain li:nth-child(1){--i:0}.nb-chain li:nth-child(2){--i:1}.nb-chain li:nth-child(3){--i:2}.nb-chain li:nth-child(4){--i:3}.nb-chain li:nth-child(5){--i:4}.nb-chain li:nth-child(6){--i:5}.nb-chain li:nth-child(7){--i:6}
  .nb-stack.is-live .nb-chain li{animation:nd-in .5s calc(.2s + var(--i,0)*.09s) cubic-bezier(.2,.7,.3,1) both}
  .nb-stack.is-live .nb-handoff{animation:nx-fade .5s .95s ease-out both}
  .nb-handoff svg path{stroke-dasharray:80}
  .nb-stack.is-armed:not(.is-live) .nb-handoff svg path{stroke-dashoffset:80}
  .nb-stack.is-live .nb-handoff svg path{animation:nb-draw .6s 1s ease-out both}
  @keyframes nb-draw{from{stroke-dashoffset:80}to{stroke-dashoffset:0}}
  .nb-chips li:nth-child(1){--i:0}.nb-chips li:nth-child(2){--i:1}.nb-chips li:nth-child(3){--i:2}.nb-chips li:nth-child(4){--i:3}.nb-chips li:nth-child(5){--i:4}
  .nb-stack.is-live .nb-chips li{animation:nx-pop .35s calc(var(--d,0s) + .25s + var(--i,0)*.05s) cubic-bezier(.2,.7,.3,1) both}
  .nb-stack.is-live .nb-return{animation:nx-fade .3s 1.7s ease-out both}
  .nb-stack.is-live .nb-return::before{animation:nb-loop .7s 1.75s cubic-bezier(.2,.7,.3,1) both}
  @keyframes nb-loop{from{clip-path:inset(0 0 100% 0)}to{clip-path:inset(0)}}
  .nb-stack.is-live .nb-return .nb-mono{animation:nx-fade .5s 2.25s ease-out both}
  .nb-stack.is-live .nb-return-fallback{animation:nx-fade .5s 1.8s ease-out both}
  @media (prefers-reduced-motion:reduce){.nb-stack *,.nb-stack *::before{animation:none!important}}

  /* ================= September 17, 2026: home proof, picker plan, configurator, North, lead capture ================= */
  .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
  .inline-link{font-weight:700;color:var(--ink);text-decoration:underline;text-underline-offset:3px;cursor:pointer}
  .inline-link:hover{color:var(--teal-deep)}

  /* Home hero: client proof directly under the hero, then the stats row */
  .proof-strip{margin-top:18px;display:flex;flex-direction:column;gap:10px}
  .proof-strip .ps-k{flex:0 0 auto;margin:0;font-size:11.5px;letter-spacing:.13em;text-transform:uppercase;color:var(--ink-soft);font-weight:700}
  /* Two rows, heights balanced by shape so a 7:1 wordmark weighs the same as a square mark. [data-step] means the fallback chain swapped in a square icon. */
  .proof-strip .ps-row{display:flex;align-items:center;flex-wrap:wrap;justify-content:flex-start;gap:14px 24px}
  .proof-strip .logo-item{display:inline-flex;align-items:center;flex:0 0 auto;min-width:0}
  .proof-strip .logo-item img{display:block;height:28px;width:auto;max-width:100%;object-fit:contain}
  .proof-strip .logo-item img.logo-wide:not([data-step]){height:17px}
  .proof-strip .logo-item img.logo-mid:not([data-step]){height:22px}
  .proof-strip .logo-fallback{display:none;font-family:'Poppins',sans-serif;font-weight:600;font-size:13px;color:var(--ink-soft);white-space:nowrap}
  .statlist.statrow{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));column-gap:40px;margin-top:30px}
  @media(max-width:640px){.proof-strip .ps-row{gap:12px}.proof-strip .logo-item img{height:26px}}

  /* Home challenge picker: the plan it suggests */
  .pick-mods{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;margin-top:14px}
  .pick-mod{background:#fff;border:1px solid var(--hairline);border-radius:12px;padding:16px 18px}
  .pick-mod h3{font-family:'Poppins',sans-serif;font-size:17px;font-weight:600;color:var(--forest);line-height:1.25;margin-bottom:6px}
  .pick-mod p{font-size:14px;color:var(--ink-2);line-height:1.55}

  /* How We Work configurator: sized presets, a summary that stays in view over the cards */
  .preset-col{display:flex;flex-direction:column;gap:6px;max-width:240px}
  .preset-sub{font-size:12.5px;color:var(--ink-soft);line-height:1.4;padding:0 8px}
  #view-work .builder-pick .summary{position:sticky;bottom:12px;z-index:5;box-shadow:0 12px 34px rgba(14,36,30,.28)}
  #view-work .summary .sum-text{flex:1 1 340px;min-width:0}
  #view-work .summary .picked{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
  .pchip{display:inline-flex;align-items:center;gap:6px;background:rgba(251,247,238,.12);border:1px solid rgba(251,247,238,.3);color:#fff;border-radius:20px;padding:3px 8px 3px 10px;font-family:'Inter',sans-serif;font-size:12px;font-weight:600;line-height:1.45;white-space:nowrap;cursor:pointer}
  .pchip .px{font-size:15px;line-height:1;opacity:.7}
  .pchip:hover{border-color:rgba(251,247,238,.6)}
  .pchip:hover .px{opacity:1}
  .pchip:focus-visible{outline:2px solid var(--yellow);outline-offset:2px}
  #view-work .summary .sum-k{display:none}
  /* How We Work's hero is centred, so its button and link are too */
  #view-work header .alt-cta{justify-content:center}
  /* Desktop: the cards on the left and the plan as a cart on the right, clear of what you are
     reading. Below 1024px the plan stays the bar pinned to the bottom of the screen. */
  @media(min-width:1024px){
    #view-work .builder-pick{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:24px;align-items:start}
    #view-work .builder-pick .mod-grid{margin-top:0}
    #view-work .builder-pick .summary{position:sticky;top:84px;bottom:auto;margin-top:0;flex-direction:column;align-items:stretch;gap:18px;padding:22px 20px;box-shadow:var(--shadow)}
    #view-work .summary .sum-text{flex:none}
    #view-work .summary .sum-k{display:block;font-family:'Poppins',sans-serif;font-size:18px;font-weight:600;color:#fff;margin-bottom:6px}
    #view-work .summary .picked{flex-direction:column;align-items:stretch;gap:8px;margin-top:14px}
    #view-work .summary .pchip{justify-content:space-between;border-radius:10px;padding:8px 10px 8px 12px;font-size:13px;white-space:normal;text-align:left}
    #view-work .builder-pick .summary .btn{width:100%;padding:14px 16px;font-size:15px}
  }
  @media(min-width:1024px) and (max-width:1199px){#view-work .builder-pick{grid-template-columns:minmax(0,1fr) 260px}}
  .pnone{font-family:'Inter',sans-serif;font-size:13px;font-weight:500;color:rgba(251,247,238,.72)}
  .mix-close{font-size:14.5px;color:var(--ink-2);line-height:1.55;margin-top:14px;padding:0 4px}
  @media(max-width:640px){
    .preset-col{max-width:none;width:100%}
    #view-work .builder-pick .summary{bottom:8px;padding:12px 14px;gap:8px}
    #view-work .summary .sl{font-size:13px}
    #view-work .summary .sl-more{display:none}
    #view-work .summary .picked{margin-top:6px}
    #view-work .builder-pick .summary .btn{padding:11px 14px;font-size:14.5px}
    #view-work .summary .picked{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none}
    #view-work .summary .picked::-webkit-scrollbar{display:none}
  }

  /* Contact modal: book a time first, or leave a note */
  .mcal-k{font-family:'Poppins',sans-serif;font-size:15px;font-weight:600;color:var(--ink);margin-bottom:8px}
  .mcal-frame{border:1.5px dashed var(--line);border-radius:12px;background:#fff;overflow:hidden}
  .mcal-frame.is-live{border-style:solid}
  .mcal-frame iframe{display:block;width:100%;height:560px;border:0}
  .mcal-ph{display:flex;align-items:center;gap:14px;padding:16px 18px;color:var(--teal-deep)}
  .mcal-ph svg{flex:0 0 auto}
  .mcal-ph p{margin:0;font-size:13.5px;color:var(--ink-soft);line-height:1.5}
  .mdivider{display:flex;align-items:center;gap:12px;margin:20px 0 16px;font-size:11.5px;letter-spacing:.12em;text-transform:uppercase;font-weight:700;color:var(--ink-soft)}
  .mdivider::before,.mdivider::after{content:"";flex:1;height:1px;background:var(--line)}

  /* Snapshot results: keep it, forward it, or run it across the team */
  /* The Snapshot opens on its first question; the title and the Diagnostic line sit above it. */
  #view-snapshot .qhead{text-align:center;max-width:720px;margin:0 auto 20px}
  #view-snapshot .qhead h1{font-size:clamp(24px,4vw,34px);line-height:1.12;font-weight:700;letter-spacing:-.02em}
  #view-snapshot .qhead h1 .hl{background:linear-gradient(transparent 60%,var(--yellow-soft) 60%);padding:0 .04em}
  #view-snapshot .qhead .intro-team{font-size:15px;color:var(--ink-2);margin-top:8px}
  #view-snapshot .qhead .intro-team a{font-weight:700;color:var(--ink);text-decoration:underline;text-underline-offset:3px}
  #view-snapshot .qhead .intro-team a:hover{color:var(--teal-deep)}
  #view-snapshot .share3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:18px}
  #view-snapshot .s3-card{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:22px 20px;display:flex;flex-direction:column;gap:10px}
  #view-snapshot .s3-card h3{font-size:17px;font-weight:700;line-height:1.25}
  #view-snapshot .s3-card p{font-size:14px;color:var(--ink-soft);line-height:1.5}
  #view-snapshot .s3-card input{width:100%;padding:12px 14px;border:1.5px solid var(--line);border-radius:10px;font-family:inherit;font-size:15px;background:var(--cream);color:var(--ink)}
  #view-snapshot .s3-card input:focus{outline:none;border-color:var(--yellow-deep)}
  #view-snapshot .s3-card input.bad{border-color:var(--coral)}
  #view-snapshot .s3-card .btn{width:100%;margin-top:auto;padding:13px 18px;font-size:15px}
  #view-snapshot .s3-card .s3-note{font-size:13px;color:var(--ink-2);font-style:italic;background:var(--cream);border-left:3px solid var(--yellow);border-radius:0 8px 8px 0;padding:8px 10px}
  #view-snapshot .s3-card .s3-note span{display:block;font-style:normal;font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;font-weight:700;color:var(--ink-soft);margin-bottom:3px}
  #view-snapshot .s3-card .s3-msg{font-size:13px;color:var(--teal-deep)}
  #view-snapshot .s3-card .s3-msg:empty{display:none}
  #view-snapshot .s3-team .alink{margin-top:auto}
  #view-snapshot .s3-team .alink:hover{color:var(--teal-deep)}
  @media(max-width:767px){#view-snapshot .share3{grid-template-columns:1fr}#view-snapshot .s3-card{width:100%}}
  /* The Snapshot runs one scenario per screen: the card fills the viewport, the answers are
     full-width cards, and Back sits at the top left. */
  #view-snapshot .stage{display:flex;flex-direction:column;justify-content:center;min-height:calc(100vh - 150px)}
  @supports(height:100dvh){#view-snapshot .stage{min-height:calc(100dvh - 150px)}}
  #view-snapshot .qtop{margin-bottom:14px}
  #view-snapshot .qtop .back{background:none;border:none;color:var(--ink-soft);font-weight:600;font-size:14px;cursor:pointer;font-family:inherit;display:inline-flex;align-items:center;gap:6px;padding:8px 4px 8px 0}
  #view-snapshot .qtop .back:hover{color:var(--ink)}
  #view-snapshot .qtop .back[disabled]{opacity:.35;cursor:default}
  #view-snapshot .options{gap:12px}
  #view-snapshot .opt{min-height:56px;align-items:center}
  #view-snapshot .scale-btn{min-height:56px}
  #view-snapshot .qnav{justify-content:flex-end}

  /* North overview player */
  .north-video{position:relative}
  .north-video video{aspect-ratio:16/9;background:#0c1a2b}
  .north-video video::cue{font-family:'Inter',sans-serif;background:rgba(14,36,30,.84);color:#fff}
  .nv-play{position:absolute;left:50%;top:50%;z-index:2;width:84px;height:84px;margin:-42px 0 0 -42px;border-radius:50%;border:none;background:var(--yellow);box-shadow:0 10px 30px rgba(0,0,0,.35);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:transform .15s,background .2s}
  .nv-play span{width:0;height:0;border-style:solid;border-width:15px 0 15px 25px;border-color:transparent transparent transparent var(--ink);margin-left:6px}
  .nv-play:hover{background:var(--yellow-deep);transform:scale(1.06)}
  .nv-play:focus-visible{outline:3px solid #fff;outline-offset:3px}
  .north-video.is-playing .nv-play,.north-video.is-fallback .nv-play{display:none}
  @media(max-width:640px){.nv-play{width:64px;height:64px;margin:-32px 0 0 -32px}.nv-play span{border-width:12px 0 12px 20px;margin-left:5px}}

  /* North, the platform: five tabs, an accordion on mobile */
  .ntabs{margin-top:30px}
  .ntab-list{display:flex;gap:4px;border-bottom:1px solid var(--hairline);overflow-x:auto;scrollbar-width:none}
  .ntab-list::-webkit-scrollbar{display:none}
  .ntab{flex:0 0 auto;display:inline-flex;align-items:baseline;gap:8px;background:none;border:none;border-bottom:3px solid transparent;margin-bottom:-1px;padding:12px 14px 13px;font-family:'Poppins',sans-serif;font-size:15px;font-weight:600;color:var(--ink-soft);cursor:pointer;white-space:nowrap;transition:color .15s,border-color .15s}
  .ntab:hover{color:var(--ink)}
  .ntab[aria-selected="true"]{color:var(--forest);border-bottom-color:var(--yellow-deep)}
  .ntab:focus-visible,.ntab-acc:focus-visible{outline:3px solid var(--yellow-deep);outline-offset:2px}
  .ntab-n{font-size:12px;font-weight:700;letter-spacing:.04em;color:var(--teal-deep)}
  .ntab-acc{display:none}
  .ntab-item .ntab-panel{display:none;padding:28px 0 4px}
  .ntab-item[data-open="1"] .ntab-panel{display:block}
  .ntab-screen{display:none}
  .ntab-panel:focus{outline:none}
  .ntab-panel:focus-visible{outline:2px solid var(--yellow-deep);outline-offset:6px}
  .ntab-panel h3{font-family:'Poppins',sans-serif;font-size:clamp(20px,2.2vw,26px);font-weight:600;color:var(--forest);line-height:1.2;letter-spacing:-.01em;max-width:34ch;margin-bottom:10px}
  .ntab-panel>p{font-size:16px;color:var(--ink-2);line-height:1.62;max-width:66ch}
  @media(max-width:760px){
    .ntab-list{display:none}
    .ntab-item{border-top:1px solid var(--hairline)}
    .ntab-item:last-child{border-bottom:1px solid var(--hairline)}
    .ntab-acc{display:flex;align-items:baseline;gap:10px;width:100%;position:relative;background:none;border:none;padding:16px 30px 16px 0;text-align:left;font-family:'Poppins',sans-serif;font-size:17px;font-weight:600;color:var(--ink);cursor:pointer}
    .ntab-acc::after{content:"+";position:absolute;right:4px;top:11px;font-size:24px;font-weight:500;line-height:1.2;color:var(--teal-deep)}
    .ntab-acc[aria-expanded="true"]{color:var(--forest)}
    .ntab-acc[aria-expanded="true"]::after{content:"\2212"}
    .ntab-panel{padding:2px 0 24px}
  }

  /* ===== Page FAQs, the Snapshot's written section, and figure sources (September 19, 2026) ===== */
  .asec-rule{border-top:1px solid var(--line-soft)}
  .faq .fa-body a{color:var(--teal-deep);text-decoration:underline;text-underline-offset:3px}
  .page .faq{margin-left:0}
  .stat-src{font-size:12.5px;line-height:1.5;color:var(--ink-soft);margin-top:16px;max-width:80ch}
  .asec-forest .stat-src{color:rgba(251,247,238,.74)}
  .snap-about{padding:56px 0 64px;border-top:1px solid var(--line-soft)}
  .snap-about h2{font-family:'Poppins',sans-serif;font-weight:600;font-size:clamp(24px,3vw,32px);color:var(--forest);letter-spacing:-.01em;line-height:1.2}
  .snap-about p{margin-top:12px;max-width:70ch;color:var(--ink-2);font-size:16.5px;line-height:1.65}
  .snap-about .faq{margin-top:26px}
  .art-list.further{max-width:800px;margin-top:18px}
  .art-review{max-width:800px;margin:18px auto 0;padding:10px 16px;border:1px dashed var(--coral);border-radius:10px;color:var(--coral-text);font-size:14px;font-weight:600}

  /* ================= Articles: the Protege Pulse mirror (September 19, 2026) =================
     /articles lists them and /articles/SLUG holds one. The body markup comes from Substack through
     scripts/sync-substack.js, so these rules style plain tags inside .art-body and nothing else. */
  .art-wrap{max-width:800px}
  .art-head{padding:56px 0 8px}
  .art-head h1.dh{font-size:clamp(32px,5vw,50px);max-width:22ch;line-height:1.12}
  .art-head .lede{max-width:60ch}
  .art-head .eb a{color:inherit;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
  .art-by{margin-top:18px;font-size:14.5px;font-weight:600;color:var(--ink-soft)}
  .art-body{padding-top:26px;padding-bottom:12px;font-size:18px;line-height:1.75;color:var(--ink-2)}
  .art-body>*+*{margin-top:1.2em}
  .art-body h2,.art-body h3,.art-body h4,.art-body h5,.art-body h6{color:var(--forest);line-height:1.25;letter-spacing:-.01em;font-weight:600;margin-top:1.9em}
  .art-body h2{font-size:clamp(24px,3vw,30px)}
  .art-body h3{font-size:clamp(20px,2.5vw,24px)}
  .art-body h4,.art-body h5,.art-body h6{font-size:18.5px;font-family:'Poppins',sans-serif}
  .art-body h2 strong,.art-body h3 strong,.art-body h4 strong{font-weight:inherit}
  .art-body a{color:var(--teal-deep);text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}
  .art-body ul,.art-body ol{padding-left:1.35em}
  .art-body li+li{margin-top:.5em}
  .art-body li>p+p{margin-top:.6em}
  .art-body blockquote{border-left:4px solid var(--yellow);padding:4px 0 4px 20px;color:var(--ink);font-size:1.04em}
  .art-body blockquote>*+*{margin-top:.8em}
  .art-body .callout{background:var(--yellow-wash);border:1px solid var(--line);border-radius:14px;padding:20px 22px}
  .art-body .callout>*+*{margin-top:.8em}
  .art-body figure{margin-left:0;margin-right:0;text-align:center}
  .art-body img{height:auto;border-radius:12px;display:inline-block}
  .art-body figcaption{font-size:14px;color:var(--ink-soft);margin-top:8px}
  .art-body hr{border:0;border-top:1px solid var(--line);margin:2.2em 0}
  .art-body pre{background:var(--cream-2);border-radius:12px;padding:16px 18px;overflow-x:auto;font-size:15px;line-height:1.55}
  .art-body table{width:100%;border-collapse:collapse;font-size:16px;display:block;overflow-x:auto}
  .art-body th,.art-body td{border:1px solid var(--line);padding:8px 10px;text-align:left;vertical-align:top}
  .art-end{padding-top:22px;padding-bottom:64px}
  .art-src{font-size:15px;color:var(--ink-soft);border-top:1px solid var(--line);padding-top:20px}
  .art-src a{color:var(--teal-deep);text-decoration:underline;text-underline-offset:3px}
  .art-more{background:var(--cream-2);padding:52px 0 60px}
  .art-more h2{font-size:clamp(22px,2.8vw,28px);color:var(--forest);font-weight:600;margin-bottom:8px}
  .art-list{list-style:none}
  .art-list li{border-top:1px solid var(--line);padding:20px 0}
  .art-list li:first-child{border-top:0}
  .art-list time{display:block;font-size:12.5px;letter-spacing:.12em;text-transform:uppercase;font-weight:700;color:var(--teal-deep)}
  .art-list a{display:inline-block;margin-top:4px;font-family:'Poppins',sans-serif;font-weight:600;font-size:clamp(18px,2.2vw,21px);line-height:1.3;color:var(--forest);text-decoration:none}
  .art-list a:hover{text-decoration:underline;text-underline-offset:4px}
  .art-list p{margin-top:6px;color:var(--ink-2);font-size:16px;line-height:1.6;max-width:70ch}
  .art-list li.has-thumb{display:grid;grid-template-columns:176px minmax(0,1fr);gap:22px;align-items:start}
  .art-thumb{display:block;margin-top:0!important;border-radius:12px;overflow:hidden;background:var(--cream-2);line-height:0}
  .art-thumb img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;transition:transform .35s ease}
  .art-list li.has-thumb:hover .art-thumb img{transform:scale(1.03)}
  .art-list li.has-thumb time{margin-top:2px}
  @media(max-width:767px){
    .art-list li.has-thumb{grid-template-columns:104px minmax(0,1fr);gap:14px}
    .art-thumb{border-radius:10px}
    .art-list li.has-thumb p{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
  }
  .art-index{padding:8px 0 72px}
  .art-h{font-size:clamp(22px,2.8vw,28px);color:var(--forest);font-weight:600;letter-spacing:-.01em;margin:44px 0 4px;padding-top:6px}
  .art-index .art-h:first-child{margin-top:8px}
  .art-topics{display:flex;flex-wrap:wrap;gap:8px;margin:34px 0 0}
  .art-topics a{border:1px solid var(--line);background:var(--card);border-radius:999px;padding:8px 14px;font-size:14px;font-weight:600;color:var(--ink);text-decoration:none;cursor:pointer}
  .art-topics a:hover{border-color:var(--forest)}
  @media(max-width:767px){
    .art-head{padding:36px 0 4px}
    .art-body{font-size:17px;line-height:1.7;padding-top:18px}
    .art-end{padding-bottom:44px}
    .art-more{padding:38px 0 44px}
  }

  /* ================= Mobile pass (September 17, 2026). Mobile is under 768px. ================= */
  /* Long hero paragraphs stop after two sentences on a phone. One copy of the text, hidden in part. */
  .m-only{display:none}
  .mcta{display:none}
  .sheet-grip{display:none}
  .sheet-mail{display:none}
  .foot-m{display:none}
  .drawer-m,.drawer-cta{display:none}
  @media(max-width:767px){
    .m-hide{display:none}
    .m-only{display:inline}

    /* One hero action on a phone: a full-width button, with any other call sitting under it
       as a centred text link. */
    .alt-cta,.page .phero .cta-row{flex-direction:column;align-items:stretch;gap:14px}
    .alt-cta .btn,.page .phero .cta-row .btn{width:100%;min-height:48px}
    .alt-cta .alink,.page .phero .cta-row .alink{font-size:14px;text-align:center;white-space:normal}

    /* One bar fixed to the bottom of the screen, in place of the top banner. It steps aside on
       the Snapshot (a question at a time) and How We Work (the configurator has its own summary
       bar), and while a sheet or the menu holds the screen. */
    .mcta{position:fixed;left:0;right:0;bottom:0;z-index:60;display:flex;align-items:center;height:calc(56px + env(safe-area-inset-bottom));padding:0 16px env(safe-area-inset-bottom);background:var(--paper);border-top:1px solid var(--hairline);box-shadow:0 -6px 20px rgba(22,38,31,.1)}
    .mcta .btn{width:100%;min-height:44px;padding:11px 16px;font-size:15px}
    body{padding-bottom:calc(56px + env(safe-area-inset-bottom))}
    html[data-current-view="snapshot"] .mcta,html[data-current-view="work"] .mcta,html.is-locked .mcta{display:none}
    html[data-current-view="snapshot"] body,html[data-current-view="work"] body{padding-bottom:0}

    /* The challenge cards: a little tighter on a phone. */
    .pick{padding:20px 20px 20px 54px}
    .pick-check{top:22px}

    /* One row of figures per page: the hero's, three across with the number on top. The outcome
       row and the footer row stand down. */
    .statlist.statrow{grid-template-columns:repeat(3,minmax(0,1fr));column-gap:10px;margin-top:22px}
    .statlist.statrow .srow{flex-direction:column-reverse;justify-content:flex-end;align-items:center;gap:6px;text-align:center;padding:14px 2px;font-size:12.5px;line-height:1.3}
    .statlist.statrow .pillv{border:0;background:none;padding:0;font-family:'Poppins',sans-serif;font-size:24px;color:var(--forest)}
    #view-home .asec-band .bignums{display:none}

    /* The eight modules read as an accordion: number, name and the "You get" line, opening to
       the description. */
    .modrow{align-items:flex-start;padding:0;gap:12px}
    .modrow-head{display:grid;grid-template-columns:1fr auto;align-items:center;gap:4px 12px;min-height:56px;padding:14px 4px 14px 0;cursor:pointer}
    .modrow-head h3{grid-column:1;margin:0;font-size:17px}
    .modrow .mod-get{display:block;grid-column:1;font-size:13px;font-style:italic;color:var(--ink-2)}
    .modrow .chev{display:block;grid-column:2;grid-row:1 / span 2;width:9px;height:9px;margin:0 4px;border-right:2px solid var(--teal-deep);border-bottom:2px solid var(--teal-deep);transform:rotate(45deg);transition:transform .2s}
    .modrow-head[aria-expanded="true"] .chev{transform:rotate(-135deg)}
    .modrow-body{display:none;padding:0 4px 16px 0}
    .modrow.is-open .modrow-body{display:block}

    /* North on a phone: hero, the video, the five changes, then the stack diagram. Each row keeps
       its headline and "What it kills" line in view, and the screens wait behind a button. */
    /* The router writes display inline, so the reorder has to outrank it, and only while North
       is the view on screen: a hidden view must stay hidden. */
    html[data-current-view="north"] #view-north{display:flex!important;flex-direction:column}
    #view-north > header{order:1}
    #view-north .n-video{order:2}
    #view-north .n-platform{order:3}
    #view-north #above-the-backlog{order:4}
    #view-north > section{order:5}
    #view-north > footer{order:9}
    #view-north .nb-stack{overflow-x:auto;-webkit-overflow-scrolling:touch}
    #view-north .nb-stack > *{min-width:520px}
    .ntab-item .ntab-panel{display:block;padding:0}
    .ntab-item .ntab-panel h3{order:1;font-size:19px;margin:0 0 10px}
    .ntab-item .ntab-panel > p{order:3;margin-top:14px}
    .ntab-item .whatkills{order:2;margin-top:0}
    .ntab-item .ntab-screen{order:4}
    .ntab-item .ntab-screens{order:5}
    .ntab-item .ntab-panel{display:flex;flex-direction:column;padding:0 0 18px}
    .ntab-item[data-open="0"] .ntab-panel > p,.ntab-item[data-open="0"] .ntab-screen,.ntab-item[data-open="0"] .ntab-screens{display:none}
    .ntab-screen{display:inline-flex;align-self:flex-start;align-items:center;min-height:44px;margin-top:16px;padding:10px 18px;border:1.5px solid var(--ink);border-radius:10px;background:transparent;font-family:inherit;font-size:14.5px;font-weight:600;color:var(--ink);cursor:pointer}
    .ntab-screens{display:none;margin-top:14px;overflow-x:auto;-webkit-overflow-scrolling:touch}
    .ntab-screens.is-shown{display:block}
    .ntab-screens .nx,.ntab-screens .nr,.ntab-screens .nd{min-width:520px}

    /* The contact modal becomes a bottom sheet: it slides up over most of the screen, with a
       grip to pull it back down. */
    .modal-backdrop{align-items:flex-end;padding:0}
    .modal{max-width:none;height:90vh;max-height:90vh;border-radius:20px 20px 0 0;transform:translateY(100%) scale(1);transition:transform .28s cubic-bezier(.3,.8,.4,1);overscroll-behavior:contain}
    @supports(height:100dvh){.modal{height:90dvh;max-height:90dvh}}
    .modal-backdrop.open .modal{transform:none}
    .sheet-grip{display:block;position:sticky;top:0;z-index:3;padding:10px 0 4px;background:var(--cream);cursor:grab;touch-action:none}
    .sheet-grip::before{content:"";display:block;width:44px;height:5px;margin:0 auto;border-radius:3px;background:var(--line)}
    .modal-head{padding-top:6px}
    .modal-close{top:10px}
    .modal-body{padding-bottom:calc(28px + env(safe-area-inset-bottom))}
    .sheet-mail{display:block;margin-top:16px;text-align:center;font-size:14px}
    .sheet-mail a{color:var(--ink-soft);text-decoration:underline;text-underline-offset:3px}
    .mcal-frame iframe{height:min(52vh,460px)}

    /* The footer keeps the logo, the blurb, one button, five links and the line of small print. */
    footer .foot-links{display:none}
    footer{padding-top:44px}
    footer .sf-top{gap:22px}
    .foot-m{display:block}
    .foot-m .btn{width:100%;min-height:48px}
    .foot-m-links{display:flex;justify-content:space-between;gap:8px;margin-top:20px}
    .foot-m-links a,#view-snapshot .foot-m-links a,#view-work .foot-m-links a{font-size:13px;font-weight:600;color:rgba(251,247,238,.82);text-decoration:none;white-space:nowrap}
    footer .copy{margin-top:24px;text-align:center}

    /* The menu fills the screen, grouped, with the Snapshot button pinned at the foot. */
    .drawer{width:100%;max-width:none;height:100vh;display:flex;flex-direction:column}
    @supports(height:100dvh){.drawer{height:100dvh}}
    .drawer-links:not(.drawer-m){display:none}
    .drawer-m{display:flex;flex:1 1 auto;overflow-y:auto;padding:8px 22px 20px}
    .drawer-m a{display:flex;align-items:center;min-height:48px;padding:0;font-size:16.5px}
    .drawer-m a:last-child{border-bottom:0}
    .drawer-cta{display:block;flex:0 0 auto;border-top:1px solid var(--line);padding:14px 22px calc(14px + env(safe-area-inset-bottom))}
    .drawer-cta .btn{width:100%;min-height:48px}

    /* The client logos scroll sideways rather than wrapping. */
    .proof-strip .ps-row{flex-wrap:nowrap;justify-content:flex-start;gap:18px;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;padding-bottom:2px}
    .proof-strip .ps-row::-webkit-scrollbar{display:none}
    .proof-strip .logo-item{flex:0 0 auto}

    /* Two grids carry their column count inline, which left them wider than the screen. */
    #view-course .ocards{grid-template-columns:1fr!important}
    #view-work .bignums{grid-template-columns:1fr 1fr!important}
  }

