/* Polices auto-hébergées (woff2, Google Fonts, licence OFL, téléchargées le 18/10/2026). Titres et interface : Tenor Sans (une seule graisse). Texte : Spectral. */
@font-face{font-family:"Tenor Sans";font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/TenorSans-400.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Tenor Sans";font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/TenorSans-400-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Spectral";font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/Spectral-400.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Spectral";font-style:italic;font-weight:400;font-display:swap;src:url(../fonts/Spectral-400-italic.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Spectral";font-style:normal;font-weight:500;font-display:swap;src:url(../fonts/Spectral-500.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Spectral";font-style:normal;font-weight:600;font-display:swap;src:url(../fonts/Spectral-600.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
/* Repli à métriques proches : limite le saut de mise en page avant l'arrivée des polices */
@font-face{font-family:"Tenor Repli";src:local("Arial");size-adjust:104%;ascent-override:90%;descent-override:22%;line-gap-override:0%}
@font-face{font-family:"Spectral Repli";src:local("Georgia");size-adjust:96%;ascent-override:96%;descent-override:30%;line-gap-override:0%}

/*
Theme Name: Moray Running · mr-estran
Theme URI: https://moraymarathon.com/
Author: Moray Running
Description: Thème code pur de Moray Running : la foulée laisse son empreinte dans le sable mouillé de l'estran. Galets de verre de mer, rides d'impact, piste d'empreintes (DA-11).
Version: 3.0.0
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: mr-estran
*/

/* ---------- Jetons DA-11 (18/10) : sable froid, ardoise, verre de mer (grandes surfaces), bruyère (actions) ---------- */
:root{
  --sb-fond:#ECE9E2;          /* sable froid : fond de page */
  --sb-fond-2:#DFDBD1;        /* galet gris : bandes alternées, champs */
  --sb-encre:#2B3236;         /* ardoise de Spey : texte (10,7:1 sur sable) */
  --sb-accent:#7A4A7E;        /* bruyère : boutons (texte blanc 6,8:1), liens (5,6:1 sur sable) */
  --sb-accent-fonce:#613A65;  /* survol de la bruyère */
  --sb-accent-clair:#D8BEDA;  /* uniquement sur fond ardoise (7,6:1) */
  --sb-verre:#5FA595;         /* verre de mer : galets, bandes, pied — texte ardoise dessus seulement ≥ 18 px (4,5:1) */
  --sb-verre-pale:#A8D1C7;    /* verre de mer dépoli : texte ardoise à toute taille (7,8:1) */
  --sb-alerte:#7A4A7E;        /* bruyère : blessure, quand consulter */
  --sb-ok:#2F6157;            /* verre de mer profond : texte blanc 7,1:1 */
  --sb-carte:#F7F5F0;
  --sb-doux:#50595E;          /* texte secondaire : 5,9:1 sur sable, 5,2:1 sur galet */
  --sb-filet:#D3CFC5;
  --sb-surf:#E4E1D8;
  --sb-rayon:22px;
  --sb-rayon-petit:12px;
  --sb-rayon-grand:22px;
  --sb-ombre:0 8px 0 rgba(43,50,54,.10), 0 18px 30px -14px rgba(43,50,54,.38);
  --sb-ombre-forte:0 8px 0 rgba(43,50,54,.12), 0 26px 44px -18px rgba(43,50,54,.45);

  /* Variables des blocs figés (single-article, rail, footer…) */
  --sb-fonce:#2B3236;
  --sb-sur-fonce:#ECE9E2;
  --sb-fond-carte:#F7F5F0;
  --sb-conteneur:1376px;
  --sb-lecture:780px;
  --sb-rail:360px;
  --sb-gouttiere:56px;
  --sb-titre:'Tenor Sans','Tenor Repli',system-ui,-apple-system,'Segoe UI',sans-serif;
  --sb-texte:'Spectral','Spectral Repli',Georgia,'Times New Roman',serif;

  /* Fond « rides de sable » : très léger, jamais derrière un texte de lecture */
  --mr-rides:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='220' height='36' viewBox='0 0 220 36'%3E%3Cpath d='M0 9 C30 3 60 15 110 9 S190 3 220 9 M0 27 C30 21 60 33 110 27 S190 21 220 27' fill='none' stroke='%232B3236' stroke-opacity='.05' stroke-width='1.2'/%3E%3C/svg%3E");
  --mr-rides-forte:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='220' height='36' viewBox='0 0 220 36'%3E%3Cpath d='M0 9 C30 3 60 15 110 9 S190 3 220 9 M0 27 C30 21 60 33 110 27 S190 21 220 27' fill='none' stroke='%232B3236' stroke-opacity='.16' stroke-width='1.4'/%3E%3C/svg%3E");
  --mr-entete-h:72px;
  --mr-barre-h:0px;
}
@media (max-width:1080px){ :root{ --sb-gouttiere:20px; } }
@media (max-width:1180px){ :root{ --mr-barre-h:64px; } }
@media (max-width:760px){ :root{ --mr-entete-h:60px; } }

/* ---------- Base ---------- */
*,*::before,*::after{ box-sizing:border-box; }
html{ -webkit-text-size-adjust:100%; scroll-behavior:smooth; overflow-x:clip; }
body{
  margin:0; background:var(--sb-fond); color:var(--sb-encre);
  font-family:var(--sb-texte); font-size:1.1875rem; line-height:1.65; font-synthesis-weight:none;
  overflow-x:clip; -webkit-font-smoothing:antialiased; text-rendering:optimizeLegibility;
}
@media (max-width:760px){ body{ font-size:1.0625rem; } }
img,svg,video{ max-width:100%; }
img{ height:auto; display:block; }
a{ color:inherit; }
[hidden]{ display:none !important; }
h1,h2,h3,h4{ font-family:var(--sb-titre); color:var(--sb-encre); margin:0; }
p{ margin:0 0 1em; }
button,input,textarea,select{ font:inherit; color:inherit; }
:focus-visible{ outline:3px solid var(--sb-accent); outline-offset:3px; border-radius:4px; }
::selection{ background:var(--sb-accent); color:#fff; }
@media (prefers-reduced-motion:reduce){
  html{ scroll-behavior:auto; }
  *,*::before,*::after{ animation-duration:.001ms !important; animation-iteration-count:1 !important; transition-duration:.001ms !important; }
}

/*
 * BLOC FIGÉ — ARTICLE (thématique) — CSS
 * Origine : curieux-du-web.com, theme/style.css, règles `.cdw-article*` /
 * `.cdw-fil-ariane` / `.cdw-a-lire` / `.cdw-carte*` (renommées `.sbt-*` ici).
 * Couleurs/polices/espacements uniquement en `var(--sb-*, repli)` : un site neuf peut
 * utiliser ce fichier tel quel sans avoir encore défini ses propres variables.
 *
 * INTERDIT DE MODIFIER : voir single-article.php (un seul <article>, « à lire aussi »
 * en <div>). LIBRE DE MODIFIER : toutes les valeurs des var() ci-dessous.
 */

.sbt-conteneur{ max-width: var(--sb-conteneur, 1240px); margin-inline: auto; padding-inline: var(--sb-gouttiere, 24px); }

.sbt-fil-ariane{ font-size: .8125rem; color: var(--sb-doux, #55607a); display: flex; gap: 6px; flex-wrap: wrap; padding-block: 16px; }
.sbt-fil-ariane a{ color: var(--sb-doux, #55607a); text-decoration: none; }
.sbt-fil-ariane a:hover{ color: var(--sb-encre, #0f172a); }

.sbt-article-entete{ max-width: var(--sb-lecture, 720px); margin-inline: auto; padding-block: 8px 24px; }
.sbt-article-pastille{
	display: inline-block; background: var(--sb-surf, #f4f5fa); color: var(--sb-encre, #0f172a);
	font-family: var(--sb-titre, 'Manrope', system-ui, sans-serif); font-weight: 700; font-size: .75rem;
	text-transform: uppercase; letter-spacing: .04em; padding: 6px 12px; border-radius: 999px; margin-bottom: 16px;
	text-decoration: none;
}
.sbt-article-entete h1{ font-family: var(--sb-titre, 'Manrope', system-ui, sans-serif); line-height: 1.15; margin: 0; }
.sbt-article-chapo{ font-family: var(--sb-texte, 'Inter', system-ui, sans-serif); font-style: italic; font-size: clamp(1.0625rem,1rem + .3vw,1.3125rem); color: var(--sb-doux, #55607a); margin-top: 16px; }
.sbt-article-meta{ display: flex; align-items: center; gap: 16px; flex-wrap: wrap; margin-top: 20px; font-size: .875rem; color: var(--sb-doux, #55607a); }
.sbt-article-meta img{ width: 32px; height: 32px; border-radius: 50%; object-fit: cover; }
.sbt-article-meta-auteur{ color: inherit; font-weight: 600; text-decoration: none; }

.sbt-article-une{ max-width: var(--sb-conteneur, 1240px); margin: 28px auto 32px; padding-inline: var(--sb-gouttiere, 24px); }
.sbt-article-une-cadre{ aspect-ratio: 2.4 / 1; max-height: min(520px, 46vh); overflow: hidden; /* 01/10 : à 1440×900 le texte passait sous la ligne de flottaison (B-ART-09) */ border-radius: var(--sb-rayon, 14px); box-shadow: var(--sb-ombre, 0 8px 24px rgba(15,23,42,.08)); }
.sbt-article-une-cadre img{ width: 100%; height: 100%; object-fit: cover; }
@media (max-width: 640px){ .sbt-article-une-cadre{ aspect-ratio: auto; height: 220px; max-height: 220px; } }

/* Grille corps + rail — align-items:start obligatoire pour que le rail sticky
   (cf. partial-sidebar.css) tienne sur toute la hauteur du contenu. */
.sbt-article-mise-en-page{
	display: grid; grid-template-columns: minmax(0, var(--sb-lecture, 720px)) var(--sb-rail, 340px);
	column-gap: var(--sb-gouttiere, 24px); row-gap: var(--sb-gouttiere, 24px);
	max-width: var(--sb-conteneur, 1240px); margin-inline: auto;
	padding: 32px var(--sb-gouttiere, 24px) 64px; align-items: start; justify-content: center;
}
@media (max-width: 1080px){ .sbt-article-mise-en-page{ grid-template-columns: minmax(0,1fr); } .sbt-article-principal, .sbt-rail{ min-width: 0; } }
.sbt-article-mise-en-page--suite{ padding-top: 0; }

.sbt-article-corps{ font-size: 1.0625rem; line-height: 1.7; color: var(--sb-encre, #0f172a); font-family: var(--sb-texte, 'Inter', system-ui, sans-serif); }
.sbt-article-corps h2{ margin-top: 2.2em; font-family: var(--sb-titre, 'Manrope', system-ui, sans-serif); }
.sbt-article-corps h3{ margin-top: 1.8em; font-family: var(--sb-titre, 'Manrope', system-ui, sans-serif); }
.sbt-article-corps p{ margin-bottom: 1.3em; }
.sbt-article-corps img{ border-radius: var(--sb-rayon, 14px); margin-block: 1.6em; width: 100%; height: auto; }
.sbt-article-corps blockquote{
	margin: 1.8em 0; padding: 18px 24px; border-left: 4px solid var(--sb-accent, #2563eb);
	background: var(--sb-surf, #f4f5fa); border-radius: 8px; font-style: italic;
}

/* Sommaire replié en accordéon sur mobile uniquement (en desktop, il vit dans le rail —
   cf. partial-sidebar.php / partial-sommaire.php). */
.sbt-sommaire-mobile{ display: none; }
@media (max-width: 1080px){ .sbt-sommaire-mobile{ display: block; margin-bottom: 24px; } }
/* 01/10/2026 (baliturismo, juge visuel) : sous 1080px le rail passe SOUS l'article ; sa carte sommaire
   faisait doublon avec le sommaire mobile de tête (erreur n°6 « sommaire en double »). */
@media (max-width: 1080px){ .sbt-rail-carte--sommaire{ display: none; } }

/* « À lire aussi » (toujours un <div>, jamais un <article> — cf. single-article.php) */
.sbt-a-lire{ margin-top: 48px; padding-top: 32px; border-top: 1px solid var(--sb-filet, #e2e5ef); }
.sbt-kicker{ font-family: var(--sb-titre, 'Manrope', system-ui, sans-serif); font-size: .9375rem; font-weight: 700; margin-bottom: 12px; }
.sbt-grille{ display: grid; gap: var(--sb-gouttiere, 24px); }
.sbt-grille--3{ grid-template-columns: repeat(3, minmax(0,1fr)); }
@media (max-width: 760px){ .sbt-grille--3{ grid-template-columns: 1fr; } }
.sbt-carte{
	background: var(--sb-fond-carte, #ffffff); border: 1px solid var(--sb-filet, #e2e5ef);
	border-radius: var(--sb-rayon, 14px); overflow: hidden; box-shadow: var(--sb-ombre, 0 8px 24px rgba(15,23,42,.08));
	transition: transform .2s ease, box-shadow .2s ease;
}
.sbt-carte:hover{ transform: translateY(-4px); box-shadow: var(--sb-ombre-forte, 0 16px 40px rgba(15,23,42,.16)); }
.sbt-carte a{ display: block; color: inherit; text-decoration: none; }
.sbt-carte img{ width: 100%; aspect-ratio: 16/10; object-fit: cover; }
.sbt-carte-corps{ padding: 18px; }
.sbt-carte-corps h3{ margin: 0; font-size: 1.0625rem; font-family: var(--sb-titre, 'Manrope', system-ui, sans-serif); }

.sbt-article-commentaires{ margin-top: 32px; padding-top: 24px; border-top: 1px solid var(--sb-filet, #e2e5ef); }

/* 01/10 (accessoiriste.net) : un seul sommaire visible par largeur — la carte du rail se masque quand l'accordéon mobile s'affiche. */
@media (max-width: 1080px){ .sbt-rail-carte--sommaire{ display: none; } }
/* 05/10 (operations-digestives, juge visuel) : sous-titres collés au paragraphe suivant (marge basse 0 px mesurée) */
.sbt-article-corps h2{ margin-bottom: .6em; }
.sbt-article-corps h3{ margin-bottom: .45em; }

/*
 * BLOC FIGÉ — BARRE LATÉRALE D'ARTICLE (thématique) — CSS
 * Origine : curieux-du-web.com, theme/style.css, règles `.cdw-rail` / `.cdw-rail-carte`
 * (lignes ~854-861, renommées `.sbt-rail*` ici) — commentaire garde-fou d'origine
 * CONSERVÉ TEL QUEL ci-dessous (règle la plus importante de ce bloc).
 *
 * Inspiration secondaire documentée (pas copiée en entier) : amatauto.fr fait basculer
 * sa colonne latérale en bloc STATIQUE empilé sous le texte à partir de 1100px
 * (assets/css/v2.css, `.a2-art__cote { position: sticky; ... }` +
 * `@media (max-width: 1100px) { .a2-art__cote { position: static; } }`) — repris ici en
 * option mobile (media query 1080px, cohérente avec le point de rupture de
 * `.sbt-article-mise-en-page` dans single-article.css).
 */

/* Rail sticky — collé à la colonne de texte, séparation par un filet interne, jamais un
   gap blanc entre les deux colonnes. */
.sbt-rail{
	position: sticky; top: 96px; align-self: start;
	display: flex; flex-direction: column; gap: 20px;
	border-left: 1px solid var(--sb-filet, #e2e5ef); padding-left: 20px;
}
/* ⛔ GARDE-FOU (conservé tel quel depuis curieux-du-web.com, retour Mathias ×3) : jamais
   de overflow-y ni de max-height ici — la colonne reste collante et accompagne TOUTE la
   lecture de l'article jusqu'en bas, sans sa propre barre de défilement interne. */
.sbt-rail-carte{
	background: var(--sb-fond-carte, #ffffff); border: 1px solid var(--sb-filet, #e2e5ef);
	border-radius: var(--sb-rayon, 14px); padding: 18px;
}
.sbt-rail-carte .sbt-t4, .sbt-rail-carte h4{
	font-family: var(--sb-titre, 'Manrope', system-ui, sans-serif); font-size: .875rem;
	text-transform: uppercase; letter-spacing: .04em; color: var(--sb-doux, #55607a); margin: 0 0 10px;
}

/* Option mobile (inspirée d'amatauto.fr, cf. en-tête) : sous 1080px, la grille parente
   passe déjà en une colonne (cf. .sbt-article-mise-en-page dans single-article.css) — le
   rail redevient donc naturellement un bloc statique empilé sous le texte. */
@media (max-width: 1080px){
	.sbt-rail{ position: static; border-left: 0; padding-left: 0; border-top: 1px solid var(--sb-filet, #e2e5ef); padding-top: 20px; }
}

/* Sommaire tel qu'affiché dans le rail (cf. partial-sommaire.css pour le détail des
   classes `.sbt-sommaire*`) : pas de style supplémentaire ici, la carte du rail suffit. */

/*
 * BLOC FIGÉ — SOMMAIRE (thématique) — CSS
 * CSS volontairement simple (voir partial-sommaire.php : la robustesse de ce bloc est
 * dans le PHP — ids séquentiels, exclusion FAQ/Sources, seuil de 3 titres — pas dans son
 * habillage). Inspiré du rendu `<details>` natif de health-nutrition-cambrai.fr
 * (« Bien Vivre Santé »), classes renommées `.sbt-sommaire*`.
 */

.sbt-sommaire{
	background: var(--sb-fond-carte, #ffffff); border: 1px solid var(--sb-filet, #e2e5ef);
	border-left: 4px solid var(--sb-accent, #2563eb); border-radius: var(--sb-rayon, 14px);
	padding: 16px 20px;
}
.sbt-sommaire-titre{
	font-family: var(--sb-titre, 'Manrope', system-ui, sans-serif); font-weight: 700;
	font-size: .9375rem; cursor: pointer; list-style: none;
}
.sbt-sommaire-titre::-webkit-details-marker{ display: none; }
.sbt-sommaire ol{ list-style: none; margin: 14px 0 0; padding: 0; display: flex; flex-direction: column; gap: 8px; }
.sbt-sommaire li a{
	display: flex; align-items: baseline; gap: 10px; font-size: .9375rem;
	color: var(--sb-encre, #0f172a); text-decoration: none;
}
.sbt-sommaire li a:hover{ color: var(--sb-accent, #2563eb); text-decoration: underline; }
.sbt-sommaire-num{
	font-family: var(--sb-titre, 'Manrope', system-ui, sans-serif); font-weight: 700; font-size: .75rem;
	color: var(--sb-encre, #0f172a); background: var(--sb-surf, #f4f5fa); border-radius: 50%;
	width: 20px; height: 20px; flex-shrink: 0; display: flex; align-items: center; justify-content: center;
}

/*
 * BLOC FIGÉ — ENCADRÉS « LE SAVIEZ-VOUS » / « POINTS À RETENIR » (thématique) — CSS
 * Origine : amatauto.fr, assets/css/v2.css, règles `.amat-encadre--retenir` / `.a2-saviez`
 * (renommées `.sbt-encadre--retenir` / `.sbt-encadre--saviez` ici). Habillage simplifié
 * (gradients/decorations ::before retirés pour rester générique et léger), la structure
 * (grille icône + texte pour « le saviez-vous », liste à puces pour « points à retenir »)
 * est conservée.
 */

.sbt-encadre{ margin-block: 2em; border-radius: var(--sb-rayon-grand, 22px); }

.sbt-encadre-titre{
	margin: 0 0 12px; font-family: var(--sb-titre, 'Manrope', system-ui, sans-serif);
	font-weight: 700; font-size: .8125rem; text-transform: uppercase; letter-spacing: .08em;
}

/* « Points à retenir » — fond foncé, liste à puces check. */
.sbt-encadre--retenir{
	background: var(--sb-fonce, #141733); color: var(--sb-sur-fonce, #ffffff);
	padding: 28px 30px;
}
.sbt-encadre--retenir .sbt-encadre-titre{ color: var(--sb-accent-clair, #93c5fd); }
.sbt-retenir-liste{ list-style: none; margin: 0; padding: 0; display: grid; gap: 12px; }
.sbt-retenir-liste li{
	position: relative; padding-left: 32px; font-size: 1rem; line-height: 1.55;
}
.sbt-retenir-liste li::before{
	content: ""; position: absolute; left: 0; top: .15em; width: 20px; height: 20px; border-radius: 50%;
	background: var(--sb-accent, #2563eb)
		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' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E")
		center / 12px no-repeat;
}

/* « Le saviez-vous ? » — encadré clair, icône ampoule. */
.sbt-encadre--saviez{
	display: grid; grid-template-columns: 48px 1fr; gap: 16px; align-items: start;
	padding: 22px 24px; background: var(--sb-surf, #f4f5fa);
}
.sbt-encadre--saviez::before{
	content: "?"; grid-row: 1 / span 2; width: 48px; height: 48px; border-radius: 14px;
	background: var(--sb-accent, #2563eb); color: #fff; display: flex; align-items: center; justify-content: center;
	font-family: var(--sb-titre, 'Manrope', system-ui, sans-serif); font-weight: 700; font-size: 1.375rem;
}
.sbt-encadre--saviez .sbt-encadre-titre{ grid-column: 2; margin: 0; color: var(--sb-encre, #0f172a); }
.sbt-encadre--saviez p:not(.sbt-encadre-titre){ grid-column: 2; margin: 0; font-size: 1rem; line-height: 1.6; color: var(--sb-encre, #0f172a); }

@media (max-width: 620px){
	.sbt-encadre--saviez{ grid-template-columns: 1fr; }
	.sbt-encadre--saviez::before{ grid-row: 1; }
	.sbt-encadre--saviez .sbt-encadre-titre, .sbt-encadre--saviez p:not(.sbt-encadre-titre){ grid-column: 1; }
}
/* 04/10/2026 (invalidcast.com) : la règle de liste du corps d'article écrasait le retrait → la coche mangeait la 1re lettre. */
.sbt-article-corps .sbt-retenir-liste{ padding: 0; margin: 0; list-style: none; }
.sbt-article-corps .sbt-retenir-liste li{ padding-left: 34px; margin: 0; text-indent: 0; }

/*
 * BLOC FIGÉ — FAQ EN ACCORDÉON (thématique) — CSS
 * Visuel inspiré du rendu RÉEL de solutionminceur.fr, classes `.smr-faq*` récupérées par
 * un unique curl en lecture seule sur
 * `https://solutionminceur.fr/wp-content/themes/solutionminceur-v2/roxane.css`
 * (fichier CSS distant, absent du mirroir local du chantier — ce curl a RÉUSSI, voir
 * README). Classes renommées `.sbt-faq*` ici, variables de couleur remplacées par des
 * `var(--sb-*, repli)` génériques.
 *
 * Mécanisme accordéon (natif <details>/<summary>, sans JS) : cf. partial-faq.php, origine
 * health-nutrition-cambrai.fr.
 */

.sbt-faq{ margin: 56px 0; padding: 30px; border-radius: var(--sb-rayon-grand, 22px); background: var(--sb-surf, #f4f5fa); border: 1px solid var(--sb-filet, #e2e5ef); }
.sbt-faq-liste{ display: grid; gap: 10px; }
.sbt-faq-liste details{
	background: var(--sb-fond-carte, #ffffff); border: 1px solid var(--sb-filet, #e2e5ef) !important;
	border-radius: 14px; padding: 0 !important; transition: box-shadow .25s ease, border-color .25s ease;
}
.sbt-faq-liste details[open]{ box-shadow: var(--sb-ombre, 0 8px 24px rgba(15,23,42,.08)); border-color: var(--sb-accent, #2563eb) !important; }
.sbt-faq-liste summary{
	list-style: none; cursor: pointer; display: flex; justify-content: space-between; align-items: center;
	gap: 18px; padding: 18px 20px; font-size: 1.03rem; font-weight: 600; line-height: 1.45; color: var(--sb-encre, #0f172a);
}
.sbt-faq-liste summary::-webkit-details-marker{ display: none; }
.sbt-faq-liste summary::after{
	content: ""; width: 30px; height: 30px; flex: none; border-radius: 50%;
	background: var(--sb-surf, #f4f5fa) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232563eb' stroke-width='2.4' stroke-linecap='round'%3E%3Cpath d='M12 6v12M6 12h12'/%3E%3C/svg%3E") center / 15px no-repeat;
	transition: transform .3s ease;
}
.sbt-faq-liste details[open] summary::after{ transform: rotate(135deg); }
.sbt-faq-liste summary:hover{ color: var(--sb-accent, #2563eb); }
.sbt-faq-reponse{ padding: 0 20px 18px; font-size: .96875rem; line-height: 1.75; color: var(--sb-doux, #55607a); }
.sbt-faq-reponse p{ margin: 0 0 14px; }
.sbt-faq-reponse p:last-child{ margin-bottom: 0; }

@media (max-width: 760px){
	.sbt-faq{ padding: 20px; }
}

/*
 * BLOC FIGÉ — SIGNATURE / BOÎTE AUTEUR (thématique) — CSS
 * Visuel inspiré du rendu RÉEL de solutionminceur.fr, classes `.smr-auteur*` récupérées
 * par le même curl en lecture seule que partial-faq.css (roxane.css, voir README).
 * Classes renommées `.sbt-auteur*` ici, variables de couleur remplacées par des
 * `var(--sb-*, repli)` génériques.
 */

.sbt-auteur{
	display: grid; grid-template-columns: 120px 1fr; gap: 26px; margin: 54px 0 10px;
	padding: 30px; border-radius: var(--sb-rayon-grand, 22px);
	background: var(--sb-surf, #f4f5fa); border: 1px solid var(--sb-filet, #e2e5ef);
}
.sbt-auteur-photo img{
	width: 120px; height: 120px; border-radius: 50%; object-fit: cover;
	box-shadow: 0 0 0 5px var(--sb-fond-carte, #ffffff), var(--sb-ombre, 0 8px 24px rgba(15,23,42,.08));
}
.sbt-auteur-sur{ margin: 0 0 2px; font-size: .75rem; text-transform: uppercase; letter-spacing: .08em; color: var(--sb-doux, #55607a); }
.sbt-auteur-nom{ font-size: 1.5rem; margin: 0 0 4px; font-family: var(--sb-titre, 'Manrope', system-ui, sans-serif); }
.sbt-auteur-nom a{ color: var(--sb-encre, #0f172a); text-decoration: none; }
.sbt-auteur-nom a:hover{ text-decoration: underline; }
.sbt-auteur-role{ margin: 0 0 12px; font-size: .8125rem; font-weight: 600; color: var(--sb-accent, #2563eb); text-transform: uppercase; letter-spacing: .05em; }
.sbt-auteur-bio{ font-size: .96875rem; line-height: 1.7; color: var(--sb-encre, #0f172a); margin: 0 0 16px; }
.sbt-auteur-chiffres{ display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 16px; }
.sbt-auteur-chiffres span{ background: var(--sb-fond-carte, #ffffff); border-radius: 12px; padding: 8px 12px; font-size: .78125rem; color: var(--sb-doux, #55607a); }
.sbt-auteur-chiffres b{ color: var(--sb-encre, #0f172a); margin-right: 4px; }
.sbt-auteur-der{ margin-bottom: 18px; }
.sbt-auteur-der p{ margin: 0 0 6px; font-size: .75rem; text-transform: uppercase; letter-spacing: .06em; color: var(--sb-doux, #55607a); }
.sbt-auteur-der a{ display: block; font-size: .9375rem; font-weight: 500; padding: 6px 0; color: var(--sb-encre, #0f172a); text-decoration: none; border-bottom: 1px dashed var(--sb-filet, #e2e5ef); }
.sbt-auteur-der a:hover{ color: var(--sb-accent, #2563eb); }
.sbt-auteur-actions{ display: flex; flex-wrap: wrap; gap: 10px; }
.sbt-auteur-actions .sbt-btn{
	display: inline-block; padding: 10px 18px; border-radius: 999px; font-size: .875rem; font-weight: 600;
	text-decoration: none; background: var(--sb-accent, #2563eb); color: #fff;
}
.sbt-auteur-actions .sbt-btn--fantome{ background: transparent; border: 1.5px solid var(--sb-filet, #e2e5ef); color: var(--sb-encre, #0f172a); }

@media (max-width: 700px){
	.sbt-auteur{ grid-template-columns: 1fr; padding: 22px; }
	.sbt-auteur-photo img{ width: 88px; height: 88px; }
}

/*
 * BLOC FIGÉ — PIED DE PAGE (thématique) — CSS
 * Origine : curieux-du-web.com, theme/style.css, règles `.cdw-footer*` / `.cdw-cookies*` /
 * `.cdw-popup-sortie*` / `.cdw-btn*` (renommées `.sbt-footer*` / `.sbt-cookies*` /
 * `.sbt-popup-sortie*` / `.sbt-btn*` ici).
 */

.sbt-btn{
	display: inline-flex; align-items: center; justify-content: center; gap: 8px;
	padding: 13px 24px; border-radius: 999px; font-weight: 700; font-size: 1rem;
	background: var(--sb-accent, #2563eb); color: #fff; text-decoration: none; border: 0; cursor: pointer;
	transition: transform .2s ease, box-shadow .2s ease;
}
.sbt-btn:hover{ transform: translateY(-2px); box-shadow: var(--sb-ombre, 0 8px 24px rgba(15,23,42,.08)); }
.sbt-btn--petit{ padding: 10px 18px; font-size: .875rem; }
.sbt-btn--fantome{ background: transparent; border: 1.5px solid rgba(255,255,255,.5); color: inherit; }

.sbt-footer{ background: var(--sb-fonce, #141733); color: var(--sb-sur-fonce, #ffffff); padding-block: clamp(40px,6vw,64px) 24px; }
.sbt-footer a{ color: #c4c7e4; text-decoration: none; }
.sbt-footer a:hover{ color: #fff; }
.sbt-footer a.sbt-btn, .sbt-footer a.sbt-btn:hover{ color: #fff; } /* 10/10/2026 (blueau.fr) : « .sbt-footer a » battait la couleur du bouton (texte gris sur accent, 4,25:1) */

.sbt-footer-cta{
	display: flex; align-items: center; justify-content: space-between; gap: 24px; flex-wrap: wrap;
	padding: 24px 28px; margin-bottom: 32px; border-bottom: 1px solid rgba(255,255,255,.12);
}
@media (max-width: 600px){ .sbt-footer-cta{ padding: 20px; } } /* 04/10/2026 (invalidcast.com) : texte collé au bord dès qu'un thème donne un fond de carte au bandeau */
.sbt-footer-cta .sbt-t3{ color: #fff; margin: 0 0 4px; font-size: 1.25rem; }
.sbt-footer-cta p{ color: #a9acd0; margin: 0; max-width: 46ch; }

.sbt-footer-grille{ display: grid; grid-template-columns: 1.4fr repeat(3, 1fr); gap: 32px; padding-bottom: 32px; border-bottom: 1px solid rgba(255,255,255,.12); }
@media (max-width: 980px){ .sbt-footer-grille{ grid-template-columns: repeat(2,1fr); } }
@media (max-width: 560px){ .sbt-footer-grille{ grid-template-columns: 1fr; } }
.sbt-footer-colonne .sbt-t4{ font-family: var(--sb-titre, 'Manrope', system-ui, sans-serif); font-size: .8125rem; text-transform: uppercase; letter-spacing: .06em; color: #8b8fb5; margin: 0 0 14px; }
.sbt-footer-colonne ul{ list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 8px; }
.sbt-footer-colonne ul a{ font-size: .875rem; }
.sbt-footer-logo{ display: block; font-family: var(--sb-titre, 'Manrope', system-ui, sans-serif); font-weight: 700; font-size: 1.125rem; color: #fff; margin-bottom: 14px; }
.sbt-footer-desc{ color: #a9acd0; font-size: .9375rem; margin: 0; max-width: 32ch; }
.sbt-footer-contact{ display: flex; flex-direction: column; gap: 8px; font-size: .875rem; }

.sbt-footer-bas{ padding-top: 20px; font-size: .8125rem; color: #8b8fb5; }

/* Bandeau cookies — deux boutons de MÊME poids (même classe .sbt-btn/.sbt-btn--petit),
   jamais un seul « J'ai compris » qui vaudrait acceptation forcée. */
.sbt-cookies{
	position: fixed; left: 8px; right: 8px; bottom: 8px; z-index: 80;
	background: var(--sb-fonce, #141733); color: #fff; border-radius: 12px;
	padding: 10px 14px; display: none; align-items: center; gap: 12px;
	box-shadow: var(--sb-ombre-forte, 0 16px 40px rgba(15,23,42,.16)); max-height: 64px; overflow: hidden;
}
.sbt-cookies.est-visible{ display: flex; }
.sbt-cookies p{ margin: 0; flex: 1; min-width: 0; font-size: .75rem; line-height: 1.3; }
.sbt-cookies-actions{ display: flex; gap: 8px; flex-shrink: 0; }
.sbt-cookies .sbt-btn{ flex-shrink: 0; padding: 8px 14px; min-height: 32px; font-size: .8125rem; }

/* Popup de sortie — jamais de colonne image vide : si pas d'image, la boîte bascule sur
   une seule colonne (cf. .sbt-popup-sortie-boite--sans-image). */
.sbt-popup-sortie{ position: fixed; inset: 0; z-index: 90; display: none; align-items: center; justify-content: center; padding: 20px; }
.sbt-popup-sortie.est-ouvert{ display: flex; }
.sbt-popup-sortie-fond{ position: absolute; inset: 0; background: rgba(15,23,42,.7); }
.sbt-popup-sortie-boite{
	position: relative; z-index: 1; background: var(--sb-fond-carte, #ffffff); border-radius: var(--sb-rayon, 14px);
	max-width: 720px; width: 100%; display: grid; grid-template-columns: 1fr 1fr; overflow: hidden;
	box-shadow: var(--sb-ombre-forte, 0 16px 40px rgba(15,23,42,.16)); max-height: 90vh;
}
.sbt-popup-sortie-boite--sans-image{ grid-template-columns: 1fr; max-width: 480px; }
@media (max-width: 640px){ .sbt-popup-sortie-boite{ grid-template-columns: 1fr; max-height: 85vh; overflow-y: auto; } }
.sbt-popup-sortie-image{ min-height: 220px; }
.sbt-popup-sortie-image img{ width: 100%; height: 100%; object-fit: cover; }
.sbt-popup-sortie-texte{ padding: 28px; color: var(--sb-encre, #0f172a); }
.sbt-popup-sortie-fermer{
	position: absolute; top: 12px; right: 12px; z-index: 2; width: 40px; height: 40px; border-radius: 50%;
	background: var(--sb-fond-carte, #ffffff); border: 1px solid var(--sb-filet, #e2e5ef);
	display: flex; align-items: center; justify-content: center; cursor: pointer;
}
.sbt-popup-sortie-fermer svg{ width: 20px; height: 20px; }

/* =====================================================================
   Moray Running · mr-estran · app.css
   Motif unique : l'empreinte dans le sable mouillé (galet, rides d'impact, laisse de mer).
   Ordre : base · en-tête · boutons · galet · hero · outil · sections de l'accueil ·
           cartes · rubrique · article · pages · pied de page · infographies.
   ===================================================================== */

/* ---------- Utilitaires ---------- */
.mr-defs{ position:absolute; width:0; height:0; overflow:hidden; }
.mr-sr{ position:absolute !important; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap; }
.mr-hp{ position:absolute; left:-9999px; width:1px; height:1px; overflow:hidden; opacity:0; }
.mr-evitement{ position:absolute; left:12px; top:-70px; z-index:100; background:var(--sb-encre); color:var(--sb-fond); padding:12px 18px; border-radius:12px; font:600 .9375rem var(--sb-titre); transition:top .2s; }
.mr-evitement:focus{ top:12px; }
.mr-conteneur{ width:100%; max-width:1376px; margin-inline:auto; padding-inline:48px; }
.mr-conteneur--lecture{ max-width:960px; }
@media (min-width:1700px){ .mr-conteneur{ max-width:1616px; } }
@media (max-width:760px){ .mr-conteneur{ padding-inline:20px; } }
.mr-section{ position:relative; }
[id]{ scroll-margin-top:96px; }
main{ display:block; }

/* Bandes alternées : sable → galet → encre → photo → sable → galet */
.mr-bande{ padding-block:56px 72px; position:relative; }
.mr-bande--sable{ background:var(--sb-fond) var(--mr-rides); }
.mr-bande--galet{ background:var(--sb-fond-2); }
.mr-bande--encre{ background:var(--sb-encre); color:var(--sb-fond); }
@media (max-width:760px){ .mr-bande{ padding-block:44px 56px; } }

/* ---------- Typographie des sections ---------- */
.mr-surtitre{ font:600 .8125rem/1 var(--sb-titre); letter-spacing:.12em; text-transform:uppercase; color:var(--sb-accent); margin:0 0 14px; }
.mr-bande--galet .mr-surtitre, .mr-page-tete .mr-surtitre{ color:var(--sb-encre); }
.mr-surtitre--clair, .mr-surtitre--sable{ color:var(--sb-accent-clair) !important; }
.mr-bande h2, .mr-section h2{ font:400 clamp(1.875rem, .6rem + 2.3vw, 3.25rem)/1.08 var(--sb-titre); letter-spacing:-.01em; }
.mr-bande--encre h2, .mr-bande-photo h2{ color:#fff; }
h1 em, h2 em{ font-style:italic; font-weight:400; color:var(--sb-accent); }
.mr-bande--encre h2 em, .mr-bande-photo h2 em{ color:var(--sb-accent-clair); }
.mr-bande--galet h2 em{ color:var(--sb-accent); }
.mr-entete-section{ display:flex; justify-content:space-between; align-items:flex-end; gap:32px; margin-bottom:32px; }
.mr-entete-section__chapo{ max-width:440px; margin:0; font-size:1.125rem; line-height:1.55; color:var(--sb-encre); }
@media (max-width:900px){ .mr-entete-section{ flex-direction:column; align-items:flex-start; gap:14px; margin-bottom:24px; } }

.mr-lien-fleche{
  display:inline-flex; align-items:center; gap:10px; font:600 1rem/1.2 var(--sb-titre); color:var(--sb-encre);
  text-decoration:none; padding-bottom:4px; border-bottom:2px solid var(--sb-accent); transition:gap .2s, color .2s;
}
.mr-lien-fleche::after{
  content:""; width:18px; height:18px; background:currentColor; flex:none;
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 12h15M13 6l6 6-6 6'/%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' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 12h15M13 6l6 6-6 6'/%3E%3C/svg%3E") center/contain no-repeat;
}
.mr-lien-fleche:hover{ gap:14px; color:var(--sb-accent); }
.mr-lien-fleche--faux{ margin-top:6px; }

/* ---------- Boutons ---------- */
.mr-btn, .sbt-btn{
  display:inline-flex; align-items:center; justify-content:center; gap:8px; min-height:48px; padding:0 24px;
  border:0; border-radius:var(--sb-rayon-petit); background:var(--sb-accent); color:#fff;
  font:600 1rem/1 var(--sb-titre); text-decoration:none; cursor:pointer; white-space:nowrap;
  transition:transform .2s, box-shadow .2s, background .2s;
}
.mr-btn:hover, .sbt-btn:hover{ background:var(--sb-accent-fonce); transform:translateY(-2px); box-shadow:0 12px 22px -12px rgba(97,58,101,.7); }
.mr-btn:disabled{ opacity:.55; cursor:wait; transform:none; box-shadow:none; }
.mr-btn--ligne{ background:transparent; color:var(--sb-encre); box-shadow:inset 0 0 0 2px var(--sb-encre); }
.mr-btn--ligne:hover{ background:var(--sb-encre); color:var(--sb-fond); box-shadow:inset 0 0 0 2px var(--sb-encre); }
.mr-btn-sable{
  display:inline-flex; align-items:center; min-height:48px; padding:0 22px; background:#A8D1C7; color:var(--sb-encre);
  font:600 1rem/1 var(--sb-titre); text-decoration:none; border-radius:6px; transition:transform .2s, background .2s;
}
.mr-btn-sable:hover{ background:#fff; transform:translateY(-2px); }
.mr-galet-pastille{
  display:inline-flex; align-items:center; min-height:44px; padding:0 20px; background:var(--sb-fond-2); color:var(--sb-encre);
  border-radius:24px 30px 22px 28px / 28px 22px 30px 24px; font:500 .875rem/1 var(--sb-titre); text-decoration:none;
  transition:transform .2s, background .2s, box-shadow .2s;
}
.mr-galet-pastille:hover{ background:#fff; transform:translateY(-3px); }
.mr-galet-pastille.est-soulevee{ background:var(--sb-encre); color:var(--sb-fond); transform:translateY(-6px); box-shadow:var(--sb-ombre); }

/* ---------- En-tête collant ---------- */
.mr-entete{
  position:sticky; top:0; z-index:50; height:var(--mr-entete-h); background:rgba(236,233,226,.92);
  -webkit-backdrop-filter:blur(10px); backdrop-filter:blur(10px); transition:box-shadow .25s;
}
.mr-entete.est-defile{ box-shadow:0 10px 26px -16px rgba(43,50,54,.4); }
.mr-entete__in{ display:flex; align-items:center; gap:28px; height:100%; max-width:1376px; margin-inline:auto; padding-inline:48px; }
@media (min-width:1700px){ .mr-entete__in{ max-width:1616px; } }
.mr-logo{ display:flex; align-items:center; gap:12px; text-decoration:none; font:600 1.25rem/1 var(--sb-titre); color:var(--sb-encre); flex:none; }
.mr-logo__marque{ overflow:visible; flex:none; }
.mr-logo__galet{ fill:var(--sb-encre); }
.mr-logo__lettres{ fill:var(--sb-fond); font:600 17px var(--sb-titre); }
.mr-logo__anneau{ fill:none; stroke:var(--sb-accent); stroke-width:1.8; }
.mr-logo__anneau--b{ opacity:.55; }
.mr-logo:hover .mr-logo__anneau--a{ animation:mr-ride 700ms cubic-bezier(.2,.7,.2,1); transform-origin:41px 41px; }
.mr-nav{ flex:1; min-width:0; }
.mr-nav ul{ display:flex; justify-content:center; gap:4px 22px; list-style:none; margin:0; padding:0; }
.mr-nav a{ position:relative; display:block; padding:10px 2px; font:500 .9375rem/1 var(--sb-titre); text-decoration:none; white-space:nowrap; color:var(--sb-encre); }
.mr-nav a::after{ content:""; position:absolute; left:0; right:0; bottom:2px; height:2px; background:var(--sb-accent); transform:scaleX(0); transform-origin:left; transition:transform .25s; }
.mr-nav a:hover, .mr-nav a[aria-current]{ color:var(--sb-accent); }
.mr-nav a:hover::after, .mr-nav a[aria-current]::after{ transform:scaleX(1); }
@media (max-width:1180px){ .mr-nav{ display:none; } }
@media (max-width:760px){
  .mr-entete__in{ padding-inline:20px; gap:12px; }
  .mr-logo__nom{ font-size:1.0625rem; }
}
.mr-tiroir{ position:fixed; inset:var(--mr-entete-h) 0 0 0; z-index:45; background:var(--sb-fond); padding:20px 24px 40px; overflow:auto; }
.mr-tiroir ul{ list-style:none; margin:0 0 24px; padding:0; }
.mr-tiroir li a{ display:block; padding:14px 0; font:500 1.625rem/1.2 var(--sb-titre); text-decoration:none; border-bottom:1px solid var(--sb-filet); }
.mr-tiroir .mr-btn{ width:100%; }
.mr-tiroir__pages{ display:flex; gap:20px; margin:22px 0 0; font:500 1rem var(--sb-titre); }
html.mr-tiroir-ouvert{ overflow:hidden; }

/* Indicateur de lecture : la piste d'empreintes se remplit en grès (articles) */
.mr-lecture{ position:absolute; left:0; right:0; top:100%; height:0; pointer-events:none; }
.mr-lecture .mr-piste{ position:absolute; left:max(20px, calc((100vw - 1376px)/2 + 48px)); top:8px; padding:5px 12px; background:rgba(236,233,226,.94); border-radius:999px; box-shadow:0 6px 16px -8px rgba(43,50,54,.35); height:28px; align-items:center; }
.mr-lecture .mr-piste__pas{ color:#BDB8AC; transition:color .35s; }
.mr-lecture .mr-piste__pas.est-rempli{ color:var(--sb-accent); }
@media (max-width:760px){ .mr-lecture{ display:none; } }

/* ---------- Piste d'empreintes (signature) ---------- */
.mr-piste{ display:inline-flex; align-items:flex-end; gap:16px; height:18px; color:var(--sb-accent); }
.mr-piste__pas{ width:10px; height:18px; flex:none; }
.mr-piste__pas.est-gauche{ transform:translateY(-4px) rotate(-12deg); }
.mr-piste__pas.est-droit{ transform:translateY(3px) rotate(-12deg); }
.mr-piste-pied{ background:var(--sb-encre); padding:26px 0 0; text-align:center; color:var(--sb-accent-clair); }
.mr-piste-pied .mr-piste{ color:var(--sb-accent-clair); gap:30px; opacity:.85; }
.mr-empreinte{ width:12px; height:20px; display:block; }

/* ---------- Galet : photo découpée dans un contour organique ---------- */
.mr-galet{ display:block; position:relative; filter:drop-shadow(0 18px 20px rgba(43,50,54,.30)); transition:transform .4s cubic-bezier(.2,.7,.2,1); }
.mr-galet--long{ aspect-ratio:6/5; } .mr-galet--rond{ aspect-ratio:1/1; } .mr-galet--plat{ aspect-ratio:4/3; }
.mr-galet__forme{ position:absolute; inset:0; display:block; overflow:hidden; background:var(--sb-fond-2); }
.mr-galet--long .mr-galet__forme{ clip-path:url(#mr-galet-long); }
.mr-galet--rond .mr-galet__forme{ clip-path:url(#mr-galet-rond); }
.mr-galet--plat .mr-galet__forme{ clip-path:url(#mr-galet-plat); }
.mr-galet__forme img, .mr-galet__forme .mr-photo-vide{ width:100%; height:100%; object-fit:cover; display:block; transition:transform .6s cubic-bezier(.2,.7,.2,1); }
a:hover .mr-galet{ transform:translate(4px,-4px); }
a:hover .mr-galet__forme img{ transform:scale(1.04); }
.mr-photo-vide{
  display:block; min-height:100%; width:100%;
  background:var(--mr-rides-forte), linear-gradient(145deg,#D8D4CA 0%,#DFDBD1 55%,#CCC7BB 100%); background-size:220px 36px, cover;
}

/* Pastille « zone du corps » : bruyère = blessure, varech = le reste */
.mr-zone{
  display:inline-flex; align-items:center; justify-content:center; min-height:34px; padding:0 16px; border-radius:999px;
  font:600 .8125rem/1 var(--sb-titre); color:#fff; background:var(--sb-ok); white-space:nowrap;
  box-shadow:0 8px 16px -8px rgba(43,50,54,.55);
}
.mr-zone--alerte{ background:var(--sb-alerte); }
.mr-etiquette{ font:600 .75rem/1 var(--sb-titre); letter-spacing:.08em; text-transform:uppercase; color:var(--sb-accent); }
.mr-bande--galet .mr-etiquette{ color:var(--sb-encre); }

/* Rides d'impact : 3 anneaux fins qui s'ouvrent une fois au chargement */
.mr-rides{ position:absolute; pointer-events:none; fill:none; stroke:var(--sb-accent); stroke-width:1.5; overflow:visible; transform-origin:center; animation:mr-ride 900ms cubic-bezier(.2,.7,.2,1) both; }
.mr-rides circle:nth-child(1){ opacity:.6; } .mr-rides circle:nth-child(2){ opacity:.36; } .mr-rides circle:nth-child(3){ opacity:.16; }
@keyframes mr-ride{ from{ opacity:0; transform:scale(.55); } to{ opacity:1; transform:scale(1); } }

/* ---------- L'outil « Mon allure et mon plan » ---------- */
.mr-form-carte{ background:var(--sb-carte); border-radius:var(--sb-rayon); box-shadow:var(--sb-ombre); color:var(--sb-encre); position:relative; }
.mr-form-tete{ display:flex; align-items:center; gap:10px; padding:12px 18px 12px 16px; border-bottom:1px solid var(--sb-filet); min-height:56px; }
.mr-form-pastille{ width:32px; height:32px; border-radius:50%; background:var(--sb-accent); color:#fff; display:flex; align-items:center; justify-content:center; flex:none; }
.mr-form-pastille .mr-empreinte{ width:11px; height:18px; }
.mr-form-titre{ font:600 1rem/1.2 var(--sb-titre); }
.mr-pas{ display:flex; gap:7px; list-style:none; margin:0 0 0 auto; padding:0; }
.mr-pas li{ color:#BDB8AC; transition:color .3s; } .mr-pas li.est-fait{ color:var(--sb-accent); }
.mr-pas .mr-empreinte{ width:10px; height:17px; }
.mr-retour{ border:0; background:none; font:500 .875rem/1 var(--sb-titre); color:var(--sb-encre); text-decoration:underline; text-underline-offset:3px; min-height:44px; padding:0 4px; cursor:pointer; margin-left:2px; }
.mr-retour::before{ content:"‹ "; text-decoration:none; }
.mr-form-etapes{ padding:18px 20px 20px; }
.mr-form-etape{ display:none; flex-direction:column; gap:12px; }
.mr-form-etape.est-active{ display:flex; min-height:392px; animation:mr-etape .35s cubic-bezier(.2,.7,.2,1); }
@keyframes mr-etape{ from{ opacity:0; transform:translateX(10px); } to{ opacity:1; transform:none; } }
.mr-etape-titre{ font:600 1.0625rem/1.25 var(--sb-titre); margin:0; }
.mr-form-etape > .mr-btn{ margin-top:auto; width:100%; }

/* Tuiles : pastilles-galets cliquables */
.mr-tuiles{ flex:1; display:grid; grid-template-columns:1fr 1fr; gap:10px; }
.mr-tuile{
  display:flex; flex-direction:column; align-items:flex-start; justify-content:flex-end; gap:3px; min-height:64px; padding:14px 16px;
  background:var(--sb-fond-2); color:var(--sb-encre); border:2px solid transparent; cursor:pointer; text-align:left;
  border-radius:22px 30px 24px 32px / 28px 22px 30px 24px; transition:transform .2s, background .2s, border-color .2s;
}
.mr-tuile b{ font:600 1.375rem/1.1 var(--sb-titre); }
.mr-tuile small{ font:500 .8125rem/1.2 var(--sb-titre); opacity:.85; }
.mr-tuile:hover{ transform:translateY(-2px); border-color:var(--sb-accent); }
.mr-tuile[aria-pressed="true"]{ background:var(--sb-encre); color:var(--sb-fond); border-color:var(--sb-encre); }
.mr-tuile--puce{ min-height:44px; padding:0 16px; flex-direction:row; align-items:center; justify-content:center; font:500 .9375rem/1 var(--sb-titre); border-radius:18px 22px 17px 23px / 22px 17px 23px 18px; }
.mr-aide-ligne{ min-height:46px; display:flex; align-items:center; font:500 .875rem/1.3 var(--sb-titre); color:var(--sb-doux); }
.mr-aide-ligne .est-erreur, .mr-autre .est-erreur{ color:var(--sb-accent-fonce); }
.mr-autre{ display:flex; align-items:center; gap:12px; width:100%; }
.mr-autre span{ font:600 .875rem/1.2 var(--sb-titre); color:var(--sb-encre); flex:none; }
.mr-autre input{ flex:1; min-width:0; height:46px; border:2px solid var(--sb-filet); border-radius:12px; padding:0 14px; background:#F7F5F0; font:500 1.125rem var(--sb-titre); }
.mr-autre input:focus{ border-color:var(--sb-accent); outline:none; }
.mr-autre input[aria-invalid="true"]{ border-color:var(--sb-accent-fonce); }

/* Étape 2 : temps */
.mr-temps{ display:grid; grid-template-columns:repeat(3,1fr); gap:10px; }
.mr-temps label{ position:relative; display:block; }
.mr-temps input{
  width:100%; height:72px; border:2px solid var(--sb-filet); border-radius:14px; background:#F7F5F0; text-align:center;
  font:500 1.75rem/1 var(--sb-titre); font-feature-settings:"tnum"; padding:0 24px 0 6px;
}
.mr-temps input:focus{ border-color:var(--sb-accent); outline:none; background:#fff; }
.mr-temps input::placeholder, .mr-autre input::placeholder, .mr-mail input::placeholder, .mr-contact-form input::placeholder, .mr-contact-form textarea::placeholder{ color:#5A6368; opacity:1; }
.mr-temps span{ position:absolute; right:11px; bottom:9px; font:500 .8125rem/1 var(--sb-titre); color:var(--sb-doux); }
.mr-puces-zone{ flex:1; display:flex; flex-direction:column; gap:8px; }
.mr-puces-titre{ margin:0; font:600 .8125rem/1 var(--sb-titre); letter-spacing:.06em; text-transform:uppercase; color:var(--sb-doux); }
.mr-puces{ display:flex; flex-wrap:wrap; gap:8px; }
.mr-aide-simple{ font:400 italic 1rem/1.4 var(--sb-texte); color:var(--sb-doux); }
.mr-erreur{ margin:0; min-height:0; font:500 .8125rem/1.3 var(--sb-titre); color:var(--sb-accent-fonce); }
.mr-form-etape[data-mr-etape="2"] .mr-erreur{ min-height:20px; }

/* Étape 3 : résultat */
.mr-resultat{ display:flex; flex-direction:column; gap:8px; }
.mr-allure{ display:flex; align-items:baseline; gap:6px; margin:0; }
.mr-allure__val{ font:500 3.25rem/1 var(--sb-titre); font-feature-settings:"tnum"; letter-spacing:-.02em; color:var(--sb-encre); }
.mr-allure small{ font:500 1.25rem/1 var(--sb-titre); color:var(--sb-encre); }
.mr-vitesse{ margin-left:auto; font:500 1rem/1 var(--sb-titre); color:var(--sb-doux); }
.mr-vitesse b{ font-weight:600; color:var(--sb-encre); font-feature-settings:"tnum"; }
.mr-resume{ margin:0; font:500 .9375rem/1.3 var(--sb-titre); color:var(--sb-doux); }
.mr-passages{ width:100%; border-collapse:collapse; font:500 .875rem/1 var(--sb-titre); }
.mr-passages tr:nth-child(odd){ background:#ECE9E2; }
.mr-passages th{ text-align:left; font-weight:500; padding:0 10px; height:23px; color:var(--sb-encre); border-radius:8px 0 0 8px; }
.mr-passages td{ text-align:right; font-weight:600; padding:0 10px; font-feature-settings:"tnum"; border-radius:0 8px 8px 0; }
.mr-passages tr.est-arrivee th, .mr-passages tr.est-arrivee td{ font-weight:700; }
.mr-liens{ display:flex; flex-wrap:wrap; gap:4px 18px; margin:0; font:600 .875rem/1.3 var(--sb-titre); }
.mr-liens a{ color:var(--sb-accent); text-decoration:underline; text-underline-offset:3px; }
.mr-liens a::after{ content:" ›"; text-decoration:none; display:inline-block; }
.mr-liens a:hover{ color:var(--sb-accent-fonce); }
.mr-repere{ margin:0; font:400 italic .8125rem/1.35 var(--sb-texte); color:var(--sb-doux); }
.mr-mail{ display:flex; flex-direction:column; gap:8px; margin-top:8px; }
.mr-mail__champs{ display:grid; grid-template-columns:.8fr 1.2fr; gap:8px; }
.mr-mail input[type=text], .mr-mail input[type=email]{ width:100%; height:42px; border:2px solid var(--sb-filet); border-radius:12px; padding:0 12px; background:#F7F5F0; font:500 .9375rem var(--sb-titre); }
.mr-mail input:focus{ border-color:var(--sb-accent); outline:none; background:#fff; }
.mr-mail__bas{ display:flex; align-items:center; gap:10px; }
.mr-consent{ display:flex; align-items:flex-start; gap:8px; flex:1; min-width:0; font:400 .75rem/1.25 var(--sb-titre); color:var(--sb-encre); cursor:pointer; }
.mr-consent input{ width:18px; height:18px; flex:none; margin:1px 0 0; accent-color:var(--sb-accent); }
.mr-mail__bas .mr-btn{ min-height:44px; padding:0 16px; font-size:.9375rem; width:auto; margin:0; }
.mr-rgpd{ margin:0; font:400 .75rem/1.3 var(--sb-titre); color:var(--sb-doux); }
.mr-rgpd a{ text-decoration:underline; text-underline-offset:2px; }
.mr-envoye{ margin:auto 0; padding:22px 18px; border-radius:16px; background:#DCEDE8; color:var(--sb-encre); font:600 1.0625rem/1.4 var(--sb-titre); text-align:center; }

/* L'outil dans le rail des guides : version compacte */
.mr-outil--rail{ box-shadow:none; border:1px solid var(--sb-filet); }
.mr-outil--rail .mr-form-tete{ min-height:50px; padding:8px 14px; }
.mr-outil--rail .mr-pas{ display:none; }
.mr-outil--rail .mr-form-etapes{ padding:14px 16px 16px; }
.mr-outil--rail .mr-form-etape.est-active{ min-height:0; }
.mr-outil--rail .mr-tuiles{ flex:none; }
.mr-outil--rail .mr-tuile{ min-height:56px; padding:10px 12px; }
.mr-outil--rail .mr-tuile b{ font-size:1.125rem; }
.mr-outil--rail .mr-aide-ligne{ min-height:38px; }
.mr-outil--rail .mr-temps input{ height:58px; font-size:1.5rem; }
.mr-outil--rail .mr-puces-zone{ flex:none; }
.mr-outil--rail .mr-passages{ display:none; }
.mr-outil--rail .mr-allure__val{ font-size:2.75rem; }
.mr-outil--rail .mr-mail__bas{ flex-wrap:wrap; }
/* Colonne d'article : sommaire + outil tiennent ensemble dans 780 − 88 px (règle 27) */
.mr-outil--rail .mr-form-tete{ min-height:44px; padding:6px 14px; }
.mr-outil--rail .mr-tuile{ min-height:46px; padding:8px 12px; }
.mr-outil--rail .mr-aide-ligne{ min-height:0; }
.mr-outil--rail [data-mr-aide]{ display:none; }
.mr-outil__accroche{ margin:0; padding:12px 16px 0; font:500 .8125rem/1.4 var(--sb-titre); color:var(--sb-encre); }
.mr-outil__accroche a{ color:var(--sb-alerte); text-decoration:underline; text-underline-offset:2px; }

/* Mobile : titre + première étape + bouton tiennent dans 390×700 */
@media (max-width:760px){
  .mr-form-tete{ padding:8px 14px; min-height:48px; }
  .mr-form-etapes{ padding:12px 14px 14px; }
  .mr-form-etape.est-active{ min-height:0; gap:10px; }
  .mr-tuiles{ grid-template-columns:repeat(4,1fr); gap:6px; flex:none; }
  .mr-tuile{ min-height:62px; padding:10px 8px; border-radius:18px 22px 17px 23px / 22px 17px 23px 18px; align-items:center; justify-content:center; text-align:center; }
  .mr-tuile b{ font-size:.9375rem; } .mr-tuile small{ display:none; }
  .mr-aide-ligne{ min-height:30px; font-size:.8125rem; }
  .mr-temps input{ height:60px; font-size:1.5rem; }
  .mr-allure__val{ font-size:2.75rem; }
  .mr-passages th, .mr-passages td{ height:22px; }
  .mr-mail__bas{ flex-wrap:wrap; }
  .mr-mail__bas .mr-btn{ width:100%; }
}

/* ---------- S2 / S6 · Rails de cartes portrait ---------- */
.mr-rail-zone{ position:relative; padding-left:max(48px, calc((100vw - 1376px)/2 + 48px)); }
@media (min-width:1700px){ .mr-rail-zone{ padding-left:max(48px, calc((100vw - 1616px)/2 + 48px)); } }
.mr-rail{ display:flex; gap:22px; overflow-x:auto; scroll-snap-type:x proximity; padding:6px 140px 18px 0; scrollbar-width:none; -webkit-overflow-scrolling:touch; }
.mr-rail::-webkit-scrollbar{ display:none; }
.mr-rail__carte{ flex:0 0 216px; display:flex; flex-direction:column; text-decoration:none; scroll-snap-align:start; }
.mr-rail__photo{ position:relative; display:block; aspect-ratio:3/4; }
.mr-rail__photo .mr-galet{ position:absolute; inset:0; aspect-ratio:auto; }
.mr-rail__zone{ position:absolute; left:0; right:0; margin-inline:auto; width:max-content; max-width:calc(100% - 24px); bottom:12%; z-index:3; }
.mr-rail__titre{ font:500 1.3125rem/1.2 var(--sb-titre); margin-top:16px; display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:3; overflow:hidden; }
.mr-rail__ligne{ font:400 .9375rem/1.4 var(--sb-texte); color:var(--sb-doux); margin-top:6px; display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:1; overflow:hidden; }
.mr-bande--galet .mr-rail__ligne{ color:#3E474C; }
.mr-rail__carte--conseil .mr-rail__titre{ color:var(--sb-alerte); }
.mr-rail__carte:hover .mr-rail__titre{ text-decoration:underline; text-underline-offset:4px; text-decoration-color:var(--sb-accent); }
.mr-languette{
  position:absolute; right:max(14px, calc((100vw - 1376px)/2 + 6px)); top:112px; width:54px; height:76px; z-index:5; border:0; cursor:pointer;
  border-radius:16px 8px 8px 16px; background:#A8D1C7; color:var(--sb-encre); display:flex; align-items:center; justify-content:center;
  box-shadow:0 14px 24px -10px rgba(43,50,54,.5); transition:transform .2s;
}
.mr-languette:hover{ transform:translateX(-4px); }
.mr-languette.est-fin svg{ transform:rotate(180deg); }
@media (max-width:760px){
  .mr-rail-zone{ padding-left:20px; }
  .mr-rail{ gap:16px; padding-right:60px; }
  .mr-rail__carte{ flex-basis:200px; }
  .mr-languette{ display:none; }
}

/* ---------- S3 · Chiffres (bande encre) ---------- */
.mr-chiffres{ z-index:2; padding-block:64px 56px; }
.mr-chiffres__haut{ display:flex; justify-content:space-between; align-items:flex-start; gap:24px; }
.mr-chiffres__galet{ display:block; width:220px; flex:none; margin:-112px 24px 0 0; }
.mr-chiffres__galet .mr-galet{ width:100%; }
.mr-chiffres__liste{ list-style:none; margin:26px 0 0; padding:0; display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); }
.mr-chiffre{ padding:0 28px; border-left:1px solid rgba(236,233,226,.22); }
.mr-chiffre:first-child{ padding-left:0; border-left:0; }
.mr-chiffre__nombre{ margin:0; display:flex; align-items:baseline; gap:6px; flex-wrap:wrap; }
.mr-chiffre__val{ font:500 clamp(2.75rem, 2.2rem + 1.6vw, 4.5rem)/1 var(--sb-titre); font-feature-settings:"tnum"; letter-spacing:-.02em; color:var(--sb-accent-clair); font-style:normal; }
.mr-chiffre__unite{ font:500 1.25rem/1 var(--sb-titre); color:var(--sb-fond); }
.mr-chiffre__legende{ font:400 1.0625rem/1.45 var(--sb-texte); color:var(--sb-fond); margin:12px 0 10px; }
.mr-chiffre__source{ font:500 .8125rem/1.3 var(--sb-titre); color:rgba(236,233,226,.82); text-decoration:underline; text-underline-offset:3px; }
.mr-chiffre__source:hover{ color:#fff; }
@media (max-width:1099px){
  .mr-chiffres__liste{ grid-template-columns:repeat(2,minmax(0,1fr)); gap:28px 0; }
  .mr-chiffre:nth-child(odd){ padding-left:0; border-left:0; }
}
@media (max-width:760px){
  .mr-chiffres__galet{ width:132px; margin:-86px 0 0 0; }
  .mr-chiffres__liste{ grid-template-columns:1fr; gap:24px; }
  .mr-chiffre{ padding:0; border-left:0; border-top:1px solid rgba(236,233,226,.22); padding-top:20px; }
  .mr-chiffre:first-child{ border-top:0; padding-top:0; }
}

/* ---------- S4 · Bande photo « Votre plan, à votre allure » ---------- */
.mr-bande-photo{ position:relative; min-height:600px; padding-block:56px; background:var(--sb-encre); color:#fff; overflow:hidden; display:flex; align-items:center; }
.mr-bande-photo.est-sans-photo{ background:var(--sb-encre) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='220' height='36' viewBox='0 0 220 36'%3E%3Cpath d='M0 9 C30 3 60 15 110 9 S190 3 220 9 M0 27 C30 21 60 33 110 27 S190 21 220 27' fill='none' stroke='%23F3ECE0' stroke-opacity='.08' stroke-width='1.2'/%3E%3C/svg%3E"); }
.mr-bande-photo__img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.mr-bande-photo::before{ content:""; position:absolute; inset:0; z-index:1; background:linear-gradient(90deg, rgba(43,50,54,.86) 0%, rgba(43,50,54,.6) 46%, rgba(43,50,54,.14) 100%); }
.mr-bande-photo__in{ position:relative; z-index:2; display:grid; grid-template-columns:minmax(0,1fr) 400px; gap:48px; align-items:end; padding-block:0; }
.mr-bande-photo__texte h2{ font-size:clamp(2.25rem, 1rem + 3vw, 4rem); max-width:11em; }
.mr-boutons-sable{ display:flex; flex-wrap:wrap; gap:12px; margin-top:28px; }
.mr-passage-carte{ position:relative; background:#fff; color:var(--sb-encre); border-radius:var(--sb-rayon); padding:28px 28px 20px; box-shadow:var(--sb-ombre-forte); }
.mr-passage-carte__titre{ font:600 1rem/1.2 var(--sb-titre); margin:0 0 6px; max-width:60%; }
.mr-passage-carte__allure{ margin:0 0 14px; font:500 1rem var(--sb-titre); color:var(--sb-doux); }
.mr-passage-carte__allure b{ font:500 3rem/1 var(--sb-titre); color:var(--sb-encre); font-feature-settings:"tnum"; letter-spacing:-.02em; }
.mr-passage-carte__note{ margin:12px 0 0; font:400 italic .8125rem/1.35 var(--sb-texte); color:var(--sb-doux); }
.mr-passages--fixe th{ height:33px; font-size:.9375rem; } .mr-passages--fixe td{ font-size:1rem; }
.mr-sceau{
  position:absolute; top:-36px; right:-20px; width:112px; height:112px; border-radius:50%; background:var(--sb-accent); color:#fff;
  display:flex; align-items:center; justify-content:center; text-align:center; font:600 .8125rem/1.2 var(--sb-titre); text-decoration:none;
  transform:rotate(8deg); box-shadow:0 14px 24px -10px rgba(43,50,54,.6); transition:transform .25s;
}
.mr-sceau::after{ content:""; position:absolute; inset:5px; border-radius:50%; border:1.5px dashed rgba(255,255,255,.7); }
.mr-sceau:hover{ transform:rotate(0) scale(1.05); }
@media (max-width:1023px){
  .mr-bande-photo{ min-height:0; }
  .mr-bande-photo{ padding-block:48px 56px; }
  .mr-bande-photo__in{ grid-template-columns:1fr; gap:56px; padding-block:0; }
  .mr-bande-photo::before{ background:linear-gradient(180deg, rgba(43,50,54,.78), rgba(43,50,54,.6)); }
  .mr-passage-carte{ max-width:460px; }
}

/* ---------- S5 · Journal : titre souligné au-dessus de la photo ---------- */
.mr-journal__colonnes{ display:grid; gap:48px; }
.mr-journal__colonnes--3{ grid-template-columns:repeat(3,minmax(0,1fr)); }
.mr-journal__colonnes--2{ grid-template-columns:repeat(2,minmax(0,1fr)); }
.mr-journal__rubrique{ font:500 1.25rem/1.2 var(--sb-titre); padding-bottom:10px; margin-bottom:20px; border-bottom:3px solid var(--sb-accent); }
.mr-journal__rubrique a{ text-decoration:none; }
.mr-journal__lien{ display:block; text-decoration:none; }
.mr-carte__photo{ display:block; position:relative; }
.mr-carte__photo .mr-galet{ width:100%; }
.mr-carte__zone{ position:absolute; left:0; right:0; margin-inline:auto; width:max-content; max-width:calc(100% - 24px); bottom:12%; z-index:3; }
.mr-journal__lien .mr-galet--plat{ aspect-ratio:5/3; }
.mr-journal__titre{ display:block; margin-top:18px; font:500 1.3125rem/1.25 var(--sb-titre); }
.mr-journal__lien:hover .mr-journal__titre{ text-decoration:underline; text-decoration-color:var(--sb-accent); text-underline-offset:4px; }
.mr-journal__texte{ display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:3; overflow:hidden; margin-top:8px; font:400 1rem/1.5 var(--sb-texte); color:var(--sb-doux); }
@media (max-width:900px){ .mr-journal__colonnes--3, .mr-journal__colonnes--2{ grid-template-columns:1fr; gap:40px; } }

/* ---------- S7 · Actualité ---------- */
.mr-actu__grille{ display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:48px; align-items:start; }
.mr-actu__grille.est-seul{ grid-template-columns:minmax(0,640px); }
.mr-actu__grand a{ display:block; text-decoration:none; }
.mr-actu__photo{ display:block; }
.mr-actu__photo .mr-galet{ aspect-ratio:5/2; width:100%; }
.mr-date{ display:block; font:600 .8125rem/1 var(--sb-titre); color:var(--sb-accent); letter-spacing:.02em; }
.mr-bande--galet .mr-date{ color:#613A65; }
.mr-actu__grand .mr-date{ margin-top:22px; }
.mr-actu__grand h3{ font:500 clamp(1.375rem, 1rem + .8vw, 1.625rem)/1.2 var(--sb-titre); margin:10px 0 8px; }
.mr-actu__grand a:hover h3{ text-decoration:underline; text-decoration-color:var(--sb-accent); text-underline-offset:4px; }
.mr-actu__resume{ display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:2; overflow:hidden; font:400 1.0625rem/1.5 var(--sb-texte); color:var(--sb-doux); }
.mr-actu__breves{ list-style:none; margin:0; padding:0; display:flex; flex-direction:column; }
.mr-actu__breves li{ border-top:1px solid var(--sb-filet); }
.mr-actu__breves li:first-child{ border-top:0; }
.mr-actu__breves a{ display:flex; gap:20px; align-items:center; padding:12px 0; text-decoration:none; }
.mr-actu__vignette{ flex:none; width:80px; }
.mr-actu__vignette .mr-galet{ width:80px; filter:drop-shadow(0 8px 10px rgba(43,50,54,.25)); }
.mr-actu__texte{ display:flex; flex-direction:column; gap:8px; min-width:0; }
.mr-actu__titre{ font:500 1.0625rem/1.3 var(--sb-titre); }
.mr-actu__breves a:hover .mr-actu__titre{ text-decoration:underline; text-decoration-color:var(--sb-accent); text-underline-offset:3px; }
@media (max-width:900px){ .mr-actu__grille{ grid-template-columns:1fr; gap:32px; } }

/* ---------- S8 · La rédaction ---------- */
.mr-redaction__grille{ display:grid; grid-template-columns:minmax(0,420px) minmax(0,1fr); gap:72px; align-items:center; }
.mr-redaction__photo .mr-galet{ width:100%; }
.mr-redaction__texte h2{ margin-bottom:18px; max-width:15em; }
.mr-redaction__phrase{ font:400 1.1875rem/1.55 var(--sb-texte); max-width:56ch; margin:0 0 14px; }
.mr-redaction__texte .mr-btn{ margin-top:10px; }
@media (max-width:900px){ .mr-redaction__grille{ grid-template-columns:1fr; gap:36px; } .mr-redaction__photo{ max-width:340px; } }

/* ---------- Cartes de guide (rubrique, auteur, « À lire aussi ») ---------- */
.mr-carte{ background:#fff; border-radius:var(--sb-rayon); box-shadow:0 14px 30px -20px rgba(43,50,54,.5); transition:transform .25s, box-shadow .25s; }
.mr-carte:hover{ transform:translateY(-4px); box-shadow:0 22px 38px -20px rgba(43,50,54,.55); }
.mr-carte__lien{ display:flex; flex-direction:column; height:100%; padding:14px 14px 22px; text-decoration:none; }
.mr-carte__corps{ display:flex; flex-direction:column; gap:8px; padding:18px 10px 0; }
.mr-carte__titre{ font:500 1.3125rem/1.25 var(--sb-titre); }
.mr-carte__resume{ display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:3; overflow:hidden; font:400 1rem/1.5 var(--sb-texte); color:var(--sb-doux); }
.mr-carte__date{ font:600 .8125rem/1 var(--sb-titre); color:var(--sb-accent); }
.mr-carte__lien:hover .mr-carte__titre{ text-decoration:underline; text-decoration-color:var(--sb-accent); text-underline-offset:4px; }
.mr-carte.est-cachee{ display:none; }
.mr-grille{ display:grid; gap:28px; grid-template-columns:repeat(3,minmax(0,1fr)); }
.mr-grille--1{ grid-template-columns:minmax(0,520px); } .mr-grille--2{ grid-template-columns:repeat(2,minmax(0,1fr)); }
@media (max-width:900px){ .mr-grille, .mr-grille--2{ grid-template-columns:1fr; } }

/* Grille de rubrique : jamais trouée (reste de 1 → carte large, reste de 2 → deux demi-largeurs) */
.mr-grille-rub{ display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:28px; }
.mr-grille-rub > .mr-carte{ grid-column:span 2; }
.mr-grille-rub > .mr-carte:nth-child(3n+1):last-child{ grid-column:span 6; }
.mr-grille-rub > .mr-carte:nth-child(3n+1):last-child .mr-carte__lien{ flex-direction:row; align-items:center; gap:36px; padding:18px 36px 18px 18px; }
.mr-grille-rub > .mr-carte:nth-child(3n+1):last-child .mr-carte__photo{ flex:0 0 38%; }
.mr-grille-rub > .mr-carte:nth-child(3n+1):last-child .mr-carte__corps{ padding:0; flex:1; }
.mr-grille-rub > .mr-carte:nth-child(3n+1):nth-last-child(2), .mr-grille-rub > .mr-carte:nth-child(3n+2):last-child{ grid-column:span 3; }
@media (max-width:1000px){
  .mr-grille-rub{ grid-template-columns:repeat(2,minmax(0,1fr)); }
  .mr-grille-rub > .mr-carte, .mr-grille-rub > .mr-carte:nth-child(3n+1):nth-last-child(2), .mr-grille-rub > .mr-carte:nth-child(3n+2):last-child, .mr-grille-rub > .mr-carte:nth-child(3n+1):last-child{ grid-column:span 1; }
  .mr-grille-rub > .mr-carte:nth-child(3n+1):last-child .mr-carte__lien{ flex-direction:column; align-items:stretch; padding:14px 14px 22px; gap:0; }
  .mr-grille-rub > .mr-carte:nth-child(3n+1):last-child .mr-carte__photo{ flex:none; }
  .mr-grille-rub > .mr-carte:nth-child(3n+1):last-child .mr-carte__corps{ padding:18px 10px 0; }
  .mr-grille-rub > .mr-carte:last-child:nth-child(odd){ grid-column:span 2; }
}
@media (max-width:640px){ .mr-grille-rub{ grid-template-columns:1fr; } .mr-grille-rub > .mr-carte:last-child:nth-child(odd){ grid-column:span 1; } }
.mr-plus{ text-align:center; margin:40px 0 0; }
.mr-vide{ font-size:1.125rem; }

/* ---------- Rubrique : rangée de galets, rubrique soulevée ---------- */
.mr-rub-tete{ background:var(--sb-fond) var(--mr-rides); padding:36px 0 52px; overflow-x:clip; }
.mr-galets-nav ul{ display:flex; flex-wrap:wrap; gap:12px; list-style:none; margin:0 0 36px; padding:0; }
.mr-rub-tete__grille{ display:grid; grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr); gap:56px; align-items:center; }
.mr-rub-tete h1{ font:400 clamp(2.25rem, 1.3rem + 2.6vw, 4rem)/1.05 var(--sb-titre); letter-spacing:-.015em; }
.mr-rub-tete__chapo{ font:400 italic 1.375rem/1.5 var(--sb-texte); margin:16px 0 14px; max-width:34em; }
.mr-rub-tete__nombre{ margin:0; font:500 .9375rem var(--sb-titre); color:var(--sb-doux); }
.mr-rub-tete__nombre b{ color:var(--sb-encre); }
.mr-rub-tete__photo{ position:relative; width:min(100%,400px); margin-left:auto; }
.mr-rub-tete__photo .mr-galet{ width:100%; }
.mr-rides--rub{ width:560px; height:560px; left:-190px; top:calc(55% - 280px); z-index:2; }
@media (max-width:900px){
  .mr-rub-tete{ padding-bottom:40px; }
  .mr-rub-tete__grille{ grid-template-columns:1fr; gap:30px; }
  .mr-rub-tete__photo{ margin:0 auto; width:min(100%,300px); }
  .mr-rides--rub{ width:380px; height:380px; left:-110px; top:calc(55% - 190px); }
  .mr-galets-nav ul{ flex-wrap:nowrap; overflow-x:auto; padding:8px 20px 14px; margin-inline:-20px; scrollbar-width:none; }
  .mr-galets-nav li{ flex:none; }
}
.mr-rub-liste{ padding:12px 0 88px; }
.mr-une{ margin-bottom:36px; background:#fff; border-radius:var(--sb-rayon); box-shadow:var(--sb-ombre); }
.mr-une__lien{ display:grid; grid-template-columns:minmax(0,1.1fr) minmax(0,1fr); gap:52px; align-items:center; padding:28px; text-decoration:none; }
.mr-une__photo{ position:relative; display:block; height:clamp(380px, calc(100vh - 300px), 500px); }
.mr-une__photo .mr-galet{ position:absolute; inset:0; aspect-ratio:auto; }
.mr-une__corps{ display:flex; flex-direction:column; align-items:flex-start; gap:12px; padding-right:16px; }
.mr-une__titre{ font:500 clamp(1.625rem, 1.1rem + 1.4vw, 2.25rem)/1.15 var(--sb-titre); }
.mr-une__resume{ display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:4; overflow:hidden; font:400 1.125rem/1.55 var(--sb-texte); color:var(--sb-doux); }
.mr-une__lien:hover .mr-une__titre{ text-decoration:underline; text-decoration-color:var(--sb-accent); text-underline-offset:5px; }
@media (max-width:900px){ .mr-une__lien{ grid-template-columns:1fr; gap:36px; padding:16px 16px 26px; } .mr-une__photo{ height:260px; } .mr-une__corps{ padding:0 8px; } }

/* ---------- Article : en-tête « laisse de mer » ---------- */
.mr-aentete{ position:relative; background:var(--sb-fond-2); padding:10px 0 64px; }
@media (min-width:761px){ .mr-aentete{ padding-top:36px; } } /* la piste de lecture (28 px sous le menu) ne couvre plus le fil d'Ariane */
.mr-aentete__grille{ display:grid; grid-template-columns:minmax(0,7fr) minmax(0,5fr); gap:56px; align-items:start; }
.mr-aentete__texte{ position:relative; z-index:2; min-width:0; }
.mr-aentete .sbt-fil-ariane{ padding-block:18px 10px; }
.mr-aentete .sbt-fil-ariane, .mr-aentete .sbt-fil-ariane a{ color:var(--sb-doux); }
.mr-aentete .sbt-article-pastille{ background:#fff; color:var(--sb-encre); font:600 .8125rem/1 var(--sb-titre); letter-spacing:.06em; text-transform:none; padding:9px 16px; margin-bottom:18px; box-shadow:0 8px 16px -10px rgba(43,50,54,.5); }
.mr-aentete h1{ font:500 clamp(2rem, 1.2rem + 2.2vw, 3.5rem)/1.1 var(--sb-titre); letter-spacing:-.01em; max-width:17em; }
.mr-aentete .sbt-article-chapo{ font:400 italic clamp(1.125rem, 1rem + .45vw, 1.375rem)/1.5 var(--sb-texte); color:var(--sb-encre); margin-top:18px; max-width:36em; }
.mr-aentete .sbt-article-meta{ margin-top:22px; font:500 .9375rem/1.3 var(--sb-titre); color:var(--sb-doux); gap:8px 12px; }
.mr-aentete .sbt-article-meta img{ width:40px; height:40px; border-radius:50%; object-fit:cover; flex:none; }
.mr-aentete .sbt-article-meta-auteur{ color:var(--sb-encre); }
.mr-aentete__photo{ position:relative; width:min(100%,400px); margin-left:auto; }
.mr-aentete__photo .mr-galet{ width:100%; position:relative; z-index:1; }
.mr-aentete__zone{ position:absolute; left:0; right:0; margin-inline:auto; width:max-content; max-width:calc(100% - 24px); bottom:11%; z-index:3; }
.mr-rides--article{ width:640px; height:640px; left:-300px; top:calc(55% - 320px); z-index:0; }
.mr-laisse{ position:absolute; left:0; bottom:-1px; width:100%; height:16px; display:block; }
.mr-laisse__fond{ fill:var(--sb-fond); }
.mr-laisse__trait{ fill:none; stroke:rgba(43,50,54,.28); stroke-width:1.6; vector-effect:non-scaling-stroke; }
@media (max-width:900px){
  .mr-aentete{ padding-bottom:48px; }
  .mr-aentete__grille{ grid-template-columns:1fr; gap:26px; }
  .mr-aentete__photo{ width:100%; margin:0; order:2; }
  .mr-aentete__photo .mr-galet{ aspect-ratio:auto; height:220px; }
  .mr-rides--article{ width:360px; height:360px; left:-90px; top:-70px; }
  .mr-aentete__zone{ bottom:10%; }
}

/* Corps d'article : panneau de lecture blanc sur sable, rail collant proche */
.sbt-article-mise-en-page{ column-gap:56px; padding-top:44px; justify-content:center; }
.sbt-article-principal{ background:#fff; border-radius:var(--sb-rayon); box-shadow:0 20px 40px -26px rgba(43,50,54,.5); padding:clamp(22px, 4.2vw, 60px); min-width:0; }
.sbt-rail{ top:88px; border-left:0; padding-left:0; gap:18px; }
.sbt-rail-carte{ background:#fff; border:1px solid var(--sb-filet); border-radius:var(--sb-rayon); padding:16px 18px; box-shadow:0 14px 28px -22px rgba(43,50,54,.5); }
.sbt-rail .sbt-sommaire{ border:0; border-left:0; background:transparent; padding:0; }
.sbt-rail-carte--sommaire{ padding:16px 18px; }
.sbt-rail .sbt-sommaire ol{ gap:6px; margin-top:10px; }
.sbt-rail .sbt-sommaire li a{ font:500 .875rem/1.3 var(--sb-titre); align-items:flex-start; }
.sbt-rail .sbt-sommaire-libelle{ display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:2; overflow:hidden; }
.sbt-sommaire{ border-left:4px solid var(--sb-accent); border-radius:var(--sb-rayon-petit); background:var(--sb-surf); }
.sbt-sommaire-num{ background:var(--sb-encre); color:var(--sb-fond); font-family:var(--sb-titre); }
.sbt-sommaire-titre{ font-family:var(--sb-titre); }
.sbt-sommaire li a:hover{ color:var(--sb-accent); }
.sbt-rail .sbt-t4, .sbt-rail-carte .sbt-t4{ font:600 .8125rem/1.2 var(--sb-titre); letter-spacing:.08em; text-transform:uppercase; color:var(--sb-doux); margin:0 0 10px; }
.mr-rail-consulter__titre{ font:500 1.1875rem/1.25 var(--sb-titre); margin:0 0 8px; color:var(--sb-alerte); }
.mr-rail-consulter__txt{ font:400 .9375rem/1.5 var(--sb-texte); color:var(--sb-doux); margin:0 0 14px; }
.mr-rail-consulter .mr-btn, .mr-rail-allure .mr-btn{ width:100%; min-height:46px; }
.mr-rail-consulter{ border-top:4px solid var(--sb-alerte); } .mr-rail-allure{ border-top:4px solid var(--sb-accent); }

.sbt-article-corps, .mr-prose{ font:400 1.1875rem/1.7 var(--sb-texte); color:var(--sb-encre); }
@media (max-width:760px){ .sbt-article-corps, .mr-prose{ font-size:1.0625rem; } }
.sbt-article-corps h2, .mr-prose h2{ font:600 clamp(1.5rem, 1.2rem + 1vw, 1.875rem)/1.2 var(--sb-titre); letter-spacing:-.005em; margin:2.1em 0 .6em; }
.sbt-article-corps h2:first-child, .mr-prose h2:first-child{ margin-top:0; }
.sbt-article-corps h3, .mr-prose h3{ font:600 1.3125rem/1.3 var(--sb-titre); margin:1.7em 0 .45em; }
.sbt-article-corps p, .mr-prose p{ margin:0 0 1.25em; }
.sbt-article-corps a, .mr-prose a{ color:var(--sb-accent); text-decoration:underline; text-decoration-thickness:1.5px; text-underline-offset:3px; }
.sbt-article-corps a:hover, .mr-prose a:hover{ color:var(--sb-accent-fonce); }
.sbt-article-corps strong, .mr-prose strong{ font-weight:600; }
.sbt-article-corps :is(p, figure) > img, .mr-prose :is(p, figure) > img{ width:100%; aspect-ratio:3/2; max-height:460px; object-fit:cover; border-radius:16px; margin-block:1.6em; }
.sbt-article-corps figure{ margin:1.6em 0; } .sbt-article-corps figcaption{ font:400 italic .875rem/1.4 var(--sb-texte); color:var(--sb-doux); margin-top:8px; }
.sbt-article-corps blockquote, .mr-prose blockquote{ margin:1.8em 0; padding:18px 24px; border-left:4px solid var(--sb-accent); background:var(--sb-surf); border-radius:0 var(--sb-rayon-petit) var(--sb-rayon-petit) 0; font-style:italic; }
.sbt-article-corps blockquote p:last-child{ margin:0; }
/* Listes en repères (jamais de puces brutes) */
.sbt-article-corps ul:not(.sbt-retenir-liste), .mr-prose ul{ list-style:none; padding:0; margin:0 0 1.4em; }
.sbt-article-corps ul:not(.sbt-retenir-liste) > li, .mr-prose ul > li{ position:relative; padding-left:30px; margin:.55em 0; }
.sbt-article-corps ul:not(.sbt-retenir-liste) > li::before, .mr-prose ul > li::before{
  content:""; position:absolute; left:3px; top:.58em; width:12px; height:15px; background:var(--sb-accent);
  border-radius:55% 45% 50% 50% / 60% 55% 45% 40%; transform:rotate(18deg);
}
.sbt-article-corps ol, .mr-prose ol{ list-style:none; counter-reset:mr-ol; padding:0; margin:0 0 1.4em; }
.sbt-article-corps ol > li, .mr-prose ol > li{ counter-increment:mr-ol; position:relative; padding-left:42px; margin:.7em 0; }
.sbt-article-corps ol > li::before, .mr-prose ol > li::before{
  content:counter(mr-ol); position:absolute; left:0; top:.1em; width:28px; height:28px; border-radius:50%; background:var(--sb-encre); color:var(--sb-fond);
  font:600 .8125rem/28px var(--sb-titre); text-align:center;
}
/* Tableaux : défilants, en-tête lisible */
.sbs_tableau{ overflow-x:auto; margin:1.8em 0; border:1px solid var(--sb-filet); border-radius:14px; -webkit-overflow-scrolling:touch; }
.sbt-article-corps table, .mr-prose table{ width:100%; min-width:520px; border-collapse:collapse; font:500 .9375rem/1.45 var(--sb-titre); }
.sbt-article-corps th, .mr-prose th{ background:var(--sb-encre); color:var(--sb-fond); text-align:left; font-weight:600; padding:12px 14px; white-space:nowrap; }
.sbt-article-corps td, .mr-prose td{ padding:11px 14px; border-top:1px solid var(--sb-filet); vertical-align:top; }
.sbt-article-corps tbody tr:nth-child(even) td{ background:#F2F0EA; }
/* Sources : encadré numéroté discret, en fin d'article */
.sbt-article-corps aside.sb-sources{ margin:2.6em 0 0; padding:22px 26px; background:var(--sb-surf); border-radius:16px; font:400 .9375rem/1.5 var(--sb-texte); color:var(--sb-doux); }
.sbt-article-corps aside.sb-sources h2{ font:600 .8125rem/1.2 var(--sb-titre); letter-spacing:.1em; text-transform:uppercase; color:var(--sb-encre); margin:0 0 12px; }
.sbt-article-corps aside.sb-sources ul{ counter-reset:mr-src; margin:0; }
.sbt-article-corps aside.sb-sources li{ counter-increment:mr-src; padding-left:34px; margin:.6em 0; }
.sbt-article-corps aside.sb-sources li::before{ content:counter(mr-src); left:0; top:.05em; width:22px; height:22px; border-radius:50%; background:var(--sb-encre); color:var(--sb-fond); font:600 .75rem/22px var(--sb-titre); text-align:center; transform:none; }
.sbt-article-corps aside.sb-sources a{ color:var(--sb-encre); }
.sbt-article-corps > p:first-child{ font:400 italic 1.3125rem/1.55 var(--sb-texte); }
.sbt-article-corps h2[id]{ scroll-margin-top:104px; }

/* Encadrés figés, habillés dans la palette */
.sbt-encadre--retenir{ background:var(--sb-ok); color:#fff; }
.sbt-encadre--retenir .sbt-encadre-titre{ color:var(--sb-fond); }
.sbt-encadre--saviez{ background:var(--sb-surf); }
.sbt-encadre--saviez::before{ background:var(--sb-encre); color:var(--sb-fond); border-radius:50%; }
.sbt-encadre-titre{ font-family:var(--sb-titre); }
.sbt-faq-liste summary{ font-family:var(--sb-titre); }
/* Boîte auteur */
.sbt-auteur{ margin-top:2.6em; border-radius:var(--sb-rayon); }
.sbt-auteur-photo img, .sbt-auteur-photo .avatar{ width:120px; height:120px; border-radius:50%; object-fit:cover; }
.sbt-auteur-nom, .sbt-auteur-nom a{ font-family:var(--sb-titre); }
.sbt-auteur-der a{ color:var(--sb-accent); }

/* À lire aussi : pleine largeur, sans case vide */
.mr-alire{ padding:8px 0 88px; }
.mr-alire .sbt-a-lire{ margin-top:0; padding-top:0; border-top:0; }
.mr-alire .sbt-kicker{ font:400 clamp(1.75rem, 1.2rem + 1.4vw, 2.5rem)/1.1 var(--sb-titre); margin:0 0 24px; }
@media (max-width:1080px){
  .sbt-article-mise-en-page{ padding-top:28px; }
  .sbt-rail{ margin-top:8px; }
}

/* ---------- Contact ---------- */
.mr-contact{ background:var(--sb-fond) var(--mr-rides); overflow-x:clip; }
.mr-contact__grille{
  display:grid; grid-template-columns:minmax(0,32vw) minmax(0,1fr); gap:40px; align-items:center; min-height:min(640px, calc(100svh - var(--mr-entete-h)));
  padding-left:max(48px, calc((100vw - 1376px)/2 + 48px)); padding-right:0;
}
.mr-contact__texte{ position:relative; z-index:3; padding-block:32px; padding-right:24px; }
.mr-contact h1{ font:400 clamp(2.25rem, 1.4rem + 2.6vw, 4rem)/1.05 var(--sb-titre); letter-spacing:-.015em; }
.mr-contact__chapo{ font:400 1.1875rem/1.55 var(--sb-texte); margin:18px 0 0; max-width:30em; }
.mr-contact__visuel{ position:relative; min-height:600px; }
.mr-galet--contact{ position:absolute; top:12px; bottom:12px; left:0; right:-2vw; aspect-ratio:auto; z-index:1; }
.mr-rides--contact{ width:640px; height:640px; left:calc(6% - 320px); top:calc(60% - 320px); z-index:2; }
.mr-contact__carte{ position:absolute; left:-56px; bottom:36px; width:min(520px, calc(100% - 12px)); z-index:4; background:#fff; border-radius:var(--sb-rayon); box-shadow:var(--sb-ombre-forte); padding:22px 24px 20px; }
.mr-contact-form{ display:flex; flex-direction:column; gap:12px; }
.mr-contact-form__ligne{ display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.mr-contact-form label > span, .mr-sujets legend{ display:block; font:600 .8125rem/1.2 var(--sb-titre); margin-bottom:5px; color:var(--sb-encre); padding:0; }
.mr-contact-form input[type=text], .mr-contact-form input[type=email], .mr-contact-form textarea{
  width:100%; border:2px solid var(--sb-filet); border-radius:12px; background:#F7F5F0; padding:0 14px; height:46px; font:500 1rem var(--sb-titre);
}
.mr-contact-form textarea{ height:auto; min-height:100px; padding:11px 14px; resize:vertical; font-family:var(--sb-titre); line-height:1.45; }
.mr-contact-form input:focus, .mr-contact-form textarea:focus{ border-color:var(--sb-accent); outline:none; background:#fff; }
.mr-sujets{ border:0; padding:0; margin:0; min-width:0; }
.mr-sujets > .mr-sujet{ display:inline-block; margin:0 6px 6px 0; }
.mr-sujet{ position:relative; }
.mr-sujet input{ position:absolute; opacity:0; width:100%; height:100%; left:0; top:0; margin:0; cursor:pointer; }
.mr-sujet span{ display:inline-flex !important; align-items:center; min-height:44px; padding:0 15px; margin:0 !important; background:var(--sb-fond-2); color:var(--sb-encre) !important; font:500 .875rem/1 var(--sb-titre) !important; border-radius:22px 28px 20px 26px / 26px 20px 28px 22px; transition:background .2s, color .2s; }
.mr-contact-form .mr-sujet span{ padding:0 15px; }
.mr-sujet input:checked + span{ background:var(--sb-encre); color:var(--sb-fond) !important; }
.mr-sujet input:focus-visible + span{ outline:3px solid var(--sb-accent); outline-offset:2px; }
.mr-contact-form__bas{ display:flex; align-items:center; gap:16px; flex-wrap:wrap; }
.mr-contact-form__bas .mr-rgpd{ flex:1; min-width:180px; }
.mr-merci{ padding:20px 6px; }
.mr-merci__titre{ font:500 1.5rem/1.2 var(--sb-titre); margin:0 0 8px; }
.mr-contact-cartes__liste{ list-style:none; margin:0; padding:0; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
.mr-contact-cartes__liste a{ display:flex; flex-direction:column; gap:10px; height:100%; padding:28px; background:#fff; border-radius:var(--sb-rayon); text-decoration:none; box-shadow:0 14px 30px -20px rgba(43,50,54,.5); transition:transform .25s; }
.mr-contact-cartes__liste a:hover{ transform:translateY(-4px); }
.mr-contact-cartes__liste b{ font:500 1.375rem/1.2 var(--sb-titre); }
.mr-contact-cartes__liste span{ font:400 1.0625rem/1.5 var(--sb-texte); color:var(--sb-doux); }
@media (max-width:1023px){
  .mr-contact__grille{ display:flex; flex-direction:column; align-items:stretch; gap:0; min-height:0; padding:0 20px 36px; }
  .mr-contact__texte{ display:contents; }
  .mr-contact .mr-surtitre{ order:0; margin:16px 0 8px; }
  .mr-contact h1{ order:1; font-size:2.25rem; }
  .mr-contact__visuel{ order:2; min-height:0; margin-top:16px; }
  .mr-contact__chapo{ order:3; font-size:1.0625rem; margin-top:20px; }
  .mr-contact__grille{ position:relative; }
  .mr-contact__visuel{ position:static; }
  .mr-rides--contact{ display:none; }
  .mr-galet--contact{ position:absolute; top:12px; right:20px; left:auto; bottom:auto; width:68px; height:68px; aspect-ratio:auto; filter:drop-shadow(0 8px 10px rgba(43,50,54,.28)); }
  .mr-contact h1{ padding-right:80px; }
  .mr-contact__carte{ position:relative; left:auto; bottom:auto; width:100%; padding:16px 16px 14px; }
  .mr-contact-form{ gap:9px; }
  .mr-contact-form textarea{ min-height:70px; }
  .mr-contact-form input[type=text], .mr-contact-form input[type=email]{ height:42px; }
  .mr-contact-cartes__liste{ grid-template-columns:1fr; gap:16px; }
}
@media (max-width:760px){ .mr-contact-form__ligne{ grid-template-columns:1fr 1fr; gap:8px; } .mr-contact-form .mr-sujet span{ padding:0 9px; min-height:40px; font-size:.8125rem !important; } }

/* ---------- À propos ---------- */
.mr-apropos-hero{ background:var(--sb-fond) var(--mr-rides); padding:52px 0 72px; overflow-x:clip; }
.mr-apropos-hero__grille{ display:grid; grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr); gap:56px; align-items:center; }
.mr-apropos-hero h1{ font:400 clamp(2.25rem, 1.3rem + 2.8vw, 4rem)/1.05 var(--sb-titre); letter-spacing:-.015em; max-width:13em; }
.mr-apropos-hero__chapo{ font:400 italic 1.375rem/1.5 var(--sb-texte); margin:20px 0 0; max-width:30em; }
.mr-apropos-hero__photo{ position:relative; width:min(100%,460px); margin-left:auto; }
.mr-apropos-hero__photo .mr-galet{ width:100%; position:relative; z-index:1; }
.mr-apropos-hero__zone{ position:absolute; left:0; right:0; margin-inline:auto; width:max-content; bottom:10%; z-index:3; }
.mr-rides--apropos{ width:600px; height:600px; left:-260px; top:calc(50% - 300px); z-index:0; }
.mr-regle{ padding-block:64px 72px; }
.mr-regle h2{ max-width:16em; font-size:clamp(2rem, 1rem + 3vw, 3.5rem); }
.mr-regle__texte{ font:400 1.25rem/1.55 var(--sb-texte); max-width:44em; margin:20px 0 0; color:var(--sb-fond); }
.mr-apropos-texte{ padding:64px 0 24px; }
.mr-redacteurs__liste{ list-style:none; margin:0; padding:0; display:grid; grid-template-columns:repeat(auto-fit, minmax(240px, 300px)); gap:24px; justify-content:start; }
.mr-redacteur a{ display:flex; flex-direction:column; gap:8px; height:100%; padding:26px 24px 22px; background:#fff; border-radius:var(--sb-rayon); text-decoration:none; box-shadow:0 14px 30px -20px rgba(43,50,54,.5); transition:transform .25s; }
.mr-redacteur a:hover{ transform:translateY(-4px); }
.mr-redacteur__photo{ display:block; width:96px; height:96px; margin-bottom:6px; }
.mr-redacteur__photo img{ width:96px; height:96px; border-radius:50%; object-fit:cover; }
.mr-monogramme{ display:flex; align-items:center; justify-content:center; width:96px; height:96px; border-radius:50%; background:var(--sb-encre); color:var(--sb-fond); font:500 2.5rem/1 var(--sb-titre); }
.mr-monogramme--grand{ width:200px; height:200px; font-size:5rem; }
.mr-redacteur b{ font:500 1.375rem/1.2 var(--sb-titre); }
.mr-redacteur__role{ font:600 .8125rem/1.3 var(--sb-titre); color:var(--sb-alerte); }
.mr-redacteur__bio{ font:400 1rem/1.5 var(--sb-texte); color:var(--sb-doux); }
.mr-redacteur__n{ margin-top:auto; padding-top:6px; font:500 .8125rem var(--sb-titre); color:var(--sb-accent); }
.mr-methode{ padding:72px 0 80px; }
.mr-etapes{ list-style:none; margin:0; padding:0; display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:20px; }
.mr-etapes li{ display:flex; flex-direction:column; gap:10px; padding:26px 24px; background:#fff; border-radius:var(--sb-rayon); box-shadow:0 14px 30px -20px rgba(43,50,54,.5); }
.mr-etapes li > .mr-zone{ align-self:flex-start; margin-bottom:6px; }
.mr-etapes b{ font:600 1.1875rem/1.25 var(--sb-titre); }
.mr-etapes span:not(.mr-zone){ font:400 1rem/1.5 var(--sb-texte); color:var(--sb-doux); }
.mr-independant-bande{ padding-block:36px; }
.mr-independant-bande__in{ display:flex; align-items:center; justify-content:space-between; gap:24px; flex-wrap:wrap; }
.mr-independant-bande p{ margin:0; font:400 1.1875rem/1.4 var(--sb-texte); }
@media (max-width:1000px){ .mr-etapes{ grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width:900px){
  .mr-apropos-hero{ padding:32px 0 52px; }
  .mr-apropos-hero__grille{ grid-template-columns:1fr; gap:36px; }
  .mr-apropos-hero__photo{ margin:0 auto; width:min(100%,340px); }
  .mr-rides--apropos{ width:380px; height:380px; left:-100px; top:-80px; }
}
@media (max-width:640px){ .mr-etapes{ grid-template-columns:1fr; } }

/* ---------- Pages simples, auteur, recherche, 404 ---------- */
.mr-page-tete{ position:relative; background:var(--sb-fond-2); padding:52px 0 60px; overflow-x:clip; }
.mr-page-tete__in{ position:relative; }
.mr-page-tete h1{ font:400 clamp(2.25rem, 1.3rem + 2.6vw, 3.75rem)/1.08 var(--sb-titre); letter-spacing:-.012em; max-width:15em; position:relative; z-index:2; }
.mr-page-tete .mr-surtitre{ position:relative; z-index:2; }
.mr-page-tete__chapo{ font:400 italic 1.3125rem/1.5 var(--sb-texte); margin:16px 0 0; max-width:34em; position:relative; z-index:2; }
.mr-page-tete__date{ margin:14px 0 0; font:500 .875rem var(--sb-titre); color:var(--sb-doux); position:relative; z-index:2; }
.mr-page-tete__galet{ position:absolute; right:3%; top:50%; width:1px; height:1px; }
.mr-rides--page{ width:520px; height:520px; right:-260px; top:-260px; left:auto; }
.mr-page-corps{ padding:40px 0 88px; }
.mr-page-corps__grille{ display:grid; grid-template-columns:minmax(0,860px); justify-content:center; gap:40px; }
.mr-page-corps__grille.a-sommaire{ grid-template-columns:minmax(0,820px) 320px; align-items:start; gap:56px; }
.mr-panneau{ background:#fff; border-radius:var(--sb-rayon); box-shadow:0 20px 40px -26px rgba(43,50,54,.5); padding:clamp(22px, 4.2vw, 60px); min-width:0; }
.mr-page-rail{ position:sticky; top:96px; }
@media (max-width:1080px){ .mr-page-corps__grille.a-sommaire{ grid-template-columns:minmax(0,1fr); } .mr-page-rail{ position:static; order:-1; } }
.mr-recherche{ display:flex; gap:10px; margin:22px 0 0; max-width:520px; position:relative; z-index:2; }
.mr-recherche input{ flex:1; min-width:0; height:48px; border:2px solid var(--sb-filet); border-radius:12px; padding:0 14px; background:#fff; font:500 1rem var(--sb-titre); }
.mr-404__liens{ list-style:none; display:flex; flex-wrap:wrap; gap:10px; margin:26px 0 0; padding:0; position:relative; z-index:2; }
.mr-auteur-tete{ background:var(--sb-fond-2); padding:52px 0 60px; overflow-x:clip; }
.mr-auteur-tete__in{ display:flex; align-items:center; gap:48px; }
.mr-auteur-tete__portrait{ position:relative; flex:none; width:200px; height:200px; }
.mr-auteur-tete__portrait img{ width:200px; height:200px; border-radius:50%; object-fit:cover; position:relative; z-index:1; box-shadow:var(--sb-ombre); }
.mr-auteur-tete__portrait .mr-monogramme{ position:relative; z-index:1; }
.mr-rides--auteur{ width:420px; height:420px; left:-110px; top:-110px; z-index:0; }
.mr-auteur-tete__texte{ position:relative; z-index:2; min-width:0; }
.mr-auteur-tete h1{ font:400 clamp(2.25rem, 1.3rem + 2.4vw, 3.5rem)/1.05 var(--sb-titre); }
.mr-auteur-tete__role{ font:600 .9375rem var(--sb-titre); color:var(--sb-alerte); margin:10px 0 0; }
.mr-auteur-tete__bio{ font:400 1.1875rem/1.55 var(--sb-texte); max-width:40em; margin:14px 0 0; }
.mr-auteur-tete__n{ margin:14px 0 0; font:500 .9375rem var(--sb-titre); color:var(--sb-doux); }
@media (max-width:760px){ .mr-auteur-tete__in{ flex-direction:column; align-items:flex-start; gap:28px; } .mr-auteur-tete__portrait, .mr-auteur-tete__portrait img, .mr-monogramme--grand{ width:140px; height:140px; } .mr-monogramme--grand{ font-size:3.5rem; } .mr-rides--auteur{ width:300px; height:300px; left:-80px; top:-80px; } }

/* ---------- Pied de page (bloc figé, habillé encre / sable) ---------- */
.sbt-footer{ background:var(--sb-encre); color:var(--sb-fond); padding-block:44px 24px; }
.sbt-footer a{ color:rgba(236,233,226,.84); }
.sbt-footer a:hover{ color:#fff; }
.sbt-footer a.sbt-btn, .sbt-footer a.sbt-btn:hover{ color:#fff; }
.sbt-footer-cta p{ color:rgba(236,233,226,.84); }
.sbt-footer-cta .sbt-t3{ font-family:var(--sb-titre); }
.sbt-footer-grille{ grid-template-columns:1.25fr 1.35fr 1.05fr .8fr; gap:40px; }
.sbt-footer-colonne .sbt-t4{ color:#C9C4B8; font-family:var(--sb-titre); }
.sbt-footer-logo{ font-family:var(--sb-titre); font-weight:600; font-size:1.375rem; color:#fff; }
.sbt-footer-desc{ color:rgba(236,233,226,.86); font:400 1rem/1.5 var(--sb-texte); max-width:30ch; }
.mr-independant{ display:block; margin-top:14px; font:400 .875rem/1.5 var(--sb-texte); color:#C9C4B8; }
.sbt-footer-grille > .sbt-footer-colonne:nth-child(2) ul{ display:block; columns:2; column-gap:22px; }
.sbt-footer-grille > .sbt-footer-colonne:nth-child(2) li{ break-inside:avoid; margin-bottom:9px; }
.sbt-footer-colonne ul a{ font:500 .9375rem/1.4 var(--sb-titre); }
.sbt-footer-bas{ color:#C9C4B8; font-family:var(--sb-titre); }
@media (max-width:980px){ .sbt-footer-grille{ grid-template-columns:repeat(2,1fr); } }
@media (max-width:560px){ .sbt-footer-grille{ grid-template-columns:1fr; } .sbt-footer-grille > .sbt-footer-colonne:nth-child(2) ul{ columns:2; } }
/* Bandeau cookies : une bande fine EN HAUT de la page, dans sa place réservée (html.mr-ck, posée avant le rendu).
   Elle ne recouvre jamais un bouton, un lien ni un champ, défile avec la page, et n'ajoute rien sous le pied. */
:root{ --mr-ck-h:48px; }
.mr-ck body{ padding-top:var(--mr-ck-h); }
.sbt-cookies{
  position:absolute; top:0; left:0; right:0; bottom:auto; transform:none; width:auto; height:var(--mr-ck-h); max-height:none;
  padding:0 max(20px, calc((100vw - 1376px)/2 + 48px)); gap:16px; border:0; border-radius:0; box-shadow:none;
  background:var(--sb-encre); color:var(--sb-fond); justify-content:center;
}
.mr-ck .sbt-cookies{ display:flex; }
.sbt-cookies p{ font:500 .8125rem/1.25 var(--sb-titre); flex:0 1 auto; }
.sbt-cookies .sbt-btn{ min-height:36px; padding:0 14px; border-radius:10px; font-size:.8125rem; }
.sbt-cookies .sbt-btn--fantome{ border:1.5px solid rgba(236,233,226,.6); color:var(--sb-fond); background:transparent; }
.sbt-cookies .sbt-btn--fantome:hover{ background:rgba(236,233,226,.14); transform:none; box-shadow:none; }
html.mr-tiroir-ouvert body{ padding-top:0; }
html.mr-tiroir-ouvert .sbt-cookies{ display:none !important; }
@media (max-width:760px){ .sbt-cookies{ padding:0 10px 0 14px; gap:10px; justify-content:space-between; } .sbt-cookies p{ font-size:.75rem; flex:1 1 auto; } .sbt-cookies .sbt-btn{ padding:0 10px; } }

/* ---------- Infographies du socle ([sbs_jauges], [sbs_tarifs], [sbs_frise], [sbs_lieu]) ---------- */
.sb-bloc-infographie{ margin:2em 0; }
sbs-jauges, sbs-tarifs, sbs-frise, sbs-lieu{ display:block; }
sbs-jauges{ background:var(--sb-encre); color:var(--sb-fond); border-radius:var(--sb-rayon); padding:24px 28px 20px; }
.sbs_jauges_titre, .sbs_tarifs_titre, .sbs_frise_titre{ display:block; font:600 .8125rem/1.2 var(--sb-titre); letter-spacing:.1em; text-transform:uppercase; margin-bottom:12px; }
sbs-jauges .sbs_jauges_titre{ color:var(--sb-accent-clair); }
sbs-jauge{ display:grid; grid-template-columns:minmax(0,1fr) auto auto; align-items:baseline; gap:2px 10px; padding:12px 0; border-top:1px solid rgba(236,233,226,.18); }
.sbs_jauge_libelle{ font:400 1.0625rem/1.35 var(--sb-texte); color:var(--sb-fond); }
.sbs_jauge_valeur{ font:500 2.125rem/1.1 var(--sb-titre); font-feature-settings:"tnum"; color:var(--sb-accent-clair); text-align:right; white-space:nowrap; }
.sbs_jauge_unite{ font:500 .875rem/1.2 var(--sb-titre); color:rgba(236,233,226,.86); white-space:nowrap; max-width:9em; }
.sbs_source{ display:block; margin-top:12px; font:400 italic .8125rem/1.4 var(--sb-texte); color:rgba(236,233,226,.82); }
sbs-tarifs, sbs-frise, sbs-lieu{ background:var(--sb-surf); border-radius:var(--sb-rayon); padding:22px 26px; color:var(--sb-encre); }
sbs-tarif{ display:grid; grid-template-columns:minmax(0,1fr) 140px auto; gap:12px; align-items:center; padding:8px 0; }
.sbs_tarif_libelle{ font:500 .9375rem var(--sb-titre); } .sbs_tarif_prix{ font:600 1.0625rem var(--sb-titre); }
.sbs_tarif_barre{ width:100%; height:10px; accent-color:var(--sb-accent); }
.sbs_tarifs_notes, sbs-tarifs .sbs_source, sbs-frise .sbs_source, sbs-lieu .sbs_source{ color:var(--sb-doux); }
sbs-etape{ display:grid; gap:2px; padding:10px 0 10px 18px; border-left:3px solid var(--sb-accent); }
.sbs_etape_date{ font:600 .8125rem var(--sb-titre); color:var(--sb-accent-fonce); } .sbs_etape_titre{ font:600 1rem var(--sb-titre); } .sbs_etape_desc{ font:400 .9375rem/1.4 var(--sb-texte); color:var(--sb-doux); }
.sbs_lieu_nom{ font:600 1.125rem var(--sb-titre); display:block; } .sbs_lieu_adresse{ font-style:normal; display:block; margin:4px 0; } .sbs_lieu_acces{ display:block; color:var(--sb-doux); }
.sbs_lieu_carte{ display:inline-flex; align-items:center; gap:6px; margin-top:10px; font:600 .875rem var(--sb-titre); color:var(--sb-accent); }
@media (max-width:560px){ sbs-jauge{ grid-template-columns:minmax(0,1fr) auto; } .sbs_jauge_unite{ grid-column:1 / -1; } sbs-jauges{ padding:20px 18px 16px; } sbs-tarif{ grid-template-columns:1fr auto; } .sbs_tarif_barre{ grid-column:1 / -1; } }

/* Correctifs 18/10 (passe 1) : méta d'article sans point orphelin en fin de ligne, chapô d'À propos allégé sur mobile */
@media (max-width:560px){
  .mr-aentete .sbt-article-meta > span[aria-hidden="true"]:nth-of-type(2){ display:none; }
  .mr-aentete .sbt-article-meta > span:last-child{ flex-basis:100%; padding-left:52px; margin-top:-6px; }
  .mr-apropos-hero__chapo{ font-size:1.1875rem; }
}

/* ---------- Correctifs 18/10 (passe 4) ---------- */
.mr-aide-ligne{ min-height:0; }
[data-mr-aide]{ display:none; }
/* Bande « Votre plan » : le coureur passe entre le titre et la carte (photo agrandie et décalée) */
@media (min-width:1024px){
  .mr-bande-photo__img{ width:150vw; height:auto; max-width:none; inset:auto; left:-49.6vw; top:-17.3vw; object-fit:fill; }
}
@media (min-width:1600px){
  .mr-bande-photo__img{ width:129.3vw; left:-29.3vw; top:-17.3vw; }
}
/* Articles : la piste de lecture descend dans la marge de gauche (plus jamais sur le texte) */
.mr-lecture .mr-piste{ left:max(14px, calc((100vw - 1376px)/2 + 14px)); top:calc(40vh); flex-direction:column; height:auto; width:30px; padding:10px 6px; gap:6px; }
@media (max-width:1279px){ .mr-lecture{ display:none; } }
/* Rails de cartes : titre entier sur 3 lignes, coupé proprement par « … » au-delà */
.mr-rail__titre{ display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:3; overflow:hidden; text-overflow:ellipsis; line-height:1.2; max-height:calc(3 * 1.2em); }
/* Colonne d'article avec les vraies polices : sommaire + outil sous 692 px à 1440 */
.mr-outil--rail .mr-form-tete{ min-height:40px; padding:4px 14px; }
.mr-outil--rail .mr-form-etapes{ padding:12px 16px 14px; }
.mr-outil--rail .mr-tuile{ min-height:0; padding:7px 12px; }
.mr-outil--rail .mr-form-etape.est-active{ gap:10px; }
.mr-outil__accroche{ font-size:.75rem; line-height:1.35; padding-top:10px; }
.sbt-rail{ gap:12px; }
/* Rubrique Plans et allures : le coureur dans le cadre de la photo de tête */
.category-plans-et-allures .mr-rub-tete__photo img{ object-position:71% 50%; }

/* ---------- Correctifs 18/10 (passe 4b) ---------- */
/* Pied de page : 4 colonnes de hauteurs proches, même ligne de départ — les guides sur 2 colonnes (3 + 3) */
@media (min-width:981px){
  .sbt-footer-grille{ grid-template-columns:1fr 1.3fr 1.95fr .7fr; gap:36px; align-items:start; }
  .mr-footer-guides ul{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px 26px; }
  .mr-footer-guides li{ margin:0; }
}
@media (min-width:561px) and (max-width:980px){
  .mr-footer-guides{ grid-column:1 / -1; }
  .mr-footer-guides ul{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px 26px; }
}
.mr-footer-guides ul a{ line-height:1.35; }

/* =====================================================================
   DA-11 (18/10/2026) — « Moray Running » : sable froid, ardoise, verre de mer, bruyère ; Tenor Sans + Spectral.
   Premier écran « la grève vue du dessus », 3 galets-boutons, en-tête transparent, menu mobile en bas, pied clair.
   ===================================================================== */
:root{ --mr-piste-svg:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='250' height='64' viewBox='0 0 250 64'%3E%3Cg fill='%232B3236' fill-opacity='.55'%3E%3Cg transform='rotate(79 18.0 55.0)'%3E%3Cellipse cx='18.0' cy='51.0' rx='3.4' ry='4.6'/%3E%3Cellipse cx='18.0' cy='59.6' rx='2.5' ry='2.8'/%3E%3C/g%3E%3Cg transform='rotate(79 52.0 38.5)'%3E%3Cellipse cx='52.0' cy='34.5' rx='3.4' ry='4.6'/%3E%3Cellipse cx='52.0' cy='43.1' rx='2.5' ry='2.8'/%3E%3C/g%3E%3Cg transform='rotate(79 86.0 42.0)'%3E%3Cellipse cx='86.0' cy='38.0' rx='3.4' ry='4.6'/%3E%3Cellipse cx='86.0' cy='46.6' rx='2.5' ry='2.8'/%3E%3C/g%3E%3Cg transform='rotate(79 120.0 25.5)'%3E%3Cellipse cx='120.0' cy='21.5' rx='3.4' ry='4.6'/%3E%3Cellipse cx='120.0' cy='30.1' rx='2.5' ry='2.8'/%3E%3C/g%3E%3Cg transform='rotate(79 154.0 29.0)'%3E%3Cellipse cx='154.0' cy='25.0' rx='3.4' ry='4.6'/%3E%3Cellipse cx='154.0' cy='33.6' rx='2.5' ry='2.8'/%3E%3C/g%3E%3Cg transform='rotate(79 188.0 12.5)'%3E%3Cellipse cx='188.0' cy='8.5' rx='3.4' ry='4.6'/%3E%3Cellipse cx='188.0' cy='17.1' rx='2.5' ry='2.8'/%3E%3C/g%3E%3Cg transform='rotate(79 222.0 16.0)'%3E%3Cellipse cx='222.0' cy='12.0' rx='3.4' ry='4.6'/%3E%3Cellipse cx='222.0' cy='20.6' rx='2.5' ry='2.8'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E"); }

/* Titres d'une seule couleur, sans mot accentué ; Tenor Sans n'a qu'une graisse */
h1 em, h2 em, .mr-bande--encre h2 em, .mr-bande-photo h2 em, .mr-bande--galet h2 em{ color:inherit; font-style:normal; }
h1, h2, h3, h4{ font-weight:400; }
.mr-surtitre{ font:400 1rem/1.2 var(--sb-titre); letter-spacing:.02em; text-transform:none; color:var(--sb-accent); }
.mr-bande--galet .mr-surtitre, .mr-page-tete .mr-surtitre{ color:var(--sb-accent); }

/* ---------- En-tête transparent sur le sable ---------- */
.mr-entete{ background:transparent; -webkit-backdrop-filter:none; backdrop-filter:none; transition:background .25s, box-shadow .25s; }
.mr-entete.est-defile{ background:rgba(236,233,226,.95); box-shadow:0 10px 24px -18px rgba(43,50,54,.45); }
.mr-logo{ font:400 1.3125rem/1 var(--sb-titre); letter-spacing:.01em; }
.mr-nav ul{ justify-content:flex-end; gap:4px 26px; }
.mr-nav a{ font:400 1rem/1 var(--sb-titre); letter-spacing:.01em; }
.mr-nav a::after{ height:1.5px; background:var(--sb-encre); }
.mr-nav a:hover, .mr-nav a[aria-current]{ color:var(--sb-encre); }
.mr-nav a[aria-current]::after{ background:var(--sb-accent); }

/* ---------- Menu mobile et tablette : en bas de l'écran ---------- */
.mr-barre{ display:none; }
@media (max-width:1180px){
  .mr-barre{
    position:fixed; left:0; right:0; bottom:0; z-index:60; display:grid; grid-template-columns:repeat(5,minmax(0,1fr));
    height:calc(var(--mr-barre-h) + env(safe-area-inset-bottom)); padding:0 6px env(safe-area-inset-bottom);
    background:rgba(236,233,226,.97); border-top:1px solid var(--sb-filet); box-shadow:0 -10px 24px -18px rgba(43,50,54,.5);
  }
  .mr-barre__lien{
    display:flex; flex-direction:column; align-items:center; justify-content:center; gap:4px; min-height:48px; min-width:44px;
    font:400 .75rem/1.1 var(--sb-titre); color:var(--sb-encre); text-decoration:none; background:none; border:0; padding:0; cursor:pointer;
  }
  .mr-barre__lien svg{ width:24px; height:24px; flex:none; }
  .mr-barre__lien.est-courant{ color:var(--sb-accent); }
  .mr-barre__lien--allure svg{ width:34px; height:30px; padding:3px 5px; margin-top:-2px; background:var(--sb-verre); color:var(--sb-encre); border-radius:46% 54% 42% 58% / 52% 44% 56% 48%; box-shadow:0 4px 0 rgba(43,50,54,.16); }
  .mr-barre__lien[aria-expanded="true"]{ color:var(--sb-accent); }
  .mr-tiroir{ inset:0 0 var(--mr-barre-h) 0; z-index:55; padding:calc(var(--mr-entete-h) + 12px) 24px 28px; }
  .mr-tiroir li a{ font:400 1.5rem/1.2 var(--sb-titre); }
  .mr-tiroir li a[aria-current]{ color:var(--sb-accent); }
}

/* ---------- S1 · « La grève vue du dessus » ---------- */
.mr-greve{ position:relative; overflow:hidden; background:#E3DCCF; margin-top:calc(-1 * var(--mr-entete-h)); padding-top:var(--mr-entete-h); }
.mr-greve__photo{ position:absolute; inset:0; z-index:0; display:block; }
.mr-greve__img{ width:100%; height:100%; object-fit:cover; object-position:30% 25%; filter:saturate(.86) brightness(1.05); }
.mr-greve::after{ content:""; position:absolute; inset:0; z-index:1; pointer-events:none;
  background:radial-gradient(ellipse 52% 50% at 20% 22%, rgba(236,233,226,.62) 0%, rgba(236,233,226,.30) 55%, rgba(236,233,226,0) 100%), linear-gradient(rgba(236,233,226,.10), rgba(236,233,226,.10)); }
.mr-greve__in{ max-width:1376px; margin-inline:auto; padding-inline:48px; }
@media (min-width:1700px){ .mr-greve__in{ max-width:1616px; } }
.mr-greve__texte{ position:relative; z-index:2; padding-top:16px; }
.mr-greve h1{ font:400 clamp(2.125rem, 5.28vw, 4.75rem)/1.02 var(--sb-titre); letter-spacing:-.012em; color:var(--sb-encre); margin:0; }
.mr-greve h1 span{ display:block; }
.mr-greve__chapo{ margin:16px 0 0; max-width:26em; font:400 1.1875rem/1.45 var(--sb-texte); color:var(--sb-encre); }

/* L'outil en 3 galets (variante « greve » de mr_outil) */
.mr-outil--greve{ background:none; box-shadow:none; border:0; border-radius:0; }
.mr-outil--greve .mr-form-tete, .mr-outil--greve .mr-puces-titre, .mr-outil--greve .mr-retour,
.mr-outil--greve .mr-passages, .mr-outil--greve .mr-liens, .mr-outil--greve .mr-repere, .mr-outil--greve .mr-resume{ display:none; }
.mr-outil--greve .mr-form-etapes{ padding:0; }
.mr-outil--greve .mr-form-etape{
  --lift:0px; display:flex; flex-direction:column; align-items:center; text-align:left; gap:10px; min-height:0;
  background:var(--sb-verre); color:var(--sb-encre); padding:28px 38px 30px;
  box-shadow:0 8px 0 rgba(43,50,54,.15), 0 12px 24px -8px rgba(43,50,54,.32);
  transition:transform .4s cubic-bezier(.2,.7,.2,1), box-shadow .4s; animation:none;
}
.mr-outil--greve .mr-form-etape[data-mr-etape="1"]{ border-radius:36% 44% 38% 42% / 40% 34% 46% 38%; }
.mr-outil--greve .mr-form-etape[data-mr-etape="2"]{ border-radius:44% 34% 42% 36% / 36% 44% 38% 46%; }
.mr-outil--greve .mr-form-etape[data-mr-etape="3"]{ border-radius:38% 42% 34% 46% / 30% 36% 40% 34%; padding:30px 40px 34px; }
.mr-outil--greve .mr-form-etape.est-active{ --lift:10px; box-shadow:0 16px 0 -2px rgba(43,50,54,.12), 0 26px 36px -12px rgba(43,50,54,.45); }
.mr-outil--greve .mr-etape-titre{ text-align:center; font:400 1.3125rem/1.2 var(--sb-titre); margin:0; color:var(--sb-encre); }
.mr-outil--greve .mr-tuiles{ flex:none; width:100%; grid-template-columns:1fr 1fr; gap:8px; }
.mr-outil--greve .mr-tuile{ min-height:52px; padding:7px 8px; align-items:center; justify-content:center; text-align:center; background:var(--sb-fond); border-radius:16px 21px 15px 22px / 20px 15px 22px 16px; }
.mr-outil--greve .mr-tuile b{ font:400 1.125rem/1.1 var(--sb-titre); }
.mr-outil--greve .mr-tuile small{ font:400 .75rem/1.15 var(--sb-titre); color:var(--sb-doux); opacity:1; }
.mr-outil--greve .mr-tuile[aria-pressed="true"]{ background:var(--sb-encre); color:var(--sb-fond); border-color:var(--sb-encre); }
.mr-outil--greve .mr-tuile[aria-pressed="true"] small{ color:var(--sb-fond); }
.mr-outil--greve .mr-tuile:hover{ border-color:var(--sb-accent); }
.mr-outil--greve .mr-aide-ligne{ min-height:0; width:100%; }
.mr-outil--greve .mr-autre{ background:var(--sb-fond); border-radius:14px; padding:4px 4px 4px 12px; }
.mr-outil--greve .mr-autre span{ font:400 .875rem/1.2 var(--sb-titre); }
.mr-outil--greve .mr-autre input{ height:40px; }
.mr-outil--greve .mr-form-etape > .mr-btn{ width:auto; margin-top:4px; padding:0 26px; min-height:48px; font:400 1.0625rem/1 var(--sb-titre); border-radius:22px 27px 20px 28px / 26px 20px 28px 22px; }
.mr-outil--greve .mr-temps{ width:100%; gap:8px; }
.mr-outil--greve .mr-temps input{ height:56px; font:400 1.5rem/1 var(--sb-titre); background:var(--sb-fond); border-color:transparent; border-radius:14px 18px 13px 19px / 17px 13px 19px 14px; }
.mr-outil--greve .mr-temps span{ color:var(--sb-doux); }
.mr-outil--greve .mr-puces-zone{ flex:none; width:100%; }
.mr-outil--greve .mr-puces{ justify-content:center; gap:6px; }
.mr-outil--greve .mr-tuile--puce{ min-height:40px; padding:0 12px; font:400 .9375rem/1 var(--sb-titre); flex-direction:row; }
.mr-outil--greve .mr-aide-simple{ font:400 italic 1.125rem/1.35 var(--sb-texte); color:var(--sb-encre); }
.mr-outil--greve .mr-erreur{ font:400 1.125rem/1.3 var(--sb-texte); color:var(--sb-encre); }
.mr-outil--greve .mr-form-etape[data-mr-etape="2"] .mr-erreur{ min-height:0; }
.mr-outil--greve .mr-erreur:empty{ display:none; }
/* Galet 3 : en attente, puis la réponse et « Recevoir mon plan » s'y écrivent */
.mr-attente .mr-allure{ justify-content:center; }
.mr-attente .mr-allure__val{ opacity:.5; }
.mr-attente{ text-align:center; }
.mr-attente__txt{ margin:6px auto 0; font:400 1.125rem/1.4 var(--sb-texte); color:var(--sb-encre); max-width:17em; }
.mr-outil--greve .est-active .mr-attente{ display:none; }
.mr-outil--greve [data-mr-etape="3"]:not(.est-active) .mr-resultat, .mr-outil--greve [data-mr-etape="3"]:not(.est-active) .mr-mail, .mr-outil--greve [data-mr-etape="3"]:not(.est-active) .mr-envoye{ display:none !important; }
.mr-outil--greve .mr-resultat{ align-items:center; gap:4px; }
.mr-outil--greve .mr-allure{ align-items:baseline; justify-content:center; gap:6px; flex-wrap:wrap; }
.mr-outil--greve .mr-allure__val{ font:400 3.25rem/1 var(--sb-titre); color:var(--sb-encre); }
.mr-outil--greve .mr-allure small{ font:400 1.25rem/1 var(--sb-titre); }
.mr-outil--greve .mr-vitesse{ margin-left:10px; font:400 1.125rem/1 var(--sb-titre); color:var(--sb-encre); }
.mr-outil--greve .mr-mail{ width:100%; margin-top:6px; padding:12px 14px 10px; background:var(--sb-fond); border-radius:18px 24px 16px 26px / 22px 16px 26px 18px; text-align:left; }
.mr-outil--greve .mr-mail input[type=text], .mr-outil--greve .mr-mail input[type=email]{ height:40px; background:#F7F5F0; font:400 .9375rem var(--sb-titre); }
.mr-outil--greve .mr-mail__bas{ flex-direction:column; align-items:stretch; gap:8px; }
.mr-outil--greve .mr-mail__bas .mr-btn{ width:100%; min-height:46px; font:400 1rem/1 var(--sb-titre); border-radius:20px 24px 18px 26px / 24px 18px 26px 20px; }
.mr-outil--greve .mr-consent{ font:400 .8125rem/1.3 var(--sb-titre); }
.mr-outil--greve .mr-rgpd{ font:400 .75rem/1.3 var(--sb-titre); }
.mr-outil--greve .mr-envoye{ width:100%; margin:8px 0 0; background:var(--sb-fond); }
/* L'empreinte voisine de chaque galet et ses 3 rides d'impact (discrètes, rejouées quand le galet se soulève) */
.mr-galet-pas{ position:absolute; left:-6px; bottom:-26px; width:26px; height:42px; color:var(--sb-encre); pointer-events:none; }
.mr-galet-pas__pied{ width:18px; height:30px; opacity:.3; transform:rotate(68deg); display:block; }
.mr-rides--galet{ width:150px; height:150px; left:calc(50% - 75px); top:calc(50% - 75px); stroke:var(--sb-encre); stroke-width:2; opacity:0; animation:none; }
.mr-outil--greve .est-active .mr-rides--galet{ animation:mr-onde 2.2s cubic-bezier(.2,.7,.2,1) 2 both; }
@keyframes mr-onde{ 0%{ opacity:0; transform:scale(.25); } 25%{ opacity:.9; } 100%{ opacity:.32; transform:scale(1); } }

/* Grand écran : les galets posés le long de la piste de la photo, de bas-gauche à haut-droite */
@media (min-width:1181px){
  .mr-greve{ height:clamp(620px, calc(100svh - 76px), 704px); }
  .mr-greve__in{ position:static; }
  .mr-outil--greve{ position:absolute; inset:0; z-index:3; pointer-events:none; }
  .mr-outil--greve .mr-form-etape{ position:absolute; pointer-events:auto; transform:translate(-50%, calc(-50% - var(--lift))); }
  .mr-outil--greve .mr-form-etape[data-mr-etape="1"]{ left:17%; top:78.5%; width:clamp(272px, 22vw, 336px); }
  .mr-outil--greve .mr-form-etape[data-mr-etape="2"]{ left:51%; top:71%; width:clamp(292px, 23.5vw, 364px); }
  .mr-outil--greve .mr-form-etape[data-mr-etape="3"]{ left:81.5%; top:53%; width:clamp(340px, 27.5vw, 440px); }
}
@media (min-width:1700px){ .mr-greve{ height:clamp(700px, calc(100svh - 90px), 860px); } .mr-greve h1{ font-size:4.75rem; } }
/* Tablette et mobile : galets les uns sous les autres le long de la piste (photo verticale sous 761 px) */
@media (max-width:1180px){
  .mr-greve{ padding-bottom:34px; }
  .mr-greve__in{ position:relative; z-index:2; }
  .mr-outil--greve{ position:relative; margin-top:22px; }
  .mr-outil--greve .mr-form-etapes{ display:flex; flex-wrap:wrap; justify-content:center; align-items:flex-start; gap:30px 22px; }
  .mr-outil--greve .mr-form-etape{ position:relative; width:min(100%, 360px); transform:translateY(calc(-1 * var(--lift))); }
  .mr-outil--greve .mr-form-etape[data-mr-etape="3"]{ width:min(100%, 420px); }
}
@media (max-width:760px){
  .mr-greve__in{ padding-inline:18px; }
  .mr-greve__img{ object-position:50% 70%; }
  .mr-greve::after{ background:linear-gradient(180deg, rgba(236,233,226,.62) 0%, rgba(236,233,226,.40) 28%, rgba(236,233,226,.06) 52%, rgba(236,233,226,0) 100%); }
  .mr-greve__texte{ padding-top:10px; }
  .mr-greve h1{ font-size:2.125rem; line-height:1.06; }
  .mr-greve h1 span{ display:inline; }
  .mr-greve__chapo{ font-size:1.0625rem; margin-top:10px; }
  .mr-outil--greve{ margin-top:18px; }
  .mr-outil--greve .mr-form-etapes{ flex-direction:column; flex-wrap:nowrap; gap:26px; }
  .mr-outil--greve .mr-form-etape{ width:calc(100% - 22px); padding:20px 28px 22px; gap:9px; }
  .mr-outil--greve .mr-form-etape[data-mr-etape="1"]{ align-self:flex-start; }
  .mr-outil--greve .mr-form-etape[data-mr-etape="2"]{ align-self:flex-end; }
  .mr-outil--greve .mr-form-etape[data-mr-etape="3"]{ align-self:center; width:100%; padding:24px 26px 26px; }
  .mr-outil--greve .mr-tuiles{ grid-template-columns:repeat(4,minmax(0,1fr)); gap:6px; }
  .mr-outil--greve .mr-tuile{ min-height:50px; padding:6px 4px; }
  .mr-outil--greve .mr-tuile b{ font-size:.9375rem; }
  .mr-outil--greve .mr-tuile small{ display:none; }
  .mr-outil--greve .mr-form-etape > .mr-btn{ min-height:46px; }
  .mr-galet-pas{ left:8px; bottom:-28px; }
}

/* ---------- Signature : la piste d'empreintes relie les sections de l'accueil ---------- */
.home main > section + section::before{
  content:""; position:absolute; z-index:4; top:-44px; left:6%; width:360px; height:92px; pointer-events:none;
  background:var(--mr-piste-svg) no-repeat center/contain;
}
.home main > section:nth-of-type(odd) + section::before{ left:auto; right:9%; transform:scaleX(-1); }
.home main > .mr-greve + section::before{ display:none; }
@media (max-width:760px){ .home main > section + section::before{ width:210px; height:54px; top:-26px; } }

/* ---------- Bandes de l'accueil ---------- */
.mr-bande--encre{ background:var(--sb-verre); color:var(--sb-encre); }
.mr-bande--encre h2, .mr-surtitre--clair{ color:var(--sb-encre) !important; }
.mr-chiffre{ border-left-color:rgba(43,50,54,.28); }
.mr-chiffre__val{ color:var(--sb-encre); font-weight:400; }
.mr-chiffre__unite{ color:var(--sb-encre); }
.mr-chiffre__legende{ color:var(--sb-encre); font-size:1.125rem; }
.mr-chiffre__source{ color:var(--sb-encre); font:400 1.125rem/1.35 var(--sb-texte); }
.mr-chiffre__source:hover{ color:var(--sb-encre); text-decoration-thickness:2px; }
@media (max-width:760px){ .mr-chiffre{ border-top-color:rgba(43,50,54,.28); } }
.mr-passage-carte{ background:#F7F5F0; border-radius:34px 46px 30px 50px / 44px 30px 50px 36px; }
.mr-sceau{ transform:none; border-radius:46% 54% 42% 58% / 52% 44% 56% 48%; }
.mr-sceau:hover{ transform:scale(1.04); }
.mr-languette{ border-radius:18px 10px 10px 18px / 22px 12px 12px 22px; }

/* ---------- Cartes : la photo DANS un galet asymétrique, titre dessous, pastille dans la forme ---------- */
.mr-galet{ filter:drop-shadow(0 8px 0 rgba(43,50,54,.10)) drop-shadow(0 14px 14px rgba(43,50,54,.18)); }
.mr-galet--v1 .mr-galet__forme{ clip-path:url(#mr-g1); } .mr-galet--v2 .mr-galet__forme{ clip-path:url(#mr-g2); }
.mr-galet--v3 .mr-galet__forme{ clip-path:url(#mr-g3); } .mr-galet--v4 .mr-galet__forme{ clip-path:url(#mr-g4); }
.mr-galet--v5 .mr-galet__forme{ clip-path:url(#mr-g5); } .mr-galet--v6 .mr-galet__forme{ clip-path:url(#mr-g6); }
.mr-carte, .mr-carte:hover{ background:none; border-radius:0; box-shadow:none; transform:none; }
.mr-carte__lien{ padding:0; }
.mr-carte__corps{ padding:16px 6px 0; }
.mr-carte__titre{ font-weight:400; }
.mr-carte__zone, .mr-rail__zone, .mr-aentete__zone, .mr-apropos-hero__zone{ bottom:16%; max-width:calc(100% - 72px); }
.mr-zone{ font:400 .875rem/1 var(--sb-titre); box-shadow:none; }
.mr-une{ background:none; box-shadow:none; border-radius:0; }
.mr-une__lien{ padding:0; }
.mr-grille-rub > .mr-carte:nth-child(3n+1):last-child .mr-carte__lien{ padding:0; }
.mr-contact-cartes__liste a, .mr-redacteur a, .mr-etapes li{ background:var(--sb-fond-2); box-shadow:none; border-radius:34px 50px 30px 54px / 46px 30px 54px 36px; }
.mr-contact-cartes__liste li:nth-child(2) a, .mr-redacteurs__liste li:nth-child(2) a, .mr-etapes li:nth-child(2){ border-radius:52px 32px 48px 30px / 34px 50px 30px 46px; }
.mr-contact-cartes__liste li:nth-child(3) a, .mr-redacteurs__liste li:nth-child(3) a, .mr-etapes li:nth-child(3){ border-radius:40px 56px 36px 44px / 30px 44px 52px 40px; }
.mr-contact__carte{ background:#F7F5F0; border-radius:40px 54px 34px 58px / 50px 34px 58px 40px; }

/* ---------- Pied CLAIR en verre de mer : une rangée de galets, une ligne de liens ---------- */
.mr-piste-pied{ background:var(--sb-verre); color:var(--sb-encre); padding:26px 0 0; }
.mr-piste-pied .mr-piste{ color:var(--sb-encre); opacity:.45; gap:30px; }
.sbt-footer.mr-pied{ background:var(--sb-verre); color:var(--sb-encre); padding:26px 0 calc(28px + var(--mr-barre-h)); margin:0; }
.mr-pied a, .mr-pied a:hover{ color:var(--sb-encre); }
.mr-pied__galets ul{ display:flex; flex-wrap:wrap; justify-content:center; gap:14px 14px; list-style:none; margin:0; padding:0; }
.mr-pied__galet{
  display:inline-flex; align-items:center; min-height:56px; padding:0 26px; background:var(--sb-fond); text-decoration:none;
  font:400 1.0625rem/1.15 var(--sb-titre); box-shadow:0 6px 0 rgba(43,50,54,.16); transition:transform .25s, background .25s;
}
.mr-pied__galet--1{ border-radius:28px 36px 26px 40px / 34px 26px 40px 28px; }
.mr-pied__galet--2{ border-radius:38px 26px 36px 28px / 26px 38px 28px 36px; }
.mr-pied__galet--3{ border-radius:30px 40px 34px 26px / 36px 28px 30px 40px; }
.mr-pied__galet--4{ border-radius:36px 30px 26px 42px / 30px 40px 36px 26px; }
.mr-pied__galet:hover{ background:#F7F5F0; transform:translateY(-3px); }
.mr-pied__ligne{ display:flex; flex-wrap:wrap; align-items:baseline; justify-content:center; gap:10px 30px; margin-top:30px; padding-top:22px; border-top:1px solid rgba(43,50,54,.3); }
.mr-pied .sbt-footer-logo{ display:inline; margin:0; font:400 1.375rem/1.2 var(--sb-titre); color:var(--sb-encre); }
.mr-pied__liens{ display:flex; flex-wrap:wrap; justify-content:center; gap:8px 26px; list-style:none; margin:0; padding:0; }
.mr-pied__liens a{ font:400 1.125rem/1.4 var(--sb-titre); text-decoration:underline; text-decoration-thickness:1px; text-underline-offset:4px; }
.mr-pied__liens a:hover{ text-decoration-thickness:2px; }
.mr-pied .sbt-footer-bas{ padding:0; border:0; font:400 1.125rem/1.4 var(--sb-titre); color:var(--sb-encre); }
.mr-pied .sbt-footer-desc{ max-width:none; margin:16px auto 0; text-align:center; font:400 1.125rem/1.5 var(--sb-texte); color:var(--sb-encre); }
.mr-pied .mr-independant{ display:block; margin-top:4px; font:400 1.125rem/1.5 var(--sb-texte); color:var(--sb-encre); }
@media (max-width:760px){
  .mr-pied__galets ul{ gap:10px; }
  .mr-pied__galet{ min-height:48px; padding:0 18px; font-size:1rem; }
  .mr-pied__ligne{ flex-direction:column; align-items:center; gap:10px; }
}
/* Bandeau cookies : ardoise, en haut, ne recouvre ni le menu bas ni le formulaire */
.sbt-cookies .sbt-btn{ font-family:var(--sb-titre); font-weight:400; }

/* Passe 2 (DA-11) : galets du pied posés de travers, galets du premier écran mobile en 2 × 2 */
.mr-pied__galet{ min-height:60px; }
.mr-pied__galets li:nth-child(3n+1) .mr-pied__galet{ transform:rotate(-2deg); }
.mr-pied__galets li:nth-child(3n+2) .mr-pied__galet{ transform:rotate(1.5deg); }
.mr-pied__galets li .mr-pied__galet:hover{ transform:translateY(-3px); }
@media (max-width:760px){
  .mr-outil--greve .mr-tuiles{ grid-template-columns:1fr 1fr; }
  .mr-outil--greve .mr-tuile{ min-height:44px; }
  .mr-outil--greve .mr-tuile b{ font-size:1rem; }
}
/* Passe 3 (DA-11) : texte ardoise ≥ 18 px sur le verre de mer ; pastilles de la 404 visibles sur le galet */
.mr-bande--encre .mr-regle__texte{ color:var(--sb-encre); }
.mr-bande--encre .mr-surtitre{ font-size:1.125rem; }
.mr-404 .mr-galet-pastille{ background:var(--sb-fond); min-height:48px; font:400 1rem/1 var(--sb-titre); }
.mr-404 .mr-galet-pastille:hover{ background:#F7F5F0; }

/* =====================================================================
   DA-11 n°2 (18/10/2026, juge visuel n°2) — premier écran, tableaux, corps d'article, pages
   ===================================================================== */
/* En-tête : voile clair derrière le menu, lisible sur le sable */
.mr-entete:not(.est-defile){ background:linear-gradient(180deg, rgba(236,233,226,.94) 0%, rgba(236,233,226,.80) 100%); -webkit-backdrop-filter:blur(6px); backdrop-filter:blur(6px); box-shadow:0 1px 0 rgba(43,50,54,.08); }

/* Titre plus présent (une seule couleur, Tenor Sans n'a qu'une graisse : on joue sur la taille et l'interlignage) */
.mr-greve h1{ font-size:clamp(2.125rem, 5.9vw, 5.5rem); line-height:.98; letter-spacing:-.02em; }
.mr-greve__chapo{ max-width:24em; font-size:1.25rem; }
.mr-greve__img{ object-position:50% 100%; } /* la vraie piste d'empreintes de la photo passe sous les galets */

/* La piste dessinée : signature, de bas-gauche vers haut-droite, sous les galets */
.mr-greve__piste{ position:absolute; inset:0; z-index:2; pointer-events:none; }
.mr-greve__pas{ position:absolute; width:15px; height:25px; color:var(--sb-encre); opacity:.42; }
@media (max-width:1180px){ .mr-greve__piste{ display:none; } }

/* Les 3 galets : UN objet qui remonte la piste — tailles et inclinaisons différentes, bords qui se chevauchent */
@media (min-width:1181px){
  .mr-outil--greve .mr-form-etape{ transform:translate(-50%, calc(-50% - var(--lift))) rotate(var(--rot, 0deg)); }
  .mr-outil--greve .mr-form-etape[data-mr-etape="1"]{ --rot:-5deg; left:49%; top:79%; width:clamp(262px, 19vw, 318px); z-index:3; padding:24px 30px 26px; }
  .mr-outil--greve .mr-form-etape[data-mr-etape="2"]{ --rot:4deg; left:66.5%; top:63%; width:clamp(292px, 22vw, 362px); z-index:2; }
  .mr-outil--greve .mr-form-etape[data-mr-etape="3"]{ --rot:-2.5deg; left:84%; top:43%; width:clamp(332px, 26vw, 436px); z-index:1; }
  .mr-outil--greve .mr-form-etape.est-active{ z-index:6; }
  .mr-outil--greve .mr-form-etape[data-mr-etape="1"] .mr-tuile{ min-height:48px; }
}
@media (min-width:1700px){
  .mr-greve h1{ font-size:5.75rem; }
  .mr-outil--greve .mr-form-etape[data-mr-etape="1"]{ left:52%; }
  .mr-outil--greve .mr-form-etape[data-mr-etape="2"]{ left:66%; }
  .mr-outil--greve .mr-form-etape[data-mr-etape="3"]{ left:81%; }
}
/* Galet 3 en attente : un exemple calculé (temps ÷ distance), plus de tirets vides */
.mr-attente__ex{ margin:2px 0 0; font:400 1rem/1.3 var(--sb-titre); color:var(--sb-encre); }
.mr-attente .mr-allure__val{ opacity:.82; }
.mr-attente__txt{ font-size:1.0625rem; }
/* Mobile : les galets descendent la piste en quinconce, légèrement inclinés */
@media (max-width:760px){
  .mr-outil--greve .mr-form-etapes{ gap:18px; }
  .mr-outil--greve .mr-form-etape[data-mr-etape="1"]{ transform:translateY(calc(-1 * var(--lift))) rotate(-1.5deg); }
  .mr-outil--greve .mr-form-etape[data-mr-etape="2"]{ transform:translateY(calc(-1 * var(--lift))) rotate(1.5deg); width:calc(100% - 34px); }
  .mr-outil--greve .mr-form-etape[data-mr-etape="3"]{ transform:translateY(calc(-1 * var(--lift))) rotate(-1deg); }
  .mr-greve h1{ font-size:2.25rem; }
}

/* ---------- Tableaux d'article : un seul moule ---------- */
.sbt-article-corps [class*="__tbl"]{ margin:0; padding:0; border:0; border-radius:0; overflow:visible; background:none; }
.sbt-article-corps .sbs_tableau{ margin:2em 0; border:0; border-radius:20px 26px 18px 28px / 24px 18px 28px 20px; background:#F7F5F0; overflow-x:auto; box-shadow:0 6px 0 rgba(43,50,54,.07); }
.sbt-article-corps .sbs_tableau table{ width:100%; min-width:0; margin:0; border-collapse:collapse; table-layout:auto; font:400 1rem/1.45 var(--sb-titre); }
.sbt-article-corps .sbs_tableau thead th, .sbt-article-corps .sbs_tableau th{ background:var(--sb-verre-pale); color:var(--sb-encre); font:400 1rem/1.3 var(--sb-titre); white-space:normal; min-width:0; padding:14px 16px; border:0; border-bottom:2px solid var(--sb-verre); text-align:left; vertical-align:bottom; }
.sbt-article-corps .sbs_tableau td{ min-width:0; padding:12px 16px; border:0; border-top:1px solid var(--sb-filet); background:transparent; vertical-align:top; overflow-wrap:break-word; hyphens:auto; }
.sbt-article-corps .sbs_tableau tbody tr:nth-child(even) td{ background:#EFECE5; }
.sbt-article-corps .sbs_tableau tbody tr:first-child td{ border-top:0; }
.sbt-article-corps .sbs_tableau td:first-child{ font-weight:400; color:var(--sb-encre); }
/* Mobile : une carte par ligne, l'intitulé de colonne devant chaque valeur */
@media (max-width:640px){
  .sbt-article-corps .sbs_tableau{ background:none; box-shadow:none; border-radius:0; overflow:visible; }
  .sbt-article-corps table.mr-tableau, .sbt-article-corps table.mr-tableau tbody, .sbt-article-corps table.mr-tableau tr, .sbt-article-corps table.mr-tableau td{ display:block; width:100%; }
  .sbt-article-corps table.mr-tableau thead{ position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap; }
  .sbt-article-corps table.mr-tableau tr{ margin:0 0 14px; padding:8px 16px 10px; background:#F7F5F0; border-radius:18px 24px 16px 26px / 22px 16px 26px 18px; box-shadow:0 5px 0 rgba(43,50,54,.08); }
  .sbt-article-corps table.mr-tableau tbody tr:nth-child(even) td, .sbt-article-corps table.mr-tableau td{ background:none; }
  .sbt-article-corps table.mr-tableau td{ display:grid; grid-template-columns:minmax(0,42%) minmax(0,1fr); gap:12px; padding:8px 0; border-top:1px solid var(--sb-filet); }
  .sbt-article-corps table.mr-tableau td::before{ content:attr(data-label); font:400 .875rem/1.35 var(--sb-titre); color:var(--sb-doux); }
  .sbt-article-corps table.mr-tableau td:first-child{ display:block; padding:6px 0 8px; border-top:0; font:400 1.125rem/1.3 var(--sb-titre); }
  .sbt-article-corps table.mr-tableau td:first-child::before{ display:none; }
}

/* ---------- « À lire aussi » : un seul bloc, en cartes, dans le corps ---------- */
.sbt-article-corps .mr-alire-corps{ margin:2.6em 0 0; padding:26px 0 0; border-top:1px solid var(--sb-filet); }
.sbt-article-corps .mr-alire-corps h2{ margin:0 0 18px; }
.mr-alire-corps__liste{ display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; }
.sbt-article-corps a.mr-alire-corps__carte{ display:flex; flex-direction:column; gap:12px; text-decoration:none; color:var(--sb-encre); }
.mr-alire-corps__photo{ display:block; width:100%; aspect-ratio:4/3; }
.mr-alire-corps__photo .mr-galet, .mr-alire-corps__photo .mr-galet__forme{ display:block; width:100%; height:100%; }
.mr-alire-corps__photo img{ width:100%; height:100%; object-fit:cover; margin:0; border-radius:0; }
.mr-alire-corps__titre{ font:400 1.0625rem/1.3 var(--sb-titre); }
.mr-alire-corps__carte:hover .mr-alire-corps__titre{ text-decoration:underline; text-underline-offset:3px; }
.sbt-article-corps .mr-alire-corps__plus{ margin:18px 0 0; font:400 1rem/1.4 var(--sb-titre); }
@media (max-width:640px){
  .mr-alire-corps__liste{ grid-template-columns:1fr; gap:12px; }
  .sbt-article-corps a.mr-alire-corps__carte{ flex-direction:row; align-items:center; gap:14px; }
  .mr-alire-corps__photo{ flex:0 0 92px; width:92px; aspect-ratio:1; }
}

/* ---------- Repères chiffrés et galets de liste (guides sans visuel) ---------- */
.mr-reperes{ margin:2.2em 0; padding:26px 26px 28px; background:var(--sb-verre); color:var(--sb-encre); border-radius:30px 44px 26px 48px / 40px 26px 48px 30px; box-shadow:0 8px 0 rgba(43,50,54,.10); }
.mr-reperes__titre{ margin:0 0 16px; font:400 1.25rem/1.2 var(--sb-titre); }
.mr-reperes__liste{ display:grid; grid-template-columns:repeat(auto-fit, minmax(180px, 1fr)); gap:16px; }
.mr-reperes__item{ display:flex; flex-direction:column; gap:8px; padding:16px 18px; background:#F7F5F0; border-radius:22px 30px 18px 32px / 28px 18px 32px 22px; }
.mr-reperes__chiffre{ font:400 2rem/1.05 var(--sb-titre); letter-spacing:-.01em; }
.mr-reperes__texte{ font:400 1rem/1.45 var(--sb-texte); }
.sbt-article-corps ul.mr-galets-liste{ list-style:none; counter-reset:mr-gl; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; margin:1.6em 0 2em; padding:0; }
.sbt-article-corps ul.mr-galets-liste > li{ counter-increment:mr-gl; position:relative; margin:0; padding:22px 22px 20px 70px; background:#F7F5F0; border-radius:26px 38px 22px 40px / 34px 22px 40px 26px; box-shadow:0 6px 0 rgba(43,50,54,.08); font-size:1.0625rem; line-height:1.5; }
.sbt-article-corps ul.mr-galets-liste > li:nth-child(even){ border-radius:38px 24px 40px 26px / 24px 36px 26px 40px; }
.sbt-article-corps ul.mr-galets-liste > li::before{ content:counter(mr-gl); position:absolute; left:18px; top:18px; width:38px; height:38px; background:var(--sb-verre); color:var(--sb-encre); border-radius:46% 54% 42% 58% / 52% 44% 56% 48%; font:400 1.125rem/38px var(--sb-titre); text-align:center; transform:none; }
.sbt-article-corps ul.mr-galets-liste > li strong:first-child{ display:block; margin-bottom:4px; font:400 1.125rem/1.3 var(--sb-titre); }
.sbt-article-corps ul.mr-galets-liste--3 > li:last-child, .sbt-article-corps ul.mr-galets-liste--5 > li:last-child, .sbt-article-corps ul.mr-galets-liste--7 > li:last-child{ grid-column:1 / -1; }
@media (max-width:640px){ .sbt-article-corps ul.mr-galets-liste{ grid-template-columns:1fr; } }

/* ---------- Formulaire des articles : l'icône du site, pas une pastille d'alerte ---------- */
.mr-form-pastille{ background:url(../img/favicon-v3.svg) center/contain no-repeat; border-radius:0; width:34px; height:34px; }
.mr-form-pastille .mr-empreinte{ display:none; }

/* ---------- Accueil 390 : la bande « Votre plan » montre le coureur au-dessus de la carte ---------- */
@media (max-width:760px){
  .mr-bande-photo{ display:block; padding:0 0 48px; }
  .mr-bande-photo__img{ position:relative; inset:auto; display:block; width:100%; height:240px; object-fit:cover; object-position:71% 60%; }
  .mr-bande-photo::before{ top:240px; background:var(--sb-encre); }
  .mr-bande-photo__in{ padding-top:30px; gap:62px; }
  .mr-sceau{ right:10px; top:-46px; width:96px; height:96px; }
}

/* ---------- Rubrique Plans : coureur sur la grève (photo distincte de l'accueil) ---------- */
.category-plans-et-allures .mr-rub-tete__photo img{ object-position:58% 50%; }

/* ---------- Contact : 3 rubriques en cartes avec pictogramme ---------- */
.mr-contact-cartes{ padding-block:56px 64px; }
.mr-contact-cartes__liste a{ background:#F7F5F0; box-shadow:0 8px 0 rgba(43,50,54,.08); padding:28px 30px 30px; }
.mr-contact-cartes__picto{ display:flex; align-items:center; justify-content:center; width:60px; height:60px; margin-bottom:4px; background:var(--sb-verre); color:var(--sb-encre); border-radius:46% 54% 42% 58% / 52% 44% 56% 48%; }
.mr-contact-cartes__picto svg{ width:32px; height:32px; }
.mr-contact-cartes__liste span:not(.mr-contact-cartes__picto){ color:var(--sb-encre); }

/* ---------- À propos : 3 portraits sur 3 colonnes ---------- */
@media (min-width:901px){ .mr-redacteurs__liste{ grid-template-columns:repeat(3,minmax(0,1fr)); justify-content:stretch; } }
/* DA-11 n°2, passe 2 : chevauchement limité aux bords arrondis à 1440, texte du galet 3 hors des courbes, cartes de tableau unies */
@media (min-width:1181px) and (max-width:1699px){
  .mr-outil--greve .mr-form-etape[data-mr-etape="2"]{ left:65%; top:65%; }
  .mr-outil--greve .mr-form-etape[data-mr-etape="3"]{ left:85.5%; top:40%; }
}
@media (min-width:1700px){ .mr-outil--greve .mr-form-etape[data-mr-etape="3"]{ left:82%; } }
@media (min-width:1181px){
  .mr-outil--greve .mr-form-etape[data-mr-etape="3"]{ padding:32px 50px 36px; }
  .mr-attente__txt{ max-width:14em; }
}
@media (max-width:640px){ .sbt-article-corps table.mr-tableau tbody tr:nth-child(even), .sbt-article-corps table.mr-tableau tbody tr{ background:#F7F5F0; } }
@media (min-width:1181px) and (max-width:1699px){ .mr-outil--greve .mr-form-etape[data-mr-etape="3"]{ top:42%; } }

/* 3e galet : champs empilés (e-mail jamais tronqué) */
.mr-outil--greve .mr-mail__champs{ grid-template-columns:1fr; gap:6px; }

/* Encadrés pour / contre des avis (filtre mr_pour_contre) */
.mr-pc{ padding:22px 26px 18px; border-radius:28px 34px 26px 36px / 32px 26px 36px 28px; }
.mr-pc--forts{ background:#DCEDE8; }
.mr-pc--faibles{ background:#EFE6EF; }
.mr-pc .sbt-encadre-titre{ margin:0 0 10px; font:400 1.125rem/1.2 var(--sb-titre); color:var(--sb-encre); }
.mr-pc__liste{ list-style:none; margin:0; padding:0; display:grid; gap:10px; }
.mr-pc__liste li{ position:relative; padding-left:30px; margin:0; line-height:1.55; }
.mr-pc__liste li::before{ position:absolute; left:0; top:.1em; width:20px; height:20px; border-radius:50%; font:600 .8125rem/20px var(--sb-titre); text-align:center; color:#fff; }
.mr-pc--forts .mr-pc__liste li::before{ content:"+"; background:#3E7F71; }
.mr-pc--faibles .mr-pc__liste li::before{ content:"–"; background:var(--sb-accent); }

/* ==========================================================================
   DA11-3 (18/10, juge n°3) — moules de corps d'article, pour TOUS les guides.
   ui-ux-pro-max + frontend-design invoqués : galets asymétriques, verre de mer, aucune nouvelle couleur.
   ========================================================================== */
/* 1. Encadré « … en chiffres » : jamais une valeur hors cadre ; sous 480 px libellé puis chiffre, l'un sous l'autre. */
sbs-jauges{ max-width:100%; overflow:hidden; }
.sbs_jauge_valeur{ white-space:normal; overflow-wrap:anywhere; min-width:0; }
@media (max-width:480px){
  sbs-jauge{ display:flex; flex-direction:column; align-items:flex-start; gap:2px; padding:12px 0; }
  .sbs_jauge_libelle{ font-size:1rem; }
  .sbs_jauge_valeur{ font-size:1.5rem; line-height:1.2; text-align:left; }
  .sbs_jauge_unite{ max-width:none; white-space:normal; }
  sbs-jauges{ padding:18px 16px 14px; }
}

/* 2. Galet-photo légendé au milieu du guide (méta _mr_photo_corps). */
.sbt-article-corps .mr-photo-corps{ margin:2.2em 0; }
.mr-photo-corps__galet{ display:block; overflow:hidden; border-radius:46px 70px 40px 76px / 62px 42px 72px 48px; background:var(--sb-fond-2); }
.mr-photo-corps__galet img{ display:block; width:100%; height:auto; aspect-ratio:4/3; object-fit:cover; margin:0; }
.mr-photo-corps--haute .mr-photo-corps__galet img{ aspect-ratio:1/1; }
.mr-photo-corps figcaption{ display:flex; flex-wrap:wrap; gap:4px 12px; align-items:baseline; margin:12px 6px 0; font:400 italic 1rem/1.45 var(--sb-texte); color:var(--sb-doux); }
.mr-photo-corps__credit{ font:400 .8125rem/1.3 var(--sb-titre); font-style:normal; color:var(--sb-doux); }

/* 3. Cartes tirées du texte (causes, verdicts) : galets sans numéro — ce n'est pas une suite. */
.sbt-article-corps ul.mr-galets-liste--libre > li{ padding:22px 24px 20px; }
.sbt-article-corps ul.mr-galets-liste--libre > li::before{ content:none; }
.sbt-article-corps ul.mr-galets-liste--libre > li strong:first-child{ color:var(--sb-ok); }

/* 4. Liste à pictos (prévention…) : un petit galet vert d'eau coché devant chaque geste. */
.sbt-article-corps ul.mr-pictos{ list-style:none; margin:1.4em 0 2em; padding:0; display:grid; gap:14px; }
.sbt-article-corps ul.mr-pictos > li{ position:relative; margin:0; padding:2px 0 0 58px; min-height:42px; line-height:1.6; }
.sbt-article-corps ul.mr-pictos > li::before{ content:""; position:absolute; left:0; top:0; transform:none; width:42px; height:40px; border-radius:46% 54% 42% 58% / 52% 44% 56% 48%;
  background:var(--sb-verre) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232B3236' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E") center / 20px no-repeat; }
.sbt-article-corps ul.mr-pictos--question > li::before{ background:var(--sb-fond-2) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232B3236' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9.2 9a3 3 0 1 1 4.3 2.7c-.9.4-1.5 1.2-1.5 2.2v.6'/%3E%3Cpath d='M12 18h.01'/%3E%3C/svg%3E") center / 22px no-repeat; }
.sbt-article-corps ul.mr-pictos > li strong:first-child{ font-family:var(--sb-titre); font-weight:400; font-size:1.0625rem; }

/* 5. Frise d'étapes (phases de soin…) : vraie suite, donc numérotée, reliée par un fil. */
.sbt-article-corps .mr-phases{ position:relative; margin:1.6em 0 2.2em; padding:0; counter-reset:mr-ph; }
.sbt-article-corps .mr-phase{ position:relative; counter-increment:mr-ph; padding:4px 0 8px 66px; }
.sbt-article-corps .mr-phase::before{ content:counter(mr-ph); position:absolute; left:0; top:0; width:46px; height:44px; display:flex; align-items:center; justify-content:center;
  background:var(--sb-ok); color:#fff; font:400 1.25rem/1 var(--sb-titre); border-radius:46% 54% 42% 58% / 52% 44% 56% 48%; }
.sbt-article-corps .mr-phase:not(:last-child)::after{ content:""; position:absolute; left:22px; top:52px; bottom:-4px; border-left:2px dashed rgba(47,97,87,.45); }
.sbt-article-corps .mr-phase__quand{ margin:0 0 2px; font:400 .9375rem/1.3 var(--sb-titre); color:var(--sb-ok); }
.sbt-article-corps .mr-phase > h3{ margin-top:0; }

/* 6. Encadré « test » (auto-diagnostic…) : galet clair avec picto genou-flexion. */
.sbt-article-corps .mr-encadre-test{ display:grid; grid-template-columns:56px minmax(0,1fr); gap:6px 18px; padding:24px 26px; background:var(--sb-surf); border-radius:34px 50px 30px 54px / 46px 30px 54px 36px; }
.sbt-article-corps .mr-encadre-test::before{ content:""; grid-row:1 / span 2; width:56px; height:54px; border-radius:46% 54% 42% 58% / 52% 44% 56% 48%;
  background:var(--sb-encre) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ECE9E2' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='4.5' r='2'/%3E%3Cpath d='M12 7v6l-3 3v5M12 13l3 3-1 5'/%3E%3C/svg%3E") center / 28px no-repeat; }
.sbt-article-corps .mr-encadre-test .sbt-encadre-titre{ margin:0; font:400 1.1875rem/1.25 var(--sb-titre); color:var(--sb-encre); }
.sbt-article-corps .mr-encadre-test p:not(.sbt-encadre-titre){ margin:0; }
@media (max-width:480px){ .sbt-article-corps .mr-encadre-test{ grid-template-columns:1fr; } .sbt-article-corps .mr-encadre-test::before{ grid-row:auto; } .sbt-article-corps .mr-phase{ padding-left:58px; } }

/* 7. FAQ : le « + » dans la bruyère du site (plus de bleu). */
.sbt-faq-liste summary::after{ background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%237A4A7E' stroke-width='2.4' stroke-linecap='round'%3E%3Cpath d='M12 6v12M6 12h12'/%3E%3C/svg%3E"); }
.sbt-faq-liste details[open]{ border-color:var(--sb-accent) !important; }

/* 8. À propos : la bande « Notre règle » garde son texte à gauche et un galet-photo dans le tiers droit. */
.mr-regle__grille{ display:grid; grid-template-columns:minmax(0,2fr) minmax(0,1fr); gap:40px; align-items:center; }
.mr-regle__photo .mr-galet{ display:block; max-width:340px; margin-left:auto; }
@media (max-width:900px){ .mr-regle__grille{ grid-template-columns:1fr; } .mr-regle__photo .mr-galet{ max-width:260px; margin:0; } }

/* 9. Pied clair : 2e rangée de galets plus petits, les derniers guides (même forme, plus dense). */
.mr-pied__guides{ margin-top:22px; }
.mr-pied__guides-titre{ margin:0 0 12px; text-align:center; font:400 1rem/1.3 var(--sb-titre); color:var(--sb-encre); }
.mr-pied__guides ul{ display:flex; flex-wrap:wrap; justify-content:center; gap:10px 12px; list-style:none; margin:0; padding:0; }
.mr-pied__guide{ display:inline-flex; align-items:center; min-height:48px; max-width:320px; padding:8px 20px; background:rgba(236,233,226,.72); color:var(--sb-encre); text-decoration:none;
  font:400 .9375rem/1.25 var(--sb-titre); border-radius:26px 34px 24px 36px / 30px 24px 36px 26px; transition:background .25s; }
.mr-pied__guides li:nth-child(even) .mr-pied__guide{ border-radius:34px 24px 36px 26px / 24px 32px 26px 36px; }
.mr-pied__guide:hover{ background:var(--sb-fond); }
@media (max-width:640px){ .mr-pied__guide{ max-width:100%; } }

/* ==========================================================================
   DA11-4 (18/10, juge n°4) — ui-ux-pro-max + frontend-design invoqués : duel de marques en galets, « Bon à savoir »,
   « À lire aussi » toujours pleine largeur, bouton de la fiche auteur centré, chiffres et unités insécables. Aucune couleur neuve.
   ========================================================================== */
/* 1. Fiche auteur : le texte du bouton au milieu de sa pastille. */
.sbt-auteur-actions .sbt-btn{ display:inline-flex; align-items:center; justify-content:center; line-height:1.1; padding-top:0; padding-bottom:0; }
/* 2. Tuiles de distance (formulaire des articles et des pages, pas celui du premier écran) : « 10 km » ne se coupe jamais ;
   sous 760 px, chaque tuile prend la largeur de son mot au lieu d'un quart imposé. */
.mr-outil:not(.mr-outil--greve) .mr-tuile b{ white-space:nowrap; }
@media (max-width:760px){
  .mr-outil:not(.mr-outil--greve) .mr-tuiles{ display:flex; flex-wrap:wrap; gap:6px; }
  .mr-outil:not(.mr-outil--greve) .mr-tuile{ flex:1 1 auto; padding:10px 10px; }
}
/* 3. « … en chiffres » sous 480 px : libellé, puis valeur et unité collées sur la même ligne (« 30 ° », « 5 à 14 % »). */
@media (max-width:480px){
  sbs-jauge{ display:block; }
  .sbs_jauge_libelle{ display:block; margin-bottom:2px; }
  .sbs_jauge_valeur{ display:inline; white-space:nowrap; }
  .sbs_jauge_unite{ display:inline; margin-left:.3em; white-space:normal; }
}
/* 4. « À lire aussi » pleine largeur : les autres liens choisis dans le guide, sous les cartes. */
.mr-alire__plus{ margin:22px 0 0; font:400 1rem/1.5 var(--sb-titre); color:var(--sb-doux); }
.mr-alire__plus a{ color:var(--sb-accent); }
/* 5. Duel de marques : deux galets côte à côte, un « ou » en galet ardoise entre les deux. */
.sbt-article-corps .mr-duel{ position:relative; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; margin:1.6em 0 2em; }
.sbt-article-corps .mr-duel__cote{ padding:22px 26px 24px; background:var(--sb-carte); color:var(--sb-encre); border-radius:30px 44px 26px 48px / 40px 26px 48px 30px; box-shadow:0 6px 0 rgba(43,50,54,.08); }
.sbt-article-corps .mr-duel__cote--b{ background:var(--sb-verre-pale); border-radius:44px 28px 48px 26px / 26px 42px 30px 46px; }
.sbt-article-corps .mr-duel__marque{ margin:0; font:400 1.375rem/1.15 var(--sb-titre); }
.sbt-article-corps .mr-duel__techno{ margin:4px 0 12px; font:400 .9375rem/1.3 var(--sb-titre); letter-spacing:.02em; color:var(--sb-encre); opacity:.82; }
.sbt-article-corps .mr-duel__cote p:not([class]){ margin:0; font-size:1.0625rem; line-height:1.6; }
.sbt-article-corps .mr-duel__ou{ position:absolute; left:50%; top:50%; transform:translate(-50%,-50%); display:flex; align-items:center; justify-content:center; width:44px; height:42px; margin:0;
  background:var(--sb-encre); color:var(--sb-fond); font:400 1rem/1 var(--sb-titre); border-radius:46% 54% 42% 58% / 52% 44% 56% 48%; box-shadow:0 0 0 5px var(--sb-fond); }
@media (max-width:640px){
  .sbt-article-corps .mr-duel{ grid-template-columns:1fr; gap:0; }
  .sbt-article-corps .mr-duel__ou{ position:relative; left:auto; top:auto; transform:none; justify-self:center; margin:-14px 0; z-index:1; }
  .sbt-article-corps .mr-duel__cote{ padding:20px 20px 22px; }
}
/* 6. Encadré « Bon à savoir » : même galet que l'encadré « test », picto « i ». */
.sbt-article-corps .mr-encadre-bon::before{ background:var(--sb-ok) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ECE9E2' stroke-width='2.2' stroke-linecap='round'%3E%3Cpath d='M12 11v7'/%3E%3Ccircle cx='12' cy='6.5' r='1.2' fill='%23ECE9E2'/%3E%3C/svg%3E") center / 28px no-repeat; }

/* ==========================================================================
   DA11-5 (18/10, juge n°5) — ui-ux-pro-max + frontend-design invoqués : bande ardoise qui coupe la grille des rubriques,
   en-tête d'article compacté à 390 (photo visible dès l'arrivée), 9 aliments en cartes, tuiles du calculateur en 2 × 2.
   Aucune couleur ni police neuve : uniquement les jetons du thème.
   ========================================================================== */
/* 1. Rubriques : après 6 cartes, le guide de référence en bande ardoise ; la suite de la grille reprend dessous. */
.mr-rub-liste{ padding-bottom:64px; }
.mr-rub-liste--suite{ padding-top:64px; }
.mr-rub-relais{ padding-block:60px; }
.mr-rub-relais__in{ display:grid; grid-template-columns:240px minmax(0,1fr); gap:52px; align-items:center; max-width:1000px; }
.mr-rub-relais__photo{ display:block; }
.mr-rub-relais__photo .mr-galet{ width:240px; }
.mr-rub-relais h2{ margin:6px 0 12px; font:400 clamp(1.75rem, 1.2rem + 1.4vw, 2.5rem)/1.15 var(--sb-titre); max-width:20em; }
.mr-rub-relais h2 a{ color:#fff; text-decoration:none; }
.mr-rub-relais h2 a:hover{ text-decoration:underline; text-underline-offset:.15em; text-decoration-thickness:2px; }
.mr-rub-relais__resume{ margin:0 0 24px; max-width:38em; color:var(--sb-fond); font-size:1.0625rem; line-height:1.6; }
@media (max-width:760px){
  .mr-rub-liste{ padding-bottom:48px; }
  .mr-rub-liste--suite{ padding-top:48px; }
  .mr-rub-relais{ padding-block:44px 48px; }
  .mr-rub-relais__in{ grid-template-columns:1fr; gap:22px; }
  .mr-rub-relais__photo .mr-galet{ width:170px; }
}
/* 2. En-tête d'article sous 760 px : fil d'Ariane sur une ligne, titre, puis la photo AVANT le chapô et l'auteur,
      pour que titre + une vraie part de la photo tiennent dans le premier écran (390 × 700). */
@media (max-width:760px){
  .mr-aentete__grille{ display:flex; flex-direction:column; gap:0; }
  .mr-aentete__texte{ display:contents; }
  .mr-aentete__texte > *{ position:relative; z-index:2; }
  .mr-aentete .sbt-fil-ariane{ order:1; padding-block:10px 8px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
  .mr-aentete .sbt-article-pastille{ order:2; align-self:flex-start; margin-bottom:12px; }
  .mr-aentete h1{ order:3; }
  .mr-aentete__photo{ order:4; margin-top:18px; }
  .mr-aentete__photo .mr-galet{ height:210px; }
  .mr-aentete .sbt-article-chapo{ order:5; margin-top:20px; }
  .mr-aentete .sbt-article-meta{ order:6; }
}
/* 3. « Les 9 aliments en un coup d'œil » : une carte par aliment (photo, rang, moment en pastille, pour qui / limite). */
.sbt-article-corps .mr-aliments{ margin:1.8em 0 2.2em; padding:24px 22px 22px; background:var(--sb-fond-2); border-radius:34px 46px 30px 50px / 44px 30px 50px 34px; }
.sbt-article-corps .mr-aliments__titre{ margin:0 0 16px; font:400 1.375rem/1.2 var(--sb-titre); color:var(--sb-encre); }
.sbt-article-corps ul.mr-aliments__liste{ list-style:none; margin:0; padding:0; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; }
.sbt-article-corps ul.mr-aliments__liste > li{ margin:0; padding:0; display:flex; flex-direction:column; overflow:hidden; background:#fff; border-radius:26px 32px 24px 34px / 30px 24px 34px 26px; box-shadow:0 6px 0 rgba(43,50,54,.08); }
.sbt-article-corps ul.mr-aliments__liste > li:nth-child(even){ border-radius:32px 24px 34px 26px / 24px 32px 26px 34px; }
.sbt-article-corps ul.mr-aliments__liste > li::before{ content:none; display:none; }
.sbt-article-corps .mr-aliment__photo{ display:block; aspect-ratio:4/3; overflow:hidden; background:var(--sb-fond-2); }
.sbt-article-corps .mr-aliment__photo img{ display:block; width:100%; height:100%; max-width:none; margin:0; object-fit:cover; border-radius:0; box-shadow:none; }
.sbt-article-corps .mr-aliment__texte{ padding:12px 14px 16px; }
.sbt-article-corps p.mr-aliment__nom{ display:flex; gap:8px; align-items:flex-start; margin:0 0 8px; font:400 1.0625rem/1.25 var(--sb-titre); color:var(--sb-encre); }
.sbt-article-corps .mr-aliment__num{ flex:none; width:24px; height:24px; margin-top:-1px; border-radius:46% 54% 42% 58% / 52% 44% 56% 48%; background:var(--sb-encre); color:var(--sb-fond); font:500 .75rem/24px var(--sb-titre); text-align:center; }
.sbt-article-corps p.mr-aliment__quand{ display:inline-block; margin:0 0 8px; padding:4px 11px; border-radius:999px; background:var(--sb-verre-pale); color:var(--sb-encre); font:500 .8125rem/1.25 var(--sb-titre); }
.sbt-article-corps p.mr-aliment__ligne{ margin:0 0 3px; font-size:.9375rem; line-height:1.45; }
.sbt-article-corps p.mr-aliment__ligne strong{ font-family:var(--sb-titre); font-weight:600; }
@media (max-width:900px){ .sbt-article-corps ul.mr-aliments__liste{ grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width:560px){
  .sbt-article-corps .mr-aliments{ padding:20px 14px 16px; }
  .sbt-article-corps ul.mr-aliments__liste{ grid-template-columns:1fr; gap:10px; }
  .sbt-article-corps ul.mr-aliments__liste > li{ flex-direction:row; }
  .sbt-article-corps .mr-aliment__photo{ flex:0 0 104px; aspect-ratio:auto; min-height:100%; }
  .sbt-article-corps .mr-aliment__texte{ padding:10px 12px 12px; min-width:0; }
}
/* 4. Calculateur des articles et des pages sous 760 px : tuiles en 2 × 2, « Autre » ne reste plus seul sur sa ligne. */
@media (max-width:760px){
  .mr-outil:not(.mr-outil--greve) .mr-tuiles{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:6px; }
}
/* DA11-5, retouches après capture : texte ardoise sur la bande verre de mer (contraste), fil d'Ariane mobile sur une ligne,
   libellés « Pour qui / Limite » des cartes aliments en vert du site. */
.mr-rub-relais h2 a, .mr-rub-relais__resume{ color:var(--sb-encre); }
.mr-rub-relais__resume{ font-size:1.125rem; }
@media (max-width:760px){
  .mr-aentete .sbt-fil-ariane{ display:flex; flex-wrap:nowrap; gap:0 6px; align-items:baseline; }
  .mr-aentete .sbt-fil-ariane > *{ flex:none; white-space:nowrap; }
  .mr-aentete .sbt-fil-ariane > span{ flex:1 1 auto; min-width:0; overflow:hidden; text-overflow:ellipsis; }
}
.sbt-article-corps p.mr-aliment__ligne strong{ color:var(--sb-ok); }

/* ==========================================================================
   DA11-6 (18/10, juge n°6) — ui-ux-pro-max + frontend-design invoqués : encadrés à plusieurs paragraphes, repli « Détails »
   des cartes aliments, cartes côte à côte sans vide d'étirement, fil d'Ariane mobile, bouton de la bande des rubriques.
   Aucune couleur ni police neuve : uniquement les jetons du thème.
   ========================================================================== */
/* 1. Encadrés à pastille (« Bon à savoir », « test », « Le saviez-vous ») : TOUT ce qui suit la pastille reste dans la colonne
      de texte, quel que soit le nombre de paragraphes ou de listes (avant : le 2e paragraphe retombait sous la pastille). */
.sbt-article-corps .mr-encadre-test::before{ grid-column:1; grid-row:1 / span 2; align-self:start; }
.sbt-article-corps .mr-encadre-test > *{ grid-column:2; min-width:0; }
.sbt-article-corps .mr-encadre-test > * + p:not(.sbt-encadre-titre){ margin-top:.55em; }
.sbt-article-corps .mr-encadre-test > ul, .sbt-article-corps .mr-encadre-test > ol{ margin:.4em 0 0; }
.sbt-encadre--saviez::before{ grid-column:1; grid-row:1 / span 2; align-self:start; }
.sbt-encadre--saviez > *{ grid-column:2; min-width:0; }
@media (max-width:480px){
  .sbt-article-corps .mr-encadre-test::before, .sbt-encadre--saviez::before{ grid-row:auto; }
  .sbt-article-corps .mr-encadre-test > *, .sbt-encadre--saviez > *{ grid-column:1; }
}
/* 2. Cartes côte à côte : chaque carte garde sa hauteur naturelle (plus de carte courte étirée avec un grand vide).
      Le duel se centre sur la pastille « ou » ; les tuiles s'alignent en haut. */
.sbt-article-corps .mr-duel{ align-items:center; }
.sbt-article-corps ul.mr-galets-liste{ align-items:start; }
/* repli fermé : cartes d'une rangée à hauteur égale, « Détails » aligné en bas ; dès qu'un repli s'ouvre, chaque carte reprend
   sa hauteur naturelle (la carte ouverte grandit seule, ses voisines ne s'étirent pas). */
.sbt-article-corps ul.mr-aliments__liste:has(.mr-aliment__plus[open]){ align-items:start; }
/* carte ouverte (tablette et ordinateur) : elle prend toute la largeur de la boîte, photo à gauche, texte et détail à droite,
   pour un détail lisible (plus de colonne de 170 px) ; les autres cartes comblent les places libres. */
@media (min-width:561px){
  .sbt-article-corps ul.mr-aliments__liste{ grid-auto-flow:row dense; }
  .sbt-article-corps ul.mr-aliments__liste > li:has(> .mr-aliment__plus[open]){ grid-column:1 / -1; display:grid; grid-template-columns:minmax(0,1fr) minmax(0,2fr); }
  .sbt-article-corps ul.mr-aliments__liste > li:has(> .mr-aliment__plus[open]) > .mr-aliment__photo{ grid-column:1; grid-row:1 / span 2; aspect-ratio:auto; min-height:100%; }
  .sbt-article-corps ul.mr-aliments__liste > li:has(> .mr-aliment__plus[open]) > .mr-aliment__texte{ grid-column:2; grid-row:1; padding:16px 20px 4px; }
  .sbt-article-corps ul.mr-aliments__liste > li:has(> .mr-aliment__plus[open]) > .mr-aliment__plus{ grid-column:2; grid-row:2; margin:0 20px 16px; }
}
/* 3. Cartes aliments : une ligne « Atout » et un repli « Détails » qui range le détail de chaque aliment dans sa carte. */
.sbt-article-corps ul.mr-aliments__liste > li > .mr-aliment__plus{ margin:auto 14px 12px; border-top:1px solid var(--sb-filet); }
.sbt-article-corps .mr-aliment__plus > summary{ display:flex; align-items:center; justify-content:space-between; gap:10px; min-height:44px; padding:8px 0 0;
  list-style:none; cursor:pointer; font:400 .9375rem/1.2 var(--sb-titre); color:var(--sb-accent); }
.sbt-article-corps .mr-aliment__plus > summary::-webkit-details-marker{ display:none; }
.sbt-article-corps .mr-aliment__plus > summary::after{ content:""; flex:none; width:26px; height:25px; border-radius:46% 54% 42% 58% / 52% 44% 56% 48%; background:var(--sb-fond-2)
  url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%237A4A7E' stroke-width='2.6' stroke-linecap='round'%3E%3Cpath d='M12 6v12M6 12h12'/%3E%3C/svg%3E") center / 14px no-repeat;
  transition:transform .2s ease; }
.sbt-article-corps .mr-aliment__plus[open] > summary::after{ transform:rotate(45deg); }
.sbt-article-corps .mr-aliment__plus > summary:focus-visible{ outline:2px solid var(--sb-accent); outline-offset:3px; border-radius:6px; }
.sbt-article-corps .mr-aliment__plus > summary:hover{ color:var(--sb-accent-fonce); }
.sbt-article-corps .mr-aliment__detail{ margin:6px 0 2px; }
.sbt-article-corps .mr-aliment__detail p{ margin:0 0 8px; font-size:.9375rem; line-height:1.55; }
.sbt-article-corps .mr-aliment__detail p:last-child{ margin-bottom:0; }
.sbt-article-corps .mr-aliment__detail strong{ display:block; font:400 .9375rem/1.3 var(--sb-titre); color:var(--sb-ok); }
@media (prefers-reduced-motion:reduce){ .sbt-article-corps .mr-aliment__plus > summary::after{ transition:none; } }
@media (max-width:560px){
  /* photo à gauche, texte à droite, repli « Détails » sur toute la largeur de la carte, dessous */
  .sbt-article-corps .mr-aliments{ padding:16px 10px 12px; }
  .sbt-article-corps ul.mr-aliments__liste{ gap:8px; }
  .sbt-article-corps ul.mr-aliments__liste > li{ display:grid; grid-template-columns:84px minmax(0,1fr); }
  .sbt-article-corps p.mr-aliment__nom{ margin-bottom:6px; font-size:1rem; }
  .sbt-article-corps p.mr-aliment__quand{ margin-bottom:6px; }
  .sbt-article-corps p.mr-aliment__ligne{ margin-bottom:1px; font-size:.875rem; line-height:1.4; }
  .sbt-article-corps ul.mr-aliments__liste > li > .mr-aliment__photo{ grid-column:1; grid-row:1; min-height:0; height:100%; }
  .sbt-article-corps ul.mr-aliments__liste > li > .mr-aliment__texte{ grid-column:2; grid-row:1; padding:9px 10px 6px; }
  .sbt-article-corps ul.mr-aliments__liste > li > .mr-aliment__plus{ grid-column:1 / -1; grid-row:2; margin:0 10px 2px; }
  .sbt-article-corps .mr-aliment__plus > summary{ padding-top:4px; }
}
/* 4. Fil d'Ariane sous 760 px : il ne dépasse plus l'écran, le titre du guide finit par « … ». */
@media (max-width:760px){
  .mr-aentete .sbt-fil-ariane{ align-self:stretch; width:100%; max-width:100%; min-width:0; box-sizing:border-box; }
}
/* 5. Bande « Le guide à lire en premier » des rubriques : bouton plein bruyère (texte blanc 6,8:1), comme partout ailleurs. */
.mr-rub-relais .mr-rub-relais__btn{ box-shadow:0 6px 0 rgba(43,50,54,.14); }
.mr-cache{ position:absolute !important; width:1px; height:1px; margin:-1px; padding:0; overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap; border:0; }

/* DA11-7 (juge n°7, mineur 6) : intertitres de corps H3/H4 nettement distincts du texte courant (Spectral 19 px).
   Tenor Sans n'a qu'une graisse (synthèse de gras désactivée) : le contraste passe par la taille, la couleur
   verre de mer profond (7,1:1 sur sable) et un petit galet turquoise devant le H3, motif de la DA. */
.sbt-article-corps > h3{ position:relative; font:400 clamp(1.5rem, 1.1rem + .75vw, 1.75rem)/1.22 var(--sb-titre); letter-spacing:-.005em; color:var(--sb-ok); margin:1.9em 0 .5em; padding-left:30px; }
.sbt-article-corps > h3::before{ content:""; position:absolute; left:0; top:.36em; width:18px; height:13px; background:var(--sb-verre); border-radius:46% 54% 42% 58% / 52% 44% 56% 48%; }
.sbt-article-corps > h4{ font:400 1.3125rem/1.3 var(--sb-titre); color:var(--sb-encre); margin:1.6em 0 .4em; padding-bottom:6px; border-bottom:2px solid var(--sb-verre-pale); display:table; }
@media (max-width:760px){ .sbt-article-corps > h3{ font-size:1.375rem; padding-left:26px; } .sbt-article-corps > h3::before{ width:15px; height:11px; } .sbt-article-corps > h4{ font-size:1.1875rem; } }

/* ==========================================================================
   DA11-8 (19/10, juge n°8) — ui-ux-pro-max + frontend-design invoqués.
   1. Moule contre : une liste de défauts n'a jamais de coche verte. Le filtre mr_pour_contre la range dans
      l'encadré prune avec un signe moins (sens porté par le signe ET la couleur, jamais la couleur seule).
      Les cartes à titre gras (« Poids » + texte) gardent leur titre sur sa propre ligne.
   2. À propos à 390 : la photo en galet remonte dans le premier écran (surtitre, titre, galet, puis chapô).
   ========================================================================== */
.mr-pc__liste li > strong:first-child{ display:block; font:400 1.0625rem/1.3 var(--sb-titre); color:var(--sb-encre); margin-bottom:2px; }
@media (max-width:640px){
  .mr-apropos-hero{ padding:18px 0 40px; }
  .mr-apropos-hero__grille{ display:flex; flex-direction:column; gap:0; }
  .mr-apropos-hero__texte{ display:contents; }
  .mr-apropos-hero .mr-surtitre{ order:1; margin:0 0 6px; }
  .mr-apropos-hero h1{ order:2; font-size:2rem; line-height:1.08; margin:0; }
  .mr-apropos-hero__photo{ order:3; width:min(62vw,240px); margin:16px 6px 0 auto; }
  .mr-apropos-hero__chapo{ order:4; margin:18px 0 0; font-size:1.125rem; }
  .mr-apropos-hero__zone{ max-width:calc(100% - 16px); white-space:nowrap; left:50%; right:auto; margin-inline:0; transform:translateX(-50%); bottom:8%; font-size:.8125rem; }
  .mr-rides--apropos{ width:280px; height:280px; left:-60px; top:-40px; }
}
/* DA11-8 bis (à publier au prochain passage) : le signe du moule pour/contre gagnait contre la puce générique des listes d'article
   (spécificité) — le « – » / « + » s'affiche enfin, au lieu d'une simple puce prune. */
.sbt-article-corps .mr-pc ul.mr-pc__liste > li{ padding-left:34px; }
.sbt-article-corps .mr-pc ul.mr-pc__liste > li::before{ content:"–"; left:0; top:.15em; width:22px; height:22px; border-radius:50%; transform:none; font:600 .875rem/22px var(--sb-titre); text-align:center; color:#fff; background:var(--sb-accent); }
.sbt-article-corps .mr-pc--forts ul.mr-pc__liste > li::before{ content:"+"; background:#3E7F71; }
