/*
Theme Name: Pier2ni 2025 Woo
Theme URI: http://pier2ni.fr
Author: Pierre Denis
Author URI: http://pier2ni.fr
Description: Le thème du site Pier2ni.fr V.2025. woo
Version: 3.0
Tags: 
*/

/* 1............................................ CONFIGURATION & VARIABLES */
:root {
    --main-color-1: #010412; /* Fond sombre / Texte principal */
    --main-color-2: #959498; /* Gris texte secondaire */
    --main-color-3: #61ce70; /* Vert Accent (Actions / Success) */
    --main-color-4: #fd9901; /* Orange Accent (Alertes / Warnings) */
    --main-color-5: #ececec; /* Clair (Texte sur fond sombre / Fond clair) */
    --transition-fast: all 0.3s ease;
    --transition-slow: all 0.5s ease;
}

/*  ............................................ ............................................ A ENLEVER */

#pier2ni-id .woocommerce-variation-add-to-cart button.disabled {
    display: none;
}
/*  ............................................ ............................................ A ENLEVER */

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

html {
    scroll-behavior: smooth;
}

body {
    background-color: var(--main-color-1);
    color: var(--main-color-2);
    font-family: "Raleway", sans-serif;
    line-height: 1.6;
    overflow-x: hidden;
    font-size: 1rem;
    position: relative;
}

.home:after {
    position: absolute;
    content: "";
    z-index: -1;
    top: 0;
    right: 0;
    display: inline-block;
    height: 0;
    width: 0;
    border-top: 150vw solid var(--main-color-3);
    border-left: 40vw solid transparent;
}

.competences,
.pier2ni .bg-light {
    background-color: var(--main-color-5) !important;
}

.hero-section h2 span {
    color: var(--main-color-3);
}
.hero-section p span {
    color: var(--main-color-4);
}

/* 2............................................ TYPOGRAPHIE GÉNÉRALE */

b,
strong,
span.bold {
    font-weight: 900;
}

h1 strong {
    font-weight: 300;
}

.pier2ni h1,
.pier2ni h2,
.pier2ni h3 {
    margin-bottom: 30px;
    line-height: 1.2;
}

.pier2ni .hero-section h3,
.pier2ni .hero-section h1 {
    margin-bottom: 0;
}

.pier2ni h1 {
    font-size: 1.8rem;
}

.pier2ni h2 {
    font-size: 3.2rem;
    font-family: "Kotta One", serif;
}

.pier2ni p {
    line-height: 1.8;
    margin-bottom: 20px;
}

.pier2ni .product-full-description p:last-child {
    margin-bottom: 0;
}

.citation blockquote > p,
.pier2ni h2,
.pier2ni h3 {
    text-transform: uppercase;
}

.citation blockquote > p {
    font-size: 2.5rem;
    line-height: 1.2;
}

.tableaux .gallerie h2 {
    font-size: 0.8em;
    color: var(--main-color-1);
}

.mise-en-avant-tableau h2 {
    font-size: 2rem;
}

.blocs-competences article h2 {
    font-size: 1.2rem;
    line-height: 1.2;
    padding: 15px 0;
    text-align: center;
}

/* 3............................................ NAV */

nav.main-navigation-interactive {
    z-index: 9000;
}

/* icon candy box */

/* Container de la Candy Box */
.candy-box-icon {
    width: 24px;
    height: 24px;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-template-rows: repeat(3, 1fr);
    gap: 3px; /* Espace entre les points */
    transition: transform 0.3s ease-in-out;
}

/* Style de chaque point */
.candy-box-icon span {
    background-color: var(--main-color-5); /* Couleur des points */
    border-radius: 50%; /* Change à 0% si tu préfères des petits carrés (pixels) */
    width: 4px;
    height: 4px;
    transition:
        background-color 0.3s ease,
        transform 0.2s ease;
}

/* Suppression du style par défaut du bouton Bootstrap */
.navbar-toggler {
    padding: 0;
    border: none;
    box-shadow: none !important;
}

/* Animation au survol du bouton */
.navbar-toggler:hover .candy-box-icon {
    transform: rotate(90deg); /* Le menu pivote légèrement */
}

.navbar-toggler:hover .candy-box-icon span {
    background-color: var(--main-color-2); /* Utilise ta variable couleur si définie */
}

.pier2ni nav {
    background-color: transparent;
    padding: 10px 30px;
}

#pier2ni-id #offcanvasNavbar {
    background-color: var(--main-color-1) !important;
}

.pier2ni .navbar-collapse {
    margin-bottom: 30px;
}

.pier2ni .navbar-brand img {
    width: 60px;
}

.pier2ni .menu-item {
    font-size: 0.9rem;
    text-transform: uppercase;
    display: inline-block;
    margin-bottom: 10px;
}

.pier2ni .menu-item:hover {
    color: var(--main-color-2);
}

nav.navbar ul li a,
nav.navbar ul li a:after,
nav.navbar ul li a:before {
    transition: var(--transition-slow);
}

nav.navbar ul li a {
    position: relative;
    text-decoration: none;
    color: var(--main-color-2);
    padding: 10px;
    margin-bottom: 10px;
}
nav.navbar ul li a:after {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    width: 0%;
    content: ".";
    color: transparent;
    background: var(--main-color-2);
    height: 2px;
}

nav.navbar ul li a:hover:after,
.sub-menu li {
    width: 100%;
}

.sub-menu {
    margin-top: 10px;
}

nav.navbar ul li,
.navbar-brand {
    margin: 0 30px 0 0;
    background-color: var(--main-color-1);
}

nav.navbar ul li {
    padding: 5px;
}

@media (max-width: 992px) {
    nav.navbar ul li {
        width: 100%;
    }

    nav .navbar-toggler {
        background-color: var(--main-color-1);
    }
}

@media (max-width: 768px) {
    nav.navbar ul li,
    .navbar-brand {
        margin: 0 30px 0 0;
    }
    .navbar-brand img {
        width: 60px;
    }
    #menu-menu-pier2ni {
        flex-direction: column;
    }
}

.navbar-actions .nav-link {
    color: var(--main-color-5);
    font-size: 1.2rem;
    transition: var(--transition-fast);
}

.navbar-actions .nav-link:hover {
    opacity: 0.7;
}
*/

/* On ajuste la pastille du panier pour qu'elle soit discrète */
.navbar-actions .badge {
    padding: 0.35em 0.5em;
    font-weight: 500;
    font-size: 0.6rem;
    background-color: var(--main-color-3);
}

/* Si tu n'utilises pas FontAwesome, on peut utiliser les Dashicons de WP */
.dashicons {
    vertical-align: middle;
    width: auto;
    height: auto;
}

/* 4............................................ LIEN / CTA / BTN */

.pier2ni .infos-contact a {
    color: var(--main-color-1);
    opacity: 1;
    transition: var(--transition-slow);
}

.pier2ni .infos-contact a:hover {
    opacity: 0.5;
    transition: var(--transition-slow);
}

.ctas-texte {
    padding: 30px 0 30px;
}

.cta a,
.ctatableaux a,
.ctablanc a {
    border: 1px solid;
    border-radius: 0;
    font-size: 1rem;
    transition-duration: 0.5s;
    text-decoration: none;
}

.tableaux a {
    text-decoration: none;
}

#pier2ni-id .btn-dark,
#pier2ni-id .btn {
    border: 1px solid;
    border-radius: 0;
    font-size: 1rem;
}

#pier2ni-id .btn.badge {
    font-size: 0.8rem;
    opacity: 0.6;
    transition: var(--transition-fast);
    background-color: var(--main-color-2);
}

#pier2ni-id .btn.badge:hover,
#pier2ni-id .tag-filters .active {
    opacity: 1;
    transition: var(--transition-fast);
}

#pier2ni-id .btn-outline-dark {
    border-color: var(--main-color-2);
    color: var(--main-color-2);
    background-color: transparent;
    opacity: 0.6;
    transition: var(--transition-fast);
}

#pier2ni-id .btn-outline-dark.active {
    border-color: var(--main-color-3);
    color: var(--main-color-3);
}

#pier2ni-id .btn-outline-dark:hover {
    opacity: 1;
    transition: var(--transition-fast);
}

#pier2ni-id .swatch-item .btn {
    border-color: var(--main-color-2);
    color: var(--main-color-2);
    transition: var(--transition-slow);
}

#pier2ni-id .swatch-item .btn:hover {
    color: var(--main-color-1);
    background-color: var(--main-color-2);
    transition: var(--transition-slow);
}

#pier2ni-id .cta-finitions {
    padding-bottom: 10px;
}

#pier2ni-id .cta-finitions a {
    color: var(--main-color-3);
    opacity: 0.6;
    transition: var(--transition-fast);
}

#pier2ni-id .cta-finitions a:hover {
    opacity: 1;
    transition: var(--transition-fast);
}

/* Option sélectionnée */
.swatch-item.is-selected label {
    border-color: var(--main-color-3) !important;
    color: var(--main-color-3) !important;
}

/* Option grisée (incompatible) */
.swatch-item.disabled-swatch {
    opacity: 0.3;
    pointer-events: none; /* Désactive le clic */
}

.swatch-item.disabled-swatch label {
    background-color: #eee !important;
    text-decoration: line-through;
}

.row .cta,
.row .ctatableaux,
.row .ctablanc {
    width: auto;
}

.row .ctablanc a,
.row .cta a {
    color: var(--main-color-1);
    background-color: var(--main-color-5);
}

.row .cta a {
    border-color: var(--main-color-5);
    transition: var(--transition-slow);
}

.row .ctablanc a {
    border-color: var(--main-color-1);
    transition: var(--transition-slow);
}

.row .cta a:hover,
.row .ctablanc a:hover {
    color: var(--main-color-5);
    background-color: var(--main-color-1);
    transition: var(--transition-slow);
}

.row .ctatableaux a {
    color: var(--main-color-3);
    border-color: var(--main-color-3);
    background-color: var(--main-color-1);
    transition: var(--transition-slow);
}

.row .ctatableaux a:hover {
    color: var(--main-color-1);
    background-color: var(--main-color-3);
    transition: var(--transition-slow);
}

@media (max-width: 420px) {
    .row .cta {
        height: 50px;
        margin-bottom: 15px;
    }
}

/* 4.1 ............................................ Boutons WooCommerce */
/*#pier2ni-id #respond input#submit,
#pier2ni-id a.button,
#pier2ni-id button.button,
#pier2ni-id input.button {
    font-family: "Raleway", sans-serif;
    border: 1px solid var(--main-color-3);
    border-radius: 0;
    background-color: transparent;
    color: var(--main-color-3);
    padding: 12px 25px;
    transition: var(--transition-slow);
}*/

#pier2ni-id a.wc-forward,
#pier2ni-id a.btn-outline-secondary {
    border: 1px solid var(--main-color-2);
    color: var(--main-color-2);
    transition: var(--transition-slow);
    opacity: 0.8;
    margin: 0 15px;
    border-radius: 0;
    padding: 12px 25px;
    background-color: transparent;
}

#pier2ni-id a.wc-forward:hover,
#pier2ni-id a.btn-outline-secondary:hover {
    background-color: var(--main-color-2);
    color: var(--main-color-1);
    transition: var(--transition-slow);
    opacity: 1;
}

#pier2ni-id a.wc-forward.checkout,
#pier2ni-id button.single_add_to_cart_button {
    border: 1px solid var(--main-color-3);
    color: var(--main-color-3);
    transition: var(--transition-slow);
    opacity: 1;
    border-radius: 0;
    padding: 12px 25px;
    background-color: transparent;
}

#pier2ni-id a.wc-forward.checkout:hover,
#pier2ni-id button.single_add_to_cart_button:hover {
    background-color: var(--main-color-3);
    color: var(--main-color-1);
    transition: var(--transition-slow);
    opacity: 1;
}

#pier2ni-id div.product form.cart .variations label {
    font-weight: 300;
}

#pier2ni-id .woocommerce-variation-add-to-cart button.disabled {
    color: var(--main-color-2);
    border: 1px solid var(--main-color-2);
}

/*#pier2ni-id #respond input#submit:hover,
#pier2ni-id a.button:hover,
#pier2ni-id button.button:hover,
#pier2ni-id input.button:hover {
    background-color: var(--main-color-3);
    color: var(--main-color-1);
}*/

#pier2ni-id .woocommerce-variation-add-to-cart button.disabled:hover {
    color: var(--main-color-2);
    background-color: var(--main-color-2);
}

#pier2ni-id .woocommerce-notices-wrapper {
    display: none;
}

#pier2ni-id .single_add_to_cart_button {
    width: 100%;
    margin-bottom: 30px;
}

/* 5 ............................................ SECTIONS GÉNÉRIQUES */

.competences,
.qui-suis-je,
.galerie-home {
    padding: 60px 0;
    margin-top: 60px;
}

.home-finition {
    border-top: 1px solid var(--main-color-2);
    padding-top: 30px;
    margin-top: 30px;
    text-align: center;
}

.competences {
    margin-bottom: 60px;
}

.hero-section {
    color: var(--main-color-2);
    /*padding: 80px 0 0 0 !important;
    border-top: 1px solid var(--main-color-2);*/
}

.single-product .hero-section {
    padding: 50px 0 0 0 !important;
}

.hero-section .illustra img {
    width: 100%;
    height: auto;
}

.page-template-contact .illustra img,
.page-template-template-creations .illustra img,
.page-id-1144 .illustra img {
    padding-top: 50px;
}

.hero-section .intro {
    display: flex;
    align-items: center;
}

.competences .blocs-competences p {
    margin-bottom: 0;
}

.citation {
    text-align: center;
    margin: auto;
    padding-bottom: 30px;
    /*border-bottom: 1px solid var(--main-color-1);*/
}

.citation blockquote > p {
    font-style: italic;
}

.citation blockquote > p span {
    font-weight: 900;
    display: block;
}

.citation .auteur {
    font-size: 1em;
    text-transform: none;
    font-style: normal;
}

.blocs-competences article {
    padding-top: 60px;
}

.blocs-competences article img {
    margin: auto;
    display: block;
}

.blocs-competences article p {
    padding-left: 15px;
    border-left: 1px solid var(--main-color-1);
}

.imgfinition {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 200px;
    border: 1px solid var(--main-color-2);
    overflow: hidden;
}

.imgfinition img {
    width: 100%;
    height: auto;
    display: block;
}

/* ............................................ back to top */

#backToTop {
    display: none; /* Caché par défaut */
    position: fixed;
    bottom: 20px;
    right: 30px;
    z-index: 99;
    outline: none;
    background-color: var(--main-color-2); /* Couleur de fond */
    border: 3px solid var(--main-color-5);
    cursor: pointer;
    border-radius: 50%; /* Bouton rond */
    width: 47px;
    height: 47px;
    opacity: 0.8;
    transition: var(--transition-slow);
}

#backToTop .cls-1 {
    fill: var(--main-color-5);
}

#backToTop:hover {
    opacity: 1;
    transition: var(--transition-slow);
}

#pier2ni-id #backToTop svg {
    vertical-align: text-top;
    width: 60%;
}

/* ............................................ qui suis je */

.home .qui-suis-je img {
    filter: invert(1);
}

.qui-suis-je {
    background-color: var(--main-color-1);
}

.qui-suis-je .intro {
    color: var(--main-color-2);
}

.illustra img {
    width: 100%;
    height: auto;
    margin-bottom: 30px;
}

/* ............................................ Mise en avant tableau */

.mise-en-avant-tableau .lientableau {
    position: relative;
}

.mise-en-avant-tableau .lientableau:after {
    content: url(img/en-voir-plus.svg);
    position: absolute;
    right: 30px;
    bottom: 30px;
    transition: var(--transition-slow);
}

.mise-en-avant-tableau .lientableau .univers-content {
    position: absolute;
    bottom: 0;
    transition: var(--transition-slow);
    opacity: 0.5;
}

.mise-en-avant-tableau .lientableau:hover:after {
    right: 50%;
    bottom: 50%;
    transform: scale(3, 3) translate(20%, 20%);
    transition: var(--transition-slow);
}

.mise-en-avant-tableau .lientableau:hover .univers-content {
    right: 50%;
    transform: translate(50%, 0%);
    transition: var(--transition-slow);
    opacity: 0.8;
    padding: 0 0 1.5rem 0 !important;
}

.mise-en-avant-tableau .lientableau:hover img {
    filter: blur(2px);
    transition: all 0.5s;
}

/* ............................................ Mise en avant projets / Galerie / Portfolio */

/*.mise-en-avant-projet {
    padding-left: 30px !important;
}*/

.mise-en-avant-projet a {
    color: var(--main-color-2);
    text-decoration: none;
    margin-bottom: 15px;
}

.mise-en-avant-projet img {
    width: 100%;
    height: auto;
    filter: grayscale(100%);
    -webkit-filter: grayscale(100%);
    transition: var(--transition-slow);
}

.gallerie img,
.category-portfolio section img {
    width: 100%;
    height: auto;
    /*filter: blur(2px);
    -webkit-filter: blur(2px);*/
    transition: var(--transition-slow);
}

.mise-en-avant-projet a:hover img {
    filter: none;
    -webkit-filter: none;
    transition: var(--transition-slow);
}

.gallerie:hover img,
.category-portfolio section img:hover {
    -webkit-transform: scale(1.5);
    transform: scale(1.5);
    rotate: 30deg;
    /*filter: none;
    -webkit-filter: none;*/
    transition: var(--transition-slow);
}

/* Empêche les images de déborder avant le calcul Masonry */
.masonry-grid .grid-item {
    float: left;
}

/* Le sizer doit être invisible mais présent pour le calcul */
.grid-sizer {
    visibility: hidden;
    pointer-events: none;
    height: 0;
}

/* S'assurer que les images ne bloquent pas le calcul de hauteur */
.grid-item img {
    display: block;
    max-width: 100%;
    height: auto;
}

.gallerie {
    position: relative;
}

.tableaux a {
    display: inline-block;
}

/* ............................................ Single tableaux */

.descriptiontableau {
    color: var(--main-color-5);
}

.descriptiontableau li {
    margin-bottom: 15px;
}

.single-tableaux .blockportfolioimg .miniature {
    padding: 0;
}

.single-tableaux .col-md-8 {
    padding-left: 30px;
}

body.single-tableaux .descriptiontableau {
    padding: 0 30px;
}

.tableaux article {
    margin-bottom: 30px;
}

/* 6 ............................................ Contact */

.pier2ni .tel,
.pier2ni .mail,
.pier2ni .lkd,
.pier2ni .insta {
    font-size: 1em;
    position: relative;
    margin: 0 45px 5px 45px;
}

.pier2ni .lkd {
    margin-bottom: 30px;
}

.pier2ni .tel:before,
.pier2ni .mail:before,
.pier2ni .lkd:before,
.pier2ni .insta:before {
    position: absolute;
    display: block;
    width: 20px;
    height: 20px;
    left: -30px;
    content: "";
    bottom: 8px;
}

.pier2ni .tel:before {
    background: url("img/telephone-noir.webp") no-repeat 0 0;
    background-size: 100%;
}

.pier2ni .mail:before {
    background: url("img/mail-noir.webp") no-repeat 0 0;
    background-size: 100%;
}

.pier2ni .lkd:before {
    background: url("img/Linkedin_pier2ni-noir.svg") no-repeat 0 0;
    background-size: 100%;
}

.pier2ni .insta:before {
    background: url("img/Instagram_pier2ni-noir.svg") no-repeat 0 0;
    background-size: 100%;
}

.pier2ni .infos-contact {
    margin-bottom: 60px;
}

/* 7 ............................................ Footer */

#rs {
    padding: 30px;
    background-color: var(--main-color-1);
    border-top: 1px solid var(--main-color-5);
    margin-top: 30px;
    text-align: center;
    color: var(--main-color-5);
}

#rs img {
    max-width: 50px;
    margin: auto;
}

footer {
    text-align: center;
}

footer p,
.design-footer {
    color: var(--main-color-2);
}

footer a {
    color: var(--main-color-2);
    text-decoration: underline;
    font-size: 0.8em;
    opacity: 0.5;
    transition: var(--transition-slow);
}

footer a:hover {
    opacity: 1;
    transition: var(--transition-slow);
}

/* 8 ............................................ WOOCOMMERCE CUSTOM */

/* On ajuste le style pour que ce soit élégant */
.social-sticky-left a {
    width: 40px;
    height: 40px;
    color: var(--main-color-2);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    opacity: 0.5;
    transition: var(--transition-fast);
}

.social-sticky-left img {
    height: 50%;
}

.social-sticky-left {
    margin-top: 30px;
    display: flex;
    flex-direction: row; /* Aligne les icônes sur une ligne */
    gap: 10px;
    text-transform: uppercase;
}

.social-sticky-left a:hover {
    opacity: 1;
    transition: var(--transition-fast);
}

#pier2ni-id .wp-block-heading .text-primary {
    color: var(--main-color-3) !important;
    display: block;
    font-size: 2.5rem;
    font-weight: 900;
}

.woocommerce .infos-product {
    border-left: 1px solid var(--main-color-2);
    padding: 20px 0 20px 20px;
    margin-bottom: 20px;
}

/* On cache les éléments inutiles pour un look minimaliste */
.woocommerce-result-count,
.woocommerce-ordering {
    display: none; /* Cache le tri par défaut pour épurer la galerie */
}

/* Grille de produits façon "Galerie d'art" */
#pier2ni-id ul.products li.product {
    border: none;
    box-shadow: none;
}

.woocommerce ul.products li.product img {
    filter: grayscale(100%);
    transition: var(--transition-slow);
    border-radius: 15px;
}

.woocommerce ul.products li.product:hover img {
    filter: grayscale(0%);
    transition: var(--transition-slow);
}

/* Masquer le badge "Promo" par défaut (souvent moche) */
.woocommerce span.onsale {
    background-color: var(--main-color-4) !important;
    border-radius: 0;
    font-size: 0.8rem;
}

/* Panier et Checkout - On s'assure que le texte est lisible sur fond noir */
.woocommerce-cart,
.woocommerce-checkout {
    color: var(--main-color-2);
}

#pier2ni-id table.shop_table {
    border-color: var(--main-color-2);
    color: var(--main-color-5);
}

#pier2ni-id div.product form.cart {
    margin-bottom: 0;
}

#pier2ni-id .linked-products-container {
    float: left;
    padding: 20px;
    border: 1px solid var(--main-color-3);
}

.linked-products-container .btn {
    color: var(--main-color-2);
    border: 1px solid var(--main-color-2);
    opacity: 0.5;
    transition: var(--transition-fast);
}

.linked-products-container .btn:hover {
    color: var(--main-color-1);
    background-color: var(--main-color-3);
    opacity: 1;
    transition: var(--transition-fast);
}

/* --------------------------------------------------- WooCommerce Etapes */

.variation-step {
    display: none;
    opacity: 0;
}

.variation-step.active {
    display: block !important;
    opacity: 1;
    animation: fadeInStep 0.4s ease-out;
}

.variation-step.active .step-content {
    display: block !important;
    height: auto !important;
    visibility: visible !important;
}

@keyframes fadeInStep {
    from {
        opacity: 0;
        transform: translateY(10px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* Boutons Swatches (Radio transformés) */
.art-swatch-btn {
    border: 1px solid var(--main-color-2);
    color: var(--main-color-5);
    padding: 10px 15px;
    margin: 5px;
    transition: var(--transition-fast);
}

.art-swatch-btn.selected {
    border-color: var(--main-color-3);
    background: rgba(97, 206, 112, 0.1);
}

.art-swatch-btn.disabled-swatch {
    opacity: 0.3;
    cursor: not-allowed;
    pointer-events: none;
}

/*.reset-variations-container {
    text-align: right;
}*/

.reset_variations {
    color: var(--main-color-2) !important;
    font-size: 0.85rem;
    transition: color 0.3s ease;
}

.reset_variations:hover {
    color: var(--main-color-4) !important; /* Orange au survol pour l'action d'effacer */
}

.reset_variations .dashicons {
    font-size: 14px;
    vertical-align: middle;
    margin-right: 5px;
}

#pier2ni-id div.product .single_variation span.price,
#pier2ni-id div.product .stock {
    color: var(--main-color-4);
}

/* 9 ............................................ PANIER DRAWER (OFFCANVAS) */
#cartDrawer {
    background-color: var(--main-color-1);
    color: var(--main-color-5);
    border-left: 1px solid var(--main-color-2);
}

#pier2ni-id #cartDrawer .offcanvas-header {
    border-bottom: 1px solid var(--main-color-2);
}

#pier2ni-id #cartDrawer .offcanvas-header .btn-close {
    filter: invert(1);
}

#cartDrawer .cart_list li {
    border-bottom: 1px dotted var(--main-color-2);
    padding: 15px 0;
    list-style: none;
}

#cartDrawer .woocommerce-mini-cart__total {
    padding: 30px 0;
    border-top: 1px solid var(--main-color-2);
}

#cartDrawer .woocommerce-mini-cart__total strong {
    font-weight: 100;
    font-size: 0.8;
}

#pier2ni-id #cartDrawer.offcanvas {
    width: 60%;
    max-width: 560px;
    z-index: 9000;
}

#cartDrawer a {
    color: var(--main-color-2);
    text-decoration: none;
}

#cartDrawer img {
    width: 100%;
    height: auto;
}

#cartDrawer .cart-item-price {
    font-size: 1rem;
}

#cartDrawer .enlever {
    font-size: 0.8rem;
    width: auto;
    text-decoration: underline;
}

#cartDrawer .cart-recommendations .rec-price {
    font-size: 0.8rem;
}

#cartDrawer .cart-recommendations p {
    line-height: normal;
}

.woocommerce-mini-cart__total span {
    font-size: 1.8rem;
}

.cart-recommendations {
    padding-top: 30px;
    margin-top: 50px;
    border-top: 1px solid var(--main-color-2);
}

.woocommerce-mini-cart__total {
    text-align: right;
}
.woocommerce-mini-cart__buttons {
    text-align: center;
}

/* 10 ............................................ MON COMPTE */

#pier2ni-id.woocommerce-account .woocommerce-MyAccount-navigation {
    float: none;
    width: 100%;
    padding: 0;
}

#pier2ni-id.woocommerce-account .woocommerce-MyAccount-content,
#pier2ni-id .woocommerce-Address-title {
    width: 100%;
    float: none;
}

#pier2ni-id .woocommerce-info {
    border-top: 0;
    background-color: transparent;
}

#pier2ni-id address {
    font-style: normal;
    line-height: 1.6;
    margin-bottom: 0;
}

.custom-account-nav .list-group-item {
    transition:
        background-color 0.2s ease,
        transform 0.1s ease;
    border-color: var(--main-color-1);
}

.custom-account-nav .list-group-item:hover:not(.active) {
    background-color: var(--main-color-5);
}

.custom-account-nav .list-group-item.active {
    background-color: var(--main-color-2);
    border-color: var(--main-color-1);
}

.custom-account-nav .list-group-item i {
    width: 25px; /* Aligne parfaitement les icônes verticalement */
    text-align: center;
}

/* Nettoyage des bordures WC pour le tableau Bootstrap */
.woocommerce-orders-table {
    border-collapse: collapse !important;
}

.woocommerce-orders-table thead th {
    border-bottom: none !important;
}

.badge {
    letter-spacing: 0.5px;
    font-size: 0.75rem;
}

/* Pour éviter que WC ne vienne perturber les bordures des inputs Bootstrap */
.woocommerce form .form-control {
    padding: 0.6rem 0.75rem;
    border: 1px solid #dee2e6;
}

.woocommerce form .form-control:focus {
    border-color: #212529; /* Noir pour le focus */
    box-shadow: 0 0 0 0.25 darkgray;
}

/* On enlève les styles par défaut de WC sur les legendes */
.woocommerce fieldset legend {
    padding: 0;
    margin-bottom: 0.5rem;
}

/* Force le style Bootstrap sur les champs générés par WooCommerce */
.woocommerce-address-fields__field-wrapper .form-row {
    display: block;
    width: 100%;
    margin-bottom: 1rem;
}

.woocommerce-address-fields__field-wrapper label {
    font-weight: 600;
    margin-bottom: 0.5rem;
    display: block;
}

.woocommerce-address-fields__field-wrapper .input-text,
.woocommerce-address-fields__field-wrapper select {
    display: block;
    width: 100%;
    padding: 0.6rem 0.75rem;
    font-size: 1rem;
    line-height: 1.5;
    color: #212529;
    background-color: #fff;
    border: 1px solid #dee2e6;
    border-radius: 0.375rem;
    transition:
        border-color 0.15s ease-in-out,
        box-shadow 0.15s ease-in-out;
}

.woocommerce-address-fields__field-wrapper .input-text:focus {
    border-color: #212529;
    outline: 0;
    box-shadow: 0 0 0 0.25rem rgba(33, 37, 41, 0.1);
}

/* Alignement des champs Prénom/Nom sur la même ligne si WC les marque first/last */
@media (min-width: 768px) {
    .woocommerce-address-fields__field-wrapper .form-row-first,
    .woocommerce-address-fields__field-wrapper .form-row-last {
        width: 48%;
        float: left;
    }
    .woocommerce-address-fields__field-wrapper .form-row-last {
        float: right;
    }
}

/* Ajustement des icônes de paiement */
.gateway-icon img {
    max-height: 24px;
    width: auto;
    margin-left: 10px;
    filter: grayscale(20%); /* Optionnel : pour un look plus sobre */
}

/* Style des champs Stripe/CB dans la boîte */
.woocommerce-PaymentBox input.input-text {
    padding: 0.6rem 0.75rem;
    border: 1px solid #dee2e6;
    background: white !important;
}

/* Masquer les puces par défaut de WC au cas où */
.woocommerce-PaymentMethods {
    list-style: none !important;
    padding: 0 !important;
}

#add_payment_method #payment,
.woocommerce-cart #payment,
.woocommerce-checkout #payment {
    background-color: transparent;
}

.hover-lift {
    transition:
        transform 0.2s ease-in-out,
        box-shadow 0.2s ease-in-out;
}

.hover-lift:hover {
    transform: translateY(-5px);
    box-shadow: 0 10px 20px rgba(0, 0, 0, 0.1) !important;
    background-color: var(--main-color-2);
}

.woocommerce-MyAccount-dashboard .text-primary {
    color: var(--main-color-1) !important; /* On remplace le bleu par ton noir fétiche */
}

/* 11 ............................................ RESPONSIVE */
@media (max-width: 768px) {
    .pier2ni h1 {
        font-size: 1.8em;
    }
    .pier2ni h2 {
        font-size: 1.6em;
    }
    #cartDrawer {
        width: 100% !important;
    }
    #pier2ni-id #cartDrawer.offcanvas {
        width: 80%;
    }
}
