
/* Persistent browsing and contact navigation, 2026-10-12. */
:root{--persistent-header-height:112px;--persistent-contact-height:70px}
html{scroll-padding-top:calc(var(--persistent-header-height) + 12px);scroll-padding-bottom:calc(var(--persistent-contact-height) + 12px)}
body.persistent-nav-page{padding-top:var(--persistent-header-height);padding-bottom:calc(var(--persistent-contact-height) + 20px)}
.persistent-nav-page [id]{scroll-margin-top:12px;scroll-margin-bottom:12px}
.persistent-header{position:fixed!important;inset:0 0 auto!important;width:100%!important;max-width:none!important;margin:0!important;z-index:120!important;background:var(--persistent-paper,#fff)!important;border-bottom:1px solid var(--persistent-line,#d7d7d0);box-shadow:0 2px 10px #00000009;padding-top:env(safe-area-inset-top,0px)}
.persistent-header a,.persistent-header button,.persistent-header summary{min-height:44px}
.persistent-contact{position:fixed;inset:auto 0 0;z-index:130;display:flex;justify-content:center;align-items:stretch;gap:0;background:var(--persistent-paper,#fff);color:var(--persistent-ink,#222);border-top:1px solid var(--persistent-line,#d7d7d0);box-shadow:0 -2px 12px #0000000a;padding:8px max(12px,env(safe-area-inset-right,0px)) calc(8px + env(safe-area-inset-bottom,0px)) max(12px,env(safe-area-inset-left,0px));max-height:45vh;max-height:45dvh;overflow-y:auto}
.persistent-contact>a{flex:1 1 0;max-width:360px;min-width:0;min-height:48px;display:flex;align-items:center;justify-content:center;text-align:center;text-decoration:none!important;padding:8px 14px;font-size:1rem;line-height:1.4;font-weight:700;overflow-wrap:anywhere}
.persistent-contact>a+a{border-left:1px solid var(--persistent-line,#d7d7d0)}
.persistent-contact>a:first-child{background:var(--persistent-accent,#29432d);color:var(--persistent-button-ink,#fff)}
.persistent-contact>a:hover{filter:brightness(.95)}
.persistent-contact a:focus-visible{outline:3px solid var(--persistent-focus,#c77427);outline-offset:-5px}
.persistent-header :focus-visible{outline:3px solid var(--persistent-focus,#c77427);outline-offset:3px}
.persistent-header .mobile-menu nav,.persistent-header .global-nav,.persistent-header #site-nav{overscroll-behavior:contain}
@media(max-width:1199px){.persistent-header .mobile-menu nav{max-height:calc(100vh - var(--persistent-header-height) - var(--persistent-contact-height) - 20px);max-height:calc(100dvh - var(--persistent-header-height) - var(--persistent-contact-height) - 20px);overflow-y:auto}}
@media(max-width:767px){.persistent-contact>a{font-size:.9375rem;padding-inline:8px}.persistent-header #site-nav,.persistent-header .global-nav{max-height:calc(100vh - var(--persistent-header-height) - var(--persistent-contact-height) - 20px);max-height:calc(100dvh - var(--persistent-header-height) - var(--persistent-contact-height) - 20px);overflow-y:auto}.persistent-header #site-nav{position:absolute;top:100%;left:0;right:0;width:100%;background:var(--persistent-paper);padding:12px 20px;box-shadow:0 7px 12px #00000012}}
.persistent-nav-page .fixed-contact,.persistent-nav-page .mobile-contact,.persistent-nav-page .fixed-reservation,.persistent-nav-page .sticky-cta,.persistent-nav-page .mobile-nav,.persistent-nav-page .mobile-actions,.persistent-nav-page>.mobile-action{display:none!important}
.persistent-nav-page .skip-link{z-index:200}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.persistent-header *,.persistent-contact *{transition:none}}
@media print{.persistent-header{position:static!important}.persistent-contact{display:none}.persistent-nav-page{padding-top:0!important;padding-bottom:0!important}}
:root{--persistent-paper:#fff;--persistent-ink:#23312c;--persistent-accent:#24644e;--persistent-line:#d4e2da;}header.persistent-header{background:white;padding:10px max(20px,env(safe-area-inset-left))!important;display:flex;flex-wrap:wrap;gap:8px 24px;min-height:0}.persistent-header nav{display:flex;max-width:100%;gap:20px}.persistent-header nav .desktop-link{display:inline-flex!important}@media(max-width:700px){.persistent-header .brand{width:100%}.persistent-header nav{width:100%;flex-wrap:nowrap;justify-content:flex-start;overflow-x:auto}.persistent-header nav a{flex-shrink:0}.persistent-header .brand small{font-size:.65rem}.persistent-header .brand strong{font-size:1.2rem}}