@font-face{font-family:'Poppins';font-style:normal;font-weight:400;font-display:swap;src:url('/fonts/poppins/400.woff2') format('woff2');}
@font-face{font-family:'Poppins';font-style:normal;font-weight:500;font-display:swap;src:url('/fonts/poppins/500.woff2') format('woff2');}
@font-face{font-family:'Poppins';font-style:normal;font-weight:600;font-display:swap;src:url('/fonts/poppins/600.woff2') format('woff2');}
@font-face{font-family:'Poppins';font-style:normal;font-weight:700;font-display:swap;src:url('/fonts/poppins/700.woff2') format('woff2');}
:root{--primary:#243027;--secondary:#6b8e5a;--cta:#2f7a4d;--link:#15803d;--bold:#1b241d;--text:#2f3a30;--bg:#f6f8f2;--font-head:'Poppins',system-ui,-apple-system,'Segoe UI',Roboto,Helvetica,Arial,sans-serif;--font-body:'Poppins',system-ui,-apple-system,'Segoe UI',Roboto,Helvetica,Arial,sans-serif;}
.container{max-width:1080px;margin:0 auto;padding:0 20px}
.row{display:grid;grid-template-columns:repeat(12,1fr);gap:24px}
.row>*{grid-column:span 12;min-width:0}
.btn{display:inline-block;padding:12px 22px;border-radius:8px;border:1.5px solid var(--primary);color:var(--primary);font-weight:600;text-decoration:none;background:transparent;line-height:1.2}
.btn:hover{text-decoration:none;opacity:.85}
.btn-primary{background:var(--cta);border-color:var(--cta);color:#fff}
.card{border:1px solid var(--line);border-radius:12px;padding:20px;height:100%}
.card h3{margin:0 0 .3em;font-size:1.2rem}
.card h3 a{color:var(--primary)}
.card p{color:#333}
.card{overflow:hidden}
.card-cat{display:inline-block;background:var(--secondary);color:#fff;font-size:.68rem;text-transform:uppercase;letter-spacing:.05em;padding:2px 8px;border-radius:5px;margin-bottom:8px}
.card-thumb{display:block;width:calc(100% + 40px);margin:-20px -20px 16px;aspect-ratio:16/9;object-fit:cover;background:var(--line)}
.hp-img{width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;border-radius:12px;display:block}
@media(min-width:768px){
  .col-2{grid-column:span 2}.col-3{grid-column:span 3}.col-4{grid-column:span 4}
  .col-6{grid-column:span 6}.col-8{grid-column:span 8}
}

:root{ --muted:#6b7280; --line:#e7e7ea; --max:760px; }
*{box-sizing:border-box}
body{margin:0;font-family:var(--font-body);color:var(--text);background:var(--bg);line-height:1.65;font-size:18px;border-top:4px solid var(--secondary)}
.wrap{max-width:var(--max);margin:0 auto;padding:0 20px}
main.wrap{padding-top:34px;padding-bottom:52px}
h1,h2,h3{font-family:var(--font-head);color:var(--primary);line-height:1.22;letter-spacing:-.01em}
h1{font-size:2.05rem;margin:.1em 0 .5em}
p{margin:0 0 1em}
a{color:var(--link);text-decoration:none}
a:hover{text-decoration:underline}
strong,b{color:var(--bold)}
time{font-variant-numeric:tabular-nums}
.muted{color:var(--muted)}
.intro{font-size:1.15rem;color:var(--muted);margin-bottom:1.6em}
.meta{color:var(--muted);font-size:.9rem;margin:.2em 0 .6em}
.meta a{color:var(--secondary);font-weight:500}
.breadcrumb{color:var(--muted);font-size:.88rem;margin-bottom:20px}
.breadcrumb a{color:var(--muted)}
.content{font-size:1.06rem}
.content>:first-child{margin-top:0}
.content h2{margin:1.5em 0 .4em}
.content h3{margin:1.3em 0 .3em}
.content img{max-width:100%;height:auto;border-radius:6px}
.content ul,.content ol{padding-left:1.4em}
.content blockquote{margin:1.2em 0;padding:.4em 1em;border-left:3px solid var(--secondary);color:var(--muted)}
.content code{background:rgba(0,0,0,.05);padding:.1em .35em;border-radius:4px;font-size:.92em}
.content pre{background:#f5f5f6;padding:14px 16px;border-radius:8px;overflow:auto}
.content pre code{background:none;padding:0}
.post-list{list-style:none;padding:0;margin:0}
.post-list>li{padding:24px 0;border-bottom:1px solid var(--line)}
.post-list>li:first-child{padding-top:4px}
.post-list h2{margin:0 0 .15em;font-size:1.35rem}
.post-list h2 a{color:var(--primary)}
.post-list h2 a:hover{color:var(--link);text-decoration:none}
.post-list p{margin:.2em 0 0}
.pagination{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:34px 0 6px;font-size:.95rem}
@media(max-width:560px){body{font-size:17px}h1{font-size:1.7rem}}

/* Article — helpers partagés */
.container.narrow{max-width:720px}
.byline{color:var(--secondary);font-size:.95rem;margin:.2em 0 1.4em}
.byline-light{color:rgba(255,255,255,.85)}
.byline time{color:inherit}
.chip{display:inline-block;background:var(--secondary);color:#fff;padding:.2em .7em;border-radius:999px;font-size:.78rem;font-weight:500;margin-bottom:.8em;text-decoration:none}
.chip:hover{text-decoration:none;opacity:.9}
.prose{font-size:1.06rem;line-height:1.75}
.toc-nav ul,.toc-inline ul{list-style:none;padding:0;margin:0}
.toc-nav li,.toc-inline li{margin:.25em 0}
.toc-nav a,.toc-inline a{color:var(--link);text-decoration:none;font-size:.92rem}
.toc-nav .lvl-3,.toc-inline .lvl-3{padding-left:14px;font-size:.86rem}
.toc-inline{border-left:3px solid var(--secondary);padding:12px 16px;margin:0 0 1.6em;background:rgba(0,0,0,.025);border-radius:0 8px 8px 0}
.toc-inline .toc-title{font-weight:600;color:var(--primary);margin:0 0 .4em}
.author-card{display:flex;gap:1rem;align-items:center;margin-top:2.5em}
.note-card{font-size:.9rem}
.eyebrow{text-transform:uppercase;letter-spacing:.08em;font-size:.78rem;color:var(--secondary);margin:0 0 .3em}
.pager{padding:34px 0 6px}
.pager-inner{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
/* Menu sticky (toutes les variantes de header) */
.site-header{position:sticky;top:0;z-index:50;background:var(--bg)}
/* Image à la une (page article) */
.feat-img{display:block;width:100%;max-width:640px;margin:0 auto 1.8em;aspect-ratio:16/9;object-fit:cover;border-radius:10px;background:var(--line)}
/* Vignette de liste (c2, accueil quiet) */
.list-row{display:flex;gap:16px;align-items:flex-start}
.list-thumb{flex:0 0 88px;width:88px;aspect-ratio:16/9;object-fit:cover;border-radius:8px;background:var(--line)}
.list-row .list-body{flex:1 1 auto;min-width:0}
@media(max-width:560px){.list-thumb{flex-basis:72px;width:72px}}

.hdr-h1{border-bottom:1px solid var(--line);padding:18px 0}
.hdr-h1 .wrap{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}
.hdr-h1 .site-name{font-family:var(--font-head);font-weight:700;font-size:1.25rem;color:var(--primary)}
.hdr-h1 .site-nav a{color:var(--muted);margin-left:18px;font-size:.95rem}
.hdr-h1 .site-nav a:hover{color:var(--primary);text-decoration:none}
@media(max-width:560px){.hdr-h1 .site-nav a{margin:0 14px 0 0}}

.ftr-f1{border-top:1px solid var(--line);padding:24px 0;color:var(--muted);font-size:.9rem;margin-top:48px}
.ftr-f1 a{color:var(--muted)}

.hp-hero{background-size:cover;background-position:center;color:#fff;text-align:center;padding:96px 0;position:relative}
.hp-hero::before{content:'';position:absolute;inset:0;background:rgba(0,0,0,.45)}
.hp-hero-inner{position:relative}
.hp-hero h1{color:#fff;font-size:clamp(2rem,5vw,3.2rem);margin:0 0 .3em}
.hp-hero .lead{font-size:1.2rem;opacity:.96;max-width:60ch;margin:0 auto 1.4em}
.hp-about,.hp-articles{padding:60px 0}
.hp-about .row{align-items:center}
.hp-articles h2{margin:0 0 .8em}
.hp-cta{padding:64px 0;background:var(--primary);color:#fff;text-align:center}
.hp-cta h2{color:#fff;margin:0 0 .3em}
.hp-cta p{opacity:.92;margin-bottom:1.3em}

.cat-hero{background:var(--primary);color:#fff;padding:44px 0}.cat-hero h1{color:#fff;margin:0}
.cat-sec{padding:48px 0}
.cat-sec .card h2{font-size:1.25rem;margin:0 0 .3em}.cat-sec .card h2 a{color:var(--primary)}

.art-a1{padding-top:8px}

