/* Change Navigators site styles */
:root{
  --navy:#0b2143;--navy-2:#13315c;--slate:#4a6583;--teal:#3f6a78;
  --gold:#b8903a;--gold-lt:#d9b86a;--cream:#f8f4ec;--cream-2:#f2ece0;--paper:#fcfaf6;--mist:#eef2f6;
  --ink:#1a2740;--muted:#566175;--rule:rgba(184,144,58,.45);--line:rgba(11,33,67,.12);
  --serif:"Cormorant Garamond",Georgia,"Times New Roman",serif;
  --sans:"Montserrat","Segoe UI",Helvetica,Arial,sans-serif;
  --max:1180px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased;overflow-x:hidden}
img{max-width:100%;display:block}
a{color:inherit}
:focus-visible{outline:2px solid var(--gold);outline-offset:3px}
.wrap{width:min(var(--max),calc(100% - 48px));margin:0 auto}
h1,h2,h3{font-family:var(--serif);font-weight:600;margin:0;color:var(--navy);line-height:1.1}
h1{font-size:clamp(2.3rem,3.6vw,3.2rem)}
h2{font-size:clamp(1.7rem,2.5vw,2.2rem)}
h3{font-size:1.25rem;line-height:1.2}
h1 em,h2 em{font-style:italic;color:var(--gold)}
p{margin:0}
.label{font-size:.7rem;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--navy-2);margin-bottom:12px}
.label.gold{color:var(--gold)}
.lede{margin-top:16px;color:var(--ink);max-width:32em}
.muted{color:var(--muted)}
.rule-left{border-left:2px solid var(--gold);padding-left:22px}
.underline{display:block;width:56px;height:2px;background:var(--gold);margin-top:18px}
.center{text-align:center}

.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:44px;padding:0 22px;font:600 .72rem var(--sans);letter-spacing:.16em;text-transform:uppercase;text-decoration:none;border:1px solid transparent;transition:background .2s,color .2s}
.btn svg{width:16px;height:10px}
.btn-gold{background:var(--gold);color:#fff}
.btn-gold:hover{background:#9f7c2e}
.btn-outline{border-color:var(--gold);color:var(--navy);background:rgba(255,255,255,.6)}
.btn-outline:hover{background:#fff}
.btn-ghost-light{border-color:var(--gold-lt);color:#fff}
.btn-row{display:flex;flex-wrap:wrap;gap:12px;margin-top:26px}
.more{display:inline-flex;align-items:center;gap:10px;margin-top:22px;font-size:.7rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--navy);text-decoration:none;border-bottom:1px solid var(--gold);padding-bottom:4px}
.more svg{width:16px;height:10px;transition:transform .2s}
.more:hover svg{transform:translateX(3px)}
.tagline{margin-top:22px;font-size:.7rem;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--navy)}

/* Header */
.site-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.97);backdrop-filter:blur(10px);border-bottom:1px solid var(--line);padding-top:env(safe-area-inset-top,0px)}
.nav{height:80px;display:flex;align-items:center;gap:28px}
.brand img{height:68px;width:auto}
.menu{display:flex;align-items:center;gap:30px;margin-left:auto}
.menu>a,.drop>button{font:500 .84rem var(--sans);color:var(--navy);background:none;border:0;padding:8px 0;cursor:pointer;text-decoration:none;border-bottom:2px solid transparent}
.menu>a:hover,.drop>button:hover{color:var(--gold)}
.menu .current,.drop.current>button{border-bottom-color:var(--gold)}
.drop{position:relative}
.drop>button:after{content:"";display:inline-block;width:5px;height:5px;border-right:1.5px solid var(--gold);border-bottom:1.5px solid var(--gold);transform:rotate(45deg) translate(-2px,-2px);margin-left:8px}
.drop-panel{position:absolute;top:100%;left:-16px;min-width:300px;padding:8px;background:#fff;border-top:2px solid var(--gold);box-shadow:0 20px 50px rgba(11,33,67,.16);opacity:0;visibility:hidden;transform:translateY(6px);transition:.18s}
.drop:hover .drop-panel,.drop:focus-within .drop-panel{opacity:1;visibility:visible;transform:none}
.drop-panel a{display:block;padding:9px 12px;font-size:.86rem;color:var(--ink);text-decoration:none}
.drop-panel a:hover{background:var(--cream);color:var(--navy-2)}
.menu .btn-gold{margin-left:10px;border-bottom:0;color:#fff;padding:0 20px;background:var(--gold)}
.menu .btn-gold:hover{background:#9f7c2e;color:#fff}
.toggle{display:none;margin-left:auto;background:none;border:0;color:var(--navy);width:44px;height:44px;cursor:pointer}
.toggle span{display:block;height:1.5px;background:currentColor;margin:6px 9px}

/* Hero */
.hero{position:relative;background:linear-gradient(90deg,#fbf8f2 0%,#f7f1e6 100%);overflow:hidden}
.hero .photo{position:absolute;top:0;right:0;bottom:0;width:58%}
.hero .photo img{width:100%;height:100%;object-fit:cover;object-position:60% 22%;-webkit-mask-image:linear-gradient(90deg,transparent 0%,#000 26%);mask-image:linear-gradient(90deg,transparent 0%,#000 26%)}
.hero .copy{position:relative;z-index:2;padding:74px 0 70px;max-width:470px;min-height:540px;display:flex;flex-direction:column;justify-content:center}
.hero .copy .lede{font-size:1.02rem}
.hero.dark{background:var(--navy)}
.hero.dark .photo{background:var(--navy)}
.hero.dark .photo img{-webkit-mask-image:linear-gradient(90deg,transparent 0%,#000 30%);mask-image:linear-gradient(90deg,transparent 0%,#000 30%)}
.hero.dark h1,.hero.dark .lede{color:#fff}
.hero.dark h1 em{color:var(--gold-lt)}
.hero.dark .label,.hero.dark .tagline{color:#e8dfc9}
.hero.dark .btn-outline{background:transparent;color:#fff;border-color:var(--gold-lt)}
.hero.dark .btn-outline:hover{background:rgba(217,184,106,.15)}
.hero .rose{position:absolute;left:30%;top:50%;width:360px;transform:translateY(-50%);opacity:.06;pointer-events:none;z-index:1}

/* Hero with separate signature box */
.hero.signed .photo{left:36%;right:clamp(250px,24vw,330px);width:auto}
.hero.signed .photo img{object-position:center 20%}
.signbox{position:absolute;z-index:3;top:0;right:0;bottom:0;width:clamp(250px,24vw,330px);background:var(--navy);color:#fff;display:flex;flex-direction:column;justify-content:center;padding:40px 34px;border-left:3px solid var(--gold)}
.signbox .script{font:2.15rem/1.2 "Pinyon Script","Parisienne",cursive;color:var(--gold-lt)}
.signbox ul{list-style:none;margin:24px 0 0;padding:0;font-size:.7rem;font-weight:600;letter-spacing:.18em;text-transform:uppercase;line-height:2}
.signbox .name{margin-top:26px;font:clamp(2.5rem,3.2vw,3.1rem)/1.05 "Mrs Saint Delafield","Parisienne",cursive;color:#fff;transform:rotate(-4deg);transform-origin:left}
.signbox .flourish{display:block;width:88%;height:auto;margin:-2px 0 0 4px}
.signbox .sig{display:block;width:100%;max-width:270px;height:auto;margin-top:22px;transform:rotate(-3deg);transform-origin:left}
.signbox .vet{display:flex;align-items:center;gap:14px;margin-top:18px}
.signbox .vet img{width:58px;height:58px;flex:none;filter:drop-shadow(0 4px 10px rgba(0,0,0,.35))}
.signbox .vet .role{margin-top:0}
.signbox .role{margin-top:6px;font-size:.66rem;letter-spacing:.16em;text-transform:uppercase;color:rgba(255,255,255,.75);line-height:1.7}

/* Sections */
.sec{padding:72px 0}
.sec.cream{background:var(--cream)}
.sec.mist{background:var(--mist)}
.sec.tight{padding:56px 0}
.split{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,2fr);gap:56px;align-items:center}
.split.even{grid-template-columns:1fr 1fr}
.split.top{align-items:start}
.head-row{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:end;margin-bottom:40px}

/* Feature columns with dividers */
.cols{display:grid;grid-template-columns:repeat(var(--n,3),minmax(0,1fr))}
.cols>*{padding:0 22px;border-left:1px solid var(--rule)}
.cols>*:first-child{border-left:0;padding-left:0}
.cols.centered>*{text-align:center;padding:0 22px}
.cols.centered>*:first-child{padding-left:22px}
.feat .ico{width:74px;height:74px;border-radius:50%;background:var(--cream-2);display:grid;place-items:center;color:var(--gold);margin-bottom:16px}
.cols.centered .feat .ico,.cols.centered .ico{margin-left:auto;margin-right:auto}
.feat .ico svg{width:34px;height:34px}
.feat .ico.solid{background:var(--navy);color:var(--gold-lt)}
.feat .ico.solid.goldbg{background:var(--gold);color:#fff}
.feat .ico.solid.slatebg{background:var(--teal);color:#fff}
.feat h3{font-size:1.3rem}
.feat h4{margin:0;font:600 .78rem var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--navy)}
.feat p{margin-top:8px;font-size:.9rem;color:var(--muted)}
.feat ul{list-style:none;margin:10px 0 0;padding:0;font-size:.9rem;color:var(--muted);line-height:1.9}
.feat .bar{display:block;width:40px;height:2px;background:var(--gold);margin:16px auto 0}

/* Inline icon + text row */
.iconrow{display:grid;grid-template-columns:repeat(var(--n,4),minmax(0,1fr))}
.iconrow>div{display:flex;gap:16px;align-items:flex-start;padding:0 20px;border-left:1px solid var(--rule)}
.iconrow>div:first-child{border-left:0;padding-left:0}
.iconrow .ico{flex:none;width:78px;height:78px;border-radius:50%;display:grid;place-items:center;background:var(--navy);color:#fff}
.iconrow .ico.goldbg{background:var(--gold)}
.iconrow .ico svg{width:36px;height:36px}
.iconrow .ico.plain{width:44px;height:44px;background:none;color:var(--navy)}
.iconrow h3{font-size:1.15rem}
.iconrow p{margin-top:6px;font-size:.84rem;color:var(--muted)}

/* Big process circles */
.circles{display:grid;grid-template-columns:repeat(var(--n,3),minmax(0,1fr));gap:34px;position:relative}
.circle{position:relative;aspect-ratio:1;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:16px;color:#fff;background:var(--navy);text-decoration:none;box-shadow:0 0 0 4px #fff,0 0 0 5px var(--gold-lt),0 14px 28px rgba(11,33,67,.18);transition:transform .25s;min-width:0}
a.circle:hover{transform:translateY(-3px)}
.circle.gold{background:radial-gradient(circle at 35% 30%,#d9b86a,#b08433);color:var(--navy)}
.circle.teal{background:var(--teal)}
.circle .num{width:30px;height:30px;border-radius:50%;border:1px solid currentColor;display:grid;place-items:center;font-size:.72rem;font-weight:600}
.circle svg{width:30px;height:30px;margin:8px 0 4px}
.circle h3{font:600 .86rem/1.25 var(--sans);color:inherit}
.circle p{margin-top:6px;font-size:.7rem;line-height:1.35;opacity:.88}
.circles>.circle:not(:last-of-type):after{content:"";position:absolute;right:-24px;top:50%;width:11px;height:11px;border-top:1.5px solid var(--navy);border-right:1.5px solid var(--navy);transform:translateY(-50%) rotate(45deg)}
.flow-cap{display:flex;align-items:center;justify-content:center;gap:18px;margin-top:22px;font-size:.68rem;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--navy);flex-wrap:wrap}
.flow-cap i{display:block;width:60px;height:1px;background:var(--gold)}
.flow-cap b{font-weight:400;color:var(--gold)}

/* Numbered steps below circles */
.steps{display:grid;grid-template-columns:repeat(var(--n,4),minmax(0,1fr));gap:26px;text-align:center}
.step .dot{position:relative;width:118px;height:118px;margin:0 auto 16px;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--navy);color:#fff;box-shadow:0 0 0 3px #fff,0 0 0 4px var(--navy)}
.step .dot.gold{background:var(--gold);box-shadow:0 0 0 3px #fff,0 0 0 4px var(--gold)}
.step .dot.teal{background:var(--teal);box-shadow:0 0 0 3px #fff,0 0 0 4px var(--teal)}
.step .dot.lite{background:#7f9ab5;box-shadow:0 0 0 3px #fff,0 0 0 4px #7f9ab5}
.step .dot svg{width:38px;height:38px}
.step .dot .n{font-size:.8rem;font-weight:600;margin-bottom:4px}
.step .dot.small{width:84px;height:84px}
.step .dot.small svg{width:32px;height:32px}
.step .n-above{display:block;font-weight:600;font-size:.8rem;color:var(--navy);margin-bottom:8px}
.step h3{font-size:1.3rem}
.step h4{margin:0;font:600 .82rem var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--navy)}
.step p{margin-top:6px;font-size:.88rem;color:var(--muted)}
.steps.arrows .step{position:relative}
.steps.arrows .step:not(:last-child):after{content:"";position:absolute;top:58px;right:-26px;width:26px;height:1px;background:var(--navy)}
.steps.arrows.small .step:not(:last-child):after{top:42px}
.steps.arrows.long .step:not(:last-child):after{right:-40%;width:52%;left:auto;background:var(--gold)}

/* Photo cards */
.cards{display:grid;grid-template-columns:repeat(var(--n,4),minmax(0,1fr));gap:20px}
.card{background:#fff;box-shadow:0 12px 30px rgba(11,33,67,.08);display:flex;flex-direction:column;transition:transform .25s,box-shadow .25s}
.card:hover{transform:translateY(-3px);box-shadow:0 18px 40px rgba(11,33,67,.12)}
.card .pic{aspect-ratio:16/8;overflow:hidden;background:var(--navy-2)}
.card .pic img{width:100%;height:100%;object-fit:cover}
.card .txt{position:relative;padding:20px 20px 22px;flex:1;display:flex;flex-direction:column}
.card .badge{position:absolute;top:-26px;left:18px;width:50px;height:50px;border-radius:50%;background:var(--cream);border:3px solid #fff;display:grid;place-items:center;color:var(--gold)}
.card .badge svg{width:24px;height:24px}
.card .badge+h3{margin-top:14px}
.card h3{font-size:1.3rem}
.card p{margin-top:6px;font-size:.88rem;color:var(--muted);flex:1}
.card .more{margin-top:14px;align-self:flex-start;font-size:.64rem}

/* Checklist */
.checks{list-style:none;margin:0;padding:0 0 0 40px;border-left:1px solid var(--rule);display:grid;gap:22px}
.checks li{display:grid;grid-template-columns:38px 1fr;gap:16px;align-items:start}
.checks .tick{width:36px;height:36px;border-radius:50%;background:var(--gold);color:#fff;display:grid;place-items:center}
.checks .tick svg{width:18px;height:18px}
.checks h3{font-size:1.2rem}
.checks p{font-size:.88rem;color:var(--muted);margin-top:2px}

/* Diagram holders */
.diagram svg{width:100%;height:auto;display:block}

/* Meter */
.meter-panel{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center;background:#fff;box-shadow:0 22px 56px rgba(11,33,67,.08);padding:44px 52px;border-left:4px solid var(--gold)}
.meter-panel .note{display:block;margin-top:10px;font-size:.78rem;color:var(--muted)}

/* Credentials */
.creds{display:grid;grid-template-columns:repeat(var(--n,5),minmax(0,1fr));gap:22px}
.cred{text-align:center;font-size:.74rem;line-height:1.35;color:var(--muted)}
.cred .chip{width:88px;height:88px;border-radius:50%;background:#fff;box-shadow:0 8px 20px rgba(11,33,67,.08);display:grid;place-items:center;margin:0 auto 10px;padding:12px}
.cred .chip{overflow:hidden}
.cred .chip img{max-width:56px;max-height:56px;object-fit:contain;mix-blend-mode:multiply}

/* CTA band */
.cta{position:relative;background:var(--navy);color:#fff;overflow:hidden}
.cta .photo{position:absolute;top:0;right:0;bottom:0;width:66%}
.cta .photo img{width:100%;height:100%;object-fit:cover;-webkit-mask-image:linear-gradient(90deg,transparent 0%,#000 38%);mask-image:linear-gradient(90deg,transparent 0%,#000 38%)}
.cta .photo:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(11,33,67,.35),rgba(11,33,67,0) 60%)}
.cta .inner{position:relative;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:30px;padding:70px 0;min-height:300px}
.cta .copy{max-width:520px}
.cta h2{color:#fff;font-size:clamp(1.9rem,2.8vw,2.5rem)}
.cta h2 em{color:var(--gold-lt)}
.cta .label{color:#e8dfc9}
.cta p{margin-top:12px;color:rgba(255,255,255,.88)}
.cta .words{display:none;align-self:center;font-size:.7rem;font-weight:600;letter-spacing:.22em;text-transform:uppercase;line-height:2;border-left:1px solid var(--gold-lt);padding-left:20px;color:#fff;text-shadow:0 1px 8px rgba(0,0,0,.45)}
.cta .words:after{content:"";display:block;width:40px;height:2px;background:var(--gold-lt);margin-top:10px}
.cta.plain .rose{position:absolute;right:-60px;top:50%;width:360px;transform:translateY(-50%);opacity:.12}

/* Footer */
.footer{background:var(--navy);color:rgba(255,255,255,.78);font-size:.86rem}
.footer .top{display:grid;grid-template-columns:1.2fr 1fr 1fr 1fr;gap:40px;padding:52px 0 40px}
.footer .brandbox img{height:56px;width:auto;background:#fff;padding:6px 10px;border-radius:3px;margin-bottom:14px}
.footer h4{margin:0 0 12px;font:600 .68rem var(--sans);letter-spacing:.18em;text-transform:uppercase;color:var(--gold-lt)}
.footer a{display:block;padding:3px 0;text-decoration:none}
.footer a:hover{color:#fff}
.footer .bar{border-top:1px solid rgba(255,255,255,.12);padding:18px 0 calc(18px + env(safe-area-inset-bottom,0px))}
.footer .bar .wrap{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;font-size:.64rem;letter-spacing:.2em;text-transform:uppercase}
.footer .bar .mid{display:flex;gap:18px}
.footer .bar .mid span+span:before{content:"|";margin-right:18px;color:rgba(255,255,255,.35)}
.footer .legal{font-size:.74rem;letter-spacing:0;text-transform:none;color:rgba(255,255,255,.5)}

.tri{display:grid;grid-template-columns:1fr 1.2fr 1fr;gap:44px;align-items:center}
.tri.scan{grid-template-columns:1fr 1.25fr .8fr}
.scanmid{display:grid;grid-template-columns:1fr 1.5fr 1fr;align-items:center;gap:12px;border-left:1px solid var(--rule);border-right:1px solid var(--rule);padding:0 24px}
.tri .diagram{max-width:440px;margin:0 auto;width:100%}

/* Chips */
.chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}
.chip{border:1px solid var(--rule);padding:6px 12px;font-size:.68rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--navy);background:rgba(255,255,255,.75)}
.pill-list{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}
.pill-list span{padding:7px 14px;border-radius:999px;background:var(--cream-2);color:var(--navy);font-size:.8rem;font-weight:500}

/* People */
.founder-card{display:grid;grid-template-columns:220px 1fr;gap:44px;align-items:center;background:#fff;padding:36px 40px;box-shadow:0 16px 40px rgba(11,33,67,.08);border-left:4px solid var(--gold);margin-bottom:26px}
.founder-card .avatar{width:220px;height:220px}
.avatar{border-radius:50%;overflow:hidden;background:linear-gradient(150deg,var(--navy-2),var(--navy));box-shadow:0 0 0 4px #fff,0 0 0 5px var(--gold-lt);margin:0 auto}
.avatar img{width:100%;height:100%;object-fit:cover;object-position:50% 12%}
.founder-card .role,.pcard .role{font-size:.68rem;letter-spacing:.14em;text-transform:uppercase;color:var(--gold);font-weight:600;margin-top:6px}
.founder-card p{margin-top:12px;color:var(--muted)}
.people{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}
.pcard{background:#fff;box-shadow:0 12px 30px rgba(11,33,67,.08);padding:30px 22px 26px;text-align:center;display:flex;flex-direction:column}
.pcard .avatar{width:118px;height:118px;margin-bottom:18px}
.pcard h3{font-size:1.3rem}
.pcard p{margin-top:10px;font-size:.87rem;color:var(--muted);flex:1}
.li{display:inline-flex;align-items:center;gap:6px;margin-top:16px;font-size:.66rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--navy);text-decoration:none;border-bottom:1px solid var(--gold);padding-bottom:3px;align-self:center}
.founder-card .li{align-self:flex-start}

/* Note callout */
.note-band{display:flex;gap:18px;align-items:flex-start;margin-top:40px;padding:22px 26px;background:var(--cream);border-left:3px solid var(--gold)}
.note-band svg{flex:none;width:28px;height:28px;color:var(--gold)}
.note-band p{color:var(--muted);font-size:.92rem}
.note-band strong{display:block;color:var(--navy);font-size:1rem;margin-bottom:4px}

/* Duo blocks */
.duo{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.duo>div{background:#fff;padding:26px 28px;box-shadow:0 10px 28px rgba(11,33,67,.07);border-top:3px solid var(--gold)}
.duo h3{font-size:1.3rem}
.duo p{margin-top:6px;color:var(--muted);font-size:.92rem}

/* Media split image */
.media{position:relative;background:var(--cream-2);box-shadow:0 18px 44px rgba(11,33,67,.1)}
.media img{width:100%;height:auto}
.media.frame:before{content:"";position:absolute;inset:14px -14px -14px 14px;border:1px solid var(--gold-lt);z-index:-1}
.quote-line{margin-top:22px;padding:16px 20px;background:var(--cream);border-left:3px solid var(--gold);font-family:var(--serif);font-size:1.25rem;color:var(--navy);line-height:1.35}

/* Program / academy */
.prog{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.prog>article{background:#fff;box-shadow:0 14px 34px rgba(11,33,67,.08);padding:34px 36px;position:relative}
.prog>article:before{content:"";position:absolute;left:0;top:0;right:0;height:4px;background:var(--navy)}
.prog>article:last-child:before{background:var(--gold)}
.prog h3{font-size:1.6rem;margin-top:4px}
.prog p{margin-top:10px;color:var(--muted);font-size:.93rem}
.modules{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:20px}
.modules span{display:flex;gap:10px;align-items:center;font-size:.86rem;color:var(--navy);font-weight:500}
.modules span:before{content:"";flex:none;width:8px;height:8px;border-radius:50%;background:var(--gold)}
.years{display:grid;grid-template-columns:repeat(3,1fr);margin-top:22px;position:relative}
.years:before{content:"";position:absolute;left:12%;right:12%;top:22px;height:2px;background:linear-gradient(90deg,var(--navy),var(--gold))}
.years div{text-align:center;position:relative}
.years b{display:grid;place-items:center;width:44px;height:44px;margin:0 auto 10px;border-radius:50%;background:var(--navy);color:#fff;font-size:.8rem;box-shadow:0 0 0 4px #fff}
.years div:nth-child(2) b{background:var(--teal)}.years div:nth-child(3) b{background:var(--gold)}
.years span{font-size:.84rem;color:var(--navy);font-weight:500;line-height:1.35;display:block}

/* Gantt */
.gantt{display:grid;grid-template-columns:minmax(150px,210px) repeat(6,minmax(0,1fr));row-gap:12px;align-items:center;background:#fff;padding:28px 30px;box-shadow:0 14px 34px rgba(11,33,67,.07);margin-top:34px}
.gantt .wk{font-size:.64rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;text-align:center;color:var(--muted);border-bottom:1px solid var(--line);padding-bottom:8px}
.gantt .ph{font-weight:600;color:var(--navy);font-size:.86rem;padding-right:14px}
.gantt .bar{height:14px;border-radius:7px;background:var(--navy);margin:0 3px}
.gantt .bar.gold{background:var(--gold)}.gantt .bar.teal{background:var(--teal)}.gantt .bar.lite{background:#7f9ab5}
.gantt .ms{justify-self:center;width:16px;height:16px;background:var(--gold);transform:rotate(45deg)}
.gantt-note{margin-top:12px;font-size:.8rem;color:var(--muted)}

/* Journey phases */
.journey{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin-top:10px}
.phase{background:#fff;padding:26px 26px 24px;box-shadow:0 10px 28px rgba(11,33,67,.07);position:relative}
.phase .top{display:flex;align-items:center;gap:14px;margin-bottom:14px}
.phase .num{width:50px;height:50px;border-radius:50%;display:grid;place-items:center;background:var(--navy);color:#fff;flex:none}
.phase .num svg{width:24px;height:24px}
.phase.gold .num{background:var(--gold)}.phase.teal .num{background:var(--teal)}
.phase .when{font-size:.64rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--gold)}
.phase h3{font-size:1.35rem}
.phase p{font-size:.88rem;color:var(--muted)}
.phase ul{margin:12px 0 0;padding:0;list-style:none;font-size:.84rem;color:var(--ink);display:grid;gap:6px}
.phase ul li{padding-left:16px;position:relative}
.phase ul li:before{content:"";position:absolute;left:0;top:.6em;width:6px;height:6px;border-radius:50%;background:var(--gold)}
.phase .out{margin-top:14px;padding-top:12px;border-top:1px solid var(--line);font-size:.8rem;color:var(--navy)}
.phase .out b{color:var(--gold);font-weight:600;letter-spacing:.08em;text-transform:uppercase;font-size:.66rem;display:block;margin-bottom:2px}

/* Tiers */
.tiers{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.tier{background:#fff;padding:30px 28px;box-shadow:0 10px 28px rgba(11,33,67,.07);border-top:3px solid var(--navy)}
.tier:nth-child(2){border-top-color:var(--teal)}.tier:nth-child(3){border-top-color:var(--gold)}
.tier svg.ball{width:44px;height:44px;margin-bottom:14px}
.tier .label{margin-bottom:4px}
.tier h3{font-size:1.35rem}
.tier p{margin-top:8px;font-size:.88rem;color:var(--muted)}

/* Path */
.path-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-top:30px}
.path-row a,.path-row div{display:block;text-decoration:none;padding:20px 20px;border:1px solid var(--line);background:#fff;position:relative}
.path-row .here{background:var(--navy);color:#fff;border-color:var(--navy)}
.path-row .here h3{color:#fff}
.path-row h3{font-size:1.15rem}
.path-row small{display:block;font-size:.64rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--gold);margin-bottom:6px}
.path-row p{font-size:.82rem;margin-top:6px;color:var(--muted)}
.path-row .here p{color:rgba(255,255,255,.8)}

/* Snapshot */
.snaphero{background:linear-gradient(90deg,#fbf8f2,#f4ede0);padding:64px 0}
.dimgrid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:18px}
.dim{text-align:center}
.dim .ring{width:96px;height:96px;margin:0 auto 14px;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--navy);color:#fff;box-shadow:0 0 0 3px #fff,0 0 0 4px var(--gold-lt)}
.dim:nth-child(even) .ring{background:var(--gold)}
.dim .ring svg{width:30px;height:30px}
.dim .ring small{font-size:.66rem;font-weight:600;margin-bottom:2px}
.dim h3{font-size:1.15rem}
.dim p{font-size:.82rem;color:var(--muted);margin-top:4px}
.form-card{background:#fff;padding:34px 38px;box-shadow:0 14px 34px rgba(11,33,67,.08);margin-bottom:22px}
.form-card h3{font-size:1.45rem}
.fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:20px}
.fields label{display:block;font-size:.74rem;font-weight:600;letter-spacing:.06em;color:var(--navy)}
.fields select,.fields input{margin-top:6px;width:100%;font:inherit;font-size:.9rem;padding:11px 12px;border:1px solid rgba(11,33,67,.25);background:#fff;color:var(--ink);border-radius:0}
.ai-note{display:flex;gap:14px;margin-top:22px;padding:16px 18px;background:var(--mist);font-size:.88rem;color:var(--ink)}
.ai-note svg{flex:none;width:24px;height:24px;color:var(--navy)}
.dimblock{background:#fff;padding:30px 38px 14px;box-shadow:0 14px 34px rgba(11,33,67,.08);margin-bottom:20px}
.dimhead{display:flex;gap:18px;align-items:center;padding-bottom:14px}
.dimhead .ic{width:56px;height:56px;border-radius:50%;background:var(--navy);color:var(--gold-lt);display:grid;place-items:center;flex:none}
.dimhead .ic svg{width:26px;height:26px}
.dimhead small{font-size:.66rem;font-weight:700;letter-spacing:.16em;color:var(--gold)}
.dimhead h3{font-size:1.45rem}
.dimhead p{font-size:.88rem;color:var(--muted)}
.q{display:grid;grid-template-columns:1fr auto;gap:26px;align-items:center;padding:16px 0;border-top:1px solid var(--line)}
.q p{font-size:.93rem;color:var(--ink)}
.q.ai p:before{content:"AI";display:inline-block;margin-right:8px;padding:1px 6px;font-size:.62rem;font-weight:700;letter-spacing:.08em;background:var(--mist);color:var(--navy);vertical-align:2px}
.q.missing p{color:#9b2c2c}
.scale{display:flex;gap:6px;border:0;margin:0;padding:0}
.scale label{cursor:pointer;position:relative}
.scale input{position:absolute;opacity:0;width:1px;height:1px}
.scale span{display:grid;place-items:center;min-width:40px;height:40px;padding:0 8px;border:1px solid rgba(11,33,67,.2);background:#fff;font-weight:600;font-size:.85rem;color:var(--navy);transition:background .15s}
.scale label:hover span{border-color:var(--gold)}
.scale input:checked+span{background:var(--navy);color:#fff;border-color:var(--navy)}
.scale input:focus-visible+span{outline:2px solid var(--gold);outline-offset:2px}
.scale .na span{font-size:.7rem;letter-spacing:.06em}
.scale-key{font-size:.78rem;color:var(--muted)}
.calc-row{display:flex;flex-wrap:wrap;align-items:center;gap:18px;margin-top:10px}
.form-error{color:#9b2c2c;font-size:.88rem}
.results{display:none;margin-top:30px}
.results.show{display:block}
.res-top{display:grid;grid-template-columns:1fr 1fr;gap:44px;align-items:center;background:#fff;padding:38px 44px;box-shadow:0 22px 56px rgba(11,33,67,.1);border-left:4px solid var(--gold)}
.res-score{font-family:var(--serif);font-size:3rem;font-weight:600;color:var(--navy);line-height:1}
.res-score small{font-size:1.2rem;color:var(--muted)}
.res-band{margin-top:6px;font:600 .74rem var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--gold)}
.dbars{display:grid;gap:12px;margin-top:22px}
.dbar{display:grid;grid-template-columns:190px 1fr 40px;gap:12px;align-items:center;font-size:.84rem;color:var(--navy)}
.dbar .track{height:10px;background:var(--cream-2);border-radius:5px;overflow:hidden}
.dbar .fill{display:block;height:100%;background:var(--navy);border-radius:5px;transition:width 1s ease}
.dbar.low .fill{background:var(--gold)}
.dbar b{text-align:right;font-weight:600}
.res-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:22px;margin-top:22px}
.res-grid>div{background:#fff;padding:26px 28px;box-shadow:0 10px 28px rgba(11,33,67,.07)}
.res-grid>div.next{background:var(--navy);color:#fff}
.res-grid>div.next h3{color:#fff}
.res-grid>div.next p{color:rgba(255,255,255,.85)}
.res-grid small{display:block;font-size:.64rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--gold);margin-bottom:8px}
.res-grid h3{font-size:1.3rem}
.res-grid p{margin-top:8px;font-size:.9rem;color:var(--muted)}
.res-grid .btn{margin-top:18px}
.res-foot{margin-top:18px;font-size:.8rem;color:var(--muted)}
@media (max-width:1060px){
  .founder-card{grid-template-columns:1fr;text-align:center;gap:24px}
  .founder-card .li{align-self:center}
  .people,.dimgrid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .duo,.prog,.res-top,.res-grid,.journey,.tiers{grid-template-columns:1fr}
  .path-row{grid-template-columns:1fr 1fr}
  .fields{grid-template-columns:1fr}
  .gantt{grid-template-columns:110px repeat(6,minmax(0,1fr));padding:20px 16px}
  .gantt .ph{font-size:.74rem}
}
@media (max-width:600px){
  .people,.path-row,.modules{grid-template-columns:1fr}
  .dimgrid{grid-template-columns:1fr 1fr}
  .q{grid-template-columns:1fr;gap:10px}
  .dimblock,.form-card{padding:24px 20px 10px}
  .dbar{grid-template-columns:1fr 40px}.dbar .track{grid-column:1/-1;order:3}
  .gantt .wk{font-size:.54rem;letter-spacing:.04em}
}

/* Offering matrix */
.gantt.matrix{grid-template-columns:minmax(200px,280px) repeat(5,minmax(0,1fr));row-gap:14px}
.gantt.matrix .ph{text-decoration:none;display:block;line-height:1.3}
.gantt.matrix .ph small{display:block;font-weight:400;font-size:.74rem;color:var(--muted)}
.gantt.matrix a.ph:hover{color:var(--gold)}
.gantt.matrix .bar{height:16px;border-radius:8px}
@media (max-width:1060px){.gantt.matrix{grid-template-columns:130px repeat(5,minmax(0,1fr))}.gantt.matrix .ph small{display:none}}
/* Leadership extras */
.cap-in{padding:12px 16px 14px;font-size:.82rem;color:var(--muted);background:#fff}
.behave{background:var(--navy);color:#fff;position:relative;overflow:hidden}
.behave h2{color:#fff}.behave h2 em{color:var(--gold-lt)}
.behave .lede{color:rgba(255,255,255,.85)}
.mapfig img{width:100%;height:auto;border-radius:6px;box-shadow:0 24px 60px rgba(0,0,0,.35)}
.needs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-top:44px}
.needs>div{display:flex;gap:14px;align-items:flex-start;padding:22px 20px;border:1px solid rgba(217,184,106,.55);border-radius:8px}
.needs svg{flex:none;width:44px;height:44px;padding:9px;border:1.5px solid var(--gold-lt);border-radius:50%;color:var(--gold-lt)}
.needs h3{color:var(--gold-lt);font-size:1.45rem}
.needs p{margin-top:4px;font-size:.88rem;color:rgba(255,255,255,.85)}
.starting{margin-top:36px;text-align:center;font-family:var(--serif);font-size:clamp(1.6rem,2.4vw,2.1rem);font-weight:600;color:var(--gold-lt)}
.starting em{font-style:italic}
.quote-card{background:#fff;box-shadow:0 16px 40px rgba(11,33,67,.08);padding:38px 36px 30px;border-top:3px solid var(--gold);position:relative}
.quote-card .qmark{position:absolute;top:-8px;left:28px;font-family:var(--serif);font-size:5rem;line-height:1;color:var(--gold)}
.quote-card>p{font-family:var(--serif);font-size:1.5rem;line-height:1.35;color:var(--navy);margin-top:18px}
@media (max-width:1060px){.needs{grid-template-columns:1fr 1fr}}
@media (max-width:600px){.needs{grid-template-columns:1fr}}
.glance .big{font-family:var(--serif);font-size:3.2rem;font-weight:600;line-height:1;color:var(--gold);margin-bottom:14px;display:flex;align-items:baseline;gap:8px;min-height:52px}
.glance .big small{font-family:var(--sans);font-size:.72rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.glance .big svg{width:46px;height:46px;color:var(--gold)}
/* Stats band */
.stats{background:var(--navy);color:#fff;padding:40px 0 44px}
.stat-row{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));margin-top:6px}
.stat-row div{padding:4px 22px;border-left:1px solid rgba(217,184,106,.35)}
.stat-row div:first-child{border-left:0;padding-left:0}
.stat-row strong{display:block;font:600 2.1rem/1.1 var(--serif);color:var(--gold-lt)}
.stat-row span{display:block;margin-top:6px;font-size:.8rem;color:rgba(255,255,255,.8);line-height:1.4}
@media (max-width:1060px){.stat-row{grid-template-columns:repeat(3,1fr);row-gap:22px}.stat-row div:nth-child(4){border-left:0;padding-left:0}}
@media (max-width:600px){.stat-row{grid-template-columns:1fr 1fr}.stat-row div{border-left:0;padding-left:0}}
/* Footer certifications */
.fcreds{border-top:1px solid rgba(255,255,255,.12);padding:22px 0}
.fcreds .wrap{display:flex;align-items:center;gap:24px;flex-wrap:wrap}
.fc-label{font-size:.64rem;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--gold-lt)}
.fc-row{display:flex;flex-wrap:wrap;gap:12px}
.fchip{width:52px;height:52px;border-radius:50%;background:#fff;display:grid;place-items:center;overflow:hidden;padding:6px}
.fchip img{max-width:38px;max-height:38px;object-fit:contain;mix-blend-mode:multiply}
/* Snapshot modes + robust results */
#snapwrap .set-r{display:none}
#snapwrap.mode-r .set-r{display:block}
#snapwrap.mode-r .dimgrid.set-r,#snapwrap .dimgrid.set-c{display:grid}
#snapwrap.mode-r .dimgrid.set-c,#snapwrap.mode-r .set-c{display:none}
#snapwrap.mode-r .ai-note.set-r{display:flex}
.ai-note.set-r{background:var(--cream-2)}
.tg{font-style:normal;font-size:.6rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;padding:2px 6px;margin-left:6px;vertical-align:1px}
.tg-strength{background:#e6efe9;color:#2f6b4a}.tg-watch{background:#f5ecd9;color:#8a6a24}.tg-priority{background:#f6e3e0;color:#9b2c2c}
.dbar{grid-template-columns:260px 1fr 40px}
.ai-score{margin-top:16px;font-size:.84rem;color:var(--muted)}
.res-insight{display:grid;grid-template-columns:1fr 1.3fr;gap:22px;margin-top:22px}
.res-insight>div{background:#fff;padding:26px 28px;box-shadow:0 10px 28px rgba(11,33,67,.07)}
.res-insight small,.res-grid small{display:block;font-size:.64rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--gold);margin-bottom:8px}
.res-insight h3{font-size:1.2rem;margin-top:10px;display:flex;justify-content:space-between}
.res-insight h3 span{color:var(--gold)}
.res-insight p{font-size:.9rem;color:var(--muted);margin-top:4px}
.res-grid .risk{font-size:.86rem;color:var(--ink);margin-top:8px}
.res-grid ol{margin:12px 0 0;padding-left:18px;font-size:.86rem;color:var(--muted);display:grid;gap:8px}
.send-card{display:grid;grid-template-columns:1fr 1.2fr;gap:36px;align-items:start;background:#fff;padding:32px 36px;box-shadow:0 14px 34px rgba(11,33,67,.08);margin-top:22px;border-top:3px solid var(--gold)}
.send-card h3{font-size:1.45rem;margin-top:6px}
.send-card .muted{font-size:.9rem;margin-top:8px}
.send-fields{grid-template-columns:1fr 1fr;margin-top:0}
.send-card .calc-row{grid-column:1/-1}
#s-msg{color:var(--navy)}
#s-msg a{color:var(--gold)}
@media (max-width:1060px){.res-insight,.send-card,.send-fields{grid-template-columns:1fr}.dbar{grid-template-columns:1fr 40px}.dbar .track{grid-column:1/-1;order:3}}
/* Topics, kit, faq, quote band */
.topics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.topic{display:flex;gap:16px;align-items:flex-start;background:#fff;padding:24px 22px;box-shadow:0 10px 28px rgba(11,33,67,.07);border-left:3px solid var(--gold)}
.topic .ti{flex:none;width:52px;height:52px;border-radius:50%;background:var(--navy);color:var(--gold-lt);display:grid;place-items:center}
.topic .ti svg{width:26px;height:26px}
.topic h3{font-size:1.25rem}
.topic p{margin-top:4px;font-size:.88rem;color:var(--muted)}
.quote-band{background:var(--navy);padding:44px 0;text-align:center}
.quote-band p{font-family:var(--serif);font-size:clamp(1.4rem,2.2vw,1.9rem);line-height:1.35;color:#fff;max-width:900px;margin:0 auto}
.quote-band em{color:var(--gold-lt)}
.kit img{width:100%;height:auto;filter:drop-shadow(0 24px 40px rgba(11,33,67,.18))}
.kit-items{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:22px}
.kit-items>div{display:flex;gap:12px;align-items:flex-start}
.kit-items svg{flex:none;width:40px;height:40px;padding:8px;border-radius:50%;background:#fff;color:var(--gold)}
.kit-items h3{font-size:1.15rem}
.kit-items p{font-size:.84rem;color:var(--muted);margin-top:2px}
.faq details{border-top:1px solid var(--line);padding:18px 0}
.faq details:last-child{border-bottom:1px solid var(--line)}
.faq summary{cursor:pointer;font-family:var(--serif);font-size:1.2rem;font-weight:600;color:var(--navy);list-style:none;display:flex;justify-content:space-between;gap:20px}
.faq summary::-webkit-details-marker{display:none}
.faq summary:after{content:"+";color:var(--gold);font-family:var(--sans);font-size:1.3rem;line-height:1}
.faq details[open] summary:after{content:"−"}
.faq details p{margin-top:10px;font-size:.92rem;color:var(--muted)}
@media (max-width:1060px){.topics{grid-template-columns:1fr 1fr}}
@media (max-width:600px){.topics,.kit-items{grid-template-columns:1fr}}
.industries{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:18px}
.industries>div{background:#fff;padding:26px 22px;box-shadow:0 10px 28px rgba(11,33,67,.07);border-top:3px solid var(--gold)}
.industries>div:nth-child(even){border-top-color:var(--navy)}
.industries svg{width:40px;height:40px;padding:8px;border-radius:50%;background:var(--cream-2);color:var(--gold);margin-bottom:12px}
.industries h3{font-size:1.2rem}
.industries p{margin-top:6px;font-size:.84rem;color:var(--muted)}
@media (max-width:1060px){.industries{grid-template-columns:1fr 1fr}}
@media (max-width:600px){.industries{grid-template-columns:1fr}}
/* Leadership stairs */
.stairs-wrap{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,2fr);gap:48px;align-items:end}
.stairs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;align-items:end;position:relative;padding-top:10px}
.stairs:before{content:"";position:absolute;left:4%;right:4%;bottom:-18px;height:2px;background:linear-gradient(90deg,var(--navy),var(--teal),var(--gold))}
.stair{display:flex;flex-direction:column;text-decoration:none;background:#fff;padding:26px 24px 22px;box-shadow:0 14px 34px rgba(11,33,67,.09);position:relative;transition:transform .25s}
.stair:hover{transform:translateY(-4px)}
.stair.s1{min-height:280px;border-top:4px solid var(--navy)}
.stair.s2{min-height:345px;border-top:4px solid var(--teal)}
.stair.s3{min-height:410px;border-top:4px solid var(--gold);background:var(--navy)}
.stair .dur{font-family:var(--serif);font-size:2rem;font-weight:600;line-height:1;color:var(--navy)}
.stair.s2 .dur{color:var(--teal)}
.stair.s3 .dur{color:var(--gold-lt)}
.stair small{display:block;margin-top:10px;font-size:.62rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--gold)}
.stair h3{font-size:1.3rem;margin-top:4px}
.stair p{margin-top:8px;font-size:.86rem;color:var(--muted);flex:1}
.stair.s3 h3{color:#fff}.stair.s3 p{color:rgba(255,255,255,.82)}
.stair .go{display:inline-flex;align-items:center;gap:8px;margin-top:14px;font-size:.64rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--navy)}
.stair.s3 .go{color:var(--gold-lt)}
.stair .go svg{width:16px;height:10px}
.stair:after{content:"";position:absolute;bottom:-24px;left:50%;width:12px;height:12px;margin-left:-6px;border-radius:50%;background:var(--gold);box-shadow:0 0 0 3px var(--cream)}
@media (max-width:1060px){.stairs-wrap{grid-template-columns:1fr}.stairs{grid-template-columns:1fr}.stair.s1,.stair.s2,.stair.s3{min-height:0}.stairs:before,.stair:after{display:none}}
/* Fractional page */
.compare{background:#fff;box-shadow:0 14px 34px rgba(11,33,67,.08);font-size:.86rem}
.c-row{display:grid;grid-template-columns:1fr 1fr 1fr 1.1fr;border-top:1px solid var(--line)}
.c-row span{padding:13px 14px;color:var(--muted)}
.c-row span:first-child{font-weight:600;color:var(--navy)}
.c-row .us{background:var(--navy);color:#fff;font-weight:600}
.c-head{border-top:0}
.c-head span{font-size:.64rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--navy);padding-top:16px}
.c-head .us{color:var(--gold-lt)}
.cols.resp{row-gap:40px}
.cols.resp>*:nth-child(5){border-left:0;padding-left:0}
.rhythm{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;position:relative}
.rhythm>div{background:#fff;padding:24px 22px;box-shadow:0 10px 28px rgba(11,33,67,.07);border-top:3px solid var(--navy)}
.rhythm>div:nth-child(even){border-top-color:var(--gold)}
.rhythm span{font-size:.64rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--gold)}
.rhythm h3{font-size:1.2rem;margin-top:6px}
.rhythm p{margin-top:6px;font-size:.86rem;color:var(--muted)}
@media (max-width:1060px){.rhythm{grid-template-columns:1fr 1fr}.compare{font-size:.78rem}.c-row span{padding:10px 8px}}
@media (max-width:600px){.rhythm{grid-template-columns:1fr}}
.tier-ic{display:grid;place-items:center;width:52px;height:52px;border-radius:50%;background:var(--navy);color:var(--gold-lt);margin-bottom:14px}
.tier-ic svg{width:26px;height:26px}
.behave-full{background:#00102a;line-height:0}
.behave-full figure{max-width:1488px;margin:0 auto}
.behave-full img{display:block;width:100%;height:auto;-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 2%,#000 98%,transparent 100%);mask-image:linear-gradient(90deg,transparent 0,#000 2%,#000 98%,transparent 100%)}
@media (max-width:1488px){.behave-full img{-webkit-mask-image:none;mask-image:none}}
/* Trusted strip */
.trusted-strip{background:var(--cream);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:34px 0}
.trusted-strip .wrap{display:grid;grid-template-columns:220px 1fr;gap:36px;align-items:center}
.trusted-strip .t-sub{margin-top:8px;font-size:.84rem;color:var(--muted)}
.trusted-strip .logos{width:100%;max-width:860px;height:auto;margin-left:auto;mix-blend-mode:multiply}
.marks[hidden]{display:none}
.marks{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px 0}
.marks li{font-family:var(--serif);font-size:1.12rem;font-weight:600;color:var(--navy);padding:0 14px;border-left:1px solid var(--rule);letter-spacing:.01em;white-space:nowrap}
.marks li:first-child{border-left:0;padding-left:0}
.marks li:nth-child(even){color:var(--navy-2)}
@media (max-width:600px){.marks{justify-content:flex-start}.marks li{font-size:1.1rem;padding:0 12px}}
@media (max-width:1060px){.trusted-strip .wrap{grid-template-columns:1fr;gap:18px}}
/* Responsive */
@media (max-width:1060px){
  .toggle{display:block}
  .menu{display:none;position:absolute;top:80px;left:0;right:0;flex-direction:column;align-items:stretch;gap:0;background:#fff;border-bottom:1px solid var(--line);padding:10px 24px 22px;box-shadow:0 20px 40px rgba(11,33,67,.12)}
  .menu.open{display:flex}
  .menu>a,.drop>button{text-align:left;width:100%;padding:12px 0}
  .drop-panel{position:static;opacity:1;visibility:visible;transform:none;box-shadow:none;border:0;padding:0 0 6px 12px;min-width:0}
  .menu .btn-gold{margin:10px 0 0}
  .hero .photo{position:relative;width:100%;height:340px}
  .hero .photo img{-webkit-mask-image:linear-gradient(180deg,transparent 0%,#000 22%);mask-image:linear-gradient(180deg,transparent 0%,#000 22%)}
  .hero{display:flex;flex-direction:column-reverse}
  .hero .copy{min-height:0;padding:44px 0 36px;max-width:none}
  .hero.signed .photo{left:auto;right:auto;width:100%}
  .signbox{position:relative;width:100%;border-left:0;border-top:3px solid var(--gold);padding:34px 24px}
  .split,.split.even,.head-row,.tri,.tri.scan{grid-template-columns:1fr;gap:36px}
  .scanmid{border:0;padding:0}
  .split>div[style*="border-right"]{border-right:0!important;padding-right:0!important}
  .cols,.iconrow{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:34px}
  .cols>*:nth-child(odd),.iconrow>div:nth-child(odd){border-left:0;padding-left:0}
  .cols.centered>*{padding:0 12px}
  .circles{--n:2!important;max-width:520px}
  .circles>.circle:nth-of-type(2n):after{display:none}
  .steps{grid-template-columns:repeat(2,minmax(0,1fr))!important;row-gap:34px}
  .steps.arrows .step:after{display:none}
  .cards{grid-template-columns:repeat(2,minmax(0,1fr))}
  .meter-panel{grid-template-columns:1fr;padding:34px 26px}
  .creds{grid-template-columns:repeat(3,minmax(0,1fr))}
  .checks{padding-left:0;border-left:0}
  .cta .photo{width:100%;opacity:.55}
  .cta .words{display:none}
  .footer .top{grid-template-columns:1fr 1fr}
}
@media (max-width:600px){
  .wrap{width:calc(100% - 32px)}
  .nav{height:70px}.menu{top:70px}.brand img{height:52px}
  .sec{padding:54px 0}
  .cols,.iconrow,.cards{grid-template-columns:1fr}
  .cols>*,.iconrow>div{border-left:0;padding-left:0}
  .circle p{display:none}
  .footer .top{grid-template-columns:1fr}
  .footer .bar .mid{display:none}
}
@media (prefers-reduced-motion:reduce){*{transition:none!important}html{scroll-behavior:auto}}
.hero.signed.dark .photo img{object-position:60% 40%}
.hero .photo img[src$="leadership-hero-real.jpg"]{object-position:100% 35%}

/* Change Partners hero: keep the photo near its natural size so it stays crisp */
.hero .photo img[src$="partners-team.jpg"]{object-position:55% 45%}
.hero:has(img[src$="partners-team.jpg"]) .photo{width:min(58%,820px)}
.hero:has(img[src$="partners-team.jpg"]) .copy{min-height:460px}
@media (max-width:1060px){.hero:has(img[src$="partners-team.jpg"]) .photo{width:100%;height:320px}}


/* =========================================================
   Mobile navigation + responsive hardening — Sept 2026
   ========================================================= */

/* Prevent long copy, grid children, and flex children from forcing page-wide overflow. */
.wrap > *, .split > *, .tri > *, .head-row > *, .meter-panel > *, .footer .top > *,
.cols > *, .iconrow > *, .cards > *, .people > *, .prog > *, .journey > *, .tiers > *,
.res-top > *, .res-grid > *, .res-insight > *, .send-card > *, .stairs-wrap > *{min-width:0}
h1,h2,h3,p,.footer a,.wd{overflow-wrap:break-word}
img,svg,video{max-width:100%}

/* Current homepage assurance journey */
.navpath{position:relative;min-height:320px;width:100%}
.navpath>svg{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.wp{position:absolute;display:flex;align-items:flex-start;gap:14px;width:31%;text-decoration:none;color:var(--ink);z-index:2}
.wp.w0{left:0;bottom:12px}.wp.w1{left:34.5%;top:108px}.wp.w2{right:0;top:0}
.wp .dot{flex:none;width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:var(--navy);color:#fff;border:3px solid var(--paper);box-shadow:0 0 0 1px var(--gold);font-size:.68rem;font-weight:700;letter-spacing:.08em}
.wp.w1 .dot{background:var(--gold)}
.wp .wt{display:block;min-width:0}
.wp .wt small{display:block;font-size:.62rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--gold);margin-bottom:3px}
.wp .wt h3{font-size:1.15rem;line-height:1.12}
.wp .wd{display:block;margin-top:5px;font-size:.78rem;line-height:1.45;color:var(--muted)}
.wp:hover .wt h3{color:var(--gold)}

@media (max-width:1060px){
  body.menu-open{overflow:hidden;touch-action:none}
  .site-header{backdrop-filter:blur(12px)}
  .menu{
    top:80px;
    max-height:calc(100vh - 80px);
    max-height:calc(100dvh - 80px);
    overflow-y:auto;
    overscroll-behavior:contain;
    -webkit-overflow-scrolling:touch;
    padding-bottom:calc(22px + env(safe-area-inset-bottom,0px));
  }
  .menu>a,.drop>button{min-height:48px;display:flex;align-items:center;justify-content:space-between}
  .drop>button:after{transition:transform .18s ease}
  .drop-panel{display:none;position:static;opacity:1;visibility:visible;transform:none;box-shadow:none;border:0;border-left:1px solid var(--rule);padding:2px 0 8px 14px;margin:0 0 4px 2px;min-width:0}
  .drop.open>.drop-panel{display:block}
  .drop.open>button:after{transform:rotate(225deg) translate(-1px,-1px)}
  .drop-panel a{min-height:44px;display:flex;align-items:center;padding:9px 10px;line-height:1.35}
  .menu .btn-gold{width:100%;justify-content:center;margin-top:12px}

  /* Turn the homepage journey into easy-to-tap stacked cards instead of a compressed path. */
  .navpath{display:grid;gap:14px;min-height:0}
  .navpath>svg{display:none}
  .wp,.wp.w0,.wp.w1,.wp.w2{position:static;width:100%;background:#fff;border:1px solid var(--line);border-left:3px solid var(--gold);padding:18px 18px;box-shadow:0 8px 22px rgba(11,33,67,.06)}

  /* Timelines and comparison matrices should scroll inside themselves rather than break the page. */
  .gantt{overflow-x:auto;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;grid-template-columns:120px repeat(6,88px);padding:20px 16px}
  .gantt.matrix{grid-template-columns:150px repeat(5,88px)}
  .gantt:after{content:"Swipe sideways to view the full timeline";grid-column:1/-1;font-size:.7rem;color:var(--muted);font-style:italic;margin-top:4px}
  .compare{overflow-x:auto;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch}
  .compare .c-row{min-width:690px}
}

@media (max-width:600px){
  body{font-size:15.5px;line-height:1.6}
  .wrap{width:calc(100% - 32px)}
  h1{font-size:clamp(2.15rem,11vw,2.8rem)}
  h2{font-size:clamp(1.7rem,8vw,2.15rem)}
  h3{line-height:1.18}

  .nav{height:72px;gap:14px}
  .menu{top:72px;max-height:calc(100vh - 72px);max-height:calc(100dvh - 72px);padding-left:16px;padding-right:16px}
  .brand img{height:52px;max-width:240px}
  .toggle{flex:none}

  .hero .photo{height:290px}
  .hero .copy{padding:36px 0 32px}
  .hero .copy .lede{font-size:.96rem}
  .hero .rose{display:none}
  .signbox{padding:28px 20px}
  .signbox .script{font-size:1.9rem}
  .signbox ul{margin-top:18px;line-height:1.85}
  .signbox .sig{max-width:220px;margin-top:18px}
  .signbox .vet{margin-top:14px}

  .sec{padding:48px 0}
  .sec.tight{padding:42px 0}
  .split,.split.even,.head-row,.tri,.tri.scan{gap:30px}
  .rule-left{padding-left:16px}

  .btn-row{gap:10px;margin-top:22px}
  .btn-row .btn{width:100%;padding-left:16px;padding-right:16px;text-align:center}
  .more{line-height:1.4}

  .circles{grid-template-columns:1fr!important;max-width:300px;margin-left:auto;margin-right:auto;gap:24px}
  .circles>.circle:after{display:none!important}
  .circle p{display:block}
  .steps{grid-template-columns:1fr!important;gap:28px}
  .steps.arrows .step:after{display:none!important}
  .cards,.cols,.iconrow{gap:24px}
  .creds{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}

  .meter-panel{padding:26px 18px;gap:28px}
  .meter-panel .diagram{overflow:hidden}
  .meter-panel svg{width:100%;height:auto}

  .founder-card{padding:28px 20px;gap:20px}
  .founder-card .avatar{width:180px;height:180px}
  .pcard{padding:26px 18px 22px}
  .prog>article,.tier,.phase,.duo>div,.quote-card{padding:26px 20px}
  .media.frame:before{display:none}
  .note-band{padding:18px 16px;gap:12px}
  .note-band svg{width:24px;height:24px}
  .quote-line{font-size:1.12rem;padding:14px 16px}

  .dimblock,.form-card{padding:24px 18px 12px}
  .dimhead{align-items:flex-start;gap:14px}
  .dimhead .ic{width:48px;height:48px}
  .q{gap:12px}
  .scale{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:5px;width:100%}
  .scale label,.scale span{width:100%;min-width:0}
  .scale span{height:42px;padding:0 2px}
  .res-top{padding:26px 20px;gap:26px}
  .res-insight>div,.res-grid>div,.send-card{padding:22px 20px}
  .send-card{gap:24px}
  .dbar{gap:8px}

  .footer .top{gap:28px;padding-top:42px}
  .footer a{overflow-wrap:anywhere}
  .fcreds .wrap{align-items:flex-start;gap:14px}
  .fc-row{gap:8px}
  .fchip{width:48px;height:48px}

  .cta .inner{padding:54px 0;min-height:280px}
  .cta .copy{max-width:100%}
  .trusted-strip{padding:28px 0}
  .trusted-strip .logos{margin:0 auto}
  .marks li{white-space:normal;border-left:0;padding:0 8px 0 0}
}

@media (max-width:440px){
  .wrap{width:calc(100% - 28px)}
  .brand img{height:48px;max-width:220px}
  .hero .photo{height:260px}
  .dimgrid{grid-template-columns:1fr}
  .stat-row{grid-template-columns:1fr}
  .stat-row div{padding:8px 0;border-left:0}
  .years span{font-size:.76rem}
  .scale{gap:4px}
  .scale span{font-size:.78rem}
  .scale .na span{font-size:.62rem;letter-spacing:0}
  .wp{padding:16px 14px}
  .wp .dot{width:40px;height:40px}
}
