/* =====================================================================
   Elementor support (loaded only when Elementor is active).
   1. Elementor's wrappers around the theme sections take no space, so a
      page built in Elementor looks exactly like the built-in page.
   2. Native Elementor widgets placed between theme sections get the theme's
      width, gutters and paragraph spacing.
   3. In the editor everything is visible at once (no fade-in on scroll).
   ===================================================================== */

/* 1 — the full-width root container/section the theme's layouts are built in */
.sc-el .sc-el-root:not(#\#) {
	--padding-top: 0px; --padding-right: 0px; --padding-bottom: 0px; --padding-left: 0px;
	--gap: 0px; --row-gap: 0px; --column-gap: 0px;
	--width: 100%; --content-width: 100%; --container-max-width: 100%;
	padding: 0;
}
.sc-el .sc-el-root > .elementor-container:not(#\#) { max-width: none; }
.sc-el .sc-el-root > .elementor-container > .elementor-column > .elementor-widget-wrap:not(#\#) { padding: 0; }

/* Theme section widgets sit edge to edge, like the built-in page.
   :where() keeps this weaker than a margin set in the widget's Advanced tab. */
:where(.sc-el) .elementor-widget[class*="elementor-widget-sc-"] { --kit-widget-spacing: 0px; margin-block: 0; }
:where(.sc-el) .elementor-widget[class*="elementor-widget-sc-"]:not(:last-child) { margin-block-end: 0; }
.sc-el .elementor-widget-sc-schema:not(#\#) { display: none; }

/* 2 — a native widget dropped straight into the root: same width and gutters as .sc-container */
.sc-el .sc-el-root .elementor-widget:not([class*="elementor-widget-sc-"]):not(.elementor-widget-html):not(#\#) {
	width: 100%; max-width: var(--sc-max); margin-inline: auto; padding-inline: var(--sc-gutter); box-sizing: border-box;
}
/* the theme resets paragraph margins; give Elementor's text widgets their spacing back */
.sc-el .elementor-widget-text-editor :is(p, ul, ol, h2, h3, h4, blockquote) + :is(p, ul, ol, h2, h3, h4, blockquote):not(#\#) { margin-top: var(--sc-s4, 1em); }
.sc-el .elementor-widget-text-editor :is(ul, ol):not(#\#) { padding-inline-start: 1.25em; }

/* 3 — editor preview */
.elementor-editor-active .sc-reveal:not(#\#):not(#\#) { opacity: 1; transform: none; }
.elementor-editor-active .sc-hero__video:not(#\#) { pointer-events: none; }
.elementor-editor-active .sc-el .elementor-widget-sc-schema:not(#\#) { display: block; }
.elementor-editor-active .elementor-widget-sc-schema:not(#\#)::before {
	content: "Schema (JSON-LD) — invisible on the live site"; display: block; padding: 12px 16px;
	font: 600 13px/1.4 system-ui, sans-serif; color: #4A5560; background: #F2EFEA; border: 1px dashed #CFC7BA;
}
.elementor-editor-active .elementor-widget-sc-schema script { display: none; }
