:root{--fond:#EEECE3;--surface:#FBFAF5;--encre:#1B2420;--plume:#535E58;
--estompe:#89918B;--trait:#D2D1C3;--filet:#E2E1D6;--accent:#B04F15;
--accent-clair:#F6E6D9;--ok:#2F6F4C;--ok-clair:#E2EFE7;--ko:#A8352B;
--ko-clair:#F7E4E1;--attn:#946609;--attn-clair:#F8EED5}
*{box-sizing:border-box}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}
body{margin:0;background:var(--fond);color:var(--encre);font-family:'Source Sans 3',system-ui,-apple-system,sans-serif;
 font-size:17px;line-height:1.6;-webkit-font-smoothing:antialiased}
.wrap{max-width:780px;margin:0 auto;padding:0 22px}
a{color:var(--accent);text-underline-offset:2px}
:focus-visible{outline:2.5px solid var(--accent);outline-offset:3px;border-radius:2px}
header.top{background:var(--surface);border-bottom:1px solid var(--trait)}
.top-in{max-width:780px;margin:0 auto;padding:13px 22px;display:flex;align-items:baseline;gap:24px;flex-wrap:wrap}
.logo{font-family:'Zilla Slab',Georgia,serif;font-weight:600;font-size:22px;letter-spacing:-.015em;
 text-decoration:none;color:var(--encre);white-space:nowrap}
.logo span{color:var(--accent)}
.top nav{display:flex;gap:19px;flex-wrap:wrap}
.top nav a{color:var(--plume);text-decoration:none;font-size:15px;padding:2px 0;border-bottom:1.5px solid transparent}
.top nav a:hover{color:var(--encre);border-bottom-color:var(--accent)}
.fil{font-size:13.5px;color:var(--estompe);padding-top:22px}
.fil a{color:var(--estompe)}
h1{font-family:'Zilla Slab',Georgia,serif;font-weight:500;font-size:clamp(30px,5vw,45px);line-height:1.09;
 letter-spacing:-.02em;margin:16px 0 12px;max-width:19ch;text-wrap:balance}
h2{font-family:'Zilla Slab',Georgia,serif;font-weight:500;font-size:25px;letter-spacing:-.013em;margin:38px 0 12px;line-height:1.22}
h3{font-size:17px;font-weight:600;margin:24px 0 5px}
p{max-width:68ch;margin:0 0 15px}
.chapo{font-size:19.5px;line-height:1.55;color:var(--plume);margin:0 0 28px;max-width:52ch}
ul,ol{max-width:68ch;line-height:1.72} li{margin-bottom:5px}
.carte{background:var(--surface);border:1px solid var(--trait);border-radius:3px}
.carte-h{padding:24px 26px 22px} .carte-b{padding:0 26px 26px}
.rangee{display:flex;flex-wrap:wrap;gap:18px} .rangee+.rangee{margin-top:18px}
.champ{flex:1;min-width:152px} .champ.plein{flex-basis:100%}
.champ label{display:block;font-size:13.5px;font-weight:500;color:var(--plume);margin-bottom:6px}
.champ input,.champ select,.champ textarea{width:100%;padding:10px 0;border:0;border-bottom:1.5px solid var(--trait);
 border-radius:0;font-size:17px;font-family:inherit;background:transparent;color:var(--encre)}
.champ input:focus,.champ select:focus{outline:0;border-bottom-color:var(--accent);border-bottom-width:2px;padding-bottom:9px}
.btn{background:var(--accent);color:#fff;border:0;border-radius:3px;padding:12px 26px;font-size:16.5px;
 font-weight:600;font-family:inherit;cursor:pointer}
.btn:hover{filter:brightness(.88)}
.btn.second{background:transparent;color:var(--accent);border:1.5px solid var(--trait)}
.verdict{margin:26px 0 0;padding:26px 0 0;border-top:2px solid var(--encre)}
.verdict .etat{font-size:14px;font-weight:500;color:var(--plume);margin-bottom:8px}
.verdict .chiffre{font-family:'Zilla Slab',Georgia,serif;font-weight:400;font-size:clamp(38px,7vw,58px);
 line-height:1;letter-spacing:-.028em;font-variant-numeric:tabular-nums lining-nums;margin-bottom:14px}
.verdict p{margin:0 0 11px;font-size:16px;line-height:1.62;max-width:62ch}
.verdict p:last-child{margin-bottom:0}
.v-ok{border-top-color:var(--ok)} .v-ok .chiffre{color:var(--ok)}
.v-ko{border-top-color:var(--ko)} .v-ko .chiffre{color:var(--ko)}
.v-info{border-top-color:var(--accent)} .v-info .chiffre{color:var(--accent)}
.v-attn{border-top-color:var(--attn)} .v-attn .chiffre{color:var(--attn)}
.grille3,.grille2{display:grid;gap:0;margin-top:26px;border-top:1px solid var(--trait)}
.grille3{grid-template-columns:repeat(3,1fr)} .grille2{grid-template-columns:repeat(2,1fr)}
.cell{padding:16px 22px;border-right:1px solid var(--filet)}
.cell:first-child{padding-left:0} .cell:last-child{border-right:0;padding-right:0}
.cell .lib{font-size:13.5px;color:var(--plume)}
.cell .val{font-family:'Zilla Slab',Georgia,serif;font-weight:400;font-size:27px;line-height:1.15;
 letter-spacing:-.02em;font-variant-numeric:tabular-nums lining-nums;margin-top:3px}
.cell .val .unit{font-size:13.5px;color:var(--estompe);font-family:'Source Sans 3',sans-serif;margin-left:2px;position:relative;top:-2px}
.cell .unit{font-size:13.5px;color:var(--estompe);margin-top:3px}
@media(max-width:620px){.grille3,.grille2{grid-template-columns:1fr}
 .cell{border-right:0;border-bottom:1px solid var(--filet);padding:14px 0}
 .cell:last-child{border-bottom:0}}
table{width:100%;border-collapse:collapse;margin:18px 0;font-size:15.5px}
th,td{padding:10px 12px 10px 0;text-align:left;border-bottom:1px solid var(--filet)}
th{font-size:13.5px;font-weight:600;color:var(--plume);border-bottom:1.5px solid var(--trait)}
td.n,th.n{text-align:right;font-variant-numeric:tabular-nums lining-nums;padding-right:0}
tr.total td,tr.fort td{font-weight:600;border-bottom:0;border-top:1.5px solid var(--trait)}
.bloc{background:var(--surface);border:1px solid var(--trait);border-radius:3px;padding:26px 28px;margin:22px 0}
.bloc h2{margin-top:0}
.avert{border-left:2px solid var(--estompe);padding:2px 0 2px 18px;margin:20px 0;font-size:15.5px;
 line-height:1.62;color:var(--plume);max-width:66ch}
.avert strong{color:var(--encre)}
.outils-grille{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:0 40px;
 margin:16px 0;border-top:1px solid var(--trait)}
.outil{padding:15px 0;text-decoration:none;color:var(--encre);display:block;border-bottom:1px solid var(--filet)}
.outil:hover .nom{color:var(--accent);text-decoration:underline;text-underline-offset:3px}
.outil .nom{font-weight:600;font-size:16.5px;display:block;line-height:1.35}
.outil .quoi{font-size:14.5px;color:var(--plume);margin-top:3px;display:block;line-height:1.5}
.maillage ul{list-style:none;padding:0;line-height:1.9;columns:2;column-gap:36px}
.maillage li{break-inside:avoid}
.themes-titre{margin:26px 0 12px;font-size:17px} .themes-grille{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:10px} .themes-grille a{display:flex;justify-content:space-between;gap:10px;align-items:baseline;padding:12px 14px;background:var(--surface);border:1px solid var(--trait);border-radius:var(--r,10px);text-decoration:none;color:var(--encre)} .themes-grille a b{font-weight:600;font-size:15px;line-height:1.3} .themes-grille a span{color:var(--plume);font-size:13px;white-space:nowrap} .themes-grille a:hover{border-color:var(--accent)}
@media(max-width:620px){.maillage ul{columns:1}}
footer{border-top:1px solid var(--trait);margin-top:56px;padding:30px 0 48px;background:var(--surface)}
footer p{font-size:14px;color:var(--plume);max-width:62ch;margin:0 0 9px}
footer nav{display:flex;gap:20px;flex-wrap:wrap;font-size:14px;margin-top:14px}
.masque{display:none}
.saut{position:absolute;left:-9999px;background:var(--accent);color:#fff;padding:11px 20px;
 border-radius:0 0 3px 0;font-weight:600;text-decoration:none;font-size:15.5px;z-index:100}
.saut:focus{left:0;top:0}
@media(max-width:640px){
 body{font-size:16.5px} .wrap{padding:0 18px}
 .top-in{padding:10px 18px 9px;gap:0;flex-wrap:wrap;align-items:center}
 .logo{font-size:19px}
 .top nav{gap:0;flex-wrap:nowrap;width:100%;margin:8px 0 0;justify-content:space-between;border-top:1px solid var(--filet);padding-top:7px}
 .top nav::-webkit-scrollbar{display:none}
 .top nav a{font-size:14.5px;padding:2px 0;white-space:nowrap;border-bottom:0} .top nav a:first-child{display:none}
 .chapo{font-size:17px;margin-bottom:22px}
 h2{font-size:22px;margin:30px 0 10px}
 .carte-h{padding:20px 18px 18px} .carte-b{padding:0 18px 20px}
 .bloc{padding:22px 20px}
}

/* — calculateurs — */
.calc{background:var(--surface);border:1px solid var(--trait);border-radius:3px;padding:26px 28px;margin:22px 0}
.calc .champ{position:relative;margin-bottom:18px;min-width:0}
.calc>.champ:last-child{margin-bottom:0}
.calc .champ input[type=number]{padding-right:64px}
.suffixe{position:absolute;right:0;bottom:11px;font-size:13.5px;color:var(--estompe);pointer-events:none}
.sous{font-size:13.5px;font-weight:600;color:var(--plume);text-transform:none;letter-spacing:.01em;margin:26px 0 10px}
.case{display:flex;gap:10px;align-items:flex-start;font-size:15.5px;color:var(--encre);font-weight:400;margin:8px 0;cursor:pointer}
.case input{width:auto;margin:5px 0 0;accent-color:var(--accent);flex-shrink:0}
.aide{font-size:14.5px;color:var(--plume);margin:-4px 0 16px}
.note{margin-top:20px;padding-top:16px;border-top:1px solid var(--filet)}
.note p{font-size:15.5px;color:var(--plume);margin:0 0 10px} .note p:last-child{margin:0}
.grille{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:0;margin-top:22px;border-top:1px solid var(--trait)}
.grille:empty{display:none;border:0;margin:0}
.verdict:empty{display:none}
.verdict .v-ok,.verdict .v-ko,.verdict .v-attn,.verdict .v-info{padding-left:14px;border-left:2.5px solid}
.verdict .v-ok{border-left-color:var(--ok)} .verdict .v-ko{border-left-color:var(--ko)}
.verdict .v-attn{border-left-color:var(--attn)} .verdict .v-info{border-left-color:var(--accent)}
.verdict .v-ok strong{color:var(--ok)} .verdict .v-ko strong{color:var(--ko)} .verdict .v-attn strong{color:var(--attn)}
table.tab td .det{display:block;font-size:13px;color:var(--estompe);font-weight:400}
table.tab tr.meilleur td{background:var(--ok-clair)}
table.tab td:first-child,table.tab th:first-child{padding-left:8px}
table.tab{font-variant-numeric:tabular-nums lining-nums} td.n{white-space:nowrap} th.n{white-space:normal} .calc{overflow-x:auto} table.tab td{vertical-align:top}
@media(max-width:620px){table{font-size:14px} th,td{padding:8px 8px 8px 0} .bloc{overflow-x:auto} .cell .val{font-size:23px}}
.ligne{display:grid;grid-template-columns:190px 1fr;gap:6px 24px;padding:14px 0;border-bottom:1px solid var(--filet)}
.ligne:last-child{border-bottom:0;padding-bottom:0} .ligne:first-of-type{padding-top:0}
.ligne .nom{font-weight:600;font-size:16px;line-height:1.4}
.ligne .quoi{font-size:15.5px;color:var(--plume);line-height:1.6;max-width:56ch}
@media(max-width:620px){.ligne{grid-template-columns:1fr;gap:3px} .calc{padding:22px 20px}}
.deux{display:grid;grid-template-columns:1fr 1fr;gap:0 28px;align-items:start} .deux .champ{margin-bottom:18px}
@media(max-width:620px){.deux{grid-template-columns:1fr}}
.pilule{display:inline-block;font-size:12.5px;font-weight:600;padding:2px 9px;border-radius:2px;background:var(--accent-clair);color:var(--accent);margin-left:8px;vertical-align:middle}
.pilule.ok{background:var(--ok-clair);color:var(--ok)} .pilule.ko{background:var(--ko-clair);color:var(--ko)} .pilule.attn{background:var(--attn-clair);color:var(--attn)}
.barre{height:8px;background:var(--filet);border-radius:2px;overflow:hidden;margin-top:6px}
.barre i{display:block;height:100%;background:var(--accent)}
.accueil-h1{max-width:22ch}
.bloc.amz{border-left:3px solid var(--accent)} .bloc.amz a{font-weight:600}
.trio{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:1px solid var(--trait);margin:34px 0 8px}
.trio div{padding:18px 20px 18px 0;border-right:1px solid var(--filet)} .trio div:last-child{border-right:0}
.trio b{display:block;font-family:'Zilla Slab',Georgia,serif;font-weight:500;font-size:20px;letter-spacing:-.015em;margin-bottom:4px}
.trio span{font-size:14.5px;color:var(--plume);line-height:1.5;display:block}
@media(max-width:620px){.trio{grid-template-columns:1fr} .trio div{border-right:0;border-bottom:1px solid var(--filet);padding:14px 0} .trio div:last-child{border-bottom:0}}

/* — accueil — */
.hero{display:grid;grid-template-columns:1.05fr .95fr;gap:40px;align-items:start;padding:36px 0 8px;position:relative}
.hero .calc{margin:0}
.hero h1{margin-top:0}
.orne{position:absolute;right:-70px;top:-60px;width:280px;height:280px;opacity:.07;pointer-events:none;color:var(--accent);z-index:0} .hero>div{position:relative;z-index:1}
@media(max-width:820px){.hero{grid-template-columns:1fr;gap:20px;padding-top:20px} .orne{display:none}}
.cartes{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:14px;margin:18px 0 6px}
.carte-o{display:flex;gap:14px;align-items:flex-start;background:var(--surface);border:1px solid var(--trait);border-radius:3px;padding:16px 16px 15px;text-decoration:none;color:var(--encre)}
.carte-o:hover{border-color:var(--accent)} .carte-o:hover .nom{color:var(--accent)}
.carte-o svg{width:30px;height:30px;flex-shrink:0;color:var(--accent);margin-top:2px}
.carte-o .nom{display:block;font-weight:600;font-size:15.5px;line-height:1.3}
.carte-o .quoi{display:block;font-size:13.5px;color:var(--plume);margin-top:4px;line-height:1.45}
.familles{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:0 36px;margin:14px 0}
.famille h3{font-family:'Zilla Slab',Georgia,serif;font-weight:500;font-size:19px;margin:18px 0 6px;letter-spacing:-.01em}
.famille ul{list-style:none;padding:0;margin:0;line-height:1.55}
.famille li{padding:6px 0;border-bottom:1px solid var(--filet);font-size:15px} .famille li:last-child{border-bottom:0}
.famille a{text-decoration:none;color:var(--encre)} .famille a:hover{color:var(--accent);text-decoration:underline;text-underline-offset:3px}
.bandeau{display:flex;flex-wrap:wrap;gap:8px 28px;align-items:baseline;font-size:14px;color:var(--plume);margin:8px 0 26px}
.bandeau b{color:var(--encre);font-weight:600}
.section-h{display:flex;justify-content:space-between;align-items:baseline;gap:16px;margin-top:40px}
.section-h h2{margin:0} .section-h a{font-size:14.5px;white-space:nowrap}
/* — profils d'achat — */
.profils{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px;margin:14px 0 4px}
.profil{border:1px solid var(--trait);border-radius:3px;padding:14px 16px;background:var(--fond)}
.profil b{display:block;font-size:15px;margin-bottom:4px} .profil p{font-size:14px;color:var(--plume);margin:0 0 10px;line-height:1.5}
.profil a,.amz-lien{font-weight:600;font-size:14.5px}
.resultat-amz{margin-top:14px;font-size:15px}
/* — pages de déclinaison — */
.fiche{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:0;border-top:1px solid var(--trait);margin:8px 0 22px}

/* — identité — */
@font-face{font-family:'Zilla Slab';font-style:normal;font-weight:500;font-display:swap;src:url('/fonts/zilla-slab-500.woff2') format('woff2')}
@font-face{font-family:'Zilla Slab';font-style:normal;font-weight:600;font-display:swap;src:url('/fonts/zilla-slab-600.woff2') format('woff2')}
@font-face{font-family:'Zilla Slab';font-style:normal;font-weight:700;font-display:swap;src:url('/fonts/zilla-slab-700.woff2') format('woff2')}
@font-face{font-family:'Source Sans 3';font-style:normal;font-weight:200 900;font-display:swap;src:url('/fonts/source-sans-3.woff2') format('woff2')}

.logo{display:inline-flex;align-items:center;gap:10px;text-decoration:none}
.logo .marque{width:30px;height:30px;flex-shrink:0}
.logo .nom-site{white-space:nowrap}
.illu{width:min(300px,100%);height:auto;color:var(--accent);margin:22px 0 4px;display:block}
.hero h1 em{font-style:italic;color:var(--accent)}

:root{--pin:#24443A;--sable:#F1E3C2}
body{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='240' height='240' viewBox='0 0 240 240'%3E%3Cg fill='none' stroke='%2324443A' stroke-opacity='.07' stroke-width='1.2'%3E%3Cpath d='M-10 60c40-30 80 20 120-5s70-40 140 0'/%3E%3Cpath d='M-10 90c40-30 80 20 120-5s70-40 140 0'/%3E%3Cpath d='M-10 120c50-20 90 25 130 0s60-30 130 5'/%3E%3Cpath d='M-10 165c40-25 85 15 125-8s75-35 135 3'/%3E%3Cpath d='M-10 200c45-20 85 18 125-4s70-28 135 6'/%3E%3Cellipse cx='170' cy='40' rx='28' ry='14'/%3E%3Cellipse cx='170' cy='40' rx='14' ry='6'/%3E%3C/g%3E%3C/svg%3E");background-size:240px 240px}
h1,h2,.logo .nom-site,.trio b,.famille h3,.cell .val,.verdict .chiffre{font-family:'Zilla Slab',Georgia,serif}
h1{font-weight:700;letter-spacing:-.015em;font-size:clamp(36px,5.6vw,56px);line-height:1.02}
h2{font-weight:700;letter-spacing:-.01em;font-size:28px}
h3{font-weight:700}
.logo .nom-site{font-weight:700;font-size:27px;letter-spacing:-.01em;color:#fff}
header.top{background:var(--pin);border-bottom:4px solid var(--accent)}
header.top .top nav a,.top nav a{color:#E4E9E2} .top nav a:hover{color:#fff;border-bottom-color:var(--accent)}
.bloc,.calc,.carte-o,.profil,.carte{border-radius:8px}
.calc{border:1.5px solid var(--pin);border-top:6px solid var(--accent)}
.bloc h2::after{content:'';display:block;width:64px;height:4px;margin-top:8px;background:linear-gradient(90deg,var(--accent) 0 50%,var(--pin) 50%)}
.section-h h2::after{content:'';display:block;width:84px;height:4px;margin-top:8px;background:linear-gradient(90deg,var(--accent) 0 50%,var(--pin) 50%)}
.btn{border-radius:6px;font-weight:700;letter-spacing:.02em}
.cell .val{font-weight:700}
.trio div{border-right:0}
.trio b::before{content:'';display:inline-block;width:0;height:0;border-left:8px solid transparent;border-right:8px solid transparent;border-bottom:12px solid var(--accent);margin-right:10px}
.verdict{border-top:3px solid var(--pin)}
.verdict .v-ok,.verdict .v-ko,.verdict .v-attn,.verdict .v-info{border-left-width:5px}
.carte-o svg{color:#fff;background:var(--pin);border-radius:8px;padding:6px;width:40px;height:40px}
.profil{background:#F7F4EA}
.amz-lien,.profil a{border-bottom:2px solid var(--accent-clair)}
table.tab tr.meilleur td{background:var(--sable)}
.hero h1 em{color:var(--accent)}
footer{background:var(--pin);color:#E3E8E1;border-top:4px solid var(--accent)} footer p{color:#B3C0B6} footer nav a{color:#fff}
@media(max-width:640px){.top nav{border-top-color:rgba(255,255,255,.15)!important}}

p,li,dd,figcaption{overflow-wrap:anywhere}
.top nav a[data-t=guide]::before{box-shadow:0 0 0 1.5px rgba(228,233,226,.9)}

/* — types de contenu — */
:root{--t-outil:#B04F15;--t-outil-fg:#fff;--t-guide:#24443A;--t-guide-fg:#fff;--t-rayon:#2F587E;--t-rayon-fg:#fff;--t-fiche:#6D5A2B;--t-fiche-fg:#fff;--t-comparatif:#6B3F5A;--t-comparatif-fg:#fff;--t-sortie:#3E6B2A;--t-sortie-fg:#fff;--t-recetterando:#A33D2B;--t-recetterando-fg:#fff;--tc:var(--accent);--tc-fg:#fff}
.tc-outil,.tb-outil,.t-outil,.b-outil{--tc:var(--t-outil);--tc-fg:var(--t-outil-fg)}.tc-guide,.tb-guide,.t-guide,.b-guide{--tc:var(--t-guide);--tc-fg:var(--t-guide-fg)}.tc-rayon,.tb-rayon,.t-rayon,.b-rayon{--tc:var(--t-rayon);--tc-fg:var(--t-rayon-fg)}.tc-fiche,.tb-fiche,.t-fiche,.b-fiche{--tc:var(--t-fiche);--tc-fg:var(--t-fiche-fg)}.tc-comparatif,.tb-comparatif,.t-comparatif,.b-comparatif{--tc:var(--t-comparatif);--tc-fg:var(--t-comparatif-fg)}.tc-sortie,.tb-sortie,.t-sortie,.b-sortie{--tc:var(--t-sortie);--tc-fg:var(--t-sortie-fg)}.tc-recetterando,.tb-recetterando,.t-recetterando,.b-recetterando{--tc:var(--t-recetterando);--tc-fg:var(--t-recetterando-fg)}
/* Badges de type */
.tb{display:inline-block;background:var(--tc);color:var(--tc-fg);font-size:12px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;padding:4px 9px 3px;border-radius:3px;line-height:1.3;vertical-align:middle}
.page-type{margin:18px 0 -4px}
/* Cartes typées */
.tcs{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:16px;margin:18px 0 8px}
.tc{display:flex;flex-direction:column;gap:8px;background:var(--surface);border:1px solid var(--trait);border-top:5px solid var(--tc);border-radius:8px;padding:16px 18px 15px;text-decoration:none;color:var(--encre);transition:transform .15s,box-shadow .15s}
.tc:hover{transform:translateY(-2px);box-shadow:0 10px 24px -14px rgba(0,0,0,.35)}
.tc .tb{align-self:flex-start;font-size:11px;padding:3px 8px 2px}
.tc .tc-titre{font-weight:650;font-size:16.5px;line-height:1.3}
.tc .tc-quoi{font-size:14px;color:var(--plume);line-height:1.5;flex:1}
.tc .tc-cta{font-size:14px;font-weight:650;color:var(--tc);margin-top:2px}
.tc-fiche .tc-cta,.tc-theme .tc-cta{color:var(--tc)}
.tc:hover .tc-cta{text-decoration:underline;text-underline-offset:3px}
/* Bandes de l'accueil */
.bande{background:color-mix(in srgb,var(--tc) 7%,var(--fond));box-shadow:0 0 0 100vmax color-mix(in srgb,var(--tc) 7%,var(--fond));clip-path:inset(0 -100vmax);padding:34px 0 30px;margin-top:40px;border-top:4px solid var(--tc)}
.bande + .bande{margin-top:0} .bande + .bloc{margin-top:44px}
.bande-h{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:12px 20px}
.bande-h h2{margin:8px 0 0;font-size:clamp(24px,3.4vw,32px);line-height:1.15}
.bande-h h2::before,.bande-h h2::after{display:none!important}
.bande-h .n{color:var(--plume);font-size:15px;font-weight:500;margin-left:8px;white-space:nowrap}
.bande > p{max-width:640px;color:var(--plume);margin:10px 0 0}
.btn-tc{display:inline-block;background:var(--tc);color:var(--tc-fg)!important;text-decoration:none;font-weight:650;font-size:15px;padding:10px 18px;border-radius:3px;white-space:nowrap}
.btn-tc:hover{filter:brightness(1.08)}
.bande .familles{margin-top:18px}
.bande .familles .famille{background:var(--surface);border:1px solid var(--trait);border-top:5px solid var(--t-guide);border-radius:8px;padding:14px 18px 10px}
.bande .familles .famille h3{margin-top:0}
.bande .familles .famille li a{text-decoration:none;color:var(--encre)}
.bande .familles .famille li a::before{content:'→';color:var(--t-guide);margin-right:8px;font-weight:700}
.bande .familles .famille li a:hover{color:var(--t-guide);text-decoration:underline}
.nb{display:inline-block;font-size:.55em;font-weight:600;color:var(--plume);background:var(--surface);border:1px solid var(--trait);border-radius:999px;padding:1px 9px;vertical-align:middle;margin-left:6px} .famille li.plus a{color:var(--t-guide)!important;font-weight:650} .famille li.plus a::before{content:''!important;margin:0!important} .sommaire{line-height:2;font-size:15px} h2[id]{scroll-margin-top:16px}
.sommaire-page{background:var(--surface);border:1px solid var(--trait);border-left:5px solid var(--tc);border-radius:8px;padding:14px 20px 12px;margin:6px 0 22px}
.sommaire-page b{display:block;font-size:13px;text-transform:uppercase;letter-spacing:.06em;color:var(--plume);margin-bottom:4px}
.sommaire-page ol{margin:0;padding-left:20px;columns:2;column-gap:28px;font-size:15px;line-height:1.75} .sommaire-page li{break-inside:avoid}
.sommaire-page a{color:var(--encre);text-decoration:none} .sommaire-page a:hover{color:var(--tc);text-decoration:underline}
h2[id]{scroll-margin-top:14px} .deux .profil .ligne{grid-template-columns:1fr;gap:2px;padding:8px 0} .deux .profil .ligne .nom{font-weight:650}
.rubriques{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px;margin-top:16px}
.rubriques a{display:block;background:var(--surface);border:1px solid var(--trait);border-top:4px solid var(--tc);border-radius:8px;padding:14px 16px;text-decoration:none;color:var(--encre)}
.rubriques a b{display:block;font-size:17px} .rubriques a span{color:var(--plume);font-size:14px}
@media(max-width:640px){.sommaire-page ol{columns:1}}
.b-outil .carte-o{border-top:4px solid var(--t-outil)}
.themes-grille a{border-left:5px solid var(--t-fiche)}
/* Navigation : repère de couleur par rubrique, rubrique active soulignée */
.top nav a[data-t]::before{content:'';display:inline-block;width:8px;height:8px;border-radius:2px;margin-right:7px;vertical-align:1px}
.top nav a[data-t=outil]::before{background:var(--t-outil)}.top nav a[data-t=guide]::before{background:var(--t-guide)}.top nav a[data-t=rayon]::before{background:var(--t-rayon)}.top nav a[data-t=fiche]::before{background:var(--t-fiche)}.top nav a[data-t=comparatif]::before{background:var(--t-comparatif)}.top nav a[data-t=sortie]::before{background:var(--t-sortie)}.top nav a[data-t=recetterando]::before{background:var(--t-recetterando)}
.t-outil .top nav a[data-t=outil]{color:var(--encre);font-weight:650;box-shadow:inset 0 -3px 0 var(--t-outil)}.t-guide .top nav a[data-t=guide]{color:var(--encre);font-weight:650;box-shadow:inset 0 -3px 0 var(--t-guide)}.t-rayon .top nav a[data-t=rayon]{color:var(--encre);font-weight:650;box-shadow:inset 0 -3px 0 var(--t-rayon)}.t-fiche .top nav a[data-t=fiche]{color:var(--encre);font-weight:650;box-shadow:inset 0 -3px 0 var(--t-fiche)}.t-comparatif .top nav a[data-t=comparatif]{color:var(--encre);font-weight:650;box-shadow:inset 0 -3px 0 var(--t-comparatif)}.t-sortie .top nav a[data-t=sortie]{color:var(--encre);font-weight:650;box-shadow:inset 0 -3px 0 var(--t-sortie)}.t-recetterando .top nav a[data-t=recetterando]{color:var(--encre);font-weight:650;box-shadow:inset 0 -3px 0 var(--t-recetterando)}
.t-outil header.top,.t-guide header.top,.t-rayon header.top,.t-fiche header.top{box-shadow:inset 0 -3px 0 var(--tc)}
/* « À lire aussi » : type de chaque lien */
.maillage .mb{display:inline-block;min-width:54px;text-align:center;font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;background:var(--tc);color:var(--tc-fg);border-radius:3px;padding:2px 5px 1px;margin-right:9px;vertical-align:1px}
@media(max-width:640px){.top nav a[data-t]::before{display:none} .tcs{grid-template-columns:1fr;gap:12px} .bande{padding:26px 0 22px} .bande-h{align-items:flex-start}}
.tb{font-family:'Source Sans 3',sans-serif;font-weight:800} .tc{border-top-width:6px} .t-outil header.top,.t-guide header.top,.t-rayon header.top,.t-fiche header.top{box-shadow:inset 0 -4px 0 var(--tc)}

/* — rubrique — */

/* — rubrique Sorties et recettes de rando (so-, rr-, ms-, bm-) — */
:root{--so:var(--t-sortie,#3E6B2A);--so-clair:#E4EDDC;--rr:var(--t-recetterando,#A33D2B);--so-pin:var(--pin,#24443A);--so-sable:var(--sable,#F1E3C2)}
@media(max-width:640px){header.top nav a:first-child{display:inline}.top nav{gap:2px 12px;flex-wrap:wrap;justify-content:flex-start}.top nav a{font-size:14px}}
.t-sortie .top nav a[data-t=sortie],.t-recetterando .top nav a[data-t=sortie]{color:#fff;font-weight:650;box-shadow:inset 0 -3px 0 var(--so)}
.ms-src{font-size:14px;color:var(--plume);margin:-6px 0 14px}
/* bande d'infos */
.so-infos{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:0;padding:0;overflow:hidden;border-top:6px solid var(--so)}
.rr-infos{border-top-color:var(--rr)}
.so-infos>div{display:flex;flex-direction:column;gap:2px;padding:13px 16px;border-right:1px dashed var(--trait);border-bottom:1px dashed var(--trait);min-width:0}
.so-infos span{font-size:11.5px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--plume)}
.so-infos b{font-family:'Zilla Slab',Georgia,serif;font-weight:600;font-size:17px;line-height:1.3;display:flex;align-items:center;gap:6px 8px;flex-wrap:wrap}
.so-infos b small{font-family:'Source Sans 3',sans-serif;font-weight:400;font-size:13px;color:var(--plume)}
.so-jauge{display:inline-flex;gap:3px;align-items:flex-end}.so-jauge i{width:0;height:0;border-left:6px solid transparent;border-right:6px solid transparent;border-bottom:11px solid var(--trait)}
.so-jauge i:nth-child(2){border-bottom-width:14px}.so-jauge i:nth-child(3){border-bottom-width:17px}.so-jauge i.on{border-bottom-color:var(--accent)}
/* barre d'outils et boutons */
.so-barre{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:-4px 0 22px}
.so-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:9px 16px;border:1.5px solid var(--so-pin);border-radius:6px;background:var(--surface);color:var(--so-pin);font:inherit;font-size:15px;font-weight:700;line-height:1.2;cursor:pointer;text-align:left}
.so-btn:hover{background:var(--so-clair)}
.so-btn svg,.so-lien-sac svg{width:19px;height:19px;flex-shrink:0;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.so-btn.so-prim{background:var(--accent);border-color:var(--accent);color:#fff}.so-btn.so-prim:hover{filter:brightness(.92)}
.so-btn.so-dedans,.so-btn.so-dedans:hover{background:var(--so-clair);border-color:var(--so);color:var(--so);filter:none}
.so-btn.so-danger,.so-btn.so-danger:hover{background:var(--ko);border-color:var(--ko);color:#fff}
.so-btn:disabled{opacity:.45;cursor:not-allowed;filter:none}.so-btn[hidden]{display:none!important}
.so-lien-sac{display:inline-flex;align-items:center;gap:7px;margin-left:auto;padding:8px 2px;font-weight:700;font-size:15px;white-space:nowrap}
.so-statut{flex-basis:100%;margin:0;font-size:15px;color:var(--ok);max-width:none}.so-statut:empty{display:none}
.so-actions{display:flex;flex-wrap:wrap;gap:10px;margin:20px 0 0}.so-actions+.so-statut{margin-top:12px}
@media(max-width:640px){.so-barre .so-btn{flex:1 1 auto}.so-lien-sac{margin-left:0}}
.so-rond{width:40px;height:40px;border-radius:999px;border:1.5px solid var(--so-pin);background:var(--surface);color:var(--so-pin);font:inherit;font-size:21px;font-weight:600;line-height:1;cursor:pointer;flex-shrink:0}
.so-rond:hover{background:var(--so-clair)}.so-rond:disabled{opacity:.35;cursor:not-allowed;background:var(--surface)}
/* liste à cocher */
.so-liste{border:1.5px solid var(--so-pin);border-top:6px solid var(--so)}
.so-liste-aide{color:var(--plume);font-size:15.5px}
.so-reglages{display:flex;flex-wrap:wrap;gap:12px;margin:4px 0 6px}
.so-reg{display:grid;grid-template-columns:auto auto;align-items:center;gap:2px 14px;padding:10px 14px;border:1.5px dashed var(--so);border-radius:8px;background:var(--so-clair);flex:1 1 200px}
.so-reg-lib{font-weight:700;font-size:15px}.so-reg small{grid-column:1/-1;font-size:12.5px;color:var(--plume)}
.so-reg-c{display:flex;align-items:center;gap:8px;justify-self:end}
.so-reg-v{min-width:30px;text-align:center;font-family:'Zilla Slab',Georgia,serif;font-weight:700;font-size:24px;font-variant-numeric:tabular-nums}
.so-cat{margin-top:18px}
.so-cat h3{display:flex;justify-content:space-between;align-items:baseline;gap:10px;margin:0;padding:0 0 5px;border-bottom:2px solid var(--so-pin);font-family:'Zilla Slab',Georgia,serif;font-size:18px}
.so-cat-kg{font-family:'Source Sans 3',sans-serif;font-size:13.5px;font-weight:700;color:var(--so);white-space:nowrap}
.so-items{list-style:none;padding:0;margin:0;max-width:none}
.so-it,.so-calc li{display:grid;grid-template-columns:26px minmax(0,1fr) auto 66px;gap:2px 10px;align-items:start;padding:9px 0;margin:0;border-bottom:1px dashed var(--trait)}
.so-calc li{grid-template-columns:minmax(0,1fr) auto 66px}
.so-it:last-child,.so-calc li:last-child{border-bottom:0}
.so-it input{grid-column:1;grid-row:1}.so-it label{grid-column:2;grid-row:1}.so-it .so-q{grid-column:3;grid-row:1}.so-it .so-w{grid-column:4;grid-row:1}
.so-it input{width:22px;height:22px;margin:1px 0 0;accent-color:var(--so);cursor:pointer}
.so-it label{cursor:pointer;min-width:0;line-height:1.35}
.so-n{font-weight:650;overflow-wrap:anywhere}.so-it small,.so-calc small{display:block;font-size:13px;color:var(--plume);line-height:1.4}
.so-calc small{grid-column:1/2}.so-calc .so-n{grid-column:1/2}.so-calc li{grid-template-areas:"n q w" "s q w"}.so-calc .so-n{grid-area:n}.so-calc small{grid-area:s}.so-calc .so-q{grid-area:q}.so-calc .so-w{grid-area:w}
.so-q{font-size:13.5px;color:var(--plume);white-space:nowrap;padding-top:2px;font-variant-numeric:tabular-nums}.so-q:empty{display:none}
.so-w{font-family:'Zilla Slab',Georgia,serif;font-weight:600;font-size:16px;text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}
.so-it.so-off .so-n,.so-it.so-off .so-w,.so-it.so-off .so-q{color:var(--estompe)}.so-it.so-off .so-n{font-weight:500}
.so-conso h3{border-bottom-color:var(--accent)}.so-conso .so-cat-kg{color:var(--accent)}
.so-totaux{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin:22px -28px 0;background:var(--so-pin);color:#F4EFE2}
.so-totaux>div{display:flex;flex-direction:column;gap:2px;padding:14px 16px;border-right:1px solid rgba(255,255,255,.14);min-width:0}
.so-totaux>div:last-child{border-right:0}
.so-totaux span{font-size:11.5px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:#C9D3CB}
.so-totaux b{font-family:'Zilla Slab',Georgia,serif;font-size:26px;font-weight:700;line-height:1.1;font-variant-numeric:tabular-nums}
.so-totaux small{font-size:13px;color:#DCE3DD}.so-totaux .so-t-dep{background:rgba(0,0,0,.18)}
.so-totaux .so-ok{color:#BFE3C9}.so-totaux .so-attn{color:var(--so-sable)}.so-totaux .so-ko{color:#F6C4B8;font-weight:700}
.so-fin{margin-top:14px}
@media(max-width:700px){.so-totaux{grid-template-columns:1fr 1fr;margin:20px -20px 0}.so-totaux>div:nth-child(2){border-right:0}.so-totaux>div:nth-child(-n+2){border-bottom:1px solid rgba(255,255,255,.14)}}
@media(max-width:420px){.so-it{grid-template-columns:24px minmax(0,1fr) 62px}.so-it .so-q{grid-column:3;grid-row:2;padding:0;text-align:right;font-size:12.5px}.so-it .so-w{grid-column:3;grid-row:1}.so-it label{grid-row:1/3}
 .so-calc li{grid-template-columns:minmax(0,1fr) 62px;grid-template-areas:"n w" "s w" "q w"}.so-calc .so-q{padding:0}}
/* matériel détaillé */
.so-niv{display:inline-block;font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;padding:2px 8px;border-radius:3px;margin-bottom:6px;border:1.5px solid currentColor}
.so-ind{color:var(--accent);background:var(--accent-clair)}.so-pra{color:var(--so)}.so-fac{color:var(--plume)}
.so-repere{display:block;font-size:13px;color:var(--plume);margin:-2px 0 6px}
.profil .so-lien{display:block;margin-top:8px;font-size:14px}
/* journée type */
.so-journee{list-style:none;padding:0;margin:0;max-width:none;position:relative}
.so-journee>li{display:grid;grid-template-columns:76px minmax(0,1fr);gap:0 16px;margin:0;padding:0 0 16px;position:relative}
.so-journee>li::before{content:'';position:absolute;left:37px;top:30px;bottom:0;border-left:2px dashed var(--accent);opacity:.55}
.so-journee>li:last-child::before{display:none}
.so-h{align-self:start;justify-self:center;font-family:'Zilla Slab',Georgia,serif;font-weight:700;font-size:15px;line-height:1;padding:7px 8px;border-radius:6px;background:var(--so-pin);color:#fff;white-space:nowrap;text-align:center;min-width:64px}
.so-journee b{display:block;font-size:16.5px;line-height:1.35;margin:4px 0 3px}.so-journee p{margin:0;line-height:1.6}
@media(max-width:480px){.so-journee>li{grid-template-columns:62px minmax(0,1fr);gap:0 12px}.so-journee>li::before{left:30px}.so-h{min-width:56px;font-size:14px;padding:6px 5px}}
/* sécurité et réglementation */
.so-secu{border-left:6px solid var(--ko)}
.so-alerte{display:flex;gap:16px;align-items:flex-start;margin:18px 0 0;padding:14px 16px;border-radius:8px;background:var(--ko-clair);border:1.5px solid var(--ko)}
.so-112{flex-shrink:0;font-family:'Zilla Slab',Georgia,serif;font-size:34px;font-weight:700;line-height:1;color:#fff;background:var(--ko);border-radius:6px;padding:8px 10px}
.so-alerte p{font-size:15.5px;margin:0 0 8px}.so-alerte p:last-child{margin:0}
@media(max-width:480px){.so-alerte{flex-direction:column;gap:10px}}
.so-regl{border-left:6px solid var(--t-fiche,#6D5A2B)}.so-pt{font-weight:700;margin:14px 0 4px}.so-regl ul{margin-top:0}
.so-h-cartes{margin-top:30px}
/* recettes */
.rr-portions{display:flex;align-items:center;gap:10px;margin:0 0 12px;font-size:15.5px;flex-wrap:wrap}
.rr-n{font-family:'Zilla Slab',Georgia,serif;font-size:24px;font-weight:700;min-width:26px;text-align:center}
.rr-ingr{margin:0 0 6px;padding-left:20px;line-height:1.75;max-width:none}.rr-ingr .rr-q{font-family:'Zilla Slab',Georgia,serif;font-weight:700}
.rr-ingr .rr-eau{color:var(--so-pin)}.rr-ingr small{color:var(--plume)}
.rr-sous{font-size:13px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--rr);margin:16px 0 2px}
.rr-resume{margin:14px 0 8px;padding:10px 14px;border-radius:8px;background:var(--so-sable);font-size:15.5px}
.rr-etapes{list-style:none;counter-reset:rr;padding:0;margin:0;max-width:none}
.rr-etapes>li{counter-increment:rr;position:relative;padding:0 0 14px 46px;margin:0}
.rr-etapes>li::before{content:counter(rr);position:absolute;left:0;top:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;font-family:'Zilla Slab',Georgia,serif;font-weight:700;font-size:17px;color:#fff;background:var(--rr);border-radius:50%}
.rr-etapes b{display:block;margin:4px 0 2px;font-size:16.5px}.rr-etapes p{margin:0}
.rr-cond{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:10px;margin:0 0 12px}
.rr-f span,.bm-f span,.bm-q span,.ms-f span{display:block;font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--plume);margin:0 0 5px}
.rr-f select,.bm-f select,.ms-f select,.ms-f input{width:100%;font:inherit;font-size:15px;padding:9px 10px;border:1.5px solid var(--trait);border-radius:6px;background:var(--surface);color:inherit}
.rr-eg-res{font-size:17px;margin:4px 0 10px}.rr-eg-res b{font-family:'Zilla Slab',Georgia,serif}
/* moteurs */
.bm{border-top:6px solid var(--so)}.bm form{margin:0}.bm-q{display:block}
.bm-q input{width:100%;font:inherit;font-size:17px;padding:13px 15px;border:2px solid var(--so-pin);border-radius:8px;background:#fff;color:inherit}
.bm-mat{border:0;padding:0;margin:16px 0 0;min-width:0}
.bm-mat legend{font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--plume);padding:0;margin:0 0 8px}
.bm-mat legend small{text-transform:none;letter-spacing:0;font-weight:400;font-size:13px}
.bm-puces{display:flex;flex-wrap:wrap;gap:8px}.bm-puce{position:relative;display:inline-flex}
.bm-puce input{position:absolute;opacity:0;width:1px;height:1px}
.bm-puce span{display:inline-block;padding:7px 12px;border:1.5px solid var(--so-pin);border-radius:999px;background:var(--surface);font-size:14px;font-weight:600;cursor:pointer;user-select:none}
.bm-puce input:checked+span{background:var(--so);border-color:var(--so);color:#fff}.bm-puce input:checked+span::before{content:'✓ '}
.bm-puce input:focus-visible+span{outline:2.5px solid var(--accent);outline-offset:3px}
.bm-filtres{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:12px;margin:16px 0 8px}.bm-f{min-width:0}
.bm-raz{font:inherit;font-size:14px;background:none;border:0;color:var(--plume);text-decoration:underline;cursor:pointer;padding:4px 0}
.bm-nb{font-weight:700;margin:16px 0 10px}
.bm-res{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:14px}
.bm-carte{display:flex;flex-direction:column;gap:6px;padding:14px 16px;border:1px solid var(--trait);border-top:5px solid var(--so);border-radius:8px;background:var(--surface);text-decoration:none;color:inherit;min-width:0}
.bm-carte.rr-carte{border-top-color:var(--rr)}.bm-carte:hover{border-color:var(--so-pin);box-shadow:0 10px 22px -16px rgba(0,0,0,.45)}
.bm-carte b{font-family:'Zilla Slab',Georgia,serif;font-size:18px;line-height:1.25}.bm-g{font-size:11.5px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--so)}
.rr-carte .bm-g{color:var(--rr)}.bm-c{font-size:14px;color:var(--plume);line-height:1.45}.bm-m{font-size:13.5px;font-weight:600}.bm-k{font-size:13px;font-weight:700;color:var(--accent)}
/* mon sac */
.ms-vide{color:var(--plume)}
.ms-totaux{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin:0 -28px 18px;background:var(--so-pin);color:#F4EFE2}
.ms-totaux:empty{display:none}
.ms-totaux>div{display:flex;flex-direction:column;gap:2px;padding:14px 16px;border-right:1px solid rgba(255,255,255,.14);min-width:0}.ms-totaux>div:last-child{border-right:0}
.ms-totaux span{font-size:11.5px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:#C9D3CB}
.ms-totaux b{font-family:'Zilla Slab',Georgia,serif;font-size:26px;font-weight:700;line-height:1.1;font-variant-numeric:tabular-nums}
.ms-totaux small{font-size:13px;color:#DCE3DD}.ms-totaux .so-ok{color:#BFE3C9}.ms-totaux .so-attn{color:var(--so-sable)}.ms-totaux .so-ko{color:#F6C4B8;font-weight:700}
@media(max-width:700px){.ms-totaux{grid-template-columns:1fr 1fr;margin:0 -20px 16px}.ms-totaux>div:nth-child(2){border-right:0}.ms-totaux>div:nth-child(-n+2){border-bottom:1px solid rgba(255,255,255,.14)}}
.ms-barres{list-style:none;padding:0;margin:0 0 16px;max-width:none}
.ms-barres li{display:grid;grid-template-columns:150px minmax(0,1fr) 64px;gap:10px;align-items:center;margin:0 0 5px;font-size:14px}
.ms-barres i{display:block;height:10px;border-radius:2px;background:var(--so);min-width:2px}.ms-barres li.ms-b-conso i{background:var(--accent)}
.ms-barres b{text-align:right;font-variant-numeric:tabular-nums;font-weight:650}
@media(max-width:480px){.ms-barres li{grid-template-columns:112px minmax(0,1fr) 58px;font-size:13px}}
.ms-cat h3{display:flex;justify-content:space-between;align-items:baseline;gap:10px;margin:18px 0 0;padding:0 0 5px;border-bottom:2px solid var(--so-pin);font-family:'Zilla Slab',Georgia,serif;font-size:18px}
.ms-cat h3 span{font-family:'Source Sans 3',sans-serif;font-size:13.5px;font-weight:700;color:var(--so)}
.ms-items{list-style:none;padding:0;margin:0;max-width:none}
.ms-it{display:grid;grid-template-columns:26px minmax(0,1fr) auto 62px 34px;gap:2px 8px;align-items:center;padding:8px 0;margin:0;border-bottom:1px dashed var(--trait)}
.ms-it:last-child{border-bottom:0}
.ms-it input[type=checkbox]{width:22px;height:22px;margin:0;accent-color:var(--so);cursor:pointer}
.ms-it label{min-width:0;cursor:pointer;line-height:1.35}.ms-it label small{display:block;font-size:12.5px;color:var(--plume)}
.ms-it input[type=checkbox]:checked+label .so-n{text-decoration:line-through;color:var(--estompe)}
.ms-q{display:inline-flex;align-items:center;gap:4px}.ms-q button{width:30px;height:30px;border-radius:999px;border:1px solid var(--trait);background:var(--surface);color:inherit;font:inherit;font-size:17px;line-height:1;cursor:pointer}
.ms-q output{min-width:22px;text-align:center;font-variant-numeric:tabular-nums;font-size:14.5px}
.ms-w{text-align:right;font-family:'Zilla Slab',Georgia,serif;font-weight:600;white-space:nowrap;font-variant-numeric:tabular-nums}
.ms-x{width:34px;height:34px;border:0;background:none;color:var(--ko);font-size:21px;line-height:1;cursor:pointer;border-radius:999px}.ms-x:hover{background:var(--ko-clair)}
@media(max-width:480px){.ms-it{grid-template-columns:24px minmax(0,1fr) 58px 30px}.ms-it .ms-q{grid-column:2;grid-row:2}.ms-it .ms-w{grid-column:3;grid-row:1}.ms-it .ms-x{grid-column:4;grid-row:1}}
.ms-ajout{margin:18px 0 0;border:1.5px dashed var(--so);border-radius:8px;padding:10px 14px;background:var(--so-clair)}
.ms-ajout summary{cursor:pointer;font-weight:700;color:var(--so-pin)}
.ms-form{display:grid;grid-template-columns:2fr 1.4fr 1fr 1fr auto;gap:10px;align-items:end;margin-top:12px}
@media(max-width:700px){.ms-form{grid-template-columns:1fr 1fr}.ms-f-n{grid-column:1/-1}.ms-form .so-btn{grid-column:1/-1}}
.ms-poids{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;margin:16px 0 0;font-size:15px}
.ms-poids input{width:80px;font:inherit;font-size:16px;padding:7px 9px;border:1.5px solid var(--trait);border-radius:6px;background:var(--surface);color:inherit}
.ms-confirme{display:flex;flex-wrap:wrap;align-items:center;gap:10px;flex-basis:100%;padding:10px 12px;border-radius:8px;background:var(--ko-clair);font-size:15px}
.ms-rl{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:6px 12px;align-items:center;padding:10px 0;border-bottom:1px dashed var(--trait);margin:0}
.ms-rl:last-child{border-bottom:0}.ms-rl a{font-weight:650}.ms-rl small{display:block;font-size:13px;color:var(--plume)}
.ms-retirer{background:none;border:0;padding:6px 2px;color:var(--ko);text-decoration:underline;font:inherit;font-size:14px;cursor:pointer}
@media(max-width:480px){.ms-rl{grid-template-columns:minmax(0,1fr) auto}.ms-rl .ms-retirer{grid-column:1/-1;justify-self:start}}
.ms-repas-tot{margin:10px 0 0;padding:10px 14px;border-radius:8px;background:var(--so-sable);font-size:15.5px}
.ms-courses h3{margin:22px 0 4px;font-family:'Zilla Slab',Georgia,serif;font-size:19px}
.ms-cases{list-style:none;padding:0;margin:0;max-width:none;columns:2;column-gap:28px}
.ms-cases li{display:flex;gap:10px;align-items:flex-start;padding:6px 0;margin:0;break-inside:avoid;border-bottom:1px dashed var(--trait)}
.ms-cases input{width:20px;height:20px;margin:2px 0 0;accent-color:var(--so);flex-shrink:0}
.ms-cases label{flex:1;min-width:0;cursor:pointer;overflow-wrap:anywhere}.ms-cases small{display:block;font-size:12.5px;color:var(--plume)}
.ms-cases input:checked+label{text-decoration:line-through;color:var(--estompe)}
@media(max-width:560px){.ms-cases{columns:1}}
.so-url,.ms-imp-entete{display:none}
/* impression */
@media print{
 @page{margin:13mm}
 html,body{background:#fff!important;color:#000!important}
 body{font-size:10.5pt;padding:0!important;background-image:none!important}
 header.top,footer,.saut,.fil,.page-type,.maillage,.amz,.so-barre,.nv-actions,.nv-panneau,.nv-rech,button,noscript,.so-reglages,.rr-cond,details,.ms-poids,.so-actions,.so-statut,.ms-x,.ms-q button{display:none!important}
 .wrap{max-width:none!important;padding:0!important}
 a{color:#000!important;text-decoration:none!important}
 h1{font-size:20pt;margin:0 0 6pt;max-width:none}
 h2{font-size:13pt;margin:0 0 5pt;break-after:avoid}.bloc h2::after{display:none!important}
 .bloc{border:0!important;padding:0!important;margin:0 0 12pt!important;background:none!important;box-shadow:none!important;overflow:visible!important}
 body.so-imp main>*:not(h1):not(.rt-imp):not(.so-url){display:none!important}
 .so-infos{display:flex;flex-wrap:wrap;gap:3pt 14pt;border:0!important}.so-infos>div{border:0;padding:0}.so-infos span{color:#333!important}
 .so-it.so-off{display:none}.so-it input,.ms-it input,.ms-cases input{-webkit-appearance:none;appearance:none;width:12px;height:12px;border:1.2px solid #000;border-radius:2px;background:#fff}
 .so-it,.so-calc li,.ms-it,.ms-cases li,.so-journee>li,.rr-etapes>li,.ligne{break-inside:avoid}
 .so-totaux,.ms-totaux{background:none!important;color:#000!important;margin:8pt 0 0!important;border:1px solid #000}.so-totaux *,.ms-totaux *{color:#000!important}
 .so-h{background:none;color:#000;border:1px solid #000}.so-journee>li::before{display:none}
 .rr-etapes>li::before{background:none;color:#000;border:1px solid #000}
 .so-alerte{background:none;border:1px solid #000}.so-112{background:none;color:#000;border:1px solid #000}
 .so-secu{border-left:0}.rr-resume{background:none;border:1px solid #999}
 .ligne{grid-template-columns:140px 1fr;padding:4pt 0}.ligne .quoi{color:#222!important}
 .so-liste-aide,.so-fin,.so-liste .aide,.rr-ingredients .aide,.rr-eg .aide,.so-secu .aide{display:none}
 .so-url{display:block!important;margin-top:14pt;padding-top:6pt;border-top:1px solid #999;font-size:9pt;color:#333}
 body.ms-imp-sac main>*:not(.ms-sac){display:none!important}
 body.ms-imp-courses main>*:not(.ms-repas){display:none!important}
 body.ms-imp-courses #ms-repas-liste{display:none!important}
 .ms-imp-entete{display:block!important;font-size:9.5pt;color:#333;margin:0 0 6pt}
 .ms-barres i{background:#555!important;print-color-adjust:exact;-webkit-print-color-adjust:exact}
 .ms-cases{columns:2;column-gap:20pt}
}

/* — itinéraires, parcs, saison, planificateur de repas (it-, pc-, st-, mr-) — */
:root{--it:var(--t-sortie,#3E6B2A)}
.it-infos.it-tete{border-top-color:var(--so-pin)}
.it-infos .so-i-trajet b{font-size:16px}
.it-periode{display:flex;flex-wrap:wrap;align-items:center;gap:10px 18px;margin:-8px 0 22px;padding:12px 16px;background:var(--surface);border:1px solid var(--trait);border-radius:8px}
.it-periode>span:first-child{font-size:15px}
.it-mois{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:3px;flex:1 1 260px;max-width:420px}
.it-mois span{display:flex;align-items:center;justify-content:center;height:28px;border-radius:4px;background:var(--filet);color:var(--plume);font-size:12.5px;font-weight:700}
.it-mois span.on{background:var(--so);color:#fff}
.it-bv{font-size:13.5px;font-weight:700;padding:4px 10px;border-radius:999px;border:1.5px solid currentColor}
.it-bv-autorise{color:var(--ok)}.it-bv-aires,.it-bv-variable{color:var(--attn)}.it-bv-interdit{color:var(--ko)}
.it-compl{margin:0 0 22px;padding:12px 16px;border-left:5px solid var(--t-fiche,#6D5A2B);background:var(--surface);border-radius:0 8px 8px 0;font-size:15.5px;line-height:1.55}
.it-outil{display:flex;flex-wrap:wrap;align-items:flex-end;gap:8px 18px;margin:0 0 12px}
.it-f span{display:block;font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--plume);margin:0 0 5px}
.it-f input{font:inherit;font-size:15px;padding:8px 10px;border:1.5px solid var(--trait);border-radius:6px;background:var(--surface);color:inherit}
.it-aide-outil{flex:1 1 260px;margin:0;font-size:14.5px;color:var(--plume)}
.it-tab-w{margin:0 -4px}
.it-tab,.pc-tab{width:100%;border-collapse:collapse;font-size:14.5px;margin:6px 0 12px;font-variant-numeric:tabular-nums}
.it-tab th,.it-tab td,.pc-tab th,.pc-tab td{padding:8px 8px 8px 4px;vertical-align:top;border-bottom:1px solid var(--filet);text-align:left}
.it-tab thead th,.pc-tab thead th{font-size:12px;letter-spacing:.04em;text-transform:uppercase;color:var(--plume);border-bottom:2px solid var(--so-pin)}
.it-tab .n{text-align:right;white-space:nowrap}
.it-tab .it-c{width:30px}.it-tab .it-c input{width:20px;height:20px;accent-color:var(--so);margin:0}
.it-tab .it-nom label{cursor:pointer}.it-tab .it-date{white-space:nowrap;color:var(--so-pin);font-weight:650}
.it-tab tr.it-off td{color:var(--estompe)}.it-tab tr.it-off .it-b{opacity:.5}
.it-tab .it-sous th{background:var(--so-clair);font-family:'Zilla Slab',Georgia,serif;font-size:15px;color:var(--so-pin);text-transform:none;letter-spacing:0;padding:7px 8px}
.it-tab tfoot td{border-top:2px solid var(--so-pin);border-bottom:0;font-weight:700}
.it-b{display:inline-block;font-size:12px;font-weight:700;padding:2px 8px;border-radius:999px;white-space:nowrap;border:1.5px solid currentColor}
.it-b-ok{color:var(--ok);background:var(--ok-clair)}.it-b-attn{color:var(--attn);background:var(--attn-clair)}.it-b-ko{color:var(--ko);background:var(--ko-clair)}.it-b-nc{color:var(--plume)}
.it-tab .it-date:empty::after{content:'—';color:var(--estompe);font-weight:400}
@media(max-width:700px){
 .it-tab thead{display:none}.it-tab,.it-tab tbody,.it-tab tfoot,.it-tab tr,.it-tab td,.it-tab th{display:block;width:100%}
 .it-tab tr.it-e,.it-tab tfoot tr{position:relative;padding:10px 0 10px 34px;border-bottom:1px dashed var(--trait)}
 .it-tab td{border:0;padding:1px 0;text-align:left!important;display:flex;gap:10px;justify-content:space-between}
 .it-tab td[data-l]::before{content:attr(data-l);font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--plume);flex-shrink:0;padding-top:2px}
 .it-tab td.it-nom{display:block;font-size:15.5px;margin-bottom:4px}.it-tab td.it-nom::before{display:none}
 .it-tab td.it-c{position:absolute;left:0;top:12px;width:auto}
 .it-tab td:empty,.it-tab td.it-date:empty{display:none}
 .it-tab tfoot tr{padding-left:0;border-top:2px solid var(--so-pin)}.it-tab tfoot td{border:0}
 .pc-tab thead{display:none}.pc-tab,.pc-tab tbody,.pc-tab tr,.pc-tab td,.pc-tab th{display:block;width:100%}
 .pc-tab tr{padding:10px 0;border-bottom:1px dashed var(--trait)}.pc-tab th,.pc-tab td{border:0;padding:1px 0}
 .pc-tab td.pc-s::before{content:'Source : '}}
.it-sorties{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:12px;margin:12px 0}
.it-sortie{display:flex;flex-direction:column;gap:5px;padding:14px 16px;border:1.5px solid var(--so-pin);border-top:5px solid var(--so);border-radius:8px;background:var(--surface);text-decoration:none;color:inherit;min-width:0}
.it-sortie b{font-family:'Zilla Slab',Georgia,serif;font-size:18px;line-height:1.25}.it-sortie:hover{box-shadow:0 10px 22px -16px rgba(0,0,0,.45)}
.it-cta{display:flex;flex-wrap:wrap;gap:10px;margin:14px 0 0}.it-cta .so-btn{text-decoration:none}
.it-sac{border-top:6px solid var(--so)}
.it-src ul{font-size:15px;line-height:1.6}.it-src li{overflow-wrap:anywhere}
.bm-carte.it-carte{border-top-color:var(--so-pin)}.bm-carte.pc-carte .it-b{align-self:flex-start}
/* parcs */
.pc-tete .so-i-statut b{font-family:'Source Sans 3',sans-serif}
.pc-verdict{font-size:18px;line-height:1.55;margin:-6px 0 20px;padding:14px 18px;border-left:6px solid var(--so);background:var(--so-clair);border-radius:0 8px 8px 0;max-width:none}
.pc-tab th[scope=row]{font-weight:700;width:28%}.pc-tab .pc-s{font-size:13px;color:var(--plume);width:22%}
.pc-ref{font-size:14.5px;color:var(--plume);margin:4px 0 0}
.pc-fiches{columns:2;column-gap:28px}.pc-fiches li{break-inside:avoid}
@media(max-width:560px){.pc-fiches{columns:1}}
/* saison */
.st-periode{margin-top:-4px}.st-annee{line-height:1.6}.st-annee li{margin-bottom:8px}.st-cal .so-h{min-width:74px;font-size:13.5px;white-space:normal;line-height:1.15}
.st-cal>li{grid-template-columns:96px minmax(0,1fr)}.st-cal>li::before{left:47px}
@media(max-width:480px){.st-cal>li{grid-template-columns:78px minmax(0,1fr)}.st-cal>li::before{left:38px}.st-cal .so-h{min-width:70px}}
/* planificateur de repas */
.mr-outil{border:1.5px solid var(--so-pin);border-top:6px solid var(--rr)}
.mr-opts{border:0;padding:0;margin:14px 0 6px;min-width:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:0 18px}
.mr-opts legend{font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--plume);padding:0;margin:0 0 4px}
.mr-opts .case{margin:6px 0;min-height:28px;align-items:center}.mr-opts .case input{margin:0;width:20px;height:20px;accent-color:var(--so)}
.mr-cond{margin-top:12px}.mr-act1{margin-top:8px}
.mr-totaux{margin:0 -28px 18px}
@media(max-width:700px){.mr-totaux{margin:0 -20px 16px}}
.mr-jour{margin:0 0 16px;border:1px solid var(--trait);border-radius:8px;overflow:hidden;background:var(--surface)}
.mr-jour h3{margin:0;padding:8px 14px;background:var(--so-pin);color:#fff;font-family:'Zilla Slab',Georgia,serif;font-size:17px;display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap}
.mr-jour h3 small{font-family:'Source Sans 3',sans-serif;font-weight:600;font-size:13px;color:#DCE3DD}
.mr-jour ul{list-style:none;padding:0;margin:0;max-width:none}
.mr-sl{display:grid;grid-template-columns:118px minmax(0,1fr) auto;gap:2px 12px;align-items:center;padding:9px 14px;margin:0;border-bottom:1px dashed var(--trait)}
.mr-sl:last-child{border-bottom:0}
.mr-sl .mr-r{font-size:12px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:var(--rr)}
.mr-sl a{font-weight:650;line-height:1.3}.mr-sl small{display:block;font-size:13px;color:var(--plume)}
.mr-chg{font:inherit;font-size:14px;background:var(--surface);border:1.5px solid var(--so-pin);color:var(--so-pin);border-radius:6px;padding:6px 10px;min-height:36px;cursor:pointer;white-space:nowrap}
.mr-chg:hover{background:var(--so-clair)}.mr-chg:disabled{opacity:.4;cursor:not-allowed}
.mr-comp{margin:12px 0 0;padding:10px 14px;border-radius:8px;background:var(--so-sable);font-size:15.5px}
@media(max-width:520px){.mr-sl{grid-template-columns:minmax(0,1fr) auto;padding:9px 12px}.mr-sl .mr-r{grid-column:1/-1}}
@media print{
 .it-outil,.it-c,.it-tab .it-c,.mr-chg,.mr-outil,.it-cta{display:none!important}
 .it-tab tr.it-off{display:none}
 .it-tab-w{margin:0}
 .it-mois span{print-color-adjust:exact;-webkit-print-color-adjust:exact}
 body.mr-imp main>*:not(h1):not(.mr-resultat):not(.mr-courses):not(.so-url){display:none!important}
 .mr-jour{break-inside:avoid;border:1px solid #000}.mr-jour h3{background:none!important;color:#000!important;border-bottom:1px solid #000}.mr-jour h3 small{color:#333!important}
 .mr-totaux{background:none!important;color:#000!important;margin:8pt 0!important;border:1px solid #000}.mr-totaux *{color:#000!important}
}
