/* Emonovo lead forms: layout of the fields (a compact take on the Gravity Forms "orbital" look used on live). Field, choice, button and dropdown styling is in /theme/ui-forms.css. */
.emo-form{container-type:inline-size;--emo-primary:#204ce5;--emo-text:#112337;--emo-border:#686e77;--emo-error:#c02b0a;color:var(--emo-text);text-align:start}
.emo-form [hidden]{display:none!important}
.emo-form .gform_required_legend{font-size:.8125rem;margin:0 0 1rem;color:rgba(17,35,55,.65)}
.emo-form .gform_fields{display:grid;grid-template-columns:repeat(12,1fr);gap:1.25rem 1rem}
.emo-form .gfield{grid-column:span 12;min-width:0;border:0;padding:0;margin:0}
/* Half-width pairs sit side by side only when the FORM itself is wide enough (a container query, not the screen width),
   so the same form stacks cleanly in a narrow sidebar on a big screen and on a phone. */
.emo-form .gfield--width-half{grid-column:span 12}
@container (min-width:34rem){.emo-form .gfield--width-half{grid-column:span 6}}
.emo-form .gfield_label,.emo-form legend{display:block;font-weight:600;font-size:.9375rem;margin-bottom:.4rem;padding:0}
.emo-form .gfield_required_asterisk{color:var(--emo-error);margin-inline-start:.2rem}
.emo-form .gfield_description{font-size:.8125rem;color:rgba(17,35,55,.7);margin:0 0 .4rem}
.emo-form .gform-grid-row{display:flex;flex-wrap:wrap;gap:.75rem}
.emo-form .gform-grid-col{flex:1 1 12rem;display:block}
.emo-form .ginput_container--name .gform-grid-col{flex-basis:8rem}
/* Sub-labels (First, Last, City...) live inside the boxes as placeholders; the label stays for screen readers. */
.emo-form .gform-field-label--type-sub{position:absolute;inline-size:1px;block-size:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.emo-form .gform-field-label--type-inline{font-weight:400;font-size:.9375rem}
.emo-form .gfield-choice-image{display:block;max-inline-size:100%;block-size:auto;aspect-ratio:1;object-fit:contain;max-width:8rem}
.emo-form .gfield-image-choice-wrapper-outer,.emo-form .gfield-choice-image-wrapper{display:block}
.emo-form .emo-phone{display:flex;gap:.5rem}
.emo-form .emo-phone__code{flex:0 0 9.5rem;max-width:9.5rem;text-overflow:ellipsis}
.emo-form .emo-phone__number{flex:1 1 auto;min-width:0}
.emo-form .gsection_title{font-size:1.125rem;margin:.5rem 0 0;border-bottom:1px solid rgba(17,35,55,.15);padding-bottom:.4rem}
.emo-form .gfield_validation_message,.emo-form .gform_validation_errors{color:var(--emo-error);font-size:.875rem;font-weight:600}
.emo-form .gform_validation_errors{margin:0 0 1rem}
.emo-form .gform_footer{margin-top:1.5rem}
.emo-form .gform_confirmation_wrapper{padding:1rem 0}
.emo-form .gform_confirmation_wrapper .text-center{text-align:center}
.emo-form .gform_confirmation_wrapper img{max-width:100%;height:auto}
.emo-form .gfield--width-half .gfield_radio,.emo-form .gfield--type-radio .gfield_radio:not(:has(> :nth-child(4))){flex-direction:row;flex-wrap:wrap;gap:.5rem 1.25rem}
