/* Stars · one photographic sequence, with the existing desktop composition. */
.v101-compact,.v101-guarantees{display:none}
#home-hero .cl-google{gap:.32em;flex-wrap:wrap}
#home-hero .v101-google-link{display:inline-flex;align-items:center;gap:.6em;color:inherit;text-decoration:none;min-height:0}
#home-hero .v101-google-link:focus-visible{outline:2px solid #fff;outline-offset:3px}
.v101-distinction{white-space:nowrap}.v101-distinction bdi{font:inherit}
#home-hero .home-hero-media{isolation:isolate}
#home-hero .v101-frames,.v101-frame,.v101-frame img{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
#home-hero .v101-frames{z-index:2;overflow:hidden}
#home-hero .v101-frame{opacity:0;transition:opacity 1.25s ease-in-out}
#home-hero .v101-frame.v101-current{z-index:1;opacity:1}
.v101-frame img{display:block;object-fit:cover;transform-origin:var(--origin,center);animation:stars-glide 12s ease-out both}
.v101-paused .v101-frame img{animation-play-state:paused}
@keyframes stars-glide{from{transform:scale(1.018)}to{transform:scale(1.085) translateX(var(--pan,1%))}}

.guestbook .guestbook-wrap:has(.v101-guest-grid){max-width:1080px}
.v101-guest-grid{display:grid;grid-template-columns:minmax(155px,205px) minmax(0,740px);align-items:center;justify-content:center;gap:clamp(18px,4vw,56px);direction:ltr}
.v101-guest-grid>.guestbook-reading{width:100%;margin:0}.v101-award{text-align:center;color:#3b4146;min-width:0}
html[dir=rtl] .v101-guest-grid>*{direction:rtl}
.v101-award p{font:500 13px/1.55 var(--sans);margin:10px 0 0;text-wrap:balance}
.v101-award [data-award-slot]{min-height:92px;display:grid;align-content:center;justify-content:center}
.v101-award ul{list-style:none;margin:0;padding:0}.v101-award img{display:block;max-width:145px;height:auto;margin:auto}
@media(max-width:767.98px){
 .v101-wide{display:none!important}.v101-compact{display:inline}
 .header.header--home .header-inner{display:flex;align-items:center;gap:9px;min-height:58px;padding-block:5px}
 .header.header--home .brand{margin:0;margin-inline-end:auto;max-width:38%}
 .header.header--home .brand img{max-width:100%;object-fit:contain}
 .header.header--home .header-cta{display:inline-flex!important;align-items:center;justify-content:center;order:2;min-height:38px;min-width:78px;padding:8px 13px;border:1px solid #c49a6c;border-radius:4px;background:#c49a6c;color:#202833;font:650 13px/1.15 var(--sans);text-shadow:none}
 .header.header--home .menu-button{display:grid;place-items:center;order:3;width:44px;height:44px;margin:0}
 .header.header--home:not(.is-scrolled):not(.is-menu-open){background:transparent!important;box-shadow:none!important;border-color:transparent}
 .header.header--home.is-scrolled{background:#f8f6f2!important}
 .header.header--home>.header-inner>.language-selector{display:none}
 #main-nav .language-selector{display:block;align-self:flex-start;margin:8px 0 0;color:var(--ink,#2b333f)}
 #main-nav .language-panel{position:static;margin-block:4px;padding:4px 10px}
 .home-intro #home-hero{display:block;height:100vh;height:100svh;min-height:0;max-height:none;padding:0;overflow:hidden}
 #home-hero .home-hero-copy.wrap{position:absolute;inset-inline:0;bottom:calc(var(--cl-dock-space,74px) + clamp(18px,4svh,37px));width:auto;margin:0;padding:0 max(20px,env(safe-area-inset-right)) 0 max(20px,env(safe-area-inset-left));align-items:flex-start;gap:0;text-align:start}
 #home-hero .home-hero-title .eyebrow{margin:0 0 9px;font-size:clamp(10px,2.9vw,12px);line-height:1.45;color:#f6e2c4}
 #home-hero .home-hero-poem{margin:0;font-size:clamp(32px,8.9vw,36px);line-height:1.12;text-wrap:balance}
 #home-hero .home-hero-poem span,#home-hero .home-hero-poem em{display:block}
 #home-hero .cl-google{min-height:30px;margin-top:13px;gap:.27em;padding:4px 9px;font-size:clamp(10px,2.8vw,12px);line-height:1.5;max-width:100%;background:#1720298c}
 #home-hero .cl-google .cl-stars{font-size:10px;letter-spacing:.03em}
 #home-hero .v101-google-link{gap:.43em}
 .cl-home-ready #home-hero .home-hero-utilities.wrap{display:none}
 html body #home-hero .home-hero-shade,html[dir=rtl] body #home-hero .home-hero-shade{background:linear-gradient(0deg,rgba(12,18,24,.96) 0%,rgba(15,21,27,.81) 17%,rgba(18,23,29,.54) 33%,rgba(18,23,29,0) 61%),linear-gradient(180deg,rgba(13,20,26,.40),transparent 20%)}
 .v101-guarantees.cl-trust{display:flex;position:static;gap:1px 14px;margin:0;padding:13px 18px;background:#f8f6f2;color:#414851;text-shadow:none;border-bottom:1px solid #e6ddce;font-size:11.5px}
 .v101-guarantees.cl-trust li{display:inline-flex}.v101-guarantees i{color:#785431}.v101-guarantees a{min-height:30px}
 body.cl-home-ready.cl-docked .cl-dock{z-index:48;background:white;border-top:1px solid #ded4c7;box-shadow:0 -2px 14px #252c3512;gap:10px;padding:9px max(14px,env(safe-area-inset-right)) calc(9px + env(safe-area-inset-bottom)) max(14px,env(safe-area-inset-left));text-align:start}
 .cl-dock-people{display:none}.cl-dock-main{font-size:13px;line-height:1.3}.cl-dock-copy{flex:1;gap:3px}.cl-dock-note{color:#775332;line-height:1.32;text-wrap:pretty}.cl-dock-action{display:grid;place-items:center;background:#c49a6c;color:#252d37;min-height:44px}
 .cl-sheet .cl-trust,.cl-sheet .cl-ribbon{display:none}
 .cl-sheet .stay-search-link{padding-bottom:max(12px,env(safe-area-inset-bottom))}.cl-sheet[open]{animation:stars-rise .24s ease-out}
 @keyframes stars-rise{from{transform:translateY(30%);opacity:.55}to{transform:translateY(0);opacity:1}}
 .v101-guest-grid{grid-template-columns:minmax(0,1fr);gap:18px}.v101-award{justify-self:center}.v101-award [data-award-slot]{min-height:66px}.v101-award img{max-width:108px}.v101-award p{margin-top:6px}
 #home-hero .cl-film-toggle{width:44px;height:44px;top:calc(max(64px,env(safe-area-inset-top)) + 8px)}
}
@media(prefers-reduced-motion:reduce){.v101-frame img,.cl-sheet[open]{animation:none}.v101-frame{transition:none}}
@media(max-width:767.98px){
 #home-hero .home-hero-utilities.wrap{display:none}
 .header.header--home:not(.is-scrolled){background:transparent!important;box-shadow:none!important;border-color:transparent;color:white}
 .header.header--home:not(.is-scrolled) .brand-logo--white{opacity:1}.header.header--home:not(.is-scrolled) .brand-logo--color{opacity:0}
 .header.header--home:not(.is-scrolled) .menu-button{color:white}
 html[lang=fr] #home-hero .home-hero-poem{font-size:clamp(32px,8.2vw,36px);letter-spacing:-.043em}
 html[lang=fr] #home-hero .home-hero-copy.wrap{padding-inline:max(16px,env(safe-area-inset-left)) max(16px,env(safe-area-inset-right))}
 #home-hero .home-hero-title,#home-hero .home-hero-poem>span,#home-hero .home-hero-poem>em{max-width:100%;width:auto}
 body:not(.cl-home-ready)>.mobile-reserve{display:flex!important;position:fixed;inset:auto 0 0;z-index:48;background:white;align-items:center;justify-content:space-between;padding:8px 16px calc(8px + env(safe-area-inset-bottom));color:#2b333f}
 body:not(.cl-home-ready)>.mobile-reserve a{display:inline-flex;align-items:center;justify-content:center;min-height:44px;background:#c49a6c;color:#2b333f;border:0}
}

@media(min-width:375px) and (max-width:430px){
 html[lang=fr] #home-hero .home-hero-copy.wrap{padding-inline:max(12px,env(safe-area-inset-left)) max(12px,env(safe-area-inset-right))}
 html[lang=fr] #home-hero .home-hero-poem{font-size:32px;letter-spacing:-.047em}
 html[lang=fr] #home-hero .home-hero-poem>span,html[lang=fr] #home-hero .home-hero-poem>em{white-space:nowrap}
}
@media(max-width:767.98px){
 .header.header--home:not(.is-scrolled) #main-nav.open{background:rgba(26,33,41,.80);color:white;backdrop-filter:blur(8px)}
 .header.header--home:not(.is-scrolled) #main-nav.open>a,
 .header.header--home:not(.is-scrolled) #main-nav.open .language-selector summary{color:white}
 .header.header--home.is-scrolled #main-nav.open{background:#f8f6f2}
 .header.header--home:not(.is-scrolled) #main-nav .language-panel a{color:#29313b}
}
/* The official seal stays physically to the left of the reviews, also in RTL. */
@media(max-width:767.98px){
 .v101-guest-grid{grid-template-columns:clamp(69px,21vw,108px) minmax(0,1fr);gap:clamp(8px,2.5vw,16px)}
 .v101-award{align-self:start;justify-self:stretch;padding-top:17px}
 .v101-award p{font-size:11px;line-height:1.48;overflow-wrap:break-word}
 .v101-award [data-award-slot]{display:block;min-height:72px}
 .v101-award [data-award-slot] :is(div,ul,li,a,img,iframe){max-width:100%!important;box-sizing:border-box}
 .guestbook .v101-guest-grid .guest-quote{padding:20px clamp(12px,3.4vw,20px);min-height:300px}
 .guestbook .v101-guest-grid blockquote{font-size:clamp(18px,5.3vw,23px);line-height:1.42}
 .guestbook .v101-guest-grid figcaption{grid-template-columns:minmax(0,1fr)}
 .guestbook .v101-guest-grid .guest-quote-source{grid-column:1;grid-row:auto}
}

/* V102 · fixed, readable desktop navigation; a directly editable mobile search. */
#home-hero #opening-title bdi{font:inherit;color:inherit}
#home-hero .v102-slides-tools[hidden]{display:none!important}
#home-hero .v102-slides-tools{position:absolute;z-index:6;inset-inline-end:clamp(18px,3.5vw,60px);top:clamp(105px,14vh,142px);display:flex;align-items:center;gap:0;padding:0 3px;border:1px solid #ffffff59;border-radius:24px;background:rgba(24,33,43,.64);color:white;backdrop-filter:blur(8px);line-height:1}
.v102-slides-tools button{display:grid;place-items:center;width:44px;height:40px;background:none;border:0;border-radius:22px;color:inherit;cursor:pointer}
.v102-slides-tools button:focus-visible{outline:2px solid white;outline-offset:-3px}
.v102-slides-tools button:hover{background:#ffffff20}.v102-slides-tools svg{width:16px;height:16px}
.v102-slide-count{font:500 10px/1 var(--sans,sans-serif);font-variant-numeric:tabular-nums;letter-spacing:.09em;color:#e2dacf}
.v102-slide-count b{color:white;font-weight:650}
html[dir=rtl] #v102-next svg,html[dir=rtl] .v102-dock-submit svg{transform:scaleX(-1)}
@keyframes stars-glide{from{transform:scale(1.012)}to{transform:scale(1.054) translateX(var(--pan,.65%))}}
@media(min-width:768px){
 html body .header.header--home{display:block!important;position:fixed!important;inset:0 0 auto!important;transform:none!important;visibility:visible!important;opacity:1!important;height:auto!important;z-index:52;color:#fff!important;border-bottom:1px solid transparent!important}
 html body .header.header--home.is-scrolled{background:#2b333f!important;border-bottom-color:#ad8a60!important;box-shadow:0 1px 8px #18222c19!important}
 .header.header--home .header-inner{width:100%!important;max-width:1600px;margin:0 auto;padding:0 clamp(20px,3.2vw,55px);min-height:74px;display:grid!important;grid-template-columns:minmax(116px,.65fr) auto auto auto;align-items:center;gap:clamp(12px,1.7vw,30px)}
 .header.header--home .brand{display:block;position:relative;inset:auto;justify-self:start;width:clamp(118px,12vw,164px);height:60px;max-width:none;margin:0;order:0}
 .header.header--home .brand img{position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:contain;object-position:left center;filter:none}
 .header.header--home .brand-logo--color{opacity:0!important}.header.header--home .brand-logo--white{opacity:1!important}
 html body .header.header--home #main-nav{position:static!important;inset:auto!important;display:flex!important;align-items:center;justify-content:flex-end;flex-direction:row!important;flex-wrap:nowrap;align-self:center;gap:clamp(13px,1.7vw,29px);width:auto!important;min-height:0!important;height:auto!important;max-height:none!important;max-width:none!important;overflow:visible!important;opacity:1!important;visibility:visible!important;pointer-events:auto!important;transform:none!important;clip-path:none!important;background:transparent!important;border:0!important;box-shadow:none!important;margin:0!important;padding:0!important;order:1}
 html body .header.header--home #main-nav>a:not(.nav-mobile-contact){display:inline-flex!important;align-items:center;padding:9px 0!important;min-height:44px;min-width:0;white-space:nowrap;border:0!important;background:transparent!important;color:#fff!important;text-shadow:none;line-height:1.25;font-size:clamp(13px,1.06vw,16px);letter-spacing:.005em;text-decoration:none}
 html body .header.header--home #main-nav>a:hover,html body .header.header--home #main-nav>a:focus-visible{color:#f6dcb9!important;text-decoration:underline;text-underline-offset:5px}
 html body .header.header--home #main-nav>.nav-mobile-contact,.header.header--home #menu-toggle{display:none!important}
 .header.header--home>.header-inner>.language-selector{display:block!important;position:relative;order:2;color:white;margin:0;justify-self:end}
 .header.header--home>.header-inner>.language-selector>summary{color:white!important;border-color:#ffffff4a}
 .header.header--home .header-cta{display:inline-flex!important;align-items:center;justify-content:center;min-height:42px;min-width:96px;padding:10px 17px;border:1px solid #c49a6c!important;border-radius:3px;background:#c49a6c!important;color:#242b35!important;font-weight:650;letter-spacing:.015em;order:3}
 .header.header--home :is(a,summary):focus-visible{outline:2px solid #d8b48b;outline-offset:3px}
}
@media(min-width:768px) and (max-width:1099px){
 .header.header--home .header-inner{grid-template-columns:1fr auto auto;grid-template-rows:54px 40px;gap:0 18px;min-height:94px;padding-inline:22px}
 .header.header--home .brand{height:46px;width:117px;grid-area:1 / 1}
 .header.header--home>.header-inner>.language-selector{grid-area:1 / 2}
 .header.header--home .header-cta{grid-area:1 / 3;min-height:36px;min-width:87px}
 html body .header.header--home #main-nav{grid-area:2 / 1 / 3 / -1;justify-content:space-between;width:100%!important;gap:9px;border-top:1px solid #ffffff20!important}
 html body .header.header--home #main-nav>a:not(.nav-mobile-contact){min-height:39px;font-size:13px}
 #home-hero .v102-slides-tools{top:108px}
}
@media(min-width:768px) and (max-width:800px){
 .cl-home-ready #home-hero .home-hero-utilities.wrap{display:block!important}
 .cl-home-ready .cl-dock{display:none!important}
}
@media(max-width:767.98px){
 html body #home-hero .home-hero-shade,html[dir=rtl] body #home-hero .home-hero-shade{background:linear-gradient(0deg,#111c26 1%,rgba(17,25,34,.88) 23%,rgba(17,25,34,.67) 38%,rgba(18,25,33,.06) 66%,transparent 77%),linear-gradient(180deg,#11192483,transparent 21%)}
 #home-hero .v102-slides-tools{inset-inline-end:16px;top:calc(max(62px,env(safe-area-inset-top)) + 8px);gap:0;padding:0 1px}
 .v102-slides-tools button{width:42px;height:44px}
 #home-hero .home-hero-copy.wrap,html[lang] #home-hero .home-hero-copy.wrap{position:absolute;top:auto;bottom:calc(var(--cl-dock-space,158px) + clamp(15px,3.1svh,28px));padding-inline:max(20px,env(safe-area-inset-left)) max(20px,env(safe-area-inset-right));width:auto;max-width:100%;margin:0}
 #home-hero .home-hero-title .eyebrow{margin-block-end:11px;letter-spacing:.12em;text-transform:none;font-size:12px;font-weight:650;text-shadow:0 1px 4px #2228}
 html[lang=fr] #home-hero .home-hero-poem,#home-hero .home-hero-poem{font-size:clamp(29px,8.3vw,38px);line-height:1.14;letter-spacing:-.04em}
 html[lang=fr] #home-hero .home-hero-poem>span,html[lang=fr] #home-hero .home-hero-poem>em{white-space:normal}
 html[dir=rtl] #home-hero .home-hero-poem{letter-spacing:0;line-height:1.4}
 #home-hero .cl-google{margin-block-start:13px;background:#1c273287;border-color:#ffffff62}
 body.cl-home-ready.cl-docked .cl-dock.v102-booking-bar{display:grid!important;grid-template-columns:minmax(0,1fr);align-items:stretch;gap:7px;cursor:default;box-sizing:border-box;padding:11px max(16px,env(safe-area-inset-right)) calc(10px + env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left));border-top:1px solid #ded4c6;background:#fffdf9;color:#29323d}
 .v102-dock-fields{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:7px}
 .v102-booking-bar button{box-sizing:border-box;font-family:var(--sans,sans-serif);cursor:pointer;margin:0;text-transform:none}
 .v102-booking-bar button:focus-visible{outline:2px solid #6d502f;outline-offset:2px}
 .v102-dock-field{border:1px solid #cfc5b7;border-radius:6px;background:white;color:#2b333f;min-height:53px;padding:7px 32px 7px 12px;padding-inline:12px 29px;display:grid;align-content:center;justify-items:start;gap:3px;position:relative;text-align:start}
 .v102-field-label{font:550 11px/1.3 var(--sans,sans-serif);color:#525960;display:flex;align-items:center;gap:6px}
 .v102-field-label .cl-icon{width:14px;height:14px;stroke-width:1.65;color:#806241}
 .v102-dock-field>.cl-icon{position:absolute;inset-inline-end:9px;top:50%;transform:translateY(-50%);height:13px;width:13px;color:#686159}
 .v102-field-value,.v102-small-summary{font:650 14px/1.3 var(--sans,sans-serif);font-variant-numeric:tabular-nums;color:#28333d}
 .v102-small-summary{display:none}
 .v102-dock-submit{width:100%;border:1px solid #b9905f;border-radius:5px;background:#c49a6c;color:#202832;min-height:46px;display:flex;justify-content:center;align-items:center;gap:14px;font-size:16px;font-weight:680;line-height:1.25;padding:8px 13px;letter-spacing:.005em}
 .v102-dock-submit .cl-icon{width:19px;height:19px;stroke-width:1.6}
 .v102-dock-perk{font:540 11px/1.35 var(--sans,sans-serif);color:#715337;display:flex;justify-content:center;align-items:baseline;gap:6px;text-align:center;min-width:0}
 .v102-dock-perk>span:first-child{color:#906838}
 body.cl-home-ready.cl-docked .cl-dock.v102-compact-bar{grid-template-columns:minmax(0,1fr) auto;gap:4px 9px;padding-block-start:7px;padding-block-end:calc(6px + env(safe-area-inset-bottom))}
 .v102-compact-bar .v102-dock-fields{display:block}.v102-compact-bar #v102-guests{display:none}
 .v102-compact-bar #v102-dates{border:0;background:none;padding:2px 0;min-height:44px;width:100%;gap:3px}
 .v102-compact-bar .v102-small-summary{display:block;font-size:12px}.v102-compact-bar #v102-dates>.cl-icon,.v102-compact-bar #v102-dates>.v102-field-value{display:none}
 .v102-compact-bar .v102-dock-submit{font-size:13px;gap:6px;min-height:44px;padding-inline:10px}
 .v102-compact-bar .v102-dock-perk{grid-column:1/-1;justify-content:flex-start;text-align:start;font-size:10.5px}
 html:not([dir=rtl]) .v102-dock-submit .cl-icon{transform:none}
 @media(max-height:580px){#home-hero .v102-slides-tools{top:60px}#home-hero .home-hero-copy.wrap,html[lang] #home-hero .home-hero-copy.wrap{bottom:calc(var(--cl-dock-space,150px) + 12px)} #home-hero .cl-google{margin-block-start:6px}#home-hero .home-hero-poem,html[lang=fr] #home-hero .home-hero-poem{font-size:27px}}
}
@media(prefers-reduced-motion:reduce){.v101-frame img{animation:none!important}.v101-frame{transition:none!important}}
#home-hero #opening-title{text-transform:none}
@media(min-width:370px) and (max-width:767.98px){
 html[lang=fr] #home-hero .home-hero-copy.wrap{padding-inline:max(17px,env(safe-area-inset-left)) max(17px,env(safe-area-inset-right))}
 html[lang=fr] #home-hero .home-hero-poem{font-size:clamp(28px,7.85vw,33px);letter-spacing:-.045em}
 html[lang=fr] #home-hero .home-hero-poem>span,html[lang=fr] #home-hero .home-hero-poem>em{white-space:nowrap}
}
/* The plated dish stays above the headline on tall screens. Keep the original
   green banquette and the entire tagine in view instead of enlarging the bread. */
@media(max-width:767.98px){
 #home-hero .v101-frame[data-photo=pensee]{background:#1c2630}
 #home-hero .v101-frame[data-photo=pensee] img{height:68%;object-position:45% 65%;transform-origin:50% 55%}
 #home-hero .v101-frame[data-photo=pensee]::after{content:"";position:absolute;inset:0 0 auto;height:68%;background:linear-gradient(180deg,transparent 70%,rgba(28,38,48,.14) 82%,#1c2630);pointer-events:none}
}

@media(min-width:768px){
 #home-hero .home-hero-copy.wrap{padding-block-start:clamp(24px,calc(15svh - 60px),90px)}
}
html[dir=rtl] #home-hero #opening-title{letter-spacing:normal}

/* At the top of a home page, only the navigation controls paint over the film.
   The fly-out and the golden booking button keep their own backgrounds. */
html body .header.header--home:not(.is-scrolled){
 background:transparent!important;border-bottom-color:transparent!important;
 box-shadow:none!important;-webkit-backdrop-filter:none;backdrop-filter:none
}
@media(min-width:768px){
 html body .header.header--home:not(.is-scrolled) #main-nav>a:not(.nav-mobile-contact),
 .header.header--home:not(.is-scrolled)>.header-inner>.language-selector>summary{
  text-shadow:0 1px 3px rgba(20,25,32,.85)
 }
}
