

/* Start:/local/frontend/styles/pages/vacancies.css?17914546064289*/
.vacancies {
    display: flex;
    flex-direction: column;
    align-items: center;
    min-height: 100%;
    width: 100%;
    background-color: var(--background-ter);
}

.vacancies-island {
    flex: 2;
    display: flex;
    flex-direction: column;
    width: 100%;
    border-radius: var(--radius-8xl);
    background-color: var(--background-pr);
    padding-top: var(--header-height, 0px);
}

.vacancies-island-header {
    width: 100%;
    padding: var(--spacing-content-padding-xxl) var(--spacing-content-padding-grid-4) var(--spacing-content-padding-xs);
}

.vacancies-island-list {
    display: grid;
    grid-template-columns: 100%;
    width: 100%;
    gap: var(--spacing-content-gap-min-grid);
    padding: var(--spacing-content-padding-sm) var(--spacing-content-padding-grid-3) var(--spacing-content-padding-xxl);
}

.vacancies-template,
.vacancy-card {
    width: 100%;
    height: 100%;
    min-height: var(--size-component-job-card-height);
}

.vacancies-template {
    display: flex;
    min-width: 0;
    border-radius: var(--radius-4xl);
    background-color: var(--background-add);
    background-image: url('/local/frontend/images/images/vacancies-find-block-bg.png');
    background-repeat: no-repeat;
    background-position: right bottom;
    background-size: cover;
    color: var(--text-inver);
    overflow: hidden;
}

.vacancies-template-content {
    display: flex;
    flex: 1;
    flex-direction: column;
    justify-content: space-between;
    min-width: 0;
    gap: var(--spacing-component-gap-xl);
    padding: var(--spacing-component-padding-y-add) var(--spacing-component-padding-x-add);
}

.vacancies-template-texts {
    display: flex;
    flex-direction: column;
    gap: var(--spacing-component-gap-xl);
}

.vacancies-template-texts span {
    text-transform: uppercase;
}

.vacancies-template-button > .button {
    font-weight: 700;
}

@media (min-width: 768px) {
    .vacancies-island-list {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (min-width: 1200px) {
    .vacancies-island-list {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (min-width: 1920px) {
    .vacancies-island-header {
        max-width: calc(1504px + var(--spacing-content-padding-grid-4) * 2);
        margin: 0 auto;
    }

    .vacancies-island-list {
        max-width: calc(1552px + var(--spacing-content-padding-grid-3) * 2);
        margin: 0 auto;
    }
}

/*----- Карточка вакансии -----*/
.vacancy-card {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: var(--spacing-component-padding-y-add);
    padding: var(--spacing-component-padding-y-add) var(--spacing-component-padding-x-add);
    border-radius: var(--radius-4xl);
    background-color: var(--background-sec);
    color: var(--text-pr);
}

.vacancy-card-main {
    display: flex;
    flex-direction: column;
    gap: var(--spacing-component-gap-xl);
}

.vacancy-card-main-texts {
    display: flex;
    flex-direction: column;
    gap: var(--spacing-content-gap-xs);
}

.vacancy-card-title {
    text-transform: uppercase;
}

.vacancy-card-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
}

.vacancy-card-tag {
    padding: var(--spacing-component-padding-y-min) var(--spacing-component-padding-x-xs);
    border-radius: var(--radius-sm);
    background-color: var(--background-pr);
    white-space: nowrap;
}

.vacancy-card-location {
    display: flex;
    flex-wrap: wrap;
    gap: var(--spacing-component-gap-xs);
    color: var(--text-sec);
}

.vacancy-card-button {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: var(--spacing-component-gap-xs);
}

.vacancy-card-button > .button {
    width: fit-content;
    font-weight: 700;
}

.vacancy-card-hh {
    display: flex;
    flex-shrink: 0;
    width: 56px;
    height: 56px;
    border-radius: var(--radius-full);
    overflow: hidden;
    transition: opacity var(--default-duration) ease;
}

.vacancy-card-hh:hover {
    opacity: 0.8;
}

.vacancy-card-hh img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.vacancy-card-location-dot {
    width: 4px;
    height: 4px;
    background-color: currentColor;
    border-radius: var(--radius-full);
    margin: auto 0;
}

/* End */


/* Start:/local/components/rzd/vacancy.form/templates/.default/style.css?1789567711544*/
/*
 * Vacancy form specifics only. Shared modal, field, select, error and action
 * styles live in local/frontend/styles/forms.css.
 */

.vacancy-modal-window {
    width: min(100%, var(--size-component-card-form-width));
}

.vacancy-form-field.form-ui__field {
    gap: var(--spacing-component-gap-xs);
}

.vacancy-form-field[hidden] {
    display: none;
}

.vacancy-select-list {
    overflow-y: auto;
}

.vacancy-form-hint {
    color: var(--text-sec);
}

@media (max-width: 767px) {
    .vacancy-modal-window {
        width: 100%;
    }
}

/* End */
/* /local/frontend/styles/pages/vacancies.css?17914546064289 */
/* /local/components/rzd/vacancy.form/templates/.default/style.css?1789567711544 */
