.ifm-form-wrapper { max-width: 680px; margin: 0 auto; font-family: inherit; }
.ifm-row { display: flex; gap: 14px; margin-bottom: 12px; }
.ifm-col { flex: 1; }
.ifm-col.ifm-full { flex: 1 0 100%; }
.ifm-input, .ifm-textarea {
    width: 100%; padding: 10px 12px; border: 1px solid #ccc; border-radius: 4px;
    font-size: 14px; color: #333; background: #fff; box-sizing: border-box;
    transition: border-color 0.2s; font-family: inherit;
}
.ifm-input:focus, .ifm-textarea:focus {
    outline: none; border-color: #150F6D; box-shadow: 0 0 0 2px rgba(21,15,109,0.12);
}
.ifm-input::placeholder, .ifm-textarea::placeholder { color: #999; }
.ifm-textarea { resize: vertical; min-height: 90px; }
.ifm-submit-btn {
    display: block; width: 100%; padding: 12px 20px; background: #150F6D; color: #fff;
    border: none; border-radius: 6px; font-size: 16px; font-weight: 600;
    letter-spacing: 0.5px; cursor: pointer; transition: background 0.2s;
}
.ifm-submit-btn:hover { background: #1e189b; }
.ifm-submit-btn:disabled { background: #888; cursor: not-allowed; }
.ifm-success { background: #e6f4ea; border: 1px solid #4caf50; color: #2e7d32; padding: 14px 16px; border-radius: 6px; margin-bottom: 16px; font-size: 15px; }
.ifm-error { background: #fdecea; border: 1px solid #f44336; color: #c62828; padding: 14px 16px; border-radius: 6px; margin-bottom: 16px; font-size: 15px; }
@media (max-width: 600px) {
    .ifm-row { flex-direction: column; gap: 0; }
    .ifm-col { margin-bottom: 12px; }
}
