*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--navy:#1e2a44;--navy-dark:#16213a;--hellblau:#c3d7e0;--sand:#efe7d6;--white:#fff;--text:#1e2a44;--muted:#5a6a82;--border:#d4dde6;--error:#c0392b;--success:#27ae60;--radius:8px}html{scroll-behavior:smooth}body{background:var(--sand);color:var(--text);font-family:'Inter',sans-serif;font-weight:300;min-height:100vh;display:flex;flex-direction:column;align-items:center}.topbar{width:100%;background:var(--navy);padding:16px 32px;display:flex;align-items:center;justify-content:center}.logo{display:inline-flex;align-items:center;gap:10px}.logo img{height:32px;filter:brightness(0) invert(1)}.logo-text{font-family:'Playfair Display',serif;font-size:22px;font-weight:600;letter-spacing:.12em;color:var(--white)}.hero{width:100%;background:var(--navy);padding:64px 24px 56px;text-align:center;position:relative;overflow:hidden}.hero:after{content:'';position:absolute;bottom:0;left:0;right:0;height:40px;background:var(--sand);clip-path:ellipse(55% 100% at 50% 100%)}.eyebrow{font-size:11px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--hellblau);margin-bottom:16px}.hero h1{font-family:'Playfair Display',serif;font-size:clamp(26px,4.5vw,44px);font-weight:600;line-height:1.2;color:var(--white);max-width:620px;margin:0 auto 18px}.hero h1 em{font-style:normal;color:var(--hellblau)}.hero p{font-size:16px;line-height:1.7;color:rgba(195,215,224,.85);max-width:460px;margin:0 auto}.badge{display:inline-flex;align-items:center;gap:8px;background:rgba(195,215,224,.12);border:1px solid rgba(195,215,224,.3);border-radius:40px;padding:8px 18px;font-size:13px;color:var(--hellblau);margin-top:24px}.badge-dot{width:7px;height:7px;background:var(--hellblau);border-radius:50%;flex-shrink:0}.card{width:100%;max-width:560px;background:var(--white);border:1px solid var(--border);border-radius:16px;padding:40px 36px;margin:32px 24px 48px;box-shadow:0 4px 24px rgba(30,42,68,.08)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.field{display:flex;flex-direction:column;gap:7px;margin-bottom:16px}.field.full{grid-column:1/-1}label{font-size:12px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}label span.req{color:var(--navy);margin-left:2px}input,select{background:#f7f9fb;border:1px solid var(--border);border-radius:var(--radius);color:var(--text);font-family:'Inter',sans-serif;font-size:15px;font-weight:400;padding:12px 16px;transition:border-color .2s,box-shadow .2s;outline:none;width:100%}input::placeholder{color:#b0bac8}input:focus,select:focus{border-color:var(--navy);box-shadow:0 0 0 3px rgba(30,42,68,.1);background:var(--white)}input.invalid{border-color:var(--error)}select{color:var(--text);cursor:pointer}select option{background:var(--white)}.field-error{font-size:12px;color:var(--error);display:none}.field-error.show{display:block}.divider{border:none;border-top:1px solid var(--border);margin:24px 0}.consent-block{display:flex;flex-direction:column;gap:12px;margin-bottom:24px}.consent-row{display:flex;align-items:flex-start;gap:12px}.consent-row input[type=checkbox]{width:18px;height:18px;min-width:18px;accent-color:var(--navy);cursor:pointer;margin-top:2px;padding:0;border:none;background:0 0;box-shadow:none}.consent-text{font-size:13px;line-height:1.6;color:var(--muted)}.consent-text a{color:var(--navy);text-decoration:underline}.consent-text a:hover{color:var(--navy-dark)}.btn{width:100%;background:var(--navy);border:none;border-radius:var(--radius);color:var(--white);cursor:pointer;font-family:'Inter',sans-serif;font-size:15px;font-weight:600;letter-spacing:.04em;padding:15px 24px;transition:background .2s,transform .1s;display:flex;align-items:center;justify-content:center;gap:10px}.btn:hover{background:var(--navy-dark)}.btn:active{transform:scale(.99)}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.btn-icon{font-size:17px}.info-box{background:var(--hellblau);background:rgba(195,215,224,.25);border:1px solid rgba(195,215,224,.6);border-radius:var(--radius);padding:14px 18px;font-size:13px;color:var(--navy);display:flex;align-items:center;gap:12px;margin-bottom:24px}.info-box .icon{font-size:18px;flex-shrink:0}.info-box strong{font-weight:600}.overlay{display:none;position:fixed;inset:0;background:rgba(30,42,68,.6);backdrop-filter:blur(6px);z-index:100;align-items:center;justify-content:center;padding:24px}.overlay.show{display:flex}.modal{background:var(--white);border:1px solid var(--border);border-radius:20px;padding:48px 40px;max-width:440px;width:100%;text-align:center;animation:popIn .35s cubic-bezier(.34,1.56,.64,1);box-shadow:0 8px 40px rgba(30,42,68,.18)}@keyframes popIn{from{opacity:0;transform:scale(.88)}to{opacity:1;transform:scale(1)}}.modal-icon{width:72px;height:72px;background:rgba(39,174,96,.1);border:1px solid rgba(39,174,96,.3);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:34px;margin:0 auto 24px}.modal h2{font-family:'Playfair Display',serif;font-size:26px;font-weight:600;color:var(--navy);margin-bottom:14px}.modal p{font-size:15px;line-height:1.65;color:var(--muted);margin-bottom:10px}.modal p strong{color:var(--navy);font-weight:600}.modal-steps{display:flex;flex-direction:column;gap:10px;margin:24px 0 28px;text-align:left}.modal-step{display:flex;align-items:center;gap:12px;font-size:14px;color:var(--muted)}.step-dot{width:28px;height:28px;background:var(--navy);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:600;color:var(--white);flex-shrink:0}.btn-close{background:0 0;border:1px solid var(--border);border-radius:var(--radius);color:var(--muted);cursor:pointer;font-family:'Inter',sans-serif;font-size:14px;padding:11px 24px;transition:border-color .2s,color .2s}.btn-close:hover{border-color:var(--navy);color:var(--navy)}.footer-note{font-size:12px;color:var(--muted);text-align:center;padding:0 24px 40px;max-width:480px;line-height:1.6}@media (max-width:480px){.card{padding:28px 20px;margin:24px 16px 40px}.form-row{grid-template-columns:1fr}.modal{padding:36px 24px}.hero{padding:48px 24px 56px}}@media (prefers-reduced-motion:reduce){.modal{animation:none}*{transition:none !important}}