/**
 * ClaudMentor front-end: flush Elementor embedding + auto-height hosts.
 */

html,
body {
	max-width: 100%;
	overflow-x: hidden;
}

.claudmentor--iframe {
	display: block;
	width: 100%;
	margin: 0;
	padding: 0;
	overflow: hidden;
}

.claudmentor--iframe.claudmentor--auto-height {
	height: auto;
	min-height: 0;
}

.claudmentor--iframe.claudmentor--auto-height:not(.claudmentor--chrome) .claudmentor-frame {
	min-height: 0;
}

.claudmentor--iframe.claudmentor--chrome {
	overflow: hidden !important;
}

.claudmentor-frame {
	display: block;
	width: 100%;
	max-width: 100%;
	margin: 0;
	padding: 0;
	border: 0;
	vertical-align: top;
	overflow: hidden;
}

/* Elementor widget shell */
.elementor-widget-claudmentor_design,
.elementor-widget-claudmentor_design > .elementor-widget-container {
	padding: 0 !important;
	margin: 0;
	width: 100%;
	height: auto !important;
	min-height: 0 !important;
	overflow: hidden !important;
}

/* Classic sections/columns */
.elementor-section:has(.elementor-widget-claudmentor_design),
.elementor-section:has(.elementor-widget-claudmentor_design) > .elementor-container,
.elementor-column:has(.elementor-widget-claudmentor_design),
.elementor-column:has(.elementor-widget-claudmentor_design) > .elementor-widget-wrap {
	padding-top: 0 !important;
	padding-bottom: 0 !important;
	padding-left: 0 !important;
	padding-right: 0 !important;
	height: auto !important;
	min-height: 0 !important;
	overflow: hidden !important;
}

/* Elementor flexbox containers (e-con) */
.e-con:has(.elementor-widget-claudmentor_design),
.e-con:has(> .elementor-widget-claudmentor_design) {
	--padding-top: 0px !important;
	--padding-right: 0px !important;
	--padding-bottom: 0px !important;
	--padding-left: 0px !important;
	--min-height: auto !important;
	--height: auto !important;
	padding: 0 !important;
	height: auto !important;
	min-height: 0 !important;
	max-height: none !important;
	gap: 0;
	overflow: hidden !important;
}

.e-con.e-parent:has(.elementor-widget-claudmentor_design) {
	--container-widget-height: auto;
}

/* Elementor Theme Builder header/footer slots */
.elementor-location-header:has(.elementor-widget-claudmentor_design),
.elementor-location-footer:has(.elementor-widget-claudmentor_design) {
	padding: 0 !important;
	margin: 0;
	height: auto !important;
	min-height: 0 !important;
	max-height: none !important;
	overflow: hidden !important;
}

.elementor-location-header .elementor-widget-claudmentor_design,
.elementor-location-footer .elementor-widget-claudmentor_design {
	width: 100%;
	overflow: hidden !important;
}

.elementor-location-header .claudmentor-frame,
.elementor-location-footer .claudmentor-frame,
.elementor-location-header .claudmentor--iframe,
.elementor-location-footer .claudmentor--iframe {
	overflow: hidden !important;
}

/* Elementor Theme-Builder setzt sonst 400px Vorschau-Höhe */
.elementor-location-header .elementor-theme-builder-content-area,
.elementor-location-footer .elementor-theme-builder-content-area,
.elementor-location-header,
.elementor-location-footer {
	height: auto !important;
	min-height: 0 !important;
	max-height: none !important;
	overflow: hidden !important;
}

.elementor-location-header .e-con,
.elementor-location-footer .e-con,
.elementor-location-header .e-con-inner,
.elementor-location-footer .e-con-inner {
	overflow: hidden !important;
	min-height: 0 !important;
	max-height: none !important;
}

.claudmentor--chrome-header,
.claudmentor--chrome-footer {
	overflow: hidden !important;
}
