/* Shared navigation and closing treatment across the four approved pages. */
:root{--site-header-height:97px}
html{scroll-padding-top:calc(var(--site-header-height) + 24px)}
.d-header{--d-rule:rgba(31,43,81,.16);--d-cyan:#48d4ff;--d-blue:#489aff;position:sticky;top:0;z-index:50;background:rgba(255,255,255,.97);border-bottom:1px solid var(--d-rule);backdrop-filter:blur(16px)}
.d-header>.d-header-inner{width:calc(100% - 96px);max-width:1320px;display:flex;align-items:center;justify-content:space-between;gap:30px;min-height:96px;margin-inline:auto}
.d-header .d-logo{width:153px;height:auto}
.d-header .d-nav{display:flex;align-items:center;gap:32px;margin-left:auto;margin-right:35px}
.d-header .d-nav a{font-size:16px;font-weight:400;line-height:1.5;position:relative;padding:12px 0}
.d-header .d-nav a::after{content:"";position:absolute;bottom:5px;left:0;right:auto;width:100%;height:2px;background:#48d4ff;transform:scaleX(0);transform-origin:left;transition:transform .2s}
.d-header .d-nav a:hover::after,.d-header .d-nav a[aria-current]::after{transform:scaleX(1)}
.d-header .d-button{display:inline-flex;align-items:center;justify-content:space-between;padding:13px 18px;min-height:47px;font-size:15px;font-weight:600;line-height:1.3;gap:22px;border:1px solid transparent;border-radius:3px;background:#48d4ff;color:#1f2b51}
.d-header .d-button span{display:block;font-size:23px;font-weight:400;line-height:1}
.d-header .d-menu-toggle,.d-header .d-mobile-menu{display:none}
.d-header .d-mobile-menu[hidden]{display:none}
.d-close>.d-container,.d-footer>.d-container{width:calc(100% - 96px);max-width:1320px}
.d-close p{color:#c0c8dc}
.d-close-card>.d-button{justify-content:space-between;font-weight:600;font-size:16px;line-height:1.3;border:1px solid transparent}
.d-footer nav a:hover{color:white}
body[data-page="experience"] .d-close{background:linear-gradient(to bottom,#dcdfe8 0,#dcdfe8 calc(50% + 8px),#0b1121 calc(50% + 8px),#0b1121 100%)}
/* Make room for the shared sticky header when following a case-study link. */
.experience-case{scroll-margin-top:0;min-width:0}
.experience-cases{grid-template-columns:minmax(0,1fr);min-width:0}
.experience-copy .study-identity{min-width:0}
.experience-copy .d-client-logo{min-width:0}
/* The approved homepage section has a white background: use navy for readability. */
.home-route-link{display:inline-flex;align-items:center;gap:14px;margin-top:30px;font-size:18px;font-weight:500;line-height:1.5;color:#1f2b51;text-underline-offset:5px}
.home-route-link span{color:#48d4ff;font-size:23px}
.home-route-link:hover{text-decoration:underline}
.home-route-link:focus-visible{outline:3px solid #489aff;outline-offset:6px}
@media(max-width:1100px){
 :root{--site-header-height:85px}
 .d-header>.d-header-inner{width:calc(100% - 64px);min-height:84px;gap:20px}
 .d-header .d-logo{width:132px}
 .d-header .d-nav{gap:20px;margin-right:8px}
 .d-header .d-button{gap:12px;padding:13px}
 .d-close>.d-container,.d-footer>.d-container{width:calc(100% - 64px)}
}
@media(max-width:800px){
 :root{--site-header-height:79px}
 .d-header>.d-header-inner{width:calc(100% - 44px);min-height:78px;gap:15px}
 .d-header .d-nav{display:none}
 .d-header .d-logo{width:123px}
 .d-header-inner>.d-button{margin-left:auto;font-size:13px;min-height:42px;padding:11px 13px;gap:12px}
 .d-header-inner>.d-button span{font-size:19px}
 .d-header .d-menu-toggle{display:flex;flex-direction:column;justify-content:center;gap:6px;background:transparent;border:0;width:35px;height:44px;padding:5px;cursor:pointer;flex-shrink:0}
 .d-menu-toggle span{display:block;width:25px;height:2px;background:#1f2b51;transition:transform .2s}
 .d-menu-toggle[aria-expanded=true] span:first-child{transform:translateY(4px) rotate(45deg)}
 .d-menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-4px) rotate(-45deg)}
 .d-header .d-mobile-menu:not([hidden]){display:flex;flex-direction:column;padding:12px 22px 25px;gap:0;border-top:1px solid var(--d-rule)}
 .d-mobile-menu>a:not(.d-button){padding:14px 0;font-size:20px}
 .d-mobile-menu a[aria-current]{color:#1f2b51;font-weight:600}
 .d-header .d-mobile-menu .d-button{margin-top:10px;max-width:250px}
 .d-close>.d-container,.d-footer>.d-container{width:calc(100% - 44px)}
 .experience-copy .study-identity{flex-wrap:wrap;height:auto;min-height:80px}
 .experience-copy .d-client-logo{flex:0 1 auto}
 .experience-copy .d-sector{max-width:100%}
 .home-route-link{font-size:17px;margin-top:28px;gap:10px}
}
@media(max-width:560px){
 :root{--site-header-height:73px}
 .d-header>.d-header-inner{min-height:72px;gap:10px}
 .d-header .d-logo{width:112px}
 .d-header-inner>.d-button{font-size:12px;padding:10px;gap:8px}
 .d-header-inner>.d-button span{display:none}
}
@media(prefers-reduced-motion:reduce){.d-header .d-nav a::after,.d-menu-toggle span{transition:none}}
