/* Basic styles matching the earlier HTML look */
.eif-form .eif-wrap { max-width: 920px; margin: 24px auto; background: #fff; border-radius: 14px; padding: 24px; box-shadow: 0 8px 24px rgba(0,0,0,.06); }
.eif-form h2 { margin-top: 0; font-size: 1.8rem; }
.eif-form .lead { color:#444; margin-top: 0; }
.eif-form fieldset { border: 0; padding: 0; margin: 0 0 28px; }
.eif-form legend { font-weight: 700; margin-bottom: 10px; font-size: 1.2rem; }
.eif-form .help { color:#666; font-size: .95rem; margin: 6px 0 16px; }
.eif-form .grid { display:grid; gap:12px; grid-template-columns: 1fr; }
@media (min-width: 720px){ .eif-form .grid-2 { grid-template-columns: 1fr 1fr; } }
.eif-form label { display:block; font-weight:600; margin: 10px 0 6px; }
.eif-form input[type="text"],
.eif-form input[type="url"],
.eif-form input[type="email"],
.eif-form input[type="tel"],
.eif-form textarea {
  width: 100%; padding: 12px 14px; border: 1px solid #dedede; border-radius: 10px; background:#fff; outline: none;
}
.eif-form input[type="file"] { display:block; margin-top:8px; }
.eif-form textarea { min-height: 120px; resize: vertical; }
.eif-form .actions { display:flex; gap:12px; align-items:center; }
.eif-form button { border:0; background:#111827; color:#fff; padding:12px 16px; border-radius:10px; font-weight:700; cursor:pointer; }
.eif-form .note { font-size:.9rem; color:#666; }
.eif-form .success { background:#ecfdf5; color:#064e3b; border:1px solid #a7f3d0; padding:14px; border-radius:10px; margin-top:16px; }
.eif-form .error { background:#fef2f2; color:#7f1d1d; border:1px solid #fecaca; padding:14px; border-radius:10px; margin-top:16px; }
.eif-form .req { color:#e11d48; }