/* V7: translucent navigation, full-frame photography and interruptible motion. */
:root{--glass:rgba(252,253,249,.76);--glass-line:rgba(255,255,255,.9);--flow:cubic-bezier(.22,1,.36,1)}
body{background:radial-gradient(ellipse at 10% 0%,#e4eddf 0,transparent 45%),#f6f7f2}
.header{margin:12px 20px 16px;top:12px;border:1px solid var(--glass-line);border-radius:28px;background:var(--glass);backdrop-filter:blur(24px) saturate(145%);-webkit-backdrop-filter:blur(24px) saturate(145%);box-shadow:inset 0 1px 0 #fff,0 8px 30px #16392c0b;height:78px;padding-inline:28px}
.header .wordmark>img{height:67px;width:106px}.header>nav a{padding:12px 16px;border-radius:30px;transition:background .25s,color .25s}.header>nav{gap:5px}.header nav a[aria-current=page]{text-decoration:none;background:#e1e9dd;color:#103d2e}.header-book,.btn,.hero-reserve{border-radius:100px}.languages{background:#ffffff60;border:1px solid #ffffffa0;border-radius:99px;padding:2px 6px}.languages button{border-radius:99px}.languages button[aria-pressed=true]{background:#103d2e;color:#fff!important;border-color:transparent;padding-inline:9px}
.view-enter{animation:none!important}
.restaurant-hero{border-radius:32px;overflow:hidden;margin-inline:20px;gap:10px;background:#e7ebdf}.hero-location,.hero-food{border-radius:28px;overflow:hidden}.hero-food>img{object-fit:contain!important;object-position:center!important}.hero-food{background:#e4e5d8}.food-selector{border-radius:99px;background:#ffffffe0;box-shadow:0 7px 24px #0002}.food-selector button{border-radius:99px}.food-caption{background:#17372a90;backdrop-filter:blur(12px);border:1px solid #ffffff40;border-radius:99px;padding:8px 14px}.hero-reserve{border:1px solid #ffffff75;background:#ffffff20;backdrop-filter:blur(18px);padding:12px 20px;display:inline-flex}.reservation-strip{border-radius:28px;margin:16px 20px 0;background:#ffffffa0;border:1px solid #fff;box-shadow:0 10px 30px #16392c06}.home-shortcuts{border-bottom:0}.home-shortcuts a{border:1px solid #fff;background:#ffffff80;border-radius:99px}
.app-ready body:not([data-route=home]) .section{padding-top:30px}.full-menu,.photo-journal{background:transparent}.catalog-heading h2{letter-spacing:-1.5px}.catalog-heading>p{color:#5f6e63}.app-ready .catalog-controls{top:102px;background:#f7f9f2c9;border:1px solid #fff;border-radius:26px;padding:16px;backdrop-filter:blur(24px) saturate(140%);-webkit-backdrop-filter:blur(24px) saturate(140%);box-shadow:0 12px 32px #193d2c0a;margin-bottom:28px}.catalog-toolbar{gap:16px!important}.catalog-search{width:100%}.catalog-search>span{position:absolute;clip-path:inset(50%);width:1px;height:1px;overflow:hidden}.app-ready .catalog-search input{border:1px solid #dce3d8;background:#ffffff9c;border-radius:16px;padding:14px 18px;min-height:50px;font-size:16px}.app-ready #catalog-count{font-size:10px;line-height:1.6;min-width:90px;margin:0}.app-ready .catalog-categories{margin:12px 0 0;padding:2px 0 4px;gap:8px;scrollbar-width:none}.category-chip,.gallery-filters button{border-radius:99px;border-color:#d9e1d5;background:#ffffff90;transition:background .25s,color .25s,box-shadow .25s,transform .25s}.category-chip[aria-pressed=true],.gallery-filters button[aria-pressed=true]{box-shadow:0 5px 14px #103d2e23}.catalog-picker{flex-shrink:0;border:1px solid #d9e1d5;background:#fff9;border-radius:16px;min-height:50px;padding:10px 16px;color:var(--green);font-size:12px;display:flex;gap:10px;align-items:center}.catalog-picker svg{width:18px;height:18px;stroke:currentColor;fill:none;stroke-width:1.5}
.app-ready .catalog-grid{gap:26px;grid-template-columns:repeat(3,minmax(0,1fr))}.app-ready .dish-card{background:#ffffffb5;border:1px solid #fff;border-radius:26px;padding:10px;box-shadow:0 8px 32px #16392c06;content-visibility:visible;overflow:hidden}.app-ready .dish-photo{border-radius:19px;background:#eef0e7;isolation:isolate}.app-ready .dish-photo img{height:auto!important;aspect-ratio:auto!important;object-fit:contain!important;width:100%;transform:none!important}.app-ready .dish-info{padding:18px 13px 15px;border:0}.app-ready .dish-info h3{font-size:21px;line-height:1.4}.app-ready .dish-desc{font-size:12px;line-height:1.8;-webkit-line-clamp:3;color:#606f64}.app-ready .dish-category{font-size:9px;margin-bottom:7px}.app-ready .zoom-mark{border-radius:50%;background:#ffffffe0;backdrop-filter:blur(14px);border:1px solid #fff;box-shadow:0 3px 12px #0001}.app-ready .text-dish{padding:17px}.app-ready .gallery-grid{align-items:start;gap:28px}.app-ready .gallery-item{background:#ffffffa0;padding:8px;border:1px solid #fff;border-radius:24px}.gallery-item figcaption{padding:16px 10px}.image-wrap{height:auto!important;border-radius:24px;overflow:hidden}.image-wrap img{height:auto!important;object-fit:contain;transform:none!important}.menu-photo{height:auto;align-self:center;border-radius:26px;overflow:hidden}.menu-photo img{height:auto;object-fit:contain}.venue-images{border-radius:26px}
.service-select label span{border-radius:99px;transition:background .25s,color .25s,box-shadow .25s}.service-select input:checked+span{box-shadow:0 4px 12px #103d2e20}
.app-ready #reservation-dialog,.app-ready #photo-dialog,#category-dialog{border-radius:30px;border:1px solid #fff;background:#f8faf5f5;box-shadow:0 30px 120px #031e2240;backdrop-filter:blur(25px)}
dialog{opacity:0;transform:translateY(35px) scale(.98);transition:opacity .32s var(--flow),transform .45s var(--flow),display .45s allow-discrete,overlay .45s allow-discrete}
dialog[open],#reservation-dialog[open]{animation:none;opacity:1;transform:none}
dialog::backdrop{background:#102e244f!important;backdrop-filter:blur(12px)!important;transition:opacity .35s,display .45s allow-discrete,overlay .45s allow-discrete;opacity:0}dialog[open]::backdrop{opacity:1}
@starting-style{dialog[open],#reservation-dialog[open]{opacity:0;transform:translateY(45px) scale(.97)}dialog[open]::backdrop{opacity:0}}
.dialog-toolbar{background:#f8faf5de;backdrop-filter:blur(20px);border-color:#dfe5da}.booking-card{border-radius:25px}.form-grid input,.form-grid select,.form-grid textarea{border:1px solid #d9e1d3;background:#fff9;padding:12px;border-radius:12px}.service-select{border-radius:99px;padding:5px}.service-select button{border-radius:99px}#reservation-close,#photo-close,#category-close{border-radius:50%;background:#ffffffa6;border:1px solid #d9e1d5;color:#103d2e;min-width:44px;height:44px;font-size:26px}.photo-description{padding:26px}.app-ready #photo-large{height:auto;max-height:64dvh;object-fit:contain;background:#e8ebe1;border-radius:22px}.app-ready #photo-dialog{padding:10px}
#category-dialog{width:min(760px,calc(100% - 24px));max-height:85dvh;padding:0;color:var(--green)}.category-dialog-head{position:sticky;top:0;z-index:2;padding:20px 24px;display:flex;align-items:center;justify-content:space-between;background:#f8faf5e8;backdrop-filter:blur(20px);border-bottom:1px solid #e0e5da}.category-dialog-head h2{font-size:23px;letter-spacing:-.6px}.category-tiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:20px}.category-tile{border:1px solid #e0e6d8;border-radius:20px;background:#fff9;color:var(--green);padding:8px;text-align:start;overflow:hidden}.category-tile[aria-pressed=true]{border-color:#103d2e;box-shadow:0 0 0 1px #103d2e}.category-tile img{width:100%;height:95px;object-fit:contain;background:#edf0e6;border-radius:13px}.category-tile span{display:block;font-size:12px;font-weight:600;padding:9px 5px}.category-tile small{font-size:10px;font-weight:400;opacity:.65;display:block;margin-top:4px}.category-tile:active{transform:scale(.97)}body.category-open{overflow:hidden}.catalog-picker:focus-visible,.app-dock a:focus-visible,button:focus-visible{outline:3px solid #789e61;outline-offset:3px}
@media(max-width:1100px){.header{padding-inline:18px}.header>nav a{padding-inline:10px}.app-ready .catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:800px){.header{margin:8px 12px 12px;top:8px;height:66px!important;border-radius:24px;padding-inline:18px}.header .wordmark>img{height:58px;width:88px}.languages button{min-height:36px}.restaurant-hero{margin-inline:12px;border-radius:28px;height:calc(78svh - 80px);min-height:460px;max-height:650px}.hero-location{border-radius:28px}.restaurant-title{bottom:32px}.restaurant-title h1{font-size:48px}.reservation-strip{margin:12px 12px 0;padding:24px;border-radius:26px}.home-shortcuts a{font-size:11px}.app-ready body{padding-bottom:112px}.app-ready body:not([data-route=home]) .section{padding:20px 16px 55px}.app-ready .catalog-heading{padding:5px 6px 0;margin-bottom:22px}.app-ready .catalog-heading h2{font-size:32px!important;line-height:1.25}.app-ready .catalog-heading>p{font-size:12px;line-height:1.8;max-width:340px}.app-ready .catalog-controls{top:84px;padding:10px;border-radius:22px;margin-bottom:20px}.app-ready .catalog-toolbar{display:flex;flex-wrap:wrap;gap:8px!important;margin:0}.catalog-search{flex:1;min-width:150px}.app-ready .catalog-search input{padding:12px;font-size:15px;min-height:46px;border-radius:14px}.catalog-picker{min-height:46px;padding:10px;font-size:11px;border-radius:14px;gap:6px}.app-ready #catalog-count{display:none}.app-ready .catalog-categories{margin:9px 0 0;padding:0 0 2px}.app-ready .category-chip{padding:10px 15px;font-size:11px;min-height:40px}.app-ready .catalog-grid{grid-template-columns:1fr;gap:20px}.app-ready .dish-card{border-radius:26px;padding:8px}.app-ready .dish-photo{border-radius:20px}.app-ready .dish-info{padding:17px 14px 18px}.app-ready .dish-info h3,.app-ready .text-dish .dish-info h3{font-size:21px;line-height:1.4}.app-ready .dish-desc{font-size:12px;-webkit-line-clamp:3}.app-ready .dish-category{font-size:9px}.app-ready .zoom-mark{width:36px;height:36px;right:12px;bottom:12px;font-size:21px}.app-ready .gallery-grid{grid-template-columns:1fr;gap:23px}.app-ready .gallery-item figcaption{font-size:18px}.app-dock{inset-inline:12px;bottom:max(12px,env(safe-area-inset-bottom));border-radius:29px;grid-template-columns:1fr 1fr 1.2fr 1fr 1fr;padding:7px;background:#f6f9efbe;border:1px solid #fffffff5;backdrop-filter:blur(28px) saturate(170%);-webkit-backdrop-filter:blur(28px) saturate(170%);box-shadow:inset 0 1px 1px #fff,0 12px 40px #092b2730,0 1px 5px #092b2710;isolation:isolate;overflow:hidden}.app-dock a{z-index:1;min-width:0;min-height:58px;border-radius:23px;font-size:9px;gap:5px;transition:color .25s,transform .3s var(--flow)}.app-dock a[aria-current=page]{background:transparent}.app-dock a.dock-book{border-radius:23px;margin:0 4px;background:linear-gradient(145deg,#285d45,#123d2e);box-shadow:inset 0 1px 0 #ffffff40,0 4px 12px #103d2e25}.dock-lens{position:absolute;top:0;left:0;background:linear-gradient(140deg,#fffffff5,#dfe9d9c0);border:1px solid #ffffffd0;border-radius:23px;box-shadow:inset 0 1px 2px #fff,0 2px 10px #103d2e0e;transition:transform .5s var(--flow),width .5s var(--flow);pointer-events:none}.app-dock a[aria-current=page] svg{stroke-width:1.9}.app-ready #reservation-dialog,.app-ready #photo-dialog{width:calc(100% - 12px);margin:auto 6px 6px;border-radius:29px;max-height:calc(100dvh - 18px)}.app-ready .dialog-toolbar{padding-top:27px}.app-ready .dialog-toolbar:before{width:32px;left:calc(50% - 16px);background:#b9c7af}.category-tiles{grid-template-columns:repeat(2,minmax(0,1fr));padding:14px;gap:10px}#category-dialog{width:calc(100% - 12px);margin:auto 6px 6px;max-height:86dvh;border-radius:29px}.category-dialog-head{padding:20px}.category-dialog-head h2{font-size:21px}.app-ready .photo-description{padding:22px 12px}.form-grid input,.form-grid select,.form-grid textarea{font-size:16px}.moment-grid{gap:34px}.section{padding-inline:20px}.menu-section{border-radius:30px;margin:0 12px;padding-inline:22px}.menu-tabs{gap:12px}.menu-tabs button{font-size:11px}.venue-images{overflow:hidden}.app-ready .venue-images{height:450px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}.dock-lens{transition:none}dialog{transform:none}::view-transition-group(*),::view-transition-old(*),::view-transition-new(*){animation:none!important}}
@supports not (backdrop-filter:blur(1px)){.header,.app-dock,.app-ready .catalog-controls{background:#f4f7ef}}

/* V8 selected photography: full logo silhouettes and a shorter gallery. */
@media(min-width:801px){.restaurant-hero{width:calc(100% - 40px);max-width:1240px;margin-inline:auto;grid-template-columns:1fr 1fr;height:auto;min-height:0;max-height:none;aspect-ratio:8/5}.hero-food{background:#233c2f}.hero-food:before{content:'';position:absolute;inset:-30px;background-image:var(--food-scene,url('v8/table.webp'));background-size:cover;background-position:center;filter:blur(25px);opacity:.35}.hero-food>img{position:relative;z-index:1}.hero-food:after{z-index:1}}
.header .wordmark>img{object-fit:contain;width:116px;height:58px}.footer-top .wordmark img{object-fit:contain;width:150px;height:auto}.app-ready .gallery-grid{display:block;columns:3;column-gap:26px}.app-ready .gallery-item{break-inside:avoid;margin-bottom:26px}.app-ready .gallery-item .dish-photo{overflow:hidden}.gallery-item figcaption{padding-block:17px}.gallery-item .dish-photo img{transform:none!important}@media(max-width:1000px){.app-ready .gallery-grid{columns:2}}@media(max-width:800px){.header .wordmark>img{width:105px;height:53px}.app-ready .gallery-grid{columns:1}.app-ready .gallery-item{margin-bottom:22px}}
