/* Shared navigation for the standalone campaign pages. Load after page styles. */
.nav-menu-btn {
  display: none;
  width: auto;
  height: 42px;
  min-width: 42px;
  padding: 0 12px;
  gap: 10px;
  border-radius: 999px;
  border: 1px solid var(--site-border);
  background: var(--site-surface);
  color: var(--site-ink);
  cursor: pointer;
  align-items: center;
  justify-content: center;
}
.nav-menu-icon {
  display: block;
  flex: none;
  width: 16px;
  height: 2px;
  background: currentColor;
  border-radius: 2px;
  position: relative;
}
.nav-menu-icon::before,
.nav-menu-icon::after {
  content: '';
  position: absolute;
  left: 0;
  width: 16px;
  height: 2px;
  background: currentColor;
  border-radius: 2px;
}
.nav-menu-icon::before { top: -5px; }
.nav-menu-icon::after { top: 5px; }
.nav-menu-btn[aria-expanded='true'] .nav-menu-icon { background: transparent; }
.nav-menu-btn[aria-expanded='true'] .nav-menu-icon::before { top: 0; transform: rotate(45deg); }
.nav-menu-btn[aria-expanded='true'] .nav-menu-icon::after { top: 0; transform: rotate(-45deg); }
@media (max-width: 1280px) {
  .nav { backdrop-filter: none; -webkit-backdrop-filter: none; }
  .nav .wrap { grid-template-columns: 1fr auto; }
  .nav .wrap > a:first-child,
  .nav-tools { position: relative; z-index: 60; }
  .nav-menu-btn { display: inline-flex; }
  .nav-pages.hide-sm {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 0;
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    height: 100dvh;
    width: min(82vw, 320px);
    margin: 0;
    padding: 80px 8px 24px;
    background: var(--site-surface);
    box-shadow: -18px 0 40px -24px rgba(24, 26, 34, 0.4);
    transform: translateX(110%);
    visibility: hidden;
    pointer-events: none;
    z-index: 40;
    justify-self: auto;
    overflow-y: auto;
  }
  body.nav-open .nav-pages.hide-sm {
    transform: translateX(0);
    visibility: visible;
    pointer-events: auto;
  }
  .nav-pages a {
    display: block;
    width: 100%;
    padding: 16px 18px;
    font-size: 18px;
    white-space: normal;
    border-bottom: 1px solid var(--site-border);
  }
  body.nav-open { overflow: hidden; }
  body.nav-open::after {
    content: '';
    position: fixed;
    inset: 0;
    background: rgba(24, 26, 34, 0.4);
    z-index: 35;
  }
  [dir='rtl'] .nav-pages.hide-sm {
    right: auto;
    left: 0;
    transform: translateX(-110%);
    box-shadow: 18px 0 40px -24px rgba(24, 26, 34, 0.4);
  }
  [dir='rtl'] body.nav-open .nav-pages.hide-sm { transform: translateX(0); }
}

.nav { background: rgba(255,249,245,.96); }
.btn { border-radius: var(--site-button-radius); }
.btn-primary:hover { background: var(--site-coral-hover); }
@media (max-width: 640px) {
  .nav-menu-btn { width:42px; padding:0; }
  .nav-tools { gap:8px; }
}
@media (max-width: 360px) {
  .nav-logo { width:98px; height:auto; }
  .lang-btn { max-width:74px; padding-left:9px; padding-right:25px; }
}

h1,h2,h3{font-family:var(--site-font-display)}
