*{box-sizing:border-box}body{margin:0;font-family:system-ui,-apple-system,Segoe UI,sans-serif;color:#1b2733;line-height:1.6}
header,footer{padding:1rem 1.5rem;background:#0f3d5e;color:#fff}header a,footer a{color:#fff;text-decoration:none;margin-right:1rem}
header .brand{font-weight:700;margin-right:2rem}main{max-width:860px;margin:0 auto;padding:2rem 1.5rem}
.hero h1{font-size:2.2rem;line-height:1.2}.btn{display:inline-block;background:#1a8f6f;color:#fff;padding:.8rem 1.4rem;border-radius:6px;text-decoration:none;border:0;font-size:1rem;cursor:pointer}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:1rem}.card{background:#f2f6fa;padding:1.2rem;border-radius:8px}
label{display:block;margin:.8rem 0 .2rem;font-weight:600}input,textarea{width:100%;padding:.6rem;border:1px solid #c5d0db;border-radius:5px;font:inherit}
.note{background:#fff8e1;padding:.8rem;border-radius:6px;font-size:.9rem}footer{font-size:.85rem;margin-top:3rem}
.ok{color:#1a6f55}.err{color:#b00020}.hp{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.card ul{padding-left:1.1rem;font-size:.95rem}.price{font-size:1.8rem;font-weight:700}.check{display:flex;gap:.5rem;align-items:flex-start;font-weight:400}.check input{width:auto;margin-top:.35rem}
