.public-site .public-header.landing-header {
  position:var(--navbar-position,fixed); inset:0 0 auto; z-index:50; min-height:82px;
  background:var(--navbar-bg,rgba(255,255,255,.9)); backdrop-filter:var(--navbar-filter,blur(15px));
  color:var(--navbar-text,#36332e); line-height:1.4;
  display:grid; grid-template-columns:auto minmax(0,1fr) auto; align-items:center;
  gap:12px 28px; padding:12px clamp(24px,3vw,64px); border-bottom:1px solid #b08d571f;
  transition:background .25s ease,box-shadow .25s ease;
}
.public-site .landing-header.has-scrolled,.public-site .landing-header.menu-open {
  background:linear-gradient(var(--navbar-bg),var(--navbar-bg)),var(--surface-warm,#fffdf9); box-shadow:0 8px 32px #3024180a;
}
.public-site .landing-header.menu-open { z-index:1050; }
.public-site .public-header.landing-header .public-brand { max-width:230px; }
.public-site .landing-header .public-brand strong { font-size:17px; line-height:1.35; }
.public-site.signature-brand .landing-header .public-brand strong { font-size:25px; }
.landing-nav { min-width:0; }
.landing-nav-links { display:flex; align-items:center; justify-content:center; gap:clamp(12px,1.2vw,22px); }
.public-site .landing-nav-link {
  position:relative; display:flex; align-items:center; min-height:44px; padding:6px 0;
  color:var(--navbar-text,#36332e); font:500 11px/1.4 var(--font-body,'DM Sans',sans-serif);
  letter-spacing:.1em; text-transform:uppercase; white-space:nowrap;
}
.landing-nav-link::after {
  content:""; position:absolute; height:1px; bottom:6px; left:0; right:0;
  background:var(--gold,#b08d57); transform:scaleX(0); transform-origin:left; transition:transform .22s ease;
}
.landing-nav-link:hover::after,.landing-nav-link[aria-current]::after { transform:scaleX(1); }
.landing-nav-link[aria-current] { font-weight:700; }
.landing-nav-number,.landing-nav-arrow,.landing-nav-caption,.landing-nav-footer { display:none; }
.landing-header-actions { display:flex; align-items:center; gap:14px; }
.public-site .landing-header .landing-book {
  display:inline-flex; align-items:center; justify-content:center; border:0; background:#76542c; color:#fff; cursor:pointer;
  min-height:44px; padding:13px 20px; border-radius:999px; white-space:nowrap; gap:10px;
  font:600 11px/1.4 var(--font-body,'DM Sans',sans-serif); letter-spacing:.025em;
}
.landing-team-access { display:grid; place-items:center; width:36px; height:44px; color:var(--navbar-text,#36332e); }
.landing-team-access:hover { color:var(--gold-dark); }
.landing-menu-toggle { display:none; }
.public-site:has(.landing-header) main>section { scroll-margin-top:calc(var(--public-header-height,100px) + 20px); }
.landing-menu-backdrop { display:none; }
@media (min-width:1101px) and (max-width:1439px) {
  .public-site .public-header.landing-header { grid-template-columns:1fr auto; gap:0 24px; padding-bottom:0; }
  .landing-header .landing-nav { grid-row:2; grid-column:1/-1; border-top:1px solid #b08d571f; }
  .landing-nav-links { gap:clamp(18px,2.2vw,34px); }
  .public-site .landing-nav-link { min-height:46px; }
}
@media (max-width:1100px) {
  .public-site .public-header.landing-header { grid-template-columns:minmax(0,1fr) auto; gap:16px; padding:10px 24px; }
  .public-site .public-header.landing-header .public-brand { max-width:min(100%,280px); }
  .landing-header-actions { gap:12px; }
  .landing-team-access { display:none; }
  .landing-menu-toggle {
    display:grid; place-items:center; width:44px; height:44px; flex-shrink:0; padding:0;
    color:var(--navbar-text,#36332e); border:1px solid #b08d5740; border-radius:50%; background:transparent;
  }
  .landing-menu-toggle:hover { background:#b08d5714; }
  .landing-header .landing-nav {
    display:none; position:absolute; inset:100% 0 auto; max-height:calc(100dvh - var(--public-header-height,100px));
    padding:24px clamp(24px,6vw,64px) 32px; overflow:auto; overscroll-behavior:contain;
    background:linear-gradient(var(--navbar-bg),var(--navbar-bg)),var(--surface-warm,#fffdf9); border-top:1px solid #b08d5730; box-shadow:0 16px 28px #30241812;
  }
  .landing-header .landing-nav.is-open { display:block; }
  .landing-nav-caption { display:block; margin:0 0 14px; color:var(--navbar-text,#36332e); font-size:10px; letter-spacing:.18em; text-transform:uppercase; }
  .landing-nav-links { display:grid; grid-template-columns:1fr 1fr; align-items:stretch; gap:0 32px; }
  .public-site .landing-nav-link { gap:15px; min-height:52px; border-bottom:1px solid #b08d5726; font-size:13px; letter-spacing:.015em; text-transform:none; }
  .landing-nav-link::after { bottom:0; }
  .landing-nav-number { display:block; color:var(--navbar-text,#36332e); opacity:.6; font-size:10px; letter-spacing:.08em; }
  .landing-nav-arrow { display:block; margin-left:auto; color:var(--navbar-text,#36332e); opacity:.6; }
  .landing-nav-footer { display:flex; flex-wrap:wrap; align-items:center; gap:20px; margin-top:24px; }
  .landing-nav-footer>a { display:flex; align-items:center; gap:8px; color:var(--navbar-text,#36332e); font-size:12px; }
  .landing-menu-backdrop { display:block; position:fixed; inset:var(--public-header-height,100px) 0 0; z-index:1049; background:#30241840; }
}
@media (max-width:600px) {
  .public-site .public-header.landing-header { padding:10px 18px; gap:12px; }
  .public-site .public-header.landing-header .public-brand { max-width:220px; }
  .public-site .landing-header .public-brand .public-logo { max-height:min(var(--brand-logo-height,42px),78px); }
  .public-site .landing-header .public-brand strong { font-size:14px; }
  .public-site.signature-brand .landing-header .public-brand strong { font-size:22px; }
  .public-site .landing-header-actions>.landing-book { display:none; }
  .landing-nav-links { grid-template-columns:1fr; }
  .landing-header .landing-nav { padding:20px 24px 28px; }
  .public-site .landing-nav-link { min-height:48px; }
  .landing-nav-footer { flex-direction:column; align-items:stretch; gap:18px; }
  .landing-nav-footer>a { justify-content:center; min-height:32px; }
}

/* Both the initial HTML and the interactive page use this same stylesheet. */
.public-site:has(.landing-header) { --public-header-height:max(82px,calc(var(--brand-logo-height,42px) + 25px)); }
.public-site .landing-header .landing-book:hover { background:#5a3f20; color:#fff; transform:translateY(-1px); }
.landing-header svg { flex-shrink:0; }
.landing-menu-backdrop[hidden],.landing-close-icon { display:none; }
.menu-open .landing-menu-icon { display:none; }
.menu-open .landing-close-icon { display:block; }
.seo-site .seo-intro { padding-top:calc(var(--public-header-height,82px) + 42px); }
.seo-site .seo-detail-visual { top:calc(var(--public-header-height,82px) + 24px); }
.seo-site .seo-skip { z-index:1051; }
@media(min-width:1101px) and (max-width:1439px) {
  .public-site:has(.landing-header) { --public-header-height:calc(max(82px,calc(var(--brand-logo-height,42px) + 25px)) + 47px); }
}
@media(max-width:600px) {
  .public-site:has(.landing-header) { --public-header-height:max(82px,calc(min(var(--brand-logo-height,42px),78px) + 21px)); }
}
@media(max-width:760px) {
  .seo-site .seo-intro { padding-top:calc(var(--public-header-height,82px) + 24px); }
}
@media(prefers-reduced-motion:reduce) {
  .public-site .public-header.landing-header,.landing-nav-link::after { transition:none; }
}
