body > header{position:sticky;top:0;z-index:100;background:var(--paper,#f7f6f2)}
body > header.is-compact{height:80px;min-height:80px;box-shadow:0 3px 14px rgba(16,32,51,.06)}
header.is-compact .header-identity{padding-bottom:0;gap:28px}
header.is-compact .header-identity .brand-image img{width:114px;height:auto}
header.is-compact .header-identity .certification-badge img{width:64px;height:auto}
header.is-compact .header-service-line{display:none}
header.is-compact nav#navigation{top:80px}
html{scroll-padding-top:96px}
@media(max-width:650px){
 body > header.is-compact{height:68px;min-height:68px}
 header.is-compact .header-identity{gap:18px}
 header.is-compact .header-identity .brand-image img{width:94px}
 header.is-compact .header-identity .certification-badge img{width:48px}
 header.is-compact nav#navigation{top:68px}
 html{scroll-padding-top:84px}
}

/* Direct telephone access */
header .header-call-desktop{white-space:nowrap;font-weight:600;font-size:13px;padding:15px 20px;border:1px solid var(--ink,#102033)}
header .header-call-mobile{display:none}
.hero-call-line{font-size:13px;line-height:1.7;margin:16px 0 0;color:var(--muted)}
.hero-call-line a{color:var(--ink,#102033);text-decoration:underline;text-underline-offset:4px;font-weight:600;white-space:nowrap}
@media(max-width:1100px){
 header{gap:18px}
 header .header-call-desktop{display:none}
 header .header-call-mobile{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 12px;border:1px solid currentColor;font-size:12px;font-weight:600;margin-left:auto}
 header .menu-toggle{display:flex;align-items:center;gap:12px;border:0;background:none;font-size:12px}
 header .menu-toggle span{font-size:25px}
 header nav#navigation{display:none;position:absolute;top:146px;left:0;right:0;padding:25px 5%;background:var(--paper,#f7f6f2);border-bottom:1px solid var(--line);flex-direction:column;align-items:stretch;gap:24px}
 header nav#navigation.open{display:flex}
 header.is-compact nav#navigation{top:80px}
}
@media(max-width:650px){
 header{gap:8px}
 header .header-identity{gap:14px}
 header .header-identity .brand-image img{width:110px}
 header .header-identity .certification-badge img{width:56px}
 header .menu-toggle{gap:7px}
 header .header-call-mobile{padding:0 9px}
 header nav#navigation{top:120px}
 header.is-compact nav#navigation{top:68px}
}
@media(max-width:380px){
 header .header-identity{gap:12px}
 header .header-identity .brand-image img{width:100px}
 header .header-identity .certification-badge img{width:46px}
}
