/*
Theme Name: EKO Énergies
Author: EKO Énergies
Description: Thème sur mesure « Black Steel » pour EKO Énergies : plomberie, sanitaire, chauffage, pompes à chaleur et énergies renouvelables. Thème « bloc » entièrement modifiable depuis l'éditeur de site.
Requires at least: 6.6
Requires PHP: 7.4
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: eko-energies
Tags: block-patterns, full-site-editing, custom-colors, editor-style, wide-blocks, dark
*/

/* ---------------------------------------------------------------
   Icônes (SVG en ligne, colorées via CSS mask)
--------------------------------------------------------------- */
:root {
	--eko-metal: linear-gradient(180deg, #ffffff 0%, #c9d1d9 55%, #8e99a5 100%);
	--eko-i-echo: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round'%3E%3Cpath d='M9 2.5a12 12 0 0 0 0 19'/%3E%3Cpath d='M14 5.5a8.5 8.5 0 0 0 0 13'/%3E%3Cpath d='M19 8.5a5 5 0 0 0 0 7'/%3E%3C/svg%3E");
	--eko-i-goutte: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3c-3 4-6.5 8-6.5 11.5a6.5 6.5 0 0 0 13 0C18.5 11 15 7 12 3z'/%3E%3Cpath d='M9 15a3 3 0 0 0 3 3'/%3E%3C/svg%3E");
	--eko-i-bain: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 11h18v3a5 5 0 0 1-5 5H8a5 5 0 0 1-5-5v-3z'/%3E%3Cpath d='M6 11V5.5A2.5 2.5 0 0 1 10.5 4'/%3E%3Cpath d='M7 19l-1 2M17 19l1 2'/%3E%3C/svg%3E");
	--eko-i-radiateur: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='5' width='18' height='13' rx='2'/%3E%3Cpath d='M7.5 8.5v6M12 8.5v6M16.5 8.5v6M6.5 18v2M17.5 18v2'/%3E%3C/svg%3E");
	--eko-i-pac: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='2.5' y='4.5' width='19' height='14' rx='2'/%3E%3Ccircle cx='10' cy='11.5' r='4'/%3E%3Cpath d='M10 9.5v4M8 11.5h4M17 8.5h2M17 11.5h2M17 14.5h2'/%3E%3C/svg%3E");
	--eko-i-feuille: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4.5 19.5C4.5 10 10 4.5 19.5 4.5 19.5 14 14 19.5 4.5 19.5z'/%3E%3Cpath d='M4.5 19.5L14 10'/%3E%3C/svg%3E");
	--eko-i-bouclier: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3l7.5 3v5.5c0 4.6-3.2 8.3-7.5 9.5-4.3-1.2-7.5-4.9-7.5-9.5V6L12 3z'/%3E%3Cpath d='M8.5 12l2.5 2.5 4.5-5'/%3E%3C/svg%3E");
	--eko-i-devis: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14 3H7a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V8z'/%3E%3Cpath d='M14 3v5h5M9 13h6M9 17h6'/%3E%3C/svg%3E");
	--eko-i-medaille: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='9' r='5.5'/%3E%3Cpath d='M9 13.8L7.5 21l4.5-2.5 4.5 2.5-1.5-7.2'/%3E%3C/svg%3E");
	--eko-i-eclair: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M13 2.5L4.5 13.5H12l-1 8 8.5-11H12l1-8z'/%3E%3C/svg%3E");
	--eko-i-maison: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3.5 11L12 4l8.5 7'/%3E%3Cpath d='M5.5 9.5V20h13V9.5'/%3E%3Cpath d='M10 20v-5.5h4V20'/%3E%3C/svg%3E");
	--eko-i-personne: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='8' r='4'/%3E%3Cpath d='M4 21c0-4 3.6-7 8-7s8 3 8 7'/%3E%3C/svg%3E");
	--eko-i-ampoule: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 18h6M10 21h4'/%3E%3Cpath d='M12 3a6 6 0 0 0-3.5 10.9c.6.5 1 1.2 1 2.1h5c0-.9.4-1.6 1-2.1A6 6 0 0 0 12 3z'/%3E%3C/svg%3E");
	--eko-i-outil: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14.7 6.3a1 1 0 0 0 0 1.4l1.6 1.6a1 1 0 0 0 1.4 0l3.8-3.8a6 6 0 0 1-7.9 7.9l-6.9 6.9a2.1 2.1 0 0 1-3-3l6.9-6.9a6 6 0 0 1 7.9-7.9l-3.8 3.8z'/%3E%3C/svg%3E");
	--eko-i-tel: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21.5 16.9v3a2 2 0 0 1-2.2 2 19.8 19.8 0 0 1-8.6-3.1 19.5 19.5 0 0 1-6-6A19.8 19.8 0 0 1 1.6 4.2 2 2 0 0 1 3.6 2h3a2 2 0 0 1 2 1.7c.1.9.4 1.8.7 2.7a2 2 0 0 1-.5 2.1L7.5 9.8a16 16 0 0 0 6 6l1.3-1.3a2 2 0 0 1 2.1-.4c.9.3 1.8.6 2.7.7a2 2 0 0 1 1.9 2.1z'/%3E%3C/svg%3E");
	--eko-i-mail: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='5' width='18' height='14' rx='2'/%3E%3Cpath d='M3 7l9 6 9-6'/%3E%3C/svg%3E");
	--eko-i-lieu: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 21s-7-6.2-7-11.5a7 7 0 0 1 14 0C19 14.8 12 21 12 21z'/%3E%3Ccircle cx='12' cy='9.5' r='2.5'/%3E%3C/svg%3E");
	--eko-i-horloge: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M12 7v5l3 2'/%3E%3C/svg%3E");
	--eko-i-check: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E");
}

.eko-icone--goutte { --eko-icone: var(--eko-i-goutte); }
.eko-icone--bain { --eko-icone: var(--eko-i-bain); }
.eko-icone--radiateur { --eko-icone: var(--eko-i-radiateur); }
.eko-icone--pac { --eko-icone: var(--eko-i-pac); }
.eko-icone--feuille { --eko-icone: var(--eko-i-feuille); }
.eko-icone--bouclier { --eko-icone: var(--eko-i-bouclier); }
.eko-icone--devis { --eko-icone: var(--eko-i-devis); }
.eko-icone--medaille { --eko-icone: var(--eko-i-medaille); }
.eko-icone--eclair { --eko-icone: var(--eko-i-eclair); }
.eko-icone--maison { --eko-icone: var(--eko-i-maison); }
.eko-icone--personne { --eko-icone: var(--eko-i-personne); }
.eko-icone--ampoule { --eko-icone: var(--eko-i-ampoule); }
.eko-icone--outil { --eko-icone: var(--eko-i-outil); }
.eko-coord--tel { --eko-icone: var(--eko-i-tel); }
.eko-coord--mail { --eko-icone: var(--eko-i-mail); }
.eko-coord--lieu { --eko-icone: var(--eko-i-lieu); }
.eko-coord--horloge { --eko-icone: var(--eko-i-horloge); }

/* Titre précédé d'une icône cerclée, comme sur la charte */
.eko-icone {
	position: relative;
}

.eko-icone::before {
	content: "";
	display: block;
	width: 3.6rem;
	height: 3.6rem;
	margin-bottom: 1.2rem;
	border: 1px solid rgba(214, 224, 234, 0.45);
	border-radius: 50%;
	background: radial-gradient(circle at 30% 25%, rgba(255, 255, 255, 0.08), transparent 70%);
}

.eko-icone::after {
	content: "";
	position: absolute;
	top: 1rem;
	left: 1rem;
	width: 1.6rem;
	height: 1.6rem;
	background: var(--eko-metal);
	-webkit-mask: var(--eko-icone) center / contain no-repeat;
	mask: var(--eko-icone) center / contain no-repeat;
}

.eko-icone.has-text-align-center::before {
	margin-right: auto;
	margin-left: auto;
}

.eko-icone.has-text-align-center::after {
	left: 50%;
	transform: translateX(-50%);
}

/* Coordonnées précédées d'une icône */
.eko-coord {
	position: relative;
	padding-left: 2.4rem;
}

.eko-coord::before {
	content: "";
	position: absolute;
	top: 0.15rem;
	left: 0;
	width: 1.4rem;
	height: 1.4rem;
	background: var(--wp--preset--color--bleu);
	-webkit-mask: var(--eko-icone) center / contain no-repeat;
	mask: var(--eko-icone) center / contain no-repeat;
}

/* ---------------------------------------------------------------
   Général
--------------------------------------------------------------- */
html {
	scroll-behavior: smooth;
}

[id] {
	scroll-margin-top: 6rem;
}

a {
	text-underline-offset: 0.2em;
	text-decoration-thickness: 1px;
}

:focus-visible {
	outline: 2px solid var(--wp--preset--color--bleu);
	outline-offset: 3px;
}

::selection {
	background: rgba(79, 176, 240, 0.35);
	color: #fff;
}

/* Titres à effet acier brossé */
.eko-metal {
	background: var(--eko-metal);
	-webkit-background-clip: text;
	background-clip: text;
	-webkit-text-fill-color: transparent;
}

/* Petit surtitre précédé d'un trait bleu acier */
.eko-surtitre {
	display: flex;
	align-items: center;
	gap: 0.9rem;
}

.eko-surtitre::before,
.eko-surtitre.has-text-align-center::after {
	content: "";
	flex: none;
	width: 2.5rem;
	height: 1px;
	background: currentColor;
	opacity: 0.8;
}

.eko-surtitre.has-text-align-center {
	justify-content: center;
}

/* Signature « L'écho d'une énergie durable » encadrée de deux traits */
.eko-signature {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 1.25rem;
}

.eko-signature::before,
.eko-signature::after {
	content: "";
	flex: 0 1 5rem;
	height: 1px;
	background: var(--wp--preset--color--bleu);
	opacity: 0.7;
}

/* Grilles de 4 éléments : 4 colonnes, puis 2, puis 1 (jamais 3 + 1 orphelin). */
.eko-grille-4.is-layout-grid {
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

@media (max-width: 900px) {
	.eko-grille-4.is-layout-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 560px) {
	.eko-grille-4.is-layout-grid {
		grid-template-columns: minmax(0, 1fr);
	}
}

/* Liste « Bâtir · Équiper · Rénover · Préserver » */
.eko-verbes p {
	margin: 0;
	padding: 0.95rem 0;
	border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}

.eko-verbes p:last-child {
	border-bottom: 0;
}

/* Texte vertical à droite du bandeau d'accueil */
.eko-colonne-filet {
	padding-left: 1.5rem;
	border-left: 1px solid rgba(79, 176, 240, 0.6);
}

/* ---------------------------------------------------------------
   En-tête
--------------------------------------------------------------- */
.wp-site-blocks > header.wp-block-template-part {
	position: sticky;
	top: 0;
	z-index: 100;
}

body.admin-bar .wp-site-blocks > header.wp-block-template-part {
	top: 32px;
}

@media (max-width: 782px) {
	body.admin-bar .wp-site-blocks > header.wp-block-template-part {
		top: 46px;
	}
}

@media (max-width: 600px) {
	body.admin-bar .wp-site-blocks > header.wp-block-template-part {
		top: 0;
	}
}

/* Pas de backdrop-filter ici : il enfermerait le menu mobile (position fixe) dans l'en-tête. */
.eko-entete {
	border-bottom: 1px solid rgba(255, 255, 255, 0.07);
}

/* Logo EKO Énergies (image du thème). Le nom du site reste dans le lien pour
   l'accessibilité et le référencement. Si un logo est défini dans WordPress
   (bloc Logo du site), c'est lui qui s'affiche à la place. */
.eko-marque:has(.wp-block-site-logo) .eko-logo {
	display: none;
}

.eko-logo a {
	display: block;
	width: 180px;
	aspect-ratio: 640 / 292;
	background: url(assets/images/logo-eko-energies.png) left center / contain no-repeat;
	color: transparent !important;
	font-size: 0;
	text-decoration: none;
}

.eko-pied .eko-logo a {
	width: 250px;
	aspect-ratio: 900 / 484;
	background-image: url(assets/images/logo-eko-energies-slogan.png);
}

@media (max-width: 599px) {
	.eko-entete .eko-logo a {
		width: 140px;
	}
}

.wp-block-navigation a {
	text-decoration: none;
}

.wp-block-navigation .wp-block-navigation-item__content {
	position: relative;
}

.wp-block-navigation .wp-block-navigation-item__content:hover::after {
	content: "";
	position: absolute;
	right: 0;
	bottom: -0.35rem;
	left: 0;
	height: 1px;
	background: var(--wp--preset--color--bleu);
}

.wp-block-navigation__responsive-container.is-menu-open {
	background-color: var(--wp--preset--color--noir) !important;
	color: var(--wp--preset--color--blanc) !important;
}

.eko-logo {
	white-space: nowrap;
}

/* Menu ouvert sur mobile et tablette */
.eko-entete .wp-block-navigation__responsive-container.is-menu-open {
	padding: 1.5rem;
}

.eko-entete .wp-block-navigation .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content,
.eko-entete .wp-block-navigation .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container {
	align-items: flex-start;
	gap: 1.6rem;
}

.eko-entete .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content {
	padding-top: 3rem;
}

.eko-entete .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content {
	font-size: 1.05rem;
	letter-spacing: 0.16em;
}

/* Menu « hamburger » jusqu'à 1023 px (WordPress ne le prévoit que sous 600 px). */
@media (min-width: 600px) and (max-width: 1023px) {
	.eko-entete .wp-block-navigation__responsive-container-open:not(.always-shown) {
		display: flex;
	}

	.eko-entete .wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open) {
		display: none;
	}
}

@media (max-width: 599px) {
	.eko-entete .wp-block-buttons.eko-entete-cta {
		display: none;
	}
}

/* ---------------------------------------------------------------
   Boutons (pilules)
--------------------------------------------------------------- */
.wp-block-button__link {
	border: 1px solid transparent;
	transition: transform 0.15s ease, box-shadow 0.15s ease, background-color 0.15s ease, color 0.15s ease;
}

.wp-block-button__link:hover {
	transform: translateY(-1px);
	box-shadow: 0 10px 28px rgba(79, 176, 240, 0.22);
}

.wp-block-button.is-style-outline > .wp-block-button__link {
	border-color: var(--wp--preset--color--bleu);
}

.wp-block-button.is-style-outline > .wp-block-button__link:not(.has-background) {
	background: rgba(79, 176, 240, 0.06);
}

.wp-block-button.is-style-outline > .wp-block-button__link:not(.has-background):hover {
	background: rgba(79, 176, 240, 0.16);
}

.eko-ancres .wp-block-button__link {
	padding: 0.5rem 1.1rem;
	font-size: 0.75rem;
}

/* ---------------------------------------------------------------
   Cartes
--------------------------------------------------------------- */
.eko-carte {
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.04), 0 18px 40px rgba(0, 0, 0, 0.35);
	transition: transform 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease;
}

.eko-carte:hover {
	transform: translateY(-3px);
	border-color: rgba(79, 176, 240, 0.55) !important;
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.05), 0 24px 50px rgba(0, 0, 0, 0.45);
}

.eko-realisation {
	overflow: hidden;
}

/* Tuiles photo de la mosaïque « Nos réalisations » */
.eko-tuile {
	overflow: hidden;
	border-radius: 18px;
}

.eko-tuile .wp-block-cover__image-background {
	transition: transform 0.6s ease;
}

.eko-tuile:hover .wp-block-cover__image-background {
	transform: scale(1.05);
}

.eko-tuile .wp-block-cover__inner-container > * {
	margin-block: 0.35rem 0;
}

.eko-photo-cadre img {
	box-shadow: 0 30px 60px rgba(0, 0, 0, 0.45);
}

.eko-photo {
	background-size: cover;
	background-position: center;
}

/* ---------------------------------------------------------------
   Listes à coches
--------------------------------------------------------------- */
ul.eko-liste-check {
	list-style: none;
	padding-left: 0;
}

ul.eko-liste-check li {
	position: relative;
	margin: 0.65rem 0;
	padding-left: 2.1rem;
}

ul.eko-liste-check li::before {
	content: "";
	position: absolute;
	top: 0.22em;
	left: 0;
	width: 1.3rem;
	height: 1.3rem;
	border: 1px solid var(--wp--preset--color--bleu);
	border-radius: 50%;
}

ul.eko-liste-check li::after {
	content: "";
	position: absolute;
	top: calc(0.22em + 0.33rem);
	left: 0.33rem;
	width: 0.65rem;
	height: 0.65rem;
	background: var(--wp--preset--color--bleu);
	-webkit-mask: var(--eko-i-check) center / contain no-repeat;
	mask: var(--eko-i-check) center / contain no-repeat;
}

/* ---------------------------------------------------------------
   FAQ
--------------------------------------------------------------- */
.wp-block-details {
	padding: 1.1rem 1.35rem;
	border: 1px solid var(--wp--preset--color--bordure);
	border-radius: 14px;
	background: var(--wp--preset--color--carte);
}

.wp-block-details summary {
	font-weight: 700;
	color: var(--wp--preset--color--blanc);
	cursor: pointer;
}

.wp-block-details summary::marker {
	color: var(--wp--preset--color--bleu);
}

.wp-block-details[open] summary {
	margin-bottom: 0.75rem;
}

/* ---------------------------------------------------------------
   Formulaire de contact du thème [eko_formulaire_contact]
--------------------------------------------------------------- */
.eko-formulaire p {
	margin: 0 0 1.1rem;
}

.eko-formulaire label {
	display: block;
	margin-bottom: 0.4rem;
	font-weight: 600;
	color: var(--wp--preset--color--texte);
}

.eko-formulaire input:not([type="checkbox"]),
.eko-formulaire select,
.eko-formulaire textarea {
	box-sizing: border-box;
	width: 100%;
	padding: 0.8rem 1rem;
	border: 1px solid var(--wp--preset--color--bordure);
	border-radius: 12px;
	background: var(--wp--preset--color--noir);
	color: var(--wp--preset--color--blanc);
	font: inherit;
}

.eko-formulaire select option {
	background: var(--wp--preset--color--noir);
}

.eko-formulaire input:focus,
.eko-formulaire select:focus,
.eko-formulaire textarea:focus {
	border-color: var(--wp--preset--color--bleu);
	outline: 3px solid rgba(79, 176, 240, 0.2);
	outline-offset: 0;
}

.eko-formulaire__grille {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 0 1.25rem;
}

@media (max-width: 600px) {
	.eko-formulaire__grille {
		grid-template-columns: minmax(0, 1fr);
	}
}

.eko-formulaire__accord label {
	display: flex;
	align-items: flex-start;
	gap: 0.6rem;
	font-size: 0.9rem;
	font-weight: 400;
	color: var(--wp--preset--color--acier);
}

.eko-formulaire__accord input {
	margin-top: 0.3rem;
	accent-color: var(--wp--preset--color--bleu);
}

.eko-formulaire button {
	cursor: pointer;
}

/* Champ piège anti-robots, invisible pour les visiteurs. */
.eko-formulaire__piege {
	position: absolute !important;
	left: -9999px;
	width: 1px;
	height: 1px;
	overflow: hidden;
}

.eko-formulaire__message {
	margin: 0 0 1.5rem;
	padding: 1rem 1.25rem;
	border: 1px solid;
	border-radius: 12px;
}

.eko-formulaire__message--ok {
	border-color: var(--wp--preset--color--bleu);
	background: rgba(79, 176, 240, 0.1);
	color: var(--wp--preset--color--blanc);
}

.eko-formulaire__message--erreur {
	border-color: #e5484d;
	background: rgba(229, 72, 77, 0.12);
	color: var(--wp--preset--color--blanc);
}

/* ---------------------------------------------------------------
   Formulaire de contact (Jetpack, si utilisé)
--------------------------------------------------------------- */
.wp-block-jetpack-contact-form label {
	font-weight: 600;
	color: var(--wp--preset--color--texte);
}

.wp-block-jetpack-contact-form input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]),
.wp-block-jetpack-contact-form select,
.wp-block-jetpack-contact-form textarea {
	width: 100%;
	padding: 0.8rem 1rem;
	border: 1px solid var(--wp--preset--color--bordure);
	border-radius: 12px;
	background: var(--wp--preset--color--noir);
	color: var(--wp--preset--color--blanc);
	font: inherit;
}

/* Jetpack force « background: inherit » sur la liste déroulante : on habille son conteneur. */
.wp-block-jetpack-contact-form .contact-form__select-wrapper {
	border: 1px solid var(--wp--preset--color--bordure);
	border-radius: 12px;
	background: var(--wp--preset--color--noir);
	color: var(--wp--preset--color--blanc);
}

.wp-block-jetpack-contact-form .contact-form__select-wrapper select {
	border: 0;
}

.wp-block-jetpack-contact-form input:focus,
.wp-block-jetpack-contact-form select:focus,
.wp-block-jetpack-contact-form textarea:focus {
	border-color: var(--wp--preset--color--bleu);
	outline: 3px solid rgba(79, 176, 240, 0.2);
	outline-offset: 0;
}

/* ---------------------------------------------------------------
   Pied de page
--------------------------------------------------------------- */
.eko-pied a {
	color: var(--wp--preset--color--acier);
	text-decoration: none;
}

.eko-pied a:hover {
	color: var(--wp--preset--color--blanc);
}

ul.eko-liste-liens {
	list-style: none;
	padding-left: 0;
}

ul.eko-liste-liens li {
	margin: 0.45rem 0;
}

.eko-pied-bas {
	border-top: 1px solid rgba(255, 255, 255, 0.08);
}

.eko-pied-bas p {
	margin: 0;
}

/* ---------------------------------------------------------------
   Articles
--------------------------------------------------------------- */
.eko-article {
	border-bottom: 1px solid var(--wp--preset--color--bordure);
}

.eko-article .wp-block-post-title a {
	text-decoration: none;
}

/* ---------------------------------------------------------------
   Mouvements réduits
--------------------------------------------------------------- */
@media (prefers-reduced-motion: reduce) {
	html {
		scroll-behavior: auto;
	}

	.eko-carte,
	.wp-block-button__link {
		transition: none;
	}

	.eko-carte:hover,
	.wp-block-button__link:hover {
		transform: none;
	}
}
