/* ─────────────────────────────────────────────
   ETA Innovations – Homepage Sections Fixes
   Iteracja 3 – 2026-06-14
   ─────────────────────────────────────────────

   Scope: .eta-home-blog   (blog cards)
          .eta-home-about  (about left image)
          .eta-partner-logo (GWRM logo)
────────────────────────────────────────────── */

/* ── BLOG SECTION ── */

/* Tło sekcji — jak przed globalnym override body (Elementor nie ustawia własnego bg) */
.eta-home-blog {
	background-color: var(--theme-color-bg_color, #ffffff);
}
.eta-home-blog .trx-addons-posts {
	position: relative !important;
	height: auto !important;
	display: flex !important;
	flex-wrap: wrap !important;
	gap: 28px !important;
	align-items: flex-start !important;
}

.eta-home-blog .trx-addons-posts-item-wrap {
	position: relative !important;
	left: auto !important;
	top: auto !important;
	width: calc(33.333% - 19px) !important;
	margin: 0 !important;
}

/* Card: flex column so text stacks under image uniformly */
.eta-home-blog .trx-addons-posts-item {
	display: flex !important;
	flex-direction: column !important;
	height: 100% !important;
}

/* Equal-height image containers via aspect ratio */
.eta-home-blog .trx-addons-posts-item-thumbnail,
.eta-home-blog .trx-addons-posts-item-thumbnail-wrap {
	aspect-ratio: 16 / 10 !important;
	overflow: hidden !important;
	border-radius: 10px !important;
	display: block !important;
}

.eta-home-blog .trx-addons-posts-item-thumbnail-wrap > a {
	display: block !important;
	width: 100% !important;
	height: 100% !important;
}

/* Cover crop + rounded corners on the actual img */
.eta-home-blog .trx-addons-posts-item-thumbnail-wrap img {
	width: 100% !important;
	height: 100% !important;
	object-fit: cover !important;
	display: block !important;
	border-radius: 10px !important;
}

/* Content block sits right under image, equal start-Y across columns */
.eta-home-blog .trx-addons-posts-item-content {
	flex: 1 !important;
	display: flex !important;
	flex-direction: column !important;
}

/* Category label, title, meta: fixed top margin so they align */
.eta-home-blog .trx-addons-posts-item-meta-categories {
	margin-top: 16px !important;
}

/* Category — purple pill (align with single .post_meta_categories) */
.eta-home-blog .trx-addons-posts-item-terms,
.eta-home-blog .trx-addons-posts-item-meta-categories {
	margin-top: 16px !important;
}
.eta-home-blog .trx-addons-posts-item-terms a,
.eta-home-blog .trx-addons-posts-item-term a,
.eta-home-blog .trx-addons-posts-item-meta-categories a {
	display: inline-flex !important;
	align-items: center !important;
	padding: 6px 14px !important;
	border-radius: 999px !important;
	background: #ebe4f7 !important;
	color: #5b3fa8 !important;
	border: 0 !important;
	font-size: 11px !important;
	font-weight: 700 !important;
	letter-spacing: 0.08em !important;
	line-height: 1.25 !important;
	text-transform: uppercase !important;
	text-decoration: none !important;
	white-space: nowrap !important;
}
.eta-home-blog .trx-addons-posts-item-terms a:hover,
.eta-home-blog .trx-addons-posts-item-term a:hover,
.eta-home-blog .trx-addons-posts-item-meta-categories a:hover {
	background: #ddd0f2 !important;
	color: #4a2f96 !important;
}

/* Bubble meta (.post_meta_other) styled in eta-blog.css — hide flat TRX meta */
.eta-home-blog .trx-addons-posts-item-meta {
	display: none !important;
}

/* Tablet: 2 columns */
@media (max-width: 1024px) {
	.eta-home-blog .trx-addons-posts-item-wrap {
		width: calc(50% - 14px) !important;
	}
}

/* Mobile: 1 column */
@media (max-width: 767px) {
	.eta-home-blog .trx-addons-posts-item-wrap {
		width: 100% !important;
	}
	.eta-home-blog .trx-addons-posts {
		gap: 24px !important;
	}
}

/* ── GWRM PARTNER LOGO (old ETA SVG — kept for reference, no longer used) ── */
.eta-partner-logo img {
	max-width: 240px !important;
	height: auto !important;
	display: block !important;
	margin: 0 auto !important;
	filter: brightness(0) invert(1) !important;
}

@media (max-width: 767px) {
	.eta-partner-logo img {
		max-width: 180px !important;
		margin: 24px auto 0 !important;
	}
}

/* ── OSP Wielmoża GWRM badge logo — FULL COLOR (no invert, no shadow) ── */
.eta-osp-logo img,
.eta-osp-logo .elementor-image img {
	max-width: 220px !important;
	width: 220px !important;
	height: auto !important;
	display: block !important;
	margin: 0 auto !important;
	filter: none !important;
	border-radius: 50% !important;
	box-shadow: none !important;
	/* Vertical alignment: wyrównaj z blokiem tekstowym (bez dolnego marginesu) */
	position: relative;
	top: 0;
}

/* Kolumna z logo OSP – wyrównaj pionowo z blokiem tekstu */
.eta-osp-logo,
.elementor-widget.eta-osp-logo {
	display: flex !important;
	align-items: flex-start !important;
	justify-content: center !important;
	margin-top: 0 !important;
	padding-top: 0 !important;
}

@media (max-width: 767px) {
	.eta-osp-logo img,
	.eta-osp-logo .elementor-image img {
		max-width: 160px !important;
		width: 160px !important;
		margin: 16px auto 0 !important;
	}
}

/* ── Reviews / Testimonials section ─────────────────────────────────────── */
.eta-home-reviews {
	background-color: #f5f7fa !important;
	border-top: 1px solid rgba(0, 31, 63, 0.08);
	box-shadow: inset 0 6px 24px -8px rgba(0, 31, 63, 0.06);
}

/* Section inner max-width alignment */
.eta-home-reviews > .elementor-container,
.eta-home-reviews > .e-con-inner {
	max-width: 1200px;
	margin-left: auto;
	margin-right: auto;
	padding-left: 70px;
	padding-right: 70px;
}

@media (max-width: 1024px) {
	.eta-home-reviews > .elementor-container,
	.eta-home-reviews > .e-con-inner {
		padding-left: 30px;
		padding-right: 30px;
	}
}

@media (max-width: 767px) {
	.eta-home-reviews > .elementor-container,
	.eta-home-reviews > .e-con-inner {
		padding-left: 20px;
		padding-right: 20px;
	}
}

/* ── Reviews cards: równa wysokość, bez cienia pod kartami ─────────────── */
.eta-home-reviews .trx_addons_testimonials_item,
.eta-home-reviews .trx-addons-testimonials-item {
	display: flex !important;
	flex-direction: column !important;
	height: 100% !important;
	box-shadow: none !important;
}

.eta-home-reviews .trx_addons_testimonials,
.eta-home-reviews .trx-addons-testimonials {
	display: grid !important;
	grid-auto-rows: 1fr !important;
}

/* Bez cienia pod kartami testimoniali */
.eta-home-reviews [class*="testimonial"],
.eta-home-reviews [class*="trx_addons_testimonials"] .trx_addons_testimonials_item {
	box-shadow: none !important;
}

/* ── Mobile: eyebrow → H1 → przycisk „Zostaw opinię” ───────────────────── */
@media (max-width: 767px) {
	.eta-home-reviews .elementor-element-1a7b2d6 {
		display: grid;
		grid-template-columns: 1fr;
		grid-template-areas:
			"eyebrow"
			"title"
			"cta";
		gap: 14px;
		align-items: start;
	}

	.eta-home-reviews .elementor-element-a280139,
	.eta-home-reviews .elementor-element-1b079e4 {
		display: contents;
	}

	.eta-home-reviews .elementor-element-9815be4 {
		grid-area: eyebrow;
	}

	.eta-home-reviews .elementor-element-b4690c7 {
		grid-area: title;
	}

	.eta-home-reviews .elementor-element-c1432a0 {
		grid-area: cta;
		width: 100%;
	}

	.eta-home-reviews .elementor-element-c1432a0 .elementor-button {
		width: 100%;
		justify-content: center;
	}
}

/* ── Karuzela: widać krawędź następnego kafelka (scroll affordance) ───── */
.eta-home-reviews .elementor-element-90d91a8 {
	overflow: visible;
}

.eta-home-reviews .elementor-element-9ec3d9d .swiper-container-wrap,
.eta-home-reviews .elementor-element-9ec3d9d .trx-addons-testimonials-box,
.eta-home-reviews .elementor-element-9ec3d9d .swiper {
	overflow: visible !important;
}

.eta-home-reviews .elementor-element-9ec3d9d .swiper-slide {
	height: auto;
}

.eta-home-reviews .elementor-element-9ec3d9d.eta-reviews-carousel-ready .swiper-slide {
	transition: opacity 0.25s ease;
}

.eta-home-reviews .elementor-element-9ec3d9d.eta-reviews-carousel-ready .swiper-slide:not(.swiper-slide-active) {
	opacity: 0.72;
}

.eta-home-reviews .elementor-element-9ec3d9d .swiper-pagination {
	position: relative;
	margin-top: 18px;
}

.eta-home-reviews .elementor-element-9ec3d9d .swiper-pagination-bullet {
	background: rgba(0, 31, 63, 0.25);
	opacity: 1;
}

.eta-home-reviews .elementor-element-9ec3d9d .swiper-pagination-bullet-active {
	background: #001f3f;
}

@media (max-width: 767px) {
	.eta-home-reviews > .e-con-inner {
		overflow: visible;
	}

	.eta-home-reviews .elementor-element-90d91a8 {
		margin-right: -8px;
		padding-right: 0;
	}

	.eta-home-reviews .elementor-element-9ec3d9d .trx-addons-testimonials-content-wrapper {
		min-height: 200px;
	}
}

/* Modal „Zostaw opinię” USUNIĘTY (2026-07): przycisk to teraz czysty link
   <a href> prosto do profilu opinii Google. Zob. FM-REVIEW-MODAL-HIJACK. */

/* ══════════════════════════════════════════════════════════════════════
   SECTION ALIGNMENT — "Badania naukowe" i Reviews mają spójną szerokość
   ══════════════════════════════════════════════════════════════════════ */

/* Wyrównanie sekcji Badania naukowe do tej samej szerokości co sekcje sąsiednie */
.eta-home-badania > .elementor-container,
.eta-home-badania > .e-con-inner {
	max-width: 1200px;
	margin-left: auto;
	margin-right: auto;
	padding-left: 70px;
	padding-right: 70px;
}

@media (max-width: 1024px) {
	.eta-home-badania > .elementor-container,
	.eta-home-badania > .e-con-inner {
		padding-left: 30px;
		padding-right: 30px;
	}
}

@media (max-width: 767px) {
	.eta-home-badania > .elementor-container,
	.eta-home-badania > .e-con-inner {
		padding-left: 20px;
		padding-right: 20px;
	}
}

/* Trust Marquee — mniejszy font niż główny marquee */
.eta-trust-marquee .elementor-container,
.eta-trust-marquee > .e-con-inner {
	min-height: 80px !important;
}

/* ── Typography PL — widows/orphans/sieroty ─────────────────────────────── */
/* Ogólne fix na stronie głównej */
.eta-home-badania p,
.eta-home-badania h2,
.eta-home-badania h3,
.eta-home-reviews p,
.eta-home-reviews h2,
.eta-home-reviews h3,
.eta-home-contact p,
.eta-home-contact h2,
.eta-home-contact h3 {
	text-wrap: pretty;
	orphans: 3;
	widows: 3;
}

/* Partner/GWRM section typography */
.elementor-element-a591e5d p,
.elementor-element-a591e5d h2,
.elementor-element-a591e5d h3 {
	text-wrap: pretty;
	orphans: 3;
	widows: 3;
}

/*
 * GWRM navy copy — kill mid-word splits from eta-elementor-mobile-fix
 * (hyphens:auto + overflow-wrap:anywhere → "Meteorologiczne / go").
 * Word breaks only at spaces; PL orphans handled via &nbsp; in Elementor data.
 */
.elementor-3066 .elementor-element-a591e5d .elementor-heading-title,
.elementor-3066 .elementor-element-fb034c8 .elementor-heading-title,
.elementor-3066 .elementor-element-411a4f7.elementor-widget-text-editor,
.elementor-3066 .elementor-element-411a4f7 .elementor-widget-container,
.elementor-3066 .elementor-element-b18fc99 .elementor-heading-title {
	hyphens: none !important;
	-webkit-hyphens: none !important;
	-ms-hyphens: none !important;
	overflow-wrap: normal !important;
	word-break: normal !important;
}

/* ── OSP Wielmoża / GWRM — CTA „Przejdź” (jasny motyw na ciemnym tle) ── */
.elementor-element-a591e5d {
	--eta-btn-primary-bg: #ffffff;
	--eta-btn-primary-hover: #f2f4f7;
	--eta-btn-primary-text: #001f3f;
	--eta-btn-shadow-rgb: 0, 0, 0;
	--eta-btn-shadow-alpha: 0.14;
	--eta-btn-shadow-alpha-hover: 0.18;
	--eta-btn-primary-shadow: 0 8px 24px -6px rgba(var(--eta-btn-shadow-rgb), var(--eta-btn-shadow-alpha));
	--eta-btn-primary-shadow-hover: 0 14px 36px -2px rgba(var(--eta-btn-shadow-rgb), var(--eta-btn-shadow-alpha-hover));
}

.elementor-element-a591e5d .elementor-element-8988997 .elementor-button {
	background: var(--eta-btn-primary-bg) !important;
	background-color: var(--eta-btn-primary-bg) !important;
	border-color: var(--eta-btn-primary-bg) !important;
	color: var(--eta-btn-primary-text) !important;
	-webkit-text-fill-color: var(--eta-btn-primary-text) !important;
	box-shadow: var(--eta-btn-primary-shadow);
}

.elementor-element-a591e5d .elementor-element-8988997 .elementor-button:hover,
.elementor-element-a591e5d .elementor-element-8988997 .elementor-button:focus-visible {
	background: var(--eta-btn-primary-hover) !important;
	background-color: var(--eta-btn-primary-hover) !important;
	border-color: var(--eta-btn-primary-hover) !important;
	color: var(--eta-btn-primary-text) !important;
	-webkit-text-fill-color: var(--eta-btn-primary-text) !important;
	box-shadow: var(--eta-btn-primary-shadow-hover);
}

/* „Wszystkie usługi” — link jak strzałka info-box (47ca0c7) */
.elementor-element-efc6d41 a.eta-home-all-services-link {
	color: inherit;
	text-decoration: none;
	cursor: pointer;
}

.elementor-element-efc6d41 a.eta-home-all-services-link:hover,
.elementor-element-efc6d41 a.eta-home-all-services-link:focus-visible {
	text-decoration: underline;
	text-underline-offset: 0.15em;
}

/* Fallback: cały wiersz klikalny tym samym linkiem co strzałka.
   Hover rotate NIE może iść na .elementor-widget-container (1100px) —
   Elementor ustawia --e-transform-rotateZ:-45deg na :hover z origin=center
   → strzałka „odlatuje”. Animujemy wyłącznie ikonę (~44–63px). */
.elementor-element-3bdf7a7 {
	position: relative;
}

.elementor-element-3bdf7a7 > .elementor-element-efc6d41 {
	position: relative;
	z-index: 1;
	pointer-events: none;
}

.elementor-element-3bdf7a7 > .elementor-element-47ca0c7 {
	position: absolute;
	inset: 0;
	z-index: 2;
	width: 100% !important;
	max-width: none !important;
	height: 100% !important;
	margin: 0 !important;
	pointer-events: none;
}

/* Kill Elementor e-transform on the stretched hitbox (link stays full-row). */
.elementor-element-3bdf7a7 > .elementor-element-47ca0c7 > .elementor-widget-container,
.elementor-element-3bdf7a7 > .elementor-element-47ca0c7 > .elementor-widget-container:hover {
	--e-transform-rotateZ: 0deg !important;
	transform: none !important;
}

.elementor-element-3bdf7a7 .trx-addons-info-box-container,
.elementor-element-3bdf7a7 .trx-addons-info-box {
	position: static;
	width: 100%;
	height: 100%;
	margin: 0;
}

.elementor-element-3bdf7a7 .trx-addons-info-box-container-link {
	position: absolute;
	inset: 0;
	display: block;
	width: 100%;
	height: 100%;
	pointer-events: auto;
	z-index: 1;
}

.elementor-element-3bdf7a7 .trx-addons-info-box-icon-wrap {
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	transform-origin: center center;
	pointer-events: none;
	z-index: 2;
}

/* Icon-only hover: same -45° as info-box arrows (eta0006 etc.), local origin */
.elementor-element-3bdf7a7 .trx-addons-info-box-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	transform: none;
	transform-origin: center center;
	transition:
		transform 0.4s ease,
		color 0.3s ease,
		background-color 0.3s ease,
		border-color 0.3s ease;
	will-change: transform;
}

.elementor-element-3bdf7a7:hover .trx-addons-info-box-icon,
.elementor-element-3bdf7a7 .trx-addons-info-box-container:hover .trx-addons-info-box-icon,
.elementor-element-3bdf7a7 > .elementor-element-47ca0c7 > .elementor-widget-container:hover .trx-addons-info-box-icon {
	transform: rotate(-45deg);
}

@media (prefers-reduced-motion: reduce) {
	.elementor-element-3bdf7a7 .trx-addons-info-box-icon {
		transition: none;
	}

	.elementor-element-3bdf7a7:hover .trx-addons-info-box-icon,
	.elementor-element-3bdf7a7 .trx-addons-info-box-container:hover .trx-addons-info-box-icon,
	.elementor-element-3bdf7a7 > .elementor-element-47ca0c7 > .elementor-widget-container:hover .trx-addons-info-box-icon {
		transform: none;
	}
}
