.fav-i * {
    margin: 0;
    padding: 0;
    box-sizing: border-box !important;
    
    font-family: initial;
    font-size: initial;
    font-weight: initial;
    text-align: start;
    line-height: initial !important;
    white-space: initial;
    
    list-style-type: none;
    border: initial;
    border-radius: initial;
    outline: initial;
    color: initial;
    background-color: initial;
    box-shadow: initial;
    text-decoration: none;
    
    cursor: initial;
    appearance: auto;
}

input:focus, textarea:focus {
    outline: 0;
}


.fav-i-card {
    display: flex;
    width: 961px;
    min-height: 250px;

    border-radius: 10px;
    background: #F2F2F2;

    transition: box-shadow 0.05s linear;
}

@media(max-width: 1024px) {
    .fav-i-card {
        width: 89.33vw;
        min-height: auto;
        flex-direction: column;

        border-radius: 2.13vw;
    }
}

.fav-i-card:hover {
    box-shadow: 0 0 17.1px 6px rgba(0, 0, 0, 0.25);
}

.fav-i-card__image {
    position: relative;

    width: 418px;
    flex-shrink: 0;

    border-radius: 10px 0 0 10px;

    overflow: hidden;
}

@media(max-width: 1024px) {
    .fav-i-card__image {
        width: 100%;
        padding: 1.07vw 1.07vw 0;

        border-radius: 2.13vw 2.13vw 0 0;
    }
}

.fav-i-card__wr-image {
    height: 100%;
}

@media(max-width: 1024px) {
    .fav-i-card__wr-image {
        height: 51.73vw;

        border-radius: 2.13vw;
        
        overflow: hidden;
    }
}

.fav-i-card__wr-image > img {
    height: 100%;
    width: 100%;
    
    object-fit: cover;
    object-position: left bottom;
}

.fav-i-card__ribons {
    position: absolute;
    top: -1px;
    right: 0;

    display: none;
    width: 147px;
    height: 97px;

    background: no-repeat url('../i/promo-ribbons-yellow.png');
    background-size: contain;
    background-position: right top;
    pointer-events: none;
}

@media(max-width: 1024px) {
    .fav-i-card__ribons {
        width: 39.20vw;
        height: 25.87vw;
    }
}

.fav-i-card__ribons_active {
    display: block;
}

.fav-i-card__flag {
    position: absolute;
    top: 6.2%;
    left: 0;

    display: none;
    padding: 8px 29px 8px 24px;

    font-family: 'Roboto';
    font-size: 15px;
    font-style: normal;
    font-weight: 400;
    text-align: center;
    text-transform: uppercase;
    color: #FFF;

    background: linear-gradient(90deg, #F60 0%, #FF1572 100%);
    background-repeat: no-repeat;

    clip-path: polygon(100% 0%, 87.5% 50%, 100% 100%, 0% 100%, 0% 0%);
}

@media(max-width: 1024px) {
    .fav-i-card__flag {
        padding: 2.13vw 7.73vw 2.13vw 6.40vw;

        font-size: 4vw;
    }
}

.fav-i-card__flag_active {
    display: block;
}

.fav-i-card__image-link {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
}

.fav-i-card__info {
    display: grid;
    grid-template-rows: repeat(3, auto) 1fr;
    padding: 15px 20px 15px 23px;
    flex-grow: 1;
}

@media(max-width: 1024px) {
    .fav-i-card__info {
        grid-template-rows: auto 7.2vw repeat(3, auto);
        padding: 1.33vw 3.73vw 2.13vw; /*5px 7px 8px*/
    }
}

.fav-i-card__tda {
    display: grid;
    grid-template-columns: auto auto 1fr;
    align-items: center;
}

@media(max-width: 1024px) {
    .fav-i-card__tda {
        grid-row: 3;
        margin-top: 1.07vw;
    }
}

.fav-i-card__tda-flex {
    display: flex;
    align-items: center;
}

.fav-i-card__type-icon {
    width: 23px;
    height: 17.045px;

    background: no-repeat url('../i/icons-catalog/tickets.svg');
    background-size: contain;
    background-position: center;
}

@media(max-width: 1024px) {
    .fav-i-card__type-icon {
        width: 5.07vw;
        height: 3.73vw;
    }
}

.fav-i-card__type-name {
    margin-left: 12px;

    text-align: center;
    font-family: 'Roboto';
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    color: #000;
}

@media(max-width: 1024px) {
    .fav-i-card__type-name {
        margin-left: 1.33vw;

        font-size: 3.20vw;
    }
}

.fav-i-card__dur {
    margin-left: 20px;
}

@media(max-width: 1024px) {
    .fav-i-card__dur {
    margin-left: 5.33vw;
}
}

.fav-i-card__dur-icon {
    width: 23px;
    height: 23px;

    background: no-repeat url('../i/icons-catalog/clock.svg');
    background-size: contain;
    background-position: center;
}

@media(max-width: 1024px) {
    .fav-i-card__dur-icon {
        width: 6.13vw;
        height: 6.13vw;
    }
}

.fav-i-card__dur-data {
    margin-left: 12px;

    text-align: center;
    font-family: 'Roboto';
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    color: #000;
}

@media(max-width: 1024px) {
    .fav-i-card__dur-data {
        margin-left: 1.33vw;

        font-size: 3.20vw;
    }
}

.fav-i-card__art {
    display: block;
    height: min-content;
    justify-self: end;

    font-family: 'Roboto';
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    color: #7B7B7B;
}

@media(max-width: 1024px) {
    .fav-i-card__art {
        display: none;
    }
}

.fav-i-card__nra {
    margin-top: 24px;
}

@media(max-width: 1024px) {
    .fav-i-card__nra {
        grid-row: 1;
        margin-top: 1.33vw;
    }
}

.fav-i-card__name > a {
    font-family: 'Roboto';
    font-size: 18px;
    font-style: normal;
    font-weight: 500;
    color: #F60;
}

@media(max-width: 1024px) {
    .fav-i-card__name > a {
        font-size: 4vw;
    }
}

.fav-i-card__route {
    margin-top: 6px;

    font-family: 'Roboto';
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    color: #000;
}

@media(max-width: 1024px) {
    .fav-i-card__route {
        margin-top: 1.07vw;

        font-size: 3.47vw;
    }
}

.fav-i-card__author {
    display: none;
    margin-top: 6px;

    font-family: 'Roboto';
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    color: #7B7B7B;
}

@media(max-width: 1024px) {
    .fav-i-card__author {
        margin-top: 1.07vw;

        font-size: 3.20vw;
    }
}

.fav-i-card__author_active {
    display: block;
}

.fav-i-card__dates {
    display: grid;
    margin-top: 17px;
    margin-bottom: 15px;
    grid-template-columns: auto auto 1fr;
    grid-template-rows: auto auto;
    row-gap: 4px;
}

@media(max-width: 1024px) {
    .fav-i-card__dates {
        grid-row: 4;
        margin-top: 2.67vw;
        margin-bottom: 1.33vw;
        row-gap: 4.27vw;
    }
}

.fav-i-card__dates-icon {
    width: 17px;
    height: 17px;
    margin-right: 18px;
    grid-column: 1;
    grid-row: 1;

    background: no-repeat url('../i/icons-catalog/calendar.svg');
    background-size: contain;
    background-position: center;
}

@media(max-width: 1024px) {
    .fav-i-card__dates-icon {
        width: 4.53vw;
        height: 4.53vw;

        margin-right: 1.87vw;
    }
}

.fav-i-card__dates-nearests {
    grid-column: 2/4;
    grid-row: 1;
    align-self: center;

    font-family: 'Roboto';
    font-size: 12px;
    font-style: normal;
    font-weight: 400;
    color: #000;
}

@media(max-width: 1024px) {
    .fav-i-card__dates-nearests {
        font-size: 3.20vw;
    }
}

.cat-card__avail-wrapper {
    grid-column: 2;
    grid-row: 2;
}

.fav-i-card__dates-link {
    grid-column: 3;
    grid-row: 2;
    align-self: center;
    margin-left: 10px;

    font-family: 'Roboto';
    font-size: 13px;
    font-style: normal;
    font-weight: 400;
    color: #F60;

    visibility: hidden;
}

@media(max-width: 1024px) {
    .fav-i-card__dates-link {
        margin-left: 4.80vw;

        font-size: 3.47vw;
    }
}

.fav-i-card__footer {
    display: grid;
    grid-template-columns: 1fr auto;
    grid-template-rows: auto auto;
    align-items: center;
    align-self: end;
    row-gap: 6px;
}

@media(max-width: 1024px) {
    .fav-i-card__footer {
        grid-row: 5;
        grid-template-columns: max-content 1fr max-content ;
        grid-template-rows: auto;
        row-gap: 0;
        gap: 2.67vw;
        margin-top: 3.47vw;
    }
}

.fav-i-card__hashtags {
    max-width: 250px;

    font-family: 'Roboto';
    font-size: 12px;
    font-style: normal;
    font-weight: 400;
    color: #7B7B7B;
}

@media(max-width: 1024px) {
    .fav-i-card__hashtags {
        display: none;
    }
}

.fav-i-card__price {
    position: relative;

    justify-self: center;
}

@media(max-width: 1024px) {
    .fav-i-card__price {
        grid-column: 2;
        grid-row: 1;
        justify-self: end;
    }
}

.fav-i-card__old-price {
    display: none;

    position: absolute;
    top: 0;
    left: 23px;

    font-family: 'Roboto';
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: 1;
    color: #7B7B7B;

    transform: translateY(-100%);
}

@media(max-width: 1024px) {
    .fav-i-card__old-price {
        right: 0;
        left: auto;

        width: fit-content;

        line-height: 0.8;

        font-size: 2.93vw;
    }   
}

.fav-i-card__old-price:after {
    content: "";

    position: absolute;
    top: 50%;
    left: 50%;

    width: 110%;
    height: 1px;

    background: #F00;

    transform: translate(-50%, -50%);
}

@media(max-width: 1024px) {
    .fav-i-card__old-price:after {
        height: 0.27vw;
    }
}

.fav-i-card__old-price_active {
    display: block;
}

.fav-i-card__old-price > span {
    font-family: 'Roboto';
    font-size: 14px;
    font-style: normal;
    font-weight: 600;
    color: #7B7B7B;
}

@media(max-width: 1024px) {
    .fav-i-card__old-price > span {
        font-weight: 400;
    }
}

.fav-i-card__actualy-price {
    font-family: 'Roboto';
    font-size: 18px;
    font-style: normal;
    font-weight: 600;
    color: #000;
}

@media(max-width: 1024px) {
    .fav-i-card__actualy-price {
        font-size: 4.27vw;
    }
}

.fav-i-card__actualy-price > span {
    font-family: 'Roboto';
    font-size: 18px;
    font-style: normal;
    font-weight: 400;   
}

@media(max-width: 1024px) {
    .fav-i-card__actualy-price > span {
        font-size: 3.73vw;
    }
}

.fav-i-card__footer-links {
    display: flex;
    gap: 14px;
    align-items: center;
}

@media(max-width: 1024px) {
    .fav-i-card__footer-links {
        grid-column: 1;
        gap: 3.73vw;
    }
}

.fav-i-card__favorites {
    width: 16px;
    height: 14px;

    background: no-repeat url('../i/icons/heart_icon.svg');
    background-size: contain;
    background-position: center;

    cursor: pointer;
}

@media(max-width: 1024px) {
    .fav-i-card__favorites {
        width: 5.33vw;
        height: 4.80vw;
    }
}

.fav-i-card__favorites[data-favorite="1"] {
    background: no-repeat url('../i/icons/heart-fill-gradient.svg');
    background-size: contain;
    background-position: center;
}

.fav-i-card__share {
    position: relative;

    height: 15px;
    width: 15px;

    background: no-repeat url('../i/icons/share_icon.svg');
    background-size: contain;
    background-position: center;

    cursor: pointer;
}

@media(max-width: 1024px) {
    .fav-i-card__share {
        height: 5.5vw;
        width: 5.5vw;
    }
}

.fav-i-card__share-wr-list {
    position: absolute;
    left: 50%;
    bottom: 0;
    z-index: 1;

    transition: opacity 0.2s linear;

    transform: translate(-31%, 95%);

    visibility: hidden;
    opacity: 0;
    pointer-events: none;
}

.fav-i-card__share-wr-list_active {
    opacity: 1;
    visibility: visible;
    pointer-events: all;
}

.fav-i-card__share-list {
    display: flex;
    padding: 8px 12px;
    gap: 12px;

    list-style-type: none;
    background-color: #fff;
    box-shadow: 0 0 17.1px 6px rgba(0, 0, 0, 0.25);
    border-radius: 10px;

    cursor: default;
}

@media(max-width: 1024px) {
    .fav-i-card__share-list {
        padding: 2.13vw 3.20vw;
        gap: 2.6vw;

        border-radius: 2.67vw;
    }
}

.fav-i-card__share-arrow {
    position: relative;
    z-index: 2;
    margin: 0 auto;
    width: min-content;

    border-top: 7px solid transparent;
    border-right: 7px solid transparent;
    border-bottom: 7px solid #fff;
    border-left: 7px solid transparent;
}

@media(max-width: 1024px) {
    .fav-i-card__share-arrow {
        left: 28%;

        margin: 0;

        border-top: 1.87vw solid transparent;
        border-right: 1.87vw solid transparent;
        border-bottom: 1.87vw solid #fff;
        border-left: 1.87vw solid transparent;
    }
}

.fav-i-card__share-item {
    height: 40px;
    width: 40px;

    border-radius: 50%;

    cursor: pointer;
}

@media(max-width: 1024px) {
    .fav-i-card__share-item {
        height: 7.87vw;
        width: 7.87vw;
    }
}

.fav-i-card__share-copy {
    position: relative;

    background: no-repeat url('../i/icons/icon-share-copy.svg');
    background-size: contain;
    background-position: center;
}

.fav-i-card__share-copy::after {
    content: "Ссылка скопированна";

    position: absolute;
    left: 50%;
    bottom: 0;

    padding: 3px 5px;

    font-family: 'Roboto';
    font-size: 12px;
    font-style: normal;
    font-weight: 300;
    white-space: nowrap;
    color: #000;

    background-color: #fff;
    border-radius: 7px;
    box-shadow: 0 0 9.1px 2px rgba(0, 0, 0, 0.25);

    transition: opacity 0.15s linear;

    transform: translate(-50%, 120%);

    pointer-events: none;
    opacity: 0;
}

@media(max-width: 1024px) {
    .fav-i-card__share-copy::after {
        padding: 0.80vw 1.33vw;

        font-size: 3.20vw;

        border-radius: 1.87vw;

        transform: translate(-24%, 120%);
    }
}

.fav-i-card__share-copy:focus.fav-i-card__share-copy::after {
    opacity: 1;
}

.fav-i-card__share-maks {
    background: no-repeat url('../i/icons/icon-share-maks.svg');
    background-size: contain;
    background-position: center;
}
.fav-i-card__share-ok {
    background: no-repeat url('../i/icons/icon-share-ok.svg');
    background-size: contain;
    background-position: center;
}
.fav-i-card__share-tg {
    background: no-repeat url('../i/icons/icon-share-tg.svg');
    background-size: contain;
    background-position: center;
}
.fav-i-card__share-vk {
    background: no-repeat url('../i/icons/icon-share-vk.svg');
    background-size: contain;
    background-position: center;
}

.fav-i-card__share-item > a {
    display: inline-block;
    height: 100%;
    width: 100%;

    border-radius: 50%;
}

.fav-i-card__pdf {
    width: 16px;
    height: 18px;

    background: no-repeat url('../i/icons/pdf_icon.svg');
    background-size: contain;
    background-position: center;

    cursor: pointer;
}

@media(max-width: 1024px) {
    .fav-i-card__pdf {
        width: 4.53vw;
        height: 5.33vw;
    }
}

.fav-i-card__button {
    display: grid;
    place-items: center;
    width: 156px;
    height: 40px;
    justify-self: end;

    font-family: 'Roboto';
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    color: #FFF;

    border-radius: 25px;
    background-color: #FF732D;
    box-shadow: 0 0 7.3px 2px rgba(0, 0, 0, 0.25);

    cursor: pointer;
}

@media(max-width: 1024px) {
    .fav-i-card__button {
        width: 41.60vw;
        height: 10.67vw;

        font-size: 4.27vw;

        border-radius: 6.67vw;
    }
}

.fav-i-card__button:hover {
    text-decoration: none;
    background-image: linear-gradient(90deg, #FF732D 0%, #F32F2F 100%);
    background-repeat: no-repeat;
}

@media(max-width: 1024px) {
    .fav-i-card__button {
        grid-column: 3;
        width: 9.33vw;
        height: 9.33vw;

        border-radius: 50%;
        box-shadow: 0 0 5.9px 1px rgba(0, 0, 0, 0.25);

        background-image: url('../i/icon-arrow-short-white-to-right.svg');
        background-repeat: no-repeat;
        background-size: 60% auto;
        background-position: center;
    }
}

@media(max-width: 1024px) {
    .fav-i-card__button:hover {
        background-image: url('../i/icon-arrow-short-white-to-right.svg'), linear-gradient(90deg, #FF732D 0%, #F32F2F 100%);
        background-repeat: no-repeat, no-repeat;
        background-size: 60% auto, auto;
        background-position: center, auto;
    }   
}

.fav-i-card__button > span {
    font-family: 'Roboto';
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    color: #FFF;

    cursor: pointer;
}

@media(max-width: 1024px) {
    .fav-i-card__button > span {
        display: none;
    }
}

.fav-i-card__label {
    position: relative;

    width: 40px;
    flex-shrink: 0;

    border-radius: 0 10px 10px 0;
}

@media(max-width: 1024px) {
    .fav-i-card__label {
        display: flex;
        justify-content: center;
        align-items: end;
        width: 100%;
        height: 7.97vw;
        padding-bottom: 1px;

        border-radius: 0 0 8px 8px;
    }
}

.fav-i-card__label:before {
    content: "";

    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;

    width: 8px;

    background-image: url('../i/icons/icon-circle-for-label-ticket.svg');
    background-repeat: repeat-y;
    background-size: 8px 16px;
    background-position: center top;

    transform: translateX(-50%);
}

@media(max-width: 1024px) {
    .fav-i-card__label:before {
        bottom: auto;
        right: 0;

        width: auto;
        height: 2.87vw;

        background-repeat: repeat-x;
        background-size: 3.20vw 1.87vw;
        background-position: left center;

        transform: translateY(-42%);
    }
}

.fav-i-card__label_pink {
    background: #FFD5C0;
}

.fav-i-card__label-content {
    position: absolute;
    left: 50%;
    top: 50%;

    display: none;
    width: max-content;

    transform: translate(-50%, -50%) rotate(-90deg);
}

@media(max-width: 1024px) {
    .fav-i-card__label-content {
        position: static;

        transform: none;
    }
}

.fav-i-card__label_pink > .fav-i-card__label-content {
    display: block;
}

.fav-i-card__label-content > span:first-child {
    font-family: 'Roboto';
    font-size: 12px;
    font-style: normal;
    font-weight: 400;
    color: #7B7B7B;
}

@media(max-width: 1024px) {
    .fav-i-card__label-content > span:first-child {
        font-size: 3.20vw;
    }
}

.fav-i-card__label-content > span:last-child {
    display: inline-block;
    width: 39px;
    height: 20px;

    background: no-repeat url('../i/logo-gray-mini.svg');
    background-size: contain;
    background-position: center;
}


@media(max-width: 1024px) {
    .fav-i-card__label-content > span:last-child {
        width: 8.27vw;
        height: 4.27vw;
    }
}