:root{--bg: #fafaf7;--fg: #1f2421;--muted: #5b6360;--border: #d8d6cf;--accent: #b48a4b;--link: #2d6a4f;--link-hover: #1b4332;--max-content: 720px;--max-wide: 1100px;--space-1: .25rem;--space-2: .5rem;--space-3: 1rem;--space-4: 1.5rem;--space-5: 2rem;--space-6: 3rem;--radius: 6px}*{box-sizing:border-box;margin:0;padding:0}html{font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-size:17px;line-height:1.65;color:var(--fg);background:var(--bg);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}body{min-height:100vh;display:flex;flex-direction:column}main{flex:1;width:100%;max-width:var(--max-wide);margin:0 auto;padding:var(--space-4) var(--space-3)}article{max-width:var(--max-content);margin:0 auto}article h1{font-size:clamp(1.8rem,4vw,2.6rem);line-height:1.2;margin:var(--space-4) 0 var(--space-3);font-weight:700;letter-spacing:-.02em}article h2{font-size:clamp(1.3rem,2.5vw,1.6rem);margin:var(--space-5) 0 var(--space-3);border-bottom:1px solid var(--border);padding-bottom:var(--space-2);font-weight:600}article h3{font-size:1.15rem;margin:var(--space-4) 0 var(--space-2);font-weight:600}article p{margin-bottom:var(--space-3)}article a{color:var(--link);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}article a:hover{color:var(--link-hover);text-decoration-thickness:2px}article ul,article ol{margin:var(--space-3) 0 var(--space-3) var(--space-4)}article li{margin-bottom:var(--space-2)}article img{max-width:100%;height:auto;display:block;border-radius:var(--radius);margin:var(--space-4) 0}article figure{margin:var(--space-4) 0}article figcaption{font-size:.9rem;color:var(--muted);margin-top:var(--space-2);text-align:center}article blockquote{border-left:3px solid var(--accent);padding-left:var(--space-3);margin:var(--space-4) 0;color:var(--muted);font-style:italic}article table{width:100%;border-collapse:collapse;margin:var(--space-4) 0;font-size:.95rem}article th,article td{padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--border);text-align:left}article th{background:#00000008;font-weight:600}header.site-header{border-bottom:1px solid var(--border);background:var(--bg)}.site-header__inner{max-width:var(--max-wide);margin:0 auto;padding:var(--space-3);display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--space-3)}.brand{font-weight:700;font-size:1.2rem;text-decoration:none;color:var(--fg);letter-spacing:-.01em}.nav{display:flex;gap:var(--space-3);flex-wrap:wrap;font-size:.95rem}.nav a{color:var(--muted);text-decoration:none}.nav a:hover,.nav a[aria-current=page]{color:var(--fg)}footer.site-footer{border-top:1px solid var(--border);margin-top:var(--space-6);padding:var(--space-4) var(--space-3);font-size:.9rem;color:var(--muted);background:#00000005}.site-footer__inner{max-width:var(--max-wide);margin:0 auto;display:flex;flex-wrap:wrap;gap:var(--space-4);justify-content:space-between;align-items:flex-start}.site-footer a{color:var(--muted);text-decoration:underline}.site-footer a:hover{color:var(--fg)}.hero{margin:0 calc(-1 * var(--space-3)) var(--space-4);position:relative}.hero img{width:100%;max-height:60vh;object-fit:cover;border-radius:0;margin:0}.article-meta{font-size:.92rem;color:var(--muted);margin-bottom:var(--space-4);display:flex;flex-wrap:wrap;gap:var(--space-3)}.cookie-banner{position:fixed;bottom:0;left:0;right:0;background:var(--fg);color:var(--bg);padding:var(--space-3);z-index:1000;display:none}.cookie-banner[data-show=true]{display:block}.cookie-banner__inner{max-width:var(--max-wide);margin:0 auto;display:flex;flex-wrap:wrap;gap:var(--space-3);align-items:center;justify-content:space-between}.cookie-banner button{background:var(--accent);color:var(--fg);border:none;padding:var(--space-2) var(--space-3);border-radius:var(--radius);cursor:pointer;font-weight:600}.article-card{border:1px solid var(--border);border-radius:var(--radius);padding:var(--space-3);background:#fff;transition:box-shadow .15s ease}.article-card:hover{box-shadow:0 2px 12px #0000000f}.article-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:var(--space-3);margin:var(--space-4) 0}@media (max-width: 600px){html{font-size:16px}main{padding:var(--space-3) var(--space-2)}}
