.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-53885 .elementor-element.elementor-element-7391c54{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 15px) 0px;padding:0px 0px 0px 0px;}.elementor-53885 .elementor-element.elementor-element-7391c54 .elementor-heading-title{font-family:"Smooch Sans", Sans-serif;font-size:2.6rem;font-weight:500;color:#000000;}/* Start custom CSS for heading, class: .elementor-element-7391c54 */h2 {
    margin-top:0px !important;
    padding-top:0 !important;
}/* End custom CSS */
/* Start custom CSS *//* Contact page (53885), finished Oct 12 2026: navy hero + form card + side cards are atomic widgets with inline styles.
   This block styles the Contact Form 7 form (56206) inside the card, lays its fields out as a 2-column grid, and hides
   the legacy heading widget 7391c54 that the MCP cannot delete (the new card title is an atomic heading). */
.elementor-53885 [data-id="7391c54"] { display: none !important; }
.elementor-53885 .wpcf7 { font-family: "IBM Plex Sans", sans-serif; }
.elementor-53885 .wpcf7 form { display: flex; flex-direction: column; gap: 14px; margin: 0; }
.elementor-53885 .wpcf7 form > p { margin: 0; }
.elementor-53885 .wpcf7 form > p:first-of-type { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.elementor-53885 .wpcf7 form > p:first-of-type br { display: none; }
.elementor-53885 .wpcf7 .wpcf7-form-control-wrap { display: block; }
.elementor-53885 .wpcf7 .wpcf7-form-control-wrap[data-name="frm-msg"] { grid-column: 1 / -1; }
@media (max-width: 600px) { .elementor-53885 .wpcf7 form > p:first-of-type { grid-template-columns: 1fr; } }
.elementor-53885 .wpcf7 input:not([type=submit]):not([type=radio]):not([type=checkbox]):not([type=file]),
.elementor-53885 .wpcf7 textarea { width: 100%; box-sizing: border-box; margin: 0; padding: 13px 14px; border: 1px solid #d6dbe3; border-radius: 10px; background: #fff; font-family: "IBM Plex Sans", sans-serif; font-size: 1rem; line-height: 1.4; color: #111; transition: border-color .15s, box-shadow .15s; }
.elementor-53885 .wpcf7 textarea { height: auto !important; min-height: 160px !important; max-height: none; resize: vertical; }
.elementor-53885 .wpcf7 input:focus, .elementor-53885 .wpcf7 textarea:focus { outline: none; border-color: #61cc2f; box-shadow: 0 0 0 3px rgba(97,204,47,.25); }
.elementor-53885 .wpcf7 input::placeholder, .elementor-53885 .wpcf7 textarea::placeholder { color: #8a909a; }
.elementor-53885 .wpcf7 .wpcf7-submit { width: auto; min-width: 200px; margin: 4px 0 0; padding: 15px 28px; border: 0; border-radius: 10px; background: #61cc2f; color: #091d34; font-family: "IBM Plex Sans", sans-serif; font-size: 16px; font-weight: 700; cursor: pointer; transition: background .15s; }
.elementor-53885 .wpcf7 .wpcf7-submit:hover { background: #55b529; }
@media (max-width: 600px) { .elementor-53885 .wpcf7 .wpcf7-submit { width: 100%; } }
.elementor-53885 .wpcf7 .wpcf7-spinner { margin: 8px auto 0; display: block; }
.elementor-53885 .wpcf7 .wpcf7-not-valid-tip { font-size: 0.8rem; color: #c0392b; margin-top: 4px; }
.elementor-53885 .wpcf7 .wpcf7-not-valid { border-color: #c0392b; }
.elementor-53885 .wpcf7 .wpcf7-response-output { margin: 12px 0 0; padding: 12px 14px; border-radius: 10px; border: 1px solid #d6dbe3; font-size: 0.9rem; }
.elementor-53885 .wpcf7 form.sent .wpcf7-response-output { border-color: #61cc2f; background: #eefbe7; color: #1f5a0b; }
.elementor-53885 .wpcf7 form.invalid .wpcf7-response-output, .elementor-53885 .wpcf7 form.failed .wpcf7-response-output { border-color: #c0392b; background: #fdf0ee; color: #8a2419; }/* End custom CSS */