/* =========================================================================================
   Stay Zen — personnalisations visuelles (lot 01, PDF de la cliente du 23.10.2026)
   Chargé par wp-content/mu-plugins/stayzen-custom.php APRÈS les styles du thème.
   Ne modifie aucun fichier de GeneratePress, GP Premium ni GenerateBlocks.
   Les classes .sz-page-… sont posées par le mu-plugin (identiques pour une page et ses traductions).
   Retour arrière : supprimer stayzen-custom.php et stayzen-custom.css de wp-content/mu-plugins/.
   ========================================================================================= */

:root {
	/* Dégradé crème (PDF p. 1, 3, 4, 6, 7 : centre clair, bords dorés).
	   Le haut reste exactement à la couleur du site (#F7EFE3) pour se raccorder sans couture
	   à la vague de l'accueil et au bandeau des pages intérieures. */
	--sz-degrade-creme:
		linear-gradient(180deg, #F7EFE3 0, rgba(247, 239, 227, 0) 180px),
		radial-gradient(ellipse 130% 100% at 35% 30%, #F7EFE3 0%, #EFE3CF 45%, #E2C9A4 100%);
	/* Dégradé sable (PDF p. 5 « Harmonisation & Récupération ») */
	--sz-degrade-sable: radial-gradient(ellipse 120% 100% at 35% 30%, #CBAD85 0%, #C2A27A 50%, #B99870 100%);
	/* Texte sur fond sable : même brun foncé que le pied de page (contraste ≥ 4,5:1) */
	--sz-texte-sur-sable: #3f2e20;
}

/* ---- Fond de page dégradé : toutes les pages SAUF Contact ---------------------------------- */
body:not(.sz-page-contact) #page {
	background: var(--sz-degrade-creme);
}

/* ---- Accueil : titre du bandeau — lignes équilibrées (police, taille et animation inchangées) */
.sz-page-accueil .gb-text-f0138751 {
	text-wrap: balance;
}
/* Mobile : taille fluide (26 → 34 px) pour 3 lignes équilibrées au lieu de 4 */
@media (max-width: 767px) {
	.sz-page-accueil .gb-text-f0138751 {
		font-size: clamp(26px, 7.4vw, 34px);
	}
}

/* ---- Prestations ---------------------------------------------------------------------------- */
/* Bloc d'introduction : ses fonds crème unis laissent voir le dégradé */
.sz-page-prestations .gb-container-179463ba,
.sz-page-prestations .gb-container-72fe4f4d,
.sz-page-prestations .gb-container-56c8c80b {
	background: transparent;
}

/* Harmonisation & Récupération : dégradé sable (PDF p. 5), texte plus lisible */
.sz-page-prestations .gb-element-cf4d0a76 {
	background: var(--sz-degrade-sable);
}
.sz-page-prestations .gb-element-cf4d0a76 .gb-container {
	background: transparent;
}
.sz-page-prestations .gb-element-cf4d0a76 p {
	color: var(--sz-texte-sur-sable);
}

/* Soin Vibratoire (ancienne section « Soins visage ») : fond crème dégradé (PDF p. 6) */
.sz-page-prestations .gb-container-ff7ffc46,
.sz-page-prestations .gb-container-ff7ffc46 .gb-container {
	background: transparent;
}

/* Soins connexions : la carte « Combinés » restante est centrée (Prénatal et Jet Lag retirés) */
.sz-page-prestations .gb-container-e9f0a9ff {
	justify-content: center;
}

/* ---- Charte : ses conteneurs laissent voir le dégradé (PDF p. 7) ---------------------------- */
.sz-page-charte .entry-content .gb-container {
	background: transparent;
}

/* ---- Contact : fond UNI sable comme le PDF p. 8 (#BEA17B mesuré ≈ sable du site #BFA17B) ---- */
.sz-page-contact #page {
	background: var(--accent-2-hover, #bfa17b);
}

/* Rubriques + boutons (blocs WordPress standard, classes sz-contact*) */
.sz-contact {
	max-width: 1100px;
	margin: 0 auto;
	padding: 70px 20px 20px;
}
.sz-contact .sz-contact-rubriques {
	gap: 48px;
	margin-bottom: 44px;
}
/* Titres soulignés : même style que les titres du pied de page */
.sz-contact h4 {
	font-size: 18px;
	font-weight: 600;
	color: rgba(45, 32, 20, 0.98);
	margin: 0 0 14px;
	padding-bottom: 6px;
	border-bottom: 1px solid rgba(45, 32, 20, 0.35);
}
.sz-contact p {
	color: rgba(60, 45, 30, 0.92);
	font-size: 16px;
	line-height: 1.6;
	margin: 0;
}
.sz-contact p a {
	color: rgba(45, 32, 20, 0.95);
	font-weight: 500;
	text-decoration: none;
}
.sz-contact p a:hover,
.sz-contact p a:focus {
	text-decoration: underline;
}
/* Boutons : identiques au bouton brun « Prestations » de l'accueil */
.sz-contact .sz-contact-boutons {
	justify-content: center;
	gap: 14px;
}
/* Sélecteur renforcé : GeneratePress impose « a.wp-block-button__link:not(.has-background) » */
.sz-contact a.wp-block-button__link.wp-element-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 170px;
	padding: 10px 26px;
	border-radius: 50px;
	background-color: var(--global-color-12);
	color: var(--accent-hover);
	font-family: var(--gp-font--tt-interphases-pro-trl);
	font-size: 18px;
	font-weight: 600;
	line-height: 1.8;
	text-decoration: none;
	transition: color 0.1s ease-in-out, background-color 0.1s ease-in-out;
}
.sz-contact a.wp-block-button__link.wp-element-button:hover,
.sz-contact a.wp-block-button__link.wp-element-button:focus {
	background-color: #59412f;
	color: var(--base-3);
}

/* Tablette et mobile : rubriques empilées et centrées, boutons pleine largeur faciles à toucher */
@media (max-width: 781px) {
	.sz-contact {
		padding-top: 50px;
		text-align: center;
	}
	.sz-contact .sz-contact-rubriques {
		gap: 30px;
		margin-bottom: 36px;
	}
	.sz-contact .sz-contact-boutons {
		flex-direction: column;
		align-items: stretch;
		max-width: 320px;
		margin: 0 auto;
	}
	.sz-contact .wp-block-button,
	.sz-contact a.wp-block-button__link.wp-element-button {
		width: 100%;
	}
}

/* Lot 03 (retours cliente du 24.10.2026) : résumé des familles de soins avec icônes (maquette Canva),
   centré dans sa colonne pour ne pas laisser de vide à côté de la photo (Accueil et Prestations). */
div:has(> .sz-familles) {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
}
.sz-familles {
	width: 100%;
}
@media (max-width: 767px) {
	.sz-familles .sz-famille {
		gap: 16px !important;
	}
	.sz-familles .sz-famille-icone {
		flex-basis: 56px !important;
		width: 56px !important;
		height: 56px !important;
	}
}
