/* Scoped to the recommendations below a vacancy. */
.related-vacancies { border-top:1px solid var(--line); padding-bottom:100px; }
.related-vacancies-heading { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:20px; margin-bottom:24px; }
.related-vacancies-heading h2 { margin:0 0 10px; }
.related-vacancies-heading p { color:var(--ink-soft); margin:0; }
.related-vacancies-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr)); gap:20px; }
.related-vacancies .home-vacancy { min-width:0; display:flex; flex-direction:column; padding:24px; border:1px solid var(--line); border-radius:12px; background:var(--white, #fff); overflow-wrap:anywhere; }
.related-vacancies .home-vacancy-top { display:flex; flex-wrap:wrap; gap:8px 16px; color:var(--ink-soft); font-size:.85rem; }
.related-vacancies .home-vacancy-top time { margin-left:auto; }
.related-vacancies h3 { font-size:1.15rem; line-height:1.5; margin:16px 0 12px; }
.related-vacancies h3 a { color:var(--ink); }
.related-vacancies a:hover { text-decoration:underline; }
.related-vacancies a:focus-visible { outline:3px solid var(--red); outline-offset:4px; }
.related-vacancies .home-vacancy-details { display:flex; flex-wrap:wrap; gap:8px 16px; color:var(--ink-soft); font-size:.9rem; margin-bottom:16px; }
.related-vacancies .home-vacancy-bottom { display:flex; flex-direction:column; align-items:flex-start; gap:10px; margin-top:auto; font-size:.9rem; }
.related-vacancies .home-vacancy-bottom > a { display:inline-flex; align-items:center; gap:8px; min-height:44px; color:var(--red); font-weight:700; }
