/* =====================================================================
   Refonte graphique Set Spa – habillage plus actuel, meme identite
   (dore #d3b679, Raleway, Mr De Haviland). Charge par le mu-plugin
   03-refonte-graphique.php. Les sections de l'accueil sont reperees par
   leurs classes WPBakery (vc_custom_...), identiques sur la prod.
   ===================================================================== */
:root{
	--ss-or:#d3b679; --ss-or-fonce:#b39556; --ss-encre:#1f1c19; --ss-texte:#5b554e;
	--ss-creme:#f8f5ef; --ss-ligne:#e9e2d5;
}

/* ---------- Textes : plus lisibles (gris clair 15px -> gris chaud 16px) ---------- */
body .edgtf-content p,
body .edgtf-content li,
body .edgtf-content .wpb_text_column{
	color:var(--ss-texte);
	font-size:16px;
	line-height:1.75;
}
body .edgtf-content h2{color:var(--ss-encre)}

/* ---------- Boutons ---------- */
body .edgtf-btn.edgtf-btn-solid{
	padding:15px 40px;
	letter-spacing:3px;
	transition:background-color .25s,border-color .25s,transform .25s,box-shadow .25s;
}
body .edgtf-btn.edgtf-btn-solid:hover{
	background-color:var(--ss-or-fonce)!important;
	border-color:var(--ss-or-fonce)!important;
	color:#fff!important;
	transform:translateY(-2px);
	box-shadow:0 10px 22px -12px rgba(31,28,25,.55);
}

/* ---------- En-tete fixe : fond blanc, ombre legere ---------- */
body .edgtf-sticky-header .edgtf-sticky-holder{
	background-color:rgba(255,255,255,.97)!important;
	box-shadow:0 8px 28px -18px rgba(31,28,25,.45);
	border-bottom:1px solid var(--ss-ligne);
}
/* Menu un peu plus serre pour laisser la place au bouton Reserver */
body .edgtf-main-menu > ul > li:not(.setspa-cta) > a{padding-left:22px!important;padding-right:22px!important}
/* Ecrans moyens (1025-1366 px) : le menu ne tenait pas a cote du logo et passait sur une 2e ligne (deja le cas sur l ancien site) */
@media (min-width:1025px) and (max-width:1366px){
	body .edgtf-page-header .edgtf-menu-area .edgtf-vertical-align-containers,
	body .edgtf-sticky-header .edgtf-vertical-align-containers{padding-left:24px!important;padding-right:24px!important}
	body .edgtf-main-menu > ul > li:not(.setspa-cta) > a{padding-left:12px!important;padding-right:12px!important;letter-spacing:1.6px!important}
	body .edgtf-main-menu > ul > li.setspa-cta{margin-left:8px}
	body .edgtf-main-menu > ul > li.setspa-cta > a{padding:12px 18px!important;letter-spacing:1.6px!important}
}
/* 1025-1100 px : menu un peu plus petit */
@media (min-width:1025px) and (max-width:1100px){
	body .edgtf-main-menu > ul > li > a{font-size:12px!important}
	body .edgtf-main-menu > ul > li:not(.setspa-cta) > a{padding-left:8px!important;padding-right:8px!important;letter-spacing:1.2px!important}
	body .edgtf-page-header .edgtf-logo-wrapper img,body .edgtf-sticky-header .edgtf-logo-wrapper img{max-width:170px!important;height:auto!important}
	body .edgtf-page-header .edgtf-position-left,body .edgtf-sticky-header .edgtf-position-left{max-width:180px}
}
/* En dessous de 1200 px : "Accueil" retire du menu (le logo y mene deja) */
@media (min-width:1025px) and (max-width:1200px){
	body .edgtf-main-menu > ul > li:first-child{display:none!important}
	body .edgtf-main-menu > ul > li:not(.setspa-cta) > a{padding-left:10px!important;padding-right:10px!important}
}

/* Bouton "Reserver" dans le menu */
body .edgtf-main-menu > ul > li.setspa-cta{float:left;height:100%;display:flex;align-items:center;margin-left:14px}
body .edgtf-main-menu > ul > li.setspa-cta > a{
	height:auto!important;line-height:1!important;padding:13px 24px!important;
	background:var(--ss-or);color:#fff!important;border:1px solid var(--ss-or);
	transition:background-color .25s;
}
body .edgtf-main-menu > ul > li.setspa-cta > a:hover{background:var(--ss-or-fonce);border-color:var(--ss-or-fonce)}
body .edgtf-main-menu > ul > li.setspa-cta > a .item_outer::before,
body .edgtf-main-menu > ul > li.setspa-cta > a .item_outer::after{display:none!important}

/* ---------- Accueil : image d'ouverture, texte plus lisible ---------- */
body.home rs-module-wrap rs-layer{text-shadow:0 2px 18px rgba(0,0,0,.35)}

/* ---------- Accueil : bienvenue + video ---------- */
body.home .vc_custom_1627327552367{background-color:var(--ss-creme)!important;padding-top:100px!important;padding-bottom:110px!important}
body.home .vc_custom_1627327552367 h2{font-weight:300;letter-spacing:4px;line-height:1.3;max-width:900px;margin-left:auto;margin-right:auto}
body.home .vc_custom_1627327552367 .wpb_text_column p{max-width:780px;margin-left:auto;margin-right:auto;font-size:17px}
body.home .vc_custom_1627327552367 video,
body.home .vc_custom_1627327552367 .mejs-container,
body.home .vc_custom_1627327552367 .wp-video{box-shadow:0 30px 60px -35px rgba(31,28,25,.6)}

/* Les 3 encarts (Reservez / Cartes cadeaux / Formules) */
body.home .vc_custom_1627327552367 .wpb_single_image .vc_single_image-wrapper{overflow:hidden;border:0!important}
body.home .vc_custom_1627327552367 .wpb_single_image img{transition:transform .8s ease}
body.home .vc_custom_1627327552367 .vc_column_container:hover .wpb_single_image img{transform:scale(1.05)}
body.home .edgtf-elements-holder.encart-link:not(.right){
	width:84%;margin-left:auto;margin-right:auto;margin-top:-110px!important;
	padding:34px 0 38px!important;
	box-shadow:0 24px 50px -30px rgba(31,28,25,.45);
	transition:transform .35s,box-shadow .35s;
}
body.home .vc_column_container:hover .edgtf-elements-holder.encart-link:not(.right){
	transform:translateY(-6px);box-shadow:0 30px 60px -30px rgba(31,28,25,.55);
}
body.home .edgtf-elements-holder.encart-link h2{letter-spacing:3px;font-weight:400}
body.home .edgtf-elements-holder.encart-link:not(.right){display:block}
body.home .edgtf-elements-holder.encart-link:not(.right) .edgtf-eh-item{display:block;box-sizing:border-box;width:100%!important;max-width:100%;margin:0!important}

/* ---------- Accueil : piscine / jacuzzi / hammam / sauna ---------- */
body.home .edgtf-content-aligment-center .hover-gold > .vc_column-inner{
	padding-left:2.4em!important;padding-right:2.4em!important;
}
body.home .edgtf-content-aligment-center .hover-gold .edgtf-st-title{letter-spacing:5px;margin-top:6px}
body.home .edgtf-content-aligment-center .hover-gold .edgtf-st-text{
	font-size:16px!important;line-height:1.7!important;color:var(--ss-texte)!important;
}
body.home .edgtf-content-aligment-center .hover-gold .edgtf-icon-shortcode,
body.home .edgtf-content-aligment-center .hover-gold .edgtf-iwt-icon{transition:transform .35s}
body.home .edgtf-content-aligment-center .hover-gold:hover .edgtf-iwt-icon{transform:translateY(-4px)}

/* ---------- Accueil : horaires (bloc sombre) ---------- */
body.home .vc_custom_1627329371704{background-color:var(--ss-encre)!important;padding-top:80px!important;padding-bottom:80px!important}
body.home .vc_custom_1627329371704 h2{letter-spacing:4px;font-weight:300}
body.home .vc_custom_1627329371704 p,
body.home .vc_custom_1627329371704 li{color:#cfc6b8;font-size:15px}
body.home .vc_custom_1627329371704 ul{list-style:none;padding:0;margin:0;text-align:left;display:inline-block}
body.home .vc_custom_1627329371704 ul li{position:relative;padding:9px 0 9px 22px;border-bottom:1px solid rgba(211,182,121,.18)}
body.home .vc_custom_1627329371704 ul li::before{content:"";position:absolute;left:0;top:19px;width:7px;height:7px;border-radius:50%;background:var(--ss-or)}
body.home .vc_custom_1627329371704 .wpb_single_image img{box-shadow:0 30px 60px -30px rgba(0,0,0,.8)}

/* ---------- Accueil : tarifs (texte blanc sur dore peu lisible -> bloc sombre) ---------- */
body.home .block-tarif{
	background-color:rgba(31,28,25,.93)!important;
	padding:48px 42px!important;
}
body.home .block-tarif h2{color:var(--ss-or)!important;letter-spacing:5px;font-weight:300}
body.home .block-tarif p,
body.home .block-tarif .wpb_text_column{color:#e6dfd2!important;font-size:15px}
body.home .block-tarif strong{display:block;color:#fff;font-weight:600;letter-spacing:1.5px;font-size:13px;margin-bottom:8px}
body.home .block-tarif table{width:100%;border-collapse:collapse;margin:4px 0 10px;background:transparent}
body.home .block-tarif table,body.home .block-tarif tbody,body.home .block-tarif tr,body.home .block-tarif td div{border:0!important;outline:0;background:transparent!important}
body.home .block-tarif td{border:0;border-bottom:1px solid rgba(211,182,121,.3);padding:10px 0;color:#e6dfd2;font-size:15px;background:transparent}
body.home .block-tarif td em{font-style:normal}
body.home .block-tarif td:last-child div{color:var(--ss-or);font-weight:600}
body.home .block-tarif strong em{font-style:normal;color:var(--ss-or);font-weight:500;letter-spacing:.5px;font-size:14px;display:inline}

/* ---------- Produits (cartes cadeaux, formules) ---------- */
body.home .vc_custom_1627322644132{background-color:var(--ss-creme)!important;padding-top:100px!important}
body .edgtf-content ul.products li.product .edgtf-pl-inner{overflow:hidden}
body .edgtf-content ul.products li.product .edgtf-pl-image img{transition:transform .8s ease}
body .edgtf-content ul.products li.product:hover .edgtf-pl-image img{transform:scale(1.05)}
body.home ul.products li.product{
	background:#fff;padding-bottom:22px;
	transition:box-shadow .35s,transform .35s;
}
body.home ul.products li.product:hover{box-shadow:0 26px 50px -32px rgba(31,28,25,.5);transform:translateY(-4px)}
body.home ul.products li.product .edgtf-product-list-title,
body.home ul.products li.product .woocommerce-loop-product__title{padding:0 14px;color:var(--ss-encre);letter-spacing:1.5px}
body.home ul.products li.product .price{color:var(--ss-or-fonce)!important;font-weight:600}

/* ---------- Accueil : bandeau formules (photo plus sombre, texte lisible) ---------- */
body.home .vc_custom_1626274000296{position:relative;background-position:center!important;background-size:cover!important}
body.home .vc_custom_1626274000296::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(31,28,25,.35),rgba(31,28,25,.6));pointer-events:none}
body.home .vc_custom_1626274000296 > .wpb_column{position:relative;z-index:1}
body.home .vc_custom_1626274000296 h2{letter-spacing:5px;font-weight:300;text-shadow:0 2px 20px rgba(0,0,0,.35)}

/* ---------- Pied de page ---------- */
body .edgtf-page-footer .edgtf-footer-top-holder{background-color:var(--ss-encre)!important}
body .edgtf-page-footer p,
body .edgtf-page-footer li,
body .edgtf-page-footer a{color:#b7ae9f}
body .edgtf-page-footer a:hover{color:var(--ss-or)}

/* ---------- Mobile : barre fixe Reserver / Carte cadeau ---------- */
.setspa-barre-mobile{display:none}
@media (max-width:1024px){
	body .edgtf-content p,body .edgtf-content li{font-size:15.5px}
	body.home .edgtf-elements-holder.encart-link:not(.right){width:90%;margin-top:-70px!important}
	body.home .block-tarif{padding:36px 22px!important}
	.setspa-barre-mobile{
		display:flex;gap:10px;position:fixed;left:0;right:0;bottom:0;z-index:9999;
		padding:10px 12px calc(10px + env(safe-area-inset-bottom));
		background:rgba(255,255,255,.97);border-top:1px solid var(--ss-ligne);
		box-shadow:0 -10px 30px -20px rgba(31,28,25,.5);
	}
	.setspa-barre-mobile a{
		flex:1;text-align:center;padding:14px 8px;font:600 12px/1 Raleway,sans-serif;
		letter-spacing:2.5px;text-transform:uppercase;text-decoration:none;border:1px solid var(--ss-or);
	}
	.setspa-bm-reserver{background:var(--ss-or);color:#fff!important}
	.setspa-bm-cadeau{background:#fff;color:var(--ss-encre)!important}
	body{padding-bottom:70px}
	body #edgtf-back-to-top{bottom:84px}
}
@media (max-width:768px){
	body.home .vc_custom_1627327552367{padding-top:70px!important;padding-bottom:70px!important}
	body.home .vc_custom_1627327552367 h2{font-size:26px!important;letter-spacing:2px}
	body.home .vc_custom_1627327552367 .vc_column-inner{padding-left:16px!important;padding-right:16px!important}
	body.home .edgtf-content-aligment-center .hover-gold > .vc_column-inner{padding-left:1.4em!important;padding-right:1.4em!important}
	body .edgtf-btn.edgtf-btn-solid{padding:14px 26px;white-space:nowrap}
}

/* ---------- Fiches produits : choix des options ---------- */
/* Trait vertical du theme a droite du libelle (ex. "Duree"), plus haut que la liste et visible dessous */
body.single-product table.variations th.label,
body.single-product table.variations td{border:0!important;vertical-align:middle}
body.single-product table.variations th.label{padding-right:14px}

/* =====================================================================
   Pages du menu Tarifs (Nos tarifs spa, Formules, Massages & soins,
   Nuitees, Piscine externe) : memes couleurs que l'accueil
   ===================================================================== */
/* Aplat moutarde #937536 (hors charte, texte dore illisible dessus) -> fond creme clair de la charte, textes sombres */
body .edgtf-row-grid-section-wrapper[style*="#937536"]{background-color:var(--ss-creme)!important}
body .edgtf-row-grid-section-wrapper[style*="#937536"] h2{color:var(--ss-or-fonce)!important}
body .edgtf-row-grid-section-wrapper[style*="#937536"] h4{color:var(--ss-encre)!important}
body .edgtf-row-grid-section-wrapper[style*="#937536"] p,
body .edgtf-row-grid-section-wrapper[style*="#937536"] li,
body .edgtf-row-grid-section-wrapper[style*="#937536"] .wpb_text_column{color:var(--ss-texte)!important}
body .edgtf-row-grid-section-wrapper[style*="#937536"] p[style*="d3b679"],
body .edgtf-row-grid-section-wrapper[style*="#937536"] p[style*="D3B679"]{color:var(--ss-or-fonce)!important;font-style:italic}
body .edgtf-row-grid-section-wrapper[style*="#937536"] strong{color:var(--ss-encre)}

/* Sections sur photo : voile sombre pour lire les textes */
body.page-id-184027 .edgtf-row-grid-section-wrapper[style*="background-image"],
body.page-id-122151 .edgtf-row-grid-section-wrapper[style*="background-image"]{position:relative;background-size:cover!important;background-position:center!important}
body.page-id-184027 .edgtf-row-grid-section-wrapper[style*="background-image"]::before,
body.page-id-122151 .edgtf-row-grid-section-wrapper[style*="background-image"]::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(31,28,25,.92) 0%,rgba(31,28,25,.82) 55%,rgba(31,28,25,.55) 100%);pointer-events:none}
body.page-id-184027 .edgtf-row-grid-section-wrapper[style*="background-image"] > *,
body.page-id-122151 .edgtf-row-grid-section-wrapper[style*="background-image"] > *{position:relative;z-index:1}

/* Titres et textes de ces pages */
body.page-id-184027 .edgtf-content h4,
body.page-id-122151 .edgtf-content h4{letter-spacing:3px;font-weight:400}
body.page-id-184027 .edgtf-row-grid-section-wrapper[style*="background-image"] p,
body.page-id-184027 .edgtf-row-grid-section-wrapper[style*="background-image"] li,
body.page-id-122151 .edgtf-row-grid-section-wrapper[style*="background-image"] p,
body.page-id-122151 .edgtf-row-grid-section-wrapper[style*="background-image"] li{color:#e6dfd2;font-size:15.5px;line-height:1.75}
body.page-id-184027 .edgtf-row-grid-section-wrapper .wpb_single_image img{box-shadow:0 30px 60px -30px rgba(0,0,0,.8)}

/* Cartes de prix (liste "menu" du theme) : titre sombre, prix dore, pointilles fins */
body .edgtf-restaurant-menu-list .edgtf-rml-item{padding:14px 0;border-bottom:1px solid var(--ss-ligne)}
body .edgtf-restaurant-menu-list .edgtf-rml-title{color:var(--ss-encre);letter-spacing:2px}
body .edgtf-restaurant-menu-list .edgtf-rml-price-holder .edgtf-rml-price{color:var(--ss-or-fonce)!important;font-weight:600}
body .edgtf-restaurant-menu-list .edgtf-rml-line{border-color:rgba(179,149,86,.45)!important;border-bottom-style:dotted!important}
body .edgtf-restaurant-menu-list .edgtf-rml-description-holder,
body .edgtf-restaurant-menu-list .edgtf-rml-description-holder p{color:var(--ss-texte);font-size:14.5px;line-height:1.65}
/* ... sur fond sombre */
body .edgtf-row-grid-section-wrapper[style*="background-image"] .edgtf-rml-item{border-bottom-color:rgba(211,182,121,.22)}
body .edgtf-row-grid-section-wrapper[style*="background-image"] .edgtf-rml-title{color:#fff}
body .edgtf-row-grid-section-wrapper[style*="background-image"] .edgtf-rml-price{color:var(--ss-or)!important}
body .edgtf-row-grid-section-wrapper[style*="background-image"] .edgtf-rml-description-holder,
body .edgtf-row-grid-section-wrapper[style*="background-image"] .edgtf-rml-description-holder p{color:#cfc6b8}
/* Listes de prix "claires" (texte blanc prevu pour l'ancien fond moutarde) -> textes sombres sur creme */
body .edgtf-row-grid-section-wrapper[style*="#937536"] .edgtf-restaurant-menu-list .edgtf-rml-title,
body .edgtf-row-grid-section-wrapper[style*="#937536"] .edgtf-restaurant-menu-list .edgtf-rml-title *{color:var(--ss-encre)!important}
body .edgtf-row-grid-section-wrapper[style*="#937536"] .edgtf-restaurant-menu-list .edgtf-rml-description-holder,
body .edgtf-row-grid-section-wrapper[style*="#937536"] .edgtf-restaurant-menu-list .edgtf-rml-description-holder *{color:var(--ss-texte)!important}
body .edgtf-row-grid-section-wrapper[style*="#937536"] .edgtf-restaurant-menu-list .edgtf-rml-price{color:var(--ss-or-fonce)!important}
body .edgtf-row-grid-section-wrapper[style*="#937536"] .edgtf-restaurant-menu-list .edgtf-rml-line{border-color:rgba(179,149,86,.5)!important}

/* =====================================================================
   CORRECTIFS MOBILE (tout le site, ecrans de 768 px et moins)
   ===================================================================== */
@media (max-width:768px){
	/* Colonnes : marges laterales du theme (jusqu'a 5em) trop larges sur telephone */
	body .edgtf-content .vc_column-inner{padding-left:15px!important;padding-right:15px!important}

	/* Titres manuscrits (Mr De Haviland, 45 a 60 px) : trop grands, coupaient les mots */
	body .edgtf-content [style*="Haviland"]{font-size:34px!important;line-height:1.25!important}
	/* Grands titres de section */
	body .edgtf-content h2.vc_custom_heading{font-size:26px!important;line-height:1.3!important;letter-spacing:2px!important}

	/* Listes de prix : le titre ne passait pas a la ligne et poussait le prix hors de l'ecran */
	body .edgtf-restaurant-menu-list .edgtf-rml-top-holder{display:flex!important;align-items:flex-start;gap:12px}
	body .edgtf-restaurant-menu-list .edgtf-rml-title-holder{display:block!important;flex:1 1 auto;min-width:0;width:auto!important}
	body .edgtf-restaurant-menu-list .edgtf-rml-title{white-space:normal!important;line-height:1.45!important;letter-spacing:1px!important;font-size:13px!important}
	body .edgtf-restaurant-menu-list .edgtf-rml-line{display:none!important}
	body .edgtf-restaurant-menu-list .edgtf-rml-price-holder{display:block!important;flex:0 0 auto;width:auto!important;padding-left:0!important;white-space:nowrap}
	body .edgtf-restaurant-menu-list .edgtf-rml-price{font-size:14px!important}
	/* ... et les descriptions, masquees par le theme sur telephone, sont reaffichees */
	body .edgtf-restaurant-menu-list .edgtf-rml-description-holder{display:block!important;float:none!important;margin-top:4px;font-size:13.5px!important}

	/* Accueil : encart "Evadez-vous / Spa privatif" decale de 150 px vers la droite (hors ecran) */
	body.home .edgtf-elements-holder.encart-link.right{left:0!important;width:100%!important;margin:0!important;position:relative;padding:22px 0!important}
	/* Accueil : photo du jacuzzi haute de 610 px */
	body.home .vc_custom_1627381584576 .vc_empty_space{height:300px!important}
	/* Accueil : bloc horaires centre */
	body.home .vc_custom_1627329371704 .vc_col-sm-4 .wpb_wrapper{text-align:center}

	/* Carte Google (contact) : 555 px -> 340 px */
	body .edgtf-google-map-holder,body .edgtf-google-map{height:340px!important}

	/* Carrousels d images WPBakery (ex. Appart hotel) : largeur fixe de 530 px, coupes a droite */
	body .wpb_images_carousel .vc_images_carousel{width:100%!important;max-width:100%!important}
	body .wpb_images_carousel .vc_images_carousel img{width:100%!important;height:auto}

	/* Titres du theme (titre de page, titres de section) : trop grands, mots coupes ("RETROUVEZ-/NOUS") */
	body .edgtf-title .edgtf-page-title{font-size:24px!important;letter-spacing:4px!important;line-height:1.3!important}
	body .edgtf-content .edgtf-st-title{font-size:24px!important;letter-spacing:3px!important;line-height:1.3!important}

	/* Pied de page : grands vides entre les blocs */
	body .edgtf-page-footer .edgtf-separator-widget{display:none!important}
	body .edgtf-page-footer .edgtf-footer-top-holder .edgtf-column-content{margin-bottom:26px!important;padding-bottom:0!important}
	body .edgtf-page-footer .edgtf-footer-top-holder .edgtf-column-content:empty,
	body .edgtf-page-footer .edgtf-footer-top-holder .edgtf-column-content:has(> .widget:only-child:empty){display:none}
	body .edgtf-page-footer .edgtf-footer-top-holder{padding-top:50px!important;padding-bottom:30px!important}
}
/* Titres des colonnes du pied de page (ex. "CARTES CADEAUX") : presque invisibles sur le fond sombre */
body .edgtf-page-footer .widget .edgtf-widget-title,body .edgtf-page-footer .widget h4,body .edgtf-page-footer .widget h5,body .edgtf-page-footer .widget h6{color:var(--ss-or)!important}
@media (max-width:768px){
	/* Fiche produit : titre trop grand (4 lignes en majuscules) */
	body.single-product .edgtf-single-product-title,
	body.single-product .product_title{font-size:22px!important;letter-spacing:2px!important;line-height:1.35!important}
	body.single-product .edgtf-single-product-summary .price{font-size:20px!important}
	/* Listes de produits : 2 colonnes au lieu d'une (moins de defilement) */
	body ul.products{display:grid!important;grid-template-columns:1fr 1fr;gap:22px 14px;margin:0!important}
	body ul.products::before,body ul.products::after{display:none!important}
	body ul.products li.product{width:auto!important;float:none!important;margin:0!important;padding:0 0 14px!important}
	body ul.products li.product .edgtf-product-list-title,
	body ul.products li.product .woocommerce-loop-product__title{font-size:11.5px!important;letter-spacing:1px!important;line-height:1.45!important;padding:0 6px!important}
	body ul.products li.product .price{font-size:13px!important}
	body ul.products li.product .edgtf-pl-text-wrapper{margin-top:12px!important}
}

/* =====================================================================
   Fonds des sections "en grille" (contenu 1100 px dans un bandeau pleine largeur) :
   la couleur est portee par le bandeau, sinon deux teintes apparaissent sur grand ecran
   ===================================================================== */
body .edgtf-row-grid-section-wrapper[style*="#212121"]{background-color:var(--ss-encre)!important}
body .edgtf-row-grid-section-wrapper[style*="#f8f8f8"],
body .edgtf-row-grid-section-wrapper[style*="#F8F8F8"]{background-color:var(--ss-creme)!important}
body .edgtf-row-grid-section-wrapper > .edgtf-row-grid-section > .vc_row{background-color:transparent!important}
/* Accueil : photo du bloc Tarifs repetee sous l'image (image plus petite que le bloc) -> couvre tout le bandeau */
body.home .vc_custom_1627328437894{background-size:cover!important;background-repeat:no-repeat!important;background-position:left center!important}

/* =====================================================================
   MENU
   ===================================================================== */
/* En-tete fixe opaque (l'ancien menu se voyait en transparence derriere) */
body .edgtf-sticky-header .edgtf-sticky-holder{background-color:#fff!important}
/* Bouton "Reserver" : texte centre verticalement */
body .edgtf-main-menu > ul > li.setspa-cta > a{display:inline-flex!important;align-items:center;justify-content:center;padding:0 26px!important;height:44px!important;line-height:44px!important}
body .edgtf-main-menu > ul > li.setspa-cta > a .item_outer,
body .edgtf-main-menu > ul > li.setspa-cta > a .item_text{display:block;line-height:1!important;padding:0!important;margin:0!important;position:static!important;transform:none!important;top:auto!important}
/* Lien survole : fin trait dore sous le texte */
body .edgtf-main-menu > ul > li:not(.setspa-cta) > a .item_text{position:relative}
body .edgtf-main-menu > ul > li:not(.setspa-cta) > a .item_text::after{content:"";position:absolute;left:0;right:0;bottom:-6px;height:1px;background:var(--ss-or);transform:scaleX(0);transition:transform .3s}
body .edgtf-main-menu > ul > li:not(.setspa-cta):hover > a .item_text::after,
body .edgtf-main-menu > ul > li.current-menu-item > a .item_text::after,
body .edgtf-main-menu > ul > li.current-menu-ancestor > a .item_text::after{transform:scaleX(1)}

/* Telephone : logo a gauche, menu burger a droite */
@media (max-width:1024px){
	body .edgtf-mobile-header .edgtf-mobile-header-holder > .edgtf-grid{width:100%!important;padding:0 18px!important;box-sizing:border-box}
	body .edgtf-mobile-header .edgtf-mobile-menu-opener{float:right!important;position:relative;z-index:3}
	body .edgtf-mobile-header .edgtf-mobile-menu-opener a{color:var(--ss-encre)}
	body .edgtf-mobile-header .edgtf-mobile-menu-icon{font-size:28px!important}
	body .edgtf-mobile-header .edgtf-position-center{text-align:left!important}
	body .edgtf-mobile-header .edgtf-mobile-logo-wrapper a{height:46px!important}
	body .edgtf-mobile-header .edgtf-mobile-logo-wrapper img{height:46px!important;width:auto!important}
	body .edgtf-mobile-header .edgtf-position-center-inner{vertical-align:middle;margin-top:11px}
	body .edgtf-mobile-header{box-shadow:0 6px 20px -16px rgba(31,28,25,.5)}
	/* menu deroule */
	body .edgtf-mobile-nav{background:#fff;border-top:1px solid var(--ss-ligne)}
	body .edgtf-mobile-nav ul li a,body .edgtf-mobile-nav ul li h6{letter-spacing:2px;color:var(--ss-encre)!important;border-bottom:1px solid var(--ss-ligne)!important;padding:14px 0!important}
	body .edgtf-mobile-nav ul li.edgtf-active-item > a,body .edgtf-mobile-nav ul li a:hover{color:var(--ss-or-fonce)!important}
}

/* =====================================================================
   COULEURS HORS CHARTE / LISIBILITE
   ===================================================================== */
:root{--ss-or-texte:#8f7440}
/* Bouton turquoise (page Piscine externe) et lecteur video bleu -> dore */
body .vc_btn3.vc_btn3-color-turquoise,body .vc_btn3.vc_btn3-color-turquoise:focus{background-color:var(--ss-or)!important;border-color:var(--ss-or)!important;color:#fff!important;border-radius:0!important;letter-spacing:2px;text-transform:uppercase;font-size:13px}
body .vc_btn3.vc_btn3-color-turquoise:hover{background-color:var(--ss-or-fonce)!important;border-color:var(--ss-or-fonce)!important}
body .plyr{--plyr-color-main:#b39556}
body .plyr__control--overlaid{background:rgba(179,149,86,.9)!important}
/* Une seule teinte creme sur tout le site */
body .edgtf-title{background-color:var(--ss-creme)!important}
body .edgtf-row-grid-section-wrapper[style*="#faf4f2"],body .edgtf-row-grid-section-wrapper[style*="#FAF4F2"],
body .edgtf-row-grid-section-wrapper[style*="#f9f4f2"],body .edgtf-row-grid-section-wrapper[style*="#F9F4F2"]{background-color:var(--ss-creme)!important}
body .vc_row[style*="#faf4f2"],body .vc_row[style*="#f9f4f2"]{background-color:var(--ss-creme)!important}
/* Petits textes et prix dores sur fond clair : dore plus fonce, lisible */
body .edgtf-restaurant-menu-list .edgtf-rml-price-holder .edgtf-rml-price{color:var(--ss-or-texte)!important}
body .edgtf-row-grid-section-wrapper[style*="background-image"] .edgtf-restaurant-menu-list .edgtf-rml-price{color:var(--ss-or)!important}
body ul.products li.product .price,body ul.products li.product .price *{color:var(--ss-or-texte)!important}
body .edgtf-content p[style*="d3b679"]:not(.edgtf-row-grid-section-wrapper[style*="background-image"] p):not(.vc_custom_1627329371704 p){color:var(--ss-or-texte)!important}
/* les traits decoratifs du theme (::before/::after du lien) decalaient le texte du bouton vers le haut */
body .edgtf-main-menu > ul > li.setspa-cta > a::before,body .edgtf-main-menu > ul > li.setspa-cta > a::after{display:none!important;content:none!important}

/* =====================================================================
   PAGE "RESERVATION EN LIGNE" (page 698) : etapes + une carte par espace
   ===================================================================== */
body.page-id-698 .edgtf-content{background:var(--ss-creme)}
body.page-id-698 .edgtf-content .vc_custom_1627331483213{padding-top:50px!important;padding-bottom:90px!important}
/* bandeau des 3 etapes */
body.page-id-698 .setspa-etapes{display:grid;grid-template-columns:repeat(3,1fr);gap:0;max-width:1100px;margin:0 auto 46px;background:#fff;border:1px solid var(--ss-ligne)}
body.page-id-698 .setspa-etapes > div{padding:22px 24px;display:grid;grid-template-columns:auto 1fr;column-gap:14px;align-items:center;text-align:left;border-right:1px solid var(--ss-ligne)}
body.page-id-698 .setspa-etapes > div:last-child{border-right:0}
body.page-id-698 .setspa-etapes span{grid-row:span 2;width:40px;height:40px;border-radius:50%;border:1px solid var(--ss-or);color:var(--ss-or-fonce);display:flex;align-items:center;justify-content:center;font:500 17px/1 Raleway,sans-serif}
body.page-id-698 .setspa-etapes strong{font:600 13px/1.3 Raleway,sans-serif;letter-spacing:1.5px;text-transform:uppercase;color:var(--ss-encre)}
body.page-id-698 .setspa-etapes em{font-style:normal;font-size:14px;color:var(--ss-texte)}
/* cartes */
body.page-id-698 .vc_row.vc_inner{display:flex;flex-wrap:wrap;margin-bottom:0}
body.page-id-698 .vc_row.vc_inner > .vc_col-sm-6{display:flex;margin-bottom:30px}
body.page-id-698 .vc_row.vc_inner > .vc_col-sm-6 > .vc_column-inner{flex:1;background:#fff;border:1px solid var(--ss-ligne);padding:34px 30px 30px!important;margin:0 12px;box-shadow:0 22px 46px -34px rgba(31,28,25,.45);transition:transform .35s,box-shadow .35s}
body.page-id-698 .vc_row.vc_inner > .vc_col-sm-6 > .vc_column-inner:hover{transform:translateY(-4px);box-shadow:0 30px 60px -34px rgba(31,28,25,.55)}
body.page-id-698 .vc_row.vc_inner > .vc_col-sm-6 > .vc_column-inner > .wpb_wrapper{display:flex;flex-direction:column;height:100%}
body.page-id-698 .vc_row.vc_inner .vc_separator{display:none!important}
body.page-id-698 .vc_row.vc_inner .vc_empty_space{height:18px!important}
body.page-id-698 .vc_row.vc_inner .vc_empty_space:last-child{display:none}
body.page-id-698 .vc_row.vc_inner .edgtf-custom-font-holder,body.page-id-698 .vc_row.vc_inner .edgtf-custom-font-holder *{font-family:"Mr De Haviland",cursive!important;font-size:38px!important;line-height:1.1!important;color:var(--ss-or)!important;margin-bottom:4px}
body.page-id-698 .vc_row.vc_inner h4{font-size:22px;letter-spacing:4px;text-transform:uppercase;font-weight:400;color:var(--ss-encre);margin:0 0 10px}
body.page-id-698 .vc_row.vc_inner .wpb_text_column p{font-size:15px;color:var(--ss-texte);margin:0}
/* prix et capacite (lus dans la grille de reservation) */
body.page-id-698 .setspa-espace-infos{display:inline-block;margin:0 0 14px!important;padding:8px 16px;background:var(--ss-creme);border:1px solid var(--ss-ligne);font-size:14px!important;letter-spacing:.5px;color:var(--ss-texte)!important}
body.page-id-698 .setspa-espace-infos b{color:var(--ss-or-texte);font-weight:600;font-size:16px}
body.page-id-698 .setspa-espace-infos i{font-style:normal;color:var(--ss-or);margin:0 4px}
/* medias de meme format */
body.page-id-698 .vc_row.vc_inner .plyr,body.page-id-698 .vc_row.vc_inner video,
body.page-id-698 .vc_row.vc_inner .vc_images_carousel .vc_item img{aspect-ratio:16/10;object-fit:cover;width:100%!important;height:auto}
body.page-id-698 .vc_row.vc_inner .wpb_images_carousel .vc_images_carousel{width:100%!important;max-width:100%!important}
body.page-id-698 .vc_row.vc_inner .vc_carousel-indicators{bottom:10px}
/* bouton pleine largeur, pousse en bas de la carte */
body.page-id-698 .vc_row.vc_inner .edgtf-btn{display:block;width:100%;text-align:center;margin-top:auto}
@media (max-width:1024px){
	body.page-id-698 .setspa-etapes{grid-template-columns:1fr;margin:0 15px 30px}
	body.page-id-698 .setspa-etapes > div{border-right:0;border-bottom:1px solid var(--ss-ligne);padding:16px 18px}
	body.page-id-698 .setspa-etapes > div:last-child{border-bottom:0}
	body.page-id-698 .vc_row.vc_inner > .vc_col-sm-6{width:100%}
	body.page-id-698 .vc_row.vc_inner > .vc_col-sm-6 > .vc_column-inner{margin:0 15px;padding:26px 18px 22px!important}
	body.page-id-698 .vc_row.vc_inner h4{font-size:19px;letter-spacing:3px}
}

/* =====================================================================
   BANDEAUX DE TITRE DES PAGES (plus hauts, titre centre, voile, filet dore)
   ===================================================================== */
body .edgtf-title-holder{height:auto!important;min-height:340px;position:relative;display:flex;align-items:center;justify-content:center;background-color:var(--ss-creme)!important;background-size:cover!important;background-position:center 40%!important;overflow:hidden}
body .edgtf-title-holder .edgtf-title-wrapper{height:auto!important;width:100%;position:relative;z-index:2}
body .edgtf-title-holder .edgtf-title-inner{height:auto!important;display:block!important;padding:70px 0 64px}
body .edgtf-title-holder .edgtf-title-inner .edgtf-grid{text-align:center!important;display:flex;flex-direction:column;align-items:center}
/* voile sur la photo */
body .edgtf-title-holder.edgtf-has-bg-image::before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(31,28,25,.55) 0%,rgba(31,28,25,.45) 50%,rgba(31,28,25,.7) 100%)}
/* "Set Spa" manuscrit au-dessus du titre */
body .edgtf-title-holder .edgtf-title-inner .edgtf-grid::before{content:"Set Spa";font-family:"Mr De Haviland",cursive;font-size:40px;line-height:1;color:var(--ss-or);margin-bottom:8px}
/* titre */
body .edgtf-title-holder .edgtf-page-title{font-family:Raleway,sans-serif!important;font-size:44px!important;font-weight:300!important;letter-spacing:9px!important;line-height:1.2!important;text-transform:uppercase;margin:0!important;color:#fff!important;text-shadow:0 2px 24px rgba(0,0,0,.25)}
body .edgtf-title-holder .edgtf-page-title::after{content:"";display:block;width:64px;height:1px;background:var(--ss-or);margin:22px auto 0}
/* sans photo : fond creme, titre sombre */
body .edgtf-title-holder:not(.edgtf-has-bg-image){min-height:260px;border-bottom:1px solid var(--ss-ligne)}
body .edgtf-title-holder:not(.edgtf-has-bg-image) .edgtf-page-title{color:var(--ss-encre)!important;text-shadow:none}
body .edgtf-title-holder:not(.edgtf-has-bg-image) .edgtf-title-inner{padding:56px 0 50px}
/* fil d'Ariane / sous-titre du theme eventuels */
body .edgtf-title-holder .edgtf-page-subtitle,body .edgtf-title-holder .edgtf-breadcrumbs{color:rgba(255,255,255,.85)!important;margin-top:14px;letter-spacing:2px;font-size:13px}
@media (max-width:1024px){
	body .edgtf-title-holder{min-height:240px}
	body .edgtf-title-holder .edgtf-title-inner{padding:48px 0 44px}
	body .edgtf-title-holder .edgtf-title-inner .edgtf-grid::before{font-size:32px}
	body .edgtf-title-holder .edgtf-page-title{font-size:26px!important;letter-spacing:5px!important}
	body .edgtf-title-holder .edgtf-page-title::after{margin-top:16px;width:48px}
	body .edgtf-title-holder:not(.edgtf-has-bg-image){min-height:190px}
}

/* Panier sur telephone : tableau empile (colonnes trop etroites, en-tetes qui se chevauchaient) */
@media (max-width:768px){
	body.woocommerce-cart table.shop_table_responsive thead{display:none}
	body.woocommerce-cart table.shop_table_responsive,body.woocommerce-cart table.shop_table_responsive tbody{display:block;width:100%}
	body.woocommerce-cart table.shop_table_responsive tr.cart_item{display:block;position:relative;padding:18px 0 12px;border-bottom:1px solid var(--ss-ligne)}
	body.woocommerce-cart table.shop_table_responsive tr.cart_item td{display:flex!important;justify-content:space-between;align-items:baseline;gap:12px;width:100%!important;padding:6px 0!important;border:0!important;text-align:right!important}
	body.woocommerce-cart table.shop_table_responsive tr.cart_item td::before{content:attr(data-title);font:600 11px/1.4 Raleway,sans-serif;letter-spacing:1.5px;text-transform:uppercase;color:var(--ss-doux,#77716a);text-align:left;flex:0 0 auto}
	body.woocommerce-cart table.shop_table_responsive tr.cart_item td.product-remove{position:absolute;top:10px;right:0;width:auto!important;padding:0!important}
	body.woocommerce-cart table.shop_table_responsive tr.cart_item td.product-remove::before,
	body.woocommerce-cart table.shop_table_responsive tr.cart_item td.product-thumbnail::before{display:none}
	body.woocommerce-cart table.shop_table_responsive tr.cart_item td.product-thumbnail{justify-content:flex-start}
	body.woocommerce-cart table.shop_table_responsive tr.cart_item td.product-name{display:block!important;text-align:left!important;padding-right:30px!important}
	body.woocommerce-cart table.shop_table_responsive tr.cart_item td.product-name::before{display:block;margin-bottom:4px}
	body.woocommerce-cart table.shop_table_responsive tr.cart_item td.product-name a{font-size:15px;letter-spacing:1px;color:var(--ss-encre)}
	body.woocommerce-cart table.shop_table_responsive tr:not(.cart_item){display:block}
	body.woocommerce-cart table.shop_table_responsive tr:not(.cart_item) td{display:block;width:100%!important;padding:16px 0!important}
}
@media (max-width:768px){
	body.woocommerce-cart table.shop_table_responsive td.actions .coupon{display:flex;flex-direction:column;gap:10px;float:none!important;width:100%}
	body.woocommerce-cart table.shop_table_responsive td.actions .coupon input.input-text{width:100%!important;margin:0!important}
	body.woocommerce-cart table.shop_table_responsive td.actions .button,
	body.woocommerce-cart table.shop_table_responsive td.actions .edgtf-btn{display:block!important;width:100%!important;margin:10px 0 0!important;float:none!important}
}
/* Bandeaux de titre sur telephone : plus compacts */
@media (max-width:1024px){
	body .edgtf-title-holder{min-height:150px!important}
	body .edgtf-title-holder .edgtf-title-inner,
	body .edgtf-title-holder:not(.edgtf-has-bg-image) .edgtf-title-inner{padding:26px 0 24px!important}
	body .edgtf-title-holder .edgtf-title-inner .edgtf-grid::before{font-size:26px;margin-bottom:4px}
	body .edgtf-title-holder .edgtf-page-title{font-size:22px!important;letter-spacing:4px!important}
	body .edgtf-title-holder .edgtf-page-title::after{margin-top:12px;width:40px}
	body .edgtf-title-holder:not(.edgtf-has-bg-image){min-height:120px!important}
}
/* Reservation en ligne : prix/capacite sans coupure au milieu d'un groupe de mots */
body.page-id-698 .setspa-espace-infos span{white-space:nowrap}
body.page-id-698 .setspa-espace-infos{line-height:1.9;max-width:100%}
/* Diaporamas Appart'hotel : une photo a la fois, pleine largeur (le calcul du theme laissait voir la photo voisine) */
body.page-id-698 .vc_images_carousel .vc_carousel-inner{overflow:hidden}
body.page-id-698 .vc_images_carousel .vc_carousel-slideline,
body.page-id-698 .vc_images_carousel .vc_carousel-slideline-inner{width:100%!important;left:0!important;transform:none!important;height:auto!important}
body.page-id-698 .vc_images_carousel .vc_item{display:none!important;width:100%!important;float:none!important}
body.page-id-698 .vc_images_carousel .vc_item.vc_active{display:block!important;animation:setspaFondu .6s ease}
body.page-id-698 .vc_images_carousel .vc_item img{width:100%!important;aspect-ratio:16/10;object-fit:cover}
@keyframes setspaFondu{from{opacity:.25}to{opacity:1}}

/* =====================================================================
   AGENDA DE RESERVATION (Booked) : affichage uniquement, Booked n'est pas modifie
   ===================================================================== */
/* jours de la semaine ecrits en blanc sur blanc (invisibles) */
body .booked-calendar-wrap table.booked-calendar tr.days th{color:var(--ss-texte)!important;background:var(--ss-creme)!important;font-weight:600;letter-spacing:1px;text-transform:uppercase;font-size:11px!important;border-color:var(--ss-ligne)!important}
/* prix dans la fenetre de reservation : plus visible */
body .booked-modal .price_selected{display:block;font-size:20px!important;font-weight:600;color:var(--ss-or-texte)!important;margin:6px 0 4px;text-align:right}
body .booked-modal .price_selected del{font-size:14px;color:#999;font-weight:400;margin-right:6px}
@media (max-width:768px){
	body .booked-calendar-wrap table.booked-calendar td{height:44px}
	body .booked-modal .bm-window{max-width:100%!important}
}
/* Reservation en ligne : grand vide entre les 3 etapes et la premiere carte (3 marges cumulees) */
body.page-id-698 .edgtf-content .vc_custom_1627331483213{padding-top:0!important}
body.page-id-698 .vc_custom_1627331483213 > .wpb_column > .vc_column-inner > .wpb_wrapper > .vc_empty_space:first-child{display:none!important}
body.page-id-698 .setspa-etapes{margin-bottom:36px!important}
@media (max-width:1024px){body.page-id-698 .setspa-etapes{margin-bottom:22px!important}}

/* Cartes produits : bouton "Choisir les options" compact, sur une ligne, centre sur la photo */
body ul.products li.product .edgtf-pl-text-inner{display:flex!important;align-items:center;justify-content:center;flex-direction:column}
body ul.products li.product .edgtf-pl-text .button,
body ul.products li.product .edgtf-pl-text .added_to_cart{display:inline-block!important;width:auto!important;max-width:92%;white-space:nowrap;padding:11px 20px!important;font-size:11px!important;line-height:1.2!important;letter-spacing:2px!important;margin:0 auto!important;box-shadow:none!important;transform:none!important;left:auto!important}
body ul.products li.product .edgtf-pl-text .button::before,
body ul.products li.product .edgtf-pl-text .button::after,
body ul.products li.product .edgtf-pl-text .edgtf-detached-effect{display:none!important}
/* texte "Ce produit a plusieurs variations..." (lecteurs d'ecran) jamais visible */
body ul.products li.product .screen-reader-text,
body ul.products li.product [id^="woocommerce_loop_add_to_cart_link_describedby"]{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
@media (max-width:768px){
	body ul.products li.product .edgtf-pl-text .button{padding:9px 12px!important;font-size:10px!important;letter-spacing:1.2px!important}
}
@media (max-width:768px){
	body ul.products li.product .edgtf-pl-text .button{white-space:normal!important;text-align:center!important;width:84%!important;max-width:84%!important;padding:8px 6px!important;font-size:10px!important;letter-spacing:1px!important;line-height:1.35!important}
}

/* Menu burger : pleine hauteur entre l'en-tete et la barre "Reserver | Carte cadeau" */
@media (max-width:1024px){
	html.setspa-menu-ouvert,html.setspa-menu-ouvert body{overflow:hidden!important}
	html.setspa-menu-ouvert .edgtf-mobile-header .edgtf-mobile-nav{
		position:fixed!important;left:0;right:0;top:var(--setspa-nav-top,70px);bottom:auto!important;
		height:var(--setspa-nav-height,70vh)!important;max-height:none!important;overflow-y:auto!important;-webkit-overflow-scrolling:touch;
		z-index:9998;background:#fff;border-top:1px solid var(--ss-ligne);box-shadow:0 20px 40px -30px rgba(31,28,25,.5)
	}
	html.setspa-menu-ouvert .edgtf-mobile-header .edgtf-mobile-nav > .edgtf-grid{padding:14px 0 24px}
	html.setspa-menu-ouvert .edgtf-mobile-header .edgtf-mobile-nav > .edgtf-grid > ul > li > a,
	html.setspa-menu-ouvert .edgtf-mobile-header .edgtf-mobile-nav > .edgtf-grid > ul > li > h6{font-size:15px!important;letter-spacing:3px!important;text-transform:uppercase;padding:18px 0!important}
	/* la barre du bas passe au-dessus du menu */
	.setspa-barre-mobile{z-index:9999}
}
/* Entrees de menu sans lien ("Nos espaces", "Tarifs") : pas de curseur main */
body .edgtf-main-menu > ul > li > a[href="#"]{cursor:default}

/* =====================================================================
   FICHE PRODUIT
   ===================================================================== */
body.single-product .edgtf-content{background:var(--ss-creme)}
body.single-product .edgtf-single-product-content{display:grid!important;grid-template-columns:1.1fr 1fr;gap:56px;align-items:start;padding-top:60px}
body.single-product .edgtf-single-product-content::before,body.single-product .edgtf-single-product-content::after{display:none!important}
body.single-product .edgtf-single-product-content > .woocommerce-product-gallery{width:auto!important;float:none!important;margin:0!important;position:sticky;top:110px}
body.single-product .edgtf-single-product-content > .woocommerce-product-gallery img{box-shadow:0 30px 60px -36px rgba(31,28,25,.55)}
body.single-product .edgtf-single-product-content > .edgtf-single-product-summary{width:auto!important;float:none!important;margin:0!important;padding:0!important}
body.single-product .edgtf-single-product-summary .summary{background:#fff;border:1px solid var(--ss-ligne);padding:42px 40px 34px;box-shadow:0 26px 50px -40px rgba(31,28,25,.45)}
/* titre, prix, description */
body.single-product .edgtf-single-product-title{font-family:Raleway,sans-serif!important;font-size:28px!important;font-weight:300!important;letter-spacing:4px!important;line-height:1.35!important;text-transform:uppercase;color:var(--ss-encre)!important;margin:0 0 14px!important}
body.single-product .summary > p.price{font-size:24px!important;color:var(--ss-or-texte)!important;font-weight:500;margin:0 0 18px!important;letter-spacing:.5px}
body.single-product .summary > p.price *{color:inherit!important}
body.single-product .woocommerce-product-details__short-description{padding:0 0 22px;margin:0 0 24px;border-bottom:1px solid var(--ss-ligne)}
body.single-product .woocommerce-product-details__short-description p{font-size:16px!important;color:var(--ss-texte)!important;margin:0}
/* choix des options */
body.single-product table.variations,body.single-product table.variations tbody{display:block!important;width:100%!important;margin:0 0 6px!important}
body.single-product table.variations tr{display:block}
body.single-product table.variations th.label,body.single-product table.variations td.value{display:block;width:100%!important;padding:0!important;text-align:left}
body.single-product table.variations th.label label,
body.single-product .wc-pao-addon-name,
body.single-product .voucher-fields label{font:600 12px/1.4 Raleway,sans-serif!important;letter-spacing:2.5px!important;text-transform:uppercase!important;color:var(--ss-encre)!important;margin:0 0 10px!important;display:block}
body.single-product table.variations .select2-container{width:100%!important}
body.single-product table.variations .select2-selection{height:50px!important;border:1px solid var(--ss-ligne)!important;border-radius:0!important;display:flex!important;align-items:center}
body.single-product table.variations .select2-selection__rendered{font-size:15px;color:var(--ss-encre)!important;padding-left:16px!important}
body.single-product a.reset_variations{display:inline-block!important;position:static!important;float:none!important;font-size:12px;letter-spacing:1px;color:#77716a;margin:8px 0 0!important}
body.single-product .woocommerce-variation-price .price{font-size:26px!important;color:var(--ss-or-texte)!important;font-weight:500;display:block;margin:10px 0 18px}
body.single-product .woocommerce-variation-price .price *{color:inherit!important}
/* option d'envoi (carte cadeau) */
body.single-product .wc-pao-addon-container{margin:18px 0 0!important;padding-top:22px;border-top:1px solid var(--ss-ligne)}
body.single-product .wc-pao-legend{margin:0!important;padding:0!important}
body.single-product .wc-pao-addon-description p{font-size:14px!important;font-style:normal!important;color:var(--ss-texte)!important;margin:0 0 12px!important}
body.single-product .wc-pao-addon-wrap > div{display:flex!important;align-items:center;gap:12px;padding:13px 16px;border:1px solid var(--ss-ligne);background:var(--ss-creme);margin-bottom:8px}
body.single-product .wc-pao-addon-wrap > div label{margin:0!important;font-size:15px!important;color:var(--ss-encre)!important;cursor:pointer;text-transform:none!important;letter-spacing:0!important}
body.single-product .wc-pao-addon-wrap input[type=radio],body.single-product .wc-pao-addon-wrap input[type=checkbox]{accent-color:var(--ss-or-fonce);width:18px;height:18px;margin:0!important}
/* message du bon cadeau */
body.single-product .voucher-fields{margin:20px 0 6px}
body.single-product .voucher-fields .form-row{display:block!important;width:100%!important;margin:0!important}
body.single-product .voucher-fields .woocommerce-input-wrapper{display:block;width:100%!important}
body.single-product .voucher-fields textarea,body.single-product .voucher-fields input[type=text]{width:100%!important;border:1px solid var(--ss-ligne)!important;padding:12px 14px!important;font-size:15px;min-height:90px;background:#fff}
/* quantite + bouton */
body.single-product form.cart .variations_button,
body.single-product form.cart:not(.variations_form){display:flex!important;flex-wrap:wrap;align-items:stretch;gap:12px;margin-top:22px!important}
body.single-product form.cart .variations_button > div:not(.quantity),
body.single-product form.cart:not(.variations_form) > div:not(.quantity){flex:1 1 100%}
body.single-product form.cart .quantity{margin:0!important;height:54px;display:flex!important;align-items:center;border:1px solid var(--ss-ligne);background:#fff;padding:0 6px}
body.single-product form.cart .quantity input.qty{height:52px!important;border:0!important;width:44px!important;font-size:16px}
body.single-product form.cart .single_add_to_cart_button{flex:1 1 auto;height:54px;font-size:13px!important;letter-spacing:3px!important;background:var(--ss-or)!important;border-color:var(--ss-or)!important;color:#fff!important;transition:background .25s}
body.single-product form.cart .single_add_to_cart_button:hover{background:var(--ss-or-fonce)!important;border-color:var(--ss-or-fonce)!important}
body.single-product form.cart .single_add_to_cart_button.disabled{opacity:.55}
/* infos rassurantes */
body.single-product .setspa-rassurance{list-style:none;margin:22px 0 0!important;padding:18px 0 0!important;border-top:1px solid var(--ss-ligne)}
body.single-product .setspa-rassurance li{position:relative;padding:5px 0 5px 26px!important;font-size:14px!important;color:var(--ss-texte)!important}
body.single-product .setspa-rassurance li::before{content:"";position:absolute;left:2px;top:12px;width:12px;height:6px;border-left:2px solid var(--ss-or);border-bottom:2px solid var(--ss-or);transform:rotate(-45deg)}
body.single-product .setspa-rassurance a{color:var(--ss-encre);text-decoration:none;border-bottom:1px solid var(--ss-or)}
/* reference et categories */
body.single-product .product_meta{margin-top:20px;font-size:13px;color:#77716a}
body.single-product .product_meta .sku_wrapper{display:none!important}
body.single-product .product_meta > span{display:block;letter-spacing:.5px}
body.single-product .product_meta a{color:var(--ss-or-texte)}
body.single-product .product_meta > h5{display:none}
/* onglets */
body.single-product .woocommerce-tabs{margin:70px auto 0;max-width:860px;background:#fff;border:1px solid var(--ss-ligne);padding:0 40px 34px}
body.single-product .woocommerce-tabs ul.tabs{display:flex!important;justify-content:center;gap:34px;border-bottom:1px solid var(--ss-ligne)!important;margin:0 0 26px!important;padding:0!important}
body.single-product .woocommerce-tabs ul.tabs li{border:0!important;margin:0!important;background:none!important;width:auto!important}
body.single-product .woocommerce-tabs ul.tabs li a{font:600 12px/1 Raleway,sans-serif!important;letter-spacing:2.5px!important;text-transform:uppercase;color:#77716a!important;padding:22px 0 18px!important;border-bottom:2px solid transparent;display:block}
body.single-product .woocommerce-tabs ul.tabs li.active a{color:var(--ss-encre)!important;border-bottom-color:var(--ss-or)}
body.single-product .woocommerce-tabs .panel{text-align:center}
body.single-product .woocommerce-tabs .panel p,body.single-product .woocommerce-tabs .panel td,body.single-product .woocommerce-tabs .panel th{font-size:16px!important;color:var(--ss-texte)!important}
body.single-product .woocommerce-tabs .shop_attributes{margin:0 auto;max-width:520px}
/* produits similaires */
body.single-product section.related{margin-top:80px;padding-bottom:40px}
body.single-product section.related > h2{text-align:center;font-family:Raleway,sans-serif!important;font-weight:300!important;font-size:26px!important;letter-spacing:6px!important;text-transform:uppercase;margin-bottom:34px!important}
body.single-product section.related > h2::after{content:"";display:block;width:56px;height:1px;background:var(--ss-or);margin:16px auto 0}
@media (max-width:1024px){
	body.single-product .edgtf-single-product-content{grid-template-columns:1fr;gap:26px;padding-top:24px}
	body.single-product .edgtf-single-product-content > .woocommerce-product-gallery{position:static}
	body.single-product .edgtf-single-product-summary .summary{padding:26px 20px 24px}
	body.single-product .edgtf-single-product-title{font-size:21px!important;letter-spacing:2.5px!important}
	body.single-product .woocommerce-tabs{margin-top:40px;padding:0 18px 24px}
	body.single-product .woocommerce-tabs ul.tabs{gap:18px}
	body.single-product .woocommerce-tabs ul.tabs li a{letter-spacing:1.5px!important;font-size:11px!important}
	body.single-product section.related{margin-top:50px}
	body.single-product section.related > h2{font-size:20px!important;letter-spacing:4px!important}
}

/* =====================================================================
   HIERARCHIE DU TEXTE (fiches et listes de produits) : fini le tout-majuscules
   1. nom du produit  2. prix  3. description  4. libelles des options  5. textes d'aide
   Les majuscules ne restent que sur les boutons.
   ===================================================================== */
/* 1. nom du produit */
body.single-product .edgtf-single-product-title{text-transform:none!important;font-size:32px!important;font-weight:400!important;letter-spacing:.3px!important;line-height:1.25!important;margin-bottom:12px!important}
/* 2. prix */
body.single-product .summary > p.price{font-size:26px!important;font-weight:600!important;letter-spacing:0!important}
body.single-product .summary > p.price .from,body.single-product .summary > p.price{font-weight:600}
body.single-product .woocommerce-variation-price .price{font-size:28px!important;font-weight:600!important}
/* 3. description */
body.single-product .woocommerce-product-details__short-description p{font-size:17px!important;line-height:1.65!important}
/* 4. libelles des options */
body.single-product table.variations th.label label,
body.single-product .wc-pao-addon-name,
body.single-product .voucher-fields label{text-transform:none!important;letter-spacing:0!important;font:600 15px/1.4 Raleway,sans-serif!important;color:var(--ss-encre)!important}
body.single-product .wc-pao-addon-name .required,body.single-product .voucher-fields label .optional{font-weight:400;color:#77716a}
/* 5. textes d'aide */
body.single-product .wc-pao-addon-description p{font-size:14px!important;color:#77716a!important}
body.single-product .setspa-rassurance li{font-size:14px!important}
/* bouton : seule zone en majuscules, plus sobre */
body.single-product form.cart .single_add_to_cart_button{letter-spacing:2px!important;font-size:13px!important}
/* "Effacer" sous la liste, plus a droite de la carte */
body.single-product table.variations td.value{display:flex!important;flex-direction:column;align-items:flex-start}
body.single-product table.variations td.value .select2-container{align-self:stretch}
/* titre "Info" au-dessus des categories : inutile */
body.single-product .product_meta > h5,body.single-product .summary h5{display:none!important}
body.single-product .product_meta > span{font-size:13px}
/* onglets */
body.single-product .woocommerce-tabs ul.tabs li a{text-transform:none!important;letter-spacing:.3px!important;font:500 15px/1 Raleway,sans-serif!important}
/* produits similaires */
body.single-product section.related > h2{text-transform:none!important;letter-spacing:.5px!important;font-weight:400!important;font-size:28px!important}
/* cartes produits (accueil, cartes cadeaux, formules, similaires) : nom lisible */
body ul.products li.product .edgtf-product-list-title,
body ul.products li.product .edgtf-product-list-title a,
body ul.products li.product .woocommerce-loop-product__title{text-transform:none!important;letter-spacing:.2px!important;font:500 15px/1.45 Raleway,sans-serif!important;color:var(--ss-encre)!important}
body ul.products li.product .price{font-size:14px!important;font-weight:600}
@media (max-width:1024px){
	body.single-product .edgtf-single-product-title{font-size:24px!important}
	body.single-product .summary > p.price{font-size:22px!important}
	body.single-product .woocommerce-tabs ul.tabs li a{font-size:14px!important}
	body.single-product section.related > h2{font-size:22px!important}
	body ul.products li.product .edgtf-product-list-title,
	body ul.products li.product .edgtf-product-list-title a,
	body ul.products li.product .woocommerce-loop-product__title{font-size:13.5px!important}
}
/* titre "Info" ajoute par le theme au-dessus des categories (pseudo-element) */
body.single-product .product_meta::before{display:none!important;content:none!important}
/* Fiche produit sur ordinateur : photo + description a gauche, carte d'achat a droite (plus de photo "flottante" ni de grand vide) */
@media (min-width:1025px){
	body.single-product div.product{display:grid!important;grid-template-columns:1.1fr 1fr;column-gap:56px;grid-template-areas:"galerie achat" "onglets achat" "similaires similaires";grid-template-rows:auto 1fr auto;align-items:start;padding-top:60px}
	body.single-product div.product > .edgtf-single-product-content{display:contents!important}
	body.single-product div.product .woocommerce-product-gallery{grid-area:galerie;position:static!important;top:auto!important}
	body.single-product div.product .edgtf-single-product-summary{grid-area:achat}
	body.single-product div.product > .woocommerce-tabs{grid-area:onglets;margin:36px 0 0!important;max-width:none!important;align-self:start}
	body.single-product div.product > section.related{grid-area:similaires}
}

/* Fiche produit (ordinateur) : carte d'achat plus compacte, memes informations */
@media (min-width:1025px){
	body.single-product .edgtf-single-product-summary .summary{padding:30px 32px 24px!important}
	body.single-product .edgtf-single-product-title{font-size:28px!important;margin-bottom:8px!important}
	body.single-product .summary > p.price{margin-bottom:12px!important}
	body.single-product .woocommerce-product-details__short-description{margin:0 0 16px!important;padding:0 0 14px!important}
	/* option "Duree" : libelle et liste sur une ligne */
	body.single-product table.variations tr{display:grid!important;grid-template-columns:90px 1fr;align-items:center;column-gap:12px}
	body.single-product table.variations th.label label{margin:0!important}
	body.single-product table.variations td.value{display:flex!important;flex-direction:row!important;align-items:center;gap:12px}
	body.single-product table.variations td.value .select2-container{flex:1 1 auto}
	body.single-product a.reset_variations{margin:0!important;white-space:nowrap}
	body.single-product table.variations .select2-selection{height:44px!important}
	body.single-product .single_variation{margin-bottom:6px!important}
	body.single-product .woocommerce-variation-price .price{margin:6px 0 4px!important}
	/* envoi de la carte cadeau */
	body.single-product .wc-pao-addon-container{margin-top:10px!important;padding-top:14px!important}
	body.single-product .wc-pao-addon-name{margin-bottom:4px!important}
	body.single-product .wc-pao-addon-description p{margin:0 0 8px!important;font-size:13.5px!important;line-height:1.5!important}
	body.single-product .wc-pao-addon-wrap{margin-top:0!important}
	body.single-product .wc-pao-addon-wrap > div{padding:9px 14px!important;margin-bottom:0!important}
	/* message */
	body.single-product .voucher-fields{margin:14px 0 0!important}
	body.single-product .voucher-fields label{margin-bottom:6px!important}
	body.single-product .voucher-fields textarea{min-height:62px!important;height:62px}
	/* quantite + bouton */
	body.single-product form.cart .variations_button,
	body.single-product form.cart:not(.variations_form){margin-top:14px!important;gap:10px!important}
	body.single-product form.cart .quantity,body.single-product form.cart .single_add_to_cart_button{height:50px!important}
	body.single-product form.cart .quantity input.qty{height:48px!important}
	/* infos rassurantes sur 2 lignes */
	body.single-product .setspa-rassurance{display:flex;flex-wrap:wrap;column-gap:18px;row-gap:2px;margin-top:14px!important;padding-top:12px!important}
	body.single-product .setspa-rassurance li{padding:2px 0 2px 20px!important;font-size:13px!important}
	body.single-product .setspa-rassurance li::before{top:8px;width:10px;height:5px}
	/* categories */
	body.single-product .product_meta{margin:12px 0 0!important}
}
