/* FIRST PREVIEW PROPOSALS: these tokens are not approved final design values. */
.website-page,.preview-shell{--website-width:1200px;--website-widget-height:640px;--header-height:72px;--site-gutter:32px;--site-red:#9c1020;--site-cream:#FFFFFF;--site-line:#e6d9cd;--site-ink:#181512;box-sizing:border-box;margin:0;background:var(--site-cream);color:var(--site-ink);font:16px/1.5 Arial,system-ui,sans-serif}
.website-page *,.preview-shell *{box-sizing:border-box}.website-page a{color:inherit}.website-page button,.website-page input,.website-page textarea{font:inherit}.website-page :focus-visible,.preview-shell :focus-visible{outline:3px solid #9c1020;outline-offset:4px}.website-page h1,.website-page h2,.website-page h3,.restaurant-name,.footer-brand{font-family:Georgia,"Times New Roman",serif;letter-spacing:-.035em}.website-page h1{font-size:56px;line-height:1.05;margin:0 0 20px}.website-page h2{font-size:40px;line-height:1.1;margin:0 0 18px}.website-page h3{font-size:24px;line-height:1.15;margin:0 0 8px}.website-page p{margin:0 0 18px}.site-container{width:calc(100% - var(--site-gutter)*2);max-width:var(--website-width);margin-inline:auto;min-width:0}.site-header{position:sticky;top:0;z-index:20;background:var(--site-cream);border-bottom:1px solid var(--site-line);box-shadow:0 2px 9px #18151212}.header-inner{min-height:72px;display:flex;align-items:center;gap:24px}.site-brand{min-width:0;flex:1;text-decoration:none}.restaurant-name{display:block;font-size:28px;font-weight:bold;line-height:1.15;overflow-wrap:anywhere}.restaurant-logo{display:block;max-width:210px;max-height:56px;width:auto;height:auto}.desktop-nav{display:flex;gap:30px;align-items:center}.site-header nav a{text-decoration:none;font-weight:600;white-space:nowrap}.site-header nav a:hover{color:var(--site-red)}.site-button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 24px;border:1px solid var(--site-red);border-radius:5px;background:var(--site-red);color:var(--site-on-accent,#fff)!important;text-decoration:none;font-weight:600;line-height:1.25;text-align:center}.site-button.secondary{color:var(--site-accent-ink,var(--site-red))!important;background:transparent}.site-button:hover{background:var(--site-red);filter:brightness(.92)}.site-button.secondary:hover{background:#fff;filter:brightness(.97)}.site-button.unavailable{opacity:.65;cursor:default}.site-actions{display:flex;gap:14px;flex-wrap:wrap;align-items:center}.mobile-nav{display:none}.website-widgets{display:grid;grid-auto-rows:minmax(var(--website-widget-height),1fr)}.website-widget{position:relative;display:flex;align-items:center;padding-block:40px;border-bottom:1px solid var(--site-line);min-width:0;scroll-margin-top:calc(var(--header-height) + 16px)}.widget-inner{min-width:0}.widget-columns{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:40px;align-items:center}.widget-text{white-space:pre-line;overflow-wrap:anywhere}.section-photo{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:6px;display:block;margin-bottom:20px}.widget-catering .section-photo{aspect-ratio:3/2}.missing-image{display:grid;place-items:center;min-height:120px;background:#FFFFFF;color:#5e5148;font-size:14px;text-align:center;padding:12px}.missing-content{color:#5e5148;font-style:italic}.widget-hero{background:#FFFFFF;color:var(--site-ink);isolation:isolate}.hero-background{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}.widget-hero:has(.hero-background:not([hidden])){color:#fff}.widget-hero:has(.hero-background:not([hidden])):before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#000b,#0002);z-index:-1}.hero-copy h1,.hero-copy .widget-text{max-width:520px}.hero-copy .widget-text{font-size:20px}.widget-hero:has(.hero-background:not([hidden])) .secondary{color:var(--site-on-accent,#fff)!important;border-color:#fff}.hero-copy .missing-content{color:#fff}.hero-location{margin:28px 0 0!important;font-size:14px}.section-heading{display:flex;gap:16px;justify-content:space-between;align-items:baseline;margin-bottom:24px}.section-heading a{color:var(--site-accent-ink,var(--site-red));font-size:14px;white-space:nowrap}.section-heading h2{margin:0}.rail-shell{position:relative;padding-right:26px;min-width:0}.product-rail{display:flex;gap:20px;overflow-x:auto;scroll-snap-type:x proximity;overscroll-behavior-inline:contain;padding:2px 1px 12px;min-width:0;max-width:100%;scrollbar-width:none;-ms-overflow-style:none}.menu-card{flex:0 0 350px;min-width:0;scroll-snap-align:start;border:1px solid var(--site-line);border-radius:8px;background:#FFFFFF;overflow-wrap:anywhere}.product-photo{width:100%;aspect-ratio:16/9;object-fit:cover;display:block;border-radius:7px 7px 0 0}.product-copy{padding:12px 16px}.product-copy p{font-size:15px;line-height:1.4;margin:0 0 10px;white-space:pre-line}.product-price{display:block;font-size:15px;font-weight:600;color:var(--site-red)}.menu-card.layout-B{flex-basis:540px;display:grid;grid-template-columns:240px minmax(0,1fr);align-items:center}.layout-B .product-photo{aspect-ratio:8/5;border-radius:7px 0 0 7px;height:auto}.menu-card.layout-C{flex-basis:240px}.layout-C h3{font-size:20px}.layout-C .product-copy{padding:10px 12px}.layout-C p{font-size:14px}.rail-next{position:absolute;right:-6px;top:50%;transform:translateY(-50%);width:44px;height:44px;padding:0;border:0;background:none;color:var(--site-accent-ink,var(--site-red));cursor:pointer}.rail-next span{display:block;border-right:2px solid currentColor;border-top:2px solid currentColor;width:17px;height:17px;transform:rotate(45deg);margin:auto}.rail-next[hidden]{display:none}.catering-form{min-width:0;padding-left:28px;border-left:1px solid var(--site-line)}.catering-form h2{font-size:34px}.catering-form fieldset{padding:0;margin:0;border:0;min-width:0}.form-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px}.form-grid label{display:grid;gap:4px;font-size:13px;font-weight:600;min-width:0}.form-grid .full{grid-column:1/-1}.form-grid input,.form-grid textarea{width:100%;min-width:0;border:1px solid var(--site-line);border-radius:5px;padding:9px;background:#FFFFFF;color:var(--site-ink)}.catering-form .site-button{width:100%;margin-top:14px;opacity:.65}.form-unavailable{font-size:13px;line-height:1.4;color:#5e5148}.opening-hours{font-size:14px;max-width:380px;margin:18px 0}.opening-hours div{display:flex;justify-content:space-between;gap:20px}.opening-hours dd{margin:0}.contact-phone{display:block;margin-top:12px}.widget-contact address{font-style:normal;font-weight:600}.map-unavailable{display:grid;place-items:center;text-align:center;background:#FFFFFF;border:1px dashed #b8a79c;border-radius:7px;aspect-ratio:3/2;padding:32px;color:#5e5148}.site-footer{border-top:1px solid var(--site-line);overflow-x:auto}.footer-inner{display:flex;align-items:center;gap:20px;min-height:64px;min-width:max-content;white-space:nowrap;font-size:13px}.footer-brand{font-size:20px;font-weight:bold;margin-right:auto}.footer-powered{display:flex;align-items:center;gap:8px;font-size:11px}.footer-powered img{width:126px;height:30px;object-fit:contain;flex-shrink:0}.footer-year{font-size:12px}.social-link{font-size:24px;color:var(--site-accent-ink,var(--site-red))!important;text-decoration:none}.footer-overflow-warning{margin:0!important;padding:12px 16px;background:#ffe5d1;color:#652b00;font-size:13px}.website-menu{padding-block:28px}.category-nav{display:flex;gap:20px;overflow-x:auto;border-bottom:1px solid var(--site-line);padding:14px 0 20px;margin-bottom:24px;white-space:nowrap}.category-nav a{color:var(--site-accent-ink,var(--site-red));font-weight:600;text-decoration:none;padding:5px 12px;border-right:1px solid var(--site-red)}.menu-category{padding:0 0 24px;margin-bottom:24px;border-bottom:1px solid var(--site-line);scroll-margin-top:calc(var(--header-height) + 16px)}.menu-category h2:after{content:"";display:block;margin-top:10px;width:48px;height:2px;background:var(--site-red)}.menu-order-cta{padding:20px 0;text-align:right}.empty-website{padding-block:64px}.preview-shell{background:#e9e6e2}.preview-toolbar{padding:12px 24px;background:#202020;color:#fff;font:14px/1.5 Arial,sans-serif}.preview-toolbar>span{margin-left:20px}.preview-toolbar nav{display:flex;gap:12px;flex-wrap:wrap;margin-top:8px}.preview-toolbar a{color:white}.preview-toolbar details{margin-top:8px}.preview-frame-wrap{overflow:auto;max-width:100%;padding:16px}.preview-frame{display:block;margin:auto;border:0;background:var(--site-cream);height:calc(100dvh - 160px);min-height:480px;box-shadow:0 4px 24px #0002}.device-desktop{width:1280px}.device-mobile{width:390px}
@media(max-width:1023px){.website-page{--site-gutter:24px;--header-height:64px}.website-widgets{display:block}.website-widget{padding-block:28px;min-height:0;height:auto}.header-inner{min-height:64px;gap:14px}.restaurant-name{font-size:23px}.restaurant-logo{max-width:170px;max-height:48px}.desktop-nav{display:none}.mobile-nav{display:block}.mobile-nav summary{cursor:pointer;list-style:none;font-size:24px;min-width:36px;min-height:44px;display:grid;place-items:center}.mobile-nav summary::-webkit-details-marker{display:none}.mobile-nav nav{position:absolute;left:0;right:0;top:100%;background:var(--site-cream);border-bottom:1px solid var(--site-line);display:grid;gap:14px;padding:20px 24px}.widget-columns{gap:24px}.hero-copy{padding-block:32px}.footer-inner{gap:14px}}
@media(max-width:767px){.website-page{--site-gutter:16px;font-size:15px}.website-page h1{font-size:36px}.website-page h2{font-size:28px}.website-page h3{font-size:20px}.header-inner{gap:10px}.restaurant-name{font-size:20px}.restaurant-logo{max-width:130px}.site-header .site-button{padding:10px 14px;font-size:13px;flex-shrink:0}.widget-columns{grid-template-columns:minmax(0,1fr)}.website-widget{padding-block:24px}.hero-copy .widget-text{font-size:16px}.hero-copy .site-button{font-size:14px;padding-inline:16px}.hero-copy h1{max-width:290px}.section-heading{align-items:center;gap:10px;margin-bottom:18px}.section-heading a{font-size:12px}.section-heading h2{font-size:25px}.product-rail{gap:12px}.menu-card{flex-basis:260px}.product-copy{padding:10px 12px}.product-copy p{font-size:14px}.menu-card.layout-B{flex-basis:300px;grid-template-columns:130px minmax(0,1fr)}.layout-B .product-photo{aspect-ratio:13/11;border-radius:7px 0 0 7px}.layout-B h3{font-size:18px}.menu-card.layout-C{flex-basis:150px}.layout-C h3{font-size:17px}.layout-C .product-copy{padding:8px}.layout-C p{font-size:13px}.product-price{font-size:14px}.section-photo{margin-bottom:14px}.catering-form{border-left:0;border-top:1px solid var(--site-line);padding:20px 0 0}.catering-form h2{font-size:28px}.map-unavailable{padding:24px}.opening-hours{font-size:13px}.footer-inner{gap:8px;min-height:56px;font-size:12px}.footer-brand{font-size:14px}.footer-powered{gap:5px;font-size:11px}.footer-powered img{width:90px;height:22px}.social-link{font-size:21px}.footer-year{font-size:12px}.website-menu{padding-top:24px}.category-nav{gap:6px;padding-top:0}.category-nav a{font-size:13px;padding-inline:10px}.form-grid{gap:10px}.preview-toolbar{padding:12px 16px}.preview-toolbar>span{display:block;margin-left:0}.preview-frame-wrap{padding:12px}}
@media(prefers-reduced-motion:reduce){.product-rail{scroll-behavior:auto}}

@media(max-width:414px){.preview-frame-wrap{padding:12px 0}}
.website-map{aspect-ratio:3/2;min-width:0;border-radius:7px}.map-ready{overflow:hidden}

.product-rail::-webkit-scrollbar{display:none}.website-page .menu-order-cta{background:var(--site-red);color:#fff;padding:24px 0;text-align:left}.menu-order-cta>.site-container{display:flex;justify-content:space-between;align-items:center;gap:24px}.menu-order-cta h2{margin:0 0 6px}.menu-order-cta p{margin:0}.menu-order-cta .site-button{background:#FFFFFF;color:var(--site-accent-ink,var(--site-red))!important;min-width:180px}.height-balanced .website-widgets{display:block}.height-balanced .website-widget{height:var(--website-row-height)}.height-balanced .website-widget:last-child.widget-contact{height:calc(var(--website-row-height) - var(--website-footer-height))}
@media(max-width:1023px){.height-balanced .website-widget,.height-balanced .website-widget:last-child.widget-contact{height:auto}}
@media(max-width:767px){.menu-order-cta>.site-container{flex-direction:column;align-items:flex-start}.menu-order-cta .site-button{align-self:center}.website-page .menu-order-cta h2{font-size:28px}}

.website-page [hidden]{display:none!important}
.widget-hero .hero-copy{text-align:center;padding-block:70px 100px}.hero-copy h1,.hero-copy .widget-text{max-width:none;margin-inline:auto}.hero-copy .widget-text{font-size:28px}.hero-next{position:absolute;bottom:16px;left:50%;transform:translateX(-50%);display:grid;place-items:center;width:44px;height:44px;color:var(--site-ink);background:none;text-decoration:none}.hero-next span{width:22px;height:22px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg)}.widget-hero:has(.hero-background:not([hidden])) .hero-next{color:white}.section-heading a{text-decoration:none;background:none}.rail-shell{padding-inline:28px}.rail-prev,.rail-next{color:var(--site-accent-ink,var(--site-red));position:absolute;top:50%;transform:translateY(-50%);width:44px;height:44px;padding:0;border:0;background:none;cursor:pointer}.rail-prev{left:-12px}.rail-next{right:-12px}.rail-prev span,.rail-next span{display:block;border-right:2px solid currentColor;border-top:2px solid currentColor;width:17px;height:17px;margin:auto}.rail-prev span{transform:rotate(-135deg)}.rail-next span{transform:rotate(45deg)}.widget-story .section-photo,.widget-catering .section-photo{aspect-ratio:3/2;border-radius:20px}.contact-phone{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--site-ink)}.website-map{border-radius:24px}.menu-order-cta{color:var(--site-on-accent,#fff)!important}.footer-social{display:flex;align-items:center;gap:14px;flex-shrink:0}.social-link{display:inline-flex;align-items:center;justify-content:center;min-width:24px;text-decoration:none;color:#181512!important}.social-link svg{display:block}.site-footer{overflow:visible}.footer-inner{min-width:0;flex-wrap:wrap;white-space:normal;padding-block:12px}.footer-brand{min-width:0;text-decoration:none;overflow-wrap:anywhere}.footer-brand .restaurant-name{font-size:20px}.footer-brand .restaurant-logo{max-height:32px;max-width:160px}.footer-powered,.footer-year{white-space:nowrap;flex-shrink:0}.footer-social:empty{display:none}.website-map-marker{display:flex;gap:8px;align-items:center;font:700 16px Georgia,serif;color:#181512}.website-map-marker:before{content:"";width:18px;height:24px;background:var(--site-red);border-radius:50% 50% 50% 0;transform:rotate(-45deg)}.website-map-marker span{background:white;border-radius:10px;padding:8px 12px;box-shadow:0 2px 8px #0003}
@media(min-width:1024px){.widget-hero .hero-copy{position:absolute;bottom:24%;left:0;right:0;padding:0}.widget-featured-products .menu-card{flex-basis:calc((100% - 40px)/3)}}
@media(max-width:767px){.hero-copy .widget-text{font-size:22px}.hero-copy h1{max-width:none}.footer-inner{gap:8px}.footer-brand .restaurant-name{font-size:14px}.footer-brand .restaurant-logo{max-width:90px;max-height:24px}.footer-social{gap:8px}.footer-social svg{width:20px;height:20px}.footer-powered img{width:90px;height:22px}.footer-brand{flex:1 1 80px}.website-page .site-footer{overflow:visible}.widget-catering .section-photo,.widget-story .section-photo{border-radius:12px}}
.website-page :focus-visible{outline-color:var(--site-accent-ink,var(--site-red))}

/* Website quote and map refinement: columns share their natural content height. */
@media(min-width:768px){
 .widget-catering .widget-columns{align-items:stretch}
 .widget-catering .catering-intro,.widget-catering .catering-form{display:flex;flex-direction:column;min-width:0}
 .widget-catering .catering-intro>.site-button{margin-top:auto;align-self:flex-start;min-height:48px}
 .widget-catering .catering-form fieldset{display:flex;flex:1;flex-direction:column}
 .widget-catering .catering-form .site-button{margin-top:auto;min-height:48px;opacity:1}
}
.widget-catering .catering-form h2{margin-top:0}
.widget-catering .form-grid{gap:16px}
.widget-catering .form-grid label{gap:7px;font-size:15px}
.widget-catering .form-grid input{height:50px}
.widget-catering .form-grid textarea{min-height:104px;resize:vertical}
.widget-catering .quote-status{min-height:1.4em;margin:8px 0!important;font-size:13px}
.widget-catering .catering-form .site-button{opacity:1}
.website-map{display:block;width:100%;border:0;overflow:hidden}
@media(max-width:767px){.widget-catering .catering-intro,.widget-catering .catering-form{display:block}.widget-catering .form-grid{gap:12px}.widget-catering .catering-form .site-button{margin-top:12px}}
.website-page .category-nav,.website-page .product-rail{min-width:0;max-width:100%;scrollbar-width:none;-ms-overflow-style:none}
.website-page .category-nav::-webkit-scrollbar,.website-page .product-rail::-webkit-scrollbar{display:none;width:0;height:0}
.website-page .category-nav{overscroll-behavior-inline:contain}
.website-page .menu-category,.website-page .rail-shell{min-width:0;max-width:100%}
.website-page .catering-form .site-button:disabled{background:#969696;border-color:#969696;color:#fff!important;filter:none;opacity:1;cursor:not-allowed}

/* Hero header shares the hero image at the top without changing its sticky height. */
.page-home.hero-overlay-header .site-header{margin-bottom:calc(-1 * var(--header-height));background:transparent;color:#fff;border-color:transparent;box-shadow:none;transition:background-color .25s ease,color .25s ease,border-color .25s ease,box-shadow .25s ease}
.page-home.hero-overlay-header .website-widget:first-child.widget-hero{min-height:100dvh}
.page-home .website-widget{scroll-margin-top:var(--header-height)}
@media(min-width:1024px){.page-home.hero-overlay-header.height-balanced .website-widget:first-child.widget-hero{height:100dvh}}
.page-home.hero-overlay-header.header-scrolled .site-header{background:#fff;color:#181512;border-color:var(--site-line);box-shadow:0 2px 9px #18151212}
.page-home.hero-overlay-header .mobile-nav nav{background:#fff;color:#181512;box-shadow:0 8px 18px #0002}
.page-home.hero-overlay-header .site-header .site-button{background:var(--site-red);color:var(--site-on-accent,#fff)!important}
.website-page .section-heading a{font-weight:700;text-decoration:none;color:var(--site-accent-ink,var(--site-red))}

/* Sticky category navigation remains inside the menu's measured content width. */
.page-menu .category-nav{position:sticky;top:var(--header-height);z-index:19;background:#fff;border-bottom:1px solid var(--site-line);padding-block:12px;margin-bottom:24px;max-width:100%;overscroll-behavior-inline:contain}
.page-menu .category-nav a{border-right:0;color:var(--site-ink);font-weight:400;flex:0 0 auto}
.page-menu .category-nav a[aria-current="location"]{color:var(--site-accent-ink,var(--site-red));font-weight:700}
.page-menu .menu-category{scroll-margin-top:calc(var(--header-height) + var(--category-nav-height,60px) + 16px)}

/* Quote field labels may be bold; entered text and placeholders stay regular. */
.website-page .catering-form input,.website-page .catering-form textarea,.website-page .catering-form input::placeholder,.website-page .catering-form textarea::placeholder{font-weight:400}
.date-field{position:relative;min-width:0}
.date-field>input[name="eventDate"]{padding-right:48px}
.date-picker-trigger{position:absolute;right:4px;top:3px;width:44px;height:44px;display:grid;place-items:center;border:0;background:transparent;color:var(--site-ink);cursor:pointer}
.date-picker-trigger svg{display:block}
.date-field>.date-native{position:absolute;right:0;top:0;width:1px!important;height:1px!important;opacity:0;pointer-events:none;padding:0!important;border:0!important}
.date-error{display:block;color:var(--site-accent-ink,var(--site-red));font-size:12px;font-weight:400;line-height:1.3;margin-top:4px}
