/* =========================================================
   ASlab22 — CSS AGGIUNTIVO CONSOLIDATO
   HOME + LABORATORIO
   V7.2 — LABORATORIO IMAGE INTEGRATION
   ========================================================= */


/* =========================================================
   HEADER
   ========================================================= */

/* Desktop / tablet:
   nasconde "Contatti" dal menu principale e lascia la CTA */
@media (min-width: 768px) {

	.site-header .primary-nav__list > li:last-child {
		display: none !important;
	}

}


/* Mobile:
   nasconde la CTA e lascia "Contatti" nel menu hamburger */
@media (max-width: 767px) {

	.site-header .site-header__inner--main > .header-cta {
		display: none !important;
	}

}


/* =========================================================
   HOME / HERO
   ========================================================= */

body.home .aslab-hero,
body.home .aslab-hero > .kt-row-layout-inner,
body.home .aslab-hero > .kt-row-column-wrap {
	overflow: hidden !important;
}


body.home .aslab-hero__media,
body.home .aslab-hero__media > .kt-inside-inner-col {
	height: 100% !important;
	min-height: 100% !important;

	overflow: hidden !important;

	padding-top: 0 !important;
	padding-bottom: 0 !important;
}


body.home .aslab-hero__media > .kt-inside-inner-col {
	display: flex !important;
	align-items: stretch !important;
}


body.home .aslab-hero__media .wp-block-kadence-image,
body.home .aslab-hero__media figure,
body.home .aslab-hero__media .kb-is-ratio-image {
	display: block !important;

	width: 100% !important;

	height: 100% !important;
	min-height: 100% !important;

	margin: 0 !important;
	padding: 0 !important;

	flex: 1 1 auto !important;
}


body.home .aslab-hero__media .kb-is-ratio-image {
	padding-bottom: 0 !important;
}


body.home .aslab-hero__media img {
	display: block !important;

	width: 100% !important;

	height: 100% !important;
	min-height: 100% !important;

	object-fit: cover !important;

	object-position: 68% 58% !important;
}


@media (min-width: 1024px) {

	body.home .aslab-hero > .kt-row-column-wrap {
		align-items: stretch !important;
	}


	body.home .aslab-hero__content,
	body.home .aslab-hero__media {
		align-self: stretch !important;
	}

}


/* =========================================================
   HOME / MANIFESTO
   ========================================================= */

@media (min-width: 1024px) {

	body.home .aslab-manifesto__heading h1,
	body.home .aslab-manifesto__heading h2,
	body.home .aslab-manifesto__heading h3,
	body.home .aslab-manifesto__heading .wp-block-heading,
	body.home .aslab-manifesto__heading .aslab-title--section {
		font-size: 30px !important;
		line-height: 1.08 !important;

		letter-spacing: -0.02em !important;

		max-width: 430px !important;

		margin: 0 !important;
	}

}


@media (min-width: 768px) and (max-width: 1023px) {

	body.home .aslab-manifesto__heading h1,
	body.home .aslab-manifesto__heading h2,
	body.home .aslab-manifesto__heading h3,
	body.home .aslab-manifesto__heading .wp-block-heading,
	body.home .aslab-manifesto__heading .aslab-title--section {
		font-size: 28px !important;
		line-height: 1.1 !important;

		max-width: 420px !important;

		margin: 0 !important;
	}

}


/* =========================================================
   HOME / PORTFOLIO
   ========================================================= */

body.home .aslab-project-index .aslab-card,
body.home .aslab-project-index .aslab-card > .kt-inside-inner-col {
	border: 0 !important;
	outline: 0 !important;

	box-shadow: none !important;

	background: transparent !important;
}


@media (min-width: 1024px) {

	body.home .aslab-project-index > .kt-row-column-wrap {
		align-items: stretch !important;
	}


	body.home .aslab-project-index > .kt-row-column-wrap > .aslab-card {
		min-height: 0 !important;
	}


	body.home .aslab-project-index > .kt-row-column-wrap > .aslab-card:first-child {
		align-self: stretch !important;

		height: 100% !important;
	}


	body.home .aslab-project-index > .kt-row-column-wrap > .aslab-card:first-child > .kt-inside-inner-col {
		display: flex !important;

		flex-direction: column !important;

		height: 100% !important;
		min-height: 0 !important;
	}


	body.home .aslab-project-index > .kt-row-column-wrap > .aslab-card:first-child .wp-block-kadence-image,
	body.home .aslab-project-index > .kt-row-column-wrap > .aslab-card:first-child figure,
	body.home .aslab-project-index > .kt-row-column-wrap > .aslab-card:first-child .kb-is-ratio-image {
		flex: 1 1 auto !important;

		height: 100% !important;
		min-height: 0 !important;

		margin: 0 !important;
	}


	body.home .aslab-project-index > .kt-row-column-wrap > .aslab-card:first-child .kb-is-ratio-image {
		padding-bottom: 0 !important;
	}


	body.home .aslab-project-index > .kt-row-column-wrap > .aslab-card:first-child img {
		width: 100% !important;
		height: 100% !important;

		object-fit: cover !important;
		object-position: 50% 58% !important;
	}

}


/* =========================================================
   HOME / PROCESSI
   ========================================================= */

body.home .aslab-process img,
body.home .aslab-process .wp-block-kadence-image img {
	object-position: 50% 50% !important;
}


/* =========================================================
   HOME / MATERIALI — DESKTOP
   ========================================================= */

@media (min-width: 1024px) {

	body.home .aslab-material > .kt-row-column-wrap {
		grid-template-columns:
			minmax(0, 48fr)
			minmax(0, 52fr) !important;

		gap: clamp(22px, 2.2vw, 32px) !important;

		align-items: center !important;
	}


	body.home .aslab-material__media,
	body.home .aslab-material__content,
	body.home .aslab-material__media > .kt-inside-inner-col,
	body.home .aslab-collage-material,
	body.home .aslab-collage-material > .kt-row-column-wrap,
	body.home .aslab-collage-material > .kt-row-column-wrap > .wp-block-kadence-column,
	body.home .aslab-collage-material > .kt-row-column-wrap > .wp-block-kadence-column > .kt-inside-inner-col {
		width: 100% !important;

		min-width: 0 !important;
		max-width: 100% !important;

		box-sizing: border-box !important;
	}


	body.home .aslab-material__media {
		overflow: hidden !important;
	}


	body.home .aslab-collage-material.wp-block-kadence-rowlayout > .kt-row-column-wrap {
		grid-template-columns:
			minmax(0, 1.18fr)
			minmax(0, 0.82fr) !important;

		gap: 14px !important;

		align-items: center !important;
	}


	body.home .aslab-collage-material figure,
	body.home .aslab-collage-material .wp-block-kadence-image,
	body.home .aslab-collage-material .kb-is-ratio-image {
		width: 100% !important;

		min-width: 0 !important;
		max-width: 100% !important;

		margin: 0 !important;
	}


	body.home .aslab-collage-material > .kt-row-column-wrap > .wp-block-kadence-column:first-child img {
		width: 100% !important;
		height: 100% !important;

		object-fit: cover !important;

		object-position: 58% 50% !important;
	}


	body.home .aslab-material__content {
		position: relative !important;
		z-index: 2 !important;

		display: flex !important;

		align-self: stretch !important;

		padding-left: clamp(8px, 0.8vw, 14px) !important;
	}


	body.home .aslab-material__content > .kt-inside-inner-col {
		display: flex !important;

		flex-direction: column !important;

		justify-content: center !important;
		align-items: flex-start !important;

		width: 100% !important;

		min-width: 0 !important;
		min-height: 100% !important;
	}


	body.home .aslab-material__content h1,
	body.home .aslab-material__content h2,
	body.home .aslab-material__content h3,
	body.home .aslab-material__content .wp-block-heading,
	body.home .aslab-material__content .aslab-title--section {
		width: 100% !important;

		max-width: 680px !important;

		font-size: 34px !important;
		line-height: 1.06 !important;

		margin-bottom: 18px !important;
	}


	body.home .aslab-material__content p,
	body.home .aslab-material__content .aslab-copy,
	body.home .aslab-material__content .aslab-material__note {
		width: 100% !important;

		max-width: 680px !important;
	}


	body.home .aslab-material__content p {
		font-size: 16px !important;
		line-height: 1.55 !important;

		margin-bottom: 14px !important;
	}

}


/* =========================================================
   HOME / MATERIALI — TABLET
   ========================================================= */

@media (min-width: 768px) and (max-width: 1023px) {

	body.home .aslab-collage-material > .kt-row-column-wrap {
		display: grid !important;

		grid-template-columns:
			minmax(0, 1.15fr)
			minmax(0, 0.85fr) !important;

		gap: 16px !important;

		align-items: stretch !important;
	}


	body.home .aslab-collage-material > .kt-row-column-wrap > .wp-block-kadence-column {
		min-width: 0 !important;

		width: 100% !important;
		max-width: 100% !important;
	}


	body.home .aslab-collage-material > .kt-row-column-wrap > .wp-block-kadence-column:first-child,
	body.home .aslab-collage-material > .kt-row-column-wrap > .wp-block-kadence-column:first-child > .kt-inside-inner-col,
	body.home .aslab-collage-material > .kt-row-column-wrap > .wp-block-kadence-column:first-child figure,
	body.home .aslab-collage-material > .kt-row-column-wrap > .wp-block-kadence-column:first-child .wp-block-kadence-image,
	body.home .aslab-collage-material > .kt-row-column-wrap > .wp-block-kadence-column:first-child .kb-is-ratio-image {
		height: 100% !important;

		min-height: 0 !important;

		width: 100% !important;

		margin: 0 !important;
	}


	body.home .aslab-collage-material > .kt-row-column-wrap > .wp-block-kadence-column:first-child img {
		width: 100% !important;
		height: 100% !important;

		object-fit: cover !important;

		object-position: 58% 50% !important;
	}


	body.home .aslab-collage-material > .kt-row-column-wrap > .wp-block-kadence-column:nth-child(2) > .kt-inside-inner-col {
		display: grid !important;

		grid-template-rows:
			minmax(0, 1fr)
			minmax(0, 1fr) !important;

		gap: 16px !important;

		height: 100% !important;

		min-height: 0 !important;
	}


	body.home .aslab-collage-material > .kt-row-column-wrap > .wp-block-kadence-column:nth-child(2) figure,
	body.home .aslab-collage-material > .kt-row-column-wrap > .wp-block-kadence-column:nth-child(2) .wp-block-kadence-image,
	body.home .aslab-collage-material > .kt-row-column-wrap > .wp-block-kadence-column:nth-child(2) .kb-is-ratio-image {
		height: 100% !important;

		min-height: 0 !important;

		width: 100% !important;

		margin: 0 !important;
	}


	body.home .aslab-collage-material > .kt-row-column-wrap > .wp-block-kadence-column:nth-child(2) img {
		width: 100% !important;
		height: 100% !important;

		object-fit: cover !important;
	}

}


/* =========================================================
   HOME / CONTATTI + NOTE
   ========================================================= */

body.home .aslab-contact {
	background-color: #1a1816 !important;

	color: #f7f3ed !important;

	border: 0 !important;
	outline: 0 !important;

	box-shadow: none !important;

	border-radius: 0 !important;
}


body.home .aslab-contact__inner,
body.home .aslab-contact__inner > .kt-inside-inner-col,
body.home .aslab-contact__grid,
body.home .aslab-contact__grid > .kt-row-column-wrap {
	background: transparent !important;

	border: 0 !important;
	outline: 0 !important;

	box-shadow: none !important;

	border-radius: 0 !important;
}


body.home .aslab-contact__grid .kt-row-layout-inner,
body.home .aslab-contact__grid .wp-block-kadence-column,
body.home .aslab-contact__grid .wp-block-kadence-column > .kt-inside-inner-col {
	background: transparent !important;

	box-shadow: none !important;
}


body.home .aslab-contact h1,
body.home .aslab-contact h2,
body.home .aslab-contact h3,
body.home .aslab-contact h4,
body.home .aslab-contact p,
body.home .aslab-contact .aslab-title,
body.home .aslab-contact .aslab-copy {
	color: #f7f3ed !important;
}


body.home .aslab-contact .aslab-eyebrow {
	color: #a45d3d !important;

	font-size: 13px !important;
	line-height: 1.3 !important;

	letter-spacing: 0.12em !important;

	font-weight: 600 !important;
}


body.home .aslab-contact__grid > .kt-row-column-wrap {
	align-items: stretch !important;
}


body.home .aslab-contact__column {
	display: flex !important;

	align-self: stretch !important;

	min-height: 100% !important;
}


body.home .aslab-contact__column > .kt-inside-inner-col {
	display: flex !important;

	flex-direction: column !important;

	align-items: flex-start !important;

	width: 100% !important;

	min-height: 100% !important;
}


@media (min-width: 768px) {

	body.home .aslab-contact__column--notes {
		border-left:
			1px solid rgba(247, 243, 237, 0.14) !important;
	}

}


@media (min-width: 1024px) {

	body.home .aslab-contact__column--contact .aslab-title--section {
		font-size: 42px !important;
		line-height: 1.04 !important;

		max-width: 650px !important;
	}


	body.home .aslab-contact__notes-title {
		font-size: 36px !important;
		line-height: 1.07 !important;

		max-width: 600px !important;
	}


	body.home .aslab-contact__column--contact .aslab-copy,
	body.home .aslab-contact__notes-copy {
		font-size: 17px !important;
		line-height: 1.6 !important;
	}


	body.home .aslab-contact__column--contact .aslab-copy {
		max-width: 650px !important;
	}


	body.home .aslab-contact__notes-copy {
		max-width: 600px !important;
	}

}


body.home .aslab-contact__cta {
	margin-top: auto !important;

	padding-top: 22px !important;
}


body.home .aslab-contact__cta .kb-button,
body.home .aslab-contact__cta .kt-button,
body.home .aslab-contact__cta .wp-block-button__link {
	border-radius: 999px !important;
}


@media (min-width: 768px) and (max-width: 1023px) {

	body.home .aslab-contact .aslab-eyebrow {
		font-size: 13px !important;
	}


	body.home .aslab-contact__column--contact .aslab-title--section {
		font-size: 38px !important;
		line-height: 1.05 !important;
	}


	body.home .aslab-contact__notes-title {
		font-size: 34px !important;
		line-height: 1.08 !important;
	}


	body.home .aslab-contact__column--contact .aslab-copy,
	body.home .aslab-contact__notes-copy {
		font-size: 16px !important;
		line-height: 1.6 !important;
	}

}


@media (max-width: 767px) {

	body.home .aslab-contact__column--notes {
		border-left: 0 !important;

		border-top:
			1px solid rgba(247, 243, 237, 0.14) !important;

		padding-top: 28px !important;
	}


	body.home .aslab-contact .aslab-eyebrow {
		font-size: 12px !important;
	}


	body.home .aslab-contact__column--contact .aslab-title--section {
		font-size: 32px !important;
		line-height: 1.08 !important;
	}


	body.home .aslab-contact__notes-title {
		font-size: 30px !important;
		line-height: 1.1 !important;
	}


	body.home .aslab-contact__column--contact .aslab-copy,
	body.home .aslab-contact__notes-copy {
		font-size: 15px !important;
		line-height: 1.6 !important;
	}


	body.home .aslab-contact__cta {
		margin-top: 0 !important;

		padding-top: 8px !important;
	}

}


/* =========================================================
   HOME / CONTATTI + NOTE
   FIX FONDO
   ========================================================= */

body.home .aslab-contact,
body.home .aslab-contact--v3,
body.home .aslab-contact.kt-row-layout-inner,
body.home .aslab-contact--v3.kt-row-layout-inner,
body.home .aslab-contact > .kt-row-column-wrap,
body.home .aslab-contact--v3 > .kt-row-column-wrap,
body.home .aslab-contact .kt-row-layout-inner,
body.home .aslab-contact .kt-row-column-wrap,
body.home .aslab-contact__inner,
body.home .aslab-contact__inner > .kt-inside-inner-col,
body.home .aslab-contact__grid,
body.home .aslab-contact__grid > .kt-row-column-wrap,
body.home .aslab-contact__grid .wp-block-kadence-column,
body.home .aslab-contact__grid .wp-block-kadence-column > .kt-inside-inner-col {
	background-color: #1a1816 !important;
	background-image: none !important;

	box-shadow: none !important;
}


body.home .aslab-contact::before,
body.home .aslab-contact::after,
body.home .aslab-contact--v3::before,
body.home .aslab-contact--v3::after,
body.home .aslab-contact .kt-row-layout-overlay,
body.home .aslab-contact--v3 .kt-row-layout-overlay {
	background: #1a1816 !important;
	background-image: none !important;
	opacity: 1 !important;
}


body.home .aslab-contact,
body.home .aslab-contact--v3,
body.home .aslab-contact__inner,
body.home .aslab-contact__grid {
	border: 0 !important;
	outline: 0 !important;
	border-radius: 0 !important;
	box-shadow: none !important;
}


body.home .aslab-contact h1,
body.home .aslab-contact h2,
body.home .aslab-contact h3,
body.home .aslab-contact p,
body.home .aslab-contact--v3 h1,
body.home .aslab-contact--v3 h2,
body.home .aslab-contact--v3 h3,
body.home .aslab-contact--v3 p {
	color: #f7f3ed !important;
}


body.home .aslab-contact .aslab-eyebrow,
body.home .aslab-contact--v3 .aslab-eyebrow {
	color: #a45d3d !important;
}

/* =========================================================
   LABORATORIO — V6.6 CONSOLIDATO
   Hero + identità integrata + processo + banco + Portoscuso
   ========================================================= */


/* ---------------------------------------------------------
   HERO — full bleed reale
   --------------------------------------------------------- */

.aslab-lab-hero-fullbleed {
	margin: 0 !important;
	padding: 0 0 22px 0 !important;
	background: #171513 !important;
	overflow: hidden !important;
}

.entry-content > .aslab-lab-hero-fullbleed:first-child {
	margin-top: 0 !important;
	padding-top: 0 !important;
}

.aslab-lab-hero-fullbleed > .kt-row-column-wrap,
.aslab-lab-hero-fullbleed > .kt-row-column-wrap > .wp-block-kadence-column,
.aslab-lab-hero-fullbleed > .kt-row-column-wrap > .wp-block-kadence-column > .kt-inside-inner-col {
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	padding: 0 !important;
}


/* Immagine hero edge-to-edge */

.aslab-lab-hero-fullbleed .aslab-lab-hero-fullbleed__image {
	display: block !important;
	width: 100vw !important;
	max-width: none !important;

	margin: 0 calc(50% - 50vw) !important;
	padding: 0 !important;

	border: 0 !important;
	border-radius: 0 !important;
}

.aslab-lab-hero-fullbleed .aslab-lab-hero-fullbleed__image .kb-is-ratio-image {
	width: 100% !important;
	height: clamp(420px, 39vw, 600px) !important;

	min-height: 0 !important;
	padding-bottom: 0 !important;

	overflow: hidden !important;

	border: 0 !important;
	border-radius: 0 !important;
}

.aslab-lab-hero-fullbleed .aslab-lab-hero-fullbleed__image img {
	display: block !important;

	width: 100% !important;
	height: 100% !important;
	max-width: none !important;

	object-fit: cover !important;
	object-position: 50% 58% !important;

	border: 0 !important;
	border-radius: 0 !important;
}


/* Eyebrow principale */

.aslab-lab-hero-fullbleed > .kt-row-column-wrap > .wp-block-kadence-column > .kt-inside-inner-col > .aslab-eyebrow {
	width: min(1280px, calc(100% - 64px)) !important;

	margin: 24px auto 0 !important;

	text-align: center !important;

	font-family: "Inter", Arial, sans-serif !important;
	font-size: 12px !important;
	font-weight: 600 !important;
	line-height: 1.3 !important;

	letter-spacing: 0.12em !important;
	text-transform: uppercase !important;

	color: #a45d3d !important;
}


/* Titolo hero */

.aslab-lab-hero-fullbleed .aslab-lab-hero__title,
.aslab-lab-hero-fullbleed .aslab-title--hero {
	display: block !important;

	width: min(1320px, calc(100% - 72px)) !important;
	max-width: 1280px !important;

	margin: 12px auto 0 !important;
	padding: 0 !important;

	font-family: "Space Grotesk", "Inter", Arial, sans-serif !important;
	font-size: clamp(38px, 3.15vw, 48px) !important;
	font-weight: 600 !important;
	font-style: normal !important;
	line-height: 1.08 !important;

	letter-spacing: -0.03em !important;
	text-transform: none !important;

	text-align: center !important;
	text-wrap: balance !important;

	color: #f7f3ed !important;
}


/* Intro hero */

.aslab-lab-hero-fullbleed .aslab-lab-hero__intro {
	display: block !important;

	width: min(1180px, calc(100% - 96px)) !important;
	max-width: 1120px !important;

	margin: 20px auto 0 !important;
	padding: 0 !important;

	font-family: "Inter", Arial, sans-serif !important;
	font-size: 18px !important;
	font-weight: 400 !important;
	font-style: normal !important;
	line-height: 1.6 !important;

	letter-spacing: 0 !important;
	text-transform: none !important;

	text-align: center !important;
	text-wrap: pretty !important;

	color: #d8ccbd !important;
}


/* ---------------------------------------------------------
   IDENTITÀ — integrata nell'hero
   Due testi complementari, non una seconda sezione.
   --------------------------------------------------------- */

.aslab-lab-hero-fullbleed .aslab-lab-about-inline {
	display: none !important;
}

.aslab-lab-hero-fullbleed .aslab-lab-identity-grid {
	width: min(1120px, calc(100% - 64px)) !important;
	max-width: 1120px !important;

	margin: 30px auto 0 !important;
	padding: 28px 0 0 !important;

	border-top: 1px solid rgba(247, 243, 237, 0.14) !important;

	background: transparent !important;
}

.aslab-lab-hero-fullbleed .aslab-lab-identity-grid > .kt-row-column-wrap {
	display: grid !important;

	grid-template-columns:
		minmax(0, 1fr)
		minmax(0, 1fr) !important;

	gap: clamp(38px, 4.5vw, 64px) !important;
	align-items: start !important;

	width: 100% !important;
	max-width: none !important;

	margin: 0 !important;
	padding: 0 !important;
}

.aslab-lab-hero-fullbleed .aslab-lab-identity-grid .wp-block-kadence-column,
.aslab-lab-hero-fullbleed .aslab-lab-identity-grid .kt-inside-inner-col {
	width: 100% !important;
	max-width: none !important;

	margin: 0 !important;
	padding: 0 !important;

	background: transparent !important;
}

.aslab-lab-hero-fullbleed .aslab-lab-identity-grid .aslab-copy {
	width: 100% !important;
	max-width: 520px !important;

	margin: 0 !important;

	font-family: "Inter", Arial, sans-serif !important;
	font-size: 17px !important;
	font-weight: 400 !important;
	line-height: 1.62 !important;

	text-align: left !important;

	color: #d8ccbd !important;
}

.aslab-lab-hero-fullbleed .aslab-lab-identity-grid > .kt-row-column-wrap > .wp-block-kadence-column:last-child .aslab-copy {
	margin-left: auto !important;
}

.aslab-lab-hero-fullbleed .aslab-lab-identity-closing {
	width: min(900px, calc(100% - 64px)) !important;
	max-width: 900px !important;

	margin: 24px auto 0 !important;

	font-family: "Space Grotesk", "Inter", Arial, sans-serif !important;
	font-size: 20px !important;
	font-weight: 600 !important;
	line-height: 1.35 !important;

	text-align: center !important;

	color: #c77a54 !important;
}


/* ---------------------------------------------------------
   FILOSOFIA DELLA MATERIA — V7.0
   Sezione editoriale alternata. Le aree media sono placeholder
   pronti per essere sostituiti da immagini Kadence.
   --------------------------------------------------------- */

.aslab-lab-philosophy {
	position: relative !important;
	overflow: hidden !important;

	margin: 0 !important;

	background: #d8ccbd !important;
	color: #302c28 !important;
}

.aslab-lab-philosophy > .kt-row-column-wrap {
	width: min(1240px, calc(100% - 64px)) !important;
	max-width: 1240px !important;

	margin: 0 auto !important;
	padding: 0 !important;
}

.aslab-lab-philosophy > .kt-row-column-wrap
> .wp-block-kadence-column
> .kt-inside-inner-col {
	row-gap: 14px !important;
}

.aslab-lab-philosophy > .kt-row-column-wrap
> .wp-block-kadence-column
> .kt-inside-inner-col
> .aslab-title--section {
	width: min(880px, 100%) !important;
	max-width: 880px !important;

	margin: 0 auto !important;

	color: #302c28 !important;
}

.aslab-lab-philosophy__intro {
	width: min(940px, 100%) !important;
	max-width: 940px !important;

	margin-left: auto !important;
	margin-right: auto !important;

	text-align: center !important;
	text-wrap: pretty !important;
}

.aslab-lab-philosophy__row {
	width: 100% !important;
	max-width: 1120px !important;

	margin: 0 auto !important;

	border-top: 1px solid rgba(48, 44, 40, 0.12) !important;
}

.aslab-lab-philosophy__row > .kt-row-column-wrap {
	width: 100% !important;
	max-width: none !important;

	margin: 0 !important;
	padding: 0 !important;

	align-items: center !important;
}

.aslab-lab-philosophy__text > .kt-inside-inner-col {
	width: 100% !important;
	max-width: 560px !important;

	margin: 0 auto !important;

	justify-content: center !important;
}

.aslab-lab-philosophy__text h3 {
	margin: 0 !important;

	color: #302c28 !important;

	font-family: "Space Grotesk", "Inter", Arial, sans-serif !important;
	font-size: 32px !important;
	font-weight: 600 !important;
	line-height: 1.08 !important;
}

.aslab-lab-philosophy__text p {
	margin-top: 0 !important;
	margin-bottom: 0 !important;

	color: #514941 !important;

	font-family: "Inter", Arial, sans-serif !important;
	font-size: 16px !important;
	line-height: 1.56 !important;
}

/* Placeholder editoriale per le immagini future */
.aslab-lab-philosophy__media,
.aslab-lab-philosophy__media > .kt-inside-inner-col {
	width: 100% !important;
	min-width: 0 !important;
}

.aslab-lab-philosophy__media > .kt-inside-inner-col {
	display: flex !important;

	align-items: center !important;
	justify-content: center !important;

	min-height: 340px !important;

	padding: 24px !important;

	background:
		linear-gradient(
			135deg,
			rgba(48, 44, 40, 0.08),
			rgba(127, 67, 45, 0.10)
		) !important;

	border: 1px dashed rgba(48, 44, 40, 0.24) !important;
	border-radius: 18px !important;
}

.aslab-lab-philosophy__placeholder-label {
	margin: 0 !important;

	color: #7f6f62 !important;

	font-family: "Inter", Arial, sans-serif !important;
	font-size: 12px !important;
	font-weight: 600 !important;
	line-height: 1.3 !important;

	letter-spacing: 0.12em !important;
	text-transform: uppercase !important;

	text-align: center !important;
}

/* Quando il placeholder viene sostituito da una vera immagine */
.aslab-lab-philosophy__media .wp-block-kadence-image,
.aslab-lab-philosophy__media figure,
.aslab-lab-philosophy__media .kb-is-ratio-image {
	width: 100% !important;
	max-width: none !important;

	margin: 0 !important;
}

.aslab-lab-philosophy__media:has(.wp-block-kadence-image) > .kt-inside-inner-col {
	min-height: 0 !important;
	padding: 0 !important;

	background: transparent !important;
	border: 0 !important;
}

.aslab-lab-philosophy__media .kb-is-ratio-image {
	position: relative !important;

	aspect-ratio: 4 / 3 !important;

	height: auto !important;
	min-height: 0 !important;

	padding-bottom: 0 !important;

	overflow: hidden !important;

	border-radius: 18px !important;
}

.aslab-lab-philosophy__media .kb-is-ratio-image img {
	position: absolute !important;
	inset: 0 !important;

	width: 100% !important;
	height: 100% !important;

	object-fit: cover !important;
}


.aslab-lab-philosophy__closing {
	width: min(860px, 100%) !important;
	max-width: 860px !important;

	margin: 12px auto 0 !important;

	color: #7f432d !important;

	text-align: center !important;
}


/* Desktop */
@media (min-width: 1024px) {

	.aslab-lab-philosophy__row > .kt-row-column-wrap {
		display: grid !important;

		grid-template-columns:
			minmax(0, 1fr)
			minmax(0, 1fr) !important;

		gap: clamp(44px, 4vw, 64px) !important;
	}

	.aslab-lab-philosophy__row--media-left
	.aslab-lab-philosophy__text
	> .kt-inside-inner-col {
		margin-left: 0 !important;
		margin-right: auto !important;
	}

	.aslab-lab-philosophy__row--media-right
	.aslab-lab-philosophy__text
	> .kt-inside-inner-col {
		margin-left: auto !important;
		margin-right: 0 !important;
	}

}


/* Tablet */
@media (min-width: 768px) and (max-width: 1023px) {

	.aslab-lab-philosophy > .kt-row-column-wrap {
		width: calc(100% - 48px) !important;
	}

	.aslab-lab-philosophy__media > .kt-inside-inner-col {
		min-height: 270px !important;
	}

	.aslab-lab-philosophy__text h3 {
		font-size: 28px !important;
	}

	.aslab-lab-philosophy__text p {
		font-size: 15px !important;
		line-height: 1.58 !important;
	}

}


/* Mobile */
@media (max-width: 767px) {

	.aslab-lab-philosophy > .kt-row-column-wrap {
		width: calc(100% - 32px) !important;
	}

	.aslab-lab-philosophy__intro {
		text-align: left !important;
	}

	.aslab-lab-philosophy__row {
		padding-top: 18px !important;
		padding-bottom: 18px !important;
	}

	.aslab-lab-philosophy__row > .kt-row-column-wrap {
		display: grid !important;
		grid-template-columns: 1fr !important;

		gap: 18px !important;
	}

	.aslab-lab-philosophy__media > .kt-inside-inner-col {
		min-height: 220px !important;
	}

	.aslab-lab-philosophy__text > .kt-inside-inner-col {
		max-width: none !important;
	}

	.aslab-lab-philosophy__text h3 {
		font-size: 26px !important;
	}

	.aslab-lab-philosophy__text p {
		font-size: 15px !important;
		line-height: 1.58 !important;
	}

}


/* ---------------------------------------------------------
   COME LAVORIAMO — V6.9
   Immagini ripristinate + transizione più stretta + ritmo compatto.
   --------------------------------------------------------- */

.aslab-lab-v5-method {
	position: relative !important;
	overflow: hidden !important;

	margin-top: 0 !important;
	padding-top: 22px !important;
	padding-bottom: 18px !important;

	background: #f7f3ed !important;
	color: #302c28 !important;
}

/* Contenitore generale */
.aslab-lab-v5-method > .kt-row-column-wrap {
	width: min(1240px, calc(100% - 64px)) !important;
	max-width: 1240px !important;

	margin: 0 auto !important;
	padding: 0 !important;
}

/* Riduce il ritmo verticale imposto dal blocco Kadence */
.aslab-lab-v5-method > .kt-row-column-wrap
> .wp-block-kadence-column
> .kt-inside-inner-col {
	row-gap: 12px !important;
}

/* Eyebrow */
.aslab-lab-v5-method .aslab-eyebrow {
	color: #a45d3d !important;
}

/* Titolo sezione */
.aslab-lab-v5-method
> .kt-row-column-wrap
> .wp-block-kadence-column
> .kt-inside-inner-col
> .aslab-title--section {
	width: min(860px, 100%) !important;
	max-width: 860px !important;

	margin: 0 auto !important;

	color: #302c28 !important;
}

/* Introduzione: più larga e meno alta */
.aslab-lab-v5-method
> .kt-row-column-wrap
> .wp-block-kadence-column
> .kt-inside-inner-col
> .aslab-copy {
	width: min(980px, 100%) !important;
	max-width: 980px !important;

	margin: 0 auto 4px !important;

	color: #5f574f !important;

	font-size: 17px !important;
	line-height: 1.5 !important;

	text-align: center !important;
	text-wrap: pretty !important;
}


/* =========================================================
   PASSAGGI
   ========================================================= */

.aslab-lab-v5-method .aslab-lab-v5-step {
	width: 100% !important;
	max-width: 1120px !important;

	margin: 0 auto !important;
	padding: 18px 0 !important;

	border-top: 1px solid rgba(48, 44, 40, 0.10) !important;
}

/* Primo step ancora più vicino all'introduzione */
.aslab-lab-v5-method .aslab-lab-v5-step--observe {
	padding-top: 16px !important;
}

/* Ultimo step senza fascia vuota finale */
.aslab-lab-v5-method .aslab-lab-v5-step--stop {
	padding-bottom: 0 !important;
	margin-bottom: 0 !important;
}

.aslab-lab-v5-method .aslab-lab-v5-step > .kt-row-column-wrap {
	width: 100% !important;
	max-width: none !important;

	margin: 0 !important;
	padding: 0 !important;

	align-items: center !important;
}


/* =========================================================
   FIX IMMAGINI
   Le immagini sono presenti nel markup: qui forziamo
   una geometria 4:3 stabile, evitando wrapper a quota zero.
   ========================================================= */

.aslab-lab-v5-method .aslab-lab-v5-step .wp-block-kadence-image,
.aslab-lab-v5-method .aslab-lab-v5-step figure {
	display: block !important;

	width: 100% !important;
	max-width: 500px !important;

	margin: 0 auto !important;
	padding: 0 !important;

	visibility: visible !important;
	opacity: 1 !important;
}

.aslab-lab-v5-method .aslab-lab-v5-step .kb-is-ratio-image {
	position: relative !important;
	display: block !important;

	width: 100% !important;
	height: auto !important;
	aspect-ratio: 4 / 3 !important;

	min-height: 280px !important;

	padding-bottom: 0 !important;

	overflow: hidden !important;

	border-radius: 18px !important;

	visibility: visible !important;
	opacity: 1 !important;
}

.aslab-lab-v5-method .aslab-lab-v5-step .kb-is-ratio-image img,
.aslab-lab-v5-method .aslab-lab-v5-step figure img {
	position: absolute !important;
	inset: 0 !important;

	display: block !important;

	width: 100% !important;
	height: 100% !important;
	max-width: none !important;

	object-fit: cover !important;

	visibility: visible !important;
	opacity: 1 !important;
}

/* Mantiene i crop già scelti per le tre immagini */
.aslab-lab-v5-method .kb-image9_4b57a3-0d img {
	object-position: 54% 44% !important;
}

.aslab-lab-v5-method .kb-image9_a2e09d-83 img {
	object-position: 42% 52% !important;
}

.aslab-lab-v5-method .kb-image9_e3250d-6f img {
	object-position: 56% 48% !important;
}


/* =========================================================
   TESTI DEI TRE PASSAGGI
   ========================================================= */

.aslab-lab-v5-method
.aslab-lab-v5-step
.wp-block-kadence-column
> .kt-inside-inner-col {
	width: 100% !important;
	max-width: 540px !important;

	margin-left: auto !important;
	margin-right: auto !important;

	row-gap: 8px !important;

	justify-content: center !important;
}

.aslab-lab-v5-method .aslab-lab-v5-step h3 {
	width: 100% !important;
	max-width: 540px !important;

	margin: 0 !important;

	color: #302c28 !important;

	font-family: "Space Grotesk", "Inter", Arial, sans-serif !important;
	font-size: 32px !important;
	font-weight: 600 !important;
	line-height: 1.08 !important;
}

.aslab-lab-v5-method .aslab-lab-v5-step p {
	width: 100% !important;
	max-width: 540px !important;

	margin-top: 0 !important;
	margin-bottom: 0 !important;

	color: #5f574f !important;

	font-family: "Inter", Arial, sans-serif !important;
	font-size: 16px !important;
	line-height: 1.52 !important;
}

/* Eyebrow interno ai singoli passaggi */
.aslab-lab-v5-method .aslab-lab-v5-step .aslab-eyebrow {
	margin-bottom: 1px !important;
}

/* Frase-prova conclusiva */
.aslab-lab-v5-method
.aslab-lab-v5-step
p[class*="labv64_proof"] {
	margin-top: 5px !important;

	color: #a45d3d !important;

	font-family: "Space Grotesk", "Inter", Arial, sans-serif !important;
	font-size: 17px !important;
	font-weight: 600 !important;
	line-height: 1.3 !important;
}


/* =========================================================
   DESKTOP
   ========================================================= */

@media (min-width: 1024px) {

	.aslab-lab-v5-method .aslab-lab-v5-step > .kt-row-column-wrap {
		display: grid !important;

		grid-template-columns:
			minmax(0, 0.96fr)
			minmax(0, 1.04fr) !important;

		gap: clamp(42px, 4vw, 62px) !important;
	}

	/* L'immagine occupa davvero la sua colonna */
	.aslab-lab-v5-method
	.aslab-lab-v5-step
	.wp-block-kadence-column:has(.wp-block-kadence-image)
	> .kt-inside-inner-col {
		max-width: 500px !important;
	}

	/* Testo verso il centro della composizione */
	.aslab-lab-v5-method
	.aslab-lab-v5-step--observe
	> .kt-row-column-wrap
	> .wp-block-kadence-column:last-child
	> .kt-inside-inner-col,
	.aslab-lab-v5-method
	.aslab-lab-v5-step--stop
	> .kt-row-column-wrap
	> .wp-block-kadence-column:last-child
	> .kt-inside-inner-col {
		margin-left: 0 !important;
		margin-right: auto !important;
	}

	.aslab-lab-v5-method
	.aslab-lab-v5-step--intervene
	> .kt-row-column-wrap
	> .wp-block-kadence-column:first-child
	> .kt-inside-inner-col {
		margin-left: auto !important;
		margin-right: 0 !important;
	}

}


/* =========================================================
   TABLET
   ========================================================= */

@media (min-width: 768px) and (max-width: 1023px) {

	.aslab-lab-v5-method {
		padding-top: 20px !important;
		padding-bottom: 16px !important;
	}

	.aslab-lab-v5-method > .kt-row-column-wrap {
		width: calc(100% - 48px) !important;
	}

	.aslab-lab-v5-method .aslab-lab-v5-step {
		padding: 16px 0 !important;
	}

	.aslab-lab-v5-method .aslab-lab-v5-step--stop {
		padding-bottom: 0 !important;
	}

	.aslab-lab-v5-method .aslab-lab-v5-step .kb-is-ratio-image {
		min-height: 240px !important;
	}

	.aslab-lab-v5-method .aslab-lab-v5-step h3 {
		font-size: 28px !important;
	}

	.aslab-lab-v5-method .aslab-lab-v5-step p {
		font-size: 15px !important;
		line-height: 1.54 !important;
	}

}


/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 767px) {

	.aslab-lab-v5-method {
		padding-top: 18px !important;
		padding-bottom: 14px !important;
	}

	.aslab-lab-v5-method > .kt-row-column-wrap {
		width: calc(100% - 32px) !important;
	}

	.aslab-lab-v5-method
	> .kt-row-column-wrap
	> .wp-block-kadence-column
	> .kt-inside-inner-col
	> .aslab-copy {
		text-align: left !important;

		font-size: 15px !important;
		line-height: 1.55 !important;
	}

	.aslab-lab-v5-method .aslab-lab-v5-step {
		padding: 15px 0 !important;
	}

	.aslab-lab-v5-method .aslab-lab-v5-step--stop {
		padding-bottom: 0 !important;
	}

	.aslab-lab-v5-method .aslab-lab-v5-step .wp-block-kadence-image,
	.aslab-lab-v5-method .aslab-lab-v5-step figure {
		max-width: none !important;
	}

	.aslab-lab-v5-method .aslab-lab-v5-step .kb-is-ratio-image {
		min-height: 0 !important;
		aspect-ratio: 4 / 3 !important;
	}

	.aslab-lab-v5-method .aslab-lab-v5-step h3 {
		font-size: 26px !important;
	}

	.aslab-lab-v5-method .aslab-lab-v5-step p {
		font-size: 15px !important;
		line-height: 1.56 !important;
	}

}


/* ---------------------------------------------------------
   IL BANCO — V7.0
   Più equilibrio tra racconto e collage, meno spazio passivo.
   --------------------------------------------------------- */

.aslab-lab-v5-bench {
	overflow: hidden !important;

	padding-top: 50px !important;
	padding-bottom: 50px !important;
}

.aslab-lab-v5-bench .aslab-copy {
	width: 100% !important;
	max-width: 510px !important;
}

.aslab-lab-v5-bench
> .kt-row-column-wrap
> .wp-block-kadence-column:first-child
> .kt-inside-inner-col {
	row-gap: 12px !important;
}

.aslab-lab-v5-bench .aslab-lab-bench__media,
.aslab-lab-v5-bench .aslab-lab-bench__media > .kt-inside-inner-col {
	width: 100% !important;
	min-width: 0 !important;
}

@media (min-width: 1024px) {

	.aslab-lab-v5-bench > .kt-row-column-wrap {
		display: grid !important;

		grid-template-columns:
			minmax(0, 44fr)
			minmax(0, 56fr) !important;

		gap: clamp(38px, 3.8vw, 56px) !important;

		align-items: center !important;
	}

	.aslab-lab-v5-bench
	> .kt-row-column-wrap
	> .wp-block-kadence-column:first-child
	> .kt-inside-inner-col {
		max-width: 520px !important;

		margin-left: 0 !important;
		margin-right: auto !important;

		justify-content: center !important;
	}

	.aslab-lab-v5-bench .aslab-lab-bench__media > .kt-inside-inner-col {
		display: flex !important;
		align-items: center !important;
	}

	.aslab-lab-v5-bench
	.aslab-lab-bench__media
	.wp-block-kadence-rowlayout {
		width: 100% !important;
	}

	.aslab-lab-v5-bench
	.aslab-lab-bench__media
	.wp-block-kadence-rowlayout
	> .kt-row-column-wrap {
		display: grid !important;

		grid-template-columns:
			minmax(0, 1fr)
			minmax(0, 1fr) !important;

		gap: 16px !important;

		align-items: stretch !important;
	}

	/* Immagine verticale sinistra */
	.aslab-lab-v5-bench
	.aslab-lab-bench__media
	.wp-block-kadence-rowlayout
	> .kt-row-column-wrap
	> .wp-block-kadence-column:first-child,
	.aslab-lab-v5-bench
	.aslab-lab-bench__media
	.wp-block-kadence-rowlayout
	> .kt-row-column-wrap
	> .wp-block-kadence-column:first-child
	> .kt-inside-inner-col,
	.aslab-lab-v5-bench
	.aslab-lab-bench__media
	.wp-block-kadence-rowlayout
	> .kt-row-column-wrap
	> .wp-block-kadence-column:first-child
	.wp-block-kadence-image,
	.aslab-lab-v5-bench
	.aslab-lab-bench__media
	.wp-block-kadence-rowlayout
	> .kt-row-column-wrap
	> .wp-block-kadence-column:first-child
	.kb-is-ratio-image {
		height: 100% !important;
		min-height: 0 !important;
		width: 100% !important;
		margin: 0 !important;
	}

	.aslab-lab-v5-bench
	.aslab-lab-bench__media
	.wp-block-kadence-rowlayout
	> .kt-row-column-wrap
	> .wp-block-kadence-column:first-child
	img {
		width: 100% !important;
		height: 100% !important;
		object-fit: cover !important;
	}

	/* Due dettagli impilati a destra */
	.aslab-lab-v5-bench
	.aslab-lab-bench__media
	.wp-block-kadence-rowlayout
	> .kt-row-column-wrap
	> .wp-block-kadence-column:nth-child(2)
	> .kt-inside-inner-col {
		display: grid !important;

		grid-template-rows:
			minmax(0, 1fr)
			minmax(0, 1fr) !important;

		gap: 16px !important;

		height: 100% !important;
		min-height: 0 !important;
	}

	.aslab-lab-v5-bench
	.aslab-lab-bench__media
	.wp-block-kadence-rowlayout
	> .kt-row-column-wrap
	> .wp-block-kadence-column:nth-child(2)
	.wp-block-kadence-image,
	.aslab-lab-v5-bench
	.aslab-lab-bench__media
	.wp-block-kadence-rowlayout
	> .kt-row-column-wrap
	> .wp-block-kadence-column:nth-child(2)
	.kb-is-ratio-image {
		width: 100% !important;
		height: 100% !important;
		min-height: 0 !important;
		margin: 0 !important;
	}

	.aslab-lab-v5-bench
	.aslab-lab-bench__media
	.wp-block-kadence-rowlayout
	> .kt-row-column-wrap
	> .wp-block-kadence-column:nth-child(2)
	img {
		width: 100% !important;
		height: 100% !important;
		object-fit: cover !important;
	}

}

@media (min-width: 768px) and (max-width: 1023px) {

	.aslab-lab-v5-bench {
		padding-top: 42px !important;
		padding-bottom: 42px !important;
	}

	.aslab-lab-v5-bench .aslab-copy {
		max-width: 560px !important;
	}

}

@media (max-width: 767px) {

	.aslab-lab-v5-bench {
		padding-top: 34px !important;
		padding-bottom: 34px !important;
	}

	.aslab-lab-v5-bench .aslab-copy {
		max-width: none !important;
	}

}


/* ---------------------------------------------------------
   PORTOSCUSO
   Due colonne più compatte e allineate.
   --------------------------------------------------------- */

.aslab-lab-v5-place {
	overflow: hidden !important;
}

@media (min-width: 1024px) {

	.aslab-lab-v5-place > .kt-row-column-wrap {
		grid-template-columns:
			minmax(0, 1.15fr)
			minmax(0, 0.85fr) !important;

		gap: clamp(44px, 4.5vw, 70px) !important;

		align-items: center !important;
	}

	.aslab-lab-v5-place .wp-block-kadence-column:last-child > .kt-inside-inner-col {
		justify-content: center !important;
	}

}


/* ---------------------------------------------------------
   TABLET
   --------------------------------------------------------- */

@media (min-width: 768px) and (max-width: 1023px) {

	.aslab-lab-hero-fullbleed {
		padding-bottom: 20px !important;
	}

	.aslab-lab-hero-fullbleed .aslab-lab-hero-fullbleed__image .kb-is-ratio-image {
		height: clamp(340px, 48vw, 470px) !important;
	}

	.aslab-lab-hero-fullbleed .aslab-lab-hero__title {
		width: calc(100% - 48px) !important;
		max-width: 900px !important;

		font-size: clamp(34px, 4.8vw, 42px) !important;
		line-height: 1.1 !important;
	}

	.aslab-lab-hero-fullbleed .aslab-lab-hero__intro {
		width: calc(100% - 64px) !important;
		max-width: 760px !important;

		font-size: 17px !important;
	}

	.aslab-lab-hero-fullbleed .aslab-lab-identity-grid {
		width: calc(100% - 48px) !important;

		padding-top: 24px !important;
	}

	.aslab-lab-hero-fullbleed .aslab-lab-identity-grid > .kt-row-column-wrap {
		gap: 30px !important;
	}

	.aslab-lab-hero-fullbleed .aslab-lab-identity-grid .aslab-copy {
		font-size: 16px !important;
	}

	.aslab-lab-v5-method > .kt-row-column-wrap {
		width: calc(100% - 48px) !important;
	}

}


/* ---------------------------------------------------------
   MOBILE
   --------------------------------------------------------- */

@media (max-width: 767px) {

	.aslab-lab-hero-fullbleed {
		padding-bottom: 18px !important;
	}

	.aslab-lab-hero-fullbleed .aslab-lab-hero-fullbleed__image .kb-is-ratio-image {
		height: clamp(260px, 70vw, 380px) !important;
	}

	.aslab-lab-hero-fullbleed .aslab-lab-hero-fullbleed__image img {
		object-position: 50% 56% !important;
	}

	.aslab-lab-hero-fullbleed > .kt-row-column-wrap > .wp-block-kadence-column > .kt-inside-inner-col > .aslab-eyebrow,
	.aslab-lab-hero-fullbleed .aslab-lab-hero__title,
	.aslab-lab-hero-fullbleed .aslab-lab-hero__intro {
		width: calc(100% - 32px) !important;
	}

	.aslab-lab-hero-fullbleed .aslab-lab-hero__title {
		font-size: clamp(30px, 8.5vw, 38px) !important;
		line-height: 1.1 !important;
	}

	.aslab-lab-hero-fullbleed .aslab-lab-hero__intro {
		font-size: 16px !important;
		line-height: 1.58 !important;
	}

	.aslab-lab-hero-fullbleed .aslab-lab-identity-grid {
		width: calc(100% - 32px) !important;

		margin-top: 22px !important;
		padding-top: 22px !important;
	}

	.aslab-lab-hero-fullbleed .aslab-lab-identity-grid > .kt-row-column-wrap {
		display: grid !important;
		grid-template-columns: 1fr !important;

		gap: 16px !important;
	}

	.aslab-lab-hero-fullbleed .aslab-lab-identity-grid .aslab-copy {
		max-width: 100% !important;

		font-size: 15px !important;
		line-height: 1.6 !important;

		text-align: left !important;
	}

	.aslab-lab-hero-fullbleed .aslab-lab-identity-closing {
		width: calc(100% - 32px) !important;

		margin-top: 18px !important;

		font-size: 17px !important;
	}

	.aslab-lab-v5-method > .kt-row-column-wrap {
		width: calc(100% - 32px) !important;
	}

	.aslab-lab-v5-method .aslab-lab-v5-step {
		margin-top: 8px !important;
		margin-bottom: 8px !important;
	}

}


/* ---------------------------------------------------------
   LABORATORIO / FILOSOFIA — immagini V7.2
   Crop specifici: recupero / intervento / fibra-luce
   --------------------------------------------------------- */

.aslab-lab-philosophy .kb-image9_a662cf-98 img {
	object-position: 50% 60% !important;
}

.aslab-lab-philosophy .kb-imagelabphil_image_02 img {
	object-position: 42% 52% !important;
}

.aslab-lab-philosophy .kb-image9_36dcf4-47 img {
	object-position: 52% 58% !important;
}

/* =========================================================
   PORTFOLIO — V8.6
   HERO COLLAGE COMPACT + ZERO WHITE GAPS
   Kadence Blocks + tema corrente
   ========================================================= */


/* =========================================================
   RESET GENERALE PORTFOLIO
   ========================================================= */

.entry-content > .aslab-port85-section,
.entry-content > .aslab-port83-section {
	margin-top: 0 !important;
	margin-bottom: 0 !important;
}

.aslab-port85-section + .aslab-port85-section,
.aslab-port85-section + .aslab-port83-section,
.aslab-port83-section + .aslab-port83-section {
	margin-top: 0 !important;
}

.aslab-port85-section,
.aslab-port83-section {
	overflow: hidden !important;
}


/*
 * Sicurezza aggiuntiva:
 * nel codice V8.6 i commenti non sono più dentro <p>.
 * Queste regole neutralizzano comunque eventuali paragrafi
 * vuoti introdotti dall'editor tra i blocchi Portfolio.
 */
.entry-content > p:empty,
.entry-content > p:has(> br:only-child) {
	display: none !important;
	margin: 0 !important;
	padding: 0 !important;
	height: 0 !important;
}


/* =========================================================
   HERO — COLLAGE
   Più basso del V8.5, full-width ma senza 100vw/negative margin.
   I bordi seguono quindi esattamente il contenitore pagina.
   ========================================================= */

.aslab-port85-hero-media {
	margin: 0 !important;
	padding: 0 !important;

	background: #11140c !important;
}

.aslab-port85-hero-media > .kt-row-column-wrap,
.aslab-port85-hero-media > .kt-row-column-wrap > .wp-block-kadence-column,
.aslab-port85-hero-media > .kt-row-column-wrap > .wp-block-kadence-column > .kt-inside-inner-col {
	width: 100% !important;
	max-width: none !important;

	margin: 0 !important;
	padding: 0 !important;
}


/* Niente margine tra header/navbar e prima sezione */
.entry-content > .aslab-port85-hero-media:first-child {
	margin-top: 0 !important;
	padding-top: 0 !important;
}


/* Figure: segue il 100% della pagina, senza bleed oltre il layout */
.aslab-port85-hero__image {
	display: block !important;

	width: 100% !important;
	max-width: none !important;

	margin: 0 !important;
	padding: 0 !important;

	border: 0 !important;
	border-radius: 0 !important;
}


/*
 * Desktop:
 * il collage originale è circa 3:1.
 * Qui lo rendiamo leggermente più panoramico per evitare una Hero
 * troppo dominante, senza il crop aggressivo del vecchio 16:9.
 */
.aslab-port85-hero__image .kb-is-ratio-image {
	position: relative !important;
	display: block !important;

	width: 100% !important;

	height: clamp(360px, 27vw, 500px) !important;
	min-height: 0 !important;

	aspect-ratio: auto !important;
	padding-bottom: 0 !important;

	margin: 0 !important;

	overflow: hidden !important;

	border: 0 !important;
	border-radius: 0 !important;

	background: #11140c !important;
}


.aslab-port85-hero__image img {
	position: absolute !important;
	inset: 0 !important;

	display: block !important;

	width: 100% !important;
	height: 100% !important;
	max-width: none !important;

	object-fit: cover !important;

	/* crop neutro: conserva Coffee Table / Wall Art / Gioielli */
	object-position: 50% 50% !important;

	margin: 0 !important;
	padding: 0 !important;

	border: 0 !important;
	border-radius: 0 !important;
}


/* =========================================================
   HERO — TESTO
   Più compatto e meglio distribuito.
   ========================================================= */

.aslab-port85-hero-text {
	margin: 0 !important;

	padding-top: 24px !important;
	padding-bottom: 22px !important;

	background: #11140c !important;
}


.aslab-port85-hero-text > .kt-row-column-wrap,
.aslab-port83-category > .kt-row-column-wrap,
.aslab-port83-cta > .kt-row-column-wrap {
	width: min(1180px, calc(100% - 64px)) !important;
	max-width: 1180px !important;

	margin-left: auto !important;
	margin-right: auto !important;

	padding-left: 0 !important;
	padding-right: 0 !important;
}


/* Eyebrow */
.aslab-port85-hero__eyebrow {
	margin: 0 !important;

	color: #c77a54 !important;
}


/* Titolo + descrizione */
.aslab-port85-hero__intro-grid > .kt-row-column-wrap {
	display: grid !important;

	grid-template-columns:
		minmax(0, 1.18fr)
		minmax(340px, 0.82fr) !important;

	gap: clamp(42px, 5vw, 72px) !important;

	align-items: center !important;

	width: 100% !important;
	max-width: none !important;

	margin: 0 !important;
	padding: 0 !important;
}


.aslab-port85-hero__title {
	width: 100% !important;
	max-width: 680px !important;

	margin: 0 !important;

	font-size: clamp(42px, 3.3vw, 56px) !important;
	line-height: 1 !important;

	text-wrap: balance !important;
}


.aslab-port85-hero__copy {
	width: 100% !important;
	max-width: 500px !important;

	margin: 0 !important;

	font-size: 16px !important;
	line-height: 1.5 !important;

	text-wrap: pretty !important;
}


/* ---------------------------------------------------------
   NAV DELLE TRE CATEGORIE
   --------------------------------------------------------- */

.aslab-port85-hero__navrow {
	margin: 2px 0 0 !important;
	padding-top: 10px !important;

	border-top: 1px solid rgba(247, 243, 237, 0.15) !important;
}


.aslab-port85-hero__navrow > .kt-row-column-wrap {
	display: grid !important;

	grid-template-columns:
		repeat(3, minmax(0, 1fr)) !important;

	gap: 0 !important;

	width: 100% !important;
	max-width: none !important;

	margin: 0 !important;
	padding: 0 !important;
}


.aslab-port85-hero__navrow
> .kt-row-column-wrap
> .wp-block-kadence-column {
	min-width: 0 !important;

	padding: 7px 0 0 !important;
}


.aslab-port85-hero__navrow
> .kt-row-column-wrap
> .wp-block-kadence-column:nth-child(2),
.aslab-port85-hero__navrow
> .kt-row-column-wrap
> .wp-block-kadence-column:nth-child(3) {
	padding-left: 22px !important;

	border-left:
		1px solid rgba(247, 243, 237, 0.10) !important;
}


.aslab-port85-hero__navitem {
	margin: 0 !important;
}


.aslab-port85-hero__navitem a {
	display: block !important;

	color: #f7f3ed !important;

	text-decoration: none !important;
}


.aslab-port85-hero__navitem a:hover {
	color: #c77a54 !important;
}


.aslab-port85-hero__navitem span {
	display: inline-block !important;

	margin-right: 10px !important;

	color: #c77a54 !important;

	font-family: "Inter", Arial, sans-serif !important;
	font-size: 11px !important;
	font-weight: 600 !important;

	letter-spacing: 0.08em !important;
}


/* =========================================================
   INTRO CATEGORIE
   ========================================================= */

.aslab-port83-category__intro {
	margin-bottom: 0 !important;
}


.aslab-port83-category__intro h2,
.aslab-port83-category__intro p {
	margin-top: 0 !important;
}


/* =========================================================
   GALLERY CATEGORIE
   1 immagine principale + 2 dettagli
   ========================================================= */

.aslab-port83-gallery > .kt-row-column-wrap {
	display: grid !important;

	grid-template-columns:
		minmax(0, 1.72fr)
		minmax(0, 1fr) !important;

	gap: 14px !important;

	align-items: stretch !important;
}


.aslab-port83-gallery > .kt-row-column-wrap > .wp-block-kadence-column,
.aslab-port83-gallery > .kt-row-column-wrap > .wp-block-kadence-column > .kt-inside-inner-col,
.aslab-port83-gallery .wp-block-kadence-image,
.aslab-port83-gallery figure,
.aslab-port83-gallery .kb-is-ratio-image {
	width: 100% !important;
	max-width: none !important;

	margin: 0 !important;

	min-width: 0 !important;
}


.aslab-port83-gallery > .kt-row-column-wrap > .wp-block-kadence-column:first-child,
.aslab-port83-gallery > .kt-row-column-wrap > .wp-block-kadence-column:first-child > .kt-inside-inner-col,
.aslab-port83-gallery > .kt-row-column-wrap > .wp-block-kadence-column:first-child .wp-block-kadence-image,
.aslab-port83-gallery > .kt-row-column-wrap > .wp-block-kadence-column:first-child figure,
.aslab-port83-gallery > .kt-row-column-wrap > .wp-block-kadence-column:first-child .kb-is-ratio-image {
	height: 100% !important;
}


.aslab-port83-gallery > .kt-row-column-wrap > .wp-block-kadence-column:first-child .kb-is-ratio-image {
	position: relative !important;

	aspect-ratio: 4 / 3 !important;

	padding-bottom: 0 !important;

	overflow: hidden !important;
}


.aslab-port83-gallery__stack > .kt-inside-inner-col {
	display: grid !important;

	grid-template-rows:
		minmax(0, 1fr)
		minmax(0, 1fr) !important;

	gap: 14px !important;

	height: 100% !important;
}


.aslab-port83-gallery__stack .wp-block-kadence-image,
.aslab-port83-gallery__stack figure,
.aslab-port83-gallery__stack .kb-is-ratio-image {
	height: 100% !important;
}


.aslab-port83-gallery__stack .kb-is-ratio-image {
	position: relative !important;

	aspect-ratio: auto !important;

	min-height: 0 !important;

	padding-bottom: 0 !important;

	overflow: hidden !important;
}


.aslab-port83-gallery img {
	position: absolute !important;
	inset: 0 !important;

	display: block !important;

	width: 100% !important;
	height: 100% !important;
	max-width: none !important;

	object-fit: cover !important;
}


/* ---------------------------------------------------------
   WALL ART — crop
   --------------------------------------------------------- */

.aslab-port83-category--wall .kb-image310_d023d1-ea img {
	object-position: 50% 50% !important;
}

.aslab-port83-category--wall .kb-image310_66301b-77 img {
	object-position: 50% 48% !important;
}

.aslab-port83-category--wall .kb-image310_9c80eb-55 img {
	object-position: 50% 52% !important;
}


/* ---------------------------------------------------------
   COFFEE TABLES — crop
   --------------------------------------------------------- */

.aslab-port83-category--coffee .kb-image310_86d92a-9c img {
	object-position: 50% 68% !important;
}

.aslab-port83-category--coffee .kb-image310_3923d4-f3 img {
	object-position: 50% 58% !important;
}

.aslab-port83-category--coffee .kb-image310_7ae326-c0 img {
	object-position: 50% 56% !important;
}


/* ---------------------------------------------------------
   GIOIELLI
   --------------------------------------------------------- */

.aslab-port83-gallery--jewels > .kt-row-column-wrap {
	grid-template-columns:
		minmax(0, 1.15fr)
		minmax(0, 1fr) !important;
}


.aslab-port83-gallery--jewels
> .kt-row-column-wrap
> .wp-block-kadence-column:first-child
.kb-is-ratio-image {
	aspect-ratio: 4 / 5 !important;
}


.aslab-port83-category--jewels .kb-image310_7b3036-26 img {
	object-position: 50% 48% !important;
}

.aslab-port83-category--jewels .kb-image310_cb8282-7f img {
	object-position: 50% 46% !important;
}

.aslab-port83-category--jewels .kb-image310_c26ad9-54 img {
	object-position: 50% 47% !important;
}


/* =========================================================
   CTA
   ========================================================= */

.aslab-port83-cta {
	border-top:
		1px solid rgba(247, 243, 237, 0.12) !important;
}


.aslab-port83-cta .kb-button,
.aslab-port83-cta .kt-button {
	border-radius: 999px !important;
}


/* =========================================================
   TABLET
   ========================================================= */

@media (min-width: 768px) and (max-width: 1023px) {

	.aslab-port85-hero-text > .kt-row-column-wrap,
	.aslab-port83-category > .kt-row-column-wrap,
	.aslab-port83-cta > .kt-row-column-wrap {
		width: calc(100% - 48px) !important;
	}


	.aslab-port85-hero__image .kb-is-ratio-image {
		height: clamp(300px, 34vw, 390px) !important;
	}


	.aslab-port85-hero-text {
		padding-top: 24px !important;
		padding-bottom: 22px !important;
	}


	.aslab-port85-hero__intro-grid > .kt-row-column-wrap {
		grid-template-columns:
			minmax(0, 1.08fr)
			minmax(280px, 0.92fr) !important;

		gap: 30px !important;
	}


	.aslab-port85-hero__title {
		font-size: clamp(38px, 4.8vw, 48px) !important;
	}


	.aslab-port85-hero__navrow
	> .kt-row-column-wrap
	> .wp-block-kadence-column:nth-child(2),
	.aslab-port85-hero__navrow
	> .kt-row-column-wrap
	> .wp-block-kadence-column:nth-child(3) {
		padding-left: 16px !important;
	}


	.aslab-port83-gallery > .kt-row-column-wrap {
		grid-template-columns:
			minmax(0, 1.45fr)
			minmax(0, 1fr) !important;

		gap: 12px !important;
	}


	.aslab-port83-gallery__stack > .kt-inside-inner-col {
		gap: 12px !important;
	}

}


/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 767px) {

	.aslab-port85-hero-text > .kt-row-column-wrap,
	.aslab-port83-category > .kt-row-column-wrap,
	.aslab-port83-cta > .kt-row-column-wrap {
		width: calc(100% - 32px) !important;
	}


	/*
	 * Mobile: il collage resta leggibile aumentando un po' l'altezza,
	 * ma senza tornare alle proporzioni molto alte del V8.5.
	 */
	.aslab-port85-hero__image .kb-is-ratio-image {
		height: clamp(190px, 48vw, 245px) !important;
	}


	.aslab-port85-hero-text {
		padding-top: 20px !important;
		padding-bottom: 20px !important;
	}


	.aslab-port85-hero__intro-grid > .kt-row-column-wrap {
		display: grid !important;

		grid-template-columns: 1fr !important;

		gap: 12px !important;
	}


	.aslab-port85-hero__title {
		max-width: none !important;

		font-size: clamp(34px, 9vw, 40px) !important;
	}


	.aslab-port85-hero__copy {
		max-width: none !important;

		font-size: 15px !important;
	}


	.aslab-port85-hero__navrow {
		padding-top: 8px !important;
	}


	.aslab-port85-hero__navrow > .kt-row-column-wrap {
		display: grid !important;

		grid-template-columns: 1fr !important;

		gap: 0 !important;
	}


	.aslab-port85-hero__navrow
	> .kt-row-column-wrap
	> .wp-block-kadence-column,
	.aslab-port85-hero__navrow
	> .kt-row-column-wrap
	> .wp-block-kadence-column:nth-child(2),
	.aslab-port85-hero__navrow
	> .kt-row-column-wrap
	> .wp-block-kadence-column:nth-child(3) {
		padding: 8px 0 !important;

		border-left: 0 !important;
	}


	.aslab-port85-hero__navrow
	> .kt-row-column-wrap
	> .wp-block-kadence-column
	+ .wp-block-kadence-column {
		border-top:
			1px solid rgba(247, 243, 237, 0.10) !important;
	}


	.aslab-port83-category__intro > .kt-row-column-wrap,
	.aslab-port83-cta
	.wp-block-kadence-rowlayout
	> .kt-row-column-wrap {
		display: grid !important;

		grid-template-columns: 1fr !important;

		gap: 18px !important;
	}


	.aslab-port83-gallery > .kt-row-column-wrap,
	.aslab-port83-gallery--jewels > .kt-row-column-wrap {
		display: grid !important;

		grid-template-columns: 1fr !important;

		gap: 10px !important;
	}


	.aslab-port83-gallery
	> .kt-row-column-wrap
	> .wp-block-kadence-column:first-child
	.kb-is-ratio-image,
	.aslab-port83-gallery--jewels
	> .kt-row-column-wrap
	> .wp-block-kadence-column:first-child
	.kb-is-ratio-image {
		aspect-ratio: 4 / 3 !important;
	}


	.aslab-port83-gallery__stack > .kt-inside-inner-col {
		display: grid !important;

		grid-template-columns:
			1fr
			1fr !important;

		grid-template-rows: none !important;

		gap: 10px !important;
	}


	.aslab-port83-gallery__stack .kb-is-ratio-image {
		aspect-ratio: 1 / 1 !important;

		height: auto !important;
	}

}


/* =========================================================
   PORTFOLIO — V8.7
   WALL ART — 3 CARD VERTICALI / OPERE COMPLETE
   ========================================================= */

.aslab-port87-wall-cards {
	margin-top: 2px !important;
	margin-bottom: 0 !important;
}

.aslab-port87-wall-cards > .kt-row-column-wrap {
	display: grid !important;
	grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
	gap: 16px !important;
	align-items: stretch !important;

	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	padding: 0 !important;
}

.aslab-port87-wall-card,
.aslab-port87-wall-card > .kt-inside-inner-col,
.aslab-port87-wall-card .wp-block-kadence-image,
.aslab-port87-wall-card figure,
.aslab-port87-wall-card .kb-is-ratio-image {
	width: 100% !important;
	height: 100% !important;
	max-width: none !important;

	margin: 0 !important;
	padding: 0 !important;

	border: 0 !important;
	border-radius: 0 !important;
}

.aslab-port87-wall-card .kb-is-ratio-image {
	position: relative !important;

	aspect-ratio: 3 / 4 !important;
	height: auto !important;
	min-height: 0 !important;

	overflow: hidden !important;

	background: #d8ccbd !important;
}

.aslab-port87-wall-card img {
	position: absolute !important;
	inset: 0 !important;

	display: block !important;

	width: 100% !important;
	height: 100% !important;
	max-width: none !important;

	object-fit: cover !important;

	border: 0 !important;
	border-radius: 0 !important;
}

/* OPERA 01 — pannello blu */
.aslab-port87-wall-card .kb-image87_wall_img_01 img {
	object-position: 50% 52% !important;
}

/* OPERA 02 — reticolo modulare */
.aslab-port87-wall-card .kb-image87_wall_img_02 img {
	object-position: 50% 50% !important;
}

/* OPERA 03 — IMG_2555: focus abbassato sull'opera */
.aslab-port87-wall-card .kb-image87_wall_img_03 img {
	object-position: 50% 68% !important;
}


/* TABLET */
@media (min-width: 768px) and (max-width: 1023px) {

	.aslab-port87-wall-cards > .kt-row-column-wrap {
		grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
		gap: 12px !important;
	}

}


/* MOBILE */
@media (max-width: 767px) {

	.aslab-port87-wall-cards > .kt-row-column-wrap {
		grid-template-columns: 1fr !important;
		gap: 12px !important;
	}

	.aslab-port87-wall-card .kb-is-ratio-image {
		aspect-ratio: 4 / 5 !important;
	}

}


/* =========================================================
   PORTFOLIO — V8.8
   COFFEE TABLES — INTRO PIÙ BILANCIATO + 3 CARD
   ========================================================= */

.aslab-port88-category__intro {
	margin-bottom: 18px !important;
}

.aslab-port88-category__intro > .kt-row-column-wrap {
	display: grid !important;
	grid-template-columns: minmax(0, 1.08fr) minmax(0, 0.92fr) !important;
	gap: 72px !important;
	align-items: end !important;

	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	padding: 0 !important;
}

.kadence-column88_coffee_title_col .kt-inside-inner-col,
.kadence-column88_coffee_copy_col .kt-inside-inner-col {
	height: 100% !important;
}

.kt-adv-heading88_coffee_title {
	max-width: 620px !important;
	margin: 0 !important;
}

.kt-adv-heading88_coffee_copy {
	max-width: 520px !important;
	margin: 0 !important;
}


.aslab-port88-coffee-cards {
	margin-top: 0 !important;
	margin-bottom: 0 !important;
}

.aslab-port88-coffee-cards > .kt-row-column-wrap {
	display: grid !important;
	grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
	gap: 16px !important;
	align-items: stretch !important;

	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	padding: 0 !important;
}

.aslab-port88-coffee-card,
.aslab-port88-coffee-card > .kt-inside-inner-col,
.aslab-port88-coffee-card .wp-block-kadence-image,
.aslab-port88-coffee-card figure,
.aslab-port88-coffee-card .kb-is-ratio-image {
	width: 100% !important;
	height: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	border-radius: 0 !important;
}

.aslab-port88-coffee-card .kb-is-ratio-image {
	position: relative !important;
	aspect-ratio: 4 / 3 !important;
	height: auto !important;
	overflow: hidden !important;
	background: #cfc2b3 !important;
}

.aslab-port88-coffee-card img {
	position: absolute !important;
	inset: 0 !important;
	display: block !important;
	width: 100% !important;
	height: 100% !important;
	max-width: none !important;
	object-fit: cover !important;
	border: 0 !important;
	border-radius: 0 !important;
}

.aslab-port88-coffee-card .kb-image88_coffee_img_01 img {
	object-position: 50% 62% !important;
}

.aslab-port88-coffee-card .kb-image88_coffee_img_02 img {
	object-position: 50% 48% !important;
}

.aslab-port88-coffee-card .kb-image88_coffee_img_03 img {
	object-position: 50% 54% !important;
}

@media (min-width: 768px) and (max-width: 1023px) {

	.aslab-port88-category__intro > .kt-row-column-wrap {
		grid-template-columns: 1fr 1fr !important;
		gap: 36px !important;
	}

	.aslab-port88-coffee-cards > .kt-row-column-wrap {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
		gap: 14px !important;
	}

}

@media (max-width: 767px) {

	.aslab-port88-category__intro {
		margin-bottom: 14px !important;
	}

	.aslab-port88-category__intro > .kt-row-column-wrap {
		grid-template-columns: 1fr !important;
		gap: 14px !important;
	}

	.aslab-port88-coffee-cards > .kt-row-column-wrap {
		grid-template-columns: 1fr !important;
		gap: 12px !important;
	}

	.aslab-port88-coffee-card .kb-is-ratio-image {
		aspect-ratio: 4 / 3 !important;
	}

}


/* =========================================================
   PORTFOLIO — V8.9.1
   GIOIELLI — INTRO PIÙ BILANCIATO + 6 CARD
   ========================================================= */

.aslab-port83-category--coffee {
	padding-bottom: 20px !important;
}

.aslab-port89-jewels {
	margin-top: 0 !important;
	padding-top: 18px !important;
}

.aslab-port89-jewels__intro {
	margin-bottom: 18px !important;
}

.aslab-port89-jewels__intro > .kt-row-column-wrap {
	display: grid !important;
	grid-template-columns: minmax(0, 1.08fr) minmax(0, 0.92fr) !important;
	gap: 72px !important;
	align-items: end !important;
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	padding: 0 !important;
}

.kadence-column89_jewels_title_col .kt-inside-inner-col,
.kadence-column89_jewels_copy_col .kt-inside-inner-col {
	height: 100% !important;
}

.kt-adv-heading89_jewels_title {
	max-width: 680px !important;
	margin: 0 !important;
}

.kt-adv-heading89_jewels_copy {
	max-width: 560px !important;
	margin: 0 !important;
}


.aslab-port89-jewels__cards {
	margin-top: 0 !important;
	margin-bottom: 0 !important;
}

.aslab-port89-jewels__cards > .kt-row-column-wrap {
	display: grid !important;
	grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
	gap: 16px !important;
	align-items: stretch !important;
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	padding: 0 !important;
}

.aslab-port89-jewels__card,
.aslab-port89-jewels__card > .kt-inside-inner-col,
.aslab-port89-jewels__card .wp-block-kadence-image,
.aslab-port89-jewels__card figure,
.aslab-port89-jewels__card .kb-is-ratio-image {
	height: 100% !important;
}

.aslab-port89-jewels__card .kb-is-ratio-image {
	aspect-ratio: 4 / 5 !important;
}

.aslab-port89-jewels__card img {
	object-fit: cover !important;
}

.aslab-port89-jewels .kb-image89_jewel_img_01 img {
	object-position: 50% 48% !important;
}

.aslab-port89-jewels .kb-image89_jewel_img_02 img {
	object-position: 50% 46% !important;
}

.aslab-port89-jewels .kb-image89_jewel_img_03 img {
	object-position: 50% 47% !important;
}

.aslab-port89-jewels .kb-image89_jewel_img_04 img {
	object-position: 50% 50% !important;
}

.aslab-port89-jewels .kb-image89_jewel_img_05 img {
	object-position: 50% 58% !important;
}

.aslab-port89-jewels .kb-image89_jewel_img_06 img {
	object-position: 50% 50% !important;
}

@media (max-width: 1024px) {
	.aslab-port89-jewels__intro > .kt-row-column-wrap {
		grid-template-columns: 1fr !important;
		gap: 18px !important;
	}

	.aslab-port89-jewels__cards > .kt-row-column-wrap {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
		gap: 14px !important;
	}
}

@media (max-width: 767px) {
	.aslab-port89-jewels {
		padding-top: 18px !important;
	}

	.aslab-port89-jewels__cards > .kt-row-column-wrap {
		grid-template-columns: 1fr !important;
		gap: 12px !important;
	}
}
/* =========================================================
   CONTATTI — V2
   Conversione semplice + laboratorio reale
   ========================================================= */

.aslab-contact-v2 {
	margin: 0 !important;
	overflow: hidden !important;

	background: #e9e2d8 !important;
	color: #302c28 !important;
}

.aslab-contact-v2 > .kt-row-column-wrap {
	width: min(1240px, calc(100% - 64px)) !important;
	max-width: 1240px !important;

	margin: 0 auto !important;
	padding: 0 !important;

	display: grid !important;
	grid-template-columns:
		minmax(0, 1.08fr)
		minmax(420px, .92fr) !important;

	gap: clamp(42px, 5vw, 70px) !important;
	align-items: center !important;
}

.aslab-contact-v2__content > .kt-inside-inner-col {
	row-gap: 16px !important;
}

.aslab-contact-v2__title {
	margin: 0 !important;

	max-width: 650px !important;

	font-family: "Space Grotesk", "Inter", Arial, sans-serif !important;
	font-weight: 600 !important;
	line-height: 1.02 !important;
	letter-spacing: -0.04em !important;

	color: #1a1816 !important;

	text-wrap: balance !important;
}

.aslab-contact-v2__copy {
	margin: 0 !important;

	max-width: 590px !important;

	color: #514941 !important;

	text-wrap: pretty !important;
}


/* Recapiti */

.aslab-contact-v2__details {
	margin-top: 8px !important;
}

.aslab-contact-v2__details > .kt-inside-inner-col {
	row-gap: 0 !important;
}

.aslab-contact-v2__contact-row {
	margin: 0 !important;

	border-top: 1px solid rgba(48, 44, 40, .13) !important;
}

.aslab-contact-v2__contact-row:last-child {
	border-bottom: 1px solid rgba(48, 44, 40, .13) !important;
}

.aslab-contact-v2__contact-row > .kt-row-column-wrap {
	display: grid !important;
	grid-template-columns: minmax(120px, .36fr) minmax(0, 1fr) !important;

	gap: 18px !important;
	align-items: center !important;

	width: 100% !important;
	max-width: none !important;

	margin: 0 !important;
	padding: 0 !important;
}

.aslab-contact-v2__contact-row p {
	margin: 0 !important;
}

.aslab-contact-v2__value a {
	color: #1a1816 !important;
	text-decoration: none !important;

	border-bottom: 1px solid #a45d3d !important;
	padding-bottom: 2px !important;
}

.aslab-contact-v2__value a:hover {
	color: #7f432d !important;
}


/* Nota custom */

.aslab-contact-v2__note {
	margin-top: 8px !important;

	background: #171513 !important;
	color: #f7f3ed !important;
}

.aslab-contact-v2__note > .kt-inside-inner-col {
	row-gap: 7px !important;
}


/* Collage */

.aslab-contact-v2__media,
.aslab-contact-v2__media > .kt-inside-inner-col {
	width: 100% !important;
	min-width: 0 !important;

	margin: 0 !important;
	padding: 0 !important;
}

.aslab-contact-v2__media > .kt-inside-inner-col {
	display: flex !important;
	flex-direction: column !important;
	justify-content: center !important;
}

.aslab-contact-v2__image,
.aslab-contact-v2__image figure,
.aslab-contact-v2__image .kb-is-ratio-image {
	width: 100% !important;
	max-width: none !important;

	margin: 0 !important;

	border: 0 !important;
	border-radius: 0 !important;
}

.aslab-contact-v2__image .kb-is-ratio-image {
	position: relative !important;

	height: auto !important;
	min-height: 0 !important;

	padding-bottom: 0 !important;

	overflow: hidden !important;
}

.aslab-contact-v2__image--main .kb-is-ratio-image {
	aspect-ratio: 4 / 3 !important;
}

.aslab-contact-v2__media-small .kb-is-ratio-image {
	aspect-ratio: 1 / 1 !important;
}

.aslab-contact-v2__image img {
	position: absolute !important;
	inset: 0 !important;

	display: block !important;

	width: 100% !important;
	height: 100% !important;
	max-width: none !important;

	object-fit: cover !important;
}

.aslab-contact-v2 .kb-imagecontact_v2_img_main img {
	object-position: 50% 58% !important;
}

.aslab-contact-v2 .kb-imagecontact_v2_img_process img {
	object-position: 42% 52% !important;
}

.aslab-contact-v2 .kb-imagecontact_v2_img_fibre img {
	object-position: 52% 58% !important;
}

.aslab-contact-v2__media-small {
	margin: 0 !important;
}

.aslab-contact-v2__media-small > .kt-row-column-wrap {
	display: grid !important;
	grid-template-columns: repeat(2, minmax(0, 1fr)) !important;

	gap: 10px !important;

	width: 100% !important;
	max-width: none !important;

	margin: 0 !important;
	padding: 10px 0 0 !important;
}


/* TABLET */

@media (min-width: 768px) and (max-width: 1023px) {

	.aslab-contact-v2 > .kt-row-column-wrap {
		width: calc(100% - 48px) !important;

		grid-template-columns:
			minmax(0, 1fr)
			minmax(330px, .85fr) !important;

		gap: 34px !important;
	}

	.aslab-contact-v2__title {
		font-size: 46px !important;
	}

	.aslab-contact-v2__contact-row > .kt-row-column-wrap {
		grid-template-columns: 105px minmax(0, 1fr) !important;
		gap: 14px !important;
	}

}


/* MOBILE */

@media (max-width: 767px) {

	.aslab-contact-v2 > .kt-row-column-wrap {
		width: calc(100% - 32px) !important;

		grid-template-columns: 1fr !important;

		gap: 24px !important;
	}

	.aslab-contact-v2__content {
		order: 1 !important;
	}

	.aslab-contact-v2__media {
		order: 2 !important;
	}

	.aslab-contact-v2__title {
		font-size: clamp(34px, 10vw, 40px) !important;
		line-height: 1.05 !important;
	}

	.aslab-contact-v2__copy {
		font-size: 15px !important;
		line-height: 1.6 !important;
	}

	.aslab-contact-v2__contact-row > .kt-row-column-wrap {
		grid-template-columns: 1fr !important;

		gap: 5px !important;
	}

	.aslab-contact-v2__contact-row {
		padding-top: 12px !important;
		padding-bottom: 12px !important;
	}

	.aslab-contact-v2__media-small > .kt-row-column-wrap {
		grid-template-columns: 1fr 1fr !important;
		gap: 8px !important;

		padding-top: 8px !important;
	}

}
/* =========================================================
   HOME V4.1 — CONTATTO FINALE CENTRATO
   ========================================================= */

body.home .aslab-contact--v4 .aslab-contact__inner--single,
body.home .aslab-contact--v4 .aslab-contact__inner--single > .kt-inside-inner-col {
	width: 100% !important;
	max-width: 860px !important;
	margin-left: auto !important;
	margin-right: auto !important;
}

body.home .aslab-contact--v4 .aslab-contact__inner--single > .kt-inside-inner-col {
	display: flex !important;
	flex-direction: column !important;
	align-items: center !important;
	text-align: center !important;
}

body.home .aslab-contact--v4 .aslab-eyebrow,
body.home .aslab-contact--v4 .aslab-title,
body.home .aslab-contact--v4 .aslab-copy {
	width: 100% !important;
	max-width: 720px !important;
	margin-left: auto !important;
	margin-right: auto !important;
	text-align: center !important;
}

body.home .aslab-contact--v4 .aslab-copy {
	max-width: 660px !important;
}

body.home .aslab-contact--v4 .aslab-contact__cta,
body.home .aslab-contact--v4 .kb-buttons-wrap {
	width: 100% !important;
	justify-content: center !important;
	text-align: center !important;
}

body.home .aslab-contact--v4 .aslab-contact__cta {
	margin-top: 6px !important;
	padding-top: 8px !important;
}

@media (max-width: 767px) {
	body.home .aslab-contact--v4 .aslab-contact__inner--single,
	body.home .aslab-contact--v4 .aslab-contact__inner--single > .kt-inside-inner-col {
		max-width: none !important;
	}

	body.home .aslab-contact--v4 .aslab-title,
	body.home .aslab-contact--v4 .aslab-copy {
		max-width: 100% !important;
	}
}
