/* Polices auto-hébergées (fichiers variables Google Fonts, sous-ensemble latin, vérifiés 10/10/2026) :
   rethink-sans-var.woff2 (axe wght, servi 700-800), onest-var.woff2 (axe wght, servi 400-600). */
@font-face{font-family:'Rethink Sans';font-style:normal;font-weight:700 800;font-display:swap;src:url('../fonts/rethink-sans-var.woff2?v=2') 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:'Onest';font-style:normal;font-weight:400 600;font-display:swap;src:url('../fonts/onest-var.woff2?v=2') 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;}

/*
Theme Name: Un Mois, Un Projet — m1p-trente
Description: Thème de 1month1project.com : la barre du mois (grille de 30 jours, barres arrondies, plage surlignée).
Version: 1.0.0
Text Domain: m1p-trente
*/

/* ===== Jetons (DA §4-6) ===== */
:root{
	--mois-fond:#F6F5FB; --mois-blanc:#FFFFFF; --mois-encre:#15123A; --mois-texte2:#504C6B; --mois-filet:#E2E0F0;
	--mois-iris:#4B3BFF; --mois-iris-fonce:#3A2BE0; --mois-jaune:#FFE14D; --mois-iris-pale:#ECEAFF; --mois-vert:#0E7C66; --mois-vigilance:#C2410C;
	--f-titre:'Rethink Sans', ui-sans-serif, system-ui, sans-serif; --f-texte:'Onest', ui-sans-serif, system-ui, sans-serif;
	--cont:1280px; --gout:16px; --entete:72px;
	--ombre-carte:0 1px 2px rgba(21,18,58,.06), 0 14px 32px -10px rgba(21,18,58,.16);
	--ombre-carte-forte:0 2px 4px rgba(21,18,58,.06), 0 24px 48px -14px rgba(21,18,58,.24);
	--ombre-form:0 50px 100px -20px rgba(21,18,58,.25), 0 30px 60px -30px rgba(0,0,0,.30);
	--halo-iris:0 40px 80px -30px rgba(75,59,255,.35);
	/* Habillage des blocs figés */
	--sb-conteneur:1112px; --sb-lecture:720px; --sb-rail:340px; --sb-gouttiere:24px;
	--sb-accent:var(--mois-iris); --sb-accent-clair:var(--mois-iris-pale); --sb-encre:var(--mois-encre); --sb-doux:var(--mois-texte2);
	--sb-filet:var(--mois-filet); --sb-fond-carte:#fff; --sb-surf:var(--mois-fond); --sb-fonce:var(--mois-encre); --sb-sur-fonce:#fff;
	--sb-rayon:18px; --sb-rayon-grand:24px; --sb-ombre:var(--ombre-carte); --sb-ombre-forte:var(--ombre-carte-forte);
	--sb-titre:var(--f-titre); --sb-texte:var(--f-texte);
}
@media (min-width:768px){ :root{ --gout:32px; } }
@media (min-width:1360px){ :root{ --gout:80px; } }
@media (min-width:1700px){ :root{ --cont:1440px; --sb-lecture:760px; --sb-rail:360px; --sb-conteneur:1172px; } }
@media (max-width:1099px){ :root{ --entete:56px; } }

/* ===== Base ===== */
*,*::before,*::after{ box-sizing:border-box; }
html{ -webkit-text-size-adjust:100%; scroll-padding-top:calc(var(--entete) + 20px); }
body{ margin:0; background:#fff; color:var(--mois-encre); font-family:var(--f-texte); font-size:17px; line-height:1.65; font-weight:400; text-rendering:optimizeLegibility; -webkit-font-smoothing:antialiased; overflow-x:clip; }
img,svg,video{ max-width:100%; height:auto; display:block; }
a{ color:var(--mois-iris); text-underline-offset:.18em; text-decoration-thickness:1px; }
a:hover{ color:var(--mois-iris-fonce); }
h1,h2,h3,h4{ font-family:var(--f-titre); color:var(--mois-encre); line-height:1.15; margin:0; font-weight:800; letter-spacing:-.015em; }
p{ margin:0 0 1em; }
button,input,select,textarea{ font:inherit; color:inherit; }
:focus-visible{ outline:3px solid var(--mois-iris); outline-offset:3px; border-radius:6px; }
.m1p-vh{ position:absolute!important; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap; }
.m1p-saut{ position:absolute; left:-999px; top:8px; z-index:200; background:var(--mois-encre); color:#fff; padding:10px 16px; border-radius:999px; }
.m1p-saut:focus{ left:16px; }
.m1p-main{ display:block; }
.m1p-cont{ width:min(var(--cont), 100% - 2*var(--gout)); margin-inline:auto; position:relative; }
::selection{ background:var(--mois-jaune); color:var(--mois-encre); }

/* ===== En-tête collant ===== */
.m1p-entete{ position:sticky; top:0; z-index:60; background:rgba(255,255,255,.94); backdrop-filter:saturate(1.4) blur(10px); border-bottom:1px solid var(--mois-filet); }
.admin-bar .m1p-entete{ top:32px; }
.m1p-entete-int{ width:min(var(--cont), 100% - 2*var(--gout)); margin-inline:auto; height:var(--entete); display:flex; align-items:center; gap:28px; }
.m1p-logo{ display:flex; align-items:center; gap:10px; text-decoration:none; color:var(--mois-encre); flex-shrink:0; }
.m1p-logo-marque{ width:40px; height:40px; }
.m1p-logo-mot{ font-family:var(--f-titre); font-weight:800; font-size:19px; letter-spacing:-.02em; white-space:nowrap; line-height:1; }
.m1p-logo-mot b{ color:var(--mois-iris); font-weight:800; }
.m1p-logo--blanc{ color:#fff; } .m1p-logo--blanc .m1p-logo-mot b{ color:var(--mois-jaune); }
.m1p-nav{ flex:1; display:flex; justify-content:center; }
.m1p-nav ul{ list-style:none; margin:0; padding:0; display:flex; gap:4px; }
.m1p-nav a{ position:relative; display:block; padding:10px 12px; font-size:15px; font-weight:500; color:var(--mois-encre); text-decoration:none; white-space:nowrap; border-radius:999px; }
.m1p-nav a::after{ content:""; position:absolute; left:12px; right:12px; bottom:4px; height:4px; border-radius:999px; background:var(--mois-jaune); transform:scaleX(0); transform-origin:left; transition:transform .25s ease; }
.m1p-nav a:hover::after,.m1p-nav a[aria-current]::after{ transform:scaleX(1); }
.m1p-nav a:hover{ color:var(--mois-encre); background:var(--mois-iris-pale); }
.m1p-entete-cta{ flex-shrink:0; }
.m1p-entete .m1p-nav-cta-mobile,.m1p-entete .m1p-menu-btn{ display:none; }
@media (max-width:1359px){ .m1p-nav a{ padding:10px 9px; font-size:14.5px; } .m1p-entete-int{ gap:18px; } }
@media (max-width:1099px){
	.m1p-entete-int{ gap:12px; }
	.m1p-logo-marque{ width:34px; height:34px; } .m1p-logo-mot{ font-size:17px; }
	.m1p-entete .m1p-entete-cta{ display:none; }
	.m1p-entete .m1p-menu-btn{ display:inline-flex; flex-direction:column; justify-content:center; gap:5px; margin-left:auto; width:48px; height:48px; border:0; background:var(--mois-iris-pale); border-radius:14px; padding:0 13px; cursor:pointer; }
	.m1p-menu-btn span{ display:block; width:22px; height:2.5px; flex-shrink:0; border-radius:2px; background:var(--mois-encre); transition:transform .2s; }
	.m1p-menu-btn[aria-expanded="true"] span:nth-child(1){ transform:translateY(7.5px) rotate(45deg); }
	.m1p-menu-btn[aria-expanded="true"] span:nth-child(2){ opacity:0; }
	.m1p-menu-btn[aria-expanded="true"] span:nth-child(3){ transform:translateY(-7.5px) rotate(-45deg); }
	/* Le flou d'arrière-plan faisait de l'en-tête le cadre du panneau fixe (52 px de haut, recouvert par la page) : retiré en mobile, panneau à la hauteur de l'écran, au-dessus de tout. */
	.m1p-entete{ backdrop-filter:none; -webkit-backdrop-filter:none; background:#fff; }
	.m1p-nav{ position:fixed; left:0; right:0; top:var(--entete); bottom:auto; height:calc(100vh - var(--entete)); height:calc(100dvh - var(--entete)); z-index:70; background:#fff; flex-direction:column; justify-content:flex-start; padding:20px 16px 32px; gap:20px; transform:translateY(-8px); opacity:0; visibility:hidden; transition:opacity .2s, transform .2s, visibility .2s; overflow-y:auto; }
	.m1p-nav.est-ouvert{ opacity:1; visibility:visible; transform:none; }
	.m1p-nav ul{ flex-direction:column; gap:8px; }
	.m1p-nav a{ font-size:19px; font-weight:600; padding:16px 18px; border:1px solid var(--mois-filet); border-radius:16px; background:var(--mois-fond); }
	.m1p-nav a::after{ left:18px; right:auto; width:48px; bottom:8px; }
	.m1p-entete .m1p-nav-cta-mobile{ display:flex; }
	.m1p-nav .m1p-nav-cta-mobile{ background:var(--mois-iris); color:#fff; border:0; border-radius:999px; min-height:56px; font-size:17px; font-weight:600; justify-content:center; }
	.m1p-nav .m1p-nav-cta-mobile::after{ display:none; }
	body.m1p-menu-ouvert{ overflow:hidden; }
}

/* ===== Boutons (gros, partout) ===== */
.m1p-btn{ display:inline-flex; align-items:center; justify-content:center; gap:10px; min-height:52px; padding:0 26px; border-radius:999px; border:2px solid transparent; font-family:var(--f-texte); font-weight:600; font-size:16.5px; line-height:1.1; text-decoration:none; cursor:pointer; white-space:nowrap; transition:background .2s, transform .15s, box-shadow .2s, color .2s; }
.m1p-btn--plein{ background:var(--mois-iris); color:#fff; box-shadow:0 10px 22px -10px rgba(75,59,255,.7); }
.m1p-btn--plein:hover{ background:var(--mois-iris-fonce); color:#fff; transform:translateY(-1px); }
.m1p-btn--contour{ background:#fff; color:var(--mois-iris); border-color:var(--mois-iris); }
.m1p-btn--contour:hover{ background:var(--mois-iris-pale); color:var(--mois-iris-fonce); }
.m1p-btn--large{ min-height:58px; font-size:17.5px; padding:0 30px; }
.m1p-btn[disabled]{ opacity:.42; cursor:not-allowed; box-shadow:none; transform:none; }
.m1p-entete .m1p-btn{ min-height:46px; font-size:15.5px; padding:0 22px; }
.m1p-lien-fleche{ display:inline-flex; align-items:center; gap:8px; font-weight:600; text-decoration:none; white-space:nowrap; }
.m1p-lien-fleche::after{ content:""; width:18px; height:2px; background:currentColor; border-radius:2px; box-shadow:4px 0 0 currentColor; transition:width .2s; }
.m1p-lien-fleche:hover::after{ width:26px; }
.m1p-lien-fleche--clair{ color:var(--mois-jaune); } .m1p-lien-fleche--clair:hover{ color:#fff; }

/* ===== Fond « papier de planning » : 30 filets pointillés ===== */
.m1p-grille-fond{ position:absolute; inset:0; pointer-events:none; overflow:hidden; z-index:0; }
.m1p-grille-fond::before{ content:""; position:absolute; top:0; bottom:0; left:50%; width:min(var(--cont), 100% - 2*var(--gout)); transform:translateX(-50%);
	background:repeating-linear-gradient(90deg, var(--mois-filet) 0 1px, transparent 1px calc(100% / 30)); border-right:1px solid var(--mois-filet);
	-webkit-mask:repeating-linear-gradient(180deg,#000 0 4px,transparent 4px 9px); mask:repeating-linear-gradient(180deg,#000 0 4px,transparent 4px 9px); }

/* Règle J1…J30 */
.m1p-jours{ display:flex; position:relative; z-index:2; font-size:11px; font-weight:600; letter-spacing:.06em; font-variant-numeric:tabular-nums; color:var(--mois-texte2); }
.m1p-jour{ flex:1 1 0; min-width:0; padding:6px 0 0 4px; border-left:1px solid var(--mois-filet); line-height:1; }
.m1p-jour.est-mineur{ color:transparent; }
.m1p-jour.est-borne{ color:var(--mois-iris); font-weight:700; }
.m1p-jour.est-actif{ border-left-color:var(--mois-iris); }

/* Mini-règle de plage (cartes, en-têtes) */
.m1p-regle{ position:relative; display:block; height:12px; width:100%; background:repeating-linear-gradient(90deg, var(--mois-filet) 0 1.5px, transparent 1.5px calc(100% / 30)); border-right:1.5px solid var(--mois-filet); }
.m1p-regle-plage{ position:absolute; top:3px; bottom:3px; left:calc(var(--d) / 30 * 100%); width:calc((var(--f) - var(--d)) / 30 * 100%); background:var(--mois-jaune); border-radius:999px; box-shadow:inset 0 0 0 1px rgba(21,18,58,.08); transform-origin:left; transition:transform .5s cubic-bezier(.2,.8,.2,1); }
.m1p-regle--piste{ height:16px; } .m1p-regle--piste .m1p-regle-plage{ top:3px; bottom:3px; }
.m1p-regle--large{ height:16px; margin-top:28px; background:repeating-linear-gradient(90deg, rgba(255,255,255,.28) 0 1.5px, transparent 1.5px calc(100% / 30)); border-right-color:rgba(255,255,255,.28); }

/* Pastilles, sur-titres, titres de section */
.m1p-pastille{ display:inline-flex; align-items:center; min-height:28px; padding:0 12px; border-radius:999px; background:#fff; color:var(--mois-encre); font-size:12.5px; font-weight:600; line-height:1; white-space:nowrap; text-decoration:none; box-shadow:0 4px 12px -4px rgba(21,18,58,.25); }
.m1p-pastille--iris{ background:var(--mois-iris); color:#fff; box-shadow:none; }
.m1p-pastille--iris:hover{ color:#fff; background:var(--mois-iris-fonce); }
.m1p-pastille--jaune{ background:var(--mois-jaune); color:var(--mois-encre); box-shadow:none; }
.m1p-pastille-info{ display:inline-flex; align-items:center; gap:8px; min-height:32px; padding:0 14px; border-radius:999px; background:var(--mois-iris-pale); color:var(--mois-encre); font-size:13.5px; font-weight:500; margin:0; }
.m1p-point{ width:8px; height:8px; border-radius:50%; background:var(--mois-iris); box-shadow:0 0 0 4px rgba(75,59,255,.16); }
.m1p-surtitre{ font-size:13px; font-weight:600; letter-spacing:.08em; text-transform:uppercase; color:var(--mois-iris); margin:0 0 10px; }
.m1p-surtitre--jaune{ color:var(--mois-jaune); }
.m1p-h2{ font-size:clamp(30px, 2.8vw, 46px); font-weight:800; letter-spacing:-.02em; line-height:1.06; }
.m1p-section-tete{ margin-bottom:32px; max-width:760px; }
.m1p-section-tete--ligne{ max-width:none; display:flex; align-items:flex-end; justify-content:space-between; gap:24px; flex-wrap:wrap; }
.m1p-surligne{ color:var(--mois-iris); position:relative; display:inline-block; white-space:nowrap; z-index:0; }
.m1p-surligne::after{ content:""; position:absolute; left:-.04em; right:-.06em; bottom:.04em; height:.32em; background:var(--mois-jaune); border-radius:.08em; transform:rotate(-1deg); z-index:-1; transform-origin:left; }
@keyframes m1p-trait{ from{ transform:rotate(-1deg) scaleX(0); } to{ transform:rotate(-1deg) scaleX(1); } }

/* ===== Bandes de section ===== */
.m1p-section{ position:relative; }
.m1p-bande{ padding:72px 0; }
.m1p-bande > .m1p-cont{ z-index:1; }
.m1p-bande--lavande{ background:var(--mois-fond); }
.m1p-bande--blanc{ background:#fff; }
.m1p-bande--nuit{ background:var(--mois-encre); color:#fff; }
.m1p-bande--nuit .m1p-h2{ color:#fff; }
.m1p-bande--iris{ background:var(--mois-iris); color:#fff; }
.m1p-bande--iris .m1p-h2{ color:#fff; }
@media (max-width:767px){ .m1p-bande{ padding:52px 0; } .m1p-section-tete{ margin-bottom:24px; } }

/* ===== Cartes ===== */
.m1p-grille-3{ display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
@media (max-width:1023px){ .m1p-grille-3{ grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width:640px){ .m1p-grille-3{ grid-template-columns:1fr; gap:16px; } }
.m1p-carte{ background:#fff; border:1px solid var(--mois-filet); border-radius:18px; box-shadow:var(--ombre-carte); transition:transform .25s cubic-bezier(.2,.8,.2,1), box-shadow .25s; min-width:0; }
.m1p-carte[hidden]{ display:none; }
.m1p-carte:hover{ transform:translateY(-3px); box-shadow:var(--ombre-carte-forte); }
.m1p-carte-lien{ display:flex; flex-direction:column; height:100%; color:inherit; text-decoration:none; padding:8px; }
.m1p-carte-photo{ position:relative; display:block; border-radius:14px; overflow:hidden; aspect-ratio:16/10; max-height:220px; background:var(--mois-iris-pale); }
.m1p-carte-photo img,.m1p-carte-photo .m1p-repli{ width:100%; height:100%; object-fit:cover; transition:transform .6s cubic-bezier(.2,.8,.2,1); }
.m1p-carte:hover .m1p-carte-photo img{ transform:scale(1.04); }
.m1p-carte-photo .m1p-pastille{ position:absolute; left:10px; top:10px; }
.m1p-carte-corps{ display:flex; flex-direction:column; gap:10px; padding:14px 10px 8px; flex:1; }
.m1p-carte-titre{ font-family:var(--f-titre); font-weight:700; font-size:19px; line-height:1.25; letter-spacing:-.01em; color:var(--mois-encre); display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden; }
.m1p-carte-chapo{ color:var(--mois-texte2); font-size:15.5px; line-height:1.55; display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden; }
.m1p-carte-pied{ margin-top:auto; display:grid; grid-template-columns:1fr auto; align-items:center; gap:6px 12px; padding-top:6px; font-size:12.5px; color:var(--mois-texte2); }
.m1p-carte-pied .m1p-regle{ grid-column:1 / -1; }
.m1p-carte-plage{ font-weight:600; color:var(--mois-encre); }
.m1p-carte-date{ text-align:right; font-variant-numeric:tabular-nums; }
.m1p-carte:hover .m1p-regle-plage{ transform:scaleX(1.08); }
.m1p-repli{ display:block; width:100%; height:100%; min-height:120px; background:
	linear-gradient(100deg, transparent 18%, var(--mois-jaune) 18% 34%, transparent 34%) 0 70%/100% 14% no-repeat,
	linear-gradient(100deg, transparent 8%, var(--mois-iris) 8% 62%, transparent 62%) 0 45%/100% 16% no-repeat,
	repeating-linear-gradient(90deg, rgba(75,59,255,.16) 0 1px, transparent 1px calc(100%/30)), var(--mois-iris-pale); }

/* Case du mois (dates) */
.m1p-case{ display:inline-flex; flex-direction:column; align-items:center; justify-content:center; width:56px; height:56px; flex-shrink:0; border-radius:14px; background:rgba(255,255,255,.1); color:#fff; line-height:1; font-variant-numeric:tabular-nums; }
.m1p-case b{ font-family:var(--f-titre); font-weight:800; font-size:24px; }
.m1p-case span{ font-size:12px; font-weight:600; margin-top:3px; }

/* Pilules (filtres, sélecteurs) */
.m1p-pilules,.m1p-filtres{ display:flex; flex-wrap:wrap; gap:8px; }
.m1p-pilule{ display:inline-flex; align-items:center; min-height:46px; padding:0 20px; border-radius:999px; border:1.5px solid var(--mois-filet); background:#fff; color:var(--mois-encre); font-weight:600; font-size:15px; cursor:pointer; text-decoration:none; transition:background .2s, border-color .2s, color .2s; }
.m1p-pilule:hover{ border-color:var(--mois-iris); color:var(--mois-encre); }
.m1p-pilule[aria-selected="true"],.m1p-pilule[aria-pressed="true"]{ background:var(--mois-encre); border-color:var(--mois-encre); color:#fff; }
.m1p-filtres{ margin-bottom:28px; }

/* Voir plus */
.m1p-plus{ display:flex; justify-content:center; margin-top:36px; }
[hidden]{ display:none!important; }

/* Fil d'Ariane */
.m1p-ariane{ display:flex; flex-wrap:wrap; gap:6px 10px; align-items:center; font-size:13.5px; color:var(--mois-texte2); position:relative; z-index:2; }
.m1p-ariane a{ color:var(--mois-texte2); text-decoration:none; }
.m1p-ariane a:hover{ color:var(--mois-iris); text-decoration:underline; }
.m1p-ariane span[aria-hidden]{ color:var(--mois-filet); }
.m1p-ariane-ici{ color:var(--mois-encre); font-weight:500; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; max-width:min(40ch, 100%); min-width:0; }

/* Pastille J30 */
.m1p-j30{ position:absolute; display:flex; flex-direction:column; align-items:center; justify-content:center; width:112px; height:112px; border-radius:50%; background:var(--mois-jaune); color:var(--mois-encre); transform:rotate(6deg); box-shadow:0 18px 36px -14px rgba(21,18,58,.45), inset 0 0 0 3px rgba(21,18,58,.9); z-index:5; }
.m1p-j30 b{ font-family:var(--f-titre); font-weight:800; font-size:34px; line-height:.9; letter-spacing:-.03em; }
.m1p-j30 small{ font-size:11px; font-weight:600; margin-top:4px; }
@keyframes m1p-pop{ from{ transform:rotate(6deg) scale(.4); opacity:0; } to{ transform:rotate(6deg) scale(1); opacity:1; } }

/* Apparition au défilement (un seul mouvement discret) */
.m1p-js [data-m1p-apparait]{ transform:translateY(14px); transition:transform .45s ease; } /* 10/10 juge 2 : contenu toujours visible, seul le mouvement reste */
.m1p-js [data-m1p-apparait].est-vu{ opacity:1; transform:none; }

@media (prefers-reduced-motion:reduce){
	*,*::before,*::after{ animation-duration:.01ms!important; animation-delay:0s!important; transition-duration:.01ms!important; }
	.m1p-js [data-m1p-apparait]{ opacity:1; transform:none; }
}

/*
 * 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-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; }

/* ===================== m1p-trente — pages ===================== */

/* ---------- HERO (accueil) ---------- */
.m1p-hero{ background:var(--mois-fond); overflow:hidden; height:clamp(640px, calc(100svh - 76px), 704px); }
.m1p-hero-int{ height:100%; }
.m1p-hero .m1p-jours{ padding-top:12px; }
.m1p-hero-texte{ position:relative; z-index:3; width:calc(13 / 30 * 100%); padding-top:clamp(20px, 4.2vh, 44px); }
.m1p-hero-titre{ font-size:clamp(40px, 4.72vw, 84px); line-height:1; letter-spacing:-.035em; font-weight:800; margin:22px 0 20px; }
.m1p-hero-titre--moyen{ font-size:clamp(36px, 3.9vw, 68px); }
.m1p-hero-chapo{ font-size:19px; line-height:1.5; color:var(--mois-texte2); max-width:33ch; margin:0 0 26px; }
.m1p-preuves{ list-style:none; margin:0; padding:0; display:grid; grid-template-columns:repeat(3, minmax(0,1fr)); max-width:520px; }
.m1p-preuves li{ display:flex; flex-direction:column; gap:4px; padding:0 18px; border-left:1px solid var(--mois-filet); }
.m1p-preuves li:first-child{ padding-left:0; border-left:0; }
.m1p-preuves b{ font-family:var(--f-titre); font-weight:800; font-size:40px; line-height:1; letter-spacing:-.03em; font-variant-numeric:tabular-nums; color:var(--mois-encre); }
.m1p-preuves span{ font-size:13.5px; line-height:1.35; color:var(--mois-texte2); }

.m1p-hero-scene{ position:absolute; z-index:1; left:calc(13 / 30 * 100%); right:calc((100vw - 100%) / -2 - 60px); top:64px; height:540px; pointer-events:none; }
.m1p-hero-pistes{ position:absolute; inset:0; display:flex; flex-direction:column; justify-content:center; gap:20px; transform:rotate(-7deg); transform-origin:0 50%; }
.m1p-hero-barre{ position:relative; display:block; height:380px; border-radius:999px 0 0 999px; overflow:hidden; background:var(--mois-iris-pale); box-shadow:var(--halo-iris); animation:m1p-glisse .45s cubic-bezier(.2,.8,.2,1) both; }
.m1p-hero-barre img,.m1p-hero-barre .m1p-repli{ width:100%; height:100%; object-fit:cover; object-position:72% 50%; }
.m1p-couloir{ position:relative; display:flex; align-items:center; height:16px; border-radius:999px; padding:0 12px; font-size:11px; font-weight:600; letter-spacing:.04em; color:var(--mois-encre); transform-origin:left; animation:m1p-allonge .5s cubic-bezier(.2,.8,.2,1) both; }
.m1p-couloir--haut{ width:58%; margin-left:22%; background:#D9D5FF; }
.m1p-couloir--bas{ width:46%; margin-left:44%; background:var(--mois-jaune); }
.m1p-hero .m1p-j30{ right:36px; top:118px; }
.m1p-hero-mobile-preuves{ display:none!important; }
.m1p-hero .m1p-j30--mobile{ display:none; }
.m1p-hero-form{ position:absolute; z-index:4; left:calc(14 / 30 * 100% + 12px); top:48px; width:392px; }
@keyframes m1p-glisse{ from{ transform:translateX(60px); } to{ transform:none; } }
@keyframes m1p-allonge{ from{ transform:scaleX(.35); } to{ transform:scaleX(1); } }
@media (min-width:1700px){
	.m1p-hero{ height:clamp(720px, calc(100svh - 80px), 870px); }
	.m1p-hero-barre{ height:460px; }
	.m1p-hero-scene{ top:80px; height:640px; }
	.m1p-hero-form{ width:420px; top:56px; }
	.m1p-hero .m1p-j30{ width:128px; height:128px; top:110px; }
	.m1p-hero-chapo{ font-size:20px; }
	.m1p-preuves b{ font-size:46px; }
}
@media (max-width:1359px) and (min-width:1100px){
	.m1p-hero-form{ left:calc(13 / 30 * 100% + 8px); width:372px; }
	.m1p-hero .m1p-j30{ right:8px; width:100px; height:100px; }
	.m1p-hero-chapo{ font-size:17.5px; }
	.m1p-preuves b{ font-size:34px; }
}
@media (max-width:1099px){
	.m1p-hero{ height:auto; padding-bottom:36px; }
	.m1p-hero .m1p-jours .m1p-jour.est-mineur{ display:none; }
	.m1p-hero .m1p-jours .m1p-jour{ padding-top:4px; }
	.m1p-hero-texte{ width:auto; padding-top:16px; }
	.m1p-hero-titre{ margin:14px 0 12px; }
	.m1p-hero-chapo{ font-size:16px; max-width:none; margin-bottom:0; }
	.m1p-hero-scene{ position:relative; left:auto; right:auto; top:auto; height:150px; margin:6px calc(-1 * var(--gout)) 0 0; }
	.m1p-hero-pistes{ transform:rotate(-4deg); gap:10px; }
	.m1p-hero-barre{ height:128px; }
	.m1p-couloir{ height:10px; font-size:0; }
	.m1p-hero .m1p-hero-j30{ display:none; }
	.m1p-hero .m1p-j30--mobile{ display:flex; }
	.m1p-hero .m1p-j30{ width:72px; height:72px; right:22px; top:0; }
	.m1p-hero .m1p-j30 b{ font-size:22px; } .m1p-hero .m1p-j30 small{ font-size:8.5px; }
	.m1p-hero-form{ position:relative; left:auto; top:auto; width:auto; max-width:520px; margin:-58px auto 0; }
	.m1p-hero .m1p-preuves{ margin-top:24px; }
	.m1p-hero-texte .m1p-preuves{ display:none; }
	.m1p-hero .m1p-hero-mobile-preuves{ display:grid!important; }
}
@media (max-width:600px){ .m1p-hero .m1p-pastille-info{ display:none; } }

/* ---------- FORMULAIRE EN ÉTAPES ---------- */
.m1p-form{ position:relative; }
.m1p-form-carte{ background:#fff; border-radius:24px; box-shadow:var(--ombre-form); padding:22px 24px 20px; border:1px solid rgba(21,18,58,.04); }
.m1p-form-tete{ display:grid; grid-template-columns:1fr auto; align-items:baseline; gap:4px 12px; margin-bottom:6px; }
.m1p-form-titre{ font-family:var(--f-titre); font-weight:700; font-size:20px; line-height:1.2; margin:0; color:var(--mois-encre); }
.m1p-form-compteur{ margin:0; font-size:13px; color:var(--mois-texte2); font-variant-numeric:tabular-nums; white-space:nowrap; }
.m1p-form-compteur b{ color:var(--mois-encre); }
.m1p-form-barres{ grid-column:1 / -1; list-style:none; margin:10px 0 0; padding:0; display:grid; grid-template-columns:repeat(5,1fr); gap:6px; }
.m1p-form-barres li{ position:relative; height:12px; border-radius:999px; background:var(--mois-filet); transition:background .3s; }
.m1p-form-barres li.est-encours{ background:var(--mois-iris); }
.m1p-form-barres li.est-faite{ background:var(--mois-jaune); }
.m1p-form-barres li.est-faite::after{ content:""; position:absolute; left:50%; top:50%; width:9px; height:5px; border-left:2px solid var(--mois-encre); border-bottom:2px solid var(--mois-encre); transform:translate(-50%,-70%) rotate(-45deg); }
.m1p-form-corps{ margin:0; }
.m1p-form-etape{ display:none; border:0; margin:0; padding:0; min-width:0; }
.m1p-form-etape.est-active{ display:block; }
.m1p-form.est-anime .m1p-form-etape.est-active{ animation:m1p-etape .28s ease both; }
@keyframes m1p-etape{ from{ opacity:0; transform:translateX(10px); } to{ opacity:1; transform:none; } }
.m1p-form-q{ float:left; width:100%; padding:0; margin:14px 0 12px; font-family:var(--f-titre); font-weight:700; font-size:18px; line-height:1.25; color:var(--mois-encre); }
.m1p-form-q + *{ clear:both; }
.m1p-tuiles{ display:grid; gap:10px; }
.m1p-tuiles--2{ grid-template-columns:1fr 1fr; }
.m1p-tuiles--puces{ display:flex; flex-wrap:wrap; gap:8px; }
.m1p-tuiles--barres{ grid-template-columns:1fr; gap:8px; }
.m1p-tuile{ position:relative; display:flex; flex-direction:column; align-items:flex-start; justify-content:center; gap:3px; min-height:78px; padding:12px 14px; border:1.5px solid var(--mois-filet); border-radius:16px; background:#fff; text-align:left; cursor:pointer; transition:border-color .15s, background .15s, transform .15s; }
.m1p-tuile b{ font-weight:600; font-size:16px; line-height:1.2; color:var(--mois-encre); }
.m1p-tuile span{ font-size:13px; line-height:1.3; color:var(--mois-texte2); }
.m1p-tuile:hover{ border-color:var(--mois-iris); background:#FBFAFF; }
.m1p-tuile[aria-pressed="true"]{ border-color:var(--mois-iris); background:var(--mois-iris-pale); box-shadow:inset 0 0 0 1px var(--mois-iris); }
.m1p-tuile[aria-pressed="true"]::after{ content:""; position:absolute; right:10px; top:10px; width:18px; height:18px; border-radius:50%; background:var(--mois-iris) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M6 12.5l4 4L18 8' fill='none' stroke='white' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/12px no-repeat; }
.m1p-tuile--puce{ min-height:46px; padding:0 18px; border-radius:999px; flex-direction:row; align-items:center; }
.m1p-tuile--puce b{ font-size:15.5px; }
.m1p-tuile--puce[aria-pressed="true"]{ padding-right:38px; }
.m1p-tuile--puce[aria-pressed="true"]::after{ top:50%; transform:translateY(-50%); }
.m1p-tuile--seule{ margin:2px 0 12px; display:inline-flex; }
.m1p-tuile--barre{ min-height:58px; display:grid; grid-template-columns:118px 1fr; align-items:center; gap:14px; }
.m1p-tuile-piste{ position:relative; display:block; height:14px; background:repeating-linear-gradient(90deg, var(--mois-filet) 0 1.5px, transparent 1.5px 10%); }
.m1p-tuile-piste span{ position:absolute; left:0; top:2px; bottom:2px; width:calc(var(--l) * 30% + 4%); border-radius:999px; background:#D9D5FF; transition:background .2s, width .3s; }
.m1p-tuile--barre[aria-pressed="true"] .m1p-tuile-piste span{ top:0; bottom:0; background:var(--mois-iris); box-shadow:0 4px 10px -3px rgba(75,59,255,.55); transition:none; }
.m1p-tuile--barre[aria-pressed="true"]::after{ top:50%; transform:translateY(-50%); }
.m1p-champ{ display:flex; flex-direction:column; gap:5px; margin-bottom:10px; min-width:0; }
.m1p-champ label{ font-size:13.5px; font-weight:600; color:var(--mois-encre); }
.m1p-champ label span{ font-weight:400; color:var(--mois-texte2); }
.m1p-champ input,.m1p-champ textarea{ width:100%; min-height:50px; padding:0 14px; border:1.5px solid var(--mois-filet); border-radius:14px; background:#fff; font-size:16px; transition:border-color .15s, box-shadow .15s; }
.m1p-champ textarea{ padding:12px 14px; min-height:72px; resize:vertical; }
.m1p-champ input:focus,.m1p-champ textarea:focus{ outline:none; border-color:var(--mois-iris); box-shadow:0 0 0 4px rgba(75,59,255,.15); }
.m1p-champ input.est-erreur{ border-color:var(--mois-vigilance); }
.m1p-champs-duo{ display:grid; grid-template-columns:1fr 1fr; gap:10px; }
.m1p-consent{ display:flex; gap:10px; align-items:flex-start; font-size:12.5px; line-height:1.4; color:var(--mois-texte2); margin:2px 0 12px; cursor:pointer; }
.m1p-consent input{ width:20px; height:20px; flex-shrink:0; margin:1px 0 0; accent-color:var(--mois-iris); }
.m1p-consent a{ color:var(--mois-iris); }
.m1p-form-actions{ display:flex; align-items:center; justify-content:space-between; gap:12px; margin-top:16px; }
.m1p-form-actions .m1p-btn{ flex:1; max-width:none; }
.m1p-form-etape[data-m1p-etape="1"] .m1p-form-actions .m1p-btn{ flex:1; }
.m1p-retour{ border:0; background:none; padding:12px 6px; font-size:15px; font-weight:500; color:var(--mois-texte2); text-decoration:underline; text-underline-offset:.2em; cursor:pointer; min-height:48px; }
.m1p-retour:hover{ color:var(--mois-encre); }
.m1p-retour--seul{ display:block; margin:4px auto 0; min-height:36px; padding:6px; }
.m1p-form-etape .m1p-btn--large{ width:100%; }
.m1p-form-note{ margin:10px 0 0; font-size:12.5px; line-height:1.4; color:var(--mois-texte2); text-align:center; }
.m1p-form-erreur{ margin:0 0 10px; font-size:13.5px; color:var(--mois-vigilance); font-weight:500; }
.m1p-piege{ position:absolute!important; left:-9999px; width:1px; height:1px; overflow:hidden; }
.m1p-form-merci{ text-align:left; padding:6px 0; }
.m1p-form-merci p{ color:var(--mois-texte2); font-size:15.5px; }
.m1p-form-merci .m1p-form-titre{ color:var(--mois-encre); margin:12px 0 8px; }
.m1p-form-merci-coche{ display:inline-flex; align-items:center; justify-content:center; width:52px; height:52px; border-radius:50%; background:var(--mois-jaune); color:var(--mois-encre); }
@media (min-width:1700px){ .m1p-form-carte{ padding:26px 28px 24px; } .m1p-tuiles--2 .m1p-tuile{ min-height:84px; } .m1p-hero-texte{ padding-top:72px; } }
/* Variante : barre latérale d'article (plus étroite, compacte) */
.m1p-form--rail .m1p-form-carte{ box-shadow:var(--ombre-carte); padding:16px 16px 14px; border-radius:18px; border:1px solid var(--mois-filet); }
.m1p-form--rail .m1p-form-titre{ font-size:17px; }
.m1p-form--rail .m1p-form-barres{ margin-top:8px; } .m1p-form--rail .m1p-form-barres li{ height:9px; }
.m1p-form--rail .m1p-form-barres li.est-faite::after{ width:7px; height:4px; }
.m1p-form--rail .m1p-form-q{ font-size:15.5px; margin:10px 0 8px; }
.m1p-form--rail .m1p-tuiles--2 .m1p-tuile{ min-height:52px; padding:8px 10px; border-radius:12px; }
.m1p-form--rail .m1p-tuile b{ font-size:14px; } .m1p-form--rail .m1p-tuiles--2 .m1p-tuile span{ display:none; }
.m1p-form--rail .m1p-tuile--puce{ min-height:40px; padding:0 13px; } .m1p-form--rail .m1p-tuile--puce b{ font-size:13.5px; }
.m1p-form--rail .m1p-tuile--barre{ grid-template-columns:96px 1fr; min-height:46px; }
.m1p-form--rail .m1p-champs-duo + .m1p-champs-duo{ grid-template-columns:1fr; }
.m1p-form--rail .m1p-champ{ margin-bottom:8px; } .m1p-form--rail .m1p-champ input{ min-height:46px; }
.m1p-form--rail .m1p-form-actions{ margin-top:12px; }
.m1p-form--rail .m1p-btn{ min-height:50px; font-size:15.5px; padding:0 18px; }
.m1p-form--rail .m1p-consent{ font-size:11.5px; }
@media (max-width:1099px){
	.m1p-form-carte{ padding:18px 16px 16px; border-radius:20px; }
	.m1p-form-titre{ font-size:17px; }
	.m1p-form-q{ font-size:16px; margin:10px 0 10px; }
	.m1p-tuiles--2 .m1p-tuile{ min-height:56px; padding:9px 12px; } .m1p-tuile b{ font-size:15px; } .m1p-tuile span{ font-size:12px; }
	.m1p-form-actions{ margin-top:12px; }
}
@media (max-width:420px){ .m1p-champs-duo{ grid-template-columns:1fr 1fr; gap:8px; } .m1p-tuiles--2 .m1p-tuile span{ display:none; } .m1p-tuiles--2 .m1p-tuile{ min-height:48px; } .m1p-tuile--barre{ grid-template-columns:100px 1fr; } }

/* ---------- 2. ACTUALITÉS (nuit) ---------- */
.m1p-actus{ padding:64px 0; }
.m1p-actus-grille{ display:grid; grid-template-columns:7fr 5fr; gap:32px; align-items:stretch; }
.m1p-actu-une{ position:relative; display:flex; flex-direction:column; justify-content:flex-end; min-height:100%; border-radius:18px; overflow:hidden; color:#fff; text-decoration:none; isolation:isolate; aspect-ratio:16/10; max-height:430px; }
.m1p-actu-une-photo{ position:absolute; inset:0; z-index:-2; }
.m1p-actu-une-photo img,.m1p-actu-une-photo .m1p-repli{ width:100%; height:100%; object-fit:cover; transition:transform .8s cubic-bezier(.2,.8,.2,1); }
.m1p-actu-une::before{ content:""; position:absolute; inset:0; z-index:-1; background:linear-gradient(180deg, rgba(21,18,58,0) 22%, rgba(21,18,58,.72) 58%, rgba(21,18,58,.92) 100%); }
.m1p-actu-une:hover img{ transform:scale(1.03); }
.m1p-actu-une-texte{ display:flex; align-items:flex-end; gap:16px; margin:14px; padding:18px 20px; border-radius:16px; background-color:rgba(21,18,58,.82); -webkit-backdrop-filter:blur(6px); backdrop-filter:blur(6px); } /* fond opaque sous le titre : lisible quelle que soit la photo */
.m1p-actu-une .m1p-case{ background:var(--mois-jaune); color:var(--mois-encre); }
.m1p-actu-une-titre{ font-family:var(--f-titre); font-weight:700; font-size:28px; line-height:1.15; letter-spacing:-.015em; }
.m1p-actus-fil{ list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:10px; }
.m1p-actus-fil li{ flex:1; }
.m1p-actus-fil a{ display:grid; grid-template-columns:56px 1fr 88px; align-items:center; gap:16px; height:100%; padding:10px; border-radius:16px; background:rgba(255,255,255,.05); border:1px solid rgba(255,255,255,.08); color:#fff; text-decoration:none; transition:background .2s; }
.m1p-actus-fil a:hover{ background:rgba(255,255,255,.1); color:#fff; }
.m1p-actu-titre{ font-weight:600; font-size:16px; line-height:1.3; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
.m1p-actu-vignette{ width:88px; height:72px; border-radius:12px; overflow:hidden; }
.m1p-actu-vignette img,.m1p-actu-vignette .m1p-repli{ width:100%; height:100%; object-fit:cover; min-height:0; }
@media (max-width:1023px){ .m1p-actus-grille{ grid-template-columns:1fr; } .m1p-actu-une{ max-height:none; } }
@media (max-width:640px){ .m1p-actu-une-titre{ font-size:21px; } .m1p-actu-une-texte{ margin:10px; padding:14px; } .m1p-actus-fil a{ grid-template-columns:52px 1fr 72px; gap:12px; } .m1p-actu-vignette{ width:72px; height:60px; } .m1p-case{ width:52px; height:52px; } }

/* ---------- 3. PLANNING (outil) ---------- */
.m1p-plan-cadre{ display:grid; grid-template-columns:1fr 280px; gap:28px; align-items:start; }
.m1p-plan{ position:relative; border:1px solid var(--mois-filet); border-radius:24px; padding:18px 22px 14px; background:#fff; box-shadow:var(--ombre-carte); }
.m1p-plan-semaines{ display:grid; grid-template-columns:200px repeat(4,1fr); font-size:12px; font-weight:600; letter-spacing:.04em; color:var(--mois-texte2); padding-bottom:10px; border-bottom:1px solid var(--mois-filet); }
.m1p-plan-semaines span:first-child{ grid-column:2; }
.m1p-plan-semaines span{ padding-left:8px; border-left:1px dashed var(--mois-filet); }
.m1p-couloir-ligne{ display:grid; grid-template-columns:200px 1fr; align-items:center; min-height:52px; border-bottom:1px solid #F0EFF8; }
.m1p-couloir-nom{ font-weight:600; font-size:15px; padding-right:12px; }
.m1p-couloir-piste{ position:relative; display:block; height:52px; background:repeating-linear-gradient(90deg, var(--mois-filet) 0 1px, transparent 1px calc(100% / 30)); -webkit-mask:linear-gradient(#000,#000); }
.m1p-plan-barre{ position:absolute; top:11px; bottom:11px; left:calc(var(--d) / 30 * 100%); width:calc((var(--f) - var(--d)) / 30 * 100%); border-radius:999px; background:var(--mois-iris); color:#fff; display:flex; align-items:center; padding:0 14px; font-size:13px; font-weight:600; text-decoration:none; white-space:nowrap; overflow:hidden; transition:left .5s cubic-bezier(.2,.8,.2,1), width .5s cubic-bezier(.2,.8,.2,1), background .2s, opacity .3s; box-shadow:0 8px 18px -10px rgba(75,59,255,.9); }
.m1p-plan-barre:hover{ background:var(--mois-iris-fonce); color:#fff; }
.m1p-couloir-ligne:nth-child(odd) .m1p-plan-barre{ background:#6A5CFF; }
.m1p-plan-barre-txt{ opacity:.95; }
.m1p-plan-hors{ position:absolute; left:8px; top:50%; transform:translateY(-50%); display:none; align-items:center; padding:3px 10px; border-radius:999px; background:#fff; box-shadow:inset 0 0 0 1px var(--mois-filet); font-size:13px; line-height:1.2; color:var(--mois-texte2); font-style:italic; } /* fond opaque : jamais de texte posé sur la grille */
.m1p-couloir-ligne.est-hors .m1p-plan-barre{ opacity:0; pointer-events:none; }
.m1p-couloir-ligne.est-hors .m1p-plan-hors{ display:flex; }
.m1p-couloir-ligne.est-hors .m1p-couloir-nom{ color:#6E6A8A; font-weight:500; } /* 5,1:1 sur blanc : plus discret que l'encre, toujours lisible */
.m1p-plan-note{ margin:12px 0 0; font-size:13px; color:var(--mois-texte2); }
.m1p-plan-relance{ background:var(--mois-encre); color:#fff; border-radius:24px; padding:26px 24px; position:relative; overflow:hidden; }
.m1p-plan-relance::before{ content:""; position:absolute; left:24px; right:24px; top:0; height:6px; border-radius:0 0 999px 999px; background:var(--mois-jaune); }
.m1p-plan-relance-titre{ font-family:var(--f-titre); font-weight:800; font-size:24px; line-height:1.15; margin:8px 0 10px; }
.m1p-plan-relance p{ color:rgba(255,255,255,.82); font-size:15px; }
.m1p-plan-relance .m1p-btn{ width:100%; }
/* Frise : la carte sombre prend la hauteur du tableau (jamais de vide dessous), bouton calé en bas. */
.m1p-plan-cadre{ align-items:stretch; }
.m1p-plan-relance{ display:flex; flex-direction:column; }
.m1p-plan-relance .m1p-btn{ margin-top:auto; }
.m1p-plan-relance-liste{ list-style:none; margin:2px 0 22px; padding:14px 0 0; border-top:1px solid rgba(255,255,255,.14); display:flex; flex-direction:column; gap:10px; }
.m1p-plan-relance-liste li{ position:relative; padding-left:20px; font-size:14.5px; line-height:1.4; font-weight:500; color:#fff; }
.m1p-plan-relance-liste li::before{ content:""; position:absolute; left:0; top:6px; width:9px; height:9px; border-radius:999px; background:var(--mois-jaune); }
.m1p-plan-relance-liste li:nth-child(2)::before{ background:#9C93FF; }
.m1p-plan-relance-mob{ display:none; }
.m1p-plan-relance .m1p-plan-relance-titre{ font-size:22px; color:#fff; margin:8px 0 8px; }
@media (max-width:1099px){ .m1p-plan-relance-liste{ display:none; } .m1p-plan-relance-mob{ display:inline; } .m1p-plan-relance .m1p-btn{ margin-top:6px; } }
/* Barres « Lire le guide » : le libellé s'adapte à la longueur de la barre, jamais coupé (« Lire le gui… »). */
.m1p-plan-barre{ container-type:inline-size; }
.m1p-plan-barre-txt{ display:inline-flex; align-items:center; }
.m1p-plan-barre-court,.m1p-plan-barre-ico{ display:none; }
@container (max-width:86px){ .m1p-plan-barre-long{ display:none; } .m1p-plan-barre-court{ display:inline; } }
@container (max-width:40px){ .m1p-plan-barre-court{ display:none; } .m1p-plan-barre-ico{ display:block; } }
@media (max-width:1099px){ .m1p-plan-cadre{ grid-template-columns:1fr; } }
@media (max-width:767px){
	.m1p-plan{ padding:12px 12px 10px; }
	.m1p-plan-semaines{ grid-template-columns:repeat(4,1fr); font-size:10.5px; }
	.m1p-plan-semaines span:first-child{ grid-column:auto; }
	.m1p-couloir-ligne{ grid-template-columns:1fr; min-height:0; padding:8px 0 4px; }
	.m1p-couloir-nom{ font-size:13.5px; }
	.m1p-couloir-piste{ height:40px; }
	.m1p-plan-barre{ top:7px; bottom:7px; padding:0 10px; font-size:12px; }
	.m1p-pilule{ min-height:44px; padding:0 15px; font-size:14px; }
}

/* ---------- 4. PORTES ---------- */
.m1p-portes-grille{ display:grid; grid-template-columns:repeat(5, minmax(0,1fr)); gap:18px; }
.m1p-porte{ display:flex; flex-direction:column; background:#fff; border:1px solid var(--mois-filet); border-radius:18px; padding:8px; color:inherit; text-decoration:none; box-shadow:var(--ombre-carte); transition:transform .25s cubic-bezier(.2,.8,.2,1), box-shadow .25s; }
.m1p-porte:hover{ transform:translateY(-3px); box-shadow:var(--ombre-carte-forte); color:inherit; }
.m1p-porte:hover .m1p-regle-plage{ transform:scaleX(1.08); }
.m1p-porte-photo{ position:relative; display:block; aspect-ratio:4/3; border-radius:14px; overflow:hidden; background:var(--mois-iris-pale); }
.m1p-porte-photo img,.m1p-porte-photo .m1p-repli{ width:100%; height:100%; object-fit:cover; }
.m1p-porte-photo .m1p-pastille{ position:absolute; left:10px; bottom:10px; }
.m1p-porte-corps{ display:flex; flex-direction:column; gap:8px; padding:14px 8px 8px; flex:1; }
.m1p-porte-nom{ font-family:var(--f-titre); font-weight:700; font-size:21px; line-height:1.15; letter-spacing:-.015em; }
.m1p-porte-accroche{ font-size:14px; line-height:1.45; color:var(--mois-texte2); }
@media (max-width:1180px){ .m1p-portes-grille{ grid-template-columns:repeat(3, minmax(0,1fr)); } }
@media (max-width:767px){ .m1p-portes-grille{ grid-template-columns:repeat(2, minmax(0,1fr)); gap:12px; } .m1p-porte-nom{ font-size:17px; } .m1p-porte-accroche{ display:none; } }

/* ---------- 5. GUIDES ESSENTIELS ---------- */
.m1p-ess-grille{ display:grid; grid-template-columns:1.15fr 1fr; gap:24px; }
.m1p-carte--grande .m1p-carte-photo{ aspect-ratio:auto; height:248px; max-height:none; }
.m1p-carte--grande .m1p-carte-titre{ font-size:26px; line-height:1.15; }
.m1p-carte--grande .m1p-carte-corps{ padding:18px 14px 10px; }
.m1p-ess-petites{ display:grid; grid-template-columns:1fr 1fr; gap:18px; }
.m1p-carte--compacte .m1p-carte-photo{ aspect-ratio:auto; height:92px; }
.m1p-essentiels{ padding:56px 0; }
.m1p-essentiels .m1p-section-tete{ margin-bottom:24px; }
.m1p-carte--compacte .m1p-carte-titre{ font-size:16.5px; -webkit-line-clamp:2; }
.m1p-carte--compacte .m1p-carte-corps{ gap:8px; padding:10px 6px 4px; }
@media (max-width:1023px){ .m1p-ess-grille{ grid-template-columns:1fr; } .m1p-carte--grande .m1p-carte-photo{ height:240px; } }
@media (max-width:540px){ .m1p-ess-petites{ grid-template-columns:1fr; } .m1p-carte--compacte .m1p-carte-photo{ height:150px; } }

/* ---------- 6. CHIFFRES (iris) ---------- */
.m1p-chiffres{ padding:64px 0 56px; overflow:hidden; }
.m1p-chiffres-grille{ list-style:none; margin:0; padding:0; display:grid; grid-template-columns:repeat(4, minmax(0,1fr)); }
.m1p-chiffres-grille li{ display:flex; flex-direction:column; gap:10px; padding:0 26px; border-left:1px solid rgba(255,255,255,.25); }
.m1p-chiffres-grille li:first-child{ padding-left:0; border-left:0; }
.m1p-chiffres-grille b{ font-family:var(--f-titre); font-weight:800; font-size:clamp(48px, 4.6vw, 72px); line-height:.95; letter-spacing:-.03em; font-variant-numeric:tabular-nums; white-space:nowrap; }
.m1p-chiffre-lib{ font-size:16px; line-height:1.45; color:rgba(255,255,255,.95); }
.m1p-chiffres-grille small{ font-size:12px; color:rgba(255,255,255,.9); margin-top:auto; } /* 5,3:1 sur iris */
.m1p-chiffres-grille sup{ font-size:.65em; }
.m1p-chiffres .m1p-regle-plage{ background:var(--mois-jaune); }
@media (max-width:1023px){ .m1p-chiffres-grille{ grid-template-columns:1fr 1fr; gap:32px 0; } .m1p-chiffres-grille li:nth-child(3){ padding-left:0; border-left:0; } }
@media (max-width:540px){ .m1p-chiffres-grille{ grid-template-columns:1fr; gap:24px; } .m1p-chiffres-grille li{ padding:0 0 22px; border-left:0; border-bottom:1px solid rgba(255,255,255,.2); } .m1p-chiffres-grille li:last-child{ border-bottom:0; padding-bottom:0; } }

/* ---------- 7. À LIRE CE MOIS-CI ---------- */
.m1p-carte--basse .m1p-carte-photo{ aspect-ratio:auto; height:176px; }
@media (min-width:1700px){ .m1p-carte--basse .m1p-carte-photo{ height:200px; } }
.m1p-recents{ padding:64px 0; }
.m1p-recents .m1p-grille-3{ gap:16px 20px; }
.m1p-carte--ligne .m1p-carte-lien{ flex-direction:row; gap:14px; align-items:stretch; }
.m1p-carte--ligne .m1p-carte-photo{ aspect-ratio:auto; width:136px; height:auto; min-height:136px; flex-shrink:0; }
.m1p-carte--ligne .m1p-pastille--texte{ align-self:flex-start; max-width:100%; min-height:24px; padding:3px 10px; font-size:11.5px; line-height:1.2; white-space:normal; background:var(--mois-iris-pale); box-shadow:none; }
.m1p-carte--ligne .m1p-carte-corps{ padding:6px 6px 4px 0; gap:8px; }
.m1p-carte--ligne .m1p-carte-titre{ font-size:16.5px; }
.m1p-carte--ligne .m1p-carte-date{ display:none; }
.m1p-carte--ligne .m1p-carte-pied{ grid-template-columns:1fr; }
@media (max-width:420px){ .m1p-carte--ligne .m1p-carte-photo{ width:108px; min-height:108px; } }

/* ---------- 8. ÊTRE ACCOMPAGNÉ ---------- */
.m1p-accompagne{ padding:104px 0 88px; }
.m1p-acc-bloc{ position:relative; display:grid; grid-template-columns:1fr 1fr; gap:40px; align-items:center; background:var(--mois-encre); color:#fff; border-radius:32px; padding:48px 0 48px 56px; }
.m1p-acc-bloc::before{ content:""; position:absolute; left:56px; right:56px; bottom:0; height:6px; border-radius:999px 999px 0 0; background:var(--mois-jaune); }
.m1p-acc-texte .m1p-h2{ color:#fff; max-width:15ch; }
.m1p-coches{ list-style:none; margin:24px 0 28px; padding:0; display:flex; flex-direction:column; gap:12px; }
.m1p-coches li{ display:flex; align-items:center; gap:12px; font-size:17px; font-weight:500; }
.m1p-coches li::before{ content:""; width:26px; height:26px; flex-shrink:0; border-radius:50%; background:var(--mois-jaune) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M6 12.5l4 4L18 8' fill='none' stroke='%2315123A' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/15px no-repeat; }
.m1p-acc-photo{ align-self:stretch; margin:-80px 0 -16px; border-radius:180px 0 0 180px; overflow:hidden; box-shadow:var(--halo-iris); min-height:340px; }
.m1p-acc-photo img,.m1p-acc-photo .m1p-repli{ width:100%; height:100%; object-fit:cover; }
@media (max-width:900px){ .m1p-acc-bloc{ grid-template-columns:1fr; padding:36px 24px 0; gap:28px; } .m1p-acc-photo{ margin:0 -24px 0 0; min-height:200px; height:220px; border-radius:120px 0 0 0; } .m1p-acc-bloc::before{ left:24px; right:24px; } .m1p-accompagne{ padding:56px 0; } }

/* ---------- EN-TÊTE D'ARTICLE (piste du mois) ---------- */
.m1p-art-entete{ position:relative; background:var(--mois-fond); padding:6px 0 0; overflow-x:clip; }
.m1p-art-entete .m1p-grille-fond::before{ width:min(var(--sb-conteneur), 100% - 2*var(--gout)); }
.m1p-art-entete-int{ width:min(var(--sb-conteneur), 100% - 2*var(--gout)); display:grid; grid-template-columns:minmax(0,1fr) 420px; gap:52px; z-index:1; }
.m1p-art-entete-texte{ padding:10px 0 44px; min-width:0; }
.m1p-piste{ display:grid; grid-template-columns:minmax(160px, 300px) auto; align-items:center; gap:14px; margin:22px 0 18px; }
.m1p-piste-lib{ font-size:13.5px; color:var(--mois-texte2); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.m1p-piste-lib b{ color:var(--mois-encre); font-weight:600; }
.m1p-art-titre{ font-size:clamp(32px, 3.2vw, 52px); line-height:1.07; letter-spacing:-.025em; font-weight:800; margin:14px 0 14px; text-wrap:balance; }
.m1p-art-chapo{ font-size:19px; line-height:1.55; color:var(--mois-texte2); margin:0 0 18px; max-width:60ch; }
.m1p-art-meta{ display:flex; align-items:center; gap:12px; font-size:14px; color:var(--mois-texte2); }
.m1p-avatar{ border-radius:50%; object-fit:cover; flex-shrink:0; background:var(--mois-iris-pale); }
.m1p-art-meta .m1p-avatar{ width:44px; height:44px; box-shadow:0 0 0 3px #fff; }
.m1p-art-meta-txt{ display:flex; flex-direction:column; line-height:1.4; }
.m1p-art-auteur{ font-weight:600; color:var(--mois-encre); text-decoration:none; font-size:15px; }
.m1p-art-auteur:hover{ color:var(--mois-iris); text-decoration:underline; }
.m1p-art-maj{ font-size:14px; color:var(--mois-texte2); margin:0; }
.m1p-art-entete-photo{ position:relative; align-self:start; margin-top:18px; margin-bottom:-64px; z-index:2; }
.m1p-art-barre{ display:block; height:340px; border-radius:160px 20px 20px 160px; overflow:hidden; box-shadow:var(--halo-iris), var(--ombre-carte); background:var(--mois-iris-pale); }
.m1p-art-barre img{ width:100%; height:100%; object-fit:cover; }
.m1p-etiquette-cheval{ position:absolute; left:64px; bottom:-18px; display:inline-flex; align-items:center; min-height:36px; padding:0 18px; border-radius:999px; background:var(--mois-jaune); color:var(--mois-encre); font-weight:700; font-size:14px; box-shadow:0 10px 20px -10px rgba(21,18,58,.45); white-space:nowrap; z-index:3; }
.m1p-art-entete--form .m1p-art-entete-int{ grid-template-columns:minmax(0,1fr) 400px; }
.m1p-art-entete-form{ position:relative; align-self:start; margin-top:14px; margin-bottom:-120px; z-index:4; }
.m1p-art-barre--fond{ position:absolute; left:-40px; right:-260px; top:210px; height:220px; transform:rotate(-7deg); border-radius:999px; z-index:-1; }
.m1p-sans-photo .m1p-art-entete-int{ grid-template-columns:minmax(0,1fr); }
.m1p-sans-photo .m1p-art-entete-texte{ max-width:var(--sb-lecture); }
/* La colonne latérale démarre sous la photo qui mord sur le corps */
.sbt-article .sbt-article-mise-en-page{ padding-top:40px; }
.sbt-article .sbt-rail{ margin-top:72px; }
.sbt-article:not(.m1p-sans-photo) .m1p-art-entete--form ~ .sbt-article-mise-en-page .sbt-rail{ margin-top:150px; }
.sbt-article.m1p-sans-photo .sbt-rail{ margin-top:0; }
@media (max-width:1080px){
	.m1p-art-entete-int{ grid-template-columns:1fr!important; gap:0; }
	.m1p-art-entete-texte{ padding-bottom:20px; }
	.m1p-art-entete-photo{ margin:0 calc(-1 * var(--gout)) -40px 0; }
	.m1p-art-barre{ height:200px; border-radius:100px 0 0 100px; }
	.m1p-etiquette-cheval{ left:40px; bottom:-16px; min-height:32px; font-size:13px; }
	.m1p-art-entete-form{ margin:6px 0 -24px; }
	.m1p-art-barre--fond{ display:none; }
	.sbt-article .sbt-rail{ margin-top:0!important; }
	.sbt-article .sbt-article-mise-en-page{ padding-top:56px; }
	.m1p-piste{ grid-template-columns:120px auto; margin:14px 0 12px; }
	.m1p-art-chapo{ font-size:17px; }
}

/* ---------- CORPS D'ARTICLE (habillage des blocs figés) ---------- */
.sbt-article-mise-en-page{ column-gap:52px; }
.sbt-article-corps{ font-size:17px; line-height:1.68; color:#221F45; overflow-wrap:anywhere; min-width:0; }
.sbt-article-corps > *:first-child{ margin-top:0; }
.sbt-article-corps h2{ font-size:clamp(25px, 2.1vw, 31px); font-weight:800; letter-spacing:-.02em; line-height:1.15; margin:2.1em 0 .6em; padding-top:18px; position:relative; scroll-margin-top:96px; }
.sbt-article-corps h2::before{ content:""; position:absolute; left:0; top:0; width:56px; height:6px; border-radius:999px; background:var(--mois-jaune); }
.sbt-article-corps h3{ font-size:20.5px; font-weight:700; letter-spacing:-.01em; margin:1.7em 0 .45em; }
.sbt-article-corps a{ color:var(--mois-iris); font-weight:500; }
.sbt-article-corps strong{ color:var(--mois-encre); font-weight:600; }
.sbt-article-corps img{ border-radius:18px; max-height:440px; object-fit:cover; }
.sbt-article-corps figure{ margin:1.8em 0; }
.sbt-article-corps figcaption{ font-size:13.5px; color:var(--mois-texte2); margin-top:-.8em; }
.sbt-article-corps blockquote{ border-left:0; background:var(--mois-fond); border-radius:18px; padding:20px 24px 20px 28px; position:relative; font-style:normal; }
.sbt-article-corps blockquote::before{ content:""; position:absolute; left:0; top:18px; bottom:18px; width:5px; border-radius:0 5px 5px 0; background:var(--mois-iris); }
/* Listes → cartes (puce = petite barre du mois) */
.m1p-liste{ list-style:none; margin:1.4em 0 1.6em; padding:0; display:grid; grid-template-columns:minmax(0,1fr); gap:12px; }
.m1p-liste--cartes{ grid-template-columns:repeat(2, minmax(0,1fr)); }
.m1p-liste li{ position:relative; margin:0; padding:14px 16px 14px 46px; background:#fff; border:1px solid var(--mois-filet); border-radius:16px; box-shadow:0 1px 2px rgba(21,18,58,.05); font-size:16px; line-height:1.55; }
.m1p-liste li::before{ content:""; position:absolute; left:16px; top:22px; width:18px; height:7px; border-radius:999px; background:var(--mois-iris); }
.m1p-liste li:nth-child(3n+2)::before{ background:var(--mois-jaune); box-shadow:inset 0 0 0 1px rgba(21,18,58,.15); }
.m1p-liste li:nth-child(3n)::before{ background:#9C93FF; }
.m1p-liste li > p{ margin:0; }
@media (max-width:640px){ .m1p-liste--cartes{ grid-template-columns:1fr; } }
/* Listes ordonnées → étapes */
.m1p-etapes{ list-style:none; counter-reset:m1p-etape; margin:1.4em 0 1.6em; padding:0; display:flex; flex-direction:column; gap:12px; position:relative; }
.m1p-etapes::before{ content:""; position:absolute; left:19px; top:24px; bottom:24px; width:2px; background:repeating-linear-gradient(180deg, var(--mois-filet) 0 5px, transparent 5px 9px); }
.m1p-etapes li{ counter-increment:m1p-etape; position:relative; padding:14px 18px 14px 62px; background:#fff; border:1px solid var(--mois-filet); border-radius:16px; font-size:16px; line-height:1.55; }
.m1p-etapes li::before{ content:counter(m1p-etape); position:absolute; left:2px; top:12px; width:36px; height:36px; display:flex; align-items:center; justify-content:center; border-radius:50%; background:var(--mois-iris); color:#fff; font-family:var(--f-titre); font-weight:800; font-size:16px; box-shadow:0 0 0 5px #fff; font-variant-numeric:tabular-nums; }
.m1p-etapes li > p{ margin:0; }
/* Tableaux → fiches */
.m1p-fiches{ margin:1.6em 0; }
.m1p-fiches-titre{ font-family:var(--f-titre); font-weight:700; font-size:17px; margin:0 0 12px; color:var(--mois-encre); }
.m1p-fiches-grille{ display:grid; grid-template-columns:repeat(2, minmax(0,1fr)); gap:12px; }
.m1p-fiche{ background:#fff; border:1px solid var(--mois-filet); border-radius:16px; padding:16px 18px; box-shadow:0 1px 2px rgba(21,18,58,.05); position:relative; overflow:hidden; min-width:0; }
.m1p-fiche::before{ content:""; position:absolute; left:0; top:0; right:0; height:5px; background:linear-gradient(90deg, var(--mois-iris) 0 40%, var(--mois-iris-pale) 40%); }
.m1p-fiche-titre{ font-weight:600; font-size:16px; line-height:1.35; color:var(--mois-encre); margin:4px 0 10px; }
.m1p-fiche dl{ margin:0; display:grid; gap:8px; }
.m1p-fiche dl > div{ display:grid; gap:2px; padding-top:8px; border-top:1px dashed var(--mois-filet); }
.m1p-fiche dt{ font-size:12px; font-weight:600; letter-spacing:.04em; text-transform:uppercase; color:var(--mois-texte2); }
.m1p-fiche dd{ margin:0; font-size:15.5px; line-height:1.5; overflow-wrap:anywhere; }
@media (max-width:640px){ .m1p-fiches-grille{ grid-template-columns:1fr; } }
/* Sources */
.m1p-sources{ margin:2.2em 0 1.4em; padding:22px 24px; border-radius:20px; background:var(--mois-fond); border:1px solid var(--mois-filet); }
.m1p-sources .sbt-encadre-titre{ font-family:var(--f-titre); font-weight:800; font-size:18px; margin:0 0 12px; color:var(--mois-encre); display:flex; align-items:center; gap:10px; }
.m1p-sources p.sbt-encadre-titre::before{ content:""; width:26px; height:8px; border-radius:999px; background:var(--mois-jaune); box-shadow:inset 0 0 0 1px rgba(21,18,58,.15); }
.m1p-sources-liste{ list-style:none; margin:0; padding:0; display:grid; gap:8px; }
.m1p-sources-liste li{ display:flex; flex-wrap:wrap; gap:2px 10px; font-size:14.5px; line-height:1.45; padding:8px 0; border-top:1px solid var(--mois-filet); }
.m1p-sources-liste li:first-child{ border-top:0; padding-top:0; }
.m1p-sources-liste b{ font-weight:600; color:var(--mois-encre); }
.m1p-sources-liste span{ color:var(--mois-texte2); }
/* Sommaire, rail */
.sbt-rail{ border-left:0; padding-left:0; top:calc(var(--entete) + 20px); gap:14px; }
.sbt-rail-carte{ border-radius:18px; padding:16px 16px 12px; box-shadow:var(--ombre-carte); }
.sbt-rail-carte--sommaire{ padding:0; border:0; box-shadow:none; background:none; }
.sbt-sommaire{ border:1px solid var(--mois-filet); border-left:1px solid var(--mois-filet); border-radius:18px; padding:14px 16px 12px; box-shadow:var(--ombre-carte); position:relative; overflow:hidden; }
.sbt-sommaire::before{ content:""; position:absolute; left:16px; top:0; width:44px; height:5px; border-radius:0 0 999px 999px; background:var(--mois-jaune); }
.sbt-sommaire-titre{ font-size:15px; font-weight:800; }
.sbt-sommaire ol{ margin-top:10px; gap:2px; }
.sbt-sommaire li a{ font-size:14px; line-height:1.3; padding:5px 6px; border-radius:10px; align-items:flex-start; }
.sbt-sommaire li a:hover{ background:var(--mois-iris-pale); text-decoration:none; color:var(--mois-encre); }
.sbt-sommaire li a.est-lu .sbt-sommaire-num{ background:var(--mois-jaune); }
.sbt-sommaire li a.est-ici{ background:var(--mois-iris-pale); }
.sbt-sommaire li a.est-ici .sbt-sommaire-num{ background:var(--mois-iris); color:#fff; }
.sbt-sommaire-num{ width:22px; height:22px; font-size:11px; background:var(--mois-iris-pale); font-variant-numeric:tabular-nums; margin-top:-1px; }
.sbt-sommaire-libelle{ display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
.m1p-rail-serre .sbt-sommaire li a{ padding:3px 6px; font-size:13.5px; }
.m1p-rail-serre .sbt-sommaire-libelle{ -webkit-line-clamp:1; }
.m1p-rail-serre .m1p-form--rail .m1p-form-q{ margin:6px 0 6px; }
.m1p-rail-relance{ background:var(--mois-encre); color:#fff; border:0; padding:20px; }
.m1p-rail-relance-titre{ font-family:var(--f-titre); font-weight:800; font-size:19px; margin:0 0 6px; }
.m1p-rail-relance p{ color:rgba(255,255,255,.82); font-size:14.5px; }
.m1p-rail-relance .m1p-btn{ width:100%; }
.sbt-sommaire-mobile .sbt-sommaire{ box-shadow:none; }
/* À lire aussi (bloc figé) : photo bornée */
.sbt-a-lire{ border-top:0; padding-top:0; margin-top:24px; }
.sbt-kicker{ font-size:24px; font-weight:800; letter-spacing:-.015em; margin-bottom:16px; }
.sbt-carte{ border-radius:18px; padding:8px; }
.sbt-carte img,.sbt-carte .m1p-repli{ aspect-ratio:auto; height:150px; min-height:0; width:100%; object-fit:cover; border-radius:12px; }
.sbt-carte-corps{ padding:12px 8px 8px; }
.sbt-carte-corps h3{ font-size:16.5px; line-height:1.3; font-weight:700; }
.sbt-article-mise-en-page--suite{ padding-bottom:88px; grid-template-columns:minmax(0,1fr); }
.sbt-article-mise-en-page--suite .sbt-carte img,.sbt-article-mise-en-page--suite .sbt-carte .m1p-repli{ height:190px; }
/* Encadrés, FAQ, auteur : jetons seulement + petites touches */
.sbt-encadre{ border-radius:20px; }
.sbt-faq summary{ font-family:var(--f-titre); }
.sbt-auteur{ border-radius:24px; }
.sbt-auteur-photo img{ border-radius:50%; }
.sbt-article-corps .m1p-form{ margin:1.6em 0; }

/* ---------- RUBRIQUE (couloir du mois) ---------- */
.m1p-rub-entete{ background:#fff; overflow:hidden; border-bottom:1px solid var(--mois-filet); }
.m1p-rub-entete-int{ display:grid; grid-template-columns:5fr 7fr; gap:48px; padding:20px 0 44px; align-items:center; }
.m1p-rub-texte .m1p-pastille-info{ margin:18px 0 0; }
.m1p-rub-titre{ font-size:clamp(36px, 3.6vw, 56px); line-height:1.02; letter-spacing:-.03em; margin:16px 0 14px; }
.m1p-rub-desc{ font-size:17px; line-height:1.55; color:var(--mois-texte2); max-width:52ch; }
.m1p-rub-desc p{ margin:0 0 .6em; }
.m1p-rub-nb{ margin:6px 0 0; font-size:15px; color:var(--mois-texte2); }
.m1p-rub-nb b{ font-family:var(--f-titre); font-size:28px; font-weight:800; color:var(--mois-encre); margin-right:4px; font-variant-numeric:tabular-nums; }
.m1p-couloir-mois{ position:relative; padding:0 0 4px; background:repeating-linear-gradient(90deg, var(--mois-filet) 0 1px, transparent 1px calc(100% / 30)); border-right:1px solid var(--mois-filet); }
.m1p-couloir-semaines{ display:grid; grid-template-columns:repeat(4,1fr); font-size:12px; font-weight:600; color:var(--mois-texte2); background:#fff; padding:6px 0 10px; }
.m1p-couloir-semaines span{ padding-left:8px; border-left:2px solid var(--mois-filet); }
.m1p-couloir-ici{ position:relative; margin-left:min(calc(var(--d) / 30 * 100%), calc(100% - 300px)); width:max(calc((var(--f) - var(--d)) / 30 * 100%), 300px); height:200px; margin-top:12px; margin-bottom:28px; }
.m1p-couloir-photo{ display:block; height:100%; border-radius:999px; overflow:hidden; box-shadow:var(--halo-iris), var(--ombre-carte); background:var(--mois-iris-pale); animation:m1p-allonge .7s cubic-bezier(.2,.8,.2,1) both; transform-origin:left; }
.m1p-couloir-photo img,.m1p-couloir-photo .m1p-repli{ width:100%; height:100%; object-fit:cover; }
.m1p-couloir-ici .m1p-etiquette-cheval{ left:32px; }
.m1p-couloir-autres{ list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:8px; }
.m1p-couloir-autres li{ margin-left:min(calc(var(--d) / 30 * 100%), calc(100% - 210px)); width:max(calc((var(--f) - var(--d)) / 30 * 100%), 210px); }
.m1p-couloir-autres a{ display:flex; align-items:center; justify-content:space-between; gap:10px; min-height:40px; padding:0 16px; border-radius:999px; background:var(--mois-iris-pale); color:var(--mois-encre); text-decoration:none; font-size:14px; transition:background .2s, color .2s; }
.m1p-couloir-autres a b{ font-weight:600; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.m1p-couloir-autres a span{ font-size:12px; color:var(--mois-texte2); white-space:nowrap; }
.m1p-couloir-autres a:hover{ background:var(--mois-iris); color:#fff; } .m1p-couloir-autres a:hover span{ color:rgba(255,255,255,.8); }
.m1p-rub-liste{ padding-top:52px; }
.m1p-une-rub{ display:grid; grid-template-columns:1.25fr 1fr; gap:0; margin-bottom:36px; border-radius:24px; overflow:hidden; background:var(--mois-encre); color:#fff; text-decoration:none; box-shadow:var(--ombre-carte-forte); height:clamp(360px, calc(100vh - 300px), 440px); }
.m1p-une-rub-photo{ display:block; height:100%; overflow:hidden; }
.m1p-une-rub-photo img,.m1p-une-rub-photo .m1p-repli{ width:100%; height:100%; object-fit:cover; transition:transform .8s cubic-bezier(.2,.8,.2,1); }
.m1p-une-rub:hover img{ transform:scale(1.03); }
.m1p-une-rub-texte{ display:flex; flex-direction:column; justify-content:center; gap:14px; padding:36px 40px; }
.m1p-une-rub-titre{ font-family:var(--f-titre); font-weight:800; font-size:clamp(24px, 2.2vw, 32px); line-height:1.12; letter-spacing:-.02em; }
.m1p-une-rub-chapo{ color:rgba(255,255,255,.8); font-size:16px; line-height:1.55; display:-webkit-box; -webkit-line-clamp:4; -webkit-box-orient:vertical; overflow:hidden; }
.m1p-une-rub .m1p-carte-pied{ color:rgba(255,255,255,.75); } .m1p-une-rub .m1p-carte-plage{ color:#fff; }
.m1p-une-rub .m1p-regle{ background:repeating-linear-gradient(90deg, rgba(255,255,255,.25) 0 1.5px, transparent 1.5px calc(100% / 30)); border-right-color:rgba(255,255,255,.25); }
.m1p-une-rub .m1p-btn{ align-self:flex-start; margin-top:6px; }
.m1p-une-rub:hover .m1p-btn{ background:var(--mois-iris-fonce); }
.m1p-vide{ font-size:18px; color:var(--mois-texte2); }
/* Fil d'actualité */
.m1p-fil{ list-style:none; margin:0 auto; padding:0; max-width:980px; display:flex; flex-direction:column; gap:12px; }
.m1p-fil-mois{ margin:20px 0 4px; }
.m1p-fil-mois:first-child{ margin-top:0; }
.m1p-fil-mois span{ display:inline-flex; align-items:center; gap:10px; font-family:var(--f-titre); font-weight:800; font-size:22px; letter-spacing:-.015em; }
.m1p-fil-mois span::before{ content:""; width:30px; height:8px; border-radius:999px; background:var(--mois-jaune); }
.m1p-fil-item a{ display:grid; grid-template-columns:64px 1fr 200px; gap:22px; align-items:center; padding:12px; border:1px solid var(--mois-filet); border-radius:18px; background:#fff; color:inherit; text-decoration:none; box-shadow:var(--ombre-carte); transition:transform .25s, box-shadow .25s; }
.m1p-fil-item a:hover{ transform:translateY(-2px); box-shadow:var(--ombre-carte-forte); color:inherit; }
.m1p-fil-item .m1p-case{ width:64px; height:64px; background:var(--mois-encre); }
.m1p-fil-texte{ display:flex; flex-direction:column; gap:6px; min-width:0; }
.m1p-fil-titre{ font-family:var(--f-titre); font-weight:700; font-size:20px; line-height:1.25; }
.m1p-fil-chapo{ font-size:15px; line-height:1.5; color:var(--mois-texte2); display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
.m1p-fil-photo{ display:block; height:120px; border-radius:12px; overflow:hidden; }
.m1p-fil-photo img,.m1p-fil-photo .m1p-repli{ width:100%; height:100%; object-fit:cover; min-height:0; }
.m1p-rub-relance{ padding:64px 0 80px; }
.m1p-rub-relance-int{ display:grid; grid-template-columns:1fr 420px; gap:56px; align-items:center; }
.m1p-rub-relance-txt{ font-size:17px; color:var(--mois-texte2); max-width:44ch; margin-top:14px; }
@media (max-width:1023px){
	.m1p-rub-entete-int{ grid-template-columns:minmax(0,1fr); gap:20px; padding-bottom:28px; }
	.m1p-une-rub{ grid-template-columns:1fr; height:auto; }
	.m1p-une-rub-photo{ height:220px; }
	.m1p-une-rub-texte{ padding:24px 22px 26px; }
	.m1p-rub-relance-int{ grid-template-columns:1fr; gap:24px; }
}
@media (max-width:640px){
	.m1p-couloir-ici{ margin-left:0; width:100%; height:140px; }
	.m1p-couloir-autres{ flex-direction:row; overflow-x:auto; gap:8px; padding-bottom:6px; scrollbar-width:none; }
	.m1p-couloir-autres li{ margin-left:0; width:auto; flex-shrink:0; }
	.m1p-couloir-mois{ background:none; border-right:0; }
	.m1p-couloir-semaines{ display:none; }
	.m1p-fil-item a{ grid-template-columns:52px 1fr; gap:14px; }
	.m1p-fil-photo{ display:none; }
	.m1p-fil-item .m1p-case{ width:52px; height:52px; }
	.m1p-fil-titre{ font-size:17px; }
}

/* ---------- PAGES DE LISTE, AUTEUR ---------- */
.m1p-page-entete{ background:var(--mois-fond); overflow:hidden; padding:20px 0 48px; }
.m1p-page-entete .m1p-cont{ z-index:1; }
.m1p-page-entete .m1p-regle{ max-width:320px; margin:22px 0 0; }
.m1p-page-titre{ font-size:clamp(34px, 3.6vw, 56px); letter-spacing:-.03em; line-height:1.04; margin:16px 0 10px; }
.m1p-page-sous{ font-size:18px; color:var(--mois-texte2); max-width:56ch; }
.m1p-recherche{ display:flex; gap:10px; max-width:620px; margin-top:22px; }
.m1p-recherche input{ flex:1; min-width:0; min-height:56px; border:1.5px solid var(--mois-filet); border-radius:999px; padding:0 22px; font-size:16.5px; background:#fff; }
.m1p-recherche input:focus{ outline:none; border-color:var(--mois-iris); box-shadow:0 0 0 4px rgba(75,59,255,.15); }
.m1p-rub-pilules{ list-style:none; margin:16px 0 0; padding:0; display:flex; flex-wrap:wrap; gap:8px; }
.m1p-auteur-entete{ background:var(--mois-fond); overflow:hidden; }
.m1p-auteur-int{ display:grid; grid-template-columns:220px 1fr; gap:48px; align-items:center; padding:32px 0 52px; }
.m1p-auteur-photo{ position:relative; }
.m1p-auteur-photo .m1p-avatar{ width:200px; height:200px; box-shadow:0 0 0 8px #fff, var(--halo-iris); }
.m1p-auteur-photo .m1p-etiquette-cheval{ left:40px; bottom:-10px; }
.m1p-auteur-role{ font-size:17px; font-weight:600; color:var(--mois-iris); margin:0 0 12px; }
.m1p-auteur-bio{ font-size:17px; color:var(--mois-texte2); max-width:62ch; }
@media (max-width:767px){ .m1p-auteur-int{ grid-template-columns:1fr; gap:24px; } .m1p-auteur-photo .m1p-avatar{ width:132px; height:132px; } .m1p-recherche{ flex-direction:column; } }

/* ---------- CONTACT ---------- */
.m1p-contact{ background:var(--mois-fond); overflow:hidden; padding:14px 0 56px; }
.m1p-contact .m1p-page-titre{ margin:10px 0 6px; }
.m1p-contact .m1p-form-simple .m1p-champ{ margin-bottom:8px; }
.m1p-contact-scene{ position:absolute; left:0; right:0; top:200px; height:300px; pointer-events:none; }
.m1p-contact-barre{ position:absolute; left:34%; right:-80px; top:20px; height:260px; border-radius:999px 0 0 999px; overflow:hidden; transform:rotate(-6deg); transform-origin:left center; box-shadow:var(--halo-iris); background:var(--mois-iris-pale); }
.m1p-contact-barre img,.m1p-contact-barre .m1p-repli{ width:100%; height:100%; object-fit:cover; opacity:.92; }
.m1p-contact .m1p-j30{ right:4%; top:-30px; }
.m1p-contact-int{ z-index:2; }
.m1p-contact-tete{ max-width:640px; margin-bottom:26px; }
.m1p-contact-cartes{ display:grid; grid-template-columns:420px 420px; gap:32px; align-items:start; }
.m1p-contact-carte-sur{ display:inline-flex; margin:0 0 10px; padding:6px 14px; border-radius:999px; background:#fff; font-size:13.5px; font-weight:600; box-shadow:0 4px 12px -4px rgba(21,18,58,.2); }
.m1p-form-simple .m1p-form-titre{ margin-bottom:14px; }
.m1p-form-simple .m1p-btn{ width:100%; }
@media (max-width:960px){ .m1p-contact-cartes{ grid-template-columns:1fr; max-width:520px; } .m1p-contact-scene{ top:150px; height:180px; } .m1p-contact-barre{ left:20%; height:150px; } .m1p-contact .m1p-j30{ width:72px; height:72px; top:-20px; } .m1p-contact .m1p-j30 b{ font-size:22px; } .m1p-contact .m1p-j30 small{ font-size:8.5px; } }
.m1p-lecture-seule{ max-width:var(--sb-lecture); }

/* ---------- À PROPOS ---------- */
.m1p-apropos-hero{ background:var(--mois-fond); overflow:hidden; }
.m1p-apropos-int{ display:grid; grid-template-columns:1fr 1fr; gap:40px; align-items:center; padding:16px 0 56px; min-height:560px; }
.m1p-apropos-texte .m1p-jours{ margin:16px 0 0; }
.m1p-apropos-scene{ position:relative; height:420px; margin-right:calc((100vw - 100%) / -2 - 60px); }
.m1p-hero-barre--seule{ position:absolute; left:0; right:0; top:60px; height:320px; transform:rotate(-7deg); transform-origin:left center; animation:none; }
.m1p-apropos-scene .m1p-j30{ left:clamp(150px, 34%, 300px); right:auto; top:auto; bottom:4px; } /* posée à cheval sur le bas de la barre photo, toujours dans l'écran */
.m1p-methode-barres{ list-style:none; margin:0; padding:20px 0 6px; display:flex; flex-direction:column; gap:12px; background:repeating-linear-gradient(90deg, var(--mois-filet) 0 1px, transparent 1px calc(100% / 30)); border-right:1px solid var(--mois-filet); }
.m1p-methode-barres li{ margin-left:calc(var(--d) / 30 * 100%); width:calc((var(--f) - var(--d)) / 30 * 100%); display:flex; flex-direction:column; gap:2px; padding:12px 24px; border-radius:999px; background:var(--mois-iris); color:#fff; box-shadow:0 10px 24px -12px rgba(75,59,255,.8); }
.m1p-methode-barres li:nth-child(2){ background:#6A5CFF; } .m1p-methode-barres li:nth-child(3){ background:var(--mois-encre); } .m1p-methode-barres li:nth-child(4){ background:var(--mois-jaune); color:var(--mois-encre); }
.m1p-methode-barres b{ font-family:var(--f-titre); font-size:18px; font-weight:800; }
.m1p-methode-barres span{ font-size:14px; opacity:.9; }
.m1p-apropos-colonnes{ display:grid; grid-template-columns:minmax(0,1fr) 380px; gap:56px; align-items:start; }
.m1p-apropos-texte-long{ background:#fff; border-radius:24px; padding:32px 36px; box-shadow:var(--ombre-carte); }
.m1p-apropos-texte-long h2:first-child{ margin-top:0; }
.m1p-apropos-cote{ display:flex; flex-direction:column; gap:20px; position:sticky; top:calc(var(--entete) + 24px); }
.m1p-auteurs{ list-style:none; margin:0; padding:0; display:grid; gap:10px; }
.m1p-auteurs a{ display:flex; align-items:center; gap:16px; padding:12px; border-radius:18px; background:#fff; border:1px solid var(--mois-filet); color:inherit; text-decoration:none; box-shadow:var(--ombre-carte); }
.m1p-auteurs .m1p-avatar{ width:72px; height:72px; }
.m1p-auteurs b{ display:block; font-family:var(--f-titre); font-size:18px; }
.m1p-auteurs small{ color:var(--mois-texte2); font-size:14px; }
.m1p-ne-fait-pas{ background:#FFF8D1; border:1px solid #F3E39A; border-radius:20px; padding:20px 22px; }
.m1p-ne-fait-pas-titre{ font-family:var(--f-titre); font-weight:800; font-size:19px; margin:0 0 10px; }
.m1p-ne-fait-pas ul{ margin:0; padding:0; list-style:none; display:grid; gap:8px; }
.m1p-ne-fait-pas li{ position:relative; padding-left:26px; font-size:15px; line-height:1.45; }
.m1p-ne-fait-pas li::before{ content:""; position:absolute; left:0; top:8px; width:16px; height:6px; border-radius:999px; background:var(--mois-encre); }
.m1p-apropos-cote .m1p-btn{ width:100%; }
@media (max-width:1023px){
	.m1p-apropos-int{ grid-template-columns:minmax(0,1fr); min-height:0; padding-bottom:36px; }
	.m1p-apropos-scene{ height:200px; margin-right:calc(-1 * var(--gout)); }
	.m1p-hero-barre--seule{ top:30px; height:150px; transform:rotate(-4deg); }
	.m1p-apropos-scene .m1p-j30{ left:auto; bottom:auto; right:20px; top:0; width:72px; height:72px; } .m1p-apropos-scene .m1p-j30 b{ font-size:22px; } .m1p-apropos-scene .m1p-j30 small{ font-size:8.5px; }
	.m1p-apropos-colonnes{ grid-template-columns:1fr; gap:28px; }
	.m1p-apropos-cote{ position:static; }
	.m1p-methode-barres li{ margin-left:0; width:100%; border-radius:20px; }
	.m1p-apropos-texte-long{ padding:22px 18px; }
}

/* ---------- PIED DE PAGE (bloc figé, habillé) ---------- */
.sbt-footer{ position:relative; background:var(--mois-encre); color:rgba(255,255,255,.82); padding-top:64px; margin-top:0; }
.sbt-footer::before{ content:""; position:absolute; left:0; right:0; top:0; height:6px; background:var(--mois-jaune); }
.sbt-footer::after{ content:""; position:absolute; left:50%; transform:translateX(-50%); top:6px; height:22px; width:min(var(--cont), 100% - 2*var(--gout)); background:repeating-linear-gradient(90deg, rgba(255,255,255,.15) 0 1px, transparent 1px calc(100% / 30)); border-right:1px solid rgba(255,255,255,.15); }
.sbt-footer .sbt-conteneur{ max-width:var(--cont); padding-inline:0; width:min(var(--cont), 100% - 2*var(--gout)); }
.sbt-footer a{ color:rgba(255,255,255,.86); }
.sbt-footer a:hover{ color:var(--mois-jaune); }
.sbt-footer-logo{ display:flex; align-items:center; gap:10px; font-family:var(--f-titre); font-weight:800; font-size:21px; color:#fff; }
.sbt-footer-logo::before{ content:""; width:40px; height:40px; flex-shrink:0; background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 40 40'%3E%3Crect x='1' y='1' width='38' height='38' rx='11' fill='%23ffffff' fill-opacity='.08'/%3E%3Cg stroke='%23ffffff' stroke-opacity='.35' stroke-width='1.4' stroke-dasharray='2 2.4'%3E%3Cpath d='M8 7v26M14 7v26M20 7v26M26 7v26M32 7v26'/%3E%3C/g%3E%3Crect x='5' y='16.5' width='26' height='7' rx='3.5' fill='%234B3BFF' transform='rotate(-8 20 20)'/%3E%3Ccircle cx='31.5' cy='18.4' r='5' fill='%23FFE14D' stroke='%2315123A' stroke-width='1.6'/%3E%3C/svg%3E") center/contain no-repeat; }
.sbt-footer-desc{ color:rgba(255,255,255,.7); font-size:15px; max-width:30ch; }
.sbt-footer .sbt-t4{ color:var(--mois-jaune); font-family:var(--f-texte); font-size:13px; font-weight:600; letter-spacing:.08em; text-transform:uppercase; }
.sbt-footer-colonne ul{ list-style:none; padding:0; margin:0; }
.sbt-footer-colonne li{ margin:0 0 10px; font-size:15px; }
.sbt-footer-cta{ background:rgba(255,255,255,.06); border:1px solid rgba(255,255,255,.1); border-radius:24px; }
.sbt-footer-cta .sbt-t3{ color:#fff; font-family:var(--f-titre); font-weight:800; font-size:22px; }
.sbt-footer-cta .sbt-btn{ background:var(--mois-jaune); color:var(--mois-encre); border-radius:999px; min-height:52px; padding:0 26px; font-weight:600; display:inline-flex; align-items:center; }
.sbt-footer-cta .sbt-btn:hover{ background:#fff; color:var(--mois-encre); }
.sbt-footer-bas{ color:rgba(255,255,255,.6); font-size:13.5px; border-top-color:rgba(255,255,255,.12); padding-bottom:28px; }

/* Carte de « une » des guides : l'espace en trop va à la photo, jamais un vide sous le texte */
.m1p-carte--grande .m1p-carte-photo{ height:auto; aspect-ratio:auto; flex:1 1 auto; min-height:220px; }
.m1p-carte--grande .m1p-carte-corps{ flex:0 0 auto; }
.m1p-contact .m1p-page-titre{ font-size:clamp(32px, 2.8vw, 44px); }
.m1p-contact .m1p-page-sous{ font-size:16.5px; max-width:none; margin-bottom:0; }
.m1p-contact-tete{ margin-bottom:18px; }
.m1p-carte--grande .m1p-carte-photo img,.m1p-carte--grande .m1p-carte-photo .m1p-repli{ position:absolute; inset:0; }
.m1p-ess-petites{ align-content:start; }

/* ---------- Infographies du socle [sbs_*] habillées à la barre du mois ---------- */
.sbs_tarifs,.sbs_frise,.sbs_jauges,.sbs_lieu{ display:block; margin:1.8em 0; padding:22px 24px; border-radius:20px; background:var(--mois-fond); border:1px solid var(--mois-filet); }
.sbs_tarifs_titre,.sbs_frise_titre,.sbs_jauges_titre{ display:block; font-family:var(--f-titre); font-weight:800; font-size:18px; margin-bottom:14px; color:var(--mois-encre); }
.sbs_tarif{ display:grid; grid-template-columns:minmax(0,1fr) auto; gap:4px 14px; align-items:center; padding:10px 0; border-top:1px solid var(--mois-filet); }
.sbs_tarif:first-of-type{ border-top:0; }
.sbs_tarif_libelle{ font-size:15.5px; }
.sbs_tarif data,.sbs_tarif .sbs_tarif_prix{ font-family:var(--f-titre); font-weight:800; font-variant-numeric:tabular-nums; }
.sbs_tarif_barre{ grid-column:1 / -1; width:100%; height:12px; -webkit-appearance:none; appearance:none; border:0; background:#fff; border-radius:999px; overflow:hidden; }
.sbs_tarif_barre::-webkit-meter-bar{ background:#fff; border:1px solid var(--mois-filet); border-radius:999px; height:12px; }
.sbs_tarif_barre::-webkit-meter-optimum-value,.sbs_tarif_barre::-webkit-meter-suboptimum-value,.sbs_tarif_barre::-webkit-meter-even-less-good-value{ background:var(--mois-iris); border-radius:999px; }
.sbs_tarif_barre::-moz-meter-bar{ background:var(--mois-iris); border-radius:999px; }
.sbs_tarifs_notes,.sbs_source{ display:block; font-size:12.5px; color:var(--mois-texte2); margin-top:10px; }
.sbs_jauges{ display:grid; grid-template-columns:repeat(auto-fit, minmax(160px,1fr)); gap:16px; }
.sbs_jauges_titre{ grid-column:1 / -1; margin-bottom:0; }
.sbs_jauge{ display:flex; flex-direction:column; gap:4px; background:#fff; border:1px solid var(--mois-filet); border-radius:16px; padding:16px; }
.sbs_jauge_valeur{ font-family:var(--f-titre); font-weight:800; font-size:34px; line-height:1; color:var(--mois-iris); font-variant-numeric:tabular-nums; }
.sbs_jauge_unite{ font-weight:700; color:var(--mois-encre); }
.sbs_jauge_libelle{ font-size:14.5px; color:var(--mois-texte2); }
.sbs_frise{ position:relative; }
.sbs_etape{ position:relative; display:grid; grid-template-columns:110px minmax(0,1fr); gap:4px 16px; padding:10px 0; border-top:1px dashed var(--mois-filet); }
.sbs_etape:first-of-type{ border-top:0; }
.sbs_etape_date{ font-weight:700; font-size:14px; color:var(--mois-encre); background:var(--mois-jaune); border-radius:999px; padding:3px 10px; align-self:start; justify-self:start; font-variant-numeric:tabular-nums; }
.sbs_etape_titre{ font-weight:600; }
.sbs_etape_desc{ grid-column:2; font-size:15px; color:var(--mois-texte2); }
.sbs_lieu_nom{ display:block; font-weight:700; font-size:17px; }
.sbs_lieu_adresse{ font-style:normal; color:var(--mois-texte2); }
@media (max-width:540px){ .sbs_etape{ grid-template-columns:1fr; } .sbs_etape_desc{ grid-column:1; } }


/* ---------- CORRECTIONS SORTIE 1 (10/10) ---------- */
/* Une étiquette tient TOUJOURS dans sa photo (R-1881) : retour à la ligne plutôt que débordement. */
.m1p-carte-photo .m1p-pastille,.m1p-porte-photo .m1p-pastille{ max-width:calc(100% - 20px); white-space:normal; line-height:1.2; padding-block:4px; }

/* Titre d'article et colonne de lecture sur la même verticale : la grille prend la largeur de l'en-tête. */
.sbt-article-mise-en-page{ width:min(var(--sb-conteneur), 100% - 2 * var(--gout)); max-width:none; padding-inline:0; justify-content:start; }

/* Infographies du corps : un <figure> par bloc, titré par son contenu réel, pictogramme de la DA. */
.sbt-article-corps .m1p-info{ margin:1.7em 0 1.9em; padding:16px 16px 18px; border-radius:22px; background:var(--mois-fond); box-shadow:inset 0 0 0 1px var(--mois-filet); }
.sbt-article-corps .m1p-info-tete{ display:flex; align-items:center; gap:12px; margin:0 2px 14px; font-family:var(--f-titre); font-weight:700; font-size:15px; line-height:1.3; letter-spacing:-.005em; color:var(--mois-encre); }
.m1p-info-picto{ flex:none; display:block; height:auto; max-width:45%; }
.sbt-article-corps .m1p-info > .m1p-liste,.sbt-article-corps .m1p-info > .m1p-etapes,.sbt-article-corps .m1p-info > .m1p-fiches-grille{ margin:0; }
.sbt-article-corps .m1p-info--sources{ margin:0; padding:0; background:none; box-shadow:none; border-radius:0; }
.sbt-article-corps .m1p-info--sources .sbt-encadre-titre{ display:flex; align-items:center; gap:10px; margin:0 0 12px; font-size:18px; font-weight:800; }
@media (max-width:640px){ .sbt-article-corps .m1p-info{ padding:12px 12px 14px; border-radius:18px; margin-inline:-4px; } }

/* ===================== Corrections /peaufiner (10/10/2026) ===================== */
/* Pages d'argent : la photo à la une n'est plus cachée derrière le formulaire (BE-0016) — barre arrondie posée SOUS la carte, entière. */
.m1p-art-entete-form{ display:flex; flex-direction:column; gap:18px; }
.m1p-art-entete-form:has(.m1p-art-barre--fond){ margin-bottom:-40px; }
.m1p-art-barre--fond{ position:relative; order:2; left:auto; right:auto; top:auto; transform:none; z-index:0; height:132px; flex:none; margin-right:-28px; border-radius:999px 22px 22px 999px; }
.sbt-article:not(.m1p-sans-photo) .m1p-art-entete--form ~ .sbt-article-mise-en-page .sbt-rail{ margin-top:80px; }
@media (max-width:1099px){
	.m1p-art-entete-form:has(.m1p-art-barre--fond){ margin-bottom:20px; }
	.m1p-art-barre--fond{ display:block; height:150px; margin-right:calc(-1 * var(--gout)); border-radius:999px 0 0 999px; }
}
/* Article d'archive (méta _m1p_masque) : bandeau discret en tête. */
.m1p-archive{ display:inline-flex; align-items:center; gap:10px; margin:10px 0 2px; padding:8px 14px; border-radius:12px; background:#fff; border:1px solid var(--mois-filet); color:var(--mois-texte2); font-size:14px; line-height:1.4; }
.m1p-archive .m1p-point{ flex:none; background:var(--mois-texte2); box-shadow:none; }
/* Rubriques / recherche : un vrai titre de niveau 2 avant la grille. */
.m1p-liste-titre{ font-size:clamp(22px, 1.9vw, 28px); line-height:1.15; letter-spacing:-.015em; margin:0 0 20px; }
.m1p-carte--basse .m1p-carte-chapo{ font-size:15px; line-height:1.5; -webkit-line-clamp:3; }
/* Contact : la scène (photo + J30) vit sous l'intro, jamais posée sur le texte. */
.m1p-contact-int{ position:relative; }
.m1p-contact-tete,.m1p-contact-cartes{ position:relative; z-index:1; }
.m1p-contact-scene{ left:calc(50% - 50vw); right:calc(50% - 50vw); top:186px; z-index:0; }
.m1p-objet{ border:0; margin:0 0 10px; padding:0; min-width:0; }
.m1p-objet legend{ padding:0; margin:0 0 6px; font-size:13.5px; font-weight:600; color:var(--mois-encre); }
.m1p-objet-choix{ display:flex; flex-wrap:wrap; gap:6px; }
.m1p-objet label{ position:relative; display:inline-flex; }
.m1p-objet input{ position:absolute; inset:0; opacity:0; margin:0; cursor:pointer; }
.m1p-objet span{ display:inline-flex; align-items:center; min-height:44px; padding:0 13px; white-space:nowrap; border-radius:999px; border:1.5px solid var(--mois-filet); background:#fff; font-size:14px; font-weight:500; color:var(--mois-encre); transition:background .15s, border-color .15s; }
.m1p-objet input:checked + span{ background:var(--mois-iris-pale); border-color:var(--mois-iris); font-weight:600; }
.m1p-objet input:focus-visible + span{ outline:3px solid var(--mois-iris); outline-offset:2px; }
@media (max-width:960px){
	.m1p-contact-scene{ position:relative; left:auto; right:auto; top:auto; height:92px; margin:14px calc(-1 * var(--gout)) 10px; }
	.m1p-contact-barre{ left:96px; right:-40px; top:12px; height:72px; transform:rotate(-3deg); border-radius:999px 0 0 999px; }
	.m1p-contact .m1p-j30{ left:var(--gout); right:auto; top:10px; width:72px; height:72px; }
	.m1p-contact-tete{ margin-bottom:0; }
}

/* =====================================================================
   JUGE 1 (10/10) — corps en panneau, rythme constant, blocs tirés du texte,
   pages guides, À lire aussi pleine largeur, auteur, contact, rubrique Actualité.
   ===================================================================== */
/* Corps : un panneau blanc posé sur le lavande du mois, rythme vertical à deux pas (texte 22 / blocs 32). */
.sbt-article{ background:var(--mois-fond); padding-bottom:72px; }
.sbt-article .sbt-article-principal{ background:#fff; border:1px solid var(--mois-filet); border-radius:28px; padding:44px 52px 48px; box-shadow:var(--ombre-carte); min-width:0; }
.sbt-article .sbt-article-corps > *{ margin-top:0; margin-bottom:0; }
.sbt-article .sbt-article-corps > * + *{ margin-top:22px; }
.sbt-article .sbt-article-corps > h2{ margin-top:56px; margin-bottom:0; }
.sbt-article .sbt-article-corps > h3{ margin-top:34px; margin-bottom:0; }
.sbt-article .sbt-article-corps > h2 + *,.sbt-article .sbt-article-corps > h3 + *{ margin-top:14px; }
.sbt-article .sbt-article-corps > :is(figure,aside,details,.sbt-encadre,.sbt-faq,.m1p-profils,.m1p-bloc-citable,.sbs_tableau,.m1p-liste,.m1p-etapes,.m1p-form){ margin-top:32px; }
.sbt-article .sbt-article-corps > :is(figure,aside,.sbt-encadre,.sbt-faq,.m1p-profils,.m1p-bloc-citable,.sbs_tableau,.m1p-liste,.m1p-etapes) + :not(h2,h3){ margin-top:32px; }
.sbt-article .sbt-article-corps > .sbs_tableau + .m1p-paire-source{ margin-top:10px; }
.sbt-article .sbt-article-corps > :first-child{ margin-top:0; }
.sbt-article .sbt-article-corps figure figcaption{ margin-top:0; }
.sbt-article .sbt-article-principal > .sbt-auteur,.sbt-article .sbt-article-principal > section,.sbt-article .sbt-article-principal > aside{ margin-top:40px; }
@media (max-width:760px){
	.sbt-article .sbt-article-principal{ margin-inline:calc(-1 * var(--gout)); border-radius:0; border-inline:0; padding:30px var(--gout) 34px; box-shadow:none; }
	.sbt-article .sbt-article-corps > h2{ margin-top:44px; }
	.sbt-article{ padding-bottom:40px; }
}
/* « Par où commencer » : profils alignés en grille, carte entière cliquable, jamais de lien souligné brut. */
.m1p-profils{ background:var(--mois-fond); border:1px solid var(--mois-filet); border-radius:22px; padding:18px; }
.m1p-profils-titre{ display:flex; align-items:center; gap:10px; margin:2px 4px 14px; font-family:var(--f-titre); font-weight:800; font-size:17px; color:var(--mois-encre); }
.m1p-profils-grille{ display:grid; grid-template-columns:repeat(auto-fit, minmax(180px, 1fr)); gap:12px; align-items:stretch; }
.sbt-article-corps a.m1p-profil{ display:flex; flex-direction:column; gap:8px; padding:16px 16px 14px; background:#fff; border:1px solid var(--mois-filet); border-radius:16px; color:var(--mois-encre); font-weight:400; text-decoration:none; box-shadow:0 1px 2px rgba(21,18,58,.05); transition:transform .2s, box-shadow .2s, border-color .2s; }
.sbt-article-corps a.m1p-profil:hover{ transform:translateY(-2px); border-color:var(--mois-iris); box-shadow:var(--ombre-carte); }
.sbt-article-corps a.m1p-profil:focus-visible{ outline:3px solid var(--mois-iris); outline-offset:2px; }
.m1p-profil-sur{ align-self:flex-start; padding:3px 10px; border-radius:999px; background:var(--mois-iris-pale); color:var(--mois-iris-fonce); font-size:12.5px; font-weight:700; }
.m1p-profil:nth-child(2) .m1p-profil-sur{ background:var(--mois-jaune); color:var(--mois-encre); }
.m1p-profil-titre{ font-family:var(--f-titre); font-weight:700; font-size:16.5px; line-height:1.3; }
.m1p-profil-resume{ font-size:14.5px; line-height:1.5; color:var(--mois-texte2); }
.m1p-profil-lire{ margin-top:auto; padding-top:6px; font-size:14px; font-weight:600; color:var(--mois-iris); }
/* Notes « Fraîcheur des chiffres / Limite de compétence » : un encadré à deux repères. */
.m1p-note{ background:#FFFAE0; border:1px solid #F1E3A0; border-radius:20px; padding:18px 20px; }
.m1p-note-grille{ display:grid; gap:14px 24px; }
.m1p-note-grille--2,.m1p-note-grille--3{ grid-template-columns:repeat(auto-fit, minmax(240px, 1fr)); }
.m1p-note-item p{ margin:0; font-size:15px; line-height:1.55; color:var(--mois-texte2); }
.m1p-note-item p.m1p-note-titre{ display:flex; align-items:center; gap:8px; margin-bottom:6px; font-family:var(--f-titre); font-weight:800; font-size:15.5px; color:var(--mois-encre); }
.m1p-note-titre::before{ content:""; width:18px; height:7px; border-radius:999px; background:var(--mois-jaune); box-shadow:inset 0 0 0 1px rgba(21,18,58,.18); }
/* « La réponse courte » et source appariée. */
.m1p-bloc-citable{ position:relative; background:var(--mois-iris-pale); border-radius:20px; padding:20px 24px 18px 28px; }
.m1p-bloc-citable::before{ content:""; position:absolute; left:0; top:18px; bottom:18px; width:5px; border-radius:0 5px 5px 0; background:var(--mois-iris); }
.m1p-bloc-citable p{ margin:0; } .m1p-bloc-citable p + p{ margin-top:10px; }
.m1p-paire-source{ font-size:13.5px; line-height:1.5; color:var(--mois-texte2); }
.m1p-paire-source a{ font-weight:500; }
/* Bloc « À retenir » tiré d'une section. */
.sbt-encadre.m1p-retenu{ background:#FFF7CC; border:1px solid #F1DD78; border-radius:20px; padding:18px 22px 18px; }
.m1p-retenu .sbt-encadre-titre{ display:flex; align-items:center; gap:10px; margin:0 0 6px; font-family:var(--f-titre); font-weight:800; font-size:15px; color:var(--mois-encre); }
.m1p-retenu .sbt-encadre-titre::before{ content:""; width:26px; height:8px; border-radius:999px; background:var(--mois-iris); }
.m1p-retenu p:not(.sbt-encadre-titre){ margin:0; font-size:17px; line-height:1.55; font-weight:500; color:var(--mois-encre); }
/* Chiffre clé présent dans le texte. */
.m1p-chiffre{ display:grid; grid-template-columns:auto minmax(0,1fr); align-items:center; gap:22px; background:var(--mois-iris-pale); border-radius:20px; padding:20px 24px; }
.m1p-chiffre-val{ margin:0; font-family:var(--f-titre); font-weight:800; font-size:clamp(38px, 4vw, 54px); line-height:1; letter-spacing:-.03em; color:var(--mois-iris); white-space:nowrap; font-variant-numeric:tabular-nums; }
.m1p-chiffre-val small{ font-size:.5em; margin-left:4px; letter-spacing:0; }
.sbt-article .m1p-chiffre figcaption{ margin:0; font-size:16px; line-height:1.5; color:var(--mois-encre); }
@media (max-width:520px){ .m1p-chiffre{ grid-template-columns:1fr; gap:10px; } }
/* Liste cochée (énumération du texte). */
.m1p-liste--coche{ grid-template-columns:repeat(2, minmax(0,1fr)); gap:8px; }
.m1p-liste--coche li{ padding:11px 14px 11px 44px; font-size:15.5px; }
.m1p-liste--coche li::before,.m1p-liste--coche li:nth-child(n)::before{ left:14px; top:13px; width:20px; height:20px; border-radius:50%; background:var(--mois-iris); box-shadow:none; }
.m1p-liste--coche li::after{ content:""; position:absolute; left:21px; top:17px; width:5px; height:9px; border:solid #fff; border-width:0 2px 2px 0; transform:rotate(45deg); }
@media (max-width:640px){ .m1p-liste--coche{ grid-template-columns:1fr; } }
.m1p-sources--methode p{ margin:0; font-size:14.5px; line-height:1.55; color:var(--mois-texte2); }
/* « À lire aussi » : section pleine largeur, cartes du site (étiquette + frise). */
.m1p-a-lire-bande{ background:#fff; border-top:1px solid var(--mois-filet); padding:60px 0 84px; }
.m1p-a-lire-bande .sbt-a-lire{ margin:0; padding:0; border:0; }
.m1p-a-lire-tete{ display:flex; flex-wrap:wrap; align-items:baseline; justify-content:space-between; gap:8px 24px; margin-bottom:22px; }
.m1p-a-lire-tete .sbt-kicker{ margin:0; font-family:var(--f-titre); font-size:clamp(24px, 2.2vw, 30px); letter-spacing:-.02em; color:var(--mois-encre); }
@media (max-width:640px){ .m1p-a-lire-bande{ padding:40px 0 56px; } }
/* Fiche auteur : en-tête en carte (photo, rôle, bio réelle, rubriques suivies, compteurs). */
.m1p-auteur-entete > .m1p-cont{ padding:18px 0 56px; z-index:1; }
.m1p-auteur-carte{ display:grid; grid-template-columns:230px minmax(0,1fr) 210px; gap:40px; align-items:start; margin-top:16px; padding:36px 40px; background:#fff; border:1px solid var(--mois-filet); border-radius:28px; box-shadow:var(--ombre-carte); }
.m1p-auteur-carte .m1p-auteur-photo .m1p-avatar{ width:220px; height:220px; object-fit:cover; }
.m1p-auteur-carte .m1p-page-titre{ margin:2px 0 12px; }
.m1p-auteur-carte .m1p-auteur-role{ margin:0; display:inline-flex; padding:4px 12px; border-radius:999px; background:var(--mois-iris-pale); font-size:14px; }
.m1p-auteur-bio p{ margin:0 0 10px; }
.m1p-auteur-rubs{ margin-top:18px; }
.m1p-auteur-rubs-titre{ margin:0 0 8px; font-family:var(--f-titre); font-weight:800; font-size:15px; color:var(--mois-encre); }
.m1p-auteur-rubs ul{ list-style:none; margin:0; padding:0; display:flex; flex-wrap:wrap; gap:8px; }
.m1p-auteur-rubs a{ display:inline-flex; align-items:center; gap:10px; padding:7px 8px 7px 12px; border:1px solid var(--mois-filet); border-radius:999px; background:var(--mois-fond); color:var(--mois-encre); text-decoration:none; font-size:14px; }
.m1p-auteur-rubs a:hover{ border-color:var(--mois-iris); }
.m1p-auteur-rubs .m1p-regle{ width:54px; flex:none; }
.m1p-auteur-rubs b{ font-weight:600; }
.m1p-auteur-rubs a span{ min-width:26px; padding:2px 7px; border-radius:999px; background:#fff; font-size:12.5px; font-weight:700; text-align:center; font-variant-numeric:tabular-nums; }
.m1p-auteur-chiffres{ list-style:none; margin:0; padding:0; display:grid; gap:10px; }
.m1p-auteur-chiffres li{ display:flex; flex-direction:column; gap:2px; padding:14px 18px; border-radius:18px; background:var(--mois-fond); border:1px solid var(--mois-filet); }
.m1p-auteur-chiffres li:first-child{ background:var(--mois-encre); border-color:var(--mois-encre); color:#fff; }
.m1p-auteur-chiffres b{ font-family:var(--f-titre); font-weight:800; font-size:32px; line-height:1.05; letter-spacing:-.02em; font-variant-numeric:tabular-nums; }
.m1p-auteur-chiffres b small{ font-size:.55em; }
.m1p-auteur-chiffres span{ font-size:13.5px; color:var(--mois-texte2); }
.m1p-auteur-chiffres li:first-child span{ color:rgba(255,255,255,.78); }
@media (max-width:1080px){ .m1p-auteur-carte{ grid-template-columns:180px minmax(0,1fr); } .m1p-auteur-carte .m1p-auteur-photo .m1p-avatar{ width:170px; height:170px; } .m1p-auteur-chiffres{ grid-column:1 / -1; grid-template-columns:repeat(3, minmax(0,1fr)); } }
@media (max-width:640px){ .m1p-auteur-carte{ grid-template-columns:1fr; gap:22px; padding:24px 20px; } .m1p-auteur-carte .m1p-auteur-photo .m1p-avatar{ width:132px; height:132px; } .m1p-auteur-chiffres b{ font-size:24px; } .m1p-auteur-chiffres li{ padding:10px 12px; } }
/* Contact : la photo commence à droite du second formulaire, visage entier ; plus aucun débris entre les cartes. */
@media (min-width:1320px){
	.m1p-contact-scene{ top:150px; height:420px; }
	.m1p-contact-barre{ left:916px; right:-40px; top:0; height:400px; border-radius:220px 220px 30px 30px; transform:rotate(3deg); transform-origin:center; }
	.m1p-contact-barre img{ object-position:60% 18%; opacity:1; }
	.m1p-contact .m1p-j30{ left:880px; right:auto; top:330px; }
}
@media (min-width:961px) and (max-width:1319px){ .m1p-contact-scene{ display:none; } }
.m1p-contact-suite{ padding:64px 0 84px; }
.m1p-contact-intro{ max-width:720px; margin-bottom:26px; }
.m1p-contact-intro p{ margin:0; font-size:19px; line-height:1.55; color:var(--mois-encre); }
.m1p-contact-motifs{ display:grid; grid-template-columns:repeat(auto-fit, minmax(280px, 1fr)); gap:20px; }
.m1p-contact-motif{ background:var(--mois-fond); border:1px solid var(--mois-filet); border-radius:22px; padding:24px 26px 22px; }
.m1p-contact-motif .m1p-regle{ display:block; width:140px; margin-bottom:16px; }
.m1p-contact-motif-titre{ font-size:22px; line-height:1.2; letter-spacing:-.015em; margin:0 0 8px; }
.m1p-contact-motif-texte p{ margin:0; font-size:16px; line-height:1.6; color:var(--mois-texte2); }
.m1p-contact-limite{ margin-top:20px; display:grid; grid-template-columns:minmax(0,300px) minmax(0,1fr); gap:28px; align-items:start; background:var(--mois-jaune); border-radius:24px; padding:28px 32px; color:var(--mois-encre); }
.m1p-contact-limite-titre{ margin:0; font-size:24px; line-height:1.15; letter-spacing:-.015em; }
.m1p-contact-limite p{ margin:0; font-size:16px; line-height:1.6; }
@media (max-width:760px){ .m1p-contact-limite{ grid-template-columns:1fr; gap:10px; padding:22px 20px; } .m1p-contact-suite{ padding:44px 0 56px; } }
/* Accueil 390 : la « une » d'actualité garde sa photo entière, le titre passe dessous. */
@media (max-width:640px){
	.m1p-actu-une{ aspect-ratio:auto; justify-content:flex-start; background:var(--mois-encre); }
	.m1p-actu-une::before{ display:none; }
	.m1p-actu-une-photo{ position:relative; inset:auto; z-index:0; display:block; height:210px; }
	.m1p-actu-une-texte{ margin:0; border-radius:0; background:var(--mois-encre); -webkit-backdrop-filter:none; backdrop-filter:none; }
	.m1p-apropos-texte .m1p-jours .m1p-jour.est-mineur{ display:none; }
	.m1p-apropos-texte .m1p-jours .m1p-jour{ padding-top:4px; }
}
/* Rubrique Actualité : la plus récente en une, puis le fil et l'assistant en colonne (plus de marges vides). */
.m1p-actu-cols{ display:grid; grid-template-columns:minmax(0,1fr) 380px; gap:36px; align-items:start; }
.m1p-actu-cols .m1p-fil{ max-width:none; margin:0; }
.m1p-actu-rail{ position:sticky; top:calc(var(--entete) + 20px); }
.m1p-actu-rail-int{ background:var(--mois-encre); border-radius:24px; padding:24px 22px 22px; }
.m1p-actu-rail-titre{ margin:0 0 6px; font-family:var(--f-titre); font-weight:800; font-size:21px; color:#fff; }
.m1p-actu-rail-txt{ margin:0 0 16px; font-size:15px; line-height:1.5; color:rgba(255,255,255,.8); }
@media (max-width:1080px){ .m1p-actu-cols{ grid-template-columns:1fr; } .m1p-actu-rail{ position:static; } }
@media (max-width:640px){ .m1p-fil-item a{ grid-template-columns:52px minmax(0,1fr) 72px; gap:12px; } .m1p-fil-photo{ display:block; width:72px; height:64px; } }
/* Grilles à 2 colonnes : un dernier élément seul prend toute la ligne (jamais de case vide à côté). */
.m1p-fiches-grille > .m1p-fiche:last-child:nth-child(odd),.m1p-liste--cartes > li:last-child:nth-child(odd),.m1p-liste--coche > li:last-child:nth-child(odd){ grid-column:1 / -1; }
.m1p-fiche-texte{ margin:0; font-size:15.5px; line-height:1.55; color:var(--mois-texte2); }
/* Poursuivre la lecture (liens du site sortis des sources). */
.sbt-encadre.m1p-poursuivre{ background:#fff; border:1px solid var(--mois-filet); border-radius:20px; padding:18px 22px; }
.m1p-poursuivre .sbt-encadre-titre{ margin:0 0 8px; font-family:var(--f-titre); font-weight:800; font-size:17px; color:var(--mois-encre); }
.m1p-poursuivre ul:not(.m1p-liste){ list-style:none; margin:0; padding:0; display:grid; gap:6px; }
.m1p-poursuivre ul:not(.m1p-liste) > li{ padding:8px 0 0; border-top:1px solid var(--mois-filet); }
.m1p-poursuivre ul:not(.m1p-liste) > li:first-child{ border-top:0; padding-top:0; }
.sbt-article-corps .m1p-poursuivre a{ font-weight:600; text-decoration:none; }
.sbt-article-corps .m1p-poursuivre a:hover{ text-decoration:underline; }
/* Fiche auteur : pastille de couleur par rubrique. */
.m1p-auteur-rub-point{ width:10px; height:10px; border-radius:50%; background:var(--mois-iris); flex:none; }
.m1p-auteur-rub-point[data-rubrique="statuts-et-formalites"]{ background:var(--mois-iris); }
.m1p-auteur-rub-point[data-rubrique="financer-et-aider"]{ background:var(--mois-jaune); box-shadow:inset 0 0 0 1px rgba(21,18,58,.25); }
.m1p-auteur-rub-point[data-rubrique="outils-du-createur"]{ background:#9C93FF; }
.m1p-auteur-rub-point[data-rubrique="lancer-en-30-jours"]{ background:var(--mois-encre); }
.m1p-auteur-rub-point[data-rubrique="actualite"]{ background:var(--mois-vert); }
/* Contact : pastille J30 sur le haut de l'arche, jamais derrière un formulaire. */
@media (min-width:1320px){ .m1p-contact .m1p-j30{ left:auto; right:6px; top:-34px; } }
/* Contact (≥ 961 px) : les trois motifs toujours sur une seule ligne, à largeur égale. */
@media (min-width:961px){ .m1p-contact .m1p-objet-choix{ display:grid; grid-template-columns:repeat(3, minmax(0, 1fr)); flex-wrap:nowrap; } .m1p-contact .m1p-objet label,.m1p-contact .m1p-objet span{ width:100%; } .m1p-contact .m1p-objet span{ justify-content:center; padding:0 8px; font-size:13.5px; } }
/* Contact : les deux motifs et l'encadré « ce à quoi nous ne répondons pas » sur une seule rangée (section ≤ 704 px). */
.m1p-contact-suite{ padding:52px 0 60px; }
@media (min-width:1024px){ .m1p-contact-motifs{ grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1.35fr); } }
.m1p-contact-motif.m1p-contact-limite{ display:block; margin:0; padding:24px 26px 22px; background:var(--mois-jaune); border-color:transparent; border-radius:22px; }
.m1p-contact-limite .m1p-contact-motif-texte p{ color:var(--mois-encre); font-size:15px; line-height:1.55; }
/* « À lire aussi » en 390 : bande qui défile à l'horizontale (cartes entières, étiquette et frise conservées). */
@media (max-width:640px){
	.m1p-a-lire-bande .m1p-grille-3{ display:grid; grid-auto-flow:column; grid-template-columns:none; grid-auto-columns:82%; gap:12px; overflow-x:auto; scroll-snap-type:x mandatory; margin-inline:calc(-1 * var(--gout)); padding:2px var(--gout) 10px; scroll-padding-inline:var(--gout); scrollbar-width:none; }
	.m1p-a-lire-bande .m1p-grille-3::-webkit-scrollbar{ display:none; }
	.m1p-a-lire-bande .m1p-carte{ scroll-snap-align:start; }
}
/* Accueil « Par où commencer » (5 rubriques) : jamais de case vide quand la grille passe à 3 puis 2 colonnes. */
@media (min-width:768px) and (max-width:1180px){
	.m1p-portes-grille{ grid-template-columns:repeat(6, minmax(0,1fr)); }
	.m1p-portes-grille > .m1p-porte{ grid-column:span 2; }
	.m1p-portes-grille > .m1p-porte:nth-last-child(2):nth-child(3n+1),.m1p-portes-grille > .m1p-porte:nth-last-child(2):nth-child(3n+1) + .m1p-porte{ grid-column:span 3; }
}
@media (max-width:767px){
	.m1p-portes-grille > .m1p-porte:last-child:nth-child(odd){ grid-column:1 / -1; display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); align-items:stretch; }
	.m1p-portes-grille > .m1p-porte:last-child:nth-child(odd) .m1p-porte-photo{ height:100%; min-height:120px; aspect-ratio:auto; }
}
