/* Localized typography and bidirectional layout; no remote font service. */
html:not([lang="it"]) :is(h1,h2,h3,.button,.text-link,.main-nav a,.room-detail h3) {
  overflow-wrap: anywhere;
  hyphens: auto;
}
html:not([lang="it"]) .button { white-space: normal; text-align: center; }
html:not([lang="it"]) :is(.intent-card,.availability-section > div,.booking-copy,.booking-form,.room-detail) { min-width: 0; }
:is(html[lang="ar"],html[lang="fa"]) {
  --brand-serif: "Noto Naskh Arabic", "Traditional Arabic", Tahoma, serif;
  --brand-sans: Tahoma, "Segoe UI", Arial, sans-serif;
}
:is(html[lang="ar"],html[lang="fa"]) :is(h1,h2,h3,p,a,button,label,summary) {
  letter-spacing: normal;
  line-height: 1.65;
}
:is(html[lang="zh"],html[lang="ja"]) {
  --brand-serif: "Noto Serif CJK SC", "Yu Mincho", "Microsoft YaHei", serif;
  --brand-sans: "Noto Sans CJK SC", "Yu Gothic", "Microsoft YaHei", Arial, sans-serif;
}
:is(html[lang="zh"],html[lang="ja"]) :is(h1,h2,h3) { line-height: 1.35; text-wrap: balance; }
:is(html[lang="ru"],html[lang="uk"],html[lang="el"]) { --brand-serif: Georgia, "Times New Roman", serif; }
html[dir="rtl"] :is(.booking-form,.booking-copy,.availability-widget,.legal-main,.room-detail) { text-align: start; }
/* These controls describe a Gregorian calendar and physical left/right actions. */
.calendar-header,.calendar-grid,.calendar-weekdays,.gallery-thumbnails,.gallery-controls,.three-controls { direction: ltr; }
input:is([type="email"],[type="tel"],[type="date"]), a[href^="tel:"], a[href^="mailto:"], .language-code { direction: ltr; unicode-bidi: isolate; }
html[dir="rtl"] .language-option-copy { text-align: start; }
.language-name { font-family: "Segoe UI", Tahoma, Arial, sans-serif; }
.language-noscript { max-width: 1100px; margin: 24px auto; padding: 16px; }
.language-noscript ul { display: flex; flex-wrap: wrap; gap: 8px 18px; padding: 0; list-style: none; }
.language-noscript a { display: inline-block; padding: 8px 0; }
@media (max-width: 600px) {
  html:not([lang="it"]) .booking-intro h1 { font-size: clamp(2.2rem, 9vw, 3.4rem); }
  html:not([lang="it"]) .calendar-weekdays span { overflow-wrap: anywhere; }
  html[dir="rtl"] .language-panel { inset-inline-end: 0; }
}
