/*
 * Comply Globally Elementor Pages – compatibility layer.
 *
 * Loaded before the page stylesheets. It makes Elementor's wrappers neutral so
 * the sections render exactly like the original HTML pages:
 *
 * 1. Builder containers and section widgets get no spacing of their own.
 * 2. On the front end, unstyled wrappers use display:contents, so the original
 *    sections lay out as direct children of the page (sticky header etc.).
 * 3. Elementor's base element rules (.elementor a / img / ...) are reverted
 *    inside the sections; the page CSS (same specificity, loaded later) wins
 *    wherever the original design sets a value.
 */

/* 1. Containers created by the builder (editor and front end). */
.cgep-page .cgep-c {
	/* Elementor writes display:flex into each container's generated CSS; the
	   original page uses normal block flow. */
	--display: block !important;
	--padding-top: 0px;
	--padding-right: 0px;
	--padding-bottom: 0px;
	--padding-left: 0px;
	--margin-top: 0px;
	--margin-right: 0px;
	--margin-bottom: 0px;
	--margin-left: 0px;
	--gap: 0px;
	--row-gap: 0px;
	--column-gap: 0px;
	--width: 100%;
	--min-height: 0;
	--position: static;
	--z-index: auto;
	--overflow: visible;
	--container-widget-width: 100%;
	--content-width: 100%;
}
.cgep-page .cgep-c.cgep-main {
	--width: auto;
}

/* Section widgets: no spacing between sections. */
.cgep-page .elementor-element[class*="elementor-widget-cgep-"] {
	--kit-widget-spacing: 0px;
	margin-block-end: 0;
	margin-bottom: 0;
	width: 100%;
	max-width: none;
	min-width: 0;
}
.cgep-page [class*="elementor-widget-cgep-"] > .elementor-widget-container {
	margin: 0;
	padding: 0;
}

/* 2. Front end: layout-transparent wrappers. */
.cgep-page .elementor-element.cgep-plain,
.cgep-page .elementor-element.cgep-plain > .elementor-widget-container {
	display: contents;
}

/* Global header & footer: their wrappers (and, on the live page, the page
   content's wrappers) are layout-transparent, so the header, content and
   footer lay out as direct children of <body> like the original page. */
.cgep-part,
.cgep-part > .elementor,
.cgep-content,
.cgep-content.cgep-content--live > .elementor {
	display: contents;
}

/* 3. Revert Elementor base rules inside the sections. */
.cgep-page [class*="elementor-widget-cgep-"] *,
.cgep-page [class*="elementor-widget-cgep-"] ::before,
.cgep-page [class*="elementor-widget-cgep-"] ::after {
	box-sizing: revert;
}
.cgep-page [class*="elementor-widget-cgep-"] a {
	box-shadow: revert;
	text-decoration: revert;
}
.cgep-page [class*="elementor-widget-cgep-"] img {
	max-width: revert;
	border: revert;
	border-radius: revert;
	box-shadow: revert;
}
.cgep-page [class*="elementor-widget-cgep-"] img:where(:not([height])) {
	height: revert;
}
.cgep-page [class*="elementor-widget-cgep-"] hr {
	margin: revert;
	background-color: revert;
}
.cgep-page [class*="elementor-widget-cgep-"] embed,
.cgep-page [class*="elementor-widget-cgep-"] iframe,
.cgep-page [class*="elementor-widget-cgep-"] object,
.cgep-page [class*="elementor-widget-cgep-"] video {
	max-width: revert;
	width: revert;
	margin: revert;
	line-height: revert;
	border: revert;
}

/* Theme styles are switched off on built pages; keep accessibility helpers hidden. */
.cgep-page .screen-reader-text,
.cgep-page .skip-link.screen-reader-text {
	border: 0;
	clip: rect(1px, 1px, 1px, 1px);
	clip-path: inset(50%);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute !important;
	width: 1px;
	word-wrap: normal !important;
}
.cgep-page .screen-reader-text:focus,
.cgep-page .skip-link.screen-reader-text:focus {
	background-color: #fff;
	clip: auto !important;
	clip-path: none;
	color: #111;
	display: block;
	font-size: 14px;
	height: auto;
	left: 6px;
	line-height: normal;
	padding: 12px 20px;
	text-decoration: none;
	top: 6px;
	width: auto;
	z-index: 100000;
}

/* Editor: empty inline-editing areas stay clickable. */
.cgep-page.elementor-editor-active [class*="elementor-widget-cgep-"] .elementor-inline-editing:empty {
	min-width: 1em;
	min-height: 1em;
}
