/* Shared interior-page masthead: matches the homepage navigation behavior. */
body.reference-layout:not(.home-page) .site-header {
  position: fixed !important;
  inset: 0 0 auto !important;
  z-index: 20;
  width: 100% !important;
  max-width: none !important;
  height: clamp(83px, 11.5svh, 115px) !important;
  margin: 0 !important;
  padding: 0 clamp(40px, 5.8vw, 144px) clamp(11px, 1.5svh, 15px) !important;
  box-sizing: border-box;
  transform: none !important;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
  align-items: center;
  gap: clamp(28px, 2.4vw, 52px);
  border-bottom: 1px solid transparent;
  color: #000 !important;
  background: #fff !important;
  transition: background-color .25s ease, border-color .25s ease, box-shadow .25s ease;
}
body.reference-layout:not(.home-page) .site-header::after {
  content: '';
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  height: 1px;
  background: #111;
}
body.reference-layout:not(.home-page) .site-header.is-scrolled { border-bottom-color: transparent; background: #fff !important; box-shadow: 0 3px 18px #1720190d; }
body.reference-layout:not(.home-page) .site-header .wordmark { color: inherit; font-size: clamp(35px, 2.8vw, 72px); font-weight: 600; line-height: 1.15; text-shadow: none; }
body.reference-layout:not(.home-page) .site-header .main-nav { display: flex; gap: clamp(24px, 1.75vw, 44px); color: inherit; font-size: clamp(15px, 1.2vw, 28px); }
body.reference-layout:not(.home-page) .site-header .social-links { display: flex; gap: clamp(18px, 1.35vw, 34px); color: inherit; }
body.reference-layout:not(.home-page) .site-header .newsletter-button { min-width: 112px; min-height: 50px; padding: 12px 20px; border: 1px solid currentColor; border-radius: 4px; background: transparent; color: inherit; }
body.reference-layout:not(.home-page) .site-header .nav-dropdown-panel { color: #1c271f; }
body.reference-layout:not(.home-page) .menu-toggle { display: none; }
body.reference-layout.menu-open .site-header { border-bottom-color: transparent !important; background: transparent !important; color: #fff !important; box-shadow: none !important; }
body.reference-layout.menu-open .site-header::after { display: none; }
body.reference-layout:not(.home-page) > .site-header {
  left: 0 !important;
  right: 0 !important;
  width: 100vw !important;
  max-width: 100vw !important;
  margin-inline: 0 !important;
  transform: none !important;
}
@media (min-width: 901px) {
  body.reference-layout:not(.home-page) .site-header .social-links { position: absolute; right: clamp(24px, 3vw, 56px); }
}
@media (min-width: 1201px) {
  body.reference-layout:not(.home-page) .site-header .wordmark { transform: translateX(20px); }
}
@media (max-width: 1200px) and (min-width: 901px) {
  body.reference-layout:not(.home-page) .site-header { padding: 0 36px clamp(11px, 1.5svh, 15px) !important; gap: 18px; }
  body.reference-layout:not(.home-page) .site-header .main-nav { gap: 17px; font-size: 14px; }
  body.reference-layout:not(.home-page) .site-header .wordmark { font-size: 34px; }
  body.reference-layout:not(.home-page) .site-header .social-links { gap: 9px; }
  body.reference-layout:not(.home-page) .site-header .newsletter-button { min-width: auto; padding-inline: 12px; }
}
@media (max-width: 900px) {
  body.reference-layout:not(.home-page) .site-header { height: 83px !important; padding: 0 24px 11px !important; display: flex; justify-content: space-between; }
  body.reference-layout:not(.home-page) .site-header .wordmark { font-size: clamp(29px, 7vw, 40px); }
  body.reference-layout:not(.home-page) .site-header .main-nav, body.reference-layout:not(.home-page) .site-header .social-links { display: none; }
  body.reference-layout:not(.home-page) .site-header .menu-toggle { display: flex; align-items: center; gap: 11px; padding: 12px 0 12px 8px; border: 0; background: none; color: inherit; font-size: 12px; }
  body.reference-layout .mobile-menu:not([hidden]) { padding-inline: clamp(20px, 6vw, 48px); padding-bottom: max(36px, env(safe-area-inset-bottom)); }
  body.reference-layout .mobile-menu a { overflow-wrap: anywhere; }
}
