*{margin:0;padding:0;box-sizing:border-box}
:root{--ink:#26221f;--soft:#6e655d;--line:#ddd3c7;--bg:#f6f2ec;--card:#fffdf9;--ember:#b4532a}
body{font-family:Georgia,"Times New Roman",serif;background:var(--bg);color:var(--ink);line-height:1.65}
a{color:var(--ember);text-decoration:none}
a:hover{text-decoration:underline}
header{border-bottom:1px solid var(--line);background:var(--card)}
.wrap{max-width:960px;margin:0 auto;padding:0 20px}
.top{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;padding:18px 0}
.brand{font-size:1.35rem;letter-spacing:.04em;color:var(--ink)}
.brand span{color:var(--ember)}
nav a{margin-left:18px;font-family:system-ui,-apple-system,"Segoe UI",sans-serif;font-size:.92rem;color:var(--soft)}
nav a.on{color:var(--ink);border-bottom:2px solid var(--ember)}
.hero{padding:64px 0 48px}
.hero h1{font-size:2.3rem;line-height:1.2;font-weight:normal;max-width:680px}
.hero p{margin-top:16px;max-width:620px;color:var(--soft);font-size:1.08rem}
main section{padding:28px 0}
h2{font-weight:normal;font-size:1.5rem;margin-bottom:12px}
h3{font-size:1.08rem;margin-bottom:6px}
p+p{margin-top:12px}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:18px;margin-top:18px}
.card{background:var(--card);border:1px solid var(--line);padding:20px;border-radius:4px}
.card small{display:block;margin-top:10px;color:var(--soft);font-family:system-ui,sans-serif;font-size:.82rem}
.note{border-left:3px solid var(--ember);padding:4px 0 4px 16px;color:var(--soft);margin-top:18px}
table{width:100%;border-collapse:collapse;margin-top:12px;font-family:system-ui,sans-serif;font-size:.92rem}
td{padding:8px 0;border-bottom:1px solid var(--line)}
td:last-child{text-align:right;color:var(--soft)}
ul.plain{list-style:none;margin-top:10px}
ul.plain li{padding:6px 0;border-bottom:1px dashed var(--line)}
footer{margin-top:48px;border-top:1px solid var(--line);padding:22px 0;font-family:system-ui,sans-serif;font-size:.84rem;color:var(--soft)}
footer .wrap{display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px}
.err{min-height:70vh;display:flex;align-items:center}
.err .code{font-size:4.5rem;color:var(--line);line-height:1}
@media(max-width:600px){.hero h1{font-size:1.75rem}nav a{margin:0 14px 0 0}}
