.header-shell{align-items:center}.site-header{position:sticky;top:0;z-index:40;background:rgba(248,246,240,0.96);backdrop-filter:blur(24px);border-bottom:1px solid rgba(226,232,240,0.9)}.header-shell .nav-brand-text{white-space:nowrap}.header-shell .nav-title{font-family:var(--font-display);letter-spacing:0.18em;text-transform:uppercase;font-size:0.95rem}.header-shell .nav-subtitle{font-family:var(--font-body);font-size:0.7rem;color:var(--gray-500);letter-spacing:0.16em;text-transform:uppercase}.primary-nav{display:flex;align-items:center;gap:1.5rem;margin-left:auto}.nav-links-wrapper{display:flex;align-items:center;gap:1.75rem}.nav-links{display:flex;align-items:center;gap:1.8rem;font-family:var(--font-body);font-size:0.78rem;letter-spacing:0.16em;text-transform:uppercase}.nav-link{position:relative;padding-block:0.2rem;color:var(--gray-600);transition:color var(--transition-base) ease}.nav-link::after{content:"";position:absolute;left:0;bottom:-0.3rem;height:1px;width:0;background:linear-gradient(to right,#d4af37,#fbbf24);opacity:0;transition:width var(--transition-base) ease,opacity var(--transition-base) ease}.nav-link:hover{color:var(--color-text)}.nav-link:hover::after{width:100%;opacity:1}.nav-item-highlight .nav-link-cta{padding:0.35rem 0.8rem;border-radius:999px;border:1px solid rgba(212,175,55,0.7);background-color:rgba(250,250,249,0.9);color:var(--color-text);font-size:0.7rem;letter-spacing:0.16em;text-transform:uppercase;box-shadow:var(--shadow-xs);transition:background-color var(--transition-base) ease,border-color var(--transition-base) ease,box-shadow var(--transition-base) ease,transform var(--transition-fast) ease}.nav-item-highlight .nav-link-cta:hover{background-color:#ffffff;border-color:var(--color-primary);box-shadow:var(--shadow-sm);transform:translateY(-1px)}.nav-cta{display:flex;align-items:center;gap:0.6rem}.header-reserve-btn{font-family:var(--font-body)}.nav-toggle{display:none;background:none;border:0;cursor:pointer;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;border-radius:999px;border:1px solid rgba(148,163,184,0.7);transition:background-color var(--transition-base) ease,border-color var(--transition-base) ease,box-shadow var(--transition-base) ease}.nav-toggle-bar{width:1.2rem;height:1px;border-radius:999px;background-color:var(--color-text);transition:transform var(--transition-fast) ease,opacity var(--transition-fast) ease,translate var(--transition-fast) ease}.nav-toggle:hover{background-color:#fdfcf8;border-color:var(--color-primary);box-shadow:0 12px 32px rgba(15,23,42,0.18)}.nav-toggle.is-open .nav-toggle-bar:first-child{transform:rotate(45deg);translate:0 3px}.nav-toggle.is-open .nav-toggle-bar:last-child{transform:rotate(-45deg);translate:0 -3px}.nav-links-wrapper{transition:transform var(--transition-base) ease,opacity var(--transition-base) ease,visibility var(--transition-base) ease}.nav-links-wrapper[data-menu-collapsible="true"]{position:fixed;inset:var(--navbar-height) 0 auto 0;background:rgba(248,246,240,0.98);backdrop-filter:blur(20px);border-bottom:1px solid rgba(226,232,240,0.9);flex-direction:column;align-items:flex-start;padding:1rem 1.25rem 1.25rem;transform:translateY(-8px);opacity:0;visibility:hidden;pointer-events:none}.nav-links-wrapper[data-menu-collapsible="true"].is-open{transform:translateY(0);opacity:1;visibility:visible;pointer-events:auto}.nav-links-wrapper[data-menu-collapsible="true"] .nav-links{flex-direction:column;align-items:flex-start;width:100%;gap:0.6rem;margin-bottom:0.25rem}.nav-links-wrapper[data-menu-collapsible="true"] .nav-cta{width:100%;justify-content:flex-start;margin-top:0.5rem}.nav-links-wrapper[data-menu-collapsible="true"] .header-reserve-btn{width:auto}.nav-links-wrapper[data-menu-collapsible="true"] .nav-item-highlight .nav-link-cta{padding-left:0;font-size:0.78rem;border:none;box-shadow:none;background:transparent}.nav-links-wrapper[data-menu-collapsible="true"] .nav-item-highlight .nav-link-cta::after{display:none}@media (max-width:900px){.nav-links{display:flex}.nav-cta{display:none}.nav-toggle{display:inline-flex}.nav-links-wrapper{display:flex}.primary-nav{gap:0.75rem}}@media (min-width:901px){.nav-links-wrapper{transform:none!important;opacity:1!important;visibility:visible!important;position:static!important;pointer-events:auto!important;flex-direction:row;align-items:center}.nav-toggle{display:none}.nav-cta{display:flex}}

/* --- visual fix pass 2026-08-06 --- */
@media (max-width: 768px) {
  .nav-links-wrapper,
  .nav-links-wrapper.is-open {
    background: #f8f6f0;
    background-color: #f8f6f0;
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
    overflow-y: auto;
    overscroll-behavior: contain;
  }
  .nav-links.nav-menu {
    display: flex;
    flex-direction: column;
    width: 100%;
  }
  .nav-link {
    display: flex;
    align-items: center;
    min-height: 44px;
  }
  .primary-nav {
    max-width: 100%;
    min-width: 0;
  }
}
@media (min-width: 769px) {
  .nav-links.nav-menu {
    display: flex;
    visibility: visible;
    opacity: 1;
  }
  .nav-toggle {
    display: none;
  }
}
.nav-subtitle,
.nav-link-cta {
  font-size: 12px;
}

@media (max-width: 768px) {
  .header-shell,
  .nav-inner {
    max-width: 100%;
    padding-inline: 0.75rem;
    gap: 0.5rem;
  }
  .nav-brand {
    min-width: 0;
    flex: 1 1 auto;
  }
  .nav-brand-text {
    min-width: 0;
  }
  .nav-title {
    overflow-wrap: anywhere;
  }
  .primary-nav {
    flex: 0 0 auto;
  }
  .nav-toggle {
    width: 44px;
    height: 44px;
    flex-shrink: 0;
  }
}


/* --- hamburger icon center fix 2026-08-06 --- */
.nav-toggle {
  display: inline-flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 6px;
  padding: 0;
  line-height: 0;
}
.nav-toggle-bar {
  display: block;
  width: 1.15rem;
  height: 2px;
  margin: 0;
  flex-shrink: 0;
  transform-origin: center center;
  translate: none;
}
.nav-toggle.is-open .nav-toggle-bar:first-child {
  transform: translateY(4px) rotate(45deg);
  translate: none;
}
.nav-toggle.is-open .nav-toggle-bar:last-child {
  transform: translateY(-4px) rotate(-45deg);
  translate: none;
}
.nav-toggle:not(.is-open) .nav-toggle-bar {
  transform: none;
  translate: none;
  opacity: 1;
}
