.elementor-5622 .elementor-element.elementor-element-ab83ce9{--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-5622 .elementor-element.elementor-element-1e0c9c2{text-align:center;font-family:"Charm", Sans-serif;font-size:28px;font-weight:700;}.elementor-5622 .elementor-element.elementor-element-24a7c32{--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-5622 .elementor-element.elementor-element-48a6c3c{--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-color:var( --e-global-color-primary );--border-color:var( --e-global-color-primary );--border-radius:3px 3px 3px 3px;}.elementor-5622 .elementor-element.elementor-element-48a6c3c.e-con{--align-self:center;}.elementor-widget-image .widget-image-caption{color:var( --e-global-color-text );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-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-5622 .elementor-element.elementor-element-9a5aeff{text-align:center;}.elementor-5622 .elementor-element.elementor-element-9a5aeff .elementor-heading-title{font-family:"Charm", Sans-serif;font-size:36px;font-weight:700;}.elementor-5622 .elementor-element.elementor-element-5c43bcf{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-5622 .elementor-element.elementor-element-f4704c8 > .elementor-widget-container{padding:0px 0px 0px 0px;}.elementor-5622 .elementor-element.elementor-element-f4704c8 .elementor-icon-list-items:not(.elementor-inline-items) .elementor-icon-list-item:not(:last-child){padding-block-end:calc(16px/2);}.elementor-5622 .elementor-element.elementor-element-f4704c8 .elementor-icon-list-items:not(.elementor-inline-items) .elementor-icon-list-item:not(:first-child){margin-block-start:calc(16px/2);}.elementor-5622 .elementor-element.elementor-element-f4704c8 .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item{margin-inline:calc(16px/2);}.elementor-5622 .elementor-element.elementor-element-f4704c8 .elementor-icon-list-items.elementor-inline-items{margin-inline:calc(-16px/2);}.elementor-5622 .elementor-element.elementor-element-f4704c8 .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item:after{inset-inline-end:calc(-16px/2);}.elementor-5622 .elementor-element.elementor-element-f4704c8 .elementor-icon-list-icon i{transition:color 0.3s;}.elementor-5622 .elementor-element.elementor-element-f4704c8 .elementor-icon-list-icon svg{transition:fill 0.3s;}.elementor-5622 .elementor-element.elementor-element-f4704c8{--e-icon-list-icon-size:20px;--icon-vertical-offset:0px;}.elementor-5622 .elementor-element.elementor-element-f4704c8 .elementor-icon-list-icon{padding-inline-end:10px;}.elementor-5622 .elementor-element.elementor-element-f4704c8 .elementor-icon-list-item > .elementor-icon-list-text, .elementor-5622 .elementor-element.elementor-element-f4704c8 .elementor-icon-list-item > a{font-family:"Inter", Sans-serif;font-size:14px;font-weight:400;line-height:2em;}.elementor-5622 .elementor-element.elementor-element-f4704c8 .elementor-icon-list-text{color:#6E7188;transition:color 0.3s;}.elementor-5622 .elementor-element.elementor-element-e830427{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--align-items:center;border-style:solid;--border-style:solid;border-width:0px 0px 0px 0px;--border-top-width:0px;--border-right-width:0px;--border-bottom-width:0px;--border-left-width:0px;}.elementor-5622 .elementor-element.elementor-element-e830427.e-con{--align-self:center;}.elementor-5622 .elementor-element.elementor-element-b593da4{--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-5622 .elementor-element.elementor-element-b593da4.e-con{--align-self:center;}.elementor-5622 .elementor-element.elementor-element-6196478e{font-family:"Charm", Sans-serif;font-size:28px;font-weight:500;}.elementor-5622 .elementor-element.elementor-element-59f8d13{--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-5622 .elementor-element.elementor-element-f470a61{text-align:center;font-family:"Charm", Sans-serif;font-size:28px;font-weight:700;}.elementor-5622 .elementor-element.elementor-element-bd93178 > .elementor-widget-container{margin:0px 0px 20px 0px;border-style:groove;border-width:5px 5px 5px 5px;border-radius:10px 10px 10px 10px;box-shadow:0px 0px 10px 0px #F6BD60;}.elementor-5622 .elementor-element.elementor-element-bd93178.elementor-element{--align-self:center;}.elementor-5622 .elementor-element.elementor-element-bd93178{text-align:center;font-family:"Charm", Sans-serif;font-size:28px;font-weight:700;}.elementor-5622 .elementor-element.elementor-element-d547727{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;}.elementor-5622 .elementor-element.elementor-element-d547727.e-con{--align-self:center;}.elementor-5622 .elementor-element.elementor-element-afebbde{text-align:center;}.elementor-5622 .elementor-element.elementor-element-4b716f7{--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;}.elementor-5622 .elementor-element.elementor-element-269f893{--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-5622 .elementor-element.elementor-element-5d433b4{--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-5622 .elementor-element.elementor-element-9b89f8a{--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-5622 .elementor-element.elementor-element-c6d1b0f{--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;}@media(min-width:768px){.elementor-5622 .elementor-element.elementor-element-48a6c3c{--width:25%;}.elementor-5622 .elementor-element.elementor-element-e830427{--width:75%;}.elementor-5622 .elementor-element.elementor-element-b593da4{--width:100%;}.elementor-5622 .elementor-element.elementor-element-269f893{--width:25%;}.elementor-5622 .elementor-element.elementor-element-5d433b4{--width:25%;}.elementor-5622 .elementor-element.elementor-element-9b89f8a{--width:25%;}.elementor-5622 .elementor-element.elementor-element-c6d1b0f{--width:25%;}}@media(max-width:1024px){.elementor-widget-text-editor{font-size:var( --e-global-typography-text-font-size );}.elementor-widget-image .widget-image-caption{font-size:var( --e-global-typography-text-font-size );}.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-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-text-editor{font-size:var( --e-global-typography-text-font-size );}.elementor-widget-image .widget-image-caption{font-size:var( --e-global-typography-text-font-size );}.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-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 );}}/* 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 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. 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;
}
/* 1. On cache le texte "/nuit" d'origine sans supprimer l'élément */
.wceb_price_format {
    font-size: 0 !important;
    visibility: hidden !important;
}
/* Ciblage chirurgical du texte de durée dans le formulaire de réservation */
.elementor-widget-woocommerce-product-add-to-cart .booking_details p {
    display: none !important;
    visibility: hidden !important;
    height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
}
/* 1. Supprimer le lien "Modifier le supplément" */
.prad-fron-edit-addon, 
.prad-absolute,
[href*="prad-dashboard"] {
    display: none !important;
}

/* 1. On importe la police au cas où le plugin l'isole */
@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@400;700&display=swap');

/* 2. On utilise EXACTEMENT les mêmes sélecteurs que ton inspection pour forcer Montserrat */
.prad-block-content, 
.prad-dial-code-show, 
input:is([type=url],[type=tel],[type=text],[type=email],[type=number],[type=search],[type=password]).prad-block-input, 
textarea.prad-block-input, 
.prad-block-products.prad-swatch-layout_overlay .prad-select-box .prad-select-box-item {
    font-family: 'Montserrat', sans-serif !important;
    font-weight: 700 !important;
    color: #f7ede2 !important; /* Ton Lin */
}

/* 3. On force aussi sur la partie "Input" pour la saisie */
.prad-block-input, 
textarea.prad-block-input, 
input:is([type=url],[type=text],[type=email],[type=number],[type=search],[type=password]).prad-block-input {
    font-family: 'Montserrat', sans-serif !important;
}

/* Ciblage du titre pour imposer Montserrat en gardant le Vert de gris */
.prad-block-title {
    font-family: 'Montserrat', sans-serif !important;
    font-weight: 700 !important;
    font-size: 20px !important;
    color: #84a59d !important; /* On confirme ton Vert de gris */
    text-transform: none !important;
}
/* 1. Masquer le libellé "Addons Price" et ses petits points */
.prad-label, 
.prad-addon-price-label,
strong[class*="prad-"] {
    display: none !important;
}

/* 1. On supprime tout le bloc récapitulatif de prix généré par le plugin */
div[class*="prad-price"], 
div[class*="apf-product-totals"],
.prad-addon-totals,
.prad-price-summary {
    display: none !important;
    height: 0 !important;
    visibility: hidden !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* 2. Au cas où le plugin injecterait le prix juste après le champ texte */
.prad-field-price, 
.apf-pao-field-price {
    display: none !important;
}

/* 3. On s'assure que le prix principal de WooCommerce, lui, reste bien visible */
.summary .price .woocommerce-Price-amount {
    display: inline-block !important;
}/* End custom CSS */