#jacks-contact-dialog{box-sizing:border-box;border:0;border-radius:12px;padding:18px 22px 22px;width:min(560px,calc(100vw - 24px));max-height:92vh;max-height:92dvh;overflow:auto;color:#171717;background:#fff;box-shadow:0 20px 70px #0006}
#jacks-contact-dialog::backdrop{background:#0009}
.jacks-dialog-header{display:flex;align-items:center;gap:12px;justify-content:space-between;margin-bottom:10px}
.jacks-dialog-header h2{margin:0;font-size:1.375rem;line-height:1.2}
[data-jacks-close]{border:0;background:transparent;color:inherit;font-size:28px;line-height:1;min-width:44px;min-height:44px;margin:-8px -12px -8px 0;cursor:pointer}
.jacks-form-shell{max-width:650px;margin-inline:auto;text-align:left}
/* ID-scoped so Gravity Forms' own theme CSS (40px row gaps, 288px textarea) can't win on specificity. */
:is(#jacks-contact-dialog,#jacks-contact-inline) .gform_wrapper{margin:0;padding:0}
:is(#jacks-contact-dialog,#jacks-contact-inline) .gform_required_legend{display:none}
:is(#jacks-contact-dialog,#jacks-contact-inline) .gform_fields{display:grid;grid-template-columns:1fr 1fr;gap:12px 14px;list-style:none;margin:0;padding:0}
:is(#jacks-contact-dialog,#jacks-contact-inline) .gfield{grid-column:1/-1;margin:0;padding:0}
:is(#jacks-contact-dialog,#jacks-contact-inline) :is(.gfield--type-email,.gfield--type-phone,.gfield--type-select){grid-column:span 1}
:is(#jacks-contact-dialog,#jacks-contact-inline) .gfield_label{display:block;font-size:.875rem;font-weight:600;line-height:1.3;margin:0 0 4px;padding:0}
:is(#jacks-contact-dialog,#jacks-contact-inline) .gfield_required{color:#a62222;margin-left:2px}
:is(#jacks-contact-dialog,#jacks-contact-inline) .gfield_required_text{font-size:0}
:is(#jacks-contact-dialog,#jacks-contact-inline) .gfield_required_text::after{content:"*";font-size:.875rem}
:is(#jacks-contact-dialog,#jacks-contact-inline) :is(input:not([type=checkbox]):not([type=hidden]):not([type=submit]),select,textarea){width:100%;box-sizing:border-box;border:1px solid #777;border-radius:5px;padding:8px 10px;min-height:42px;margin:0;font:inherit;font-size:16px;line-height:1.3;color:#171717;background-color:white}
:is(#jacks-contact-dialog,#jacks-contact-inline) textarea{height:96px;min-height:72px;max-height:220px;resize:vertical}
:is(#jacks-contact-dialog,#jacks-contact-inline) :is(.ginput_counter,.gfield_description,.validation_message){font-size:.8125rem;margin:3px 0 0;padding:0}
:is(#jacks-contact-dialog,#jacks-contact-inline) :is(.gfield_checkbox,.gfield--type-checkbox legend){margin:0;padding:0}
:is(#jacks-contact-dialog,#jacks-contact-inline) .gfield--type-checkbox legend{font-size:.875rem;font-weight:600;margin-bottom:4px}
:is(#jacks-contact-dialog,#jacks-contact-inline) .gchoice{display:flex;gap:8px;align-items:flex-start;font-size:.875rem;line-height:1.35}
:is(#jacks-contact-dialog,#jacks-contact-inline) .gchoice input{margin:2px 0 0}
:is(#jacks-contact-dialog,#jacks-contact-inline) .gform_footer{margin:14px 0 0;padding:0}
:is(#jacks-contact-dialog,#jacks-contact-inline) :is(input[type=submit],button[type=submit]){width:100%;margin:0;padding:12px 22px;border:0;border-radius:5px;background:#a62222;color:white;font:inherit;font-weight:700;cursor:pointer;min-height:46px}
.jacks-form-shell .gfield_checkbox{list-style:none}
.jacks-form-shell [type=submit]:disabled{opacity:.6;cursor:wait}
.jacks-form-shell :focus-visible,#jacks-contact-dialog :focus-visible{outline:3px solid #2463c6;outline-offset:3px}
.jacks-form-shell .gform_validation_container,.jacks-form-shell .gfield--type-hidden,.jacks-form-shell .gform_hidden,.jacks-form-shell [hidden]{display:none!important}
.jacks-form-result[role=alert],.jacks-form-shell .validation_message{color:#a62222}
@media (max-width:520px){
#jacks-contact-dialog{padding:14px 16px 18px}
:is(#jacks-contact-dialog,#jacks-contact-inline) .gform_fields{grid-template-columns:1fr;gap:10px}
:is(#jacks-contact-dialog,#jacks-contact-inline) :is(.gfield--type-email,.gfield--type-phone,.gfield--type-select){grid-column:1/-1}
}
.jacks-finance,.jacks-service{padding:24px;max-width:1000px;margin:0 auto}
.jacks-finance a{margin:8px 12px 8px 0}
