*{box-sizing:border-box}body{margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;color:#1f2933;background:#faf7f2;line-height:1.55}
a{color:#b4421f}.wrap{max-width:1040px;margin:0 auto;padding:0 16px}
.topbar{background:#1f2933;color:#f5f5f5;font-size:.82rem;text-align:center;padding:6px 10px}.topbar a{color:#ffd8a8;margin-left:6px}
header.site{background:#fff;border-bottom:1px solid #eadfd2}header.site .wrap{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;padding:12px 16px}
.logo{font-weight:800;font-size:1.3rem;color:#1f2933;text-decoration:none}nav a{margin-left:14px;text-decoration:none;color:#3e4c59;font-weight:600}
.hero{padding:28px 0 8px}.hero h1{margin:0 0 6px;font-size:1.9rem}.hero p{margin:0;color:#52606d}
.notice{background:#fff4e0;border:1px solid #f0c987;border-radius:8px;padding:10px 12px;font-size:.92rem;margin:16px 0}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:16px;margin:16px 0 32px}
.card{background:#fff;border:1px solid #eadfd2;border-radius:12px;padding:16px;display:flex;flex-direction:column}
.card .icon{font-size:2.2rem;background:#fdf1e6;border-radius:10px;text-align:center;padding:14px 0;margin-bottom:10px}
.card h2{font-size:1.02rem;margin:4px 0 6px}.card h2 a{color:#1f2933;text-decoration:none}.card p{font-size:.9rem;color:#52606d;margin:0 0 10px;flex:1}
.tag{display:inline-block;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.03em;color:#8a3a1b;background:#fde3d3;border-radius:999px;padding:2px 8px}
.btn{display:inline-block;background:#b4421f;color:#fff;text-decoration:none;font-weight:700;border-radius:8px;padding:12px 18px}.btn:hover{background:#94361a}
.btn-sm{padding:8px 12px;font-size:.88rem}.paid{font-size:.78rem;color:#616e7c}
article{background:#fff;border:1px solid #eadfd2;border-radius:12px;padding:20px;margin:20px 0 32px}
article h1{font-size:1.6rem;margin:6px 0 10px}.buybox{background:#f7f3ee;border-radius:10px;padding:14px;margin:16px 0}
.muted{color:#616e7c;font-size:.85rem}.price{font-weight:700}
footer.site{background:#fff;border-top:1px solid #eadfd2;font-size:.85rem;color:#52606d;padding:14px 0 24px}
@media(max-width:600px){.hero h1{font-size:1.5rem}nav a{margin:0 12px 0 0}header.site nav{width:100%;margin-top:6px}}