/* v38, true shared header. This CSS uses unique class names and the #ch38-header
   ID to prevent older homepage/service styles from repositioning the navigation. */
#ch38-header{position:sticky;top:0;z-index:40;width:100%;background:rgba(255,255,255,.99);border-bottom:1px solid #e4e8eb;box-sizing:border-box;color:#151a22;font-family:Arial,"Helvetica Neue",sans-serif}
#ch38-header *,#ch38-header *::before,#ch38-header *::after{box-sizing:border-box}
#ch38-header .ch38-inner{width:calc(100% - 36px);max-width:1880px;margin:0 auto;min-height:144px;display:grid;grid-template-columns:minmax(0,410px) minmax(0,1fr) 290px;gap:22px;align-items:center}
#ch38-header .ch38-brand{display:block;width:100%;min-width:0;align-self:center;background:none;text-decoration:none}
#ch38-header .ch38-brand img{display:block;width:100%;height:auto;max-height:none;object-fit:contain;clip-path:none}
#ch38-header .ch38-actions{display:flex;flex-direction:column;justify-content:center;gap:8px;width:100%;background:transparent;margin:0;padding:0;align-self:center}
#ch38-header .ch38-request{display:flex;align-items:center;justify-content:center;width:100%;min-height:60px;padding:12px 18px;background:#e43c38!important;border-radius:7px;color:#fff!important;text-align:center;text-decoration:none;font-size:1.16rem;font-weight:800;line-height:1.25;box-shadow:0 9px 23px rgba(228,60,56,.14)}
#ch38-header .ch38-request:hover{background:#c92f2c!important}
#ch38-header .ch38-phone{display:block;text-align:center;color:#d43736;text-decoration:none;white-space:nowrap;font-size:1.45rem;font-weight:800;line-height:1.25}
#ch38-header .ch38-menu-toggle{display:none!important}
#ch38-header .ch38-nav{display:grid!important;position:static!important;width:100%!important;height:auto!important;min-width:0!important;margin:0!important;padding:0!important;align-self:center!important;justify-content:stretch!important;justify-items:center!important;align-content:center!important;grid-template-columns:minmax(0,1fr)!important;grid-template-rows:44px 1px 44px!important;row-gap:0!important;column-gap:0!important;flex:none!important;overflow:visible!important;white-space:nowrap!important;background:none!important;box-shadow:none!important;transform:none!important;opacity:1!important;visibility:visible!important;color:#151a22!important;font-size:16px!important;font-weight:700!important;line-height:1.3!important}
#ch38-header .ch38-nav-row{display:flex!important;position:static!important;flex-direction:row!important;flex-wrap:nowrap!important;justify-content:center!important;align-items:center!important;gap:clamp(10px,.95vw,19px)!important;width:100%!important;height:44px!important;min-width:0!important;margin:0!important;padding:0!important;background:none!important;transform:none!important}
#ch38-header .ch38-nav-row a{display:block!important;position:static!important;float:none!important;flex:0 0 auto!important;padding:4px 0!important;margin:0!important;width:auto!important;min-height:0!important;background:transparent!important;border:0!important;border-radius:0!important;white-space:nowrap!important;color:#141b24!important;text-align:center!important;text-decoration:none!important;font:700 16px/1.3 Arial,sans-serif!important;letter-spacing:0!important;transform:none!important}
#ch38-header .ch38-nav-row a:hover,#ch38-header .ch38-nav-row a:focus-visible{color:#ad2730!important;text-decoration:underline!important;text-underline-offset:4px!important}
#ch38-header .ch38-nav-divider{display:block!important;width:100%!important;max-width:none!important;height:1px!important;min-height:1px!important;margin:0!important;padding:0!important;border:0!important;background:#6a6e73!important;align-self:center!important;position:static!important}
@media(min-width:1401px) and (max-width:1550px){
 #ch38-header .ch38-inner{grid-template-columns:minmax(0,350px) minmax(0,1fr) 245px;gap:16px}
 #ch38-header .ch38-nav-row{gap:10px!important}
 #ch38-header .ch38-nav-row a{font-size:15px!important}
 #ch38-header .ch38-phone{font-size:1.25rem}
}
@media(min-width:981px) and (max-width:1400px){
 #ch38-header .ch38-inner{min-height:200px;grid-template-columns:minmax(0,1fr) 245px;grid-template-rows:94px 106px;gap:0 16px;align-items:start}
 #ch38-header .ch38-brand{grid-column:1;grid-row:1;width:min(390px,100%);align-self:start;margin-top:7px}
 #ch38-header .ch38-actions{grid-column:2;grid-row:1;align-self:start;padding-top:7px}
 #ch38-header .ch38-request{min-height:47px}
 #ch38-header .ch38-phone{font-size:1.22rem}
 #ch38-header .ch38-nav{grid-column:1/-1;grid-row:2;align-self:center!important;grid-template-rows:46px 1px 46px!important}
 #ch38-header .ch38-nav-row{height:46px!important;gap:clamp(14px,2vw,25px)!important}
}
@media(max-width:980px){
 #ch38-header .ch38-inner{min-height:85px;height:auto;display:flex;align-items:center;justify-content:space-between;gap:14px;width:calc(100% - 28px);position:relative}
 #ch38-header .ch38-brand{flex:1 1 auto;max-width:390px;min-width:0;align-self:center}
 #ch38-header .ch38-menu-toggle{display:block!important;flex:0 0 auto;position:relative;z-index:80;padding:10px 16px;background:#fff;border:1px solid #bdc7cd;border-radius:6px;color:#141b24;font:700 16px/1.25 Arial,sans-serif;cursor:pointer;margin:0}
 #ch38-header .ch38-actions{display:none!important}
 #ch38-header .ch38-nav{display:none!important;position:absolute!important;top:100%!important;left:0!important;right:0!important;z-index:70!important;width:100%!important;max-height:75vh!important;overflow:auto!important;padding:14px 20px!important;margin:0!important;background:#fff!important;box-shadow:0 14px 32px rgba(0,0,0,.16)!important;white-space:normal!important}
 #ch38-header .ch38-nav.open{display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:8px!important}
 #ch38-header .ch38-nav-row{height:auto!important;display:flex!important;flex-direction:column!important;gap:0!important;align-items:stretch!important}
 #ch38-header .ch38-nav-row a{padding:10px 4px!important;text-align:left!important;white-space:normal!important;font-size:16px!important}
 #ch38-header .ch38-nav-divider{background:#dbe1e5!important;margin:6px 0!important;flex:0 0 1px!important}
}


/* v39 – Reference menu layout: five links above the long rule, four below.
   This is deliberately scoped to the shared header only, so it applies on
   the homepage and every service page without changing their own content. */
@media (min-width:1551px) {
  #ch38-header .ch38-inner {
    width:calc(100% - 72px);
    max-width:1848px;
    min-height:164px;
  }
  #ch38-header .ch38-brand {
    transform:translateY(-17px);
  }
  #ch38-header .ch38-nav {
    transform:translateY(11px)!important;
  }
  #ch38-header .ch38-nav-divider {
    /* Extend the rule behind the open space near the logo, but end it
       before the Request Service button, as shown in menu.JPG. */
    width:calc(100% + 75px)!important;
    max-width:none!important;
    transform:translateX(-90px)!important;
  }
}
@media (min-width:1401px) and (max-width:1550px) {
  #ch38-header .ch38-inner{min-height:158px}
  #ch38-header .ch38-brand{transform:translateY(-10px)}
  #ch38-header .ch38-nav{transform:translateY(8px)!important}
  #ch38-header .ch38-nav-divider{width:calc(100% + 40px)!important;transform:translateX(-55px)!important}
}
