/* The logo owns its complete reveal width; navigation never shares that space. */
html { scroll-padding-top:calc(var(--navigation-clearance, 96px) + 18px); }
.site-header.navigation-ready {
  --brand-width:176px;
  display:flex;align-items:center;justify-content:space-between;gap:16px;
  width:min(1176px,calc(100% - 64px));max-width:1176px;
  height:68px;padding:0 17px 0 24px;top:50px;
  border:0;outline:0;box-shadow:0 5px 24px #241c180b;
}
.site-header.navigation-ready.scrolled { top:15px;height:62px; }
.site-header.navigation-ready .brand {
  width:var(--brand-width);min-width:var(--brand-width);flex:0 0 var(--brand-width);
  height:42px;display:flex;align-items:center;overflow:visible;
}
.site-header.navigation-ready .brand .represent-logo-window {
  width:calc(var(--brand-width) * .091);max-width:none;flex:none;
  overflow:hidden;display:flex;align-items:center;
}
.site-header.navigation-ready .brand:hover .represent-logo-window,
.site-header.navigation-ready .brand:focus-visible .represent-logo-window { width:var(--brand-width); }
.site-header.navigation-ready .brand .represent-wordmark {
  width:var(--brand-width);height:auto;aspect-ratio:586/106;max-width:none;flex:none;display:block;transform:none;
}
.site-header.navigation-ready nav {
  display:flex;align-items:center;justify-content:center;gap:4px;flex:0 0 auto;
  min-width:0;margin:0;padding:0;
}
.site-header.navigation-ready .nav-link {
  display:flex;align-items:center;justify-content:center;gap:9px;
  min-height:42px;padding:11px 12px;border:1px solid transparent;border-radius:4px;
  font:400 12px/18px var(--mono);letter-spacing:0;text-transform:uppercase;white-space:nowrap;
}
.site-header.navigation-ready .nav-link[aria-current="page"],
.site-header.navigation-ready .nav-link[aria-current="location"] {
  color:var(--brand-burgundy);background:rgb(var(--brand-burgundy-rgb) / 0.0627);border-color:transparent;border-radius:4px;
}
.site-header.navigation-ready .menu-plus { width:10px;flex:0 0 10px;font-size:15px;line-height:1; }
.site-header.navigation-ready .header-cta,
.site-header.navigation-ready .header-cta.reflective-cta {
  width:148px;min-width:148px;flex:0 0 148px;height:42px;min-height:42px;
  padding:10px 16px;font:400 12px/18px var(--mono);gap:10px;
}
.system-menu.navigation-menu {
  top:128px;width:min(1176px,calc(100% - 64px));border:0;outline:0;
  grid-template-columns:repeat(3,minmax(0,1fr));gap:26px 32px;
  max-height:calc(100dvh - 144px);overflow:auto;overscroll-behavior:contain;
  box-shadow:0 18px 60px #241c181a;
}
.site-header.navigation-ready.scrolled + .system-menu.navigation-menu {
  top:87px;max-height:calc(100dvh - 103px);
}
.system-menu.navigation-menu > .menu-journey-group { min-width:0; }
.system-menu.navigation-menu > .menu-destinations {
  grid-column:1/-1;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));
  gap:12px;margin:0;padding:18px 0 0;border-top:1px solid rgb(var(--brand-burgundy-rgb) / 0.0824);
}
.system-menu.navigation-menu .menu-destinations > a {
  display:flex;align-items:center;justify-content:space-between;gap:12px;
  min-width:0;min-height:44px;margin:0;padding:10px 12px;
  border:0;border-radius:4px;color:var(--brand-burgundy);font:400 12px/18px var(--mono);
  text-transform:uppercase;text-decoration:none;
}
.system-menu.navigation-menu .menu-destinations > a:hover { background:rgb(var(--brand-burgundy-rgb) / 0.0353); }
.system-menu.navigation-menu .menu-destinations .menu-destination-label { font:inherit;opacity:1; }
.system-menu.navigation-menu .menu-destinations .menu-destination-arrow { flex:none;font:14px/18px var(--mono);opacity:.65; }
.system-menu.navigation-menu .menu-destinations > a[aria-current] {
  color:var(--brand-burgundy);background:rgb(var(--brand-burgundy-rgb) / 0.0627);border:0;border-radius:4px;text-decoration:none;
}
@media(min-width:880px) and (max-width:1100px) {
  .site-header.navigation-ready { width:calc(100% - 40px);padding-inline:16px; }
  .system-menu.navigation-menu { width:calc(100% - 40px); }
}
/* The compact header has two real rows; no destination is hidden or overlaid. */
@media(max-width:879px) {
  .site-header.navigation-ready,
  .site-header.navigation-ready.scrolled {
    --brand-width:clamp(116px,calc(100vw - 204px),176px);
    display:grid;grid-template-columns:minmax(0,1fr) 148px;grid-template-rows:42px 40px;
    column-gap:8px;row-gap:4px;height:106px;width:calc(100% - 24px);
    padding:10px 12px;top:46px;
  }
  .site-header.navigation-ready.scrolled { top:9px; }
  .site-header.navigation-ready .brand { grid-column:1;grid-row:1; }
  .site-header.navigation-ready .header-cta { grid-column:2;grid-row:1; }
  .site-header.navigation-ready nav {
    grid-column:1/-1;grid-row:2;justify-content:space-between;gap:0;width:100%;height:40px;margin:0;
  }
  .site-header.navigation-ready .nav-link {
    display:flex;min-height:40px;padding:10px 3px;gap:5px;
    font:400 11px/18px var(--mono);
  }
  .site-header.navigation-ready .menu-plus { font-size:13px;width:9px;flex-basis:9px; }
  .system-menu.navigation-menu {
    top:162px;width:calc(100% - 24px);max-height:calc(100dvh - 178px);
    grid-template-columns:1fr 1fr;gap:22px;padding:22px;
  }
  .system-menu.navigation-menu > .menu-journey-group:nth-child(3) { grid-column:1/-1; }
  .system-menu.navigation-menu > .menu-destinations { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .system-menu.navigation-menu .menu-destinations > .menu-security {
    grid-column:1/-1;justify-self:center;width:calc((100% - 12px)/2);
  }
  .site-header.navigation-ready.scrolled + .system-menu.navigation-menu {
    top:125px;max-height:calc(100dvh - 141px);
  }
  body .hero,body .services-hero,body .commercial-hero,body main.utility-page { padding-top:188px; }
}
@media(min-width:600px) and (max-width:879px) {
  .site-header.navigation-ready .nav-link { font-size:12px;padding-inline:12px; }
  .site-header.navigation-ready nav { justify-content:flex-start;gap:10px; }
}
@media(max-width:480px) {
  .system-menu.navigation-menu { grid-template-columns:1fr;gap:22px;padding:20px; }
  .system-menu.navigation-menu > .menu-journey-group:nth-child(3) { grid-column:auto; }
  .system-menu.navigation-menu > .menu-destinations { grid-template-columns:1fr;gap:4px; }
  .system-menu.navigation-menu .menu-destinations > .menu-security {
    grid-column:auto;justify-self:stretch;width:100%;
  }
}
@media(hover:none) and (pointer:coarse) {
  .site-header.navigation-ready .brand .represent-logo-window { width:var(--brand-width); }
}

.site-header.navigation-ready .brand:focus-visible{outline-color:var(--accent)}
