/* //////////////////////////////////////////// */
/* /////////// PAGE PRODUIT UNIQUE //////////// */
/* /////////// Pyrenees Canin ///////////////// */
/* //////////////////////////////////////////// */


/* ============================================ */
/* ======= BREADCRUMB ======================== */
/* ============================================ */

.elementor-widget-breadcrumb .ce-breadcrumb {
    font-size: 13px !important;
    padding: 0 !important;
}

.elementor-widget-breadcrumb .ce-breadcrumb a {
    color: #ffffff;
    text-decoration: none !important;
    transition: color 0.2s ease !important;
}

.elementor-widget-breadcrumb .ce-breadcrumb a:hover {
    color: #A0CE4D !important;
}

.elementor-widget-breadcrumb .ce-breadcrumb__item:last-child span {
    color: #A0CE4D !important;
    font-weight: 600 !important;
}


/* ============================================ */
/* ======= IMAGE PRODUIT 100% ================ */
/* ============================================ */

.elementor-widget-product-image .ce-product-image {
    display: block !important;
    width: 100% !important;
}

.elementor-widget-product-image .ce-product-image a {
    display: block !important;
    width: 100% !important;
}

.elementor-widget-product-image .ce-product-image img {
    width: 100% !important;
    height: auto !important;
    border-radius: 16px !important;
    display: block !important;
}


/* ============================================ */
/* ======= TITRE 80% + WISHLIST 20% ========= */
/* ============================================ */

/* Section inner qui contient titre + coeur */
[data-id="9fde2fd"] .elementor-row {
    display: flex !important;
    align-items: flex-start !important;
    gap: 10px !important;
    flex-wrap: nowrap !important;
}

/* Colonne titre = 80% */
[data-id="9fde2fd"] [data-id="c08efae"] {
    flex: 0 0 80% !important;
    max-width: 80% !important;
    width: 80% !important;
}

/* Colonne wishlist = 20% */
[data-id="9fde2fd"] [data-id="dd48ef8"] {
    flex: 0 0 20% !important;
    max-width: 20% !important;
    width: 20% !important;
    display: flex !important;
    justify-content: flex-end !important;
}

/* Wishlist coeur */
.elementor-widget-product-add-to-wishlist .elementor-icon {
    width: 42px !important;
    height: 42px !important;
    border-radius: 50% !important;
    border: 2px solid #eeeeee !important;
    background: #ffffff !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 18px !important;
    color: #999999 !important;
    transition: border-color 0.3s ease, color 0.3s ease !important;
}

.elementor-widget-product-add-to-wishlist .elementor-icon:hover {
    border-color: #A0CE4D !important;
    color: #e74c3c !important;
}


/* ============================================ */
/* ======= NOM PRODUIT ======================= */
/* ============================================ */

.elementor-widget-product-name .ce-product-name {
    font-size: 28px !important;
    font-weight: 700 !important;
    color: #232323 !important;
    margin: 0 !important;
    line-height: 1.3 !important;
}


/* ============================================ */
/* ======= META (CATEGORIE) ================== */
/* ============================================ */

.elementor-widget-product-meta .ce-product-meta {
    font-size: 14px !important;
}

.elementor-widget-product-meta .ce-product-meta__label {
    color: #999999 !important;
    font-weight: 400 !important;
}

.elementor-widget-product-meta .ce-product-meta__value a {
    color: #A0CE4D !important;
    text-decoration: none !important;
    font-weight: 500 !important;
}

.elementor-widget-product-meta .ce-product-meta__value a:hover {
    text-decoration: underline !important;
}


/* ============================================ */
/* ======= PRIX ============================== */
/* ============================================ */

.elementor-widget-product-price .ce-product-prices {
    display: flex !important;
    flex-direction: column !important;
    gap: 2px !important;
}

.elementor-widget-product-price .ce-product-price-regular {
    font-size: 15px !important;
    color: #bbbbbb !important;
    text-decoration: line-through !important;
    font-weight: 400 !important;
}

.elementor-widget-product-price .ce-product-price {
    font-size: 26px !important;
    font-weight: 700 !important;
    color: #232323 !important;
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
}

.elementor-widget-product-price .ce-product-badge-sale {
    background: #A0CE4D !important;
    color: #ffffff !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    padding: 4px 10px !important;
    border-radius: 6px !important;
    line-height: 1.3 !important;
}

.elementor-widget-product-price .ce-tax-shipping-delivery-label {
    font-size: 12px !important;
    color: #999999 !important;
}


/* ============================================ */
/* ======= DESCRIPTION COURTE ================ */
/* ============================================ */

.elementor-widget-product-description-short .ce-product-description-short {
    font-size: 14px !important;
    color: #666666 !important;
    line-height: 1.7 !important;
}

.elementor-widget-product-description-short .ce-product-description-short p {
    margin: 0 !important;
}


/* ============================================ */
/* ======= VARIANTS — BOUTONS RADIO PILULE === */
/* ============================================ */

.elementor-widget-product-variants .ce-product-variants__label {
    font-size: 14px !important;
    font-weight: 700 !important;
    color: #252525 !important;
    display: block !important;
    margin-bottom: 10px !important;
}

/* Container des options */
.elementor-widget-product-variants .ce-product-variants__options {
    display: flex !important;
    gap: 10px !important;
    flex-wrap: wrap !important;
}

/* Cacher le radio natif */
.elementor-widget-product-variants .ce-product-variants__radio {
    display: none !important;
}

/* Label = bouton pilule */
.elementor-widget-product-variants .ce-product-variants__radio-wrapper {
    display: inline-flex !important;
    cursor: pointer !important;
}

.elementor-widget-product-variants .ce-product-variants__option {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 10px 60px !important;
    border: 2px solid #e0e0e0 !important;
    border-radius: 50px !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    color: #252525 !important;
    background: #ffffff !important;
    cursor: pointer !important;
    transition: all 0.3s ease !important;
    min-width: 80px !important;
    text-align: center !important;
}

/* Hover */
.elementor-widget-product-variants .ce-product-variants__option:hover {
    border-color: #252525 !important;
}

/* Option selectionnee (radio:checked) */
.elementor-widget-product-variants .ce-product-variants__radio:checked+.ce-product-variants__option {
    border-color: #252525 !important;
    font-weight: 700 !important;
    background: #252525 !important;
    color: white !important;
}

/* Fallback select si present */
.elementor-widget-product-variants .ce-product-variants__select select {
    appearance: none !important;
    -webkit-appearance: none !important;
    background-color: #ffffff !important;
    border: 2px solid #252525 !important;
    border-radius: 50px !important;
    padding: 10px 40px 10px 20px !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    color: #252525 !important;
    cursor: pointer !important;
    transition: border-color 0.3s ease !important;
    min-width: 120px !important;
}

.elementor-widget-product-variants .elementor-select-wrapper::before {
    display: none !important;
}

.elementor-widget-product-variants .elementor-select-wrapper {
    position: relative !important;
    display: inline-block !important;
}

.elementor-widget-product-variants .elementor-select-wrapper::after {
    content: "" !important;
    display: block !important;
    position: absolute !important;
    right: 16px !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    width: 0 !important;
    height: 0 !important;
    border-left: 5px solid transparent !important;
    border-right: 5px solid transparent !important;
    border-top: 6px solid #252525 !important;
    pointer-events: none !important;
}


/* ============================================ */
/* ======= DIVIDER =========================== */
/* ============================================ */

.elementor-widget-divider .elementor-divider-separator {
    border-top-color: #f0f0f0 !important;
}


/* ============================================ */
/* ======= QUANTITE + PANIER ================= */
/* ============================================ */

/* Section inner : forcer sur la meme ligne */
[data-id="6e13fd3"] .elementor-row {
    display: flex !important;
    align-items: center !important;
    gap: 20px !important;
    flex-wrap: nowrap !important;
}

[data-id="6e13fd3"] .elementor-col-50 {
    flex: none !important;
    width: auto !important;
}

/* ---- Selecteur quantite ---- */
.elementor-widget-product-quantity .ce-product-quantity {
    display: inline-flex !important;
    align-items: center !important;
    gap: 0 !important;
    background: transparent !important;
    border: none !important;
    height: auto !important;
    overflow: visible !important;
    border-radius: 0 !important;
    padding: 0 !important;
}

.elementor-widget-product-quantity .ce-product-quantity.elementor-field-group {
    border: none !important;
    background: transparent !important;
    box-shadow: none !important;
    padding: 0 !important;
}

/* Boutons - et + : fond NOIR, icone BLANCHE */
.elementor-widget-product-quantity .ce-product-quantity__btn {
    width: 38px !important;
    height: 38px !important;
    min-width: 38px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: #252525 !important;
    border: none !important;
    border-radius: 50% !important;
    cursor: pointer !important;
    font-size: 14px !important;
    color: #ffffff !important;
    transition: background 0.2s ease !important;
    padding: 0 !important;
    line-height: 1 !important;
}

.elementor-widget-product-quantity .ce-product-quantity__btn:hover {
    background: #000000 !important;
}

/* Input chiffre au milieu */
.elementor-widget-product-quantity .ce-product-quantity input[type="number"],
.elementor-widget-product-quantity .ce-product-quantity .elementor-field {
    width: 40px !important;
    text-align: center !important;
    border: none !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    color: #252525 !important;
    background: transparent !important;
    outline: none !important;
    -moz-appearance: textfield !important;
    padding: 0 !important;
    height: auto !important;
    min-height: unset !important;
    box-shadow: none !important;
}

.elementor-widget-product-quantity .ce-product-quantity input::-webkit-outer-spin-button,
.elementor-widget-product-quantity .ce-product-quantity input::-webkit-inner-spin-button {
    -webkit-appearance: none !important;
    margin: 0 !important;
}

/* ---- Bouton Ajouter au panier ---- */
.elementor-widget-product-add-to-cart .elementor-button {
    display: inline-flex !important;
    align-items: center !important;
    gap: 12px !important;
    background-color: #A0CE4D !important;
    color: #ffffff !important;
    border: none !important;
    border-radius: 50px !important;
    padding: 6px 20px 6px 6px !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    cursor: pointer !important;
    transition: background-color 0.3s ease !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    text-decoration: none !important;
    white-space: nowrap !important;
    height: auto !important;
    line-height: 1 !important;
}

.elementor-widget-product-add-to-cart .elementor-button:hover {
    background-color: #8abb3a !important;
}

/* Icone panier : rond blanc */
.elementor-widget-product-add-to-cart .elementor-button-icon {
    width: 32px !important;
    height: 32px !important;
    min-width: 32px !important;
    background: #ffffff !important;
    border-radius: 50% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex-shrink: 0 !important;
}

.elementor-widget-product-add-to-cart .elementor-button-icon svg {
    width: 16px !important;
    height: 16px !important;
}

.elementor-widget-product-add-to-cart .elementor-button-icon svg path {
    fill: #A0CE4D !important;
}

/* Texte du bouton */
.elementor-widget-product-add-to-cart .elementor-button-text {
    font-size: 13px !important;
    font-weight: 700 !important;
}


/* ============================================ */
/* ======= PRODUITS SIMILAIRES =============== */
/* ============================================ */

/* Section fond */
[data-id="34f5323"] {
    padding: 1% 5% 0% 5% !important;
}

/* Forcer grille 4 colonnes au lieu du carousel Swiper */
[data-id="44a36c6"] .swiper-wrapper {
    display: grid !important;
    grid-template-columns: repeat(4, 1fr) !important;
    gap: 24px !important;
    transform: none !important;
}

[data-id="44a36c6"] .swiper-slide {
    width: 100% !important;
}

/* Cacher les fleches et pagination du swiper */
[data-id="44a36c6"] .swiper-button-prev,
[data-id="44a36c6"] .swiper-button-next,
[data-id="44a36c6"] .swiper-pagination,
[data-id="44a36c6"] .swiper-scrollbar,
[data-id="44a36c6"] .elementor-swiper-button {
    display: none !important;
}

/* Card produit */
[data-id="44a36c6"] .product-miniature {
    background-color: #ffffff !important;
    border: 1px solid #eeeeee !important;
    border-radius: 16px !important;
    overflow: hidden !important;
    transition: box-shadow 0.3s ease !important;
}

[data-id="44a36c6"] .product-miniature:hover {
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.08) !important;
}

[data-id="44a36c6"] .thumbnail-container {
    padding: 12px !important;
    position: relative !important;
}

/* Image produit */
[data-id="44a36c6"] .product-thumbnail img {
    width: 100% !important;
    height: auto !important;
    border-radius: 12px !important;
    display: block !important;
}

/* Cacher quick view, flags, wishlist, reviews */
[data-id="44a36c6"] .highlighted-informations,
[data-id="44a36c6"] .product-flags,
[data-id="44a36c6"] .wishlist-button-add,
[data-id="44a36c6"] .product-list-reviews {
    display: none !important;
}

/* Titre produit */
[data-id="44a36c6"] .product-title a {
    font-size: 13px !important;
    font-weight: 700 !important;
    color: #232323 !important;
    text-decoration: none !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
    display: block !important;
}

/* Prix */
[data-id="44a36c6"] .price {
    font-size: 15px !important;
    font-weight: 700 !important;
    color: #232323 !important;
}

[data-id="44a36c6"] .regular-price {
    font-size: 13px !important;
    color: #bbbbbb !important;
    text-decoration: line-through !important;
}

[data-id="44a36c6"] .discount-percentage {
    background: #A0CE4D !important;
    color: #ffffff !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    padding: 2px 8px !important;
    border-radius: 6px !important;
    border: none !important;
}

/* Bouton panier rond vert */
[data-id="44a36c6"] .thumbnail-container::after {
    content: "" !important;
    position: absolute !important;
    bottom: 12px !important;
    right: 12px !important;
    background-color: #A0CE4D !important;
    width: 36px !important;
    height: 36px !important;
    border-radius: 50% !important;
    display: block !important;
    cursor: pointer !important;
    box-shadow: 0 2px 8px rgba(160, 206, 77, 0.3) !important;
    z-index: 5 !important;
    transition: background-color 0.3s ease !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='31' height='31' viewBox='0 0 31 31'%3E%3Cpath d='M27.853,28.036,26.012,10.55a2.672,2.672,0,0,0-2.667-2.4h-.027l-1.8.017V6.037a6.037,6.037,0,0,0-12.073,0V8.283L7.568,8.3A2.681,2.681,0,0,0,4.926,10.71l-1.78,17.3a2.683,2.683,0,0,0,2.664,2.957L25.181,31h0a2.683,2.683,0,0,0,2.667-2.964Zm-16.468-22a4.1,4.1,0,0,1,8.2,0V8.184l-8.2.08Zm14.353,22.78a.691.691,0,0,1-.553.246h0l-19.37-.031a.745.745,0,0,1-.74-.821l1.779-17.3a.736.736,0,0,1,.734-.669l1.86-.018v1.6a.969.969,0,1,0,1.938,0V10.2l8.2-.08v1.7a.969.969,0,1,0,1.938,0V10.1l1.816-.018h.008a.742.742,0,0,1,.741.667l1.841,17.487a.691.691,0,0,1-.188.577Z' fill='%23fff'/%3E%3Cg transform='translate(8.559 13.008)'%3E%3Cpath d='M12.116,7.428a1.891,1.891,0,0,1-.644.985,1.284,1.284,0,0,1-.781.282,1.085,1.085,0,0,1-.3-.041,1.217,1.217,0,0,1-.787-.773,1.984,1.984,0,0,1,.616-2.163,1.157,1.157,0,0,1,1.867.532A1.9,1.9,0,0,1,12.116,7.428Zm-7.5-1.021a1.36,1.36,0,0,0,1.1-.644,2.44,2.44,0,0,0,.395-1.37,2.44,2.44,0,0,0-.395-1.371,1.36,1.36,0,0,0-1.1-.644,1.36,1.36,0,0,0-1.106.644,2.448,2.448,0,0,0-.394,1.371,2.448,2.448,0,0,0,.394,1.37A1.36,1.36,0,0,0,4.617,6.407Zm3.648,0A1.36,1.36,0,0,0,9.37,5.762a2.448,2.448,0,0,0,.394-1.37A2.448,2.448,0,0,0,9.37,3.022a1.36,1.36,0,0,0-1.106-.644,1.36,1.36,0,0,0-1.1.644,2.44,2.44,0,0,0-.395,1.371,2.44,2.44,0,0,0,.395,1.37A1.36,1.36,0,0,0,8.264,6.407ZM3.3,6.7a1.9,1.9,0,0,0-.644-.986A1.219,1.219,0,0,0,1.58,5.478a1.217,1.217,0,0,0-.789.773,1.987,1.987,0,0,0,.617,2.163,1.284,1.284,0,0,0,.781.282,1.077,1.077,0,0,0,.3-.041,1.217,1.217,0,0,0,.789-.773A1.9,1.9,0,0,0,3.3,6.7Zm5.339.985a3.045,3.045,0,0,0-2.2-1,3.038,3.038,0,0,0-2.2,1A4.618,4.618,0,0,0,3.09,10.1a1.757,1.757,0,0,0,.5,1.578,1.47,1.47,0,0,0,1.56.352,3.868,3.868,0,0,1,2.58,0,1.531,1.531,0,0,0,.514.091,1.489,1.489,0,0,0,1.045-.443,1.755,1.755,0,0,0,.5-1.578,4.625,4.625,0,0,0-1.15-2.408Z' fill='%23fff'/%3E%3C/g%3E%3C/svg%3E") !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
    background-size: 18px 18px !important;
}

[data-id="44a36c6"] .thumbnail-container:hover::after {
    background-color: #8abb3a !important;
}

/* Responsive */
@media (max-width: 992px) {
    [data-id="44a36c6"] .swiper-wrapper {
        grid-template-columns: repeat(3, 1fr) !important;
    }
}

@media (max-width: 768px) {
    [data-id="44a36c6"] .swiper-wrapper {
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 16px !important;
    }
}


/* ============================================ */
/* ======= RESPONSIVE ======================== */
/* ============================================ */

@media (max-width: 992px) {
    .elementor-widget-product-name .ce-product-name {
        font-size: 22px !important;
    }

    .elementor-widget-product-price .ce-product-price {
        font-size: 22px !important;
    }

    [data-id="1361ec8"]>.elementor-column-wrap {
        padding: 24px !important;
        border-radius: 16px !important;
        max-width: 100% !important;
    }
}

@media (max-width: 768px) {
    [data-id="6e13fd3"] .elementor-row {
        flex-direction: column !important;
        align-items: flex-start !important;
        gap: 12px !important;
    }

    .elementor-widget-product-add-to-cart .elementor-button {
        width: 100% !important;
        justify-content: center !important;
    }

    .elementor-widget-product-name .ce-product-name {
        font-size: 20px !important;
    }

    [data-id="1361ec8"]>.elementor-column-wrap {
        padding: 20px !important;
    }

    .elementor-widget-product-variants .ce-product-variants__option {
        padding: 8px 20px !important;
        font-size: 13px !important;
    }
}




/* ============================================ */
/* ======= CARACTERISTIQUES — COMPOSITION ==== */
/* ============================================ */

/* Cacher le texte "Composition", afficher l'icone Groupe_29 */
.ce-product-features__label {
    font-size: 0 !important;
    color: transparent !important;
    position: relative !important;
    width: 50px !important;
    height: 46px !important;
    vertical-align: middle !important;
    padding: 0 !important;
}

.ce-product-features__label::before {
    content: "" !important;
    display: block !important;
    width: 50px !important;
    height: 46px !important;
    background-image: url("/themes/classic/assets/img/Groupe_29.svg") !important;
    background-size: contain !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
}

/* Valeur "Proteine d'origine animale a 100%" */
.ce-product-features__value {
    font-size: 14px !important;
    font-weight: 700 !important;
    color: #252525 !important;
    vertical-align: middle !important;
    padding-left: 12px !important;
}

/* Supprimer les bordures du tableau */
.ce-product-features,
.ce-product-features__row,
.ce-product-features__row th,
.ce-product-features__row td {
    border: none !important;
}

/* ── Caractéristiques produit : 3 colonnes côte à côte ── */

.ce-product-features {
    width: 100%;
    display: flex;
    gap: 0;
    border-collapse: separate;
}

.ce-product-features tbody {
    display: flex;
    width: 100%;
    gap: 0;
}

.ce-product-features__row {
    display: flex;
    flex-direction: column;
    flex: 1;
    text-align: center;
    padding: 5px 0px;
    border-right: 1px solid #E8E4DD;
    justify-content: center;
    align-items: center;
}

.ce-product-features__row:last-child {
    border-right: none;
}

.ce-product-features__label {
    font-size: 13px;
    font-weight: 700;
    color: #232323;
    padding-bottom: 8px;
    white-space: nowrap;
}

.ce-product-features__value {
    font-size: 13px;
    color: #666;
    line-height: 1.5;
    white-space: pre-line;
}

@media (max-width: 767px) {
    .ce-product-features tbody {
        flex-direction: column;
    }

    .ce-product-features__row {
        border-right: none;
        border-bottom: 1px solid #E8E4DD;
        padding: 12px 0;
    }

    .ce-product-features__row:last-child {
        border-bottom: none;
    }
}

/* ── Notifications PrestaShop — Style Pyrénées Canin ── */
#notifications {
    background-color: #FFF9F3;
}

/* Info (panier, etc.) */
#notifications .alert-info {
    background: #F0F8E0;
    color: #3D5A00;
    border-left: 4px solid #8AC700;
}

/* Succès */
#notifications .alert-success {
    background: #E8F5C8;
    color: #3D5A00;
    border-left: 4px solid #8AC700;
}

/* Warning */
#notifications .alert-warning {
    background: #FFF8E1;
    color: #7A6200;
    border-left: 4px solid #F5B800;
}

/* Erreur */
#notifications .alert-danger {
    background: #FFF0F0;
    color: #9B1C1C;
    border-left: 4px solid #E53E3E;
}

#notifications .alert {
    border: none;
    border-radius: 10px;
    padding: 12px 20px;
    font-size: 13px;
    font-weight: 600;
    display: flex;
    align-items: center;
    gap: 8px;
}


[data-id="ee04f07"] .elementor-button-content-wrapper {
    display: flex;
    gap: 5px;
    justify-content: center;
    align-items: center;
    flex-direction: row;
    flex-wrap: nowrap;
    align-content: center;
}