
:root{--ink:#111827;--muted:#667085;--paper:#f7f7f4;--white:#fff;--accent:#2557d6;--soft:#eef3ff;--line:#e5e7eb}
*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif}
.top{max-width:1080px;margin:auto;padding:24px 28px;display:flex;justify-content:space-between;align-items:center}.brand{font-size:25px;font-weight:900;letter-spacing:-1px;text-decoration:none;color:var(--ink)}.brand span{color:var(--accent)}.tag{font-size:13px;color:var(--muted)}
main{max-width:1080px;margin:auto;padding:0 28px}.hero{padding:90px 0 110px;max-width:850px}.kicker{font-size:12px;font-weight:850;letter-spacing:.12em;color:var(--accent)}
h1{font-size:clamp(52px,8vw,92px);line-height:.94;letter-spacing:-.065em;margin:18px 0 28px}h2{font-size:clamp(34px,5vw,58px);line-height:1.02;letter-spacing:-.045em}h3{font-size:20px}
.lead{font-size:21px;line-height:1.55;color:var(--muted);max-width:700px}.lead.small{font-size:18px}.facts{display:flex;gap:10px;flex-wrap:wrap;margin:28px 0}.facts span{background:white;border:1px solid var(--line);padding:8px 12px;border-radius:999px;font-size:13px}
button{font:inherit;cursor:pointer}.cta{border:0;border-radius:12px;background:var(--accent);color:#fff;font-weight:800;padding:15px 20px}.note,.disclosure{font-size:12px;color:var(--muted);line-height:1.6}
.panel{background:var(--white);border:1px solid var(--line);border-radius:24px;padding:clamp(24px,5vw,54px);margin:35px 0 80px;box-shadow:0 18px 60px rgba(17,24,39,.05)}.hidden{display:none!important}
.progressrow{display:flex;justify-content:space-between;font-size:13px;color:var(--muted)}.bar{height:7px;background:#eef0f2;border-radius:99px;margin:10px 0 40px;overflow:hidden}.bar div{height:100%;background:var(--accent);transition:.2s}
#q{font-size:clamp(28px,4vw,44px);max-width:820px}.answer{display:block;width:100%;text-align:left;background:white;border:1px solid var(--line);padding:17px 18px;border-radius:13px;margin:9px 0}.answer:hover{border-color:var(--accent);background:var(--soft)}.back{border:0;background:transparent;color:var(--muted);padding:16px 0}
.scoreline{display:flex;align-items:center;gap:18px;flex-wrap:wrap}.scoreline strong{font-size:64px;letter-spacing:-.06em}.scoreline span{background:var(--soft);color:var(--accent);padding:8px 12px;border-radius:99px;font-weight:800}
.twocol{display:grid;grid-template-columns:1fr 1fr;gap:35px;margin:38px 0}.twocol p,.twocol li,.method p{color:var(--muted);line-height:1.65}.recommend{border-top:1px solid var(--line);padding-top:28px}.detail{margin-top:15px;background:var(--soft);padding:18px;border-radius:12px;line-height:1.6}.disclosure{margin-top:28px;max-width:720px}
.method{padding:40px 0 100px;max-width:750px}.method h2{margin:14px 0}footer{max-width:1080px;margin:auto;padding:28px;border-top:1px solid var(--line);display:flex;justify-content:space-between;color:var(--muted);font-size:13px}
@media(max-width:650px){.tag{display:none}.hero{padding:55px 0 75px}.twocol{grid-template-columns:1fr}main,.top{padding-left:18px;padding-right:18px}}

.legalfooter{gap:18px;flex-wrap:wrap}.legalfooter nav{display:flex;gap:14px;flex-wrap:wrap}.legalfooter a{color:var(--muted);text-decoration:none}
.legalpage{max-width:820px;margin:55px auto 100px;background:#fff;border:1px solid var(--line);border-radius:22px;padding:clamp(24px,5vw,54px)}
.legalpage h1{font-size:clamp(38px,6vw,62px);line-height:1}.legalpage h2{font-size:25px;margin-top:34px}.legalpage p,.legalpage li{color:var(--muted);line-height:1.7}
.notice{background:var(--soft);padding:16px;border-radius:12px}.placeholder{background:#fff5d9;padding:2px 5px;border-radius:4px;color:#7a5200;font-weight:700}
