.su-badges { display: flex; flex-wrap: wrap; gap: 0.4rem; margin: 0.5rem 0; }
.su-badge {
	display: inline-block;
	font-size: 0.8125rem;
	font-weight: 500;
	line-height: 1.2;
	padding: 0.3rem 0.65rem;
	border-radius: 999px;
	background: #e6f1fb;
	color: #0f2a4a;
}
.su-badge--grado { background: #0f2a4a; color: #fff; }
.su-badge--noleggio { background: #e1f5ee; color: #085041; }

.su-scheda { margin: 1rem 0; }
.su-scheda--compatta { margin: 0.25rem 0 0.5rem; }
.su-scheda--compatta .su-badges { margin: 0.25rem 0; }
.su-scheda__grado, .su-scheda__incluso { margin: 0.5rem 0; font-size: 0.9375rem; }

.su-specifiche { width: 100%; border-collapse: collapse; font-size: 0.9375rem; margin: 0.75rem 0; }
.su-specifiche th,
.su-specifiche td { text-align: left; padding: 0.5rem 0.65rem; border-bottom: 1px solid #d9e2ec; vertical-align: top; }
.su-specifiche th { width: 38%; font-weight: 500; color: #0f2a4a; }

.su-noleggio {
	border: 1px solid #9fe1cb;
	background: #f4faf8;
	border-radius: 12px;
	padding: 1rem 1.25rem;
	margin: 1.25rem 0;
}
.su-noleggio p { margin: 0 0 0.5rem; }
.su-noleggio p:last-child { margin-bottom: 0; }
.su-noleggio__titolo { font-weight: 500; color: #0f2a4a; }
.su-noleggio__canone { font-size: 1.125rem; }
.su-noleggio__nota { font-size: 0.875rem; color: #5f5e5a; }
.su-noleggio__bottone,
.su-prodotto .wp-element-button { display: inline-block; text-decoration: none; }

.su-griglia-noleggio {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(min(100%, 16rem), 1fr));
	gap: 1.25rem;
	margin-top: 1.5rem;
}
.su-prodotto {
	display: flex;
	flex-direction: column;
	gap: 0.4rem;
	background: #fff;
	border: 1px solid #d9e2ec;
	border-radius: 12px;
	padding: 1rem;
}
.su-prodotto img { display: block; width: 100%; height: auto; border-radius: 8px; }
.su-prodotto h3 { font-size: 1.0625rem; margin: 0.25rem 0 0; }
.su-prodotto h3 a { text-decoration: none; color: #0f2a4a; }
.su-prodotto p { margin: 0; font-size: 0.9375rem; }
.su-prodotto__azioni { margin-top: auto; padding-top: 0.75rem; display: flex; align-items: center; gap: 0.75rem; flex-wrap: wrap; }
.su-link-secondario { color: #0b7c79; font-weight: 500; }

.su-batteria { margin: 0.75rem 0; padding: 0.85rem 1rem; background: #f4f8fb; border-radius: 10px; }
.su-batteria__testo { display: flex; justify-content: space-between; align-items: baseline; font-size: 0.9375rem; color: #0f2a4a; }
.su-batteria__testo strong { font-size: 1.125rem; }
.su-batteria__barra { height: 8px; margin-top: 0.4rem; background: #d9e2ec; border-radius: 999px; overflow: hidden; }
.su-batteria__barra span { display: block; height: 100%; background: #0b7c79; border-radius: 999px; }
.su-batteria__nota { margin: 0.4rem 0 0; font-size: 0.8125rem; color: #5f5e5a; }

.su-scheda__hint { margin: 0.5rem 0; font-size: 0.9375rem; color: #5f5e5a; }
.su-legenda { margin: 0.5rem 0 0; padding-left: 1.1rem; font-size: 0.875rem; color: #5f5e5a; }
.su-legenda li { margin-bottom: 0.25rem; }
.su-scheda-var { margin: 0.75rem 0; }

/* Galleria immagini del prodotto: miniature staccate e angoli arrotondati */
.woocommerce-product-gallery .flex-viewport,
.woocommerce-product-gallery__image,
.woocommerce-product-gallery__image img,
.wc-block-product-gallery-large-image,
.wc-block-product-gallery-large-image img {
	border-radius: 16px;
	overflow: hidden;
}
.woocommerce-product-gallery .flex-control-thumbs {
	display: grid !important;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 12px;
	margin: 12px 0 0 !important;
	padding: 0 !important;
	list-style: none;
}
.woocommerce-product-gallery .flex-control-thumbs li {
	width: auto !important;
	float: none !important;
	margin: 0 !important;
}
.woocommerce-product-gallery .flex-control-thumbs img {
	display: block;
	width: 100%;
	aspect-ratio: 1 / 1;
	object-fit: cover;
	border-radius: 12px;
	border: 2px solid transparent;
	opacity: 0.65;
	cursor: pointer;
	transition: opacity 0.15s, border-color 0.15s;
}
.woocommerce-product-gallery .flex-control-thumbs img:hover { opacity: 1; }
.woocommerce-product-gallery .flex-control-thumbs img.flex-active { opacity: 1; border-color: #12a3a0; }
.wc-block-product-gallery-thumbnails { gap: 12px; }
.wc-block-product-gallery-thumbnails img { border-radius: 12px; }

/* ------------------------------------------------------------------
 * Pagina del negozio: vetrina, carosello, categorie ed elenco prodotti
 * ---------------------------------------------------------------- */
/* Sulla pagina principale del negozio la vetrina ha già il suo titolo: nascondo titolo e briciole del tema */
.su-negozio-home .woocommerce-products-header,
.su-negozio-home .woocommerce-breadcrumb,
.su-negozio-home .wc-block-breadcrumbs,
.su-negozio-home nav[aria-label="Breadcrumb"],
.su-negozio-home h1.wp-block-post-title,
.su-negozio-home .wp-block-query-title,
.su-negozio-home h1.page-title,
.su-negozio-home h1.woocommerce-products-header__title,
.su-negozio-home .wp-block-woocommerce-legacy-template > h1,
.su-negozio-home main h1:not(.su-vetrina h1) { display: none; }

.su-vetrina {
	margin: 0 0 3rem !important;
	color: #0f2a4a;
	width: 100%;
	max-width: none !important; /* il tema limita i blocchi alla larghezza del testo: qui serve tutta la larghezza */
	box-sizing: border-box;
}
.su-vetrina__intro {
	background: #f4f8fb;
	border-radius: 20px;
	padding: clamp(1.5rem, 4vw, 3rem);
	margin-bottom: 2.5rem;
}
.su-vetrina__intro h1 { margin: 0 0 0.75rem; font-size: clamp(1.9rem, 4vw, 2.75rem); line-height: 1.15; }
.su-vetrina__lead { max-width: 46rem; font-size: 1.125rem; line-height: 1.6; margin: 0 0 1.5rem; color: #1f3d5f; }
.su-vetrina__punti {
	list-style: none;
	margin: 0 0 1.75rem;
	padding: 0;
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(15rem, 1fr));
	gap: 1rem;
}
.su-vetrina__punti li { background: #fff; border-radius: 14px; padding: 1rem 1.15rem; display: flex; flex-direction: column; gap: 0.35rem; border: 1px solid #d9e2ec; }
.su-vetrina__punti strong { color: #0b7c79; font-size: 1rem; }
.su-vetrina__punti span { font-size: 0.9375rem; line-height: 1.5; color: #3b4a5c; }
.su-vetrina__azioni { display: flex; flex-wrap: wrap; align-items: center; gap: 0.75rem 1rem; margin: 0; }
.su-pulsante {
	display: inline-block;
	background: #f28c28;
	color: #0f2a4a;
	font-weight: 500;
	text-decoration: none;
	padding: 0.75rem 1.4rem;
	border-radius: 8px;
}
.su-pulsante:hover { background: #d97a1c; color: #0f2a4a; }
.su-pulsante--chiaro { background: #fff; border: 1.5px solid #0f2a4a; }
.su-pulsante--chiaro:hover { background: #0f2a4a; color: #fff; }
.su-vetrina__link { color: #0b7c79; font-weight: 500; }

.su-vetrina__sezione { margin-bottom: 2.75rem; }
.su-vetrina__testata { display: flex; align-items: center; justify-content: space-between; gap: 1rem; margin-bottom: 1rem; }
.su-vetrina__testata h2, .su-vetrina__titolo-elenco { margin: 0; font-size: clamp(1.4rem, 2.5vw, 1.75rem); color: #0f2a4a; }
.su-vetrina__titolo-elenco { margin: 0 0 1rem; }

.su-carosello__comandi { display: flex; gap: 0.5rem; }
.su-carosello__freccia {
	width: 2.5rem; height: 2.5rem; border-radius: 50%;
	border: 1.5px solid #0f2a4a; background: #fff; color: #0f2a4a;
	font-size: 1.5rem; line-height: 1; cursor: pointer; padding: 0 0 0.15rem;
}
.su-carosello__freccia:hover { background: #0f2a4a; color: #fff; }
.su-carosello__freccia[hidden] { display: none; }
.su-carosello__pista {
	list-style: none; margin: 0; padding: 0.25rem 0 0.75rem;
	display: flex; gap: 1rem;
	overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: thin;
}
.su-carosello__voce {
	flex: 0 0 clamp(11rem, 22%, 15rem);
	scroll-snap-align: start;
	background: #fff; border: 1px solid #d9e2ec; border-radius: 16px; padding: 0.75rem;
	display: flex; flex-direction: column; gap: 0.35rem;
}
.su-carta { display: flex; flex-direction: column; gap: 0.35rem; text-decoration: none; color: #0f2a4a; }
.su-carta__img { display: block; aspect-ratio: 1 / 1; border-radius: 12px; overflow: hidden; background: #f4f8fb; }
.su-carta__img img { width: 100%; height: 100%; object-fit: cover; display: block; }
.su-carta__nome { font-weight: 500; font-size: 0.9375rem; line-height: 1.3; }
.su-carta__prezzo { color: #0b7c79; font-weight: 500; }
.su-carosello__voce .su-scheda { margin: 0; }
.su-carosello__voce .su-badges { gap: 0.25rem; }

.su-categorie > .su-categoria { flex-basis: clamp(11.5rem, 18%, 14.5rem); }
.su-carta__varianti { font-size: 0.8125rem; color: #5f5e5a; line-height: 1.3; }
.su-categoria { display: flex; flex-direction: column; gap: 0.5rem; background: #fff; border: 1px solid #d9e2ec; border-radius: 16px; padding: 0.75rem; }
.su-categoria__link { display: flex; flex-direction: column; gap: 0.5rem; text-decoration: none; color: #0f2a4a; }
.su-categoria__img { display: block; aspect-ratio: 4 / 3; border-radius: 12px; overflow: hidden; background: #0f2a4a; }
.su-categoria__img img { width: 100%; height: 100%; object-fit: cover; display: block; }
.su-categoria__img--vuota { background: linear-gradient(135deg, #0f2a4a, #12a3a0); }
.su-categoria__nome { font-weight: 500; font-size: 1.0625rem; }
.su-categoria__link:hover .su-categoria__nome { color: #0b7c79; }
.su-categoria__figli { display: flex; flex-wrap: wrap; gap: 0.3rem 0.5rem; font-size: 0.8125rem; }
.su-categoria__figli a { color: #0b7c79; text-decoration: none; background: #f4f8fb; padding: 0.15rem 0.55rem; border-radius: 999px; }
.su-categoria__figli a:hover { background: #0b7c79; color: #fff; }

/* Elenco prodotti più ordinato e con immagini più piccole */
.woocommerce ul.products, ul.products {
	display: grid !important;
	grid-template-columns: repeat(auto-fill, minmax(13rem, 1fr));
	gap: 1.25rem;
	margin: 0 0 2rem !important;
	padding: 0;
	list-style: none;
}
.woocommerce ul.products::before, .woocommerce ul.products::after { display: none !important; }
.woocommerce ul.products li.product, ul.products li.product {
	width: auto !important; float: none !important; margin: 0 !important;
	background: #fff; border: 1px solid #d9e2ec; border-radius: 16px; padding: 0.75rem;
	display: flex; flex-direction: column; gap: 0.35rem;
}
.woocommerce ul.products li.product img, ul.products li.product img {
	width: 100%; height: auto; aspect-ratio: 1 / 1; object-fit: cover; border-radius: 12px; margin: 0 0 0.25rem;
}
.woocommerce ul.products li.product .woocommerce-loop-product__title { font-size: 0.9375rem; font-weight: 500; line-height: 1.3; padding: 0; margin: 0; }
.woocommerce ul.products li.product .price { color: #0b7c79; font-weight: 500; }
.woocommerce ul.products li.product .button { margin-top: auto; }
@media (max-width: 600px) {
	.su-carosello__voce { flex-basis: 70%; }
	.su-categorie > .su-categoria { flex-basis: 62%; }
	.woocommerce ul.products { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0.75rem; }
}
.su-negozio-home .woocommerce-ordering,
.su-negozio-home .woocommerce-result-count,
.su-negozio-home nav.woocommerce-pagination { display: none; }
.su-categoria__sopra { font-size: 0.75rem; color: #5f5e5a; margin-top: -0.15rem; }

/* Ultimi arrivi: angoli arrotondati anche con l'elenco a blocchi di WooCommerce */
.wc-block-product-template,
.wp-block-woocommerce-product-template {
	display: grid !important;
	grid-template-columns: repeat(auto-fill, minmax(13rem, 1fr)) !important;
	gap: 1.25rem !important;
	list-style: none;
	padding: 0;
}
.wc-block-product-template > li,
.wp-block-woocommerce-product-template > li,
.wc-block-product {
	width: auto !important;
	background: #fff;
	border: 1px solid #d9e2ec;
	border-radius: 16px;
	padding: 0.75rem;
	overflow: hidden;
}
.wc-block-components-product-image,
.wc-block-components-product-image img,
.wc-block-product .wp-block-woocommerce-product-image img,
.wc-block-product img,
.woocommerce ul.products li.product a img {
	border-radius: 12px !important;
	overflow: hidden;
}
.wc-block-product img { width: 100%; height: auto; aspect-ratio: 1 / 1; object-fit: cover; }
.woocommerce ul.products li.product { overflow: hidden; }

/* Spazio tra "Ultimi arrivi" e il footer */
.su-negozio-home ul.products,
.su-negozio-home .wc-block-product-template,
.su-negozio-home .wp-block-woocommerce-product-template {
	margin-bottom: clamp(3rem, 7vw, 5.5rem) !important;
}
.su-negozio-home main,
.su-negozio-home .wp-block-woocommerce-legacy-template {
	padding-bottom: clamp(2rem, 5vw, 4rem);
}
.su-negozio-home footer,
.su-negozio-home .wp-site-blocks > footer {
	margin-top: 0;
}

/* ---- Home: "Prodotti in evidenza" e "Dal blog" ---- */
.su-vetrina--home { margin-bottom: 0 !important; }
.su-home__sottotitolo { margin: 0 0 1rem; color: #5f5e5a; max-width: 46rem; }
.su-home__azioni { display: flex; flex-wrap: wrap; gap: 0.75rem; margin: 1.25rem 0 0; }
.su-blog-home { color: #0f2a4a; }
.su-blog-home__griglia { display: grid; grid-template-columns: repeat(auto-fit, minmax(17rem, 1fr)); gap: 1.5rem; }
.su-blog-carta { background: #fff; border-radius: 16px; overflow: hidden; display: flex; flex-direction: column; box-shadow: 0 1px 3px rgba(15, 42, 74, 0.08); }
.su-blog-carta__img { display: block; aspect-ratio: 16 / 10; background: #b5d4f4; overflow: hidden; }
.su-blog-carta__img img { width: 100%; height: 100%; object-fit: cover; display: block; }
.su-blog-carta__testo { padding: 1.1rem 1.25rem 1.4rem; display: flex; flex-direction: column; gap: 0.5rem; flex: 1; }
.su-blog-carta__testo time { font-size: 0.8rem; color: #5f5e5a; }
.su-blog-carta__testo h3 { margin: 0; font-size: 1.15rem; line-height: 1.3; }
.su-blog-carta__testo h3 a { color: #0f2a4a; text-decoration: none; }
.su-blog-carta__testo h3 a:hover { color: #0b7c79; }
.su-blog-carta__testo p { margin: 0; font-size: 0.95rem; color: #3d3d3a; }
.su-blog-carta__leggi { margin-top: auto; font-weight: 600; color: #0b7c79; text-decoration: none; }
.su-blog-carta__leggi:hover { text-decoration: underline; }

/* ---- Home: mission ---- */
.su-mission { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, 0.9fr); gap: clamp(1.5rem, 5vw, 4rem); align-items: center; color: #0f2a4a; }
.su-mission__etichetta { margin: 0 0 0.6rem; font-size: 0.85rem; font-weight: 600; letter-spacing: 0.08em; text-transform: uppercase; color: #0b7c79; }
.su-mission__titolo { margin: 0 0 1rem; font-size: clamp(1.6rem, 3vw, 2.25rem); line-height: 1.25; color: #0f2a4a; }
.su-mission__par { margin: 0 0 0.9rem; font-size: 1.05rem; line-height: 1.65; color: #3d3d3a; }
.su-mission__azioni { margin: 1.4rem 0 0; }
.su-mission__img img { width: 100%; height: auto; display: block; border-radius: 20px; }
@media (max-width: 800px) { .su-mission { grid-template-columns: 1fr; } .su-mission__img { order: -1; } }

/* Ultimi arrivi: schede delle varianti arrivate */
.su-arrivi { list-style: none; margin: 0 0 3rem; padding: 0; display: grid; grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); gap: 1.25rem; }
.su-arrivi .su-carosello__voce { flex: none; width: auto; border: 1px solid #d6e3ee; border-radius: 16px; padding: 0.9rem; background: #fff; display: flex; flex-direction: column; gap: 0.35rem; }
.su-arrivi .su-carta { flex: 1; }
.su-arrivi .su-carta__nome { color: #0b7c79; }

/* Home del negozio: l'elenco standard dei prodotti resta vuoto, gli arrivi sono le schede sopra */
.su-negozio-home .wp-block-woocommerce-product-collection,
.su-negozio-home ul.products,
.su-negozio-home .woocommerce-info,
.su-negozio-home .woocommerce-result-count,
.su-negozio-home .woocommerce-ordering { display: none; }
