/* All Cities contact form. Styles only the imported form, found by its field classes.
   Change the three variables to match the brand. */
.gform_wrapper{--fsbc-accent:#004b8f;--fsbc-accent-soft:#e3edf7;--fsbc-border:#cfd6dd;--fsbc-text:#1f2933;--fsbc-radius:10px}
.gform_wrapper .gfield_label{font-weight:600;color:var(--fsbc-text)}
.gform_wrapper .gfield_description{color:#52606d;font-size:.9em;margin-top:2px}
.gform_wrapper input[type=text],.gform_wrapper input[type=email],.gform_wrapper input[type=tel],
.gform_wrapper select,.gform_wrapper textarea{border:1px solid var(--fsbc-border);border-radius:8px;padding:.7em .85em;min-height:48px;font-size:1rem;background:#fff;box-shadow:none}
.gform_wrapper input:focus,.gform_wrapper select:focus,.gform_wrapper textarea:focus{outline:3px solid var(--fsbc-accent-soft);border-color:var(--fsbc-accent)}
.gform_wrapper .gform_fields{row-gap:20px}

@media (min-width:640px){
	.gform_wrapper .gfield.fsbc-half{grid-column:span 6}
}

/* Choice tiles (How can we help?) */
.gform_wrapper .fsbc-cards .gfield_radio{display:grid;gap:10px}
.gform_wrapper .fsbc-cards .gchoice{position:relative;margin:0}
.gform_wrapper .fsbc-cards .gchoice input{position:absolute;opacity:0;inset:0;width:100%;height:100%;cursor:pointer;margin:0}
.gform_wrapper .fsbc-cards .gchoice label{display:block;width:100%;padding:14px 16px;border:2px solid var(--fsbc-border);border-radius:var(--fsbc-radius);background:#fff;font-weight:600;cursor:pointer;max-width:none}
.gform_wrapper .fsbc-cards .gchoice input:checked + label{border-color:var(--fsbc-accent);background:var(--fsbc-accent-soft)}
.gform_wrapper .fsbc-cards .gchoice input:focus-visible + label{outline:3px solid var(--fsbc-accent)}

/* Pills (symptoms, contact method, home/business) */
.gform_wrapper .fsbc-pills .gfield_radio,.gform_wrapper .fsbc-pills .gfield_checkbox{display:flex;flex-wrap:wrap;gap:8px}
.gform_wrapper .fsbc-pills .gchoice{position:relative;margin:0}
.gform_wrapper .fsbc-pills .gchoice input{position:absolute;opacity:0;inset:0;width:100%;height:100%;cursor:pointer;margin:0}
.gform_wrapper .fsbc-pills .gchoice label{display:inline-block;padding:9px 15px;border:1px solid var(--fsbc-border);border-radius:999px;background:#fff;cursor:pointer;max-width:none}
.gform_wrapper .fsbc-pills .gchoice input:checked + label{border-color:var(--fsbc-accent);background:var(--fsbc-accent-soft);font-weight:600}
.gform_wrapper .fsbc-pills .gchoice input:focus-visible + label{outline:3px solid var(--fsbc-accent)}

.gform_wrapper .fsbc-fineprint{color:#52606d;font-size:.9em;margin:0}

/* Submit */
.gform_wrapper .gform_footer .gform_button,.gform_wrapper .gform_page_footer .gform_button{background:var(--fsbc-accent);color:#fff;border:0;border-radius:var(--fsbc-radius);padding:15px 28px;font-size:1.05rem;font-weight:700;cursor:pointer;min-height:52px}
.gform_wrapper .gform_footer .gform_button:hover{filter:brightness(.92)}
@media (max-width:639px){.gform_wrapper .gform_footer .gform_button{width:100%}}

/* Confirmation */
.gform_confirmation_message .fsbc-confirm{border:2px solid var(--fsbc-accent,#004b8f);background:#e3edf7;border-radius:10px;padding:22px}
.gform_confirmation_message .fsbc-confirm h3{margin-top:0}

/* Address suggestions (only present when a Google Places key is set) */
.gform_wrapper .fsbc-places-list{position:absolute;left:0;right:0;top:100%;z-index:20;margin:4px 0 0;padding:4px 0;list-style:none;background:#fff;border:1px solid var(--fsbc-border);border-radius:8px;box-shadow:0 6px 18px rgba(31,41,51,.14)}
.gform_wrapper .fsbc-places-list[hidden]{display:none}
.gform_wrapper .fsbc-places-list li{padding:11px 14px;cursor:pointer;font-size:1rem;line-height:1.3}
.gform_wrapper .fsbc-places-list li[aria-selected="true"],.gform_wrapper .fsbc-places-list li:hover{background:var(--fsbc-accent-soft)}
.gform_wrapper .fsbc-places-list .fsbc-places-credit{cursor:default;font-size:.75rem;color:#52606d;text-align:right;padding:4px 14px 2px}
.gform_wrapper .fsbc-places-list .fsbc-places-credit:hover{background:none}

/* Fixes found on the live staging page */
.gform_wrapper .fsbc-pills .gchoice input:checked + label,
.gform_wrapper .fsbc-cards .gchoice input:checked + label{color:var(--fsbc-text)!important}
.gform_wrapper .fsbc-pills .gchoice label,
.gform_wrapper .fsbc-cards .gchoice label{color:var(--fsbc-text);line-height:1.3;height:auto}
.gform_wrapper textarea{height:120px;min-height:120px;resize:vertical}
.gform_wrapper .ginput_counter{display:none}
.gform_wrapper .fsbc-zip input::placeholder,.gform_wrapper input[type=tel]::placeholder{color:#9aa5b1;opacity:1}

/* Pills and tiles: hard overrides so a theme's radio/checkbox styling can't squeeze or redraw them */
.gform_wrapper.gform_wrapper .fsbc-pills .gfield_radio,
.gform_wrapper.gform_wrapper .fsbc-pills .gfield_checkbox{display:flex!important;flex-direction:row!important;flex-wrap:wrap!important;justify-content:flex-start!important;align-items:flex-start!important;gap:8px!important;grid-template-columns:none!important;margin:0!important;padding:0!important}
.gform_wrapper.gform_wrapper .fsbc-pills .gchoice{display:block!important;position:relative!important;flex:0 0 auto!important;width:auto!important;max-width:100%!important;min-width:0!important;margin:0!important;padding:0!important}
.gform_wrapper.gform_wrapper .fsbc-pills .gchoice label{display:inline-block!important;box-sizing:border-box!important;width:auto!important;inline-size:auto!important;min-width:0!important;max-width:100%!important;margin:0!important;padding:9px 15px!important;text-indent:0!important;overflow:visible!important;white-space:normal!important;border:1px solid var(--fsbc-border)!important;border-radius:999px!important;background:#fff!important;color:var(--fsbc-text)!important;font-size:15px!important;line-height:1.3!important;cursor:pointer!important}
.gform_wrapper.gform_wrapper .fsbc-pills .gchoice input:checked + label{border-color:var(--fsbc-accent)!important;background:var(--fsbc-accent-soft)!important;font-weight:700!important}
.gform_wrapper.gform_wrapper .fsbc-pills .gchoice input{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;opacity:0!important;margin:0!important;cursor:pointer!important}
.gform_wrapper.gform_wrapper .fsbc-pills .gchoice::before,.gform_wrapper.gform_wrapper .fsbc-pills .gchoice::after,
.gform_wrapper.gform_wrapper .fsbc-pills .gchoice label::before,.gform_wrapper.gform_wrapper .fsbc-pills .gchoice label::after,
.gform_wrapper.gform_wrapper .fsbc-cards .gchoice::before,.gform_wrapper.gform_wrapper .fsbc-cards .gchoice::after,
.gform_wrapper.gform_wrapper .fsbc-cards .gchoice label::before,.gform_wrapper.gform_wrapper .fsbc-cards .gchoice label::after{content:none!important;display:none!important}
.gform_wrapper.gform_wrapper .fsbc-cards .gfield_radio{display:grid!important;grid-template-columns:1fr!important;gap:10px!important}
.gform_wrapper.gform_wrapper .fsbc-cards .gchoice{position:relative!important;width:100%!important;max-width:none!important;margin:0!important;padding:0!important}
.gform_wrapper.gform_wrapper .fsbc-cards .gchoice label{display:block!important;box-sizing:border-box!important;width:100%!important;max-width:none!important;margin:0!important;padding:14px 16px!important;border:2px solid var(--fsbc-border)!important;border-radius:var(--fsbc-radius)!important;background:#fff!important;font-weight:700!important;cursor:pointer!important}
.gform_wrapper.gform_wrapper .fsbc-cards .gchoice input:checked + label{border-color:var(--fsbc-accent)!important;background:var(--fsbc-accent-soft)!important}
.gform_wrapper.gform_wrapper .fsbc-cards .gchoice input{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;opacity:0!important;margin:0!important;cursor:pointer!important}

/* Slider (bathrooms). Scoped and !important so theme input styling can't flatten it. */
.gform_wrapper .fsbc-slider-ui{display:block!important;padding:4px 2px 0!important;max-width:100%!important}
.gform_wrapper .fsbc-slider-top{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;margin:0 0 6px!important}
.gform_wrapper .fsbc-slider-value{display:inline-block!important;min-width:5.5em!important;padding:6px 14px!important;border-radius:999px!important;background:var(--fsbc-accent-soft)!important;color:var(--fsbc-accent)!important;font-weight:700!important;font-size:1rem!important;text-align:center!important;border:0!important}
.gform_wrapper .fsbc-slider-ui.is-empty .fsbc-slider-value{background:#eef1f4!important;color:#5a6772!important;font-weight:600!important}
.gform_wrapper .fsbc-slider-clear{background:none!important;border:0!important;box-shadow:none!important;padding:4px 6px!important;margin:0!important;color:#5a6772!important;font-size:.85rem!important;text-decoration:underline!important;cursor:pointer!important;min-height:0!important;width:auto!important}
.gform_wrapper input.fsbc-range{-webkit-appearance:none!important;appearance:none!important;display:block!important;width:100%!important;height:28px!important;min-height:0!important;margin:0!important;padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important;cursor:pointer!important}
.gform_wrapper input.fsbc-range:focus{outline:none!important;box-shadow:none!important}
.gform_wrapper input.fsbc-range::-webkit-slider-runnable-track{height:8px;border-radius:999px;background:linear-gradient(90deg,var(--fsbc-accent),var(--fsbc-accent-soft))}
.gform_wrapper input.fsbc-range::-moz-range-track{height:8px;border-radius:999px;background:linear-gradient(90deg,var(--fsbc-accent),var(--fsbc-accent-soft))}
.gform_wrapper input.fsbc-range::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:28px;height:28px;margin-top:-10px;border-radius:50%;background:#fff;border:3px solid var(--fsbc-accent);box-shadow:0 1px 4px rgba(0,0,0,.25)}
.gform_wrapper input.fsbc-range::-moz-range-thumb{width:22px;height:22px;border-radius:50%;background:#fff;border:3px solid var(--fsbc-accent);box-shadow:0 1px 4px rgba(0,0,0,.25)}
.gform_wrapper .fsbc-slider-ui.is-empty input.fsbc-range::-webkit-slider-thumb{border-color:#aab4bd}
.gform_wrapper .fsbc-slider-ui.is-empty input.fsbc-range::-moz-range-thumb{border-color:#aab4bd}
.gform_wrapper input.fsbc-range:focus-visible::-webkit-slider-thumb{outline:3px solid var(--fsbc-accent-soft)}
.gform_wrapper .fsbc-slider-ticks{display:flex!important;justify-content:space-between!important;padding:2px 11px 0!important;font-size:.8rem!important;color:#5a6772!important}
.gform_wrapper .fsbc-slider-ticks span{display:block!important;width:1.4em!important;text-align:center!important}

/* Dot pills: a small radio dot inside each pill (replaces drop-downs). Higher specificity than the pill reset above. */
.gform_wrapper.gform_wrapper .fsbc-pills.fsbc-dotted .gchoice label{display:inline-flex!important;align-items:center!important;gap:9px!important;padding:9px 16px 9px 12px!important;text-indent:0!important;transition:border-color .15s,background .15s}
.gform_wrapper.gform_wrapper .fsbc-pills.fsbc-dotted .gchoice label::before{content:""!important;position:static!important;float:none!important;inset:auto!important;margin:0!important;display:inline-block!important;flex:0 0 auto!important;box-sizing:border-box!important;width:14px!important;height:14px!important;border-radius:50%!important;border:2px solid #9aa5b1!important;background:#fff!important;transition:border-color .15s,background .15s,box-shadow .15s}
.gform_wrapper.gform_wrapper .fsbc-pills.fsbc-dotted .gchoice input:checked + label::before{border-color:var(--fsbc-accent)!important;background:var(--fsbc-accent)!important;box-shadow:inset 0 0 0 2.5px #fff!important}
.gform_wrapper.gform_wrapper .fsbc-pills.fsbc-dotted .gchoice:hover label{border-color:var(--fsbc-accent)!important}

/* Numbered dots: round 1..6, 7+ chips (household size) */
.gform_wrapper.gform_wrapper .fsbc-pills.fsbc-numbers .gfield_radio{gap:10px!important}
.gform_wrapper.gform_wrapper .fsbc-pills.fsbc-numbers .gchoice label{display:inline-flex!important;align-items:center!important;justify-content:center!important;box-sizing:border-box!important;min-width:76px!important;height:48px!important;padding:0 18px!important;border-radius:999px!important;font-size:16px!important;font-weight:600!important;white-space:nowrap!important}
.gform_wrapper.gform_wrapper .fsbc-pills.fsbc-numbers .gchoice input:checked + label{background:var(--fsbc-accent)!important;border-color:var(--fsbc-accent)!important;color:#fff!important}
.gform_wrapper.gform_wrapper .fsbc-pills.fsbc-numbers .gchoice:hover label{border-color:var(--fsbc-accent)!important}

/* Brand: use the site's own font, drop the duplicate form title */
.gform_wrapper.fsbc-form,.gform_wrapper.fsbc-form input,.gform_wrapper.fsbc-form select,.gform_wrapper.fsbc-form textarea,.gform_wrapper.fsbc-form button,.fsbc-form .gform_wrapper{font-family:inherit}
.gform_wrapper.fsbc-form .gform_title,.fsbc-form .gform_title,.gform_wrapper.fsbc-form .gform_heading .gform_title{display:none!important}
.gform_wrapper .gform_footer .gform_button,.gform_wrapper .gform_page_footer .gform_button{background:#004b8f!important;color:#fff!important;border:0!important}
.gform_wrapper .gform_footer .gform_button:hover,.gform_wrapper .gform_page_footer .gform_button:hover{background:#003a70!important}
