body.menu-open{overflow:hidden}
.grain{position:fixed;inset:0;z-index:999;pointer-events:none;opacity:.025;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.92' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.9'/%3E%3C/svg%3E")}

.header{position:fixed;inset:0 0 auto;z-index:120;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:18px var(--pad);color:#fff;transition:color .8s var(--ease),background .8s var(--ease),padding .8s var(--ease),border-color .8s var(--ease)}
.header.scrolled{color:var(--brown);background:rgba(244,240,231,.88);border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);padding-top:13px;padding-bottom:13px}
.logo{justify-self:start;font:500 14px/1.35 var(--serif);letter-spacing:.15em}
.logo small{display:block;margin-bottom:3px;font:500 var(--fab-font-minimum)/1.3 var(--sans);letter-spacing:.24em;opacity:.78}
.header-place{justify-self:center;font-size:var(--fab-font-minimum);letter-spacing:.22em;white-space:nowrap;opacity:.82}
.header-actions{justify-self:end;display:flex;align-items:center;gap:8px}
.header-link{padding:10px 12px;font-size:var(--fab-font-minimum);letter-spacing:.15em}
.utility-btn{display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:0 16px;border:1px solid currentColor;border-radius:999px;background:transparent;color:inherit;font-size:var(--fab-font-minimum);letter-spacing:.16em;transition:.5s var(--ease);cursor:pointer}
.utility-btn:hover{background:var(--lemon);border-color:var(--lemon);color:var(--brown)}
.menu-btn{width:40px;padding:0}
.menu-lines{position:relative;width:13px;height:8px}
.menu-lines::before,.menu-lines::after{content:"";position:absolute;left:0;width:13px;height:1px;background:currentColor;transition:.5s var(--ease)}
.menu-lines::before{top:1px}
.menu-lines::after{bottom:1px}
.menu-open .menu-lines::before{top:3px;transform:rotate(45deg)}
.menu-open .menu-lines::after{bottom:4px;transform:rotate(-45deg)}
.menu-panel{position:fixed;inset:0;z-index:110;display:grid;place-items:center;background:rgba(52,35,20,.96);color:#f8f1e5;opacity:0;visibility:hidden;transition:.8s var(--ease)}
.menu-open .menu-panel{opacity:1;visibility:visible}
.menu-panel nav{display:grid;text-align:center;gap:20px}
.menu-panel a{font:500 max(var(--fab-font-minimum), clamp(21px,2.4vw,30px))/1.7 var(--serif);letter-spacing:.1em}
.menu-panel small{display:block;margin-top:28px;font-size:var(--fab-font-minimum);letter-spacing:.2em;color:#d9c9b4}
@media(max-width:1040px){.header{grid-template-columns:1fr auto}
.header-place,.header-link{display:none}
}
@media(max-width:760px){:root{--pad:20px}
.header{padding:14px var(--pad)}
.header.scrolled{padding-top:11px;padding-bottom:11px}
.logo{font-size:14px}
.utility-btn{min-height:36px;padding:0 13px}
.reserve-btn{display:none}
}

.header-actions{gap:3px}
.header-link-icon,.reserve-btn{display:inline-flex;align-items:center;gap:7px;white-space:nowrap}
.header-link-icon{padding-inline:9px}
.nav-icon{display:inline-flex;width:14px;height:14px;flex:0 0 auto}
.nav-icon svg,.mobile-cta-icon svg,.panel-bike svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.45;stroke-linecap:round;stroke-linejoin:round}
.reserve-btn .nav-icon{width:13px;height:13px}
.menu-panel nav{gap:13px;min-width:min(420px,82vw)}
.menu-panel nav>a{display:grid;grid-template-columns:34px 1fr;align-items:center;text-align:left;font-size:max(var(--fab-font-minimum), clamp(18px,2vw,26px))}
.mobile-reserve-cta{display:none}
@media(max-width:1240px){.header-link-icon{font-size:var(--fab-font-minimum)}
}
@media(max-width:980px){.header-link,.header .reserve-btn{display:none!important}
.header-actions{gap:8px}
.mobile-reserve-cta{position:fixed;z-index:125;left:10px;right:10px;bottom:10px;display:block;padding-bottom:env(safe-area-inset-bottom)}
.mobile-reserve-cta>a{display:grid;grid-template-columns:25px 1fr 20px;gap:13px;align-items:center;min-height:62px;padding:10px 17px;background:rgba(72,45,18,.96);color:#fffdf8;box-shadow:0 15px 42px rgba(35,22,12,.25);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}
}

