body,html{
    padding: 0;
    margin: 0;
}
.heading{
    width: 100%;
    height: 100vh;

    background: url(../img/background_1.png);
    background-repeat: no-repeat;
    background-size: 100% 100%;

    z-index: 1;
    position: relative;

    text-align:center;
}
.heading .logo{
    max-width: 700px;
    margin-top: 285px;
}
.heading h1{
    font-family: 'Montserrat';
    font-style: normal;
    font-weight: 400;
    font-size: 30px;
    line-height: 35px;
    text-align: center;
    letter-spacing: 0.02em;
    text-transform: uppercase;

    /* color / White */
    color: #FFFFFF;

    margin-top: 154px;

    max-width: 1200px;
}
/*.header{
    position: -webkit-sticky; !* Safari *!
    position: fixed;
    top: 90px;
    z-index: 9999;

    transition: 0.3s;
}*/
.header.scrolled {
    top: 0;
    background: black;

    padding-top: 15px;
    padding-bottom: 15px;
}
.header.black {
    top: 0;
    background: black;

    padding-top: 15px;
    padding-bottom: 15px;
}
/*.header .first-line a{
    font-family: 'Montserrat';
    font-style: normal;
    font-weight: 500;
    font-size: 20px;
    line-height: 24px;
    text-align: center;
    letter-spacing: 0.04em;
    text-transform: uppercase;

    color: #F2F2F2;
    margin-right: 60px;

    text-decoration: none!important;
    transition: 0.3s;
}
.header .first-line a:hover{
    border-bottom: 2px solid #F2F2F2;
}
.header .first-line a.active{
    color: white;
    border-bottom: 2px solid white;
}
.header .first-line a:last-child{
    margin-right: 0!important;
}
.header .second-line{
    margin-top: 22px;
}
.header .second-line a{
    font-family: 'Montserrat';
    font-style: normal;
    font-weight: 500;
    font-size: 16px;
    line-height: 20px;

    !* identical to box height *!
    text-align: center;
    letter-spacing: 0.04em;
    text-transform: uppercase;

    color: #B9B9B9;
    margin-right: 62px;
    transition: 0.3s;

    text-decoration: none!important;
}
.header .second-line a:hover{
    color: white;
}
.header .second-line a:last-child{
    margin-right: 0!important;
}*/
.what-we-offer{
    padding-top: 96px;
    padding-bottom: 96px;
}
.what-we-offer h2{
    font-family: 'HelveticaNeueCyr';
    font-style: normal;
    font-weight: 700;
    font-size: 50px;
    line-height: 50px;

    /* identical to box height */
    text-align: center;
    text-transform: uppercase;

    /* color / Red */
    color: #FF0022;

    margin-bottom: 40px;
    margin-top: 0;
}
.what-we-offer p{
    font-family: 'HelveticaNeueCyr';
    font-style: normal;
    font-weight: 400;
    font-size: 36px;
    line-height: 48px;

    /* or 133% */
    text-align: center;

    /* color / Black */
    color: #000000;

    margin-bottom: 40px;
}
.divider{
    width: 398px;
    height: 6px;

    /* gradient / 1 */
    background: linear-gradient(90deg, #FF0000 0%, #FF003D 100%);

    margin: 0 auto!important;
    margin-bottom: 40px!important;
}
.what-we-offer h3{
    font-family: 'HelveticaNeueCyr';
    font-style: normal;
    font-weight: 700;
    font-size: 30px;
    line-height: 30px;

    /* or 100% */
    text-align: center;

    /* color / Black */
    color: #000000;
    margin-bottom: 40px;
    margin-top: 0;
}
.what-we-offer video{
    max-width: 100%;
    margin-bottom: 40px;
}
.what-we-offer .red-button{
    display: inline-block;

    padding: 21px;

    /* gradient / 1 */
    background: linear-gradient(90deg, #FF0000 0%, #FF003D 100%);
    border-radius: 6px;


    font-family: 'Arial';
    font-style: normal;
    font-weight: 700;
    font-size: 16px;
    line-height: 18px;
    text-align: center;
    text-transform: uppercase;

    /* color / White */
    color: #FFFFFF;
}

.container, .container-lg, .container-md, .container-sm, .container-xl {
    max-width: 1440px!important;
}

.black-block{
    padding-top: 96px;
    padding-bottom: 96px;

    background: #000000;
}
.black-block h2{
    font-family: 'HelveticaNeueCyr';
    font-style: normal;
    font-weight: 700;
    font-size: 96px;
    line-height: 96px;
    text-align: center;
    text-transform: uppercase;

    /* color / Red */
    color: #FF0022;

    margin-bottom: 40px;
    margin-top: 0!important;
}
.black-block p{
    font-family: 'HelveticaNeueCyr';
    font-style: normal;
    font-weight: 400;
    font-size: 28px;
    line-height: 38px;

    /* or 133% */
    text-align: center;

    /* color / White */
    color: #FFFFFF;

    margin-bottom: 40px;
}
.black-block .infocase img{
    width: 100%;
    max-width: 100%;

    margin-bottom: 20px;
}
.black-block .infocase span{
    display: block;
    border-left: 4px solid #FF0022;

    /*min-height: 108px;*/

    font-family: 'HelveticaNeueCyr';
    font-style: normal;
    font-weight: 400;
    font-size: 24px;
    line-height: 36px;

    /* or 150% */

    /* color / White */
    color: #FFFFFF;

    padding-left: 20px;
}

.black-block .red-button{
    display: inline-block;

    /* gradient / 1 */
    background: linear-gradient(90deg, #FF0000 0%, #FF003D 100%);
    border-radius: 6px;

    font-family: 'Arial';
    font-style: normal;
    font-weight: 700;
    font-size: 24px;
    line-height: 28px;

    /* identical to box height */
    text-align: center;
    text-transform: uppercase;

    /* color / White */
    color: #FFFFFF;


    padding-left: 40px;
    padding-right: 40px;
    padding-top: 21px;
    padding-bottom: 21px;

    margin: 0 auto!important;
    margin-top: 40px!important;
}
.black-block .sub-block h3{
    font-family: 'HelveticaNeueCyr';
    font-style: normal;
    font-weight: 700;
    font-size: 48px;
    line-height: 48px;

    /* identical to box height */
    text-align: center;
    text-transform: uppercase;

    /* color / White */
    color: #FFFFFF;

    margin-top: 140px;
    margin-bottom: 20px;
}

.black-block .infograph{
    min-height: 334px;

    background: rgba(26, 26, 26, 0.2);
    border-radius: 30px;

    margin-top: 20px;
}

.black-block .infograph img{
    width: 186px;

    margin-bottom: 24px;
}
.black-block .infograph span{
    font-family: 'HelveticaNeueCyr';
    font-style: normal;
    font-weight: 700;
    font-size: 32px;
    line-height: 32px;

    /* or 100% */
    text-align: center;

    /* color / White */
    color: #FFFFFF;

    display: block;
}
.our-partners{
    padding-top: 96px;
    padding-bottom: 96px;
}
.our-partners h2{
    font-family: 'HelveticaNeueCyr';
    font-style: normal;
    font-weight: 400;
    font-size: 96px;
    line-height: 96px;

    /* identical to box height */
    text-align: center;
    text-transform: uppercase;

    /* color / Red */
    color: #FF0022;

    margin-top: 0;
    margin-bottom: 40px;
}
.our-partners .partner img{
    max-width: 100%;
}

.contact-us{
    background: #000000;
    padding-top: 96px;
    padding-bottom: 48px;
}
.contact-us .contact-block{
    padding: 64px 0px;

    background: radial-gradient(102.55% 198.98% at 50% 50%, #080808 0%, #333333 100%);
    border-radius: 30px;

    max-width: 1200px;
    margin: 0 auto!important;

    margin-bottom: 144px!important;
}
.contact-us h3{
    font-family: 'Gotham Pro';
    font-style: normal;
    font-weight: 400;
    font-size: 32px;
    line-height: 31px;

    /* identical to box height */

    /* red */
    color: #FF0000;

    text-align: center;
    margin-bottom: 20px;
}
.contact-us .contact-form{
    width: 100%;
}
.contact-us .contact-form input{
    width: 289px;
    height: 30px;

    background: #FFFFFF;

    /* Gray 5 */
    border: 1px solid #E0E0E0;
    border-radius: 24px;

    padding: 8px 18px;
    line-height: 30px;
    margin-right: 20px;
}
.contact-us .contact-form .get-now-btn{

    /* red */
    background: #FF0000;
    border-radius: 30px;

    font-family: 'Gotham Pro';
    font-style: normal;
    font-weight: 700;
    font-size: 16px;
    line-height: 15px;
    text-align: center;

    color: #FFFFFF;

    padding: 8px 26.5px;
}
.footer-block{
    width: 100%;
    text-align: center;
}
.contact-link{
    display: inline-block;

    font-family: 'HelveticaNeueCyr';
    font-style: normal;
    font-weight: 300;
    font-size: 42px;
    line-height: 42px;

    /* identical to box height, or 100% */
    text-align: center;

    /* color / White */
    color: #FFFFFF;
    margin-bottom: 6px;

    text-decoration: none!important;
    transition: 0.3s;
}
.contact-link:hover{
    color: #FF0000;
    text-decoration: none!important;
}

.social-links{
    margin-top: 31px;
    width: 100%;
}
.social-links a{
    margin-right: 20px;
}
.social-links a:last-child{
    margin-right: 0!important;
}

@media(max-width: 1550px){
    .heading .logo{
        margin-top: 140px;
        max-width: 500px;
    }

    .heading h1 {
        font-size: 30px;
        margin-top: 50px;
    }

    .what-we-offer h2 {
        font-size: 50px;
        line-height: 50px;
    }
    .what-we-offer p {
        font-size: 26px;
        line-height: 36px;
    }
    .black-block h2 {
        font-size: 50px;
        line-height: 50px;
    }
    .our-partners h2 {
        font-size: 50px;
        line-height: 50px;
    }
}

.mobile-menu{
    display: none;
}

@media(max-width: 600px){
    .header{
        top: 15px;
    }
    .desktop-menu{
        display: none;
    }
    .mobile-menu{
        display: block;
        width: 100%;
        text-align: right;

        padding: 0 15px;
    }
    .mobile-menu a{
        color: white;

        font-size: 20px;
    }

    .heading .logo{
        margin-top: 140px;
        max-width: 80%;
    }

    .heading h1 {
        font-size: 18px;
        margin-top: 50px;
        line-height: 22px;
        padding-left: 15px;
        padding-right: 15px;
    }

    .what-we-offer h2 {
        font-size: 30px;
        line-height: 30px;
    }
    .what-we-offer {
        padding-top: 46px;
        padding-bottom: 46px;
    }
    .what-we-offer p {
        font-size: 20px;
        line-height: 26px;
    }

    .divider {
        width: 50%;
    }
    .what-we-offer h3 {
        font-size: 24px;
        line-height: 24px;
    }

    .black-block h2 {
        font-size: 30px;
        line-height: 30px;
    }

    .black-block {
        padding-top: 46px;
        padding-bottom: 46px;
    }
    .black-block p {
        font-size: 20px;
        line-height: 26px;
    }
    .black-block .infocase span {
        font-size: 18px;
        line-height: 26px;
    }
    .black-block .infocase{
        margin-bottom: 20px;
    }

    .black-block .red-button {
        font-size: 20px;
    }

    .black-block .sub-block h3 {
        font-size: 28px;
        line-height: 28px;

        margin-top: 60px;
    }
    .black-block .infograph {
        text-align: center;
    }
    .black-block .infograph span {
        font-size: 22px;
        line-height: 22px;
    }

    .our-partners h2 {
        font-size: 30px;
        line-height: 30px;
    }
    .our-partners {
        padding-top: 46px;
        padding-bottom: 46px;
    }
    .our-partners .partner{
        width: 50%;
    }

    .contact-us {
        padding-top: 46px;
        padding-bottom: 48px;
    }
    .contact-us .contact-block {
        padding: 34px 15px;
        margin-bottom: 40px!important;
    }

    .contact-us h3 {
        font-size: 22px;
        line-height: 21px;
    }
    .contact-us .contact-form input {
        width: 100%;
    }
    .get-now-btn{
        display: block;
        margin-top: 10px;
    }

    .contact-link {
        font-size: 32px;
        line-height: 32px;
    }

    .desktop-menu{
        padding: 0 15px;
    }
    .header .first-line a, .header .second-line a{
        display: block;
        margin-bottom: 5px;
        text-align: left;
        margin-right: 0!important;
    }

    .header .first-line a.active {
        border-bottom: 0;
    }
}

.contact-us.programmatic .contact-form input {
    width: 445px;
}
.about-us-block{
    padding-top: 96px;
    padding-bottom: 96px;
}
.about-us-block h2{
    font-family: 'HelveticaNeueCyr';
    font-style: normal;
    font-weight: 700;
    font-size: 96px;
    line-height: 96px;

    /* identical to box height */
    text-align: center;
    text-transform: uppercase;

    /* color / Black */
    color: #000000;

    margin-top: 0;
    margin-bottom: 40px;
}
.about-us-block p{
    font-family: 'HelveticaNeueCyr';
    font-style: normal;
    font-weight: 400;
    font-size: 36px;
    line-height: 48px;

    /* or 133% */
    text-align: center;

    /* color / Black */
    color: #000000;
    margin-top: 0;
    margin-bottom: 0;
}
.about-us-block img{
    max-width: 100%;
    margin-top: 40px;
    margin-bottom: 40px;
}
.about-us-block .p-info-case img{
    max-width: 186px;
    margin-bottom: 24px;
}
.about-us-block h3{
    font-family: 'HelveticaNeueCyr';
    font-style: normal;
    font-weight: 700;
    font-size: 26px;
    line-height: 38px;

    /* or 131% */
    text-align: center;
    text-transform: uppercase;

    /* color / Black */
    color: #000000;
}
.about-us-block span{
    font-family: 'HelveticaNeueCyr';
    font-style: normal;
    font-weight: 400;
    font-size: 26px;
    line-height: 38px;

    /* or 131% */
    text-align: center;

    /* color / Black */
    color: #000000;
}

.points{
    background: #000000;

    padding-top: 96px;
    padding-bottom: 96px;
}
.points h2{
    font-family: 'HelveticaNeueCyr';
    font-style: normal;
    font-weight: 700;
    font-size: 96px;
    line-height: 96px;

    /* identical to box height */
    text-align: center;
    text-transform: uppercase;

    /* color / White */
    color: #FFFFFF;

    margin-top: 0;
    margin-bottom: 40px;
}
.points .point-case span{
    font-family: 'HelveticaNeueCyr';
    font-style: normal;
    font-weight: 400;
    font-size: 18px;
    line-height: 36px;

    /* identical to box height, or 150% */
    text-align: center;

    /* color / Red */
    color: #FF0022;

    display: block;
    margin-bottom: 10px;
}
.points .point-case img{
    width: 100%;
}
.programmatic-offer{
    display: inline-block;
    margin-top: 54px;

    font-family: 'Arial';
    font-style: normal;
    font-weight: 700;
    font-size: 24px;
    line-height: 28px;

    /* identical to box height */
    text-align: center;
    text-transform: uppercase;

    /* color / White */
    color: #FFFFFF;

    /* gradient / 1 */
    background: linear-gradient(90deg, #FF0000 0%, #FF003D 100%);
    border-radius: 6px;

    padding: 21px 40px;
    text-decoration: none!important;

}
.programmatic-offer:hover{

    text-decoration: none!important;
    color: white;
}

.gallery{
    padding: 96px 0;
}
.gallery img{
    width: 100%;
}

.points-offer{
    background: #000000;
    padding: 96px 0;
}
.points-offer h2{
    font-family: 'HelveticaNeueCyr';
    font-style: normal;
    font-weight: 700;
    font-size: 96px;
    line-height: 96px;

    /* identical to box height */
    text-align: center;
    text-transform: uppercase;

    /* color / White */
    color: #FFFFFF;

    margin-top: 0;
    margin-bottom: 40px;
}
.points-offer p{
    font-family: 'HelveticaNeueCyr';
    font-style: normal;
    font-weight: 400;
    font-size: 36px;
    line-height: 48px;

    /* or 133% */
    text-align: center;

    /* color / White */
    color: #FFFFFF;
    display: block;
    margin-top: 0;
    margin-bottom: 40px;
}
.points-offer .offer-item{
    background: #1A1A1A;
    border-radius: 30px;
}
.points-offer .offer-item img{
    width: 100%;
    border-radius: 30px 30px 0 0;
}
.points-offer .offer-item h3{
    font-family: 'HelveticaNeueCyr';
    font-style: normal;
    font-weight: 700;
    font-size: 24px;
    line-height: 32px;

    /* or 133% */
    text-align: center;
    text-transform: uppercase;

    /* color / White */
    color: #FFFFFF;
}
.ttl-blck{
    min-height: 96px;
    max-height: 96px;

    display: flex!important;
    flex-direction: column;
    justify-content: center;
    align-items: center;

    margin-top: 20px;
    margin-bottom: 20px;
}
.divider-mini{
    width: 100px;
    height: 4px;

    /* gradient / 1 */
    background: linear-gradient(90deg, #FF0000 0%, #FF003D 100%);

    margin: 0 auto;
}
.points-offer .offer-item b{
    display: block;

    font-family: 'HelveticaNeueCyr';
    font-style: normal;
    font-weight: 700;
    font-size: 48px;
    line-height: 50px;

    /* identical to box height, or 104% */
    text-align: center;
    text-transform: uppercase;

    color: #FFFFFF;

    margin-top: 20px;
}
.points-offer .offer-item span{
    display: block;
    font-family: 'HelveticaNeueCyr';
    font-style: normal;
    font-weight: 400;
    font-size: 24px;
    line-height: 24px;
    text-align: center;

    /* Gray 3 */
    color: #828282;
}
.points-offer .offer-item{
    padding-bottom: 40px;
}

@media(max-width: 1550px){

    .points-offer h2 {
        font-size: 50px;
        line-height: 50px;
    }
    .points-offer p {
        font-size: 26px;
        line-height: 36px;
    }
    .points h2 {
        font-size: 50px;
        line-height: 50px;
    }
    .points p {
        font-size: 26px;
        line-height: 36px;
    }
    .about-us-block h2 {
        font-size: 50px;
        line-height: 50px;
    }
    .about-us-block p {
        font-size: 26px;
        line-height: 36px;
    }
}
@media(max-width: 600px){
    .points-offer h2 {
        font-size: 30px;
        line-height: 30px;
    }
    .points-offer {
        padding-top: 46px;
        padding-bottom: 46px;
    }
    .points-offer  p {
        font-size: 20px;
        line-height: 26px;
    }
    .points{
        padding-top: 46px;
        padding-bottom: 46px;
    }
    .about-us-block{
        padding-top: 46px;
        padding-bottom: 46px;
    }
    .points h2 {
        font-size: 30px;
        line-height: 30px;
    }
    .points p {
        font-size: 20px;
        line-height: 26px;
    }
    .about-us-block h2 {
        font-size: 30px;
        line-height: 30px;
    }
    .about-us-block p {
        font-size: 20px;
        line-height: 26px;
    }

    .contact-us.programmatic .contact-form input {
        width: 100%;
    }

    .points-offer .offer-item {
        margin-bottom: 20px;
    }
    .p-info-case{
        text-align: center;
    }
    .programmatic-offer {
        font-size: 19px;
    }

    .gallery {
        padding: 46px 15px;
    }
    .g-item{
        margin-bottom: 20px;
    }
}

@media(max-width: 1550px){
    .container, .container-lg, .container-md, .container-sm, .container-xl {
        max-width: 1200px !important;
    }
}

.heading h1{
    font-family: "HelveticaNeueCyr 400"!important;
    font-weight: 400!important;
}
h2{
    font-family: "HelveticaNeueCyr 700"!important;
    font-weight: 700!important;
}
p{
    font-family: "HelveticaNeueCyr 300"!important;
    font-weight: 300!important;
}

.programmatic-offer{
    font-family: "HelveticaNeueCyr 700"!important;
    font-weight: 700!important;
}

.points .point-case span{
    font-family: "HelveticaNeueCyr 300"!important;
    font-weight: 300!important;
}

.about-us-block h3{
    font-family: "HelveticaNeueCyr 500"!important;
    font-weight: 500!important;
}
.about-us-block span{
    font-family: "HelveticaNeueCyr 300"!important;
    font-weight: 300!important;
}

.what-we-offer h3{
    font-family: "HelveticaNeueCyr 500"!important;
    font-weight: 500!important;
}

.black-block .infocase span{
    font-family: "HelveticaNeueCyr 300"!important;
    font-weight: 300!important;
}
.black-block .red-button{
    font-family: "HelveticaNeueCyr 700"!important;
    font-weight: 700!important;
}

.black-block .sub-block h3{
    font-family: "HelveticaNeueCyr 700"!important;
    font-weight: 700!important;
}
.black-block .infograph span{
    font-family: "HelveticaNeueCyr 500"!important;
    font-weight: 500!important;
}
.our-partners h2{
    font-family: "HelveticaNeueCyr 400"!important;
    font-weight: 400!important;
}
.contact-us h3{
    font-family: "HelveticaNeueCyr 500"!important;
    font-weight: 500!important;
    text-transform: uppercase;
}
