:root{--aub:#2d2133;--purple:#705b7a;--cream:#f3ecdf;--paper:#faf7f0;--ink:#20282c;--saffron:#dda63b;--pistachio:#a8ad73;--line:rgba(32,40,44,.18)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}img{display:block;width:100%;height:100%;object-fit:cover}.is-hidden{display:none!important}.reservationRequest.formHidden{grid-template-columns:1fr;max-width:620px;margin:0 auto;text-align:center}.reservationRequest.formHidden .requestIntro>p:not(.kicker){margin-left:auto;margin-right:auto}.reservationRequest.formHidden .contactDirect{align-items:center}
.header{height:90px;padding:0 5vw;display:flex;align-items:center;justify-content:space-between;gap:3rem;background:var(--cream);position:relative;z-index:10}.logo{font:1.45rem/1 Georgia,serif;letter-spacing:.24em;display:flex;flex-direction:column;align-items:flex-start;gap:.35rem}.logo small{font:600 .48rem/1 Arial,sans-serif;letter-spacing:.42em}.logo-img{display:block;height:54px;width:147px;object-fit:contain;flex-shrink:0}.header nav{display:flex;gap:2.3rem;font-size:.68rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.header nav a{position:relative}.header nav a:after{content:"";position:absolute;left:0;right:100%;bottom:-7px;height:1px;background:var(--aub);transition:.3s}.header nav a:hover:after{right:0}
.reserve{display:inline-flex;justify-content:space-between;align-items:center;gap:2rem;background:var(--saffron);color:var(--aub);padding:1.1rem 1.35rem;font-size:.7rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase;transition:.25s}.reserve:hover{background:#efbd58;transform:translateY(-2px)}.reserve.mini{padding:.9rem 1.05rem;min-width:135px}
.hero{height:calc(100vh - 90px);min-height:690px;position:relative;overflow:hidden;color:white}.hero>img{position:absolute;inset:0}.heroShade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(21,13,25,.88) 0%,rgba(21,13,25,.55) 45%,rgba(21,13,25,.08) 75%),linear-gradient(0deg,rgba(21,13,25,.6),transparent 40%)}.heroContent{position:absolute;z-index:2;left:8vw;top:50%;transform:translateY(-48%);max-width:820px}.kicker{font-size:.66rem;font-weight:900;letter-spacing:.25em;color:#e8c169;margin:0 0 1.7rem}.kicker.dark{color:var(--purple)}h1,h2{font-family:Georgia,"Times New Roman",serif;font-weight:400;margin:0;letter-spacing:-.045em}h1{font-size:clamp(4rem,7.2vw,7.7rem);line-height:.9}h1 em,h2 em{font-weight:400;color:#dfb9df}.heroContent>p:not(.kicker){max-width:570px;font-family:Georgia,serif;font-size:1.25rem;line-height:1.6;margin:2rem 0}.heroActions{display:flex;align-items:center;gap:2rem}.ghost{font-size:.7rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;border-bottom:1px solid white;padding:.7rem 0}.heroAside{position:absolute;z-index:2;right:4vw;bottom:4rem;display:flex;flex-direction:column;text-align:right;font:italic 1rem/1.6 Georgia,serif}.scroll{position:absolute;z-index:2;left:3vw;bottom:4rem;writing-mode:vertical-rl;font-size:.58rem;font-weight:800;letter-spacing:.2em;text-transform:uppercase}.scroll i{font-style:normal;font-size:1rem;margin-top:1rem}
.manifesto{padding:9rem 8vw;display:grid;grid-template-columns:.85fr 1.15fr;gap:10vw;background:var(--paper)}.manifesto h2,.cuisineCopy h2,.servicesIntro h2,.visitInfo h2{font-size:clamp(3.5rem,5.5vw,6.5rem);line-height:.94}.manifestoCopy{padding-top:1rem;max-width:650px}.manifestoCopy .big{font:1.75rem/1.45 Georgia,serif;color:var(--aub);margin:0 0 2rem}.manifestoCopy>p:not(.big){line-height:1.8;max-width:560px}.meaning{margin-top:3.5rem;border-top:1px solid var(--line);padding-top:1.5rem;display:grid;grid-template-columns:150px 1fr;gap:2rem}.meaning>span{font:1.2rem Georgia,serif;letter-spacing:.2em}.meaning p{margin:0;line-height:1.5}
.cuisine{display:grid;grid-template-columns:1.08fr .92fr;min-height:850px;background:var(--aub);color:white}.collage{position:relative;overflow:hidden}.collageMain{position:absolute;inset:0}.collageFloat{position:absolute;width:38%;height:44%;right:4%;bottom:5%;border:12px solid var(--aub);box-shadow:0 18px 40px rgba(0,0,0,.35)}.roundel{position:absolute;top:7%;right:6%;width:110px;height:110px;border-radius:50%;background:var(--saffron);color:var(--aub);display:grid;place-items:center;text-align:center;padding:1rem;font-size:.55rem;font-weight:900;letter-spacing:.13em;transform:rotate(9deg)}.cuisineCopy{padding:9rem 8vw;align-self:center}.cuisineCopy h2{color:white}.cuisineCopy h2 em{color:#e1b9e0}.cuisineCopy>p:not(.kicker){font:1.06rem/1.85 Georgia,serif;max-width:520px;color:#e4dce5}.lineLink{display:flex;justify-content:space-between;max-width:360px;border-bottom:1px solid rgba(255,255,255,.6);padding:.8rem 0;margin-top:2.2rem;font-size:.68rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase}
.recognition{padding:3.4rem 7vw;background:var(--saffron);text-align:center;color:var(--aub)}.recognition>.kicker{font-size:.62rem;font-weight:900;letter-spacing:.24em;margin-bottom:2rem;color:var(--aub)}.badgeRow{display:flex;justify-content:center;align-items:center;gap:3.6rem;flex-wrap:wrap}.badgeRow img{height:120px;width:auto;object-fit:contain;transition:.25s}.badgeRow .ovalBadge{height:150px}.badgeRow a:hover img{transform:translateY(-3px)}
.experience{height:780px;position:relative;overflow:hidden}.experience>img{position:absolute;inset:0}.experience:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 30%,rgba(25,14,29,.3))}.experienceCard{position:absolute;z-index:2;right:7vw;top:50%;transform:translateY(-50%);width:min(500px,42vw);padding:4.5rem;background:rgba(250,247,240,.95)}.experienceCard h2{font-size:clamp(3rem,4.5vw,5rem);line-height:.96;color:var(--aub)}.experienceCard>p:not(.kicker){font:1.05rem/1.7 Georgia,serif;margin:2rem 0}.darkButton{background:var(--aub);color:white}
.services{padding:9rem 6vw;background:var(--paper)}.servicesIntro{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:5rem}.servicesIntro h2{max-width:800px}.servicesIntro h2 em{color:var(--purple)}.serviceGrid{display:grid;grid-template-columns:repeat(3,1fr);gap:2.3rem}.serviceGrid article:nth-child(2){margin-top:5rem}.serviceImage{height:430px;position:relative;overflow:hidden}.serviceImage img{transition:transform .6s}.serviceGrid article:hover img{transform:scale(1.035)}.serviceImage b{position:absolute;left:1rem;bottom:1rem;background:var(--saffron);width:48px;height:48px;border-radius:50%;display:grid;place-items:center;font:1rem Georgia,serif}.serviceGrid h3{font:2.2rem Georgia,serif;margin:1.7rem 0 .8rem}.serviceGrid p{line-height:1.65;min-height:80px}.serviceGrid a{display:flex;justify-content:space-between;border-bottom:1px solid var(--ink);padding:.8rem 0;font-size:.68rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase}
.quote{padding:9rem 12vw;text-align:center;background:var(--pistachio);color:var(--aub)}.quote>span{font:7rem/1 Georgia,serif}.quote blockquote{max-width:1050px;margin:0 auto 2rem;font:italic clamp(2.4rem,4.5vw,5rem)/1.15 Georgia,serif}.quote p{font-size:.66rem;font-weight:900;letter-spacing:.2em}
.visit{display:grid;grid-template-columns:.85fr 1.15fr;min-height:820px;background:var(--aub);color:white}.visitImage{min-height:650px}.visitInfo{padding:8rem 8vw}.visitInfo h2{color:white}.details{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem;margin:3.5rem 0}.details>div{border-top:1px solid rgba(255,255,255,.35);padding-top:1.2rem}.details h3{font-size:.62rem;letter-spacing:.18em;text-transform:uppercase;color:#e8c169}.details p{font:1rem/1.7 Georgia,serif;color:#e7e0e7}.details a{text-decoration:underline;text-underline-offset:3px}.large{min-width:300px}
footer{padding:3.5rem 5vw;display:grid;grid-template-columns:1fr auto 1fr auto;align-items:center;gap:3rem;background:var(--cream)}footer>div{display:flex;flex-wrap:wrap;gap:1.4rem;font-size:.68rem;font-weight:800;text-transform:uppercase}footer p{font:italic .9rem/1.5 Georgia,serif}.footerEnd{display:flex;align-items:center;gap:.9rem;flex-wrap:wrap;justify-content:flex-end}.footerEnd>span{font-size:.6rem}.gdprBadge{display:inline-flex;align-items:center;gap:.4rem;padding:.4rem .7rem;border:1px solid var(--line);border-radius:20px;font-size:.58rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--purple);transition:.25s}.gdprBadge:hover{border-color:var(--aub);color:var(--aub)}.mobileReserve{display:none}
@media(max-width:900px){.header{height:72px;padding:0 5vw}.logo-img{height:40px;width:109px}.header nav,.header .mini{display:none}.hero{height:auto;min-height:760px}.heroContent{left:7vw;right:7vw;top:46%}h1{font-size:clamp(3.5rem,15vw,6rem)}.heroActions{align-items:flex-start;flex-direction:column;gap:1rem}.heroAside,.scroll{display:none}.manifesto,.cuisine,.visit{grid-template-columns:1fr}.manifesto{padding:6rem 7vw;gap:3rem}.manifestoCopy .big{font-size:1.45rem}.cuisine{min-height:0}.collage{height:670px}.cuisineCopy{padding:6rem 7vw}.recognition{text-align:center}.badgeRow{gap:2.2rem}.badgeRow img{height:90px}.badgeRow .ovalBadge{height:112px}.experience{height:760px}.experienceCard{left:6vw;right:6vw;bottom:4vw;top:auto;transform:none;width:auto;padding:2.5rem}.services{padding:6rem 6vw}.servicesIntro{display:block}.servicesIntro .kicker{margin-bottom:1.5rem}.serviceGrid{grid-template-columns:1fr}.serviceGrid article:nth-child(2){margin-top:0}.serviceImage{height:520px}.serviceGrid p{min-height:0}.quote{padding:7rem 7vw}.visitInfo{padding:6rem 7vw}.details{grid-template-columns:1fr}.visitImage{height:600px}footer{grid-template-columns:1fr;align-items:start;padding-bottom:7rem}.mobileReserve{position:fixed;z-index:30;left:4vw;right:4vw;bottom:14px;padding:1.1rem 1.3rem;background:var(--saffron);color:var(--aub);display:flex;justify-content:space-between;font-size:.72rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase;box-shadow:0 12px 35px rgba(0,0,0,.35)}}
@media(max-width:560px){.hero{min-height:720px}.heroShade{background:linear-gradient(90deg,rgba(21,13,25,.9),rgba(21,13,25,.38)),linear-gradient(0deg,rgba(21,13,25,.65),transparent)}.heroContent>p:not(.kicker){font-size:1.05rem}.manifesto h2,.cuisineCopy h2,.servicesIntro h2,.visitInfo h2{font-size:3.35rem}.meaning{grid-template-columns:1fr}.collage{height:560px}.collageFloat{width:48%;height:39%}.experienceCard{padding:2rem}.serviceImage{height:420px}}
.trustBar{display:grid;grid-template-columns:repeat(5,1fr);background:var(--cream);border-bottom:1px solid var(--line)}.trustBar a{min-height:150px;padding:2.2rem 2.5vw;display:flex;flex-direction:column;justify-content:center;border-right:1px solid var(--line);transition:background .25s,color .25s}.trustBar a:last-child{border-right:0}.trustBar a:hover{background:var(--aub);color:white}.trustName{font-size:.58rem;font-weight:900;letter-spacing:.18em;text-transform:uppercase;color:var(--purple)}.trustBar strong{font:2rem/1.2 Georgia,serif;margin:.55rem 0}.trustBar strong i{font:normal .72rem/1 Arial,sans-serif;letter-spacing:.12em;color:var(--saffron);vertical-align:middle}.trustBar small{font-size:.66rem;letter-spacing:.05em;opacity:.7}.trustLogo{height:26px;width:auto;object-fit:contain;margin-bottom:.7rem}.trustLogo.ovalTrustLogo{height:34px}
@media(max-width:900px){.trustBar{grid-template-columns:repeat(2,1fr)}.trustBar a:nth-child(2){border-right:0}.trustBar a:nth-child(-n+4){border-bottom:1px solid var(--line)}}

/* Menu page */
.menuPage{background:var(--paper)}.menuHeader{background:var(--paper)}.menuHero{height:calc(100vh - 90px);min-height:690px;position:relative;color:white;overflow:hidden}.menuHero>img,.menuHeroShade{position:absolute;inset:0}.menuHeroShade{background:linear-gradient(90deg,rgba(24,14,28,.9),rgba(24,14,28,.56) 48%,rgba(24,14,28,.05))}.menuHeroCopy{position:absolute;z-index:2;left:8vw;top:50%;transform:translateY(-50%);max-width:780px}.menuHeroCopy h1{font-size:clamp(4.5rem,8vw,8.5rem)}.menuHeroCopy>p:not(.kicker){font:1.2rem/1.65 Georgia,serif;max-width:560px;margin:2rem 0}.menuScroll{position:absolute;z-index:2;right:5vw;bottom:3.5rem;font-size:.62rem;font-weight:900;letter-spacing:.16em;text-transform:uppercase}.menuScroll span{margin-left:1rem}
.formules{padding:9rem 7vw;background:var(--cream)}.menuIntro{text-align:center;margin-bottom:4.5rem}.menuIntro h2,.carte h2,.menuDark h2,.dessertMenu h2,.lunch h2,.menuCta h2{font-size:clamp(3.5rem,6vw,7rem);line-height:.94}.formulaGrid{display:grid;grid-template-columns:repeat(3,1fr);max-width:1200px;margin:auto}.formulaGrid article{min-height:450px;padding:2.8rem;border:1px solid var(--line);display:flex;flex-direction:column;text-align:center;align-items:center}.formulaGrid article+article{border-left:0}.formulaGrid article>span{font-size:.58rem;font-weight:900;letter-spacing:.2em;color:var(--purple)}.formulaGrid h3{font:2rem Georgia,serif;margin:2rem 0}.formulaGrid p{font:1.1rem/1.7 Georgia,serif}.formulaGrid p i{font-size:.8rem}.formulaGrid strong{font:3.4rem Georgia,serif;margin-top:auto}.formulaGrid small{font-size:.62rem;letter-spacing:.12em;text-transform:uppercase}.formulaGrid .featured{background:var(--aub);color:white;transform:translateY(-1.4rem);box-shadow:0 20px 45px rgba(45,33,51,.2)}.formulaGrid .featured>span{color:var(--saffron)}
.carte{display:grid;grid-template-columns:.8fr 1.2fr;min-height:850px}.carteSide{padding:8rem 6vw;background:var(--pistachio);position:relative;overflow:hidden}.carteSide>p:not(.kicker){font:1.05rem/1.7 Georgia,serif;max-width:360px}.carteSide img{height:330px;margin-top:4rem;transform:rotate(-3deg);box-shadow:0 20px 40px rgba(0,0,0,.2)}.menuList{padding:6rem 7vw;background:var(--paper);align-self:center}.menuRow{display:grid;grid-template-columns:1fr auto;gap:2rem;border-bottom:1px solid var(--line);padding:1.5rem 0}.menuRow h3{font:1.35rem/1.3 Georgia,serif;margin:0}.menuRow p{font-size:.76rem;color:#687074;margin:.55rem 0 0;letter-spacing:.03em}.menuRow>span{font:1.35rem Georgia,serif;white-space:nowrap}
.menuDark{display:grid;grid-template-columns:1fr 1fr;background:var(--aub);color:white;min-height:820px}.menuDarkImage{position:relative}.menuDarkImage>span{position:absolute;left:2rem;bottom:2rem;background:var(--saffron);color:var(--aub);padding:1.4rem;font-size:.62rem;font-weight:900;line-height:1.7;letter-spacing:.12em;text-transform:uppercase}.menuDarkList{padding:8rem 7vw;align-self:center}.menuDarkList h2{margin-bottom:3rem}.menuDarkList .menuRow{border-color:rgba(255,255,255,.2)}.menuDarkList .menuRow p{color:#cfc5d0}
.dessertSection{display:grid;grid-template-columns:.9fr 1.1fr;min-height:760px;background:var(--cream)}.dessertPhoto{margin:5rem 0 5rem 5vw;overflow:hidden}.dessertMenu{padding:8rem 8vw;align-self:center}.dessertMenu h2{margin-bottom:2.5rem}.allergenNote{font-size:.7rem;color:#9a4b3b;margin-top:1.5rem}
.lunch{padding:9rem 7vw;background:var(--saffron);color:var(--aub)}.lunchHeading{text-align:center;max-width:950px;margin:auto}.lunchHeading .kicker{color:var(--aub)}.lunchPrices{display:flex;gap:1.5rem;justify-content:center;margin:3rem 0 5rem}.lunchPrices p{border:1px solid rgba(45,33,51,.45);padding:1.4rem 2rem;font:1.15rem Georgia,serif}.lunchPrices strong{font-size:1.8rem;margin-left:1rem}.lunchCourses{display:grid;grid-template-columns:repeat(3,1fr);gap:4rem}.lunchCourses>div{border-top:2px solid var(--aub);padding-top:1.5rem}.lunchCourses b{font:1.8rem Georgia,serif}.lunchCourses p{line-height:1.6}.lunchCourses em{display:inline-block;font-size:.58rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase;border:1px solid;padding:.2rem .4rem;font-style:normal}
.menuNotes{padding:3rem 7vw;display:grid;grid-template-columns:auto auto 1fr;gap:3rem;align-items:center;background:var(--paper);border-bottom:1px solid var(--line)}.menuNotes>div{display:flex;flex-direction:column}.menuNotes strong{font:1.2rem Georgia,serif}.menuNotes span{font-size:.62rem;color:#697074}.menuNotes p{justify-self:end;max-width:670px;font-size:.75rem;line-height:1.6}.menuCta{padding:9rem 7vw;text-align:center;background:var(--aub);color:white}.menuCta h2 em{color:#dfb9df}.menuCta .reserve{margin-top:2.5rem}.menuCta>small{display:block;margin-top:2rem;font-size:.62rem;opacity:.65}
@media(max-width:900px){.menuHero{min-height:720px}.menuHeroCopy{left:7vw;right:7vw}.menuHeroCopy h1{font-size:clamp(3.8rem,16vw,6rem)}.formulaGrid{grid-template-columns:1fr}.formulaGrid article+article{border-left:1px solid var(--line);border-top:0}.formulaGrid .featured{transform:none}.carte,.menuDark,.dessertSection{grid-template-columns:1fr}.carteSide{padding:6rem 7vw}.carteSide img{height:420px}.menuList,.menuDarkList,.dessertMenu{padding:5rem 7vw}.menuDarkImage{height:600px}.dessertPhoto{height:550px;margin:0}.lunch{padding:6rem 7vw}.lunchPrices{flex-direction:column}.lunchCourses{grid-template-columns:1fr;gap:2.5rem}.menuNotes{grid-template-columns:1fr 1fr}.menuNotes p{grid-column:1/-1;justify-self:start}.menuCta{padding:7rem 7vw 9rem}.ctaButtons{display:flex;gap:1.6rem;justify-content:center;align-items:center;flex-wrap:wrap;margin-top:2.5rem}.ctaButtons .reserve{margin-top:0}.ctaButtons .ghost{color:white;display:inline-flex;justify-content:center}}

/* Chef, distinctions, contact et réservation */
.chefSection{display:grid;grid-template-columns:.9fr 1.1fr;min-height:760px;background:#e5dccb}.chefPortrait{min-height:650px}.chefPortrait img{object-position:center 26%}.chefWelcome{padding:8rem 9vw 7rem 8vw;align-self:center}.chefWelcome h2{font-size:clamp(3.5rem,5.5vw,6.5rem);line-height:.94;color:var(--aub)}.chefWelcome h2 em{color:var(--purple)}.chefLead{font:1.5rem/1.55 Georgia,serif;color:var(--aub);margin:2.3rem 0 1.4rem;max-width:650px}.chefWelcome>p:not(.kicker):not(.chefLead):not(.chefSignature){line-height:1.85;max-width:590px}.chefSignature{margin-top:2.4rem;font:italic 1.3rem/1.5 Georgia,serif}.chefSignature span{display:block;font:700 .62rem/1.4 Arial,sans-serif;letter-spacing:.16em;text-transform:uppercase;margin-top:.55rem;color:var(--purple)}

.contactPage{background:var(--paper)}.contactHeader{background:var(--paper)}.contactHero{display:grid;grid-template-columns:1.08fr .92fr;min-height:650px;background:var(--aub);color:white}.contactHeroImage{min-height:600px}.contactHeroCopy{padding:7rem 7vw;align-self:center}.contactHeroCopy h1{font-size:clamp(4rem,7vw,7rem)}.contactHeroCopy>p:not(.kicker){font:1.12rem/1.75 Georgia,serif;max-width:520px}.contactHeroCopy .reserve{margin-top:1.5rem}.reservationRequest{padding:8rem 7vw;display:grid;grid-template-columns:.72fr 1.28fr;gap:8vw;background:var(--cream)}.requestIntro h2,.accessInfo h2{font-size:clamp(3.3rem,5vw,5.8rem);line-height:.96}.requestIntro>p:not(.kicker){font:1.05rem/1.75 Georgia,serif;max-width:430px}.contactDirect{margin-top:2.5rem;padding-top:1.5rem;border-top:1px solid var(--line);display:flex;flex-direction:column;gap:.65rem;font-size:.82rem;font-weight:700}.reservationForm{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem 1.5rem;padding:3rem;background:var(--paper);box-shadow:0 24px 60px rgba(45,33,51,.1)}.reservationForm label{display:flex;flex-direction:column;gap:.65rem;font-size:.6rem;font-weight:900;letter-spacing:.13em;text-transform:uppercase}.reservationForm input,.reservationForm select,.reservationForm textarea{width:100%;border:0;border-bottom:1px solid var(--line);border-radius:0;background:transparent;padding:.8rem 0;color:var(--ink);font:1rem Arial,sans-serif;outline:none}.reservationForm input:focus,.reservationForm select:focus,.reservationForm textarea:focus{border-color:var(--saffron)}.reservationForm textarea{resize:vertical}.reservationForm .full{grid-column:1/-1}.formSubmit{grid-column:1/-1;border:0;cursor:pointer;margin-top:.5rem}.formNote{grid-column:1/-1;margin:0;font-size:.67rem;line-height:1.55;color:#62686b}.formNote a{text-decoration:underline;text-underline-offset:2px}.accessSection{display:grid;grid-template-columns:1fr 1fr;min-height:700px;background:#d7d8bb}.accessPhoto{min-height:620px}.accessInfo{padding:8rem 8vw;align-self:center}.accessInfo address{font:1.25rem/1.7 Georgia,serif;margin:2rem 0;font-style:normal}.accessInfo p{line-height:1.7}.mapButton{display:inline-flex;margin-top:1rem}
@media(max-width:900px){.chefSection,.contactHero,.reservationRequest,.accessSection{grid-template-columns:1fr}.chefPortrait{height:720px}.chefWelcome,.contactHeroCopy,.reservationRequest,.accessInfo{padding:6rem 7vw}.badgeRow{gap:2.6rem}.contactHeroImage{height:620px}.reservationRequest{gap:3rem}.reservationForm{padding:2.2rem}.accessPhoto{height:600px}}
@media(max-width:560px){.chefPortrait{height:580px}.chefWelcome h2{font-size:3.35rem}.badgeRow{gap:1.6rem 2rem}.contactHeroImage{height:500px;min-height:0}.contactHeroCopy{padding:5rem 7vw}.reservationForm{grid-template-columns:1fr;padding:1.5rem}.reservationForm .full{grid-column:auto}.contactHeroCopy h1{font-size:3.8rem}.accessPhoto{height:500px;min-height:0}}

/* Single-use façade: typographic access panel */
.accessSection{display:block;min-height:620px;background:var(--pistachio);position:relative;overflow:hidden}
.accessSection:after{content:"178";position:absolute;right:-.02em;bottom:-.2em;font:20rem/1 Georgia,serif;color:rgba(45,33,51,.08)}
.accessInfo{position:relative;z-index:1;max-width:900px}
.accessInfo address{font:clamp(1.6rem,3vw,3rem)/1.35 Georgia,serif;color:var(--aub)}
@media(max-width:900px){.accessSection:after{font-size:13rem}}
@media(max-width:560px){.accessSection{min-height:560px}.accessSection:after{font-size:9rem}}

/* Languages */
.languageSwitcher{display:flex;align-items:center;gap:.22rem;margin-left:auto}.languageSwitcher button{border:0;background:transparent;color:var(--aub);font-size:.56rem;font-weight:900;letter-spacing:.08em;padding:.45rem .38rem;cursor:pointer;opacity:.5;border-bottom:2px solid transparent}.languageSwitcher button:hover,.languageSwitcher button.active{opacity:1;border-color:var(--saffron)}
.rtl{font-family:"Tajawal",Tahoma,Arial,sans-serif}.rtl h1,.rtl h2,.rtl .chefLead,.rtl blockquote{font-family:Georgia,"Times New Roman",Tahoma,serif}.rtl .heroShade,.rtl .menuHeroShade{transform:scaleX(-1)}.rtl .heroContent,.rtl .menuHeroCopy{text-align:right}.rtl .heroAside{right:auto;left:4vw;text-align:left}.rtl .scroll{left:auto;right:3vw}.rtl .lineLink span,.rtl .reserve span,.rtl .serviceGrid a span,.rtl .mapButton span{display:inline-block;transform:scaleX(-1)}.rtl .accessSection:after{right:auto;left:-.02em}.rtl input,.rtl textarea,.rtl select{text-align:right}
@media(max-width:1100px){.header{gap:1.2rem}.header nav{gap:1.2rem}.languageSwitcher{margin-left:0}}
@media(max-width:900px){.languageSwitcher{margin-left:auto}.header .languageSwitcher{display:flex}.rtl .heroContent,.rtl .menuHeroCopy{left:7vw;right:7vw}}

@font-face{font-family:"Narenj Naskh";src:url("fonts/NotoNaskhArabic-Regular.ttf") format("truetype");font-weight:400;font-display:swap}
@font-face{font-family:"Narenj Naskh";src:url("fonts/NotoNaskhArabic-Bold.ttf") format("truetype");font-weight:700;font-display:swap}
@font-face{font-family:"Narenj Arabic";src:url("fonts/NotoSansArabic-Regular.ttf") format("truetype");font-weight:400;font-display:swap}
@font-face{font-family:"Narenj Arabic";src:url("fonts/NotoSansArabic-Bold.ttf") format("truetype");font-weight:700 900;font-display:swap}
.rtl{font-family:"Tajawal",Tahoma,Arial,sans-serif;letter-spacing:0}.rtl h1,.rtl h2,.rtl h3,.rtl blockquote,.rtl .big,.rtl .chefLead,.rtl .heroContent>p:not(.kicker),.rtl .menuHeroCopy>p:not(.kicker),.rtl .experienceCard>p:not(.kicker){font-family:"Narenj Naskh",serif;letter-spacing:0}.rtl h1{font-size:clamp(4.4rem,7.4vw,8rem);line-height:1.02}.rtl h2{line-height:1.08}.rtl h1 em,.rtl h2 em{font-style:normal}.rtl p{line-height:1.95}.rtl .kicker,.rtl .header nav,.rtl .reserve,.rtl .ghost,.rtl .lineLink,.rtl .serviceGrid a,.rtl .languageSwitcher button{font-family:"Tajawal",sans-serif;letter-spacing:.02em}.rtl .kicker{font-size:.72rem}.rtl .heroContent>p:not(.kicker){font-size:1.45rem;line-height:1.8;max-width:650px}.rtl .manifestoCopy .big{font-size:2rem;line-height:1.65}.rtl .chefWelcome blockquote{font-size:1.75rem;line-height:1.75}.rtl .meaning{grid-template-columns:1fr 150px}.rtl .meaning>span{grid-column:2}.rtl .meaning>p{grid-column:1;grid-row:1}.rtl .menuRow{grid-template-columns:auto 1fr}.rtl .menuRow>span{grid-column:1;grid-row:1}.rtl .menuRow>div{grid-column:2}.rtl .formulaGrid p,.rtl .serviceGrid p,.rtl .details p{line-height:1.9}
@media(max-width:900px){.rtl h1{font-size:clamp(3.7rem,14vw,6.4rem)}.rtl .meaning{grid-template-columns:1fr}.rtl .meaning>span,.rtl .meaning>p{grid-column:1;grid-row:auto}}
.legalPage{background:var(--paper)}
.legalHero{padding:8rem 7vw 3.5rem;max-width:920px}
.legalHero h1{font-size:clamp(3.2rem,6vw,5.2rem);line-height:1}
.legalHero>p:not(.kicker){font:1.05rem/1.75 Georgia,serif;max-width:620px;margin-top:1.6rem}
.legalMeta{font-size:.72rem;letter-spacing:.06em;text-transform:uppercase;color:var(--purple);margin-top:1.4rem}
.legalContent{display:grid;grid-template-columns:.3fr .7fr;gap:5vw;padding:0 7vw 8rem;align-items:start}
.legalNav{position:sticky;top:2rem;display:flex;flex-direction:column;gap:.7rem;font-size:.68rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;border-left:2px solid var(--line);padding-left:1.2rem}
.legalNav a{color:var(--purple);opacity:.72}
.legalNav a:hover{opacity:1}
.legalBody section{margin-bottom:3.6rem;scroll-margin-top:2rem}
.legalBody h2{font:400 1.85rem/1.2 Georgia,serif;color:var(--aub);margin:0 0 1.2rem}
.legalBody h3{font-size:.68rem;letter-spacing:.1em;text-transform:uppercase;color:var(--purple);margin:1.6rem 0 .6rem}
.legalBody p{font:1rem/1.8 Georgia,serif;margin:0 0 1rem;color:var(--ink)}
.legalBody ul{margin:0 0 1.2rem;padding-left:1.3rem;font:1rem/1.8 Georgia,serif}
.legalBody li{margin-bottom:.5rem}
.legalBody a{text-decoration:underline;text-underline-offset:3px;color:var(--aub)}
.legalIntro{font:italic 1.15rem/1.7 Georgia,serif;color:var(--aub);margin-bottom:2.6rem;max-width:640px}
@media(max-width:900px){.legalContent{grid-template-columns:1fr;padding:0 7vw 5rem}.legalNav{position:static;flex-direction:row;flex-wrap:wrap;gap:1rem 1.6rem;border-left:none;border-top:1px solid var(--line);padding-left:0;padding-top:1.2rem;margin-bottom:2.5rem}.legalHero{padding:6rem 7vw 2.5rem}}
.summerNote{font-size:.78rem;font-style:italic;color:#cfc5d0;margin-top:1.5rem}
.summerPrice{font:1.2rem Georgia,serif;color:var(--aub);margin:-1.5rem 0 2.5rem}
.reserve.ghostReserve{background:transparent;border:1.5px solid var(--aub);color:var(--aub)}
.reserve.ghostReserve:hover{background:var(--aub);color:white;transform:translateY(-2px)}
.menuHeroCopy .ghostReserve{border-color:white;color:white}
.menuHeroCopy .ghostReserve:hover{background:white;color:var(--aub)}
.menuCta .ghostReserve{border-color:white;color:white}
.menuCta .ghostReserve:hover{background:white;color:var(--aub)}
.pressHero{padding:8rem 7vw 2rem;max-width:900px}
.pressHero>p:not(.kicker){font:1.05rem/1.75 Georgia,serif;max-width:680px;margin-top:1.4rem;color:var(--ink)}
.pressSection{padding:2.5rem 7vw 1rem;max-width:1200px;margin:0 auto}
.pressSection h2{font:400 2.4rem/1.15 Georgia,serif;color:var(--aub);margin:.4rem 0 2.2rem}
.pressGrid{display:grid;grid-template-columns:1fr 1fr;gap:1.6rem}
.pressCard{background:var(--paper);border:1px solid var(--line);padding:2.1rem;display:flex;flex-direction:column}
.pressCard.featured{grid-column:1/-1;padding:2.6rem 3rem}
.pressMeta{display:flex;justify-content:space-between;gap:1rem;border-bottom:1px solid var(--line);padding-bottom:1rem;margin-bottom:1.4rem;font-size:.68rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--purple)}
.pressMeta .pressDate{color:#a39a94;text-align:right;white-space:nowrap}
.pressCard h3{font:400 1.4rem/1.3 Georgia,serif;color:var(--aub);margin:0 0 1rem}
.pressCard.featured h3{font-size:1.75rem}
.pressCard p{font-size:.92rem;line-height:1.7;color:var(--ink);margin:0 0 1.6rem;flex:1}
.pressCard a.pressLink{align-self:flex-start;margin-top:auto;display:inline-flex;align-items:center;gap:.5rem;background:var(--saffron);color:var(--aub);padding:.85rem 1.2rem;font-size:.65rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase;transition:.25s}
.pressCard a.pressLink:hover{background:#efbd58;transform:translateY(-2px)}
.pressMentions{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}
.pressMentions li{padding:1.4rem 0;border-bottom:1px solid var(--line);display:grid;grid-template-columns:190px 1fr auto;gap:1.4rem;align-items:center}
.pressMentions strong{font-size:.72rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase;color:var(--purple)}
.pressMentions span{font-size:.86rem;line-height:1.6;color:var(--ink)}
.pressMentions a{font-size:.68rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase;text-decoration:underline;text-underline-offset:3px;color:var(--aub);white-space:nowrap}
.pressPending{background:var(--cream);padding:2rem 2.2rem;margin-top:2.2rem;border-left:4px solid var(--saffron)}
.pressPending h3{margin:0 0 .8rem;font:400 1.3rem Georgia,serif;color:var(--aub)}
.pressPending p{margin:0;font-size:.86rem;line-height:1.7;color:var(--ink)}
@media(max-width:900px){.pressGrid{grid-template-columns:1fr}.pressCard.featured{padding:2rem}.pressMentions li{grid-template-columns:1fr;gap:.4rem;text-align:left}.pressMentions a{justify-self:start}}
.zcModalOverlay{position:fixed;inset:0;z-index:200;background:rgba(32,24,38,.72);display:none;align-items:center;justify-content:center;padding:3vh 3vw}
.zcModalOverlay.open{display:flex}
.zcModalBox{position:relative;width:min(560px,100%);height:min(88vh,900px);background:var(--paper);border-radius:6px;overflow:hidden;box-shadow:0 30px 80px rgba(0,0,0,.4);display:flex;flex-direction:column}
.zcModalBar{display:flex;align-items:center;justify-content:space-between;padding:.9rem 1.2rem;background:var(--aub);color:#fff;flex-shrink:0}
.zcModalBar span{font-size:.68rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.zcModalBar .zcModalLinks{display:flex;align-items:center;gap:1.2rem}
.zcModalBar a{color:#f2d18e;font-size:.65rem;font-weight:800;text-decoration:underline;text-underline-offset:2px;letter-spacing:.04em;text-transform:uppercase}
.zcModalClose{background:none;border:none;color:#fff;font-size:1.3rem;line-height:1;cursor:pointer;padding:0 .2rem}
.zcModalBox iframe{flex:1;width:100%;border:none;background:#fff}
@media(max-width:640px){.zcModalOverlay{padding:0}.zcModalBox{width:100%;height:100%;border-radius:0}}
.cookieBar{position:fixed;left:0;right:0;bottom:0;z-index:50;display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:1.4rem;background:var(--aub);color:#f3ecdf;padding:1.1rem 5vw;box-shadow:0 -8px 30px rgba(0,0,0,.25)}
.cookieBar[hidden]{display:none}
.cookieBar p{margin:0;font-size:.78rem;line-height:1.6;max-width:640px}
.cookieBar p a{text-decoration:underline;text-underline-offset:3px;color:#f2d18e}
.cookieBar button{flex-shrink:0;background:var(--saffron);color:var(--aub);border:none;padding:.75rem 1.4rem;font-size:.68rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;transition:.25s}
.cookieBar button:hover{background:#efbd58;transform:translateY(-2px)}
@media(max-width:640px){.cookieBar{padding:1rem 6vw;justify-content:flex-start;text-align:left}.cookieBar p{font-size:.74rem}}
