/* Elementor owns native container widths, padding, images and text controls. */
#header > .elementor, #header .elementor-widget-mh-navigation, #header .elementor-widget-mh-navigation > .elementor-widget-container { height: 100%; }
:where(.elementor-widget-mh-navigation) { margin-block: 0; }
:where(.elementor-widget-mh-hero,.elementor-widget-mh-banner,.elementor-widget-mh-services,.elementor-widget-mh-phases,.elementor-widget-mh-news,.elementor-widget-mh-experts,.elementor-widget-mh-newsletter) { width: 100%; margin: 0; }
:where(.mh-native-section) { min-width: 0; }
:where(.mh-native-section .elementor-widget) { min-width: 0; max-width: 100%; }
:where(.mh-native-section .elementor-heading-title) { overflow-wrap: anywhere; }
:where(.mh-native-eyebrow .elementor-heading-title) { display: flex; align-items: center; gap: 15px; text-transform: uppercase; line-height: 1.8; }
:where(.mh-native-eyebrow .elementor-heading-title):before { content: ''; width: 24px; height: 1px; background: var(--accent); flex-shrink: 0; }
:where(.mh-native-framed .elementor-widget-container) { padding: 18px; border: 1px solid var(--line); }
:where(.mh-native-framed img) { width: 100%; object-fit: cover; }
:where(.mh-native-button .elementor-button) { border-radius: 0; transition: background .3s, color .3s; }
:where(.mh-native-button .elementor-button:hover) { color: var(--accent); }
:where(.mh-footer-logo) { max-width: 130px; }
:where(.mh-footer-logo img) { width: 115px; height: auto; }
body[data-page=contact] .mh-native-footer-cta { display: none; }
:where(.mh-current-image) { width: 100%; height: auto; max-height: 620px; object-fit: cover; object-position: top; border: 1px solid var(--line); padding: 12px; }
:where(.mh-contact-form .contact-submit) { width: 100%; margin-top: 28px; }
:where(.mh-form-result) { font-size: 14px; line-height: 1.8; margin-top: 18px; }
.mh-honeypot { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
:where(.mh-project-grid) { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 40px; }
:where(.mh-project-grid img) { width: 100%; aspect-ratio: 1.45; object-fit: cover; margin-bottom: 25px; }
:where(.mh-project-grid h3) { font: 22px/1.6 var(--display); margin-bottom: 18px; }
:where(.mh-project-grid p) { font-size: 16px; }
.mh-editing #main { padding-top: 0; }
.mh-editing .hero-screen { min-height: 700px; }
.mh-editing .hero-word { opacity: 1; transform: none; filter: none; }
.admin-bar #header { top: 32px; }
.admin-bar .menu-overlay { top: calc(var(--header-height) + 32px); }
:where(.source-service-content .elementor-widget-text-editor) { color: var(--muted); font: 16px/1.9 var(--sans); }
@media (max-width: 782px) { .admin-bar #header { top: 46px; } .admin-bar .menu-overlay { top: calc(var(--header-height) + 46px); } }
@media (max-width: 640px) { :where(.mh-project-grid) { grid-template-columns: minmax(0,1fr); } :where(.mh-current-image) { max-height: 500px; } }
@media print { .mh-native-footer-cta,.mh-contact-form,.mh-newsletter-form { display: none; } }

:where(.mh-expert-current) { filter: grayscale(1) brightness(.82); }

:where(.mh-native-framed img) { height: clamp(260px,34vw,480px); object-fit: cover; }
@media(max-width:782px) { .admin-bar #wpadminbar { position:fixed; } }

:where(.elementor-widget-text-editor) ul { list-style: disc; padding-left: 22px; margin-block: 20px; }
:where(.elementor-widget-text-editor) ol { padding-left: 22px; margin-block: 20px; }
