:root {
    --sf-navy: #0b1f3a;
    --sf-navy-2: #123055;
    --sf-teal: #0d9488;
    --sf-teal-2: #14b8a6;
    --sf-teal-soft: #ccfbf1;
    --sf-teal-ink: #115e59;
    --sf-bg: #f1f5f9;
    --sf-card: #ffffff;
    --sf-text: #0f172a;
    --sf-muted: #64748b;
    --sf-line: #e2e8f0;
    --sf-danger: #e11d48;
    --sf-warn: #f59e0b;
    --sf-radius: 18px;
    --sf-radius-sm: 12px;
    --sf-shadow: 0 12px 32px rgba(11, 31, 58, .08);
    --sf-shadow-hover: 0 18px 40px rgba(11, 31, 58, .14);
}

body {
    background: var(--sf-bg);
}

.allHome.sf-storefront {
    background: var(--sf-bg);
    min-height: 100%;
}

/* ── Shared header polish ── */
.allHeaderIndex2 {
    border-bottom: 1px solid var(--sf-line) !important;
    box-shadow: 0 8px 24px rgba(11, 31, 58, .04);
}

.allHeaderIndex2 .top .right form label {
    border: 1px solid var(--sf-line) !important;
    border-radius: 999px !important;
    background: #f8fafc !important;
    padding: .55rem 1rem !important;
}

.allHeaderIndex2 .top .right form label:focus-within {
    border-color: var(--sf-teal) !important;
    background: #fff !important;
    box-shadow: 0 0 0 4px rgba(13, 148, 136, .12);
}

.allHeaderIndex2 .top .left .login,
.allHeaderIndex2 .bot .navList > li > a {
    border-radius: 10px;
}

.allHeaderIndex2 .bot .navList > li > a:hover {
    color: var(--sf-teal);
}

.allHeaderIndex1 .floatHeader,
.allHeaderIndex3 .botHeader {
    overflow: visible !important;
}

.allHeaderIndex1 .cartShowBtn .cartCount,
.allHeaderIndex3 .cartShowBtn .cartCount,
.allHeaderIndex2 .cartCount {
    background: var(--sf-teal) !important;
}

/* ── bank118-style mega menu (Jet Mega Menu: 3-col icon lists) ── */
.headerMaster,
.allHome.sf-storefront,
.allHeaderIndex1,
.allHeaderIndex1 .floatHeader,
.allHeaderIndex1 .floatHeader nav,
.allHeaderIndex1 .floatHeader nav ul,
.allHeaderIndex3,
.allHeaderIndex3 .botHeader,
.allHeaderIndex3 .botHeader .width,
.allHeaderIndex3 .botHeader .width nav,
.allHeaderIndex3 .botHeader .width nav ul,
.allHeaderIndexBlock2,
.allHeaderIndexBlock2 .allHeaderIndex2,
.allHeaderIndexBlock2 .allHeaderIndex2 .bot,
.allHeaderIndexBlock2 .allHeaderIndex2 .bot .navList {
    overflow: visible !important;
}

.headerMaster {
    position: relative;
    z-index: 9999;
}

.allHeaderIndex1 .floatHeader,
.allHeaderIndex3 .botHeader,
.allHeaderIndex3 .botHeader .width,
.allHeaderIndexBlock2,
.allHeaderIndexBlock2 .allHeaderIndex2,
.allHeaderIndexBlock2 .allHeaderIndex2 .bot {
    position: relative;
    z-index: 9999;
    isolation: auto;
}

.allHeaderIndex1 .floatHeader {
    align-items: stretch;
}

.allHeaderIndexBlock2 .allHeaderIndex2 .bot .navList {
    align-items: stretch;
}

.allHeaderIndex1 .floatHeader nav,
.allHeaderIndex1 .floatHeader nav ul,
.allHeaderIndex3 .botHeader .width nav,
.allHeaderIndex3 .botHeader .width nav ul {
    height: 100%;
    align-items: stretch;
}

.allHeaderIndex1 .floatHeader nav ul > li,
.allHeaderIndex3 .botHeader .width nav ul > li {
    display: flex;
    align-items: center;
}

.allHeaderIndex1 .floatHeader nav ul > li > a,
.allHeaderIndex3 .botHeader .width nav ul > li > a {
    display: flex;
    align-items: center;
    min-height: 100%;
    padding-top: .75rem;
    padding-bottom: .75rem;
}

/* Wave / overlay / botHeader sit in the mouse path — never steal hover */
.allHeaderIndex1::before,
.allHeaderIndex1 > .shape,
.allHeaderIndex1 > .shape svg,
.allHeaderIndex1 > .shape .icon,
.allHeaderIndex1 > .shape use,
#shape1,
.bigImage .shape1,
.bigImage .shape2,
.allHeaderIndex1 .botHeader {
    pointer-events: none !important;
}

.allHeaderIndex1 .botHeader .search,
.allHeaderIndex1 .botHeader .headerLink,
.allHeaderIndex1 .botHeader .headerLink a,
.allHeaderIndex1 .botHeader .headerLink .more {
    pointer-events: auto !important;
}

.allHeaderIndex1 > .shape,
.allHeaderIndex1 > .shape svg,
.allHeaderIndex1 > .shape .icon,
#shape1 {
    z-index: 0 !important;
}

.allHeaderIndex1 .botHeader {
    z-index: 1 !important;
}

/* Parent li is the hover box; panel uses top:100% so the hit area is continuous */
.allHeaderIndex1 .floatHeader nav ul .linkH.has-sub,
.allHeaderIndex3 .botHeader .width nav ul .linkH.has-sub,
.allHeaderIndexBlock2 .allHeaderIndex2 .bot .navList > li.has-sub {
    position: relative !important;
    z-index: 9999;
    display: flex;
    align-items: stretch;
}

@media screen and (min-width: 1001px) {
    .allHeaderIndex1 .floatHeader nav,
    .allHeaderIndex1 .floatHeader nav ul,
    .allHeaderIndex3 .botHeader .width nav,
    .allHeaderIndex3 .botHeader .width nav ul,
    .allHeaderIndexBlock2 .allHeaderIndex2 .bot,
    .allHeaderIndexBlock2 .allHeaderIndex2 .bot .navList {
        position: static !important;
    }

    .allHeaderIndex1 .floatHeader nav ul .linkH.has-sub,
    .allHeaderIndex3 .botHeader .width nav ul .linkH.has-sub,
    .allHeaderIndexBlock2 .allHeaderIndex2 .bot .navList > li.has-sub {
        position: static !important;
        padding-bottom: 0;
        margin-bottom: 0;
        flex: 0 0 auto;
        width: max-content;
        max-width: 100%;
    }

    .allHeaderIndex1 .floatHeader nav ul .linkH.has-sub > a,
    .allHeaderIndex3 .botHeader .width nav ul .linkH.has-sub > a,
    .allHeaderIndexBlock2 .allHeaderIndex2 .bot .navList > li.has-sub > a {
        position: relative;
        z-index: 2;
        align-self: stretch;
    }

    /* Narrow bridge from the parent word down through the header */
    .allHeaderIndex1 .floatHeader nav ul .linkH.has-sub > a::after,
    .allHeaderIndex3 .botHeader .width nav ul .linkH.has-sub > a::after,
    .allHeaderIndexBlock2 .allHeaderIndex2 .bot .navList > li.has-sub > a::after {
        content: "";
        position: absolute;
        left: -12px;
        right: -12px;
        top: 100%;
        height: 4.5rem;
        z-index: 9998;
        pointer-events: none;
        background: transparent;
    }

    /* Full-width bridge under the header row (li is static → positions against header) */
    .allHeaderIndex1 .floatHeader nav ul .linkH.has-sub::after,
    .allHeaderIndex3 .botHeader .width nav ul .linkH.has-sub::after,
    .allHeaderIndexBlock2 .allHeaderIndex2 .bot .navList > li.has-sub::after {
        content: "";
        position: absolute;
        left: 0;
        right: 0;
        top: 100%;
        height: 4.5rem;
        z-index: 9998;
        pointer-events: none;
        background: transparent;
    }

    .allHeaderIndex1 .floatHeader nav ul .linkH.has-sub:hover::after,
    .allHeaderIndex1 .floatHeader nav ul .linkH.has-sub.is-open::after,
    .allHeaderIndex1 .floatHeader nav ul .linkH.has-sub.menu-hover::after,
    .allHeaderIndex3 .botHeader .width nav ul .linkH.has-sub:hover::after,
    .allHeaderIndex3 .botHeader .width nav ul .linkH.has-sub.is-open::after,
    .allHeaderIndex3 .botHeader .width nav ul .linkH.has-sub.menu-hover::after,
    .allHeaderIndexBlock2 .allHeaderIndex2 .bot .navList > li.has-sub:hover::after,
    .allHeaderIndexBlock2 .allHeaderIndex2 .bot .navList > li.has-sub.is-open::after,
    .allHeaderIndexBlock2 .allHeaderIndex2 .bot .navList > li.has-sub.menu-hover::after,
    .allHeaderIndex1 .floatHeader nav ul .linkH.has-sub:hover > a::after,
    .allHeaderIndex1 .floatHeader nav ul .linkH.has-sub.is-open > a::after,
    .allHeaderIndex1 .floatHeader nav ul .linkH.has-sub.menu-hover > a::after,
    .allHeaderIndex3 .botHeader .width nav ul .linkH.has-sub:hover > a::after,
    .allHeaderIndex3 .botHeader .width nav ul .linkH.has-sub.is-open > a::after,
    .allHeaderIndex3 .botHeader .width nav ul .linkH.has-sub.menu-hover > a::after,
    .allHeaderIndexBlock2 .allHeaderIndex2 .bot .navList > li.has-sub:hover > a::after,
    .allHeaderIndexBlock2 .allHeaderIndex2 .bot .navList > li.has-sub.is-open > a::after,
    .allHeaderIndexBlock2 .allHeaderIndex2 .bot .navList > li.has-sub.menu-hover > a::after {
        pointer-events: auto;
    }
}

.allHeaderIndex1 .floatHeader nav ul .linkH .headerList,
.allHeaderIndex3 .botHeader .width nav ul .linkH .headerList,
.allHeaderIndexBlock2 .allHeaderIndex2 .bot .navList > li > .headerList {
    position: absolute !important;
    top: 100% !important;
    right: 0 !important;
    left: 0 !important;
    width: 100% !important;
    min-width: 0;
    max-width: none !important;
    transform: none !important;
    height: auto !important;
    max-height: calc(100vh - 8rem) !important;
    margin: 0 !important;
    padding: 14px 28px 22px !important;
    box-sizing: border-box;
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: .25rem 1.25rem;
    align-content: start;
    column-count: unset;
    column-gap: unset;
    column-fill: unset;
    flex-direction: unset;
    flex-wrap: unset;
    align-items: unset;
    background: #fff !important;
    border: 0 !important;
    border-top: 1px solid #eee !important;
    border-radius: 8px !important;
    box-shadow: 0 16px 32px rgba(0, 0, 0, .12) !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    z-index: 9999 !important;
    pointer-events: auto !important;
    scrollbar-width: thin;
    transition: none !important;
}

/* Invisible bridge on the panel itself (overflow must stay visible) */
.allHeaderIndex1 .floatHeader nav ul .linkH .headerList::before,
.allHeaderIndex3 .botHeader .width nav ul .linkH .headerList::before,
.allHeaderIndexBlock2 .allHeaderIndex2 .bot .navList > li > .headerList::before {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    top: -12px;
    height: 12px;
    pointer-events: auto;
    background: transparent;
    z-index: 1;
}

.allHeaderIndex1 .floatHeader nav ul .linkH:hover > .headerList,
.allHeaderIndex1 .floatHeader nav ul .linkH.is-open > .headerList,
.allHeaderIndex1 .floatHeader nav ul .linkH.menu-hover > .headerList,
.allHeaderIndex3 .botHeader .width nav ul .linkH:hover > .headerList,
.allHeaderIndex3 .botHeader .width nav ul .linkH.is-open > .headerList,
.allHeaderIndex3 .botHeader .width nav ul .linkH.menu-hover > .headerList,
.allHeaderIndexBlock2 .allHeaderIndex2 .bot .navList > li:hover > .headerList,
.allHeaderIndexBlock2 .allHeaderIndex2 .bot .navList > li.is-open > .headerList,
.allHeaderIndexBlock2 .allHeaderIndex2 .bot .navList > li.menu-hover > .headerList {
    visibility: visible !important;
    opacity: 1 !important;
    pointer-events: auto !important;
    display: grid !important;
}

.allHeaderIndex1 .floatHeader nav ul .linkH .headerList > li,
.allHeaderIndex3 .botHeader .width nav ul .linkH .headerList > li,
.allHeaderIndexBlock2 .allHeaderIndex2 .bot .navList > li > .headerList > li {
    padding: 0 !important;
    margin: 0 !important;
    width: auto !important;
    max-width: 100%;
    min-width: 0;
}

.allHeaderIndex1 .floatHeader nav ul .linkH .headerList > li > a,
.allHeaderIndex3 .botHeader .width nav ul .linkH .headerList > li > a,
.allHeaderIndexBlock2 .allHeaderIndex2 .bot .navList > li > .headerList > li > a {
    width: 100% !important;
    max-width: 100%;
    min-width: 0;
    margin: 0 !important;
    display: flex !important;
    align-items: center;
    justify-content: flex-start;
    gap: .45rem;
    padding: .42rem 4px !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    color: #111 !important;
    font-weight: 400 !important;
    font-size: 15px !important;
    line-height: 1.45;
    white-space: normal !important;
    overflow: visible !important;
    text-overflow: unset;
    overflow-wrap: anywhere;
    word-break: break-word;
    pointer-events: auto !important;
    transition: color .2s ease;
}

.allHeaderIndex1 .floatHeader nav ul .linkH .headerList > li > a::before,
.allHeaderIndex3 .botHeader .width nav ul .linkH .headerList > li > a::before,
.allHeaderIndexBlock2 .allHeaderIndex2 .bot .navList > li > .headerList > li > a::before {
    content: "";
    flex: 0 0 auto;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 5px 6px 5px 0;
    border-color: transparent #b4b4b4 transparent transparent;
    transition: border-color .2s ease;
}

.allHeaderIndex1 .floatHeader nav ul .linkH .headerList > li > a:hover,
.allHeaderIndex3 .botHeader .width nav ul .linkH .headerList > li > a:hover,
.allHeaderIndexBlock2 .allHeaderIndex2 .bot .navList > li > .headerList > li > a:hover {
    background: transparent !important;
    border-color: transparent !important;
    color: #ff0000 !important;
}

.allHeaderIndex1 .floatHeader nav ul .linkH .headerList > li > a:hover::before,
.allHeaderIndex3 .botHeader .width nav ul .linkH .headerList > li > a:hover::before,
.allHeaderIndexBlock2 .allHeaderIndex2 .bot .navList > li > .headerList > li > a:hover::before {
    border-right-color: #111;
}

.allHeaderIndex1 .floatHeader nav ul .linkH .headerList > li > a.active1,
.allHeaderIndex3 .botHeader .width nav ul .linkH .headerList > li > a.active1,
.allHeaderIndexBlock2 .allHeaderIndex2 .bot .navList > li > .headerList > li > a.active1 {
    display: flex !important;
}

.allHeaderIndex1 .floatHeader nav ul .linkH .headerList > li > a.active1:before,
.allHeaderIndex3 .botHeader .width nav ul .linkH .headerList > li > a.active1:before,
.allHeaderIndexBlock2 .allHeaderIndex2 .bot .navList > li > .headerList > li > a.active1:before {
    content: "";
    display: block !important;
    width: 0 !important;
    height: 0 !important;
    background: none !important;
    border-radius: 0 !important;
}

@media screen and (max-width: 1100px) {
    .allHeaderIndex1 .floatHeader nav ul .linkH .headerList,
    .allHeaderIndex3 .botHeader .width nav ul .linkH .headerList,
    .allHeaderIndexBlock2 .allHeaderIndex2 .bot .navList > li > .headerList {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        padding: 12px 16px 20px !important;
    }
}

/* Hamburger breakpoint: single-column accordion, no side-by-side clip */
@media screen and (max-width: 1000px) {
    .allHeaderIndex1 .floatHeader nav ul .linkH.has-sub,
    .allHeaderIndex3 .botHeader .width nav ul .linkH.has-sub,
    .allHeaderIndexBlock2 .allHeaderIndex2 .bot .navList > li.has-sub {
        padding-bottom: 0;
        margin-bottom: 0;
        display: block;
        width: 100% !important;
        flex: none;
        max-width: 100%;
    }

    .allHeaderIndex1 .floatHeader nav ul .linkH.has-sub::after,
    .allHeaderIndex3 .botHeader .width nav ul .linkH.has-sub::after,
    .allHeaderIndexBlock2 .allHeaderIndex2 .bot .navList > li.has-sub::after,
    .allHeaderIndex1 .floatHeader nav ul .linkH.has-sub > a::after,
    .allHeaderIndex3 .botHeader .width nav ul .linkH.has-sub > a::after,
    .allHeaderIndexBlock2 .allHeaderIndex2 .bot .navList > li.has-sub > a::after,
    .allHeaderIndex1 .floatHeader nav ul .linkH .headerList::before,
    .allHeaderIndex3 .botHeader .width nav ul .linkH .headerList::before,
    .allHeaderIndexBlock2 .allHeaderIndex2 .bot .navList > li > .headerList::before {
        display: none;
    }

    .allHeaderIndex1 .floatHeader nav ul .linkH .headerList,
    .allHeaderIndex3 .botHeader .width nav ul .linkH .headerList,
    .allHeaderIndexBlock2 .allHeaderIndex2 .bot .navList > li > .headerList {
        position: static !important;
        top: auto !important;
        left: auto !important;
        right: auto !important;
        transform: none !important;
        display: none !important;
        grid-template-columns: 1fr !important;
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
        max-height: none !important;
        overflow: visible !important;
        box-shadow: none !important;
        border: 0 !important;
        padding: .35rem .75rem .75rem !important;
    }

    .allHeaderIndex1 .floatHeader nav ul .linkH.is-open > .headerList,
    .allHeaderIndex3 .botHeader .width nav ul .linkH.is-open > .headerList,
    .allHeaderIndexBlock2 .allHeaderIndex2 .bot .navList > li.is-open > .headerList {
        display: block !important;
    }

    .allHeaderIndex1 .floatHeader nav ul .linkH .headerList > li,
    .allHeaderIndex3 .botHeader .width nav ul .linkH .headerList > li,
    .allHeaderIndexBlock2 .allHeaderIndex2 .bot .navList > li > .headerList > li {
        display: block !important;
        width: 100% !important;
        float: none !important;
    }

    .allHeaderIndex1 .floatHeader nav ul .linkH .headerList > li > a,
    .allHeaderIndex3 .botHeader .width nav ul .linkH .headerList > li > a,
    .allHeaderIndexBlock2 .allHeaderIndex2 .bot .navList > li > .headerList > li > a {
        display: block !important;
        width: 100% !important;
        white-space: normal !important;
        overflow: visible !important;
        text-overflow: unset !important;
        height: auto !important;
        line-height: 1.6;
    }
}

.allHeaderIndex1 .floatHeader nav ul .linkH .headerList:not(:has(> li)),
.allHeaderIndex3 .botHeader .width nav ul .linkH .headerList:not(:has(> li)),
.allHeaderIndexBlock2 .allHeaderIndex2 .bot .navList > li > .headerList:not(:has(> li)) {
    display: none !important;
}

/* Mobile drawer: accordion, single column, full text */
.allHeaderIndexBlock2 .categoryHeaderResponsive {
    overflow-x: hidden;
    overflow-y: auto;
}

.allHeaderIndexBlock2 .categoryHeaderResponsive .allCats > li > .allCatsList {
    display: none;
    flex-wrap: unset;
    gap: 0;
    padding: .25rem 0 .5rem;
    max-height: none;
    overflow: visible;
    background: #f8fafc;
}

.allHeaderIndexBlock2 .categoryHeaderResponsive .allCats > li > .allCatsList.is-open,
.allHeaderIndexBlock2 .categoryHeaderResponsive .allCats > li > .allCatsList[style*="display: block"],
.allHeaderIndexBlock2 .categoryHeaderResponsive .allCats > li > .allCatsList[style*="display: flex"] {
    display: block !important;
}

.allHeaderIndexBlock2 .categoryHeaderResponsive .allCats > li > .allCatsList > li {
    display: block !important;
    width: 100% !important;
    max-width: 100%;
    min-width: 0;
    float: none !important;
}

.allHeaderIndexBlock2 .categoryHeaderResponsive .allCats > li > .allCatsList > li > .allCatsTitle {
    height: auto;
    min-height: 44px;
    border-bottom: 1px solid var(--sf-line);
    grid-template-columns: 1fr auto;
}

.allHeaderIndexBlock2 .categoryHeaderResponsive .allCats > li > .allCatsList > li > .allCatsTitle a {
    display: block;
    align-items: center;
    gap: .4rem;
    padding: .7rem 1rem;
    font-size: .85rem;
    font-weight: 400;
    line-height: 1.55;
    color: #111;
    border: 0;
    border-radius: 0;
    background: transparent;
    white-space: normal !important;
    overflow: visible !important;
    text-overflow: unset;
    overflow-wrap: anywhere;
    word-break: break-word;
}

.allHeaderIndexBlock2 .categoryHeaderResponsive .allCats > li > .allCatsList > li > .allCatsTitle a::before {
    content: "";
    display: inline-block;
    width: 0;
    height: 0;
    margin-left: .45rem;
    vertical-align: middle;
    border-style: solid;
    border-width: 4px 5px 4px 0;
    border-color: transparent #b4b4b4 transparent transparent;
}

.allHeaderIndexBlock2 .categoryHeaderResponsive .allCats .allCatsTitle {
    height: auto !important;
    min-height: 55px;
}

.allHeaderIndexBlock2 .categoryHeaderResponsive .allCats .allCatsTitle a {
    white-space: normal !important;
    overflow: visible !important;
    text-overflow: unset;
    overflow-wrap: anywhere;
    word-break: break-word;
}

.allHeaderIndexBlock2 .categoryHeaderResponsive .allCats > li > .allCatsList > li > ul {
    display: none;
    width: 100%;
    flex-basis: auto;
}

.allHeaderIndexBlock2 .categoryHeaderResponsive .allCats > li > .allCatsList > li > ul > li {
    display: block;
    width: 100%;
}

/* ── Shared footer ── */
.allFooter {
    background: linear-gradient(180deg, var(--sf-navy) 0%, #071525 100%) !important;
    margin-top: 4rem !important;
}

.allFooter .topFooter {
    border-bottom-color: rgba(255, 255, 255, .08) !important;
}

.allFooter .topFooter .option {
    border-left-color: rgba(255, 255, 255, .08) !important;
}

.allFooter .topFooter .option i svg,
.allFooter .centerFooter .left .item ul li a i svg {
    fill: var(--sf-teal-2) !important;
}

.allFooter .centerFooter .left .item h4:before {
    background: var(--sf-teal) !important;
}

.allFooter .centerFooter .right .pic,
.allFooter .centerFooter .right .pic img {
    background: transparent !important;
}

.allFooter .centerFooter .right .pic img {
    height: auto !important;
    max-height: 4.5rem !important;
    max-width: 16rem !important;
    width: auto !important;
    object-fit: contain !important;
}

/* ── Bottom nav ── */
.navigation {
    border-radius: 16px 16px 0 0 !important;
    box-shadow: 0 -12px 30px rgba(11, 31, 58, .12) !important;
}

.navigation .listWrap li.active .icon svg,
.navigation .listWrap li.active .text {
    color: var(--sf-teal);
    fill: var(--sf-teal);
}

.navigation .indicator {
    background: var(--sf-teal) !important;
}

/* ── Home / listing cards ── */
.widgets {
    padding-bottom: 2rem;
}

.allProductIndex,
.allProductList,
.allProductList2 {
    background: var(--sf-card);
    border-radius: var(--sf-radius) !important;
    box-shadow: var(--sf-shadow);
}

.allProductIndex .title .title2,
.allProductList .title .title2,
.allProductList2 .title .title2 {
    color: var(--sf-navy) !important;
}

.allProductIndex .slider-productIndex .item,
.allProductList .slider-product .item,
.allProductArchive .productContainer .products .item {
    border: 1px solid var(--sf-line) !important;
    border-radius: var(--sf-radius) !important;
    box-shadow: none !important;
    background: var(--sf-card) !important;
    transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}

.allProductIndex .slider-productIndex .item:hover,
.allProductList .slider-product .item:hover,
.allProductArchive .productContainer .products .item:hover {
    transform: translateY(-6px);
    border-color: rgba(13, 148, 136, .35) !important;
    box-shadow: var(--sf-shadow-hover) !important;
}

.allProductIndex .slider-productIndex .item .title1,
.allProductList .slider-product .item .title1,
.allProductArchive .productContainer .products .item .title {
    color: var(--sf-navy) !important;
}

.allProductIndex .slider-productIndex .item .more .buy,
.allProductList .slider-product .item .more .buy {
    background: var(--sf-teal) !important;
    border-radius: 10px !important;
}

.allProductIndex .slider-productIndex .item .pic .off,
.allProductList .slider-product .item .pic .off {
    background: var(--sf-danger) !important;
    border: 0 !important;
    border-radius: 999px !important;
    font-size: .75rem !important;
    padding: .35rem .6rem !important;
}

.allProductArchive .filters .filterItem {
    border-radius: var(--sf-radius) !important;
    box-shadow: var(--sf-shadow) !important;
    border: 1px solid var(--sf-line);
}

.allProductArchive .filters .filterItem .price button {
    background: var(--sf-teal) !important;
    border-radius: 10px !important;
    font-weight: 700;
}

.allProductArchive .filters .sort .active:before {
    border-color: var(--sf-teal) !important;
}

.allProductArchive .productContainer .products .item .option {
    border: 1px dashed var(--sf-line) !important;
    background: #f8fafc;
    border-radius: 10px !important;
    color: var(--sf-navy) !important;
}

.allProductArchive .productContainer .breadcrumbs a {
    color: var(--sf-muted) !important;
}

.allPaginateHome .pages div {
    border-radius: 10px;
}

.allPaginateHome .pages div[class*="true"],
.allPaginateHome .pages .true {
    background: var(--sf-teal) !important;
    color: #fff !important;
}

.allCategoryIndex ul li a {
    border: 1px solid var(--sf-line) !important;
    border-radius: 16px !important;
    box-shadow: var(--sf-shadow) !important;
}

.allCategoryIndex ul li a:hover {
    border-color: var(--sf-teal) !important;
    transform: translateY(-4px);
}

.allPropertyIndex .slider-property .item {
    border-radius: 16px !important;
    border: 1px solid var(--sf-line);
    box-shadow: var(--sf-shadow);
}

.allProductList .slider-product .item .more .buy,
.allProductList2 .item .more .buy {
    background: var(--sf-teal) !important;
}

/* ════════════════════════════════════════
   File product page
   ════════════════════════════════════════ */
.allSingleDownload.sf-file-page {
    margin: auto;
    padding-bottom: 4rem;
}

.allSingleDownload.sf-file-page .sf-crumb,
.allSingleDownload.sf-file-page .address {
    display: flex !important;
    flex-wrap: wrap;
    align-items: center;
    gap: .15rem;
    margin: 1.25rem 0 1.5rem;
    grid-template-columns: unset !important;
}

.allSingleDownload.sf-file-page .address a {
    font-size: .82rem !important;
    font-weight: 500;
    color: var(--sf-muted) !important;
    letter-spacing: 0 !important;
}

.allSingleDownload.sf-file-page .address a:after {
    content: "/" !important;
    padding: 0 .45rem !important;
    color: #cbd5e1;
}

.allSingleDownload.sf-file-page .address a:last-child {
    color: var(--sf-navy) !important;
    font-weight: 700;
}

.allSingleDownload.sf-file-page .address a:last-child:after {
    content: "" !important;
    padding: 0 !important;
}

.allSingleDownload.sf-file-page .singleTop {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 22.5rem;
    gap: 1.5rem !important;
    margin-top: 0 !important;
    align-items: start;
}

.allSingleDownload.sf-file-page .singleTop .right {
    min-width: 0;
}

.allSingleDownload.sf-file-page .singleTop .left {
    position: sticky;
    top: 1rem;
}

/* Cover */
.allSingleDownload.sf-file-page .rightItems,
.allSingleDownload.sf-file-page .sf-cover-card {
    background: var(--sf-card) !important;
    border: 1px solid var(--sf-line);
    box-shadow: var(--sf-shadow) !important;
    border-radius: var(--sf-radius) !important;
    padding: .75rem !important;
    overflow: hidden;
}

.allSingleDownload.sf-file-page .rightItems .pic,
.allSingleDownload.sf-file-page .rightItems .pic .image {
    background: transparent !important;
    padding: 0 !important;
    border-radius: 14px;
}

.allSingleDownload.sf-file-page .rightItems figure {
    position: relative;
    margin: 0;
    border-radius: 14px;
    overflow: hidden;
    background: linear-gradient(160deg, var(--sf-navy) 0%, #1e3a5f 100%);
    min-height: 220px;
}

.allSingleDownload.sf-file-page .rightItems img {
    width: 100%;
    height: auto;
    max-height: 420px;
    object-fit: cover;
    border-radius: 14px !important;
    display: block;
}

.allSingleDownload.sf-file-page .sf-cover-badges {
    position: absolute;
    top: 1rem;
    right: 1rem;
    display: flex;
    flex-wrap: wrap;
    gap: .4rem;
    z-index: 2;
}

.allSingleDownload.sf-file-page .sf-badge {
    display: inline-flex;
    align-items: center;
    padding: .28rem .7rem;
    border-radius: 999px;
    font-size: .75rem;
    font-weight: 700;
    color: #fff;
    background: rgba(11, 31, 58, .78);
    backdrop-filter: blur(8px);
}

.allSingleDownload.sf-file-page .sf-badge-file {
    background: var(--sf-teal);
}

.allSingleDownload.sf-file-page .sf-badge-off {
    background: var(--sf-danger);
}

/* Hero copy */
.allSingleDownload.sf-file-page .sf-hero-copy {
    margin-top: 1.15rem;
}

.allSingleDownload.sf-file-page .sf-hero-copy h1,
.allSingleDownload.sf-file-page h1 {
    font-size: 1.65rem !important;
    font-weight: 900 !important;
    line-height: 2.15rem !important;
    color: var(--sf-navy) !important;
    letter-spacing: 0 !important;
    text-shadow: none !important;
    margin: 0 0 .65rem !important;
}

.allSingleDownload.sf-file-page .sf-excerpt {
    font-size: .92rem;
    font-weight: 400;
    line-height: 1.9rem;
    color: var(--sf-muted);
    margin: 0 0 .9rem;
}

.allSingleDownload.sf-file-page .sf-meta {
    display: flex;
    flex-wrap: wrap;
    gap: .45rem;
}

.allSingleDownload.sf-file-page .sf-chip {
    display: inline-flex;
    align-items: center;
    gap: .3rem;
    padding: .28rem .75rem;
    border-radius: 999px;
    background: #fff;
    border: 1px solid var(--sf-line);
    color: var(--sf-navy);
    font-size: .78rem;
    font-weight: 700;
}

.allSingleDownload.sf-file-page .sf-chip i,
.allSingleDownload.sf-file-page .sf-chip svg {
    width: .85rem;
    height: .85rem;
    fill: var(--sf-warn);
    display: grid;
}

.allSingleDownload.sf-file-page .sf-chip-rate {
    background: #fffbeb;
    border-color: #fde68a;
}

/* Tabs */
.allSingleDownload.sf-file-page .tabs,
.allSingleDownload.sf-file-page .sf-tabs {
    background: var(--sf-card) !important;
    border: 1px solid var(--sf-line);
    box-shadow: var(--sf-shadow) !important;
    border-radius: var(--sf-radius) !important;
    padding: .4rem !important;
    margin-top: 1.15rem !important;
    display: grid !important;
    grid-template-columns: repeat(3, 1fr);
    gap: .35rem;
}

.allSingleDownload.sf-file-page .tabs .tab {
    display: flex !important;
    align-items: center;
    justify-content: center;
    gap: .4rem;
    padding: .7rem .5rem !important;
    font-size: .92rem !important;
    font-weight: 700 !important;
    color: var(--sf-muted) !important;
    border-radius: 12px !important;
    cursor: pointer;
    grid-template-columns: unset !important;
}

.allSingleDownload.sf-file-page .tabs .tab span {
    background: var(--sf-navy) !important;
    color: #fff !important;
    padding: .05rem .45rem !important;
    border-radius: 999px !important;
    font-size: .68rem !important;
}

.allSingleDownload.sf-file-page .tabs .tab.active {
    background: var(--sf-teal) !important;
    color: #fff !important;
}

.allSingleDownload.sf-file-page .tabs .tab.active span {
    background: rgba(255, 255, 255, .22) !important;
}

/* Description / comments panels */
.allSingleDownload.sf-file-page .review,
.allSingleDownload.sf-file-page .comment,
.allSingleDownload.sf-file-page .files {
    background: var(--sf-card) !important;
    border: 1px solid var(--sf-line);
    box-shadow: var(--sf-shadow) !important;
    border-radius: var(--sf-radius) !important;
    padding: 1.4rem !important;
    margin-top: 1rem !important;
}

.allSingleDownload.sf-file-page .comment {
    padding: 1rem !important;
}

.allSingleDownload.sf-file-page .sf-section-head {
    margin-bottom: 1rem;
    padding-bottom: .85rem;
    border-bottom: 1px solid var(--sf-line);
}

.allSingleDownload.sf-file-page .sf-section-head h2 {
    font-size: 1.1rem;
    font-weight: 900;
    color: var(--sf-navy);
    margin: 0;
}

.allSingleDownload.sf-file-page .sf-section-head p {
    margin: .35rem 0 0;
    font-size: .82rem;
    color: var(--sf-muted);
    line-height: 1.7rem;
}

.allSingleDownload.sf-file-page .review p,
.allSingleDownload.sf-file-page .review p *,
.allSingleDownload.sf-file-page .sf-product-body,
.allSingleDownload.sf-file-page .sf-product-body p {
    font-size: .95rem !important;
    font-weight: 400;
    letter-spacing: 0 !important;
    line-height: 2.15rem !important;
    color: var(--sf-text) !important;
}

.allSingleDownload.sf-file-page .review p h2,
.allSingleDownload.sf-file-page .sf-product-body h2 {
    font-size: 1.2rem !important;
    font-weight: 900 !important;
    color: var(--sf-navy) !important;
    margin: 1.2rem 0 .4rem;
}

.allSingleDownload.sf-file-page .review p h3,
.allSingleDownload.sf-file-page .sf-product-body h3 {
    font-size: 1.05rem !important;
    font-weight: 700 !important;
    color: var(--sf-navy) !important;
    margin: 1rem 0 .3rem;
}

.allSingleDownload.sf-file-page .sf-product-description {
    margin-top: 1.25rem;
}

.allSingleDownload.sf-file-page .sf-product-description .sf-section-head {
    margin-top: .4rem;
}

.allSingleDownload.sf-file-page .sf-product-body {
    overflow-x: auto;
}

.allSingleDownload.sf-file-page .sf-product-body table {
    width: 100%;
    border-collapse: collapse;
    margin: 1rem 0;
    background: #fff;
}

.allSingleDownload.sf-file-page .sf-product-body table th,
.allSingleDownload.sf-file-page .sf-product-body table td {
    border: 1px solid var(--sf-line);
    padding: .7rem .85rem;
    text-align: right;
    vertical-align: top;
    line-height: 1.8rem !important;
}

.allSingleDownload.sf-file-page .sf-product-body table th {
    width: 30%;
    background: #f8fafc;
    font-weight: 700;
    color: var(--sf-navy) !important;
}

.allSingleDownload.sf-file-page .sf-product-body img,
.allSingleDownload.sf-file-page .sf-product-body video {
    max-width: 100%;
    height: auto;
    border-radius: 12px;
    margin: .75rem 0;
    display: block;
}

.allSingleDownload.sf-file-page .sf-product-body iframe {
    width: 100%;
    max-width: 100%;
    min-height: 280px;
    border: 0;
    border-radius: 12px;
    margin: .75rem 0;
}

.allSingleDownload.sf-file-page .sf-product-body ul,
.allSingleDownload.sf-file-page .sf-product-body ol {
    padding-right: 1.3rem;
    margin: .6rem 0;
}

.allSingleDownload.sf-file-page .sf-file-intro {
    font-size: .95rem;
    line-height: 2.1rem;
    color: var(--sf-text);
    margin: .2rem 0 1rem;
}

.allSingleDownload.sf-file-page .sf-product-body .sf-callout {
    border-radius: 12px;
    padding: .9rem 1.05rem;
    margin: 1rem 0;
    border: 1px solid var(--sf-line);
    border-right-width: 4px;
    background: #f8fafc;
}

.allSingleDownload.sf-file-page .sf-product-body .sf-callout-title {
    font-weight: 800;
    margin-bottom: .3rem;
    font-size: .95rem;
}

.allSingleDownload.sf-file-page .sf-product-body .sf-callout-body {
    font-size: .92rem;
    line-height: 2rem !important;
}

.allSingleDownload.sf-file-page .sf-product-body .sf-callout-note {
    background: #f0fdfa;
    border-color: #99f6e4;
    border-right-color: var(--sf-teal);
}

.allSingleDownload.sf-file-page .sf-product-body .sf-callout-note .sf-callout-title {
    color: var(--sf-teal-ink);
}

.allSingleDownload.sf-file-page .sf-product-body .sf-callout-quote {
    background: #f8fafc;
    border-color: #cbd5e1;
    border-right-color: var(--sf-navy);
}

.allSingleDownload.sf-file-page .sf-product-body .sf-callout-quote .sf-callout-title {
    color: var(--sf-navy);
}

.allSingleDownload.sf-file-page .sf-product-body .sf-callout-warning {
    background: #fffbeb;
    border-color: #fde68a;
    border-right-color: var(--sf-warn);
}

.allSingleDownload.sf-file-page .sf-product-body .sf-callout-warning .sf-callout-title {
    color: #92400e;
}

.allSingleDownload.sf-file-page .sf-product-body .sf-callout-alert {
    background: #fff1f2;
    border-color: #fecdd3;
    border-right-color: var(--sf-danger);
}

.allSingleDownload.sf-file-page .sf-product-body .sf-callout-alert .sf-callout-title {
    color: #9f1239;
}

.allSingleDownload.sf-file-page .sf-product-body .sf-aparat {
    position: relative;
    width: 100%;
    padding-top: 56.25%;
    margin: 1rem 0;
    border-radius: 12px;
    overflow: hidden;
    background: var(--sf-navy);
}

.allSingleDownload.sf-file-page .sf-product-body .sf-aparat iframe {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    min-height: 0;
    border: 0;
    border-radius: 0;
    margin: 0;
}

.allSingleDownload.sf-file-page .sf-chip.sf-copy-link {
    cursor: pointer;
    background: #fff;
    font-family: inherit;
}

.allSingleDownload.sf-file-page .sf-chip.sf-copy-link.is-copied {
    background: var(--sf-teal);
    color: #fff;
    border-color: var(--sf-teal);
}

/* Download files */
.allSingleDownload.sf-file-page .files {
    display: none;
}

.allSingleDownload.sf-file-page .files .file {
    display: grid;
    grid-template-columns: auto 1fr auto;
    gap: 1rem;
    align-items: center;
    border: 1px solid var(--sf-line) !important;
    box-shadow: none !important;
    padding: .9rem 1rem !important;
    border-radius: 14px !important;
    margin-top: .7rem !important;
    background: #f8fafc !important;
    cursor: default;
}

.allSingleDownload.sf-file-page .files .file .number {
    width: auto !important;
    padding: 0 0 0 .85rem !important;
    border-left: 0 !important;
}

.allSingleDownload.sf-file-page .files .file .number .number1 {
    width: 2.4rem;
    height: 2.4rem;
    border-radius: 10px;
    background: var(--sf-navy);
    color: #fff !important;
    font-size: .95rem !important;
    font-weight: 900 !important;
    display: grid;
    place-items: center;
}

.allSingleDownload.sf-file-page .files .file .number .number1:after {
    display: none !important;
}

.allSingleDownload.sf-file-page .files .file .name {
    font-size: .95rem !important;
    font-weight: 700 !important;
    color: var(--sf-navy) !important;
}

.allSingleDownload.sf-file-page .files .file .name small {
    display: block;
    margin-top: .2rem;
    font-size: .75rem;
    font-weight: 500;
    color: var(--sf-muted);
}

.allSingleDownload.sf-file-page .files .file .download {
    display: inline-flex !important;
    justify-content: center;
    align-items: center;
    gap: .4rem;
    padding: .55rem 1rem !important;
    border-radius: 10px !important;
    background: var(--sf-teal) !important;
    color: #fff !important;
    font-weight: 700 !important;
    font-size: .85rem !important;
}

.allSingleDownload.sf-file-page .files .file .download i svg {
    width: 1rem;
    height: 1rem;
    fill: #fff;
}

.allSingleDownload.sf-file-page .files .file .download.lock {
    background: var(--sf-navy) !important;
    opacity: .85;
    padding: .55rem .85rem !important;
}

.allSingleDownload.sf-file-page .sf-empty-files,
.allSingleDownload.sf-file-page .sf-download-locked {
    padding: 1.5rem;
    text-align: center;
    color: var(--sf-muted);
    background: #f8fafc;
    border-radius: 12px;
    border: 1px dashed var(--sf-line);
}

/* Sidebar cards */
.allSingleDownload.sf-file-page .left .detail,
.allSingleDownload.sf-file-page .left .leftShop,
.allSingleDownload.sf-file-page .left .description,
.allSingleDownload.sf-file-page .left .start,
.allSingleDownload.sf-file-page .sf-seller,
.allSingleDownload.sf-file-page .sf-trust {
    background: var(--sf-card) !important;
    border: 1px solid var(--sf-line);
    box-shadow: var(--sf-shadow) !important;
    border-radius: var(--sf-radius) !important;
    padding: 1.1rem !important;
}

.allSingleDownload.sf-file-page .left .leftShop,
.allSingleDownload.sf-file-page .left .description,
.allSingleDownload.sf-file-page .left .start,
.allSingleDownload.sf-file-page .sf-seller,
.allSingleDownload.sf-file-page .sf-trust {
    margin-top: 1rem !important;
}

.allSingleDownload.sf-file-page .sf-buy-card {
    background: linear-gradient(180deg, #fff 0%, #f0fdfa 100%) !important;
    border-color: rgba(13, 148, 136, .25) !important;
}

.allSingleDownload.sf-file-page .sf-buy-label {
    font-size: .78rem;
    font-weight: 700;
    color: var(--sf-teal-ink);
    margin-bottom: .85rem;
}

.allSingleDownload.sf-file-page .sf-price-row {
    display: grid;
    grid-template-columns: 1fr;
    align-items: center;
    gap: .85rem;
}

.allSingleDownload.sf-file-page .sf-buy-card.has-off .sf-price-row {
    grid-template-columns: minmax(0, 1fr) auto;
}

.allSingleDownload.sf-file-page .sf-price-main {
    min-width: 0;
    text-align: right;
}

.allSingleDownload.sf-file-page .sf-price-caption {
    display: block;
    font-size: .78rem;
    font-weight: 600;
    color: var(--sf-teal);
    margin-bottom: .35rem;
}

.allSingleDownload.sf-file-page .sf-price-now {
    font-size: 1.45rem;
    font-weight: 900;
    color: var(--sf-navy);
    line-height: 1.6rem;
    letter-spacing: 0;
}

.allSingleDownload.sf-file-page .sf-price-now span {
    font-size: .78rem;
    font-weight: 600;
    color: var(--sf-muted);
    margin-right: .2rem;
}

.allSingleDownload.sf-file-page .sf-price-old {
    display: block;
    margin-top: .28rem;
    color: #94a3b8;
    font-size: .82rem;
    font-weight: 500;
    text-decoration: line-through;
}

.allSingleDownload.sf-file-page .sf-price-old span {
    font-size: .72rem;
}

.allSingleDownload.sf-file-page .sf-price-save {
    display: inline-flex;
    margin-top: .55rem;
    padding: .22rem .65rem;
    border-radius: 999px;
    background: var(--sf-teal-soft);
    color: var(--sf-teal-ink);
    font-size: .75rem;
    font-weight: 700;
}

.allSingleDownload.sf-file-page .sf-off-badge {
    width: 5.6rem;
    height: 5.6rem;
    border-radius: 50%;
    background: linear-gradient(145deg, #2dd4bf 0%, var(--sf-teal) 52%, #0f766e 100%);
    color: #fff;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    box-shadow: 0 10px 22px rgba(13, 148, 136, .32);
    border: 3px solid #fff;
    flex-shrink: 0;
    position: relative;
}

.allSingleDownload.sf-file-page .sf-off-badge:before {
    content: "";
    position: absolute;
    inset: -7px;
    border-radius: 50%;
    background: rgba(13, 148, 136, .1);
    z-index: 0;
}

.allSingleDownload.sf-file-page .sf-off-badge strong,
.allSingleDownload.sf-file-page .sf-off-badge span {
    position: relative;
    z-index: 1;
}

.allSingleDownload.sf-file-page .sf-off-badge strong {
    font-size: 1.45rem;
    font-weight: 900;
    line-height: 1;
}

.allSingleDownload.sf-file-page .sf-off-badge span {
    font-size: .72rem;
    font-weight: 700;
    margin-top: .2rem;
    opacity: .95;
}

.allSingleDownload.sf-file-page .detail .rates {
    border-top: 1px solid var(--sf-line) !important;
    margin-top: 1rem !important;
    padding-top: .85rem !important;
}

.allSingleDownload.sf-file-page .detail .rates .top span {
    color: var(--sf-muted) !important;
    opacity: 1 !important;
    font-size: .82rem !important;
}

.allSingleDownload.sf-file-page .detail .rates .top h4 {
    color: var(--sf-teal) !important;
    font-weight: 900 !important;
}

.allSingleDownload.sf-file-page .detail .rates .top h4 span {
    color: var(--sf-muted) !important;
}

.allSingleDownload.sf-file-page .sf-installment-note {
    margin-top: .9rem;
    border-top: 1px dashed rgba(13, 148, 136, .35);
    padding-top: .8rem;
}

.allSingleDownload.sf-file-page .sf-installment-note h4 {
    margin: 0 0 .35rem 0;
    font-size: .9rem;
    font-weight: 900;
    color: var(--sf-navy);
}

.allSingleDownload.sf-file-page .sf-installment-note p {
    margin: 0;
    font-size: .8rem;
    color: var(--sf-muted);
    line-height: 1.8;
}

.allSingleDownload.sf-file-page .sf-installment-note .sf-installment-each {
    margin-top: .55rem;
    background: rgba(13, 148, 136, .08);
    color: var(--sf-teal-ink);
    border-radius: 10px;
    padding: .45rem .6rem;
    font-size: .82rem;
    font-weight: 700;
}

/* Keep mini-cart above sticky headers */
.allHeaderIndex1 .showCart2,
.allHeaderIndex3 .showCart2 {
    z-index: 10020 !important;
}

/* Wallet low balance modal */
.sf-wallet-modal {
    position: fixed;
    inset: 0;
    z-index: 10030;
    display: grid;
    place-items: center;
}
.sf-wallet-modal__backdrop {
    position: absolute;
    inset: 0;
    background: rgba(2, 6, 23, .58);
}
.sf-wallet-modal__box {
    position: relative;
    width: min(92vw, 430px);
    background: #fff;
    border-radius: 16px;
    padding: 1rem 1rem .9rem;
    box-shadow: 0 18px 55px rgba(15, 23, 42, .3);
    z-index: 1;
}
.sf-wallet-modal__close {
    position: absolute;
    top: .4rem;
    left: .6rem;
    border: 0;
    background: transparent;
    font-size: 1.35rem;
    color: #475569;
    cursor: pointer;
}
.sf-wallet-modal__box h3 {
    margin: 0 0 .5rem 0;
    font-size: 1rem;
    color: #0f172a;
}
.sf-wallet-modal__box p {
    margin: 0 0 .8rem 0;
    color: #475569;
    font-size: .84rem;
}
.sf-wallet-modal__amounts {
    background: #f8fafc;
    border: 1px solid #e2e8f0;
    border-radius: 12px;
    padding: .65rem .75rem;
    font-size: .82rem;
    color: #1e293b;
    line-height: 1.9;
}
.sf-wallet-modal__actions {
    margin-top: .85rem;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: .55rem;
}
.sf-wallet-btn {
    border: 0;
    border-radius: 10px;
    padding: .58rem .7rem;
    text-align: center;
    font-size: .82rem;
    font-weight: 700;
    cursor: pointer;
}
.sf-wallet-btn--primary {
    background: #16a34a;
    color: #fff;
}
.sf-wallet-btn--ghost {
    background: #e2e8f0;
    color: #0f172a;
}

/* CTA buttons */
.allSingleDownload.sf-file-page .leftShop .addItems {
    display: grid;
    grid-template-columns: 1fr;
    gap: .55rem !important;
}

.allSingleDownload.sf-file-page .leftShop .downloadBtn,
.allSingleDownload.sf-file-page .leftShop button {
    background: var(--sf-teal) !important;
    padding: .85rem 1rem !important;
    display: flex !important;
    color: #fff !important;
    font-size: .95rem !important;
    font-weight: 800 !important;
    width: 100%;
    border-radius: 12px !important;
    box-shadow: 0 10px 20px rgba(13, 148, 136, .25) !important;
    justify-content: center;
    align-items: center;
    grid-template-columns: unset !important;
    letter-spacing: 0;
}

.allSingleDownload.sf-file-page .leftShop .buyFast {
    background: var(--sf-navy) !important;
    box-shadow: 0 10px 20px rgba(11, 31, 58, .2) !important;
}

.allSingleDownload.sf-file-page .leftShop .delete {
    background: var(--sf-danger) !important;
    box-shadow: 0 10px 20px rgba(225, 29, 72, .2) !important;
}

.allSingleDownload.sf-file-page .leftShop .sf-copy-link {
    background: #fff !important;
    color: var(--sf-navy) !important;
    border: 1px solid var(--sf-line) !important;
    box-shadow: none !important;
    margin-top: .7rem;
    width: 100%;
    border-radius: 12px !important;
    padding: .7rem 1rem !important;
    font-weight: 800 !important;
    cursor: pointer;
}

.allSingleDownload.sf-file-page .leftShop .sf-copy-link.is-copied {
    background: var(--sf-teal) !important;
    color: #fff !important;
    border-color: var(--sf-teal) !important;
}

.allSingleDownload.sf-file-page .leftShop p {
    margin-top: 1rem !important;
    font-size: .8rem !important;
    font-weight: 400 !important;
    color: var(--sf-muted) !important;
    opacity: 1 !important;
    line-height: 1.7rem !important;
    text-align: center;
}

.allSingleDownload.sf-file-page .leftShop .options {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: .5rem;
    margin-top: .35rem !important;
}

.allSingleDownload.sf-file-page .leftShop .options .option {
    margin: 0 !important;
    background: #f8fafc;
    border: 1px solid var(--sf-line);
    border-radius: 12px;
    padding: .7rem .4rem;
    cursor: pointer;
}

.allSingleDownload.sf-file-page .leftShop .options .option h3 {
    text-align: center;
    font-size: .75rem !important;
    font-weight: 700 !important;
    color: var(--sf-navy) !important;
    margin-bottom: .35rem;
}

.allSingleDownload.sf-file-page .leftShop .options .option i {
    display: grid;
    justify-content: center;
}

.allSingleDownload.sf-file-page .leftShop .options .option i svg {
    width: 1.45rem !important;
    height: 1.45rem !important;
    fill: var(--sf-teal) !important;
}

/* Specs */
.allSingleDownload.sf-file-page .sf-card-title {
    font-size: .95rem;
    font-weight: 900;
    color: var(--sf-navy);
    margin-bottom: .85rem;
}

.allSingleDownload.sf-file-page .description .item {
    display: grid;
    grid-template-columns: auto auto;
    justify-content: space-between;
    align-items: center;
    gap: .5rem;
    margin-top: .7rem !important;
    padding-bottom: .7rem;
    border-bottom: 1px dashed var(--sf-line);
}

.allSingleDownload.sf-file-page .description .item:last-child {
    border-bottom: 0;
    padding-bottom: 0;
}

.allSingleDownload.sf-file-page .description .item h4,
.allSingleDownload.sf-file-page .description .item span,
.allSingleDownload.sf-file-page .description .item a {
    font-size: .82rem !important;
    letter-spacing: 0 !important;
    font-weight: 500 !important;
    color: var(--sf-muted) !important;
    opacity: 1 !important;
}

.allSingleDownload.sf-file-page .description .item span,
.allSingleDownload.sf-file-page .description .item a {
    color: var(--sf-navy) !important;
    font-weight: 700 !important;
}

/* Seller */
.allSingleDownload.sf-file-page .sf-seller-row {
    display: flex;
    align-items: center;
    gap: .75rem;
}

.allSingleDownload.sf-file-page .sf-seller-pic {
    width: 3.2rem;
    height: 3.2rem;
    border-radius: 50%;
    overflow: hidden;
    border: 2px solid var(--sf-teal-soft);
    flex-shrink: 0;
}

.allSingleDownload.sf-file-page .sf-seller-pic img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.allSingleDownload.sf-file-page .sf-seller-name {
    display: block;
    font-size: .95rem;
    font-weight: 900;
    color: var(--sf-navy);
}

.allSingleDownload.sf-file-page .sf-seller-info span {
    font-size: .75rem;
    color: var(--sf-muted);
}

/* Trust */
.allSingleDownload.sf-file-page .sf-trust {
    display: grid;
    gap: .75rem;
}

.allSingleDownload.sf-file-page .sf-trust-item {
    display: flex;
    align-items: flex-start;
    gap: .7rem;
}

.allSingleDownload.sf-file-page .sf-trust-item i {
    width: 2.3rem;
    height: 2.3rem;
    border-radius: 10px;
    background: var(--sf-teal-soft);
    display: grid;
    place-items: center;
    flex-shrink: 0;
}

.allSingleDownload.sf-file-page .sf-trust-item i svg {
    width: 1.1rem;
    height: 1.1rem;
    fill: var(--sf-teal);
}

.allSingleDownload.sf-file-page .sf-trust-item strong {
    display: block;
    font-size: .85rem;
    color: var(--sf-navy);
}

.allSingleDownload.sf-file-page .sf-trust-item span {
    display: block;
    font-size: .75rem;
    color: var(--sf-muted);
    line-height: 1.5rem;
}

/* Categories */
.allSingleDownload.sf-file-page .start .title {
    font-size: .95rem !important;
    font-weight: 900 !important;
    color: var(--sf-navy) !important;
}

.allSingleDownload.sf-file-page .start p {
    font-size: .78rem !important;
    color: var(--sf-muted) !important;
    margin: .25rem 0 .7rem;
}

.allSingleDownload.sf-file-page .start ul li {
    margin-top: .45rem !important;
}

.allSingleDownload.sf-file-page .start ul li a {
    display: flex !important;
    justify-content: flex-start;
    align-items: center;
    gap: .5rem;
    padding: .65rem .8rem !important;
    font-size: .82rem !important;
    font-weight: 700 !important;
    color: var(--sf-navy) !important;
    border-radius: 10px !important;
    border: 1px solid var(--sf-line) !important;
    box-shadow: none !important;
    background: #f8fafc;
}

.allSingleDownload.sf-file-page .start ul li a:before {
    content: "" !important;
    width: 6px !important;
    height: 6px !important;
    border-radius: 50%;
    background: var(--sf-teal) !important;
    border-radius: 50% !important;
}

.allSingleDownload.sf-file-page .start ul li a:hover {
    border-color: var(--sf-teal) !important;
    background: #fff;
}

/* Related */
.allSingleDownload.sf-file-page .course.sf-related {
    background: var(--sf-card) !important;
    border: 1px solid var(--sf-line);
    box-shadow: var(--sf-shadow);
    padding: 1.2rem !important;
    border-radius: var(--sf-radius) !important;
    margin-top: 1.5rem !important;
}

.allSingleDownload.sf-file-page .course.sf-related .title {
    font-size: 1.1rem !important;
    font-weight: 900 !important;
    color: var(--sf-navy) !important;
    margin-bottom: 1rem !important;
}

.allSingleDownload.sf-file-page .slider-relate .item {
    display: block;
    padding: .4rem;
    border: 1px solid var(--sf-line);
    border-radius: 14px;
    background: #fff;
    margin: .15rem;
    transition: transform .2s ease, box-shadow .2s ease;
}

.allSingleDownload.sf-file-page .slider-relate .item:hover {
    transform: translateY(-4px);
    box-shadow: var(--sf-shadow);
}

.allSingleDownload.sf-file-page .slider-relate .item .pic {
    border-radius: 10px !important;
    overflow: hidden;
    background: #f1f5f9;
    min-height: 8rem;
}

.allSingleDownload.sf-file-page .slider-relate .item .pic img {
    width: 100%;
    height: 9rem;
    object-fit: cover;
    display: block;
}

.allSingleDownload.sf-file-page .slider-relate .item .title2 {
    font-size: .85rem !important;
    font-weight: 800 !important;
    color: var(--sf-navy) !important;
    text-align: right !important;
    margin: .65rem .2rem .35rem !important;
    line-height: 1.5rem;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.allSingleDownload.sf-file-page .slider-relate .item .price {
    font-size: .85rem !important;
    font-weight: 900 !important;
    color: var(--sf-teal) !important;
    text-align: right !important;
    padding: 0 .2rem .4rem;
}

/* Comments on file page */
.allSingleDownload.sf-file-page .allComment h3 {
    color: var(--sf-navy) !important;
}

.allSingleDownload.sf-file-page .allComment h3 i svg {
    fill: var(--sf-teal) !important;
}

.allSingleDownload.sf-file-page .allComment .btnComment .showAdd {
    background: var(--sf-teal) !important;
    border-radius: 12px !important;
    box-shadow: none !important;
}

.allSingleDownload.sf-file-page .allComment .getCommentItem {
    border: 1px solid var(--sf-line);
    border-radius: 14px;
    padding: 1rem;
    margin-top: .85rem;
    background: #f8fafc;
}

.allSingleDownload.sf-file-page .allCommentButtons #createComment {
    background: var(--sf-teal);
    color: #fff;
    border-radius: 10px;
    padding: .6rem 1.2rem;
}

.allSingleDownload.sf-file-page .allCommentButtons #cancelComment {
    background: #fff;
    color: var(--sf-navy);
    border: 1px solid var(--sf-line);
    border-radius: 10px;
    padding: .6rem 1.2rem;
}

.allSingleDownload.sf-file-page .sf-admin-badge {
    display: inline-block;
    margin-right: .35rem;
    background: var(--sf-teal);
    color: #fff;
    border-radius: 999px;
    font-size: .68rem;
    font-weight: 700;
    padding: .1rem .5rem;
}

.allSingleDownload.sf-file-page .sf-comment-date {
    display: block;
    margin-top: .25rem;
    color: var(--sf-muted);
    font-size: .75rem;
    font-weight: 500;
}

.allSingleDownload.sf-file-page .sf-comment-replies {
    margin: .35rem 1.2rem 0 0;
    padding-right: .75rem;
    border-right: 3px solid var(--sf-teal);
}

.allSingleDownload.sf-file-page .sf-comment-reply {
    background: #fff !important;
}

.allSingleDownload.sf-file-page .sf-admin-reply {
    border-color: rgba(13, 148, 136, .35);
}

/* Quick buy modal polish (shared, light) */
.allQuickBuy .quickBuy {
    border-radius: 18px !important;
    overflow: hidden;
}

.allQuickBuy .quickBuy .title .title1 {
    color: var(--sf-navy);
}

.allQuickBuy .buyFast2 .left button {
    background: var(--sf-teal) !important;
    border-radius: 10px !important;
}

/* Mobile */
@media screen and (max-width: 1000px) {
    .allSingleDownload.sf-file-page {
        padding-bottom: 5.5rem;
    }

    .allSingleDownload.sf-file-page .singleTop {
        display: flex !important;
        flex-direction: column;
        gap: .85rem !important;
    }

    .allSingleDownload.sf-file-page .singleTop .right {
        display: contents;
    }

    .allSingleDownload.sf-file-page .singleTop .left {
        display: contents;
        position: static;
    }

    .allSingleDownload.sf-file-page .sf-cover-card { order: 1; }
    .allSingleDownload.sf-file-page .sf-hero-copy { order: 2; }
    .allSingleDownload.sf-file-page .sf-buy-card { order: 3; }
    .allSingleDownload.sf-file-page .leftShop { order: 4; }
    .allSingleDownload.sf-file-page .tabs { order: 5; }
    .allSingleDownload.sf-file-page .review { order: 6; }
    .allSingleDownload.sf-file-page .comment { order: 7; }
    .allSingleDownload.sf-file-page .files { order: 8; }
    .allSingleDownload.sf-file-page .description { order: 9; }
    .allSingleDownload.sf-file-page .sf-seller { order: 10; }
    .allSingleDownload.sf-file-page .sf-trust { order: 11; }
    .allSingleDownload.sf-file-page .start { order: 12; }

    .allSingleDownload.sf-file-page .sf-hero-copy h1,
    .allSingleDownload.sf-file-page h1 {
        font-size: 1.15rem !important;
        line-height: 1.8rem !important;
        margin-bottom: .4rem !important;
    }

    .allSingleDownload.sf-file-page .rightItems img {
        max-height: 240px;
    }

    .allSingleDownload.sf-file-page .tabs .tab {
        font-size: .75rem !important;
        padding: .55rem .25rem !important;
    }

    .allSingleDownload.sf-file-page .review,
    .allSingleDownload.sf-file-page .comment,
    .allSingleDownload.sf-file-page .files,
    .allSingleDownload.sf-file-page .left .detail,
    .allSingleDownload.sf-file-page .left .leftShop,
    .allSingleDownload.sf-file-page .left .description,
    .allSingleDownload.sf-file-page .left .start,
    .allSingleDownload.sf-file-page .sf-seller,
    .allSingleDownload.sf-file-page .sf-trust {
        padding: .85rem !important;
        margin-top: 0 !important;
    }

    .allSingleDownload.sf-file-page .files .file {
        grid-template-columns: auto 1fr;
        gap: .55rem !important;
        padding: .7rem !important;
    }

    .allSingleDownload.sf-file-page .files .file .download {
        grid-column: 1 / -1;
        width: 100%;
        justify-content: center;
    }

    .allSingleDownload.sf-file-page .leftShop .addItems {
        grid-template-columns: 1fr !important;
    }

    .allSingleDownload.sf-file-page .course.sf-related {
        margin-top: 1rem !important;
        padding: .85rem !important;
    }

    .allProductArchive .productContainer .products {
        grid-template-columns: 1fr 1fr;
    }
}

/* ── Blog covers: forced 16:9 (1200×630) ── */
.blogIndex .slider-blog a .pic,
.allNews .allNewsRightItem figure,
.allSingleNews .right > .pic {
    aspect-ratio: 16 / 9;
    overflow: hidden;
    display: block;
    margin: 0;
}

.blogIndex .slider-blog a .pic img,
.allNews .allNewsRightItem figure img,
.allNews .allNewsRightItem img,
.allSingleNews .right > .pic img {
    width: 100%;
    height: 100%;
    aspect-ratio: 16 / 9;
    object-fit: cover;
    object-position: center;
    display: block;
}

.allSingleNews .right > .pic img {
    height: auto;
}

.allSingleNews .right .postsList ul li a img {
    width: 5rem;
    height: auto;
    aspect-ratio: 16 / 9;
    object-fit: cover;
    object-position: center;
}

@media screen and (max-width: 640px) {
    .allSingleDownload.sf-file-page .sf-price-now {
        font-size: 1.25rem;
    }

    .allSingleDownload.sf-file-page .sf-off-badge {
        width: 4.7rem;
        height: 4.7rem;
    }

    .allSingleDownload.sf-file-page .sf-off-badge strong {
        font-size: 1.2rem;
    }

    .allSingleDownload.sf-file-page .sf-buy-card.has-off .sf-price-row {
        grid-template-columns: minmax(0, 1fr) auto;
        align-items: center;
    }

    .allSingleDownload.sf-file-page .sf-meta .sf-chip {
        font-size: .72rem;
    }
}

@media screen and (max-width: 380px) {
    .allSingleDownload.sf-file-page .sf-buy-card.has-off .sf-price-row {
        grid-template-columns: 1fr;
        justify-items: start;
        gap: .7rem;
    }
}

/* ── Add-to-cart modal ── */
.sf-cart-modal {
    position: fixed;
    inset: 0;
    z-index: 80;
    display: grid;
    place-items: center;
    padding: 1rem;
}
.sf-cart-modal[hidden] { display: none !important; }
.sf-cart-modal__backdrop {
    position: absolute;
    inset: 0;
    background: rgba(11, 31, 58, .45);
}
.sf-cart-modal__box {
    position: relative;
    width: min(420px, 100%);
    background: var(--sf-card);
    border-radius: 22px;
    box-shadow: var(--sf-shadow-hover);
    padding: 1.4rem 1.3rem 1.2rem;
    direction: rtl;
}
.sf-cart-modal__close {
    position: absolute;
    left: .8rem;
    top: .7rem;
    border: 0;
    background: #f1f5f9;
    width: 2rem;
    height: 2rem;
    border-radius: 999px;
    font-size: 1.2rem;
    cursor: pointer;
    color: var(--sf-navy);
}
.sf-cart-modal__badge {
    display: inline-block;
    background: var(--sf-teal-soft);
    color: var(--sf-teal-ink);
    border-radius: 999px;
    padding: .2rem .7rem;
    font-size: .8rem;
    margin-bottom: .9rem;
}
.sf-cart-modal__product {
    display: grid;
    grid-template-columns: 72px 1fr;
    gap: .9rem;
    align-items: center;
}
.sf-cart-modal__product img {
    width: 72px;
    height: 72px;
    object-fit: cover;
    border-radius: 14px;
    background: #e2e8f0;
}
.sf-cart-modal__product h3 {
    margin: 0 0 .35rem;
    font-size: 1rem;
    color: var(--sf-text);
    line-height: 1.6;
}
.sf-cart-modal__price {
    color: var(--sf-teal);
    font-weight: 800;
}
.sf-cart-modal__actions {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: .6rem;
    margin-top: 1rem;
}
.sf-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 12px;
    padding: .7rem .9rem;
    text-decoration: none;
    border: 0;
    cursor: pointer;
    font-family: inherit;
    font-size: .92rem;
}
.sf-btn-primary {
    background: var(--sf-teal);
    color: #fff !important;
}
.sf-btn-ghost {
    background: #f1f5f9;
    color: var(--sf-navy);
}

/* ── Threshold bar ── */
.sf-threshold {
    margin: 1rem 0;
    background: linear-gradient(135deg, #ecfdf5, #f0fdfa);
    border: 1px solid #99f6e4;
    border-radius: 16px;
    padding: .9rem 1rem;
}
.sf-threshold.is-done {
    background: linear-gradient(135deg, #ccfbf1, #99f6e4);
}
.sf-threshold__label,
.sf-threshold__text {
    font-size: .92rem;
    color: var(--sf-teal-ink);
    margin-bottom: .55rem;
}
.sf-threshold__bar {
    height: 10px;
    background: #fff;
    border-radius: 999px;
    overflow: hidden;
}
.sf-threshold__bar span {
    display: block;
    height: 100%;
    width: 0;
    background: linear-gradient(90deg, var(--sf-teal), var(--sf-teal-2));
    border-radius: 999px;
    transition: width .4s ease;
}
.sf-threshold__save {
    margin-top: .5rem;
    font-size: .85rem;
    color: var(--sf-navy);
}

/* ── Consult + info pages ── */
.sf-consult {
    margin-top: 1rem;
    background: var(--sf-card);
    border: 1px solid var(--sf-line);
    border-radius: var(--sf-radius);
    padding: 1rem;
    box-shadow: var(--sf-shadow);
}
.sf-consult__title {
    font-weight: 800;
    color: var(--sf-navy);
    margin-bottom: .4rem;
}
.sf-consult p { color: var(--sf-muted); font-size: .9rem; margin: 0 0 .8rem; }
.sf-consult__form { display: grid; gap: .7rem; }
.sf-consult__form label,
.sf-contact-form label {
    display: grid;
    gap: .3rem;
    font-size: .85rem;
    color: var(--sf-muted);
}
.sf-consult__form input,
.sf-contact-form input,
.sf-contact-form textarea {
    border: 1px solid var(--sf-line);
    border-radius: 12px;
    padding: .7rem .8rem;
    font-family: inherit;
}
.sf-consult__form button,
.sf-contact-form button {
    background: var(--sf-teal);
    color: #fff;
    border: 0;
    border-radius: 12px;
    padding: .8rem;
    cursor: pointer;
    font-family: inherit;
}
.sf-consult__msg { font-size: .88rem; }

.sf-info-page { padding: 2rem 0 3rem; }
.sf-info-hero {
    background: linear-gradient(135deg, var(--sf-navy), #123055);
    color: #fff;
    border-radius: 24px;
    padding: 2rem 1.5rem;
    margin-bottom: 1.2rem;
}
.sf-info-kicker {
    color: var(--sf-teal-2);
    font-size: .85rem;
}
.sf-info-hero h1 { margin: .4rem 0 .6rem; font-size: 1.7rem; }
.sf-info-hero p { margin: 0; opacity: .9; line-height: 1.9; }
.sf-info-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1rem;
}
.sf-info-card {
    background: #fff;
    border-radius: 18px;
    padding: 1.1rem;
    box-shadow: var(--sf-shadow);
    text-decoration: none;
    color: inherit;
    display: block;
}
.sf-info-card h2 { margin: 0 0 .5rem; font-size: 1.05rem; color: var(--sf-navy); }
.sf-info-card p { margin: 0; color: var(--sf-muted); line-height: 1.8; }
.sf-info-note, .sf-info-body { margin-top: 1.2rem; background: #fff; border-radius: 18px; padding: 1.2rem; }
.sf-contact-wrap {
    display: grid;
    grid-template-columns: 1fr 1.1fr;
    gap: 1rem;
}
.sf-contact-details { display: grid; gap: .8rem; }
.sf-social-links { display: flex; flex-wrap: wrap; gap: .6rem; }
.sf-social-links a { color: var(--sf-teal); }
.sf-contact-form {
    background: #fff;
    border-radius: 18px;
    padding: 1.2rem;
    display: grid;
    gap: .7rem;
    box-shadow: var(--sf-shadow);
}

.sf-live-search {
    position: absolute;
    top: calc(100% + 6px);
    right: 0;
    left: 0;
    background: #fff;
    border-radius: 14px;
    box-shadow: var(--sf-shadow-hover);
    list-style: none;
    margin: 0;
    padding: .4rem;
    z-index: 40;
    max-height: 360px;
    overflow: auto;
}
.sf-live-search li a {
    display: grid;
    grid-template-columns: 44px 1fr;
    gap: .6rem;
    align-items: center;
    padding: .45rem;
    border-radius: 10px;
    text-decoration: none;
    color: var(--sf-text);
}
.sf-live-search li a:hover { background: var(--sf-teal-soft); }
.sf-live-search img {
    width: 44px;
    height: 44px;
    object-fit: cover;
    border-radius: 8px;
}
.sf-live-search strong { display: block; font-size: .86rem; }
.sf-live-search small { color: var(--sf-teal); }
.sf-live-empty { padding: .7rem; color: var(--sf-muted); }
.botHeader .search,
.allHeaderIndex2 form,
.allHeaderIndex3 form.search {
    position: relative;
}
.allHeaderIndex3 form.search {
    flex: 1;
    min-width: 160px;
    max-width: 320px;
}
.allHeaderIndex3 form.search input {
    width: 100%;
    border: 1px solid var(--sf-line);
    border-radius: 12px;
    padding: .55rem 2.2rem .55rem .8rem;
    font-family: inherit;
}

.sf-wa-upsell {
    margin-top: 1.2rem;
    background: #042f2e;
    color: #ecfdf5;
    border-radius: 18px;
    padding: 1.2rem;
    text-align: right;
}
.sf-wa-upsell h3 { margin: 0 0 .5rem; }
.sf-wa-upsell p { line-height: 1.9; opacity: .92; }
.sf-wa-code { margin: .8rem 0; color: #99f6e4; }
.sf-wa-actions { display: flex; gap: .5rem; margin-top: .8rem; flex-wrap: wrap; }
.sf-cashback-box { background: #fff; border-radius: 16px; padding: 1rem; margin: 1rem 0; }

.gateItem.gate-installment {
    min-width: 110px;
    min-height: 64px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: .2rem;
    border: 1px solid #d1d5db;
    border-radius: 12px;
    padding: .45rem .6rem;
    cursor: pointer;
    background: #fff;
}
.gateItem.gate-installment.active {
    border-color: #0d9488;
    box-shadow: 0 0 0 2px rgba(13,148,136,.18);
}
.gate-installment__name { font-size: .9rem; font-weight: 700; color: #111827; }
.gate-installment__badge {
    font-size: .72rem;
    background: #ecfdf5;
    color: #0f766e;
    border-radius: 999px;
    padding: .1rem .45rem;
}
.sf-quick-gates {
    width: 100%;
    margin: .6rem 0 1rem;
    text-align: right;
}
.sf-quick-gates__title { font-size: .85rem; margin-bottom: .4rem; color: #374151; }
.sf-quick-gate {
    display: flex;
    align-items: center;
    gap: .4rem;
    margin: .25rem 0;
    font-size: .85rem;
}

@media screen and (max-width: 900px) {
    .sf-info-grid,
    .sf-contact-wrap,
    .sf-cart-modal__actions { grid-template-columns: 1fr; }
}
