/* Stars — façade de nuit / réservation directe. Scoped to the four homepages. */
#home-hero .v111-media,#home-hero .v111-picture{position:absolute;inset:0;display:block;overflow:hidden;pointer-events:none}
#home-hero .v111-media{background:#182639}
#home-hero .v111-picture img{display:block;width:100%;height:100%;object-fit:cover;object-position:center;transform:none;filter:none}
body.v112-home{--v112-edge:clamp(28px,5.5vw,104px);--v112-ink:#2b333f;--v112-gold:#c49a6c;--v112-paper:#f8f6f2}
html body.v112-home .header.header--home:not(.is-scrolled):not(.is-menu-open){background:transparent!important;box-shadow:none!important;border-color:transparent!important}
body.v112-home #home-hero .home-hero-reveal{opacity:1;visibility:visible;transform:none}
body.v112-home #home-hero .home-hero-title{max-width:100%}
body.v112-home #home-hero #opening-title{font:550 14px/1.45 var(--sans);color:#ffe8c9;letter-spacing:.025em;margin:0 0 14px;text-transform:none}
body.v112-home #home-hero .home-hero-poem{font-size:clamp(42px,3.8vw,61px);line-height:1.12;letter-spacing:-.035em;margin:0;color:#fff;text-align:start}
body.v112-home #home-hero .home-hero-poem span,body.v112-home #home-hero .home-hero-poem em{display:block}
body.v112-home #home-hero .home-hero-poem em{color:#fff0dc}
body.v112-home #home-hero .cl-google{display:inline-flex;flex-wrap:wrap;align-items:center;min-height:28px;margin:11px 0 0;padding:0;gap:3px;border:0;box-shadow:none;background:none;font:520 13.5px/1.45 var(--sans);color:#fff}
body.v112-home #home-hero .v101-google-link{min-height:28px;padding:0;display:inline-flex;align-items:center;gap:7px}
body.v112-home #home-hero .cl-stars{color:#f2c98c;letter-spacing:.025em;font-size:.96em}
html[dir=rtl] body.v112-home #home-hero :is(.home-hero-poem,#opening-title){letter-spacing:0;line-height:1.42}
body.v112-home .header--home a:focus-visible,body.v112-home #home-hero .cl-google a:focus-visible{outline:2px solid #fff0d2;outline-offset:3px}
.v112-home .v112-short{box-sizing:border-box;display:grid;margin:0;align-items:center;font-family:var(--sans);letter-spacing:0;text-align:start}
.v112-home .v112-short>span{min-width:0}
.v112-home .v112-short a{display:inline-flex;align-items:center;justify-self:end;gap:.35em;white-space:nowrap;text-decoration:none;border:none;font-family:var(--sans);line-height:1.2;min-height:24px}
.v112-home .v112-short a:hover,.v112-home .v112-short a:focus-visible{text-decoration:underline;text-underline-offset:3px}
.v112-forward{display:inline-block;font-size:1.15em}
html[dir=rtl] .v112-forward{transform:scaleX(-1)}
.v112-home #home-hero .cl-trust{display:none}
body.v112-home .v101-guarantees.cl-trust{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:3px 24px;margin:0;padding:9px 18px;background:#f8f6f2;color:#424b50;text-shadow:none;border-block-end:1px solid #e6dfd5;font:500 12px/1.4 var(--sans)}
body.v112-home .v101-guarantees.cl-trust i{color:#785431}
body.v112-home .v101-guarantees.cl-trust a{color:inherit;min-height:30px}
.v112-home .v112-dock,.v112-home .v112-fallback{display:none!important}
@media(min-width:768px){
 html body.v112-home #home-hero .home-hero-shade{--halo-x:12%;background:radial-gradient(ellipse 65% 56% at var(--halo-x) 70%,rgba(12,23,35,.76) 0%,rgba(12,23,35,.58) 46%,rgba(12,23,35,.16) 78%,transparent 100%),linear-gradient(to bottom,#0c172350,transparent 18%)}
 html[dir=rtl] body.v112-home #home-hero .home-hero-shade{--halo-x:88%}
 .v112-home .home-intro #home-hero{box-sizing:border-box;height:auto;min-height:100vh;min-height:max(505px,100svh);display:flex;flex-direction:column;align-items:stretch;justify-content:flex-end;gap:clamp(24px,6svh,62px);padding:110px var(--v112-edge) clamp(35px,7.45svh,80px)}
 body.v112-home #home-hero .home-hero-copy.wrap,body.v112-home #home-hero .home-hero-utilities.wrap{position:relative;inset:auto;display:flex;align-self:flex-start;align-items:flex-start;justify-content:flex-start;padding:0;margin:0;width:min(896px,100%);max-width:100%;gap:0}
 body.v112-home #home-hero .home-hero-utilities.wrap{display:block}
 body.v112-home #home-hero .opening-booking{width:100%;padding:0;background:none}
 body.v112-home #home-hero .v112-ribbon{position:static;width:100%;max-width:none;grid-template-columns:auto minmax(0,1fr) auto;min-height:31px;padding:2px 13px;column-gap:12px;row-gap:0;background:#273541;color:#fff6e6;border:0;border-radius:4px;box-shadow:none;margin-bottom:6px;font:500 12.5px/1.35 var(--sans)}
 body.v112-home #home-hero .v112-ribbon .v112-extra{border-inline-start:1px solid #dbc2a55c;padding-inline-start:12px}
 body.v112-home #home-hero .v112-ribbon a{font-size:12px;min-height:25px;margin:0;padding:0;color:#ffe0b8}
 .v112-home #home-hero #stay-search-form{box-sizing:border-box;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1.05fr) auto;min-height:62px;gap:0;margin:0;padding:6px 8px 6px 14px;padding-inline:14px 8px;background:#f8f6f2;border:1px solid #ded7cb;border-radius:6px;box-shadow:0 3px 13px #14223126}
 .v112-home.cl-home-ready #home-hero .cl-date-field,.v112-home.cl-home-ready #home-hero .stay-guests-field{min-width:0;margin:0;padding:0 14px;border:0;border-inline-end:1px solid #d9d1c4}
 .v112-home.cl-home-ready #home-hero .cl-date-field{padding-inline-start:0}
 .v112-home.cl-home-ready #home-hero :is(.cl-date-trigger,#stay-guests-toggle){position:relative;box-sizing:border-box;display:flex;flex-flow:row wrap;align-content:center;align-items:baseline;justify-content:flex-start;gap:1px 0;min-height:44px;margin:0;padding:0;padding-inline:0 19px}
 .v112-home.cl-home-ready #home-hero #stay-arrival.cl-date-trigger{padding-inline-start:29px}
 .v112-home.cl-home-ready #home-hero :is(.cl-field-heading,#stay-guests-label){flex-basis:100%;font:500 12px/1.32 var(--sans);color:#515d66;letter-spacing:.01em}
 .v112-home #home-hero .cl-main-value{font:600 16px/1.35 var(--sans);color:#283540;overflow-wrap:anywhere}
 .v112-home #home-hero .cl-gold-value:not(:empty){display:inline;font:500 13px/1.4 var(--sans);color:#43515a}
 .v112-home #home-hero .cl-gold-value:not(:empty)::before{content:"·";padding-inline:5px}
 .v112-home #home-hero .cl-date-trigger>.cl-icon{inset-inline:0 auto;top:50%;width:18px;height:18px;transform:translateY(-50%);color:#765532}
 .v112-home #home-hero .cl-date-trigger::after{content:"";position:absolute;inset-inline-end:1px;top:43%;width:6px;height:6px;border:solid #526169;border-width:0 1.4px 1.4px 0;transform:rotate(45deg)}
 body.v112-home #home-hero .stay-search-form>.stay-search-link{box-sizing:border-box;width:auto;min-width:170px;min-height:46px;margin-inline-start:10px;padding:8px clamp(12px,1.8vw,26px);border-radius:5px;background:#c49a6c;color:#26323d;font:650 14px/1.35 var(--sans)}
 .v112-home #home-hero .stay-search-form:not([data-cl-enhanced]){grid-template-columns:repeat(2,minmax(0,1fr)) minmax(0,1.1fr) auto;min-height:62px}
}
@media(min-width:1100px){
 body.v112-home .header.header--home .header-inner{min-height:64px;padding-inline:clamp(28px,3.3vw,55px);grid-template-columns:minmax(116px,1fr) auto auto auto;gap:clamp(15px,1.8vw,26px)}
 body.v112-home .header.header--home .brand{width:132px;height:48px}
 html body.v112-home .header.header--home #main-nav{gap:clamp(15px,1.45vw,22px)}
 html body.v112-home .header.header--home #main-nav>a:not(.nav-mobile-contact){font:500 14px/1.35 var(--sans);min-height:44px;letter-spacing:0}
 body.v112-home .header.header--home .header-cta{min-width:99px;min-height:44px;padding:8px 14px;font:600 13.5px/1.25 var(--sans)}
}
@media(min-width:768px) and (max-width:1000px){
 .v112-home .home-intro #home-hero{padding-inline:25px}
 body.v112-home #home-hero .v112-ribbon{font-size:12px;column-gap:8px}
 body.v112-home #home-hero .v112-ribbon .v112-extra{padding-inline-start:8px}
 .v112-home #home-hero #stay-search-form{padding-inline:10px 5px}
}
@media(max-width:767.98px){
 body.v112-home{padding-bottom:var(--cl-dock-space,calc(92px + env(safe-area-inset-bottom,0px)))}
 html:has(>.v112-home){scroll-padding-bottom:calc(var(--cl-dock-space,92px) + 8px)}
 .v112-home .home-intro #home-hero{display:block;height:calc(100vh - var(--cl-dock-space,92px));height:calc(100svh - var(--cl-dock-space,calc(92px + env(safe-area-inset-bottom,0px))));min-height:350px;max-height:none;padding:0;overflow:hidden}
 #home-hero .v111-picture img{object-position:center 25%}
 html body.v112-home #home-hero .home-hero-shade,html[dir=rtl] body.v112-home #home-hero .home-hero-shade{background:linear-gradient(0deg,#0c1723f2 0%,#0c1723b5 14%,#0c17235c 28%,#0c172316 40%,transparent 54%),linear-gradient(#0c17234d,transparent 15%)}
 html[lang] body.v112-home #home-hero .home-hero-copy.wrap{position:absolute;inset:auto 0 clamp(21px,4.6svh,40px);box-sizing:border-box;width:100%;max-width:100%;margin:0;padding:0 max(18px,env(safe-area-inset-right)) 0 max(18px,env(safe-area-inset-left));display:flex;align-items:flex-start;gap:0;justify-content:flex-start}
 .v112-home #home-hero .home-hero-utilities.wrap{display:none!important}
 body.v112-home #home-hero #opening-title{font:550 12.5px/1.45 var(--sans);letter-spacing:.014em;margin:0 0 13px}
 html[lang] body.v112-home #home-hero .home-hero-poem{font-size:clamp(25px,7.65vw,34px);line-height:1.23;letter-spacing:-.035em;text-wrap:initial}
 html[lang] body.v112-home #home-hero .home-hero-poem>span,html[lang] body.v112-home #home-hero .home-hero-poem>em{white-space:normal;text-wrap:pretty}
 html[dir=rtl] body.v112-home #home-hero .home-hero-poem{letter-spacing:0;line-height:1.42}
 body.v112-home #home-hero .cl-google{font-size:12px;line-height:1.4;min-height:24px;margin-top:8px}
 body.v112-home #home-hero .v101-google-link{min-height:26px}
 body.v112-home .header.header--home .header-cta{display:none!important}
 body.v112-home .header.header--home .header-inner{padding-inline:max(16px,env(safe-area-inset-left)) max(16px,env(safe-area-inset-right))}
 body.v112-home .header.header--home .brand{max-width:110px}
 body.v112-home.cl-docked .v112-dock,body.v112-home:not(.cl-home-ready)>.v112-fallback{box-sizing:border-box;display:grid!important;position:fixed;z-index:48;inset:auto 0 0;width:auto;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:0 8px;margin:0;padding:4px max(14px,env(safe-area-inset-right)) calc(3px + env(safe-area-inset-bottom)) max(14px,env(safe-area-inset-left));border:0;border-top:1px solid #ded6c9;border-radius:0;background:white;color:#2b333f;box-shadow:0 -2px 10px #1c25300b;text-align:start}
 .v112-home .v112-dock button,.v112-home .v112-fallback .btn{box-sizing:border-box;margin:0;min-height:44px;border:0;box-shadow:none;cursor:pointer;text-transform:none;font-family:var(--sans);letter-spacing:0}
 .v112-home .v112-summary{grid-column:1;grid-row:1;display:grid;grid-template-columns:19px minmax(0,1fr);align-content:center;align-items:center;gap:0 7px;justify-items:start;background:transparent;color:#29333f;text-align:start;padding:0;line-height:1.25}
 .v112-summary>.cl-icon{grid-area:1 / 1 / span 2;width:18px;height:18px;color:#78542e}
 .v112-dates-value{grid-area:1 / 2;font-weight:650;font-size:15px;font-variant-numeric:tabular-nums}
 .v112-party{grid-area:2 / 2;color:#48555f;font-size:12px;line-height:1.35}
 .v112-home .v112-choose{grid-column:2;grid-row:1;justify-self:end;align-content:center;min-width:133px;min-height:44px;padding:6px 12px;border-radius:5px;background:#c49a6c;color:#25303b;text-align:center;text-decoration:none;font:650 13.5px/1.24 var(--sans)}
 .v112-home .v112-choose:hover{background:#d1a97e}
 .v112-home .v112-short:not(.v112-ribbon){grid-area:2 / 1 / auto / -1;grid-template-columns:minmax(0,1fr) auto;row-gap:0;column-gap:6px;margin-top:3px;padding-top:4px;border-top:1px solid #e6dfd6;font:500 12px/16px var(--sans);color:#303c46}
 .v112-home .v112-short:not(.v112-ribbon) .v112-first{grid-area:1 / 1 / auto / -1}
 .v112-home .v112-short:not(.v112-ribbon) .v112-extra{grid-area:2 / 1}
 .v112-home .v112-short:not(.v112-ribbon) a{grid-area:2 / 2;position:relative;color:#785432;font:600 12px/16px var(--sans);min-height:16px;margin:0;padding:0}
 .v112-home .v112-short:not(.v112-ribbon) a::before{content:"";position:absolute;inset:-5px -3px -3px}
 .v112-home .v112-dock :focus-visible,.v112-home .v112-fallback :focus-visible{outline:2px solid #77532e;outline-offset:2px}
 .v112-home .v112-fallback .v112-choose{grid-column:1/-1;justify-self:stretch}
 .v112-home.cl-sheet-open .v112-dock,.v112-home:has(#main-nav.open) .v112-dock{visibility:hidden}
 .v112-home dialog.cl-sheet[open] #stay-search-form .cl-gold-value:empty{display:none}
 body.v112-home .v101-guarantees.cl-trust{font-size:11.5px;gap:2px 14px}
}
@media(max-width:359px){
 .v112-home .v112-choose{min-width:116px;padding-inline:8px;font-size:13px}
 .v112-home .v112-short:not(.v112-ribbon){font-size:12px}
}
/* The option-A layout comes from V112. Only the photo moves; booking stays interactive. */
@keyframes stars-facade-in {from {opacity:.55;filter:blur(1.25px)} to {opacity:1;filter:none}}
@keyframes stars-facade-zoom {from {transform:scale(1)} to {transform:scale(1.05)}}
@keyframes stars-content-in {from {opacity:.45} to {opacity:1}}
@keyframes stars-booking-in {from {opacity:.78} to {opacity:1}}
@media (prefers-reduced-motion:no-preference) {
 body.v112-home #home-hero .v111-picture {animation:stars-facade-in .8s ease-out 1 backwards}
 body.v112-home #home-hero .v111-picture img {animation:stars-facade-zoom 15s linear .8s 1 both}
 body.v112-home #home-hero .home-hero-title {animation:stars-content-in .44s ease-out .8s 1 backwards}
 body.v112-home #home-hero .cl-google {animation:stars-content-in .44s ease-out .95s 1 backwards}
 body.v112-home #home-hero .opening-booking,body.v112-home .v112-dock {animation:stars-booking-in .44s ease-out 1.1s 1 backwards}
 body.v112-home #home-hero .opening-booking:focus-within,body.v112-home .v112-dock:focus-within {animation:none}
}
@media (max-width:767.98px) {body.v112-home #home-hero .v111-picture img {transform-origin:50% 25%}}
@media (prefers-reduced-motion:reduce) {
 body.v112-home #home-hero :is(.v111-picture,.v111-picture img,.home-hero-title,.cl-google,.opening-booking),body.v112-home .v112-dock {animation:none!important;transition:none!important;opacity:1;transform:none;filter:none}
}
/* The same offer follows the active chooser. Keep the underlying ribbon's desktop footprint. */
body.v112-home.v113-offer-active #home-hero .v112-ribbon {visibility:hidden}
body.v112-home .cl-sheet .cl-in-sheet>.v112-ribbon {display:none!important}
.v112-home .v113-offer {display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;column-gap:8px}
.v113-offer>.v103-offer-title,.v113-offer>.v103-gifts {grid-column:1}
.v113-offer>details.v113-terms {grid-column:2;grid-row:1 / span 2;align-self:center;min-width:0;margin:0;padding:0;border:0;border-radius:0;background:none;box-shadow:none}
.v113-offer>.v113-terms[open] {grid-column:1/-1;grid-row:1}
.v113-offer:has(>.v113-terms[open])>:is(.v103-offer-title,.v103-gifts),.v113-offer>[hidden] {display:none!important}
.v113-offer>.v113-terms>summary {box-sizing:border-box;min-height:44px;display:flex;justify-content:flex-start;align-items:center;gap:.5em;margin:0;padding:2px 3px;border:0;cursor:pointer;font:600 12px/1.35 var(--sans,system-ui);color:#654626;text-decoration:underline;text-underline-offset:3px;list-style:none}
.v113-terms>summary::-webkit-details-marker {display:none}
.v113-terms>summary::after {content:"";display:inline-block;width:7px;height:7px;border:solid currentColor;border-width:0 1.3px 1.3px 0;transform:rotate(45deg) translateY(-2px)}
.v113-offer>.v113-terms[open]>summary::after {content:"";transform:rotate(225deg) translate(-1px,-1px)}
.v113-terms>summary:focus-visible {outline:2px solid #795732;outline-offset:2px}
.v113-terms-copy {color:#2b333f;text-align:start;max-height:min(32vh,18rem);max-height:min(32dvh,18rem);overflow:auto;overscroll-behavior:contain;padding-inline-end:5px}
.v113-terms-copy h4 {margin:.35em 0 .18em;font:650 14px/1.4 var(--sans,system-ui)}
.v113-terms-copy p {margin:0 0 .42em;font:450 13px/1.48 var(--sans,system-ui)}
@media(max-height:570px) and (max-width:767.98px){.v113-terms-copy{max-height:23vh}}
