/* notizie-hub-pages — solo SSR, nessuna immagine, nessuno slot: niente salti dopo il primo paint.
   Larghezze tutte fluide; i testi lunghi del MIT (aziende, modalità) vanno a capo anche dentro le parole. */

.nhp-strikes, .nhp-xmas, .nhp-news, .nhp-cities { margin: 1.8rem 0; font-size: 15px; line-height: 1.5; color: #1a1a1a; overflow-wrap: anywhere; }

.nhp-h2 {
	margin: 0 0 0.7rem;
	padding-bottom: 0.45rem;
	border-bottom: 2px solid #c92a2a;
	font-size: 1.3rem;
	line-height: 1.2;
	font-weight: 700;
}
.nhp-h3 { margin: 1.4rem 0 0.5rem; font-size: 1.08rem; line-height: 1.25; font-weight: 700; }
.nhp-lead { margin: 0 0 1rem; }
.nhp-note { margin: 0 0 1rem; padding: 0.7rem 0.9rem; background: #fff7e6; border-left: 4px solid #f0a020; }
.nhp-source { margin: 1.2rem 0 0; font-size: 0.82rem; color: #6b7280; }
.nhp-source a { color: inherit; }
.nhp-k { font-weight: 600; }

.nhp-badge { display: inline-block; padding: 0.05rem 0.45rem; border-radius: 3px; font-size: 0.75rem; font-weight: 600; line-height: 1.5; white-space: nowrap; }
.nhp-badge--tbd { background: #fff1d6; color: #7a4b00; white-space: normal; }
.nhp-badge--off { background: #eceff3; color: #4b5563; }

/* ── scioperi ─────────────────────────────────────────────── */
.nhp-days, .nhp-day__list { margin: 0; padding: 0; list-style: none; }
.nhp-day { margin: 0 0 0.9rem; }
.nhp-day__date { margin: 0 0 0.35rem; font-weight: 700; color: #c92a2a; text-transform: none; }
.nhp-strike { margin: 0 0 0.5rem; padding: 0.6rem 0.8rem; border: 1px solid #e5e7eb; border-radius: 4px; background: #fff; }
.nhp-strike p { margin: 0.15rem 0 0; }
.nhp-strike__head { margin-top: 0 !important; }
.nhp-strike__meta { font-size: 0.82rem; color: #6b7280; }
.nhp-strike__co { font-weight: 600; }
.nhp-strike__mod { font-size: 0.9rem; }
.nhp-strike__foot { font-size: 0.78rem; color: #6b7280; }
.nhp-strike__foot a { color: inherit; }
.nhp-strike.is-revoked { opacity: 0.65; }
.nhp-strike.is-revoked .nhp-strike__head strong { text-decoration: line-through; }

/* ── mercatini ────────────────────────────────────────────── */
.nhp-cards { display: grid; grid-template-columns: minmax(0, 1fr); gap: 0.8rem; }
.nhp-card { padding: 0.8rem 0.95rem; border: 1px solid #e5e7eb; border-radius: 4px; background: #fff; min-width: 0; }
.nhp-card.is-past { opacity: 0.7; }
.nhp-card__title { margin: 0 0 0.4rem; font-size: 1.05rem; line-height: 1.25; font-weight: 700; }
.nhp-card__dl { display: grid; grid-template-columns: max-content minmax(0, 1fr); gap: 0.15rem 0.7rem; margin: 0 0 0.4rem; }
.nhp-card__dl dt { font-weight: 600; color: #4b5563; }
.nhp-card__dl dd { margin: 0; }
.nhp-card__desc { margin: 0.3rem 0; }
.nhp-card__links { margin: 0.3rem 0 0; font-size: 0.82rem; color: #6b7280; }
.nhp-card__links a { color: #c92a2a; }
.nhp-xcity { margin: 0 0 1rem; }
.nhp-xcity__list { margin: 0; padding-left: 1.1rem; }
.nhp-xcity__list li { margin: 0.2rem 0; }

/* ── notizie + rete ───────────────────────────────────────── */
.nhp-news__list, .nhp-cities__list { margin: 0; padding: 0; list-style: none; }
.nhp-news__item { padding: 0.6rem 0; border-bottom: 1px solid #e5e7eb; }
.nhp-news__item a { display: block; font-weight: 600; line-height: 1.32; text-decoration: none; color: inherit; }
.nhp-news__item a:hover { text-decoration: underline; }
.nhp-news__item time { display: block; margin-top: 0.15rem; font-size: 0.78rem; color: #6b7280; }
.nhp-cities__list { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 14rem), 1fr)); gap: 0.3rem 1rem; }
.nhp-cities__list a { color: #c92a2a; font-weight: 600; text-decoration: none; }
.nhp-cities__list a:hover { text-decoration: underline; }
.nhp-more { margin: 0.8rem 0 0; font-weight: 600; }
.nhp-more a { color: #c92a2a; text-decoration: none; }
.nhp-more a::after { content: " \2192"; }
.nhp-more a:hover { text-decoration: underline; }

@media (min-width: 768px) {
	.nhp-cards { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

/* solo in anteprima di una bozza, per chi la può modificare */
.nhp-editor-note { margin: 0.5rem 0 0; padding: 0.5rem 0.7rem; background: #fff7cc; border: 1px dashed #b38f00; font-size: 0.82rem; color: #4a3b00; }
