* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    text-decoration: none;
}

:root {
    --body-primary:#ffffffdb; 
   
    font-size: 62.5%;

    --font-primary:'Inter Tight', sans-serif;
    --font-secudary:'Montserrat', sans-serif;
}

body {
    width: 100%;
    background: var(--body-primary);
    height: 100vh;
}

header{
    width: 100%;
    background-image: url(../imagens/imagempordosol.jpg);
    background-repeat: no-repeat;
    background-size: cover;
    
    margin-bottom: 1.4rem;
    height: 76rem;
}

.contato::before {
    content:" ";
    background-color: #202020;
    z-index: 1000;
    display: flex;
    justify-content: flex-end;
    color: #ffffff;
    font-family: var(--font-primary);
    gap:2rem;
    align-items: center;
    position: absolute;
    

}

.contato {
    background-color: #202020;
    z-index: 1000;
    height: 2.5rem;
    font-family: var(--font-primary);
}

.contato a {
    color:#202020;
    transition: all 600ms;
}

.container {
    display: none;
}

.menu {
    background-color: #ffffff;
    box-shadow: 10px 10px 15px rgb(0, 0, 0, 0.7);
    border-radius: 0 0 20rem;
    z-index: 10;
    top: 0;
    align-items: center;
    
    position: fixed;
    display: flex;
    gap:20rem;
    animation: leftrigth backwards;
    animation-delay: 400ms;
    animation-duration: 1s;
}

@keyframes leftrigth {
    0%{
        opacity: 0;
        transform: translateX(-20px);
    }

    100% {
        opacity: 1;
        transform: translateX(0);
    }
}


.menu img {
    width: 17.7rem;
    margin-left: 5rem;
    transition: all 800ms;
}

.menu img:hover {
    transform: scale(1.1);
}

.menu1 {
    display: flex;
    flex-direction: row;
    gap: 4rem;
    margin-right: 4rem;
    
    padding: 1rem;

    font-family: var(--font-secudary);
    font-weight: 500;
    font-size: 1.3rem;

}
.menu1 a {
    color: #424242;
    height: 3rem;
    padding: 0.8rem;
    transition: all 800ms;
}

.menu1 a:hover{
    color: #000000;
    cursor: pointer;
    border-radius: 20rem;
    transform: scale(1.1);
}

.introdução  {
    display: flex;
    flex-direction: column;
    justify-content:flex-end;
    margin-top: 62rem;
    position: fixed;
    z-index: 1000;
    right: 0;
    margin-right: 0.5rem;
}

.introdução img {
    display: flex;
    justify-content: flex-end;
    margin-bottom: 1rem;
    width: 4rem;
    transition: all 600ms;
    animation: downtop backwards;
    animation-delay: 800ms;
    animation-duration: 1s;
}

.introdução img:hover {
    transform: scale(1.2);
}

@keyframes downtop {
    0%{
        opacity: 0;
        transform: translateY(20px);
    }

    100% {
        opacity: 1;
        transform: translateY(0);
    }
}

.quemsomos {
    margin-top: 19rem;
}

.quemsomos h2 {
    margin-top: 10rem;
    font-family: var(--font-secudary);
    font-weight: 500;
    font-size: 8rem;
    margin-left: 6rem;
    color: rgb(0, 0, 0);
}

.quemsomos1 {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 15rem;
    }

.quemsomos1 p {
    font-family: var(--font-primary);
    font-weight: 400;
    font-size: 3rem;
    margin-top: 1rem;
    margin-left: 4rem;
}

.quemsomos1 img {

    box-shadow: 10px 10px 15px rgb(0, 0, 0, 0.7);
    width: 50%;
    height: 41.6rem;
    object-fit: cover;
    opacity: 0.85;
    border-radius: 10rem;
    margin-right: 4rem;
    filter: brightness(0.5);
    transition: all 800ms;
}

.quemsomos1 img:hover {
    transition: all 800ms;
    opacity: 1;
    border-radius: 0;
    filter: brightness(1);
    
}

.serviços {
    background-color: #202020;
    margin-top: 24rem;
    height: 136rem;
    color: #ffffff;
}

.serviços h2 {
    font-family: var(--font-secudary);
    font-weight: 500;
    font-size: 8rem;
    margin-left: 8rem;
    color: #ffffff;
}

.serviços ul {
    font-family: var(--font-primary);
    font-weight: 400;
    font-size: 3rem;
    margin-top: 3rem;
    margin-left: 8rem;
    color: #ffffff6e;
    margin-bottom: 5rem;
}

.serviços li{
    margin-top: 1rem;
    transition: all 250ms;
}

.serviços li:hover {
   font-size: 3.1rem;
    color: #ffffff;
    overflow: hidden;
}

.imagensobras {
    margin: 0 auto;
    background: #202020;
    height: 65rem;
    width: 100rem;
    overflow: hidden;

    border-radius: 2rem;
}

.navigation {
    position: relative;
    bottom: 5rem;
    display: flex;
    align-items: center;
    justify-content: center;
}

.bar{
    width: 7rem;
    height: 1.7rem;
    border: 2px solid #ffffff;
    margin: 6px;
    border-radius: 5px;
    cursor: pointer;
    transition: 400ms;
}

.bar:hover {
    background-color: #ffffff;
}

.slides input {
    display: none;
}

.slides {
    display: flex;
    width: 800%;
    height: 100%;
    
    position: relative;
}

.slide {
    width: 12.5%;
    transition: 800ms;
}

.slide img {
    width: 100%;
    height: 100%;
}

#slide1:checked ~ .s1{
    margin-left: 0;
}

#slide2:checked ~ .s1 {
    margin-left: -12.5%;
}

#slide3:checked ~ .s1 {
    margin-left: -25%;
}

#slide4:checked ~ .s1 {
    margin-left: -37.5%;
}

#slide5:checked ~ .s1 {
    margin-left: -50%;
}

#slide6:checked ~ .s1 {
    margin-left: -62.5%;
}

#slide7:checked ~ .s1 {
    margin-left: -75%;
}

#slide8:checked ~ .s1 {
    margin-left: -87.5%;
}

.clientes h2 {
    font-family: var(--font-secudary);
    font-weight: 500;
    font-size: 8rem;
    margin-left: 8rem;
    color: rgb(0, 0, 0);
}

.clientes1 ul {
    margin-top: 5rem;
    display: flex;
    list-style: none;
    height: 25rem;
    overflow: hidden;
    width: 100%;
}

.clientes2 {
    display: flex;
    align-items: center;
}

.clientes1 li {
    animation: carrossel 10s infinite ease-out;
    position: relative;
    
}

.clientes1 img {
    width: 17.7rem;
    margin-left: 5rem;
    transition: all 800ms;
    align-items: center;
}

 @keyframes carrossel{
    0% {left:0px;}
    20% {left:0px;}

    30% {left:-600px;}
    50% {left: -600px;}

    60% {left:-1400px;}
    90% {left: -1850px;}

    100% {left: 0px;}
}

.historia {
    margin-top: 10rem;
    text-align: center;
    
}

.historia h3 {
    margin-top: -4rem;
    width: 100%;
    margin-bottom: 2rem;
    font-family: var(--font-secudary);
    font-weight: 500;
    font-size: 5rem;
    
    color:rgb(0, 0, 0) ;
}


.historia p{
    display: inline-block;
    font-family: var(--font-secudary);
    font-weight: 600;
    font-size: 4rem;
    margin-left: 4rem;
    margin-right: 4rem;
    color:#000000;
    margin-top: 3rem;
    animation: zoom 5s infinite ease-out;
    position: relative;
    
}

.historia span {
    font-size: 2.5rem;
    font-family: var(--body-primary);
    color: #000000
}

@keyframes zoom {
    0% {transform: scale(1.0)}
    

    30% {transform: scale(1.1)}
   

    60% {transform: scale(1.0)}
    

    100% {transform: scale(1.1)}
}

footer{
    margin-top: 30rem;
    background-color: #202020;
    color:#dddddd;
    text-align: center;
}

.orçamento  h2 {
    text-align: start;
    margin-top: 10rem;
    font-family: var(--font-secudary);
    font-weight: 500;
    font-size: 5rem;
    margin-left: 6rem;
}

.orçamento h3 {
    margin-top: 4rem;
    font-family: var(--font-secudary);
    font-weight: 300;
    font-size: 2.3rem;
    margin-bottom: 10rem;
    color: #000000;
}

form {
    width: 100%;
    margin-top: 10rem;
    border-radius: 8px 8px 0 0; 
    font-family: var(--font-primary);
    align-items: center;
    display: flex;
    flex-direction: column;
    gap: 2rem;
}

form .color{
    background: #fafafcf1;
    width: 47rem;
    border-radius: 4rem;
}

.input-wrapper {
    padding: 0 10rem;
    margin-bottom: 2rem;
    display: flex;
    flex-direction: column;
}

.input-wrapper input{
    width: 100%;
}

.input-wrapper label {
    width: 100%;
    font-size: 1.4rem;
    line-height: 2.4rem;
    color: #000000;
}

.input-wrapper label span {
    width: 100%;
    font-family: var(--font-secudary);
    font-size: 1.2rem;
    line-height: 2rem;
    margin-bottom: 0.8rem;
    color: #676767;
    margin-left: 0.5rem;
}

.input-wrapper label span:hover {
    color: #000000;
}

.input-wrapper input, .input-wrapper textarea,.input-wrapper select {
    background: #ededed;
    border: 1px solid #000000;
    border-radius: 8px;
    height: 3.8rem;
    padding: 0 2.4rem;
    font-size: 1.6rem;
    line-height: 2.6rem;
    color: #000000;
    margin-bottom: 2rem;
    width: 100%;
}

.input-wrapper textarea{
    width: 100%;
    resize: none;
    height: 16.8rem;
}

.input-wrapper ::placeholder{
    color: #ff0000;
    font-size: 1.25rem;
}

input:invalid {
    border: 2px solid red;
}

button {
    cursor: pointer;
    padding: 1rem;
    margin-bottom: 4rem;
    width: 14rem;
    background: #4d4d4d;
    color: #ffffff;
    border: none;
    border-radius: 4rem;
    transition: all 600ms;
    transition-delay: 0.05ms ;
}

button:hover {
    background:#33fe00;
    color: #000000;
    transform:scale(1.08);
    font-size: 1.4rem;
}

.final {
    width: 100%;
    margin-top: -5rem;
    display: flex;
    flex-direction: column;
    gap: 20rem;
}

.final h2 {
    margin-top: 20rem;
}

.localizaçao span {
    margin-top: -20rem;
    display: block;
    gap:4rem;
    padding: 1.2rem;
    font-family: var(--font-secudary);
    font-size: 2.5rem;
}

.localizaçao1 {
    margin-top: -10rem;
}

.localizaçao1 > iframe {
    width: 100%;
}

@media (max-width: 1116px) {
    
    .menu1 {
        display: none;
    }

    .contato{
        display: none;
    }

    .menu {
        position: absolute;
        background: none;
        border-radius: 0;
        box-shadow: none;
        transition: .5s ease-in-out;
    }
  
    .container {
        margin-left: -1rem;
        border: 50px;
        position: fixed;
        width: 100%;
        height: 100%;
        display: flex;
        justify-content:end;
        z-index: 10000;
        animation: topdown backwards;
        animation-delay: 1500ms;
        animation-duration: 1s;

    }

    @keyframes topdown {
        0%{
            opacity: 0;
            transform: translateY(-20px);
        }
    
        100% {
            opacity: 1;
            transform: translateY(0);
        }
    }
      
      #checkbox-menu{
        position: absolute;
        opacity: 0;
    }
      
      label{
        margin-top: 0.5rem;
        cursor: pointer;
        position: relative;
        display: block;
        height: 22px;
        width: 30px;
      }
      
      label span{
        position: absolute;
        display: block;
        height: 5px;
        width: 100%;
        border-radius: 30px;
        background: #000000;
        transition: 0.25s ease-in-out;
      }
      
      label span:nth-child(1){
        top: 0;
      }
      
      label span:nth-child(2){
        top: 8px;
      }
      
      label span:nth-child(3){
        top: 16px;
      }
      
      #checkbox-menu:checked + label span:nth-child(1){
        transform: rotate(-225deg);
        top: 8px;
      }
      
      #checkbox-menu:checked + label span:nth-child(2){
        opacity: 0;
      }
      
      #checkbox-menu:checked + label span:nth-child(3){
        transform: rotate(225deg);
        top:8px;
      }

    nav {
        background: #ffffff72;
        width: 25%;
        border-radius: 0 0 15px 15px;
        padding: 2rem;
        display: flex;
        flex-direction: column;
        align-items: center;
        gap:0.2rem;
        font-size: 2rem;
        font-family:var(--font-primary);
        position: absolute;
        top: -50rem;
        transition: .5s ease-in-out;
    }

    nav a {
        color: #000000;
        margin-top: 0.5rem;
        margin-left: 1rem;
    }

    #checkbox-menu:checked ~ nav {
        top:3rem;
    }

    .input-wrapper label{
        display: none ;   
 }

    @keyframes carrossel{
        0% {left:0px;}
        20% {left:0px;}

        30% {left:-900px;}
        50% {left:-1200px;}

        60% {left:-1900px;}
        90% {left: -2000px;}

        100% {left: 0px;}
    }

    .introdução{
        margin-top: 54rem;
    }
}


@media (max-width: 999px) {

    header{
        height: 45rem;
    }

    .menu img {
        width: 14rem;
        margin-left: 1rem;
    }

    .quemsomos h2 {
        margin-bottom: 2rem;
        font-size: 5rem;
        margin-left: 3rem;
    }
    
    .quemsomos1 {
        display: flex;
        flex-direction:column;
        align-items: center;
        gap: 5rem;
    }
    
    .quemsomos1 p {
        font-size: 2.5rem;
    }
    
    .quemsomos1 img {
        height: 41.6rem;
        opacity: 1;
        margin-right: none;
        filter: brightness(1);
    }
    
    .serviços {
        margin-top: 15rem;
    }
    
    .serviços h2 {
        font-size: 5rem;
        margin-left: 3rem;
    }

    .serviços ul {
        font-size: 2.5rem;
        margin-left: 6rem;
    }
    
    .imagensobras {
        margin: 0 auto;
        background: #202020;
        height: 49rem;
        width: 90%;
        border-radius: 0rem;
    }
    
    .navigation {
        width: 100%;
    }

    .clientes h2 {
        font-size: 5rem;
        margin-left: 3rem;
    }
    
    .clientes1 ul {
        margin-top: 3rem;
        display: flex;
        list-style: none;
        height: 20rem;
        width: 100%;
    }
    
    .clientes1 li {
        animation: carrossel 10s infinite ease-out;
        position: relative;
    }

    @keyframes carrossel{
        0% {left:0px;}
        20% {left:-400px;}

        30% {left:-900px;}
        50% {left:-1100px;}

        60% {left:-1900px;}
        90% {left: -2250px;}

        100% {left: 0px;}
    }
    
    .clientes1 {
        width: 100%;
    }
    
    .clientes1 img {
        width: 16rem;
    }

    .historia {
        margin-top: 10rem;
        text-align: center;
        
    }
    
    .historia h3 {
        margin-top: -4rem;
        width: 100%;
        font-size: 4rem;
    }
    
    .historia p{
        font-size: 2.5rem;
    }
    
    .historia span {
        font-size: 2rem;
    }
    
    footer{
        margin-top: 15rem;
    }
    
    .orçamento  h2 {
        font-size: 4rem;
        margin-left: 3rem;
    }
    
    .orçamento h3 {
        font-size: 1.9rem;
    }
    form .color{
        width: 70%;
    }
    
    .input-wrapper {
        padding: 0 4rem;
    }

}

@media (max-width:758px){
 
    .navigation {
        display: none;
    }
    
    .bar{
       display: none;
    }
    
    .slides input {
        display: none;
    }
    .slides{
        animation:slide 35s infinite ease-out;
        animation-delay: 1s;
    }
    

    @keyframes slide {
        0% {left:0rem;}
        12.5%{left:-65rem;}
        25% {left:-130rem;}
        37.5% {left:-195rem;}
        50% {left:-260rem;}
        62.5% {left:-325rem;}
        75% {left: -390rem;}
        87.5% {left: -455rem;}
        100% {left: 0px;}
    }
    
    
    

}

@media (max-width: 471px) {

    .introdução  {
        margin-top: 74rem;
    }

    nav {
        width: 30%;
        padding: 1rem;
        gap:0.2rem;
        font-size: 1.1rem;
    
    }

    .menu img {
        width: 12rem;
        margin-left: 1rem;
    }

    .quemsomos1 img {
        height: 30rem;
        border-radius: 0;
        width: 80%;
    }

    @keyframes slide {
        0% {left:0rem;}
        12.5%{left:-100%;}
        25% {left:-200%;}
        37.5% {left:-300%;}
        50% {left:-400%;}
        62.5% {left:-500%;}
        75% {left: -600%;}
        87.5% {left: -700%;}
        100% {left: 0px;}
    }

    form .color{
        width: 90%;
    }

    .input-wrapper {
        padding: 0 2rem;
    }
    
    .clientes1 img {
        width: 12rem;
    }

    
    @keyframes carrossel{
        0% {left:0px;}
        20% {left:-400px;}

        30% {left:-900px;}
        50% {left:-1100px;}

        60% {left:-1400px;}
        90% {left: -1800px;}

        100% {left: 0px;}
    }

}

@media (max-width: 435px) {

    header{
        height: 45rem;
    }

    .menu img {
        width: 9rem;
        margin-left: 1rem;
    }
    
    .quemsomos1 p {
        font-size: 2rem;
    }
    
    .quemsomos1 img {
        height: 20rem;
        border-radius: 0;
        width: 80%;
    }
    .serviços {
        height: 90rem;
    }
    
    .serviços ul {
        font-size: 2rem;
    }
    
    .imagensobras {
        margin: 0 auto;
        background: #202020;
        height: 25rem;
        width: 90%;
        border-radius: 0rem;
    }

    

    @keyframes carrossel{
        0% {left:0px;}
        20% {left:-400px;}

        30% {left:-900px;}
        50% {left:-1100px;}

        60% {left:-1400px;}
        90% {left: -1950px;}

        100% {left: 0px;}
    }
    
    .clientes1 {
        width: 100%;
    }
    
    .clientes1 img {
        width: 12rem;
    }

    .historia {
        margin-top: 10rem;
        text-align: center;
        
    }
    
    .historia h3 {
        font-size: 3rem;
    }
    
    .historia p{
        font-size: 2rem;
    }
    
    .historia span {
        font-size: 2rem;
    }
   
    .orçamento  h2 {
        font-size: 4rem;
        margin-left: 3rem;
    }
    
    .orçamento h3 {
        font-size: 1.9rem;
    }
    form .color{
        width: 90%;
    }
    
    .input-wrapper {
        padding: 0 2rem;
    }

}













