/*
 * AF Kameramann 5.4.0
 * Ruhige Typografie + prominente Senderlogos.
 * Basis: unveränderte stabile 3.2.5 Struktur.
 */

:root {
  --af-font-ui: ui-rounded, "Trebuchet MS", "Segoe UI", Arial, sans-serif;
  --af-font-display: ui-rounded, "Trebuchet MS", "Segoe UI", Arial, sans-serif;

  --af-size-xs: 12.5px;
  --af-size-sm: 14.5px;
  --af-size-body: 17px;
  --af-size-lead: 20px;
  --af-size-h3: clamp(27px, 2.15vw, 36px);
  --af-size-h2: clamp(38px, 3.5vw, 56px);
  --af-size-h1: clamp(56px, 6vw, 92px);

  --af-weight-regular: 400;
  --af-weight-medium: 500;
  --af-weight-semi: 600;
  --af-weight-bold: 700;

  --af-line-body: 1.62;
  --af-line-tight: 1.06;

  --afkrs-chrome-font: var(--af-font-ui);
  --afkrs-contact-font: var(--af-font-ui);
  --afks-font: var(--af-font-ui);
  --afds-font: var(--af-font-ui);
}

/* Eine Schriftstimme auf der gesamten öffentlichen Oberfläche. */
body.afkrs-site-chrome-enabled,
body.afkrs-site-chrome-enabled .afks-section,
body.afkrs-site-chrome-enabled .afks-single,
body.afkrs-site-chrome-enabled .afkf-page,
body.afkrs-site-chrome-enabled #af-backstage-studio,
body.afkrs-contact-page,
body.afkrs-legal-page,
body.afkrs-sitemap-page,
body.afkrs-404-page {
  font-family: var(--af-font-ui) !important;
  font-size: var(--af-size-body);
  font-weight: var(--af-weight-regular);
  font-synthesis: none;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/* Überschriften: klar, aber nie wieder Black/Extra Black. */
body.afkrs-site-chrome-enabled :where(h1,h2,h3,h4,h5,h6),
body.afkrs-contact-page :where(h1,h2,h3,h4,h5,h6),
body.afkrs-legal-page :where(h1,h2,h3,h4,h5,h6),
body.afkrs-sitemap-page :where(h1,h2,h3,h4,h5,h6),
body.afkrs-404-page :where(h1,h2,h3,h4,h5,h6),
.afkf-page :where(h1,h2,h3,h4,h5,h6),
#af-backstage-studio :where(h1,h2,h3,h4,h5,h6) {
  font-family: var(--af-font-display) !important;
  font-weight: var(--af-weight-bold) !important;
  letter-spacing: -.025em !important;
  text-wrap: balance;
}

body.afkrs-site-chrome-enabled :where(p,li,dt,dd,figcaption),
body.afkrs-contact-page :where(p,li,dt,dd,figcaption),
body.afkrs-legal-page :where(p,li,dt,dd,figcaption),
body.afkrs-sitemap-page :where(p,li,dt,dd,figcaption),
body.afkrs-404-page :where(p,li,dt,dd,figcaption),
.afkf-page :where(p,li,dt,dd,figcaption),
#af-backstage-studio :where(p,li,dt,dd,figcaption) {
  font-family: var(--af-font-ui) !important;
  font-weight: var(--af-weight-regular) !important;
  line-height: var(--af-line-body) !important;
  letter-spacing: 0 !important;
}

body.afkrs-site-chrome-enabled :where(strong,b),
body.afkrs-contact-page :where(strong,b),
body.afkrs-legal-page :where(strong,b),
body.afkrs-sitemap-page :where(strong,b),
body.afkrs-404-page :where(strong,b),
.afkf-page :where(strong,b),
#af-backstage-studio :where(strong,b) {
  font-family: var(--af-font-ui) !important;
  font-weight: var(--af-weight-semi) !important;
}

body.afkrs-site-chrome-enabled :where(a,button,label,input,textarea,select,option),
body.afkrs-contact-page :where(a,button,label,input,textarea,select,option),
body.afkrs-legal-page :where(a,button,label,input,textarea,select,option),
body.afkrs-sitemap-page :where(a,button,label,input,textarea,select,option),
body.afkrs-404-page :where(a,button,label,input,textarea,select,option),
.afkf-page :where(a,button,label,input,textarea,select,option),
#af-backstage-studio :where(a,button,label,input,textarea,select,option) {
  font-family: var(--af-font-ui) !important;
}

body.afkrs-site-chrome-enabled small,
body.afkrs-contact-page small,
body.afkrs-legal-page small,
body.afkrs-sitemap-page small,
body.afkrs-404-page small,
.afkf-page small,
#af-backstage-studio small {
  font-family: var(--af-font-ui) !important;
  font-size: var(--af-size-xs) !important;
  font-weight: var(--af-weight-semi) !important;
  line-height: 1.4 !important;
}

/* Kleine Meta-Texte einheitlich. */
body.afkrs-site-chrome-enabled :where(
  [class*="kicker"],
  [class*="eyebrow"],
  [class*="meta"],
  [class*="label"]
) {
  font-family: var(--af-font-ui) !important;
  font-size: var(--af-size-xs) !important;
  font-weight: var(--af-weight-semi) !important;
  line-height: 1.4 !important;
  letter-spacing: .075em !important;
}

/* Header: präsent, aber nicht klobig. Struktur unverändert. */
.afkrs-site-brand-copy strong {
  font-family: var(--af-font-display) !important;
  font-size: 17.5px !important;
  font-weight: var(--af-weight-bold) !important;
  letter-spacing: 0 !important;
}
.afkrs-site-brand-copy small {
  font-family: var(--af-font-ui) !important;
  font-size: 10.5px !important;
  font-weight: var(--af-weight-semi) !important;
  letter-spacing: .14em !important;
}
.afkrs-site-nav a {
  min-height: 44px !important;
  padding-inline: 14px !important;
  font-family: var(--af-font-ui) !important;
  font-size: 14.5px !important;
  font-weight: var(--af-weight-semi) !important;
  letter-spacing: 0 !important;
}

/* Startseiten-Hierarchie: nur wenige feste Stufen. */
body.afkrs-home-polish .afkrs-home-hero h1 {
  font-size: var(--af-size-h1) !important;
  font-weight: var(--af-weight-bold) !important;
  line-height: .95 !important;
  letter-spacing: -.035em !important;
}
body.afkrs-home-polish .afkrs-home-hero :where(p,.et_pb_text_inner) {
  font-family: var(--af-font-ui) !important;
}
body.afkrs-home-polish :where(.et_pb_section h2,.afks-section h2) {
  font-size: var(--af-size-h2) !important;
  font-weight: var(--af-weight-bold) !important;
  line-height: 1.04 !important;
}
body.afkrs-home-polish :where(.et_pb_section h3,.afks-section h3) {
  font-size: var(--af-size-h3) !important;
  font-weight: var(--af-weight-bold) !important;
  line-height: 1.08 !important;
}
body.afkrs-home-polish .et_pb_section p {
  font-size: var(--af-size-body) !important;
  font-weight: var(--af-weight-regular) !important;
  line-height: var(--af-line-body) !important;
}

/* Buttons und Kartenlinks. */
body.afkrs-site-chrome-enabled :where(
  .et_pb_button,
  .afks-text-link,
  .afks-section-action a,
  .afks-section-action-light a,
  .afkf-button,
  .afkf-detail-link,
  .afkf-external-link
) {
  min-height: 44px;
  font-family: var(--af-font-ui) !important;
  font-size: var(--af-size-sm) !important;
  font-weight: var(--af-weight-semi) !important;
  letter-spacing: 0 !important;
}

/* ==========================================================
   Sender & Formate: Logos sind der Blickfang.
   Keine Bildquelle wird ersetzt, nur die vorhandenen Bilder skaliert.
   ========================================================== */
body.afkrs-home-polish .afkrs-sender-showcase .afkrs-sender-logo-tile {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  overflow: hidden !important;
}
body.afkrs-home-polish .afkrs-sender-showcase .afkrs-sender-logo {
  display: block !important;
  width: auto !important;
  height: auto !important;
  max-width: 86% !important;
  max-height: 78% !important;
  margin: 0 auto !important;
  object-fit: contain !important;
  filter: none !important;
  opacity: 1 !important;
  image-rendering: auto !important;
  transform-origin: center !important;
}
body.afkrs-home-polish .afkrs-sender-showcase .afkrs-sender-logo--orf { max-width: 88% !important; transform: scale(1.14); }
body.afkrs-home-polish .afkrs-sender-showcase .afkrs-sender-logo--servus { max-width: 90% !important; transform: scale(1.12); }
body.afkrs-home-polish .afkrs-sender-showcase .afkrs-sender-logo--rtl { max-width: 92% !important; transform: scale(1.16); }
body.afkrs-home-polish .afkrs-sender-showcase .afkrs-sender-logo--zdf { max-height: 84% !important; transform: scale(1.10); }
body.afkrs-home-polish .afkrs-sender-showcase .afkrs-sender-logo--prosieben { max-width: 100% !important; max-height: 100% !important; transform: scale(1.62); }
body.afkrs-home-polish .afkrs-sender-showcase .afkrs-sender-logo--atv { transform: scale(1.14); }
body.afkrs-home-polish .afkrs-sender-showcase .afkrs-sender-logo--vox { transform: scale(1.16); }
body.afkrs-home-polish .afkrs-sender-showcase .afkrs-sender-logo--ard { transform: scale(1.10); }
body.afkrs-home-polish .afkrs-sender-showcase .afkrs-sender-logo--srf { transform: scale(1.08); }
body.afkrs-home-polish .afkrs-sender-showcase .afkrs-sender-logo--dw { transform: scale(1.08); }

/* Senderlogos im Berufsweg größer, ohne zusätzliche weiße Pillen. */
body.afkrs-home-polish .afkrs-career-refresh .afkrs-career-logo-wrap {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 150px !important;
  min-width: 150px !important;
  height: 64px !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  overflow: visible !important;
}
body.afkrs-home-polish .afkrs-career-refresh .afkrs-career-logo {
  display: block !important;
  width: auto !important;
  height: auto !important;
  max-width: 136px !important;
  max-height: 48px !important;
  margin: 0 !important;
  object-fit: contain !important;
  filter: none !important;
  opacity: 1 !important;
}

/* Das ganze Bild: ORF/RTL sichtbar, ohne die Textchips zu dominieren. */
#af-ganzes-bild-v4 .afgb5-station img {
  width: auto !important;
  height: 30px !important;
  max-width: 96px !important;
  max-height: 30px !important;
  object-fit: contain !important;
}

/* Referenzen, Filme, Backstage: Senderlogos ebenfalls nicht winzig. */
.afks-reference-logo img {
  max-width: 90% !important;
  max-height: 104px !important;
  object-fit: contain !important;
}
.afks-sender-logo {
  width: 58px !important;
  height: 48px !important;
}
.afks-sender-logo img {
  max-width: 50px !important;
  max-height: 36px !important;
  object-fit: contain !important;
}
.afkf-card-brand img,
.afkf-logo-tile img {
  width: auto !important;
  max-width: 112px !important;
  max-height: 34px !important;
  object-fit: contain !important;
}
#af-backstage-studio .afba-lightbox-logo img,
.afks-lightbox-logo img {
  width: auto !important;
  max-width: 92px !important;
  max-height: 34px !important;
  object-fit: contain !important;
}

/* Berufsweg: dieselbe Typohierarchie in jeder Station. */
body.afkrs-home-polish .afkrs-career-refresh :where(p,li) {
  font-size: var(--af-size-body) !important;
  font-weight: var(--af-weight-regular) !important;
  line-height: 1.58 !important;
}
body.afkrs-home-polish .afkrs-career-refresh h3 {
  font-family: var(--af-font-display) !important;
  font-size: clamp(28px, 2.5vw, 38px) !important;
  font-weight: var(--af-weight-bold) !important;
  line-height: 1.06 !important;
}
body.afkrs-home-polish .afkrs-career-refresh :where(small,strong) {
  font-family: var(--af-font-ui) !important;
}

/* Kontakt: große ruhige Schrift, Formulare bewusst Regular. */
body.afkrs-contact-page .afkrs-contact-intro h1 {
  font-family: var(--af-font-display) !important;
  font-size: clamp(54px, 6vw, 82px) !important;
  font-weight: var(--af-weight-bold) !important;
  letter-spacing: -.03em !important;
}
body.afkrs-contact-page .afkrs-contact-lead {
  font-size: clamp(20px, 1.8vw, 26px) !important;
  font-weight: var(--af-weight-medium) !important;
  line-height: 1.38 !important;
  letter-spacing: 0 !important;
}
body.afkrs-contact-page .afkrs-contact-copy {
  font-size: var(--af-size-body) !important;
  font-weight: var(--af-weight-regular) !important;
  line-height: var(--af-line-body) !important;
}
body.afkrs-contact-page .afkrs-contact-direct small {
  font-size: var(--af-size-xs) !important;
  font-weight: var(--af-weight-semi) !important;
  letter-spacing: .08em !important;
}
body.afkrs-contact-page .afkrs-contact-direct strong {
  font-size: 16.5px !important;
  font-weight: var(--af-weight-semi) !important;
  letter-spacing: 0 !important;
}
body.afkrs-contact-page .afkrs-contact-form-head h2 {
  font-size: clamp(32px, 3vw, 44px) !important;
  font-weight: var(--af-weight-bold) !important;
}
body.afkrs-contact-page .afkrs-contact-form-wrap label {
  font-size: var(--af-size-sm) !important;
  font-weight: var(--af-weight-semi) !important;
}
body.afkrs-contact-page .afkrs-contact-form-wrap :where(
  input[type="text"], input[type="email"], input[type="tel"], input[type="url"],
  input[type="number"], select, textarea
) {
  font-family: var(--af-font-ui) !important;
  font-size: 16.5px !important;
  font-weight: var(--af-weight-regular) !important;
  line-height: 1.5 !important;
}
body.afkrs-contact-page .afkrs-contact-form-wrap .wpcf7-response-output,
body.afkrs-contact-page .afkrs-contact-form-wrap .wpcf7-not-valid-tip {
  font-size: 15px !important;
  font-weight: var(--af-weight-medium) !important;
}

/* Footer: klar kleiner als Lesetext, aber gut lesbar. */
.afkrs-site-footer {
  font-family: var(--af-font-ui) !important;
}
.afkrs-site-footer :where(p,a,li,dd,dt) {
  font-size: 14.5px !important;
  font-weight: var(--af-weight-regular) !important;
  line-height: 1.55 !important;
}
.afkrs-site-footer :where(h2,h3,strong) {
  font-weight: var(--af-weight-semi) !important;
}

/* Mobile: dieselbe Skala, nur kompakter. */
@media (max-width: 700px) {
  :root {
    --af-size-body: 16.5px;
    --af-size-sm: 14px;
    --af-size-h3: clamp(25px, 7vw, 32px);
    --af-size-h2: clamp(34px, 9vw, 46px);
    --af-size-h1: clamp(50px, 15vw, 72px);
  }

  .afkrs-site-nav a { font-size: 14px !important; }
  .afkrs-site-brand-copy strong { font-size: 17px !important; }

  body.afkrs-home-polish .afkrs-sender-showcase .afkrs-sender-logo {
    max-width: 90% !important;
    max-height: 80% !important;
  }
  body.afkrs-home-polish .afkrs-career-refresh .afkrs-career-logo-wrap {
    width: 96px !important;
    min-width: 96px !important;
    height: 44px !important;
  }
  body.afkrs-home-polish .afkrs-career-refresh .afkrs-career-logo {
    max-width: 90px !important;
    max-height: 34px !important;
  }
}

/* ==========================================================
   5.2.0 Feinschliff: Lesbarkeit, Blickfang-Logos, Feature-Titel
   ========================================================== */

/* Eine bewusst runde, lokal verfügbare Schrift ohne externen Font-Download. */
body.afkrs-site-chrome-enabled,
body.afkrs-site-chrome-enabled :where(p,li,a,button,label,input,textarea,select,option,small,strong,b),
body.afkrs-contact-page,
body.afkrs-contact-page :where(p,li,a,button,label,input,textarea,select,option,small,strong,b),
body.afkrs-legal-page,
body.afkrs-sitemap-page,
body.afkrs-404-page,
.afkf-page,
#af-backstage-studio {
  font-family: var(--af-font-ui) !important;
}

/* Fünf klare Typostufen statt vieler konkurrierender Größen. */
body.afkrs-site-chrome-enabled :where(p,li),
body.afkrs-contact-page :where(p,li),
.afkf-page :where(p,li),
#af-backstage-studio :where(p,li) {
  font-size: 17px !important;
  font-weight: 400 !important;
  line-height: 1.62 !important;
}

body.afkrs-site-chrome-enabled :where(button,.et_pb_button,.afks-text-link,.afkf-button),
body.afkrs-contact-page :where(button,label),
.afkrs-site-nav a {
  font-size: 14.5px !important;
  font-weight: 600 !important;
}

body.afkrs-site-chrome-enabled :where([class*="kicker"],[class*="eyebrow"],[class*="meta"]),
body.afkrs-contact-page :where([class*="kicker"],[class*="eyebrow"]),
.afkf-page :where([class*="kicker"],[class*="eyebrow"],[class*="meta"]) {
  font-size: 12.5px !important;
  font-weight: 600 !important;
  line-height: 1.4 !important;
}

/* Der lange Notarzthubschrauber-Titel darf nie mehr am rechten Rand abgeschnitten werden. */
body.afkrs-home-polish .afkrs-home-feature-card,
body.afkrs-home-polish .afkrs-home-feature-card :where(.et_pb_row,.et_pb_column,.et_pb_module,.et_pb_text,.et_pb_text_inner),
body.afkrs-home-polish .afkrs-home-feature-copy {
  min-width: 0 !important;
  max-width: 100% !important;
  overflow: visible !important;
}
body.afkrs-home-polish .afkrs-home-feature-title {
  width: 100% !important;
  max-width: 100% !important;
  font-size: clamp(32px, 2.45vw, 42px) !important;
  line-height: 1.08 !important;
  letter-spacing: -.025em !important;
  white-space: normal !important;
  overflow: visible !important;
  overflow-wrap: anywhere !important;
  word-break: normal !important;
  hyphens: auto !important;
  text-wrap: balance !important;
}

/* ProSieben statt des breiten Konzernlogos. */
body.afkrs-home-polish .afkrs-sender-showcase .afkrs-sender-logo--prosieben {
  max-width: 70% !important;
  max-height: 78% !important;
  transform: scale(1.18) !important;
}
img.afkrs-prosieben-logo {
  width: auto !important;
  max-width: 118px !important;
  max-height: 54px !important;
  object-fit: contain !important;
}

/* Berufsweg: Sender sind bewusst ein Blickfang, aber jede Station bleibt gleich aufgebaut. */
body.afkrs-home-polish .afkrs-career-refresh .afkrs-career-logo-wrap {
  width: 150px !important;
  min-width: 150px !important;
  height: 64px !important;
  padding: 8px 12px !important;
  border: 1px solid rgba(255,255,255,.13) !important;
  border-radius: 12px !important;
  background: rgba(255,255,255,.98) !important;
  overflow: hidden !important;
}
body.afkrs-home-polish .afkrs-career-refresh .afkrs-career-logo {
  width: auto !important;
  max-width: 132px !important;
  max-height: 46px !important;
  object-fit: contain !important;
}

/* Senderlogos in Referenzen, Filmen und Backstage etwas präsenter. */
.afks-reference-logo img { max-width: 94% !important; max-height: 118px !important; }
.afks-sender-logo { width: 66px !important; height: 54px !important; }
.afks-sender-logo img { max-width: 58px !important; max-height: 40px !important; }
.afkf-card-brand img,.afkf-logo-tile img { max-width: 124px !important; max-height: 38px !important; }
#af-backstage-studio .afba-lightbox-logo img,.afks-lightbox-logo img { max-width: 104px !important; max-height: 38px !important; }

/* Kontakt und Footer ruhig, nicht winzig und nicht extra fett. */
body.afkrs-contact-page .afkrs-contact-direct strong {
  font-size: 16.5px !important;
  font-weight: 600 !important;
}
.afkrs-site-footer :where(p,a,li) {
  font-size: 15px !important;
  font-weight: 400 !important;
  line-height: 1.55 !important;
}
.afkrs-site-footer :where(h2,h3,strong) {
  font-weight: 600 !important;
}

@media (max-width: 700px) {
  body.afkrs-home-polish .afkrs-career-refresh .afkrs-career-logo-wrap {
    width: 126px !important;
    min-width: 126px !important;
    height: 56px !important;
    padding: 7px 10px !important;
  }
  body.afkrs-home-polish .afkrs-career-refresh .afkrs-career-logo {
    max-width: 108px !important;
    max-height: 40px !important;
  }
  body.afkrs-home-polish .afkrs-home-feature-title {
    font-size: clamp(28px, 8.5vw, 38px) !important;
  }
}

/* ==========================================================
   5.4.0 Gesamtpolitur 2026
   Eine einzige Abschluss-Schicht fuer Startseite und Unterseiten.
   ========================================================== */

/* ----------------------------------------------------------
   STARTSEITE: Scrollen und grosse Teaser
   ---------------------------------------------------------- */
body.afkrs-chrome-home .afkrs-site-header {
  -webkit-backdrop-filter: none !important;
  backdrop-filter: none !important;
  background: #07111d !important;
  box-shadow: 0 5px 16px rgba(0,0,0,.12) !important;
  transform: none !important;
  will-change: auto !important;
}

body.afkrs-chrome-home .afkrs-site-header:not(.is-visible) {
  transform: translateY(calc(-100% - 12px)) !important;
}

html, body.afkrs-home-polish {
  scroll-behavior: auto !important;
}

/* Ganze untere Inhaltsabschnitte statt einzelner Bilder rendern lassen. */
@supports (content-visibility: auto) {
  body.afkrs-home-polish .afkrs-home-profile-section,
  body.afkrs-home-polish .afkrs-home-drehnews-section,
  body.afkrs-home-polish .afkrs-home-engagement-grid,
  body.afkrs-home-polish .afkrs-career-refresh {
    content-visibility: auto;
    contain-intrinsic-size: auto 850px;
  }
}

body.afkrs-home-polish img[loading="lazy"] {
  content-visibility: visible !important;
}

/* Notarzthubschrauber: WBR wird per JS innerhalb des Wortes gesetzt. */
body.afkrs-home-polish .afkrs-feature-unclip,
body.afkrs-home-polish .afkrs-home-feature-card,
body.afkrs-home-polish .afkrs-home-feature-copy {
  min-width: 0 !important;
  max-width: 100% !important;
  overflow: visible !important;
}

body.afkrs-home-polish .afkrs-home-feature-copy {
  padding-right: clamp(20px, 3vw, 46px) !important;
}

body.afkrs-home-polish .afkrs-home-feature-title,
body.afkrs-home-polish .afkrs-home-feature-card :is(h1,h2,h3,h4,h5),
body.afkrs-home-polish .afkrs-home-feature-copy :is(h1,h2,h3,h4,h5) {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  margin-right: 0 !important;
  padding-right: 0 !important;
  font-size: clamp(29px, 1.9vw, 35px) !important;
  font-weight: 700 !important;
  line-height: 1.11 !important;
  letter-spacing: -.025em !important;
  white-space: normal !important;
  overflow: visible !important;
  overflow-wrap: normal !important;
  word-break: normal !important;
  hyphens: none !important;
  text-wrap: balance !important;
}

body.afkrs-home-polish .afkrs-home-feature-title wbr {
  display: inline !important;
}

/* Berufsweg: Sender sichtbar, aber einheitlich. */
body.afkrs-home-polish .afkrs-career-refresh .afkrs-career-logo-wrap {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  box-sizing: border-box !important;
  width: 172px !important;
  min-width: 172px !important;
  height: 72px !important;
  padding: 8px 11px !important;
  border: 1px solid rgba(255,255,255,.15) !important;
  border-radius: 12px !important;
  background: #fff !important;
  overflow: hidden !important;
  box-shadow: none !important;
}

body.afkrs-home-polish .afkrs-career-refresh img.afkrs-career-logo {
  display: block !important;
  box-sizing: border-box !important;
  width: 146px !important;
  min-width: 146px !important;
  height: 50px !important;
  max-width: none !important;
  max-height: none !important;
  margin: 0 !important;
  object-fit: contain !important;
  filter: none !important;
  opacity: 1 !important;
  image-rendering: auto !important;
}

body.afkrs-home-polish .afkrs-career-refresh img.afkrs-career-logo--orf {
  width: 138px !important;
  min-width: 138px !important;
}
body.afkrs-home-polish .afkrs-career-refresh img.afkrs-career-logo--rtl {
  width: 150px !important;
  min-width: 150px !important;
}

/* ----------------------------------------------------------
   DREHNEWS ARCHIV: Vorschau lesbarer
   ---------------------------------------------------------- */
.afks-media-fallback b {
  font-size: clamp(52px, 5vw, 76px) !important;
  font-weight: 600 !important;
  letter-spacing: -.045em !important;
}
.afks-media-fallback small {
  font-size: 12px !important;
  font-weight: 600 !important;
  letter-spacing: .12em !important;
}
.afks-archive-badge {
  gap: 9px !important;
  padding: 7px 12px 7px 7px !important;
  border-radius: 11px !important;
  background: rgba(4,8,13,.94) !important;
  box-shadow: 0 7px 20px rgba(0,0,0,.20) !important;
}
.afks-archive-badge-logo {
  width: 68px !important;
  height: 34px !important;
  padding: 4px 6px !important;
}
.afks-archive-badge-logo img {
  max-width: 58px !important;
  max-height: 25px !important;
}
.afks-archive-badge strong {
  font-size: 13px !important;
  font-weight: 600 !important;
}
.afks-archive-badge em {
  font-size: 11px !important;
  font-weight: 500 !important;
  opacity: .86 !important;
}
.afks-archive-copy h2,
.afks-archive-copy h3 {
  font-weight: 700 !important;
}
.afks-archive-copy p {
  font-size: 16.5px !important;
  font-weight: 400 !important;
  line-height: 1.62 !important;
}

/* ----------------------------------------------------------
   /dreharbeiten/
   ---------------------------------------------------------- */
.afks-archive {
  --afks-font: var(--af-font-ui) !important;
  font-family: var(--af-font-ui) !important;
}
.afks-archive-hero {
  min-height: 400px !important;
  padding-top: clamp(70px, 7vw, 102px) !important;
  padding-bottom: clamp(48px, 5.5vw, 70px) !important;
}
.afks-archive h1 {
  max-width: 760px !important;
  font-size: clamp(46px, 5vw, 72px) !important;
  font-weight: 700 !important;
  line-height: 1 !important;
  letter-spacing: -.035em !important;
}
.afks-archive-lead {
  max-width: 690px !important;
  font-size: clamp(17px, 1.3vw, 20px) !important;
  font-weight: 400 !important;
  line-height: 1.6 !important;
}
.afks-archive-kicker,
.afks-archive-search > span:first-child,
.afks-archive-select > span:first-child,
.afks-sender-filter-head span {
  font-size: 12.5px !important;
  font-weight: 600 !important;
}
.afks-archive-glance,
.afks-archive-filter-shell {
  -webkit-backdrop-filter: none !important;
  backdrop-filter: none !important;
  box-shadow: 0 10px 30px rgba(26,31,38,.06) !important;
}
.afks-archive-filter-shell {
  padding: 20px !important;
  border-radius: 20px !important;
  background: #fff !important;
}
.afks-archive-searchbox input,
.afks-archive-select select,
.afks-archive-submit {
  min-height: 50px !important;
  border-radius: 13px !important;
  font-size: 15.5px !important;
  font-weight: 500 !important;
}
.afks-archive-submit {
  font-size: 14px !important;
  font-weight: 600 !important;
  box-shadow: none !important;
}
.afks-sender-chip {
  grid-template-columns: 62px minmax(80px,auto) auto !important;
  min-height: 68px !important;
  padding: 7px 13px 7px 7px !important;
  border-radius: 16px !important;
  box-shadow: none !important;
}
.afks-sender-logo {
  width: 62px !important;
  height: 52px !important;
  border-radius: 11px !important;
}
.afks-sender-logo img {
  width: 52px !important;
  height: 40px !important;
  max-width: 52px !important;
  max-height: 40px !important;
  object-fit: contain !important;
}
.afks-sender-name {
  font-size: 14px !important;
  font-weight: 600 !important;
}
.afks-archive-card,
.afks-archive-card:hover {
  transform: none !important;
  box-shadow: 0 10px 28px rgba(25,31,38,.06) !important;
}
.afks-archive-media > img,
.afks-archive-card:hover .afks-archive-media > img {
  transform: none !important;
  transition: none !important;
}

/* ----------------------------------------------------------
   BACKSTAGE
   ---------------------------------------------------------- */
#af-backstage-studio .afba-hero-inner {
  min-height: min(650px, 74vh) !important;
  padding: 88px 0 64px !important;
}
#af-backstage-studio .afba-hero h1 {
  font-size: clamp(52px, 7vw, 96px) !important;
  font-weight: 700 !important;
  line-height: .95 !important;
  letter-spacing: -.045em !important;
}
#af-backstage-studio .afba-kicker,
#af-backstage-studio .afba-card-meta,
#af-backstage-studio .afba-filter-form label > span:first-child,
#af-backstage-studio .afba-per-page > span,
#af-backstage-studio .afba-stats span,
#af-backstage-studio .afba-active > span,
#af-backstage-studio .afba-lightbox-facts small {
  font-size: 12.5px !important;
  font-weight: 600 !important;
}
#af-backstage-studio .afba-lead,
#af-backstage-studio .afba-intro > div:first-child > p:last-child,
#af-backstage-studio .afba-results-head p,
#af-backstage-studio .afba-lightbox-copy > p {
  font-weight: 400 !important;
  line-height: 1.62 !important;
}
#af-backstage-studio .afba-intro h2,
#af-backstage-studio .afba-results-head h2 {
  font-size: clamp(36px, 4vw, 54px) !important;
  font-weight: 700 !important;
  letter-spacing: -.035em !important;
}
#af-backstage-studio .afba-filter {
  transition: none !important;
  filter: none !important;
}
#af-backstage-studio .afba-filter input,
#af-backstage-studio .afba-filter select,
#af-backstage-studio .afba-per-page select {
  font-size: 15px !important;
  font-weight: 500 !important;
}
#af-backstage-studio .afba-submit,
#af-backstage-studio .afba-reset,
#af-backstage-studio .afba-button,
#af-backstage-studio .afba-pagination button,
#af-backstage-studio .afba-post-link {
  font-size: 14px !important;
  font-weight: 600 !important;
}
#af-backstage-studio .afba-card-title {
  font-size: clamp(17px, 1.35vw, 21px) !important;
  font-weight: 700 !important;
  line-height: 1.18 !important;
}
#af-backstage-studio .afba-card:hover img {
  filter: none !important;
  transform: none !important;
}
#af-backstage-studio .afba-lightbox-copy h2,
#af-backstage-studio .afba-lightbox-copy h2.is-long,
#af-backstage-studio .afba-lightbox-copy h2.is-very-long {
  font-weight: 700 !important;
}

/* ----------------------------------------------------------
   FILME UND BERICHTE
   ---------------------------------------------------------- */
.afkf-page {
  font-family: var(--af-font-ui) !important;
}
.afkf-hero {
  min-height: clamp(460px, 58vh, 640px) !important;
}
.afkf-hero h1 {
  max-width: 820px !important;
  font-size: clamp(46px, 5vw, 72px) !important;
  font-weight: 700 !important;
  line-height: 1 !important;
}
.afkf-kicker,
.afkf-filters label > span,
.afkf-card-media > small,
.afkf-detail-brand > span:not(.afkf-logo-tile) {
  font-size: 12.5px !important;
  font-weight: 600 !important;
}
.afkf-lead,
.afkf-card p,
.afkf-section-head p,
.afkf-detail-article p {
  font-weight: 400 !important;
  line-height: 1.62 !important;
}
.afkf-featured-head h2,
.afkf-section-head h2 {
  font-size: clamp(34px, 3.4vw, 50px) !important;
  font-weight: 700 !important;
}
.afkf-button,
.afkf-featured-head > a,
.afkf-filters button,
.afkf-reset,
.afkf-type-tabs a,
.afkf-detail-link,
.afkf-external-link {
  font-size: 14px !important;
  font-weight: 600 !important;
}
.afkf-filters {
  border-radius: 20px !important;
  box-shadow: none !important;
}
.afkf-filters input,
.afkf-filters select {
  font-size: 15px !important;
  font-weight: 500 !important;
}
.afkf-card,
.afkf-card:hover {
  transform: none !important;
  box-shadow: 0 12px 34px rgba(0,0,0,.14) !important;
}
.afkf-card-brand img,
.afkf-logo-tile img {
  filter: none !important;
  opacity: 1 !important;
}

/* ----------------------------------------------------------
   KONTAKT
   ---------------------------------------------------------- */
body.afkrs-contact-page .afkrs-contact-hero {
  padding-top: clamp(52px, 6vw, 82px) !important;
  padding-bottom: clamp(56px, 6vw, 86px) !important;
}
body.afkrs-contact-page .afkrs-contact-intro h1 {
  font-size: clamp(50px, 6vw, 82px) !important;
  font-weight: 700 !important;
  letter-spacing: -.04em !important;
}
body.afkrs-contact-page .afkrs-contact-kicker,
body.afkrs-contact-page .afkrs-contact-form-head p,
body.afkrs-contact-page .afkrs-contact-direct small {
  font-size: 12.5px !important;
  font-weight: 600 !important;
}
body.afkrs-contact-page .afkrs-contact-lead {
  font-size: clamp(20px, 2vw, 28px) !important;
  font-weight: 600 !important;
  line-height: 1.3 !important;
}
body.afkrs-contact-page .afkrs-contact-copy {
  font-size: 17px !important;
  font-weight: 400 !important;
  line-height: 1.65 !important;
}
body.afkrs-contact-page .afkrs-contact-direct strong {
  font-size: 16.5px !important;
  font-weight: 600 !important;
}
body.afkrs-contact-page .afkrs-contact-form-card {
  border-radius: 24px !important;
  box-shadow: 0 22px 54px rgba(0,0,0,.22) !important;
}
body.afkrs-contact-page .afkrs-contact-form-head h2 {
  font-size: clamp(30px, 2.8vw, 40px) !important;
  font-weight: 700 !important;
}
body.afkrs-contact-page .afkrs-contact-form-wrap label {
  font-size: 14.5px !important;
  font-weight: 600 !important;
}
body.afkrs-contact-page .afkrs-contact-form-wrap :is(input[type="text"],input[type="email"],input[type="tel"],input[type="url"],input[type="number"],select,textarea) {
  font-family: var(--af-font-ui) !important;
  font-size: 16px !important;
  font-weight: 400 !important;
  line-height: 1.5 !important;
}

/* ----------------------------------------------------------
   IMPRESSUM / DATENSCHUTZ
   ---------------------------------------------------------- */
body.afkrs-legal-page .afkrs-legal-hero {
  padding-top: 132px !important;
  padding-bottom: 62px !important;
}
body.afkrs-legal-page .afkrs-legal-hero h1 {
  font-size: clamp(44px, 5vw, 68px) !important;
  font-weight: 700 !important;
  letter-spacing: -.035em !important;
  text-shadow: none !important;
}
body.afkrs-legal-page .afkrs-legal-kicker,
body.afkrs-legal-page .afkrs-legal-section-number,
body.afkrs-legal-page .afkrs-legal-card-label {
  font-size: 12.5px !important;
  font-weight: 600 !important;
}
body.afkrs-legal-page .afkrs-legal-jump a,
body.afkrs-legal-page .afkrs-rights-actions a {
  font-size: 14px !important;
  font-weight: 600 !important;
}
body.afkrs-legal-page .afkrs-legal-contact-card {
  -webkit-backdrop-filter: none !important;
  backdrop-filter: none !important;
  box-shadow: 0 12px 32px rgba(8,18,29,.06) !important;
}
body.afkrs-legal-page .afkrs-legal-contact-card > a {
  font-size: 14px !important;
  font-weight: 600 !important;
  white-space: normal !important;
  overflow-wrap: anywhere !important;
}
body.afkrs-legal-page .afkrs-legal-content {
  max-width: 78ch !important;
}
body.afkrs-legal-page .afkrs-legal-content p,
body.afkrs-legal-page .afkrs-legal-content li {
  font-size: 16.5px !important;
  font-weight: 400 !important;
  line-height: 1.7 !important;
}
body.afkrs-legal-page .afkrs-legal-content h2 {
  font-weight: 700 !important;
}
body.afkrs-legal-page .afkrs-legal-content h3,
body.afkrs-legal-page .afkrs-rights-accordion summary {
  font-weight: 600 !important;
}

/* Sitemap und 404 folgen derselben ruhigen Logik. */
body.afkrs-sitemap-page :where(h1,h2,h3),
body.afkrs-404-page :where(h1,h2,h3) {
  font-weight: 700 !important;
}
body.afkrs-sitemap-page :where(p,a,li,button),
body.afkrs-404-page :where(p,a,li,button) {
  font-weight: 400 !important;
}
body.afkrs-sitemap-page :where(a,button),
body.afkrs-404-page :where(a,button) {
  font-size: 14px !important;
}

/* Mobile */
@media (max-width: 900px) {
  body.afkrs-home-polish .afkrs-home-feature-title,
  body.afkrs-home-polish .afkrs-home-feature-card :is(h1,h2,h3,h4,h5),
  body.afkrs-home-polish .afkrs-home-feature-copy :is(h1,h2,h3,h4,h5) {
    font-size: clamp(27px, 6vw, 34px) !important;
  }
  .afks-archive-hero { min-height: auto !important; }
  .afks-archive-hero-layout { grid-template-columns: 1fr !important; gap: 28px !important; }
  .afks-archive-tools { grid-template-columns: 1fr 1fr !important; }
  .afks-archive-search { grid-column: 1 / -1 !important; }
  body.afkrs-contact-page .afkrs-contact-hero-grid { grid-template-columns: 1fr !important; }
  body.afkrs-legal-page .afkrs-legal-layout { grid-template-columns: 1fr !important; gap: 32px !important; }
  body.afkrs-legal-page .afkrs-legal-aside { position: static !important; }
}

@media (max-width: 700px) {
  body.afkrs-home-polish .afkrs-career-refresh .afkrs-career-logo-wrap {
    width: 142px !important;
    min-width: 142px !important;
    height: 60px !important;
    padding: 6px 8px !important;
  }
  body.afkrs-home-polish .afkrs-career-refresh img.afkrs-career-logo {
    width: 122px !important;
    min-width: 122px !important;
    height: 42px !important;
  }
  .afks-archive-tools { grid-template-columns: 1fr !important; }
  .afks-archive-search { grid-column: auto !important; }
  .afks-sender-chip { grid-template-columns: 56px minmax(72px,auto) auto !important; min-height: 62px !important; }
  .afks-sender-logo { width: 56px !important; height: 46px !important; }
  .afks-sender-logo img { width: 46px !important; height: 34px !important; max-width: 46px !important; max-height: 34px !important; }
  #af-backstage-studio .afba-hero-inner { min-height: 520px !important; }
  #af-backstage-studio .afba-hero h1 { font-size: clamp(44px, 13vw, 66px) !important; }
  .afkf-hero h1 { font-size: clamp(42px, 12vw, 60px) !important; }
  body.afkrs-legal-page .afkrs-legal-hero { padding-top: 110px !important; }
}

@media (prefers-reduced-motion: reduce) {
  body.afkrs-home-polish *,
  .afks-archive *,
  #af-backstage-studio *,
  .afkf-page * {
    scroll-behavior: auto !important;
    transition-duration: .01ms !important;
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
  }
}
