/* CSBN V3.7.10 — Correction responsive page Voir Produit uniquement */

/* Boutons de la fiche produit */
.cs-toolbar{
    display:flex;
    flex-wrap:wrap;
    gap:10px;
    align-items:center;
}

.cs-toolbar .btn{
    text-align:center;
}

/* Galerie page Voir Produit */
.gallery-ecommerce{
    display:grid;
    grid-template-columns:repeat(auto-fit, minmax(160px, 1fr));
    gap:14px;
    width:100%;
}

.gallery-ecommerce a{
    display:block;
    width:100%;
}

.gallery-ecommerce img{
    width:100%;
    height:220px;
    object-fit:contain;
    display:block;
    background:#f8fbff;
    border:1px solid #e5eaf1;
    border-radius:18px;
    padding:10px;
}

/* Évite le débordement des textes */
.cs-card,
.cs-card p,
.cs-card h2,
.cs-card h3{
    max-width:100%;
    overflow-wrap:break-word;
    word-wrap:break-word;
}

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

    .premium-hero{
        padding:18px!important;
        border-radius:18px!important;
    }

    .premium-hero h2{
        font-size:22px!important;
        line-height:1.2!important;
    }

    .premium-hero p{
        font-size:13px!important;
        line-height:1.4!important;
    }

    .cs-toolbar{
        display:grid!important;
        grid-template-columns:1fr 1fr;
        gap:8px!important;
    }

    .cs-toolbar .btn{
        width:100%!important;
        min-height:42px!important;
        padding:10px 8px!important;
        font-size:13px!important;
        display:flex!important;
        align-items:center!important;
        justify-content:center!important;
        white-space:normal!important;
    }

    .cs-grid-2{
        display:grid!important;
        grid-template-columns:1fr!important;
        gap:14px!important;
        width:100%!important;
    }

    .cs-grid-2 > *{
        width:100%!important;
        min-width:0!important;
    }

    .cs-card{
        padding:14px!important;
        border-radius:18px!important;
        width:100%!important;
        box-sizing:border-box!important;
    }

    .gallery-ecommerce{
        grid-template-columns:1fr!important;
        gap:12px!important;
    }

    .gallery-ecommerce img{
        height:240px!important;
        max-height:240px!important;
        padding:8px!important;
        border-radius:16px!important;
    }

    .main{
        padding-left:12px!important;
        padding-right:12px!important;
        box-sizing:border-box!important;
        overflow-x:hidden!important;
    }

    body{
        overflow-x:hidden!important;
    }
}

/* Très petits téléphones */
@media(max-width:420px){
    .cs-toolbar{
        grid-template-columns:1fr!important;
    }

    .gallery-ecommerce img{
        height:220px!important;
        max-height:220px!important;
    }
}
