:root{
    --white: #FFFFFF;
    --black: #000000;
    --red: #980000;
}


/* FOOTER */
.elementor-icon i, .elementor-icon svg {fill: none;}
.elementor-element-1cc8277 .elementor-icon-box-title {display: inline-block;}


/* FICHE PRODUIT */
    /* Moyenne/total avis (sous H1) */
.ps-avisclient-rating .ps-avisclient-stars {margin-top: -.2em;}

    /* Quantité */
.elementor-widget-product-quantity .ce-product-quantity {border: 1.5px solid;}

    /* Accordéon */
.elementor-element-979c8cd .elementor-accordion-item {border-top: 2px solid #D14904 !important;padding-top: 25px;margin-top: 25px;}

    /* Liste des avis */
.ps-avisclient-widget .ps-avisclient-summary .ps-avisclient-breakdown-fill {background: #D14904;}

.ps-avisclient-widget .ps-avisclient-reviews .ps-avisclient-review {border: 0;border-radius: 0;padding: 0;display: flex;flex-wrap: wrap;align-items: center;}
.ps-avisclient-widget .ps-avisclient-reviews .ps-avisclient-review:not(:last-child) {border-bottom: 2px solid #D14904;padding-bottom: 1rem;}
.ps-avisclient-widget .ps-avisclient-reviews .ps-avisclient-review .ps-avisclient-review-header {width: 35%;flex-direction: column-reverse;align-items: flex-start;order: 0;gap: 0;}
.ps-avisclient-widget .ps-avisclient-reviews .ps-avisclient-review .ps-avisclient-review-header .ps-avisclient-review-stars,
.ps-avisclient-rating .ps-avisclient-stars,
.ps-avisclient-rating .ps-avisclient-score {color: #D14904;}
.ps-avisclient-widget .ps-avisclient-reviews .ps-avisclient-review .ps-avisclient-review-header .ps-avisclient-review-stars .ps-avisclient-star,
.ps-avisclient-rating .ps-avisclient-stars {font-size: 1.5em;}
.ps-avisclient-widget .ps-avisclient-reviews .ps-avisclient-review .ps-avisclient-review-date {order: 2;}
.ps-avisclient-widget .ps-avisclient-reviews .ps-avisclient-review .ps-avisclient-review-text {width: 65%;}


/* PAGE D'ACCUEIL */
    /* Boutique en ligne */
@media (max-width: 767px) {
    .bloc-boutique .col-img {height: 180px;}
}

    /* MODULE ps_piecesCompatible */
.ps_piecescompatible{width: 90%;overflow: hidden;margin: 20px auto;padding: 10px;}
.ps_piecescompatible .ps_piece{box-shadow: 0px 0px 4px 0px #00000040;padding: 30px;}
.elementor-element-b333a7b .ps_piecescompatible .ps_piece .ps_picto {background: #D14904;padding: 10px !important;display: flex;min-width: 0px;width: fit-content;margin-top: 10px;}

        /* Flèches précédentes et suivantes  */
.ps_piecescompatible .swiper-button-prev:after,
.ps_piecescompatible .swiper-rtl .swiper-button-next:after {content: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' width='30' height='30' viewBox='0 0 30 30' fill='none'><circle cx='15' cy='15' r='15' fill='%23D65529' fill-opacity='0.1'></circle><path d='M18 20L13 15L18 10' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'></path></svg>");}

.ps_piecescompatible .swiper-button-next:after, 
.ps_piecescompatible .swiper-rtl .swiper-button-prev:after {content: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' width='30' height='30' viewBox='0 0 30 30' fill='none'><circle cx='15' cy='15' r='15' transform='matrix(-1 0 0 1 30 0)' fill='%23D65529' fill-opacity='0.1'></circle><path d='M12 20L17 15L12 10' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'></path></svg>");}


/* Megamenu */
.ps-megamenu-container{position:relative; display: flex; flex-direction: row-reverse; background-color: #D14904; color: #fff!important;}
body .header .ps-megamenu-contaienr a:not(.dropdown-item):not(.btn) {color: #fff!important; text-decoration: none;} 
.ps-megamenu-toggle{display:none;position:relative;z-index:1001;cursor:pointer;border:none;background-color:transparent;color:#fff;font-size:1.50rem;padding:0.35rem 0.45rem;}
.ps-megamenu{list-style:none;margin:0;padding:0;display:flex;align-items:center;justify-content:flex-end;background-color:#D14904;color:#fff;}
.ps-megamenu-item{margin-right:1.5rem;}
.ps-megamenu-item a:not(.ps-megamenu-link-active){color: #fff!important;text-decoration:none;}
.ps-megamenu-item-active{font-weight:600; color: #D14904 !important; background-color: #f3f3f3;}
.ps-megamenu-link-active{font-weight:600; color: #D14904 !important; background-color: #f3f3f3;}
.ps-megamenu-link,
.ps-megamenu-button{display:inline-block;padding:.5rem .75rem;color:inherit;background:transparent;border:none;cursor:pointer;text-decoration:none;}
.ps-megamenu-link:hover,
.ps-megamenu-button:hover{text-decoration:none;}

.ps-megamenu-has-dropdown:hover > .ps-megamenu-dropdown{display:block;}

.ps-megamenu-dropdown {display: none;position: absolute;top: 100%;left: 0;width: 100%;background: #f3F3F3;color: #000;padding: 2.1rem 1.5rem 1.5rem 1.5rem;box-shadow: 0 10px 25px rgba(0, 0, 0, 0.25);}
.ps-megamenu-dropdown a.ps-megamenu-column-link {color: #000 !important;}
.ps-megamenu-dropdown a.ps-megamenu-column-link.ps-megamenu-link-active,.ps-megamenu-dropdown li.ps-megamenu-item-active {color: #D14904 !important;background: none !important; font-weight: 700}
.ps-megamenu-dropdown-inner{display:flex;flex-wrap:wrap;gap:1rem;flex-direction: column;max-height: 250px;width: 100%;}
.ps-megamenu-column{min-width:180px;}
.ps-megamenu-column-title{font-weight:bold;margin-bottom:.5rem;}
.ps-megamenu-column-list{list-style:none;margin:0;padding:0;}
.ps-megamenu-level-3{color:white!important;font-size:.9rem;padding-left:.75rem;}
.ps-megamenu-level-3 a{font-weight: 400;}
.ps-megamenu-column-item{margin-bottom:.5rem;}
.ps-megamenu-column-item a,
.ps-megamenu-column-link{color:#fff!important;text-decoration:none;}
.ps-megamenu-column-item a:hover,
.ps-megamenu-column-link:hover{text-decoration:underline;}

.ps-megamenu-builder tbody tr.ps-megamenu-item:hover{background-color:#f3f3f3;}

.ps-megamenu-active > .ps-megamenu-link,
.ps-megamenu-link--active{color:#f7931e;font-weight:600;}
.ps-megamenu-active-parent > .ps-megamenu-link{color:#f5c30f;}

@media (max-width: 1200px) {
  .ps-megamenu-toggle{display:block;  color: rgb(255, 255, 255);}

  .ps-megamenu{ display:none;flex-direction:column;align-items:flex-start;justify-content:flex-start;position:absolute;top:2.2em;left:0;right:0;bottom:0;background:#D14904;overflow-y:auto;padding:1.5rem; height: max-content;}
  .ps-megamenu-container.ps-megamenu-open .ps-megamenu{display:flex;}

  .ps-megamenu-item{margin:0 0 0.75rem 0;width:100%;}
  .ps-megamenu-item a,
  .ps-megamenu-link,
  .ps-megamenu-button{width:100%;text-align:left;padding:.75rem 1rem; font-weight: 400;}

  .ps-megamenu-dropdown{position:static;width:100%;background:transparent;box-shadow:none;padding:0;margin-top:.5rem;}
  .ps-megamenu-dropdown-inner{display:block;gap:0;}
  .ps-megamenu-column{min-width:auto;width:100%;}
  .ps-megamenu-column-list{padding-left:1rem;}
  .ps-megamenu-column-item{margin-bottom:.35rem;}

  .ps-megamenu-has-dropdown > .ps-megamenu-link::after,
  .ps-megamenu-has-dropdown > .ps-megamenu-button::after{content:'▾';float:right;}

  .ps-megamenu-active > .ps-megamenu-link,
  .ps-megamenu-active-parent > .ps-megamenu-link{color:#fff;}
}


/* Module vaetvient */
.vaetvient-widget{
    border: 1px solid #ddd;
    padding: 5px;
    margin-top: 20px;
    width: 100%;
    box-sizing: border-box;
}

.vaetvient-widget .marker {
    display: inline-block;
    width: 100%;
    height: 2px;
    background-color: #D14904;
}

.vaetvient-widget details {
    width: 100%;
    margin-bottom: 10px;
}

.vaetvient-widget summary {
    font-size: 1.5rem;
    font-weight: bold;
    margin-bottom: 10px;
    text-decoration: none;
    cursor: pointer;
    list-style: none;
    padding-left: 0;    position: relative;
    padding-right: 24px;
}

.vaetvient-widget summary::after {
    content: "^";
    font-size: 2rem;
    font-weight: 900;
    position: absolute;
    right: 0;
    top: 0;
    transform: rotate(180deg);
    transition: transform 0.2s ease;

}

.vaetvient-widget details[open] summary::after {
    content: "^";
    font-size: 2rem;
    font-weight: 900;
    transform: rotate(0deg);
}

.vaetvient-widget summary::-webkit-details-marker,
.vaetvient-widget summary::marker {
    display: none;
}

.vaetvient-widget .vaetvient-content{
    padding-left: 20px;
}

.PaimentMethods{
    display: flex;
    gap: 20px;
    margin-top: 20px;
}

.PaimentMethods .logo{
    width: 50px;
    height: auto;
}

.PaimentMethods .logo img{
    width: 100%;
    height: auto;
}


/* Fil d'ariane - Toutes les pages */
nav.breadcrumb__wrapper {background: none;}

/*Bouton double - Toutes les pages*/
#btndouble a.elementor-button-link.elementor-button span.elementor-button-content-wrapper { display: flex; justify-content: center; align-items: center; }


/* visionneuse d'images Creative Elements */
.elementor-lightbox .elementor-lightbox-image-container {
    max-height: 90vh !important;
    display: flex;
    align-items: center;
    justify-content: center;
}

.elementor-lightbox img {
    max-height: 90vh !important; 
    width: auto !important; 
    object-fit: contain !important;
}

/* Card page Motorisation */
#CardAvantageMotorisation div.elementor-widget-container { min-height: 300px; }

/*Texte orange de presentation (de style titre) dans un p */
p.txtOrangePresentation { color: #D14904; font-size: 1.2em; font-weight: 600; }

.guidedechoix-container{
    display: flex;
    flex-direction: column;
}

/* Guide de choix */
.guidedechoix-form{
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    gap:3px;
    background-color: white;
    border-radius: 5px;
}

.guidedechoix-form .choix-section{
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    background-color: #D14904;
    padding: 1rem;
    border-radius: 5px;
}

.guidedechoix-form label{
    font-weight: 600;
    color: white;
}

.guidedechoix-form select,
.guidedechoix-form input{
    width: max-content;
    border: none;
    background-color: white;
    color: black;
    padding: 5px 10px;
}


.guide-dechoix-result{
    margin-top: 20px;
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
}

.guide-dechoix-result .product-card {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    position: relative;
    border: 1px solid #ddd;
    /* padding: 10px; */
    border-radius: 5px;
    text-align: center;
    max-width: 270px;
    box-shadow: 0 4px 6px rgba(0,0,0,0.1);
    transition: box-shadow 0.2s ease, transform 0.2s ease;
    border-radius: 10px;
    overflow: hidden;
}

.guide-dechoix-result .product-card .product-dimensions {
    display: flex;
    justify-content: space-between;
    padding: 5px 10px;
}

.guide-dechoix-result .product-card .point{
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: end;
    gap: 5px;
    margin-top: 10px;
    position: absolute;
    top: 0;
    right: 0;
}

.guide-dechoix-result .product-card .point span {
    background-color: #D14904;
    color: white;
    padding: 2px 5px;
    border-radius: 0 0 0 5px;
    font-size: 0.8rem;
    font-weight: 400;
    width: max-content;
}

    
.guide-dechoix-result .product-card:hover {
    box-shadow: 0 6px 8px rgba(0,0,0,0.15);
    transform: translateY(5px);
}

.guide-dechoix-result .product-card .product-name {
    font-size: 1rem;
    font-weight: 600;
}

.product-additional-info{
    background-color: #f3f3f3;
    padding: 5px;
    border-radius: 5px;
    font-size: 0.8rem;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    gap: 5px;
    padding: 10px;
}

.product-additional-info span{
    text-align: start;
    display: flex;
    justify-content: start;
    align-items: center;
    gap: 10px;
    color: rgb(90, 167, 49);
}

/* round check */
.product-additional-info span::before {
    /* icon check */
    content: "\2713";
    color: black;
    display: flex;
    height: 15px;
    width: 15px ;
    border-radius: 50%;
    background-color: rgb(90, 167, 49);
}

.guide-dechoix-result .product-card .product-footer{
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    font-size: 0.8rem;
    justify-content: center;
    align-items: center;
}

.guide-dechoix-result .product-card .product-footer .product-link{
    background-color: #D14904;
    color: #ffffff;
    text-decoration: none;
    font-weight: 600;
    height: 100%;
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
}

@media (max-width: 600px) {
    .guide-dechoix-result{
        gap: 10px;
    }
    .guide-dechoix-result .product-card {
        max-width: 150px;
    }
}

/* configurateur */

.iframe-container iframe {
  width: 100%;
  aspect-ratio: 16 / 30;
  height: auto;
} 


/* Page /avis-client */
    .avis-client-page {

    }

    .avis-client-hero {
      text-align: center;
      margin-bottom: 25px;
    }

    .avis-client-intro {
      font-size: 1.05rem;
      margin-bottom: 18px;
      color: #444;
    }

    .avis-client-cta {
      display: inline-block;
      padding: 12px 24px;
      margin: 0 auto;
      background: #d56a24;
      color: #fff;
      border-radius: 4px;
      text-transform: uppercase;
      font-weight: 600;
      text-decoration: none;
    }

    .avis-client-summary-grid {
      display: grid;
      grid-template-columns: 1fr 1.1fr;
      gap: 18px;
      margin-bottom: 28px;
    }

    .card {
      background: #fff;
      border: 1px solid #e5e5e5;
      border-radius: 10px;
      padding: 18px;
      box-shadow: 0 1px 4px rgba(0, 0, 0, 0.04);
    }

    .avis-client-summary-item {
      display: flex;
      justify-content: space-between;
      align-items: center;
      margin-bottom: 12px;
      font-size: 0.95rem;
    }

    .avis-client-summary-value {
      font-size: 1.35rem;
      font-weight: 700;
      color: #333;
    }

    .avis-client-distribution-title {
      font-weight: 700;
      margin-bottom: 14px;
      color: #333;
    }

    .avis-client-distribution-row {
      display: grid;
      grid-template-columns: 52px 1fr 60px;
      gap: 10px;
      align-items: center;
      margin-bottom: 10px;
    }

    .avis-client-distribution-label {
      color: #333;
      font-weight: 600;
    }

    .avis-client-distribution-bar {
      background: #f2f2f2;
      border-radius: 999px;
      height: 10px;
      display: block;
      width: 100%;
      overflow: hidden;
    }

    .avis-client-distribution-fill {
      display: block;
      height: 100%;
      width: 0;
      background: #d56a24;
      border-radius: 999px;
      transition: width 0.35s ease;
    }

    .avis-client-distribution-value {
      text-align: right;
      color: #333;
      font-weight: 600;
    }

    .avis-client-comments {
        display: grid;
        grid-template-columns: repeat(2, minmax(300px, 1fr));
        flex-wrap: wrap;
        gap: 18px;
    }

    .avis-client-comment{
        width: 100%;
    }

    .avis-client-add-comment {
      padding: 24px;
      border: 1px solid #e5e5e5;
      border-radius: 10px;
      background: #fbfbfb;
    }

    .avis-star {
      display: inline-block;
      color: #ccc;
      font-size: 1.5rem;
      margin-left: 2px;
    }

    .avis-star--active {
      color: #f5b800;
    }
    
    .avis-pagination {
      display: flex;
      flex-wrap: wrap;
      justify-content: center;
      align-items: center;
      gap: 10px;
      margin-top: 18px;
    }

    .avis-page-info {
      font-weight: 600;
      color: #333;
    }

    .avis-pagination-button {
      padding: 11px 18px;
      border-radius: 6px;
      border: 1px solid #d56a24;
      background-color: #d56a24;
      color: #fff;
      cursor: pointer;
      transition: background-color 0.2s ease;
    }

    .btn-outline-secondary {
      background: transparent;
      color: #d56a24;
      border-color: #d56a24;
    }

    .avis-pagination-button:disabled,
    .btn-outline-secondary:disabled {
      opacity: 0.55;
      cursor: not-allowed;
    }

/* Infos complémentaires - catégorie de produit */
.elementor-widget-category-additional-description h2,
.elementor-widget-category-additional-description h3 {
    color: #adadaf !important;
    font-weight: bold !important;
    font-size: 1em !important;
}

.elementor-widget-category-additional-description p,
.elementor-widget-category-additional-description a {
    color: #adadaf !important;
}


/* block avis page produit */

.ps-avisclient-widget {
    display: flex;
    flex-wrap: wrap;
    gap: 2rem;
    font-family: inherit;
}

.ps-avisclient-summary {
    flex: 0 0 280px;
    min-width: 280px;
}

.ps-avisclient-average {
    display: flex;
    align-items: baseline;
    gap: 0.5rem;
    margin-bottom: 1.25rem;
    justify-self: center;
}

.ps-avisclient-average-value {
    font-size: 3rem;
    font-weight: 700;
    line-height: 1;
}

.ps-avisclient-average-label {
    font-size: 1.5rem;
    opacity: 0.8;
}

.ps-avisclient-average-sub {
    font-size: 0.9rem;
    opacity: 0.8;
    margin-top: 0.25rem;
}

.ps-avisclient-breakdown {
    display: grid;
    gap: 0.4rem;
}

.ps-avisclient-breakdown-row {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.ps-avisclient-breakdown-star {
    width: 1.6rem;
    font-weight: 600;
    color: #666;
}

.ps-avisclient-breakdown-bar {
    flex: 1 1 auto;
    height: 0.75rem;
    background: rgba(0, 0, 0, 0.1);
    border-radius: 999px;
    overflow: hidden;
}

.ps-avisclient-breakdown-fill {
    height: 100%;
    background: #f7931e;
    border-radius: 999px;
}

.ps-avisclient-breakdown-count {
    width: 2.4rem;
    text-align: right;
    font-size: 0.85rem;
    color: #333;
}

.ps-avisclient-reviews {
    flex: 1 1 320px;
    display: grid;
    gap: 1rem;
}

.ps-avisclient-review {
    padding: 1rem;
    border: 1px solid rgba(0,0,0,0.12);
    border-radius: 0.5rem;
    background: #fff;
}

.ps-avisclient-review-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 0.5rem;
    gap: 1rem;
}

.ps-avisclient-review-author {
    font-weight: 600;
}

.ps-avisclient-review-stars {
    display: inline-flex;
    gap: 0.125rem;
    color: #f7931e;
}

.ps-avisclient-star--empty {
    color: rgba(0, 0, 0, 0.15);
}

.ps-avisclient-review-date {
    font-size: 0.8rem;
    color: rgba(0, 0, 0, 0.5);
    margin-bottom: 0.5rem;
}

.ps-avisclient-review-text {
    font-size: 0.95rem;
    line-height: 1.4;
    white-space: pre-wrap;
}

.ps-avisclient-infos {
    padding: 10px;
    background: #B8B8BA33;
    margin-top: 30px;
}
.ps-avisclient-infos ul {
    list-style: inside;
}