/* =========================================================
   SRISHAILA — FINAL UNIFORM HEADER
   One consistent navigation scale on every page/state.
   ========================================================= */
.site-header .main-nav,
.site-header.is-scrolled .main-nav {
  display: flex !important;
  align-items: center !important;
  gap: 30px !important;
  font-family: 'IBM Plex Sans', sans-serif !important;
  font-size: 17px !important;
  font-weight: 600 !important;
  line-height: 1 !important;
}

.site-header .main-nav > a:not(.nav-cta),
.site-header .nav-dropdown > .nav-drop-trigger,
.site-header.is-scrolled .main-nav > a:not(.nav-cta),
.site-header.is-scrolled .nav-dropdown > .nav-drop-trigger {
  font-family: 'IBM Plex Sans', sans-serif !important;
  font-size: 17px !important;
  font-weight: 600 !important;
  line-height: 1 !important;
  letter-spacing: 0 !important;
  white-space: nowrap !important;
}

.site-header .nav-label,
.site-header .nav-drop-trigger .nav-label {
  font-size: 17px !important;
  font-weight: 600 !important;
  line-height: 1 !important;
  letter-spacing: 0 !important;
}

/* Dropdown arrows are intentionally smaller than the labels. */
.site-header .nav-drop-trigger > span:not(.nav-label) {
  font-size: 11px !important;
  line-height: 1 !important;
}

/* Contact keeps the same visual weight but remains a compact button. */
.site-header .main-nav > a.nav-cta,
.site-header.is-scrolled .main-nav > a.nav-cta {
  font-family: 'IBM Plex Sans', sans-serif !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  line-height: 1 !important;
  letter-spacing: .04em !important;
  padding: 11px 20px !important;
}

.site-header .nav-dropdown-menu a,
.site-header.is-scrolled .nav-dropdown-menu a {
  font-family: 'IBM Plex Sans', sans-serif !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  line-height: 1.35 !important;
}

/* Keep the logo from affecting nav alignment. */
.site-header .brand-logo,
.site-header.is-scrolled .brand-logo {
  display: block !important;
  flex: 0 0 auto !important;
}

@media (max-width: 1180px) {
  .site-header .main-nav,
  .site-header.is-scrolled .main-nav {
    gap: 22px !important;
    font-size: 16px !important;
  }
  .site-header .main-nav > a:not(.nav-cta),
  .site-header .nav-dropdown > .nav-drop-trigger,
  .site-header .nav-label,
  .site-header .nav-drop-trigger .nav-label {
    font-size: 16px !important;
  }
}

@media (max-width: 900px) {
  .site-header .main-nav,
  .site-header.is-scrolled .main-nav {
    font-size: 16px !important;
  }
  .site-header .main-nav > a:not(.nav-cta),
  .site-header .nav-dropdown > .nav-drop-trigger,
  .site-header .nav-label,
  .site-header .nav-drop-trigger .nav-label {
    font-size: 16px !important;
  }
}

/* =========================================================
   FINAL CONTACT BUTTON COLOR - ALL PAGES
   Always red, including page-specific header overrides.
   ========================================================= */
body .site-header .main-nav > a.nav-cta,
body .site-header.is-scrolled .main-nav > a.nav-cta {
  background: #d7192f !important;
  background-color: #d7192f !important;
  color: #ffffff !important;
  border: 1px solid #d7192f !important;
  border-color: #d7192f !important;
  box-shadow: none !important;
}

body .site-header .main-nav > a.nav-cta:hover,
body .site-header.is-scrolled .main-nav > a.nav-cta:hover {
  background: #b81428 !important;
  background-color: #b81428 !important;
  color: #ffffff !important;
  border-color: #b81428 !important;
}

/* =========================================================
   FINAL OVERRIDE — CONTACT BUTTON MUST BE RED ON ALL PAGES
   This file is loaded last, so page-specific CSS cannot turn it white.
   ========================================================= */
.site-header .main-nav > a.nav-cta,
.site-header.is-scrolled .main-nav > a.nav-cta,
.site-header .main-nav a.nav-cta,
.site-header.is-scrolled .main-nav a.nav-cta {
  background: #c8102e !important;
  background-color: #c8102e !important;
  color: #ffffff !important;
  border: 1px solid #c8102e !important;
  border-color: #c8102e !important;
  box-shadow: none !important;
}

.site-header .main-nav > a.nav-cta:hover,
.site-header.is-scrolled .main-nav > a.nav-cta:hover,
.site-header .main-nav a.nav-cta:hover,
.site-header.is-scrolled .main-nav a.nav-cta:hover {
  background: #a80d26 !important;
  background-color: #a80d26 !important;
  color: #ffffff !important;
  border-color: #a80d26 !important;
}

/* =========================================================
   DEFINITIVE CONTACT BUTTON FIX
   CONTACT must stay RED on every page and in every header state.
   This block is intentionally last in the stylesheet.
   ========================================================= */
html body .site-header .main-nav > a.nav-cta,
html body .site-header.is-scrolled .main-nav > a.nav-cta,
html body .site-header .main-nav a.nav-cta,
html body .site-header.is-scrolled .main-nav a.nav-cta,
html body .site-header .main-nav > a.nav-cta:visited {
  background: #d7192f !important;
  background-color: #d7192f !important;
  color: #ffffff !important;
  border: 1px solid #d7192f !important;
  border-color: #d7192f !important;
  opacity: 1 !important;
  visibility: visible !important;
  text-shadow: none !important;
}

html body .site-header .main-nav > a.nav-cta .nav-label,
html body .site-header.is-scrolled .main-nav > a.nav-cta .nav-label,
html body .site-header .main-nav > a.nav-cta span,
html body .site-header.is-scrolled .main-nav > a.nav-cta span {
  color: #ffffff !important;
}

html body .site-header .main-nav > a.nav-cta:hover,
html body .site-header.is-scrolled .main-nav > a.nav-cta:hover,
html body .site-header .main-nav > a.nav-cta:focus,
html body .site-header.is-scrolled .main-nav > a.nav-cta:focus {
  background: #b81428 !important;
  background-color: #b81428 !important;
  color: #ffffff !important;
  border-color: #b81428 !important;
}

html body .site-header .main-nav > a.nav-cta::before {
  background: linear-gradient(110deg, transparent, rgba(255,255,255,.25), transparent) !important;
}

html body .site-header .main-nav > a.nav-cta::after,
html body .site-header .main-nav > a.nav-cta:hover::after {
  color: #ffffff !important;
}

@media (max-width: 1180px) {
  html body .site-header .main-nav > a.nav-cta,
  html body .site-header.is-scrolled .main-nav > a.nav-cta {
    background: #d7192f !important;
    background-color: #d7192f !important;
    color: #ffffff !important;
    border-color: #d7192f !important;
  }
}


/* EQUIPMENT PAGE: transparent header over hero image */
body.equipment-page-body .site-header:not(.is-scrolled) {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    background: transparent !important;
    background-color: transparent !important;
    border: none !important;
    box-shadow: none !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
    z-index: 1000 !important;
}

body.equipment-page-body .site-header:not(.is-scrolled) .nav-inner {
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
}

body.equipment-page-body .site-header:not(.is-scrolled)::before,
body.equipment-page-body .site-header:not(.is-scrolled)::after {
    display: none !important;
}
