/* Merkez Al-Khalil — système commun à tout le site (direction B : blanc, bleu #024090, Markazi + Readex).
   Jetons, sélection, focus, en-tête, boutons et liens, pied de page. Les pages gardent leurs feuilles propres, branchées sur tokens.css. */


.mk-b {
	--b-white: #ffffff;
	--b-paper: #f5f7fa;
	--b-blue: #024090;                                              /* base unique de tous les bleus (8,9:1 sur blanc) */
	--b-blue-deep: color-mix(in srgb, var(--b-blue) 78%, #000);     /* survol */
	--b-blue-ink: color-mix(in srgb, var(--b-blue) 62%, #000);      /* pied de page, fonds profonds */
	--b-tint: color-mix(in srgb, var(--b-blue) 9%, #fff);
	--b-tint-2: color-mix(in srgb, var(--b-blue) 5%, #fff);
	/* Fond bleu vivant : bleu saturé (pas de mélange au blanc, qui ternit), halo clair en haut à gauche, lueur bleu vif, profondeur en bas à droite.
	   Toutes les nuances dérivent de --b-blue en OKLCH (même teinte, clarté et chroma décalées) : valeurs calculées ici,
	   recalculées par le navigateur dans le bloc @supports plus bas. Le point le plus clair reste à 5,5:1 avec le texte blanc. */
	--b-band-light: #2767c4;   /* oklch(l + .135, c + .015) */
	--b-band-mid: #1757b0;     /* oklch(l + .08,  c + .012) */
	--b-glow: #4791ff;         /* oklch(l + .275, c + .035) */
	--b-depth: #00235c;        /* oklch(l - .115, c - .035) */
	--b-glint: #cee1fe;        /* oklch(l + .515, c - .1) : point des pastilles sur bande */
	--b-band: radial-gradient(60% 120% at 8% -10%, rgb(255 255 255 / .1) 0%, transparent 60%), radial-gradient(45% 90% at 78% 0%, color-mix(in srgb, var(--b-glow) 32%, transparent) 0%, transparent 70%), radial-gradient(60% 120% at 100% 110%, color-mix(in srgb, var(--b-depth) 45%, transparent) 0%, transparent 65%), linear-gradient(115deg, var(--b-band-light) 0%, var(--b-band-mid) 45%, var(--b-blue) 100%);
	--b-band-edge: inset 0 1px 0 rgb(255 255 255 / .18);
	--b-ink: #0f1a2e;          /* 17:1 sur blanc */
	--b-text: #2a3549;         /* 12:1 */
	--b-soft: #4b5669;         /* 7,6:1 */
	--b-muted: #5d687a;        /* 5,6:1 */
	--b-line: #e3e8ef;
	--b-line-strong: #7d889a;  /* 3,6:1, contours de champs */
	--b-on-blue: #ffffff;
	--b-on-blue-soft: color-mix(in srgb, var(--b-blue) 18%, #fff); /* ≈ 7:1 sur le bleu */
	--b-serif: "Markazi Text", Georgia, serif;
	--b-sans: "Readex Pro", system-ui, -apple-system, "Segoe UI", sans-serif;
	--b-r-sm: 8px;
	--b-r: 14px;
	--b-r-lg: 22px;
	--b-ease: cubic-bezier(.22, 1, .36, 1);
	--b-gutter: clamp(1.25rem, .4rem + 3.4vw, 4.5rem);
	/* Rythme vertical unique (2026-10-15) : espace de section, écart titre → contenu, premier écran. */
	--b-section: clamp(3rem, 2rem + 3vw, 5rem);
	--b-head-gap: clamp(1.5rem, 1rem + 1.5vw, 2.5rem);
	--b-hero-pad: clamp(2.5rem, 1.5rem + 3vw, 4.5rem) clamp(2.25rem, 1.25rem + 3vw, 4rem);
	--b-shadow: 0 1px 2px rgb(15 26 46 / .05), 0 10px 30px -18px rgb(15 26 46 / .28);
	--b-shadow-hover: 0 2px 4px rgb(15 26 46 / .05), 0 24px 48px -24px color-mix(in srgb, var(--b-blue) 45%, transparent);
	--b-focus: 0 0 0 2px var(--b-white), 0 0 0 4px var(--b-blue);
	--mk-bg: var(--b-white);
	background: var(--b-white);
	color: var(--b-text);
}

/* Navigateurs récents : les nuances du dégradé sont recalculées depuis --b-blue (changer le bleu de base suffit). */
@supports (color: oklch(from red calc(l + .1) calc(c + .01) h)) {
	.mk-b {
		--b-band-light: oklch(from var(--b-blue) calc(l + .135) calc(c + .015) h);
		--b-band-mid: oklch(from var(--b-blue) calc(l + .08) calc(c + .012) h);
		--b-glow: oklch(from var(--b-blue) calc(l + .275) calc(c + .035) h);
		--b-depth: oklch(from var(--b-blue) calc(l - .115) calc(c - .035) h);
		--b-glint: oklch(from var(--b-blue) calc(l + .515) calc(c - .1) h);
	}
}
.mk-b ::selection { background: var(--b-blue); color: var(--b-white); }
.mk-b :where(a, button, input, summary, label):focus-visible { outline: 2px solid transparent; outline-offset: 2px; box-shadow: var(--b-focus); border-radius: var(--b-r-sm); }
.mk-b #wrapper.site, .mk-b .content-style-unboxed .content-bg, .mk-b .content-style-unboxed .entry.content-bg { background: var(--b-white); }
.mk-b .entry-content :is(ul, ol):where([class*="mk-b-"]), .mk-b .entry-content :where([class*="mk-b-"]) :is(ul, ol) { list-style: none; padding: 0; }
.mk-b :where([class*="mk-b-"]) :where(h1, h2, h3) { font-family: var(--b-serif); font-weight: 500; color: var(--b-ink); letter-spacing: -0.015em; text-wrap: balance; }
.mk-b [lang="ar"] { font-family: var(--b-serif); }
.mk-b-wrap { max-width: 1400px; margin-inline: auto; padding-inline: var(--b-gutter); }

/* ---------- En-tête : collé, compact au défilement ---------- */
.mk-b #masthead { position: sticky; top: 0; z-index: 60; }
.mk-b.admin-bar #masthead { top: 32px; }
.mk-b #wrapper.site { overflow: clip; }
.mk-b #masthead, .mk-b #masthead .site-header-wrap, .mk-b #masthead .site-header-row-container, .mk-b #masthead .site-header-upper-wrap { background: transparent; }
.mk-b #masthead .site-main-header-wrap .site-header-row-container-inner {
	background: rgb(255 255 255 / 0); border-bottom: 1px solid transparent;
	transition: background-color .35s var(--b-ease), border-color .35s var(--b-ease), box-shadow .35s var(--b-ease), backdrop-filter .35s var(--b-ease);
}
.mk-b #masthead .site-main-header-inner-wrap { transition: min-height .3s var(--b-ease); }
.mk-b-scrolled .mk-b #masthead .site-main-header-wrap .site-header-row-container-inner { background: rgb(255 255 255 / .92); -webkit-backdrop-filter: saturate(1.4) blur(12px); backdrop-filter: saturate(1.4) blur(12px); border-bottom-color: var(--b-line); box-shadow: 0 12px 30px -26px rgb(15 26 46 / .45); }
.mk-b .main-navigation .primary-menu-container > ul > li.current-menu-item > a, .mk-b .main-navigation .primary-menu-container > ul > li.current_page_item > a { color: var(--b-ink); }
.mk-b-scrolled .mk-b #masthead .site-main-header-inner-wrap { min-height: 64px; }
.mk-b .site-branding a.brand img.mk-logo { block-size: 46px; transition: block-size .3s var(--b-ease); }
.mk-b-scrolled .mk-b .site-branding a.brand img.mk-logo { block-size: 38px; }
.mk-b .main-navigation .primary-menu-container > ul > li.menu-item > a {
	position: relative; font-family: var(--b-sans); font-size: .9375rem; color: var(--b-text); padding-inline: .9rem; background: none;
}
.mk-b .main-navigation .primary-menu-container > ul > li.menu-item > a::after {
	content: ""; position: absolute; left: .9rem; right: .9rem; bottom: .55rem; height: 1.5px; background: var(--b-blue);
	transform: scaleX(0); transform-origin: right; transition: transform .35s var(--b-ease);
}
.mk-b .main-navigation .primary-menu-container > ul > li.menu-item > a:hover { color: var(--b-ink); }
.mk-b .main-navigation .primary-menu-container > ul > li.menu-item > a:hover::after { transform: scaleX(1); transform-origin: left; }
.mk-b .main-navigation .primary-menu-container > ul > li.mk-login > a { color: var(--b-blue); }
.mk-b .main-navigation .primary-menu-container > ul > li.mk-login > a::after { display: none; }
.mk-b #masthead .header-button-wrap .header-button {
	min-height: 44px; padding: 0 1.25rem; margin-inline-start: .5rem; font-family: var(--b-sans); font-size: .9375rem; font-weight: 500;
	color: var(--b-white); background: var(--b-blue); border: 0; border-radius: 999px; box-shadow: none;
	transition: background-color .2s var(--b-ease), transform .2s var(--b-ease);
}
.mk-b #masthead .header-button-wrap .header-button:hover { background: var(--b-blue-deep); transform: translateY(-1px); }
.mk-b .mobile-toggle-open-container .menu-toggle-open { color: var(--b-ink); border: 1px solid var(--b-line); border-radius: 999px; min-inline-size: 48px; min-block-size: 48px; }
.mk-b #mobile-drawer .drawer-inner { background: var(--b-white); color: var(--b-ink); }
.mk-b #mobile-drawer .drawer-header .drawer-toggle { color: var(--b-ink); min-inline-size: 48px; min-block-size: 48px; }
.mk-b #mobile-drawer .mobile-navigation ul { counter-reset: mk-b-nav; }
.mk-b #mobile-drawer .mobile-navigation ul li > a {
	font-family: var(--b-serif); font-size: 2.125rem; font-weight: 500; line-height: 1.15; color: var(--b-ink);
	padding-block: .85rem; border-bottom: 1px solid var(--b-line);
}
.mk-b #mobile-drawer .mobile-navigation ul li.mk-login > a { font-family: var(--b-sans); font-size: 1.0625rem; color: var(--b-blue); border-bottom: 0; }
.mk-b #mobile-drawer .mobile-header-button-wrap .button { min-height: 56px; color: var(--b-white); background: var(--b-blue); border: 0; border-radius: 999px; font-family: var(--b-sans); font-weight: 500; }

/* ---------- Boutons et liens ---------- */
.mk-b-btn {
	position: relative; display: inline-flex; align-items: center; justify-content: center; gap: .6rem; min-height: 52px; padding: 0 1.6rem;
	font-family: var(--b-sans); font-size: 1rem; font-weight: 500; line-height: 1.2; color: var(--b-white); background: var(--b-blue);
	border: 1px solid var(--b-blue); border-radius: 999px; text-decoration: none; cursor: pointer;
	transition: background-color .2s var(--b-ease), color .2s var(--b-ease), border-color .2s var(--b-ease), transform .2s var(--b-ease), box-shadow .3s var(--b-ease);
}
.mk-b-btn::after { content: ""; inline-size: 1rem; block-size: 1rem; background: currentColor; -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%23000' stroke-width='1.6'%3E%3Cpath d='M3 8h10M9 4l4 4-4 4'/%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 16 16' fill='none' stroke='%23000' stroke-width='1.6'%3E%3Cpath d='M3 8h10M9 4l4 4-4 4'/%3E%3C/svg%3E") center / contain no-repeat; transition: transform .3s var(--b-ease); }
.mk-b-btn:has(svg)::after { display: none; }
.mk-b-btn svg { inline-size: 1rem; block-size: 1rem; transition: transform .3s var(--b-ease); }
.mk-b-btn:hover { color: var(--b-white); background: var(--b-blue-deep); border-color: var(--b-blue-deep); transform: translateY(-1px); box-shadow: 0 14px 28px -18px color-mix(in srgb, var(--b-blue) 70%, transparent); text-decoration: none; }
.mk-b-btn:hover::after, .mk-b-btn:hover svg { transform: translateX(3px); }
.mk-b-btn:active { transform: translateY(0); box-shadow: none; }
.mk-b-btn--ghost { color: var(--b-blue); background: transparent; border-color: color-mix(in srgb, var(--b-blue) 35%, var(--b-white)); }
.mk-b-btn--ghost:hover { color: var(--b-blue-deep); background: var(--b-tint); border-color: var(--b-blue); box-shadow: none; }

.mk-b-link {
	display: inline-flex; align-items: center; gap: .45rem; font-family: var(--b-sans); font-weight: 500; color: var(--b-blue); text-decoration: none;
	background: linear-gradient(currentColor, currentColor) 0 100% / 100% 1px no-repeat; padding-bottom: .15rem;
	transition: background-size .35s var(--b-ease), color .2s var(--b-ease);
}
.mk-b-link::after { content: ""; inline-size: .95rem; block-size: .95rem; background: currentColor; -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%23000' stroke-width='1.6'%3E%3Cpath d='M3 8h10M9 4l4 4-4 4'/%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 16 16' fill='none' stroke='%23000' stroke-width='1.6'%3E%3Cpath d='M3 8h10M9 4l4 4-4 4'/%3E%3C/svg%3E") center / contain no-repeat; transition: transform .3s var(--b-ease); }
.mk-b-link:hover { color: var(--b-blue-deep); background-size: 0 1px; background-position: 100% 100%; }
.mk-b-link:hover::after { transform: translateX(4px); }
.mk-b-link--quiet::after { display: inline-block; vertical-align: -.1em; margin-inline-start: .4rem; }
.mk-b-link--quiet { display: inline; font-weight: 400; color: var(--b-soft); background-image: linear-gradient(var(--b-line-strong), var(--b-line-strong)); }
.mk-b-link--quiet:hover { color: var(--b-blue); }

.mk-b-arrow { inline-size: 1rem; block-size: 1rem; flex: none; transition: transform .3s var(--b-ease); }
.mk-b-meta { display: inline-flex; flex-wrap: wrap; align-items: center; gap: .25rem .6rem; font-family: var(--b-sans); font-size: .875rem; color: var(--b-muted); }
.mk-b-meta__dot { inline-size: 3px; block-size: 3px; border-radius: 50%; background: currentColor; opacity: .6; }
.mk-b-play { display: grid; place-items: center; inline-size: 2.5rem; block-size: 2.5rem; border-radius: 50%; background: var(--b-white); color: var(--b-blue); box-shadow: 0 6px 20px -8px rgb(15 26 46 / .5); transition: transform .35s var(--b-ease), background-color .2s var(--b-ease), color .2s var(--b-ease); }
.mk-b-play svg { inline-size: 38%; block-size: 38%; fill: currentColor; margin-left: 2px; }
.mk-b-play--lg { inline-size: 3.25rem; block-size: 3.25rem; }

/* ---------- 11. Pied de page ---------- */
.mk-b-foot { padding-block: var(--b-section) 2rem; background: var(--b-blue-ink); color: var(--b-on-blue-soft); }
.mk-b-foot__top { display: grid; grid-template-columns: minmax(0, 4fr) minmax(0, 8fr); gap: clamp(2.5rem, 5vw, 5rem); padding-bottom: clamp(3rem, 5vw, 4.5rem); border-bottom: 1px solid rgb(255 255 255 / .14); }
.mk-b-foot__brand { display: grid; align-content: start; gap: 1.25rem; }
.mk-b-foot__name { font-family: var(--b-serif); font-size: 2.25rem; font-weight: 500; line-height: 1; color: var(--b-white); display: flex; flex-wrap: wrap; gap: .25rem 1rem; align-items: baseline; }
.mk-b-foot__name [lang="ar"] { font-size: .85em; color: var(--b-on-blue-soft); }
.mk-b-foot__mission { font-size: 1rem; line-height: 1.6; max-width: 26em; }
.mk-b-foot .mk-social { display: flex; gap: .5rem; list-style: none; margin: 0; padding: 0; }
.mk-b-foot .mk-social a { display: grid; place-items: center; inline-size: 44px; block-size: 44px; border: 1px solid rgb(255 255 255 / .22); border-radius: 50%; color: var(--b-white); transition: background-color .2s var(--b-ease), border-color .2s var(--b-ease), transform .2s var(--b-ease); }
.mk-b-foot .mk-social a:hover { background: var(--b-white); border-color: var(--b-white); color: var(--b-blue-ink); transform: translateY(-2px); }
.mk-b-foot__cols { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)) /* trois colonnes depuis le retrait de « Merkez » (2026-10-15) */; gap: 2rem; }
.mk-b .mk-b-foot__title { margin-bottom: 1rem !important; font-family: var(--b-sans); font-size: .8125rem; font-weight: 500; letter-spacing: .02em; color: var(--b-white); }
.mk-b-foot__list { display: grid; gap: .35rem; }
.mk-b-foot__list a { display: inline-block; padding-block: .3rem; font-family: var(--b-sans); font-size: .9375rem; color: var(--b-on-blue-soft); text-decoration: none; transition: color .2s var(--b-ease), transform .2s var(--b-ease); }
.mk-b-foot__list a:hover { color: var(--b-white); transform: translateX(3px); }
.mk-b-foot a:focus-visible { box-shadow: 0 0 0 2px var(--b-blue-ink), 0 0 0 4px var(--b-white); }
.mk-b-foot__legal { padding-top: 1.75rem; font-family: var(--b-sans); font-size: .8125rem; color: var(--b-on-blue-soft); }


@media (max-width: 1100px) {
	.mk-b-foot__top { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 719px) {
	.mk-b-foot__cols { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 2rem 1.5rem; }
	.mk-b .site-branding a.brand img.mk-logo { block-size: 40px; }
}
.mk-b-foot .mk-b-wrap { max-width: 1400px; margin-inline: auto; padding-inline: var(--b-gutter); }
.mk-b-foot__list, .mk-b-foot__list li { list-style: none; margin: 0; padding: 0; }

/* ---------- Pages intérieures : derniers vestiges de l'ancien monde ---------- */
.mk-b-foot :is(p, h2, ul) { margin: 0; }
.mk-b .mk-prog-hero__field { background: var(--b-blue); }
.mk-b .mk-hub-hero__ar { margin: 0; font-family: var(--b-serif); font-size: clamp(2.75rem, 1.4rem + 4vw, 5.5rem); line-height: 1.5; color: var(--b-white); text-align: center; }
.mk-b .mk-level { inline-size: min(100%, 27rem); }
.mk-b .mk-level__title { margin: 0 0 1rem; font-family: var(--b-sans); font-size: .8125rem; font-weight: 500; color: var(--b-on-blue-soft); }
.mk-b .mk-level__track { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); }
.mk-b .mk-level__step { position: relative; display: grid; gap: .6rem; padding-top: 1.1rem; }
.mk-b .mk-level__step::before { content: ""; position: absolute; top: .3rem; left: 0; right: 0; height: 2px; background: rgb(255 255 255 / .22); }
.mk-b .mk-level__step.is-past::before, .mk-b .mk-level__step.is-current::before { background: var(--b-white); }
.mk-b .mk-level__dot { position: absolute; top: 0; left: 0; inline-size: .75rem; block-size: .75rem; border-radius: 50%; background: var(--b-blue); border: 2px solid rgb(255 255 255 / .45); }
.mk-b .mk-level__step.is-past .mk-level__dot { background: var(--b-white); border-color: var(--b-white); }
.mk-b .mk-level__step.is-current .mk-level__dot { inline-size: 1rem; block-size: 1rem; top: -.125rem; background: var(--b-white); border-color: var(--b-white); box-shadow: 0 0 0 4px rgb(255 255 255 / .2); }
.mk-b .mk-level__label { padding-inline-end: .5rem; font-family: var(--b-sans); font-size: .8125rem; line-height: 1.35; color: var(--b-on-blue-soft); }
.mk-b .mk-level__step.is-current .mk-level__label { color: var(--b-white); font-weight: 500; }

/* ---------- Trouver mon parcours : réponses en tuiles, résumé en panneau clair ---------- */
.mk-b .mk-choice__body { padding: 1rem 1.1rem 1rem 2.6rem; min-height: 60px; background: var(--b-white); border-color: var(--b-line); border-radius: var(--b-r); transition: border-color .2s var(--b-ease), background-color .2s var(--b-ease), transform .2s var(--b-ease), box-shadow .25s var(--b-ease); }
.mk-b .mk-choice:hover .mk-choice__body { border-color: var(--b-blue); transform: translateY(-1px); box-shadow: var(--b-shadow); }
.mk-b .mk-choice input:checked + .mk-choice__body { background: var(--b-tint-2); border-color: var(--b-blue); animation: mk-b-pick .4s var(--b-ease); }
.mk-b .mk-choice input:checked + .mk-choice__body :is(.mk-choice__name, .mk-choice__text) { color: var(--b-ink); }
.mk-b .mk-choice input:checked + .mk-choice__body::before { background: var(--b-blue); border-color: var(--b-blue); box-shadow: inset 0 0 0 3px var(--b-white); }
@keyframes mk-b-pick { 0% { transform: scale(.98); } 60% { transform: scale(1.01); } 100% { transform: none; } }
.mk-b .mk-wizard__aside, .mk-b .mk-wizard__aside.mk-on-blue { background: var(--b-tint-2); color: var(--b-ink); box-shadow: none; } /* panneau clair : prend le pas sur la bande bleue commune */
.mk-b .mk-wizard__aside .mk-facts :is(dt, dd) { color: var(--b-ink); }
.mk-b .mk-wizard__aside .mk-facts dt { color: var(--b-muted); }
.mk-b .mk-wizard__aside .mk-facts :is(div, dt, dd) { border-color: var(--b-line); }
.mk-b .mk-wizard__summary:empty::before { content: "Vos réponses s’afficheront ici, avec le programme conseillé."; display: block; max-width: 20em; font-family: var(--b-serif); font-size: 1.5rem; line-height: 1.3; color: var(--b-soft); text-align: center; }
@media (prefers-reduced-motion: reduce) { .mk-b .mk-choice input:checked + .mk-choice__body { animation: none; } }
.mk-b .mk-keys { gap: .6rem; }
.mk-b .mk-key span { min-height: 56px; padding-inline: 1rem; background: var(--b-white); border: 1px solid var(--b-line); border-radius: var(--b-r); font-family: var(--b-sans); color: var(--b-ink); transition: border-color .2s var(--b-ease), background-color .2s var(--b-ease), transform .2s var(--b-ease), box-shadow .25s var(--b-ease); }
.mk-b .mk-key span::before { inline-size: 1.1rem; block-size: 1.1rem; border-color: var(--b-line-strong); }
.mk-b .mk-key:hover span { border-color: var(--b-blue); transform: translateY(-1px); box-shadow: var(--b-shadow); }
.mk-b .mk-key input:checked + span { background: var(--b-tint-2); border-color: var(--b-blue); color: var(--b-ink); animation: mk-b-pick .4s var(--b-ease); }
.mk-b .mk-key input:checked + span::before { background: var(--b-blue); border-color: var(--b-blue); box-shadow: inset 0 0 0 3px var(--b-white); }
.mk-b .mk-keys--compact .mk-key span { min-height: 48px; }
@media (prefers-reduced-motion: reduce) { .mk-b .mk-key input:checked + span { animation: none; } }

/* ---------- Apparitions (contenu visible sans JS ; masqué seulement sous la ligne de flottaison) ---------- */
.mk-b-js .is-pending { opacity: 0; transform: translateY(18px); }
.mk-b-js .is-in { opacity: 1; transform: none; transition: opacity .7s var(--b-ease) var(--d, 0ms), transform .7s var(--b-ease) var(--d, 0ms); }


/* ---------- Orientation (accueil, programmes) : la bande bleue, l'outil vivant ---------- */
.mk-b-orientation { padding-block: var(--b-section); background: var(--b-blue); color: var(--b-on-blue); position: relative; overflow: hidden; }
.mk-b-orientation__grid { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: clamp(2rem, 5vw, 6rem); align-items: center; }
.mk-b-orientation__intro { display: grid; gap: 1.25rem; }
.mk-b-orientation__ar { font-size: clamp(2.25rem, 1.4rem + 2.6vw, 4rem); line-height: 1.3; color: var(--b-on-blue-soft); }
.mk-b .mk-b-orientation .mk-b-h2 { color: var(--b-white); }
.mk-b-orientation .mk-b-lede { color: var(--b-on-blue-soft); }
.mk-b-orient {
	position: relative; display: grid; gap: 1.25rem; padding: clamp(1.75rem, 3.5vw, 3rem); background: var(--b-white); color: var(--b-text);
	border-radius: var(--b-r-lg); box-shadow: 0 30px 60px -30px color-mix(in srgb, var(--b-blue-ink) 60%, transparent); overflow: hidden;
}
.mk-b-orient [hidden] { display: none !important; }
.mk-b-orient__progress { position: absolute; top: 0; left: 0; right: 0; height: 4px; background: var(--b-tint); }
.mk-b-orient__progress span { display: block; height: 100%; background: var(--b-blue); transform: scaleX(.33); transform-origin: left; transition: transform .6s var(--b-ease); }
.mk-b-orient__step { font-family: var(--b-sans); font-size: .8125rem; font-weight: 500; color: var(--b-blue); }
.mk-b-orient__q { border: 0; margin: 0; padding: 0; min-width: 0; opacity: 0; transform: translateX(14px); transition: opacity .32s var(--b-ease), transform .32s var(--b-ease); }
.mk-b-orient__q.is-active { opacity: 1; transform: none; }
.mk-b-orient__q.is-leaving { opacity: 0; transform: translateX(-14px); transition-duration: .18s; }
.mk-b-orient:not(.is-ready) .mk-b-orient__q { opacity: 1; transform: none; }
.mk-b-orient legend { display: block; margin-bottom: 1.5rem; padding: 0; font-family: var(--b-serif); font-size: clamp(1.75rem, 1.3rem + 1.3vw, 2.5rem); font-weight: 500; line-height: 1.1; color: var(--b-ink); outline: none; }
.mk-b-opts { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 11rem), 1fr)); gap: .75rem; }
.mk-b-opt { position: relative; display: block; cursor: pointer; }
.mk-b-opt input { position: absolute; opacity: 0; inset: 0; margin: 0; cursor: pointer; }
.mk-b-opt__box {
	display: grid; grid-template-columns: auto minmax(0, 1fr); grid-template-areas: "check label" "check hint"; column-gap: .85rem; row-gap: .15rem; align-items: center;
	min-height: 76px; padding: 1rem 1.1rem; border: 1px solid var(--b-line); border-radius: var(--b-r); background: var(--b-white);
	transition: border-color .2s var(--b-ease), background-color .2s var(--b-ease), transform .2s var(--b-ease), box-shadow .25s var(--b-ease);
}
.mk-b-opt__check { grid-area: check; display: grid; place-items: center; inline-size: 1.5rem; block-size: 1.5rem; border-radius: 50%; border: 1.5px solid var(--b-line-strong); color: transparent; transition: background-color .2s var(--b-ease), border-color .2s var(--b-ease), color .2s var(--b-ease), transform .3s var(--b-ease); }
.mk-b-opt__check svg { inline-size: .85rem; block-size: .85rem; }
.mk-b-opt__label { grid-area: label; font-family: var(--b-sans); font-size: 1.0625rem; font-weight: 500; color: var(--b-ink); }
.mk-b-opt__hint { grid-area: hint; font-family: var(--b-sans); font-size: .8125rem; color: var(--b-muted); }
.mk-b-opt:hover .mk-b-opt__box { border-color: var(--b-blue); transform: translateY(-2px); box-shadow: var(--b-shadow); }
.mk-b-opt input:focus-visible + .mk-b-opt__box { box-shadow: var(--b-focus); }
.mk-b-opt input:checked + .mk-b-opt__box { border-color: var(--b-blue); background: var(--b-tint-2); }
.mk-b-opt input:checked + .mk-b-opt__box .mk-b-opt__check { background: var(--b-blue); border-color: var(--b-blue); color: var(--b-white); transform: scale(1.08); }
.mk-b-orient__back { justify-self: start; margin-top: 1rem; padding: .5rem 0; border: 0; background: none; font-family: var(--b-sans); font-size: .875rem; color: var(--b-soft); text-decoration: underline; text-underline-offset: .2em; cursor: pointer; min-height: 44px; }
.mk-b-orient__back:hover { color: var(--b-blue); }
.mk-b-orient__end { display: grid; gap: 1.5rem; opacity: 0; transform: translateX(14px); transition: opacity .32s var(--b-ease), transform .32s var(--b-ease); }
.mk-b-orient__end.is-active { opacity: 1; transform: none; }
.mk-b-orient__result { display: grid; gap: .5rem; outline: none; }
.mk-b-orient__result span { font-family: var(--b-sans); font-size: .875rem; color: var(--b-muted); }
.mk-b-orient__result strong { font-family: var(--b-serif); font-size: clamp(2rem, 1.4rem + 1.8vw, 3rem); font-weight: 500; line-height: 1.05; color: var(--b-blue); }
.mk-b-orient__actions { display: flex; flex-wrap: wrap; align-items: center; gap: 1rem 1.5rem; }
.mk-b-orient__actions .mk-b-orient__back { margin-top: 0; }
.mk-b-orient__note { padding-top: 1.1rem; border-top: 1px solid var(--b-line); font-family: var(--b-sans); font-size: .8125rem; line-height: 1.55; color: var(--b-muted); }


/* Orientation : retour immédiat au clic. */
.mk-b-opt input:checked + .mk-b-opt__box { animation: mk-b-pick .4s var(--b-ease); }
@keyframes mk-b-pick { 0% { transform: scale(.97); } 60% { transform: scale(1.01); } 100% { transform: none; } }

@media (max-width: 719px) {
	.mk-b-orient { padding: 1.75rem 1.25rem 1.5rem; }
	.mk-b-opts { grid-template-columns: minmax(0, 1fr); }
	.mk-b-opt__box { min-height: 68px; }
	.mk-b-orient__actions .mk-b-btn { inline-size: 100%; }
}

/* ---------- Pastille (badge) : pilule translucide, liseré fin, point lumineux ---------- */
.mk-b-pill {
	display: inline-flex; align-items: center; gap: .65rem; inline-size: fit-content; padding: .45rem 1.05rem .45rem .8rem; border-radius: 999px;
	background: color-mix(in srgb, var(--b-blue) 6%, #fff); border: 1px solid color-mix(in srgb, var(--b-blue) 20%, #fff);
	font-family: var(--b-sans); font-size: .875rem; font-weight: 500; line-height: 1.3; letter-spacing: 0; text-transform: none; color: var(--b-blue);
	box-shadow: inset 0 1px 0 rgb(255 255 255 / .7);
}
.mk-b-pill::before {
	content: ""; flex: none; inline-size: .55rem; block-size: .55rem; border-radius: 50%; background: var(--b-blue);
	box-shadow: 0 0 0 4px color-mix(in srgb, var(--b-blue) 12%, transparent), 0 0 12px 1px color-mix(in srgb, var(--b-blue) 45%, transparent);
}
.mk-b-pill--on-blue { background: rgb(255 255 255 / .1); border-color: rgb(255 255 255 / .24); color: #fff; box-shadow: inset 0 1px 0 rgb(255 255 255 / .12); }
.mk-b-pill--on-blue::before { background: var(--b-glint); box-shadow: 0 0 0 4px color-mix(in srgb, var(--b-glint) 16%, transparent), 0 0 14px 2px color-mix(in srgb, var(--b-glint) 55%, transparent); }
p.mk-b-pill { margin: 0; }

/* ---------- Bleus allégés partout ---------- */
.mk-b .mk-on-blue, .mk-b .mk-prog-hero__field { background: var(--b-band); }
.mk-b-foot { background: var(--b-band); color: rgb(255 255 255 / .86); }
.mk-b-foot .mk-b-foot__list a, .mk-b-foot__mission, .mk-b-foot__legal { color: rgb(255 255 255 / .86); }
.mk-b-foot__top { border-bottom-color: rgb(255 255 255 / .2); }
.mk-b-orientation { background: var(--b-band); }
.mk-b-orientation .mk-b-lede, .mk-b-orientation__ar { color: rgb(255 255 255 / .88); }

/* Reflet fin en haut des fonds bleus. */
.mk-b-orientation, .mk-b-foot { box-shadow: var(--b-band-edge); }

/* Boutons texte : neutraliser le survol par défaut des <button> de Kadence (fond plein, texte invisible). */
.mk-b button.mk-b-orient__back, .mk-b button.mk-b-orient__back:hover, .mk-b button.mk-b-orient__back:focus, .mk-b button.mk-b-orient__back:active {
	background: transparent; border: 0; box-shadow: none; color: var(--b-soft);
}
.mk-b button.mk-b-orient__back { min-height: 44px; padding: .5rem .25rem; font-family: var(--b-sans); font-size: .9375rem; text-decoration: underline; text-decoration-color: var(--b-line-strong); text-underline-offset: .25em; transition: color .2s var(--b-ease), text-decoration-color .2s var(--b-ease), text-underline-offset .2s var(--b-ease); }
.mk-b button.mk-b-orient__back:hover { color: var(--b-blue); text-decoration-color: var(--b-blue); text-underline-offset: .35em; }
.mk-b button.mk-b-orient__back:focus-visible { box-shadow: var(--b-focus); border-radius: var(--b-r-sm); }

/* ---------- Page introuvable (template-parts/content/error-404.php) ---------- */
.error404 .content-container, .error404 .content-wrap { max-width: none; padding: 0; }
.error404 #main, .error404 .content-area, .error404 #primary { margin: 0; padding: 0; }
.mk-b.error404 .site-main { padding: 0; }
.mk-404 .mk-pagehead { position: relative; overflow: hidden; }
.mk-404__code { position: absolute; right: var(--b-gutter); bottom: -.18em; margin: 0; font-family: var(--b-serif); font-size: clamp(7rem, 4rem + 12vw, 15rem); line-height: 1; color: rgb(255 255 255 / .1); pointer-events: none; }
.mk-404__body { max-width: 1400px; margin-inline: auto; padding: var(--b-section) var(--b-gutter); display: grid; gap: var(--b-head-gap); }
.mk-404__doors { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; margin: 0; padding: 0; list-style: none; }
.mk-404__doors a { display: grid; gap: .5rem; block-size: 100%; padding: clamp(1.25rem, 2.2vw, 1.75rem); border: 1px solid var(--b-line); border-radius: var(--b-r-lg); color: var(--b-ink); text-decoration: none; transition: border-color .25s var(--b-ease), transform .3s var(--b-ease), box-shadow .35s var(--b-ease); }
.mk-404__doors a:hover { border-color: color-mix(in srgb, var(--b-blue) 45%, var(--b-line)); transform: translateY(-3px); box-shadow: var(--b-shadow); color: var(--b-ink); }
.mk-404__doors strong { font-family: var(--b-serif); font-size: 1.625rem; font-weight: 500; }
.mk-404__doors a:hover strong { color: var(--b-blue); }
.mk-404__doors span { font-family: var(--b-sans); font-size: 1rem; line-height: 1.55; color: var(--b-soft); }
.mk-404__search { display: grid; gap: .6rem; max-width: 40rem; }
.mk-404__search label { font-family: var(--b-sans); font-size: .9375rem; font-weight: 500; color: var(--b-ink); }
.mk-404__search div { display: flex; gap: .5rem; }
.mk-404__search input { flex: 1; min-width: 0; min-height: 48px; padding: 0 1rem; border: 1px solid var(--b-line-strong); border-radius: 999px; font: 400 1rem var(--b-sans); color: var(--b-ink); background: var(--b-white); }
.mk-404__search input:focus { outline: none; border-color: var(--b-blue); box-shadow: var(--b-focus); }
.mk-404__home { margin: 0; }
@media (max-width: 719px) {
	.mk-404__doors { grid-template-columns: minmax(0, 1fr); }
	.mk-404__search div { flex-direction: column; }
}

/* ---------- Une seule largeur de page : en-tête Kadence, pages héritées et pied alignés sur .mk-b-wrap (1400 px + gouttière B) ---------- */
.mk-b { --mk-gutter: var(--b-gutter); }
.mk-b #masthead .site-container { max-width: 1400px; padding-inline: var(--b-gutter); }
.mk-b .mk-wrap { max-width: 1400px; }
.mk-b :is(.mk-course__head-inner, .mk-library__head-inner) { max-width: calc(1400px - 2 * var(--b-gutter)); }
.mk-b .mk-pagehead { padding-inline: max(var(--b-gutter), (100% - 1400px) / 2 + var(--b-gutter)); }

/* ---------- Pages héritées (Bibliothèque, cours gratuits, pages simples, formulaire) : même rythme vertical ---------- */
.mk-b { --mk-section: var(--b-section); }
.mk-b :is(.mk-pagehead, .mk-library__head, .mk-course__head) { padding-block: var(--b-section) calc(var(--b-section) * .8); }
.mk-b :is(.mk-pagebody, .mk-library__results, .mk-course__list) { padding-block: calc(var(--b-section) * .8) var(--b-section); }
.mk-b :is(.mk-libentry, .mk-course__single) { padding-block: calc(var(--b-section) * .8) var(--b-section); }
.mk-b .mk-course__layout { padding-block: calc(var(--b-section) * .8) var(--b-section); }
.mk-b .mk-page__section { padding-block: calc(var(--b-section) * .6); }

/* ---------- Carte de série (accueil, /cours-gratuits/) ---------- */
.mk-b-series {
	position: relative; display: flex; flex-direction: column; overflow: hidden; background: var(--b-white);
	border: 1px solid var(--b-line); border-radius: var(--b-r);
	transition: transform .4s var(--b-ease), box-shadow .4s var(--b-ease), border-color .3s var(--b-ease);
}
.mk-b-series:hover { transform: translateY(-4px); box-shadow: var(--b-shadow-hover); border-color: transparent; }
.mk-b-series__cover { position: relative; display: block; aspect-ratio: 16 / 9; overflow: hidden; background: var(--b-blue-ink); }
.mk-b-series__cover img { display: block; inline-size: 100%; block-size: 100%; object-fit: cover; transition: transform 1s var(--b-ease); }
.mk-b-series__cover::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, transparent 45%, color-mix(in srgb, var(--b-blue-ink) 60%, transparent)); }
.mk-b-series__cover .mk-b-play { position: absolute; z-index: 1; left: 1.1rem; bottom: 1.1rem; }
.mk-b-series__count { position: absolute; z-index: 1; right: 1.1rem; bottom: 1.35rem; font-family: var(--b-sans); font-size: .8125rem; font-weight: 500; color: var(--b-white); }
.mk-b-series__placeholder { display: grid; place-items: center; block-size: 100%; font-size: 3rem; color: var(--b-on-blue-soft); }
.mk-b-series:hover .mk-b-series__cover img { transform: scale(1.05); }
.mk-b-series__cover .mk-b-play::after { content: ""; position: absolute; inset: 0; border-radius: 50%; border: 2px solid var(--b-white); opacity: 0; }
.mk-b-series:hover .mk-b-play { transform: scale(1.1); background: var(--b-blue); color: var(--b-white); }
.mk-b-series:hover .mk-b-play::after { animation: mk-b-ring .9s var(--b-ease) 1; } /* une onde, une seule fois */
@keyframes mk-b-ring { from { opacity: .8; transform: scale(1); } to { opacity: 0; transform: scale(1.7); } }
.mk-b-play { position: relative; }
.mk-b-series__body { display: flex; flex-direction: column; gap: .65rem; flex: 1; padding: clamp(1.4rem, 2vw, 1.75rem); }
.mk-b-series__subject { font-family: var(--b-sans); font-size: .8125rem; font-weight: 500; color: var(--b-blue); }
.mk-b .mk-b-series__title { font-size: clamp(1.5rem, 1.3rem + .5vw, 1.875rem); line-height: 1.12; letter-spacing: 0; }
.mk-b-series__title a { color: inherit; text-decoration: none; }
.mk-b-series__title a::after { content: ""; position: absolute; inset: 0; } /* toute la carte est cliquable */
.mk-b-series__title::first-letter { text-transform: uppercase; }
.mk-b-series__excerpt { font-size: .9375rem; line-height: 1.6; color: var(--b-soft); display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.mk-b-series__facts { font-family: var(--b-sans); font-size: .875rem; color: var(--b-muted); font-variant-numeric: tabular-nums; }
.mk-b-series__cta { position: relative; z-index: 1; display: inline-flex; align-items: center; gap: .45rem; align-self: flex-start; margin-top: auto; padding-top: 1rem; font-family: var(--b-sans); font-size: .9375rem; font-weight: 500; color: var(--b-blue); text-decoration: none; }
.mk-b-series:hover .mk-b-series__cta .mk-b-arrow { transform: translateX(4px); }
.mk-b-series p, .mk-b-series h3 { margin: 0; } /* les marges héritées de Kadence n'entrent pas dans la carte */
.mk-b-series__speaker { font-family: var(--b-sans); font-size: .9375rem; color: var(--b-text); }

/* ---------- /cours-gratuits/ : catégories, intervenant, recherche, tri (CourseArchive.php, courses.js) ---------- */
.mk-c-head__ar { font-family: var(--b-serif); font-size: clamp(1.75rem, 1.3rem + 1.4vw, 2.75rem); line-height: 1.4; color: rgb(255 255 255 / .9); justify-self: start; }
.mk-c-head__facts { font-family: var(--b-sans); font-size: .9375rem; color: rgb(255 255 255 / .88); font-variant-numeric: tabular-nums; }
.mk-c-browse { padding-block: calc(var(--b-section) * .8) var(--b-section); }
.mk-c-tools { display: grid; gap: 1rem; }
.mk-c-tabs { margin: 0; padding: 0; border: 0; min-width: 0; }
.mk-c-tabs__list { display: flex; gap: .5rem; overflow-x: auto; scrollbar-width: none; padding-block: .25rem; margin-inline: calc(var(--b-gutter) * -1); padding-inline: var(--b-gutter); scroll-padding-inline: var(--b-gutter); }
.mk-c-tabs__list::-webkit-scrollbar { display: none; }
.mk-c-tab { position: relative; flex: none; cursor: pointer; }
.mk-c-tab input { position: absolute; inset: 0; opacity: 0; margin: 0; cursor: pointer; }
.mk-c-tab span { display: inline-flex; align-items: center; gap: .55rem; min-height: 44px; padding: 0 .6rem 0 1.1rem; border: 1px solid var(--b-line); border-radius: 999px; background: var(--b-white); font-family: var(--b-sans); font-size: .9375rem; color: var(--b-text); white-space: nowrap; transition: border-color .2s var(--b-ease), background-color .2s var(--b-ease), color .2s var(--b-ease); }
.mk-c-tab em { display: grid; place-items: center; min-inline-size: 1.6rem; block-size: 1.6rem; padding-inline: .35rem; border-radius: 999px; background: var(--b-tint-2); font-style: normal; font-size: .75rem; font-weight: 500; color: var(--b-soft); font-variant-numeric: tabular-nums; }
.mk-c-tab:hover span { border-color: var(--b-blue); }
.mk-c-tab input:checked + span { background: var(--b-blue); border-color: var(--b-blue); color: var(--b-white); }
.mk-c-tab input:checked + span em { background: rgb(255 255 255 / .18); color: var(--b-white); }
.mk-c-tab input:focus-visible + span { box-shadow: var(--b-focus); }
.mk-c-row { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 16rem) minmax(0, 12rem) auto; gap: .75rem; }
.mk-c-search { position: relative; display: block; }
.mk-c-search svg { position: absolute; left: 1.1rem; top: 50%; inline-size: 1.1rem; block-size: 1.1rem; transform: translateY(-50%); color: var(--b-muted); pointer-events: none; }
.mk-b .mk-c-search input, .mk-b .mk-c-select select { inline-size: 100%; min-height: 48px; border: 1px solid var(--b-line-strong); border-radius: 999px; background-color: var(--b-white); font: 400 .9375rem var(--b-sans); color: var(--b-ink); box-shadow: none; transition: border-color .2s var(--b-ease), box-shadow .2s var(--b-ease); }
.mk-b .mk-c-search input { padding: 0 1rem 0 2.75rem; }
.mk-b .mk-c-select select { -webkit-appearance: none; appearance: none; padding: 0 2.5rem 0 1.1rem; cursor: pointer; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%23024090' stroke-width='1.6'%3E%3Cpath d='m4 6 4 4 4-4'/%3E%3C/svg%3E"); background-repeat: no-repeat; background-position: right 1rem center; background-size: 1rem; }
.mk-b .mk-c-search input:focus, .mk-b .mk-c-select select:focus { outline: none; border-color: var(--b-blue); box-shadow: var(--b-focus); }
.mk-c-tools.is-enhanced .mk-c-apply { display: none; }
.mk-c-status { display: flex; align-items: baseline; justify-content: space-between; gap: 1rem; margin-block: clamp(1.5rem, 2.5vw, 2rem) 1.25rem; padding-bottom: 1rem; border-bottom: 1px solid var(--b-line); }
.mk-c-status p { margin: 0; font-family: var(--b-sans); font-size: .9375rem; color: var(--b-soft); font-variant-numeric: tabular-nums; }
.mk-c-reset[hidden] { display: none; }
.mk-c-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: clamp(1.25rem, 2vw, 2rem); }
.mk-c-grid > .mk-b-series[hidden] { display: none; }
.mk-c-grid[hidden] { display: none; }
.mk-c-grid .mk-b-series__subject a { color: inherit; text-decoration: none; }
.mk-c-grid .mk-b-series__subject a:hover { text-decoration: underline; }
.mk-c-grid .mk-b-series--ep .mk-b-series__subject::first-letter { text-transform: uppercase; }
.mk-c-grid .mk-b-series--ep .mk-b-series__title { text-align: start; }
.mk-c-grid .mk-b-series__body { gap: .4rem; }
.mk-c-grid .mk-b-series__cta { padding-top: .85rem; }
.mk-c-empty { margin: 0; padding: 2.5rem 0; font-family: var(--b-sans); font-size: 1rem; color: var(--b-soft); }
.mk-c-empty[hidden] { display: none; }
@media (max-width: 1100px) {
	.mk-c-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.mk-c-row { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
	.mk-c-search { grid-column: 1 / -1; }
}
@media (max-width: 719px) {
	.mk-c-grid { grid-template-columns: minmax(0, 1fr); }
	.mk-c-row { grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr); gap: .6rem; }
	.mk-b .mk-c-select select { padding-inline: .9rem 2.1rem; background-position: right .8rem center; font-size: .875rem; }
}

/* ---------- Carte d'avis (accueil, /avis/, pages programme) ---------- */
.mk-b-voice { display: grid; align-content: start; gap: 1.1rem; padding: clamp(1.5rem, 2.5vw, 2.25rem); border: 1px solid var(--b-line); border-radius: var(--b-r-lg); background: var(--b-white); transition: border-color .3s var(--b-ease), box-shadow .35s var(--b-ease); }
.mk-b-voice:hover { box-shadow: var(--b-shadow); }
.mk-b-voice--lead { grid-row: span 2; background: var(--b-tint-2); border-color: transparent; padding: clamp(2rem, 4vw, 3.5rem); align-content: space-between; }
.mk-b-voice__result { font-family: var(--b-sans); font-size: .875rem; font-weight: 500; color: var(--b-blue); }
.mk-b-voice blockquote { margin: 0; padding: 0; border: 0; font-family: var(--b-serif); font-size: clamp(1.375rem, 1.2rem + .5vw, 1.75rem); line-height: 1.3; color: var(--b-ink); }
.mk-b-voice--lead blockquote { font-size: clamp(1.5rem, 1.2rem + .9vw, 2.125rem); line-height: 1.25; }
.mk-b-voice figcaption { display: flex; flex-wrap: wrap; gap: .25rem .75rem; align-items: baseline; padding-top: 1rem; border-top: 1px solid var(--b-line); font-family: var(--b-sans); font-size: .9375rem; }
.mk-b-voice__who { font-weight: 500; color: var(--b-ink); }
.mk-b-voice__prog { color: var(--b-muted); font-size: .875rem; }
.mk-b-voice__audio { display: inline-flex; align-items: center; gap: .85rem; font-family: var(--b-sans); font-size: .9375rem; color: var(--b-soft); }
.mk-b-voice__audio .mk-b-play { background: var(--b-blue); color: var(--b-white); box-shadow: none; }
.mk-b-voice__wave { display: inline-flex; align-items: center; gap: 3px; block-size: 20px; }
.mk-b-voice__wave i { inline-size: 3px; border-radius: 2px; background: var(--b-line-strong); opacity: .5; }
.mk-b-voice__wave i:nth-child(1) { block-size: 30%; } .mk-b-voice__wave i:nth-child(2) { block-size: 70%; } .mk-b-voice__wave i:nth-child(3) { block-size: 45%; } .mk-b-voice__wave i:nth-child(4) { block-size: 90%; } .mk-b-voice__wave i:nth-child(5) { block-size: 55%; } .mk-b-voice__wave i:nth-child(6) { block-size: 75%; } .mk-b-voice__wave i:nth-child(7) { block-size: 35%; }
.mk-b-voice__audio { display: grid; gap: .75rem; }
.mk-b-voice__wave i { transform-origin: center; }
.mk-b-voice__audio:has(.mk-audio.is-playing) .mk-b-voice__wave i { opacity: 1; background: var(--b-blue); animation: mk-b-wave 1.1s ease-in-out infinite alternate; } /* seulement pendant la lecture */
.mk-b-voice__audio:has(.mk-audio.is-playing) .mk-b-voice__wave i:nth-child(odd) { animation-delay: -.4s; }
.mk-b-voice__audio:has(.mk-audio.is-playing) .mk-b-voice__wave i:nth-child(3n) { animation-delay: -.7s; }
.mk-b-voice blockquote p { margin: 0; }
.mk-b-voice blockquote p + p { margin-top: .6em; }
.mk-b-voice .mk-b-voice__ar { font-size: 1.05em; color: var(--b-blue); text-align: right; }
.mk-b .mk-voices-grid { display: block; columns: 3 19rem; column-gap: 1.5rem; }
.mk-voices-grid > .mk-b-voice { break-inside: avoid; margin-bottom: 1.5rem; }
.mk-voices-grid .mk-b-voice blockquote { font-size: clamp(1.1875rem, 1.1rem + .3vw, 1.375rem); line-height: 1.4; }

/* ---------- Pastille « À vérifier » (traductions importées dont un passage est en relecture : méta a_verifier) ---------- */
.mk-b .mk-tag--verify { gap: .4rem; background: var(--b-white); color: var(--b-ink); box-shadow: inset 0 0 0 1px var(--b-line-strong); border-radius: 999px; padding-inline: .55rem .7rem; }
.mk-b .mk-tag--verify::before { content: ""; inline-size: .45rem; block-size: .45rem; border-radius: 50%; background: var(--b-blue); box-shadow: 0 0 0 3px color-mix(in srgb, var(--b-blue) 14%, transparent); }

/* ---------- Questionnaire d'orientation : étapes visibles et inscription directe (ProMax::orientation) ---------- */
.mk-b-orient__top { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: .75rem 1rem; }
.mk-b-orient__steps { display: flex; gap: .4rem; margin: 0 !important; padding: 0; list-style: none; font-family: var(--b-sans); font-size: .75rem; color: var(--b-muted); }
.mk-b-orient__steps li { display: inline-flex; align-items: center; gap: .4rem; }
.mk-b-orient__steps li + li::before { content: ""; inline-size: 1.25rem; block-size: 1px; background: var(--b-line); }
.mk-b-orient__steps li.is-current { color: var(--b-blue); font-weight: 500; }
.mk-b-orient__steps li.is-done { color: var(--b-ink); }
.mk-b-orient__direct { margin: 1.25rem 0 0 !important; font-family: var(--b-sans); font-size: .9375rem; color: rgb(255 255 255 / .82); text-align: center; }
.mk-b-orient__direct .mk-b-link { color: var(--b-white); margin-inline-start: .35rem; }
.mk-b-orient__direct .mk-b-link:hover { color: var(--b-glint); }


/* ---------- Puce de filtre commune (Bibliothèque) : libellé parfaitement centré, hauteur et marges constantes ---------- */
.mk-chips { display: flex; flex-wrap: wrap; gap: .5rem; margin: 0; padding: 0; list-style: none; }
.mk-chip {
	display: inline-flex; align-items: center; justify-content: center; gap: .5rem; block-size: 40px; padding-inline: 1rem;
	font-family: var(--b-sans); font-size: .9375rem; line-height: 1; white-space: nowrap; color: var(--b-text); text-decoration: none;
	background: var(--b-white); border: 1px solid var(--b-line); border-radius: 999px;
	transition: border-color .2s var(--b-ease), color .2s var(--b-ease), background-color .2s var(--b-ease), transform .25s var(--b-ease), box-shadow .3s var(--b-ease);
}
.mk-chip:has(.mk-chip__n) { padding-inline-end: .4rem; }
.mk-chip__label { display: block; padding-block: 1px 0; } /* compense la ligne de base de Readex : texte centré optiquement */
.mk-chip__n { display: inline-flex; align-items: center; justify-content: center; min-inline-size: 1.6rem; block-size: 1.6rem; padding-inline: .4rem; border-radius: 999px; background: var(--b-tint-2); font-size: .75rem; font-weight: 500; line-height: 1; color: var(--b-soft); font-variant-numeric: tabular-nums; transition: background-color .2s var(--b-ease), color .2s var(--b-ease); }
.mk-chip:hover { color: var(--b-blue); border-color: color-mix(in srgb, var(--b-blue) 55%, var(--b-line)); background: var(--b-tint-2); transform: translateY(-1px); box-shadow: 0 8px 18px -12px color-mix(in srgb, var(--b-blue) 60%, transparent); }
.mk-chip:hover .mk-chip__n { background: var(--b-blue); color: var(--b-white); }
.mk-chip:focus-visible { outline: none; box-shadow: var(--b-focus); }
.mk-chip.is-current { color: var(--b-white); background: var(--b-blue); border-color: var(--b-blue); }
.mk-chip.is-current .mk-chip__n { background: rgb(255 255 255 / .2); color: var(--b-white); }

/* ---------- En-tête : « Trouver mon parcours » (lien) + « S'inscrire » (bouton) ; sur mobile, « S'inscrire » à côté du menu ---------- */
.mk-b #masthead .site-header-item[data-section="kadence_customizer_header_button"] { display: flex; align-items: center; gap: 1.1rem; }
.mk-head-find { position: relative; font-family: var(--b-sans); font-size: .9375rem; font-weight: 500; color: var(--b-ink); text-decoration: none; white-space: nowrap; }
.mk-head-find::after { content: ""; position: absolute; left: 0; right: 0; bottom: -4px; height: 1.5px; background: var(--b-blue); transform: scaleX(0); transform-origin: right; transition: transform .35s var(--b-ease); }
.mk-head-find:hover { color: var(--b-blue); }
.mk-head-find:hover::after { transform: scaleX(1); transform-origin: left; }
.mk-head-find--popup { display: flex; align-items: center; justify-content: center; min-height: 52px; margin-bottom: .75rem; border: 1px solid var(--b-line); border-radius: 999px; }
.mk-head-find--popup::after { display: none; }
.mk-head-signup-m { margin-inline-end: .5rem; }
.mk-head-signup { display: inline-flex; align-items: center; justify-content: center; min-height: 40px; padding: 0 1rem; border-radius: 999px; background: var(--b-blue); color: var(--b-white); font-family: var(--b-sans); font-size: .875rem; font-weight: 500; text-decoration: none; white-space: nowrap; box-shadow: 0 8px 20px -12px color-mix(in srgb, var(--b-blue) 80%, transparent); }
.mk-head-signup:hover { color: var(--b-white); background: var(--b-blue-deep); }
@media (min-width: 1025px) { .mk-head-signup-m { display: none; } }
@media (max-width: 1280px) and (min-width: 1025px) { .mk-head-find { display: none; } } /* place réduite : le bouton seul */

/* Bouton clair (sur fond bleu) : blanc, texte bleu. */
.mk-b .mk-b-btn--light { color: var(--b-blue); background: var(--b-white); border-color: var(--b-white); box-shadow: 0 12px 28px -14px rgb(0 8 30 / .6); }
.mk-b .mk-b-btn--light:hover { color: var(--b-blue-deep); background: var(--b-glint); border-color: var(--b-glint); transform: translateY(-2px); }
.mk-b .mk-b-orient .mk-b-btn--light { color: var(--b-white); background: var(--b-blue); border-color: var(--b-blue); } /* carte blanche du questionnaire : le bouton reste plein */
.mk-b .mk-b-orient .mk-b-btn--light:hover { background: var(--b-blue-deep); border-color: var(--b-blue-deep); color: var(--b-white); }
