/* Practical planning information stays compact until a visitor opens a question. */
.travel-planning{display:grid;grid-template-columns:1fr 1fr;gap:70px;border-bottom:1px solid var(--line)}
.travel-planning>div{min-width:0}.travel-planning p{max-width:560px}
.planning-questions details{border-bottom:1px solid var(--line);padding:20px 0}
.planning-questions summary{cursor:pointer;font-weight:600;line-height:1.5;font-size:18px}
.planning-questions details p{font-size:15px;margin-bottom:0}
.language{white-space:nowrap;align-items:center}.language a[lang="ar"]{font-family:'Noto Sans Arabic',Tahoma,Arial,sans-serif;letter-spacing:0}
.header{position:relative;z-index:20}
.language-picker{position:relative;display:block;flex-shrink:0;padding:0;border:0;font-size:14px;font-family:'DM Sans',Arial,sans-serif;color:var(--ink)}
.language-picker summary{display:flex;align-items:center;gap:8px;list-style:none;cursor:pointer;min-height:44px;padding:9px 10px;border:1px solid transparent;border-radius:5px;font-weight:500;line-height:1.4}
.language-picker summary::-webkit-details-marker{display:none}
.language-picker summary::marker{content:''}
.language-picker summary:hover,.language-picker[open]>summary{background:#eee8df;border-color:var(--line)}
.language-picker summary:focus-visible{outline:3px solid #dc9d35;outline-offset:3px}
.language-picker .language-flag{width:24px;height:16px;flex-shrink:0;object-fit:cover;border-radius:2px;box-shadow:0 0 0 1px rgba(16,44,70,.14)}
.language-current[lang="ar"]{font-family:'Noto Sans Arabic',Tahoma,Arial,sans-serif}
.language-chevron{flex-shrink:0;transition:transform .16s}
.language-picker[open] .language-chevron{transform:rotate(180deg)}
.language-options{position:absolute;z-index:30;top:calc(100% + 7px);right:0;min-width:132px;padding:6px;border:1px solid var(--line);border-radius:8px;background:var(--surface);box-shadow:0 12px 34px #102c4626}
.language-picker:not([open])>.language-options{display:none}
.language-options a{display:flex;align-items:center;gap:12px;min-height:46px;padding:10px 12px;border-radius:4px;color:var(--ink);text-decoration:none!important;font-size:14px;font-weight:500;line-height:1.5}
.language-options a:hover,.language-options a:focus-visible{background:#eee8df;color:var(--ink)}
.language-options a.active{background:#edf1f2;font-weight:700}
.language-check{margin-left:auto;font-size:14px;color:var(--blue)}
.footer .language-picker{color:#fff}
.footer .language-picker summary:hover,.footer .language-picker[open]>summary{background:#ffffff14;border-color:#668197}
.footer .language-options{top:auto;bottom:calc(100% + 7px)}
[lang="ar"] .header .language-options{left:0;right:auto}
@media(prefers-reduced-motion:reduce){.language-chevron{transition:none}}
.language-notice{font-weight:600;border-inline-start:3px solid var(--gold);padding-inline-start:14px}
.hero p.language-notice{font-size:16px;max-width:680px;margin-bottom:24px}
[lang="ru"] body{font-family:Manrope,Arial,sans-serif}
[lang="ru"] .hero h1{font-size:clamp(34px,4.6vw,65px);letter-spacing:-1.5px}
[lang="ru"] .eyebrow{letter-spacing:1px}
.footer .wrap{flex-wrap:wrap}
@media(max-width:1150px){.header .nav .desktop{display:none}}
@media(max-width:600px){
 .header{height:auto;min-height:114px;flex-wrap:wrap;gap:12px;padding:16px 0}
 .header .brand{width:100%}.header .brand span{display:none}
 .header .nav{width:100%;justify-content:space-between;gap:10px}
 .header .language{padding:0;border:0;gap:9px;font-size:12px}
 .header .button{font-size:12px;padding:10px;min-height:42px}
 [lang="ru"] .hero h1{font-size:34px;letter-spacing:-1px}
 [lang="ru"] .section h2{font-size:32px;letter-spacing:-1px}
 [lang="pt-BR"] .hero h1{font-size:38px;letter-spacing:-1.5px}
}
[lang="ar"] body{font-family:'Noto Sans Arabic',Tahoma,Arial,sans-serif}
[lang="ar"] h1,[lang="ar"] h2,[lang="ar"] h3,[lang="ar"] .signature{font-family:'Noto Sans Arabic',Tahoma,Arial,sans-serif!important;letter-spacing:0!important;line-height:1.55}
[lang="ar"] .eyebrow,[lang="ar"] .hero-bottom,[lang="ar"] .brand span{text-transform:none;letter-spacing:0}
[lang="ar"] .hero h1{font-size:clamp(34px,4.4vw,62px);max-width:870px;margin:20px 0}
[lang="ar"] .hero p{line-height:1.9;max-width:660px}
[lang="ar"] .hero:after{background:linear-gradient(270deg,rgba(5,31,59,.72),rgba(7,38,67,.2) 85%)}
[lang="ar"] .brand strong,[lang="ar"] .contact-links a[href^="tel:"],[lang="ar"] .contact-links a[href^="mailto:"],[lang="ar"] .rate-amount{direction:ltr;unicode-bidi:isolate;display:block}
[lang="ar"] .brand strong{font-family:Manrope,Arial,sans-serif}
[lang="ar"] .brand span{line-height:1.7}
[lang="ar"] input[type="date"],[lang="ar"] input[type="email"]{direction:ltr;text-align:start;min-width:0}
[lang="ar"] .form-grid label,[lang="ar"] .quick-booking label{min-width:0}
[lang="ar"] .intro-strip>div+div{border-left:0;padding-left:0;border-right:1px solid var(--line);padding-right:32px}
[lang="ar"] .intro-strip strong{line-height:1.8}
[lang="ar"] .portrait{margin-right:0;margin-left:20px}
[lang="ar"] .portrait-note{right:auto;left:-35px}
[lang="ar"] .courchevel-collage{direction:ltr}
[lang="ar"] .selected-price{border-left:0;border-right:3px solid var(--blue)}
[lang="ar"] .calendar-weekday{font-size:14px}
[lang="ar"] .rate-amount small{font-family:'Noto Sans Arabic',Tahoma,Arial,sans-serif}
[lang="ar"] .rate-description h3{font-size:21px!important}
[lang="ar"] .instructor-identity{line-height:1.7}
[lang="ar"] .section p{line-height:2}
/* Off-screen spam traps must not widen a right-to-left page. */
[lang="ar"] .honeypot{left:auto;right:0;top:0;overflow:hidden;clip-path:inset(50%);width:1px;height:1px}
@media(max-width:800px){
 .header .language-options{left:0;right:auto}
 [lang="ar"] .header .language-options{left:auto;right:0}
 .footer .language-picker{grid-column:1/-1;justify-self:start}
 .footer .language-options{left:0;right:auto}
 [lang="ar"] .footer .language-options{left:auto;right:0}
 .travel-planning{grid-template-columns:1fr;gap:12px}
 [lang="ar"] .intro-strip>div+div{border-right:0;padding-right:0}
 [lang="ar"] .intro-strip span{text-align:start}
 [lang="ar"] .portrait{margin-left:0}
 [lang="ar"] .portrait-note{left:0}
}
@media(max-width:560px){
 .header .nav{gap:8px}.header .language{gap:8px;font-size:12px}
 .header .button{font-size:12px;padding:10px 9px}
 [lang="ar"] .hero h1{font-size:34px;line-height:1.6}
 [lang="ar"] .hero p{font-size:16px}
 [lang="ar"] .hero .eyebrow{letter-spacing:0}
 [lang="ar"] .quick-booking{gap:12px 8px;padding:14px}
 [lang="ar"] .quick-booking label{font-size:12px}
 [lang="ar"] .section h2{font-size:31px}
 [lang="ar"] .hero-bottom{font-size:10px}
}
@media(max-width:380px){
 .header{height:auto;min-height:100px;flex-wrap:wrap;gap:10px;padding:14px 0}
 .header .nav{width:100%;justify-content:space-between}
 .header .brand{width:100%}
 .header .brand span{display:none}
}
