#TeamSection {
    margin-top: 0px;

    @media (max-width: 1239px) {
        .TextMotto.Appear {
            animation: AppearBottom 600ms;
        }
        .PhraseContainer div.Appear {
            animation: AppearInside 600ms;
        }
        .PhraseContainer img.Appear {
            animation: AppearOutside 600ms;
        }
    }
    
    @media (min-width: 1240px) {    
        .TextMotto.Appear {
            animation: AppearBottom 600ms;
        }
        .Photo.Active, .Photo.Active img {
            height: 550px;
        }
        .Photo.Active .Description {
            display: block;
            animation: AppearInside 400ms;
        }
        .Photo.Unactive .Description {
            animation: DissappearInside 400ms;
        }
        .Photo.Active, .Photo.Active img {
            animation: Team_PhotoScale 400ms;
        }
        .Photo.UnActive, .Photo.UnActive img {
            animation: Team_PhotoUnScale 400ms;
        }
        .PhraseContainer div.Appear {
            animation: AppearInside 600ms;
        }
        .PhraseContainer img.Appear {
            animation: AppearOutside 600ms;
        }
    }

    .Section {
        position: relative;

        overflow: hidden;

        background-color: #101010;

        display: flex;
    }

    .SectionViewport {
        display: flex;
        flex-direction: column;

        background-color: #101010;

        height: auto;
    }

    .TextContainer {
        display: flex;
        flex-direction: row;
        justify-content: space-between;

        margin-bottom: 145px;

        @media (max-width: 1239px) {
            flex-direction: column;
        }
    }

    .TextHeading {
        color: #fff;
        leading-trim: both;
        text-edge: cap;
        font-family: HelveticaNeueCyr;
        font-size: 40px;
        font-style: normal;
        font-weight: 400;
        line-height: 36px;

        width: 300px;

        @media (max-width: 1239px) {
            color: #fff;
            text-align: center;
            leading-trim: both;
            text-edge: cap;
            font-family: HelveticaNeueCyr;
            font-size: min(5.9vw, 25px);
            font-style: normal;
            font-weight: 550;
            line-height: normal;

            text-align: center;
            width: unset;
        }
    }

    .TextMotto {
        color: #fff;
        leading-trim: both;
        text-edge: cap;
        font-family: HelveticaNeueCyr;
        font-size: 36px;
        font-style: normal;
        font-weight: 400;
        line-height: 36px;

        width: 600px;
        flex-grow: 0;

        @media (max-width: 1239px) {
            color: #fff;
            text-align: center;
            leading-trim: both;
            text-edge: cap;
            font-family: HelveticaNeueCyr;
            font-size: min(25px, 5.9vw);
            font-style: normal;
            font-weight: 550;
            line-height: normal;

            width: 92vw;
            margin-top: 70px;
        }
    }

    .TextMotto>.Accent {
        color: #1D75FF;
        leading-trim: both;
        text-edge: cap;
        font-family: HelveticaNeueCyr;
        font-size: 36px;
        font-style: normal;
        font-weight: 400;
        line-height: 36px;

        @media (max-width: 1239px) {
            color: #1D75FF;
            text-align: center;
            leading-trim: both;
            text-edge: cap;
            font-family: HelveticaNeueCyr;
            font-size: min(25px, 5.9vw);
            font-style: normal;
            font-weight: 550;
            line-height: normal;
        }
    }

    .PhotoContainer {
        -webkit-column-count: 4;
        -moz-column-count: 4;
        column-count: 4;

        -webkit-column-gap: 4px;
        -moz-column-gap: 4px;
        column-gap: 4px;

        margin-bottom: 50px;
    }

    .Photo {
        width: 296px;
        height: 470px;
        margin-bottom: 5px;

        position: relative;

        box-sizing: border-box;
        cursor: pointer;
    }

    .Ending {
        width: 500px;

        position: relative;

        box-sizing: border-box;

        margin-left: 5px;

        height: 50px;
    }

    .Photo img {
        width: 296px;
        height: 470px;
        border-radius: 20px;
        object-fit: cover;
    }

    .PhotoTemplate {
        width: 295px;

        height: 650px;

        position: relative;

        box-sizing: border-box;
    }

    .PhotoDetails {
        display: flex;
        flex-direction: column;

        position: absolute;

        bottom: 10px;
        left: 0;
        right: 0;

        width: calc(100% - 64px);

        padding: 16px;

        background-color: white;

        margin: 16px;

        border-radius: 16px;
    }

    .PhotoDetails .Text {
        display: flex;
        flex-direction: row;

        color: #171717;
        leading-trim: both;
        text-edge: cap;
        font-family: HelveticaNeueCyr;
        font-size: 18px;
        font-style: normal;
        font-weight: 400;
        line-height: 18px;

        margin-bottom: 20px;
    }

    .PhotoDetails .Text .Accent {
        color: #171717;
        leading-trim: both;
        text-edge: cap;
        font-family: HelveticaNeueCyr;
        font-size: 11px;
        font-style: normal;
        font-weight: 400;
        line-height: 13.2px;

        opacity: 0.6;

        margin-left: 10px;
        width: 140px;
    }

    .PhotoDetails .Lines {
        display: flex;
        flex-direction: row;
        justify-content: space-between;
    }

    .PhotoDetails .Lines .BlueLIne {
        border-radius: 3px;
        height: 3px;

        background-color: #4775FF;

        width: calc(50% - 8px);
    }

    .PhotoDetails .Lines .WhiteLine {
        border-radius: 3px;
        height: 3px;

        background-color: #B5BDCA;

        width: calc(50% - 8px);
    }

    .PhotoDetails .Description {
        display: none;

        color: #171717;
        leading-trim: both;
        text-edge: cap;
        font-family: HelveticaNeueCyr;
        font-size: 13px;
        font-style: normal;
        font-weight: 400;
        line-height: 15.6px;

        opacity: 0.8;

        margin-top: 20px;
    }

    .PhraseContainer {
        position: absolute;

        left: 50%;
        transform: translate(calc(-50% + 300px), 0);

        bottom: 80px;

        width: 450px;

        color: #fff;
        text-align: center;
        leading-trim: both;
        text-edge: cap;
        font-family: HelveticaNeueCyr;
        font-size: 36px;
        font-style: normal;
        font-weight: 400;
        line-height: 36px;

        margin-bottom: 220px;

        @media (max-width: 1239px) {
            color: #fff;
            text-align: center;
            leading-trim: both;
            text-edge: cap;
            font-family: HelveticaNeueCyr;
            font-size: 25px;
            font-style: normal;
            font-weight: 550;
            line-height: 25.893px;
            
            width: 75vw;
            margin-bottom: 150px;
            margin-left: auto;
            margin-right: auto;
            text-align: center;

            position: unset;
            left: unset;
            transform: unset;
        }
    }

    .PhraseContainer img {
        margin-top: 126px;

        @media (max-width: 1239px) {
            margin-top: 72px;
        }
    }

    .CarouselContainer {
        position: relative;
        top: -15px;
        width: 100%;
        height: 680px;
    }

    .Carousel {
        position: absolute;

        top: 186px;

        left: 50%;
        margin-left: -600px;

        display: flex;
        flex-direction: row;

        width: 1200px;

        @media (max-width: 1239px) {
            margin-left: unset;
            width: min(85vw, 350px);
            left: 50%;
            transform: translate(-50%);
            top: 145px;
        }
    }

    .CarouselLeftContainer,
    .CarouselRightContainer {
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        cursor: pointer;
    }

    .CarouselLeftContainer {
        @media (max-width: 1239px) {
            position: absolute;
            top: 70px;
            left: calc(50% - 21px);
            transform: translate(-50%);
        }
    }

    .CarouselRightContainer {
        @media (max-width: 1239px) {
            position: absolute;
            top: 70px;
            left: calc(50% + 21px);
            transform: translate(-50%);
        }
    }

    .CarouselNavigation {
        @media (max-width: 1239px) {
            position: absolute;
            top: 118px;
            left: 50%;
            transform: translate(-50%);

            display: flex;
            flex-direction: row;
        }
    }

    .CarouselNavigationDark,
    .CarouselNavigationLight {
        background-color: #737373;
        height: 2px;
        width: 12vw;
        max-width: 60px;
        margin: .4vw;
    }

    .CarouselNavigationLight {
        background-color: #C9C7C2;
    }

    .CarouselBody {
        overflow: hidden;
    }

    .CarouselItemContainer {
        display: flex;
        flex-direction: row;
        justify-content: center;
        align-items: center;

        flex-grow: 1;
    }

    .CarouselItem {
        height: 550px;
        width: 350px;

        margin-left: 6px;
        margin-right: 6px;

        display: flex;
        flex-direction: column;
        justify-content: flex-end;

        background-size: cover;
        background-position: center;
        border-radius: 30px;

        @media (max-width: 1239px) {
            background-size: cover;
            background-repeat: no-repeat;
            height: 550px;
            width: 85vw;
            max-width: 350px;
            border-radius: 30px;
        }
    }

    .CarouselItemContent {
        color: #171717;
        leading-trim: both;
        text-edge: cap;
        font-family: HelveticaNeueCyr;
        font-size: 18px;
        font-style: normal;
        font-weight: 500;
        line-height: 21.6px;

        margin-bottom: 32px;
        margin-left: 25px;
        margin-right: 25px;

        background-color: white;

        padding-bottom: 32px;
        padding-top: 16px;
        padding-left: 18px;
        padding-right: 18px;

        display: flex;
        flex-direction: row;

        border-radius: 16px;

        @media (max-width: 1239px) {
            font-size: 18px;
            font-style: normal;
            font-weight: 400;
            line-height: 18.947px;
        }
    }

    .CarouselItemContent>.Accent {
        color: #171717;
        leading-trim: both;
        text-edge: cap;
        font-family: HelveticaNeueCyr;
        font-size: 11px;
        font-style: normal;
        font-weight: 500;
        line-height: 13.2px;

        opacity: 0.6;

        margin-left: 24px;

        @media (max-width: 1239px) {
            font-size: 11px;
            font-style: normal;
            font-weight: 400;
            line-height: 13.2px;
            /* 120% */
        }
    }

    .CarouselLeft,
    .CarouselRight {
        color: #fff;
        border: 1px solid #fff;
        padding: 5px;
        padding-left: 10px;
        padding-right: 10px;
        border-radius: 12px;
    }
}

@keyframes Team_PhotoScale {
    from {
        height: 470px;
    }
    to {
        height: 550px;
    }
}

@keyframes Team_PhotoUnScale {
    from {
        height: 550px;
    }
    to {
        height: 470px;
    }
}