/* =========================================================
   Careers — vacancies list (572:2173)
   ========================================================= */
.vacancies {
  display: grid;
  grid-template-columns: var(--vacancies-aside-width) 1fr;
  max-width: var(--container-width);
  margin-inline: auto;
  border-block: var(--stroke-1) solid var(--color-border);
}

.vacancies__title {
  padding: var(--space-100) var(--page-gutter);
  border-right: var(--stroke-1) solid var(--color-border);
}

.vacancies__link {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-20);
  min-height: var(--vacancy-row-height);
  padding-inline: var(--page-gutter);
  border-bottom: var(--stroke-1) solid var(--color-border);
  font-family: var(--font-secondary);
  font-size: var(--fs-h3-lg);
  line-height: var(--lh-h3-lg);
  font-weight: var(--fw-medium);
}

.vacancies li:last-child .vacancies__link {
  border-bottom: 0;
}

.vacancies__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: var(--btn-icon);
  height: var(--btn-icon);
  border-radius: 50%;
  background: var(--color-primary);
}

.vacancies__icon img {
  width: var(--icon-16);
  height: var(--icon-16);
}

/* =========================================================
   Vacancy — description rows (572:2226) reuse .steps
   ========================================================= */
.steps--vacancy .steps__aside {
  justify-content: flex-start;
}

/* =========================================================
   Vacancy — quick apply (572:2255)
   ========================================================= */
.quick-apply {
  position: relative;
  padding-block: var(--space-80);
  background: var(--color-bg-dark);
  color: var(--color-text-inverse);
  overflow: hidden;
}

.quick-apply__media,
.quick-apply::before {
  position: absolute;
  inset: 0;
}

.quick-apply__media {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.quick-apply::before {
  content: "";
  z-index: 1;
  background: var(--overlay-cta);
}

.quick-apply__content {
  position: relative;
  z-index: 2;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-30);
}

.quick-apply__text {
  color: var(--color-white-88);
}

.quick-apply__text strong {
  font-weight: var(--fw-semibold);
}

/* ---------- Careers / vacancy — responsive ---------- */
@media (max-width: 1024px) {
  .vacancies {
    grid-template-columns: 1fr;
  }

  .vacancies__title {
    padding-bottom: var(--space-40);
    border-right: 0;
    border-bottom: var(--stroke-1) solid var(--color-border);
  }
}

@media (max-width: 768px) {
  .vacancies__link {
    min-height: 0;
    padding-block: var(--space-20);
  }
}

/* Hover (by request): the arrow circle darkens and the arrow nudges right */
@media (hover: hover) {
  .vacancies__link:hover .vacancies__icon {
    background: var(--color-accent);
  }

  .vacancies__link:hover .vacancies__icon img {
    transform: translateX(var(--hover-nudge));
  }
}
