.ief-wrapper { font-size:var(--ief-font-size,16px); width:100%; }
.ief-wrapper .ief-form { margin:0; }
.ief-wrapper .ief-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px 22px; }
.ief-wrapper .ief-form-group { min-width:0; }
.ief-wrapper .ief-full { grid-column:1 / -1; }
.ief-wrapper .ief-form-group label { display:block; margin-bottom:6px; font-size:1em; font-weight:500; }
.ief-wrapper .ief-form-group input,
.ief-wrapper .ief-form-group select,
.ief-wrapper .ief-form-group textarea { box-sizing:border-box; width:100%; max-width:100%; min-width:0; margin:0; padding:10px 12px; border:1px solid #d6dfe5; border-radius:5px; font-family:inherit; font-size:1em; line-height:1.5; }
.ief-wrapper .ief-form-group textarea { resize:vertical; min-height:130px; }
.ief-wrapper .ief-form-group input:focus-visible,
.ief-wrapper .ief-form-group select:focus-visible,
.ief-wrapper .ief-form-group textarea:focus-visible,
.ief-wrapper .ief-submit-btn:focus-visible,
.ief-wrapper .ief-privacy input:focus-visible { outline:2px solid currentColor; outline-offset:2px; }
.ief-wrapper .ief-privacy { display:flex; gap:10px; align-items:flex-start; font-size:.9em; line-height:1.6; }
.ief-wrapper .ief-privacy input { flex:0 0 auto; margin:5px 0 0; width:16px; height:16px; }
.ief-wrapper .ief-submit-btn { width:auto; min-height:0; padding:10px 22px; font-family:inherit; font-size:1em; line-height:1.5; cursor:pointer; }
.ief-wrapper .ief-submit-btn:disabled { cursor:wait; opacity:.65; }
.ief-wrapper .ief-alert { padding:16px 18px; margin:20px 0 0; border:1px solid #b7dec9; border-radius:6px; background:#eef9f2; color:#175936; line-height:1.6; }
.ief-wrapper .ief-alert.ief-error { background:#fff1f0; border-color:#ecc1bd; color:#8a2721; }
.ief-wrapper .ief-honeypot { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); }
.ief-wrapper [hidden] { display:none !important; }
@media(max-width:640px) { .ief-wrapper .ief-grid { grid-template-columns:minmax(0,1fr); gap:16px; } }
