/**
 * ICMQ Homepage – Stili specifici per la pagina Home Elementor
 * Forza layout, spaziature e colori per replicare icmq.it
 */

/* ========== GLOBAL HOMEPAGE ========== */
body.home .elementor-page-title,
body.home .icmq-inner-banner-news {
	display: none !important;
}

body.home .elementor {
	font-family: var(--icmq-font-body, "Open Sans", sans-serif);
}

/* ========== SECTION: IN EVIDENZA (Loop Grid) ========== */
.icmq-hp-featured {
	padding-top: 50px !important;
	padding-bottom: 40px !important;
}

/* ========== SECTION: ENVISION – 4 card in riga ========== */
.icmq-hp-envision {
	display: flex !important;
	flex-direction: row !important;
	flex-wrap: wrap !important;
	gap: 20px !important;
	background-color: #f5f5f5 !important;
	padding: 30px 20px !important;
}

.icmq-hp-env-card {
	flex: 0 0 calc(25% - 15px) !important;
	max-width: calc(25% - 15px) !important;
	background: #fff !important;
	border: 1px solid #e6e6e6 !important;
	padding: 15px !important;
	display: flex !important;
	flex-direction: column !important;
}

.icmq-hp-env-card .elementor-widget-image {
	margin-bottom: 10px;
}
.icmq-hp-env-card .elementor-widget-image .elementor-image {
	min-height: 160px !important;
	background: linear-gradient(135deg, #1a365d 0%, #2a4a7f 100%) !important;
	border-radius: 4px !important;
}
.icmq-hp-env-card .elementor-widget-image img {
	width: 100%;
	height: auto;
}

.icmq-hp-env-card .elementor-heading-title {
	font-size: 13px !important;
	font-weight: 600 !important;
	color: #242424 !important;
	line-height: 1.4 !important;
}

/* ========== SECTION: I NOSTRI SERVIZI – Carousel orizzontale ========== */
.icmq-hp-services {
	padding: 60px 0 50px !important;
	position: relative !important;
}

.icmq-hp-svc-grid {
	display: flex !important;
	flex-direction: row !important;
	flex-wrap: nowrap !important;
	gap: 20px !important;
	overflow-x: auto !important;
	scroll-snap-type: x mandatory !important;
	-webkit-overflow-scrolling: touch !important;
	scrollbar-width: none !important;
	padding-bottom: 10px !important;
}
.icmq-hp-svc-grid::-webkit-scrollbar {
	display: none !important;
}

.icmq-home-svc-card {
	flex: 0 0 calc(33.333% - 14px) !important;
	max-width: calc(33.333% - 14px) !important;
	min-width: 280px !important;
	scroll-snap-align: start !important;
	background: #fff !important;
	border: 1px solid #e6e6e6 !important;
	overflow: hidden !important;
	transition: transform 0.3s, box-shadow 0.3s !important;
}

.icmq-home-svc-card:hover {
	transform: translateY(-4px) !important;
	box-shadow: 0 8px 25px rgba(0,0,0,0.12) !important;
}

.icmq-home-svc-card .elementor-widget-image img {
	width: 100% !important;
	height: 200px !important;
	object-fit: cover !important;
	display: block !important;
}
.icmq-home-svc-card .elementor-widget-image .elementor-image {
	min-height: 200px !important;
	background: linear-gradient(135deg, #f0f4f8 0%, #e2e8f0 100%) !important;
}

.icmq-home-svc-card .elementor-widget-heading .elementor-heading-title {
	font-size: 15px !important;
	font-weight: 700 !important;
	text-transform: uppercase !important;
	color: #242424 !important;
	line-height: 1.3 !important;
}

.icmq-home-svc-card .elementor-widget-text-editor {
	font-size: 14px !important;
	line-height: 1.6 !important;
}

.icmq-home-svc-card .elementor-widget-text-editor a {
	color: var(--icmq-primary, #e10101) !important;
	font-weight: 700 !important;
	text-transform: uppercase !important;
	font-size: 13px !important;
	letter-spacing: 0.5px;
	text-decoration: none !important;
}
.icmq-home-svc-card .elementor-widget-text-editor a:hover {
	color: var(--icmq-secondary, #0094b3) !important;
}

/* ========== SECTION: FOCUS – 2 card affiancate ========== */
.icmq-hp-focus {
	background-color: #f5f5f5 !important;
	padding: 60px 0 50px !important;
}

.icmq-hp-focus-row {
	display: flex !important;
	flex-direction: row !important;
	gap: 30px !important;
}

.icmq-hp-focus-card {
	flex: 1 1 calc(50% - 15px) !important;
	max-width: calc(50% - 15px) !important;
	min-height: 320px !important;
	border-radius: 4px !important;
	overflow: hidden !important;
	position: relative !important;
	display: flex !important;
	flex-direction: column !important;
	justify-content: flex-end !important;
	padding: 30px !important;
	background-color: rgba(80,80,80,0.8) !important;
	background-size: cover !important;
	background-position: center center !important;
}

.icmq-hp-focus-card .elementor-widget-heading .elementor-heading-title {
	color: #fff !important;
	font-size: 28px !important;
	font-weight: 700 !important;
	text-transform: uppercase !important;
	padding-bottom: 15px !important;
	border-bottom: 3px solid var(--icmq-secondary, #0094b3) !important;
	margin-bottom: 15px !important;
}

.icmq-hp-focus-card .elementor-widget-text-editor,
.icmq-hp-focus-card .elementor-widget-text-editor p {
	color: #fff !important;
	font-size: 14px !important;
	line-height: 1.6 !important;
}

.icmq-hp-focus-card .elementor-widget-button .elementor-button {
	background: transparent !important;
	border: 2px solid #fff !important;
	color: #fff !important;
	text-transform: uppercase !important;
	font-weight: 600 !important;
	letter-spacing: 1px !important;
	padding: 8px 25px !important;
}
.icmq-hp-focus-card .elementor-widget-button .elementor-button:hover {
	background: #fff !important;
	color: #333 !important;
}

/* ========== SECTION: CHI SIAMO ========== */
.icmq-hp-chisiamo {
	padding: 60px 0 50px !important;
}

.icmq-hp-chi-row {
	display: flex !important;
	flex-direction: row !important;
	gap: 40px !important;
	align-items: center !important;
}

.icmq-hp-chi-row > .e-con:first-child {
	flex: 0 0 55% !important;
	max-width: 55% !important;
}

.icmq-hp-chi-row > .e-con:last-child {
	flex: 0 0 calc(45% - 40px) !important;
	max-width: calc(45% - 40px) !important;
}

.icmq-hp-chi-row .elementor-widget-image img {
	width: 100% !important;
	height: auto !important;
	border-radius: 4px !important;
}

/* ========== SECTION: AZIENDE E PERSONE CERTIFICATE ========== */
.icmq-hp-certificati {
	background-color: #f5f5f5 !important;
	padding: 60px 0 50px !important;
}

.icmq-hp-cert-cards {
	display: flex !important;
	flex-direction: row !important;
	gap: 30px !important;
	flex-wrap: wrap !important;
	justify-content: center !important;
}

.icmq-hp-cert-card {
	flex: 0 0 calc(33.333% - 20px) !important;
	max-width: calc(33.333% - 20px) !important;
	text-align: center !important;
	cursor: pointer !important;
	transition: transform 0.3s, box-shadow 0.3s !important;
}
.icmq-hp-cert-card:hover {
	transform: translateY(-4px) !important;
	box-shadow: 0 8px 25px rgba(0,0,0,0.1) !important;
}

.icmq-hp-cert-card .elementor-widget-icon .elementor-icon {
	font-size: 80px !important;
}
.icmq-hp-cert-card .elementor-widget-icon i {
	color: #999 !important;
}
.icmq-hp-cert-card-green .elementor-widget-icon i {
	color: #6fad1a !important;
}

.icmq-hp-cert-card .elementor-heading-title a {
	text-decoration: none !important;
}

/* ========== SECTION: NEWS ========== */
.icmq-hp-news {
	padding: 60px 0 50px !important;
}

.icmq-hp-news .elementor-widget-loop-grid .elementor-loop-container {
	display: grid !important;
	grid-template-columns: repeat(3, 1fr) !important;
	gap: 30px !important;
}

/* News card image styling (Loop Item) */
.icmq-hp-news .elementor-loop-container .elementor-widget-image img,
.icmq-hp-news-bim .elementor-loop-container .elementor-widget-image img,
.icmq-hp-featured .elementor-loop-container .elementor-widget-image img {
	width: 100% !important;
	height: 200px !important;
	object-fit: cover !important;
	display: block !important;
}

/* ========== SECTION: NEWS BIM ========== */
.icmq-hp-news-bim {
	background-color: #f0f0f0 !important;
	padding: 60px 0 50px !important;
}

.icmq-hp-news-bim .elementor-widget-loop-grid .elementor-loop-container {
	display: grid !important;
	grid-template-columns: repeat(3, 1fr) !important;
	gap: 30px !important;
}

/* ========== SECTION: I NOSTRI SOCI ========== */
.icmq-hp-soci {
	padding: 50px 0 !important;
}

.icmq-hp-soci .elementor-image-carousel .swiper-slide img {
	max-height: 60px !important;
	width: auto !important;
	margin: 0 auto !important;
	filter: grayscale(100%) !important;
	opacity: 0.7 !important;
	transition: all 0.3s !important;
}
.icmq-hp-soci .elementor-image-carousel .swiper-slide img:hover {
	filter: grayscale(0%) !important;
	opacity: 1 !important;
}

/* ========== SECTION: NEWSLETTER ========== */
.icmq-hp-newsletter {
	background-color: #f5f5f5 !important;
	padding: 50px 0 !important;
	text-align: center !important;
}

/* ========== SECTION: CTA (RICHIEDI INFORMAZIONI) ========== */
.icmq-hp-cta {
	padding: 50px 0 !important;
	text-align: center !important;
}

/* ========== BUTTONS GENERALI HOMEPAGE ========== */
.icmq-hp-cta .elementor-button,
.icmq-hp-newsletter .elementor-button,
.icmq-hp-news .elementor-widget-button .elementor-button,
.icmq-hp-news-bim .elementor-widget-button .elementor-button {
	background-color: var(--icmq-primary, #e10101) !important;
	color: #fff !important;
	border-radius: 25px !important;
	padding: 10px 30px !important;
	font-weight: 600 !important;
	text-transform: uppercase !important;
	letter-spacing: 1px !important;
	border: 2px solid var(--icmq-primary, #e10101) !important;
	transition: all 0.3s !important;
}
.icmq-hp-cta .elementor-button:hover,
.icmq-hp-newsletter .elementor-button:hover,
.icmq-hp-news .elementor-widget-button .elementor-button:hover,
.icmq-hp-news-bim .elementor-widget-button .elementor-button:hover {
	background-color: transparent !important;
	color: var(--icmq-primary, #e10101) !important;
}

/* Service finder button */
.icmq-btn-secondary .elementor-button {
	background-color: var(--icmq-secondary, #0094b3) !important;
	color: #fff !important;
	border-radius: 25px !important;
	border: 2px solid var(--icmq-secondary, #0094b3) !important;
}
.icmq-btn-secondary .elementor-button:hover {
	background-color: transparent !important;
	color: var(--icmq-secondary, #0094b3) !important;
}

/* ========== RESPONSIVE ========== */
@media (max-width: 1024px) {
	.icmq-hp-env-card {
		flex: 0 0 calc(50% - 10px) !important;
		max-width: calc(50% - 10px) !important;
	}
	.icmq-home-svc-card {
		flex: 0 0 calc(50% - 10px) !important;
		min-width: calc(50% - 10px) !important;
	}
	.icmq-hp-chi-row {
		flex-direction: column !important;
	}
	.icmq-hp-chi-row > .e-con:first-child,
	.icmq-hp-chi-row > .e-con:last-child {
		flex: 0 0 100% !important;
		max-width: 100% !important;
	}
	.icmq-hp-cert-card {
		flex: 0 0 calc(33.333% - 20px) !important;
	}
}

@media (max-width: 767px) {
	.icmq-hp-envision {
		flex-direction: column !important;
	}
	.icmq-hp-env-card {
		flex: 0 0 100% !important;
		max-width: 100% !important;
	}
	.icmq-home-svc-card {
		flex: 0 0 85% !important;
		min-width: 85% !important;
	}
	.icmq-hp-focus-row {
		flex-direction: column !important;
	}
	.icmq-hp-focus-card {
		flex: 0 0 100% !important;
		max-width: 100% !important;
	}
	.icmq-hp-news .elementor-widget-loop-grid .elementor-loop-container,
	.icmq-hp-news-bim .elementor-widget-loop-grid .elementor-loop-container {
		grid-template-columns: 1fr !important;
	}
	.icmq-hp-cert-cards {
		flex-direction: column !important;
		align-items: center !important;
	}
	.icmq-hp-cert-card {
		flex: 0 0 80% !important;
		max-width: 80% !important;
	}
}

/* ========== TITOLO PAGINA "HOME" nascosto ========== */
body.home .entry-title,
body.home .page-title,
body.home h2.elementor-heading-title[class*="Home"] {
	display: none !important;
}
