:root{--bg:#f7f2e8;--ink:#26221d;--accent:#1f3a5f;--accent2:#c9822b;--muted:#6b6458;--card:#ffffff;--line:#e4dac6}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--ink);font:17px/1.65 system-ui, -apple-system, "Segoe UI", Roboto, sans-serif}
h1,h2,h3{font-family:Georgia, "Times New Roman", serif;font-weight:600;line-height:1.2;margin:0 0 .6em}
a{color:var(--accent)}
p{margin:0 0 1em}
.btn{display:inline-block;padding:12px 26px;background:var(--accent);color:#fff;text-decoration:none;border-radius:6px}
.btn:hover{background:var(--accent2)}
footer{color:var(--muted);font-size:.9rem}

.wrap{display:grid;grid-template-columns:280px 1fr;min-height:100vh}
aside{background:var(--accent);color:#fff;padding:38px 30px;position:sticky;top:0;height:100vh}
aside .logo{font-size:1.5rem;font-weight:700;display:block;color:#fff;text-decoration:none;margin-bottom:6px}
aside .tag{opacity:.8;margin-bottom:34px;font-size:.95rem}
aside nav a{display:block;color:#fff;text-decoration:none;padding:8px 0;border-bottom:1px solid rgba(255,255,255,.2)}
aside nav a:hover{color:var(--accent2)}
main{padding:0 6vw 30px}
section{padding:52px 0;border-bottom:1px solid var(--line)}
.banner{background:var(--accent2);color:#fff;padding:60px 6vw;margin:0 -6vw}
.banner h1{font-size:clamp(1.9rem,4.4vw,3rem);max-width:16em}
.banner p{max-width:32em;font-size:1.1rem}
.banner .btn{background:#fff;color:var(--accent)}
.cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:22px}
.cols div{border-left:3px solid var(--accent2);padding-left:14px}
.cols p{color:var(--muted);margin:0}
dl{display:grid;grid-template-columns:120px 1fr;gap:8px 16px;margin:0}
dt{font-weight:600}dd{margin:0;color:var(--muted)}
footer{padding:26px 0}
@media(max-width:860px){.wrap{grid-template-columns:1fr}aside{position:static;height:auto}}
