/*
 * Makes Elementor's wrappers layout-neutral so the original stylesheet
 * (assets/site.css, scoped under #site) renders exactly as the static site did.
 * Everything here has specificity (1,0,0) or lower, so any original rule wins.
 */
#site :where(.e-con, .e-con-inner) { all: revert; }
#site :where(.e-con)::before,
#site :where(.e-con)::after { all: revert; }
#site :where(.elementor-widget, .elementor-widget-container) { all: revert; display: contents; }
body#site:not(.elementor-editor-active) :where([data-elementor-type]) { display: contents; }

/* Undo Elementor's global element defaults (same specificity, loaded later). */
.elementor a { text-decoration: revert; box-shadow: revert; }
.elementor img { max-width: revert; height: revert; border: revert; border-radius: revert; box-shadow: revert; }
.elementor *, .elementor :after, .elementor :before { box-sizing: revert; }

/* While editing in Elementor: show scroll-reveal content, hide loader/custom cursor. */
body.nd-editing .reveal, body.nd-editing .reveal-left, body.nd-editing .reveal-right, body.nd-editing .reveal-scale,
body.nd-editing [class*="anim-"] { opacity: 1 !important; transform: none !important; }
body.nd-editing #page-loader, body.nd-editing .cursor, body.nd-editing .cursor-follower { display: none !important; }
body.nd-editing, body.nd-editing * { cursor: auto; }
#site :where(.nd-wrap) { display: contents; }
