/* Scudo Privacy: banner del sito. Il colore dei pulsanti arriva da --scudo-colore (impostazione del plugin). */
:root { --scudo-colore: #5d3dc2; }

.scudo-banner, .scudo-modale, .scudo-linguetta, .scudo-fermo { box-sizing: border-box; font: 14px/1.5 -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif; color: #1f1b2e; }
.scudo-banner *, .scudo-modale *, .scudo-fermo * { box-sizing: border-box; }

.scudo-banner {
	position: fixed; z-index: 999990; left: 16px; bottom: 16px; width: calc(100% - 32px); max-width: 420px;
	background: #fff; border: 1px solid #e3e3e8; border-radius: 12px; padding: 18px 18px 16px;
	box-shadow: 0 8px 32px rgba(20, 16, 40, .28); display: grid; gap: 12px;
	max-height: calc(100vh - 32px); max-height: calc(100dvh - 32px); overflow-y: auto; overscroll-behavior: contain; /* schermo basso: il banner scorre, «Nega» resta raggiungibile */
}
.scudo-logo { display: block; height: 34px; width: auto; max-width: 70%; justify-self: start; }
.scudo-banner img.scudo-logo, .scudo-modale img.scudo-logo { width: auto !important; max-width: 70% !important; object-fit: contain; }
.scudo-titolo { margin: 0 !important; padding: 0 !important; font-size: 16px !important; line-height: 1.3 !important; font-weight: 700 !important; color: #1f1b2e !important; text-wrap: balance; text-transform: none !important; letter-spacing: normal !important; } /* certi temi scrivono i titoli in maiuscolo (Libri per il Successo) */
.scudo-testo { margin: 0 !important; font-size: 14px !important; line-height: 1.5 !important; color: #1f1b2e !important; text-wrap: pretty; }
.scudo-testo a { color: #48337b !important; text-decoration: underline !important; }

.scudo-btns { display: grid; gap: 8px; grid-template-columns: repeat(3, minmax(0, 1fr)); }
.scudo-btn {
	min-height: 42px; border-radius: 6px !important; border: 1px solid var(--scudo-colore) !important; padding: 0 8px !important; margin: 0 !important;
	font-family: inherit !important; font-size: 14px; font-weight: 600; line-height: 1.2; cursor: pointer; white-space: nowrap; text-transform: none !important; letter-spacing: 0 !important; box-shadow: none !important;
}
.scudo-btn-p { background: var(--scudo-colore) !important; color: #fff !important; }
.scudo-btn-s { background: #fff !important; color: var(--scudo-colore) !important; }
.scudo-btn:focus-visible, .scudo-linguetta:focus-visible, .scudo-tog input:focus-visible + i, .scudo-cat summary:focus-visible { outline: 2px solid var(--scudo-colore); outline-offset: 2px; }

.scudo-velo { position: fixed; inset: 0; z-index: 999995; background: rgba(20, 16, 40, .55); display: flex; align-items: flex-end; justify-content: center; }
.scudo-modale {
	background: #fff; width: 100%; max-width: 560px; max-height: 92vh; overflow: auto; border-radius: 14px 14px 0 0;
	padding: 20px 18px calc(18px + env(safe-area-inset-bottom, 0px)); display: grid; gap: 14px;
}
.scudo-modale .scudo-titolo { font-size: 18px !important; }
.scudo-cat { border: 1px solid #e3e3e8; border-radius: 10px; padding: 12px 14px; display: grid; gap: 6px; }
.scudo-cat-t { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 12px; align-items: center; }
.scudo-cat-n { font-weight: 600; }
.scudo-cat small { font-size: 13px; color: #433d58; line-height: 1.5; }
.scudo-cat details summary { cursor: pointer; color: #48337b; font-size: 13px; font-weight: 600; min-height: 40px; display: flex; align-items: center; }
.scudo-cat details p { margin: 0; font-size: 13px; color: #433d58; }
.scudo-sempre { font-size: 12px; font-weight: 600; color: #48337b; background: #f3f0fc; border-radius: 20px; padding: 2px 10px; white-space: nowrap; }

.scudo-tog { position: relative; width: 46px; height: 26px; flex: none; display: block; margin: 0; }
.scudo-tog input { position: absolute; inset: 0; width: 100%; height: 100%; margin: 0; opacity: 0; cursor: pointer; z-index: 2; }
.scudo-tog i { position: absolute; inset: 0; border-radius: 26px; background: #8c8f94; transition: background .15s; }
.scudo-tog i::after { content: ""; position: absolute; top: 3px; left: 3px; width: 20px; height: 20px; border-radius: 50%; background: #fff; transition: transform .15s; }
.scudo-tog input:checked + i { background: var(--scudo-colore); }
.scudo-tog input:checked + i::after { transform: translateX(20px); }

.scudo-linguetta {
	position: fixed; z-index: 999980; left: 16px; bottom: 16px; background: #fff !important; color: #48337b !important; border: 1px solid #cfcfd6 !important; border-radius: 20px !important;
	min-height: 40px; padding: 0 14px !important; font-weight: 600 !important; cursor: pointer; box-shadow: 0 2px 10px rgba(20, 16, 40, .18) !important; white-space: nowrap; text-transform: none !important;
}

.scudo-fermo { border: 1px dashed #b7b3c8; border-radius: 10px; background: #f8f7fc; padding: 18px; display: grid; gap: 10px; justify-items: start; align-content: center; min-height: 160px; max-width: 100%; }
.scudo-fermo p { margin: 0; font-size: 14px; }
.scudo-fermo-btn { min-height: 40px; font: inherit; font-size: 14px !important; border-radius: 6px !important; border: 1px solid var(--scudo-colore) !important; background: var(--scudo-colore) !important; color: #fff !important; font-weight: 600 !important; padding: 0 16px !important; cursor: pointer; text-transform: none !important; }

@media (min-width: 640px) {
	.scudo-velo { align-items: center; }
	.scudo-modale { border-radius: 14px; }
}
@media (max-width: 520px) {
	.scudo-btns { grid-template-columns: minmax(0, 1fr); }
	.scudo-banner { left: 8px; right: 8px; bottom: 8px; width: auto; max-width: none; }
	.scudo-linguetta { left: 8px; bottom: 8px; }
}
@media (prefers-reduced-motion: reduce) {
	.scudo-tog i, .scudo-tog i::after { transition: none; }
}

/* ============================================================
   I TESTI LEGALI (cookie policy, informativa, parte sui cookie, termini). Dalla 1.7.4 (Marco: «formattati meglio, con
   tabelle fatte bene sia su mobile che su desktop e con i link che vengano percepiti che sono link»): carattere, grandezza e
   colore del testo restano quelli del tema; qui la forma. Cookie policy e informativa: in cima l'apertura e «In breve»,
   l'indice (al computer a sinistra, fermo; al telefono un riquadro), le sezioni numerate, le tabelle che sotto i 720 px della
   colonna (900 px quelle larghe) diventano una scheda per riga, con l'etichetta sopra ogni valore. Le regole con !important
   difendono le tabelle dagli stili dei temi (Rey, Elementor), che danno bordi, sfondi e margini a tutte le tabelle.
   ============================================================ */
.scudo-testo-legale {
	--scudo-accento: var(--scudo-colore, #2251d1);
	--scudo-filo: color-mix(in srgb, currentColor 16%, transparent);
	--scudo-tenue: color-mix(in srgb, currentColor 4.5%, transparent);
	--scudo-sopra: 110px; /* la testata ferma del tema: i titoli e l'indice si fermano sotto */
	display: grid; gap: 12px; max-width: 100%; overflow-wrap: break-word; line-height: 1.65;
}
.scudo-testo-legale > *, .scudo-scheda > *, .scudo-sezione > * { margin: 0; }
.scudo-testo-legale, .scudo-testo-legale *, .scudo-testo-legale *::before, .scudo-testo-legale *::after { box-sizing: border-box; }
.scudo-testo-legale a.scudo-apri:not(.scudo-pulsante) { white-space: nowrap; } /* «Gestisci il tuo consenso ai cookie» dentro la frase: tutto su una riga */
.scudo-testo-legale h2 { font-size: min(1.3em, 6vw); line-height: 1.3; text-wrap: balance; margin-top: .6em; }
.scudo-testo-legale :is(h2, h3, h4) { text-transform: none !important; letter-spacing: normal !important; } /* un tema che scrive i titoli in maiuscolo: qui si leggono normali */
.scudo-testo-legale > h2:first-child { margin-top: 0; }
.scudo-testo-legale h3 { font-size: 1.12em; line-height: 1.35; font-weight: 700; text-wrap: balance; margin-top: .3em; }
.scudo-testo-legale h4 { font-size: 1.05em; line-height: 1.4; font-weight: 700; text-wrap: balance; }
.scudo-testo-legale p { text-wrap: pretty; }
.scudo-testo-legale ul, .scudo-testo-legale ol { padding-left: 1.3em; display: grid; gap: 6px; }
.scudo-testo-legale ul { list-style: disc outside !important; } /* certi temi tolgono i pallini a tutti gli elenchi */
.scudo-testo-legale li { margin: 0; text-wrap: pretty; }
.scudo-testo-legale li::marker { color: var(--scudo-accento); }
.scudo-testo-legale li.corta, .scudo-testo-legale p.corta { text-wrap: balance; }
.scudo-scheda { display: grid; gap: 4px; }
.scudo-voce.corta { text-wrap: balance; }

/* i collegamenti si riconoscono: sottolineati nel colore del sito (quello del banner), in grassetto; quelli verso altri siti
   con la freccia. Il colore del testo resta quello del tema: si legge su qualunque sfondo. */
.scudo-testo-legale a:not(.scudo-pulsante) { color: inherit !important; font-weight: 600; text-decoration: underline !important; text-decoration-color: var(--scudo-accento) !important; text-decoration-thickness: 2px !important; text-underline-offset: .22em; text-decoration-skip-ink: auto; overflow-wrap: anywhere; transition: color .15s; }
.scudo-testo-legale a:not(.scudo-pulsante)[target="_blank"]::after { content: "\2197"; display: inline-block; margin-left: .2em; font-weight: 400; text-decoration: none; }
@media (hover: hover) { .scudo-testo-legale a:not(.scudo-pulsante):hover { color: var(--scudo-accento) !important; } }
.scudo-testo-legale a:focus-visible { outline: 2px solid var(--scudo-accento); outline-offset: 2px; border-radius: 2px; }

/* il documento: la testa, l'indice e le sezioni */
.scudo-documento { display: grid; gap: 28px 48px; grid-template-columns: minmax(0, 1fr); grid-template-areas: "testa" "indice" "corpo"; }
.scudo-testa { grid-area: testa; display: grid; gap: 16px; min-width: 0; }
.scudo-indice { grid-area: indice; min-width: 0; }
.scudo-corpo { grid-area: corpo; min-width: 0; display: grid; gap: 40px; container: scudo-corpo / inline-size; }
.scudo-testa > *, .scudo-corpo p, .scudo-corpo ul { max-width: 48em; } /* righe leggibili: le tabelle prendono tutta la larghezza */
.scudo-apertura { font-size: 1.05em; }
.scudo-testo-legale:has(.scudo-documento) { container: scudo-testo / inline-size; }
@container scudo-testo (min-width: 1000px) {
	.scudo-documento { grid-template-columns: 240px minmax(0, 1fr); grid-template-areas: "indice testa" "indice corpo"; align-items: start; } /* 240: a 220 Firefox lasciava «siti» da solo (non bilancia le righe coi caratteri di Libri) */
	.scudo-indice { position: sticky; top: var(--scudo-sopra); max-height: calc(100vh - var(--scudo-sopra) - 24px); overflow: auto; }
}
.scudo-sezione { display: grid; gap: 14px; scroll-margin-top: var(--scudo-sopra); }
.scudo-sezione > h2 { margin: 0; padding-top: 24px; border-top: 1px solid var(--scudo-filo); font-size: min(1.4em, 6vw); }
.scudo-sezione > h2 .scudo-n { color: var(--scudo-accento); }
.scudo-sezione > h3 { margin-top: 10px; }

/* «In breve» */
.scudo-in-breve { display: grid; gap: 10px; padding: 18px 20px; border-radius: 14px; background: var(--scudo-tenue); border-left: 4px solid var(--scudo-accento); }
.scudo-in-breve > * { margin: 0 !important; }
.scudo-in-breve-tit { font-weight: 700; font-size: 1.05em; }
.scudo-in-breve ul { gap: 4px; }
.scudo-in-breve li a:not(.scudo-pulsante) { white-space: nowrap; } /* «Cookie Policy» intero: in Firefox «Policy.» restava da solo */
.scudo-in-breve-az { padding-top: 4px; }
.scudo-testo-legale .scudo-pulsante { display: inline-flex; align-items: center; justify-content: center; min-height: 44px; padding: 10px 18px; border-radius: 8px; background: var(--scudo-accento); color: #fff !important; font-weight: 700; line-height: 1.25; text-align: center; text-decoration: none !important; }
@media (hover: hover) { .scudo-testo-legale .scudo-pulsante:hover { filter: brightness(1.08); } }
@container scudo-testo (max-width: 480px) { .scudo-testo-legale .scudo-pulsante { display: flex; width: 100%; padding-inline: 12px; } } /* al telefono largo quanto il riquadro: su una riga */
/* le righe corte si bilanciano (niente parola sola in fondo): titoli, nomi, celle, voci dell'indice e di «In breve» */
.scudo-indice a, .scudo-nome, .scudo-chi, .scudo-tabella th, .scudo-tabella td, .scudo-in-breve li, .scudo-sezione > h2, .scudo-sezione > h3 { text-wrap: balance; }
.scudo-descr { text-wrap: pretty; }

/* l'indice */
.scudo-indice { padding: 16px 18px; border: 1px solid var(--scudo-filo); border-radius: 14px; }
.scudo-indice-tit { margin: 0 0 8px !important; font-weight: 700; font-size: .95em; }
.scudo-indice ol { display: block; margin: 0; padding-left: 0; font-size: .95em; line-height: 1.45; list-style: none !important; }
.scudo-indice li { break-inside: avoid; display: grid; grid-template-columns: 1.7em minmax(0, 1fr); align-items: baseline; }
.scudo-indice li > .scudo-n { color: var(--scudo-accento); font-weight: 700; font-variant-numeric: tabular-nums; }
@container scudo-testo (min-width: 600px) and (max-width: 999px) { .scudo-indice ol { columns: 2; column-gap: 40px; } } /* la pagina media: l'indice su due colonne */
.scudo-indice li a:not(.scudo-pulsante) { justify-self: start; padding: 5px 0; font-weight: 500; text-decoration-thickness: 1px !important; text-decoration-color: var(--scudo-filo) !important; }
@media (hover: hover) { .scudo-indice li a:not(.scudo-pulsante):hover { text-decoration-color: var(--scudo-accento) !important; } }

/* le etichette dei gruppi */
.scudo-stato { margin: 0; }
.scudo-etichetta { display: inline-flex; align-items: center; gap: 6px; padding: 3px 12px; border-radius: 999px; font-size: .85em; font-weight: 700; line-height: 1.4; }
.scudo-etichetta::before { content: ""; width: 7px; height: 7px; border-radius: 50%; background: currentColor; }
.scudo-etichetta.sempre { background: #e5f5ec; color: #0b6338; }
.scudo-etichetta.consenso { background: #fff1dc; color: #7a4100; }

/* i nomi dei cookie */
.scudo-nomi { display: inline-flex; flex-wrap: wrap; gap: 4px 6px; vertical-align: top; max-width: 100%; }
.scudo-testo-legale .scudo-nomi code { font-size: .85em; color: #1f1b2e !important; background: #f1f0f5 !important; border-radius: 4px; padding: 1px 6px; white-space: nowrap; }

/* le tabelle */
.scudo-tabella-box { max-width: 100%; }
.scudo-testo-legale table.scudo-tabella { width: 100% !important; max-width: 100% !important; margin: 0 !important; border: 1px solid var(--scudo-filo) !important; border-collapse: separate !important; border-spacing: 0 !important; border-radius: 14px; overflow: hidden; table-layout: auto; background: transparent !important; font-size: .94em; line-height: 1.55; }
.scudo-testo-legale .scudo-tabella th, .scudo-testo-legale .scudo-tabella td { padding: 14px 16px !important; margin: 0 !important; border: 0 !important; border-top: 1px solid var(--scudo-filo) !important; background: transparent !important; color: inherit !important; text-align: left !important; vertical-align: top !important; font-size: inherit !important; line-height: inherit !important; }
.scudo-testo-legale .scudo-tabella thead th { border-top: 0 !important; background: var(--scudo-tenue) !important; font-size: max(12px, .82em) !important; font-weight: 700 !important; letter-spacing: .01em; white-space: nowrap; } /* mai sotto i 12, anche su un sito col testo piccolo */
.scudo-testo-legale .scudo-tabella tbody th { font-weight: 400 !important; min-width: 11em; width: 24%; }
/* le colonne di scopi, cookie e fornitori hanno la loro larghezza: lasciate al browser, Safari dà quasi tutto ai nomi dei
   cookie e le frasi brevi («Quanto durano», «Conferimento») restano di otto lettere per riga */
.scudo-testo-legale .scudo-tabella.scopi tr > :nth-child(1) { width: 36%; } /* lo scopo ha titolo e descrizione */
.scudo-testo-legale .scudo-tabella.scopi tr > :nth-child(2) { width: 34%; }
.scudo-testo-legale .scudo-tabella.scopi tr > :nth-child(3) { width: 30%; }
.scudo-testo-legale .scudo-tabella.cookie tr > :nth-child(1) { width: 19%; }
.scudo-testo-legale .scudo-tabella.cookie tr > :nth-child(2) { width: 22%; }
.scudo-testo-legale .scudo-tabella.cookie tr > :nth-child(3) { width: 23%; }
.scudo-testo-legale .scudo-tabella.cookie tr > :nth-child(4) { width: 16%; }
.scudo-testo-legale .scudo-tabella.cookie tr > :nth-child(5) { width: 20%; }
.scudo-testo-legale .scudo-tabella.fornitori tr > :nth-child(1) { width: 22%; }
.scudo-testo-legale .scudo-tabella.fornitori tr > :nth-child(2) { width: 24%; }
.scudo-testo-legale .scudo-tabella.fornitori tr > :nth-child(3) { width: 28%; }
.scudo-testo-legale .scudo-tabella.fornitori tr > :nth-child(4) { width: 26%; }
.scudo-testo-legale .scudo-tabella tbody tr:nth-child(even) > * { background: color-mix(in srgb, currentColor 2%, transparent) !important; }
.scudo-nome { display: block; font-weight: 700; }
.scudo-chi, .scudo-descr { display: block; margin-top: 2px; font-size: .94em; }
.scudo-link-fornitore { display: inline-block; margin-top: 6px; font-size: .94em; white-space: nowrap; }

/* ogni riga diventa una scheda (il titolo, poi ogni valore con la sua etichetta sopra) quando la colonna non basta alla tabella:
   sotto i 720 px tutte; prima quelle con più colonne di frasi, così nessuna colonna resta di dieci lettere: i fornitori
   (quattro colonne) sotto i 960, i cookie (cinque) sotto i 1060; le tabelle larghe (sei) sempre. Misurato sul sito vero di
   Top Color (17/10/26): colonna di 738 px a 768, di 936 nella privacy policy; a 738 la tabella dei cookie usciva di lato. */
@container scudo-corpo (max-width: 720px) {
	.scudo-testo-legale table.scudo-tabella, .scudo-testo-legale .scudo-tabella tbody, .scudo-testo-legale .scudo-tabella tr, .scudo-testo-legale .scudo-tabella th, .scudo-testo-legale .scudo-tabella td { display: block !important; width: auto !important; min-width: 0 !important; }
	.scudo-testo-legale table.scudo-tabella { border: 0 !important; border-radius: 0; overflow: visible; }
	.scudo-testo-legale .scudo-tabella thead { display: none !important; }
	.scudo-testo-legale .scudo-tabella tbody { display: grid !important; gap: 12px; }
	.scudo-testo-legale .scudo-tabella tr { border: 1px solid var(--scudo-filo); border-radius: 14px; overflow: hidden; }
	.scudo-testo-legale .scudo-tabella tbody tr:nth-child(even) > * { background: transparent !important; }
	.scudo-testo-legale .scudo-tabella tbody th { background: var(--scudo-tenue) !important; border-top: 0 !important; padding: 14px 16px !important; }
	.scudo-testo-legale .scudo-tabella td { padding: 10px 16px !important; }
	.scudo-testo-legale .scudo-tabella td::before { content: attr(data-etichetta); display: block; margin-bottom: 2px; font-size: max(12px, .82em); font-weight: 700; }
}
@container scudo-corpo (max-width: 959px) {
	.scudo-testo-legale table.scudo-tabella.fornitori, .scudo-testo-legale .scudo-tabella.fornitori tbody, .scudo-testo-legale .scudo-tabella.fornitori tr, .scudo-testo-legale .scudo-tabella.fornitori th, .scudo-testo-legale .scudo-tabella.fornitori td { display: block !important; width: auto !important; min-width: 0 !important; }
	.scudo-testo-legale table.scudo-tabella.fornitori { border: 0 !important; border-radius: 0; overflow: visible; }
	.scudo-testo-legale .scudo-tabella.fornitori thead { display: none !important; }
	.scudo-testo-legale .scudo-tabella.fornitori tbody { display: grid !important; gap: 12px; }
	.scudo-testo-legale .scudo-tabella.fornitori tr { border: 1px solid var(--scudo-filo); border-radius: 14px; overflow: hidden; }
	.scudo-testo-legale .scudo-tabella.fornitori tbody tr:nth-child(even) > * { background: transparent !important; }
	.scudo-testo-legale .scudo-tabella.fornitori tbody th { background: var(--scudo-tenue) !important; border-top: 0 !important; padding: 14px 16px !important; }
	.scudo-testo-legale .scudo-tabella.fornitori td { padding: 10px 16px !important; }
	.scudo-testo-legale .scudo-tabella.fornitori td::before { content: attr(data-etichetta); display: block; margin-bottom: 2px; font-size: max(12px, .82em); font-weight: 700; }
}
@container scudo-corpo (max-width: 1059px) {
	.scudo-testo-legale table.scudo-tabella.cookie, .scudo-testo-legale .scudo-tabella.cookie tbody, .scudo-testo-legale .scudo-tabella.cookie tr, .scudo-testo-legale .scudo-tabella.cookie th, .scudo-testo-legale .scudo-tabella.cookie td { display: block !important; width: auto !important; min-width: 0 !important; }
	.scudo-testo-legale table.scudo-tabella.cookie { border: 0 !important; border-radius: 0; overflow: visible; }
	.scudo-testo-legale .scudo-tabella.cookie thead { display: none !important; }
	.scudo-testo-legale .scudo-tabella.cookie tbody { display: grid !important; gap: 12px; }
	.scudo-testo-legale .scudo-tabella.cookie tr { border: 1px solid var(--scudo-filo); border-radius: 14px; overflow: hidden; }
	.scudo-testo-legale .scudo-tabella.cookie tbody tr:nth-child(even) > * { background: transparent !important; }
	.scudo-testo-legale .scudo-tabella.cookie tbody th { background: var(--scudo-tenue) !important; border-top: 0 !important; padding: 14px 16px !important; }
	.scudo-testo-legale .scudo-tabella.cookie td { padding: 10px 16px !important; }
	.scudo-testo-legale .scudo-tabella.cookie td::before { content: attr(data-etichetta); display: block; margin-bottom: 2px; font-size: max(12px, .82em); font-weight: 700; }
}
.scudo-testo-legale table.scudo-tabella.larga, .scudo-testo-legale .scudo-tabella.larga tbody, .scudo-testo-legale .scudo-tabella.larga tr, .scudo-testo-legale .scudo-tabella.larga th, .scudo-testo-legale .scudo-tabella.larga td { display: block !important; width: auto !important; min-width: 0 !important; }
.scudo-testo-legale table.scudo-tabella.larga { border: 0 !important; border-radius: 0; overflow: visible; }
.scudo-testo-legale .scudo-tabella.larga thead { display: none !important; }
.scudo-testo-legale .scudo-tabella.larga tbody { display: grid !important; gap: 12px; }
.scudo-testo-legale .scudo-tabella.larga tr { border: 1px solid var(--scudo-filo); border-radius: 14px; overflow: hidden; }
.scudo-testo-legale .scudo-tabella.larga tbody tr:nth-child(even) > * { background: transparent !important; }
.scudo-testo-legale .scudo-tabella.larga tbody th { background: var(--scudo-tenue) !important; border-top: 0 !important; padding: 14px 16px !important; }
.scudo-testo-legale .scudo-tabella.larga td { padding: 10px 16px !important; }
.scudo-testo-legale .scudo-tabella.larga td::before { content: attr(data-etichetta); display: block; margin-bottom: 2px; font-size: max(12px, .82em); font-weight: 700; }
/* le schede, quando c'è posto, a due a due (a tre in una colonna molto larga); in tabella la griglia non conta */
@container scudo-corpo (min-width: 640px) {
	.scudo-testo-legale :is(.scudo-tabella.larga, .scudo-tabella.cookie, .scudo-tabella.fornitori) tbody { grid-template-columns: repeat(2, minmax(0, 1fr)); align-items: start; }
}
@container scudo-corpo (min-width: 1100px) {
	.scudo-testo-legale .scudo-tabella.larga tbody { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

/* Cassa di WooCommerce: avviso delle offerte e casella per dire di no. Le due righe sono righe del modulo del tema
   (stessi margini e allineamento dell'email); qui solo: sotto l'email a tutta larghezza, frase vicina alla sua casella. */
.scudo-offerte { display: block; clear: both; width: 100%; } /* clear: nel tema Rey il campo email è flottante */
.scudo-offerte .scudo-offerte-avviso { margin-bottom: 6px !important; font-size: .95em; line-height: 1.55; text-wrap: pretty; }
.scudo-offerte .scudo-offerte-avviso a { text-decoration: underline; text-underline-offset: 2px; }
.scudo-offerte .scudo-offerte-campo .optional { display: none; } /* «(facoltativo)»: una casella è facoltativa per natura */
/* la scritta della casella è una frase di consenso, non l'etichetta di un campo: carattere normale e leggibile (Rey la metteva maiuscola a 11 px) */
.scudo-offerte .scudo-offerte-campo label { text-transform: none !important; font-size: .95em !important; letter-spacing: normal !important; font-weight: 400 !important; line-height: 1.5 !important; }

/* Il collegamento all'altra lingua, in cima ai testi (1.7.1) */
.scudo-lingue { margin: 0 0 1em; font-size: .95em; }
.scudo-lingue a { text-underline-offset: .2em; }
