/* Match the retained public WABO form grids; leave unrelated Fluent forms alone.
 * Important declarations override Fluent's later per-form stylesheet. */
body.page .elementor-widget-form{display:none!important}
.wabo-free-form{box-sizing:border-box;width:100%;max-width:none;margin:0 auto}
.wabo-free-form h2{margin-top:0}
.wabo-free-form .frm-fluent-form{font-family:Inter,sans-serif;font-size:16px;line-height:24px}
.wabo-free-form .frm-fluent-form>fieldset{display:flex;flex-wrap:wrap;min-width:0;width:calc(100% + 10px);margin-left:-5px!important;margin-right:-5px!important;position:relative;left:-5px}
.wabo-free-form .frm-fluent-form>fieldset>div{box-sizing:border-box;min-width:0;width:100%;padding-left:5px;padding-right:5px}
.wabo-free-form .frm-fluent-form>fieldset>.wabo-free-col-50{width:50%}
.wabo-free-form .frm-fluent-form>fieldset>.wabo-free-col-33{width:33.333333%}
.wabo-free-form .frm-fluent-form>fieldset>.wabo-free-col-25{width:25%}
.wabo-free-form .ff-el-group{margin-bottom:10px!important}
.wabo-free-form .ff-el-input--label{margin-bottom:0!important;padding-bottom:10px!important;line-height:24px!important}
.wabo-free-form .ff-el-input--label,.wabo-free-form .ff-el-input--label label{display:block!important}
.wabo-free-form .ff-el-input--label label,.wabo-free-form .ff-el-form-check-label{font-family:Inter,sans-serif!important;font-size:16px;font-weight:400!important;line-height:24px!important;color:#151515!important}
.wabo-free-form .wabo-free-no-mark .ff-el-input--label.ff-el-is-required:after,.wabo-free-form .wabo-free-no-mark .ff-el-input--label.ff-el-is-required label:after{display:none!important}
.wabo-free-form .ff-el-form-control{box-sizing:border-box;background:#fff;min-height:40px;font-size:16px;font-family:Inter,sans-serif!important;line-height:24px!important;border:1px solid #69727d!important;padding:8px 16px!important;border-radius:5px!important;color:#151515!important}
.wabo-free-form .ff-el-form-check,.wabo-free-form .ff-el-form-check label{margin-bottom:0!important}
.wabo-free-form .ff-btn-submit{display:block;width:100%;color:#fff;background:#8c0b10!important;border:1px solid #8c0b10!important;border-radius:1px!important;font-family:Inter,sans-serif!important;font-size:19.2px!important;font-weight:700!important;line-height:19.2px!important;min-height:0!important;padding:16px 24px!important}
.wabo-free-form .ff-el-is-error .ff-el-form-control{border-color:#b5182a!important}
.wabo-free-form .ff-el-form-control:focus-visible,.wabo-free-form .ff-btn-submit:focus-visible{outline:2px solid #1f456e;outline-offset:2px}
.wabo-free-form .wabo-form-alert{font-size:16px}
@media(max-width:767px){.wabo-free-form .frm-fluent-form>fieldset>[class*="wabo-free-col-"]{width:100%}}

.wabo-free-form textarea.ff-el-form-control{padding:5px 14px!important;border-radius:5px!important}

/* Native file control appearance; keep Fluent upload handling and private limits. */
.wabo-free-form .ff_file_upload_holder{display:block;line-height:normal}
.wabo-free-form .ff_upload_btn{display:none!important}
.wabo-free-form input[type=file].ff-screen-reader-element{position:static!important;clip:auto!important;clip-path:none!important;width:100%!important;height:30px!important;min-height:0!important;overflow:clip!important;margin:0!important;padding:0!important;border:0!important;border-radius:5px!important;appearance:none!important;background:transparent!important;white-space:normal!important}
.wabo-free-form .ff-uploaded-list:empty{display:none!important;margin:0!important}
.wabo-free-form .wabo-native-upload .ff-el-tooltip{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip-path:inset(50%)!important;padding:0!important;border:0!important}
/* Preserve the retained forms' required marker, inline choices and final row gap. */
.wabo-free-form .ff-el-input--label.ff-el-is-required label:after{content:' *'!important;color:#f00!important;margin:0!important;padding-left:.2em!important}
.wabo-free-form .ff-el-form-check-label{display:inline!important}
.wabo-free-form .ff-el-form-check-input{vertical-align:baseline!important}
.wabo-free-form .ff_submit_btn_wrapper{margin-bottom:0!important}
.wabo-free-form .ff-el-form-check-label{vertical-align:baseline!important}
.wabo-free-form .ff-el-form-check-label>span{vertical-align:middle}
.wabo-free-form .ff-el-form-check-input{position:static!important}
.wabo-free-form .ff-custom_html p:not([style*="margin"]){margin-block-end:.9rem!important}
/* The retained committee-meeting form uses labels directly above controls. */
.wabo-free-form .fluent_form_25 .ff-el-input--label{padding-bottom:0!important}

@media(min-width:768px){.wabo-free-form .frm-fluent-form>fieldset>.wabo-free-col-33{width:33.333%}}
/* Match original button states with a short, optional color transition. */
.wabo-free-form .ff-btn-submit{color:#fff!important;opacity:1!important;cursor:pointer;transition:background-color 160ms ease,color 160ms ease,border-color 160ms ease!important}
.wabo-free-form .ff-btn-submit:hover,.wabo-free-form .ff-btn-submit:active{background-color:#fff!important;color:#8c0b10!important;opacity:1!important}
.wabo-free-form .ff-btn-submit:focus-visible{outline:revert!important;outline-offset:0!important}
.wabo-free-form .ff-btn-submit:disabled{cursor:default}
@media(prefers-reduced-motion:reduce){.wabo-free-form .ff-btn-submit{transition:none!important}}
.wabo-free-form .ff-el-group:has(>.ff-el-input--content>select){display:flex;flex-wrap:wrap;align-items:center}
.wabo-free-form .ff-el-group:has(>.ff-el-input--content>select)>.ff-el-input--label,.wabo-free-form .ff-el-group:has(>.ff-el-input--content>select)>.ff-el-input--content{width:100%}
.wabo-free-form .frm-fluent-form .ff-el-input--content select.ff-el-form-control{padding:5px 20px 5px 14px!important;line-height:24px!important}
.wabo-free-form .frm-fluent-form .ff-el-input--content select.ff-el-form-control{appearance:none;vertical-align:middle;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 571.4 679'%3E%3Cpath fill='%23151515' d='M571 393Q571 407 561 418L311 668Q300 679 286 679T261 668L11 418Q0 407 0 393T11 368 36 357H536Q550 357 561 368T571 393Z'/%3E%3C/svg%3E");background-origin:border-box;background-repeat:no-repeat;background-size:11px 13.07140357px;background-position:right 10px top calc(50% - .464298215px)}

/* Retained field focus uses its original inset and native choice focus ring. */
.wabo-free-form .ff-el-form-control:focus{outline:0!important;outline-offset:0!important;box-shadow:inset 0 0 0 1px rgba(0,0,0,.1)!important}
.wabo-free-form input.ff-el-form-control:not([type=file]):focus{border-color:#333!important}
.wabo-free-form .ff-el-form-check-input:focus-visible{outline:revert!important;outline-offset:2px!important}

.wabo-free-form .ff-el-form-control::placeholder{color:#151515!important;opacity:.6!important}
.wabo-free-form .ff-custom_html a{text-underline-offset:auto}
/* Keep the original overflow-visible select icon; the background is a no-JS fallback. */
.wabo-free-form .ff-el-input--content:has(>.wabo-free-select-caret){position:relative}
.wabo-free-form .wabo-free-select-caret{position:absolute;right:10px;top:50%;transform:translateY(-50%);font-size:11px;line-height:24px;pointer-events:none;color:#151515}
.wabo-free-form .wabo-free-select-caret svg{display:inline-block;width:1em;height:1em;fill:currentColor;overflow:visible}
.wabo-free-form .frm-fluent-form .ff-el-input--content:has(>.wabo-free-select-caret) select.ff-el-form-control{background-image:none}
