/* V8 : module hébergements + sélecteur de langue */
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.lang-sw select{background:rgba(255,255,255,.14);color:#fff;border:1px solid rgba(255,255,255,.45);border-radius:999px;padding:8px 12px;font:600 13px/1 inherit;cursor:pointer}
.lang-sw select option{color:#163D40}
.mobile-panel .lang-sw{display:block;margin:0 0 12px}
.hb-section{background:#F3FFFC;padding:0 0 80px}
.hb-bar{position:sticky;top:var(--hb-top,72px);z-index:20;background:rgba(255,254,249,.96);backdrop-filter:blur(10px);border-bottom:1px solid #d6ece8;box-shadow:0 6px 18px rgba(8,121,135,.08)}
.hb-tabs{display:flex;gap:6px;overflow-x:auto;padding:12px max(16px,calc((100% - 1240px)/2));scrollbar-width:none}
.hb-tabs button{flex:none;border:0;background:transparent;padding:11px 18px;border-radius:999px;font:700 15px/1 inherit;color:#1B3E46;cursor:pointer;transition:.2s}
.hb-tabs button small{opacity:.6;margin-left:4px}
.hb-tabs button:hover{background:#EAF9F6}
.hb-tabs button[aria-selected=true]{background:#1598A7;color:#fff}
.hb-filters{display:flex;flex-wrap:wrap;gap:12px 28px;align-items:center;padding:0 max(16px,calc((100% - 1240px)/2)) 12px}
.hb-chips{display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.hb-chips b{font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:#087987;margin-right:4px}
.hb-chips button{border:1px solid #bfe3df;background:#fff;color:#1B3E46;border-radius:999px;padding:7px 13px;font:600 13px/1 inherit;cursor:pointer}
.hb-chips button[aria-pressed=true]{background:#087987;border-color:#087987;color:#fff}
#hb-q{margin-left:auto;border:1px solid #bfe3df;border-radius:999px;padding:9px 16px;min-width:220px;font:inherit}
.hb-wrap{max-width:1240px;margin:0 auto;padding:26px 16px 0}
.hb-count{color:#087987;font-weight:600;margin:0 0 18px}
.hb-reset{border:0;background:none;color:#FF8C2E;font:700 inherit;cursor:pointer;text-decoration:underline}
.hb-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:24px}
.hb-card{background:#fff;border-radius:18px;overflow:hidden;box-shadow:0 10px 30px rgba(8,121,135,.10);transition:transform .25s,box-shadow .25s}
.hb-card:hover{transform:translateY(-5px);box-shadow:0 18px 40px rgba(8,121,135,.18)}
.hb-card>a{display:block;color:inherit;text-decoration:none}
.hb-ph{position:relative;aspect-ratio:4/3;overflow:hidden;background:#d7efec}
.hb-ph img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s}
.hb-card:hover .hb-ph img{transform:scale(1.06)}
.hb-badge{position:absolute;top:12px;left:12px;background:#FF8C2E;color:#3a2108;font:800 11px/1 inherit;letter-spacing:.08em;text-transform:uppercase;padding:7px 11px;border-radius:999px}
.hb-badge.static{position:static;display:inline-block}
.hb-body{padding:18px 20px 20px}
.hb-body h3{margin:0 0 8px;font-size:22px;color:#087987}
.hb-spec{display:flex;flex-wrap:wrap;gap:6px 14px;list-style:none;margin:0 0 14px;padding:0;color:#4a6a70;font-size:14px}
.hb-spec li+li::before{content:'·';margin-right:14px;color:#FF8C2E}
.hb-spec.big{font-size:16px}
.hb-more{font-weight:700;color:#1598A7}
.hb-empty{grid-column:1/-1;text-align:center;padding:60px 0;color:#4a6a70}
.hb-info{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:32px;align-items:center;background:#fff;border-radius:20px;overflow:hidden;box-shadow:0 10px 30px rgba(8,121,135,.10)}
.hb-info .hb-ph{aspect-ratio:auto;height:100%;min-height:300px}.hb-info>div:last-child{padding:28px}
@media(max-width:760px){.hb-info{grid-template-columns:1fr}#hb-q{margin-left:0;width:100%}}
body.hb-lock{overflow:hidden}
#hb-drawer{position:fixed;inset:0;z-index:200;display:none}#hb-drawer.open{display:block}
.hb-scrim{position:absolute;inset:0;background:rgba(6,40,46,.62);animation:hbf .25s}
.hb-panel{position:absolute;top:0;right:0;bottom:0;width:min(1040px,100%);background:#FFFEF9;overflow:auto;display:grid;grid-template-columns:1.15fr 1fr;animation:hbs .3s cubic-bezier(.2,.8,.2,1)}
@keyframes hbs{from{transform:translateX(40px);opacity:0}}@keyframes hbf{from{opacity:0}}
.hb-x{position:absolute;top:14px;right:16px;z-index:3;width:44px;height:44px;border-radius:50%;border:0;background:#fff;box-shadow:0 4px 14px rgba(0,0,0,.2);font-size:26px;cursor:pointer}
.hb-gal{background:#0c3a41;min-height:100%}
.hb-main{aspect-ratio:4/3}.hb-main img{width:100%;height:100%;object-fit:cover;display:block}
.hb-thumbs{display:flex;gap:8px;padding:10px;overflow-x:auto}
.hb-thumbs button{flex:none;width:84px;height:64px;padding:0;border:2px solid transparent;border-radius:8px;overflow:hidden;opacity:.6;cursor:pointer;background:none}
.hb-thumbs button.on{border-color:#FF8C2E;opacity:1}.hb-thumbs img{width:100%;height:100%;object-fit:cover}
.hb-nophoto{color:#bfe3df;padding:12px 18px}
.hb-det{padding:34px 30px 30px}.hb-det h2{margin:10px 0 12px;font-size:34px;color:#087987}
.hb-det h4{margin:22px 0 8px;font-size:13px;text-transform:uppercase;letter-spacing:.1em;color:#087987}
.hb-feats{list-style:none;padding:0;margin:0;display:grid;gap:7px}
.hb-feats li{padding-left:24px;position:relative}.hb-feats li::before{content:'✓';position:absolute;left:0;color:#3EC8B7;font-weight:800}
.hb-plan,.hb-docs{margin:16px 0 0;color:#4a6a70}.hb-docs a{margin-right:16px;color:#1598A7;font-weight:600}
.hb-book{display:flex;justify-content:center;margin-top:24px}
.hb-pn{display:flex;justify-content:space-between;gap:12px;margin-top:26px;padding-top:18px;border-top:1px solid #d6ece8}
.hb-pn a{color:#087987;font-weight:700;text-decoration:none}
@media(max-width:860px){.hb-panel{grid-template-columns:1fr}.hb-gal{min-height:0}.hb-det{padding:24px 20px 30px}}

.hb-desc p{margin:0 0 8px;color:#35575d;line-height:1.6}

/* cartes larges : photo à gauche, texte à droite */
@media(min-width:761px){
 .act-card.wide{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);align-items:stretch}
 .act-card.wide .act-ph{aspect-ratio:auto;min-height:100%}
 .act-card.wide .act-body{align-self:center}
}
/* le logo déborde sur les bandeaux compacts : on décale le texte */
.hero.compact .hero-content{padding-top:clamp(70px,9vw,120px)}
.act-ph.collage{aspect-ratio:auto}.act-ph.collage img{height:auto}
.film-modal{position:fixed;inset:0;z-index:9999;background:rgba(6,30,36,.88);display:flex;align-items:center;justify-content:center;padding:16px}
.film-modal[hidden]{display:none}
.film-box{position:relative;width:min(960px,100%)}
.film-tabs{display:flex;gap:8px;margin-bottom:10px}
.film-tabs button{background:rgba(255,255,255,.12);color:#fff;border:1px solid rgba(255,255,255,.3);border-radius:999px;padding:8px 16px;font:inherit;font-size:.85rem;cursor:pointer}
.film-tabs button.on{background:#fff;color:#0b4f5c}
.film-frame{aspect-ratio:16/9;background:#000;border-radius:10px;overflow:hidden}
.film-frame iframe{width:100%;height:100%;border:0}
.film-close{position:absolute;right:0;top:-2px;background:none;border:0;color:#fff;font-size:2rem;line-height:1;cursor:pointer}
.film-tabs[hidden]{display:none}
/* ---- Accueil V8 ---- */
.loc-list{list-style:none;margin:20px 0 0;padding:0;display:grid;gap:12px}
.loc-list li{display:grid;grid-template-columns:92px 1fr;gap:14px;align-items:baseline;padding:10px 0;border-bottom:1px solid #d7e6e3}
.loc-d{font-family:'Playfair Display',serif;font-size:1.05rem;color:#0e7683;font-weight:700;line-height:1.2}
.loc-list b{display:block;color:#123b41}.loc-list span:not(.loc-d){display:block;font-size:.95rem;color:#4c5f5e}
.facts-title{margin:26px 0 0!important;font-family:'Playfair Display',serif;font-size:1.15rem!important;color:#123b41;font-weight:600}
.facts{margin-top:14px!important;flex-wrap:wrap}
.grid3.grid4{grid-template-columns:repeat(4,minmax(0,1fr))}
@media(max-width:1100px){.grid3.grid4{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.grid3.grid4{grid-template-columns:1fr}.loc-list li{grid-template-columns:74px 1fr}}
.split-banner .sb-h{font-family:'Playfair Display',serif;font-size:1.35rem;margin:22px 0 4px;color:#fff}
.split-banner .sb-h+p{margin:0 0 4px}
.split-banner .text .btn{margin-top:24px}
.split-banner .video-embed{position:relative;min-height:400px;background:#0b2a2e;display:flex;align-items:center;padding:clamp(18px,3vw,48px)}
.split-banner .video-embed iframe{width:100%;aspect-ratio:16/9;border:0;border-radius:10px;box-shadow:0 18px 50px #0006}
.thermal-dist{display:flex;align-items:baseline;gap:10px;margin:16px 0 6px}
.thermal-dist b{font-family:'Playfair Display',serif;font-size:2.6rem;line-height:1;color:#0e7683;font-weight:700}
.thermal-dist small{font-size:.8rem;letter-spacing:.12em;text-transform:uppercase;color:#5a6d6c}
.hero-content .eyebrow{color:#c9f1ea!important}
/* ---- Logo : ne passe plus sous la barre du haut ---- */
body.v4-site.v6-site .site-header .brand{transform:translateY(62px)}
body.v4-site.v6-site .site-header.scrolled .brand{transform:translateY(68px) scale(.6);transform-origin:left top}
@media(max-width:1480px){body.v4-site.v6-site .site-header .brand{transform:translateY(50px)}body.v4-site.v6-site .site-header.scrolled .brand{transform:translateY(54px) scale(.62)}}
@media(max-width:760px){body.v4-site.v6-site .site-header .brand{transform:translateY(40px)}body.v4-site.v6-site .site-header.scrolled .brand{transform:translateY(42px) scale(.7)}}
/* ---- Hébergements V8 : couleurs du plan, menus distincts, boutons ---- */
:root{--k-standard:#d63fcf;--k-confort:#17bfd0;--k-premium:#f39a1d;--k-prestige:#f6cf6b;--k-chalets:#6fcf4f;--k-meubles:#7b7f82}
.k-standard{--k:var(--k-standard);--kt:#fff}.k-confort{--k:var(--k-confort);--kt:#06343a}.k-premium{--k:var(--k-premium);--kt:#3a2108}
.k-prestige{--k:var(--k-prestige);--kt:#4a3500}.k-chalets{--k:var(--k-chalets);--kt:#12360a}.k-meubles{--k:var(--k-meubles);--kt:#fff}
.hb-badge[class*=" k-"],.hb-badge.static{background:var(--k,#FF8C2E);color:var(--kt,#3a2108)}
.hb-card[class*=" k-"]{border-top:6px solid var(--k)}
.hb-det[class*=" k-"]{border-top:6px solid var(--k)}
.dot{display:inline-block;width:11px;height:11px;border-radius:50%;background:var(--k);margin-right:7px;box-shadow:0 0 0 2px #fff,0 0 0 3px #0003;vertical-align:-1px}
/* Menu 1 : catégories = grands onglets sombres avec pictos */
.hb-bar{padding-top:10px}
.hb-tabs{background:#0b4f5c;border-radius:16px;margin:0 max(16px,calc((100% - 1240px)/2));padding:6px!important;gap:4px;width:fit-content;max-width:calc(100% - 32px)}
.hb-tabs button.hb-tab{display:flex;align-items:center;gap:9px;color:#d6f2ee;padding:9px 18px 9px 10px;border-radius:12px;font-size:15px}
.hb-tabs button.hb-tab:hover{background:#ffffff22}
.hb-tabs button.hb-tab[aria-selected=true]{background:#fff;color:#0b4f5c;box-shadow:0 4px 14px #0004}
.hb-ti{width:30px;height:30px;border-radius:8px;display:block}
.hb-tab:first-child{padding-left:18px}
/* Menu 2 : gammes = pastilles colorées ; capacités = étiquettes carrées */
.hb-filters{padding-top:12px}
.hb-tiers button.hb-tierbtn{display:inline-flex;align-items:center;text-transform:capitalize;border-width:2px}
.hb-tiers button[aria-pressed=true]{background:#fff;color:#0b4f5c;border-color:var(--k,#0b4f5c);box-shadow:0 0 0 2px var(--k,#0b4f5c) inset}
.hb-chips b{min-width:54px}
/* Sous-titre de la page */
#hb-sub{display:flex;flex-direction:column;gap:12px;align-items:flex-start}
.hb-counts{display:flex;flex-wrap:wrap;gap:6px 0;font-weight:700}
.hb-counts>span+span::before{content:'·';margin:0 12px;color:#ffb36b}
.hb-nodog{display:inline-flex;align-items:center;gap:9px;font-size:.92rem;background:#ffffff1f;border:1px solid #ffffff55;border-radius:999px;padding:6px 14px 6px 8px;color:#fff;font-weight:600}
.hb-nodog .no-dog{color:#fff;flex:none}
.hb-nodog.small{display:flex;background:#fff3ef;border-color:#f3c9c0;color:#8a2b2b;margin:14px 0 0;width:fit-content}.hb-nodog.small .no-dog{color:#8a2b2b}
/* Fiche : boutons bien visibles */
.hb-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}
.hb-act{display:inline-flex;align-items:center;gap:9px;padding:12px 16px;border-radius:12px;border:2px solid #0b4f5c;color:#0b4f5c;font-weight:700;font-size:.92rem;text-decoration:none;background:#fff;transition:.2s}
.hb-act:hover{background:#0b4f5c;color:#fff}
.hb-book{font-size:1.05rem;padding:17px!important}
.hb-panel{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr)}.hb-gal,.hb-det{min-width:0}
@media(max-width:860px){.hb-panel{grid-template-columns:minmax(0,1fr)}}
/* ---- Page emplacements ---- */
.emp-grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(24px,4vw,64px);align-items:center}
.emp-text p{font-size:1.04rem}
.emp-cta{display:flex;flex-wrap:wrap;gap:12px;margin-top:26px}
.emp-video{aspect-ratio:16/9;border-radius:18px;overflow:hidden;background:#0b2a2e;box-shadow:0 24px 60px #0b4f5c40;transform:scale(1.04);transform-origin:center}
.emp-video iframe{width:100%;height:100%;border:0;display:block}
.emp-mosaic{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:190px;gap:14px;margin-top:8px}
.emp-tile{position:relative;overflow:hidden;border-radius:14px;display:block;box-shadow:0 10px 26px #0b4f5c22}
.emp-tile img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .6s ease}
.emp-tile:hover img{transform:scale(1.07)}
.emp-tile.big{grid-column:span 2;grid-row:span 2}.emp-tile.tall{grid-row:span 2}.emp-tile.wide{grid-column:span 2}
@media(max-width:900px){.emp-grid{grid-template-columns:1fr}.emp-video{transform:none;order:-1}.emp-mosaic{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:150px}}
@media(max-width:760px){.header-side .lang-sw select{width:86px;padding-left:8px;padding-right:4px;font-size:.78rem}.header-side{gap:6px}}
/* ---- Retours V8.2 : titres pleine largeur, lisibilité, réservation ---- */
.section-head{display:block!important}.section-head>div:first-child{max-width:none}
.section-head .lead{max-width:780px;margin:14px 0 0!important}
.section-head h2,.v4-exp-head h2,.intro-head h2,.emp-head h2,.thermal-heading h2{max-width:none}
.v4-exp-head{display:block!important}.v4-exp-head p{max-width:780px;margin:14px 0 0}
.intro-head{margin-bottom:26px}.intro-head h2{margin:10px 0 0}
.intro-grid{align-items:start!important}
.loc-list{gap:0;margin-top:14px}
.loc-list li{grid-template-columns:150px 1fr;padding:7px 0;align-items:center}
.loc-d{font-size:1.65rem;line-height:1.1}
.loc-list b{font-size:1.05rem}
@media(max-width:600px){.loc-list li{grid-template-columns:104px 1fr}.loc-d{font-size:1.3rem}}
.emp-head{margin-bottom:30px}.emp-head h2{margin:10px 0 0}
.emp-head .eyebrow{font-size:1.1rem;letter-spacing:.14em}
.hero-dates{display:flex;flex-wrap:wrap;gap:10px 26px;margin:0 0 22px;color:#fff;font-size:1.05rem}
.hero-dates span{display:inline-flex;align-items:baseline;gap:8px;background:#ffffff1c;border:1px solid #ffffff4d;border-radius:999px;padding:8px 18px;backdrop-filter:blur(4px)}
.hero-dates b{font-family:'Playfair Display',serif;font-size:1.35rem;color:#ffd9ae}
.booking-frame{background:linear-gradient(135deg,#0e7683,#22a99f);padding:34px 0 40px;border-top:5px solid #ff8c2e}
.booking-frame .booking-title{color:#fff;font-weight:800;letter-spacing:.12em;text-transform:uppercase;font-size:.95rem;margin-bottom:16px}
.booking-iframe{width:100%;height:760px;border:0;border-radius:12px;background:#fff;box-shadow:0 18px 50px #0b4f5c55;display:block}
.booking-frame .booking-help{margin:14px 0 0;color:#e8fbf8!important;font-size:.95rem}.booking-frame .booking-help a{color:#fff;text-decoration:underline}
.partner-jetcamp{text-align:center}.partner-jetcamp .wrap{text-align:left}
.jetcamp-logo{display:inline-block;margin:26px 0 10px;transition:transform .3s}.jetcamp-logo:hover{transform:scale(1.04)}
.jetcamp-logo img{width:min(300px,70vw);height:auto;display:block;border-radius:6px}
/* textes peu lisibles sur fond turquoise */
.quote-banner p{color:#fff!important;opacity:1!important;font-size:1.1rem}
.footer p,.footer .footer-grid p,.footer-brand+p{color:#e6f7f4!important;opacity:1!important}
.footer-bottom,.footer-bottom *,.footer small{color:#d3efea!important;opacity:1!important}
/* hébergements */
.hb-notice{display:flex;gap:10px;align-items:center;margin:0 0 18px;padding:12px 16px;border-radius:12px;background:#fff7e6;border:1px solid #f1d6a3;color:#6b4a0b;font-weight:600}
.hb-qty{position:absolute;right:12px;top:12px;background:#0b4f5c;color:#fff;font:800 11px/1 inherit;letter-spacing:.06em;text-transform:uppercase;padding:7px 11px;border-radius:999px}
.hb-nostar{display:inline-flex;align-items:center;gap:8px;font-size:.92rem;color:#fff;background:#ffffff1f;border:1px solid #ffffff55;border-radius:999px;padding:6px 14px;font-weight:600}
/* ---- V8.3 ---- */
.hero-types{display:flex;flex-wrap:wrap;align-items:center;gap:6px 14px;font-size:clamp(1.25rem,2.1vw,1.9rem)!important;font-family:'Playfair Display',serif;font-weight:600!important;color:#fff}
.hero-types i{color:#ffb36b;font-style:normal}
.hero-dates{display:inline-flex!important;align-items:baseline;flex-wrap:wrap;gap:8px 12px!important;background:#ffffff1c;border:1px solid #ffffff55;border-radius:999px;padding:9px 24px;backdrop-filter:blur(4px);margin:0 0 22px;color:#fff}
.hero-dates span{background:none!important;border:0!important;padding:0!important;backdrop-filter:none!important}
.hero-dates i{font-style:normal;color:#ffb36b;margin:0 4px}
.hero-dates b{font-family:'Playfair Display',serif;font-size:1.35rem;color:#ffd9ae}
.booking-search .ctv-box{background:#fff;border-radius:10px;padding:12px;min-height:84px}
.booking-search ctv-searchbar{display:block}
.booking-search .booking-help{color:#e8fbf8!important}.booking-search .booking-help a{color:#fff;text-decoration:underline}
.partner-img{display:flex;align-items:center;justify-content:center;flex:none;height:92px;min-width:170px;padding:0 24px;margin:0 8px;background:#fff;border:1px solid #e5eeec;border-radius:12px}
.partner-img img{height:56px;width:auto;max-width:200px;object-fit:contain;display:block}
.footer-logo{display:inline-block;margin-bottom:12px}.footer-logo img{width:118px;height:auto;display:block}
.footer-tel{color:#fff;font-weight:700;text-decoration:none;display:inline-block;margin-top:6px}
/* hébergements : caractéristiques en gros au-dessus de la photo, pictos noirs */
.hb-spec.top{margin:0;padding:15px 20px;font-size:18px;font-weight:800;color:#0b4f5c;gap:4px 14px;background:#fff}
.hb-spec.top li+li::before{margin-right:14px}
.hb-pics{display:flex;flex-wrap:wrap;gap:12px;list-style:none;margin:0 0 14px;padding:0}
.hb-pics li{display:flex;align-items:center;gap:7px}
.hb-pics img{width:26px;height:26px;object-fit:contain;filter:brightness(0);opacity:.85}
.hb-pics.lab{gap:12px 18px;margin:20px 0 4px}.hb-pics.lab span{font-size:.9rem;color:#17313a;font-weight:600}.hb-pics.lab img{width:30px;height:30px}
.hb-spec.top{font-size:16px;gap:2px 10px;flex-wrap:nowrap;white-space:nowrap;padding:14px 16px}
.hb-spec.top li+li::before{margin-right:10px}
/* ---- fiches Emplacements / Hiver dans l'interface hébergements ---- */
.k-emplacements{--k:#e5484d;--kt:#fff}.k-hiver{--k:#8ec9f0;--kt:#0b3550}
.hb-main.hb-vid{aspect-ratio:16/9;background:#000}.hb-main.hb-vid iframe{width:100%;height:100%;border:0;display:block}
.hb-vthumb{position:relative}.hb-vthumb span{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:#fff;font-size:22px;background:#0b2a2e88;text-shadow:0 2px 8px #000}
.hb-det .hb-notice{margin:14px 0 6px}
.hb-nodog.small.ok{background:#eaf8f0;border-color:#b9e2c9;color:#1d5e3a}.hb-nodog.small.ok .no-dog{color:#1d5e3a}
/* stations : titres pleine largeur, blocs offres en 2 colonnes */
.station-detail h2{max-width:none!important;width:100%}
.station-detail .lead{font-size:1.18rem;line-height:1.75}
.station-detail .lead:first-of-type,.station-detail .lead strong{color:#17393f;font-weight:700}
.station-detail-story>p:not(.lead){font-size:1.1rem;line-height:1.75;color:#17393f}
.station-facts li{font-size:1.12rem;gap:10px}
.station-facts li::before{content:"✓";color:#e48f55;font-weight:800;font-size:1.2rem}
.station-facts img{display:none}
.cure-section,.why-section{padding:56px 0}
.cure-grid{display:grid!important;grid-template-columns:1fr 1fr;gap:32px;align-items:stretch}
.cure-grid>article{background:#fff;border:1px solid #d9ece8;border-radius:14px;padding:38px 40px;box-shadow:0 12px 34px #28675b1f;display:flex;flex-direction:column;gap:14px}
.cure-grid .eyebrow{font-size:.9rem;letter-spacing:.16em;margin:0}
.cure-grid h3{font-size:2.1rem;line-height:1.2;margin:0;color:#17393f}
.cure-grid p{font-size:1.15rem;line-height:1.7;margin:0;color:#2f4a4e}
.cure-grid .cure-types{font-weight:700;color:#2B655E;font-size:1.2rem}
.cure-grid .station-actions{margin-top:auto;padding-top:10px;display:flex;flex-wrap:wrap;gap:12px}
.cure-list{list-style:none;margin:0;padding:0;display:grid;gap:12px}
.cure-list li{position:relative;padding-left:32px;font-size:1.15rem;line-height:1.5;color:#17393f}
.cure-list li::before{content:"✓";position:absolute;left:0;top:0;width:22px;height:22px;border-radius:50%;background:#e8f6f3;color:#2B655E;font-weight:800;font-size:.85rem;display:flex;align-items:center;justify-content:center;margin-top:2px}
.why-section{background:#f2faf8}
@media(max-width:900px){.cure-grid{grid-template-columns:1fr}.cure-grid>article{padding:28px 24px}.cure-grid h3{font-size:1.7rem}}
/* page offres curistes (composition de l'ancien site) */
.cur-offre h2,.cur-acts h2{max-width:none!important}
.cur-split{display:grid;grid-template-columns:1fr 1fr;gap:44px;align-items:center;margin-top:30px}
.cur-split.rev{grid-template-columns:1.05fr .95fr}
.cur-img img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:14px;box-shadow:0 18px 46px #28675b33;display:block}
.cur-card{display:flex;flex-direction:column;gap:16px}
.cur-card h3{font-size:2rem;line-height:1.2;margin:0;color:#17393f}
.cur-card p{font-size:1.15rem;line-height:1.7;margin:0;color:#2f4a4e}
.cur-promo{background:#fff;border:1px solid #f1cfae;border-left:5px solid #e48f55;border-radius:10px;padding:20px 24px;display:grid;gap:8px;font-size:1.15rem;color:#17393f}
.cur-promo strong{font-size:1.5rem;color:#c4631f}
.cur-promo a{color:#2B655E;font-weight:700}
.cur-acts-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px;margin-top:34px}
.cur-act{background:#fff;border:1px solid #d9ece8;border-radius:14px;padding:32px 34px;box-shadow:0 12px 34px #28675b1f;display:flex;flex-direction:column;gap:16px}
.cur-act h3{font-size:1.7rem;margin:0;color:#17393f}
.cur-foot{margin:0;font-weight:700;color:#2B655E;font-size:1.05rem}
.cur-acts .lead{font-size:1.2rem;max-width:none;margin-top:14px}
@media(max-width:900px){.cur-split,.cur-split.rev,.cur-acts-grid{grid-template-columns:1fr}.cur-split.rev .cur-img{order:-1}}
/* pages cures : bandeau photo + zoom lent, sliders 4/3, espaces réduits */
@keyframes heroZoom{from{transform:scale(1)}to{transform:scale(1.14)}}
.hero-media{overflow:hidden}
.hero-photo.hero-zoom{animation:heroZoom 16s ease-out both;transform-origin:center;object-position:center}
@media(prefers-reduced-motion:reduce){.hero-photo.hero-zoom{animation:none}}
.station-slider,.station-slider.detail-slider{aspect-ratio:4/3!important}
.station-detail .station-detail-grid{align-items:start}
.station-detail{padding-block:64px!important}
.cure-section,.why-section{padding:36px 0!important}
.station-bottom{padding:52px 0!important}
.station-bottom p{margin:12px 0 22px}
.cur-offre,.cur-hebs,.cur-acts{padding-block:52px!important}
.cur-hebs{padding-block:44px!important}
.cur-split{margin-top:22px}
.cur-acts-grid{margin-top:24px;gap:22px}
.cur-card,.cure-grid>article{gap:11px}
.cur-card p{line-height:1.6}
/* ===== page Activités ===== */
.page-intro{padding:70px 0 34px;background:#fffefa}
.page-intro h2{font-size:clamp(2.2rem,4.4vw,3.4rem);max-width:none!important;margin:8px 0 18px}
.page-intro p{max-width:880px;font-size:1.2rem;line-height:1.75;color:#2f4a4e}
.pills{display:flex;flex-wrap:wrap;gap:12px;margin-top:26px}
.pills a{display:inline-flex;align-items:center;gap:8px;padding:13px 24px;border-radius:999px;background:#fff;border:1.5px solid #2B655E;color:#2B655E;font-weight:800;font-size:.82rem;letter-spacing:.12em;text-transform:uppercase;text-decoration:none;transition:.2s}
.pills a:hover{background:#2B655E;color:#fff;transform:translateY(-2px);box-shadow:0 8px 20px #28675b33}
.act-section{padding:76px 0 84px;scroll-margin-top:100px}
.act-section#hiver{background:linear-gradient(#eaf6fa,#f4fbfd)}
.act-section#culture{background:#fbf6ee}
.act-section .section-head{display:flex!important;justify-content:space-between;align-items:flex-end;gap:14px 50px;flex-wrap:wrap;margin-bottom:38px;padding-bottom:22px;border-bottom:2px solid #d3e6e2}
.act-section .section-head h2{font-size:clamp(2rem,4vw,3rem);max-width:none!important;margin:6px 0 0}
.act-section .section-head .lead{margin:0;max-width:430px;font-size:1.12rem;color:#2f4a4e}
.act-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px;align-items:stretch}
.act-card{background:#fff;border:1px solid #d9ece8;border-radius:16px;overflow:hidden;box-shadow:0 12px 34px #28675b1a;display:flex;flex-direction:column;position:relative}
.act-card:not(:has(.act-ph)){border-top:5px solid #2B8F8A}
#hiver .act-card:not(:has(.act-ph)){border-top-color:#5aaed6}
#culture .act-card:not(:has(.act-ph)){border-top-color:#e48f55}
.act-card.wide{grid-column:1/-1}
.act-ph{overflow:hidden;aspect-ratio:16/10;background:#dcecea}
.act-ph img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .8s ease}
.act-card:hover .act-ph img{transform:scale(1.05)}
.act-ph.collage{aspect-ratio:auto}.act-ph.collage img{height:auto}
.act-body{padding:30px 34px 34px;display:flex;flex-direction:column;gap:13px;flex:1}
.act-badge{align-self:flex-start;background:#fdeedd;color:#b25a1d;font-weight:800;font-size:.74rem;letter-spacing:.1em;text-transform:uppercase;padding:7px 14px;border-radius:999px}
.act-body h3{font-size:1.75rem;line-height:1.2;margin:0;color:#17393f}
.act-body p{margin:0;font-size:1.08rem;line-height:1.7;color:#2f4a4e}
.act-items{list-style:none;margin:2px 0 0;padding:0;display:grid;gap:10px}
.act-items li{position:relative;padding-left:32px;font-size:1.08rem;line-height:1.5;color:#17393f}
.act-items li::before{content:"✓";position:absolute;left:0;top:1px;width:22px;height:22px;border-radius:50%;background:#e4f4f1;color:#2B655E;font-weight:800;font-size:.8rem;display:flex;align-items:center;justify-content:center}
.act-rows{list-style:none;margin:6px 0 0;padding:0;display:grid;gap:0;border-top:1px solid #e3efec}
.act-rows li{display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px;padding:13px 0;border-bottom:1px solid #e3efec}
.r-name{font-weight:800;font-size:1.08rem;color:#17393f;flex:1 1 220px}
.r-dist{background:#e4f4f1;color:#1f6b63;font-weight:800;font-size:.82rem;padding:5px 12px;border-radius:999px;white-space:nowrap}
.r-note{flex:1 1 100%;color:#52707a;font-size:.98rem;order:5}
.r-dur,.r-lvl{font-size:.82rem;font-weight:700;color:#52707a;background:#f3f6f6;padding:5px 11px;border-radius:999px;white-space:nowrap}
.r-lvl{background:#fdeedd;color:#b25a1d}
.card-link{align-self:flex-start;margin-top:auto;display:inline-flex;padding:12px 22px;border-radius:8px;background:#EC955C;color:#163E3F;font-weight:800;font-size:.8rem;letter-spacing:.1em;text-transform:uppercase;text-decoration:none;transition:.2s}
.card-link:hover{background:#2B655E;color:#fff}
.act-note{padding:0 0 60px}
.act-note p{max-width:900px;margin:0 auto;padding:20px 26px;border-left:5px solid #e48f55;background:#fff6ea;border-radius:10px;color:#5a4630;font-size:1.02rem}
@media(min-width:761px){.act-card.wide{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr)}.act-card.wide .act-ph{aspect-ratio:auto;min-height:100%}.act-card.wide .act-body{align-self:center}}
@media(max-width:900px){.act-grid{grid-template-columns:1fr}.act-body{padding:24px 22px 28px}.act-section{padding:54px 0}}
/* masonry : plus de grands vides entre cartes de hauteurs différentes */
.act-grid{display:block;column-count:2;column-gap:30px}
.act-card{break-inside:avoid;margin:0 0 30px;display:flex;width:100%}
.act-card.wide{column-span:all}
@media(max-width:900px){.act-grid{column-count:1}}
/* titres de rubriques plus lisibles sur tout le site */
body.v4-site .eyebrow{font-size:.95rem!important;font-weight:800;letter-spacing:.18em}
body.v4-site .hero-content>.eyebrow{font-size:.9rem!important}
@media(max-width:760px){body.v4-site .eyebrow{font-size:.8rem!important}}
/* chiffres clés de l'accueil */
.facts small{font-size:1.1rem!important;font-weight:800;color:#2f4a4e;letter-spacing:0}
.facts b{font-size:2.3rem}
/* catalogue : libellés Gamme / Capacité */
.hb-chips>b{font-size:.98rem!important;font-weight:900;letter-spacing:.14em;color:#fff!important;background:#0c5963;padding:9px 16px;border-radius:8px;text-transform:uppercase}
body.v4-site .hero-content>.eyebrow{font-size:.74rem!important}
/* ===== Activités : version sobre, distance en grand, photos/textes en alternance ===== */
.act-section{padding:64px 0 70px}
.act-section#hiver{background:#f1f8fa}
.act-section#culture{background:#fff}
.act-section .section-head{border-bottom:0;padding-bottom:0;margin-bottom:10px}
.act-list{display:block}
.act-row{display:grid;grid-template-columns:1fr;gap:0;background:none;border:0;box-shadow:none;border-radius:0}
.act-row.has-photo{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:64px;align-items:center;padding:48px 0;border-bottom:1px solid #dbe8e6}
.act-row.has-photo.rev .act-ph{order:2}
.act-row .act-ph{border-radius:12px;overflow:hidden;aspect-ratio:4/3;box-shadow:none;background:#dcecea}
.act-row .act-ph img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .8s ease}
.act-row:hover .act-ph img{transform:scale(1.04)}
.act-row .act-body{padding:0;display:flex;flex-direction:column;gap:14px;flex:none}
.act-dist{display:flex;flex-direction:column;gap:2px;margin-bottom:4px}
.act-dist b{font-family:'Playfair Display',Georgia,serif;font-size:clamp(2.6rem,5vw,4rem);line-height:1;color:#0c7a85;font-weight:700;letter-spacing:-.01em}
.act-dist small{font-size:.9rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:#e0813a}
.act-row h3{font-size:1.9rem;line-height:1.2;margin:0;color:#17393f}
.act-row p{font-size:1.12rem;line-height:1.7;color:#3c5559;margin:0}
.act-row p.key{font-weight:800;color:#17393f}
.act-row .act-badge{align-self:flex-start;background:#eaf6f4;color:#1f6b63;border-radius:6px;padding:6px 12px}
/* activités sans photo : cartes sobres en grille */
.act-mini{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;padding:44px 0;border-bottom:1px solid #dbe8e6}
.act-row.no-photo{background:#fff;border:1px solid #dbe8e6;border-radius:12px;padding:30px 32px}
#hiver .act-row.no-photo,#culture .act-row.no-photo{background:#fff}
.act-row.no-photo .act-dist b{font-size:clamp(2.2rem,3.6vw,3rem)}
.act-row .act-items li{font-size:1.08rem}
.act-row .act-rows{margin-top:8px}
.act-row .r-name{font-size:1.08rem}
.act-row .r-dist{background:none;padding:0;font-family:'Playfair Display',Georgia,serif;font-size:1.35rem;color:#0c7a85;font-weight:700}
@media(max-width:900px){.act-row.has-photo{grid-template-columns:1fr;gap:22px;padding:34px 0}.act-row.has-photo.rev .act-ph{order:0}.act-mini{grid-template-columns:1fr}}
.hero-content h1 .h1-loc{display:block;font-size:.5em;line-height:1.2;font-weight:400;font-style:italic;color:#f5cba5;margin-top:.2em;letter-spacing:.01em}
@media(min-width:1000px){body.v4-site .hero-content>.eyebrow{margin-top:38px}}
/* Activités : temps à gauche, plus petits que les titres ; sections bien séparées */
.act-row .act-rows li{display:flex;flex-wrap:wrap;align-items:center;gap:4px 14px;padding:12px 0}
.act-row .r-dist{order:-1;flex:0 0 96px;font-family:'DM Sans',Arial,sans-serif!important;font-size:.9rem!important;font-weight:800;color:#0c7a85;background:#e4f4f1;padding:5px 0!important;border-radius:6px;text-align:center;white-space:nowrap}
.act-row .r-name{flex:1 1 180px;font-size:1.12rem}
.act-row .r-note{order:5;flex:1 1 100%;padding-left:110px;margin-top:-2px}
.act-row .r-dur,.act-row .r-lvl{font-size:.8rem}
.act-section{padding:96px 0 100px;position:relative;border-top:10px solid transparent}
.act-section#ete{background:#fff8ea;border-top-color:#f2b35e}
.act-section#hiver{background:#e6f2f8;border-top-color:#5aaed6}
.act-section#culture{background:#f3efe6;border-top-color:#a8815a}
.act-section .section-head{margin-bottom:26px}
.act-section .section-head h2{font-size:clamp(2.4rem,4.6vw,3.6rem)}
.act-section#ete .eyebrow{color:#b9761c!important}
.act-section#hiver .eyebrow{color:#2a7fa8!important}
.act-section#culture .eyebrow{color:#7d5a37!important}
.act-section .act-row.no-photo{background:#fff}
@media(max-width:700px){.act-row .r-note{padding-left:0}.act-row .r-dist{flex-basis:84px}}
.hb-off .hb-chips button:disabled,.hb-off input:disabled{opacity:.4;cursor:not-allowed}
/* bouton « Pause vidéo » supprimé partout */
.hero-video-toggle{display:none!important}
/* mention meublés : petit texte sans cadre */
.hb-nostar{background:none!important;border:0!important;padding:2px 0!important;font-size:.8rem!important;font-weight:500!important;opacity:.9;display:block;margin-top:6px}
.hb-nostar{display:inline-block!important;vertical-align:middle;margin:6px 0 0 16px!important;font-size:.88rem!important}
@media(max-width:760px){.hb-nostar{display:block!important;margin:8px 0 0!important}}
#hb-sub{flex-direction:row!important;flex-wrap:wrap;align-items:center!important;gap:10px 16px!important}
#hb-sub .hb-counts{flex:1 0 100%}
.hb-nostar{margin:0!important}
/* Activités : menu rubriques collant */
.page-intro{padding-bottom:20px}
.act-nav{position:sticky;top:90px;z-index:40;background:rgba(255,254,250,.94);backdrop-filter:blur(8px);border-bottom:1px solid #dbe8e6;box-shadow:0 6px 18px #0b2a2e14}
.act-nav .pills{margin:0;padding:10px 0;gap:10px}
.act-nav .pills a{padding:9px 20px;font-size:.78rem}
.act-nav .pills a.on{background:#2B655E;color:#fff}
/* sous-blocs (ski de fond, bobsleigh…) */
.act-sub{border-top:1px solid #dbe8e6;padding-top:18px;margin-top:6px;display:flex;flex-direction:column;gap:10px}
.act-sub h4{font-size:1.5rem;line-height:1.25;margin:0;color:#17393f;font-family:'Playfair Display',Georgia,serif;font-weight:500}
.sub-dist{display:inline-block;vertical-align:middle;margin-left:10px;background:#e4f4f1;color:#0c7a85;font-family:'DM Sans',Arial,sans-serif;font-size:.8rem;font-weight:800;letter-spacing:.04em;padding:5px 12px;border-radius:999px;white-space:nowrap}
.sub-url{align-self:flex-start;font-weight:800;color:#0c7a85;text-decoration:underline}
.act-mini>.act-row:only-child{grid-column:1/-1}
/* étiquette de saison qui suit le scroll (côté droit) */
.act-tag{position:fixed;right:0;top:46%;transform:translateY(-50%);z-index:35;writing-mode:vertical-rl;padding:22px 12px;border-radius:12px 0 0 12px;background:#2B655E;color:#fff;font-weight:800;font-size:1rem;letter-spacing:.34em;text-transform:uppercase;box-shadow:-4px 4px 18px #0b2a2e33;opacity:0;pointer-events:none;transition:opacity .3s,background .3s}
.act-tag[data-s="0"]{background:#d8963a;opacity:1}
.act-tag[data-s="1"]{background:#3a8fbd;opacity:1}
.act-tag[data-s="2"]{background:#8a6a45;opacity:1}
.act-tag span{display:none}.act-tag span.on{display:block}
@media(max-width:760px){.act-tag{font-size:.8rem;padding:14px 8px;top:40%}}
/* trois étoiles dorées qui brillent sous le logo */
.site-header .brand{position:relative}
.brand-stars{position:absolute;left:0;right:0;top:100%;margin-top:2px;display:flex;justify-content:center;gap:7px;pointer-events:none}
.brand-stars i{font-style:normal;font-size:22px;line-height:1;color:#f7c948;background:linear-gradient(135deg,#fff3b0,#f2b01e 55%,#c98a0a);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;filter:drop-shadow(0 0 5px #ffd35acc);animation:starShine 2.4s ease-in-out infinite}
.brand-stars i:nth-child(2){font-size:26px;animation-delay:.5s}
.brand-stars i:nth-child(3){animation-delay:1s}
@keyframes starShine{0%,100%{transform:scale(1) rotate(0);opacity:.85;filter:drop-shadow(0 0 3px #ffd35a99)}50%{transform:scale(1.28) rotate(14deg);opacity:1;filter:drop-shadow(0 0 11px #fff2a8) drop-shadow(0 0 5px #ffc72c)}}
@media(prefers-reduced-motion:reduce){.brand-stars i{animation:none}}
@media(max-width:760px){.brand-stars i{font-size:15px}.brand-stars i:nth-child(2){font-size:18px}}
.brand-stars{justify-content:flex-start;padding-left:26px;gap:4px}
.brand-stars i{font-size:18px}.brand-stars i:nth-child(2){font-size:22px}
.site-header{z-index:70}
.brand-stars{justify-content:center!important;padding-left:0!important}
@media(min-width:1000px){body.v4-site .hero:not(.compact) .hero-content>.eyebrow{margin-top:78px}}
@media(min-width:1000px){body.v4-site .hero:not(.compact) .hero-content>.eyebrow{margin-top:104px}body.v4-site .hero:not(.compact) .hero-content{padding-bottom:0}body.v4-site .hero:not(.compact) .hero-types{margin-top:10px;margin-bottom:6px}body.v4-site .hero:not(.compact) .hero-dates{margin-top:6px;margin-bottom:6px}}
/* nav : lien galerie, resserrer */
.navigation .nav-simple,.navigation .nav-btn{padding-left:clamp(5px,.55vw,12px)!important;padding-right:clamp(5px,.55vw,12px)!important}

.hb-tabrow{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.hb-tabrow{padding:12px max(16px,calc((100% - 1240px)/2)) 0;gap:16px}
.hb-tabrow .hb-tabs{margin:0;padding:6px!important}
.hb-tabrow .hb-chips{flex:none}
.hb-filters{padding-top:12px!important}
/* galerie photos */
.gal2{columns:4 260px;column-gap:14px}
.gal2 .gal-item{display:block;break-inside:avoid;margin:0 0 14px;border-radius:12px;overflow:hidden;background:#dff1ee;box-shadow:0 6px 18px rgba(8,121,135,.12);cursor:zoom-in}
.gal2 img{display:block;width:100%;height:auto;min-height:120px;transition:transform .4s}
.gal2 .gal-item:hover img{transform:scale(1.04)}
.gal-lb{position:fixed;inset:0;z-index:200;background:rgba(4,30,34,.94);display:flex;align-items:center;justify-content:center}
.gal-lb[hidden]{display:none}
.gal-lb img{max-width:92vw;max-height:90vh;border-radius:8px}
.gal-lb button{position:absolute;background:rgba(255,255,255,.14);color:#fff;border:0;border-radius:50%;width:48px;height:48px;font-size:30px;cursor:pointer}
.gal-lb .gl-x{top:18px;right:18px}.gal-lb .gl-p{left:18px;top:50%}.gal-lb .gl-n{right:18px;top:50%}
.gal2 .gal-item{background-size:cover;background-position:center;min-height:90px}
.gal2 .gal-item img{opacity:0;transition:opacity .6s ease,transform .4s}
.gal2 .gal-item.is-in img{opacity:1}
.hb-det>.hb-pn{margin:0 0 18px;padding:0 0 14px;border-top:0;border-bottom:1px solid #d6ece8}

/* ===== Consentement cookies & contenus tiers ===== */
.ck-banner{position:fixed;left:16px;right:16px;bottom:16px;z-index:100000;max-width:880px;margin:0 auto;background:#fff;color:#17313a;border:1px solid #cfe7e4;border-radius:16px;box-shadow:0 18px 60px rgba(8,40,46,.28);font-size:.95rem;line-height:1.5}
.ck-in{padding:20px 22px}
.ck-banner .ck-title{font-family:'Playfair Display',Georgia,serif;font-size:1.25rem;line-height:1.3;margin:0 0 6px;color:#0f5f66;font-weight:600}
.ck-det[hidden]{display:none}
.ck-banner p{margin:0 0 12px}.ck-banner a{color:#0f6b73;text-decoration:underline}
.ck-det{display:grid;gap:10px;margin:0 0 14px;padding:12px 14px;background:#f2f9f8;border-radius:12px}
.ck-row{display:flex;gap:12px;align-items:flex-start;cursor:pointer}.ck-row input{margin-top:4px;width:18px;height:18px;accent-color:#15808c;flex:none}
.ck-row span{display:flex;flex-direction:column}.ck-row small{color:#4a6168;font-size:.84rem}
.ck-btns{display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end}
.ck-b{appearance:none;font:inherit;font-weight:700;cursor:pointer;padding:11px 20px;border-radius:999px;border:2px solid #15808c;background:#fff;color:#0f5f66;min-height:44px;flex:1 1 140px;max-width:220px}
.ck-b:hover,.ck-b:focus-visible{background:#15808c;color:#fff;outline:0}
.ck-b:focus-visible{box-shadow:0 0 0 3px #fff,0 0 0 5px #15808c}
.embed-facade{position:relative;display:flex;align-items:center;justify-content:center;text-align:center;aspect-ratio:16/9;width:100%;min-height:220px;color:#fff;border-radius:10px;overflow:hidden;background:linear-gradient(#0b2a2eb8,#0b2a2ee0),url(assets/camping-video-poster.jpg) center/cover #0b2a2e}
.embed-facade .ef-in{max-width:440px;padding:18px}.embed-facade p{margin:0 0 14px;font-size:.96rem}
.embed-facade .ck-b{background:#fff;border-color:#fff;color:#0f5f66;flex:none}.embed-facade .ck-b:hover{background:#d8f1ee;color:#0f5f66}
.hb-main.hb-vid .embed-facade{height:100%;aspect-ratio:auto;border-radius:0}
.film-frame .embed-facade{height:100%;border-radius:0}
.map-frame.embed-facade{min-height:320px;background:linear-gradient(#0b2a2eb0,#0b2a2ed8),url(assets/camping-video-poster.jpg) center/cover #0b2a2e}
.footer-bottom a,.footer-bottom button.ck-manage{color:inherit;text-decoration:underline;background:none;border:0;padding:0;font:inherit;cursor:pointer}
.footer-bottom .legal-links{display:flex;flex-wrap:wrap;gap:6px 18px}
@media (max-width:560px){.ck-banner{left:8px;right:8px;bottom:8px}.ck-in{padding:16px}.ck-b{max-width:none;flex:1 1 100%}}
/* Pages légales */
.legal-page{padding:clamp(120px,16vw,190px) 0 70px;background:#fff}
.legal-page .wrap{max-width:860px}
.legal-page h1{font-family:'Playfair Display',Georgia,serif;font-weight:500;font-size:clamp(2rem,4vw,3rem);color:#0f5f66;margin:0 0 10px}
.legal-page .lead{color:#4a6168;margin:0 0 28px}
.legal-page h2{font-family:'Playfair Display',Georgia,serif;font-weight:600;font-size:1.45rem;color:#17313a;margin:34px 0 10px}
.legal-page p,.legal-page li{line-height:1.7;color:#25383f}
.legal-page ul{padding-left:1.2em}.legal-page a{color:#0f6b73}
.legal-page table{width:100%;border-collapse:collapse;margin:12px 0;font-size:.95rem}.legal-page th,.legal-page td{border:1px solid #d6ece8;padding:9px 11px;text-align:left;vertical-align:top}.legal-page th{background:#eef8f7}
.legal-page .ck-b{display:inline-block;margin-top:6px;max-width:none;flex:none}
.legal-page mark{background:#fff3c4;padding:0 3px;border-radius:3px}

/* ===== Fiches hébergements statiques, FAQ, fil d'Ariane ===== */
.h1-type{display:block;font-family:'DM Sans',Arial,sans-serif;font-size:.34em;letter-spacing:.2em;text-transform:uppercase;font-weight:700;opacity:.92;margin-bottom:.35em}
.crumbs{background:#f2f9f8;border-bottom:1px solid #d6ece8;font-size:.9rem}
.crumbs .wrap{display:flex;flex-wrap:wrap;gap:4px 10px;align-items:center;padding-top:12px;padding-bottom:12px;color:#4a6168}
.crumbs a{color:#0f6b73;text-decoration:none}.crumbs a:hover{text-decoration:underline}
.crumbs [aria-current]{color:#17313a;font-weight:600}
.fiche{padding:clamp(28px,4vw,56px) 0}
.fi-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:clamp(20px,3vw,44px);align-items:start}
.fi-gal{min-width:0}
.fi-video{aspect-ratio:16/9;background:#000;border-radius:14px;overflow:hidden;margin-bottom:12px}.fi-video iframe,.fi-video .embed-facade{width:100%;height:100%;border:0;border-radius:0}
.fi-photos{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.fi-ph{display:block;border-radius:12px;overflow:hidden;background:#dcefed;aspect-ratio:4/3}.fi-ph img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .35s}.fi-ph:hover img{transform:scale(1.04)}
.fi-ph.fi-main{grid-column:1/-1;aspect-ratio:4/3}
.fi-det{padding:28px 26px;border-radius:16px;background:#fff;box-shadow:0 10px 40px rgba(8,60,70,.1)}
.fi-det .hb-notice{margin:14px 0 6px}
.fi-h{font-size:13px;text-transform:uppercase;letter-spacing:.1em;color:#087987;margin:24px 0 8px;font-family:'DM Sans',Arial,sans-serif;font-weight:800}
.fi-more .fi-h{font-size:1.5rem;text-transform:none;letter-spacing:0;font-family:'Playfair Display',Georgia,serif;font-weight:600;color:#17313a;margin:0 0 14px}
.fi-links{list-style:none;margin:0 0 20px;padding:0;display:flex;flex-wrap:wrap;gap:10px}
.fi-links a{display:inline-block;padding:10px 16px;border-radius:999px;border:1.5px solid #15808c;color:#0f5f66;text-decoration:none;font-weight:600;background:#fff}.fi-links a:hover{background:#15808c;color:#fff}
@media(max-width:900px){.fi-grid{grid-template-columns:1fr}.fi-photos{grid-template-columns:repeat(2,minmax(0,1fr))}.fi-det{padding:22px 18px}}
.faq-list{max-width:860px;margin:26px auto 0;display:grid;gap:12px}
.faq details{background:#fff;border:1px solid #d6ece8;border-radius:14px;padding:0;overflow:hidden}
.faq summary{cursor:pointer;list-style:none;padding:17px 52px 17px 20px;font-weight:700;color:#0f5f66;position:relative;font-size:1.05rem}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:'+';position:absolute;right:20px;top:50%;transform:translateY(-50%);font-size:1.5rem;color:#FF8C2E;font-weight:400}
.faq details[open] summary::after{content:'–'}
.faq details p{margin:0;padding:0 20px 18px;color:#35575d;line-height:1.65}
.faq .intro-head{text-align:center}

/* La photo du camping reste visible tant que la vidéo n'est pas lancée (ou si elle n'est pas autorisée) */
.hero-media .video-fallback{display:none!important}
.fi-det h2.fi-h{font-size:13px!important;line-height:1.3;margin:24px 0 8px;color:#087987;text-shadow:none}
.fi-more h2.fi-h{font-size:1.6rem!important;text-transform:none;letter-spacing:0}
.legal-page h2{font-size:1.45rem!important;text-transform:none;letter-spacing:0}
.embed-facade{max-width:100%;min-width:0}
.map-frame.embed-facade{aspect-ratio:auto;height:360px}
.split-banner .video-embed .embed-facade{aspect-ratio:auto;min-height:260px;flex:1}
.split-banner>*,.wrap>div{min-width:0}
.footer-bottom{flex-wrap:wrap;gap:8px 20px}
.footer-grid>*{min-width:0;overflow-wrap:anywhere}
@media(max-width:700px){.legal-page table,.legal-page thead,.legal-page tbody,.legal-page tr,.legal-page th,.legal-page td{display:block;width:100%}.legal-page thead{position:absolute;left:-9999px}.legal-page tr{margin:0 0 14px;border:1px solid #d6ece8;border-radius:10px;overflow:hidden}.legal-page td{border:0;border-bottom:1px solid #e6f2f0}}
.legal-page code{background:#eef8f7;padding:1px 5px;border-radius:4px}

/* Fiche : colonne photos (logo + réservation), navigation précédent/suivant à l'écart de la croix */
.hb-gal{display:flex;flex-direction:column}
.hb-gal-foot{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:26px;padding:30px 24px}
.hb-gal-logo{width:min(190px,46%);height:auto;filter:drop-shadow(0 8px 18px rgba(0,0,0,.35))}
.hb-gal-foot .hb-book{margin:0;width:min(360px,100%)}
@media(max-width:860px){.hb-gal-foot{display:none}}
.hb-det>.hb-pn{padding-right:60px}
.split-banner .video-embed{padding:0!important;min-height:520px}
.split-banner .video-embed iframe,.split-banner .video-embed .embed-facade{position:absolute;inset:0;width:100%!important;height:100%!important;aspect-ratio:auto!important;border-radius:0!important;box-shadow:none!important;min-height:0}

/* v44 — hero compact : la hauteur s'adapte au contenu (titre sur 2-3 lignes) */


/* v44 — bannière cookies en lightbox centrée */
.ck-banner{position:fixed;inset:0;left:0;right:0;bottom:0;max-width:none;margin:0;background:rgba(6,24,28,.72);border:0;border-radius:0;box-shadow:none;display:flex;align-items:center;justify-content:center;padding:16px;overflow-y:auto;backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px)}
.ck-banner .ck-in{width:min(640px,100%);background:#fff;border-radius:18px;box-shadow:0 24px 80px rgba(0,0,0,.4);padding:26px 28px;max-height:calc(100vh - 32px);overflow-y:auto;color:#17313a}
.ck-banner .ck-btns{justify-content:stretch}
html.ck-open{overflow:hidden}
@media(max-width:560px){.ck-banner{left:0;right:0;bottom:0;padding:10px}.ck-banner .ck-in{padding:18px}}

/* v44 — titres de pied de page (p au lieu de h4), services, bloc SEO */
.footer .f-h{font-family:'DM Sans',Arial,sans-serif;text-transform:uppercase;letter-spacing:.15em;font-size:.78rem;color:#f2e6d1;margin:0 0 20px;font-weight:700}
.svc-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:56px;align-items:start}
.svc-grid.rev .svc-pic{order:2}
.svc-pic img{width:100%;height:auto;border-radius:14px;aspect-ratio:4/3;object-fit:cover;box-shadow:0 18px 50px rgba(15,60,66,.16)}
.svc-body h2{margin-bottom:12px}
.svc-list{list-style:none;margin:22px 0 0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.svc-card{display:flex;gap:12px;align-items:flex-start;background:#fff;border:1px solid #dcebe8;border-radius:12px;padding:14px 16px}
.svc-group.soft .svc-card{background:#fff}
.svc-ic{color:#15808c;flex:none;margin-top:3px}
.svc-card h3{font-family:'DM Sans',Arial,sans-serif;font-size:1.02rem;font-weight:700;letter-spacing:0;margin:0 0 4px;color:#17313a}
.svc-card p{font-size:.92rem;margin:0;color:#4a6168}
.svc-cta{text-align:center}.svc-cta .btn{margin:6px}
.svc-intro .lead{max-width:860px}
.seo-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:20px;margin-top:26px}
.seo-card{background:#fff;border:1px solid #dcebe8;border-radius:12px;padding:18px 20px}
.seo-card h3{font-size:1.2rem;margin:0 0 8px}.seo-card p{font-size:.93rem}
.seo-text .lead{max-width:900px}
@media(max-width:900px){.svc-grid{grid-template-columns:1fr;gap:26px}.svc-grid.rev .svc-pic{order:0}.svc-list{grid-template-columns:1fr}}
.svc-intro{padding-bottom:10px}
/* sélecteur de langues (pied de page) */
.foot-lang{display:flex;flex-wrap:wrap;gap:6px 16px;width:100%;margin-top:12px;font-size:.88rem}
.foot-lang a{color:inherit;opacity:.82;text-decoration:none}
.foot-lang a:hover{opacity:1;text-decoration:underline}
.foot-lang a[aria-current]{opacity:1;font-weight:700;text-decoration:underline;text-underline-offset:3px}
.footer-bottom{flex-wrap:wrap}
.footer-grid>div{min-width:0}.footer a{overflow-wrap:anywhere}
@media(max-width:560px){.footer .btn{white-space:normal;max-width:100%;text-align:center}}
/* langues à mots longs (NL/DE) : césure et pas de débordement */
h1,h2,h3,h4,.btn,.eyebrow{hyphens:auto;overflow-wrap:anywhere}
.trust-grid>div{min-width:0}
@media(max-width:560px){.trust-strip h2{font-size:1.55rem}}
@media(max-width:760px){.header-side .lang-sw select{width:auto;font-size:.8rem;padding:8px 4px 8px 10px}}
/* ===== v45 : héros, bandeaux, images, couleurs ===== */
/* accueil : la hauteur suit le contenu, les boutons ne passent plus sous le bandeau de réservation */
body.v4-site .hero:not(.compact){height:auto!important;min-height:min(900px,100svh)!important;padding-bottom:112px;box-sizing:border-box}
body.v4-site .hero:not(.compact) .hero-content{margin-top:150px}
/* pages intérieures : bandeaux moins hauts, texte à droite du logo */
body.v4-site.v6-site .hero.compact{height:auto!important;min-height:0!important;padding:158px 0 46px;box-sizing:border-box}
body.v4-site.v6-site .hero.compact .hero-content{margin-top:0!important;padding-top:0!important}
@media(min-width:1041px){body.v4-site.v6-site .hero.compact .hero-content{padding-left:210px!important}}
@media(max-width:1040px){body.v4-site.v6-site .hero.compact{padding:150px 0 38px}}
@media(max-width:760px){body.v4-site.v6-site .hero.compact{padding:204px 0 34px}body.v4-site .hero:not(.compact){padding-bottom:96px}body.v4-site .hero:not(.compact) .hero-content{margin-top:170px!important}}
/* photos de la page curistes : plus de hauteur forcée par l'attribut height */
.cur-img img{height:auto!important;max-height:420px}
/* couleurs : sélecteur de langue lisible sur fond clair */
.lang-sw select{background:rgba(6,84,128,.38)!important;color:#fff!important}

/* ===== v45b : menu mobile / tablette (≤1040px) ===== */
@media(max-width:1040px){
body.v4-site.v6-site .mobile-panel{z-index:200!important;color:#fff;padding:18px 24px 60px;height:100%;height:100dvh;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}
body.v4-site.v6-site .mobile-top{position:relative;z-index:2}
body.v4-site.v6-site .mobile-top b{color:#fff}
body.v4-site.v6-site .mobile-top button{color:#fff;font-size:34px;line-height:1;width:44px;height:44px;cursor:pointer}
body.v4-site.v6-site .mobile-panel>a:not(.btn){display:block;font-weight:800;letter-spacing:.03em;text-transform:uppercase;color:#fff;padding:15px 0;border-bottom:1px solid rgba(255,255,255,.28);text-decoration:none}
body.v4-site.v6-site .mobile-panel summary{color:#fff}
body.v4-site.v6-site .mobile-panel details{border-bottom:1px solid rgba(255,255,255,.28)}
body.v4-site.v6-site .mobile-panel details a{color:rgba(255,255,255,.92);padding:10px 8px 10px 20px;text-decoration:none}
body.v4-site.v6-site .mobile-panel .lang-sw select{color:#fff}
body.v4-site.v6-site .mobile-panel .lang-sw select option{color:#10303f}
body.v4-site.v6-site .whatsapp,body.v4-site.v6-site .wa-float{z-index:60}
}

/* ===== v45c : photos services ===== */
.svc-strip{padding:0 0 10px}
.svc-figs{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.svc-fig{margin:0;border-radius:16px;overflow:hidden;background:#fff;box-shadow:0 10px 30px rgba(8,60,90,.12)}
.svc-fig img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}
.svc-fig figcaption{padding:11px 16px;font-size:.92rem;font-weight:600;color:var(--ink,#233732)}
@media(max-width:760px){.svc-figs{grid-template-columns:1fr;gap:14px}}

/* ===== v45d : page services, espacements ===== */
body.v4-site .svc-intro{padding:44px 0 6px}
body.v4-site .svc-group{padding:30px 0}
body.v4-site .svc-strip{padding:14px 0 6px}
body.v4-site .svc-cta{padding:40px 0}
body.v4-site .svc-group .svc-list{margin-top:16px}
body.v4-site .svc-body .lead{margin-bottom:0}
body.v4-site .svc-hero-photo{object-position:50% 62%}
@media(max-width:760px){body.v4-site .svc-intro{padding:30px 0 4px}body.v4-site .svc-group{padding:20px 0}}
body.v4-site .svc-intro h2{margin:6px 0 12px}
body.v4-site .svc-intro .lead{margin:0}
body.v4-site .svc-body h2{margin:0 0 8px}
body.v4-site .svc-card{padding:12px 15px}
body.v4-site .svc-list{gap:12px}

body.v4-site .svc-pic{display:grid;gap:16px;align-content:start}

body.v4-site .svc-pic.two{gap:14px}
body.v4-site .svc-pic.two img{aspect-ratio:16/9}

/* v46 vidéos */
.vid-top{background:#0b2a2e;padding:clamp(14px,2.5vw,36px) 0}
.vid-top-in{max-width:1180px;margin:0 auto;padding:0 clamp(12px,3vw,28px)}
.vid-top .embed-facade,.vid-top iframe{width:100%;aspect-ratio:16/9;border:0;border-radius:12px;box-shadow:0 18px 50px #0006;min-height:0}
.vid-top iframe{display:block}
#video-hebergements,#video-activites,#video-accueil{scroll-margin-top:90px}
.embed-facade{background:linear-gradient(#0b2a2e99,#0b2a2ed9),url(assets/photos/chalets-camping-des-neiges-grand-aigueblanche-960.webp) center/cover #0b2a2e}

.vid-first{padding-top:calc(var(--hdr-h,118px) + 12px)}
@media(max-width:760px){.vid-first{padding-top:calc(var(--hdr-h,84px) + 8px)}}
.vid-first{padding-top:190px!important}
@media(max-width:1040px){.vid-first{padding-top:200px!important}}
@media(max-width:760px){.vid-first{padding-top:240px!important}}
/* v49 : la vidéo remplace la photo du bandeau d'accueil */
.vid-hero .hero-video,.vid-hero .video-fallback{display:none!important}
.vid-hero .vid-bg{position:absolute;inset:0;z-index:2;background:#0b2a2e}
.vid-hero .vid-bg>div,.vid-hero .vid-bg .embed-facade{position:absolute;inset:0;width:100%!important;height:100%!important;aspect-ratio:auto!important;border-radius:0;min-height:0}
.vid-hero .vid-bg iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.vid-hero .hero-tint{z-index:3;pointer-events:none}
.vid-hero .hero-content{z-index:4;pointer-events:none}
.vid-hero .hero-content a,.vid-hero .hero-content button{pointer-events:auto}
.vid-hero:has(.vid-bg iframe) .hero-content,.vid-hero:has(.vid-bg iframe) .hero-tint,.vid-hero:has(.vid-bg iframe) .hero-vertical,.vid-hero:has(.vid-bg iframe) .down-link,.vid-hero:has(.vid-bg iframe) .hero-photo-caption{display:none}
.vid-hero .vid-bg .embed-facade .ef-in{position:relative;z-index:2}
@media(max-width:900px){.vid-hero .vid-bg{top:120px;bottom:auto;height:56.25vw}.vid-hero .vid-bg>div,.vid-hero .vid-bg .embed-facade{height:56.25vw!important}.vid-hero .hero-content{padding-top:0!important;margin-top:calc(56.25vw + 130px)!important;padding-bottom:110px!important}.vid-hero .hero-content>.eyebrow{margin-top:0!important}.vid-hero:has(.vid-bg iframe) .hero-content{display:block;visibility:hidden}}

@media(min-width:901px){.vid-hero .vid-bg .embed-facade{justify-content:flex-end;padding-right:9%}}
.vid-hero .hero-tint{opacity:.6}
@media(max-width:900px){
body.v4-site .hero.vid-hero:not(.compact) .hero-content{margin-top:calc(56.25vw + 140px)!important;padding-top:0!important}
body.v4-site.v6-site .hero.compact.vid-hero{padding-top:calc(56.25vw + 140px)!important}
body.v4-site .hero.vid-hero .hero-content>.eyebrow{margin-top:0!important}
}
@media(min-width:901px){.vid-hero .vid-bg .embed-facade{align-items:flex-end;padding-bottom:70px}.vid-hero .vid-bg .embed-facade .ef-in{max-width:360px}}
@media(min-width:901px){body.v4-site .hero.vid-hero:not(.compact) .hero-content{padding-bottom:110px!important}}
@media(min-width:901px){body.v4-site .hero.compact.vid-hero{min-height:clamp(420px,36vw,600px)!important}}
.embed-facade{background:linear-gradient(#0b2a2e80,#0b2a2ec0),var(--poster,url(assets/photos/chalets-camping-des-neiges-grand-aigueblanche-960.webp)) center/cover #0b2a2e}
.vid-hero .vid-bg,.vid-hero .vid-bg *{pointer-events:auto!important}

/* v54 : vidéo de fond plein cadre (cover), lecture automatique muette */
.vid-hero .vid-bg{container-type:size;overflow:hidden}
.vid-hero .vid-bg iframe{position:absolute!important;inset:auto!important;top:50%!important;left:50%!important;width:max(100cqw,177.78cqh)!important;height:max(100cqh,56.25cqw)!important;transform:translate(-50%,-50%);pointer-events:none!important}
.vid-hero:has(.vid-bg iframe) .hero-content,.vid-hero:has(.vid-bg iframe) .hero-vertical,.vid-hero:has(.vid-bg iframe) .down-link,.vid-hero:has(.vid-bg iframe) .hero-photo-caption{display:block!important;visibility:visible!important}
.vid-hero:has(.vid-bg iframe) .hero-tint{display:block!important}

.gal-videos{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.section-head:has(.gal-videos){flex-wrap:wrap;gap:18px}
@media(min-width:761px){body.v4-site .booking-search{margin-top:-88px!important}}

/* v57 — filtres hébergements compacts et non collants sur mobile */
@media(max-width:760px){
.hb-bar{position:static!important;padding-top:6px}
.hb-tabrow{display:block!important}
.hb-tabs{width:auto!important;max-width:none!important;margin:0 12px!important;border-radius:14px}
.hb-tabs button.hb-tab{padding:7px 12px 7px 8px;font-size:14px;gap:7px}
.hb-filters{gap:8px 14px!important;padding:8px 12px 10px!important}
.hb-chips{gap:5px}
.hb-chips>b{font-size:.78rem!important;padding:6px 11px;letter-spacing:.1em;min-width:0!important}
.hb-chips button{padding:6px 11px;font-size:12.5px}
.hb-filters input{width:100%;padding:9px 14px;font-size:14px}
}

/* v58 — mobile : vidéo en fond du bandeau, textes par-dessus */
@media(max-width:900px){
body.v4-site .hero.vid-hero .vid-bg{top:0!important;bottom:0!important;height:auto!important}
body.v4-site .hero.vid-hero .vid-bg>div,body.v4-site .hero.vid-hero .vid-bg .embed-facade{height:100%!important}
body.v4-site .hero.vid-hero:not(.compact) .hero-content,body.v4-site .hero.vid-hero .hero-content{margin-top:0!important;padding-top:150px!important;padding-bottom:110px!important}
body.v4-site.v6-site .hero.compact.vid-hero{padding-top:0!important;min-height:max(460px,72svh)!important}
body.v4-site .hero.vid-hero:not(.compact){min-height:max(640px,92svh)}
.vid-hero:has(.vid-bg iframe) .hero-content{visibility:visible!important}
.vid-hero .vid-bg .embed-facade{align-items:flex-start;justify-content:center;padding-top:112px}
.vid-hero .hero-tint{opacity:.55}
}

/* v58 — mobile : logo réduit dans la barre une fois la page défilée (ne déborde plus sur le contenu) */
@media(max-width:900px){
body.v4-site.v6-site .site-header.scrolled .brand{transform:translateY(44px) scale(.42)!important;transform-origin:left top}
.site-header.scrolled .brand-stars{display:none}
}
/* v58 — facade vidéo mobile : bouton seul en bas, sans recouvrir les titres */
@media(max-width:900px){
.vid-hero .vid-bg .embed-facade{align-items:flex-end!important;justify-content:flex-end!important;padding:0 16px 22px!important}
.vid-hero .vid-bg .embed-facade .ef-in{padding:0;max-width:none;background:none;box-shadow:none}
.vid-hero .vid-bg .embed-facade .ef-in p{display:none}
}

/* v59 — onglets hébergements mobile : alignés et tous visibles (retour à la ligne) */
@media(max-width:760px){
.hb-tabrow{padding:10px 16px 0!important}
.hb-tabs{margin:8px 0 0!important;width:100%!important;max-width:none!important;flex-wrap:wrap;overflow:visible!important;box-sizing:border-box}
.hb-tabs button.hb-tab{padding:7px 11px 7px 7px;font-size:13.5px;gap:6px}
.hb-tabs button.hb-tab img{width:30px;height:30px}
.hb-tabs button.hb-tab small{margin-left:2px}
}

/* v60 — mobile : titres sous le logo qui déborde du bandeau */
@media(max-width:900px){
body.v4-site .hero.vid-hero:not(.compact) .hero-content,body.v4-site .hero.vid-hero .hero-content{padding-top:215px!important}
body.v4-site.v6-site .hero.compact.vid-hero{min-height:max(560px,80svh)!important}
body.v4-site .hero.vid-hero:not(.compact){min-height:max(720px,100svh)}
.vid-hero .vid-bg .embed-facade{padding-top:0!important}
}
@media(max-width:900px){body.v4-site.v6-site .hero.compact.vid-hero .hero-content{padding-top:215px!important;margin-top:0!important}body.v4-site.v6-site .hero.compact.vid-hero{padding-top:0!important}}

/* v61 — fiche hébergement mobile : galerie puis texte, sans chevauchement */
@media(max-width:860px){
.hb-panel{display:block!important;overflow-y:auto;-webkit-overflow-scrolling:touch}
.hb-gal{display:block!important;min-height:0!important;height:auto!important}
.hb-main{width:100%;height:auto!important}
.hb-thumbs{display:flex;overflow-x:auto;padding:10px 12px;background:#0c3a41}
.hb-det{position:relative;background:#FFFEF9}
}

/* v62 — mobile : dates d'ouverture sur 2 lignes, bulle compacte */
@media(max-width:760px){
body.v4-site .hero-dates{display:inline-grid!important;grid-template-columns:auto auto;gap:4px 12px!important;align-items:baseline;border-radius:22px!important;padding:10px 20px!important;width:fit-content;max-width:100%}
body.v4-site .hero-dates i{display:none}
}

/* v65 */.hb-gal-foot{justify-content:flex-start;padding-top:34px;gap:34px}
