.contact-band{
  position:fixed!important;
  z-index:70;
  top:0;
  left:0;
  right:0;
  height:44px!important;
  padding:0 max(5vw,28px);
  display:flex;
  align-items:center;
  justify-content:space-between;
  background:#0d0716!important;
  color:#fff!important;
  font-size:13px;
  font-weight:800;
  transform:translateY(0);
  transition:transform .34s cubic-bezier(.22,.7,.22,1);
  will-change:transform;
}
.contact-band>div{display:flex;align-items:center;gap:28px}
.contact-band a{display:flex;align-items:center;gap:8px;opacity:.9;transition:opacity .2s}
.contact-band a:hover{opacity:1}
.contact-band a span{color:#8de5ff;font-size:15px}
.contact-band p{margin:0;color:#c8bfd2;text-transform:uppercase;letter-spacing:1.8px;font-size:9px}

.site-header,
.site-header.scrolled{
  position:fixed!important;
  z-index:65;
  top:44px!important;
  left:0;
  right:0;
  height:82px!important;
  padding:0 max(5vw,28px);
  display:flex;
  align-items:center;
  justify-content:space-between;
  background:#fff!important;
  color:#0b1a38!important;
  border-bottom:1px solid #dce4ef;
  box-shadow:0 8px 25px rgba(7,19,44,.06);
  backdrop-filter:none;
  transform:translateY(0);
  transition:transform .34s cubic-bezier(.22,.7,.22,1),box-shadow .2s!important;
  will-change:transform;
}
body.site-chrome-hidden:not(.nav-open) .contact-band{transform:translateY(-100%)}
body.site-chrome-hidden:not(.nav-open) .site-header{transform:translateY(calc(-100% - 44px))}
.site-header .image-brand,
.site-header.scrolled .image-brand{
  width:200px!important;
  height:76px!important;
  padding:0;
  border:0;
  border-radius:0;
  background:#fff!important;
  box-shadow:none;
}
.site-header .image-brand img{display:block;width:100%!important;height:100%!important;max-width:100%!important;object-fit:contain!important}
.site-header nav{display:flex;gap:30px;font-size:13px;font-weight:700}
.site-header nav a{color:#0b1a38!important;opacity:.76;transition:opacity .2s}
.site-header nav a:hover{opacity:1}
.site-header .menu{display:none;background:none;border:0;width:42px;height:42px;padding:6px;cursor:pointer}
.site-header .menu i{display:block;width:24px;height:2px;margin:6px auto;background:#0b1a38!important;transition:.2s}
.nav-backdrop{display:none;position:fixed;border:0;padding:0;background:rgba(4,12,29,.48);inset:124px 0 0;z-index:64;opacity:0;pointer-events:none;transition:opacity .24s}
.inner-public main{padding-top:126px}
.inner-public .service-hero,
.inner-public .audit-hero,
.inner-public .blog-hero,
.inner-public .legal-hero{margin-top:0}

/* V13 typography scale: section headings remain clear without dominating the page. */
.client-intro h2{font-size:clamp(28px,2.8vw,40px)!important;line-height:1.14!important;letter-spacing:-1.7px!important}
.section-heading h2{font-size:clamp(30px,3.15vw,48px)!important;line-height:1.1!important;letter-spacing:-2.15px!important}
.about-copy h2,.contact-copy h2{font-size:clamp(30px,3vw,42px)!important;line-height:1.14!important;letter-spacing:-1.8px!important}
.audit-band h2{font-size:30px!important;letter-spacing:-1.1px!important}
.service-hero h1,.audit-hero h1,.blog-hero h1,.legal-hero h1{font-size:clamp(42px,4.8vw,68px)!important;line-height:.98!important;letter-spacing:-3.4px!important}
.service-overview h2,.detail-heading h2,.included-section h2,.process-section h2,.faq-section h2,.related-section h2,.service-deep-dive h2,.service-assurance h2{font-size:clamp(30px,3.15vw,46px)!important;line-height:1.12!important;letter-spacing:-2px!important}
.service-contact h2{font-size:clamp(30px,3vw,38px)!important;letter-spacing:-1.5px!important}

@media(max-width:1050px){
  .site-header nav{gap:18px}
}
@media(max-width:900px){
  .contact-band p{display:none}
}
@media(max-width:760px){
  .contact-band{height:42px!important;padding:0 18px;font-size:12px}
  .contact-band>div{gap:17px}
  .contact-band a:nth-child(3){display:none}
  .site-header,
  .site-header.scrolled{top:42px!important;height:82px!important;padding:0 20px}
  .site-header .image-brand,
  .site-header.scrolled .image-brand{width:146px!important;height:60px!important}
  .site-header .desktop-cta{display:none}
  .site-header .menu{display:block}
  .site-header nav{
    position:fixed;
    inset:124px 0 auto 0;
    padding:26px 22px;
    flex-direction:column;
    gap:16px;
    background:#fff;
    color:#0b1a38;
    border-bottom:1px solid #dce4ef;
    box-shadow:0 20px 35px rgba(7,19,44,.12);
    transform:translateY(-140%);
    transition:transform .28s;
  }
  .site-header nav.open{transform:none}
  .site-header nav a{font-size:15px;padding:5px 0}
  .inner-public main{padding-top:124px}
  body.nav-open{overflow:hidden}
  .client-intro h2,.section-heading h2,.about-copy h2,.contact-copy h2{font-size:32px!important;letter-spacing:-1.5px!important}
  .service-hero h1,.audit-hero h1,.blog-hero h1,.legal-hero h1{font-size:42px!important;letter-spacing:-2px!important}
  .service-overview h2,.detail-heading h2,.included-section h2,.process-section h2,.faq-section h2,.related-section h2,.service-deep-dive h2,.service-assurance h2{font-size:32px!important;letter-spacing:-1.4px!important}
}
@media(max-width:540px){
  .contact-band a:nth-child(2){display:none}
  .contact-band>div{width:100%;justify-content:center}
}
@media(max-width:760px){body.site-chrome-hidden:not(.nav-open) .site-header{transform:translateY(calc(-100% - 42px))}}
@media(prefers-reduced-motion:reduce){.contact-band,.site-header,.site-header.scrolled{transition:none}}

/* V15 mobile navigation: compact sheet, protected backdrop and a real close state. */
.site-header .menu[aria-expanded="true"] i:first-child{transform:translateY(4px) rotate(45deg)}
.site-header .menu[aria-expanded="true"] i:last-child{transform:translateY(-4px) rotate(-45deg)}
@media(max-width:760px){
  .site-header nav{
    inset:124px 12px auto!important;
    max-height:calc(100dvh - 142px);
    overflow-y:auto;
    padding:14px 20px 17px!important;
    gap:0!important;
    border:1px solid #dce4ef!important;
    border-top:0!important;
    border-radius:0 0 17px 17px;
    box-shadow:0 22px 50px rgba(7,19,44,.2)!important;
    opacity:0;
    visibility:hidden;
    transform:translateY(-12px) scale(.985)!important;
    transform-origin:top;
    transition:opacity .22s,transform .22s,visibility .22s!important;
  }
  .site-header nav.open{opacity:1;visibility:visible;transform:none!important}
  .site-header nav a{display:block;padding:13px 1px!important;border-bottom:1px solid #edf1f6}
  .site-header nav a:last-child{border-bottom:0}
  .nav-backdrop{display:block}
  body.nav-open .nav-backdrop{opacity:1;pointer-events:auto}
}
@media(max-width:540px){.site-header nav{inset-inline:8px!important}}
@media(max-width:1050px){.site-header .desktop-cta{display:none}}
