/* Vacancy archive page */
.vacancy-list-grid .vacancy {
    border-top: 1px solid #170d69;
    border-left: 1px solid #170d69;
    border-right: 1px solid #170d69;
    border-radius: 8px;
    overflow: hidden;
}

.vacancy-content {
    box-shadow: none;
    position: relative;
    padding: 32px !important;
    border-bottom: 4px solid #170d69;
    border-radius: 0;
    height: 100%;
}

.vacancy-list-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-gap: 20px;
}

.vacancy-list-grid.short,
.page-id-2749 .vacancy-list-grid {
    grid-template-columns: 1fr 1fr 1fr;
}

.vacancy-list-grid article.vacancy {
    width: 100%;
}

.vacancies-list .vacancy .vacancy-title,
#vacancy-article-detail .vacancy-title {
    font-size: 20px;
}

.vacancies-list .vacancy .wp-block-button__link,
.single-vacancy .wp-block-button__link {
    width: 100%;
    margin-top: 32px;
}

.vacancies-list .vacancy.filter .wp-block-button__link,
.single-vacancy .wp-block-button__link {
    margin-top: 0;
    font-weight: 300;
}

.vacancy-content::before {
    content: "";
    position: absolute;
    z-index: 3;
    bottom: -4px;
    left: 0;
    width: 22%;
    height: 4px;
    transition: all 10s;
    background-color: #e13a44;
}

.vacancy-content:hover::before {
    animation: red-line 300ms linear forwards;
}

@keyframes red-line {
    0% {
        left: 0;
        width: 22%;
    }

    50% {
        left: 20%;
        width: 80%;
    }

    100% {
        left: 78%;
        width: 22%;
    }
}

.vacancy-content::after {
    content: "";
    z-index: 2;
    position: absolute;
    bottom: -4px;
    left: 78%;
    width: 22%;
    height: 4px;
    background-color: #38adf0;
}

.vacancy-content:hover::after {
    animation: blue-line 200ms 200ms linear forwards;
}

@keyframes blue-line {
    0% {
        left: 0;
        width: 0;
    }

    100% {
        left: 0%;
        width: 22%;
    }
}

@media (min-width: 772px) {

    .vacancies-list .pagination {
        margin: 40px auto 0 auto;
        display: flex;
        justify-content: center;
    }
}

@media (max-width: 772px) {
    .vacancy-list-grid {
        grid-template-columns: 1fr !important;
    }
}

.vacancy-title {
    color: #170d69 !important;
}

.vacancy-location {
    color: #38adf0;
    font-size: 16px;
}

.vacancy-location i {
    font-size: 16px;
    padding-right: 10px;
}

.vacancy-info {
    list-style: none;
    padding-left: 0 !important;
}

.vacancy-info__item {
    margin-bottom: 5px !important;
    color: #170d69;
    font-size: 16px;
    position: relative;
    padding-left: 25px;
}

.vacancy-info__item:last-child {
    margin-bottom: 0 !important;
}

.vacancy-info__item i {
    color: #e13a44;
    padding-right: 10px;
    position: absolute;
    left: 0;
    top: 4px;
}

.vacancy-description {
    width: 100%;
}

.vacancy-recruiter {
    display: flex;
}

.vacancy-recruiter__image,
.vacancy-recruiter__image img {
    width: 44px;
    height: 44px;
    object-fit: cover;
    object-position: center;
    border-radius: 100%;
    margin-right: 16px;
}

.vacancy-recruiter__name {
    margin: auto 0;
}

.vacancy-recruiter__name .title {
    color: #292a5f !important;
    font-size: 14px;
    font-weight: 500;
    margin-bottom: 0 !important;
}

.vacancy-recruiter__name .name {
    color: #898989;
    font-size: 14px;
    font-weight: 400;
    margin-bottom: 0 !important;
}

.vacancies-list .vacancy:not(:last-child) {
    margin: 0 !important;
}

.pagination-item.active .pagination-link,
.pagination-item:hover .pagination-link {
    color: #38adf0;
}

/* Vacancy single page */

.wp-block-group {
    padding-left: 20px;
    padding-right: 20px;
}

.vacancy-info-container {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    row-gap: 30px;
    margin-bottom: 30px;
    background-color: #e8e6f1;
    border-radius: 20px;
    padding: 20px;
}

.vacancy-info-container__item {
    color: #170d69;
    font-weight: 500;
    position: relative;
    padding-left: 35px;
    width: 50%;
    font-size: 16px;
}

.vacancy-info-container__item__description {
    font-size: 14px;
    font-weight: 300;
    margin-bottom: 0;
    margin-top: 5px;
}

.vacancy-info-container__item:last-child {
    margin-bottom: 0 !important;
}

.vacancy-info-container__item i {
    color: #170d69;
    font-weight: 600;
    padding-right: 10px;
    position: absolute;
    left: 0;
    top: 6px;
}

#vacancy-article-detail .vacancy-description.detail {
    margin-bottom: 30px;
}

#vacancy-article-detail .vacancy-description.detail p {
    margin: 0;
}

#vacancy-article-detail .vacancy-description.detail * {
    color: #170d69 !important;
    font-size: 20px !important;
    font-family: "Work sans" !important;
}

#vacancy-article-detail .vacancy-description.detail span,
.accordion__content * {
    font-family: "Work Sans" !important;
    font-weight: 300;
    color: #170d69 !important;
    margin-top: 0;
}

.accordions {
    width: 100%;
    padding-top: 20px;
}

.accordion__container {
    position: relative;
    border: 1px solid #373737;
    border-radius: 8px;
    margin-bottom: 20px;
    cursor: pointer;
}

.accordion__title {
    padding: 32px;
    position: relative;
}

.accordion__title h3 {
    font-weight: 400;
    font-size: 24px;
    padding-right: 25px;
}

.accordion__title span.ui-icon {
    position: absolute;
    right: 32px;
    top: 50%;
    transform: translateY(-50%);
}

.accordion__container:last-child {
    margin-bottom: 0;
}

.accordion__content {
    margin-top: 0;
    background-color: white;
    padding: 0 32px 32px 32px;
    border-radius: 8px;
}

.vacancy-info-container__item {
    width: 100%;
}

@media (max-width: 772px) {
    .vacancy-info-container__item {
        font-size: 16px;
        padding-left: 25px;
    }

    .vacancy-info-container {
        row-gap: 15px;
        grid-template-columns: 1fr 1fr !important;
    }

    .vacancy .wp-block-group {
        padding-top: 25px !important;
        padding-bottom: 25px !important;
    }
}

/* Vacancy form styling */
@media (max-width: 772px) {
    .vacancy-form {
        background-color: #170d69;
        padding: 40px;
        width: 100vw;
        margin-left: -20px;
    }
}

.vacancy-form {
    margin-top: 24px;
}

#vacancy-form {
    scroll-margin-top: 275px;
}

.vacancy-form .form-label-col {
    display: none;
}

.vacancy-form .form-input-col,
.vacancy-form input,
.vacancy-form select,
.vacancy-form select option {
    width: 100%;
    font-size: 16px;
    font-family: "Work sans";
    color: #898989;
    font-weight: 300;
    transition: 0.2s linear;
}

.vacancy-form .form-input-col .input-wrap {
    display: flex;
    flex-direction: column-reverse;
}

.vacancy-form input[type="file"] {
    background: #fff;
    color: #898989;
    opacity: var(--wp--custom--button-primary--opacity);
    border-radius: 8px;
    transition: all 600ms;
    cursor: pointer;
    box-shadow: none;
}

@media (min-width: 772px) {
    .vacancy-form input[type="file"] {
        shadow: inset 0px 0px 0px 1px rgba(217, 217, 217, 1);
        -moz-box-shadow: inset 0px 0px 0px 1px rgba(217, 217, 217, 1);
        box-shadow: inset 0px 0px 0px 1px rgba(217, 217, 217, 1);
    }
}

.vacancy-form input[type="file" i]::-webkit-file-upload-button {
    background: var(--wp--custom--button-primary--background-color);
    border: var(--wp--custom--button-primary--border-width) solid
        var(--wp--custom--button-primary--border-color);
    color: var(--wp--custom--button-primary--color) !important;
    opacity: var(--wp--custom--button-primary--opacity);
    border-radius: 8px 0 0 8px;
    padding: var(--wp--custom--button-primary--padding);
    font-weight: var(--wp--custom--button-primary--font-weight);
    transition: all 600ms;
    cursor: pointer;
    box-shadow: none;
    margin-right: 20px;
}

@media (max-width: 772px) {
    .vacancy-form .form-input-col .input-wrap,
    .vacancy-form .input-wrap .explanation {
        color: #fff;
    }
}

.vacancy-form select {
    display: none;
}

.vacancy-form form .rest-form-page {
    display: flex;
    flex-direction: column;
    row-gap: 16px;
}

.vacancy-form .form-input-wrapper,
.vacancy-form form .rest-form-page {
    margin-bottom: 0;
}

.vacancy_apply_button {
    background: var(--wp--custom--button-primary--background-color);
    border: var(--wp--custom--button-primary--border-width) solid
        var(--wp--custom--button-primary--border-color);
    color: var(--wp--custom--button-primary--color) !important;
    opacity: var(--wp--custom--button-primary--opacity);
    border-radius: var(--wp--custom--button-primary--border-radius);
    padding: var(--wp--custom--button-primary--padding);
    font-weight: var(--wp--custom--button-primary--font-weight);
    transition: all 600ms;
    cursor: pointer;
    width: 100%;
    box-shadow: none;
    font-size: 16px;
}

.vacancy_apply_button:hover {
    opacity: 0.7;
}

.vacancy_apply_button.is-sending {
    position: relative;
    opacity: 0.8;
    cursor: wait;
    padding-left: 48px;
}

.vacancy_apply_button.is-sending::before {
    content: "";
    position: absolute;
    left: 20px;
    top: 50%;
    width: 18px;
    height: 18px;
    margin-top: -9px;
    border: 2px solid currentColor;
    border-right-color: transparent;
    border-radius: 50%;
    animation: l24-spin 0.7s linear infinite;
}

.l24-otys-sending {
    margin: 12px 0 0;
    font-size: 14px;
    text-align: center;
}

@keyframes l24-spin {
    to {
        transform: rotate(360deg);
    }
}

@media (prefers-reduced-motion: reduce) {
    .vacancy_apply_button.is-sending::before {
        animation-duration: 2s;
    }
}

/* GDPR form styling */
#candidate_gdpr_accept input:nth-child(2) {
    margin: auto;
    width: auto;
}

.vacancy-form input[type="checkbox"]:checked::after {
    bottom: 45px;
    left: -20px;
    display: none;
}

/* error messages */
.input_errors .input_error,
.vacancy-form-errors .vacancy-form-error {
    padding: 16px 16px 16px 56px !important;
    position: relative !important;
    color: #e13a44;
}

.input_errors .input_error::before,
.vacancy-form-errors .vacancy-form-error::before {
    content: "!";
    color: #fff;
    font-family: "Work sans";
    box-shadow: 0 1px 0 5px rgba(193 42 11 / 50%);
    border-radius: 50%;
    background-color: #e13a44;
    font-size: 20px;
    padding: 10px;
    width: 30px;
    height: 30px;
    display: flex;
    justify-content: center;
    align-items: center;
    position: absolute;
    left: 12px;
    top: 50%;
    transform: translateY(-50%);
}

/* Call to action styling */

.vacancy.call-to-action__container {
    width: 100%;
}

.vacancy .call-to-action__container__sticky {
    position: sticky;
    top: calc(var(--header-height, 126px) + 24px);
}

.vacancy .call-to-action__content {
    padding: 40px;
    border-radius: 8px;
    background-color: #170d69;
    display: flex;
    flex-direction: column;
    margin-bottom: 24px !important;
    /* position: sticky;
    top: 150px; */
    margin-top: 20px;
}

.call-to-action__content .call-to-action__content__normal-link {
    color: #fff;
    text-align: center;
    width: 100%;
}

.call-to-action__content .wp-block-button a {
    text-wrap: wrap;
}

.vacancy .call-to-action__vacaturescan {
    padding: 40px;
    border-radius: 8px;
    background-color: var(--wp--preset--color--accent);
    display: flex;
    flex-direction: column;
    margin-bottom: 24px;
}

.vacancy .call-to-action__content__title,
.vacancy .call-to-action__vacaturescan__title {
    font-size: 24px;
}

.vacancy .call-to-action__content__title,
.vacancy .call-to-action__content__name,
.vacancy .call-to-action__vacaturescan__title,
.vacancy .call-to-action__vacaturescan__description {
    color: #fff;
}
.vacancy .call-to-action__content__title {
    font-weight: 500;
    font-size: 16px;
}
.vacancy .call-to-action__content__name {
    font-weight: 300;
}

.vacancy .call-to-action__content__holder {
    display: flex;
    flex-direction: row;
}

.vacancy .call-to-action__content__image,
.vacancy .call-to-action__content__image img {
    width: 80px;
    height: 80px;
    border-radius: 100%;
    object-fit: cover;
    object-position: center;
    margin: auto 0;
    aspect-ratio: 1;
}

.vacancy.filter .call-to-action__content__image {
    margin: auto;
}

.vacancy .call-to-action__content__holder__buttons {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.vacancy .call-to-action__content__holder__buttons .wp-block-button__link {
    width: 100%;
}

@media (max-width: 772px) {
    .vacancy.call-to-action__container {
        margin-top: 50px;
        height: auto;
    }
}

/* Additional styling */

/* Vacancies search */

.vacancies-search {
    padding-right: 32px;
}

.vacancies-search-section {
    width: 100%;
    display: flex;
    flex-direction: column;
    margin-bottom: 0;
    margin-block-end: 0;
    padding-bottom: 50px;
    border-bottom: 4px solid #170d69;
    position: relative;
}

.vacancies-search-section::before {
    content: "";
    position: absolute;
    bottom: -4px;
    left: 0;
    width: 22%;
    height: 4px;
    background-color: #e13a44;
}

.vacancies-search-section::after {
    content: "";
    position: absolute;
    bottom: -4px;
    right: 0;
    width: 22%;
    height: 4px;
    background-color: #38adf0;
}

.vacancies-search-section h2,
.vacancies-geo-search-section h2,
.owp-heading-3,
.vacancies__total {
    font-size: 20px;
}

.owp-search-form {
    display: flex;
    flex-direction: column;
    gap: 32px;
}

.owp-search-input {
    margin-right: 0;
    background-image: url(../../assets/images/search.png) !important;
    background-position: right 10px center !important;
    background-repeat: no-repeat !important;
    background-size: 16px 16px !important;
}

/* Vacancies geo search */
.vacancies-geo-filter {
    padding-right: 32px;
}

.vacancies-geo-search-section {
    padding-top: 40px;
}

.owp-buttoncontainer {
    flex-direction: row-reverse;
    gap: 15px;
    padding-top: 10px;
}

.owp-search-button {
    display: none;
}

/* Vacancies filter */
.matchcriteria-filters {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    margin: 0 0 16px;
}

.filter-accordion {
    margin: 40px 0;
    gap: 40px;
    display: flex;
    flex-direction: column;
}

.matchcriteria-filters h2 {
    margin-bottom: 0;
}

.matchcriteria-filters-options .filter-option .option-name {
    transition: 0.2s linear;
}

.matchcriteria-filters-options .filter-option:hover .option-name {
    color: #38adf0;
}

.matchcriteria-filters-options .filter-option:last-child {
    margin-bottom: 0;
}

.matchcriteria-filters-options ul {
    margin-bottom: 0 !important;
    list-style: none;
    padding: 0;
}

.vacancies-matchcriteria {
    padding-right: 32px;
}

.filter-option a {
    padding-left: 30px;
    position: relative;
    display: flex;
    align-items: center;
    min-height: 28px;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.3;
    text-decoration: none;
}

.matchcriteria-checkbox {
    display: none;
}

.matchcriteria-filters-options li.filter-option {
    margin: 0 0 8px;
    list-style: none;
}

.matchcriteria-filters-options li.filter-option:last-child {
    margin-bottom: 0;
}

.filter-option a::before {
    content: "";
    position: absolute;
    transform: translateY(-50%);
    top: 50%;
    left: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 1em;
    height: 1em;
    background: transparent;
    border: 2px solid #b9b6e6;
    border-radius: 4px;
    cursor: pointer;
    transition: all 250ms cubic-bezier(0.4, 0, 0.23, 1);
}

.filter-option a:focus::after,
.active.filter-option a::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 0.2em;
    border-right: 2px solid transparent;
    border-bottom: 2px solid transparent;
    transform: rotate(45deg);
    transform-origin: 0% 100%;
    animation: checkbox-check 125ms 250ms cubic-bezier(0.4, 0, 0.23, 1) forwards;
}

.filter-option a:focus::before,
.active.filter-option a::before {
    border: 0.5em solid #38adf0;
}

@keyframes checkbox-check {
    0% {
        width: 0;
        height: 0;
        border-color: #fff;
        transform: translate3d(0, 0, 0) rotate(45deg);
    }

    33% {
        width: 0.3em;
        height: 0;
        transform: translate3d(0, 0, 0) rotate(45deg);
    }

    100% {
        width: 0.3em;
        height: 0.5em;
        border-color: #fff;
        transform: translate3d(0, -0.5em, 0) rotate(45deg);
    }
}

.filter .person-holder {
    display: flex;
    justify-content: center;
    align-items: center;
    margin-bottom: 32px;
    gap: 15px;
}

.single-vacancy .person-holder {
    display: flex;
    justify-content: left;
    align-items: center;
    margin-bottom: 32px;
    gap: 15px;
}

.filter .call-to-action__content__name,
.single-vacancy .call-to-action__content__name {
    margin: 0;
    font-size: 14px;
    font-weight: 500;
}
.job-title-holder {
    display: flex;
    justify-content: center;
    flex-direction: column;
    margin-right: 2.5px;
}
.name-and-title-holder {
    margin: 0;
}

.call-to-action__content__job-title {
    color: #fff;
    font-weight: 300;
    font-size: 14px;
    margin: 0;
}
.vacancy.filter .call-to-action__content__image {
    margin-left: 4px;
}

.call-to-action__container.vacancy.filter {
    padding-right: 32px;
}

.call-to-action__content__job-title {
    font-size: 14px;
    color: #fff;
}

.filter-search-container {
    position: fixed;
    top: 155px;
    background-color: #fff;
    width: 100%;
    z-index: 9;
    left: 0;
    display: flex;
    flex-direction: row;
    padding: 16px;
}

.filter-search-container .search {
    width: 30%;
    border-right: 1px solid #e1e1e1;
    justify-content: center;
}

.filter-search-container .filter {
    width: 70%;
}

.filter-search-container > * {
    padding: 0 20px;
    display: flex;
    font-size: 16px;
    cursor: pointer;
}

.filter-search-container i {
    font-size: 12px;
    margin: auto 0;
    padding-right: 10px;
}

.call-to-action__content__normal-link {
    color: #fff;
    display: flex;
    justify-content: center;
    margin-top: 10px;
    transition: 0.2s linear;
}

.call-to-action__content__normal-link:hover {
    color: #fff !important;
    opacity: 0.6;
}

@media (max-width: 772px) {
    .filter-search-mobile-container {
        position: fixed;
        left: -100%;
        top: 0;
        z-index: 999;
        background-color: #fff;
        width: 100%;
        height: 100%;
        overflow: scroll;
        padding: 50px 20px;
        transition: 0.2s linear;
    }

    .filter-search-mobile-container.active {
        left: 0;
    }

    .vacancies-search,
    .vacancies-matchcriteria {
        padding-right: 0;
    }

    .filter-search-mobile-container .close-button {
        position: absolute;
        right: 20px;
        top: 20px;
        z-index: 99999;
        fill: red;
        font-size: 20px;
    }
}

/* No results message for filters */
.filter-error-message {
    width: 70%;
    display: flex;
    flex-direction: column;
}

@media (max-width: 772px) {
    .filter-error-message {
        width: 100%;
    }
}

/* Block cover styling */
.wp-block-cover:not(.no-border-radius) > picture img,
.wp-block-cover:not(.no-border-radius) > img {
    border-radius: 8px !important;
}

/* Font correction */
@media (max-width: 992px) {
    h1 {
        font-size: 45px;
    }

    h2 {
        font-size: 38px;
    }
}

/* Pagination */
.pagination-items {
    display: flex;
    padding: 0 !important;
}

/* Multiselect checkbox */

/* Filter message */

/* Block margin fix for vacancy detail pagina */
#vacancy-article-detail .wp-block-group {
    margin-top: 100px;
    margin-bottom: 100px;
}

@media (max-width: 772px) {
    #vacancy-article-detail .wp-block-group {
        margin-top: 50px;
        margin-bottom: 50px;
    }
}

html {
    overflow: visible !important;
}

.vacancy-info-content,
.vacancy-info-content p,
.vacancy-info-content ul,
.vacancy-info-content span {
    font-size: 16px !important;
    font-weight: 300 !important;
    font-family: "Work sans" !important;
    color: #170d69 !important;
    margin-top: 0;
    margin-bottom: 20px !important;
}

.vacancy-info-title {
    font-size: 20px !important;
    font-weight: 500 !important;
    font-family: "Work sans" !important;
    color: #170d69 !important;
    margin-top: 40px !important;
    margin-bottom: 20px !important;
}

.call-to-action__content__buttons__item a {
    color: #fff;
    display: flex;
    gap: 10px;
    align-items: center;
}

/* Logged in styling */
.single-vacancy .person-holder,
.call-to-action__content__title {
    margin-bottom: 0;
}

.vacancy .call-to-action__content {
    gap: 30px;
}

.call-to-action__content__buttons {
    gap: 20px;
}

.call-to-action__content__buttons {
    display: flex;
    flex-direction: column;
}

#vacancy-form {
    scroll-margin-top: 20px;
}

.vacancy-form__title {
    margin-bottom: 10px;
    margin-top: 50px;
}

.vacancy_apply_button {
    background: var(--wp--custom--button-tertiary--background-color);
    border: var(--wp--custom--button-tertiary--border-width) solid
        var(--wp--custom--button-tertiary--border-color);
    color: var(--wp--custom--button-tertiary--color);
}

header:has(~ #vacancy-article-detail) .header-banner {
    display: none;
}

#vacancy-article-detail .wp-block-group {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
}

@media (max-width: 772px) {
    .vacancy-form {
        background-color: #170d69;
        padding: 40px;
        border-radius: 10px;
        width: 100%;
        margin-left: 0 !important;
    }
}

/* Geo search styling */
.owp-geo-search-input-container {
    position: relative;
    display: flex;
    width: 100%;
}

.owp-geo-search-input {
    width: 100%;
    padding-right: 100px !important; /* Make room for the dropdown */
}

.owp-geo-search-dropdown {
    position: absolute;
    right: 1px;
    top: 1px;
    color: #898989;
    cursor: pointer;
    height: calc(100% - 2px);
    width: auto;
    padding-right: 25px !important;
    background-position-y: center !important;
    border-radius: 10px;
}

/* Hide the old range slider */

picture {
    display: block !important;
}

.wp-block-image picture img {
    height: 100%;
    object-fit: cover;
}

.breadcrumb { padding-left: 0px !important; margin-bottom: 0px !important; display: flex; gap: 10px; flex-wrap: wrap; }
.breadcrumbs { border-radius: 5px; margin-block-start: 0px !important; margin-bottom: 1rem; display: inline-block; }
.breadcrumbs p { margin: 0px; line-height: 1.1; }
.breadcrumbs a, .breadcrumbs span { font-size: 15px; text-decoration: none; color: #38adf0; opacity: 0.75; line-height: 1; transition: all .3s ease-in-out; }
.breadcrumb li { list-style: none; display: flex; align-items: center; }
.breadcrumb li:last-child { font-weight: 600; }

.l24-otys-apply label:has(> input[type="checkbox"]) { display: flex; align-items: flex-start; gap: 10px; cursor: pointer; }
.l24-otys-apply label > input[type="checkbox"] { width: auto; flex: 0 0 auto; margin-top: 4px; }
.l24-otys-apply [hidden] { display: none; }

.vacancy-content { display: block; background: #fff; color: inherit; text-decoration: none; }
.vacancy-body { display: flex; align-items: flex-start; }
.vacancy-description { width: 100%; color: #666; }
.vacancies-list .vacancy .vacancy-title { margin: 0 0 15px 0; transition: color .2s ease-in-out; }
.owp-search-form { display: flex; }
.owp-search-input { flex: 1 1 auto; width: auto; }

.pagination-items { list-style: none; margin: 0 0 32px; }
.pagination-item { list-style: none; margin: 0 0 13px; }
.pagination-link { display: block; padding: 0 10px; line-height: 30px; font-weight: 500; color: #170d69; text-decoration: none; }
.pagination-item.active .pagination-link,
.pagination-link:hover { color: #38adf0; }

.owp-search-form { position: relative; }
.owp-search-form .l24-suggest { box-sizing: border-box; position: absolute; left: 0; top: 100%; z-index: 20; width: 100%; min-width: 300px; max-height: 400px; margin: 6px 0 0; padding: 6px; overflow-y: auto; list-style: none; background: #fff; border: 1px solid #dcd9f5; border-radius: 10px; box-shadow: 0 10px 28px rgba(23, 13, 105, 0.14); }
.owp-search-form .l24-suggest[hidden] { display: none; }
.owp-search-form .l24-suggest li { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin: 0; padding: 9px 12px; border-radius: 6px; color: #170d69; font-size: 15px; font-weight: 400; line-height: 1.3; cursor: pointer; }
.owp-search-form .l24-suggest li:hover,
.owp-search-form .l24-suggest li[aria-selected="true"] { background: #f0efff; }
.owp-search-form .l24-suggest-title { flex: 1 1 auto; min-width: 0; overflow-wrap: break-word; }
.owp-search-form .l24-suggest mark { padding: 0; background: transparent; color: #38adf0; font-weight: 600; }
.owp-search-form .l24-suggest-count { flex: 0 0 auto; min-width: 28px; padding: 2px 8px; border-radius: 10px; background: #eceaff; color: #5c5a8a; font-size: 12px; font-weight: 500; text-align: center; }

.vacancy-list-grid .vacancy { display: flex; }
.vacancy-list-grid .vacancy-content { display: flex; flex: 1 1 auto; flex-direction: column; }
.vacancy-list-grid .vacancy-body { flex: 1 1 auto; align-items: stretch; }
.vacancy-list-grid .vacancy-description { display: flex; flex-direction: column; }
.vacancy-list-grid .vacancy-recruiter { margin-top: auto; padding-top: 16px; }
.vacancy-list-grid .vacancy-description > .wp-block-button { display: block; flex: 0 0 auto; }
.vacancy-list-grid .vacancy-description > .wp-block-button .wp-block-button__link { display: block; box-sizing: border-box; height: auto; text-align: center; }
