:root{--ink:#0e2a38;--teal:#0e7c86;--aqua:#19b5c4;--sand:#f4efe6;--card:#fff;--line:#dce6ea;--bad:#b3261e}
*{box-sizing:border-box}body{margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;color:var(--ink);background:#f7fafb}
a{color:var(--teal)}header.top{display:flex;justify-content:space-between;align-items:center;padding:14px 22px;background:#fff;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:5}
.logo{font-weight:800;font-size:20px;text-decoration:none;color:var(--ink)}.logo span{color:var(--teal)}
nav a{margin-left:16px;text-decoration:none;font-weight:600}
.btn{display:inline-block;background:var(--teal);color:#fff!important;border:0;border-radius:10px;padding:11px 18px;font-weight:700;cursor:pointer;text-decoration:none;font-size:15px}
.btn.secondary{background:#e8f3f4;color:var(--teal)!important}.btn.danger{background:var(--bad)}.btn:disabled{opacity:.55;cursor:wait}
.wrap{max-width:1060px;margin:0 auto;padding:28px 20px}.wrap.narrow{max-width:560px}
.hero{background:linear-gradient(135deg,#0e2a38,#0e7c86);color:#fff;border-radius:18px;padding:44px 34px;margin-top:10px}
.hero h1{font-size:40px;margin:0 0 12px}.hero p{font-size:18px;opacity:.92;max-width:640px}
.price{font-size:34px;font-weight:800}.price small{font-size:16px;font-weight:600;opacity:.85}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:16px;margin-top:22px}
.card{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:18px}
.card h3{margin-top:0}input,select{width:100%;padding:10px;border:1px solid var(--line);border-radius:9px;font-size:15px;background:#fff}
label{font-size:13px;font-weight:700;display:block;margin:10px 0 4px}label.chk{display:flex;gap:8px;align-items:center;font-size:14px}
label.chk input{width:auto}.err{background:#fdecea;color:var(--bad);border-radius:9px;padding:10px 12px;margin:12px 0;display:none}
.note{background:#fff8e6;border:1px solid #ecd9a0;border-radius:9px;padding:10px 12px;margin:12px 0}
table{width:100%;border-collapse:collapse}td,th{padding:9px;border-bottom:1px solid var(--line);text-align:left}
footer{padding:26px;text-align:center;color:#6b8290;font-size:13px}
