/* WordPress-specific adjustments on top of the static design. */
.admin-bar .header-wrap.sticky-menu { top: 32px; }
.elementor-widget-container .section-highlight,
.elementor-widget-container section { margin: 0; }
.elementor-section.elementor-section-boxed > .elementor-container { max-width: none; }
.elementor-widget:not(:last-child) { margin-bottom: 0; }
body.cmo-site { margin: 0; }
.screen-reader-text { position: absolute; left: -9999px; }

/* Contact Form 7 inside the .contact-form design */
.cmo-cf7 .wpcf7-form-control-wrap { display: block; width: 100%; }
.cmo-cf7 .wpcf7-form-control-wrap input,
.cmo-cf7 .wpcf7-form-control-wrap textarea { width: 100%; }
.cmo-cf7 .wpcf7-not-valid-tip { color: #c62828; font-size: 12px; margin-top: 6px; display: block; }
.cmo-cf7 .wpcf7-response-output { margin: 22px 0 0 !important; padding: 12px 16px; border: 1px solid var(--primary) !important; font-size: 14px; line-height: 1.5; }
.cmo-cf7 form.sent .wpcf7-response-output { border-color: #2e7d32 !important; color: #2e7d32; }
.cmo-cf7 form.invalid .wpcf7-response-output,
.cmo-cf7 form.failed .wpcf7-response-output,
.cmo-cf7 form.spam .wpcf7-response-output { border-color: #c62828 !important; color: #c62828; }
.cmo-cf7 .wpcf7-spinner { margin: 0 0 0 12px; vertical-align: middle; }
.cmo-cf7 .wpcf7-submit { cursor: pointer; }
.cmo-cf7 .screen-reader-response { position: absolute; left: -9999px; }

/* Elementor: CMO widgets span the full row so the theme's own max-width + margin:auto centring works (wide screens). */
.e-con > .elementor-widget[class*="elementor-widget-cmo_"],
.elementor-widget[class*="elementor-widget-cmo_"] { width: 100%; max-width: 100%; }
.elementor-widget[class*="elementor-widget-cmo_"] > .elementor-widget-container { width: 100%; }
.e-con:has(> .elementor-widget[class*="elementor-widget-cmo_"]) { --width: 100%; width: 100%; align-items: stretch; }

/* Elementor resets margins on sections: restore the theme's centring of the hero (max-width 1440, margin auto). */
.elementor .hero-slider-wrap { margin-left: auto !important; margin-right: auto !important; }
