:root{--s-1:4px;--s-2:8px;--s-3:12px;--s-4:16px;--s-5:24px;--s-6:32px;--s-7:48px;--s-8:64px;--s-9:96px;--s-10:128px;--gutter:clamp(16px, 4vw, 40px);--container:1240px;--ease:cubic-bezier(.2, .7, .2, 1);--t-fast:.15s;--t-med:.25s;--t-slow:.45s;--success:#1f7a45;--danger:#b3261e;--warning:#8a5a00;--header-h:72px;--field-h:48px;--btn-h:48px;--btn-pad:0 26px;--btn-fs:15px;--btn-weight:700;--btn-tt:none;--btn-ls:0;--on-primary:#fff;--focus:currentColor;--radius-btn:6px;--radius-card:12px;--radius-input:8px;--radius-chip:999px;--shadow-card:none;--shadow-dialog:0 24px 64px #00000038;--field-bg:var(--surface);--field-border:var(--line)}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}html.is-locked{overflow:hidden}body{background:var(--bg);color:var(--text);font-family:var(--font-body);font-size:var(--fs-body,16px);line-height:var(--lh-body,1.6);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;overflow-x:hidden}img,svg,video{max-width:100%;display:block}img{height:auto}h1,h2,h3,h4{color:var(--ink);font-family:var(--font-display);font-weight:var(--display-weight,700);text-wrap:balance;margin:0;line-height:1.1}p{text-wrap:pretty;margin:0 0 1em}p:last-child{margin-bottom:0}a{color:inherit}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}:focus-visible{outline:3px solid var(--focus);outline-offset:2px}[hidden]{display:none!important}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;position:absolute!important}.i{flex:none}a.logo,a.word{align-items:center;min-height:44px;display:inline-flex}.skip-link{z-index:200;background:var(--ink);color:var(--bg);transition:top var(--t-fast);border-radius:6px;padding:10px 16px;text-decoration:none;position:fixed;top:-60px;left:12px}.skip-link:focus{top:12px}.container{width:min(100% - 2 * var(--gutter), var(--container));margin-inline:auto}.section{padding-block:clamp(56px,9vw,120px)}.eyebrow{letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin:0 0 var(--s-3);font-size:13px;font-weight:700}.lead{color:var(--text);max-width:60ch;font-size:clamp(17px,1.6vw,20px)}.link{color:var(--link,var(--primary));text-underline-offset:3px;font-weight:600;text-decoration:underline;text-decoration-thickness:1px}.link:hover{text-decoration-thickness:2px}main{outline:none;min-height:60vh}.page-enter{animation:pageIn var(--t-slow) var(--ease) backwards}@keyframes pageIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}[data-reveal]{opacity:0;transition:opacity .7s var(--ease), transform .7s var(--ease);transform:translateY(24px)}[data-reveal].is-visible{opacity:1;transform:none}.btn{min-height:var(--btn-h);padding:var(--btn-pad);border-radius:var(--radius-btn);border:var(--btn-border,1px solid transparent);font-family:var(--btn-font,var(--font-body));font-size:var(--btn-fs);font-weight:var(--btn-weight);letter-spacing:var(--btn-ls);text-transform:var(--btn-tt);white-space:nowrap;cursor:pointer;transition:background-color var(--t-med) var(--ease), color var(--t-med) var(--ease), border-color var(--t-med) var(--ease), transform var(--t-med) var(--ease), box-shadow var(--t-med) var(--ease);-webkit-tap-highlight-color:transparent;justify-content:center;align-items:center;gap:10px;line-height:1.1;text-decoration:none;display:inline-flex}.btn--primary{background:var(--primary);color:var(--on-primary);border-color:var(--primary)}.btn--primary:hover{background:var(--primary-hover);border-color:var(--primary-hover)}.btn--secondary{color:var(--ink);border:var(--btn-border-2,1px solid currentColor);background:0 0}.btn--secondary:hover{background:var(--ink);color:var(--bg)}.btn--ghost{color:var(--ink);background:0 0;border-color:#0000;padding-inline:12px}.btn--ghost:hover{background:var(--tint)}.btn--danger{background:var(--danger);color:#fff;border-color:var(--danger)}.btn--danger:hover{filter:brightness(.9)}.btn--lg{min-height:calc(var(--btn-h) + 6px)}.btn--icon{width:var(--btn-h);padding:0}.btn:disabled,.btn[aria-disabled=true]{opacity:.55;cursor:not-allowed}.btn:active:not(:disabled){transform:translateY(1px)}.spinner{border:2px solid;border-right-color:#0000;border-radius:50%;width:16px;height:16px;animation:.7s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.site-header{z-index:50;transition:background-color var(--t-med), box-shadow var(--t-med), transform var(--t-med);position:sticky;top:0}.nav-links{gap:var(--s-2);margin:0;padding:0;list-style:none;display:flex}.nav-links a{text-decoration:none}.menu-btn{display:none}@media (width<=960px){.nav-links,.hide-md{display:none!important}.menu-btn{display:inline-flex}}@media (width<=480px){.hide-sm{display:none!important}}.drawer{z-index:80;opacity:0;transition:opacity var(--t-med) var(--ease);background:#0006;position:fixed;inset:0}.drawer.is-open{opacity:1}.drawer__panel{background:var(--bg);width:min(420px,100%);color:var(--ink);padding:var(--s-5);transition:transform .3s var(--ease);flex-direction:column;display:flex;position:absolute;top:0;bottom:0;right:0;overflow-y:auto;transform:translate(100%)}.drawer.is-open .drawer__panel{transform:none}.drawer__top{margin-bottom:var(--s-6);justify-content:space-between;align-items:center;display:flex}.drawer__links{gap:4px;margin:0;padding:0;list-style:none;display:grid}.drawer__links a{font-family:var(--font-display);color:var(--ink);padding:12px 0;font-size:30px;line-height:1.15;text-decoration:none;display:block}.drawer__links a[aria-current=page]{color:var(--primary)}.drawer__cta{gap:var(--s-3);padding-top:var(--s-6);margin-top:auto;display:grid}.drawer__meta{margin-top:var(--s-5);color:var(--muted);font-size:14px}.form__grid{gap:var(--s-5) var(--s-4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.field--full,.form__grid>.form__event{grid-column:1/-1}.form__event .form__grid{margin:0}@media (width<=600px){.form__grid{grid-template-columns:1fr}}.field{flex-direction:column;gap:6px;min-width:0;display:flex}.field__label{color:var(--ink);padding:0;font-size:14px;font-weight:600}.field__req{color:var(--danger)}.field__opt{color:var(--muted);font-size:13px;font-weight:400}.field__input{width:100%;min-height:var(--field-h);background:var(--field-bg);border:1px solid var(--field-border);border-radius:var(--radius-input);color:var(--ink);transition:border-color var(--t-fast), box-shadow var(--t-fast);appearance:none;padding:10px 14px;font-size:16px}.field__input:hover{border-color:var(--muted)}.field__input:focus{border-color:var(--primary);box-shadow:0 0 0 3px color-mix(in srgb, var(--primary) 22%, transparent);outline:none}textarea.field__input{resize:vertical;min-height:120px}input[type=date].field__input{min-width:0}.field__select{position:relative}.field__select:after{content:"";border-right:2px solid var(--muted);border-bottom:2px solid var(--muted);pointer-events:none;width:8px;height:8px;position:absolute;top:50%;right:16px;transform:translateY(-70%)rotate(45deg)}.field__select select{cursor:pointer;padding-right:40px}.field__hint{color:var(--muted);margin:0;font-size:13px}.field__error{color:var(--danger);min-height:0;margin:0;font-size:13px;font-weight:600}.field__error:empty{display:none}.is-invalid .field__input{border-color:var(--danger);box-shadow:0 0 0 3px color-mix(in srgb, var(--danger) 15%, transparent)}.field--inline{flex-direction:row;align-items:center;gap:10px}.field--inline .field__input{min-width:96px}.form__actions{gap:var(--s-3);margin-top:var(--s-6);flex-wrap:wrap;justify-content:space-between;align-items:center;display:flex}.form__actions>:only-child{margin-left:auto}@media (width<=600px){.form__actions{flex-direction:column-reverse;align-items:stretch}.form__actions .btn{width:100%}.form__actions>:only-child{margin-left:0}}.form--narrow{max-width:720px}.check{cursor:pointer;align-items:flex-start;gap:12px;font-size:15px;line-height:1.5;display:flex}.check input{opacity:0;width:22px;height:22px;margin:0;position:absolute}.check__box{border:1.5px solid var(--muted);border-radius:min(var(--radius-input), 6px);background:var(--field-bg);color:#0000;width:22px;height:22px;transition:all var(--t-fast);flex:none;place-items:center;margin-top:1px;display:grid}.check input:checked+.check__box{background:var(--primary);border-color:var(--primary);color:var(--on-primary)}.check input:focus-visible+.check__box{outline:3px solid var(--focus);outline-offset:2px}.is-invalid .check__box{border-color:var(--danger)}.segmented{margin:0 0 var(--s-5);border:0;flex-wrap:wrap;gap:8px;padding:0;display:flex}.segmented legend{width:100%;margin-bottom:8px}.segmented__opt{position:relative}.segmented__opt input{opacity:0;position:absolute;inset:0}.segmented__opt span{border:1px solid var(--line);border-radius:var(--radius-chip);cursor:pointer;min-height:44px;transition:all var(--t-fast);align-items:center;padding:0 18px;font-size:15px;font-weight:600;display:inline-flex}.segmented__opt input:checked+span{background:var(--ink);color:var(--bg);border-color:var(--ink)}.segmented__opt input:focus-visible+span{outline:3px solid var(--focus);outline-offset:2px}.qty{border:1px solid var(--field-border);border-radius:var(--radius-input);background:var(--field-bg);min-height:var(--field-h);align-items:center;width:fit-content;display:inline-flex}.qty__btn{width:48px;height:46px;color:var(--ink);background:0 0;border:0;place-items:center;display:grid}.qty__btn:disabled{opacity:.35;cursor:not-allowed}.qty__val{text-align:center;min-width:96px;font-weight:700}.slots-wrap{margin:var(--s-5) 0 0;border:0;padding:0}.slots-wrap legend{margin-bottom:10px}.slots{grid-template-columns:repeat(auto-fill,minmax(104px,1fr));gap:8px;display:grid}.slots .notice{grid-column:1/-1}.slot{position:relative}.slot input{opacity:0;position:absolute;inset:0}.slot span{border:1px solid var(--line);border-radius:var(--radius-input);cursor:pointer;background:var(--field-bg);min-height:48px;transition:all var(--t-fast);flex-direction:column;justify-content:center;align-items:center;font-size:15px;font-weight:600;display:flex}.slot small{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-size:11px;font-weight:600}.slot:hover span{border-color:var(--ink)}.slot input:checked+span{background:var(--primary);color:var(--on-primary);border-color:var(--primary)}.slot input:checked+span small{color:inherit}.slot input:focus-visible+span{outline:3px solid var(--focus);outline-offset:2px}.slot.is-disabled span{opacity:.45;cursor:not-allowed;background:0 0;text-decoration:line-through}.slot.is-disabled small{text-decoration:none}.chips{flex-wrap:wrap;gap:8px;display:flex}.chip{border-radius:var(--radius-chip);border:1px solid var(--line);background:var(--surface);min-height:44px;color:var(--ink);transition:all var(--t-fast);padding:0 18px;font-size:14px;font-weight:600}.chip:hover{border-color:var(--ink)}.chip[aria-pressed=true]{background:var(--ink);color:var(--bg);border-color:var(--ink)}.tabs{scrollbar-width:none;-webkit-overflow-scrolling:touch;gap:4px;display:flex;overflow-x:auto}.tabs::-webkit-scrollbar{display:none}.tab{min-height:48px;color:var(--muted);transition:color var(--t-fast), border-color var(--t-fast);background:0 0;border:0;border-bottom:2px solid #0000;flex:none;padding:0 20px;font-size:16px;font-weight:700}.tab:hover{color:var(--ink)}.tab[aria-selected=true]{color:var(--ink);border-color:var(--primary)}.search{align-items:center;display:flex;position:relative}.search .i{color:var(--muted);pointer-events:none;position:absolute;left:14px}.search__input{border:1px solid var(--line);border-radius:var(--radius-chip);background:var(--field-bg);width:240px;max-width:100%;min-height:44px;padding:0 14px 0 40px;font-size:16px}.search__input:focus{border-color:var(--primary);box-shadow:0 0 0 3px color-mix(in srgb, var(--primary) 20%, transparent);outline:none}.menu-tools{gap:var(--s-4);margin-bottom:var(--s-4);display:grid}.menu-tools__row{gap:var(--s-3);flex-wrap:wrap;justify-content:space-between;align-items:center;display:flex}@media (width<=600px){.search,.search__input{width:100%}}.menu-note{color:var(--muted);margin-bottom:var(--s-5);font-size:14px}.menu-list:focus-visible{outline-offset:8px}.diet{letter-spacing:.04em;min-width:28px;height:22px;color:var(--muted);border:1px solid;border-radius:999px;place-items:center;padding:0 6px;font-size:10px;font-weight:800;text-decoration:none;display:inline-grid}.filters{gap:var(--s-3) var(--s-5);padding-bottom:var(--s-4);border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:center;display:flex}.filters__sort{margin-left:auto}.filters__count{color:var(--muted);margin:var(--s-4) 0 var(--s-5);font-size:14px}@media (width<=600px){.filters__sort{margin-left:0}}.empty{text-align:center;padding:var(--s-8) var(--s-5);border:1px dashed var(--line);border-radius:var(--radius-card);color:var(--muted);flex-direction:column;grid-column:1/-1;align-items:center;gap:10px;display:flex}.empty h2,.empty h3{color:var(--ink);font-size:22px}.empty p{max-width:46ch;margin:0}.empty .btn,.empty__actions{margin-top:8px}.empty__actions{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.empty--inline{padding:var(--s-6);margin-top:var(--s-5)}.notice{border-radius:var(--radius-input);background:var(--tint);color:var(--ink);margin:var(--s-3) 0 0;align-items:flex-start;gap:8px;padding:12px 14px;font-size:14px;display:flex}.notice .i{margin-top:2px}.skeleton{border-radius:var(--radius-card);background:linear-gradient(90deg, var(--tint) 0%, color-mix(in srgb, var(--tint) 40%, var(--surface)) 50%, var(--tint) 100%);background-size:200% 100%;animation:1.2s linear infinite shimmer}.skeleton--row{height:168px;margin-bottom:var(--s-4)}@keyframes shimmer{to{background-position:-200% 0}}.badge{letter-spacing:.06em;text-transform:uppercase;background:var(--accent);color:var(--on-accent,var(--ink));vertical-align:middle;font-size:11px;font-weight:800;font-family:var(--font-body);border-radius:999px;align-items:center;padding:3px 10px;display:inline-flex}.status{letter-spacing:.06em;text-transform:uppercase;border-radius:999px;padding:4px 12px;font-size:12px;font-weight:800;display:inline-flex}.status--confirmed{background:color-mix(in srgb, var(--success) 14%, transparent);color:var(--success)}.status--cancelled{background:color-mix(in srgb, var(--danger) 12%, transparent);color:var(--danger)}.stepper{margin-bottom:var(--s-6)}.stepper__list{counter-reset:s;scrollbar-width:none;gap:8px;margin:0;padding:0;list-style:none;display:flex;overflow-x:auto}.stepper__item{flex:1 1 0;min-width:0}.stepper__btn{border-top:3px solid var(--line);color:var(--muted);align-items:center;gap:10px;min-height:44px;padding:10px 0;font-size:14px;font-weight:600;text-decoration:none;display:flex}.stepper__num{border:1.5px solid;border-radius:50%;flex:none;place-items:center;width:26px;height:26px;font-size:12px;font-weight:800;display:grid}.is-done .stepper__btn{color:var(--ink);border-color:var(--primary)}.is-done .stepper__num{background:var(--primary);border-color:var(--primary);color:var(--on-primary)}.is-done a.stepper__btn:hover .stepper__label{text-decoration:underline}.is-current .stepper__btn{color:var(--ink);border-color:var(--ink)}.is-current .stepper__num{background:var(--ink);color:var(--bg);border-color:var(--ink)}@media (width<=600px){.stepper__item:not(.is-current) .stepper__label{display:none}}.wizard--split{gap:var(--s-7);grid-template-columns:minmax(0,1fr) 360px;align-items:start;display:grid}@media (width<=960px){.wizard--split{gap:var(--s-5);grid-template-columns:1fr}.wizard--split .summary{order:-1}}.wizard__title{margin-bottom:var(--s-5);outline:none;font-size:clamp(26px,3vw,36px)}.wizard__lead{color:var(--muted);margin-bottom:var(--s-5);flex-wrap:wrap;align-items:center;gap:6px 10px;display:flex}.wizard__lead .i{vertical-align:-3px;display:inline}.summary{top:calc(var(--header-h) + 24px);border:1px solid var(--line);border-radius:var(--radius-card);background:var(--surface);position:sticky;overflow:hidden}.summary__head{padding:var(--s-4) var(--s-5);color:var(--ink);cursor:pointer;font-weight:700;font-family:var(--font-display);justify-content:space-between;align-items:center;font-size:20px;list-style:none;display:flex}.summary__head::-webkit-details-marker{display:none}.summary__head strong{font-family:var(--font-body);font-size:16px}@media (width>=961px){.summary__head{pointer-events:none}}.summary__body{padding:0 var(--s-5) var(--s-5)}.summary__img{aspect-ratio:16/9;object-fit:cover;border-radius:calc(var(--radius-card) - 4px);width:100%;margin-bottom:var(--s-4)}.summary__list,.summary__lines,.confirm__list{gap:10px;margin:0;display:grid}.summary__list div,.summary__lines div,.confirm__list div{justify-content:space-between;gap:16px;font-size:14px;display:flex}.summary__list dt,.summary__lines dt,.confirm__list dt{color:var(--muted)}.summary__list dd,.summary__lines dd,.confirm__list dd{color:var(--ink);text-align:right;margin:0;font-weight:600}.summary__lines{margin-top:var(--s-4);padding-top:var(--s-4);border-top:1px solid var(--line)}.summary__lines .is-discount dd{color:var(--success)}.summary__total{border-top:1px solid var(--line);padding-top:10px;font-size:16px!important}.summary__total dt,.summary__total dd{color:var(--ink)!important;font-weight:800!important}.summary__note{color:var(--success);margin-top:var(--s-4);align-items:center;gap:6px;font-size:13px;display:flex}.room-options{gap:var(--s-4);display:grid}.room-option{gap:var(--s-5);padding:var(--s-4);border:1px solid var(--line);border-radius:var(--radius-card);background:var(--surface);transition:border-color var(--t-fast), box-shadow var(--t-fast);grid-template-columns:200px minmax(0,1fr) 200px;display:grid}.room-option:hover{border-color:var(--ink)}.room-option.is-picked{border-color:var(--primary);box-shadow:0 0 0 2px var(--primary)}.room-option__img{object-fit:cover;border-radius:calc(var(--radius-card) - 4px);width:100%;height:100%;min-height:140px}.room-option__name{margin-bottom:6px;font-size:22px}.room-option__meta{color:var(--muted);flex-wrap:wrap;align-items:center;gap:4px 10px;margin-bottom:8px;font-size:13px;display:flex}.room-option__desc{font-size:15px}.room-option__price{text-align:right;flex-direction:column;justify-content:center;align-items:flex-end;gap:6px;display:flex}.room-option__price strong{color:var(--ink);font-size:26px;font-family:var(--font-display)}.room-option__price span{color:var(--muted);font-size:14px}.room-option__total{color:var(--muted);font-size:13px}.room-option__price .btn{width:100%}.room-option__sold{color:var(--danger);align-items:center;gap:6px;margin:0;font-size:14px;font-weight:700;display:flex}.room-option.is-soldout{opacity:.7}.room-option.is-soldout .room-option__img{filter:grayscale()}@media (width<=760px){.room-option{grid-template-columns:1fr}.room-option__img{aspect-ratio:16/9;height:auto}.room-option__price{text-align:left;flex-flow:wrap;justify-content:space-between;align-items:stretch}.room-option__price .btn{width:100%}}.review{gap:var(--s-4);display:grid}.review__block{padding:var(--s-4) var(--s-5);border:1px solid var(--line);border-radius:var(--radius-card);background:var(--surface)}.review__head{justify-content:space-between;align-items:baseline;margin-bottom:8px;display:flex}.review__head h3{font-size:18px}.review__small{color:var(--muted);font-size:13px}.confirm{text-align:center;align-items:center;gap:var(--s-3);max-width:640px;padding:var(--s-7) var(--s-5);border:1px solid var(--line);border-radius:var(--radius-card);background:var(--surface);flex-direction:column;margin-inline:auto;display:flex}.confirm--compact{padding:var(--s-6)}.confirm__badge{background:var(--primary);width:72px;height:72px;color:var(--on-primary);animation:pop .5s var(--ease) both;border-radius:50%;place-items:center;display:grid}@keyframes pop{0%{opacity:0;transform:scale(.4)}70%{transform:scale(1.08)}to{opacity:1;transform:none}}.confirm__title{outline:none;font-size:clamp(28px,4vw,44px)}.confirm__lead{color:var(--text)}.confirm__code{padding:var(--s-4) var(--s-6);border:1px dashed var(--ink);border-radius:var(--radius-input);margin:var(--s-3) 0;flex-direction:column;gap:4px;display:flex}.confirm__code span{text-transform:uppercase;letter-spacing:.12em;color:var(--muted);font-size:12px}.confirm__code strong{letter-spacing:.08em;color:var(--ink);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:26px}.confirm__list{text-align:left;width:100%;max-width:440px;margin:var(--s-3) 0}.confirm__actions{gap:var(--s-3);margin-top:var(--s-3);flex-wrap:wrap;justify-content:center;display:flex}.confirm__small{color:var(--muted);font-size:14px}@media (width<=600px){.confirm__actions{flex-direction:column;width:100%}.confirm__actions .btn{white-space:normal;text-align:center;width:100%}}.booking-card{margin-top:var(--s-6);padding:var(--s-5);border:1px solid var(--line);border-radius:var(--radius-card);background:var(--surface);max-width:720px}.booking-card__head{justify-content:space-between;align-items:flex-start;gap:var(--s-4);margin-bottom:var(--s-4);display:flex}.booking-card__head h3{letter-spacing:.04em;font-family:ui-monospace,Menlo,monospace;font-size:26px}.booking-card.is-cancelled h3{color:var(--muted);text-decoration:line-through}.bookbar{background:var(--surface);color:var(--ink);border-radius:var(--radius-card);box-shadow:var(--shadow-card);grid-template-columns:repeat(3,minmax(0,1fr)) auto;align-items:stretch;gap:0;display:grid;position:relative}.bookbar__field{border-right:1px solid var(--line);flex-direction:column;justify-content:center;gap:2px;min-width:0;padding:10px 18px;display:flex}.bookbar__field label{letter-spacing:.1em;text-transform:uppercase;color:var(--muted);font-size:11px;font-weight:800}.bookbar__field input,.bookbar__field select{color:var(--ink);cursor:pointer;background:0 0;border:0;width:100%;min-width:0;padding:2px 0;font-size:16px;font-weight:600}.bookbar__field input:focus,.bookbar__field select:focus{outline:none}.bookbar__field:focus-within{box-shadow:inset 0 -3px 0 var(--primary)}.bookbar__go{margin:8px}.bookbar__err{color:var(--danger);background:var(--surface);border-radius:6px;margin:8px 0 0;padding:4px 10px;font-size:14px;font-weight:700;position:absolute;top:100%;left:0}.bookbar__err:empty{display:none}@media (width<=760px){.bookbar{grid-template-columns:1fr 1fr}.bookbar__field{border-bottom:1px solid var(--line)}.bookbar__field:nth-child(2){border-right:0}.bookbar__field:nth-child(3){border-right:0;grid-column:1/-1}.bookbar__go{grid-column:1/-1}}.dialog{width:100%;max-width:min(560px,100vw - 32px);color:var(--ink);background:0 0;border:0;padding:0}.dialog--wide{max-width:min(1040px,100vw - 32px)}.dialog::backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);animation:fade var(--t-med) both;background:#0a0a0a8c}.dialog__panel{background:var(--bg);border-radius:var(--radius-card);box-shadow:var(--shadow-dialog);padding:var(--s-5);animation:dlgIn .28s var(--ease) both}.dialog.is-closing .dialog__panel{animation:.18s ease-in both dlgOut}.dialog__head{justify-content:space-between;align-items:center;gap:var(--s-4);margin-bottom:var(--s-4);display:flex}.dialog__title{font-size:24px}.dialog__close{background:var(--tint);width:44px;height:44px;color:var(--ink);border:0;border-radius:50%;flex:none;place-items:center;display:grid}.dialog__actions{justify-content:flex-end;gap:var(--s-3);margin-top:var(--s-5);flex-wrap:wrap;display:flex}@keyframes fade{0%{opacity:0}}@keyframes dlgIn{0%{opacity:0;transform:translateY(16px)scale(.98)}}@keyframes dlgOut{to{opacity:0;transform:translateY(12px)}}@media (width<=600px){.dialog:not(.dialog--wide){max-width:100vw;margin:auto 0 0}.dialog:not(.dialog--wide) .dialog__panel{border-radius:var(--radius-card) var(--radius-card) 0 0;padding-bottom:calc(var(--s-5) + env(safe-area-inset-bottom));animation-name:sheetIn}.dialog__actions{flex-direction:column-reverse}.dialog__actions .btn{width:100%}}@keyframes sheetIn{0%{transform:translateY(100%)}}.lightbox__fig{margin:0}.lightbox__fig img{object-fit:contain;border-radius:calc(var(--radius-card) - 4px);background:#000;width:100%;max-height:70vh}.lightbox__nav{justify-content:center;align-items:center;gap:var(--s-4);margin-top:var(--s-4);display:flex}.lightbox__nav .btn{border:1px solid var(--line)}.toasts{z-index:100;pointer-events:none;gap:8px;width:min(440px,100vw - 32px);display:grid;position:fixed;bottom:24px;left:50%;transform:translate(-50%)}.toast{border-radius:var(--radius-input);background:var(--ink);color:var(--bg);opacity:0;transition:all .3s var(--ease);pointer-events:auto;align-items:center;gap:10px;padding:12px 12px 12px 16px;font-size:15px;font-weight:600;display:flex;transform:translateY(16px);box-shadow:0 12px 32px #00000040}.toast.is-in{opacity:1;transform:none}.toast span{flex:1}.toast--success .i:first-child{color:#7bd89a}.toast--error .i:first-child{color:#ff8a80}.toast__close{width:32px;height:32px;color:inherit;background:0 0;border:0;border-radius:50%;place-items:center;display:grid}.faq{border-top:1px solid var(--line)}.faq details{border-bottom:1px solid var(--line)}.faq summary{justify-content:space-between;align-items:center;gap:var(--s-4);cursor:pointer;color:var(--ink);min-height:44px;padding:20px 0;font-size:18px;font-weight:700;list-style:none;display:flex}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:"";width:12px;height:12px;transition:transform var(--t-med) var(--ease);border-bottom:2px solid;border-right:2px solid;flex:none;transform:rotate(45deg)translate(-3px,-3px)}.faq details[open] summary:after{transform:rotate(-135deg)translate(-3px,-3px)}.faq details p{max-width:70ch;padding:0 0 20px;animation:.3s both fade}.newsletter__row{gap:8px;display:flex}.newsletter__row .field__input{flex:1;min-width:0}.newsletter__done{align-items:center;gap:8px;font-weight:700;display:flex}@media (width<=420px){.newsletter__row{flex-direction:column}}.switcher{z-index:70;font-family:Inter Variable,system-ui,sans-serif;font-size:13px;position:fixed;bottom:12px;left:12px}.switcher__btn{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);color:#fff;cursor:pointer;opacity:.75;background:#111111d6;border-radius:999px;justify-content:center;align-items:center;gap:8px;min-width:44px;min-height:44px;padding:0 14px;list-style:none;transition:opacity .2s;display:inline-flex;box-shadow:0 6px 18px #00000038}.switcher__btn:hover,.switcher[open] .switcher__btn,.switcher__btn:focus-visible{opacity:1}.switcher__label{font-weight:600}.switcher:not([open]) .switcher__label{display:none}.switcher:not([open]) .switcher__btn{width:44px;padding:0}.switcher__btn::-webkit-details-marker{display:none}.switcher__dot{background:#7cff9b;border-radius:50%;width:8px;height:8px}.switcher__panel{color:#111;background:#fff;border-radius:14px;width:250px;padding:12px;position:absolute;bottom:calc(100% + 8px);left:0;box-shadow:0 16px 40px #00000040}.switcher__title{letter-spacing:.1em;text-transform:uppercase;color:#666;margin:4px 8px 8px;font-size:11px;font-weight:700}.switcher ul{margin:0;padding:0;list-style:none}.switcher li a{color:#111;border-radius:8px;justify-content:space-between;align-items:center;padding:10px 8px;font-weight:600;text-decoration:none;display:flex}.switcher li a:hover,.switcher li a[aria-current]{background:#f1f1f1}.switcher small{color:#666;font-weight:400}.switcher__all{color:#111;margin:8px 8px 4px;font-weight:600;display:block}@media (width<=600px){.switcher{font-size:12px;bottom:8px;left:8px}}.announce{z-index:55;background:var(--announce-bg,var(--ink));min-height:44px;color:var(--announce-fg,var(--bg));text-align:center;justify-content:center;align-items:center;gap:12px;padding:6px 48px;font-size:13px;line-height:1.4;display:flex;position:relative}.announce p{margin:0}.announce__x{width:44px;height:44px;color:inherit;cursor:pointer;opacity:.8;background:0 0;border:0;font-size:20px;line-height:1;position:absolute;top:50%;right:0;translate:0 -50%}.announce__x:hover{opacity:1}@media print{.switcher,.site-header,.site-footer{display:none}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}[data-reveal]{opacity:1;transform:none}}input[type=date],input[type=time]{cursor:pointer}@supports (appearance:base-select){select{appearance:base-select!important}::picker(select){appearance:base-select!important}select{cursor:pointer}.field__select select::picker-icon{display:none}select::picker-icon{color:currentColor;transition:rotate .2s}select:open::picker-icon{rotate:180deg}::picker(select){border:1px solid var(--picker-border,var(--line));border-radius:var(--picker-radius,var(--radius-input,8px));background:var(--picker-bg,var(--surface));color:var(--picker-ink,var(--ink));box-shadow:var(--picker-shadow,0 16px 40px #0000002e);min-width:anchor-size(width);max-height:min(340px,55vh);font:inherit;opacity:0;transition:opacity .16s, translate .16s, overlay .16s allow-discrete, display .16s allow-discrete;margin-block:6px;padding:6px;overflow-y:auto;translate:0 -4px}select:open::picker(select){opacity:1;translate:0}@starting-style{select:open::picker(select){opacity:0;translate:0 -4px}}select option{border-radius:max(0px, calc(var(--picker-radius,var(--radius-input,8px)) - 4px));min-height:44px;font-family:var(--font-body);letter-spacing:normal;text-transform:none;color:var(--picker-ink,var(--ink));cursor:pointer;background:0 0;align-items:center;gap:10px;padding:8px 12px;font-size:15px;font-weight:400;display:flex}select option:hover,select option:focus-visible{background:var(--picker-hover,var(--tint));outline:none}select option:checked{background:var(--picker-checked,color-mix(in srgb, var(--primary) 16%, var(--picker-bg,var(--surface))));font-weight:600}select option::checkmark{color:var(--primary);order:1;margin-left:auto}select option:disabled{opacity:.45;cursor:not-allowed}@media (prefers-reduced-motion:reduce){::picker(select){transition:none}}}.lookup-help{margin:var(--s-5) 0 0;padding:var(--s-4) var(--s-5);border:1px dashed var(--line);border-radius:var(--radius-card);background:var(--surface);color:var(--text);max-width:720px}.lookup-help__h{font-family:var(--font-body);letter-spacing:normal;text-transform:none;color:var(--ink);align-items:center;gap:8px;margin:0 0 4px;font-size:15px;font-weight:700;display:flex}.lookup-help__p{color:var(--muted);margin:0 0 var(--s-3);font-size:14px}.lookup-help__list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.lookup-help__btn{border:1px solid var(--line);border-radius:var(--radius-input);background:var(--bg);width:100%;min-height:48px;color:var(--ink);font:inherit;text-align:left;cursor:pointer;transition:border-color var(--t-fast), background var(--t-fast);flex-wrap:wrap;align-items:center;gap:4px 14px;padding:10px 14px;font-size:14px;display:flex}.lookup-help__btn strong{letter-spacing:.04em;color:var(--primary);font-family:ui-monospace,Menlo,monospace}.lookup-help__btn span{color:var(--muted)}.lookup-help__btn:hover{border-color:var(--primary);background:var(--tint)}.section--tight{padding-block:clamp(32px,5vw,64px)}.section--tint{background:var(--tint)}.center{margin-top:var(--s-6);justify-content:center;display:flex}.muted{color:var(--muted)}.phead{padding-block:clamp(48px,8vw,112px) clamp(32px,5vw,64px);position:relative}.phead--compact{padding-block:clamp(32px,5vw,64px) 0}.phead__inner{z-index:1;position:relative}.phead__title{font-size:var(--fs-h1-page,clamp(38px, 5.4vw, 68px));margin-bottom:var(--s-4);max-width:18ch}.phead--compact .phead__title{font-size:clamp(32px,4vw,52px)}.phead__cta{margin-top:var(--s-5);gap:var(--s-3);flex-wrap:wrap;display:flex}.rooms-grid{gap:var(--s-5);grid-template-columns:repeat(auto-fill,minmax(min(100%,320px),1fr));display:grid}.room-page{padding-block:var(--s-5) clamp(48px, 7vw, 96px)}.breadcrumbs ol{margin:0 0 var(--s-5);color:var(--muted);flex-wrap:wrap;gap:6px;padding:0;font-size:14px;list-style:none;display:flex}.breadcrumbs li+li:before{content:"/";opacity:.6;margin-right:6px}.breadcrumbs a{color:inherit;text-underline-offset:3px}.breadcrumbs a:hover{color:var(--ink)}.room-page__grid{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);align-items:start;gap:clamp(24px,5vw,72px);display:grid}@media (width<=960px){.room-page__grid{grid-template-columns:1fr}}.gallery__main{cursor:zoom-in;border-radius:var(--radius-card);background:0 0;border:0;width:100%;padding:0;display:block;position:relative;overflow:hidden}.gallery__main img{aspect-ratio:4/3;object-fit:cover;width:100%;transition:transform .6s var(--ease)}.gallery__main:hover img{transform:scale(1.03)}.gallery__hint{color:#fff;background:#0009;border-radius:999px;align-items:center;gap:6px;padding:8px 12px;font-size:13px;font-weight:600;display:inline-flex;position:absolute;bottom:12px;right:12px}.gallery__thumbs{gap:var(--s-3);margin-top:var(--s-3);grid-template-columns:repeat(3,1fr);display:grid}.gallery__thumb{border-radius:calc(var(--radius-card) - 4px);opacity:.7;transition:opacity var(--t-fast), border-color var(--t-fast);background:0 0;border:2px solid #0000;padding:0;overflow:hidden}.gallery__thumb img{aspect-ratio:4/3;object-fit:cover;width:100%}.gallery__thumb:hover{opacity:1}.gallery__thumb[aria-pressed=true]{opacity:1;border-color:var(--primary)}.room-page__info{top:calc(var(--header-h) + 24px);position:sticky}@media (width<=960px){.room-page__info{position:static}}.room-page__title{margin-bottom:var(--s-4);font-size:clamp(36px,4.4vw,60px)}.room-page__facts{margin:0 0 var(--s-5);gap:var(--s-3) var(--s-5);color:var(--ink);flex-wrap:wrap;padding:0;font-weight:600;list-style:none;display:flex}.room-page__facts li{align-items:center;gap:8px;display:inline-flex}.room-page__h{margin:var(--s-5) 0 var(--s-3);font-size:20px}.room-page__amenities{gap:10px var(--s-4);grid-template-columns:1fr 1fr;margin:0;padding:0;font-size:15px;list-style:none;display:grid}.room-page__amenities li{align-items:center;gap:8px;display:flex}.room-page__amenities .i{color:var(--primary)}.room-page__book{margin-top:var(--s-6);padding:var(--s-5);border:1px solid var(--line);border-radius:var(--radius-card);background:var(--surface);gap:var(--s-3);display:grid}.room-page__rate{color:var(--muted);align-items:baseline;gap:6px;margin:0;display:flex}.room-page__rate strong{color:var(--ink);font-size:36px;font-family:var(--font-display)}.room-page__note{color:var(--success);align-items:center;gap:6px;margin:0;font-size:13px;display:flex}.dine-layout{grid-template-columns:minmax(0,1fr) 320px;align-items:start;gap:clamp(24px,5vw,72px);display:grid}@media (width<=960px){.dine-layout{grid-template-columns:1fr}.dine-aside{order:-1;position:static!important}}.dine-aside{top:calc(var(--header-h) + 24px);gap:var(--s-4);padding:var(--s-5);border:1px solid var(--line);border-radius:var(--radius-card);background:var(--surface);display:grid;position:sticky}.dine-aside__title{font-size:22px}.dine-aside__note{color:var(--muted);margin:0;font-size:13px}.dine-aside__legend{color:var(--muted);flex-wrap:wrap;gap:8px 14px;font-size:13px;display:flex}.dine-aside__legend span{align-items:center;gap:6px;display:inline-flex}.menu-list{gap:0;display:grid}.menu-item{padding:var(--s-4) 0;border-bottom:1px solid var(--line)}.menu-item__top{align-items:baseline;gap:10px;display:flex}.menu-item__name{font-size:19px}.menu-item__dots{border-bottom:1px dotted var(--muted);opacity:.6;flex:1;min-width:16px;transform:translateY(-4px)}.menu-item__price{color:var(--ink);font-weight:700}.menu-item__desc{color:var(--text);margin:6px 0 0;font-size:15px}.menu-item__diet{gap:6px;margin-top:8px;display:flex}.menu-item--img{gap:var(--s-4);grid-template-columns:96px minmax(0,1fr);align-items:center;display:grid}.menu-item--img>img{object-fit:cover;border-radius:var(--radius-input);width:96px;height:96px}@media (width<=420px){.menu-item--img{grid-template-columns:72px minmax(0,1fr)}.menu-item--img>img{width:72px;height:72px}}.hours{gap:10px;margin:0;display:grid}.hours div{justify-content:space-between;gap:12px;font-size:14px;display:flex}.hours dt{color:var(--ink);font-weight:700}.hours dt span{color:var(--muted);font-size:13px;font-weight:400;display:block}.hours dd{text-align:right;color:var(--text);margin:0}.amenities{margin:var(--s-6) 0 0;gap:var(--s-4);grid-template-columns:repeat(auto-fill,minmax(min(100%,220px),1fr));padding:0;list-style:none;display:grid}.amenities li{padding:var(--s-4);background:var(--surface);border-radius:var(--radius-card);border:1px solid var(--line);color:var(--ink);align-items:center;gap:12px;font-weight:600;display:flex}.amenities .i{color:var(--primary)}.events-block__grid{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);align-items:center;gap:clamp(24px,5vw,72px);display:grid}@media (width<=860px){.events-block__grid{grid-template-columns:1fr}}.events-block__img{aspect-ratio:16/10;object-fit:cover;border-radius:var(--radius-card);width:100%}.events-block__cap{gap:var(--s-3);margin:var(--s-5) 0;grid-template-columns:repeat(3,1fr);display:grid}.events-block__cap div{padding:var(--s-3);border:1px solid var(--line);border-radius:var(--radius-input)}.events-block__cap dt{color:var(--muted);font-size:12px}.events-block__cap dd{color:var(--ink);margin:4px 0 0;font-weight:800}@media (width<=480px){.events-block__cap{grid-template-columns:1fr}}.about-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:clamp(24px,6vw,96px);display:grid}.about-grid__text p{font-size:clamp(17px,1.6vw,21px)}.about-grid__img{aspect-ratio:4/3;object-fit:cover;border-radius:var(--radius-card);width:100%}@media (width<=860px){.about-grid{grid-template-columns:1fr}}.values{gap:var(--s-5);margin-top:var(--s-6);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}@media (width<=860px){.values{grid-template-columns:1fr}}.value{padding:var(--s-5);background:var(--surface);border-radius:var(--radius-card);border:1px solid var(--line)}.value__n{font-family:var(--font-display);color:var(--primary);margin-bottom:var(--s-3);font-size:28px;display:block}.value h3{margin-bottom:var(--s-2);font-size:22px}.hood{margin-top:var(--s-6);grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:clamp(24px,5vw,72px);display:grid}@media (width<=860px){.hood{grid-template-columns:1fr}}.hood__img{aspect-ratio:4/3;object-fit:cover;border-radius:var(--radius-card);width:100%;top:calc(var(--header-h) + 24px);position:sticky}@media (width<=860px){.hood__img{position:static}}.hood__list{margin:0;padding:0;list-style:none}.hood__list li{justify-content:space-between;gap:var(--s-4);padding:var(--s-4) 0;border-bottom:1px solid var(--line);display:flex}.hood__list h3{margin-bottom:4px;font-size:19px}.hood__list p{color:var(--muted);margin:0;font-size:15px}.hood__list span{color:var(--ink);white-space:nowrap;flex:none;font-size:14px;font-weight:700}.contact-grid{grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);align-items:start;gap:clamp(24px,6vw,96px);display:grid}@media (width<=960px){.contact-grid{grid-template-columns:1fr}}.contact-list{margin:var(--s-5) 0;gap:var(--s-4);padding:0;list-style:none;display:grid}.contact-list li{align-items:flex-start;gap:12px;display:flex}.contact-list .i{color:var(--primary);margin-top:3px}.contact-info__h,.contact-form__h{margin-bottom:var(--s-4);font-size:22px}.contact-form{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-card);padding:clamp(20px,4vw,40px)}.faq-wrap{max-width:880px}.faq-wrap .faq{margin-top:var(--s-5)}.map{aspect-ratio:4/3;border-radius:var(--radius-card);border:1px solid var(--line);background:var(--map-land,var(--tint));isolation:isolate;width:100%;min-width:0;position:relative;overflow:hidden}.map__loading{color:var(--muted);place-items:center;font-size:14px;display:grid;position:absolute;inset:0}.map .maplibregl-ctrl-group{border-radius:var(--radius-input);box-shadow:none;border:1px solid var(--line);background:var(--surface)}.map .maplibregl-ctrl-group button{width:44px;height:44px}@media (width<=480px){.map:not(.map--noir){aspect-ratio:1}}.map .maplibregl-ctrl-attrib{font-size:11px}.map .maplibregl-cooperative-gesture-screen{font-family:var(--font-body)}.map-pin{cursor:default;flex-direction:column;align-items:center;gap:6px;display:flex}.map-pin__label{border-radius:var(--radius-chip);background:var(--map-pin,var(--primary));color:var(--map-pin-ink,var(--on-primary));font:700 13px/1 var(--font-body);white-space:nowrap;order:-1;padding:6px 12px;box-shadow:0 6px 16px #0003}.map-pin__dot{background:var(--map-pin,var(--primary));border:3px solid var(--map-halo,#fff);width:18px;height:18px;box-shadow:0 0 0 6px color-mix(in srgb, var(--map-pin,var(--primary)) 30%, transparent);animation:pinPulse 2.2s var(--ease) infinite;border-radius:50%}@keyframes pinPulse{50%{box-shadow:0 0 0 12px color-mix(in srgb, var(--map-pin,var(--primary)) 0%, transparent)}}.map--fallback{place-items:center;display:grid}.map__fallback{text-align:center;color:var(--ink);justify-items:center;gap:12px;padding:24px;display:grid}.not-found{text-align:center;justify-items:center;gap:var(--s-3);padding-block:var(--s-8);display:grid}.not-found h1{font-size:clamp(40px,6vw,80px)}.not-found__actions{gap:var(--s-3);margin-top:var(--s-4);flex-wrap:wrap;justify-content:center;display:flex}.flow-section{min-height:50vh}
