/* Approved brand presentation and responsive refinements. */
.site-header{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);direction:ltr;gap:24px}
.site-header>.brand{grid-column:3;grid-row:1;justify-self:end}
.site-header>.desktop-nav{grid-column:2;grid-row:1;direction:rtl;gap:clamp(16px,2vw,30px)}
.site-header>.header-actions{grid-column:1;grid-row:1;justify-self:start;direction:ltr}
.language-switch{position:relative;isolation:isolate;display:inline-grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;width:112px;max-width:100%;flex-shrink:0;direction:ltr;align-items:stretch;padding:3px;border:1px solid #607298;border-radius:26px;background:#0a1227b3}
.language-switch::before{content:'';position:absolute;z-index:0;top:3px;bottom:3px;left:3px;width:calc(50% - 3px);border-radius:22px;background:#f5f4fa;pointer-events:none;transform:translateX(100%);transition:transform 260ms cubic-bezier(.22,.61,.36,1)}
.language-switch[data-active-language=en]::before{transform:translateX(0)}
.language-switch button{position:relative;z-index:1;display:flex;align-items:center;justify-content:center;grid-row:1;box-sizing:border-box;width:100%;min-width:0;max-width:100%;min-height:36px;margin:0;padding:0;border:0;border-radius:22px;background:transparent;color:#bac5dc;font-size:14px;font-weight:600;line-height:1.2;white-space:nowrap;transition:color 160ms ease}
.language-switch button[data-language=en]{grid-column:1}
.language-switch button[data-language=he]{grid-column:2}
.language-switch button[aria-pressed=true]{color:#0a1227}
.language-switch button[aria-pressed=false]:hover{color:#fff}
.hero{display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:1fr auto;gap:24px;padding-top:100px}
.hero-center{align-self:center;padding-top:60px;padding-bottom:20px}
.hero-kicker{font-size:clamp(14px,1.3vw,19px);font-weight:600;line-height:1.45;letter-spacing:.02em;text-wrap:balance}
.hero-bottom{display:flex;justify-content:center;border:0;padding:0;margin:0}
.hero-bottom .scroll-cue{display:flex;align-items:center;justify-content:center;width:48px;height:48px;margin:0;border:0;border-radius:0;color:#f5f4fa;background:none;animation:scroll-invite 2.8s ease-in-out infinite}
.hero-bottom .scroll-cue>.icon{width:30px;height:30px}
@keyframes scroll-invite{0%,100%{transform:translateY(-4px)}50%{transform:translateY(5px)}}
.section-label{direction:ltr;flex-wrap:nowrap;gap:24px}
.section-label>span.section-label-he{order:2;direction:rtl;font-size:15px;letter-spacing:0;text-align:right}
.section-label .section-label-en{order:1;direction:ltr;font-size:12px;letter-spacing:1.1px;text-align:left}
.about .about-text>h2{font-size:clamp(27px,3.1vw,42px);line-height:1.35;font-weight:600;margin-bottom:0}
.about-quote{margin:0 0 32px;padding:0;border:0;max-width:600px}
.about-quote>p{font-size:clamp(40px,4.6vw,65px);line-height:1.15;font-weight:800;letter-spacing:-.4px}
.about-quote em{color:var(--brand-teal,#00a79d);font-weight:800}
.about-copy{margin-top:28px}
.video-wall .video-tile{padding:0;background:#0a1227;border-radius:14px;overflow:hidden;line-height:0;border:1px solid #344b80;position:relative;isolation:isolate;aspect-ratio:9/16}
.video-wall .video-tile>.video-preview{display:block;width:100%;height:100%;max-height:none;aspect-ratio:9/16;object-fit:cover;pointer-events:none}
.video-tile::after{content:'';position:absolute;inset:0;border:1px solid #ffffff12;border-radius:inherit;pointer-events:none;transition:border-color .25s}
.video-tile:hover::after,.video-tile:focus-visible::after{border-color:#62d5ca}
.video-tile:focus-visible{outline-offset:5px}
.video-dialog #video-dialog-title{padding-inline:34px;font-size:24px;text-align:center}
.review-navigation{display:flex;flex-direction:column;align-items:center;gap:9px;margin-top:28px;text-align:center}
.review-navigation .reviews-more{margin:0;max-width:100%}
.review-navigation .reviews-more a{justify-content:center;flex-wrap:wrap}
.review-navigation .review-dots{justify-content:center;max-width:100%;padding:0}
.review-navigation .carousel-toolbar{display:flex;justify-content:center;gap:0;padding:0;margin:0;border:0;width:100%}
.review-navigation .carousel-controls{justify-content:center}
.review-navigation #review-position{position:absolute}
.review-quote{direction:rtl}
[lang=en] .review-quote{direction:ltr}
.booking{direction:ltr;grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:8%;align-items:start}
.booking-copy{grid-column:1;grid-row:1;direction:rtl;min-width:0}
.booking>#booking-form{grid-column:2;grid-row:1;direction:rtl;min-width:0}
.contact-text{min-width:0;flex:1}
.contact-option>span:not(.contact-icon):not(.sr-only){min-width:0}
.contact-option small{overflow-wrap:anywhere;letter-spacing:0}
[lang=he] .contact-option[href^="tel:"] small{text-align:right}
.email-option small{direction:ltr;text-align:right;font-size:16px}
[lang=en] .desktop-nav,[lang=en] .booking-copy,[lang=en] .booking>#booking-form{direction:ltr}
[lang=en] .booking-copy{grid-column:2}
[lang=en] .booking>#booking-form{grid-column:1}
[lang=en] .contact-option :is(strong,small){text-align:left}
[lang=en] :is(.hero-tagline,.about-text,.booking-copy,.review-content){text-align:left}
[lang=en] .hero-tagline{text-align:center}
[lang=en] .email-option small{text-align:left}
[lang=en] .contact-option>.icon{margin-left:auto;margin-right:0}
[lang=en] :is(.about h2,.sound h2,.gallery h2,.reviews h2,.booking h2){letter-spacing:-.035em;overflow-wrap:normal}
[lang=en] .review-card .review-source{margin-inline-start:auto;margin-inline-end:0}
[lang=en] .review-quote{font-size:23px;line-height:1.6}
[lang=en] .review-navigation .carousel-controls{direction:ltr}
[lang=en] #review-prev .icon,[lang=en] #review-next .icon{transform:rotate(180deg)}
[lang=en] .form-pair{direction:ltr}
/* Accessibility panel follows the supplied reference, with real controls. */
#accessibility-tools{position:fixed;inset:auto;margin:0;left:var(--access-panel-left,24px);bottom:var(--access-panel-bottom,86px);z-index:110;padding:0;width:min(340px,calc(100vw - 24px));max-width:340px;max-height:min(var(--access-panel-max-height,calc(100dvh - 112px)),calc(100dvh - 24px));border:1px solid #3c4665;border-radius:20px;background:linear-gradient(145deg,#121a32,#10172c);color:#f5f4fa;box-shadow:0 12px 42px #0006;overflow:auto;overscroll-behavior:contain}
.accessibility-panel-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 14px;border-bottom:1px solid #343e5b;position:sticky;top:0;z-index:2;background:#121a32;direction:rtl}
#accessibility-tools .accessibility-panel-header h2{font-size:20px;line-height:1.25;letter-spacing:0;margin:0;font-weight:800}
#accessibility-tools .dialog-close{position:static;width:40px;height:40px;flex-shrink:0;border-color:#46516e;background:#ffffff05;color:#fff}
.accessibility-panel-body{padding:12px}
#accessibility-tools .accessibility-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:0 0 10px;direction:rtl}
#accessibility-tools .accessibility-options button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;min-width:0;min-height:76px;padding:10px 4px;border:1px solid #424d69;border-radius:13px;background:#ffffff05;color:#f5f4fa;font-size:14px;line-height:1.3;text-align:center;transition:background .18s,border-color .18s}
#accessibility-tools .accessibility-options button:hover{background:#ffffff0c;border-color:#8490ab}
#accessibility-tools .accessibility-options button[aria-pressed=true]{background:#faa21b1c;border-color:#faa21b;color:#fff}
.access-symbol{display:flex;align-items:center;justify-content:center;min-height:24px;color:#ffc247}
.access-symbol .icon{width:23px;height:23px}
.access-glyph{font-family:Arial,sans-serif;font-size:22px;font-weight:700;line-height:1}
#accessibility-tools .accessibility-reset{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;min-height:46px;border:1px solid #424d69;border-radius:13px;background:#ffffff05;color:#f5f4fa;font-size:16px}
.accessibility-reset>.icon{color:#ffc247;width:22px;height:22px}
#accessibility-tools .accessibility-status{font-size:13px;line-height:1.5;text-align:center;color:#d9dfef;margin:10px 0 0;min-height:0}
#accessibility-tools .accessibility-status:empty{margin:0}
.accessibility-statement-link{display:flex;align-items:center;justify-content:center;min-height:36px;margin-top:4px;font-size:12px;color:#b5c7e4;text-decoration:underline;text-underline-offset:4px}
#accessibility-tools :focus-visible{outline:3px solid #ffc247;outline-offset:3px}
.accessibility-trigger{background:var(--brand-blue,#2b3990);border:2px solid #eef2ff;color:#fff}
.readable-font body,.readable-font :is(button,input,select,textarea){font-family:Arial,Helvetica,sans-serif!important}
.highlight-headings :is(h1,h2,h3,h4){outline:2px solid #ffc247;outline-offset:5px;border-radius:3px}
.highlight-links a{text-decoration:underline!important;text-underline-offset:4px;outline:1px solid #ffc247;outline-offset:3px}
.grayscale :is(main,.site-header,.site-footer,.whatsapp-float){filter:grayscale(1)}
.invert-colors :is(main,.site-header,.site-footer,.whatsapp-float){filter:invert(1) hue-rotate(180deg)}
.invert-colors.grayscale :is(main,.site-header,.site-footer,.whatsapp-float){filter:invert(1) grayscale(1)}
.large-cursor,.large-cursor *{cursor:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='40' height='46' viewBox='0 0 40 46'%3E%3Cpath d='M3 2v35l9-9 8 15 7-4-8-14 14-2Z' fill='white' stroke='%23000' stroke-width='3'/%3E%3C/svg%3E") 3 2,auto!important}
.legal-topbar{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:32px}.legal-topbar .back{margin:0}.legal-contact{display:flex;flex-wrap:wrap;gap:12px 24px}.legal-contact a{overflow-wrap:anywhere}.legal-document[lang=en] .legal-page{text-align:left}
#reading-guide{position:fixed;top:var(--reading-line-y,50vh);inset-inline:0;height:32px;transform:translateY(-50%);border-block:2px solid #ffc247;background:#ffc24712;z-index:90;pointer-events:none}
@media(min-width:801px){.site-header .brand-logo-crop{width:168px}.site-header .desktop-nav a{font-size:16px}}
@media(max-width:800px){
 .site-header{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px}
 .site-header>.brand{grid-column:2}.site-header>.header-actions{grid-column:1;gap:8px}
 .site-header .brand-logo-crop{width:140px;max-width:40vw}
 .language-switch button{min-height:40px}
 .hero{grid-template-rows:1fr auto;min-height:max(660px,100svh);gap:24px;padding-top:calc(112px + env(safe-area-inset-top,0px));padding-bottom:24px}
 .hero-center{width:100%;padding:20px 0 0;align-self:center}
 .hero-kicker{font-size:clamp(14px,3.7vw,18px);max-width:100%;margin-bottom:18px}
 .hero-bottom{padding:0;justify-content:center}.hero-bottom .scroll-cue{margin:0}
 .about .about-text>h2{font-size:clamp(27px,7.4vw,36px)}
 .about-quote{margin-bottom:25px}
 .about-quote>p{font-size:clamp(38px,10vw,48px)}
 .booking{display:flex;flex-direction:column;gap:36px;direction:inherit}
 .booking-copy,.booking>#booking-form{width:100%}.booking-copy{order:1}.booking>#booking-form{order:2}
 [lang=en] .review-quote{font-size:21px}
}
@media(max-width:600px){
 .section-label{gap:16px}.section-label .section-label-he{font-size:14px}.section-label .section-label-en{font-size:10px;letter-spacing:.6px}
 .review-navigation{gap:5px;margin-top:23px}.review-navigation .reviews-more a{font-size:16px}
 .video-wall .video-tile>.video-preview{height:100%;aspect-ratio:9/16}
 #accessibility-tools{width:min(320px,calc(100vw - 24px))}
}
@media(max-width:360px){.site-header .brand-logo-crop{width:124px}.language-switch button{font-size:13px}.site-header{padding-inline:16px}.header-actions .menu-toggle{width:40px}.email-option small{font-size:14px}}
@media(max-height:550px) and (orientation:landscape){
 .hero{min-height:680px}
}
@media(max-width:800px) and (orientation:portrait){
 .site-header{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:8px}
 .site-header>.brand{grid-column:2;grid-row:1;justify-self:center}
 .site-header .brand-logo-crop{width:clamp(96px,32vw,140px);max-width:none}
 .site-header>.header-actions{display:contents}
 .site-header .header-actions>.language-switch{grid-column:1;grid-row:1;justify-self:start;width:92px}
 .site-header .language-switch button{font-size:13px}
 .site-header .header-actions>.menu-toggle{grid-column:3;grid-row:1;justify-self:end;display:inline-flex;width:44px;height:44px}
}
@media(prefers-reduced-motion:reduce){.hero-bottom .scroll-cue{animation:none}.language-switch::before,.language-switch button{transition:none}}
