:root{--fg:#1f2937;--muted:#4b5563;--bg:#fff;--soft:#f6f5fd;--line:#e5e7eb;--brand:#3c3489;--brand2:#534ab7;--gold:#fac775;--ok:#0f6e56;--err:#a32d2d}
@media (prefers-color-scheme:dark){:root{--fg:#e5e7eb;--muted:#a1a1aa;--bg:#131316;--soft:#1d1c26;--line:#2d2d35;--brand:#afa9ec;--brand2:#7f77dd;--ok:#5dcaa5;--err:#f09595}}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:'Segoe UI',system-ui,-apple-system,sans-serif;color:var(--fg);background:var(--bg);line-height:1.6}
a{color:var(--brand2)}
.bar{display:flex;align-items:center;gap:22px;max-width:1120px;margin:0 auto;padding:14px 20px}
.bar .logo{display:flex;align-items:center;gap:10px;font-weight:600;color:var(--fg);text-decoration:none;margin-right:auto}
.bar .logo img{width:30px;height:30px}
.bar a{text-decoration:none;color:var(--muted);font-size:15px}
.bar a:hover{color:var(--fg)}
header.site{border-bottom:1px solid var(--line)}
.hero{max-width:1120px;margin:0 auto;padding:64px 20px 40px;display:grid;grid-template-columns:1.2fr 1fr;gap:40px;align-items:center}
.hero h1{font-size:44px;line-height:1.15;margin:0 0 16px}
.hero p.lead{font-size:19px;color:var(--muted);margin:0 0 26px}
.hero img{width:100%;max-width:380px;justify-self:center}
.btn{display:inline-block;background:var(--brand2);color:#fff;padding:11px 20px;border-radius:9px;text-decoration:none;font-weight:600;border:0;cursor:pointer;font-size:15px}
.btn:hover{background:var(--brand)}
.btn.ghost{background:transparent;color:var(--brand2);border:1px solid var(--brand2)}
section{max-width:1120px;margin:0 auto;padding:40px 20px}
h2{font-size:30px;margin:0 0 8px}
.sub{color:var(--muted);margin:0 0 26px}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:16px}
.card{background:var(--soft);border:1px solid var(--line);border-radius:12px;padding:18px 20px}
.card h3{margin:0 0 6px;font-size:17px}
.card p{margin:0;color:var(--muted);font-size:14.5px}
.dl{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:16px}
.dl .card a{display:block;margin-top:8px}
.count{font-size:13px;color:var(--muted)}
.total{font-size:15px;color:var(--muted);margin-top:14px}
form{display:grid;gap:12px;max-width:620px}
label{font-size:14px;font-weight:600;display:grid;gap:5px}
input,select,textarea{font:inherit;padding:10px 12px;border:1px solid var(--line);border-radius:8px;background:var(--bg);color:var(--fg)}
textarea{min-height:130px}
.hp{position:absolute;left:-9999px}
.msg{font-size:14px}.msg.ok{color:var(--ok)}.msg.err{color:var(--err)}
footer{border-top:1px solid var(--line);margin-top:40px;padding:22px 20px;color:var(--muted);font-size:13px;text-align:center}
@media (max-width:760px){.hero{grid-template-columns:1fr;padding-top:36px}.hero h1{font-size:32px}.bar{flex-wrap:wrap;gap:14px}}
