/* =====================================================================
 * Guide de culture v3 — maquette validée le 8 octobre 2026 (templates/guide-v3.php).
 * La bande brune, le ruban et les pastilles .sr-fam viennent du thème (bande-v3.css) ; cette feuille remplace
 * guide-v2.css sur le gabarit v3 et restyle les blocs du Renderer (classes srkhv2-* conservées).
 * Ordinateur : contenu 1200 px, marges 64 px ; mobile (≤ 760 px) : marges 16 px.
 * Un seul aplat (vert « semer », « à faire en {mois} ») ; crème doux pour le calendrier et les encadrés.
 * Rollback : SANRIVAL_GUIDE_V3 à false (templates/guide.php + guide-v2.css).
 * ===================================================================== */
body.sr-kh-guide-v2, body:has(main.srg3) { background: var(--sc-canvas, #fffcf5); }
main.srg3 { --g3-brun: var(--sc-ink, #2a1a12); --g3-brun-2: var(--sc-ink-soft, #4a2f22); --g3-rouge: var(--sc-red, #b21c2d); --g3-canvas: var(--sc-canvas, #fffcf5); --g3-creme: var(--sc-cream, #fdf6ea); --g3-filet: var(--sc-line, #eadfc4); --g3-filet-fort: var(--sc-line-strong, #dccda8); --g3-texte-2: var(--sc-ink-mute, #6b4a38); --g3-semer: var(--sc-semer, #b7d34a); --g3-pot: var(--sc-fam-potageres, #4e8f2f); --g3-display: var(--sc-display, "Bricolage Grotesque", sans-serif); --g3-texte: var(--sc-font, "Figtree", sans-serif);
	margin: 0; padding: 0; background: var(--g3-canvas); color: var(--g3-brun); font: 400 16px/1.6 var(--g3-texte); overflow: clip; }
.srg3 *, .srg3 *::before, .srg3 *::after { box-sizing: border-box; }
.srg3 h2, .srg3 h3, .srg3 p, .srg3 ul, .srg3 ol, .srg3 figure { margin: 0; }
.srg3-in { max-width: 1200px; margin: 0 auto; padding: 0 var(--sc-space-8); }
.srg3 .sr-mot { border-radius: .16em; }
.srg3 .srg3-h2 { text-transform: lowercase; text-wrap: balance; color: var(--g3-brun); }
.srg3-sur { margin: 0 0 var(--sc-space-3) !important; font: 600 14px/1.5 var(--g3-texte); color: var(--g3-texte-2); }
.srg3-past { display: inline-flex; align-items: center; height: 26px; padding: 0 var(--sc-space-3); border-radius: 999px; background: var(--g3-brun); color: var(--g3-canvas); font: 700 14px/1 var(--g3-display); white-space: nowrap; }
.srg3-d { max-width: 68ch; margin-top: var(--sc-space-3) !important; font-size: 16px; line-height: 1.6; color: var(--g3-brun-2); }
.srg3 a:focus-visible, .srg3 button:focus-visible, .srg3 summary:focus-visible { outline: 2px solid var(--g3-rouge); outline-offset: 3px; }

/* Bande brune : boutons, métadonnées, photo */
.srg3-bande .sr-sur { flex-wrap: wrap; }

.srg3-bande .sr-bande__titre { text-wrap: balance; }
.srg3-btns { display: flex; flex-wrap: wrap; gap: var(--sc-space-3); margin-top: var(--sc-space-5); }
.srg3 .srg3-btn { display: inline-flex; align-items: center; justify-content: center; gap: var(--sc-space-2); text-decoration: none; white-space: nowrap; }
.srg3 .srg3-btn--creme { background: var(--g3-creme); color: var(--g3-brun); }
.srg3 .srg3-btn--creme:hover { background: #fff; color: var(--g3-brun); }
.srg3 .srg3-btn--ligne { box-shadow: inset 0 0 0 1.5px rgba(253, 246, 234, .72); color: var(--g3-creme); }
.srg3 .srg3-btn--ligne:hover { background: rgba(253, 246, 234, .08); color: var(--g3-creme); }
.srg3-bande a:focus-visible { outline-color: var(--g3-creme); }
.srg3-meta { display: flex; flex-wrap: wrap; gap: var(--sc-space-2) var(--sc-space-4); margin-top: var(--sc-space-5) !important; padding: var(--sc-space-4) 0 0; list-style: none; border-top: 1px solid rgba(253, 246, 234, .2); font: 400 14px/1.5 var(--g3-texte); color: rgba(253, 246, 234, .72); }
.srg3-meta li { margin: 0; }
.srg3-meta b { color: var(--g3-creme); font-weight: 600; }
.srg3-photo__cadre { aspect-ratio: 4 / 5; border-radius: 22px; overflow: hidden; }
.srg3-photo__cadre img { display: block; width: 100%; height: 100%; max-width: none; object-fit: cover; }
.srg3-photo figcaption { margin-top: var(--sc-space-3); font: 400 14px/1.45 var(--g3-texte); color: rgba(253, 246, 234, .72); }
.srg3-contexte { border-bottom: 1px solid var(--g3-filet); }
.srg3-contexte .srg3-in { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: var(--sc-space-2) var(--sc-space-5); padding-top: var(--sc-space-4); padding-bottom: var(--sc-space-4); font-size: 14px; color: var(--g3-brun-2); }
.srg3 .srg3-contexte a { font-weight: 700; color: var(--g3-brun); }

/* Avant de commencer */
.srg3-essentiel { padding: var(--sc-space-8) 0 var(--sc-space-7); }
.srg3-reperes { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); margin-top: var(--sc-space-6) !important; padding: 0; list-style: none; border-top: 1px solid var(--g3-filet); }
.srg3-reperes li { margin: 0; padding: var(--sc-space-4) var(--sc-space-4) 0 0; }
.srg3-reperes li + li { padding-left: var(--sc-space-4); border-left: 1px solid var(--g3-filet); }
.srg3-reperes span { display: flex; align-items: center; gap: var(--sc-space-2); font: 800 18px/1 var(--g3-display); letter-spacing: -0.03em; text-transform: lowercase; }
.srg3-reperes span::before { content: ""; flex: none; width: 9px; height: 9px; border-radius: 50%; background: var(--g, var(--g3-brun)); }
.srg3-reperes p { margin-top: var(--sc-space-2) !important; font-size: 14px; line-height: 1.45; color: var(--g3-brun-2); }
.srg3-climat { margin-top: var(--sc-space-5) !important; padding-top: var(--sc-space-4); border-top: 1px solid var(--g3-filet); font-size: 14px; color: var(--g3-texte-2); }

/* À faire maintenant : le seul aplat vert « semer » */
.srg3-maintenant { padding: var(--sc-space-2) 0 var(--sc-space-9); scroll-margin-top: 24px; }
.srg3-maintenant__bloc { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 6fr); gap: var(--sc-space-7); align-items: center; padding: var(--sc-space-7) var(--sc-space-7); border-radius: 28px; background: var(--g3-semer); color: var(--g3-brun); }
.srg3 .srg3-maintenant .srg3-h2 { margin-top: var(--sc-space-4); }
.srg3-maintenant__t { max-width: 46ch; margin-top: var(--sc-space-3) !important; font: 600 16px/1.45 var(--g3-texte); }
.srg3-taches { padding: 0; list-style: none; border-top: 1px solid rgba(42, 26, 18, .2); }
.srg3-taches li { margin: 0; }
.srg3 .srg3-taches a { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: var(--sc-space-1) var(--sc-space-4); padding: var(--sc-space-4) 0; border-bottom: 1px solid rgba(42, 26, 18, .2); color: var(--g3-brun); text-decoration: none; }
.srg3-taches b { font: 800 20px/1.15 var(--g3-display); letter-spacing: -0.03em; text-transform: lowercase; }
.srg3-taches span { grid-column: 1; font: 600 14px/1.3 var(--g3-texte); }
.srg3-taches i { grid-row: 1 / span 2; grid-column: 2; align-self: center; font: 700 14px/1 var(--g3-texte); font-style: normal; white-space: nowrap; }
.srg3 .srg3-taches a:hover b { text-decoration: underline; }
.srg3-vide b { font: 800 20px/1.15 var(--g3-display); text-transform: lowercase; }
.srg3-vide p { margin-top: var(--sc-space-2) !important; font: 600 14px/1.45 var(--g3-texte); }
.srg3-prochain { margin-top: var(--sc-space-4) !important; font: 600 14px/1.4 var(--g3-texte); }
.srg3 .srg3-prochain a { color: var(--g3-brun); }

/* Calendrier sur crème doux */
.srg3-calendrier { padding: var(--sc-space-9) 0 var(--sc-space-9); background: var(--g3-creme); scroll-margin-top: 24px; }
.srg3-cal-tete { display: grid; grid-template-columns: minmax(0, 7fr) minmax(0, 4fr); gap: var(--sc-space-7); align-items: end; margin-bottom: var(--sc-space-6); }
.srg3-cal-tete > p { font-size: 16px; color: var(--g3-texte-2); }
.srg3-modes { display: flex; flex-wrap: wrap; gap: var(--sc-space-2); margin: 0 0 var(--sc-space-5); }
.srg3-modes button { margin: 0; border: 0; background: transparent; color: var(--g3-brun); white-space: nowrap; cursor: pointer; }
.srg3-modes button[aria-pressed="true"] { background: var(--g3-brun); color: var(--g3-canvas); }
.srg3-cal { overflow-x: auto; }
.srg3-cal__t { min-width: 860px; --lab: 260px; }
.srg3-cal__mois, .srg3-cal__ligne { display: grid; grid-template-columns: var(--lab) repeat(12, minmax(0, 1fr)); align-items: center; }
.srg3-cal__mois { padding-bottom: var(--sc-space-3); border-bottom: 1px solid var(--g3-filet-fort); font: 700 12px/1 var(--g3-texte); color: var(--g3-texte-2); text-align: center; }
.srg3-cal__mois .is-ici { color: var(--g3-brun); }
.srg3-cal__mois .is-ici::after { content: ""; display: block; width: 6px; height: 6px; margin: var(--sc-space-2) auto 0; border-radius: 50%; background: var(--g3-rouge); }
.srg3-cal__ligne { position: relative; min-height: 46px; border-bottom: 1px solid var(--g3-filet); }
.srg3-cal__ligne[hidden] { display: none; }
.srg3 .srg3-cal__ligne a { position: sticky; left: 0; z-index: 1; grid-column: 1; grid-row: 1; padding: var(--sc-space-2) var(--sc-space-3) var(--sc-space-2) 0; background: var(--g3-creme); color: var(--g3-brun); font: 600 14px/1.3 var(--g3-texte); text-decoration: none; }
.srg3 .srg3-cal__ligne a:hover { text-decoration: underline; }
.srg3-cal__barre { grid-row: 1; height: 12px; border-radius: 999px; background: var(--g3-brun); }
.srg3-cal__barre.is-semer { background: var(--g3-semer); }
.srg3-cal__barre.is-recolter { background: var(--g3-rouge); }
.srg3-cal__barre.is-autre { background: transparent; box-shadow: inset 0 0 0 1.5px var(--g3-brun-2); opacity: .55; }
.srg3-cal__ici { position: absolute; top: 0; bottom: 0; left: calc(var(--lab) + (100% - var(--lab)) / 12 * (var(--ici) - 1)); width: calc((100% - var(--lab)) / 12); background: rgba(240, 201, 106, .22); pointer-events: none; }
.srg3-cal__vide { margin-top: var(--sc-space-4) !important; font-size: 14px; color: var(--g3-texte-2); }
.srg3-legende { display: flex; flex-wrap: wrap; gap: var(--sc-space-2) var(--sc-space-5); margin-top: var(--sc-space-4) !important; padding: 0; list-style: none; font: 600 14px/1 var(--g3-texte); color: var(--g3-brun-2); }
.srg3-legende li { display: flex; align-items: center; gap: var(--sc-space-2); margin: 0; }
.srg3-legende i { width: 22px; height: 10px; border-radius: 999px; background: var(--g3-brun); }
.srg3-legende i.is-semer { background: var(--g3-semer); } .srg3-legende i.is-recolter { background: var(--g3-rouge); }
.srg3-legende i.is-autre { background: transparent; box-shadow: inset 0 0 0 1.5px var(--g3-brun-2); opacity: .55; }

/* Lecture : sommaire par phase + chapitres */
.srg3-lecture .srg3-in { display: grid; grid-template-columns: 260px minmax(0, 720px); justify-content: space-between; gap: var(--sc-space-9); padding-top: var(--sc-space-9); padding-bottom: var(--sc-space-7); }
.srg3-sommaire { position: sticky; top: 24px; align-self: start; max-height: calc(100vh - 48px); overflow-y: auto; scrollbar-width: thin; }
.srg3-sommaire summary { display: block; margin: 0 0 var(--sc-space-3); font: 800 20px/1 var(--g3-display); letter-spacing: -0.04em; text-transform: lowercase; list-style: none; cursor: default; }
.srg3-sommaire summary::-webkit-details-marker { display: none; }
.srg3-sommaire summary small { display: none; }
.srg3-grp { margin: 0 0 var(--sc-space-2); padding: var(--sc-space-3) 0 var(--sc-space-2); border-top: 1px solid var(--g3-filet); }
.srg3-grp b { display: flex; align-items: center; gap: var(--sc-space-2); margin-bottom: var(--sc-space-1); font: 800 14px/1.2 var(--g3-display); letter-spacing: -0.02em; text-transform: lowercase; }
.srg3-grp b::before { content: ""; flex: none; width: 9px; height: 9px; border-radius: 50%; background: var(--g); }
.srg3 .srg3-grp a { display: block; padding: var(--sc-space-1) 0 var(--sc-space-1) var(--sc-space-4); color: var(--g3-brun-2); font: 500 14px/1.35 var(--g3-texte); text-decoration: none; }
.srg3 .srg3-grp a:hover span { text-decoration: underline; }
.srg3 .srg3-grp a[aria-current] { color: var(--g3-brun); font-weight: 700; }
.srg3 .srg3-grp a[aria-current] span { box-shadow: inset 0 -.5em 0 var(--sc-attendre, #f0c96a); }
.srg3-chap { margin: 0 0 var(--sc-space-7); padding: 0 0 var(--sc-space-7); border-bottom: 1px solid var(--g3-filet); scroll-margin-top: 24px; }
.srg3-chap__phase { display: inline-flex; align-items: center; gap: var(--sc-space-2); margin: 0 0 var(--sc-space-3) !important; font: 700 14px/1 var(--g3-display); text-transform: lowercase; color: var(--g3-brun-2); }
.srg3-chap__phase::before { content: ""; width: 9px; height: 9px; border-radius: 50%; background: var(--g); }
.srg3 .srg3-chap h2 { font: 800 40px/1 var(--g3-display); letter-spacing: -0.05em; text-transform: lowercase; text-wrap: balance; color: var(--g3-brun); }
.srg3-chap__lede { margin-top: var(--sc-space-4) !important; font: 500 18px/1.55 var(--g3-texte); color: var(--g3-brun); }
/* Blocs du Renderer */
.srg3 .srkhv2-prose { margin-top: var(--sc-space-4) !important; font-size: 16px; line-height: 1.7; color: var(--g3-brun-2); }
.srg3 .srkhv2-subtitle, .srg3 .srkhv2-decision__heading h3 { margin: var(--sc-space-5) 0 var(--sc-space-3) !important; text-transform: lowercase; color: var(--g3-brun); }
.srg3 .srkhv2-check-list { margin-top: var(--sc-space-5) !important; padding: 0; list-style: none; border-top: 1px solid var(--g3-filet); }
.srg3 .srkhv2-check-list li { display: grid; grid-template-columns: 22px minmax(0, 1fr); gap: var(--sc-space-3); margin: 0; padding: var(--sc-space-3) 0; border-bottom: 1px solid var(--g3-filet); font-size: 16px; line-height: 1.5; color: var(--g3-brun-2); }
.srg3 .srkhv2-check-list li > span:first-child { display: flex; padding-top: 3px; color: var(--g3-pot); }
.srg3 .srkhv2-check-list svg { width: var(--sc-icon-sm); height: var(--sc-icon-sm); }
.srg3 .srkhv2-steps { padding: 0; list-style: none; border-top: 1px solid var(--g3-filet); }
.srg3 .srkhv2-steps li { display: grid; grid-template-columns: 30px minmax(0, 1fr); gap: var(--sc-space-3); margin: 0; padding: var(--sc-space-3) 0; border-bottom: 1px solid var(--g3-filet); font-size: 16px; line-height: 1.5; color: var(--g3-brun-2); }
.srg3 .srkhv2-steps__number { font: 800 18px/1.3 var(--g3-display); color: var(--g3-rouge); }
.srg3 .srkhv2-decision { margin-top: var(--sc-space-5); }
.srg3 .srkhv2-decision__heading > span { display: none; }
.srg3 .srkhv2-decision__heading h3 { margin-top: 0 !important; }
.srg3 .srkhv2-decision__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); border-top: 1px solid var(--g3-filet); }
.srg3 .srkhv2-decision__grid article { padding: var(--sc-space-4) var(--sc-space-4) var(--sc-space-4) 0; border-bottom: 1px solid var(--g3-filet); }
.srg3 .srkhv2-decision__grid article:nth-child(even) { padding-left: var(--sc-space-4); border-left: 1px solid var(--g3-filet); }
.srg3 .srkhv2-decision__grid:has(> article:nth-child(3):last-child) { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.srg3 .srkhv2-decision__grid:has(> article:nth-child(3):last-child) article { padding: var(--sc-space-4) var(--sc-space-4) 0 0; border-bottom: 0; border-left: 0; }
.srg3 .srkhv2-decision__grid:has(> article:nth-child(3):last-child) article + article { padding-left: var(--sc-space-4); border-left: 1px solid var(--g3-filet); }
.srg3 .srkhv2-decision__grid strong { font: 700 16px/1.3 var(--g3-texte); color: var(--g3-brun); }
.srg3 .srkhv2-decision__grid p { margin-top: var(--sc-space-2) !important; font-size: 14px; line-height: 1.5; color: var(--g3-brun-2); }
.srg3 .srkhv2-callout { display: block; margin-top: var(--sc-space-5); padding: var(--sc-space-5) var(--sc-space-5); border: 0; border-radius: 18px; background: var(--g3-creme); box-shadow: none; }
.srg3 .srkhv2-callout__icon { display: none; }
.srg3 .srkhv2-callout__label { display: inline-flex; align-items: center; height: 26px; padding: 0 var(--sc-space-3); border-radius: 999px; background: var(--g3-brun); color: var(--g3-canvas); font: 700 14px/1 var(--g3-display); text-transform: lowercase; }
.srg3 .srkhv2-callout--warning .srkhv2-callout__label, .srg3 .srkhv2-callout--error .srkhv2-callout__label { background: var(--g3-rouge); color: var(--g3-creme); }
.srg3 .srkhv2-callout h3 { margin: var(--sc-space-3) 0 var(--sc-space-2) !important; font: 800 20px/1.1 var(--g3-display); letter-spacing: -0.035em; text-transform: lowercase; color: var(--g3-brun); }
.srg3 .srkhv2-callout p:not(.srkhv2-callout__label) { font-size: 16px; line-height: 1.55; color: var(--g3-brun-2); }
.srg3 .srkhv2-mistakes { margin-top: var(--sc-space-5); border-top: 1px solid var(--g3-filet); }
.srg3 .srkhv2-mistakes a { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: var(--sc-space-3); align-items: center; padding: var(--sc-space-4) 0; border-bottom: 1px solid var(--g3-filet); color: var(--g3-brun); text-decoration: none; font: 800 18px/1.2 var(--g3-display); letter-spacing: -0.03em; text-transform: lowercase; }
.srg3 .srkhv2-mistakes a > span:first-child { display: none; }
.srg3 .srkhv2-mistakes__arrow { display: flex; color: var(--g3-rouge); }
.srg3 .srkhv2-mistakes__arrow svg { width: var(--sc-icon-md); height: var(--sc-icon-md); }
.srg3 .srkhv2-mistakes a:hover > span:nth-child(2) { text-decoration: underline; }
.srg3 .srg3-suite { display: flex; justify-content: space-between; align-items: center; gap: var(--sc-space-4); margin-top: var(--sc-space-6); padding: var(--sc-space-4) 0; border-top: 1px solid var(--g3-filet); border-bottom: 1px solid var(--g3-filet); color: var(--g3-brun); text-decoration: none; }
.srg3-suite small { display: block; font: 600 12px/1.3 var(--g3-texte); color: var(--g3-texte-2); }
.srg3-suite b { font: 800 20px/1.15 var(--g3-display); letter-spacing: -0.03em; text-transform: lowercase; }
.srg3-suite i { font-style: normal; font-weight: 700; color: var(--g3-rouge); transition: transform .15s ease; }
.srg3 .srg3-suite:hover i { transform: translateX(3px); }

/* Blocs de fin : utile, FAQ, méthode, variétés */
.srg3-bloc { padding: 0 0 var(--sc-space-9); scroll-margin-top: 24px; }
.srg3-etroit { max-width: none; margin: 0; } /* Demande du 8 octobre : « utile pour cette culture » et les blocs suivants en pleine largeur. */
.srg3-utile .srg3-h2 { margin-bottom: var(--sc-space-5); }
body.sr-charte main.srg3 .srg3-utile .sr-complements { margin: 0; padding: 0; border: 0; background: none; box-shadow: none; }
body.sr-charte main.srg3 .srg3-utile .sr-complements__title { display: none; }
body.sr-charte main.srg3 .srg3-utile .sr-complements__list { display: grid !important; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--sc-space-4); margin: 0; padding: 0; list-style: none; }
body.sr-charte main.srg3 .srg3-utile .sr-complements__item { display: flex !important; flex-direction: column; gap: var(--sc-space-2); margin: 0; padding: var(--sc-space-4) !important; border: 0 !important; border-radius: 20px !important; background: var(--g3-canvas) !important; box-shadow: 0 0 0 1px var(--g3-filet) !important; }
body.sr-charte main.srg3 .srg3-utile .sr-complements__media { display: block; width: 100% !important; height: auto !important; aspect-ratio: 1; border-radius: 14px; background: #fff; overflow: hidden; }
body.sr-charte main.srg3 .srg3-utile .sr-complements__media img { display: block; width: 100% !important; height: 100% !important; max-width: none; object-fit: contain; }
body.sr-charte main.srg3 .srg3-utile .sr-complements__text { display: grid; gap: var(--sc-space-1); }
body.sr-charte main.srg3 .srg3-utile .sr-complements__text a { font: 800 18px/1.1 var(--g3-display); letter-spacing: -0.035em; text-transform: lowercase; color: var(--g3-brun); text-decoration: none; }
body.sr-charte main.srg3 .srg3-utile .sr-complements__text small { font: 400 14px/1.4 var(--g3-texte); color: var(--g3-texte-2); }
body.sr-charte main.srg3 .srg3-utile .sr-complements__price { display: flex; align-items: center; margin-top: auto; padding-top: var(--sc-space-3); border-top: 1px solid var(--g3-filet); }
body.sr-charte main.srg3 .srg3-utile .sr-complements__price, body.sr-charte main.srg3 .srg3-utile .sr-complements__price .amount { font: 800 20px/1 var(--g3-display); letter-spacing: -0.04em; color: var(--g3-brun); }
body.sr-charte main.srg3 .srg3-utile .sr-complements__price .woocommerce-Price-currencySymbol { font: inherit; }
body.sr-charte main.srg3 .srg3-utile .sr-complements__item { position: relative; }
body.sr-charte main.srg3 .srg3-utile a.sr-complements__add { position: absolute !important; right: 14px; bottom: 14px; display: inline-flex !important; align-items: center; gap: var(--sc-space-2); width: auto !important; margin: 0 !important; border: 0 !important; background: var(--g3-rouge) !important; color: var(--g3-creme) !important; text-decoration: none !important; }
body.sr-charte main.srg3 .srg3-utile a.sr-complements__add::before { content: "+"; position: static !important; width: auto !important; height: auto !important; background: none !important; -webkit-mask: none !important; mask: none !important; font-size: 16px; line-height: 1; }
body.sr-charte main.srg3 .srg3-utile a.sr-complements__add::after { content: "Ajouter"; position: static !important; width: auto !important; height: auto !important; background: none !important; -webkit-mask: none !important; mask: none !important; }
body.sr-charte main.srg3 .srg3-utile a.sr-complements__add.added::before { content: "✓"; }
body.sr-charte main.srg3 .srg3-utile a.sr-complements__add:hover { background: var(--sc-red-dark, #8e1424) !important; }
body.sr-charte main.srg3 .srg3-utile .added_to_cart { display: none !important; }
.srg3-faq { margin-top: var(--sc-space-5); border-top: 1px solid var(--g3-filet); }
.srg3-faq details { border-bottom: 1px solid var(--g3-filet); }
.srg3-faq summary { display: flex; justify-content: space-between; gap: var(--sc-space-4); padding: var(--sc-space-4) 0; list-style: none; cursor: pointer; font: 800 20px/1.2 var(--g3-display); letter-spacing: -0.03em; text-transform: lowercase; color: var(--g3-brun); }
.srg3-faq summary::-webkit-details-marker { display: none; }
.srg3-faq summary::after { content: "+"; flex: none; font: 700 24px/1 var(--g3-texte); color: var(--g3-rouge); }
.srg3-faq details[open] summary::after { content: "–"; }
.srg3-faq details > div { padding: 0 0 var(--sc-space-4); }
.srg3-faq p { max-width: 80ch; font-size: 16px; line-height: 1.6; color: var(--g3-brun-2); }
.srg3 .srg3-faq a { display: inline-block; margin-top: var(--sc-space-2); font: 700 14px/1 var(--g3-texte); color: var(--g3-brun); }
.srg3-methode { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); margin-top: var(--sc-space-4); border-top: 1px solid var(--g3-filet); }
.srg3-methode div { padding: var(--sc-space-4) var(--sc-space-4) 0 0; }
.srg3-methode div + div { padding-left: var(--sc-space-4); border-left: 1px solid var(--g3-filet); }
.srg3-methode span { font-size: 12px; color: var(--g3-texte-2); }
.srg3-methode b { display: block; margin-top: var(--sc-space-1); font: 800 18px/1.15 var(--g3-display); letter-spacing: -0.03em; text-transform: lowercase; }
.srg3-varietes .srg3-d { margin-bottom: var(--sc-space-5); }














/* Tablette */
@media (max-width: 1020px) {
	.srg3-reperes { grid-template-columns: repeat(3, minmax(0, 1fr)); }
	.srg3-reperes li, .srg3-reperes li + li { padding: var(--sc-space-4) var(--sc-space-4) var(--sc-space-4) 0; border-left: 0; border-bottom: 1px solid var(--g3-filet); }
	.srg3-reperes li:not(:nth-child(3n + 1)) { padding-left: var(--sc-space-4); border-left: 1px solid var(--g3-filet); }
	.srg3-maintenant__bloc { grid-template-columns: minmax(0, 1fr); gap: var(--sc-space-6); }
	.srg3-lecture .srg3-in { grid-template-columns: 220px minmax(0, 1fr); gap: var(--sc-space-7); }
	.srg3-etroit { max-width: none; }
}

/* Mobile (maquette 390 px) */
@media (max-width: 760px) {
	.srg3-in { padding: 0 var(--sc-space-4); }
	
	.srg3-bande .sr-ariane { margin-bottom: var(--sc-space-4); font-size: 12px; }
	
	.srg3-btns .srg3-btn { flex: 1 1 auto; }
	.srg3-photo__cadre { aspect-ratio: 4 / 3; border-radius: 18px; }
	.srg3-essentiel { padding: var(--sc-space-7) 0 var(--sc-space-6); }
	.srg3-reperes { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.srg3-reperes li:not(:nth-child(3n + 1)) { padding-left: 0; border-left: 0; }
	.srg3-reperes li, .srg3-reperes li + li { padding: var(--sc-space-4) var(--sc-space-3) var(--sc-space-4) 0; border-left: 0; }
	.srg3-reperes li:nth-child(even) { padding-left: var(--sc-space-3); border-left: 1px solid var(--g3-filet); }
	.srg3-maintenant { padding: 0 0 var(--sc-space-7); }
	.srg3-maintenant__bloc { gap: var(--sc-space-5); padding: var(--sc-space-5) var(--sc-space-5); border-radius: 24px; }
	
	.srg3 .srg3-taches a { grid-template-columns: minmax(0, 1fr); }
	.srg3-taches i { grid-row: auto; grid-column: 1; margin-top: var(--sc-space-1); }
	.srg3-calendrier { padding: var(--sc-space-7) 0 var(--sc-space-7); }
	.srg3-cal-tete { grid-template-columns: minmax(0, 1fr); gap: var(--sc-space-3); margin-bottom: var(--sc-space-5); }
	.srg3-modes { flex-wrap: nowrap; overflow-x: auto; margin-right: -16px; padding-right: var(--sc-space-4); scrollbar-width: none; }
	.srg3-modes::-webkit-scrollbar { display: none; }
	.srg3-modes button { flex: none; }
	.srg3-cal { margin-right: -16px; padding-right: var(--sc-space-4); }
	.srg3-cal__t { min-width: 720px; --lab: 170px; }
	.srg3 .srg3-cal__ligne a { font-size: 14px; }
	.srg3-lecture .srg3-in { grid-template-columns: minmax(0, 1fr); gap: var(--sc-space-6); padding-top: var(--sc-space-7); padding-bottom: var(--sc-space-5); }
	.srg3-sommaire { position: static; max-height: none; overflow: visible; padding: 0 var(--sc-space-4); border-radius: 18px; background: var(--g3-creme); }
	.srg3-sommaire summary { display: flex; justify-content: space-between; align-items: center; margin: 0; padding: var(--sc-space-4) 0; font-size: 18px; cursor: pointer; }
	.srg3-sommaire summary small { display: inline; font: 600 14px/1 var(--g3-texte); letter-spacing: 0; text-transform: none; color: var(--g3-texte-2); }
	.srg3-sommaire summary small::after { content: " ▾"; }
	.srg3-sommaire[open] summary small::after { content: " ▴"; }
	.srg3-chap { margin-bottom: var(--sc-space-6); padding-bottom: var(--sc-space-6); }
	.srg3 .srg3-chap h2 { font-size: 32px; }
	.srg3-chap__lede { font-size: 16px; }
	.srg3 .srkhv2-prose { font-size: 16px; }
	.srg3 .srkhv2-decision__grid, .srg3 .srkhv2-decision__grid:has(> article:nth-child(3):last-child) { grid-template-columns: minmax(0, 1fr); }
	.srg3 .srkhv2-decision__grid article, .srg3 .srkhv2-decision__grid article:nth-child(even), .srg3 .srkhv2-decision__grid:has(> article:nth-child(3):last-child) article, .srg3 .srkhv2-decision__grid:has(> article:nth-child(3):last-child) article + article { padding: var(--sc-space-3) 0; border-left: 0; border-bottom: 1px solid var(--g3-filet); }
	body.sr-charte main.srg3 .srg3-utile .sr-complements__list, .srg3-cartes { display: flex !important; gap: var(--sc-space-3); overflow-x: auto; margin-right: -16px; padding: 1px var(--sc-space-4) var(--sc-space-1) 1px; scroll-snap-type: x mandatory; scrollbar-width: none; }
	body.sr-charte main.srg3 .srg3-utile .sr-complements__item, .srg3-carte { flex: 0 0 62%; scroll-snap-align: start; }
	.srg3-methode { grid-template-columns: minmax(0, 1fr); }
	.srg3-methode div, .srg3-methode div + div { padding: var(--sc-space-3) 0; border-left: 0; border-bottom: 1px solid var(--g3-filet); }
	.srg3-faq summary { font-size: 18px; }
}

/* Complements du guide : neutralise le style « liste » du thème (body.sr-charte .sr-complements…) */
body.sr-charte main.srg3 .srg3-utile .sr-complements__add svg { display: none !important; }
body.sr-charte main.srg3 .srg3-utile .sr-complements__price { padding-right: 110px; color: var(--g3-brun); }
/* Pastilles des encadrés et numéros d'étapes : la charte du thème impose sinon sa casse et sa taille */
.srg3 .srkhv2-callout .srkhv2-callout__label { text-transform: lowercase !important; letter-spacing: 0 !important; font-size: 14px !important; }
.srg3 .srkhv2-steps li .srkhv2-steps__number { display: block; font: 800 18px/1.3 var(--g3-display) !important; color: var(--g3-rouge) !important; }

/* Cartes des compléments : le thème retire les ombres (DS-04) et met l'article en liste ; grille à trois rangées,
   filet tracé par ::after au-dessus de la rangée prix + bouton. */
body.sr-charte main.srg3 .srg3-utile .sr-complements__item { position: relative; display: grid !important; grid-template-columns: minmax(0, 1fr) auto; grid-template-rows: auto 1fr auto; gap: var(--sc-space-2) var(--sc-space-3); border: 1px solid var(--g3-filet) !important; }
body.sr-charte main.srg3 .srg3-utile .sr-complements__item::after { content: ""; position: absolute; left: 14px; right: 14px; bottom: 63px; height: 1px; background: var(--g3-filet); }
body.sr-charte main.srg3 .srg3-utile .sr-complements__media, body.sr-charte main.srg3 .srg3-utile .sr-complements__text { grid-column: 1 / -1; }
body.sr-charte main.srg3 .srg3-utile .sr-complements__price { grid-column: 1; grid-row: 3; align-self: center; margin: var(--sc-space-5) 0 0; padding: 0; border: 0; }
body.sr-charte main.srg3 .srg3-utile a.sr-complements__add { position: static !important; grid-column: 2; grid-row: 3; margin: var(--sc-space-5) 0 0 !important; }

/* =====================================================================
 * Hub /guide-culture/ (templates/hub-v3.php, maquette du 8 octobre 2026) : bande brune avec ce que contient
 * chaque guide, cartes guides à filet, déroulé commun (5 phases) sur crème doux. Pas d'aplat vert.
 * ===================================================================== */
.srh3b-contenu { margin: 0; padding: 0; list-style: none; border-top: 1px solid rgba(253, 246, 234, .2); }
.srh3b-contenu li { display: grid; gap: 2px; margin: 0; padding: var(--sc-space-3) 0; border-bottom: 1px solid rgba(253, 246, 234, .2); }
.srh3b-contenu b { font: 800 20px/1.1 var(--g3-display); letter-spacing: -0.035em; text-transform: lowercase; color: var(--g3-creme); }
.srh3b-contenu span { font: 400 14px/1.45 var(--g3-texte); color: rgba(253, 246, 234, .72); }
.srh3b-guides { padding: var(--sc-space-8) 0 var(--sc-space-9); }
.srh3b-guides__tete { display: flex; justify-content: space-between; align-items: flex-end; gap: var(--sc-space-5); margin-bottom: var(--sc-space-6); }
.srh3b-n { font: 600 14px/1.4 var(--g3-texte); color: var(--g3-texte-2); }
/* Filtre de la grille des guides : recherche + pastilles (même pastille que les modes du calendrier). */
.srh3b-filtre { display: grid; gap: var(--sc-space-4); margin: 0 0 var(--sc-space-6); }
.srh3b-filtre[hidden], .srh3b-carte[hidden], .srh3b-vide[hidden] { display: none; }
.srh3b-cherche { max-width: 520px; }
.srh3b-groupes { margin: 0; }
.srh3b-groupes button span { margin-left: var(--sc-space-1); font-weight: 600; opacity: .65; }
.srh3b-groupes button:focus-visible { outline: 2px solid var(--g3-rouge); outline-offset: 2px; }
.srh3b-vide { margin: var(--sc-space-2) 0 0; font-size: 16px; color: var(--g3-brun-2); }
.srh3b-vide button { margin-left: var(--sc-space-2); padding: 0; border: 0; background: none; color: var(--g3-rouge); font: 700 16px/1.4 var(--g3-texte); text-decoration: underline; text-underline-offset: 3px; cursor: pointer; }
.srh3b-grille { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--sc-space-5); padding: 0; list-style: none; }
.srh3b-carte { display: flex; margin: 0; border: 1px solid var(--g3-filet); border-radius: 22px; background: var(--g3-canvas); overflow: hidden; }
.srg3 .srh3b-carte > a { display: flex; flex-direction: column; width: 100%; color: var(--g3-brun); text-decoration: none; }
.srh3b-carte__ph { display: block; aspect-ratio: 3 / 2; background: #fff; overflow: hidden; }
.srh3b-carte__ph img { display: block; width: 100%; height: 100%; max-width: none; object-fit: cover; transition: transform .3s ease; }
.srh3b-carte__ph.is-sachet img { padding: var(--sc-space-4); object-fit: contain; }
.srg3 .srh3b-carte > a:hover .srh3b-carte__ph:not(.is-sachet) img { transform: scale(1.03); }
.srh3b-carte__corps { display: flex; flex: 1; flex-direction: column; gap: var(--sc-space-3); padding: var(--sc-space-4) var(--sc-space-5) var(--sc-space-5); }
.srh3b-carte .sr-fam { align-self: flex-start; }
.srh3b-carte__t { font: 800 24px/1.05 var(--g3-display); letter-spacing: -0.045em; text-transform: lowercase; text-wrap: balance; }
.srh3b-carte__d { font-size: 16px; line-height: 1.55; color: var(--g3-brun-2); }
.srh3b-carte__bas { display: flex; justify-content: space-between; align-items: center; margin-top: auto; padding-top: var(--sc-space-4); border-top: 1px solid var(--g3-filet); font: 700 16px/1 var(--g3-texte); }
.srh3b-carte__bas i { font-style: normal; color: var(--g3-rouge); transition: transform .15s ease; }
.srg3 .srh3b-carte > a:hover .srh3b-carte__bas i { transform: translateX(3px); }
.srg3 .srh3b-carte > a:hover .srh3b-carte__t { text-decoration: underline; text-decoration-thickness: 2px; text-underline-offset: 3px; }
.srh3b-phases { padding: var(--sc-space-8) 0 var(--sc-space-9); background: var(--g3-creme); }
.srh3b-phases__tete { display: grid; grid-template-columns: minmax(0, 7fr) minmax(0, 4fr); gap: var(--sc-space-7); align-items: end; margin-bottom: var(--sc-space-6); }
.srh3b-phases__tete > p { font-size: 16px; color: var(--g3-texte-2); }
.srh3b-etapes { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); padding: 0; list-style: none; border-top: 1px solid var(--g3-filet-fort); }
.srh3b-etapes li { margin: 0; padding: var(--sc-space-4) var(--sc-space-4) 0 0; }
.srh3b-etapes li + li { padding-left: var(--sc-space-4); border-left: 1px solid var(--g3-filet-fort); }
.srh3b-etapes i { display: block; height: 6px; margin-bottom: var(--sc-space-4); border-radius: 6px; background: var(--g); }
.srh3b-etapes b { display: block; font: 800 20px/1.1 var(--g3-display); letter-spacing: -0.035em; text-transform: lowercase; }
.srh3b-etapes span { display: block; margin-top: var(--sc-space-2); font-size: 14px; line-height: 1.5; color: var(--g3-brun-2); }
@media (max-width: 1020px) {
	.srh3b-grille { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.srh3b-etapes { grid-template-columns: repeat(3, minmax(0, 1fr)); row-gap: var(--sc-space-5); }
	.srh3b-etapes li:nth-child(3n + 1) { padding-left: 0; border-left: 0; }
}
@media (max-width: 760px) {
	
	.srh3b-contenu b { font-size: 18px; }
	.srh3b-guides { padding: var(--sc-space-6) 0 var(--sc-space-8); }
	.srh3b-guides__tete { display: block; margin-bottom: var(--sc-space-4); }
	.srh3b-n { margin-top: var(--sc-space-2) !important; }
	.srh3b-grille { grid-template-columns: minmax(0, 1fr); gap: var(--sc-space-4); }
	.srh3b-carte__t { font-size: 24px; }
	.srh3b-phases { padding: var(--sc-space-7) 0 var(--sc-space-8); }
	.srh3b-phases__tete { grid-template-columns: minmax(0, 1fr); gap: var(--sc-space-3); margin-bottom: var(--sc-space-4); }
	.srh3b-etapes { grid-template-columns: minmax(0, 1fr); row-gap: 0; }
	.srh3b-etapes li, .srh3b-etapes li + li, .srh3b-etapes li:nth-child(3n + 1) { display: grid; grid-template-columns: 6px minmax(0, 1fr); column-gap: var(--sc-space-4); padding: var(--sc-space-4) 0; border-left: 0; border-bottom: 1px solid var(--g3-filet-fort); }
	.srh3b-etapes i { grid-row: 1 / span 2; width: 6px; height: auto; margin: 0; }
	.srh3b-etapes span { margin-top: var(--sc-space-1); }
}
/* La case garde son contour arrondi (focus-within) : pas de cadre rectangulaire du thème sur le champ lui-même. */
/* Sur mobile, les pastilles du filtre passent à la ligne : la pastille active reste visible. */
@media (max-width: 760px) {
	.srh3b-filtre { gap: var(--sc-space-3); }
	.srg3-modes.srh3b-groupes { flex-wrap: wrap; overflow: visible; margin-right: 0; padding-right: 0; gap: var(--sc-space-2); }
}
