/* TGK brand mapping; layout geometry is the shared minCore Bento. */
.tgk-news-section { --mincore-primary: var(--red); --mincore-text: var(--ink); --mincore-text-muted: var(--muted); --mincore-background: var(--paper); --mincore-border-color: var(--line); }
.tgk-news-section .min-news-bento__title { font-family: var(--font-display, inherit); }
.tgk-news-section .min-news-bento__item { border-radius: 0; }
.min-news-empty { padding: 2rem; }

/* Fit native plugin output to the existing TGK reading width and typography. */
.tgk-news-section > .container { width: min(1200px, calc(100% - 48px)); margin-inline: auto; }
@media (min-width: 768px) {
  .tgk-news-section .min-news-bento__item:only-child .min-news-bento__inner { flex-direction: row; }
  .tgk-news-section .min-news-bento__item:only-child .min-news-bento__image { flex: 0 0 52%; aspect-ratio: 16 / 10; }
  .tgk-news-section .min-news-bento__item:only-child { grid-row: auto; }
}
/* Native News page frames use the same reading width as their plugin. */
.min-header:has(+ .min-news) { width: min(1200px, calc(100% - 48px)); margin-inline: auto; }
.min-header + .min-news .tgk-news-section { padding-top: 24px; }
main:is([data-page-slug="/verein/vereinsnews"], [data-page-slug="/termine/archiv"], [data-page-slug="/termine"]) > .ce-textmedia > .container { width: min(1200px, calc(100% - 48px)); margin-inline: auto; }
main[data-page-slug="/termine/archiv"] .page-hero h1 { max-width: min(100%, 14ch); overflow-wrap: anywhere; hyphens: none; }

/* Give every native News heading the same section spacing as the TGK pages. */
main > .min-header:has(+ .min-news) { padding-block-start: clamp(48px, 6vw, 96px); }

/* News detail follows TGK's existing page hero and longform pattern. */
.tgk-news-article { width: 100%; color: var(--ink); background: var(--paper); }
.tgk-news-article__hero.page-hero { min-height: 580px; min-height: min(72vh, 760px); }
.tgk-news-article__hero .page-hero__content h1 { max-width: 24ch; font-size: calc(clamp(32px, 5vw, 72px) * var(--font-scale, 1)); line-height: 1.06; overflow-wrap: anywhere; hyphens: none; }
.tgk-news-article__hero.page-hero--image::after { background: linear-gradient(90deg, var(--image-text-bg), transparent); }
.tgk-news-article__back { margin-bottom: var(--gap-7); }
.tgk-news-article__back a { display: inline-flex; align-items: center; min-height: 44px; color: var(--ink); }
.tgk-news-article__layout { display: grid; gap: var(--gap-8); align-items: start; }
.tgk-news-article__layout:has(> .tgk-news-article__aside) { grid-template-columns: minmax(0, 1fr) 320px; }
.tgk-news-article__layout > .tgk-longform { margin: 0; min-width: 0; }
.tgk-news-article__meta { margin-bottom: var(--gap-4); font-family: var(--font-mono); font-size: 12px; color: var(--muted); }
.tgk-news-article__lead.lede { max-width: 64ch; margin-bottom: var(--gap-6); font-size: calc(clamp(20px, 1.5vw, 24px) * var(--font-scale, 1)); line-height: 1.55; }
.tgk-news-article__author, .tgk-news-article__tags { margin-top: var(--gap-6); color: var(--muted); }
.tgk-news-article__downloads { padding: var(--gap-6); background: var(--paper-soft); border-top: 3px solid var(--red); }
.tgk-news-article__downloads h2 { margin-bottom: var(--gap-5); font-size: 32px; }
.tgk-news-article__downloads ul { list-style: none; padding: 0; margin: 0; }
.tgk-news-article__downloads li + li { margin-top: var(--gap-5); padding-top: var(--gap-5); border-top: 1px solid var(--line); }
.tgk-news-article__downloads a { display: flex; align-items: center; min-height: 44px; color: var(--ink); font-weight: 700; line-height: 1.5; text-decoration-color: var(--red); text-underline-offset: .2em; overflow-wrap: anywhere; }
.tgk-news-article__filesize { display: block; margin-top: var(--gap-2); color: var(--muted); font-size: 14px; }
.tgk-news-article a:focus-visible { outline: 3px solid var(--red); outline-offset: 4px; }
.tgk-news-article__media, .tgk-news-article__elements { margin-top: var(--gap-7); }
.tgk-news-article__media :is(img, video, iframe) { display: block; max-width: 100%; height: auto; }
@media (max-width: 900px) {
  .tgk-news-article__layout:has(> .tgk-news-article__aside) { grid-template-columns: minmax(0, 1fr); }
  .tgk-news-article__hero.page-hero { min-height: 560px; }
  .tgk-news-article__hero .page-hero__content h1 { max-width: 100%; }
  .tgk-news-article__downloads { padding: var(--gap-5); }
}
