/* V86: the same wordmark, menu coordinates and responsive mode on every page. */
body.home .bridge-promo,
body.site-page .bridge-promo { display: none; }
body.home .nav-inner,
body.site-page .nav-inner { grid-template-columns: 230px auto 1fr; max-width: 1500px; padding-inline: 48px; gap: 22px; }
body.home .nav-wordmark,
body.site-page .nav-wordmark { grid-column: 1; grid-row: 1; justify-self: start; }
body.home .nav-wordmark span,
body.site-page .nav-wordmark span { font: 400 23px/1 Georgia, "Times New Roman", serif; letter-spacing: .025em; padding: 0; }
body.home .nav-wordmark small,
body.site-page .nav-wordmark small { font-size: 8px; letter-spacing: .12em; }
body.home .nav-links-left,
body.site-page .nav-links-left { grid-column: 2; grid-row: 1; }
body.home .nav-links-right,
body.site-page .nav-links-right { grid-column: 3; grid-row: 1; }
body.home .nav-links a.nav-contact,
body.site-page .nav-links a.nav-contact { border: 1px solid currentColor; }
body.home .hamburger,
body.site-page .hamburger { display: none; }

/* Large touch screens keep desktop navigation with comfortable hit areas. */
@media (min-width: 1200px) and (pointer: coarse), (min-width: 1200px) and (hover: none) {
  body.home .nav-links > a,
  body.site-page .nav-links > a,
  body.home .nav-collection-entry > a,
  body.site-page .nav-collection-entry > a,
  body.home .nav-links .language-pair a,
  body.site-page .nav-links .language-pair a { display: inline-flex; align-items: center; justify-content: center; min-width: 44px; min-height: 44px; }
  body.home .nav-mega-categories a,
  body.site-page .nav-mega-categories a { min-height: 44px; }
}

@media (min-width: 901px) and (max-width: 1150px) {
  body.home .nav-inner,
  body.site-page .nav-inner { padding-inline: 18px; gap: 18px; }
}
@media (min-width: 901px) and (max-width: 1100px) {
  body.home .nav-inner,
  body.site-page .nav-inner { grid-template-columns: 190px auto 1fr; }
}

/* Keep this query identical to initNav in app.js. */
@media (max-width: 900px), (max-width: 1199px) and (hover: none), (max-width: 1199px) and (pointer: coarse) {
  body.home .nav,
  body.home .nav.solid,
  body.home .nav[data-home="true"]:not(.solid),
  body.site-page .nav,
  body.site-page .nav.solid,
  body.home .nav-inner,
  body.site-page .nav-inner { height: 66px; }

  body.home .nav-inner,
  body.site-page .nav-inner { display: flex; justify-content: center; padding-inline: max(64px, env(safe-area-inset-left)) max(64px, env(safe-area-inset-right)); gap: 0; }
  body.home .nav-inner > .nav-links.nav-links-left:first-child,
  body.site-page .nav-inner > .nav-links.nav-links-left:first-child,
  body.home .nav-inner > .nav-links,
  body.site-page .nav-inner > .nav-links { display: none !important; }
  body.home .nav-wordmark,
  body.site-page .nav-wordmark { min-width: 0; justify-self: center; }
  body.home .nav-wordmark span { font-size: 22px; }
  body.site-page .nav-wordmark span { font-size: 22px; }
  body.home .nav-mega,
  body.site-page .nav-mega { display: none; }

  body.home .hamburger,
  body.site-page .hamburger { display: flex; position: absolute; left: max(16px, env(safe-area-inset-left)); right: auto; top: 11px; width: 44px; height: 44px; padding: 0; align-items: center; justify-content: center; gap: 5px; }
  body.home .hamburger span,
  body.site-page .hamburger span { width: 24px; align-self: center; }
  body.home .nav[data-home="true"] .hamburger span { background: #f6f2e9; }
  body.site-page .nav .hamburger span { background: #242321; }

  body.home .mobile-menu,
  body.site-page .mobile-menu { display: block; inset: 0; height: 100vh; height: 100dvh; padding: calc(78px + env(safe-area-inset-top)) max(24px, env(safe-area-inset-right)) calc(32px + env(safe-area-inset-bottom)) max(24px, env(safe-area-inset-left)); background: #fff; color: #242321; overflow-y: auto; overscroll-behavior: contain; -webkit-overflow-scrolling: touch; transition: none; }
  body.home .mobile-menu.open,
  body.site-page .mobile-menu.open { transform: none; transition: none; }
  body.home .mobile-menu .mobile-close,
  body.site-page .mobile-menu .mobile-close { position: fixed; top: calc(12px + env(safe-area-inset-top)); right: max(18px, env(safe-area-inset-right)); width: 44px; height: 44px; padding: 0; background: #fff; color: #242321; font-size: 30px; }
  body.home .mobile-menu > a,
  body.site-page .mobile-menu > a,
  body.home .mobile-menu > .mobile-collection-group,
  body.site-page .mobile-menu > .mobile-collection-group,
  body.home .mobile-menu > .language-pair,
  body.site-page .mobile-menu > .language-pair { width: min(100%, 560px); margin-inline: auto; }
  body.home .mobile-menu > a,
  body.site-page .mobile-menu > a { display: flex; align-items: center; min-height: 56px; padding-block: 14px; font-size: 18px; font-weight: 400; color: #242321; border-bottom: 1px solid #e6e3de; text-align: left; }
  body.home .mobile-menu a,
  body.site-page .mobile-menu a { transition: none; }
  body.home .mobile-menu .mobile-collection-link,
  body.site-page .mobile-menu .mobile-collection-link { min-height: 56px; display: flex; align-items: center; padding: 14px 54px 14px 0; }
  body.home .mobile-collection-group .mobile-collection-menu,
  body.site-page .mobile-collection-group .mobile-collection-menu { width: 100%; max-width: none; }
  body.home .mobile-collection-group summary,
  body.site-page .mobile-collection-group summary { width: 44px; height: 56px; color: #242321; padding: 0; }
  body.home .mobile-collection-menu > div,
  body.site-page .mobile-collection-menu > div { gap: 0 16px; padding-bottom: 16px; }
  body.home .mobile-collection-menu a,
  body.site-page .mobile-collection-menu a { display: flex; align-items: center; min-height: 44px; padding: 10px 0; color: #45423d; font-size: 15px; line-height: 1.45; opacity: 1; }
  body.home .mobile-menu > .language-pair,
  body.site-page .mobile-menu > .language-pair { display: flex; justify-content: flex-start; gap: 10px; margin-top: 22px; color: #242321; }
  body.home .mobile-menu .language-pair a,
  body.site-page .mobile-menu .language-pair a { display: inline-flex; align-items: center; justify-content: center; min-width: 44px; min-height: 44px; padding: 10px; color: #242321; font-size: 14px; }
}
