
.single-product {
    header.aux-overlay-header {
        background-color: var(--e-global-color-primary);
    }
    main{
    padding-top: 150px;
    .aux-container.aux-fold {
        max-width: none;
        padding-left: 0;
        padding-right: 0;
        div.product div.images {
            box-sizing: border-box;
            float: left;
            clear: none;
            width: min(50%, 700px);
            /* Centre le duo galerie + résumé quand le conteneur dépasse 1400px */
            margin: 0 25px 0 max(0px, calc(50% - 750px));
            .woocommerce-product-gallery__image {
                border-radius: 20px;
            }
            .flex-control-thumbs {
                li {
                    margin: 15px;
                    width: 20%;
                    img{
                        border-radius: 20px;
                    }
                }
            }
            .flex-nav-prev, .flex-nav-next {
                display: none !important;
            }

        }

        div.product div.summary {
            box-sizing: border-box;
            float: left;
            clear: none;
            width: min(50%, 700px);
            margin: 0 0 0 25px;
            /* padding-left: 40px; */ /* décommente pour aérer le texte par rapport à l'image */
            h1.product_title.entry-title {
                color: var(--e-global-color-primary);
            }
            .tag {
                background-color: #57afbf81;
                color: var(--e-global-color-primary);
                padding: 10px 30px;
                border-radius: 20px;
                font-size: 15px;
                margin-right: 10px;
                margin-bottom: 10px;
            }
            .woocommerce-product-details__short-description {
                color: var(--e-global-color-primary);
                h2 {
                    font-size: 30px;
                }
                h3 {
                    font-size: 26px;
                }
                h4 {
                    font-size: 22px;
                }
            }
            .price {
                margin-top: 30px;
                .woocommerce-Price-amount {
                    font-size: 40px;
                    color: var(--e-global-color-primary);
                }
            }
            .volume {
                border: 1px solid var(--e-global-color-primary);
                background-color: white;
                padding: 15px;
                border-radius: 20px;
                color: var(--e-global-color-primary);
                width: fit-content;
                margin-bottom: 30px;
            }
            form.cart .quantity .qty {
                width: auto;
                text-align: center;
                padding: 10px 30px;
                border-radius: 20px;
                border: 1px solid var(--e-global-color-primary);
            }
            button.single_add_to_cart_button {
                background-color: var(--e-global-color-primary);
                border-radius: 20px;
            }
            .fiche-technique {
                background: #fff;
                border-radius: 16px;
                padding: 10px 30px;
                width: 100%;
                box-sizing: border-box;
                margin-top: 25px;
                summary {
                    display: flex;
                    align-items: center;
                    justify-content: space-between;
                    min-height: 60px;

                    cursor: pointer;
                    list-style: none;

                    color: var(--e-global-color-primary);
                    font-size: 14px;
                    font-weight: 700;
                    text-transform: uppercase;
                    letter-spacing: 1px;

                    &::-webkit-details-marker {
                        display: none;
                    }
                
                    &::marker {
                        display: none;
                    }
                
                    .fleche {
                        width: 8px;
                        height: 8px;
                        border-right: 1.5px solid var(--e-global-color-primary);
                        border-bottom: 1.5px solid var(--e-global-color-primary);
                        transform: rotate(45deg);
                        transition: transform 0.25s ease;
                    }
                }
            
                &[open] {
                    summary {
                        .fleche {
                            transform: rotate(225deg);
                        }
                    }
                }
                h3 {
                    margin: 0;
                    color: var(--e-global-color-primary);
                    font-size: 18px;
                    font-weight: 700;
                    line-height: 1.2;
                    text-transform: uppercase;
                    letter-spacing: 1px;
                }
                .ft_item {
                    border-top: 1px solid rgb(0 56 74 / 25%);
                    padding-top: 25px;
                    h4 {
                        font-size: 18px;
                        color: var(--e-global-color-primary);
                    }
                    p {
                        color: var(--e-global-color-primary);
                    }
                }
            
                ul {
                    list-style: none;
                    margin: 0;
                    padding: 0;
                
                    li {
                        display: flex;
                        align-items: center;
                        justify-content: space-between;
                        gap: 20px;
                        min-height: 36px;
                        padding: 8px 0;
                        border-bottom: 1px solid #edf0f2;
                    
                        &:last-child {
                            border-bottom: none;
                        }
                    
                        .libelle {
                            color: #8a9bad;
                            font-size: 15px;
                            font-weight: 400;
                            line-height: 1.4;
                            text-transform: uppercase;
                            letter-spacing: 1.2px;
                        }
                    
                        .valeur {
                            color: var(--e-global-color-primary);
                            font-size: 15px;
                            font-weight: 700;
                            line-height: 1.4;
                            text-align: right;
                        }
                    }
                }
            }
            .profil-aromatique {
                margin-top: 25px;
                padding: 10px 30px;
                border-radius: 20px;
                background: var(--e-global-color-primary);
                color: #fff;
                summary {
                    display: flex;
                    align-items: center;
                    justify-content: space-between;
                    min-height: 60px;
                            
                    cursor: pointer;
                    list-style: none;
                            
                    color: var(--e-global-color-primary);
                    font-size: 14px;
                    font-weight: 700;
                    text-transform: uppercase;
                    letter-spacing: 1px;
                            
                    &::-webkit-details-marker {
                        display: none;
                    }
                
                    &::marker {
                        display: none;
                    }
                
                    .fleche {
                        width: 8px;
                        height: 8px;
                        border-right: 1.5px solid white;
                        border-bottom: 1.5px solid white;
                        transform: rotate(45deg);
                        transition: transform 0.25s ease;
                    }
                }
            
                &[open] {
                    summary {
                        .fleche {
                            transform: rotate(225deg);
                        }
                    }
                }
                h3 {
                    margin: 0;
                    color: #fff;
                    font-size: 18px;
                    font-weight: 700;
                    line-height: 1.2;
                    text-transform: uppercase;
                    letter-spacing: 1px;
                }
                
                ul {
                    display: flex;
                    flex-direction: column;
                    gap: 15px;
                    margin: 0;
                    padding: 0;
                    list-style: none;
                }
                
                li {
                    display: grid;
                    grid-template-columns: 1fr auto;
                    gap: 8px;
                    position: relative;
                    padding-bottom: 18px;
                    
                    &::after,
                    &::before {
                        content: "";
                        position: absolute;
                        bottom: 0;
                        left: 0;
                        height: 7px;
                        border-radius: 999px;
                    }
                    
                    &::after {
                        width: 100%;
                        background: rgba(255, 255, 255, 0.12);
                    }
                    
                    &::before {
                        z-index: 1;
                        width: var(--profil-value);
                        background: color-mix(
                            in srgb,
                            var(--e-global-color-secondary) 35%,
                            #fff
                            );
                        }
                    }
                    .profil-withicon {
                        display: flex;
                        flex-direction: row;
                        gap: 30px;
                        margin-bottom: 30px;
                        .withicon {
                            width: fit-content;
                            display: flex;
                            align-items: center;
                            gap: 15px;
                            background-color: #0d4a5b;
                            border: 1px solid rgb(255 255 255 / 25%);
                            border-radius: 20px;
                            padding: 10px 30px;
                            img {
                                width: 50px;
                            }
                        }
                    }
                    .libelle,
                    .valeur {
                        color: #fff;
                        font-size: 15px;
                        line-height: 1;
                    }
                    
                    .valeur {
                        text-align: right;
                    }
            }                
        }
        .woocommerce-tabs.wc-tabs-wrapper {
            max-width: 1400px;
            margin: auto;
            h2, p {
                color: var(--e-global-color-primary);
            }
            ul.tabs li {
                border: 1px solid #cfc8d8;
                background-color: var(--e-global-color-primary);
                
                display: inline-block;
                position: relative;
                z-index: 0;
                border-radius: 4px 4px 0 0;
                margin: 0 -5px;
                padding: 1em 2em;
                &.active {
                    background-color: var(--e-global-color-secondary);
                    a {
                        color: var(--e-global-color-primary);
                    }
                }
                a {
                    color: white;
                }
            }
            .woocommerce-Tabs-panel .ft_item {
                    border-top: 1px solid rgb(0 56 74 / 25%);
                    padding-top: 25px;
                    display: flex;
                    gap: 25px;
                    h4 {
                        font-size: 18px;
                        color: var(--e-global-color-primary);
                        display: inline-flex;
                    }
                    p {
                        color: var(--e-global-color-primary);
                        display: inline-flex;
                    }
                }
        }

        }
        .description_personnage {
            display: flex;
            clear: both;
            width: 100%;    
            margin-top: 25px;
            position: relative;
            flex-direction: row;
            padding: 150px 0 0 0;
            .prenom_personnage {
                font-family: 'Krona One';
                font-size: 250px;
                margin: 100px auto 0;
                text-transform: uppercase;
                font-weight: 700;
                position: absolute;
                top: 0;
                left: 50%;
                transform: translateX(-50%);
                display: block;
                pointer-events: none;
                z-index: 0;
            }
            .illustration_personnage {
                width: 50%;
                display: flex;
                z-index: 1;
                img {
                    align-self: flex-end;
                }
            }
            .paragraphe_de_description {
                align-self: center;
                z-index: 1;
                .nom_bloc {
                    color: var(--e-global-color-accent);
                    text-transform: uppercase;
                    font-weight: 700;
                }
            }
        }
        .related.products {
            background-color: var(--e-global-color-primary);
            padding: 150px 0 0;
            position: relative;
            
            h2 {
                color: white;
                font-weight: 500;
                margin-bottom: 20px !important;
            }
            h2, ul {
                max-width: 1400px;
                margin: auto;
            }
            ul li.product {
                border-radius: 20px;
                background-color: white;
                padding: 0 0 30px 0;
                min-width: 31%;

                img {
                    border-radius: 20px 20px 0 0;
                }
                h2.woocommerce-loop-product__title {
                    color: var(--e-global-color-primary);
                }
                .woocommerce-loop-product__title, .loop-meta-wrapper, .price {
                    padding: 0 30px;
                }
                .price {
                    font-size: 20px;
                    font-family: 'Krona One', sans-serif;
                    color: var(--e-global-color-primary);
                    font-weight: 700;
                }
                a.add_to_cart_button {
                   display: flex;
                    width: fit-content;
                    justify-self: end;
                    margin-right: 30px;
                    background-color: var(--e-global-color-primary);
                    margin-bottom: 0;
                    margin-top: 0;
                    border-radius: 20px;
                    color: white;
                }

            }
        }
        .description_personnage::before, .related.products::before {
            content: "";
            position: absolute;
            top: -1px;
            left: 0;
            width: 100%;
            height: 100px;
            background-color: var(--e-global-color-cd08248);
            transform: scaleX(-1); /* équivalent de ton rotateY(180deg) */
            pointer-events: none;
            -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 500 130' preserveAspectRatio='none'%3E%3Cpath d='M0,100 C150,200 350,0 500,100 L500,0 L0,0 Z'/%3E%3C/svg%3E") center / 100% 100% no-repeat;
                    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 500 130' preserveAspectRatio='none'%3E%3Cpath d='M0,100 C150,200 350,0 500,100 L500,0 L0,0 Z'/%3E%3C/svg%3E") center / 100% 100% no-repeat;
        }
    }
}

/* Mobile : on empile */
@media (max-width: 1450px) {
    .single-product .main .aux-container.aux-fold div.product div.images {
        /*width: min(50%, 700px);*/
        /*/* Centre le duo galerie + résumé quand le conteneur dépasse 1400px */
        /*margin: 0 25px 0 max(0px, calc(50% - 750px));*/
    }
}
@media (max-width: 1024px) {
    .single-product .aux-container.aux-fold div.product div.images,
    .single-product .aux-container.aux-fold div.product div.summary {
        float: none;
        width: 100% !important;
        padding: 15px;
        margin: 0;
        .flex-control-thumbs {
            display: flex;
            flex-wrap: wrap;
                li {
                    margin: 5px !important;
                }
            }
    }
    .single-product main{
        padding-top: 75px;
    
        .aux-container.aux-fold {
            div.product {
                div.summary {
                    margin: 0 !important;
                    h1.entry-title {
                        font-size: 40px;
                    }
                    .fiche-technique, .profil-aromatique {
                        margin-top: 10px !important;
                    }
                    .profil-aromatique {
                        .profil-withicon {
                            flex-direction: column !important;
                        }
                    }
                    .tag {
                        line-height: 3;
                    }
                }
            }
            div.woocommerce-tabs {
                ul.tabs {
                    margin-left: 20px;
                }
                .woocommerce-Tabs-panel {
                    padding: 20px;
                }
            }
            .related.products {
                padding: 150px 20px 0;
                .product {
                    h2.woocommerce-loop-product__title, .price {
                        padding: 0 10px !important;
                    }
                    a.add_to_cart_button {
                        margin-right: 0;
                        font-size: 15px;
                        display: flex;
                        justify-self: center;
                    }
                }
            }
        }
    }
}