/* Main config */
* {
    font-family: 'Courier New', Courier, monospace;
    box-sizing: border-box;
    margin: 0;
    padding: 0;
}

body {
    background-color: #000000;
    height: 100vh;
}

.interface {
    max-width: 1280px;
    margin: 0 auto;
}

.font-null {
    font-size: 0;
}

.main-content {
    display: flex;
}

h2.h2-title {
    color: #ffffff;
    padding: 40px 0;
    font-size: 32px;
    text-align: center;
    text-shadow: 0px 0px 5px #ffffff88;
}

h2.h2-title span {
    color: #3a02b4;
    text-shadow: 0px 0px 5px #290080;
}

button:hover {
    transform: scale(1.05);
    transition: 0.3s;
    box-shadow: 0px 0px 8px #6219ff;
}

/* ////////////////////////////////////////////////////// */


/* Header style */

header {
    padding: 0px 4%;
}


header > .interface{
    display: flex;
    justify-content: center;
    align-items: center;
    justify-content: space-between;
}

header nav.desktop a{
    display: inline-block;
    transition: 0.2s;
    color: #ffffff7a;
    text-decoration: none;
}


header nav.desktop a:hover{
    color: #ffffff;
    transform: scale(1.05);
    text-shadow: 0px 0px 5px #ffffff88;
}

header nav.desktop ul{
    display: inline-block;
    list-style-type: none;
    font-size: 20px;
}

header nav.desktop ul li{
    display: inline-block;
    list-style-type: none;
    padding: 0 40px;
}


header nav.desktop ul li a button:hover {
    transform: scale(1.05);
    transition: 0.3s;
    box-shadow: 0px 0px 8px #6219ff;
}

/* navbar fixed */

header nav.desktop.fixed {
    display: flex;
    align-items: center;
    justify-content: center;
    transition: 0.4s;
    position: fixed;
    top: 0;
    width: 100%;
    padding: 30px;
    z-index: 1000;
    background-color: #000000a0;
}

header nav.desktop.fixed a{
    color: #ffffff;
}

/* End Header Style */
/* ////////////////////////////////////////////////////// */

/* mobile menu style */
.menu-mobile {
    background-color: #09001c92;
    height: 100vh;
    position: fixed;
    overflow: hidden;
    top: 0;
    right: 0;
    z-index: 99999;
    width: 0%;
    transition: 0.5s;
}

.button-open i{
    display: none;
    color: #3a02b4;
    font-size: 50px;
    transition: 0.5s;
}
.button-open i:hover{
    transform: rotate(90deg);
    transition: 0.5s;
    text-shadow: 0px 0px 8px #5100ff;
}


.menu-mobile.open-menu_bar{
    width: 70%;
}

.menu-mobile.open-menu_bar ~ .overlay-menu{
    display: block;
}

.menu-mobile nav ul{
    text-align: right;
}

.menu-mobile nav ul li a{
    color: #ffffff;
    font-size: 20px;
    padding: 20px 8%;
    transition: 0.3s;
    display: block;
    text-decoration: none;
}

.menu-mobile nav ul li a:hover{
    background-color: #3a00ad;
    transform: scale(1.05);
    transition: 0.3s;
    text-shadow: 0px 0px 5px #ffffff88;
}
.menu-mobile .button-close{
    padding: 20px 4%;
}

.menu-mobile .button-close i {
    color: #5100ff;
    font-size: 60px;
    cursor: pointer;
}

.menu-mobile .button-close i:hover{
    transition: 0.2s;
    text-shadow: 0px 0px 20px #742eff;
    color: #6928eb;
}

.overlay-menu{
    background-color: #000000b8;
    width: 100%;
    height: 100%;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 88888;
    display: none;
}

/* end mobile menu style */

/* ////////////////////////////////////////////////////// */

/* Top Style */

section.top{
    padding: 30px 4%;
}

section.top .main-content{
    align-items: center;
    justify-content: center;
    gap: 90px;
}

.top h1{
    color: #ffffff;
    font-size: 34px;
    text-shadow: 0px 0px 5px #ffffff88;
}

.top .text-top h1 span{
    color: #280080;
    text-shadow: 0px 0px 5px #290080;
}

.top .text-top p {
    color: #ffffff;
    margin: 40px 0px;
}

.top .img-top img{
    position: relative;
    box-shadow: 0 0 30px #2900808f;
}

.main-content .contact-button button {
    padding: 10px 40px;
    font-size: 18px;
    font-weight: 600;
    background-color: #280080;
    color: #ffffff;
    border: 0;
    border-radius: 20px;
    cursor: pointer;
    transition: 0.3s;
}

.main-content .contact-button button a{
    text-decoration: none;
    color: #ffffff;
}

.main-content .contact-button button:hover {
    transform: scale(1.05);
    transition: 0.3s;
    box-shadow: 0px 0px 8px #6219ff;
    background-color: #000000;
}

.main-content .contact-button button:active {
    background-color: #280080;
}

/* End Top Style */

/* ////////////////////////////////////////////////////// */

/* midia */

section.midia{
    padding: 80px 4%;  
    cursor: default; 
}

section.midia .main-content{
    gap: 60px;
    justify-content: space-around;
}

section.midia .interface .main-content .midia-box h3 a{
    text-decoration: none;
    color: #ffffff;
}

section.midia .interface .main-content .midia-box h3 a:hover{
    text-shadow: 0px 0px 5px #ffffff88;
}

section.midia .interface .main-content .midia-box{
    color: #ffffff;
    padding: 40px;
    border-radius: 50px;
    border: 2px solid #ffffff1c;
    margin-top: 45px;
    transition: 0.5s;
}

section.midia .interface .main-content .midia-box:hover {
    box-shadow: 0 0 8px #ffffff94;
    transition: 0.5s;
}

section.midia .interface .main-content .midia-box i{
    font-size: 40px;
    color: #280080;
}

section.midia .interface .main-content .midia-box h3 {
    font-size: 28px;
    margin: 15px 0;
}

section.midia .interface .main-content:hover > :not(:hover){
    opacity: 0.2;
}

/* end projects */

/* ////////////////////////////////////////////////////// */

/* about */

section.about{
    padding: 80px 4%;
    cursor: default; 
}

.about .text-about{
    color: #ffffff;
}

section.about .main-content{
    align-items: center;
    gap: 60px;
}

.about .text-about h2{
    font-size: 35px;
    line-height: 40px;
    margin-bottom: 30px;
    text-shadow: 0px 0px 5px #ffffff88;
}

.about .text-about h2 span{
    color: #280080;
    display: block;
    text-shadow: 0px 0px 5px #290080;
}

.about .text-about p{
    margin: 20px 0;
    text-align: justify;
}

.button-social button{
    width: 60px;
    height: 60px;
    border-radius: 50%;
    border: none;
    background-color: #280080;
    font-size: 22px;
    cursor: pointer;
    transition: 0.3s;
    margin: 0 10px;
}

.button-social button:hover{
    background-color: #000000;
    transition: 0.3s;
    color: #ffffff;
}

.button-social button:active{
    background-color: #280080;
}



/* end about */

/* ////////////////////////////////////////////////////// */

/* portifolio */

section.portifolio{
    cursor: default; 
    padding: 80px 4%;
    box-shadow: 0px 0px 40px 10px #29008045;
}

section.portifolio .main-content{
    justify-content: space-around;
    margin-top: 60px;
}

.img-port{
    width: 360px;
    height: 460px;
    background-size: cover;
    background-position: 100% 0%;
    cursor: pointer;
    border-radius: 40px;
    position: relative;
}

.img-port:hover{
    background-position: 100% 100%;
    transition: 5s;
}

.overlay{
    display: flex;
    align-items: center;
    justify-content: center;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #000000dc;
    box-shadow: 0 0 30px #290080a0;
    border-radius: 40px;
    color: #ffffff;
    opacity: 0;
    transition: 0.2s;
}
.overlay:hover{
    opacity: 1;
}

/* end portifolio */

/* ////////////////////////////////////////////////////// */

/* footer */

footer{
    padding: 60px 4%;
}

footer .main-content{
    justify-content: space-between;
}

footer .line-footer{
    padding: 20px 0;
}

footer .border{
    border-top: 2px solid #280080;
}

footer .line-footer p i{
    color: #280080;
    font-size: 22px;
}

footer .line-footer p a{
    text-decoration: none;
    color: #ffffff;
}

footer .line-footer p{
    transition: 0.4s;
}

footer .line-footer p:hover{
    transform: scale(1.01);
    transition: 0.3s;
}

/* end footer */

/* //////////////////////////////////////////////////////////////////// */

/* media header */
@media screen and (max-width: 1279px){

    .button-open i{
        display: flex;
        position: fixed;
        right: 6%;
        z-index: 9;
    }

    /* general classes */

    h2.h2-title {
        font-size: 30px;
        line-height: 30px;
    }

    /* header */
    header nav.desktop ul li{
        display: none;
    }

    header nav.desktop.fixed {
        display: none;
    }

    /* top */
    section.top .main-content{
        gap: 40px;
    }

    section.top {
        padding: 80px 8%;
    }

    .text-top h1{
        font-size: 30px;
    }

    .top .img-top img{
        width: 100%;
        margin-top: 30px;
    }
    
    
    /* mídia social - projects*/
    section.projects{
        padding: 40px 8%;   
    }


    /* media about */

    .about .text-about{
        padding: 20px 8%;
    }

    .about .text-about h2{
        font-size: 30px;
        line-height: 40px;
        text-align: center;
    }

    .button-social {
        text-align: center;
    }

    .img-about img {
        width: 100%;
        padding: 20px 8%;
    }

    section.about .main-content{
        flex-direction: column-reverse;
    }

    /* portifolio  */

    .section.portifolio{
        padding: 80px 8%;
    }

    .img-port{
        width: 100%;
        max-width: 360px;
        margin: 0 auto;
    }
    
    section.portifolio .main-content{
        gap: 60px;
    }

    /* footer */
    footer .main-content{
        flex-direction: column;
        gap: 30px;
    }

    footer .line-footer{
        text-align: center;
    }
}

/* @media screen and (max-width: 1120px){
    section.portifolio .main-content{
        gap: 60px;
    }
} DELETE*/

@media screen and (max-width: 1100px){
    .main-content{
        flex-direction: column;
    }
}


@media screen and (max-width: 360px){
    .button-open i{
        font-size: 40px;
    }

    /* header */

    header > .interface{
        padding-bottom: 50px;
    }

    /* top */
    section.top {
        padding: 0px 50px 4%;
    }

    /* mídia social - projects*/
    section.midia  .interface .main-content{
        margin: 0 30px 4%;
    }

    /* portifolio */

    section.portifolio .main-content{
        margin: 0 40px 4%;
    }

    section.portifolio .interface h2 {
        font-size: 25px;
        padding-bottom: 60px;
    }

    /* about */
    .about .text-about{
        padding: 0 40px 4%;
    }

    .img-about img {
        width: 100%;
        padding: 0 40px 4%;
    }

}


