/* Shared header: keep desktop navigation in one row; retain the theme mobile menu. */
@media(min-width:1025px){
#masthead .elementor-top-section>.elementor-container{width:100%;max-width:1536px;padding-inline:32px;box-sizing:border-box;flex-wrap:nowrap}
#masthead .elementor-container:has(>.elementor-col-66)>.elementor-col-33{width:25%;flex:0 0 25%}
#masthead .elementor-top-column.elementor-col-66{width:75%;flex:1 1 75%;min-width:0}
#masthead .elementor-widget-pt_menu{width:max-content!important;max-width:100%!important;flex-shrink:0}
#masthead .pt-menu.not-mobile-menu>.primary-menu{flex-wrap:nowrap!important;white-space:nowrap;justify-content:flex-end;gap:0}
#masthead .pt-menu.not-mobile-menu>.primary-menu>li{flex:0 0 auto}
#masthead .pt-menu.not-mobile-menu>.primary-menu>li>a{white-space:nowrap;padding-inline:12px}
}
@media(min-width:1025px) and (max-width:1199px){#masthead .elementor-top-section>.elementor-container{padding-inline:20px}#masthead .pt-menu.not-mobile-menu>.primary-menu>li>a{font-size:15px;padding-inline:9px}}
@media(max-width:1024px){#masthead .elementor-top-section>.elementor-container{width:100%;box-sizing:border-box;flex-wrap:nowrap}#masthead .elementor-top-column.elementor-col-50{width:50%;flex:0 0 50%;min-width:0}}

/* Full-width catering canvas and shared wave footer. */
body.page-id-3140 .site-content{background:#fff4d9}
body.page-id-3140 .main{padding:0!important}
body.page-id-3140 .main>.container{width:100%!important;max-width:none!important;padding:0!important}
body.page-id-3140 .main #primary,body.page-id-3140 .entry-content{width:100%;margin:0!important}
#colophon,#colophon .site-footer-main{width:100%;max-width:none}
#colophon .site-footer-main>.container{width:100%!important;max-width:none!important;padding-inline:0!important;margin-inline:0!important}
#colophon .elementor-top-section.elementor-section-full_width{width:100%!important;max-width:none!important;left:0!important;margin-inline:0!important}
#colophon .elementor-shape-top{width:100%;left:0;overflow:hidden}
#colophon .elementor-shape-top svg{width:100%!important;height:clamp(54px,6vw,90px)!important;max-width:none;left:50%;transform:translateX(-50%)}
#colophon .elementor-top-section>.elementor-container{max-width:1200px;margin-inline:auto}
@media(max-width:1024px){#colophon .elementor-inner-section>.elementor-container{width:100%;max-width:100%;box-sizing:border-box}}

#colophon .elementor-inner-section.pt-section-content-fullwidth{left:0!important;width:100%!important;max-width:100%!important;margin-inline:0!important}
#colophon .elementor-inner-section>.elementor-container{width:100%!important;max-width:100%!important}
#colophon .elementor-top-section>.elementor-container{width:100%;box-sizing:border-box;padding-inline:20px}

/* Compact headers on phones and tablets, across every header variant. */
@media(max-width:1024px){
#masthead .elementor-top-section{padding-block:8px!important;min-height:0!important}
#masthead .elementor-top-section>.elementor-container{min-height:0!important;align-items:center}
#masthead .elementor-top-column>.elementor-widget-wrap{padding-block:0!important;margin-block:0!important;min-height:0!important;align-content:center!important;align-items:center!important}
#masthead .elementor-widget-pt_logo{margin-block:0!important}
#masthead .elementor-widget-pt_logo img{width:104px!important;max-width:100%!important;height:auto!important;display:block}
#masthead .elementor-widget-pt_menu_toggle{margin-block:0!important}
#masthead .menu-toggle{min-width:44px;min-height:44px}
}
@media(max-width:767px){#masthead .elementor-widget-pt_logo img{width:88px!important}}

/* Match both footer contact buttons. */
#colophon .elementor-element-46cc8f3 .elementor-widget-pt_button a.button{display:flex!important;align-items:center;justify-content:center;width:100%;min-height:52px;border:2px solid #fff!important;border-radius:999px!important;background:transparent!important;color:#fff!important;padding:12px 10px!important;box-sizing:border-box;font-size:13px!important;line-height:1.3!important;letter-spacing:.5px;white-space:nowrap!important}
#colophon .elementor-element-46cc8f3 .elementor-widget-pt_button .pt-btn-text{white-space:nowrap!important}

#colophon .elementor-element-46cc8f3 .elementor-widget-pt_button a.button{min-width:190px!important;width:100%!important;max-width:none!important}
#colophon .elementor-element-46cc8f3 .elementor-widget-pt_button .pt-btn-text{font-size:12px!important;line-height:1.3!important;letter-spacing:.4px!important;display:block;white-space:nowrap!important}
#colophon .elementor-element-46cc8f3>.elementor-widget-wrap{padding-inline:8px!important}

/* Give footer sections equal widths and consistent breathing room. */
#colophon .elementor-element-0985ce8>.elementor-container{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:36px!important;align-items:start}
#colophon .elementor-element-0985ce8>.elementor-container>.elementor-column{width:100%!important;min-width:0}
#colophon .elementor-element-0985ce8>.elementor-container>.elementor-column>.elementor-widget-wrap{padding-inline:0!important;margin-inline:0!important}
#colophon .elementor-element-46cc8f3 .elementor-widget-pt_button a.button{min-width:0!important;max-width:100%!important}
@media(min-width:768px) and (max-width:1024px){#colophon .elementor-element-0985ce8>.elementor-container{grid-template-columns:repeat(2,minmax(0,1fr));gap:40px!important}}
@media(max-width:767px){#colophon .elementor-element-0985ce8>.elementor-container{grid-template-columns:minmax(0,1fr);gap:32px!important}}

/* Remove hours and rebalance the three remaining footer sections. */
#colophon .elementor-element-6a324de{display:none!important}
#colophon .elementor-element-0985ce8>.elementor-container{grid-template-columns:repeat(3,minmax(0,1fr))}
@media(min-width:768px) and (max-width:1024px){#colophon .elementor-element-0985ce8>.elementor-container{grid-template-columns:repeat(3,minmax(0,1fr));gap:28px!important}}
@media(max-width:767px){#colophon .elementor-element-0985ce8>.elementor-container{grid-template-columns:minmax(0,1fr)}}

/* Keep footer navigation on one line. */
#colophon .elementor-element-74cdabf>.elementor-container{display:grid!important;grid-template-columns:40% minmax(0,1fr);gap:20px;align-items:center}
#colophon .elementor-element-74cdabf>.elementor-container>.elementor-column{width:100%!important;min-width:0}
#colophon .elementor-element-74cdabf .elementor-widget-wrap{padding-inline:0!important}
#colophon .footer-menu ul.menu{display:flex!important;flex-wrap:nowrap!important;justify-content:flex-end;gap:16px;margin:0!important;padding:0!important}
#colophon .footer-menu ul.menu>li{flex:0 0 auto;white-space:nowrap}
#colophon .footer-menu ul.menu>li>a{padding-inline:0!important;font-size:12px!important;letter-spacing:.4px!important;white-space:nowrap!important}
@media(max-width:1024px){#colophon .elementor-element-74cdabf>.elementor-container{grid-template-columns:minmax(0,1fr);gap:20px}#colophon .footer-menu ul.menu{justify-content:center}}
@media(max-width:767px){#colophon .footer-menu ul.menu{gap:8px}#colophon .footer-menu ul.menu>li>a{font-size:10px!important;letter-spacing:0!important}}

/* Center desktop navigation independently of the left logo. */
@media(min-width:1025px){
#masthead .elementor-top-section:has(.pt-menu.not-mobile-menu)>.elementor-container{position:relative}
#masthead .elementor-top-section:has(.pt-menu.not-mobile-menu) .elementor-col-66,#masthead .elementor-top-section:has(.pt-menu.not-mobile-menu) .elementor-col-66>.elementor-widget-wrap{position:static!important}
#masthead .elementor-top-section:has(.pt-menu.not-mobile-menu) .elementor-widget-pt_menu{position:absolute!important;left:50%!important;top:50%!important;transform:translate(-50%,-50%);margin:0!important}
#masthead .pt-menu.not-mobile-menu>.primary-menu{justify-content:center!important}
}

/* Consistent catering typography and cards on phones and tablets. */
.ea-holiday{-webkit-text-size-adjust:100%;text-size-adjust:100%}
.ea-holiday .ea-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.ea-holiday .ea-card{min-width:0}
.ea-holiday h1,.ea-holiday h2,.ea-holiday h3{word-break:normal!important;overflow-wrap:normal!important;hyphens:none!important}
@media(max-width:1024px){.ea-holiday .ea-wrap{padding:52px 24px}.ea-holiday h2{font-size:clamp(30px,4.5vw,44px)!important;line-height:1.12}.ea-holiday .ea-card{padding:24px}.ea-holiday .ea-card h3{font-size:clamp(24px,3.4vw,30px)!important;line-height:1.15}.ea-holiday .ea-grid{gap:24px}}
@media(max-width:767px){.ea-holiday .ea-wrap{padding:42px 20px}.ea-holiday h2{font-size:clamp(27px,7vw,36px)!important;line-height:1.14}.ea-holiday .ea-grid{grid-template-columns:minmax(0,1fr)!important;gap:22px}.ea-holiday .ea-card{padding:22px 20px}.ea-holiday .ea-card h3{font-size:clamp(23px,6vw,28px)!important}.ea-holiday .ea-kicker{font-size:11px;letter-spacing:2px;overflow-wrap:normal!important}.ea-holiday .ea-hero{padding:42px 18px}.ea-holiday .ea-hero h1{font-size:clamp(44px,12vw,72px)!important;letter-spacing:-1px}.ea-holiday p,.ea-holiday li{font-size:16px;line-height:1.65}.ea-holiday .ea-price{gap:12px;flex-wrap:wrap}}

.ea-holiday .ea-menu li>div{min-width:0}
.ea-holiday .ea-menu li>div>p{font:400 17px/1.5 Arial,sans-serif!important;font-style:normal!important;margin:8px 0 0!important}
@media(max-width:767px){.ea-holiday .ea-menu li>div>p{font-size:16px!important}}

.ea-holiday .ea-menu li>span{flex:0 0 34px;width:34px;text-align:left}
.ea-holiday .ea-menu li>div{flex:1;min-width:0}
@media(max-width:767px){.ea-holiday .ea-menu li{gap:16px}.ea-holiday .ea-menu li>span{flex-basis:28px;width:28px}}
