:root{--cream:#FAF5ED;--purple:#5D2E7D;--deep:#3F1D56;--soft:#8B6BA8;--teal:#3FB4C0;--teal2:#A8D9DE;--ink:#2D2A26;--mute:#6B6B6B}
*{box-sizing:border-box}body{margin:0;background:var(--cream);color:var(--ink);font:17px/1.65 Nunito,Helvetica,sans-serif}
.hero{background:var(--purple);color:#fff;text-align:center;padding:52px 20px}.kicker{font:800 13px Nunito;letter-spacing:.14em;color:var(--teal2);text-transform:uppercase}
h1{font:700 40px/1.18 'Playfair Display',serif;margin:12px auto;max-width:760px}.sub{max-width:600px;margin:12px auto 24px;color:#F0E8D8}
.btn{display:inline-block;background:var(--teal);color:#fff;font:800 16px Nunito;letter-spacing:.04em;padding:15px 30px;border-radius:40px;border:0;cursor:pointer;text-decoration:none}
.wrap{max-width:760px;margin:auto;padding:10px 20px}h2{font:700 28px 'Playfair Display',serif;color:var(--deep);margin:34px 0 10px}h3{color:var(--purple);margin:0 0 6px}
.two{display:grid;grid-template-columns:1fr 1fr;gap:24px}.no li{color:var(--mute)}li{margin:6px 0}
form{background:#fff;border-radius:16px;padding:22px;max-width:460px;margin:20px auto;text-align:left;color:var(--ink)}
input{width:100%;padding:13px;margin:6px 0 10px;border:1px solid #ddd;border-radius:10px;font:16px Nunito}.consent{font-size:12px;color:var(--mute);line-height:1.4}
.err{color:#C0392B;font-size:14px;min-height:18px}@media(max-width:640px){h1{font-size:30px}.two{grid-template-columns:1fr}}
