body {
    font-family: 'Neue Machina';
    font-style: normal;
    font-weight: 400;
    font-size: calc(15px + 9 * ((100vw - 375px) / (1440 - 375)));
    line-height: calc(18px + 11 * ((100vw - 375px) / (1440 - 375)));
    background: #170C58;
}

@media (min-width: 1400px) and (max-width: 1700px) {
    .container{
        max-width: 1135px;
    }
}

.header {
    position: relative;
}

header .nav li a{
    font-size: 16px;
}

.header .logo {
    width: calc(80px + 80 * ((100vw - 375px) / (1440 - 375)));
    position: relative;
    z-index: 1;
}

.header .social_links .bi {
    width: 100%;
    height: 100%;
}

.header .social_links div {
    width: calc(24px + 8 * ((100vw - 375px) / (1440 - 375)));
}

.section_title {
    font-style: normal;
    font-weight: 800;
    font-size: calc(24px + 26 * ((100vw - 375px) / (1440 - 375)));
    line-height: calc(24px + 26 * ((100vw - 375px) / (1440 - 375)));
}

#first {
    margin-top: calc(40px + 8 * ((100vw - 375px) / (1440 - 375)));
    padding-bottom: calc(536px + 988 * ((100vw - 375px) / (1440 - 375)));
}

#first .hero_bg {
    position: absolute;
    top: 0;
    left: 0;
    z-index: -9;
    width: 100%;
}

#first .hero_bg img {
    width: 100%;
    object-fit: cover;
}

#first h1 {
    font-style: normal;
    font-weight: 800;
    font-size: calc(32px + 56 * ((100vw - 375px) / (1440 - 375)));
    line-height: calc(31px + 54 * ((100vw - 375px) / (1440 - 375)));
}
#first h2 {
    font-size: calc(24px + 48 * ((100vw - 375px) / (1440 - 375)));
    margin-top: 25px;
    line-height: calc(23px + 44 * ((100vw - 375px) / (1440 - 375)));
}

#first h3 {
    font-size: calc(17px + 33 * ((100vw - 375px) / (1440 - 375)));
    margin-top: calc(21px + 21 * ((100vw - 375px) / (1440 - 375)));
    line-height: calc(16px + 32 * ((100vw - 375px) / (1440 - 375)));
}

#second {
    margin-bottom: calc(66px + 171 * ((100vw - 375px) / (1440 - 375)));
    position: relative;
}

#second .bg {
    position: absolute;
    top: 9px;
    right: 0;
    z-index: -8;
}

#second .bg img{
    position: absolute;
    top: 0;
    right: 0;
    z-index: -8;
}

#second h2 {
    margin-top: calc(0px + 50 * ((100vw - 375px) / (1440 - 375)));
}

#second p {
    margin-top: 44px;
    padding-right: 10px;
}

#third h2 {
    margin-bottom: 20px;
}

#third h3, #fourth h3 {
    font-style: normal;
    font-weight: 800;
    font-size: calc(20px + 12 * ((100vw - 375px) / (1440 - 375)));
    line-height: calc(20px + 30 * ((100vw - 375px) / (1440 - 375)));
}

#third h3 {
    text-align: center;
    margin-top: 16px;
}

#third p {
    text-align: center;
    margin-top: 20px;
    padding: 0 3px;
}

#fourth {
    margin-bottom: calc(44px + 45 * ((100vw - 375px) / (1440 - 375)));
}

#fourth .section_title {
    margin-top: calc(66px + 74 * ((100vw - 375px) / (1440 - 375)));
    margin-bottom: calc(58px + 36 * ((100vw - 375px) / (1440 - 375)));
}

#fourth p {
    margin-top: 20px;
}

#fourth .btn {
    padding-top: calc(10px + 5 * ((100vw - 375px) / (1440 - 375)));
    padding-bottom: calc(10px + 5 * ((100vw - 375px) / (1440 - 375)));
    padding-left: calc(44px + 28 * ((100vw - 375px) / (1440 - 375)));
    padding-right: calc(44px + 28 * ((100vw - 375px) / (1440 - 375)));
    font-style: normal;
    font-weight: 400;
    font-size: calc(15px + 9 * ((100vw - 375px) / (1440 - 375)));
    line-height: calc(15px + 14 * ((100vw - 375px) / (1440 - 375)));
    background: linear-gradient(90deg, #DD14F2 16.67%, #00F9FF 93.18%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

#fourth .btn_border {
    max-width: calc(162px + 93 * ((100vw - 375px) / (1440 - 375)));
    margin-top: 36px;
    margin-bottom: 58px;
    background: linear-gradient(90deg, #DD14F2 16.67%, #00F9FF 93.18%);
    padding: 1px;
    border-radius: calc(8px + 4 * ((100vw - 375px) / (1440 - 375)));
    display: inline-block;
}

#fourth .btn_wrapper {
    background: #170C58;
    border-radius: calc(8px + 4 * ((100vw - 375px) / (1440 - 375)));
}

#fourth .text p {
    margin-bottom: 0;
}

footer {
    background: linear-gradient(358.91deg, rgba(23, 12, 88, 0.4) 13.01%, rgba(21, 0, 203, 0.4) 102.83%);
}

footer .end {
    padding-top: 7px;
    padding-bottom: 9px;
    background: rgba(55, 12, 185, 1);

}

footer .end .top_btn a{
    font-style: normal;
    font-weight: 800;
    font-size: 14px;
    line-height: 24px;
    text-decoration: none;
}

footer .end .text {
    font-style: normal;
    font-weight: 400;
    font-size: calc(12px + 4 * ((100vw - 375px) / (1440 - 375)));
    line-height: calc(12px + 12 * ((100vw - 375px) / (1440 - 375)));
}

@media (max-width: 575.9px) {
    .header .social_links {
        position: absolute;
        top: 22px;
        right: 18px;
    }

    .header .social_links div {
        margin-bottom: 20px;
    }

    .footer .logo {
        margin-top: 48px;
        margin-bottom: 48px;
    }
}

@media (max-width: 767.9px) {
    #third .img img{
        max-width: 50%!important;
    }

    body.lock {
        overflow: hidden;
    }
    
    .header-burger {
        display: block;
        position: relative;
        width: 20px;
        height: 20px;
        z-index: 3;
    }

    .header-burger span {
        position: absolute;
        background-color: #fff;
        left: 0;
        width: 80%;
        height: 2px;
        top: 9px;
        transition: all 0.3s ease-in-out 0s;
    }

    .header-burger::before,
    .header-burger::after {
        content: '';
        background-color: #fff;
        position: absolute;
        width: 100%;
        height: 2px;
        left: 0;
        transition: all 0.3s ease-in-out 0s;
    }

    .header-burger::before {
        top: 4px;
    }

    .header-burger::after {
        bottom: 4px;
        width: 60%;
    }

    .header-burger.active::after {
        bottom: 4px;
        width: 100%;
    }

    .header-burger.active span {
        transform: scale(0);
    }

    .header-burger.active::before {
        transform: rotate(45deg);
        top: 9px;
    }

    .header-burger.active::after {
        transform: rotate(-45deg);
        bottom: 9px;
    }

    header .nav {
        position: fixed;
        top: -100%;
        opacity: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background-color: #170C58;
        padding: 100px 0 0 0;
        overflow: auto;
        transition: all 0.3s ease-in 0s;
    }

    header .nav.active {
        top: 0;
        opacity: 1;
    }

    header .nav li a {
        font-size: 24px;
        margin-bottom: 7px;
    }
}

@media (max-width: 1023.9px) {
    #second .bg img {
        width: 100%;
        position: static;
    }

    #second .bg {
        position: static;
    }
}

@media (min-width: 1700px) {
    #first {
        padding-bottom: 2100px;
    }
}