.promo{height:46px;background:#053654;color:#fff;display:flex;align-items:center;justify-content:center;gap:18px;padding:0 24px;font-size:13px}.promo span{text-transform:uppercase;letter-spacing:.12em;font-size:10px;opacity:.72}.promo b{font-weight:500}.promo a{background:#fff;color:#053654;border-radius:3px;padding:7px 14px;font-weight:700}.nav{position:relative;height:86px;color:var(--ink);background:#fff;border-bottom:1px solid #e7edef}.nav nav{gap:28px}.nav nav a:after{background:var(--ocean)}.header-actions{display:flex;align-items:center;gap:22px;font-size:13px}.header-actions>.book-link{border-color:var(--ocean);background:var(--ocean);color:#fff}.header-actions>.book-link:hover{background:#053654;color:#fff}.menu-lines{width:28px;height:18px;border-top:2px solid currentColor;border-bottom:2px solid currentColor;position:relative}.menu-lines:after{content:"";position:absolute;left:0;right:0;top:7px;border-top:2px solid currentColor}.hero{height:calc(100svh - 132px);min-height:670px}.hero-wash{background:linear-gradient(90deg,rgba(0,31,46,.48),rgba(0,31,46,.05) 68%),linear-gradient(0deg,rgba(0,31,46,.55),transparent 50%)}.hero-copy{top:auto;bottom:165px;transform:none;left:clamp(28px,5.5vw,88px)}.hero h1{font-size:clamp(48px,6vw,88px);letter-spacing:-.04em;text-shadow:0 2px 20px rgba(0,25,35,.22)}.hero h1 sup{font-family:var(--sans);font-size:13px;letter-spacing:.15em;vertical-align:top;margin-left:8px;color:#fff}.hero-copy>p:last-child{font-size:17px;margin-top:16px}.quick-book{left:clamp(28px,5.5vw,88px);right:clamp(28px,5.5vw,88px);bottom:28px;box-shadow:0 10px 35px rgba(0,27,39,.24)}.quick-book button{background:#8fa842;color:#fff;font-weight:700}.quick-book button:hover{background:#748d2e}.hotel-overview{padding:48px clamp(24px,7vw,110px);display:grid;grid-template-columns:1fr auto;gap:70px;align-items:end;background:#fff;border-bottom:1px solid var(--line)}.hotel-overview>div:first-child{max-width:780px}.hotel-overview .kicker{margin-bottom:10px}.hotel-overview h2{font-family:var(--serif);font-size:clamp(34px,4vw,56px);font-weight:400;line-height:1;margin:0}.hotel-overview p{font-size:17px;color:var(--muted);margin:18px 0 0}.overview-action{min-width:250px}.overview-action span{display:block;font-size:12px;color:var(--muted);margin-bottom:10px}.overview-action a{display:block;background:var(--ocean);color:#fff;padding:16px 20px;text-align:center;font-size:13px;font-weight:700}.statement{padding-top:110px;padding-bottom:110px}.statement h2{font-size:clamp(42px,5.5vw,76px)}
@media(max-width:920px){.promo{justify-content:space-between}.promo span{display:none}.nav{height:76px}.header-actions>a:first-child,.menu-lines{display:none}.hero{height:calc(100svh - 122px);min-height:740px}.hero-copy{bottom:250px}.quick-book{grid-template-columns:1fr 1fr}.hotel-overview{grid-template-columns:1fr;gap:30px}.overview-action{max-width:340px}}
@media(max-width:600px){.promo{height:42px;padding:0 14px;font-size:11px}.promo b{max-width:190px}.promo a{padding:6px 10px}.nav{height:70px}.header-actions{gap:0}.hero{height:calc(100svh - 112px);min-height:760px}.hero-copy{bottom:270px}.hero h1{font-size:48px}.hero h1 sup{font-size:9px}.quick-book{left:14px;right:14px;bottom:14px}.hotel-overview{padding:38px 24px}.hotel-overview h2{font-size:38px}}

/* Les médias restent visibles même avant le déclenchement de l'animation. */
.image-reveal{clip-path:none;opacity:.76;transform:translateY(18px);transition:opacity .9s ease,transform 1.1s cubic-bezier(.2,.7,.2,1)}
.image-reveal.visible{clip-path:none;opacity:1;transform:none}
.aerial-photo{height:min(58vw,690px)}
.aerial-photo img{object-position:center}
.pool-photo img{object-position:center}
.section-lead{max-width:410px;margin:22px 0 0;color:var(--muted);font-size:16px}
@media(max-width:920px){.aerial-photo{height:min(82vw,650px)}}

.room-gallery{grid-template-columns:1fr 1fr;grid-template-rows:390px}
.room-gallery .room-shot{grid-column:auto;grid-row:auto}
@media(max-width:600px){.room-gallery{grid-template-columns:1fr;grid-template-rows:280px 240px}}
