body.ce-kit-14{color:#333333;font-family:"Jost", sans-serif;font-size:18px;line-height:1.4em;}a, .elementor a{color:#B77D47;}a:hover, .elementor a:hover{color:#C98C4E;}body.ce-kit-14 h1{font-weight:500;}body.ce-kit-14 h2{font-weight:500;}body.ce-kit-14 h3{font-weight:500;}body.ce-kit-14 h4{font-weight:500;}body.ce-kit-14 h5{font-weight:500;}body.ce-kit-14 h6{font-weight:500;}body.ce-kit-14 .ce-display-small{font-size:20px;}body.ce-kit-14 .ce-display-medium{font-size:24px;}body.ce-kit-14 .ce-display-large{font-size:30px;}body.ce-kit-14 .ce-display-xl{font-size:40px;}body.ce-kit-14 .ce-display-xxl{font-family:"Josefin Sans", sans-serif;font-size:180px;font-weight:300;letter-spacing:-5px;}.elementor-button{font-family:"Jost", sans-serif;font-weight:400;letter-spacing:1.5px;--ce-btn-bg-color:#1D1D1F;background-color:var(--ce-btn-bg-color);}.elementor-button, a.elementor-button:not(#e){color:#FFFFFF;}.elementor-button:hover, .elementor-button:focus, a.elementor-button:not(#e):hover, a.elementor-button:not(#e):focus{color:#FFFFFF;}.elementor-button:hover, .elementor-button:focus{--ce-btn-bg-color:#000000;}.elementor-button.elementor-size-sm{border-radius:0px 0px 0px 0px;}.elementor-button.elementor-size-md{padding:20px 40px 20px 40px;border-radius:0px 0px 0px 0px;}.elementor-button.elementor-size-lg{border-radius:0px 0px 0px 0px;}.elementor-button.elementor-size-xl{border-radius:0px 0px 0px 0px;}.elementor-button.elementor-size-xs{border-radius:0px 0px 0px 0px;}.elementor-button-primary .elementor-button{--ce-btn-bg-color:#B77D47;background-color:var(--ce-btn-bg-color);}.elementor-button-primary .elementor-button:hover, .elementor-button-primary .elementor-button:focus{--ce-btn-bg-color:#C98C4E;}.btn:not(.btn-primary, .btn-secondary){font-family:"Jost", sans-serif;font-weight:400;letter-spacing:1.5px;background-color:#1D1D1F;padding:12px 24px 12px 24px;}.btn:not(.btn-primary, .btn-secondary), a.btn:not(.btn-primary, .btn-secondary){color:#FFFFFF;}.btn:not(.btn-primary, .btn-secondary):hover, .btn:not(.btn-primary, .btn-secondary):hover:active, .btn:not(.btn-primary, .btn-secondary):focus, a.btn:not(.btn-primary, .btn-secondary):hover, a.btn:not(.btn-primary, .btn-secondary):focus{color:#FFFFFF;}.btn:not(.btn-primary, .btn-secondary):hover, .btn:not(.btn-primary, .btn-secondary):hover:active, .btn:not(.btn-primary, .btn-secondary):focus{background-color:#000000;}.btn-primary{font-family:"Jost", sans-serif;font-weight:400;text-transform:none;letter-spacing:1.5px;background-color:#B77D47;padding:12px 24px 12px 24px;}.btn-primary, a.btn-primary{color:#FFFFFF;}.btn-primary:hover, .btn-primary:hover:active, .btn-primary:focus, a.btn-primary:hover, a.btn-primary:focus{color:#FFFFFF;}.btn-primary:hover, .btn-primary:hover:active, .btn-primary:focus{background-color:#C98C4E;}.btn-secondary{font-family:"Jost", sans-serif;font-weight:400;text-transform:none;letter-spacing:1.5px;box-shadow:0px 0px 10px 0px rgba(0, 0, 0, 0);border-style:solid;border-width:2px 2px 2px 2px;border-color:#1D1D1F;padding:12px 24px 12px 24px;}.btn-secondary:hover, .btn-secondary:hover:active, .btn-secondary:focus, a.btn-secondary:hover, a.btn-secondary:focus{color:#FFFFFF;}.btn-secondary:hover, .btn-secondary:hover:active, .btn-secondary:focus{background-color:#000000;border-style:solid;border-width:2px 2px 2px 2px;border-color:#1D1D1F;}body.ce-kit-14 label{color:rgba(29, 29, 31, 0.56);font-size:15px;}body.ce-kit-14 .form-control, body.ce-kit-14 .elementor-field-textual{line-height:1.6em;border-style:solid;border-width:1px 1px 1px 1px;border-color:#E5E2DE;border-radius:0px 0px 0px 0px;padding:14px 18px 14px 18px;}body.ce-kit-14 .form-control:focus, body.ce-kit-14 .elementor-field-textual:focus{outline-style:solid;}body.ce-kit-14 .form-control:-webkit-autofill, body.ce-kit-14 .elementor-field-textual:-webkit-autofill{box-shadow:0 0 0 500px #F9F6F1 inset;}select.form-control:not([size]):not([multiple]){height:auto;}body.ce-kit-14 #wrapper{background-color:#FFFFFF;}body.ce-kit-14 #content{background-color:#EEEEEE;}body.ce-kit-14 .container{width:1600px;max-width:100%;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1600px;}@media(max-width:1024px){body.ce-kit-14 .ce-display-large{font-size:28px;}body.ce-kit-14 .ce-display-xl{font-size:30px;}body.ce-kit-14 .ce-display-xxl{font-size:100px;}}@media(max-width:767px){body.ce-kit-14 .ce-display-xxl{font-size:86px;}}/* Start custom CSS for page-settings *//* =========================================================
   LA VITRINE INFINIE POP — CSS GLOBAL NETTOYÉ 2026
   Version consolidée : doublons supprimés, rendu préservé
   Bandeau défilant : 45 s
========================================================= */

:root{
    --lvip-black:#050505;
    --lvip-dark:#111111;
    --lvip-cream:#f8f5ef;
    --lvip-white:#ffffff;
    --lvip-text:#111111;
    --lvip-text-soft:#333333;
    --lvip-gold:#b8926a;
    --lvip-gold-light:#e8cf92;
    --lvip-gold-bright:#fff0ad;
}

/* =========================
   BASE SITE
========================= */

body{
    background:var(--lvip-cream);
    color:var(--lvip-text);
    font-family:"Montserrat", Arial, sans-serif;
    line-height:1.6;
}

p, li, span{
    color:var(--lvip-text-soft);
}

a{
    color:var(--lvip-gold);
    text-decoration:none;
    transition:all .3s ease;
}

a:hover{
    color:#8a6a45;
}

/* =========================
   BANDEAU DÉFILANT PREMIUM
========================= */

.lvip-top-bar{
    background:#050505 !important;
    border-top:1px solid rgba(232,207,146,.25);
    border-bottom:1px solid rgba(232,207,146,.25);
    overflow:hidden;
    white-space:nowrap;
    height:34px;
    line-height:34px;
    position:relative;
}

.lvip-top-bar .lvip-marquee{
    display:inline-block;
    padding-left:100%;
    animation:lvip-marquee-scroll 45s linear infinite;
    font-size:12px;
    font-weight:700;
    letter-spacing:1px;
    text-transform:uppercase;
    background:linear-gradient(90deg,#b8926a,#fff0ad,#b8926a);
    -webkit-background-clip:text;
    -webkit-text-fill-color:transparent;
    text-shadow:0 0 6px rgba(243,211,122,.35);
}

@keyframes lvip-marquee-scroll{
    0%{ transform:translateX(0); }
    100%{ transform:translateX(-100%); }
}

/* =========================
   LOGO RAPPEL OR
========================= */

.lvip-logo-gold{
    position:relative;
    display:inline-flex;
    align-items:center;
    justify-content:center;
}

.lvip-logo-gold img{
    filter:
        drop-shadow(0 2px 4px rgba(0,0,0,.10))
        drop-shadow(0 0 10px rgba(184,146,106,.20));
}

.lvip-logo-gold:after{
    content:"";
    position:absolute;
    left:18%;
    right:18%;
    bottom:-8px;
    height:2px;
    background:linear-gradient(
        90deg,
        transparent,
        #b8926a,
        #fff0ad,
        #b8926a,
        transparent
    );
    border-radius:999px;
}

/* =========================
   TITRES
========================= */

h1,h2,h3,h4,
.elementor-heading-title{
    color:#111;
    font-weight:700;
    letter-spacing:.3px;
}

h1{
    font-size:clamp(34px,5vw,64px);
    line-height:1.05;
}

h2{
    font-size:clamp(26px,4vw,44px);
    line-height:1.15;
}

h3{
    font-size:clamp(20px,3vw,30px);
}

.lvip-title-gold:after{
    content:"";
    display:block;
    width:80px;
    height:2px;
    margin:18px auto 0;
    background:linear-gradient(90deg,transparent,#b8926a,#fff0ad,#b8926a,transparent);
}

/* =========================
   SECTIONS
========================= */

.lvip-section{
    padding:80px 24px;
}

.lvip-section-light{
    background:var(--lvip-cream) !important;
    color:#111 !important;
}

.lvip-section-white{
    background:#ffffff !important;
    color:#111 !important;
}

.lvip-section-dark{
    background:
        radial-gradient(circle at top, rgba(184,146,106,.14), transparent 35%),
        linear-gradient(180deg,#111111,#050505) !important;
    color:#e8e8e8 !important;
}

.lvip-container{
    max-width:1280px;
    margin:0 auto;
}

/* textes sur fond noir uniquement */
.lvip-section-dark h1,
.lvip-section-dark h2,
.lvip-section-dark h3,
.lvip-section-dark h4,
.lvip-section-dark .elementor-heading-title{
    color:#ffffff !important;
}

.lvip-section-dark p,
.lvip-section-dark span,
.lvip-section-dark li,
.lvip-section-dark div{
    color:#e8e8e8 !important;
}

.lvip-section-dark a{
    color:#e8cf92 !important;
}

.lvip-section-dark a:hover{
    color:#fff0ad !important;
}

/* =========================
   CARTES PREMIUM
========================= */

.lvip-card{
    background:#fff;
    border:1px solid rgba(184,146,106,.25);
    border-radius:26px;
    padding:32px;
    box-shadow:0 18px 45px rgba(0,0,0,.08);
    transition:all .35s ease;
}

.lvip-card:hover{
    transform:translateY(-5px);
    box-shadow:0 28px 65px rgba(0,0,0,.13);
}

/* =========================
   IMAGES
========================= */

.lvip-img-premium img,
.elementor-widget-image img{
    border-radius:24px;
    box-shadow:0 16px 42px rgba(0,0,0,.14);
    transition:all .35s ease;
}

.lvip-img-premium img:hover{
    transform:scale(1.015);
}

/* =========================
   BOUTONS DORÉS LUXE GLOBAL
========================= */

.elementor-button,
.btn,
button,
input[type="submit"],
input[type="button"],
.button,
.ce-button{
    position:relative;
    overflow:hidden;
    display:inline-flex;
    align-items:center;
    justify-content:center;

    padding:15px 34px !important;
    min-height:46px;

    border-radius:999px !important;
    border:1px solid #f3d37a !important;

    background:
        radial-gradient(circle at 50% 15%, rgba(255,255,255,.55), transparent 34%),
        repeating-radial-gradient(circle at 50% 50%, rgba(255,255,255,.08) 0px, rgba(255,255,255,.08) 1px, transparent 2px, transparent 5px),
        linear-gradient(
            90deg,
            #8c6415 0%,
            #f8dc86 18%,
            #b98a24 35%,
            #fff1aa 50%,
            #b98a24 68%,
            #f5d678 84%,
            #7a5411 100%
        ) !important;

    color:#050505 !important;

    font-size:13px !important;
    font-weight:900 !important;
    letter-spacing:1.3px !important;
    text-transform:uppercase !important;
    line-height:1.2 !important;

    text-shadow:
        0 1px 0 rgba(255,255,255,.75),
        0 0 2px rgba(255,255,255,.45);

    box-shadow:
        inset 0 2px 2px rgba(255,255,255,.55),
        inset 0 -3px 5px rgba(92,59,8,.42),
        inset 0 0 0 2px rgba(60,39,7,.45),
        inset 0 0 0 4px rgba(255,235,155,.35),
        0 5px 0 rgba(54,36,5,.9),
        0 14px 24px rgba(0,0,0,.25);

    transition:all .35s ease !important;
}

.elementor-button .elementor-button-text,
.elementor-button span,
.btn span,
button span{
    position:relative;
    z-index:3;
    color:#050505 !important;
    font-weight:900 !important;
}

.elementor-button:after,
.btn:after,
button:after{
    content:"";
    position:absolute;
    inset:4px;
    border-radius:999px;
    border:1px solid rgba(255,246,190,.75);
    pointer-events:none;
    z-index:2;
}

.elementor-button:before,
.btn:before,
button:before{
    content:"";
    position:absolute;
    inset:-40%;
    z-index:1;
    background:linear-gradient(
        115deg,
        transparent 0%,
        transparent 36%,
        rgba(255,255,255,.48) 48%,
        rgba(255,255,255,.16) 52%,
        transparent 64%,
        transparent 100%
    );
    transform:translateX(-45%) rotate(8deg);
    transition:all .9s ease;
    pointer-events:none;
}

.elementor-button:hover,
.btn:hover,
button:hover,
input[type="submit"]:hover,
input[type="button"]:hover,
.button:hover,
.ce-button:hover{
    transform:translateY(-2px);
    color:#000 !important;

    box-shadow:
        inset 0 2px 3px rgba(255,255,255,.65),
        inset 0 -3px 6px rgba(92,59,8,.42),
        inset 0 0 0 2px rgba(60,39,7,.45),
        inset 0 0 0 4px rgba(255,235,155,.48),
        0 5px 0 rgba(54,36,5,.9),
        0 18px 32px rgba(0,0,0,.34),
        0 0 28px rgba(255,215,100,.45);
}

.elementor-button:hover:before,
.btn:hover:before,
button:hover:before{
    transform:translateX(45%) rotate(8deg);
}

.lvip-btn-large .elementor-button{
    padding:20px 48px !important;
    min-height:60px;
    font-size:15px !important;
    letter-spacing:1.7px !important;
}

.lvip-btn-small .elementor-button{
    padding:11px 24px !important;
    min-height:38px;
    font-size:11px !important;
}

/* =========================
   AVIS CLIENTS SUR FOND NOIR
========================= */

.lvip-section-dark .elementor-testimonial,
.lvip-section-dark .elementor-testimonial-wrapper{
    background:rgba(255,255,255,.025);
    border:1px solid rgba(255,255,255,.16);
    border-radius:20px;
}

.lvip-section-dark .elementor-testimonial__text,
.lvip-section-dark .elementor-testimonial-content,
.lvip-section-dark .elementor-testimonial-content p{
    color:#e8e8e8 !important;
}

.lvip-section-dark .elementor-testimonial__name,
.lvip-section-dark .elementor-testimonial-name{
    color:#ffffff !important;
    font-weight:700;
}

.lvip-section-dark .elementor-testimonial__title,
.lvip-section-dark .elementor-testimonial-job{
    color:#e8cf92 !important;
}

/* =========================
   FOOTER PROPRE
========================= */

#footer,
footer{
    background:#050505;
}

.lvip-footer-dark{
    background:#050505 !important;
    color:#e8e8e8 !important;
}

.lvip-footer-dark h1,
.lvip-footer-dark h2,
.lvip-footer-dark h3,
.lvip-footer-dark h4,
.lvip-footer-dark h5,
.lvip-footer-dark .elementor-heading-title{
    color:#ffffff !important;
}

.lvip-footer-dark p,
.lvip-footer-dark span,
.lvip-footer-dark li,
.lvip-footer-dark div{
    color:#dcdcdc !important;
}

.lvip-footer-dark a{
    color:#e8cf92 !important;
}

.lvip-footer-dark a:hover{
    color:#fff0ad !important;
}

.lvip-footer-light{
    background:#f8f5ef !important;
    color:#111111 !important;
}

.lvip-footer-light h1,
.lvip-footer-light h2,
.lvip-footer-light h3,
.lvip-footer-light h4,
.lvip-footer-light h5{
    color:#050505 !important;
}

.lvip-footer-light p,
.lvip-footer-light span,
.lvip-footer-light li,
.lvip-footer-light div{
    color:#222222 !important;
}

.lvip-footer-light a{
    color:#6f5314 !important;
}

/* Newsletter footer */

.lvip-footer-dark input{
    background:#111111 !important;
    color:#ffffff !important;
    border:1px solid rgba(232,207,146,.45) !important;
}

.lvip-footer-dark input::placeholder{
    color:#b8b8b8 !important;
}

/* =========================
   PRODUITS
========================= */

.product-miniature,
.thumbnail-container{
    background:#fff;
    border-radius:22px;
    border:1px solid rgba(184,146,106,.20);
    overflow:hidden;
    box-shadow:0 12px 30px rgba(0,0,0,.06);
    transition:all .35s ease;
}

.product-miniature:hover,
.thumbnail-container:hover{
    transform:translateY(-4px);
    box-shadow:0 22px 55px rgba(0,0,0,.12);
}

.product-title,
.product-title a{
    color:#111;
    font-weight:700;
}

.product-price,
.price{
    color:#b8926a !important;
    font-weight:800;
}

/* =========================
   FORMULAIRES
========================= */

input,
textarea,
select{
    border:1px solid rgba(184,146,106,.35) !important;
    border-radius:14px !important;
    padding:13px 16px;
}

input:focus,
textarea:focus,
select:focus{
    outline:none !important;
    border-color:#b8926a !important;
    box-shadow:0 0 0 3px rgba(184,146,106,.16);
}

/* =========================
   BADGES
========================= */

.lvip-badge{
    display:inline-flex;
    padding:8px 16px;
    border-radius:999px;
    background:rgba(184,146,106,.12);
    border:1px solid rgba(184,146,106,.35);
    color:#8a6a45;
    font-size:12px;
    font-weight:700;
    letter-spacing:1.1px;
    text-transform:uppercase;
}

/* =========================
   MOBILE
========================= */

@media(max-width:768px){

    .lvip-section{
        padding:54px 18px;
    }

    .lvip-card{
        padding:22px;
        border-radius:22px;
    }

    .elementor-button,
    .btn,
    button,
    input[type="submit"],
    input[type="button"],
    .button,
    .ce-button{
        padding:12px 22px !important;
        min-height:40px;
        font-size:11px !important;
        letter-spacing:1px !important;
    }

    .lvip-btn-large .elementor-button{
        padding:14px 28px !important;
        min-height:46px;
        font-size:12px !important;
    }

    h1{
        font-size:34px;
    }

    h2{
        font-size:28px;
    }
}
/* =========================================================
   LVIP - PAGE CATÉGORIE PREMIUM
   Tableaux Pop Art / Catégories produits
========================================================= */

/* PAGE CATÉGORIE */
body#category{
    background:#f8f5ef;
}

/* FIL D’ARIANE */
body#category .breadcrumb,
body#category .breadcrumb ol{
    background:transparent;
    font-size:12px;
    color:#8a6a45;
}

/* HEADER CATÉGORIE */
body#category #category-description,
body#category .category-description,
body#category .block-category{
    max-width:1180px;
    margin:40px auto 36px;
    padding:42px 34px;
    background:linear-gradient(180deg,#ffffff,#f8f5ef);
    border:1px solid rgba(184,146,106,.22);
    border-radius:28px;
    box-shadow:0 18px 45px rgba(0,0,0,.07);
    text-align:center;
}

/* TITRE CATÉGORIE */
body#category h1,
body#category .h1{
    font-size:clamp(30px,4vw,52px);
    line-height:1.08;
    font-weight:800;
    color:#111;
    letter-spacing:.4px;
    margin-bottom:18px;
}

body#category h1:after{
    content:"";
    display:block;
    width:90px;
    height:2px;
    margin:20px auto 0;
    background:linear-gradient(90deg,transparent,#b8926a,#fff0ad,#b8926a,transparent);
}

/* TEXTE INTRO */
body#category #category-description p,
body#category .category-description p,
body#category .block-category p{
    max-width:900px;
    margin:0 auto;
    color:#333;
    font-size:15px;
    line-height:1.8;
}

/* SOUS-TITRES */
body#category h2{
    font-size:clamp(24px,3vw,36px);
    font-weight:800;
    color:#111;
    text-align:center;
    margin:48px auto 16px;
}

body#category h3{
    color:#111;
    font-weight:800;
}

/* CONTENEUR PRODUITS */
body#category #products,
body#category .products{
    max-width:1220px;
    margin:0 auto;
}

/* TRI / FILTRES */
body#category .products-selection{
    background:#fff;
    border:1px solid rgba(184,146,106,.20);
    border-radius:22px;
    padding:16px 22px;
    margin-bottom:28px;
    box-shadow:0 10px 28px rgba(0,0,0,.05);
}

body#category .sort-by,
body#category .total-products{
    color:#333;
    font-weight:600;
}

/* COLONNE FILTRES */
body#category #search_filters,
body#category .facet{
    background:#fff;
    border:1px solid rgba(184,146,106,.22);
    border-radius:22px;
    padding:20px;
    box-shadow:0 14px 34px rgba(0,0,0,.07);
}

body#category #search_filters .facet-title{
    color:#111;
    font-weight:800;
    letter-spacing:.5px;
    text-transform:uppercase;
}

/* GRILLE PRODUITS */
body#category .products .product-miniature,
body#category .product-miniature{
    background:#fff;
    border:1px solid rgba(184,146,106,.24);
    border-radius:24px;
    overflow:hidden;
    box-shadow:0 12px 32px rgba(0,0,0,.08);
    transition:all .35s ease;
}

body#category .products .product-miniature:hover,
body#category .product-miniature:hover{
    transform:translateY(-6px);
    box-shadow:
        0 24px 60px rgba(0,0,0,.14),
        0 0 24px rgba(184,146,106,.18);
}

/* IMAGE PRODUIT */
body#category .product-miniature img,
body#category .thumbnail-container img{
    border-radius:18px 18px 0 0;
    transition:all .4s ease;
}

body#category .product-miniature:hover img{
    transform:scale(1.025);
}

/* TEXTE PRODUIT */
body#category .product-title,
body#category .product-title a{
    color:#111 !important;
    font-size:13px;
    font-weight:800;
    line-height:1.35;
    text-transform:uppercase;
    letter-spacing:.3px;
}

body#category .product-price-and-shipping,
body#category .price{
    color:#b8926a !important;
    font-weight:900;
    font-size:15px;
}

/* BADGES PROMO / NEW */
body#category .product-flag,
body#category .discount,
body#category .new{
    background:linear-gradient(90deg,#8c6415,#f8dc86,#b98a24);
    color:#050505 !important;
    border-radius:999px;
    font-weight:900;
    padding:6px 12px;
    font-size:11px;
}

/* BLOCS ÉDITORIAUX CATÉGORIE */
body#category .lvip-category-block{
    max-width:1180px;
    margin:70px auto;
    padding:46px 34px;
    background:#fff;
    border:1px solid rgba(184,146,106,.22);
    border-radius:30px;
    box-shadow:0 18px 45px rgba(0,0,0,.08);
}

/* TABLEAUX / GRILLES SEO */
body#category table{
    border-collapse:separate;
    border-spacing:0;
    overflow:hidden;
    border-radius:22px;
    box-shadow:0 12px 32px rgba(0,0,0,.07);
}

body#category table th{
    background:#050505;
    color:#e8cf92;
    font-weight:800;
    text-transform:uppercase;
}

body#category table td{
    background:#fff;
    color:#333;
    border:1px solid rgba(184,146,106,.18);
}

/* FAQ CATÉGORIE */
body#category .elementor-accordion .elementor-tab-title{
    background:#fff;
    border:1px solid rgba(184,146,106,.28);
    border-radius:18px;
    margin-bottom:12px;
    color:#111 !important;
    font-weight:800;
}

body#category .elementor-accordion .elementor-tab-content{
    background:#fff;
    color:#333 !important;
    border:1px solid rgba(184,146,106,.20);
    border-radius:0 0 18px 18px;
}

/* PAGINATION */
body#category .pagination{
    margin:46px auto;
}

body#category .pagination a,
body#category .pagination span{
    border-radius:999px;
    border:1px solid rgba(184,146,106,.35);
    color:#111;
    background:#fff;
}

body#category .pagination .current{
    background:#b8926a;
    color:#fff;
}

/* CTA FINAL */
body#category .lvip-category-cta{
    max-width:960px;
    margin:70px auto;
    padding:46px 30px;
    text-align:center;
    background:
        radial-gradient(circle at top, rgba(184,146,106,.16), transparent 40%),
        linear-gradient(180deg,#111,#050505);
    border-radius:30px;
    color:#fff;
    box-shadow:0 24px 60px rgba(0,0,0,.18);
}

body#category .lvip-category-cta h2,
body#category .lvip-category-cta p{
    color:#fff !important;
}

/* MOBILE */
@media(max-width:768px){

    body#category .block-category,
    body#category .category-description{
        margin:24px 14px;
        padding:30px 20px;
        border-radius:22px;
    }

    body#category .products-selection{
        margin:0 14px 24px;
    }

    body#category .product-miniature{
        border-radius:20px;
    }

    body#category .lvip-category-block{
        margin:44px 14px;
        padding:30px 20px;
        border-radius:24px;
    }

    body#category h1{
        font-size:30px;
    }

    body#category h2{
        font-size:24px;
    }
}
/* =========================================================
   LVIP - PAGE PRODUIT PREMIUM
   Fiche produit galerie d’art
========================================================= */

/* PAGE PRODUIT */
body#product{
    background:#f8f5ef;
}

/* CONTAINER PRODUIT PRINCIPAL */
body#product .product-container,
body#product .product-information,
body#product .product-cover,
body#product .product-prices,
body#product .product-actions{
    color:#111;
}

/* BLOC HAUT PRODUIT */
body#product .product-container{
    max-width:1280px;
    margin:40px auto;
    padding:34px;
    background:linear-gradient(180deg,#ffffff,#f8f5ef);
    border:1px solid rgba(184,146,106,.22);
    border-radius:32px;
    box-shadow:0 22px 60px rgba(0,0,0,.08);
}

/* IMAGE PRINCIPALE */
body#product .product-cover img,
body#product .js-qv-product-cover{
    border-radius:28px;
    box-shadow:
        0 22px 55px rgba(0,0,0,.16),
        0 0 24px rgba(184,146,106,.16);
}

/* MINIATURES */
body#product .product-images img,
body#product .thumb-container img{
    border-radius:16px;
    border:1px solid rgba(184,146,106,.25);
    box-shadow:0 8px 22px rgba(0,0,0,.08);
    transition:all .3s ease;
}

body#product .product-images img:hover,
body#product .thumb-container img:hover{
    transform:translateY(-3px);
    border-color:#b8926a;
}

/* TITRE PRODUIT */
body#product h1,
body#product .h1,
body#product .product-title{
    color:#111;
    font-size:clamp(30px,4vw,50px);
    font-weight:900;
    line-height:1.08;
    letter-spacing:.3px;
    margin-bottom:18px;
}

body#product h1:after{
    content:"";
    display:block;
    width:90px;
    height:2px;
    margin:20px 0 0;
    background:linear-gradient(90deg,#b8926a,#fff0ad,#b8926a,transparent);
}

/* PRIX */
body#product .current-price,
body#product .product-price,
body#product .price{
    color:#b8926a !important;
    font-size:28px;
    font-weight:900;
}

/* TAXES / INFOS */
body#product .tax-shipping-delivery-label,
body#product .product-reference,
body#product .product-condition{
    color:#555;
    font-size:13px;
}

/* BLOCS OPTIONS PRODUIT */
body#product .product-variants,
body#product .product-additional-info,
body#product .product-discounts{
    background:#fff;
    border:1px solid rgba(184,146,106,.20);
    border-radius:22px;
    padding:20px;
    margin:18px 0;
    box-shadow:0 10px 28px rgba(0,0,0,.05);
}

/* LABELS OPTIONS */
body#product .product-variants label,
body#product .control-label{
    color:#111;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:.6px;
    font-size:12px;
}

/* SELECT / CHAMPS */
body#product select,
body#product input{
    border:1px solid rgba(184,146,106,.35) !important;
    border-radius:14px !important;
}

/* QUANTITÉ */
body#product .qty input{
    background:#fff;
    color:#111;
    font-weight:800;
    text-align:center;
}

/* BOUTON AJOUT PANIER */
body#product .add-to-cart,
body#product button.add-to-cart,
body#product .product-add-to-cart .btn{
    min-height:58px;
    padding:18px 42px !important;
    font-size:14px !important;
    letter-spacing:1.6px !important;
}

/* DESCRIPTION COURTE */
body#product .product-description-short,
body#product #product-description-short{
    margin:24px 0;
    color:#333;
    font-size:16px;
    line-height:1.8;
}

/* TABS / DESCRIPTION LONGUE */
body#product .tabs,
body#product .product-tabs{
    max-width:1180px;
    margin:50px auto;
    background:#fff;
    border:1px solid rgba(184,146,106,.22);
    border-radius:28px;
    box-shadow:0 18px 45px rgba(0,0,0,.07);
    overflow:hidden;
}

body#product .tabs .nav-tabs{
    border-bottom:1px solid rgba(184,146,106,.18);
    background:#f8f5ef;
}

body#product .tabs .nav-link{
    color:#111;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:.7px;
}

body#product .tabs .nav-link.active{
    color:#b8926a;
    background:#fff;
}

body#product .tabs .tab-content{
    padding:34px;
    color:#333;
    line-height:1.8;
}

/* BLOCS CREATIVE ELEMENTS PRODUIT */
body#product .lvip-product-block{
    max-width:1180px;
    margin:70px auto;
    padding:46px 34px;
    background:#fff;
    border:1px solid rgba(184,146,106,.22);
    border-radius:30px;
    box-shadow:0 18px 45px rgba(0,0,0,.08);
}

body#product .lvip-product-block h2{
    text-align:center;
    color:#111;
    font-weight:900;
    margin-bottom:18px;
}

body#product .lvip-product-block h2:after{
    content:"";
    display:block;
    width:86px;
    height:2px;
    margin:18px auto 0;
    background:linear-gradient(90deg,transparent,#b8926a,#fff0ad,#b8926a,transparent);
}

/* BLOC SOMBRE PRODUIT */
body#product .lvip-product-dark{
    max-width:1180px;
    margin:70px auto;
    padding:54px 34px;
    background:
        radial-gradient(circle at top, rgba(184,146,106,.16), transparent 38%),
        linear-gradient(180deg,#111,#050505);
    border-radius:32px;
    color:#fff;
    box-shadow:0 24px 60px rgba(0,0,0,.20);
}

body#product .lvip-product-dark h2,
body#product .lvip-product-dark h3,
body#product .lvip-product-dark p,
body#product .lvip-product-dark span,
body#product .lvip-product-dark li{
    color:#fff !important;
}

/* BADGES RÉASSURANCE */
body#product .lvip-product-badge{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:9px 18px;
    border-radius:999px;
    background:rgba(184,146,106,.12);
    border:1px solid rgba(184,146,106,.35);
    color:#8a6a45;
    font-size:12px;
    font-weight:800;
    letter-spacing:1.1px;
    text-transform:uppercase;
}

/* CARTES SUPPORTS */
body#product .lvip-support-card{
    background:#fff;
    border:1px solid rgba(184,146,106,.24);
    border-radius:26px;
    padding:28px;
    box-shadow:0 14px 36px rgba(0,0,0,.08);
    transition:all .35s ease;
}

body#product .lvip-support-card:hover{
    transform:translateY(-5px);
    box-shadow:0 24px 55px rgba(0,0,0,.14);
}

/* PRODUITS ASSOCIÉS */
body#product .featured-products,
body#product .product-accessories{
    max-width:1220px;
    margin:70px auto;
}

body#product .featured-products h2,
body#product .product-accessories h2{
    text-align:center;
    color:#111;
    font-weight:900;
}

/* FAQ PRODUIT */
body#product .elementor-accordion .elementor-tab-title{
    background:#fff;
    border:1px solid rgba(184,146,106,.28);
    border-radius:18px;
    margin-bottom:12px;
    color:#111 !important;
    font-weight:800;
}

body#product .elementor-accordion .elementor-tab-content{
    background:#fff;
    color:#333 !important;
    border:1px solid rgba(184,146,106,.20);
    border-radius:0 0 18px 18px;
}

/* STICKY ACHAT OPTIONNEL */
body#product .lvip-sticky-buy{
    position:sticky;
    top:110px;
}

/* MOBILE */
@media(max-width:768px){

    body#product .product-container{
        margin:20px 14px;
        padding:22px;
        border-radius:24px;
    }

    body#product h1{
        font-size:30px;
    }

    body#product .current-price,
    body#product .product-price,
    body#product .price{
        font-size:24px;
    }

    body#product .tabs .tab-content{
        padding:24px;
    }

    body#product .lvip-product-block,
    body#product .lvip-product-dark{
        margin:44px 14px;
        padding:30px 22px;
        border-radius:24px;
    }

    body#product .add-to-cart,
    body#product button.add-to-cart{
        width:100%;
        justify-content:center;
    }
}
/* =========================================================
   LVIP - FAQ PREMIUM PRODUIT
========================================================= */

.lvip-faq{
    max-width:900px;
    margin:0 auto;
}

/* Questions */

.lvip-faq .elementor-tab-title{
    background:#ffffff !important;

    border:1px solid rgba(184,146,106,.28) !important;

    border-radius:20px !important;

    padding:22px 26px !important;

    margin-bottom:14px !important;

    transition:all .35s ease;

    box-shadow:
        0 10px 28px rgba(0,0,0,.05);

    position:relative;
}

/* Hover */

.lvip-faq .elementor-tab-title:hover{

    border-color:#b8926a !important;

    transform:translateY(-2px);

    box-shadow:
        0 16px 36px rgba(0,0,0,.08),
        0 0 18px rgba(184,146,106,.12);
}

/* Texte question */

.lvip-faq .elementor-tab-title a{

    color:#111111 !important;

    font-size:14px;

    font-weight:800;

    letter-spacing:.5px;

    text-transform:uppercase;
}

/* Icône + */

.lvip-faq .elementor-accordion-icon{

    color:#b8926a !important;

    font-size:18px;
}

/* Question ouverte */

.lvip-faq .elementor-tab-title.elementor-active{

    background:
    linear-gradient(
        180deg,
        #ffffff,
        #fcfaf5
    ) !important;

    border-color:#b8926a !important;
}

/* Réponse */

.lvip-faq .elementor-tab-content{

    background:#ffffff !important;

    border:1px solid rgba(184,146,106,.18) !important;

    border-top:none !important;

    border-radius:0 0 20px 20px !important;

    padding:24px 28px !important;

    color:#444444 !important;

    font-size:15px;

    line-height:1.9;
}

/* Titre FAQ */

.lvip-faq-title{

    text-align:center;

    margin-bottom:40px;
}

.lvip-faq-title h2{

    font-size:38px;

    font-weight:900;

    color:#111111;
}

.lvip-faq-title h2:after{

    content:"";

    display:block;

    width:90px;

    height:2px;

    margin:18px auto 0;

    background:
    linear-gradient(
        90deg,
        transparent,
        #b8926a,
        #fff0ad,
        #b8926a,
        transparent
    );
}
/* =========================================================
   LVIP - CORRECTION PAGE PRODUIT ALIGNEMENTS + BLOCS NOIRS
========================================================= */

/* Largeur propre des blocs produit */
body#product .lvip-product-block,
body#product .lvip-product-dark,
body#product .lvip-faq{
    max-width:980px !important;
    margin:56px auto !important;
}

/* Alignement général des blocs */
body#product .lvip-product-block{
    text-align:center !important;
    padding:42px 34px !important;
}

/* Textes bien centrés */
body#product .lvip-product-block p,
body#product .lvip-product-block li{
    max-width:820px;
    margin-left:auto;
    margin-right:auto;
    line-height:1.8;
}

/* Titres blocs */
body#product .lvip-product-block h2,
body#product .lvip-product-block h3{
    text-align:center !important;
    margin-left:auto;
    margin-right:auto;
}

/* Cartes supports / inspirations */
body#product .lvip-support-card{
    height:100%;
    text-align:center;
    padding:24px 20px !important;
}

body#product .lvip-support-card img{
    margin-bottom:18px;
    border-radius:18px;
}

/* Grilles internes mieux alignées */
body#product .elementor-column .elementor-widget-wrap{
    align-content:flex-start;
}

/* =========================================================
   BLOCS NOIRS PRODUIT - TEXTE VISIBLE
========================================================= */

body#product .lvip-product-dark{
    background:
        radial-gradient(circle at top, rgba(184,146,106,.18), transparent 38%),
        linear-gradient(180deg,#111111,#050505) !important;

    color:#ffffff !important;
    text-align:center !important;
    padding:50px 36px !important;
    border-radius:28px !important;
}

/* Tous les textes dans bloc noir */
body#product .lvip-product-dark,
body#product .lvip-product-dark p,
body#product .lvip-product-dark span,
body#product .lvip-product-dark div,
body#product .lvip-product-dark li{
    color:#e8e8e8 !important;
}

/* Titres dans bloc noir */
body#product .lvip-product-dark h1,
body#product .lvip-product-dark h2,
body#product .lvip-product-dark h3,
body#product .lvip-product-dark h4,
body#product .lvip-product-dark .elementor-heading-title{
    color:#ffffff !important;
    text-shadow:none !important;
}

/* Liens dans bloc noir */
body#product .lvip-product-dark a{
    color:#e8cf92 !important;
}

/* Petit texte doré dans bloc noir */
body#product .lvip-product-dark strong{
    color:#fff0ad !important;
}

/* =========================================================
   FAQ PRODUIT PLUS PROPRE
========================================================= */

body#product .lvip-faq{
    background:#ffffff;
    padding:36px 28px;
    border-radius:26px;
    border:1px solid rgba(184,146,106,.22);
    box-shadow:0 18px 45px rgba(0,0,0,.08);
}

body#product .lvip-faq .elementor-tab-title{
    text-align:left !important;
}

body#product .lvip-faq .elementor-tab-title a{
    color:#111 !important;
}

body#product .lvip-faq .elementor-tab-content{
    color:#333 !important;
    text-align:left !important;
}

/* =========================================================
   MOBILE PAGE PRODUIT
========================================================= */

@media(max-width:768px){

    body#product .lvip-product-block,
    body#product .lvip-product-dark,
    body#product .lvip-faq{
        max-width:92% !important;
        margin:38px auto !important;
        padding:28px 20px !important;
        border-radius:22px !important;
    }

    body#product .lvip-product-block p,
    body#product .lvip-product-dark p{
        font-size:14px;
        line-height:1.7;
    }
}
/* =========================================================
   LVIP - LARGEUR GLOBALE PAGE PRODUIT
========================================================= */

:root{
    --lvip-product-width:1360px;
}

/* Container Prestashop produit */

body#product .container{
    max-width:var(--lvip-product-width) !important;
}

/* Container Creative Elements */

body#product .elementor-section.elementor-section-boxed > .elementor-container{
    max-width:var(--lvip-product-width) !important;
}

/* Tous les blocs LVIP */

body#product .lvip-product-block,
body#product .lvip-product-dark,
body#product .lvip-faq{
    max-width:var(--lvip-product-width) !important;
    width:100% !important;
}

/* Bloc principal produit */

body#product .product-container{
    max-width:var(--lvip-product-width) !important;
    width:100% !important;
}
/* =========================================================
   LVIP - TYPOGRAPHIE PREMIUM PRODUITS
========================================================= */

/* Titres principaux des blocs */

body#product .lvip-product-block h2,
body#product .lvip-product-dark h2,
body#product .lvip-faq-title h2{

    font-size:30px !important;

    font-weight:500 !important;

    line-height:1.3 !important;

    letter-spacing:.4px !important;

    text-align:center !important;

    color:#111111;
}

/* Titres sur fond noir */

body#product .lvip-product-dark h2{
    color:#ffffff !important;
}

/* Titres cartes supports */

body#product .lvip-support-card h3{

    font-size:24px !important;

    font-weight:600 !important;

    line-height:1.25 !important;

    letter-spacing:.2px !important;

    color:#111111;
}

/* Inspirations déco */

body#product .lvip-product-block h3{

    font-size:22px !important;

    font-weight:600 !important;

    line-height:1.3 !important;

    color:#111111;
}

/* FAQ */

body#product .lvip-faq h2{

    font-size:28px !important;

    font-weight:600 !important;

    letter-spacing:.3px !important;
}
/* =========================================================
   LVIP - BLOC POURQUOI CHOISIR ALIGNEMENT
========================================================= */

body#product .lvip-why{
    text-align:center;
}

body#product .lvip-why .elementor-container{
    align-items:stretch !important;
}

body#product .lvip-why .elementor-column{
    display:flex !important;
}

body#product .lvip-why .elementor-widget-wrap{
    display:flex !important;
    flex-direction:column !important;
    justify-content:center !important;
    height:100% !important;
    padding:22px 18px !important;

    background:#ffffff;
    border:1px solid rgba(184,146,106,.22);
    border-radius:18px;
    box-shadow:0 10px 26px rgba(0,0,0,.06);
}

body#product .lvip-why h3,
body#product .lvip-why .elementor-heading-title{
    font-size:18px !important;
    font-weight:600 !important;
    line-height:1.25 !important;
    margin-bottom:10px !important;
    color:#111 !important;
}

body#product .lvip-why p,
body#product .lvip-why .elementor-widget-text-editor{
    font-size:13px !important;
    line-height:1.65 !important;
    color:#333 !important;
    margin:0 auto !important;
    max-width:220px;
}
/* =========================================================
   LVIP - CTA NOIR PRODUIT : TEXTE + ICÔNES VISIBLES
========================================================= */

body#product .lvip-product-dark .elementor-icon,
body#product .lvip-product-dark .elementor-icon i,
body#product .lvip-product-dark .elementor-icon svg,
body#product .lvip-product-dark i,
body#product .lvip-product-dark svg{
    color:#e8cf92 !important;
    fill:#e8cf92 !important;
    stroke:#e8cf92 !important;
}

/* Textes dans les icônes / boîtes icônes */
body#product .lvip-product-dark .elementor-icon-box-title,
body#product .lvip-product-dark .elementor-icon-box-title span,
body#product .lvip-product-dark .elementor-icon-box-description,
body#product .lvip-product-dark .elementor-widget-icon-box h3,
body#product .lvip-product-dark .elementor-widget-icon-box p{
    color:#f5f5f5 !important;
    opacity:1 !important;
}

/* Petits textes blancs */
body#product .lvip-product-dark small,
body#product .lvip-product-dark .elementor-text-editor,
body#product .lvip-product-dark .elementor-widget-text-editor{
    color:#e8e8e8 !important;
    opacity:1 !important;
}

:root{
  --ub-bg: #f7f1e8;
  --ub-surface: rgba(255,255,255,0.76);
  --ub-surface-strong: #fffdf9;
  --ub-text: #161616;
  --ub-text-soft: #625d57;
  --ub-line: rgba(22,22,22,0.08);
  --ub-gold: #c69d57;
  --ub-gold-2: #e3c98f;
  --ub-gold-dark: #ab7f36;
  --ub-shadow: 0 12px 32px rgba(0,0,0,0.06);
  --ub-radius: 18px;
  --ub-radius-lg: 28px;
  --ub-container: 1280px;
}

body.category .page-content,
body#category .page-content,
.ub-page{
  background: var(--ub-bg);
  color: var(--ub-text);
}

.ub-container{
  width: min(100% - 40px, var(--ub-container));
  margin: 0 auto;
}

.ub-section{
  padding: 90px 0;
}

.ub-section-sm{
  padding: 65px 0;
}

.ub-kicker{
  display: inline-block;
  margin-bottom: 14px;
  font-size: 12px;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--ub-gold-dark);
  font-weight: 600;
}

.ub-title{
  position: relative;
  color: var(--ub-text);
  font-weight: 500;
  letter-spacing: -0.02em;
  margin: 0 0 18px;
}

.ub-title-xl{
  font-size: clamp(40px, 5vw, 58px);
  line-height: 1.02;
}

.ub-title-lg{
  font-size: clamp(28px, 3vw, 40px);
  line-height: 1.08;
}

.ub-title-md{
  font-size: 22px;
  line-height: 1.2;
  margin: 0 0 10px;
}

.ub-title-line{
  padding-bottom: 18px;
}

.ub-title-line::after{
  content: "";
  display: block;
  width: 72px;
  height: 2px;
  margin-top: 14px;
  border-radius: 999px;
  background: linear-gradient(90deg, #b8893f 0%, #d8ba78 45%, #f1dfb0 100%);
}

.ub-intro{
  max-width: 780px;
  margin: 0 auto 44px;
  text-align: center;
}

.ub-intro .ub-title-line::after,
.ub-cta .ub-title-line::after{
  margin-left: auto;
  margin-right: auto;
}

.ub-lead,
.ub-text,
.ub-card-text{
  color: var(--ub-text-soft);
  line-height: 1.75;
}

.ub-lead{
  font-size: 18px;
  max-width: 640px;
  margin: 0;
}

.ub-text{
  font-size: 16px;
}

.ub-grid-2{
  display: grid;
  grid-template-columns: 1.05fr 0.95fr;
  gap: 48px;
  align-items: center;
}

.ub-grid-3{
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
}

.ub-grid-4{
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 24px;
}

.ub-hero{
  padding: 46px 0 72px;
}

.ub-hero-actions,
.ub-btn-wrap{
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  margin: 30px 0 22px;
}

.ub-btn{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  padding: 0 22px;
  border-radius: 999px;
  text-decoration: none;
  transition: all 0.25s ease;
  font-size: 14px;
  font-weight: 600;
}

.ub-btn-primary{
  background: linear-gradient(135deg, var(--ub-gold), var(--ub-gold-2));
  color: #171717;
  box-shadow: 0 8px 22px rgba(198,157,87,0.22);
}

.ub-btn-secondary{
  border: 1px solid var(--ub-line);
  color: var(--ub-text);
  background: rgba(255,255,255,0.55);
}

.ub-usp-list{
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

.ub-usp-list span{
  display: inline-flex;
  align-items: center;
  min-height: 38px;
  padding: 0 14px;
  border: 1px solid var(--ub-line);
  border-radius: 999px;
  background: rgba(255,255,255,0.56);
  color: var(--ub-text-soft);
  font-size: 14px;
}

.ub-hero-media img,
.ub-story-media img{
  width: 100%;
  display: block;
  object-fit: cover;
  border-radius: var(--ub-radius-lg);
  box-shadow: var(--ub-shadow);
}

.ub-banner{
  position: relative;
  overflow: hidden;
  border-radius: 30px;
  min-height: 430px;
  padding: 48px;
  display: flex;
  align-items: end;
  background: #111;
  box-shadow: var(--ub-shadow);
}

.ub-banner img{
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: 0.68;
}

.ub-banner::after{
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(0,0,0,0.06), rgba(0,0,0,0.58));
}

.ub-banner-content{
  position: relative;
  z-index: 2;
  max-width: 620px;
}

.ub-banner-content .ub-title,
.ub-banner-content .ub-lead{
  color: #fff;
}

.ub-banner-content .ub-title-line::after{
  background: linear-gradient(90deg, #c79a46 0%, #e1c27e 45%, #f7e2b3 100%);
}

.ub-story{
  background: linear-gradient(180deg, rgba(255,255,255,0.68), rgba(255,255,255,0.45));
  border: 1px solid rgba(22,22,22,0.05);
  border-radius: 30px;
  padding: 32px;
  box-shadow: var(--ub-shadow);
}

.ub-card{
  background: var(--ub-surface);
  border: 1px solid rgba(22,22,22,0.05);
  border-radius: var(--ub-radius);
  box-shadow: var(--ub-shadow);
  overflow: hidden;
}

.ub-card-media{
  aspect-ratio: 1 / 1;
  overflow: hidden;
  background: #ece5da;
}

.ub-card-media img{
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform 0.45s ease;
}

.ub-card:hover .ub-card-media img{
  transform: scale(1.04);
}

.ub-card-body{
  padding: 22px;
}

.ub-feature-card{
  padding: 28px;
}

.ub-reassurance{
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
}

.ub-reassurance-item{
  padding: 28px;
  border-radius: 22px;
  background: rgba(255,255,255,0.7);
  border: 1px solid rgba(22,22,22,0.05);
  box-shadow: var(--ub-shadow);
  text-align: center;
}

.ub-reassurance-item h3{
  margin: 0 0 10px;
  font-size: 20px;
  color: var(--ub-text);
}

.ub-reassurance-item p{
  margin: 0;
  color: var(--ub-text-soft);
  line-height: 1.7;
}

.ub-seo{
  max-width: 920px;
  margin: 0 auto;
}

.ub-seo h2,
.ub-seo h3{
  font-size: clamp(26px, 2.4vw, 34px);
  line-height: 1.15;
  color: var(--ub-text);
  margin: 34px 0 14px;
  padding-bottom: 16px;
  position: relative;
}

.ub-seo h2::after,
.ub-seo h3::after{
  content: "";
  display: block;
  width: 64px;
  height: 2px;
  margin-top: 12px;
  background: linear-gradient(90deg, #b8893f 0%, #d8ba78 45%, #f1dfb0 100%);
  border-radius: 999px;
}

.ub-seo p{
  color: var(--ub-text-soft);
  line-height: 1.8;
  font-size: 16px;
  margin: 0 0 18px;
}

.ub-faq{
  max-width: 920px;
  margin: 0 auto;
}

.ub-faq .elementor-accordion-item,
.ub-faq .ce-accordion-item,
.ub-faq details{
  margin-bottom: 14px;
  border-radius: 16px;
  overflow: hidden;
  border: 1px solid rgba(22,22,22,0.07);
  background: rgba(255,255,255,0.84);
  box-shadow: var(--ub-shadow);
}

.ub-cta{
  text-align: center;
  padding: 72px 30px;
  border-radius: 30px;
  background: linear-gradient(180deg, rgba(199,154,70,0.16), rgba(255,255,255,0.7));
  border: 1px solid rgba(199,154,70,0.14);
}

/* Habillage Prestashop categorie */
body.category .h1,
body#category .h1,
body.category h1.h1,
body#category h1.h1{
  font-size: clamp(38px, 4.8vw, 56px);
  line-height: 1.04;
  letter-spacing: -0.03em;
  text-align: center;
  color: var(--ub-text);
  margin-bottom: 10px;
  position: relative;
  padding-bottom: 22px;
}

body.category .h1::after,
body#category .h1::after,
body.category h1.h1::after,
body#category h1.h1::after{
  content: "";
  display: block;
  width: 72px;
  height: 2px;
  margin: 14px auto 0;
  border-radius: 999px;
  background: linear-gradient(90deg, #b8893f 0%, #d8ba78 45%, #f1dfb0 100%);
}

body.category .category-description,
body#category .category-description{
  max-width: 860px;
  margin: 0 auto 34px;
  text-align: center;
  color: var(--ub-text-soft);
  line-height: 1.75;
}

body.category .products .product-miniature,
body#category .products .product-miniature{
  margin-bottom: 28px;
}

body.category .products .thumbnail-container,
body#category .products .thumbnail-container{
  background: rgba(255,255,255,0.78);
  border-radius: 18px;
  border: 1px solid rgba(22,22,22,0.05);
  box-shadow: var(--ub-shadow);
  overflow: hidden;
  padding-bottom: 14px;
  transition: transform 0.25s ease, box-shadow 0.25s ease;
}

body.category .products .thumbnail-container:hover,
body#category .products .thumbnail-container:hover{
  transform: translateY(-3px);
  box-shadow: 0 16px 34px rgba(0,0,0,0.08);
}

body.category .products .product-thumbnail img,
body#category .products .product-thumbnail img{
  transition: transform 0.45s ease;
}

body.category .products .thumbnail-container:hover .product-thumbnail img,
body#category .products .thumbnail-container:hover .product-thumbnail img{
  transform: scale(1.03);
}

body.category .products .product-title,
body#category .products .product-title{
  padding: 14px 16px 6px;
  text-align: center;
  font-size: 16px;
  line-height: 1.35;
}

body.category .products .product-title a,
body#category .products .product-title a{
  color: var(--ub-text);
}

body.category .products .product-price-and-shipping,
body#category .products .product-price-and-shipping{
  text-align: center;
  padding: 0 16px 8px;
}

body.category .products .price,
body#category .products .price{
  color: var(--ub-gold-dark);
  font-size: 17px;
  font-weight: 700;
}

@media (max-width: 1024px){
  .ub-grid-2,
  .ub-grid-3,
  .ub-grid-4,
  .ub-reassurance{
    grid-template-columns: 1fr 1fr;
  }

  .ub-section{
    padding: 72px 0;
  }
}

@media (max-width: 767px){
  .ub-container{
    width: min(100% - 24px, var(--ub-container));
  }

  .ub-grid-2,
  .ub-grid-3,
  .ub-grid-4,
  .ub-reassurance{
    grid-template-columns: 1fr;
  }

  .ub-section{
    padding: 54px 0;
  }

  .ub-title-xl{
    font-size: 36px;
  }

  .ub-title-lg{
    font-size: 28px;
  }

  .ub-lead{
    font-size: 16px;
  }

  .ub-banner{
    min-height: 300px;
    padding: 24px;
    border-radius: 22px;
  }

  .ub-story,
  .ub-cta{
    padding: 22px;
    border-radius: 22px;
  }

  .ub-card-body,
  .ub-feature-card,
  .ub-reassurance-item{
    padding: 20px;
  }

  .ub-btn-wrap,
  .ub-hero-actions{
    flex-direction: column;
  }

  .ub-btn{
    width: 100%;
  }

  .ub-usp-list span{
    width: 100%;
    justify-content: center;
  }
}/* End custom CSS */