/* Mobile navigation and touch-friendly controls, in the restaurant's existing palette. */
.mobile-navigation{display:none}
.button{min-height:46px;gap:10px;transition:background-color .15s,border-color .15s}
.button:hover{filter:brightness(.95)}
summary:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #a67c43;outline-offset:3px}
.text-link,.link-row a,.view-copy>a,footer>a{min-height:44px;display:inline-flex;align-items:center}
summary{min-height:44px;align-content:center}
.dish-heading h3,.dish p,.breakfast-feature h2{overflow-wrap:anywhere}
.dish-heading strong{white-space:normal}
.live-status{color:#4e5e52}
@media(max-width:760px){
 html{scroll-padding-top:74px}
 body{padding-bottom:calc(76px + env(safe-area-inset-bottom))}
 header{padding:0 5%;gap:9px}
 header>.brand{margin-right:auto;flex-shrink:0}
 header nav{flex:none}
 .brand strong{font-size:25px}
 .brand small{font-size:7px;letter-spacing:1.8px}
 header nav .menu-primary{padding:9px 13px;min-width:60px}
 .mobile-navigation{display:block;position:static;border:0;padding:0;direction:ltr}
 .mobile-navigation>summary{display:grid;place-items:center;width:44px;height:44px;padding:0;list-style:none;border:1px solid #bdc5b6;border-radius:4px;cursor:pointer}
 .mobile-navigation>summary::-webkit-details-marker{display:none}
 .mobile-navigation[open]>summary{background:#e9ecdf;border-color:var(--ink)}
 .mobile-page-list{position:absolute;top:calc(100% + 7px);left:5%;right:5%;max-height:calc(100dvh - 180px);overflow-y:auto;background:var(--paper);padding:9px;border:1px solid #d4d9cb;border-radius:6px;box-shadow:0 12px 30px #12251c26;display:grid;gap:3px}
 .mobile-page-list a{display:flex;align-items:center;min-height:46px;padding:10px 14px;border-radius:4px;font-size:14px}
 .mobile-page-list a[aria-current]{background:var(--ink);color:var(--paper)}
 .hero{height:auto;min-height:560px;padding-top:54px;padding-bottom:95px}
 .hero .actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;max-width:360px}
 .hero .actions .button{padding:12px 10px;font-size:12px}
 .hero h1{font-size:clamp(37px,11.5vw,45px)}
 .menu-toolbar input,.menu-toolbar select{font-size:16px}
 .menu-body .menu-section{scroll-margin-top:84px}
 .mobile-bar{padding:10px 12px max(10px,env(safe-area-inset-bottom));gap:8px}
 .mobile-bar a{min-height:46px;font-size:12px}
 footer{padding-bottom:24px}
 .language-switch a{min-height:48px}
 .contact .details{grid-template-columns:1fr}
}
@media(max-width:350px){.brand strong{font-size:23px}.brand small{font-size:6.5px;letter-spacing:1.2px}header{gap:7px}.hero .actions{grid-template-columns:1fr}.language-switch{gap:6px}.language-switch a{padding:6px 10px 6px 6px}}
@media(prefers-reduced-motion:reduce){.button{transition:none}}
