/* Block 'Clients' (client-list)
------------------------------------------------------------------------------------------ */

.wp-block-wx-clients {
    margin-bottom: 1.5em;
}

.wp-block-wx-clients .filter {
    position: relative;
}

.wp-block-wx-clients .filter:has(button.filter__single-option.mixitup-control-active) .filter__label {
    background-color: var(--c-secondary-light);
    color: var(--c-secondary);
}

.wp-block-wx-clients .filter__options {
    padding: 0.5em 1em;
    margin: 0;
    border: 0;
}

.wp-block-wx-clients .filter__single-option {
    background: 0 0;
    border-radius: 0;
    border: 0;
    position: relative;
    margin-left: 1.25em;
    margin-right: 2em;
    padding: 0.375em 0;
    text-align: left;

    -webkit-appearance: none;
            appearance: none;

    -webkit-user-select: none;
       -moz-user-select: none;
        -ms-user-select: none;
            user-select: none;
}

.wp-block-wx-clients .filter__single-option::before {
    content: '';
    border-radius: 2px;
    border: 1px solid var(--c-input-border);
    color: var(--c-secondary);
    background: transparent;
    position: absolute;
    width: 0.8rem;
    height: 0.8rem;
    top: 50%;
    left: -1.25em;
    transform: translateY(-50%);
    transition: border-color 0.2s ease-in-out, background-color 0.2s ease-in-out;
}

.wp-block-wx-clients .filter__single-option.mixitup-control-active::before {
    border-color: currentColor;
    background-color: currentColor;
}

.wp-block-wx-clients .filter__single-option:where(:hover, :focus),
.wp-block-wx-clients .filter--reset:where(:hover, :focus) .filter__button {
    color: var(--c-secondary);
}

.wp-block-wx-clients .filter__single-option:hover::before {
    border-color: var(--c-secondary);
}

.wp-block-wx-clients .filter__label {
    border-radius: 4px;
    transition:
        background 0.2s ease-in-out,
        color 0.2s ease-in-out;
}

.wp-block-wx-clients .filter .filter__label:has(+ .filter__options) {
    font-weight: 500;
}
.wp-block-wx-clients .filter .filter__label:has(+ .filter__options) + .filter__options .filter__single-option {
    font-weight: 400;
}

.wp-block-wx-clients .filter__label {
    margin: 0;
    cursor: pointer;
    line-height: 1.15;
    text-transform: capitalize;
    padding: 0.625em 1.25em;
}


.wp-block-wx-clients .filter--ssiv .filter__options {
    display: flex;
    gap: 0.5em;
}

.wp-block-wx-clients .filter--ssiv .filter__button {
    display: flex;
    align-items: center;
    gap: 0.5em;
}

.wp-block-wx-clients .filter--ssiv .filter__button:where(:hover, :focus) {
    color: var(--c-secondary);
}

.wp-block-wx-clients .filter--ssiv .filter__button > .icon {
    display: flex;
    height: 18px;
    max-width: 36px;
}

.wp-block-wx-clients .filter--ssiv .filter__button.mixitup-control-active {
    background-color: var(--c-secondary-light);
}




.client-item.card {
    padding: 0;
    flex-basis: 100%;
    position: relative;
    top: 0;
    border-radius: 8px;
    box-shadow: none;
    transition: box-shadow 0.2s ease-in-out, top 0.2s ease-in-out;
}

 .client-item.card:where(.has-success-story, .has-interview) .post-links--indicator {
    opacity: 0;
    visibility: hidden;
}

@media (min-width: 31em) {
    .client-item.card {
        flex-basis: calc(50% - 0.75em);
    }
}

@media (min-width: 56em) {
    .client-item.card {
        flex-basis: calc(33.333% - 1em);
    }

    .client-item.card:where(.has-success-story, .has-interview):hover img,
    .client-item.card:where(.has-success-story, .has-interview):focus-within img {
        scale: 1.05;
    }

    .client-item.card:where(.has-success-story, .has-interview) .post-links--indicator {
        opacity: 1;
        visibility: visible;
    }
    .client-item.card:where(.has-success-story, .has-interview):hover .post-links--indicator,
    .client-item.card:where(.has-success-story, .has-interview):focus-within .post-links--indicator {
        opacity: 0;
        visibility: hidden;
    }

    .client-item.card:where(.has-success-story, .has-interview):hover .post-links--main,
    .client-item.card:where(.has-success-story, .has-interview):focus-within .post-links--main {
        opacity: 1;
        z-index: 1;
    }
}

.client-item.card:where(.has-success-story, .has-interview) .post-link .icon {
    display: inline-block;
    height: 21px;
    vertical-align: middle;
    margin-right: 0.25em;
}
.client-item.card.has-success-story.has-interview .post-link .button-label {
    display: none;
}
.client-item.card.has-success-story.has-interview .post-link:first-child {
    align-items: flex-end;
}
.client-item.card.has-success-story.has-interview .post-link:last-child {
    align-items: flex-start;
}

.client-item .hotel-info {
    padding: 1em;
}

.client-item .hotel-info__name {
    font-size: 1.375rem;
    font-weight: 600;
    margin-bottom: 0.5em;
}

.client-item .hotel-info__categories {
    font-size: 1rem;
    color: var(--c-grey-dark-1);
    transition: all 0.2s ease-in-out;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 1em;
}

.client-item .hotel-info__categories > * {
    display: inline-flex;
}

.client-item .hotel-info__categories > *::before {
    display: flex;
    align-items: center;
    line-height: 0;
    margin-right: 0.5em;
}

.client-item .hotel-info__categories .country,
.client-item .hotel-info__categories .countries {
    order: 1;
}

.client-item .hotel-info__categories .country::before,
.client-item .hotel-info__categories .countries::before,
.client-item .hotel-info__categories .category--country::before,
.client-item .hotel-info__categories .category--countries::before {
    content: url(../../../assets/images/icon-location-dot.svg);
}

.client-item .hotel-info__categories .type {
    order: 2;
}

.client-item .hotel-info__categories .type::before,
.client-item .hotel-info__categories .category--type::before {
    content: url(../../../assets/images/icon-tag.svg);
}

.client-item .hotel-info__categories .rooms {
    order: 3;
}

.client-item .hotel-info__categories .rooms::before,
.client-item .hotel-info__categories .category--rooms::before {
    content: url(../../../assets/images/icon-keycard.svg);
}

.client-item .hotel-info__categories .hotels {
    order: 3;
}

.client-item .hotel-info__categories .hotels::before,
.client-item .hotel-info__categories .category--hotels::before {
    content: url(../../../assets/images/icon-hotel.svg);
}

.client-item .figure-container {
    position: relative;
    border-top-left-radius: inherit;
    border-top-right-radius: inherit;
    overflow: hidden;
}
.client-item.hotel-group .figure-container {
    border-bottom: 1px solid var(--c-grey-light-2);
}
.client-item .client__hotel-img {
    margin: 0;
    height: min(20vw, 220px);
    min-height: 160px;
    
    img {
        transition: scale 0.2s ease-in-out;
    }
}

@media (min-width: 56em) {
    .client-item .client__hotel-img {
        min-height: 140px;
    }
}

.client-item .client__hotel-img img {
    object-fit: cover;
    height: 100%;
    width: 100%;
    border-top-left-radius: 8px;
    border-top-right-radius: 8px;
}

.client-item .post-links {
    position: absolute;
    transition: all 0.2s ease-in-out;
}

.client-item .post-links a {
    text-decoration: none;
}

.client-item .post-links--indicator {
    top: 1em;
    left: 1em;
}
.client-item .post-links--indicator .post-link__icon:first-child {
    margin-bottom: 0.5em;
}
.client-item .post-links--indicator .post-link__icon {
    box-shadow: var(--box-shadow);
}
.client-item .post-links--indicator .post-link__icon svg {
    transform: translateY(1px);
}


.client-item .post-links--main {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    background: rgb(0 0 0 / 0.5);
    height: min(20vw, 220px);
    min-height: 160px;
    display: flex;
    border-top-left-radius: 8px;
    border-top-right-radius: 8px;
}

@media (min-width: 56em) {
    .client-item .post-links--main {
        opacity: 0;
        z-index: -1;
        min-height: 140px;
    }
}

.client-item .post-links--main .post-link {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 100%;
    padding: 1em;
    text-align: center;
    border-top-left-radius: 8px;
    border-top-right-radius: 8px;
    transition: background 0.2s ease-in-out;
}

.client-item .post-links--main .post-link__icon {
    width: min(8vw, 80px);
    height: min(8vw, 80px);
    padding: 0.5em;
}

.client-item .post-links--main .wp-block-button__link {
    height: auto;
}

.client-item .post-link__icon {
    width: min(10vw, 40px);
    height: min(10vw, 40px);
    padding: 0.5em;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 100%;
    background: var(--c-white);
}

@media (min-width: 56em) {
    .client-item .post-link__icon {
        width: min(10vw, 48px);
        height: min(10vw, 48px);
        padding: 0;
    }
}

.client-item .post-link__title {
    display: block;
    margin-top: 0.5em;
    color: var(--c-white);
    font-weight: 500;
    font-size: 1.125em;
    line-height: 1.2;
    text-shadow: 0 0 6px rgb(0 0 0 / 0.5);
}

.client-item .figure-container {
    position: relative;
}

.client-item .member-of {
    position: absolute;
    bottom: 1em;
    right: 1em;
    max-width: 164px;
    background: #fff;
    border-radius: 8px;
    margin: 0;
    padding: 0.667em;
    transition: all 0.2s ease-in-out;
}

.client-item .member-of figcaption {
    font-size: 0.75rem;
    margin-bottom: 0.286em;
}

.client-item.client_category-hotel-chain .hotel-info__categories .type {
    display: none;
}
