/* Script-aware type and direction. Original photographs are never mirrored. */
@font-face { font-family: "Harvest Cyrillic Sans"; src: url("../fonts/menu-sans-cyrillic.woff2") format("woff2"); font-weight: 400; font-display: swap; }
@font-face { font-family: "Harvest Cyrillic Sans"; src: url("../fonts/menu-sans-bold-cyrillic.woff2") format("woff2"); font-weight: 700; font-display: swap; }
@font-face { font-family: "Harvest Cyrillic Serif"; src: url("../fonts/menu-serif-cyrillic.woff2") format("woff2"); font-weight: 400; font-display: swap; }
@font-face { font-family: "Harvest Cyrillic Serif"; src: url("../fonts/menu-serif-bold-cyrillic.woff2") format("woff2"); font-weight: 700; font-display: swap; }
@font-face { font-family: "Harvest Arabic"; src: url("../fonts/noto-sans-arabic.woff2") format("woff2"); font-style: normal; font-weight: 400 700; font-display: swap; }

.hs-language { flex-shrink: 0; gap: 4px; }
.hs-language a { display: inline-flex; align-items: center; justify-content: center; min-width: 36px; min-height: 44px; padding-inline: 5px; font-size: .875rem; }
.hs-language a[lang="ar"] { font-family: Tahoma, Arial, sans-serif; letter-spacing: 0; }
.hs-language a[aria-current="page"] { text-decoration: underline; text-underline-offset: 5px; }
.hs-header__brand, .hs-brand__type, .hs-hero__content { min-width: 0; }
.hs-header__brand { flex-shrink: 1; }
.hs-nav { flex-shrink: 0; }
.hs-nav__list { gap: clamp(12px, 1.8vw, 26px); }
html { scroll-padding-top: calc(var(--hs-measured-header-height, var(--hm-header-height)) + 18px); }
.hm-detail-nav { top: var(--hs-measured-header-height, var(--hm-header-height)); }

html[lang="ru"] { --hs-serif: "Harvest Cyrillic Serif", Georgia, serif; --hs-sans: "Harvest Cyrillic Sans", Arial, sans-serif; }
html[lang="ru"] :is(.hm-home, .hm-directory-page, .hm-detail, .hm-locations, .hb-page) { --hm-serif: "Harvest Cyrillic Serif", Georgia, serif; --hm-sans: "Harvest Cyrillic Sans", Arial, sans-serif; }
html[lang="ru"] :is(.hs-title, .hm-directory-page h1, .hm-detail-header h1, .hb-hero h1) { font-size: clamp(2.4rem, 4.4vw, 4.9rem); line-height: 1.18; overflow-wrap: anywhere; }
html[lang="ru"] :is(.hs-eyebrow, .hb-eyebrow, .hs-button, .hs-brand__type small) { letter-spacing: .025em; line-height: 1.6; }
html[lang="ru"] .hs-header .hs-brand__type strong { font-size: 1.3rem; }
html[lang="ru"] .hs-header .hs-nav__list a { font-size: .875rem; }

html[lang="ar"] { --hs-serif: "Harvest Arabic", Tahoma, sans-serif; --hs-sans: "Harvest Arabic", Tahoma, sans-serif; }
html[lang="ar"] :is(.hm-home, .hm-directory-page, .hm-detail, .hm-locations, .hb-page) { --hm-serif: "Harvest Arabic", Tahoma, sans-serif; --hm-sans: "Harvest Arabic", Tahoma, sans-serif; }
html[lang="ar"] body { line-height: 1.9; }
html[lang="ar"] :is(h1,h2,h3,h4,p,a,span,small,strong,button,label,dt,dd,li) { letter-spacing: normal !important; text-transform: none; }
html[lang="ar"] :is(h1,h2,h3,h4) { line-height: 1.55; font-style: normal; }
html[lang="ar"] em { font-style: normal; }
html[lang="ar"] :is(.hs-title, .hm-directory-page h1, .hm-detail-header h1, .hb-hero h1) { font-size: clamp(2.4rem, 4.4vw, 4.8rem); line-height: 1.5; }
html[lang="ar"] :is(.hs-section-title, .hb-title) { font-size: clamp(2rem, 3.6vw, 3.4rem); line-height: 1.55; }
html[lang="ar"] :is(.hs-eyebrow, .hb-eyebrow, .hs-button, .hs-link-arrow, .hs-brand__type small) { line-height: 1.8; }
html[lang="ar"] :is(.hm-dish p, .hs-hero__lead, .hb-lead, .hm-concept__copy p) { line-height: 1.95; }
html[lang="ar"] :is(.hs-brand__type strong, .hs-brand__type small) { line-height: 1.65; }
html[lang="ar"] .hs-header .hs-brand__type strong { font-size: 1.4rem; }
html[lang="ar"] .hs-header .hs-brand__type small { font-size: .8rem; }
html[lang="ar"] .hm-detail-nav .hm-pdf-link { margin-left: 0; margin-right: auto; }
html[lang="ar"] .hm-location-note { border-left: 0; padding-left: 0; border-right: 2px solid var(--hm-line); padding-right: 14px; }
html[lang="ar"] .hm-location-panel select { padding-inline: 12px 34px; }
html[lang="ar"] .hm-directory-meta { border-left: 0; padding-left: 0; border-right: 1px solid var(--hm-line); padding-right: 20px; }
html[lang="ar"] .hm-card-sections li:not(:last-child)::after { margin-right: 0; margin-left: 12px; }
html[lang="ar"] .hm-directory-notes { border-left: 0; border-right: 1px solid var(--hm-line); }
html[lang="ar"] .hm-directory-notes li { padding-inline: 21px 14px; }
html[lang="ar"] .hm-directory-notes li::before { left: auto; right: 0; }
html[lang="ar"] .hm-channel-video__platform { right: auto; left: 12px; }
html[lang="ar"] .hs-link-arrow::after { content: "←"; }
html[lang="ar"] .hs-link-arrow > span[aria-hidden="true"] { display: none; }
html[lang="ar"] .hs-link-arrow:hover::after { transform: translateX(-4px); }
html[lang="ar"] :is(.hm-back, .hm-card-link, .hm-location-menu, .hs-experience-card__action) > span[aria-hidden="true"] { display: inline-block; transform: scaleX(-1); }
html[lang="ar"] .hs-hero__image::after { background: linear-gradient(270deg, rgba(8, 30, 22, .9), rgba(8, 30, 22, .12)); }
html[lang="ar"] .hm-menu-count { min-width: 100px; width: auto; padding: 14px; }
html[lang="ar"] .hm-menu-count span { font-size: .875rem; line-height: 1.7; }
html[lang="ar"] :is(.hm-card-count, .hm-group-heading small) { white-space: normal; }
html[lang="ar"] :is(.hm-channel-person, .hm-channel-portrait figcaption, .hm-dish-name h4) { unicode-bidi: plaintext; }

/* Match the specificity of the existing editorial and photo-led headings. */
html[lang="ru"] .hm-directory-page--editorial.hm-directory-page .hm-directory h1,
html[lang="ru"] .hm-detail .hm-detail-header.hm-detail-header--photo h1 { font-size: var(--locale-display-size, clamp(2.4rem, 4.4vw, 4.9rem)); line-height: 1.18; }
html[lang="ar"] .hm-directory-page--editorial.hm-directory-page .hm-directory h1,
html[lang="ar"] .hm-detail .hm-detail-header.hm-detail-header--photo h1 { font-size: var(--locale-display-size, clamp(2.4rem, 4.4vw, 4.8rem)); line-height: 1.5; }
html[lang="ar"] .hm-detail .hm-menu-topline h2 { font-size: clamp(2rem, 3.6vw, 3.4rem); line-height: 1.55; }
html[lang="ar"] .hm-directory-page--editorial.hm-directory-page .hm-restaurant-card > a.hm-card-map { right: auto; left: 0; }

@media (min-width: 961px) {
  .hs-header__inner { gap: 18px; }
  .hs-nav { gap: 14px; }
  html[lang="ru"] .hs-nav__list { gap: 12px; }
  html[lang="ru"] .hs-header .hs-brand__type small { font-size: .7rem; }
}
@media (max-width: 1120px) and (min-width: 961px) {
  html { --hs-measured-header-height: 160px; }
  .hs-header__inner { flex-wrap: wrap; padding-block: 12px; }
  .hs-nav { flex: 1 1 100%; justify-content: space-between; }
}
@media (max-width: 960px) {
  .hs-header .hs-nav { top: var(--hs-measured-header-height, var(--hm-header-height)); height: calc(100dvh - var(--hs-measured-header-height, var(--hm-header-height))); }
  .hs-language { justify-content: flex-start; flex-wrap: wrap; }
  .hs-language a { min-width: 48px; min-height: 48px; }
  html[lang="ru"] .hs-header .hs-nav__list a { font-size: 1.15rem; }
  html[lang="ar"] .hm-location-menu { margin-left: 0; margin-right: 22px; }
}
@media (max-width: 860px) {
  html[lang="ar"] .hm-directory-notes { border-right: 0; }
  html[lang="ar"] .hm-directory-notes li { border-right: 0; border-left: 1px solid var(--hm-line); }
  html[lang="ar"] .hm-directory-notes li:last-child { border-left: 0; }
  html[lang="ar"] .hm-directory-notes li::before { right: 7px; }
}
@media (max-width: 680px) {
  html[lang="ru"] { --locale-display-size: clamp(2.1rem, 8.3vw, 3rem); }
  html[lang="ar"] { --locale-display-size: clamp(2.15rem, 8.6vw, 3rem); }
  html[lang="ar"] .hm-directory-notes li { border-left: 0; }
  html[lang="ar"] .hm-directory-notes li::before { right: 0; }
  html[lang="ar"] .hm-directory-meta { border-right: 0; padding-right: 0; }
  html[lang="ar"] .hm-location-menu { margin-right: 0; }
  html[lang="ar"] :is(.hs-title, .hm-directory-page h1, .hm-detail-header h1, .hb-hero h1) { font-size: clamp(2.15rem, 8.6vw, 3rem); }
  html[lang="ru"] :is(.hs-title, .hm-directory-page h1, .hm-detail-header h1, .hb-hero h1) { font-size: clamp(2.1rem, 8.3vw, 3rem); }
  html[lang="ar"] .hs-hero__image::after { background: rgba(8, 30, 22, .68); }
}
