/* Shared language and navigation behavior; original artwork and recordings keep their framing. */
html.taply-scroll-locked { overflow: hidden !important; overscroll-behavior: none; }
.nav-backdrop { position: fixed; inset: 0; z-index: 29; background: #0009; touch-action: none; }
body.navigation-is-open .nav-wrap { position: fixed; inset: 0 0 auto; width: 100%; z-index: 30; }
#mobile-nav { max-height: calc(100dvh - 90px); overflow-y: auto; overscroll-behavior: contain; -webkit-overflow-scrolling: touch; padding-bottom: max(20px, env(safe-area-inset-bottom)); }
.language-picker { display: inline-flex; align-items: center; flex-shrink: 0; gap: 6px; padding: 0 9px; min-height: 40px; border: 1px solid #4167c85c; border-radius: 7px; color: #90a6e0; background: #15130e; }
.language-picker select { width: 85px; min-height: 38px; padding: 5px 2px; border: 0; color: #f1e4ca; background: #15130e; font: 14px/1.5 Arial, sans-serif; cursor: pointer; }
.language-picker option { font-size: 16px; }
.language-picker:focus-within { outline: 2px solid var(--light-gold, #abbff1); outline-offset: 3px; }
.language-picker select:focus { outline: none; }
.nav-inner, .nav-actions { gap: 16px; }
.ml-nav-inner { gap: 18px; }
.ml-nav nav { gap: 22px; }
.store-header-inner nav { margin-inline-start: auto; }
html[lang="ar"] { --font: Tahoma, Arial, sans-serif; }
html[lang="ar"] :is(h1,h2,h3,.gold-text,.muted-title) { letter-spacing: 0 !important; line-height: 1.4; }
html[lang="ar"] :is(.eyebrow,.solution-tag,.ml-nav-product,.ml-stage-caption,.ml-phone-label,.app-overline,.ticker-track,.scroll-cue,.lab-toolbar > span:last-child) { letter-spacing: 0; font-family: Tahoma, Arial, sans-serif; }
html[lang="ar"] :is(.hero h1,.ml-hero-copy h1) { font-size: clamp(42px, 4.6vw, 69px); }
html[lang="ar"] :is(.hero-description,.ml-hero-description,.lead-copy > p) { line-height: 1.95; }
html[dir="rtl"] :is(.eyebrow,.solution-tag) { direction: rtl; justify-content: flex-start; }
html[dir="ltr"] :is(.eyebrow,.menu-landing .eyebrow) { justify-content: flex-start; }
html[dir="ltr"] :is(.hero-phone,.floating-caption,.hero-visual-note) { direction: ltr; }
html[dir="ltr"] :is(.solution-card,.solution-tag,.solution-card h3,.solution-tabs button,.solution-tabs b,.nfc-notice,.dish,.screen-header,.xl-notification,.xl-review-form label,.xl-gym-showcase,.machine-playback-info .machine-video-caption,.hero-gym-footer) { text-align: left; }
html[dir="ltr"] :is(.icon-next,.icon-back,.lead-submit svg) { transform: scaleX(-1); }
html[dir="ltr"] .tab-arrow { margin-right: 0; margin-left: auto; }
html[dir="ltr"] .solution-top > span { left: auto; right: 0; }
html[dir="ltr"] .micro-proof span::before { margin-left: 0; margin-right: 5px; }
html[dir="ltr"] .ml-nav-product { border-right: 0; padding-right: 0; border-left: 1px solid #4469c944; padding-left: 20px; }
html[dir="ltr"] .ml-proof span + span { border-right: 0; padding-right: 0; border-left: 1px solid #4469c933; padding-left: 17px; }
html[dir="ltr"] .machine-instructions li { padding-right: 0; padding-left: 34px; }
html[dir="ltr"] .machine-instructions li::before { right: auto; left: 0; }
html[dir="ltr"] :is(.machine-instructions .machine-coach-note,.dish-includes) { border-right: 0; border-left: 2px solid var(--gold); }
html[dir="ltr"] .hero h1 { font-size: clamp(48px, 5.3vw, 75px); line-height: 1.12; }
html[dir="ltr"] .ml-hero-copy h1 { font-size: clamp(44px, 4.8vw, 68px); }
:is(.nav-wrap,.ml-nav,.store-header) a { overflow-wrap: anywhere; }
@media (min-width: 931px) and (max-width: 1160px) {
  .nav-actions .login { display: none; }
  .desktop-nav { gap: 18px; }
  .nav-inner { gap: 12px; }
}
@media (max-width: 930px) {
  .nav-inner, .nav-actions { gap: 10px; }
  .language-picker { padding-inline: 6px; gap: 4px; }
  .language-picker select { width: 76px; }
}
@media (max-width: 550px) {
  #mobile-nav { max-height: calc(100dvh - 76px); }
  .nav-actions { gap: 7px; }
  .language-picker { padding-inline: 5px; min-height: 38px; }
  .language-picker > svg { display: none; }
  .language-picker select { width: 72px; min-height: 36px; }
  .ml-nav-inner { flex-wrap: wrap; gap: 10px; padding-block: 12px; }
  .ml-nav .language-picker { margin-inline-start: 0; }
  .ml-nav .btn { font-size: 12px; min-height: 38px; padding: 8px 11px; }
  .ml-nav-product { padding-inline-start: 10px !important; font-size: 10px; letter-spacing: 0; }
  .store-header-inner { flex-wrap: wrap; gap: 10px; padding-block: 12px; }
  .store-header nav { gap: 14px; }
  html[dir="ltr"] .hero h1 { font-size: clamp(44px, 11.2vw, 58px); }
  html[dir="ltr"] .ml-hero-copy h1 { font-size: clamp(39px, 10.5vw, 56px); }
  .hero-cta { flex-wrap: wrap; gap: 12px; }
  html[lang="ar"] .contact h2 { font-size: 44px; }
}
@media (max-width: 380px) {
  .nav-inner .wordmark { font-size: 29px; }
  .nav-actions .btn.small { padding-inline: 9px; gap: 6px; }
  .nav-actions .btn.small > span[aria-hidden="true"] { display: none; }
  .nav-inner { gap: 6px; }
  .nav-actions { gap: 5px; }
  .ml-nav .wordmark { font-size: 29px; }
}
