/* Indigo: a blue-hour entrance into the real brasserie. */
:root{--night:#151b37;--night-deep:#0e142d;--brass:#cbb083}
.immersive-indigo .header{position:absolute;top:0;left:4%;right:4%;margin:0;width:auto;color:var(--paper);border-color:#f3ecdc30;height:105px;z-index:30}.immersive-indigo .brand-mark{border-color:#f3ecdcaa}.immersive-indigo .brand-mark>span{background:#171e39;color:var(--brass)}.immersive-indigo .desktop-nav a:after{background:var(--brass)}.immersive-indigo .reserve-button{color:var(--paper);border-color:#f3ecdc66;background:#141b3710;backdrop-filter:blur(8px)}.immersive-indigo .reserve-button:hover{background:var(--brass);border-color:var(--brass);color:var(--night)}
.cinematic-hero{display:block;position:relative;isolation:isolate;min-height:780px;height:100svh;max-height:1150px;padding:clamp(190px,24svh,270px) 9.5% 150px;margin:0;background:var(--night-deep);color:var(--paper);overflow:hidden;perspective:1200px}.cinematic-hero .hero-copy{padding:0;width:62%;max-width:760px;z-index:8}.cinematic-hero .hero-copy>.eyebrow{font-size:8px;letter-spacing:2.3px;color:#e4cda4;gap:12px}.cinematic-hero .hero-copy>.eyebrow>span{background:var(--brass);box-shadow:0 0 16px #e6bc8177}.cinematic-hero h1{font-size:clamp(100px,8.9vw,148px);line-height:1.02;letter-spacing:-4.6px;margin:27px 0 27px;white-space:normal;color:var(--paper)}.cinematic-hero h1 em{font-weight:400;color:#eee1c8}.cinema-line{display:block;overflow:hidden;padding:.1em .07em .12em 0;margin:-.1em -.07em -.12em 0}.cinema-line>span,.cinema-line>em{display:block;transform:translateY(0) rotate(0);filter:blur(0);transition:transform 1.45s cubic-bezier(.16,1,.3,1),filter 1.45s,opacity 1.45s}.cinema-line:nth-child(2)>em{transition-delay:.18s}.js-motion body:not(.entered) .cinema-line>span,.js-motion body:not(.entered) .cinema-line>em{transform:translateY(120%) rotate(4deg);filter:blur(8px);opacity:0}.cinematic-hero .hero-description{font-size:13px;line-height:1.85;letter-spacing:.2px;color:#f3ecdcba}.cinematic-hero .hero-actions{margin-top:34px;gap:30px;align-items:center}.scene-button{background:#d0b78e;color:#1b223f;border-color:#d0b78e;padding:20px 24px;min-height:57px;gap:37px;font-size:10px;box-shadow:0 10px 40px #080d1a20}.scene-button:hover{background:#ecdbbb;border-color:#ecdbbb;translate:0 -2px}.cinematic-hero .text-button{color:var(--paper);border-color:#f3ecdc50;font-size:10px;gap:25px}.cinematic-hero .text-button:hover{color:#e6cfac}
.scene-camera,.scene-world{position:absolute;inset:0;z-index:-3;overflow:hidden;pointer-events:none}.scene-camera{inset:-2%;}.scene-world{transform:translate3d(var(--scene-x,0px),calc(var(--scene-y,0px) + var(--scene-scroll,0px)),0) scale(1.035);transition:transform 1.8s cubic-bezier(.2,.75,.2,1),filter 2.5s;will-change:transform}.scene-image{width:100%;height:100%;object-fit:cover;object-position:64% 49%;animation:scene-breathe 28s ease-in-out infinite alternate;filter:saturate(.77)}.scene-shade{position:absolute;inset:0;background:linear-gradient(90deg,#101831f7 0%,#111a35e8 24%,#121c3bac 42%,#151b3720 76%,#10162c30 100%),linear-gradient(0deg,#10172fe8 0%,#12193005 48%,#0d142e4d 100%)}.scene-lampglow{position:absolute;inset:0;background:radial-gradient(ellipse at 72% 20%,#f6c17422,transparent 34%),radial-gradient(ellipse at 86% 58%,#cf914b16,transparent 29%);mix-blend-mode:screen;opacity:.8;animation:lamplight 7s ease-in-out infinite alternate}.js-motion body:not(.entered) .scene-world{transform:translate3d(0,12px,0) scale(1.085);filter:brightness(.65)}.entered .scene-world{transition-duration:2.8s}.cinematic-hero>canvas{position:absolute;inset:0;pointer-events:none;z-index:1;opacity:.65;width:100%;height:100%}
.scene-window{position:absolute;inset:0;pointer-events:none;z-index:2;overflow:hidden;opacity:.5}.window-pane{position:absolute;top:-10%;height:123%;border:1px solid #cab18a30;border-radius:45% 45% 0 0;box-shadow:inset 0 0 45px #ffffff04;will-change:transform}.pane-left{width:65%;left:-36%;transform:translate3d(calc(var(--front-x,0px) * 1.2),0,0) rotate(-7deg)}.pane-right{width:29%;right:-15%;transform:translate3d(var(--front-x,0px),0,0) rotate(6deg);background:linear-gradient(112deg,transparent 20%,#f1d8a107 46%,#fff8df0d 48%,transparent 52%);backdrop-filter:blur(.5px)}.pane-right:after,.pane-left:after{content:'';position:absolute;inset:14px;border:1px solid #cab18a19;border-radius:inherit}.window-crossbar{position:absolute;left:0;right:0;bottom:19%;height:1px;background:#d5bf8b10;transform:rotate(-1deg)}.scene-bokeh{position:absolute;z-index:5;pointer-events:none;width:360px;height:220px;opacity:.36;filter:blur(20px);background:radial-gradient(ellipse at 25% 76%,#dc9f4d8c 0%,transparent 17%),radial-gradient(ellipse at 59% 97%,#ce8a3e 0%,transparent 18%),radial-gradient(ellipse at 87% 84%,#f7d09a96 0%,transparent 13%);transform:translate3d(var(--front-x,0px),0,0)}.bokeh-left{left:-210px;bottom:-74px;rotate:-13deg}.bokeh-right{right:-165px;bottom:-64px;rotate:17deg;opacity:.26}.scene-rail{position:absolute;top:150px;bottom:48px;left:28px;width:39px;border-right:1px solid #f3ecdc20;display:flex;align-items:center;flex-direction:column;gap:45px;padding-right:13px;color:#efe2c19c;z-index:7}.rail-monogram{font-family:Playfair;font-size:36px;font-style:italic;line-height:1}.scene-rail>span:nth-child(2){writing-mode:vertical-rl;font-size:6px;letter-spacing:3px;flex:1;padding-top:22px}.scene-rail>i{writing-mode:vertical-rl;font-style:normal;font-size:5px;letter-spacing:1.5px}.scene-inscription{position:absolute;right:7.5%;bottom:21%;text-align:center;color:#f0dfc3c7;z-index:6;transform:rotate(-4deg);pointer-events:none}.scene-inscription>span:first-child{font-size:6px;letter-spacing:3px}.scene-inscription>p{font-family:Playfair;font-size:31px;line-height:1.1;margin-top:18px;text-shadow:0 2px 14px #0004}.scene-inscription>p>em{font-size:36px}.inscription-line{display:block;width:29px;height:1px;background:#d1b58477;margin:20px auto 17px}.scene-inscription>small{font-size:5px;letter-spacing:1.7px}.scene-baseline{position:absolute;right:7%;bottom:60px;font-family:Playfair;font-size:150px;letter-spacing:8px;color:#f3ecdc08;line-height:1;pointer-events:none;z-index:2}.cinematic-hero .hero-bottom{position:absolute;left:9.5%;right:5%;bottom:30px;margin:0;padding:19px 0 0;border-color:#f3ecdc30;z-index:9;display:flex;justify-content:space-between;align-items:center;gap:25px}.cinematic-hero .hero-bottom .scene-explore{display:flex;gap:17px;align-items:center;font-size:13px;letter-spacing:.15px;font-family:Playfair;line-height:1.5}.scene-explore>span:last-child>small{display:block;font-family:Inter;font-size:5px;letter-spacing:1.6px;color:#d8c8a3;margin-bottom:7px}.explore-rule{height:35px;width:1px;display:block;background:#d2bb8a77;position:relative;overflow:hidden}.explore-rule:after{content:'';position:absolute;top:-20px;left:0;width:1px;height:20px;background:#eee0bb;animation:explore-fall 2.5s ease-in-out infinite}.cinematic-hero .motion-controls{color:#f3ecdc88;font-size:6px;gap:10px}.cinematic-hero .motion-controls button{font-size:6px;letter-spacing:.2px}.cinematic-hero .motion-controls button:hover{color:var(--brass)}.cinematic-hero .scene-service{font-size:5px;letter-spacing:1.5px;line-height:2.1;text-align:right;color:#f3ecdc9c;white-space:nowrap}.table-opening{display:grid;grid-template-columns:1fr 1fr;gap:9%;align-items:center;background:var(--paper);padding-top:105px;padding-bottom:95px}.table-opening-copy{padding-right:5%}.table-opening-copy>.eyebrow{font-size:7px;letter-spacing:1.8px}.table-opening h2{font-size:58px;margin:25px 0 28px;letter-spacing:-2px}.table-opening-copy>p:not(.eyebrow){font-size:12px;line-height:1.9;color:var(--muted);max-width:330px;margin-top:18px}.table-opening .text-button{margin-top:25px;font-size:10px}.table-opening-note{font-size:5px;letter-spacing:1.7px;display:block;margin-top:42px;color:var(--muted)}.table-opening .hero-art{padding:0 20px 50px 0}.table-opening .hero-photo{height:450px}.table-opening .hero-photo>img{object-position:center center}.table-opening .art-lines{height:450px}.table-opening .hero-photo figcaption>p{font-size:29px}.table-opening .round-seal{width:105px;height:105px;left:-40px;top:25px}.table-opening .round-seal>span{font-size:19px}.table-opening .round-seal em{font-size:22px}.table-opening .dish-selector{bottom:0;left:5px;gap:23px}.table-opening .dish-selector button{font-size:7px}.table-opening .vertical-note{right:-15px;font-size:5px}.ticker{padding-block:20px;background:#222944}.signatures .section-heading h2{max-width:800px}.season{background:#1c2444}.season-word{color:#8288b3}.visit{background:#151d3a}.signature-nord{background:#222b4c}.menu-aside p{white-space:pre-line}.room-photo{filter:saturate(.55) contrast(1.03)}
.intro-skip{position:fixed;bottom:34px;right:5%;z-index:210;font-size:8px;color:var(--paper);letter-spacing:.6px;display:flex;gap:20px;align-items:center;opacity:0;pointer-events:none;padding:12px 0;border-bottom:1px solid #eadbc640}.intro.active+.intro-skip{opacity:.7;pointer-events:auto}.intro-skip:hover{opacity:1}.intro-skip>span{font-size:16px}.paused .scene-world{transform:none!important;transition:none!important}.paused .scene-image{animation-play-state:paused}.paused .cinema-line>*{transform:none!important;filter:none!important;opacity:1!important}
@keyframes scene-breathe{from{transform:scale(1.015)}to{transform:scale(1.055)}}@keyframes lamplight{from{opacity:.55}to{opacity:.95}}@keyframes explore-fall{to{translate:0 75px}}
@media(min-width:1700px){.cinematic-hero{padding-top:26svh}.cinematic-hero h1{font-size:155px}.scene-inscription{right:8%;bottom:22%}.scene-inscription>p{font-size:37px}.scene-inscription>p>em{font-size:43px}.table-opening h2{font-size:75px}.table-opening .hero-photo,.table-opening .art-lines{height:530px}}
@media(max-width:1100px){.immersive-indigo .header{height:94px}.cinematic-hero{min-height:750px;padding-left:10%;padding-top:22svh;padding-right:6%}.cinematic-hero h1{font-size:100px;letter-spacing:-4px}.cinematic-hero .hero-copy{width:70%}.cinematic-hero .hero-copy>.eyebrow{font-size:6px;letter-spacing:1.8px}.cinematic-hero .hero-actions{gap:24px}.cinematic-hero .hero-actions .button{font-size:10px;gap:28px;padding:18px 22px}.cinematic-hero .hero-actions .text-button{font-size:9px;gap:20px}.scene-rail{left:20px;width:28px;padding-right:9px}.scene-inscription{right:6%;bottom:24%;opacity:.9}.scene-inscription>p{font-size:26px}.scene-inscription>p>em{font-size:31px}.scene-baseline{font-size:120px}.cinematic-hero .hero-bottom{left:10%;right:5%;bottom:28px}.cinematic-hero .hero-bottom .scene-explore{font-size:12px}.scene-explore>span:last-child>small{font-size:5px}.table-opening{gap:8%;padding-top:85px;padding-bottom:75px}.table-opening h2{font-size:45px}.table-opening-copy>p:not(.eyebrow){font-size:11px}.table-opening .hero-photo,.table-opening .art-lines{height:390px}.table-opening .round-seal{width:91px;height:91px;left:-32px}.table-opening .round-seal>span{font-size:17px}.table-opening .round-seal em{font-size:20px}.table-opening .dish-selector{gap:15px}.table-opening .dish-selector button{font-size:6px}.table-opening .hero-photo figcaption{left:23px;bottom:25px}.table-opening .hero-photo figcaption>p{font-size:26px}.table-opening .hero-photo figcaption>span{font-size:5px}}
@media(max-width:760px){.immersive-indigo .header{height:87px;left:6%;right:6%;color:var(--paper);gap:15px}.immersive-indigo .header .brand{font-size:23px;gap:10px}.immersive-indigo .brand-mark{width:35px;height:44px;font-size:44px}.immersive-indigo .brand small{font-size:5px;letter-spacing:2.2px}.immersive-indigo .reserve-button{display:none}.immersive-indigo .menu-toggle{margin-left:auto;width:36px}.immersive-indigo .menu-toggle>span{background:var(--paper);width:22px}.immersive-indigo .mobile-nav{top:86px;left:-7%;right:-7%;background:#18203e;color:var(--paper);border-color:#f3ecdc33;box-shadow:0 25px 35px #050b2366;padding:22px 7%}.immersive-indigo .mobile-nav>a,.immersive-indigo .mobile-nav>.btn-reserve{border-color:#f3ecdc26}.cinematic-hero{height:100svh;min-height:790px;max-height:none;padding:clamp(180px,24svh,260px) 7% 155px;display:block}.cinematic-hero .hero-copy{width:100%;padding:0;max-width:600px}.cinematic-hero .hero-copy>.eyebrow{font-size:6px;letter-spacing:1.4px;gap:11px}.cinematic-hero h1{font-size:clamp(79px,22vw,119px);letter-spacing:-3.2px;margin:24px 0 28px;line-height:1.03}.cinematic-hero .hero-description{font-size:12px;line-height:1.9;color:#f3ecdcbd}.cinematic-hero .hero-actions{margin-top:29px;gap:23px;align-items:flex-start;flex-direction:column}.cinematic-hero .hero-actions .button{font-size:10px;min-height:53px;padding:18px 22px;gap:35px;max-width:100%}.cinematic-hero .hero-actions .text-button{font-size:9px;gap:24px;padding:9px 0}.scene-camera{inset:-2% -15% -2% -15%}.scene-image{object-position:64% 50%}.scene-shade{background:linear-gradient(90deg,#101831dd 0%,#101934a8 42%,#151b371c 100%),linear-gradient(0deg,#0f1731f5 0%,#151d3a30 48%,#0c142b90 100%)}.scene-lampglow{background:radial-gradient(ellipse at 79% 28%,#f6c17422,transparent 40%)}.scene-rail,.scene-inscription{display:none}.pane-right{width:60%;right:-48%;opacity:.7}.pane-left{width:90%;left:-83%}.scene-bokeh{filter:blur(14px);opacity:.26;width:260px;height:180px}.bokeh-left{left:-170px;bottom:-50px}.bokeh-right{right:-160px;bottom:-50px}.scene-baseline{right:6%;bottom:143px;font-size:61px;letter-spacing:3px;opacity:.6;writing-mode:vertical-rl;transform:rotate(180deg)}.cinematic-hero .hero-bottom{left:7%;right:7%;bottom:23px;padding-top:16px;gap:12px;display:grid;grid-template-columns:1fr auto;align-items:center}.cinematic-hero .hero-bottom .scene-explore{font-size:11px;gap:13px;line-height:1.4;letter-spacing:0}.scene-explore>span:last-child>small{font-size:4px;letter-spacing:.9px;margin-bottom:7px}.explore-rule{height:32px}.cinematic-hero .scene-service{font-size:4px;letter-spacing:.8px;line-height:2.2;max-width:85px}.cinematic-hero .hero-bottom .motion-controls{grid-column:1/-1;order:3;padding:12px 0 0;justify-content:flex-start;gap:9px;font-size:5px;border-top:1px solid #f3ecdc0e;width:100%;margin-top:3px}.cinematic-hero .hero-bottom .motion-controls button{font-size:5px}.table-opening{display:flex;flex-direction:column;gap:0;padding:55px 6% 50px}.table-opening-copy{padding:0;align-self:stretch}.table-opening-copy>.eyebrow{font-size:6px;letter-spacing:1.2px}.table-opening h2{font-size:44px;margin:24px 0;letter-spacing:-1.6px}.table-opening-copy>p:not(.eyebrow){font-size:11px;line-height:1.9;max-width:100%;margin-top:16px}.table-opening .text-button{font-size:9px;margin-top:19px}.table-opening-note{display:none}.table-opening .hero-art{margin:46px 5px 0 15px;padding:0 12px 49px 0;align-self:stretch}.table-opening .hero-photo{height:auto;aspect-ratio:1.03;border-radius:45% 45% 2px 2px}.table-opening .art-lines{height:auto;aspect-ratio:1;left:19px;top:-10px;right:0}.table-opening .round-seal{width:90px;height:90px;top:22px;left:-23px}.table-opening .round-seal>span{font-size:16px}.table-opening .round-seal em{font-size:20px}.table-opening .dish-selector{bottom:0;left:0;right:0;justify-content:center;gap:22px}.table-opening .dish-selector button{font-size:6px;gap:6px}.table-opening .hero-photo figcaption{left:22px;bottom:23px}.table-opening .hero-photo figcaption>p{font-size:25px}.table-opening .hero-photo figcaption>span{font-size:5px}.table-opening .vertical-note{right:-10px;font-size:5px}.intro-skip{bottom:29px;right:7%;font-size:7px;gap:18px}.intro-skip>span{font-size:14px}}
@media(max-width:360px){.cinematic-hero{padding-inline:7%;min-height:770px;padding-top:190px}.cinematic-hero h1{font-size:23vw;letter-spacing:-2.8px}.cinematic-hero .hero-copy>.eyebrow{font-size:5px;letter-spacing:1.1px}.cinematic-hero .hero-description{font-size:11px}.cinematic-hero .hero-actions .button{font-size:9px;gap:30px;padding:17px 20px;min-height:51px}.cinematic-hero .hero-actions .text-button{font-size:8px}.cinematic-hero .hero-bottom .scene-explore{font-size:10px;gap:10px}.scene-explore>span:last-child>small{font-size:3.7px;letter-spacing:.6px}.cinematic-hero .scene-service{font-size:3.5px;letter-spacing:.5px}.table-opening h2{font-size:38px}.table-opening .dish-selector{gap:15px}.table-opening .dish-selector button{font-size:5.5px}}
@media(prefers-reduced-motion:reduce){.intro-skip{display:none!important}.scene-world{transform:none!important;filter:none!important;transition:none!important}.scene-image{animation:none!important}.cinema-line>span,.cinema-line>em,.js-motion body:not(.entered) .cinema-line>span,.js-motion body:not(.entered) .cinema-line>em{transform:none;filter:none;opacity:1}.scene-window,.scene-bokeh{transform:none!important}}
/* A real restaurant menu needs comfortable reading as well as atmosphere. */
.cinema-word{display:inline-block;overflow:hidden;vertical-align:top;padding:.08em .035em .15em;margin:-.08em -.035em -.15em}.word-lift{display:inline-block;transition:transform .95s cubic-bezier(.16,1,.3,1),opacity .9s;transition-delay:calc(var(--word) * 36ms);transform:translateY(0);opacity:1}.js-motion .word-reveal:not(.title-visible) .word-lift{transform:translateY(130%) rotate(3deg);opacity:0}.paused .word-lift{transform:none!important;opacity:1!important}.signature-grid>.reveal:nth-child(2){transition-delay:.1s}.signature-grid>.reveal:nth-child(3){transition-delay:.2s}
.menu-item h4{font-size:15px}.menu-item p{font-size:12px;line-height:1.85}.menu-item>div>span{font-size:13px}.category-nav button{font-size:11px}.menu-note{font-size:9px}.formula-condition{font-size:10px;line-height:1.8}.maison-copy p{font-size:13px}.visit-bottom p{font-size:13px}.visit-bottom small{font-size:10px}.footer-top>div{font-size:11px}.immersive-indigo .desktop-nav{font-size:11px}
@media(max-width:760px){.cinematic-hero .hero-description br{display:initial}.cinematic-hero .hero-bottom .motion-controls,.cinematic-hero .hero-bottom .motion-controls button{font-size:7px}.cinematic-hero .scene-service{font-size:6px;letter-spacing:.3px;max-width:105px}.scene-explore>span:last-child>small{font-size:5px}.intro-skip{font-size:9px}.category-nav button{font-size:11px;padding-block:17px}.menu-item h4{font-size:13px;line-height:1.6}.menu-item p{font-size:11px;line-height:1.9}.menu-item>div>span{font-size:12px}.menu-note{font-size:9px}.menu-search input{font-size:12px}.menu-intro p{font-size:12px}.formula-condition{font-size:10px;line-height:1.8}.formula-left>p{font-size:12px}.table-opening-copy>p:not(.eyebrow),.maison-copy p{font-size:12px}.section-heading p{font-size:12px}.signature-nord>p{font-size:12px}.signature-bottom>div>small{font-size:10px}.season-heading>p{font-size:12px}.season-ticket small{font-size:10px}.season-ticket b{font-size:11px}.visit-bottom p{font-size:11px}.visit-bottom small{font-size:9px}.visit-bottom a:not(.reservation-disc){font-size:10px}.footer-top>div{font-size:10px}.mobile-booking>a,.mobile-booking>.btn-reserve{font-size:11px}}
@media(prefers-reduced-motion:reduce){.js-motion .word-reveal:not(.title-visible) .word-lift{transform:none;opacity:1}}
.signature-grid{grid-template-columns:repeat(var(--visible-dishes,3),minmax(0,1fr))}.season-ticket>#season-items{display:block;padding:0;border:0;margin:0}.season-ticket>#season-items>div{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:9px;padding:17px 0;border-top:1px dashed var(--line);font-family:Playfair;font-size:18px}.season-ticket>#season-items small{grid-column:1/-1}.season-heading>p{white-space:pre-line}.menu-feedback{padding:16px 18px;margin-bottom:20px;border:1px solid var(--line);display:flex;align-items:center;gap:20px;justify-content:space-between;font-size:11px;line-height:1.8}.menu-feedback button{border-bottom:1px solid currentColor;padding:5px 0;font-size:11px;white-space:nowrap}.menu-loading{font-family:Playfair;font-size:23px;padding:30px 0}.stock-note{display:inline-block;font-size:9px;color:var(--muted);padding-top:10px}#carte[data-menu-source=unavailable] .menu-aside{display:none}#carte[data-menu-source=unavailable] .menu-layout{grid-template-columns:1fr}
@media(max-width:760px){.signature-grid{grid-template-columns:1fr}.season-ticket>#season-items>div{font-size:17px;padding:16px 0;gap:10px}.menu-feedback{font-size:10px;gap:15px;padding:13px 15px}.menu-feedback button{font-size:10px}.stock-note{font-size:10px}}
#carte[data-menu-empty=true] .menu-layout{grid-template-columns:1fr}

/* Drawn icons: never use platform emoji or symbol glyphs for interface artwork. */
.icon{display:inline-block;width:1em;height:1em;vertical-align:-.12em;flex:none;overflow:visible}
.icon-rosette{stroke-width:2.5}
.ticker i{display:flex;align-items:center}
.card-link>span{display:flex;align-items:center;justify-content:center}
.dialog-close{width:32px;height:32px;display:grid;place-items:center}
.dialog-close .icon{width:24px;height:24px}
.footer-bottom a{display:inline-flex;align-items:center;gap:7px}
.formula-prices>span>.icon{width:14px;height:14px;margin-left:5px}

/* Fly through the O: vector letterforms keep the opening identical across fonts/devices. */
.intro{overflow:hidden;background:transparent}
.intro-portal-art{position:absolute;inset:0;width:100%;height:100%;overflow:hidden}
.intro-zoom{transform-box:view-box;transform-origin:var(--portal-ox,90vw) var(--portal-oy,46vh);transform:translate(0,0) scale(1);transition:transform 1.65s cubic-bezier(.62,0,.18,1)}
.intro.opening .intro-zoom{transform:translate(var(--portal-x,0px),var(--portal-y,0px)) scale(var(--portal-scale,30))}
.intro-letter-ink{opacity:1;transition:transform 1.65s cubic-bezier(.62,0,.18,1),opacity .55s ease}
.intro.opening .intro-letter-ink{opacity:0}
.intro.active:not(.opening) .intro-zoom{transition:none}
.intro-caption{position:absolute;top:calc(46% + var(--portal-caption-gap,110px));left:0;right:0;text-align:center;color:var(--brass);font-size:8px;letter-spacing:5px;transition:opacity .3s}
.intro.opening .intro-caption{opacity:0}
@media(max-width:760px){.intro-caption{font-size:7px;letter-spacing:3px}}
.visit h2{position:relative}
.visit h2>.visit-spark{pointer-events:none;right:1%;top:12px;font-size:100px}
@media(max-width:760px){.visit{padding-bottom:105px}.visit h2>.visit-spark{top:-35px;right:0;font-size:24px}.mobile-booking{bottom:calc(12px + env(safe-area-inset-bottom,0px))}}
@media(prefers-reduced-motion:reduce){.intro{display:none!important}}

.brand-mark>span{display:grid;place-items:center}
.brand-mark .icon,.ticker .icon,.menu-star .icon,.visit h2>.visit-spark .icon{display:block}

.immersive-indigo .header,.scene-inscription,.cinematic-hero .hero-bottom,.scene-rail,.scene-baseline{transition:opacity .7s ease}
.js-motion body:not(.entered) :is(.header,.scene-inscription,.cinematic-hero .hero-bottom,.scene-rail,.scene-baseline){opacity:0}

/* Owner-supplied script logo, traced from the supplied artwork. */
.header .brand{flex:none}
.header .official-logo{display:block;width:150px;height:auto}
.footer-logo{display:block;flex:none}
.footer-logo img{display:block;width:220px;height:auto}
.scene-rail .rail-monogram{display:block;width:30px;height:36px;object-fit:contain}
svg.intro-caption{display:block;width:var(--portal-caption-width,80vw);max-width:90vw;height:auto;aspect-ratio:600/70;margin-inline:auto;overflow:visible}
@media(max-width:760px){.header .official-logo{width:122px}.footer-logo img{width:145px}}

/* The retouched originals carry their own grade; avoid stacking old desaturation. */
.scene-image,.hero-photo>img,.signature-welsh figure img,.signature-fresh>figure>img,.menu-aside>img,.room-photo,.chef-photo>img{filter:none}
.signature-welsh figure img{mix-blend-mode:normal}
.hero-photo:has(img[src*="cuisine-saumon"])>img{object-position:50% 28%}
.hero-photo:has(img[src*="service-v3"])>img{object-position:50% 34%}
#menu-photo[src*="chef-v3"],#menu-photo[src*="cuisine-saumon"]{object-position:50% 24%}
#menu-photo[src*="steak-v3"]{object-position:70% 50%}
#menu-photo[src*="tartare-v3"]{object-position:50% 58%}

/* A wider view keeps the counter in proportion and the interior unobstructed. */
#maison .maison-photos{padding:0 18px 105px 0}
#maison .room-photo{display:block;width:100%;height:auto;aspect-ratio:1586/992;object-fit:cover;object-position:center}
#maison .chef-photo{width:32%;right:-8px;transform:rotate(5deg)}
#maison .maison-seal{width:120px;height:120px;bottom:5px;font-size:20px}
@media(max-width:760px){
  #maison .maison-photos{padding:0 12px 100px 0}
  #maison .chef-photo{width:34%;right:0;padding:7px 7px 0}
  #maison .maison-seal{width:98px;height:98px;font-size:17px;bottom:5px}
}

/* Astro routes, locale switch and the retained restaurant information. */
.home-language{font-size:10px;letter-spacing:1px;padding:12px 0;border-bottom:1px solid #f3ecdc77}
.immersive-indigo .desktop-nav{gap:24px;margin-right:10px}
.immersive-indigo .desktop-nav .btn-order{color:var(--brass)}
.immersive-indigo .header{gap:24px}
.home-service-links{display:flex;flex-wrap:wrap;gap:16px;margin-top:8px}
.home-faq{background:#e8dfcf}.home-faq h2{font-size:clamp(38px,5vw,64px);margin:24px 0 36px}
.home-faq>div{max-width:900px}.home-faq details{border-top:1px solid var(--line);padding:20px 0}.home-faq details:last-child{border-bottom:1px solid var(--line)}
.home-faq summary{cursor:pointer;font-size:14px;line-height:1.6}.home-faq details p{font-size:13px;line-height:1.9;max-width:740px;padding-top:16px;color:var(--muted)}
.home-special-hours{margin-top:22px;max-width:280px}.home-special-hours h4{font-size:10px;letter-spacing:1px;font-weight:500}.home-special-hours ul{list-style:none;padding:0;font-size:11px;line-height:1.7}.home-special-hours li{margin-top:12px}.home-special-hours .sh-main{display:flex;flex-wrap:wrap;gap:4px 8px}.home-special-hours .sh-date{font-weight:500}.home-special-hours .sh-desc{font-size:10px;margin:4px 0}.home-special-hours .sh-state{color:var(--brass)}
@media(min-width:761px) and (max-width:1100px){.immersive-indigo .desktop-nav{gap:14px;font-size:10px}.immersive-indigo .header{gap:16px}.header .official-logo{width:128px}.reserve-button{padding:13px 15px;gap:15px}}
@media(max-width:760px){.home-language{margin-left:auto}.immersive-indigo .menu-toggle{margin-left:0}.home-faq summary{font-size:13px}.home-faq details p{font-size:12px}.mobile-nav .btn-order{color:var(--brass)}}

/* Cover the first paint while the portal script prepares its geometry. */
.indigo-boot .intro:not(.finished){opacity:1;visibility:visible;pointer-events:auto}
.intro.active:not(.opening){transition:opacity .2s ease,visibility .2s ease}

/* Keep secondary controls readable on the cream sections and photographic hero. */
.immersive-indigo{--muted:#666575}
.table-opening .dish-selector button{color:#666575}
.table-opening .dish-selector button[aria-pressed=true]{color:var(--indigo)}
.cinematic-hero .motion-controls{color:#e5dcca}

/* Editorial dishes invite discovery; prices stay in the menu. */
.season-ticket>#season-items>div{grid-template-columns:minmax(0,1fr)}
.formula-prices>button>.icon{width:24px;height:24px;flex:none}

/* Avoid focus-triggered viewport zoom without restricting manual zoom. */
@media (max-width:1024px), (pointer:coarse) {
  .immersive-indigo .menu-search input { font-size:16px; }
}
