*{
    margin: 0px;
    padding: 0px;
    box-sizing: border-box;
}

h1{
    width: 100%;
    height: 10px;
    font-family: Montserrat ExtraBold;
    font-weight: bold;
    margin-bottom: 5px;
    margin-top: 20px;
    color: #D4AF37;
    font-size: 12px;
    letter-spacing: 3px;
    text-transform: uppercase;
}
    
h2{
    width: 100%;
    height: 10px;
    font-family: League Spartan ;
    font-weight: bold;
    margin-bottom: 5px;
    margin-top: 20px;
    color: #ffffff;
    font-size: 30px;
    letter-spacing: 8px;
    text-transform: uppercase;
}

h3{
    width: 100%;
    height: 10px;
    font-family: League Spartan ;
    font-weight: bold;
    margin-bottom: 5px;
    margin-top: 20px;
    color: #D4AF37;
    font-size: 30px;
    letter-spacing: 8px;
    text-transform: uppercase
}

p{
    font-family: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;
    font-weight:unset;
    margin-bottom: 5px;
    margin-top: 15px;
    color:#8f8f8f;
    font-size: 12px;   
}

.background-img-default{
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;  
}

.content-auto-height{
    min-height: 100px;
    height: auto;
    overflow: hidden;
}

.content-default{
    width: 90vw;
    min-height: 100px;
    margin: auto;
    background-color: #ffffff;
}

/*menu navegação*/

header nav{
    width: 100%;
    height: 18px 0;
    background-color: rgb(0, 1, 2); 
    background-image: url(../image/logobm.png);
    background-repeat: no-repeat;
    background-position: 20px -10px;
    background-size: 210px; 
}

header nav ul{
    width:70%;
    height: 100%;
    margin-left: auto;
    list-style: none;
    display: flex;
    justify-content: center;    
}

header nav ul li{
    width: auto;
    height: 50px;
    padding:0 20px;
    margin:0;
    font-family: Arial, Helvetica, sans-serif;
    font-size: 0.6rem;
    font-weight: bolder;
    text-align: center;
    color: #ffffff;
    display: flex;
    align-items: center;
    justify-content: center;   
} 

#menu li a{
    color: white;
    text-decoration: none;
    display: flex;
    width: 100%;
    height: 100%;
    align-items: center;
    justify-content: center;
}

header nav ul li:hover{
    background-color: #D4AF37;
    cursor: pointer;
    color: #ffffff;
    font-weight: bold;
}

/*fundo do site*/

#home{
    width:100%;
    min-height:100vh;
    background-color: #000307;
    background-image: url(../image/fundosite.png);
    background-attachment: scroll; 
}

section{
    padding: 50px 3%;
}

.botoes{
    display:flex;
    gap:20px;
    margin-top: 2%;
}

.btn-amarelo{
    background:#D4AF37;
    color:black;
    padding:15px 30px;
    text-decoration:none;
}

.btn-borda{
    border:1px solid #D4AF37;
    color:white;
    padding:15px 30px;
    text-decoration:none;
}

#card{
    display:grid;
    grid-template-columns:
    repeat(auto-fit,minmax(250px,1fr));
    gap:20px;
    padding-left: 0%;
    padding-top: 5%;
}

.card{
    align-items:flex-start;
    gap:20px;
    display: flex;
    margin-bottom: 40px;
    width:100%;
    height:110px;
    padding:15px;
    text-decoration:none;
    color:white;
    border:3px solid rgba(180, 166, 39, 0.08);
    transition:.3s;
}

.card:hover{
    transform:translateX(-5px);

}

.icon img{
    width: 40px;
    height: 40px;
    object-fit: contain;
}

.card h4{
    font-family:'Montserrat',sans-serif;
    font-size:10px;
    margin-bottom:5px;
}

.card p{
    color:#8f8f8f;
    line-height:1.5;
}

#sobre{
    width:100%;
    min-height:100vh;
    background-color: #000307;
    background-image: url(../image/sobre.png);
    background-attachment: scroll; 
}

#quem-somos-container{
    width: 100%;
    min-height: 100px;
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 5px;
    padding-left: 0%;
    padding-top: 0%;
}

.quem-somos-texto h1{
    width: 35%;
    min-width:300px;
    font-family: Montserrat ExtraBold;
    font-weight: bold;
    margin-bottom: 5px;
    margin-top: 20px;
    color: #D4AF37;
    font-size: 12px;
    text-transform: uppercase;
}

.quem-somos-texto p{
    width: 100%;
    line-height: 1.8;
    font-family: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;
    font-weight:unset;
    margin-bottom: 5px;
    margin-top: 10px;
    color:#8f8f8f;
    font-size: 12px;
    word-break: normal;
    overflow-wrap: normal;
}

#card2{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:20px;
    padding-left: 0;
    padding-top: 1%;
}

.card2{
    width:100%;
    min-height: 200px;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap:10px;
    margin-bottom: 8px;
    text-decoration:none;
    color:white;
    border:3px solid rgba(180, 166, 39, 0.08);
    transition:.3s;
}

.card2:hover{
    transform: translateY(-5px);
    
}

.card2 img{
    width: 60px;
    height: 52px;
    margin-top: 8px;
}

.card2 h5{
    color: #D4AF37;
    font-family:'Montserrat',sans-serif;
    font-size:14px;
    margin-top: 8px;
}

.card2 p{
    color:#8f8f8f;
    line-height:1.5;
}

#servico{
    width:100%;
    min-height:100vh;
    background-color: #000307;
    background-image: url(../image/fundoservico.png);
    background-attachment: scroll; 
    padding: 50px 3%;
}

.titulo-secao{
    text-align:center;
    font-size: 14px;
    color:#ffffff;
    margin:40px 0 30px;
}

.processo{
    width: 100%;
    position: relative;
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    padding: 10px 10px;
}

.linha-processo{
    position: absolute;
    top: 40px;
    left: 80px;
    right: 80px;
    height: 2px;
    background: rgba(212,175,55,0.5);
    z-index: 1;
}

.etapa{
    width: 22%;
    text-align: left;
    position: relative;
    z-index: 2;
}

.etapa img{
    width: 65px;
    height: 65px;
    border: 2px solid #D4AF37;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #000;
    color: #D4AF37;
    font-size: 30px;
    margin-bottom: 25px;
}

.etapa h3{
    color: #D4AF37;
    font-size: 18px;
    margin-bottom: 14px;
    margin-top: 2px;
}

.etapa h4{
    color: #D4AF37;
    font-size: 10px;
    margin-bottom: 10px;
    font-family: 'Montserrat', sans-serif;
}

.etapa p{
    margin-top: 2px;
    color:#8f8f8f;
    line-height: 1.5;
}

#tecnologia{
    width:100%;
    min-height:100vh;
    background-color: #000307;
    background-image: url(../image/tecnologia.png);
    background-attachment: scroll; 
    padding: 30px 3%;
}

.btn-whatsapp{
    background:#25d366;
    color:floralwhite;
    font: bold;
    padding:15px 30px;
    text-decoration:none;
}

#contato{
    width:100%;
    min-height:100vh;
    background-color: #000307;
    background-image: url(../image/contato.png);
    background-attachment: scroll; 
    padding: 50px 3%;
}

#card3{
    display:grid;
    grid-template-columns:
    repeat(auto-fit,minmax(250px,1fr));
    gap:20px;
    padding-left: 0;
    padding-top: 1%;
}

.card3{
    width:100%;
    min-height: 170px;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap:10px;
    margin-bottom: 8px;
    text-decoration:none;
    color:white;
    border:3px solid rgba(180, 166, 39, 0.08);
    transition:.3s;
}

.card3:hover{
    transform: translateY(-5px);
    
}

.card3 img{
    width: 60px;
    height: 52px;
    margin-top: 8px;
}

.card3 h5{
    color: #D4AF37;
    font-family:'Montserrat',sans-serif;
    font-size:14px;
    margin-top: 8px;
}

.card3 p{
    color:#8f8f8f;
    line-height:1.5;
}

.img_contato{
    width: 70px;
    height: 60px;
    object-fit: contain;
}

#orcamento{
    width:100%;
    min-height:100vh;
    background-color:#000307;
    background-image:url(../image/contato.png);
    background-size:cover;
    background-position:center;
    padding:30px 5%;
}

#orcamento form{

    max-width:700px;
    margin-top:10px;
    display:flex;
    flex-direction:column;
    gap:10px;
}

#orcamento input,
#orcamento select{

    padding:15px;
    background:rgba(0,0,0,.6);
    border:1px solid rgba(212,175,55,.3);
    color:#ffffff;
    border-radius:8px;
}

#descricao{
    width: 100%;
    min-height: 150px;
    resize: none;
    padding: 15px;
    background: rgba(0,0,0,.6);
    border: 1px solid rgba(212,175,55,.3);
    border-radius: 8px;
    color: #fff;
}

#orcamento button{

    background:#D4AF37;
    color:#000;
    border:none;
    padding:15px;
    font-weight:bold;
    cursor:pointer;
    border-radius:8px;
}

#orcamento button:hover{

    opacity:.9;
}

.dica-formulario{
    color: #ffffff;
    font-size: 13px;
    margin-top: -5px;
    margin-bottom: 10px;
    line-height: 1.5;
}

.checkbox-group{
    display:flex;
    flex-direction:column;
    gap:10px;
    margin-top:10px;
    margin-bottom:20px;
}

.checkbox-group label{
    display:flex;
    align-items:center;
    gap:10px;
    color:#8f8f8f;;
    font-size:14px;
}

.checkbox-group input[type="checkbox"]{
    width: 18px;
    height: 18px;
    min-width: 18px;
    min-height: 18px;
    accent-color: #D4AF37;
}

footer{ 
    width: 100%;
    height: 10vh;
    background-color: rgb(0, 1, 2); 
    display: flex;
    justify-content: center;
    align-items: center;
}

.footertext{
    font-size: 12px;
    font-family: League Spartan;
    font-weight: bold;
    color: #D4AF37;
    text-align: center;
    margin-top: 30px; 
    white-space: nowrap;
    overflow-x: auto;
}



@media print {
   * {
     background: transparent !important;
     border-color: #000 !important;
     box-shadow: none !important;
     color: #000 !important;
     text-shadow: none !important;
    }
}

/* ===================================== */
/* TABLET */
/* ===================================== */

@media screen and (max-width:1024px){

    #home,
    #sobre,
    #servico,
    #contato{
        height:auto;
        min-height:700px;
        background-size:cover;
    }

    #tecnologia{
        width:100%;
        height:auto;
        min-height:700px;
        background-size:cover;
    }

    #card{
        grid-template-columns:repeat(2,1fr);
        gap:15px;
    }

    #card2{
        grid-template-columns:repeat(2,1fr);
        padding-left:0;
        justify-items:center;
    }

    #card3{
        grid-template-columns:repeat(2,1fr);
    }

    .card,
    .card2,
    .card3{
        width:100%;
        max-width:320px;
    }

    #quem-somos-container{
        width:100%;
        flex-direction:column;
    }

    .quem-somos-texto{
        width:100%;
    }

    .processo{
        flex-wrap:wrap;
        gap:30px;
    }

    .etapa{
        width:45%;
    }

    .linha-processo{
        display:none;
    }
}

/* ===================================== */
/* MOBILE */
/* ===================================== */

@media screen and (max-width:768px){

    background-img-default{
        background-repeat: no-repeat; 
        background-size: cover; 
    }

    header nav{
    height:70px;
    background-color:#000102;

    background-image:
        url(../image/menu.png),
        url(../image/logobm.png);
        

    background-repeat:
        no-repeat,
        no-repeat;

    background-size:
        40px 40px,
        160px auto;
        

    background-position:
        left 20px center,
        right 80px center;
    }

    header nav ul{
    display: none;
    background-color: rgb(0, 1, 2);
    position: absolute;
    top: 70px;
    left: 15px;
    width: 200px;
    height: 250px;
    border-radius: 10px;
    z-index: 999;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    }

    header nav ul li{
    width: 100%;
    height: 40px;
    margin: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    }


    header nav:hover > #menu{
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    } 

    #home,
    #sobre,
    #servico,
    #tecnologia,
    #contato{
        height:auto;
        min-height:auto;
        background-size:cover;
        background-position:center;
    }

    h1{
        font-size:10px;
        letter-spacing:2px;
    }

    h2{
        font-size:20px;
        letter-spacing:2px;
        line-height:1.3;
        height:auto;
    }

    h3{
        font-size:20px;
        letter-spacing:2px;
        line-height:1.3;
        height:auto;
    }

    p{
        font-size:14px;
        line-height:1.6;
    }

    .botoes{
        flex-direction:column;
        gap:10px;
    }

    .btn-amarelo,
    .btn-borda,
    .btn-whatsapp{
        width:100%;
        text-align:center;
    }

    #card{
        grid-template-columns:1fr;
    }

    #card2{
        grid-template-columns:1fr;
        padding-left:0;
    }

    #card3{
        grid-template-columns:1fr;
    }

    .card,
    .card2,
    .card3{
        width:100%;
        max-width:none;
    }

    #quem-somos-container{
        width:100%;
        flex-direction:column;
    }

    .quem-somos-texto{
        width:100%;
    }

    .quem-somos-texto h1{
        min-width:unset;
        width:100%;
    }

    .processo{
        flex-direction:column;
        align-items:center;
    }

    .etapa{
        width:100%;
        text-align:center;
    }

    .etapa img{
        margin:auto;
        margin-bottom:15px;
    }

    .linha-processo{
        display:none;
    }

    footer{
        height:auto;
        padding:20px;
    }

    .footertext{
        margin-top:0;
        white-space:normal;
    }
}




    