:root{--ink:#1c2430;--mut:#5b6675;--line:#dfe4ea;--acc:#7a2a4f;--bg:#ffffff}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.7 -apple-system,"Segoe UI",Roboto,Arial,sans-serif}
a{color:var(--acc);text-decoration:none}
a:hover{text-decoration:underline}
.wrap{max-width:880px;margin:0 auto;padding:0 18px}
header.site{border-bottom:1px solid var(--line);background:#fbfbfc}
header.site .wrap{padding-top:16px;padding-bottom:12px}
.sitename{font-size:20px;font-weight:700;letter-spacing:.2px}
.sitename span{font-weight:400;color:var(--mut)}
nav.main{display:flex;flex-wrap:wrap;gap:16px;margin-top:8px;font-size:14px}
nav.main a{color:var(--mut)}
nav.main a.on{color:var(--acc);font-weight:600}
main{padding-top:26px;padding-bottom:26px}
h1{font-size:30px;line-height:1.25;margin:0 0 12px}
h2{font-size:20px;margin:30px 0 10px}
h3{font-size:16px;margin:20px 0 6px}
p{margin:0 0 14px}
ul{margin:0 0 16px;padding-left:20px}
li{margin:0 0 6px}
ul.events{list-style:none;padding:0}
ul.events li{border-bottom:1px solid var(--line);padding:12px 0;margin:0}
ul.events .d{display:block;font-size:13px;color:var(--mut);margin-top:2px}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px}
.card{border:1px solid var(--line);border-radius:8px;padding:14px 16px}
.card h3{margin-top:0}
footer.site{border-top:1px solid var(--line);margin-top:28px;padding:18px 0 34px;font-size:13px;color:var(--mut);background:#fbfbfc}
footer.site a{color:var(--mut)}
@media(max-width:560px){h1{font-size:24px}.wrap{padding:0 14px}}
