/* Responsive header patch: preserves existing branding, colours, content and desktop navigation. */
.brand-lockup{display:flex;align-items:center;gap:10px;min-width:0;flex:0 0 auto}
.brand-lockup .brand-logo{display:flex;align-items:center;flex:0 1 auto;min-width:0}
.brand-lockup .brand-name{display:flex;flex-direction:column;justify-content:center;line-height:1.18;white-space:nowrap;color:inherit}
.brand-lockup .brand-name strong{font-size:16px;font-weight:700}
.brand-lockup .brand-name small{font-size:11px;letter-spacing:.02em}
.site-header{gap:12px}
.site-header nav{display:flex;align-items:center;flex-wrap:wrap;gap:clamp(7px,1vw,16px)}
.site-header nav .nav-labour-link{display:inline-flex!important;visibility:visible!important;opacity:1!important;white-space:nowrap}
.mobile-nav-toggle{display:none}
@media(max-width:900px){
 .site-header{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px 14px;overflow:visible}
 .brand-lockup{max-width:100%;gap:8px;min-width:0}
 .brand-lockup .brand-logo img{width:clamp(60px,17vw,86px);max-width:100%;height:auto;object-fit:contain}
 .brand-lockup .brand-name{white-space:normal;min-width:0}
 .brand-lockup .brand-name strong{font-size:14px}
 .brand-lockup .brand-name small{font-size:10px}
 .mobile-nav-toggle{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:42px;padding:8px 11px;border:1px solid rgba(127,146,166,.45);border-radius:9px;background:#205d8c;color:#fff;font:inherit;font-size:13px;font-weight:700;cursor:pointer;white-space:nowrap}
 .mobile-nav-toggle .menu-icon{font-size:18px;line-height:1}
 .site-header nav{display:none!important;position:absolute;z-index:1000;top:100%;left:0;right:0;width:auto;max-height:70vh;overflow-y:auto;flex-direction:column;align-items:stretch;flex-wrap:nowrap;gap:0;padding:8px 14px 14px;background:#fff;color:#10243b;box-shadow:0 12px 24px rgba(0,0,0,.18);border-top:1px solid rgba(127,146,166,.25)}
 .site-header nav.is-open{display:flex!important;visibility:visible!important;opacity:1!important}
 .site-header nav>a,.site-header nav>details>summary{display:flex!important;align-items:center;min-height:42px;padding:8px 6px;font-size:14px;white-space:normal;border-bottom:1px solid rgba(127,146,166,.18)}
 .site-header nav .nav-labour-link{display:flex!important;visibility:visible!important;opacity:1!important}
 .site-header nav .nav-cta{justify-content:center;margin-top:8px}
 .site-header nav details .nav-menu{position:static;display:block;box-shadow:none;min-width:0;width:100%;padding-left:12px}
 .site-header nav details[open] .nav-menu{display:flex;flex-direction:column}
 .site-header nav details .nav-menu a{display:block;padding:9px 6px;font-size:13px}
}
@media(max-width:380px){.brand-lockup .brand-name strong{font-size:13px}.brand-lockup .brand-name small{font-size:9px}.mobile-nav-toggle{padding:7px 9px}}
