/* =========================================
   RETAILERS WEBSITE CSS - CLEAN PREMIUM V31
   Theme: Shoptimizer
   Version: 1.31.1
   Sections:
   1) Global variables / strip cleanup
   2) Desktop header + navigation
   3) Desktop dropdowns
   4) Mobile header
   5) Clients logo marquee
   6) Mini cart drawer fix
   7) RFU PPOM / printing / embroidery UI base
   8) RFU print notes + mobile number steppers
   9) RFU compact upload areas + typography
   10) RFU premium below add-to-cart area
   19) RFU premium grouped cart page
   20) RFU checkout tax invoice UI ready
   ========================================= */

:root {
    --retailers-navy: #041320;
    --retailers-orange: #E78C07;
    --retailers-white: #ffffff;
    --retailers-menu-text: #0C2D4E;
    --retailers-menu-soft: #FFF4E3;
}

/* =========================================
   1) REMOVE DEMO / TOP MESSAGE STRIPS
   ========================================= */

body .header-widget-region,
body .header-widget-region .col-full,
body .header-widget-region .widget,
body .header-widget-region p,
body .below-header,
body .top-strip,
body .retailers-top-strip,
body .storefront-handheld-footer-bar {
    display: none !important;
    height: 0 !important;
    min-height: 0 !important;
    max-height: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
    border: 0 !important;
    overflow: hidden !important;
}

/* =========================================
   2) DESKTOP HEADER
   ========================================= */

@media (min-width: 993px) {

    body #masthead.site-header,
    body #masthead .main-header.col-full,
    body #masthead .site-branding,
    body #masthead .site-search,
    body .col-full-nav,
    body .shoptimizer-primary-navigation {
        background: var(--retailers-navy) !important;
        border: 0 !important;
        box-shadow: none !important;
    }

    body #masthead.site-header {
        position: sticky !important;
        top: 0 !important;
        padding: 0 !important;
        margin: 0 !important;
        overflow: visible !important;
        z-index: 999999 !important;
    }

    body.admin-bar #masthead.site-header {
        top: 32px !important;
    }

    body #masthead .main-header.col-full {
        position: relative !important;
        display: flex !important;
        align-items: center !important;
        height: 66px !important;
        min-height: 66px !important;
        padding-top: 0 !important;
        padding-bottom: 0 !important;
        margin: 0 auto !important;
        overflow: visible !important;
    }

    body #masthead .site-branding {
        display: flex !important;
        align-items: center !important;
        justify-content: flex-start !important;
        height: 66px !important;
        min-height: 66px !important;
        margin: 0 !important;
        padding: 0 !important;
        float: none !important;
    }

    body #masthead .site-branding .custom-logo-link {
        display: flex !important;
        align-items: center !important;
        justify-content: flex-start !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    body #masthead .site-branding img,
    body #masthead img.custom-logo,
    body #masthead .custom-logo-link img {
        width: 245px !important;
        max-width: 245px !important;
        height: auto !important;
        display: block !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    body #masthead .site-search {
        position: absolute !important;
        top: 50% !important;
        right: 40px !important;
        left: auto !important;
        transform: translateY(-50%) !important;
        width: 255px !important;
        max-width: 255px !important;
        margin: 0 !important;
        padding: 0 !important;
        z-index: 20 !important;
    }

    body #masthead .site-search .widget,
    body #masthead .site-search form {
        width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    body #masthead .site-search input[type="search"],
    body #masthead .site-search .search-field,
    body #masthead input[id^="woocommerce-product-search-field"].search-field {
        width: 100% !important;
        height: 34px !important;
        min-height: 34px !important;
        padding: 0 13px !important;
        background: #ffffff !important;
        color: #111827 !important;
        border: 0 !important;
        border-radius: 7px !important;
        box-shadow: none !important;
        font-size: 13px !important;
        line-height: 34px !important;
    }

    body #masthead .site-search button[type="submit"] {
        display: none !important;
    }

    body #masthead .main-header.col-full > nav,
    body #masthead .main-header.col-full > .site-header-cart,
    body #masthead .main-header.col-full > .secondary-navigation,
    body #masthead .main-header.col-full > .menu-primary-menu-container,
    body #masthead .main-header.col-full > .s-observer {
        display: none !important;
        visibility: hidden !important;
        opacity: 0 !important;
        height: 0 !important;
        max-height: 0 !important;
        overflow: hidden !important;
        pointer-events: none !important;
    }

    body .col-full-nav {
        position: sticky !important;
        top: 66px !important;
        z-index: 999998 !important;
        height: 48px !important;
        min-height: 48px !important;
        margin: 0 !important;
        padding: 0 !important;
        overflow: visible !important;
        background: var(--retailers-navy) !important;
        border-top: 1px solid rgba(255,255,255,.06) !important;
    }

    body.admin-bar .col-full-nav {
        top: 98px !important;
    }

    body .shoptimizer-primary-navigation,
    body .shoptimizer-primary-navigation.col-full {
        position: relative !important;
        z-index: 999999 !important;
        display: flex !important;
        align-items: center !important;
        height: 48px !important;
        min-height: 48px !important;
        margin: 0 auto !important;
        padding-top: 0 !important;
        padding-bottom: 0 !important;
        overflow: visible !important;
        background: var(--retailers-navy) !important;
    }

    body .shoptimizer-primary-navigation .site-search {
        display: none !important;
    }

    body .shoptimizer-primary-navigation #site-navigation,
    body .shoptimizer-primary-navigation nav.main-navigation,
    body .col-full-nav #site-navigation,
    body .col-full-nav nav.main-navigation {
        display: flex !important;
        align-items: center !important;
        justify-content: flex-start !important;
        flex: 1 1 auto !important;
        width: auto !important;
        max-width: none !important;
        height: 48px !important;
        min-height: 48px !important;
        margin: 0 !important;
        padding: 0 !important;
        background: transparent !important;
        float: none !important;
        clear: none !important;
        overflow: visible !important;
    }

    body #site-navigation > div,
    body #site-navigation .menu-primary-menu-container {
        height: 48px !important;
        min-height: 48px !important;
        overflow: visible !important;
    }

    body #site-navigation > div > ul.menu,
    body #site-navigation > div > ul.nav-menu,
    body #site-navigation .menu-primary-menu-container > ul.menu,
    body #site-navigation .menu-primary-menu-container > ul.nav-menu,
    body .main-navigation ul.menu,
    body .main-navigation ul.nav-menu {
        display: flex !important;
        align-items: center !important;
        justify-content: flex-start !important;
        flex-wrap: nowrap !important;
        height: 48px !important;
        min-height: 48px !important;
        margin: 0 !important;
        padding: 0 !important;
        list-style: none !important;
        background: transparent !important;
        overflow: visible !important;
    }

    body #site-navigation > div > ul.menu > li,
    body #site-navigation > div > ul.nav-menu > li,
    body #site-navigation .menu-primary-menu-container > ul.menu > li,
    body #site-navigation .menu-primary-menu-container > ul.nav-menu > li,
    body .main-navigation ul.menu > li,
    body .main-navigation ul.nav-menu > li {
        display: flex !important;
        align-items: center !important;
        flex: 0 0 auto !important;
        width: auto !important;
        max-width: none !important;
        height: 48px !important;
        min-height: 48px !important;
        margin: 0 !important;
        padding: 0 !important;
        position: relative !important;
        background: transparent !important;
        overflow: visible !important;
        white-space: nowrap !important;
    }

    body #site-navigation > div > ul.menu > li > a,
    body #site-navigation > div > ul.nav-menu > li > a,
    body #site-navigation .menu-primary-menu-container > ul.menu > li > a,
    body #site-navigation .menu-primary-menu-container > ul.nav-menu > li > a,
    body .main-navigation ul.menu > li > a,
    body .main-navigation ul.nav-menu > li > a {
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: auto !important;
        max-width: none !important;
        height: 48px !important;
        min-height: 48px !important;
        padding: 0 14px !important;
        margin: 0 !important;
        color: #ffffff !important;
        background: transparent !important;
        font-size: 14px !important;
        line-height: 48px !important;
        font-weight: 700 !important;
        text-decoration: none !important;
        white-space: nowrap !important;
        word-break: normal !important;
        overflow-wrap: normal !important;
        writing-mode: horizontal-tb !important;
        text-orientation: mixed !important;
    }

    body #site-navigation > div > ul.menu > li > a > span,
    body #site-navigation > div > ul.nav-menu > li > a > span,
    body #site-navigation .menu-primary-menu-container > ul.menu > li > a > span,
    body #site-navigation .menu-primary-menu-container > ul.nav-menu > li > a > span,
    body .main-navigation ul.menu > li > a > span,
    body .main-navigation ul.nav-menu > li > a > span {
        display: inline !important;
        width: auto !important;
        max-width: none !important;
        height: auto !important;
        min-height: 0 !important;
        padding: 0 !important;
        margin: 0 !important;
        line-height: inherit !important;
        white-space: nowrap !important;
        word-break: normal !important;
        overflow-wrap: normal !important;
        writing-mode: horizontal-tb !important;
        text-orientation: mixed !important;
    }

    body #site-navigation > div > ul.menu > li > a:hover,
    body #site-navigation > div > ul.nav-menu > li > a:hover,
    body #site-navigation > div > ul.menu > li:hover > a,
    body #site-navigation > div > ul.nav-menu > li:hover > a,
    body #site-navigation .menu-primary-menu-container > ul.menu > li > a:hover,
    body #site-navigation .menu-primary-menu-container > ul.nav-menu > li > a:hover,
    body #site-navigation .menu-primary-menu-container > ul.menu > li:hover > a,
    body #site-navigation .menu-primary-menu-container > ul.nav-menu > li:hover > a,
    body .main-navigation ul.menu > li:hover > a,
    body .main-navigation ul.nav-menu > li:hover > a,
    body .main-navigation ul.menu > li:focus-within > a,
    body .main-navigation ul.nav-menu > li:focus-within > a {
        color: var(--retailers-orange) !important;
        background: transparent !important;
    }

    body .shoptimizer-primary-navigation nav.site-header-cart,
    body .col-full-nav nav.site-header-cart,
    body .site-header-cart.menu {
        margin-left: auto !important;
        margin-right: 0 !important;
        padding: 0 !important;
        min-width: 150px !important;
        height: 48px !important;
        min-height: 48px !important;
        display: flex !important;
        align-items: center !important;
        justify-content: flex-end !important;
        background: transparent !important;
        float: none !important;
        clear: none !important;
        overflow: visible !important;
    }

    body .site-header-cart .cart-contents,
    body .site-header-cart .amount,
    body .site-header-cart .woocommerce-Price-amount {
        color: #ffffff !important;
        font-size: 15px !important;
        line-height: 48px !important;
        font-weight: 700 !important;
        white-space: nowrap !important;
    }

    body .site-header-cart .count,
    body .site-header-cart .cart-contents .count,
    body .site-header-cart .cart-contents::after {
        color: var(--retailers-orange) !important;
        border-color: var(--retailers-orange) !important;
    }
}

/* =========================================
   3) DESKTOP PREMIUM DROPDOWNS
   ========================================= */

@media (min-width: 993px) {

    body .col-full-nav,
    body .shoptimizer-primary-navigation,
    body #site-navigation,
    body #site-navigation .menu-primary-menu-container,
    body #site-navigation .menu-primary-menu-container > ul.menu,
    body #site-navigation .menu-primary-menu-container > ul.nav-menu,
    body .main-navigation,
    body .main-navigation ul.menu,
    body .main-navigation ul.nav-menu,
    body .main-navigation li {
        overflow: visible !important;
    }

    body .main-navigation .sub-menu-wrapper,
    body .main-navigation ul.sub-menu,
    body .main-navigation .sub-menu-wrapper *,
    body .main-navigation ul.sub-menu * {
        writing-mode: horizontal-tb !important;
        text-orientation: mixed !important;
        word-break: normal !important;
        overflow-wrap: normal !important;
        letter-spacing: normal !important;
        white-space: nowrap !important;
        box-sizing: border-box !important;
    }

    body .main-navigation ul.menu > li:not(.full-width) > .sub-menu-wrapper,
    body #site-navigation.main-navigation ul.menu > li:not(.full-width) > .sub-menu-wrapper,
    body #site-navigation .menu-primary-menu-container > ul.menu > li:not(.full-width) > .sub-menu-wrapper {
        position: absolute !important;
        top: calc(100% + 4px) !important;
        bottom: auto !important;
        left: 0 !important;
        right: auto !important;
        width: 250px !important;
        min-width: 250px !important;
        max-width: 250px !important;
        height: auto !important;
        min-height: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
        background: transparent !important;
        border: 0 !important;
        border-radius: 0 !important;
        box-shadow: none !important;
        opacity: 0 !important;
        visibility: hidden !important;
        pointer-events: none !important;
        transform: translateY(4px) scale(0.985) !important;
        transform-origin: top left !important;
        transition: opacity .14s ease, transform .14s ease, visibility .14s ease !important;
        z-index: 999999 !important;
        overflow: visible !important;
    }

    body .main-navigation ul.menu > li:not(.full-width) > .sub-menu-wrapper::before,
    body #site-navigation.main-navigation ul.menu > li:not(.full-width) > .sub-menu-wrapper::before,
    body #site-navigation .menu-primary-menu-container > ul.menu > li:not(.full-width) > .sub-menu-wrapper::before {
        content: "" !important;
        position: absolute !important;
        left: 0 !important;
        top: -6px !important;
        width: 100% !important;
        height: 6px !important;
        background: transparent !important;
        border: 0 !important;
        box-shadow: none !important;
        display: block !important;
        pointer-events: auto !important;
    }

    body .main-navigation ul.menu > li:not(.full-width):hover > .sub-menu-wrapper,
    body .main-navigation ul.menu > li:not(.full-width):focus-within > .sub-menu-wrapper,
    body #site-navigation.main-navigation ul.menu > li:not(.full-width):hover > .sub-menu-wrapper,
    body #site-navigation.main-navigation ul.menu > li:not(.full-width):focus-within > .sub-menu-wrapper,
    body #site-navigation .menu-primary-menu-container > ul.menu > li:not(.full-width):hover > .sub-menu-wrapper,
    body #site-navigation .menu-primary-menu-container > ul.menu > li:not(.full-width):focus-within > .sub-menu-wrapper {
        opacity: 1 !important;
        visibility: visible !important;
        pointer-events: auto !important;
        transform: translateY(0) scale(1) !important;
    }

    body .main-navigation .sub-menu-wrapper > ul.sub-menu,
    body #site-navigation .sub-menu-wrapper > ul.sub-menu {
        position: relative !important;
        top: auto !important;
        left: auto !important;
        right: auto !important;
        width: 100% !important;
        min-width: 0 !important;
        max-width: none !important;
        height: auto !important;
        min-height: 0 !important;
        margin: 0 !important;
        padding: 7px 0 !important;
        background: #ffffff !important;
        border: 1px solid rgba(12, 45, 78, 0.10) !important;
        border-top: 2px solid var(--retailers-orange) !important;
        border-radius: 0 0 10px 10px !important;
        box-shadow: 0 18px 34px rgba(4, 19, 32, 0.16) !important;
        display: block !important;
        opacity: 1 !important;
        visibility: visible !important;
        pointer-events: auto !important;
        overflow: visible !important;
        transform: none !important;
    }

    body .main-navigation ul.sub-menu > li,
    body #site-navigation ul.sub-menu > li {
        position: relative !important;
        display: block !important;
        width: 100% !important;
        height: auto !important;
        min-height: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
        background: transparent !important;
        float: none !important;
        clear: both !important;
        border: 0 !important;
        overflow: visible !important;
    }

    body .main-navigation ul.sub-menu > li > a,
    body #site-navigation ul.sub-menu > li > a {
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
        width: 100% !important;
        height: 41px !important;
        min-height: 41px !important;
        margin: 0 !important;
        padding: 0 20px !important;
        background: #ffffff !important;
        color: var(--retailers-menu-text) !important;
        font-size: 14px !important;
        line-height: 41px !important;
        font-weight: 650 !important;
        text-align: left !important;
        text-decoration: none !important;
        white-space: nowrap !important;
        word-break: normal !important;
        overflow-wrap: normal !important;
        writing-mode: horizontal-tb !important;
        text-orientation: mixed !important;
        border: 0 !important;
        box-shadow: none !important;
    }

    body .main-navigation ul.sub-menu > li:hover > a,
    body .main-navigation ul.sub-menu > li:focus-within > a,
    body .main-navigation ul.sub-menu > li > a:hover,
    body #site-navigation ul.sub-menu > li:hover > a,
    body #site-navigation ul.sub-menu > li:focus-within > a,
    body #site-navigation ul.sub-menu > li > a:hover {
        background: var(--retailers-menu-soft) !important;
        color: var(--retailers-orange) !important;
    }

    body .main-navigation ul.sub-menu > li.menu-item-has-children > .sub-menu-wrapper,
    body #site-navigation.main-navigation ul.sub-menu > li.menu-item-has-children > .sub-menu-wrapper,
    body #site-navigation ul.sub-menu > li.menu-item-has-children > .sub-menu-wrapper {
        position: absolute !important;
        top: -2px !important;
        bottom: auto !important;
        left: calc(100% - 1px) !important;
        right: auto !important;
        width: 238px !important;
        min-width: 238px !important;
        max-width: 238px !important;
        height: auto !important;
        min-height: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
        background: transparent !important;
        border: 0 !important;
        border-radius: 0 !important;
        box-shadow: none !important;
        opacity: 0 !important;
        visibility: hidden !important;
        pointer-events: none !important;
        transform: translateX(5px) scale(0.985) !important;
        transform-origin: top left !important;
        transition: opacity .14s ease, transform .14s ease, visibility .14s ease !important;
        z-index: 1000000 !important;
        overflow: visible !important;
    }

    body .main-navigation ul.sub-menu > li.menu-item-has-children > .sub-menu-wrapper::before,
    body #site-navigation.main-navigation ul.sub-menu > li.menu-item-has-children > .sub-menu-wrapper::before,
    body #site-navigation ul.sub-menu > li.menu-item-has-children > .sub-menu-wrapper::before {
        content: "" !important;
        position: absolute !important;
        top: 0 !important;
        bottom: 0 !important;
        left: -14px !important;
        width: 14px !important;
        background: transparent !important;
        border: 0 !important;
        box-shadow: none !important;
        display: block !important;
        pointer-events: auto !important;
    }

    body .main-navigation ul.sub-menu > li.menu-item-has-children:hover > .sub-menu-wrapper,
    body .main-navigation ul.sub-menu > li.menu-item-has-children:focus-within > .sub-menu-wrapper,
    body #site-navigation.main-navigation ul.sub-menu > li.menu-item-has-children:hover > .sub-menu-wrapper,
    body #site-navigation.main-navigation ul.sub-menu > li.menu-item-has-children:focus-within > .sub-menu-wrapper,
    body #site-navigation ul.sub-menu > li.menu-item-has-children:hover > .sub-menu-wrapper,
    body #site-navigation ul.sub-menu > li.menu-item-has-children:focus-within > .sub-menu-wrapper {
        opacity: 1 !important;
        visibility: visible !important;
        pointer-events: auto !important;
        transform: translateX(0) scale(1) !important;
    }

    body .main-navigation ul.sub-menu > li.menu-item-has-children > a::after,
    body #site-navigation ul.sub-menu > li.menu-item-has-children > a::after {
        content: "›" !important;
        margin-left: 12px !important;
        color: inherit !important;
        font-size: 18px !important;
        line-height: 1 !important;
        font-weight: 400 !important;
    }
}

/* =========================================
   4) MOBILE CLOSED HEADER - FIXED STABLE
   ========================================= */

@media (max-width: 992px) {
    body #masthead.site-header,
    body .site-header {
        position: fixed !important;
        top: 0 !important;
        left: 0 !important;
        right: 0 !important;
        width: 100% !important;
        z-index: 999999 !important;
        background: var(--retailers-navy) !important;
        padding: 0 !important;
        margin: 0 !important;
        border: 0 !important;
        box-shadow: none !important;
        overflow: visible !important;
        transform: none !important;
        transition: none !important;
        will-change: auto !important;
    }

    body.admin-bar #masthead.site-header,
    body.admin-bar .site-header {
        top: 46px !important;
    }

    body #page {
        padding-top: 88px !important;
    }

    body.admin-bar #page {
        padding-top: 134px !important;
    }

    body #masthead .main-header.col-full {
        position: relative !important;
        width: 100% !important;
        height: 88px !important;
        min-height: 88px !important;
        padding: 0 !important;
        margin: 0 !important;
        background: var(--retailers-navy) !important;
        display: block !important;
        overflow: visible !important;
        box-shadow: none !important;
        border: 0 !important;
        transform: none !important;
    }

    body #masthead .site-branding {
        position: relative !important;
        width: 100% !important;
        height: 88px !important;
        min-height: 88px !important;
        padding: 0 70px !important;
        margin: 0 !important;
        background: var(--retailers-navy) !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        box-sizing: border-box !important;
        overflow: visible !important;
    }

    body #masthead .site-branding .custom-logo-link {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: auto !important;
        max-width: calc(100vw - 150px) !important;
        margin: 0 !important;
        padding: 0 !important;
        z-index: 30 !important;
    }

    body #masthead .site-branding img,
    body #masthead img.custom-logo {
        width: 218px !important;
        max-width: calc(100vw - 150px) !important;
        height: auto !important;
        display: block !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    body #masthead .site-search,
    body #masthead .secondary-navigation,
    body #masthead .s-observer {
        display: none !important;
    }

    body #masthead button.menu-toggle {
        position: absolute !important;
        left: 18px !important;
        top: 50% !important;
        transform: translateY(-50%) !important;
        z-index: 60 !important;
        width: 44px !important;
        height: 48px !important;
        min-width: 44px !important;
        min-height: 48px !important;
        margin: 0 !important;
        padding: 0 !important;
        border: 0 !important;
        border-radius: 0 !important;
        background: transparent !important;
        box-shadow: none !important;
        color: transparent !important;
        font-size: 0 !important;
        line-height: 0 !important;
        display: block !important;
        overflow: hidden !important;
    }

    body #masthead button.menu-toggle span,
    body #masthead button.menu-toggle .bar,
    body #masthead button.menu-toggle .bar-text {
        display: none !important;
    }

    body #masthead button.menu-toggle::before {
        content: "MENU" !important;
        position: absolute !important;
        left: 50% !important;
        top: 5px !important;
        transform: translateX(-50%) !important;
        width: 44px !important;
        height: 10px !important;
        color: #ffffff !important;
        font-size: 8px !important;
        line-height: 10px !important;
        font-weight: 800 !important;
        letter-spacing: .25px !important;
        text-align: center !important;
        text-transform: uppercase !important;
    }

    body #masthead button.menu-toggle::after {
        content: "" !important;
        position: absolute !important;
        left: 50% !important;
        top: 22px !important;
        transform: translateX(-50%) !important;
        width: 24px !important;
        height: 17px !important;
        background:
            linear-gradient(var(--retailers-orange), var(--retailers-orange)) 0 0 / 24px 3px no-repeat,
            linear-gradient(var(--retailers-orange), var(--retailers-orange)) 0 7px / 24px 3px no-repeat,
            linear-gradient(var(--retailers-orange), var(--retailers-orange)) 0 14px / 24px 3px no-repeat !important;
    }

    body #masthead .site-header-cart {
        position: absolute !important;
        right: 18px !important;
        top: 50% !important;
        transform: translateY(-50%) !important;
        z-index: 60 !important;
        width: 44px !important;
        min-width: 44px !important;
        height: 48px !important;
        min-height: 48px !important;
        margin: 0 !important;
        padding: 0 !important;
        background: transparent !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        overflow: visible !important;
    }

    body #masthead .site-header-cart .amount {
        display: none !important;
    }

    body #masthead .site-header-cart .cart-contents {
        width: 38px !important;
        height: 38px !important;
        min-width: 38px !important;
        min-height: 38px !important;
        padding: 0 !important;
        margin: 0 !important;
        border: 1.5px solid var(--retailers-orange) !important;
        border-radius: 6px !important;
        background: transparent !important;
        color: var(--retailers-orange) !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        overflow: hidden !important;
        font-size: 0 !important;
        line-height: 1 !important;
    }

    body #masthead .site-header-cart .cart-contents::before,
    body #masthead .site-header-cart .cart-contents::after {
        display: none !important;
        content: none !important;
    }

    body #masthead .site-header-cart .count,
    body #masthead .site-header-cart .cart-contents .count {
        position: static !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: 100% !important;
        height: 100% !important;
        padding: 0 !important;
        margin: 0 !important;
        border: 0 !important;
        background: transparent !important;
        color: var(--retailers-orange) !important;
        font-size: 12px !important;
        line-height: 1 !important;
        font-weight: 800 !important;
    }
}

@media (max-width: 380px) {
    body #masthead .site-branding {
        padding-left: 58px !important;
        padding-right: 58px !important;
    }

    body #masthead .site-branding img,
    body #masthead img.custom-logo {
        width: 198px !important;
        max-width: calc(100vw - 132px) !important;
    }

    body #masthead button.menu-toggle {
        left: 14px !important;
    }

    body #masthead .site-header-cart {
        right: 14px !important;
    }
}

/* =========================================
   5) RETAILERS CLIENTS LOGO MARQUEE
   ========================================= */

.retailers-logo-marquee {
    width: 100%;
    overflow: hidden;
    position: relative;
    padding: 14px 0 10px;
    cursor: grab;
    user-select: none;
    touch-action: pan-y;
}

.retailers-logo-marquee.is-dragging {
    cursor: grabbing;
}

.retailers-logo-marquee::before,
.retailers-logo-marquee::after {
    content: "";
    position: absolute;
    top: 0;
    width: 90px;
    height: 100%;
    z-index: 3;
    pointer-events: none;
}

.retailers-logo-marquee::before {
    left: 0;
    background: linear-gradient(to right, #f3f3f3 0%, rgba(243,243,243,0) 100%);
}

.retailers-logo-marquee::after {
    right: 0;
    background: linear-gradient(to left, #f3f3f3 0%, rgba(243,243,243,0) 100%);
}

.retailers-logo-track {
    display: flex;
    align-items: center;
    flex-wrap: nowrap;
    gap: 22px;
    width: max-content;
    will-change: transform;
    transform: translate3d(0, 0, 0);
}

.retailers-logo-card {
    width: 210px;
    height: 125px;
    flex: 0 0 210px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 22px 26px;
    background: #ffffff;
    border: 1px solid rgba(12, 45, 78, 0.08);
    border-radius: 14px;
    transition: transform 0.3s ease, box-shadow 0.3s ease, border-color 0.3s ease, background 0.3s ease;
}

.retailers-logo-card img {
    max-width: 100%;
    max-height: 72px;
    width: auto;
    height: auto;
    object-fit: contain;
    pointer-events: none;
    filter: grayscale(100%);
    opacity: 0.38;
    transition: filter 0.35s ease, opacity 0.35s ease, transform 0.35s ease;
}

.retailers-logo-card:hover {
    transform: translateY(-2px);
    border-color: rgba(231, 140, 7, 0.25);
    box-shadow: 0 8px 24px rgba(12, 45, 78, 0.08);
}

.retailers-logo-card:hover img {
    filter: grayscale(0%);
    opacity: 1;
    transform: scale(1.02);
}

.retailers-logo-card.is-active {
    border-color: rgba(231, 140, 7, 0.24);
    box-shadow: 0 10px 26px rgba(12, 45, 78, 0.08);
    background: #ffffff;
}

.retailers-logo-card.is-active img {
    filter: grayscale(0%);
    opacity: 1;
    transform: scale(1.03);
}

@media (max-width: 767px) {

    .retailers-logo-marquee {
        padding: 10px 0 8px;
    }

    .retailers-logo-marquee::before,
    .retailers-logo-marquee::after {
        width: 40px;
    }

    .retailers-logo-track {
        gap: 16px;
    }

    .retailers-logo-card {
        width: 165px;
        height: 105px;
        flex: 0 0 165px;
        padding: 18px 20px;
        border-radius: 12px;
    }

    .retailers-logo-card img {
        max-height: 58px;
    }
}

/* =========================================
   6) MINI CART DRAWER BASE
   =========================================

   Mini cart drawer layout, grouping, totals, VAT and buttons
   are controlled in Section 18 only.
   This section is intentionally kept empty to avoid duplicate
   rules fighting each other.
   ========================================= */



/* =========================================
   18) RFU - PREMIUM GROUPED MINI CART DRAWER V31
   Works with shoptimizer-child/woocommerce/cart/mini-cart.php
   ========================================= */

body #shoptimizerCartDrawer,
body .shoptimizer-mini-cart-wrap[role="dialog"],
body .widget_shopping_cart,
body .site-header-cart .widget_shopping_cart,
body .site-header-cart .widget_shopping_cart_content,
body .shoptimizer-mini-cart-wrap,
body .shoptimizer-mini-cart,
body .commercekit-mini-cart,
body .ckit-mini-cart,
body .drawer,
body .cart-drawer,
body .mini-cart-drawer,
body .woocommerce-mini-cart__container {
    z-index: 1000005 !important;
}

body .site-header-cart .widget_shopping_cart,
body .shoptimizer-mini-cart-wrap,
body .commercekit-mini-cart,
body .ckit-mini-cart,
body .cart-drawer,
body .mini-cart-drawer {
    position: fixed !important;
}

body #shoptimizerCartDrawer,
body .shoptimizer-mini-cart-wrap[role="dialog"] {
    width: 410px !important;
    max-width: 410px !important;
    min-width: 0 !important;
    height: 100vh !important;
    height: 100dvh !important;
    background: #ffffff !important;
    border-left: 1px solid rgba(12, 45, 78, .08) !important;
    border-radius: 17px 0 0 17px !important;
    box-shadow: -18px 0 45px rgba(4, 19, 32, .20) !important;
    overflow: hidden !important;
}

body #shoptimizerCartDrawer,
body #shoptimizerCartDrawer .widget_shopping_cart,
body #shoptimizerCartDrawer .widget_shopping_cart_content,
body .shoptimizer-mini-cart-wrap .widget_shopping_cart,
body .shoptimizer-mini-cart-wrap .widget_shopping_cart_content {
    display: flex !important;
    flex-direction: column !important;
    min-height: 0 !important;
}

body #shoptimizerCartDrawer .widget_shopping_cart,
body #shoptimizerCartDrawer .widget_shopping_cart_content,
body .shoptimizer-mini-cart-wrap .widget_shopping_cart,
body .shoptimizer-mini-cart-wrap .widget_shopping_cart_content {
    flex: 1 1 auto !important;
    height: 100% !important;
    padding: 0 !important;
    margin: 0 !important;
    background: #ffffff !important;
}

body.drawer-open .menu-overlay,
body.drawer-open .site-overlay,
body.drawer-open .shoptimizer-overlay,
body.drawer-open .shoptimizer-mini-cart-overlay,
body.shoptimizer-cart-open .menu-overlay,
body.shoptimizer-cart-open .site-overlay,
body.shoptimizer-cart-open .shoptimizer-overlay,
body.shoptimizer-cart-open .shoptimizer-mini-cart-overlay,
body.cart-drawer-open .menu-overlay,
body.cart-drawer-open .site-overlay,
body.cart-drawer-open .shoptimizer-overlay,
body.cart-drawer-open .shoptimizer-mini-cart-overlay {
    background: rgba(4, 19, 32, .56) !important;
    opacity: 1 !important;
    backdrop-filter: blur(2px) !important;
}

body #shoptimizerCartDrawer .cart-drawer-heading,
body #shoptimizerCartDrawer .woocommerce-mini-cart__title,
body #shoptimizerCartDrawer .widgettitle,
body #shoptimizerCartDrawer .widget-title,
body .shoptimizer-mini-cart-wrap .cart-drawer-heading,
body .shoptimizer-mini-cart-wrap .woocommerce-mini-cart__title,
body .shoptimizer-mini-cart-wrap .widgettitle,
body .shoptimizer-mini-cart-wrap .widget-title {
    flex: 0 0 auto !important;
    min-height: 52px !important;
    margin: 0 !important;
    padding: 0 54px 0 18px !important;
    display: flex !important;
    align-items: center !important;
    border-bottom: 1px solid #edf1f5 !important;
    background: #ffffff !important;
    color: #041320 !important;
    font-size: 16px !important;
    line-height: 1.2 !important;
    font-weight: 900 !important;
    letter-spacing: -.14px !important;
}

body #shoptimizerCartDrawer .close-drawer,
body #shoptimizerCartDrawer button.close-drawer,
body .shoptimizer-mini-cart-wrap .close-drawer,
body .shoptimizer-mini-cart-wrap button.close-drawer {
    position: absolute !important;
    top: 10px !important;
    right: 13px !important;
    z-index: 100 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 34px !important;
    height: 34px !important;
    min-width: 34px !important;
    min-height: 34px !important;
    padding: 0 !important;
    margin: 0 !important;
    border: 1px solid #edf1f5 !important;
    border-radius: 999px !important;
    background: #f6f8fa !important;
    color: transparent !important;
    box-shadow: none !important;
    opacity: 1 !important;
    font-size: 0 !important;
    line-height: 1 !important;
    cursor: pointer !important;
    overflow: hidden !important;
    visibility: visible !important;
    pointer-events: auto !important;
}

body #shoptimizerCartDrawer .close-drawer::before,
body #shoptimizerCartDrawer button.close-drawer::before,
body .shoptimizer-mini-cart-wrap .close-drawer::before,
body .shoptimizer-mini-cart-wrap button.close-drawer::before {
    content: "×" !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    height: 100% !important;
    color: #0C2D4E !important;
    font-size: 24px !important;
    line-height: 1 !important;
    font-weight: 500 !important;
}

body ul.woocommerce-mini-cart.rfu-mini-cart-grouped-list,
body ul.cart_list.rfu-mini-cart-grouped-list,
body ul.product_list_widget.rfu-mini-cart-grouped-list,
body ul.rfu-mini-cart-grouped-list {
    display: block !important;
    flex: 1 1 auto !important;
    min-height: 0 !important;
    overflow-y: auto !important;
    overscroll-behavior: contain !important;
    padding: 12px 14px 10px !important;
    margin: 0 !important;
    background: #ffffff !important;
    border: 0 !important;
    list-style: none !important;
    scrollbar-width: thin !important;
}

body ul.rfu-mini-cart-grouped-list li.rfu-mini-cart-group,
body ul.rfu-mini-cart-grouped-list li.rfu-mini-cart-group * {
    box-sizing: border-box !important;
}

body ul.rfu-mini-cart-grouped-list li.rfu-mini-cart-group {
    position: relative !important;
    display: block !important;
    width: 100% !important;
    margin: 0 0 12px !important;
    padding: 12px !important;
    border: 1px solid #e3eaf0 !important;
    border-radius: 15px !important;
    background: linear-gradient(180deg, #ffffff 0%, #fbfcfe 100%) !important;
    box-shadow: 0 8px 22px rgba(12, 45, 78, .05) !important;
    overflow: visible !important;
    float: none !important;
    clear: both !important;
}

body ul.rfu-mini-cart-grouped-list .rfu-mini-cart-group-head {
    display: grid !important;
    grid-template-columns: 58px minmax(0, 1fr) !important;
    gap: 11px !important;
    align-items: start !important;
    width: 100% !important;
    margin: 0 0 10px !important;
}

body ul.rfu-mini-cart-grouped-list .rfu-mini-cart-product-image,
body ul.rfu-mini-cart-grouped-list .rfu-mini-cart-product-image img {
    width: 58px !important;
    min-width: 58px !important;
    max-width: 58px !important;
}

body ul.rfu-mini-cart-grouped-list .rfu-mini-cart-product-image {
    grid-column: 1 !important;
    margin: 0 !important;
    padding: 0 !important;
}

body ul.rfu-mini-cart-grouped-list .rfu-mini-cart-product-image a,
body ul.rfu-mini-cart-grouped-list .rfu-mini-cart-product-image img {
    display: block !important;
}

body ul.rfu-mini-cart-grouped-list .rfu-mini-cart-product-image img {
    height: 72px !important;
    margin: 0 !important;
    padding: 0 !important;
    border-radius: 11px !important;
    object-fit: cover !important;
    object-position: center top !important;
    background: #f5f7f9 !important;
    float: none !important;
}

body ul.rfu-mini-cart-grouped-list .rfu-mini-cart-product-info {
    grid-column: 2 !important;
    min-width: 0 !important;
    padding: 1px 0 0 !important;
}

body ul.rfu-mini-cart-grouped-list .rfu-mini-cart-product-title {
    display: block !important;
    margin: 0 0 7px !important;
    padding: 0 !important;
    color: #041320 !important;
    font-size: 13px !important;
    line-height: 1.32 !important;
    font-weight: 900 !important;
    letter-spacing: -.06px !important;
    text-decoration: none !important;
    overflow-wrap: anywhere !important;
}

body ul.rfu-mini-cart-grouped-list .rfu-mini-cart-color {
    display: inline-flex !important;
    align-items: center !important;
    width: fit-content !important;
    max-width: 100% !important;
    min-height: 22px !important;
    margin: 0 0 6px !important;
    padding: 4px 8px !important;
    border-radius: 999px !important;
    background: rgba(12, 45, 78, .055) !important;
    color: #0C2D4E !important;
    font-size: 11px !important;
    line-height: 1.2 !important;
    font-weight: 750 !important;
}

body ul.rfu-mini-cart-grouped-list .rfu-mini-cart-color span {
    margin-right: 4px !important;
    color: #667786 !important;
    font-weight: 800 !important;
}

body ul.rfu-mini-cart-grouped-list .rfu-mini-cart-color strong {
    color: #0C2D4E !important;
    font-weight: 900 !important;
}

body ul.rfu-mini-cart-grouped-list .rfu-mini-cart-badges {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 6px !important;
    margin: 0 !important;
}

body ul.rfu-mini-cart-grouped-list .rfu-mini-cart-badge {
    display: inline-flex !important;
    align-items: center !important;
    width: fit-content !important;
    max-width: 100% !important;
    min-height: 22px !important;
    padding: 4px 8px !important;
    border-radius: 999px !important;
    background: #fff8ef !important;
    border: 1px solid rgba(231, 140, 7, .23) !important;
    color: #0C2D4E !important;
    font-size: 10.5px !important;
    line-height: 1.2 !important;
    font-weight: 850 !important;
    white-space: nowrap !important;
}

body ul.rfu-mini-cart-grouped-list .rfu-mini-cart-size-rows {
    display: grid !important;
    gap: 7px !important;
    margin: 10px 0 0 !important;
    padding: 0 !important;
}

body ul.rfu-mini-cart-grouped-list .rfu-mini-cart-size-row {
    position: relative !important;
    display: grid !important;
    grid-template-columns: 42px 58px minmax(0, 1fr) 25px !important;
    gap: 8px !important;
    align-items: center !important;
    min-height: 42px !important;
    padding: 8px 7px 8px 10px !important;
    border: 1px solid #e8eef3 !important;
    border-radius: 12px !important;
    background: #ffffff !important;
    overflow: hidden !important;
}

body ul.rfu-mini-cart-grouped-list .rfu-mini-cart-size {
    color: #0C2D4E !important;
    font-size: 13px !important;
    line-height: 1.2 !important;
    font-weight: 950 !important;
    white-space: nowrap !important;
}

body ul.rfu-mini-cart-grouped-list .rfu-mini-cart-qty {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 24px !important;
    padding: 3px 7px !important;
    border-radius: 999px !important;
    background: #f4f7fa !important;
    color: #0C2D4E !important;
    font-size: 11px !important;
    line-height: 1.2 !important;
    font-weight: 850 !important;
    white-space: nowrap !important;
}

body ul.rfu-mini-cart-grouped-list .rfu-mini-cart-row-total,
body ul.rfu-mini-cart-grouped-list .rfu-mini-cart-row-total .woocommerce-Price-amount,
body ul.rfu-mini-cart-grouped-list .rfu-mini-cart-row-total bdi {
    color: #041320 !important;
    font-size: 12px !important;
    line-height: 1.25 !important;
    font-weight: 900 !important;
    text-align: right !important;
    white-space: nowrap !important;
}

body ul.rfu-mini-cart-grouped-list .rfu-mini-cart-remove,
body ul.rfu-mini-cart-grouped-list a.rfu-mini-cart-remove.remove,
body ul.rfu-mini-cart-grouped-list a.rfu-mini-cart-remove.remove_from_cart_button {
    position: relative !important;
    inset: auto !important;
    z-index: 3 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 24px !important;
    height: 24px !important;
    min-width: 24px !important;
    min-height: 24px !important;
    padding: 0 !important;
    margin: 0 !important;
    border: 0 !important;
    border-radius: 999px !important;
    background: #f3f5f7 !important;
    color: transparent !important;
    box-shadow: none !important;
    font-size: 0 !important;
    line-height: 0 !important;
    text-decoration: none !important;
    text-indent: 0 !important;
    overflow: hidden !important;
}

body ul.rfu-mini-cart-grouped-list .rfu-mini-cart-remove::before,
body ul.rfu-mini-cart-grouped-list .rfu-mini-cart-remove::after {
    content: "" !important;
    position: absolute !important;
    left: 50% !important;
    top: 50% !important;
    width: 11px !important;
    height: 1.5px !important;
    background: #7b8792 !important;
    border-radius: 2px !important;
    transform-origin: center !important;
}

body ul.rfu-mini-cart-grouped-list .rfu-mini-cart-remove::before {
    transform: translate(-50%, -50%) rotate(45deg) !important;
}

body ul.rfu-mini-cart-grouped-list .rfu-mini-cart-remove::after {
    transform: translate(-50%, -50%) rotate(-45deg) !important;
}

body .rfu-mini-cart-products-subtotal,
body .rfu-mini-cart-vat-summary,
body .rfu-mini-cart-fees {
    flex: 0 0 auto !important;
    margin-left: 14px !important;
    margin-right: 14px !important;
    box-sizing: border-box !important;
}

body .rfu-mini-cart-products-subtotal {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 12px !important;
    margin-top: 0 !important;
    margin-bottom: 10px !important;
    padding: 13px 0 10px !important;
    border-top: 1px solid #edf1f5 !important;
    color: #041320 !important;
    font-size: 14px !important;
    line-height: 1.3 !important;
    font-weight: 900 !important;
}

body .rfu-mini-cart-products-subtotal strong {
    color: #041320 !important;
    font-size: 14px !important;
    line-height: 1.3 !important;
    font-weight: 950 !important;
    white-space: nowrap !important;
}

body .rfu-mini-cart-fees {
    margin-top: 0 !important;
    margin-bottom: 11px !important;
    padding: 11px 12px !important;
    border-radius: 14px !important;
    background: #f8fbfd !important;
    border: 1px solid #e2e9ef !important;
}

body .rfu-mini-cart-fees-title {
    margin: 0 0 8px !important;
    padding: 0 !important;
    color: #0C2D4E !important;
    font-size: 12.3px !important;
    line-height: 1.2 !important;
    font-weight: 950 !important;
}

body .rfu-mini-cart-fee-line {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 12px !important;
    margin: 6px 0 !important;
    padding: 0 !important;
    color: #667786 !important;
    font-size: 12px !important;
    line-height: 1.3 !important;
    font-weight: 750 !important;
}

body .rfu-mini-cart-fee-line span {
    color: #667786 !important;
    font-weight: 800 !important;
}

body .rfu-mini-cart-fee-line strong {
    color: #0C2D4E !important;
    font-weight: 950 !important;
    white-space: nowrap !important;
}

body .rfu-mini-cart-vat-summary {
    margin-top: 0 !important;
    margin-bottom: 11px !important;
    padding: 11px 12px !important;
    border-radius: 14px !important;
    background: #fffaf2 !important;
    border: 1px solid rgba(231, 140, 7, .22) !important;
}

body .rfu-mini-cart-vat-line {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 12px !important;
    margin: 5px 0 !important;
    color: #657381 !important;
    font-size: 12.5px !important;
    line-height: 1.3 !important;
    font-weight: 800 !important;
}

body .rfu-mini-cart-vat-line strong {
    color: #0C2D4E !important;
    font-weight: 950 !important;
    white-space: nowrap !important;
}

body .rfu-mini-cart-vat-total {
    margin-top: 8px !important;
    padding-top: 8px !important;
    border-top: 1px solid rgba(231, 140, 7, .18) !important;
    color: #0C2D4E !important;
    font-size: 13px !important;
    font-weight: 950 !important;
}

body .rfu-mini-cart-vat-total strong {
    color: #E78C07 !important;
    font-size: 13.5px !important;
}

body #shoptimizerCartDrawer p.woocommerce-mini-cart__total,
body #shoptimizerCartDrawer p.total,
body .shoptimizer-mini-cart-wrap p.woocommerce-mini-cart__total,
body .shoptimizer-mini-cart-wrap p.total,
body .widget_shopping_cart_content p.woocommerce-mini-cart__total,
body .widget_shopping_cart_content p.total,
body .rfu-mini-cart-vat-note,
body #shoptimizerCartDrawer .widget_shopping_cart_content > table,
body #shoptimizerCartDrawer .widget_shopping_cart_content > table.shop_table,
body #shoptimizerCartDrawer .widget_shopping_cart_content > table.woocommerce-mini-cart__fees,
body #shoptimizerCartDrawer .widget_shopping_cart_content > p:not(.woocommerce-mini-cart__buttons):not(.buttons):not(.woocommerce-mini-cart__empty-message),
body .shoptimizer-mini-cart-wrap .widget_shopping_cart_content > table,
body .shoptimizer-mini-cart-wrap .widget_shopping_cart_content > table.shop_table,
body .shoptimizer-mini-cart-wrap .widget_shopping_cart_content > table.woocommerce-mini-cart__fees,
body .shoptimizer-mini-cart-wrap .widget_shopping_cart_content > p:not(.woocommerce-mini-cart__buttons):not(.buttons):not(.woocommerce-mini-cart__empty-message) {
    display: none !important;
}

body #shoptimizerCartDrawer p.woocommerce-mini-cart__buttons,
body #shoptimizerCartDrawer p.buttons,
body .shoptimizer-mini-cart-wrap p.woocommerce-mini-cart__buttons,
body .shoptimizer-mini-cart-wrap p.buttons,
body .widget_shopping_cart_content p.woocommerce-mini-cart__buttons,
body .widget_shopping_cart_content p.buttons {
    flex: 0 0 auto !important;
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 9px !important;
    margin: 0 !important;
    padding: 0 14px 14px !important;
    background: #ffffff !important;
}

body #shoptimizerCartDrawer p.woocommerce-mini-cart__buttons a,
body #shoptimizerCartDrawer p.buttons a,
body .shoptimizer-mini-cart-wrap p.woocommerce-mini-cart__buttons a,
body .shoptimizer-mini-cart-wrap p.buttons a,
body .widget_shopping_cart_content p.woocommerce-mini-cart__buttons a,
body .widget_shopping_cart_content p.buttons a {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    min-height: 44px !important;
    height: 44px !important;
    padding: 0 18px !important;
    margin: 0 !important;
    border-radius: 10px !important;
    border: 1px solid #dfe7ee !important;
    background: #ffffff !important;
    color: #0C2D4E !important;
    box-shadow: none !important;
    font-size: 13.5px !important;
    line-height: 44px !important;
    font-weight: 850 !important;
    text-align: center !important;
    text-decoration: none !important;
}

body #shoptimizerCartDrawer p.woocommerce-mini-cart__buttons a.checkout,
body #shoptimizerCartDrawer p.buttons a.checkout,
body .shoptimizer-mini-cart-wrap p.woocommerce-mini-cart__buttons a.checkout,
body .shoptimizer-mini-cart-wrap p.buttons a.checkout,
body .widget_shopping_cart_content p.woocommerce-mini-cart__buttons a.checkout,
body .widget_shopping_cart_content p.buttons a.checkout {
    border-color: #E78C07 !important;
    background: #E78C07 !important;
    color: #ffffff !important;
    font-size: 14.5px !important;
    font-weight: 900 !important;
    box-shadow: 0 10px 22px rgba(231, 140, 7, .24) !important;
}

@media (max-width: 767px) {
    body #shoptimizerCartDrawer,
    body .shoptimizer-mini-cart-wrap[role="dialog"] {
        width: 84vw !important;
        max-width: 385px !important;
        min-width: 0 !important;
        border-radius: 17px 0 0 17px !important;
    }

    body ul.woocommerce-mini-cart.rfu-mini-cart-grouped-list,
    body ul.cart_list.rfu-mini-cart-grouped-list,
    body ul.product_list_widget.rfu-mini-cart-grouped-list,
    body ul.rfu-mini-cart-grouped-list {
        padding: 11px 12px 10px !important;
    }

    body ul.rfu-mini-cart-grouped-list li.rfu-mini-cart-group {
        padding: 11px !important;
        border-radius: 15px !important;
    }

    body ul.rfu-mini-cart-grouped-list .rfu-mini-cart-group-head {
        grid-template-columns: 54px minmax(0, 1fr) !important;
        gap: 10px !important;
    }

    body ul.rfu-mini-cart-grouped-list .rfu-mini-cart-product-image,
    body ul.rfu-mini-cart-grouped-list .rfu-mini-cart-product-image img {
        width: 54px !important;
        min-width: 54px !important;
        max-width: 54px !important;
    }

    body ul.rfu-mini-cart-grouped-list .rfu-mini-cart-product-image img {
        height: 68px !important;
    }

    body ul.rfu-mini-cart-grouped-list .rfu-mini-cart-product-title {
        font-size: 12.5px !important;
    }

    body ul.rfu-mini-cart-grouped-list .rfu-mini-cart-size-row {
        grid-template-columns: 38px 54px minmax(0, 1fr) 24px !important;
        gap: 7px !important;
        padding: 8px 7px 8px 9px !important;
    }

    body ul.rfu-mini-cart-grouped-list .rfu-mini-cart-size {
        font-size: 12.5px !important;
    }

    body ul.rfu-mini-cart-grouped-list .rfu-mini-cart-qty {
        font-size: 10.5px !important;
        padding: 3px 6px !important;
    }

    body ul.rfu-mini-cart-grouped-list .rfu-mini-cart-row-total,
    body ul.rfu-mini-cart-grouped-list .rfu-mini-cart-row-total .woocommerce-Price-amount,
    body ul.rfu-mini-cart-grouped-list .rfu-mini-cart-row-total bdi {
        font-size: 11.5px !important;
    }
}

@media (max-width: 380px) {
    body #shoptimizerCartDrawer,
    body .shoptimizer-mini-cart-wrap[role="dialog"] {
        width: 86vw !important;
        max-width: 355px !important;
    }

    body ul.rfu-mini-cart-grouped-list li.rfu-mini-cart-group {
        padding: 10px !important;
    }

    body ul.rfu-mini-cart-grouped-list .rfu-mini-cart-size-row {
        grid-template-columns: 34px 48px minmax(0, 1fr) 24px !important;
        gap: 6px !important;
        padding-left: 8px !important;
    }

    body ul.rfu-mini-cart-grouped-list .rfu-mini-cart-product-title {
        font-size: 12px !important;
    }

    body ul.rfu-mini-cart-grouped-list .rfu-mini-cart-row-total,
    body ul.rfu-mini-cart-grouped-list .rfu-mini-cart-row-total .woocommerce-Price-amount,
    body ul.rfu-mini-cart-grouped-list .rfu-mini-cart-row-total bdi {
        font-size: 11px !important;
    }
}

/* RFU Mini Cart - collapsible branding + discount badge */
.rfu-mini-cart-discount-badge {
    background: #eef8f1 !important;
    border-color: rgba(31, 132, 77, .22) !important;
    color: #1f6f43 !important;
}

.rfu-mini-cart-fees-collapsible {
    display: block !important;
}

.rfu-mini-cart-fees-summary {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 12px !important;
    cursor: pointer !important;
    list-style: none !important;
    color: #0C2D4E !important;
    font-size: 13px !important;
    line-height: 1.3 !important;
    font-weight: 950 !important;
}

.rfu-mini-cart-fees-summary::-webkit-details-marker {
    display: none !important;
}

.rfu-mini-cart-fees-summary::after {
    content: "+" !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 22px !important;
    height: 22px !important;
    margin-left: 6px !important;
    border-radius: 999px !important;
    background: #eef2f5 !important;
    color: #0C2D4E !important;
    font-size: 15px !important;
    font-weight: 900 !important;
    flex: 0 0 auto !important;
}

.rfu-mini-cart-fees-collapsible[open] .rfu-mini-cart-fees-summary::after {
    content: "−" !important;
}

.rfu-mini-cart-fees-summary strong {
    margin-left: auto !important;
    color: #0C2D4E !important;
    font-weight: 950 !important;
    white-space: nowrap !important;
}

.rfu-mini-cart-fees-details {
    margin-top: 9px !important;
    padding-top: 8px !important;
    border-top: 1px solid #e2e9ef !important;
}

/* RFU Mini Cart - cart discount note */
.rfu-mini-cart-discount-note {
    margin: -5px 14px 12px !important;
    display: flex !important;
    justify-content: flex-start !important;
}

/* RFU Mini Cart - compact cart discount note */
body #shoptimizerCartDrawer .rfu-mini-cart-discount-note,
body .shoptimizer-mini-cart-wrap .rfu-mini-cart-discount-note,
body .widget_shopping_cart_content .rfu-mini-cart-discount-note {
    flex: 0 0 auto !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    margin: -4px 14px 11px !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    color: inherit !important;
    font-size: 0 !important;
    line-height: 0 !important;
}

body #shoptimizerCartDrawer .rfu-mini-cart-discount-note > span,
body .shoptimizer-mini-cart-wrap .rfu-mini-cart-discount-note > span,
body .widget_shopping_cart_content .rfu-mini-cart-discount-note > span {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: auto !important;
    max-width: calc(100% - 2px) !important;
    min-height: 23px !important;
    padding: 4px 9px !important;
    margin: 0 !important;
    border-radius: 999px !important;
    background: #f7fbf8 !important;
    border: 1px solid rgba(31, 132, 77, .18) !important;
    color: #1f6f43 !important;
    font-size: 10.5px !important;
    line-height: 1.15 !important;
    font-weight: 850 !important;
    letter-spacing: -0.02px !important;
    white-space: nowrap !important;
    text-align: left !important;
    box-shadow: none !important;
}
/* RFU Mini Cart - quantity controls V1.3 premium compact + better tap area */
body #shoptimizerCartDrawer .rfu-mini-cart-qty-control,
body .shoptimizer-mini-cart-wrap .rfu-mini-cart-qty-control,
body .widget_shopping_cart_content .rfu-mini-cart-qty-control {
    display: inline-grid !important;
    grid-template-columns: 26px 30px 26px !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 94px !important;
    width: 94px !important;
    height: 34px !important;
    padding: 3px !important;
    border: 1px solid #dfe7ee !important;
    border-radius: 999px !important;
    background: linear-gradient(180deg, #ffffff 0%, #f5f8fb 100%) !important;
    color: #0C2D4E !important;
    box-shadow:
        inset 0 1px 0 rgba(255,255,255,.95),
        0 2px 6px rgba(4,19,32,.04) !important;
    box-sizing: border-box !important;
    overflow: visible !important;
}

body #shoptimizerCartDrawer .rfu-mini-cart-qty-btn,
body .shoptimizer-mini-cart-wrap .rfu-mini-cart-qty-btn,
body .widget_shopping_cart_content .rfu-mini-cart-qty-btn {
    position: relative !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 26px !important;
    height: 26px !important;
    min-width: 26px !important;
    min-height: 26px !important;
    padding: 0 !important;
    margin: 0 !important;
    border: 0 !important;
    border-radius: 999px !important;
    background: #eef3f7 !important;
    color: #0C2D4E !important;
    font-size: 17px !important;
    line-height: 26px !important;
    font-weight: 950 !important;
    text-align: center !important;
    cursor: pointer !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.75) !important;
    transition: background .14s ease, color .14s ease, transform .14s ease, box-shadow .14s ease !important;
    appearance: none !important;
    -webkit-appearance: none !important;
    touch-action: manipulation !important;
    box-sizing: border-box !important;
}

/* bigger invisible tap area without changing visual size */
body #shoptimizerCartDrawer .rfu-mini-cart-qty-btn::before,
body .shoptimizer-mini-cart-wrap .rfu-mini-cart-qty-btn::before,
body .widget_shopping_cart_content .rfu-mini-cart-qty-btn::before {
    content: "" !important;
    position: absolute !important;
    inset: -7px !important;
    border-radius: 999px !important;
    background: transparent !important;
    pointer-events: auto !important;
}

body #shoptimizerCartDrawer .rfu-mini-cart-qty-btn:hover,
body .shoptimizer-mini-cart-wrap .rfu-mini-cart-qty-btn:hover,
body .widget_shopping_cart_content .rfu-mini-cart-qty-btn:hover,
body #shoptimizerCartDrawer .rfu-mini-cart-qty-btn:focus-visible,
body .shoptimizer-mini-cart-wrap .rfu-mini-cart-qty-btn:focus-visible,
body .widget_shopping_cart_content .rfu-mini-cart-qty-btn:focus-visible {
    background: #E78C07 !important;
    color: #ffffff !important;
    box-shadow: 0 3px 8px rgba(231,140,7,.18) !important;
    outline: none !important;
}

body #shoptimizerCartDrawer .rfu-mini-cart-qty-btn:active,
body .shoptimizer-mini-cart-wrap .rfu-mini-cart-qty-btn:active,
body .widget_shopping_cart_content .rfu-mini-cart-qty-btn:active {
    transform: scale(.93) !important;
}

body #shoptimizerCartDrawer .rfu-mini-cart-qty-btn:disabled,
body .shoptimizer-mini-cart-wrap .rfu-mini-cart-qty-btn:disabled,
body .widget_shopping_cart_content .rfu-mini-cart-qty-btn:disabled {
    opacity: .35 !important;
    cursor: not-allowed !important;
    background: #eef3f7 !important;
    color: #8b98a4 !important;
    box-shadow: none !important;
}

body #shoptimizerCartDrawer .rfu-mini-cart-qty-label,
body .shoptimizer-mini-cart-wrap .rfu-mini-cart-qty-label,
body .widget_shopping_cart_content .rfu-mini-cart-qty-label {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 30px !important;
    min-width: 30px !important;
    height: 26px !important;
    padding: 0 !important;
    margin: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    color: #0C2D4E !important;
    font-size: 0 !important;
    line-height: 1 !important;
    font-weight: 950 !important;
    white-space: nowrap !important;
    box-shadow: none !important;
    box-sizing: border-box !important;
    pointer-events: none !important;
}

body #shoptimizerCartDrawer .rfu-mini-cart-qty-value,
body .shoptimizer-mini-cart-wrap .rfu-mini-cart-qty-value,
body .widget_shopping_cart_content .rfu-mini-cart-qty-value {
    display: block !important;
    color: #0C2D4E !important;
    font-size: 13px !important;
    line-height: 1 !important;
    font-weight: 950 !important;
    letter-spacing: -0.1px !important;
    transform: translateY(0) !important;
}

body #shoptimizerCartDrawer .rfu-mini-cart-qty-control.is-updating,
body .shoptimizer-mini-cart-wrap .rfu-mini-cart-qty-control.is-updating,
body .widget_shopping_cart_content .rfu-mini-cart-qty-control.is-updating {
    opacity: .72 !important;
    pointer-events: none !important;
}

@media (max-width: 480px) {
    body #shoptimizerCartDrawer .rfu-mini-cart-qty-control,
    body .shoptimizer-mini-cart-wrap .rfu-mini-cart-qty-control,
    body .widget_shopping_cart_content .rfu-mini-cart-qty-control {
        grid-template-columns: 26px 28px 26px !important;
        min-width: 92px !important;
        width: 92px !important;
        height: 34px !important;
        padding: 3px !important;
    }

    body #shoptimizerCartDrawer .rfu-mini-cart-qty-btn,
    body .shoptimizer-mini-cart-wrap .rfu-mini-cart-qty-btn,
    body .widget_shopping_cart_content .rfu-mini-cart-qty-btn {
        width: 26px !important;
        height: 26px !important;
        min-width: 26px !important;
        min-height: 26px !important;
        font-size: 16.5px !important;
        line-height: 26px !important;
    }

    body #shoptimizerCartDrawer .rfu-mini-cart-qty-label,
    body .shoptimizer-mini-cart-wrap .rfu-mini-cart-qty-label,
    body .widget_shopping_cart_content .rfu-mini-cart-qty-label {
        width: 28px !important;
        min-width: 28px !important;
        height: 26px !important;
    }

    body #shoptimizerCartDrawer .rfu-mini-cart-qty-value,
    body .shoptimizer-mini-cart-wrap .rfu-mini-cart-qty-value,
    body .widget_shopping_cart_content .rfu-mini-cart-qty-value {
        font-size: 12.8px !important;
    }
}


/* =========================================
   21) AR / RTL FIXES - CLEAN FINAL
   Scope: Arabic / RTL only
   ========================================= */

/* =========================================
   21.1) AR BASE
   ========================================= */

html[lang^="ar"],
html[lang^="ar"] body,
body.rtl {
    direction: rtl;
}

html[lang^="ar"] body,
body.rtl {
    text-align: right;
}

html[lang^="ar"] body #page,
html[lang^="ar"] body #masthead,
html[lang^="ar"] body .site-header,
html[lang^="ar"] body .col-full-nav,
html[lang^="ar"] body .shoptimizer-primary-navigation,
html[lang^="ar"] body .site-header-cart,
html[lang^="ar"] body .retailers-logo-marquee,
html[lang^="ar"] body .retailers-logo-track,
body.rtl #page,
body.rtl #masthead,
body.rtl .site-header,
body.rtl .col-full-nav,
body.rtl .shoptimizer-primary-navigation,
body.rtl .site-header-cart,
body.rtl .retailers-logo-marquee,
body.rtl .retailers-logo-track {
    direction: ltr !important;
}


/* =========================================
   21.2) DESKTOP AR HEADER / MENU
   ========================================= */

@media (min-width: 993px) {

    html[lang^="ar"] body #masthead .main-header.col-full,
    html[lang^="ar"] body #masthead .site-branding,
    html[lang^="ar"] body #masthead .site-search,
    html[lang^="ar"] body .col-full-nav,
    html[lang^="ar"] body .shoptimizer-primary-navigation,
    html[lang^="ar"] body #site-navigation,
    body.rtl #masthead .main-header.col-full,
    body.rtl #masthead .site-branding,
    body.rtl #masthead .site-search,
    body.rtl .col-full-nav,
    body.rtl .shoptimizer-primary-navigation,
    body.rtl #site-navigation {
        direction: ltr !important;
    }

    html[lang^="ar"] body #site-navigation > div > ul.menu,
    html[lang^="ar"] body #site-navigation .menu-primary-menu-container > ul.menu,
    html[lang^="ar"] body .main-navigation ul.menu,
    body.rtl #site-navigation > div > ul.menu,
    body.rtl #site-navigation .menu-primary-menu-container > ul.menu,
    body.rtl .main-navigation ul.menu {
        direction: ltr !important;
        display: flex !important;
        flex-direction: row !important;
        align-items: center !important;
        justify-content: flex-start !important;
    }

    html[lang^="ar"] body .main-navigation ul.menu > li > a,
    html[lang^="ar"] body #site-navigation ul.menu > li > a,
    body.rtl .main-navigation ul.menu > li > a,
    body.rtl #site-navigation ul.menu > li > a {
        direction: rtl !important;
        text-align: center !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 7px !important;
        white-space: nowrap !important;
    }

    html[lang^="ar"] body .main-navigation ul.menu > li.menu-item-has-children > a::after,
    html[lang^="ar"] body #site-navigation ul.menu > li.menu-item-has-children > a::after,
    body.rtl .main-navigation ul.menu > li.menu-item-has-children > a::after,
    body.rtl #site-navigation ul.menu > li.menu-item-has-children > a::after {
        position: static !important;
        display: inline-flex !important;
        margin: 0 7px 0 0 !important;
        transform: none !important;
        line-height: 1 !important;
        vertical-align: middle !important;
    }

    html[lang^="ar"] body .main-navigation ul.sub-menu,
    html[lang^="ar"] body #site-navigation ul.sub-menu,
    body.rtl .main-navigation ul.sub-menu,
    body.rtl #site-navigation ul.sub-menu {
        direction: rtl !important;
        text-align: right !important;
    }

    html[lang^="ar"] body .main-navigation ul.sub-menu > li > a,
    html[lang^="ar"] body #site-navigation ul.sub-menu > li > a,
    body.rtl .main-navigation ul.sub-menu > li > a,
    body.rtl #site-navigation ul.sub-menu > li > a {
        direction: rtl !important;
        text-align: right !important;
        justify-content: space-between !important;
        gap: 10px !important;
    }

    html[lang^="ar"] body .main-navigation ul.sub-menu > li.menu-item-has-children > a::after,
    html[lang^="ar"] body #site-navigation ul.sub-menu > li.menu-item-has-children > a::after,
    body.rtl .main-navigation ul.sub-menu > li.menu-item-has-children > a::after,
    body.rtl #site-navigation ul.sub-menu > li.menu-item-has-children > a::after {
        content: "‹" !important;
        margin: 0 10px 0 0 !important;
    }
}

/* =========================================
   21.3) MOBILE DRAWER OFFSET UNDER FIXED HEADER
   ========================================= */

@media (max-width: 992px) {

    body .col-full-nav.is_stuck {
        top: 88px !important;
        height: calc(100vh - 88px) !important;
        height: calc(100dvh - 88px) !important;
        max-height: calc(100vh - 88px) !important;
        max-height: calc(100dvh - 88px) !important;
        overflow-y: auto !important;
        -webkit-overflow-scrolling: touch !important;
    }

    body.admin-bar .col-full-nav.is_stuck {
        top: 134px !important;
        height: calc(100vh - 134px) !important;
        height: calc(100dvh - 134px) !important;
        max-height: calc(100vh - 134px) !important;
        max-height: calc(100dvh - 134px) !important;
    }

    body .mobile-overlay {
        top: 88px !important;
        height: calc(100vh - 88px) !important;
        height: calc(100dvh - 88px) !important;
    }

    body.admin-bar .mobile-overlay {
        top: 134px !important;
        height: calc(100vh - 134px) !important;
        height: calc(100dvh - 134px) !important;
    }
}

/* =========================================
   21.4) AR HOME HERO
   ========================================= */

html[lang^="ar"] body.page-id-7105 .elementor-element-8e3476d,
body.rtl.page-id-7105 .elementor-element-8e3476d,
html[lang^="ar"] body.page-id-7105 .elementor-element-1665f0c,
body.rtl.page-id-7105 .elementor-element-1665f0c {
    direction: ltr !important;
    position: relative !important;
    overflow: hidden !important;
}

html[lang^="ar"] body.page-id-7105 .elementor-element-8e3476d .e-con-inner,
body.rtl.page-id-7105 .elementor-element-8e3476d .e-con-inner,
html[lang^="ar"] body.page-id-7105 .elementor-element-1665f0c .e-con-inner,
body.rtl.page-id-7105 .elementor-element-1665f0c .e-con-inner {
    direction: ltr !important;
}

/* Desktop hero */
@media (min-width: 993px) {

    html[lang^="ar"] body.page-id-7105 .rfu-home-hero-copy-desktop,
    body.rtl.page-id-7105 .rfu-home-hero-copy-desktop {
        position: absolute !important;
        left: 34px !important;
        right: auto !important;
        top: 48px !important;
        width: 410px !important;
        max-width: 410px !important;
        height: auto !important;
        margin: 0 !important;
        padding: 0 !important;
        transform: none !important;
        direction: rtl !important;
        text-align: right !important;
        display: block !important;
        z-index: 5 !important;
    }

    html[lang^="ar"] body.page-id-7105 .rfu-home-hero-copy-desktop *,
    body.rtl.page-id-7105 .rfu-home-hero-copy-desktop * {
        box-sizing: border-box !important;
        direction: rtl !important;
        text-align: right !important;
        unicode-bidi: isolate !important;
    }

    html[lang^="ar"] body.page-id-7105 .rfu-home-hero-copy-desktop .elementor-widget,
    body.rtl.page-id-7105 .rfu-home-hero-copy-desktop .elementor-widget {
        position: relative !important;
        width: auto !important;
        max-width: none !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        padding: 0 !important;
        transform: none !important;
    }

    html[lang^="ar"] body.page-id-7105 .rfu-home-hero-copy-desktop .elementor-element-6b89d8f,
    body.rtl.page-id-7105 .rfu-home-hero-copy-desktop .elementor-element-6b89d8f {
        width: 135px !important;
        max-width: 135px !important;
        margin: 0 0 16px auto !important;
    }

    html[lang^="ar"] body.page-id-7105 .rfu-home-hero-copy-desktop .elementor-element-eed1456,
    body.rtl.page-id-7105 .rfu-home-hero-copy-desktop .elementor-element-eed1456 {
        width: 260px !important;
        max-width: 260px !important;
        margin: 0 0 18px auto !important;
    }

    html[lang^="ar"] body.page-id-7105 .rfu-home-hero-copy-desktop .elementor-element-eed1456 .elementor-heading-title,
    body.rtl.page-id-7105 .rfu-home-hero-copy-desktop .elementor-element-eed1456 .elementor-heading-title {
        font-size: 14px !important;
        line-height: 1.2 !important;
        font-weight: 800 !important;
        letter-spacing: 0 !important;
        margin: 0 !important;
    }

    html[lang^="ar"] body.page-id-7105 .rfu-home-hero-copy-desktop .elementor-element-3f70aab,
    body.rtl.page-id-7105 .rfu-home-hero-copy-desktop .elementor-element-3f70aab {
        width: 350px !important;
        max-width: 350px !important;
        margin: 0 0 14px auto !important;
    }

    html[lang^="ar"] body.page-id-7105 .rfu-home-hero-copy-desktop .elementor-element-ea0a6b3,
    body.rtl.page-id-7105 .rfu-home-hero-copy-desktop .elementor-element-ea0a6b3 {
        width: 390px !important;
        max-width: 390px !important;
        margin: 0 0 15px auto !important;
    }

    html[lang^="ar"] body.page-id-7105 .rfu-home-hero-copy-desktop .elementor-element-3f70aab .elementor-heading-title,
    html[lang^="ar"] body.page-id-7105 .rfu-home-hero-copy-desktop .elementor-element-ea0a6b3 .elementor-heading-title,
    body.rtl.page-id-7105 .rfu-home-hero-copy-desktop .elementor-element-3f70aab .elementor-heading-title,
    body.rtl.page-id-7105 .rfu-home-hero-copy-desktop .elementor-element-ea0a6b3 .elementor-heading-title {
        font-size: 34px !important;
        line-height: 1.08 !important;
        font-weight: 800 !important;
        letter-spacing: -0.1px !important;
        margin: 0 !important;
        white-space: nowrap !important;
    }

    html[lang^="ar"] body.page-id-7105 .rfu-home-hero-copy-desktop .elementor-element-04e2f45,
    body.rtl.page-id-7105 .rfu-home-hero-copy-desktop .elementor-element-04e2f45 {
        width: 135px !important;
        max-width: 135px !important;
        margin: 0 0 14px auto !important;
    }

    html[lang^="ar"] body.page-id-7105 .rfu-home-hero-copy-desktop .elementor-element-b2aefa5,
    body.rtl.page-id-7105 .rfu-home-hero-copy-desktop .elementor-element-b2aefa5 {
        width: 370px !important;
        max-width: 370px !important;
        margin: 0 0 0 auto !important;
        transform: translateX(42px) !important;
    }

    html[lang^="ar"] body.page-id-7105 .rfu-home-hero-copy-desktop .elementor-element-b2aefa5,
    html[lang^="ar"] body.page-id-7105 .rfu-home-hero-copy-desktop .elementor-element-b2aefa5 p,
    body.rtl.page-id-7105 .rfu-home-hero-copy-desktop .elementor-element-b2aefa5,
    body.rtl.page-id-7105 .rfu-home-hero-copy-desktop .elementor-element-b2aefa5 p {
        font-size: 16px !important;
        line-height: 1.46 !important;
        font-weight: 600 !important;
        margin: 0 !important;
    }

    html[lang^="ar"] body.page-id-7105 .rfu-home-hero-copy-desktop .elementor-divider,
    body.rtl.page-id-7105 .rfu-home-hero-copy-desktop .elementor-divider {
        text-align: right !important;
        padding: 0 !important;
    }

    html[lang^="ar"] body.page-id-7105 .rfu-home-hero-copy-desktop .elementor-divider-separator,
    body.rtl.page-id-7105 .rfu-home-hero-copy-desktop .elementor-divider-separator {
        margin-left: auto !important;
        margin-right: 0 !important;
    }
}

@media (min-width: 993px) and (max-width: 1300px) {

    html[lang^="ar"] body.page-id-7105 .rfu-home-hero-copy-desktop,
    body.rtl.page-id-7105 .rfu-home-hero-copy-desktop {
        left: 28px !important;
        top: 47px !important;
        width: 395px !important;
        max-width: 395px !important;
    }

    html[lang^="ar"] body.page-id-7105 .rfu-home-hero-copy-desktop .elementor-element-3f70aab .elementor-heading-title,
    html[lang^="ar"] body.page-id-7105 .rfu-home-hero-copy-desktop .elementor-element-ea0a6b3 .elementor-heading-title,
    body.rtl.page-id-7105 .rfu-home-hero-copy-desktop .elementor-element-3f70aab .elementor-heading-title,
    body.rtl.page-id-7105 .rfu-home-hero-copy-desktop .elementor-element-ea0a6b3 .elementor-heading-title {
        font-size: 31px !important;
        line-height: 1.08 !important;
    }

    html[lang^="ar"] body.page-id-7105 .rfu-home-hero-copy-desktop .elementor-element-b2aefa5,
    body.rtl.page-id-7105 .rfu-home-hero-copy-desktop .elementor-element-b2aefa5 {
        transform: translateX(34px) !important;
    }

    html[lang^="ar"] body.page-id-7105 .rfu-home-hero-copy-desktop .elementor-element-b2aefa5,
    html[lang^="ar"] body.page-id-7105 .rfu-home-hero-copy-desktop .elementor-element-b2aefa5 p,
    body.rtl.page-id-7105 .rfu-home-hero-copy-desktop .elementor-element-b2aefa5,
    body.rtl.page-id-7105 .rfu-home-hero-copy-desktop .elementor-element-b2aefa5 p {
        font-size: 15px !important;
        line-height: 1.44 !important;
    }
}

/* Mobile hero */
@media (max-width: 767px) {

    html[lang^="ar"] body.page-id-7105 .rfu-home-hero-copy-mobile,
    body.rtl.page-id-7105 .rfu-home-hero-copy-mobile {
        position: absolute !important;
        left: 8px !important;
        right: auto !important;
        top: 31px !important;
        width: 54% !important;
        max-width: 54% !important;
        height: auto !important;
        margin: 0 !important;
        padding: 0 !important;
        transform: none !important;
        direction: rtl !important;
        text-align: right !important;
        display: block !important;
        z-index: 5 !important;
    }

    html[lang^="ar"] body.page-id-7105 .rfu-home-hero-copy-mobile *,
    body.rtl.page-id-7105 .rfu-home-hero-copy-mobile * {
        box-sizing: border-box !important;
        direction: rtl !important;
        text-align: right !important;
        unicode-bidi: isolate !important;
    }

    html[lang^="ar"] body.page-id-7105 .rfu-home-hero-copy-mobile .elementor-widget,
    body.rtl.page-id-7105 .rfu-home-hero-copy-mobile .elementor-widget {
        position: relative !important;
        width: auto !important;
        max-width: none !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        padding: 0 !important;
        transform: none !important;
    }

    html[lang^="ar"] body.page-id-7105 .rfu-home-hero-copy-mobile .elementor-element-5119d2d,
    body.rtl.page-id-7105 .rfu-home-hero-copy-mobile .elementor-element-5119d2d {
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 0 10px 0 !important;
    }

    html[lang^="ar"] body.page-id-7105 .rfu-home-hero-copy-mobile .elementor-element-5119d2d .elementor-heading-title,
    body.rtl.page-id-7105 .rfu-home-hero-copy-mobile .elementor-element-5119d2d .elementor-heading-title {
        font-size: 12px !important;
        line-height: 1.3 !important;
        font-weight: 800 !important;
        letter-spacing: 0 !important;
        margin: 0 !important;
    }

    html[lang^="ar"] body.page-id-7105 .rfu-home-hero-copy-mobile .elementor-element-a115bf3,
    body.rtl.page-id-7105 .rfu-home-hero-copy-mobile .elementor-element-a115bf3 {
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 0 5px 0 !important;
    }

    html[lang^="ar"] body.page-id-7105 .rfu-home-hero-copy-mobile .elementor-element-9ab5b93,
    body.rtl.page-id-7105 .rfu-home-hero-copy-mobile .elementor-element-9ab5b93 {
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 0 20px 0 !important;
    }

    html[lang^="ar"] body.page-id-7105 .rfu-home-hero-copy-mobile .elementor-element-a115bf3 .elementor-heading-title,
    html[lang^="ar"] body.page-id-7105 .rfu-home-hero-copy-mobile .elementor-element-9ab5b93 .elementor-heading-title,
    body.rtl.page-id-7105 .rfu-home-hero-copy-mobile .elementor-element-a115bf3 .elementor-heading-title,
    body.rtl.page-id-7105 .rfu-home-hero-copy-mobile .elementor-element-9ab5b93 .elementor-heading-title {
        font-size: 23px !important;
        line-height: 1.13 !important;
        font-weight: 800 !important;
        letter-spacing: -0.05px !important;
        margin: 0 !important;
        white-space: normal !important;
    }

    html[lang^="ar"] body.page-id-7105 .rfu-home-hero-copy-mobile .elementor-element-ab65a83,
    body.rtl.page-id-7105 .rfu-home-hero-copy-mobile .elementor-element-ab65a83 {
        width: 80px !important;
        max-width: 80px !important;
        margin: 0 0 10px auto !important;
        padding: 0 !important;
        line-height: 0 !important;
        clear: both !important;
    }

    html[lang^="ar"] body.page-id-7105 .rfu-home-hero-copy-mobile .elementor-element-ab65a83 .elementor-divider,
    body.rtl.page-id-7105 .rfu-home-hero-copy-mobile .elementor-element-ab65a83 .elementor-divider {
        padding: 0 !important;
        line-height: 0 !important;
        text-align: right !important;
    }

    html[lang^="ar"] body.page-id-7105 .rfu-home-hero-copy-mobile .elementor-element-ab65a83 .elementor-divider-separator,
    body.rtl.page-id-7105 .rfu-home-hero-copy-mobile .elementor-element-ab65a83 .elementor-divider-separator {
        width: 80px !important;
        max-width: 80px !important;
        margin-left: auto !important;
        margin-right: 0 !important;
    }

    html[lang^="ar"] body.page-id-7105 .rfu-home-hero-copy-mobile .elementor-element-f9def95,
    body.rtl.page-id-7105 .rfu-home-hero-copy-mobile .elementor-element-f9def95 {
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
        clear: both !important;
    }

    html[lang^="ar"] body.page-id-7105 .rfu-home-hero-copy-mobile .elementor-element-f9def95,
    html[lang^="ar"] body.page-id-7105 .rfu-home-hero-copy-mobile .elementor-element-f9def95 p,
    body.rtl.page-id-7105 .rfu-home-hero-copy-mobile .elementor-element-f9def95,
    body.rtl.page-id-7105 .rfu-home-hero-copy-mobile .elementor-element-f9def95 p {
        font-size: 10.5px !important;
        line-height: 1.4 !important;
        font-weight: 500 !important;
        margin: 0 !important;
    }
}

@media (max-width: 420px) {

    html[lang^="ar"] body.page-id-7105 .rfu-home-hero-copy-mobile,
    body.rtl.page-id-7105 .rfu-home-hero-copy-mobile {
        left: 8px !important;
        top: 31px !important;
        width: 54% !important;
        max-width: 54% !important;
    }

    html[lang^="ar"] body.page-id-7105 .rfu-home-hero-copy-mobile .elementor-element-5119d2d .elementor-heading-title,
    body.rtl.page-id-7105 .rfu-home-hero-copy-mobile .elementor-element-5119d2d .elementor-heading-title {
        font-size: 11.5px !important;
        line-height: 1.28 !important;
    }

    html[lang^="ar"] body.page-id-7105 .rfu-home-hero-copy-mobile .elementor-element-a115bf3 .elementor-heading-title,
    html[lang^="ar"] body.page-id-7105 .rfu-home-hero-copy-mobile .elementor-element-9ab5b93 .elementor-heading-title,
    body.rtl.page-id-7105 .rfu-home-hero-copy-mobile .elementor-element-a115bf3 .elementor-heading-title,
    body.rtl.page-id-7105 .rfu-home-hero-copy-mobile .elementor-element-9ab5b93 .elementor-heading-title {
        font-size: 22px !important;
        line-height: 1.12 !important;
    }

    html[lang^="ar"] body.page-id-7105 .rfu-home-hero-copy-mobile .elementor-element-9ab5b93,
    body.rtl.page-id-7105 .rfu-home-hero-copy-mobile .elementor-element-9ab5b93 {
        margin-bottom: 20px !important;
    }

    html[lang^="ar"] body.page-id-7105 .rfu-home-hero-copy-mobile .elementor-element-ab65a83,
    body.rtl.page-id-7105 .rfu-home-hero-copy-mobile .elementor-element-ab65a83 {
        margin-bottom: 10px !important;
    }

    html[lang^="ar"] body.page-id-7105 .rfu-home-hero-copy-mobile .elementor-element-f9def95,
    html[lang^="ar"] body.page-id-7105 .rfu-home-hero-copy-mobile .elementor-element-f9def95 p,
    body.rtl.page-id-7105 .rfu-home-hero-copy-mobile .elementor-element-f9def95,
    body.rtl.page-id-7105 .rfu-home-hero-copy-mobile .elementor-element-f9def95 p {
        font-size: 10px !important;
        line-height: 1.36 !important;
    }
}

/* =========================================
   21.5) AR HOME TRUST / CLIENTS SECTION
   ========================================= */

html[lang^="ar"] body.page-id-7105 .retailers-logo-marquee,
body.rtl.page-id-7105 .retailers-logo-marquee {
    direction: ltr !important;
    text-align: left !important;
    max-width: 100% !important;
}

html[lang^="ar"] body.page-id-7105 .retailers-logo-track,
body.rtl.page-id-7105 .retailers-logo-track {
    direction: ltr !important;
    flex-direction: row !important;
}

html[lang^="ar"] body.page-id-7105 .elementor-widget-heading .elementor-heading-title,
html[lang^="ar"] body.page-id-7105 .elementor-widget-text-editor,
html[lang^="ar"] body.page-id-7105 .elementor-widget-text-editor p,
body.rtl.page-id-7105 .elementor-widget-heading .elementor-heading-title,
body.rtl.page-id-7105 .elementor-widget-text-editor,
body.rtl.page-id-7105 .elementor-widget-text-editor p {
    direction: rtl;
    unicode-bidi: isolate;
}

/* =========================================
   21.6) FLOATING LANGUAGE SWITCHER
   ========================================= */

@media (max-width: 767px) {
    html[lang^="ar"] .trp-language-switcher,
    html[lang^="ar"] .trp-floater-ls,
    body.rtl .trp-language-switcher,
    body.rtl .trp-floater-ls {
        max-width: 128px !important;
        transform: scale(.88) !important;
        transform-origin: bottom center !important;
    }
}
/* AR menu caret position fix */

@media (max-width: 992px) {
    html[lang^="ar"] body .col-full-nav li.menu-item-has-children,
    html[lang^="ar"] body .mobile-menu li.menu-item-has-children,
    body.rtl .col-full-nav li.menu-item-has-children,
    body.rtl .mobile-menu li.menu-item-has-children {
        position: relative !important;
    }

    html[lang^="ar"] body .col-full-nav li.menu-item-has-children > a,
    html[lang^="ar"] body .mobile-menu li.menu-item-has-children > a,
    body.rtl .col-full-nav li.menu-item-has-children > a,
    body.rtl .mobile-menu li.menu-item-has-children > a {
        display: block !important;
        width: 100% !important;
        padding-left: 42px !important;
        padding-right: 0 !important;
        direction: rtl !important;
        text-align: right !important;
    }

    html[lang^="ar"] body .col-full-nav li.menu-item-has-children > span.caret,
    html[lang^="ar"] body .mobile-menu li.menu-item-has-children > span.caret,
    body.rtl .col-full-nav li.menu-item-has-children > span.caret,
    body.rtl .mobile-menu li.menu-item-has-children > span.caret {
        display: flex !important;
        visibility: visible !important;
        opacity: 1 !important;
        position: absolute !important;
        left: 0 !important;
        right: auto !important;
        top: 0 !important;
        width: 34px !important;
        height: 34px !important;
        margin: 0 !important;
        padding: 0 !important;
        transform: none !important;
        align-items: center !important;
        justify-content: center !important;
        background: transparent !important;
        z-index: 20 !important;
        cursor: pointer !important;
    }
}
/* =========================================
   21.7) AR NAVIGATION PREMIUM SYSTEM
   Scope: Arabic / RTL navigation only
   ========================================= */

/* ---------- Shared RTL nav reset ---------- */

html[lang^="ar"] body .main-navigation,
html[lang^="ar"] body #site-navigation,
body.rtl .main-navigation,
body.rtl #site-navigation {
    direction: rtl !important;
}

html[lang^="ar"] body .main-navigation ul.menu,
html[lang^="ar"] body #site-navigation ul.menu,
body.rtl .main-navigation ul.menu,
body.rtl #site-navigation ul.menu {
    direction: rtl !important;
}

/* Stop duplicated theme pseudo arrows on links */
html[lang^="ar"] body .main-navigation li.menu-item-has-children > a::before,
html[lang^="ar"] body .main-navigation li.menu-item-has-children > a::after,
html[lang^="ar"] body #site-navigation li.menu-item-has-children > a::before,
html[lang^="ar"] body #site-navigation li.menu-item-has-children > a::after,
body.rtl .main-navigation li.menu-item-has-children > a::before,
body.rtl .main-navigation li.menu-item-has-children > a::after,
body.rtl #site-navigation li.menu-item-has-children > a::before,
body.rtl #site-navigation li.menu-item-has-children > a::after {
    display: none !important;
    content: none !important;
}

/* Real Shoptimizer caret base */
html[lang^="ar"] body .main-navigation span.caret,
html[lang^="ar"] body #site-navigation span.caret,
body.rtl .main-navigation span.caret,
body.rtl #site-navigation span.caret {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: transparent !important;
    border: 0 !important;
    color: currentColor !important;
    font-size: 0 !important;
    line-height: 1 !important;
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
    z-index: 20 !important;
}

html[lang^="ar"] body .main-navigation span.caret::after,
html[lang^="ar"] body #site-navigation span.caret::after,
body.rtl .main-navigation span.caret::after,
body.rtl #site-navigation span.caret::after {
    display: none !important;
    content: none !important;
}

html[lang^="ar"] body .main-navigation span.caret::before,
html[lang^="ar"] body #site-navigation span.caret::before,
body.rtl .main-navigation span.caret::before,
body.rtl #site-navigation span.caret::before {
    content: "" !important;
    display: block !important;
    width: 7px !important;
    height: 7px !important;
    border-right: 1.5px solid currentColor !important;
    border-bottom: 1.5px solid currentColor !important;
    transform: rotate(45deg) translateY(-2px) !important;
    background: transparent !important;
}

/* ---------- Desktop Arabic navigation ---------- */

@media (min-width: 993px) {

    html[lang^="ar"] body #site-navigation > div > ul.menu,
    html[lang^="ar"] body #site-navigation .menu-primary-menu-container > ul.menu,
    html[lang^="ar"] body .main-navigation ul.menu,
    body.rtl #site-navigation > div > ul.menu,
    body.rtl #site-navigation .menu-primary-menu-container > ul.menu,
    body.rtl .main-navigation ul.menu {
        display: flex !important;
        flex-direction: row !important;
        align-items: center !important;
        justify-content: flex-start !important;
        gap: 0 !important;
    }

    html[lang^="ar"] body .main-navigation ul.menu > li,
    html[lang^="ar"] body #site-navigation ul.menu > li,
    body.rtl .main-navigation ul.menu > li,
    body.rtl #site-navigation ul.menu > li {
        position: relative !important;
        display: flex !important;
        flex-direction: row-reverse !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 6px !important;
        margin: 0 !important;
        padding: 0 12px !important;
        width: auto !important;
        height: 48px !important;
        min-height: 48px !important;
        overflow: visible !important;
        white-space: nowrap !important;
    }

    html[lang^="ar"] body .main-navigation ul.menu > li > a,
    html[lang^="ar"] body #site-navigation ul.menu > li > a,
    body.rtl .main-navigation ul.menu > li > a,
    body.rtl #site-navigation ul.menu > li > a {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: auto !important;
        max-width: none !important;
        height: 48px !important;
        min-height: 48px !important;
        margin: 0 !important;
        padding: 0 !important;
        color: #ffffff !important;
        background: transparent !important;
        font-size: 14px !important;
        line-height: 48px !important;
        font-weight: 800 !important;
        text-align: right !important;
        direction: rtl !important;
        white-space: nowrap !important;
        text-decoration: none !important;
    }

    html[lang^="ar"] body .main-navigation ul.menu > li > a span,
    html[lang^="ar"] body #site-navigation ul.menu > li > a span,
    body.rtl .main-navigation ul.menu > li > a span,
    body.rtl #site-navigation ul.menu > li > a span {
        display: inline-block !important;
        width: auto !important;
        max-width: none !important;
        margin: 0 !important;
        padding: 0 !important;
        white-space: nowrap !important;
        line-height: inherit !important;
    }

    html[lang^="ar"] body .main-navigation ul.menu > li > span.caret,
    html[lang^="ar"] body #site-navigation ul.menu > li > span.caret,
    body.rtl .main-navigation ul.menu > li > span.caret,
    body.rtl #site-navigation ul.menu > li > span.caret {
        position: static !important;
        flex: 0 0 14px !important;
        width: 14px !important;
        min-width: 14px !important;
        height: 18px !important;
        margin: 0 !important;
        padding: 0 !important;
        color: currentColor !important;
        transform: none !important;
    }

    html[lang^="ar"] body .main-navigation ul.menu > li:hover > a,
    html[lang^="ar"] body .main-navigation ul.menu > li:hover > span.caret,
    html[lang^="ar"] body #site-navigation ul.menu > li:hover > a,
    html[lang^="ar"] body #site-navigation ul.menu > li:hover > span.caret,
    body.rtl .main-navigation ul.menu > li:hover > a,
    body.rtl .main-navigation ul.menu > li:hover > span.caret,
    body.rtl #site-navigation ul.menu > li:hover > a,
    body.rtl #site-navigation ul.menu > li:hover > span.caret {
        color: var(--retailers-orange) !important;
    }

    html[lang^="ar"] body .main-navigation ul.menu > li:not(.full-width) > .sub-menu-wrapper,
    html[lang^="ar"] body #site-navigation ul.menu > li:not(.full-width) > .sub-menu-wrapper,
    body.rtl .main-navigation ul.menu > li:not(.full-width) > .sub-menu-wrapper,
    body.rtl #site-navigation ul.menu > li:not(.full-width) > .sub-menu-wrapper {
        left: auto !important;
        right: 0 !important;
        top: calc(100% + 4px) !important;
        width: 250px !important;
        min-width: 250px !important;
        max-width: 250px !important;
        transform-origin: top right !important;
        z-index: 999999 !important;
    }

    html[lang^="ar"] body .main-navigation .sub-menu-wrapper > ul.sub-menu,
    html[lang^="ar"] body #site-navigation .sub-menu-wrapper > ul.sub-menu,
    body.rtl .main-navigation .sub-menu-wrapper > ul.sub-menu,
    body.rtl #site-navigation .sub-menu-wrapper > ul.sub-menu {
        padding: 9px 0 !important;
        background: #ffffff !important;
        border: 1px solid rgba(12, 45, 78, 0.10) !important;
        border-top: 2px solid var(--retailers-orange) !important;
        border-radius: 0 0 12px 12px !important;
        box-shadow: 0 18px 38px rgba(4, 19, 32, 0.17) !important;
        direction: rtl !important;
        text-align: right !important;
        overflow: visible !important;
    }

    html[lang^="ar"] body .main-navigation ul.sub-menu > li,
    html[lang^="ar"] body #site-navigation ul.sub-menu > li,
    body.rtl .main-navigation ul.sub-menu > li,
    body.rtl #site-navigation ul.sub-menu > li {
        position: relative !important;
        display: block !important;
        width: 100% !important;
        height: auto !important;
        margin: 0 !important;
        padding: 0 !important;
        background: transparent !important;
        overflow: visible !important;
    }

    html[lang^="ar"] body .main-navigation ul.sub-menu > li > a,
    html[lang^="ar"] body #site-navigation ul.sub-menu > li > a,
    body.rtl .main-navigation ul.sub-menu > li > a,
    body.rtl #site-navigation ul.sub-menu > li > a {
        display: block !important;
        width: 100% !important;
        height: 42px !important;
        min-height: 42px !important;
        margin: 0 !important;
        padding: 0 20px 0 44px !important;
        background: #ffffff !important;
        color: var(--retailers-menu-text) !important;
        font-size: 14px !important;
        line-height: 42px !important;
        font-weight: 750 !important;
        text-align: right !important;
        direction: rtl !important;
        white-space: nowrap !important;
        text-decoration: none !important;
        border: 0 !important;
    }

    html[lang^="ar"] body .main-navigation ul.sub-menu > li > span.caret,
    html[lang^="ar"] body #site-navigation ul.sub-menu > li > span.caret,
    body.rtl .main-navigation ul.sub-menu > li > span.caret,
    body.rtl #site-navigation ul.sub-menu > li > span.caret {
        position: absolute !important;
        left: 17px !important;
        right: auto !important;
        top: 50% !important;
        width: 14px !important;
        min-width: 14px !important;
        height: 14px !important;
        margin: 0 !important;
        padding: 0 !important;
        transform: translateY(-50%) !important;
        color: currentColor !important;
    }

    html[lang^="ar"] body .main-navigation ul.sub-menu > li > span.caret::before,
    html[lang^="ar"] body #site-navigation ul.sub-menu > li > span.caret::before,
    body.rtl .main-navigation ul.sub-menu > li > span.caret::before,
    body.rtl #site-navigation ul.sub-menu > li > span.caret::before {
        transform: rotate(135deg) !important;
    }

    html[lang^="ar"] body .main-navigation ul.sub-menu > li:hover > a,
    html[lang^="ar"] body .main-navigation ul.sub-menu > li:focus-within > a,
    html[lang^="ar"] body #site-navigation ul.sub-menu > li:hover > a,
    html[lang^="ar"] body #site-navigation ul.sub-menu > li:focus-within > a,
    body.rtl .main-navigation ul.sub-menu > li:hover > a,
    body.rtl .main-navigation ul.sub-menu > li:focus-within > a,
    body.rtl #site-navigation ul.sub-menu > li:hover > a,
    body.rtl #site-navigation ul.sub-menu > li:focus-within > a {
        background: var(--retailers-menu-soft) !important;
        color: var(--retailers-orange) !important;
    }

    html[lang^="ar"] body .main-navigation ul.sub-menu > li.menu-item-has-children > .sub-menu-wrapper,
    html[lang^="ar"] body #site-navigation ul.sub-menu > li.menu-item-has-children > .sub-menu-wrapper,
    body.rtl .main-navigation ul.sub-menu > li.menu-item-has-children > .sub-menu-wrapper,
    body.rtl #site-navigation ul.sub-menu > li.menu-item-has-children > .sub-menu-wrapper {
        left: auto !important;
        right: calc(100% - 76px) !important;
        top: -2px !important;
        width: 238px !important;
        min-width: 238px !important;
        max-width: 238px !important;
        transform-origin: top right !important;
        z-index: 1000000 !important;
    }

    html[lang^="ar"] body .main-navigation ul.sub-menu > li.menu-item-has-children > .sub-menu-wrapper::before,
    html[lang^="ar"] body #site-navigation ul.sub-menu > li.menu-item-has-children > .sub-menu-wrapper::before,
    body.rtl .main-navigation ul.sub-menu > li.menu-item-has-children > .sub-menu-wrapper::before,
    body.rtl #site-navigation ul.sub-menu > li.menu-item-has-children > .sub-menu-wrapper::before {
        content: "" !important;
        position: absolute !important;
        top: 0 !important;
        right: -76px !important;
        left: auto !important;
        width: 76px !important;
        height: 100% !important;
        display: block !important;
        background: transparent !important;
        pointer-events: auto !important;
    }
}

/* ---------- Mobile Arabic drawer ---------- */

@media (max-width: 992px) {

    html[lang^="ar"] body .col-full-nav.is_stuck .site-search,
    html[lang^="ar"] body .col-full-nav.is_stuck .site-search form,
    body.rtl .col-full-nav.is_stuck .site-search,
    body.rtl .col-full-nav.is_stuck .site-search form {
        display: block !important;
        width: 100% !important;
        margin: 0 0 18px !important;
        padding: 0 !important;
    }

    html[lang^="ar"] body .col-full-nav.is_stuck .site-search input[type="search"],
    html[lang^="ar"] body .col-full-nav.is_stuck .search-field,
    body.rtl .col-full-nav.is_stuck .site-search input[type="search"],
    body.rtl .col-full-nav.is_stuck .search-field {
        width: 100% !important;
        height: 42px !important;
        min-height: 42px !important;
        padding: 0 15px !important;
        border: 0 !important;
        border-radius: 9px !important;
        background: #f7f8fa !important;
        color: #0C2D4E !important;
        font-size: 13px !important;
        line-height: 42px !important;
        font-weight: 500 !important;
        text-align: right !important;
        direction: rtl !important;
        box-shadow: none !important;
    }

    html[lang^="ar"] body .col-full-nav.is_stuck .main-navigation,
    html[lang^="ar"] body .col-full-nav.is_stuck #site-navigation,
    body.rtl .col-full-nav.is_stuck .main-navigation,
    body.rtl .col-full-nav.is_stuck #site-navigation {
        width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
        background: transparent !important;
        direction: rtl !important;
    }

    html[lang^="ar"] body .col-full-nav.is_stuck ul.menu,
    html[lang^="ar"] body .col-full-nav.is_stuck ul.nav-menu,
    body.rtl .col-full-nav.is_stuck ul.menu,
    body.rtl .col-full-nav.is_stuck ul.nav-menu {
        display: block !important;
        width: 100% !important;
        height: auto !important;
        min-height: 0 !important;
        margin: 0 0 22px !important;
        padding: 0 !important;
        background: transparent !important;
        list-style: none !important;
        direction: rtl !important;
        overflow: visible !important;
    }

    html[lang^="ar"] body .col-full-nav.is_stuck li,
    body.rtl .col-full-nav.is_stuck li {
        position: relative !important;
        display: block !important;
        width: 100% !important;
        height: auto !important;
        min-height: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
        background: transparent !important;
        border: 0 !important;
        overflow: visible !important;
    }

    html[lang^="ar"] body .col-full-nav.is_stuck li > a,
    body.rtl .col-full-nav.is_stuck li > a {
        display: block !important;
        width: 100% !important;
        min-height: 38px !important;
        height: auto !important;
        margin: 0 !important;
        padding: 0 0 0 46px !important;
        background: transparent !important;
        color: #041320 !important;
        font-size: 14px !important;
        line-height: 38px !important;
        font-weight: 850 !important;
        text-align: right !important;
        direction: rtl !important;
        text-decoration: none !important;
        white-space: nowrap !important;
    }

    html[lang^="ar"] body .col-full-nav.is_stuck li.current-menu-item > a,
    html[lang^="ar"] body .col-full-nav.is_stuck li.current-menu-parent > a,
    html[lang^="ar"] body .col-full-nav.is_stuck li.current-menu-ancestor > a,
    body.rtl .col-full-nav.is_stuck li.current-menu-item > a,
    body.rtl .col-full-nav.is_stuck li.current-menu-parent > a,
    body.rtl .col-full-nav.is_stuck li.current-menu-ancestor > a {
        color: var(--retailers-orange) !important;
    }

    html[lang^="ar"] body .col-full-nav.is_stuck li.menu-item-has-children > span.caret,
    body.rtl .col-full-nav.is_stuck li.menu-item-has-children > span.caret {
        position: absolute !important;
        left: 6px !important;
        right: auto !important;
        top: 0 !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: 38px !important;
        min-width: 38px !important;
        height: 38px !important;
        min-height: 38px !important;
        margin: 0 !important;
        padding: 0 !important;
        color: #0C2D4E !important;
        background: transparent !important;
        border: 0 !important;
        cursor: pointer !important;
        z-index: 40 !important;
        transform: none !important;
        pointer-events: auto !important;
    }

    html[lang^="ar"] body .col-full-nav.is_stuck li.dropdown-open > span.caret,
    html[lang^="ar"] body .col-full-nav.is_stuck li[aria-expanded="true"] > span.caret,
    body.rtl .col-full-nav.is_stuck li.dropdown-open > span.caret,
    body.rtl .col-full-nav.is_stuck li[aria-expanded="true"] > span.caret {
        color: var(--retailers-orange) !important;
    }

    html[lang^="ar"] body .col-full-nav.is_stuck li.dropdown-open > span.caret::before,
    html[lang^="ar"] body .col-full-nav.is_stuck li[aria-expanded="true"] > span.caret::before,
    body.rtl .col-full-nav.is_stuck li.dropdown-open > span.caret::before,
    body.rtl .col-full-nav.is_stuck li[aria-expanded="true"] > span.caret::before {
        transform: rotate(225deg) translateY(-2px) !important;
    }

    html[lang^="ar"] body .col-full-nav.is_stuck li.menu-item-has-children > .sub-menu-wrapper,
    html[lang^="ar"] body .col-full-nav.is_stuck li.menu-item-has-children > ul.sub-menu,
    body.rtl .col-full-nav.is_stuck li.menu-item-has-children > .sub-menu-wrapper,
    body.rtl .col-full-nav.is_stuck li.menu-item-has-children > ul.sub-menu {
        display: none !important;
        position: static !important;
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
        height: auto !important;
        min-height: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
        background: transparent !important;
        border: 0 !important;
        box-shadow: none !important;
        opacity: 1 !important;
        visibility: visible !important;
        transform: none !important;
        pointer-events: auto !important;
    }

    html[lang^="ar"] body .col-full-nav.is_stuck li.dropdown-open > .sub-menu-wrapper,
    html[lang^="ar"] body .col-full-nav.is_stuck li[aria-expanded="true"] > .sub-menu-wrapper,
    html[lang^="ar"] body .col-full-nav.is_stuck li.dropdown-open > ul.sub-menu,
    html[lang^="ar"] body .col-full-nav.is_stuck li[aria-expanded="true"] > ul.sub-menu,
    body.rtl .col-full-nav.is_stuck li.dropdown-open > .sub-menu-wrapper,
    body.rtl .col-full-nav.is_stuck li[aria-expanded="true"] > .sub-menu-wrapper,
    body.rtl .col-full-nav.is_stuck li.dropdown-open > ul.sub-menu,
    body.rtl .col-full-nav.is_stuck li[aria-expanded="true"] > ul.sub-menu {
        display: block !important;
    }

    html[lang^="ar"] body .col-full-nav.is_stuck .sub-menu-wrapper > ul.sub-menu,
    html[lang^="ar"] body .col-full-nav.is_stuck ul.sub-menu,
    body.rtl .col-full-nav.is_stuck .sub-menu-wrapper > ul.sub-menu,
    body.rtl .col-full-nav.is_stuck ul.sub-menu {
        width: 100% !important;
        margin: 4px 0 12px !important;
        padding: 9px 12px !important;
        background: #f8fafc !important;
        border: 1px solid rgba(12, 45, 78, 0.07) !important;
        border-radius: 13px !important;
        box-shadow: inset 0 1px 0 rgba(255,255,255,0.85) !important;
        direction: rtl !important;
        text-align: right !important;
    }

    html[lang^="ar"] body .col-full-nav.is_stuck ul.sub-menu > li > a,
    body.rtl .col-full-nav.is_stuck ul.sub-menu > li > a {
        min-height: 35px !important;
        padding: 0 0 0 42px !important;
        color: #0C2D4E !important;
        background: transparent !important;
        font-size: 13px !important;
        line-height: 35px !important;
        font-weight: 750 !important;
        text-align: right !important;
        direction: rtl !important;
        border-bottom: 1px solid rgba(12, 45, 78, 0.055) !important;
    }

    html[lang^="ar"] body .col-full-nav.is_stuck ul.sub-menu > li:last-child > a,
    body.rtl .col-full-nav.is_stuck ul.sub-menu > li:last-child > a {
        border-bottom: 0 !important;
    }

    html[lang^="ar"] body .col-full-nav.is_stuck ul.sub-menu ul.sub-menu,
    body.rtl .col-full-nav.is_stuck ul.sub-menu ul.sub-menu {
        margin: 5px 0 8px !important;
        padding: 8px 10px !important;
        background: #ffffff !important;
        border: 1px solid rgba(231, 140, 7, 0.16) !important;
        border-radius: 12px !important;
    }

    html[lang^="ar"] body .col-full-nav.is_stuck ul.sub-menu ul.sub-menu > li > a,
    body.rtl .col-full-nav.is_stuck ul.sub-menu ul.sub-menu > li > a {
        font-size: 12.5px !important;
        line-height: 33px !important;
        min-height: 33px !important;
        font-weight: 700 !important;
    }

    html[lang^="ar"] body .col-full-nav.is_stuck li:hover > a,
    html[lang^="ar"] body .col-full-nav.is_stuck li:focus-within > a,
    body.rtl .col-full-nav.is_stuck li:hover > a,
    body.rtl .col-full-nav.is_stuck li:focus-within > a {
        color: var(--retailers-orange) !important;
        background: transparent !important;
    }

    html[lang^="ar"] body .col-full-nav.is_stuck .widget,
    html[lang^="ar"] body .col-full-nav.is_stuck section,
    html[lang^="ar"] body .col-full-nav.is_stuck .shoptimizer-custom-menu-item,
    body.rtl .col-full-nav.is_stuck .widget,
    body.rtl .col-full-nav.is_stuck section,
    body.rtl .col-full-nav.is_stuck .shoptimizer-custom-menu-item {
        margin-top: 12px !important;
        margin-bottom: 12px !important;
        padding-top: 0 !important;
        padding-bottom: 0 !important;
    }

    html[lang^="ar"] body .col-full-nav.is_stuck h2,
    html[lang^="ar"] body .col-full-nav.is_stuck h3,
    html[lang^="ar"] body .col-full-nav.is_stuck .widget-title,
    body.rtl .col-full-nav.is_stuck h2,
    body.rtl .col-full-nav.is_stuck h3,
    body.rtl .col-full-nav.is_stuck .widget-title {
        margin: 18px 0 8px !important;
        padding: 0 !important;
        color: #8a8f96 !important;
        font-size: 18px !important;
        line-height: 1.25 !important;
        font-weight: 600 !important;
        text-align: right !important;
    }
}/* =========================================
   21.7.1) AR MOBILE DRAWER OPEN STATE FIX
   ========================================= */

@media (max-width: 992px) {

    html[lang^="ar"] body .col-full-nav.is_stuck,
    body.rtl .col-full-nav.is_stuck {
        width: 80vw !important;
        max-width: 330px !important;
        min-width: 292px !important;
        left: 0 !important;
        right: auto !important;
        background: #ffffff !important;
        border-right: 1px solid rgba(12, 45, 78, 0.08) !important;
        box-shadow: 18px 0 42px rgba(4, 19, 32, 0.18) !important;
        overflow-y: auto !important;
        overflow-x: hidden !important;
        -webkit-overflow-scrolling: touch !important;
        transform: translateX(-105%) !important;
        opacity: 0 !important;
        visibility: hidden !important;
        pointer-events: none !important;
        transition: transform 0.28s ease, opacity 0.22s ease, visibility 0.22s ease !important;
    }

    html[lang^="ar"] body.drawer-open .col-full-nav.is_stuck,
    html[lang^="ar"] body.mobile-menu-open .col-full-nav.is_stuck,
    html[lang^="ar"] body.menu-open .col-full-nav.is_stuck,
    html[lang^="ar"] body.offcanvas-open .col-full-nav.is_stuck,
    html[lang^="ar"] body.active-mobile-menu .col-full-nav.is_stuck,
    body.rtl.drawer-open .col-full-nav.is_stuck,
    body.rtl.mobile-menu-open .col-full-nav.is_stuck,
    body.rtl.menu-open .col-full-nav.is_stuck,
    body.rtl.offcanvas-open .col-full-nav.is_stuck,
    body.rtl.active-mobile-menu .col-full-nav.is_stuck,
    html[lang^="ar"] body .col-full-nav.is_stuck.active,
    html[lang^="ar"] body .col-full-nav.is_stuck.open,
    html[lang^="ar"] body .col-full-nav.is_stuck.toggled,
    html[lang^="ar"] body .col-full-nav.is_stuck.is-active,
    body.rtl .col-full-nav.is_stuck.active,
    body.rtl .col-full-nav.is_stuck.open,
    body.rtl .col-full-nav.is_stuck.toggled,
    body.rtl .col-full-nav.is_stuck.is-active {
        transform: translateX(0) !important;
        opacity: 1 !important;
        visibility: visible !important;
        pointer-events: auto !important;
    }

    html[lang^="ar"] body .mobile-overlay,
    body.rtl .mobile-overlay {
        opacity: 0 !important;
        visibility: hidden !important;
        pointer-events: none !important;
        background: rgba(4, 19, 32, 0.46) !important;
        transition: opacity 0.22s ease, visibility 0.22s ease !important;
    }

    html[lang^="ar"] body.drawer-open .mobile-overlay,
    html[lang^="ar"] body.mobile-menu-open .mobile-overlay,
    html[lang^="ar"] body.menu-open .mobile-overlay,
    html[lang^="ar"] body.offcanvas-open .mobile-overlay,
    html[lang^="ar"] body.active-mobile-menu .mobile-overlay,
    body.rtl.drawer-open .mobile-overlay,
    body.rtl.mobile-menu-open .mobile-overlay,
    body.rtl.menu-open .mobile-overlay,
    body.rtl.offcanvas-open .mobile-overlay,
    body.rtl.active-mobile-menu .mobile-overlay,
    html[lang^="ar"] body .mobile-overlay.active,
    html[lang^="ar"] body .mobile-overlay.open,
    html[lang^="ar"] body .mobile-overlay.is-active,
    body.rtl .mobile-overlay.active,
    body.rtl .mobile-overlay.open,
    body.rtl .mobile-overlay.is-active {
        opacity: 1 !important;
        visibility: visible !important;
        pointer-events: auto !important;
    }
}/* =========================================
   21.7.2) AR MOBILE DRAWER TOGGLE STATE FIX
   ========================================= */

@media (max-width: 992px) {

    html[lang^="ar"] body.mobile-toggled .col-full-nav.is_stuck,
    body.rtl.mobile-toggled .col-full-nav.is_stuck {
        transform: translateX(0) !important;
        opacity: 1 !important;
        visibility: visible !important;
        pointer-events: auto !important;
    }

    html[lang^="ar"] body.mobile-toggled .mobile-overlay,
    body.rtl.mobile-toggled .mobile-overlay {
        opacity: 1 !important;
        visibility: visible !important;
        pointer-events: auto !important;
    }
}/* =========================================
   21.7.3) AR MOBILE DRAWER CLOSE BUTTON
   ========================================= */

@media (max-width: 992px) {

    html[lang^="ar"] body .close-drawer,
    body.rtl .close-drawer {
        display: none !important;
    }

    html[lang^="ar"] body.mobile-toggled .close-drawer,
    body.rtl.mobile-toggled .close-drawer {
        display: flex !important;
        position: fixed !important;

        top: 106px !important;
        left: 18px !important;
        right: auto !important;

        width: 34px !important;
        height: 34px !important;
        align-items: center !important;
        justify-content: center !important;

        background: #ffffff !important;
        border: 1px solid rgba(12, 45, 78, 0.10) !important;
        border-radius: 999px !important;
        box-shadow: 0 8px 20px rgba(4, 19, 32, 0.13) !important;

        color: #041320 !important;
        font-size: 0 !important;
        line-height: 1 !important;

        z-index: 9999999 !important;
        cursor: pointer !important;
        opacity: 1 !important;
        visibility: visible !important;
        pointer-events: auto !important;
    }

    html[lang^="ar"] body.admin-bar.mobile-toggled .close-drawer,
    body.rtl.admin-bar.mobile-toggled .close-drawer {
        top: 106px !important;
    }

    html[lang^="ar"] body.mobile-toggled .close-drawer::before,
    html[lang^="ar"] body.mobile-toggled .close-drawer::after,
    body.rtl.mobile-toggled .close-drawer::before,
    body.rtl.mobile-toggled .close-drawer::after {
        content: "" !important;
        position: absolute !important;
        width: 15px !important;
        height: 2px !important;
        background: #041320 !important;
        border-radius: 999px !important;
        display: block !important;
    }

    html[lang^="ar"] body.mobile-toggled .close-drawer::before,
    body.rtl.mobile-toggled .close-drawer::before {
        transform: rotate(45deg) !important;
    }

    html[lang^="ar"] body.mobile-toggled .close-drawer::after,
    body.rtl.mobile-toggled .close-drawer::after {
        transform: rotate(-45deg) !important;
    }

    html[lang^="ar"] body.mobile-toggled .close-drawer:hover,
    body.rtl.mobile-toggled .close-drawer:hover {
        border-color: rgba(231, 140, 7, 0.35) !important;
    }

    html[lang^="ar"] body.mobile-toggled .close-drawer:hover::before,
    html[lang^="ar"] body.mobile-toggled .close-drawer:hover::after,
    body.rtl.mobile-toggled .close-drawer:hover::before,
    body.rtl.mobile-toggled .close-drawer:hover::after {
        background: var(--retailers-orange) !important;
    }
}/* RFU - General WooCommerce button color replacement */
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit,
.woocommerce a.added_to_cart,
.single-product .single_add_to_cart_button {
    background: #061725 !important;
    color: #ffffff !important;
    border: 1px solid #061725 !important;
    border-radius: 8px !important;
    font-weight: 700 !important;
    transition: background .2s ease, border-color .2s ease, color .2s ease !important;
}

.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
.woocommerce #respond input#submit:hover,
.woocommerce a.added_to_cart:hover,
.single-product .single_add_to_cart_button:hover {
    background: #E78C07 !important;
    border-color: #E78C07 !important;
    color: #ffffff !important;
}