/* SoftSpin Smart Storefront Chrome
   Template-aware styling for existing functional Razor partials.
   No logo/search/login/cart/menu/footer functionality is duplicated. */

html[data-ss-header-mode= "template"][data-ss-storefront-family] #header {
    transition: background-color .3s ease, box-shadow .3s ease, border-color .3s ease;
}

    html[data-ss-header-mode= "template"][data-ss-storefront-family] #header.main-header,
    html[data-ss-navigation-mode= "template"][data-ss-storefront-family] #header.header-nav,
    html[data-ss-topbar-mode= "template"][data-ss-storefront-family] #dynamic-top-bar,
    html[data-ss-footer-mode= "template"][data-ss-storefront-family] #footer {
        transition: background-color .3s ease, color .3s ease, border-color .3s ease;
    }

/* Shared modern baseline */
html[data-ss-header-mode= "template"][data-ss-storefront-family]:not([data-ss-storefront-family="default"]) #header {
    background: var(--surface-color);
    box-shadow: 0 10px 34px rgba(25, 20, 18, .06);
}

    html[data-ss-header-mode= "template"][data-ss-storefront-family]:not([data-ss-storefront-family="default"]) #header.main-header {
        border-bottom: 1px solid var(--border-color);
    }

    html[data-ss-header-mode= "template"][data-ss-storefront-family]:not([data-ss-storefront-family="default"]) #header.desktop-search-form.input-group {
        overflow: hidden;
        border: 1px solid var(--border-color);
        border-radius: 999px;
        background: var(--background-color);
    }

    html[data-ss-header-mode= "template"][data-ss-storefront-family]:not([data-ss-storefront-family="default"]) #header.desktop-search-form.form-control {
        border: 0 !important;
        background: transparent !important;
        box-shadow: none !important;
    }

    html[data-ss-header-mode= "template"][data-ss-storefront-family]:not([data-ss-storefront-family="default"]) #header.header-action-btn {
        border-radius: 50%;
        transition: transform .2s ease, background .2s ease, color .2s ease;
    }

        html[data-ss-header-mode= "template"][data-ss-storefront-family]:not([data-ss-storefront-family="default"]) #header.header-action-btn:hover {
            transform: translateY(-2px);
            background: var(--accent-soft);
            color: var(--accent-color);
        }

html[data-ss-navigation-mode= "template"][data-ss-storefront-family]:not([data-ss-storefront-family="default"]) #navmenu > ul {
    justify-content: center;
    gap: clamp(16px, 2.2vw, 34px);
}

    html[data-ss-navigation-mode= "template"][data-ss-storefront-family]:not([data-ss-storefront-family="default"]) #navmenu > ul > li > a {
        position: relative;
        font-weight: 700;
        letter-spacing: .015em;
    }

        html[data-ss-navigation-mode= "template"][data-ss-storefront-family]:not([data-ss-storefront-family="default"]) #navmenu > ul > li > a::after {
            position: absolute;
            right: 0;
            bottom: -7px;
            left: 0;
            width: 0;
            height: 2px;
            margin: auto;
            border-radius: 2px;
            content: "";
            background: var(--accent-color);
            transition: width .22s ease;
        }

        html[data-ss-navigation-mode= "template"][data-ss-storefront-family]:not([data-ss-storefront-family="default"]) #navmenu > ul > li > a:hover::after {
            width: 100%;
        }

html[data-ss-footer-mode= "template"][data-ss-storefront-family]:not([data-ss-storefront-family="default"]) #footer.footer-main {
    border-top: 1px solid var(--border-color);
}

/* Editorial warm: F&B, restaurant, beauty, hospitality */
html[data-ss-header-mode= "template"][data-ss-storefront-family="fnb-hospitality"] #header,
html[data-ss-header-mode= "template"][data-ss-storefront-family="restaurant"] #header,
html[data-ss-header-mode= "template"][data-ss-storefront-family="beauty"] #header,
html[data-ss-header-mode= "template"][data-ss-storefront-family="hospitality"] #header {
    background: color-mix(in srgb,var(--background-color) 88%, #fff 12%);
}

html[data-ss-topbar-mode= "template"][data-ss-storefront-family="fnb-hospitality"] #dynamic-top-bar,
html[data-ss-topbar-mode= "template"][data-ss-storefront-family="restaurant"] #dynamic-top-bar,
html[data-ss-topbar-mode= "template"][data-ss-storefront-family="beauty"] #dynamic-top-bar,
html[data-ss-topbar-mode= "template"][data-ss-storefront-family="hospitality"] #dynamic-top-bar {
    background: var(--accent-color) !important;
    color: var(--contrast-color) !important;
    border: 0 !important;
}

    html[data-ss-topbar-mode= "template"][data-ss-storefront-family="fnb-hospitality"] #dynamic-top-bar *,
    html[data-ss-topbar-mode= "template"][data-ss-storefront-family="restaurant"] #dynamic-top-bar *,
    html[data-ss-topbar-mode= "template"][data-ss-storefront-family="beauty"] #dynamic-top-bar *,
    html[data-ss-topbar-mode= "template"][data-ss-storefront-family="hospitality"] #dynamic-top-bar * {
        color: var(--contrast-color) !important;
    }

html[data-ss-header-mode= "template"][data-ss-storefront-family="fnb-hospitality"] #header.main-header.d-flex.py-3,
html[data-ss-header-mode= "template"][data-ss-storefront-family="restaurant"] #header.main-header.d-flex.py-3 {
    padding-top: 1.15rem !important;
    padding-bottom: 1.15rem !important;
}

html[data-ss-navigation-mode= "template"][data-ss-storefront-family="fnb-hospitality"] #navmenu > ul > li > a,
html[data-ss-navigation-mode= "template"][data-ss-storefront-family="restaurant"] #navmenu > ul > li > a,
html[data-ss-navigation-mode= "template"][data-ss-storefront-family="hospitality"] #navmenu > ul > li > a {
    font-family: Georgia, "Times New Roman", serif;
    font-size: 16px;
    font-weight: 600;
}

html[data-ss-footer-mode= "template"][data-ss-storefront-family="fnb-hospitality"] #footer.footer-main,
html[data-ss-footer-mode= "template"][data-ss-storefront-family="restaurant"] #footer.footer-main {
    background: #18100D;
    color: #f7eee7;
}

    html[data-ss-footer-mode= "template"][data-ss-storefront-family="fnb-hospitality"] #footer.footer-main *,
    html[data-ss-footer-mode= "template"][data-ss-storefront-family="restaurant"] #footer.footer-main * {
        color: inherit;
    }

    html[data-ss-footer-mode= "template"][data-ss-storefront-family="fnb-hospitality"] #footer.footer-main a:hover,
    html[data-ss-footer-mode= "template"][data-ss-storefront-family="restaurant"] #footer.footer-main a:hover {
        color: #F2B68C !important;
    }

/* Luxury/editorial: jewelry, fashion, finance, real-estate, legal */
html[data-ss-header-mode= "template"][data-ss-storefront-family="jewelry"] #header,
html[data-ss-header-mode= "template"][data-ss-storefront-family="fashion"] #header,
html[data-ss-header-mode= "template"][data-ss-storefront-family="finance"] #header,
html[data-ss-header-mode= "template"][data-ss-storefront-family="real-estate"] #header,
html[data-ss-header-mode= "template"][data-ss-storefront-family="legal"] #header {
    background: var(--background-color);
    box-shadow: none;
}

html[data-ss-topbar-mode= "template"][data-ss-storefront-family="jewelry"] #dynamic-top-bar,
html[data-ss-topbar-mode= "template"][data-ss-storefront-family="fashion"] #dynamic-top-bar,
html[data-ss-topbar-mode= "template"][data-ss-storefront-family="finance"] #dynamic-top-bar,
html[data-ss-topbar-mode= "template"][data-ss-storefront-family="real-estate"] #dynamic-top-bar,
html[data-ss-topbar-mode= "template"][data-ss-storefront-family="legal"] #dynamic-top-bar {
    min-height: 34px;
    border-bottom: 1px solid var(--border-color);
    background: transparent !important;
}

html[data-ss-header-mode= "template"][data-ss-storefront-family="jewelry"] #header.main-header,
html[data-ss-header-mode= "template"][data-ss-storefront-family="fashion"] #header.main-header {
    border-bottom: 0;
}

    html[data-ss-header-mode= "template"][data-ss-storefront-family="jewelry"] #header.main-header.d-flex.py-3,
    html[data-ss-header-mode= "template"][data-ss-storefront-family="fashion"] #header.main-header.d-flex.py-3 {
        padding-top: 1.45rem !important;
        padding-bottom: 1.45rem !important;
    }

html[data-ss-navigation-mode= "template"][data-ss-storefront-family="jewelry"] #navmenu > ul > li > a,
html[data-ss-navigation-mode= "template"][data-ss-storefront-family="fashion"] #navmenu > ul > li > a,
html[data-ss-navigation-mode= "template"][data-ss-storefront-family="finance"] #navmenu > ul > li > a,
html[data-ss-navigation-mode= "template"][data-ss-storefront-family="real-estate"] #navmenu > ul > li > a,
html[data-ss-navigation-mode= "template"][data-ss-storefront-family="legal"] #navmenu > ul > li > a {
    font-family: Georgia, "Times New Roman", serif;
    font-weight: 500;
    letter-spacing: .045em;
}

html[data-ss-navigation-mode= "template"][data-ss-storefront-family="jewelry"] #header.header-nav,
html[data-ss-navigation-mode= "template"][data-ss-storefront-family="fashion"] #header.header-nav {
    border-top: 1px solid var(--border-color);
    border-bottom: 1px solid var(--border-color);
}

/* Technical / strong: manufacturing, construction, automotive, logistics, painting */
html[data-ss-topbar-mode= "template"][data-ss-storefront-family="manufacturing"] #dynamic-top-bar,
html[data-ss-topbar-mode= "template"][data-ss-storefront-family="construction"] #dynamic-top-bar,
html[data-ss-topbar-mode= "template"][data-ss-storefront-family="automotive"] #dynamic-top-bar,
html[data-ss-topbar-mode= "template"][data-ss-storefront-family="logistics"] #dynamic-top-bar,
html[data-ss-topbar-mode= "template"][data-ss-storefront-family="painting"] #dynamic-top-bar {
    background: #172026 !important;
    color: #fff !important;
}

    html[data-ss-topbar-mode= "template"][data-ss-storefront-family="manufacturing"] #dynamic-top-bar *,
    html[data-ss-topbar-mode= "template"][data-ss-storefront-family="construction"] #dynamic-top-bar *,
    html[data-ss-topbar-mode= "template"][data-ss-storefront-family="automotive"] #dynamic-top-bar *,
    html[data-ss-topbar-mode= "template"][data-ss-storefront-family="logistics"] #dynamic-top-bar *,
    html[data-ss-topbar-mode= "template"][data-ss-storefront-family="painting"] #dynamic-top-bar * {
        color: #fff !important;
    }

html[data-ss-navigation-mode= "template"][data-ss-storefront-family="manufacturing"] #header.header-nav,
html[data-ss-navigation-mode= "template"][data-ss-storefront-family="construction"] #header.header-nav,
html[data-ss-navigation-mode= "template"][data-ss-storefront-family="automotive"] #header.header-nav,
html[data-ss-navigation-mode= "template"][data-ss-storefront-family="logistics"] #header.header-nav,
html[data-ss-navigation-mode= "template"][data-ss-storefront-family="painting"] #header.header-nav {
    background: color-mix(in srgb,var(--accent-color) 12%,var(--surface-color) 88%);
    border-bottom: 3px solid var(--accent-color);
}

html[data-ss-navigation-mode= "template"][data-ss-storefront-family="manufacturing"] #navmenu > ul > li > a,
html[data-ss-navigation-mode= "template"][data-ss-storefront-family="construction"] #navmenu > ul > li > a,
html[data-ss-navigation-mode= "template"][data-ss-storefront-family="automotive"] #navmenu > ul > li > a,
html[data-ss-navigation-mode= "template"][data-ss-storefront-family="logistics"] #navmenu > ul > li > a,
html[data-ss-navigation-mode= "template"][data-ss-storefront-family="painting"] #navmenu > ul > li > a {
    text-transform: uppercase;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: .07em;
}

/* Clean modern: corporate, technology, healthcare, education */
html[data-ss-header-mode= "template"][data-ss-storefront-family="corporate"] #header,
html[data-ss-header-mode= "template"][data-ss-storefront-family="technology"] #header,
html[data-ss-header-mode= "template"][data-ss-storefront-family="healthcare"] #header,
html[data-ss-header-mode= "template"][data-ss-storefront-family="education"] #header {
    background: color-mix(in srgb,var(--surface-color) 92%, transparent);
    backdrop-filter: blur(18px);
}

html[data-ss-navigation-mode= "template"][data-ss-storefront-family="corporate"] #header.header-nav,
html[data-ss-navigation-mode= "template"][data-ss-storefront-family="technology"] #header.header-nav,
html[data-ss-navigation-mode= "template"][data-ss-storefront-family="healthcare"] #header.header-nav,
html[data-ss-navigation-mode= "template"][data-ss-storefront-family="education"] #header.header-nav {
    border-bottom: 1px solid var(--border-color);
}

/* Energy: fitness */
html[data-ss-header-mode= "template"][data-ss-storefront-family="fitness"] #header {
    background: #101114;
    color: #fff;
}

    html[data-ss-header-mode= "template"][data-ss-storefront-family="fitness"] #header.main-header,
    html[data-ss-navigation-mode= "template"][data-ss-storefront-family="fitness"] #header.header-nav {
        background: #101114;
        border-color: rgba(255, 255, 255, .12);
    }

    html[data-ss-header-mode= "template"][data-ss-storefront-family="fitness"] #header.header-action-btn,
    html[data-ss-navigation-mode= "template"][data-ss-storefront-family="fitness"] #navmenu > ul > li > a {
        color: #fff !important;
    }

html[data-ss-navigation-mode= "template"][data-ss-storefront-family="fitness"] #navmenu > ul > li > a {
    text-transform: uppercase;
    font-weight: 900;
    letter-spacing: .06em;
}

@media(max-width: 1199.98px) {
    html[data-ss-navigation-mode= "template"][data-ss-storefront-family] #navmenu > ul {
        gap: 0;
    }

        html[data-ss-navigation-mode= "template"][data-ss-storefront-family] #navmenu > ul > li > a::after {
            display: none;
        }

    html[data-ss-header-mode= "template"][data-ss-storefront-family] #header.main-header.d-flex.py-3 {
        padding-top: .8rem !important;
        padding-bottom: .8rem !important;
    }
}

/* =====================================================================
   SoftSpin Storefront Composition Engine v2---------------------------------------------------------------------IMPORTANT:-family="default" is the ORIGINAL / INITIAL SoftSpin UI. No structural
     rules below target it, so existing clients can keep their exact chrome.-non-default families intentionally change composition, not only colors.-all real Razor functionality remains the same: logo, search, account,
     cart, barcode, top menu, language/currency and footer data.
   ===================================================================== */

@media(min-width: 1200px) {
    /* F&B / Restaurant: editorial masthead. Search left, centered brand, actions right. */
    html[data-ss-header-mode= "template"][data-ss-storefront-family="fnb-hospitality"] #header.main-header.container-xl > .d-flex,
    html[data-ss-header-mode= "template"][data-ss-storefront-family="restaurant"] #header.main-header.container-xl > .d-flex {
        position: relative;
        min-height: 94px;
        padding-top: 1.2rem !important;
        padding-bottom: 1.2rem !important;
    }

    html[data-ss-header-mode= "template"][data-ss-storefront-family="fnb-hospitality"] #branch-header,
    html[data-ss-header-mode= "template"][data-ss-storefront-family="restaurant"] #branch-header {
        position: absolute;
        left: 50%;
        top: 50%;
        transform: translate(-50%,-50%);
        z-index: 3;
        min-width: 220px;
        justify-content: center;
        text-align: center;
    }

        html[data-ss-header-mode= "template"][data-ss-storefront-family="fnb-hospitality"] #branch-header.logo-placeholder,
        html[data-ss-header-mode= "template"][data-ss-storefront-family="restaurant"] #branch-header.logo-placeholder {
            border: 0 !important;
            background: transparent !important;
            font: 600 28px / 1 Georgia, "Times New Roman", serif;
            letter-spacing: .08em;
            text-transform: uppercase;
        }

    html[data-ss-header-mode= "template"][data-ss-storefront-family="fnb-hospitality"] #publicSearchForm,
    html[data-ss-header-mode= "template"][data-ss-storefront-family="restaurant"] #publicSearchForm {
        width: min(32vw, 390px);
        margin-right: auto;
    }

    html[data-ss-header-mode= "template"][data-ss-storefront-family="fnb-hospitality"] #header.header-actions,
    html[data-ss-header-mode= "template"][data-ss-storefront-family="restaurant"] #header.header-actions {
        min-width: 190px;
        margin-left: auto;
    }

    html[data-ss-navigation-mode= "template"][data-ss-storefront-family="fnb-hospitality"] #header.header-nav,
    html[data-ss-navigation-mode= "template"][data-ss-storefront-family="restaurant"] #header.header-nav {
        background: color-mix(in srgb,var(--background-color) 96%, #fff 4%);
        border-top: 1px solid var(--border-color);
    }

    html[data-ss-navigation-mode= "template"][data-ss-storefront-family="fnb-hospitality"] #navmenu > ul,
    html[data-ss-navigation-mode= "template"][data-ss-storefront-family="restaurant"] #navmenu > ul {
        min-height: 60px;
    }

    /* Jewelry / Fashion: luxury centered maison. Search becomes a restrained left utility. */
    html[data-ss-header-mode= "template"][data-ss-storefront-family="jewelry"] #header.main-header.container-xl > .d-flex,
    html[data-ss-header-mode= "template"][data-ss-storefront-family="fashion"] #header.main-header.container-xl > .d-flex {
        position: relative;
        min-height: 116px;
        padding-top: 1.8rem !important;
        padding-bottom: 1.8rem !important;
    }

    html[data-ss-header-mode= "template"][data-ss-storefront-family="jewelry"] #branch-header,
    html[data-ss-header-mode= "template"][data-ss-storefront-family="fashion"] #branch-header {
        position: absolute;
        left: 50%;
        top: 50%;
        transform: translate(-50%,-50%);
        min-width: 280px;
        justify-content: center;
    }

        html[data-ss-header-mode= "template"][data-ss-storefront-family="jewelry"] #branch-header.logo-placeholder,
        html[data-ss-header-mode= "template"][data-ss-storefront-family="fashion"] #branch-header.logo-placeholder {
            border: 0 !important;
            background: transparent !important;
            font: 500 30px / 1 Georgia, "Times New Roman", serif;
            letter-spacing: .16em;
            text-transform: uppercase;
        }

    html[data-ss-header-mode= "template"][data-ss-storefront-family="jewelry"] #publicSearchForm,
    html[data-ss-header-mode= "template"][data-ss-storefront-family="fashion"] #publicSearchForm {
        width: 250px;
        margin-right: auto;
    }

    html[data-ss-header-mode= "template"][data-ss-storefront-family="jewelry"] #header.header-actions,
    html[data-ss-header-mode= "template"][data-ss-storefront-family="fashion"] #header.header-actions {
        min-width: 180px;
        margin-left: auto;
    }

    html[data-ss-header-mode= "template"][data-ss-storefront-family="jewelry"] #header.desktop-search-form.input-group,
    html[data-ss-header-mode= "template"][data-ss-storefront-family="fashion"] #header.desktop-search-form.input-group {
        border-radius: 0;
        border-width: 0 0 1px;
        background: transparent;
    }

    html[data-ss-navigation-mode= "template"][data-ss-storefront-family="jewelry"] #navmenu > ul,
    html[data-ss-navigation-mode= "template"][data-ss-storefront-family="fashion"] #navmenu > ul {
        min-height: 58px;
        gap: clamp(24px, 3vw, 48px);
    }

    /* Technology / Corporate: compact SaaS chrome, reduced vertical footprint. */
    html[data-ss-topbar-mode= "template"][data-ss-storefront-family="technology"] #dynamic-top-bar,
    html[data-ss-topbar-mode= "template"][data-ss-storefront-family="corporate"] #dynamic-top-bar {
        min-height: 30px;
        padding-top: 4px !important;
        padding-bottom: 4px !important;
    }

    html[data-ss-header-mode= "template"][data-ss-storefront-family="technology"] #header.main-header.container-xl > .d-flex,
    html[data-ss-header-mode= "template"][data-ss-storefront-family="corporate"] #header.main-header.container-xl > .d-flex {
        min-height: 70px;
        padding-top: .65rem !important;
        padding-bottom: .65rem !important;
    }

    html[data-ss-header-mode= "template"][data-ss-storefront-family="technology"] #publicSearchForm,
    html[data-ss-header-mode= "template"][data-ss-storefront-family="corporate"] #publicSearchForm {
        width: min(38vw, 520px);
    }

    html[data-ss-navigation-mode= "template"][data-ss-storefront-family="technology"] #header.header-nav,
    html[data-ss-navigation-mode= "template"][data-ss-storefront-family="corporate"] #header.header-nav {
        background: transparent;
    }

    html[data-ss-navigation-mode= "template"][data-ss-storefront-family="technology"] #navmenu > ul,
    html[data-ss-navigation-mode= "template"][data-ss-storefront-family="corporate"] #navmenu > ul {
        min-height: 48px;
        justify-content: flex-start;
    }

    /* Automotive / Manufacturing / Construction / Logistics: strong industrial bar. */
    html[data-ss-header-mode= "template"][data-ss-storefront-family="automotive"] #header.main-header,
    html[data-ss-header-mode= "template"][data-ss-storefront-family="manufacturing"] #header.main-header,
    html[data-ss-header-mode= "template"][data-ss-storefront-family="construction"] #header.main-header,
    html[data-ss-header-mode= "template"][data-ss-storefront-family="logistics"] #header.main-header {
        background: #11161a;
        color: #fff;
    }

        html[data-ss-header-mode= "template"][data-ss-storefront-family="automotive"] #header.main-header.container-xl > .d-flex,
        html[data-ss-header-mode= "template"][data-ss-storefront-family="manufacturing"] #header.main-header.container-xl > .d-flex,
        html[data-ss-header-mode= "template"][data-ss-storefront-family="construction"] #header.main-header.container-xl > .d-flex,
        html[data-ss-header-mode= "template"][data-ss-storefront-family="logistics"] #header.main-header.container-xl > .d-flex {
            min-height: 82px;
        }

        html[data-ss-header-mode= "template"][data-ss-storefront-family="automotive"] #header.main-header.logo-placeholder,
        html[data-ss-header-mode= "template"][data-ss-storefront-family="manufacturing"] #header.main-header.logo-placeholder,
        html[data-ss-header-mode= "template"][data-ss-storefront-family="construction"] #header.main-header.logo-placeholder,
        html[data-ss-header-mode= "template"][data-ss-storefront-family="logistics"] #header.main-header.logo-placeholder {
            color: #fff !important;
            border-color: rgba(255, 255, 255, .25) !important;
        }

    html[data-ss-header-mode= "template"][data-ss-storefront-family="automotive"] #header.header-action-btn,
    html[data-ss-header-mode= "template"][data-ss-storefront-family="manufacturing"] #header.header-action-btn,
    html[data-ss-header-mode= "template"][data-ss-storefront-family="construction"] #header.header-action-btn,
    html[data-ss-header-mode= "template"][data-ss-storefront-family="logistics"] #header.header-action-btn {
        color: #fff !important;
    }

    html[data-ss-navigation-mode= "template"][data-ss-storefront-family="automotive"] #header.header-nav,
    html[data-ss-navigation-mode= "template"][data-ss-storefront-family="manufacturing"] #header.header-nav,
    html[data-ss-navigation-mode= "template"][data-ss-storefront-family="construction"] #header.header-nav,
    html[data-ss-navigation-mode= "template"][data-ss-storefront-family="logistics"] #header.header-nav {
        background: var(--accent-color);
        border: 0;
    }

    html[data-ss-navigation-mode= "template"][data-ss-storefront-family="automotive"] #navmenu > ul > li > a,
    html[data-ss-navigation-mode= "template"][data-ss-storefront-family="manufacturing"] #navmenu > ul > li > a,
    html[data-ss-navigation-mode= "template"][data-ss-storefront-family="construction"] #navmenu > ul > li > a,
    html[data-ss-navigation-mode= "template"][data-ss-storefront-family="logistics"] #navmenu > ul > li > a {
        color: var(--contrast-color) !important;
    }
}

/* Footer compositions */
html[data-ss-footer-mode= "template"][data-ss-storefront-family="fnb-hospitality"] #footer.footer-main,
html[data-ss-footer-mode= "template"][data-ss-storefront-family="restaurant"] #footer.footer-main {
    padding-top: 72px;
    padding-bottom: 62px;
}

html[data-ss-footer-mode= "template"][data-ss-storefront-family="fnb-hospitality"] #footer.footer-widget h4,
html[data-ss-footer-mode= "template"][data-ss-storefront-family="restaurant"] #footer.footer-widget h4 {
    font-family: Georgia, "Times New Roman", serif;
    font-size: 22px;
    font-weight: 500;
}

html[data-ss-footer-mode= "template"][data-ss-storefront-family="fnb-hospitality"] #footer.footer-bottom,
html[data-ss-footer-mode= "template"][data-ss-storefront-family="restaurant"] #footer.footer-bottom {
    background: #110b09;
    border-top: 1px solid rgba(255, 255, 255, .1);
}

html[data-ss-footer-mode= "template"][data-ss-storefront-family="jewelry"] #footer.footer-main,
html[data-ss-footer-mode= "template"][data-ss-storefront-family="fashion"] #footer.footer-main {
    background: var(--background-color);
    padding-top: 82px;
    padding-bottom: 70px;
    border-top: 1px solid var(--border-color);
}

html[data-ss-footer-mode= "template"][data-ss-storefront-family="jewelry"] #footer.footer-widget h4,
html[data-ss-footer-mode= "template"][data-ss-storefront-family="fashion"] #footer.footer-widget h4 {
    font-family: Georgia, "Times New Roman", serif;
    font-weight: 500;
    letter-spacing: .08em;
    text-transform: uppercase;
}

html[data-ss-footer-mode= "template"][data-ss-storefront-family="jewelry"] #footer.footer-bottom,
html[data-ss-footer-mode= "template"][data-ss-storefront-family="fashion"] #footer.footer-bottom {
    background: transparent;
    border-top: 1px solid var(--border-color);
}

html[data-ss-footer-mode= "template"][data-ss-storefront-family="technology"] #footer.footer-main,
html[data-ss-footer-mode= "template"][data-ss-storefront-family="corporate"] #footer.footer-main {
    background: color-mix(in srgb,var(--surface-color) 94%,var(--accent-color) 6%);
    padding-top: 58px;
}

html[data-ss-footer-mode= "template"][data-ss-storefront-family="automotive"] #footer.footer-main,
html[data-ss-footer-mode= "template"][data-ss-storefront-family="manufacturing"] #footer.footer-main,
html[data-ss-footer-mode= "template"][data-ss-storefront-family="construction"] #footer.footer-main,
html[data-ss-footer-mode= "template"][data-ss-storefront-family="logistics"] #footer.footer-main {
    background: #11161a;
    color: #fff;
    border-top: 4px solid var(--accent-color);
}

    html[data-ss-footer-mode= "template"][data-ss-storefront-family="automotive"] #footer.footer-main *,
    html[data-ss-footer-mode= "template"][data-ss-storefront-family="manufacturing"] #footer.footer-main *,
    html[data-ss-footer-mode= "template"][data-ss-storefront-family="construction"] #footer.footer-main *,
    html[data-ss-footer-mode= "template"][data-ss-storefront-family="logistics"] #footer.footer-main * {
        color: inherit;
    }

/* Mobile keeps every functional control while adopting the family identity. */
@media(max-width: 1199.98px) {
    html[data-ss-header-mode= "template"][data-ss-storefront-family]:not([data-ss-storefront-family="default"]) #header.main-header {
        border-bottom: 1px solid var(--border-color);
    }

    html[data-ss-header-mode= "template"][data-ss-storefront-family="fnb-hospitality"] #branch-header.logo-placeholder,
    html[data-ss-header-mode= "template"][data-ss-storefront-family="restaurant"] #branch-header.logo-placeholder,
    html[data-ss-header-mode= "template"][data-ss-storefront-family="jewelry"] #branch-header.logo-placeholder,
    html[data-ss-header-mode= "template"][data-ss-storefront-family="fashion"] #branch-header.logo-placeholder {
        font-family: Georgia, "Times New Roman", serif;
        letter-spacing: .06em;
    }

    html[data-ss-header-mode= "template"][data-ss-storefront-family="automotive"] #header.main-header,
    html[data-ss-header-mode= "template"][data-ss-storefront-family="manufacturing"] #header.main-header,
    html[data-ss-header-mode= "template"][data-ss-storefront-family="construction"] #header.main-header,
    html[data-ss-header-mode= "template"][data-ss-storefront-family="logistics"] #header.main-header {
        background: #11161a;
        color: #fff;
    }
}

/* ========================================================================== 
   SoftSpin Storefront Chrome V4 — Trendy structural composition
   The Razor functionality stays shared; these rules change composition, scale,
   hierarchy and visual language per storefront family when Template Design is on.
   ========================================================================== */

html[data-ss-header-mode= "template"]#header.ss-chrome-row {
    display: grid;
    grid-template-columns: minmax(150px, 260px) minmax(280px, 1fr) auto;
    align-items: center;
    gap: clamp(18px, 3vw, 48px);
    min-height: 84px;
    padding: 12px 0;
}

html[data-ss-header-mode= "template"]#header.ss-chrome-logo {
    min-width: 0;
}

html[data-ss-header-mode= "template"]#header.logo-wrap {
    max-width: 100%;
}

html[data-ss-header-mode= "template"]#header.branch-logo {
    width: auto;
    max-width: 100%;
    height: auto;
    max-height: 58px;
    object-fit: contain;
}

html[data-ss-header-mode= "template"]#header.logo-placeholder {
    font-size: clamp(20px, 2vw, 30px);
    font-weight: 800;
    line-height: 1;
}

html[data-ss-header-mode= "template"]#header.ss-chrome-search {
    width: 100%;
    max-width: 720px;
    margin-inline: auto;
}

html[data-ss-header-mode= "template"]#header.ss-chrome-actions {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    min-width: max-content;
}

html[data-ss-header-mode= "template"]#header.desktop-search-form.input-group {
    min-height: 52px;
    padding: 4px 6px 4px 18px;
    border-radius: 18px;
    background: color-mix(in srgb,var(--surface-color) 88%,var(--background-color) 12%);
    box-shadow: 0 8px 28px rgba(15, 23, 42, .05);
}

html[data-ss-header-mode= "template"]#header.desktop-search-form.btn {
    min-width: 44px;
    border-radius: 13px !important;
}

html[data-ss-navigation-mode= "template"]#header.ss-chrome-navigation-shell {
    border-top: 1px solid color-mix(in srgb,var(--border-color) 70%, transparent);
    border-bottom: 1px solid color-mix(in srgb,var(--border-color) 70%, transparent);
    background: color-mix(in srgb,var(--surface-color) 94%, transparent);
    backdrop-filter: blur(18px);
    -webkit-backdrop-filter: blur(18px);
}

html[data-ss-navigation-mode= "template"]#header.ss-storefront-navigation-slot {
    min-height: 52px;
    display: flex;
    align-items: center;
}

html[data-ss-topbar-mode= "template"]#header.ss-storefront-topbar-slot {
    font-size: 12px;
    letter-spacing: .035em;
}

html[data-ss-header-mode= "template"]#header {
    backdrop-filter: saturate(140%) blur(14px);
    -webkit-backdrop-filter: saturate(140%) blur(14px);
}

/* Editorial / hospitality — generous brand, warm pill search, quiet luxury navigation */
html[data-ss-header-mode= "template"]:is([data-ss-storefront-family="fnb-hospitality"], [data-ss-storefront-family="restaurant"], [data-ss-storefront-family="hospitality"], [data-ss-storefront-family="beauty"]) #header.ss-chrome-row {
    grid-template-columns: minmax(190px, 1fr) minmax(320px, 620px) minmax(190px, 1fr);
    min-height: 104px;
}

html[data-ss-header-mode= "template"]:is([data-ss-storefront-family="fnb-hospitality"], [data-ss-storefront-family="restaurant"], [data-ss-storefront-family="hospitality"], [data-ss-storefront-family="beauty"]) #branch-header {
    justify-self: start;
}

html[data-ss-header-mode= "template"]:is([data-ss-storefront-family="fnb-hospitality"], [data-ss-storefront-family="restaurant"], [data-ss-storefront-family="hospitality"], [data-ss-storefront-family="beauty"]) #header.branch-logo {
    max-height: 66px;
}

html[data-ss-header-mode= "template"]:is([data-ss-storefront-family="fnb-hospitality"], [data-ss-storefront-family="restaurant"], [data-ss-storefront-family="hospitality"], [data-ss-storefront-family="beauty"]) #header.desktop-search-form.input-group {
    border-radius: 999px;
    background: color-mix(in srgb,var(--background-color) 82%, #fff 18%);
    box-shadow: none;
}

html[data-ss-navigation-mode= "template"]:is([data-ss-storefront-family="fnb-hospitality"], [data-ss-storefront-family="restaurant"], [data-ss-storefront-family="hospitality"], [data-ss-storefront-family="beauty"]) #navmenu > ul {
    min-height: 58px;
    gap: clamp(24px, 3vw, 48px);
}

    html[data-ss-navigation-mode= "template"]:is([data-ss-storefront-family="fnb-hospitality"], [data-ss-storefront-family="restaurant"], [data-ss-storefront-family="hospitality"], [data-ss-storefront-family="beauty"]) #navmenu > ul > li > a {
        font-size: 14px;
        letter-spacing: .06em;
    }

/* Maison / luxury — centered identity and deliberately restrained controls */
html[data-ss-header-mode= "template"]:is([data-ss-storefront-family="jewelry"], [data-ss-storefront-family="fashion"], [data-ss-storefront-family="finance"], [data-ss-storefront-family="real-estate"], [data-ss-storefront-family="legal"]) #header.ss-chrome-row {
    grid-template-columns: 1fr minmax(230px, 360px) 1fr;
    grid-template-areas: "search logo actions";
    min-height: 116px;
}

html[data-ss-header-mode= "template"]:is([data-ss-storefront-family="jewelry"], [data-ss-storefront-family="fashion"], [data-ss-storefront-family="finance"], [data-ss-storefront-family="real-estate"], [data-ss-storefront-family="legal"]) #branch-header {
    grid-area: logo;
    justify-self: center;
    justify-content: center;
    text-align: center;
}

html[data-ss-header-mode= "template"]:is([data-ss-storefront-family="jewelry"], [data-ss-storefront-family="fashion"], [data-ss-storefront-family="finance"], [data-ss-storefront-family="real-estate"], [data-ss-storefront-family="legal"]) #header.ss-chrome-search {
    grid-area: search;
    justify-self: start;
    max-width: 310px;
    margin: 0;
}

html[data-ss-header-mode= "template"]:is([data-ss-storefront-family="jewelry"], [data-ss-storefront-family="fashion"], [data-ss-storefront-family="finance"], [data-ss-storefront-family="real-estate"], [data-ss-storefront-family="legal"]) #header.ss-chrome-actions {
    grid-area: actions;
}

html[data-ss-header-mode= "template"]:is([data-ss-storefront-family="jewelry"], [data-ss-storefront-family="fashion"]) #header.branch-logo {
    max-height: 72px;
}

html[data-ss-header-mode= "template"]:is([data-ss-storefront-family="jewelry"], [data-ss-storefront-family="fashion"], [data-ss-storefront-family="finance"], [data-ss-storefront-family="real-estate"], [data-ss-storefront-family="legal"]) #header.desktop-search-form.input-group {
    min-height: 44px;
    padding-left: 12px;
    border-width: 0 0 1px;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
}

html[data-ss-navigation-mode= "template"]:is([data-ss-storefront-family="jewelry"], [data-ss-storefront-family="fashion"], [data-ss-storefront-family="finance"], [data-ss-storefront-family="real-estate"], [data-ss-storefront-family="legal"]) #header.ss-chrome-navigation-shell {
    border-top: 0;
    background: var(--background-color);
}

html[data-ss-navigation-mode= "template"]:is([data-ss-storefront-family="jewelry"], [data-ss-storefront-family="fashion"]) #navmenu > ul {
    min-height: 62px;
    gap: clamp(28px, 4vw, 62px);
}

/* Digital / SaaS — compact floating navigation language */
html[data-ss-header-mode= "template"]:is([data-ss-storefront-family="technology"], [data-ss-storefront-family="corporate"], [data-ss-storefront-family="education"], [data-ss-storefront-family="healthcare"]) #header.ss-chrome-row {
    grid-template-columns: minmax(150px, 220px) minmax(300px, 1fr) auto;
    min-height: 78px;
}

html[data-ss-header-mode= "template"]:is([data-ss-storefront-family="technology"], [data-ss-storefront-family="corporate"], [data-ss-storefront-family="education"], [data-ss-storefront-family="healthcare"]) #header.desktop-search-form.input-group {
    min-height: 48px;
    border-radius: 14px;
    border-color: color-mix(in srgb,var(--accent-color) 18%,var(--border-color));
}

html[data-ss-navigation-mode= "template"]:is([data-ss-storefront-family="technology"], [data-ss-storefront-family="corporate"], [data-ss-storefront-family="education"], [data-ss-storefront-family="healthcare"]) #header.ss-chrome-navigation-shell {
    margin: 0 clamp(12px, 2vw, 30px) 10px;
    border: 1px solid var(--border-color);
    border-radius: 16px;
    box-shadow: 0 12px 34px rgba(15, 23, 42, .06);
    overflow: visible;
}

html[data-ss-navigation-mode= "template"]:is([data-ss-storefront-family="technology"], [data-ss-storefront-family="corporate"], [data-ss-storefront-family="education"], [data-ss-storefront-family="healthcare"]) #navmenu > ul {
    min-height: 48px;
}

/* Industrial / automotive — dark command bar with prominent search */
html[data-ss-header-mode= "template"]:is([data-ss-storefront-family="automotive"], [data-ss-storefront-family="manufacturing"], [data-ss-storefront-family="construction"], [data-ss-storefront-family="logistics"], [data-ss-storefront-family="painting"]) #header.ss-chrome-main {
    background: #11161a;
    color: #fff;
    border-bottom: 3px solid var(--accent-color);
}

html[data-ss-header-mode= "template"]:is([data-ss-storefront-family="automotive"], [data-ss-storefront-family="manufacturing"], [data-ss-storefront-family="construction"], [data-ss-storefront-family="logistics"], [data-ss-storefront-family="painting"]) #header.ss-chrome-row {
    grid-template-columns: minmax(170px, 250px) minmax(340px, 1fr) auto;
    min-height: 92px;
}

html[data-ss-header-mode= "template"]:is([data-ss-storefront-family="automotive"], [data-ss-storefront-family="manufacturing"], [data-ss-storefront-family="construction"], [data-ss-storefront-family="logistics"], [data-ss-storefront-family="painting"]) #header.desktop-search-form.input-group {
    background: #fff;
    border: 0;
    border-radius: 10px;
    box-shadow: 0 12px 30px rgba(0, 0, 0, .2);
}

html[data-ss-navigation-mode= "template"]:is([data-ss-storefront-family="automotive"], [data-ss-storefront-family="manufacturing"], [data-ss-storefront-family="construction"], [data-ss-storefront-family="logistics"], [data-ss-storefront-family="painting"]) #header.ss-chrome-navigation-shell {
    border: 0;
    background: #1a2126;
    color: #fff;
}

html[data-ss-navigation-mode= "template"]:is([data-ss-storefront-family="automotive"], [data-ss-storefront-family="manufacturing"], [data-ss-storefront-family="construction"], [data-ss-storefront-family="logistics"], [data-ss-storefront-family="painting"]) #navmenu > ul {
    justify-content: flex-start;
    min-height: 58px;
}

/* Footer polish across template families */
html[data-ss-footer-mode= "template"]#footer.footer-main {
    padding-top: clamp(58px, 7vw, 96px);
    padding-bottom: clamp(44px, 6vw, 78px);
}

html[data-ss-footer-mode= "template"]#footer.footer-widget h4 {
    margin-bottom: 22px;
}

html[data-ss-footer-mode= "template"]#footer a {
    text-underline-offset: 4px;
    transition: opacity .2s ease, color .2s ease, transform .2s ease;
}

    html[data-ss-footer-mode= "template"]#footer a:hover {
        opacity: .78;
    }

html[data-ss-footer-mode= "template"]#footer.footer-bottom {
    padding-top: 22px;
    padding-bottom: 22px;
}

/* Responsive: keep all existing controls, but collapse composition cleanly. */
@media(max-width: 1199.98px) {
    html[data-ss-header-mode= "template"]#header.ss-chrome-row,
    html[data-ss-header-mode= "template"]:is([data-ss-storefront-family="jewelry"], [data-ss-storefront-family="fashion"], [data-ss-storefront-family="finance"], [data-ss-storefront-family="real-estate"], [data-ss-storefront-family="legal"]) #header.ss-chrome-row {
        display: flex;
        min-height: 72px;
        padding: 9px 0;
        gap: 14px;
        justify-content: space-between;
    }

    html[data-ss-header-mode= "template"]#header.ss-chrome-search {
        display: none !important;
    }

    html[data-ss-header-mode= "template"]#header.ss-chrome-logo {
        order: 1;
    }

    html[data-ss-header-mode= "template"]#header.ss-chrome-actions {
        order: 2;
        margin-left: auto;
    }

    html[data-ss-header-mode= "template"]#header.branch-logo {
        max-height: 48px !important;
        max-width: 180px;
    }

    html[data-ss-navigation-mode= "template"]#header.ss-chrome-navigation-shell {
        margin: 0 !important;
        border-radius: 0 !important;
        box-shadow: none !important;
    }
}

@media(max-width: 575.98px) {
    html[data-ss-header-mode= "template"]#header.ss-chrome-row {
        min-height: 64px;
    }

    html[data-ss-header-mode= "template"]#header.branch-logo {
        max-height: 42px !important;
        max-width: 145px;
    }

    html[data-ss-topbar-mode= "template"]#header.ss-storefront-topbar-slot {
        font-size: 11px;
    }
}


/* ========================================================================
   SoftSpin Storefront V5 — Modern Commerce Chrome
   Structural commerce UX inspired by proven large-store patterns, while
   preserving SoftSpin's own branding, partials and functional controls.
   ======================================================================== */

html[data-ss-header-mode= "template"]#header {
    --ss-commerce-max: 1480px;
    --ss-commerce-radius: 14px;
    --ss-commerce-shadow: 0 10px 30px rgba(0, 0, 0, .08);
    box-shadow: 0 1px 0 rgba(0, 0, 0, .06);
}

    html[data-ss-header-mode= "template"]#header.container-xl,
    html[data-ss-navigation-mode= "template"]#header.container-xl,
    html[data-ss-footer-mode= "template"]#footer.container-xl {
        max-width: var(--ss-commerce-max, 1480px);
    }

    html[data-ss-header-mode= "template"]#header.ss-chrome-main {
        position: relative;
        border: 0;
    }

    html[data-ss-header-mode= "template"]#header.ss-commerce-kicker {
        position: absolute;
        right: 12px;
        top: 7px;
        display: flex;
        align-items: center;
        gap: 7px;
        z-index: 2;
        font-size: 10px;
        font-weight: 700;
        letter-spacing: .03em;
        opacity: .58;
        pointer-events: none;
    }

    html[data-ss-header-mode= "template"]#header.ss-commerce-kicker__dot {
        width: 6px;
        height: 6px;
        border-radius: 50%;
        background: var(--accent-color);
    }

    html[data-ss-header-mode= "template"]#header.ss-commerce-kicker__sep {
        opacity: .45;
    }

    html[data-ss-header-mode= "template"]#header.ss-chrome-row {
        min-height: 88px;
        display: grid;
        grid-template-columns: minmax(170px, 240px) minmax(420px, 1fr) minmax(190px, auto);
        align-items: center;
        gap: clamp(24px, 3vw, 54px);
        padding: 15px 0 12px;
    }

    html[data-ss-header-mode= "template"]#header.ss-chrome-logo {
        min-width: 0;
        justify-content: flex-start;
    }

    html[data-ss-header-mode= "template"]#header.logo-wrap {
        width: auto;
        max-width: 220px;
        padding: 0;
        background: transparent !important;
        border: 0 !important;
        box-shadow: none !important;
    }

    html[data-ss-header-mode= "template"]#header.branch-logo {
        width: auto !important;
        max-width: 210px !important;
        height: auto !important;
        max-height: 54px !important;
        object-fit: contain;
    }

    html[data-ss-header-mode= "template"]#header.desktop-search-form {
        width: 100%;
        max-width: none;
        margin: 0;
    }

        html[data-ss-header-mode= "template"]#header.desktop-search-form.input-group {
            min-height: 52px;
            display: flex;
            align-items: stretch;
            overflow: hidden;
            border: 1px solid color-mix(in srgb,var(--default-color) 14%, transparent);
            border-radius: var(--ss-commerce-radius);
            background: var(--surface-color, #fff);
            box-shadow: 0 2px 10px rgba(0, 0, 0, .04);
            transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease;
        }

            html[data-ss-header-mode= "template"]#header.desktop-search-form.input-group:focus-within {
                border-color: color-mix(in srgb,var(--accent-color) 70%, transparent);
                box-shadow: 0 0 0 4px color-mix(in srgb,var(--accent-color) 12%, transparent), 0 8px 24px rgba(0, 0, 0, .07);
            }

        html[data-ss-header-mode= "template"]#header.desktop-search-form.form-control {
            min-width: 0;
            border: 0 !important;
            background: transparent !important;
            box-shadow: none !important;
            padding: 0 18px;
            font-size: 14px;
        }

        html[data-ss-header-mode= "template"]#header.desktop-search-form.btn {
            min-width: 58px;
            border: 0 !important;
            border-radius: 0 !important;
            display: inline-flex;
            align-items: center;
            justify-content: center;
            font-size: 18px;
        }

    html[data-ss-header-mode= "template"]#header #publicSearchButton {
        background: var(--accent-color);
        color: var(--contrast-color, #fff);
    }

    html[data-ss-header-mode= "template"]#header #scanBarcodeButton {
        background: color-mix(in srgb,var(--background-color) 82%,var(--surface-color));
        color: var(--heading-color);
        border-left: 1px solid var(--border-color) !important;
    }

    html[data-ss-header-mode= "template"]#header.ss-chrome-actions {
        display: flex;
        justify-content: flex-end;
        align-items: center;
        min-width: max-content;
    }

        html[data-ss-header-mode= "template"]#header.ss-chrome-actions a,
        html[data-ss-header-mode= "template"]#header.ss-chrome-actions button {
            border-radius: 10px;
            transition: background .2s ease, transform .2s ease, color .2s ease;
        }

            html[data-ss-header-mode= "template"]#header.ss-chrome-actions a:hover,
            html[data-ss-header-mode= "template"]#header.ss-chrome-actions button:hover {
                background: color-mix(in srgb,var(--accent-color) 10%, transparent);
                transform: translateY(-1px);
            }

/* Full-width commerce navigation. Fixes the old half-width colored bar. */
html[data-ss-navigation-mode= "template"]#header.ss-chrome-navigation-shell {
    width: 100%;
    margin: 0 !important;
    border: 0 !important;
    border-top: 1px solid color-mix(in srgb,var(--default-color) 8%, transparent) !important;
    border-bottom: 1px solid color-mix(in srgb,var(--default-color) 10%, transparent) !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    background: var(--surface-color, #fff);
}

html[data-ss-navigation-mode= "template"]#header.ss-commerce-nav-container {
    display: flex;
    align-items: stretch;
    gap: 0;
    padding-left: 12px;
    padding-right: 12px;
}

html[data-ss-navigation-mode= "template"]#header.ss-commerce-nav-lead {
    flex: 0 0 auto;
    display: flex;
    align-items: center;
    gap: 9px;
    min-height: 50px;
    padding: 0 20px;
    margin-right: 8px;
    color: var(--contrast-color, #fff);
    background: var(--accent-color);
    font-size: 13px;
    font-weight: 800;
    letter-spacing: .01em;
}

html[data-ss-navigation-mode= "template"]#header.ss-storefront-navigation-slot {
    flex: 1 1 auto;
    min-width: 0;
}

html[data-ss-navigation-mode= "template"]#header #navmenu,
html[data-ss-navigation-mode= "template"]#header #navmenu > ul {
    width: 100%;
}

    html[data-ss-navigation-mode= "template"]#header #navmenu > ul {
        min-height: 50px !important;
        display: flex;
        align-items: stretch;
        justify-content: flex-start !important;
        gap: 0 !important;
        margin: 0;
    }

        html[data-ss-navigation-mode= "template"]#header #navmenu > ul > li {
            display: flex;
            align-items: stretch;
        }

            html[data-ss-navigation-mode= "template"]#header #navmenu > ul > li > a {
                display: flex !important;
                align-items: center;
                padding: 0 clamp(13px, 1.35vw, 22px) !important;
                min-height: 50px;
                border-radius: 0 !important;
                font-size: 13px !important;
                font-weight: 700 !important;
                letter-spacing: 0 !important;
                white-space: nowrap;
                transition: background .18s ease, color .18s ease;
            }

                html[data-ss-navigation-mode= "template"]#header #navmenu > ul > li > a:hover,
                html[data-ss-navigation-mode= "template"]#header #navmenu > ul > li:hover > a {
                    background: color-mix(in srgb,var(--accent-color) 9%, transparent) !important;
                    color: var(--accent-color) !important;
                }

    /* Dropdowns become modern commerce flyouts. */
    html[data-ss-navigation-mode= "template"]#header #navmenu ul ul {
        min-width: 240px;
        padding: 10px !important;
        border: 1px solid color-mix(in srgb,var(--default-color) 10%, transparent) !important;
        border-radius: 14px !important;
        background: var(--surface-color, #fff) !important;
        box-shadow: 0 18px 50px rgba(0, 0, 0, .14) !important;
    }

        html[data-ss-navigation-mode= "template"]#header #navmenu ul ul a {
            padding: 11px 13px !important;
            border-radius: 9px !important;
            font-size: 13px !important;
        }

            html[data-ss-navigation-mode= "template"]#header #navmenu ul ul a:hover {
                background: color-mix(in srgb,var(--accent-color) 9%, transparent) !important;
                color: var(--accent-color) !important;
            }

/* Top utility bar: compact, legible and less visually dominant. */
html[data-ss-topbar-mode= "template"]#header.ss-storefront-topbar-slot {
    min-height: 34px;
    border: 0 !important;
    font-size: 12px;
}

    html[data-ss-topbar-mode= "template"]#header.ss-storefront-topbar-slot a,
    html[data-ss-topbar-mode= "template"]#header.ss-storefront-topbar-slot span {
        line-height: 1.2;
    }

/* Modern commerce footer masthead */
html[data-ss-footer-mode= "template"]#footer {
    margin-top: 0;
    border: 0 !important;
}

    html[data-ss-footer-mode= "template"]#footer.ss-commerce-footer-masthead {
        border-bottom: 1px solid rgba(255, 255, 255, .10);
        background: color-mix(in srgb,var(--heading-color) 94%,#000);
        color: #fff;
    }

    html[data-ss-footer-mode= "template"]#footer.ss-commerce-footer-masthead__inner {
        min-height: 104px;
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 30px;
        padding-top: 22px;
        padding-bottom: 22px;
    }

    html[data-ss-footer-mode= "template"]#footer.ss-commerce-footer-brand {
        display: flex;
        align-items: center;
        min-width: 180px;
        color: #fff;
        text-decoration: none;
    }

        html[data-ss-footer-mode= "template"]#footer.ss-commerce-footer-brand img {
            width: auto;
            height: auto;
            max-width: 210px;
            max-height: 52px;
            object-fit: contain;
            filter: brightness(0) invert(1);
        }

        html[data-ss-footer-mode= "template"]#footer.ss-commerce-footer-brand strong {
            font-size: 24px;
            letter-spacing: .02em;
        }

    html[data-ss-footer-mode= "template"]#footer.ss-commerce-footer-promise {
        display: flex;
        align-items: center;
        justify-content: flex-end;
        gap: clamp(20px, 3vw, 44px);
        flex-wrap: wrap;
    }

        html[data-ss-footer-mode= "template"]#footer.ss-commerce-footer-promise span {
            display: flex;
            align-items: center;
            gap: 9px;
            color: rgba(255, 255, 255, .82);
            font-size: 12px;
            font-weight: 650;
        }

        html[data-ss-footer-mode= "template"]#footer.ss-commerce-footer-promise i {
            color: var(--accent-color);
            font-size: 19px;
        }

    html[data-ss-footer-mode= "template"]#footer.ss-commerce-footer-content {
        background: color-mix(in srgb,var(--heading-color) 97%,#000);
    }

    html[data-ss-footer-mode= "template"]#footer.footer-main {
        padding-top: 58px !important;
        padding-bottom: 52px !important;
    }

    html[data-ss-footer-mode= "template"]#footer.footer-widget h4,
    html[data-ss-footer-mode= "template"]#footer h4 {
        font-size: 13px !important;
        font-weight: 800 !important;
        letter-spacing: .08em !important;
        text-transform: uppercase;
    }

    html[data-ss-footer-mode= "template"]#footer.footer-widget a,
    html[data-ss-footer-mode= "template"]#footer.footer-widget p,
    html[data-ss-footer-mode= "template"]#footer.footer-widget li {
        font-size: 13px;
        line-height: 1.85;
    }

/* F&B / hospitality: premium marketplace treatment, not a giant dark slab. */
html[data-ss-header-mode= "template"]:is([data-ss-storefront-family="fnb-hospitality"], [data-ss-storefront-family="restaurant"], [data-ss-storefront-family="hospitality"]) #header.ss-chrome-main {
    background: var(--surface-color, #fff) !important;
    color: var(--default-color) !important;
}

html[data-ss-navigation-mode= "template"]:is([data-ss-storefront-family="fnb-hospitality"], [data-ss-storefront-family="restaurant"], [data-ss-storefront-family="hospitality"]) #header.ss-chrome-navigation-shell {
    background: var(--surface-color, #fff) !important;
    color: var(--default-color) !important;
}

html[data-ss-header-mode= "template"]:is([data-ss-storefront-family="fnb-hospitality"], [data-ss-storefront-family="restaurant"], [data-ss-storefront-family="hospitality"]) #header.desktop-search-form.input-group {
    border-radius: 999px;
}

html[data-ss-header-mode= "template"]:is([data-ss-storefront-family="fnb-hospitality"], [data-ss-storefront-family="restaurant"], [data-ss-storefront-family="hospitality"]) #header #publicSearchButton {
    border-radius: 999px !important;
    margin: 5px;
    min-width: 50px;
}

html[data-ss-header-mode= "template"]:is([data-ss-storefront-family="fnb-hospitality"], [data-ss-storefront-family="restaurant"], [data-ss-storefront-family="hospitality"]) #header #scanBarcodeButton {
    margin: 5px 5px 5px 0;
    border-radius: 999px !important;
}

/* Luxury: elegant restrained chrome, but retain strong commerce usability. */
html[data-ss-header-mode= "template"]:is([data-ss-storefront-family="jewelry"], [data-ss-storefront-family="fashion"], [data-ss-storefront-family="beauty"]) #header.ss-chrome-row {
    grid-template-columns: minmax(190px, 260px) minmax(380px, 1fr) auto !important;
}

html[data-ss-navigation-mode= "template"]:is([data-ss-storefront-family="jewelry"], [data-ss-storefront-family="fashion"], [data-ss-storefront-family="beauty"]) #header.ss-commerce-nav-lead {
    background: transparent;
    color: var(--heading-color);
    border-right: 1px solid var(--border-color);
}

/* Industrial: preserve authority but make the layout coherent/full width. */
html[data-ss-header-mode= "template"]:is([data-ss-storefront-family="automotive"], [data-ss-storefront-family="manufacturing"], [data-ss-storefront-family="construction"], [data-ss-storefront-family="logistics"], [data-ss-storefront-family="painting"]) #header.ss-chrome-main {
    background: #11161a !important;
}

html[data-ss-navigation-mode= "template"]:is([data-ss-storefront-family="automotive"], [data-ss-storefront-family="manufacturing"], [data-ss-storefront-family="construction"], [data-ss-storefront-family="logistics"], [data-ss-storefront-family="painting"]) #header.ss-chrome-navigation-shell {
    background: #1a2126 !important;
    color: #fff !important;
}

/* Mobile commerce chrome */
@media(max-width: 1199.98px) {
    html[data-ss-header-mode= "template"]#header.ss-commerce-kicker {
        display: none;
    }

    html[data-ss-header-mode= "template"]#header.ss-chrome-row,
    html[data-ss-header-mode= "template"]:is([data-ss-storefront-family="jewelry"], [data-ss-storefront-family="fashion"], [data-ss-storefront-family="beauty"]) #header.ss-chrome-row {
        display: flex !important;
        min-height: 68px !important;
        padding: 8px 0 !important;
    }

    html[data-ss-header-mode= "template"]#header.logo-wrap {
        max-width: 170px;
    }

    html[data-ss-header-mode= "template"]#header.branch-logo {
        max-width: 165px !important;
        max-height: 44px !important;
    }

    html[data-ss-navigation-mode= "template"]#header.ss-commerce-nav-lead {
        display: none;
    }

    html[data-ss-navigation-mode= "template"]#header.ss-commerce-nav-container {
        padding: 0;
    }
}

@media(max-width: 767.98px) {
    html[data-ss-footer-mode= "template"]#footer.ss-commerce-footer-masthead__inner {
        min-height: auto;
        flex-direction: column;
        align-items: flex-start;
        padding-top: 28px;
        padding-bottom: 28px;
    }

    html[data-ss-footer-mode= "template"]#footer.ss-commerce-footer-promise {
        width: 100%;
        justify-content: flex-start;
        gap: 16px 26px;
    }
}

@media(max-width: 575.98px) {
    html[data-ss-header-mode= "template"]#header.ss-chrome-row {
        min-height: 62px !important;
    }

    html[data-ss-header-mode= "template"]#header.logo-wrap {
        max-width: 138px;
    }

    html[data-ss-header-mode= "template"]#header.branch-logo {
        max-width: 134px !important;
        max-height: 38px !important;
    }

    html[data-ss-footer-mode= "template"]#footer.ss-commerce-footer-promise {
        display: grid;
        grid-template-columns: 1fr;
    }
}


/* =====================================================================
   SoftSpin definitive desktop header spacing fix
   Actual rendered structure:
   .ss-chrome-row > #branch-header + #publicSearchForm + .ss-chrome-actions
   ===================================================================== */
@media (min-width: 1200px) {
    html[data-ss-header-mode="template"] #header .ss-chrome-row {
        display: grid !important;
        grid-template-columns: minmax(180px, 260px) minmax(360px, 1fr) auto !important;
        align-items: center !important;
        column-gap: 36px !important;
    }

    html[data-ss-header-mode="template"] #header #branch-header.ss-chrome-logo {
        position: static !important;
        inset: auto !important;
        transform: none !important;
        width: auto !important;
        min-width: 0 !important;
        margin: 0 !important;
        justify-self: start !important;
    }

    html[data-ss-header-mode="template"] #header #branch-header .logo-wrap {
        width: auto !important;
        max-width: 234px !important;
    }

    html[data-ss-header-mode="template"] #header #branch-header .branch-logo {
        display: block !important;
        width: auto !important;
        max-width: 234px !important;
        height: auto !important;
        max-height: 54px !important;
        object-fit: contain !important;
    }

    html[data-ss-header-mode="template"] #header #publicSearchForm.ss-chrome-search {
        position: static !important;
        width: 100% !important;
        min-width: 0 !important;
        max-width: none !important;
        margin: 0 !important;
        justify-self: stretch !important;
    }

    html[data-ss-header-mode="template"] #header .ss-chrome-actions {
        position: static !important;
        min-width: max-content !important;
        margin: 0 !important;
        justify-self: end !important;
    }
}

/* =====================================================================
   SoftSpin Global Commerce Navigation v8
   Modern marketplace-style navigation for every explicit storefront
   navigation design. "Initial" remains the original SoftSpin navigation.
   ===================================================================== */
@media (min-width: 992px) {
    html:not([data-ss-navigation-design="initial"]) #header .ss-chrome-navigation-shell {
        position: relative;
        z-index: 1020;
        border-top: 1px solid color-mix(in srgb, var(--border-color) 78%, transparent);
        border-bottom: 1px solid color-mix(in srgb, var(--border-color) 82%, transparent);
        background: color-mix(in srgb, var(--surface-color) 96%, var(--background-color) 4%);
        box-shadow: 0 5px 18px rgba(18, 24, 32, .045);
    }

    html:not([data-ss-navigation-design="initial"]) #header .ss-commerce-nav-container {
        padding-top: 0 !important;
        padding-bottom: 0 !important;
    }

    html:not([data-ss-navigation-design="initial"]) #header .ss-commerce-nav-row {
        display: grid;
        grid-template-columns: max-content minmax(0, 1fr) max-content;
        align-items: stretch;
        gap: clamp(18px, 2vw, 32px);
        min-height: 66px;
    }

    html:not([data-ss-navigation-design="initial"]) #header .ss-commerce-all-categories {
        display: inline-flex;
        align-items: center;
        gap: 11px;
        align-self: center;
        min-height: 44px;
        padding: 0 20px;
        border: 1px solid color-mix(in srgb, var(--accent-color) 72%, transparent);
        border-radius: 9px;
        background: var(--accent-color);
        color: var(--contrast-color, #fff) !important;
        font-size: 14px;
        font-weight: 750;
        line-height: 1;
        text-decoration: none !important;
        white-space: nowrap;
        box-shadow: 0 8px 20px color-mix(in srgb, var(--accent-color) 18%, transparent);
        transition: transform .18s ease, box-shadow .18s ease, filter .18s ease;
    }

        html:not([data-ss-navigation-design="initial"]) #header .ss-commerce-all-categories:hover {
            transform: translateY(-1px);
            filter: brightness(.96);
            box-shadow: 0 10px 24px color-mix(in srgb, var(--accent-color) 24%, transparent);
        }

        html:not([data-ss-navigation-design="initial"]) #header .ss-commerce-all-categories i {
            font-size: 22px;
            line-height: 1;
        }

    html:not([data-ss-navigation-design="initial"]) #header .ss-storefront-navigation-slot,
    html:not([data-ss-navigation-design="initial"]) #header .header-nav,
    html:not([data-ss-navigation-design="initial"]) #header .header-nav > .container-fluid,
    html:not([data-ss-navigation-design="initial"]) #header .header-nav .position-relative,
    html:not([data-ss-navigation-design="initial"]) #header #navmenu {
        min-width: 0;
        height: 100%;
    }

        html:not([data-ss-navigation-design="initial"]) #header .header-nav > .container-fluid {
            width: 100%;
            max-width: none;
            padding: 0;
        }

        html:not([data-ss-navigation-design="initial"]) #header #navmenu > ul {
            display: flex;
            align-items: stretch;
            justify-content: flex-start !important;
            gap: clamp(4px, .55vw, 10px) !important;
            width: 100%;
            height: 100%;
            margin: 0 !important;
            padding: 0 !important;
            overflow: visible;
        }

            html:not([data-ss-navigation-design="initial"]) #header #navmenu > ul > li {
                position: relative;
                display: flex;
                align-items: stretch;
                flex: 0 0 auto;
            }

                html:not([data-ss-navigation-design="initial"]) #header #navmenu > ul > li > a {
                    position: relative;
                    display: inline-flex;
                    align-items: center;
                    gap: 7px;
                    min-height: 66px;
                    padding: 0 clamp(9px, .7vw, 14px) !important;
                    border-radius: 0 !important;
                    background: transparent !important;
                    color: var(--heading-color) !important;
                    font-family: inherit !important;
                    font-size: 14px !important;
                    font-weight: 650 !important;
                    letter-spacing: 0 !important;
                    line-height: 1.2;
                    text-decoration: none !important;
                    white-space: nowrap;
                    transition: color .18s ease, background-color .18s ease;
                }

                    html:not([data-ss-navigation-design="initial"]) #header #navmenu > ul > li > a::after {
                        position: absolute !important;
                        right: 11px !important;
                        bottom: 0 !important;
                        left: 11px !important;
                        width: auto !important;
                        height: 3px !important;
                        margin: 0 !important;
                        border-radius: 999px 999px 0 0 !important;
                        content: "";
                        background: var(--accent-color) !important;
                        opacity: 0;
                        transform: scaleX(.25);
                        transform-origin: center;
                        transition: opacity .18s ease, transform .18s ease !important;
                    }

                    html:not([data-ss-navigation-design="initial"]) #header #navmenu > ul > li > a:hover,
                    html:not([data-ss-navigation-design="initial"]) #header #navmenu > ul > li > a.active,
                    html:not([data-ss-navigation-design="initial"]) #header #navmenu > ul > li.active > a {
                        color: var(--accent-color) !important;
                        background: color-mix(in srgb, var(--accent-color) 5%, transparent) !important;
                    }

                        html:not([data-ss-navigation-design="initial"]) #header #navmenu > ul > li > a:hover::after,
                        html:not([data-ss-navigation-design="initial"]) #header #navmenu > ul > li > a.active::after,
                        html:not([data-ss-navigation-design="initial"]) #header #navmenu > ul > li.active > a::after {
                            opacity: 1;
                            transform: scaleX(1);
                        }

        html:not([data-ss-navigation-design="initial"]) #header #navmenu .toggle-dropdown {
            color: var(--muted-color);
            font-size: 11px;
        }

    html:not([data-ss-navigation-design="initial"]) #header .ss-commerce-nav-utility {
        display: flex;
        align-items: center;
        justify-content: flex-end;
        gap: 4px;
        white-space: nowrap;
    }

        html:not([data-ss-navigation-design="initial"]) #header .ss-commerce-nav-utility > a {
            display: inline-flex;
            align-items: center;
            gap: 7px;
            min-height: 42px;
            padding: 0 10px;
            border-radius: 8px;
            color: var(--default-color);
            font-size: 13px;
            font-weight: 600;
            text-decoration: none;
            transition: color .18s ease, background-color .18s ease;
        }

            html:not([data-ss-navigation-design="initial"]) #header .ss-commerce-nav-utility > a:hover {
                color: var(--accent-color);
                background: color-mix(in srgb, var(--accent-color) 7%, transparent);
            }

        html:not([data-ss-navigation-design="initial"]) #header .ss-commerce-nav-utility i {
            color: var(--accent-color);
            font-size: 17px;
        }

    /* Dropdown / mega menu polish */
    html:not([data-ss-navigation-design="initial"]) #header #navmenu li > ul,
    html:not([data-ss-navigation-design="initial"]) #header .desktop-megamenu {
        border: 1px solid color-mix(in srgb, var(--border-color) 82%, transparent);
        border-radius: 0 0 14px 14px;
        background: var(--surface-color);
        box-shadow: 0 22px 55px rgba(20, 25, 32, .14);
    }
}

@media (max-width: 1199.98px) and (min-width: 992px) {
    html:not([data-ss-navigation-design="initial"]) #header .ss-commerce-nav-row {
        grid-template-columns: max-content minmax(0, 1fr);
        gap: 14px;
    }

    html:not([data-ss-navigation-design="initial"]) #header .ss-commerce-nav-utility {
        display: none;
    }

    html:not([data-ss-navigation-design="initial"]) #header #navmenu > ul > li > a {
        padding-right: 8px !important;
        padding-left: 8px !important;
        font-size: 13px !important;
    }
}

@media (max-width: 991.98px) {
    html:not([data-ss-navigation-design="initial"]) #header .ss-commerce-nav-row {
        display: block;
    }

    html:not([data-ss-navigation-design="initial"]) #header .ss-commerce-all-categories,
    html:not([data-ss-navigation-design="initial"]) #header .ss-commerce-nav-utility {
        display: none;
    }

    html:not([data-ss-navigation-design="initial"]) #header .ss-chrome-navigation-shell,
    html:not([data-ss-navigation-design="initial"]) #header .ss-commerce-nav-container {
        padding: 0 !important;
        border: 0;
    }
}

/* =====================================================================
   Dynamic Homepage carousel edge fix - ALL built-in template families
   Removes the dark/blank strip before the first carousel image without
   changing the dynamic carousel contract or its runtime data.
   ===================================================================== */
main section[data-softspin-section="carousel"],
main [data-softspin-section="carousel"] {
    margin-top: 0 !important;
    padding-top: 0 !important;
}

    main [data-softspin-section="carousel"] > [data-softspin-container] {
        position: relative;
        top: 0;
        margin-top: 0 !important;
        padding-top: 0 !important;
    }

        main [data-softspin-section="carousel"] > [data-softspin-container] > * {
            top: 0 !important;
            margin-top: 0 !important;
        }

    main [data-softspin-section="carousel"] [data-softspin-field-wrapper="image"] {
        top: 0 !important;
        margin-top: 0 !important;
    }

        main [data-softspin-section="carousel"] [data-softspin-field-wrapper="image"] > img {
            display: block !important;
            margin: 0 !important;
        }

/* =====================================================================
   SoftSpin Storefront V8.1 - menu dropdown repair + live categories
   ===================================================================== */
@media (min-width: 992px) {
    html:not([data-ss-navigation-design="initial"]) #header .ss-commerce-categories {
        position: relative;
        display: flex;
        align-items: center;
    }

    html:not([data-ss-navigation-design="initial"]) #header .ss-commerce-categories-chevron {
        margin-left: 4px;
        font-size: 10px;
        transition: transform .18s ease;
    }

    html.ss-commerce-categories-open:not([data-ss-navigation-design="initial"])
    #header .ss-commerce-categories-chevron {
        transform: rotate(180deg);
    }

    html:not([data-ss-navigation-design="initial"]) #header .ss-commerce-categories-menu {
        position: absolute;
        z-index: 1200;
        top: calc(100% + 1px);
        left: 0;
        width: min(920px, calc(100vw - 48px));
        max-height: min(640px, calc(100vh - var(--header-offset) - 24px));
        overflow: auto;
        padding: 22px;
        border: 1px solid color-mix(in srgb, var(--border-color) 84%, transparent);
        border-radius: 0 0 16px 16px;
        background: var(--surface-color);
        color: var(--default-color);
        box-shadow: 0 24px 60px rgba(18, 24, 32, .18);
    }

        html:not([data-ss-navigation-design="initial"]) #header .ss-commerce-categories-menu[hidden] {
            display: none !important;
        }

    html:not([data-ss-navigation-design="initial"]) #header .ss-commerce-categories-head {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 20px;
        margin-bottom: 18px;
        padding-bottom: 14px;
        border-bottom: 1px solid var(--border-color);
    }

        html:not([data-ss-navigation-design="initial"]) #header .ss-commerce-categories-head strong {
            color: var(--heading-color);
            font-size: 18px;
        }

        html:not([data-ss-navigation-design="initial"]) #header .ss-commerce-categories-head a {
            color: var(--accent-color);
            font-size: 13px;
            font-weight: 700;
            text-decoration: none;
        }

    html:not([data-ss-navigation-design="initial"]) #header .ss-commerce-category-grid {
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 22px 28px;
    }

    html:not([data-ss-navigation-design="initial"]) #header .ss-commerce-category-column {
        min-width: 0;
        margin: 0;
        padding: 0;
    }

    html:not([data-ss-navigation-design="initial"]) #header .ss-commerce-category-root {
        display: flex;
        align-items: center;
        gap: 11px;
        margin-bottom: 10px;
        color: var(--heading-color);
        text-decoration: none;
    }

    html:not([data-ss-navigation-design="initial"]) #header .ss-commerce-category-icon {
        display: grid;
        flex: 0 0 42px;
        width: 42px;
        height: 42px;
        place-items: center;
        overflow: hidden;
        border-radius: 9px;
        background: color-mix(in srgb, var(--accent-color) 9%, var(--surface-color));
        color: var(--accent-color);
    }

        html:not([data-ss-navigation-design="initial"]) #header .ss-commerce-category-icon img {
            width: 100%;
            height: 100%;
            object-fit: cover;
        }

    html:not([data-ss-navigation-design="initial"]) #header .ss-commerce-category-root-copy {
        display: flex;
        min-width: 0;
        flex-direction: column;
    }

        html:not([data-ss-navigation-design="initial"]) #header .ss-commerce-category-root-copy strong {
            overflow: hidden;
            color: var(--heading-color);
            font-size: 14px;
            font-weight: 800;
            text-overflow: ellipsis;
            white-space: nowrap;
        }

        html:not([data-ss-navigation-design="initial"]) #header .ss-commerce-category-root-copy small {
            margin-top: 2px;
            color: var(--muted-color);
            font-size: 11px;
        }

    html:not([data-ss-navigation-design="initial"]) #header .ss-commerce-feature-groups,
    html:not([data-ss-navigation-design="initial"]) #header .ss-commerce-category-children {
        display: flex;
        flex-direction: column;
        gap: 2px;
        min-width: 0;
    }

    html:not([data-ss-navigation-design="initial"]) #header .ss-commerce-feature-link,
    html:not([data-ss-navigation-design="initial"]) #header .ss-commerce-category-child-link {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 10px;
        min-height: 30px;
        padding: 5px 8px;
        border-radius: 6px;
        color: var(--default-color);
        font-size: 12.5px;
        font-weight: 500;
        line-height: 1.35;
        text-decoration: none;
    }

    html:not([data-ss-navigation-design="initial"]) #header .ss-commerce-feature-link {
        padding-left: 53px;
        color: var(--muted-color);
    }

        html:not([data-ss-navigation-design="initial"]) #header .ss-commerce-category-child-link:hover,
        html:not([data-ss-navigation-design="initial"]) #header .ss-commerce-feature-link:hover {
            background: color-mix(in srgb, var(--accent-color) 7%, transparent);
            color: var(--accent-color);
        }

    html:not([data-ss-navigation-design="initial"]) #header .ss-commerce-category-child-link small {
        flex: 0 0 auto;
        color: var(--muted-color);
        font-size: 10px;
    }

    html:not([data-ss-navigation-design="initial"]) #header
    .ss-commerce-category-children[data-level="1"] {
        margin-top: 4px;
        padding-left: 45px;
    }

    html:not([data-ss-navigation-design="initial"]) #header
    .ss-commerce-category-children[data-level="2"],
    html:not([data-ss-navigation-design="initial"]) #header
    .ss-commerce-category-children[data-level="3"] {
        margin-left: 10px;
        padding-left: 8px;
        border-left: 1px solid var(--border-color);
    }

    html:not([data-ss-navigation-design="initial"]) #header .ss-commerce-categories-loading,
    html:not([data-ss-navigation-design="initial"]) #header .ss-commerce-categories-empty {
        padding: 30px;
        color: var(--muted-color);
        text-align: center;
    }

    /* Repair the normal top-menu dropdowns. The previous rule inherited a
       very narrow width from the compact navigation row and clipped items. */
    html:not([data-ss-navigation-design="initial"]) #header #navmenu > ul > li > ul {
        position: absolute !important;
        top: 100% !important;
        left: 0 !important;
        width: max-content !important;
        min-width: 250px !important;
        max-width: 360px !important;
        height: auto !important;
        min-height: 0 !important;
        margin: 0 !important;
        padding: 10px !important;
        overflow: visible !important;
        border: 1px solid color-mix(in srgb, var(--border-color) 82%, transparent) !important;
        border-radius: 0 0 12px 12px !important;
        background: var(--surface-color) !important;
        box-shadow: 0 20px 48px rgba(20, 25, 32, .16) !important;
    }

        html:not([data-ss-navigation-design="initial"]) #header #navmenu > ul > li > ul > li {
            display: block !important;
            width: 100% !important;
            height: auto !important;
            min-height: 0 !important;
            margin: 0 !important;
            padding: 0 !important;
        }

            html:not([data-ss-navigation-design="initial"]) #header #navmenu > ul > li > ul > li > a {
                display: flex !important;
                width: 100% !important;
                min-height: 38px !important;
                align-items: center !important;
                padding: 9px 12px !important;
                border-radius: 7px !important;
                color: var(--default-color) !important;
                font-size: 13px !important;
                font-weight: 550 !important;
                line-height: 1.35 !important;
                white-space: normal !important;
                overflow: visible !important;
                text-overflow: clip !important;
            }

                html:not([data-ss-navigation-design="initial"]) #header #navmenu > ul > li > ul > li > a:hover,
                html:not([data-ss-navigation-design="initial"]) #header #navmenu > ul > li > ul > li > a.active {
                    background: color-mix(in srgb, var(--accent-color) 8%, transparent) !important;
                    color: var(--accent-color) !important;
                }

                html:not([data-ss-navigation-design="initial"]) #header #navmenu > ul > li > ul > li > a::after {
                    display: none !important;
                }
}

/* =====================================================================
   Carousel flush-top fix - source templates AND generated runtime markup.
   Published homepage HTML no longer depends on the source-only attributes.
   ===================================================================== */
#main-content > [data-softspin-section="carousel"],
#main-content > [data-softspin-runtime="carousel"],
#main-content [data-softspin-section="carousel"],
#main-content [data-softspin-runtime="carousel"],
#main-content .fbh-hero,
#main-content .pnt-carousel {
    top: 0 !important;
    margin-top: 0 !important;
    padding-top: 0 !important;
    transform: none;
}

    #main-content [data-softspin-section="carousel"] > [data-softspin-container],
    #main-content [data-softspin-runtime="carousel"] > [data-softspin-container],
    #main-content [data-softspin-runtime="carousel"] > [data-softspin-runtime-container],
    #main-content .fbh-track,
    #main-content .pnt-carousel-track {
        top: 0 !important;
        margin-top: 0 !important;
        padding-top: 0 !important;
    }

    #main-content [data-softspin-section="carousel"] [data-softspin-item-template],
    #main-content [data-softspin-runtime="carousel"] [data-softspin-runtime-item],
    #main-content .fbh-slide,
    #main-content .pnt-slide {
        margin-top: 0 !important;
    }

    #main-content [data-softspin-section="carousel"] [data-softspin-field-wrapper="image"],
    #main-content [data-softspin-runtime="carousel"] [data-softspin-field-wrapper="image"],
    #main-content .fbh-hero-img,
    #main-content .pnt-slide-image {
        top: 0 !important;
        margin-top: 0 !important;
        padding-top: 0 !important;
    }

        #main-content .fbh-hero-img img,
        #main-content .pnt-slide-image img {
            display: block !important;
            margin-top: 0 !important;
        }

/* =====================================================================
   SoftSpin Storefront V8.2
   GLOBAL fixes for every non-initial storefront template.
   ===================================================================== */
@media (min-width: 1200px) {
    /* Preserve the original mega-menu positioning contract. */
    html:not([data-ss-navigation-design="initial"]) #header #navmenu {
        position: relative !important;
        overflow: visible !important;
    }

        html:not([data-ss-navigation-design="initial"]) #header #navmenu > ul {
            position: static !important;
            overflow: visible !important;
        }

            html:not([data-ss-navigation-design="initial"]) #header #navmenu > ul > li.products-megamenu-1,
            html:not([data-ss-navigation-design="initial"]) #header #navmenu > ul > li.products-megamenu-2 {
                position: static !important;
            }

                html:not([data-ss-navigation-design="initial"]) #header
                #navmenu > ul > li.products-megamenu-1 > .desktop-megamenu,
                html:not([data-ss-navigation-design="initial"]) #header
                #navmenu > ul > li.products-megamenu-2 > .desktop-megamenu {
                    position: absolute !important;
                    top: 100% !important;
                    right: 0 !important;
                    left: 0 !important;
                    width: 100% !important;
                    min-width: 720px !important;
                    max-width: none !important;
                    height: auto !important;
                    max-height: min(78vh, 680px) !important;
                    margin: 0 !important;
                    padding: 20px !important;
                    overflow: hidden !important;
                    border-radius: 0 0 14px 14px !important;
                    background: var(--surface-color) !important;
                    color: var(--default-color) !important;
                    box-shadow: 0 22px 55px rgba(20,25,32,.16) !important;
                    z-index: 1300 !important;
                }

    html:not([data-ss-navigation-design="initial"]) #header
    .products-megamenu-1 > .desktop-megamenu .megamenu-tabs,
    html:not([data-ss-navigation-design="initial"]) #header
    .products-megamenu-2 > .desktop-megamenu .megamenu-tabs {
        flex: 0 0 auto !important;
        width: 100% !important;
        margin: 0 0 15px !important;
        overflow: visible !important;
    }

        html:not([data-ss-navigation-design="initial"]) #header
        .products-megamenu-1 > .desktop-megamenu .megamenu-tabs .nav-tabs,
        html:not([data-ss-navigation-design="initial"]) #header
        .products-megamenu-2 > .desktop-megamenu .megamenu-tabs .nav-tabs {
            display: flex !important;
            width: 100% !important;
            flex-direction: row !important;
            flex-wrap: wrap !important;
            gap: 4px !important;
            margin: 0 !important;
            padding: 0 !important;
        }

        html:not([data-ss-navigation-design="initial"]) #header
        .products-megamenu-1 > .desktop-megamenu .megamenu-tabs .nav-item,
        html:not([data-ss-navigation-design="initial"]) #header
        .products-megamenu-2 > .desktop-megamenu .megamenu-tabs .nav-item {
            display: block !important;
            width: auto !important;
            height: auto !important;
            margin: 0 !important;
        }

        html:not([data-ss-navigation-design="initial"]) #header
        .products-megamenu-1 > .desktop-megamenu .megamenu-tabs .nav-link,
        html:not([data-ss-navigation-design="initial"]) #header
        .products-megamenu-2 > .desktop-megamenu .megamenu-tabs .nav-link {
            display: inline-flex !important;
            width: auto !important;
            min-height: 40px !important;
            align-items: center !important;
            padding: 9px 16px !important;
            white-space: nowrap !important;
        }

    html:not([data-ss-navigation-design="initial"]) #header
    .products-megamenu-1 > .desktop-megamenu .megamenu-content,
    html:not([data-ss-navigation-design="initial"]) #header
    .products-megamenu-2 > .desktop-megamenu .megamenu-content {
        width: 100% !important;
        min-width: 0 !important;
        overflow-x: hidden !important;
        overflow-y: auto !important;
    }

    html:not([data-ss-navigation-design="initial"]) #header
    .desktop-megamenu .product-grid {
        display: grid !important;
        grid-template-columns: repeat(auto-fit, minmax(190px, 1fr)) !important;
        gap: 16px !important;
        width: 100% !important;
    }

    /* Ordinary nested <ul> dropdowns remain compact. */
    html:not([data-ss-navigation-design="initial"]) #header
    #navmenu > ul > li:not(.products-megamenu-1):not(.products-megamenu-2) {
        position: relative !important;
    }
}

/* ---------------------------------------------------------------------
   Dynamic homepage / carousel edge repair.
   Applied by runtime marker, therefore works for ALL generated templates,
   regardless of their industry-specific class names.
   --------------------------------------------------------------------- */
body.index-page #main-content.dynamic-main-offset {
    margin-top: 0 !important;
    border-top: 0 !important;
}

body.index-page #dynamic-homepage.dynamic-homepage-wrapper,
body.index-page #dynamic-homepage.dynamic-homepage-wrapper > :first-child,
body.index-page #dynamic-homepage [data-softspin-runtime="carousel"],
body.index-page #dynamic-homepage [data-softspin-section="carousel"] {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    border-top: 0 !important;
    border-bottom: 0 !important;
}

body.index-page #dynamic-homepage [data-softspin-runtime="carousel"] {
    position: relative !important;
    overflow: hidden !important;
}

    body.index-page #dynamic-homepage [data-softspin-runtime="carousel"] > [data-softspin-container],
    body.index-page #dynamic-homepage [data-softspin-runtime="carousel"] > [data-softspin-runtime-container] {
        margin: 0 !important;
        padding: 0 !important;
    }

    body.index-page #dynamic-homepage [data-softspin-runtime="carousel"] [data-softspin-item-template],
    body.index-page #dynamic-homepage [data-softspin-runtime="carousel"] [data-softspin-runtime-item] {
        margin: 0 !important;
    }

    body.index-page #dynamic-homepage [data-softspin-runtime="carousel"]
    [data-softspin-field-wrapper="image"] {
        position: absolute;
        inset: 0;
        margin: 0 !important;
        padding: 0 !important;
        overflow: hidden;
    }

        body.index-page #dynamic-homepage [data-softspin-runtime="carousel"]
        [data-softspin-field-wrapper="image"] > img {
            display: block !important;
            width: 100% !important;
            height: 100% !important;
            min-height: 100% !important;
            margin: 0 !important;
            padding: 0 !important;
            object-fit: cover !important;
        }

/* Explicit F&B correction for already-published pages. */
body.index-page #dynamic-homepage .fbh-hero,
body.index-page #dynamic-homepage .fbh-track,
body.index-page #dynamic-homepage .fbh-slide,
body.index-page #dynamic-homepage .fbh-hero-img {
    margin: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

body.index-page #dynamic-homepage .fbh-hero-img {
    inset: 0 !important;
}

    body.index-page #dynamic-homepage .fbh-hero-img > img {
        width: 100% !important;
        height: 100% !important;
        object-fit: cover !important;
    }

/* =====================================================================
   SoftSpin V8.1 - Commerce header structural fix
   The selected header design owns the desktop composition. Industry/family
   rules may still control visual identity, but cannot reorder the logo,
   search or account/cart controls when Commerce is selected.
   ===================================================================== */
@media (min-width: 1200px) {
    html[data-ss-header-design="commerce"] #header .ss-chrome-row {
        position: relative !important;
        display: grid !important;
        grid-template-columns: minmax(180px, 260px) minmax(360px, 1fr) max-content !important;
        grid-template-areas: "logo search actions" !important;
        align-items: center !important;
        gap: 40px !important;
        min-height: 88px !important;
        padding-top: 16px !important;
        padding-bottom: 16px !important;
    }

    html[data-ss-header-design="commerce"] #header #branch-header.ss-chrome-logo {
        grid-area: logo !important;
        position: static !important;
        inset: auto !important;
        transform: none !important;
        order: initial !important;
        width: auto !important;
        min-width: 0 !important;
        max-width: 260px !important;
        margin: 0 !important;
        justify-self: start !important;
        justify-content: flex-start !important;
        text-align: left !important;
    }

    html[data-ss-header-design="commerce"] #header #branch-header .logo-wrap {
        display: block !important;
        width: auto !important;
        max-width: 234px !important;
        margin: 0 !important;
    }

    html[data-ss-header-design="commerce"] #header #branch-header .branch-logo {
        display: block !important;
        width: auto !important;
        max-width: 234px !important;
        height: auto !important;
        max-height: 54px !important;
        margin: 0 !important;
        object-fit: contain !important;
    }

    html[data-ss-header-design="commerce"] #header #publicSearchForm.ss-chrome-search {
        grid-area: search !important;
        position: static !important;
        order: initial !important;
        width: 100% !important;
        min-width: 0 !important;
        max-width: none !important;
        margin: 0 !important;
        justify-self: stretch !important;
    }

    html[data-ss-header-design="commerce"] #header .ss-chrome-actions {
        grid-area: actions !important;
        position: static !important;
        order: initial !important;
        width: auto !important;
        min-width: max-content !important;
        margin: 0 !important;
        justify-self: end !important;
        justify-content: flex-end !important;
    }
}
