/* Wagick: static witch and spell pages (built by tools/seo/build.mjs). */
:root{--bg:#110F0D;--surface:#1A1714;--ink:#EEE5D3;--muted:#A3977F;--line:#352E25;--gold:#C9A66B;--gold-hi:#E8CF98;--gold-ink:#17130E;color-scheme:dark}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.55 "Jost","Avenir Next",system-ui,sans-serif}
a{color:var(--gold)}
.sb{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;padding:16px max(16px,calc(50% - 560px));border-bottom:1px solid var(--line)}
.wm{font-family:"Cinzel",Georgia,serif;font-weight:600;font-size:24px;letter-spacing:.14em;color:var(--gold);text-decoration:none}
.sb nav{display:flex;gap:20px}.sb nav a{color:var(--ink);text-decoration:none;font-size:14px;letter-spacing:.08em;text-transform:uppercase}
main{max-width:1120px;margin:0 auto;padding:20px 16px 40px}
.crumbs{font-size:14px;color:var(--muted)}.crumbs a{color:var(--muted)}.crumbs i{font-style:normal;color:var(--gold);margin:0 6px}
.hero{padding:28px 0 8px}
.eb{font-family:"Cinzel",Georgia,serif;letter-spacing:.14em;text-transform:uppercase;color:var(--gold);font-size:13px;margin:0}
h1{font-family:"Cormorant Garamond",Georgia,serif;font-style:italic;font-weight:500;font-size:clamp(38px,6vw,60px);line-height:1.05;color:var(--gold-hi);margin:8px 0}
h2{font-family:"Cinzel",Georgia,serif;font-weight:600;letter-spacing:.05em;font-size:20px;margin:36px 0 12px}
h3{font-weight:500;font-size:18px;margin:0 0 4px}h3 a{color:var(--ink);text-decoration:none}
.lede{font-family:"Cormorant Garamond",Georgia,serif;font-size:22px;line-height:1.4;max-width:62ch}
.rt{margin:4px 0}.st{color:var(--gold)}.mu,.by,.meta{color:var(--muted);font-size:14px}
.rk{display:inline-block;font-size:12px;font-weight:600;padding:2px 9px;border-radius:999px;border:1px solid var(--gold);color:var(--gold);margin-left:6px}
.cta{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin:18px 0}
.btn{display:inline-block;background:var(--gold);color:var(--gold-ink);font-weight:600;border-radius:999px;padding:12px 22px;text-decoration:none}
.free{color:var(--gold);font-size:14px}
.facts{display:grid;grid-template-columns:max-content 1fr;gap:4px 18px;font-size:14px;margin:18px 0 0}.facts dt{color:var(--muted)}.facts dd{margin:0}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px}
.lc{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:16px 18px}.lc p{margin:6px 0}
.meta b{color:var(--ink);font-size:16px}
blockquote{margin:0 0 12px;padding:12px 16px;border-left:2px solid var(--gold);background:var(--surface);border-radius:0 10px 10px 0}
blockquote p{margin:0;font-family:"Cormorant Garamond",Georgia,serif;font-size:19px}cite{color:var(--muted);font-size:13px;font-style:normal}
.links{display:flex;flex-wrap:wrap;gap:8px}.links a{border:1px solid var(--line);border-radius:999px;padding:6px 14px;text-decoration:none;font-size:14px}
.sf{border-top:1px solid var(--line);padding:20px 16px;text-align:center;color:var(--muted);font-size:13px}
.sf p{margin:6px 0}
.sf-legal{display:flex;flex-wrap:wrap;justify-content:center;gap:4px 16px;margin:10px 0}.sf-legal a{color:var(--muted)}.sf-legal a:hover{color:var(--gold)}
.skip{position:absolute;left:-9999px;top:8px;background:var(--gold);color:var(--gold-ink);padding:8px 14px;border-radius:8px;z-index:10}.skip:focus{left:8px}
a:focus-visible,.btn:focus-visible{outline:2px solid var(--gold-hi);outline-offset:3px}
/* Policy pages (legal/, contact/) */
.legal{max-width:72ch}
.legal h1{font-size:clamp(34px,5vw,50px)}
.legal h2{font-size:18px;margin:30px 0 8px;scroll-margin-top:16px}
.legal p,.legal li{line-height:1.65}.legal li{margin:4px 0}
.upd{color:var(--muted);font-size:14px;margin:0 0 14px}
.lede-s{font-family:"Cormorant Garamond",Georgia,serif;font-size:21px;line-height:1.45}
.toc{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:12px 18px;margin:14px 0}
.toc ol{margin:0;padding-left:20px;columns:2 220px;column-gap:28px}.toc li{margin:0;padding:3px 0;break-inside:avoid}
.note{color:var(--muted);font-size:14px;margin-top:28px}
.tbl{width:100%;border-collapse:collapse;font-size:15px}.tbl th,.tbl td{text-align:left;vertical-align:top;padding:9px 10px;border-bottom:1px solid var(--line)}.tbl th{color:var(--muted);font-weight:500}
@media (max-width:560px){.tbl thead{display:none}.tbl tr{display:block;padding:8px 0;border-bottom:1px solid var(--line)}.tbl td{display:block;border:0;padding:2px 0}.tbl td:first-child{font-weight:600}}
mark.todo{background:transparent;color:var(--gold-hi);border:1px dashed var(--gold);border-radius:6px;padding:0 6px;font-size:.9em}
.more{max-width:1120px;margin-top:40px}
