.placeholder-preloader,
.placeholder-other-variants-preloader,
.placeholder-partner-hotel-preloader {
    display: none;
}

.placeholder-preloader.placeholder-preloader--active,
.placeholder-other-variants-preloader.placeholder-other-variants-preloader--active,
.placeholder-partner-hotel-preloader.placeholder-partner-hotel-preloader--active {
    display: flex;
}

.placeholder-preloader.placeholder-preloader--tiles {
    gap: 32px;
    flex-wrap: wrap;
    align-content: flex-start;
    flex-direction: row;
    justify-content: space-between;
    padding-bottom: 32px;
}

.placeholder-preloader.placeholder-preloader--list,
.placeholder-other-variants-preloader,
.placeholder-partner-hotel-preloader {
    gap: 16px;
    flex-direction: column;
    padding-bottom: 16px;
}

.preloader-hotel {
    max-width: 273px;
    width: calc(33.3333% - 21.33px); /* (32+32)/3=21.33 */
    box-shadow: 0 0 7px 0 rgba(0, 0, 0, 0.12);
}

.preloader-hotel__body {
    display: flex;
    flex-direction: column;
}

.preloader-hotel__img {
    width: 100%;
    height: 210px;
    position: relative;
}

.preloader-hotel__favorites {
    width: 32px;
    height: 32px;
    border-radius: 100%;
    background: #F1F1F1;
    display: inline-block;
    position: absolute;
    top: 5px;
    right: 5px;
}

.preloader-hotel__img-labels {
    padding: 4px 10px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    border-bottom: 1px solid #F1F1F1;
}

.preloader-hotel__stars {
    width: 80px;
    height: 16px;
}

.preloader-hotel__wifi-wrap {
    display: flex;
    gap: 8px;
    align-items: center;
}

.preloader-hotel__wifi {
    width: 52px;
    height: 16px;
}

.preloader-hotel__content {
    padding: 20px 10px 20px;
}

.placeholder-preloader--list .preloader-hotel__content,
.placeholder-other-variants-preloader .preloader-hotel__content,
.placeholder-partner-hotel-preloader .preloader-hotel__content {
    overflow: hidden;
    position: relative;
    z-index: 0;
    padding: 10px 15px 15px;
}

.preloader-hotel__name-wrap {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 15px;
}

.placeholder-preloader--list .preloader-hotel__name-wrap,
.placeholder-other-variants-preloader .preloader-hotel__name-wrap,
.placeholder-partner-hotel-preloader .preloader-hotel__name-wrap {
    justify-content: flex-start;
    align-items: center;
    gap: 9px;
}

.preloader-hotel__name {
    width: 174px;
    height: 34px;
}

.placeholder-preloader--list .preloader-hotel__name,
.placeholder-other-variants-preloader .preloader-hotel__name,
.placeholder-partner-hotel-preloader .preloader-hotel__name {
    width: 211px;
    height: 16px;
}

.preloader-hotel__name-icons {
    display: flex;
    align-items: center;
    gap: 3px;
}

.placeholder-preloader--list .preloader-hotel__name-icons,
.placeholder-other-variants-preloader .preloader-hotel__name-icons,
.placeholder-partner-hotel-preloader .preloader-hotel__name-icons {
    gap: 8px;
}

.preloader-hotel__name-icon {
    width: 20px;
    height: 20px;
    border-radius: 8px;
}

.placeholder-preloader--list .preloader-hotel__name-icon,
.placeholder-other-variants-preloader .preloader-hotel__name-icon,
.placeholder-partner-hotel-preloader .preloader-hotel__name-icon {
    width: 16px;
    height: 16px;
    border-radius: 4px;
}

.preloader-hotel__content .preloader-hotel__stars{
    margin-bottom: 8px;
}

.preloader-hotel__info-wrap {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    margin-top: 8px;
    gap: 8px;
}

.preloader-hotel__tile-info-labels {
    flex: 1;
    padding-top: 8px;
}

.preloader-hotel__tile-info-labels .preloader-hotel__location {
    max-width: 166px;
    width:100%;
    height: 52px;
}

.preloader-hotel__tile-info-labels .preloader-hotel__distance {
    max-width: 150px;
    width: 97%;
    height: 16px;
    margin-top: 8px;
}

.preloader-hotel__metro {
    width: 62px;
    height: 16px;
    margin-top: 4px;
}

.preloader-hotel__tile-info-labels .preloader-hotel__cancel-cond {
    max-width: 134px;
    width: 87%;
    margin-top: 4px;
    height: 16px;
}

.preloader-hotel__info-separator {
    height: 106px;
    width: 1px;
    min-width: 1px;
    margin-right: 12px;
}

.preloader-hotel__rating-word {
    width: 59px;
    height: 17px;
}

.preloader-hotel__rating-box {
    width: 59px;
    height: 43px;
    margin-top: 6px;
}

.preloader-hotel__reviews-num {
    width: 59px;
    height: 25px;
    margin-top: 8px;
}

.preloader-hotel__list-info-reviews {
    position: absolute;
    display: flex;
    flex-direction: column;
    top: 30px;
    right: 15px;
}

.placeholder-preloader--list .preloader-hotel__rating-word,
.placeholder-other-variants-preloader .preloader-hotel__rating-word,
.placeholder-partner-hotel-preloader .preloader-hotel__rating-word {
    width: 58px;
    height: 12px;
}

.placeholder-preloader--list .preloader-hotel__rating-box,
.placeholder-other-variants-preloader .preloader-hotel__rating-box,
.placeholder-partner-hotel-preloader .preloader-hotel__rating-box {
    width: 58px;
    height: 43px;
    margin-top: 4px;
}

.placeholder-preloader--list .preloader-hotel__reviews-num,
.placeholder-other-variants-preloader .preloader-hotel__reviews-num,
.placeholder-partner-hotel-preloader .preloader-hotel__reviews-num {
    width: 58px;
    height: 16px;
    margin-top: 4px;
}

.preloader-hotel__list-info-labels {
    margin-top: 12px;
}

.preloader-hotel__location-wrap {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: 6px;
}

.preloader-hotel__list-info-labels .preloader-hotel__location{
    width: 183px;
    height: 16px;
}

.preloader-hotel__list-info-labels .preloader-hotel__map{
    width: 115px;
    height: 16px;
}

.preloader-hotel__list-info-labels .preloader-hotel__distance{
    width: 114px;
    height: 16px;
    margin-top: 8px;
}

.preloader-hotel__list-info-labels .preloader-hotel__watching {
    width: 307px;
    height: 16px;
    margin-top: 12px;
}

.preloader-hotel__list-info-labels .preloader-hotel__cancel-cond-wrap {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: 8px;
    margin-top: 10px;
}

.preloader-hotel__cancel-cond-wrap .preloader-hotel__cancel-cond {
    margin-top: 0;
}

.preloader-hotel__cancel-cond-wrap .preloader-hotel__cancel-cond:nth-child(1) {
    width: 155px;
    height: 24px;
}

.preloader-hotel__cancel-cond-wrap .preloader-hotel__cancel-cond:nth-child(2) {
    width: 126px;
    height: 24px;
}

.preloader-hotel__services {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: 2px;
    margin-top: 8px;
}

.preloader-hotel__services-item {
    width: 30px;
    height: 30px;
}

.preloader-hotel__meta-search-reason {
    margin-top: 8px;
    width: 240px;
    height: 32px;
}

.preloader-hotel__gallery {
    padding: 8px 10px 9px;
    display: flex;
    align-items: center;
    gap: 3px;
    clear: left;
}

.preloader-hotel__gallery-item {
    width: 55px;
    height: 55px;
}

.preloader-hotel__footer {
    padding: 8px 10px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    border-top: 1px solid #F1F1F1;
    gap: 15px;
}

.preloader-hotel__price {
    width: 124px;
    height: 32px;
}

.preloader-hotel__btn {
    width: 87px;
    height: 32px;
}

.preloader-hotel__price-wrap {
    display: flex;
    padding-top: 10px;
    align-items: flex-start;
    gap: 4px;
}

.preloader-hotel__price-small {
    width: 104px;
    height: 16px;
}

.preloader-hotel__price-big {
    width: 115px;
    height: 24px;
    margin-left: 12px;
}

.preloader-hotel__other-variants-wrapper {
    display: flex;
    align-items: flex-end;
    height: 168px;
    width: 100%;
}

.preloader-hotel__other-variants {
    box-sizing: border-box;
    height: 160px;
    width: 100%;
    padding: 16px;
    border: 1px solid #DADEE2;
    border-radius: 24px 24px 16px 16px;
    overflow: hidden;
}

.preloader-hotel__other-variants-heading {
    height: 24px;
    width: 220px;
    margin-bottom: 16px;
}

.preloader-hotel__other-variants-list {
    display: flex;
    gap: 8px;
}

.preloader-hotel__other-variants-item {
    flex-shrink: 0;
    width: 125px;
    height: 88px;
    border-radius: 16px;
}

.placeholder-preloader--list .only-tile,
.placeholder-preloader--list .only-other,
.placeholder-preloader--tiles .only-list,
.placeholder-preloader--tiles .only-other,
.placeholder-other-variants-preloader .only-tile,
.placeholder-other-variants-preloader .only-no-other,
.placeholder-partner-hotel-preloader .only-tile,
.placeholder-partner-hotel-preloader .only-no-other {
    display: none !important;
}

.placeholder-preloader--list .preloader-hotel,
.placeholder-other-variants-preloader .preloader-hotel,
.placeholder-partner-hotel-preloader .preloader-hotel {
    width: 100%;
    max-width: 100%;
}

.placeholder-other-variants-preloader .preloader-hotel,
.placeholder-partner-hotel-preloader .preloader-hotel {
    overflow: hidden;
    border-radius: 16px;
}

.placeholder-preloader--list .preloader-hotel__body,
.placeholder-other-variants-preloader .preloader-hotel__body,
.placeholder-partner-hotel-preloader .preloader-hotel__body {
    display: block;
}

.placeholder-preloader--list .preloader-hotel__img,
.placeholder-other-variants-preloader .preloader-hotel__img,
.placeholder-partner-hotel-preloader .preloader-hotel__img {
    width: 282px;
    height: 217px;
    float: left;
}

.placeholder-preloader--list .preloader-hotel__favorites,
.placeholder-other-variants-preloader .preloader-hotel__favorites,
.placeholder-partner-hotel-preloader .preloader-hotel__favorites {
    top: 8px;
    right: 8px;
}

.placeholder-preloader--list .preloader-hotel__footer,
.placeholder-other-variants-preloader .preloader-hotel__footer,
.placeholder-partner-hotel-preloader .preloader-hotel__footer {
    padding: 10px 8px;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 15px;
}

.placeholder-preloader--list .preloader-hotel__btn,
.placeholder-other-variants-preloader .preloader-hotel__btn,
.placeholder-partner-hotel-preloader .preloader-hotel__btn {
    width: 120px;
    height: 31px;
}

.preloader-hotel__stars,
.preloader-hotel__wifi,
.preloader-hotel__name,
.preloader-hotel__price,
.preloader-hotel__btn,
.preloader-hotel__price-big,
.preloader-hotel__price-small,
.preloader-hotel__gallery-item,
.preloader-hotel__location,
.preloader-hotel__distance,
.preloader-hotel__metro,
.preloader-hotel__cancel-cond,
.preloader-hotel__rating-word,
.preloader-hotel__rating-box,
.preloader-hotel__reviews-num,
.preloader-hotel__map,
.preloader-hotel__watching,
.preloader-hotel__services-item,
.preloader-hotel__other-variants-heading,
.preloader-hotel__other-variants-item,
.preloader-hotel__meta-search-reason {
    border-radius: 4px;
}

.anim-bg {
    animation-duration: 1s;
    animation-fill-mode: forwards;
    animation-iteration-count: infinite;
    animation-name: placeHolderShimmer;
    animation-timing-function: linear;
    background: #f6f7f8;
    background: linear-gradient(to right, rgba(218, 222, 226, 0.8), rgba(218, 222, 226, 0.37), rgba(218, 222, 226, 0.8));
    background-size: 1200px 250px;
}

@-webkit-keyframes placeHolderShimmer{
    0%{
        background-position: -450px 0
    }
    100%{
        background-position: 450px 0
    }
}
@-moz-keyframes placeHolderShimmer{
    0%{
        background-position: -450px 0
    }
    100%{
        background-position: 450px 0
    }
}
@-o-keyframes placeHolderShimmer{
    0%{
        background-position: -450px 0
    }
    100%{
        background-position: 450px 0
    }
}
@keyframes placeHolderShimmer{
    0%{
        background-position: -450px 0
    }
    100%{
        background-position: 450px 0
    }
}
/* Ширина каждого столбца подобранна под ширину загруженных столбцов */
/* номеров эталонного отеля 18.11.24 (Отель Pentahotel Moscow, Arbat)  */
.skeleton-variants__loader td {
    padding: unset !important;
    width: unset !important;
}
/* Категория номера */
.skeleton-variants__ctg-cell {
    width: 192.469px;
    min-width: 192.469px;
    max-width: 192.469px;
    height: 212px;
    display: flex;
    gap: 8px;
    padding: 14px 12px;
}

/* Гостей */
.skeleton_quantity_cell {
    width: 52.828px;
    height: 92px;
    padding: 14px 12px;
    display: flex;
    justify-content: center;
    align-items: center;
}

/* Условия */
.skeleton_mealtype_cell {
    width: 100.172px;
    height: 104px;
    display: flex;
    flex-direction: column;
    gap: 22px;
    padding: 8px;
    margin-top: 0;
}

/* За Х суток */
.skeleton_day_cell {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 201.219px;
    height: 92px;
    padding: 14px 8px;
}

/* Номеров */
.skeleton_selectbox_cell {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 89.422px;
    height: 92px;
    padding: 14px 12px;
}

/* Стоимость */
.skeleton_roomname_cell {
    width: 116.891px;
    padding: 24px 8px;
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.skeleton-variants__img-box {
    width: 72px;
    height: 96px;
}

.skeleton-variants__stick-box {
    width: 16px;
    height: 16px;
    min-width: 16px;
    border-radius: 4px;
}

.w-100 {
    width: 100%;
}

.skeleton-variants__stick-box-double {
    height: 32px;
}

.skeleton-variants__stick-box-small {
    height: 14px;
}

.skeleton-variants__stick-container {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.flex-grow {
    flex-grow: 1;
}

.gap-4 {
    gap: 4px;
}

.gap-8 {
    gap: 8px;
}

.skeleton-variants__row-container {
    display: flex;
}

.skeleton-variants__daycell-frame {
    width: 100%;
    height: 48px;
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.skeleton-variants__selectbox-frame {
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: 5px;
}

.skeleton-variants__background {
    background-color: #f0edec;
}

.skeleton-variants__amountcell-frame {
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.skeleton-variants__daycell-frame>.skeleton-variants__stick-box{
    height: 24px;
    width: 79px;
    margin-left: auto;
}

.skeleton_quantity_cell .skeleton-variants__stick-box {
    width: 24px;
}