/* Sonariva TV 4.3.3. Shared identity for standalone and embedded signal documents.
   All live markup, data attributes and player layers belong to Sonariva TV Live.
   Layout bands participate in normal flow, so optional tickers never overlap. */
:root {
  color-scheme: light;
  --stv43-paper: #f7f5fa;
  --stv43-ink: #24334a;
  --stv43-muted: #57677c;
  --stv43-line: #d6dee9;
  --stv43-blue: #cee4f1;
  --stv43-lilac: #e2daf3;
  --stv43-pink: #f2d5e2;
  --stv43-mint: #d7e9df;
  --stv43-u: min(1vw, 1.7777778vh);
  /* Two close alpha shadows; the 16:9 unit keeps small embedded logos crisp. */
  --stv43-logo-shadow: drop-shadow(0 calc(.08 * var(--stv43-u)) calc(.085 * var(--stv43-u)) #24334abf) drop-shadow(0 calc(.18 * var(--stv43-u)) calc(.22 * var(--stv43-u)) #24334a73);
  --stv43-logo-shadow-large: drop-shadow(0 calc(.12 * var(--stv43-u)) calc(.16 * var(--stv43-u)) #24334abf) drop-shadow(0 calc(.4 * var(--stv43-u)) calc(.65 * var(--stv43-u)) #24334a70);
  --stv-navy: #24334a;
  --stv-navy-deep: #1e2c42;
  --stv-cream: #f7f5fa;
  --stv-white: #fff;
  --stv-blue: #cee4f1;
  --stv-blue-light: #e6edf6;
  --stv-coral: #e6b4cb;
  --stv2-paper: #f7f5fa;
  --stv2-cream: #f7f5fa;
  --stv2-coral: #e6b4cb;
  --stv2-blue: #cee4f1;
  --stv2-muted: #57677c;
}
html, body { background: #eff1f6 !important; color: var(--stv43-ink) !important; }
body { font-family: "Avenir Next", Avenir, "Segoe UI", Arial, sans-serif !important; }
.stv-broadcast, .stv-topic, .stv2-broadcast {
  display: flex !important;
  flex-direction: column;
  background: linear-gradient(145deg, #f7f5fa, #e9eff6) !important;
  color: var(--stv43-ink);
}
.stv-broadcast::after, .stv-topic::before, .stv2-broadcast::after {
  border: 0 !important; box-shadow: none !important; opacity: .15;
}
.stv-topic__ambient, .stv2-ambient, .stv2-dots, .stv2-rings, .stv2-scan { opacity: .12 !important; pointer-events: none; }
.stv-topic[data-channel="2"] { --channel-accent: #e7b6cf !important; --channel-accent-two: #e2daf3 !important; }
.stv-topic[data-channel="3"] { --channel-accent: #c7e4de !important; --channel-accent-two: #cee4f1 !important; }
.stv-topic[data-channel="4"] { --channel-accent: #efd1cb !important; --channel-accent-two: #f2dfc9 !important; }
.stv-topic[data-channel="5"] { --channel-accent: #d0e6d7 !important; --channel-accent-two: #cde0f1 !important; }
.stv-topic[data-channel="6"] { --channel-accent: #ded3f3 !important; --channel-accent-two: #f2d5e2 !important; }
.stv-topic[data-channel="8"] { --channel-accent: #d4e3ee !important; --channel-accent-two: #e5d9ef !important; }

/* The three groups share a single baseline. Date and clock stay centered. */
header.stv-signal-header, header.stv-signal-header.stv2-header,
html.sonariva-tv-layout header.stv-signal-header.stv2-header {
  position: relative !important;
  flex: 0 0 14% !important;
  top: auto !important; right: auto !important; bottom: auto !important; left: auto !important;
  width: 100% !important; height: 14% !important; min-height: 0 !important;
  grid-template-columns: minmax(0, 1.15fr) minmax(0, .86fr) minmax(0, 1.15fr) !important;
  padding: 0 2.1% !important;
  border: 0 !important; border-bottom: 1px solid var(--stv43-line) !important;
  border-radius: 0 !important; background: transparent !important;
  box-shadow: none !important; color: var(--stv43-ink) !important;
  backdrop-filter: none !important; -webkit-backdrop-filter: none !important;
  --stv-header-accent: #53758c;
}
.stv-signal-header > .stv-signal-header__brand {
  grid-template-columns: calc(8.2 * var(--stv43-u)) minmax(0, 1fr) !important;
  column-gap: calc(.8 * var(--stv43-u)) !important;
}
.stv-signal-header__brand > img {
  width: calc(8.2 * var(--stv43-u)) !important; height: calc(6.1 * var(--stv43-u)) !important;
  object-fit: contain !important; filter: var(--stv43-logo-shadow) !important;
  padding: 0 !important;
  background: transparent !important; border: 0 !important; border-radius: 0 !important;
  box-shadow: none !important;
}
.stv-signal-header__number { flex-wrap: wrap; gap: calc(.3 * var(--stv43-u)) calc(.42 * var(--stv43-u)); }
.stv-signal-header__number > span { font-size: calc(.64 * var(--stv43-u)) !important; color: #506780 !important; }
.stv-signal-header__number > strong {
  width: calc(2.8 * var(--stv43-u)) !important; height: calc(2.1 * var(--stv43-u)) !important;
  background: var(--stv43-blue) !important; color: #294d65 !important;
  font-size: calc(1.2 * var(--stv43-u)) !important; border-radius: calc(.6 * var(--stv43-u)) !important;
}
header.stv-signal-header[data-header-channel="2"] .stv-signal-header__number > strong {
  background: #f2d5e2 !important; color: #883c66 !important;
}
.stv-signal-header__number > .stv-signal-header__name {
  flex-basis: 100%; padding-top: calc(.25 * var(--stv43-u)); color: #24334a !important;
  font-size: calc(.92 * var(--stv43-u)) !important; letter-spacing: -.01em !important; line-height: 1.2 !important;
}
.stv-signal-header__brand > .stv-signal-header__topic {
  font-size: calc(.56 * var(--stv43-u)) !important; line-height: 1.35 !important;
  letter-spacing: .01em !important; color: #57677c !important;
}
.stv-signal-header__clock { gap: calc(.28 * var(--stv43-u)) !important; text-align: center !important; }
.stv-signal-header__clock-line > strong {
  font-size: calc(2.05 * var(--stv43-u)) !important; line-height: 1 !important;
  letter-spacing: -.035em !important; color: #24334a !important;
}
.stv-signal-header__clock > time {
  font-size: calc(.71 * var(--stv43-u)) !important; line-height: 1.25 !important;
  letter-spacing: .025em !important; color: #57677c !important; white-space: nowrap !important;
}
.stv-signal-header__weather { border-color: var(--stv43-line) !important; }
.stv-signal-header__weather > strong { color: #34465e !important; font-size: calc(.74 * var(--stv43-u)) !important; }
.stv-signal-header__weather > span { color: #57677c !important; font-size: calc(.55 * var(--stv43-u)) !important; }
.stv-signal-header__contacts > .stv-signal-header__contact {
  justify-content: center; border: 1px solid var(--stv43-line) !important;
  background: #edf2f8 !important; color: var(--stv43-ink) !important;
  border-radius: calc(.75 * var(--stv43-u)) !important; box-shadow: none !important;
}
.stv-signal-header__contacts > .stv-signal-header__contact.is-instagram { background: #f1eaf5 !important; }
.stv-signal-header__contact > i { background: #d5e9de !important; color: #385749 !important; transform: none !important; }
.stv-signal-header__contact.is-instagram > i { background: #e8d8ed !important; color: #75516b !important; }
.stv-signal-header__contact strong { color: #34465e !important; font-size: calc(.82 * var(--stv43-u)) !important; line-height: 1.2 !important; }
.stv-signal-header__contact small { color: #57677c !important; font-size: calc(.45 * var(--stv43-u)) !important; line-height: 1.2 !important; }
header.stv-signal-header .stv-signal-header__event { margin-top: calc(.18 * var(--stv43-u)) !important; }
header.stv-signal-header .stv-signal-header__event strong,
header.stv-signal-header .stv-signal-header__event time { color: #6a527f !important; text-shadow: none !important; }
header.stv-signal-header .stv-signal-header__event span { color: #57677c !important; }

/* A flexible centre leaves an independent row for each service band. */
.stv-broadcast > .stv-content {
  position: relative !important; flex: 1 1 0 !important; min-height: 0 !important;
  height: auto !important; grid-template-columns: minmax(0, 2.08fr) minmax(0, 1fr) !important;
  grid-template-rows: minmax(0, 1fr) !important;
  gap: calc(1.1 * var(--stv43-u)) !important;
  padding: calc(1.1 * var(--stv43-u)) 2.1% !important;
}
.stv-broadcast > .stv-content > *, .stv-topic__layout > * { min-height: 0 !important; min-width: 0 !important; }
.stv-lead, .stv-topic__lead {
  border: 1px solid #ced8e5 !important; border-radius: calc(1.5 * var(--stv43-u)) !important;
  background: #24334a !important; box-shadow: 0 calc(.4 * var(--stv43-u)) calc(1.2 * var(--stv43-u)) #263b5212 !important;
}
.stv-lead-shade, .stv-topic__shade {
  background: linear-gradient(0deg, rgba(25,38,59,.95), rgba(25,38,59,.56) 50%, rgba(25,38,59,.06)) !important;
}
.stv-lead-content {
  max-width: 100% !important; padding: 5% !important;
  justify-content: flex-end !important; align-items: flex-start !important;
}
.stv-lead h1, .stv-topic__copy h1 {
  color: #fff !important; font-size: calc(2.65 * var(--stv43-u)) !important; line-height: 1.12 !important;
  letter-spacing: -.035em !important; font-weight: 800 !important; text-transform: none !important;
  max-width: 96% !important; margin: 0 !important; text-wrap: balance;
}
.stv-lead p, .stv-topic__copy p { color: #e8eef7 !important; font-size: calc(1.05 * var(--stv43-u)) !important; line-height: 1.4 !important; font-weight: 500 !important; }
.stv-lead-content small, .stv-topic__copy > div { color: #e0e8f4 !important; font-size: calc(.7 * var(--stv43-u)) !important; }
.stv-eyebrow, .stv-topic__copy > span {
  color: #273952 !important; background: #dce7f3 !important; border: 0 !important;
  border-radius: calc(.6 * var(--stv43-u)) !important;
  padding: calc(.4 * var(--stv43-u)) calc(.65 * var(--stv43-u)) !important;
  font-size: calc(.7 * var(--stv43-u)) !important; letter-spacing: .055em !important;
}
.stv-eyebrow::before { background: #749e8a !important; box-shadow: none !important; }
.stv-info-dock { display: flex !important; flex-direction: column !important; background: none !important; overflow: hidden; }
.stv-info-dock > .stv-lottery-dock { flex: 1 1 auto; min-height: 0; }
.stv-lottery-dock, .stv-topic__card {
  border: 1px solid #d5deeb !important; border-radius: calc(1.4 * var(--stv43-u)) !important;
  background: #fcfbfd !important; color: #24334a !important; box-shadow: none !important;
  padding: calc(1 * var(--stv43-u)) !important; overflow: hidden;
}
.stv-lottery-dock > header, .stv-topic__card > header {
  color: #3d4e67 !important; border-bottom: 1px solid #dce3ee !important;
  padding-bottom: calc(.6 * var(--stv43-u)) !important;
}
.stv-lottery-dock > header span, .stv-topic__card > header span { color: #3d4e67 !important; font-size: calc(.88 * var(--stv43-u)) !important; letter-spacing: .035em !important; font-weight: 750 !important; }
.stv-lottery-dock > header small, .stv-topic__card > header small { color: #57677c !important; background: #e8eef7 !important; font-size: calc(.55 * var(--stv43-u)) !important; }
.stv-lottery-card, .stv-info-dock-row {
  background: #edf3f8 !important; border: 1px solid #dce5ef !important;
  border-radius: calc(.9 * var(--stv43-u)) !important; box-shadow: none !important;
}
.stv-lottery-card.is-bonoloto, .stv-info-dock-row:nth-child(even) { background: #f0eaf7 !important; }
.stv-lottery-card strong, .stv-info-dock-row > strong, .stv-topic__card strong, .stv-topic__card h2 { color: #293e56 !important; }
.stv-info-dock-row > strong { line-height: 1.22 !important; }
.stv-lottery-card span, .stv-info-dock-row > span { color: #496078 !important; }
.stv-lottery-card time, .stv-info-dock-row > small, .stv-topic__card p,
.stv-lottery-legal, .stv-info-dock-footer, .stv-lottery-live-extra small { color: #596a7f !important; }
.stv-lottery-live-numbers { justify-content: center !important; }
.stv-lottery-live-numbers b { color: #354b65 !important; background: #dbe7f3 !important; box-shadow: none !important; width: calc(3.1 * var(--stv43-u)) !important; height: calc(3.1 * var(--stv43-u)) !important; font-size: calc(1.3 * var(--stv43-u)) !important; font-weight: 750 !important; }
.stv-lottery-live-extra b { color: #69466b !important; background: #ecdcee !important; box-shadow: none !important; }
.stv-info-dock-row > span, .stv-info-dock-row > small { font-size: calc(.67 * var(--stv43-u)) !important; }

/* Each band occupies its own row, respecting hidden states set by the player. */
.stv-broadcast > .stv-data-bands,
.stv-broadcast > .stv-extra-ticker,
.stv-broadcast > .stv-breaking-ticker {
  position: relative !important; inset: auto !important;
  flex: 0 0 5% !important; height: 5% !important; min-height: 0 !important;
  width: 100% !important; margin: 0 !important; border-radius: 0 !important;
  border: 0 !important; border-top: 1px solid #d0daea !important;
  box-shadow: none !important; padding: 0 !important;
}
.stv-broadcast > .stv-data-bands { grid-template-rows: minmax(0, 1fr) !important; background: #e8eef6 !important; }
.stv-broadcast > .stv-data-bands[hidden],
.stv-broadcast > .stv-breaking-ticker[hidden],
.stv-broadcast > .stv-extra-ticker[hidden] { display: none !important; }
.stv-data-band { background: #e8eef6 !important; border: 0 !important; }
.stv-data-label { color: #334b66 !important; background: #d4e3f0 !important; box-shadow: none !important; justify-content: center !important; text-align: center !important; }
.stv-data-label small { color: #53667d !important; }
.stv-data-item strong, .stv-data-item span,
.stv-score-band-line span.stv-score-band-team { color: #31475f !important; font-size: calc(.87 * var(--stv43-u)) !important; }
.stv-score-band-value { color: #35425f !important; background: #dce0ef !important; }
.stv-broadcast > .stv-extra-ticker { color: #2d4058 !important; background: #e4dfef !important; font-size: calc(1 * var(--stv43-u)) !important; letter-spacing: .015em !important; }
.stv-extra-ticker > strong { color: #374459 !important; background: #d7cfe9 !important; justify-content: center !important; font-size: calc(.76 * var(--stv43-u)) !important; }
.stv-extra-ticker-entry b { color: #4d526e !important; background: #f7f5fa !important; font-size: calc(.74 * var(--stv43-u)) !important; }
.stv-extra-ticker-entry small { color: #59687c !important; font-size: calc(.7 * var(--stv43-u)) !important; }
.stv-extra-ticker-window i { color: #877199 !important; }
.stv-broadcast > .stv-breaking-ticker { color: #603f55 !important; background: #f4e0e9 !important; font-size: calc(1 * var(--stv43-u)) !important; }
.stv-breaking-ticker > strong { color: #64334e !important; background: #ebcade !important; font-size: calc(.77 * var(--stv43-u)) !important; }
.stv-ticker-window, .stv-extra-ticker-window { flex: 1 1 auto; min-width: 0; }
.stv-data-window, .stv-ticker-window, .stv-extra-ticker-window { align-self: stretch; display: flex; align-items: center; }
.stv-controls { bottom: 11% !important; border-color: #cad7e5 !important; background: #edf2f9f5 !important; color: #2d4058 !important; }
.stv-controls button, .stv-controls small { color: #344961 !important; }

/* Topic channels keep the image, the three service cards and ticker visible. */
.stv-topic > .stv-topic__layout {
  flex: 1 1 0 !important; height: auto !important; min-height: 0 !important;
  display: grid !important; grid-template-columns: minmax(0, 2.08fr) minmax(0, 1fr) !important;
  grid-template-rows: minmax(0, 1fr) !important; gap: calc(1.1 * var(--stv43-u)) !important;
  padding: calc(1.1 * var(--stv43-u)) 2.1% !important; background: none !important;
}
.stv-topic__rail { min-height: 0 !important; gap: calc(.75 * var(--stv43-u)) !important; background: none !important; border: 0 !important; border-radius: 0 !important; }
.stv-topic__card { text-align: left !important; }
.stv-topic__weather-card > div { justify-content: center !important; text-align: center; }
.stv-topic__weather-card h2, .stv-topic__weather-card > p { text-align: center !important; }
.stv-topic__context-card p, .stv-topic__radio-card p { font-size: calc(.83 * var(--stv43-u)) !important; line-height: 1.4 !important; }
.stv-topic__context-card #stvTopicContext p { background: #edf1f8 !important; }
.stv-topic__context-card #stvTopicContext p span { color: #596a7f !important; font-size: calc(.7 * var(--stv43-u)) !important; }
.stv-topic__context-card #stvTopicContext p strong { color: #344b64 !important; font-size: calc(.9 * var(--stv43-u)) !important; }
.stv-topic__radio-card > strong { font-size: calc(1.15 * var(--stv43-u)) !important; line-height: 1.2 !important; }
.stv-topic__copy { padding: 5% !important; }
.stv-topic__copy a { color: #dbe7f3 !important; }
.stv-topic > .stv-topic__footer {
  position: relative !important; inset: auto !important; flex: 0 0 7% !important;
  height: 7% !important; min-height: 0 !important;
  border: 0 !important; border-top: 1px solid var(--stv43-line) !important;
  background: #e5dfef !important; color: #354962 !important;
}
.stv-topic__live { color: #354962 !important; background: #d9d1e9 !important; box-shadow: none !important; }
.stv-topic__live strong, .stv-topic__live span { color: #354962 !important; }
.stv-topic__ticker { color: #354962 !important; background: none !important; border: 0 !important; border-radius: 0 !important; font-size: calc(1.05 * var(--stv43-u)) !important; }
.stv-topic__ticker span { color: #354962 !important; font-size: calc(1.05 * var(--stv43-u)) !important; line-height: 1.3 !important; }
.stv-topic__footer > button { color: #34485f !important; background: #d2e2ed !important; border-color: #bfcedf !important; }

/* Openings and programme countdowns keep the official graphic logo prominent. */
.stv-welcome-screen, .stv-program-screen, .stv-topic__intro, .stv2-intro {
  background: radial-gradient(ellipse at 22% 28%, #dbe8f4, transparent 55%), linear-gradient(125deg, #f7f5fa, #e8e0f1) !important;
  color: #2a3d56 !important;
}
.stv-welcome-screen h1, .stv-topic__intro h1, .stv-topic__intro h1 strong,
.stv2-intro h1, .stv2-intro h1 strong, .stv-program-copy h2 { color: #293d56 !important; text-shadow: none !important; }
.stv-welcome-screen > span, .stv-welcome-screen p, .stv-welcome-date,
.stv-topic__intro > span, .stv-topic__intro > p, .stv-topic__intro > time,
.stv2-intro > span, .stv2-intro > p, .stv2-intro > time { color: #57677c !important; }
.stv-welcome-screen > img, .stv-topic__intro > img {
  width: calc(19 * var(--stv43-u)) !important; height: calc(14 * var(--stv43-u)) !important;
  margin-inline: auto !important; object-fit: contain !important;
  filter: var(--stv43-logo-shadow-large) !important;
  padding: 0 !important; background: transparent !important;
  border: 0 !important; border-radius: 0 !important; box-shadow: none !important;
}
.stv-welcome-screen h1, .stv-topic__intro h1 { font-size: calc(4.9 * var(--stv43-u)) !important; line-height: 1.08 !important; letter-spacing: -.045em !important; }
.stv-welcome-screen > time, .stv-topic__intro > time { font-size: calc(.9 * var(--stv43-u)) !important; white-space: nowrap; }
.stv-program-countdown-card, .stv-program-following-card {
  border-color: #d5dcec !important; background: #fcfbfd !important; color: #34475f !important;
  box-shadow: none !important; border-radius: calc(1.5 * var(--stv43-u)) !important;
}
.stv-program-countdown-card strong, .stv-program-following-card strong,
.stv-program-header strong, .stv-program-footer strong { color: #34475f !important; }
.stv-program-countdown-card span, .stv-program-following-card span,
.stv-program-countdown-card small, .stv-program-following-card small { color: #57677c !important; }
.stv-program-header, .stv-program-footer { background: #e8e2f2 !important; color: #3e4861 !important; border-color: #d4daea !important; }
.stv-welcome-progress i, .stv-topic__intro-progress i, .stv2-intro-progress i { background: #a2b5d2 !important; }

/* The festival retains its own logo. Rental channels retain the full photo. */
.stv2-broadcast > .stv2-stage { flex: 1 1 0 !important; height: auto !important; min-height: 0 !important; }
.stv2-broadcast > .stv2-stage {
  grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr) !important;
  grid-template-rows: minmax(0, 1fr) minmax(0, 1fr) !important;
  gap: calc(1.2 * var(--stv43-u)) calc(4 * var(--stv43-u)) !important;
  padding: calc(2.1 * var(--stv43-u)) 6% !important;
}
.stv2-stage > .stv2-logo-wrap {
  grid-column: 1 !important; grid-row: 1 / -1 !important;
  align-self: center !important; justify-self: center !important;
  width: calc(26 * var(--stv43-u)) !important; height: calc(26 * var(--stv43-u)) !important;
  background: linear-gradient(145deg, #344057, #26334a) !important;
  border: 1px solid #596278 !important; border-radius: calc(3 * var(--stv43-u)) !important;
  animation: none !important; transform: none !important;
}
.stv2-stage > .stv2-logo-wrap img {
  width: 82% !important; height: 76% !important; object-fit: contain !important;
  animation: none !important; filter: var(--stv43-logo-shadow-large) !important; transform: none !important;
}
.stv2-stage > .stv2-logo-wrap .stv2-halo { display: none !important; }
.stv2-stage > .stv2-claim {
  grid-column: 2 !important; grid-row: 1 !important;
  justify-self: center !important; align-self: end !important;
  width: 100% !important; padding: 0 !important;
  text-align: center !important; animation: none !important; transform: none !important;
}
.stv2-stage > .stv2-claim span {
  color: #526279 !important; font-size: calc(1.1 * var(--stv43-u)) !important;
  line-height: 1.3 !important; font-weight: 650 !important;
}
.stv2-stage > .stv2-claim strong {
  margin-top: calc(.4 * var(--stv43-u)) !important;
  background: none !important; color: #34465e !important;
  font-size: calc(3.8 * var(--stv43-u)) !important; line-height: 1.08 !important;
  letter-spacing: -.045em !important;
}
.stv2-stage > .stv2-premiere {
  grid-column: 2 !important; grid-row: 2 !important;
  justify-self: center !important; align-self: start !important;
  justify-items: center !important; width: 100% !important;
  max-width: calc(35 * var(--stv43-u)) !important; min-width: 0 !important;
  padding: calc(1.2 * var(--stv43-u)) !important;
  animation: none !important; transform: none !important;
}
.stv2-stage > .stv2-premiere > strong { width: 100% !important; text-align: center !important; }
.stv2-stage .stv2-candidature-cta {
  justify-self: center !important; justify-content: center !important;
  text-align: center !important; color: #493d60 !important;
  background: #ddd1ec !important; border-color: #c8b9da !important;
}
#stv2Intro > img {
  width: calc(19 * var(--stv43-u)) !important; height: calc(12.5 * var(--stv43-u)) !important;
  padding: 0 !important; background: transparent !important;
  border: 0 !important; border-radius: 0 !important; box-shadow: none !important;
  object-fit: contain !important;
  animation: none !important; filter: var(--stv43-logo-shadow-large) !important;
}
.stv2-claim, .stv2-claim strong { color: #33455e !important; text-shadow: none !important; }
.stv2-premiere { color: #34465e !important; background: #f5e6ee !important; border: 1px solid #e0cedd !important; border-radius: calc(1.6 * var(--stv43-u)) !important; box-shadow: none !important; text-align: center !important; }
.stv2-premiere strong, .stv2-premiere small { color: #624c6c !important; }
.stv2-broadcast > .stv2-footer { flex: 0 0 9% !important; height: 9% !important; background: #e7e1ef !important; color: #43516b !important; border-color: #d7daea !important; }
.stv2-footer-brand span, .stv2-presented { color: #57677c !important; }
.stv-rental-screen__line { background: #e6b4cb !important; box-shadow: none !important; }
.stv-rental-screen__contact a:first-child { color: #f0c9de !important; }

/* Logo-only targets also cover scheduled and remotely inserted screens.
   Programme artwork is included only when its URL identifies a supplied logo;
   photographs, rental media, news images and the mascot keep their own filters. */
.stv-program-header > div > img,
.stv-breaking-header > div > img,
.stv-remote-media > header img,
.stv2-footer-brand > img {
  filter: var(--stv43-logo-shadow) !important;
}
.stv3-logo,
#stvYoutubeLiveCountdown > img,
.stv-program-art > img[src*="-logo."],
.stv-program-art > img[src*="/assets/images/programs/"] {
  filter: var(--stv43-logo-shadow-large) !important;
}
.stv-lead.is-program-on-air .stv-lead-bg[style*="-logo."],
.stv-lead.is-program-on-air .stv-lead-bg[style*="/assets/images/programs/"] {
  filter: saturate(1.12) contrast(1.04) var(--stv43-logo-shadow-large) !important;
}

/* Existing controls remain keyboard/touch operable; no fixed overlay blocks video. */
.stv-sound-gate button, .stv-topic__sound-gate button, .stv2-sound-gate button,
.stv-video-sound-gate button, button.stv-channel-live-sound {
  background: #eef0f8 !important; color: #293e59 !important; border-color: #ced8e7 !important;
  box-shadow: 0 5px 22px #162b4530 !important;
}
.stv-sound-gate button strong, .stv-sound-gate button small,
.stv-video-sound-gate button strong, .stv-video-sound-gate button small { color: #293e59 !important; }
.stv-topic__arrows button, .stv-story-nav button { background: #eef0f8e8 !important; color: #293e59 !important; border-color: #ced8e7 !important; }
button:focus-visible, a:focus-visible { outline: 2px solid #725b97 !important; outline-offset: 3px; }
.stv-channel-rail { background: #f5f3facf !important; border-color: #d1dbea !important; box-shadow: none !important; }
.stv-channel-rail__item { color: #374b65 !important; background: #eff2f8 !important; }
.stv-channel-rail__item.is-active { color: #35445e !important; background: #ded7ed !important; }
.stv-channel-rail__label, .stv-channel-rail__item strong { color: #53667f !important; }
body.is-embed .stv-channel-rail, html.stv-theme-embedded .stv-channel-rail { display: none !important; }

@media (max-width: 600px) {
  /* Scale the authored 16:9 signal as one canvas; do not hide service panels. */
  header.stv-signal-header { padding-inline: 1.3% !important; }
  .stv-signal-header__brand > .stv-signal-header__topic { font-size: calc(.62 * var(--stv43-u)) !important; }
  .stv-signal-header__number > .stv-signal-header__name { font-size: calc(.97 * var(--stv43-u)) !important; }
  .stv-lead h1, .stv-topic__copy h1 { font-size: calc(3.05 * var(--stv43-u)) !important; }
  .stv-lead p, .stv-topic__copy p { font-size: calc(1.24 * var(--stv43-u)) !important; }
  .stv-broadcast > .stv-content, .stv-topic > .stv-topic__layout { grid-template-columns: minmax(0, 2.2fr) minmax(0, 1fr) !important; }
}
@media (prefers-reduced-motion: reduce) {
  .stv-continuity-orbit, .stv-topic__intro-orbit, .stv2-intro-orbit,
  .stv-topic__ambient i, .stv2-ambient i { animation: none !important; }
}
