:root{
  --offwhite:#FEFCFB;
  --blue:#034078;
  --deep:#001F54;
  --light:#88BFCF;
  --teal:#1282A2;
  --midnight:#0A1128;
  --ink:#0A1128;
  --muted:#53677d;
  --line:rgba(0,31,84,.14);
  --soft:#eef6f8;
  --max:1240px;
  --space-1:.5rem;
  --space-2:1rem;
  --space-3:1.5rem;
  --space-4:2rem;
  --space-5:3rem;
  --space-6:4.5rem;
  --space-7:6.5rem;
  --ease:cubic-bezier(.2,.8,.2,1);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;background:var(--offwhite)}
body{margin:0;color:var(--ink);background:var(--offwhite);font-family:"Source Sans 3",Arial,sans-serif;font-size:16px;line-height:1.58;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
img,svg{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
button,input,textarea,select{font:inherit}
button{color:inherit}
.shell{width:min(calc(100% - 48px),var(--max));margin-inline:auto}
.skip-link{position:fixed;left:16px;top:12px;z-index:999;transform:translateY(-160%);background:var(--offwhite);color:var(--midnight);padding:.7rem 1rem;border:2px solid var(--teal);font-weight:700}
.skip-link:focus{transform:none}
:focus-visible{outline:3px solid var(--teal);outline-offset:3px}
.section-index{font-family:"Manrope",sans-serif;font-size:.69rem;font-weight:800;letter-spacing:.22em;text-transform:uppercase;color:var(--blue)}
.section-index.light{color:var(--light)}
h1,h2,h3{font-family:"Manrope",sans-serif;margin:0;color:var(--deep);letter-spacing:-.045em}
h1{font-size:clamp(3.2rem,5.7vw,5.25rem);line-height:.94;font-weight:800}
h2{font-size:clamp(2.15rem,3.65vw,3.55rem);line-height:1.03;font-weight:800}
h3{font-size:clamp(1.24rem,1.55vw,1.6rem);line-height:1.1;font-weight:800}
p{margin:0}
.button{min-height:46px;display:inline-flex;align-items:center;justify-content:center;gap:.7rem;padding:.78rem 1.05rem;border:1px solid transparent;border-radius:2px;font-family:"Manrope",sans-serif;font-size:.84rem;font-weight:800;transition:transform .22s var(--ease),background .22s,color .22s,border .22s}
.button:hover{transform:translateY(-2px)}
.button-primary{background:var(--deep);color:white}
.button-primary:hover{background:var(--blue)}
.button-light{background:var(--offwhite);color:var(--midnight);border-color:rgba(255,255,255,.35)}
.button-light:hover{background:white}
.button-text{padding-inline:.2rem;color:var(--deep);border-color:transparent;background:transparent}

/* Header */
.site-header{position:fixed;inset:0 0 auto;z-index:100;background:rgba(254,252,251,.93);border-bottom:1px solid transparent;backdrop-filter:blur(14px);transition:box-shadow .24s,border-color .24s,background .24s}
.site-header.scrolled{border-bottom-color:var(--line);box-shadow:0 10px 30px rgba(10,17,40,.06)}
.header-inner{height:84px;display:flex;align-items:center;justify-content:space-between;gap:2rem}
.brand img{width:286px;height:auto}
.site-nav{display:flex;align-items:center;gap:1.7rem;font-family:"Manrope",sans-serif;font-size:.78rem;font-weight:700}
.site-nav>a:not(.nav-cta){position:relative}
.site-nav>a:not(.nav-cta)::after{content:"";position:absolute;left:0;bottom:-.45rem;width:100%;height:1px;background:var(--teal);transform:scaleX(0);transform-origin:left;transition:transform .2s var(--ease)}
.site-nav>a:not(.nav-cta):hover::after{transform:scaleX(1)}
.nav-cta{background:var(--midnight);color:white;padding:.76rem 1rem;border:1px solid var(--midnight)}
.menu-toggle{display:none;background:none;border:0;width:42px;height:42px;position:relative}
.menu-toggle span{position:absolute;left:8px;right:8px;height:2px;background:var(--midnight);transition:.2s}
.menu-toggle span:first-child{top:15px}.menu-toggle span:last-child{bottom:15px}
.menu-toggle[aria-expanded="true"] span:first-child{transform:translateY(5px) rotate(45deg)}
.menu-toggle[aria-expanded="true"] span:last-child{transform:translateY(-5px) rotate(-45deg)}

/* Hero */
.hero{padding-top:84px;min-height:780px;background:linear-gradient(90deg,var(--offwhite) 0 55%,var(--deep) 55% 100%);overflow:hidden}
.hero-grid{display:grid;grid-template-columns:55% 45%;min-height:696px}
.hero-copy{padding:6.2rem 4.5rem 4.5rem 0;align-self:center}
.kicker{margin:.8rem 0 1.25rem;max-width:650px;color:var(--blue);font-family:"Manrope",sans-serif;font-size:.84rem;font-weight:700;letter-spacing:.02em}
.hero h1 span{color:var(--blue)}
.hero-lead{max-width:690px;color:#385069;font-size:1.12rem;line-height:1.55;margin:1.55rem 0 1.8rem}
.hero-actions{display:flex;gap:1.35rem;align-items:center;flex-wrap:wrap}
.hero-signals{display:grid;grid-template-columns:repeat(3,1fr);gap:1.4rem;margin-top:3.8rem;border-top:1px solid var(--line);padding-top:1.35rem}
.hero-signals>div{padding-right:1rem;border-right:1px solid var(--line)}
.hero-signals>div:last-child{border:0}
.signal-icon{display:block;font-family:"Manrope",sans-serif;font-size:.65rem;font-weight:800;color:var(--teal);letter-spacing:.12em;margin-bottom:.45rem}
.hero-signals b{display:block;font-family:"Manrope",sans-serif;font-size:.83rem;color:var(--deep)}
.hero-signals small{display:block;color:#65778a;font-size:.75rem;line-height:1.4;margin-top:.2rem}
.hero-visual{position:relative;min-height:696px;background:linear-gradient(145deg,var(--midnight),var(--deep) 50%,var(--blue));overflow:hidden}
.architecture-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.08) 1px,transparent 1px);background-size:54px 54px;mask-image:linear-gradient(140deg,transparent 5%,#000 60%)}
.tower{position:absolute;bottom:-10%;border:1px solid rgba(136,191,207,.35);background:linear-gradient(110deg,rgba(255,255,255,.03),rgba(136,191,207,.19) 48%,rgba(255,255,255,.03) 49% 53%,rgba(3,64,120,.15));box-shadow:inset 0 0 50px rgba(136,191,207,.06)}
.tower::after{content:"";position:absolute;inset:0;background:repeating-linear-gradient(0deg,transparent 0 56px,rgba(255,255,255,.12) 57px 59px)}
.tower-a{width:46%;height:92%;left:7%;transform:skewY(-9deg) rotate(-3deg)}.tower-b{width:46%;height:112%;right:-6%;transform:skewY(-7deg) rotate(4deg);background-color:rgba(18,130,162,.11)}
.tower-c{width:26%;height:70%;left:45%;transform:skewY(-8deg);background-color:rgba(136,191,207,.06)}
.glass-line{position:absolute;height:2px;background:linear-gradient(90deg,transparent,var(--light),transparent);transform-origin:left;opacity:.55}
.glass-line-1{width:65%;left:7%;top:25%;transform:rotate(34deg)}
.glass-line-2{width:58%;left:31%;top:54%;transform:rotate(-26deg)}
.glass-line-3{width:44%;left:20%;top:76%;transform:rotate(18deg)}
.hero-vertical-copy{position:absolute;right:2.2rem;top:3.2rem;color:white;font-family:"Manrope",sans-serif;font-size:.72rem;font-weight:700;letter-spacing:.32em;line-height:2.25;text-align:right;border-right:2px solid var(--teal);padding-right:1rem}
.hero-coordinate{position:absolute;left:2rem;bottom:1.5rem;color:rgba(255,255,255,.55);font-family:"Manrope",sans-serif;font-size:.63rem;letter-spacing:.16em}

/* Common sections */
.section-light{background:var(--offwhite)}
.proposition{padding:var(--space-7) 0 var(--space-6)}
.proposition-grid{display:grid;grid-template-columns:1fr 1fr;gap:8rem;align-items:start}
.proposition-grid h2{margin-top:.8rem;max-width:560px}
.proposition-copy{font-size:1.08rem;color:var(--muted);max-width:570px;padding-top:1.8rem}
.proposition-rule{width:60px;height:2px;background:var(--teal);margin:2rem 0}
.proposition-emphasis{font-family:"Manrope",sans-serif;font-weight:800;color:var(--deep);font-size:1.15rem}
.section-heading{margin-bottom:3rem;max-width:920px}
.section-heading h2{margin-top:.8rem}
.section-heading.split{display:grid;grid-template-columns:1.25fr .75fr;gap:5rem;max-width:none;align-items:end}
.section-heading.split>p{color:var(--muted);font-size:1.05rem;max-width:540px;padding-bottom:.3rem}

/* Problems */
.problems{padding:var(--space-5) 0 var(--space-7)}
.problem-list{border-top:1px solid var(--line)}
.problem{display:grid;grid-template-columns:90px 1fr 1.1fr;gap:2rem;padding:2rem 0;border-bottom:1px solid var(--line);align-items:start}
.problem>span{font-family:"Manrope",sans-serif;font-size:.72rem;font-weight:800;color:var(--teal);letter-spacing:.14em}
.problem h3{max-width:420px}
.problem p{color:var(--muted);max-width:550px}

/* Capabilities */
.capabilities{padding:var(--space-7) 0;background:white}
.capability-grid{display:grid;grid-template-columns:repeat(10,1fr);gap:12px}
.capability{min-height:420px;padding:1.65rem;display:flex;flex-direction:column;border:1px solid var(--line)}
.capability:nth-child(1){grid-column:span 4}.capability:nth-child(2){grid-column:span 3}.capability:nth-child(3){grid-column:span 3}.capability:nth-child(4){grid-column:span 5}.capability:nth-child(5){grid-column:span 5}
.capability.dark{background:var(--deep);color:white;border-color:var(--deep)}
.capability.ice{background:linear-gradient(150deg,#f4fafb,#dfeff3)}
.capability header{display:flex;justify-content:space-between;align-items:start;gap:1rem}
.capability header span{font-family:"Manrope",sans-serif;font-size:.66rem;font-weight:800;letter-spacing:.14em;color:var(--teal)}
.capability.dark header span{color:var(--light)}
.capability.dark h3{color:white}
.capability>p{font-size:.94rem;color:#5a6f82;margin-top:.7rem;max-width:380px}
.capability.dark>p{color:#c8d8e4}
.capability ul{list-style:none;padding:1rem 0 0;margin:0;border-top:1px solid rgba(0,31,84,.15);display:grid;gap:.35rem}.capability.dark ul{border-color:rgba(255,255,255,.2)}.capability li{font-size:.78rem;font-weight:600}.capability li::before{content:"→";margin-right:.5rem;color:var(--teal)}.capability.dark li::before{color:var(--light)}

/* Analytics */
.analytics-section{background:var(--midnight);color:white;padding:var(--space-7) 0;overflow:hidden;position:relative}
.analytics-section::before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(136,191,207,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(136,191,207,.05) 1px,transparent 1px);background-size:46px 46px}
.analytics-grid{position:relative;display:grid;grid-template-columns:.72fr 1.28fr;gap:5rem;align-items:center}
.analytics-copy h2{color:white;margin:.85rem 0 1.25rem;max-width:520px}
.analytics-copy p{color:#a9bbcb;max-width:520px;font-size:1.04rem}
.analytics-tags{display:flex;gap:.55rem;flex-wrap:wrap;margin-top:2rem}
.analytics-tags span{border:1px solid rgba(136,191,207,.35);padding:.5rem .7rem;font-size:.72rem;font-family:"Manrope",sans-serif;font-weight:700;color:#cbe8ef}
.analytics-console{border:1px solid rgba(136,191,207,.35);background:rgba(0,31,84,.42);min-height:430px;padding:1rem}
.console-top,.console-bottom{display:flex;justify-content:space-between;gap:1rem;font-family:"Manrope",sans-serif;font-size:.62rem;letter-spacing:.12em;color:#89b9c8}
.console-main{display:grid;grid-template-columns:1fr 190px;gap:1rem;margin:1rem 0}
.console-chart{position:relative;min-height:320px;border:1px solid rgba(136,191,207,.18);padding:1rem}

.axis-label{position:absolute;font-family:"Manrope",sans-serif;font-size:.55rem;letter-spacing:.18em;color:#7898aa}.axis-label.y{left:.4rem;top:.65rem}.axis-label.x{right:.65rem;bottom:.45rem}
.console-side{display:grid;gap:1px;background:rgba(136,191,207,.15)}
.console-side>div{background:rgba(10,17,40,.82);padding:1rem}.console-side span{font-family:"Manrope",sans-serif;font-size:.6rem;color:var(--teal);letter-spacing:.1em}.console-side b{display:block;font-family:"Manrope",sans-serif;font-size:.88rem;margin:.35rem 0;color:white}.console-side p{font-size:.76rem;color:#aebdca;line-height:1.4}
.console-bottom span{flex:1;text-align:center;border-top:1px solid rgba(136,191,207,.18);padding-top:.75rem}


.mini-viz{height:118px;margin:auto 0 1.2rem;position:relative;overflow:hidden}.mini-viz i,.mini-viz b{position:absolute;display:block}.viz-strategy{border-bottom:1px solid currentColor}.viz-strategy i{bottom:0;width:11%;background:currentColor;opacity:.74}.viz-strategy i:nth-child(1){left:7%;height:24%}.viz-strategy i:nth-child(2){left:25%;height:39%}.viz-strategy i:nth-child(3){left:43%;height:58%}.viz-strategy i:nth-child(4){left:61%;height:78%}.viz-strategy b{left:8%;right:7%;top:40%;height:2px;background:var(--offwhite);transform:rotate(-16deg);transform-origin:left}.viz-data{border:1px solid rgba(0,31,84,.18);background:#fff}.viz-data i{bottom:12%;width:9%;background:var(--blue)}.viz-data i:nth-child(1){left:47%;height:24%}.viz-data i:nth-child(2){left:60%;height:38%}.viz-data i:nth-child(3){left:73%;height:54%}.viz-data i:nth-child(4){left:86%;height:68%}.viz-data b{width:46px;height:46px;border-radius:50%;border:8px solid var(--light);border-right-color:var(--teal);left:10%;top:28%}.viz-growth i{left:8%;right:8%;height:18px;border:1px solid currentColor;transform-origin:center}.viz-growth i:nth-child(1){top:18%;transform:scaleX(1)}.viz-growth i:nth-child(2){top:44%;transform:scaleX(.7)}.viz-growth i:nth-child(3){top:70%;transform:scaleX(.42)}.viz-matrix:before,.viz-matrix:after{content:"";position:absolute;background:rgba(0,31,84,.25)}.viz-matrix:before{width:1px;top:8%;bottom:8%;left:50%}.viz-matrix:after{height:1px;left:8%;right:8%;top:50%}.viz-matrix i{width:14px;height:14px;border-radius:50%;background:var(--teal)}.viz-matrix i:nth-child(1){left:20%;top:25%}.viz-matrix i:nth-child(2){right:22%;top:20%;width:22px;height:22px;background:var(--blue)}.viz-matrix i:nth-child(3){left:30%;bottom:20%;width:10px;height:10px;background:var(--light)}.viz-matrix i:nth-child(4){right:18%;bottom:18%;width:18px;height:18px;background:var(--deep)}.viz-roadmap:before{content:"";position:absolute;left:10%;right:8%;top:55%;height:2px;background:var(--light);transform:rotate(-16deg)}.viz-roadmap i{width:18px;height:18px;border-radius:50%;background:var(--teal);border:2px solid var(--offwhite)}.viz-roadmap i:nth-child(1){left:12%;top:62%}.viz-roadmap i:nth-child(2){left:47%;top:46%}.viz-roadmap i:nth-child(3){right:10%;top:24%}.decision-chart{position:absolute;inset:28px 20px 26px;background:linear-gradient(transparent 95%,rgba(136,191,207,.12) 95%),linear-gradient(90deg,transparent 95%,rgba(136,191,207,.12) 95%);background-size:25% 25%;overflow:hidden}.decision-chart:before{content:"";position:absolute;left:2%;right:2%;top:55%;height:3px;background:linear-gradient(90deg,#88BFCF,#1282A2);transform:skewY(-8deg) rotate(-5deg);box-shadow:95px -28px 0 -1px #88BFCF,190px -12px 0 -1px #88BFCF,285px -55px 0 -1px #88BFCF}.decision-chart span{bottom:4%;width:8%;background:#1282A2;opacity:.68}.decision-chart span:nth-child(1){left:12%;height:18%}.decision-chart span:nth-child(2){left:26%;height:28%}.decision-chart span:nth-child(3){left:40%;height:42%}.decision-chart span:nth-child(4){left:54%;height:58%}.decision-chart b{position:absolute;right:14%;top:22%;width:10px;height:10px;border-radius:50%;background:var(--offwhite);box-shadow:0 0 0 4px var(--teal)}

/* Work */
.work{padding:var(--space-7) 0}
.work-list{border-top:1px solid var(--line)}
.work-item{display:grid;grid-template-columns:1.05fr 1fr 1fr 1.2fr;gap:2rem;padding:2.1rem 0;border-bottom:1px solid var(--line)}
.work-item small{display:block;font-family:"Manrope",sans-serif;font-size:.63rem;font-weight:800;color:var(--teal);letter-spacing:.12em;text-transform:uppercase;margin-bottom:.55rem}
.work-item p{color:var(--muted);font-size:.92rem}
.work-meta span{font-family:"Manrope",sans-serif;font-size:.65rem;color:var(--teal);font-weight:800}.work-meta b{display:block;font-family:"Manrope",sans-serif;font-size:1.1rem;color:var(--deep);margin-top:.6rem;max-width:240px}
.work-outcome strong{display:block;font-family:"Manrope",sans-serif;font-size:2rem;line-height:1;color:var(--deep);margin-bottom:.5rem}

/* Approach */
.approach{background:var(--deep);color:white;padding:var(--space-7) 0}
.approach-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:7rem;align-items:start}
.approach-intro h2{color:white;margin:.85rem 0 1.2rem;max-width:520px}.approach-intro p{color:#b9cbd8;max-width:520px;font-size:1.02rem}
.approach-steps{list-style:none;padding:0;margin:0;border-top:1px solid rgba(136,191,207,.3)}
.approach-steps li{display:grid;grid-template-columns:72px 1fr;gap:1rem;padding:1.4rem 0;border-bottom:1px solid rgba(136,191,207,.3)}
.approach-steps li>span{font-family:"Manrope",sans-serif;font-size:.72rem;font-weight:800;color:var(--light)}
.approach-steps h3{color:white;font-size:1.25rem}.approach-steps p{color:#b9cbd8;margin-top:.3rem;max-width:520px;font-size:.92rem}

/* Sectors */
.sectors{padding:var(--space-7) 0;background:white}
.sector-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}
.sector{min-height:135px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);padding:1.45rem;display:flex;flex-direction:column;justify-content:space-between;transition:background .2s var(--ease)}
.sector:hover{background:#f0f7f9}.sector span{font-family:"Manrope",sans-serif;font-size:.64rem;font-weight:800;color:var(--teal);letter-spacing:.1em}.sector b{font-family:"Manrope",sans-serif;font-size:1.02rem;color:var(--deep);max-width:260px}

/* Leadership */
.leadership{padding:var(--space-7) 0;background:linear-gradient(90deg,#eaf3f5 0 41%,var(--offwhite) 41% 100%)}
.leadership-grid{display:grid;grid-template-columns:.78fr 1.22fr;gap:6.5rem;align-items:center}
.leader-image{position:relative;max-width:470px}.leader-image img{width:100%;aspect-ratio:4/5;object-fit:cover;object-position:center 22%;filter:saturate(.82) contrast(1.03)}
.leader-image-index{position:absolute;left:-1px;bottom:-1px;background:var(--midnight);color:white;padding:.7rem .8rem;font-family:"Manrope",sans-serif;font-size:.61rem;font-weight:800;letter-spacing:.14em}
.leader-copy h2{margin:.7rem 0 .3rem}.leader-role{font-family:"Manrope",sans-serif;font-size:.78rem;font-weight:800;letter-spacing:.02em;color:var(--blue);margin-bottom:1.5rem}.leader-copy>p:not(.leader-role){color:var(--muted);font-size:1.02rem;max-width:690px;margin-bottom:1rem}.leader-copy blockquote{margin:2rem 0;padding:0 0 0 1.4rem;border-left:2px solid var(--teal);font-family:"Manrope",sans-serif;font-size:1.15rem;font-weight:800;line-height:1.5;color:var(--deep);max-width:700px}
.leader-credentials{display:grid;grid-template-columns:1fr 1fr;gap:2rem;border-top:1px solid var(--line);padding-top:1.25rem;margin:1.7rem 0}.leader-credentials span{display:block;font-family:"Manrope",sans-serif;font-size:.64rem;font-weight:800;text-transform:uppercase;letter-spacing:.12em;color:var(--teal);margin-bottom:.35rem}.leader-credentials p{font-size:.82rem;color:var(--muted)}

/* Contact & footer */
.contact{background:var(--blue);color:white;padding:var(--space-7) 0}
.contact-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:6rem;align-items:start}.contact-copy h2{color:white;margin:.8rem 0 1.2rem}.contact-copy>p{color:#d4e0e8;font-size:1.04rem;max-width:520px}.contact-details{display:grid;gap:.4rem;margin-top:2rem}.contact-details a{font-family:"Manrope",sans-serif;font-size:.85rem;font-weight:700;color:white;text-decoration:underline;text-underline-offset:4px;text-decoration-color:rgba(255,255,255,.28)}
.contact-form{display:grid;grid-template-columns:1fr 1fr;gap:1rem;border-top:1px solid rgba(255,255,255,.35);padding-top:1rem}.field{display:grid;gap:.4rem}.field-wide{grid-column:1/-1}.field label{font-family:"Manrope",sans-serif;font-size:.66rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#cce1e9}.field input,.field select,.field textarea{width:100%;border:0;border-bottom:1px solid rgba(255,255,255,.38);background:rgba(10,17,40,.13);color:white;padding:.85rem .75rem;border-radius:0;outline:none}.field select option{color:var(--midnight);background:white}.field input:focus,.field select:focus,.field textarea:focus{border-bottom-color:white;background:rgba(10,17,40,.24)}.honey{position:absolute!important;left:-10000px!important}.form-status{font-size:.75rem;color:#cce1e9;margin:0}
.site-footer{background:var(--midnight);color:white;padding:3.5rem 0 1.3rem}.footer-main{display:grid;grid-template-columns:1.2fr .7fr 1fr;gap:5rem}.footer-brand img{width:310px;max-width:100%}.footer-brand p{color:#98a8b8;font-size:.88rem;margin-top:1rem;max-width:350px}.footer-links{display:grid;align-content:start;gap:.45rem}.footer-links>span{font-family:"Manrope",sans-serif;font-size:.62rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--light);margin-bottom:.55rem}.footer-links a{font-size:.84rem;color:#d8e0e7}.footer-bottom{margin-top:3rem;padding-top:1rem;border-top:1px solid rgba(255,255,255,.12);display:flex;justify-content:space-between;gap:1rem;color:#7f8ea0;font-size:.7rem}.footer-bottom span:last-child{font-family:"Manrope",sans-serif;letter-spacing:.12em}

/* Motion */
.reveal{opacity:1;transform:none}.js .reveal{opacity:0;transform:translateY(16px);transition:opacity .65s var(--ease),transform .65s var(--ease)}.js .reveal.is-visible{opacity:1;transform:none}

@media (max-width:1080px){
  .site-nav{gap:1rem}.site-nav a{font-size:.73rem}.brand img{width:250px}
  .hero{background:linear-gradient(90deg,var(--offwhite) 0 58%,var(--deep) 58%)}.hero-grid{grid-template-columns:58% 42%}.hero-copy{padding-right:2.5rem}
  .hero-signals{grid-template-columns:1fr}.hero-signals>div{border-right:0;border-bottom:1px solid var(--line);padding-bottom:.7rem}.hero-signals>div:last-child{border-bottom:0}
  .capability:nth-child(n){grid-column:span 5}
  .analytics-grid,.approach-grid{gap:3rem}.console-main{grid-template-columns:1fr 160px}
  .work-item{grid-template-columns:1fr 1fr}.work-meta,.work-outcome{padding-right:1rem}
  .leadership-grid{gap:4rem}.contact-grid{gap:3rem}
}
@media (max-width:820px){
  .shell{width:min(calc(100% - 32px),var(--max))}.header-inner{height:72px}.brand img{width:226px}.menu-toggle{display:block}.site-nav{position:absolute;left:0;right:0;top:72px;background:var(--offwhite);border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:none;flex-direction:column;align-items:stretch;gap:0;padding:1rem 16px 1.2rem}.site-nav.open{display:flex}.site-nav>a{padding:.85rem}.nav-cta{text-align:center;margin-top:.5rem}
  .hero{padding-top:72px;background:var(--offwhite);min-height:auto}.hero-grid{grid-template-columns:1fr}.hero-copy{padding:4.5rem 0 3.5rem}.hero-visual{min-height:460px;margin-inline:-16px}.hero-vertical-copy{right:1rem}
  .proposition-grid,.section-heading.split,.analytics-grid,.approach-grid,.leadership-grid,.contact-grid{grid-template-columns:1fr;gap:2.5rem}.proposition-grid{gap:2rem}
  .problem{grid-template-columns:50px 1fr}.problem p{grid-column:2}
  .capability-grid{grid-template-columns:1fr 1fr}.capability:nth-child(n){grid-column:auto}.capability{min-height:390px}
  .analytics-copy{max-width:680px}.console-main{grid-template-columns:1fr}.console-side{grid-template-columns:repeat(3,1fr)}
  .work-item{grid-template-columns:1fr}.work-item>div{max-width:720px}
  .sector-grid{grid-template-columns:1fr 1fr}
  .leadership{background:linear-gradient(#eaf3f5 0 35%,var(--offwhite) 35% 100%)}.leader-image{max-width:540px}.leader-copy{padding-bottom:1rem}
  .footer-main{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1/-1}
}
@media (max-width:560px){
  h1{font-size:clamp(2.7rem,14vw,3.7rem)}h2{font-size:clamp(2rem,10vw,2.7rem)}
  .hero-lead{font-size:1.02rem}.hero-actions{align-items:flex-start;flex-direction:column}.hero-visual{min-height:390px}.tower-a{left:-2%;width:58%}.tower-b{width:58%}.hero-vertical-copy{font-size:.62rem}
  .proposition,.capabilities,.analytics-section,.work,.approach,.sectors,.leadership,.contact{padding:4.5rem 0}.problems{padding:2rem 0 4.5rem}
  .problem{grid-template-columns:38px 1fr;gap:1rem}.problem p{grid-column:2}
  .capability-grid{grid-template-columns:1fr}.capability{min-height:365px}
  .analytics-console{padding:.65rem}.console-chart{padding:.6rem}.console-chart svg{height:220px}.console-side{grid-template-columns:1fr}.console-bottom{flex-wrap:wrap}.console-bottom span{flex:1 1 40%}
  .sector-grid{grid-template-columns:1fr}.sector{min-height:110px}
  .leader-credentials,.contact-form{grid-template-columns:1fr}.field-wide{grid-column:auto}.leader-image-index{font-size:.56rem}
  .footer-main{grid-template-columns:1fr;gap:2.5rem}.footer-brand{grid-column:auto}.footer-bottom{flex-direction:column}.footer-brand img{width:250px}
}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.js .reveal{opacity:1;transform:none;transition:none}.button,.site-header,.site-nav>a::after{transition:none}}
/* Leadership portrait quality override */
.leader-image img{object-fit:cover!important;object-position:50% 32%!important;filter:none!important}

/* Approved leadership portrait — no crop */
.leader-image img{width:100%!important;height:auto!important;aspect-ratio:auto!important;object-fit:contain!important;object-position:center!important;filter:none!important}

