/**
 * Services audience block — reuses niches layout; services-specific copy and heading.
 */

.home-v2 .v2-section--services-audience,
.v2-section--services-audience {
  padding-top: clamp(48px, 6.25vw, 120px);
  padding-bottom: 0;
}

@media (min-width: 1024px) {
  .home-v2 .v2-section--services-audience,
  .v2-section--services-audience {
    display: block;
    height: auto;
    min-height: 0;
    padding-top: calc(100vw * 70 / 1920);
    padding-bottom: 0;
  }

  .v2-section--services-audience .v2-niches__grid {
    height: auto;
    max-height: none;
  }

  .v2-section--services-audience .v2-niches__panel,
  .v2-section--services-audience .v2-niches__visual {
    height: auto;
    min-height: calc(100vw * 940 / 1920);
  }
}

@media (max-width: 1023px) {
  .home-v2 .v2-section--services-audience,
  .v2-section--services-audience {
    padding-top: var(--v2-section-gap);
    padding-bottom: 0;
  }

  .page-services .v2-section--services-audience {
    padding-bottom: 0;
  }

  .page-platform .v2-section--meta-audience,
  .page-meta .v2-section--meta-audience {
    padding-bottom: calc(100vw * 80 / 390);
  }
}

.v2-section--services-audience .v2-niches__intro {
  width: 100%;
  max-width: none;
}

.v2-section--services-audience .v2-niches__heading-line {
  display: block;
}

.v2-section--services-audience .v2-niches__heading {
  width: 100%;
  max-width: none;
  font-size: clamp(36px, calc(100vw * 90 / 1920), 90px);
  line-height: 1.05;
}

.v2-section--services-audience .v2-niches__heading[data-animation='letters'] .split-line {
  width: fit-content;
  max-width: 100%;
  line-height: 1.05;
  overflow: visible;
}

@media (min-width: 1024px) {
  .v2-section--services-audience .v2-niches__heading {
    max-width: none;
    font-size: calc(100vw * 90 / 1920);
    line-height: 1.05;
  }

  /*
   * Ukrainian copy is materially longer than the English heading. Keep the
   * authored three-line composition while scaling it with the viewport.
   */
  .is-lang-uk .v2-section--services-audience .v2-niches__heading {
    font-size: calc(100vw * 70 / 1920);
    line-height: 1.04;
  }

  .is-lang-uk .v2-section--services-audience .v2-niches__heading-line {
    width: fit-content;
    max-width: 100%;
    white-space: nowrap;
  }

  .is-lang-uk .v2-section--services-audience .v2-niches__label {
    font-size: calc(100vw * 28 / 1920);
  }

  .is-lang-uk .v2-section--services-audience .v2-niches__visual-text {
    width: calc(100vw * 390 / 1920);
    max-width: calc(100% - calc(100vw * 60 / 1920));
    font-size: calc(100vw * 17 / 1920);
    line-height: 1.2;
  }
}

@media (max-width: 1023px) {
  .v2-section--services-audience .v2-niches__heading {
    max-width: none;
    font-size: calc(100vw * 36 / 390);
    line-height: 1;
  }

  .is-lang-uk .v2-section--services-audience .v2-niches__heading {
    font-size: calc(100vw * 29 / 390);
  }

  .v2-section--services-audience .v2-niches__panel {
    min-height: calc(100vw * 420 / 390);
  }
}
