
:root{
  --bg:#ffffff; --fg:#111111; --muted:#555; --accent:#0057ff; --pad:1rem; --max:880px;
}
*{box-sizing:border-box}
html,body{margin:0;padding:0;background:var(--bg);color:var(--fg);font:17px/1.6 "Georgia", "Times New Roman", serif;}
a{color:var(--fg); text-underline-offset:2px}
a:hover{color:var(--accent)}
.container{max-width:var(--max);margin:auto;padding:clamp(16px,3vw,40px)}
header{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;margin:0 0 1.25rem}
h1{font-size:clamp(28px,4vw,40px);margin:0}
h2{font-size:clamp(20px,3vw,28px);margin:1.25rem 0 .5rem}
h3{font-size:clamp(18px,2.4vw,22px);margin:1rem 0 .25rem}
small, .muted{color:var(--muted)}
hr{border:0;border-top:1px solid #e6e6e6;margin:1.25rem 0}
ul{padding-left:1.25rem;margin:.25rem 0}
blockquote{margin:1rem 0;padding:.75rem 1rem;border-left:3px solid #e6e6e6;background:#fafafa}
img{max-width:100%;height:auto;display:block;margin:.5rem 0}
.badges{display:flex;flex-wrap:wrap;gap:.5rem .75rem;margin:.25rem 0}
.badge{font-size:.9rem;color:var(--muted)}
.list{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1rem}
.card{border:1px solid #eaeaea;padding:1rem}
footer{margin-top:2rem;color:var(--muted);font-size:.95rem}
hr.sep{margin:2rem 0}
