/* Native locale controls and script-specific type. Approved style.css is unchanged. */
@font-face{font-family:"Noto Kufi Arabic";src:url('./fonts/noto-kufi-arabic.woff2') format('woff2');font-style:normal;font-weight:100 900;font-display:swap}
@font-face{font-family:Manrope;src:url('./fonts/manrope.woff2') format('woff2');font-style:normal;font-weight:200 800;font-display:swap}
@font-face{font-family:"Cormorant Garamond";src:url('./fonts/cormorant-garamond.woff2') format('woff2');font-style:normal;font-weight:400;font-display:swap}
:root{--zea-body-font:Avenir,Arial,sans-serif;--zea-heading-font:Frunchy,Georgia,serif}
html[lang=ar],[data-language-suggestion][lang=ar]{--zea-body-font:"Noto Kufi Arabic",Avenir,Tahoma,Arial,sans-serif;--zea-heading-font:"Noto Kufi Arabic",Avenir,Tahoma,Arial,sans-serif}
html[lang=ru],[data-language-suggestion][lang=ru]{--zea-body-font:Manrope,Avenir,Arial,sans-serif;--zea-heading-font:"Cormorant Garamond",Georgia,serif}
html:is([lang=ar],[lang=ru]),html:is([lang=ar],[lang=ru]) :is(body,button,input,select,textarea){font-family:var(--zea-body-font)}
html:is([lang=ar],[lang=ru]) :is(h1,h2,h3,.capacity-list dt,.nav-primary):where(:not(#zea-consent-title)){font-family:var(--zea-heading-font);font-weight:400}
html:is([lang=ar],[lang=ru]) :is(.home-hero-copy>h1,.site-footer h2,.menu-photo-grid h3>span){font-family:var(--zea-body-font)}
html[lang=ar] :is(h1,h2,h3,h4,h5,h6,p,li,dt,dd,a,button,input,select,textarea,label,span,summary){letter-spacing:0}
html[lang=ar] :is(h1,h2,h3):where(:not(#zea-consent-title)){font-weight:500;line-height:1.5}
html[lang=ar] :is(h4,h5,h6,strong,b){font-weight:600}
html[lang=ar] .home-hero-copy>h1{font-size:22px;font-weight:400;line-height:1.9}
html[lang=ar] .page-hero h1{font-size:clamp(44px,5.8vw,82px);line-height:1.5}
html[lang=ar] .article-hero h1{font-size:clamp(38px,4.8vw,68px);line-height:1.6}
html[lang=ar] .feature-copy h3{font-size:clamp(32px,3.8vw,54px);line-height:1.5}
html[lang=ar] :is(.split-copy h2,.section-heading h2){font-size:clamp(34px,4.2vw,60px)}
html[lang=ar] :is(.desktop-nav,.menu-tabs,.menu-section-picker,.footer-top,.enquiry-form){line-height:1.9}
html[lang=ar] .nav-primary,html[lang=ar] .nav-primary a,html[lang=ar] .nav-primary a>span{font-family:var(--zea-heading-font);font-size:clamp(28px,4.2vw,46px);font-weight:500;line-height:1.65}
html[lang=ar] .nav-secondary{line-height:1.9}
html[lang=ar] .capacity-list dt{font-size:30px;line-height:1.7}
html[lang=ar] .button-book{font-size:12px;letter-spacing:0}
html[lang=ru] :is(h1,h2,h3,.capacity-list dt):where(:not(#zea-consent-title)){line-height:1.06;letter-spacing:0}
html[lang=ru] .home-hero-copy>h1{font-weight:500;line-height:1.5}
html[lang=ru] .nav-primary,html[lang=ru] .nav-primary a,html[lang=ru] .nav-primary a>span{font-family:var(--zea-heading-font);font-weight:400;line-height:1.08}
html[lang=ru] .site-footer h2{font-weight:500;line-height:1.5}
html[lang=es] :is(h1,h2,h3,.capacity-list dt,.nav-primary):where(:not(#zea-consent-title)){font-family:Frunchy,Avenir,Georgia,serif}
html[lang=es] :is(.home-hero-copy>h1,.site-footer h2,.menu-photo-grid h3>span){font-family:Avenir,Arial,sans-serif}
.language-selector{position:relative;min-width:0;font-family:var(--zea-body-font);font-size:15px;line-height:1.5}
.language-selector>summary{display:flex;gap:8px;min-height:48px;cursor:pointer;list-style:none;text-decoration:none}
.language-selector>summary::-webkit-details-marker{display:none}
.language-selector>summary>.icon{width:16px;height:16px;transition:transform var(--motion-detail) var(--ease)}
.language-selector[open]>summary>.icon{transform:rotate(180deg)}
.language-options{position:absolute;inset-inline-end:0;inset-block-start:100%;z-index:8;list-style:none;margin:0;padding:8px;background:var(--surface);border:1px solid var(--line);min-width:190px;max-width:calc(100vw - 32px);max-height:calc(100dvh - var(--header-height) - 24px);overflow:auto;overscroll-behavior:contain;box-shadow:0 10px 28px rgb(0 0 0 / 25%)}
.language-selector-footer .language-options{inset-inline-start:0;inset-inline-end:auto;inset-block-start:auto;inset-block-end:100%}
.language-options a{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:48px;padding:10px 14px;text-decoration:none;text-align:start;font-size:16px;line-height:1.7;white-space:nowrap}
.language-options a:is(:hover,:focus-visible,[aria-current=true]){background:var(--olive);color:var(--peach)}
.language-options a:focus-visible,.language-selector>summary:focus-visible{outline:2px solid var(--peach);outline-offset:3px}
.language-options p{padding:12px 14px 6px;font-size:12px;line-height:1.7;max-width:240px;color:var(--muted)}
[data-language-selector] [lang=ar],[data-language-suggestion] [lang=ar]{font-family:"Noto Kufi Arabic",Avenir,Tahoma,sans-serif;letter-spacing:0;line-height:1.9}
[data-language-selector] [lang=ru],[data-language-suggestion] [lang=ru]{font-family:Manrope,Avenir,Arial,sans-serif}
.language-suggestion{position:fixed;inset-block-start:calc(var(--header-height) + var(--safe-top) + 12px);inset-inline-end:var(--gutter);z-index:90;width:min(440px,calc(100vw - 32px));max-height:calc(100dvh - var(--header-height) - var(--safe-top) - 104px);overflow:auto;overscroll-behavior:contain;padding:24px;background:var(--olive);color:var(--peach);border:1px solid var(--line);font-family:var(--zea-body-font);text-align:start;line-height:1.65}
.language-suggestion[hidden]{display:none!important}
.zea-consent .language-suggestion-inline{position:relative;inset:auto;z-index:auto;width:100%;max-height:none;overflow:visible;margin:0;padding:0;background:transparent;border:0;box-shadow:none;font-family:var(--zea-body-font)}
.zea-consent .language-suggestion-inline .language-suggestion-title{font-size:17px;padding-inline-end:36px;line-height:1.7}
.zea-consent .language-suggestion-inline .language-suggestion-reason{margin-top:8px;font-size:13px}
.zea-consent .language-suggestion-inline .language-suggestion-actions{margin-top:14px;gap:10px}
.zea-consent .language-suggestion-inline :is(button,a){font-family:var(--zea-body-font);font-size:13px;line-height:1.6;min-height:48px;text-decoration:none}
.zea-consent .language-suggestion-inline .language-action:not(.language-action-secondary){background:var(--peach);color:var(--ink)}
.zea-consent .language-suggestion-inline .language-action[lang=en]{font-family:Avenir,Arial,sans-serif}
.zea-consent .language-suggestion-inline .language-suggestion-close{inset-block-start:-8px;inset-inline-end:-8px;width:48px;height:48px;min-height:48px;padding:0;border:0;font-size:24px}
.language-suggestion[lang=ar]{letter-spacing:0;line-height:1.9}
.language-suggestion-title{margin:0;padding-inline-end:24px;font-size:19px;font-weight:500;line-height:1.6}
.language-suggestion-reason{margin-block:12px 0;font-size:14px;color:var(--muted)}
.language-suggestion-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:20px}
.language-action{display:inline-flex;align-items:center;justify-content:center;min-height:48px;max-width:100%;padding:10px 16px;background:var(--peach);color:var(--ink);font-family:var(--zea-body-font);font-size:14px;line-height:1.6;text-align:center;text-decoration:none;border:1px solid var(--peach);cursor:pointer;white-space:normal}
.language-action-secondary{background:transparent;color:var(--peach)}
.language-action[lang=en]{font-family:Avenir,Arial,sans-serif}
.language-suggestion-close{position:absolute;inset-block-start:6px;inset-inline-end:6px;display:grid;place-items:center;width:44px;height:44px;border:0;padding:0;background:transparent;color:var(--peach);font:24px/1 var(--zea-body-font);cursor:pointer}
.language-suggestion :is(a,button):focus-visible{outline:2px solid var(--peach);outline-offset:4px}
@media(max-width:1050px){.header-actions>.language-selector{display:none}.nav-language>.language-selector{width:fit-content}.nav-language>.language-selector>summary{display:flex;font-size:17px}.nav-language .language-options{position:static;margin-top:8px;max-width:100%;max-height:none;overflow:visible;min-width:220px;box-shadow:none}.language-suggestion{inset-inline-end:16px}.language-options a{min-height:48px}html[lang=ar] .nav-primary a{min-height:58px}}
@media(max-width:700px){html[lang=ar] .home-hero-copy>h1{font-size:17px}html[lang=ar] .page-hero h1{font-size:38px}html[lang=ar] .article-hero h1{font-size:32px}html[lang=ar] .feature-copy h3{font-size:32px}html[lang=ar] :is(h2,.split-copy h2,.section-heading h2):where(:not(#zea-consent-title)){font-size:30px}html[lang=ar] .menu-category h3{font-size:25px}html[lang=ar] .button-book{font-size:10px;padding-inline:6px}html[lang=fr] .button-book{white-space:normal;line-height:1.15;letter-spacing:0;padding:6px 4px}html[lang=ru] .nav-primary{font-size:44px}.language-suggestion{padding:20px}.language-suggestion-title{font-size:17px}.language-suggestion-actions{gap:10px}.language-action{font-size:13px}}
/* Allow the confirmed longer locale content to fit its existing columns. */
@media(max-width:700px){
  html[lang=ru] .split-section{grid-template-columns:minmax(0,1fr)}
  html[lang=ru] .split-copy{min-width:0}
  html[lang=ru] :is(.split-copy h2,#privacy h2){min-width:0;max-width:100%;overflow-wrap:anywhere;hyphens:auto}
  html[lang=ru] .press-list>a{grid-template-columns:minmax(0,1fr) 30px}
  html[lang=ru] .press-list>a>:is(span,h2){min-width:0;overflow-wrap:anywhere;hyphens:auto}
  html[lang=fr] .menu-section-picker{min-width:0}
  html[lang=fr] .menu-section-picker select{min-width:0;width:100%}
  html[lang=fr] .menu-section-picker>.sr-only{inset-block-start:0;inset-inline-start:0;max-width:1px;clip-path:inset(50%);white-space:normal}
  html[lang=fr] .page-hero{grid-template-columns:minmax(0,1fr)}
  html[lang=fr] .page-hero-copy,html[lang=fr] .page-hero-copy .hero-actions{min-width:0}
  html[lang=fr] .page-hero-copy .hero-actions .button{min-width:0;white-space:normal}
}
@media(max-width:370px){
  html[lang=ru] .package:not(.brochure-package) summary{flex-wrap:wrap;row-gap:12px}
  html[lang=ru] .package:not(.brochure-package) summary>span:first-child{flex:1 1 100%;min-width:0;overflow-wrap:anywhere}
  html[lang=ru] .package:not(.brochure-package) summary>.package-price{width:100%;grid-template-columns:minmax(0,1fr) 24px}
}
@media(prefers-reduced-motion:reduce){.language-selector>summary>.icon{transition:none}}

/* R12: footer section labels remain the intentional typographic anchor in
 * Arabic and Russian, while links, hours and day/time values stay regular. */
html:is([lang=ar],[lang=ru]) .site-footer .footer-top h2{font-weight:700}
/* Russian nav labels are the longest: tighten spacing just above the menu breakpoint. */
@media(min-width:1051px) and (max-width:1199px){html[lang=ru] .desktop-nav{gap:16px;font-size:14px}}
