/**
 * RCC custom header — overlay on dark heroes at rest, solid white sticky bar on scroll.
 */

.elementor-location-header {
  position: relative;
  z-index: 100;
}

/* !important beats .elementor-section-stretched { position: relative } in page bundles */
.elementor-location-header .elementor-element-173dedab.elementor-section-stretched {
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  width: 100% !important;
  z-index: 100;
  margin-bottom: 0 !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  background-color: #ffffff !important;
  transition: background-color 0.3s ease, box-shadow 0.3s ease;
}

.elementor-location-header .elementor-element-173dedab.elementor-section-stretched:not(.elementor-motion-effects-element-type-background),
.elementor-location-header .elementor-element-173dedab.elementor-section-stretched > .elementor-motion-effects-container > .elementor-motion-effects-layer {
  background-color: #ffffff !important;
}

.elementor-location-header .elementor-element-173dedab.elementor-section-stretched.rcc-header-scrolled {
  box-shadow: 0 2px 12px rgba(0, 0, 0, 0.08);
}

/* Resting overlay: sit on the hero instead of covering it with a white bar. */
.elementor-location-header .elementor-element-173dedab.rcc-header-over-hero:not(.rcc-header-scrolled).elementor-section-stretched,
.elementor-location-header .elementor-element-173dedab.rcc-header-over-hero:not(.rcc-header-scrolled).elementor-section-stretched:not(.elementor-motion-effects-element-type-background),
.elementor-location-header .elementor-element-173dedab.rcc-header-over-hero:not(.rcc-header-scrolled).elementor-section-stretched > .elementor-motion-effects-container > .elementor-motion-effects-layer {
  background-color: transparent !important;
  box-shadow: none;
}

/* Keep header bar compact — page bundles can add extra section padding */
.elementor-location-header .elementor-element-173dedab > .elementor-container {
  min-height: 0;
}

.elementor-location-header .elementor-element-173dedab .elementor-widget-wrap {
  padding-top: 0;
  padding-bottom: 0;
}

.rcc-header-spacer {
  display: block;
  width: 100%;
  /* Reserve the legacy header height before hydration to prevent route snapping. */
  height: 92px;
}

.elementor-location-header:has(.rcc-header-over-hero) .rcc-header-spacer {
  height: 0;
}

/* Logo + menu on the same white bar */
.elementor-location-header .elementor-element-1ff6eb83 img {
  display: inline-block !important;
  opacity: 1 !important;
  visibility: visible !important;
}

.elementor-location-header .rcc-header-logo {
  display: inline-block;
}

.elementor-location-header .elementor-element-139a510a .elementor-nav-menu--main .elementor-item {
  color: #055902 !important;
  fill: #055902 !important;
}

.elementor-location-header .elementor-element-139a510a .elementor-nav-menu--main .elementor-item:hover,
.elementor-location-header .elementor-element-139a510a .elementor-nav-menu--main .elementor-item:focus,
.elementor-location-header .elementor-element-139a510a .elementor-nav-menu--main .elementor-item.highlighted {
  color: var(--e-global-color-accent, #51548c) !important;
  fill: var(--e-global-color-accent, #51548c) !important;
}

.elementor-location-header .elementor-element-139a510a .elementor-nav-menu--main .elementor-item.elementor-item-active {
  color: var(--e-global-color-secondary, #51548c) !important;
  fill: var(--e-global-color-secondary, #51548c) !important;
}

.elementor-location-header .elementor-element-139a510a .elementor-menu-toggle {
  color: #055902 !important;
}

.elementor-location-header .elementor-element-139a510a .elementor-menu-toggle svg {
  fill: #055902 !important;
}

.elementor-location-header .rcc-header-over-hero:not(.rcc-header-scrolled) .elementor-element-139a510a .elementor-nav-menu--main .elementor-item {
  color: #ffffff !important;
  fill: #ffffff !important;
  text-shadow: 0 1px 8px rgba(0, 0, 0, 0.35);
}

.elementor-location-header .rcc-header-over-hero:not(.rcc-header-scrolled) .elementor-element-139a510a .elementor-nav-menu--main .elementor-item:hover,
.elementor-location-header .rcc-header-over-hero:not(.rcc-header-scrolled) .elementor-element-139a510a .elementor-nav-menu--main .elementor-item:focus,
.elementor-location-header .rcc-header-over-hero:not(.rcc-header-scrolled) .elementor-element-139a510a .elementor-nav-menu--main .elementor-item.highlighted,
.elementor-location-header .rcc-header-over-hero:not(.rcc-header-scrolled) .elementor-element-139a510a .elementor-nav-menu--main .elementor-item.elementor-item-active {
  color: #ffffff !important;
  fill: #ffffff !important;
}

.elementor-location-header .rcc-header-over-hero:not(.rcc-header-scrolled) .elementor-element-139a510a .e--pointer-underline .elementor-item:after,
.elementor-location-header .rcc-header-over-hero:not(.rcc-header-scrolled) .elementor-element-139a510a .e--pointer-underline .elementor-item:before {
  background-color: #ffffff !important;
}

.elementor-location-header .rcc-header-over-hero:not(.rcc-header-scrolled) .elementor-element-139a510a .elementor-menu-toggle {
  color: #ffffff !important;
}

.elementor-location-header .rcc-header-over-hero:not(.rcc-header-scrolled) .elementor-element-139a510a .elementor-menu-toggle svg {
  fill: #ffffff !important;
}

.elementor-location-header .elementor-nav-menu--stretch .elementor-nav-menu--dropdown.elementor-nav-menu__container {
  position: absolute;
  z-index: 9997;
  background-color: #ffffff;
}

body.rcc-nav-open {
  overflow: hidden;
}

/* Nav menu responsive — Elementor rules live in page bundles; header is shared globally */
@media (max-width: 1024px) {
  .elementor-location-header .elementor-nav-menu--dropdown-tablet .elementor-nav-menu--main {
    display: none;
  }

  .elementor-location-header .elementor-nav-menu--dropdown-tablet .elementor-menu-toggle {
    display: flex;
  }
}

@media (min-width: 1025px) {
  .elementor-location-header .elementor-nav-menu--dropdown-tablet .elementor-nav-menu--main {
    display: flex;
  }

  .elementor-location-header .elementor-nav-menu--dropdown-tablet .elementor-menu-toggle,
  .elementor-location-header .elementor-nav-menu--dropdown-tablet .elementor-nav-menu--dropdown {
    display: none !important;
  }
}
