*{
    margin:0;
    padding:0;
    box-sizing:border-box;
    font-family:'Poppins',sans-serif;
}

html{
    scroll-behavior:smooth;
}

body{
    background:linear-gradient(135deg,#0f172a,#1e3a8a,#06b6d4);
    color:white;
}

/* NAVBAR */

nav{
    position:fixed;
    top:0;
    width:100%;
    height:90px;

    display:flex;
    justify-content:space-between;
    align-items:center;

    padding:0 80px;

    background:rgba(255,255,255,.08);
    backdrop-filter:blur(15px);

    border-bottom:1px solid rgba(255,255,255,.15);

    z-index:100;
}

.title{
    font-size:40px;
}

.botoes{
    display:flex;
    gap:20px;
}

.botoes button{
    background:none;
    border:none;
    color:white;
    font-size:20px;
    cursor:pointer;
    transition:.3s;
}

.botoes button:hover{
    color:#38bdf8;
    transform:translateY(-3px);
}

/* HERO */

header{
    min-height:100vh;

    display:flex;
    flex-direction:column;
    justify-content:center;
    align-items:center;

    text-align:center;
}

header h1{
    font-size:90px;
}

header h3{
    font-size:35px;
    font-weight:300;
}

header button{

    margin-top:40px;

    padding:20px 45px;

    border:none;
    border-radius:50px;

    background:#38bdf8;
    color:white;

    font-size:22px;

    cursor:pointer;

    transition:.4s;

    box-shadow:0 0 30px rgba(56,189,248,.4);
}

header button:hover{

    transform:scale(1.08);

    box-shadow:0 0 50px rgba(56,189,248,.8);

}

/* SECTIONS */

.about,
.contact{

    padding:120px 10%;
    text-align:center;

}

.title2{

    font-size:70px;
    margin-bottom:50px;

}

/* ABOUT CARD */

.sobre{

    max-width:900px;

    margin:auto;

    padding:40px;

    background:rgba(255,255,255,.08);

    backdrop-filter:blur(20px);

    border-radius:25px;

    border:1px solid rgba(255,255,255,.15);

    line-height:2;

    transition:.4s;

}

.sobre:hover{

    transform:translateY(-10px);

    box-shadow:0 20px 40px rgba(0,0,0,.35);

}

/* PROJECT BUTTON */

.contact button{

    margin-top:30px;

    padding:18px 40px;

    border:none;

    border-radius:50px;

    background:#38bdf8;

    color:white;

    font-size:22px;

    cursor:pointer;

    transition:.4s;

}

.contact button:hover{

    transform:scale(1.08);

    background:white;

    color:#0f172a;

}

/* FOOTER */

footer{

    background:rgba(0,0,0,.3);

    backdrop-filter:blur(10px);

    text-align:center;

    padding:25px;

}

/* ANIMAÇÃO */

header h1,
header h3,
header button,
.sobre{

    animation:fadeUp 1s ease forwards;

}

@keyframes fadeUp{

    from{

        opacity:0;
        transform:translateY(40px);

    }

    to{

        opacity:1;
        transform:translateY(0);

    }

}

/* RESPONSIVO */

@media(max-width:900px){

    nav{

        flex-direction:column;
        height:auto;
        padding:20px;

    }

    .title{
        font-size:30px;
    }

    header h1{
        font-size:55px;
    }

    header h3{
        font-size:24px;
    }

    .title2{
        font-size:45px;
    }

}