/* Mon Guide Poulailler — « carnet d'atelier »
   Papier quadrillé froid, encre vert sapin, cotes bleu de plan, bois, jaune d'œuf pour l'action.
   Titres et interface : Bricolage Grotesque. Texte courant : Source Serif 4. */
@font-face{font-family:"Bricolage";src:url(/fonts/bricolage-grotesque-latin-500-normal.woff2) format("woff2");font-weight:500;font-display:optional}
@font-face{font-family:"Bricolage";src:url(/fonts/bricolage-grotesque-latin-700-normal.woff2) format("woff2");font-weight:700;font-display:swap}
@font-face{font-family:"Bricolage";src:url(/fonts/bricolage-grotesque-latin-800-normal.woff2) format("woff2");font-weight:800;font-display:swap}
@font-face{font-family:"Source Serif";src:url(/fonts/source-serif-4-latin-400-normal.woff2) format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:"Source Serif";src:url(/fonts/source-serif-4-latin-400-italic.woff2) format("woff2");font-weight:400;font-style:italic;font-display:optional}
@font-face{font-family:"Source Serif";src:url(/fonts/source-serif-4-latin-600-normal.woff2) format("woff2");font-weight:600;font-display:optional}

:root{
  --papier:#F5F7F1;      /* fond : papier froid, légèrement vert */
  --blanc:#FFFFFF;
  --encre:#15302A;       /* texte, traits : 13,4:1 sur papier */
  --gris:#4A5A52;        /* texte secondaire : 6,9:1 */
  --quadrillage:#DCE4D6;
  --trait:#C9D3C3;
  --cote:#1C5DA0;        /* liens, lignes de cote : 6,3:1 */
  --cote-pale:#E7EFF8;
  --bois:#B9844C;
  --bois-pale:#F1E4D2;
  --jaune:#F2B705;       /* jaune d'œuf : actions marchandes (texte encre dessus) */
  --jaune-pale:#FCF1CC;
  --feuille:#2F6A40;
  --feuille-pale:#E3EEDF;
  --alerte:#9A3412;      /* 6,6:1 */
  --alerte-pale:#FBEBDD;
  --titre:"Bricolage",ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  --texte:"Source Serif",Georgia,"Times New Roman",serif;
  --r1:6px;--r2:12px;
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-padding-top:84px}
body{margin:0;background:var(--papier);color:var(--encre);font:400 18px/1.7 var(--texte);overflow-x:hidden;font-variant-numeric:lining-nums}
img,svg{max-width:100%;height:auto}
a{color:var(--cote);text-decoration-thickness:1px;text-underline-offset:3px}
a:hover{color:var(--encre);text-decoration-thickness:2px}
:focus-visible{outline:3px solid var(--cote);outline-offset:2px;border-radius:3px}
h1,h2,h3,h4{font-family:var(--titre);color:var(--encre);line-height:1.08;letter-spacing:-.02em;margin:0}
h1{font-weight:800;font-size:clamp(36px,6.6vw,64px);margin:.15em 0 .3em;max-width:20ch}
h2{font-weight:700;font-size:clamp(26px,4.2vw,34px);margin:2.2em 0 .55em;max-width:30ch}
h3{font-weight:700;font-size:21px;margin:1.6em 0 .45em;letter-spacing:-.01em;line-height:1.2}
p,ul,ol,dl{margin:0 0 1em}
li{margin:.3em 0}
strong{font-weight:600}
.ui,button,input,select,label,table,nav,.btn{font-family:var(--titre)}
.wrap{max-width:1180px;margin:0 auto;padding:0 16px}
.prose{max-width:none}
.prose>p,.prose>ul,.prose>ol,.prose>h2,.prose>h3,.prose>.encadre,.prose>.faq,.prose>.sources,.prose>.deux-col{max-width:68ch}
.prose>.table{max-width:900px}
.saut{position:absolute;left:-999px;top:0;background:var(--encre);color:#fff;padding:10px 14px;z-index:60;font-family:var(--titre)}
.saut:focus{left:8px;top:8px}
.discret{color:var(--gris);font-size:15.5px}
.nowrap{white-space:nowrap}

/* ── En-tête ───────────────────────────── */
.entete{background:var(--papier);border-bottom:2px solid var(--encre);position:sticky;top:0;z-index:30}
.entete .wrap{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:64px}
.logo{display:flex;align-items:center;gap:10px;color:var(--encre);text-decoration:none;font:800 19px/1 var(--titre);letter-spacing:-.02em}
.logo svg{width:38px;height:38px;flex:none}
.logo:hover{color:var(--encre)}
.menu{position:relative}
.menu-bouton{cursor:pointer;font:700 15px var(--titre);padding:10px 14px;border:2px solid var(--encre);border-radius:var(--r1);min-height:44px;display:flex;align-items:center;user-select:none}
.menu-bascule:focus-visible+.menu-bouton{outline:3px solid var(--cote);outline-offset:2px}
.menu nav{display:none;position:absolute;right:0;top:calc(100% + 12px);background:var(--blanc);border:2px solid var(--encre);border-radius:var(--r1);padding:6px;min-width:250px;flex-direction:column;box-shadow:6px 6px 0 var(--encre)}
.menu-bascule:checked~nav{display:flex}
.menu nav a{color:var(--encre);text-decoration:none;padding:11px 12px;font-weight:700;font-size:16px;border-radius:4px}
.menu nav a:hover{background:var(--feuille-pale)}
.menu nav a[aria-current]{background:var(--cote-pale)}
@media (min-width:980px){
  .menu-bouton,.menu-bascule{display:none}
  .menu nav{position:static;display:flex;flex-direction:row;border:0;box-shadow:none;padding:0;min-width:0;background:none;gap:4px}
  .menu nav a{padding:20px 10px 16px;border-radius:0;border-bottom:4px solid transparent;font-size:15.5px}
  .menu nav a:hover{background:none;border-bottom-color:var(--trait)}
  .menu nav a[aria-current]{background:none;border-bottom-color:var(--cote)}
}
.bandeau-aff{background:var(--blanc);border-bottom:1px solid var(--trait);font:500 14px/1.4 var(--titre);color:var(--gris)}
.bandeau-aff .wrap{padding-top:8px;padding-bottom:8px}

/* ── Fil d'Ariane ──────────────────────── */
.ariane{font:500 14.5px/1.4 var(--titre);color:var(--gris);margin:22px 0 0;display:flex;flex-wrap:wrap;gap:4px 8px}
.ariane a{color:var(--gris)}
.ariane span[aria-hidden]{color:var(--trait)}

/* ── Boutons ───────────────────────────── */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font:700 16px/1.15 var(--titre);text-decoration:none;padding:12px 18px;min-height:48px;border-radius:var(--r1);border:2px solid var(--encre);background:var(--encre);color:var(--blanc);cursor:pointer}
.btn:hover{background:var(--feuille);border-color:var(--feuille);color:var(--blanc)}
.btn.vide{background:transparent;color:var(--encre)}
.btn.vide:hover{background:var(--blanc);color:var(--encre)}
.btn.amz,.btn.marchand{background:var(--jaune);border-color:var(--jaune);color:var(--encre)}
.btn.amz:hover,.btn.marchand:hover{background:#E0A800;border-color:#E0A800;color:var(--encre)}
.btn.mini{min-height:40px;padding:8px 12px;font-size:14.5px;white-space:nowrap}
.actions{display:flex;flex-wrap:wrap;gap:10px;margin:18px 0}

/* ── Accueil ───────────────────────────── */
.quadrille{background-color:var(--papier);background-image:linear-gradient(var(--quadrillage) 1px,transparent 1px),linear-gradient(90deg,var(--quadrillage) 1px,transparent 1px);background-size:24px 24px;background-position:-1px -1px}
.une{border-bottom:2px solid var(--encre)}
.une .wrap{display:grid;gap:28px;padding-top:34px;padding-bottom:40px}
@media (min-width:980px){.une .wrap{grid-template-columns:5fr 7fr;align-items:center;padding-top:56px;padding-bottom:64px}}
.une h1{font-size:clamp(40px,5.6vw,64px);max-width:15ch}
.une .chapo{font-size:20px;max-width:34ch;margin-bottom:24px}
.reglage{display:flex;flex-wrap:wrap;align-items:center;gap:14px;background:var(--blanc);border:2px solid var(--encre);border-radius:var(--r2);padding:14px 16px;max-width:460px}
.reglage .lib{font:700 16px var(--titre);flex:1 1 140px}
.pas{display:flex;align-items:center;border:2px solid var(--encre);border-radius:var(--r1);overflow:hidden;background:var(--blanc)}
.pas button{width:48px;height:48px;border:0;background:var(--feuille-pale);color:var(--encre);font:800 24px var(--titre);cursor:pointer}
.pas button:hover{background:var(--cote-pale)}
.pas input{width:64px;height:48px;border:0;border-left:2px solid var(--encre);border-right:2px solid var(--encre);text-align:center;font:800 22px var(--titre);color:var(--encre);background:var(--blanc);-moz-appearance:textfield;appearance:textfield;min-height:0;padding:0;border-radius:0}
.pas input::-webkit-outer-spin-button,.pas input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.lecture{font:500 15.5px/1.5 var(--titre);color:var(--gris);margin:12px 0 0;max-width:460px}
.lecture b{color:var(--encre)}

/* ── Planche (feuille de dessin) ───────── */
.planche{background:var(--blanc);border:2px solid var(--encre);border-radius:2px;padding:10px;position:relative;margin:1.2em 0}
.planche>svg{display:block;width:100%;height:auto}
.planche figcaption{font:500 14px/1.45 var(--titre);color:var(--gris);padding:8px 4px 2px}
.une .planche{margin:0;box-shadow:10px 10px 0 var(--encre)}

/* ── Sections de l'accueil ─────────────── */
.section{padding:56px 0 8px}
.section>.wrap>h2:first-child{margin-top:0}
.intro-section{font-size:19px;max-width:60ch;color:var(--encre)}
.planches{display:grid;gap:22px;grid-template-columns:1fr;margin-top:26px}
@media (min-width:760px){.planches{grid-template-columns:repeat(3,1fr)}}
.planche-lien{display:flex;flex-direction:column;background:var(--blanc);border:2px solid var(--encre);text-decoration:none;color:var(--encre);position:relative}
.planche-lien:hover{color:var(--encre);box-shadow:6px 6px 0 var(--cote)}
.planche-lien .dessin{aspect-ratio:4/3;display:flex;align-items:flex-end;justify-content:center;padding:12px;border-bottom:2px solid var(--encre);background-image:linear-gradient(var(--quadrillage) 1px,transparent 1px),linear-gradient(90deg,var(--quadrillage) 1px,transparent 1px);background-size:16px 16px}
.cartouche{display:grid;grid-template-columns:1fr auto;font-family:var(--titre)}
.cartouche>*{padding:10px 12px;border-right:1px solid var(--trait)}
.cartouche .t{font:800 19px/1.2 var(--titre);grid-column:1/-1;border-bottom:1px solid var(--trait);border-right:0}
.cartouche .c{font:500 14px/1.35 var(--titre);color:var(--gris)}
.cartouche .c b{display:block;color:var(--encre);font-size:16px}
.cartouche .c:last-child{border-right:0}
.liste-outils{list-style:none;padding:0;margin:20px 0 0;display:grid;gap:0;grid-template-columns:1fr;border-top:2px solid var(--encre)}
@media (min-width:760px){.liste-outils{grid-template-columns:1fr 1fr;column-gap:40px}}
.liste-outils li{margin:0;border-bottom:1px solid var(--trait)}
.liste-outils a{display:grid;grid-template-columns:52px 1fr;gap:14px;align-items:start;padding:16px 0;text-decoration:none;color:var(--encre)}
.liste-outils a:hover .n{text-decoration:underline}
.liste-outils svg{width:52px;height:52px}
.liste-outils .n{display:block;font:800 20px/1.2 var(--titre);color:var(--cote)}
.liste-outils .d{display:block;font-size:16.5px;line-height:1.5;color:var(--gris);margin-top:3px}
.parcours-guides{display:grid;gap:30px;grid-template-columns:1fr;margin-top:18px}
@media (min-width:860px){.parcours-guides{grid-template-columns:repeat(3,1fr)}}
.parcours-guides h3{margin-top:0;font-size:18px;color:var(--gris);font-weight:700;border-top:4px solid var(--encre);padding-top:12px}
.parcours-guides ul{list-style:none;padding:0;margin:0}
.parcours-guides li{margin:0 0 14px}
.parcours-guides a{font:700 18.5px/1.25 var(--titre);text-decoration:none}
.parcours-guides a:hover{text-decoration:underline}
.parcours-guides span{display:block;font-size:16px;color:var(--gris);line-height:1.45;margin-top:2px}
.engagement{display:grid;gap:22px;grid-template-columns:1fr;border-top:2px solid var(--encre);padding-top:22px}
@media (min-width:860px){.engagement{grid-template-columns:repeat(3,1fr)}}
.engagement h3{margin:0 0 6px;font-size:19px}
.engagement p{font-size:16.5px;margin:0;color:var(--gris)}

/* ── Article ───────────────────────────── */
.article{display:grid;grid-template-columns:minmax(0,1fr);gap:40px;padding-bottom:30px}
@media (min-width:1080px){.article.avec-sommaire{grid-template-columns:minmax(0,1fr) 270px}}
.article h1{max-width:22ch}
.chapo{font-size:20.5px;line-height:1.6;max-width:62ch}
.meta{font:500 14.5px/1.5 var(--titre);color:var(--gris);margin:0 0 20px;display:flex;flex-wrap:wrap;gap:4px 18px}
.sommaire{font-family:var(--titre)}
.sommaire summary{font:700 16px var(--titre);cursor:pointer;padding:12px 14px;background:var(--blanc);border:2px solid var(--encre);border-radius:var(--r1);list-style:none}
.sommaire summary::-webkit-details-marker{display:none}
.sommaire summary::after{content:"+";float:right;font-weight:800}
.sommaire[open] summary::after{content:"−"}
.sommaire ol{list-style:none;margin:8px 0 0;padding:6px 0 6px 14px;border-left:2px solid var(--trait);counter-reset:s}
.sommaire li{margin:0;counter-increment:s}
.sommaire a{display:block;padding:6px 0;font:500 15.5px/1.35 var(--titre);color:var(--encre);text-decoration:none}
.sommaire a::before{content:counter(s) ". ";color:var(--gris)}
.sommaire a:hover{color:var(--cote);text-decoration:underline}
.sommaire-mobile{margin:6px 0 26px;max-width:68ch}
.colonne{display:none}
@media (min-width:1080px){
  .sommaire-mobile{display:none}
  .colonne{display:block}
  .colonne .sommaire{position:sticky;top:96px}
  .colonne .sommaire summary{pointer-events:none;background:none;border:0;padding:0 0 4px}
  .colonne .sommaire summary::after{content:""}
}
.prose h2{scroll-margin-top:90px}
.prose ul,.prose ol{padding-left:1.25em}

/* Encadrés */
.encadre{border:2px solid var(--encre);background:var(--blanc);border-radius:var(--r1);padding:16px 18px;margin:1.6em 0;max-width:68ch}
.encadre>:last-child{margin-bottom:0}
.encadre .titre-encadre{font:800 17px/1.3 var(--titre);margin:0 0 6px;display:flex;gap:10px;align-items:center}
.encadre.loi{border-color:var(--cote);background:var(--cote-pale)}
.encadre.loi .titre-encadre::before{content:"§";display:inline-grid;place-items:center;width:28px;height:28px;border-radius:50%;background:var(--cote);color:#fff;font-size:16px}
.encadre.exemple{border-style:dashed;background:var(--blanc)}
.encadre.exemple .titre-encadre::before{content:"=";display:inline-grid;place-items:center;width:28px;height:28px;border-radius:50%;background:var(--encre);color:#fff;font-size:17px}
.encadre.attention{border-color:var(--alerte);background:var(--alerte-pale)}
.encadre.attention .titre-encadre{color:var(--alerte)}
.encadre.astuce{border-color:var(--feuille);background:var(--feuille-pale)}
.encadre.action{border-color:var(--encre);background:var(--bois-pale)}

/* Tableaux */
.table{overflow-x:auto;margin:1.2em 0 1.6em;border:2px solid var(--encre);background:var(--blanc);border-radius:var(--r1);max-width:100%}
table{border-collapse:collapse;width:100%;font-size:15.5px;line-height:1.45}
th,td{text-align:left;padding:10px 12px;border-bottom:1px solid var(--trait);vertical-align:top}
thead th{background:var(--encre);color:var(--blanc);font-weight:700;border-bottom:0}
tbody th{font-weight:700}
tr:last-child td,tr:last-child th{border-bottom:0}
td.num,th.num{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}
tfoot td{font-weight:700;background:var(--feuille-pale);border-top:2px solid var(--encre)}
/* Comparatif : en cartes empilées sous 700 px */
@media (max-width:700px){
  .table.empile{border:0;background:none;overflow:visible}
  .empile table,.empile tbody,.empile tr,.empile td,.empile th{display:block;width:100%}
  .empile thead{position:absolute;left:-9999px}
  .empile tr{background:var(--blanc);border:2px solid var(--encre);border-radius:var(--r1);margin:0 0 12px;padding:4px 0}
  .empile tbody th{font-size:17px;border-bottom:1px solid var(--trait)}
  .empile td{border-bottom:1px dashed var(--trait);padding:8px 12px}
  .empile td::before{content:attr(data-label);display:block;font:700 13px/1.3 var(--titre);color:var(--gris);margin-bottom:2px}
}

/* Étapes */
ol.etapes{list-style:none;padding:0;counter-reset:e;max-width:68ch}
ol.etapes>li{counter-increment:e;position:relative;padding:0 0 18px 60px;margin:0 0 18px;border-bottom:1px solid var(--trait)}
ol.etapes>li::before{content:counter(e);position:absolute;left:0;top:-2px;width:42px;height:42px;border:2px solid var(--encre);border-radius:50%;background:var(--feuille-pale);font:800 18px/38px var(--titre);text-align:center}
ol.etapes>li>b:first-child{display:block;font:700 19px/1.3 var(--titre);margin-bottom:4px}
.check{list-style:none;padding:0 !important}
.check li{padding-left:34px;position:relative}
.check li::before{content:"";position:absolute;left:0;top:5px;width:20px;height:20px;border:2px solid var(--encre);border-radius:3px;background:var(--blanc)}

/* FAQ */
.faq{max-width:68ch;border-top:2px solid var(--encre)}
.faq details{border-bottom:1px solid var(--trait)}
.faq summary{cursor:pointer;list-style:none;font:700 18px/1.35 var(--titre);padding:16px 36px 16px 0;position:relative}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";position:absolute;right:4px;top:12px;font:800 24px var(--titre);color:var(--cote)}
.faq details[open] summary::after{content:"−"}
.faq details>div{padding:0 0 14px}

/* Sources */
.sources{max-width:68ch;margin-top:3em;padding-top:10px;border-top:2px solid var(--encre);font-size:16px}
.sources h2{font-size:22px;margin:.5em 0 .4em}
.sources li{overflow-wrap:anywhere}

/* ── Blocs produits ────────────────────── */
.produits{display:grid;gap:18px;grid-template-columns:1fr;margin:1.4em 0 .6em}
@media (min-width:860px){.produits.deux{grid-template-columns:1fr 1fr}}
.produit{background:var(--blanc);border:2px solid var(--encre);border-radius:var(--r2);padding:18px;display:grid;grid-template-columns:72px 1fr;gap:6px 16px;align-content:start;min-width:0}
.produit .ill{grid-row:1/3;width:72px;height:72px;background:var(--feuille-pale);border-radius:var(--r1);display:grid;place-items:center}
.produit .ill svg{width:60px;height:60px}
.produit h3{margin:0;font-size:20px}
.produit .pourqui{font:500 15px/1.4 var(--titre);color:var(--gris);margin:0}
.produit .corps{grid-column:1/-1;font-size:16px;line-height:1.55}
.produit dl{margin:10px 0;display:grid;grid-template-columns:auto 1fr;gap:4px 12px;font:500 15px/1.4 var(--titre)}
.produit dt{color:var(--gris)}
.produit dd{margin:0}
.pfl{display:grid;gap:10px;grid-template-columns:1fr;margin:8px 0 12px}
@media (min-width:560px){.pfl{grid-template-columns:1fr 1fr}}
.pfl p{font:700 14.5px var(--titre);margin:0 0 2px}
.pfl ul{list-style:none;padding:0;margin:0;font-size:15.5px}
.pfl li{padding-left:20px;position:relative;margin:.2em 0}
.pfl .plus li::before{content:"+";position:absolute;left:2px;font:800 16px/1.4 var(--titre);color:var(--feuille)}
.pfl .moins li::before{content:"−";position:absolute;left:2px;font:800 16px/1.4 var(--titre);color:var(--alerte)}
.produit .btn{width:100%}
.mention-aff{font:500 13.5px/1.45 var(--titre);color:var(--gris);margin:.2em 0 1.6em;max-width:68ch}

/* ── Outils (applications) ─────────────── */
.app{display:grid;grid-template-columns:minmax(0,1fr);gap:22px;margin:20px 0 40px}
@media (min-width:1000px){.app{grid-template-columns:360px minmax(0,1fr);align-items:start}.app .panneau{position:sticky;top:90px}}
.panneau{background:var(--blanc);border:2px solid var(--encre);border-radius:var(--r2);padding:18px}
.panneau h2{font-size:20px;margin:0 0 12px}
.champ{display:flex;flex-direction:column;gap:6px;margin:0 0 16px}
.champ>label,.champ .lib{font:700 15.5px var(--titre)}
.champ small{font:500 13.5px/1.4 var(--titre);color:var(--gris)}
input[type=number],input[type=text],input[type=date],select{font:500 17px var(--titre);padding:10px 12px;border:2px solid var(--encre);border-radius:var(--r1);background:var(--blanc);color:var(--encre);width:100%;min-height:48px}
select{appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--encre) 50%),linear-gradient(135deg,var(--encre) 50%,transparent 50%);background-position:calc(100% - 20px) 21px,calc(100% - 14px) 21px;background-size:6px 6px;background-repeat:no-repeat;padding-right:36px}
input:focus,select:focus{outline:3px solid var(--cote);outline-offset:1px}
.case{display:flex;gap:10px;align-items:flex-start;font:500 15.5px/1.35 var(--titre);margin:6px 0;cursor:pointer}
.case input{width:22px;height:22px;margin:0;accent-color:var(--encre);flex:none}
.segments{display:flex;flex-wrap:wrap;gap:6px}
.segments label{position:relative}
.segments input{position:absolute;opacity:0;inset:0}
.segments span{display:block;border:2px solid var(--encre);border-radius:var(--r1);padding:8px 11px;font:700 15px var(--titre);cursor:pointer;background:var(--blanc)}
.segments input:checked+span{background:var(--encre);color:var(--blanc)}
.segments input:focus-visible+span{outline:3px solid var(--cote);outline-offset:2px}
.resultats{min-width:0}
.resultats>h2:first-child{margin-top:0}
.kpis{display:grid;gap:12px;grid-template-columns:repeat(2,minmax(0,1fr));margin:0 0 18px}
@media (min-width:760px){.kpis{grid-template-columns:repeat(4,minmax(0,1fr))}}
.kpi{background:var(--blanc);border:2px solid var(--encre);border-radius:var(--r1);padding:12px 14px;min-width:0}
.kpi b{display:block;font:800 clamp(19px,2.2vw,24px)/1.15 var(--titre);letter-spacing:-.02em;overflow-wrap:anywhere}
.kpi span{display:block;font:500 13.5px/1.35 var(--titre);color:var(--gris);margin-top:4px}
.kpi.fort{background:var(--feuille-pale)}
.verdict{font-size:18px;max-width:62ch}
.outils-barre{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0}
.toast{font:700 14.5px var(--titre);color:var(--feuille);min-height:1.4em}
.panier{list-style:none;padding:0;margin:12px 0;border-top:2px solid var(--encre)}
.panier li{display:grid;grid-template-columns:1fr auto;gap:6px 14px;align-items:center;padding:12px 0;border-bottom:1px solid var(--trait);margin:0}
.panier .q{font:800 18px/1.25 var(--titre)}
.panier .q small{display:block;font:500 14px/1.4 var(--titre);color:var(--gris);margin-top:2px}
@media (max-width:520px){.panier li{grid-template-columns:1fr}.panier .btn{width:100%}}
.mois{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}
@media (min-width:640px){.mois{grid-template-columns:repeat(6,minmax(0,1fr))}}

.mois div{overflow-wrap:anywhere;hyphens:auto;border:2px solid var(--encre);border-radius:var(--r1);padding:8px 4px;text-align:center;font:500 13px/1.3 var(--titre);background:var(--blanc)}
.mois b{display:block;font-size:15px}
.niv-3{background:#CFE5C7 !important}.niv-2{background:var(--feuille-pale) !important}.niv-1{background:var(--jaune-pale) !important}.niv-0{background:#F3DDCF !important}
.legende{display:flex;flex-wrap:wrap;gap:6px 16px;font:500 14px var(--titre);margin:10px 0}
.legende i{display:inline-block;width:14px;height:14px;border:1.5px solid var(--encre);border-radius:3px;vertical-align:-2px;margin-right:6px}
.graph{background:var(--blanc);border:2px solid var(--encre);border-radius:var(--r1);padding:10px;margin:12px 0}

/* ── Fiches imprimables ────────────────── */
.fiche{background:var(--blanc);border:2px solid var(--encre);padding:24px;margin:1.6em 0;max-width:900px}
.fiche h2{margin-top:0}
.fiche .pied{font:500 13px var(--titre);color:var(--gris);border-top:1px solid var(--trait);padding-top:8px;margin-top:16px}
.deux-col{display:grid;gap:10px 30px;grid-template-columns:1fr}
@media (min-width:700px){.deux-col{grid-template-columns:1fr 1fr}}
.grille-ponte td,.grille-ponte th{text-align:center;border:1px solid var(--trait);height:28px;padding:4px}

/* ── Consentement ─────────────────────── */
.consent{position:fixed;left:12px;right:12px;bottom:12px;z-index:50;background:var(--blanc);color:var(--encre);border:2px solid var(--encre);border-radius:var(--r2);padding:14px 16px;box-shadow:6px 6px 0 var(--encre);max-width:600px;margin:0 auto;font:500 15px/1.45 var(--titre)}
.consent p{margin:0 0 10px}
.consent .actions{margin:0}

/* ── Pied de page ─────────────────────── */
footer{background:var(--encre);color:#DCE6DE;margin-top:60px;padding:40px 0 46px;font:500 15.5px/1.55 var(--titre)}
footer a{color:var(--blanc)}
footer .cols{display:grid;gap:26px;grid-template-columns:1fr}
@media (min-width:860px){footer .cols{grid-template-columns:1.5fr 1fr 1fr}}
footer h2{color:var(--blanc);font-size:18px;margin:0 0 10px}
footer ul{list-style:none;padding:0;margin:0}
footer li{margin:6px 0}
footer .bas{border-top:1px solid rgba(255,255,255,.22);margin-top:26px;padding-top:16px;font-size:14px;color:#C7D3CA}
footer button.lien{background:none;border:0;padding:0;color:var(--blanc);text-decoration:underline;font:inherit;cursor:pointer}

@media (prefers-reduced-motion:no-preference){
  .une .planche svg .vivant{transition:all .25s ease}
}

/* ── Impression ───────────────────────── */
@media print{
  @page{margin:13mm}
  body{background:#fff;font-size:11.5pt;line-height:1.5}
  .entete,.bandeau-aff,footer,.consent,.ariane,.actions,.outils-barre,.no-print,.produits,.selection,.formulaire,.barre-achat,.mention-aff,.sommaire-mobile,.colonne,.panneau,.faq,.sources,nav{display:none!important}
  .app{display:block}
  a{color:#000;text-decoration:none}
  .planche,.encadre,.table,.fiche,.kpi{box-shadow:none!important;break-inside:avoid}
  .table{break-inside:auto;overflow:visible}
  .planche .vues{justify-content:center}
  .planche .vues svg{max-height:80mm;width:auto}
  table{font-size:10pt}th,td{padding:4px 7px}
  thead th{background:#eee!important;color:#000!important}
  h2,h3{break-after:avoid}
  h2{margin-top:1.2em}
  ol.etapes>li{break-inside:avoid}
  body.imprime-une main .wrap>*:not(.fiches){display:none!important}
  body.imprime-une .fiche{display:none}
  body.imprime-une .fiche.a-imprimer{display:block;border:0;margin:0;padding:0;max-width:none}
}
.vues{display:flex;gap:6px;align-items:flex-end}
.vues svg{min-width:0;height:auto}
@media (max-width:620px){.vues{flex-direction:column;align-items:stretch}.vues svg{flex:none!important;width:100%}}

/* ── Composants de conversion ─────────────────────── */
.visually-hidden{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.cache-robot{position:absolute;left:-9999px}
.selection{border:2px solid var(--encre);border-radius:var(--r2);background:var(--blanc);padding:16px 18px;margin:0 0 2em;max-width:820px}
.titre-sel{font:800 20px/1.2 var(--titre);margin:0 0 2px}
.selection .discret{margin:0 0 10px;font-size:14px;font-family:var(--titre)}
.selection ul{list-style:none;padding:0;margin:0}
.selection li{display:grid;grid-template-columns:1fr auto;gap:2px 14px;align-items:center;padding:12px 0;border-top:1px solid var(--trait);margin:0}
.selection .usage{grid-column:1/-1;font:700 13.5px/1.3 var(--titre);color:var(--cote)}
.selection b{font:700 17px/1.3 var(--titre)}
.selection .pourquoi{grid-column:1;font:500 14.5px/1.4 var(--titre);color:var(--gris)}
.selection li .btn{grid-row:2/4;grid-column:2}
@media (max-width:560px){.selection li{grid-template-columns:1fr}.selection li .btn{grid-row:auto;grid-column:1;width:100%;margin-top:6px}}
.aussi{font:500 14.5px var(--titre);margin:0 0 8px}
.titre-sommaire{font:800 16px var(--titre);margin:0 0 6px}
.colonne .sommaire ol{margin-top:0}
.barre-achat{position:fixed;left:0;right:0;bottom:0;z-index:40;background:var(--blanc);border-top:2px solid var(--encre);padding:8px 44px 8px 12px;display:flex;align-items:center;gap:10px;font-family:var(--titre)}
.barre-achat[hidden]{display:none}
.barre-achat p{margin:0;flex:1;min-width:0;font-size:14px;line-height:1.3}
.barre-achat b{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.barre-achat .fermer{position:absolute;right:4px;top:50%;transform:translateY(-50%);width:40px;height:40px;border:0;background:none;font:700 24px var(--titre);cursor:pointer;color:var(--encre)}
@media (min-width:900px){.barre-achat{display:none!important}}
.formulaire form{margin:10px 0 6px}
.ligne-form{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:8px}
.ligne-form input{flex:1 1 220px}
.formulaire .case{font-size:14px}
.quiz fieldset{border:0;padding:0;margin:0 0 18px}
.quiz legend{font:800 19px/1.3 var(--titre);margin-bottom:8px;padding:0}
.choix{display:grid;gap:8px}
.choix label{display:flex;gap:10px;align-items:flex-start;border:2px solid var(--encre);border-radius:var(--r1);padding:12px 14px;background:var(--blanc);font:500 16px/1.35 var(--titre);cursor:pointer}
.choix input{width:20px;height:20px;margin:1px 0 0;accent-color:var(--encre);flex:none}
.choix label:has(input:checked){background:var(--cote-pale);border-color:var(--cote)}
.reco{border:2px solid var(--encre);border-radius:var(--r2);background:var(--blanc);padding:18px;margin:10px 0}
.reco h2.titre-reco{margin:0 0 .4em;font-size:21px}
.ligne-reco{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}
.produit .ill img{width:72px;height:72px;object-fit:contain;border-radius:var(--r1)}
.planche-lien .dessin .vues svg:last-child{display:none}
.planche-lien .planche{border:0;margin:0;padding:0;background:none;box-shadow:none}
.planche-lien figcaption{display:none}
.planche-lien .dessin>.planche{width:100%}
.parcours-guides h2.h3{margin-top:0;font-size:18px;color:var(--gris);font-weight:700;border-top:4px solid var(--encre);padding-top:12px}
.avance summary{cursor:pointer;font:700 15.5px var(--titre);padding:10px 0;margin-bottom:8px;border-top:1px solid var(--trait);list-style:none}
.avance summary::-webkit-details-marker{display:none}
.avance summary::after{content:" +";color:var(--cote)}
.avance[open] summary::after{content:" −"}
@media (max-width:620px){.une .vues svg:last-child{display:none}.une .vues svg:first-child{max-height:340px}}

/* ── v2 (relecture du 3/11/2026) ───────────────────────────────────── */
@media (min-width:980px){.une .wrap{grid-template-columns:6fr 6fr}.une h1{font-size:clamp(40px,4.4vw,60px);max-width:16ch}}
.planche-lien .dessin{min-height:0;overflow:hidden}
.planche-lien .dessin>.planche{height:100%}
.planche-lien .dessin .vues{height:100%;justify-content:center}
.planche-lien .dessin .vues svg:first-child{flex:none!important;height:100%;width:auto;max-width:100%}
.produit{grid-template-columns:112px 1fr}
.produit .ill{width:112px;height:112px;background:var(--feuille-pale)}
.produit .ill svg{width:84px;height:84px}
.produit .ill img{width:112px;height:112px;object-fit:contain;background:#fff;border-radius:var(--r1)}
.produit .ex-produit{margin:4px 0 0;font:500 14px/1.4 var(--titre);color:var(--gris)}
@media (max-width:520px){.panier .btn{width:auto;justify-self:start;padding-left:16px;padding-right:16px}}
