
:root{--pd:#240f3c;--pm:#562c80;--gold:#FFD700;--ink:#3d1f5c;--lav:#d9c9f0;--logo-size:52px;--font:Arial,"Helvetica Neue",Helvetica,sans-serif}
*{box-sizing:border-box;margin:0}
html{scroll-behavior:smooth}
body{font-family:var(--font);color:#fff;background:var(--pd);line-height:1.55;-webkit-text-size-adjust:100%}
a{color:var(--gold)}
.wrap{max-width:1040px;margin:0 auto;padding:0 24px}
.hero{background:linear-gradient(135deg,var(--pd),var(--pm));padding:72px 0 80px;position:relative;overflow:hidden}
.hero .wrap{display:flex;gap:48px;align-items:center;flex-wrap:wrap}
.hero svg{width:210px;height:210px;flex:none}
.kicker{color:var(--gold);font-weight:700;letter-spacing:.2em;font-size:.8rem;text-transform:uppercase}
h1{font-size:clamp(2.6rem,8vw,4.8rem);line-height:1;color:var(--gold);margin:.35rem 0 .5rem}
.sub{font-size:clamp(1.05rem,2.6vw,1.45rem)}
.tag{color:var(--lav);margin-top:.4rem;font-size:1.05rem}
.btns{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}
.btn{display:inline-block;padding:12px 22px;border-radius:999px;font-weight:700;text-decoration:none;border:2px solid var(--gold)}
.btn.p{background:var(--gold);color:var(--ink)}
.btn.s{color:var(--gold)}
.btn:focus-visible,a:focus-visible{outline:3px solid #fff;outline-offset:3px}
section{padding:64px 0}
.light{background:#fbf9fe;color:var(--ink)}
h2{font-size:clamp(1.6rem,4.5vw,2.3rem);line-height:1.15;margin:.3rem 0 1rem}
.light .kicker{color:#7a4fb0}
.lead{font-size:1.15rem;max-width:760px}
.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px;margin-top:28px}
.card{background:#fff;color:var(--ink);border-radius:14px;padding:24px;border-top:5px solid var(--gold);box-shadow:0 2px 14px rgba(61,31,92,.14)}
.card h3{font-size:1.15rem;margin-bottom:.4rem}
.card p{color:#4b3a60;font-size:.98rem}
.num{display:inline-flex;width:34px;height:34px;border-radius:50%;background:var(--gold);color:var(--ink);font-weight:700;align-items:center;justify-content:center;margin-bottom:10px}
.dark{background:linear-gradient(135deg,var(--pd),var(--pm))}
.status{margin-top:30px;border:2px solid #7a4fb0;border-radius:12px;padding:18px 22px;background:rgba(61,31,92,.07);max-width:820px}
.ask{list-style:none;padding:0;margin-top:18px;max-width:780px}
.ask li{padding:10px 0 10px 22px;position:relative;font-size:1.08rem}
.ask li:before{content:"";position:absolute;left:0;top:1.05em;width:9px;height:9px;border-radius:50%;background:var(--gold)}
.ask b{color:var(--gold)}
footer{background:#1a0b2e;color:var(--lav);padding:30px 0;font-size:.88rem}
footer p+p{margin-top:.4rem}
[hidden]{display:none!important}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

.hero .wrap{display:block}
.hero svg.mark{width:var(--logo-size);height:var(--logo-size);display:block;margin-bottom:18px}
.notice{background:var(--gold);color:var(--ink);padding:10px 0;font-size:.92rem;font-weight:700}
.notice .wrap{display:block}
.sitehead{background:linear-gradient(135deg,var(--pd),var(--pm));padding:16px 0}
.sitehead a{color:var(--gold);font-weight:700;text-decoration:none;display:inline-flex;align-items:center;gap:12px;font-size:1.2rem}
.sitehead svg{width:var(--logo-size);height:var(--logo-size)}
.doc{background:#fbf9fe;color:var(--ink);padding:48px 0 64px}
.doc .wrap{max-width:820px}
.doc h1{font-size:2rem;color:var(--ink);margin-bottom:.4rem}
.doc h2{font-size:1.25rem;margin:1.8rem 0 .5rem;color:var(--ink)}
.doc p,.doc li{margin:.5rem 0;color:#33224a}
.doc ul{padding-left:1.3rem}
.doc a{color:#562c80}
.meta{color:#6b5a80;font-size:.9rem}
form.contact{display:grid;gap:14px;max-width:620px;margin-top:30px}
.contact label{font-weight:700;font-size:.92rem;display:grid;gap:6px}
.contact input,.contact select,.contact textarea{font:inherit;padding:11px 12px;border-radius:8px;border:2px solid #b79be0;background:#fff;color:#222;width:100%}
.contact textarea{min-height:130px}
.contact .chk{display:flex;gap:10px;align-items:flex-start;font-weight:400}
.contact .chk input{width:auto;margin-top:5px}
.contact .hp{position:absolute;left:-9999px}
.contact button{cursor:pointer;font:inherit}
.sent{margin-top:18px;padding:14px 18px;border:2px solid var(--gold);border-radius:10px;max-width:620px}
.sent.error{border-color:#ffb4ab}
footer .links a{color:var(--lav);margin-right:16px}
