/* Shared site header + navigation (all pages).
   Scoped to #siteHeader so it overrides older per-page header rules. */
#siteHeader{
  position:sticky;top:0;z-index:60;
  background:#fff;
  border-bottom:1px solid rgba(0,0,0,0.08);
  box-shadow:0 2px 8px rgba(0,0,0,0.06);
}
#siteHeader .header-inner{
  display:flex;align-items:center;justify-content:space-between;gap:18px;
  padding:12px 24px;max-width:1340px;margin:0 auto;position:relative;
}
#siteHeader .site-logo{display:block;line-height:0;flex-shrink:0;}
#siteHeader .header-logo-img{height:50px;width:auto;display:block;}

#siteHeader #mainNav{display:flex;flex-wrap:nowrap;gap:18px;align-items:center;}
#siteHeader #mainNav a,
#siteHeader .quote-toggle{
  display:block;
  font-family:'Barlow Condensed', Arial Narrow, sans-serif;font-size:15px;letter-spacing:0.04em;
  text-transform:uppercase;color:#1E2A3A;font-weight:600;white-space:nowrap;
  text-decoration:none;transition:color 0.2s, background 0.2s;
}
#siteHeader #mainNav a:hover{color:#E8231A;}

/* Get a Quote dropdown */
#siteHeader .quote-menu{position:relative;}
#siteHeader .quote-toggle{
  background:#1E2A3A;color:#fff;border:none;cursor:pointer;
  padding:10px 16px;border-radius:3px;font-weight:700;
  box-shadow:0 2px 0 rgba(0,0,0,0.2);
  display:inline-flex;align-items:center;gap:6px;
}
#siteHeader .quote-toggle:hover,
#siteHeader .quote-menu.open .quote-toggle{background:#141d29;}
#siteHeader .quote-toggle .caret{font-size:11px;transition:transform 0.2s;}
#siteHeader .quote-menu.open .quote-toggle .caret{transform:rotate(180deg);}
#siteHeader .quote-list{
  display:none;position:absolute;top:calc(100% + 8px);right:0;min-width:230px;
  background:#fff;border:1px solid rgba(0,0,0,0.1);border-radius:6px;
  box-shadow:0 10px 24px rgba(0,0,0,0.14);padding:6px;z-index:70;
}
#siteHeader .quote-menu.open .quote-list{display:block;}
#siteHeader #mainNav .quote-list a{
  padding:11px 14px;border-radius:4px;font-size:16px;
}
#siteHeader #mainNav .quote-list a:hover{background:#F5F6F8;color:#E8231A;}

/* Phone numbers */
#siteHeader .call-btn{
  display:block;background:#E8231A;color:#fff;
  padding:7px 14px;border-radius:3px;
  box-shadow:0 2px 0 rgba(0,0,0,0.2);
}
#siteHeader #mainNav .call-btn a{
  color:#fff;font-weight:700;font-size:14.5px;letter-spacing:0.03em;line-height:1.25;
}
#siteHeader #mainNav .call-btn a:hover{color:#fff;text-decoration:underline;}
#siteHeader .call-btn:hover{background:#c91b13;}

#siteHeader .nav-toggle{
  display:none;background:none;border:none;color:#1E2A3A;font-size:28px;
  line-height:1;padding:6px 10px;cursor:pointer;
}

/* Collapse to the menu button below laptop width */
@media (max-width:1240px){
  #siteHeader .nav-toggle{display:block;}
  #siteHeader #mainNav{display:none;}
  #siteHeader #mainNav.open{
    display:flex;flex-direction:column;align-items:stretch;gap:0;
    position:absolute;top:100%;left:0;right:0;background:#fff;
    border-top:1px solid rgba(0,0,0,0.08);box-shadow:0 10px 24px rgba(0,0,0,0.12);
    padding:6px 24px 20px;max-height:calc(100vh - 76px);overflow-y:auto;
  }
  #siteHeader #mainNav.open > a{padding:13px 0;border-bottom:1px solid rgba(0,0,0,0.07);font-size:18px;}
  #siteHeader .quote-menu{margin-top:16px;}
  #siteHeader .quote-toggle{width:100%;justify-content:center;padding:13px 16px;font-size:18px;}
  #siteHeader .quote-list{position:static;min-width:0;box-shadow:none;margin-top:6px;}
  #siteHeader #mainNav .quote-list a{font-size:17px;padding:12px 14px;border-bottom:1px solid rgba(0,0,0,0.06);border-radius:0;}
  #siteHeader #mainNav .quote-list a:last-child{border-bottom:none;}
  #siteHeader .call-btn{margin-top:12px;text-align:center;padding:10px 16px;}
  #siteHeader #mainNav .call-btn a{font-size:18px;padding:4px 0;border-bottom:none;}
}
@media (max-width:520px){
  #siteHeader .header-inner{padding:10px 16px;}
  #siteHeader .header-logo-img{height:42px;}
  #siteHeader #mainNav.open{padding:4px 16px 18px;}
}
