@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');

:root{
  --ink:#071a2d;
  --ink-soft:#16314a;
  --blue:#176bff;
  --blue-deep:#0a4fd0;
  --cyan:#72d8ff;
  --paper:#ffffff;
  --mist:#f2f6f9;
  --line:#dce5eb;
  --muted:#576b7d;
  --radius:3px;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:112px}
body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.65 'DM Sans',Arial,sans-serif;-webkit-font-smoothing:antialiased}
h1,h2,h3,p{margin:0}
h1,h2,h3{font-family:'Manrope',Arial,sans-serif;letter-spacing:-.045em;line-height:1.08}
h1{font-size:clamp(3rem,6.2vw,6.8rem);font-weight:600}
h2{font-size:clamp(2.25rem,4.2vw,4.35rem);font-weight:550}
h3{font-size:1.42rem;font-weight:600}
p{color:var(--muted)}
p+p{margin-top:1.15rem}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font:inherit}
button,a{touch-action:manipulation}
img{display:block;max-width:100%}
em{color:var(--blue);font-style:normal}
ul{margin:0;padding:0;list-style:none}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--cyan);outline-offset:4px}

.wrap{width:min(91.5%,1400px);margin-inline:auto}
.section{padding-block:clamp(58px,6vw,86px)}
.kicker{display:block;margin-bottom:22px;color:var(--blue);font-size:.72rem;font-weight:700;letter-spacing:.15em;text-transform:uppercase}
.kicker.light{color:#9de4ff}
.text-link{display:inline-flex;align-items:center;gap:20px;margin-top:28px;font-size:.83rem;font-weight:700;letter-spacing:.02em}
.text-link span,.ghost-link span{transition:transform .25s ease}
.text-link:hover span,.ghost-link:hover span{transform:translateX(5px)}
.text-link.light{color:#fff}
.button{display:inline-flex;align-items:center;justify-content:space-between;gap:32px;padding:17px 22px;border:1px solid var(--blue);border-radius:var(--radius);background:var(--blue);color:#fff;font-weight:700;font-size:.83rem;cursor:pointer;transition:background .22s ease,border-color .22s ease,transform .22s ease}
.button:hover{transform:translateY(-2px);background:var(--blue-deep);border-color:var(--blue-deep)}
.button-small{padding:13px 18px;gap:22px}
.button-light{background:#fff;color:var(--ink);border-color:#fff}
.button-light:hover{background:#dff5ff;border-color:#dff5ff}
.skip-link{position:fixed;left:16px;top:-80px;z-index:1000;background:#fff;padding:12px 18px;border:2px solid var(--blue)}
.skip-link:focus{top:12px}

.utility{min-height:34px;padding:7px 4.25%;display:flex;align-items:center;justify-content:space-between;background:var(--ink);color:#c5d3df;font-size:.66rem;letter-spacing:.08em;text-transform:uppercase}
.utility div{display:flex;gap:26px}
.utility a:hover{color:#fff}
.site-header{height:86px;padding:0 4.25%;display:flex;align-items:center;justify-content:space-between;gap:30px;position:relative;z-index:50;background:#fff;border-bottom:1px solid var(--line)}
.brand,.footer-brand{display:flex;align-items:center;gap:12px;min-width:0}
.brand{flex:0 0 260px;align-self:stretch}
.brand img{width:55px;height:63px;object-fit:contain;background:#fff;clip-path:circle(closest-side at 50% 50%);flex:none}
.brand-wordmark{display:flex;flex-direction:column;min-width:0;white-space:nowrap;font-family:'Manrope',Arial,sans-serif;line-height:1.15;letter-spacing:-.025em}
.brand-wordmark strong{font-size:1.02rem;font-weight:750}
.brand-wordmark small{margin-top:4px;font-size:.68rem;font-weight:650;letter-spacing:.01em}
.site-header nav{display:flex;align-items:center;gap:clamp(18px,2vw,34px);font-size:.79rem;font-weight:600}
.site-header nav>a:not(.button){padding-block:32px;position:relative}
.site-header nav>a:not(.button):after{content:'';position:absolute;left:0;right:100%;bottom:23px;height:2px;background:var(--blue);transition:right .25s ease}
.site-header nav>a:not(.button):hover:after,.site-header nav>a[aria-current]:after{right:0}
.menu-button{display:none;border:0;background:#fff;color:var(--ink);font-weight:700}
.mega-menu{position:absolute;left:0;right:0;top:86px;display:grid;grid-template-columns:.75fr 2fr;gap:60px;padding:46px max(4.25%,calc((100% - 1400px)/2));background:#fff;border-top:1px solid var(--line);box-shadow:0 30px 70px #071a2d1c;visibility:hidden;opacity:0;transform:translateY(-8px);transition:.22s ease;pointer-events:none}
.site-header .nav-services:is(:hover,:focus-visible)+.services-mega-menu,.site-header .nav-industries:is(:hover,:focus-visible)+.industries-mega-menu,.mega-menu:is(:hover,:focus-within){visibility:visible;opacity:1;transform:none;pointer-events:auto}
.site-header nav>a:focus-visible,.mega-menu a:focus-visible{outline:2px solid var(--blue);outline-offset:4px}
.mega-intro strong{font:600 1.45rem/1.3 'Manrope',Arial,sans-serif;display:block;max-width:300px}
.mega-intro>a{display:inline-block;margin-top:24px;color:var(--blue);font-size:.8rem;font-weight:700}
.mega-links{display:grid;grid-template-columns:repeat(2,1fr);gap:0 48px}
.mega-links a{padding:15px 0;border-bottom:1px solid var(--line);font:600 1rem 'Manrope',Arial,sans-serif}
.mega-links a span{display:block;margin-bottom:5px;color:var(--muted);font:700 .63rem 'DM Sans',Arial,sans-serif;text-transform:uppercase;letter-spacing:.1em}
.mega-links a:hover{color:var(--blue)}
.industries-mega-menu .mega-links{grid-auto-rows:1fr;column-gap:48px}
.industries-mega-menu .mega-links a{display:flex;flex-direction:column;justify-content:center;gap:5px;min-height:88px;padding:13px 0}
.industries-mega-menu .mega-links a strong{font:650 1.12rem/1.3 'Manrope',Arial,sans-serif;letter-spacing:-.02em}
.industries-mega-menu .mega-links a span{margin:0;color:var(--muted);font:500 .88rem/1.45 'DM Sans',Arial,sans-serif;letter-spacing:0;text-transform:none}

.home-hero{min-height:calc(100svh - 120px);height:780px;position:relative;overflow:hidden;background:#05182a;color:#fff;isolation:isolate}
.home-hero-art{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;z-index:-3;filter:saturate(.9) contrast(1.05);background:#05182a}
.home-hero-shade{position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,#041425f2 0%,#061b2ec4 44%,#061b2e3b 72%,#04142542 100%),linear-gradient(0deg,#05182a99 0%,transparent 45%)}
.home-hero-content{height:100%;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;padding-bottom:40px}
.home-hero h1{max-width:900px;color:#fff;font-size:clamp(3.6rem,7.8vw,7.8rem)}
.home-hero h1 em{color:#a4e7ff}
.home-hero-content>p{max-width:680px;margin-top:30px;color:#d3e0e9;font-size:clamp(1.05rem,1.35vw,1.3rem)}
.hero-actions{display:flex;align-items:center;gap:30px;margin-top:38px}
.ghost-link{display:inline-flex;gap:25px;color:#fff;font-weight:700;font-size:.86rem}
.home-hero-meta{position:absolute;left:4.25%;right:4.25%;bottom:27px;display:flex;align-items:center;justify-content:space-between;color:#9fb5c6;font-size:.64rem;letter-spacing:.13em}
.motion-toggle{border:0;background:transparent;color:#d8e6ef;font-size:.66rem;letter-spacing:.07em;cursor:pointer}
.motion-toggle b{font-size:.85rem;margin-left:8px}
.trust-strip{border-bottom:1px solid var(--line);background:#fff}
.trust-strip>.wrap{min-height:116px;display:flex;align-items:center;justify-content:space-between;gap:25px}
.trust-strip span{max-width:100px;color:var(--muted);font-size:.68rem;line-height:1.5;text-transform:uppercase;letter-spacing:.09em}
.trust-strip div div{font:700 1.05rem 'Manrope',Arial,sans-serif;color:#52687b}
.priority-section{background:#fff}
.priority-heading{display:grid;grid-template-columns:1fr .72fr;gap:8vw;align-items:end;margin-bottom:52px}
.priority-heading p{max-width:540px;margin-bottom:8px;font-size:1.02rem}
.priority-explorer{display:grid;grid-template-columns:340px minmax(0,1fr);border:1px solid var(--line);background:var(--mist)}
.priority-tabs{display:flex;flex-direction:column;background:#fff;border-right:1px solid var(--line)}
.priority-tabs button{min-height:118px;padding:26px 28px;display:grid;grid-template-columns:36px 1fr;gap:12px;align-items:center;text-align:left;border:0;border-bottom:1px solid var(--line);background:#fff;color:var(--ink);font:600 1rem/1.35 'Manrope',Arial,sans-serif;cursor:pointer;transition:.2s ease}
.priority-tabs button:last-child{border-bottom:0}
.priority-tabs button span{color:var(--blue);font:700 .66rem 'DM Sans',Arial,sans-serif;letter-spacing:.1em}
.priority-tabs button:hover{background:#f5f9fc}
.priority-tabs button[aria-selected="true"]{background:var(--ink);color:#fff;box-shadow:inset 4px 0 0 var(--blue)}
.priority-panels{min-width:0}
.priority-panels article{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(310px,.75fr);min-height:470px;background:#fff}
.priority-panels article[hidden]{display:none}
.priority-media{min-height:470px;overflow:hidden;background:var(--ink)}
.priority-media img,.priority-media video{width:100%;height:100%;display:block;object-fit:cover}
.priority-copy{padding:clamp(32px,4vw,62px);display:flex;flex-direction:column;justify-content:center;border-left:1px solid var(--line)}
.priority-copy>span{color:var(--blue);font-size:.66rem;font-weight:700;letter-spacing:.12em}
.priority-copy h3{margin-top:22px;font-size:clamp(1.75rem,2.3vw,2.65rem);line-height:1.12}
.priority-copy p{margin-top:20px;font-size:.94rem}
.priority-copy a{margin-top:32px;color:var(--blue);font-size:.8rem;font-weight:700}
.priority-copy a i{margin-left:12px;font-style:normal}
.statement{display:grid;grid-template-columns:.52fr 1.3fr;gap:8vw;align-items:start}
.statement h2{max-width:850px}
.statement div>p{max-width:650px;margin-top:30px;font-size:1.08rem}
.statement-points{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:32px;padding-top:22px;border-top:1px solid var(--line)}
.statement-points article{padding-right:14px}
.statement-points strong{display:block;font:700 .84rem 'Manrope',Arial,sans-serif}
.statement-points span{display:block;margin-top:9px;color:var(--muted);font-size:.83rem;line-height:1.5}
.service-showcase{background:var(--mist)}
.section-heading{display:flex;align-items:end;justify-content:space-between;gap:45px;margin-bottom:55px}
.section-heading p{max-width:460px}
.section-heading .text-link{margin-bottom:10px;flex-shrink:0}
.service-cards{display:grid;grid-template-columns:repeat(6,1fr);border-top:1px solid #bdcbd5;border-left:1px solid #bdcbd5}
.service-card{grid-column:span 2;min-height:320px;padding:30px;display:flex;flex-direction:column;border-right:1px solid #bdcbd5;border-bottom:1px solid #bdcbd5;background:#fff;position:relative;transition:.25s ease}
.service-card:nth-child(4){grid-column:2/span 2}.service-card:nth-child(5){grid-column:4/span 2}
.service-card:hover{background:var(--ink);color:#fff;transform:translateY(-5px)}
.service-index{color:var(--blue);font:.75rem 'DM Sans',Arial,sans-serif;letter-spacing:.1em}
.service-tag{display:block;margin:34px 0 15px;color:#6a7e90;font-size:.67rem;text-transform:uppercase;letter-spacing:.11em}
.service-card h3{max-width:310px;font-size:1.7rem}
.service-card p{margin-top:17px;font-size:.9rem}
.service-card small{display:block;margin-top:auto;padding-top:20px;color:#45657c;font-size:.76rem;line-height:1.5}
.service-card:hover p,.service-card:hover .service-tag{color:#b8cbd9}
.service-card:hover small{color:#9ddcff}
.service-card i{position:absolute;right:28px;top:26px;color:var(--blue);font-style:normal;font-size:1.25rem}
.split-feature{display:grid;grid-template-columns:1.2fr .95fr;gap:8vw;align-items:center}
.feature-image{height:620px;position:relative;overflow:hidden;background:var(--ink)}
.feature-image img,.feature-image video{width:100%;height:100%;display:block;object-fit:cover}
.feature-image:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#03182ed6 0%,transparent 55%)}
.feature-image>div{position:absolute;z-index:2;left:40px;bottom:38px;color:#fff}
.feature-image span{display:block;font-size:.65rem;letter-spacing:.14em;margin-bottom:12px}
.feature-image strong{display:block;max-width:390px;font:500 1.8rem/1.25 'Manrope',Arial,sans-serif;letter-spacing:-.04em}
.feature-copy h2{font-size:clamp(2.4rem,4vw,4.5rem)}
.feature-copy p{max-width:570px;margin:30px 0 35px;font-size:1.05rem}
.dark-panel{padding-block:clamp(75px,8vw,115px);background:var(--ink);color:#fff}
.dark-grid{display:grid;grid-template-columns:.9fr 1.25fr;gap:8vw;align-items:center}
.dark-grid>div:first-child>p{color:#b8cad8;margin:28px 0 34px;max-width:530px}
.signal-grid{display:grid;grid-template-columns:1fr 1fr;border-left:1px solid #ffffff25;border-top:1px solid #ffffff25}
.signal-grid article{min-height:185px;padding:28px;border-right:1px solid #ffffff25;border-bottom:1px solid #ffffff25}
.signal-grid span{color:#76d9ff;font-size:.7rem}
.signal-grid h3{margin-top:30px;color:#fff}
.signal-grid p{margin-top:12px;color:#aebfcd;font-size:.86rem}
.industry-home .section-heading>p{margin-bottom:8px}
.industry-list{border-top:1px solid var(--line)}
.industry-list a{min-height:115px;display:grid;grid-template-columns:75px 1fr minmax(240px,.6fr) auto;gap:18px;align-items:center;border-bottom:1px solid var(--line);font:550 clamp(1.8rem,3vw,3.2rem) 'Manrope',Arial,sans-serif;letter-spacing:-.04em;transition:.2s ease}
.industry-list a span{color:var(--blue);font:700 .7rem 'DM Sans',Arial,sans-serif;letter-spacing:.1em}
.industry-list a strong{font-weight:550}
.industry-list a small{color:var(--muted);font:500 .86rem/1.4 'DM Sans',Arial,sans-serif;letter-spacing:0}
.industry-list a i{font-style:normal;font-size:1.3rem;color:var(--blue);opacity:0;transform:translateX(-15px);transition:.25s ease}
.industry-list a:hover{padding-left:12px;color:var(--blue)}
.industry-list a:hover i{opacity:1;transform:none}
.engagement-band{background:#dff3ff;padding-block:clamp(70px,7vw,105px)}
.engagement-band>.wrap{display:grid;grid-template-columns:.85fr 1.2fr;gap:8vw}
.engagement-mini{display:grid;grid-template-columns:1fr 1fr;gap:0;border-left:1px solid #a9cfe2;border-top:1px solid #a9cfe2;position:relative}
.engagement-mini article{padding:28px;border-right:1px solid #a9cfe2;border-bottom:1px solid #a9cfe2;min-height:150px}
.engagement-mini article:nth-child(3){grid-column:1/-1}
.engagement-mini p{font-size:.86rem;margin-top:15px}
.round-link{position:absolute;right:24px;bottom:22px;width:52px;height:52px;border-radius:50%;display:grid;place-items:center;background:var(--blue);color:#fff;font-size:1.25rem}
.final-cta{background:var(--blue);color:#fff;padding-block:clamp(58px,5.5vw,82px)}
.final-cta>.wrap{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(35px,7vw,110px);align-items:center}
.final-cta .kicker{color:#c6ebff;margin-bottom:16px}
.final-cta h2{max-width:760px;font-size:clamp(2.25rem,3.5vw,3.75rem)}
.final-cta p{color:#e5f0ff;max-width:560px;font-size:1rem}
.final-cta-links{display:flex;align-items:center;gap:24px;flex-wrap:wrap;margin-top:26px}
.final-cta-links .button{min-width:230px}
.final-cta-email{display:inline-flex;align-items:center;gap:12px;color:#fff;font-size:.8rem;font-weight:700}
.final-cta-email:hover{text-decoration:underline;text-underline-offset:4px}

.page-hero{padding-block:clamp(56px,6vw,90px);background:#f8fafc;border-bottom:1px solid var(--line)}
.page-hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:7vw;align-items:center}
.page-hero h1{font-size:clamp(3.3rem,5.7vw,6.2rem)}
.page-hero p{max-width:650px;margin:30px 0 35px;font-size:1.08rem}
.page-hero-visual{height:430px;position:relative;overflow:hidden;background:var(--ink)}
.page-hero-visual img{width:100%;height:100%;object-fit:cover;transition:transform .8s ease}
.page-hero-visual:hover img{transform:scale(1.025)}
.page-hero-visual:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#051a2d9d,transparent 52%)}
.page-hero-visual span{position:absolute;left:26px;bottom:22px;z-index:2;color:#d6e6ef;font-size:.62rem;letter-spacing:.14em}
.page-hero--plain{padding-block:clamp(54px,5vw,78px);background:#f1f6f9}
.page-hero--plain .page-hero-grid{display:block}
.page-hero--plain .page-hero-grid>div{max-width:930px}
.page-hero--plain p{margin-bottom:0}
.narrative-grid{display:grid;grid-template-columns:1fr 1fr;gap:9vw}
.narrative-grid>div:last-child>p{font-size:1.08rem}
.narrative-grid .button{margin-top:32px}
.principles{background:var(--mist)}
.principle-grid{display:grid;grid-template-columns:repeat(4,1fr);margin-top:40px;border-left:1px solid var(--line);border-top:1px solid var(--line)}
.principle-grid article{min-height:225px;padding:30px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:#fff}
.principle-grid article>span{color:var(--blue);font-size:.72rem}
.principle-grid h3{margin-top:32px}
.principle-grid p{margin-top:15px;font-size:.88rem}
.offices{display:grid;grid-template-columns:1.1fr 1fr 1fr;gap:60px;align-items:start}
.offices article{border-top:1px solid var(--line);padding-top:22px}
.offices article>span{font-size:.66rem;letter-spacing:.12em;color:var(--blue)}
.offices article p{margin:20px 0 15px}
.offices article a{font-weight:700}
.service-directory{padding-bottom:100px}
.directory-row{display:grid;grid-template-columns:80px 1.1fr .9fr;gap:45px;padding-block:48px;border-bottom:1px solid var(--line)}
.directory-row h2{font-size:clamp(2rem,3vw,3.1rem);margin:10px 0 20px}
.directory-row h2 i{color:var(--blue);font-style:normal;font-size:.7em}
.directory-row>div p{max-width:570px}
.directory-row ul li,.capability-stack article{padding:14px 0;border-bottom:1px solid var(--line);font-size:.9rem}
.directory-row ul li:before{content:'✓';color:var(--blue);margin-right:12px}
.service-intro{display:grid;grid-template-columns:1fr .95fr;gap:9vw;align-items:start}
.service-intro h2,.service-scope h2,.delivery-flow h2{font-size:clamp(2.4rem,3.7vw,3.5rem)}
.service-intro>div>p{max-width:700px;margin-top:25px;font-size:1.08rem}
.situation-list{padding:28px 32px;background:var(--mist)}
.situation-list .kicker{margin-bottom:14px}
.situation-list li{display:grid;grid-template-columns:35px 1fr;gap:14px;padding:17px 0;border-top:1px solid #cbd8e0}
.situation-list li span{color:var(--blue);font-size:.69rem;font-weight:700}
.situation-list li p{font-size:.94rem}
.service-scope{padding-block:clamp(58px,6vw,86px);background:var(--mist)}
.service-scope-grid{display:grid;grid-template-columns:.72fr 1.28fr;gap:7vw;align-items:start}
.service-scope-grid>div:first-child>p{max-width:480px;margin-top:25px;font-size:1rem}
.capability-stack{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid #cbd8e0;border-left:1px solid #cbd8e0}
.capability-stack article{min-height:230px;padding:26px;background:#fff;border-right:1px solid #cbd8e0;border-bottom:1px solid #cbd8e0}
.capability-stack article span{color:var(--blue);font-size:.68rem;font-weight:700}
.capability-stack article h3{margin-top:22px;font-size:1.18rem}
.capability-stack article p{margin-top:12px;font-size:.86rem;line-height:1.55}
.delivery-flow{padding-block:clamp(58px,6vw,86px);background:#fff}
.delivery-heading{display:grid;grid-template-columns:1fr .75fr;gap:2vw 7vw;align-items:end}
.delivery-heading .kicker{grid-column:1/-1;margin-bottom:0}
.delivery-heading p{max-width:510px;margin-bottom:6px}
.flow-grid{display:grid;grid-template-columns:repeat(4,1fr);margin-top:40px;border-left:1px solid #bdcbd5;border-top:1px solid #bdcbd5}
.flow-grid article{min-height:220px;padding:27px;border-right:1px solid #bdcbd5;border-bottom:1px solid #bdcbd5;background:#fff}
.flow-grid span{color:var(--blue);font-size:.72rem}
.flow-grid h3{margin-top:37px}
.flow-grid p{margin-top:14px;font-size:.86rem}
.related-services>div:last-child{display:grid;grid-template-columns:repeat(3,1fr);border-left:1px solid var(--line);border-top:1px solid var(--line)}
.related-services a{min-height:160px;padding:28px;display:flex;flex-direction:column;border-right:1px solid var(--line);border-bottom:1px solid var(--line);position:relative}
.related-services a span{font-size:.66rem;text-transform:uppercase;letter-spacing:.1em;color:var(--muted)}
.related-services a strong{font:600 1.25rem 'Manrope',Arial,sans-serif;margin-top:auto}
.related-services a i{position:absolute;right:26px;top:22px;font-style:normal;color:var(--blue)}
.anchor-nav{height:88px;display:flex;align-items:center;justify-content:center;gap:42px;border-bottom:1px solid var(--line)}
.anchor-nav a{font-size:.8rem;font-weight:700}
.anchor-nav a:hover{color:var(--blue)}
.industry-pages article{display:grid;grid-template-columns:1.2fr .8fr;gap:9vw;padding-block:65px;border-bottom:1px solid var(--line)}
.industry-pages article h2{font-size:clamp(2.2rem,3.8vw,4rem)}
.industry-pages article>div p{max-width:600px;margin-top:26px}
.industry-pages ul li{padding:15px 0;border-bottom:1px solid var(--line)}

.model-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0}
.model-grid article{padding:36px;border:1px solid var(--line);margin-left:-1px;min-height:400px;display:flex;flex-direction:column}
.model-grid article>span{color:var(--blue);font-size:.72rem}
.model-grid h2{font-size:2rem;margin:36px 0 20px}
.model-grid ul{margin:26px 0}
.model-grid li{padding:8px 0;color:var(--muted);font-size:.9rem}
.model-grid li:before{content:'✓';color:var(--blue);margin-right:10px}
.model-grid .text-link{margin-top:auto}
.fit-section{padding-block:75px;background:var(--mist)}
.fit-table{margin-top:35px;border-top:1px solid #bdcbd5}
.fit-table>div{min-height:74px;display:grid;grid-template-columns:1.4fr .6fr;align-items:center;border-bottom:1px solid #bdcbd5}
.fit-table a{color:var(--blue);font-weight:700}
.empty-state{max-width:900px;text-align:center}
.empty-state p{max-width:650px;margin:26px auto}
.topic-list{display:flex;justify-content:center;gap:10px;flex-wrap:wrap;margin-top:35px}
.topic-list span{padding:10px 16px;border:1px solid var(--line);font-size:.78rem}
.insight-intro{display:grid;grid-template-columns:.4fr 1fr;gap:7vw}
.insight-intro p{max-width:740px;margin-top:24px;font-size:1.06rem}
.insight-list{background:var(--mist);padding-bottom:65px}
.insight-list article{display:grid;grid-template-columns:.48fr 1fr 1.1fr;gap:5vw;padding:52px 0;border-top:1px solid #cbd8e0}
.insight-list article>span{color:var(--blue);font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.11em}
.insight-list h2{font-size:clamp(1.75rem,2.5vw,2.7rem)}
.insight-list article>div p{font-size:.94rem}
.insight-list .text-link{margin-top:22px;color:var(--blue)}
.contact-grid{display:grid;grid-template-columns:.72fr 1.28fr;gap:8vw;align-items:start}
.contact-email{display:inline-flex;gap:15px;margin:20px 0 40px;color:var(--blue);font:600 clamp(1.2rem,2vw,1.8rem) 'Manrope',Arial,sans-serif}
.contact-details>p{max-width:440px;margin-top:22px}
.contact-guidance{padding:22px 24px;margin-bottom:36px;background:var(--mist)}
.contact-guidance strong{font-size:.76rem;text-transform:uppercase;letter-spacing:.09em}
.contact-guidance ul{margin-top:12px}
.contact-guidance li{padding:7px 0;color:var(--muted);font-size:.87rem}

.contact-details article{padding:25px 0;border-top:1px solid var(--line)}
.contact-details article strong{font-size:.74rem;text-transform:uppercase;letter-spacing:.1em}
.contact-details article p{margin:14px 0}
.lead-form{padding:44px;background:var(--mist)}
.lead-form h2{font-size:2.5rem}
.form-note{font-size:.82rem;margin-top:10px}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.lead-form label{display:block;margin-top:20px;font-size:.76rem;font-weight:700}
.lead-form label>span{font-weight:400;color:var(--muted)}
.lead-form input:not([type=checkbox]),.lead-form select,.lead-form textarea{width:100%;margin-top:8px;padding:14px 0;border:0;border-bottom:1px solid #aebdc8;background:transparent;border-radius:0;color:var(--ink);outline-offset:3px}
.lead-form textarea{resize:vertical}
.lead-form small{display:block;color:#b22338;font-weight:500;margin-top:5px}
.consent{display:grid!important;grid-template-columns:20px 1fr;gap:10px;align-items:start;font-weight:400!important;line-height:1.5}
.consent input{margin-top:4px}.consent a{color:var(--blue);text-decoration:underline}
.lead-form .button{margin-top:28px}
.form-status{margin-top:18px;font-size:.83rem}.form-status.success{color:#146d3a}.form-status.error{color:#b22338}
.legal-copy{max-width:900px}
.legal-notice{padding:26px;background:#fff3c9;border-left:4px solid #d5a600;margin-bottom:55px}
.legal-notice p{margin-top:7px}
.legal-copy h2{font-size:2.2rem;margin-bottom:25px}
.legal-copy li{padding:14px 0;border-bottom:1px solid var(--line);color:var(--muted)}

.case-home{background:#f3f7fa}.case-home .section-heading>div:last-child{max-width:470px}.case-home .section-heading p{margin-bottom:20px;color:var(--muted)}
.case-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin-top:42px}.case-card{display:block;background:#fff;color:var(--ink);border:1px solid #dce7ee;overflow:hidden;transition:transform .25s,box-shadow .25s}.case-card:hover,.case-directory-item:hover{transform:translateY(-4px);box-shadow:0 20px 42px #09213919}.case-card-image,.case-directory-image{position:relative;overflow:hidden}.case-card-image{aspect-ratio:1.35}.case-card img,.case-directory-item img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .6s}.case-card:hover img,.case-directory-item:hover img{transform:scale(1.04)}.case-card-image>span,.case-directory-image>span{position:absolute;bottom:14px;left:14px;padding:6px 9px;background:#061927cd;color:#fff;font-size:.6rem;letter-spacing:.08em;text-transform:uppercase}.case-card-copy{padding:27px}.case-card-copy small,.case-directory-item small{display:block;color:#1764b6;text-transform:uppercase;font-size:.67rem;font-weight:700;letter-spacing:.13em}.case-card h3{font-size:1.45rem;line-height:1.18;margin:13px 0}.case-card p,.case-directory-item p{color:var(--muted);line-height:1.55}.case-card strong,.case-directory-item strong{display:flex;justify-content:space-between;gap:12px;margin-top:26px;padding-top:18px;border-top:1px solid var(--line);font-size:.79rem}.case-card strong span,.case-directory-item strong span{color:var(--blue)}
.case-index-hero,.case-detail-hero{background:#071b2e;color:#fff}.case-index-hero{padding:110px 0 105px;background-image:radial-gradient(circle at 80% 10%,#194e7669,transparent 42%)}.case-index-hero h1{max-width:900px;margin:22px 0;font-size:clamp(3.1rem,6vw,6rem);line-height:1.03}.case-index-hero p{max-width:715px;color:#c1d1dc;font-size:1.08rem;line-height:1.65}.case-index-intro{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:end}.case-index-intro p{max-width:610px;color:var(--muted);line-height:1.7}.case-directory{padding-bottom:100px}.case-directory-item{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:5vw;align-items:center;padding:25px 0;border-top:1px solid var(--line);color:var(--ink);transition:transform .25s,box-shadow .25s}.case-directory-image{aspect-ratio:1.48}.case-directory-item h2{font-size:clamp(2rem,3.3vw,3.5rem);line-height:1.08;margin:18px 0}.case-directory-item p{font-size:1rem;max-width:560px}.case-directory-item strong{max-width:510px}
.case-detail-hero{padding:34px 0 130px}.case-breadcrumb{display:flex;gap:13px;color:#9eb4c5;font-size:.72rem}.case-breadcrumb a{color:#c7d8e5;text-decoration:underline}.case-detail-heading{display:flex;justify-content:space-between;align-items:end;gap:35px;margin-top:55px}.case-detail-heading>div{max-width:1000px}.case-detail-heading h1{font-size:clamp(3rem,5.6vw,6rem);line-height:1.05;margin:18px 0 26px}.case-detail-heading p{color:#c3d3df;max-width:760px;font-size:1.15rem;line-height:1.6}.case-back{color:#fff;white-space:nowrap;border-bottom:1px solid #7995a8;padding-bottom:8px;font-size:.8rem}.case-back span{margin-left:15px}.case-detail-media{position:relative;margin-top:-75px;margin-bottom:0}.case-detail-media img{display:block;width:100%;max-height:600px;aspect-ratio:2.15;object-fit:cover}.case-detail-media figcaption{padding:11px 0;color:var(--muted);font-size:.68rem}.case-story{display:grid;grid-template-columns:.7fr 1.3fr;gap:8vw}.case-story aside h2{margin-top:18px}.case-story aside nav{display:flex;flex-direction:column;gap:12px;margin-top:40px}.case-story aside nav a{color:var(--blue);font-size:.81rem}.case-story-copy article{padding:0 0 45px;margin-bottom:45px;border-bottom:1px solid var(--line);scroll-margin-top:110px}.case-story-copy article:last-child{border-bottom:0;margin-bottom:0}.case-story-copy article>span{color:var(--blue);font-size:.67rem;font-weight:700;letter-spacing:.13em}.case-story-copy h2{font-size:clamp(1.7rem,2.3vw,2.6rem);margin:16px 0}.case-story-copy p{max-width:750px;color:#476072;font-size:1.04rem;line-height:1.8}.case-capabilities{background:#eaf2f7;padding:80px 0}.case-capabilities>.wrap{display:grid;grid-template-columns:1fr 1fr;gap:8vw}.case-capabilities h2{margin:18px 0}.case-capabilities p{color:var(--muted);max-width:410px}.case-capabilities ul{list-style:none;padding:0;margin:0}.case-capabilities li{display:flex;gap:26px;align-items:center;padding:19px 0;border-bottom:1px solid #cbdce6;font-weight:600}.case-capabilities li span{color:#3474ad;font-size:.7rem}.case-next{display:grid;grid-template-columns:1.2fr .8fr;gap:8vw;align-items:center}.case-next p{max-width:600px;color:var(--muted);margin:18px 0 28px}.case-service-link{display:flex;flex-direction:column;gap:15px;padding:35px;border:1px solid #cbdce6;background:#f4f8fb;color:var(--ink)}.case-service-link span{color:var(--blue);font-size:.65rem;letter-spacing:.12em}.case-service-link strong{font-size:1.55rem}.case-service-link i{align-self:end;font-style:normal;color:var(--blue)}.case-related{border-top:1px solid var(--line)}.case-related .case-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}

.site-footer{padding-top:80px;background:#051625;color:#fff}
.footer-grid{display:grid;grid-template-columns:1.4fr 1fr .8fr .9fr;gap:60px;padding-bottom:60px}
.footer-brand{width:max-content;max-width:100%;gap:14px}
.footer-brand img{width:62px;height:70px;object-fit:contain;background:#fff;clip-path:circle(closest-side at 50% 50%);flex:none}
.footer-brand .brand-wordmark strong{font-size:1.13rem}
.footer-brand .brand-wordmark small{font-size:.72rem;color:#c5d3df}
.footer-brand:hover .brand-wordmark{color:#a4e7ff}
.footer-lead p{color:#aebfca;max-width:310px;margin-top:28px}
.footer-grid h2{font:700 .72rem 'DM Sans',Arial,sans-serif;text-transform:uppercase;letter-spacing:.12em;color:#8da9bb;margin-bottom:25px}
.footer-grid>div>a:not(.text-link){display:block;margin:11px 0;color:#d3dde4;font-size:.84rem}
.footer-grid>div>a.footer-brand:not(.text-link){display:flex;align-items:center;margin:0;color:#fff}
.footer-grid>div>a:hover{color:#77d9ff}
.footer-grid>div>p{color:#8fa6b6;font-size:.82rem;margin-top:19px}
.footer-grid .footer-offices{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:24px;padding-top:29px;border-top:1px solid #ffffff25}
.footer-offices article{padding:24px;border:1px solid #ffffff26;background:#ffffff08}
.footer-offices article span{display:block;margin-bottom:13px;color:#88bdd6;font-size:.63rem;font-weight:700;letter-spacing:.13em}
.footer-offices article strong{font:600 1.2rem 'Manrope',Arial,sans-serif}
.footer-offices article p{margin:13px 0;color:#aebfca;font-size:.82rem;line-height:1.55}
.footer-offices article a{color:#fff;font-size:.78rem;font-weight:700}
.footer-offices article a i{font-style:normal;margin-left:10px;color:#8bdcff}
.footer-bottom{min-height:70px;border-top:1px solid #ffffff1c;display:flex;align-items:center;justify-content:space-between;color:#7891a2;font-size:.69rem}
.footer-bottom div{display:flex;gap:25px}
.footer-iso{max-width:310px;min-height:6.34rem;margin-top:16px;line-height:1.5}.footer-iso-heading{display:flex;align-items:center;gap:6px;margin-bottom:10px;color:#fff;font-size:.75rem;font-weight:700;letter-spacing:.025em}.footer-iso-heading>span{color:#72d8ff;font-size:.85rem;line-height:1}.footer-iso-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:0;margin:0;list-style:none}.footer-iso-card{min-width:0;padding:10px 9px;border:1px solid #72d8ff40;border-radius:9px;background:#ffffff04;box-shadow:0 0 8px #72d8ff08}.footer-iso-card b{display:flex;align-items:center;gap:4px;color:#fff;font-size:.7rem;font-weight:700;line-height:1.3;white-space:nowrap}.footer-iso-card svg{flex:none;color:#72d8ff}.footer-iso-card small{display:block;margin-top:6px;color:#bdd2e0;font-size:.68rem;line-height:1.35}
@media (max-width:600px){.footer-iso-cards{grid-template-columns:1fr}.footer-iso-card{padding:10px 12px}.footer-iso-card b{font-size:.78rem}.footer-iso-card small{font-size:.72rem}}

.reveal{opacity:0;transform:translateY(28px);transition:opacity .7s ease,transform .7s ease}
.reveal.in-view{opacity:1;transform:none}
@keyframes heroDrift{from{transform:scale(1.02) translate3d(-1%,0,0)}to{transform:scale(1.075) translate3d(1%,1%,0)}}
.motion-paused{animation-play-state:paused!important}

@media (max-width:1180px){
  .utility{display:none}.site-header{height:78px;padding-inline:5%}.brand{flex-basis:auto}.brand img{width:52px;height:60px}.menu-button{display:flex;align-items:center;gap:12px;padding:14px 0}.menu-button i,.menu-button i:before{content:'';display:block;width:20px;height:2px;background:var(--ink);transition:.2s}.menu-button i:before{transform:translateY(-6px)}
  .site-header nav{position:absolute;left:0;right:0;top:78px;padding:20px 5% 28px;display:none;align-items:stretch;background:#fff;box-shadow:0 25px 45px #071a2d1c}.site-header nav.open{display:flex;flex-direction:column;gap:0;max-height:calc(100svh - 78px);overflow-y:auto}.site-header nav>a:not(.button){padding:10px 0;font-size:.92rem}.site-header nav>a:not(.button):after{display:none}.site-header nav .button{margin-top:12px}.mega-menu{display:none}
}

@media (max-width:1100px){
  .home-hero{height:720px}.service-cards{grid-template-columns:repeat(2,1fr)}.service-card,.service-card:nth-child(4),.service-card:nth-child(5){grid-column:auto}
  .priority-explorer{grid-template-columns:280px minmax(0,1fr)}.priority-panels article{grid-template-columns:1.1fr .9fr}.priority-copy{padding:34px}
  .split-feature{gap:5vw}.feature-image{height:540px}.dark-grid{gap:5vw}
  .industry-list a{grid-template-columns:55px 1fr minmax(180px,.55fr) auto}
  .page-hero-grid{gap:5vw}.page-hero-visual{height:390px}
  .principle-grid{grid-template-columns:repeat(2,1fr)}.offices{grid-template-columns:1fr 1fr}.offices>div{grid-column:1/-1}
  .flow-grid{grid-template-columns:repeat(2,1fr)}
  .footer-grid{grid-template-columns:1.3fr 1fr 1fr}.footer-grid>div:last-child{grid-column:2/4}
}

@media (max-width:820px){
  .footer-grid .footer-offices{grid-template-columns:1fr 1fr}
  .case-card-grid{grid-template-columns:1fr 1fr}.case-index-intro,.case-story,.case-capabilities>.wrap,.case-next{grid-template-columns:1fr;gap:35px}.case-directory-item{gap:28px}.case-detail-heading{display:block}.case-back{display:inline-block;margin-top:28px}.case-detail-media img{aspect-ratio:1.55}
  .home-hero{min-height:690px;height:calc(100svh - 78px)}.home-hero-content{justify-content:flex-end;padding-bottom:115px}.home-hero h1{font-size:clamp(3.25rem,11vw,5.4rem)}.home-hero-content>p{font-size:1rem}.home-hero-shade{background:linear-gradient(0deg,#041425f5 0%,#041425c2 48%,#04142545 100%)}
  .trust-strip>.wrap{padding-block:24px;display:grid;grid-template-columns:repeat(3,1fr);text-align:center}.trust-strip span{grid-column:1/-1;max-width:none}.trust-strip div div{font-size:.9rem}
  .priority-heading{grid-template-columns:1fr;gap:24px}.priority-explorer{grid-template-columns:1fr}.priority-tabs{display:grid;grid-template-columns:repeat(3,1fr);border-right:0;border-bottom:1px solid var(--line)}.priority-tabs button{min-height:94px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:18px;border-right:1px solid var(--line);border-bottom:0}.priority-tabs button:last-child{border-right:0}.priority-tabs button[aria-selected="true"]{box-shadow:inset 0 -4px 0 var(--blue)}.priority-panels article{grid-template-columns:1fr}.priority-media{min-height:400px}.priority-copy{border-left:0;border-top:1px solid var(--line)}
  .statement,.split-feature,.dark-grid,.engagement-band>.wrap,.page-hero-grid,.narrative-grid,.service-intro,.service-scope-grid,.delivery-heading,.industry-pages article,.contact-grid{grid-template-columns:1fr}
  .statement{gap:25px}.feature-image{height:460px}.split-feature{gap:55px}.dark-grid{gap:60px}
  .industry-list a{grid-template-columns:55px 1fr auto;gap:10px}.industry-list a small{grid-column:2;grid-row:2;margin-top:-18px;padding-bottom:15px}.industry-list a i{grid-column:3;grid-row:1/3}
  .section-heading{align-items:start}.final-cta>.wrap{grid-template-columns:1fr;gap:25px}.final-cta .button{width:max-content}
  .service-intro,.service-scope-grid{gap:38px}.delivery-heading .kicker{grid-column:auto}
  .page-hero-visual{height:380px}.page-hero-grid{gap:60px}
  .directory-row{grid-template-columns:50px 1fr}.directory-row ul{grid-column:2}.directory-row{gap:20px}
  .industry-pages article{gap:40px}.model-grid{grid-template-columns:1fr}.model-grid article{min-height:400px;margin:-1px 0 0}.related-services>div:last-child{grid-template-columns:1fr}
  .insight-intro{grid-template-columns:1fr;gap:15px}.insight-list article{grid-template-columns:1fr 1fr;gap:25px}.insight-list article>span{grid-column:1/-1}
  .footer-grid{grid-template-columns:1fr 1fr}.footer-grid>div:last-child{grid-column:auto}.footer-lead{grid-column:1/-1}
}

@media (max-width:540px){
  .footer-grid .footer-offices{grid-template-columns:1fr}
  .case-card-grid,.case-related .case-card-grid{grid-template-columns:1fr}.case-index-hero{padding:75px 0}.case-index-hero h1,.case-detail-heading h1{font-size:3rem}.case-directory-item{grid-template-columns:1fr;padding:25px 0 45px}.case-directory-image{aspect-ratio:1.3}.case-detail-hero{padding-bottom:100px}.case-detail-heading{margin-top:36px}.case-detail-media{margin-top:-58px}.case-detail-media img{aspect-ratio:1.1}.case-story aside nav{margin-top:20px}.case-story-copy article{margin-bottom:35px;padding-bottom:35px}
  .wrap{width:89%}.section{padding-block:60px}h1{font-size:3rem}h2{font-size:2.25rem}
  .home-hero{min-height:650px}.home-hero h1{font-size:3.15rem}.home-hero-content{padding-bottom:110px}.home-hero-content>p{margin-top:22px}.hero-actions{align-items:flex-start;flex-direction:column;gap:22px;margin-top:28px}.home-hero-meta{bottom:20px}.home-hero-meta>span{display:none}
  .trust-strip>.wrap{grid-template-columns:1fr 1fr}.service-cards{grid-template-columns:1fr}.service-card{min-height:310px}.service-card:nth-child(4),.service-card:nth-child(5){grid-column:auto}
  .priority-heading{margin-bottom:35px}.priority-tabs{grid-template-columns:1fr}.priority-tabs button{min-height:70px;flex-direction:row;align-items:center;border-right:0;border-bottom:1px solid var(--line)}.priority-tabs button:last-child{border-bottom:0}.priority-tabs button[aria-selected="true"]{box-shadow:inset 4px 0 0 var(--blue)}.priority-media{min-height:260px}.priority-copy{padding:28px 24px}.priority-copy h3{font-size:1.9rem}
  .section-heading{display:block}.section-heading .text-link{margin-top:24px}.feature-image{height:390px}.feature-image>div{left:24px;right:24px;bottom:24px}.feature-image strong{font-size:1.45rem}
  .statement-points{grid-template-columns:1fr;gap:18px}.statement-points article{padding-right:0}
  .signal-grid{grid-template-columns:1fr}.signal-grid article{min-height:175px}.signal-grid h3{margin-top:35px}.industry-list a{grid-template-columns:40px 1fr auto;min-height:100px;font-size:1.75rem}.industry-list a small{margin-top:-10px}
  .engagement-mini{grid-template-columns:1fr}.engagement-mini article:nth-child(3){grid-column:auto}.round-link{right:20px;bottom:20px}
  .page-hero{padding-block:58px}.page-hero h1{font-size:3rem}.page-hero-visual{height:290px}.page-hero-grid{gap:35px}
  .situation-list{padding:24px}.capability-stack{grid-template-columns:1fr}.capability-stack article{min-height:0}.delivery-heading{gap:18px}.final-cta{padding-block:55px}.final-cta h2{font-size:2.35rem}.final-cta-links{align-items:flex-start;flex-direction:column;gap:17px}
  .principle-grid,.flow-grid{grid-template-columns:1fr}.principle-grid article{min-height:220px}.offices{grid-template-columns:1fr}.offices>div{grid-column:auto}.directory-row{grid-template-columns:35px 1fr;padding-block:45px}.directory-row ul{grid-column:1/-1}.directory-row h2{font-size:2rem}
  .anchor-nav{height:auto;padding-block:22px;justify-content:flex-start;overflow:auto;gap:25px}.anchor-nav a{flex-shrink:0}.industry-pages article{padding-block:60px}
  .insight-list article{grid-template-columns:1fr;padding:38px 0;gap:18px}
  .form-row{grid-template-columns:1fr;gap:0}.lead-form{padding:28px 22px}.fit-table>div{grid-template-columns:1fr;gap:8px;padding-block:16px}.footer-grid{grid-template-columns:1fr}.footer-grid>div:last-child,.footer-lead{grid-column:auto}.footer-bottom{padding-block:22px;align-items:flex-start;gap:15px;flex-direction:column}
}

@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.home-hero-art{animation:none}.reveal{opacity:1;transform:none;transition:none}*{transition-duration:.01ms!important}}
@media (max-width:1100px){.footer-grid .footer-offices{grid-column:1/-1}.footer-grid .footer-contact{grid-column:auto}}
@media (max-width:820px){.footer-grid .footer-offices{grid-column:1/-1}}
@media (max-width:540px){.footer-grid .footer-offices{grid-column:auto}}
