/* Fluent Forms owns markup, validation and submission; the theme matches the approved form. */
.ic-cform .fluentform{--fluentform-input-select-height:52px;font-family:var(--ic-font);color:var(--ic-ink)}
.ic-cform .fluentform .ff-el-group{margin-bottom:0;margin-top:24px;min-width:0}
.ic-cform .fluentform .ff-el-input--label{margin:0 0 8px;font:600 14px/1.35 var(--ic-font)}
.ic-cform .fluentform .ff-el-form-control{height:52px;padding:0 14px;border:1px solid var(--ic-field);border-radius:var(--ic-radius);background:var(--ic-white);font:500 16px var(--ic-font);color:var(--ic-ink);box-shadow:none}
.ic-cform .fluentform .ff-el-form-control:focus{border-color:var(--ic-ink);box-shadow:0 0 0 1px var(--ic-ink);outline:0}
.ic-cform .fluentform textarea.ff-el-form-control{height:auto;min-height:168px;padding:12px 14px;line-height:1.5}
.ic-cform .fluentform .ff-el-help-message{margin-top:8px;font-size:13px;line-height:1.45;color:var(--ic-muted)}
.ic-cform .fluentform .ic-frow{display:grid;grid-template-columns:minmax(0,1fr);gap:0 16px;margin:0}
.ic-cform .fluentform .ic-frow>.ff-t-cell{width:auto;padding:0}
.ic-cform .fluentform .ic-phone{display:grid;grid-template-columns:minmax(0,150px) minmax(0,1fr);gap:8px;margin:0}
.ic-cform .fluentform .ic-phone>.ff-t-cell{width:auto;padding:0;min-width:0}
.ic-cform .fluentform .ic-field--purpose .ff-el-form-check{display:inline-flex;margin:0 8px 8px 0}
.ic-cform .fluentform .ic-field--purpose .ff-el-form-check-label{position:relative;display:inline-flex;align-items:center;min-height:42px;margin:0;padding:0 18px;border:1px solid var(--ic-field);border-radius:999px;font:500 14px var(--ic-font);cursor:pointer}
.ic-cform .fluentform .ic-field--purpose input{position:absolute;opacity:0;inset:0;width:100%;height:100%;margin:0}
.ic-cform .fluentform .ic-field--purpose .ff-el-form-check-label:has(input:checked){background:var(--ic-ink);color:var(--ic-white);border-color:var(--ic-ink)}
.ic-cform .fluentform .ic-field--purpose .ff-el-form-check-label:has(input:focus-visible){outline:2px solid var(--ic-focus);outline-offset:2px}
.ic-cform .fluentform .ic-field--agree_terms{margin-top:32px;padding-top:32px;border-top:1px solid var(--ic-line)}
.ic-cform .fluentform .ic-field--agree_terms label,.ic-cform .fluentform .ic-field--marketing_opt_in label{font:400 14px/1.5 var(--ic-font)}
.ic-cform .fluentform input[type=checkbox]{width:22px;height:22px;margin:0 10px 0 0;vertical-align:middle;accent-color:var(--ic-ink)}
.ic-cform .fluentform label a{text-decoration:underline;text-underline-offset:3px}
.ic-cform .fluentform .error{margin-top:8px;color:var(--ic-ink);font:500 13px/1.45 var(--ic-font)}
.ic-cform .fluentform .error:before{content:'!';display:inline-grid;place-items:center;width:16px;height:16px;margin-right:7px;border:1px solid currentColor;border-radius:50%;font-size:11px}
.ic-cform .fluentform .ff-btn-submit{display:inline-flex;justify-content:center;align-items:center;min-height:52px;min-width:180px;margin-top:28px;padding:0 24px;border:1px solid var(--ic-ink);border-radius:var(--ic-radius);background:var(--ic-ink);color:var(--ic-white);font:600 14px var(--ic-font)}
.ic-cform .fluentform .ff-btn-submit:hover{background:var(--ic-ink-hover)}
.ic-cform .ff-message-success{border:0;padding:0;box-shadow:none}
@media(min-width:640px){.ic-cform .fluentform .ic-frow{grid-template-columns:repeat(2,minmax(0,1fr))}.ic-cform .fluentform .ic-phone{grid-template-columns:200px minmax(0,1fr)}}

/* Selects and consent retain the plugin controls and event handlers. */
.ic-cform .fluentform select{display:block;width:100%;height:52px;padding:0 14px;border:1px solid var(--ic-field);border-radius:var(--ic-radius);background:var(--ic-white);font:500 16px var(--ic-font);color:var(--ic-ink)}
.ic-cform .fluentform .error{color:var(--ic-error)}
.ic-cform .fluentform .ff-btn-submit{min-width:220px;font-size:16px}
