/* Permanent shared navigation and consultancy layout. */
html { scroll-padding-top: 24px; }
.preview-polish .header { height:auto; min-height:100px; position:relative; gap:24px; }
.preview-polish .header nav { gap:20px; font-size:14px; }
.header nav>a { padding-block:10px; }
.header nav .nav-cta { padding:10px 15px; }
.header .consultancy-dropdown>summary { font-size:14px; min-height:44px; }
.consultancy-dropdown>summary::after { content:'+'; font-size:18px; line-height:1; }
.consultancy-dropdown[open]>summary::after { content:'−'; }
.current-section { color:var(--blue); text-decoration:underline; text-underline-offset:6px; }
.consultancy-options { width:310px; }
.header nav .consultancy-options a { min-height:44px; padding:12px 14px; }
.header nav a[aria-current=page] { color:var(--blue); }
.menu { min-width:76px; min-height:44px; background:white; border:1px solid var(--line); border-radius:4px; padding:9px 14px; }
.breadcrumbs { padding-top:24px; padding-bottom:0; font-size:14px; color:#53627a; }
.breadcrumbs ol { display:flex; flex-wrap:wrap; gap:8px 12px; list-style:none; margin:0; padding:0; }
.breadcrumbs li+li::before { content:'/'; margin-right:12px; color:#8491a4; }
.breadcrumbs a { text-decoration:underline; text-underline-offset:4px; padding-block:5px; }
.breadcrumbs [aria-current=page] { color:var(--ink); }
.preview-polish .consultancy-page-heading { padding-top:28px; padding-bottom:24px; }
.preview-polish .consultancy-page-heading h1 { font-size:clamp(32px,3.8vw,48px); line-height:1.22; max-width:1000px; }
.audience-switcher { display:flex; flex-wrap:wrap; gap:12px; padding-bottom:24px; }
.audience-switcher a { display:flex; align-items:center; justify-content:center; min-height:48px; padding:10px 20px; border:1px solid #c4d0e1; border-radius:4px; color:var(--ink); font-size:16px; font-weight:600; line-height:1.5; background:#fff; }
.audience-switcher a:hover { border-color:var(--blue); background:#eaf0ff; }
.audience-switcher a[aria-current=page] { background:var(--ink); border-color:var(--ink); color:white; }
.contents-wrap { padding-bottom:28px; }
.page-contents { border-top:1px solid var(--line); border-bottom:1px solid var(--line); max-width:780px; }
.page-contents>summary { cursor:pointer; min-height:48px; padding:12px 0; font-size:16px; font-weight:600; }
.page-contents>nav { display:grid; grid-template-columns:1fr 1fr; gap:0 28px; padding:0 0 16px; }
.page-contents a { display:block; padding:9px 0; font-size:16px; line-height:1.6; color:#233c7b; text-decoration:underline; text-underline-offset:4px; }
/* Explicit classes keep the first service band coloured despite other controls. */
body.completed-consultancy main>section.service-band { width:100%; max-width:none; margin:0; padding-left:max(36px,calc((100% - 1240px)/2 + 36px)); padding-right:max(36px,calc((100% - 1240px)/2 + 36px)); padding-top:56px; padding-bottom:56px; }
body.completed-consultancy main>section.service-band.color-band { background:#edf3fa; }
body.completed-consultancy main>section.service-band.white-band { background:#fff; }
body.completed-consultancy main>section.service-band .eyebrow { font-size:14px; }
main .page-title { font-size:clamp(32px,3.8vw,48px); line-height:1.22; letter-spacing:-.02em; }
.preview-polish .team-details h3 { line-height:1.45; letter-spacing:normal; overflow-wrap:normal; }
.preview-polish .team-details>section { min-width:0; }
.preview-polish .eyebrow { font-size:14px; }
.preview-polish .pathways>a { transition:background .15s; }
.preview-polish .pathways>a:focus-visible { background:#e8eff8; }
@media(max-width:1200px) {
  .preview-polish .header { min-height:90px; }
  .preview-polish .header .menu { display:block; }
  .preview-polish .header #site-navigation { display:none; position:absolute; top:100%; left:0; right:0; max-height:calc(100dvh - 90px); overflow-y:auto; background:white; padding:18px 36px 24px; border-bottom:1px solid var(--line); box-shadow:0 12px 24px #14233918; align-items:stretch; flex-direction:column; gap:4px; font-size:16px; }
  .preview-polish .header #site-navigation.open { display:flex; }
  .header #site-navigation>a { min-height:44px; padding:10px 0; }
  .header #site-navigation .nav-cta { padding:10px 16px; margin-top:8px; text-align:center; }
  .header #site-navigation .language-link { border:0; }
  .header #site-navigation .consultancy-dropdown>summary { font-size:16px; justify-content:space-between; }
  .consultancy-options { position:static; width:auto; min-width:0; box-shadow:none; border:0; border-left:2px solid var(--line); border-radius:0; margin:4px 0 12px; padding:0 0 0 10px; }
  .header #site-navigation .consultancy-options a { font-size:16px; }
}
@media(max-width:760px) {
  .preview-polish .header { min-height:84px; }
  .preview-polish .header #site-navigation { padding-inline:22px; max-height:calc(100dvh - 84px); }
  .breadcrumbs { padding-top:20px; }
  .preview-polish .consultancy-page-heading { padding-top:22px; padding-bottom:20px; }
  .audience-switcher { gap:8px; padding-bottom:20px; }
  .audience-switcher a { justify-content:flex-start; padding:10px 14px; font-size:16px; flex:1 0 100%; }
  .contents-wrap { padding-bottom:24px; }
  .page-contents>nav { grid-template-columns:1fr; }
  body.completed-consultancy main>section.service-band { padding:36px 22px; }
  .preview-polish .team-details h3 { min-height:0; }
}
@media(prefers-reduced-motion:reduce) {
  html { scroll-behavior:auto; }
  *,*::before,*::after { transition:none!important; }
}
