:root { --navy:#123149; --blue:#1d6d91; --cream:#f8f5f0; --ink:#13212b; --muted:#5c6870; --line:#dfe5e5; --success:#16745e; }
* { box-sizing:border-box; }
body { margin:0; color:var(--ink); background:var(--cream); font-family:"Heebo",Arial,sans-serif; }
.hero { min-height:100vh; display:grid; grid-template-columns:1.08fr .92fr; gap:clamp(2rem,8vw,9rem); align-items:center; max-width:1260px; margin:0 auto; padding:clamp(2rem,6vw,6rem) clamp(1.25rem,5vw,5rem); }
.content { position:relative; padding-block:2rem; }
.content::before { content:""; position:absolute; z-index:-1; width:280px; height:280px; border-radius:50%; background:#e7f0ee; top:-3.5rem; right:-5rem; }
.eyebrow,.form-label { margin:0 0 .8rem; color:var(--blue); font-size:.95rem; font-weight:700; letter-spacing:.02em; }
h1 { margin:0; color:var(--navy); font-size:clamp(3.1rem,6.3vw,5.6rem); line-height:1.02; letter-spacing:-.055em; font-weight:800; }
.intro { max-width:480px; margin:1.6rem 0 2rem; color:var(--muted); font-size:clamp(1.12rem,1.8vw,1.35rem); line-height:1.65; }
.benefits { display:grid; gap:.75rem; font-weight:600; color:#34434b; }
.check { display:inline-grid; place-items:center; width:22px; height:22px; margin-left:.45rem; border-radius:50%; color:white; background:var(--blue); font-size:.82rem; }
.form-card { padding:clamp(1.65rem,3.5vw,3rem); background:white; border:1px solid rgba(18,49,73,.06); border-radius:24px; box-shadow:0 20px 60px rgba(18,49,73,.1); }
.form-heading { margin-bottom:1.55rem; }.form-heading h2 { margin:0; color:var(--navy); font-size:2rem; line-height:1.1; }.form-heading p:last-child { margin:.5rem 0 0; color:var(--muted); }
form { display:grid; gap:1rem; }.field { display:grid; gap:.36rem; } label { color:#243640; font-weight:600; font-size:.94rem; }
input,select { width:100%; height:50px; border:1px solid var(--line); border-radius:9px; padding:0 .9rem; color:var(--ink); background:#fff; font:inherit; outline:none; transition:border-color .16s,box-shadow .16s; }
input::placeholder { color:#9aa5aa; } input:focus,select:focus { border-color:var(--blue); box-shadow:0 0 0 3px rgba(29,109,145,.13); }.error { display:none; color:#b22929; font-weight:500; }.field.invalid .error { display:block; }.field.invalid input,.field.invalid select { border-color:#b22929; }
.consent { display:flex; gap:.65rem; align-items:flex-start; margin-top:.15rem; color:var(--muted); font-size:.86rem; font-weight:400; line-height:1.45; cursor:pointer; }.consent input { flex:0 0 17px; width:17px; height:17px; margin:.18rem 0 0; accent-color:var(--blue); }
button { border:0; border-radius:9px; min-height:52px; margin-top:.2rem; color:white; background:var(--navy); cursor:pointer; font:700 1rem inherit; transition:transform .16s,background .16s; } button:hover { background:#1a4868; transform:translateY(-1px); } button:disabled { cursor:wait; opacity:.65; transform:none; }.privacy { margin:0; text-align:center; color:#819097; font-size:.77rem; }.status { display:none; margin:0; padding:.8rem; border-radius:8px; font-weight:600; line-height:1.4; }.status.success { display:block; color:var(--success); background:#eef8f5; }.status.failure { display:block; color:#9c2828; background:#fff1f1; }
@media (max-width:800px) { .hero { grid-template-columns:1fr; gap:1rem; padding-block:2rem 3rem; }.content { padding-top:1rem; }.content::before { width:190px;height:190px;right:-4rem;top:-2rem; }.form-card { border-radius:18px; } }
