/* The native Navigation block owns focus, Escape and menu state. */
body .lf-header .wp-block-navigation__container { gap:clamp(16px,2vw,30px); }
body .lf-header .lf-nav-book>a { padding:12px 18px; border:1px solid #fff; min-height:46px; display:flex; align-items:center; }
body .lf-header .lf-nav-book>a:hover { background:#fff; color:#ab2a23; }
body .lf-header .wp-block-navigation__responsive-container-open,
body .lf-header .wp-block-navigation__responsive-container-close { width:48px; height:48px; align-items:center; justify-content:center; }
body .lf-header .wp-block-navigation__responsive-container.is-menu-open { background:#f8f5ef; color:#ab2a23; padding:24px max(24px,env(safe-area-inset-right)) max(24px,env(safe-area-inset-bottom)) max(24px,env(safe-area-inset-left)); overflow-y:auto; }
body .lf-header .is-menu-open .wp-block-navigation__responsive-container-close { top:0; right:0; color:#ab2a23; display:flex; }
body .lf-header .is-menu-open .wp-block-navigation__responsive-container-content { padding-top:72px; align-items:stretch; gap:28px; min-height:calc(100svh - 48px); }
body .lf-header .is-menu-open .wp-block-navigation__container { align-items:stretch; width:100%; gap:0; }
body .lf-header .is-menu-open .wp-block-navigation-item { width:100%; align-items:stretch; }
body .lf-header .is-menu-open .wp-block-navigation-item__content { display:block; width:100%; padding:14px 0; border-bottom:1px solid #d8cec4; color:#ab2a23; font:400 clamp(32px,8vw,46px)/1.1 "Cormorant Garamond",serif; letter-spacing:-.025em; text-align:left; }
body .lf-header .is-menu-open .lf-nav-book { margin-top:24px; }
body .lf-header .is-menu-open .lf-nav-book>a { display:flex; justify-content:center; padding:17px 16px; background:#ab2a23; color:#fff; border:1px solid #ab2a23; font:500 15px/1.4 Manrope,sans-serif; letter-spacing:0; }
body .lf-header .is-menu-open .lf-nav-book>a:hover { background:#85231e; }
body .lf-header .is-menu-open .wp-block-navigation__responsive-container-content::after { content:""; display:block; flex:0 0 auto; width:100%; height:clamp(110px,20svh,190px); margin-top:auto; background:url('images/restaurant-clean-small.webp') center 54% / cover no-repeat; }
body .lf-header .is-menu-open :is(a,button):focus-visible { outline:2px solid #235a43; outline-offset:4px; }
@media (max-width:1200px) {
 body .lf-header .wp-block-navigation__responsive-container:not(.is-menu-open) { display:none; }
 body .lf-header .wp-block-navigation__responsive-container-open { display:flex; }
}
@media (min-width:1201px) {
 body .lf-header .wp-block-navigation__responsive-container-open { display:none; }
}
@media (max-height:600px) {
 body .lf-header .is-menu-open .wp-block-navigation__responsive-container-content::after { display:none; }
 body .lf-header .is-menu-open .wp-block-navigation-item__content { font-size:30px; padding-block:10px; }
}
/* Core Navigation sets its modal background with !important. */
body .lf-header .wp-block-navigation__responsive-container.is-menu-open { background-color:#f8f5ef!important; }
body.admin-bar .lf-header .is-menu-open .wp-block-navigation__responsive-container-content { min-height:calc(100svh - 94px); }
body .lf-header .is-menu-open .wp-block-navigation-item__content { min-height:56px; }

/* Weekly specials use native Gutenberg groups, headings and buttons. */
.lf-weekly{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:8vw;padding:80px 8vw;background:#f0ebe3;color:#231e19;scroll-margin-top:32px}
.lf-weekly h2{font:400 clamp(48px,5.6vw,84px)/1.02 "Cormorant Garamond",serif;letter-spacing:-.025em;margin:0 0 28px}
.lf-weekly h2 em{color:#ab2a23}.lf-weekly p{font-size:14px;line-height:1.75}
.lf-weekly .lf-weekly-date{font-weight:600}.lf-weekly .lf-weekly-price{font:400 54px/1.2 "Cormorant Garamond",serif;margin:24px 0 12px;color:#ab2a23}.lf-weekly-price span{font:400 14px/1.5 Manrope,sans-serif;color:#231e19}
.lf-weekly .wp-block-buttons{margin-top:28px}.lf-weekly .wp-block-button__link{min-height:48px;white-space:normal;line-height:1.5}
.lf-weekly-dishes{margin:0!important}.lf-weekly-dish{padding:19px 0;border-top:1px solid #cfc4b8;margin:0!important}.lf-weekly-dish h3{font:400 clamp(26px,2.4vw,35px)/1.18 "Cormorant Garamond",serif;margin:0}.lf-weekly-dish p{margin:8px 0 0}.lf-weekly .lf-weekly-note{font-size:12px;margin:20px 0 0}
.lf-menu .lf-arancini-link{margin:0 3vw 14px;font:400 30px/1.3 "Cormorant Garamond",serif}.lf-arancini-link a{display:inline-flex;align-items:center;min-height:48px;color:#ab2a23}
@media(max-width:800px){.lf-weekly{grid-template-columns:1fr;padding:52px 24px;gap:32px}.lf-weekly h2{font-size:52px}.lf-weekly .lf-weekly-price{font-size:48px}.lf-weekly .wp-block-button,.lf-weekly .wp-block-button__link{width:100%}.lf-menu .lf-arancini-link{margin:0 0 14px;font-size:27px}}

/* Weekly Orderable cards: comfortable touch targets. */
.lf-weekly-order .orderable-button{min-height:48px}
.lf-weekly-order>h2{font-size:clamp(36px,4.5vw,64px)!important;line-height:1.1}
.lf-weekly-dish--with-photo{display:grid;grid-template-columns:96px minmax(0,1fr);align-items:center;gap:20px}
.lf-weekly-dish .lf-weekly-photo{display:block;width:96px;height:96px;object-fit:cover;border-radius:12px;margin:0}
.lf-weekly-dish-copy{min-width:0;margin:0}
@media(max-width:800px){.lf-weekly-dish--with-photo{grid-template-columns:72px minmax(0,1fr);gap:16px}.lf-weekly-dish .lf-weekly-photo{width:72px;height:72px}.lf-weekly-dish--with-photo h3{font-size:26px}}
