/* RESET */
*{
margin:0;
padding:0;
box-sizing:border-box;
}

body{
font-family:'Poppins',sans-serif;
color:#333;
background-color: rgba(227, 225, 225);
}

/* HEADER */
header{
background:rgba(10,108,255,0.95);
color:white;
padding:20px 40px;
position: relative;

z-index: 9999999;
}

.container{
display:flex;
justify-content:space-between;
align-items:center;
}

nav{
display:flex;
}

nav a{
color:white;
margin-left:25px;
text-decoration:none;
font-weight:500;
}

nav a:hover{
opacity:0.8;
}

/* MENU MOBILE */
.menu-toggle{
display:none;
font-size:30px;
cursor:pointer;
color:white;
position: relative;
z-index: 9999999;
}

/* HERO */
.hero {
position: relative;
height: 90vh;
display: flex;
align-items: center;
justify-content: center;
text-align: center;
overflow: hidden;
}

/* SLIDER */
.slider {
position: absolute;
top:0;
left:0;
width:100%;
height:100%;
overflow:hidden;
z-index:1;
}

.slide {
position:absolute;
top:0;
left:0;
width:100%;
height:100%;
background-size:cover;
background-position:center;
opacity:0;
transition: opacity 1.5s ease-in-out;
}

.slide.active {
opacity:1;
}

/* CAMADA ESCURA */
.hero::after {
content: "";
position: absolute;
width: 100%;
height: 100%;
background: rgba(0,0,0,0.8);
z-index: 0;
}

/* TEXTO HERO */
.hero-text {
position: relative;
z-index: 2;
color: white;
background: rgba(0,0,0,0.4);
padding: 40px 20px;
border-radius: 10px;
max-width: 90%;

}

.hero h2{
font-size:42px;
margin-bottom:15px;
}

.hero p{
margin-bottom:20px;
font-size:18px;
}

/* BOTÃO */
.btn{
background:#25D366;
color:white;
padding:15px 30px;
text-decoration:none;
border-radius:6px;
font-weight:600;
}

.btn:hover{
background:#1ebe5b;
}

/* SEÇÕES */
.servicos,
.sobre,
.regiao,
.contato,
.mapa,
.marcas{
padding:80px 40px;
text-align:center;
background:rgba(255,255,255,0.92);
margin:40px;
border-radius:10px;
}

/* GRID */
.grid{
display:flex;
gap:30px;
justify-content:center;
flex-wrap:wrap;
}

/* CARDS */
.card{
background:white;
width:280px;
padding:25px;
border-radius:10px;
box-shadow:0 10px 25px rgba(0,0,0,0.1);
}

.card h3{
margin-bottom:10px;
}

/* REGIÃO */
.regiao ul{
list-style:none;
font-size:18px;
}

.regiao li{
margin:10px 0;
}

/* REDES */
.redes{
display:flex;
justify-content:center;
align-items:center;
gap:20px;
margin-top:15px;
}

.redes img{
height:50px;
transition:0.3s;
}

.redes img:hover{
transform:scale(1.1);
}

/* FORMULÁRIO */
form{
display:flex;
flex-direction:column;
gap:15px;
max-width:400px;
margin:auto;
}

input,
select{
padding:12px;
border-radius:6px;
border:1px solid #ccc;
font-size:16px;
}

button{
background:#0a6cff;
color:white;
border:none;
padding:14px;
border-radius:6px;
font-size:16px;
cursor:pointer;
}

button:hover{
background:#084dcc;
}

/* WHATSAPP */
.whatsapp{
position:fixed;
right:20px;
bottom:20px;
background:#25D366;
color:white;
padding:12px 18px;
border-radius:30px;
text-decoration:none;
font-weight:600;
box-shadow:0 5px 15px rgba(0,0,0,0.2);

}

/* FOOTER */
footer{
text-align:center;
padding:20px;
color:white;
}

/* MARCAS (SLIDER LOGOS) */
.logos {
overflow: hidden;
position: relative;
margin-top: 30px;
}

.logos-slide {
display: flex;
width: max-content;
animation: scroll 20s linear infinite;
}

.logos-slide img {
height: 60px;
margin: 0 40px;
object-fit: contain;
}

/* ANIMAÇÃO */
@keyframes scroll {
from { transform: translateX(0); }
to { transform: translateX(-50%); }
}

/* RESPONSIVO */
@media (max-width:768px){

.menu-toggle{
display:block;
}

nav{
position:absolute;
top:90px;
left:0;
width:100%;
background:#0a6cff;
flex-direction:column;
align-items:center;
display:none;
padding:20px 0;
}

nav.active{
display:flex;
}

nav a{
margin:15px 0;
font-size:18px;
}

.hero{
height:60vh;
padding:80px 20px;
}

.hero h2{
font-size:26px;
}

.servicos,
.sobre,
.regiao,
.contato,
.mapa,
.marcas{
margin:20px;
padding:40px 20px;
}

.grid{
flex-direction:column;
align-items:center;
}

.card{
width:100%;
max-width:320px;
}

.redes img{
height:40px;
}

}

/* ESCONDER MOBILE NO PC */
.mobile {
display: none;
}

/* ESCONDER PC NO MOBILE */
@media (max-width: 768px) {
.desktop {
display: none;
}

.mobile {
display: block;
}
}

.mapa iframe{
    width: 100%;
    height: 400px;
    border-radius: 10px;
}

@media (max-width: 768px) {
    .mapa iframe{
        height: 250px;
    }
}

.mapa{
    padding: 40px 20px;
}

.hero-text,
.btn{
    margin-top: 450px;
}

@media (max-width: 768px){
    .hero-text,
    .btn {
        margin-top: 150px;
    }
    
    .hero-text{
        padding: 60px 20px;
    }
    
    .hero h2{
        font-size: 25px;
    }
    
    .hero p{
        font-size: 12px;
        
    }
    
    .btn{
        font-size: 16px;
    }
}