/* One navigation treatment across all public pages. Desktop links retain their layout. */
#main-nav .mobile-nav-icon,#main-nav .mobile-nav-chevron{display:none}
.mobile-navigation{border:0;border-radius:0;padding:0;margin:0;width:100%;max-width:none;height:100dvh;max-height:none;inset:0;background:#fffaf0;color:#2b1714;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#d8b673 #fffaf0;-webkit-overflow-scrolling:touch}
.mobile-navigation::backdrop{background:#fffaf0}
.mobile-navigation:not([open]){display:none}
.mobile-nav-sheet{display:flex;flex-direction:column;min-height:100%;isolation:isolate;background:radial-gradient(ellipse at 50% 30%,#fffdf7,#fffaf0 75%)}
.mobile-nav-ribbon{height:24px;flex-shrink:0;background:#a80014 url("/assets/images/mobile-nav-pattern.svg?v=aabba57aa92c2e02678c1f5b9f20c14d75c9e445") center/100px 100px;border-bottom:3px solid #deb96c}
.mobile-nav-header{position:sticky;top:0;z-index:3;display:flex;gap:15px;align-items:center;min-height:110px;padding:18px max(16px,calc((100% - 720px)/2));background:linear-gradient(120deg,#fffdf7,#fffaf0);border-bottom:2px solid #e4c488;border-radius:0 0 17px 17px;box-shadow:0 10px 25px #98723910}
.mobile-nav-brand{display:flex;align-items:center;gap:12px;min-width:0;flex:1;color:#a60013;text-decoration:none}
.mobile-nav-brand img{width:72px;height:72px;object-fit:contain;flex-shrink:0}
.mobile-nav-brand>span{display:block;min-width:0}
.mobile-nav-brand strong{display:block;font:700 clamp(17px,4.5vw,28px)/1.23 Lora,Georgia,serif;letter-spacing:-.65px;overflow-wrap:anywhere}
.mobile-nav-brand small{display:block;font:400 clamp(13px,3.5vw,18px)/1.5 Lora,Georgia,serif;color:#4f4944;margin-top:3px}
.mobile-nav-close{display:grid;place-items:center;width:50px;height:50px;flex:0 0 50px;padding:12px;border:1px solid #d9ab5b;background:#fffaf1;border-radius:10px;box-shadow:0 6px 15px #976a2320;color:#a30014;cursor:pointer}
.mobile-nav-close svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:square}
.mobile-nav-main{position:relative;width:min(100%,752px);padding:20px 16px 0;margin-inline:auto}
.mobile-nav-main:before,.mobile-nav-main:after{content:'';position:absolute;width:45px;height:45px;top:-1px;background:url("/assets/../admin/assets/images/corner.svg") top left/contain no-repeat;opacity:.55;pointer-events:none}
.mobile-nav-main:before{left:0}.mobile-nav-main:after{right:0;transform:scaleX(-1)}
.mobile-nav-intro{padding:0 0 20px;text-align:center;color:#a57835}
.mobile-nav-divider{display:flex;justify-content:center;align-items:center;gap:9px;color:#d0a454}
.mobile-nav-divider:before,.mobile-nav-divider:after{content:'';height:1px;width:54px;background:linear-gradient(90deg,#d7a14b,#e7c68a)}
.mobile-nav-lotus{width:23px;height:27px;fill:currentColor;flex-shrink:0}
.mobile-nav-intro p{font:400 8px/1.6 Lora,Georgia,serif;letter-spacing:2px;margin:9px 0 0;color:#9b682d}
.mobile-navigation #main-nav{position:static;display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;width:100%;margin:0;padding:0;border:0;background:transparent;box-shadow:none}
.mobile-navigation #main-nav a{position:relative;display:flex;align-items:center;gap:12px;height:clamp(64px,8.4svh,88px);min-width:0;padding:13px 13px;border:1px solid #eac88f;border-radius:9px;background:linear-gradient(115deg,#fffcf6,#fff8ed);box-shadow:0 5px 10px #9e753c0b;color:#2b1714;text-decoration:none;text-align:left;font:600 clamp(15px,4.15vw,24px)/1.2 Lora,Georgia,serif;transition:background .16s,color .16s,transform .16s}
.mobile-navigation #main-nav a:after{display:none}
.mobile-navigation #main-nav .mobile-nav-icon{display:block;fill:currentColor;width:25px;height:29px;flex:0 0 25px;color:#bc8b3c}
.mobile-navigation #main-nav .mobile-nav-label{min-width:0;flex:1;display:block;padding:6px 0 6px 12px;border-left:1px solid #e2bf80;white-space:nowrap;letter-spacing:-.55px}
.mobile-navigation #main-nav .mobile-nav-chevron{display:block;width:8px;height:16px;flex:0 0 8px;fill:none;stroke:#b3853f;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.mobile-navigation #main-nav a.mobile-current{color:#fff8e6;border-color:#e5bd60;background:#b50018 url("/assets/images/mobile-nav-pattern.svg?v=aabba57aa92c2e02678c1f5b9f20c14d75c9e445") right center/100px 100px no-repeat;box-shadow:0 5px 15px #9907141a,inset 0 0 22px #76001035}
.mobile-navigation #main-nav a.mobile-current .mobile-nav-label{border-color:#e9bc70}
.mobile-navigation #main-nav a.mobile-current .mobile-nav-icon,.mobile-navigation #main-nav a.mobile-current .mobile-nav-chevron{color:#ffe3a3;stroke:#ffe3a3}
.mobile-navigation #main-nav a:hover{border-color:#c28d3d;background-color:#fcf0d7;transform:translateY(-1px)}
.mobile-navigation #main-nav a.mobile-current:hover{background-color:#990014}
.mobile-navigation a:focus-visible,.mobile-navigation button:focus-visible{outline:2px solid #a2722d;outline-offset:3px}
.mobile-nav-footer{position:relative;flex:1;min-height:clamp(220px,48vw,390px);margin-top:0;background:url("/assets/images/mobile-nav-footer.webp?v=950e1850a646d71d7cf2cc1de05ee45a9b7e80e4") bottom center/100% auto no-repeat;pointer-events:none}
.mobile-nav-footer-copy{position:relative;max-width:720px;margin-inline:auto;padding:20px 30px 0;text-align:center}
.mobile-nav-footer .mobile-nav-divider:before,.mobile-nav-footer .mobile-nav-divider:after{width:min(30vw,190px)}
.mobile-nav-footer p{margin:12px 0 0;color:#a16c2d;font:400 9px/1.65 Lora,Georgia,serif;letter-spacing:3px}
.mobile-navigation-open{overflow:hidden!important;scroll-behavior:auto!important}
@media(max-width:1100px){
  body .site-header #main-nav{display:none!important}
  body .site-header .mobile-toggle{display:flex!important;flex-direction:column;justify-content:center;gap:5px;flex-shrink:0;margin-left:auto}
}
@media(min-width:600px){
  .mobile-nav-header{gap:24px;min-height:135px;padding-block:20px}
  .mobile-nav-brand{gap:20px}.mobile-nav-brand img{width:90px;height:90px}.mobile-nav-close{width:62px;height:62px;flex-basis:62px;padding:16px}
  .mobile-nav-main{padding-top:28px}.mobile-nav-intro{padding-bottom:28px}.mobile-nav-intro p{font-size:11px;letter-spacing:3px}
  .mobile-nav-lotus{width:30px;height:32px}.mobile-nav-divider{gap:16px}.mobile-nav-divider:before,.mobile-nav-divider:after{width:85px}
  .mobile-navigation #main-nav{gap:17px}.mobile-navigation #main-nav a{gap:21px;padding:18px 24px;border-radius:12px}
  .mobile-navigation #main-nav .mobile-nav-icon{width:33px;height:35px;flex-basis:33px}.mobile-navigation #main-nav .mobile-nav-label{padding-left:20px;letter-spacing:0}.mobile-navigation #main-nav .mobile-nav-chevron{width:10px;flex-basis:10px;height:20px}
  .mobile-nav-footer-copy{padding-top:26px}.mobile-nav-footer p{font-size:12px;letter-spacing:4px}.mobile-nav-footer{background-size:min(100%,1050px) auto}
}
@media(max-width:599px){
  .mobile-navigation #main-nav a[data-mobile-label=Reservations]{gap:8px;font-size:clamp(14px,3.85vw,23px)}
  .mobile-navigation #main-nav a[data-mobile-label=Reservations] .mobile-nav-icon{width:23px;flex-basis:23px}
  .mobile-navigation #main-nav a[data-mobile-label=Reservations] .mobile-nav-label{padding-left:8px}
}
@media(max-width:370px){
  .mobile-nav-ribbon{height:20px}.mobile-nav-header{gap:9px;padding:16px 12px;min-height:95px}.mobile-nav-brand{gap:9px}.mobile-nav-brand img{width:57px;height:57px}.mobile-nav-brand strong{font-size:15px;letter-spacing:-.5px}.mobile-nav-brand small{font-size:11px}.mobile-nav-close{width:42px;height:44px;flex-basis:42px;padding:10px}
  .mobile-nav-main{padding-inline:12px;padding-top:16px}.mobile-nav-intro p{font-size:7px;letter-spacing:1.55px}.mobile-nav-intro{padding-bottom:16px}
  .mobile-navigation #main-nav{gap:10px}.mobile-navigation #main-nav a{gap:8px;padding:11px 10px;font-size:14px;min-height:62px}.mobile-navigation #main-nav .mobile-nav-icon{width:22px;flex-basis:22px}.mobile-navigation #main-nav .mobile-nav-label{padding-left:9px;letter-spacing:-.8px}.mobile-navigation #main-nav .mobile-nav-chevron{width:6px;flex-basis:6px}
  .mobile-navigation #main-nav a[data-mobile-label=Reservations]{font-size:12.5px;gap:6px}
  .mobile-navigation #main-nav a[data-mobile-label=Reservations] .mobile-nav-icon{width:20px;flex-basis:20px}
  .mobile-navigation #main-nav a[data-mobile-label=Reservations] .mobile-nav-label{padding-left:7px}
}
@media(max-height:500px) and (orientation:landscape){.mobile-nav-ribbon{height:14px}.mobile-nav-header{min-height:82px;padding-block:10px}.mobile-nav-brand img{width:60px;height:60px}.mobile-nav-close{width:48px;height:48px;flex-basis:48px;padding:12px}.mobile-nav-main{padding-top:16px}.mobile-nav-intro{padding-bottom:16px}.mobile-nav-footer{min-height:230px;background-size:620px auto}}
@media(prefers-reduced-motion:reduce){.mobile-navigation *{transition:none!important;scroll-behavior:auto!important}}
