/* ===========================
   Mobile Header Toggle
=========================== */

.mobile-menu-toggle{
    display:none;
}

.mobile-menu-toggle{
    width:44px;
    height:44px;
    border:0;
    background:none;
    cursor:pointer;
    padding:0;
}

.mobile-menu-toggle span{
    display:block;
    width:18px;
    height:2px;
    margin:3px auto;
    background:#16214a;
    border-radius:2px;
}

@media (max-width:991px){

    .mobile-menu-toggle{
        display:flex;
        flex-direction:column;
        justify-content:center;
        align-items:center;
        flex-shrink:0;
    }
.site-header{
        padding: 0;
        height: 70px;
}

.site-header .container{
    display:flex;
    align-items:center;padding: 5px 20px;
    gap:8px;
}

.header-logo{
    order:1;
    margin:0 auto;
}

.mobile-menu-toggle{
    order:3;
    margin-right:0;
    margin-left:12px;
}

.header-actions{
    order:2;
}
.header-search{
    display:block;
    width:100%;
    order:3;
    margin-top:14px;
}

.header-search form{
    height:46px;
}

.search-category{
    display:none;
}

.header-search button{
    width:52px;
}

.header-actions{
    display:flex;
    align-items:center;
    gap:12px;
    order:2;
}

.header-account,
.create-store-btn,
.header-icon:first-of-type{
    display:none;
}

.header-cart{
    gap:0;
}

.cart-total{
    display:none;
}

.header-cart img,
.header-icon img{
    width:22px;
    height:22px;
}
.topbar .container{
    padding:0 5px;
}

.topbar-left{
    display:flex;
    align-items:center;
    gap:0;
    flex-wrap:nowrap;
}

.topbar-left > *{
    margin:0 !important;
    padding:0 4px !important;
}

.topbar-left > *:not(:last-child)::after{
    display:block !important;
}

.topbar-right{
    white-space:nowrap;
    flex-shrink:0;
}
}

html,
body{
    width:100%;
    overflow-x:hidden;
}

.site-header,
.topbar,
.hero,
.container{
       max-width: 1400px;
    margin: 0 auto;
}
@media (max-width:991px){

    .topbar .container{
        height:auto;
        min-height:42px;
        display:flex;
        align-items:center;
        justify-content:space-between;
        flex-wrap:nowrap;
    }

    .topbar-right,
    .topbar-left{
        display:flex;
        align-items:center;
    }

    .topbar-left>*,
    .topbar-right>*{
        margin:0;
        padding:0;
    }

    .topbar-left>*::after,
    .topbar-right>*::after,
    .topbar-left>*::before,
    .topbar-right>*::before{
        display:none;
    }

    .topbar{
        font-size:12px;
    }
/* ===========================
   Hero Mobile
=========================== */

.hero{
    margin:12px;
}

.hero-box{
    min-height:250px;
    padding:25px;
    justify-content:flex-start;
    align-items:flex-end;
    border-radius:20px;
}

.hero-content{
    width:100%;
    margin:0;
    padding:0;
    text-align:center;
}

.hero-content h1{
    font-size:34px;
    line-height:1.25;
}

.hero-content p{
    font-size:15px;
    line-height:1.8;
    margin:18px 0 24px;
}


.hero-buttons{
    position:absolute;
    left:50%;
    bottom:55px;
    transform:translateX(-50%);
    display:flex;
    flex-direction:row;
    justify-content:center;
    align-items:center;
    gap:12px;
    width:auto;
    flex-wrap:nowrap;
}





.hero-btn{
    width:150px;
    flex:none;
    height:43px;
    padding:0;
    font-size:14px;
}

.hero-dots{
    left:50%;
    transform:translateX(-50%);
    bottom:16px;
}

.hero-features{
    grid-template-columns:repeat(2,1fr);
    margin-top:15px;
}

.hero-feature{
padding: 18px 12px;
        text-align: center;
        flex-direction: column;
        gap: 10px;
        border: 1px solid #e6e6e6;
        margin: 2px;border-radius: 15px;
}

.hero-feature::after{
    display:none;
}

.hero-feature img{
    width:34px;
    height:34px;
}

.hero-feature strong{
    font-size:15px;
    margin-bottom:4px;
}

.hero-feature span{
    font-size:13px;
}
.header-logo img{
    height:52px;
}
}
@media (max-width:768px){

    .hero-box{

        background-position:20% center;

    }

}
/* ===========================
   Stores Mobile
=========================== */

@media (max-width:991px){

    .stores-badge{

        width:100%;
        min-height:56px;
        padding:12px 18px;
        border-radius:30px;

    }

    .stores-badge img{

        width:22px;
        height:22px;

    }

}
/*==================================
  Products Mobile
==================================*/

.sspro-mobile{
    display:none;
}

@media (max-width:768px){

    .products-desktop{
        display:none;
    }

    .sspro-mobile{
        display:block;
    }

}
/*==================================
  Products Mobile Slider
==================================*/

@media (max-width:768px){

.sspro-mobile{

    display:block;

    margin:20px 12px 0;

}
.sspro-mobile .products-message {
    margin: 0 10px 0 10px;
    width: 100%;
    padding: 0 15px 0 15px;
    font-size: 13px;
}
    .sspro-slider{
        width:100%;
        overflow:hidden;
        position:relative;
    }

    .sspro-track{
        display:flex;
        transition:.35s ease;
        will-change:transform;
    }

    .sspro-page{
        min-width:100%;
        display:grid;
        grid-template-columns:repeat(2,1fr);
        gap:12px;
        flex-shrink:0;
    }

.sspro-card{

    position:relative;

    display:flex;

    flex-direction:column;
text-align:center;
    background:#fff;

    border-radius:18px;

    padding:12px;

    box-sizing:border-box;

    box-shadow:0 6px 18px rgba(0,0,0,.08);

    height:100%;

}
.sspro-top{

    display:flex;

    justify-content:space-between;

    align-items:center;

    margin-bottom:10px;

}

.sspro-badge{

    font-size:11px;

    padding:4px 8px;

    border-radius:8px;

}

.sspro-wishlist{

    width:32px;

    height:32px;

    border:none;

    background:#fff;

    border-radius:8px;

    display:flex;

    align-items:center;

    justify-content:center;

    cursor:pointer;

}

.sspro-wishlist img{

    width:18px;

}

.sspro-image-box{

    display:flex;

    justify-content:center;

    align-items:center;

    height:145px;

    margin-bottom:12px;

}

.sspro-image{

    max-width:110%;

    max-height:135px;

    object-fit:contain;

}

.sspro-title{

    font-size:14px;

    font-weight:700;

    line-height:1.4;

    margin:0 0 8px;

}

.sspro-rating{

    display:flex;

    align-items:center;

    gap:6px;

    font-size:12px;

}

.sspro-rating img{

    width:14px;

}

.sspro-price{

    font-size:18px;

    font-weight:700;

    color:#111;

}

.sspro-old-price{

    font-size:13px;

    color:#888;

    text-decoration:line-through;

    margin-top:4px;

    margin-bottom:10px;

}

.sspro-cart{

    margin-top:auto;

    width:36px;

    height:36px;

    border:none;

    border-radius:12px;

    background:#f5a623;

    cursor:pointer;

    display:flex;

    justify-content:center;

    align-items:center;

    flex-shrink:0;

}

.sspro-cart img{

    width:17px;

    filter:brightness(0) invert(1);

}
.sspro-bottom{

    margin-top:auto;

    display:flex;

    justify-content:space-between;

    align-items:center;

    gap:10px;

}

.sspro-cart{

    margin-top:0;

    flex-shrink:0;

}
/*==================================
  Products Slider Controls
==================================*/

.sspro-controls{

    display:flex;

    align-items:center;

    justify-content:center;

    gap:18px;

    margin-top:20px;

}

.sspro-nav{

    width:42px;

    height:42px;

    border:none;

    border-radius:50%;

    background:#ffffff;

    box-shadow:0 4px 12px rgba(0,0,0,.08);

    display:flex;

    align-items:center;

    justify-content:center;

    cursor:pointer;

    transition:.25s;

}

.sspro-nav:hover{

    background:#16214a;

}

.sspro-nav img{

    width:18px;

    transition:.25s;

}

.sspro-nav:hover img{

    filter:brightness(0) invert(1);

}

.sspro-pagination{

    display:flex;

    align-items:center;

    gap:8px;

}

.sspro-pagination span{

    width:9px;

    height:9px;

    border-radius:50%;

    background:#d7dbe7;

    transition:.25s;

}

.sspro-pagination span.active{

    width:24px;

    border-radius:20px;

    background:#f5a623;

}
}
/* ==================================================
   Newsletter + Footer Mobile
   ================================================== */

@media (max-width:768px){

    /* ---------- Newsletter ---------- */

    .newsletter{
        margin:18px 12px;
    }

    .newsletter .container{
        display:flex;
        flex-direction:column;
        align-items:center;
        gap:22px;
        padding:24px 18px;
        border-radius:20px;
    }

    .newsletter-left{
        width:100%;
        display:flex;
        flex-direction:column;
        justify-content:center;
        align-items:center;
        text-align:center;
        gap:14px;
    }

    .newsletter-icon img{
        width:60px;
        height:60px;
    }

    .newsletter-content h3{
        font-size:22px;
        line-height:1.4;
        margin:0;
    }

    .newsletter-content p{
        margin-top:8px;
        font-size:15px;
    }

    .newsletter-center{
        width:100%;
        max-width:none;
        flex:none;
    }

    .newsletter-form{
        display:flex;
        flex-direction:column;
        gap:12px;
        background:none;
        overflow:visible;
    }

    .newsletter-form input{
        width:100%;
        height:52px;
        border-radius:12px;padding:7px;
        text-align:right;
        box-sizing:border-box;
    }

    .newsletter-form button{
        width:100%;
        height:52px;
        border-radius:12px;
    }

    .newsletter-right{
        width:100%;
        display:flex;
        flex-direction:column;
        gap:14px;
    }

    .newsletter-feature{
        width:100%;
        justify-content:flex-start;
        padding:14px 16px;
        background:rgba(255,255,255,.08);
        border-radius:12px;
        box-sizing:border-box;
    }


    /* ---------- Footer ---------- */

    .footer .container{
        padding:35px 20px;
    }

    .footer-grid{
        display:grid;
        grid-template-columns:1fr;
        gap:30px;
    }

    .footer-column{
        text-align:center;
        padding-bottom:26px;
        border-bottom:1px solid rgba(255,255,255,.08);
    }

    .footer-column:last-child{
        border-bottom:none;
        padding-bottom:0;
    }

    .footer-column::after{
        display:none !important;
    }

    .footer-logo{
        display:block;
        margin:0 auto 24px;
    }

    .footer-contact li{
        justify-content:center;
    }

    .footer-column h4{
        margin-bottom:18px;
    }

    .footer-social{
        justify-content:center;
    }


    /* ---------- Footer Bottom ---------- */

    .footer-bottom .container{
        display:flex;
        flex-direction:column;
        justify-content:center;
        align-items:center;
        gap:18px;
        padding:20px 15px 28px;
    }

    .footer-payments{
        margin:0;
    }

    .footer-copy{
        position:static;
        transform:none;
        order:2;
        text-align:center;
    }

    .back-top{
        left:18px;
        bottom:18px;
    }
.footer-column ul{
    list-style:none;
    padding:0;
}

.footer-column li{
    position:relative;
    margin-bottom:10px;
    padding-right:12px;
    line-height:1.8;
}

.footer-column:not(.footer-brand) li{
    display:flex;
    justify-content:center;
    align-items:center;
    gap:8px;
    margin-bottom:10px;
    line-height:1.8;
    text-align:center;
    padding:0;
}

.footer-column:not(.footer-brand) li::before{
    content:"";
    flex:0 0 6px;
    width:6px;
    height:6px;
    border-radius:50%;
    background:#f6a800;
    display:inline-block;
    transform:translateY(1px);
}

}
/* ==========================================
   SmartShop Products - Desktop / Mobile Fix
   ========================================== */

.products-mobile {
    display: none;
}

@media (max-width: 768px) {

    .products-desktop {
        display: none;
    }

    .products-mobile {
        display: block;
    }

}


/* ============================================================
   SMARTSHOP MOBILE RESPONSIVE — PHASE 1
   Sections: HERO + LATEST STORES
   Keep this block at the end of responsive.css.
   It intentionally overrides only mobile/tablet values for
   these two sections. Desktop rules remain untouched.
   ============================================================ */

/* ---------------------------
   HERO — Mobile / Tablet
--------------------------- */
@media (max-width: 768px){

    .hero{
        width:100%;
        max-width:100%;
        margin:10px 0 14px;
    }

    .hero .container{
        width:100%;
        max-width:100%;
        margin:0;
    }

    .hero-slider{
        width:100%;
        height:320px;
        min-height:320px;
        max-height:320px;
        overflow:hidden;
        position:relative;
        background:#11224d;
    }

    .hero-box{
        width:100%;
        height:100%;
        min-height:0;
        max-height:none;
        box-sizing:border-box;
        padding:0 18px;
        border-radius:0;
        overflow:hidden;
        position:relative;
    }

    .hero-slide{
        position:absolute;
        inset:0;
        width:100%;
        height:100%;
        min-height:0;
    }

    .hero-slide.active{
        position:relative;
        width:100%;
        height:100%;
    }

    .hero-content{
        position:absolute;
        left:18px;
        right:18px;
        bottom:52px;
        width:auto;
        max-width:calc(100% - 36px);
        margin:0;
        padding:0;
        z-index:3;
        text-align:center;
        box-sizing:border-box;
    }

    .hero-content h1{
        font-size:25px;
        line-height:1.25;
        margin:0;
    }

    .hero-content h1 span{
        font-size:19px;
        line-height:1.35;
    }

    .hero-content p{
        margin:10px 0 15px;
        font-size:12.5px;
        line-height:1.7;
    }

    .hero-buttons{
        position:static;
        left:auto;
        bottom:auto;
        transform:none;
        display:flex;
        justify-content:center;
        align-items:center;
        gap:8px;
        width:100%;
        flex-wrap:nowrap;
    }

    .hero-btn{
        width:auto;
        min-width:112px;
        height:40px;
        flex:0 1 auto;
        padding:0 13px;
        font-size:12px;
        gap:7px;
        box-sizing:border-box;
    }

    .hero-btn img{
        width:16px;
        height:16px;
    }

    .hero-dots{
        left:18px;
        bottom:13px;
        transform:none;
        gap:7px;
    }

    .hero-dots span{
        width:8px;
        height:8px;
    }

    .hero-arrow{
        width:40px;
        height:40px;
        top:50%;
    }

    .hero-prev{
        right:10px;
    }

    .hero-next{
        left:10px;
    }

    .hero-arrow img{
        width:14px;
        height:14px;
    }

    .hero-features{
        grid-template-columns:repeat(2,1fr);
        margin:10px 10px 0;
        border-radius:14px;
    }

    .hero-feature{
        min-width:0;
        padding:15px 8px;
        gap:7px;
        text-align:center;
        flex-direction:column;
        border:1px solid #e6e6e6;
        margin:2px;
        border-radius:13px;
        box-sizing:border-box;
    }

    .hero-feature::after{
        display:none;
    }

    .hero-feature img{
        width:30px;
        height:30px;
    }

    .hero-feature strong{
        font-size:13px;
        line-height:1.35;
        margin-bottom:2px;
    }

    .hero-feature span{
        font-size:11px;
        line-height:1.5;
    }
}

@media (max-width: 420px){

    .hero-slider{
        height:300px;
        min-height:300px;
        max-height:300px;
    }

    .hero-content{
        left:14px;
        right:14px;
        bottom:48px;
        max-width:calc(100% - 28px);
    }

    .hero-content h1{
        font-size:22px;
    }

    .hero-content h1 span{
        font-size:17px;
    }

    .hero-content p{
        font-size:11.5px;
        line-height:1.6;
        margin:8px 0 12px;
    }

    .hero-btn{
        min-width:104px;
        height:38px;
        padding:0 10px;
        font-size:11.5px;
    }

    .hero-arrow{
        width:36px;
        height:36px;
    }

    .hero-features{
        margin-inline:8px;
    }

    .hero-feature{
        padding:13px 6px;
    }
}

/* ---------------------------
   LATEST STORES — Mobile
--------------------------- */
@media (max-width: 768px){

    .stores{
        padding:14px 0 0px;
        width:100%;
        overflow:hidden;
    }

    .stores .container{
        width:100%;
        max-width:100%;
        margin:0;
        box-sizing:border-box;
    }

    .stores .section-header{
        display:grid;
        grid-template-columns:minmax(0,1fr) auto;
        gap:10px;
        align-items:center;
        margin:0 10px 14px;
    }

    .stores .section-header h2{
        min-width:0;
        font-size:23px;
        line-height:1.25;
    }

    .stores .stores-badge{
        grid-column:1 / -1;
        width:100%;
        min-width:0;
        min-height:0;
        box-sizing:border-box;
        padding:9px 12px;
        border-radius:22px;
        font-size:11px;
        line-height:1.45;
        text-align:center;
    }

    .stores .stores-badge img{
        width:17px;
        height:17px;
        flex-shrink:0;
    }

    .stores .view-all{
        width:auto;
        min-width:0;
        height:36px;
        padding:0 11px;
        font-size:11px;
        white-space:nowrap;
        box-sizing:border-box;
    }

    .stores-grid{
        display:grid;
        grid-template-columns:repeat(2,minmax(0,1fr));
        gap:9px;
        width:auto;
        margin:0 9px;
        box-sizing:border-box;
    }

    .store-card{
        min-width:0;
        border-radius:14px;
        box-shadow:0 5px 16px rgba(15,23,42,.06);
    }

    .store-cover{
        width:100%;
        height:96px;
    }

    .store-cover img{
        width:100%;
        height:96px;
        object-fit:cover;
    }

    .store-body{
        min-width:0;
        padding:10px;
        box-sizing:border-box;
    }

    .store-header{
        gap:7px;
        margin-top:-48px;
        min-width:0;
    }

    .store-logo{
        flex:0 0 56px;
        width:56px;
        height:56px;
    }

    .store-logo img{
        width:56px;
        height:56px;
        border-width:3px;
        padding:5px;
        box-sizing:border-box;
        box-shadow:0 5px 14px rgba(0,0,0,.10);
    }

    .store-info{
        min-width:0;
        padding-top:25px;
    }

    .store-title{
        gap:4px;
        margin:0 0 6px;
        min-width:0;
    }

    .store-title h3{
        min-width:0;
        font-size:12px;
        line-height:1.3;
    }

    .store-title .verified{
        width:14px;
        height:14px;
    }

    .store-description{
        min-height:42px;
        font-size:10.5px;
        line-height:1.5;
        overflow:hidden;
    }

    .store-footer{
        display:grid;
        grid-template-columns:minmax(0,1fr) auto;
        grid-template-rows:auto auto;
        column-gap:6px;
        row-gap:4px;
        margin-top:7px;
        align-items:center;
    }

    .store-location{
        grid-column:1;
        grid-row:1;
        min-width:0;
        gap:4px;
        font-size:10px;
        justify-self:start;
    }

    .location-icon{
        font-size:11px;
    }

    .location-text{
        min-width:0;
        overflow:hidden;
        text-overflow:ellipsis;
        white-space:nowrap;
    }

    .store-rating{
        grid-column:1;
        grid-row:2;
        justify-self:start;
        gap:3px;
        font-size:10px;
    }

    .store-rating img{
        width:12px;
        height:12px;
    }

    .store-offers-btn{
        grid-column:2;
        grid-row:1 / span 2;
        min-width:70px;
        width:auto;
        height:31px;
        padding:0 7px;
        border-radius:7px;
        font-size:10px;
        white-space:nowrap;
        box-sizing:border-box;
    }
}

@media (max-width: 380px){

    .stores .section-header{
        margin-inline:8px;
        gap:7px;
    }

    .stores .section-header h2{
        font-size:21px;
    }

    .stores .view-all{
        height:34px;
        padding:0 9px;
        font-size:10px;
    }

    .stores-grid{
        gap:7px;
        margin-inline:7px;
    }

    .store-body{
        padding:8px;
    }

    .store-logo,
    .store-logo img{
        width:52px;
        height:52px;
    }

    .store-logo{
        flex-basis:52px;
    }

    .store-header{
        margin-top:-45px;
    }

    .store-info{
        padding-top:22px;
    }

    .store-title h3{
        font-size:11px;
    }

    .store-description{
        font-size:10px;
    }

    .store-offers-btn{
        min-width:64px;
        font-size:9.5px;
    }
}


/* ============================================================
   SMARTSHOP MOBILE — PHASE 2
   HERO GLOW + LATEST PRODUCTS MOBILE SLIDER
   Appended overrides only. Existing desktop rules are untouched.
   ============================================================ */

@media (max-width:768px){

    /* HERO: reduce background glow without dimming the text/buttons */
    .hero-box,
    .hero-slide{
        background-color:rgba(0,0,0,.10);
        background-blend-mode:multiply;
    }

    .hero-content,
    .hero-arrow,
    .hero-dots{
        position:absolute;
        z-index:4;
    }

    /* LATEST PRODUCTS: exactly 2 products per mobile slide row */
    .sspro-mobile{
        width:100%;
        box-sizing:border-box;
        overflow:hidden;
    }

    .sspro-mobile .sspro-slider{
        width:100%;
        overflow:hidden;
        touch-action:pan-y;
    }

    .sspro-mobile .sspro-track{
        display:flex;
        width:100%;
        transition:transform .35s ease;
        will-change:transform;
    }

    .sspro-mobile .sspro-page{
        flex:0 0 100%;
        min-width:100%;
        width:100%;
        display:grid;
        grid-template-columns:repeat(2,minmax(0,1fr));
        gap:10px;
        box-sizing:border-box;
    }

    .sspro-mobile .sspro-card{
        min-width:0;
        width:100%;
        box-sizing:border-box;
        overflow:hidden;
    }

    .sspro-mobile .sspro-image-box{
        min-width:0;
    }

    .sspro-mobile .sspro-image{
        max-width:100%;
        object-fit:contain;
    }

    .sspro-mobile .sspro-controls{
        display:flex;
        align-items:center;
        justify-content:center;
        gap:14px;
    }
}

@media (max-width:420px){

    .sspro-mobile .sspro-page{
        gap:8px;
    }

    .sspro-mobile .sspro-card{
        padding:9px;
        border-radius:15px;
    }

    .sspro-mobile .sspro-image-box{
        height:125px;
        margin-bottom:9px;
    }

    .sspro-mobile .sspro-image{
        max-height:118px;
    }

    .sspro-mobile .sspro-title{
        font-size:13px;
    }

    .sspro-mobile .sspro-price{
        font-size:16px;
    }
}

/* ============================================================
   SMARTSHOP — LATEST PRODUCTS / MOBILE TWO-COLUMN OVERRIDE
   Safe final override: layout only, no slider/display changes.
   ============================================================ */

@media (max-width:768px){

    /* Native mobile products slider */
    .sspro-mobile .sspro-page{
        display:grid !important;
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
        gap:10px !important;
        width:100%;
        min-width:100%;
        box-sizing:border-box;
    }

    /* Fallback for the products-grid markup */
    .products-mobile .products-grid{
        display:grid !important;
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
        gap:10px !important;
        width:100%;
        box-sizing:border-box;
    }

    .sspro-mobile .sspro-card,
    .products-mobile .product-card{
        min-width:0;
        width:100%;
        box-sizing:border-box;
    }
}

@media (max-width:420px){

    .sspro-mobile .sspro-page,
    .products-mobile .products-grid{
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
        gap:8px !important;
    }

}

/* ============================================================
   SMARTSHOP — LATEST PRODUCTS / MOBILE POLISH
   Mobile-only. Desktop layout and source files are untouched.
   ============================================================ */
@media (max-width:768px){

    .products-mobile{
        width:100%;
        overflow:hidden;
        padding:18px 0 24px;
        box-sizing:border-box;
    }

    .products-mobile .container{
        width:100%;
        max-width:100%;
        margin:0;
        padding:0 12px;
        box-sizing:border-box;
    }

    .products-mobile-header{
        display:grid;
        grid-template-columns:minmax(0,1fr) auto;
        align-items:center;
        gap:10px;
        margin:0 4px 12px;
    }

    .products-mobile-header h2{
        margin:0;
        color:#0d1b4c;
        font-size:24px;
        line-height:1.25;
        font-weight:700;
    }

    .products-mobile-header a{
        display:inline-flex;
        align-items:center;
        justify-content:center;
        min-height:36px;
        padding:0 12px;
        border:1px solid #e2e8f0;
        border-radius:20px;
        background:#fff;
        color:#16325c;
        font-size:12px;
        font-weight:700;
        text-decoration:none;
        white-space:nowrap;
        box-sizing:border-box;
    }

    /* Restore the mobile promotional banner from the desktop section. */
    .products-mobile-header::after{
        content:'🔥 أكثر من 12,500 منتج جديد • عروض يومية • شحن سريع';
        grid-column:1 / -1;
        display:flex;
        align-items:center;
        justify-content:center;
        width:100%;
        min-height:40px;
        padding:7px 12px;
        border:1px solid #cbff90;
        border-radius:22px;
        background:#f1ffe1;
        color:#8a6730;
        font-size:11px;
        font-weight:600;
        line-height:1.4;
        text-align:center;
        box-sizing:border-box;
    }

    /* Native touch slider: 4 cards visible (2 x 2), next 2 on swipe. */
    .products-mobile-grid{
        display:grid !important;
        grid-template-rows:repeat(2,minmax(0,1fr)) !important;
        grid-auto-flow:column !important;
        grid-auto-columns:calc((100% - 10px) / 2) !important;
        gap:10px !important;
        width:100% !important;
        margin:0 !important;
        padding:0 0 6px !important;
        overflow-x:auto !important;
        overflow-y:hidden !important;
        scroll-snap-type:x mandatory;
        scroll-behavior:smooth;
        -webkit-overflow-scrolling:touch;
        scrollbar-width:none;
        box-sizing:border-box;
    }

    .products-mobile-grid::-webkit-scrollbar{
        display:none;
    }

    .products-mobile-grid .product-card{
        width:100% !important;
        min-width:0 !important;
        max-width:none !important;
        height:100% !important;
        box-sizing:border-box !important;
        scroll-snap-align:none;
    }

    /* Snap once per complete 2 x 2 page. */
    .products-mobile-grid .product-card:nth-child(1),
    .products-mobile-grid .product-card:nth-child(5){
        scroll-snap-align:start;
    }

    .products-mobile-grid .product-title{
        font-size:15px !important;
        line-height:1.35 !important;
    }

    .products-mobile-grid .product-price-box{
        display:flex !important;
        flex-direction:column !important;
        align-items:center !important;
        justify-content:center !important;
        gap:5px !important;
        text-align:center !important;
    }

    .products-mobile-grid .product-price,
    .products-mobile-grid .product-old-price{
        width:100% !important;
        justify-content:center !important;
        text-align:center !important;
    }

    .products-mobile-grid .product-old-price{
        order:2 !important;
        margin-top:0 !important;
        margin-bottom:0 !important;
    }

}

@media (max-width:420px){

    .products-mobile-header h2{
        font-size:22px;
    }

    .products-mobile-header a{
        min-height:34px;
        padding:0 10px;
        font-size:11px;
    }

    .products-mobile-header::after{
        min-height:38px;
        font-size:10.5px;
        padding-inline:8px;
    }

    .products-mobile-grid{
        grid-auto-columns:calc((100% - 8px) / 2) !important;
        gap:8px !important;
    }

    .products-mobile-grid .product-title{
        font-size:14px !important;
    }

}
/* ============================================================
   SMARTSHOP CONTACT PAGE — MOBILE RESPONSIVE
   Source: contact(4).css
   Mobile-only overrides.
   Desktop styles remain untouched.
   ============================================================ */

@media (max-width:991px){

    .contact-grid{
        grid-template-columns:1fr;
        gap:30px;
    }

    .contact-info{
        margin:0;
    }

    .contact-form-wrapper{
        margin:0;
    }

    .help-grid{
        grid-template-columns:repeat(2,1fr);
    }

    .page-hero h1{
        font-size:44px;
    }

    .contact-row{
        grid-template-columns:1fr;
    }

}

@media (max-width:768px){

    /* ---------- Contact Hero ---------- */

    .page-hero{
        padding:60px 16px;
        box-sizing:border-box;
    }

    .page-hero .container{
        width:100%;
        max-width:100%;
        padding:10px 0;
        box-sizing:border-box;
    }

    .page-badge{
        padding:9px 18px;
        margin-bottom:20px;
        font-size:13px;
    }

    .page-hero h1{
        font-size:34px;
        line-height:1.25;
    }

    .page-description{
        max-width:100%;
        margin:18px auto 0;
        font-size:17px;
        line-height:1.8;
    }

    /* ---------- Contact Layout ---------- */

    .contact-section{
        padding:15px 12px 0;
        box-sizing:border-box;
    }

    .contact-grid{
        grid-template-columns:1fr;
        gap:20px;
        width:100%;
        margin:0;
        box-sizing:border-box;
    }

    .contact-info{
        gap:14px;
        margin:0;
        width:100%;
    }

    .info-card{
        gap:14px;
        padding:16px;
        border-radius:16px;
        width:100%;
        box-sizing:border-box;
    }

    .info-card .icon{
        width:54px;
        height:54px;
        border-radius:15px;
        font-size:21px;
    }

    .info-card h3{
        margin:0 0 7px;
        font-size:18px;
    }

    .info-card p{
        font-size:14px;
        line-height:1.75;
        overflow-wrap:anywhere;
    }

    /* ---------- Contact Form ---------- */

    .contact-form-wrapper{
        margin:0;
        padding:25px;
        border-radius:18px;
        width:100%;
        box-sizing:border-box;
    }

    .contact-form{
        gap:18px;
        width:100%;
    }

    .form-group{
        gap:8px;
        width:100%;
    }

    .form-group label{
        font-size:14px;
    }

    .contact-form input,
    .contact-form textarea,
    .contact-form select{
        width:100%;
        box-sizing:border-box;
        font-size:14px;
    }

    .contact-form input,
    .contact-form textarea{
        padding:13px 15px;
    }

    .contact-form select{
        height:52px;
        padding:0 15px;
    }

    .contact-form textarea{
        min-height:130px;
    }

    .contact-form button{
        width:100%;
        min-width:0;
        height:52px;
        padding:0 20px;
        align-self:stretch;
    }

    /* ---------- Help ---------- */

    .contact-help{
        margin:0 12px;
        padding:18px 0;
        box-sizing:border-box;
    }

    .section-header{
        margin-bottom:28px;
    }

    .section-header h2{
        font-size:22px;
        line-height:1.3;
    }

    .section-header p{
        font-size:14px;
        line-height:1.8;
    }

    .help-grid{

    }

    .help-card{
        padding:18px 14px;
        border-radius:18px;
    }

    .help-card i{
        width:60px;
        height:60px;
        margin:0 auto 16px;
        border-radius:16px;
        font-size:25px;
    }

    .help-card h3{
        font-size:16px;
    }

    /* ---------- FAQ / CTA ---------- */

    .contact-faq{
        padding:0 12px 18px;
        box-sizing:border-box;
    }

    .faq-box{
        padding:55px 25px;
        border-radius:20px;
        box-sizing:border-box;
    }

    .faq-box h2{
        font-size:32px;
        line-height:1.35;
    }

    .faq-box p{
        max-width:100%;
        margin:0 auto 28px;
        line-height:1.9;
        font-size:14px;
    }

    .faq-box a{
        width:100%;
        box-sizing:border-box;
        padding:13px 20px;
    }

    /* ---------- Support Card ---------- */

    .contact-support-card{
        margin-top:18px;
        padding:22px 18px;
        border-radius:18px;
        box-sizing:border-box;
    }

    .contact-support-card h3{
        font-size:23px;
        line-height:1.4;
    }

    .contact-support-card p{
        font-size:14px;
        line-height:1.8;
    }

    .support-features li{
        gap:10px;
        margin-bottom:12px;
        font-size:14px;
    }

    .support-actions{
        margin-top:20px;
        gap:10px;
    }

    .support-btn{
        padding:13px;
    }

    .contact-help-inline{
        margin-top:35px;
    }

    /* ---------- Messages ---------- */

    .contact-success-box{
        margin-bottom:20px;
        padding:22px 16px;
        border-radius:16px;
        box-sizing:border-box;
    }

    .contact-success-box .success-icon{
        width:62px;
        height:62px;
        margin-bottom:15px;
        font-size:29px;
    }

    .contact-success-box h3{
        font-size:24px;
    }

    .contact-success-box p{
        font-size:14px;
        line-height:1.8;
    }

    .contact-error-box{
        margin-bottom:16px;
        padding:13px 15px;
        border-radius:12px;
        font-size:14px;
    }

}

@media (max-width:420px){

    .page-hero{
        padding:48px 14px;
    }

    .page-hero h1{
        font-size:30px;
    }

    .page-description{
        font-size:15px;
    }

    .contact-section{
        padding-left:10px;
        padding-right:10px;
    }

    .contact-form-wrapper{
        padding:18px;
    }

    .info-card{
        padding:14px;
    }

    .info-card .icon{
        width:50px;
        height:50px;
        font-size:19px;
    }

    .info-card h3{
        font-size:17px;
    }

    .info-card p{
        font-size:13px;
    }

    .faq-box{
        padding:42px 18px;
    }

    .faq-box h2{
        font-size:28px;
    }

}

/* ============================================================
   SMARTSHOP — ABOUT PAGE MOBILE RESTORE
   Arabic mobile controls only.
   Desktop CSS is untouched.
   Restored from the previously approved mobile rules.
   ============================================================ */
@media (max-width:768px){

    html[lang="ar"] .about-hero,
    html[lang="ar"] .about-story,
    html[lang="ar"] .about-features,
    html[lang="ar"] .about-stats,
    html[lang="ar"] .about-timeline,
    html[lang="ar"] .about-cta{
        width:100%;
        max-width:100%;
        box-sizing:border-box;
        overflow:hidden;
    }

    html[lang="ar"] .about-hero{
        margin:10px 10px 18px;
        width:calc(100% - 20px);
        padding:34px 16px 28px;
        border-radius:20px;
    }

    html[lang="ar"] .about-hero-grid{
        display:flex;
        flex-direction:column;
        gap:24px;
        min-height:0;
        width:100%;
    }

    html[lang="ar"] .about-hero-content{
        width:100%;
        max-width:100%;
        padding:0;
        text-align:center;
        box-sizing:border-box;
    }

    html[lang="ar"] .about-badge{
        max-width:100%;
        box-sizing:border-box;
        padding:9px 16px;
        margin-bottom:18px;
        font-size:12px;
        line-height:1.5;
    }

    html[lang="ar"] .about-hero-content h1{
        font-size:30px;
        line-height:1.35;
        margin:0 0 16px;
        overflow-wrap:anywhere;
    }

    html[lang="ar"] .about-hero-content p{
        max-width:100%;
        margin:0 auto 24px;
        font-size:15px;
        line-height:1.9;
    }

    html[lang="ar"] .about-hero .hero-actions{
        width:100%;
        justify-content:center;
        gap:10px;
        margin-top:4px;
    }

    html[lang="ar"] .about-hero .btn{
        min-width:0;
        width:calc(50% - 5px);
        max-width:180px;
        height:48px;
        padding:0 12px;
        font-size:13px;
    }

    html[lang="ar"] .about-hero-image{
        width:100%;
        max-width:100%;
        padding:0;
        justify-content:center;
        transform:none;
        box-sizing:border-box;
    }

    html[lang="ar"] .about-hero-image img{
        width:100%;
        max-width:100%;
        height:auto;
        border-radius:20px;
    }

    html[lang="ar"] .about-hero-image::before{
        left:50%;
        top:50%;
        width:260px;
        height:260px;
        transform:translate(-50%,-50%);
        filter:blur(28px);
    }

    html[lang="ar"] .about-hero::after{
        left:5%;
        top:auto;
        bottom:12%;
        width:90%;
        transform:rotate(-4deg);
    }

    html[lang="ar"] .about-story{
        padding:28px 12px 32px;
    }

    html[lang="ar"] .story-grid{
        display:flex;
        flex-direction:column;
        gap:22px;
        width:100%;
    }

    html[lang="ar"] .story-rocket{
        display:none;
    }

    html[lang="ar"] .story-content{
        width:100%;
        max-width:100%;
        text-align:center;
    }

    html[lang="ar"] .story-content .section-tag{
        padding:8px 16px;
        margin-bottom:14px;
        font-size:12px;
    }

    html[lang="ar"] .story-content h2{
        font-size:28px;
        line-height:1.35;
        margin:0 0 12px;
    }

    html[lang="ar"] .story-content p{
        margin:0;
        font-size:14px;
        line-height:1.9;
    }

    html[lang="ar"] .story-image{
        width:100%;
        padding:0;
        box-sizing:border-box;
    }

    html[lang="ar"] .story-image img{
        width:100%;
        max-width:100%;
        margin:0;
        padding:8px;
        border-radius:20px;
        box-sizing:border-box;
    }

    html[lang="ar"] .about-features{
        padding:28px 10px 34px;
    }

    html[lang="ar"] .about-features .section-heading{
        margin-bottom:18px;
    }

    html[lang="ar"] .about-features .section-heading .section-tag,
    html[lang="ar"] .about-timeline .section-heading .section-tag{
        padding:8px 16px;
        margin-bottom:10px;
        font-size:12px;
    }

    html[lang="ar"] .about-features .section-heading h2,
    html[lang="ar"] .about-timeline .section-heading h2{
        font-size:28px;
        line-height:1.35;
        margin:0;
    }

    html[lang="ar"] .features-grid{
        display:grid;
        grid-template-columns:repeat(2,minmax(0,1fr));
        gap:10px;
        padding:0;
        width:100%;
    }

    html[lang="ar"] .feature-card{
        min-height:0;
        padding:18px 10px;
        border-radius:16px;
    }

    html[lang="ar"] .feature-icon{
        margin-bottom:10px;
    }

    html[lang="ar"] .feature-icon img{
        width:52px;
        height:52px;
    }

    html[lang="ar"] .feature-card h3{
        margin:0 0 8px;
        font-size:15px;
        line-height:1.4;
    }

    html[lang="ar"] .feature-card p{
        font-size:12px;
        line-height:1.7;
    }

    html[lang="ar"] .about-stats{
        padding:0 10px 34px;
    }

    html[lang="ar"] .stats-grid{
        display:grid;
        grid-template-columns:repeat(2,minmax(0,1fr));
        gap:0;
        margin:0;
        border-radius:18px;
    }

    html[lang="ar"] .stat-card{
        padding:18px 8px;
    }

    html[lang="ar"] .stat-card:not(:last-child)::after{
        display:none;
    }

    html[lang="ar"] .stat-card:nth-child(odd){
        border-left:1px solid rgba(255,255,255,.08);
    }

    html[lang="ar"] .stat-card:nth-child(-n+2){
        border-bottom:1px solid rgba(255,255,255,.08);
    }

    html[lang="ar"] .stat-icon img{
        width:46px;
        height:46px;
    }

    html[lang="ar"] .stat-card h3{
        font-size:28px;
        line-height:1.2;
    }

    html[lang="ar"] .stat-card span{
        font-size:12px;
        line-height:1.5;
    }

    html[lang="ar"] .about-timeline{
        padding:30px 12px 36px;
    }

    html[lang="ar"] .timeline{
        display:grid;
        grid-template-columns:1fr;
        gap:14px;
        width:100%;
    }

    html[lang="ar"] .timeline-line{
        display:none;
    }

    html[lang="ar"] .timeline-item{
        background:#fff;
        border:1px solid #edf1f7;
        border-radius:16px;
        padding:18px 14px;
        box-shadow:0 6px 18px rgba(10,30,70,.05);
        box-sizing:border-box;
    }

    html[lang="ar"] .timeline-number{
        width:48px;
        height:48px;
        margin:0 auto 12px;
        font-size:19px;
    }

    html[lang="ar"] .timeline-item h3{
        margin:0 0 7px;
        font-size:17px;
        line-height:1.4;
    }

    html[lang="ar"] .timeline-item p{
        margin:0;
        font-size:13px;
        line-height:1.75;
    }

    html[lang="ar"] .about-cta{
        padding:0 10px 24px;
    }

    html[lang="ar"] .about-cta-box{
        display:flex;
        flex-direction:column;
        gap:20px;
        padding:28px 18px;
        border-radius:20px;
        text-align:center;
        box-sizing:border-box;
    }

    html[lang="ar"] .about-cta-content{
        width:100%;
        max-width:100%;
    }

    html[lang="ar"] .about-cta-content .section-tag{
        padding:8px 16px;
        margin-bottom:10px;
        font-size:12px;
    }

    html[lang="ar"] .about-cta-content h2{
        margin:8px 0 12px;
        font-size:29px;
        line-height:1.4;
    }

    html[lang="ar"] .about-cta-content p{
        margin:0 auto 20px;
        max-width:100%;
        font-size:14px;
        line-height:1.85;
    }

    html[lang="ar"] .about-cta .hero-actions{
        width:100%;
        gap:10px;
    }

    html[lang="ar"] .about-cta .btn{
        min-width:0;
        width:calc(50% - 5px);
        height:48px;
        padding:0 10px;
        font-size:13px;
    }

    html[lang="ar"] .about-cta-icon{
        width:100%;
    }

    html[lang="ar"] .about-cta-icon img{
        width:90px;
        max-width:100%;
        height:auto;
    }
}

@media (max-width:420px){

    html[lang="ar"] .about-hero-content h1{
        font-size:27px;
    }

    html[lang="ar"] .about-hero-content p{
        font-size:14px;
    }

    html[lang="ar"] .about-hero .btn,
    html[lang="ar"] .about-cta .btn{
        font-size:12px;
    }

    html[lang="ar"] .feature-card{
        padding:16px 8px;
    }

    html[lang="ar"] .feature-card h3{
        font-size:14px;
    }

    html[lang="ar"] .feature-card p{
        font-size:11px;
    }
}

/* ============================================================
   SMARTSHOP — CATEGORY PAGE MOBILE PRODUCTS
   The category page uses the desktop product markup only.
   Restore that markup on mobile without touching the homepage
   mobile product slider.
   ============================================================ */
@media (max-width:768px){

    .products:not(:has(.sspro-mobile)) .products-desktop{
        display:block;
    }

    .products:not(:has(.products-mobile)) .products-grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
        gap:10px;
    }

    .products:not(:has(.products-mobile)) .container{
        width:100%;
        max-width:100%;
        box-sizing:border-box;
    }

    .products:not(:has(.products-mobile)) .product-card{
        min-width:0;
    }

    .products:not(:has(.products-mobile)) .product-media{
        min-height:150px;
        padding:28px 8px 0;
    }

    .products:not(:has(.products-mobile)) .product-image{
        max-height:125px;
    }

    .products:not(:has(.products-mobile)) .product-content{
        padding:10px 8px;
    }

    .products:not(:has(.products-mobile)) .product-title{
        font-size:14px;
        line-height:1.5;
    }

    .products:not(:has(.products-mobile)) .product-price-box{
        gap:6px;
        flex-wrap:wrap;
        justify-content:center;
    }

    .products:not(:has(.products-mobile)) .product-footer{
        gap:6px;
    }

}

/* ============================================================
   SMARTSHOP MOBILE HEADER — FINAL ISOLATED FIX
   Mobile only. Desktop header remains untouched.
   ============================================================ */

@media (max-width:991px){

    .site-header{
        height:70px !important;
        padding:0 !important;
        max-width:none !important;
        box-sizing:border-box;
    }

    .site-header .container{
        width:100% !important;
        max-width:none !important;
        height:70px !important;
        padding:5px 12px !important;
        margin:0 !important;
        display:flex !important;
        align-items:center !important;
        justify-content:space-between !important;
        gap:8px !important;
        box-sizing:border-box;
    }

    .header-search{
        display:none !important;
    }

    .header-logo{
        order:1 !important;
        flex:0 1 auto !important;
        min-width:0 !important;
        margin:0 !important;
    }

    .header-logo img{
        display:block !important;
        width:auto !important;
        height:48px !important;
        max-width:145px !important;
        object-fit:contain !important;
    }

    .header-actions{
        order:2 !important;
        display:flex !important;
        align-items:center !important;
        justify-content:center !important;
        gap:8px !important;
        flex:0 0 auto !important;
        min-width:0 !important;
    }

    .header-cart,
    .header-notifications,
    .header-icon{
        display:flex !important;
        align-items:center !important;
        justify-content:center !important;
        width:34px !important;
        height:40px !important;
        padding:0 !important;
        margin:0 !important;
        flex:0 0 34px !important;
        box-sizing:border-box !important;
    }

    .header-cart{order:1 !important;}
    .header-icon{order:2 !important;}
    .header-notifications{order:3 !important;}

    .header-cart img,
    .header-icon img,
    .header-notifications-toggle img{
        width:24px !important;
        height:24px !important;
        max-width:24px !important;
        object-fit:contain !important;
    }

    .header-notifications-toggle{
        width:34px !important;
        height:40px !important;
        padding:0 !important;
    }

    .header-account,
    .create-store-btn{
        display:none !important;
    }

    .header-icon + .header-icon,
    .header-icon + .header-account,
    .header-notifications + .header-icon::before,
    .header-icon + .header-icon::before,
    .header-icon + .header-account::before{
        display:none !important;
    }

    .mobile-menu-toggle{
        order:3 !important;
        display:flex !important;
        flex:0 0 42px !important;
        width:42px !important;
        height:44px !important;
        margin:0 !important;
        padding:0 !important;
        align-items:center !important;
        justify-content:center !important;
        background:transparent !important;
        border:0 !important;
        box-sizing:border-box !important;
    }

    .mobile-menu-toggle span{
        width:24px !important;
        height:2px !important;
        margin:4px auto !important;
        background:#16214a !important;
        border-radius:3px !important;
    }

    .mobile-offcanvas-overlay{
        position:fixed !important;
        inset:0 !important;
        background:rgba(6,18,45,.48) !important;
        opacity:0 !important;
        visibility:hidden !important;
        pointer-events:none !important;
        z-index:10000 !important;
        transition:opacity .22s ease,visibility .22s ease !important;
    }

    .mobile-offcanvas-overlay.is-open{
        opacity:1 !important;
        visibility:visible !important;
        pointer-events:auto !important;
    }

    .mobile-offcanvas{
        position:fixed !important;
        top:0 !important;
        right:0 !important;
        width:min(360px,88vw) !important;
        height:100dvh !important;
        max-height:100dvh !important;
        padding:0 16px 24px !important;
        margin:0 !important;
        background:#fff !important;
        box-shadow:-14px 0 38px rgba(11,31,77,.20) !important;
        overflow-x:hidden !important;
        overflow-y:auto !important;
        box-sizing:border-box !important;
        transform:translateX(105%) !important;
        visibility:hidden !important;
        pointer-events:none !important;
        z-index:10001 !important;
        transition:transform .25s ease,visibility .25s ease !important;
        overscroll-behavior:contain !important;
    }

    .mobile-offcanvas.is-open{
        transform:translateX(0) !important;
        visibility:visible !important;
        pointer-events:auto !important;
    }

    .mobile-offcanvas-head{
        min-height:64px !important;
        display:flex !important;
        align-items:center !important;
        justify-content:space-between !important;
        gap:12px !important;
        border-bottom:1px solid #edf0f5 !important;
        color:#10204c !important;
        box-sizing:border-box !important;
    }

    .mobile-offcanvas-head strong{
        font-size:18px !important;
        font-weight:800 !important;
    }

    .mobile-offcanvas-close{
        width:40px !important;
        height:40px !important;
        border:0 !important;
        background:#f5f7fb !important;
        border-radius:10px !important;
        color:#10204c !important;
        font-size:28px !important;
        line-height:1 !important;
        cursor:pointer !important;
    }

    .mobile-offcanvas-search{
        display:flex !important;
        align-items:center !important;
        gap:8px !important;
        margin:16px 0 !important;
    }

    .mobile-offcanvas-search input{
        flex:1 !important;
        min-width:0 !important;
        height:46px !important;
        border:1px solid #dfe5ef !important;
        border-radius:11px !important;
        padding:0 13px !important;
        outline:none !important;
        box-sizing:border-box !important;
        font:inherit !important;
    }

    .mobile-offcanvas-search button{
        width:46px !important;
        height:46px !important;
        flex:0 0 46px !important;
        border:0 !important;
        border-radius:11px !important;
        background:#102b61 !important;
        display:flex !important;
        align-items:center !important;
        justify-content:center !important;
        cursor:pointer !important;
    }

    .mobile-offcanvas-search button img{
        width:20px !important;
        height:20px !important;
        filter:brightness(0) invert(1) !important;
    }

    .mobile-offcanvas-links{
        display:flex !important;
        flex-direction:column !important;
        gap:0 !important;
    }

    .mobile-offcanvas-links > a{
        display:flex !important;
        align-items:center !important;
        gap:12px !important;
        min-height:50px !important;
        padding:9px 8px !important;
        border-bottom:1px solid #f0f2f6 !important;
        color:#17264a !important;
        text-decoration:none !important;
        font-size:15px !important;
        font-weight:700 !important;
        box-sizing:border-box !important;
    }

    .mobile-offcanvas-links > a:hover{
        background:#f8fafc !important;
    }

    .mobile-offcanvas-links > a i{
        width:24px !important;
        text-align:center !important;
        color:#17366e !important;
        font-size:18px !important;
        flex:0 0 24px !important;
    }

    .mobile-offcanvas-links > a img{
        width:24px !important;
        height:24px !important;
        object-fit:contain !important;
        flex:0 0 24px !important;
    }

    .mobile-offcanvas-account-links{
        display:grid !important;
        grid-template-columns:1fr 1fr !important;
        gap:10px !important;
        margin-top:16px !important;
        padding-top:16px !important;
        border-top:1px solid #edf0f5 !important;
    }

    .mobile-offcanvas-account-links > a{
        min-height:52px !important;
        padding:10px 8px !important;
        border-radius:11px !important;
        display:flex !important;
        align-items:center !important;
        justify-content:center !important;
        gap:7px !important;
        box-sizing:border-box !important;
        text-decoration:none !important;
        font-size:13px !important;
        font-weight:800 !important;
        text-align:center !important;
    }

    .mobile-offcanvas-account-btn{
        background:#102b61 !important;
        border:1px solid #102b61 !important;
        color:#fff !important;
    }

    .mobile-offcanvas-store-btn{
        background:#f5b223 !important;
        border:1px solid #f5b223 !important;
        color:#10204c !important;
    }

    .mobile-offcanvas-account-links > a img,
    .mobile-offcanvas-account-links > a i{
        width:20px !important;
        height:20px !important;
        font-size:18px !important;
        flex:0 0 20px !important;
        object-fit:contain !important;
    }

    .mobile-offcanvas-account-links > a span{
        display:inline !important;
    }

}

@media (min-width:992px){

    .mobile-offcanvas,
    .mobile-offcanvas-overlay{
        display:none !important;
    }

}


/* ============================================================
   SMARTSHOP — LATEST PRODUCTS MOBILE FINAL FIX
   Homepage only. Desktop layout is untouched.
   ============================================================ */
@media (max-width:768px){

    /* The homepage contains the native .sspro-mobile slider.
       Never show the desktop copy at the same time. */
    .products:has(.sspro-mobile) .products-desktop{
        display:none !important;
    }

    /* Category/product listings without the mobile slider keep
       using their desktop product markup on mobile. */
    .products:not(:has(.sspro-mobile)) .products-desktop{
        display:block !important;
    }

    /* Actual homepage mobile header markup. */
    .sspro-mobile .products-header{
        display:flex;
        flex-direction:column;
        align-items:center;
        width:100%;
        margin:0 0 14px;
        gap:10px;
        box-sizing:border-box;
    }

    .sspro-mobile .products-title{
        margin:0;
        color:#0d1b4c;
        font-size:28px;
        line-height:1.25;
        font-weight:800;
        text-align:center;
    }

    .sspro-mobile .products-message{
        width:100%;
        min-height:42px;
        display:flex;
        align-items:center;
        justify-content:center;
        padding:8px 14px;
        border:1px solid #cbff90;
        border-radius:24px;
        background:#f1ffe1;
        color:#8a6730;
        font-size:12px;
        font-weight:700;
        line-height:1.5;
        text-align:center;
        box-sizing:border-box;
        overflow:hidden;
    }

    .sspro-mobile .products-link{
        display:inline-flex;
        align-items:center;
        justify-content:center;
        min-height:44px;
        padding:0 20px;
        border:1px solid #e2e8f0;
        border-radius:24px;
        background:#fff;
        color:#16325c;
        font-size:14px;
        font-weight:800;
        text-decoration:none;
        white-space:nowrap;
        box-sizing:border-box;
    }

    .sspro-mobile .sspro-slider{
        width:100%;
        overflow:hidden;
        box-sizing:border-box;
    }

    .sspro-mobile .sspro-track{
        display:flex !important;
        width:100%;
        transition:transform .35s ease;
        will-change:transform;
    }

    .sspro-mobile .sspro-page{
        flex:0 0 100% !important;
        min-width:100% !important;
        width:100%;
        display:grid !important;
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
        gap:10px !important;
        box-sizing:border-box;
    }

    .sspro-mobile .sspro-card{
        min-width:0 !important;
        width:100% !important;
        box-sizing:border-box;
    }

    .sspro-mobile .sspro-controls{
        display:flex !important;
        align-items:center;
        justify-content:center;
        gap:14px;
        margin-top:18px;
    }
}

@media (max-width:420px){
    .sspro-mobile .products-title{
        font-size:25px;
    }

    .sspro-mobile .products-message{
        min-height:40px;
        padding:7px 10px;
        font-size:11px;
    }

    .sspro-mobile .products-link{
        min-height:42px;
        padding:0 17px;
        font-size:13px;
    }

    .sspro-mobile .sspro-page{
        gap:8px !important;
    }
}


/* ============================================================
   SMARTSHOP — LATEST PRODUCTS MOBILE FINAL ALIGNMENT
   Mobile only. Desktop is completely untouched.
   Fixes:
   1) Center the complete Latest Products section.
   2) Center the promotional banner.
   3) Restore product-title link styling.
   4) Make "عرض خاص" text white.
   ============================================================ */

@media (max-width:768px){

    /* Center the complete mobile section without changing the slider. */
    .sspro-mobile{
        width:calc(100% - 24px) !important;
        max-width:100% !important;
        margin:20px auto 0 !important;
        box-sizing:border-box !important;
        overflow:hidden !important;
    }

    /* Keep the section heading and banner centered inside it. */
    .sspro-mobile .products-header{
        width:100% !important;
        margin:0 auto 14px !important;
        align-items:center !important;
        text-align:center !important;
        box-sizing:border-box !important;
    }

    .sspro-mobile .products-title{
        width:100% !important;
        margin:0 auto !important;
        text-align:center !important;
    }

    .sspro-mobile .products-message{
        width:100% !important;
        max-width:100% !important;
        margin:0 auto !important;
        text-align:center !important;
        justify-content:center !important;
        box-sizing:border-box !important;
    }

    /* Product title: remove browser link styling. */
    .sspro-mobile .sspro-title,
    .sspro-mobile .sspro-title a,
    .sspro-mobile .sspro-title a:visited,
    .sspro-mobile .sspro-title a:hover,
    .sspro-mobile .sspro-title a:active{
        color:#0d1b4c !important;
        text-decoration:none !important;
        font:inherit !important;
    }

    .sspro-mobile .sspro-title a{
        display:inline-block;
        width:auto;
    }

    /* "عرض خاص" text must be white. */
    .sspro-mobile .sspro-badge{
        color:#fff !important;
    }
}

@media (max-width:420px){

    .sspro-mobile{
        width:calc(100% - 16px) !important;
        margin-top:18px !important;
    }

    .sspro-mobile .products-message{
        width:100% !important;
        max-width:100% !important;
    }
}


/* SMARTSHOP — ALL PRODUCTS MOBILE TWO-COLUMN FIX
   Mobile only. Desktop layout is untouched.
*/
@media (max-width: 768px) {
    .sp-all-products .products-grid {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 10px !important;
        width: 100%;
        box-sizing: border-box;
    }

    .sp-all-products .product-card {
        min-width: 0;
        width: 100%;
        box-sizing: border-box;
    }
}

@media (max-width: 420px) {
    .sp-all-products .products-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 8px !important;
    }
}
