/* Snowplow Seattle: WordPress/Elementor glue. Elementor wrappers around each Lovable section are layout-neutral
   (display:contents) so the original section CSS, sticky header and sticky table of contents behave as on the source. */
.sps .elementor,.sps .e-con.sps-c,.sps .sps-c>.e-con-inner,.sps .elementor-widget.sps-w,.sps .sps-w>.elementor-widget-container,.sps .elementor-shortcode{display:contents}
.elementor-editor-active .e-con.sps-c,.elementor-editor-active .elementor-widget.sps-w{display:block}
.sps .elementor-widget-html{width:auto;max-width:none}
html body section.sps-alt:not(.dk):not(.pn):not(.cta){background:var(--ice)}
main#content{display:block}
.sps-skip{position:absolute;left:-9999px;top:8px;z-index:100;background:#fff;color:#071430;padding:10px 16px;border-radius:8px}
.sps-skip:focus{left:8px}
/* Contact Form 7 inside the Lovable form markup */
.wpcf7-form-control-wrap{display:block}
.sps .wpcf7 input[type=text],.sps .wpcf7 input[type=email],.sps .wpcf7 input[type=tel],.sps .wpcf7 select{box-sizing:border-box!important;width:100%;box-sizing:border-box;min-height:48px;padding:0 14px;border:1px solid #6B7FA6;border-radius:4px;font-size:16px;background:#fff;color:#0A1B3D;font-family:'Manrope',system-ui,sans-serif}
.wpcf7 select{padding:0 12px}
.sps .wpcf7 textarea{box-sizing:border-box!important;width:100%;box-sizing:border-box;padding:12px 14px;border:1px solid #6B7FA6;border-radius:4px;font-size:16px;background:#fff;color:#0A1B3D;resize:vertical;font-family:'Manrope',system-ui,sans-serif}
.wpcf7 .sps-submit{min-height:54px;padding:0 32px;background:#FF6B1A;color:#0A1B3D;font-weight:600;font-size:18px;border:0;border-radius:4px;cursor:pointer;align-self:flex-start;font-family:'Manrope',system-ui,sans-serif}
.wpcf7 form .wpcf7-response-output{margin:0;padding:12px 16px;border-radius:4px;font-size:16px}
.wpcf7-not-valid-tip{font-size:14px;margin-top:6px;color:#B42318}
.wpcf7-spinner{margin:0 0 0 12px}
.sps-hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
.sps-map{width:100%;min-height:460px;border:1px solid #CBD9F2;border-radius:6px;display:block}
/* Undo Elementor's generic ".elementor img" reset (height:auto, box-shadow:none) for the Lovable image classes. */
.sps .elementor img.pi{height:100%}
.sps .elementor .wp img,.sps .elementor section img[style*="border-radius"]{box-shadow:var(--sh2)}
/* Lovable sections are authored with the CSS default box-sizing (content-box); Elementor forces border-box. */
.sps .elementor-widget-html *,.sps .elementor-widget-html *::before,.sps .elementor-widget-html *::after{box-sizing:content-box}
.sps .elementor-widget-html .sn-hb{box-sizing:border-box}
.sps .wpcf7 input.sps-submit{min-height:54px;padding:0 32px;background:#FF6B1A!important;color:#0A1B3D!important;font-weight:700!important;font-size:18px;border:0!important;border-radius:999px!important;cursor:pointer;font-family:'Manrope',system-ui,sans-serif!important;width:auto}
.sps .wpcf7 input.sps-submit:hover{background:#FF8A3D!important}
