/* Adapted from the existing SmartBolts redesign; scoped to the shared chrome. */
@font-face{font-family:"SBHF Eurostile";src:url("EurostileHeavy.ttf") format("truetype");font-weight:900;font-display:swap}
.sbhf-header,.sbhf-footer,.sbhf-final-cta,.sbhf-mobile-bar{--sbhf-red:#ed1c24;--sbhf-ink:#231f20;font-family:Montserrat,Arial,sans-serif;letter-spacing:normal;line-height:1.5}
:is(.sbhf-header,.sbhf-footer,.sbhf-final-cta,.sbhf-mobile-bar) *{box-sizing:border-box}
.sbhf-container{width:calc(100% - 48px);max-width:1320px;margin-inline:auto}
#wrapper-navbar.sbhf-header{position:relative;z-index:1000;width:100%;background:#f5f5f5;border:0;color:var(--sbhf-ink)}
.sbhf-header .sbhf-container{padding-block:28px 20px}
.sbhf-header-top{display:flex;align-items:center;justify-content:space-between;gap:30px}
.sbhf-logo{display:inline-flex;flex:0 0 225px;text-decoration:none}
.sbhf-logo img{width:225px;height:auto;max-width:100%;object-fit:contain}
.sbhf-header-actions,.sbhf-follow,.sbhf-socials{display:flex;align-items:center;gap:16px}
.sbhf-follow{font-size:14px;font-weight:600;white-space:nowrap}
.sbhf-socials{gap:12px}
.sbhf-socials a{display:inline-flex;align-items:center;justify-content:center;width:22px;height:26px;color:inherit;text-decoration:none}
.sbhf-socials img{width:19px;height:19px;object-fit:contain}
.sbhf-socials a:hover{opacity:.7}
#page a.sbhf-button,.sbhf-button{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:10px 24px;background:var(--sbhf-red);color:white;border:2px solid var(--sbhf-red);border-radius:0;font-size:14px;font-weight:700;line-height:1.3;text-align:center;text-decoration:none;text-transform:none;transition:background-color .18s,color .18s,border-color .18s}
#page a.sbhf-button:hover,.sbhf-button:hover{background:#bf141c;color:white;border-color:#bf141c;text-decoration:none}
#page a.sbhf-button-outline,.sbhf-button-outline{background:transparent;color:var(--sbhf-ink);border-color:var(--sbhf-ink)}
#page a.sbhf-button-outline:hover,.sbhf-button-outline:hover{background:var(--sbhf-ink);border-color:var(--sbhf-ink);color:#fff}
.sbhf-navigation{margin-top:22px}
.sbhf-header ul{list-style:none;margin:0;padding:0}
.sbhf-menu{display:flex;align-items:center;justify-content:space-between;gap:10px}
.sbhf-menu>li{position:relative;display:flex;align-items:center;min-width:0}
#page .sbhf-menu li>a,.sbhf-menu li>a{display:block;color:var(--sbhf-ink);font:600 16px/1.4 Montserrat,Arial,sans-serif;letter-spacing:normal;text-transform:none;text-align:left;text-decoration:none;padding:10px 0}
.sbhf-menu>li>a{position:relative;white-space:nowrap}
.sbhf-menu>li:not(.menu-item-has-children)>a::before{content:"";display:inline-block;width:0;height:29px;margin-right:0;vertical-align:middle;opacity:0;background:var(--sbhf-red) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='2'%3E%3Cpath d='M5 12h14m-7-7 7 7-7 7'/%3E%3C/svg%3E") center/20px no-repeat;clip-path:polygon(50% 0,93% 25%,93% 75%,50% 100%,7% 75%,7% 25%);transition:width .18s,margin .18s,opacity .18s}
.sbhf-menu>li:not(.menu-item-has-children)>a:is(:hover,:focus-visible)::before{width:28px;margin-right:8px;opacity:1}
.sbhf-submenu-toggle{display:inline-flex;align-items:center;justify-content:center;flex:0 0 28px;width:28px;height:30px;padding:4px;margin:0 8px 0 0;border:0;border-radius:0;color:white;background:var(--sbhf-red);clip-path:polygon(50% 0,93% 25%,93% 75%,50% 100%,7% 75%,7% 25%);cursor:pointer}
.sbhf-submenu-toggle svg{display:block;width:20px;height:20px;transition:transform .18s}
.sbhf-submenu-toggle[aria-expanded=true] svg{transform:rotate(90deg)}
.sbhf-menu ul{position:absolute;top:100%;left:0;display:none;min-width:220px;width:max-content;max-width:min(340px,90vw);padding:8px 0;background:white;box-shadow:0 10px 25px #0002;z-index:20}
.sbhf-menu>li:nth-last-child(-n+2)>ul{left:auto;right:0}
.sbhf-menu li.is-open>ul,.sbhf-header:not(.sbhf-enhanced) .sbhf-menu li:is(:hover,:focus-within)>ul{display:block;animation:sbhf-reveal .16s ease-out}
#page .sbhf-menu ul li>a,.sbhf-menu ul li>a{padding:12px 18px;white-space:normal;font-size:16px;line-height:1.45;font-weight:600}
#page .sbhf-menu li>a:hover,#page .sbhf-menu li>a:focus-visible{color:var(--sbhf-red)}
#page .sbhf-menu ul li>a:hover,#page .sbhf-menu ul li>a:focus-visible{background:#f5f5f5}
.sbhf-menu ul li{position:relative}
.sbhf-menu ul ul{top:0;left:100%}
.sbhf-menu ul .sbhf-submenu-toggle{position:absolute;right:4px;top:10px;z-index:1;margin:0}
.sbhf-menu ul li.menu-item-has-children>a{padding-right:44px!important}
.sbhf-menu ul li.is-open>ul{position:static;width:100%;min-width:0;box-shadow:none;border-left:2px solid #ed1c24;padding-left:12px}
.sbhf-menu-toggle,.sbhf-mobile-actions,.sbhf-mobile-bar{display:none}
.sbhf-skip{position:absolute;left:15px;top:0;transform:translateY(-150%);background:#fff;color:#231f20;padding:12px;z-index:30}
.sbhf-skip:focus{transform:none}
#sbhf-main-start{height:0;outline:0}
:is(.sbhf-header,.sbhf-footer,.sbhf-final-cta,.sbhf-mobile-bar) :is(a,button):focus-visible{outline:3px solid #ed1c24;outline-offset:4px}
.sbhf-submenu-toggle:focus-visible{outline:0!important;box-shadow:inset 0 0 0 3px #231f20}
.sbhf-footer{position:relative;background-color:#fff;background-position:center top;background-size:100% 100%;background-repeat:no-repeat;color:#fff;padding-top:clamp(340px,25vw,480px)}
.sbhf-footer-main{display:grid;grid-template-columns:2.25fr 1fr 1.15fr 1.15fr 1.2fr;gap:34px;align-items:start}
.sbhf-footer-logo{display:block;max-width:300px;margin-bottom:22px}
.sbhf-footer-logo img{display:block;width:100%;height:auto}
.sbhf-footer-brand p{font-size:14px;font-weight:500;line-height:1.65;color:#ffffffd1;margin:0 0 18px;max-width:335px}
.sbhf-footer .sbhf-socials a{width:28px;height:28px;background:var(--sbhf-red)}
.sbhf-footer .sbhf-socials img{width:15px;height:15px;filter:brightness(0) invert(1)}
.sbhf-footer .sbhf-socials{gap:10px}
.sbhf-footer-column h2{font:900 20px/1.2 "SBHF Eurostile",Arial,sans-serif;letter-spacing:normal;text-transform:uppercase;color:#fff;margin:3px 0 24px}
.sbhf-footer-links{list-style:none;margin:0;padding:0}
.sbhf-footer-links li{margin:0 0 10px;padding:0}
#page .sbhf-footer-links a,.sbhf-footer-links a{color:#ffffffd1;font:500 14px/1.5 Montserrat,Arial,sans-serif;text-transform:none;text-decoration:none;text-align:left;letter-spacing:normal;overflow-wrap:anywhere}
#page .sbhf-footer-links a:hover,.sbhf-footer-links a:hover{color:#ed1c24}
.sbhf-footer-bottom{display:grid;grid-template-columns:1fr 1fr 1fr;gap:24px;align-items:center;border-top:1px solid #ffffff40;margin-top:44px;padding:30px 0 24px;font-size:12px;color:#ffffffc7}
.sbhf-footer-bottom p{margin:0;font-size:12px;line-height:1.5}
.sbhf-footer-bottom ul{display:flex;flex-wrap:wrap;gap:8px}
.sbhf-footer-bottom li{margin:0}
.sbhf-footer-bottom li+li::before{content:"·";margin-right:8px}
#page .sbhf-footer-bottom a{font-size:12px}
.sbhf-certification{text-align:center;font-weight:800}
.sbhf-copyright{text-align:right}
.sbhf-back-top{position:absolute;right:24px;bottom:80px;width:42px;height:42px;border:0;background:#ed1c24;color:#fff;cursor:pointer}
.sbhf-back-top svg{transform:rotate(-90deg);vertical-align:middle}
.sbhf-final-cta{padding:80px 0;background:#fff;color:#231f20;text-align:center}
.sbhf-final-cta h2{max-width:1050px;margin:0 auto 22px;font:900 clamp(30px,3.2vw,48px)/1.1 "SBHF Eurostile",Arial,sans-serif;text-transform:uppercase;letter-spacing:normal}
.sbhf-final-cta h2 span{color:#ed1c24}
.sbhf-final-cta p{max-width:850px;margin:0 auto 28px;font-size:16px;line-height:1.6}
.sbhf-cta-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:20px}
.sbhf-cta-actions .sbhf-button-outline{order:2}
@keyframes sbhf-reveal{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}
@media(max-width:1199px){
 .sbhf-header-actions .sbhf-follow{display:none}
 .sbhf-menu{flex-wrap:wrap;justify-content:flex-start;column-gap:26px}
 .sbhf-footer-main{grid-template-columns:2fr 1fr 1fr;gap:32px}
 .sbhf-footer-brand{grid-row:span 2}
}
@media(max-width:767px){
 .sbhf-container{width:calc(100% - 40px)}
 .sbhf-header .sbhf-container{padding-block:18px}
 .sbhf-logo{flex-basis:190px}.sbhf-logo img{width:190px}
 .sbhf-header-actions{display:none}
 .sbhf-menu-toggle:not([hidden]){display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;width:44px;height:44px;border:0;border-radius:0;background:#ed1c24;color:#fff;cursor:pointer;flex-shrink:0}
 .sbhf-menu-toggle span{width:23px;height:3px;background:white;transition:transform .18s,opacity .18s}
 .sbhf-menu-toggle[aria-expanded=true] span:first-child{transform:translateY(8px) rotate(45deg)}
 .sbhf-menu-toggle[aria-expanded=true] span:nth-child(2){opacity:0}
 .sbhf-menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-8px) rotate(-45deg)}
 .sbhf-enhanced .sbhf-navigation{display:none}
 .sbhf-enhanced.sbhf-menu-open .sbhf-navigation{display:block}
 .sbhf-navigation{margin-top:18px;border-top:1px solid #ddd;padding-top:12px;max-height:calc(100dvh - 150px);overflow-y:auto;overscroll-behavior:contain}
 .sbhf-menu{display:block}
 .sbhf-menu>li{display:flex;flex-wrap:wrap;border-bottom:1px solid #ddd}
 #page .sbhf-menu>li>a{flex:1;padding:13px 0;font-size:16px;white-space:normal}
 .sbhf-menu>li>a::before{display:none!important}
 .sbhf-menu ul,.sbhf-menu ul ul{position:static;flex-basis:100%;width:100%;max-width:none;min-width:0;box-shadow:none;padding:0 0 8px 15px;background:transparent}
 .sbhf-menu ul .sbhf-submenu-toggle{top:8px}
 #page .sbhf-menu ul li>a{padding-block:10px;font-size:15px}
 .sbhf-mobile-actions{display:flex;flex-direction:column;gap:12px;margin-top:24px;padding-bottom:12px}
 .sbhf-mobile-actions .sbhf-follow{justify-content:center;margin-top:6px}
 .sbhf-footer{padding-top:150px;background-position:35% top;background-size:auto 100%}
 .sbhf-footer-main{grid-template-columns:1fr 1fr;gap:28px 22px}
 .sbhf-footer-brand{grid-column:1/-1;grid-row:auto}
 .sbhf-footer-logo{max-width:240px}
 .sbhf-footer-brand p{max-width:100%}
 .sbhf-footer-column h2{font-size:19px;margin-bottom:16px}
 .sbhf-footer-bottom{grid-template-columns:1fr;gap:16px;padding:24px 0 100px;margin-top:30px}
 .sbhf-certification,.sbhf-copyright{text-align:left}
 .sbhf-back-top{bottom:125px;right:20px}
 .sbhf-mobile-bar{position:fixed;bottom:0;left:0;right:0;display:flex;z-index:999;padding-bottom:env(safe-area-inset-bottom);background:#231f20}
 #page .sbhf-mobile-bar .sbhf-button{width:50%;min-height:62px;padding:10px 16px;font-size:13px;border:0}
 #page .sbhf-mobile-bar .sbhf-button-outline{background:#231f20;color:#fff}
 .sbhf-final-cta{padding:50px 0}
 .sbhf-cta-actions{flex-direction:column;gap:12px}
}
@media(prefers-reduced-motion:reduce){.sbhf-header *,.sbhf-footer *,.sbhf-final-cta *{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* Desktop dropdown arrows reveal on interaction, not on initial load.
   Keep their hit area and keyboard focus; touch devices retain visible toggles. */
@media (min-width:768px) and (hover:hover) and (pointer:fine){
 .sbhf-header .sbhf-menu .sbhf-submenu-toggle{opacity:0;transition:opacity .18s ease}
 .sbhf-header .sbhf-menu li:hover>.sbhf-submenu-toggle,
 .sbhf-header .sbhf-menu li:focus-within>.sbhf-submenu-toggle{opacity:1}
}

/* Header social artwork: slightly larger, retaining original colors. */
.sbhf-header .sbhf-socials a{width:28px;height:30px}
.sbhf-header .sbhf-socials img{width:24px;height:24px;object-fit:contain}
