:root{--background:#fbfaf8;--surface:#fff;--text:#1f1b17;--muted:#5f564d;--border:#e8e1da;--accent:#6d3c1e;--accent-contrast:#fff;--space-2xs:.25rem;--space-xs:.5rem;--space-sm:.75rem;--space-md:1rem;--space-lg:1.5rem;--space-xl:2rem;--space-2xl:3rem;--space-3xl:4rem;--radius:18px;--max:72rem}*{box-sizing:border-box}html{color:var(--text);background:var(--background);font-family:Arial,Helvetica,sans-serif}body{margin:0}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline}img{max-width:100%;display:block}.shell{width:min(calc(100% - 2rem), var(--max));margin:0 auto}.site-header{justify-content:space-between;align-items:center;gap:var(--space-lg);padding:var(--space-lg) 0;display:flex}.brand{font-size:1.25rem;font-weight:700}.nav-list,.footer-links,.meta-list,.stack-list{gap:var(--space-md);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}main{padding-bottom:var(--space-3xl)}.hero,.section,.page-header{padding:var(--space-2xl) 0}.hero{gap:var(--space-lg);display:grid}.kicker,.overline{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-size:.8rem}h1{margin:0;font-size:clamp(2rem,4vw,3.2rem);line-height:1.05}h2{margin:0 0 var(--space-md);font-size:clamp(1.5rem,3vw,2rem)}h3{margin:0 0 var(--space-xs);font-size:1.2rem}p{margin:0 0 var(--space-md);line-height:1.6}.button-row{gap:var(--space-sm);flex-wrap:wrap;display:flex}.button{border:1px solid var(--border);background:var(--surface);border-radius:999px;justify-content:center;align-items:center;min-height:44px;padding:.8rem 1rem;display:inline-flex}.button-primary{background:var(--accent);color:var(--accent-contrast);border-color:var(--accent)}.card-grid{gap:var(--space-lg);grid-template-columns:repeat(auto-fit,minmax(220px,1fr));display:grid}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:var(--space-lg)}.info-box{border-radius:var(--radius);padding:var(--space-lg);background:#f1ede8}.site-footer{border-top:1px solid var(--border);padding:var(--space-2xl) 0}.footer-grid{gap:var(--space-lg);grid-template-columns:1.4fr 1fr;display:grid}@media (max-width:780px){.site-header,.footer-grid{grid-template-columns:1fr;display:grid}}
