/* Klelia prodotti: riquadri prodotto ovunque, scheda prodotto, guida alle taglie (Marketipo, 2 ott 2026).
   Riquadri: modello Porto «bhebrspace» (.porto-tb-item.product) in home, categorie, shop, ricerca.
   Angoli da 10 a 12 px come le tessere della home; tinte dalla palette del sito. */

:root {
	--kp-vino: #632a48;
	--kp-lampone: #a8447a;
	--kp-melanzana: #3b3644;
	--kp-testo: #222529;
	--kp-grigio: #6b6275;
	--kp-tessera: #f7f1f5;
	--kp-tessera-su: #f2e8ef;
	--kp-foto: #efe9ed;
	--kp-filetto: #eadde5;
	--kp-rosa: #fdf3fc;
	--kp-raggio: 12px;
}

/* ───────── Riquadro prodotto ───────── */

.porto-tb-item.product {
	display: flex;
	flex-direction: column;
}
.porto-tb-item.product > .porto-section:first-child {
	flex: 1 1 auto;
	border: 0 !important;
	border-radius: var(--kp-raggio);
	background: var(--kp-tessera);
	padding: 8px !important;
	transition: background-color .35s ease;
}
.porto-tb-item.product > .porto-section:first-child:not(.product-list-type) {
	display: flex;
	flex-direction: column;
}
/* vista a elenco: foto a sinistra, testo a destra, stessa tessera */
.porto-tb-item.product > .product-list-type .product-list-content {
	padding-top: 8px !important;
	padding-bottom: 8px !important;
}
.porto-tb-item.product > .product-list-type .porto-tb-woo-link {
	border-color: #dccfd7 !important;
	border-radius: 999px !important;
	background: #fff !important;
	color: var(--kp-vino) !important;
}
.porto-tb-item.product > .product-list-type .porto-tb-woo-link:hover {
	border-color: var(--kp-vino) !important;
}
.porto-tb-item.product > .product-list-type .porto-tb-addcart {
	padding: 0 18px !important;
	letter-spacing: .1em;
}
/* finestra dell'anteprima rapida (lente sui riquadri) */
.fancybox-wrap:has(.quickview-wrap) .fancybox-skin {
	border-radius: 18px !important;
	overflow: hidden;
}
.quickview-wrap .product-images .owl-stage-outer {
	border-radius: 12px;
	overflow: hidden;
}
.quickview-wrap .product-thumbnails .img-thumbnail {
	border-radius: 8px !important;
	overflow: hidden;
}
.quickview-wrap .sku_wrapper {
	display: none !important;
}
.porto-tb-item.product:hover > .porto-section:first-child {
	background: var(--kp-tessera-su);
}
.porto-tb-item.product .porto-tb-featured-image {
	border: 0 !important;
	border-radius: 8px;
	overflow: hidden;
	background: var(--kp-foto) !important;
	isolation: isolate;
}
.porto-tb-item.product .porto-tb-featured-image .img-thumbnail {
	border-radius: 0;
	background: transparent !important;
}
.porto-tb-item.product .porto-tb-featured-image .img-thumbnail img {
	transition: transform .9s cubic-bezier(.2, .7, .2, 1), opacity .45s ease;
}
.porto-tb-item.product:hover .porto-tb-featured-image .img-thumbnail img {
	transform: scale(1.035);
}

/* testo: tipo di scarpa, nome, prezzo, allineati a sinistra come nelle tessere della home */
.porto-tb-item.product .product-content {
	padding: 14px 8px 8px !important;
	margin: 0 !important;
	text-align: left !important;
}
.porto-tb-item.product .tb-meta-product_cat {
	font-size: 0 !important;
	line-height: 1 !important;
	margin: 0 0 7px !important;
	text-align: left !important;
}
.porto-tb-item.product .tb-meta-product_cat a {
	display: inline-block;
	margin-right: .9em;
	font-size: 10.5px;
	font-weight: 500;
	letter-spacing: .14em;
	line-height: 1.2;
	text-transform: uppercase;
	color: var(--kp-grigio) !important;
}
/* le collezioni (FW2026, Sharp, Off Duty, …) stanno già nel menu: sul riquadro resta il tipo di scarpa */
.porto-tb-item.product .tb-meta-product_cat a:is([href*="/product-category/fw2026/"], [href*="/product-category/sharp/"], [href*="/product-category/off-duty/"], [href*="/product-category/ceremony/"], [href*="/product-category/last-summer-sale/"]) {
	display: none;
}
.porto-tb-item.product .post-title {
	margin: 0 0 5px !important;
	font-size: 16px !important;
	font-weight: 500 !important;
	line-height: 1.3 !important;
	letter-spacing: 0 !important;
	text-align: left !important;
}
.porto-tb-item.product .post-title a {
	color: var(--kp-testo) !important;
}
.porto-tb-item.product .tb-woo-price,
.porto-tb-item.product .tb-woo-price .price {
	margin: 0 !important;
	font-size: 15px !important;
	font-weight: 500 !important;
	line-height: 1.35 !important;
	color: var(--kp-testo) !important;
	text-align: left !important;
}
.porto-tb-item.product .tb-woo-price .amount {
	font-size: inherit !important;
	font-weight: inherit !important;
	line-height: inherit !important;
	color: inherit !important;
}
.porto-tb-item.product .tb-woo-price del {
	margin-right: 6px;
	font-weight: 400;
	color: var(--kp-grigio) !important;
	opacity: 1;
}
.porto-tb-item.product .tb-woo-price ins {
	text-decoration: none;
	color: var(--kp-lampone) !important;
}

/* etichette sulla foto */
.porto-tb-item.product .labels {
	top: 10px !important;
	left: 10px !important;
}
.porto-tb-item.product .labels :is(.onnew, .onsale, .onhot) {
	margin: 0 0 6px !important;
	padding: 6px 10px 5px !important;
	border-radius: 999px !important;
	background: rgba(255, 255, 255, .94) !important;
	box-shadow: 0 1px 6px rgba(59, 54, 68, .1);
	font-size: 10px !important;
	font-weight: 600 !important;
	line-height: 1 !important;
	letter-spacing: .14em;
	text-transform: uppercase;
	color: var(--kp-vino) !important;
}
.porto-tb-item.product .labels .onsale {
	background: var(--kp-lampone) !important;
	color: #fff !important;
}

/* comandi al passaggio del mouse: cerchi bianchi e pillola «Scegli la taglia» dentro la foto */
.porto-tb-item.product .tb-hover-content :is(.porto-tb-wishlist, .porto-tb-quickview) {
	border: 0 !important;
	background: rgba(255, 255, 255, .95) !important;
	box-shadow: 0 2px 10px rgba(59, 54, 68, .14);
	color: var(--kp-vino) !important;
	--add-to-wishlist-icon-color: var(--kp-vino);
}
.porto-tb-item.product .tb-hover-content :is(.porto-tb-wishlist, .porto-tb-quickview):hover {
	background: var(--kp-vino) !important;
	color: #fff !important;
	--add-to-wishlist-icon-color: #fff;
}
.porto-tb-item.product .tb-hover-content .bottom-cart {
	left: 10px !important;
	right: 10px !important;
	bottom: 10px !important;
	width: auto !important;
	min-height: 40px;
	border-radius: 999px !important;
	background: rgba(255, 255, 255, .95) !important;
	box-shadow: 0 2px 12px rgba(59, 54, 68, .14);
	color: var(--kp-vino) !important;
	font-size: 11.5px !important;
	font-weight: 600 !important;
	letter-spacing: .12em !important;
	transition: background-color .25s ease, color .25s ease;
}
.porto-tb-item.product .tb-hover-content .bottom-cart:hover {
	background: var(--kp-vino) !important;
	color: #fff !important;
}

@media (max-width: 767px) {
	.porto-tb-item.product > .porto-section:first-child {
		padding: 5px !important;
		border-radius: 10px;
	}
	.porto-tb-item.product .porto-tb-featured-image {
		border-radius: 7px;
	}
	.porto-tb-item.product .product-content {
		padding: 10px 6px 6px !important;
	}
	.porto-tb-item.product .tb-meta-product_cat a {
		font-size: 9.5px;
		letter-spacing: .12em;
	}
	.porto-tb-item.product .post-title {
		font-size: 14.5px !important;
	}
	.porto-tb-item.product .tb-woo-price,
	.porto-tb-item.product .tb-woo-price .price {
		font-size: 14px !important;
	}
	.porto-tb-item.product .labels {
		top: 8px !important;
		left: 8px !important;
	}
	/* sul telefono il riquadro intero porta al prodotto: la freccia nel cerchio non serve */
	.porto-tb-item.product .tb-hover-content .porto-tb-addcart {
		display: none !important;
	}
}

/* ───────── Barra e filtri delle categorie: stessi angoli dei riquadri ───────── */

:is(body.archive, body.search) :is(.woocommerce-ordering, .woocommerce-viewing) select {
	width: auto !important;
	max-width: none !important;
	height: 40px !important;
	padding: 0 38px 0 16px !important;
	border: 1px solid #dccfd7 !important;
	border-radius: 999px !important;
	background-color: #fff !important;
	background-position: right 14px center !important;
	font-size: 13.5px !important;
	color: var(--kp-testo) !important;
	cursor: pointer;
}
:is(body.archive, body.search) :is(.woocommerce-ordering, .woocommerce-viewing) select:hover {
	border-color: var(--kp-vino) !important;
}
:is(body.archive, body.search) .gridlist-toggle a {
	display: inline-grid !important;
	place-items: center;
	width: 40px !important;
	height: 40px !important;
	border: 1px solid #dccfd7 !important;
	border-radius: 10px !important;
	color: var(--kp-grigio) !important;
	transition: border-color .2s ease, color .2s ease;
}
:is(body.archive, body.search) .gridlist-toggle a.active,
:is(body.archive, body.search) .gridlist-toggle a:hover {
	border-color: var(--kp-vino) !important;
	background: var(--kp-rosa) !important;
	color: var(--kp-vino) !important;
}
:is(body.archive, body.search) .price_slider_amount .button {
	height: 38px !important;
	padding: 0 18px !important;
	border: 1px solid #dccfd7 !important;
	border-radius: 999px !important;
	background: #fff !important;
	font-size: 12px !important;
	font-weight: 600 !important;
	letter-spacing: .1em;
	text-transform: uppercase;
	color: var(--kp-vino) !important;
}
:is(body.archive, body.search) .price_slider_amount .button:hover {
	border-color: var(--kp-vino) !important;
	background: var(--kp-vino) !important;
	color: #fff !important;
}
:is(body.archive, body.search) .woocommerce-widget-layered-nav-list li a {
	border-radius: 8px !important;
	transition: border-color .2s ease, background-color .2s ease, color .2s ease;
}
:is(body.archive, body.search) .woocommerce-widget-layered-nav-list li a:hover {
	border-color: var(--kp-vino) !important;
	color: var(--kp-vino) !important;
}
:is(body.archive, body.search) .woocommerce-widget-layered-nav-list li.chosen a {
	border-color: var(--kp-vino) !important;
	background: var(--kp-vino) !important;
	color: #fff !important;
}

/* ───────── Scheda prodotto ───────── */

/* spazi lasciati dai widget tolti (codice, «Reso/cambio», tabella «Specifiche», titoli della sezione sotto) */
.elementor-widget:has(> .kp-vuoto),
.elementor-widget:has(> .elementor-widget-container > .kp-vuoto) {
	display: none !important;
}
.e-con.e-parent:has(.kp-vuoto):not(:has(.elementor-widget-porto_cp_add_to_cart, .elementor-widget-porto_cp_title, .elementor-widget-porto_cp_image, .kp-correlati)) {
	display: none !important;
}
.e-con:has(> .e-con-inner > .elementor-widget > .kp-correlati) > .e-con-inner > .elementor-widget:not(:has(> .kp-correlati)) {
	display: none !important;
}

/* colonne: foto più larghe, scheda più stretta */
@media (min-width: 1025px) {
	body.single-product .e-con:has(> .e-con-inner > .e-con > .elementor-widget-porto_cp_image) > .e-con-inner {
		column-gap: 56px !important;
		justify-content: space-between;
	}
	body.single-product .e-con:has(> .elementor-widget-porto_cp_image):not(:has(.elementor-widget-porto_cp_title)) {
		width: 55% !important;
		--width: 55%;
		flex: 0 0 auto !important;
	}
	body.single-product .e-con:has(> .elementor-widget-porto_cp_title):not(:has(.elementor-widget-porto_cp_image)) {
		width: calc(45% - 56px) !important;
		--width: calc(45% - 56px);
		flex: 0 0 auto !important;
	}
}

/* galleria */
body.single-product .elementor-widget-porto_cp_image .product-image-slider .owl-stage-outer,
body.single-product .elementor-widget-porto_cp_image .product-images > .img-thumbnail {
	border-radius: 16px;
	overflow: hidden;
	isolation: isolate;
}
body.single-product .elementor-widget-porto_cp_image .product-images .img-thumbnail,
body.single-product .elementor-widget-porto_cp_image .product-images .img-thumbnail .inner {
	border: 0 !important;
	border-radius: 0;
	background: var(--kp-foto);
}
body.single-product .elementor-widget-porto_cp_image .product-images .owl-nav button {
	width: 42px !important;
	height: 42px !important;
	border-radius: 50% !important;
	background: rgba(255, 255, 255, .94) !important;
	box-shadow: 0 2px 12px rgba(59, 54, 68, .14);
	color: var(--kp-vino) !important;
}
body.single-product .elementor-widget-porto_cp_image .product-images .zoom {
	border-radius: 50% !important;
	background: rgba(255, 255, 255, .94) !important;
	color: var(--kp-vino) !important;
	box-shadow: 0 2px 12px rgba(59, 54, 68, .14);
}
body.single-product .elementor-widget-porto_cp_image .product-thumbnails {
	margin-top: 12px;
}
body.single-product .elementor-widget-porto_cp_image .product-thumbnails .img-thumbnail {
	border: 1.5px solid transparent !important;
	border-radius: 10px !important;
	overflow: hidden;
	background: var(--kp-foto);
	opacity: .72;
	transition: opacity .25s ease, border-color .25s ease;
	cursor: pointer;
}
body.single-product .elementor-widget-porto_cp_image .product-thumbnails .img-thumbnail:hover,
body.single-product .elementor-widget-porto_cp_image .product-thumbnails .selected .img-thumbnail,
body.single-product .elementor-widget-porto_cp_image .product-thumbnails .img-thumbnail.selected {
	opacity: 1;
	border-color: var(--kp-vino) !important;
}
body.single-product .elementor-widget-porto_cp_image .labels {
	top: 16px !important;
	left: 16px !important;
	z-index: 3;
}
body.single-product .elementor-widget-porto_cp_image .labels :is(.onnew, .onsale, .onhot) {
	padding: 7px 12px 6px !important;
	border-radius: 999px !important;
	background: rgba(255, 255, 255, .94) !important;
	box-shadow: 0 1px 6px rgba(59, 54, 68, .1);
	font-size: 10.5px !important;
	font-weight: 600 !important;
	line-height: 1 !important;
	letter-spacing: .14em;
	text-transform: uppercase;
	color: var(--kp-vino) !important;
}

/* titolo, prezzo, frecce tra i prodotti */
body.single-product .elementor-widget-porto_cp_title .product_title {
	margin: 0 76px 10px 0 !important;
	font-size: 34px !important;
	font-weight: 500 !important;
	line-height: 1.12 !important;
	letter-spacing: -.01em !important;
	color: var(--kp-testo) !important;
}
body.single-product .elementor-widget-porto_cp_price .price {
	margin: 0 !important;
	font-size: 22px !important;
	font-weight: 400 !important;
	line-height: 1.3 !important;
	color: var(--kp-testo) !important;
}
body.single-product .elementor-widget-porto_cp_price .price .amount {
	font-size: inherit !important;
	font-weight: inherit !important;
	color: inherit !important;
}
body.single-product .elementor-widget-porto_cp_next_prev_nav .product-nav .product-link {
	width: 34px !important;
	height: 34px !important;
	border: 1px solid var(--kp-filetto) !important;
	border-radius: 50% !important;
	color: var(--kp-vino) !important;
}

/* racconto e scheda tecnica */
body.single-product .kp-sintesi {
	margin: 14px 0 4px;
}
body.single-product .kp-racconto p {
	max-width: 54ch;
	margin: 0 0 20px !important;
	font-size: 16px !important;
	font-weight: 300 !important;
	line-height: 1.65 !important;
	color: #3d3843 !important;
}
body.single-product .kp-spec {
	display: grid;
	grid-template-columns: 1fr 1fr;
	margin: 0 !important;
	border: 1px solid var(--kp-filetto);
	border-radius: var(--kp-raggio);
	overflow: hidden;
}
body.single-product .kp-spec-voce {
	padding: 13px 18px 12px;
	border-top: 1px solid var(--kp-filetto);
}
body.single-product .kp-spec-voce:nth-child(-n + 2) {
	border-top: 0;
}
body.single-product .kp-spec-voce:nth-child(odd) {
	border-right: 1px solid var(--kp-filetto);
}
body.single-product .kp-spec-voce:last-child:nth-child(odd) {
	grid-column: 1 / -1;
	border-right: 0;
}
body.single-product .kp-spec dt {
	margin: 0 0 4px !important;
	font-size: 10.5px !important;
	font-weight: 600 !important;
	line-height: 1.2 !important;
	letter-spacing: .14em;
	text-transform: uppercase;
	color: var(--kp-grigio) !important;
}
body.single-product .kp-spec dd {
	margin: 0 !important;
	font-size: 15px !important;
	font-weight: 500 !important;
	line-height: 1.35 !important;
	color: var(--kp-testo) !important;
}

/* categorie in fondo alla colonna, piccole */
body.single-product .elementor-widget-porto_cp_meta {
	order: 90;
	margin-top: 16px;
}
body.single-product .elementor-widget-porto_cp_meta .product_meta {
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	font-size: 12.5px !important;
	letter-spacing: .02em;
	text-transform: none !important;
	color: var(--kp-grigio) !important;
}
body.single-product .elementor-widget-porto_cp_meta .product_meta a {
	font-weight: 500 !important;
	text-transform: none !important;
	color: var(--kp-vino) !important;
}

/* posto della guida: il pulsante lo sposta il JS nella riga della taglia */
body.single-product .e-con:has(> .e-con-inner > .elementor-widget > .kp-guida-posto),
body.single-product .e-con:has(> .elementor-widget > .kp-guida-posto) {
	min-height: 0 !important;
	padding: 0 !important;
	background: none !important;
}
body.single-product .e-con:has(> .e-con-inner > .elementor-widget > .kp-guida-posto:empty),
body.single-product .e-con:has(> .elementor-widget > .kp-guida-posto:empty) {
	display: none !important;
}

/* taglie */
:is(body.single-product .elementor-widget-porto_cp_add_to_cart, .quickview-wrap) table.variations {
	width: 100%;
	margin: 6px 0 4px !important;
	border: 0;
}
:is(body.single-product .elementor-widget-porto_cp_add_to_cart, .quickview-wrap) table.variations tbody,
:is(body.single-product .elementor-widget-porto_cp_add_to_cart, .quickview-wrap) table.variations tr {
	display: block;
}
:is(body.single-product .elementor-widget-porto_cp_add_to_cart, .quickview-wrap) table.variations th.label {
	display: flex;
	align-items: center;
	gap: 10px;
	width: 100%;
	min-height: 32px;
	margin: 0 0 10px;
	padding: 0 !important;
	border: 0;
	line-height: 1.2;
	text-align: left;
}
:is(body.single-product .elementor-widget-porto_cp_add_to_cart, .quickview-wrap) table.variations th.label label {
	margin: 0 !important;
	font-size: 11px !important;
	font-weight: 600 !important;
	letter-spacing: .16em !important;
	text-transform: uppercase !important;
	color: var(--kp-testo) !important;
}
:is(body.single-product .elementor-widget-porto_cp_add_to_cart, .quickview-wrap) table.variations th.label label::after {
	content: none !important;
}
body.single-product .kp-taglia-scelta {
	font-size: 15px;
	font-weight: 500;
	color: var(--kp-vino);
}
body.single-product .kp-taglia-scelta:empty {
	display: none;
}
body.single-product .kp-taglia-scelta::before {
	content: "";
	display: inline-block;
	width: 4px;
	height: 4px;
	margin: 0 10px 3px 0;
	border-radius: 50%;
	background: currentColor;
	vertical-align: middle;
}
body.single-product .kp-guida-apri {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	margin-left: auto;
	min-height: 32px;
	font-size: 13.5px;
	font-weight: 500;
	letter-spacing: 0;
	text-transform: none;
	text-decoration: underline;
	text-decoration-thickness: 1px;
	text-underline-offset: 4px;
	color: var(--kp-vino) !important;
}
body.single-product .kp-guida-apri svg {
	flex: none;
	fill: none;
	stroke: currentColor;
	stroke-width: 1.3;
	stroke-linecap: round;
	stroke-linejoin: round;
}
body.single-product .kp-guida-apri:hover {
	text-decoration-thickness: 2px;
}
:is(body.single-product .elementor-widget-porto_cp_add_to_cart, .quickview-wrap) table.variations td.value {
	display: block;
	padding: 0 !important;
	border: 0;
}
:is(body.single-product .elementor-widget-porto_cp_add_to_cart, .quickview-wrap) .filter-item-list {
	display: grid !important;
	grid-template-columns: repeat(auto-fit, minmax(40px, 1fr));
	gap: 8px;
	margin: 0 !important;
	padding: 0 !important;
}
:is(body.single-product .elementor-widget-porto_cp_add_to_cart, .quickview-wrap) .filter-item-list li {
	margin: 0 !important;
	padding: 0 !important;
}
:is(body.single-product .elementor-widget-porto_cp_add_to_cart, .quickview-wrap) .filter-item-list .filter-item {
	display: flex !important;
	align-items: center;
	justify-content: center;
	width: 100% !important;
	min-width: 0 !important;
	height: 48px !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 1px solid #dccfd7 !important;
	border-radius: 10px !important;
	background: #fff !important;
	box-shadow: none !important;
	font-size: 15px !important;
	font-weight: 500 !important;
	line-height: 1 !important;
	color: var(--kp-testo) !important;
	/* niente transizione sul riempimento: la taglia scelta si accende e si spegne subito */
	transition: border-color .2s ease;
}
:is(body.single-product .elementor-widget-porto_cp_add_to_cart, .quickview-wrap) .filter-item-list .filter-item:hover {
	border-color: var(--kp-vino) !important;
}
/* taglia scelta: sulla scheda la segna klelia-prodotti.js con aria-pressed, allineato al select di WooCommerce
   (data-kp-taglie sulla lista); senza JS e nell'anteprima rapida resta la classe active di Porto */
:is(body.single-product .elementor-widget-porto_cp_add_to_cart, .quickview-wrap) .filter-item-list:not([data-kp-taglie]) :is(li.active > .filter-item, .filter-item.active),
:is(body.single-product .elementor-widget-porto_cp_add_to_cart, .quickview-wrap) .filter-item-list[data-kp-taglie] .filter-item[aria-pressed="true"] {
	border-color: var(--kp-vino) !important;
	background: var(--kp-vino) !important;
	color: #fff !important;
}
:is(body.single-product .elementor-widget-porto_cp_add_to_cart, .quickview-wrap) .filter-item-list :is(li.disabled > .filter-item, .filter-item.disabled) {
	border-color: #eee6eb !important;
	background: linear-gradient(to top left, transparent calc(50% - .6px), #ddd2d9 50%, transparent calc(50% + .6px)) #fff !important;
	color: #b3a9b1 !important;
	cursor: not-allowed;
}
:is(body.single-product .elementor-widget-porto_cp_add_to_cart, .quickview-wrap) .reset_variations {
	display: none !important;
}
:is(body.single-product .elementor-widget-porto_cp_add_to_cart, .quickview-wrap) .single_variation .stock {
	display: flex;
	align-items: center;
	gap: 8px;
	width: auto !important;
	margin: 12px 0 0 !important;
	padding: 0 !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: none !important;
	letter-spacing: 0 !important;
	text-transform: none !important;
	font-size: 13.5px !important;
	font-weight: 400 !important;
	color: var(--kp-grigio) !important;
}
:is(body.single-product .elementor-widget-porto_cp_add_to_cart, .quickview-wrap) .single_variation .stock::before {
	content: "";
	position: static !important;
	flex: none;
	margin: 0 !important;
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: #3f8a5c;
}
:is(body.single-product .elementor-widget-porto_cp_add_to_cart, .quickview-wrap) .single_variation .stock.out-of-stock::before {
	background: var(--kp-lampone);
}
:is(body.single-product .elementor-widget-porto_cp_add_to_cart, .quickview-wrap) .single_variation .price {
	display: none;
}

/* quantità e carrello: senza i filetti di Porto sopra e sotto */
:is(body.single-product .elementor-widget-porto_cp_add_to_cart, .quickview-wrap) .single_variation_wrap {
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
}
:is(body.single-product .elementor-widget-porto_cp_add_to_cart, .quickview-wrap) .product-summary-wrap {
	margin-bottom: 10px;
}
:is(body.single-product .elementor-widget-porto_cp_add_to_cart, .quickview-wrap) :is(.woocommerce-variation-add-to-cart, form.cart:not(.variations_form)) {
	display: flex !important;
	flex-wrap: nowrap;
	align-items: stretch;
	gap: 10px;
	margin: 18px 0 0 !important;
	padding: 0 !important;
	border: 0 !important;
}
:is(body.single-product .elementor-widget-porto_cp_add_to_cart, .quickview-wrap) .quantity {
	display: flex !important;
	flex: none;
	align-items: center;
	width: 124px !important;
	height: 54px !important;
	margin: 0 !important;
	padding: 0 4px !important;
	border: 1px solid #dccfd7 !important;
	border-radius: 999px !important;
	background: #fff;
}
:is(body.single-product .elementor-widget-porto_cp_add_to_cart, .quickview-wrap) .quantity :is(.minus, .plus) {
	width: 38px !important;
	height: 38px !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	border-radius: 50% !important;
	background: transparent !important;
	font-size: 18px !important;
	line-height: 1 !important;
	color: var(--kp-testo) !important;
}
:is(body.single-product .elementor-widget-porto_cp_add_to_cart, .quickview-wrap) .quantity :is(.minus, .plus):hover {
	background: var(--kp-rosa) !important;
	color: var(--kp-vino) !important;
}
:is(body.single-product .elementor-widget-porto_cp_add_to_cart, .quickview-wrap) .quantity .qty {
	flex: 1;
	width: 38px !important;
	height: 52px !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
	font-size: 16px !important;
	font-weight: 500 !important;
	text-align: center;
	color: var(--kp-testo) !important;
}
:is(body.single-product .elementor-widget-porto_cp_add_to_cart, .quickview-wrap) .single_add_to_cart_button {
	flex: 1 1 auto;
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	gap: 10px;
	height: 54px !important;
	margin: 0 !important;
	padding: 0 24px !important;
	border: 0 !important;
	border-radius: 999px !important;
	background: var(--kp-vino) !important;
	box-shadow: none !important;
	font-size: 13px !important;
	font-weight: 600 !important;
	line-height: 1 !important;
	letter-spacing: .14em !important;
	text-transform: uppercase !important;
	color: #fff !important;
	opacity: 1 !important;
	transition: background-color .25s ease;
}
:is(body.single-product .elementor-widget-porto_cp_add_to_cart, .quickview-wrap) .single_add_to_cart_button:hover {
	background: #4e1f38 !important;
}
:is(body.single-product .elementor-widget-porto_cp_add_to_cart, .quickview-wrap) .single_add_to_cart_button.disabled {
	background: #8f6880 !important;
	cursor: pointer;
}
:is(body.single-product .elementor-widget-porto_cp_add_to_cart, .quickview-wrap) .single_add_to_cart_button::before {
	margin: 0 !important;
	color: inherit !important;
}

/* lista dei desideri */
:is(body.single-product .elementor-widget-porto_cp_wishlist, .quickview-wrap) .add_to_wishlist,
:is(body.single-product .elementor-widget-porto_cp_wishlist, .quickview-wrap) .yith-wcwl-wishlistexistsbrowse a,
:is(body.single-product .elementor-widget-porto_cp_wishlist, .quickview-wrap) .yith-wcwl-wishlistaddedbrowse a {
	display: inline-flex !important;
	align-items: center;
	gap: 9px;
	min-height: 40px;
	font-size: 14px !important;
	font-weight: 500 !important;
	letter-spacing: 0 !important;
	text-transform: none !important;
	color: var(--kp-testo) !important;
}
:is(body.single-product .elementor-widget-porto_cp_wishlist, .quickview-wrap) a span {
	font-size: 14px !important;
	font-weight: 500 !important;
	letter-spacing: 0 !important;
	text-transform: none !important;
	color: inherit !important;
}
:is(body.single-product .elementor-widget-porto_cp_wishlist, .quickview-wrap) .add_to_wishlist:hover {
	color: var(--kp-vino) !important;
}
:is(body.single-product .elementor-widget-porto_cp_wishlist, .quickview-wrap) svg {
	width: 20px !important;
	height: 20px !important;
	color: var(--kp-vino);
}

/* garanzie */
body.single-product .kp-garanzie {
	margin: 10px 0 12px !important;
	padding: 4px 20px !important;
	list-style: none !important;
	border-radius: 14px;
	background: var(--kp-rosa);
}
body.single-product .kp-garanzie li {
	display: flex;
	align-items: center;
	gap: 14px;
	margin: 0 !important;
	padding: 13px 0 !important;
	border-top: 1px solid rgba(99, 42, 72, .09);
	font-size: 14px;
	line-height: 1.4;
	color: var(--kp-grigio);
}
body.single-product .kp-garanzie li::before {
	content: none !important;
}
body.single-product .kp-garanzie li:first-child {
	border-top: 0;
}
body.single-product .kp-garanzie strong {
	font-weight: 500;
	color: var(--kp-testo);
}
body.single-product .kp-garanzie svg,
body.single-product .kp-aiuto svg {
	flex: none;
	display: block;
	fill: none;
	stroke: currentColor;
	stroke-width: 1.3;
	stroke-linecap: round;
	stroke-linejoin: round;
}
body.single-product .kp-garanzie svg {
	color: var(--kp-vino);
}

/* chiedi a Martina */
body.single-product .e-con:has(> .elementor-widget > .kp-aiuto),
body.single-product .e-con:has(> .e-con-inner > .elementor-widget > .kp-aiuto) {
	padding: 0 !important;
	background: none !important;
}
body.single-product .kp-aiuto {
	display: flex;
	align-items: flex-start;
	gap: 16px;
	padding: 18px 20px;
	border: 1px solid var(--kp-filetto);
	border-radius: 14px;
	background: #fff;
}
body.single-product .kp-aiuto-icona {
	display: grid;
	flex: none;
	place-items: center;
	width: 44px;
	height: 44px;
	border-radius: 50%;
	background: var(--kp-melanzana);
	color: #fff;
}
body.single-product .kp-aiuto p {
	margin: 0 !important;
	font-size: 14px;
	line-height: 1.5;
	color: var(--kp-grigio);
}
body.single-product .kp-aiuto .kp-aiuto-titolo {
	margin: 0 0 2px !important;
	font-size: 15px;
	font-weight: 500;
	color: var(--kp-testo);
}
body.single-product .kp-aiuto-azioni {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin-top: 12px;
}
.kp-pillola {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	min-height: 40px;
	padding: 0 16px;
	border: 1px solid #dccfd7;
	border-radius: 999px;
	background: #fff;
	font-size: 13.5px;
	font-weight: 500;
	line-height: 1;
	text-decoration: none !important;
	color: var(--kp-testo) !important;
	transition: border-color .2s ease, color .2s ease, background-color .2s ease;
}
.kp-pillola svg {
	flex: none;
	fill: none;
	stroke: currentColor;
	stroke-width: 1.4;
	stroke-linecap: round;
	stroke-linejoin: round;
}
.kp-pillola:hover {
	border-color: var(--kp-vino);
	color: var(--kp-vino) !important;
}
.kp-pillola--piena {
	border-color: var(--kp-vino);
	background: var(--kp-vino);
	color: #fff !important;
}
.kp-pillola--piena:hover {
	background: #4e1f38;
	color: #fff !important;
}

/* ───────── Potrebbe piacerti anche ───────── */

.kp-correlati {
	padding: 24px 0 8px;
}
.kp-correlati-testa {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 16px;
	margin: 0 0 26px;
	padding-top: 56px;
	border-top: 1px solid var(--kp-filetto);
}
.kp-occhiello {
	margin: 0 0 10px !important;
	font-size: 11px !important;
	font-weight: 600 !important;
	line-height: 1.2 !important;
	letter-spacing: .16em !important;
	text-transform: uppercase;
	color: var(--kp-vino) !important;
}
.kp-correlati h2 {
	margin: 0 !important;
	font-size: 32px !important;
	font-weight: 500 !important;
	line-height: 1.12 !important;
	letter-spacing: -.01em !important;
	color: var(--kp-testo) !important;
}
.kp-correlati-tutti {
	display: inline-flex;
	flex: none;
	align-items: center;
	gap: 8px;
	min-height: 40px;
	font-size: 14px;
	font-weight: 500;
	text-decoration: underline;
	text-decoration-thickness: 1px;
	text-underline-offset: 4px;
	color: var(--kp-vino) !important;
}
.kp-correlati-tutti svg {
	fill: none;
	stroke: currentColor;
	stroke-width: 1.5;
	stroke-linecap: round;
	stroke-linejoin: round;
	transition: transform .25s ease;
}
.kp-correlati-tutti:hover svg {
	transform: translateX(3px);
}
.kp-griglia {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 20px;
}
.kp-scheda {
	position: relative;
	display: flex;
	flex-direction: column;
	padding: 8px;
	border-radius: var(--kp-raggio);
	background: var(--kp-tessera);
	transition: background-color .35s ease;
}
.kp-scheda:hover {
	background: var(--kp-tessera-su);
}
.kp-scheda-foto {
	position: relative;
	display: block;
	aspect-ratio: 4 / 5;
	border-radius: 8px;
	overflow: hidden;
	background: var(--kp-foto);
	isolation: isolate;
}
.kp-scheda-foto img {
	position: absolute;
	inset: 0;
	width: 100% !important;
	height: 100% !important;
	object-fit: cover;
	transition: transform .9s cubic-bezier(.2, .7, .2, 1), opacity .45s ease;
}
.kp-scheda-foto .kp-scheda-seconda {
	opacity: 0;
}
.kp-scheda:hover .kp-scheda-foto .kp-scheda-seconda {
	opacity: 1;
}
.kp-scheda:hover .kp-scheda-foto img {
	transform: scale(1.035);
}
.kp-scheda-testo {
	padding: 14px 8px 8px;
}
.kp-scheda .kp-scheda-tipo {
	margin: 0 0 7px !important;
	font-size: 10.5px !important;
	font-weight: 500 !important;
	line-height: 1.2 !important;
	letter-spacing: .14em;
	text-transform: uppercase;
	color: var(--kp-grigio) !important;
}
.kp-scheda .kp-scheda-nome {
	margin: 0 0 5px !important;
	font-size: 16px !important;
	font-weight: 500 !important;
	line-height: 1.3 !important;
	letter-spacing: 0 !important;
}
.kp-scheda .kp-scheda-nome a {
	color: var(--kp-testo) !important;
}
.kp-scheda .kp-scheda-nome a::after {
	content: "";
	position: absolute;
	inset: 0;
	border-radius: inherit;
}
.kp-scheda .kp-scheda-prezzo {
	margin: 0 !important;
	font-size: 15px !important;
	font-weight: 500 !important;
	line-height: 1.35 !important;
	color: var(--kp-testo) !important;
}
.kp-scheda .kp-scheda-prezzo .amount {
	font-size: inherit !important;
	font-weight: inherit !important;
	color: inherit !important;
}

/* ───────── Guida alle taglie ───────── */

html.kp-aperto .wa__btn_popup {
	display: none !important;
}
dialog.kp-guida {
	position: fixed;
	inset: 0 0 0 auto;
	width: min(480px, 100vw);
	max-width: 100vw;
	height: 100dvh;
	max-height: 100dvh;
	margin: 0;
	padding: 0;
	border: 0;
	border-radius: 18px 0 0 18px;
	background: #fff;
	box-shadow: -24px 0 60px rgba(59, 54, 68, .18);
	color: var(--kp-testo);
	overflow: hidden;
	overscroll-behavior: contain;
}
dialog.kp-guida[open] {
	display: flex;
	flex-direction: column;
	animation: kp-entra .38s cubic-bezier(.2, .7, .2, 1);
}
dialog.kp-guida::backdrop {
	background: rgba(34, 37, 41, .42);
	animation: kp-sfuma .3s ease;
}
@keyframes kp-entra {
	from { transform: translateX(40px); opacity: 0; }
	to { transform: none; opacity: 1; }
}
@keyframes kp-sfuma {
	from { opacity: 0; }
	to { opacity: 1; }
}
dialog.kp-guida .kp-guida-testa {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 16px;
	padding: 26px 28px 20px;
	border-bottom: 1px solid var(--kp-filetto);
	background: var(--kp-rosa);
}
dialog.kp-guida h2 {
	margin: 0 !important;
	font-size: 28px !important;
	font-weight: 500 !important;
	line-height: 1.12 !important;
	letter-spacing: -.01em !important;
	color: var(--kp-testo) !important;
}
dialog.kp-guida .kp-guida-chiudi {
	display: grid;
	flex: none;
	place-items: center;
	width: 44px;
	height: 44px;
	margin: -6px -10px 0 0;
	padding: 0;
	border: 1px solid var(--kp-filetto);
	border-radius: 50%;
	background: #fff;
	color: var(--kp-testo);
	cursor: pointer;
	transition: border-color .2s ease, color .2s ease;
}
dialog.kp-guida .kp-guida-chiudi:hover {
	border-color: var(--kp-vino);
	color: var(--kp-vino);
}
dialog.kp-guida svg {
	fill: none;
	stroke: currentColor;
	stroke-width: 1.5;
	stroke-linecap: round;
	stroke-linejoin: round;
}
dialog.kp-guida .kp-guida-corpo {
	flex: 1;
	padding: 24px 28px 34px;
	overflow-y: auto;
	overscroll-behavior: contain;
}
dialog.kp-guida p {
	font-size: 15px;
	line-height: 1.6;
	color: var(--kp-grigio);
}
dialog.kp-guida .kp-guida-intro {
	margin: 0 0 20px;
}
dialog.kp-guida .kp-calcolo {
	margin: 0 0 24px;
	padding: 18px 20px 16px;
	border-radius: 14px;
	background: var(--kp-rosa);
}
dialog.kp-guida .kp-calcolo label {
	display: block;
	margin: 0 0 10px;
	font-size: 14.5px;
	font-weight: 500;
	color: var(--kp-testo);
}
dialog.kp-guida .kp-calcolo-riga {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 10px;
}
dialog.kp-guida .kp-calcolo-campo {
	display: flex;
	align-items: center;
	gap: 8px;
	width: 150px;
	height: 50px;
	padding: 0 18px;
	border: 1px solid #dccfd7;
	border-radius: 999px;
	background: #fff;
	transition: border-color .2s ease, box-shadow .2s ease;
}
dialog.kp-guida .kp-calcolo-campo:focus-within {
	border-color: var(--kp-vino);
	box-shadow: 0 0 0 3px rgba(99, 42, 72, .14);
}
dialog.kp-guida .kp-calcolo-campo input {
	width: 100%;
	min-width: 0;
	height: 48px;
	margin: 0;
	padding: 0;
	border: 0 !important;
	outline: 0;
	background: transparent !important;
	box-shadow: none !important;
	font-size: 18px;
	font-weight: 500;
	color: var(--kp-testo);
}
dialog.kp-guida .kp-calcolo-campo span {
	font-size: 15px;
	color: var(--kp-grigio);
}
dialog.kp-guida .kp-scegli {
	height: 50px;
	padding: 0 22px;
	border: 0;
	border-radius: 999px;
	background: var(--kp-vino);
	font-size: 12.5px;
	font-weight: 600;
	letter-spacing: .12em;
	text-transform: uppercase;
	color: #fff;
	cursor: pointer;
	transition: background-color .2s ease;
}
dialog.kp-guida .kp-scegli[hidden] {
	display: none;
}
dialog.kp-guida .kp-scegli:hover {
	background: #4e1f38;
}
dialog.kp-guida .kp-calcolo-esito {
	min-height: 1.6em;
	margin: 12px 0 0;
	font-size: 14px;
	color: var(--kp-testo);
}
dialog.kp-guida .kp-calcolo-esito strong {
	font-weight: 600;
	color: var(--kp-vino);
}
dialog.kp-guida .kp-tabella {
	width: 100%;
	margin: 0 0 30px;
	border: 1px solid var(--kp-filetto);
	border-spacing: 0;
	border-collapse: separate;
	border-radius: 12px;
	overflow: hidden;
	font-size: 15px;
}
dialog.kp-guida .kp-tabella caption {
	position: absolute;
	width: 1px;
	height: 1px;
	overflow: hidden;
	clip: rect(0 0 0 0);
	white-space: nowrap;
}
dialog.kp-guida .kp-tabella :is(th, td) {
	padding: 11px 20px;
	border: 0;
	border-top: 1px solid var(--kp-filetto);
	background: #fff;
	text-align: left;
	font-size: 15px;
	line-height: 1.3;
	color: var(--kp-testo);
	transition: background-color .2s ease, color .2s ease;
}
dialog.kp-guida .kp-tabella thead th {
	border-top: 0;
	background: #faf6f8;
	font-size: 10.5px;
	font-weight: 600;
	letter-spacing: .14em;
	text-transform: uppercase;
	color: var(--kp-grigio);
}
dialog.kp-guida .kp-tabella tbody th {
	width: 42%;
	font-weight: 600;
}
dialog.kp-guida .kp-tabella tbody td {
	font-weight: 400;
}
dialog.kp-guida .kp-tabella tr.kp-tua :is(th, td) {
	background: var(--kp-rosa);
}
dialog.kp-guida .kp-tabella tr.kp-tua th::after {
	content: "scelta";
	margin-left: 10px;
	font-size: 10px;
	font-weight: 600;
	letter-spacing: .12em;
	text-transform: uppercase;
	color: var(--kp-vino);
}
dialog.kp-guida .kp-tabella tr.kp-consigliata :is(th, td) {
	background: var(--kp-vino);
	color: #fff;
}
dialog.kp-guida .kp-tabella tr.kp-consigliata th::after {
	content: "per te";
	margin-left: 10px;
	font-size: 10px;
	font-weight: 600;
	letter-spacing: .12em;
	text-transform: uppercase;
	color: #f4d9e8;
}
dialog.kp-guida .kp-misura h3 {
	margin: 0 0 14px !important;
	font-size: 19px !important;
	font-weight: 500 !important;
	line-height: 1.25 !important;
	color: var(--kp-testo) !important;
}
dialog.kp-guida .kp-misura-disegno {
	display: block;
	width: 100%;
	height: auto;
	margin: 0 0 16px;
	padding: 14px;
	border-radius: 12px;
	background: #faf6f8;
	stroke-width: 1.4;
}
dialog.kp-guida .kp-d-foglio {
	fill: #fff;
	stroke: #e2d4dd;
}
dialog.kp-guida .kp-d-muro {
	stroke: var(--kp-melanzana);
	stroke-width: 4;
}
dialog.kp-guida .kp-d-piede {
	fill: var(--kp-rosa);
	stroke: var(--kp-vino);
}
dialog.kp-guida .kp-d-segno {
	stroke: var(--kp-lampone);
	stroke-dasharray: 4 4;
}
dialog.kp-guida .kp-d-quota {
	stroke: var(--kp-vino);
}
dialog.kp-guida .kp-misura ol {
	margin: 0 0 14px !important;
	padding: 0 !important;
	list-style: none;
	counter-reset: kp-passo;
}
dialog.kp-guida .kp-misura li {
	position: relative;
	margin: 0 0 12px !important;
	padding: 0 0 0 40px !important;
	font-size: 15px;
	line-height: 1.55;
	color: var(--kp-testo);
	counter-increment: kp-passo;
}
dialog.kp-guida .kp-misura li::before {
	content: counter(kp-passo);
	position: absolute;
	top: 0;
	left: 0;
	display: grid;
	place-items: center;
	width: 26px;
	height: 26px;
	border-radius: 50%;
	background: var(--kp-rosa);
	font-size: 12.5px;
	font-weight: 600;
	color: var(--kp-vino);
}
dialog.kp-guida .kp-nota {
	margin: 0 0 26px;
	padding-left: 40px;
	font-size: 14px;
	font-style: italic;
}
dialog.kp-guida .kp-guida-aiuto {
	padding: 20px;
	border: 1px solid var(--kp-filetto);
	border-radius: 14px;
}
dialog.kp-guida .kp-guida-aiuto p {
	margin: 0 0 14px;
	font-size: 14.5px;
}
dialog.kp-guida .kp-guida-aiuto strong {
	font-weight: 600;
	color: var(--kp-testo);
}

/* ───────── Telefono e tablet ───────── */

@media (max-width: 1024px) {
	body.single-product .elementor-widget-porto_cp_title .product_title {
		font-size: 28px !important;
	}
	:is(body.single-product .elementor-widget-porto_cp_add_to_cart, .quickview-wrap) .filter-item-list {
		gap: 6px;
	}
	:is(body.single-product .elementor-widget-porto_cp_add_to_cart, .quickview-wrap) .quantity {
		width: 108px !important;
	}
	:is(body.single-product .elementor-widget-porto_cp_add_to_cart, .quickview-wrap) .single_add_to_cart_button {
		padding: 0 14px !important;
		font-size: 12px !important;
		letter-spacing: .08em !important;
	}
}
@media (max-width: 767px) {
	body.single-product .elementor-widget-porto_cp_image .product-image-slider .owl-stage-outer,
	body.single-product .elementor-widget-porto_cp_image .product-images > .img-thumbnail {
		border-radius: 14px;
	}
	body.single-product .elementor-widget-porto_cp_image .product-thumbnails .img-thumbnail {
		border-radius: 8px !important;
	}
	body.single-product .elementor-widget-porto_cp_title .product_title {
		margin-right: 76px !important;
		font-size: 26px !important;
	}
	body.single-product .elementor-widget-porto_cp_price .price {
		font-size: 20px !important;
	}
	body.single-product .kp-racconto p {
		font-size: 15.5px !important;
	}
	body.single-product .kp-spec-voce {
		padding: 12px 14px 11px;
	}
	body.single-product .kp-spec dd {
		font-size: 14.5px !important;
	}
	:is(body.single-product .elementor-widget-porto_cp_add_to_cart, .quickview-wrap) .filter-item-list {
		gap: 6px;
	}
	:is(body.single-product .elementor-widget-porto_cp_add_to_cart, .quickview-wrap) .filter-item-list .filter-item {
		height: 46px !important;
		font-size: 14.5px !important;
	}
	:is(body.single-product .elementor-widget-porto_cp_add_to_cart, .quickview-wrap) .quantity {
		width: 112px !important;
	}
	:is(body.single-product .elementor-widget-porto_cp_add_to_cart, .quickview-wrap) .single_add_to_cart_button {
		padding: 0 14px !important;
		font-size: 12px !important;
		letter-spacing: .1em !important;
	}
	body.single-product .kp-aiuto {
		padding: 16px;
	}
	.kp-correlati-testa {
		padding-top: 40px;
		margin-bottom: 20px;
	}
	.kp-correlati h2 {
		font-size: 25px !important;
	}
	.kp-griglia {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 12px;
	}
	.kp-scheda {
		padding: 5px;
		border-radius: 10px;
	}
	.kp-scheda-foto {
		border-radius: 7px;
	}
	.kp-scheda-testo {
		padding: 10px 6px 6px;
	}
	.kp-scheda .kp-scheda-tipo {
		font-size: 9.5px !important;
	}
	.kp-scheda .kp-scheda-nome {
		font-size: 14.5px !important;
	}
	.kp-scheda .kp-scheda-prezzo {
		font-size: 14px !important;
	}
	dialog.kp-guida {
		inset: auto 0 0 0;
		width: 100vw;
		height: auto;
		max-height: 92dvh;
		border-radius: 18px 18px 0 0;
		box-shadow: 0 -20px 60px rgba(59, 54, 68, .2);
	}
	dialog.kp-guida[open] {
		animation-name: kp-sale;
	}
	@keyframes kp-sale {
		from { transform: translateY(48px); opacity: 0; }
		to { transform: none; opacity: 1; }
	}
	dialog.kp-guida .kp-guida-testa {
		padding: 20px 20px 16px;
	}
	dialog.kp-guida h2 {
		font-size: 24px !important;
	}
	dialog.kp-guida .kp-guida-corpo {
		padding: 20px 20px 28px;
	}
	dialog.kp-guida .kp-tabella :is(th, td) {
		padding: 10px 16px;
	}
}
@media (prefers-reduced-motion: reduce) {
	dialog.kp-guida[open],
	dialog.kp-guida::backdrop {
		animation: none;
	}
	.porto-tb-item.product .porto-tb-featured-image .img-thumbnail img,
	.kp-scheda-foto img {
		transition: none;
	}
	.porto-tb-item.product:hover .porto-tb-featured-image .img-thumbnail img,
	.kp-scheda:hover .kp-scheda-foto img {
		transform: none;
	}
}
