*,:before,:after{box-sizing:border-box}body,h1,h2,h3,h4,p,ul,ol,dl,dd,figure,fieldset,blockquote{margin:0;padding:0}ul,ol{list-style:none}fieldset{border:0;min-width:0}img,svg{max-width:100%;display:block}button,input,textarea{font:inherit;color:inherit}button{cursor:pointer}[hidden]{display:none!important}:root{--font-heading-stack:var(--font-heading,var(--theme-font-heading,system-ui, sans-serif));--font-body-stack:var(--font-body,var(--theme-font-body,system-ui, sans-serif));--blue:#2f6fb0;--amber:#c98a12;--shadow-sm:0 1px 2px #0000000f, 0 1px 1px #0000000a;--shadow-md:0 6px 24px #0000001a;--shadow-lg:0 18px 60px #00000038;--ease-out:cubic-bezier(.22, 1, .36, 1);--radius-sm:calc(var(--radius) * .6);--focus:0 0 0 3px color-mix(in srgb, var(--accent) 45%, transparent)}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}body{background:var(--bg);color:var(--text);font-family:var(--font-body-stack);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;font-size:16px;line-height:1.5}a{color:inherit}:focus-visible{box-shadow:var(--focus);outline:none}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.ai-mark-host{position:relative}.ai-mark{z-index:1;color:#1a1a1a;letter-spacing:.02em;pointer-events:none;white-space:nowrap;background:#fff9;border-radius:50%;place-items:center;block-size:1.4rem;inline-size:1.4rem;font:700 .55rem/1 system-ui,sans-serif;display:grid;position:absolute;inset-block-end:.4rem;inset-inline-start:.4rem;box-shadow:0 1px 3px #00000040}.ai-mark>[aria-hidden]{text-box:trim-both cap alphabetic}.ai-mark[hidden]{display:none}.ai-note{opacity:.75;font-size:.8em}.btn{white-space:nowrap;border:1.5px solid #0000;border-radius:999px;justify-content:center;align-items:center;gap:.45em;min-height:2.75rem;padding:.65em 1.3em;font-size:.95rem;font-weight:650;line-height:1.1;text-decoration:none;transition:background .18s,color .18s,border-color .18s,transform .12s,opacity .18s;display:inline-flex}.btn:active{transform:scale(.98)}.btn svg{width:1.15em;height:1.15em}.btn-accent{background:var(--accent);color:var(--on-accent)}.btn-accent:hover{background:color-mix(in srgb, var(--accent) 88%, var(--text))}.btn-accent:disabled{opacity:.45;cursor:not-allowed}.btn-outline{color:var(--accent);background:0 0;border-color:currentColor}.btn-outline:hover{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.btn-ghost{background:color-mix(in srgb, var(--text) 6%, transparent);color:var(--text)}.btn-ghost:hover{background:color-mix(in srgb, var(--text) 11%, transparent)}.badge{letter-spacing:.04em;text-transform:uppercase;background:color-mix(in srgb, var(--accent) 14%, transparent);color:color-mix(in srgb, var(--accent) 60%, var(--text));white-space:nowrap;border-radius:4px;align-items:center;padding:.3em .55em;font-size:.68rem;font-weight:700;line-height:1;display:inline-flex}.badge-recommended{background:var(--accent);color:var(--on-accent)}.badge-new{background:color-mix(in srgb, var(--blue) 16%, transparent);color:color-mix(in srgb, var(--blue) 60%, var(--text))}.badge-spicy{background:color-mix(in srgb, var(--red) 15%, transparent);color:color-mix(in srgb, var(--red) 50%, var(--text))}.badge-seasonal{background:color-mix(in srgb, var(--green) 15%, transparent);color:color-mix(in srgb, var(--green) 40%, var(--text))}.badge-on_tap{background:color-mix(in srgb, var(--amber) 18%, transparent);color:color-mix(in srgb, var(--amber) 40%, var(--text))}.badge-sold-out{background:var(--text);color:var(--bg)}.cat-highlight-tag{font-family:var(--font-body-stack);letter-spacing:.05em;text-transform:uppercase;background:var(--accent);color:var(--on-accent);white-space:nowrap;border-radius:999px;align-self:center;align-items:center;padding:.4em .65em;font-size:.72rem;font-style:normal;font-weight:700;line-height:1;display:inline-flex}.diet{color:var(--green);white-space:nowrap;align-items:center;gap:.2em;font-size:.75rem;font-weight:600;display:inline-flex}.diet svg{width:1em;height:1em}.open-status{align-items:center;gap:.45em;font-size:.85rem;font-weight:600;display:inline-flex}.open-dot{background:var(--muted);border-radius:50%;flex-shrink:0;width:.55em;height:.55em}.open-status.is-open .open-dot{background:#22c55e;box-shadow:0 0 0 3px #22c55e40}.open-status.is-closed .open-dot{background:#ef4444}.open-hours{opacity:.85;font-weight:500}.lang-switch{background:color-mix(in srgb, var(--text) 7%, transparent);letter-spacing:.04em;border-radius:999px;padding:2px;font-size:.72rem;font-weight:700;display:inline-flex}.lang-link{color:color-mix(in srgb, var(--muted) 70%, var(--text));border-radius:999px;padding:.3em .6em;text-decoration:none}.lang-link.active{background:var(--surface);color:var(--text);box-shadow:var(--shadow-sm)}.lang-menu{position:relative}.lang-menu>summary{cursor:pointer;list-style:none}.lang-menu>summary::-webkit-details-marker{display:none}.lang-menu>summary:after{content:" ▾";font-size:.85em}.lang-menu-list{z-index:60;border:1px solid color-mix(in srgb, var(--text) 12%, transparent);background:var(--surface);min-width:10rem;box-shadow:var(--shadow-md,0 8px 24px #00000029);letter-spacing:normal;border-radius:.75rem;padding:.3rem;font-size:.9rem;font-weight:500;display:grid;position:absolute;top:calc(100% + .4rem);right:0}.lang-option{color:var(--text);border-radius:.5rem;padding:.5em .75em;text-decoration:none}.lang-option:hover,.lang-option:focus-visible{background:color-mix(in srgb, var(--text) 7%, transparent)}.lang-option.active{font-weight:700}.dish{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"title price""desc desc""meta meta";align-items:baseline;column-gap:1rem;display:grid;position:relative}.dish.has-image{grid-template-columns:minmax(0,1fr) auto}.dish-title{font-family:var(--font-heading-stack);overflow-wrap:break-word;hyphens:auto;grid-area:title;min-width:0;font-size:1.02rem;font-weight:650;line-height:1.3}.dish-open{all:unset;cursor:pointer}.dish-open:after{content:"";border-radius:inherit;position:absolute;inset:0}.dish-open:focus-visible:after{box-shadow:var(--focus)}.dish-number{color:var(--muted);font-variant-numeric:tabular-nums;margin-right:.4em;font-size:.8em;font-weight:600}.dish-number:after{content:"."}.dish-leader{display:none}.dish-price{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap;grid-area:price;font-weight:700}.dish-amount{color:var(--accent)}.dish-variants{gap:.1rem;display:grid}.dish-variant{justify-content:flex-end;align-items:baseline;gap:.5em;display:flex}.dish-variant-name{white-space:normal;color:var(--muted);font-size:.78rem;font-weight:500}.dish-variant-price{color:var(--accent)}.dish-desc{color:var(--muted);grid-area:desc;margin-top:.2rem;font-size:.9rem;line-height:1.45}.dish-meta{flex-wrap:wrap;grid-area:meta;align-items:center;gap:.35rem .5rem;margin-top:.45rem;display:flex}.dish-extras{color:var(--muted);flex-basis:100%;font-size:.8rem;line-height:1.4}.dish-extras-label{font-weight:600}.dish-duration{align-items:center;gap:.3em;display:inline-flex}.dish-duration svg{width:1em;height:1em}.dd-duration{color:var(--muted);white-space:nowrap;font-size:.75rem;font-weight:600}.dish-allergens{letter-spacing:.02em;color:var(--muted);font-size:.72rem;font-weight:600}.dish-media{border-radius:var(--radius-sm);background:var(--surface-2);grid-area:media;overflow:hidden}.dish-img{object-fit:cover;width:100%;height:100%}.dish.is-sold-out .dish-title,.dish.is-sold-out .dish-price,.dish.is-sold-out .dish-img{opacity:.45}.dish.is-sold-out .dish-img{filter:grayscale()}.dish-dialog{border-radius:var(--radius);background:var(--surface);width:min(520px,100vw);max-width:100vw;max-height:min(88dvh,820px);color:var(--text);box-shadow:var(--shadow-lg);border:0;margin:auto;padding:0;overflow:hidden}.dish-dialog[open]{flex-direction:column;display:flex}.dish-dialog::backdrop{backdrop-filter:blur(3px);opacity:calc(1 - var(--dd-drag,0));background:#0a0a0c8c}.dd-scroll{overscroll-behavior:contain;flex-direction:column;min-height:0;display:flex;position:relative;overflow-y:auto}.dd-close{z-index:2;background:color-mix(in srgb, var(--surface) 88%, transparent);width:2.25rem;height:2.25rem;color:var(--text);box-shadow:var(--shadow-sm);backdrop-filter:blur(6px);border:0;border-radius:50%;place-items:center;display:grid;position:absolute;top:.75rem;right:.75rem}.dd-handle{display:none}.dd-close svg{width:1.15rem;height:1.15rem}.dd-media{aspect-ratio:4/3;background:var(--surface-2);flex-shrink:0}.dd-img{object-fit:cover;width:100%;height:100%}.dish-dialog.is-sold-out .dd-img{filter:grayscale();opacity:.6}.dd-body{flex-direction:column;gap:.85rem;padding:1.35rem 1.35rem 1.5rem;display:flex}.dish-dialog:not(.has-media) .dd-body{padding-top:3.5rem}.dd-tags{flex-wrap:wrap;align-items:center;gap:.35rem;display:flex}.dd-name{font-family:var(--font-heading-stack);font-size:1.5rem;font-weight:700;line-height:1.2}.dd-desc{color:var(--muted);line-height:1.6}.dd-note{font-size:.92rem;font-weight:600}.dd-amount{color:var(--accent);font-size:1.3rem;font-weight:700}.dd-price-row{border-bottom:1px solid var(--border);justify-content:space-between;gap:1rem;padding:.5rem 0;display:flex}.dd-price-row:last-child{border-bottom:0}.dd-price-row .dd-variant-price,.dd-variant .dd-variant-price{color:var(--accent);font-variant-numeric:tabular-nums;font-weight:700}.dd-label{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-bottom:.5rem;font-size:.72rem;font-weight:700}.dd-variant-list,.dd-extra-list{gap:.5rem;display:grid}.dd-variant{border:1.5px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;align-items:center;gap:.75rem;padding:.75rem .9rem;transition:border-color .15s,background .15s;display:flex}.dd-variant:has(input:checked){border-color:var(--accent);background:color-mix(in srgb, var(--accent) 8%, transparent)}.dd-variant input{accent-color:var(--accent);width:1.1rem;height:1.1rem;margin:0}.dd-variant .dd-variant-name{flex:1;font-weight:600}.dd-combo,.dd-combo-groups{gap:1rem;display:grid}.dd-combo-groups[hidden]{display:none}.dd-combo-head{margin-bottom:0}.dd-combo-head-price{color:var(--accent)}.dd-combo-group{gap:.5rem;display:grid}.dd-combo-group .dd-label{margin-bottom:0;padding:0}.dd-combo-extras{margin-left:1.5rem}.dd-combo-marks{color:var(--muted);font-size:.72rem;font-weight:600}.dd-variant.is-sold-out,.dd-price-row.is-sold-out{opacity:.55;cursor:not-allowed}.dd-variant.is-sold-out .dd-variant-price,.dd-price-row.is-sold-out .dd-variant-price{color:var(--muted);font-weight:600}.dd-allergen-list{flex-wrap:wrap;gap:.35rem;display:flex}.dd-allergen{background:var(--surface-2);border-radius:999px;padding:.25em .6em;font-size:.82rem}.dd-allergen b{font-weight:700}.dd-actions{padding:.85rem 1.35rem calc(.85rem + env(safe-area-inset-bottom));background:var(--surface);border-top:1px solid var(--border);gap:.75rem;display:flex;position:sticky;bottom:0}.dd-add{border-radius:var(--radius-sm);flex:1;min-height:3rem}.qty{border:1.5px solid var(--border);border-radius:var(--radius-sm);align-items:center;display:inline-flex}.qty-btn{width:2.6rem;height:100%;min-height:2.6rem;color:var(--text);background:0 0;border:0;place-items:center;display:grid}.qty-btn svg{width:1.1rem;height:1.1rem}.qty-value{text-align:center;font-variant-numeric:tabular-nums;min-width:1.6rem;font-weight:700}@keyframes dd-in{0%{opacity:0;transform:translateY(12px)scale(.98)}}@keyframes dd-out{to{opacity:0;transform:translateY(12px)scale(.98)}}@keyframes sheet-in{0%{transform:translateY(100%)}}@keyframes sheet-out{to{transform:translateY(100%)}}@keyframes fade-in{0%{opacity:0}}@keyframes fade-out{to{opacity:0}}.dish-dialog[open]{animation:dd-in .22s var(--ease-out)}.dish-dialog.closing{animation:.16s ease-in forwards dd-out}.dish-dialog[open]::backdrop{animation:.22s ease-out fade-in}.dish-dialog.closing::backdrop{animation:.16s ease-in forwards fade-out}@media (width<=600px){.dish-dialog{border-radius:var(--radius) var(--radius) 0 0;border-top-left-radius:max(var(--radius), 14px);border-top-right-radius:max(var(--radius), 14px);width:100vw;max-height:92dvh;margin:auto 0 0}.dish-dialog[open]{animation:sheet-in .32s var(--ease-out)}.dd-handle{z-index:2;background:color-mix(in srgb, var(--surface) 88%, transparent);width:2.5rem;height:.3rem;box-shadow:var(--shadow-sm);border-radius:999px;display:block;position:absolute;top:.45rem;left:50%;translate:-50%}.dish-dialog:not(.has-media) .dd-handle{background:color-mix(in srgb, var(--text) 22%, transparent);box-shadow:none}.dish-dialog.closing{animation:.24s ease-in forwards sheet-out}}.visit{gap:1rem;display:grid}@media (width>=760px){.visit{grid-template-columns:repeat(2,minmax(0,1fr))}.visit-hours{grid-row:span 2}.visit:has(.visit-reserve) .visit-hours{grid-row:auto}.visit-reserve{grid-area:2/1}}.visit-card{flex-direction:column;align-items:flex-start;gap:.75rem;display:flex}.visit-card>*{align-self:stretch}.visit-card>.btn,.visit-card>.visit-link{align-self:flex-start}.visit-title{font-family:var(--font-heading-stack);align-items:center;gap:.5rem;font-size:1.1rem;font-weight:700;display:flex}.visit-title svg{width:1.2em;height:1.2em;color:var(--accent);flex-shrink:0}.visit-subtitle{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-top:.5rem;font-size:.75rem;font-weight:700}.visit-text{font-style:normal;line-height:1.6}.visit-muted{color:var(--muted);font-size:.9rem}.visit-link{color:var(--accent);align-items:center;gap:.25rem;font-weight:650;text-decoration:none;display:inline-flex}.visit-link:hover{text-underline-offset:3px;text-decoration:underline}.visit-link svg{width:1.05em;height:1.05em}.hours{display:grid}.hours-row{border-bottom:1px solid var(--border);justify-content:space-between;align-items:baseline;gap:1rem;padding:.55rem 0;font-size:.95rem;display:flex}.hours-row:last-child{border-bottom:0}.hours-row dt{align-items:center;gap:.5rem;font-weight:600;display:flex}.hours-row dd{text-align:right;font-variant-numeric:tabular-nums}.hours-slot{white-space:nowrap;display:block}.hours-row.is-closed{color:var(--muted)}.hours-row.is-today{color:var(--accent)}.hours-today{letter-spacing:.06em;text-transform:uppercase;background:var(--accent);color:var(--on-accent);border-radius:999px;padding:.2em .5em;font-size:.65rem;font-weight:700}.hours-note{color:var(--muted);font-size:.78rem;display:block}.contact-list{gap:.35rem;display:grid}.contact-item{overflow-wrap:anywhere;align-items:center;gap:.65rem;padding:.3rem 0;text-decoration:none;display:inline-flex}.contact-item:hover{color:var(--accent)}.contact-item svg{width:1.2rem;height:1.2rem;color:var(--muted);flex-shrink:0}.social-list{gap:.5rem;display:flex}.social-link{border:1px solid var(--border);width:2.5rem;height:2.5rem;color:var(--text);border-radius:50%;place-items:center;transition:background .15s,color .15s,border-color .15s;display:grid}.social-link:hover{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.social-link svg{width:1.2rem;height:1.2rem}.legal{max-width:720px;margin:0 auto;padding:2rem 1.25rem 4rem}.legal h1{font-family:var(--font-heading-stack);margin-bottom:1.5rem;font-size:2rem;line-height:1.15}.legal h2{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin:1.75rem 0 .5rem;font-size:.78rem;font-weight:700}.legal p{line-height:1.7}.legal a{color:var(--accent);text-underline-offset:3px;overflow-wrap:anywhere}.back-link{color:var(--muted);align-items:center;gap:.35rem;margin-bottom:1.25rem;font-size:.9rem;font-weight:600;text-decoration:none;display:inline-flex}.back-link:hover{color:var(--accent)}.back-link svg{width:1.1em;height:1.1em}.not-found{text-align:center;justify-items:center;gap:.75rem;max-width:32rem;margin:0 auto;padding:4rem 1.25rem 5rem;display:grid}.not-found-code{font-family:var(--font-heading-stack);color:var(--accent);font-size:4.5rem;font-weight:700;line-height:1}.not-found h1{font-family:var(--font-heading-stack);font-size:1.8rem;line-height:1.15}.not-found-text{color:var(--muted);line-height:1.6}.not-found-links{flex-wrap:wrap;justify-content:center;gap:.75rem;margin-top:.75rem;display:flex}.scroll-top{right:calc(1rem + env(safe-area-inset-right));bottom:calc(1rem + env(safe-area-inset-bottom));z-index:44;border:1px solid var(--border);background:var(--surface);width:3rem;height:3rem;color:var(--text);box-shadow:var(--shadow-md);cursor:pointer;opacity:0;visibility:hidden;transition:opacity .2s var(--ease-out), transform .2s var(--ease-out), visibility .2s, bottom .2s var(--ease-out);border-radius:999px;place-items:center;padding:0;display:grid;position:fixed;transform:translateY(.75rem)}.scroll-top.is-visible{opacity:1;visibility:visible;transform:none}.scroll-top svg{width:1.4rem;height:1.4rem}@media (hover:hover){.scroll-top:hover{background:var(--surface-2)}}body.has-cart-bar .scroll-top{bottom:calc(5.5rem + env(safe-area-inset-bottom))}@media print{.scroll-top{display:none}}.demo-bar{padding:.5rem var(--gutter,1rem);color:#f9fafb;text-align:center;background:#111827;font:500 .8125rem/1.4 system-ui,sans-serif}.demo-bar p{margin:0}.demo-bar a{color:inherit;text-underline-offset:2px;white-space:nowrap;font-weight:700;text-decoration:underline}.text-block,.image-grid-wrap{container-type:inline-size}.text-layout{align-items:center;gap:2rem;display:grid}.text-layout:not(.has-image) .text-body{max-width:46rem}@container (width>=44rem){.text-layout.has-image{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(2rem,5vw,4rem)}.text-layout.image-left .text-media{order:-1}}.text-media img{border-radius:var(--radius);width:100%;height:auto;display:block}@container (width<=43.99rem){.text-media{order:-1}}.guest-rich-text{font-size:1.05rem;line-height:1.7}.guest-rich-text>*+*{margin-top:.9em}.guest-rich-text h2,.guest-rich-text h3{font-family:var(--font-heading-stack);margin-top:1.4em;font-size:1.35rem;line-height:1.25}.guest-rich-text ul,.guest-rich-text ol{padding-inline-start:1.4em}.guest-rich-text ul{list-style:outside}.guest-rich-text ol{list-style:decimal}.guest-rich-text li+li{margin-top:.3em}.guest-rich-text a{color:var(--accent);text-underline-offset:.15em;text-decoration:underline}.guest-rich-text a:hover{text-decoration-thickness:2px}.gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;display:grid}.gallery[data-columns="1"]{grid-template-columns:minmax(0,1fr)}@container (width>=44rem){.gallery{gap:1rem}.gallery[data-columns="3"]{grid-template-columns:repeat(3,minmax(0,1fr))}}.gallery-item img{aspect-ratio:4/3;object-fit:cover;border-radius:var(--radius);width:100%;height:100%;display:block}.gallery[data-columns="1"] .gallery-item img{aspect-ratio:auto;max-height:80vh}.gallery-item{margin:0}.gallery-link{cursor:zoom-in;border-radius:var(--radius);display:block}.gallery-link:focus-visible{outline:2px solid var(--focus);outline-offset:3px}.gallery-caption{color:var(--muted);margin-top:.4rem;font-size:.875rem;line-height:1.4}.lightbox{color:#fff;overscroll-behavior:contain;touch-action:pan-y pinch-zoom;background:#0a0a0cf7;border:0;width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;margin:0;padding:0}.lightbox[open]{place-items:center;display:grid}.lightbox::backdrop{background:0 0}.lightbox-figure{flex-direction:column;justify-content:center;align-items:center;gap:.75rem;width:100%;height:100%;margin:0;padding:3.5rem 1rem 2.5rem;display:flex}.lightbox-img{object-fit:contain;border-radius:var(--radius-sm);user-select:none;-webkit-user-drag:none;max-width:100%;max-height:calc(100dvh - 9rem)}.lightbox-caption{text-align:center;max-width:48rem;font-size:.95rem;line-height:1.45}.lightbox-count{opacity:.8;margin:0;font-size:.875rem;position:absolute;top:1rem;left:1rem}.lightbox-btn{color:#fff;cursor:pointer;background:#ffffff1f;border:0;border-radius:999px;place-items:center;width:2.75rem;height:2.75rem;display:grid;position:absolute}.lightbox-btn:hover{background:#ffffff38}.lightbox-btn:focus-visible{outline-offset:2px;outline:2px solid #fff}.lightbox-btn svg{width:1.5rem;height:1.5rem}.lightbox-close{top:.75rem;right:.75rem}.lightbox-prev,.lightbox-next{top:50%;translate:0 -50%}.lightbox-prev{left:.75rem}.lightbox-next{right:.75rem}@media (hover:none){.lightbox-prev,.lightbox-next{top:auto;bottom:.75rem;translate:none}}.notice-box{background:var(--surface);border:1px solid var(--border);border-left:4px solid var(--accent);border-radius:var(--radius);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem 2rem;padding:clamp(1.25rem,3vw,2rem);display:flex}.notice-body{flex:22rem}.notice-title{font-family:var(--font-heading-stack);font-size:clamp(1.3rem,2.5vw,1.6rem);font-weight:700;line-height:1.2}.notice-text{white-space:pre-line;color:var(--muted)}.notice-title+.notice-text{margin-top:.4rem}.notice-box.notice-accent{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.notice-accent .notice-text{color:inherit}.notice-accent .notice-btn{background:var(--on-accent);color:var(--accent)}.notice-accent .notice-btn:hover{background:color-mix(in srgb, var(--on-accent) 88%, var(--accent))}.event-list-wrap,.team-wrap,.amenity-wrap{container-type:inline-size}.event-date,.team-initial,.amenity svg{background:color-mix(in srgb, var(--accent) 13%, transparent);color:color-mix(in srgb, var(--accent) 62%, var(--text))}.event-list{gap:1rem;display:grid}.event{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);grid-template-columns:auto minmax(0,1fr);align-items:start;gap:1rem 1.25rem;padding:1.1rem;display:grid}.event-date{border-radius:var(--radius-sm);align-content:center;justify-items:center;min-width:3.75rem;padding:.6rem .5rem;line-height:1;display:grid}.event.is-today .event-date{background:var(--accent);color:var(--on-accent)}.event-day{font-family:var(--font-heading-stack);font-variant-numeric:tabular-nums;font-size:1.6rem;font-weight:750}.event-month{letter-spacing:.06em;text-transform:uppercase;margin-top:.3rem;font-size:.72rem;font-weight:700}.event-title{font-family:var(--font-heading-stack);overflow-wrap:break-word;font-size:1.15rem;font-weight:700;line-height:1.25}.event-when{color:color-mix(in srgb, var(--accent) 62%, var(--text));margin-top:.25rem;font-size:.9rem;font-weight:650}.event-desc{color:var(--muted);white-space:pre-line;margin-top:.5rem;font-size:.95rem;line-height:1.5}.event-btn{margin-top:.85rem}.event-media{grid-column:1/-1}.event-media img{aspect-ratio:16/9;object-fit:cover;border-radius:var(--radius-sm);width:100%;height:auto;display:block}@container (width>=40rem){.event.has-image{grid-template-columns:auto minmax(0,1fr) 14rem}.event-media{grid-column:auto}.event-media img{aspect-ratio:4/3}}.team-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,9.5rem),1fr));gap:1.75rem 1.25rem;display:grid}@container (width>=44rem){.team-grid{grid-template-columns:repeat(auto-fit,minmax(13rem,16rem));justify-content:center;gap:2.25rem 2rem}}.team-member{text-align:center;align-content:start;justify-items:center;gap:.8rem;display:grid}.team-photo{aspect-ratio:1;object-fit:cover;border-radius:50%;width:min(100%,9rem)}.team-initial{font-family:var(--font-heading-stack);place-items:center;font-size:2.75rem;font-weight:700;display:grid}.team-name{font-family:var(--font-heading-stack);font-size:1.12rem;font-weight:700;line-height:1.25}.team-role{color:color-mix(in srgb, var(--accent) 62%, var(--text));margin-top:.2rem;font-size:.85rem;font-weight:650}.team-bio{color:var(--muted);white-space:pre-line;margin-top:.5rem;font-size:.92rem;line-height:1.5}.amenity-list{grid-template-columns:repeat(auto-fill,minmax(min(100%,14rem),1fr));gap:.85rem 1.5rem;display:grid}.amenity{align-items:center;gap:.75rem;font-weight:600;line-height:1.3;display:flex}.amenity svg{box-sizing:content-box;border-radius:50%;flex-shrink:0;width:1.4rem;height:1.4rem;padding:.5rem}.amenity-note{color:var(--muted);white-space:pre-line;margin-top:1.5rem}.wifi-box{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);flex-wrap:wrap;align-items:center;gap:1.5rem 2.5rem;padding:clamp(1.25rem,3vw,2rem);display:flex}.wifi-body{flex:15rem;min-width:0}.wifi-details{gap:1rem;display:grid}.wifi-row dt{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);font-size:.75rem;font-weight:700}.wifi-value{overflow-wrap:anywhere;margin-top:.15rem;font-size:1.3rem;font-weight:700;line-height:1.3}.wifi-password{align-items:center;gap:.6rem;display:flex}.wifi-copy{background:color-mix(in srgb, var(--text) 7%, transparent);border:0;border-radius:999px;flex-shrink:0;align-items:center;gap:.35rem;min-height:2.25rem;padding:.4rem .55rem;font-size:.8rem;font-weight:650;display:inline-flex}.wifi-copy:hover{background:color-mix(in srgb, var(--text) 12%, transparent)}.wifi-copy svg{width:1.15rem;height:1.15rem}.wifi-copied:empty{display:none}.wifi-open{margin-top:.15rem;font-weight:600}.wifi-note{color:var(--muted);white-space:pre-line;margin-top:1rem}.wifi-code{text-align:center;max-width:11rem;color:var(--muted);justify-items:center;gap:.5rem;margin-inline:auto;font-size:.8rem;line-height:1.4;display:grid}.wifi-code-img{border-radius:var(--radius-sm);background:#fff;width:10rem;padding:.5rem}.wifi-code-img svg{width:100%;height:auto}.faq-list{gap:.6rem;max-width:50rem;display:grid}.faq-item{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius)}.faq-question{cursor:pointer;justify-content:space-between;align-items:center;gap:1rem;padding:1rem 1.25rem;font-weight:650;line-height:1.35;list-style:none;display:flex}.faq-question::-webkit-details-marker{display:none}.faq-question:focus-visible{border-radius:var(--radius);box-shadow:var(--focus);outline:none}.faq-chevron{width:1.2rem;height:1.2rem;color:var(--accent);transition:rotate .2s var(--ease-out);flex-shrink:0}.faq-item[open] .faq-chevron{rotate:180deg}.faq-answer{color:var(--muted);white-space:pre-line;padding:0 1.25rem 1.1rem}@media (prefers-reduced-motion:reduce){.faq-chevron{transition:none}}.video-box{margin:0}.video-frame{aspect-ratio:16/9;border-radius:var(--radius);background:#000;position:relative;overflow:hidden}.video-el{object-fit:cover;width:100%;height:100%;display:block}.video-toggle{color:#fff;backdrop-filter:blur(6px);background:#0000008c;border:0;border-radius:50%;place-items:center;width:2.75rem;height:2.75rem;display:grid;position:absolute;bottom:.75rem;right:.75rem}.video-toggle:hover{background:#000000b3}.video-toggle:focus-visible{outline-offset:2px;outline:2px solid #fff}.video-toggle svg{width:1.2rem;height:1.2rem}.video-toggle .video-icon-pause,.video-toggle.is-playing .video-icon-play{display:none}.video-toggle.is-playing .video-icon-pause{display:block}.video-caption{color:var(--muted);text-align:center;margin-top:.6rem;font-size:.9rem}.contact-wrap{max-width:44rem;container-type:inline-size}.contact-intro{color:var(--muted);white-space:pre-line;margin-bottom:1.25rem}.contact-form{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);gap:1rem;padding:clamp(1.25rem,3vw,2rem);display:grid}.contact-row{gap:1rem;display:grid}@container (width>=32rem){.contact-row{grid-template-columns:1fr 1fr}}.contact-field{gap:.35rem;font-size:.85rem;font-weight:650;display:grid}.contact-field input,.contact-field textarea{border:1.5px solid var(--border);border-radius:var(--radius-sm);background:var(--bg);width:100%;color:var(--text);padding:.65rem .8rem;font-size:1rem;font-weight:400}.contact-field textarea{resize:vertical}.contact-field input:focus,.contact-field textarea:focus{border-color:var(--accent);box-shadow:var(--focus);outline:none}.contact-hp{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.contact-privacy{color:var(--muted);font-size:.8rem;line-height:1.5}.contact-privacy a{color:inherit;text-decoration:underline}.contact-actions{flex-wrap:wrap;align-items:center;gap:.75rem 1rem;display:flex}.contact-send:disabled{opacity:.6;cursor:progress}.contact-status{flex:14rem;font-size:.9rem;font-weight:600}.contact-status:empty{display:none}.contact-status.is-sent,.contact-status.is-demo{color:color-mix(in srgb, var(--accent) 62%, var(--text))}.contact-status.is-invalid,.contact-status.is-rate,.contact-status.is-error{color:#c0392b}.booking{max-width:48rem;container-type:inline-size}.booking-intro,.booking-note{color:var(--muted);white-space:pre-line;margin-bottom:1.25rem}.booking-unavailable{color:var(--muted)}.booking-unavailable a{color:inherit;font-weight:650}.booking-form,.booking-result{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);gap:1.5rem;padding:clamp(1.25rem,3vw,2rem);display:grid}.booking-form[hidden],.booking-result[hidden],.booking-step[hidden]{display:none}.booking-step{border:0;gap:.75rem;min-width:0;margin:0;padding:0;display:grid}.booking-step+.booking-step{border-top:1px solid var(--border);padding-top:1.5rem}.booking-step-title{margin-bottom:.75rem;padding:0;font-size:1rem;font-weight:700}.booking-services,.booking-variants{gap:.5rem;display:grid}.booking-variants{margin:.5rem 0 .25rem 1.75rem}.booking-variants[hidden]{display:none}.booking-step-head{justify-content:space-between;align-items:baseline;gap:1rem;width:100%;display:flex}.booking-change{color:var(--text);font:inherit;cursor:pointer;background:0 0;border:0;padding:0;font-size:.9rem;font-weight:650;text-decoration:underline}.booking-change[hidden],.is-collapsed .booking-group,.is-collapsed .booking-service:not(:has([data-service]:checked)),.is-collapsed .booking-variants .booking-choice:not(:has(input:checked)),.is-collapsed .booking-choice-desc{display:none}.booking-group{letter-spacing:.04em;text-transform:uppercase;color:var(--muted);margin-top:.5rem;font-size:.8rem;font-weight:700}.booking-choice,.booking-person{border:1.5px solid var(--border);border-radius:var(--radius-sm);background:var(--bg);cursor:pointer;align-items:flex-start;gap:.75rem;padding:.75rem .9rem;display:flex}.booking-choice-small{padding:.55rem .8rem}.booking-choice input,.booking-person input{accent-color:var(--accent);flex-shrink:0;margin-top:.2rem}.booking-choice:has(input:checked),.booking-person:has(input:checked){border-color:var(--accent);background:color-mix(in srgb, var(--accent) 8%, var(--bg))}.booking-choice:has(input:focus-visible),.booking-person:has(input:focus-visible){box-shadow:var(--focus)}.booking-choice-text,.booking-person-text{gap:.15rem;min-width:0;display:grid}.booking-choice-name{font-weight:650}.booking-choice-meta,.booking-choice-desc{color:var(--muted);font-size:.85rem}.booking-staff{gap:.5rem;display:grid}@container (width>=32rem){.booking-staff{grid-template-columns:repeat(auto-fill,minmax(13rem,1fr))}}.booking-person{align-items:center}.booking-person input{margin-top:0}.booking-avatar{background:color-mix(in srgb, var(--accent) 18%, var(--surface));width:2.5rem;height:2.5rem;color:var(--text);border-radius:50%;flex-shrink:0;place-items:center;font-weight:700;display:grid;overflow:hidden}.booking-avatar img{object-fit:cover;width:100%;height:100%}.booking-days{grid-template-columns:auto 1fr auto;align-items:stretch;gap:.4rem;display:grid}.booking-day-list{grid-template-columns:repeat(7,minmax(0,1fr));gap:.35rem;display:grid}.booking-page,.booking-day,.booking-time{border:1.5px solid var(--border);border-radius:var(--radius-sm);background:var(--bg);color:var(--text);font:inherit;cursor:pointer}.booking-page{min-width:2.25rem;font-size:1.25rem;line-height:1}.booking-day{justify-items:center;gap:.1rem;min-width:0;padding:.5rem .15rem;display:grid}.booking-day-name{text-transform:uppercase;font-size:.75rem;font-weight:700}.booking-day-date{white-space:nowrap;font-size:.8rem}@container (width<=30rem){.booking-day-month{display:none}.booking-days,.booking-day-list{gap:.25rem}.booking-page{min-width:1.75rem}}.booking-page:disabled,.booking-day:disabled{opacity:.4;cursor:default}.booking-day[aria-pressed=true],.booking-time[aria-pressed=true]{border-color:var(--accent);background:var(--accent);color:var(--on-accent)}.booking-page:focus-visible,.booking-day:focus-visible,.booking-time:focus-visible{box-shadow:var(--focus);outline:none}.booking-times{min-height:3rem;color:var(--muted);gap:1rem;display:grid}.booking-time-group{gap:.4rem;display:grid}.booking-time-label{color:var(--muted);font-size:.8rem;font-weight:650}.booking-time-list{grid-template-columns:repeat(auto-fill,minmax(4.5rem,1fr));gap:.4rem;display:grid}.booking-time{font-variant-numeric:tabular-nums;padding:.5rem .25rem;font-weight:650}.booking-time:hover,.booking-day:not(:disabled):hover,.booking-page:not(:disabled):hover{border-color:var(--accent)}.booking-summary{border-radius:var(--radius-sm);background:color-mix(in srgb, var(--accent) 10%, var(--bg));padding:.75rem .9rem;font-weight:650}.booking-row{gap:1rem;display:grid}@container (width>=32rem){.booking-row{grid-template-columns:1fr 1fr}}.booking-hint{color:var(--muted);font-size:.8rem;font-weight:400}.booking-status{flex:14rem;font-size:.9rem;font-weight:600}.booking-status:empty{display:none}.booking-status.is-ok,.booking-status.is-demo{color:color-mix(in srgb, var(--accent) 62%, var(--text))}.booking-status.is-error{color:#c0392b}.booking-empty .btn{white-space:normal}.booking-result{gap:1rem}.booking-result:focus{outline:none}.booking-result-text{font-size:1.05rem;font-weight:650}.booking-result-actions{flex-wrap:wrap;gap:.75rem;display:flex}.booking-manage .section-inner{gap:1.5rem;max-width:48rem;display:grid}.booking-manage-card{gap:1rem}.booking-manage-status{background:color-mix(in srgb, var(--accent) 16%, var(--bg));border-radius:999px;justify-self:start;padding:.25rem .75rem;font-size:.85rem;font-weight:700}.booking-manage-status.is-cancelled,.booking-manage-status.is-declined{background:color-mix(in srgb, #c0392b 14%, var(--bg))}.booking-manage-details{grid-template-columns:max-content 1fr;gap:.5rem 1.25rem;display:grid}.booking-manage-details dt{color:var(--muted)}.booking-manage-details dd{margin:0;font-weight:650}.booking-move>summary{cursor:pointer;justify-self:start;margin-bottom:1rem;list-style:none}.booking-move>summary::-webkit-details-marker{display:none}.booking-manage-back a{color:var(--muted)}.daily-note{max-width:46rem;color:var(--muted);white-space:pre-line;margin-bottom:1.25rem}.daily-list{gap:1.75rem;display:grid}.daily-day-title{font-family:var(--font-heading-stack);flex-wrap:wrap;align-items:center;gap:.6rem;margin-bottom:.75rem;font-size:1.2rem;font-weight:700;line-height:1.25;display:flex}.daily-today{background:var(--accent);color:var(--on-accent);font-family:var(--font-body-stack);letter-spacing:.05em;text-transform:uppercase;border-radius:999px;padding:.35em .65em;font-size:.7rem;font-weight:700;line-height:1}.daily-group+.daily-group{margin-top:1.1rem}.daily-line-title{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;margin-bottom:.5rem;font-size:.75rem;font-weight:700;line-height:1.3}.dish-regular-price{color:var(--muted);margin-inline-end:.4em;font-size:.85em;font-weight:400}.daily-period{margin-bottom:1rem;font-weight:600}.daily-offers{flex-wrap:wrap;gap:.75rem;margin:0 0 1.5rem;padding:0;list-style:none;display:flex}.daily-offer{background:color-mix(in srgb, var(--accent) 10%, var(--surface));border:1px solid color-mix(in srgb, var(--accent) 35%, var(--border));border-radius:var(--radius);flex:16rem;grid-template-columns:minmax(0,1fr) auto;gap:.15rem 1rem;max-width:30rem;padding:.85rem 1.1rem;display:grid}.daily-offer-name{font-family:var(--font-heading-stack);font-weight:700;line-height:1.3}.daily-offer-price{white-space:nowrap;grid-area:1/2;font-weight:700}.daily-offer-desc{color:var(--muted);grid-column:1/-1;font-size:.9rem;line-height:1.4}.daily-legend{max-width:46rem;color:var(--muted);margin-top:1.25rem;font-size:.8rem;line-height:1.5}.daily-legend-code{font-weight:700}.daily-wrap{container-type:inline-size}.daily-table-wrap{display:none}@container (width>=46rem){.daily-wrap.has-table:not(.is-wide) .daily-table-wrap{display:block}.daily-wrap.has-table:not(.is-wide) .daily-list,.daily-wrap.has-table:not(.is-wide) .daily-ai-note{display:none}}@container (width>=60rem){.daily-wrap.has-table.is-wide .daily-table-wrap{display:block}.daily-wrap.has-table.is-wide .daily-list,.daily-wrap.has-table.is-wide .daily-ai-note{display:none}}.daily-table{table-layout:fixed;border-collapse:separate;border-spacing:0;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);width:100%;overflow:hidden}.daily-table th,.daily-table td{text-align:start;vertical-align:top;padding:.85rem .9rem}.daily-table tbody th,.daily-table tbody td{border-top:1px solid var(--border)}.daily-table :is(th,td)+:is(th,td){border-inline-start:1px solid var(--border)}.daily-table thead th{font-family:var(--font-heading-stack);font-size:1rem;font-weight:700;line-height:1.25}.daily-table thead .daily-today{width:fit-content;margin-top:.4rem;display:block}.daily-table tbody th{width:7.5rem;color:var(--muted);letter-spacing:.06em;text-transform:uppercase;font-size:.75rem;font-weight:700}.daily-table-corner{width:7.5rem}.daily-table .is-today{background:color-mix(in srgb, var(--accent) 8%, transparent)}.daily-table .is-merged{text-align:center}.daily-table .is-merged .daily-cell-meta{justify-content:center}.daily-cell-dish+.daily-cell-dish{margin-top:.75rem}.daily-cell-dish.is-sold-out .daily-cell-name{text-decoration:line-through}.daily-cell-name{overflow-wrap:anywhere;font-weight:600;line-height:1.3;display:block}.daily-cell-desc{color:var(--muted);margin-top:.15rem;font-size:.85rem;line-height:1.4;display:block}.daily-cell-meta{flex-wrap:wrap;align-items:center;gap:.25rem .6rem;margin-top:.35rem;font-size:.85rem;display:flex}.daily-cell-price{font-weight:700}.daily-cell-meta .diet svg{width:1em;height:1em}
