/* nlt-forms base layout. Visual styling (inputs, buttons, labels) comes from the theme's .gform_wrapper rules. */
.nlt-form{--nlt-err:#c0392b;--nlt-muted:#666;--nlt-rule:rgba(0,0,0,.12)}
.nlt-form .gform_fields{list-style:none;margin:0;padding:0}
.nlt-form .gfield{margin:0 0 20px;padding:0}
.nlt-form .gfield_label{display:block;margin-bottom:6px}
.nlt-form fieldset.nlt-fieldset{border:0;margin:0;padding:0;min-width:0}
.nlt-form legend.gfield_label{padding:0}
.nlt-form .gfield_required_asterisk{margin-left:.25em}
.nlt-form .gfield_required_text{margin-left:.4em;font-size:.8em;font-style:italic;font-weight:400}
.nlt-form .gfield_description{margin-top:6px;font-size:14px;color:var(--nlt-muted)}
.nlt-form .field_description_above .gfield_description:not(.validation_message){margin:0 0 8px}
.nlt-form .validation_message,.nlt-form .gfield_validation_message{color:var(--nlt-err);font-size:14px;margin-top:6px}
.nlt-form .gfield_error input:not([type=checkbox]):not([type=radio]),.nlt-form .gfield_error select,.nlt-form .gfield_error textarea{border-color:var(--nlt-err)}
.nlt-form .nlt-form__errors{margin:0 0 20px;padding:12px 16px;border-left:4px solid var(--nlt-err);background:rgba(192,57,43,.08)}
.nlt-form .nlt-form__errors h2{margin:0;font-size:16px;line-height:1.4}
.nlt-form .nlt-form__errors ol{margin:8px 0 0;padding-left:20px;font-size:14px}
.nlt-form .nlt-form__errors a{color:inherit}
/* complex fields (name/address) */
.nlt-form .ginput_complex{display:grid;grid-template-columns:1fr 1fr;gap:12px 16px}
.nlt-form .ginput_complex>span{display:block;min-width:0}
.nlt-form .ginput_complex .ginput_full{grid-column:1/-1}
.nlt-form .ginput_complex label{display:block;font-weight:400;font-size:13px;margin:0}
.nlt-form .form_sublabel_below .ginput_complex label{margin-top:4px}
.nlt-form .form_sublabel_above .ginput_complex label{margin-bottom:4px}
.nlt-form .ginput_complex input,.nlt-form .ginput_complex select{width:100%}
@media (max-width:480px){.nlt-form .ginput_complex{grid-template-columns:1fr}}
/* choices */
.nlt-form .gfield_radio,.nlt-form .gfield_checkbox{list-style:none;margin:0;padding:0}
.nlt-form .gchoice{display:flex;align-items:flex-start;gap:10px;margin:0 0 8px}
.nlt-form .gchoice input[type=checkbox],.nlt-form .gchoice input[type=radio]{flex:0 0 auto;margin:3px 0 0;width:20px;height:20px}
.nlt-form .gchoice label{margin:0;font-weight:400;font-size:inherit;line-height:1.4}
.nlt-form .gchoice_other .nlt-other-text{flex:1 1 auto;min-height:36px;padding:6px 10px}
.nlt-form .gchoice_other .nlt-other-text:disabled{opacity:.6}
.nlt-form .ginput_container_consent{display:flex;align-items:flex-start;gap:10px}
.nlt-form .ginput_container_consent input{width:20px;height:20px;margin-top:3px;flex:0 0 auto}
.nlt-form .ginput_container_consent label{font-weight:400;margin:0}
/* sections, html blocks */
.nlt-form .gsection{border-bottom:1px solid var(--nlt-rule);padding-bottom:8px;margin-bottom:20px}
.nlt-form .gsection_title{margin:0 0 6px;font-size:1.25em}
.nlt-form .gsection_description{font-size:14px;color:var(--nlt-muted)}
.nlt-form .gfield--type-html{margin-bottom:20px}
/* files */
.nlt-form .gform_fileupload_rules{display:block;margin-top:6px}
.nlt-form input[type=file]{width:100%;padding:8px 0}
.nlt-form .nlt-file-kept{margin:6px 0 0;padding-left:18px;font-size:14px}
/* pages + progress */
.nlt-form .gf_progressbar_wrapper{margin:0 0 24px}
.nlt-form .gf_progressbar_title{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;margin:0 0 6px}
.nlt-form .gf_progressbar{height:16px;border-radius:8px;background:rgba(0,0,0,.08);overflow:hidden}
.nlt-form .gf_progressbar_percentage{height:100%;border-radius:8px;background:#2c7be5;color:#fff;font-size:11px;line-height:16px;text-align:right;padding-right:6px;transition:width .3s;min-width:34px;box-sizing:border-box}
.nlt-form--js .nlt-page{display:none}
.nlt-form--js .nlt-page.is-active{display:block}
.nlt-form .gform_page_footer,.nlt-form .gform_footer{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:8px}
.nlt-form .gform_page_footer .nlt-prev{order:0}
.nlt-form .gform_page_footer .nlt-next,.nlt-form .gform_page_footer .nlt-form__submit{order:1}
.nlt-form .nlt-turnstile{flex-basis:100%}
.nlt-form .nlt-form__submit.is-busy{opacity:.7;pointer-events:none}
/* honeypot: off-screen, not display:none */
.nlt-form .nlt-hp{position:absolute!important;left:-9999px!important;top:-9999px!important;width:1px;height:1px;overflow:hidden}
/* confirmation */
.nlt-form__confirmation{padding:16px 20px;border-left:4px solid #2c7be5;background:rgba(44,123,229,.08)}
.nlt-form__confirmation p:last-child{margin-bottom:0}
.nlt-form .screen-reader-text{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}
.nlt-form .gform_previous_button{background:transparent;border:1.5px solid currentColor;color:inherit;opacity:.8;cursor:pointer;height:48px;padding:0 20px;border-radius:6px;font:inherit}
.nlt-form .gform_previous_button:hover{opacity:1}
