/* Elementor containers and widgets made from the original markup (classes yk-c / yk-w) behave like the original
   elements: plain blocks with no Elementor spacing. Only Elementor's own variables and wrapper defaults are reset
   here, so every rule of the original stylesheet (loaded after this file) still applies. Containers added later in
   Elementor are not affected; removing the class yk-c from a container (Advanced → CSS Classes) hands its layout
   back to Elementor's settings. The selector is repeated to outrank Elementor's per-element CSS (--display). */
.elementor .e-con.yk-c.yk-c {
	--display: block;
	--width: auto;
	--min-height: 0;
	--padding-top: 0;
	--padding-right: 0;
	--padding-bottom: 0;
	--padding-left: 0;
	--margin-top: 0;
	--margin-bottom: 0;
	--margin-left: 0;
	--margin-right: 0;
	--gap: 0;
	--row-gap: 0;
	--column-gap: 0;
	--widgets-spacing: 0;
	--widgets-spacing-row: 0;
	--widgets-spacing-column: 0;
	--kit-widget-spacing: 0;
	--flex-wrap: wrap;
	--border-radius: 0;
	--container-max-width: none;
	--content-width: 100%;
	/* A non-normal align-content makes a block its own formatting context (margins would stop collapsing). */
	--grid-align-content: normal;
	--grid-justify-content: normal;
	--align-content: normal;
	--justify-content: normal;
}
/* Elementor removes figure margins inside widgets; the original keeps Bootstrap's (more specific original rules,
   e.g. #portfolio … figure, still win). */
.elementor .elementor-widget.yk-w.yk-w:not(.elementor-widget-text-editor) figure { margin: 0 0 1rem; }
/* Outside the editor, Elementor's wrappers do not become the reference box for the original positioned elements. */
body:not(.elementor-editor-active) .elementor .e-con.yk-c.yk-c { --position: static; }
body:not(.elementor-editor-active) .elementor .elementor-element.yk-w { position: static; }
.elementor .e-con.yk-c > .elementor-element.yk-w { margin: 0; }
.elementor .elementor-widget-image.yk-img { text-align: inherit; }
/* Elementor makes every embed full-width and borderless; the original embeds keep their own width/height/frameborder
   attributes (Google Form 680px, map 990px, videos 300/500px). */
.elementor .yk-w.yk-w :is(iframe, embed, object, video) { width: revert-layer; max-width: revert-layer; margin: revert-layer; border: revert-layer; line-height: revert-layer; }
/* Elementor sets img { height: auto }; original images with a height attribute (the header logo, the form banner)
   keep it. Not for Image widgets, whose Media Library markup always carries the file's own size. */
.elementor .yk-w.yk-w:not(.elementor-widget-image) img[height] { height: revert-layer; }
