/*
 * Zenobe Elementor 4 compatibility layer.
 * Keep selectors scoped to stable Elementor element IDs where possible.
 */

/* Elementor 4 can allow a later generic SVG rule to override the icon's 1em
 * intrinsic sizing. The footer accreditation mark then expands to ~800px high. */
.elementor-widget-icon .elementor-icon > svg,
.elementor-widget-icon .elementor-icon > i {
	display: block !important;
	width: 1em !important;
	height: 1em !important;
	max-width: 1em !important;
	max-height: 1em !important;
}

/* Header: replace the old full-viewport/negative-offset positioning trick
 * with a bounded right-aligned region. This preserves the production spacing
 * without allowing the menu to overlap the fixed logo at narrower widths. */
@media (min-width: 1001px) {
	.elementor-element.elementor-element-c6a4cde {
		position: fixed !important;
		top: 14px !important;
		left: 180px !important;
		right: 90px !important;
		width: auto !important;
		max-width: none !important;
	}

	.elementor-element-c6a4cde .elementor-widget-container,
	.elementor-element-c6a4cde .elementor-nav-menu--main {
		width: 100% !important;
	}

	.elementor-element-c6a4cde .elementor-nav-menu {
		justify-content: flex-end !important;
		margin-inline-start: 0 !important;
		width: 100% !important;
	}
}

/* Swiper 8 compatibility guardrails. These are the structural rules that must
 * exist before widget-specific styling can take effect. */
.elementor-widget-slides .swiper,
.elementor-widget-testimonial-carousel .swiper,
.elementor-widget-loop-carousel .swiper,
.elementor-widget-n-carousel .swiper {
	display: block;
	overflow: hidden;
}

.elementor-widget-slides .swiper-wrapper,
.elementor-widget-testimonial-carousel .swiper-wrapper,
.elementor-widget-loop-carousel .swiper-wrapper,
.elementor-widget-n-carousel .swiper-wrapper {
	display: flex;
}

.elementor-widget-slides .swiper-slide,
.elementor-widget-testimonial-carousel .swiper-slide,
.elementor-widget-loop-carousel .swiper-slide,
.elementor-widget-n-carousel .swiper-slide {
	flex-shrink: 0;
}

.elementor-widget-slides .swiper-slide-bg {
	background-position: center center !important;
	background-size: cover !important;
}

.elementor-swiper-button,
.elementor-swiper-button-prev,
.elementor-swiper-button-next {
	z-index: 10;
}

/* Post-card thumbnails: Elementor's ratio placeholder and the image can be
 * laid out one after the other when an older generated stylesheet remains in
 * Safari's cache. That produces an image followed by a large grey block.
 * Collapse the thumbnail to its configured padding ratio and pin the image
 * inside it, matching Elementor's intended card geometry. */
.elementor-widget-posts.elementor-posts--thumbnail-top .elementor-post__thumbnail {
	height: 0 !important;
	overflow: hidden !important;
	position: relative !important;
}

.elementor-widget-posts.elementor-posts--thumbnail-top .elementor-post__thumbnail img {
	height: 100% !important;
	left: 0 !important;
	max-height: none !important;
	max-width: none !important;
	object-fit: cover !important;
	position: absolute !important;
	top: 0 !important;
	transform: none !important;
	width: 100% !important;
}
