/* The common header, footer and overlays use the current main site stylesheet. */
.site-header-spacer{height:var(--header-height)}
.archive-skip-link{position:fixed;top:8px;left:8px;z-index:1000;padding:10px 16px;background:#fff;border:1px solid #333;transform:translateY(-160%)}
.archive-skip-link:focus{transform:none}
.language-grid a{display:flex;align-items:center;justify-content:space-between;gap:14px;text-align:start;padding:14px 18px;background:rgba(255,255,255,.55);border:1px solid rgba(47,49,47,.12);border-radius:13px;font-size:13px}
.language-grid a span{font-size:11px;color:#6a6a6d}
.language-grid a.is-selected{background:#e7e2db;border-color:#c1b9af}
.language-grid a:hover{background:#eeeae4}
.language-panel .language-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
@media(max-width:600px){.language-panel .language-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
.mahina-language-code{display:inline}
.language-globe{display:block;width:14px;height:14px}
.language-trigger .mahina-language-chevron{width:8px;height:6px}
.site-footer nav [aria-current=page]{color:var(--ink-strong)}
.popup-navigation [aria-current=page]{color:var(--ink-strong);background:rgba(0,0,0,.04)}
.reservation-guide{margin:12px 0 22px;line-height:1.7;font-size:13px;color:var(--ink-soft)}
.menu-panel,.reservation-panel,.language-panel{max-height:calc(100dvh - 44px);overflow-y:auto;overscroll-behavior:contain}
.site-shell :focus-visible{outline:2px solid #695052;outline-offset:4px}
@media(prefers-reduced-motion:reduce){.site-header,.site-shell *{scroll-behavior:auto!important}}
