/* ============================================================================
   GALACTICA PROTECTION — protection.je
   Stylesheet. Group DNA (tokens, type, chrome structure) with Protection's
   dark-dominant palette. Append-only, prefixed classes for interior pages.
   ============================================================================ */

:root{
  --ink:#0D1B2A; --panel:#142231; --slate:#1C2B3A; --warm:#F5F2EE; --mist:#E8EDF2;
  --accent:#2D5A7A; --accent-light:#6FA2C4; --accent-deep:#23475F;
  --muted:#6B7A8D; --platinum:#9FB1BE;
  --t-90:rgba(245,242,238,0.92); --t-60:rgba(245,242,238,0.62);
  --t-45:rgba(245,242,238,0.46); --t-30:rgba(245,242,238,0.30);
  --line:rgba(159,177,190,0.16); --line-soft:rgba(245,242,238,0.10);
  --fh:'Manrope Variable',Manrope,system-ui,sans-serif;
  --fb:'Inter Variable',Inter,system-ui,sans-serif;
  --maxw:1240px; --pad-h:48px; --pad-v:104px;
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;background:#0D1B2A;color-scheme:dark;}
body{font-family:var(--fb);background:#0D1B2A;color:var(--warm);line-height:1.6;-webkit-font-smoothing:antialiased;min-height:100vh;}
ul{list-style:none;} a{color:inherit;text-decoration:none;} button{cursor:pointer;font-family:inherit;}
a:focus-visible,button:focus-visible{outline:2px solid var(--accent-light);outline-offset:3px;border-radius:2px;}
.inner{max-width:var(--maxw);margin:0 auto;padding:0 var(--pad-h);}

.eyebrow{display:inline-flex;align-items:center;gap:11px;font-size:10.5px;font-weight:600;letter-spacing:2.6px;text-transform:uppercase;color:var(--accent-light);margin-bottom:24px;}
.eyebrow::before{content:'';width:26px;height:1.5px;background:var(--accent-light);}
.btn-solid{display:inline-flex;align-items:center;gap:9px;background:var(--warm);color:var(--slate);font-size:13.5px;font-weight:600;padding:14px 26px;border-radius:6px;transition:transform .15s,box-shadow .15s;}
.btn-solid:hover{transform:translateY(-1px);box-shadow:0 8px 24px rgba(0,0,0,0.28);}
.btn-ghost{display:inline-flex;align-items:center;gap:9px;background:transparent;color:var(--warm);font-size:13.5px;font-weight:500;padding:13px 26px;border-radius:6px;border:1.5px solid rgba(245,242,238,0.28);transition:border-color .15s;}
.btn-ghost:hover{border-color:var(--warm);}
.txtlink{display:inline-flex;align-items:center;gap:7px;font-size:13px;font-weight:600;color:var(--accent-light);margin-top:26px;}
.txtlink svg{transition:transform .15s;} .txtlink:hover svg{transform:translateX(3px);}

/* NAV — ink, hairline */
.site-header{position:sticky;top:0;z-index:200;}
.nav{background:var(--ink);height:68px;display:flex;align-items:center;padding:0 40px;border-bottom:1px solid var(--line-soft);}
.nav-logo{display:block;line-height:0;flex-shrink:0;}
.nav-links{display:flex;align-items:center;gap:4px;position:absolute;left:50%;transform:translateX(-50%);}
.nav-links li a{font-size:13.5px;font-weight:500;color:rgba(245,242,238,0.55);padding:6px 16px;border-radius:4px;white-space:nowrap;transition:color .15s;}
.nav-links li a:hover{color:var(--warm);}
.nav-cta{margin-left:auto;background:var(--accent);color:#fff;font-size:13px;font-weight:500;padding:9px 18px;border-radius:6px;white-space:nowrap;flex-shrink:0;transition:background .15s;}
.nav-cta:hover{background:var(--accent-deep);}
.nav-hamburger{display:none;flex-direction:column;gap:5px;width:36px;height:36px;padding:6px;background:none;border:none;margin-left:auto;}
.nav-hamburger span{display:block;width:100%;height:1.5px;background:var(--warm);}

/* HERO */
.p-hero{position:relative;min-height:90vh;display:flex;align-items:center;overflow:hidden;background:
   radial-gradient(80% 70% at 86% 4%, rgba(45,90,122,0.28) 0%, transparent 55%),var(--ink);}
.p-hero-grid{position:absolute;inset:0;background-image:
   linear-gradient(rgba(245,242,238,0.045) 1px,transparent 1px),
   linear-gradient(90deg,rgba(245,242,238,0.045) 1px,transparent 1px);
   background-size:64px 64px;mask-image:radial-gradient(95% 80% at 80% 18%,#000 20%,transparent 78%);}
.p-hero-node{position:absolute;top:30%;right:18%;width:13px;height:13px;border-radius:50%;background:var(--accent-light);
   box-shadow:0 0 0 7px rgba(111,162,196,0.14),0 0 0 17px rgba(111,162,196,0.05);}
.p-hero-frame{position:absolute;inset:22px;border:1px solid var(--line);border-radius:6px;pointer-events:none;}
.p-hero-frame::before{content:'';position:absolute;top:-4px;left:-4px;width:8px;height:8px;background:var(--accent-light);border-radius:1px;}
.p-hero-inner{position:relative;max-width:var(--maxw);margin:0 auto;padding:0 72px;width:100%;}
.p-hero-content{max-width:760px;}
.p-hero h1{font-family:var(--fh);font-weight:800;font-size:clamp(40px,6.6vw,72px);line-height:0.98;letter-spacing:-2.6px;color:var(--warm);margin-bottom:26px;}
.p-hero h1 .a{color:var(--accent-light);}
.p-hero .sub{font-size:clamp(15px,1.5vw,17px);line-height:1.7;color:var(--t-60);max-width:560px;margin-bottom:40px;}
.p-hero-ctas{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:46px;}
.p-hero-trust{display:flex;align-items:center;flex-wrap:wrap;font-size:11.5px;color:var(--t-60);}
.p-hero-trust span{display:flex;align-items:center;gap:7px;}
.p-hero-trust span + span{margin-left:18px;padding-left:18px;border-left:1px solid rgba(245,242,238,0.18);}
.p-hero-trust i{width:5px;height:5px;border-radius:50%;background:var(--accent-light);display:inline-block;}
.p-hero-scroll{position:absolute;bottom:40px;left:50%;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:8px;color:var(--t-30);font-size:9.5px;letter-spacing:2px;text-transform:uppercase;}
.p-hero-scroll .l{width:1px;height:34px;background:linear-gradient(var(--accent-light),transparent);}

/* DIFFERENCE — light */
.p-diff{background:var(--warm);padding:var(--pad-v) 0;}
.p-diff .eyebrow{color:var(--accent);} .p-diff .eyebrow::before{background:var(--accent);}
.p-diff-title{font-family:var(--fh);font-weight:800;font-size:clamp(30px,3.8vw,46px);line-height:1.05;letter-spacing:-2px;color:var(--slate);max-width:760px;}
.p-diff-body{font-size:16px;line-height:1.74;color:var(--muted);max-width:640px;margin-top:24px;}
.p-diff-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:56px;}
.p-diff-card{background:#fff;border:1px solid rgba(28,43,58,0.10);border-radius:14px;padding:32px 30px;transition:transform .15s,box-shadow .15s;}
.p-diff-card:hover{transform:translateY(-2px);box-shadow:0 14px 32px rgba(28,43,58,0.08);}
.p-diff-icon{width:48px;height:48px;border-radius:11px;background:rgba(45,90,122,0.10);display:grid;place-items:center;color:var(--accent);margin-bottom:22px;}
.p-diff-icon i{font-size:23px;}
.p-diff-card h3{font-family:var(--fh);font-weight:700;font-size:18px;letter-spacing:-0.3px;color:var(--slate);margin-bottom:10px;}
.p-diff-card p{font-size:13.5px;line-height:1.62;color:var(--muted);}

/* DATA SOVEREIGNTY — dark, three point-cards */
.ds{padding:var(--pad-v) 0;background:var(--ink);}
.ds-title{font-family:var(--fh);font-weight:800;font-size:clamp(28px,3.6vw,44px);line-height:1.05;letter-spacing:-2px;color:var(--warm);max-width:700px;}
.ds-body{font-size:16px;line-height:1.72;color:var(--t-60);max-width:620px;margin-top:22px;}
.dsp-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:50px;}
.dsp-card{background:rgba(245,242,238,0.03);border:1px solid var(--line-soft);border-radius:14px;padding:30px 28px;}
.dsp-icon{width:46px;height:46px;border-radius:11px;background:rgba(45,90,122,0.20);display:grid;place-items:center;color:var(--accent-light);margin-bottom:20px;}
.dsp-icon i{font-size:22px;}
.dsp-card h4{font-family:var(--fh);font-weight:700;font-size:17px;letter-spacing:-0.3px;color:var(--warm);margin-bottom:9px;}
.dsp-card p{font-size:13px;line-height:1.6;color:var(--t-60);}
.dsp-stack{margin-top:40px;display:flex;align-items:center;flex-wrap:wrap;gap:10px;font-size:11.5px;}
.dsp-stack b{font-weight:600;color:var(--t-60);letter-spacing:.04em;text-transform:uppercase;font-size:10px;}
.dsp-stack .wm{font-family:var(--fh);font-weight:600;color:var(--t-60);}
.dsp-stack .dot{width:3px;height:3px;border-radius:50%;background:var(--t-30);}

/* INTEGRATION — light, one-interface device (Experience folded in) */
.intg{background:var(--warm);padding:var(--pad-v) 0;}
.intg .eyebrow{color:var(--accent);} .intg .eyebrow::before{background:var(--accent);}
.intg-title{font-family:var(--fh);font-weight:800;font-size:clamp(28px,3.6vw,44px);line-height:1.05;letter-spacing:-2px;color:var(--slate);max-width:680px;}
.intg-body{font-size:16px;line-height:1.74;color:var(--muted);max-width:520px;margin-top:22px;}
.intg-trio{display:flex;flex-wrap:wrap;margin-top:24px;}
.intg-trio span{font-size:11.5px;font-weight:600;letter-spacing:1.2px;text-transform:uppercase;color:var(--slate);}
.intg-trio span + span{margin-left:16px;padding-left:16px;border-left:1px solid rgba(28,43,58,0.16);}
.intg .txtlink{color:var(--accent);}
.intg-grid{display:grid;grid-template-columns:1fr 0.95fr;gap:64px;align-items:center;}
.intf-card{background:var(--slate);border-radius:18px;padding:22px;box-shadow:0 24px 60px rgba(28,43,58,0.22);}
.intf-top{display:flex;align-items:center;justify-content:space-between;padding-bottom:16px;border-bottom:1px solid rgba(245,242,238,0.10);margin-bottom:8px;}
.intf-home{font-family:var(--fh);font-weight:700;font-size:14px;color:var(--warm);display:flex;align-items:center;gap:9px;}
.intf-home i{color:var(--accent-light);font-size:17px;}
.intf-status{display:inline-flex;align-items:center;gap:7px;font-size:11px;font-weight:600;color:var(--warm);background:rgba(111,162,196,0.16);border:1px solid rgba(111,162,196,0.32);padding:5px 11px;border-radius:20px;}
.intf-status .d{width:6px;height:6px;border-radius:50%;background:var(--accent-light);}
.intf-row{display:flex;align-items:center;gap:13px;padding:13px 4px;border-bottom:1px solid rgba(245,242,238,0.06);}
.intf-row:last-child{border-bottom:none;}
.intf-row > i{font-size:18px;color:var(--accent-light);width:20px;text-align:center;}
.intf-row .lab{font-size:13.5px;color:var(--warm);font-weight:500;}
.intf-row .val{margin-left:auto;font-size:12px;color:var(--t-60);}
.intf-cap{font-size:13.5px;line-height:1.6;color:var(--muted);margin-top:22px;}
.intf-cap b{color:var(--slate);font-weight:600;}

/* MONITORING — dark, always-on ring */
.mon{padding:var(--pad-v) 0;background:var(--ink);}
.mon-title{font-family:var(--fh);font-weight:800;font-size:clamp(28px,3.6vw,44px);line-height:1.05;letter-spacing:-2px;color:var(--warm);}
.mon-body{font-size:16px;line-height:1.72;color:var(--t-60);margin-top:18px;}
.monb-grid{display:grid;grid-template-columns:1.1fr 0.9fr;gap:60px;align-items:center;}
.monb-list{margin-top:26px;display:flex;flex-direction:column;gap:13px;}
.monb-li{display:flex;align-items:flex-start;gap:11px;font-size:13.5px;color:var(--t-60);line-height:1.5;}
.monb-li i{color:var(--accent-light);font-size:17px;flex-shrink:0;margin-top:1px;}
.monb-stage{display:flex;flex-direction:column;align-items:center;gap:20px;}
.monb-pill{display:inline-flex;align-items:center;gap:8px;font-size:11px;font-weight:600;letter-spacing:1px;text-transform:uppercase;color:var(--warm);background:rgba(111,162,196,0.12);border:1px solid rgba(111,162,196,0.3);padding:7px 14px;border-radius:20px;}
.monb-pill .live{width:7px;height:7px;border-radius:50%;background:var(--accent-light);animation:livedot 2.4s ease-in-out infinite;}
.monb-ring{position:relative;width:220px;height:220px;border-radius:50%;border:1.5px solid rgba(111,162,196,0.28);display:grid;place-items:center;}
.monb-ring::before{content:'';position:absolute;inset:22px;border-radius:50%;border:1px solid rgba(111,162,196,0.18);}
.monb-ring::after{content:'';position:absolute;inset:-1.5px;border-radius:50%;border:1.5px solid transparent;border-top-color:var(--accent-light);border-right-color:var(--accent-light);transform:rotate(-30deg);}
.monb-core{text-align:center;}
.monb-core .big{font-family:var(--fh);font-weight:800;font-size:40px;letter-spacing:-2px;color:var(--warm);line-height:1;}
.monb-core .sm{font-size:10.5px;letter-spacing:2px;text-transform:uppercase;color:var(--t-45);margin-top:7px;}

/* TIERS TEASER — light, stacked rows */
.tease{background:var(--warm);padding:var(--pad-v) 0;}
.tease .eyebrow{color:var(--accent);} .tease .eyebrow::before{background:var(--accent);}
.tease-title{font-family:var(--fh);font-weight:800;font-size:clamp(28px,3.6vw,44px);line-height:1.05;letter-spacing:-2px;color:var(--slate);max-width:540px;}
.tease-body{font-size:15.5px;line-height:1.7;color:var(--muted);max-width:400px;}
.tease-head{display:flex;justify-content:space-between;align-items:flex-end;gap:30px;flex-wrap:wrap;}
.tease-link{display:inline-flex;align-items:center;gap:7px;font-size:13px;font-weight:600;color:var(--accent);white-space:nowrap;}
.tease-link svg{transition:transform .15s;} .tease-link:hover svg{transform:translateX(3px);}
.tr-list{margin-top:46px;border-top:1px solid rgba(28,43,58,0.10);}
.tr-row{display:grid;grid-template-columns:74px 1fr 160px;gap:24px;align-items:center;padding:22px 40px 22px 0;border-bottom:1px solid rgba(28,43,58,0.10);}
.tr-row--flagship{border-left:3px solid var(--accent);padding-left:22px;background:rgba(45,90,122,0.045);}
.tr-num{font-family:var(--fh);font-weight:800;font-size:26px;letter-spacing:-1px;color:var(--accent);line-height:1;}
.tr-name{font-family:var(--fh);font-weight:700;font-size:18px;letter-spacing:-0.3px;color:var(--slate);display:flex;align-items:center;gap:10px;}
.tr-flagtag{font-size:8.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#fff;background:var(--accent);padding:2px 8px;border-radius:20px;}
.tr-for{font-size:13px;color:var(--muted);margin-top:4px;}
.tr-meter{display:flex;align-items:center;gap:9px;justify-content:flex-end;}
.tr-meter .lab{font-size:9px;font-weight:600;letter-spacing:1.3px;text-transform:uppercase;color:var(--muted);}
.tr-bars{display:flex;gap:5px;}
.tr-bars i{width:22px;height:5px;border-radius:3px;background:rgba(28,43,58,0.12);}
.tr-bars i.on{background:var(--accent);}

/* CARE TEASER — dark, progression */
.care{padding:var(--pad-v) 0;background:var(--ink);}
.care-head{max-width:600px;}
.care-title{font-family:var(--fh);font-weight:800;font-size:clamp(28px,3.6vw,44px);line-height:1.05;letter-spacing:-2px;color:var(--warm);}
.care-body{font-size:16px;line-height:1.72;color:var(--t-60);margin-top:18px;}
.care-link{display:inline-flex;align-items:center;gap:7px;font-size:13px;font-weight:600;color:var(--accent-light);margin-top:30px;}
.care-link svg{transition:transform .15s;} .care-link:hover svg{transform:translateX(3px);}
.sig{display:flex;align-items:center;gap:14px;background:rgba(45,90,122,0.12);border:1px solid rgba(111,162,196,0.25);border-radius:12px;padding:16px 20px;margin-top:24px;flex-wrap:wrap;}
.sig i{font-size:20px;color:var(--accent-light);flex-shrink:0;}
.sig p{font-size:13px;color:var(--t-60);line-height:1.5;}
.sig p b{color:var(--warm);font-weight:600;}
.sig a{margin-left:auto;font-size:12.5px;font-weight:600;color:var(--accent-light);white-space:nowrap;display:inline-flex;align-items:center;gap:6px;}
.cb-grid{display:grid;grid-template-columns:1fr auto 1fr;gap:0;margin-top:46px;align-items:stretch;}
.cb-card{background:rgba(245,242,238,0.03);border:1px solid var(--line-soft);border-radius:14px;padding:28px 26px;}
.cb-card--active{background:rgba(45,90,122,0.10);border-color:rgba(111,162,196,0.35);}
.cb-tag{font-size:9.5px;font-weight:600;letter-spacing:1.8px;text-transform:uppercase;color:var(--accent-light);margin-bottom:9px;}
.cb-card h4{font-family:var(--fh);font-weight:700;font-size:18px;letter-spacing:-0.3px;color:var(--warm);margin-bottom:9px;}
.cb-card p{font-size:13px;line-height:1.6;color:var(--t-60);}
.cb-chip{display:inline-flex;align-items:center;gap:7px;margin-top:14px;font-size:11px;font-weight:600;color:var(--warm);background:rgba(111,162,196,0.14);border:1px solid rgba(111,162,196,0.3);padding:6px 11px;border-radius:20px;}
.cb-chip i{font-size:13px;color:var(--accent-light);}
.cb-adds{margin-top:12px;display:flex;flex-direction:column;gap:9px;}
.cb-add{display:flex;align-items:flex-start;gap:9px;font-size:12.5px;color:var(--t-60);line-height:1.45;}
.cb-add i{color:var(--accent-light);font-size:15px;flex-shrink:0;margin-top:1px;}
.cb-plus{display:flex;align-items:center;justify-content:center;width:54px;}
.cb-plus span{width:34px;height:34px;border-radius:50%;border:1px solid rgba(111,162,196,0.4);color:var(--accent-light);display:grid;place-items:center;font-size:18px;background:var(--ink);}

/* CREDIBILITY — light, Fortyeight anchor */
.cred{background:var(--warm);padding:var(--pad-v) 0;}
.cred .eyebrow{color:var(--accent);} .cred .eyebrow::before{background:var(--accent);}
.cred-title{font-family:var(--fh);font-weight:800;font-size:clamp(28px,3.6vw,44px);line-height:1.05;letter-spacing:-2px;color:var(--slate);}
.cred-body{font-size:16px;line-height:1.76;color:var(--muted);}
.cr-stack{display:flex;align-items:center;flex-wrap:wrap;gap:10px;}
.cr-stack .lab{font-size:9.5px;font-weight:600;letter-spacing:2px;text-transform:uppercase;color:var(--muted);margin-right:6px;}
.cr-stack .wm{font-family:var(--fh);font-weight:600;font-size:15px;letter-spacing:-0.2px;color:var(--slate);}
.cr-stack .dot{width:3px;height:3px;border-radius:50%;background:rgba(28,43,58,0.3);}
.cr-b-grid{display:grid;grid-template-columns:0.85fr 1.15fr;gap:56px;align-items:center;}
.cr-b-panel{background:var(--slate);border-radius:18px;padding:40px 36px;box-shadow:0 24px 60px rgba(28,43,58,0.18);}
.cr-b-panel .pre{font-size:10px;font-weight:600;letter-spacing:2px;text-transform:uppercase;color:var(--accent-light);margin-bottom:16px;}
.cr-b-panel .ft{font-family:var(--fh);font-weight:800;font-size:38px;letter-spacing:-1.5px;color:var(--warm);line-height:1;}
.cr-b-panel .fg{font-family:var(--fh);font-weight:600;font-size:15px;color:var(--t-60);margin-top:10px;letter-spacing:.2px;}
.cr-b-panel .ln{font-size:13px;line-height:1.6;color:var(--t-60);margin-top:18px;padding-top:18px;border-top:1px solid rgba(245,242,238,0.12);}
.cr-b-right .cred-title{margin-bottom:20px;}
.cr-b-right .cred-body{margin-bottom:26px;}

/* CLOSING CTA — dark, boundary frame */
.ctasec{background:var(--ink);padding:var(--pad-v) 0;}
.cta-frame{position:relative;border:1px solid var(--line);border-radius:14px;padding:76px 48px;text-align:center;background:radial-gradient(90% 120% at 50% 0%, rgba(45,90,122,0.14) 0%, transparent 70%);}
.cta-frame .c{position:absolute;width:8px;height:8px;background:var(--accent-light);border-radius:1px;}
.cta-frame .tl{top:-4px;left:-4px;} .cta-frame .tr{top:-4px;right:-4px;} .cta-frame .bl{bottom:-4px;left:-4px;} .cta-frame .br{bottom:-4px;right:-4px;}
.cta-eyebrow{display:inline-block;font-size:10.5px;font-weight:600;letter-spacing:2.6px;text-transform:uppercase;color:var(--accent-light);margin-bottom:20px;}
.cta-frame h2{font-family:var(--fh);font-weight:800;font-size:clamp(28px,3.6vw,42px);line-height:1.08;letter-spacing:-1.8px;color:var(--warm);max-width:620px;margin:0 auto 18px;}
.cta-frame p{font-size:15.5px;line-height:1.72;color:var(--t-60);max-width:520px;margin:0 auto 36px;}

/* FOOTER */
.site-footer{background:var(--panel);}
.footer-inner{max-width:var(--maxw);margin:0 auto;padding:60px var(--pad-h) 0;}
.footer-top{display:flex;align-items:flex-start;gap:0;margin-bottom:48px;}
.footer-brand{flex:0 0 240px;}
.footer-brand-desc{font-size:12px;line-height:1.65;color:var(--t-30);margin-top:14px;max-width:200px;}
.footer-cols{flex:1;display:grid;grid-template-columns:repeat(3,1fr);gap:12px;}
.footer-col-heading{font-size:10.5px;font-weight:600;letter-spacing:2px;text-transform:uppercase;color:var(--t-45);margin-bottom:16px;}
.footer-col ul{display:flex;flex-direction:column;gap:10px;}
.footer-col ul a{font-size:12.5px;color:rgba(245,242,238,0.56);transition:color .15s;}
.footer-col ul a:hover{color:var(--warm);}
.footer-bottom{border-top:1px solid var(--line-soft);padding:22px 0 28px;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px;}
.footer-copy{font-size:11.5px;color:var(--t-30);}
.footer-bottom nav{display:flex;gap:16px;}
.footer-bottom nav a{font-size:11.5px;color:var(--t-30);transition:color .15s;}
.footer-bottom nav a:hover{color:var(--t-60);}

@media (prefers-reduced-motion: no-preference){
  .p-hero-content{animation:rise .7s ease both;}
  @keyframes rise{from{opacity:0;transform:translateY(14px);}to{opacity:1;transform:none;}}
  @keyframes livedot{0%,100%{opacity:1;}50%{opacity:0.35;}}
}
@media (prefers-reduced-motion: reduce){ .monb-pill .live{animation:none;} }
@media (max-width:1023px){
  :root{--pad-v:80px;--pad-h:36px;}
  .nav-links{display:none;}
  .p-hero-inner{padding:0 40px;}
  .p-diff-cards{grid-template-columns:1fr;gap:16px;}
  .dsp-cards{grid-template-columns:1fr;}
  .intg-grid{grid-template-columns:1fr;gap:44px;}
  .monb-grid{grid-template-columns:1fr;gap:44px;}
  .tr-row{grid-template-columns:54px 1fr;gap:16px;padding:22px 0;}
  .tr-row--flagship{padding-left:16px;}
  .tr-meter{grid-column:2;justify-content:flex-start;margin-top:6px;}
  .cb-grid{grid-template-columns:1fr;}
  .cb-plus{width:auto;height:44px;transform:rotate(90deg);}
  .cr-b-grid{grid-template-columns:1fr;gap:36px;}
  .sig a{margin-left:0;}
  .tease-head{flex-direction:column;align-items:flex-start;gap:16px;}
}
@media (max-width:767px){
  :root{--pad-v:64px;--pad-h:24px;}
  .p-hero{min-height:auto;padding:120px 0 80px;}
  .p-hero-frame{inset:12px;}
  .p-hero-trust span,.intg-trio span{font-size:11px;}
  .p-hero-trust span + span,.intg-trio span + span{margin-left:14px;padding-left:14px;}
  .p-hero-scroll{display:none;}
  .cta-frame{padding:54px 26px;}
  .cr-b-panel .ft{font-size:30px;}
}
/* ============================================================
   NAV — mobile menu + logo images + scrolled chrome (appended,
   prefixed/scoped; does not modify the homepage section rules above)
   ============================================================ */
.nav-logo-img{height:38px;width:auto;display:block;}
.footer-logo-img{height:32px;width:auto;display:block;}
.site-header.scrolled .nav{box-shadow:0 1px 0 var(--line-soft),0 10px 30px rgba(0,0,0,0.30);}
.nav-mobile-cta{display:none;}
.nav-hamburger span{transition:transform .2s ease,opacity .2s ease;}

@media (max-width:1023px){
  .nav-hamburger{display:flex;}
  .nav-cta{display:none;}
  .nav-links{
    display:flex;flex-direction:column;gap:0;position:absolute;top:68px;left:0;right:0;
    transform:none;background:var(--ink);border-bottom:1px solid var(--line-soft);
    max-height:0;overflow:hidden;opacity:0;pointer-events:none;padding:0;
    transition:max-height .28s ease,opacity .2s ease,padding .28s ease;
  }
  .nav-links.open{max-height:82vh;opacity:1;pointer-events:auto;padding:12px 0 18px;}
  .nav-links li{width:100%;}
  .nav-links li a{display:block;padding:13px 40px;font-size:15px;color:var(--t-90);border-radius:0;}
  .nav-links li a:hover{color:var(--warm);}
  .nav-mobile-cta{display:block;margin-top:10px;padding:0 40px;}
  .nav-cta-mobile{display:inline-flex;background:var(--accent);color:#fff;font-size:14px;font-weight:600;padding:11px 22px;border-radius:6px;}
  .nav-hamburger[aria-expanded="true"] span:nth-child(1){transform:translateY(6.5px) rotate(45deg);}
  .nav-hamburger[aria-expanded="true"] span:nth-child(2){opacity:0;}
  .nav-hamburger[aria-expanded="true"] span:nth-child(3){transform:translateY(-6.5px) rotate(-45deg);}
}
@media (max-width:600px){
  .nav-links li a,.nav-mobile-cta{padding-left:24px;padding-right:24px;}
}

/* ============================================================================
   SYSTEMS & TIERS — /systems/
   Append-only. Reuses .eyebrow, .btn-solid/.btn-ghost, .txtlink, .tr-num,
   .tr-flagtag, .intf-card*, .cr-stack, .ctasec/.cta-frame from above —
   only genuinely new component classes below.
   ============================================================================ */

/* HERO — interior-page variant of .p-hero: same motifs, more compact, no scroll cue */
.sys-hero{position:relative;overflow:hidden;padding:96px 0 var(--pad-v);background:
   radial-gradient(80% 70% at 86% 4%, rgba(45,90,122,0.28) 0%, transparent 55%),var(--ink);}
.sys-hero-grid{position:absolute;inset:0;background-image:
   linear-gradient(rgba(245,242,238,0.045) 1px,transparent 1px),
   linear-gradient(90deg,rgba(245,242,238,0.045) 1px,transparent 1px);
   background-size:64px 64px;mask-image:radial-gradient(95% 80% at 80% 18%,#000 20%,transparent 78%);}
.sys-hero-node{position:absolute;top:28%;right:18%;width:13px;height:13px;border-radius:50%;background:var(--accent-light);
   box-shadow:0 0 0 7px rgba(111,162,196,0.14),0 0 0 17px rgba(111,162,196,0.05);}
.sys-hero-frame{position:absolute;inset:22px;border:1px solid var(--line);border-radius:6px;pointer-events:none;}
.sys-hero-frame::before{content:'';position:absolute;top:-4px;left:-4px;width:8px;height:8px;background:var(--accent-light);border-radius:1px;}
.sys-hero-inner{position:relative;max-width:var(--maxw);margin:0 auto;padding:0 72px;width:100%;}
.sys-hero-content{max-width:720px;}
.sys-hero h1{font-family:var(--fh);font-weight:800;font-size:clamp(34px,5vw,56px);line-height:1.06;letter-spacing:-1.8px;color:var(--warm);margin-bottom:24px;}
.sys-hero h1 .a{color:var(--accent-light);}
.sys-hero .sub{font-size:16px;line-height:1.7;color:var(--t-60);max-width:540px;margin-bottom:38px;}
.sys-hero-ctas{display:flex;gap:12px;flex-wrap:wrap;}

/* TIER OVERVIEW — light, card grid */
.sys-tiers{background:var(--warm);padding:var(--pad-v) 0;}
.sys-tiers .eyebrow{color:var(--accent);} .sys-tiers .eyebrow::before{background:var(--accent);}
.sys-tiers-title{font-family:var(--fh);font-weight:800;font-size:clamp(28px,3.6vw,44px);line-height:1.05;letter-spacing:-2px;color:var(--slate);max-width:560px;}
.sys-tiers-body{font-size:16px;line-height:1.72;color:var(--muted);max-width:540px;margin-top:22px;margin-bottom:52px;}
.sys-tc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;}
.sys-tc-card{background:#fff;border:1px solid rgba(28,43,58,0.10);border-radius:14px;padding:32px 30px;display:flex;flex-direction:column;transition:transform .15s,box-shadow .15s;}
.sys-tc-card:hover{transform:translateY(-2px);box-shadow:0 14px 32px rgba(28,43,58,0.08);}
.sys-tc-card.flag{border-color:var(--accent);}
.sys-tc-top{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:18px;}
.sys-tc-name{font-family:var(--fh);font-weight:700;font-size:18px;letter-spacing:-0.3px;color:var(--slate);margin-bottom:16px;display:flex;align-items:center;}
.sys-tc-points{display:flex;flex-direction:column;gap:10px;margin-bottom:22px;}
.sys-tc-points div{display:flex;align-items:flex-start;gap:9px;font-size:13px;color:var(--muted);line-height:1.5;}
.sys-tc-points i{color:var(--accent);font-size:15px;flex-shrink:0;margin-top:1px;}
.sys-tc-card .txtlink{color:var(--accent);margin-top:auto;}
.sys-tc-meter{display:inline-flex;gap:5px;}
.sys-tc-meter i{width:22px;height:5px;border-radius:3px;background:rgba(28,43,58,0.12);display:inline-block;}
.sys-tc-meter i.on{background:var(--accent);}

/* TIER 01 — FULL INTEGRATION — ink, device panel (reuses .intf-card) */
.t1{background:var(--ink);padding:var(--pad-v) 0;}
.t1-tag{display:inline-block;font-size:9.5px;font-weight:700;letter-spacing:1.6px;text-transform:uppercase;color:#fff;background:var(--accent);padding:4px 11px;border-radius:20px;margin-bottom:20px;}
.t1-title{font-family:var(--fh);font-weight:800;font-size:clamp(28px,3.6vw,44px);line-height:1.05;letter-spacing:-2px;color:var(--warm);max-width:640px;}
.t1-body{font-size:16px;line-height:1.72;color:var(--t-60);max-width:540px;margin-top:22px;}
.t1-list{margin-top:30px;display:flex;flex-direction:column;gap:15px;}
.t1-li{display:flex;align-items:flex-start;gap:12px;font-size:14px;color:var(--t-60);line-height:1.55;}
.t1-li i{color:var(--accent-light);font-size:18px;flex-shrink:0;margin-top:1px;}
.t1-grid{display:grid;grid-template-columns:1fr 0.95fr;gap:64px;align-items:center;margin-top:8px;}

/* TIER 02 — SECURITY-LED PREMIUM — light, dark panel-on-light (parallels .cr-b-panel) */
.t2{background:var(--warm);padding:var(--pad-v) 0;}
.t2 .eyebrow{color:var(--accent);} .t2 .eyebrow::before{background:var(--accent);}
.t2-title{font-family:var(--fh);font-weight:800;font-size:clamp(28px,3.6vw,44px);line-height:1.05;letter-spacing:-2px;color:var(--slate);max-width:640px;}
.t2-body{font-size:16px;line-height:1.72;color:var(--muted);max-width:540px;margin-top:22px;}
.t2-list{margin-top:30px;display:flex;flex-direction:column;gap:15px;}
.t2-li{display:flex;align-items:flex-start;gap:12px;font-size:14px;color:var(--muted);line-height:1.55;}
.t2-li i{color:var(--accent);font-size:18px;flex-shrink:0;margin-top:1px;}
.t2-grid{display:grid;grid-template-columns:1fr 0.9fr;gap:64px;align-items:center;margin-top:8px;}
.t2-panel{background:var(--slate);border-radius:18px;padding:32px 30px;box-shadow:0 24px 60px rgba(28,43,58,0.20);}
.t2-panel-top{display:flex;align-items:center;justify-content:space-between;padding-bottom:16px;border-bottom:1px solid rgba(245,242,238,0.10);margin-bottom:6px;}
.t2-panel-name{font-family:var(--fh);font-weight:700;font-size:14px;color:var(--warm);}
.t2-panel-status{display:inline-flex;align-items:center;gap:7px;font-size:11px;font-weight:600;color:var(--warm);background:rgba(111,162,196,0.16);border:1px solid rgba(111,162,196,0.32);padding:5px 11px;border-radius:20px;}
.t2-panel-status .d{width:6px;height:6px;border-radius:50%;background:var(--accent-light);}
.t2-panel-row{display:flex;align-items:center;gap:13px;padding:13px 4px;border-bottom:1px solid rgba(245,242,238,0.06);}
.t2-panel-row:last-child{border-bottom:none;}
.t2-panel-row>i{font-size:18px;color:var(--accent-light);width:20px;text-align:center;}
.t2-panel-row .lab{font-size:13.5px;color:var(--warm);font-weight:500;}
.t2-panel-row .val{margin-left:auto;font-size:12px;color:var(--t-60);}
.t2-panel-cap{font-size:13px;color:var(--muted);line-height:1.6;margin-top:20px;max-width:400px;}

/* TIER 03 — SECURITY ONLY — ink, single column, checklist with cross for excluded item */
.t3{background:var(--ink);padding:var(--pad-v) 0;}
.t3-title{font-family:var(--fh);font-weight:800;font-size:clamp(28px,3.6vw,44px);line-height:1.12;letter-spacing:-2px;color:var(--warm);max-width:640px;}
.t3-body{font-size:16px;line-height:1.72;color:var(--t-60);max-width:560px;margin-top:24px;}
.t3-list{margin-top:44px;display:flex;flex-direction:column;gap:24px;max-width:560px;}
.t3-li{display:flex;align-items:center;gap:16px;font-size:15px;color:var(--t-60);}
.t3-li i{font-size:17px;flex-shrink:0;width:18px;text-align:center;}
.t3-li.on i{color:var(--accent-light);}
.t3-li.off{color:var(--t-45);}
.t3-li.off i{color:var(--muted);}

/* THE ENGINEERING / STACK — light, closes out the tier detail before the CTA */
.t4{background:var(--warm);padding:var(--pad-v) 0;}
.t4 .eyebrow{color:var(--accent);} .t4 .eyebrow::before{background:var(--accent);}
.t4-title{font-family:var(--fh);font-weight:800;font-size:clamp(28px,3.6vw,44px);line-height:1.05;letter-spacing:-2px;color:var(--slate);max-width:640px;}
.t4-body{font-size:16px;line-height:1.72;color:var(--muted);max-width:560px;margin-top:22px;}
.t4-badge{display:inline-flex;align-items:center;gap:8px;font-size:11.5px;font-weight:600;color:var(--slate);background:rgba(45,90,122,0.10);border:1px solid rgba(45,90,122,0.22);padding:7px 14px;border-radius:20px;margin-top:28px;}
.t4-badge i{color:var(--accent);font-size:15px;}

@media (max-width:1023px){
  .sys-hero-inner{padding:0 40px;}
  .sys-tc-grid{grid-template-columns:1fr;}
  .t1-grid,.t2-grid{grid-template-columns:1fr;gap:44px;}
}
@media (max-width:767px){
  .sys-hero{padding:112px 0 64px;}
  .sys-hero-frame{inset:12px;}
}

/* ============================================================================
   DATA SOVEREIGNTY — /data-sovereignty/
   Append-only. Reuses .eyebrow, .btn-solid/.btn-ghost, .ctasec/.cta-frame.
   NOTE: Principle-section classes are prefixed .dsx-* (NOT .dsp-*) to avoid
   colliding with the homepage's dark-section .dsp-* classes, which carry
   opposite (dark-context) colours.
   ============================================================================ */

/* HERO — ink, interior-page variant of .p-hero */
.ds-hero{position:relative;overflow:hidden;padding:96px 0 var(--pad-v);background:
   radial-gradient(80% 70% at 84% 6%, rgba(45,90,122,0.26) 0%, transparent 55%),var(--ink);}
.ds-hero-grid{position:absolute;inset:0;background-image:
   linear-gradient(rgba(245,242,238,0.045) 1px,transparent 1px),
   linear-gradient(90deg,rgba(245,242,238,0.045) 1px,transparent 1px);
   background-size:64px 64px;mask-image:radial-gradient(95% 80% at 80% 18%,#000 20%,transparent 78%);}
.ds-hero-frame{position:absolute;inset:22px;border:1px solid var(--line);border-radius:6px;pointer-events:none;}
.ds-hero-frame::before{content:'';position:absolute;top:-4px;left:-4px;width:8px;height:8px;background:var(--accent-light);border-radius:1px;}
.ds-hero-inner{position:relative;max-width:var(--maxw);margin:0 auto;padding:0 72px;width:100%;}
.ds-hero-content{max-width:760px;}
.ds-hero h1{font-family:var(--fh);font-weight:800;font-size:clamp(34px,5vw,58px);line-height:1.04;letter-spacing:-2px;color:var(--warm);margin-bottom:24px;}
.ds-hero h1 .a{color:var(--accent-light);}
.ds-hero .sub{font-size:17px;line-height:1.7;color:var(--t-60);max-width:560px;margin-bottom:38px;}
.ds-hero-ctas{display:flex;gap:12px;flex-wrap:wrap;}
.ds-hero-trust{display:flex;gap:26px;flex-wrap:wrap;margin-top:44px;}
.ds-hero-trust span{font-size:12px;letter-spacing:.05em;text-transform:uppercase;color:var(--platinum);font-weight:500;display:inline-flex;align-items:center;gap:8px;}
.ds-hero-trust i{color:var(--accent-light);font-size:15px;}

/* THE PRINCIPLE — light, white cards (.dsx-* — distinct from homepage .dsp-*) */
.dsx{background:var(--warm);padding:var(--pad-v) 0;}
.dsx .eyebrow{color:var(--accent);} .dsx .eyebrow::before{background:var(--accent);}
.dsx-title{font-family:var(--fh);font-weight:800;font-size:clamp(28px,3.6vw,44px);line-height:1.08;letter-spacing:-2px;color:var(--slate);max-width:680px;}
.dsx-body{font-size:16px;line-height:1.72;color:var(--muted);max-width:600px;margin-top:22px;}
.dsx-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:52px;}
.dsx-c{background:#fff;border:1px solid rgba(28,43,58,0.10);border-radius:14px;padding:30px 26px;}
.dsx-c-icon{width:46px;height:46px;border-radius:11px;background:rgba(45,90,122,0.10);display:grid;place-items:center;color:var(--accent);margin-bottom:18px;}
.dsx-c-icon i{font-size:21px;}
.dsx-c h4{font-family:var(--fh);font-weight:700;font-size:16px;color:var(--slate);margin-bottom:8px;letter-spacing:-.2px;}
.dsx-c p{font-size:13.5px;line-height:1.6;color:var(--muted);}

/* THE STACK — ink, rail list */
.dss{background:var(--ink);padding:var(--pad-v) 0;}
.dss-head{max-width:640px;margin-bottom:52px;}
.dss-title{font-family:var(--fh);font-weight:800;font-size:clamp(28px,3.6vw,44px);line-height:1.08;letter-spacing:-2px;color:var(--warm);}
.dss-body{font-size:16px;line-height:1.72;color:var(--t-60);margin-top:22px;}
.dsr{max-width:820px;}
.dsr-item{position:relative;padding:26px 0 26px 32px;border-bottom:1px solid var(--line-soft);}
.dsr-item::before{content:'';position:absolute;left:0;top:30px;width:9px;height:9px;border-radius:50%;background:var(--accent-light);box-shadow:0 0 0 4px rgba(111,162,196,0.14);}
.dsr-item::after{content:'';position:absolute;left:4px;top:40px;bottom:-1px;width:1px;background:var(--line-soft);}
.dsr-item:last-child{border-bottom:none;}
.dsr-item:last-child::after{display:none;}
.dsr-top{display:flex;align-items:baseline;gap:12px;margin-bottom:6px;flex-wrap:wrap;}
.dsr-name{font-family:var(--fh);font-weight:700;font-size:17px;color:var(--warm);}
.dsr-role{font-size:11px;color:var(--t-45);letter-spacing:.05em;text-transform:uppercase;}
.dsr-origin{font-size:11px;color:var(--accent-light);letter-spacing:.04em;}
.dsr p{font-size:14px;line-height:1.6;color:var(--t-60);max-width:640px;}

/* WHAT LEAVES — light, boundary diagram */
.wl{background:var(--warm);padding:var(--pad-v) 0;}
.wl .eyebrow{color:var(--accent);} .wl .eyebrow::before{background:var(--accent);}
.wl-head{max-width:640px;margin-bottom:52px;}
.wl-title{font-family:var(--fh);font-weight:800;font-size:clamp(28px,3.6vw,44px);line-height:1.08;letter-spacing:-2px;color:var(--slate);}
.wl-body{font-size:16px;line-height:1.72;color:var(--muted);margin-top:22px;}
.wl-diagram{display:grid;grid-template-columns:1fr auto 1fr;gap:0;align-items:stretch;border:1px solid rgba(28,43,58,0.12);border-radius:16px;overflow:hidden;}
.wl-inside{background:#fff;padding:38px 34px;}
.wl-inside h3,.wl-outside h3{font-family:var(--fh);font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;margin-bottom:22px;color:var(--accent);}
.wl-inside ul{list-style:none;display:flex;flex-direction:column;gap:14px;}
.wl-inside li{display:flex;align-items:center;gap:11px;font-size:14px;color:var(--slate);}
.wl-inside li i{color:var(--accent);font-size:17px;}
.wl-boundary{width:1px;background:linear-gradient(var(--accent-light),var(--accent));position:relative;}
.wl-boundary::before{content:'\ea6c';font-family:'tabler-icons';position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:var(--warm);color:var(--accent);width:34px;height:34px;border-radius:50%;display:grid;place-items:center;border:1px solid var(--accent);font-size:16px;}
.wl-outside{background:rgba(45,90,122,0.05);padding:38px 34px;display:flex;flex-direction:column;justify-content:center;}
.wl-outside .one{font-family:var(--fh);font-weight:700;font-size:19px;color:var(--slate);margin-bottom:10px;display:flex;align-items:center;gap:10px;}
.wl-outside .one i{color:var(--accent);font-size:22px;}
.wl-outside p{font-size:13.5px;line-height:1.6;color:var(--muted);}

@media (max-width:1023px){
  .ds-hero-inner{padding:0 40px;}
  .dsx-cards{grid-template-columns:1fr;}
  .wl-diagram{grid-template-columns:1fr;}
  .wl-boundary{width:100%;height:1px;background:linear-gradient(90deg,var(--accent-light),var(--accent));}
}
@media (max-width:767px){
  .ds-hero-frame{inset:12px;}
}

/* ============================================================
   MONITORING & CARE  (/care/)  — appended, self-contained
   Section prefixes: .ch-* (hero) · .cm-* (care model, light) ·
   .crp-* (response protocol, ink) · .pcx-* (proactive, light) ·
   .ctc-* (levels of care, ink) — closing CTA reuses locked .ctasec/.cta-frame.
   Reuses shared atoms .eyebrow / .btn-solid / .btn-ghost / .inner (already defined above).
   Render 1 rhythm: hero(ink) → model(light) → protocol(ink) → proactive(light)
   → tiers(ink) → cta(ink); Tiers→CTA is a tightened dark/dark seam.
   ============================================================ */

/* keyframe for hero live-signal ring (livedot already defined above; this is distinct) */
@keyframes ch-pulse{0%{transform:scale(0.6);opacity:1;}100%{transform:scale(1.5);opacity:0;}}

/* ── HERO (ink) — care variant of the interior hero ── */
.ch{position:relative;min-height:88vh;display:flex;align-items:center;overflow:hidden;background:radial-gradient(120% 90% at 78% 12%, #12283b 0%, var(--ink) 46%, #0a1420 100%);}
.ch-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(159,177,190,0.05) 1px,transparent 1px),linear-gradient(90deg,rgba(159,177,190,0.05) 1px,transparent 1px);background-size:64px 64px;-webkit-mask-image:radial-gradient(60% 60% at 72% 26%,#000,transparent 78%);mask-image:radial-gradient(60% 60% at 72% 26%,#000,transparent 78%);}
.ch-node{position:absolute;top:28%;right:19%;width:13px;height:13px;border-radius:50%;background:var(--accent-light);box-shadow:0 0 0 6px rgba(111,162,196,0.14),0 0 26px 6px rgba(111,162,196,0.42);}
.ch-node::after{content:'';position:absolute;inset:-16px;border:1px solid rgba(111,162,196,0.22);border-radius:50%;}
.ch-frame{position:absolute;inset:22px;border:1px solid var(--line);border-radius:6px;pointer-events:none;}
.ch-frame::before{content:'';position:absolute;top:-4px;left:-4px;width:8px;height:8px;background:var(--accent-light);border-radius:1px;}
.ch-inner{position:relative;max-width:var(--maxw);margin:0 auto;padding:0 72px;width:100%;}
.ch-content{max-width:780px;}
.ch h1{font-family:var(--fh);font-weight:800;font-size:clamp(40px,6.6vw,56px);line-height:0.98;letter-spacing:-2.6px;color:var(--warm);margin-bottom:26px;}
.ch h1 .a{color:var(--accent-light);}
.ch .sub{font-size:clamp(15px,1.5vw,16px);line-height:1.7;color:var(--t-60);max-width:590px;margin-bottom:34px;}
.ch-signal{display:flex;align-items:center;gap:14px;background:rgba(45,90,122,0.12);border:1px solid rgba(111,162,196,0.25);border-radius:12px;padding:15px 20px;max-width:540px;margin-bottom:40px;}
.ch-signal .dot{position:relative;width:9px;height:9px;border-radius:50%;background:var(--accent-light);flex-shrink:0;}
.ch-signal .dot::after{content:'';position:absolute;inset:-6px;border-radius:50%;border:1px solid rgba(111,162,196,0.4);animation:ch-pulse 2.4s ease-out infinite;}
.ch-signal p{font-size:12.5px;color:var(--t-60);line-height:1.5;}
.ch-signal p b{color:var(--warm);font-weight:600;}
.ch-ctas{display:flex;gap:12px;flex-wrap:wrap;}

/* ── THE CARE MODEL (light) — numbered step cards ── */
.cm{background:var(--warm);padding:var(--pad-v) 0;}
.cm .eyebrow{color:var(--accent);} .cm .eyebrow::before{background:var(--accent);}
.cm-title{font-family:var(--fh);font-weight:800;font-size:clamp(28px,3.6vw,44px);line-height:1.08;letter-spacing:-2px;color:var(--slate);max-width:720px;}
.cm-body{font-size:16px;line-height:1.72;color:var(--muted);max-width:620px;margin-top:22px;}
.cmA-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:54px;}
.cmA-step{background:#fff;border:1px solid rgba(28,43,58,0.10);border-radius:14px;padding:32px 28px;position:relative;}
.cmA-num{font-family:var(--fh);font-weight:800;font-size:13px;color:var(--accent);letter-spacing:1px;margin-bottom:20px;display:flex;align-items:center;gap:10px;}
.cmA-num::after{content:'';flex:1;height:1px;background:rgba(28,43,58,0.10);}
.cmA-step h4{font-family:var(--fh);font-weight:700;font-size:19px;color:var(--slate);margin-bottom:10px;letter-spacing:-.4px;}
.cmA-step .k{font-size:12.5px;font-weight:600;color:var(--accent);text-transform:uppercase;letter-spacing:1.4px;margin-bottom:14px;display:block;}
.cmA-step p{font-size:14px;line-height:1.62;color:var(--muted);}

/* ── THE RESPONSE PROTOCOL (ink) — horizontal four-stage flow ── */
.crp{background:var(--ink);padding:var(--pad-v) 0;}
.crp-title{font-family:var(--fh);font-weight:800;font-size:clamp(28px,3.6vw,44px);line-height:1.05;letter-spacing:-2px;color:var(--warm);max-width:720px;}
.crp-body{font-size:16px;line-height:1.72;color:var(--t-60);max-width:620px;margin-top:20px;}
.crpB-flow{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin-top:56px;}
.crpB-stage{position:relative;padding:0 24px;}
.crpB-stage:first-child{padding-left:0;}
.crpB-stage:not(:last-child)::after{content:'';position:absolute;top:22px;right:-2px;width:4px;height:4px;border-top:1px solid var(--accent-light);border-right:1px solid var(--accent-light);transform:rotate(45deg);}
.crpB-node{width:46px;height:46px;border-radius:50%;border:1.5px solid rgba(111,162,196,0.35);display:grid;place-items:center;margin-bottom:22px;position:relative;}
.crpB-node i{font-size:20px;color:var(--accent-light);}
.crpB-stage:first-child .crpB-node{border-color:var(--accent-light);box-shadow:0 0 22px rgba(111,162,196,0.3);}
.crpB-num{font-family:var(--fh);font-weight:800;font-size:11px;letter-spacing:1.5px;color:var(--accent-light);margin-bottom:8px;}
.crpB-stage h4{font-family:var(--fh);font-weight:700;font-size:16px;color:var(--warm);margin-bottom:9px;letter-spacing:-.3px;}
.crpB-stage p{font-size:13px;line-height:1.58;color:var(--t-60);}

/* ── PROACTIVE CARE (light) — cadence banner + four tiles ── */
.pcx{background:var(--warm);padding:var(--pad-v) 0;}
.pcx .eyebrow{color:var(--accent);} .pcx .eyebrow::before{background:var(--accent);}
.pcx-title{font-family:var(--fh);font-weight:800;font-size:clamp(28px,3.6vw,44px);line-height:1.08;letter-spacing:-2px;color:var(--slate);max-width:720px;}
.pcx-body{font-size:16px;line-height:1.72;color:var(--muted);max-width:620px;margin-top:22px;}
.pcxC-banner{margin-top:50px;background:#fff;border:1px solid rgba(28,43,58,0.10);border-radius:16px;padding:30px 34px;display:flex;align-items:center;gap:28px;flex-wrap:wrap;}
.pcxC-banner .ic{width:54px;height:54px;border-radius:13px;background:rgba(45,90,122,0.10);display:grid;place-items:center;color:var(--accent);flex-shrink:0;}
.pcxC-banner .ic i{font-size:26px;}
.pcxC-banner .tx{flex:1;min-width:260px;}
.pcxC-banner h4{font-family:var(--fh);font-weight:800;font-size:19px;color:var(--slate);letter-spacing:-.4px;margin-bottom:6px;}
.pcxC-banner p{font-size:13.5px;line-height:1.6;color:var(--muted);}
.pcxC-tiles{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:16px;}
.pcxC-tile{background:#fff;border:1px solid rgba(28,43,58,0.10);border-radius:12px;padding:24px 20px;}
.pcxC-tile i{font-size:22px;color:var(--accent);margin-bottom:14px;display:block;}
.pcxC-tile h5{font-family:var(--fh);font-weight:700;font-size:14.5px;color:var(--slate);margin-bottom:6px;letter-spacing:-.2px;}
.pcxC-tile p{font-size:12.5px;line-height:1.55;color:var(--muted);}

/* ── LEVELS OF CARE (ink) — Essential vs Active + Signature/Health Check ── */
.ctc{background:var(--ink);padding:var(--pad-v) 0;}
.ctc-title{font-family:var(--fh);font-weight:800;font-size:clamp(28px,3.6vw,44px);line-height:1.05;letter-spacing:-2px;color:var(--warm);max-width:720px;}
.ctc-body{font-size:16px;line-height:1.72;color:var(--t-60);max-width:640px;margin-top:20px;}
.ctc-clarify{font-size:12.5px;line-height:1.6;color:var(--t-45);max-width:640px;margin-top:14px;font-style:italic;}
.ctcB-cols{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:54px;}
.ctcB-col{background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:36px 30px;display:flex;flex-direction:column;}
.ctcB-col.active{border-color:rgba(111,162,196,0.4);background:linear-gradient(180deg,rgba(45,90,122,0.14),var(--panel));}
.ctcB-flag{font-size:10px;font-weight:600;letter-spacing:1.5px;text-transform:uppercase;color:var(--accent-light);margin-bottom:14px;height:14px;}
.ctcB-name{font-family:var(--fh);font-weight:800;font-size:26px;color:var(--warm);letter-spacing:-.7px;margin-bottom:6px;}
.ctcB-tag{font-size:14px;color:var(--accent-light);margin-bottom:20px;}
.ctcB-desc{font-size:13.5px;line-height:1.62;color:var(--t-60);margin-bottom:22px;padding-bottom:22px;border-bottom:1px solid var(--line-soft);}
.ctcB-list{display:flex;flex-direction:column;gap:12px;}
.ctcB-item{display:flex;align-items:flex-start;gap:11px;font-size:13.5px;color:var(--t-90);line-height:1.45;}
.ctcB-item i{font-size:17px;color:var(--accent-light);flex-shrink:0;margin-top:1px;}
.ctcB-item.plus{color:var(--warm);font-weight:500;}
.ctcB-lower{margin-top:44px;display:grid;grid-template-columns:1fr 1fr;gap:20px;}
.ctcB-note{background:rgba(159,177,190,0.06);border:1px dashed var(--line);border-radius:14px;padding:24px 26px;}
.ctcB-note > i{font-size:22px;color:var(--platinum);margin-bottom:12px;display:block;}
.ctcB-note h4{font-family:var(--fh);font-weight:700;font-size:16px;color:var(--warm);margin-bottom:7px;}
.ctcB-note p{font-size:12.5px;line-height:1.58;color:var(--t-60);}
.ctcB-note a{color:var(--accent-light);font-weight:600;}
.ctcB-note.hc{border-style:solid;border-color:var(--line);background:transparent;}
.ctcB-note.hc .badge{display:inline-block;font-size:9.5px;font-weight:600;letter-spacing:1.4px;text-transform:uppercase;color:var(--t-45);border:1px solid var(--line);border-radius:20px;padding:4px 11px;margin-bottom:12px;}

/* ── Render 1 seam: tighten the Tiers(ink)→CTA(ink) dark/dark boundary ── */
.ctc.seam-tight{padding-bottom:56px;}
.ctasec.seam-tight{padding-top:56px;}

/* ── /care/ responsive ── */
@media(max-width:1023px){
  .ch-inner{padding:0 36px;}
  .ch{min-height:auto;padding:130px 0 90px;}
}
@media(max-width:900px){
  .cmA-steps{grid-template-columns:1fr;}
  .crpB-flow{grid-template-columns:1fr 1fr;gap:36px 0;}
  .crpB-stage:nth-child(2)::after{display:none;}
  .crpB-stage{padding-left:0;padding-right:16px;}
  .pcxC-tiles{grid-template-columns:1fr 1fr;}
  .ctcB-cols,.ctcB-lower{grid-template-columns:1fr;}
}
@media(max-width:600px){
  .ch-inner{padding:0 24px;}
  .ch h1{letter-spacing:-1.4px;}
  .ch-frame{inset:12px;}
  .crpB-flow{grid-template-columns:1fr;}
  .crpB-stage::after{display:none;}
  .pcxC-tiles{grid-template-columns:1fr;}
}


/* ============================================================
   OUR APPROACH  (/approach/)  — appended, self-contained
   Section prefixes: .ah-* (hero, ink) · .apr-* (principle, light) ·
   .eng-* (engagement, ink) · .dsc-* (discipline, light) ·
   .dcr-* (discretion, ink) — closing CTA reuses locked .ctasec/.cta-frame.
   Reuses shared atoms .eyebrow / .btn-solid / .btn-ghost / .inner (already defined above).
   Reuses .ctasec.seam-tight (defined with the Care page); adds .dcr.seam-tight only.
   Rhythm: hero(ink) → principle(light) → engagement(ink) → discipline(light)
   → discretion(ink) → cta(ink); Discretion→CTA is a tightened dark/dark seam.
   Hero sized to match the corrected Care hero: 56px title ceiling / 16px sub.
   ============================================================ */

/* ── HERO (ink) — Approach variant of interior hero ── */
.ah{position:relative;min-height:82vh;display:flex;align-items:center;overflow:hidden;background:radial-gradient(120% 90% at 78% 12%, #12283b 0%, var(--ink) 46%, #0a1420 100%);}
.ah-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(159,177,190,0.05) 1px,transparent 1px),linear-gradient(90deg,rgba(159,177,190,0.05) 1px,transparent 1px);background-size:64px 64px;-webkit-mask-image:radial-gradient(60% 60% at 72% 26%,#000,transparent 78%);mask-image:radial-gradient(60% 60% at 72% 26%,#000,transparent 78%);}
.ah-node{position:absolute;top:30%;right:20%;width:13px;height:13px;border-radius:50%;background:var(--accent-light);box-shadow:0 0 0 6px rgba(111,162,196,0.14),0 0 26px 6px rgba(111,162,196,0.42);}
.ah-node::after{content:'';position:absolute;inset:-16px;border:1px solid rgba(111,162,196,0.22);border-radius:50%;}
.ah-frame{position:absolute;inset:22px;border:1px solid var(--line);border-radius:6px;pointer-events:none;}
.ah-frame::before{content:'';position:absolute;top:-4px;left:-4px;width:8px;height:8px;background:var(--accent-light);border-radius:1px;}
.ah-inner{position:relative;max-width:var(--maxw);margin:0 auto;padding:0 var(--pad-h);width:100%;}
.ah-content{max-width:800px;}
.ah h1{font-family:var(--fh);font-weight:800;font-size:clamp(34px,5vw,56px);line-height:1.0;letter-spacing:-2px;color:var(--warm);margin-bottom:24px;}
.ah h1 .a{color:var(--accent-light);}
.ah .sub{font-size:16px;line-height:1.7;color:var(--t-60);max-width:600px;margin-bottom:38px;}
.ah-ctas{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:44px;}
.ah-chips{display:flex;align-items:center;flex-wrap:wrap;font-size:11.5px;color:var(--t-60);}
.ah-chips span{display:flex;align-items:center;gap:7px;}
.ah-chips span + span{margin-left:18px;padding-left:18px;border-left:1px solid rgba(245,242,238,0.18);}
.ah-chips i{color:var(--accent-light);font-size:15px;}

/* ── THE PRINCIPLE (light) — product vs system split ── */
.apr{background:var(--warm);padding:var(--pad-v) 0;}
.apr .eyebrow{color:var(--accent);} .apr .eyebrow::before{background:var(--accent);}
.apr-title{font-family:var(--fh);font-weight:800;font-size:clamp(28px,3.6vw,44px);line-height:1.08;letter-spacing:-2px;color:var(--slate);max-width:760px;}
.apr-body{font-size:16px;line-height:1.72;color:var(--muted);max-width:620px;margin-top:22px;}
.aprA-split{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:54px;}
.aprA-panel{border-radius:16px;padding:34px 30px;}
.aprA-panel.old{background:#fff;border:1px solid rgba(28,43,58,0.10);}
.aprA-panel.new{background:var(--ink);border:1px solid var(--line);position:relative;overflow:hidden;}
.aprA-panel.new::before{content:'';position:absolute;top:-4px;left:-4px;width:8px;height:8px;background:var(--accent-light);border-radius:1px;}
.aprA-lbl{font-size:10.5px;font-weight:600;letter-spacing:2px;text-transform:uppercase;margin-bottom:18px;}
.aprA-panel.old .aprA-lbl{color:var(--muted);}
.aprA-panel.new .aprA-lbl{color:var(--accent-light);}
.aprA-panel h4{font-family:var(--fh);font-weight:800;font-size:21px;letter-spacing:-.5px;margin-bottom:14px;}
.aprA-panel.old h4{color:var(--slate);}
.aprA-panel.new h4{color:var(--warm);}
.aprA-li{display:flex;gap:12px;padding:11px 0;font-size:14px;line-height:1.5;}
.aprA-panel.old .aprA-li{color:var(--muted);border-bottom:1px solid rgba(28,43,58,0.07);}
.aprA-panel.new .aprA-li{color:var(--t-90);border-bottom:1px solid var(--line-soft);}
.aprA-li:last-child{border-bottom:none;}
.aprA-li i{flex-shrink:0;font-size:17px;margin-top:1px;}
.aprA-panel.old .aprA-li i{color:var(--muted);}
.aprA-panel.new .aprA-li i{color:var(--accent-light);}

/* ── THE ENGAGEMENT (ink) — connected vertical timeline ── */
.eng{background:var(--ink);padding:var(--pad-v) 0;}
.eng-title{font-family:var(--fh);font-weight:800;font-size:clamp(28px,3.6vw,44px);line-height:1.05;letter-spacing:-2px;color:var(--warm);max-width:720px;}
.eng-body{font-size:16px;line-height:1.72;color:var(--t-60);max-width:640px;margin-top:20px;}
.engB{margin-top:56px;max-width:900px;}
.engB-item{position:relative;padding:0 0 32px 46px;}
.engB-item::before{content:'';position:absolute;left:0;top:2px;width:28px;height:28px;border-radius:50%;background:var(--panel);border:1.5px solid rgba(111,162,196,0.4);display:grid;place-items:center;z-index:2;}
.engB-item::after{content:'';position:absolute;left:13.5px;top:30px;bottom:-2px;width:1px;background:var(--line-soft);}
.engB-item:last-child{padding-bottom:0;}
.engB-item:last-child::after{display:none;}
.engB-ic{position:absolute;left:6px;top:8px;z-index:3;font-size:15px;color:var(--accent-light);}
.engB-phase{font-size:10.5px;font-weight:600;letter-spacing:2px;text-transform:uppercase;color:var(--accent-light);margin-bottom:6px;}
.engB-item h4{font-family:var(--fh);font-weight:700;font-size:19px;color:var(--warm);letter-spacing:-.4px;margin-bottom:7px;}
.engB-item p{font-size:14px;line-height:1.62;color:var(--t-60);max-width:640px;}

/* ── THE DISCIPLINE (light) — 2x2 quadrant ── */
.dsc{background:var(--warm);padding:var(--pad-v) 0;}
.dsc .eyebrow{color:var(--accent);} .dsc .eyebrow::before{background:var(--accent);}
.dsc-title{font-family:var(--fh);font-weight:800;font-size:clamp(28px,3.6vw,44px);line-height:1.08;letter-spacing:-2px;color:var(--slate);max-width:760px;}
.dsc-body{font-size:16px;line-height:1.72;color:var(--muted);max-width:640px;margin-top:22px;}
.dscA{display:grid;grid-template-columns:1fr 1fr;gap:0;margin-top:54px;border:1px solid rgba(28,43,58,0.12);border-radius:16px;overflow:hidden;background:#fff;}
.dscA-cell{padding:38px 36px;border-right:1px solid rgba(28,43,58,0.10);border-bottom:1px solid rgba(28,43,58,0.10);}
.dscA-cell:nth-child(2n){border-right:none;}
.dscA-cell:nth-child(n+3){border-bottom:none;}
.dscA-cell .ic{width:44px;height:44px;border-radius:11px;background:rgba(45,90,122,0.10);display:grid;place-items:center;color:var(--accent);margin-bottom:18px;}
.dscA-cell .ic i{font-size:21px;}
.dscA-cell h4{font-family:var(--fh);font-weight:700;font-size:18px;color:var(--slate);letter-spacing:-.3px;margin-bottom:9px;}
.dscA-cell p{font-size:13.5px;line-height:1.64;color:var(--muted);}

/* ── DISCRETION (ink) — centred pull-quote + three commitments ── */
.dcr{background:var(--ink);padding:var(--pad-v) 0;}
.dcrA{max-width:900px;margin:0 auto;text-align:center;}
.dcrA-quote{font-family:var(--fh);font-weight:800;font-size:clamp(24px,3vw,36px);line-height:1.28;letter-spacing:-1px;color:var(--warm);}
.dcrA-quote .hl{color:var(--accent-light);}
.dcrA-sub{font-size:15px;line-height:1.7;color:var(--t-60);max-width:600px;margin:26px auto 0;}
.dcrA-rows{display:grid;grid-template-columns:repeat(3,1fr);gap:36px;margin-top:56px;text-align:left;}
.dcrA-row{padding-top:20px;border-top:1px solid var(--line);}
.dcrA-row i{font-size:22px;color:var(--accent-light);margin-bottom:14px;display:block;}
.dcrA-row h4{font-family:var(--fh);font-weight:700;font-size:16px;color:var(--warm);margin-bottom:8px;letter-spacing:-.2px;}
.dcrA-row p{font-size:13px;line-height:1.6;color:var(--t-60);}

/* ── Approach seam: tighten Discretion(ink)→CTA(ink). .ctasec.seam-tight already defined (Care). ── */
.dcr.seam-tight{padding-bottom:56px;}

/* ── /approach/ responsive ── */
@media(max-width:1023px){
  .ah{min-height:auto;padding:120px 0 84px;}
}
@media(max-width:900px){
  .aprA-split,.dscA,.dcrA-rows{grid-template-columns:1fr;}
  .dscA-cell{border-right:none;}
  .dscA-cell:nth-child(3){border-bottom:1px solid rgba(28,43,58,0.10);}
  .dcrA-rows{gap:28px;}
}
@media(max-width:600px){
  .ah h1{letter-spacing:-1.2px;}
  .ah-frame{inset:12px;}
  .ah-chips span + span{margin-left:12px;padding-left:12px;}
}

/* ══════════════════════════════════════════════════════════════════════════
   ABOUT PAGE  (/about/)  — append-only, prefixed, additive
   Prefixes: .abh-* (hero) · .awa-* (who we are) · .grp-* (group) ·
             .wsf-* (what we stand for) · .std-* (our standards)
   Reuses global: .eyebrow .btn-solid .btn-ghost .inner
                  .cta-frame .cta-eyebrow .ctasec.seam-tight (locked CTA)
   Seam (§7): 6 sections, ink bookends → dark/dark seam at Standards→CTA.
              Adds .std.seam-tight only; .ctasec.seam-tight already global.
   ══════════════════════════════════════════════════════════════════════════ */

/* ── S1 · Hero (ink) .abh-* ── */
.abh{position:relative;background:var(--ink);min-height:560px;display:flex;align-items:center;padding:150px 0 96px;overflow:hidden;}
.abh-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(159,177,190,0.05) 1px,transparent 1px),linear-gradient(90deg,rgba(159,177,190,0.05) 1px,transparent 1px);background-size:64px 64px;-webkit-mask-image:radial-gradient(58% 58% at 74% 28%,#000,transparent 78%);mask-image:radial-gradient(58% 58% at 74% 28%,#000,transparent 78%);}
.abh-node{position:absolute;top:30%;right:20%;width:13px;height:13px;border-radius:50%;background:var(--accent-light);box-shadow:0 0 0 6px rgba(111,162,196,0.14),0 0 26px 6px rgba(111,162,196,0.42);}
.abh-node::after{content:'';position:absolute;inset:-16px;border:1px solid rgba(111,162,196,0.22);border-radius:50%;}
.abh-frame{position:absolute;inset:22px;border:1px solid var(--line);border-radius:6px;pointer-events:none;}
.abh-frame::before{content:'';position:absolute;top:-4px;left:-4px;width:8px;height:8px;background:var(--accent-light);border-radius:1px;}
.abh-inner{position:relative;max-width:var(--maxw);margin:0 auto;padding:0 var(--pad-h);width:100%;}
.abh-content{max-width:820px;}
.abhC-kick{display:flex;align-items:center;gap:14px;margin-bottom:26px;}
.abhC-kick .ln{width:44px;height:1.5px;background:var(--accent-light);}
.abhC-kick .tx{font-family:var(--fh);font-size:12px;font-weight:700;letter-spacing:2.4px;text-transform:uppercase;color:var(--t-45);}
.abh h1{font-family:var(--fh);font-weight:800;font-size:clamp(34px,5vw,56px);line-height:1.0;letter-spacing:-2px;color:var(--warm);margin-bottom:24px;}
.abh h1 .a{color:var(--accent-light);}
.abh .sub{font-size:16px;line-height:1.7;color:var(--t-60);max-width:600px;margin-bottom:38px;}
.abh-ctas{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:44px;}
.abh-chips{display:flex;align-items:center;flex-wrap:wrap;font-size:11.5px;color:var(--t-60);}
.abh-chips span{display:flex;align-items:center;gap:7px;}
.abh-chips span + span{margin-left:18px;padding-left:18px;border-left:1px solid rgba(245,242,238,0.18);}
.abh-chips i{color:var(--accent-light);font-size:15px;}

/* ── S2 · Who We Are (light) .awa-* ── */
.awa{background:var(--warm);padding:var(--pad-v) 0;}
.awa .eyebrow{color:var(--accent);}
.awa .eyebrow::before{background:var(--accent);}
.awa-inner{max-width:var(--maxw);margin:0 auto;padding:0 var(--pad-h);}
.awa-title{font-family:var(--fh);font-weight:800;font-size:clamp(28px,3.6vw,44px);line-height:1.08;letter-spacing:-2px;color:var(--slate);max-width:760px;}
.awa-body{font-size:16px;line-height:1.72;color:var(--muted);max-width:640px;margin-top:22px;}
.awaA-tiles{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:56px;}
.awaA-tile{background:#fff;border:1px solid rgba(28,43,58,0.10);border-radius:14px;padding:32px 30px;}
.awaA-tile .ic{width:46px;height:46px;border-radius:11px;background:rgba(45,90,122,0.08);display:flex;align-items:center;justify-content:center;margin-bottom:22px;}
.awaA-tile .ic i{font-size:23px;color:var(--accent);}
.awaA-tile h3{font-family:var(--fh);font-size:19px;font-weight:800;letter-spacing:-0.5px;color:var(--slate);margin-bottom:12px;}
.awaA-tile p{font-size:14.5px;line-height:1.65;color:var(--muted);}

/* ── S3 · Part of Galactica Group (ink) .grp-* ── */
.grp{background:var(--ink);padding:var(--pad-v) 0;position:relative;overflow:hidden;}
.grp-inner{max-width:var(--maxw);margin:0 auto;padding:0 var(--pad-h);}
.grp-split{display:grid;grid-template-columns:0.92fr 1.08fr;gap:80px;align-items:start;}
.grp-lead{padding-top:6px;}
.grp-title{font-family:var(--fh);font-weight:800;font-size:clamp(30px,3.5vw,44px);line-height:1.08;letter-spacing:-1.6px;color:var(--warm);margin-bottom:28px;}
.grp-body{font-size:15.5px;line-height:1.75;color:var(--t-60);max-width:480px;margin-bottom:38px;}
.grp-cta{display:inline-flex;align-items:center;gap:9px;background:var(--panel);border:1px solid var(--line);color:var(--warm);font-size:13.5px;font-weight:600;padding:14px 24px;border-radius:8px;text-decoration:none;transition:border-color .15s,transform .15s;}
.grp-cta:hover{border-color:var(--accent-light);transform:translateY(-1px);}
.grp-aside{display:flex;flex-direction:column;gap:20px;}
.grp-proof{display:grid;grid-template-columns:1fr 1fr;gap:20px;}
.grp-card{background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:30px;min-height:172px;}
.grp-card .k{font-family:var(--fh);font-size:27px;font-weight:800;letter-spacing:-1px;color:var(--warm);line-height:1.05;margin-bottom:16px;}
.grp-card .v{font-size:13.5px;line-height:1.6;color:var(--t-60);}
.grp-verts{background:linear-gradient(180deg,rgba(45,90,122,0.12),rgba(20,34,49,0.30));border:1px solid rgba(111,162,196,0.22);border-radius:16px;padding:26px 28px 28px;}
.grp-verts-lab{display:flex;align-items:center;gap:9px;font-size:10.5px;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:var(--accent-light);margin-bottom:22px;}
.grp-verts-lab .dot{width:7px;height:7px;border-radius:50%;background:var(--accent-light);box-shadow:0 0 10px 1px rgba(111,162,196,0.7);}
.grp-ladder{display:grid;grid-template-columns:repeat(5,1fr);border:1px solid var(--line);border-radius:10px;overflow:hidden;}
.grp-vert{padding:18px 16px;border-right:1px solid var(--line);}
.grp-vert:last-child{border-right:none;}
.grp-vert.on{background:rgba(45,90,122,0.30);}
.grp-vert h4{font-family:var(--fh);font-size:15px;font-weight:800;letter-spacing:-0.3px;color:var(--t-45);margin-bottom:6px;}
.grp-vert.live h4,.grp-vert.on h4{color:var(--warm);}
.grp-vert .loc{font-size:11.5px;line-height:1.35;color:var(--t-45);margin-bottom:20px;min-height:30px;}
.grp-vert.live .loc,.grp-vert.on .loc{color:var(--t-60);}
.grp-badge{display:inline-block;font-size:9.5px;font-weight:700;letter-spacing:1.2px;text-transform:uppercase;padding:4px 9px;border-radius:4px;}
.grp-badge.b-live{background:rgba(111,162,196,0.18);color:var(--accent-light);}
.grp-badge.b-year{background:rgba(159,177,190,0.10);color:var(--platinum);}
.grp-badge.b-future{background:rgba(159,177,190,0.08);color:var(--t-45);}

/* ── S4 · What We Stand For (light) .wsf-* ── */
.wsf{background:var(--warm);padding:var(--pad-v) 0;}
.wsf .eyebrow{color:var(--accent);}
.wsf .eyebrow::before{background:var(--accent);}
.wsf-inner{max-width:var(--maxw);margin:0 auto;padding:0 var(--pad-h);}
.wsf-title{font-family:var(--fh);font-weight:800;font-size:clamp(28px,3.6vw,44px);line-height:1.08;letter-spacing:-2px;color:var(--slate);max-width:720px;}
.wsf-body{font-size:16px;line-height:1.72;color:var(--muted);max-width:600px;margin-top:22px;}
.wsfC-lead{max-width:760px;}
.wsfC-strip{display:grid;grid-template-columns:repeat(4,1fr);margin-top:56px;border:1px solid rgba(28,43,58,0.12);border-radius:14px;overflow:hidden;background:#fff;}
.wsfC-cell{padding:34px 28px;border-right:1px solid rgba(28,43,58,0.10);}
.wsfC-cell:last-child{border-right:none;}
.wsfC-cell .ic{width:42px;height:42px;border-radius:10px;background:rgba(45,90,122,0.08);display:flex;align-items:center;justify-content:center;margin-bottom:20px;}
.wsfC-cell .ic i{font-size:22px;color:var(--accent);}
.wsfC-cell h3{font-family:var(--fh);font-size:17px;font-weight:800;letter-spacing:-0.4px;color:var(--slate);margin-bottom:10px;}
.wsfC-cell p{font-size:13.5px;line-height:1.62;color:var(--muted);}

/* ── S5 · Our Standards (ink, seam-tight tail) .std-* ── */
.std{background:var(--ink);padding:var(--pad-v) 0;position:relative;overflow:hidden;}
.std.seam-tight{padding-bottom:56px;}
.std-inner{max-width:var(--maxw);margin:0 auto;padding:0 var(--pad-h);}
.std-title{font-family:var(--fh);font-weight:800;font-size:clamp(28px,3.6vw,44px);line-height:1.08;letter-spacing:-2px;color:var(--warm);max-width:720px;}
.std-body{font-size:16px;line-height:1.72;color:var(--t-60);max-width:600px;margin-top:22px;}
.stdA-cols{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:54px;}
.stdA-col{background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:34px 30px;}
.stdA-col .ic{width:46px;height:46px;border-radius:11px;background:rgba(111,162,196,0.12);display:flex;align-items:center;justify-content:center;margin-bottom:22px;}
.stdA-col .ic i{font-size:23px;color:var(--accent-light);}
.stdA-col h3{font-family:var(--fh);font-size:19px;font-weight:800;letter-spacing:-0.5px;color:var(--warm);margin-bottom:11px;}
.stdA-col p{font-size:14.5px;line-height:1.66;color:var(--t-60);}
.std-band{margin-top:52px;border-top:1px solid var(--line-soft);padding-top:30px;}
.std-band-lab{font-size:10.5px;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:var(--t-45);margin-bottom:18px;}
.std-names{display:flex;flex-wrap:wrap;gap:10px;}
.std-name{font-family:var(--fh);font-size:14px;font-weight:700;color:var(--t-90);background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:11px 18px;}

/* ── About · responsive (matches production breakpoints 1023 / 767) ── */
@media (max-width:1023px){
  .abh-inner,.awa-inner,.grp-inner,.wsf-inner,.std-inner{padding:0 36px;}
  .grp-split{grid-template-columns:1fr;gap:48px;}
  .awaA-tiles{grid-template-columns:1fr;gap:16px;}
  .wsfC-strip{grid-template-columns:1fr 1fr;}
  .wsfC-cell{border-bottom:1px solid rgba(28,43,58,0.10);}
  .wsfC-cell:nth-child(2){border-right:none;}
  .stdA-cols{grid-template-columns:1fr;gap:16px;}
}
@media (max-width:767px){
  .abh{padding:118px 0 72px;min-height:auto;}
  .abh-frame{inset:12px;}
  .abh h1{letter-spacing:-1.2px;}
  .abh-chips span + span{margin-left:12px;padding-left:12px;}
  .awa,.grp,.wsf,.std{padding:72px 0;}
  .std.seam-tight{padding-bottom:48px;}
  .abh-inner,.awa-inner,.grp-inner,.wsf-inner,.std-inner{padding:0 24px;}
  .awa-title,.grp-title,.wsf-title,.std-title{font-size:29px;}
  .grp-proof{grid-template-columns:1fr;}
  .grp-card{min-height:0;padding:34px 30px 38px;}
  .grp-card .k{font-size:34px;margin-bottom:20px;}
  .grp-card .v{font-size:16px;}
  .grp-verts{padding:26px 22px;}
  .grp-ladder{grid-template-columns:1fr 1fr;gap:16px;border:none;border-radius:0;overflow:visible;}
  .grp-vert{border:1px solid var(--line);border-radius:12px;padding:22px 20px 24px;}
  .grp-vert.live{border-color:rgba(111,162,196,0.35);background:rgba(45,90,122,0.10);}
  .grp-vert.on{border-color:rgba(111,162,196,0.30);}
  .grp-vert h4{font-size:20px;margin-bottom:8px;}
  .grp-vert .loc{font-size:14px;min-height:0;margin-bottom:22px;}
  .wsfC-strip{grid-template-columns:1fr;}
  .wsfC-cell{border-right:none;}
  .stdA-col{padding:30px 26px;}
}

/* ══════════════════════════════════════════════════════════════════════════
   CONTACT (/contact/) + THANK-YOU (/thank-you/) — append-only, prefixed
   Prefixes: .pch-* (page hero, ink centred) · .pcf-* (contact form, light) ·
             .pnx-* (what happens next, light)
   Reuses global: .btn-solid .inner  (form submit gets a scoped light-bg override)
   Form layout ported from comfort.je (.sp-cf) and reskinned to Ink & Signal.
   ══════════════════════════════════════════════════════════════════════════ */

/* ── Page hero (ink, centred) .pch-* ── */
.pch{background:var(--ink);padding:150px 0 90px;text-align:center;position:relative;overflow:hidden;}
.pch-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(159,177,190,0.05) 1px,transparent 1px),linear-gradient(90deg,rgba(159,177,190,0.05) 1px,transparent 1px);background-size:64px 64px;-webkit-mask-image:radial-gradient(60% 60% at 50% 20%,#000,transparent 78%);mask-image:radial-gradient(60% 60% at 50% 20%,#000,transparent 78%);}
.pch-inner{position:relative;max-width:760px;margin:0 auto;padding:0 var(--pad-h);}
.pch-eyebrow{display:inline-flex;align-items:center;gap:11px;font-size:10.5px;font-weight:600;letter-spacing:2.6px;text-transform:uppercase;color:var(--accent-light);margin-bottom:24px;}
.pch-eyebrow::before,.pch-eyebrow::after{content:'';width:26px;height:1.5px;background:var(--accent-light);}
.pch h1{font-family:var(--fh);font-weight:800;font-size:clamp(34px,5vw,56px);line-height:1.04;letter-spacing:-2px;color:var(--warm);margin-bottom:20px;}
.pch p{font-size:17px;line-height:1.65;color:var(--t-60);max-width:560px;margin:0 auto;}
.pch .btn-solid{margin-top:34px;}

/* ── Contact form (light) .pcf-* ── */
.pcf{background:#fff;padding:var(--pad-v) 0;}
.pcf-grid{display:grid;grid-template-columns:1fr 1.6fr;gap:80px;align-items:start;max-width:var(--maxw);margin:0 auto;padding:0 var(--pad-h);}
.pcf-eyebrow{display:inline-flex;align-items:center;gap:11px;font-size:10.5px;font-weight:600;letter-spacing:2.6px;text-transform:uppercase;color:var(--accent);margin-bottom:22px;}
.pcf-eyebrow::before{content:'';width:26px;height:1.5px;background:var(--accent);}
.pcf-info h2{font-family:var(--fh);font-weight:800;font-size:clamp(26px,3vw,36px);line-height:1.1;letter-spacing:-1.4px;color:var(--slate);}
.pcf-info .sub{font-size:16px;line-height:1.7;color:var(--muted);margin-top:16px;margin-bottom:44px;}
.pcf-details{display:flex;flex-direction:column;gap:22px;}
.pcf-detail{display:flex;align-items:flex-start;gap:14px;}
.pcf-detail-icon{width:40px;height:40px;min-width:40px;background:rgba(45,90,122,0.09);border-radius:10px;display:flex;align-items:center;justify-content:center;}
.pcf-detail-icon i{color:var(--accent);font-size:19px;}
.pcf-detail-label{font-size:10.5px;font-weight:600;letter-spacing:1.5px;text-transform:uppercase;color:var(--muted);margin-bottom:3px;}
.pcf-detail-value{font-size:15px;font-weight:500;color:var(--slate);text-decoration:none;}
.pcf-detail-value:hover{color:var(--accent);}
.pcf-form-wrap{background:var(--warm);border:1px solid rgba(28,43,58,0.08);border-radius:18px;padding:40px;}
.pcf-row{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:20px;}
.pcf-field{display:flex;flex-direction:column;gap:7px;margin-bottom:20px;}
.pcf-field--message{margin-top:2px;}
.pcf-label{font-size:13px;font-weight:500;color:var(--slate);}
.pcf-input,.pcf-select,.pcf-textarea{font-family:var(--fb);width:100%;border:1.5px solid rgba(28,43,58,0.18);border-radius:8px;background:#fff;color:var(--slate);font-size:14.5px;transition:border-color .15s;}
.pcf-input,.pcf-select{height:48px;padding:0 14px;}
.pcf-select{padding-right:40px;appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16' fill='none' stroke='%236B7A8D' stroke-width='1.6'%3E%3Cpolyline points='4,6 8,10 12,6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;}
.pcf-textarea{min-height:120px;padding:12px 14px;resize:vertical;line-height:1.5;}
.pcf-input:focus,.pcf-select:focus,.pcf-textarea:focus{outline:none;border-color:var(--accent);}
.pcf-radio-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px 24px;margin-top:6px;}
.pcf-radio-grid--col{grid-template-columns:1fr;gap:10px;}
.pcf-radio{display:flex;align-items:center;gap:10px;font-size:14px;color:var(--muted);cursor:pointer;}
/* white custom radios (replace default black) */
.pcf-radio input{appearance:none;-webkit-appearance:none;width:18px;height:18px;min-width:18px;border:1.5px solid rgba(28,43,58,0.28);border-radius:50%;background:#fff;cursor:pointer;position:relative;transition:border-color .15s;margin:0;}
.pcf-radio input:hover{border-color:var(--accent);}
.pcf-radio input:checked{border-color:var(--accent);}
.pcf-radio input:checked::after{content:'';position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:9px;height:9px;border-radius:50%;background:var(--accent);}
.pcf-radio input:focus-visible{outline:2px solid var(--accent-light);outline-offset:2px;}
/* conditional care-type field: hidden until Monitoring & Care selected */
.pcf-care{display:none;margin-top:-4px;margin-bottom:20px;background:rgba(45,90,122,0.06);border:1.5px solid rgba(45,90,122,0.22);border-radius:12px;padding:20px 20px 16px;}
.pcf-care--visible{display:block;}
.pcf-care-label{font-size:13px;font-weight:500;color:var(--slate);margin-bottom:12px;}
.pcf-checkbox{display:flex;align-items:flex-start;gap:11px;margin:8px 0 28px;font-size:13.5px;color:var(--muted);line-height:1.5;}
/* white custom checkbox (replace default black) */
.pcf-checkbox input{appearance:none;-webkit-appearance:none;width:18px;height:18px;min-width:18px;border:1.5px solid rgba(28,43,58,0.28);border-radius:5px;background:#fff;cursor:pointer;position:relative;margin-top:1px;transition:border-color .15s;}
.pcf-checkbox input:hover{border-color:var(--accent);}
.pcf-checkbox input:checked{border-color:var(--accent);background:var(--accent);}
.pcf-checkbox input:checked::after{content:'';position:absolute;top:47%;left:50%;transform:translate(-50%,-50%) rotate(45deg);width:5px;height:9px;border:solid #fff;border-width:0 2px 2px 0;}
.pcf-checkbox input:focus-visible{outline:2px solid var(--accent-light);outline-offset:2px;}
.pcf-checkbox a{color:var(--accent);}
.pcf-hp{position:absolute;left:-9999px;}
/* form submit sits on light card → scoped accent-fill override of the warm global .btn-solid */
.pcf .btn-solid{background:var(--accent);color:#fff;padding:15px 28px;border:none;cursor:pointer;}
.pcf .btn-solid:hover{background:var(--accent-deep);box-shadow:none;}

/* ── What happens next (light) .pnx-* ── */
.pnx{background:var(--warm);padding:var(--pad-v) 0;}
.pnx-inner{max-width:var(--maxw);margin:0 auto;padding:0 var(--pad-h);}
.pnx-header{text-align:center;max-width:640px;margin:0 auto 60px;}
.pnx-eyebrow{display:inline-flex;align-items:center;gap:11px;font-size:10.5px;font-weight:600;letter-spacing:2.6px;text-transform:uppercase;color:var(--accent);margin-bottom:20px;}
.pnx-eyebrow::before,.pnx-eyebrow::after{content:'';width:26px;height:1.5px;background:var(--accent);}
.pnx-header h2{font-family:var(--fh);font-weight:800;font-size:clamp(28px,3.4vw,42px);line-height:1.1;letter-spacing:-1.6px;color:var(--slate);}
.pnx-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;}
.pnx-step{background:#fff;border:1px solid rgba(28,43,58,0.09);border-radius:16px;padding:38px 32px;}
.pnx-tile{width:52px;height:52px;border-radius:12px;background:rgba(45,90,122,0.09);display:flex;align-items:center;justify-content:center;margin-bottom:22px;}
.pnx-tile i{font-size:25px;color:var(--accent);}
.pnx-step h3{font-family:var(--fh);font-size:19px;font-weight:800;letter-spacing:-0.5px;color:var(--slate);margin-bottom:11px;}
.pnx-step p{font-size:14.5px;line-height:1.66;color:var(--muted);}

/* ── Contact / Thank-You · responsive (1023 / 767) ── */
@media (max-width:1023px){
  .pcf-grid{grid-template-columns:1fr;gap:44px;padding:0 36px;}
  .pnx-inner{padding:0 36px;}
  .pnx-steps{grid-template-columns:1fr;gap:16px;}
  .pch-inner{padding:0 36px;}
}
@media (max-width:767px){
  .pch{padding:118px 0 66px;}
  .pcf,.pnx{padding:72px 0;}
  .pcf-grid{padding:0 24px;}
  .pcf-form-wrap{padding:28px 22px;}
  .pcf-row{grid-template-columns:1fr;gap:0;margin-bottom:0;}
  .pcf-radio-grid{grid-template-columns:1fr;}
  .pnx-inner,.pch-inner{padding:0 24px;}
  .pch h1{font-size:34px;letter-spacing:-1.2px;}
}

/* ══════════════════════════════════════════════════════════════════════════
   PRIVACY (/privacy/) + TERMS (/terms/) — legal pages — append-only, prefixed
   Prefix: .pl-* (legal body).  Hero reuses .pch-* (centred ink hero).
   Body rendered with | safe (no markdownify filter on this site yet).
   ══════════════════════════════════════════════════════════════════════════ */
.pl{background:#fff;padding:80px 0 96px;}
.pl-inner{max-width:800px;margin:0 auto;padding:0 var(--pad-h);}
.pl-meta{font-size:13px;color:var(--muted);margin-bottom:48px;padding-bottom:24px;border-bottom:1px solid rgba(28,43,58,0.10);}
.pl h2{font-family:var(--fh);font-weight:800;font-size:22px;letter-spacing:-0.5px;color:var(--slate);margin:40px 0 16px;}
.pl h2:first-of-type{margin-top:0;}
.pl p{font-size:16px;line-height:1.75;color:#3D4F61;margin:0 0 16px;}
.pl ul{margin:0 0 20px 0;padding-left:20px;}
.pl li{font-size:16px;line-height:1.75;color:#3D4F61;margin-bottom:8px;}
.pl li::marker{color:var(--accent);}
.pl a{color:var(--accent);text-decoration:underline;}
.pl a:hover{color:var(--accent-deep);}
.pl-divider{border:none;border-top:1px solid rgba(28,43,58,0.10);margin:40px 0;}
.pl-note{background:var(--warm);border:1px solid rgba(45,90,122,0.18);border-radius:12px;padding:24px 28px;margin:0 0 20px;}
.pl-note p{margin:0;font-size:15px;color:#3D4F61;}
.pl-contact-box{background:var(--warm);border:1px solid rgba(28,43,58,0.08);border-radius:12px;padding:32px 36px;margin-top:48px;}
.pl-contact-box h3{font-family:var(--fh);font-weight:800;font-size:18px;letter-spacing:-0.4px;color:var(--slate);margin-bottom:14px;}
.pl-contact-box p{margin:0 0 8px;font-size:15px;color:#3D4F61;}
.pl-contact-box p:last-child{margin-bottom:0;}

@media (max-width:1023px){
  .pl-inner{padding:0 36px;}
}
@media (max-width:767px){
  .pl{padding:56px 0 72px;}
  .pl-inner{padding:0 24px;}
  .pl h2{font-size:19px;margin:36px 0 14px;}
  .pl p,.pl li{font-size:15px;}
  .pl-contact-box{padding:24px 20px;}
  .pl-note{padding:20px;}
}

/* ============================================================
   FOOTER — responsive (appended; Option B, approved 2026-07-11)
   Fixes sitewide horizontal overflow at mobile widths caused by
   .footer-brand's rigid 240px flex basis + the 3-col grid's
   min-content floor (email address). Brand stacks above the
   columns at ≤1023px; columns go two-up with Connect spanning
   full width at ≤767px. Desktop (>1023px) untouched.
   Pure additive — no existing rules modified.
   ============================================================ */
@media (max-width:1023px){
  .footer-top{flex-direction:column;gap:44px;}
  .footer-brand{flex:0 0 auto;}
  .footer-cols{width:100%;}
  .footer-col{min-width:0;}
}
@media (max-width:767px){
  .footer-brand-desc{max-width:300px;}
  .footer-cols{grid-template-columns:1fr 1fr;gap:36px 24px;}
  .footer-col:last-child{grid-column:1 / -1;}
}


/* ============================================================
   FOOTER — group-site layout (appended; approved 2026-07-12)
   Matches the innovation.je / group footer: content inset to
   1180px, columns grouped right of the brand, stone headings,
   14px links, 12px bottom bar, two-up mobile grid. Supersedes
   the Option-B block above where rules conflict (later rules
   win at equal specificity). Pure additive — no existing rules
   modified.
   ============================================================ */
.site-footer{--stone:#A89A8A;}
.footer-inner{max-width:1180px;padding:64px 80px 0;}
.footer-brand{flex:1;min-width:0;}
.footer-brand-desc{font-size:13.5px;line-height:1.7;max-width:320px;}
.footer-region{font-size:10px;font-weight:600;letter-spacing:2.4px;text-transform:uppercase;color:var(--stone);opacity:.75;margin-top:18px;}
.footer-cols{flex:0 1 auto;grid-template-columns:repeat(4,max-content);gap:52px;justify-content:end;}
.footer-col-heading{color:var(--stone);}
.footer-col ul{gap:11px;}
.footer-col ul a{font-size:14px;transition:color .15s ease;}
.footer-col ul a:hover{color:var(--warm);}
.footer-ext{font-size:11px;margin-left:4px;opacity:.55;}
.footer-copy{font-size:12px;}
.footer-bottom nav a{font-size:12px;}
@media (max-width:1023px){
  .footer-inner{padding:56px 36px 0;}
  .footer-top{flex-direction:column;gap:44px;}
  .footer-brand{flex:0 0 auto;}
  .footer-cols{justify-content:start;width:100%;}
}
@media (max-width:767px){
  .footer-inner{padding-left:24px;padding-right:24px;}
  .footer-cols{grid-template-columns:1fr 1fr;gap:36px 24px;}
  .footer-col{min-width:0;}
  .footer-col:last-child{grid-column:auto;}
  .footer-col ul a{overflow-wrap:anywhere;}
}


/* ============================================================
   MOBILE NAV — group-style full-screen takeover (appended;
   approved 2026-07-13). Verbatim port of innovation.je's block
   mapped to Protection tokens, keyed to this site's `.open`
   class. Scoped to ≤1023px — Protection's hamburger breakpoint
   (innovation's was 767; ours includes tablets by design).
   Structural rules target .nav-links.open (0-2-0) and the foot
   uses .nav-links.open .nav-mobile-* (0-3-0) so the big-link
   rule can never restyle the foot. Requires the matching
   main.js (toggles body.nav-open + Escape close).
   Pure additive — no existing rules modified.
   ============================================================ */
@media (max-width:1023px){
  .site-header{--stone:#A89A8A;}
  body.nav-open{overflow:hidden;}
  .nav-links:not(.open){display:none;}
  .nav-links.open{
    display:flex;position:fixed;inset:0;width:100%;height:100dvh;
    transform:none;background:var(--ink);
    flex-direction:column;align-items:flex-start;justify-content:flex-start;
    gap:0;padding:92px 32px 40px;border-bottom:none;overflow-y:auto;
    max-height:none;opacity:1;pointer-events:auto;z-index:240;left:0;
  }
  .nav-links.open > li{width:100%;}
  .nav-links.open > li > a{
    font-family:var(--fh);font-weight:600;font-size:30px;
    letter-spacing:-0.6px;color:var(--t-90);padding:18px 0;
    border-radius:0;display:block;
  }
  .nav-links.open > li > a:hover{color:var(--warm);}
  .nav-hamburger{display:flex;position:fixed;top:16px;right:40px;z-index:250;}
  .nav-links.open .nav-mobile-foot{
    margin-top:auto;width:100%;padding-top:28px;
    border-top:1px solid var(--line-soft);
    display:flex;flex-direction:column;align-items:flex-start;gap:18px;
  }
  .nav-links.open .nav-mobile-enquiry{
    display:inline-flex;align-items:center;gap:9px;width:auto;align-self:flex-start;
    border:1px solid var(--line-soft);color:var(--t-60);
    font-family:var(--fb);font-size:14px;font-weight:500;
    letter-spacing:0;padding:13px 22px;border-radius:6px;
    transition:border-color .15s,color .15s;
  }
  .nav-links.open .nav-mobile-enquiry:hover{border-color:var(--platinum);color:var(--warm);}
  .nav-links.open .nav-mobile-enquiry svg{width:15px;height:15px;flex-shrink:0;}
  .nav-links.open .nav-mobile-write{font-family:var(--fb);font-size:14px;color:var(--t-45);margin:0;padding:0;}
  .nav-links.open .nav-mobile-write a{color:var(--t-60);text-decoration:underline;text-underline-offset:3px;margin-left:8px;display:inline;font-size:14px;padding:0;}
  .nav-links.open .nav-mobile-reach{
    font-family:var(--fb);font-size:11px;letter-spacing:0.14em;
    text-transform:uppercase;color:var(--stone);opacity:.6;margin:0;
  }
}
@media (min-width:1024px){
  .nav-mobile-foot{display:none;}
}
/* ============================================================
   ABOUT · GROUP SECTION — desktop layout to family standard
   (appended; approved 2026-07-13). Per comfort.je's written
   sp-ab__group / .section-heading rules (innovation's port of
   the same block): columns vertically centred, equal 1fr/1fr
   at 88px, title metrics 1.07 / -2.5px / 18px below (44px size
   unchanged; 30px / -1.5px at mobile per comfort), body at
   full column measure, quiet white-alpha CTA, 16px aside gap.
   The @1023 re-assert is required: the unqualified 1fr 1fr
   below would otherwise beat the earlier tablet stacking rule
   in the cascade. Pure additive — no existing rules modified.
   ============================================================ */
.grp-split{grid-template-columns:1fr 1fr;gap:88px;align-items:center;}
.grp-lead{padding-top:0;}
.grp-title{line-height:1.07;letter-spacing:-2.5px;margin-bottom:18px;}
.grp-body{max-width:none;margin-bottom:32px;}
.grp-cta{background:rgba(255,255,255,0.08);border:1px solid rgba(255,255,255,0.15);font-size:14px;font-weight:500;padding:13px 22px;border-radius:6px;}
.grp-cta:hover{background:rgba(255,255,255,0.13);border-color:rgba(255,255,255,0.15);transform:none;}
.grp-aside{gap:16px;}
@media (max-width:1023px){
  .grp-split{grid-template-columns:1fr;gap:52px;}
}
@media (max-width:767px){
  .grp-title{font-size:30px;letter-spacing:-1.5px;}
}


/* ============================================================
   ABOUT · GROUP SECTION — content width to family measure
   (appended; approved 2026-07-13). Comfort's group section
   delivers 1240px of CONTENT (padding outside the measure);
   Protection's 1240 grid takes padding inside it (1144px) —
   the 96px deficit was the "squashed" desktop. Raising the
   section's inner cap to 1336px lands content at 1240px while
   the responsive --pad-h padding keeps working untouched.
   Deliberately wider than Protection's sitewide 1240 grid for
   this shared family section only. Mobile/tablet unaffected
   (viewport-bound below the cap).
   Pure additive — no existing rules modified.
   ============================================================ */
.grp-inner{max-width:1336px;}

/* ============================================================
   ABOUT · GROUP SECTION — right column matched to comfort.je
   (appended; approved 2026-07-16). The earlier append blocks
   aligned the outer grid, left column and content measure.
   This block completes the port by matching the RIGHT column
   to comfort's measured values (its .sp-ab__stats /
   __credential / __verticals / __roadmap rules):
     · stats gap 16px; credential padding 28/26, NO min-height
       (invented min-heights were padding the cards vertically)
     · credential heading 26px/-0.8px/1.15, body 12.5px/1.55
     · white-alpha card surfaces (.06 bg / .08 border)
     · verticals panel: flat tint, padding 22/24, label mb16
     · roadmap ladder: FLEX with flex:1 cells and per-cell
       borders (was a 5-col grid with overflow:hidden, which
       created the inset gutter); cell padding 14/14/12;
       badge pushed to the bottom with margin-top:auto
     · mobile: 2-col grid at 8px gap, fully bordered cells
   Colours remain Ink & Signal — layout only.
   Pure additive — no existing rules modified.
   ============================================================ */
.grp-proof{gap:16px;}
.grp-card{background:rgba(255,255,255,0.06);border:1px solid rgba(255,255,255,0.08);padding:28px 26px;min-height:0;}
.grp-card .k{font-size:26px;letter-spacing:-0.8px;line-height:1.15;margin-bottom:10px;}
.grp-card .v{font-size:12.5px;line-height:1.55;color:rgba(245,242,238,0.5);}
.grp-verts{background:rgba(45,90,122,0.14);border:1px solid rgba(45,90,122,0.28);padding:22px 24px;}
.grp-verts-lab{gap:8px;font-weight:600;letter-spacing:0.08em;margin-bottom:16px;}
.grp-verts-lab .dot{box-shadow:none;flex-shrink:0;display:inline-block;}
.grp-ladder{display:flex;align-items:stretch;gap:0;border:none;border-radius:0;overflow:visible;}
.grp-vert{flex:1;background:rgba(255,255,255,0.04);border-top:1px solid rgba(255,255,255,0.1);border-bottom:1px solid rgba(255,255,255,0.1);border-right:1px solid rgba(255,255,255,0.08);padding:14px 14px 12px;display:flex;flex-direction:column;}
.grp-vert:first-child{border-left:1px solid rgba(255,255,255,0.1);border-radius:6px 0 0 6px;}
.grp-vert:last-child{border-right:1px solid rgba(255,255,255,0.08);border-radius:0 6px 6px 0;}
.grp-vert.live,.grp-vert.on{background:rgba(45,90,122,0.18);border-color:rgba(45,90,122,0.38);}
.grp-vert.live:first-child,.grp-vert.on:first-child{border-left-color:rgba(45,90,122,0.38);}
.grp-vert h4{font-weight:700;font-size:14px;letter-spacing:-0.2px;color:rgba(245,242,238,0.42);margin-bottom:4px;line-height:1.2;}
.grp-vert.live h4,.grp-vert.on h4{color:var(--warm);}
.grp-vert .loc{font-size:10.5px;color:rgba(245,242,238,0.25);margin-bottom:10px;min-height:0;line-height:1.3;}
.grp-vert.live .loc,.grp-vert.on .loc{color:rgba(245,242,238,0.5);}
.grp-badge{margin-top:auto;align-self:flex-start;font-weight:600;letter-spacing:0.08em;padding:3px 8px;color:rgba(245,242,238,0.3);background:rgba(255,255,255,0.06);}
.grp-badge.b-live{color:var(--accent-light);background:rgba(45,90,122,0.25);}
.grp-badge.b-year,.grp-badge.b-future{color:rgba(245,242,238,0.3);background:rgba(255,255,255,0.06);}
@media (max-width:767px){
  .grp-card{padding:28px 26px;}
  .grp-card .k{font-size:22px;margin-bottom:10px;}
  .grp-card .v{font-size:12.5px;}
  .grp-verts{padding:22px 24px;}
  .grp-ladder{display:grid;grid-template-columns:1fr 1fr;gap:8px;}
  .grp-vert{border:1px solid rgba(255,255,255,0.1);border-radius:6px;padding:14px 14px 12px;}
  .grp-vert:first-child,.grp-vert:last-child{border-radius:6px;}
  .grp-vert.live,.grp-vert.on{border-color:rgba(45,90,122,0.38);}
  .grp-vert h4{font-size:14px;margin-bottom:4px;}
  .grp-vert .loc{font-size:10.5px;margin-bottom:10px;}
}