*{box-sizing:border-box}
:root{--bg:#0d1117;--fg:#e6edf3;--muted:#8b949e;--card:#161b22;--line:#30363d;
--soc:#1f6feb;--eco:#2ea043;--ins:#a371f7;--sci:#00b8d9;--tec:#f78166;--spo:#e3b341}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--fg);
font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Helvetica,Arial,sans-serif;line-height:1.65;
overflow-wrap:break-word;word-break:break-word}
h1,h2,h3,.chapeau,.corps p{overflow-wrap:break-word;hyphens:auto}
.wrap{max-width:840px;margin:0 auto;padding:0 18px}
a{color:inherit;text-decoration:none}
header.site{border-bottom:1px solid var(--line);padding:16px 0}
header.hero{padding:52px 0 30px;text-align:center;border-bottom:0;
background:radial-gradient(1200px 300px at 50% -80px,rgba(31,111,235,.18),transparent)}
.brand{display:inline-flex;align-items:baseline;gap:10px}
.logo{font-weight:800;font-size:26px;letter-spacing:1px;
background:linear-gradient(90deg,var(--soc),var(--ins));-webkit-background-clip:text;background-clip:text;color:transparent}
.wordmark{color:var(--muted);font-size:15px;font-weight:600;letter-spacing:.5px}
header.hero .logo{font-size:52px}
header.hero .wordmark{font-size:20px}
.hero-tag{color:var(--muted);font-size:18px;margin:14px 0 4px}
.hero-sub{color:var(--muted);margin:0}
/* nav rubriques */
.mainnav{border-bottom:1px solid var(--line);position:sticky;top:0;z-index:10;
background:rgba(13,17,23,.92);backdrop-filter:saturate(180%) blur(8px)}
.mainnav .wrap{display:flex;flex-wrap:wrap;gap:4px;padding-top:8px;padding-bottom:8px;overflow-x:auto}
.mainnav a{padding:8px 12px;border-radius:8px;font-size:14px;font-weight:600;color:var(--muted);white-space:nowrap}
.mainnav a:hover{color:var(--fg);background:var(--card)}
.mainnav a[aria-current]{color:var(--fg);background:var(--card)}
.mainnav a.r-societe:hover,.mainnav a.r-societe[aria-current]{box-shadow:inset 0 -2px 0 var(--soc)}
.mainnav a.r-economie:hover,.mainnav a.r-economie[aria-current]{box-shadow:inset 0 -2px 0 var(--eco)}
.mainnav a.r-insolite:hover,.mainnav a.r-insolite[aria-current]{box-shadow:inset 0 -2px 0 var(--ins)}
.mainnav a.r-science:hover,.mainnav a.r-science[aria-current]{box-shadow:inset 0 -2px 0 var(--sci)}
.mainnav a.r-tech:hover,.mainnav a.r-tech[aria-current]{box-shadow:inset 0 -2px 0 var(--tec)}
.mainnav a.r-sport:hover,.mainnav a.r-sport[aria-current]{box-shadow:inset 0 -2px 0 var(--spo)}
main{padding:30px 0 10px}
.rub-section{margin-bottom:40px}
h2{font-size:22px;border-left:4px solid var(--line);padding-left:12px;margin:0 0 18px}
h2.feed-title{border-color:var(--soc)}
.feed-title .count{color:var(--muted);font-size:14px;font-weight:400}
h2.r-societe{border-color:var(--soc)}h2.r-economie{border-color:var(--eco)}h2.r-insolite{border-color:var(--ins)}
h2.r-science{border-color:var(--sci)}h2.r-tech{border-color:var(--tec)}h2.r-sport{border-color:var(--spo)}
.grid{display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}
.card{background:var(--card);border:1px solid var(--line);border-radius:12px;overflow:hidden;transition:.15s}
.card:hover{transform:translateY(-3px);border-color:var(--muted)}
.card a{display:block;padding:16px}
.card h3{margin:10px 0 8px;font-size:17px;line-height:1.35}
.card p{color:var(--muted);font-size:14px;margin:0 0 12px}
.card .meta{color:var(--soc);font-size:12.5px;font-weight:600}
.rubrique{display:inline-block;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;
padding:3px 9px;border-radius:99px;color:#fff}
.r-societe{background:var(--soc)}.r-economie{background:var(--eco)}.r-insolite{background:var(--ins)}
.r-science{background:var(--sci)}.r-tech{background:var(--tec)}.r-sport{background:var(--spo)}
.article{max-width:720px}
.static .corps p{font-size:16px}
.crumbs{color:var(--muted);font-size:13px;margin:0 0 18px}
.crumbs a:hover{color:var(--fg)}
.article h1{font-size:29px;line-height:1.25;margin:14px 0 10px}
.byline{color:var(--muted);font-size:13px;margin:0 0 22px}
.chapeau{font-size:19px;color:var(--fg);font-weight:500;border-left:3px solid var(--soc);padding-left:14px;margin:0 0 26px}
.corps p{margin:0 0 18px;font-size:17px}
.chute{font-style:italic;color:var(--fg)}
.fictif{margin:28px 0;padding:12px 16px;background:rgba(163,113,247,.12);border:1px solid var(--ins);
border-radius:10px;font-size:14px;color:var(--fg)}
.back a{color:var(--soc);font-weight:600}
footer.site{border-top:1px solid var(--line);margin-top:40px;padding:26px 0;color:var(--muted);font-size:13px}
.foot-links{margin:0 0 10px}
.foot-links a:hover{color:var(--fg)}
@media(max-width:600px){
  .article h1{font-size:24px}
  header.hero .logo{font-size:40px}
  header.hero{padding:38px 0 22px}
  .grid{grid-template-columns:1fr}
  .chapeau{font-size:17px}
  .corps p{font-size:16px}
}
