*{box-sizing:border-box}
html,body{margin:0}
body{font-family:'Poppins','Helvetica Neue',Arial,sans-serif;color:#0E1A3A;background:#F6F7F9;-webkit-font-smoothing:antialiased}
main{min-height:100vh;padding:72px 20px 96px;display:flex;flex-direction:column;align-items:center;gap:48px}
h1{margin:0;max-width:760px;text-align:center;font-size:64px;line-height:1.08;font-weight:800;letter-spacing:-.02em}
.card{width:100%;max-width:720px;background:#fff;border-radius:24px;padding:48px 56px;box-shadow:0 12px 40px rgba(14,26,58,.08)}
form{display:flex;flex-direction:column;gap:28px}
.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 20px}
.field{display:flex;flex-direction:column;gap:8px}
.field label{font-size:14px;font-weight:500}
.req{color:#C2410C}
.input{width:100%;height:52px;padding:0 16px;font:inherit;font-size:15px;color:#0E1A3A;border:1.5px solid #DADEE5;border-radius:12px;background:#fff}
.input::placeholder{color:#9AA1AE}
.input:focus{outline:none;border-color:#24406E;box-shadow:0 0 0 3px rgba(36,64,110,.18)}
.input.invalid{border-color:#C2410C}
.with-icon{position:relative}
.with-icon svg{position:absolute;left:16px;top:17px;pointer-events:none}
.with-icon .input{padding-left:44px}
.err{margin:0;font-size:12.5px;color:#C2410C}
.consents{display:flex;flex-direction:column;gap:18px}
.consent{display:flex;gap:12px;align-items:flex-start;font-size:13px;line-height:1.6;color:#4A5468;cursor:pointer}
.cb{appearance:none;-webkit-appearance:none;width:20px;height:20px;margin:2px 0 0;border:1.5px solid #C9CED6;border-radius:5px;background:#fff;cursor:pointer;flex:0 0 20px;display:grid;place-content:center}
.cb:checked{background:#24406E;border-color:#24406E}
.cb:checked::after{content:"";width:5px;height:10px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg) translate(-1px,-1px)}
.cb:focus-visible{outline:3px solid rgba(36,64,110,.35);outline-offset:2px}
.submit{height:56px;width:100%;font:inherit;font-size:17px;font-weight:700;color:#fff;background:#24406E;border:none;border-radius:12px;cursor:pointer}
.submit:hover{background:#1C3359}
.submit:disabled{opacity:.7;cursor:wait}
.form-error{margin:0;font-size:14px;color:#C2410C;text-align:center}
.legal{margin:0;font-size:12.5px;line-height:1.65;color:#5A6478}
a{color:#24406E}a:hover{color:#172A4A}
.thanks{display:flex;flex-direction:column;align-items:center;gap:20px;text-align:center;padding:48px 0}
.check{width:64px;height:64px;border-radius:32px;background:#E6ECF5;display:grid;place-items:center}
.thanks h2{margin:0;font-size:36px;line-height:1.2;font-weight:800;letter-spacing:-.01em}
.thanks p{margin:0;font-size:18px;line-height:1.6;color:#4A5468;max-width:460px}
@media (max-width:640px){
 main{padding:48px 16px 64px;gap:32px}
 h1{font-size:40px}
 .card{padding:28px 20px}
 .grid{grid-template-columns:minmax(0,1fr)}
 .thanks h2{font-size:28px}
}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
