/* ==================================================================
   Wakademy : styles du site (thème en blocs, refonte 2026).
   Couleurs, polices, tailles : theme.json (--wp--preset--…) et tokens.css (--wk-…).
   Mode sombre : il suit le réglage de l'appareil, seulement sur les pages
   qui y sont prêtes (classe wk-sombre posée par le thème). Les pages encore
   construites avec Elementor et l'espace élève restent claires.
   ================================================================== */

body {
	--sable-rgb: 239, 234, 226;
	--trait: rgba(57, 41, 29, .16);
	--cadre: #FFFFFF;
	--pied-fond: #E6DCCF;
	/* FOND DES CARTES (--wk-carte, 21/09/2026). Une carte, une tuile ou un encadré ne doit JAMAIS
	   avoir la couleur de la section qui le porte : sinon on ne voit qu'un liseré, et les blocs
	   se fondent dans la page (retour de Gauthier). Ici, une seule couleur pour tout le site :
	   sur le fond sable (le fond courant), la carte est crème (plus claire) ;
	   sur une section crème, elle redevient sable (plus foncée). Pareil en mode sombre.
	   Pour changer le contraste des cartes partout, il n'y a que ces deux lignes à toucher. */
	--wk-carte: var(--wk-creme);
	--carte-fond: rgba(250, 247, 244, .82);
	--carte-bord: rgba(255, 255, 255, .9);
	--ombre-carte: 0 10px 28px -14px rgba(57, 41, 29, .28);
	--bande-fond: #39291D;
	--bande-texte: #EFEAE2;
	--bande-accent: #E3A862;
}
/* Jetons du mode sombre (body.wk-sombre) : déplacés dans tokens.css, chargé partout (leçons comprises). */

/* ---------- Base ---------- */
*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: 6rem; }
body { margin: 0; -webkit-font-smoothing: antialiased; }
img { max-width: 100%; height: auto; }
a { text-decoration-thickness: 2px; text-underline-offset: 3px; text-decoration-color: var(--wk-or); }
:where(h1, h2, h3, h4) { text-wrap: balance; }
:where(p, li) { text-wrap: pretty; }
.visuellement-cache {
	position: absolute !important; width: 1px; height: 1px; overflow: hidden;
	clip: rect(0 0 0 0); clip-path: inset(50%); white-space: nowrap;
}
.wk-sauter {
	position: absolute; left: 1rem; top: -5rem; z-index: 100;
	padding: .75rem 1rem; border-radius: var(--wk-rayon-petit);
	background: var(--wk-creme); color: var(--wk-ecorce); font-weight: 700; text-decoration: none;
}
.wk-sauter:focus { top: 1rem; }
.wk-logo--sombre { display: none; }

/* ---------- Boutons des blocs ---------- */
.wp-block-button__link {
	display: inline-flex; align-items: center; justify-content: center; gap: .5rem;
	min-height: 3.25rem; padding: 0 1.6rem; border-radius: var(--wk-rayon-bouton);
	font-weight: 700; text-decoration: none; transition: background-color .15s ease, color .15s ease;
}
.is-style-plein .wp-block-button__link { background: var(--wk-or); color: var(--wk-sur-or); }
.is-style-plein .wp-block-button__link:hover { background: var(--wk-or-survol); }
.is-style-contour .wp-block-button__link { background: transparent; color: var(--wk-ecorce); box-shadow: inset 0 0 0 2px var(--wk-or); }
.is-style-contour .wp-block-button__link:hover { background: var(--wk-or); color: var(--wk-sur-or); }

/* ---------- En-tête : la pilule ----------
   Même style que la pilule de l'espace élève (waka-payments) et que l'app Wakatoo :
   capsule crème flottante, arrondi 50px, pastille sable sur la page active. */
.wk-entete {
	position: sticky; z-index: 50;
	top: calc(var(--wp-admin--admin-bar--height, 0px) + var(--waka-banner-height, 0px));
	padding: 12px var(--wk-marge) 0; /* même marge que les sections (theme.json) : la pastille donne la largeur de tout le site */
	font-family: var(--wk-police);
	color: var(--wk-ecorce);
	pointer-events: none; /* seule la pilule reçoit les clics : le contenu reste cliquable autour */
}
@media (max-width: 600px) { .admin-bar .wk-entete { top: var(--waka-banner-height, 0px); } }
/* Dans les gabarits du thème, WordPress enveloppe l'en-tête dans un conteneur à sa taille :
   c'est ce conteneur qui reste collé en haut (un élément collant ne sort pas de son parent). */
.wp-block-template-part:has(> .wk-entete) {
	position: sticky; z-index: 50;
	top: calc(var(--wp-admin--admin-bar--height, 0px) + var(--waka-banner-height, 0px));
	pointer-events: none;
}
.wp-block-template-part > .wk-entete { position: relative; top: auto; }
@media (max-width: 600px) { .admin-bar .wp-block-template-part:has(> .wk-entete) { top: var(--waka-banner-height, 0px); } }
.wk-entete__barre {
	pointer-events: auto;
	position: relative;
	max-width: var(--wk-largeur); margin-inline: auto;
	display: flex; align-items: center; gap: .75rem;
	min-height: 4rem; padding: .5rem .5rem .5rem 1.25rem;
	border-radius: 50px;
	background: color-mix(in srgb, var(--wk-creme) 90%, transparent);
	-webkit-backdrop-filter: blur(16px) saturate(1.1); backdrop-filter: blur(16px) saturate(1.1);
	border: 1px solid var(--carte-bord);
	box-shadow: 0 4px 20px rgba(0, 0, 0, .1);
}
.wk-entete__logo { display: flex; flex: none; }
.wk-entete__logo .wk-logo { width: 80px; height: auto; } /* même taille que dans la pilule de l'espace élève */
.wk-nav { display: none; }
.wk-nav ul, .wk-menu-mobile ul { list-style: none; margin: 0; padding: 0; }
.wk-nav ul { display: flex; gap: .25rem; }
.wk-nav a, .wk-menu-mobile nav a {
	display: block; padding: .6rem 1.05rem; border-radius: 50px;
	font-size: var(--wp--preset--font-size--s); font-weight: 600; text-decoration: none; color: inherit;
	transition: background-color .15s ease;
}
.wk-nav a:hover, .wk-menu-mobile nav a:hover,
.wk-nav a[aria-current="page"], .wk-menu-mobile nav a[aria-current="page"] { background: var(--wk-sable); }
.wk-entete__actions, .wk-menu-mobile__actions { display: flex; align-items: center; gap: .5rem; }
.wk-entete__actions > *, .wk-nav a { white-space: nowrap; }
.wk-entete__actions { display: none; margin-left: auto; }
/* Langue : menu dépliant (globe + code courant), prévu pour plus de deux langues.
   Plat comme les autres entrées de la pilule : plus de cercle doré qui attirait l'oeil (21/09/2026). */
.wk-sr { position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0; overflow: hidden; clip-path: inset(50%); white-space: nowrap; border: 0; }
.wk-langues { position: relative; flex: none; }
.wk-langues > summary {
	list-style: none; cursor: pointer;
	display: flex; align-items: center; gap: .35rem;
	height: 2.75rem; padding: 0 .7rem;
	border-radius: var(--wk-rayon-bouton);
	font-size: var(--wp--preset--font-size--s); font-weight: 600; color: inherit; white-space: nowrap;
	transition: background-color .15s ease;
}
.wk-langues > summary::-webkit-details-marker { display: none; }
.wk-langues > summary:hover, .wk-langues[open] > summary { background: var(--wk-sable); }
.wk-langues__globe { flex: none; color: var(--wk-taupe); }
.wk-langues[open] .wk-langues__globe, .wk-langues > summary:hover .wk-langues__globe { color: var(--wk-or-texte); }
.wk-langues__actuelle { letter-spacing: .04em; }
.wk-langues > summary::after {
	content: ""; flex: none; width: .38rem; height: .38rem; margin: -.18rem 0 0 .05rem;
	border-right: 2px solid var(--wk-taupe); border-bottom: 2px solid var(--wk-taupe);
	transform: rotate(45deg); transition: transform .2s ease, margin .2s ease;
}
.wk-langues[open] > summary::after { transform: rotate(225deg); margin-top: .18rem; }
.wk-langues__panneau {
	position: absolute; z-index: 5; top: calc(100% + .45rem); right: 0;
	min-width: 12.5rem; max-width: calc(100vw - 2rem); padding: .35rem;
	max-height: min(60vh, 24rem); overflow-y: auto; overscroll-behavior: contain; /* dix langues tiendront sans pousser la page */
	border-radius: var(--wk-rayon); border: 1px solid var(--trait);
	background: var(--wk-creme); box-shadow: var(--ombre-carte);
}
.wk-langues__panneau ul { list-style: none; margin: 0; padding: 0; display: grid; gap: .1rem; }
.wk-langues__panneau a {
	display: grid; grid-template-columns: 2.1rem 1fr auto; align-items: center; gap: .55rem;
	padding: .5rem .55rem; border-radius: var(--wk-rayon-petit);
	font-size: var(--wp--preset--font-size--s); font-weight: 600; text-decoration: none; color: inherit;
	transition: background-color .15s ease;
}
.wk-langues__panneau a:hover { background: var(--wk-sable); }
.wk-langues__code {
	display: grid; place-items: center; height: 1.5rem; border-radius: 8px;
	background: var(--wk-sable); color: var(--wk-taupe);
	font-size: .7rem; font-weight: 700; letter-spacing: .06em;
}
.wk-langues__panneau a[aria-current] { color: var(--wk-or-texte); }
.wk-langues__panneau a[aria-current] .wk-langues__code { background: color-mix(in srgb, var(--wk-or) 16%, transparent); color: var(--wk-or-texte); }
.wk-langues__coche { flex: none; }
@media (prefers-reduced-motion: no-preference) {
	.wk-langues[open] .wk-langues__panneau { animation: wk-langues-ouvre .22s var(--wk-ease) both; }
	.wk-langues.est-fermeture .wk-langues__panneau { animation: wk-langues-ferme .2s ease both; }
}
@keyframes wk-langues-ouvre { from { opacity: 0; transform: translateY(-6px) scale(.98); } }
@keyframes wk-langues-ferme { to { opacity: 0; transform: translateY(-4px); } }
.wk-lien-connexion { padding: .6rem .8rem; border-radius: 50px; font-size: var(--wp--preset--font-size--s); font-weight: 600; text-decoration: none; color: inherit; }
.wk-lien-connexion:hover { background: var(--wk-sable); }
.wk-entete .wk-bouton--petit { min-height: 2.75rem; border-radius: 50px; }
.wk-entete__espace .wk-avatar { width: 1.9rem; height: 1.9rem; border-radius: 50%; object-fit: cover; margin-left: -.55rem; }

@media (min-width: 64rem) {
	.wk-entete__barre { display: grid; grid-template-columns: auto 1fr auto; }
	.wk-nav { display: block; justify-self: center; }
	.wk-entete__actions { display: flex; justify-self: end; }
	.wk-menu-bouton { display: none; }
}

/* Pages encore construites avec Elementor : même largeur que la pilule (transition, jusqu'à leur refonte). */
body[class*="elementor-kit-"] { --container-max-width: calc(var(--wk-largeur) + 20px); }
body .elementor-section.elementor-section-boxed > .elementor-container { max-width: calc(var(--wk-largeur) + 20px); }

/* Pages encore construites avec Elementor : sa feuille globale colore tous les
   liens (sélecteur .elementor-kit-… a). En-tête, pied et 404 gardent leurs couleurs. */
:is(.wk-entete, .wk-pied, .wk-404) a:not(.wk-bouton),
:is(.wk-entete, .wk-pied, .wk-404) a:not(.wk-bouton):hover { color: var(--wk-ecorce); }
.wk-pied .wk-pied__marque p, .wk-pied .wk-pied__bas { color: var(--wk-taupe); }
:is(.wk-entete, .wk-404) a.wk-bouton,
:is(.wk-entete, .wk-404) a.wk-bouton:hover { color: var(--wk-sur-or); }
.wk-entete a.wk-bouton--contour { color: var(--wk-ecorce); }
.wk-entete a.wk-bouton--contour:hover { color: var(--wk-sur-or); }

/* ---------- Pied de page ---------- */
.wk-pied {
	background: var(--pied-fond); color: var(--wk-ecorce); font-family: var(--wk-police);
	padding: var(--wp--preset--spacing--70) var(--wk-marge) var(--wp--preset--spacing--60);
}
.wk-pied__grille {
	max-width: var(--wk-largeur); margin-inline: auto;
	display: grid; gap: var(--wp--preset--spacing--60);
	grid-template-columns: repeat(auto-fit, minmax(11rem, 1fr));
}
.wk-pied__marque { grid-column: 1 / -1; display: grid; gap: .9rem; align-content: start; max-width: 26rem; }
.wk-pied__marque p { margin: 0; font-size: var(--wp--preset--font-size--s); color: var(--wk-taupe); }
.wk-pied__logo .wk-logo { width: 8rem; height: auto; }
.wk-pied .wk-pied__colonne h2 {
	margin: 0 0 .8rem; padding: 0;
	font: 800 var(--wp--preset--font-size--xs)/1.3 var(--wk-police);
	letter-spacing: .1em; text-transform: uppercase; color: var(--wk-taupe);
}
.wk-pied :is(p, li, a, span) { font-family: var(--wk-police); }
.wk-pied .wk-reseau { display: inline-flex; align-items: center; gap: .5rem; font-weight: 700; }
.wk-reseau__logo { flex: none; color: #FF0033; }
.wk-pied ul { list-style: none; margin: 0; padding: 0; display: grid; gap: .5rem; font-size: var(--wp--preset--font-size--s); }
.wk-pied a { color: inherit; text-decoration: none; }
.wk-pied a:hover { text-decoration: underline; }
.wk-pied__reseaux { display: flex !important; flex-wrap: wrap; gap: .5rem 1.25rem !important; font-weight: 700; }
.wk-pied__bas {
	max-width: var(--wk-largeur); margin: var(--wp--preset--spacing--60) auto 0;
	padding-top: var(--wp--preset--spacing--40); border-top: 1px solid var(--trait);
	display: flex; flex-wrap: wrap; gap: .5rem 1.5rem; justify-content: space-between;
	font-size: var(--wp--preset--font-size--xs); color: var(--wk-taupe);
}
.wk-pied__bas p { margin: 0; }
.wk-pied .wk-pied__legal { display: flex; flex-wrap: wrap; gap: .25rem 1.25rem; font-size: var(--wp--preset--font-size--xs); }
.wk-pied .wk-pied__legal a { color: var(--wk-taupe); }
.wk-pied .wk-pied__legal a:hover { color: var(--wk-ecorce); }
.wk-pied__langues { display: flex; gap: 1rem; }
.wk-pied__langues a[aria-current] { font-weight: 800; color: var(--wk-ecorce); }
@media (min-width: 64rem) {
	.wk-pied__grille { grid-template-columns: 1.6fr repeat(3, 1fr); }
	.wk-pied__marque { grid-column: auto; }
}

/* ---------- Mises en page ---------- */
.wk-liste, .wk-page-texte, .wk-article {
	padding-top: var(--wp--preset--spacing--70);
	padding-bottom: var(--wp--preset--spacing--80);
}
.wk-page-texte .wp-block-post-title { margin-bottom: var(--wp--preset--spacing--50); font-size: var(--wp--preset--font-size--xl); font-weight: 800; }
.wk-page-texte .wp-block-post-content a,
.wk-article__contenu a { text-decoration-line: underline; }

/* ---------- Article du blog ---------- */
/* En-tête centré (catégories en pastilles, grand titre, auteur), image en 16:9
   un peu plus large que le texte, texte en colonne de lecture. */
.wk-article__entete { display: grid; justify-items: center; gap: 1.1rem; text-align: center; margin-bottom: var(--wp--preset--spacing--60); }
.wk-article__categorie { display: flex; flex-wrap: wrap; justify-content: center; gap: .4rem; font-size: var(--wp--preset--font-size--xs); font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.wk-article__categorie .wp-block-post-terms__separator { display: none; }
.wk-article__categorie a {
	padding: .4rem .8rem; border-radius: 100px; text-decoration: none; color: var(--wk-or-texte);
	background: color-mix(in srgb, var(--wk-or) 14%, transparent);
}
.wk-article__categorie a:hover { background: color-mix(in srgb, var(--wk-or) 24%, transparent); }
.wk-article .wk-article__titre { max-width: 34ch; font-size: clamp(1.85rem, 1.2rem + 2.2vw, 2.75rem); font-weight: 800; line-height: 1.2; letter-spacing: 0; word-spacing: .04em; text-wrap: balance; }
.wk-article__meta { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: .35rem .6rem; color: var(--wk-taupe); font-size: var(--wp--preset--font-size--s); }
.wk-article__avatar { width: 2.5rem; height: 2.5rem; border-radius: 50%; object-fit: cover; border: 2px solid var(--cadre); }
.wk-article__auteur { font-weight: 700; color: var(--wk-ecorce); }
.wk-article > .wp-block-post-featured-image.wk-article__image { max-width: min(var(--wk-largeur-encadre, 56rem), 100%); margin-block: 0 var(--wp--preset--spacing--70); }
.wk-article__image img { width: 100%; height: 100%; aspect-ratio: 16 / 9; object-fit: cover; border-radius: var(--wk-rayon-grand); box-shadow: var(--wk-ombre); }
.wk-article__contenu { font-size: 1.125rem; line-height: 1.75; }
.wk-article__contenu h2 { scroll-margin-top: 6rem; }

/* Sommaire */
.wk-sommaire details { padding: 1.1rem 1.35rem; border-radius: var(--wk-rayon); background: var(--carte-fond); border: 1px solid var(--carte-bord); }
.wk-sommaire summary { cursor: pointer; font-size: var(--wp--preset--font-size--xs); font-weight: 800; letter-spacing: .08em; text-transform: uppercase; color: var(--wk-taupe); }
.wk-sommaire ol { margin: .8rem 0 0; padding-left: 1.25rem; display: grid; gap: .4rem; }
.wk-sommaire a { font-weight: 600; text-decoration: none; }
.wk-sommaire a:hover { color: var(--wk-or-texte); }

/* Vidéos YouTube en vignette */
.wk-video { position: relative; margin: 1.5em 0; aspect-ratio: 16 / 9; overflow: hidden; border-radius: var(--wk-rayon); background: #000; }
.wk-video__bouton { all: unset; position: relative; display: block; width: 100%; height: 100%; cursor: pointer; }
.wk-video__bouton img { width: 100%; height: 100%; object-fit: cover; border-radius: 0; opacity: .9; transition: opacity .2s ease; }
.wk-video__lecture {
	position: absolute; inset: 0; margin: auto; width: 4.5rem; height: 4.5rem; border-radius: 50%;
	display: grid; place-items: center; padding-left: .2rem;
	background: var(--wk-or); color: var(--wk-sur-or); box-shadow: 0 12px 30px rgba(0, 0, 0, .35); transition: transform .2s ease;
}
.wk-video__bouton:hover img { opacity: 1; }
.wk-video__bouton:hover .wk-video__lecture { transform: scale(1.06); }
.wk-video__bouton:focus-visible { outline: 3px solid var(--wk-or); outline-offset: -3px; }
.wk-video__cadre { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }
.wp-block-embed__wrapper > .wk-video { margin: 0; }

/* Fin d'article : auteur et invitation */
.wk-article-fin { display: grid; gap: var(--wp--preset--spacing--50); margin-top: var(--wp--preset--spacing--70); }
.wk-article-fin p { margin: 0; }
.wk-article-fin__auteur {
	display: grid; grid-template-columns: 4.5rem 1fr; gap: 1.25rem; align-items: start; padding: 1.5rem;
	border-radius: var(--wk-rayon-grand); background: var(--carte-fond); border: 1px solid var(--carte-bord);
}
.wk-article-fin__auteur img { width: 4.5rem; height: 4.5rem; border-radius: 50%; object-fit: cover; }
.wk-article-fin__auteur > div { display: grid; gap: .35rem; }
.wk-article-fin__surtitre { font-size: var(--wp--preset--font-size--xs); font-weight: 800; letter-spacing: .08em; text-transform: uppercase; color: var(--wk-taupe); }
.wk-article-fin__nom { font-size: var(--wp--preset--font-size--l); font-weight: 800; }
.wk-article-fin__bio { color: var(--wk-taupe); font-size: var(--wp--preset--font-size--s); }
.wk-article-fin__lien { font-weight: 700; color: var(--wk-or-texte); }
.wk-article-fin__appel {
	display: grid; justify-items: center; gap: .8rem; padding: 2.25rem 1.5rem; text-align: center;
	border-radius: var(--wk-rayon-grand); background: var(--wk-ecorce); color: var(--wk-sable);
}
.wk-article-fin__appel h2 { margin: 0; color: inherit; font-size: var(--wp--preset--font-size--xl); }
.wk-article-fin__appel p { opacity: .85; }

/* À lire aussi */
.wk-articles-lies { margin-top: var(--wp--preset--spacing--80); }
.wk-articles-lies h2 { margin-bottom: var(--wp--preset--spacing--50); font-size: var(--wp--preset--font-size--xl); }
.wk-articles-lies__grille { list-style: none; margin: 0; padding: 0; display: grid; gap: var(--wp--preset--spacing--50); grid-template-columns: repeat(auto-fill, minmax(16rem, 1fr)); }
.wk-articles-lies .wk-carte-article { display: flex; flex-direction: column; }
.wk-carte-article__image img { display: block; width: 100%; height: auto; aspect-ratio: 16 / 10; object-fit: cover; }
.wk-carte-article__infos { margin: 0; font-size: var(--wp--preset--font-size--xs); color: var(--wk-taupe); }
.wk-articles-lies .wk-carte-article__titre { margin: .9rem 0 0; }

/* Barre de lecture sous l'en-tête (navigateurs qui savent suivre le défilement) */
@supports (animation-timeline: scroll()) {
	.single-post .wk-entete__barre::after {
		content: ""; position: absolute; left: 1.75rem; right: 1.75rem; bottom: 0; height: 3px; border-radius: 3px;
		background: var(--wk-or); transform-origin: 0 50%; transform: scaleX(0);
		animation: wk-lecture linear both; animation-timeline: scroll(root);
	}
	@keyframes wk-lecture { to { transform: scaleX(1); } }
}
.wk-article__contenu :where(h2) { margin-block-start: 2.2em; }
.wk-article__contenu :where(h3) { margin-block-start: 1.8em; }
.wk-article__contenu :where(ul, ol) { padding-left: 1.3em; }
.wk-article__contenu blockquote {
	margin-block: 1.5em; padding: 1rem 1.25rem; border-left: 4px solid var(--wk-or);
	background: var(--carte-fond); border-radius: 0 var(--wk-rayon) var(--wk-rayon) 0;
}
.wk-article__contenu iframe { max-width: 100%; }
.wk-article__contenu iframe[src*="youtube"],
.wk-article__contenu iframe[src*="vimeo"] { width: 100%; height: auto; aspect-ratio: 16 / 9; border: 0; border-radius: var(--wk-rayon); }
.wk-article__contenu table { display: block; max-width: 100%; overflow-x: auto; border-collapse: collapse; }
.wk-article__contenu :is(td, th) { padding: .5rem .75rem; border-bottom: 1px solid var(--trait); }
.wk-article__contenu img { border-radius: var(--wk-rayon-petit); }
.wk-article__contenu .alignleft { float: left; margin: .3em 1.5em 1em 0; }
.wk-article__contenu .alignright { float: right; margin: .3em 0 1em 1.5em; }
.wk-article__contenu .aligncenter { display: block; margin-inline: auto; }
.wk-article__contenu .wp-caption { max-width: 100%; }
.wk-article__contenu .wp-caption-text { font-size: var(--wp--preset--font-size--s); color: var(--wk-taupe); }
@media (max-width: 40rem) {
	.wk-article__contenu :is(.alignleft, .alignright) { float: none; margin: 1em auto; }
}

/* ---------- Commentaires ---------- */
.wk-commentaires { margin-top: var(--wp--preset--spacing--70); padding-top: var(--wp--preset--spacing--60); border-top: 1px solid var(--trait); }
.wk-commentaires .wp-block-comment-template,
.wk-commentaires .wp-block-comment-template ol { list-style: none; margin: 0; padding: 0; display: grid; gap: 1rem; }
.wk-commentaires .wp-block-comment-template ol { padding-left: 1.5rem; margin-top: 1rem; }
.wk-commentaire {
	gap: .4rem; padding: 1rem 1.25rem;
	background: var(--carte-fond); border: 1px solid var(--carte-bord); border-radius: var(--wk-rayon);
}
.wk-commentaire p { margin: 0; }
.wp-block-comment-author-name { font-weight: 700; }
.wp-block-comment-date { color: var(--wk-taupe); font-size: var(--wp--preset--font-size--xs); }
.wp-block-comment-date a, .wp-block-comment-author-name a { text-decoration: none; }
/* #commentform : passe devant l'ancien CSS additionnel (styles globaux, fond blanc et texte gris), sinon champ blanc en mode sombre. */
.wk-commentaires #commentform :is(input[type="text"], input[type="email"], input[type="url"], textarea) {
	width: 100%; padding: .75rem 1rem; border-radius: 12px; border: 1px solid var(--trait);
	background: var(--wk-creme); color: var(--wk-ecorce); font: inherit; box-shadow: none;
}
.wk-commentaires input[type="submit"] {
	min-height: 3.25rem; padding: 0 1.6rem; border: 0; border-radius: var(--wk-rayon-bouton);
	background: var(--wk-or); color: var(--wk-sur-or); font: 700 1rem var(--wk-police); cursor: pointer;
}

/* ---------- Listes d'articles (blog, catégories, recherche) ---------- */
.wk-liste__titre { font-size: var(--wp--preset--font-size--xl); font-weight: 800; }
.wk-cartes-articles .wp-block-post-template { gap: var(--wp--preset--spacing--50); }
.wk-carte-article {
	height: 100%; gap: .6rem; padding-bottom: 1.25rem; overflow: hidden;
	background: var(--carte-fond); border: 1px solid var(--carte-bord);
	border-radius: var(--wk-rayon-grand); box-shadow: var(--ombre-carte);
}
.wk-carte-article > :not(.wp-block-post-featured-image) { padding-inline: 1.25rem; }
.wk-carte-article .wp-block-post-featured-image { margin: 0; width: 100%; }
.wk-carte-article .wp-block-post-featured-image img { width: 100%; object-fit: cover; }
.wk-carte-article__categorie { padding-top: .5rem; font-size: var(--wp--preset--font-size--xs); font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.wk-carte-article__categorie a { color: var(--wk-or-texte); text-decoration: none; }
.wk-carte-article__titre { font-size: var(--wp--preset--font-size--l); }
.wk-carte-article__titre a { text-decoration: none; }
.wk-carte-article__titre a:hover { color: var(--wk-or-texte); }
.wk-carte-article .wp-block-post-excerpt { font-size: var(--wp--preset--font-size--s); color: var(--wk-taupe); }
.wk-carte-article .wp-block-post-excerpt p { margin: 0; }
.wp-block-query-pagination { margin-top: var(--wp--preset--spacing--70); gap: .5rem; font-weight: 700; }
.wp-block-query-pagination a { text-decoration: none; }
.wp-block-query-pagination-numbers .page-numbers {
	display: inline-grid; place-items: center; min-width: 2.5rem; height: 2.5rem; padding: 0 .5rem;
	border-radius: var(--wk-rayon-petit); text-decoration: none;
}
.wp-block-query-pagination-numbers .current { background: var(--wk-or); color: var(--wk-sur-or); }
.wk-texte-theme { color: var(--wk-taupe); }

/* ---------- Recherche ---------- */
.wk-recherche { display: flex; gap: .5rem; width: 100%; max-width: 32rem; }
.wk-recherche .wp-block-search__inside-wrapper { display: flex; gap: .5rem; width: 100%; }
.wk-recherche :is(input[type="search"], .wp-block-search__input) {
	flex: 1; min-width: 0; min-height: 3.25rem; padding: 0 1.25rem;
	border-radius: var(--wk-rayon-bouton); border: 1px solid var(--trait);
	background: var(--wk-creme); color: var(--wk-ecorce); font: inherit;
}
.wk-recherche .wp-block-search__button {
	margin: 0; padding: 0 1.4rem; border: 0; border-radius: var(--wk-rayon-bouton);
	background: var(--wk-or); color: var(--wk-sur-or); font-weight: 700; cursor: pointer;
}

/* ---------- 404 ---------- */
.wk-404 {
	display: flex; flex-direction: column; align-items: center; gap: var(--wp--preset--spacing--40);
	max-width: 36rem; margin-inline: auto; text-align: center;
	padding: var(--wp--preset--spacing--80) var(--wp--preset--spacing--50);
}
.wk-404 img { width: 9rem; height: auto; }
.wk-404 h1 { margin: 0; font-size: var(--wp--preset--font-size--xl); font-weight: 800; }
.wk-404 p { margin: 0; color: var(--wk-taupe); }
.wk-404__liens { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; justify-content: center; gap: .5rem; }
.wk-404__liens a {
	display: inline-block; padding: .5rem 1rem; border-radius: 100px; border: 1.5px solid var(--trait);
	font-weight: 700; text-decoration: none;
}
.wk-404__liens a:hover { border-color: var(--wk-or); }

/* ---------- Pages en blocs (La méthode, puis accueil, formations…) ----------
   Chaque partie est un groupe « section » pleine largeur ; son contenu est
   centré par la mise en page du bloc (largeur réglée dans l'éditeur). */
.wk-section { padding-block: var(--wp--preset--spacing--80); }
/* Largeur commune : tout bloc encadré posé directement dans une section (colonnes, grilles de cartes,
   carrousels, cursus, agenda, dossiers, listes d'articles, images, vidéos) prend la largeur de la pastille
   du menu (--wk-largeur, marges --wk-marge de theme.json), quelle que soit la largeur de contenu réglée
   dans l'éditeur (contentSize). Le texte courant (titres, paragraphes, citations, listes) garde sa largeur
   de lecture, centré dans la zone. Même poids que la règle de WordPress (.wp-container-… > :where(…)) et
   écrite après elle dans la page : c'est celle-ci qui gagne ; un bloc qui fixe lui-même sa largeur plus
   loin (.wk-faq, .wk-coupon, .wk-avis-carte--centre, .wk-histoire…) la garde. */
/* 21/09/2026 : la liste nommait les blocs un par un, ce qui laissait les conteneurs maison
   (.wk-offerts, rendus des raccourcis…) à la largeur du texte. Tout ce qui est un conteneur
   (div, section, figure, formulaire, tableau) prend la largeur du menu ; le texte (p, titres,
   listes) garde la largeur de lecture de theme.json. Les exceptions plus bas passent devant. */
.wk-section > :where(:is(div, section, figure, form, nav, table, .wk-zone):not(.alignfull, .alignleft, .alignright)) { max-width: var(--wk-largeur); }
/* Le texte posé directement dans une section garde la largeur de lecture (704 px, ~75 signes),
   même quand la section porte une largeur écrite à la main dans l'éditeur (76 rem, 52 rem…).
   Avant, le même paragraphe faisait 832 px ici et 1 216 px là. Les réglages plus fins passent devant. */
.wk-section > :where(p, h1, h2, h3, h4, h5, h6, ul, ol, dl, blockquote):not(.alignfull, .alignwide) { max-width: var(--wk-largeur-texte, 44rem); }
/* Exception (16/09/2026) : un encadré seul (liste, bandeau, carte unique, appel) est resserré et centré
   (--wk-largeur-encadre, 896 px). Seules les grilles de cartes gardent la largeur du menu. */
.wk-section > .wk-auteur-methode { max-width: var(--wk-largeur-encadre, 56rem); }
.wk-section > .wk-carte-depart { max-width: var(--wk-largeur-encadre, 56rem); }
/* Grilles réglées dans l'éditeur (auto-fill) : la zone étant plus large, les cartes se partagent toute la
   largeur (auto-fit) au lieu de laisser des colonnes vides à droite ; même largeur minimale qu'avant. */
.wk-section .wk-atouts.is-layout-grid { grid-template-columns: repeat(auto-fit, minmax(min(100%, 15rem), 1fr)); }
/* Étapes : la « boucle » sous les cartes occupe toute la ligne, ce qui empêche une grille auto-fit de replier
   ses colonnes vides ; en flex, les cartes se partagent la ligne quel que soit leur nombre. */
.wk-section .wk-etapes.is-layout-grid { display: flex; flex-wrap: wrap; }
.wk-section .wk-etapes.is-layout-grid > .wk-etape { flex: 1 1 15rem; min-width: 0; }
.wk-section .wk-etapes.is-layout-grid > .wk-boucle { flex: 1 1 100%; }
.wk-section .wk-legende-cartes.is-layout-grid { grid-template-columns: repeat(auto-fit, minmax(min(100%, 9rem), 1fr)); }
.wk-section .wk-atouts.wk-doss-conseils { grid-template-columns: repeat(auto-fit, minmax(min(100%, 22rem), 1fr)); } /* six conseils : trois par ligne, comme avant */
/* Le constat (chiffre + texte, sans cadre) reste un bloc de lecture : 64 rem, centré. */
.wk-section .wk-constat { max-width: var(--wk-largeur-encadre, 56rem); }
.wk-section--creme { background: var(--wk-creme); --wk-carte: var(--wk-sable); }
.wk-section--bande { background: var(--bande-fond); color: var(--bande-texte); }
.wk-section--bande :is(h2, h3, p, blockquote) { color: inherit; }
.wk-section > * + * { margin-block-start: 1.25rem; }
.wk-section h2.wp-block-heading { margin-block-start: .5rem; }
.wk-section h3.wp-block-heading { margin-block-start: 2.25rem; }
.wk-surtitre { margin: 0; font-size: var(--wp--preset--font-size--xs); font-weight: 800; letter-spacing: .1em; text-transform: uppercase; color: var(--wk-or-texte); }
.wk-section--bande .wk-surtitre { color: var(--bande-accent); }
.wk-chapeau { font-size: var(--wp--preset--font-size--l); color: var(--wk-taupe); }
.wk-note { font-size: var(--wp--preset--font-size--m); font-style: italic; color: var(--wk-taupe); max-width: 44rem; margin-inline: auto; }
.wk-texte-centre { text-align: center; color: var(--wk-taupe); }
.wk-section a:not(.wp-block-button__link) { text-decoration-line: underline; }

/* En-tête de page : la thèse */
.wk-hero-methode { text-align: center; padding-top: var(--wp--preset--spacing--70); }
.wk-hero-methode .wk-hero-methode__titre { font-size: clamp(2.25rem, 1.2rem + 4.6vw, 4.25rem); line-height: 1.02; letter-spacing: -0.04em; }
.wk-hero-methode__titre em { display: block; margin-top: .45em; font-style: normal; font-size: .56em; font-weight: 800; line-height: 1.15; letter-spacing: -0.02em; color: var(--wk-or-texte); }
.wk-hero-methode .wk-chapeau { max-width: 40rem; margin-inline: auto; }
.wk-hero-methode .wk-note { max-width: 34rem; margin-inline: auto; }
/* Variante avec photo (La méthode) : texte calé à gauche, Gauthier qui souffle à droite */
.wk-hero-methode--photo { text-align: left; padding-bottom: var(--wp--preset--spacing--70); }
.wk-hero-methode--photo .wp-block-columns { gap: 3rem; }
.wk-hero-methode--photo .wk-hero-methode__titre { font-size: clamp(2.25rem, 1.2rem + 3.2vw, 3.75rem); }
.wk-hero-methode--photo .wk-chapeau { margin-inline: 0; }
.wk-hero-methode--photo .wp-block-buttons { margin-top: 1.5rem; }
.wk-hero-methode__photo { margin: 0; }
.wk-hero-methode__photo img { display: block; width: 100%; height: auto; aspect-ratio: 4 / 5; object-fit: cover; border-radius: var(--wk-rayon-grand); }
@media (max-width: 47.9rem) { .wk-hero-methode__photo img { aspect-ratio: 4 / 3; object-position: 50% 4%; } }

/* Le chiffre */
.wk-grand-chiffre { margin: 0; font-size: clamp(5rem, 3rem + 9vw, 9.5rem); font-weight: 900; line-height: .85; letter-spacing: -0.06em; color: var(--bande-accent); }
.wk-grand-chiffre__legende { margin: .75rem 0 0; font-size: var(--wp--preset--font-size--l); font-weight: 700; }
.wk-constat { gap: var(--wp--preset--spacing--70); }

/* Citations */
.wk-citation { margin-inline: 0; padding: 0 0 0 1.25rem; border-left: 4px solid var(--wk-or); }
.wk-citation p { font-size: clamp(1.35rem, 1rem + 1.4vw, 1.9rem); font-weight: 800; line-height: 1.25; letter-spacing: -0.02em; }
.wk-citation--grande { padding: 0; border: 0; text-align: center; }
.wk-citation--grande p { font-size: clamp(2.2rem, 1.3rem + 4vw, 4rem); font-weight: 900; line-height: 1; letter-spacing: -0.04em; color: var(--bande-accent); }
.wk-section--bande .wk-citation--grande + p, .wk-section--bande .wk-citation--grande ~ p { text-align: center; }

/* Cartes (piliers) */
.wk-piliers { gap: var(--wp--preset--spacing--50); margin-top: var(--wp--preset--spacing--60); }
.wk-carte { padding: 2rem; border-radius: var(--wk-rayon-grand); background: var(--wk-carte); border: 1px solid var(--carte-bord); box-shadow: var(--ombre-carte); }
.wk-carte > * + * { margin-block-start: .9rem; }
.wk-carte h3.wp-block-heading { margin-block-start: .35rem; font-size: var(--wp--preset--font-size--xl); }
.wk-carte__num { margin: 0; font-size: var(--wp--preset--font-size--xs); font-weight: 800; letter-spacing: .1em; text-transform: uppercase; color: var(--wk-or-texte); }
.wk-puces { list-style: none; padding: 0; display: flex; flex-wrap: wrap; gap: .5rem; }
.wk-puces li { margin: 0; padding: .4rem .9rem; border-radius: 50px; background: var(--wk-creme); font-size: var(--wp--preset--font-size--s); font-weight: 700; }

/* Démonstration d'une carte Wakatoo */
/* Démonstration Wakatoo : sans cadre, centrée, cartes et lecteur au style de l'app */
.wk-demo-cartes { display: flex; justify-content: center; padding: 0; background: none; border: 0; }
.wk-demo-cartes .cards-container { align-items: center; margin: 0; }
.wk-demo-cartes .rythm-wrapper { align-items: center; cursor: default; }
.wk-demo-cartes .rythm-header { justify-content: center; margin-bottom: 1rem; }
.wk-demo-cartes .rythm-title { font-family: var(--wk-police); font-weight: 800; font-size: var(--wp--preset--font-size--m); color: var(--wk-ecorce); }
/* Cartes : le thème ne règle QUE leur taille et leur gouttière. Bordure, arrondi, police, graisse, ombre :
   feuille centrale du plugin wakatoo (css/wakatoo-basic.css), calée sur l'app (Gauthier, 21/09/2026). */
.wk-demo-cartes .cards { --card-size: 84px; --cards-gutter: 8px; justify-content: center; max-width: calc(var(--card-size) * 4 + var(--cards-gutter) * 3); }
@media (max-width: 30rem) { .wk-demo-cartes .cards { --card-size: 66px; } }
/* Lecteur : pilule beige, bouton or, comme la barre de pratique de l'app */
.wk-demo-cartes .wakatoo-audio-player { width: 100%; max-width: 22rem; margin: 1.25rem auto 0; padding: .4rem .9rem .4rem .4rem; gap: .7rem; border-radius: 50px; background: #E0D5C9; box-shadow: none; }
.wk-demo-cartes .wakatoo-audio-player .play-stop-button { width: 2.75rem; height: 2.75rem; border-radius: 50%; background: var(--wk-or); box-shadow: 0 2px 6px rgba(57, 41, 29, .2); }
.wk-demo-cartes .wakatoo-audio-player .play-stop-button::before { border-left-color: #fff; }
.wk-demo-cartes .wakatoo-audio-player .play-stop-button.playing::before { background-color: #fff; }
.wk-demo-cartes .wakatoo-audio-player .speed-button { width: 2.25rem; height: 2.25rem; margin-left: 0; background: rgba(255, 255, 255, .75); color: #39291D; font-family: var(--wk-police); font-weight: 800; }
.wk-demo-cartes .wakatoo-audio-player .speed-button[data-speed="2"] { background: #39291D; color: #fff; }
.wk-demo-cartes .audio-progress-container { height: 5px; background: rgba(57, 41, 29, .18); border-radius: 3px; }
.wk-demo-cartes .audio-progress-bar { background: var(--wk-or); }
/* La méthode (16/09/2026, Gauthier) : juste un bouton lecture centré sous le rythme, sans barre ni vitesse. */
.wk-section--wakatoo .wk-demo-cartes .wakatoo-audio-player { justify-content: center; width: auto; max-width: none; padding: 0; background: none; }
.wk-section--wakatoo .wk-demo-cartes .wakatoo-audio-player :is(.speed-button, .audio-progress-container) { display: none; }
.wp-block-audio audio { width: 100%; }

/* Code couleur des cartes : quatre vraies cartes dessinées (mêmes proportions que la démo), un clic joue le son (site.js) */
.wk-legende-cartes { gap: 1.25rem; margin-top: 1.5rem; }
/* Légende et encart Wakatoo dans la largeur du texte (16/09/2026) : cartes sur deux lignes, encart resserré comme les autres. */
.wk-section > .wk-legende-cartes { max-width: var(--wp--style--global--content-size, 44rem); }
.wk-section .wk-legende-cartes.is-layout-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); row-gap: 2rem; }
.wk-section > .wk-wakatoo { max-width: var(--wk-largeur-encadre, 56rem); }
.wk-legende { display: flex; flex-direction: column; align-items: center; gap: .8rem; text-align: center; }
.wk-legende p { margin: 0; }
.wk-legende .wk-legende__carte {
	display: grid; place-items: center; width: 84px; height: 84px; margin: 0; box-sizing: border-box; cursor: pointer;
	border: 3px solid var(--c, var(--wk-or)); border-radius: 10px; background: #FAF7F4; color: #39291D;
	font-family: var(--wk-police-cartes); font-size: 19px; font-weight: 700; box-shadow: 0 2px 4px rgba(57, 41, 29, .15);
	transition: transform .12s ease-out, box-shadow .12s ease-out;
}
.wk-legende .wk-legende__carte:hover, .wk-legende .wk-legende__carte:focus-visible { transform: translateY(-2px); box-shadow: 0 6px 14px rgba(57, 41, 29, .18); outline: none; }
.wk-legende .wk-legende__carte.est-joue { transform: scale(.94); background: color-mix(in srgb, var(--c) 18%, #FAF7F4); }
.wk-legende .wk-legende__nom { font-weight: 800; color: var(--c, var(--wk-ecorce)); font-size: var(--wp--preset--font-size--s); }
.wk-legende .wk-legende__texte { color: var(--wk-taupe); font-size: var(--wp--preset--font-size--s); max-width: 14rem; }
.wk-legende--vert { --c: #4A9B7E; }
.wk-legende--orange { --c: #E89A4C; }
.wk-legende--rouge { --c: #D86F4A; }
.wk-legende--jaune { --c: #E8B84C; }

/* Trois étapes (une vraie suite : numérotées) */
.wk-etapes { gap: var(--wp--preset--spacing--50); margin-top: var(--wp--preset--spacing--60); counter-reset: wk-etape; }
.wk-etape { counter-increment: wk-etape; padding: 1.75rem; border-radius: var(--wk-rayon-grand); background: var(--wk-creme); border: 1px solid var(--carte-bord); }
.wk-etape::before {
	content: counter(wk-etape); display: grid; place-items: center; width: 2.75rem; height: 2.75rem; margin-bottom: 1rem;
	border-radius: 50%; background: var(--wk-or); color: var(--wk-sur-or); font-weight: 900; font-size: var(--wp--preset--font-size--l);
}
/* Cercle vertueux : flèche entre les étapes, puis boucle de retour de la 3e vers la 1re */
.wk-etapes { position: relative; }
.wk-etape { position: relative; }
.wk-etape:has(+ .wk-etape)::after {
	content: ""; position: absolute; top: 1.75rem; right: -1.25rem; width: 2.5rem; height: 2.75rem; z-index: 1;
	background: no-repeat center / 1.6rem url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23C48738' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 12h14M13 6l6 6-6 6'/%3E%3C/svg%3E");
}
.wk-etapes .wk-boucle {
	grid-column: 1 / -1; display: flex; align-items: center; justify-content: center; gap: .6rem; margin: -.25rem 0 0; padding-top: .75rem;
	color: var(--wk-or-texte); font-weight: 800; font-size: var(--wp--preset--font-size--s);
}
.wk-etapes .wk-boucle::before, .wk-etapes .wk-boucle::after { content: ""; flex: 1; max-width: 12rem; border-top: 2px dashed var(--wk-or); opacity: .7; }
.wk-etapes .wk-boucle::before { border-left: 2px dashed var(--wk-or); height: .75rem; border-bottom-left-radius: 0; margin-top: -.75rem; border-top: none; border-bottom: 2px dashed var(--wk-or); border-bottom-left-radius: 1rem; }
.wk-etapes .wk-boucle::after { border-right: 2px dashed var(--wk-or); height: .75rem; margin-top: -.75rem; border-top: none; border-bottom: 2px dashed var(--wk-or); border-bottom-right-radius: 1rem; }
@media (max-width: 47.9rem) {
	.wk-etape:has(+ .wk-etape)::after { top: auto; right: auto; bottom: -1.9rem; left: 50%; transform: translateX(-50%) rotate(90deg); height: 1.75rem; }
	.wk-etapes .wk-boucle::before, .wk-etapes .wk-boucle::after { display: none; }
}
.wk-etape h3.wp-block-heading { margin: 0 0 .5rem; }
.wk-etape p { margin: 0; color: var(--wk-taupe); }

/* Parcours des formations */
.wk-parcours { gap: var(--wp--preset--spacing--50); margin-top: var(--wp--preset--spacing--60); }
.wk-parcours__etape { display: grid; align-content: start; gap: .5rem; padding: 1.5rem 1.6rem; border-radius: var(--wk-rayon-grand); background: var(--wk-creme); border: 1px solid var(--carte-bord); }
.wk-parcours__etape h3.wp-block-heading { margin: 0; font-size: var(--wp--preset--font-size--l); }
.wk-parcours__etape h3 a { text-decoration: none; }
.wk-parcours__etape h3 a:hover { color: var(--wk-or-texte); }
.wk-parcours__etape p { margin: 0; color: var(--wk-taupe); font-size: var(--wp--preset--font-size--s); }
.wk-parcours__etape .wk-parcours__niveau { justify-self: start; padding: .3rem .75rem; border-radius: 50px; background: var(--wk-sable); color: var(--wk-ecorce); font-size: var(--wp--preset--font-size--xs); font-weight: 800; letter-spacing: .04em; }
.wk-parcours__etape--offert { background: var(--wk-or); border-color: transparent; }
.wk-parcours__etape--offert :is(h3, h3 a, p) { color: var(--wk-sur-or); }
.wk-parcours__etape--offert .wk-parcours__niveau { background: rgba(255, 255, 255, .22); color: var(--wk-sur-or); }
.wk-parcours__etape--parallele { border-style: dashed; border-color: var(--trait); }
/* Contours plus visibles (le fond crème se confond avec la page) */
.wk-parcours__etape, .wk-etape { border-color: rgba(57, 41, 29, .16); box-shadow: 0 1px 2px rgba(57, 41, 29, .06); }
/* Le cursus : un grand numéro d'année par carte, les cinq étapes en escalier qui monte, reliées par des flèches ;
   le cycle traditionnel en dessous, sur toute la largeur */
.wk-parcours { counter-reset: annee; }
.wk-parcours__etape { position: relative; padding: 1.75rem 1.6rem 1.9rem; gap: .65rem; }
.wk-parcours__etape:not(.wk-parcours__etape--offert):not(.wk-parcours__etape--parallele) { counter-increment: annee; }
.wk-parcours__etape:not(.wk-parcours__etape--parallele)::before {
	content: counter(annee); display: block; font-family: var(--wk-police-titres, var(--wk-police)); font-weight: 900; font-size: 3.4rem; line-height: 1;
	color: var(--wk-or); letter-spacing: -.03em; margin-bottom: .2rem;
}
.wk-parcours__etape.wk-parcours__etape--offert::before { content: "\2605"; color: rgba(255, 255, 255, .9); }
/* Illustration de la formation en haut de la carte, bord à bord (17/09/2026) */
.wk-parcours__etape .wk-parcours__image { order: -1; justify-self: stretch; width: auto; max-width: none; margin: -1.75rem -1.6rem .5rem; overflow: hidden; border-radius: var(--wk-rayon-grand) var(--wk-rayon-grand) 0 0; }
.wk-parcours__etape .wk-parcours__image img { display: block; width: 100%; aspect-ratio: 3 / 2; object-fit: cover; }
/* L'image suit l'apparition de sa carte : pas le léger zoom des visuels (.wk-anime), qui la laissait en retrait du bord */
.wk-anime .wk-parcours__etape .wk-parcours__image.wp-block-image { scale: none; }
@media (min-width: 64rem) {
	.wk-section .wk-parcours { grid-template-columns: repeat(5, 1fr); gap: 2.4rem; align-items: start; }
	.wk-parcours__etape h3.wp-block-heading { font-size: var(--wp--preset--font-size--m); }
	/* Escalier : chaque année un cran plus haut */
	.wk-parcours__etape:nth-child(1) { margin-top: 10rem; }
	.wk-parcours__etape:nth-child(2) { margin-top: 7.5rem; }
	.wk-parcours__etape:nth-child(3) { margin-top: 5rem; }
	.wk-parcours__etape:nth-child(4) { margin-top: 2.5rem; }
	.wk-parcours__etape:nth-child(5) { margin-top: 0; }
	.wk-parcours__etape:not(.wk-parcours__etape--parallele):has(+ .wk-parcours__etape:not(.wk-parcours__etape--parallele))::after {
		content: ""; position: absolute; top: 1.2rem; right: -2.5rem; width: 2.6rem; height: 2.6rem; z-index: 1; transform: rotate(-35deg);
		background: no-repeat center / 2.1rem url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23C48738' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 12h14M13 6l6 6-6 6'/%3E%3C/svg%3E");
	}
	.wk-parcours__etape--parallele { grid-column: 1 / -1; display: grid; grid-template-columns: auto auto 1fr; align-items: center; gap: 1.5rem; padding: 1.4rem 1.75rem; margin-top: 1rem; }
	.wk-parcours__etape--parallele h3.wp-block-heading { margin: 0; }
	.wk-parcours__etape--parallele { grid-template-columns: 6.5rem auto auto 1fr; }
	.wk-parcours__etape--parallele .wk-parcours__image { margin: -.4rem 0; border-radius: var(--wk-rayon); }
}
@media (max-width: 47.9rem) {
	.wk-section .wk-parcours { gap: 2.2rem; }
	.wk-parcours__etape:not(.wk-parcours__etape--parallele):has(+ .wk-parcours__etape:not(.wk-parcours__etape--parallele))::after {
		content: ""; position: absolute; bottom: -1.9rem; left: 50%; transform: translateX(-50%) rotate(90deg); width: 1.6rem; height: 1.6rem;
		background: no-repeat center / 1.2rem url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23C48738' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 12h14M13 6l6 6-6 6'/%3E%3C/svg%3E");
	}
}

/* Trois colonnes de texte (bandeau de réassurance) */
/* Une icône par colonne (tracés simples, couleur d'accent de la bande) */
.wk-colonnes-texte .wk-colonne::before { content: ""; display: block; width: 3rem; height: 3rem; margin-bottom: 1rem; border-radius: 50%; background: rgba(255, 255, 255, .1) no-repeat center / 1.6rem var(--ico); }
.wk-colonne--musicien { --ico: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23E3A862' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 18V5l12-2v13'/%3E%3Ccircle cx='6' cy='18' r='3'/%3E%3Ccircle cx='18' cy='16' r='3'/%3E%3C/svg%3E"); }
.wk-colonne--temps { --ico: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23E3A862' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M12 7v5l3 2'/%3E%3C/svg%3E"); }
.wk-colonne--suivi { --ico: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23E3A862' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 12a8 8 0 0 1-11.6 7.1L4 20l1-4.6A8 8 0 1 1 21 12z'/%3E%3Cpath d='M8 12h.01M12 12h.01M16 12h.01'/%3E%3C/svg%3E"); }
.wk-colonnes-texte { gap: var(--wp--preset--spacing--60); margin-top: var(--wp--preset--spacing--60); }
.wk-colonnes-texte h3.wp-block-heading { margin-top: 0; }
.wk-section--bande .wk-colonnes-texte p { opacity: .85; }
.wk-section--bande a { color: inherit; }

/* Deux colonnes, auteur, appel final */
.wk-deux-colonnes { gap: var(--wp--preset--spacing--70); }
.wk-deux-colonnes h3.wp-block-heading { margin-top: 0; }
.wk-auteur-methode { gap: var(--wp--preset--spacing--50); margin-top: var(--wp--preset--spacing--70); padding: 1.5rem; border-radius: var(--wk-rayon-grand); background: var(--wk-creme); border: 1px solid var(--carte-bord); }
.wk-auteur-methode h3.wp-block-heading { margin-top: 0; }
.wk-auteur-methode__photo img { width: 8rem; height: 8rem; border-radius: 50%; object-fit: cover; }
.wk-appel { text-align: center; }
.wk-appel h2.wp-block-heading { font-size: clamp(1.9rem, 1.2rem + 2.6vw, 2.9rem); }
@media (max-width: 781px) {
	.wk-auteur-methode__photo img { margin-inline: auto; }
	.wk-auteur-methode { text-align: center; }
}

/* ---------- Éditeur ---------- */
.wk-apercu-serveur a { pointer-events: none; }

@media (prefers-reduced-motion: reduce) {
	html { scroll-behavior: auto; }
	*, *::before, *::after { transition: none !important; animation: none !important; }
}

/* Mode sombre des cartes dessinées (mêmes valeurs que l'app) */
@media (prefers-color-scheme: dark) {
	body.wk-sombre .wk-legende .wk-legende__carte { background: #2C2C2E; color: #F2F2F7; box-shadow: 0 2px 6px rgba(0, 0, 0, .45); }
	body.wk-sombre .wk-legende .wk-legende__carte.est-joue { background: color-mix(in srgb, var(--c) 30%, #2C2C2E); }
	body.wk-sombre .wk-demo-cartes .rythm-title { color: #F2F2F7; }
	body.wk-sombre .wk-demo-cartes .wakatoo-audio-player { background: #3A3A3C; }
	body.wk-sombre .wk-demo-cartes .wakatoo-audio-player .speed-button { background: rgba(255, 255, 255, .14); color: #F2F2F7; }
	body.wk-sombre .wk-demo-cartes .wakatoo-audio-player .speed-button[data-speed="2"] { background: #F2F2F7; color: #1C1C1E; }
	body.wk-sombre .wk-demo-cartes .audio-progress-container { background: rgba(255, 255, 255, .16); }
	body.wk-sombre .wk-parcours__etape, body.wk-sombre .wk-etape { border-color: rgba(255, 255, 255, .14); box-shadow: none; }
	body.wk-sombre .wk-parcours__etape--offert { border-color: transparent; }
	body.wk-sombre .wk-legende--vert { --c: #6FB99A; }
	body.wk-sombre .wk-legende--orange { --c: #E89A4C; }
	body.wk-sombre .wk-legende--rouge { --c: #E08A66; }
	body.wk-sombre .wk-legende--jaune { --c: #E8B84C; }
}

/* Légende du code couleur en mode daltonien (mêmes couleurs que le plugin / l'app) */
html.wakatoo-mode-daltonien .wk-legende--vert { --c: #0154DC; }
html.wakatoo-mode-daltonien .wk-legende--orange { --c: #E69900; }
html.wakatoo-mode-daltonien .wk-legende--rouge { --c: #DB3E08; }
html.wakatoo-mode-daltonien .wk-legende--jaune { --c: #E3DC00; }
.wk-interrupteur { margin: .25rem 0 0; }
.wk-interrupteur .wakatoo-daltonien { font-family: var(--wk-police); font-size: var(--wp--preset--font-size--s); color: var(--wk-taupe); }

/* Titres des blocs de cartes Wakatoo : centrés, bien visibles */
.wk-section .wk-titre-cartes { margin-top: var(--wp--preset--spacing--60); margin-bottom: 1rem; font-size: var(--wp--preset--font-size--l); color: var(--wk-ecorce); }
.wk-interrupteur.wk-texte-centre { text-align: center; }

/* Lecteur de démo : pas de bouton de vitesse (il faisait planter la lecture) ; de l'air avant la suite */
.wk-demo-cartes .wakatoo-audio-player .speed-button { display: none; }
.wk-demo-cartes { margin-bottom: var(--wp--preset--spacing--60); }

/* Encart Wakatoo : Maître Towaki, logo, citation et lien vers l'app */
.wk-wakatoo { position: relative; isolation: isolate; gap: 2.5rem; margin-top: var(--wp--preset--spacing--60); padding: 2rem 2.25rem; }
/* Le fond de l'encart est un calque (::after) pour que les cartes en filigrane (::before) passent derrière et dépassent */
.wk-wakatoo::after { content: ""; position: absolute; inset: 0; z-index: -1; border-radius: var(--wk-rayon-grand); background: var(--wk-sable); border: 1px solid rgba(57, 41, 29, .12); }
.wk-wakatoo::before { content: ""; position: absolute; z-index: -1; left: -6rem; bottom: -4.5rem; width: 380px; height: 330px; pointer-events: none; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='460' height='400' fill='none' stroke='%2339291D' stroke-width='5'%3E%3Cg transform='rotate(-12 230 200)' stroke-opacity='.05'%3E%3Crect x='30' y='40' width='110' height='110' rx='14'/%3E%3Crect x='160' y='40' width='110' height='110' rx='14'/%3E%3Crect x='290' y='40' width='110' height='110' rx='14'/%3E%3Crect x='95' y='190' width='110' height='110' rx='14'/%3E%3Crect x='225' y='190' width='110' height='110' rx='14'/%3E%3Crect x='355' y='190' width='110' height='110' rx='14'/%3E%3C/g%3E%3C/svg%3E") no-repeat center / contain; }
@media (max-width: 47.9rem) { .wk-wakatoo::before { left: -4rem; bottom: -3rem; width: 260px; height: 225px; } }
.wk-wakatoo .wk-wakatoo__visuel { flex: 0 0 10rem; display: grid; justify-items: center; gap: .75rem; }
.wk-wakatoo .wk-wakatoo__towaki { margin: 0; }
.wk-wakatoo .wk-wakatoo__towaki img { width: 9.5rem; max-width: 100%; height: auto; display: block; }
.wk-wakatoo .wk-wakatoo__texte { flex: 1 1 auto; min-width: 0; }
.wk-wakatoo .wk-wakatoo__logo { margin: 0; }
.wk-wakatoo .wk-wakatoo__logo img { width: 8rem; max-width: 100%; height: auto; display: block; }
.wk-wakatoo .wk-citation { margin-top: 0; }
.wk-wakatoo .wp-block-buttons { margin-top: 1rem; }
@media (max-width: 47.9rem) {
	.wk-wakatoo { flex-wrap: wrap; justify-content: center; text-align: left; padding: 1.5rem; }
	.wk-wakatoo .wk-wakatoo__visuel { flex-basis: 9rem; }
}
@media (prefers-color-scheme: dark) {
	body.wk-sombre .wk-wakatoo__logo img { filter: brightness(0) invert(.95); }
}

/* Textures de fond : grain de papier (sections crème), halos de lumière ambiants
   (bandes sombres et hero, comme les cercles flous de l'app), cartes Wakatoo en
   filigrane sur toute la section Wakatoo. SVG et dégradés en CSS, sous le contenu. */
.wk-section--creme, .wk-section--bande, .wk-hero-methode { position: relative; isolation: isolate; }
.wk-section--creme::before, .wk-section--bande::before, .wk-hero-methode::before {
	content: ""; position: absolute; inset: 0; z-index: -1; pointer-events: none;
}
.wk-section--creme::before { background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='240' height='240'%3E%3Cfilter id='g'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 .22 0 0 0 0 .16 0 0 0 0 .11 0 0 0 .24 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23g)'/%3E%3C/svg%3E"); background-size: 240px 240px; }
/* Halos : taches de lumière très diffuses, de tailles et de positions différentes (jamais symétriques),
   aux couleurs des cartes ; dérive très lente */
.wk-section--bande::before {
	background:
		radial-gradient(38% 34% at 10% 28%, rgba(216, 111, 74, .10) 0%, rgba(216, 111, 74, .035) 40%, transparent 68%),
		radial-gradient(30% 42% at 90% 78%, rgba(232, 184, 76, .08) 0%, rgba(232, 184, 76, .025) 40%, transparent 68%),
		radial-gradient(22% 22% at 68% 6%, rgba(139, 90, 142, .07) 0%, transparent 65%);
	animation: wk-halo 30s ease-in-out infinite alternate;
}
.wk-hero-methode::before {
	background:
		radial-gradient(34% 40% at 6% 72%, rgba(232, 154, 76, .08) 0%, rgba(232, 154, 76, .025) 40%, transparent 68%),
		radial-gradient(30% 30% at 94% 18%, rgba(232, 184, 76, .07) 0%, rgba(232, 184, 76, .02) 40%, transparent 68%),
		radial-gradient(18% 18% at 58% 96%, rgba(216, 111, 74, .04) 0%, transparent 65%);
	animation: wk-halo 30s ease-in-out infinite alternate;
}
@keyframes wk-halo {
	from { transform: translate3d(0, 0, 0) scale(1); }
	to { transform: translate3d(1.5%, -2%, 0) scale(1.04); }
}
@media (prefers-reduced-motion: reduce) { .wk-section--bande::before, .wk-hero-methode::before { animation: none; } }
@media (prefers-color-scheme: dark) {
	body.wk-sombre .wk-section--creme::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='240' height='240'%3E%3Cfilter id='g'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 .95 0 0 0 0 .93 0 0 0 0 .9 0 0 0 .14 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23g)'/%3E%3C/svg%3E"); }
	body.wk-sombre .wk-wakatoo::after { background: #252527; border-color: rgba(255, 255, 255, .1); }
	body.wk-sombre .wk-wakatoo::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='460' height='400' fill='none' stroke='%23F2F2F7' stroke-width='5'%3E%3Cg transform='rotate(-12 230 200)' stroke-opacity='.05'%3E%3Crect x='30' y='40' width='110' height='110' rx='14'/%3E%3Crect x='160' y='40' width='110' height='110' rx='14'/%3E%3Crect x='290' y='40' width='110' height='110' rx='14'/%3E%3Crect x='95' y='190' width='110' height='110' rx='14'/%3E%3Crect x='225' y='190' width='110' height='110' rx='14'/%3E%3Crect x='355' y='190' width='110' height='110' rx='14'/%3E%3C/g%3E%3C/svg%3E"); }
}

/* ===== Accueil ===== */
.wk-hero-accueil { padding-block: var(--wp--preset--spacing--70) var(--wp--preset--spacing--80); }
.wk-hero-accueil .wp-block-columns { gap: 3rem; }
.wk-hero-accueil h1.wp-block-heading { margin: 0 0 .75rem; font-size: clamp(2.5rem, 1.6rem + 3.2vw, 4.25rem); line-height: 1.02; letter-spacing: -.02em; }
.wk-hero-accueil .wk-chapeau { text-align: left; margin-inline: 0; font-weight: 800; color: var(--wk-or-texte); }
.wk-hero-accueil .wp-block-buttons { margin-top: 1.5rem; }
.wk-hero-accueil .wk-hero-accueil__photo { margin: 0; }
.wk-hero-accueil .wk-hero-accueil__photo img { width: 100%; aspect-ratio: 4 / 5; object-fit: cover; border-radius: var(--wk-rayon-grand); box-shadow: 0 20px 50px rgba(57, 41, 29, .18); }
@media (max-width: 47.9rem) { .wk-hero-accueil .wk-hero-accueil__photo img { aspect-ratio: 4 / 3; } }

/* Ligne de preuve (avis Google, élèves) */
.wk-preuve { display: flex; flex-wrap: wrap; align-items: center; gap: .35rem .5rem; margin-top: 1.25rem; font-size: var(--wp--preset--font-size--s); color: var(--wk-taupe); }
.wk-preuve strong { color: inherit; }
.wk-preuve__etoiles { color: var(--wk-or); letter-spacing: .12em; font-size: 1.05em; }
/* .wk-preuve--pile : ancienne ligne d'avis, remplacée par le bloc de confiance ci-dessus.
   Gardée pour les pages pas encore reprises. */
.wk-preuve--pile { display: block; line-height: 1.5; }
.wk-section--bande .wk-preuve { justify-content: center; color: var(--bande-texte); opacity: .9; }
.wk-section--bande .wk-preuve__etoiles { color: var(--bande-accent); }

/* Pastille de niveau / de type */
.wk-badge { display: inline-block; padding: .3rem .75rem; border-radius: 50px; background: var(--wk-sable); color: var(--wk-ecorce); font-size: var(--wp--preset--font-size--xs); font-weight: 800; letter-spacing: .04em; }

/* Deux gestes (bande sombre) */
.wk-gestes { gap: 1.5rem; margin-top: 2rem; }
.wk-geste { padding: 1.75rem; border-radius: var(--wk-rayon-grand); background: rgba(255, 255, 255, .06); border: 1px solid rgba(255, 255, 255, .12); }
.wk-geste h3.wp-block-heading { margin: .5rem 0 .6rem; }
.wk-geste p { margin: 0; }
.wk-section--bande .wk-gestes + .wp-block-buttons { margin-top: 2rem; }

/* Cours offerts */
.wk-cours-gratuits { gap: 1.5rem; margin-top: 2rem; }
.wk-cours-gratuit { display: grid; align-content: start; gap: .6rem; padding: 0 0 1.6rem; overflow: hidden; border-radius: var(--wk-rayon-grand); background: var(--wk-carte); border: 1px solid rgba(57, 41, 29, .12); }
.wk-cours-gratuit > * { margin-inline: 1.4rem; }
.wk-cours-gratuit > .wp-block-image { margin: 0 0 .6rem; }
.wk-cours-gratuit .wp-block-image img { width: 100%; aspect-ratio: 16 / 10; object-fit: cover; display: block; }
.wk-cours-gratuit .wk-badge { justify-self: start; }
.wk-cours-gratuit h3.wp-block-heading { margin: .25rem 0 0; font-size: var(--wp--preset--font-size--l); }
.wk-cours-gratuit p { margin: 0; color: var(--wk-taupe); font-size: var(--wp--preset--font-size--s); }
.wk-cours-gratuit .simple-lms-popup-container { margin-top: .75rem; }
.wk-cours-gratuit .simple-lms-popup-trigger, .wk-cours-gratuit .simple-lms-popup-trigger:hover {
	display: inline-block; padding: .7rem 1.4rem; border: 0; border-radius: var(--wk-rayon-bouton); background: var(--wk-or); color: var(--wk-sur-or);
	font: 800 var(--wp--preset--font-size--s) / 1.2 var(--wk-police); cursor: pointer; box-shadow: none; text-transform: none; letter-spacing: 0;
}
.wk-cours-gratuit .simple-lms-popup-trigger:hover { background: var(--wk-or-bord); }

/* Témoignages (bande sombre) */
.wk-temoignages { gap: 1.5rem; margin-top: 2rem; }
.wk-temoignage { display: grid; align-content: space-between; gap: 1.25rem; padding: 1.75rem; border-radius: var(--wk-rayon-grand); background: rgba(255, 255, 255, .06); border: 1px solid rgba(255, 255, 255, .12); }
.wk-temoignage p { margin: 0; }
.wk-temoignage__texte { font-size: var(--wp--preset--font-size--m); line-height: 1.55; }
.wk-temoignage__auteur { display: flex; align-items: center; gap: .75rem; font-weight: 800; font-size: var(--wp--preset--font-size--s); opacity: .9; }
.wk-temoignage__auteur img { width: 2.75rem; height: 2.75rem; border-radius: 50%; object-fit: cover; flex: none; }

/* Dossiers et derniers articles */
.wk-dossiers { gap: 1.5rem; margin-top: 2rem; }
.wk-dossier { display: grid; align-content: start; gap: .6rem; padding: 1.6rem; border-radius: var(--wk-rayon-grand); background: var(--wk-creme); border: 1px solid rgba(57, 41, 29, .12); }
.wk-dossier .wk-badge { justify-self: start; }
.wk-dossier h3.wp-block-heading { margin: .25rem 0 0; font-size: var(--wp--preset--font-size--l); }
.wk-dossier h3 a { text-decoration: none; }
.wk-dossier h3 a:hover { color: var(--wk-or-texte); }
.wk-dossier p { margin: 0; color: var(--wk-taupe); font-size: var(--wp--preset--font-size--s); }
.wk-section .wk-titre-articles { margin-top: var(--wp--preset--spacing--70); }
.wk-section .wk-cartes-articles { margin-top: 1.5rem; }
.wk-section .wk-cartes-articles .wp-block-post-template { gap: var(--wp--preset--spacing--50); }
.wk-section .wk-cartes-articles + .wp-block-buttons { margin-top: 2rem; }
@media (prefers-color-scheme: dark) {
	body.wk-sombre .wk-cours-gratuit, body.wk-sombre .wk-dossier { border-color: rgba(255, 255, 255, .12); }
}

/* Boutons contour sur fond sombre : texte et bord clairs */
.wk-section--bande .is-style-contour .wp-block-button__link { color: var(--bande-texte); border-color: var(--bande-accent); background: transparent; }
.wk-section--bande .is-style-contour .wp-block-button__link:hover { background: rgba(255, 255, 255, .08); color: var(--bande-texte); }
/* Titres de cartes (articles, dossiers, cursus) : pas de soulignement */
.wk-section :is(.wk-carte-article, .wk-dossier, .wk-parcours__etape) a:not(.wp-block-button__link) { text-decoration: none; }
.wk-section :is(.wk-carte-article, .wk-dossier, .wk-parcours__etape) a:not(.wp-block-button__link):hover { text-decoration: underline; }

/* ===== Accueil, version « un objectif » : le formulaire d'inscription au cours offert ===== */
.wk-hero-accueil .wk-chapeau { font-weight: 500; color: var(--wk-taupe); font-size: var(--wp--preset--font-size--m); }
.wk-hero-accueil .wk-surtitre { margin-bottom: .75rem; }
/* Formulaire Simple LMS habillé aux couleurs du thème : e-mail, prénom, bouton pilule */
.wk-inscription { margin-top: 1.5rem; }
.wk-inscription .registration-form { display: grid; grid-template-columns: 1fr 1fr auto; gap: .75rem; align-items: end; }
.wk-inscription .form-group { display: grid; gap: .3rem; margin: 0; }
.wk-inscription .form-group label { font-size: var(--wp--preset--font-size--xs); font-weight: 800; color: var(--wk-taupe); letter-spacing: .02em; }
.wk-inscription .form-group input { width: 100%; box-sizing: border-box; height: 3rem; padding: 0 1rem; margin: 0; border: 1.5px solid rgba(57, 41, 29, .22); border-radius: var(--wk-rayon-bouton); background: #FAF7F4; color: var(--wk-ecorce); font: 500 var(--wp--preset--font-size--s) / 1 var(--wk-police); }
.wk-inscription .form-group input:focus { outline: none; border-color: var(--wk-or); box-shadow: 0 0 0 3px rgba(196, 135, 56, .25); }
.wk-inscription .simple-lms-hp { position: absolute; left: -9999px; }
.wk-inscription .btn-register, .wk-inscription .btn-register:hover { height: 3rem; padding: 0 1.5rem; margin: 0; border: 0; border-radius: var(--wk-rayon-bouton); background: var(--wk-or); color: var(--wk-sur-or); font: 800 var(--wp--preset--font-size--s) / 1 var(--wk-police); cursor: pointer; white-space: nowrap; text-transform: none; letter-spacing: 0; }
.wk-inscription .btn-register:hover { background: var(--wk-or-bord); }
.wk-inscription .form-message { grid-column: 1 / -1; margin: 0; }
.wk-inscription .registration-info { margin-top: .6rem; }
.wk-inscription .registration-info p, .wk-inscription .registration-info small { margin: 0; font-size: var(--wp--preset--font-size--xs); color: var(--wk-taupe); }
.wk-inscription .simple-lms-continue-container { margin: 0; }
@media (max-width: 47.9rem) { .wk-inscription .registration-form { grid-template-columns: 1fr; } .wk-inscription .btn-register { width: 100%; } }
/* Formulaire de fin de page, centré sur fond sombre */
.wk-inscription--centre { max-width: 40rem; margin-inline: auto; text-align: left; }
.wk-inscription--centre .registration-form { grid-template-columns: 1fr 1fr; }
.wk-inscription--centre .btn-register { grid-column: 1 / -1; width: 100%; }
.wk-section--bande .wk-inscription .form-group label, .wk-section--bande .wk-inscription .registration-info small { color: var(--bande-texte); opacity: .85; }
.wk-section--bande .wk-inscription .form-group input { border-color: rgba(255, 255, 255, .25); }
.wk-section--bande .wk-inscription .btn-register { background: var(--bande-accent); color: #2A1C12; }
.wk-appel .wk-inscription { margin-top: 1.75rem; }
/* Leçon vidéo (vignette, lecteur au clic) */
.wk-section .wk-video-lecon { margin: 1.75rem auto 0; max-width: var(--wk-largeur-encadre, 56rem); }
.wk-section .wk-video-lecon .wp-block-embed__wrapper, .wk-section .wk-video-lecon .wk-video { border-radius: var(--wk-rayon-grand); overflow: hidden; }
/* Communauté : photo de stage + texte */
.wk-communaute { gap: 2.5rem; margin-top: 1.5rem; }
.wk-communaute .wk-communaute__photo { margin: 0; }
.wk-communaute .wk-communaute__photo img { width: 100%; aspect-ratio: 4 / 3; object-fit: cover; border-radius: var(--wk-rayon-grand); box-shadow: 0 16px 40px rgba(57, 41, 29, .16); }
.wk-communaute p { font-size: var(--wp--preset--font-size--m); }
.wk-section .wk-temoignages + .wk-preuve { justify-content: center; margin-top: 1.5rem; }
/* Cartes d'objections : mêmes cartes que les dossiers, citations en titre */
.wk-dossier h3.wp-block-heading { font-size: var(--wp--preset--font-size--m); }
.wk-section .wk-et-apres { margin-top: var(--wp--preset--spacing--60); font-size: var(--wp--preset--font-size--m); }
/* Témoignages hors bande sombre : carte crème */
.wk-section:not(.wk-section--bande) .wk-temoignage { background: var(--wk-creme); border-color: rgba(57, 41, 29, .12); }
@media (prefers-color-scheme: dark) {
	body.wk-sombre .wk-inscription .form-group input { background: #2C2C2E; color: #F2F2F7; border-color: rgba(255, 255, 255, .18); }
	body.wk-sombre .wk-section:not(.wk-section--bande) .wk-temoignage { border-color: rgba(255, 255, 255, .12); }
}

/* ===== Accueil v3 : mosaïque de portraits d'élèves ===== */
.wk-hero-accueil h1.wp-block-heading { font-size: clamp(2.3rem, 1.4rem + 3vw, 3.9rem); }
/* ==================================================================
   BLOC DE CONFIANCE (.wk-confiance) — repris tel quel de wakatoo.com
   (Gauthier, 21/09/2026 : « va voir le code du site wakatoo »).
   Deux chiffres en gros, séparés d'un filet, entre deux branches de laurier.
   Les lauriers sont un masque : ils prennent la couleur du thème, donc ils
   suivent le mode sombre sans seconde image.
   ================================================================== */
.wk-confiance { display: flex; align-items: center; justify-content: center; gap: 1.1rem; margin-top: 1.5rem; }
.wk-confiance::before,
.wk-confiance::after {
	content: ""; flex: 0 0 auto; width: 1.7rem; height: 3.4rem;
	background: var(--wk-or-texte);
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 64'%3E%3Cpath d='M22 62C8 52 5 34 14 6' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round'/%3E%3Cellipse cx='8.5' cy='51' rx='2.6' ry='6' transform='rotate(-55 8.5 51)'/%3E%3Cellipse cx='18.5' cy='49' rx='2.6' ry='6' transform='rotate(35 18.5 49)'/%3E%3Cellipse cx='4.5' cy='38' rx='2.6' ry='6' transform='rotate(-35 4.5 38)'/%3E%3Cellipse cx='14.5' cy='37' rx='2.6' ry='6' transform='rotate(30 14.5 37)'/%3E%3Cellipse cx='4.8' cy='22' rx='2.6' ry='6' transform='rotate(-20 4.8 22)'/%3E%3Cellipse cx='14.3' cy='22' rx='2.6' ry='6' transform='rotate(25 14.3 22)'/%3E%3Cellipse cx='7.5' cy='11' rx='2.4' ry='5.5' transform='rotate(-10 7.5 11)'/%3E%3Cellipse cx='16.2' cy='11.5' rx='2.4' ry='5.5' transform='rotate(30 16.2 11.5)'/%3E%3Cellipse cx='14.5' cy='3.8' rx='2' ry='4' transform='rotate(15 14.5 3.8)'/%3E%3C/svg%3E") center / contain no-repeat;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 64'%3E%3Cpath d='M22 62C8 52 5 34 14 6' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round'/%3E%3Cellipse cx='8.5' cy='51' rx='2.6' ry='6' transform='rotate(-55 8.5 51)'/%3E%3Cellipse cx='18.5' cy='49' rx='2.6' ry='6' transform='rotate(35 18.5 49)'/%3E%3Cellipse cx='4.5' cy='38' rx='2.6' ry='6' transform='rotate(-35 4.5 38)'/%3E%3Cellipse cx='14.5' cy='37' rx='2.6' ry='6' transform='rotate(30 14.5 37)'/%3E%3Cellipse cx='4.8' cy='22' rx='2.6' ry='6' transform='rotate(-20 4.8 22)'/%3E%3Cellipse cx='14.3' cy='22' rx='2.6' ry='6' transform='rotate(25 14.3 22)'/%3E%3Cellipse cx='7.5' cy='11' rx='2.4' ry='5.5' transform='rotate(-10 7.5 11)'/%3E%3Cellipse cx='16.2' cy='11.5' rx='2.4' ry='5.5' transform='rotate(30 16.2 11.5)'/%3E%3Cellipse cx='14.5' cy='3.8' rx='2' ry='4' transform='rotate(15 14.5 3.8)'/%3E%3C/svg%3E") center / contain no-repeat;
}
.wk-confiance::after { transform: scaleX(-1); }
.wk-section .wk-confiance p.wk-confiance__stat,
.wk-confiance__stat {
	display: flex; flex-direction: column; align-items: center; margin: 0;
	font-size: var(--wp--preset--font-size--xs); font-weight: 600; line-height: 1.25;
	color: var(--wk-taupe); text-align: center;
}
.wk-confiance__stat strong { font-size: 1.6rem; font-weight: 900; line-height: 1.05; letter-spacing: -.02em; color: var(--wk-or-texte); }
.wk-confiance__stat + .wk-confiance__stat { padding-left: 1.1rem; border-left: 1px solid var(--wk-trait); }
/* Dans un haut de page aligné à gauche, le bloc reste à gauche ; ailleurs il se centre tout seul. */
.wk-hero-accueil .wk-confiance { justify-content: flex-start; }
/* Sur la bande sombre et la carte du cours offert, les lauriers prennent la couleur d'accent. */
.wk-section--bande .wk-confiance::before,
.wk-section--bande .wk-confiance::after,
.wk-blog-appel .wk-confiance::before,
.wk-blog-appel .wk-confiance::after { background: var(--bande-accent); }
.wk-section--bande .wk-confiance__stat,
.wk-blog-appel .wk-confiance__stat { color: inherit; opacity: .85; }
.wk-section--bande .wk-confiance__stat strong,
.wk-blog-appel .wk-confiance__stat strong { color: var(--bande-accent); opacity: 1; }
.wk-blog-appel .wk-confiance__stat + .wk-confiance__stat { border-left-color: rgba(255, 255, 255, .22); }

/* Trois cercles d'élèves qui tournent doucement (sens alternés), photos toujours droites. --wk-tour est animé une fois sur le conteneur.
   Au défilement (--wk-ouvert, navigateurs qui gèrent animation-timeline), les photos se rassemblent au centre en entrant et en sortant de l'écran. */
@property --wk-tour { syntax: "<angle>"; inherits: true; initial-value: 0deg; }
@property --wk-ouvert { syntax: "<number>"; inherits: true; initial-value: 1; }
.wk-mosaique { position: relative; aspect-ratio: 1 / 1; max-width: 36rem; margin-inline: auto; container-type: inline-size; isolation: isolate; animation: wk-tour 120s linear infinite; }
/* Les anneaux suivent les photos : même facteur --wk-ouvert que leur rayon, donc ils se resserrent et s'ouvrent avec elles */
.wk-mosaique::after { content: ""; position: absolute; inset: 0; z-index: -1; pointer-events: none; background: no-repeat center / 100% url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100' fill='none' stroke='%23C48738' stroke-width='.35' stroke-dasharray='1.2 1.4'%3E%3Ccircle cx='50' cy='50' r='43' stroke-opacity='.4'/%3E%3Ccircle cx='50' cy='50' r='28' stroke-opacity='.32'/%3E%3Ccircle cx='50' cy='50' r='13.5' stroke-opacity='.25'/%3E%3C/svg%3E"); scale: var(--wk-ouvert); }
.wk-mosaique::before { content: ""; position: absolute; left: 50%; top: 50%; width: 4cqi; height: 4cqi; margin: -2cqi 0 0 -2cqi; border-radius: 50%; background: var(--wk-or, #C48738); box-shadow: 0 0 0 1.2cqi rgba(196, 135, 56, .18); }
.wk-mosaique .wk-mosaique__portrait { --angle: calc(var(--a) + var(--wk-tour) * var(--sens)); position: absolute; left: 50%; top: 50%; width: var(--t); margin: calc(var(--t) / -2) 0 0 calc(var(--t) / -2); aspect-ratio: 1; border-radius: 50%; overflow: hidden; box-shadow: 0 6px 18px rgba(57, 41, 29, .18); border: 3px solid #FAF7F4; transform: rotate(var(--angle)) translateY(calc(-1 * var(--r) * var(--wk-ouvert))) rotate(calc(-1 * var(--angle))); }
.wk-mosaique .wk-mosaique__portrait img { width: 100%; height: 100%; object-fit: cover; display: block; }
.wk-mosaique .wk-mosaique__portrait--9, .wk-mosaique .wk-mosaique__portrait--10, .wk-mosaique .wk-mosaique__portrait--11, .wk-mosaique .wk-mosaique__portrait--12 { --r: 13.5cqi; --t: 12.5cqi; --sens: 1; }
.wk-mosaique .wk-mosaique__portrait--1, .wk-mosaique .wk-mosaique__portrait--13, .wk-mosaique .wk-mosaique__portrait--2, .wk-mosaique .wk-mosaique__portrait--14, .wk-mosaique .wk-mosaique__portrait--3, .wk-mosaique .wk-mosaique__portrait--15, .wk-mosaique .wk-mosaique__portrait--4 { --r: 28cqi; --t: 14cqi; --sens: -.8; }
.wk-mosaique .wk-mosaique__portrait--5, .wk-mosaique .wk-mosaique__portrait--16, .wk-mosaique .wk-mosaique__portrait--6, .wk-mosaique .wk-mosaique__portrait--17, .wk-mosaique .wk-mosaique__portrait--7, .wk-mosaique .wk-mosaique__portrait--18, .wk-mosaique .wk-mosaique__portrait--8, .wk-mosaique .wk-mosaique__portrait--19, .wk-mosaique .wk-mosaique__portrait--20, .wk-mosaique .wk-mosaique__portrait--21 { --r: 43cqi; --t: 13cqi; --sens: .6; }
.wk-mosaique__portrait--1 { --a: 0.0deg; } .wk-mosaique__portrait--2 { --a: 102.9deg; } .wk-mosaique__portrait--3 { --a: 205.7deg; } .wk-mosaique__portrait--4 { --a: 308.6deg; } .wk-mosaique__portrait--5 { --a: 18.0deg; } .wk-mosaique__portrait--6 { --a: 90.0deg; } .wk-mosaique__portrait--7 { --a: 162.0deg; } .wk-mosaique__portrait--8 { --a: 234.0deg; } .wk-mosaique__portrait--9 { --a: 45.0deg; } .wk-mosaique__portrait--10 { --a: 135.0deg; } .wk-mosaique__portrait--11 { --a: 225.0deg; } .wk-mosaique__portrait--12 { --a: 315.0deg; } .wk-mosaique__portrait--13 { --a: 51.4deg; } .wk-mosaique__portrait--14 { --a: 154.3deg; } .wk-mosaique__portrait--15 { --a: 257.1deg; } .wk-mosaique__portrait--16 { --a: 54.0deg; } .wk-mosaique__portrait--17 { --a: 126.0deg; } .wk-mosaique__portrait--18 { --a: 198.0deg; } .wk-mosaique__portrait--19 { --a: 270.0deg; } .wk-mosaique__portrait--20 { --a: 306.0deg; } .wk-mosaique__portrait--21 { --a: 342.0deg; }
@keyframes wk-tour { to { --wk-tour: 360deg; } }
@keyframes wk-rassemble { 0%, 100% { --wk-ouvert: .08; } 35%, 65% { --wk-ouvert: 1; } }
@supports (animation-timeline: view()) { .wk-mosaique { animation: wk-tour 120s linear infinite, wk-rassemble linear both; animation-timeline: auto, view(); } }
@media (prefers-reduced-motion: reduce) { .wk-mosaique { animation: none; } }
@media (max-width: 47.9rem) { .wk-mosaique { max-width: 22rem; } }

/* Sections alternées texte / visuel */
.wk-alt { gap: 3rem; }
.wk-alt .wk-alt__visuel { margin: 0; }
.wk-alt .wk-alt__visuel img { width: 100%; height: auto; display: block; border-radius: var(--wk-rayon-grand); box-shadow: 0 16px 40px rgba(57, 41, 29, .16); }
.wk-alt h2.wp-block-heading { margin-top: .25rem; }
.wk-alt .wp-block-buttons { margin-top: 1.25rem; }
.wk-alt .wk-video-lecon { margin: 0; }
@media (max-width: 47.9rem) { .wk-alt.wk-alt--inverse { flex-direction: column-reverse; } }
/* Liste à coches */
.wk-coches { list-style: none; padding: 0; margin: 1.25rem 0 0; display: grid; gap: .6rem; }
.wk-coches li { position: relative; padding-left: 2.1rem; }
.wk-coches li::before { content: ""; position: absolute; left: 0; top: .05rem; width: 1.4rem; height: 1.4rem; border-radius: 50%; background: rgba(74, 155, 126, .15) no-repeat center / .85rem url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%234A9B7E' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6L9 17l-5-5'/%3E%3C/svg%3E"); }
/* Quatre atouts */
.wk-atouts { gap: 1.25rem; margin-top: var(--wp--preset--spacing--70); }
.wk-atout { padding: 1.5rem; border-radius: var(--wk-rayon-grand); background: var(--wk-carte); border: 1px solid rgba(57, 41, 29, .1); }
.wk-atout::before { content: ""; display: block; width: 2.75rem; height: 2.75rem; margin-bottom: .9rem; border-radius: 50%; background: rgba(196, 135, 56, .14) no-repeat center / 1.5rem var(--ico); }
.wk-atout h3.wp-block-heading { margin: 0 0 .4rem; font-size: var(--wp--preset--font-size--m); }
.wk-atout p { margin: 0; color: var(--wk-taupe); font-size: var(--wp--preset--font-size--s); }
.wk-atout--corps { --ico: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23C48738' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='5' r='2.5'/%3E%3Cpath d='M12 8v6m-4 8l4-8 4 8M7 11l5-2 5 2'/%3E%3C/svg%3E"); }
.wk-atout--ordre { --ico: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23C48738' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 19h5v-6H4zM10 19h5V9h-5zM16 19h5V4h-5z'/%3E%3C/svg%3E"); }
.wk-atout--temps { --ico: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23C48738' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M12 7v5l3 2'/%3E%3C/svg%3E"); }
.wk-atout--prof { --ico: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23C48738' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 12a8 8 0 0 1-11.6 7.1L4 20l1-4.6A8 8 0 1 1 21 12z'/%3E%3Cpath d='M8 12h.01M12 12h.01M16 12h.01'/%3E%3C/svg%3E"); }
/* Visuels empilés (photo de stage + échanges) */
.wk-pile-visuels { position: relative; padding: 0 0 3.5rem 2.5rem; }
.wk-pile-visuels .wk-pile-visuels__fond, .wk-pile-visuels .wk-pile-visuels__devant { margin: 0; }
.wk-pile-visuels .wk-pile-visuels__fond img { width: 100%; aspect-ratio: 4 / 3; object-fit: cover; border-radius: var(--wk-rayon-grand); display: block; }
.wk-pile-visuels .wk-pile-visuels__devant { position: absolute; left: 0; bottom: 0; width: 58%; }
.wk-pile-visuels .wk-pile-visuels__devant img { width: 100%; aspect-ratio: 5 / 4; object-fit: cover; object-position: top; border-radius: 16px; display: block; border: 4px solid #FAF7F4; box-shadow: 0 16px 40px rgba(57, 41, 29, .22); }
/* Bandeau de techniques qui défilent */
.wk-section--defile { overflow: hidden; }
.wk-defile { margin-top: 2rem; display: grid; gap: .9rem; mask-image: linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent); -webkit-mask-image: linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent); }
.wk-defile .wk-defile__ligne { display: flex; gap: .75rem; width: max-content; margin: 0; animation: wk-defile 60s linear infinite; }
.wk-defile .wk-defile__ligne--inverse { animation-direction: reverse; }
.wk-defile__ligne span { display: inline-block; padding: .65rem 1.2rem; border-radius: 50px; background: var(--wk-creme); border: 1px solid rgba(57, 41, 29, .12); font-weight: 700; font-size: var(--wp--preset--font-size--s); white-space: nowrap; }
@keyframes wk-defile { from { transform: translateX(0); } to { transform: translateX(-50%); } }
@media (prefers-reduced-motion: reduce) { .wk-defile .wk-defile__ligne { animation: none; flex-wrap: wrap; width: auto; justify-content: center; } }
/* Services */
.wk-services { gap: 1.25rem; }
.wk-service { padding: 1.4rem; border-radius: var(--wk-rayon-grand); background: var(--wk-carte); border: 1px solid rgba(57, 41, 29, .1); }
.wk-service::before { content: ""; display: block; width: 2.5rem; height: 2.5rem; margin-bottom: .75rem; border-radius: 50%; background: rgba(196, 135, 56, .14) no-repeat center / 1.4rem var(--ico); }
.wk-service h3.wp-block-heading { margin: 0 0 .35rem; font-size: var(--wp--preset--font-size--m); }
.wk-service p { margin: 0; color: var(--wk-taupe); font-size: var(--wp--preset--font-size--s); }
.wk-service--rien { --ico: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23C48738' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='5' width='18' height='12' rx='2'/%3E%3Cpath d='M8 21h8'/%3E%3C/svg%3E"); }
.wk-service--progression { --ico: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23C48738' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 17l5-5 4 4 7-8'/%3E%3Cpath d='M16 8h4v4'/%3E%3C/svg%3E"); }
.wk-service--ebook { --ico: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23C48738' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 5a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2z'/%3E%3Cpath d='M8 7h8M8 11h8M8 15h5'/%3E%3C/svg%3E"); }
.wk-service--aide { --ico: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23C48738' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M9.5 9.5a2.5 2.5 0 1 1 3.5 2.3c-.7.3-1 .8-1 1.5M12 17h.01'/%3E%3C/svg%3E"); }
/* Carte de départ (cours offert + formulaire) */
.wk-carte-depart { margin-top: var(--wp--preset--spacing--70); padding: 2.5rem; border-radius: var(--wk-rayon-grand); background: var(--wk-carte); border: 1px solid rgba(57, 41, 29, .12); }
.wk-carte-depart .wp-block-columns { gap: 2.5rem; }
.wk-carte-depart h2.wp-block-heading { margin-top: .25rem; }
.wk-carte-depart .wk-carte-depart__photo { margin: 0; }
.wk-carte-depart .wk-carte-depart__photo img { width: 100%; aspect-ratio: 4 / 5; object-fit: cover; border-radius: var(--wk-rayon-grand); display: block; }
.wk-carte-depart .wk-inscription { margin-top: 1.5rem; }
.wk-carte-depart .wk-inscription .registration-form { grid-template-columns: 1fr 1fr; }
.wk-carte-depart .wk-inscription .btn-register { grid-column: 1 / -1; }
@media (max-width: 47.9rem) { .wk-carte-depart { padding: 1.5rem; } .wk-carte-depart .wk-carte-depart__photo img { aspect-ratio: 4 / 3; } }
/* FAQ */
.wk-faq { display: grid; gap: .75rem; margin-top: 1.5rem; max-width: var(--wk-largeur-encadre, 56rem); } /* accordéon : largeur de lecture (celle qu'il avait), pas la zone entière */
.wk-faq .wk-faq__item { padding: 0 1.4rem; border-radius: var(--wk-rayon); background: var(--wk-creme); border: 1px solid rgba(57, 41, 29, .12); }
.wk-faq .wk-faq__item > summary { cursor: pointer; list-style: none; display: flex; justify-content: space-between; align-items: center; gap: 1rem; padding: 1.1rem 0; font-weight: 800; font-size: var(--wp--preset--font-size--m); }
.wk-faq .wk-faq__item > summary::-webkit-details-marker { display: none; }
.wk-faq .wk-faq__item > summary::after { content: "+"; flex: none; width: 1.75rem; height: 1.75rem; display: grid; place-items: center; border-radius: 50%; background: var(--wk-sable); font-weight: 700; transition: transform .2s ease; }
.wk-faq .wk-faq__item[open] > summary::after { transform: rotate(45deg); }
.wk-faq .wk-faq__item > :not(summary) { margin: 0 0 1.2rem; color: var(--wk-taupe); }
.wk-section--bande .wk-preuve { margin-bottom: 1rem; }
.wk-section--bande .wk-temoignages { margin-top: 1rem; }
@media (prefers-color-scheme: dark) {
	body.wk-sombre .wk-atout, body.wk-sombre .wk-service, body.wk-sombre .wk-carte-depart, body.wk-sombre .wk-faq .wk-faq__item { border-color: rgba(255, 255, 255, .12); }
	body.wk-sombre .wk-defile__ligne span { border-color: rgba(255, 255, 255, .12); }
	body.wk-sombre .wk-mosaique .wk-mosaique__portrait, body.wk-sombre .wk-pile-visuels .wk-pile-visuels__devant img { border-color: #2C2C2E; }
}

/* ===== Carrousel horizontal des témoignages ===== */
.wk-slider { position: relative; margin-top: 1.5rem; }
.wk-section .wk-slider .wk-slider__piste { display: flex; gap: 20px; overflow-x: auto; scroll-snap-type: x mandatory; scroll-padding-inline: 2px; padding: .25rem 2px 1.25rem; margin: 0; scrollbar-width: none; overscroll-behavior-x: contain; }
.wk-slider .wk-slider__piste::-webkit-scrollbar { display: none; }
.wk-slider .wk-slider__piste:focus-visible { outline: 2px solid var(--bande-accent); outline-offset: 4px; border-radius: var(--wk-rayon-grand); }
.wk-slider .wk-temoignage { flex: 0 0 min(22rem, 84%); scroll-snap-align: start; margin: 0; }
.wk-temoignage .wk-temoignage__etoiles { color: var(--bande-accent); letter-spacing: .15em; font-size: var(--wp--preset--font-size--s); }
.wk-temoignage__auteur span { display: grid; line-height: 1.25; }
.wk-temoignage__auteur small { font-weight: 500; opacity: .75; font-size: var(--wp--preset--font-size--xs); }
.wk-slider__nav { display: flex; justify-content: center; gap: .75rem; margin-top: .5rem; }
.wk-slider__bouton { display: grid; place-items: center; width: 2.9rem; height: 2.9rem; border-radius: 50%; border: 1.5px solid rgba(255, 255, 255, .35); background: transparent; color: var(--bande-texte); cursor: pointer; transition: background .15s ease, opacity .15s ease; }
.wk-slider__bouton:hover:not(:disabled) { background: rgba(255, 255, 255, .1); }
.wk-slider__bouton:disabled { opacity: .35; cursor: default; }
.wk-section:not(.wk-section--bande) .wk-slider__bouton { border-color: rgba(57, 41, 29, .25); color: var(--wk-ecorce); }
.wk-lien-avis { margin-top: 1.25rem; font-weight: 700; }

/* ===== Menu : bouton « Ressources » et bouton du téléphone ===== */
.wk-nav__plein, .wk-menu-bouton { appearance: none; border: 0; background: none; color: inherit; font: inherit; cursor: pointer; }
.wk-nav__plein { display: flex; align-items: center; gap: .5rem; padding: .6rem 1.05rem; border-radius: 50px; font-size: var(--wp--preset--font-size--s); font-weight: 600; white-space: nowrap; transition: background-color .15s ease; }
.wk-nav__plein svg { opacity: .7; transition: transform .3s ease; }
.wk-nav__plein:hover { background: var(--wk-sable); }
.wk-nav__plein:hover svg { transform: rotate(45deg); }
.wk-menu-bouton { margin-left: auto; display: grid; place-items: center; width: 2.9rem; height: 2.9rem; border-radius: 50%; }
@media (min-width: 64rem) { .wk-menu-bouton { display: none; } }
.wk-menu-bouton:hover { background: var(--wk-sable); }
html.wk-menu-ouvert { overflow: hidden; }

/* ===== Menu « Ressources » : panneau sous la pilule sur ordinateur, plein écran sur téléphone ===== */
.wk-plein[popover] { margin: 0; padding: 0; border: 0; color: var(--wk-ecorce); font-family: var(--wk-police); pointer-events: auto; overflow-y: auto; overscroll-behavior: contain; background: var(--wk-creme); }
.wk-plein a { color: inherit; text-decoration: none; }
.wk-plein ul { list-style: none; margin: 0; padding: 0; }
/* Contenu en cascade */
.wk-plein .wk-anim { opacity: 0; transform: translateY(12px); transition: opacity .5s ease, transform .6s var(--wk-ease); transition-delay: calc(.08s + var(--i, 0) * 40ms); }
.wk-plein:popover-open .wk-anim { opacity: 1; transform: none; }
@starting-style { .wk-plein:popover-open .wk-anim { opacity: 0; transform: translateY(12px); } }
.wk-plein__titre { margin: 0 0 .35rem; padding-left: .5rem; font-size: var(--wp--preset--font-size--xs); font-weight: 800; letter-spacing: .08em; text-transform: uppercase; color: var(--wk-or-texte); }
.wk-plein__liste { display: grid; gap: .1rem; }
.wk-plein__liste a { display: grid; grid-template-columns: 2.25rem 1fr; align-items: center; gap: .75rem; padding: .45rem .5rem; border-radius: 14px; transition: background-color .15s ease, transform .2s ease; }
.wk-plein__liste a:hover, .wk-plein__liste a:focus-visible { background: var(--wk-sable); }
.wk-plein__ico { display: grid; place-items: center; width: 2.25rem; height: 2.25rem; border-radius: 50%; background: rgba(196, 135, 56, .14); color: var(--wk-or-texte); }
.wk-plein__ico svg { width: 20px; height: 20px; }
.wk-plein__texte { display: grid; gap: .05rem; min-width: 0; }
.wk-plein__libelle { font-weight: 700; font-size: var(--wp--preset--font-size--s); line-height: 1.3; }
.wk-plein__desc { font-size: var(--wp--preset--font-size--xs); line-height: 1.35; color: var(--wk-taupe); }
.wk-plein__desc:empty { display: none; }
.wk-plein__badge { display: inline-block; margin-left: .35rem; padding: .1rem .5rem; border-radius: 50px; background: var(--wk-or); color: var(--wk-sur-or); font-size: .68rem; font-weight: 800; letter-spacing: .03em; vertical-align: .1em; }
.wk-plein__whatsapp .wk-plein__ico { background: #25D366; color: #fff; }
/* Ressources (16/09/2026) : « Lire, écouter, regarder », « Les dossiers » (lien vers tous en bas), Wakatoo en carte à part. */
.wk-plein__cote { display: grid; gap: .75rem; }
.wk-plein__wakatoo {
	position: relative; isolation: isolate; overflow: hidden; display: flex; align-items: center; min-height: 7.5rem;
	padding: 1rem 8rem 1rem 1.25rem; border-radius: 20px;
	background: radial-gradient(70% 110% at 100% 100%, color-mix(in srgb, var(--wk-or) 32%, transparent) 0%, transparent 72%), var(--wk-sable);
	transition: background-color .2s ease;
}
.wk-plein__wakatoo-texte { display: grid; justify-items: start; gap: .3rem; }
.wk-plein__wakatoo-logo {
	display: block; width: 8rem; aspect-ratio: 266 / 73; background: currentColor;
	-webkit-mask: url("../images/logo-wakatoo.svg") center / contain no-repeat; mask: url("../images/logo-wakatoo.svg") center / contain no-repeat;
}
.wk-plein__wakatoo-desc { font-size: var(--wp--preset--font-size--xs); line-height: 1.35; color: var(--wk-taupe); }
.wk-plein__wakatoo .wk-plein__badge { margin: .15rem 0 0; }
.wk-plein__towaki { position: absolute; z-index: -1; right: -.4rem; bottom: -.4rem; width: 8.25rem; height: auto; rotate: -5deg; transition: rotate .35s var(--wk-ease), translate .35s var(--wk-ease); }
.wk-plein__wakatoo:hover .wk-plein__towaki { rotate: 0deg; translate: 0 -4px; }
.wk-plein__wakatoo:focus-visible { outline: 3px solid var(--wk-or); outline-offset: 2px; }

/* Téléphone et tablette : plein écran, entrée qui glisse du haut, tout tient sur un écran */
@media (max-width: 63.99rem) {
	.wk-plein[popover] {
		position: fixed; inset: 0; width: 100%; height: 100dvh; max-width: none; max-height: none; background: var(--wk-sable);
		opacity: 0; transform: translateY(-4%);
		transition: opacity .3s ease, transform .45s var(--wk-ease), overlay .45s allow-discrete, display .45s allow-discrete;
	}
	.wk-plein[popover]:popover-open { opacity: 1; transform: none; }
	@starting-style { .wk-plein[popover]:popover-open { opacity: 0; transform: translateY(-4%); } }
	.wk-plein::backdrop { background: transparent; }
	.wk-plein__halos { position: fixed; inset: 0; z-index: -1; pointer-events: none;
		background: radial-gradient(40% 30% at 90% 8%, rgba(232, 184, 76, .16) 0%, transparent 70%), radial-gradient(45% 35% at 5% 95%, rgba(216, 111, 74, .12) 0%, transparent 70%); }
	.wk-plein__haut { display: flex; align-items: center; justify-content: space-between; padding: 12px calc(var(--wp--preset--spacing--50) + .75rem) .25rem; }
	.wk-plein__logo .wk-logo { width: 80px; height: auto; }
	.wk-plein__fermer { appearance: none; display: grid; place-items: center; width: 2.9rem; height: 2.9rem; border: 0; border-radius: 50%; background: var(--wk-creme); color: inherit; cursor: pointer; transition: transform .3s ease; }
	.wk-plein__fermer:hover { transform: rotate(90deg); }
	.wk-plein__corps { display: flex; flex-direction: column; gap: .75rem; min-height: calc(100dvh - 4.5rem); padding: .25rem var(--wp--preset--spacing--50) .75rem; }
	.wk-plein__grille { display: grid; gap: .6rem; }
	.wk-plein__desc { display: none; }
	.wk-plein__liste a { padding: .35rem .5rem; }
	/* E-mail et WhatsApp : deux tuiles côte à côte */
	.wk-plein__liste--contact { grid-template-columns: 1fr 1fr; gap: .5rem; }
	.wk-plein__liste--contact a { grid-template-columns: 1fr; justify-items: center; text-align: center; gap: .3rem; padding: .55rem .3rem; background: var(--wk-creme); }
	.wk-plein__liste--contact .wk-plein__libelle { font-size: var(--wp--preset--font-size--xs); }
	.wk-plein__actions { display: flex; flex-wrap: nowrap; align-items: center; gap: .35rem; margin-top: auto; padding-top: .75rem; border-top: 1px solid var(--trait); }
	.wk-plein__actions .wk-bouton--petit { margin-left: auto; padding-inline: .8rem; white-space: nowrap; min-width: 0; }
	.wk-plein__actions .wk-lien-connexion { padding-inline: .4rem; }
	.wk-plein__corps > * { min-width: 0; }
	.wk-plein__liste--contact a { min-width: 0; }
	.wk-plein__liste--contact .wk-plein__libelle { overflow-wrap: anywhere; }
	.wk-plein__wakatoo { min-height: 6rem; padding-right: 6.5rem; }
	.wk-plein__towaki { width: 6.75rem; bottom: .1rem; }
}
@media (max-width: 22.5rem) {
	.wk-plein__actions { flex-wrap: wrap; }
	.wk-plein__actions .wk-bouton--petit { margin-left: 0; }
}
@media (max-width: 63.99rem) and (max-height: 700px) {
	.wk-plein__principal a { font-size: 1.3rem; padding-block: .2rem; }
	.wk-plein__liste a { padding-block: .2rem; }
}

/* Ordinateur : panneau déroulant sous la pilule, entrée en fondu et léger zoom */
@media (min-width: 64rem) {
	.wk-plein[popover] {
		position: fixed; inset: auto;
		top: calc(var(--wp-admin--admin-bar--height, 0px) + 5.6rem);
		right: max(var(--wp--preset--spacing--50), calc((100vw - var(--wk-largeur)) / 2));
		width: min(46rem, calc(100vw - 2rem)); max-height: calc(100dvh - 7rem);
		padding: 1.1rem; border-radius: 24px; border: 1px solid var(--carte-bord); box-shadow: 0 24px 60px rgba(0, 0, 0, .18);
		transform-origin: top right; opacity: 0; transform: translateY(-8px) scale(.97);
		transition: opacity .25s ease, transform .35s var(--wk-ease), overlay .35s allow-discrete, display .35s allow-discrete;
	}
	.wk-plein[popover]:popover-open { opacity: 1; transform: none; }
	@starting-style { .wk-plein[popover]:popover-open { opacity: 0; transform: translateY(-8px) scale(.97); } }
	.wk-plein::backdrop { background: transparent; }
	.wk-plein__haut, .wk-plein__principal, .wk-plein__actions, .wk-plein__halos { display: none; }
	.wk-plein__grille { display: grid; grid-template-columns: 1fr 1fr; gap: 1.25rem 1.5rem; }
	/* À gauche : lire, écouter, regarder puis les dossiers ; à droite : la question puis Wakatoo. */
	.wk-plein__grille > .wk-plein__groupe:nth-child(1) { grid-column: 1; grid-row: 1; }
	.wk-plein__grille > .wk-plein__groupe:nth-child(2) { grid-column: 1; grid-row: 2; }
	/* Wakatoo ancrée en bas à droite (Gauthier, 16/09) : la question reste en haut. */
	.wk-plein__grille > .wk-plein__cote { grid-column: 2; grid-row: 1 / span 2; align-content: space-between; gap: 1.25rem; }
	.wk-plein__cote > .wk-plein__wakatoo { min-height: 8.75rem; padding-right: 8.75rem; }
	.wk-plein__grille .wk-plein__towaki { width: 8.25rem; bottom: .3rem; } /* remonté (Gauthier, 16/09) : plus coupé en bas */
}
@media (prefers-reduced-motion: reduce) {
	.wk-plein[popover], .wk-plein .wk-anim { transform: none !important; transition-duration: .15s; transition-delay: 0s; }
}

/* ===== Menu v5 : « Apprendre ▾ » (en ligne / en stage), « Choisir », Ressources en retrait ===== */
.wk-nav__groupe { position: relative; }
.wk-nav__menu > summary { list-style: none; cursor: pointer; display: flex; align-items: center; gap: .45rem; padding: .6rem 1.05rem; border-radius: 50px; font-size: var(--wp--preset--font-size--s); font-weight: 600; white-space: nowrap; transition: background-color .15s ease; }
.wk-nav__menu > summary::-webkit-details-marker { display: none; }
.wk-nav__menu > summary::after, .wk-plein__replie > summary::after { content: ""; width: .42rem; height: .42rem; margin-top: -.2rem; border-right: 2px solid currentColor; border-bottom: 2px solid currentColor; transform: rotate(45deg); transition: transform .2s ease; }
.wk-nav__menu[open] > summary::after, .wk-plein__replie[open] > summary::after { transform: rotate(225deg); margin-top: .2rem; }
.wk-nav__menu > summary:hover, .wk-nav__menu[open] > summary, .wk-nav__menu > summary.est-actif { background: var(--wk-sable); }
.wk-nav .wk-nav__sous { position: absolute; top: calc(100% + .6rem); left: 0; z-index: 5; display: grid; gap: .15rem; width: max-content; min-width: 13rem; padding: .5rem; border-radius: 20px; background: var(--wk-creme); border: 1px solid var(--carte-bord); box-shadow: 0 16px 40px rgba(0, 0, 0, .16); animation: wk-deroule .28s var(--wk-ease); }
@keyframes wk-deroule { from { opacity: 0; transform: translateY(-6px); } }
.wk-nav .wk-nav__sous a, .wk-plein__sous a { display: grid; grid-template-columns: 2.25rem 1fr; align-items: center; gap: .75rem; padding: .55rem .6rem; border-radius: 14px; white-space: normal; font-weight: 400; }
.wk-nav .wk-nav__sous a:hover, .wk-nav .wk-nav__sous a[aria-current="page"] { background: var(--wk-sable); }
.wk-nav__sous-ico { display: grid; place-items: center; width: 2.25rem; height: 2.25rem; border-radius: 50%; background: rgba(196, 135, 56, .14); color: var(--wk-or-texte); }
.wk-nav__sous-texte { display: grid; gap: .05rem; }
.wk-nav__sous-libelle { font-weight: 700; font-size: var(--wp--preset--font-size--s); line-height: 1.3; }
.wk-nav__sous-desc { font-size: var(--wp--preset--font-size--xs); line-height: 1.35; color: var(--wk-taupe); }
/* Ressources : strictement comme les autres entrées du menu (taille, graisse, couleur). */
.wk-nav .wk-nav__plein { color: inherit; font-weight: 600; }
.wk-nav .wk-nav__plein:hover, .wk-nav .wk-nav__plein:focus-visible { color: inherit; background: var(--wk-sable); }
/* Téléphone : rubriques, sous-choix, ressources repliées, gros bouton d'inscription */
@media (max-width: 63.99rem) {
	.wk-plein__rubrique { display: block; padding: .3rem .5rem; font-size: 1.55rem; font-weight: 800; letter-spacing: -.01em; line-height: 1.2; }
	a.wk-plein__rubrique[aria-current="page"] { color: var(--wk-or-texte); }
	.wk-plein__sous { display: grid; gap: .4rem; margin-top: .35rem; }
	.wk-plein__sous a { background: var(--wk-creme); }
	.wk-plein__sous a[aria-current="page"] { outline: 2px solid var(--wk-or); }
	.wk-plein__replie > summary { list-style: none; cursor: pointer; display: flex; align-items: center; gap: .6rem; padding: .75rem .5rem; border-top: 1px solid var(--trait); font-weight: 700; color: var(--wk-taupe); }
	.wk-plein__replie > summary::-webkit-details-marker { display: none; }
	.wk-plein__actions { flex-wrap: wrap; }
	.wk-plein__actions .wk-bouton--petit { order: -1; flex: 1 1 100%; justify-content: center; min-height: 3.25rem; margin-left: 0; font-size: var(--wp--preset--font-size--m); }
}
@media (min-width: 64rem) { .wk-plein__replie > summary { display: none; } }

/* ===== Menu téléphone v6 : trois choix de même poids, ressources discrètes, inscription juste dessous ===== */
@media (max-width: 63.99rem) {
	.wk-plein__corps { min-height: 0; gap: 0; padding-top: 1rem; }
	.wk-plein__replie { margin-top: .5rem; }
	.wk-plein__replie > summary { padding: .9rem .25rem; border-top: 1px solid var(--trait); border-bottom: 0; font-size: var(--wp--preset--font-size--s); font-weight: 600; }
	.wk-plein__replie[open] > summary { border-bottom: 0; }
	.wk-plein__replie[open] { padding-bottom: .75rem; }
	/* L'inscription, juste sous les choix : pas de vide au milieu */
	.wk-plein__actions { margin-top: 1.25rem; padding-top: 0; border-top: 0; justify-content: center; gap: .25rem .5rem; }
	.wk-plein__actions .wk-bouton--petit { min-height: 3.5rem; font-size: var(--wp--preset--font-size--m); }
	.wk-plein__actions .wk-langues > summary { height: 2.5rem; }
}
.wk-nav .wk-nav__sous a { grid-template-columns: 2rem 1fr; padding-block: .5rem; }
.wk-nav .wk-nav__sous .wk-nav__sous-ico { width: 2rem; height: 2rem; }
.wk-nav .wk-nav__sous .wk-nav__sous-libelle { font-size: var(--wp--preset--font-size--s); }

/* ===== Menu téléphone v7 : sous-menu « Apprendre » en tuiles (style Dojo de l'app : fond transparent, liseré beige foncé) ===== */
@media (max-width: 63.99rem) {
	.wk-plein__principal { display: grid; gap: .75rem; }
	.wk-plein__principal .wk-plein__rubrique { margin: 0; padding: 0 .25rem; font-size: 1.45rem; font-weight: 800; letter-spacing: -.01em; }
	.wk-plein__principal .wk-plein__tuiles { display: grid; grid-template-columns: 1fr 1fr; gap: .75rem; margin: 0; padding: 0; list-style: none; }
	.wk-plein__principal .wk-plein__tuiles > li { margin: 0; border: 0; }
	.wk-plein__principal .wk-plein__tuile, .wk-plein__principal .wk-plein__carte-lien {
		display: flex; color: var(--wk-ecorce); background: transparent;
		border: 1.5px solid color-mix(in srgb, var(--wk-ecorce) 12%, transparent); border-radius: 16px;
		transition: background-color .15s ease, border-color .15s ease, transform .15s ease;
	}
	.wk-plein__principal .wk-plein__tuile { aspect-ratio: 1; padding: .75rem; flex-direction: column; align-items: center; justify-content: center; gap: .6rem; font-size: 1.15rem; font-weight: 800; }
	.wk-plein__principal .wk-plein__carte-lien { align-items: center; gap: .9rem; padding: 1rem 1.1rem; font-size: 1.15rem; font-weight: 800; }
	.wk-plein__tuile svg, .wk-plein__carte-lien svg { flex: none; color: var(--wk-or-texte); }
	.wk-plein__tuile:active, .wk-plein__carte-lien:active { transform: scale(.98); }
	.wk-plein__tuile:hover, .wk-plein__carte-lien:hover { background: color-mix(in srgb, var(--wk-ecorce) 5%, transparent); }
	.wk-plein__tuile[aria-current="page"], .wk-plein__carte-lien[aria-current="page"] { border-color: var(--wk-or); }
	.wk-plein__replie { margin-top: .75rem; }
	.wk-plein__replie > summary { border-top: 0; }
	/* v8 : « Apprendre » = carte avec flèche vers le bas, sous-menu ouvert dessous */
	.wk-plein__principal .wk-plein__rubrique { display: none; }
	.wk-plein__apprendre { display: grid; gap: .6rem; }
	.wk-plein__apprendre > summary { list-style: none; cursor: pointer; }
	.wk-plein__apprendre > summary::-webkit-details-marker { display: none; }
	.wk-plein__apprendre > summary::after { content: ""; flex: none; width: .5rem; height: .5rem; margin: -.25rem .25rem 0 auto; border-right: 2px solid currentColor; border-bottom: 2px solid currentColor; transform: rotate(45deg); transition: transform .2s ease, margin .2s ease; }
	.wk-plein__apprendre:not([open]) > summary::after { transform: rotate(-45deg); margin-top: 0; }
	.wk-plein__principal .wk-plein__carte-lien { gap: .8rem; padding: .85rem 1rem; font-size: clamp(1rem, 4.2vw, 1.15rem); }
}
/* Petits ordinateurs (1024–1280 px) : la pilule a quatre entrées, on la resserre pour qu'elle tienne. */
@media (min-width: 64rem) and (max-width: 80rem) {
	.wk-entete__barre { gap: .4rem; padding-left: 1rem; }
	.wk-nav ul { gap: 0; }
	.wk-nav a, .wk-nav__menu > summary, .wk-nav .wk-nav__plein { padding: .55rem .65rem; font-size: .875rem; }
	.wk-nav__menu > summary { gap: .35rem; }
	.wk-entete__actions { gap: .3rem; }
	.wk-entete__actions .wk-lien-connexion { padding-inline: .5rem; font-size: .875rem; }
	.wk-entete__actions .wk-langues > summary { height: 2.4rem; padding-inline: .5rem; font-size: .875rem; }
	.wk-entete__actions .wk-bouton--petit { padding-inline: .9rem; font-size: .875rem; }
}
.wk-entete__logo .wk-logo { max-width: none; flex: none; }
@media (min-width: 64rem) and (max-width: 72rem) {
	.wk-entete__logo .wk-logo { width: 68px; }
	.wk-nav a, .wk-nav__menu > summary, .wk-nav .wk-nav__plein, .wk-entete__actions .wk-lien-connexion, .wk-entete__actions .wk-bouton--petit { font-size: .8125rem; }
	.wk-nav a, .wk-nav__menu > summary, .wk-nav .wk-nav__plein { padding-inline: .5rem; }
	.wk-entete__actions .wk-bouton--petit { padding-inline: .75rem; }
}
@media (max-width: 63.99rem) and (max-height: 700px) {
	.wk-plein__principal .wk-plein__tuile { aspect-ratio: 5 / 4; }
}

/* ===== Menu téléphone v9 : entrées principales sans cadre, séparées par un trait ; e-mail + WhatsApp côte à côte ===== */
@media (max-width: 63.99rem) {
	.wk-plein__principal { gap: 0; }
	.wk-plein__principal .wk-plein__carte-lien { border: 0; border-radius: 0; padding: 1rem .25rem; background: transparent; }
	.wk-plein__principal .wk-plein__carte-lien:hover { background: transparent; }
	.wk-plein__principal > * + * { border-top: 1px solid var(--trait); }
	.wk-plein__apprendre { gap: 0; padding-bottom: 1rem; }
	.wk-plein__replie { margin-top: 0; }
	.wk-plein__replie > summary { border-top: 1px solid var(--trait); }
	.wk-plein__liste--contact > li { display: grid; }
	.wk-plein__liste--contact a { grid-template-columns: 2rem 1fr; justify-items: start; text-align: left; gap: .5rem; padding: .55rem .6rem; }
	.wk-plein__liste--contact .wk-plein__ico { width: 2rem; height: 2rem; }
	.wk-plein__liste--contact .wk-plein__libelle { overflow-wrap: normal; }
}

/* ===== Menu téléphone v10 : « Apprendre » replié par défaut ; ouvert, titre doré et tuiles sur fond beige clair ===== */
@media (max-width: 63.99rem) {
	/* Le trait entre les entrées : plus fort que « border: 0 » des cartes */
	.wk-plein__principal > * + .wk-plein__carte-lien, .wk-plein__principal > * + .wk-plein__apprendre { border-top: 1px solid var(--trait); }
	.wk-plein__apprendre:not([open]) { padding-bottom: 0; }
	.wk-plein__apprendre[open] > summary { color: var(--wk-or-texte); padding-bottom: .75rem; }
	/* Beige clair visible sur les deux fonds (même teinte que la ligne « À la une ») */
	.wk-plein__principal .wk-plein__apprendre .wk-plein__tuile { background: rgba(196, 135, 56, .12); border-color: rgba(196, 135, 56, .22); }
}
@media (max-width: 63.99rem) and (hover: hover) {
	.wk-plein__principal .wk-plein__carte-lien:hover { color: var(--wk-or-texte); }
}

/* ===== Animations (reprises du site Wakatoo : même courbe, mêmes durées, même cascade) =====
   1. Entrées et sorties douces : html.wk-anime est posé dans l'en-tête (et retiré au bout de 3 s si le script ne tourne pas).
      Chaque bloc apparaît en entrant à l'écran et s'efface en sortant, en cascade avec ses voisins (70 ms).
      Automatique sur les sections des pages. Ailleurs, dans l'éditeur : classe « wk-apparait » sur un bloc,
      ou « wk-cascade » sur un groupe (ses enfants arrivent un à un). La liste est la même dans site.js.
   2. Sections dépliables (FAQ, menu, sommaire) : hauteur animée par site.js, contenu qui monte en cascade.
   3. Menus : entrée en cascade, sortie en fondu (site.js, pour Safari qui ne sait pas animer la fermeture). */
.wk-anime :is(.wk-section > :not(.wp-block-columns, .wk-atouts, .wk-services, .wk-faq, .wk-etapes, .wk-legende-cartes, .wk-parcours, .wk-cascade, .wk-frise, .wk-chemins, .wk-echelle, .wk-formations, .wk-notes, .wk-videos), .wk-section > .wp-block-columns > .wp-block-column > *, .wk-atouts > *, .wk-services > *, .wk-faq > *, .wk-etapes > *, .wk-legende-cartes > *, .wk-parcours > *, .wk-cascade > *, .wk-frise > *, .wk-chemins > *, .wk-echelle > *, .wk-formations > *, .wk-notes > *, .wk-videos > *, .wk-apparait) {
	transition: opacity .7s var(--wk-ease), translate .7s var(--wk-ease), scale .7s var(--wk-ease), background-color .2s ease, border-color .2s ease, color .2s ease, box-shadow .25s ease, transform .25s ease;
	transition-delay: calc(var(--rang, 0) * 70ms), calc(var(--rang, 0) * 70ms), calc(var(--rang, 0) * 70ms), 0s, 0s, 0s, 0s, 0s;
}
.wk-anime :is(.wk-section > :not(.wp-block-columns, .wk-atouts, .wk-services, .wk-faq, .wk-etapes, .wk-legende-cartes, .wk-parcours, .wk-cascade, .wk-frise, .wk-chemins, .wk-echelle, .wk-formations, .wk-notes, .wk-videos), .wk-section > .wp-block-columns > .wp-block-column > *, .wk-atouts > *, .wk-services > *, .wk-faq > *, .wk-etapes > *, .wk-legende-cartes > *, .wk-parcours > *, .wk-cascade > *, .wk-frise > *, .wk-chemins > *, .wk-echelle > *, .wk-formations > *, .wk-notes > *, .wk-videos > *, .wk-apparait):not(.est-visible) { opacity: 0; translate: 0 1.5rem; }
/* Les visuels arrivent aussi avec un léger zoom. */
.wk-anime :is(.wk-mosaique, .wk-pile-visuels, .wp-block-image, .wk-carte-depart, .wk-wakatoo, .wk-video-lecon, .wk-slider, .wk-demo-cartes):not(.est-visible) { scale: .96; }
@media print { .wk-anime * { opacity: 1 !important; translate: none !important; scale: none !important; } }
/* Haut de page jamais masqué (17/09/2026, PageSpeed mobile : le titre, élément LCP, restait invisible 2,5 s en attendant
   site.js en fin de page). La première section s'affiche tout de suite, sans fondu ; l'apparition reste pour les suivantes. */
html.wk-anime body .wk-section.wk-section:first-of-type > *:not(.est-visible),
html.wk-anime body .wk-section.wk-section:first-of-type > .wp-block-columns > .wp-block-column > *:not(.est-visible) { opacity: 1; translate: none; scale: none; transition: none; }

/* Sections dépliables : le contenu monte, les éléments de liste en cascade, les tuiles du menu se posent. */
details.est-ouverture > :not(summary, ul, ol) { animation: wk-monte .5s var(--wk-ease) both; }
details.est-ouverture li { animation: wk-monte .45s var(--wk-ease) both; animation-delay: calc(60ms + var(--rang, 0) * 40ms); }
.wk-plein__apprendre.est-ouverture .wk-plein__tuiles > li { animation: wk-pose .6s var(--wk-ressort) both; animation-delay: calc(60ms + var(--rang, 0) * 70ms); }
@keyframes wk-monte { from { opacity: 0; translate: 0 .75rem; } }
@keyframes wk-pose { from { opacity: 0; scale: .88; } }
/* Flèches : même courbe ; pendant la fermeture elles reprennent tout de suite leur position « fermé ». */
.wk-nav__menu > summary::after, .wk-plein__replie > summary::after, .wk-plein__apprendre > summary::after, .wk-faq .wk-faq__item > summary::after { transition: transform .4s var(--wk-ease), margin .4s var(--wk-ease), color .2s ease; }
.wk-plein__apprendre.est-fermeture > summary::after { transform: rotate(-45deg); margin-top: 0; }
.wk-plein__apprendre.est-fermeture > summary { color: var(--wk-ecorce); }
.wk-plein__replie.est-fermeture > summary::after, .wk-nav__menu.est-fermeture > summary::after { transform: rotate(45deg); margin-top: -.2rem; }
.wk-faq .wk-faq__item.est-fermeture > summary::after { transform: none; }
.wk-plein__principal .wk-plein__carte-lien, .wk-plein__apprendre > summary { transition: color .3s ease; }
/* Sous-menu de la pilule : sortie en fondu. */
.wk-nav__menu.est-fermeture .wk-nav__sous { opacity: 0; transform: translateY(-6px); transition: opacity .2s ease, transform .25s var(--wk-ease); }
/* Menu plein écran et panneau Ressources : sortie en fondu. */
@media (max-width: 63.99rem) {
	.wk-plein[popover].est-sortie:popover-open { opacity: 0; transform: translateY(-2%); transition-duration: .28s, .35s; }
}
@media (min-width: 64rem) {
	.wk-plein[popover].est-sortie:popover-open { opacity: 0; transform: translateY(-8px) scale(.97); transition-duration: .2s, .25s; }
}

/* ===== Pages Stages, En ligne, Choisir un didgeridoo ===== */
/* Icônes des cartes (même trait doré que les autres). */
.wk-atout--rencontre { --ico: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23C48738' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M17 21v-2a4 4 0 0 0-4-4H5a4 4 0 0 0-4 4v2'/%3E%3Ccircle cx='9' cy='7' r='4'/%3E%3Cpath d='M23 21v-2a4 4 0 0 0-3-3.87M16 3.13a4 4 0 0 1 0 7.75'/%3E%3C/svg%3E"); }
.wk-atout--personnalise { --ico: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23C48738' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Ccircle cx='12' cy='12' r='5'/%3E%3Ccircle cx='12' cy='12' r='1'/%3E%3C/svg%3E"); }
.wk-atout--dix { --ico: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23C48738' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'/%3E%3Ctext x='12' y='16' text-anchor='middle' font-family='Arial,sans-serif' font-size='10' font-weight='700' fill='%23C48738' stroke='none'%3E10%3C/text%3E%3C/svg%3E"); }
.wk-atout--niveaux { --ico: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23C48738' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 20v-5M10 20V10M16 20V6M22 20V3'/%3E%3C/svg%3E"); }
.wk-atout--exercices { --ico: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23C48738' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 4h11a2 2 0 0 1 2 2v14H7a2 2 0 0 1-2-2z'/%3E%3Cpath d='M9 11l2 2 4-4'/%3E%3C/svg%3E"); }
.wk-atout--lecons { --ico: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23C48738' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='4' y='10' width='16' height='11' rx='2'/%3E%3Cpath d='M8 10V7a4 4 0 0 1 7.5-2'/%3E%3C/svg%3E"); }
.wk-atout--papier { --ico: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23C48738' stroke-width='2' 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 17h4'/%3E%3C/svg%3E"); }
.wk-atout--forum { --ico: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23C48738' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 12a8 8 0 0 1-11.6 7.1L4 20l1-4.6A8 8 0 1 1 21 12z'/%3E%3Cpath d='M8 11h8M8 14h5'/%3E%3C/svg%3E"); }
.wk-atout--pres { --ico: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23C48738' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 21s-7-6.2-7-11a7 7 0 0 1 14 0c0 4.8-7 11-7 11z'/%3E%3Ccircle cx='12' cy='10' r='2.5'/%3E%3C/svg%3E"); }
.wk-atout--vie { --ico: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23C48738' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M8 8c-2.2 0-4 1.8-4 4s1.8 4 4 4c3 0 5-8 8-8 2.2 0 4 1.8 4 4s-1.8 4-4 4c-3 0-5-8-8-8z'/%3E%3C/svg%3E"); }
.wk-atout--paiement { --ico: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23C48738' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='2' y='5' width='20' height='14' rx='2'/%3E%3Cpath d='M2 10h20M6 15h4'/%3E%3C/svg%3E"); }
/* Frise d'une journée (Stages) : un point par moment, reliés par un trait sur téléphone. */
.wk-frise { display: grid; gap: 1rem; margin-top: var(--wp--preset--spacing--60); }
.wk-frise__moment { position: relative; padding: 1.4rem 1.4rem 1.4rem 3.1rem; border-radius: var(--wk-rayon-grand); background: var(--wk-carte); border: 1px solid rgba(57, 41, 29, .1); }
.wk-frise__moment::before { content: ""; position: absolute; z-index: 2; left: 1.25rem; top: 1.65rem; width: .85rem; height: .85rem; border-radius: 50%; background: var(--wk-or); box-shadow: 0 0 0 5px rgba(196, 135, 56, .18); }
.wk-frise__moment:not(:last-child)::after { content: ""; position: absolute; z-index: 1; left: calc(1.25rem + .425rem - 1px); top: 2.5rem; bottom: calc(-1rem - 1.65rem); width: 2px; background: rgba(196, 135, 56, .35); }
.wk-frise__heure { margin: 0 0 .3rem; font-size: var(--wp--preset--font-size--xs); font-weight: 800; letter-spacing: .08em; text-transform: uppercase; color: var(--wk-or-texte); }
.wk-frise__moment h3.wp-block-heading { margin: 0 0 .35rem; font-size: var(--wp--preset--font-size--m); }
.wk-frise__moment p:last-child { margin: 0; color: var(--wk-taupe); font-size: var(--wp--preset--font-size--s); }
@media (min-width: 60rem) {
	.wk-frise { grid-template-columns: repeat(4, 1fr); }
	.wk-frise__moment { padding: 3.1rem 1.4rem 1.5rem; }
	.wk-frise__moment::before { left: 1.4rem; top: 1.4rem; }
	.wk-frise__moment:not(:last-child)::after { left: calc(1.4rem + .85rem + 6px); right: calc(-1rem - 1.4rem + 6px); top: calc(1.4rem + .425rem - 1px); bottom: auto; width: auto; height: 2px; }
}
/* Mode sombre uniquement : sans @media, ces règles s'appliquaient AUSSI en clair,
   puisque la classe wk-sombre est posée sur toutes les pages prêtes pour le sombre.
   C'est ce qui rendait la pastille de prix rose pâle en plein jour (Gauthier, 21/09/2026). */
@media (prefers-color-scheme: dark) {
	body.wk-sombre .wk-frise__moment { border-color: rgba(255, 255, 255, .12); }
}
/* Citation signée. */
.wk-citation cite { display: block; margin-top: 1rem; font-size: var(--wp--preset--font-size--s); font-style: normal; font-weight: 700; opacity: .8; }
/* Mur de photos qui défile (Stages) : deux rangées en sens contraire, pause au survol. site.js double les rangées. */
.wk-mur { display: grid; gap: 1rem; margin-top: var(--wp--preset--spacing--60); padding-block: .75rem; overflow: hidden; -webkit-mask-image: linear-gradient(90deg, transparent, #000 6%, #000 94%, transparent); mask-image: linear-gradient(90deg, transparent, #000 6%, #000 94%, transparent); }
.wk-mur__ligne { display: flex; gap: 1rem; margin: 0; }
.wk-mur__ligne.est-double { width: max-content; animation: wk-defile 120s linear infinite; }
.wk-mur__ligne--inverse.est-double { animation-direction: reverse; animation-duration: 140s; }
.wk-mur:hover .wk-mur__ligne { animation-play-state: paused; }
.wk-mur__ligne > figure { flex: none; margin: 0; width: clamp(12rem, 24vw, 21rem); }
.wk-mur__ligne img { display: block; width: 100%; aspect-ratio: 4 / 3; object-fit: cover; border-radius: var(--wk-rayon); box-shadow: 0 12px 28px rgba(0, 0, 0, .28); }
.wk-mur__ligne > figure:nth-child(3n + 1) img { rotate: -1.5deg; }
.wk-mur__ligne > figure:nth-child(3n + 2) img { rotate: 1deg; }
.wk-section--mur { overflow: hidden; }
@media (prefers-reduced-motion: reduce) { .wk-mur__ligne { flex-wrap: wrap; justify-content: center; } }
/* Chiffres réels : largeur fixe pendant qu'ils défilent. */
.wk-chiffre { font-variant-numeric: tabular-nums; }
/* Cartes des formations (En ligne) : toute la carte est cliquable, la formation offerte est en or. */
.wk-formations { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 19rem), 1fr)); gap: 1.25rem; margin-block: var(--wp--preset--spacing--60); }
.wk-formation { position: relative; display: flex; flex-direction: column; gap: .55rem; padding: 1.5rem 1.6rem 1.5rem; border-radius: var(--wk-rayon-grand); background: var(--wk-carte); border: 1px solid rgba(57, 41, 29, .12); transition: transform .3s var(--wk-ease), box-shadow .3s ease, border-color .2s ease; }
.wk-formation > * { margin: 0; }
.wk-formation:hover { transform: translateY(-4px); border-color: var(--wk-or); box-shadow: 0 16px 34px rgba(57, 41, 29, .14); }
.wk-formation__niveau { align-self: flex-start; padding: .3rem .75rem; border-radius: 50px; background: var(--wk-creme); font-size: var(--wp--preset--font-size--xs); font-weight: 800; letter-spacing: .06em; text-transform: uppercase; }
.wk-formation h3.wp-block-heading { font-size: var(--wp--preset--font-size--l); }
.wk-formation h3 a { color: inherit; text-decoration: none; }
.wk-formation h3 a::after { content: ""; position: absolute; inset: 0; border-radius: inherit; }
.wk-formation p:not([class*="__"]) { color: var(--wk-taupe); font-size: var(--wp--preset--font-size--s); }
.wk-formation .wk-formation__infos { margin-top: auto; padding-top: .6rem; font-size: var(--wp--preset--font-size--xs); font-weight: 800; color: var(--wk-or-texte); font-variant-numeric: tabular-nums; }
.wk-formation--offert { background: var(--wk-or); border-color: transparent; }
.wk-formation--offert :is(h3 a, p:not([class*="__"]), .wk-formation__infos) { color: var(--wk-sur-or); }
.wk-formation--offert .wk-formation__niveau { background: rgba(255, 255, 255, .22); color: var(--wk-sur-or); }
/* Mode sombre uniquement : sans @media, ces règles s'appliquaient AUSSI en clair,
   puisque la classe wk-sombre est posée sur toutes les pages prêtes pour le sombre.
   C'est ce qui rendait la pastille de prix rose pâle en plein jour (Gauthier, 21/09/2026). */
@media (prefers-color-scheme: dark) {
	body.wk-sombre .wk-formation:not(.wk-formation--offert) { border-color: rgba(255, 255, 255, .12); }
}
/* Choisir un didgeridoo : deux chemins (mêmes tuiles beiges que le menu). */
.wk-chemins { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 13rem), 1fr)); gap: .75rem; margin-top: 1.75rem; }
.wk-chemin { margin: 0; }
.wk-chemin a { display: grid; gap: .2rem; height: 100%; padding: 1.1rem 1.2rem; border-radius: 16px; background: rgba(196, 135, 56, .12); border: 1.5px solid rgba(196, 135, 56, .22); color: inherit; text-decoration: none; transition: transform .3s var(--wk-ease), border-color .2s ease; }
.wk-chemin a:hover { transform: translateY(-3px); border-color: var(--wk-or); }
.wk-chemin strong { font-size: var(--wp--preset--font-size--m); font-weight: 800; }
.wk-chemin strong::after { content: " \2193"; color: var(--wk-or-texte); }
.wk-chemin span { font-size: var(--wp--preset--font-size--xs); color: var(--wk-taupe); }
/* Trois didgeridoos en diagonale (en-tête). */
.wk-trio { display: grid; gap: 1.5rem; padding: 2rem 0; }
.wk-trio figure { margin: 0; }
.wk-trio img { display: block; width: 100%; height: auto; rotate: -14deg; filter: drop-shadow(0 14px 16px rgba(57, 41, 29, .22)); }
.wk-trio figure:nth-child(2) { margin-left: 10%; }
.wk-trio figure:nth-child(3) { margin-left: 20%; width: 80%; }
/* Échelle des prix : une carte par instrument. */
.wk-titre-echelle { margin-top: var(--wp--preset--spacing--70); }
.wk-echelle { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 17rem), 1fr)); /* 17 rem : quatre par ligne dans la zone commune (4 + 4), comme avant l'élargissement */ gap: 1rem; margin-block: var(--wp--preset--spacing--50); }
.wk-instrument { display: flex; flex-direction: column; gap: .4rem; padding: 1.1rem 1.25rem 1.3rem; border-radius: var(--wk-rayon-grand); background: var(--wk-carte); border: 1px solid rgba(57, 41, 29, .1); }
.wk-instrument > * { margin: 0; }
.wk-instrument figure { display: grid; place-items: center; height: 4.5rem; margin-bottom: .35rem; }
.wk-instrument figure img { max-height: 100%; width: auto; max-width: 100%; object-fit: contain; }
.wk-instrument__prix { align-self: flex-start; padding: .2rem .7rem; border-radius: 50px; background: var(--wk-or); color: var(--wk-sur-or); font-size: var(--wp--preset--font-size--xs); font-weight: 800; font-variant-numeric: tabular-nums; }
.wk-instrument h4.wp-block-heading { font-size: var(--wp--preset--font-size--m); }
.wk-instrument p:not([class*="__"]) { color: var(--wk-taupe); font-size: var(--wp--preset--font-size--s); }
.wk-echelle--evite { grid-template-columns: repeat(auto-fit, minmax(min(100%, 17rem), 1fr)); }
/* Pastille de prix d'un instrument à éviter : elle était d'un rose si pâle qu'on ne voyait plus
   la pastille, seulement le texte (Gauthier, 21/09/2026). Elle est maintenant pleine, comme la
   pastille dorée des bons instruments : c'est un avertissement, il doit se voir. */
.wk-instrument--evite .wk-instrument__prix { background: var(--wk-erreur, #B8382B); color: #FFFFFF; }
.wk-instrument--evite figure img { filter: grayscale(.4); }
/* Mode sombre uniquement : sans @media, ces règles s'appliquaient AUSSI en clair,
   puisque la classe wk-sombre est posée sur toutes les pages prêtes pour le sombre.
   C'est ce qui rendait la pastille de prix rose pâle en plein jour (Gauthier, 21/09/2026). */
@media (prefers-color-scheme: dark) {
	body.wk-sombre .wk-instrument { border-color: rgba(255, 255, 255, .12); }
	body.wk-sombre .wk-instrument--evite .wk-instrument__prix { background: rgba(255, 120, 110, .16); color: #ffb4ab; }
}
/* Les trois familles de notes, à écouter. */
.wk-notes { display: grid; gap: .75rem; }
.wk-note-audio { display: flex; flex-direction: column-reverse; gap: .6rem; margin: 0; padding: 1rem 1.1rem; border-radius: 16px; background: var(--wk-carte); border: 1.5px solid rgba(57, 41, 29, .1); }
.wk-note-audio figcaption { margin: 0; font-size: var(--wp--preset--font-size--s); color: var(--wk-taupe); text-align: left; }
.wk-note-audio figcaption strong { display: block; color: var(--wk-ecorce); font-size: var(--wp--preset--font-size--m); }
.wk-note-audio audio { width: 100%; height: 2.5rem; }
.wk-note-audio--conseil { background: rgba(196, 135, 56, .12); border-color: var(--wk-or); }
.wk-note-texte { font-style: italic; color: var(--wk-taupe); }
/* Fiche du didgeridoo signature. */
.wk-signature .wk-coches { margin-block: 1rem; }
.wk-signature__prix { font-size: var(--wp--preset--font-size--m); line-height: 1.6; }
.wk-signature__prix strong { color: var(--wk-or-texte); }
/* Quatre vidéos en grille, et liens en pastilles. */
.wk-videos { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 22rem), 1fr)); gap: 1rem; margin-top: var(--wp--preset--spacing--50); }
.wk-videos > figure { margin: 0; }
.wk-puces--liens { justify-content: center; margin-top: var(--wp--preset--spacing--50); }
.wk-puces--liens a { color: inherit; text-decoration: none; }
.wk-puces--liens li { transition: background-color .2s ease; }
.wk-puces--liens li:hover { background: var(--wk-or); }
.wk-puces--liens li:hover a { color: var(--wk-sur-or); }
.wk-chemins .wk-chemin a { text-decoration-line: none; }

/* ===== Page Stages v2 (structure des pages de réservation en présentiel) ===== */
.wk-atout--fiche { --ico: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23C48738' stroke-width='2' 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 3v5h5'/%3E%3Ccircle cx='10' cy='16.5' r='1.6'/%3E%3Cpath d='M11.6 16.5v-5l3 1'/%3E%3C/svg%3E"); }
.wk-atout--declic { --ico: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23C48738' stroke-width='2' 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"); }
.wk-atout--jours { --ico: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23C48738' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='5' width='18' height='16' rx='2'/%3E%3Cpath d='M3 10h18M8 3v4M16 3v4'/%3E%3C/svg%3E"); }
.wk-atout--prix { --ico: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23C48738' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M18 7a7 7 0 1 0 0 10'/%3E%3Cpath d='M4 10h10M4 14h10'/%3E%3C/svg%3E"); }
/* Encart « prochain stage » (en-tête) : lieu, dates, état des places. */
.wk-prochain { display: grid; grid-template-columns: 1fr auto; gap: .1rem 1rem; align-items: center; max-width: 32rem; margin-top: 1.5rem; padding: 1rem 1.2rem; border-radius: 16px; background: rgba(196, 135, 56, .12); border: 1.5px solid rgba(196, 135, 56, .22); color: inherit; text-decoration: none; transition: transform .3s var(--wk-ease), border-color .2s ease; }
.wk-prochain:hover { transform: translateY(-2px); border-color: var(--wk-or); }
.wk-prochain__etiquette { grid-column: 1 / -1; font-size: var(--wp--preset--font-size--xs); font-weight: 800; letter-spacing: .08em; text-transform: uppercase; color: var(--wk-or-texte); }
.wk-prochain__lieu { font-size: var(--wp--preset--font-size--l); font-weight: 800; line-height: 1.2; }
.wk-prochain__dates { grid-column: 1; font-size: var(--wp--preset--font-size--s); color: var(--wk-taupe); }
.wk-prochain__etat { grid-column: 2; grid-row: 2 / span 2; justify-self: end; padding: .35rem .8rem; border-radius: 50px; background: var(--wk-or); color: var(--wk-sur-or); font-size: var(--wp--preset--font-size--xs); font-weight: 800; white-space: nowrap; }
.wk-prochain--rare .wk-prochain__etat { animation: wk-pouls 2.4s ease-in-out infinite; }
.wk-prochain--complet .wk-prochain__etat, .wk-prochain--bientot .wk-prochain__etat { background: var(--wk-creme); color: var(--wk-ecorce); }
@keyframes wk-pouls { 50% { box-shadow: 0 0 0 6px rgba(196, 135, 56, .2); } }
@media (max-width: 30rem) { .wk-prochain { grid-template-columns: 1fr; } .wk-prochain__etat { grid-column: 1; grid-row: auto; justify-self: start; margin-top: .4rem; } }
/* Quatre repères sous l'en-tête. */
.wk-section.wk-section--reperes { padding-block: var(--wp--preset--spacing--60); }
.wk-reperes { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 13rem), 1fr)); gap: 1.25rem; }
.wk-repere { display: grid; grid-template-columns: 2.9rem 1fr; column-gap: .85rem; align-items: center; margin: 0; }
.wk-repere::before { content: ""; grid-row: span 2; width: 2.9rem; height: 2.9rem; border-radius: 50%; background: rgba(196, 135, 56, .14) no-repeat center / 1.45rem var(--ico); }
.wk-repere strong { font-size: var(--wp--preset--font-size--l); font-weight: 800; line-height: 1.15; }
.wk-repere span { font-size: var(--wp--preset--font-size--xs); color: var(--wk-taupe); }
/* Carte d'avis mise en avant (« Est-ce pour moi ? »). */
.wk-avis-carte .wk-avis-carte__texte { font-size: var(--wp--preset--font-size--m); font-weight: 600; line-height: 1.5; }
.wk-avis-carte .wk-avis-carte__auteur { margin-top: .4rem; font-size: var(--wp--preset--font-size--xs); font-weight: 800; color: var(--wk-or-texte); }
.wk-avis-carte .wk-avis-carte__auteur + .wk-avis-carte__texte { margin-top: 1.4rem; padding-top: 1.4rem; border-top: 1px solid var(--trait); }
/* Infos pratiques : trois cartes. */
.wk-compris { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 19rem), 1fr)); gap: 1.25rem; margin-top: var(--wp--preset--spacing--60); }
.wk-compris .wk-carte h3.wp-block-heading { font-size: var(--wp--preset--font-size--l); }
.wk-compris .wk-coches li { font-size: var(--wp--preset--font-size--s); }
/* Barre de réservation collée en bas (téléphone) : visible une fois l'en-tête passé, cachée sur les dates et l'appel final. */
.wk-colle { position: fixed; z-index: 40; left: .75rem; right: .75rem; bottom: calc(.75rem + env(safe-area-inset-bottom)); display: flex; flex-wrap: nowrap; gap: .5rem; margin: 0 !important; padding: .45rem; border-radius: 50px; background: color-mix(in srgb, var(--wk-creme) 94%, transparent); -webkit-backdrop-filter: blur(12px); backdrop-filter: blur(12px); border: 1px solid var(--carte-bord); box-shadow: 0 12px 30px rgba(57, 41, 29, .24); transition: transform .4s var(--wk-ease), opacity .25s ease, visibility .4s; }
.wk-colle:not(.est-affichee) { transform: translateY(160%); opacity: 0; visibility: hidden; }
.wk-colle .wp-block-button { flex: 1 1 0; margin: 0; }
.wk-colle .wp-block-button__link { width: 100%; justify-content: center; padding-inline: .8rem; white-space: nowrap; }
@media (min-width: 64rem) { .wk-colle { display: none; } }
/* Citation « ambiance » sous les étapes du stage. */
.wk-citation--ambiance { max-width: 46rem; margin: var(--wp--preset--spacing--60) auto 0; }
.wk-citation--ambiance p { font-size: clamp(1.2rem, .95rem + 1vw, 1.6rem); }
.wk-section a.wk-prochain { text-decoration-line: none; }
/* Capture d'une fiche personnelle de stagiaire (page Stages). */
.wk-fiche { margin-block: var(--wp--preset--spacing--60); }
.wk-fiche__capture img { display: block; width: 100%; height: auto; max-height: 30rem; object-fit: cover; object-position: top; border-radius: var(--wk-rayon-grand); background: #fff; border: 1px solid rgba(57, 41, 29, .12); box-shadow: 0 18px 40px rgba(57, 41, 29, .16); rotate: -1.5deg; }
.wk-fiche h3.wp-block-heading { margin-top: .35rem; font-size: var(--wp--preset--font-size--xl); }

/* ===== Retours de Gauthier sur la page Stages (15/09) ===== */
/* Les grilles du thème : pas de marge héritée de la mise en page « flow » (cartes décalées). */
.wk-section :is(.wk-frise, .wk-formations, .wk-echelle, .wk-chemins, .wk-notes, .wk-compris, .wk-reperes, .wk-videos) > * { margin-block: 0; }
/* Preuve sociale : photos de stages empilées et chiffres réels. */
.wk-affluence-ligne { margin-top: 1.25rem; }
.wk-affluence { display: inline-flex; align-items: center; gap: .75rem; font-size: var(--wp--preset--font-size--s); line-height: 1.35; }
.wk-affluence__photos { display: inline-flex; flex: none; }
.wk-affluence__photos img { width: 2.5rem; height: 2.5rem; border-radius: 50%; object-fit: cover; border: 2px solid var(--wk-creme); box-shadow: 0 2px 6px rgba(57, 41, 29, .18); }
.wk-affluence__photos img + img { margin-left: -.8rem; }
.wk-affluence strong { color: var(--wk-or-texte); }
/* Le signal « ça bouge » a sa propre ligne, centrée sous la phrase (Gauthier, 21/09/2026) :
   collé en fin de phrase il passait pour un bout de texte surligné, et il coupait la lecture.
   Seul sur sa ligne, avec son point qui bat, il se lit d'un coup d'œil. */
.wk-section.wk-section p.wk-derniere-ligne { width: 100%; margin: .9rem 0 0; text-align: center; }
.wk-section.wk-section p.wk-derniere-ligne:empty { display: none; }
.wk-derniere { display: inline-flex; align-items: center; gap: .55rem; padding: .45rem 1rem; border-radius: 50px; background: rgba(46, 160, 67, .14); box-shadow: inset 0 0 0 1px rgba(46, 160, 67, .3); color: var(--wk-ecorce); font-size: var(--wp--preset--font-size--s); font-weight: 800; }
.wk-derniere::before { content: ""; flex: none; width: .55rem; height: .55rem; border-radius: 50%; background: #2ea043; animation: wk-pouls-vert 2s ease-in-out infinite; }
@keyframes wk-pouls-vert { 50% { box-shadow: 0 0 0 5px rgba(46, 160, 67, .2); } }
/* Mode sombre uniquement : sans @media, ces règles s'appliquaient AUSSI en clair,
   puisque la classe wk-sombre est posée sur toutes les pages prêtes pour le sombre.
   C'est ce qui rendait la pastille de prix rose pâle en plein jour (Gauthier, 21/09/2026). */
@media (prefers-color-scheme: dark) {
	body.wk-sombre .wk-derniere { color: var(--wk-ecorce); background: rgba(46, 160, 67, .18); }
}
@media (prefers-reduced-motion: reduce) { .wk-derniere::before { animation: none; } }
/* Bouton WhatsApp : l'icône dit où l'on arrive. */
.wk-bouton-whatsapp .wp-block-button__link { display: inline-flex; align-items: center; gap: .55rem; }
.wk-bouton-whatsapp .wp-block-button__link::before { content: ""; flex: none; width: 1.25em; height: 1.25em; background: #25D366; -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23000' d='M17.472 14.382c-.297-.149-1.758-.867-2.03-.967-.273-.099-.471-.148-.67.15-.197.297-.767.966-.94 1.164-.173.199-.347.223-.644.075-.297-.15-1.255-.463-2.39-1.475-.883-.788-1.48-1.761-1.653-2.059-.173-.297-.018-.458.13-.606.134-.133.298-.347.446-.52.149-.174.198-.298.298-.497.099-.198.05-.371-.025-.52-.075-.149-.669-1.612-.916-2.207-.242-.579-.487-.5-.669-.51-.173-.008-.371-.01-.57-.01-.198 0-.52.074-.792.372-.272.297-1.04 1.016-1.04 2.479 0 1.462 1.065 2.875 1.213 3.074.149.198 2.096 3.2 5.077 4.487.709.306 1.262.489 1.694.625.712.227 1.36.195 1.871.118.571-.085 1.758-.719 2.006-1.413.248-.694.248-1.289.173-1.413-.074-.124-.272-.198-.57-.347m-5.421 7.403h-.004a9.87 9.87 0 01-5.031-1.378l-.361-.214-3.741.982.998-3.648-.235-.374a9.86 9.86 0 01-1.51-5.26c.001-5.45 4.436-9.884 9.888-9.884 2.64 0 5.122 1.03 6.988 2.898a9.825 9.825 0 012.893 6.994c-.003 5.45-4.437 9.884-9.885 9.884m8.413-18.297A11.815 11.815 0 0012.05 0C5.495 0 .16 5.335.157 11.892c0 2.096.547 4.142 1.588 5.945L.057 24l6.305-1.654a11.882 11.882 0 005.683 1.448h.005c6.554 0 11.89-5.335 11.893-11.893a11.821 11.821 0 00-3.48-8.413z'/%3E%3C/svg%3E") center / contain no-repeat; mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23000' d='M17.472 14.382c-.297-.149-1.758-.867-2.03-.967-.273-.099-.471-.148-.67.15-.197.297-.767.966-.94 1.164-.173.199-.347.223-.644.075-.297-.15-1.255-.463-2.39-1.475-.883-.788-1.48-1.761-1.653-2.059-.173-.297-.018-.458.13-.606.134-.133.298-.347.446-.52.149-.174.198-.298.298-.497.099-.198.05-.371-.025-.52-.075-.149-.669-1.612-.916-2.207-.242-.579-.487-.5-.669-.51-.173-.008-.371-.01-.57-.01-.198 0-.52.074-.792.372-.272.297-1.04 1.016-1.04 2.479 0 1.462 1.065 2.875 1.213 3.074.149.198 2.096 3.2 5.077 4.487.709.306 1.262.489 1.694.625.712.227 1.36.195 1.871.118.571-.085 1.758-.719 2.006-1.413.248-.694.248-1.289.173-1.413-.074-.124-.272-.198-.57-.347m-5.421 7.403h-.004a9.87 9.87 0 01-5.031-1.378l-.361-.214-3.741.982.998-3.648-.235-.374a9.86 9.86 0 01-1.51-5.26c.001-5.45 4.436-9.884 9.888-9.884 2.64 0 5.122 1.03 6.988 2.898a9.825 9.825 0 012.893 6.994c-.003 5.45-4.437 9.884-9.885 9.884m8.413-18.297A11.815 11.815 0 0012.05 0C5.495 0 .16 5.335.157 11.892c0 2.096.547 4.142 1.588 5.945L.057 24l6.305-1.654a11.882 11.882 0 005.683 1.448h.005c6.554 0 11.89-5.335 11.893-11.893a11.821 11.821 0 00-3.48-8.413z'/%3E%3C/svg%3E") center / contain no-repeat; }
/* Barre de réservation v2 (conventions Airbnb, Booking) : infos du prochain stage à gauche, WhatsApp et « Réserver » à droite.
   Téléphone : en bas de l'écran. Ordinateur : sous l'en-tête. */
.wk-colle { position: fixed; z-index: 40; top: auto; left: .6rem; right: .6rem; bottom: calc(.6rem + env(safe-area-inset-bottom)); display: flex; flex-wrap: nowrap; align-items: center; gap: .5rem; max-width: var(--wk-largeur); margin: 0 auto !important; padding: .4rem .4rem .4rem 1.1rem; border-radius: 50px; background: color-mix(in srgb, var(--wk-creme) 94%, transparent); -webkit-backdrop-filter: blur(12px); backdrop-filter: blur(12px); border: 1px solid var(--carte-bord); box-shadow: 0 12px 30px rgba(57, 41, 29, .24); transform: none; translate: 0 0; transition: translate .45s var(--wk-ease), opacity .25s ease, visibility .45s; }
.wk-colle:not(.est-affichee) { transform: none; translate: 0 170%; opacity: 0; visibility: hidden; }
.wk-colle__infos { flex: 1; min-width: 0; display: grid; line-height: 1.25; }
.wk-colle__infos strong { font-size: var(--wp--preset--font-size--s); font-weight: 800; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.wk-colle__infos span { font-size: var(--wp--preset--font-size--xs); color: var(--wk-taupe); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.wk-colle__whatsapp { flex: none; width: 2.75rem; height: 2.75rem; border-radius: 50%; background: #25D366 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23fff' d='M17.472 14.382c-.297-.149-1.758-.867-2.03-.967-.273-.099-.471-.148-.67.15-.197.297-.767.966-.94 1.164-.173.199-.347.223-.644.075-.297-.15-1.255-.463-2.39-1.475-.883-.788-1.48-1.761-1.653-2.059-.173-.297-.018-.458.13-.606.134-.133.298-.347.446-.52.149-.174.198-.298.298-.497.099-.198.05-.371-.025-.52-.075-.149-.669-1.612-.916-2.207-.242-.579-.487-.5-.669-.51-.173-.008-.371-.01-.57-.01-.198 0-.52.074-.792.372-.272.297-1.04 1.016-1.04 2.479 0 1.462 1.065 2.875 1.213 3.074.149.198 2.096 3.2 5.077 4.487.709.306 1.262.489 1.694.625.712.227 1.36.195 1.871.118.571-.085 1.758-.719 2.006-1.413.248-.694.248-1.289.173-1.413-.074-.124-.272-.198-.57-.347m-5.421 7.403h-.004a9.87 9.87 0 01-5.031-1.378l-.361-.214-3.741.982.998-3.648-.235-.374a9.86 9.86 0 01-1.51-5.26c.001-5.45 4.436-9.884 9.888-9.884 2.64 0 5.122 1.03 6.988 2.898a9.825 9.825 0 012.893 6.994c-.003 5.45-4.437 9.884-9.885 9.884m8.413-18.297A11.815 11.815 0 0012.05 0C5.495 0 .16 5.335.157 11.892c0 2.096.547 4.142 1.588 5.945L.057 24l6.305-1.654a11.882 11.882 0 005.683 1.448h.005c6.554 0 11.89-5.335 11.893-11.893a11.821 11.821 0 00-3.48-8.413z'/%3E%3C/svg%3E") center / 1.35rem no-repeat; transition: transform .2s ease; }
.wk-colle__whatsapp:hover { transform: scale(1.06); }
.wk-colle__reserver { flex: none; min-height: 2.75rem; }
.wk-colle__plus { display: none; }
@media (min-width: 64rem) {
	.wk-colle { display: flex; top: 5.6rem; bottom: auto; left: 1rem; right: 1rem; padding-left: 1.5rem; }
	.wk-colle:not(.est-affichee) { translate: 0 -30%; }
	.wk-colle__plus { display: inline; }
}
/* Carte d'avis mise en avant : composant réutilisable (motif « Avis mis en avant » dans l'éditeur). */
.wk-avis-carte--centre { max-width: 42rem; margin: var(--wp--preset--spacing--60) auto 0; }
/* Les avis en carrousel prennent le même esprit : texte plus présent, auteur doré, carte douce. */
.wk-temoignage .wk-temoignage__texte { font-weight: 600; }
.wk-section:not(.wk-section--bande) .wk-temoignage { background: var(--wk-carte); border-color: var(--carte-bord); box-shadow: 0 10px 28px -12px rgba(57, 41, 29, .22); }
.wk-section:not(.wk-section--bande) .wk-temoignage .wk-temoignage__etoiles { color: var(--wk-ecorce); }
.wk-section:not(.wk-section--bande) .wk-temoignage__auteur span { color: var(--wk-or-texte); }
/* Boutons de l'en-tête sur téléphone : pleine largeur, sur une ligne. */
.wk-bouton-whatsapp .wp-block-button__link { white-space: nowrap; }
@media (max-width: 40rem) {
	.wk-hero-accueil .wp-block-buttons > .wp-block-button { flex: 1 1 100%; }
	.wk-hero-accueil .wp-block-buttons > .wp-block-button > .wp-block-button__link { width: 100%; justify-content: center; }
}
.wk-colle__reserver { gap: 0; }
.wk-colle__reserver .wk-colle__plus { margin-left: .3em; }
/* Titres : jamais trop étalés (lecture), retour à la ligne équilibré. Règle pour tout le site.
   Titres centrés et bandeaux d'appel : blocs centrés par la mise en page ; titres de colonnes : alignés à gauche. */
.wk-section :is(h1, h2, h3).wp-block-heading { text-wrap: balance; }
.wk-section h2.wp-block-heading.wk-texte-centre, .wk-appel h2.wp-block-heading { max-width: 26ch; margin-inline: auto; }
.wk-section .wp-block-column > :is(h1, h2).wp-block-heading { max-width: 22ch; }
.wk-section p.wk-texte-centre:not(.wk-surtitre) { max-width: 62ch; margin-inline: auto; }
/* En ligne et en stage : deux cartes côte à côte, et le coupon des élèves. */
.wk-duo { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 20rem), 1fr)); gap: 1.25rem; margin-top: var(--wp--preset--spacing--60); }
.wk-section .wk-duo > * { margin-block: 0; }
.wk-duo__carte h3.wp-block-heading { font-size: var(--wp--preset--font-size--xl); }
.wk-duo__carte .wk-coches { margin-block: 1rem; }
.wk-duo__carte--stage { background: rgba(196, 135, 56, .12); border-color: rgba(196, 135, 56, .28); }
/* Le bandeau « −30 € sur un stage » des pages qui ne sont pas des pages de vente
   (Stages, Formation en ligne). Même famille que les cartes « bonus » : encadré arrondi,
   montant sur une pastille dorée, texte à côté. Le faux ticket du 21/09 au matin est retiré
   (retour de Gauthier : « je déteste ton design de faux coupons »). */
.wk-coupon {
	display: flex; align-items: center; gap: 1rem;
	max-width: 34rem; margin: var(--wp--preset--spacing--60) auto 0;
	padding: 1.1rem 1.35rem;
	border: 0; border-radius: var(--wk-rayon-grand);
	background: var(--wk-carte);
	box-shadow: inset 0 0 0 1px var(--carte-bord, rgba(57, 41, 29, .12));
}
.wk-coupon > * { margin: 0; }
.wk-coupon .wk-coupon__montant {
	flex: none; display: grid; place-items: center; width: auto; height: auto;
	padding: .45rem .85rem;
	border-radius: var(--wk-rayon-bouton); rotate: none;
	background: var(--wk-or); color: var(--wk-sur-or);
	font-size: var(--wp--preset--font-size--m); font-weight: 900; letter-spacing: -.01em; line-height: 1.2;
	white-space: nowrap;
}
.wk-coupon .wk-coupon__texte { font-size: var(--wp--preset--font-size--s); line-height: 1.45; }
.wk-coupon .wk-coupon__texte strong { display: block; margin-bottom: .15rem; font-size: var(--wp--preset--font-size--m); }
@media (max-width: 30rem) {
	.wk-coupon { align-items: flex-start; flex-direction: column; gap: .7rem; }
}
/* Barre de réservation sur ordinateur : petite carte flottante en bas à droite (plus de double bandeau sous le menu). */
@media (min-width: 64rem) {
	.wk-colle { top: auto; bottom: 1.25rem; left: auto; right: 1.25rem; width: auto; max-width: 34rem; margin: 0 !important; padding: .55rem .55rem .55rem 1.25rem; border-radius: 24px; }
	.wk-colle:not(.est-affichee) { translate: 0 140%; }
}
@media (min-width: 64rem) { .wk-colle { max-width: 38rem; } }
/* Menu du téléphone : langue en haut près de la croix ; en bas, boutons pleine largeur l'un sous l'autre.
   « Mon espace » reprend le contour doré de l'ordinateur, sans halo ; « Se déconnecter » en lien discret. */
.wk-plein__outils { display: flex; align-items: center; gap: .6rem; }
.wk-plein__outils .wk-langues > summary { height: 2.6rem; }
.wk-plein__outils .wk-langues__panneau { right: -.35rem; }
@media (max-width: 63.99rem) {
	.wk-plein__actions { display: grid; grid-template-columns: 1fr; gap: .65rem; justify-content: stretch; }
	.wk-plein__actions .wk-bouton { width: 100%; justify-content: center; min-height: 3.25rem; margin: 0; font-size: var(--wp--preset--font-size--m); }
	.wk-plein__actions .wk-entete__espace .wk-avatar { margin-left: 0; }
	.wk-plein__actions .wk-entete__espace { gap: .6rem; }
	.wk-plein__secondaire { justify-self: center; padding: .5rem 1rem; font-size: var(--wp--preset--font-size--s); font-weight: 600; } /* couleur et soulignement : ceux de .wk-plein a (texte simple, validé par Gauthier) */
	.wk-plein__secondaire:hover { color: var(--wk-ecorce); }
}
/* Volet dépliable dans une réponse de FAQ (critères d'un lieu de stage). */
.wk-faq .wk-conditions { margin: 0 0 1.2rem; padding: .2rem 1.1rem; border-radius: 16px; background: rgba(196, 135, 56, .08); border: 1.5px solid rgba(196, 135, 56, .22); color: var(--wk-ecorce); }
.wk-faq .wk-conditions > summary { cursor: pointer; list-style: none; display: flex; align-items: center; justify-content: space-between; gap: .75rem; padding: .8rem 0; font-weight: 800; font-size: var(--wp--preset--font-size--s); }
.wk-faq .wk-conditions > summary::-webkit-details-marker { display: none; }
.wk-faq .wk-conditions > summary::after { content: ""; width: .45rem; height: .45rem; margin-top: -.25rem; border-right: 2px solid currentColor; border-bottom: 2px solid currentColor; transform: rotate(45deg); transition: transform .4s var(--wk-ease), margin .4s var(--wk-ease); }
.wk-faq .wk-conditions[open]:not(.est-fermeture) > summary::after { transform: rotate(225deg); margin-top: .25rem; }
.wk-faq .wk-conditions .wk-coches { margin: 0 0 .8rem; }
.wk-faq .wk-conditions .wk-coches li, .wk-faq .wk-conditions p { font-size: var(--wp--preset--font-size--s); color: var(--wk-taupe); }
.wk-faq .wk-conditions > p { margin: 0 0 1rem; }
/* Carte d'avis : aussi le design de toutes les citations d'élèves (les phrases de Gauthier gardent la barre dorée).
   Variante « grande » pour une citation courte mise en vedette, sur fond clair ou sur la bande sombre. */
.wk-avis-carte--grande .wk-avis-carte__texte { font-size: clamp(1.4rem, 1.05rem + 1.5vw, 2.1rem); font-weight: 800; line-height: 1.2; letter-spacing: -.02em; }
/* Version sombre de la carte d'avis, sur les bandes brunes : fond translucide, texte clair, étoiles et nom en or clair. */
.wk-section--bande .wk-avis-carte { background: rgba(255, 255, 255, .06); border-color: rgba(255, 255, 255, .14); box-shadow: 0 18px 40px -18px rgba(0, 0, 0, .5); color: var(--bande-texte); -webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px); }
.wk-section--bande .wk-avis-carte .wk-temoignage__etoiles, .wk-section--bande .wk-avis-carte .wk-avis-carte__auteur { color: var(--bande-accent); }
.wk-section--bande .wk-avis-carte .wk-avis-carte__auteur + .wk-avis-carte__texte { border-top-color: rgba(255, 255, 255, .14); }
/* Menu plein écran : croix seule, sans rond blanc (demande de Gauthier, 15/09), comme dans le menu de Mon compte. */
@media (max-width: 63.99rem) {
	.wk-plein__fermer { width: 2.6rem; height: 2.6rem; background: transparent; transition: transform .3s ease, color .2s ease; }
	.wk-plein__fermer:hover { color: var(--wk-or-texte); }
}
/* Carrousels d'avis : de bord à bord de l'écran, la première carte alignée sur le contenu (tout le site). */
.wk-section:has(.wk-slider) { overflow-x: clip; }
.wk-section .wk-slider { container-type: inline-size; }
.wk-section .wk-slider .wk-slider__piste { margin-inline: calc(50cqw - 50vw); padding-inline: calc(50vw - 50cqw + 2px); scroll-padding-inline: calc(50vw - 50cqw + 2px); }
html, body { overflow-x: clip; }
/* Formations : deux chemins (débutant / souffle continu acquis). */
.wk-voies { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 24rem), 1fr)); gap: 1.5rem; align-items: start; margin-top: var(--wp--preset--spacing--60); }
.wk-section .wk-voies > *, .wk-voie > * { margin-block: 0; }
.wk-voie { display: grid; gap: .6rem; padding: 1.6rem; border-radius: var(--wk-rayon-grand); border: 1.5px solid rgba(57, 41, 29, .12); background: rgba(255, 255, 255, .35); }
.wk-voie--debut { border-color: rgba(196, 135, 56, .35); background: rgba(196, 135, 56, .08); }
.wk-voie__titre.wp-block-heading { font-size: var(--wp--preset--font-size--xl); }
.wk-voie__intro { color: var(--wk-taupe); font-size: var(--wp--preset--font-size--s); }
.wk-voie .wk-formations { grid-template-columns: 1fr; gap: .75rem; margin: .6rem 0 0; }
.wk-voie--avance .wk-formations { grid-template-columns: repeat(auto-fill, minmax(min(100%, 15rem), 1fr)); }
.wk-voie .wk-formation { padding: 1.1rem 1.25rem; gap: .4rem; }
.wk-voie .wk-formation h3.wp-block-heading { font-size: var(--wp--preset--font-size--m); }
/* Mode sombre uniquement : sans @media, ces règles s'appliquaient AUSSI en clair,
   puisque la classe wk-sombre est posée sur toutes les pages prêtes pour le sombre.
   C'est ce qui rendait la pastille de prix rose pâle en plein jour (Gauthier, 21/09/2026). */
@media (prefers-color-scheme: dark) {
	body.wk-sombre .wk-voie { border-color: rgba(255, 255, 255, .12); background: rgba(255, 255, 255, .03); }
}
.wk-section .wk-formation > .wp-block-heading, .wk-section .wk-formation > p { margin-block: 0; }

/* Stages et formations : cartes nommées, avec pictogramme et appel en pilule (retour de Gauthier). */
.wk-duo__carte { display: flex; flex-direction: column; }
.wk-duo__carte::before { content: ""; display: block; width: 3rem; height: 3rem; margin-bottom: 1rem; border-radius: 50%; background: rgba(196, 135, 56, .14) no-repeat center / 1.6rem var(--ico); }
.wk-duo__carte--ligne { --ico: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23C48738' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='4' width='18' height='12' rx='2'/%3E%3Cpath d='M2 20h20'/%3E%3C/svg%3E"); }
.wk-duo__carte--stage { --ico: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23C48738' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M17 21v-2a4 4 0 0 0-4-4H5a4 4 0 0 0-4 4v2'/%3E%3Ccircle cx='9' cy='7' r='4'/%3E%3Cpath d='M23 21v-2a4 4 0 0 0-3-3.87M16 3.13a4 4 0 0 1 0 7.75'/%3E%3C/svg%3E"); }
.wk-duo__carte > h3.wp-block-heading { margin: 0; }
.wk-duo__carte > .wk-duo__formule { margin: .3rem 0 0; font-weight: 700; color: var(--wk-or-texte); }
.wk-duo__carte > .wp-block-buttons { margin-top: auto; padding-top: 1.25rem; }
/* Titres centrés : ils gardent la couleur du texte (écorce, ou claire sur les bandes), le taupe de .wk-texte-centre est réservé aux textes. */
:is(h1, h2, h3).wk-texte-centre { color: inherit; }

/* ===== Par où commencer : cursus illustré (page En ligne), visuels des formations + badge de cycle ===== */
.wk-cursus { display: grid; gap: clamp(2.25rem, 4vw, 3.25rem); margin-top: var(--wp--preset--spacing--60); }
.wk-section .wk-cursus > *, .wk-cursus__voie > *, .wk-cursus__tete > *, .wk-cursus__cartes > *, .wk-cursus__offerts > *, .wk-cursus__mini > *, .wk-cursus__carte > * { margin-block: 0; }
.wk-cursus__voie { display: grid; gap: 1.1rem; }
.wk-cursus__tete { display: flex; flex-wrap: wrap; align-items: center; gap: .5rem 1rem; }
.wk-cursus__tete h3.wp-block-heading { font-size: var(--wp--preset--font-size--xl); }
.wk-cursus__preuve { padding: .3rem .85rem; border-radius: 50px; background: rgba(196, 135, 56, .14); color: var(--wk-or-texte); font-size: var(--wp--preset--font-size--xs); font-weight: 800; }
.wk-cursus__cartes { display: grid; gap: 1.25rem; grid-template-columns: repeat(4, minmax(0, 1fr)); }
.wk-cursus__voie--debut .wk-cursus__cartes { grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 3rem; }
.wk-cursus__carte { --couleur: var(--wk-or); position: relative; display: flex; flex-direction: column; gap: .45rem; padding-bottom: 1.3rem; border-radius: var(--wk-rayon-grand); background: var(--wk-carte); border: 1px solid rgba(57, 41, 29, .08); transition: transform .35s var(--wk-ease), box-shadow .35s var(--wk-ease), border-color .35s; }
.wk-cursus__carte > :not(.wk-cursus__visuel, .wk-cursus__badge) { padding-inline: 1.3rem; }
.wk-cursus__carte:hover { transform: translateY(-4px); border-color: var(--couleur); box-shadow: 0 16px 34px rgba(57, 41, 29, .14); }
.wk-cursus__carte--offert { border-color: rgba(196, 135, 56, .45); }
.wk-cursus__carte--art { --couleur: #6B92C4; }
.wk-cursus__carte--souffles { --couleur: #4A9B7E; }
.wk-cursus__carte--coeur { --couleur: #8B5A8E; }
.wk-cursus__carte--passerelle { --couleur: #B8382B; }
.wk-cursus__carte--origines { --couleur: #7E5424; }
.wk-section .wk-cursus__visuel { margin: 0 0 .55rem; aspect-ratio: 3 / 2; overflow: hidden; border-radius: var(--wk-rayon-grand) var(--wk-rayon-grand) 0 0; }
.wk-cursus__visuel img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform .6s var(--wk-ease); }
.wk-cursus__carte:hover .wk-cursus__visuel img { transform: scale(1.04); }
.wk-section .wk-cursus__badge { position: absolute; top: .85rem; left: .85rem; padding: .32rem .8rem; border-radius: 50px; background: var(--couleur); color: #fff; font-size: var(--wp--preset--font-size--xs); font-weight: 800; letter-spacing: .03em; box-shadow: 0 4px 14px rgba(0, 0, 0, .2); }
.wk-cursus__carte h3.wp-block-heading { font-size: var(--wp--preset--font-size--l); }
.wk-cursus__voie:not(.wk-cursus__voie--debut) .wk-cursus__carte h3.wp-block-heading { font-size: var(--wp--preset--font-size--m); }
.wk-cursus__carte h3 a { color: inherit; text-decoration: none; }
.wk-cursus__carte h3 a::after { content: ""; position: absolute; inset: 0; border-radius: inherit; z-index: 1; }
.wk-cursus__carte p:not([class*="__"]) { color: var(--wk-taupe); font-size: var(--wp--preset--font-size--s); }
.wk-section .wk-cursus__infos { margin-top: auto; padding-top: .35rem; font-size: var(--wp--preset--font-size--xs); font-weight: 800; color: var(--wk-or-texte); font-variant-numeric: tabular-nums; }
/* Flèche entre le cours offert et L'art du didgeridoo. */
.wk-cursus__voie--debut .wk-cursus__carte:first-child::after { content: ""; position: absolute; z-index: 2; top: 30%; right: calc(-1.5rem - 1.2rem); width: 2.4rem; height: 2.4rem; border-radius: 50%; background: var(--wk-or) no-repeat center / 1.1rem url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14M13 6l6 6-6 6'/%3E%3C/svg%3E"); box-shadow: 0 6px 16px rgba(196, 135, 56, .4); pointer-events: none; }
/* Cours offerts pour lancer le deuxième chemin. */
.wk-cursus__offerts { display: flex; flex-wrap: wrap; align-items: center; gap: .7rem 1rem; }
.wk-cursus__offerts-titre { font-size: var(--wp--preset--font-size--s); font-weight: 700; color: var(--wk-taupe); }
.wk-cursus__mini { position: relative; display: flex; align-items: center; gap: .7rem; padding: .35rem 1rem .35rem .35rem; border-radius: 50px; background: var(--wk-carte); border: 1px solid rgba(196, 135, 56, .35); transition: border-color .3s, transform .3s var(--wk-ease); }
.wk-cursus__mini:hover { border-color: var(--wk-or); transform: translateY(-2px); }
.wk-section .wk-cursus__mini-visuel { flex: none; width: 2.6rem; height: 2.6rem; margin: 0; border-radius: 50%; overflow: hidden; }
.wk-cursus__mini-visuel img { width: 100%; height: 100%; object-fit: cover; }
.wk-cursus__mini-titre { font-size: var(--wp--preset--font-size--s); font-weight: 700; }
.wk-cursus__mini-titre a { color: inherit; text-decoration: none; }
.wk-cursus__mini-titre a::after { content: ""; position: absolute; inset: 0; border-radius: inherit; }
.wk-cursus__mini-titre span { margin-left: .55rem; padding: .12rem .55rem; border-radius: 50px; background: var(--wk-or); color: var(--wk-sur-or); font-size: var(--wp--preset--font-size--xs); font-weight: 800; }
/* Mode sombre uniquement : sans @media, ces règles s'appliquaient AUSSI en clair,
   puisque la classe wk-sombre est posée sur toutes les pages prêtes pour le sombre.
   C'est ce qui rendait la pastille de prix rose pâle en plein jour (Gauthier, 21/09/2026). */
@media (prefers-color-scheme: dark) {
	body.wk-sombre :is(.wk-cursus__carte:not(.wk-cursus__carte--offert)) { border-color: rgba(255, 255, 255, .12); }
}
@media (max-width: 63.99rem) {
	.wk-cursus__cartes { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 39.99rem) {
	.wk-cursus__voie--debut .wk-cursus__cartes { grid-template-columns: 1fr; row-gap: 3rem; }
	.wk-cursus__voie--debut .wk-cursus__carte:first-child::after { top: auto; right: calc(50% - 1.2rem); bottom: calc(-1.5rem - 1.2rem); transform: rotate(90deg); }
	/* Formations confirmées : une rangée qui défile au doigt. */
	.wk-cursus__voie:not(.wk-cursus__voie--debut) .wk-cursus__cartes { grid-template-columns: none; grid-auto-flow: column; grid-auto-columns: 80%; overflow-x: auto; scroll-snap-type: x mandatory; padding-bottom: .6rem; scrollbar-width: none; }
	.wk-cursus__voie:not(.wk-cursus__voie--debut) .wk-cursus__carte { scroll-snap-align: start; }
}
/* ===== Page En ligne : titre en deux temps, et les formations une par une (la présentation de Gauthier), visuel et texte en alternance ===== */
.wk-hero-formations h1 em { display: block; margin-top: .3em; font-style: normal; font-size: .6em; line-height: 1.15; letter-spacing: -.01em; color: var(--wk-or-texte); }
.wk-hero-formations .wk-chapeau { font-weight: 400; color: var(--wk-taupe); }
/* Page En ligne : icônes des repères (paiement en 4 fois, remboursement) */
.wk-atout--paiement { --ico: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23C48738' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='2' y='5' width='20' height='14' rx='3'/%3E%3Cpath d='M2 10h20M6 15h4'/%3E%3C/svg%3E"); }
.wk-atout--rembourse { --ico: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23C48738' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 12a9 9 0 1 0 3-6.7L3 8'/%3E%3Cpath d='M3 3v5h5'/%3E%3C/svg%3E"); }
/* Hero : la leçon sur Mac et sur iPhone (captures de Gauthier, claire et sombre), jetons « verre » de wakatoo.com */
.wk-appareils { --verre-fond: linear-gradient(180deg, rgba(255, 255, 255, .62), rgba(255, 255, 255, .16)), rgba(239, 234, 226, .42); --verre-bord: rgba(255, 255, 255, .75); --verre-ombre: 0 25px 50px -12px rgba(57, 41, 29, .25), inset 0 1px 0 rgba(255, 255, 255, .8); position: relative; isolation: isolate; padding: 0 0 14% 0; }
.wk-appareils::before { content: ""; position: absolute; z-index: -1; left: 10%; top: 0; width: 75%; aspect-ratio: 1; border-radius: 50%; background: var(--wk-or); opacity: .22; filter: blur(80px); }
.wk-appareils figure.wp-block-image { margin: 0; }
.wk-appareils .wk-appareils__ecran img { display: block; width: 100%; height: auto; }
.wk-appareils .wk-appareils__img--sombre { display: none; }
@media (prefers-color-scheme: dark) {
	body.wk-sombre .wk-appareils { --verre-fond: linear-gradient(180deg, rgba(255, 255, 255, .08), rgba(255, 255, 255, .02)), rgba(58, 58, 60, .55); --verre-bord: rgba(255, 255, 255, .12); --verre-ombre: 0 25px 50px -12px rgba(0, 0, 0, .5), inset 0 1px 0 rgba(255, 255, 255, .08); }
	body.wk-sombre .wk-appareils .wk-appareils__img--clair { display: none; }
	body.wk-sombre .wk-appareils .wk-appareils__img--sombre { display: block; }
}
/* Pas de cadre d'appareil : la capture seule, avec le liseré « verre » de wakatoo.com (bord fin clair, reflet en haut, ombre douce). */
.wk-appareils .wk-appareils__mac { width: 88%; }
.wk-appareils .wk-appareils__iphone { position: absolute; right: 0; bottom: 0; width: 28%; animation: wk-flotte 6s ease-in-out infinite; }
.wk-appareils :is(.wk-appareils__mac, .wk-appareils__iphone) img { box-sizing: border-box; border: 1px solid var(--verre-bord); box-shadow: var(--verre-ombre); }
.wk-appareils .wk-appareils__mac img { border-radius: var(--wk-rayon); }
.wk-appareils .wk-appareils__iphone img { aspect-ratio: 560 / 1214; border-radius: 10.7% / 5%; }
@keyframes wk-flotte { 50% { translate: 0 -10px; } }
@media (prefers-reduced-motion: reduce) { .wk-appareils .wk-appareils__iphone { animation: none; } }
.wk-presentations { display: grid; gap: clamp(4.5rem, 9vw, 8rem); margin-top: clamp(3rem, 6vw, 5rem); }
.wk-section .wk-presentations > *, .wk-presentation > *, .wk-section .wk-presentation__texte > *, .wk-section .wk-presentation h3.wp-block-heading, .wk-section .wk-presentation__action > * { margin-block: 0; }
.wk-presentation { --couleur: var(--wk-or); position: relative; display: grid; grid-template-columns: minmax(0, 11fr) minmax(0, 10fr); align-items: center; gap: clamp(2.5rem, 7vw, 6.5rem); }
.wk-presentation:nth-child(even) { grid-template-columns: minmax(0, 10fr) minmax(0, 11fr); }
.wk-presentation:nth-child(even) .wk-presentation__visuel { order: 2; }
/* Chemin en pointillé d'une formation à la suivante, en miroir une fois sur deux. */
.wk-presentation:not(:last-child)::after {
	content: ""; position: absolute; z-index: 1; top: 100%; left: 6%; right: 6%; height: clamp(2.5rem, 5vw, 4.5rem); margin-top: clamp(.75rem, 2vw, 1.75rem);
	background: no-repeat center / contain url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 140' fill='none' stroke='%23C48738' stroke-width='7' stroke-linecap='round' stroke-dasharray='1 26'%3E%3Cpath d='M1090 6C1090 92 110 46 110 134'/%3E%3C/svg%3E");
	opacity: .55; pointer-events: none;
}
.wk-presentation:nth-child(even)::after { transform: scaleX(-1); }
.wk-section .wk-presentation__visuel { margin: 0; }
.wk-presentation__visuel img { display: block; width: 100%; height: auto; aspect-ratio: 3 / 2; object-fit: cover; border-radius: var(--wk-rayon-grand); }
.wk-presentation__texte { display: flex; flex-direction: column; align-items: flex-start; max-width: 32rem; }
.wk-section .wk-presentation__niveau { display: flex; flex-wrap: wrap; align-items: center; gap: .5rem .7rem; margin-bottom: 1rem; font-size: var(--wp--preset--font-size--xs); font-weight: 800; letter-spacing: .06em; text-transform: uppercase; color: var(--wk-taupe); }
.wk-presentation__niveau strong { padding: .3rem .85rem; border-radius: 50px; background: var(--wk-or); color: var(--wk-sur-or); }
.wk-presentation h3.wp-block-heading { font-size: clamp(1.9rem, 1.3rem + 1.8vw, 2.75rem); line-height: 1.08; letter-spacing: -.02em; }
.wk-section .wk-presentation__pour { margin-top: .9rem; font-size: var(--wp--preset--font-size--m); font-weight: 600; line-height: 1.45; color: var(--wk-or-texte); }
.wk-section .wk-presentation__liste { display: grid; gap: .7rem; margin: 1.6rem 0 0; padding: 0; list-style: none; }
.wk-presentation__liste li { position: relative; padding-left: 2rem; font-size: var(--wp--preset--font-size--s); line-height: 1.55; color: var(--wk-taupe); }
.wk-presentation__liste li::before { content: ""; position: absolute; left: 0; top: .1em; width: 1.3rem; height: 1.3rem; border-radius: 50%; background: var(--couleur) no-repeat center / .8rem url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E"); }
.wk-section .wk-presentation__action { display: flex; flex-wrap: wrap; align-items: center; gap: .75rem 1.25rem; margin-top: 2rem; }
/* Formation pas encore traduite (pages anglaises, 17/09/2026) : étiquette « Coming soon » dans la ligne du niveau. */
.wk-presentation__niveau .wk-badge { padding: .3rem .85rem; background: rgba(196, 135, 56, .16); color: var(--wk-or-texte); font-size: inherit; font-weight: 800; letter-spacing: .06em; }
.wk-presentation__infos { font-size: var(--wp--preset--font-size--xs); font-weight: 800; color: var(--wk-or-texte); font-variant-numeric: tabular-nums; }
.wk-section .wk-presentation__ecrit { margin-top: 1rem; font-size: var(--wp--preset--font-size--xs); color: var(--wk-taupe); }
@media (max-width: 47.9rem) {
	.wk-presentation, .wk-presentation:nth-child(even) { grid-template-columns: 1fr; gap: 1.75rem; }
	.wk-presentation:nth-child(even) .wk-presentation__visuel { order: 0; }
	/* Le chemin devient une petite descente en pointillé. */
	.wk-presentation:not(:last-child)::after { left: 0; right: 0; height: 3rem; margin-top: .5rem; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 120 200' fill='none' stroke='%23C48738' stroke-width='9' stroke-linecap='round' stroke-dasharray='1 26'%3E%3Cpath d='M78 6C78 70 42 130 42 194'/%3E%3C/svg%3E"); }
	.wk-presentation:nth-child(even)::after { transform: none; }
}
/* ===== Cours particuliers : photo d'en-tête et fiche du cours ===== */
.wk-hero-cours__photo { margin: 0; }
.wk-hero-cours__photo img { display: block; width: 100%; height: auto; aspect-ratio: 3 / 2; object-fit: cover; border-radius: var(--wk-rayon-grand); }
.wk-fiche-cours { display: grid; gap: 1.1rem; max-width: 40rem; margin-inline: auto; text-align: left; }
.wk-section .wk-fiche-cours > * { margin-block: 0; }
.wk-fiche-cours__prix { display: flex; align-items: baseline; flex-wrap: wrap; gap: .3rem .7rem; font-size: clamp(2.25rem, 1.6rem + 2vw, 3rem); font-weight: 900; line-height: 1; letter-spacing: -.03em; color: var(--wk-or-texte); }
.wk-fiche-cours__prix span { font-size: var(--wp--preset--font-size--s); font-weight: 700; letter-spacing: 0; color: var(--wk-taupe); }
.wk-section .wk-fiche-cours__liste { display: grid; gap: .5rem; margin: 0; padding: 0; list-style: none; }
.wk-fiche-cours__liste li { position: relative; padding-left: 1.6rem; color: var(--wk-taupe); }
.wk-fiche-cours__liste li::before { content: ""; position: absolute; left: 0; top: .55em; width: .5rem; height: .5rem; border-radius: 50%; background: var(--wk-or); }

/* Cursus : les règles générales des titres (marge haute, lien souligné) sont plus fortes, on les neutralise ici. */
.wk-section .wk-cursus :is(.wk-cursus__carte, .wk-cursus__tete) > h3.wp-block-heading { margin: 0; }
.wk-section .wk-cursus .wk-cursus__carte > h3.wp-block-heading { margin-top: .35rem; }
.wk-section .wk-cursus :is(h3 a, .wk-cursus__mini-titre a) { text-decoration: none; text-decoration-line: none; }
.wk-section .wk-cursus__voie--debut .wk-cursus__visuel { aspect-ratio: 2 / 1; }
.wk-cursus__voie--debut .wk-cursus__visuel img { object-position: center 35%; }
@media (max-width: 39.99rem) {
	.wk-section .wk-cursus__voie--debut .wk-cursus__visuel { aspect-ratio: 3 / 2; }
}
/* Cursus : les « souffles dessinés » du tableau de bord (shortcode [simple_lms_dessin]) à la place des couvertures. */
.wk-cursus .simple-lms-dessin svg { display: block; width: 100%; height: 100%; transition: transform .6s var(--wk-ease); }
.wk-cursus__carte:hover .simple-lms-dessin svg { transform: scale(1.04); }
.wk-section .wk-cursus__carte--offert .wk-cursus__badge { background: var(--wk-ecorce); }
/* Badge de cycle clair, texte à la couleur du cours : lisible sur un dessin de la même couleur. */
.wk-section .wk-cursus__carte .wk-cursus__badge { background: var(--wk-creme); color: var(--couleur); }
.wk-section .wk-cursus__carte--offert .wk-cursus__badge { color: var(--wk-or-texte); }
/* Page En ligne recentrée sur les formations : « Vous débutez » = une seule carte, en largeur (visuel à gauche). */
.wk-cursus__voie--debut .wk-cursus__cartes:has(> .wk-cursus__carte:only-child) { grid-template-columns: 1fr; }
.wk-cursus__voie--debut .wk-cursus__carte:only-child::after { content: none; }
@media (min-width: 48rem) {
	.wk-cursus__voie--debut .wk-cursus__carte:only-child { display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(0, 1fr); grid-template-rows: 1fr auto auto 1fr; column-gap: 1.75rem; padding-bottom: 0; }
	.wk-cursus__voie--debut .wk-cursus__carte:only-child > * { grid-column: 2; padding-inline: 0 1.75rem; }
	.wk-section .wk-cursus__voie--debut .wk-cursus__carte:only-child > .wk-cursus__visuel { grid-column: 1; grid-row: 1 / -1; margin: 0; aspect-ratio: 16 / 9; height: 100%; border-radius: var(--wk-rayon-grand) 0 0 var(--wk-rayon-grand); padding: 0; }
	.wk-section .wk-cursus__voie--debut .wk-cursus__carte:only-child > h3.wp-block-heading { grid-row: 2; align-self: end; font-size: var(--wp--preset--font-size--xl); }
	.wk-cursus__voie--debut .wk-cursus__carte:only-child > p:not([class*="__"]) { grid-row: 3; font-size: var(--wp--preset--font-size--m); }
	.wk-section .wk-cursus__voie--debut .wk-cursus__carte:only-child > .wk-cursus__infos { grid-row: 4; align-self: start; margin-top: .6rem; }
}
.wk-section p.wk-cursus__essai { margin-top: var(--wp--preset--spacing--50); font-size: var(--wp--preset--font-size--s); color: var(--wk-taupe); }
.wk-cursus__essai a { color: var(--wk-or-texte); font-weight: 700; }
@media (min-width: 48rem) {
	/* Le badge est positionné par rapport à sa zone de grille : on le place sur le visuel. */
	.wk-section .wk-cursus__voie--debut .wk-cursus__carte:only-child > .wk-cursus__badge { grid-column: 1; grid-row: 1; justify-self: start; align-self: start; padding: .32rem .8rem; }
}
/* Accueil : aiguillage vers les deux cours offerts (même carte que le cursus de la page En ligne). */
.wk-aiguillage { display: grid; gap: 1.4rem; margin-top: var(--wp--preset--spacing--70); scroll-margin-top: 6rem; }
.wk-section .wk-aiguillage > * { margin-block: 0; }
.wk-aiguillage .wk-cursus__cartes { grid-template-columns: repeat(2, minmax(0, 1fr)); width: 100%; max-width: var(--wk-largeur-encadre, 56rem); margin-inline: auto; }
.wk-aiguillage .wk-cursus__carte > .wp-block-buttons { margin-top: .8rem; position: relative; z-index: 2; }
.wk-cursus__carte--wobbles { --couleur: #8A6B4E; }
@media (max-width: 39.99rem) {
	.wk-aiguillage .wk-cursus__cartes { grid-template-columns: 1fr; }
}
/* Page du cours offert (10950) : le souffle dessiné dans le hero, la carte d'inscription sous le programme. */
.gratuit-hero .gratuit-hero__visuel { aspect-ratio: 4 / 3; border-radius: var(--wk-rayon-grand); box-shadow: 0 20px 50px rgba(57, 41, 29, .16); }
.gratuit-hero .gratuit-hero__visuel svg { display: block; width: 100%; height: 100%; }
.gratuit-inscription .gratuit-formulaire { margin-inline: auto; }
.wk-section p.gratuit-inscription__joueurs { margin-top: 1.5rem; font-size: var(--wp--preset--font-size--s); color: var(--wk-taupe); }
.gratuit-inscription__joueurs a { color: var(--wk-or-texte); font-weight: 700; }
/* Page du cours offert : les 4 chapitres en parcours guidé (composant du cursus de La méthode). */
.gratuit-parcours { counter-reset: annee 1; }
.wk-section .gratuit-parcours { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 15rem), 1fr)); }
.wk-section .gratuit-parcours > * { margin-block: 0; }
.wk-parcours__etape .gratuit-parcours__infos { margin-top: auto; padding-top: .35rem; font-size: var(--wp--preset--font-size--xs); font-weight: 800; color: var(--wk-or-texte); }
.wk-parcours__etape--offert .gratuit-parcours__infos { color: var(--wk-sur-or); }
.gratuit-parcours + .wp-block-buttons { margin-top: var(--wp--preset--spacing--60); }
@media (min-width: 64rem) {
	.wk-section .gratuit-parcours { grid-template-columns: repeat(4, 1fr); }
	.gratuit-parcours .wk-parcours__etape:nth-child(1) { margin-top: 7.5rem; }
	.gratuit-parcours .wk-parcours__etape:nth-child(2) { margin-top: 5rem; }
	.gratuit-parcours .wk-parcours__etape:nth-child(3) { margin-top: 2.5rem; }
	.gratuit-parcours .wk-parcours__etape:nth-child(4) { margin-top: 0; }
}
/* Grands chiffres hors des bandeaux sombres : l'or foncé des textes (l'or clair --bande-accent est fait pour les fonds sombres). */
.wk-section:not(.wk-section--bande) .wk-grand-chiffre { color: var(--wk-or-texte); }

/* Pas d'espace au-dessus du pied de page (demande de Gauthier, 15/09, id wk-pied-sans-ecart) :
   WordPress ajoute l'écart standard (blockGap, 1,25rem) avant le bloc du pied, ce qui laissait
   une bande du fond de page entre la dernière section et le pied. Gabarits en blocs et PHP. */
.wp-site-blocks > .wp-block-template-part:has(> .wk-pied),
.wp-site-blocks > .wk-pied { margin-block-start: 0; }

/* ===== Menu téléphone : Ressources (16/09/2026, Gauthier) =====
   « Ressources » a exactement le style des autres entrées (La méthode, Formation en ligne, Stages) ;
   ouvert, chaque famille est un bloc bien séparé : titre doré, liens aérés. */
@media (max-width: 63.99rem) {
	.wk-plein .wk-plein__replie > summary {
		justify-content: space-between; padding: 1rem .25rem; border-top: 1px solid var(--trait);
		font-size: clamp(1rem, 4.2vw, 1.15rem); font-weight: 800; color: var(--wk-ecorce); transition: color .3s ease;
	}
	.wk-plein .wk-plein__replie > summary::after { width: .5rem; height: .5rem; margin: -.25rem .25rem 0 auto; border-width: 0 2px 2px 0; transform: rotate(-45deg); }
	.wk-plein .wk-plein__replie[open] > summary { color: var(--wk-or-texte); padding-bottom: .75rem; }
	.wk-plein .wk-plein__replie[open] > summary::after { transform: rotate(45deg); margin-top: -.25rem; }
	.wk-plein .wk-plein__grille { gap: .75rem; }
	.wk-plein .wk-plein__groupe { padding: .85rem .6rem .6rem; border-radius: 16px; background: color-mix(in srgb, var(--wk-ecorce) 4%, transparent); border: 1.5px solid color-mix(in srgb, var(--wk-ecorce) 8%, transparent); }
	.wk-plein .wk-plein__groupe--contact { padding: .25rem 0 0; background: none; border: 0; }
	.wk-plein .wk-plein__titre { margin-bottom: .5rem; padding-left: .4rem; font-size: .75rem; }
	.wk-plein .wk-plein__groupe .wk-plein__liste { gap: .15rem; }
	.wk-plein .wk-plein__groupe .wk-plein__liste a { padding: .45rem .4rem; }
	.wk-plein .wk-plein__groupe .wk-plein__libelle { font-size: 1rem; font-weight: 700; }
	.wk-plein .wk-plein__wakatoo { border-radius: 16px; border: 1.5px solid color-mix(in srgb, var(--wk-ecorce) 8%, transparent); }
	.wk-plein .wk-plein__groupe--contact .wk-plein__titre { padding-left: 1rem; }
}

/* ---------- Citations d'élèves, unifiées sur tout le site (Gauthier, 16/09/2026) ----------
   « Pas trop de blocs, plutôt un texte italique assez élégant, pas de gros guillemets. » Même rendu partout où la
   carte d'avis est utilisée (formations, à propos, pages de vente, bandes sombres) : pas de cadre, petites étoiles,
   texte en italique, nom précédé d'un tiret. Les phrases de Gauthier gardent la barre dorée (.wk-citation). */
.wk-avis-carte, .wk-section--bande .wk-avis-carte, .wk-section .wk-histoire-avis .wk-avis-carte {
	padding: 0; border: 0; border-radius: 0; background: none; box-shadow: none; -webkit-backdrop-filter: none; backdrop-filter: none;
}
.wk-avis-carte::before, .wk-histoire-avis .wk-avis-carte::before { content: none; }
.wk-avis-carte .wk-temoignage__etoiles { margin: 0 0 .6rem; font-size: .85rem; letter-spacing: .18em; color: var(--wk-or); }
.wk-avis-carte .wk-avis-carte__texte, .wk-section .wk-histoire-avis .wk-avis-carte__texte {
	margin-top: 0; font-style: italic; font-weight: 500; font-size: clamp(1.1rem, 1rem + .45vw, 1.3rem); line-height: 1.55; letter-spacing: 0; text-wrap: pretty;
}
.wk-avis-carte--grande .wk-avis-carte__texte { font-size: clamp(1.3rem, 1.05rem + 1vw, 1.75rem); font-weight: 500; line-height: 1.45; letter-spacing: -.01em; }
.wk-avis-carte .wk-avis-carte__auteur { margin-top: .8rem; font-style: normal; font-size: var(--wp--preset--font-size--xs); font-weight: 700; letter-spacing: .02em; color: var(--wk-or-texte); }
.wk-avis-carte .wk-avis-carte__auteur::before { content: "— "; }
.wk-avis-carte .wk-avis-carte__auteur + .wk-avis-carte__texte { margin-top: 2rem; padding-top: 0; border-top: 0; }
.wk-avis-carte--centre { max-width: 40rem; text-align: center; }
.wk-section--bande .wk-avis-carte .wk-temoignage__etoiles { color: var(--bande-accent); }

/* ---------- Étapes ouvertes (sans cartes) : ex. « Un véritable accompagnement » (16/09/2026) ----------
   Trois étapes numérotées reliées par un trait fin, pas de cadres ni de flèches ; pastille « En option » au-dessus. */
.wk-option { display: flex; justify-content: center; margin: 0 0 .9rem; }
.wk-option span { display: inline-flex; align-items: center; gap: .45rem; padding: .35rem .95rem; border-radius: 50px; background: rgba(196, 135, 56, .16); color: var(--wk-or-texte); font-size: var(--wp--preset--font-size--xs); font-weight: 800; letter-spacing: .06em; text-transform: uppercase; }
.wk-option strong { font-weight: 900; color: var(--wk-ecorce); letter-spacing: 0; text-transform: none; }
.wk-section .wk-etapes.wk-etapes--ouvertes { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 2rem; max-width: var(--wk-largeur-encadre, 56rem); margin-inline: auto; }
.wk-section .wk-etapes--ouvertes > * { margin-block: 0; } /* le flux des blocs ajoute une marge au-dessus des étapes 2 et 3 */
.wk-etapes--ouvertes .wk-etape { padding: 0; border: 0; border-radius: 0; background: none; text-align: center; }
.wk-etapes--ouvertes .wk-etape::before { margin: 0 auto 1rem; position: relative; z-index: 1; box-shadow: 0 0 0 8px var(--wk-sable); }
.wk-etapes--ouvertes .wk-etape:has(+ .wk-etape)::after { content: ""; top: 1.375rem; left: calc(50% + 2rem); right: auto; width: calc(100% - 2rem); height: 2px; background: rgba(196, 135, 56, .35); transform: none; z-index: 0; }
.wk-section .wk-etapes--ouvertes > .wk-boucle { grid-column: 1 / -1; margin: .5rem 0 0; padding: 0; font-weight: 700; }
.wk-etapes--ouvertes .wk-boucle::before, .wk-etapes--ouvertes .wk-boucle::after { content: none; display: none; }
.wk-section--creme .wk-etapes--ouvertes .wk-etape::before { box-shadow: 0 0 0 8px var(--wk-creme); }
@media (max-width: 47.9rem) {
	.wk-section .wk-etapes.wk-etapes--ouvertes { grid-template-columns: 1fr; gap: 1.75rem; }
	.wk-etapes--ouvertes .wk-etape:has(+ .wk-etape)::after { display: none; }
}

/* ---------- Cercles en filigrane qui respirent au défilement (sur tout le site, 17/09/2026 ; essai d'abord sur La méthode) ----------
   Environ deux sections sur trois (2e, 3e, 5e, 6e, 8e, 9e, 10e, 12e, 13e, 15e, 16e de la page), jamais la même taille ni la même place, deux dessins d'anneaux ;
   beaucoup centrés derrière le contenu (c'est ce qui rend le mieux, retour de Gauthier), les autres à moitié hors du cadre.
   Pas d'animation en continu : les anneaux « respirent » (une inspiration par passage) uniquement pendant qu'on fait défiler.
   Sans animation-timeline (Firefox), ils restent immobiles. Sections exclues : celles qui contiennent encore une fenêtre en plein écran
   (l'isolement la piégerait sous le menu ; les fenêtres Simple LMS, déplacées dans le body par offerts.js, ne comptent pas) la mosaïque de l'accueil et la section Wakatoo (déjà ses cartes en filigrane). */
.wk-section:is(:nth-of-type(2), :nth-of-type(3), :nth-of-type(5), :nth-of-type(6), :nth-of-type(8), :nth-of-type(9), :nth-of-type(10), :nth-of-type(12), :nth-of-type(13), :nth-of-type(15), :nth-of-type(16)):not(:has([class*="popup-overlay"], div[class*="modal"], [role="dialog"], .wk-mosaique)):not(.wk-section--wakatoo) { position: relative; isolation: isolate; overflow: clip; --anneaux: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100' fill='none' stroke='%23000' stroke-width='.25' stroke-dasharray='1 1.2'%3E%3Ccircle cx='50' cy='50' r='49' stroke-opacity='.3'/%3E%3Ccircle cx='50' cy='50' r='37' stroke-opacity='.55'/%3E%3Ccircle cx='50' cy='50' r='22' stroke-opacity='.8'/%3E%3C/svg%3E"); }
.wk-section:is(:nth-of-type(2), :nth-of-type(3), :nth-of-type(5), :nth-of-type(6), :nth-of-type(8), :nth-of-type(9), :nth-of-type(10), :nth-of-type(12), :nth-of-type(13), :nth-of-type(15), :nth-of-type(16)):not(:has([class*="popup-overlay"], div[class*="modal"], [role="dialog"], .wk-mosaique)):not(.wk-section--wakatoo)::after {
	content: ""; position: absolute; z-index: -1; pointer-events: none;
	width: min(var(--taille), 95vw); aspect-ratio: 1; left: var(--x); top: var(--y); translate: -50% -50%;
	background: var(--wk-or, #C48738); opacity: .4;
	-webkit-mask: no-repeat center / 100% var(--anneaux); mask: no-repeat center / 100% var(--anneaux);
}
.wk-section:nth-of-type(2) { --taille: 46rem; --x: 50%; --y: 50%; }
.wk-section:nth-of-type(3) { --taille: 36rem; --x: 102%; --y: 24%; --anneaux: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100' fill='none' stroke='%23000' stroke-width='.35' stroke-dasharray='1 1.6'%3E%3Ccircle cx='50' cy='50' r='48' stroke-opacity='.45'/%3E%3Ccircle cx='50' cy='50' r='30' stroke-opacity='.8'/%3E%3C/svg%3E"); }
.wk-section:nth-of-type(5) { --taille: 52rem; --x: -6%; --y: 86%; }
.wk-section:nth-of-type(6) { --taille: 54rem; --x: 50%; --y: 45%; --anneaux: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100' fill='none' stroke='%23000' stroke-width='.35' stroke-dasharray='1 1.6'%3E%3Ccircle cx='50' cy='50' r='48' stroke-opacity='.45'/%3E%3Ccircle cx='50' cy='50' r='30' stroke-opacity='.8'/%3E%3C/svg%3E"); }
.wk-section:nth-of-type(8) { --taille: 26rem; --x: 95%; --y: 72%; --anneaux: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100' fill='none' stroke='%23000' stroke-width='.35' stroke-dasharray='1 1.6'%3E%3Ccircle cx='50' cy='50' r='48' stroke-opacity='.45'/%3E%3Ccircle cx='50' cy='50' r='30' stroke-opacity='.8'/%3E%3C/svg%3E"); }
.wk-section:nth-of-type(9) { --taille: 42rem; --x: 50%; --y: 55%; }
.wk-section:nth-of-type(10) { --taille: 32rem; --x: 2%; --y: 16%; --anneaux: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100' fill='none' stroke='%23000' stroke-width='.35' stroke-dasharray='1 1.6'%3E%3Ccircle cx='50' cy='50' r='48' stroke-opacity='.45'/%3E%3Ccircle cx='50' cy='50' r='30' stroke-opacity='.8'/%3E%3C/svg%3E"); }
.wk-section:nth-of-type(12) { --taille: 50rem; --x: 50%; --y: 50%; }
.wk-section:nth-of-type(13) { --taille: 46rem; --x: 100%; --y: 85%; --anneaux: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100' fill='none' stroke='%23000' stroke-width='.35' stroke-dasharray='1 1.6'%3E%3Ccircle cx='50' cy='50' r='48' stroke-opacity='.45'/%3E%3Ccircle cx='50' cy='50' r='30' stroke-opacity='.8'/%3E%3C/svg%3E"); }
.wk-section:nth-of-type(15) { --taille: 44rem; --x: 50%; --y: 50%; }
.wk-section:nth-of-type(16) { --taille: 28rem; --x: 0%; --y: 40%; --anneaux: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100' fill='none' stroke='%23000' stroke-width='.35' stroke-dasharray='1 1.6'%3E%3Ccircle cx='50' cy='50' r='48' stroke-opacity='.45'/%3E%3Ccircle cx='50' cy='50' r='30' stroke-opacity='.8'/%3E%3C/svg%3E"); }
.wk-section--bande::after { background: var(--bande-accent, #E8B84C); }
/* La méthode : cercle du hero calé à droite, qui remonte derrière le menu (le hero ne rogne qu'en largeur) ; grand cercle centré derrière le cursus */
.page-id-81612 .wk-section:nth-of-type(1) { position: relative; isolation: isolate; overflow: visible; overflow-x: clip; --anneaux: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100' fill='none' stroke='%23000' stroke-width='.25' stroke-dasharray='1 1.2'%3E%3Ccircle cx='50' cy='50' r='49' stroke-opacity='.3'/%3E%3Ccircle cx='50' cy='50' r='37' stroke-opacity='.55'/%3E%3Ccircle cx='50' cy='50' r='22' stroke-opacity='.8'/%3E%3C/svg%3E"); --taille: 46rem; --x: 86%; --y: 36%; }
.page-id-81612 .wk-section:nth-of-type(1)::after {
	content: ""; position: absolute; z-index: -1; pointer-events: none;
	width: min(var(--taille), 95vw); aspect-ratio: 1; left: var(--x); top: var(--y); translate: -50% -50%;
	background: var(--wk-or, #C48738); opacity: .4;
	-webkit-mask: no-repeat center / 100% var(--anneaux); mask: no-repeat center / 100% var(--anneaux);
}
.page-id-81612 .wk-section:nth-of-type(8) { --taille: 62rem; --x: 50%; --y: 55%; --anneaux: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100' fill='none' stroke='%23000' stroke-width='.25' stroke-dasharray='1 1.2'%3E%3Ccircle cx='50' cy='50' r='49' stroke-opacity='.3'/%3E%3Ccircle cx='50' cy='50' r='37' stroke-opacity='.55'/%3E%3Ccircle cx='50' cy='50' r='22' stroke-opacity='.8'/%3E%3C/svg%3E"); }
/* Accueil : le cercle derrière les 3 cours offerts, plus grand et remonté (demande de Gauthier) */
.home .wk-section:nth-of-type(2) { --taille: 62rem; --x: 50%; --y: 36%; }
@keyframes wk-respire { 0%, 100% { scale: .7; opacity: .25; } 50% { scale: 1.12; opacity: .55; } }
@supports (animation-timeline: view()) {
	.wk-section::after { animation: wk-respire linear both; animation-timeline: view(); }
}
@media (max-width: 47.9rem) { .page-id-81612 .wk-section:nth-of-type(1) { --x: 50%; --y: 72%; } }
@media (prefers-reduced-motion: reduce) { .wk-section::after { animation: none; } }

/* « Trois retours en trois mois » : encart à part, une barre de 3 mois (pas de ronds, pour ne pas doubler les étapes). */
.wk-section > .wk-retours { max-width: 36rem; margin: var(--wp--preset--spacing--60) auto 0; }
.wk-retours { padding: 1.4rem 1.6rem 1.3rem; border-radius: var(--wk-rayon-grand); background: var(--wk-carte); border: 1px solid var(--carte-bord); text-align: center; }
.wk-retours > * { margin-block: 0; }
.wk-retours ol.wk-retours__mois { display: grid; grid-template-columns: repeat(3, 1fr); gap: .4rem; padding: 0; margin: 0; list-style: none; }
.wk-retours__mois li {
	display: flex; align-items: center; justify-content: center; gap: .45rem; margin: 0; padding: .6rem .5rem; background: rgba(196, 135, 56, .16);
	color: var(--wk-or-texte); font-size: var(--wp--preset--font-size--xs); font-weight: 800; letter-spacing: .05em; text-transform: uppercase;
}
.wk-retours__mois li:first-child { border-radius: 50px 6px 6px 50px; }
.wk-retours__mois li:last-child { border-radius: 6px 50px 50px 6px; }
.wk-retours__mois li::before {
	content: ""; flex: none; width: 1.05rem; height: 1.05rem; background: currentColor;
	-webkit-mask: no-repeat center / contain url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.4' stroke-linecap='round'%3E%3Cpath d='M4 10v4M8 7v10M12 4v16M16 8v8M20 11v2'/%3E%3C/svg%3E");
	mask: no-repeat center / contain url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.4' stroke-linecap='round'%3E%3Cpath d='M4 10v4M8 7v10M12 4v16M16 8v8M20 11v2'/%3E%3C/svg%3E");
}
.wk-retours p.wk-retours__legende { margin-top: .9rem; font-size: var(--wp--preset--font-size--s); color: var(--wk-taupe); }
.wk-retours p.wk-retours__legende strong { color: var(--wk-ecorce); font-weight: 800; }
@media (max-width: 30rem) { .wk-retours__mois li { flex-direction: column; gap: .25rem; } }

/* Cursus (La méthode…) : le cycle devient le repère principal, en grand ; plus de gros chiffre ni d'étoile (doublon, Gauthier 17/09/2026). */
.wk-parcours .wk-parcours__etape:not(.wk-parcours__etape--parallele)::before { content: none; display: none; }
.wk-parcours .wk-parcours__etape .wk-parcours__niveau {
	padding: 0; border-radius: 0; background: none; color: var(--wk-or-texte);
	font-size: clamp(1.25rem, .95rem + .7vw, 1.6rem); font-weight: 900; line-height: 1.05; letter-spacing: -.02em; text-transform: none; white-space: nowrap;
}
.wk-parcours .wk-parcours__etape--offert .wk-parcours__niveau { white-space: normal; }
.wk-parcours .wk-parcours__etape--offert .wk-parcours__niveau { background: none; color: var(--wk-sur-or); }

/* Cursus : carte du cours offert (17/09/2026). Même carte sombre que les autres, liseré doré + bandeau « Cours offert »
   sur l'image ; toute la carte ouvre la fenêtre d'inscription (le bouton s'étend sur la carte, fenêtre sortie par offerts.js). */
.wk-parcours .wk-parcours__etape--offert { background: var(--wk-creme); border: 2px solid var(--wk-or); cursor: pointer; }
.wk-parcours .wk-parcours__etape--offert :is(h3, h3 a) { color: var(--wk-ecorce); }
.wk-parcours .wk-parcours__etape--offert p { color: var(--wk-taupe); }
.wk-parcours .wk-parcours__etape--offert .wk-parcours__niveau { color: var(--wk-or-texte); white-space: nowrap; }
.wk-parcours .wk-parcours__etape--offert .wk-parcours__image { position: relative; }
.wk-parcours .wk-parcours__etape--offert .wk-parcours__image::after {
	content: "Cours offert"; position: absolute; left: 0; right: 0; bottom: 0; padding: .45rem .75rem; background: var(--wk-or); color: var(--wk-sur-or);
	font-size: var(--wp--preset--font-size--xs); font-weight: 900; letter-spacing: .1em; text-transform: uppercase; text-align: center;
}
.wk-parcours__action { margin-top: .4rem; }
.wk-parcours__action .simple-lms-popup-container, .wk-parcours__action .simple-lms-popup-trigger { position: static; margin: 0; }
/* Même taille au survol : la règle générale « body .simple-lms-popup-trigger:hover » (offerts.css) remettait le grand bouton. */
.wk-parcours .wk-parcours__action .simple-lms-popup-trigger, .wk-parcours .wk-parcours__action .simple-lms-popup-trigger:hover { width: 100%; min-height: 2.9rem; padding: 0 .8rem; font-size: var(--wp--preset--font-size--xs); white-space: nowrap; }
.wk-parcours__action .simple-lms-popup-trigger::after { content: ""; position: absolute; inset: 0; z-index: 2; }
.wk-parcours .wk-parcours__etape--offert:hover .simple-lms-popup-trigger { background: var(--wk-or-survol, var(--wk-ambre)); }
.wk-parcours .wk-parcours__etape--offert:has(.simple-lms-popup-trigger:focus-visible) { outline: 3px solid var(--wk-or); outline-offset: 3px; }
@media (prefers-color-scheme: dark) { body.wk-sombre .wk-parcours .wk-parcours__etape--offert { border-color: var(--wk-or); } }

/* Pages anglaises (17/09/2026) : bandeau du cours offert du cursus en anglais, étiquette « Coming soon » des formations pas encore traduites. */
:lang(en) .wk-parcours .wk-parcours__etape--offert .wk-parcours__image::after { content: "Free course"; }
.wk-parcours p.wk-parcours__bientot { margin: .15rem 0 .35rem; }

/* ===== Menu Ressources, carte Wakatoo (17/09/2026, Gauthier) =====
   Maître Towaki en entier (plus l'image coupée), droit, posé sur le bas de la carte et qui dépasse
   en haut ; au survol il grandit un peu depuis ses pieds. Petites icônes App Store et Google Play
   à côté de « Bientôt disponible » (dessinées en SVG : les badges des médias sont flous et disent « Télécharger »). */
.wk-plein .wk-plein__wakatoo { overflow: visible; }
.wk-plein .wk-plein__wakatoo .wk-plein__towaki { rotate: 0deg; right: .9rem; bottom: .35rem; width: 7.25rem; transform-origin: 50% 100%; transition: scale .35s var(--wk-ease); }
.wk-plein .wk-plein__wakatoo:hover .wk-plein__towaki { rotate: 0deg; translate: none; scale: 1.04; }
.wk-plein__wakatoo-bas { display: inline-flex; align-items: center; gap: .5rem; margin-top: .15rem; }
.wk-plein__wakatoo-bas .wk-plein__badge { margin: 0; white-space: nowrap; }
.wk-plein__stores { display: inline-flex; align-items: center; gap: .6rem; padding: .3rem .65rem; border: 1.5px solid color-mix(in srgb, var(--wk-ecorce) 35%, transparent); border-radius: var(--wk-rayon-petit); color: var(--wk-ecorce); }
.wk-plein__stores svg { display: block; width: 20px; height: 20px; }
@media (max-width: 63.99rem) {
	.wk-plein .wk-plein__wakatoo { margin-top: 2.5rem; }
	.wk-plein .wk-plein__wakatoo .wk-plein__towaki { width: 5.75rem; right: .6rem; }
}

/* Sections pleine largeur collées les unes aux autres : WordPress ajoutait 20 px entre les blocs du contenu,
   visibles en fine bande sombre entre deux fonds différents (Gauthier, 17/09/2026). */
.wp-block-post-content > .wk-section, .wp-block-post-content > .wk-section + * { margin-block-start: 0; }

/* Formations pas encore traduites : image en noir et blanc estompé, pastille « Coming soon » qui ressort (17/09/2026) */
.wk-badge.wk-badge--bientot,
.espace .espace-bientot {
	background: var(--wk-ecorce, #39291D);
	color: var(--wk-creme, #FAF7F4);
	letter-spacing: .06em;
	text-transform: uppercase;
}
.wk-presentation:has(.wk-badge--bientot) img,
.wk-parcours__etape:has(.wk-badge--bientot) img,
.wk-offerts__carte--bientot .wk-offerts__visuel img {
	filter: grayscale(1);
	opacity: .55;
}

/* Pile de visuels sans image de premier plan (pages de vente sans capture, 18/09/2026) : pas de marge réservée. */
.wk-pile-visuels:not(:has(.wk-pile-visuels__devant)) { padding: 0; }

/* ==================================================================
   ALIGNEMENT DU TEXTE (21/09/2026)

   Bonne pratique du web (WebAIM, WCAG 1.4.8) : le texte courant s'aligne à gauche.
   Un bord gauche régulier donne à l'œil un point de retour fixe à chaque ligne ; centré,
   chaque ligne repart d'un endroit différent et la lecture fatigue dès trois lignes.
   Un texte qui tient en deux lignes sur ordinateur en fait cinq ou six sur téléphone :
   c'est là que ça coûte le plus.

   Donc : tout ce qui est du texte suivi s'aligne à gauche, d'où que vienne le centrage
   (classe .wk-texte-centre, section entière centrée dans l'éditeur, encadré…).
   Le BLOC, lui, reste centré dans la page : c'est la colonne de lecture qui est au milieu,
   pas les lignes entre elles.

   Restent centrés, parce qu'ils sont courts par nature : les titres (jamais visés ici),
   les surtitres, les chiffres et leurs légendes, les étiquettes, les prix, les étoiles,
   et la grande citation d'ouverture (du texte d'affiche, pas du texte à lire).

   Pour qu'un texte reste centré : ajouter sa classe à la liste des exceptions ci-dessous.
   Jamais de réglage d'alignement page par page dans l'éditeur — il serait ignoré ici.
   ================================================================== */
.wk-section.wk-section :is(p, li, dd, dt, blockquote, figcaption),
.wk-article.wk-article :is(p, li, dd, dt, blockquote, figcaption) { text-align: left; }

/* Exceptions : court par nature, chiffre ou étiquette. */
.wk-section.wk-section :is(
	.wk-surtitre,
	.wk-grand-chiffre, .wk-grand-chiffre__legende,
	.wk-legende p, .wk-legende li,
	.wk-prix p, .wk-bundle__recap p,
	.wk-preuve, .wk-lien-avis,
	.wk-temoignage__etoiles, .wk-temoignage__auteur, .wk-avis-carte__auteur,
	.wk-vente-rythme__chapitre, .wk-vente-rythme__ecoute,
	.wk-podcasts-ecoute li, .wk-podcasts__plus-zone,
	.wk-citation--grande, .wk-citation--grande p,
	.wk-etapes--ouvertes .wk-etape p, .wk-cursus__essai,
	.wk-legende-cartes p, .wk-demo-cartes p
) { text-align: center; }

/* Étapes en cartes : la pastille numérotée est déjà à gauche, le titre et le texte la rejoignent.
   Les étapes « ouvertes » (le schéma en trois temps, pastille centrée) gardent leur centrage. */
.wk-section .wk-etapes:not(.wk-etapes--ouvertes) .wk-etape { text-align: left; }

/* Un texte qui tient sur une seule ligne reste optiquement centré, sans réglage à faire :
   la boîte du paragraphe se réduit à la longueur du texte et se centre dans la colonne.
   Dès que le texte est assez long pour passer à la ligne, la boîte prend toute la colonne
   et les lignes s'alignent à gauche. C'est donc la longueur du texte qui décide, pas un choix
   page par page — exactement la limite des bonnes pratiques (centrer au-delà de deux lignes nuit).
   Volontairement limité aux paragraphes : les citations gardent leur filet et leur marge à gauche. */
.wk-section.wk-section > p,
.wk-section.wk-section p.wk-texte-centre { width: fit-content; margin-inline: auto; }
