/* ============================================================
   SonaMedia - lokale Schriften
   Headings: Bitter Bold (700)
   Fliesstext/UI: Newsreader (Variable 400-700)
   Selbst gehostet, keine externen CDNs.
   ============================================================ */

/* Bitter 700 latin-ext */
@font-face {
  font-family: 'Bitter';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(bitter-700-normal-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

/* Bitter 700 latin */
@font-face {
  font-family: 'Bitter';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(bitter-700-normal-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* Newsreader italic latin */
@font-face {
  font-family: 'Newsreader';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url('newsreader-italic-latin.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* Newsreader italic latin-ext */
@font-face {
  font-family: 'Newsreader';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url('newsreader-italic-latin-ext.woff2') format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

/* Newsreader normal latin */
@font-face {
  font-family: 'Newsreader';
  font-style: normal;
  font-weight: 400 700;
  font-display: swap;
  src: url('newsreader-normal-latin.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* Newsreader normal latin-ext */
@font-face {
  font-family: 'Newsreader';
  font-style: normal;
  font-weight: 400 700;
  font-display: swap;
  src: url('newsreader-normal-latin-ext.woff2') format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

/* ------------------------------------------------------------
   Zuordnung
   Headings  -> Bitter Bold (700)
   Alles andere -> Newsreader
   Monospace (Zeitcodes, Code) bleibt monospace.
   ------------------------------------------------------------ */
:root {
  --font-display: 'Bitter', Georgia, 'Times New Roman', serif;
  --font-sans: 'Newsreader', Georgia, 'Times New Roman', serif;
  --brave-display: 'Bitter', Georgia, 'Times New Roman', serif;
  --brave-body: 'Newsreader', Georgia, 'Times New Roman', serif;
}

/* Grundschrift */
html body,
body,
.vgt-app {
  font-family: 'Newsreader', Georgia, 'Times New Roman', serif;
}

/* UI-Elemente, die vorher die Display-Schrift nutzten, aber keine Ueberschriften sind */
button, input, select, textarea,
.vgt-brave-nav-list a,
.vg-mobile-nav-list li a,
.vg-mobile-menu a,
.vgt-search-input,
.vgt-filter-chip,
.vgt-lang-btn,
.vgt-lang-opt,
.vgt-lang-modal__title,
.vgt-header-cta-btn,
.vgt-header-mobile-btn,
.vgt-stage-btn,
.vgt-wall-btn,
.vgt-btn-primary,
.vgt-btn-secondary,
.vgt-section-kicker,
.vgt-brave-wall__subtitle,
.vgt-wall-item__meta,
.vgt-wall-item__synopsis,
.vgt-wall-item__access,
.vgt-timeline-node__tag,
.vgt-honor-card__tag,
.vgt-voice-card__tag,
.vgt-author-card__role,
.vgt-brave-single__specs,
.vgt-brave-single__credits,
.vgt-archive-stat span,
.vgt-brave-single__badge,
.vgt-screening-form label,
.vgt-form-field label {
  font-family: 'Newsreader', Georgia, 'Times New Roman', serif;
  font-weight: 400;
}

/* Ueberschriften: Bitter Bold */
h1, h2, h3, h4, h5, h6,
.vgt-section-headline,
.vgt-brave-stage__caption h1,
.vgt-brave-single__mast-copy h1,
.vgt-brave-related-title {
  font-family: 'Bitter', Georgia, 'Times New Roman', serif !important;
  font-weight: 700 !important;
  font-synthesis-weight: none;
}

/* Monospace bleibt Monospace */
code, pre, kbd, samp {
  font-family: var(--font-mono), 'Consolas', monospace;
}

/* ------------------------------------------------------------
   KEINE GROSSBUCHSTABEN bei Ueberschriften
   (Kicker/Tags/Badges bleiben bewusst in Versalien)
   ------------------------------------------------------------ */
h1, h2,
.vgt-section-headline,
.vgt-brave-stage__caption h1,
.vgt-brave-single__mast-copy h1 {
  text-transform: none !important;
  letter-spacing: -0.015em !important;
}

h3, h4, h5, h6,
.vgt-manifest-pillars-heading h3,
.vgt-authors-edu-card__title,
.vgt-factcheck-card__header h4,
.vgt-archive-gate-card__audience h3,
.vgt-lang-modal__title,
.vgt-screening-modal__title,
.vg-mobile-overlay__title {
  text-transform: none !important;
  letter-spacing: normal !important;
}

/* ------------------------------------------------------------
   KEINE GRAUEN SCHRIFTEN - Textfarbe durchgehend Weiss
   Gold-Akzente (Kicker, CTA mit dunkler Schrift) bleiben erhalten.
   ------------------------------------------------------------ */
:root {
  --brave-ink: #ffffff;
  --brave-ink-muted: #ffffff;
  --brave-ink-faint: #ffffff;
}

/* Sekundaertexte, die fest kodierte Transparenz-Weisstoene nutzten */
.vgt-brave-nav-list a,
.vg-nav-menu li a,
.vg-mobile-nav-list li a,
.vg-mobile-menu a,
.vg-mobile-overlay__title,
.vgt-brave-mobile__edition,
.vgt-factcheck-card__content p,
.vgt-factcheck-card__sitte,
.vgt-laudation-card__quote,
.vgt-laudation-card__author span,
.vgt-archive-gate-card__lead,
.vgt-archive-gate-card__cta-hint,
.vgt-form-field label,
.vgt-screening-form label,
.vgt-search-placeholder,
.vgt-search-security-badge,
.vgt-section__view-all,
.vgt-tile small,
.vgt-section__count-badge,
.vgt-section__top-badge,
.vgt-hero__meta,
.vgt-hero__meta li,
.vgt-hero__chip,
.vgt-archive-stat span,
.vgt-wall-item__synopsis,
.vgt-wall-item__access,
.vgt-brave-wall__subtitle,
.vgt-brave-single__specs,
.vgt-brave-single__specs small,
.vgt-brave-single__credits,
.vgt-brave-single__credits small,
.vgt-timeline-node__desc,
.vgt-timeline-node__tag,
.vgt-brave-timeline__lead,
.vgt-brave-finale__copyright,
.vgt-brave-finale__quote,
.vgt-brave-finale__cite span,
.vgt-author-card__focus,
.vgt-author-card__life,
.vgt-honor-card__body,
.vgt-voice-card__desc,
.vgt-manifest-col p,
.vgt-brave-authors__lead,
.vgt-brave-voices__lead,
.vgt-brave-manifest__heading p,
.vgt-reader__text,
.vgt-reader__meta,
.vgt-screening-modal__film-notice,
.vgt-form-disclaimer,
.vgt-lang-modal__desc,
.vgt-lang-modal__hint,
.vgt-reel-card__year,
.vgt-continue-card__meta,
.vgt-brave-single__story p,
.vgt-brave-single__related p {
  color: #ffffff !important;
}

/* Eingabefelder + Platzhalter */
.vgt-form-field input,
.vgt-form-field select,
.vgt-form-field textarea,
.vgt-screening-form input,
.vgt-screening-form select,
.vgt-screening-form textarea,
.vgt-search-input {
  color: #ffffff !important;
}
.vgt-form-field ::placeholder,
.vgt-screening-form ::placeholder,
.vgt-search-input::placeholder {
  color: #ffffff !important;
  opacity: 0.75;
}

/* Absaetze/Listen im Fliesstext erben Weiss */
.vgt-app p,
.vgt-app li,
.vgt-app blockquote,
.vgt-app cite,
.vgt-app figcaption,
.vgt-app small,
.vgt-app label {
  color: #ffffff;
}

/* Nachzuegler: statische Sekundaertexte + Navigations-Icons */
.vgt-authors-edu-card__text,
.vgt-profile-gate__sub,
.vgt-profile-gate__item,
.vgt-profile-gate__manage,
.vgt-archive-gate-card__audience li,
.vgt-manifest-portrait-stage__caption p,
.vgt-brave-stage__number,
.vgt-related-card__year,
.vgt-reel-card__badge,
.vgt-single-gate-card__content p,
.vgt-brave-continue-card progress,
.vg-action-btn,
.vg-mobile-toggle,
.vgt-search-close,
.vgt-search-clear,
.vg-mobile-overlay__close {
  color: #ffffff !important;
}

/* ------------------------------------------------------------
   Rechtliche Seiten (Impressum / Datenschutz) + Footer-Rechtslinks
   ------------------------------------------------------------ */
.vgt-legal { padding: clamp(48px, 8vw, 96px) 0 96px; }
.vgt-legal .vg-container { max-width: 860px; }
.vgt-legal__head { margin-bottom: 32px; }
.vgt-legal__body { color: #fff; font-size: 1.02rem; line-height: 1.75; }
.vgt-legal__body h2 {
  font-family: 'Bitter', Georgia, 'Times New Roman', serif;
  font-weight: 700; font-size: 1.45rem; line-height: 1.25;
  margin: 40px 0 14px; color: #fff; text-transform: none;
}
.vgt-legal__body h3 {
  font-family: 'Bitter', Georgia, 'Times New Roman', serif;
  font-weight: 700; font-size: 1.15rem; margin: 28px 0 10px;
  color: #fff; text-transform: none;
}
.vgt-legal__body p,
.vgt-legal__body li { color: #fff; margin: 0 0 14px; }
.vgt-legal__body ul { padding-left: 22px; margin: 0 0 18px; }
.vgt-legal__body a { color: #f3d16b; text-decoration: underline; text-underline-offset: 3px; }
.vgt-legal__body a:hover { color: #fff; }
.vgt-legal__body strong,
.vgt-legal__body em { color: #fff; }
.vg-footer__copy { color: #fff !important; }
.vg-footer__legal {
  display: flex; gap: 10px; justify-content: center;
  margin: 10px 0 0; font-size: 0.8rem; color: #fff;
}
.vg-footer__legal a { color: #fff; text-decoration: underline; text-underline-offset: 3px; }
.vg-footer__legal a:hover { color: #f3d16b; }
.vg-source__legal {
  margin: 16px 0 0; display: flex; gap: 10px;
  justify-content: center; font-size: 0.85rem;
}
.vg-source__legal a { color: #f3d16b; text-decoration: underline; }
