/* Cinematic identity: a scroll-led opening, then a direct path to proof and contact. */
:root{--navy:#0b151e;--copper:#d4a47b;--ink:#17242d;--paper:#f2f4f5}
html{scroll-padding-top:110px}body{background:#f6f7f8}.nav{position:fixed;left:3%;right:3%;top:18px;padding:7px 24px;background:#101b25ed;border:1px solid #ffffff1c;box-shadow:0 15px 40px #0002;backdrop-filter:blur(16px);transition:top .3s,background .3s;gap:25px}.brand img{width:173px;height:52px}.nav nav{font-size:14px}.nav-cta{font-size:14px}.journey{height:100svh;min-height:720px;background:var(--navy);position:relative}.journey-stage{position:sticky;top:0;height:100svh;min-height:720px;overflow:hidden;background:#0b151e;color:white;isolation:isolate}.motion-ready .journey{height:230svh}.scene{position:absolute;inset:0;z-index:-2;overflow:hidden}.scene>img{height:100%;width:100%;display:block;object-fit:cover;object-position:center;transform:scale(1.025);will-change:transform}.scene-shade{position:absolute;inset:0;background:linear-gradient(90deg,#06101de0 0%,#06101d7a 42%,#06101d08 76%),linear-gradient(0deg,#07111ce8,transparent 23%,transparent 80%,#06101d44)}.hero-content{position:absolute;left:7%;top:50%;transform:translateY(-43%);width:83%;max-width:1300px;will-change:opacity,transform}.hero-content>.eyebrow{margin-bottom:30px;letter-spacing:.2em;font-size:12px;color:#e1b996}.hero-content h1{font-size:clamp(56px,6.8vw,110px);line-height:1.05;letter-spacing:-.052em;max-width:1280px;margin-bottom:32px;text-shadow:0 2px 40px #07111c55}.hero-content h1 em{font-size:1.11em;color:#f0dbc7}.hero-copy{font-size:17px;line-height:1.8;max-width:500px;color:#d1d8df}.hero-actions{margin-top:30px}.button{border-radius:2px;padding:18px 22px;background:#e4b98f;border-color:#e4b98f;box-shadow:0 4px 28px #0001;font-size:14px}.button:hover{background:#f0ccaa}.cta-note{color:#c0c8ce;font-size:12px}.journey-message{display:none;position:absolute;left:7%;top:50%;transform:translateY(-45%);max-width:620px}.motion-ready .journey-message{display:block;opacity:0;pointer-events:none}.journey-message>.eyebrow{margin-bottom:26px}.journey-message h2{font-size:clamp(50px,6.2vw,96px);line-height:1.07;margin-bottom:26px}.journey-message h2 em{color:#f0dbc7}.journey-message>p:not(.eyebrow){color:#c3d0da;font-size:17px;line-height:1.8}.journey-flow{display:flex;list-style:none;margin:32px 0;padding:0;gap:0;width:100%;max-width:510px}.journey-flow li{display:flex;flex-direction:column;gap:10px;flex:1;padding-top:17px;border-top:1px solid #ffffff35;position:relative}.journey-flow li:before{content:'';position:absolute;top:-1px;height:2px;width:100%;background:#e4b98f;transform:scaleX(0);transform-origin:left;transition:transform .35s}.journey-flow li.lit:before{transform:scaleX(1)}.journey-flow b{font-size:12px;color:#c7a485;font-weight:400}.journey-flow span{font-size:18px}.journey-link{display:inline-flex;gap:28px;color:#edceb2;border-bottom:1px solid #edceb266;padding-bottom:7px;font-size:14px}.journey-footer{position:absolute;bottom:30px;left:7%;right:7%;display:flex;align-items:center;gap:25px;font-size:12px;color:#d0d8dd}.journey-scroll{display:flex;align-items:center;gap:22px}.journey-scroll>span{font-size:20px;color:#e4b98f}.journey-track{height:1px;background:#ffffff36;flex:1;max-width:160px}.journey-track>span{display:block;height:2px;background:#d4a47b;width:0}.journey-counter{font-variant-numeric:tabular-nums;color:#d6b699}.journey-location{margin-left:auto;color:#aab9c4}.case-section{background:#f6f7f8;padding-top:95px;padding-bottom:80px;position:relative;z-index:2}.case-head{margin-bottom:28px}.case-panel{background:#f6f7f8;color:var(--ink);border-top:1px solid #cfd5da;border-bottom:1px solid #cfd5da;grid-template-columns:1.5fr 1fr;gap:0;overflow:visible}.case-panel:before{display:none}.case-story{padding:55px 55px 45px 0}.case-logo{font-size:90px;letter-spacing:-.08em;margin-bottom:32px;color:#17242d}.case-logo>span{color:#a77a55}.case-story h2{font-size:clamp(34px,3.2vw,50px);font-weight:500}.case-story>p{font-size:17px;color:#566573;max-width:570px}.case-date{color:#52616d;font-size:13px}.case-metric{background:transparent;border:0;padding:45px 0 35px 50px;justify-content:center}.metric-overline{color:#63727d;font-size:12px;letter-spacing:.12em}.case-metric>strong{color:#a57751;font-size:clamp(150px,19vw,285px);line-height:1;margin-top:20px;letter-spacing:-.07em}.metric-label{color:#334854;font-size:24px;margin-top:5px}.metric-line{margin:25px 0;background:#b58d6a}.case-metric p{color:#61717c;font-size:14px}.case-capabilities{border-top:1px solid #d0d7dc}.case-capabilities span{color:#3d505e;border-color:#d0d7dc;padding:25px 20px;font-size:14px}.case-capabilities span:first-child{padding-left:0}.case-capabilities b{color:#987050}.case-caption{font-size:12px;max-width:800px}.expertise{background:#0c1822;color:#f4f6f8;max-width:none;padding-top:100px;padding-bottom:100px}.expertise .eyebrow.dark{color:#d4b191}.section-heading{grid-template-columns:1fr 1.8fr;column-gap:7%;row-gap:25px}.section-heading>.eyebrow{grid-column:1/-1}.section-heading h2{font-size:clamp(38px,4.6vw,70px);grid-column:1;margin:0}.section-heading h2 em{color:#d6b699}.section-heading .section-intro{align-self:end;max-width:380px;justify-self:end;color:#aebcc6;font-size:17px}.expertise-grid{display:block;margin-top:65px;border-bottom:1px solid #ffffff20}.expertise-card{background:none;border-top:1px solid #ffffff20;display:grid;grid-template-columns:170px 1.3fr 1fr;gap:40px;align-items:start;padding:35px 0;margin:0;overflow:visible}.expertise-card:after{display:none}.expertise-card:hover{background:transparent;transform:none}.card-number{display:block;color:#d5b18f;padding-top:10px;font-size:14px}.card-number span{display:block;margin-top:10px;max-width:140px;font-size:12px;color:#7f939f;line-height:1.7}.expertise-card h3{font-size:clamp(26px,3vw,42px);line-height:1.3;margin:0;font-weight:400;color:#e5ebef}.expertise-card>p{color:#abbcc8;margin:8px 0 0;min-height:0;font-size:16px}.card-foot{display:none}.expertise-card:hover h3{color:#e6bb97}.method{padding-top:100px;padding-bottom:100px;background:#f6f7f8}.method h2{font-size:clamp(38px,4.2vw,65px)}.method-steps li{padding:32px 0}.method-steps h3{font-size:24px}.diagnostic{background:#101b25;padding-top:100px;padding-bottom:100px;border-bottom:1px solid #ffffff20;position:relative}.contact-copy h2{font-size:clamp(54px,5.7vw,86px)}.contact-copy h2 em{color:#e2b893}.contact-copy>.eyebrow{color:#d9b390}.contact-details{font-size:13px}footer{background:#101b25}.footer-top .brand img{width:220px;height:75px}.footer-bottom{font-size:12px}
@media(min-width:1800px){.hero-content h1{font-size:115px}.hero-content{left:max(7%,calc((100vw - 1500px)/2))}}
@media(max-width:1000px){.nav{left:2%;right:2%;top:12px;padding:5px 18px}.nav nav{gap:18px}.nav-cta{font-size:12px}.brand img{width:150px}.hero-content{left:6%;width:88%}.hero-content h1{font-size:clamp(58px,8vw,84px)}.scene>img{object-position:62% center}.scene-shade{background:linear-gradient(90deg,#06101dde,#06101d77 60%,#06101d11),linear-gradient(0deg,#07111ce8,transparent 35%)}.section-heading{grid-template-columns:1.4fr 1fr}.expertise-card{grid-template-columns:140px 1.1fr 1fr;gap:24px}.case-story{padding-right:25px}.case-metric{padding-left:25px}.case-metric>strong{font-size:190px}.journey-message{left:6%}}
@media(max-width:800px){.journey,.journey-stage{min-height:760px}.motion-ready .journey{height:205svh;min-height:1500px}.nav nav{display:none}.nav-cta{font-size:12px;gap:12px}.nav{top:10px}.hero-content{top:48%;transform:translateY(-38%)}.hero-content h1{font-size:clamp(48px,8.8vw,72px);line-height:1.1}.hero-content>.eyebrow{font-size:11px;letter-spacing:.1em;margin-bottom:24px}.hero-copy{max-width:450px;font-size:16px}.hero-actions{gap:16px}.scene>img{object-position:66% center}.scene-shade{background:linear-gradient(90deg,#06101de0,#06101d6b),linear-gradient(0deg,#07111ce8,transparent 40%)}.journey-message{max-width:88%;top:47%}.journey-message h2{font-size:clamp(47px,8vw,72px)}.journey-message>p:not(.eyebrow){font-size:16px}.journey-footer{left:6%;right:6%;bottom:25px;flex-wrap:wrap;gap:15px}.journey-location{display:none}.journey-track{margin-left:auto;max-width:90px}.journey-counter{font-size:12px}.case-section{padding-top:60px;padding-bottom:60px}.case-story{padding:35px 0 25px;grid-column:1/-1}.case-logo{font-size:78px}.case-metric{padding:20px 0 35px;grid-column:1/-1;display:grid;grid-template-columns:auto 1fr;column-gap:30px}.metric-overline{grid-column:1/-1;font-size:12px}.case-metric>strong{font-size:140px;margin-top:15px;grid-row:2/4}.metric-label{align-self:end;margin-bottom:5px}.case-metric p{font-size:13px;align-self:start;margin:8px 0}.case-capabilities{grid-template-columns:1fr}.case-capabilities span{padding:19px 0;border-right:0;border-bottom:1px solid #d0d7dc}.case-capabilities span:last-child{border-bottom:0}.section-heading{grid-template-columns:1fr}.section-heading h2{font-size:43px}.section-heading .section-intro{justify-self:start;max-width:500px;font-size:16px}.expertise{padding-top:65px;padding-bottom:65px}.expertise-grid{margin-top:35px}.expertise-card{grid-template-columns:85px 1fr;gap:20px;padding:27px 0}.card-number{font-size:13px;grid-row:1/3}.card-number span{font-size:10px}.expertise-card h3{font-size:28px}.expertise-card>p{grid-column:2;font-size:16px;margin:0}.method{padding-top:65px;padding-bottom:65px}.method h2{font-size:40px}.diagnostic{padding-top:65px;padding-bottom:65px}.contact-copy h2{font-size:59px}}
@media(max-width:420px){.nav-cta{max-width:125px;font-size:12px}.brand img{width:140px}.nav{padding:3px 13px}.hero-content h1{font-size:46px}.hero-content>.eyebrow{max-width:280px}.hero-copy{font-size:16px;line-height:1.7;max-width:325px}.journey-scroll{gap:10px;font-size:11px}.journey-track{max-width:50px}.journey-message h2{font-size:49px}.journey-flow span{font-size:16px}.journey-message>p br{display:none}.expertise-card{grid-template-columns:62px 1fr;gap:15px}.card-number span{font-size:10px}.section-heading h2{font-size:37px}.contact-copy h2{font-size:53px}.case-metric{column-gap:20px}.case-metric>strong{font-size:120px}.metric-label{font-size:20px}}
@media(prefers-reduced-motion:reduce){.motion-ready .journey{height:100svh;min-height:760px}.motion-ready .journey-message{display:none}.hero-content{opacity:1!important;visibility:visible!important;transform:translateY(-43%)!important}.scene>img{transform:none!important}.journey-track{display:none}.journey-counter{display:none}}

/* Floating frosted-glass navigation. */
.nav{
  left:50%;right:auto;transform:translateX(-50%);
  width:min(calc(100% - 48px),1280px);top:18px;
  padding:8px 20px;gap:20px;border-radius:20px;
  background:linear-gradient(135deg,#ffffff0d,#ffffff02),rgba(18,30,42,.72);
  border:1px solid #ffffff24;
  box-shadow:0 12px 38px #02081026,inset 0 1px 0 #ffffff17;
  -webkit-backdrop-filter:blur(24px) saturate(135%);
  backdrop-filter:blur(24px) saturate(135%);
}
.brand-filter-defs{position:absolute;pointer-events:none;overflow:hidden}
.nav .brand img{mix-blend-mode:normal;filter:none}
.nav nav{gap:4px;align-items:center}
.nav nav a{
  color:#edf2f6;border-radius:10px;padding:9px 14px;
  transition:background .2s,color .2s;
}
.nav nav a:hover,.nav nav a:focus-visible{background:#ffffff10;color:#fff}
.nav .nav-cta{
  border:1px solid #e4b98f40;border-radius:12px;
  padding:11px 16px;gap:20px;background:#e4b98f12;
  color:#f2d8bf;line-height:1.4;
  transition:background .2s,border-color .2s;
}
.nav .nav-cta:hover{background:#e4b98f25;border-color:#e4b98f80}
.nav a:focus-visible{outline:2px solid #edc49f;outline-offset:3px}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){
  .nav{background:#172634}
}
@media(max-width:1000px){
  .nav{width:calc(100% - 32px);padding:7px 14px;gap:12px}
  .nav nav a{padding:8px 10px}
  .nav .nav-cta{padding:10px 12px;gap:12px}
}
@media(max-width:800px){
  .nav{width:calc(100% - 24px);top:12px;border-radius:17px;padding:6px 12px}
}
@media(max-width:420px){
  .nav{gap:10px;padding:5px 10px}
  .nav .nav-cta{font-size:12px;max-width:142px;padding:9px 10px;gap:8px}
}
@media(prefers-reduced-transparency:reduce){.nav{background:#172634}}

/* BX1 client mark: preserve original colours and proportions. */
.case-client-logo{display:block;width:104px;height:auto;aspect-ratio:1;object-fit:contain;margin:0 0 32px}
@media(max-width:760px){.case-client-logo{width:88px;margin-bottom:26px}}

/* Contact safeguards retain the existing layout. */
#lead-fields{border:0;padding:0;margin:0;min-width:0}
#lead-fields:disabled{opacity:.65}
#lead-form .form-note a{text-decoration:underline;text-underline-offset:3px}
.privacy-note{margin-top:20px;color:#c4ccd3;font-size:14px;line-height:1.7}
.privacy-note summary{cursor:pointer;text-decoration:underline;text-underline-offset:4px}
.privacy-note p{margin:14px 0 0}

.accessible-heading{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}

/* Native disclosure: mobile navigation works with and without JavaScript. */
.mobile-menu{display:none;position:relative;color:#edf2f6;font-size:14px}
.mobile-menu summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:12px;padding:12px;border:1px solid #ffffff38;border-radius:10px;min-height:44px}
.mobile-menu summary::-webkit-details-marker{display:none}
.mobile-menu summary:focus-visible{outline:2px solid #edc49f;outline-offset:3px}
.nav .mobile-menu nav{position:absolute;top:calc(100% + 14px);right:0;display:flex;flex-direction:column;align-items:stretch;min-width:240px;max-width:calc(100vw - 48px);padding:12px;background:#172634;border:1px solid #ffffff30;border-radius:14px;box-shadow:0 20px 50px #0006}
.nav .mobile-menu:not([open]) nav{display:none}
.nav .mobile-menu nav a{display:block;padding:14px;font-size:14px}
@media(max-width:800px){.mobile-menu{display:block;margin-left:auto}.nav>nav,.nav>.nav-cta{display:none}.nav .brand img{width:150px;height:50px}.nav{min-height:64px}.nav .mobile-menu nav{display:flex}.nav .mobile-menu:not([open]) nav{display:none}}
@media(max-width:420px){.hero-content h1{font-size:clamp(30px,10.8vw,44px)}.hero-content h1 em{font-size:1.03em}.hero-content>.eyebrow{font-size:12px}.hero-actions .cta-note br{display:initial}.hero-actions .cta-note{font-size:12px}.journey-message h2{font-size:clamp(34px,10.5vw,44px)}.contact-copy h2{font-size:clamp(38px,12vw,50px)}}
