/* Shared customer-page spacing; product rows size themselves from their content. */
#festaPageContent .ftco-section {
    padding-top: 40px !important;
    padding-bottom: 40px !important;
}
#festaPageContent .ftco-section.ftco-no-pt { padding-top: 0 !important; }
#festaPageContent .ftco-section.ftco-no-pb { padding-bottom: 0 !important; }
/* Let the homepage About content determine its height above order selection. */
#festaPageContent .home-about-panel { min-height: 0; }
/* One continuous restaurant backdrop for ordering and discovery on Home. */
#festaPageContent .home-order-discovery .nc-discovery-home { padding-top: 0; padding-bottom: 0; }
#festaPageContent .home-order-discovery .nc-discovery { margin: 0; }
#festaPageContent .home-order-divider { display: flex; align-items: center; gap: 12px; margin: 18px 0 14px; }
#festaPageContent .home-order-divider::before,
#festaPageContent .home-order-divider::after { content: ""; flex: 1; height: 1px; background: linear-gradient(90deg, transparent, rgba(255, 114, 76, .65)); }
#festaPageContent .home-order-divider::after { transform: rotate(180deg); }
#festaPageContent .home-order-divider > span { display: grid; place-items: center; width: 24px; height: 24px; border: 1px solid rgba(255, 255, 255, .22); border-radius: 50%; background: rgba(255, 255, 255, .08); color: #ffb09a; font-size: 11px; }
#festaPageContent .home-order-discovery .nc-discovery-heading h2 { color: #fff; }
#festaPageContent .home-order-discovery .nc-discovery-heading p { color: rgba(255, 255, 255, .76); }
#festaPageContent .home-order-discovery .nc-discovery-heading-icon { background: linear-gradient(135deg, #ff5a1f, #d7193f); color: #fff; }
#festaPageContent .home-order-discovery .nc-discovery-view-all { color: #fff; }
#festaPageContent .home-order-discovery .nc-discovery-controls button { border-color: rgba(255, 255, 255, .3); background: rgba(255, 255, 255, .1); color: #fff; }
#festaPageContent .home-order-discovery .nc-discovery-controls button:not(:disabled):hover { background: rgba(255, 255, 255, .2); }
#festaPageContent .home-order-discovery .nc-discovery-track { scrollbar-color: rgba(255, 255, 255, .36) transparent; }
#festaPageContent .menu-order-discovery::after { content: ""; position: absolute; inset: auto 0 0; height: 2px; background: linear-gradient(90deg, transparent, #d7193f, #ff7a38, #d7193f, transparent); opacity: .65; pointer-events: none; }
#festaPageContent .menu-hero-clean + .menu-order-discovery { margin-top: clamp(14px, 1.6vw, 22px); }
#festaPageContent .featured-section > .container > .row:first-child {
    margin-bottom: 20px !important;
    padding-bottom: 0 !important;
}
#festaPageContent .featured-section .heading-section p { margin-bottom: 0; }
#festaPageContent .featured-slider-block { margin-bottom: 24px; }
#festaPageContent .featured-slider-block:last-child { margin-bottom: 0; }
#festaPageContent .nc-discovery { margin: 24px 0; }
#festaPageContent .menu-content-section { padding-top: 28px !important; padding-bottom: 32px !important; }

#festaPageContent .hero-wrap.hero-wrap-2,
#festaPageContent .hero-wrap.hero-wrap-2 .slider-text {
    min-height: 340px !important;
    height: auto !important;
}
#festaPageContent .hero-wrap.hero-wrap-2 .slider-text {
    padding-top: 148px !important;
    padding-bottom: 32px !important;
}
#festaPageContent .hero-wrap.hero-wrap-2 .bread {
    margin-bottom: 12px !important;
    font-size: clamp(42px, 5vw, 68px) !important;
    line-height: 1.1;
}

@media (max-width: 991.98px) {
    #festaPageContent .ftco-section { padding-top: 28px !important; padding-bottom: 28px !important; }
    #festaPageContent .hero-wrap.hero-wrap-2,
    #festaPageContent .hero-wrap.hero-wrap-2 .slider-text { min-height: 280px !important; }
    #festaPageContent .hero-wrap.hero-wrap-2 .slider-text { padding-top: 108px !important; padding-bottom: 28px !important; }
    #festaPageContent .hero-wrap.hero-wrap-2 .bread { font-size: 48px !important; }
}
@media (max-width: 575.98px) {
    #festaPageContent .home-order-divider { margin: 14px 0 10px; }
    #festaPageContent .ftco-section { padding-top: 24px !important; padding-bottom: 24px !important; }
    #festaPageContent .hero-wrap.hero-wrap-2,
    #festaPageContent .hero-wrap.hero-wrap-2 .slider-text { min-height: 240px !important; }
    #festaPageContent .hero-wrap.hero-wrap-2 .slider-text { padding-top: 94px !important; padding-bottom: 24px !important; }
    #festaPageContent .hero-wrap.hero-wrap-2 .bread { font-size: 40px !important; }
    #festaPageContent .featured-section > .container > .row:first-child { margin-bottom: 16px !important; }
    #festaPageContent .nc-discovery { margin: 18px 0; }
}

/* Keep intentional zero-padding utility sections at every breakpoint. */
#festaPageContent .ftco-section.ftco-no-pt { padding-top: 0 !important; }
#festaPageContent .ftco-section.ftco-no-pb { padding-bottom: 0 !important; }
