.hero-tv-offer {
  display: inline-flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 5px 8px;
  margin-top: 22px;
  padding-bottom: 6px;
  border-bottom: 1px solid rgba(37, 200, 238, .55);
  color: #d6e0f2;
  font-size: .95rem;
}
.hero-tv-offer strong, .hero-tv-offer > span { color: var(--cyan); }
.hero-tv-offer:hover { color: #fff; }
.hero-tv-offer:focus-visible, .tv-combo a:focus-visible {
  outline: 3px solid var(--cyan);
  outline-offset: 6px;
  border-radius: 6px;
}
.tv-combo {
  display: grid;
  grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr);
  margin-top: 64px;
  background: #071d4a;
  color: #fff;
  border: 1px solid #234273;
  border-radius: 28px;
  overflow: hidden;
  box-shadow: var(--shadow);
}
.tv-combo-art {
  display: grid;
  place-items: center;
  position: relative;
  padding: 56px 28px 24px;
  background: #112951;
}
.tv-combo-art img { display: block; width: 100%; height: auto; max-width: 420px; }
.tv-combo-badge {
  position: absolute;
  top: 28px;
  left: 28px;
  background: var(--cyan);
  color: var(--navy);
  padding: 6px 14px;
  border-radius: 999px;
  font-size: .75rem;
  font-weight: 800;
  letter-spacing: .09em;
}
.tv-combo-content { padding: 44px 48px; }
.tv-combo .eyebrow { color: #ffad63; letter-spacing: .13em; }
.tv-combo h3 {
  font: 700 clamp(2rem, 3.2vw, 3rem)/1.08 "Space Grotesk", sans-serif;
  letter-spacing: -.04em;
  margin: 0 0 20px;
}
.tv-combo h3 span { color: var(--cyan); }
.tv-combo-description { color: #d6e0f2; max-width: 450px; margin: 0; }
.tv-combo-price { display: grid; gap: 4px; margin: 24px 0; }
.tv-combo-price > span { color: #d6e0f2; font-size: .9rem; }
.tv-combo-price strong {
  font: 700 clamp(2.4rem, 3.7vw, 3.6rem)/1.15 "Space Grotesk", sans-serif;
  letter-spacing: -.04em;
}
.tv-combo-price small { color: #d6e0f2; font: 500 .95rem "Manrope", sans-serif; letter-spacing: 0; margin-left: 5px; }
.tv-combo-conditions { font-size: .8rem; line-height: 1.65; color: #bdcbe2; margin: 20px 0 0; max-width: 450px; }
@media (max-width: 980px) {
  .tv-combo-content { padding: 36px 28px; }
  .tv-combo-art { padding-inline: 18px; }
}
@media (max-width: 720px) {
  .hero-tv-offer { justify-content: center; width: 100%; text-align: center; font-size: .9rem; }
  .tv-combo { grid-template-columns: 1fr; margin-top: 44px; border-radius: 22px; }
  .tv-combo-art { padding: 44px 24px 0; }
  .tv-combo-art img { max-width: 270px; }
  .tv-combo-badge { top: 20px; left: 24px; }
  .tv-combo-content { padding: 30px 24px; }
  .tv-combo h3 { font-size: clamp(1.8rem, 8vw, 2.6rem); }
  .tv-combo .button { width: 100%; padding-inline: 12px; }
}
