/* Visual evolution, November 2026. Shared editorial system. */
:root{--ease-editorial:cubic-bezier(.16,1,.3,1)}
.site-header{transition:background .4s,box-shadow .4s;border-bottom-color:rgba(92,131,144,.2)}
.site-header.is-scrolled{box-shadow:0 6px 35px #183d4312}
.desktop-nav a{position:relative}.desktop-nav a:after{content:'';position:absolute;left:0;right:0;bottom:-7px;height:1px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .45s var(--ease-editorial)}
.desktop-nav a:hover:after,.desktop-nav a.active:after{transform:scaleX(1)}
.button{transition:background .3s,color .3s,box-shadow .3s;box-shadow:0 0 0 transparent}.button:hover{box-shadow:0 8px 24px #183d4315}
.page-title,.display-title{text-wrap:balance}.page-deck{text-wrap:pretty}
.breadcrumb{align-items:center}.breadcrumb:before{content:'';width:28px;height:1px;background:var(--teal)}
.page-masthead:not(.menu-masthead){position:relative}
.menu-intro figure{position:relative;transform:rotate(3deg);border:10px solid var(--paper);box-shadow:0 22px 60px #183d4320}
.menu-intro figure:after{content:'';position:absolute;inset:12px;border:1px solid #ffffff75;pointer-events:none}
.menu-utility{margin-top:50px}.category-nav a{position:relative}.category-nav a.is-current:after{content:'';position:absolute;bottom:0;left:0;right:0;height:3px;background:var(--pale)}
.menu-section{gap:9%;padding-block:85px}.menu-section-heading{align-self:start;position:sticky;top:calc(var(--header) + 100px)}
.menu-chapter-photo{margin-top:32px;max-width:310px;overflow:hidden;aspect-ratio:4/3;border-radius:2px 48px 2px 2px}
.menu-chapter-photo img{width:100%;height:100%;object-fit:cover}
.dish{transition:background .3s,padding .3s}.dish:hover{background:#c7e0e230;padding-inline:12px}
.menu-pairing{position:relative;overflow:hidden}.menu-pairing:after{content:'';width:260px;height:260px;border:1px solid #183d4325;border-radius:50%;position:absolute;right:-70px;top:40px;pointer-events:none}
.group-option{transition:background .4s,padding .4s}.group-option:hover{background:#c7e0e242;padding-inline:20px}
.groups-panorama,.house-opening>figure,.location-image{overflow:hidden}.groups-panorama img,.house-opening>figure img,.location-image img{transition:transform 1.2s var(--ease-editorial)}
.house-caption,.groups-panorama figcaption{backdrop-filter:blur(14px)}
.house-collage-detail{transform:rotate(3deg);border:10px solid var(--paper);box-shadow:0 20px 50px #183d431c}
.house-collage-table{transform:rotate(-2deg)}
.wine-feature>figure{position:relative}.wine-feature>figure:before{content:'';position:absolute;inset:18px 18px 50px;border:1px solid #ffffff80;pointer-events:none;z-index:1}
.ritual-step{border-top:1px solid var(--line);padding-top:28px}.ritual-step>span{font-family:var(--display);font-size:32px;color:var(--teal)}
.booking-console{border:1px solid var(--line);box-shadow:0 25px 70px #183d4312}
.booking-photo{overflow:hidden;border-radius:0 80px 0 0}
.photo-wall-item img{transition:transform .9s var(--ease-editorial),filter .9s}.gallery-zoom{overflow:hidden}.gallery-zoom:hover img{transform:scale(1.035)}
.seo-context{background:linear-gradient(135deg,#e8eeea,var(--paper) 70%)}
.seo-context nav{gap:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:38px;border-top:1px solid var(--line)}
.seo-context nav a{padding:22px 0;margin-right:35px;border-bottom:1px solid var(--line);justify-content:space-between}
.footer-signature{border-bottom:1px solid #ffffff35;padding-bottom:35px;margin-bottom:60px;display:flex;align-items:center;justify-content:space-between;gap:35px}
.footer-signature>span{font-family:var(--display);font-size:clamp(54px,9.8vw,155px);line-height:.85;letter-spacing:-.025em}.footer-signature img{width:clamp(55px,7vw,105px);filter:brightness(0) invert(1);opacity:.85}
.footer-top{padding-top:0}.footer-links a{transition:color .3s,transform .3s}.footer-links a:hover{color:var(--pale);transform:translateX(4px)}
@media(min-width:1051px){.page-menu .menu-masthead{padding-top:80px}.house-story{padding-block:140px}.wine-copy{border-left:1px solid var(--line);padding-left:12%}.group-sheet-note{border-left:1px solid var(--line);padding-left:35px}}
@media(max-width:700px){.menu-intro figure{transform:none;border-width:6px}.menu-utility{margin-top:25px}.menu-section{padding-block:45px}.menu-section-heading{position:static;display:grid;grid-template-columns:1fr 110px;column-gap:20px}.menu-section-heading>.section-label{grid-column:1}.menu-section-heading h2{grid-column:1;margin-top:15px;font-size:36px}.menu-chapter-photo{grid-column:2;grid-row:1/3;margin:0;aspect-ratio:1;border-radius:0 25px 0 0;align-self:center}.house-collage-detail{border-width:6px}.seo-context nav{grid-template-columns:1fr}.seo-context nav a{margin-right:0;padding-block:18px}.footer-signature{margin-bottom:35px;padding-bottom:25px;gap:15px}.footer-signature>span{font-size:clamp(40px,10vw,68px)}.footer-signature img{width:40px}.group-option:hover{padding-inline:0}}
@media(prefers-reduced-motion:no-preference){
 @view-transition{navigation:auto}
 ::view-transition-old(root){animation:editorial-out .16s ease both}::view-transition-new(root){animation:editorial-in .3s ease both}
 .hero-scene.is-active img{animation:scene-arrival 1.2s var(--ease-editorial) both}
 @keyframes scene-arrival{from{opacity:.4;transform:scale(1.035)}to{opacity:1;transform:scale(1)}}
 @keyframes editorial-in{from{opacity:0}to{opacity:1}}@keyframes editorial-out{to{opacity:0}}
 @supports(animation-timeline:view()){
  .menu-chapter-photo img,.location-image>img{animation:photo-depth linear both;animation-timeline:view();animation-range:entry 0% exit 100%}
  @keyframes photo-depth{from{transform:scale(1.08) translateY(2%)}to{transform:scale(1.08) translateY(-2%)}}
 }
}
@media(prefers-reduced-motion:reduce){.house-collage-detail,.house-collage-table{transform:none}::view-transition-old(root),::view-transition-new(root){animation:none!important}}
@media print{.menu-section-heading{position:static}.footer-signature{display:none}}

/* November 4 · A chapter navigation and individually composed opening scenes. */
.site-header{--nav-tint:#e5eeea;--nav-border:#183d4325}
.page-home .site-header{--nav-tint:#ffffff14;--nav-border:#ffffff30}
.header-inner{gap:clamp(20px,2.2vw,34px)}
.desktop-nav{gap:4px;justify-content:flex-end}
.desktop-nav .nav-chapter{display:grid;grid-template-columns:1fr auto;column-gap:10px;row-gap:3px;padding:10px 15px;min-height:58px;border:1px solid transparent;border-radius:5px;transition:background .35s,border-color .35s,color .35s}
.desktop-nav .nav-chapter:after{display:none}
.nav-index{font-size:8px;font-weight:500;letter-spacing:.12em;line-height:1;opacity:.65}
.desktop-nav .nav-index{grid-column:1;grid-row:1}
.desktop-nav .nav-label{grid-column:1;grid-row:2;font-size:12px;line-height:1.5}
.nav-direction{font-size:15px;font-family:Arial,sans-serif;line-height:1;transition:transform .35s var(--ease-editorial)}
.desktop-nav .nav-direction{grid-column:2;grid-row:1/3;align-self:center;opacity:.55}
.desktop-nav .nav-chapter:hover,.desktop-nav .nav-chapter.active,.desktop-nav .nav-chapter:focus-visible{background:var(--nav-tint);border-color:var(--nav-border)}
.desktop-nav .nav-chapter:hover .nav-direction{transform:translate(2px,-2px);opacity:1}
.desktop-nav .nav-chapter.active .nav-index{opacity:1;color:var(--muted)}
.page-home .desktop-nav .nav-chapter.active .nav-index{color:var(--pale)}
.header-booking{border-radius:50px;padding:10px 12px 10px 19px;gap:17px;font-size:11px}
.header-booking .icon-arrow{display:grid;place-items:center;width:30px;height:30px;border:1px solid currentColor;border-radius:50%;font-size:16px}
.lang-switch{border:1px solid var(--nav-border);border-radius:30px;padding:3px;gap:0}
.lang-switch a{width:29px;text-align:center;border-radius:50%;padding:6px 0;line-height:1.5}
.lang-switch a[aria-current]{background:var(--nav-tint);border-bottom:0}
.mobile-nav .nav-chapter{display:grid;grid-template-columns:25px 1fr 28px;align-items:center;gap:14px;padding-block:20px}
.mobile-nav .nav-label{font-family:var(--display);font-size:32px;line-height:1}
.mobile-nav .nav-direction{font-size:24px;justify-self:end}
.mobile-nav .nav-chapter.active .nav-label{font-family:Georgia,serif;font-style:italic;font-size:29px}
.mobile-nav .nav-chapter.active .nav-index{opacity:1}
/* The menu opens like a two-page restaurant journal, with photography in its own space. */
.page-menu .menu-masthead{display:grid;grid-template-columns:1.1fr 1fr;gap:6%;align-items:center;padding-block:65px 75px}
.menu-opening-copy{min-width:0}
.menu-masthead .page-title{font-size:clamp(68px,8.1vw,126px);max-width:100%;position:relative;z-index:1}
.menu-masthead .page-title em{display:inline-block;padding-block:.05em .1em}
.menu-opening-copy .page-deck{font-size:16px;max-width:430px;margin-top:25px}
.menu-opening-copy .menu-utility{margin-top:32px;flex-wrap:wrap;gap:15px 26px}
.menu-opening-photo{position:relative;padding:18px 18px 0;background:#e8e3d7;transform:rotate(2deg);box-shadow:18px 22px 0 #c7e0e269}
.menu-opening-photo:before{content:'';position:absolute;left:-22px;top:30px;width:45px;height:45px;border:1px solid var(--ink);border-radius:50%;z-index:1;background:var(--paper)}
.menu-opening-photo:after{content:'✳';position:absolute;left:-22px;top:27px;width:45px;height:45px;display:grid;place-items:center;color:var(--ink);font-size:28px;z-index:2}
.menu-opening-photo>img{width:100%;height:clamp(400px,39vw,590px);object-fit:cover;border-radius:45% 45% 0 0}
.menu-opening-photo figcaption{display:flex;justify-content:space-between;gap:12px;align-items:center;padding-block:20px;font-size:8px;letter-spacing:.06em}
.menu-opening-photo figcaption>span:first-child{font-family:Georgia,serif;font-style:italic;font-size:22px;letter-spacing:-.025em}
/* Groups: full-width photographic invitation, with an opaque caption for legibility. */
.groups-opening-stage{position:relative;isolation:isolate;min-height:650px;background:var(--ink);color:var(--paper);overflow:hidden;display:flex;align-items:center}
.groups-opening-stage .groups-panorama:before{content:'';position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,#0b292ef0 2%,#0b292eb8 50%,#0b292e30),linear-gradient(0deg,#0b292e8f,transparent 60%)}
.groups-opening-stage .groups-intro{padding-block:65px 105px;position:relative}
.groups-opening-stage .breadcrumb{color:var(--paper)}
.groups-opening-stage .breadcrumb:before{background:var(--pale)}
.groups-opening-stage .page-title{max-width:900px;font-size:clamp(72px,9vw,140px)}
.groups-opening-stage .page-title em{color:var(--pale)}
.groups-opening-stage .page-deck{margin-left:0;max-width:510px;font-size:16px}
.groups-opening-stage .groups-panorama{position:absolute;inset:0;z-index:-2;opacity:1!important;transform:none!important}
.groups-opening-stage .groups-panorama img{height:100%;width:100%;object-fit:cover;object-position:60% 50%}
.groups-opening-stage .groups-panorama figcaption{z-index:2;bottom:30px;left:var(--gutter);font-size:10px;color:var(--paper);background:#183d43;padding:12px 20px;border:1px solid #ffffff40}
/* The house has a different silhouette: a rounded, offset architectural portrait. */
.house-opening{display:grid;grid-template-columns:1.1fr 1fr;gap:3%;align-items:center;padding:65px var(--gutter) 75px;background:var(--pale);position:relative;overflow:hidden}
.house-opening:before{content:'';position:absolute;width:550px;height:550px;border:1px solid #183d4325;border-radius:50%;right:-150px;top:-100px;pointer-events:none}
.house-opening .page-masthead{width:100%;padding:0;position:relative;z-index:1}
.house-opening .page-title{font-size:clamp(65px,8.2vw,128px)}
.house-opening>figure{width:100%;border-radius:48% 48% 0 0;box-shadow:18px 22px 0 #183d4312}
.house-opening>figure img{height:570px;object-position:center}
.house-opening .house-caption{left:18px;right:18px;bottom:18px;font-size:9px;padding:15px;background:#f8f5edef;color:var(--ink);text-align:center}
.vermouth-opening{background:var(--ink);color:var(--paper);position:relative;overflow:hidden}
.vermouth-opening:before{content:'';position:absolute;width:70vw;height:70vw;border:1px solid #c7e0e226;border-radius:50%;right:-20vw;top:-20vw;pointer-events:none}
.vermouth-opening .breadcrumb{color:var(--pale)}
.vermouth-opening .page-title em{color:var(--pale)}
.vermouth-opening>.container{align-items:center;padding-bottom:65px;gap:7%}
.vermouth-opening .page-masthead{padding-bottom:30px}
.vermouth-opening figure{transform:none;margin:55px 0 0;overflow:hidden;border-radius:48% 48% 3px 3px;border:12px solid #ffffff0c;box-shadow:20px 20px 0 #ffffff05}
.vermouth-opening figure img{height:550px;object-position:center}
.wine-opening,.location-opening{border-bottom:1px solid var(--line);position:relative}
.wine-opening:after,.location-opening:after{content:'↗';position:absolute;right:0;bottom:65px;width:84px;height:84px;border-radius:50%;border:1px solid var(--line);display:grid;place-items:center;font-size:45px;color:var(--teal);pointer-events:none}
.wine-opening .page-deck{margin-left:0;max-width:640px;padding-right:90px}
.location-opening .page-deck{padding-right:90px}
@media(min-width:1051px) and (max-width:1250px){.desktop-nav .nav-chapter{padding-inline:9px;column-gap:7px}.desktop-nav .nav-label{font-size:11px}.header-actions{gap:12px}.header-inner{gap:16px}.brand{flex-basis:205px}}
@media(max-width:1050px){.menu-masthead .page-title{font-size:clamp(65px,8.8vw,100px)}.menu-opening-photo>img{height:440px}.house-opening>figure img{height:460px}.house-opening .page-title{font-size:clamp(62px,8.5vw,100px)}.vermouth-opening figure img{height:480px}.groups-opening-stage{min-height:600px}}
@media(max-width:700px){
 .header-inner{gap:14px}.header-actions{gap:12px}.lang-switch{padding:2px}.lang-switch a{width:26px;font-size:9px;padding-block:6px}.brand{flex:0 1 215px}.menu-toggle{flex-shrink:0}
 .page-menu .menu-masthead{display:block;padding-block:35px 48px}.menu-masthead .page-title{font-size:clamp(60px,15vw,90px)}
 .menu-opening-copy .page-deck{font-size:14px;margin-top:20px}.menu-opening-copy .menu-utility{margin-top:22px;font-size:9px}
 .menu-opening-photo{margin:35px 10px 0 0;padding:12px 12px 0;transform:none;box-shadow:10px 12px 0 #c7e0e269}
 .menu-opening-photo>img{height:310px;border-radius:43% 43% 0 0}.menu-opening-photo:before,.menu-opening-photo:after{left:-10px;top:15px;width:34px;height:34px;font-size:23px}.menu-opening-photo figcaption{padding-block:15px;flex-wrap:wrap;gap:5px;font-size:7px}.menu-opening-photo figcaption>span:first-child{font-size:21px}
 .groups-opening-stage{min-height:620px}.groups-opening-stage .groups-intro{padding-block:35px 115px}.groups-opening-stage .page-title{font-size:clamp(60px,15vw,90px)}.groups-opening-stage .page-deck{font-size:14px;margin-top:25px}.groups-opening-stage .groups-panorama:before{background:linear-gradient(90deg,#0b292ef0,#0b292e99),linear-gradient(0deg,#0b292ec0,transparent)}.groups-opening-stage .groups-panorama figcaption{left:var(--gutter);right:var(--gutter);bottom:25px;font-size:9px;padding:12px}.groups-opening-stage .groups-panorama img{object-position:65% 50%}
 .house-opening{display:block;padding:35px var(--gutter) 45px}.house-opening .page-title{font-size:clamp(59px,14.5vw,88px)}.house-opening>figure{margin-top:35px;box-shadow:10px 12px 0 #183d4312}.house-opening>figure img{height:370px}.house-opening .house-caption{font-size:8px;left:12px;right:12px;bottom:12px;padding:12px}.house-opening:before{width:320px;height:320px;top:280px;right:-130px}
 .vermouth-opening>.container{padding-bottom:45px}.vermouth-opening .page-title{font-size:clamp(59px,15vw,88px)}.vermouth-opening figure{margin:12px 0 0;border-width:8px;box-shadow:10px 10px 0 #ffffff05}.vermouth-opening figure img{height:350px}
 .wine-opening:after,.location-opening:after{width:45px;height:45px;font-size:24px;bottom:40px}.wine-opening .page-deck,.location-opening .page-deck{padding-right:65px;font-size:14px}
}
@media(max-width:370px){.header-inner{gap:10px}.header-actions{gap:8px}.brand{flex-basis:167px}.lang-switch a{width:26px}.menu-opening-photo>img{height:265px}}
@media(prefers-reduced-motion:no-preference){
 .menu-opening-photo{animation:opening-photo .9s var(--ease-editorial) both}
 @keyframes opening-photo{from{opacity:.55;translate:0 16px}to{opacity:1;translate:0 0}}
}
@media(prefers-reduced-motion:reduce){.menu-opening-photo{transform:none}}
