/* ==========================================================================
   AD Attrezzature — design system ispirato a Ristotecno
   Child theme di Blocksy
   Palette: nero #181818 · rosso #b3001a · grigio #efefef · Nunito Sans
   ========================================================================== */

:root {
	--ad-rosso:        #b3001a;
	--ad-rosso-scuro:  #800013;
	--ad-rosso-acceso: #ff0430;
	--ad-nero:         #181818;
	--ad-nero-puro:    #000000;
	--ad-grigio-3:     #3d3d3d;
	--ad-grigio-5:     #5d5d5d;
	--ad-grigio-a:     #aaaaaa;
	--ad-grigio-c:     #c7c7c7;
	--ad-bordo:        #e2e2e2;
	--ad-fondo:        #efefef;
	--ad-fondo-tenue:  #f7f7f7;
	--ad-verde:        #1a7f4b;
	--ad-verde-tenue:  #c5e7d5;
	--ad-radius:       3px;
	--ad-font:         'Nunito Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Arial, sans-serif;
	--ad-ombra:        0 2px 10px rgba(0, 0, 0, 0.08);
	--ad-ombra-hover:  0 6px 22px rgba(0, 0, 0, 0.14);
	--ad-contenitore:  1320px;
}

/* --- Tipografia globale -------------------------------------------------- */
body,
body.wp-singular,
.entry-content,
button, input, select, textarea {
	font-family: var(--ad-font);
	color: var(--ad-grigio-3);
}
body { font-size: 15px; line-height: 1.6; }

h1, h2, h3, h4, h5, h6,
.entry-content h1, .entry-content h2, .entry-content h3, .entry-content h4 {
	font-family: var(--ad-font);
	color: var(--ad-nero);
	font-weight: 800;
	line-height: 1.18;
	letter-spacing: -0.01em;
}
.entry-content h1, h1 { font-size: clamp(28px, 3.4vw, 42px); }
.entry-content h2, h2 { font-size: clamp(22px, 2.4vw, 30px); }
.entry-content h3, h3 { font-size: clamp(18px, 1.7vw, 22px); }

a { color: var(--ad-nero); }
a:hover { color: var(--ad-rosso); }

/* Titoli di sezione con filetto rosso, come Ristotecno */
.entry-content > h2,
.entry-content > .wp-block-heading {
	position: relative;
	text-transform: uppercase;
	letter-spacing: 0.01em;
	padding-bottom: 12px;
	margin-top: 2.2em;
	margin-bottom: 1.1em;
}
.entry-content > h2::after,
.entry-content > .wp-block-heading::after {
	content: "";
	position: absolute;
	left: 0;
	bottom: 0;
	width: 64px;
	height: 4px;
	background: var(--ad-rosso);
	border-radius: 2px;
}

/* --- Barra promozionale sopra l'header ---------------------------------- */
.ad-topbar {
	background: var(--ad-nero);
	color: #fff;
	font-size: 13px;
	letter-spacing: 0.06em;
	text-align: center;
	padding: 9px 14px;
	font-weight: 700;
	text-transform: uppercase;
}
.ad-topbar a { color: #fff; text-decoration: underline; }

/* --- HERO ---------------------------------------------------------------- */
.ad-hero {
	position: relative;
	background-color: #101010;
	background-image:
		linear-gradient(100deg, rgba(16,16,16,0.96) 0%, rgba(16,16,16,0.90) 44%, rgba(16,16,16,0.58) 74%, rgba(16,16,16,0.45) 100%),
		url("http://adattrezzature.it/wp-content/uploads/2026/08/hero-cucina.jpg");
	background-size: cover, cover;
	background-position: center, center right;
	background-repeat: no-repeat, no-repeat;
	color: #fff;
	border-radius: var(--ad-radius);
	overflow: hidden;
	margin: 0 0 2.4em;
	padding: clamp(38px, 5.5vw, 74px) clamp(24px, 4.5vw, 64px);
	isolation: isolate;
}
/* Sfumatura rossa decorativa d'angolo */
.ad-hero::before {
	content: "";
	position: absolute;
	right: -12%;
	top: -40%;
	width: 62%;
	height: 190%;
	background: radial-gradient(circle at center, rgba(179, 0, 26, 0.55) 0%, rgba(179, 0, 26, 0) 68%);
	transform: rotate(-12deg);
	z-index: -1;
	pointer-events: none;
}
.ad-hero__eyebrow {
	display: inline-block;
	background: var(--ad-rosso);
	color: #fff;
	font-size: 12px;
	font-weight: 800;
	text-transform: uppercase;
	letter-spacing: 0.1em;
	padding: 5px 12px;
	border-radius: 2px;
	margin-bottom: 18px;
}
.ad-hero h1,
.ad-hero__titolo {
	color: #fff;
	font-size: clamp(28px, 4.2vw, 52px);
	font-weight: 900;
	line-height: 1.08;
	margin: 0 0 16px;
	max-width: 18ch;
	text-transform: uppercase;
	letter-spacing: -0.015em;
}
.ad-hero__titolo em { font-style: normal; color: var(--ad-rosso-acceso); }
.ad-hero p,
.ad-hero__sotto {
	color: rgba(255, 255, 255, 0.82);
	font-size: clamp(14.5px, 1.25vw, 17px);
	max-width: 56ch;
	margin: 0 0 26px;
	line-height: 1.55;
}
.ad-hero__azioni { display: flex; flex-wrap: wrap; gap: 12px; }

/* --- Bottoni ------------------------------------------------------------- */
.ad-btn,
.ad-hero__azioni a,
.entry-content .ad-btn {
	display: inline-block;
	background: var(--ad-rosso);
	color: #fff;
	font-weight: 800;
	font-size: 13.5px;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	padding: 0.86em 1.5em;
	border-radius: var(--ad-radius);
	text-decoration: none;
	border: 2px solid var(--ad-rosso);
	transition: background 0.18s ease, border-color 0.18s ease, transform 0.18s ease;
	line-height: 1.15;
}
.ad-btn:hover,
.ad-hero__azioni a:hover {
	background: var(--ad-rosso-scuro);
	border-color: var(--ad-rosso-scuro);
	color: #fff;
	transform: translateY(-1px);
}
.ad-btn--ghost,
.ad-hero__azioni .ad-btn--ghost {
	background: transparent;
	border-color: rgba(255, 255, 255, 0.55);
	color: #fff;
}
.ad-btn--ghost:hover,
.ad-hero__azioni .ad-btn--ghost:hover {
	background: #fff;
	border-color: #fff;
	color: var(--ad-nero);
}

/* Bottoni WooCommerce allineati al brand */
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit,
.woocommerce a.button.alt,
.woocommerce button.button.alt,
.wp-block-button__link {
	background: var(--ad-rosso);
	color: #fff;
	font-family: var(--ad-font);
	font-weight: 800;
	font-size: 13.5px;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	border-radius: var(--ad-radius);
	padding: 0.82em 1.4em;
	border: none;
	transition: background 0.18s ease;
}
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
.woocommerce #respond input#submit:hover,
.woocommerce a.button.alt:hover,
.woocommerce button.button.alt:hover,
.wp-block-button__link:hover {
	background: var(--ad-rosso-scuro);
	color: #fff;
}

/* --- Griglia categorie / settori ---------------------------------------- */
.ad-griglia {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(195px, 1fr));
	gap: 16px;
	margin: 1.6em 0 2.6em;
	padding: 0;
	list-style: none;
}
.ad-griglia__voce {
	border: 1px solid var(--ad-bordo);
	border-radius: var(--ad-radius);
	background: #fff;
	padding: 0;
	overflow: hidden;
	position: relative;
	transition: border-color 0.18s ease, box-shadow 0.18s ease, transform 0.18s ease;
}
.ad-griglia__voce:hover {
	border-color: var(--ad-grigio-c);
	box-shadow: var(--ad-ombra-hover);
	transform: translateY(-3px);
}
.ad-griglia__voce a {
	display: block;
	color: var(--ad-nero);
	font-weight: 700;
	text-decoration: none;
	padding: 0;
}

/* Foto della categoria: riquadro 4:3, zoom morbido in hover */
.ad-griglia__foto {
	display: block;
	position: relative;
	overflow: hidden;
	background: var(--ad-fondo-tenue);
	aspect-ratio: 4 / 3;
}
.ad-griglia__foto::after {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(to top, rgba(0,0,0,0.30) 0%, rgba(0,0,0,0) 55%);
	pointer-events: none;
}
.ad-griglia__img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 0.35s ease;
}
.ad-griglia__voce:hover .ad-griglia__img { transform: scale(1.06); }
.ad-griglia__img--vuota { background: var(--ad-fondo); }

/* Etichetta sotto la foto, con barra rossa che si estende in hover */
.ad-griglia__testo {
	display: block;
	padding: 15px 14px 16px;
	text-align: center;
	position: relative;
	border-top: 3px solid transparent;
	transition: border-color 0.2s ease;
}
.ad-griglia__voce:hover .ad-griglia__testo { border-top-color: var(--ad-rosso); }
.ad-griglia__nome {
	font-size: 14px;
	display: block;
	text-transform: uppercase;
	letter-spacing: 0.02em;
	font-weight: 800;
	line-height: 1.25;
	color: var(--ad-nero);
}
.ad-griglia__voce:hover .ad-griglia__nome { color: var(--ad-rosso); }
.ad-griglia__conta {
	display: block;
	font-size: 12px;
	color: var(--ad-grigio-5);
	font-weight: 600;
	margin-top: 5px;
}

/* --- Schede prodotto nel catalogo --------------------------------------- */
.woocommerce ul.products li.product,
.ct-woo-card-layout-default .product {
	border: 1px solid var(--ad-bordo);
	border-radius: var(--ad-radius);
	background: #fff;
	padding: 14px 14px 18px;
	position: relative;
	transition: border-color 0.18s ease, box-shadow 0.18s ease, transform 0.18s ease;
}
.woocommerce ul.products li.product:hover {
	border-color: var(--ad-grigio-c);
	box-shadow: var(--ad-ombra-hover);
	transform: translateY(-3px);
}
.woocommerce ul.products li.product .woocommerce-loop-product__title,
.woocommerce ul.products li.product h2 {
	font-size: 14px;
	font-weight: 700;
	color: var(--ad-nero);
	line-height: 1.4;
	padding: 10px 0 4px;
	letter-spacing: 0.01em;
}
.woocommerce ul.products li.product a:hover .woocommerce-loop-product__title { color: var(--ad-rosso); }
.woocommerce ul.products li.product .price {
	color: var(--ad-rosso);
	font-size: 1.2em;
	font-weight: 800;
}
.woocommerce ul.products li.product .price del { font-size: 0.72em; color: var(--ad-grigio-a); font-weight: 400; }
.woocommerce ul.products li.product .price ins { text-decoration: none; color: var(--ad-rosso); }

/* Dicitura IVA — standard B2B */
.ad-iva {
	display: block;
	font-size: 11.5px;
	color: var(--ad-grigio-5);
	margin-bottom: 0.6em;
	font-weight: 600;
	font-style: italic;
	letter-spacing: 0.02em;
}

/* Badge disponibilità — stile flag Ristotecno */
.ad-badge {
	display: inline-block;
	font-size: 10.5px;
	font-weight: 800;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	padding: 3px 8px;
	border-radius: 2px;
	margin-bottom: 8px;
	color: #fff;
}
.ad-badge--disponibile { background: var(--ad-verde); }
.ad-badge--ordine      { background: var(--ad-grigio-5); }

/* Flag in overlay sull'immagine, come su Ristotecno */
.woocommerce ul.products li.product .ad-badge {
	position: absolute;
	top: 18px;
	left: 18px;
	z-index: 3;
	margin: 0;
	box-shadow: 0 1px 4px rgba(0,0,0,0.18);
}
.woocommerce span.onsale {
	background: var(--ad-rosso);
	color: #fff;
	font-weight: 800;
	text-transform: uppercase;
	font-size: 11px;
	letter-spacing: 0.05em;
	border-radius: 2px;
	padding: 4px 9px;
	min-height: auto;
	min-width: auto;
	line-height: 1.4;
}

/* Made in Italy */
.ad-made {
	display: inline-block;
	text-transform: uppercase;
	background: var(--ad-verde-tenue);
	color: #14532d;
	border-radius: 2px;
	padding: 1px 8px;
	font-weight: 800;
	font-size: 10.5px;
	letter-spacing: 0.04em;
	margin-bottom: 6px;
}

/* --- Scheda prodotto singolo -------------------------------------------- */
.single-product div.product .product_title {
	color: var(--ad-nero);
	font-weight: 800;
	font-size: clamp(22px, 2.6vw, 32px);
}
.single-product div.product p.price {
	font-size: 2em;
	font-weight: 900;
	color: var(--ad-rosso);
	margin-bottom: 0.1em;
}
.single-product .woocommerce-product-details__short-description {
	border-left: 3px solid var(--ad-rosso);
	padding-left: 16px;
	margin: 1.2em 0;
	color: var(--ad-grigio-5);
}
.single-product .woocommerce-product-details__short-description ul {
	margin: 0;
	padding-left: 18px;
}
.single-product .woocommerce-product-details__short-description li { margin-bottom: 4px; }

/* --- Box richiesta preventivo ------------------------------------------- */
.ad-box-preventivo {
	border: 1px solid var(--ad-bordo);
	border-left: 4px solid var(--ad-rosso);
	background: var(--ad-fondo-tenue);
	padding: 18px 20px;
	border-radius: var(--ad-radius);
	margin: 1.5em 0;
}
.ad-box-preventivo p { margin: 0 0 0.9em; font-size: 14px; color: var(--ad-grigio-5); }
.ad-box-preventivo strong { color: var(--ad-nero); }

/* --- Form preventivo ----------------------------------------------------- */
.wpcf7 label {
	font-weight: 700;
	font-size: 14px;
	color: var(--ad-nero);
	display: block;
	margin-bottom: 1em;
}
.wpcf7 input[type="text"], .wpcf7 input[type="email"],
.wpcf7 input[type="tel"], .wpcf7 textarea, .wpcf7 select {
	width: 100%;
	border: 1px solid var(--ad-bordo);
	border-radius: var(--ad-radius);
	padding: 11px 13px;
	font-size: 14px;
	font-weight: 400;
	font-family: var(--ad-font);
	margin-top: 5px;
	background: #fff;
}
.wpcf7 input:focus, .wpcf7 textarea:focus, .wpcf7 select:focus {
	border-color: var(--ad-rosso);
	outline: none;
	box-shadow: 0 0 0 3px rgba(179, 0, 26, 0.12);
}
.wpcf7 input[type="submit"] {
	background: var(--ad-rosso);
	color: #fff;
	border: none;
	font-weight: 800;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	font-size: 14px;
	padding: 0.9em 2em;
	border-radius: var(--ad-radius);
	cursor: pointer;
	width: auto;
	transition: background 0.18s ease;
}
.wpcf7 input[type="submit"]:hover { background: var(--ad-rosso-scuro); }

/* --- Box servizi / garanzie --------------------------------------------- */
.ad-servizi {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(215px, 1fr));
	gap: 0;
	border: 1px solid var(--ad-bordo);
	border-radius: var(--ad-radius);
	overflow: hidden;
	margin: 2em 0;
	list-style: none;
	padding: 0;
	background: #fff;
	box-shadow: var(--ad-ombra);
}
.ad-servizi li {
	display: flex;
	align-items: center;
	gap: 13px;
	padding: 20px 22px;
	border-right: 1px solid var(--ad-bordo);
	background: #fff;
	position: relative;
	transition: background 0.18s ease;
}
.ad-servizi li:hover { background: var(--ad-fondo-tenue); }
.ad-servizi li:last-child { border-right: none; }
.ad-servizi__icona { font-size: 28px; line-height: 1; flex-shrink: 0; }
.ad-servizi__testo strong {
	display: block;
	font-size: 14px;
	color: var(--ad-nero);
	font-weight: 800;
	text-transform: uppercase;
	letter-spacing: 0.02em;
	line-height: 1.25;
}
.ad-servizi__testo span { font-size: 12.5px; color: var(--ad-grigio-5); }

/* --- Banner promozionali ------------------------------------------------ */
.ad-banner {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(265px, 1fr));
	gap: 18px;
	margin: 2.2em 0;
}
.ad-banner__box {
	border-radius: var(--ad-radius);
	padding: 30px 26px;
	color: #fff;
	background: var(--ad-nero);
	position: relative;
	overflow: hidden;
	isolation: isolate;
	transition: transform 0.18s ease, box-shadow 0.18s ease;
}
.ad-banner__box::before {
	content: "";
	position: absolute;
	right: -30%;
	top: -60%;
	width: 90%;
	height: 220%;
	background: rgba(255, 255, 255, 0.055);
	transform: rotate(20deg);
	z-index: -1;
}
.ad-banner__box:hover { transform: translateY(-3px); box-shadow: var(--ad-ombra-hover); }
.ad-banner__box--rosso  { background: var(--ad-rosso); }
.ad-banner__box--scuro  { background: var(--ad-grigio-3); }
.ad-banner__box h3 {
	color: #fff;
	font-size: 1.2em;
	margin: 0 0 8px;
	text-transform: uppercase;
	font-weight: 800;
	letter-spacing: 0.01em;
}
.ad-banner__box p  { font-size: 13.5px; opacity: 0.88; margin: 0 0 16px; line-height: 1.5; }
.ad-banner__box a {
	display: inline-block;
	background: rgba(255,255,255,0.14);
	border: 1px solid rgba(255,255,255,0.5);
	color: #fff;
	font-size: 12.5px;
	font-weight: 800;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	padding: 9px 16px;
	border-radius: var(--ad-radius);
	text-decoration: none;
	transition: background 0.18s ease, color 0.18s ease;
}
.ad-banner__box a:hover { background: #fff; color: var(--ad-nero); }

/* --- Sidebar categorie (stile Ristotecno) -------------------------------- */
.ad-sidebar-cat {
	border: 1px solid var(--ad-bordo);
	border-radius: var(--ad-radius);
	background: #fff;
	overflow: hidden;
	margin-bottom: 24px;
}
.ad-sidebar-cat__titolo {
	background: var(--ad-nero);
	color: #fff;
	font-size: 14px;
	font-weight: 800;
	text-transform: uppercase;
	letter-spacing: 0.07em;
	padding: 14px 18px;
	margin: 0;
}
.ad-sidebar-cat ul { list-style: none; margin: 0; padding: 0; }
.ad-sidebar-cat li { border-bottom: 1px solid var(--ad-bordo); }
.ad-sidebar-cat li:last-child { border-bottom: none; }
.ad-sidebar-cat li a {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 8px;
	padding: 11px 18px;
	color: var(--ad-grigio-3);
	font-size: 13.5px;
	font-weight: 600;
	text-decoration: none;
	transition: background 0.15s ease, color 0.15s ease, padding-left 0.15s ease;
}
.ad-sidebar-cat li a:hover {
	background: var(--ad-fondo-tenue);
	color: var(--ad-rosso);
	padding-left: 22px;
}
.ad-sidebar-cat__conta {
	font-size: 11px;
	color: var(--ad-grigio-a);
	font-weight: 700;
	background: var(--ad-fondo);
	border-radius: 10px;
	padding: 1px 8px;
	flex-shrink: 0;
}

/* --- Sezione settori ----------------------------------------------------- */
.ad-settori { margin: 2em 0; }
.ad-titolo-sez {
	font-size: 13px;
	text-transform: uppercase;
	letter-spacing: 0.09em;
	color: var(--ad-nero);
	border-bottom: 2px solid var(--ad-bordo);
	padding-bottom: 9px;
	margin-bottom: 18px;
	font-weight: 800;
	position: relative;
}
.ad-titolo-sez::after {
	content: "";
	position: absolute;
	left: 0; bottom: -2px;
	width: 60px; height: 2px;
	background: var(--ad-rosso);
}

/* --- Striscia fiducia / numeri ------------------------------------------ */
.ad-trust {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
	gap: 1px;
	background: var(--ad-bordo);
	border: 1px solid var(--ad-bordo);
	border-radius: var(--ad-radius);
	overflow: hidden;
	margin: 2.4em 0;
	list-style: none;
	padding: 0;
}
.ad-trust li {
	background: #fff;
	text-align: center;
	padding: 24px 16px;
}
.ad-trust__num {
	display: block;
	font-size: 30px;
	font-weight: 900;
	color: var(--ad-rosso);
	line-height: 1;
	margin-bottom: 6px;
}
.ad-trust__lab {
	display: block;
	font-size: 12px;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: var(--ad-grigio-5);
	font-weight: 700;
}

/* --- Rifiniture ---------------------------------------------------------- */
.woocommerce-breadcrumb {
	font-size: 12.5px;
	color: var(--ad-grigio-5);
	text-transform: uppercase;
	letter-spacing: 0.04em;
	font-weight: 600;
}
.woocommerce-breadcrumb a { color: var(--ad-grigio-5); }
.woocommerce-breadcrumb a:hover { color: var(--ad-rosso); }

/* Menu dropdown */
.header-menu-1 .sub-menu { min-width: 245px; }
.header-menu-1 .sub-menu li a { font-size: 13.5px; padding: 8px 15px; font-weight: 600; }

/* --- Responsive ---------------------------------------------------------- */
@media (max-width: 991px) {
	.ad-servizi li { padding: 16px 18px; }
}
@media (max-width: 767px) {
	.ad-griglia { grid-template-columns: repeat(auto-fit, minmax(140px, 1fr)); gap: 12px; }
	.ad-griglia__voce a { padding: 20px 10px 18px; }
	.ad-griglia__icona { font-size: 28px; }
	.ad-griglia__nome { font-size: 13px; }
	.ad-topbar { font-size: 11.5px; padding: 8px 10px; letter-spacing: 0.03em; }
	.ad-servizi li { border-right: none; border-bottom: 1px solid var(--ad-bordo); }
	.ad-servizi li:last-child { border-bottom: none; }
	.ad-hero { padding: 34px 22px; }
	.ad-hero__azioni a { width: 100%; text-align: center; }
	.ad-trust li { padding: 18px 12px; }
	.ad-trust__num { font-size: 24px; }
}

/* ==========================================================================
   HEADER — impostazione scura in stile Ristotecno
   Riga top = barra servizio · middle = logo/ricerca/carrello · bottom = menu
   ========================================================================== */

/* --- Riga superiore: barra nera di servizio ------------------------------ */
#header [data-row="top"] {
	background: var(--ad-nero);
	color: #fff;
	font-size: 13px;
}
#header [data-row="top"] .ct-header-text,
#header [data-row="top"] .ct-header-text .entry-content {
	color: rgba(255,255,255,0.88);
	font-size: 12.5px;
	font-weight: 600;
	letter-spacing: 0.02em;
}
#header [data-row="top"] .ct-menu-link {
	color: rgba(255,255,255,0.88);
	font-size: 12.5px;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 0.04em;
}
#header [data-row="top"] .ct-menu-link:hover { color: #fff; }
#header [data-row="top"] a:hover { color: #fff; }

/* --- Riga centrale: logo, ricerca, carrello ------------------------------ */
#header [data-row="middle"] {
	background: #fff;
	border-bottom: 1px solid var(--ad-bordo);
}
#header [data-row="middle"] .site-title,
#header [data-row="middle"] .site-title a {
	font-weight: 900;
	text-transform: uppercase;
	letter-spacing: -0.02em;
	color: var(--ad-nero);
	font-size: clamp(20px, 2.2vw, 27px);
}
#header [data-row="middle"] .site-title a:hover { color: var(--ad-rosso); }

/* Carrello in evidenza, come il blocco rosso di Ristotecno */
#header .ct-header-cart .ct-label { font-weight: 800; font-size: 13px; }
#header .ct-header-cart .ct-dynamic-count-cart,
#header .ct-cart-content .ct-dynamic-count-cart {
	background: var(--ad-rosso);
	color: #fff;
	font-weight: 800;
}
#header .ct-header-cart:hover .ct-icon,
#header .ct-header-search:hover .ct-icon { color: var(--ad-rosso); }

/* --- Riga inferiore: menu principale su fondo scuro ---------------------- */
#header [data-row="bottom"] {
	background: var(--ad-grigio-3);
}
#header [data-row="bottom"] .ct-menu-link {
	color: #fff;
	font-weight: 800;
	font-size: 14px;
	text-transform: uppercase;
	letter-spacing: 0.03em;
}
#header [data-row="bottom"] .ct-menu-link:hover,
#header [data-row="bottom"] .current-menu-item > .ct-menu-link {
	color: #fff;
	background: var(--ad-rosso);
}
#header [data-row="bottom"] > .ct-container > div > nav > ul > li > .ct-menu-link {
	padding-left: 16px;
	padding-right: 16px;
	transition: background 0.15s ease;
}

/* Dropdown del menu: bianco, netto, con accento rosso */
#header .sub-menu {
	background: #fff;
	border: 1px solid var(--ad-bordo);
	border-top: 3px solid var(--ad-rosso);
	box-shadow: var(--ad-ombra-hover);
	border-radius: 0 0 var(--ad-radius) var(--ad-radius);
	padding: 6px 0;
}
#header .sub-menu .ct-menu-link {
	color: var(--ad-grigio-3);
	text-transform: none;
	font-weight: 600;
	font-size: 13.5px;
	letter-spacing: 0;
	padding: 8px 18px;
}
#header .sub-menu .ct-menu-link:hover {
	color: var(--ad-rosso);
	background: var(--ad-fondo-tenue);
}

/* --- Footer -------------------------------------------------------------- */
footer.ct-footer .ct-widget h3,
footer.ct-footer .widget-title,
footer.ct-footer .wp-block-heading {
	color: var(--ad-nero);
	text-transform: uppercase;
	font-weight: 800;
	font-size: 15px;
	letter-spacing: 0.04em;
	margin-bottom: 14px;
	position: relative;
	padding-bottom: 9px;
}
footer.ct-footer .ct-widget h3::after,
footer.ct-footer .wp-block-heading::after {
	content: "";
	position: absolute;
	left: 0; bottom: 0;
	width: 34px; height: 3px;
	background: var(--ad-rosso);
}
footer.ct-footer .ct-widget,
footer.ct-footer p,
footer.ct-footer li { font-size: 13.5px; color: var(--ad-grigio-5); }
footer.ct-footer a { color: var(--ad-grigio-5); text-decoration: none; }
footer.ct-footer a:hover { color: var(--ad-rosso); }
footer.ct-footer ul { list-style: none; padding-left: 0; margin-left: 0; }
footer.ct-footer li { margin-bottom: 7px; }

/* --- Mobile: menu a comparsa -------------------------------------------- */
@media (max-width: 999.98px) {
	#header [data-row="bottom"] { background: transparent; }
	#offcanvas .ct-menu-link { font-weight: 700; }
	#offcanvas .current-menu-item > .ct-menu-link { color: var(--ad-rosso); }
}

/* --- Homepage: l'hero fa da titolo, quello della pagina è ridondante ----- */
.home .entry-header,
.home .page-title,
.home .entry-title { display: none; }
/* L'hero parte a filo con l'header */
.home .entry-content > .ad-hero:first-child { margin-top: 0; }
/* Nessuno spazio morto in coda alla pagina */
.home .entry-content > *:last-child { margin-bottom: 0; }
.home main, .home .site-main { padding-bottom: 0; }

/* --- Titoli delle schede prodotto: mai il filetto di sezione ------------- */
.woocommerce ul.products li.product h2::after,
.woocommerce ul.products li.product .woocommerce-loop-product__title::after { content: none; }
.woocommerce ul.products li.product h2,
.woocommerce ul.products li.product .woocommerce-loop-product__title {
	text-transform: none;
	padding-bottom: 0;
	letter-spacing: 0.01em;
}

/* --- Immagini prodotto: riquadro quadrato uniforme ---------------------- */
.woocommerce ul.products li.product a img {
	aspect-ratio: 1 / 1;
	object-fit: cover;
	background: var(--ad-fondo-tenue);
	border-radius: 2px;
	width: 100%;
	height: auto;
	display: block;
	transition: transform 0.35s ease;
}
/* Le foto vere riempiono il riquadro; il segnaposto resta rientrato */
.woocommerce ul.products li.product a img[src*="woocommerce-placeholder"] {
	object-fit: contain;
}
.woocommerce ul.products li.product .ad-foto-wrap {
	display: block;
	overflow: hidden;
	border-radius: 2px;
}
.woocommerce ul.products li.product:hover a img { transform: scale(1.05); }

/* --- Scheda prodotto: galleria e segnaposto immagine -------------------- */
.single-product div.product .woocommerce-product-gallery {
	border: 1px solid var(--ad-bordo);
	border-radius: var(--ad-radius);
	background: #fff;
	padding: 10px;
}
.single-product div.product .woocommerce-product-gallery img {
	aspect-ratio: 1 / 1;
	object-fit: contain;
	background: var(--ad-fondo-tenue);
	border-radius: 2px;
}
/* Senza foto WooCommerce serve un segnaposto: lo rendiamo riconoscibile
   invece di lasciare un rettangolo bianco vuoto. */
.single-product .woocommerce-product-gallery img[src*="woocommerce-placeholder"],
.woocommerce ul.products li.product img[src*="woocommerce-placeholder"] {
	background: var(--ad-fondo-tenue);
	padding: 12%;
	opacity: 0.42;
	filter: grayscale(1);
}
.single-product .woocommerce-product-gallery .ct-media-container { position: relative; }
.single-product .woocommerce-product-gallery:has(img[src*="woocommerce-placeholder"])::after {
	content: "Foto non disponibile · richiedi info";
	position: absolute;
	left: 50%;
	bottom: 16px;
	transform: translateX(-50%);
	font-size: 11.5px;
	font-weight: 800;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: var(--ad-grigio-5);
	background: #fff;
	border: 1px solid var(--ad-bordo);
	border-radius: 2px;
	padding: 5px 12px;
	white-space: nowrap;
}
.single-product div.product .woocommerce-product-gallery { position: relative; }

/* Schede tecniche e tab in stile brand */
.single-product .woocommerce-tabs ul.tabs li.active a { color: var(--ad-rosso); }
.single-product .woocommerce-tabs ul.tabs li a {
	font-weight: 800;
	text-transform: uppercase;
	font-size: 13px;
	letter-spacing: 0.04em;
}
.single-product .product_meta {
	font-size: 12.5px;
	color: var(--ad-grigio-5);
	text-transform: uppercase;
	letter-spacing: 0.03em;
	font-weight: 600;
}

/* Selettore quantità coerente col bottone rosso */
.woocommerce .quantity .qty {
	border: 1px solid var(--ad-bordo);
	border-radius: var(--ad-radius);
	font-weight: 700;
	font-family: var(--ad-font);
}

/* --- Icone SVG dei servizi ----------------------------------------------- */
.ad-servizi__icona {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	flex-shrink: 0;
	background: var(--ad-fondo-tenue);
	border: 1px solid var(--ad-bordo);
	border-radius: 50%;
	color: var(--ad-rosso);
	font-size: 0;
}
.ad-servizi li:hover .ad-servizi__icona {
	background: var(--ad-rosso);
	border-color: var(--ad-rosso);
	color: #fff;
}
.ad-ico { width: 22px; height: 22px; display: block; }

/* --- Foto prodotto nel catalogo: riempiono il riquadro ------------------- */
/* Blocksy incapsula la foto in <figure><a class="ct-media-container">:
   diamo al contenitore un formato quadrato e lasciamo che la foto lo copra. */
.woocommerce ul.products li.product figure,
.woocommerce ul.products li.product .ct-media-container {
	display: block;
	width: 100%;
	margin: 0;
	overflow: hidden;
	border-radius: 2px;
	background: var(--ad-fondo-tenue);
}
.woocommerce ul.products li.product .ct-media-container {
	aspect-ratio: 1 / 1;
	position: relative;
}
.woocommerce ul.products li.product .ct-media-container img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
	transition: transform 0.35s ease;
}
.woocommerce ul.products li.product:hover .ct-media-container img { transform: scale(1.06); }
/* Il segnaposto resta rientrato, per non sembrare una foto sgranata */
.woocommerce ul.products li.product .ct-media-container img[src*="woocommerce-placeholder"] {
	object-fit: contain;
	padding: 16%;
	opacity: 0.45;
	filter: grayscale(1);
}

/* --- Catalogo su mobile: 2 colonne leggibili ---------------------------- */
@media (max-width: 767px) {
	.woocommerce ul.products.columns-4,
	.woocommerce ul.products.columns-3,
	.woocommerce ul.products {
		display: grid !important;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 12px;
		margin: 0;
	}
	.woocommerce ul.products li.product {
		width: auto !important;
		float: none !important;
		margin: 0 !important;
		padding: 10px 10px 14px;
		clear: none !important;
	}
	.woocommerce ul.products li.product .woocommerce-loop-product__title,
	.woocommerce ul.products li.product h2 { font-size: 13px; }
	.woocommerce ul.products li.product .price { font-size: 1.05em; }
	.woocommerce ul.products li.product .ad-badge {
		top: 13px; left: 13px;
		font-size: 9.5px;
		padding: 2px 6px;
		letter-spacing: 0.03em;
	}
	/* La sidebar categorie va sopra i prodotti, non in fondo alla pagina */
	[data-sidebar="left"] .ct-sidebar { margin-bottom: 22px; }
}

/* Su schermi molto stretti una sola colonna */
@media (max-width: 419px) {
	.woocommerce ul.products,
	.woocommerce ul.products.columns-4 { grid-template-columns: minmax(0, 1fr); }
}

/* ==========================================================================
   MEGA MENU a colonne (stile Ristotecno)
   ========================================================================== */
@media (min-width: 1000px) {

	/* Il pannello si aggancia alla riga del menu e si estende in larghezza */
	#header [data-row="bottom"] .menu-container > ul > li.ad-mega { position: static; }
	#header [data-row="bottom"] > .ct-container { position: relative; }

	/* display sempre grid: apertura e chiusura restano gestite da Blocksy
	   tramite .ct-active su opacity/visibility, che non tocchiamo. */
	.ad-mega > .ad-mega__pannello {
		display: grid;
		grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
		gap: 4px 30px;
		align-items: start;
		position: absolute;
		left: 0;
		right: 0;
		top: 100%;
		width: 100%;
		max-width: none;
		min-width: 0;
		padding: 30px 34px 32px;
		background: #fff;
		border: 1px solid var(--ad-bordo);
		border-top: 3px solid var(--ad-rosso);
		border-radius: 0 0 var(--ad-radius) var(--ad-radius);
		box-shadow: 0 16px 40px rgba(0, 0, 0, 0.16);
		z-index: 100;
	}

	/* Ogni figlio di primo livello è una colonna */
	.ad-mega__pannello > li.ad-mega__colonna {
		display: block;
		break-inside: avoid;
		margin-bottom: 18px;
		border: none;
		background: none;
	}

	/* Intestazione della colonna: maiuscolo, nero, filetto rosso sotto */
	.ad-mega__pannello > .ad-mega__colonna > .ct-menu-link {
		display: block;
		padding: 0 0 8px !important;
		margin-bottom: 9px;
		font-size: 13.5px !important;
		font-weight: 800 !important;
		text-transform: uppercase;
		letter-spacing: 0.045em !important;
		color: var(--ad-nero) !important;
		border-bottom: 2px solid var(--ad-bordo);
		position: relative;
		background: none !important;
	}
	.ad-mega__pannello > .ad-mega__colonna > .ct-menu-link::after {
		content: "";
		position: absolute;
		left: 0;
		bottom: -2px;
		width: 34px;
		height: 2px;
		background: var(--ad-rosso);
	}
	.ad-mega__pannello > .ad-mega__colonna > .ct-menu-link:hover { color: var(--ad-rosso) !important; }

	/* Voci sotto l'intestazione */
	.ad-mega__voci { padding: 0 !important; margin: 0 !important; list-style: none; }
	.ad-mega__voci > li { border: none !important; }
	.ad-mega__voci .ct-menu-link {
		display: block;
		padding: 5px 0 5px 13px !important;
		font-size: 13.5px !important;
		font-weight: 600 !important;
		text-transform: none !important;
		letter-spacing: 0 !important;
		color: var(--ad-grigio-5) !important;
		background: none !important;
		position: relative;
	}
	/* Pallino che diventa rosso al passaggio, come su Ristotecno */
	.ad-mega__voci .ct-menu-link::before {
		content: "";
		position: absolute;
		left: 0;
		top: 50%;
		width: 5px;
		height: 5px;
		margin-top: -2.5px;
		border: 1px solid var(--ad-grigio-c);
		border-radius: 50%;
	}
	.ad-mega__voci .ct-menu-link:hover {
		color: var(--ad-rosso) !important;
		background: none !important;
	}
	.ad-mega__voci .ct-menu-link:hover::before {
		background: var(--ad-rosso);
		border-color: var(--ad-rosso);
	}

	/* Le frecce dei sottolivelli non servono dentro al pannello */
	.ad-mega__pannello .ct-toggle-dropdown-desktop,
	.ad-mega__pannello .ct-toggle-dropdown-desktop-ghost { display: none !important; }
}

/* Sotto i 1000px resta il menu a scomparsa di Blocksy: il pannello a colonne
   non ha senso su schermo stretto. */
@media (max-width: 999.98px) {
	.ad-mega__pannello { display: block; }
	.ad-mega__pannello > .ad-mega__colonna > .ct-menu-link {
		font-weight: 800 !important;
		text-transform: uppercase;
	}
	.ad-mega__voci { padding-left: 12px !important; }
}

/* --- Mega menu: le voci di 3° livello sono sempre visibili nel pannello -- */
@media (min-width: 1000px) {
	/* Blocksy tratta ogni <ul> annidato come dropdown da aprire: dentro al
	   mega menu invece le voci devono comparire subito sotto il titolo. */
	.ad-mega__pannello .ad-mega__voci {
		position: static !important;
		display: block !important;
		opacity: 1 !important;
		visibility: visible !important;
		/* Niente pointer-events qui: a pannello chiuso le voci resterebbero
		   cliccabili sopra il contenuto della pagina. Lo attiviamo più sotto
		   solo quando la voce di menu è aperta (.ct-active). */
		transform: none !important;
		box-shadow: none !important;
		border: none !important;
		background: none !important;
		min-width: 0 !important;
		width: auto !important;
		padding: 0 !important;
		margin: 0 !important;
	}
	.ad-mega__pannello .ad-mega__voci::before { display: none !important; }

	/* Le voci diventano cliccabili solo a pannello aperto */
	.ad-mega:not(.ct-active) > .ad-mega__pannello,
	.ad-mega:not(.ct-active) > .ad-mega__pannello * {
		pointer-events: none !important;
	}
	.ad-mega.ct-active > .ad-mega__pannello,
	.ad-mega.ct-active > .ad-mega__pannello * {
		pointer-events: auto !important;
	}


	/* Nel pannello non servono i contenitori/frecce dei sottolivelli */
	.ad-mega__pannello .ct-sub-menu-parent {
		display: block !important;
		width: 100%;
	}
	.ad-mega__pannello .ct-toggle-dropdown-mobile { display: none !important; }
}

/* ==========================================================================
   Sidebar categorie ad albero (stile Ristotecno)
   ========================================================================== */
.ad-albero {
	border: 1px solid var(--ad-bordo);
	border-radius: var(--ad-radius);
	background: #fff;
	overflow: hidden;
	margin-bottom: 24px;
}
.ad-albero__titolo {
	background: var(--ad-nero);
	color: #fff;
	font-size: 14px;
	font-weight: 800;
	text-transform: uppercase;
	letter-spacing: 0.07em;
	padding: 14px 18px;
	margin: 0;
}
.ad-albero__lista { list-style: none; margin: 0; padding: 0; }
.ad-albero__lista--interna {
	display: none;
	padding-left: 14px;
	border-left: 1px solid var(--ad-bordo);
	margin-left: 18px;
}
.ad-albero__voce--aperta > .ad-albero__lista--interna { display: block; }

.ad-albero__riga {
	display: flex;
	align-items: center;
	gap: 6px;
	border-bottom: 1px solid var(--ad-bordo);
	padding-right: 8px;
}
.ad-albero__lista--interna .ad-albero__riga { border-bottom: none; }

.ad-albero__riga > a {
	flex: 1;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 8px;
	padding: 11px 8px 11px 18px;
	color: var(--ad-grigio-3);
	font-size: 13.5px;
	font-weight: 600;
	text-decoration: none;
	transition: color 0.15s ease, padding-left 0.15s ease;
}
.ad-albero__lista--interna .ad-albero__riga > a {
	padding: 7px 4px 7px 8px;
	font-size: 13px;
	font-weight: 500;
	color: var(--ad-grigio-5);
}
.ad-albero__riga > a:hover { color: var(--ad-rosso); }
.ad-albero__voce--attiva > .ad-albero__riga > a { color: var(--ad-rosso); font-weight: 800; }

.ad-albero__conta {
	font-size: 11px;
	color: var(--ad-grigio-a);
	font-weight: 700;
	background: var(--ad-fondo);
	border-radius: 10px;
	padding: 1px 8px;
	flex-shrink: 0;
}

/* Pulsante +/− per aprire il ramo, come su Ristotecno */
.ad-albero__toggle {
	flex-shrink: 0;
	width: 22px;
	height: 22px;
	padding: 0;
	border: 1px solid var(--ad-bordo);
	border-radius: 2px;
	background: #fff;
	cursor: pointer;
	position: relative;
	transition: background 0.15s ease, border-color 0.15s ease;
}
.ad-albero__toggle::before,
.ad-albero__toggle::after {
	content: "";
	position: absolute;
	left: 50%;
	top: 50%;
	background: var(--ad-grigio-5);
	transform: translate(-50%, -50%);
	transition: opacity 0.15s ease, background 0.15s ease;
}
.ad-albero__toggle::before { width: 9px; height: 1.5px; }
.ad-albero__toggle::after  { width: 1.5px; height: 9px; }
/* Ramo aperto: la barra verticale sparisce e resta il segno meno */
.ad-albero__voce--aperta > .ad-albero__riga > .ad-albero__toggle::after { opacity: 0; }
.ad-albero__toggle:hover {
	border-color: var(--ad-rosso);
	background: var(--ad-rosso);
}
.ad-albero__toggle:hover::before,
.ad-albero__toggle:hover::after { background: #fff; }

/* --- Intestazione categoria: titolo leggibile sopra la foto ------------- */
.tax-product_cat .page-title,
.tax-product_cat .entry-header .page-title {
	color: #fff;
	text-shadow: 0 2px 14px rgba(0, 0, 0, 0.55);
	position: relative;
	z-index: 2;
}
/* Velo scuro sotto il titolo, così il testo stacca sempre dall'immagine */
.tax-product_cat .hero-section[data-type="type-2"]::after {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(180deg, rgba(0,0,0,0.28) 0%, rgba(0,0,0,0.55) 100%);
	z-index: 1;
	pointer-events: none;
}
.tax-product_cat .hero-section[data-type="type-2"] { position: relative; }
.tax-product_cat .hero-section[data-type="type-2"] .ct-container,
.tax-product_cat .hero-section[data-type="type-2"] .entry-header { position: relative; z-index: 2; }
.tax-product_cat .hero-section[data-type="type-2"] .woocommerce-breadcrumb,
.tax-product_cat .hero-section[data-type="type-2"] .woocommerce-breadcrumb a { color: rgba(255,255,255,0.9); }

/* --- Mega menu molto ricco: altezza limitata con scorrimento ------------- */
@media (min-width: 1000px) {
	.ad-mega > .ad-mega__pannello {
		max-height: min(74vh, 620px);
		overflow-y: auto;
		overscroll-behavior: contain;
		grid-template-columns: repeat(auto-fill, minmax(215px, 1fr));
		align-content: start;
		gap: 2px 26px;
	}
	/* Barra di scorrimento discreta */
	.ad-mega__pannello::-webkit-scrollbar { width: 9px; }
	.ad-mega__pannello::-webkit-scrollbar-track { background: var(--ad-fondo-tenue); }
	.ad-mega__pannello::-webkit-scrollbar-thumb {
		background: var(--ad-grigio-c);
		border-radius: 5px;
		border: 2px solid var(--ad-fondo-tenue);
	}
	.ad-mega__pannello::-webkit-scrollbar-thumb:hover { background: var(--ad-grigio-5); }
	.ad-mega__pannello { scrollbar-width: thin; scrollbar-color: var(--ad-grigio-c) var(--ad-fondo-tenue); }

	/* Colonne più compatte: molte voci in poco spazio */
	.ad-mega__pannello > li.ad-mega__colonna { margin-bottom: 14px; }
	.ad-mega__pannello > .ad-mega__colonna > .ct-menu-link {
		font-size: 12.5px !important;
		padding-bottom: 6px !important;
		margin-bottom: 6px;
	}
	.ad-mega__voci .ct-menu-link {
		padding: 3.5px 0 3.5px 13px !important;
		font-size: 12.5px !important;
	}
}

/* --- Mega menu sopra al contenuto della pagina -------------------------- */
/* Blocksy dà alla riga del menu z-index:1, il più basso delle tre righe
   dell'header: il pannello finiva quindi sotto hero, immagini e testi.
   La riga va portata sopra le altre, e l'header sopra il contenuto. */
#header { z-index: 100; }
#header [data-row="bottom"] { z-index: 10; }
#header [data-row="bottom"]:has(.ad-mega__pannello) { z-index: 20; }

/* Il pannello aperto sta sopra a tutto il resto della pagina */
.ad-mega > .ad-mega__pannello { z-index: 999; }

/* Nessun contenitore della pagina deve creare un livello che copra l'header */
#main-container, .site-main, .hero-section { z-index: auto; }

/* --- Hero come banner grafico ------------------------------------------- */
/* Il banner contiene già logo, claim e icone: niente velo né testo sopra,
   si mostra l'immagine intera senza tagli. */
.ad-hero--banner {
	background: #0a0a0a;
	padding: 0;
	border-radius: var(--ad-radius);
	overflow: hidden;
	line-height: 0;
}
.ad-hero--banner::before { display: none; }
.ad-hero__banner {
	display: block;
	width: 100%;
	height: auto;
	object-fit: contain;
}

/* --- Logo dell'header: dimensione contenuta ----------------------------- */
/* Il file caricato è 1536x1024: senza un limite occupa tutta la riga. */
#header .site-logo-container img,
#header .site-branding img,
#header [data-id="logo"] img {
	max-height: 74px;
	width: auto;
	max-width: 260px;
	object-fit: contain;
}
@media (max-width: 767px) {
	#header .site-logo-container img,
	#header .site-branding img,
	#header [data-id="logo"] img { max-height: 52px; max-width: 175px; }
}

/* --- Riquadro recapiti --------------------------------------------------- */
.ad-recapiti {
	border: 1px solid var(--ad-bordo);
	border-left: 4px solid var(--ad-rosso);
	background: var(--ad-fondo-tenue);
	border-radius: var(--ad-radius);
	padding: 22px 24px;
	margin: 1.8em 0;
}
.ad-recapiti__titolo {
	font-size: 15px;
	font-weight: 800;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	color: var(--ad-nero);
	margin: 0 0 16px;
	padding: 0;
}
.ad-recapiti__titolo::after { display: none; }
.ad-recapiti__lista {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
	gap: 14px 44px;
}
.ad-recapiti__voce { display: flex; flex-direction: column; gap: 3px; }
.ad-recapiti__eti {
	font-size: 11.5px;
	text-transform: uppercase;
	letter-spacing: 0.07em;
	font-weight: 700;
	color: var(--ad-grigio-5);
}
.ad-recapiti__valore {
	font-size: 21px;
	font-weight: 800;
	color: var(--ad-rosso);
	text-decoration: none;
	line-height: 1.2;
	word-break: break-word;
}
.ad-recapiti__valore:hover { color: var(--ad-rosso-scuro); text-decoration: underline; }

/* Telefono nella barra nera in alto */
.ad-tel-header {
	color: #fff;
	font-weight: 800;
	text-decoration: none;
	white-space: nowrap;
}
.ad-tel-header:hover { color: #fff; text-decoration: underline; }

@media (max-width: 767px) {
	.ad-recapiti { padding: 18px 18px; }
	.ad-recapiti__lista { gap: 14px 26px; }
	.ad-recapiti__valore { font-size: 18px; }
}

/* Indirizzo e P.IVA nel riquadro recapiti */
.ad-recapiti__valore--testo {
	color: var(--ad-nero);
	font-size: 16px;
	font-weight: 700;
}
.ad-recapiti__piva {
	margin: 16px 0 0;
	padding-top: 13px;
	border-top: 1px solid var(--ad-bordo);
	font-size: 12.5px;
	color: var(--ad-grigio-5);
	font-weight: 600;
	letter-spacing: 0.03em;
}

/* --- Box servizi cliccabili (telefono / email) --------------------------- */
/* Con il link il contenuto passa dentro un <a>: il layout a riga
   si sposta quindi sull'ancora, mantenendo la cella invariata. */
.ad-servizi li.ad-servizi--link { padding: 0; }
.ad-servizi li.ad-servizi--link > a {
	display: flex;
	align-items: center;
	gap: 13px;
	padding: 20px 22px;
	width: 100%;
	height: 100%;
	text-decoration: none;
	color: inherit;
	transition: background 0.18s ease;
}
.ad-servizi li.ad-servizi--link > a:hover { background: var(--ad-fondo-tenue); }
.ad-servizi li.ad-servizi--link > a:hover .ad-servizi__icona {
	background: var(--ad-rosso);
	border-color: var(--ad-rosso);
	color: #fff;
}
.ad-servizi li.ad-servizi--link > a:hover .ad-servizi__testo strong { color: var(--ad-rosso); }
/* Il sottotitolo del riquadro cliccabile evidenzia il recapito */
.ad-servizi li.ad-servizi--link .ad-servizi__testo span { font-weight: 700; color: var(--ad-grigio-3); }

@media (max-width: 991px) {
	.ad-servizi li.ad-servizi--link > a { padding: 16px 18px; }
}
