/* Reference direction: midnight navy, cool slate, ice and burgundy.
   Typography deliberately inherits the existing Manrope design. */
:root{--navy:#0b1220;--slate:#334155;--burgundy:#7a1e2b;--fog:#f8fafc;--line:#cbd5e1;--white:#fff}
html{background:#0b1220}
.header,.inner-page .header{color:#f8fafc;background:#0b1220;border-color:#cbd5e124}
body:not(.inner-page)>.header{background:transparent}
.header .brand img,.site-footer .brand img{filter:brightness(0) invert(1)}
.header .brand{position:relative;z-index:7}
.header nav>a:not(.button):hover,.header nav [aria-current="page"]{color:#fff;text-decoration:underline;text-decoration-color:#b45e6c;text-underline-offset:8px}
.header .menu span{background:#f8fafc}
.button{background:var(--burgundy);border:1px solid #ffffff12}
.button:hover{background:#942d3c}
.hero{background:radial-gradient(ellipse at 85% 20%,#1d3546 0,transparent 58%),#0b1220;color:#f8fafc;height:auto;min-height:690px;max-height:none}
.hero-image{visibility:hidden}
.hero-wash{background:linear-gradient(90deg,#0b1220 0%,#0b1220dc 30%,#0b122048 62%,transparent 100%);backdrop-filter:none;-webkit-backdrop-filter:none;z-index:-1}
.hero-content{position:relative;z-index:1;padding-top:150px;padding-bottom:115px}
.hero-content>.eyebrow{color:#cbd5e1;letter-spacing:.23em;line-height:1.8}
.hero-intro{color:#cbd5e1}
.hero-content>.rule{width:58px;height:3px;margin-block:26px}
.hero h1{color:#f8fafc}
.hero-content .button{margin-top:4px}
.data-wave{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:-2}
.hero>.ai-signal,.page-hero>.ai-signal{position:relative;z-index:1;color:#cbd5e1;border:0;border-radius:0;background:transparent;padding:0;gap:10px}
.hero>.ai-signal{position:absolute;right:var(--gutter);bottom:26px}
.ai-signal-copy{letter-spacing:.11em;font-size:.75rem}
.hero .ai-signal-track,.page-hero .ai-signal-track{stroke:#cbd5e1;stroke-opacity:.35}
.hero .ai-signal-node,.page-hero .ai-signal-node{fill:#cbd5e1}
.hero .ai-signal-flow,.page-hero .ai-signal-flow{stroke:#ce8490}
.hero .ai-signal-core,.page-hero .ai-signal-core{fill:#ce8490}
.hero .ai-signal-toggle,.page-hero .ai-signal-toggle{color:#cbd5e1}
.hero .ai-signal-toggle:hover,.page-hero .ai-signal-toggle:hover{background:#ffffff12;color:#fff}
.hero :focus-visible,.page-hero :focus-visible,.header :focus-visible,.site-footer :focus-visible{outline-color:#cbd5e1}
.service-band{background:#f8fafc;border-bottom:1px solid var(--line);padding-block:36px}
.service-tile svg{stroke:var(--burgundy)}
.service-tile p{color:#475569}
.approach{background:#f8fafc;border-bottom:1px solid var(--line)}
.approach-copy{padding-block:58px}
.approach-image img,.belief>img{filter:saturate(.6)}
.approach-image:after{background:linear-gradient(90deg,#0b122008,#0b122078)}
.capabilities,.delivery{background:#f8fafc}
.industries{background:#eef2f6}
.cases{background:#f8fafc;border-bottom:1px solid var(--line)}
.industry-photo-grid a,.engagement-card{background:#fff;border-color:#dce2e9}
.engagement-card{border-width:0 0 1px}
.engagement-copy{padding:24px 0 28px}
.engagement-image img,.industry-photo-grid img{filter:saturate(.72)}
.ai-home{position:relative;isolation:isolate;overflow:hidden;background:radial-gradient(ellipse at 90% 0,#243c50,transparent 65%),#0b1220;color:#f8fafc;border-color:#334155;padding-block:80px}
.ai-home p:not(.eyebrow){color:#cbd5e1}
.ai-home .text-link{color:#f8fafc;text-decoration:underline;text-decoration-color:#af5e6a;text-underline-offset:8px}
.belief:after{background:linear-gradient(90deg,#0b1220db,#0b122098 50%,#0b122052)}
.belief-inner{min-height:360px}
.belief-inner>p{color:#e2e8f0}
.contact{background:#eef2f6;padding-block:75px}
.page-hero{position:relative;isolation:isolate;overflow:hidden;background:radial-gradient(ellipse at 100% 100%,#243c50,transparent 70%),#0b1220;color:#f8fafc;padding-top:30px;padding-bottom:40px;border-bottom:0}
.page-hero:after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(90deg,#0b1220ed,#0b1220a8 60%,#0b122020)}
.page-hero .breadcrumb,.page-hero .page-intro{color:#cbd5e1}
.page-hero .breadcrumb a:hover{color:#fff}
.page-hero-grid{position:relative;z-index:1}
.page-hero>.ai-signal{margin-top:30px}
.about-subnav{background:#0b1220;color:#cbd5e1;border-color:#cbd5e12b}
.about-subnav a[aria-current=page],.about-subnav a:hover{color:#fff;border-bottom-color:#b45e6c}
.outcomes,.sector-evidence,.ai-model{background:#e9eef4}
.page-contact{background:#0b1220;padding-block:66px}
.site-footer{background:#0b1220;color:#cbd5e1;border-top:1px solid #cbd5e12b;padding-block:56px}
.site-footer p{color:#aebdce}
.site-footer nav .eyebrow{color:#f8fafc}
.site-footer nav a:hover{color:#fff;text-decoration:underline;text-underline-offset:5px}
.site-footer .footer-tag{color:#f8fafc;margin-top:24px;line-height:1.9}
@media(min-width:1100px){
 .hero{min-height:clamp(660px,78svh,860px)}
 .hero-content{width:min(64vw,950px);padding-top:145px;padding-bottom:115px}
 .hero h1{margin-top:32px}
 .section,.page-section{padding-top:80px;padding-bottom:80px}
}
@media(max-width:1250px){.header nav,.inner-page .header nav{background:#0b1220;border-bottom:1px solid #cbd5e12b}.header nav.is-open{z-index:6}}
@media(max-width:1099px){
 .hero:has(>.ai-signal){min-height:730px;height:auto}
 .hero-content,.hero:has(>.ai-signal) .hero-content{padding-top:135px;padding-bottom:125px}
 .hero>.ai-signal{position:absolute;right:var(--gutter);bottom:24px;margin:0}
}
@media(max-width:760px){
 .hero-wash{background:linear-gradient(180deg,#0b1220ba,#0b122075 55%,#0b122008),linear-gradient(90deg,#0b1220ae,transparent)}
 .hero:has(>.ai-signal){min-height:730px}
 .hero>.ai-signal{left:var(--gutter);right:auto}
 .hero-content>.eyebrow br{display:none}
 .hero-content>.eyebrow{max-width:290px;font-size:.75rem;letter-spacing:.16em}
 .hero-content{width:calc(100% - 2 * var(--gutter));max-width:440px}
 .hero-intro{max-width:300px}
 .service-band.mobile-rail .service-tile{background:#f8fafc;border-color:#cbd5e1}
 .approach-copy{padding-block:45px}
 .engagement-copy{padding:22px 16px}
 .ai-home{padding-block:54px}
 .belief-inner{min-height:440px}
 .page-hero{padding-bottom:25px}
 .page-hero>.ai-signal{margin-left:0}
 .contact,.page-contact{padding-block:48px}
 .site-footer{padding-block:44px}
}
@media(prefers-reduced-motion:reduce){.data-wave{opacity:.85}}

/* Office and correspondence addresses remain distinct in contact and footer. */
.company-addresses{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px}
.company-addresses h3{font-size:.875rem;font-weight:700;letter-spacing:0;line-height:1.5;margin:0 0 10px}
.company-addresses address{font-style:normal;font-size:1rem;line-height:1.75}
.contact>.company-addresses,.page-contact>.company-addresses{grid-column:1/-1;justify-self:stretch;width:100%;padding-top:30px;margin-top:8px;border-top:1px solid var(--line)}
.page-contact>.company-addresses{border-color:#cbd5e133;color:#cbd5e1}
.page-contact>.company-addresses h3{color:#f8fafc}
.site-footer .company-addresses{grid-template-columns:1fr;gap:22px;margin-top:26px}
.site-footer .company-addresses h3{color:#f8fafc}
.site-footer .company-addresses address{font-size:.875rem;color:#cbd5e1}
.site-footer .address-copyright{margin-top:24px}
@media(max-width:550px){.contact>.company-addresses,.page-contact>.company-addresses{grid-template-columns:1fr;gap:26px}}

/* One focused service image in place of the reused photo pair. */
.service-photo-story,.photo-story:has(>figure:only-child){grid-template-columns:1fr}
.service-photo-story img,.photo-story>figure:only-child img{height:clamp(280px,34vw,510px);object-position:center}
