/* Language links stay usable without JavaScript and keep the warm glass palette. */
body>header>.language-switcher{position:relative;flex:0 0 auto;z-index:3;margin:0;padding:0;border:0;color:inherit}
.language-switcher>summary{display:flex;align-items:center;justify-content:center;gap:7px;min-width:58px;min-height:44px;padding:10px 11px;border:1px solid #ffffff55;border-radius:999px;background:#ffffff0d;color:inherit;font-size:12px;font-weight:650;line-height:1;letter-spacing:.045em;list-style:none;cursor:pointer;touch-action:manipulation;transition:background .18s,border-color .18s}
.language-switcher>summary::-webkit-details-marker{display:none}
.language-switcher>summary::marker{content:''}
.language-switcher>summary svg{width:12px;height:12px;flex-shrink:0;transition:transform .18s}
.language-switcher[open]>summary svg{transform:rotate(180deg)}
.language-switcher[open]>summary{background:#ffffff24;border-color:#ffffff85}
.language-options{position:absolute;top:calc(100% + 10px);right:0;display:grid;width:190px;padding:7px;background:#f6f2e9f5;color:#343c30;border:1px solid #ffffffaa;border-radius:19px;box-shadow:0 12px 34px #22291f2b;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}
.language-options>a{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:44px;padding:11px 13px;border:1px solid transparent;border-radius:12px;font-size:14px;line-height:1.4;font-weight:500;text-shadow:none;white-space:nowrap;touch-action:manipulation}
.language-options>a>span{font-size:10px;letter-spacing:.06em;color:#747564}
.language-options>a[aria-current="page"]{background:#e9dfcf;border-color:#d6c7b3;color:#343c30}
.language-options>a[aria-current="page"]>span{color:#985735}
.language-options>a:focus-visible{outline-offset:0}
body:has(.page-heading)>header .language-switcher>summary{border-color:#343c303b;background:#fffdf844}
body:has(.page-heading)>header .language-switcher[open]>summary{background:#e9dfcf;border-color:#343c3055}
@media(hover:hover){
 .language-switcher>summary:hover{background:#ffffff24}
 .language-options>a:hover{background:#e9dfcf}
 body:has(.page-heading)>header .language-switcher>summary:hover{background:#e9dfcf}
}

/* Collapse the menu before translated labels compete with the quote button. */
@media(min-width:1101px) and (max-width:1250px){body>header{gap:16px}body>header nav{gap:20px}}
@media(max-width:1100px){
 body>header>.menu-toggle{display:block;margin-left:auto;min-height:44px;border:0;background:transparent;color:inherit;padding:8px 12px;font-size:12px;border-radius:40px}
 body>header>nav{display:none;position:absolute;z-index:2;top:calc(100% + 10px);left:0;right:0;margin:0;padding:20px 24px;border-radius:26px;background:rgba(52,60,48,.94);color:#fffaf1;box-shadow:0 14px 30px #343c3020;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);font-size:15px}
 body>header>nav.open{display:flex;flex-direction:column;gap:3px;align-items:stretch}
 body>header>nav a{padding:13px 4px;white-space:normal;line-height:1.5}
 body>header>.nav-cta{flex-shrink:0}
}
@media(max-width:850px){
 body>header>.language-switcher{position:absolute;top:calc(100% + 1px);right:17px}
 .language-switcher>summary{min-height:40px;min-width:56px;padding:9px 10px;background:#343c303b;border-color:#ffffff45}
 .language-options{top:calc(100% + 7px)}
 body>header .nav-cta .nav-label-full,body>header .nav-cta .nav-arrow{display:none}
 body>header .nav-cta .nav-label-short{display:inline}
 body>header:has(nav.open)>.language-switcher{visibility:hidden;pointer-events:none}
}
@media(max-width:600px){
 body>header>.language-switcher{right:11px}
 body>header>.menu-toggle{font-size:11px;padding:7px;min-width:45px}
 body>header>.nav-cta{font-size:15px;gap:0;padding:11px 12px}
}
@media(max-width:380px){
 body>header{gap:6px}
 body>header>.brand{gap:6px}
 body>header .brand-mark{width:28px}
 body>header .brand-name{font-size:10px}
 body>header>.menu-toggle{font-size:10px;padding:6px;min-width:40px}
 body>header>.nav-cta{font-size:14px;padding:11px 10px;min-width:0}
 body>header>.language-switcher{right:7px}
}

/* Longer words remain readable in translated content and in the quote composer. */
html:not([lang="fr"]) :is(h1,h2,h3,.sport-caption>strong){overflow-wrap:break-word;hyphens:auto}
html:not([lang="fr"]) .desert-hero-type strong{white-space:normal}
html:not([lang="fr"]) .booking-fab{max-width:calc(100vw - 28px)}
html:not([lang="fr"]) .booking-fab>small{max-width:34ch;margin-inline:auto}
html:not([lang="fr"]) .composer-progress li{min-width:0;line-height:1.4;overflow-wrap:break-word}
html:not([lang="fr"]) .composer-progress li>span{flex-shrink:0}
html:not([lang="fr"]) .intent-grid>*{min-width:0}
html:not([lang="fr"]) .intent-grid strong{overflow-wrap:break-word;hyphens:auto}
html:not([lang="fr"]) #booking-title{hyphens:none;overflow-wrap:normal}
html:not([lang="fr"]) .real-gallery-chapter-nav a{min-width:0;overflow-wrap:break-word;hyphens:auto}
html:not([lang="fr"]) .real-gallery-chapter-nav a>span{flex-shrink:0}

.footer-languages{display:flex;flex-wrap:wrap;align-items:center;gap:4px 18px;margin-top:22px;color:#e9dfcf}
body>footer .footer-languages>a{display:inline-flex;align-items:center;min-height:44px;margin:0;padding:8px 0;font-size:12px;line-height:1.5;text-underline-offset:5px}
.footer-languages>a[aria-current="page"]{color:#fffaf1;text-decoration:underline;text-decoration-color:#db855c}
@media(prefers-reduced-motion:reduce){.language-switcher>summary,.language-switcher>summary svg{transition:none}}
