.legal-hero{padding-bottom:78px}.legal-hero .txt-l{margin-top:28px;max-width:720px}
.legal-layout{display:grid;grid-template-columns:minmax(220px,.35fr) minmax(0,1fr);gap:90px;align-items:start}
.legal-sommaire{position:sticky;top:115px;border:1px solid var(--ligne);background:#fff;padding:30px}
.legal-sommaire .eti{margin-bottom:18px}.legal-sommaire a{display:block;padding:10px 0;border-top:1px solid var(--ligne);font-size:13px;color:var(--gris)}.legal-sommaire a:hover{color:var(--encre)}
.legal-document{max-width:820px}.legal-document>section{scroll-margin-top:110px;margin-bottom:58px}.legal-document h2{font-size:clamp(28px,3.3vw,40px);line-height:1.15;margin-bottom:20px}.legal-document h3{font-size:22px;line-height:1.3;margin:28px 0 12px}.legal-document p,.legal-document li{font-size:16px;line-height:1.82;color:#4f4b45}.legal-document p+p{margin-top:16px}.legal-document ul,.legal-document ol{padding-left:22px;margin:17px 0}.legal-document li+li{margin-top:9px}.legal-document a{text-decoration:underline;text-decoration-color:var(--jaune);text-underline-offset:4px}.legal-document strong{color:var(--encre);font-weight:600}
.legal-date{display:inline-block;margin-bottom:42px;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--gris)}
.legal-alerte{border-left:3px solid var(--jaune);background:#fff8df;padding:24px 28px;margin-bottom:42px}.legal-alerte strong{display:block;margin-bottom:7px}.legal-alerte p{font-size:14px;line-height:1.65;margin:0}
.legal-contact{border:1px solid var(--ligne);background:var(--ivoire);padding:28px;margin-top:24px}.legal-contact p{font-size:14px}.legal-contact p+p{margin-top:5px}
.consentement{display:flex!important;align-items:flex-start;gap:10px;font-size:12px!important;line-height:1.5!important;color:var(--gris)!important;text-transform:none!important;letter-spacing:0!important}.consentement input[type=checkbox]{flex:0 0 auto!important;width:16px!important;height:16px!important;margin-top:2px;padding:0!important}.consentement a{text-decoration:underline;text-underline-offset:3px}
.champ .consentement{margin-top:8px}.info-form{display:grid!important;grid-template-columns:1fr auto!important;border-bottom:0!important;max-width:480px!important}.info-form>input[type=email]{border-bottom:2px solid var(--encre)!important}.info-form>button{border-bottom:2px solid var(--encre)!important}.consentement-info{grid-column:1/-1;margin-top:12px}
.pied-liens-legaux{max-width:760px;line-height:1.8}
.booking-panel{background:var(--ivoire);border:1px solid var(--ligne);padding:clamp(28px,5vw,52px)}.booking-panel h2{font-size:clamp(34px,4vw,52px);line-height:1.05;margin:14px 0 20px}.booking-panel h2 em{font-family:"Playfair Display",serif;font-weight:400}.booking-panel>p{color:var(--gris);line-height:1.75}.booking-main{margin:28px 0 20px;width:100%;justify-content:space-between}.booking-services{border-top:1px solid var(--ligne)}.booking-services a{display:flex;justify-content:space-between;gap:20px;padding:15px 2px;border-bottom:1px solid var(--ligne);font-size:14px;transition:padding .2s ease,background .2s ease}.booking-services a:hover,.booking-services a:focus-visible{padding-left:10px;background:#fff8df}.booking-services strong{white-space:nowrap;font-weight:600}.booking-panel .note{font-size:12px;margin-top:20px}.booking-panel .note a{text-decoration:underline;text-underline-offset:3px}
@media(max-width:850px){.legal-layout{grid-template-columns:1fr;gap:45px}.legal-sommaire{position:static}.legal-document>section{margin-bottom:45px}}
