/* ==========================================================
   DECOENLIGNE - DECO ESSENTIELLE
   ========================================================== */

body.del-essentielle-product{
    --ess-black:#26221f;
    --ess-accent:#a77746;
    --ess-accent-dark:#81582f;
    --ess-soft:#f7f3ee;
    --ess-border:#e1d8ce;
    --ess-text:#574f49;
}


/* ==========================================================
   GLOBAL
   ========================================================== */

body.del-essentielle-product
.entry-summary .product_meta,
body.del-essentielle-product
.entry-summary .share-simple-wrapper,
body.del-essentielle-product
.entry-summary .share_wrapper,
body.del-essentielle-product
.related.products,
body.del-essentielle-product
.upsells.products{
    display:none !important;
}


/* ==========================================================
   HAUT DE FICHE DESKTOP
   ========================================================== */

@media only screen and (min-width:960px){

    body.del-essentielle-product
    #Content
    div.product
    .product_wrapper.del-essentielle-product-layout{
        position:relative !important;
        left:50% !important;
        transform:translateX(-50%) !important;

        display:grid !important;
        grid-template-columns:minmax(0,1.08fr) minmax(440px,.92fr) !important;
        gap:42px !important;
        align-items:start !important;

        width:calc(100vw - 80px) !important;
        max-width:1220px !important;

        margin:0 0 28px !important;
        padding:0 !important;
    }

    body.del-essentielle-product
    #Content
    div.product
    .product_wrapper.del-essentielle-product-layout
    > .product_image_wrapper{
        grid-column:1 !important;
        grid-row:1 !important;

        float:none !important;
        width:100% !important;
        max-width:none !important;
        margin:0 !important;
    }

    body.del-essentielle-product
    #Content
    div.product
    .product_wrapper.del-essentielle-product-layout
    > .entry-summary{
        grid-column:2 !important;
        grid-row:1 !important;

        float:none !important;
        width:100% !important;
        max-width:440px !important;
        margin:0 !important;
    }

    body.del-essentielle-product
    .del-essentielle-top-extra,
    body.del-essentielle-product
    .del-essentielle-content{
        position:relative !important;
        left:50% !important;
        transform:translateX(-50%) !important;

        width:calc(100vw - 80px) !important;
        max-width:1220px !important;

        margin-left:0 !important;
        margin-right:0 !important;
    }
}


/* ==========================================================
   GALERIE
   ========================================================== */

body.del-essentielle-product
.del-essentielle-frame-target{
    position:relative !important;
    overflow:hidden !important;

    outline:2px solid var(--ess-accent) !important;
    outline-offset:2px !important;
}

body.del-essentielle-product
.woocommerce-product-gallery__image,
body.del-essentielle-product
.woocommerce-product-gallery__image > a{
    overflow:hidden !important;
}

body.del-essentielle-product
.woocommerce-product-gallery__image > a > img{
    transition:transform .16s ease !important;
}

.del-essentielle-gallery-overlay{
    position:absolute !important;
    inset:0 !important;
    z-index:30 !important;
    pointer-events:none !important;
}

.del-essentielle-gallery-badge{
    position:absolute;
    top:0;
    left:0;

    padding:18px 20px;

    background:rgba(167,119,70,.95);

    color:#fff;

    font-size:12px;
    font-weight:700;
    line-height:1;

    letter-spacing:.6px;
}

.del-essentielle-gallery-caption{
    position:absolute;
    left:0;
    bottom:4%;

    width:60%;
    min-width:320px;

    padding:23px 27px;

    background:rgba(38,34,31,.84);

    color:#fff;
}

.del-essentielle-gallery-title{
    color:#fff !important;

    font-family:Georgia,"Times New Roman",serif;
    font-size:34px;
    font-weight:400;
    line-height:1.05;
}

.del-essentielle-gallery-subtitle{
    margin-top:5px;

    color:#dbb789 !important;

    font-size:15px;
    font-weight:700;
    line-height:1.3;

    letter-spacing:.5px;
}

.del-essentielle-gallery-line{
    width:100%;
    height:1px;

    margin:13px 0;

    background:#c89a68;
}

.del-essentielle-gallery-text{
    color:#fff !important;

    font-size:14px;
    line-height:1.45;
}


/* miniatures */
body.del-essentielle-product
.woocommerce-product-gallery .flex-control-thumbs{
    display:grid !important;
    grid-template-columns:repeat(5,minmax(0,1fr)) !important;
    gap:7px !important;

    margin:10px 0 0 !important;
    padding:0 !important;
}

body.del-essentielle-product
.woocommerce-product-gallery
.flex-control-thumbs li:first-child{
    display:none !important;
}

body.del-essentielle-product
.woocommerce-product-gallery
.flex-control-thumbs li{
    float:none !important;
    width:auto !important;
    margin:0 !important;
}

body.del-essentielle-product
.woocommerce-product-gallery
.flex-control-thumbs img{
    width:100% !important;
    aspect-ratio:1/1;

    object-fit:cover;

    border:1px solid #ddd3c7 !important;
    border-radius:0 !important;
}


/* ==========================================================
   RESUME PRINCIPAL
   ========================================================== */

.del-essentielle-summary-main{
    margin:0 0 17px;
}

.del-essentielle-summary-main__lead{
    margin:0 0 15px !important;

    color:var(--ess-text) !important;

    font-size:13px !important;
    line-height:1.62 !important;

    text-align:left !important;
    hyphens:none !important;
}

.del-essentielle-summary-main__grid{
    display:grid;

    grid-template-columns:repeat(2,minmax(0,1fr));

    gap:8px 18px;
}

.del-essentielle-summary-main__grid > div{
    position:relative;

    padding-left:20px;

    color:#48413c;

    font-size:11px;
    line-height:1.45;

    text-align:left !important;
}

.del-essentielle-summary-main__grid > div::before{
    content:"✓";

    position:absolute;
    left:0;
    top:0;

    color:var(--ess-accent);

    font-weight:700;
}


/* ==========================================================
   PRIX
   ========================================================== */

body.del-essentielle-product
.entry-summary .price{
    width:100% !important;

    margin:15px 0 17px !important;

    text-align:center !important;
}

.del-essentielle-price-from{
    display:block;

    color:var(--ess-accent-dark) !important;

    font-size:30px;
    font-weight:700;
    line-height:1.05;

    text-align:center !important;
}

.del-essentielle-price-detail{
    display:block;

    margin-top:4px;

    color:#5e554e !important;

    font-size:11px;
    font-weight:700;
    line-height:1.35;

    text-align:center !important;
}


/* ==========================================================
   CALCULATEUR
   ========================================================== */

body.del-essentielle-main
form.cart{
    display:block !important;

    width:100% !important;

    margin:0 !important;
}

.del-essentielle-surface{
    width:100%;

    margin:0 0 13px;
    padding:17px 18px;

    background:#fff;

    border:1px solid var(--ess-border);

    box-sizing:border-box;
}

.del-essentielle-surface__heading{
    display:flex;

    align-items:center;
    justify-content:space-between;

    gap:12px;

    margin-bottom:9px;
}

.del-essentielle-surface__heading label{
    margin:0 !important;

    color:#26221f;

    font-size:10px;
    font-weight:700;
    line-height:1.3;

    text-transform:uppercase;
}

.del-essentielle-surface__heading > span{
    color:var(--ess-accent-dark);

    font-size:10px;
    font-weight:700;

    white-space:nowrap;
}

.del-essentielle-surface__control{
    display:flex;

    align-items:center;

    border:1px solid #d7cec4;

    background:#fff;
}

.del-essentielle-surface__control input{
    flex:1 1 auto;

    width:auto !important;
    min-width:0;
    height:40px;

    margin:0 !important;
    padding:0 11px !important;

    border:0 !important;
    border-radius:0 !important;

    box-shadow:none !important;
}

.del-essentielle-surface__control > span{
    display:flex;

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

    width:48px;
    height:40px;

    background:#f3eee8;

    color:var(--ess-accent-dark);

    font-weight:700;
}

.del-essentielle-surface__summary{
    margin-top:10px;

    border-top:1px solid #ebe3da;
    border-bottom:1px solid #ebe3da;
}

.del-essentielle-surface__summary > div{
    display:flex;

    align-items:center;
    justify-content:space-between;

    gap:14px;

    padding:6px 0;

    color:#5e554e;

    font-size:11px;
}

.del-essentielle-surface__summary strong{
    color:#26221f;

    white-space:nowrap;
}

.del-essentielle-surface__total{
    border-top:1px solid #ded5ca;
}

.del-essentielle-surface__total span{
    color:#26221f;

    font-weight:700;
}

.del-essentielle-surface__total strong{
    color:var(--ess-accent-dark);

    font-size:16px;
}

.del-essentielle-surface__note{
    margin:9px 0 0 !important;

    color:#726861 !important;

    font-size:10px !important;
    line-height:1.45 !important;

    text-align:left !important;
}

body.del-essentielle-main
form.cart > .quantity{
    display:none !important;
}

body.del-essentielle-main
.single_add_to_cart_button{
    width:100% !important;
    min-height:48px !important;

    margin:0 !important;

    border:1px solid var(--ess-accent) !important;
    border-radius:999px !important;

    background:var(--ess-black) !important;

    color:#e3bd91 !important;

    font-size:11px !important;
    font-weight:700 !important;

    text-transform:uppercase !important;
}


/* ==========================================================
   4 ATOUTS + BANDEAU
   ========================================================== */

.del-essentielle-top-extra{
    margin-top:25px !important;
    margin-bottom:34px !important;
}

.del-essentielle-top-extra__icons{
    display:grid;

    grid-template-columns:repeat(4,minmax(0,1fr));

    background:#faf7f3;

    border:1px solid var(--ess-border);
}

.del-essentielle-top-extra__card{
    padding:21px 18px;

    text-align:center;

    border-right:1px solid #e9e0d6;
}

.del-essentielle-top-extra__card:last-child{
    border-right:0;
}

.del-essentielle-top-extra__symbol{
    display:block;

    margin-bottom:9px;

    color:var(--ess-accent);

    font-size:28px;
    line-height:1;
}

.del-essentielle-top-extra__card h3{
    margin:0 0 6px !important;

    color:#26221f !important;

    font-size:11px !important;
    font-weight:700 !important;

    text-transform:uppercase;
}

.del-essentielle-top-extra__card p{
    margin:0 !important;

    color:#615952 !important;

    font-size:11px !important;
    line-height:1.45 !important;

    text-align:center !important;
}

.del-essentielle-top-extra__bar{
    display:grid;

    grid-template-columns:repeat(3,minmax(0,1fr));

    background:var(--ess-black);

    color:#fff;
}

.del-essentielle-top-extra__bar > div{
    padding:14px 18px;

    text-align:center;

    border-right:1px solid rgba(255,255,255,.12);
}

.del-essentielle-top-extra__bar > div:last-child{
    border-right:0;
}

.del-essentielle-top-extra__bar strong{
    display:block;

    margin-bottom:4px;

    color:#dfb889;

    font-size:11px;
    font-weight:700;

    text-transform:uppercase;
}

.del-essentielle-top-extra__bar span{
    display:block;

    color:#f1ece8;

    font-size:11px;
    line-height:1.4;
}


/* ==========================================================
   CONTENU
   ========================================================== */

.del-essentielle-container{
    width:calc(100% - 40px);
    max-width:1080px;

    margin:0 auto;
}

.del-essentielle-section{
    padding:64px 0;

    background:#fff;
}

.del-essentielle-section--soft{
    background:var(--ess-soft);
}

.del-essentielle-section--dark{
    background:var(--ess-black);

    color:#eee7e0;
}

.del-essentielle-section-head{
    max-width:820px;

    margin:0 auto 30px;

    text-align:center;
}

.del-essentielle-eyebrow{
    display:block;

    margin-bottom:10px;

    color:var(--ess-accent-dark);

    font-size:11px;
    font-weight:700;

    letter-spacing:1.5px;
    text-transform:uppercase;
}

.del-essentielle-section-head h2,
.del-essentielle-cta h2{
    margin:0 0 15px !important;

    color:#26221f !important;

    font-family:Georgia,"Times New Roman",serif;

    font-size:34px !important;
    font-weight:400 !important;
    line-height:1.2 !important;
}

.del-essentielle-section-head p{
    color:#5d554e !important;

    font-size:15px;
    line-height:1.68 !important;
}

.del-essentielle-highlight{
    display:flex;

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

    gap:22px;

    max-width:780px;

    margin:0 auto;

    padding:19px 22px;

    background:#faf7f3;

    border:1px solid var(--ess-border);
}

.del-essentielle-highlight strong{
    color:var(--ess-accent-dark);

    font-size:23px;
}

.del-essentielle-highlight span{
    color:#5f564f;

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

.del-essentielle-included-grid,
.del-essentielle-excluded-grid{
    display:grid;

    grid-template-columns:repeat(2,minmax(0,1fr));

    gap:12px 22px;

    max-width:930px;

    margin:0 auto;
}

.del-essentielle-included-grid > div,
.del-essentielle-excluded-grid > div{
    position:relative;

    padding:14px 16px 14px 43px;

    background:#fff;

    border:1px solid var(--ess-border);

    color:#554d46;

    font-size:13px;
    line-height:1.5;
}

.del-essentielle-included-grid > div::before{
    content:"✓";

    position:absolute;
    left:16px;

    color:var(--ess-accent);

    font-weight:700;
}

.del-essentielle-steps{
    display:grid;

    grid-template-columns:repeat(5,minmax(0,1fr));

    gap:16px;
}

.del-essentielle-steps article{
    padding:21px 17px;

    border-top:2px solid var(--ess-accent);
}

.del-essentielle-steps article > span{
    display:block;

    margin-bottom:10px;

    color:var(--ess-accent);

    font-size:26px;
}

.del-essentielle-steps h3{
    margin:0 0 7px !important;

    font-size:14px !important;
}

.del-essentielle-steps p{
    margin:0 !important;

    color:#625a54 !important;

    font-size:12px !important;
    line-height:1.5 !important;
}

.del-essentielle-section--dark
.del-essentielle-eyebrow{
    color:#d5a975;
}

.del-essentielle-section--dark
.del-essentielle-section-head h2{
    color:#fff !important;
}

.del-essentielle-section--dark
.del-essentielle-excluded-grid > div{
    background:rgba(255,255,255,.05);

    border-color:rgba(255,255,255,.14);

    color:#eee7e0;
}

.del-essentielle-section--dark
.del-essentielle-excluded-grid > div::before{
    content:"–";

    position:absolute;
    left:16px;

    color:#d5a975;
}

.del-essentielle-cta{
    padding:64px 20px;

    background:#eee6dc;

    text-align:center;
}

.del-essentielle-cta p{
    max-width:700px;

    margin:0 auto 24px !important;

    color:#5e554e !important;
}

.del-essentielle-button{
    display:inline-block !important;

    padding:13px 28px !important;

    background:var(--ess-black) !important;

    border:1px solid var(--ess-black) !important;
    border-radius:999px !important;

    color:#fff !important;

    font-size:12px !important;
    font-weight:700 !important;

    text-decoration:none !important;
}


/* ==========================================================
   FICHE M² MINIMALE
   ========================================================== */

body.del-essentielle-addon
.entry-summary form.cart,
body.del-essentielle-addon
.woocommerce-tabs,
body.del-essentielle-addon
.del-essentielle-top-extra,
body.del-essentielle-addon
.del-essentielle-content{
    display:none !important;
}

body.del-essentielle-addon
.del-essentielle-summary-main--addon h2{
    margin:0 0 14px !important;

    color:#26221f !important;

    font-family:Georgia,"Times New Roman",serif;

    font-size:24px !important;
    font-weight:400 !important;
}

.del-essentielle-addon-card{
    padding:20px;

    background:var(--ess-soft);

    border:1px solid var(--ess-border);
    border-left:3px solid var(--ess-accent);
}

.del-essentielle-addon-card__price{
    display:flex;

    align-items:baseline;

    gap:8px;

    margin-bottom:12px;
}

.del-essentielle-addon-card__price strong{
    color:#26221f;

    font-family:Georgia,"Times New Roman",serif;

    font-size:30px;
    font-weight:400;
}

.del-essentielle-addon-card__price span{
    color:#655c55;

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

.del-essentielle-addon-card__formula{
    padding:9px 11px;

    background:#fff;

    border-left:3px solid var(--ess-accent);
}

.del-essentielle-addon-card p{
    color:#574f49 !important;

    font-size:12px !important;
    line-height:1.55 !important;

    text-align:left !important;
}

.del-essentielle-addon-card__button{
    display:block !important;

    width:100% !important;

    margin-top:15px;
    padding:12px 16px !important;

    background:var(--ess-black) !important;

    border:1px solid var(--ess-accent) !important;
    border-radius:999px !important;

    color:#dfb889 !important;

    font-size:11px !important;
    font-weight:700 !important;

    text-align:center !important;
    text-decoration:none !important;

    box-sizing:border-box !important;
}


/* ==========================================================
   PANIER
   ========================================================== */

.del-essentielle-locked-qty{
    display:inline-flex;

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

    min-width:66px;

    padding:6px 8px;

    background:#efe7dd;

    color:#5c4c3e;

    font-size:12px;
    font-weight:700;

    white-space:nowrap;
}

.del-essentielle-cart-linked{
    display:block;

    margin-top:5px;

    color:#8a7158;

    font-size:11px;
    line-height:1.35;
}


/* ==========================================================
   MOBILE
   ========================================================== */

@media only screen and (max-width:959px){

    body.del-essentielle-product:not(.template-slider) #Header{
        min-height:0 !important;
        height:auto !important;
    }

    body.del-essentielle-product #Header_wrapper{
        min-height:0 !important;
    }

    body.del-essentielle-product
    #Content
    div.product
    .product_wrapper.del-essentielle-product-layout{
        display:block !important;

        width:100% !important;
        max-width:760px !important;

        margin:0 auto 24px !important;
        padding:0 14px !important;
    }

    body.del-essentielle-product
    .del-essentielle-top-extra,
    body.del-essentielle-product
    .del-essentielle-content{
        position:static !important;

        width:100% !important;
        max-width:none !important;

        transform:none !important;
    }

    .del-essentielle-summary-main__grid{
        grid-template-columns:1fr;
    }

    .del-essentielle-top-extra__icons{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }

    .del-essentielle-top-extra__bar{
        grid-template-columns:1fr;
    }

    .del-essentielle-steps{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
}


@media only screen and (max-width:600px){

    .del-essentielle-gallery-caption{
        left:0;
        bottom:3%;

        width:100%;
        min-width:0;

        padding:15px 18px;
    }

    .del-essentielle-gallery-title{
        font-size:24px;
    }

    .del-essentielle-gallery-subtitle{
        font-size:12px;
    }

    .del-essentielle-gallery-text{
        font-size:12px;
    }

    .del-essentielle-top-extra__icons,
    .del-essentielle-included-grid,
    .del-essentielle-excluded-grid,
    .del-essentielle-steps{
        grid-template-columns:1fr;
    }

    .del-essentielle-highlight{
        flex-direction:column;

        gap:5px;
    }

    .del-essentielle-section-head h2,
    .del-essentielle-cta h2{
        font-size:28px !important;
    }

    .del-essentielle-surface__heading{
        align-items:flex-start;
        flex-direction:column;

        gap:4px;
    }
}


/* ==========================================================
   V2 - FORMULAIRE CALCULATEUR ROBUSTE
   ========================================================== */

body.del-essentielle-main
.del-essentielle-cart-form{
    display:block !important;

    width:100% !important;
    max-width:none !important;

    margin:0 !important;
    padding:0 !important;

    float:none !important;
    clear:both !important;
}

body.del-essentielle-main
.del-essentielle-cart-form
.del-essentielle-surface{
    display:block !important;

    width:100% !important;

    margin:0 0 14px !important;
}

body.del-essentielle-main
.del-essentielle-cart-form
.single_add_to_cart_button{
    display:flex !important;

    align-items:center !important;
    justify-content:center !important;

    width:100% !important;
    min-height:50px !important;

    margin:0 !important;
}
