/* Facebook icon: header only. Does not affect the main website stylesheet. */
.facebook-header-link {
  flex: 0 0 auto;
  width: 40px;
  height: 40px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  padding: 5px;
  text-decoration: none;
  background: transparent;
  transition: transform 160ms ease, background 160ms ease;
}
.facebook-header-link img {display:block; width:30px; height:30px; object-fit:contain;}
.facebook-header-link:hover {background:rgba(255,255,255,.09); transform:translateY(-1px);}
.facebook-header-link:focus-visible {outline:3px solid #fff;outline-offset:3px;}
/* Switch to the mobile menu earlier, to leave room for the header icon. */
@media (max-width: 1180px) {
  .header-inner {gap: 12px;}
  .brand {margin-right:auto; min-width:0;}
  .menu-toggle {display:block; order:2; flex-shrink:0;}
  .facebook-header-link {order:1;}
  .nav-links {
    display:none;
    position:absolute;
    left:0;right:0;top:94px;
    min-height:calc(100vh - 94px);
    padding:32px 26px;
    background:#0d1115;
    flex-direction:column;
    align-items:stretch;
    gap:0;
    border-top:1px solid #34393d;
    overflow-y:auto;
  }
  .nav-links.open {display:flex;}
  .nav-links a {font-size:1rem;padding:13px 6px;border-bottom:1px solid #262c30;}
  .nav-links a[aria-current='page'] {box-shadow:none;color:var(--red);}
  .nav-links .nav-cta {margin-top:24px;padding:16px;}
}
@media (max-width: 890px) {
  .nav-links {top:78px;min-height:calc(100vh - 78px);}
}
@media (max-width: 420px) {
  .header-inner {gap:6px;}
  .brand {gap:6px;}
  .brand-emblem {height:44px;width:44px;}
  .brand-label {font-size:1.03rem;}
  .brand-label small {font-size:.72rem;}
  .facebook-header-link {height:36px;width:36px;padding:3px;}
  .facebook-header-link img {height:28px;width:28px;}
  .menu-toggle {width:40px;height:40px;}
}

/* Use a compact mobile menu for the expanded service navigation. */
@media(max-width:1280px){.header-inner{gap:12px}.brand{min-width:0;margin-right:auto}.menu-toggle{display:block;order:2;flex-shrink:0}.facebook-header-link{order:1}.nav-links{display:none;position:absolute;left:0;right:0;top:94px;max-height:calc(100vh - 94px);overflow-y:auto;padding:20px 26px 28px;background:#0d1115;flex-direction:column;align-items:stretch;gap:0;border-top:1px solid #34393d}.nav-links.open{display:flex}.nav-links a{font-size:.93rem;padding:12px 5px;border-bottom:1px solid #262c30}.nav-links .nav-cta{margin-top:18px;padding:14px}.nav-links a[aria-current='page']{box-shadow:none;color:var(--red)}}
@media(min-width:1281px){.nav-links{gap:clamp(9px,1.05vw,18px)}.nav-links a{font-size:.70rem;letter-spacing:.02em}.brand{min-width:195px}.nav-cta{min-width:110px;padding:10px 12px}}
@media(min-width:1281px) and (max-width:1440px){.brand{min-width:170px}.brand-label{font-size:1.2rem}.brand-emblem{height:58px;width:58px}}
@media(max-width:890px){.nav-links{top:78px;max-height:calc(100vh - 78px)}}
