/* /vacancy/ — пустое состояние и аккордеон вакансий (<details>/<summary>, без JS) */
.page-hero__fact dd a { color: inherit; text-decoration-color: var(--c-honey); }

/* Пустое состояние */
.vacancy-empty { display: grid; justify-items: center; gap: var(--sp-4); padding-block: var(--sp-10); background: var(--c-surface); }
.vacancy-empty__title { font-size: var(--fs-h3); line-height: var(--lh-heading); letter-spacing: var(--ls-heading); color: var(--c-text); }
.vacancy-empty__text { max-width: 52ch; }
.vacancy-empty__text a { color: var(--c-text); text-decoration-color: var(--c-honey); text-decoration-thickness: 2px; overflow-wrap: anywhere; }
.vacancy-empty .btn-row { justify-content: center; margin-top: var(--sp-2); }

/* Аккордеон — для будущих вакансий (сейчас вакансий нет, выводится только пустое состояние) */
.vacancy-list { display: grid; gap: var(--sp-3); }
.vacancy-item { background: var(--c-surface); border: 1px solid var(--c-line); border-radius: var(--r-lg); box-shadow: var(--shadow-card); transition: border-color var(--dur) var(--ease); }
.vacancy-item[open] { border-color: var(--c-line-strong); }

.vacancy-item__summary {
  display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: var(--sp-4);
  padding: var(--sp-5) var(--sp-6); border-radius: var(--r-lg); cursor: pointer; list-style: none;
}
.vacancy-item__summary::-webkit-details-marker { display: none; }
.vacancy-item__summary::marker { content: ""; }
.vacancy-item__summary:focus-visible { outline: 2px solid var(--c-focus); outline-offset: 2px; }

.vacancy-item__head { display: grid; gap: var(--sp-1); min-width: 0; }
.vacancy-item__title { font-size: var(--fs-h3); font-weight: 600; line-height: var(--lh-heading); letter-spacing: var(--ls-heading); }
.vacancy-item__meta { font-size: var(--fs-small); color: var(--c-text-muted); }

.vacancy-item__chevron {
  display: grid; place-items: center; width: 40px; height: 40px; flex: none;
  border: 1px solid var(--c-line-strong); border-radius: 50%; color: var(--c-text);
  transition: transform var(--dur) var(--ease), background-color var(--dur) var(--ease), border-color var(--dur) var(--ease);
}
.vacancy-item__chevron::before { content: ""; width: 9px; height: 9px; border-right: 2px solid currentColor; border-bottom: 2px solid currentColor; transform: translateY(-2px) rotate(45deg); }
.vacancy-item__summary:hover .vacancy-item__chevron { border-color: var(--c-text); }
.vacancy-item[open] .vacancy-item__chevron { transform: rotate(180deg); background: var(--c-honey); border-color: var(--c-honey); color: var(--c-on-honey); }

.vacancy-item__body { margin-inline: var(--sp-6); padding-block: var(--sp-6); border-top: 1px solid var(--c-line); }
.vacancy-item__lead { font-size: var(--fs-lead); color: var(--c-text); }
.vacancy-item .vacancy-text__reply { background: var(--c-surface-2); }
.vacancy-item__actions { margin-top: var(--sp-6); }

@media (max-width: 600px) {
  .vacancy-empty { padding: var(--sp-8) var(--sp-4); }
  .vacancy-item__summary { padding: var(--sp-4); gap: var(--sp-3); }
  .vacancy-item__body { margin-inline: var(--sp-4); padding-block: var(--sp-5); }
  .vacancy-item__chevron { width: 36px; height: 36px; }
}
@media (prefers-reduced-motion: reduce) {
  .vacancy-item, .vacancy-item__chevron { transition: none; }
}
