/*
 * Elementor bridge CSS (Hello Elementor Child, MDB).
 * Elementor's and Header Footer Builder's stylesheets are loaded inside the CSS cascade layer "elementor"
 * (inc/elementor-bridge.php), so every MDB rule (not layered) wins over them, whatever the selector weight.
 * Converted elements carry two marker classes:
 *   mdb-raw  (containers) - Elementor's flex/padding/width defaults are undone, the element behaves like the
 *                           original <section>/<div> and the MDB classes on it do the layout.
 *   mdb-w    (widgets)    - the widget wrapper takes no box (display:contents), so the heading/link/image inside
 *                           sits where it sat in the original markup.
 * Anything you add without those classes behaves like normal Elementor.
 */
@layer mdbreset {
	.e-con.mdb-raw { all: revert; box-sizing: border-box; }
	.elementor-widget.mdb-w,
	.mdb-w > .elementor-widget-container { display: contents; }
	.elementor-element.elementor-element-edit-mode.mdb-w { display: contents; }
	.mdb-hfe > .elementor, .mdb-hfe > .elementor > .e-con { all: revert; }
}

/* HFE / Elementor document wrappers around the header and footer: invisible, so the nav and footer behave like the originals (sticky, full width). */
@layer mdbreset {
	.footer-width-fixer,
	div.elementor:has(> nav.mdb-nav),
	div.elementor:has(> footer.mdb-footer),
	.elementor-widget.mdb-w > .elementor-shortcode { display: contents; }
}

/* Elementor gives every container a ::before/::after overlay box (inset 0, full size). Converted containers use the
   MDB theme's own pseudo-elements, so reset Elementor's to browser defaults; the unlayered MDB rules still apply. */
@layer mdbreset {
	.e-con.mdb-raw::before, .e-con.mdb-raw::after { all: revert; }
}
