/* ==========================================================================
   Страница «Стажировка» (page-internship.php, поля ACF с префиксом intern-)
   Подключается только на этом шаблоне (см. factum_corp_scripts()).
   Общие блоки берутся из style.css / amir.css: герой (vacancies-hero +
   internship-hero), карточки преимуществ (vacancies-growth), FAQ, форма
   (feedback). Здесь — только то, чего в теме ещё нет.
   ========================================================================== */

/* Первый экран */
.internship-hero .vacancies-hero__wrap {
  min-height: calc(700 * var(--width-multiplier));
  margin-bottom: 0;
  padding-bottom: calc(50 * var(--width-multiplier));
}

.internship-hero .vacancies-hero__wrap::before {
  display: none;
}

.internship-hero__title {
  max-width: none;
  color: var(--white, #ffffff);
  font-family: Unbounded;
  font-size: calc(56 * var(--width-multiplier));
  font-weight: 700;
  line-height: 1.15;
}

.internship-hero__desc {
  max-width: calc(860 * var(--width-multiplier));
  margin-top: calc(16 * var(--width-multiplier));
  font-size: calc(20 * var(--width-multiplier));
  line-height: 1.35;
}

.internship-hero__desc,
.internship-hero__desc p {
  color: var(--white, #ffffff);
}

/* О программе: заголовок, фото, текст, цифры */
.intern-about {
  padding-top: calc(100 * var(--width-multiplier));
}

.intern-about__title {
  max-width: calc(820 * var(--width-multiplier));
  margin-bottom: calc(40 * var(--width-multiplier));
  text-transform: none;
}

.intern-about__img {
  overflow: hidden;
  border-radius: calc(16 * var(--width-multiplier));
  aspect-ratio: 1340 / 640;
  background-color: var(--grey, #ededed);
}

.intern-about__img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.intern-about__desc {
  max-width: calc(620 * var(--width-multiplier));
  margin: calc(40 * var(--width-multiplier)) auto calc(60 * var(--width-multiplier));
  font-size: calc(14 * var(--width-multiplier));
  line-height: 1.45;
  text-align: center;
  color: rgba(15, 15, 15, 0.8);
}

.intern-about__desc p {
  margin: 0;
}

.intern-stats {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: calc(30 * var(--width-multiplier)) calc(24 * var(--width-multiplier));
}

.intern-stat {
  position: relative;
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  min-height: calc(110 * var(--width-multiplier));
  padding-top: calc(20 * var(--width-multiplier));
  border-top: 2px solid rgba(15, 15, 15, 0.15);
}

.intern-stat__idx,
.intern-stat__label {
  position: relative;
  z-index: 1;
  font: 700 calc(12 * var(--width-multiplier)) / 1.3 ZonaPro;
}

.intern-stat__label {
  max-width: calc(110 * var(--width-multiplier));
  text-align: right;
}

.intern-stat__val {
  position: absolute;
  top: calc(16 * var(--width-multiplier));
  left: 50%;
  transform: translateX(-50%);
  font: 400 calc(96 * var(--width-multiplier)) / 1 Onest;
  white-space: nowrap;
}

.intern-stat__plus {
  position: relative;
  top: calc(-40 * var(--width-multiplier));
  font-size: calc(48 * var(--width-multiplier));
}

/* Преимущества: иллюстрации на белом фоне вместо оранжевой плашки */
.intern-advans .vacancies-growth__cards {
  gap: calc(40 * var(--width-multiplier)) calc(20 * var(--width-multiplier));
}

.intern-advans .vacancies-growth__img {
  height: calc(320 * var(--width-multiplier));
  background-color: transparent;
}

.intern-advans .vacancies-growth__img img {
  object-fit: contain;
}

.intern-advans .vacancies-growth__card {
  gap: calc(8 * var(--width-multiplier));
}

.intern-advans .vacancies-growth__caption {
  margin-top: calc(8 * var(--width-multiplier));
  font-size: calc(18 * var(--width-multiplier));
  font-weight: 700;
}

.intern-advans .vacancies-growth__txt {
  font-size: calc(14 * var(--width-multiplier));
  line-height: 1.4;
}

/* Как это работает */
.intern-steps__title {
  margin-bottom: calc(40 * var(--width-multiplier));
  font: 700 calc(22 * var(--width-multiplier)) / 1.2 Onest;
  text-align: center;
  text-transform: lowercase;
}

.intern-steps__list {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: calc(24 * var(--width-multiplier));
}

.intern-step {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: calc(16 * var(--width-multiplier));
  border: 2px solid var(--dark, #0f0f0f);
  border-radius: calc(12 * var(--width-multiplier));
  box-shadow: calc(6 * var(--width-multiplier)) calc(6 * var(--width-multiplier)) 0 var(--dark, #0f0f0f);
  background-color: var(--white, #ffffff);
  text-align: left;
}

/* Линия-соединитель между карточками */
.intern-step:not(:last-child)::after {
  content: '';
  position: absolute;
  top: 50%;
  left: 100%;
  width: calc(24 * var(--width-multiplier) + 2px);
  height: 2px;
  transform: translateY(-50%);
  background-color: var(--dark, #0f0f0f);
}

.intern-step__num {
  align-self: center;
  display: flex;
  align-items: center;
  justify-content: center;
  width: calc(36 * var(--width-multiplier));
  height: calc(36 * var(--width-multiplier));
  border: 2px solid var(--dark, #0f0f0f);
  border-radius: calc(8 * var(--width-multiplier));
  background-color: var(--primary, #cb4e00);
  color: var(--white, #ffffff);
  font: 700 calc(16 * var(--width-multiplier)) / 1 Onest;
}

.intern-step:last-child .intern-step__num {
  background-color: var(--dark, #0f0f0f);
}

.intern-step__caption {
  margin-top: calc(14 * var(--width-multiplier));
  font: 700 calc(20 * var(--width-multiplier)) / 1.2 Onest;
}

.intern-step:last-child .intern-step__caption {
  color: var(--primary, #cb4e00);
}

.intern-step__desc {
  margin-top: calc(10 * var(--width-multiplier));
  font-size: calc(14 * var(--width-multiplier));
  line-height: 1.4;
}

.intern-step__desc p {
  margin: 0;
}

/* Открытые направления: лента карточек, выходящая за правый край */
.intern-dirs {
  overflow: hidden;
}

.intern-dirs__heading {
  margin-bottom: calc(30 * var(--width-multiplier));
}

.intern-dirs__slider {
  overflow: visible;
}

.intern-dir {
  width: calc(318 * var(--width-multiplier));
}

.intern-dir__img {
  overflow: hidden;
  aspect-ratio: 318 / 225;
  border-radius: calc(6 * var(--width-multiplier));
  background-color: var(--primary, #cb4e00);
}

.intern-dir__img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.intern-dir__caption {
  margin-top: calc(16 * var(--width-multiplier));
  font: 700 calc(18 * var(--width-multiplier)) / 1.2 Onest;
}

/* Форма */
.intern-form__title {
  max-width: none;
  margin-bottom: calc(12 * var(--width-multiplier));
  font-family: Unbounded;
  font-weight: 700;
}

.intern-form__desc {
  max-width: calc(520 * var(--width-multiplier));
  margin-bottom: calc(30 * var(--width-multiplier));
  font-size: calc(14 * var(--width-multiplier));
  line-height: 1.4;
  color: rgba(15, 15, 15, 0.5);
}

.intern-form__desc p {
  margin: 0;
}

.intern-form textarea {
  width: 100%;
  min-height: calc(54 * var(--width-multiplier));
  resize: vertical;
}

@media (max-width: 1024px) {
  .intern-stats {
    grid-template-columns: repeat(2, 1fr);
  }

  .intern-advans .vacancies-growth__img {
    height: calc(260 * var(--width-multiplier));
  }

  .intern-steps__list {
    grid-template-columns: repeat(2, 1fr);
  }

  .intern-step:not(:last-child)::after {
    display: none;
  }

  .intern-dir {
    width: calc(260 * var(--width-multiplier));
  }
}

@media (max-width: 767px) {
  .internship-hero .vacancies-hero__wrap {
    min-height: calc(560 * var(--width-multiplier));
    padding-bottom: calc(30 * var(--width-multiplier));
  }

  .internship-hero__title {
    font-size: calc(30 * var(--width-multiplier));
  }

  .internship-hero__desc {
    font-size: calc(16 * var(--width-multiplier));
  }

  .intern-about {
    padding-top: calc(52 * var(--width-multiplier));
  }

  .intern-about__title {
    margin-bottom: calc(24 * var(--width-multiplier));
    font-size: calc(22 * var(--width-multiplier));
    line-height: 1.25;
  }

  .intern-about__img {
    aspect-ratio: 4 / 3;
    border-radius: calc(12 * var(--width-multiplier));
  }

  .intern-about__desc {
    margin: calc(24 * var(--width-multiplier)) auto calc(32 * var(--width-multiplier));
  }

  .intern-stats {
    grid-template-columns: 1fr;
    gap: calc(16 * var(--width-multiplier));
  }

  .intern-stat {
    min-height: calc(80 * var(--width-multiplier));
    padding-top: calc(14 * var(--width-multiplier));
    border-top-width: 1px;
  }

  .intern-stat__val {
    top: calc(12 * var(--width-multiplier));
    font-size: calc(56 * var(--width-multiplier));
  }

  .intern-stat__plus {
    top: calc(-22 * var(--width-multiplier));
    font-size: calc(30 * var(--width-multiplier));
  }

  .intern-stat__idx,
  .intern-stat__label {
    font-size: calc(11 * var(--width-multiplier));
  }

  .intern-stat__label {
    max-width: calc(90 * var(--width-multiplier));
  }

  .intern-advans .vacancies-growth__cards {
    gap: calc(32 * var(--width-multiplier));
  }

  .intern-advans .vacancies-growth__img {
    height: calc(240 * var(--width-multiplier));
  }

  .intern-steps__title {
    margin-bottom: calc(24 * var(--width-multiplier));
    font-size: calc(20 * var(--width-multiplier));
  }

  .intern-steps__list {
    grid-template-columns: 1fr;
    gap: calc(16 * var(--width-multiplier));
  }

  .intern-step {
    box-shadow: calc(4 * var(--width-multiplier)) calc(4 * var(--width-multiplier)) 0 var(--dark, #0f0f0f);
  }

  .intern-step__num {
    width: calc(32 * var(--width-multiplier));
    height: calc(32 * var(--width-multiplier));
  }

  .intern-step__caption {
    font-size: calc(18 * var(--width-multiplier));
  }

  .intern-dirs__heading {
    margin-bottom: calc(20 * var(--width-multiplier));
  }

  .intern-dir {
    width: calc(260 * var(--width-multiplier));
  }

  .intern-dir__caption {
    font-size: calc(16 * var(--width-multiplier));
  }

  .intern-form__title {
    font-size: calc(22 * var(--width-multiplier));
  }
}
