/* ==========================================================================
   Pagine interne (templates/interna.php). Regole in materiali/direzione.md.
   I colori della pagina seguono il campo "stagione": blu inverno, verde estate.
   ========================================================================== */

.dg-interna--inverno {
	--dg-pagina-fondo: var(--dg-primary-600);
	--dg-pagina-testo: var(--dg-primary-50);
	--dg-pagina-segno: var(--dg-primary-500);   /* elementi grafici su bianco (fiocchi) */
	--dg-pagina-hover: var(--dg-primary-700);
	--dg-pagina-tenue: var(--dg-primary-100);   /* fondi chiari (banner del prodotto scelto) */
	--dg-pagina-scuro: var(--dg-primary-700);   /* testo colorato su bianco */
}
.dg-interna--estate {
	--dg-pagina-fondo: var(--dg-secondary-500);
	--dg-pagina-testo: var(--dg-secondary-900);
	--dg-pagina-segno: var(--dg-secondary-600); /* il 500 su bianco non arriva a 3:1 */
	--dg-pagina-hover: var(--dg-secondary-400);
	--dg-pagina-tenue: var(--dg-secondary-100);
	--dg-pagina-scuro: var(--dg-secondary-700);
}

/* ---------- Intestazione: foto e scritta gigante sul bordo basso ---------- */
.dg-intestazione {
	position: relative;
	isolation: isolate;
	display: flex;
	align-items: flex-end;
	min-height: clamp(18rem, 55vh, 36rem);
	overflow: hidden;
	background: var(--dg-neutral-900);
}
.dg-intestazione--senza-foto { min-height: clamp(14rem, 35vh, 22rem); background: var(--dg-pagina-fondo); }
.dg-intestazione__foto { position: absolute; inset: 0; z-index: -1; width: 100%; height: 100%; max-width: none; object-fit: cover; }
.dg-intestazione__testi { position: relative; }
.dg-intestazione__occhiello {
	display: inline-block;
	margin: 0 0 var(--dg-space-2);
	padding: var(--dg-space-1) var(--dg-space-2);
	color: var(--dg-pagina-testo);
	font-size: var(--dg-fs-sm);
	font-weight: var(--dg-fw-bold);
	letter-spacing: .12em;
	text-transform: uppercase;
	background: var(--dg-pagina-fondo);
}
/* La scritta gigante del vecchio sito: si appoggia sul bordo e il piede delle
   lettere esce dalla foto. Peso 900 e misure letterali: elemento distintivo,
   nessun token lo copre (direzione.md). */
.dg-intestazione__scritta {
	margin: 0 0 -.16em;
	color: var(--dg-white);
	font-size: clamp(4.5rem, 1rem + 13vw, 14rem);
	font-weight: 900;
	line-height: .85;
	letter-spacing: -.03em;
	white-space: nowrap;
	text-shadow: 0 .05em .4em rgba(var(--dg-black-rgb), .25);
}

/* ---------- Introduzione ---------- */
.dg-intro-pagina { padding-block: var(--dg-ss-lg) var(--dg-ss-md); }
.dg-intro-pagina__titolo {
	margin: 0 0 var(--dg-space-3);
	font-size: clamp(2rem, 1.5rem + 2vw, 2.75rem);
	line-height: 1.15;
	color: var(--dg-neutral-900);
}
.dg-intro-pagina__sottotitolo { margin: 0 0 var(--dg-space-4); font-size: var(--dg-fs-lg); font-weight: var(--dg-fw-semibold); color: var(--dg-neutral-700); }
.dg-intro-pagina__testo { font-size: var(--dg-fs-lg); line-height: 1.6; color: var(--dg-neutral-700); }

/* Pulsante nel colore della pagina. */
/* Pulsanti delle pagine interne: neri, il riempimento e' il colore della pagina. */
.dg-interna .dg-btn { --dg-btn-riempimento: var(--dg-pagina-fondo); --dg-btn-testo-hover: var(--dg-pagina-testo); }

/* ---------- Blocchi ---------- */
.dg-blocco { padding-block: var(--dg-ss-sm); }
.dg-blocco:last-child { padding-bottom: var(--dg-ss-lg); }
.dg-blocco__testo { max-width: 46rem; margin: 0 0 var(--dg-space-5); font-size: var(--dg-fs-lg); line-height: 1.6; color: var(--dg-neutral-700); }

/* Titolo di blocco su etichetta nera con filetto, come nel vecchio sito. */
/* Il filetto parte dal bordo superiore dell'etichetta, come nel vecchio sito. */
.dg-etichetta {
	display: flex;
	align-items: flex-start;
	gap: 0;
	margin: 0 0 var(--dg-space-5);
	font-size: var(--dg-h4);
	line-height: 1.2;
}
.dg-etichetta span { flex: none; padding: var(--dg-space-1) var(--dg-space-3); color: var(--dg-neutral-50); background: var(--dg-neutral-900); }
.dg-etichetta::after { content: ""; flex: 1; height: var(--dg-border-width); background: var(--dg-neutral-300); }

/* Categorie: griglia di nome e descrizione. */
.dg-categorie__elenco { display: grid; gap: var(--dg-space-4) var(--dg-space-5); margin: 0; }
@media (min-width: 768px) { .dg-categorie__elenco { grid-template-columns: 1fr 1fr; } }
@media (min-width: 1200px) { .dg-categorie__elenco { grid-template-columns: repeat(3, 1fr); } }
.dg-categorie__voce { padding-top: var(--dg-space-3); border-top: 3px solid var(--dg-pagina-segno); }
.dg-categorie__voce dt { margin-bottom: var(--dg-space-1); font-weight: var(--dg-fw-bold); letter-spacing: .08em; text-transform: uppercase; color: var(--dg-neutral-900); }
.dg-categorie__voce dd { margin: 0; line-height: 1.5; color: var(--dg-neutral-700); }

/* Famiglie: testi e livelli a sinistra, immagine a destra; filetto fra una e l'altra. */
.dg-famiglia { display: grid; gap: var(--dg-space-4); align-items: center; padding-block: var(--dg-space-5); border-top: var(--dg-border-width) solid var(--dg-neutral-200); }
.dg-famiglia:first-of-type { border-top: 0; padding-top: 0; }
@media (min-width: 992px) { .dg-famiglia { grid-template-columns: 5fr 7fr; gap: var(--dg-space-6); } }
.dg-famiglia__nome { margin: 0 0 var(--dg-space-2); font-size: clamp(1.75rem, 1.3rem + 1.8vw, 2.5rem); line-height: 1.05; color: var(--dg-neutral-900); }
.dg-famiglia__testo { margin: 0 0 var(--dg-space-4); line-height: 1.6; color: var(--dg-neutral-700); }
.dg-famiglia__immagine img { display: block; width: 100%; height: auto; }
@media (max-width: 991.98px) { .dg-famiglia__immagine { order: -1; } }

/* Livello da 1 a 5: fiocchi pieni nel colore della pagina, vuoti in grigio. */
/* Famiglie come tabella a incrocio: categorie nelle righe, famiglie nelle colonne. Su schermi stretti
   la tabella scorre in orizzontale e la colonna delle categorie resta ferma. */
.dg-incrocio { position: relative; max-width: 100%; min-width: 0; overflow-x: auto; margin-top: var(--dg-space-4); border: var(--dg-border-width) solid var(--dg-neutral-200); }
.dg-famiglie--incrocio .dg-wrap { min-width: 0; }
.dg-famiglie--incrocio .dg-wrap > * { min-width: 0; max-width: 100%; }
.dg-incrocio:focus-visible { outline: 2px solid var(--dg-focus-ring-color); outline-offset: 2px; }
.dg-incrocio__tabella { width: 100%; min-width: 44rem; margin: 0; border-collapse: collapse; }
.dg-incrocio__tabella th, .dg-incrocio__tabella td { padding: var(--dg-space-3) var(--dg-space-3); text-align: center; vertical-align: middle; border-bottom: var(--dg-border-width) solid var(--dg-neutral-200); }
.dg-incrocio__tabella tbody tr:last-child > * { border-bottom: 0; }
.dg-incrocio__tabella thead th { font-size: var(--dg-fs-sm); font-weight: var(--dg-fw-bold); letter-spacing: .08em; text-transform: uppercase; color: var(--dg-pagina-testo, var(--dg-neutral-50)); background: var(--dg-pagina-fondo, var(--dg-neutral-900)); border-bottom: 0; }
.dg-incrocio__tabella th:first-child { position: sticky; left: 0; z-index: 1; text-align: left; white-space: nowrap; }
.dg-incrocio__tabella tbody th { font-family: var(--dg-font-heading); font-size: var(--dg-fs-lg); font-weight: var(--dg-fw-bold); color: var(--dg-neutral-900); background: var(--dg-neutral-100); }
/* Il livello a quadratini: uguale a quello delle card dei prodotti (noleggio.css). */
.dg-tacche { display: inline-flex; gap: 3px; vertical-align: middle; }
.dg-tacche__tacca { width: .875rem; height: .875rem; background: var(--dg-neutral-200); }
.dg-tacche__tacca.is-piena { background: var(--dg-pagina-fondo, var(--dg-primary-600)); }
.dg-incrocio__vuoto { color: var(--dg-neutral-400); }
.dg-incrocio__legenda { margin: var(--dg-space-3) 0 0; font-size: var(--dg-fs-sm); line-height: 1.5; color: var(--dg-neutral-700); }
.dg-incrocio__famiglie { display: grid; gap: var(--dg-space-4) var(--dg-space-5); margin: var(--dg-space-5) 0 0; }
@media (min-width: 768px) { .dg-incrocio__famiglie { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 1200px) { .dg-incrocio__famiglie { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
.dg-incrocio__famiglie dt { margin: 0 0 var(--dg-space-1); padding-left: var(--dg-space-3); font-family: var(--dg-font-heading); font-weight: var(--dg-fw-bold); color: var(--dg-neutral-900); border-left: var(--dg-space-1) solid var(--dg-pagina-segno); }
.dg-incrocio__famiglie dd { margin: 0; padding-left: var(--dg-space-3); line-height: 1.5; color: var(--dg-neutral-700); }

.dg-livelli { display: grid; gap: var(--dg-space-2); margin: 0; padding: 0; list-style: none; }
.dg-livelli__voce { display: flex; align-items: center; gap: var(--dg-space-3); }
.dg-livelli__fiocchi { display: inline-flex; gap: .125rem; }
.dg-livelli__fiocchi .dg-icona { width: 1.25rem; height: 1.25rem; color: var(--dg-neutral-300); }
.dg-livelli__fiocchi .dg-icona.is-pieno { color: var(--dg-pagina-segno); }
.dg-livelli__categoria { font-size: var(--dg-fs-sm); font-weight: var(--dg-fw-bold); letter-spacing: .08em; text-transform: uppercase; color: var(--dg-neutral-900); }

/* Testo libero. */
.dg-blocco-testo__corpo { max-width: 46rem; font-size: var(--dg-fs-lg); line-height: 1.6; color: var(--dg-neutral-700); }

/* Invito: riga con testo e pulsante fra due filetti. */
.dg-invito__riga {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: var(--dg-space-4);
	padding-block: var(--dg-space-4);
	border-top: var(--dg-border-width) solid var(--dg-neutral-300);
	border-bottom: var(--dg-border-width) solid var(--dg-neutral-300);
}
.dg-invito__testo { flex: 1 1 28rem; margin: 0; font-size: var(--dg-fs-lg); line-height: 1.5; color: var(--dg-neutral-800); }

/* ==========================================================================
   Blocchi della seconda serie
   ========================================================================== */

/* ---------- Link grandi: voci a tutta larghezza fra filetti ---------- */
.dg-link-grandi__elenco { margin: 0; padding: 0; list-style: none; border-top: var(--dg-border-width) solid var(--dg-neutral-200); }
.dg-link-grandi__elenco li { border-bottom: var(--dg-border-width) solid var(--dg-neutral-200); }
.dg-link-grandi__voce {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: var(--dg-space-3);
	padding: var(--dg-space-4) var(--dg-space-3);
	color: var(--dg-neutral-900);
	font-size: clamp(2rem, 1.2rem + 3vw, 3.5rem);
	font-weight: 900; /* come le scritte giganti: elemento distintivo (direzione.md) */
	line-height: 1;
	letter-spacing: -.02em;
	text-decoration: none;
	transition: color var(--dg-duration-fast) var(--dg-ease-standard), background-color var(--dg-duration-fast) var(--dg-ease-standard);
}
.dg-link-grandi__voce .dg-icona { width: .7em; height: .7em; opacity: 0; transform: translateX(-.25em); transition: opacity var(--dg-duration-base) var(--dg-ease-standard), transform var(--dg-duration-base) var(--dg-ease-standard); }
.dg-link-grandi__voce:hover { color: var(--dg-pagina-testo); background: var(--dg-pagina-fondo); }
.dg-link-grandi__voce:hover .dg-icona { opacity: 1; transform: none; }
@media (prefers-reduced-motion: reduce) { .dg-link-grandi__voce .dg-icona { transition: none; } }

/* ---------- Vetrina: riquadro con testo e tessere ---------- */
/* Come nel vecchio sito: tessere accostate senza spazi (2/3 + 1/3, poi 1/3 +
   2/3), titolo enorme, etichette grandi e sottili senza riquadro. */
.dg-vetrina__griglia { display: grid; gap: 0; }
@media (min-width: 768px) { .dg-vetrina__griglia { grid-template-columns: repeat(3, 1fr); } }
.dg-vetrina__riquadro {
	display: flex;
	flex-direction: column;
	justify-content: center;
	gap: var(--dg-space-4);
	padding: var(--dg-space-5) var(--dg-space-4);
	background: var(--dg-neutral-50);
}
@media (min-width: 992px) { .dg-vetrina__riquadro { padding: var(--dg-space-6); } }
@media (min-width: 768px) { .dg-vetrina__riquadro { grid-column: span 2; } }
.dg-vetrina__titolo { margin: 0; font-size: clamp(3rem, 1.5rem + 5vw, 6.25rem); font-weight: 900; line-height: 1; letter-spacing: -.02em; color: var(--dg-neutral-700); }
.dg-vetrina__testo { max-width: 46rem; margin: 0; line-height: 1.6; color: var(--dg-neutral-800); }
.dg-vetrina__riquadro .dg-btn { align-self: flex-start; }
.dg-vetrina__tessera { position: relative; min-height: 22rem; margin: 0; overflow: hidden; }
@media (min-width: 768px) { .dg-vetrina__tessera { min-height: 28rem; } }
@media (min-width: 768px) { .dg-vetrina__tessera.is-larga { grid-column: span 2; } }
.dg-vetrina__tessera img { display: block; width: 100%; height: 100%; }
.dg-vetrina__tessera--foto img { position: absolute; inset: 0; object-fit: cover; }
.dg-vetrina__tessera--prodotto { display: grid; place-items: center; padding: var(--dg-space-7) var(--dg-space-4) var(--dg-space-4); background: var(--dg-pagina-fondo); }
.dg-vetrina__tessera--prodotto img { width: auto; max-width: 100%; max-height: 18rem; object-fit: contain; }
/* Immagine grande: il prodotto riempie quasi tutta la tessera e passa sotto
   l'etichetta (il kit freeride del vecchio sito). */
.dg-vetrina__tessera--prodotto.is-grande { padding: var(--dg-space-4); }
.dg-vetrina__tessera--prodotto.is-grande img { width: 100%; max-width: 25rem; max-height: none; }
.dg-vetrina__tessera.is-grande figcaption { z-index: 1; }
/* Arancione del vecchio sito: vale solo per questo riquadro, non e' una famiglia
   del design system (deciso con l'operatore il 2026-10-01). */
.dg-vetrina__tessera--arancio { --dg-vetrina-arancio: #e97949; background: var(--dg-vetrina-arancio); }
.dg-vetrina__tessera.dg-vetrina__tessera--arancio figcaption { color: var(--dg-neutral-900); }
/* Come nel vecchio sito: al passaggio del mouse il prodotto scivola di poco a destra. */
@media (hover: hover) and (prefers-reduced-motion: no-preference) {
	.dg-vetrina__tessera--prodotto img { transition: transform var(--dg-duration-base) var(--dg-ease-standard); }
	.dg-vetrina__tessera--prodotto:hover img { transform: translateX(var(--dg-space-2)); }
}
.dg-vetrina__tessera figcaption {
	position: absolute;
	top: var(--dg-space-3); left: var(--dg-space-3); right: var(--dg-space-3);
	font-size: clamp(1.75rem, 1.2rem + 1.5vw, 2.5rem);
	font-weight: var(--dg-fw-normal);
	line-height: 1.2;
	color: var(--dg-pagina-testo);
}
.dg-vetrina__tessera--foto figcaption { color: var(--dg-white); text-align: right; }

/* ---------- Marchi: griglia di loghi ---------- */
/* Come nel vecchio sito: loghi quadrati a tutta cella, neri, senza riquadro,
   8 per riga su schermo largo. */
.dg-marchi__elenco { display: grid; grid-template-columns: repeat(3, 1fr); gap: var(--dg-space-4); margin: 0; padding: 0; list-style: none; }
@media (min-width: 576px) { .dg-marchi__elenco { grid-template-columns: repeat(4, 1fr); } }
@media (min-width: 992px) { .dg-marchi__elenco { grid-template-columns: repeat(6, 1fr); } }
@media (min-width: 1200px) { .dg-marchi__elenco { grid-template-columns: repeat(8, 1fr); } }
.dg-marchi__elenco li { aspect-ratio: 1; }
.dg-marchi__elenco img { display: block; width: 100%; height: 100%; object-fit: contain; }

/* ---------- Pacchetti con prezzo ---------- */
.dg-pacchetti__elenco { display: grid; gap: var(--dg-space-4); margin: 0; padding: 0; list-style: none; }
@media (min-width: 768px) { .dg-pacchetti__elenco { grid-template-columns: repeat(auto-fit, minmax(14rem, 1fr)); } }
.dg-pacchetto { display: flex; flex-direction: column; }
.dg-pacchetto__nome { margin: 0; padding-bottom: var(--dg-space-2); font-size: var(--dg-h3); color: var(--dg-neutral-900); border-bottom: var(--dg-border-width) solid var(--dg-neutral-300); }
.dg-pacchetto__prezzo { margin: 0; padding-block: var(--dg-space-2); font-size: clamp(2.5rem, 1.8rem + 2.5vw, 3.5rem); font-weight: 900; line-height: 1; text-align: right; color: var(--dg-neutral-900); }
.dg-pacchetto__servizi { flex: 1; margin: 0; padding: var(--dg-space-3) var(--dg-space-4); list-style: none; color: var(--dg-pagina-testo); background: var(--dg-pagina-fondo); line-height: 1.6; }

/* ---------- Immagine ---------- */
.dg-blocco-immagine { margin: 0; }
.dg-blocco-immagine__img { display: block; max-width: 100%; height: auto; margin-inline: auto; }
.dg-blocco-immagine figcaption { margin-top: var(--dg-space-2); font-size: var(--dg-fs-sm); text-align: center; color: var(--dg-neutral-600); }

/* ---------- Tessere con foto: verticali, etichetta sul bordo basso ---------- */
.dg-tessere__elenco { display: grid; grid-template-columns: repeat(2, 1fr); gap: var(--dg-space-2); margin: 0; padding: 0; list-style: none; }
@media (min-width: 992px) { .dg-tessere__elenco { grid-template-columns: repeat(3, 1fr); } }
.dg-tessera { position: relative; overflow: hidden; aspect-ratio: 3 / 4; background: var(--dg-neutral-200); }
.dg-tessera img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
@media (prefers-reduced-motion: no-preference) {
	.dg-tessera img { transition: transform var(--dg-duration-slow) var(--dg-ease-standard); }
	.dg-tessera:hover img { transform: scale(1.04); }
}
.dg-tessera__etichetta {
	position: absolute;
	left: 0; bottom: 0;
	padding: var(--dg-space-2) var(--dg-space-3);
	color: var(--dg-neutral-50);
	font-size: clamp(1.25rem, 1rem + 1vw, 1.75rem);
	font-weight: 900;
	line-height: 1;
	background: var(--dg-neutral-900);
}

/* ---------- Galleria ---------- */
.dg-galleria__elenco { display: grid; grid-template-columns: repeat(2, 1fr); gap: var(--dg-space-2); margin: 0; padding: 0; list-style: none; }
@media (min-width: 768px) { .dg-galleria__elenco { grid-template-columns: repeat(4, 1fr); } }
.dg-galleria__elenco img { display: block; width: 100%; aspect-ratio: 1; height: auto; object-fit: cover; }

/* ---------- Catalogo bici ---------- */
/* Arrivando con un'ancora, l'header fisso (5rem) non deve coprire il titolo. */
.dg-catalogo .dg-etichetta, .dg-tabella { scroll-margin-top: calc(5rem + var(--dg-space-4)); }
/* Filtri e card del catalogo: assets/css/noleggio.css (markup del plugin Digival Noleggio). */

/* ---------- Tabella ---------- */
.dg-tabella__tabella { width: 100%; max-width: 40rem; border-collapse: collapse; }
.dg-tabella__tabella th, .dg-tabella__tabella td { padding: var(--dg-space-2) var(--dg-space-3); text-align: left; border-bottom: var(--dg-border-width) solid var(--dg-neutral-200); }
.dg-tabella__tabella thead th { color: var(--dg-pagina-testo); font-size: var(--dg-fs-sm); letter-spacing: .08em; text-transform: uppercase; background: var(--dg-pagina-fondo); border: 0; }
.dg-tabella__tabella tbody th { width: 6rem; font-weight: var(--dg-fw-bold); color: var(--dg-neutral-900); }

/* ---------- Modulo di contatto (Contact Form 7): angoli vivi come il sito ---------- */
/* Le variabili si ridefiniscono su .wpcf7, dove le imposta lo stile della base. */
.dg-modulo .wpcf7 { --dg-cf7-field-radius: var(--dg-radius-none); --dg-cf7-button-radius: var(--dg-radius-none); }
/* Invio nero come gli altri pulsanti; al passaggio del mouse il colore della pagina
   (un campo input non ha ::before: niente scorrimento, solo il cambio di colore). */
.dg-modulo .wpcf7 .wpcf7-submit { color: var(--dg-neutral-50); background-color: var(--dg-neutral-900); font-weight: var(--dg-fw-bold); letter-spacing: .06em; transition: background-color var(--dg-duration-base) var(--dg-ease-standard), color var(--dg-duration-base) var(--dg-ease-standard); }
.dg-modulo .wpcf7 .wpcf7-submit:not(:disabled):hover,
.dg-modulo .wpcf7 .wpcf7-submit:not(:disabled):focus-visible { color: var(--dg-pagina-testo); background-color: var(--dg-pagina-fondo); }
.dg-modulo__titolo { margin: 0 0 var(--dg-space-3); font-size: clamp(1.75rem, 1.4rem + 1.5vw, 2.25rem); color: var(--dg-neutral-900); }
.dg-modulo__testo { margin: 0; font-size: var(--dg-fs-lg); line-height: 1.6; color: var(--dg-neutral-700); }

/* ---------- Sedi a righe ---------- */
.dg-sede-riga { display: grid; border-top: var(--dg-border-width) solid var(--dg-neutral-300); }
.dg-sede-riga:last-child { border-bottom: var(--dg-border-width) solid var(--dg-neutral-300); }
@media (min-width: 992px) { .dg-sede-riga { grid-template-columns: 14rem 1fr 1fr 1.2fr; } }
.dg-sede-riga__marca { display: flex; flex-direction: column; justify-content: space-between; gap: var(--dg-space-4); padding: var(--dg-space-4); }
.dg-sede-riga--inverno .dg-sede-riga__marca { color: var(--dg-primary-50); background: var(--dg-primary-600); }
.dg-sede-riga--estate .dg-sede-riga__marca { color: var(--dg-secondary-900); background: var(--dg-secondary-500); }
.dg-sede-riga__marca > .dg-icona { width: 2.5rem; height: 2.5rem; }
.dg-sede-riga__tipo { margin: 0; font-size: var(--dg-fs-sm); font-weight: var(--dg-fw-semibold); letter-spacing: .1em; text-transform: uppercase; }
.dg-sede-riga__nome { margin: 0; font-size: var(--dg-h3); line-height: 1.1; color: inherit; }
.dg-sede-riga__col { padding: var(--dg-space-4); overflow-wrap: anywhere; }
@media (min-width: 992px) { .dg-sede-riga__col + .dg-sede-riga__col { border-left: var(--dg-border-width) solid var(--dg-neutral-300); } }
.dg-sede-riga__col h4 { display: flex; align-items: center; gap: var(--dg-space-2); margin: 0 0 var(--dg-space-2); font-size: var(--dg-fs-sm); letter-spacing: .1em; text-transform: uppercase; color: var(--dg-neutral-600); }
.dg-sede-riga__col h4 .dg-icona { width: 1.125rem; height: 1.125rem; }
.dg-sede-riga__col p { margin: 0; line-height: 1.5; color: var(--dg-neutral-800); }
.dg-sede-riga__col a { color: var(--dg-neutral-900); font-weight: var(--dg-fw-semibold); text-decoration: none; }
.dg-sede-riga__col a:hover { color: var(--dg-primary-600); }
.dg-sede-riga__mappa { display: inline-flex; align-items: center; gap: var(--dg-space-1); margin-top: var(--dg-space-2); font-size: var(--dg-fs-sm); letter-spacing: .06em; text-transform: uppercase; }
.dg-sede-riga__mappa .dg-icona { width: 1rem; height: 1rem; }
.dg-sede-riga__orari { display: grid; gap: var(--dg-space-1); margin: 0; }
.dg-sede-riga__orari > div { display: flex; flex-wrap: wrap; gap: 0 var(--dg-space-3); }
.dg-sede-riga__orari dt { font-weight: var(--dg-fw-bold); color: var(--dg-neutral-900); }
.dg-sede-riga__orari dd { margin: 0; color: var(--dg-neutral-800); }

