

:root {
	--exa-violet: #7023d1;
	--exa-violet-fonce: #5924ca;
	--exa-violet-pale: #f3ebfc;
	--exa-noir: #0f0913;
	--exa-texte: #373737;
	--exa-gris: #7a7a7a;
	--exa-fond: #ffffff;
	--exa-fond-alt: #f3f3f3;
	--exa-rose: #cb257d;
	--exa-rose-pale: #fbe9f3;
	--exa-bord: #ece8f0;
	--exa-rayon: 8px;
	--exa-ombre: 0 10px 34px rgba(15, 9, 19, .12);
	--exa-ombre-douce: 0 2px 10px rgba(15, 9, 19, .05);

	--exa-police: Poppins, sans-serif;

	--exa-fs-xs: 12px;
	--exa-fs-sm: 13px;
	--exa-fs-base: 14px;
	--exa-fs-md: 16px;
	--exa-fs-lg: 20px;
	--exa-fs-xl: 24px;
	--exa-fs-2xl: 28px;
	--exa-fs-saisie: 16px;

	--exa-w-corps: 300;
	--exa-w-moyen: 500;
	--exa-w-fort: 600;
	--exa-w-titre: 700;

	--exa-lh-corps: 1.7;
	--exa-lh-serre: 1.55;
	--exa-lh-titre: 1.3;
	--exa-lh-gros: 1.15;
}

@media screen and (min-width: 600px) {
	:root {
		--exa-fs-xl: 26px;
		--exa-fs-2xl: 32px;
	}
}

@media screen and (min-width: 1024px) {
	:root {
		--exa-fs-lg: 22px;
		--exa-fs-xl: 28px;
		--exa-fs-2xl: 36px;
	}
}

*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; }
body { margin: 0; }
img, svg, video { max-width: 100%; height: auto; }
iframe { max-width: 100%; }

.x-evitement { position: absolute; left: -9999px; top: 0; z-index: 1000; padding: .75rem 1rem; background: var(--wp--preset--color--blanc); color: var(--wp--preset--color--violet); }
.x-evitement:focus { left: 1rem; top: 1rem; }

/* !important : sans lui, cette classe (0,1,0) perd face à la classe de mise en page que Gutenberg ajoute au même élément (.is-layout-flex/.is-layout-flow, 0,2,0). */
@media (min-width: 981px) { .x-cache-ordinateur { display: none !important; } }
@media (min-width: 768px) and (max-width: 980px) { .x-cache-tablette { display: none !important; } }
@media (max-width: 767px) { .x-cache-mobile { display: none !important; } }

.screen-reader-text { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }

.ti-rating-text { display: none; }

/* Finition A + mouvement (28/09) : transitions courtes, focus visible, révélation au défilement posée par mouvement.js (jamais sans JS). */
:where(a, button, input, select, textarea, .wp-block-button__link) { transition: color .2s ease, background-color .2s ease, border-color .2s ease, box-shadow .2s ease, transform .2s ease; }
:where(a, button, input, select, textarea, summary):focus-visible { outline: 2px solid var(--wp--preset--color--violet); outline-offset: 3px; }
@media (prefers-reduced-motion: no-preference) {
	html { scroll-behavior: smooth; }
	.js .x-rv { transition: opacity .45s ease, transform .45s cubic-bezier(.2, .7, .2, 1); transition-delay: var(--x-rv-delai, 0ms); }
	.js .x-rv:not(.x-rv--vu) { opacity: 0; transform: translateY(18px); }
}
@media (prefers-reduced-motion: reduce) { :where(a, button, input, select, textarea, .wp-block-button__link) { transition: none; } }
