/* Shared navigation refinement, authorised separately from the locked homepage sections. */
.site-header .services-menu{position:static}
.site-header .services-menu .mega-menu{position:absolute;top:100%;left:50%;right:auto;transform:translateX(-50%);width:min(1280px,calc(100vw - 48px));max-width:none;max-height:calc(100dvh - 155px);overflow:auto;padding:23px;border:1px solid #bcdde9;border-radius:0 0 17px 17px;background:#fff;box-shadow:0 24px 60px #184d6824;display:block;color:#2c5b72}
.site-header .mega-menu .mega-intro{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:0 0 19px;margin:0 0 18px;border:0;border-bottom:1px solid #d5e8ef;background:none}
.site-header .mega-intro>div{display:flex;align-items:center;gap:14px}
.site-header .mega-intro-symbol{display:grid;place-items:center;width:46px;height:46px;background:linear-gradient(135deg,#dcf1fc,#d8f4eb);color:#087c9e;border-radius:13px;flex-shrink:0}
.site-header .mega-intro-symbol>.icon{width:25px;height:25px}
.site-header .mega-menu .mega-intro .eyebrow{font-size:10px;letter-spacing:1px;line-height:1.7;color:#446e83;margin-bottom:4px;display:block}
.site-header .mega-menu .mega-intro h2{font-family:Sora,sans-serif;color:#285b75;font-size:25px;line-height:1.5;font-weight:550;letter-spacing:-.7px;margin:0}
.site-header .mega-menu .mega-intro>.text-link{display:inline-flex;align-items:center;gap:10px;font-size:14px;line-height:1.7;color:#08759f;min-height:38px;padding:8px 13px;border:1px solid #c3e1ec;border-radius:7px;background:#f0f9fe;white-space:nowrap}
.site-header .mega-menu .mega-columns{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:13px;align-items:start}
.site-header .mega-service-group{--menu-colour:#0877ac;--menu-tint:#e4f3fc;--menu-line:#cce4f0;padding:14px 10px 10px;border:1px solid var(--menu-line);border-radius:12px;background:linear-gradient(150deg,#fff,var(--menu-tint))}
.site-header .mega-tone-teal{--menu-colour:#08776f;--menu-tint:#e3f6ee;--menu-line:#cae7dc}
.site-header .mega-tone-green{--menu-colour:#7750af;--menu-tint:#f1eafb;--menu-line:#dfd2ee}
.site-header .mega-tone-amber{--menu-colour:#945a1b;--menu-tint:#fff2df;--menu-line:#eedcc0}
.site-header .mega-tone-violet{--menu-colour:#5064ae;--menu-tint:#eaf0ff;--menu-line:#d5def4}
.site-header .mega-menu .mega-service-group h3{display:flex;align-items:center;gap:8px;min-height:40px;margin:0 3px 10px;font-family:Sora,sans-serif;font-size:14px;line-height:1.6;font-weight:600;color:#315b70}
.site-header .mega-service-group h3>span{display:grid;place-items:center;flex-shrink:0;width:30px;height:30px;background:var(--menu-colour);color:#fff;border-radius:9px}
.site-header .mega-service-group h3 .icon{width:17px;height:17px}
.site-header .mega-columns .mega-service-group>a{display:flex;align-items:flex-start;gap:9px;min-height:43px;margin:0;padding:9px 6px;border:1px solid transparent;border-radius:7px;font-family:'DM Sans',sans-serif;font-size:14px;line-height:1.7;color:#365e74;text-decoration:none}
.site-header .mega-service-icon{display:grid;place-items:center;flex-shrink:0;width:25px;height:25px;background:#ffffffbf;color:var(--menu-colour);border:1px solid var(--menu-line);border-radius:7px}
.site-header .mega-service-icon>.icon{width:15px;height:15px}
.site-header .mega-columns .mega-service-group>a:hover,.site-header .mega-columns .mega-service-group>a[aria-current=page]{background:#fff;border-color:var(--menu-line);color:var(--menu-colour)}
.site-header .mega-menu a:focus-visible,.site-header .mega-specialist-more>summary:focus-visible{outline:3px solid #0c85b3;outline-offset:2px}
.site-header .mega-specialist-more{margin-top:17px;border:1px solid #cce4ec;border-radius:9px;background:#f6fbfe}
.site-header .mega-specialist-more>summary{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:13px 16px;min-height:45px;list-style:none;color:#315f77;font-size:14px;font-weight:600;cursor:pointer}
.site-header .mega-specialist-more>summary::-webkit-details-marker{display:none}
.site-header .mega-specialist-more>summary>.icon{width:15px;height:15px}
.site-header .mega-specialist-more>div{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;padding:4px 15px 15px}
.site-header .mega-specialist-more a{display:flex;align-items:center;gap:8px;min-height:36px;padding:8px;border-radius:6px;background:#fff;border:1px solid #d4e8ef;font-size:13px;line-height:1.7;color:#38627a}
.site-header .mega-specialist-more a>span{display:inline-flex;color:#087bab}
.site-header .mega-specialist-more a .icon{width:17px;height:17px}
@media(max-width:1100px) and (min-width:1001px){.site-header .mega-menu .mega-columns{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:1000px){.site-header .services-menu .mega-menu{position:static;inset:auto;transform:none;width:100%;max-height:none;margin:12px 0;padding:15px;border-radius:12px;box-shadow:none}.site-header .mega-menu .mega-intro{align-items:flex-start;flex-wrap:wrap;gap:13px}.site-header .mega-menu .mega-intro h2{font-size:21px}.site-header .mega-menu .mega-columns{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.site-header .mega-specialist-more>div{grid-template-columns:repeat(2,minmax(0,1fr))}.site-header .mega-menu .mega-service-group h3{font-size:13px}.site-header .mega-columns .mega-service-group>a{font-size:14px;line-height:1.8}}
@media(max-width:500px){.site-header .mega-menu .mega-columns,.site-header .mega-specialist-more>div{grid-template-columns:1fr}.site-header .mega-intro-symbol{width:38px;height:38px}.site-header .mega-menu .mega-intro>.text-link{white-space:normal}.site-header .mega-columns .mega-service-group>a{padding:10px 8px}.site-header .mega-specialist-more>summary{font-size:13px}}

/* Compact desktop dropdown: retain the full catalogue and a viewport-safe scroll fallback. */
@media(min-width:1001px){
 .site-header .services-menu .mega-menu{padding:16px 18px;max-height:min(550px,calc(100dvh - 170px));overscroll-behavior:contain;scrollbar-width:thin}
 .site-header .mega-menu .mega-intro{padding-bottom:10px;margin-bottom:10px;gap:14px}
 .site-header .mega-intro>div{gap:10px}
 .site-header .mega-intro-symbol{width:34px;height:34px;border-radius:10px}
 .site-header .mega-intro-symbol>.icon{width:20px;height:20px}
 .site-header .mega-menu .mega-intro .eyebrow{font-size:9px;line-height:1.3;margin-bottom:2px}
 .site-header .mega-menu .mega-intro h2{font-size:20px;line-height:1.3}
 .site-header .mega-menu .mega-intro>.text-link{font-size:13px;min-height:34px;padding:6px 11px}
 .site-header .mega-menu .ob-mega-link{padding:10px 14px;margin:0 0 12px;gap:10px;border-radius:9px}
 .site-header .mega-menu .ob-mega-link>span{flex-direction:row;align-items:center;flex-wrap:wrap;gap:4px 16px}
 .site-header .mega-menu .ob-mega-link strong{font-size:14px;line-height:1.45}
 .site-header .mega-menu .ob-mega-link small{font-size:12px;line-height:1.45}
 .site-header .mega-menu .ob-mega-link>svg{width:21px;height:21px}
 .site-header .mega-menu .mega-columns{gap:10px}
 .site-header .mega-service-group{padding:10px 8px 8px}
 .site-header .mega-menu .mega-service-group h3{font-size:13px;line-height:1.4;gap:7px;min-height:36px;margin:0 2px 5px}
 .site-header .mega-service-group h3>span{width:25px;height:25px;border-radius:7px}
 .site-header .mega-service-group h3 .icon{width:15px;height:15px}
 .site-header .mega-columns .mega-service-group>a{font-size:13px;line-height:1.45;min-height:34px;padding:6px 4px;gap:7px}
 .site-header .mega-service-icon{width:22px;height:22px;border-radius:6px}
 .site-header .mega-service-icon>.icon{width:14px;height:14px}
 .site-header .mega-specialist-more{margin-top:10px}
 .site-header .mega-specialist-more>summary{padding:9px 12px;min-height:36px;font-size:13px;line-height:1.4}
 .site-header .mega-specialist-more a{font-size:12px;line-height:1.5;padding:7px;min-height:34px}
}
