/* Mobile navigation. Desktop bar is unchanged. */
.nav-menu-kicker { display: none; }

@media (max-width: 768px) {
  body.home-editorial nav.site-nav > .container,
  body.site-editorial nav.site-nav > .container {
    display: flex;
    align-items: center;
    justify-content: space-between;
    min-height: 54px;
    gap: 12px;
  }

  body.home-editorial nav.site-nav > .container::before,
  body.site-editorial nav.site-nav > .container::before {
    content: "Menu";
    font-family: Outfit, Poppins, sans-serif;
    font-size: 0.72rem;
    font-weight: 500;
    letter-spacing: 0.22em;
    text-transform: uppercase;
    color: rgba(255, 255, 255, 0.78);
  }
  html[lang="zh-CN"] body.home-editorial nav.site-nav > .container::before,
  html[lang="zh-CN"] body.site-editorial nav.site-nav > .container::before { content: "菜单"; letter-spacing: 0.18em; }
  html[lang="ja"] body.home-editorial nav.site-nav > .container::before,
  html[lang="ja"] body.site-editorial nav.site-nav > .container::before { content: "メニュー"; letter-spacing: 0.12em; }
  html[lang="ko"] body.home-editorial nav.site-nav > .container::before,
  html[lang="ko"] body.site-editorial nav.site-nav > .container::before { content: "메뉴"; letter-spacing: 0.12em; }

  body.home-editorial nav.site-nav > .container:has(.nav-menu-kicker)::before,
  body.site-editorial nav.site-nav > .container:has(.nav-menu-kicker)::before {
    content: none !important;
  }

  body.home-editorial .nav-menu-kicker,
  body.site-editorial .nav-menu-kicker {
    display: block;
    font-family: Outfit, Poppins, sans-serif;
    font-size: 0.72rem;
    font-weight: 500;
    letter-spacing: 0.22em;
    text-transform: uppercase;
    color: rgba(255, 255, 255, 0.78);
  }

  body.home-editorial nav.site-nav .nav-toggle,
  body.site-editorial nav.site-nav .nav-toggle {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    width: 44px !important;
    height: 44px;
    margin-left: auto;
    padding: 0 !important;
    text-align: center;
    color: #fff;
    flex: 0 0 44px;
  }

  body:has(nav.site-nav.nav-open) {
    overflow: hidden;
  }

  body.home-editorial nav.site-nav.nav-open,
  body.site-editorial nav.site-nav.nav-open {
    position: fixed;
    inset: 0;
    z-index: 100000;
    height: 100%;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    background: #f3efe8 !important;
    box-shadow: none !important;
  }

  body.home-editorial nav.site-nav.nav-open > .container,
  body.site-editorial nav.site-nav.nav-open > .container {
    display: block;
    max-width: none;
    width: 100%;
    min-height: 100%;
    padding: max(18px, env(safe-area-inset-top)) 22px max(32px, env(safe-area-inset-bottom)) !important;
    box-sizing: border-box;
  }

  body.home-editorial nav.site-nav.nav-open > .container::before,
  body.site-editorial nav.site-nav.nav-open > .container::before {
    content: "Menu";
    font-family: Fraunces, Georgia, "Times New Roman", serif;
    font-size: 1.65rem;
    font-weight: 500;
    letter-spacing: -0.03em;
    text-transform: none;
    color: #1c1917;
    padding: 4px 56px 18px 2px;
    line-height: 1.1;
  }
  html[lang="zh-CN"] body.home-editorial nav.site-nav.nav-open > .container::before,
  html[lang="zh-CN"] body.site-editorial nav.site-nav.nav-open > .container::before { content: "菜单"; }
  html[lang="ja"] body.home-editorial nav.site-nav.nav-open > .container::before,
  html[lang="ja"] body.site-editorial nav.site-nav.nav-open > .container::before { content: "メニュー"; }
  html[lang="ko"] body.home-editorial nav.site-nav.nav-open > .container::before,
  html[lang="ko"] body.site-editorial nav.site-nav.nav-open > .container::before { content: "메뉴"; }

  body.home-editorial nav.site-nav.nav-open > .container:has(.nav-menu-kicker)::before,
  body.site-editorial nav.site-nav.nav-open > .container:has(.nav-menu-kicker)::before {
    content: none !important;
    padding: 0;
  }

  body.home-editorial nav.site-nav.nav-open .nav-menu-kicker,
  body.site-editorial nav.site-nav.nav-open .nav-menu-kicker {
    display: block;
    font-family: Fraunces, Georgia, "Times New Roman", serif;
    font-size: 1.65rem;
    font-weight: 500;
    letter-spacing: -0.03em;
    text-transform: none;
    color: #1c1917;
    padding: 4px 56px 18px 2px;
    line-height: 1.1;
  }

  body.home-editorial nav.site-nav.nav-open .nav-toggle,
  body.site-editorial nav.site-nav.nav-open .nav-toggle {
    position: fixed;
    top: max(10px, env(safe-area-inset-top));
    right: 12px;
    z-index: 2;
    color: #1c1917;
    background: #f3efe8;
  }

  body.home-editorial nav.site-nav.nav-open .nav-container,
  body.site-editorial nav.site-nav.nav-open .nav-container {
    display: grid !important;
    grid-template-columns: 1fr 1fr;
    column-gap: 18px;
    align-items: start;
    width: 100%;
    padding: 0 0 12px;
  }

  body.home-editorial nav.site-nav.nav-open .nav-container > *,
  body.site-editorial nav.site-nav.nav-open .nav-container > * {
    order: 20;
    grid-column: auto;
    min-width: 0;
  }

  /* Home, listings, compounds, notes, agents — the destinations people came for. */
  body.home-editorial nav.site-nav.nav-open .nav-container > :nth-child(1),
  body.site-editorial nav.site-nav.nav-open .nav-container > :nth-child(1) { order: 1; }
  body.home-editorial nav.site-nav.nav-open .nav-container > :nth-child(4),
  body.site-editorial nav.site-nav.nav-open .nav-container > :nth-child(4) { order: 2; }
  body.home-editorial nav.site-nav.nav-open .nav-container > :nth-child(5),
  body.site-editorial nav.site-nav.nav-open .nav-container > :nth-child(5) { order: 3; }
  body.home-editorial nav.site-nav.nav-open .nav-container > :nth-child(6),
  body.site-editorial nav.site-nav.nav-open .nav-container > :nth-child(6) { order: 4; }
  body.home-editorial nav.site-nav.nav-open .nav-container > :nth-child(7),
  body.site-editorial nav.site-nav.nav-open .nav-container > :nth-child(7) { order: 5; }

  body.home-editorial nav.site-nav.nav-open .nav-container > :nth-child(1),
  body.home-editorial nav.site-nav.nav-open .nav-container > :nth-child(4),
  body.home-editorial nav.site-nav.nav-open .nav-container > :nth-child(5),
  body.home-editorial nav.site-nav.nav-open .nav-container > :nth-child(6),
  body.home-editorial nav.site-nav.nav-open .nav-container > :nth-child(7),
  body.site-editorial nav.site-nav.nav-open .nav-container > :nth-child(1),
  body.site-editorial nav.site-nav.nav-open .nav-container > :nth-child(4),
  body.site-editorial nav.site-nav.nav-open .nav-container > :nth-child(5),
  body.site-editorial nav.site-nav.nav-open .nav-container > :nth-child(6),
  body.site-editorial nav.site-nav.nav-open .nav-container > :nth-child(7) {
    grid-column: 1 / -1;
  }

  body.home-editorial nav.site-nav.nav-open .nav-container > :nth-child(1) > .nav-link,
  body.home-editorial nav.site-nav.nav-open .nav-container > :nth-child(4),
  body.home-editorial nav.site-nav.nav-open .nav-container > :nth-child(5),
  body.home-editorial nav.site-nav.nav-open .nav-container > :nth-child(6),
  body.home-editorial nav.site-nav.nav-open .nav-container > :nth-child(7),
  body.site-editorial nav.site-nav.nav-open .nav-container > :nth-child(1) > .nav-link,
  body.site-editorial nav.site-nav.nav-open .nav-container > :nth-child(4),
  body.site-editorial nav.site-nav.nav-open .nav-container > :nth-child(5),
  body.site-editorial nav.site-nav.nav-open .nav-container > :nth-child(6),
  body.site-editorial nav.site-nav.nav-open .nav-container > :nth-child(7),
  body.home-editorial nav.site-nav.nav-open .nav-container > a:nth-child(1),
  body.site-editorial nav.site-nav.nav-open .nav-container > a:nth-child(1) {
    font-family: Fraunces, Georgia, "Times New Roman", serif;
    font-size: clamp(1.45rem, 6.2vw, 1.85rem);
    font-weight: 500;
    letter-spacing: -0.03em;
    line-height: 1.15;
    padding: 11px 0;
    border: 0;
    border-bottom: 1px solid rgba(28, 25, 23, 0.1);
    background: transparent !important;
    color: #1c1917 !important;
    width: 100%;
    white-space: normal;
    word-break: normal;
  }

  body.home-editorial nav.site-nav.nav-open .nav-container > :nth-child(7),
  body.site-editorial nav.site-nav.nav-open .nav-container > :nth-child(7) {
    margin-bottom: 14px;
    border-bottom-color: rgba(28, 25, 23, 0.18);
  }

  body.home-editorial nav.site-nav.nav-open .nav-link,
  body.site-editorial nav.site-nav.nav-open .nav-link {
    width: auto;
    min-height: 44px;
    padding: 12px 0;
    border: 0;
    border-bottom: 1px solid rgba(28, 25, 23, 0.08);
    background: transparent !important;
    color: #44403c !important;
    font-family: Outfit, Poppins, sans-serif;
    font-size: 0.92rem;
    font-weight: 500;
    letter-spacing: 0;
    line-height: 1.3;
    white-space: normal;
    word-break: normal;
    overflow-wrap: break-word;
  }

  body.home-editorial nav.site-nav.nav-open .nav-link:hover,
  body.home-editorial nav.site-nav.nav-open .nav-link.active,
  body.site-editorial nav.site-nav.nav-open .nav-link:hover,
  body.site-editorial nav.site-nav.nav-open .nav-link.active {
    background: transparent !important;
    color: #1c1917 !important;
  }

  body.home-editorial nav.site-nav.nav-open .nav-link .icon-inline,
  body.site-editorial nav.site-nav.nav-open .nav-link .icon-inline {
    display: none !important;
  }

  body.home-editorial nav.site-nav.nav-open .dropdown > .nav-link .icon-inline:last-child,
  body.site-editorial nav.site-nav.nav-open .dropdown > .nav-link .icon-inline:last-child {
    display: inline-flex !important;
    width: 1rem;
    height: 1rem;
    margin-left: 6px;
    color: #78716c;
  }

  body.home-editorial nav.site-nav.nav-open .dropdown,
  body.site-editorial nav.site-nav.nav-open .dropdown {
    grid-column: 1 / -1;
    order: 12;
  }

  body.home-editorial nav.site-nav.nav-open .dropdown > .nav-link,
  body.site-editorial nav.site-nav.nav-open .dropdown > .nav-link {
    display: flex;
    align-items: center;
    width: 100%;
  }

  body.home-editorial nav.site-nav.nav-open .dropdown-content,
  body.site-editorial nav.site-nav.nav-open .dropdown-content {
    position: static !important;
    min-width: 0 !important;
    width: 100%;
    margin: 0;
    padding: 4px 0 8px 2px;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
  }

  body.home-editorial nav.site-nav.nav-open .dropdown-content a,
  body.site-editorial nav.site-nav.nav-open .dropdown-content a {
    color: #44403c !important;
    padding: 11px 0;
    font-size: 0.92rem;
    white-space: normal;
    background: transparent !important;
  }

  body.home-editorial nav.site-nav.nav-open .dropdown-section-label,
  body.site-editorial nav.site-nav.nav-open .dropdown-section-label {
    color: #78716c;
    padding: 12px 0 2px;
    letter-spacing: 0.08em;
  }

  body.home-editorial nav.site-nav.nav-open .dropdown-divider,
  body.site-editorial nav.site-nav.nav-open .dropdown-divider {
    margin: 8px 0;
    background: rgba(28, 25, 23, 0.1);
  }

  @media (prefers-reduced-motion: no-preference) {
    body.home-editorial nav.site-nav.nav-open .nav-container,
    body.site-editorial nav.site-nav.nav-open .nav-container {
      animation: chr-nav-in 0.28s ease;
    }
  }
}

@keyframes chr-nav-in {
  from { opacity: 0; transform: translateY(10px); }
  to { opacity: 1; transform: none; }
}
