@import url("font.css");
@import url("cookie.css");

/* VARIABLES */

:root {
    --blue: #0073ff;
    --dark-blue: #004292;
    --white: #fff;
    --white05: rgba(255, 255, 255, .5);
    --bord: 1px solid #000;
    --fz90: 90px;
    --fz20: 20px;
}


::-webkit-scrollbar {
    width: 8px;
    height: 8px;
    background-color: #d5d5d5;
}

::-webkit-scrollbar-thumb {
    background-color: var(--blue);
    border-radius: 15px;
    border: 0px solid #d5d5d5;
    background-clip: padding-box;
}


::-webkit-scrollbar-track {
    background-color: #d5d5d5;
}

@media (max-width: 768px) {
    :root {

        --fz90: 60px;

    }
}




/* RESET */

*,
::before,
::after {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

.bord {border: var(--bord) !important;}


/* BODY */

body {
    font-family: WixMadeforDisplay, sans-serif;
    font-size: 16px;
    letter-spacing: -0.5px;
    line-height: 1.5;
    background: var(--white);
    display: flex;
    flex-direction: column;
    min-height: 100dvh;
    color: var(--dark-blue);

    * {
        transition: all .2s ease-out allow-discrete;
        font-family: WixMadeforDisplay, sans-serif;
        font-weight: 300;

    }

    &.page {
        background: #F3F6F9;
    }
}


ul, ol {
        padding-left: 40px
}
h1 {margin-bottom: 30px; line-height: 1;}
h2,h3,h4,h5 {margin-top: 30px; margin-bottom: 10px;line-height: 1;}
ul, ol {
    margin-bottom: 10px;

    li {
        margin-bottom: 5px;    
    }
}

p {
    margin-bottom: 10px;

    a {color: var(--blue);}
}



/* HEADER */

header {
    position: fixed;
    inset: 0 0 auto;
    width: 100%;
    z-index: 99;
    padding: 10px 80px;
    background: var(--white05);
    backdrop-filter: blur(5px);

    div {
        display: flex;
        justify-content: space-between;
        max-width: 1760px;
        width: 100%;
        margin: 0 auto;
        align-items: center;

    }

    a {
        text-decoration: none;
        color: var(--dark-blue);
        letter-spacing: 0;
    }

    a svg {
        fill: var(--dark-blue);
        width: 100%;
        max-width: 108px;
        height: 24px;
        margin-right: 20px;
    }

    a:first-child {
        display: flex;
        align-items: start;
        justify-content: flex-start;
        font-size: 13px;
        font-weight: 500;
        line-height: 1.1;
    }

    &:hover {
        background: var(--blue);
        transition: background .4s;

        a,
        a svg {
            color: var(--white);
            fill: var(--white);
        }
    }

    @media (max-width: 768px) {
        padding: 10px 40px;
    }

    @media (max-width: 480px) {
        padding: 5px 20px;

        a:first-child {
            font-size: 0;
            svg {
                transform: scale(0.8);
                transform-origin: left center;
            }
        }

    }
}


/* MAIN PAGE TOP SECTION */


.mpvid {
    position: fixed;
    inset: 0;
    z-index: -1000;
    overflow: hidden;
    background: var(--white);

    &>video {
        position: absolute;
        inset: 50% auto auto 50%;
        min-width: 100%;
        min-height: 100%;
        transform: translate(-50%, -50%);
        opacity: .5;
    }
}

.first {
    height: 100dvh;
    display: flex;
    gap: 40px;
    flex-direction: column;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.00) 50%, #F3F6F9 93.71%);
    align-content: center;
    padding: 40px 80px;
    text-transform: uppercase;
    justify-content: center;

    & div:nth-child(2) {
        max-width: 1760px;
        width: 100%;
        margin: 0 auto;
    }

    @media (max-width: 768px) {
        container-type: inline-size;
        padding: 40px;
    }

    @media (max-width: 480px) {
        container-type: inline-size;
        padding: 20px;
    } 


    h1 {
        display: flex;
        flex-direction: column;
        justify-content: center;
        flex-grow: 1;
        color: var(--white);
        font-size: var(--fz90);
        line-height: 1;
        align-content: center;
        text-transform: uppercase;
        text-align: center;
        animation: slogan_anim 4s;
        filter: drop-shadow(0 0 32px #8aaed1);

    
        @media (max-width: 768px) {
            font-size: 15cqw;
    
        }
    }
    
}


@keyframes slogan_anim {
    0% {
      opacity: 0;
      filter: blur(100px);
      filter: drop-shadow(0 0 0px #8aaed100);
    }
    50% {
        opacity: 0.5;
        filter: blur(50px);
        filter: drop-shadow(0 0 32px #8aaed100);
    }
    100% {
        opacity: 1;
        filter: blur(0);
        filter: drop-shadow(0 0 32px #8aaed1);
    }
  }


/* SECTIONS */

section {
    min-height: 100dvh;
    display: flex;
    flex-direction: column;
    justify-content: space-between;

    &>div:first-child, .wrapper  {
        max-width: 1760px;
        width: 100%;
        margin: 0 80px;
        height: 100%;
        min-height: 100dvh;
        display: flex;
        flex-direction: column;
        justify-content: space-between;
        padding: 150px 0;
    }

    .lt {
        width: 100%;
        text-transform: uppercase;
    }

    @media (max-width: 768px) {
        gap: 40px;

        &>div:first-child {
            padding: 80px 40px;
        }
    }

    @media (max-width: 480px) {

        &>div:first-child {
            padding: 60px 20px;

            .lt {
                font-size: 12px;
            }

        }


    }

}

.client {
    color: var(--white);

    .wrapper {
        padding: var(--fz90) 0;


        .lt {
            display: flex;
            justify-content: space-between;

            span {
                b {font-weight: 800;}
            }
        }

    }

    .client_info {
        justify-content: center;
        width: 100%;
        display: flex;

        .client_logo {
            padding: 0 190px 0 0;
            text-align: right;
            width: 50%;

        }

        .client_works {
            width: 50%;

            h2 {
                display: flex;
                gap: var(--fz90);
                font-size: var(--fz90);
                line-height: var(--fz90);


                span {
                    font-size: 50px;
                    line-height: 1.1;
            

                }

                
   
            }

            ul {
                padding: var(--fz90) 0 0;
                li {
                    list-style-type: none;
                    font-weight: 300;
                }

            }

        }

        @media (max-width: 1440px) {

            .client_logo {
                padding: 0 100px 0 0;


                img { max-width: 160px;}
    
            }

            .client_works h2 {

                font-size: 70px;
                line-height: 1;
                gap: 40px;

                span {font-size: 30px;}
            }

            .client_works h2.ekb_title {
                font-size: 50px;
            }


            .client_works h2 {
                flex-direction: column;
                gap: 10px;
            }

          }
          
          

    }

    a {
        text-align: right;
        svg {
            fill: var(--white);
            width: 50px;
            height: 50px;}
    }

    @media (max-width: 768px) {


        & .client_info {
            padding-top: 80px;
            container-type: inline-size;
            flex-direction: column;
            gap: 40px;

            .client_logo {
                text-align: right;
                padding: 50px 20px 0 0;
                width: 100%;
                    
                img {width: 25cqw;}

            }

            .client_works {width: 100%;

                ul {padding: 40px 0;}

            }

        }

    }
    

    @media (max-width: 480px) {


        & .client_info {
            padding-top: 0;


        }

    }

}

.feat {

    background: #F3F6F9;

    &>div:first-child {
        flex-direction: row;
        align-items: center;
        gap: 5cqw;
        container-type: inline-size;
    }

    a {
        container-type: inline-size;
        border-radius: 10cqw;
        padding: 6cqw;
        width: calc(33.3%);
        background: var(--white);
        text-transform: uppercase;
        text-decoration: none;
        line-height: 1;
        color: #004292;
        transition: all .25s linear;
        display: flex;
        flex-direction: column;
        aspect-ratio: 1 / 1.15;
        justify-content: space-between;
        font-weight: normal;

        &:hover {
            color: var(--blue);
        }

        h2 {
            font-size: 12cqw;
            padding-bottom: 10cqw;
            font-weight: 600;

        }

        h3 {
            font-size: 8cqw;
            padding-bottom: 10cqw;
            font-weight: normal;
        }

        h4 {
            font-size: 7cqw;
            font-weight: normal;
        }

        svg {
            max-width: 13cqw;
            width: 100%;
            aspect-ratio: 1 / 1;
            fill: var(--blue);
        }
    }

    @media (max-width: 768px) {

        & {min-height: unset;}

        &>div:first-child {
        min-height: unset;
        }

    }

    @media (max-width: 480px) {

        &>div:first-child {
        flex-direction: column;
        align-items: center;
        gap: 30cqw;
        }

        a {
            background: none;
            width: 100%;
        border-radius: 0;
        padding: 0;
        gap: 10cqw;
        aspect-ratio: 1 / 0.7;
        }
    }

}


.cta {
    text-transform: uppercase;

    h2 {
        font-size: var(--fz90);
        font-weight: 300;
        line-height: 1;
    }

    .tb {
        display: flex;
        flex-direction: column;
        flex-grow: 1;
        justify-content: center;
        gap: 100px;
    }

    .btns {
        display: flex;

        a {
            margin-right: 50px;
            border-radius: 50px;
            border: 1px solid var(--blue);
            height: 50px;
            padding: 0 30px;
            text-decoration: none;
            display: flex;
            align-items: center;
            transition: all .25s linear;
            color: var(--blue);

            &:hover {
                background: var(--white);
                border: solid 1px #FFF;
            }

            svg {
                fill: var(--blue);
                width: 20px;
                height: 20px;
                margin-left: 15px;
            }
        }

    }

    @media (max-width: 960px) {

        &>div:first-child {
            container-type: inline-size;
        }

        h2 {
            font-size: 9cqw;
        }

        .tb {
            gap: 40px;
        }

        .btns {
            width: 100%;
            flex-direction: column;
            align-items: start;
            gap: 20px;

            & a {
                display: flex;
                justify-content: space-between;
                font-size: 18px;
            }
        }
    }

    @media (max-width: 480px) {

        h2 {
            font-size: 14cqw;
        }

        .btns {

            & a {
                width: 100%;
                font-size: 16px;
            }
        }
    }


}


.ctt {
    background: radial-gradient(circle at left, #004B45 0%, rgba(22, 22, 22, 0.00) 100%), #161616;


    @media (max-width: 768px) {
        background: radial-gradient(circle at top, #004B45 0%, rgba(33, 130, 129, 0.00) 30%), #161616;     
    
    }
}

.emkolbaski {
    background: radial-gradient(circle at top left, #7D1E00 0%, rgba(46, 26, 17, 0.00) 70%), #2E1A11;


    @media (max-width: 768px) {
        background: radial-gradient(circle at top, #7D1E00 0%, rgba(46, 26, 17, 0.00) 70%), #2E1A11;     
    
    }
}

.asg {
    background: radial-gradient(circle at top left, #0F8DFF 0%, rgba(0, 89, 170, 0.00) 50%), #0059AA;


    @media (max-width: 768px) {
        background: radial-gradient(circle at top, #0F8DFF 0%, rgba(0, 89, 170, 0.00) 50%), #0059AA;     
    
    }
}

.amm {
    background: radial-gradient(circle at left, #00E3E1 0%, rgba(33, 130, 129, 0.00) 50%), #218281;


    @media (max-width: 768px) {
        background: radial-gradient(circle at top, #00E3E1 0%, rgba(33, 130, 129, 0.00) 50%), #218281;     
    
    }
}


.feature {

    display: flex;
    
    .feat_descr {
        width: 40%;
        letter-spacing: -0.5px;
        line-height: 0.9;


        h1 {
            font-size: 50px;

            text-transform: uppercase;
            margin-bottom: 40px;
        }

        h2 {
            font-size: 50px;
            margin-bottom: 40px;
            letter-spacing: -2px;
        }


    }



    .fblocks {
        width: 60%;
        display: flex;
        gap: 50px;
        flex-wrap: wrap;

        .fblock {
            display: flex;
            gap: 30px;
            width: calc(50% - 25px);
            justify-content: space-between;
        
            .fcont {
                width: 100%;
        
                h4 {
                    text-transform: uppercase;
                    font-weight: 500;
                    font-size: 24px;
                    margin-bottom: 10px;
                    line-height: 1;
                 }
            }
        
        }

    }
    @media (max-width: 1280px) {

        flex-direction: column;
        gap: 80px;

        .feat_descr, .fblocks {width: 100%;}
            
    }


    @media (max-width: 768px) {

            gap: 50px;
         
    
    
        
    }

    
    @media (max-width: 480px) {

    .fblocks .fblock {width: 100%;}
   
    }


}




.nav_arrows {
    display: flex;
    justify-content: space-between;

    a {

    &:first-of-type {
        transform: rotate(180deg);
    }

        cursor: pointer;
        svg {
            width: 50px;
            fill: var(--blue);
        }
    }
}




/* FOOTER */

footer {
    background: var(--white05);
    font-size: 12px;
    line-height: 1.2;
    padding: 40px 80px;

    &>div:first-of-type {
        margin: 0 auto;
        width: 100%;
        max-width: 1760px;
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        grid-template-areas: "inn policy copy";
        gap: 80px;



        & div {
            margin: auto 0;
            display: flex;
            flex-direction: column;
            gap: 10px;
            justify-content: center;


            &:first-child {
                grid-area: inn;
            }

            &:nth-child(2) {
                grid-area: policy;
                text-align: center;
            }

            &:nth-child(3) {
                grid-area: copy;
                align-items: end;
            }

            a {
                text-decoration: none;
                color: var(--dark-blue);
                
                &:hover {color: var(--blue);}

            }

            img {max-width: 80px;}

        }

    }

    @media (max-width: 768px) {
        padding: 10px 40px;

        &>div:first-of-type {
            gap: 40px;
        }
    }

    @media (max-width: 480px) {
        padding: 20px;

        &>div:first-of-type {
            gap: 30px;
            grid-template-columns: 1fr;
            grid-template-areas:
                "copy"
                "policy"
                "inn";

            div {
                text-align: center;

                &:nth-child(3) {
                    align-items: center;
                }
            }
        }
    }
}