/* Approved header B, scoped to the shared header. Hover softened by about 12.5%. */
.sf-header-b{--sf-nav-hover:#122D47}
.sf-header-b .sf-nav-trigger .sf-nav-chevron{display:block;width:14px;height:14px;color:var(--sf-accent);transition:transform 180ms ease,color 180ms ease}
.sf-nav-chevron svg{display:block}
.sf-header-b .sf-nav-group.is-open .sf-nav-chevron{transform:rotate(180deg)}
.sf-header-b .sf-nav-inner{gap:0}
.sf-header-b .sf-nav .sf-nav-list{width:100%;flex-wrap:nowrap;justify-content:space-between;gap:10px;padding-block:7px}
.sf-header-b .sf-nav .sf-nav-list>li{flex:0 0 auto}
.sf-header-b .sf-nav .sf-nav-list>li>a,.sf-header-b .sf-nav-group-heading>a{position:relative;min-height:52px;padding:0 12px;font-size:16.5px;font-weight:400;line-height:1.4;white-space:nowrap;box-shadow:none}
.sf-header-b .sf-nav-group-heading{position:relative;border-radius:2px;transition:background-color 180ms ease}
.sf-header-b .sf-nav-group-heading>a{padding-right:0}
.sf-header-b .sf-nav-trigger{width:44px;min-height:52px;flex:0 0 44px}
.sf-header-b .sf-nav .sf-nav-list>li>a{border-radius:2px;transition:background-color 180ms ease,color 180ms ease}
.sf-header-b .sf-nav .sf-nav-list>li>a::after,.sf-header-b .sf-nav-group-heading::after{content:"";position:absolute;left:12px;right:12px;bottom:6px;height:1px;background:var(--sf-accent);opacity:0;transform:scaleX(.7);transition:opacity 180ms ease,transform 180ms ease;pointer-events:none}
.sf-header-b .sf-nav .sf-nav-list>li>a:is(:hover,:focus-visible,[aria-current=page])::after,.sf-header-b .sf-nav-group-heading:is(:hover,:focus-within)::after,.sf-header-b .sf-nav-group-heading:has(a[aria-current=page])::after{opacity:1;transform:scaleX(1)}
.sf-header-b .sf-nav .sf-nav-list>li>a[aria-current=page],.sf-header-b .sf-nav-group-heading>a[aria-current=page]{color:var(--sf-accent-hover);box-shadow:none}
.sf-header-b .sf-nav :is(a,button):focus-visible{outline:2px solid var(--sf-focus);outline-offset:3px;z-index:1}
@media(hover:hover){.sf-header-b .sf-nav .sf-nav-list>li>a:hover,.sf-header-b .sf-nav-group-heading:hover{background:var(--sf-nav-hover)}.sf-header-b .sf-nav-group-heading:hover>a,.sf-header-b .sf-nav-group-heading:hover .sf-nav-chevron{color:var(--sf-accent-hover)}}
.sf-header-b .sf-nav .sf-nav-list>li>a:focus-visible,.sf-header-b .sf-nav-group-heading:focus-within{background:var(--sf-nav-hover)}
@media(min-width:1001px) and (max-width:1100px){
 .sf-header-b .sf-nav .sf-nav-list{gap:4px}
 .sf-header-b .sf-nav .sf-nav-list>li>a,.sf-header-b .sf-nav-group-heading>a{font-size:16px;padding-inline:8px}
 .sf-header-b .sf-nav-group-heading>a{padding-right:0}
 .sf-header-b .sf-nav-trigger{width:44px;flex-basis:44px}
}
@media(max-width:1000px){
 .sf-header-b .sf-header-top{flex-wrap:wrap;gap:18px;padding-block:20px}
 .sf-header-b .sf-brand{flex:1}
 .sf-header-b .sf-header-contact{order:3;width:100%;justify-content:space-between}
 .sf-js .sf-header-b .sf-menu-toggle{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;min-width:52px;min-height:52px;padding:6px;background:transparent;border:1px solid var(--sf-line);border-radius:3px;color:var(--sf-text);font-size:10px;line-height:1.4}
 .sf-header-b .sf-menu-icon{width:22px;height:16px;display:flex;flex-direction:column;justify-content:center;gap:6px}
 .sf-header-b .sf-menu-icon i{width:22px;height:1px;background:currentColor;display:block}
 .sf-header-b .sf-menu-toggle[aria-expanded=true] i:first-child{transform:translateY(3.5px) rotate(45deg)}
 .sf-header-b .sf-menu-toggle[aria-expanded=true] i:last-child{transform:translateY(-3.5px) rotate(-45deg)}
 .sf-js .sf-header-b .sf-nav:not(.is-open){display:none}
 .sf-header-b .sf-nav-inner{display:block;padding-block:8px 18px}
 .sf-header-b .sf-nav .sf-nav-list{display:block;padding:0}
 .sf-header-b .sf-nav .sf-nav-list>li>a,.sf-header-b .sf-nav-group-heading>a{min-height:54px;padding:0 12px;font-size:16px;border:0;white-space:normal;flex:1;min-width:0}
 .sf-header-b .sf-nav .sf-nav-list>li,.sf-header-b .sf-nav-group-heading{border-bottom:1px solid var(--sf-soft-line)}
 .sf-header-b .sf-nav-group-heading{border-bottom:0}
 .sf-header-b .sf-nav-trigger{width:52px;flex-basis:52px;min-height:54px;border-left:1px solid var(--sf-soft-line)}
 .sf-header-b .sf-nav .sf-nav-list>li>a::after,.sf-header-b .sf-nav-group-heading::after{bottom:0}
 .sf-header-b .sf-nav .sf-mobile-phone{display:flex!important;min-height:48px;margin-top:12px;color:var(--sf-accent)!important;border:0}
}
@media(max-width:560px){.sf-header-b .sf-header-top{gap:16px;padding-block:18px}.sf-header-b .sf-header-contact .sf-button{width:100%;justify-content:center}}
.sf-header-b .sf-nav-panel{width:min(430px,calc(100vw - 48px));padding:10px;background:var(--sf-bg);border:1px solid var(--sf-line);box-shadow:0 12px 26px rgba(7,24,39,.22);max-height:calc(100svh - 195px);overflow-y:auto;overscroll-behavior:contain}
.sf-header-b .sf-nav .sf-nav-panel a{min-height:48px;padding:11px 14px;font-size:15px;line-height:1.5;white-space:normal;overflow-wrap:break-word;border-left:1px solid transparent;color:var(--sf-text)}
.sf-header-b .sf-nav .sf-nav-panel a:is(:hover,:focus-visible){background:var(--sf-nav-hover);border-left-color:var(--sf-accent);color:var(--sf-accent-hover)}
.sf-header-b .sf-nav .sf-nav-panel a[aria-current=page]{color:var(--sf-accent-hover);border-left-color:var(--sf-accent);box-shadow:none}
@media(max-width:1000px){
 .sf-header-b .sf-nav-panel{position:static;width:auto;padding:6px 0 10px;margin:0 12px;border:0;border-top:1px solid var(--sf-soft-line);background:transparent;box-shadow:none;max-height:none;overflow:visible}
 .sf-header-b .sf-nav .sf-nav-panel a{padding:12px 14px;font-size:15px;min-height:48px}
}
@media(prefers-reduced-motion:reduce){.sf-header-b *,.sf-header-b *::after{transition:none!important;animation:none!important}}
@media(scripting:enabled) and (max-width:1000px){
 .sf-header-b .sf-nav:not(.is-open){display:none}
 .sf-page:not(.sf-js) .sf-header-b .sf-menu-toggle{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;min-width:52px;min-height:52px;padding:6px;background:transparent;border:1px solid var(--sf-line);border-radius:3px;color:var(--sf-text);font-size:10px;line-height:1.4}
}

/* A parent section is highlighted without claiming it is the current page. */
.sf-header-b .sf-nav-group-heading:has(a[data-active-section])::after,.sf-header-b .sf-nav-list>li>a[data-active-section]::after{opacity:1;transform:scaleX(1)}
.sf-header-b .sf-nav a[data-active-section]{color:var(--sf-accent-hover);box-shadow:none}

/* Mobile contact hierarchy: existing direct-call link, one primary CTA in hero. */
@media(max-width:1000px){
 .sf-header-b .sf-header-top{padding-block:14px;row-gap:8px}
 .sf-header-b .sf-header-contact{justify-content:flex-end;gap:0}
 .sf-header-b .sf-header-contact>.sf-button{display:none}
 .sf-header-b .sf-header-phone{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:8px 14px;border:1px solid var(--sf-accent-dark);border-radius:3px;color:var(--sf-accent);font-size:15px;line-height:1.4;text-decoration:none}
 .sf-header-b .sf-header-phone:focus-visible{outline:2px solid var(--sf-focus);outline-offset:3px}
 .sf-header-b .sf-header-phone:is(:hover,:active){color:var(--sf-accent-hover);border-color:var(--sf-accent)}
}

/* Shared sticky enhancement. At scroll position zero the approved B header is retained. */
.sf-sticky-slot{pointer-events:none;overflow-anchor:none}
html.sf-sticky-header{scroll-padding-top:calc(var(--sf-sticky-height,0px) + 16px)}
html.sf-sticky-header .sf-skip{z-index:220}
html.sf-sticky-header .sf-toc{top:calc(var(--sf-sticky-height,0px) + 24px)}
.sf-header-b.sf-sticky-ready{position:fixed;inset:0 0 auto;z-index:200;overflow-anchor:none}
.sf-header-b.sf-sticky-ready .sf-header-top{transition:padding 180ms ease,gap 180ms ease,grid-template-rows 180ms ease}
.sf-header-b.sf-sticky-ready .sf-brand{transition:gap 180ms ease}
.sf-header-b.sf-sticky-ready .sf-monogram{transition:width 180ms ease,height 180ms ease,font-size 180ms ease,border-width 180ms ease}
.sf-header-b.sf-sticky-ready .sf-brand strong{transition:font-size 180ms ease}
.sf-header-b.sf-sticky-ready .sf-brand>span>span{max-height:3.5em;overflow:hidden;transition:max-height 180ms ease,margin-top 180ms ease,opacity 150ms ease}
.sf-header-b.sf-sticky-ready .sf-nav .sf-nav-list{transition:padding 180ms ease}
.sf-header-b.sf-sticky-ready .sf-nav-list>li>a,
.sf-header-b.sf-sticky-ready .sf-nav-group-heading>a,
.sf-header-b.sf-sticky-ready .sf-nav-trigger{transition:min-height 180ms ease,background-color 180ms ease,color 180ms ease}
.sf-header-b.sf-sticky-ready .sf-nav-panel{max-height:var(--sf-sticky-menu-space,calc(100svh - 200px))}
.sf-header-b.sf-sticky-compact .sf-header-top{padding-block:6px}
.sf-header-b.sf-sticky-compact .sf-brand{gap:10px}
.sf-header-b.sf-sticky-compact .sf-monogram{width:36px;height:40px;font-size:29px}
.sf-header-b.sf-sticky-compact .sf-brand strong{font-size:24px}
.sf-header-b.sf-sticky-compact .sf-brand>span>span{max-height:0;margin-top:0;opacity:0}
.sf-header-b.sf-sticky-compact .sf-header-phone{padding-block:6px;font-size:15px}
.sf-header-b.sf-sticky-compact .sf-header-contact>.sf-button{min-height:44px;padding:8px 16px;font-size:14px;white-space:nowrap}
.sf-header-b.sf-sticky-compact .sf-nav .sf-nav-list{padding-block:3px}
.sf-header-b.sf-sticky-compact .sf-nav-list>li>a,
.sf-header-b.sf-sticky-compact .sf-nav-group-heading>a,
.sf-header-b.sf-sticky-compact .sf-nav-trigger{min-height:44px}
@media(max-width:1000px){
 .sf-header-b.sf-sticky-ready .sf-header-top{display:grid;grid-template-columns:minmax(0,1fr) 52px;grid-template-rows:auto 44px;column-gap:18px;row-gap:8px}
 .sf-header-b.sf-sticky-ready .sf-brand{grid-column:1;grid-row:1;min-width:0}
 .sf-header-b.sf-sticky-ready .sf-menu-toggle{grid-column:2;grid-row:1;justify-self:end}
 .sf-header-b.sf-sticky-ready .sf-header-contact{grid-column:1/-1;grid-row:2;min-width:0}
 .sf-header-b.sf-sticky-ready .sf-nav{position:absolute;top:100%;inset-inline:0;background:var(--sf-bg);max-height:var(--sf-sticky-menu-space,60svh);overflow-y:auto;overscroll-behavior:contain;border-bottom:1px solid var(--sf-line);box-shadow:0 12px 24px rgba(7,24,39,.18)}
 .sf-header-b.sf-sticky-ready .sf-nav-panel{max-height:none;overflow:visible}
 .sf-header-b.sf-sticky-compact .sf-header-top{grid-template-columns:minmax(0,1fr) 44px 48px;grid-template-rows:auto 0px;gap:0 8px;padding-block:8px}
 .sf-header-b.sf-sticky-compact .sf-brand{gap:0}
 .sf-header-b.sf-sticky-compact .sf-monogram{width:0;height:0;border-width:0;font-size:0;overflow:hidden}
 .sf-header-b.sf-sticky-compact .sf-brand strong{font-size:20px;white-space:nowrap}
 .sf-header-b.sf-sticky-compact .sf-header-contact{grid-column:2;grid-row:1;order:0;width:auto;justify-content:center}
 .sf-header-b.sf-sticky-compact .sf-menu-toggle{grid-column:3;grid-row:1;min-width:48px;min-height:44px;padding:4px;gap:3px}
 .sf-header-b.sf-sticky-compact .sf-header-phone{display:inline-flex;width:44px;height:44px;min-height:44px;padding:0;font-size:0;line-height:1;overflow:hidden}
 .sf-header-b.sf-sticky-compact .sf-header-phone::before{content:"";display:block;width:19px;height:19px;background:currentColor;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M5.5 3.5h3l1.5 5-2 1.5a15 15 0 0 0 6.5 6.5l1.5-2 5 1.5v3a2 2 0 0 1-2 2C10.4 20.4 3.6 13.6 3.5 5.5a2 2 0 0 1 2-2Z' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/contain no-repeat}
}
@media(max-width:560px){.sf-header-b.sf-sticky-ready:not(.sf-sticky-compact) .sf-header-top{column-gap:16px}}
.sf-header-b.sf-sticky-measuring,
.sf-header-b.sf-sticky-measuring *{transition:none!important}
@media(prefers-reduced-motion:reduce){.sf-header-b.sf-sticky-ready *{transition:none!important}}
