.elementor-2013 .elementor-element.elementor-element-771012aa{--display:flex;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-size:var( --e-global-typography-primary-font-size );font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-2013 .elementor-element.elementor-element-3855c6f{text-align:center;}.elementor-2013 .elementor-element.elementor-element-9d338a3{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-2013 .elementor-element.elementor-element-105a6ef{text-align:center;font-family:"Charm", Sans-serif;font-size:28px;font-weight:400;}.elementor-2013 .elementor-element.elementor-element-0e133dc{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;border-style:solid;--border-style:solid;border-width:3px 3px 3px 3px;--border-top-width:3px;--border-right-width:3px;--border-bottom-width:3px;--border-left-width:3px;--border-radius:5px 5px 5px 5px;}.elementor-2013 .elementor-element.elementor-element-d3df893{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;border-style:solid;--border-style:solid;border-width:2px 2px 2px 2px;--border-top-width:2px;--border-right-width:2px;--border-bottom-width:2px;--border-left-width:2px;--border-radius:3px 3px 3px 3px;}.elementor-2013 .elementor-element.elementor-element-d3df893.e-con{--align-self:center;}.elementor-2013 .elementor-element.elementor-element-726674b{text-align:center;}.elementor-2013 .elementor-element.elementor-element-726674b .elementor-heading-title{font-family:"Charm", Sans-serif;font-size:36px;font-weight:700;}.elementor-2013 .elementor-element.elementor-element-108a361{text-align:center;font-family:"Charm", Sans-serif;font-size:22px;font-weight:700;}.elementor-widget-icon-list .elementor-icon-list-item:not(:last-child):after{border-color:var( --e-global-color-text );}.elementor-widget-icon-list .elementor-icon-list-icon i{color:var( --e-global-color-primary );}.elementor-widget-icon-list .elementor-icon-list-icon svg{fill:var( --e-global-color-primary );}.elementor-widget-icon-list .elementor-icon-list-item > .elementor-icon-list-text, .elementor-widget-icon-list .elementor-icon-list-item > a{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-icon-list .elementor-icon-list-text{color:var( --e-global-color-secondary );}.elementor-2013 .elementor-element.elementor-element-eec3471 > .elementor-widget-container{padding:0px 0px 0px 0px;}.elementor-2013 .elementor-element.elementor-element-eec3471 .elementor-icon-list-items:not(.elementor-inline-items) .elementor-icon-list-item:not(:last-child){padding-block-end:calc(16px/2);}.elementor-2013 .elementor-element.elementor-element-eec3471 .elementor-icon-list-items:not(.elementor-inline-items) .elementor-icon-list-item:not(:first-child){margin-block-start:calc(16px/2);}.elementor-2013 .elementor-element.elementor-element-eec3471 .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item{margin-inline:calc(16px/2);}.elementor-2013 .elementor-element.elementor-element-eec3471 .elementor-icon-list-items.elementor-inline-items{margin-inline:calc(-16px/2);}.elementor-2013 .elementor-element.elementor-element-eec3471 .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item:after{inset-inline-end:calc(-16px/2);}.elementor-2013 .elementor-element.elementor-element-eec3471 .elementor-icon-list-icon i{transition:color 0.3s;}.elementor-2013 .elementor-element.elementor-element-eec3471 .elementor-icon-list-icon svg{transition:fill 0.3s;}.elementor-2013 .elementor-element.elementor-element-eec3471{--e-icon-list-icon-size:20px;--icon-vertical-offset:0px;}.elementor-2013 .elementor-element.elementor-element-eec3471 .elementor-icon-list-icon{padding-inline-end:10px;}.elementor-2013 .elementor-element.elementor-element-eec3471 .elementor-icon-list-item > .elementor-icon-list-text, .elementor-2013 .elementor-element.elementor-element-eec3471 .elementor-icon-list-item > a{font-family:"Inter", Sans-serif;font-size:14px;font-weight:400;line-height:2em;}.elementor-2013 .elementor-element.elementor-element-eec3471 .elementor-icon-list-text{color:#6E7188;transition:color 0.3s;}.elementor-2013 .elementor-element.elementor-element-4fec3e2{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-2013 .elementor-element.elementor-element-587b140{font-family:"Charm", Sans-serif;font-size:28px;font-weight:400;}.elementor-2013 .elementor-element.elementor-element-f4213da > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-2013 .elementor-element.elementor-element-f4213da{text-align:start;font-family:"Charm", Sans-serif;font-size:28px;font-weight:400;}.elementor-2013 .elementor-element.elementor-element-f4213da p{margin-block-end:35px;}.elementor-2013 .elementor-element.elementor-element-3415789{font-family:"Charm", Sans-serif;font-size:28px;font-weight:400;}.elementor-2013 .elementor-element.elementor-element-dcd5053{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;border-style:solid;--border-style:solid;--margin-top:15px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-2013 .elementor-element.elementor-element-dcd5053.e-con{--align-self:center;}.elementor-2013 .elementor-element.elementor-element-a26e9e8{--e-image-carousel-slides-to-show:1;width:var( --container-widget-width, 50% );max-width:50%;--container-widget-width:50%;--container-widget-flex-grow:0;}.elementor-2013 .elementor-element.elementor-element-a26e9e8.elementor-element{--align-self:center;}.elementor-2013 .elementor-element.elementor-element-a26e9e8 .elementor-swiper-button.elementor-swiper-button-prev, .elementor-2013 .elementor-element.elementor-element-a26e9e8 .elementor-swiper-button.elementor-swiper-button-next{font-size:0px;}.elementor-2013 .elementor-element.elementor-element-a26e9e8 .elementor-image-carousel-wrapper .elementor-image-carousel .swiper-slide-image{border-style:solid;border-width:3px 3px 3px 3px;border-radius:10px 10px 10px 10px;}.elementor-2013 .elementor-element.elementor-element-a26e9e8 .elementor-image-carousel-caption{text-align:center;color:var( --e-global-color-primary );font-size:28px;font-weight:700;}@media(min-width:768px){.elementor-2013 .elementor-element.elementor-element-d3df893{--width:25%;}.elementor-2013 .elementor-element.elementor-element-4fec3e2{--width:75%;}}@media(max-width:1024px){.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );}.elementor-widget-text-editor{font-size:var( --e-global-typography-text-font-size );}.elementor-widget-icon-list .elementor-icon-list-item > .elementor-icon-list-text, .elementor-widget-icon-list .elementor-icon-list-item > a{font-size:var( --e-global-typography-text-font-size );}}@media(max-width:767px){.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );}.elementor-widget-text-editor{font-size:var( --e-global-typography-text-font-size );}.elementor-widget-icon-list .elementor-icon-list-item > .elementor-icon-list-text, .elementor-widget-icon-list .elementor-icon-list-item > a{font-size:var( --e-global-typography-text-font-size );}.elementor-2013 .elementor-element.elementor-element-dcd5053{border-width:3px 3px 3px 3px;--border-top-width:3px;--border-right-width:3px;--border-bottom-width:3px;--border-left-width:3px;--border-radius:10px 10px 10px 10px;--margin-top:15px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-2013 .elementor-element.elementor-element-a26e9e8{--container-widget-width:400px;--container-widget-flex-grow:0;width:var( --container-widget-width, 400px );max-width:400px;}}/* Start custom CSS *//* 1. DESCRIPTIF COURT : Police Charm, 22px, Vert de gris */
.woocommerce-product-details__short-description, 
.woocommerce-product-details__short-description p {
    font-family: 'Charm', cursive !important;
    color: #84A59D !important;
    font-size: 22px !important;
    font-weight: 700 !important;
    line-height: 1.4 !important;
}

/* 2. DISPARITION RÉPÉTITION TITRE ET CATÉGORIE */
.product_meta {
    display: none !important;
}

/* ============================================================
   FOCUS 3 : PRIX (PROMO, BARRÉ ET SUFFIXE)
   ============================================================ */

/* Ciblage de la zone de prix pour forcer le Montserrat et le Vert de gris */
.elementor-widget-woocommerce-product-price .price,
.elementor-widget-woocommerce-product-price .price ins,
.elementor-widget-woocommerce-product-price .price bdi,
.summary .price ins .woocommerce-Price-amount {
    font-family: 'Montserrat', sans-serif !important;
    font-size: 30px !important;
    color: #84A59D !important;
    font-weight: 700 !important;
    text-decoration: none !important;
}

/* Prix barré (Ancien prix) */
.elementor-widget-woocommerce-product-price .price del,
.elementor-widget-woocommerce-product-price .price del .woocommerce-Price-amount,
.summary .price del bdi {
    font-family: 'Montserrat', sans-serif !important;
    color: #84A59D !important;
    opacity: 1 !important;
    text-decoration: line-through !important;
    font-size: 1em !important;
}

/* Le suffixe (par nuit) */
.elementor-widget-woocommerce-product-price .price .woocommerce-price-suffix,
.summary .price .woocommerce-price-suffix {
    font-family: 'Montserrat', sans-serif !important;
    color: #84A59D !important;
    font-size: 20px !important;
    font-weight: 700 !important;
    display: inline-block !important;
}
/* ============================================================
   LE DERNIER COMBAT : LE BOUTON (CTA)
   ============================================================ */

/* On utilise l'ID de WooCommerce pour passer devant Elementor */
#single-product .summary button.single_add_to_cart_button.button.alt,
.woocommerce button.button.alt.disabled,
.woocommerce button.button.alt.date-selection-needed {
    background-color: #F28482 !important;
    background: #F28482 !important;
    color: #F7EDE2 !important;
    
    /* On force l'opacité à 100% même si le plugin veut le griser */
    opacity: 1 !important;
    visibility: visible !important;
    
    /* On réinitialise les filtres (le violet vient peut-être d'un filtre de couleur) */
    filter: none !important;
    -webkit-filter: none !important;
    
    /* On force la police */
    font-family: 'Montserrat', sans-serif !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
}

/* Forcer la couleur du texte à l'intérieur quoi qu'il arrive */
.woocommerce button.button.alt.date-selection-needed {
    color: #F7EDE2 !important;
    -webkit-text-fill-color: #F7EDE2 !important;
}

/* ============================================================
   1. FIX BOUTON : LE VERROUILLAGE FINAL
   ============================================================ */
/* On cible l'ID direct et les états actifs/inactifs */
#single-product .summary button.single_add_to_cart_button,
.summary button[type="submit"].single_add_to_cart_button,
.summary .wc-bookings-booking-form-button,
.summary button.button.alt {
    background-color: #F28482 !important;
    background: #F28482 !important;
    color: #F7EDE2 !important;
    opacity: 1 !important;
    font-family: 'Montserrat', sans-serif !important;
    font-weight: 700 !important;
}

/* ============================================================
   2. LE LIEN "EFFACER" (CIBLAGE PAR TEXTE)
   ============================================================ */
/* On cible le lien de retour/reset du calendrier */
.summary a[class*="booking-form-button"], 
.summary .wc-bookings-date-picker + a,
.summary a.wc-bookings-date-picker-choose-date-next {
    font-family: 'Montserrat', sans-serif !important;
    font-size: 18px !important;
    font-weight: 700 !important;
    color: #84A59D !important;
    text-transform: uppercase !important;
    display: inline-block !important;
    margin-top: 10px !important;
}

/* ============================================================
   3. LE PRIX TOTAL (LES "PETITS POINTS")
   ============================================================ */
/* On force l'affichage du bloc de coût qui semble écrasé */
.summary .wc-bookings-booking-cost, 
.summary [class*="booking-cost"] {
    display: block !important;
    visibility: visible !important;
    font-family: 'Montserrat', sans-serif !important;
    font-size: 24px !important; /* On l'agrandit pour qu'il ne soit plus des points */
    color: #84A59D !important;
    font-weight: 700 !important;
    min-height: 30px !important;
    margin: 15px 0 !important;
}
/* Centrer la description courte de WooCommerce */
.woocommerce-product-details__short-description, 
.woocommerce-Tabs-panel--description {
    text-align: center !important;
}

/* Centrer les paragraphes à l'intérieur de la description */
.woocommerce-product-details__short-description p, 
.woocommerce-Tabs-panel--description p {
    text-align: center !important;
    margin-left: auto !important;
    margin-right: auto !important;
}
/* Centrer le titre principal du produit */
.woocommerce div.product .product_title, 
h1.product_title {
    text-align: center !important;
    width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
    display: block !important;
}
/* Centrer le bloc de prix WooCommerce */
.woocommerce div.product p.price, 
.woocommerce div.product span.price,
.price {
    text-align: center !important;
    display: block !important;
    width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

/* Ajuster les chiffres à l'intérieur du prix */
.price .woocommerce-Price-amount {
    justify-content: center !important;
    display: flex !important;
}
/* 1. Aligner le tableau au centre sans changer sa structure en ligne */
table.variations {
    margin: 20px auto !important;
    width: auto !important;
}

/* 2. Style du Label (Durée) */
table.variations th.label {
    padding-right: 20px !important; /* Espace entre le titre et le menu */
    vertical-align: middle !important;
    font-family: 'Montserrat', sans-serif !important;
    font-size: 18px !important;
    color: #84A59D !important; /* Vert de gris */
    font-weight: 700 !important;
    text-align: left !important;
}

/* 3. Style du menu déroulant (Select) sur fond Vert de gris */
table.variations select {
    font-family: 'Montserrat', sans-serif !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    color: #F7EDE2 !important; /* Couleur Lin */
    background-color: #84A59D !important; /* Fond Vert de gris */
    border: none !important;
    border-radius: 5px !important;
    padding: 8px 15px !important;
    cursor: pointer !important;
    outline: none !important;
    appearance: none; /* Supprime le style par défaut du navigateur */
    -webkit-appearance: none;
}

/* 4. Harmoniser le lien "Effacer" à côté */
.reset_variations {
    font-family: 'Montserrat', sans-serif !important;
    font-size: 13px !important;
    color: #84A59D !important;
    margin-left: 10px !important;
    text-decoration: underline !important;
}
/* 1. On donne un style de cadre à la ligne (titre + sélection) */
table.variations tr {
    border: 1px solid #84A59D !important; /* L'encadrement Vert de gris */
    display: flex !important;             /* Force l'alignement côte à côte */
    align-items: center !important;
    justify-content: center !important;
    padding: 10px 20px !important;
    border-radius: 8px !important;        /* Un petit arrondi pour le cadre */
    margin-bottom: 10px !important;
}

/* 2. On ajuste le Label (Durée) pour qu'il soit bien dans le cadre */
table.variations th.label {
    padding: 0 20px 0 0 !important;
    margin: 0 !important;
    border: none !important; /* On enlève les bordures par défaut du tableau */
}

/* 3. On ajuste la cellule du menu pour qu'elle n'ait pas de marges parasites */
table.variations td.value {
    padding: 0 !important;
    border: none !important;
    display: flex !important;
    align-items: center !important;
}

/* 4. Le menu déroulant (Toujours fond vert de gris / texte lin) */
table.variations select {
    font-family: 'Montserrat', sans-serif !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    color: #F7EDE2 !important;
    background-color: #84A59D !important;
    border: none !important;
    border-radius: 5px !important;
    padding: 8px 15px !important;
    cursor: pointer !important;
    outline: none !important;
}
/* 1. ALIGNER LE BLOC QUANTITÉ ET BOUTON AU CENTRE */
.woocommerce div.product form.cart {
    display: flex !important;
    flex-direction: column !important; /* On empile les lignes */
    align-items: center !important;    /* Tout au centre */
    justify-content: center !important;
}

/* 2. HARMONISER LA LIGNE QUANTITÉ + BOUTON */
.woocommerce div.product form.cart .quantity, 
.woocommerce div.product form.cart .button {
    margin: 10px !important; /* Un peu d'air entre les éléments */
}

/* On force la ligne "Quantité + Bouton" à rester groupée et centrée */
.woocommerce div.product form.cart .variations_button {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex-wrap: wrap !important;
    width: 100% !important;
}

/* 3. ALIGNER LA LIGNE DES VARIATIONS (DURÉE) */
/* On s'assure que le cadre qu'on a créé reste centré et ne prend que la place nécessaire */
table.variations tr {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    margin-left: auto !important;
    margin-right: auto !important;
    width: fit-content !important; /* Le cadre ne s'étale pas sur toute la largeur */
    min-width: 300px; /* Optionnel : pour donner une base solide au cadre */
}
/* 1. ON ENCADRE TOUT LE BLOC DE COMMANDE (Variations + Bouton) */
form.cart {
    border: 1px solid #84A59D !important; /* Ton cadre Vert de gris */
    border-radius: 12px !important;
    padding: 25px !important;
    max-width: 450px !important; /* Tu peux ajuster cette largeur */
    margin: 20px auto !important; /* Centre tout le bloc sur la page */
    background-color: transparent !important;
}

/* 2. ON NETTOIE LES VARIATIONS À L'INTÉRIEUR */
table.variations {
    width: 100% !important;
    margin-bottom: 20px !important;
    border: none !important;
}

table.variations tr {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    border: none !important; /* On enlève le cadre que j'avais mis sur la ligne seule */
}

/* 3. ON ALIGNE LA QUANTITÉ ET LE BOUTON SUR LA MÊME LIGNE */
.woocommerce div.product form.cart .variations_button {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    width: 100% !important;
    padding-top: 15px !important;
    border-top: 1px solid rgba(132, 165, 157, 0.3) !important; /* Petite ligne de séparation subtile */
}

/* 4. AJUSTEMENT DU BOUTON ET DE LA QUANTITÉ */
.quantity {
    margin-right: 15px !important;
}

.single_add_to_cart_button {
    flex-grow: 1 !important;
}
/* Masquer le "/nuit" à côté du prix */
.wceb_price_format {
    display: none !important;
}

/* Masquer la ligne "Durée de réservation totale" */
/* On cible le paragraphe qui contient ce texte spécifique */
.woocommerce-bookings-booking-cost p, 
.wc-bookings-booking-cost p {
    display: none !important;
}
/* On masque tout le bloc de coût qui contient la durée */
.woocommerce-bookings-booking-cost {
    display: none !important;
}

/* On ne ré-affiche QUE le montant final s'il y a une classe spécifique pour lui */
/* Si le prix disparait aussi avec le code au-dessus, utilise plutôt l'Option 2 */

/* 1. On cache spécifiquement le texte de la durée */
.wc-bookings-booking-cost p {
    font-size: 0 !important; /* On réduit la taille à 0 pour cacher le texte */
    color: transparent !important;
    line-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* 2. On s'assure que le PRIX (le montant) reste visible à l'intérieur */
.wc-bookings-booking-cost p .woocommerce-Price-amount {
    font-size: 24px !important; /* On redonne la taille voulue au prix */
    color: #84A59D !important;   /* Vert de gris */
    visibility: visible !important;
    display: block !important;
    line-height: 1.5 !important;
}

/* 3. Masquer le suffixe /nuit s'il réapparaît ici */
.wc-bookings-booking-cost p .wceb_price_format {
    display: none !important;
}/* End custom CSS */