/* Il blog senza Divi: misure, colori e font presi da com'era la proposta D, font locali come il negozio. */
:root {
  --itv-primario: #8a3b47;
  --itv-vinaccia: #441d23;
  --itv-oro: #c0a481;
  --itv-testo: #333;
  --itv-grigio: #d9d9d9;
  --itv-sfondo: #faf9f7;
  --itv-crema: #fff6eb;
  --itv-pietra: #f2f1ee;
  --itv-serif: "itv-Lora", Georgia, "Times New Roman", serif;
  --itv-sans: "itv-Archivo", ui-sans-serif, system-ui, sans-serif;
}

@font-face { font-family: "Lora"; font-style: normal; font-weight: 400; font-display: swap; src: url("../negozio/fonts/lora-normal-latin.woff2") format("woff2"); }
@font-face { font-family: "Lora"; font-style: normal; font-weight: 500; font-display: swap; src: url("../negozio/fonts/lora-normal-latin.woff2") format("woff2"); }
@font-face { font-family: "Lora"; font-style: normal; font-weight: 600; font-display: swap; src: url("../negozio/fonts/lora-normal-latin.woff2") format("woff2"); }
@font-face { font-family: "Lora"; font-style: normal; font-weight: 700; font-display: swap; src: url("../negozio/fonts/lora-normal-latin.woff2") format("woff2"); }
@font-face { font-family: "Archivo"; font-style: normal; font-weight: 400; font-display: swap; src: url("../negozio/fonts/archivo-normal-latin.woff2") format("woff2"); }
@font-face { font-family: "Archivo"; font-style: normal; font-weight: 500; font-display: swap; src: url("../negozio/fonts/archivo-normal-latin.woff2") format("woff2"); }
@font-face { font-family: "Archivo"; font-style: normal; font-weight: 600; font-display: swap; src: url("../negozio/fonts/archivo-normal-latin.woff2") format("woff2"); }
@font-face { font-family: "Archivo"; font-style: normal; font-weight: 700; font-display: swap; src: url("../negozio/fonts/archivo-normal-latin.woff2") format("woff2"); }

*, *::before, *::after { box-sizing: border-box; }
body { margin: 0; font: 500 18px/1.8 var(--itv-serif); color: rgba(0, 0, 0, 0.7); background: #fff; -webkit-font-smoothing: antialiased; }
html { scroll-behavior: smooth; }
.itv-contenuto [id] { scroll-margin-top: 24px; }
img { max-width: 100%; height: auto; }
a { color: var(--itv-primario); text-decoration: none; }
h1, h2, h3, h4 { font-family: var(--itv-serif); color: #000; }

.itv-contenitore { max-width: 1150px; margin: 0 auto; padding: 0 24px; }
.itv-bottone {
  display: inline-block;
  border: 0;
  border-radius: 9999px;
  background: var(--itv-primario);
  color: #fff;
  padding: 16px 40px;
  font: 400 16px/1.25 var(--itv-serif);
  letter-spacing: 0.02em;
  text-transform: uppercase;
  cursor: pointer;
}
.itv-bottone:hover { background: var(--itv-vinaccia); color: #fff; }

.itv-testata { background: var(--itv-sfondo); padding: 48px 0 93px; }
.itv-testata h1 { margin: 0; padding-bottom: 10px; font: 500 56px/1.1 var(--itv-serif); color: var(--itv-testo); }
.itv-testata h1::after { content: ""; display: block; width: 64px; height: 3px; margin-top: 24px; background: var(--itv-primario); }

.itv-ritratto { padding: 56px 0; background: var(--itv-sfondo); }
.itv-ritratto__dentro { display: flex; flex-direction: column; align-items: center; text-align: center; }
.itv-ritratto__foto { width: 160px; height: 160px; margin-bottom: 20px; border-radius: 50%; object-fit: cover; }
.itv-ritratto h1 { margin: 0; font: 500 48px/1.1 var(--itv-serif); color: var(--itv-testo); }
.itv-ritratto__conta { margin: 8px 0 0; font: 600 13px/1.2 var(--itv-sans); letter-spacing: .08em; text-transform: uppercase; color: #7a5c36; }
.itv-ritratto__breve { max-width: 680px; margin: 18px auto 0; font: 400 18px/1.6 var(--itv-serif); color: var(--itv-testo); }
.itv-ritratto__tutta { max-width: 760px; margin: 14px auto 0; }
.itv-ritratto__tutta summary { cursor: pointer; font: 600 14px var(--itv-sans); color: var(--itv-primario); }
.itv-ritratto__tutta p { margin: 14px 0 0; font: 400 15px/1.7 var(--itv-sans); color: var(--itv-testo); text-align: left; }
.itv-elenco__titolo { margin: 0 0 28px; font: 600 28px/1.2 var(--itv-serif); }
.itv-elenco { max-width: 1248px; padding-top: 81px; padding-bottom: 54px; }
.itv-griglia { display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: 32px 24px; }
.itv-pagine { margin-top: 30px; font: 500 14px var(--itv-sans); text-transform: uppercase; }
.itv-pagine .nav-links { display: flex; justify-content: space-between; }
.itv-pagine .nav-next { margin-left: auto; }
.itv-pagine h2 { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }

.itv-copertina { margin: 0; height: 386px; }
.itv-copertina img { display: block; width: 100%; height: 100%; object-fit: cover; }
.itv-articolo { max-width: 1150px; margin: 0 auto; padding: 58px 0 0; display: grid; grid-template-columns: 341px minmax(0, 1fr); column-gap: 63px; }
.itv-articolo__testa h1 { margin: 0; padding-bottom: 10px; font: 600 40px/1.2 var(--itv-serif); }
.itv-contenuto { max-width: 720px; margin: 0 auto; padding-top: 54px; color: var(--itv-vinaccia); font-size: 18px; line-height: 1.7; }
.itv-contenuto p { margin: 0 0 10px; }
.itv-contenuto h2, .itv-contenuto h3, .itv-contenuto h4 { margin: 40px 0 20px; font-size: 24px; line-height: 1; font-weight: 600; }
.itv-contenuto ul, .itv-contenuto ol { margin: 0 0 10px; padding-left: 40px; }
.itv-contenuto li { margin: 0 0 10px; line-height: 26px; }
.itv-contenuto strong { color: var(--itv-vinaccia); }

div#ez-toc-container { margin: 20px 0 18px; padding: 20px 20px 20px 50px !important; border-radius: 9px; font: 500 18px var(--itv-sans); color: var(--itv-testo); box-shadow: rgba(0, 0, 0, 0.15) 1.95px 1.95px 2.6px; }
div#ez-toc-container .ez-toc-title-container { padding-bottom: 15px !important; }

.itv-condividi { display: flex; align-items: center; justify-content: space-between; margin-top: 40px; padding: 14px 11px; background: var(--itv-pietra); border-top: 1px solid var(--itv-primario); }
.itv-condividi__categoria { font: 400 18px var(--itv-sans); text-transform: uppercase; }
.itv-condividi__bottoni { display: flex; align-items: center; gap: 10px; }
.itv-condividi__bottoni a, .itv-condividi__bottoni button { display: inline-flex; width: 30px; height: 30px; align-items: center; justify-content: center; padding: 0; border: 0; background: none; cursor: pointer; }
.itv-condividi__bottoni svg { width: 30px; height: 30px; fill: var(--itv-primario); }
.itv-condividi__avviso { font: 400 14px var(--itv-sans); }


.itv-leggi-anche { max-width: 1128px; margin: 0 auto; padding: 80px 24px 0; }
.itv-leggi-anche > h2 { margin: 0 0 43px; padding-bottom: 10px; border-bottom: 1px solid var(--itv-oro); font: 500 32px/1.2 var(--itv-serif); }

.itv-vetrina { max-width: 1080px; margin: 48px auto; padding: 32px 24px; border-top: 1px solid var(--itv-grigio); text-align: center; }
.itv-vetrina h2 { font: 500 28px var(--itv-serif); color: var(--itv-testo); margin: 0 0 24px; }
.itv-vetrina__voci { display: flex; flex-wrap: wrap; justify-content: center; gap: 12px; margin-bottom: 24px; }
.itv-vetrina__voci a { border: 1px solid var(--itv-oro); border-radius: 9999px; padding: 8px 20px; color: var(--itv-testo); font: 400 15px var(--itv-sans); }
.itv-vetrina__voci a:hover { border-color: var(--itv-primario); color: var(--itv-primario); }
.itv-vetrina .itv-bottone { padding: 8px 32px; }

.itv-ops { min-height: 900px; padding: 130px 24px 0; background: url("bottiglia-404.webp") no-repeat center bottom / min(90%, 1290px) auto; }
.itv-ops__testo { max-width: 944px; margin: 0 auto; }
.itv-ops h1 { margin: 0 0 30px; font: 500 64px/1.1 var(--itv-serif); color: var(--itv-primario); }
.itv-ops p { max-width: 480px; margin: 0 0 26px; font: 400 18px/1.8 var(--itv-sans); color: var(--itv-testo); }

.is-style-default-2 { transition: border 0.2s ease !important; }
.is-style-default-2:hover { border-color: var(--itv-primario) !important; }
.is-style-default-2 .wp-block-stackable-text p { margin-bottom: 0 !important; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.is-style-default-2 img { margin: 8px 0 0 !important; padding-bottom: 10px !important; }
.stk-container-padding { padding: 0; }
.hide-it, .hide-en, .hide-dk { display: none; }
html[lang="it-IT"] #hide-it, html[lang="en-US"] #hide-en, html[lang="da-DK"] #hide-dk { display: block !important; }

@media (max-width: 980px) {
  .itv-articolo { grid-template-columns: minmax(0, 1fr); padding-top: 0; }
  .itv-articolo__testa { padding: 33px 15px 0; }
  .itv-articolo__corpo { padding: 0 15px; }
  div#ez-toc-container { margin: 0; padding: 20px 20px 10px !important; border-radius: 0; width: 100%; }
}
@media (max-width: 767px) {
  body { font-size: 15px; }
  .itv-elenco { padding: 30px 20px 40px; }
  .itv-testata { padding: 100px 0 33px; }
  .itv-ritratto { padding: 32px 0; }
  .itv-ritratto__foto { width: 104px; height: 104px; }
  .itv-ritratto h1 { font-size: 34px; }
  .itv-ritratto__breve { font-size: 16px; }
  .itv-elenco__titolo { font-size: 24px; }
  .itv-articolo__testa h1 { font-size: 28px; }
  .itv-contenuto { padding-top: 54px; }
  .itv-leggi-anche { padding: 60px 39px 0; }
  .itv-condividi__bottoni svg { width: 25px; height: 25px; }
  .card-vini .stk-row { flex-wrap: nowrap !important; }
  .itv-ops { min-height: 730px; padding: 140px 67px 0; background-size: 90% auto; }
  .itv-ops p { font-size: 15px; }
}
.itv-firma { display: flex; align-items: center; gap: 14px; font: 400 16px/1.4 var(--itv-sans); color: var(--itv-testo); }
.itv-firma__foto { border-radius: 50%; flex: none; }
.itv-firma a { color: var(--itv-primario); }
.itv-contenuto :is(p, li) a:not([class]), .itv-firma a { text-decoration: underline; text-underline-offset: 2px; }
.itv-firma__sep { margin: 0 4px; color: var(--itv-oro); }
@media (min-width: 981px) {
  div#ez-toc-container nav, div#ez-toc-container ul.ez-toc-list { display: block !important; }
  div#ez-toc-container .ez-toc-title-toggle { display: none; }
}
.itv-pc__copertina { position: relative; margin: 0; height: 460px; overflow: hidden; background: var(--itv-vinaccia); }
.itv-pc__copertina::before { content: ""; position: absolute; inset: -40px; background: var(--sfondo) center / cover; filter: blur(28px) brightness(0.7); }
.itv-pc__copertina img { position: relative; display: block; height: 100%; width: auto; max-width: 100%; margin: 0 auto; object-fit: contain; }
.itv-articolo__testa { grid-column: 2; grid-row: 1; }
.itv-articolo__indice { grid-column: 1; grid-row: 1 / span 2; }
.itv-articolo__corpo { grid-column: 2; grid-row: 2; overflow-wrap: break-word; }
.itv-percorso { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin: 0 0 18px; font: 400 14px/1.3 var(--itv-sans); color: #6b6b6b; }
.itv-percorso a { color: var(--itv-primario); text-transform: uppercase; letter-spacing: .04em; }
.itv-percorso a:first-child { color: #6b6b6b; text-transform: none; letter-spacing: 0; }
.itv-pc .itv-firma > span { display: flex; flex-direction: column; gap: 2px; }
.itv-firma__nome { font-weight: 600; text-decoration: none !important; }
.itv-firma__quando { font-size: 14px; color: #6b6b6b; }
.itv-pc .itv-articolo__indice { position: sticky; top: 24px; align-self: start; max-height: calc(100vh - 48px); overflow-y: auto; }
.itv-pc .itv-articolo__testa h1 { margin-bottom: 20px; }
.itv-pc .itv-firma { padding-bottom: 32px; border-bottom: 1px solid var(--itv-primario); }
.itv-pc .itv-contenuto { padding-top: 40px; }
@media (max-width: 980px) {
  .itv-pc .itv-articolo__indice { position: static; max-height: none; margin-top: 20px; }
  .itv-articolo__testa, .itv-articolo__indice, .itv-articolo__corpo { grid-column: 1; grid-row: auto; }
}
@media (max-width: 767px) {
  .itv-pc__copertina { height: auto; aspect-ratio: 3 / 2; }
  .itv-pc .itv-articolo__testa { padding: 24px 20px 0; }
  .itv-pc .itv-articolo__corpo { padding: 0 20px; }
  .itv-pc .itv-firma { font-size: 14px; padding-bottom: 20px; }
  .itv-pc .itv-contenuto { padding-top: 24px; }
}
@media (max-width: 767px) {
  .itv-firma { gap: 10px; align-items: center; }
  .itv-firma__foto { width: 36px; height: 36px; }
  .itv-firma > span { flex: 1; }
}
.itv-vini { margin: 32px 0; padding: 18px 24px 8px; background: #f6f1ea; border-left: 3px solid #8a3b47; border-radius: 0 10px 10px 0; }
.itv-vini__testa { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.itv-vini .itv-vini__titolo { margin: 0 0 4px; font: 600 12px/1 Archivo, sans-serif; letter-spacing: .12em; text-transform: uppercase; color: #8a3b47; }
.itv-vini__frecce { display: flex; align-items: center; gap: 8px; font: 400 13px/1 Archivo, sans-serif; color: #4d4d4d; }
.itv-vini__freccia { display: flex; align-items: center; justify-content: center; width: 32px; height: 32px; padding: 0; border: 1px solid #c0a481; border-radius: 9999px; background: #fff; color: #8a3b47; font: 400 22px/1 Archivo, sans-serif; cursor: pointer; }
.itv-vini__freccia:hover { background: #8a3b47; border-color: #8a3b47; color: #fff; }
.itv-vini__freccia:disabled { opacity: .35; cursor: default; background: #fff; color: #8a3b47; }
.itv-vini__binario { display: flex; overflow-x: auto; scroll-snap-type: x mandatory; scroll-behavior: smooth; scrollbar-width: none; overscroll-behavior-x: contain; }
.itv-vini__binario::-webkit-scrollbar { display: none; }
.itv-vini__binario > .itv-card { flex: 0 0 100%; scroll-snap-align: start; }
.itv-vini .itv-card { position: relative; display: grid; grid-template-columns: 96px minmax(0, 1fr) auto; align-items: center; column-gap: 20px; padding: 14px 0; }
.itv-vini .itv-card__foto { display: block; position: relative; z-index: 2; }
.itv-vini .itv-card__foto img { display: block; width: 100%; height: 120px; margin: 0; object-fit: contain; }
.itv-vini .itv-card__info { display: flex; flex-direction: column; align-items: flex-start; justify-content: center; gap: 3px; }
.itv-vini .itv-card__name { margin: 0; font: 600 18px/1.25 Lora, ui-serif, Georgia, serif; color: #333; overflow: hidden; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; }
.itv-vini .itv-card__name a { color: inherit; text-decoration: none; }
.itv-vini .itv-card__name a:hover { color: #8a3b47; }
.itv-vini .itv-card__name a::after { content: ""; position: absolute; inset: 0; z-index: 1; }
.itv-vini .itv-card__info p:where(:not(.itv-card__name)) { margin: 0; font: 400 14px/1.25 Archivo, ui-sans-serif, system-ui, sans-serif; }
.itv-vini .itv-card__info .itv-card__cantina { color: #8a3b47; text-transform: uppercase; }
.itv-vini .itv-card__info .itv-card__regione { color: #4d4d4d; }
.itv-vini .itv-card__info .itv-card__annata { color: #8a3b47; font-weight: 500; font-size: 18px; }
.itv-vini .itv-card__row { display: flex; flex-direction: column; align-items: flex-end; gap: 8px; }
.itv-vini .itv-card__prezzi { display: flex; flex-direction: column; align-items: flex-end; gap: 4px; }
.itv-vini .itv-card__pieno { display: flex; align-items: center; gap: 4px; font: 400 14px/1.25 Archivo, sans-serif; color: #6b6b6b; }
.itv-vini .itv-card__sale { padding: 4px 6px; border-radius: 9999px; background: #f0dbde; color: #8a3b47; font: 600 12px/1 Archivo, sans-serif; }
.itv-vini .itv-card__price { font: 700 22px/1.25 Archivo, sans-serif; color: #8a3b47; }
.itv-vini .itv-cur { font-size: 12px; }
.itv-vini .itv-card__vai { position: relative; z-index: 2; padding: 11px 18px; border-radius: 6px; background: #8a3b47; color: #fff; font: 600 14px/1 Archivo, sans-serif; white-space: nowrap; text-decoration: none; transition: background-color .15s; }
.itv-vini .itv-card__vai:hover { background: #6e2e38; color: #fff; }
.itv-vini .itv-card__oos { position: absolute; top: 14px; left: 0; z-index: 10; display: flex; padding: 5px; border: 1px solid #eadfd3; border-radius: 10px; background: #fbf7f1; }
@media (max-width: 640px) {
  .itv-vini { padding: 16px 16px 4px; }
  .itv-vini .itv-card { grid-template-columns: 80px minmax(0, 1fr); column-gap: 14px; row-gap: 8px; padding: 12px 0; }
  .itv-vini .itv-card__foto { grid-row: span 2; }
  .itv-vini .itv-card__foto img { height: 110px; }
  .itv-vini .itv-card__row { grid-column: 2; flex-direction: row; align-items: center; flex-wrap: wrap; justify-content: space-between; }
  .itv-vini .itv-card__vai { padding: 10px 14px; font-size: 13px; }
}
.itv-vuoto { margin: 0; font: 400 20px/1.6 var(--itv-serif); color: var(--itv-testo); }
.itv-ponte { padding: 8px 0 96px; }
.itv-ponte .itv-contenitore, .itv-archivio-scarno .itv-elenco { max-width: 1150px; }
.itv-ponte a:focus-visible { outline: 2px solid var(--itv-primario); outline-offset: 3px; }
.itv-ponte__titolo { margin: 0 0 32px; font: 500 32px/1.2 var(--itv-serif); color: var(--itv-testo); }
.itv-ponte__titolo::after { content: ""; display: block; width: 48px; height: 3px; margin-top: 16px; background: var(--itv-oro); }
.itv-ponte__temi { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 20px; margin: 0 0 80px; padding: 0; list-style: none; }
.itv-ponte-tema { display: flex; flex-direction: column; align-items: flex-start; gap: 8px; height: 100%; padding: 32px 28px 28px; border: 1px solid transparent; border-radius: 16px; background: var(--itv-crema); transition: border-color 0.2s, transform 0.2s, box-shadow 0.2s; }
.itv-ponte-tema:hover { border-color: var(--itv-primario); transform: translateY(-3px); box-shadow: 0 10px 24px rgba(68, 29, 35, 0.1); }
.itv-ponte-tema__icona { display: flex; align-items: center; justify-content: center; width: 96px; height: 96px; margin-bottom: 12px; border-radius: 50%; background: #fff; }
.itv-ponte-tema__icona img { width: 64px; height: 64px; }
.itv-ponte-tema__nome { font: 600 24px/1.25 var(--itv-serif); color: var(--itv-testo); }
.itv-ponte-tema__testo { font: 400 15px/1.5 var(--itv-sans); color: #555; }
.itv-ponte-tema__vai { margin-top: auto; padding-top: 16px; font: 600 13px/1 var(--itv-sans); letter-spacing: 0.1em; text-transform: uppercase; color: var(--itv-primario); }
.itv-ponte__articoli { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }
.itv-ponte-voce { display: grid; grid-template-columns: 120px minmax(0, 1fr); gap: 18px; align-items: center; padding: 14px; border: 1px solid var(--itv-grigio); border-radius: 12px; transition: border-color 0.2s; }
.itv-ponte-voce:hover { border-color: var(--itv-primario); }
.itv-ponte-voce__foto { display: block; width: 120px; height: 120px; overflow: hidden; border-radius: 8px; background: var(--itv-crema); }
.itv-ponte-voce__foto img { display: block; width: 100%; height: 100%; object-fit: cover; }
.itv-ponte-etichetta { margin: 0 0 6px; font: 600 12px/1.2 var(--itv-sans); letter-spacing: 0.1em; text-transform: uppercase; color: var(--itv-primario); }
.itv-ponte-voce__titolo { margin: 0; font: 600 17px/1.35 var(--itv-serif); display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
.itv-ponte-voce__titolo a { color: var(--itv-testo); }
.itv-ponte-voce__titolo a:hover { color: var(--itv-primario); }
.itv-ponte-meta { margin: 8px 0 0; font: 400 14px/1.4 var(--itv-sans); color: #666; }
.itv-ponte__shop { margin: 56px 0 0; text-align: center; }
@media (max-width: 980px) {
  .itv-ponte__articoli { grid-template-columns: minmax(0, 1fr); max-width: 640px; }
}
@media (max-width: 767px) {
  .itv-ponte { padding-bottom: 64px; }
  .itv-ponte .itv-contenitore { padding: 0 20px; }
  .itv-ponte__titolo { margin-bottom: 24px; font-size: 26px; }
  .itv-ponte__temi { grid-template-columns: minmax(0, 1fr); gap: 12px; margin-bottom: 56px; }
  .itv-ponte-tema { display: grid; grid-template-columns: 64px minmax(0, 1fr); column-gap: 18px; row-gap: 4px; align-items: center; padding: 20px; }
  .itv-ponte-tema__icona { grid-row: span 3; width: 64px; height: 64px; margin: 0; }
  .itv-ponte-tema__icona img { width: 44px; height: 44px; }
  .itv-ponte-tema__nome { font-size: 20px; }
  .itv-ponte-tema__testo { font-size: 14px; }
  .itv-ponte-tema__vai { padding-top: 4px; font-size: 12px; }
  .itv-ponte-voce { grid-template-columns: 96px minmax(0, 1fr); gap: 14px; padding: 12px; }
  .itv-ponte-voce__foto { width: 96px; height: 96px; }
}

.itv-cerca-testata:has(+ .itv-cerca-shop, + .itv-cerca-vuoto) { padding-bottom: 40px; }

.itv-cerca-shop__titolo { margin: 0; font: 500 32px/1.2 var(--itv-serif); color: var(--itv-testo); }
.itv-cerca-shop__testa { display: flex; align-items: baseline; justify-content: space-between; gap: 16px; margin-bottom: 24px; }
.itv-cerca-shop__tutti { font: 600 15px/1.3 var(--itv-sans); color: var(--itv-primario); text-decoration: none; white-space: nowrap; }
.itv-cerca-shop__tutti:hover { color: var(--itv-vinaccia); text-decoration: underline; }
.itv-cerca-articoli .itv-cerca-shop__titolo { margin-bottom: 24px; }

.itv-cerca-shop--fila { padding: 48px 0 56px; background: #f6f1ea; }
.itv-cerca-shop--fila .itv-contenitore { max-width: 1248px; }
.itv-cerca-shop--fila + .itv-elenco { padding-top: 56px; }
.itv-cerca-shop__fila { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; }
.itv-cerca-shop__fila .itv-card { position: relative; display: flex; flex-direction: column; padding: 16px; border: 1px solid #eadfd3; border-radius: 10px; background: #fff; transition: border-color .2s, box-shadow .2s; }
.itv-cerca-shop__fila .itv-card:hover { border-color: var(--itv-primario); box-shadow: 0 6px 18px rgba(68, 29, 35, .08); }
.itv-cerca-shop__fila .itv-card__foto { display: block; position: relative; z-index: 2; margin-bottom: 14px; }
.itv-cerca-shop__fila .itv-card__foto img { display: block; width: 100%; height: 190px; object-fit: contain; }
.itv-cerca-shop__fila .itv-card__info { display: flex; flex: 1; flex-direction: column; gap: 4px; }
.itv-cerca-shop__fila .itv-card__info p { margin: 0; font: 400 14px/1.3 var(--itv-sans); color: #4d4d4d; }
.itv-cerca-shop__fila .itv-card__info .itv-card__name { font: 600 17px/1.3 var(--itv-serif); color: var(--itv-testo); overflow: hidden; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; }
.itv-cerca-shop__fila .itv-card__name a { color: inherit; text-decoration: none; }
.itv-cerca-shop__fila .itv-card__name a::after { content: ""; position: absolute; inset: 0; z-index: 1; }
.itv-cerca-shop__fila .itv-card__info .itv-card__cantina { color: var(--itv-primario); text-transform: uppercase; letter-spacing: .03em; font-size: 13px; }
.itv-cerca-shop__fila .itv-card__info .itv-card__annata { color: var(--itv-primario); font-weight: 500; }
.itv-cerca-shop__fila .itv-card__row { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 10px; margin-top: 16px; padding-top: 14px; border-top: 1px solid #f0e8de; }
.itv-cerca-shop__fila .itv-card__prezzi { display: flex; flex-direction: column; gap: 2px; }
.itv-cerca-shop__fila .itv-card__pieno { display: flex; align-items: center; gap: 4px; font: 400 13px/1.2 var(--itv-sans); color: #6b6b6b; }
.itv-cerca-shop__fila .itv-card__sale { padding: 3px 6px; border-radius: 9999px; background: #f0dbde; color: var(--itv-primario); font: 600 11px/1 var(--itv-sans); }
.itv-cerca-shop__fila .itv-card__price { font: 700 20px/1.2 var(--itv-sans); color: var(--itv-primario); white-space: nowrap; }
.itv-cerca-shop__fila .itv-cur { font-size: 12px; }
.itv-cerca-shop__fila .itv-card__vai { position: relative; z-index: 2; margin-left: auto; padding: 10px 14px; border-radius: 6px; background: var(--itv-primario); color: #fff; font: 600 13px/1 var(--itv-sans); white-space: nowrap; text-decoration: none; }
.itv-cerca-shop__fila .itv-card__vai:hover { background: var(--itv-vinaccia); }
.itv-cerca-shop__fila .itv-card__oos { position: absolute; top: 12px; left: 12px; z-index: 3; display: flex; padding: 5px; border: 1px solid #eadfd3; border-radius: 10px; background: #fbf7f1; }

.itv-cerca-vuoto { padding: 64px 0 8px; }
.itv-cerca-vuoto .itv-contenitore { display: flex; flex-direction: column; align-items: flex-start; gap: 24px; }
.itv-cerca-vuoto__frase { max-width: 760px; margin: 0; font: 400 24px/1.45 var(--itv-serif); color: var(--itv-testo); }
.itv-cerca-vuoto:has(+ .itv-cerca-shop--fila) { padding-bottom: 48px; }
.itv-cerca-vuoto:has(+ .itv-cerca-shop) .itv-contenitore { max-width: 1248px; }
.itv-cerca-vuoto:not(:has(+ section)) { padding-bottom: 88px; }

@media (max-width: 980px) {
  .itv-cerca-shop__fila { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 767px) {
  .itv-cerca-shop__titolo { font-size: 26px; }
  .itv-cerca-shop__testa { flex-direction: column; gap: 6px; margin-bottom: 18px; }
  .itv-cerca-shop--fila { padding: 32px 0 36px; }
  .itv-cerca-shop__fila { display: flex; gap: 12px; margin: 0 -24px; padding: 0 24px 6px; overflow-x: auto; scroll-snap-type: x mandatory; scroll-padding: 0 24px; scrollbar-width: none; }
  .itv-cerca-shop__fila::-webkit-scrollbar { display: none; }
  .itv-cerca-shop__fila .itv-card { flex: 0 0 72%; scroll-snap-align: start; }
  .itv-cerca-shop__fila .itv-card__foto img { height: 160px; }
  .itv-cerca-vuoto { padding-top: 36px; }
  .itv-cerca-vuoto__frase { font-size: 20px; }
}
.itv-fascia-fine { margin-top: 56px; padding: 48px 24px; background: #f6f1ea; }
.itv-fascia-fine__dentro { max-width: 1150px; margin: 0 auto; }
.itv-fascia-fine__dentro:first-child { display: grid; grid-template-columns: 340px minmax(0, 1fr); gap: 48px; align-items: start; }
.itv-autore { display: flex; flex-direction: column; gap: 16px; }
.itv-autore__foto { flex: none; width: 120px; height: 120px; border-radius: 50%; object-fit: cover; }
.itv-autore__occhiello { margin: 0 0 2px; font: 600 12px/1.2 var(--itv-sans); letter-spacing: .08em; text-transform: uppercase; color: #7a5c36; }
.itv-autore__nome { margin: 0 0 8px; font: 600 24px/1.2 var(--itv-serif); }
.itv-autore__nome a { color: var(--itv-testo); }
.itv-autore__bio { margin: 0 0 10px; font: 400 15px/1.55 var(--itv-sans); color: #4d4d4d; }
.itv-autore__tutti { font: 600 14px var(--itv-sans); color: var(--itv-primario); }
.itv-vini-fine__titolo { margin: 0 0 16px; font: 600 26px/1.2 var(--itv-serif); }
.itv-vini-fine .itv-bottiglie { grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); }
.itv-vini-fine .itv-card__foto img { height: 150px; }
.itv-domanda { margin-top: 32px; }
.itv-domanda__lista { list-style: none; padding: 0; }
.itv-domanda__apri { border-top: 1px solid #e6ddd2; border-bottom: 1px solid #e6ddd2; }
.itv-domanda__apri summary { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 18px 4px; cursor: pointer; list-style: none; font: 600 18px var(--itv-serif); color: var(--itv-primario); }
.itv-domanda__apri summary::-webkit-details-marker { display: none; }
.itv-domanda__apri summary::after { content: "+"; font: 400 26px/1 var(--itv-sans); }
.itv-domanda__apri[open] summary::after { content: "–"; }
.itv-domanda .comment-respond { padding: 0 0 24px; }
.itv-domanda .comment-reply-title:empty { display: none; }
.itv-domanda textarea, .itv-domanda input[type="text"], .itv-domanda input[type="email"], .itv-domanda input[type="url"] { width: 100%; box-sizing: border-box; padding: 12px; border: 1px solid #e6ddd2; border-radius: 6px; background: #fff; font: 400 15px var(--itv-sans); }
.itv-domanda textarea { height: 120px; }
.itv-domanda label { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
.itv-domanda .comment-form-cookies-consent label { position: static; width: auto; height: auto; clip: auto; font: 400 14px var(--itv-sans); }
.itv-domanda .form-submit { text-align: right; }
@media (max-width: 980px) {
  .itv-fascia-fine__dentro:first-child { grid-template-columns: minmax(0, 1fr); gap: 32px; }
  .itv-vini-fine .itv-bottiglie { display: flex; }
}
@media (max-width: 767px) {
  .itv-fascia-fine { padding: 32px 20px; }
  .itv-autore { flex-direction: row; }
  .itv-autore__foto { width: 80px; height: 80px; }
  .itv-pc .itv-firma__foto { width: 44px; height: 44px; }
  .itv-vini-fine .itv-bottiglie { margin: 0 -20px; padding: 0 20px 4px; scroll-padding: 0 20px; }
}
