#header {
    top: -3.889vw;
}

#header.down {
    top: 0;
}

/* General */

#home section {
    position: relative;
    overflow: hidden;
}

#home .marquee__title {
    padding: 0.556vw 0 0.278vw;
    margin-bottom: 4.444vw;
    background: var(--ts-green);
    text-transform: uppercase;
    overflow: hidden;
}

#home .marquee__title .ts-headline-2 {
    color: #fff;
}

#home .marquee3k .ts-headline-1 {
    text-transform: uppercase;
    letter-spacing: 0;
}

/* ------- */

/* Marquees */

#home_marquees {
    margin-bottom: 3.889vw;
}

#home_marquees .ts-headline-1 {
    padding: 1.667vw 0;
}

#home_marquees .early-bird {
    background: var(--ts-green);
}

#home_marquees .marquee-block {
    padding: 0.486vw 0;
}

#home_marquees .early-bird .bird {
    margin-right: 5.556vw;
}

#home_marquees .early-bird .marquee-icon {
    width: 17.9vw;
}

#home_marquees .marquee-block .title {
    font-family: 'GTEestiProRegular', Sans-serif;
    font-size: 0.833vw;
    color: #fff;
    text-transform: uppercase;
    line-height: 1.167em;
}

#home_marquees .marquee-block .marquee-icon {
    padding: 1.806vw 0;
}

#home_marquees .northern-lights {
    background: var(--ts-pink);
}

#home_marquees .northern-lights .marquee-icon {
    margin-right: 4.792vw;
    width: 7.292vw;
}

#home_marquees .ts-headline-1 .little-text {
    font-family: 'GTEestiProRegular', Sans-serif;
    font-size: 4.167vw;
}

/* ------- */

/* Programs */

#home_programs__container .marquee__title {
    margin-bottom: 3.333vw;
}

#home_programs__container .program__container {
    margin-bottom: 3.333vw; /* padding: 16рх у блока с текстом -->> margin-bottom: 4.444vw */
}

#home_programs__container .program__container:last-child {
    margin-bottom: 3.75vw; /* padding: 16рх у блока с текстом -->> margin-bottom: 72px */
}

#home_programs__container .program__container .program-title {
    margin-bottom: 2.778vw;
}

#home_programs__container .swiper-container .swiper-nav-button .icon__container {
    height: 12.222vw;
}

#home_programs__container .program__container .swiper-container .swiper-wrapper .swiper-slide {
    margin-right: 1.667vw !important;
}

#home_programs__container .program__container .swiper-container .swiper-wrapper .swiper-slide .image__container {
    position: relative;
    height: 12.222vw;
    background: #C4C4C4;
}

#home_programs__container .program__container .swiper-container .swiper-wrapper .swiper-slide .info__container {
    position: relative;
    padding: 1.111vw;
}

#home_programs__container .program__container .swiper-container .swiper-wrapper .swiper-slide .movie-title {
    color: #000;
}

/* --------- */
#home #ios_banner .ios_banner {
    height: 34.5vw;
    position: relative;
    width: 100%;
    margin-bottom: 5vw;
    justify-content: flex-end;
}

#home #ios_banner .info__container {
    height: 73%;
    padding: 2.43vw 0 3.194vw;
    background-color: var(--ts-pink);
    z-index: 5;
}

#home #ios_banner .info__container .wrapper {
    display: flex;
    justify-content: space-between;
}

#home #ios_banner .info__container .wrapper > div {
    width: 30.5vw;
}

#home #ios_banner .info__container .title {
    margin-bottom: 1.667vw;
}

#home #ios_banner .description {
    font-family: 'GTEestiProRegular', Sans-serif;
}

#home #ios_banner .info__container .links {
    align-items: center;
}

#home #ios_banner .info__container .links .qr-code {
    margin-right: 3.54vw;
}

#home #ios_banner .info__container .links .qr-code .qr-code-icon {
    width: 6.94vw;
    height: 6.94vw;
}

#home #ios_banner .info__container .links .app-store .app-store-icon {
    width: 13.5vw;
}

#home #ios_banner .iphone {
    position: absolute;
    bottom: 0;
    right: 34.3vw;
    z-index: 7;
}

#home #ios_banner .iphone img {
    width: 23vw;
}

#home #ios_banner .ipad {
    position: absolute;
    bottom: 0;
    right: 5.9vw;
    z-index: 6;
}

#home #ios_banner .ipad img {
    width: 45vw;
}

/* --------- */

#home_manifest {
    margin-bottom: 3.333vw;
}

#home_video {
    margin-bottom: 5.556vw;
}

#home_video video {
    height: 33.333vw;
}

#home_video .play-button-container {
    margin: 0;
    width: 100%;
    height: 100%;
    flex-shrink: 1;
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    display: flex;
    justify-content: center;
    align-items: center;
}

#home_video .play-button-container .play-button {
    padding: 7.5%;
    width: 0;
    height: 0;
    margin: 0;
    border-radius: 50%;
    border: none;
    background-size: 50%;
    background-repeat: no-repeat;
    background-position: center center;
    background-color: rgba(255, 255, 255, .9);
    opacity: 0;
    transition: opacity cubic-bezier(.4, 0, .6, 1) .6s;
    cursor: pointer;
    background-image: url(data:image/svg+xml,%3Csvg%20fill%3D%22%23000000%22%20height%3D%2224%22%20viewBox%3D%220%200%2024%2024%22%20width%3D%2224%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%20%20%20%20%3Cpath%20d%3D%22M8%205v14l11-7z%22%2F%3E%0A%20%20%20%20%3Cpath%20d%3D%22M0%200h24v24H0z%22%20fill%3D%22none%22%2F%3E%0A%3C%2Fsvg%3E);
}

#home_video .play-button-container .play-button.active {
    opacity: 1;
}

/* Packages */

#home_packages {
    margin-bottom: 5.556vw;
}

#home_packages .wrapper.ts-visible-sm .ts-headline-2 {
    margin-bottom: 3vw;
}

#home_packages .packages__container .package {
    position: relative;
    width: 20.972vw;
    text-decoration: none;
}

#home_packages .packages__container .package .image__container {
    position: relative;
    width: 100%;
    height: 16.111vw;
    background: var(--ts-green);
}

#home_packages .packages__container .package .image__container img {
    width: 13.889vw;
    height: 11.597vw;
}

#home_packages .packages__container .package .image__container .bottom-0 {
    left: 0;
    padding: 0 1.667vw 0.417vw;
}

#home_packages .packages__container .package .image__container .title span {
    font-family: 'GTEestiProRegular', Sans-serif;
    font-size: 0.833vw;
    line-height: 100%;
}

#home_packages .packages__container .package .info__container {
    padding: 1.389vw 1.667vw;
    background: var(--ts-pink);
    transform-style: preserve-3d;
    transform: translate3d(0px, 0px, 0px) scale3d(1, 1, 1) rotateX(0deg) rotateY(0deg) rotateZ(0deg) skew(0deg, 0deg);
    transition: transform .25s;
}

#home_packages .packages__container .package .info__container .package-title {
    width: 13.819vw;
    letter-spacing: 0.025em;
}

#home_packages .packages__container .package:hover .info__container {
    transform: translate3d(0px, -2.3vw, 0px) scale3d(1, 1, 1) rotateX(0deg) rotateY(0deg) rotateZ(0deg) skew(0deg, 0deg);
    background: var(--ts-green);
}

#home_packages .packages__container-md .package {
    position: relative;
    width: 46.9vw;
    height: 26vw;
    padding: 2.1vw;
    background: var(--ts-green);
    margin-top: 1.7vw;
    text-decoration: none;
}

#home_packages .packages__container-md .package:nth-child(-n+2) {
    margin-top: 0;
}

#home_packages .packages__container-md .package:nth-child(odd) {
    margin-right: 1.7vw;
}

#home_packages .packages__container-md .package .early {
    height: 100%;
    position: absolute;
    left: 50%;
    top: 50%;
    margin-right: -50%;
    transform: translate(-50%, -50%);
}

#home_packages .packages__container-md .package .package-badge {
    height: 4.3vw;
    width: 9.6vw;
    background: rgba(0, 0, 0, 0.15);
    border-radius: 5vw;
    color: #fff;
    z-index: 10;
}

#home_packages .packages__container-md .package .package-info {
    z-index: 10;
}

#home_packages .packages__container-md .package .package-info .title {
    font-family: 'GTEestiProMedium', Sans-serif;
    font-size: 3.65vw;
    line-height: 110%;
    letter-spacing: 0.01em;
    text-transform: uppercase;
    color: #000000;
    margin-bottom: 1.1vw;
}

#home_packages .packages__container-md .package .package-info .description .ts-body-1 {
    font-family: 'GTEestiProLight', Sans-serif;
}

/* -------- */

/* Events */

#home_events {
    margin-bottom: 5.556vw;
}

#home_events .wrapper.ts-visible-sm .ts-headline-2 {
    margin-bottom: 3vw;
}

#home_events .events__container .event {
    position: relative;
    width: 28.542vw;
    text-decoration: none;
}

#home_events .events__container .event .image__container {
    position: relative;
    width: 100%;
    height: 16.111vw;
    z-index: -1;
    background: #c4c4c4;
}

#home_events .events__container .event .image__container .event-date {
    margin-left: 1.389vw;
    margin-bottom: 1.806vw;
    color: #fff;
    z-index: 2;
}

#home_events .events__container .event .image__container .event-name {
    padding: 2vw;
    z-index: 2;
}

#home_events .events__container .event .info__container {
    z-index: 11;
    padding: 0.972vw 2.222vw;
    background: var(--ts-pink);
    transform-style: preserve-3d;
    transform: translate3d(0px, 0px, 0px) scale3d(1, 1, 1) rotateX(0deg) rotateY(0deg) rotateZ(0deg) skew(0deg, 0deg);
    transition: transform .25s;
}

#home_events .events__container .event .info__container .event-badge {
    margin-bottom: 0.278vw;
}

#home_events .events__container .event .info__container .title {
    width: 19.097vw;
}

#home_events .events__container .event:hover .info__container {
    transform: translate3d(0px, -3.1vw, 0px) scale3d(1, 1, 1) rotateX(0deg) rotateY(0deg) rotateZ(0deg) skew(0deg, 0deg);
    background: var(--ts-green);
}

/* -------- */

/* Partners */

#home_partners .partners__container .partners  {
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    grid-template-rows: auto;
    grid-gap: 1.667vw;
}

#home_partners .partners__container .partners a {
    position: relative;
    height: 8.33vw;
}

#home_partners .partners__container .partners a img{
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}


#home_partners .partners__container .partners .wide-logo{
    grid-column-start: span 3;
}

#home_partners .partners__container .partners .narrow-logo {
    grid-column-start: span 2 !important;
}

#home_pop_up {
    position: fixed !important;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.75);
    top: 0;
    left: 0;
    z-index: 9999;
    transition: all 0.7s ease 0s;
}

#home_pop_up.hide {
    opacity: 0;
    visibility: hidden;
}

#home_pop_up .pop_up_body {
    position: relative;
    min-height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
}

#home_pop_up .pop_up_body .pop_up_content {
    position: absolute;
    width: 28.75vw;
    height: 12.5vw;
    left: 0;
    top: 0;
    padding: 2.8vw 2vw 1.5vw;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: center;
    background: var(--ts-pink);
}

#home_pop_up .pop_up_body .pop_up_content .pop_up_close {
    top: 0.8vw;
    right: 0.8vw;
    position: absolute;
    line-height: 0;
}

#home_pop_up .pop_up_body .pop_up_content .pop_up_close .pop_up_close-icon {
    width: 1.11vw;
    height: 1.11vw;
}

#home_pop_up .pop_up_body .pop_up_content .pop_up_close:hover {
    cursor: pointer;
}

#home_pop_up .pop_up_body .pop_up_content .pop_up_text .ts-body-2 {
    font-family: 'GTEestiProMedium', sans-serif;
    text-align: center;
}

#home_pop_up .pop_up_body .pop_up_content .ts-button {
    height: 3.3vw;
    width: 13.2vw;
    color: #000;
    text-decoration: none;
    border-color: #fff;
    background: #fff;
}

#home_pop_up .pop_up_body .pop_up_content .ts-button:hover {
    background: #000;
    color: #fff;
}

/* -------- */

/* Modal window for movie */

.home-modal__container {
    display: flex;
    justify-content: center;
    align-items: center;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1000;
}

.home-modal__container .movie__container {
    position: absolute;
    width: 26.597vw;
    transform-origin: center center;
    transition: transform .25s ease, opacity .25s cubic-bezier(.3, .73, .3, .74);
    transform: scaleX(0) scaleY(0);
    opacity: 0;
    box-shadow: 0px 0.297vw 0.972vw rgba(0, 0, 0, 0.25);
}

.home-modal__container .movie__container.hover {
    opacity: 1;
    transform: scaleX(1) scaleY(1);
}


.home-modal__container .movie__container .image__container {
    position: relative;
    height: 15.486vw;
    width: 100%;
}

.home-modal__container .movie__container .info__container {
    position: relative;
    height: 12.361vw;
    width: 100%;
    background: #fff;
    padding: 1.111vw;
}

.home-modal__container .movie__container .info__container .text__container {
    width: 18.75vw;
}

.home-modal__container .movie__container .info__container .title {
    margin-bottom: 0.278vw;
    text-decoration: none;
    cursor: pointer;
    color: #000;
}

.home-modal__container .movie__container .info__container .title:hover {
    text-decoration: line-through;
}

.home-modal__container .movie__container .info__container .description {
    line-height: 1.319vw;
    color: #717171;
}

.home-modal__container .movie__container .info__container form .icon-add-to-cart {
    position: relative;
    width: 2.361vw;
    height: 2.361vw;
    background: none;
    padding: 0;
    margin: 0;
    border: none;
}

/* ------ */


/* < 992px */
@media (max-width: 991.98px) {
    #header {
        top: 0;
    }

    #home_marquees .ts-headline-1 {
        padding: 2vw 0;
    }

    #home_marquees .marquee-block {
        padding: 0.65vw 0;
    }

    #home_marquees .early-bird .bird {
        margin-right: 5.3vw;
    }

    #home_marquees .marquee-block .title {
        font-size: 1vw;
        line-height: 120%;
        letter-spacing: 0.05em;
    }

    #home_marquees .marquee-block .marquee-icon {
        padding: 2vw 0;
    }

    #home_marquees .northern-lights .marquee-icon {
        margin-right: 4.65vw;
    }

    #home_marquees .ts-headline-1 .little-text {
        font-size: 3.125vw;
    }

    #home_programs__container .program__container {
        margin-bottom: 3vw;
    }

    #home_programs__container .program__container .program-title {
        margin-bottom: 1.302vw;
    }

    #home_programs__container .program__container .swiper-container .swiper-wrapper .swiper-slide {
        margin-right: 10px !important;
    }

    #home_programs__container .program__container .swiper-container .swiper-wrapper .swiper-slide .image__container {
        height: 17.838vw;
    }

    #home_programs__container .program__container .swiper-container .swiper-wrapper .swiper-slide .info__container {
        padding: 1.5623vw 0;
    }

    #home_video video {
        height: 46.875vw;
    }

    #home_events .events__container .event .image__container {
        height: 28vw;
    }

    #home_events .events__container .event .image__container .event-name {
        color: #fff;
    }

    #home #ios_banner .marquee3k {
        margin-bottom: 3.385vw;
    }

    #home #ios_banner .ios_banner {
        height: 44.141vw;
    }

    #home #ios_banner .ios_banner .ts-hidden .wrapper .ts-body-2 {
        font-size: 2.0833vw;
    }

    #home #ios_banner .ios_banner .ts-hidden .wrapper .description {
        padding: 0 0 3.516vw 0;
        width: 36.719vw;
    }

    #home #ios_banner .info__container {
        padding: 5.208vw 0 3.516vw;
    }

    #home #ios_banner .info__container .wrapper > div {
        width: 100%;
    }

    #home #ios_banner .info__container .links {
        flex-direction: column;
        align-items: start;
        justify-content: space-between;
        height: 100%;
        padding-left: 5vw;

    }

    #home #ios_banner .info__container .links .qr-code .qr-code-icon {
        width: 13.02vw;
        height: 13.02vw;
    }

    #home #ios_banner .info__container .links .app-store .app-store-icon {
        width: 25.391vw;
        height: 7.292vw;
    }

    #home #ios_banner .info__container .wrapper {
        display: block;
    }

    #home #ios_banner .iphone {
        right: 31.3vw;
    }

    #home #ios_banner .iphone img {
        width: 29.399vw;
    }

    #home #ios_banner .ipad {
        right: -4vw;
    }

    #home #ios_banner .ipad img {
        width: 55.615vw;
    }

    #home_partners .partners__container .partners {
        column-gap: 1vw;
        row-gap: 1vw;
    }

    #home_partners .partners__container .partners a {
        height: 12vw;
        margin-right: 0;
    }

    #home_partners .partners__container .partners a img {
        height: 85%
    }

    #home_partners .partners__container .partners .narrow-logo img {
        height: 96% !important;
    }

    #home_pop_up {
        display: none;
    }
}

/* < 576px */
@media (max-width: 575.98px) {
    #home_marquees .ts-headline-1 {
        padding: 4vw 0;
    }

    #home_marquees .marquee-block {
        padding: 1vw 0;
    }

    #home_marquees .early-bird .bird {
        margin-right: 8.32vw;
    }

    #home_marquees .early-bird .bird .marquee-icon {
        width: 17.5vw;
    }

    #home_marquees .marquee-block .title {
        font-size: 1.4vw;
        line-height: 120%;
        letter-spacing: 0;
    }

    #home_marquees .marquee-block .marquee-icon {
        padding: 3vw 0;
    }

    #home_marquees .northern-lights .marquee-icon {
        width: 11.1vw;
        margin-right: 7.32vw;
    }

    #home_marquees .ts-headline-1 .little-text {
        font-size: 4.3vw;
    }

    #home_programs__container .program__container .program-title {
        margin-bottom: 4.267vw;
    }

    #home_programs__container .program__container .swiper-container .swiper-wrapper .swiper-slide {
        margin-right: 9px !important;
    }

    #home_programs__container .program__container .swiper-container .swiper-wrapper .swiper-slide .image__container {
        height: 25vw;
    }

    #home_programs__container .program__container .swiper-container .swiper-wrapper .swiper-slide .info__container {
        display: flex;
        align-items: flex-end;
        height: 10.5vw;
        padding: 0 2vw;
        background: var(--ts-pink);
    }

    #home_programs__container .program__container .swiper-container .swiper-wrapper .swiper-slide .info__container .movie-title {
        margin-bottom: 1.5vw;
    }

    #home_programs__container .program__container:nth-child(2n) .swiper-container .swiper-wrapper .swiper-slide .info__container {
        background: var(--ts-green);
    }

    #home_video video {
        height: 52vw;
        width: 100%;
    }

    #home_packages .packages__container-md .package {
        width: 100%;
        height: 36vw;
        margin-right: 0 !important;
    }

    #home_packages .packages__container-md .package:not(:first-child) {
        margin-top: 2.1vw !important;
    }

    #home_packages .packages__container-md .package .package-badge {
        height: 7.5vw;
        width: 16.8vw;
    }

    #home_packages .packages__container-md .package .package-info .title {
        font-size: 5.5vw;
    }

    #home_packages .packages__container-md .package .package-info .description .ts-body-1 {
        line-height: 1.25em;
    }

    #home_events .events__container .event .image__container {
        height: 35.5vw;
    }

    #home #ios_banner .ios_banner .ts-hidden .wrapper .ts-body-2 {
        font-size: 4.267vw;
    }

    #home #ios_banner .ios_banner {
        height: 113vw;
        justify-content: space-between;
    }

    #home #ios_banner .ios_banner .ts-hidden .wrapper .description {
        width: 100%;
    }

    #home #ios_banner .info__container {
        height: 27%;
        z-index: 8;
    }

    #home #ios_banner .info__container .wrapper .links {
        flex-direction: row;
        align-items: baseline;
        flex-flow: row-reverse;
    }

    #home #ios_banner .iphone {
        bottom: 29.8667vw;
        left: 0;
    }

    #home #ios_banner .iphone img {
        width: 47vw;
    }

    #home #ios_banner .ipad {
        bottom: 29.8667vw;
        right: -7vw;
    }

    #home #ios_banner .ipad img {
        width: 87vw;
    }

    #home #ios_banner .info__container .links .qr-code {
        margin-right: 10vw;
    }

    #home #ios_banner .info__container .links .qr-code .qr-code-icon {
        width: 21.333vw;
        height: 21.333vw;
    }

    #home #ios_banner .info__container .links .app-store .app-store-icon {
        width: 44.533vw;
        height: 12.8vw;
    }

    #home #ios_banner .marquee3k {
        margin-top: 5.533vw;
        margin-bottom: 4vw;
    }

    #home_partners .partners__container .partners  {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        grid-template-rows: auto;
        row-gap: 1vw;
    }

    #home_partners .partners__container .partners a  {
        height: 25.4vw !important;
        position: relative;
        margin: 0.2vw 0;
    }

    #home_partners .partners__container .partners a img {
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
    }

    #home_partners .partners__container .partners .wide-logo{
        grid-column-start: span 1;
    }

    #home_partners .partners__container .partners .wide-logo img{
        height: 66%;
    }

    #home_partners .partners__container .partners .narrow-logo {
        grid-column-start: span 1 !important;
    }

    #home_partners .partners__container .partners .narrow-logo img {
        height: 83%;
    }

    .grid-item-12 {
        grid-column-start: 2 !important;
        grid-row-start: 4;
    }

    .grid-item-15 {
        grid-column-start: 2 !important;
        grid-row-start: 5;
    }

    .grid-item-16 {
        grid-column-start: 3 !important;
        grid-row-start: 5;
    }

    .grid-item-17 {
        grid-column-start: 1 !important;
        grid-row-start: 6;
    }

    .grid-item-20 {
        grid-column-start: 3 !important;
        grid-row-start: 6;
    }

}