/* =====================================================================
   WIENINGER · News / Aktuelles  —  wgn-news.css
   Beitrags-Karten (Bild 16:9, Datum, Titel, Teaser, Weiterlesen).
   Ganze Karte klickbar (stretched link). Tokens aus wgn-ui.css.
   ===================================================================== */

.wgn-news {
	background: var(--wgn-cream);
	padding: clamp(3.5rem, 8vw, 7rem) var(--wgn-pad-x);
	font-family: var(--wgn-sans);
	-webkit-text-size-adjust: 100%; text-size-adjust: 100%;
}
.wgn-news * { box-sizing: border-box; }

/* ---------- Kopf ---------- */
.wgn-news__head {
	max-width: var(--wgn-shell); margin: 0 auto clamp(2rem, 4vw, 3rem);
	display: flex; align-items: flex-end; justify-content: space-between; gap: 1rem 2rem; flex-wrap: wrap;
}
.wgn-news__head.is-center { flex-direction: column; align-items: center; text-align: center; }
.wgn-news__kicker {
	display: inline-flex; align-items: center; gap: .75rem; margin: 0 0 1rem;
	color: var(--wgn-red); font-size: .78rem; font-weight: 700; letter-spacing: .2em; text-transform: uppercase;
}
.wgn-news__kicker::before { content: ""; width: 2rem; height: 1.5px; background: var(--wgn-red); }
.wgn-news__head.is-center .wgn-news__kicker::before { display: none; }
.wgn-news__title { font-family: var(--wgn-serif); font-weight: 500; letter-spacing: -.02em; line-height: 1.1; font-size: clamp(1.9rem, 4vw, 3rem); margin: 0; color: var(--wgn-ink); }
.wgn-news__intro { margin: 1rem 0 0; color: var(--wgn-ink-soft); font-size: 1.05rem; line-height: 1.6; max-width: 60ch; }
.wgn-news__all {
	flex: 0 0 auto; color: var(--wgn-red); font-size: .82rem; font-weight: 600; letter-spacing: .06em; text-transform: uppercase;
	display: inline-flex; align-items: center; gap: .45em; white-space: nowrap; padding-bottom: .35rem;
}
.wgn-news__all svg { transition: transform .25s var(--wgn-ease); }
.wgn-news__all:hover svg { transform: translateX(3px); }

/* ---------- Grid ---------- */
.wgn-news__grid {
	max-width: var(--wgn-shell); margin-inline: auto;
	display: grid; gap: clamp(1.25rem, 2.5vw, 2rem);
	grid-template-columns: repeat(var(--wgn-news-cols, 3), minmax(0, 1fr));
}
@media (max-width: 1024px) { .wgn-news__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 640px)  { .wgn-news__grid { grid-template-columns: minmax(0, 1fr); } }

/* ---------- Karte ---------- */
.wgn-ncard {
	position: relative; display: flex; flex-direction: column;
	background: var(--wgn-paper); border: 1px solid var(--wgn-line); border-radius: .4rem; overflow: hidden;
	transition: transform .3s var(--wgn-ease), box-shadow .3s var(--wgn-ease);
}
.wgn-ncard:hover { transform: translateY(-4px); box-shadow: var(--wgn-shadow); }
.wgn-ncard__media { aspect-ratio: 16 / 9; overflow: hidden; background: #2a2018; }
.wgn-ncard__media img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .6s var(--wgn-ease); }
.wgn-ncard:hover .wgn-ncard__media img { transform: scale(1.05); }

.wgn-ncard__body { display: flex; flex-direction: column; flex: 1; padding: clamp(1.1rem, 2vw, 1.5rem); }
.wgn-ncard__date { display: inline-flex; align-items: center; gap: .45em; margin: 0 0 .6rem; font-size: .78rem; color: var(--wgn-ink-soft); }
.wgn-ncard__date svg { opacity: .7; }
.wgn-ncard__title { margin: 0 0 .6rem; font-family: var(--wgn-serif); font-weight: 500; line-height: 1.25; font-size: clamp(1.15rem, 1.7vw, 1.4rem); color: var(--wgn-ink); }
.wgn-ncard__title a { color: inherit; transition: color .2s; }
.wgn-ncard__title a::after { content: ""; position: absolute; inset: 0; }   /* ganze Karte klickbar */
.wgn-ncard:hover .wgn-ncard__title a { color: var(--wgn-red); }
.wgn-ncard__teaser { margin: 0 0 1.1rem; color: var(--wgn-ink-soft); font-size: .92rem; line-height: 1.55; }
.wgn-ncard__more { margin-top: auto; color: var(--wgn-red); font-size: .8rem; font-weight: 600; letter-spacing: .05em; display: inline-flex; align-items: center; gap: .45em; }
.wgn-ncard__more svg { transition: transform .25s var(--wgn-ease); }
.wgn-ncard:hover .wgn-ncard__more svg { transform: translateX(3px); }

@media (prefers-reduced-motion: reduce) {
	.wgn-ncard, .wgn-ncard__media img, .wgn-news__all svg, .wgn-ncard__more svg { transition: none !important; }
	.wgn-ncard:hover { transform: none; }
	.wgn-ncard:hover .wgn-ncard__media img { transform: none; }
}
