@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@100;200;300;400;500;700;900&display=swap');
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    font-family: 'Montserrat', sans-serif;
}

body {
    width: 100%;
    height: 100vh;
    background: url(image/CREATIVE.png);
    background-size: cover;
}

header {
    width: 100%;
    height: 80px;
    background: rgba(0,0,0,0.5);
    display: flex;
    align-items: center;
    justify-content: space-around;
    position: fixed;
    z-index: 99;
}

header .logo {
    width: 50%;
}

header .logo img {
    width: 222px;
}

header .menu ul{
    display: flex;
}

header .menu ul li{
    padding: 0 20px;
    list-style: none;
}

header .menu ul li a{
    text-decoration: none;
    text-transform: uppercase;
    color: #fff;
    transition: 0.5s ease;
}

header .menu ul li a:hover{
    color: #156fc3;
}

header .menu-mobile{
    display: none;
}
header .btn-mobile{
    display: none;
}


/* PÁGINA PRINCIPAL */

#home .container {
    width: 100%;
    height: 100vh;
    background: url(image/fundo1.png);
    background-size: cover;
}

#home .container .icons{
    width: 10%;
    height: 80vh;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 0 60px;
    position: fixed;
    z-index: 999;
}

#home .container .icons ion-icon {
    padding: 30px 0;
    font-size: 2rem;
    color: #fff;
    transition: 0.5s ease;
}

#home .container .icons ion-icon:hover {
    color: #156fc3;
}

#home .container .title {
    width: 100%;
    height: 80vh;
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    justify-content: center;
    padding: 0 60px;
}

#home .container .title h1 {
    color: #fff;
    text-transform: uppercase;
    font-size: 8rem;
    letter-spacing: 5px;
}

#home .container .title h2 {
    color: #fff;
    text-transform: uppercase;
    font-size: 3rem;
    letter-spacing: 40px;
    margin-left: 30px;
}

#home .container .title h3 {
    color: #fff;
    text-transform: uppercase;
    font-size: 1.2rem;
    letter-spacing: 20px;
    margin-top: 30px;
    margin-left: 30px;
}

/* SOBRE */

#sobre .container {
    width: 100%;
    height: 100vh;
    background: url(image/fundo2.png);
    background-size: cover;
    display: flex;
    justify-content: space-between;
}

#sobre .container .title {
    width: 90%;
    height: 100vh;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
    padding: 0 60px;
}

#sobre .container .title h1 {
    color: #fff;
    text-transform: uppercase;
    font-size: 2rem;
    text-align: left;
}

#sobre .container .title p {
    color: #fff;
    width: 500px;
    margin-top: 30px;
}
#sobre .container .box-title {
    width: 420px;
    height: 37vh;
    margin-top: 20px;
    padding: 0 10px;
    box-shadow: 0 0 10px 0 rgba(21,111,195,0.5);
    border-radius: 20px;
}

#sobre .container .box-title span {
    color: #fff;
}

#sobre .container .box-title .b1 {
    width: 400px;
    height: 8px;
    background: #fff;
    margin-top: 2px;
    border-radius: 5px;
}

#sobre .container .box-title .b2 {
    width: 350px;
    height: 8px;
    background: #156fc3;
    border-radius: 5px;
}

#sobre .container .box-title .b3 {
    width: 369px;
    height: 8px;
    background: #156fc3;
    border-radius: 5px;
}

#sobre .container .box-title .b4 {
    width: 369px;
    height: 8px;
    background: #156fc3;
    border-radius: 5px;
}

#sobre .container .box-title .b5 {
    width: 361px;
    height: 8px;
    background: #156fc3;
    border-radius: 5px;
}

/* PORTIFÓLIO */

#port .container{
    width: 100%;
    height: 100vh;
    background: url(image/CREATIVE_3.png);
    background-size: cover;
    display: flex;
    justify-content: center;
    flex-direction: column;
    align-items: center;
}
#port .container input[type=radio]{
    display: none;
}
#port .container .card{
    position: absolute;
    width: 40%;
    height: 80%;
    left: 0;
    right: 0;
    margin: 150px auto;
    display: flex;
    align-items: flex-start;
    justify-content: center;
    box-shadow: 0 0 10px 0 rgba(21,111,195,0.5);
    transition: 0.4s ease;
    cursor: pointer;
}
#port .container .card img{
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 10px;
}
#port .container .card h1{
    position: absolute;
    z-index: 9;
    color: #fff;
    font-size: 6rem;
    margin-top: 60px;
}
#port .container .card p{
    position: absolute;
    z-index: 9;
    width: 400px;
    color: #fff;
    margin-top: 200px;
    text-align: justify;
}
#port .container .card a{
    text-decoration: none;
    position: absolute;
    z-index: 9;
    margin-top: 400px;
    padding: 10px 20px;
    border-radius: 20px;
    border: none;
    color: #fff;
    background: rgba(21,111,195,0.5);
    text-transform: uppercase;
    cursor: pointer;
}


#port .container .cards{
    position: relative;
    width: 100%;
    height: 100%;
}
#item-1:checked ~ .cards #song-3,
#item-2:checked ~ .cards #song-1,
#item-3:checked ~ .cards #song-2{
    transform: translateX(-40%) scale(0.8);
    opacity: 0.4;
    z-index: 0;
}
#item-1:checked ~ .cards #song-2,
#item-2:checked ~ .cards #song-3,
#item-3:checked ~ .cards #song-1{
    transform: translateX(40%) scale(0.8);
    opacity: 0.4;
    z-index: 0;
}
#item-1:checked ~ .cards #song-1,
#item-2:checked ~ .cards #song-2,
#item-3:checked ~ .cards #song-3{
    transform: translateX(0) scale(1);
    opacity: 1;
    z-index: 1;
}

/* CONTATO */

#contact .container{
    width: 100%;
    height: 100vh;
    background: url(image/CREATIVE_3.png);
    background-size: cover;
    transition: background 0.4s ease-in;
}
#contact .container .content-contact{
    width: 80%;
    height: 60vh;
    margin: 0 auto;
    padding: 200px 0;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
}
#contact .content-contact .contact-left{
    width: 50%;
    display: flex;
    flex-direction: column;
    color: #fff;
}
#contact .content-contact .contact-left h1{
    font-size: 2rem;
    text-transform: uppercase;
}
#contact .content-contact .linha1{
    width: 250px;
    height: 3px;
    background: #fff;
    margin-top: 10px;
    margin-bottom: 10px;
}
#contact .content-contact .linha2{
    width: 450px;
    height: 3px;
    background: #fff;
    margin-top: 10px;
    margin-bottom: 10px;
}
#contact .content-contact .contact-left ion-icon{
    font-size: 2rem;
    padding: 20px 0;
}
#contact .content-contact .contact-left span{
    font-size: 1.2rem;
    padding: 5px 0;
}
#contact .content-contact .contact-right{
    align-items: center;
    text-align: center;
    width: 50%;
    display: flex;
    flex-direction: column;
    color: #fff;
}
#contact .content-contact .contact-right h1{
    font-size: 2rem;
    text-transform: uppercase;
}
#contact .content-contact .contact-right input[type=email],
#contact .content-contact .contact-right input[type=text]{
    width: 100%;
    height: 60px;
    border-radius: 20px;
    border: none;
    padding: 15px 20px;
    margin-bottom: 20px;
    font-size: 1.2rem;
    font-weight: 600;
    outline: none;
}
#contact .content-contact .contact-right textarea{
    width: 100%;
    height: 120px;
    border-radius: 20px;
    border: none;
    margin-bottom: 20px;
    font-size: 1.2rem;
    font-weight: 600;
    outline: none;
    padding: 15px 20px;
}
#contact .content-contact .contact-right button {

    z-index: 9;
    margin: 0 auto;
    padding: 10px 20px;
    border-radius: 20px;
    border: none;
    color: #fff;
    background: rgba(21,111,195,0.5);
    text-transform: uppercase;
    cursor: pointer;
}

/* FOOTER */

footer{
    width: 100%;
    height: 80px;
    color: #fff;
    line-height: 80px;
    text-align: center;
    background: rgba(0,0,0,0.5);
    position: relative;
    top: -80px;
}
footer a{
    color: #2e8b57;
}

/*RESPONSIVIDADE*/

@media screen and (max-width: 1280px){
    #home .container .icons ion-icon{
        font-size: 1.5rem;
    }
    #port .container .card h1{
        font-size: 5rem;
    }
    #port .container .card p{
        width: 280px;
        font-size: 0.8rem;
    }
}
@media screen and (max-width: 960px){
    body{
        background: url(image/CREATIVE_3.png);
    }
    header{
        background: none;
    }
    header .logo{
        width: 600px;
    }
    header .menu{
        display: none;
    }
    header .btn-mobile{
        display: block;
    }
    header .btn-mobile ion-icon {
        color: #fff;
        font-size: 1.5rem;
    }
    header .menu-mobile{
        display: none;
        width: 50%;
        height: 20vh;
        box-shadow: 0 0 15px 0 rgba(21,111,195,0.5);
        position: fixed;
        top: 20px;
        border-radius: 10px;
        background: #156fc3;
    }
    header .menu-mobile ul{
        text-align: center;
    }
    header .menu-mobile ul li{
        list-style: none;
        padding: 12px 0;
    }
    header .menu-mobile ul li a{
        text-decoration: none;
        text-transform: uppercase;
        color: #fff;
    }
    #home .container .icons{
        padding: 0 20px;
    }
    #home .container .title{
        align-items: center;
    }
    #home .container .title h1{
        font-size: 5rem;
    }
    #home .container .title h2{
        font-size: 1.2rem;
    }
    #home .container .title h3{
        font-size: 0.9rem;
    }
    #about .container .title{
        align-items: center;
    }
    #about .container .box-title{
        width: 100%;
        height: 40vh;
    }
    #about .container .box-title .b1{
        width: 100%;
    }
    #about .container .box-title .b2{
        width: 90%;
    }
    #about .container .box-title .b3{
        width: 80%;
    }
    #about .container .box-title .b4{
        width: 87%;
    }
    #about .container .box-title .b5{
        width: 76%;
    }
    #contact .container .content-contact{
        width: 100%;
        height: 100vh;
        align-items: center;
        justify-content: center;
        flex-direction: column;
    }
    #contact .content-contact .contact-left h1{
        font-size: 1.5rem;
    }
    #contact .content-contact .contact-left ion-icon{
        font-size: 1.5rem;
        padding: 5px 0;
    }
    #contact .content-contact .contact-left span{
        font-size: 1rem;
        padding: 5px 0;
    }
    #contact .content-contact .contact-right h1{
        font-size: 1.5rem;
        margin-top: 80px;
    }
    #contact .content-contact .contact-right input[type=email],
    #contact .content-contact .contact-right input[type=text]{
        padding: 10px 15px;
        font-size: 1rem;
    }
    #contact .content-contact .contact-right textarea{
        padding: 10px 15px;
        font-size: 1rem;
    }
}
@media screen and (max-width: 750px){
    header{
        padding: 10px;
    }
    #home .container .title h2{
        letter-spacing: 30px;
    }
    #home .container .title h3{
        letter-spacing: 10px;
    }
    #about .container .title{
        padding: 10px 60px;
    }
    #about .container .title p{
        width: 100%;
        margin-top: 30px;
    }
    #port .container .card{
        width: 60%;
        height: 60%;
    }
}