:root{--b:#111;--g:#e5e7eb;--mut:#6b7280;--acc:#111}
*{box-sizing:border-box}html,body{margin:0;padding:0}
body{font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;color:var(--b);line-height:1.6;background:#fff}
.wrap{max-width:1100px;margin:auto;padding:24px}
h1{font-size:clamp(28px,5vw,44px);margin:0 0 8px}
h2{margin:24px 0 8px}h3{margin:12px 0 4px}
.sub{opacity:.9;margin:0 0 18px}
.grid{display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}
.card{border:1px solid var(--g);border-radius:16px;padding:16px;background:#fff}
.badge{display:inline-block;font-size:12px;border:1px solid var(--g);border-radius:999px;padding:4px 10px;margin-right:8px;color:#111}
.btn{display:inline-block;padding:12px 16px;border-radius:12px;text-decoration:none;border:1px solid var(--b);margin-right:12px}
.primary{background:var(--acc);color:#fff}
.notice{background:#fff8e1;border:1px solid #facc15;border-radius:12px;padding:12px;margin:16px 0;font-size:14px}
footer{font-size:12px;opacity:.8;margin-top:24px}
ul{margin:0;padding-left:18px}
header nav a{margin-right:12px;color:#111;text-decoration:none;border-bottom:1px solid transparent}
header nav a:hover{border-color:#111}
.hero{padding:24px 0 8px}
.prices{display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}
.price{font-weight:800;font-size:22px;margin:6px 0}
label{display:block;margin:8px 0}
.disabled{pointer-events:none;opacity:.5}
small.mut{color:var(--mut)}
hr{border:0;border-top:1px solid var(--g);margin:20px 0}
figure{margin:0}
