/* Zambrelli restyling (Marketipo, ottobre 2026): header, menu, fascia breadcrumb, footer, scheda prodotto.
   Tutto confinato sotto le radici .zr-* e body.zr-on-prodotto. Regole per il telefono in fondo, larghezze decrescenti. */

:root {
	--zr-rosso: #ce2026;
	--zr-rosso-scuro: #a51a1e;
	--zr-nero: #0f0f0f;
	--zr-testo: #333;
	--zr-grigio: #6b6b6b;
	--zr-linea: #e5e5e5;
	--zr-linea-forte: #d9d9d9;
	--zr-fondo: #f5f5f5;
	--zr-verde: #157347;
	--zr-scuro: #0f0f0f;
	--zr-scuro-testo: #b3b3b3;
	--zr-scuro-linea: #2a2a2a;
	--zr-fascia-fondo: var(--zr-rosso);
	--zr-ui: "Poppins", system-ui, -apple-system, "Segoe UI", "Helvetica Neue", Arial, sans-serif;
	--zr-titoli: "Montserrat", "Poppins", system-ui, -apple-system, "Segoe UI", Arial, sans-serif;
	--zr-margine: 60px;
	--zr-alto-header: 78px;
	--zr-dur: .2s;
}

/* Il tema mette overflow:hidden sul .wrap: impedirebbe all'header di restare fisso. clip taglia allo stesso modo. */
body.zr-on-header .wrap { overflow: clip; }
html { scroll-padding-top: calc(var(--zr-alto-header) + 16px); }
html.zr-bloccato { overflow: hidden; }

.zr-contenitore {
	box-sizing: border-box;
	width: 100%;
	max-width: 1560px;
	margin: 0 auto;
	padding: 0 var(--zr-margine);
}
.zr-sr {
	position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px;
	overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0;
}
.zr-icona { width: 22px; height: 22px; flex: none; display: inline-block; vertical-align: middle; }
.zr-salta {
	position: absolute; left: 12px; top: -60px; z-index: 100000; padding: 10px 16px;
	background: var(--zr-nero); color: #fff !important; font: 500 14px/1 var(--zr-ui); text-decoration: none;
}
.zr-salta:focus { top: 12px; }
.zr-ancora { display: block; height: 0; outline: none; }

/* focus visibile ovunque nei nostri componenti (il tema lo azzera) */
.zr-topbar a:focus-visible, .zr-header a:focus-visible, .zr-header button:focus-visible, .zr-header input:focus-visible,
.zr-pannello a:focus-visible, .zr-pannello button:focus-visible, .zr-pannello input:focus-visible,
.zr-fascia a:focus-visible, .zr-footer a:focus-visible, .zr-footer button:focus-visible,
body.zr-on-prodotto .zr-scheda a:focus-visible, body.zr-on-prodotto .single_add_to_cart_button:focus-visible,
body.zr-on-prodotto .detail-product-tabs a:focus-visible {
	outline: 2px solid var(--zr-rosso); outline-offset: 2px;
}
.zr-fascia a:focus-visible, .zr-topbar a:focus-visible, .zr-footer__scuro a:focus-visible, .zr-footer__scuro button:focus-visible { outline-color: #fff; }

/* bottoni comuni */
.zr-bottone {
	display: inline-flex; align-items: center; justify-content: center; gap: 10px; box-sizing: border-box;
	min-height: 48px; padding: 12px 22px; border: 1px solid var(--zr-nero); border-radius: 0;
	font: 600 13px/1.2 var(--zr-ui); letter-spacing: .08em; text-transform: uppercase; text-decoration: none;
	transition: background var(--zr-dur), color var(--zr-dur), border-color var(--zr-dur);
}
.zr-bottone .zr-icona { width: 18px; height: 18px; }
.zr-bottone--secondario { background: #fff; color: var(--zr-nero) !important; }
.zr-bottone--secondario:hover { background: var(--zr-nero); color: #fff !important; }
.zr-bottone--chiaro { background: #fff; color: var(--zr-nero) !important; border-color: var(--zr-linea-forte); }
.zr-bottone--chiaro:hover { border-color: var(--zr-nero); }
.zr-bottone--primario { background: var(--zr-nero); color: #fff !important; }
.zr-bottone--primario:hover { background: var(--zr-rosso); border-color: var(--zr-rosso); }

/* ============================== TOPBAR ============================== */
.zr-topbar { background: var(--zr-rosso); color: #fff; font: 500 12.5px/1.3 var(--zr-ui); letter-spacing: .02em; }
.zr-topbar__in { display: flex; align-items: center; justify-content: center; min-height: 36px; gap: 24px; position: relative; }
.zr-topbar ul { list-style: none; margin: 0; padding: 0; }
.zr-topbar__msg { display: flex; align-items: center; justify-content: center; flex-wrap: nowrap; }
.zr-topbar__voce { white-space: nowrap; margin: 0; }
.zr-topbar__voce + .zr-topbar__voce::before { content: "·"; margin: 0 14px; opacity: .7; }
.zr-topbar__extra { display: none; align-items: center; gap: 22px; flex: none; }
.zr-topbar__extra a { color: #fff; text-decoration: none; display: inline-flex; align-items: center; gap: 6px; }
.zr-topbar__extra a:hover { text-decoration: underline; text-underline-offset: 3px; }
.zr-topbar__extra .zr-icona { width: 15px; height: 15px; }

/* ============================== HEADER ============================== */
.zr-header {
	position: sticky; top: var(--wp-admin--admin-bar--height, 0px); z-index: 900;
	background: #fff; border-bottom: 1px solid var(--zr-linea); font-family: var(--zr-ui); color: var(--zr-nero);
	transition: box-shadow var(--zr-dur);
}
.zr-header.is-compatto { box-shadow: 0 6px 18px -12px rgba(0, 0, 0, .25); }
.zr-header__in {
	display: flex; align-items: center; gap: 28px; height: var(--zr-alto-header);
}
.zr-header.is-compatto .zr-header__in { height: 64px; }
.zr-header button { font-family: var(--zr-ui); }

.zr-header__menu { display: none; }
.zr-logo { display: inline-flex; align-items: center; color: var(--zr-nero) !important; text-decoration: none; flex: none; }
.zr-logo__img { width: 184px; height: auto; display: block; }
.zr-header.is-compatto .zr-logo__img { width: 156px; }

.zr-nav { flex: 1 1 auto; display: flex; justify-content: center; align-self: stretch; }
.zr-nav__lista { list-style: none; margin: 0; padding: 0; display: flex; align-items: stretch; gap: clamp(18px, 2.2vw, 38px); }
.zr-nav__voce { display: flex; align-items: center; gap: 2px; margin: 0; }
.zr-nav__link {
	position: relative; display: inline-flex; align-items: center; height: 100%;
	color: var(--zr-nero) !important; text-decoration: none; white-space: nowrap;
	font: 500 12.5px/1 var(--zr-ui); letter-spacing: .1em; text-transform: uppercase;
}
.zr-nav__link::after {
	content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 2px; background: var(--zr-rosso);
	transform: scaleX(0); transform-origin: left; transition: transform var(--zr-dur);
}
.zr-nav__link:hover::after, .zr-nav__link.is-attiva::after, .zr-nav__voce.is-aperta .zr-nav__link::after { transform: scaleX(1); }
.zr-nav__apri {
	display: inline-flex; align-items: center; justify-content: center; width: 26px; height: 26px; padding: 0;
	background: none; border: 0; border-radius: 0; color: var(--zr-nero); cursor: pointer;
}
.zr-nav__apri .zr-icona { width: 16px; height: 16px; transition: transform var(--zr-dur); }
.zr-nav__voce.is-aperta .zr-nav__apri .zr-icona { transform: rotate(180deg); }

.zr-azioni { display: flex; align-items: center; gap: 6px; flex: none; }
.zr-azione {
	position: relative; display: inline-flex; align-items: center; gap: 8px; min-width: 44px; height: 44px; padding: 0 8px;
	justify-content: center; background: none; border: 0; border-radius: 0; cursor: pointer;
	color: var(--zr-nero) !important; text-decoration: none; font: 500 12.5px/1 var(--zr-ui); letter-spacing: .04em;
}
.zr-azione:hover { color: var(--zr-rosso) !important; }
.zr-azione__testo { display: none; order: 2; }
.zr-conta {
	position: absolute; top: 4px; left: 24px; min-width: 18px; height: 18px; padding: 0 5px; box-sizing: border-box;
	border-radius: 9px; background: var(--zr-rosso); color: #fff; font: 600 10.5px/18px var(--zr-ui); text-align: center;
}
.zr-conta[hidden] { display: none; }

/* velo scuro sulla pagina mentre un pannello del menu e' aperto (lo crea zr.js; il clic sopra chiude e basta) */
.zr-velo-mega { position: fixed; inset: 0; z-index: 850; background: rgba(15, 15, 15, .45); }
.zr-velo-mega[hidden] { display: none; }

/* --- mega menu --- */
.zr-mega {
	position: absolute; left: 0; right: 0; top: 100%; z-index: 5; background: #fff;
	border-top: 1px solid var(--zr-linea); box-shadow: 0 24px 32px -24px rgba(0, 0, 0, .28);
	max-height: calc(100vh - var(--zr-alto-header) - 40px); overflow: auto;
}
.zr-mega[hidden] { display: none; }
.zr-mega__in { padding-top: 34px; padding-bottom: 42px; }
.zr-mega__testa { display: flex; align-items: baseline; justify-content: space-between; margin-bottom: 22px; }
.zr-mega__titolo {
	margin: 0 0 14px !important; font: 600 11.5px/1.3 var(--zr-ui); letter-spacing: .14em; text-transform: uppercase; color: var(--zr-grigio);
}
.zr-mega__testa .zr-mega__titolo { margin: 0 !important; }
.zr-mega__tutti {
	display: inline-flex; align-items: center; gap: 8px; color: var(--zr-nero) !important; text-decoration: none;
	font: 600 12.5px/1 var(--zr-ui); letter-spacing: .08em; text-transform: uppercase;
}
.zr-mega__tutti .zr-icona { width: 18px; height: 18px; transition: transform var(--zr-dur); }
.zr-mega__tutti:hover .zr-icona { transform: translateX(4px); }
.zr-mega a { transition: color var(--zr-dur); }
.zr-mega__lista, .zr-az__lista { list-style: none; margin: 0; padding: 0; }
.zr-mega__lista li, .zr-az__lista li { margin: 0; }
.zr-mega__lista a, .zr-az__lista a {
	display: inline-block; padding: 5px 0; color: var(--zr-testo) !important; text-decoration: none; font: 400 14.5px/1.45 var(--zr-ui);
}
.zr-mega__lista a:hover, .zr-az__lista a:hover { color: var(--zr-rosso) !important; }
.zr-mega__lista--due { columns: 2; column-gap: 32px; }

.zr-az { columns: 6 170px; column-gap: 36px; }
.zr-az__gruppo { break-inside: avoid; margin-bottom: 18px; }
.zr-az__lettera { margin: 0 0 2px !important; font: 700 12px/1.4 var(--zr-ui); color: var(--zr-rosso); letter-spacing: .08em; }

.zr-mega__griglia { display: grid; grid-template-columns: 2fr 1fr 1fr 1.25fr; gap: 48px; align-items: start; }
.zr-mega__riquadro {
	display: flex; flex-direction: column; justify-content: flex-end; gap: 8px; min-height: 220px; padding: 28px;
	background: var(--zr-nero); color: #fff !important; text-decoration: none; position: relative; overflow: hidden;
}
.zr-mega__riquadro::before {
	content: ""; position: absolute; right: -40px; top: -40px; width: 180px; height: 180px; border: 1px solid rgba(255, 255, 255, .14); border-radius: 50%;
}
.zr-mega__riquadro::after {
	content: ""; position: absolute; right: 30px; top: 24px; width: 120px; height: 120px; border: 1px solid rgba(206, 32, 38, .7); border-radius: 50%;
}
.zr-mega__riquadro-etichetta { font: 600 11px/1 var(--zr-ui); letter-spacing: .16em; text-transform: uppercase; color: var(--zr-scuro-testo); }
.zr-mega__riquadro-titolo { font: 600 26px/1.15 var(--zr-titoli); color: #fff; }
.zr-mega__riquadro-link { display: inline-flex; align-items: center; gap: 8px; font: 500 13px/1 var(--zr-ui); color: #fff; }
.zr-mega__riquadro-link .zr-icona { width: 18px; height: 18px; transition: transform var(--zr-dur); }
.zr-mega__riquadro:hover .zr-mega__riquadro-link .zr-icona { transform: translateX(4px); }

.zr-mega__griglia--negozi { grid-template-columns: repeat(3, 1fr); }
.zr-negozio p { margin: 0 !important; }
.zr-negozio__citta { font: 600 22px/1.2 var(--zr-titoli) !important; color: var(--zr-nero); margin-bottom: 10px !important; }
.zr-negozio__indirizzo { font: 400 14.5px/1.6 var(--zr-ui); color: var(--zr-testo); margin-bottom: 12px !important; }
.zr-negozio__riga { font: 400 14px/1.4 var(--zr-ui); color: var(--zr-testo); padding: 4px 0; }
.zr-negozio__riga a, .zr-negozio__nota { display: inline-flex; align-items: center; gap: 8px; color: var(--zr-nero) !important; text-decoration: none; }
.zr-negozio__riga a:hover { color: var(--zr-rosso) !important; }
.zr-negozio__riga .zr-icona { width: 18px; height: 18px; color: var(--zr-grigio); }
.zr-negozio--contatti { border-left: 1px solid var(--zr-linea); padding-left: 40px; }
.zr-negozio--contatti .zr-mega__tutti { margin-top: 14px; }

/* --- ricerca --- */
.zr-cerca {
	position: absolute; left: 0; right: 0; top: 100%; z-index: 6; background: #fff;
	border-top: 1px solid var(--zr-linea); box-shadow: 0 24px 32px -24px rgba(0, 0, 0, .28);
}
.zr-cerca[hidden] { display: none; }
.zr-cerca__in { padding-top: 26px; padding-bottom: 32px; }
.zr-cerca__form { position: relative; display: flex; align-items: center; gap: 12px; border-bottom: 1px solid var(--zr-nero); margin: 0; }
.zr-cerca__lente { width: 24px; height: 24px; color: var(--zr-grigio); }
.zr-header .zr-cerca__campo {
	flex: 1; min-width: 0; height: 58px; padding: 0; margin: 0; border: 0 !important; background: transparent; box-shadow: none;
	font: 500 22px/1.2 var(--zr-titoli); color: var(--zr-nero); outline: none;
}
.zr-header .zr-cerca__campo::placeholder { color: #9b9b9b; }
.zr-cerca__invia {
	height: 44px; padding: 0 22px; border: 0; border-radius: 0; background: var(--zr-nero); color: #fff; cursor: pointer;
	font: 600 12.5px/1 var(--zr-ui) !important; letter-spacing: .1em; text-transform: uppercase;
}
.zr-cerca__invia:hover { background: var(--zr-rosso); }
.zr-cerca__chiudi { width: 44px; height: 44px; padding: 0; border: 0; background: none; color: var(--zr-nero); cursor: pointer; display: inline-flex; align-items: center; justify-content: center; }
.zr-cerca__sotto { display: grid; grid-template-columns: 1fr 1fr; gap: 48px; margin-top: 22px; }
.zr-cerca__lista { list-style: none; margin: 0; padding: 0; }
.zr-cerca__lista a {
	display: flex; justify-content: space-between; gap: 16px; padding: 9px 0; border-bottom: 1px solid var(--zr-linea);
	color: var(--zr-nero) !important; text-decoration: none; font: 500 15px/1.3 var(--zr-ui);
}
.zr-cerca__lista a:hover { color: var(--zr-rosso) !important; }
.zr-cerca__tipo { font: 400 12px/1.3 var(--zr-ui); color: var(--zr-grigio); text-transform: uppercase; letter-spacing: .08em; }
.zr-cerca__chip { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 8px; }
.zr-cerca__chip a {
	display: inline-block; padding: 9px 14px; border: 1px solid var(--zr-linea-forte); color: var(--zr-nero) !important;
	text-decoration: none; font: 500 13px/1 var(--zr-ui);
}
.zr-cerca__chip a:hover { border-color: var(--zr-nero); }

/* --- menu mobile (dialog) --- */
dialog.zr-pannello {
	position: fixed; inset: 0 auto 0 0; margin: 0; width: min(420px, 100vw); max-width: 100vw; height: 100%; max-height: 100%;
	padding: 0; border: 0; background: #fff; color: var(--zr-nero); font-family: var(--zr-ui);
	box-shadow: 12px 0 40px rgba(0, 0, 0, .18); overflow: hidden;
}
dialog.zr-pannello[open] { display: flex; flex-direction: column; }
dialog.zr-pannello::backdrop { background: rgba(15, 15, 15, .5); }
.zr-pannello__testa { display: flex; align-items: center; justify-content: space-between; height: 60px; padding: 0 8px 0 18px; border-bottom: 1px solid var(--zr-linea); flex: none; }
.zr-logo--pannello .zr-logo__img { width: 140px; }
.zr-pannello__chiudi { width: 48px; height: 48px; border: 0; padding: 0; background: none; color: var(--zr-nero); cursor: pointer; display: inline-flex; align-items: center; justify-content: center; }
.zr-pannello__corpo { overflow-y: auto; padding: 16px 18px 40px; flex: 1; -webkit-overflow-scrolling: touch; }
.zr-pannello__cerca { display: flex; align-items: center; gap: 10px; border: 1px solid var(--zr-linea-forte); padding: 0 12px; margin: 0 0 12px; }
.zr-pannello__cerca .zr-icona { width: 20px; height: 20px; color: var(--zr-grigio); }
.zr-pannello__cerca input[type="search"] {
	flex: 1; min-width: 0; height: 48px; border: 0 !important; padding: 0 !important; margin: 0; background: transparent;
	font: 400 16px/1 var(--zr-ui); color: var(--zr-nero); outline: none; box-shadow: none;
}
.zr-mm, .zr-mm__lista, .zr-mm-secondario { list-style: none; margin: 0; padding: 0; }
.zr-mm > li { border-bottom: 1px solid var(--zr-linea); margin: 0; }
.zr-mm__link, .zr-mm__apri {
	display: flex; align-items: center; justify-content: space-between; width: 100%; min-height: 54px; padding: 0 2px;
	background: none; border: 0; border-radius: 0; cursor: pointer; text-align: left;
	color: var(--zr-nero) !important; text-decoration: none; font: 500 15px/1.2 var(--zr-ui); letter-spacing: .06em; text-transform: uppercase;
}
.zr-mm__apri .zr-icona { width: 20px; height: 20px; transition: transform var(--zr-dur); }
.zr-mm__apri[aria-expanded="true"] .zr-icona { transform: rotate(180deg); }
.zr-mm__sotto { padding: 0 0 18px; }
.zr-mm__sotto[hidden] { display: none; }
.zr-mm__tutti { display: inline-block; margin: 0 0 10px; color: var(--zr-rosso) !important; font: 600 13px/1 var(--zr-ui); text-decoration: none; letter-spacing: .06em; text-transform: uppercase; }
.zr-mm__titolo { margin: 12px 0 6px !important; font: 600 11px/1.3 var(--zr-ui); letter-spacing: .14em; text-transform: uppercase; color: var(--zr-grigio); }
.zr-mm__lista--due { display: grid; grid-template-columns: 1fr 1fr; column-gap: 16px; }
.zr-mm__lista a { display: block; padding: 9px 0; color: var(--zr-testo) !important; text-decoration: none; font: 400 14.5px/1.3 var(--zr-ui); }
.zr-mm-secondario { margin-top: 18px; }
.zr-mm-secondario a { display: flex; align-items: center; gap: 12px; min-height: 46px; color: var(--zr-nero) !important; text-decoration: none; font: 400 15px/1.2 var(--zr-ui); }
.zr-mm-secondario .zr-icona { width: 20px; height: 20px; color: var(--zr-grigio); }
.zr-mm-contatti { margin-top: 18px; padding-top: 16px; border-top: 1px solid var(--zr-linea); }
.zr-mm-contatti__negozio { margin: 0 0 6px !important; font: 400 14px/1.5 var(--zr-ui); color: var(--zr-testo); }
.zr-mm-contatti__negozio strong { color: var(--zr-nero); font-weight: 600; margin-right: 6px; }
.zr-mm-contatti__azioni { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; margin-top: 14px; }

/* ============================== FASCIA BREADCRUMB ============================== */
.zr-fascia { background: var(--zr-fascia-fondo); color: #fff; font-family: var(--zr-ui); }
.zr-fascia__in { padding-top: 15px; padding-bottom: 15px; }
.zr-fascia--archivio .zr-fascia__in { padding-top: 26px; padding-bottom: 30px; }
.zr-briciole__lista { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; align-items: center; row-gap: 4px; }
.zr-briciole__voce { display: inline-flex; align-items: center; margin: 0; font: 400 13px/1.4 var(--zr-ui); color: #fff; max-width: 100%; }
.zr-briciole__voce + .zr-briciole__voce::before {
	content: ""; width: 6px; height: 6px; margin: 0 12px 0 10px; border-top: 1.5px solid rgba(255, 255, 255, .75); border-right: 1.5px solid rgba(255, 255, 255, .75);
	transform: rotate(45deg); flex: none;
}
.zr-briciole__voce a { color: rgba(255, 255, 255, .88) !important; text-decoration: none; }
.zr-briciole__voce a:hover { color: #fff !important; text-decoration: underline; text-underline-offset: 3px; }
.zr-briciole__voce [aria-current] { color: #fff; font-weight: 500; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.zr-fascia__su { display: none; }
.zr-fascia .zr-fascia__titolo {
	margin: 10px 0 0 !important; padding: 0; color: #fff !important; font: 600 clamp(26px, 1.6vw + 14px, 40px)/1.15 var(--zr-titoli);
	letter-spacing: -.01em; text-transform: none;
}
.zr-fascia + #main-content, .zr-fascia + .content-page { padding-top: 56px; }

/* ============================== FOOTER ============================== */
.zr-footer { font-family: var(--zr-ui); color: var(--zr-scuro-testo); }
.zr-footer ul { list-style: none; margin: 0; padding: 0; }
.zr-footer li { margin: 0; }
.zr-footer p { margin: 0; }
.zr-servizi { background: var(--zr-fondo); border-top: 1px solid var(--zr-linea); }
.zr-footer .zr-servizi__lista { display: grid; grid-template-columns: repeat(4, 1fr); gap: 24px; padding: 30px var(--zr-margine); }
.zr-servizi__voce { display: flex; align-items: center; gap: 14px; }
.zr-servizi__icona { width: 30px; height: 30px; color: var(--zr-rosso); }
.zr-servizi__voce p { display: flex; flex-direction: column; gap: 3px; }
.zr-servizi__voce strong { font: 600 14px/1.3 var(--zr-ui); color: var(--zr-nero); }
.zr-servizi__voce span { font: 400 13px/1.35 var(--zr-ui); color: var(--zr-grigio); }

.zr-footer__scuro { background: var(--zr-scuro); }
.zr-footer__corpo {
	display: grid; grid-template-columns: 1.5fr 1.25fr 1fr 1fr 1.25fr; gap: 48px; padding-top: 64px; padding-bottom: 52px;
}
.zr-footer__logo { display: inline-block; color: #fff !important; }
.zr-footer__logo-img { width: 196px; height: auto; display: block; }
.zr-footer__frase { margin: 22px 0 0 !important; font: 400 14px/1.65 var(--zr-ui); color: var(--zr-scuro-testo); max-width: 30ch; }
.zr-footer__social { display: flex; gap: 10px; margin-top: 22px !important; }
.zr-footer__social a {
	display: inline-flex; align-items: center; justify-content: center; width: 40px; height: 40px; border: 1px solid #3a3a3a;
	color: #fff !important; transition: border-color var(--zr-dur), background var(--zr-dur);
}
.zr-footer__social a:hover { border-color: #fff; }
.zr-footer__social .zr-icona { width: 18px; height: 18px; }
.zr-footer .zr-footer__titolo {
	margin: 0 0 18px !important; padding: 0; color: #fff !important; font: 600 12px/1.3 var(--zr-ui) !important; letter-spacing: .14em; text-transform: uppercase;
}
.zr-footer__lista a, .zr-footer__contatti a, .zr-footer__negozio a {
	color: var(--zr-scuro-testo) !important; text-decoration: none; font: 400 14px/1.4 var(--zr-ui); transition: color var(--zr-dur);
}
.zr-footer__lista a { display: inline-block; padding: 6px 0; }
.zr-footer__lista a:hover, .zr-footer__contatti a:hover, .zr-footer__negozio a:hover { color: #fff !important; }
.zr-footer__negozio { display: flex; flex-direction: column; gap: 3px; margin: 0 0 20px; font: 400 14px/1.5 var(--zr-ui); font-style: normal; color: var(--zr-scuro-testo); }
.zr-footer__negozio strong { color: #fff; font-weight: 600; font-size: 15px; }
.zr-footer__negozio a { text-decoration: underline !important; text-underline-offset: 3px; text-decoration-color: #555 !important; margin-top: 2px; }
.zr-footer__nota { color: #8f8f8f; font-size: 13px; }
.zr-footer__contatti li + li { margin-top: 10px; }
.zr-footer__contatti a { display: inline-flex; align-items: center; gap: 10px; }
.zr-footer__contatti .zr-icona { width: 18px; height: 18px; color: #fff; }

.zr-footer__pagamenti { display: flex; align-items: center; gap: 22px; flex-wrap: wrap; padding-top: 22px; padding-bottom: 22px; border-top: 1px solid var(--zr-scuro-linea); }
.zr-footer__pagamenti-testo { font: 600 11.5px/1 var(--zr-ui); letter-spacing: .14em; text-transform: uppercase; color: #fff; }
.zr-footer__loghi { display: flex; align-items: center; flex-wrap: wrap; gap: 20px; }
.zr-footer__loghi li { display: inline-flex; color: #d6d6d6; }
.zr-footer__loghi .zr-icona { width: 30px; height: 30px; }
.zr-footer__bonifico { font: 500 12.5px/1 var(--zr-ui); color: #d6d6d6; border: 1px solid #3a3a3a; padding: 8px 10px; }

.zr-footer__legale {
	display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 12px 28px;
	padding-top: 22px; padding-bottom: 28px; padding-right: calc(var(--zr-margine) + 70px);
	border-top: 1px solid var(--zr-scuro-linea); font: 400 12.5px/1.6 var(--zr-ui); color: #9a9a9a;
}
.zr-footer__link-legali { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 22px; }
.zr-footer__link-legali a, .zr-footer__cookie {
	color: #cfcfcf !important; text-decoration: none; font: 400 12.5px/1.6 var(--zr-ui); background: none; border: 0; padding: 0; cursor: pointer;
}
.zr-footer__link-legali a:hover, .zr-footer__cookie:hover { color: #fff !important; text-decoration: underline; text-underline-offset: 3px; }
.zr-footer .zr-footer__recesso { color: #fff !important; text-decoration: underline !important; text-underline-offset: 3px; font-weight: 500; }
.zr-footer__credito a { color: #cfcfcf !important; text-decoration: underline; text-underline-offset: 3px; }
.zr-footer__credito a:hover { color: #fff !important; }

/* ============================== SCHEDA PRODOTTO ============================== */
body.zr-on-prodotto .zr-prodotto .bzotech-row { align-items: flex-start; }
body.zr-on-prodotto .zr-prodotto .summary { padding-left: 24px; }
body.zr-on-prodotto .zr-scheda__testata { margin: 0 0 16px; }
body.zr-on-prodotto .zr-scheda__sopra { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 14px; margin: 0 0 10px !important; font-family: var(--zr-ui); }
body.zr-on-prodotto .zr-scheda__brand {
	color: var(--zr-nero) !important; text-decoration: none; font: 600 12.5px/1.2 var(--zr-ui); letter-spacing: .14em; text-transform: uppercase;
	border-bottom: 1px solid var(--zr-nero); padding-bottom: 2px;
}
body.zr-on-prodotto .zr-scheda__brand:hover { color: var(--zr-rosso) !important; border-color: var(--zr-rosso); }
body.zr-on-prodotto .zr-scheda__tipo { font: 400 12.5px/1.2 var(--zr-ui); color: var(--zr-grigio); letter-spacing: .04em; }
body.zr-on-prodotto .zr-prodotto h1.zr-scheda__titolo {
	margin: 0 !important; padding: 0; font: 600 clamp(24px, .9vw + 16px, 32px)/1.2 var(--zr-titoli) !important;
	color: var(--zr-nero) !important; letter-spacing: -.01em; text-transform: none;
}
body.zr-on-prodotto .zr-prodotto .bzotech-price-single { margin: 0 0 6px; }
body.zr-on-prodotto .zr-prodotto .bzotech-price-single .product-price { display: flex; flex-wrap: wrap; align-items: baseline; gap: 4px 12px; font-family: var(--zr-ui); }
body.zr-on-prodotto .zr-prodotto .bzotech-price-single ins { order: 1; text-decoration: none; color: var(--zr-nero); font: 600 26px/1.2 var(--zr-ui); }
body.zr-on-prodotto .zr-prodotto .bzotech-price-single del { order: 2; color: var(--zr-grigio); font: 400 16px/1.2 var(--zr-ui); opacity: 1; }
body.zr-on-prodotto .zr-prodotto .bzotech-price-single .product-price > .woocommerce-Price-amount { color: var(--zr-nero); font: 600 26px/1.2 var(--zr-ui); }
body.zr-on-prodotto .zr-prodotto .ppcp-messages { margin: 4px 0 6px; min-height: 0; }
body.zr-on-prodotto .zr-scheda__disponibile, body.zr-on-prodotto .zr-scheda__esaurito {
	display: flex; align-items: center; flex-wrap: wrap; gap: 8px; margin: 12px 0 0 !important; font: 500 13.5px/1.4 var(--zr-ui); color: var(--zr-nero);
}
body.zr-on-prodotto .zr-scheda__pallino { width: 8px; height: 8px; border-radius: 50%; background: var(--zr-verde); flex: none; }
body.zr-on-prodotto .zr-scheda__esaurito .zr-scheda__pallino { background: var(--zr-rosso); }
body.zr-on-prodotto .zr-scheda__sep { color: var(--zr-grigio); }
body.zr-on-prodotto .zr-scheda__disponibile { font-weight: 400; }
body.zr-on-prodotto .zr-scheda__dettagli { margin: 20px 0 22px !important; border-top: 1px solid var(--zr-linea); }
body.zr-on-prodotto .zr-scheda__dettagli > div, body.zr-on-prodotto .zr-tab__tabella > div {
	display: grid; grid-template-columns: 150px 1fr; gap: 16px; padding: 11px 0; border-bottom: 1px solid var(--zr-linea);
}
body.zr-on-prodotto .zr-scheda__dettagli dt, body.zr-on-prodotto .zr-tab__tabella dt {
	margin: 0; font: 500 11.5px/1.6 var(--zr-ui); letter-spacing: .1em; text-transform: uppercase; color: var(--zr-grigio);
}
body.zr-on-prodotto .zr-scheda__dettagli dd, body.zr-on-prodotto .zr-tab__tabella dd { margin: 0; font: 400 14.5px/1.5 var(--zr-ui); color: var(--zr-nero); }
body.zr-on-prodotto .zr-scheda__parole { display: block; font-size: 12.5px; color: var(--zr-grigio); }

body.zr-on-prodotto .zr-prodotto .bzotech-form-cart-single { margin: 0 0 12px; }
body.zr-on-prodotto .zr-prodotto .summary form.cart { display: block; margin: 0; }
body.zr-on-prodotto .zr-prodotto .summary form.cart button.single_add_to_cart_button {
	display: flex; align-items: center; justify-content: center; width: 100%; height: 56px; margin: 0; padding: 0 24px;
	background: var(--zr-nero); border: 1px solid var(--zr-nero); border-radius: 0; color: #fff;
	font: 600 14px/1 var(--zr-ui); letter-spacing: .12em; text-transform: uppercase; transition: background var(--zr-dur), border-color var(--zr-dur);
}
body.zr-on-prodotto .zr-prodotto .summary form.cart button.single_add_to_cart_button:hover { background: var(--zr-rosso); border-color: var(--zr-rosso); color: #fff; }
body.zr-on-prodotto .zr-prodotto .summary form.cart button.single_add_to_cart_button::before, body.zr-on-prodotto .zr-prodotto .summary form.cart button.single_add_to_cart_button::after { display: none !important; }
body.zr-on-prodotto .zr-prodotto .summary form.cart button.single_add_to_cart_button.disabled { opacity: .45; }
body.zr-on-prodotto .zr-prodotto .variations { margin-bottom: 14px; }
body.zr-on-prodotto .zr-scheda__wa { width: 100%; margin: 0 0 22px; }
body.zr-on-prodotto .zr-scheda__wa .zr-icona { color: #1f9e55; }
body.zr-on-prodotto .zr-scheda__wa:hover .zr-icona { color: #fff; }
body.zr-on-prodotto .zr-scheda__fiducia { border-top: 1px solid var(--zr-linea); padding-top: 18px; }
body.zr-on-prodotto .zr-scheda__rassicurazioni { list-style: none; margin: 0; padding: 0; display: grid; gap: 11px; }
body.zr-on-prodotto .zr-scheda__rassicurazioni li { display: flex; align-items: center; gap: 12px; margin: 0; font: 400 14px/1.4 var(--zr-ui); color: var(--zr-testo); }
body.zr-on-prodotto .zr-scheda__rassicurazioni .zr-icona { width: 21px; height: 21px; color: var(--zr-nero); }
body.zr-on-prodotto .zr-scheda__rassicurazioni a { color: var(--zr-testo) !important; text-decoration: underline; text-underline-offset: 3px; text-decoration-color: var(--zr-linea-forte); }
body.zr-on-prodotto .zr-scheda__rassicurazioni a:hover { color: var(--zr-rosso) !important; }
body.zr-on-prodotto .zr-scheda__pagamenti { display: flex; align-items: center; flex-wrap: wrap; gap: 10px 16px; margin-top: 18px; }
body.zr-on-prodotto .zr-scheda__pagamenti > span { font: 500 11.5px/1 var(--zr-ui); letter-spacing: .12em; text-transform: uppercase; color: var(--zr-grigio); }
body.zr-on-prodotto .zr-scheda__pagamenti ul { list-style: none; margin: 0; padding: 0; display: flex; align-items: center; gap: 14px; }
body.zr-on-prodotto .zr-scheda__pagamenti li { display: inline-flex; color: #8a8a8a; margin: 0; }
body.zr-on-prodotto .zr-scheda__pagamenti .zr-icona { width: 26px; height: 26px; }
body.zr-on-prodotto .zr-scheda__meta { display: flex; flex-wrap: wrap; gap: 4px 20px; margin: 18px 0 0 !important; font: 400 12.5px/1.5 var(--zr-ui); color: var(--zr-grigio); }
body.zr-on-prodotto .zr-scheda__meta a { color: var(--zr-nero) !important; text-decoration: none; }

/* galleria del tema, ripulita */
body.zr-on-prodotto .zr-prodotto .wrap-detail-gallery .mid { border: 1px solid #ededed; background: #fff; }
body.zr-on-prodotto .zr-prodotto .product-label .sale, body.zr-on-prodotto .single-related-product .product-label .sale {
	background: var(--zr-rosso); color: #fff; font: 600 12px/1 var(--zr-ui); padding: 6px 8px; border-radius: 0; letter-spacing: .02em;
}
body.zr-on-prodotto .zr-prodotto .gallery-control { margin-top: 12px; }
body.zr-on-prodotto .zr-prodotto .gallery-control .gallery-slider { margin: 0 -6px; }
body.zr-on-prodotto .zr-prodotto .gallery-control .slick-slide { padding: 0 6px; }
body.zr-on-prodotto .zr-prodotto .gallery-control a { display: block; border: 0; }
body.zr-on-prodotto .zr-prodotto .gallery-control a img { border: 1px solid #ededed !important; transition: border-color var(--zr-dur); }
body.zr-on-prodotto .zr-prodotto .gallery-control a.active img, body.zr-on-prodotto .zr-prodotto .gallery-control a:hover img { border-color: var(--zr-nero) !important; }

/* schede sotto il riepilogo */
body.zr-on-prodotto .detail-product-tabs { margin-top: 64px; }
body.zr-on-prodotto .detail-product-tabs .product-tab-title { border-bottom: 1px solid var(--zr-linea); margin-bottom: 30px; }
body.zr-on-prodotto .detail-product-tabs .product-tab-title ul { display: flex; flex-wrap: wrap; gap: 0 34px; justify-content: flex-start; margin: 0; padding: 0; }
body.zr-on-prodotto .detail-product-tabs .product-tab-title li { margin: 0; padding: 0; }
body.zr-on-prodotto .detail-product-tabs .product-tab-title li a {
	display: inline-block; padding: 0 0 14px; margin: 0 0 -1px; border-bottom: 2px solid transparent;
	font: 600 12.5px/1.2 var(--zr-ui) !important; letter-spacing: .12em; text-transform: uppercase; color: var(--zr-grigio) !important;
}
body.zr-on-prodotto .detail-product-tabs .product-tab-title li.active a, body.zr-on-prodotto .detail-product-tabs .product-tab-title li a:hover { color: var(--zr-nero) !important; border-bottom-color: var(--zr-nero); }
body.zr-on-prodotto .detail-product-tabs .product-tab-title li a::after, body.zr-on-prodotto .detail-product-tabs .product-tab-title li a::before { display: none !important; }
body.zr-on-prodotto .detail-product-tabs .tab-pane, body.zr-on-prodotto .detail-product-tabs .detail-tab-desc { max-width: 880px; font: 400 15px/1.75 var(--zr-ui); color: var(--zr-testo); }
body.zr-on-prodotto .detail-product-tabs .tab-pane p { margin: 0 0 14px; }
body.zr-on-prodotto .detail-product-tabs .tab-pane h2, body.zr-on-prodotto .detail-product-tabs .tab-pane h3 {
	font: 600 18px/1.3 var(--zr-titoli) !important; color: var(--zr-nero); margin: 22px 0 8px !important; text-transform: none;
}
body.zr-on-prodotto .zr-tab__testo h3:first-child, body.zr-on-prodotto .detail-product-tabs .tab-pane > .detail-tab-desc > h2:first-child { margin-top: 0 !important; }
body.zr-on-prodotto .zr-tab__tabella { margin: 0 0 18px; border-top: 1px solid var(--zr-linea); max-width: 720px; }
body.zr-on-prodotto .zr-tab__nota { font-size: 13.5px; color: var(--zr-grigio); }
body.zr-on-prodotto .zr-tab__contatti { list-style: none; margin: 14px 0 22px; padding: 0; display: flex; flex-wrap: wrap; gap: 10px 28px; }
body.zr-on-prodotto .zr-tab__contatti a { display: inline-flex; align-items: center; gap: 10px; color: var(--zr-nero) !important; text-decoration: none; font-weight: 500; }
body.zr-on-prodotto .zr-tab__contatti .zr-icona { width: 19px; height: 19px; }
body.zr-on-prodotto .zr-tab__negozi { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; max-width: 640px; }
body.zr-on-prodotto .zr-tab__negozi address { display: flex; flex-direction: column; gap: 2px; font-style: normal; font-size: 14px; }
body.zr-on-prodotto .zr-tab__negozi strong { color: var(--zr-nero); font-family: var(--zr-titoli); font-size: 17px; font-weight: 600; }
body.zr-on-prodotto .zr-tab__negozi a { color: var(--zr-nero) !important; text-decoration: underline; text-underline-offset: 3px; }

/* correlati */
body.zr-on-prodotto .single-related-product { margin-top: 72px; }
body.zr-on-prodotto .single-related-product .title-related-product h2 {
	font: 600 26px/1.2 var(--zr-titoli) !important; text-transform: none !important; color: var(--zr-nero); letter-spacing: -.01em;
}

/* --- pannello categoria (sole e vista): offerta, acquista per, best seller, foto --- */
.zr-mega--cat { border-top: 1px solid var(--zr-linea); }
.zr-cat { display: flex; align-items: stretch; min-height: 380px; }
.zr-cat__colonne {
	display: grid; grid-template-columns: 250px 210px; gap: 44px; align-content: start;
	padding: 34px 48px 42px max(var(--zr-margine), calc((100% - 1560px) / 2 + var(--zr-margine)));
}
.zr-cat__offerta { list-style: none; margin: 0 0 22px; padding: 0; }
.zr-cat__offerta li { margin: 0; }
.zr-cat__offerta a {
	display: flex; align-items: center; gap: 14px; padding: 7px 0;
	color: var(--zr-nero) !important; text-decoration: none; font: 500 15px/1.3 var(--zr-ui);
}
.zr-cat__offerta a:hover { color: var(--zr-rosso) !important; }
.zr-cat__faccia { width: 54px; height: 54px; border-radius: 50%; object-fit: cover; background: var(--zr-fondo); }
.zr-cat .zr-cat__tutto { min-height: 44px; padding: 10px 26px; }
.zr-cat__bs { flex: 1 1 auto; min-width: 0; background: var(--zr-fondo); padding: 34px 40px 36px; }
.zr-cat__bs-titolo { text-align: center; }
.zr-cat__bs-lista { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: 1fr 1fr; gap: 8px 24px; }
.zr-cat__bs-lista li { margin: 0; }
.zr-cat__bs-lista a { display: flex; flex-direction: column; align-items: center; gap: 2px; padding: 6px; color: var(--zr-nero) !important; text-decoration: none; text-align: center; }
.zr-cat__bs-lista img { width: min(150px, 100%); height: auto; mix-blend-mode: multiply; }
.zr-cat__bs-lista strong { font: 700 14px/1.3 var(--zr-ui); }
.zr-cat__bs-lista span { font: 400 12px/1.4 var(--zr-ui); color: var(--zr-grigio); text-decoration: underline; text-underline-offset: 3px; }
.zr-cat__bs-lista a:hover span { color: var(--zr-rosso); }
.zr-cat__foto { position: relative; flex: none; width: clamp(240px, 23vw, 350px); display: block; overflow: hidden; }
.zr-cat__foto img { position: absolute; inset: 0; width: 100%; height: 100%; max-width: none; object-fit: cover; object-position: 60% 30%; }
.zr-cat .zr-cat__cta { position: absolute; left: 50%; bottom: 26px; transform: translateX(-50%); white-space: nowrap; border-color: #fff; }
@media (max-width: 1500px) { .zr-cat__colonne { grid-template-columns: 230px 190px; gap: 32px; padding-right: 36px; } }

/* --- testata del catalogo (briciole, titolo, scorciatoie) --- */
.zr-cat-testata { padding: 18px 0 6px; }
.zr-cat-testata .zr-briciole--chiare { margin: 0 0 16px; }
.zr-cat-testata .zr-briciole__lista { display: flex; flex-wrap: wrap; list-style: none; margin: 0; padding: 0; font: 400 12.5px/1.5 var(--zr-ui); color: var(--zr-grigio); }
.zr-cat-testata .zr-briciole__voce { margin: 0; }
.zr-cat-testata .zr-briciole__voce + .zr-briciole__voce::before { content: "/"; margin: 0 8px; color: var(--zr-linea-forte); }
.zr-cat-testata .zr-briciole__voce a { color: var(--zr-grigio) !important; text-decoration: none; }
.zr-cat-testata .zr-briciole__voce a:hover { color: var(--zr-rosso) !important; text-decoration: underline; text-underline-offset: 3px; }
.zr-cat-testata .zr-briciole__voce span { color: var(--zr-nero); }
.zr-catalogo .zr-cat-testata__titolo {
	margin: 0 0 20px; font: 600 clamp(20px, 1.8vw, 24px)/1.2 var(--zr-titoli);
	letter-spacing: .3em; text-transform: uppercase; color: var(--zr-nero); text-wrap: balance;
}
.zr-pillole ul { display: flex; flex-wrap: wrap; gap: 10px; list-style: none; margin: 0; padding: 0; }
.zr-pillole li { margin: 0; }
.zr-pillola {
	display: inline-flex; align-items: center; min-height: 42px; padding: 0 20px; border: 1px solid var(--zr-linea-forte);
	color: var(--zr-nero) !important; text-decoration: none; font: 500 13.5px/1.2 var(--zr-ui);
	transition: border-color var(--zr-dur), background var(--zr-dur), color var(--zr-dur);
}
.zr-pillola:hover { border-color: var(--zr-nero); }
.zr-pillola.is-attiva { background: var(--zr-nero); border-color: var(--zr-nero); color: #fff !important; }
.zr-pillole button.zr-pillola { background: #fff; margin: 0; border-radius: 0; cursor: pointer; letter-spacing: 0; text-transform: none; gap: 8px; }
.zr-pillole button.zr-pillola.is-attiva { background: var(--zr-nero); }
.zr-pillola__n {
	min-width: 20px; height: 20px; padding: 0 6px; box-sizing: border-box; border-radius: 10px;
	background: var(--zr-rosso); color: #fff; font: 600 11px/20px var(--zr-ui); text-align: center;
}

/* --- griglia e card come il riferimento --- */
body.zr-on-catalogo .shop-list-view .item-product {
	border: 1px solid var(--zr-linea); background: #fff; padding: 14px 14px 20px;
	transition: border-color var(--zr-dur);
}
body.zr-on-catalogo .shop-list-view .item-product:hover { border-color: var(--zr-nero); }
body.zr-on-catalogo .shop-list-view .product-info { text-align: center; padding: 10px 6px 0; }
body.zr-on-catalogo .shop-list-view .product-title { margin: 0 0 6px; }
body.zr-on-catalogo .shop-list-view .product-title a { font: 500 15px/1.45 var(--zr-ui) !important; color: var(--zr-nero) !important; }
body.zr-on-catalogo .shop-list-view .product-title a:hover { color: var(--zr-rosso) !important; }
body.zr-on-catalogo .shop-list-view .product-price { justify-content: center; font-family: var(--zr-ui); }
body.zr-on-catalogo .shop-list-view .product-price del .amount { color: var(--zr-grigio); font-size: 13.5px; }
body.zr-on-catalogo .shop-list-view .product-price ins { text-decoration: none; }
body.zr-on-catalogo .shop-list-view .product-price ins .amount, body.zr-on-catalogo .shop-list-view .product-price > .amount { color: var(--zr-nero); font-weight: 700; font-size: 16px; }
body.zr-on-catalogo .shop-list-view .product-price del + ins .amount { color: var(--zr-rosso); }
body.zr-on-catalogo .shop-list-view .product-label .sale { border-radius: 0; background: var(--zr-rosso); font-family: var(--zr-ui); }
body.zr-on-catalogo .woocommerce-pagination .page-numbers {
	min-width: 42px; height: 42px; line-height: 40px; border: 1px solid var(--zr-linea-forte); border-radius: 0;
	color: var(--zr-nero); font: 500 14px/40px var(--zr-ui); margin: 0 3px;
}
body.zr-on-catalogo .woocommerce-pagination .page-numbers.current { background: var(--zr-nero); border-color: var(--zr-nero); color: #fff; }
body.zr-on-catalogo .woocommerce-pagination a.page-numbers:hover { border-color: var(--zr-nero); }

/* ============================== HERO (homepage) ============================== */
/* contenitori Elementor della hero: niente fadeIn (la sezione restava invisibile fino al JS) e larghezza nostra */
body.zr-on-hero .elementor-element.elementor-element-8cc4587 {
	--padding-left: 0px; --padding-right: 0px; --content-width: 100%; padding-left: 0; padding-right: 0;
	visibility: visible !important; opacity: 1 !important; animation: none !important;
}
body.zr-on-hero .elementor-element.elementor-element-8cc4587 > .e-con-inner { max-width: none; padding: 0; }
body.zr-on-hero .elementor-element.elementor-element-86eeca3 {
	--width: 100%; --padding-left: 0px; --padding-right: 0px; --margin-top: 0px; width: 100%; max-width: 100%; padding: 0; margin: 0;
}
body.zr-on-hero .elementor-element.elementor-element-4e1abfa { display: none !important; }
body.zr-on-hero .elementor-element.elementor-element-bd49d76 { width: 100%; max-width: 100%; margin: 0; }

.zr-hero {
	display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 2fr); gap: 56px; align-items: center;
	padding-top: 28px; text-align: left; font-family: var(--zr-ui);
}
.zr-hero--senza-foto { grid-template-columns: 1fr; }
.zr-hero__testo { container-type: inline-size; padding: 24px 0; }
.zr-hero .zr-hero__titolo {
	margin: 0 0 22px; font: 600 12px/1.5 var(--zr-ui); letter-spacing: .14em; text-transform: uppercase; color: var(--zr-rosso);
	text-wrap: balance;
}
.zr-hero .zr-hero__claim {
	margin: 0 0 40px; font-family: var(--zr-titoli); font-weight: 600; line-height: 1.02; letter-spacing: -.02em; color: var(--zr-nero);
	font-size: clamp(44px, 4.4vw, 72px);
	font-size: clamp(40px, 15cqi, 78px); /* «Concedersi.» occupa 6,1 em: cosi' non esce mai dalla colonna */
}
.zr-hero__azioni { display: flex; flex-wrap: wrap; gap: 12px; }
.zr-hero__card {
	display: grid; grid-template-columns: 1fr 1.45fr 1fr; gap: 10px; height: clamp(500px, calc(100vh - 210px), 680px);
	margin: 0; padding: 0; list-style: none;
}
.zr-hero__voce { position: relative; margin: 0; overflow: hidden; background: #e9e6e1; }
.zr-hero .zr-hero__link { position: absolute; inset: 0; display: block; color: #fff !important; text-decoration: none; }
.zr-hero__link::after {
	content: ""; position: absolute; inset: 0; pointer-events: none;
	background: linear-gradient(to top, rgba(0, 0, 0, .72) 0%, rgba(0, 0, 0, .28) 32%, rgba(0, 0, 0, 0) 55%);
}
.zr-hero .zr-hero__foto {
	position: absolute; inset: 0; width: 100%; height: 100%; max-width: none; object-fit: cover;
	transition: transform .7s cubic-bezier(.2, .7, .2, 1);
}
.zr-hero__link:hover .zr-hero__foto { transform: scale(1.04); }
.zr-hero__link:focus-visible { outline: 3px solid var(--zr-rosso); outline-offset: -3px; }
.zr-hero__etichetta {
	position: absolute; z-index: 1; left: 20px; right: 20px; bottom: 20px;
	display: flex; align-items: flex-end; justify-content: space-between; gap: 12px;
}
.zr-hero__nome {
	font: 600 20px/1.2 var(--zr-titoli); letter-spacing: -.005em; color: #fff; text-wrap: balance;
	text-shadow: 0 1px 3px rgba(0, 0, 0, .6), 0 0 14px rgba(0, 0, 0, .35); /* bianco leggibile anche sulle zone chiare delle foto */
}
.zr-hero .zr-hero__freccia {
	flex: none; width: 36px; height: 36px; padding: 8px; box-sizing: border-box; border-radius: 50%;
	background: #fff; color: var(--zr-nero); transition: transform var(--zr-dur), background var(--zr-dur), color var(--zr-dur);
}
.zr-hero__link:hover .zr-hero__freccia { background: var(--zr-rosso); color: #fff; transform: translateX(3px); }

/* ============================== CATALOGO E FILTRI ============================== */
.zr-catalogo, #main-content.zr-catalogo { padding: 10px 0 72px; } /* l'id del tema mette 100px sopra */
.zr-catalogo__in { display: block; }
.zr-catalogo__risultati { min-width: 0; }
.zr-catalogo .wrap-rating { display: none; } /* stelline vuote su ogni card: le recensioni non sono attive */

/* barra sopra i prodotti */
.zr-catalogo__barra {
	display: flex; align-items: center; flex-wrap: wrap; gap: 12px 24px; min-height: 46px;
	padding-bottom: 18px; margin-bottom: 22px; border-bottom: 1px solid var(--zr-linea);
}
.zr-catalogo .zr-catalogo__apri {
	display: inline-flex; align-items: center; gap: 8px; order: 4; min-height: 44px; margin: 0; padding: 0 16px;
	border: 1px solid var(--zr-nero); border-radius: 0; background: #fff; color: var(--zr-nero);
	font: 600 13px/1 var(--zr-ui); letter-spacing: .08em; text-transform: uppercase; cursor: pointer;
	transition: background var(--zr-dur), color var(--zr-dur);
}
.zr-catalogo .zr-catalogo__apri:hover { background: var(--zr-nero); color: #fff; }
.zr-catalogo__apri .zr-icona { width: 20px; height: 20px; }
.zr-catalogo__badge {
	min-width: 20px; height: 20px; padding: 0 6px; box-sizing: border-box; border-radius: 10px;
	background: var(--zr-rosso); color: #fff; font: 600 11px/20px var(--zr-ui); letter-spacing: 0; text-align: center;
}
.zr-catalogo__badge[hidden] { display: none; }
.zr-catalogo__conta { order: 1; margin: 0 !important; font: 500 14px/1.4 var(--zr-ui); color: var(--zr-grigio); }
.zr-catalogo__ordina { order: 3; margin-left: auto; display: flex; align-items: center; gap: 10px; }
.zr-catalogo__ordina label { margin: 0; font: 500 13px/1 var(--zr-ui); color: var(--zr-grigio); }
.zr-select { position: relative; display: inline-flex; align-items: center; }
.zr-catalogo .zr-select select {
	-webkit-appearance: none; appearance: none; box-sizing: border-box; width: auto; height: 44px; margin: 0;
	padding: 0 42px 0 14px; border: 1px solid var(--zr-linea-forte); border-radius: 0; box-shadow: none;
	background: #fff none; color: var(--zr-nero); font: 500 14px/1 var(--zr-ui); cursor: pointer;
	transition: border-color var(--zr-dur);
}
.zr-catalogo .zr-select select:hover { border-color: var(--zr-nero); }
.zr-catalogo .zr-select select:focus-visible { outline: 2px solid var(--zr-rosso); outline-offset: 2px; }
.zr-select .zr-icona { position: absolute; right: 12px; width: 18px; height: 18px; pointer-events: none; color: var(--zr-nero); }

/* filtri scelti */
.zr-scelte { display: flex; flex-wrap: wrap; align-items: center; gap: 10px 18px; margin: 0 0 24px; }
.zr-scelte__elenco { display: flex; flex-wrap: wrap; gap: 8px; list-style: none; margin: 0; padding: 0; }
.zr-scelte__elenco li { margin: 0; }
.zr-catalogo .zr-scelta {
	display: inline-flex; align-items: center; gap: 6px; min-height: 36px; margin: 0; padding: 6px 10px 6px 12px;
	border: 1px solid var(--zr-nero); border-radius: 0; background: #fff; color: var(--zr-nero);
	font: 500 13px/1.2 var(--zr-ui); letter-spacing: 0; text-transform: none; cursor: pointer;
	transition: background var(--zr-dur), color var(--zr-dur);
}
.zr-scelta .zr-icona { width: 16px; height: 16px; }
.zr-catalogo .zr-scelta:hover { background: var(--zr-nero); color: #fff; }
.zr-catalogo .zr-scelte__azzera, .zr-filtri .zr-filtri__azzera {
	font: 500 13px/1.2 var(--zr-ui); color: var(--zr-nero); text-decoration: underline; text-underline-offset: 3px;
}
.zr-catalogo .zr-scelte__azzera:hover, .zr-filtri .zr-filtri__azzera:hover { color: var(--zr-rosso); }

/* mentre arriva la pagina nuova */
.zr-catalogo.is-carica .zr-catalogo__elenco { opacity: .45; transition: opacity .15s; }

/* pannello: cassetto da destra come il riferimento, a ogni larghezza */
.zr-filtri {
	position: fixed; z-index: 100001; top: 0; bottom: 0; right: 0; width: min(430px, 100vw);
	margin: 0; padding: 0; overflow: hidden; background: #fff; box-shadow: 0 0 40px rgba(0, 0, 0, .18);
	transform: translateX(100%); visibility: hidden; transition: transform .25s ease, visibility 0s linear .25s;
}
.zr-filtri.is-aperto { transform: none; visibility: visible; transition: transform .25s ease; }
.zr-filtri__modulo { display: flex; flex-direction: column; height: 100%; margin: 0; }
.zr-filtri__testa { display: flex; flex: none; align-items: center; justify-content: space-between; padding: 10px 22px; border-bottom: 1px solid var(--zr-linea); }
.zr-filtri .zr-filtri__titolo { margin: 0; font: 600 13px/1.2 var(--zr-ui); letter-spacing: .12em; text-transform: uppercase; color: var(--zr-nero); }
.zr-filtri .zr-filtri__chiudi {
	display: inline-flex; align-items: center; justify-content: center; width: 44px; height: 44px; margin: 0 -10px 0 0;
	padding: 0; background: none; border: 0; color: var(--zr-nero); cursor: pointer;
}
.zr-filtri__corpo { flex: 1; min-height: 0; overflow-y: auto; overscroll-behavior: contain; padding: 0 22px; scrollbar-width: thin; scrollbar-color: var(--zr-linea-forte) transparent; }
.zr-js-catalogo .zr-filtri__piede, .zr-filtri__piede {
	display: flex; flex: none; align-items: center; justify-content: space-between; gap: 16px;
	padding: 14px 22px calc(14px + env(safe-area-inset-bottom)); border-top: 1px solid var(--zr-linea); background: #fff;
}
.zr-filtri .zr-filtri__mostra { flex: 1; max-width: 270px; margin: 0; background: var(--zr-nero); color: #fff !important; border-color: var(--zr-nero); cursor: pointer; }
.zr-filtri__velo { position: fixed; z-index: 100000; inset: 0; background: rgba(15, 15, 15, .45); }
.zr-filtri__velo[hidden] { display: none; }
html.zr-filtri-aperti .qlwapp__container { display: none !important; } /* la bolla WhatsApp (z-index 9999999) copriva «Mostra prodotti» */
/* senza JavaScript il cassetto non si apre: il pannello resta in pagina, sopra ai prodotti */
html:not(.zr-js-catalogo) .zr-filtri { position: static; width: auto; transform: none; visibility: visible; box-shadow: none; margin-bottom: 32px; border: 1px solid var(--zr-linea); }
html:not(.zr-js-catalogo) .zr-filtri__corpo { overflow: visible; }
.zr-filtri__niente { margin: 18px 0 0; font: 400 14px/1.5 var(--zr-ui); color: var(--zr-grigio); }

/* le caselle vere restano per tastiera e lettori di schermo, sotto il disegno */
.zr-filtri input[type="checkbox"] {
	position: absolute !important; left: 0; top: 50%; width: 1px !important; height: 1px !important;
	margin: 0 !important; padding: 0 !important; opacity: 0 !important; -webkit-appearance: none; appearance: none; pointer-events: none;
}

.zr-interruttore {
	position: relative; display: flex; align-items: center; gap: 12px; margin: 0; padding: 18px 0;
	border-bottom: 1px solid var(--zr-linea); cursor: pointer; font: 500 14px/1.3 var(--zr-ui); color: var(--zr-nero);
}
.zr-interruttore__levetta {
	position: relative; flex: none; width: 36px; height: 20px; border-radius: 10px; background: var(--zr-linea-forte);
	transition: background var(--zr-dur);
}
.zr-interruttore__levetta::after {
	content: ""; position: absolute; left: 2px; top: 2px; width: 16px; height: 16px; border-radius: 50%;
	background: #fff; box-shadow: 0 1px 2px rgba(0, 0, 0, .25); transition: transform var(--zr-dur);
}
.zr-interruttore input:checked + .zr-interruttore__levetta { background: var(--zr-rosso); }
.zr-interruttore input:checked + .zr-interruttore__levetta::after { transform: translateX(16px); }
.zr-interruttore input:focus-visible + .zr-interruttore__levetta { outline: 2px solid var(--zr-rosso); outline-offset: 2px; }
.zr-interruttore__testo { flex: 1; }

.zr-faccetta { border-bottom: 1px solid var(--zr-linea); }
.zr-faccetta__titolo {
	display: flex; align-items: center; gap: 8px; padding: 18px 0; cursor: pointer; list-style: none;
	font: 600 12px/1.2 var(--zr-ui); letter-spacing: .12em; text-transform: uppercase; color: var(--zr-nero);
}
.zr-faccetta__titolo::-webkit-details-marker { display: none; }
.zr-faccetta__titolo::marker { content: ""; }
.zr-faccetta__titolo > span:first-child { flex: 1; }
.zr-faccetta__titolo:focus-visible { outline: 2px solid var(--zr-rosso); outline-offset: 2px; }
.zr-faccetta__scelte {
	min-width: 20px; height: 20px; padding: 0 6px; box-sizing: border-box; border-radius: 10px;
	background: var(--zr-nero); color: #fff; font: 600 11px/20px var(--zr-ui); letter-spacing: 0; text-align: center;
}
.zr-faccetta__freccia { width: 18px; height: 18px; transition: transform var(--zr-dur); }
.zr-faccetta[open] .zr-faccetta__freccia { transform: rotate(180deg); }
.zr-faccetta__corpo { padding: 0 0 16px; }
.zr-faccetta__voci { list-style: none; margin: 0; padding: 0; }
.zr-voce-li { margin: 0; padding: 0; }
.zr-voce {
	position: relative; display: flex; align-items: center; gap: 10px; min-height: 36px; margin: 0; padding: 3px 0;
	cursor: pointer; font: 400 14px/1.3 var(--zr-ui); color: var(--zr-testo);
}
.zr-voce__segno {
	position: relative; flex: none; width: 18px; height: 18px; box-sizing: border-box; border: 1.5px solid #9b9b9b; background: #fff;
	transition: background var(--zr-dur), border-color var(--zr-dur);
}
.zr-voce:hover .zr-voce__segno { border-color: var(--zr-nero); }
.zr-voce input:checked ~ .zr-voce__segno { background: var(--zr-nero); border-color: var(--zr-nero); }
.zr-voce input:checked ~ .zr-voce__segno::after {
	content: ""; position: absolute; left: 5px; top: 1.5px; width: 4px; height: 9px;
	border: solid #fff; border-width: 0 2px 2px 0; transform: rotate(45deg);
}
.zr-voce input:focus-visible ~ .zr-voce__segno, .zr-voce input:focus-visible ~ .zr-voce__colore { outline: 2px solid var(--zr-rosso); outline-offset: 2px; }
.zr-voce__nome { flex: 1; min-width: 0; }
.zr-voce:hover .zr-voce__nome, .zr-voce input:checked ~ .zr-voce__nome { color: var(--zr-nero); }
.zr-voce input:checked ~ .zr-voce__nome { font-weight: 500; }
.zr-voce__n { margin-left: auto; padding-left: 8px; color: var(--zr-grigio); font-size: 12.5px; font-variant-numeric: tabular-nums; }
.zr-interruttore .zr-voce__n { font-weight: 400; }
.zr-voce.is-vuota { color: var(--zr-grigio); } /* resta cliccabile: contrasto pieno (era 2,5:1) */

.zr-faccetta__voci--colori .zr-voce__segno { display: none; }
.zr-voce__colore {
	flex: none; width: 20px; height: 20px; border-radius: 50%; background: var(--zr-c, #ccc);
	box-shadow: inset 0 0 0 1px rgba(0, 0, 0, .16); transition: box-shadow var(--zr-dur);
}
.zr-voce input:checked ~ .zr-voce__colore { box-shadow: inset 0 0 0 1px rgba(0, 0, 0, .16), 0 0 0 2px #fff, 0 0 0 3.5px var(--zr-nero); }

.zr-js-catalogo .zr-voce-li.is-extra { display: none; }
.zr-js-catalogo .zr-faccetta.is-tutte .zr-voce-li.is-extra, .zr-js-catalogo .zr-faccetta.is-cerca .zr-voce-li.is-extra { display: block; }
.zr-voce-li.is-nascosta { display: none !important; }
.zr-faccetta.is-cerca [data-zr-altri] { display: none; }
.zr-filtri .zr-faccetta__altri {
	margin: 6px 0 0; padding: 6px 0; background: none; border: 0; border-radius: 0; color: var(--zr-nero);
	font: 500 13px/1.2 var(--zr-ui); letter-spacing: 0; text-transform: none; text-decoration: underline; text-underline-offset: 3px; cursor: pointer;
}
.zr-filtri .zr-faccetta__altri:hover { color: var(--zr-rosso); }
.zr-filtri .zr-faccetta__cerca {
	-webkit-appearance: none; appearance: none; display: block; box-sizing: border-box; width: 100%; height: 40px; margin: 0 0 10px;
	padding: 0 12px; border: 1px solid var(--zr-linea-forte); border-radius: 0; box-shadow: none; background: #fff;
	font: 400 14px/1 var(--zr-ui); color: var(--zr-nero);
}
.zr-filtri .zr-faccetta__cerca:focus { border-color: var(--zr-nero); outline: none; }
.zr-faccetta__nessuno { margin: 4px 0 0; font: 400 13px/1.4 var(--zr-ui); color: var(--zr-grigio); }

/* nessun prodotto */
.zr-vuoto { max-width: 560px; padding: 32px 0 48px; }
.zr-catalogo .zr-vuoto__titolo { margin: 0 0 8px; font: 600 22px/1.3 var(--zr-titoli); color: var(--zr-nero); }
.zr-vuoto p { font: 400 15px/1.6 var(--zr-ui); color: var(--zr-testo); }
.zr-vuoto .zr-vuoto__azioni { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 22px; }

/* ============================== DOMANDE FREQUENTI (homepage) ============================== */
body.zr-on-faq #faq .elementor-element-22815d8 { display: none; } /* contenitore del vecchio titolo, rimasto vuoto */
.zr-faq {
	display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: 72px; padding: 80px 0;
	font-family: var(--zr-ui); color: var(--zr-testo); text-align: left;
}
.zr-faq__intro { position: sticky; top: calc(var(--zr-alto-header) + 32px); align-self: start; }
.zr-faq .zr-faq__occhiello { margin: 0 0 14px; font: 600 12px/1.2 var(--zr-ui); letter-spacing: .14em; text-transform: uppercase; color: var(--zr-rosso); }
.zr-faq .zr-faq__titolo {
	margin: 0 0 18px; font: 600 clamp(30px, 3.1vw, 44px)/1.1 var(--zr-titoli); letter-spacing: -.01em;
	text-transform: none; color: var(--zr-nero);
}
.zr-faq .zr-faq__testo { max-width: 40ch; margin: 0 0 30px; font: 400 16px/1.65 var(--zr-ui); color: var(--zr-testo); }
.zr-faq__azioni { display: flex; flex-wrap: wrap; gap: 12px; }
.zr-faq__elenco { border-top: 1px solid var(--zr-nero); }
.zr-faq__voce { border-bottom: 1px solid var(--zr-linea); }
.zr-faq__domanda { display: flex; align-items: center; gap: 24px; padding: 22px 0; cursor: pointer; list-style: none; }
.zr-faq__domanda::-webkit-details-marker { display: none; }
.zr-faq__domanda::marker { content: ""; }
.zr-faq__domanda:focus-visible { outline: 2px solid var(--zr-rosso); outline-offset: 4px; }
.zr-faq .zr-faq__q {
	flex: 1; margin: 0; font: 600 18px/1.4 var(--zr-titoli); letter-spacing: 0; text-transform: none; color: var(--zr-nero);
	transition: color var(--zr-dur);
}
.zr-faq__domanda:hover .zr-faq__q { color: var(--zr-rosso); }
.zr-faq__segno {
	position: relative; flex: none; width: 34px; height: 34px; box-sizing: border-box; border: 1px solid var(--zr-linea-forte);
	border-radius: 50%; transition: background var(--zr-dur), border-color var(--zr-dur);
}
.zr-faq__segno::before, .zr-faq__segno::after {
	content: ""; position: absolute; left: 50%; top: 50%; width: 12px; height: 1.5px; background: var(--zr-nero);
	transform: translate(-50%, -50%); transition: transform var(--zr-dur), background var(--zr-dur);
}
.zr-faq__segno::after { transform: translate(-50%, -50%) rotate(90deg); }
.zr-faq__domanda:hover .zr-faq__segno { border-color: var(--zr-nero); }
.zr-faq__voce[open] .zr-faq__segno { background: var(--zr-nero); border-color: var(--zr-nero); }
.zr-faq__voce[open] .zr-faq__segno::before, .zr-faq__voce[open] .zr-faq__segno::after { background: #fff; }
.zr-faq__voce[open] .zr-faq__segno::after { transform: translate(-50%, -50%) rotate(0deg); }
.zr-faq__risposta { padding: 0 58px 24px 0; }
.zr-faq__voce[open] .zr-faq__risposta { animation: zr-faq-apri .25s ease-out both; }
.zr-faq .zr-faq__risposta p { max-width: 68ch; margin: 0 0 12px; font: 400 15.5px/1.7 var(--zr-ui); color: var(--zr-testo); }
.zr-faq .zr-faq__risposta p:last-child { margin-bottom: 0; }
.zr-faq .zr-faq__risposta a { color: var(--zr-nero); text-decoration: underline; text-decoration-color: var(--zr-rosso); text-underline-offset: 3px; }
.zr-faq .zr-faq__risposta a:hover { color: var(--zr-rosso); }
@keyframes zr-faq-apri { from { opacity: 0; transform: translateY(-4px); } to { opacity: 1; transform: none; } }

/* ============================== LARGHEZZE ============================== */
@media (min-width: 1440px) {
	.zr-topbar__in { justify-content: space-between; }
	.zr-topbar__extra { display: flex; }
	.zr-azione__testo { display: inline; }
	.zr-azione--carrello .zr-conta { position: static; order: 3; margin-left: -2px; }
}
@media (max-width: 1439px) and (min-width: 1200px) {
	.zr-logo__img { width: 164px; }
	.zr-nav__lista { gap: 20px; }
}

/* sotto i 1200: menu nel cassetto, ricerca e carrello a destra */
@media (max-width: 1199px) {
	:root { --zr-margine: 15px; --zr-alto-header: 62px; }
	.zr-topbar__msg { position: relative; display: block; text-align: center; width: 100%; }
	.zr-topbar__voce { display: none; }
	.zr-topbar__voce.is-attiva { display: block; animation: zr-appare .5s ease-out; }
	.zr-topbar__voce + .zr-topbar__voce::before { display: none; }
	.zr-header__in { display: grid; grid-template-columns: 1fr auto 1fr; gap: 8px; height: var(--zr-alto-header); }
	.zr-header.is-compatto .zr-header__in { height: 56px; }
	.zr-header__menu {
		display: inline-flex; align-items: center; justify-content: center; width: 44px; height: 44px; margin-left: -10px;
		background: none; border: 0; padding: 0; color: var(--zr-nero); cursor: pointer; justify-self: start;
	}
	.zr-header__menu .zr-icona { width: 24px; height: 24px; }
	.zr-logo { justify-self: center; }
	.zr-logo__img, .zr-header.is-compatto .zr-logo__img { width: 150px; }
	.zr-nav { display: none; }
	.zr-azioni { justify-self: end; margin-right: -8px; gap: 0; }
	.zr-azione--account { display: none; }
	.zr-cerca__in { padding-top: 14px; padding-bottom: 22px; }
	.zr-header .zr-cerca__campo { font-size: 18px; height: 52px; }
	.zr-cerca__invia { display: none; }
	.zr-cerca__sotto { grid-template-columns: 1fr; gap: 20px; }
	.zr-mega { display: none !important; }
	.zr-fascia__in { padding-top: 12px; padding-bottom: 12px; }
	.zr-fascia--archivio .zr-fascia__in { padding-top: 18px; padding-bottom: 22px; }
	.zr-fascia + #main-content, .zr-fascia + .content-page { padding-top: 32px; }
	.zr-footer .zr-servizi__lista { grid-template-columns: 1fr 1fr; gap: 20px 24px; }
	.zr-footer__corpo { grid-template-columns: 1fr 1fr 1fr; gap: 40px 32px; padding-top: 48px; }
	.zr-footer__marchio { grid-column: 1 / -1; }
	body.zr-on-prodotto .zr-prodotto .summary { padding-left: 0; }
}
@media (max-width: 991px) {
	body.zr-on-prodotto .zr-prodotto .summary { margin-top: 26px; }
	body.zr-on-prodotto .detail-product-tabs { margin-top: 40px; }
}
@media (max-width: 767px) {
	.zr-fascia--prodotto .zr-briciole { display: none; }
	.zr-fascia--prodotto .zr-fascia__su {
		display: inline-flex; align-items: center; gap: 4px; margin-left: -4px; min-height: 28px;
		color: #fff !important; text-decoration: none; font: 500 13px/1.3 var(--zr-ui);
	}
	.zr-fascia__su .zr-icona { width: 18px; height: 18px; }
	.zr-fascia + #main-content, .zr-fascia + .content-page { padding-top: 22px; }
	.zr-footer .zr-servizi__lista { padding-top: 22px; padding-bottom: 22px; gap: 18px 16px; }
	.zr-servizi__voce { align-items: flex-start; gap: 10px; }
	.zr-servizi__icona { width: 24px; height: 24px; }
	.zr-servizi__voce strong { font-size: 13px; }
	.zr-servizi__voce span { font-size: 12px; }
	.zr-footer__corpo { grid-template-columns: 1fr 1fr; gap: 34px 20px; padding-top: 40px; padding-bottom: 36px; }
	.zr-footer__col--negozi, .zr-footer__col--contatti { grid-column: 1 / -1; }
	.zr-footer__col--negozi { display: grid; grid-template-columns: 1fr 1fr; gap: 0 20px; }
	.zr-footer__col--negozi .zr-footer__titolo { grid-column: 1 / -1; }
	.zr-footer__lista a { padding: 8px 0; }
	.zr-footer__pagamenti { gap: 14px; }
	.zr-footer__loghi { gap: 14px; }
	.zr-footer__loghi .zr-icona { width: 26px; height: 26px; }
	.zr-footer__legale { flex-direction: column; align-items: flex-start; padding-bottom: 130px; padding-right: var(--zr-margine); }
	body.zr-on-prodotto .zr-scheda__dettagli > div, body.zr-on-prodotto .zr-tab__tabella > div { grid-template-columns: 118px 1fr; gap: 12px; }
	body.zr-on-prodotto .detail-product-tabs .product-tab-title { display: none; }
	body.zr-on-prodotto .detail-product-tabs h3.title-tab-product-mobi {
		display: block !important; margin: 0 !important; padding: 16px 0 !important; border-top: 1px solid var(--zr-linea);
		font: 600 13px/1.3 var(--zr-ui) !important; letter-spacing: .1em; text-transform: uppercase; color: var(--zr-nero) !important;
	}
	body.zr-on-prodotto .zr-tab__negozi { grid-template-columns: 1fr; }
	body.zr-on-prodotto .single-related-product .title-related-product h2 { font-size: 21px !important; }
}
@media (max-width: 400px) {
	.zr-logo__img, .zr-header.is-compatto .zr-logo__img { width: 132px; }
	.zr-footer__col--negozi { grid-template-columns: 1fr; }
}

@keyframes zr-appare { from { opacity: 0; transform: translateY(3px); } to { opacity: 1; transform: none; } }
@media (prefers-reduced-motion: reduce) {
	.zr-topbar__voce.is-attiva { animation: none; }
	.zr-header, .zr-header__in, .zr-nav__link::after, .zr-mega__tutti .zr-icona { transition: none !important; }
}

/* ============================== CATALOGO, FAQ E HERO: LARGHEZZE ============================== */
@media (min-width: 1280px) {
	.zr-azione--cerca .zr-azione__testo { display: inline; } /* la ricerca non sta piu' nella hero: qui si vede */
}
@media (min-width: 1200px) {
	body.zr-on-catalogo .shop-list-view .list-4-item { width: 33.3333% !important; } /* 3 colonne larghe come il riferimento */
}
/* sotto i 1200: il pannello diventa un cassetto da sinistra */
@media (max-width: 1199px) {
	.zr-catalogo, #main-content.zr-catalogo { padding-top: 6px; padding-bottom: 52px; }
	.zr-catalogo__conta { order: 5; width: 100%; }
	.zr-voce { min-height: 40px; }
	.zr-faq { grid-template-columns: minmax(0, 4fr) minmax(0, 6fr); gap: 48px; padding: 64px 0; }
}
@media (max-width: 1199px) {
	.zr-hero { grid-template-columns: 1fr; gap: 8px; padding-top: 20px; }
	.zr-hero__card { height: clamp(380px, 56vw, 520px); }
}
@media (max-width: 991px) {
	.zr-faq { grid-template-columns: 1fr; gap: 32px; padding: 56px 0 48px; }
	.zr-faq__intro { position: static; }
}
@media (max-width: 767px) {
	.zr-catalogo__barra { gap: 12px; padding-bottom: 14px; margin-bottom: 18px; }
	.zr-cat-testata { padding-top: 10px; }
	body.zr-on-catalogo .shop-list-view .action-buttons { display: none !important; } /* il tema mostrava mezzo bottone rosso sotto la foto */
	.zr-catalogo .zr-cat-testata__titolo { font-size: 18px; letter-spacing: .18em; margin-bottom: 16px; }
	.zr-pillola { min-height: 38px; padding: 0 14px; font-size: 12.5px; }
	.zr-hero .zr-hero__titolo { margin-bottom: 14px; font-size: 11px; }
	.zr-hero .zr-hero__claim { margin-bottom: 26px; }
	.zr-hero__azioni .zr-bottone { flex: 1 1 auto; padding-left: 16px; padding-right: 16px; }
	.zr-hero__card { grid-template-columns: 1fr 1fr; height: auto; gap: 8px; }
	.zr-hero__voce { aspect-ratio: 3 / 4; }
	.zr-hero__voce--vista { grid-column: 1 / -1; order: -1; aspect-ratio: 4 / 5; }
	.zr-hero__etichetta { left: 14px; right: 14px; bottom: 14px; gap: 8px; }
	.zr-hero__nome { font-size: 17px; }
	.zr-hero .zr-hero__freccia { width: 30px; height: 30px; padding: 6px; }
	.zr-catalogo__ordina label { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
	.zr-catalogo .zr-select select { max-width: 200px; padding-right: 38px; }
	.zr-scelte { margin-bottom: 18px; }
	.zr-faq { gap: 28px; padding: 44px 0 36px; }
	.zr-faq .zr-faq__titolo { font-size: 30px; }
	.zr-faq .zr-faq__testo { font-size: 15px; margin-bottom: 22px; }
	.zr-faq__azioni .zr-bottone { flex: 1 1 100%; }
	.zr-faq__domanda { gap: 16px; padding: 18px 0; }
	.zr-faq .zr-faq__q { font-size: 16px; }
	.zr-faq__segno { width: 30px; height: 30px; }
	.zr-faq__risposta { padding-right: 0; }
	.zr-faq .zr-faq__risposta p { font-size: 15px; }
}
@media (prefers-reduced-motion: reduce) {
	.zr-hero .zr-hero__foto, .zr-hero .zr-hero__freccia { transition: none; }
	.zr-filtri, .zr-filtri.is-aperto, .zr-faccetta__freccia, .zr-interruttore__levetta, .zr-interruttore__levetta::after { transition: none !important; }
	.zr-faq__voce[open] .zr-faq__risposta { animation: none; }
}
