:root{--pink:#e3196c;--ink:#15151a;--muted:#5d5d66;--bg:#fff;--soft:#fdf0f5}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;font-family:system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;color:var(--ink);background:var(--bg);line-height:1.55}
a{color:var(--pink)}
.hero{text-align:center;padding:32px 20px 40px;background:linear-gradient(180deg,#fff 0%,var(--soft) 100%)}
.logo{width:180px;height:180px;border-radius:50%;box-shadow:0 8px 30px rgba(227,25,108,.15)}
.logo-kecil{width:110px;height:110px;border-radius:50%}
.pill{display:inline-block;background:var(--pink);color:#fff;font-size:.85rem;font-weight:600;padding:4px 14px;border-radius:99px;margin:18px 0 6px}
h1{font-size:1.75rem;line-height:1.25;margin:10px auto 12px;max-width:680px}
.lead{color:var(--muted);max-width:620px;margin:0 auto 22px;font-size:1.05rem}
.tombol{display:inline-block;background:var(--pink);color:#fff;text-decoration:none;font-weight:700;padding:12px 22px;border-radius:12px;border:0;font-size:1rem;cursor:pointer}
.tombol.besar{padding:15px 28px;font-size:1.1rem}
main{max-width:860px;margin:0 auto;padding:0 20px}
section{padding:32px 0;border-bottom:1px solid #f0e3ea}
h2{font-size:1.35rem;margin:0 0 16px}
.kartu-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.kartu{background:var(--soft);border-radius:16px;padding:18px}
.kartu h3{margin:6px 0 6px;font-size:1.05rem}
.kartu p{margin:0;color:var(--muted);font-size:.95rem}
.ikon{font-size:1.7rem}
.langkah{padding-left:22px}.langkah li{margin:8px 0}
.aman ul{padding-left:20px}.aman li{margin:6px 0}
.form-wrap{border-bottom:0}
form{display:flex;flex-direction:column;gap:14px;background:var(--soft);padding:20px;border-radius:16px}
label{display:flex;flex-direction:column;gap:6px;font-weight:600;font-size:.95rem}
label small{font-weight:400;color:var(--muted)}
input,select,textarea{font:inherit;padding:12px;border:1px solid #e5cbd7;border-radius:10px;background:#fff;width:100%}
.cek{flex-direction:row;align-items:flex-start;font-weight:400;gap:10px}
.cek input{width:22px;height:22px;flex:none;margin-top:2px}
.jebakan{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
footer{text-align:center;color:var(--muted);font-size:.9rem;padding:28px 20px 40px}
footer p{margin:4px 0}
.pesan{text-align:center;padding:48px 20px;max-width:620px}
.pesan.teks{text-align:left}.pesan.teks .logo-kecil{display:block;margin:0 auto}
@media (max-width:640px){h1{font-size:1.45rem}.kartu-grid{grid-template-columns:1fr}}
