@font-face {
    font-family: font;
    src: url(./NeueMontreal-Regular.otf);
}
*{ 
Margin:0%;
Padding:0%;
    font-family: font;
    Box-sizing: border-box;
}
html{
    scroll-behavior: smooth;
}
:root{
    --back :#FFFFFE;
    --color :#1C1D20;
}
body{
    background-color: var(--back);
}
header{
    width: 100vw;
    height: 13vh;
    display: flex;
    align-items: center;
    position: absolute;
    z-index: 1;
    justify-content: center;
}
nav{
    width: 97%;
    height: 70%;
    display: flex;
    padding-left: 3vw;
    align-items: center;
    justify-content: space-between;
}
nav a{
    font-size: 1.2vw;
    color: var(--back);
    font-weight: 400;
    text-decoration: none;
}
.pages{
    width: 25%;
    display: flex;
    align-items: center;
    /* background-color: red; */
    justify-content: space-evenly;
}
.pages a{
    font-size: 1.2vw;
    color: var(--back);
    text-decoration: none;
    cursor: pointer;
    position: relative;
}
.pages a::before {
    content: "";
    position: absolute;
    width: 10px;
    top: 250%;
    left: 50%;
    transform: translate(-50%, -50%);
    height: 10px;
    border-radius: 50%;
    background-color: var(--back);
    opacity: 0;
    transition: all ease 0.2s;
}
.pages a:hover::before {
    opacity: 1;
}
.pages p{
    cursor: pointer;
    font-size: 1.2vw;
    color: var(--back);
    text-decoration: none;
    position: relative;
}
.pages p::before {
    content: "";
    position: absolute;
    width: 10px;
    top: 250%;
    left: 50%;
    transform: translate(-50%, -50%);
    height: 10px;
    border-radius: 50%;
    background-color: var(--back);
    opacity: 0;
    transition: all ease 0.2s;
}
.pages p:hover::before {
    opacity: 1;
}
.hero{
    width: 100vw;
    height : 100vh;
    position: relative;
    overflow: hidden;
    background-color: #999d9e;
    display: flex;
    align-items: center;
    justify-content: center;
}
.hero img{
    margin-top: 12vw;
    margin-left: -5vw;
    height: 170%;
}
.sideglobe{
    background-color: var(--color);
    border-radius: 5vw;
    position: absolute;
    width: 25vw;
    left: -17%;
    height: 6vw;
    display: flex;
    align-items: center;
    justify-content: center;
    padding-left: 16vw;
    cursor: pointer;
}
.sideglobe p{
    text-align: left;
    color: var(--back);
    font-size: 1.5vw;
    /* background-color: red; */
    z-index: 9;
}
.freelance{
    width: 25vw;
    height: 20vw;
    position: absolute;
    top: 35%;
    right: 5%;
}
.freelance i{
    color: var(--back);
    opacity: 0.7;
    font-weight: 300;
    font-size: 1.5vw;
}
.freelance h2{
    line-height: 3.5vw;
    letter-spacing: .1vw;
    margin-top: 2vw;
    color: var(--back);
    font-size: 2.4vw;
    font-weight: 400;
    text-transform: capitalize;
}
/*---------------------------marque----------------------------------*/
.marque{
    white-space: nowrap;
    overflow-x: auto;
    width: 100%;
    overflow-y: hidden;
    height: 17vw;
    position: absolute;
    top: 65%;
    /* background-color: red; */
}
.mar{
    animation: 16s scroll linear infinite ;
}
.marque h1{
    display: inline-block;
    font-size: 13vw;
    font-weight: 500;
    color: var(--back);
    margin-left: 3.8vw;
    margin-right: 3.8vw;
    word-spacing: .7vw;
    cursor: pointer;
}
.marque::-webkit-scrollbar{
    display: none;
}
@keyframes scroll {
    from{
        transform: translatex(0);
    }
    to{
        transform: translatex(-100%);
    }
}
/* -------------------------------------------------------------------------------------------------------------- */
.about{
    width: 100vw;
    display: flex;
    align-items: center;
    background-color: var(--back);
    justify-content: space-evenly;
    height: 42vh;
    margin-top: 3vw;
}
.about-h{
    width: 40%;
    height: 50%;
    display: flex;
    align-items: center;
    justify-content: space-evenly;
    padding-right: 1vw;
}
.about-h p{
    color:#1c1d201f ;
    font-size: 2.2vw;
    word-spacing: .2vw;
    font-weight: 500;
}
.side-about{
    width: 50%;
    height: 50%;
    /* background-color: red; */
    padding-right: 6vw;
    padding-left: 6vw;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    justify-content: space-evenly;
}
.side-about p{
    padding-right: 12vw;
    width: 76%;
    text-align: left;
    color:#1c1d201f ;
    font-size: 1.2vw;
}
.side-about button{
    border-radius: 50%;
    width: 9vw;
    height: 9vw;
    background-color: var(--color);
    color: var(--back);
    font-size: 1.2vw;
    font-weight: 300;
    border: none;
    word-spacing: .3vw;
    z-index: 99;
    position: relative;
    transition: all ease 0.4s;
    overflow: hidden;
    scale: 01;
    cursor: pointer;
}
.side-about button>span{
    width: 10vw;
    height: 10vw;
    position: absolute;
    top: 180%;
    left: 50%;
    transform: translate(-50%, -50%);
    background-color: #455CE9;
    transition: all ease 0.5s;
    z-index: -1;
}
.side-about button:hover{
    margin-top: -2vw;
}
.side-about button:hover span{
    top: 50%;
}

/* -------------------------------------------------------------------------------------------------------------- */
.portfolio{
    margin-top: 5vw;
    width: 100vw;
    height: 5vh;
    background-color: var(--back);
    display: flex;
    align-items: center;
    padding-left: 16vw;
    justify-content: start;
}
.portfolio h2{
    font-size: 1vw;
    font-weight: 100;
    opacity: 0.5;
    color: var(--color);
}
.work{
    background-color: var(--back);
    transition: all ease 0.5s;
    width: 100vw;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
}
.work a{
    width: 75%;
    text-decoration: none;

}
.box:first-child{
    border-top: 1px solid #1c1d2086;
}
.box{
    width: 100%;
    height: 12vw;
    color: var(--color);
    border-bottom: 1px solid #1c1d2086;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-left: 4vw;
    padding-right: 3vw;
    position: relative;
}
.box h1{
    font-size: 4vw;
    word-spacing: 0.5vw;
    text-transform: uppercase;
    font-weight: 500;
    transition: all ease 0.3s;
}
.box h5{
    font-weight: 100;
    text-transform: uppercase;
    font-size: .8vw;
    transition: all ease 0.3s;
    opacity: .8;
}
.box img{
    opacity: 0;
    pointer-events: none;
    height: 210%;
    z-index: 998;
    left: 50%;
    top: 50%;
    position: absolute;
    transform: translate(-50%, -50%);
}
.box:hover h1{
    opacity: 0.4;
}
.box:hover h5{
    opacity: 0.2;
}
/* ------------------------------------------------------------------------------------------------------------------------------------ */
.contact{
    background-color: var(--color);
    width: 100vw;
    height: 90vh;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
}
.contact-main{
    height: 55%;
    width: 80%;
    display: flex;
    justify-content: center;
    align-items: flex-start;
    flex-wrap: wrap;
}
.contact-main h1{
    width: 95%;
    text-align: left;
    font-size: 7vw;
    font-weight: 400;
    color: var(--back);
    padding-bottom: 3vw;
    border-bottom: 1px solid #fffffe51;
}
.contact-main button{
    background-color: #455CE9;
    height: 10vw;
    width: 10vw;
    border-radius: 50%;
    color: var(--back);
    font-size: 1.1vw;
    font-family: font;
    border: none;
    position: absolute;
    left: 80%;
    top: 52%;
    overflow: hidden;
    letter-spacing: 0.05vw;
    text-transform: capitalize;
    transform: translate(-50%,-50%);
}
.contact-main button>span{
    width: 10vw;
    height: 10vw;
    position: absolute;
    top: 160%;
    left: 50%;
    transform: translate(-50%, -50%);
    background-color: #5f74ff;
    transition: all ease 0.5s;
    z-index: -1;
}
.contact-main button:hover span{
    top: 50%;
}
.contact-main i{
    color: var(--back);
    font-size: 2vw;
    font-weight: 200;
    position: absolute;
    top: 20%;
    right: 10%;
}
.footer{
    position: absolute;
    bottom: 13%;
    right: 3%;
    width: 90%;
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.footer p{
    text-decoration: none;
    color: var(--back);
    opacity: .6;
    font-size: 1vw;
}
.socials{
    width: 25vw;
    display: flex;
    justify-content: space-evenly;
}
.socials a{
    text-decoration: none;
    color: var(--back);
    opacity: .6;
    font-size: 1vw;
}
.socials a:hover{
    opacity: 1;
}
.info{
    /* background-color: red; */
    width: 80%;
    padding-left: 3vw;
    margin-top: -35%;
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.info button{
    width: 15vw;
    height: 4vw;
    border-radius: 2vw;
    border: 1px solid var(--back);
    background-color: transparent;
    font-size: 1vw;
    color: white;
    overflow: hidden;
    position: relative;
}
.info button>span{
    display: inline-block;
    width: 110%;
    position: absolute;
    height: 240%;
    left: -4%;
    top: 150%;
    z-index: -1;
    transition:  all ease 0.5s;
    background-color: #455CE9;
    transform: rotate(15deg);
}
.info button:hover span{
    transform: rotate(0deg);
    top: -50%;
}
.about-page{
    width: 100vw;
    height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: var(--color);
    color: var(--back);
    font-size: 2vw;
    font-weight: 300;
    letter-spacing: .1vw;
}
.contact-form{
    width: 40vw;
    height: 93vh;
    background-color: var(--color);
    position: fixed;
    z-index: 99;
    top: 50%;
    left: 50%;
    border-radius: 2vw;
    transform: translate(-50%,-50%);
    visibility: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0;
    flex-wrap: wrap;
}
.contact-form h1{
    width: 100%;
    text-align: center;
    color: var(--back);
    font-weight: 300;
    font-size: 4vw;
    margin-top: 2vw;
    cursor: pointer;
}
form{
    width: 90%;
    height: 80%;
    /* background-color: rebeccapurple; */
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
}
form>input{
    width: 90%;
    height: 9%;
    border-radius: 1vw;
    border: none;
    padding-left: 1vw;
    font-size: 1vw;
}
form>textarea{
    width: 90%;
    height: 45%;
    border-radius: 1vw;
    border: none;
    font-size: 1vw;
    padding-left: 1vw;
    padding-top: 1vw;  resize: none;

}
form>button{
    width: 9vw;
    height: 3vw;
    border: none;
    border-radius: 2vw;
    font-size: .9vw;
    color: var(--back);
    background-color:#455CE9;
    transition: all ease 0.3s;
    resize: none;
}
form>button:hover{
    background-color: #5f74ff;
}
.contact-form i{
    position: absolute;
    z-index: 99;
    color: var(--back);
    font-size: 3vw;
    top: 2%;
    right: 2%;
    cursor: pointer;
}
.loader{
    width: 100vw;
    height: 100vh;
    background-color: var(--color);
    position: fixed;
    z-index: 999;
    display: inline-block;
    top: 0%;
    display: flex;
    align-items: center;
    justify-content: center;
}
.loader h1{
    margin-top: -2vw;
    font-size: 5vw;
    color: var(--back);
}