.site-header{box-shadow:0 10px 30px rgba(15,23,42,0.12)}.rg-top-banner a{transition:background-color var(--transition-base),border-color var(--transition-base),color var(--transition-base),transform var(--transition-fast)}.rg-top-banner a:hover{background:rgba(22,163,74,0.75);border-color:rgba(190,242,100,0.9);transform:translateY(-1px)}.site-header .nav-bar{gap:1.75rem}.brand-mark span{font-size:0.95rem;letter-spacing:0.12em;text-transform:uppercase}.brand-name{font-size:1.05rem}.brand-name:hover{color:var(--color-primary)}.brand-tagline{margin-bottom:0;font-size:0.7rem}.primary-nav{flex:1;display:flex;justify-content:center}.nav-links{align-items:center}.nav-links a{position:relative;font-size:0.8rem;text-transform:uppercase;letter-spacing:0.16em;color:var(--color-neutral-700)}.nav-links a::after{content:"";position:absolute;left:0;bottom:-0.25rem;width:0;height:1px;background:linear-gradient(90deg,var(--color-primary),var(--color-success));transition:width var(--transition-base)}.nav-links a:hover::after,.nav-links a.is-active::after{width:100%}.nav-links a.is-active{color:var(--color-primary)}.nav-cta .btn{font-size:0.78rem}.nav-toggle{display:none;align-items:center;justify-content:center;width:40px;height:40px;border-radius:999px;border:1px solid var(--color-border-soft);background:rgba(255,255,255,0.95);box-shadow:var(--shadow-xs);padding:0.45rem;gap:0.25rem}.nav-toggle-bar{width:100%;height:2px;border-radius:999px;background-color:var(--color-neutral-900);transition:transform var(--transition-base),opacity var(--transition-base),background-color var(--transition-base)}.nav-toggle:focus-visible{outline:2px solid var(--color-primary);outline-offset:3px}.nav-toggle.is-active .nav-toggle-bar:nth-child(1){transform:translateY(4px) rotate(45deg)}.nav-toggle.is-active .nav-toggle-bar:nth-child(2){transform:translateY(-4px) rotate(-45deg)}.nav-toggle.is-active .nav-toggle-bar{background-color:var(--color-neutral-900)}@media (max-width:900px){.primary-nav{justify-content:flex-start}}@media (max-width:768px){.nav-toggle{display:flex}.primary-nav{position:fixed;top:calc(var(--header-banner-height) + var(--header-main-height));left:0;right:0;background:rgba(248,246,240,0.98);backdrop-filter:blur(18px);border-bottom:1px solid var(--color-border-soft);transform:translateY(-8px);opacity:0;pointer-events:none;transition:opacity var(--transition-base),transform var(--transition-base);z-index:850}.primary-nav.is-open{transform:translateY(0);opacity:1;pointer-events:auto}.nav-links{flex-direction:column;align-items:flex-start;padding:0.9rem var(--space-4) 1.1rem var(--space-4);gap:0.4rem}.nav-links a{padding:0.4rem 0;width:100%}.nav-links a::after{bottom:0;left:auto;right:0;width:0}.nav-links a:hover::after,.nav-links a.is-active::after{width:38%}.nav-cta{display:none}}


/* --- visual fix pass 2026-08-06 --- */
.rg-top-banner {
  position: relative;
  top: auto;
  left: auto;
  width: 100%;
  z-index: auto;
  flex-wrap: wrap;
  line-height: 1.35;
  gap: 0.5rem;
}
.rg-top-banner a {
  min-height: 44px;
  display: inline-flex;
  align-items: center;
}
header.site-header {
  position: sticky;
  top: 0;
}
@media (max-width: 1024px) {
  .site-header .primary-nav,
  .primary-nav.is-open {
    background: #f8f6f0;
    background-color: #f8f6f0;
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
    overflow-y: auto;
    overscroll-behavior: contain;
    max-height: calc(100vh - 5rem);
  }
  .site-header .nav-links.nav-menu,
  .primary-nav.is-open .nav-links {
    display: flex;
    flex-direction: column;
    width: 100%;
    gap: 0;
  }
  .site-header .nav-links a,
  .nav-link {
    display: flex;
    align-items: center;
    min-height: 44px;
  }
  .nav-toggle {
    min-width: 44px;
    min-height: 44px;
  }
  .brand-mark,
  .brand-name {
    min-height: 44px;
    display: inline-flex;
    align-items: center;
  }
}
@media (min-width: 769px) {
  .nav-links.nav-menu {
    display: flex;
    visibility: visible;
    opacity: 1;
  }
}
.brand-tagline,
.pill-badge,
.pill-badge span,
.label-chip,
.hero-badge-label,
.hero-badge-foot {
  font-size: 12px;
}

@media (max-width: 1024px) {
  .primary-nav:not(.is-open) {
    visibility: hidden;
    pointer-events: none;
    max-height: 0;
    overflow: hidden;
  }
  .primary-nav.is-open {
    visibility: visible;
    pointer-events: auto;
    max-height: min(70vh, 480px);
    z-index: 900;
  }
  .nav-toggle {
    position: relative;
    z-index: 1200;
  }
  .nav-bar {
    position: relative;
    z-index: 1200;
  }
}


/* --- mobile menu clip fix 2026-08-06 --- */
@media (max-width: 768px) {
  header.site-header {
    position: sticky;
    top: 0;
    overflow: visible;
    z-index: 1100;
  }
  .nav-bar.container,
  .nav-bar {
    position: relative;
  }
  .primary-nav {
    position: absolute !important;
    inset-inline: 0;
    top: 100% !important;
    left: 0;
    right: 0;
    transform: none !important;
  }
  .primary-nav:not(.is-open) {
    visibility: hidden;
    pointer-events: none;
    max-height: 0 !important;
    overflow: hidden;
    opacity: 0;
  }
  .primary-nav.is-open {
    visibility: visible;
    pointer-events: auto;
    opacity: 1 !important;
    transform: none !important;
    max-height: none;
    max-height: min(85vh, calc(100dvh - 6rem));
    overflow-x: hidden;
    overflow-y: auto;
    overscroll-behavior: contain;
    -webkit-overflow-scrolling: touch;
    background: #f8f6f0;
    background-color: #f8f6f0;
    padding-bottom: 1.5rem;
    box-shadow: 0 18px 40px rgba(15, 23, 42, 0.18);
    z-index: 1150;
  }
  .primary-nav.is-open .nav-links,
  .primary-nav.is-open .nav-links.nav-menu {
    display: flex !important;
    flex-direction: column;
    width: 100%;
    gap: 0.15rem;
    padding: 0.85rem 1.25rem 0.35rem;
  }
  .primary-nav.is-open .nav-links li {
    width: 100%;
  }
  .primary-nav.is-open .nav-links a {
    display: flex;
    align-items: center;
    min-height: 48px;
    width: 100%;
    padding-block: 0.65rem;
  }
}
