.product-page{
    max-width:1500px;
    margin:0 auto;
    padding:24px 32px 40px;
}

.product-breadcrumb{
    display:flex;
    align-items:center;
    gap:10px;
    font-size:13px;
    color:#667085;
    margin-bottom:22px;
}

.product-breadcrumb a{
    color:#006BFF;
    font-weight:800;
}

.product-hero{
    display:grid;
    grid-template-columns:1fr 420px;
    gap:28px;
}

.product-main{
    min-width:0;
}

.product-image-card{
    background:#fff;
    border-radius:22px;
    padding:28px;
    box-shadow:0 8px 22px rgba(0,0,0,.05);
    display:flex;
    align-items:center;
    justify-content:center;
}

.product-image-card img{
    max-width:100%;
    max-height:620px;
    object-fit:contain;
}

.product-no-image{
    height:360px;
    display:flex;
    align-items:center;
    justify-content:center;
    color:#667085;
    font-weight:900;
}

.product-votes{
    display:flex;
    justify-content:center;
    gap:60px;
    margin:22px 0;
}

.product-votes div{
    display:flex;
    align-items:center;
    gap:10px;
    font-weight:900;
}

.product-votes strong{
    color:#0a7a37;
}

.product-votes div:last-child strong{
    color:#ef233c;
}

.product-description-card,
.best-deal-card,
.product-info-card{
    background:#fff;
    border-radius:18px;
    padding:24px;
    box-shadow:0 8px 22px rgba(0,0,0,.05);
}

.product-description-card h2,
.product-info-card h2{
    color:#2446a6;
    font-size:20px;
    margin-bottom:16px;
    text-transform:uppercase;
}

.product-description-card p{
    color:#06123a;
    line-height:1.7;
}

.product-sidebar{
    display:flex;
    flex-direction:column;
    gap:22px;
}

.best-deal-card{
    border:2px solid #ff4d5e;
}

.best-deal-card__title{
    color:#ef233c;
    font-weight:900;
    text-transform:uppercase;
    font-size:18px;
    margin-bottom:24px;
}

.best-deal-card__price{
    color:#ef233c;
    font-size:42px;
    font-weight:900;
    margin-bottom:12px;
}

.best-deal-card p{
    color:#06123a;
    margin-bottom:12px;
}

.stock-badge{
    display:inline-flex;
    background:#e8fff1;
    color:#0a7a37;
    border-radius:999px;
    padding:6px 12px;
    font-weight:900;
    font-size:13px;
    margin-bottom:20px;
}

.best-deal-card a{
    display:flex;
    align-items:center;
    justify-content:center;
    height:52px;
    border-radius:12px;
    background:#006BFF;
    color:#fff;
    font-weight:900;
}

.product-info-card dl{
    display:grid;
    grid-template-columns:150px 1fr;
    gap:0;
}

.product-info-card dt,
.product-info-card dd{
    padding:13px 0;
    border-bottom:1px solid #eef2f7;
}

.product-info-card dt{
    font-weight:900;
    color:#394963;
}

.product-info-card dd{
    color:#06123a;
}


.product-offers-section{
    margin-top:28px;
    background:#fff;
    border-radius:18px;
    padding:24px;
    box-shadow:0 8px 22px rgba(0,0,0,.05);
}

.product-offers-section .section-header h2{
    color:#2446a6;
    font-size:20px;
    text-transform:uppercase;
    margin-bottom:18px;
}

.product-offers-table{
    display:flex;
    flex-direction:column;
    gap:10px;
}

.product-offer-row{
    display:grid;
    grid-template-columns:1.2fr 1fr 1fr 1.4fr auto;
    gap:18px;
    align-items:center;
    padding:14px;
    border:1px solid #eef2f7;
    border-radius:14px;
}

.product-offer-price{
    color:#ef233c;
    font-size:22px;
    font-weight:900;
}

.product-offer-btn{
    display:flex;
    align-items:center;
    justify-content:center;
    height:40px;
    padding:0 18px;
    border-radius:9px;
    background:#006BFF;
    color:#fff;
    font-weight:900;
    white-space:nowrap;
}

.product-empty-card{
    background:#f7faff;
    border-radius:14px;
    padding:18px;
    color:#667085;
    font-weight:800;
}

.product-bottom-grid{
    display:grid;
    grid-template-columns:minmax(0, 1fr) 400px;
    gap:26px;
    align-items:start;

    margin-top:10px !important;
}

.product-reviews-section{
    margin-top:0 !important;
}

.product-alerts-card{
    align-self:start;
}

.product-reviews-section,
.product-alerts-card{
    background:#fff;
    border-radius:18px;
    padding:24px;
    box-shadow:0 8px 22px rgba(0,0,0,.05);
}

.product-offers-section{
    margin-bottom:10px !important;
}

.product-reviews-section .section-header h2,
.product-alerts-card h2{
    color:#2446a6;
    font-size:20px;
    text-transform:uppercase;
    margin-bottom:18px;
}

.review-item{
    border-bottom:1px solid #eef2f7;
    padding-bottom:14px;
}

.review-item strong{
    display:block;
    color:#06123a;
    margin-bottom:6px;
}

.review-item p{
    color:#394963;
    line-height:1.55;
    margin-bottom:8px;
}

.review-item span{
    color:#006BFF;
    font-weight:900;
    font-size:13px;
}

.alert-row{
    display:flex;
    justify-content:space-between;
    gap:16px;
    align-items:center;
    padding:16px 0;
    border-bottom:1px solid #eef2f7;
}

.alert-row strong{
    display:block;
    color:#06123a;
    margin-bottom:4px;
}

.alert-row span{
    display:block;
    color:#667085;
    font-size:13px;
    line-height:1.35;
}

.alert-row button{
    border:0;
    background:#eef4ff;
    color:#006BFF;
    border-radius:999px;
    padding:8px 14px;
    font-weight:900;
    cursor:not-allowed;
}

.product-tags{
    display:flex;
    flex-wrap:wrap;
    gap:8px;
    margin-top:18px;
}

.product-tag{
    display:inline-flex;
    align-items:center;
    gap:6px;
    padding:7px 11px;
    background:#eef4ff;
    color:#006BFF;
    border-radius:999px;
    font-size:13px;
    font-weight:900;
}

.product-tag:hover{
    background:#dceaff;
}

.similar-products-section{
    margin-top:28px;
    background:#fff;
    border-radius:18px;
    padding:24px;
    box-shadow:0 8px 22px rgba(0,0,0,.05);
}

.similar-products-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit, minmax(180px, 1fr));
    gap:18px;
}

.similar-product-card{
    border:1px solid #eef2f7;
    border-radius:14px;
    padding:14px;
    background:#fff;
}

.similar-product-card__image{
    height:160px;
    display:flex;
    align-items:center;
    justify-content:center;
    margin-bottom:12px;
}

.similar-product-card__image img{
    width:100%;
    height:100%;
    object-fit:contain;
}

.similar-product-card h3{
    font-size:14px;
    line-height:1.35;
    margin-bottom:8px;
}

.similar-product-card h3 a{
    color:#06123a;
}

.similar-product-card strong{
    color:#ef233c;
}

.product-versions{
    margin:18px 0 20px;
}

.product-versions h3{
    font-size:14px;
    margin-bottom:10px;
    color:#06123a;
}

.product-versions-list{
    display:flex;
    flex-wrap:wrap;
    gap:8px;
}

.product-version-link{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:38px;
    padding:0 14px;
    border-radius:999px;
    background:#eef4ff;
    color:#006BFF;
    font-size:13px;
    font-weight:900;
}

.product-version-link.is-active{
    background:#006BFF;
    color:#fff;
}

@media(max-width:1000px){
    .product-bottom-grid{
        grid-template-columns:1fr;
    }
}

@media(max-width:900px){
    .product-offer-row{
        grid-template-columns:1fr;
        gap:10px;
    }
}

@media(max-width:1000px){
    .product-hero{
        grid-template-columns:1fr;
    }

    .product-page{
        padding:18px;
    }

    .product-info-card dl{
        grid-template-columns:1fr;
    }
}

@media(max-width:768px){

    .product-page{
        padding:12px 12px 28px;
    }

    .product-breadcrumb{
        font-size:12px;
        gap:6px;
        margin-bottom:12px;
        overflow-x:auto;
        white-space:nowrap;
        padding-bottom:4px;
    }

    .product-hero,
    .product-bottom-grid{
        display:flex;
        flex-direction:column;
        gap:16px;
    }

    .product-image-card{
        border-radius:22px;
        padding:18px;
        min-height:300px;
        background:
            radial-gradient(circle at 20% 10%, rgba(0,107,255,.10), transparent 38%),
            #fff;
    }

    .product-image-card img{
        max-height:320px;
    }

    .product-votes{
        display:none;
    }

    .product-description-card,
    .best-deal-card,
    .product-info-card,
    .product-offers-section,
    .product-reviews-section,
    .product-alerts-card,
    .similar-products-section{
        border-radius:20px;
        padding:18px;
        box-shadow:0 8px 24px rgba(6,18,58,.07);
    }

    .product-sidebar{
        gap:16px;
    }

    .best-deal-card{
        order:-1;
        border:0;
        background:
            linear-gradient(135deg, #fff 0%, #fff7f8 100%);
        position:relative;
        overflow:hidden;
    }

    .best-deal-card::before{
        content:"";
        position:absolute;
        top:0;
        left:0;
        right:0;
        height:5px;
        background:linear-gradient(90deg, #ef233c, #ffb703);
    }

    .best-deal-card__title{
        font-size:14px;
        margin-bottom:12px;
        display:inline-flex;
        padding:7px 10px;
        border-radius:999px;
        background:#ffe9ec;
        color:#ef233c;
    }

    .best-deal-card__price{
        font-size:34px;
        margin-bottom:8px;
        line-height:1;
    }

    .best-deal-card a,
    .product-offer-btn{
        width:100%;
        min-height:48px;
        border-radius:14px;
        font-size:15px;
        box-shadow:0 10px 20px rgba(0,107,255,.18);
    }

    .product-info-card h2,
    .product-description-card h2,
    .product-offers-section .section-header h2,
    .product-reviews-section .section-header h2,
    .product-alerts-card h2,
    .similar-products-section .section-header h2{
        font-size:16px;
        margin-bottom:14px;
        letter-spacing:.02em;
    }

    .product-info-card dl{
        display:block;
    }

    .product-info-card dt{
        border-bottom:0;
        padding:10px 0 2px;
        font-size:12px;
        color:#667085;
        text-transform:uppercase;
    }

    .product-info-card dd{
        padding:0 0 10px;
        font-weight:800;
    }

    .product-tags,
    .product-versions-list{
        gap:7px;
    }

    .product-tag,
    .product-version-link{
        font-size:12px;
        min-height:34px;
        padding:0 11px;
    }

    .product-offers-section{
        margin-top:16px;
    }

    .product-offer-row{
        display:flex;
        flex-direction:column;
        align-items:stretch;
        gap:10px;
        padding:16px;
        border-radius:18px;
        background:#f8fbff;
    }

    .product-offer-row > div:first-child strong{
        font-size:16px;
    }

    .product-offer-price{
        font-size:26px;
        line-height:1;
    }

    .stock-badge{
        margin-bottom:0;
        width:max-content;
    }

    .alert-row{
        align-items:flex-start;
        flex-direction:column;
        gap:10px;
    }

    .alert-row button{
        width:100%;
        min-height:42px;
    }

    .similar-products-grid{
        display:flex;
        overflow-x:auto;
        gap:12px;
        padding-bottom:6px;
        scroll-snap-type:x mandatory;
    }

    .similar-product-card{
        min-width:170px;
        scroll-snap-align:start;
        border-radius:18px;
    }

    .similar-product-card__image{
        height:140px;
    }
}

.mobile-sticky-deal{
    display:none;
}

@media(max-width:768px){

    .mobile-sticky-deal{
        position:fixed;
        left:10px;
        right:10px;
        bottom:10px;
        z-index:9000;

        display:flex;
        align-items:center;
        justify-content:space-between;
        gap:12px;

        padding:10px;
        border-radius:18px;

        background:rgba(255,255,255,.96);
        box-shadow:0 12px 34px rgba(6,18,58,.24);
        backdrop-filter:blur(12px);
        border:1px solid rgba(0,107,255,.12);
    }

    .mobile-sticky-deal__price{
        display:flex;
        flex-direction:column;
        line-height:1.1;
    }

    .mobile-sticky-deal__price span{
        color:#667085;
        font-size:11px;
        font-weight:800;
    }

    .mobile-sticky-deal__price strong{
        color:#ef233c;
        font-size:20px;
        font-weight:900;
    }

    .mobile-sticky-deal a{
        min-width:128px;
        height:44px;
        border-radius:14px;
        background:linear-gradient(135deg, #006BFF, #0047ff);
        color:#fff;
        display:flex;
        align-items:center;
        justify-content:center;
        font-size:14px;
        font-weight:900;
        box-shadow:0 10px 20px rgba(0,107,255,.25);
    }

    .product-page{
        padding-bottom:96px;
    }
}

/* PRODUITS SIMILAIRES PREMIUM */

.similar-products-section{
    position:relative;
    overflow:hidden;
    background:
        radial-gradient(circle at top right, rgba(0,107,255,.08), transparent 30%),
        #fff;
}

.similar-products-grid{
    padding-top:4px;
}

.similar-product-card{
    position:relative;
    overflow:hidden;
    border:1px solid rgba(0,107,255,.08);
    transition:
        transform .18s ease,
        box-shadow .18s ease,
        border-color .18s ease;
}

.similar-product-card::before{
    content:"";
    position:absolute;
    inset:0;
    background:
        linear-gradient(
            180deg,
            rgba(255,255,255,0),
            rgba(0,107,255,.03)
        );
    pointer-events:none;
}

.similar-product-card:hover{
    transform:translateY(-4px);
    border-color:rgba(0,107,255,.18);
    box-shadow:0 18px 36px rgba(6,18,58,.12);
}

.similar-product-card__image{
    position:relative;
    overflow:hidden;
    border-radius:12px;
    background:
        radial-gradient(circle at top, rgba(0,107,255,.08), transparent 55%),
        #f8fbff;
}

.similar-product-card__image img{
    transition:
        transform .25s ease;
}

.similar-product-card:hover .similar-product-card__image img{
    transform:scale(1.04);
}

.similar-product-card h3{
    min-height:38px;
}

.similar-product-card strong{
    display:inline-block;
    margin-top:4px;
    font-size:18px;
}

@media(max-width:768px){

    .similar-products-section{
        padding-right:0;
    }

    .similar-products-grid{
        padding-right:14px;
    }

    .similar-product-card{
        min-width:180px;
        background:#fff;
    }

    .similar-product-card h3{
        font-size:13px;
    }

    .similar-product-card strong{
        font-size:16px;
    }
}

.best-deal-reasons{
    display:grid;
    gap:10px;
    margin-top:16px;
}

.best-deal-reasons div{
    padding:12px;
    border-radius:14px;
    background:#f8fbff;
    border:1px solid #e8eef8;
}

.best-deal-reasons strong{
    display:block;
    color:#06123a;
    font-size:13px;
    margin-bottom:3px;
}

.best-deal-reasons span{
    color:#667085;
    font-size:12px;
    font-weight:700;
}

.product-offers-section{
    background:
        radial-gradient(circle at top left, rgba(0,107,255,.07), transparent 28%),
        #fff;
}

.product-offer-row{
    transition:
        transform .16s ease,
        box-shadow .16s ease,
        border-color .16s ease;
}

.product-offer-row:hover{
    transform:translateY(-2px);
    border-color:rgba(0,107,255,.18);
    box-shadow:0 12px 26px rgba(6,18,58,.08);
}

.product-offer-row > div:first-child strong{
    font-size:16px;
    color:#06123a;
}

.product-offer-price{
    letter-spacing:-.02em;
}

.product-offer-btn{
    background:linear-gradient(135deg, #006BFF, #0047ff);
    box-shadow:0 8px 18px rgba(0,107,255,.20);
}

.product-offer-btn:hover{
    transform:translateY(-1px);
    box-shadow:0 12px 24px rgba(0,107,255,.28);
}

.product-offer-row{
    align-items:center;
}

.product-offer-row > div:last-child{
    display:flex;
    align-items:center;
    justify-content:flex-end;
    height:100%;
}

.product-offer-btn{
    margin:0;
}

@media(max-width:900px){

    .product-offer-row > div:last-child{
        justify-content:stretch;
    }

    .product-offer-btn{
        width:100%;
    }
}

/* AMBIANCE PREMIUM PRODUIT */

.product-page{
    position:relative;
}

.product-page::before{
    content:"";
    position:fixed;
    inset:0;
    pointer-events:none;
    z-index:-1;

    background:
        radial-gradient(circle at 12% 18%, rgba(0,107,255,.06), transparent 24%),
        radial-gradient(circle at 88% 10%, rgba(255,0,93,.05), transparent 20%),
        radial-gradient(circle at 50% 100%, rgba(0,107,255,.04), transparent 28%);
}

.product-image-card,
.product-description-card,
.product-info-card,
.best-deal-card,
.product-offers-section,
.product-reviews-section,
.product-alerts-card,
.similar-products-section{
    backdrop-filter:blur(8px);
}

.product-image-card{
    position:relative;
    overflow:hidden;
}

.product-image-card::before{
    content:"";
    position:absolute;
    inset:0;

    background:
        radial-gradient(circle at top, rgba(0,107,255,.10), transparent 45%);

    pointer-events:none;
}

.product-image-card img{
    transition:
        transform .22s ease;
}

.product-image-card:hover img{
    transform:scale(1.02);
}

.best-deal-card{
    position:relative;
    overflow:hidden;
}

.best-deal-card::after{
    content:"";
    position:absolute;
    width:220px;
    height:220px;
    right:-90px;
    top:-90px;

    border-radius:50%;

    background:
        radial-gradient(circle, rgba(239,35,60,.10), transparent 70%);
}
.product-alerts-card{
    background:#fff;
    border:1px solid #e4ecf8;
    border-radius:24px;
    padding:22px;
    box-shadow:0 12px 34px rgba(6,27,70,.07);
}

.product-alerts-card h2{
    margin-bottom:16px;
    font-size:22px;
    color:#06123a;
}

.alert-row{
    width:100%;
    border:1px solid #e4ecf8;
    background:#f8fbff;
    border-radius:18px;
    padding:16px;
    margin-bottom:12px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:16px;
}

.alert-row:last-child{
    margin-bottom:0;
}

.alert-row strong{
    display:block;
    margin-bottom:5px;
    font-size:15px;
    color:#06123a;
}

.alert-row span{
    display:block;
    font-size:13px;
    line-height:1.35;
    color:#52627a;
}

.alert-row button{
    border:0;
    background:#006BFF;
    color:#fff;
    height:38px;
    padding:0 16px;
    border-radius:999px;
    font-weight:900;
    cursor:pointer;
    white-space:nowrap;
}

.alert-row button:hover{
    background:#0054c9;
}

.alert-row input[type="number"]{
    width:140px;
    height:38px;
    margin-top:10px;
    padding:0 12px;
    border:1px solid #d9e5f6;
    border-radius:12px;
    font-weight:800;
    color:#06123a;
    background:#fff;
}

.alert-row input[type="number"]:focus{
    outline:none;
    border-color:#006BFF;
    box-shadow:0 0 0 3px rgba(0,107,255,.12);
}

@media(max-width:768px){

    .product-alerts-card{
        padding:18px;
        border-radius:20px;
    }

    .alert-row{
        flex-direction:column;
        align-items:stretch;
    }

    .alert-row button{
        width:100%;
    }

    .alert-row input[type="number"]{
        width:100%;
    }
}
.product-alert-message{
    margin:18px 0;
    padding:15px 18px;
    border-radius:16px;
    font-weight:900;
}

.product-alert-message.is-success{
    background:#e9fbf0;
    border:1px solid #bdebcf;
    color:#116b35;
}

.product-alert-message.is-warning{
    background:#fff7e6;
    border:1px solid #ffe0a3;
    color:#8a5700;
}

.best-deal-reasons{
    display:grid;
    gap:12px;
}

.best-deal-reasons div{
    padding:16px;
    border-radius:16px;
    background:#f8fbff;
    border:1px solid #e8eef8;

    transition:
        transform .16s ease,
        border-color .16s ease,
        box-shadow .16s ease;
}

.best-deal-reasons div:hover{
    transform:translateY(-2px);
    border-color:rgba(0,107,255,.18);
    box-shadow:0 10px 24px rgba(6,18,58,.07);
}

.best-deal-reasons strong{
    display:block;
    margin-bottom:6px;

    color:#06123a;
    font-size:14px;
}

.best-deal-reasons span{
    display:block;

    color:#667085;
    line-height:1.45;
    font-size:13px;
}

.best-deal-alerts{
    margin-top:22px;
    display:flex;
    flex-direction:column;
    gap:14px;
}

.best-alert-row{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:14px;
    padding:16px;
    border-radius:16px;
    background:#f7faff;
    border:1px solid #dbe7ff;
}

.best-alert-row div{
    flex:1;
}

.best-alert-row strong{
    display:block;
    color:#06123a;
    font-size:14px;
    margin-bottom:5px;
}

.best-alert-row span{
    display:block;
    color:#61708d;
    font-size:12px;
    line-height:1.4;
}

.best-alert-row button{
    height:42px;
    padding:0 18px;
    border:0;
    border-radius:12px;
    background:#006BFF;
    color:#fff;
    font-weight:900;
    cursor:pointer;
    flex-shrink:0;
}

.best-alert-row input[type="number"]{
    margin-top:10px;
    width:120px;
    height:38px;
    border:1px solid #dce6f7;
    border-radius:10px;
    padding:0 12px;
    font-weight:700;
}

.best-alert-login{
    margin-top:18px;
    padding:18px;
    border-radius:16px;
    background:#f7faff;
    border:1px solid #dbe7ff;
}

.best-alert-login strong{
    display:block;
    color:#06123a;
    margin-bottom:8px;
}

.best-alert-login p{
    color:#61708d;
    font-size:13px;
    line-height:1.5;
    margin:0 0 14px;
}

.best-alert-login button{
    height:42px;
    padding:0 18px;
    border:0;
    border-radius:12px;
    background:#006BFF;
    color:#fff;
    font-weight:900;
    cursor:pointer;
}
.offer-votes{
    display:flex;
    align-items:center;
    gap:8px;
}

.offer-votes form{
    margin:0;
}

.offer-vote-btn{
    height:36px;
    min-width:58px;
    padding:0 10px;
    border-radius:999px;
    border:0;
    cursor:pointer;

    display:flex;
    align-items:center;
    justify-content:center;
    gap:6px;

    font-weight:900;
    font-size:13px;

    transition:.15s ease;
}

.offer-vote-btn span{
    font-size:12px;
}

.offer-vote-btn--fun{
    background:#ecfdf3;
    color:#15803d;
}

.offer-vote-btn--fun:hover{
    transform:translateY(-1px);
    background:#d1fae5;
}

.offer-vote-btn--malus{
    background:#fff1f2;
    color:#be123c;
}

.offer-vote-btn--malus:hover{
    transform:translateY(-1px);
    background:#ffe4e6;
}
.offer-vote-btn.is-active{
    outline:3px solid rgba(0,107,255,.22);
    transform:translateY(-1px);
}

.offer-vote-btn--fun.is-active{
    background:#bbf7d0;
    color:#166534;
}

.offer-vote-btn--malus.is-active{
    background:#fecdd3;
    color:#9f1239;
}

.product-media-thumbs img{
    width:100% !important;
    height:100% !important;
    max-width:none !important;
    max-height:none !important;
    object-fit:cover !important;
}

.product-media-thumb{
    width:72px !important;
    height:52px !important;
    flex:0 0 72px;
}

.product-top-card{
    display:flex;
    align-items:flex-start;
    gap:24px;
}

.product-media-zone{
    width:340px;
    flex-shrink:0;
}

.product-description-card--top{
    flex:1;
    margin:0;
}

@media(max-width:1000px){

    .product-top-card{
        flex-direction:column;
    }

    .product-media-zone{
        width:100%;
    }

}

.product-mid-grid{
    margin-top:24px;
    display:grid;
    grid-template-columns:minmax(0, 1fr) 400px;
    gap:26px;
    align-items:start;
}

.product-mid-grid .product-offers-section,
.product-mid-grid .product-info-card{
    margin-top:0;
}

.product-info-card--mid{
    align-self:start;
}

@media(max-width:1200px){
    .product-mid-grid{
        grid-template-columns:1fr;
    }
}
.best-deal-card{
    padding:22px !important;
}

.best-deal-alerts{
    gap:10px !important;
    margin-top:16px !important;
}

.best-alert-row{
    padding:12px !important;
    border-radius:14px !important;
}

.best-alert-row strong{
    font-size:13px !important;
    margin-bottom:3px !important;
}

.best-alert-row span{
    font-size:11px !important;
    line-height:1.25 !important;
}

.best-alert-row button{
    height:36px !important;
    padding:0 14px !important;
    font-size:12px !important;
}

.best-alert-row input[type="number"]{
    height:34px !important;
    width:95px !important;
    margin-top:6px !important;
}

.product-mid-grid{
    margin-top:18px !important;
}

.product-bottom-grid{
    margin-top:18px !important;
}

.product-image-card--compact{
    height:300px !important;
}

.product-image-card--compact img{
    max-height:280px !important;
    max-width:100% !important;
    object-fit:contain !important;
}

.product-title-actions{
    display:flex;
    flex-wrap:wrap;
    gap:10px;
    margin:12px 0 18px;
}

.product-title-action{
    height:34px;
    padding:0 13px;
    border:0;
    border-radius:999px;
    background:#006BFF;
    color:#fff;
    font-size:12px;
    font-weight:900;
    cursor:pointer;
    display:inline-flex;
    align-items:center;
    gap:7px;
}

.product-title-action span{
    width:18px;
    height:18px;
    border-radius:50%;
    background:rgba(255,255,255,.22);
    display:inline-flex;
    align-items:center;
    justify-content:center;
    font-size:14px;
    line-height:1;
}

.product-title-action--secondary{
    background:#eef4ff;
    color:#006BFF;
    border:1px solid #cfe0ff;
}

.product-title-action--secondary span{
    background:#dceaff;
}

.product-header-top{
    margin:0 0 18px;
}

.product-header-top__content{
    background:#fff;
    border:1px solid #e8eef8;
    border-radius:24px;
    padding:24px 28px;
    box-shadow:0 10px 30px rgba(6,18,58,.05);
}

.product-main-title{
    margin:0 0 14px;
    color:#06123a;
    font-size:40px;
    line-height:1.08;
    font-weight:900;
}

.product-top-card--horizontal{
    display:grid !important;
    grid-template-columns:460px minmax(0, 1fr);
    gap:24px;
    align-items:stretch;
}

.product-image-card--compact{
    height:480px !important;
}

.product-image-card--compact img{
    max-height:450px !important;
    max-width:100% !important;
    object-fit:contain !important;
}

.product-description-card--top{
    padding:26px !important;
}

.product-description-card--top h2{
    margin-top:0 !important;
}

.product-description-text{
    max-height:230px;
    overflow:hidden;
    position:relative;
}

.product-description-text.is-expanded{
    max-height:none;
}

.product-read-more{
    margin-top:12px;
    border:0;
    background:none;
    color:#006BFF;
    font-weight:900;
    cursor:pointer;
    padding:0;
}
.product-description-card--top .product-read-more{
    display:inline-flex !important;
    align-items:center;
    justify-content:center;
    margin-top:12px !important;
    width:max-content;
    min-height:34px;
    padding:0 14px !important;
    border:1px solid #cfe0ff !important;
    border-radius:999px !important;
    background:#eef4ff !important;
    color:#006BFF !important;
    font-size:12px !important;
    font-weight:900 !important;
    cursor:pointer !important;
}

.product-description-card--top .product-read-more:hover{
    background:#dceaff !important;
}

#toggleProductDescription{
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;

    margin-top:14px !important;
    width:auto !important;
    min-width:118px !important;
    height:36px !important;
    padding:0 16px !important;

    border:1px solid #cfe0ff !important;
    border-radius:999px !important;
    background:#eef4ff !important;
    color:#006BFF !important;

    font-size:13px !important;
    font-weight:900 !important;
    line-height:1 !important;

    cursor:pointer !important;
    appearance:none !important;
    -webkit-appearance:none !important;
}

#toggleProductDescription:hover{
    background:#dceaff !important;
}
/* Refonte douce haut fiche produit */

.product-header-top{
    margin:0 0 16px !important;
}

.product-header-top__content{
    background:transparent !important;
    border:0 !important;
    box-shadow:none !important;
    border-radius:0 !important;
    padding:0 !important;
}

.product-main-title{
    margin:0 0 12px !important;
    color:#06123a !important;
    font-size:38px !important;
    line-height:1.08 !important;
    font-weight:900 !important;
    letter-spacing:-.03em;
}

.product-title-actions{
    margin:0 0 18px !important;
}

.product-hero--compact{
    display:grid !important;
    grid-template-columns:minmax(0, 1fr) 420px !important;
    gap:28px !important;
    align-items:stretch !important;
}

.product-top-card--horizontal{
    display:grid !important;
    grid-template-columns:470px minmax(0, 1fr) !important;
    gap:0 !important;
    align-items:stretch !important;

    background:#fff !important;
    border:1px solid #e8eef8 !important;
    border-radius:24px !important;
    box-shadow:0 10px 30px rgba(6,18,58,.055) !important;
    overflow:hidden !important;
}

.product-media-zone{
    width:auto !important;
    padding:24px !important;
    border-right:1px solid #eef3fb !important;
    background:
        radial-gradient(circle at 50% 20%, rgba(0,107,255,.07), transparent 45%),
        #fff !important;

    display:flex !important;
    flex-direction:column !important;
    justify-content:center !important;
}

.product-image-card--compact{
    height:430px !important;
    padding:0 !important;
    background:transparent !important;
    border:0 !important;
    box-shadow:none !important;
    border-radius:0 !important;
}

.product-image-card--compact::before{
    display:none !important;
}

.product-image-card--compact img{
    max-height:410px !important;
    max-width:100% !important;
    object-fit:contain !important;
}

.product-description-card--top{
    padding:28px 30px !important;
    margin:0 !important;
    background:#fff !important;
    border:0 !important;
    box-shadow:none !important;
    border-radius:0 !important;

    display:flex !important;
    flex-direction:column !important;
}

.product-description-card--top h2{
    margin:0 0 14px !important;
    color:#2446a6 !important;
    font-size:20px !important;
    text-transform:uppercase !important;
}

.product-description-text{
    max-height:220px !important;
    overflow:hidden !important;
    position:relative !important;
}

.product-description-text p{
    font-size:14px !important;
    line-height:1.65 !important;
    color:#26364f !important;
}

.product-description-text::after{
    content:"";
    position:absolute;
    left:0;
    right:0;
    bottom:0;
    height:28px;
    background:linear-gradient(to bottom, rgba(255,255,255,0), #fff);
}

.product-description-text.is-expanded{
    max-height:none !important;
}

.product-description-text.is-expanded::after{
    display:none;
}

.product-consolefun-card{
    position:relative;
    overflow:hidden;
}

@media(max-width:1200px){

    .product-hero--compact{
        grid-template-columns:1fr !important;
    }

    .product-top-card--horizontal{
        grid-template-columns:420px minmax(0, 1fr) !important;
    }
}

@media(max-width:900px){

    .product-main-title{
        font-size:28px !important;
    }

    .product-top-card--horizontal{
        grid-template-columns:1fr !important;
    }

    .product-media-zone{
        border-right:0 !important;
        border-bottom:1px solid #eef3fb !important;
    }

    .product-image-card--compact{
        height:330px !important;
    }

    .product-image-card--compact img{
        max-height:310px !important;
    }
}

.product-consolefun-card{
    margin-top:auto !important;
    padding:18px !important;
    border-radius:20px !important;
    background:
        radial-gradient(circle at top left, rgba(0,107,255,.16), transparent 34%),
        linear-gradient(135deg, #f6faff, #ffffff) !important;
    border:1px solid #d8e8ff !important;
    display:flex !important;
    align-items:center !important;
    justify-content:space-between !important;
    gap:18px !important;
}

.product-consolefun-card strong{
    display:block;
    color:#06123a;
    font-size:15px;
    margin-bottom:6px;
}

.product-consolefun-card span{
    display:block;
    color:#52627a;
    font-size:13px;
    line-height:1.45;
    font-weight:700;
}

.product-consolefun-card a{
    flex-shrink:0;
    height:40px;
    padding:0 16px;
    border-radius:999px;
    background:linear-gradient(135deg, #006BFF, #0047ff);
    color:#fff;
    font-size:12px;
    font-weight:900;
    display:flex;
    align-items:center;
    justify-content:center;
    box-shadow:0 10px 20px rgba(0,107,255,.18);
}

.product-consolefun-card::before{
    content:"";
    width:52px;
    height:52px;
    flex:0 0 52px;

    border-radius:16px;

    background:
        url('/images/icone-consolefun.jpg')
        center center / cover no-repeat;

    box-shadow:0 8px 20px rgba(6,18,58,.16);
}

.product-consolefun-card{
    position:relative;
    overflow:hidden;
}

.product-consolefun-card::after{
    content:"";
    position:absolute;
    right:-40px;
    bottom:-40px;
    width:140px;
    height:140px;
    border-radius:50%;

    background:
        radial-gradient(circle, rgba(0,107,255,.10), transparent 70%);
}

.product-content-grid{
    margin-top:18px !important;
    display:grid !important;
    grid-template-columns:minmax(0, 1fr) 400px !important;
    gap:26px !important;
    align-items:start !important;
}

.product-content-left,
.product-content-right{
    display:flex !important;
    flex-direction:column !important;
    gap:18px !important;
}

.product-content-grid .product-offers-section,
.product-content-grid .product-reviews-section,
.product-content-grid .product-info-card,
.product-content-grid .product-alerts-card{
    margin-top:0 !important;
    margin-bottom:0 !important;
}

.product-mid-grid,
.product-bottom-grid{
    display:contents !important;
}

@media(max-width:1200px){
    .product-content-grid{
        grid-template-columns:1fr !important;
    }
}

.product-about-details{
    margin-top:18px;
    padding-top:16px;
    border-top:1px solid #eef3fb;
}

.product-about-details dl{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:12px 18px;
    margin:0;
}

.product-about-details div{
    background:#f8fbff;
    border:1px solid #e8eef8;
    border-radius:14px;
    padding:12px;
}

.product-about-details dt{
    color:#667085;
    font-size:11px;
    font-weight:900;
    text-transform:uppercase;
    margin-bottom:5px;
}

.product-about-details dd{
    margin:0;
    color:#06123a;
    font-size:13px;
    font-weight:900;
}

@media(max-width:768px){
    .product-about-details dl{
        grid-template-columns:1fr;
    }
}
.product-about-details--hidden{
    display:none;
}

.product-about-details--hidden.is-visible{
    display:block;
}



/* MODALE LISTES CADEAUX */

.wishlist-modal{
    position:fixed;
    inset:0;
    z-index:99999;

    display:none;
    align-items:center;
    justify-content:center;

    padding:20px;
}

.wishlist-modal.is-visible{
    display:flex;
}

.wishlist-modal__overlay{
    position:absolute;
    inset:0;

    background:rgba(3,10,34,.72);
    backdrop-filter:blur(8px);
}

.wishlist-modal__content{
    position:relative;
    z-index:2;

    width:100%;
    max-width:760px;
    max-height:90vh;

    overflow:auto;

    border-radius:28px;

    background:
        radial-gradient(circle at top right, rgba(0,107,255,.10), transparent 28%),
        #fff;

    box-shadow:0 24px 70px rgba(0,0,0,.28);

    padding:28px;
}

.wishlist-modal__close{
    position:absolute;
    top:16px;
    right:16px;

    width:40px;
    height:40px;

    border:0;
    border-radius:50%;

    background:#f1f5f9;
    color:#06123a;

    font-size:22px;
    cursor:pointer;
}

.wishlist-modal__header{
    margin-bottom:24px;
}

.wishlist-modal__product{
    display:flex;
    align-items:center;
    gap:18px;
}

.wishlist-modal__product img{
    width:92px;
    height:92px;
    object-fit:contain;

    border-radius:18px;
    background:#f8fbff;
    padding:10px;
}

.wishlist-modal__product span{
    display:block;
    color:#667085;
    font-size:13px;
    font-weight:900;
    margin-bottom:6px;
}

.wishlist-modal__product strong{
    color:#06123a;
    font-size:26px;
    line-height:1.15;
}

.wishlist-modal__lists{
    display:grid;
    grid-template-columns:repeat(auto-fit, minmax(220px, 1fr));
    gap:14px;

    margin-bottom:28px;
}

.wishlist-modal__card{
    margin:0;
}

.wishlist-modal__card button{
    width:100%;
    text-align:left;

    border:1px solid #e8eef8;
    border-radius:22px;

    background:#fff;

    padding:18px;

    cursor:pointer;

    transition:.18s ease;
}

.wishlist-modal__card button:hover{
    transform:translateY(-3px);

    border-color:rgba(0,107,255,.25);

    box-shadow:0 16px 34px rgba(6,18,58,.08);
}

.wishlist-modal__card-top span{
    display:inline-flex;

    margin-bottom:12px;

    padding:7px 10px;

    border-radius:999px;

    background:#eef4ff;
    color:#006BFF;

    font-size:11px;
    font-weight:900;
}

.wishlist-modal__card-top strong{
    display:block;

    color:#06123a;

    font-size:18px;
    line-height:1.3;

    margin-bottom:8px;
}

.wishlist-modal__card small{
    color:#667085;
    font-size:12px;
    font-weight:900;
}

.wishlist-modal__create{
    border-top:1px solid #eef3fb;
    padding-top:24px;
}

.wishlist-modal__create h3{
    color:#06123a;
    margin-bottom:16px;
}

.wishlist-modal__create-form{
    display:grid;
    grid-template-columns:1.5fr 1fr auto;
    gap:12px;
}

.wishlist-modal__create-form input,
.wishlist-modal__create-form select{
    height:46px;

    border:1px solid #dbe7ff;
    border-radius:14px;

    padding:0 14px;

    font-weight:800;
}

.wishlist-modal__create-form button{
    border:0;
    border-radius:14px;

    background:#006BFF;
    color:#fff;

    padding:0 18px;

    font-weight:900;
    cursor:pointer;
}

@media(max-width:768px){

    .wishlist-modal__content{
        padding:22px;
        border-radius:24px;
    }

    .wishlist-modal__product{
        align-items:flex-start;
    }

    .wishlist-modal__product strong{
        font-size:20px;
    }

    .wishlist-modal__create-form{
        grid-template-columns:1fr;
    }
}

.product-title-action--gift{
    background:linear-gradient(135deg, #006BFF, #0047ff) !important;
    color:#fff !important;
    border:0 !important;
    box-shadow:0 10px 22px rgba(0,107,255,.22);
}

.product-title-action--gift:hover{
    transform:translateY(-1px);
    box-shadow:0 14px 28px rgba(0,107,255,.30);
}

.product-title-action--gift span{
    background:rgba(255,255,255,.22) !important;
    color:#fff !important;
}

.profile-wishlist-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit, minmax(135px, 1fr));
    gap:14px;
}

.profile-wishlist-card{
    display:block;
    border:1px solid #e8eef8;
    border-radius:18px;
    padding:12px;
    background:#f8fbff;
    transition:.18s ease;
}

.profile-wishlist-card:hover{
    transform:translateY(-3px);
    border-color:rgba(0,107,255,.25);
    box-shadow:0 12px 26px rgba(6,18,58,.08);
}

.profile-wishlist-card__image{
    height:130px;
    border-radius:14px;
    background:#fff;
    display:flex;
    align-items:center;
    justify-content:center;
    overflow:hidden;
    margin-bottom:10px;
}

.profile-wishlist-card__image img{
    width:100%;
    height:100%;
    object-fit:contain;
}

.profile-wishlist-card strong{
    display:block;
    color:#06123a;
    font-size:13px;
    line-height:1.35;
    margin-bottom:5px;
}

.profile-wishlist-card small{
    display:block;
    color:#006BFF;
    font-size:11px;
    font-weight:900;
    margin-bottom:6px;
}

.profile-wishlist-card > span{
    display:block;
    color:#ef233c;
    font-size:14px;
    font-weight:900;
}

.best-alert-row button.is-active{
    background:linear-gradient(135deg, #10b981, #059669);
    box-shadow:0 8px 18px rgba(16,185,129,.22);
}

.best-alert-row button.is-active:hover{
    transform:none;
}

.best-alert-current-price{
    margin-top:6px;
    color:#059669 !important;
    font-weight:900;
}

/* BLOC VIDEO CONSOLEFUN PREMIUM */

.product-consolefun-video{
    margin-top:18px;
    display:grid;
    grid-template-columns:1fr;
    gap:14px;
    padding:18px;
    border-radius:22px;
    background:
        radial-gradient(circle at top left, rgba(0,107,255,.16), transparent 34%),
        linear-gradient(135deg, #f6faff, #ffffff);
    border:1px solid #d8e8ff;
    box-shadow:0 14px 34px rgba(6,18,58,.08);
    position:relative;
    overflow:hidden;
}

.product-consolefun-video__media,
.product-consolefun-video__content{
    position:relative;
    z-index:2;
}

.product-consolefun-video__thumb{
    width:100%;
    aspect-ratio:16 / 7.6;
    border:0;
    border-radius:18px;
    overflow:hidden;
    position:relative;
    cursor:pointer;
    padding:0;
    background:#06123a;
    box-shadow:0 14px 28px rgba(6,18,58,.18);
}

.product-consolefun-video__thumb img{
    width:100%;
    height:100%;
    object-fit:cover;
    display:block;
}

.product-consolefun-video__play{
    position:absolute;
    left:50%;
    top:50%;
    transform:translate(-50%, -50%);
    width:62px;
    height:62px;
    border-radius:50%;
    background:rgba(255,255,255,.95);
    color:#006BFF;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:25px;
    font-weight:900;
    box-shadow:0 14px 30px rgba(0,0,0,.22);
    padding-left:4px;
}

.product-consolefun-video__badge{
    position:absolute;
    left:14px;
    top:14px;
    height:28px;
    padding:0 11px;
    border-radius:999px;
    background:#ef233c;
    color:#fff;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:11px;
    font-weight:900;
}

.product-consolefun-video__content{
    display:block;
}

.product-consolefun-video__kicker{
    display:block;
    color:#006BFF;
    font-size:12px;
    font-weight:900;
    text-transform:uppercase;
    margin-bottom:5px;
}

.product-consolefun-video__content strong{
    display:block;
    color:#06123a;
    font-size:18px;
    line-height:1.25;
    margin-bottom:7px;
}

.product-consolefun-video__content p{
    margin:0 0 14px;
    color:#52627a;
    font-size:13px;
    line-height:1.45;
    font-weight:700;
}

.product-consolefun-video__actions{
    width:100%;
}

.product-consolefun-video__btn{
    width:100%;
    min-height:44px;
    border-radius:999px;
    background:linear-gradient(135deg, #006BFF, #0047ff);
    color:#fff;
    display:flex;
    align-items:center;
    justify-content:center;
    text-align:center;
    font-size:13px;
    font-weight:900;
    box-shadow:0 10px 20px rgba(0,107,255,.18);
}

.product-consolefun-video__btn--secondary{
    margin-top:8px;
    background:#eef4ff;
    color:#006BFF;
    border:1px solid #cfe0ff;
    box-shadow:none;
}

.product-consolefun-video__iframe{
    width:100%;
    height:100%;
    border:0;
    display:block;
}

.product-consolefun-admin-btn{
    margin:14px 0 0;
    height:40px;
    padding:0 16px;
    border:0;
    border-radius:999px;
    background:#06123a;
    color:#fff;
    font-size:12px;
    font-weight:900;
    cursor:pointer;
    box-shadow:0 10px 22px rgba(6,18,58,.16);
}

.product-consolefun-admin-btn:hover{
    background:#006BFF;
}

.consolefun-admin-modal{
    position:fixed;
    inset:0;
    z-index:999999;
    display:none;
    align-items:center;
    justify-content:center;
    padding:20px;
}

.consolefun-admin-modal.is-visible{
    display:flex;
}

.consolefun-admin-modal__overlay{
    position:absolute;
    inset:0;
    background:rgba(3,10,34,.72);
    backdrop-filter:blur(8px);
}

.consolefun-admin-modal__content{
    position:relative;
    z-index:2;
    width:100%;
    max-width:620px;
    max-height:90vh;
    overflow:auto;
    border-radius:26px;
    background:#fff;
    padding:28px;
    box-shadow:0 24px 70px rgba(0,0,0,.28);
}

.consolefun-admin-modal__close{
    position:absolute;
    top:16px;
    right:16px;
    width:38px;
    height:38px;
    border:0;
    border-radius:50%;
    background:#f1f5f9;
    color:#06123a;
    font-size:22px;
    cursor:pointer;
}

.consolefun-admin-modal__content h2{
    margin:0 0 20px;
    color:#06123a;
    font-size:24px;
}

.consolefun-admin-form{
    display:grid;
    gap:14px;
}

.consolefun-admin-form label{
    display:grid;
    gap:7px;
    color:#394963;
    font-size:13px;
    font-weight:900;
}

.consolefun-admin-form input,
.consolefun-admin-form select{
    height:44px;
    border:1px solid #dbe7ff;
    border-radius:14px;
    padding:0 14px;
    font-weight:800;
}

.consolefun-admin-form button[type="submit"]{
    height:46px;
    border:0;
    border-radius:14px;
    background:#006BFF;
    color:#fff;
    font-weight:900;
    cursor:pointer;
}

.product-consolefun-card{
    margin-top:14px !important;
}

.product-description-card--top .product-consolefun-card{
    margin-top:12px !important;
}
/* ===== CONSOLEFUN WIDE ===== */

.product-consolefun-wide{
    margin:22px 0 30px;
}

.product-consolefun-wide__admin{
    margin-bottom:12px;
}

.product-consolefun-wide__inner{
    display:grid;
    grid-template-columns:460px minmax(0, 1fr);
    gap:28px;
    align-items:center;

    background:#fff;
    border:1px solid #e4ecf8;
    border-radius:24px;
    padding:24px;

    box-shadow:0 12px 34px rgba(6,18,58,.07);
}

.product-consolefun-wide__media{
    position:relative;
    overflow:hidden;
    border-radius:20px;
    background:#f4f8ff;
}

.product-consolefun-wide__media img{
    width:100%;
    aspect-ratio:16 / 9;
    object-fit:cover;
    display:block;
}

.product-consolefun-wide__thumb{
    border:0;
    background:none;
    padding:0;
    width:100%;
    display:block;
    cursor:pointer;
    position:relative;
}

.product-consolefun-wide__play{
    position:absolute;
    left:50%;
    top:50%;
    transform:translate(-50%, -50%);

    width:72px;
    height:72px;
    border-radius:50%;

    background:#fff;
    color:#006BFF;

    display:flex;
    align-items:center;
    justify-content:center;

    font-size:28px;
    font-weight:900;

    box-shadow:0 12px 28px rgba(6,18,58,.22);
}

.product-consolefun-wide__badge{
    position:absolute;
    top:14px;
    left:14px;

    background:#ff2d55;
    color:#fff;

    padding:7px 12px;
    border-radius:999px;

    font-size:12px;
    font-weight:900;
}

.product-consolefun-wide__kicker{
    display:block;
    margin-bottom:8px;

    color:#006BFF;
    font-size:13px;
    font-weight:900;
    text-transform:uppercase;
}

.product-consolefun-wide__content h2{
    margin:0 0 12px;

    color:#06123a;
    font-size:28px;
    line-height:1.15;
}

.product-consolefun-wide__content p{
    margin:0 0 20px;

    color:#52627a;
    font-size:15px;
    line-height:1.65;
}

.product-consolefun-wide__actions{
    display:flex;
    flex-wrap:wrap;
    gap:12px;
}

.product-consolefun-wide__btn{
    min-height:48px;
    padding:0 22px;

    border-radius:14px;

    background:#006BFF;
    color:#fff;

    display:inline-flex;
    align-items:center;
    justify-content:center;

    font-weight:900;
}

.product-consolefun-wide__btn--secondary{
    background:#eef4ff;
    color:#006BFF;
    border:1px solid #cfe0ff;
}

@media(max-width:1000px){

    .product-consolefun-wide__inner{
        grid-template-columns:1fr;
    }

    .product-consolefun-wide__content h2{
        font-size:22px;
    }

    .product-consolefun-wide__btn{
        width:100%;
    }
}

/* Correctif alignement haut fiche produit */

.product-media-zone{
    justify-content:flex-start !important;
    padding-top:34px !important;
}

.product-image-card--compact{
    height:auto !important;
    min-height:0 !important;
    margin-top:0 !important;
}

.product-image-card--compact img{
    max-height:390px !important;
}

.product-media-thumbs{
    width:100% !important;
    display:flex !important;
    justify-content:center !important;
    align-items:center !important;
    margin-top:22px !important;
    gap:10px !important;
}

.product-media-thumb{
    margin:0 !important;
}
/* Réduction du texte quand vidéo ConsoleFun présente */

.product-description-card--top:has(.product-consolefun-video)
.product-description-text{
    max-height:84px !important;
}

.best-deal-price-zone{
    margin-bottom:12px;
}

.best-deal-card__official-price{
    display:inline-block;
    margin-bottom:4px;
    color:#8a94a6;
    font-size:16px;
    font-weight:900;
    text-decoration:line-through;
}

.best-deal-card__discount-row{
    display:flex;
    flex-wrap:wrap;
    gap:8px;
    align-items:center;
    margin-top:8px;
}

.best-deal-card__discount-row span{
    display:inline-flex;
    align-items:center;
    height:28px;
    padding:0 10px;
    border-radius:999px;
    background:#ffe9ec;
    color:#ef233c;
    font-size:13px;
    font-weight:900;
}

.best-deal-card__discount-row strong{
    display:inline-flex;
    align-items:center;
    height:28px;
    padding:0 10px;
    border-radius:999px;
    background:#e9fbf0;
    color:#116b35;
    font-size:12px;
    font-weight:900;
}

/* COMMENTAIRES COMMUNAUTÉ PRODUIT */

.product-reviews-section{
    background:
        radial-gradient(circle at top left, rgba(0,107,255,.07), transparent 30%),
        #fff;
    border:1px solid #e4ecf8;
    border-radius:24px;
    padding:24px;
    box-shadow:0 12px 34px rgba(6,27,70,.07);
}

.product-reviews-section .section-header h2{
    margin:0 0 18px;
    color:#06123a;
    font-size:22px;
    text-transform:none;
}

.product-comment-form{
    display:grid;
    gap:12px;
    padding:16px;
    margin-bottom:22px;
    border-radius:20px;
    background:#f8fbff;
    border:1px solid #dbe7ff;
}

.product-comment-form textarea{
    width:100%;
    min-height:105px;
    border:1px solid #dbe7ff;
    border-radius:16px;
    padding:15px;
    resize:vertical;
    font-family:inherit;
    font-size:14px;
    line-height:1.5;
    color:#06123a;
    background:#fff;
}

.product-comment-form textarea:focus{
    outline:none;
    border-color:#006BFF;
    box-shadow:0 0 0 4px rgba(0,107,255,.10);
}

.product-comment-form button{
    justify-self:end;
    min-width:210px;
    height:42px;
    border:0;
    border-radius:999px;
    background:linear-gradient(135deg, #006BFF, #0047ff);
    color:#fff;
    font-size:13px;
    font-weight:900;
    cursor:pointer;
    box-shadow:0 10px 20px rgba(0,107,255,.18);
}

.review-list{
    display:grid;
    gap:12px;
}

.review-item--community{
    display:flex;
    gap:14px;
    align-items:flex-start;
    padding:16px;
    border:1px solid #edf2fb;
    border-radius:20px;
    background:#fff;
}

.review-item__avatar{
    width:48px;
    height:48px;
    border-radius:50%;
    overflow:hidden;
    flex-shrink:0;
    background:#eef4ff;
    border:2px solid #fff;
    box-shadow:0 8px 18px rgba(6,18,58,.12);
}

.review-item__avatar img{
    width:100%;
    height:100%;
    object-fit:cover;
}

.review-item__content{
    flex:1;
    min-width:0;
}

.review-item__top{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    margin-bottom:7px;
}

.review-item__top strong{
    margin:0;
    color:#06123a;
    font-size:14px;
}

.review-item__top span{
    color:#8a94a6;
    font-size:12px;
    font-weight:800;
}

.review-item__content p{
    margin:0;
    color:#394963;
    font-size:14px;
    line-height:1.55;
}

.product-empty-card{
    border:1px dashed #cfe0ff;
    background:#f8fbff;
    border-radius:18px;
    padding:18px;
    color:#52627a;
    font-weight:800;
}

.product-comment-login{
    display:flex;
    align-items:center;
    justify-content:center;
    min-height:74px;
    margin-bottom:18px;
    padding:18px;
    border-radius:20px;
    background:
        radial-gradient(circle at top left, rgba(0,107,255,.08), transparent 35%),
        #f8fbff;
    border:1px solid #dbe7ff;
    color:#52627a;
    font-size:14px;
    font-weight:900;
    text-align:center;
}
.product-price-history-card{
    background:#fff;
    border:1px solid #e4ecf8;
    border-radius:24px;
    padding:24px;
    box-shadow:0 12px 34px rgba(6,27,70,.07);
}

.product-price-history-card__header,
.product-price-history-card__stats{
    display:flex;
    justify-content:space-between;
    gap:16px;
    flex-wrap:wrap;
}

.product-price-history-card__header span,
.product-price-history-card__stats span{
    color:#006BFF;
    font-size:12px;
    font-weight:900;
    text-transform:uppercase;
}

.product-price-history-card__header h2{
    margin:5px 0 0;
    color:#06123a;
    font-size:22px;
}

.product-price-history-card__best strong,
.product-price-history-card__stats strong{
    display:block;
    color:#ef233c;
    font-size:22px;
    font-weight:900;
}

.product-price-history-card__stats small{
    display:block;
    margin-top:5px;
    color:#667085;
    font-size:12px;
    font-weight:800;
}

.product-price-history-card__chart{
    margin:22px 0;
    padding:14px;
    border-radius:20px;
    background:#f8fbff;
    border:1px solid #e8eef8;
}

.product-price-history-card__chart svg{
    width:100%;
    height:auto;
    display:block;
}

.price-history-axis{
    stroke:#dbe7ff;
    stroke-width:2;
}

.price-history-line{
    fill:none;
    stroke:#006BFF;
    stroke-width:4;
    stroke-linecap:round;
    stroke-linejoin:round;
}

.price-history-dot{
    fill:#fff;
    stroke:#006BFF;
    stroke-width:3;
}

.product-price-history-card__stats > div{
    flex:1;
    min-width:180px;
    padding:14px;
    border-radius:18px;
    background:#f8fbff;
    border:1px solid #e8eef8;
}

.product-price-history-card__stats strong.is-good{
    color:#059669;
}

@media(max-width:768px){
    .product-price-history-card{
        padding:18px;
        border-radius:20px;
    }

    .product-price-history-card__header h2{
        font-size:18px;
    }
}

.product-admin-quickbar{
    display:flex;
    flex-wrap:wrap;
    gap:8px;
    margin:4px 0 0;
    padding:12px;
    border-radius:18px;
    background:#06123a;
    border:1px solid rgba(255,255,255,.12);
    box-shadow:0 10px 26px rgba(6,18,58,.14);
}

.product-admin-quickbar a{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:34px;
    padding:0 13px;
    border-radius:999px;
    background:#006BFF;
    color:#fff;
    font-size:12px;
    font-weight:900;
    text-decoration:none;
}

.product-admin-quickbar a:hover{
    background:#004fc4;
    transform:translateY(-1px);
}

@media(max-width:768px){
    .product-admin-quickbar{
        display:grid;
        grid-template-columns:1fr;
    }

    .product-admin-quickbar a{
        width:100%;
    }
}


/* =========================================================
   DEALFUN - REPRISE PREMIUM FICHE PRODUIT
   Offres, stocks, bon plan manuel, produits similaires
   ========================================================= */

/* Badges stock différenciés */

.stock-badge{
    margin-bottom:0 !important;
    text-transform:none !important;
    letter-spacing:0 !important;
}

.stock-badge.is-stock{
    background:#e8fff1 !important;
    color:#0a7a37 !important;
}

.stock-badge.is-preorder{
    background:#f0eaff !important;
    color:#5b21b6 !important;
}

.stock-badge.is-out{
    background:#ffe8ec !important;
    color:#be123c !important;
}

.stock-badge.is-soon{
    background:#fff7e6 !important;
    color:#a16207 !important;
}

.stock-badge.is-unknown{
    background:#eef2f7 !important;
    color:#52627a !important;
}

/* Bon plan du moment */

.best-deal-card .stock-badge{
    margin:8px 0 18px !important;
}

.best-deal-card__manual{
    display:inline-flex;
    align-items:center;
    gap:7px;
    min-height:28px;
    padding:0 10px;
    margin-bottom:12px;
    border-radius:999px;
    background:#fff7e6;
    color:#a16207;
    font-size:12px;
    font-weight:900;
}

/* Refonte premium des offres */

.product-offers-section--premium{
    padding:26px !important;
    border:1px solid #e4ecf8 !important;
    border-radius:26px !important;
    background:
        radial-gradient(circle at top left, rgba(0,107,255,.06), transparent 28%),
        #fff !important;
    box-shadow:0 14px 38px rgba(6,27,70,.07) !important;
}

.product-offers-header-premium{
    display:flex !important;
    align-items:flex-start !important;
    justify-content:space-between !important;
    gap:16px !important;
    margin-bottom:20px !important;
}

.product-offers-header-premium h2{
    margin:3px 0 0 !important;
    color:#06123a !important;
    font-size:22px !important;
    line-height:1.2 !important;
    text-transform:uppercase !important;
}

.product-offers-header-premium__kicker{
    display:block;
    color:#006BFF;
    font-size:12px;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:.03em;
}

.product-offers-header-premium small{
    color:#667085;
    font-size:12px;
    font-weight:900;
    white-space:nowrap;
}

.product-offers-table--premium{
    gap:12px !important;
}

.product-offer-row--premium{
    position:relative;
    display:grid !important;
    grid-template-columns:minmax(230px, 1.2fr) 150px minmax(190px, 1fr) 120px 135px !important;
    gap:18px !important;
    align-items:center !important;
    padding:18px !important;
    border:1px solid #e8eef8 !important;
    border-radius:22px !important;
    background:#fff !important;
    box-shadow:0 8px 22px rgba(6,18,58,.04);
    overflow:hidden;
}

.product-offer-row--premium.is-highlighted{
    border-color:#006BFF !important;
    background:
        linear-gradient(90deg, rgba(0,107,255,.055), rgba(255,255,255,1) 42%),
        #fff !important;
    box-shadow:0 16px 34px rgba(0,107,255,.10) !important;
}

.product-offer-ribbon{
    position:absolute;
    left:0;
    top:0;
    height:28px;
    padding:0 12px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-bottom-right-radius:12px;
    background:#006BFF;
    color:#fff;
    font-size:10px;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:.03em;
}

.product-offer-merchant{
    display:flex;
    align-items:center;
    gap:14px;
    min-width:0;
    padding-top:8px;
}

.product-offer-logo{
    width:58px;
    height:58px;
    flex:0 0 58px;
    border-radius:16px;
    background:#f8fbff;
    border:1px solid #e8eef8;
    display:flex;
    align-items:center;
    justify-content:center;
    overflow:hidden;
    box-shadow:0 8px 18px rgba(6,18,58,.06);
}

.product-offer-logo img{
    width:100%;
    height:100%;
    object-fit:contain;
    padding:8px;
}

.product-offer-logo span{
    color:#006BFF;
    font-size:16px;
    font-weight:900;
}

.product-offer-merchant strong{
    display:block;
    color:#06123a !important;
    font-size:15px !important;
    margin-bottom:7px;
}

.product-offer-price-zone{
    display:flex;
    align-items:center;
    gap:8px;
    flex-wrap:wrap;
}

.product-offer-price{
    color:#ef233c !important;
    font-size:25px !important;
    font-weight:900 !important;
    line-height:1 !important;
}

.product-offer-discount{
    display:inline-flex;
    align-items:center;
    height:24px;
    padding:0 8px;
    border-radius:999px;
    background:#ffe8ec;
    color:#ef233c;
    font-size:12px;
    font-weight:900;
}

.product-offer-bonus{
    min-height:54px;
    display:flex;
    align-items:center;
    gap:10px;
    padding:12px;
    border-radius:16px;
    background:#f8fbff;
    border:1px solid #e8eef8;
}

.product-offer-bonus span:first-child{
    font-size:20px;
}

.product-offer-bonus strong{
    color:#06123a;
    font-size:13px;
    line-height:1.35;
}

.product-offer-bonus__empty{
    color:#8a94a6 !important;
    font-size:12px !important;
    font-weight:800 !important;
}

.product-offer-votes{
    justify-content:center;
}

.product-offer-action{
    display:flex !important;
    justify-content:flex-end !important;
    align-items:center !important;
}

.product-offer-row--premium .product-offer-btn{
    width:100%;
    min-height:44px;
    border-radius:14px !important;
}

/* Produits similaires horizontaux */

.similar-products-section{
    border:1px solid #e4ecf8 !important;
    border-radius:26px !important;
    box-shadow:0 14px 38px rgba(6,27,70,.07) !important;
}

.similar-products-section .section-header{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:16px;
    margin-bottom:18px;
}

.similar-products-section .section-header h2{
    margin:0;
    color:#06123a;
    font-size:22px;
    text-transform:uppercase;
}

.similar-products-grid{
    display:flex !important;
    gap:16px !important;
    overflow-x:auto !important;
    padding:4px 4px 12px !important;
    scroll-snap-type:x mandatory;
}

.similar-product-card{
    min-width:190px !important;
    max-width:190px !important;
    border-radius:20px !important;
    scroll-snap-align:start;
}

.similar-product-card__image{
    height:170px !important;
    border-radius:16px !important;
}

.similar-product-card h3{
    min-height:44px !important;
    font-size:13px !important;
}

.similar-product-card strong{
    color:#ef233c !important;
    font-size:18px !important;
}

.similar-product-stock{
    display:inline-flex;
    align-items:center;
    height:24px;
    padding:0 8px;
    margin-top:8px;
    border-radius:999px;
    font-size:11px;
    font-weight:900;
}

.similar-product-stock.is-stock{
    background:#e8fff1;
    color:#0a7a37;
}

.similar-product-stock.is-preorder{
    background:#f0eaff;
    color:#5b21b6;
}

.similar-product-stock.is-out{
    background:#ffe8ec;
    color:#be123c;
}

.similar-product-stock.is-soon{
    background:#fff7e6;
    color:#a16207;
}

.similar-product-stock.is-unknown{
    background:#eef2f7;
    color:#52627a;
}

@media(max-width:1200px){
    .product-offer-row--premium{
        grid-template-columns:1fr 130px 1fr !important;
    }

    .product-offer-votes,
    .product-offer-action{
        grid-column:auto;
    }
}

@media(max-width:768px){
    .product-offers-section--premium{
        padding:18px !important;
    }

    .product-offers-header-premium{
        flex-direction:column;
    }

    .product-offer-row--premium{
        display:flex !important;
        flex-direction:column !important;
        align-items:stretch !important;
        gap:14px !important;
        padding:18px !important;
    }

    .product-offer-merchant{
        padding-top:18px;
    }

    .product-offer-price-zone{
        justify-content:space-between;
    }

    .product-offer-votes{
        justify-content:flex-start;
    }

    .product-offer-action{
        width:100%;
    }

    .similar-product-card{
        min-width:175px !important;
        max-width:175px !important;
    }
}
.best-deal-bonus{
    margin:12px 0 14px;
    padding:12px;
    border-radius:16px;
    background:#fff7e6;
    border:1px solid #ffe0a3;
}

.best-deal-bonus span{
    display:block;
    margin-bottom:4px;
    color:#8a5700;
    font-size:11px;
    font-weight:900;
    text-transform:uppercase;
}

.best-deal-bonus strong{
    display:block;
    color:#06123a;
    font-size:13px;
    line-height:1.35;
}
/* =========================================================
   CORRECTIFS RESPONSIVE FICHE PRODUIT
   ========================================================= */

@media(max-width:768px){

    .product-page{
        padding-left:12px !important;
        padding-right:12px !important;
        overflow-x:hidden;
    }

    .product-main-title{
        font-size:26px !important;
        line-height:1.12 !important;
        letter-spacing:-.02em !important;
    }

    .product-top-card--horizontal{
        border-radius:22px !important;
    }

    .product-description-card--top{
        padding:20px !important;
    }

    .product-description-text{
        max-height:150px !important;
    }

    .product-description-card--top:has(.product-consolefun-video) .product-description-text{
        max-height:105px !important;
    }

    /* Encadré ConsoleFun classique */
    .product-consolefun-card{
        margin-top:16px !important;
        padding:16px !important;
        display:grid !important;
        grid-template-columns:44px minmax(0, 1fr) !important;
        gap:12px !important;
        align-items:start !important;
        border-radius:18px !important;
    }

    .product-consolefun-card::before{
        width:44px !important;
        height:44px !important;
        flex:0 0 44px !important;
        border-radius:14px !important;
        grid-row:1 / span 2;
    }

    .product-consolefun-card::after{
        display:none !important;
    }

    .product-consolefun-card strong{
        font-size:14px !important;
        line-height:1.25 !important;
        margin-bottom:5px !important;
    }

    .product-consolefun-card span{
        font-size:12px !important;
        line-height:1.4 !important;
    }

    .product-consolefun-card a{
        grid-column:1 / -1;
        width:100%;
        height:42px;
        margin-top:4px;
        border-radius:14px;
        font-size:12px;
    }

    /* Vidéo ConsoleFun */
    .product-consolefun-video{
        padding:14px !important;
        border-radius:18px !important;
        margin-top:16px !important;
    }

    .product-consolefun-video__thumb{
        aspect-ratio:16 / 9 !important;
        border-radius:15px !important;
    }

    .product-consolefun-video__content strong{
        font-size:16px !important;
    }

    .product-consolefun-video__content p{
        font-size:12px !important;
    }

    /* Offres */
    .product-offer-logo{
        width:50px !important;
        height:50px !important;
        border-radius:15px !important;
    }

    .product-offer-price{
        font-size:24px !important;
    }

    .product-offer-bonus{
        min-height:auto !important;
    }

    /* Commentaires */
    .review-item--community{
        padding:14px !important;
        gap:12px !important;
    }

    .review-item__avatar{
        width:42px !important;
        height:42px !important;
    }

    .review-item__top{
        flex-direction:column;
        align-items:flex-start;
        gap:3px;
    }

    /* Historique prix */
    .product-price-history-card{
        padding:18px !important;
        border-radius:20px !important;
    }

    .product-price-history-card__stats{
        display:grid !important;
        grid-template-columns:1fr !important;
    }
}

@media(max-width:420px){

    .product-main-title{
        font-size:23px !important;
    }

    .product-title-actions{
        display:grid !important;
        grid-template-columns:1fr !important;
    }

    .product-title-action{
        width:100%;
        justify-content:center;
    }

    .product-consolefun-card{
        grid-template-columns:1fr !important;
        text-align:left;
    }

    .product-consolefun-card::before{
        grid-row:auto;
    }
}
.product-offer-admin-form{
    margin-top:8px;
    width:100%;
}

.product-offer-admin-form button{
    width:100%;
    min-height:34px;
    border:0;
    border-radius:999px;
    background:#06123a;
    color:#fff;
    font-size:11px;
    font-weight:900;
    cursor:pointer;
}

.product-offer-admin-form button:hover{
    background:#006BFF;
}

.product-offer-admin-selected{
    display:flex;
    align-items:center;
    justify-content:center;
    width:100%;
    min-height:34px;
    margin-top:8px;
    border-radius:999px;
    background:#fff7e6;
    color:#8a5700;
    font-size:11px;
    font-weight:900;
}