*{
margin:0;
padding:0;
box-sizing:border-box;
}

html{
scroll-behavior:smooth;
}

body{
font-family:Arial, sans-serif;
color:#222;
line-height:1.6;
padding-top:85px; /* compensa header fixo */
}

.container{
width:90%;
max-width:1200px;
margin:auto;
}

/* ================= HEADER ================= */

header{
position:fixed;
top:0;
width:100%;
background:rgba(0,0,0,0.90);
padding:15px 0;
z-index:1000;
}

.nav-container{
display:flex;
justify-content:space-between;
align-items:center;
}

nav ul{
list-style:none;
display:flex;
gap:25px;
}

nav a{
color:#fff;
text-decoration:none;
font-weight:600;
transition:0.3s;
}

nav a:hover{
color:#2ecc71;
}

.logo-img{
height:60px;
display:block;
}

/* ================= HERO ================= */

.hero{
height:100vh;
position:relative;
overflow:hidden;
display:flex;
align-items:center;
justify-content:center;
text-align:center;
color:#fff;
}

.slide{
position:absolute;
width:100%;
height:100%;
top:0;
left:0;
opacity:0;
transition:opacity 1s ease-in-out;
overflow:hidden;
}

.slide img{
width:100%;
height:100%;
object-fit:cover;
display:block;
}

.slide.active{
opacity:1;
}

.hero-content{
position:relative;
z-index:2;
background:rgba(0,0,0,0.6);
padding:40px;
border-radius:12px;
}

.hero h1{
font-size:40px;
}

.hero p{
margin-top:10px;
}

.btn{
display:inline-block;
padding:14px 30px;
background:#2ecc71;
color:#fff;
text-decoration:none;
border-radius:30px;
margin-top:20px;
font-weight:600;
transition:0.3s;
}

.btn:hover{
transform:scale(1.05);
}

/* ================= PARALLAX ================= */

.parallax-section{
position:relative;
height:500px;
display:flex;
align-items:center;
justify-content:center;
text-align:center;
color:#fff;
overflow:hidden;
}

.parallax-layer{
position:absolute;
width:100%;
height:120%;
top:-10%;
left:0;
background:url('https://moveiscostaverde.com.br/img/banner-projetos-anuncio.png') center/cover no-repeat;
transition:transform 0.3s ease-out;
will-change:transform;
}

.parallax-layer.second{
background:url('https://moveiscostaverde.com.br/img/banner-projetos.png') center/cover no-repeat;
}

.parallax-section .content{
position:relative;
z-index:2;
background:rgba(0,0,0,0.6);
padding:40px;
border-radius:12px;
}

/* ================= SECTIONS ================= */

.section-light{
padding:100px 0;
background:#f8f8f8;
text-align:center;
}

.section-dark{
padding:100px 0;
background:#111;
color:#fff;
text-align:center;
}

/* ================= FOOTER ================= */

.footer{
background:#0a0a0a;
color:#fff;
padding:70px 0 30px 0;
}

.footer-grid{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
gap:40px;
}

.footer h3{
margin-bottom:15px;
color:#2ecc71;
}

.footer ul{
list-style:none;
}

.footer ul li{
margin-bottom:8px;
}

.footer-bottom{
margin-top:40px;
text-align:center;
border-top:1px solid rgba(255,255,255,0.1);
padding-top:20px;
font-size:14px;
color:#ccc;
}

/* ================= WHATSAPP BOTÃO ================= */

.whatsapp-button{
position:fixed;
bottom:25px;
right:25px;
width:60px;
height:60px;
background:#25D366;
display:flex;
align-items:center;
justify-content:center;
border-radius:50%;
cursor:pointer;
z-index:9999;
box-shadow:0 6px 20px rgba(0,0,0,0.25);
transition:0.3s;
}

.whatsapp-button:hover{
transform:scale(1.08);
}

/* ================= BALÃO ================= */

.status-bubble{
position:fixed;
bottom:95px;
right:25px;
background:#25D366;
color:#fff;
padding:12px 20px;
border-radius:30px;
font-size:14px;
font-weight:600;
box-shadow:0 8px 25px rgba(0,0,0,0.25);
z-index:9999;
opacity:0;
transform:translateY(40px);
animation:slideUpFade 0.8s ease forwards, floatSoft 3s ease-in-out infinite 1s;
}

.status-bubble::after{
content:"";
position:absolute;
bottom:-8px;
right:22px;
border-width:8px;
border-style:solid;
border-color:#25D366 transparent transparent transparent;
}

@keyframes slideUpFade{
to{
opacity:1;
transform:translateY(0);
}
}

@keyframes floatSoft{
0%{transform:translateY(0);}
50%{transform:translateY(-6px);}
100%{transform:translateY(0);}
}

/* ================= CHAT ================= */

.whatsapp-chat{
position:fixed;
bottom:95px;
right:25px;
width:300px;
background:#fff;
border-radius:16px;
box-shadow:0 15px 40px rgba(0,0,0,0.25);
display:none;
z-index:9999;
overflow:hidden;
}

.chat-header{
background:#25D366;
color:#fff;
padding:15px;
font-weight:600;
text-align:center;
}

.chat-body{
padding:15px;
display:flex;
flex-direction:column;
gap:12px;
}

.chat-option{
padding:14px;
border:none;
border-radius:10px;
background:#f1f1f1;
cursor:pointer;
font-weight:600;
transition:0.2s;
}

.chat-option:hover{
background:#25D366;
color:#fff;
}

.offline-message{
display:none;
font-size:13px;
color:#c0392b;
text-align:center;
}

/* ================= RESPONSIVO MOBILE ================= */

/* ================= MOBILE MENU ================= */

.menu-toggle{
display:none;
flex-direction:column;
gap:5px;
cursor:pointer;
z-index:1100;
}

.menu-toggle span{
width:28px;
height:3px;
background:#fff;
border-radius:3px;
transition:0.3s;
}

/* MOBILE */
@media(max-width:768px){

.nav-container{
flex-direction:row;
justify-content:space-between;
align-items:center;
}

nav{
position:fixed;
top:0;
right:-100%;
width:75%;
height:100vh;
background:#111;
padding-top:100px;
transition:0.4s ease;
z-index:1000;
}

nav.active{
right:0;
}

nav ul{
flex-direction:column;
gap:30px;
text-align:center;
}

nav a{
font-size:20px;
color:#fff;
}

/* Mostra botão */
.menu-toggle{
display:flex;
}

/* Esconde menu desktop */
nav ul{
display:flex;
}

/* animação X */
.menu-toggle.active span:nth-child(1){
transform:rotate(45deg) translate(5px,5px);
}

.menu-toggle.active span:nth-child(2){
opacity:0;
}

.menu-toggle.active span:nth-child(3){
transform:rotate(-45deg) translate(6px,-6px);
}

}

/* ============================= */
/* SOBRE - MAPA + GALPÃO        */
/* ============================= */

.sobre-grid{
display:grid;
grid-template-columns:1fr 1fr;
gap:40px;
margin-top:40px;
align-items:center;
}

.mapa-box{
position:relative;
height:350px;
border-radius:12px;
overflow:hidden;
box-shadow:0 10px 25px rgba(0,0,0,0.15);
}

.mapa-box iframe{
width:100%;
height:100%;
pointer-events:none;
}

.map-link{
display:block;
position:relative;
width:100%;
height:100%;
}

.map-overlay{
position:absolute;
bottom:15px;
left:50%;
transform:translateX(-50%);
background:#25D366;
color:#fff;
padding:8px 16px;
border-radius:20px;
font-size:13px;
font-weight:600;
box-shadow:0 4px 12px rgba(0,0,0,0.3);
}

.galpao-box img{
width:100%;
height:auto;
display:block;
border-radius:12px;
object-fit:cover;
aspect-ratio: 4 / 3;
cursor:pointer;
transition:0.3s ease;
box-shadow:0 10px 25px rgba(0,0,0,0.15);
}

.galpao-box img:hover{
transform:scale(1.02);
}


/* ============================= */
/* MODAL IMAGEM                 */
/* ============================= */

.image-modal{
display:none;
position:fixed;
z-index:99999;
left:0;
top:0;
width:100%;
height:100%;
background:rgba(0,0,0,0.9);
justify-content:center;
align-items:center;
}

.modal-content{
max-width:90%;
max-height:90%;
border-radius:10px;
}

.close-modal{
position:absolute;
top:20px;
right:30px;
color:#fff;
font-size:35px;
cursor:pointer;
}

/* ============================= */
/* RESPONSIVO MOBILE            */
/* ============================= */

@media(max-width:768px){

.sobre-grid{
grid-template-columns:1fr;
gap:25px;
}

.mapa-box{
height:300px;
}

}

/* ============================= */
/* ÚLTIMOS TRABALHOS PREMIUM     */
/* ============================= */

.trabalhos-section{
padding:80px 0;
background:#d1f8c9;
overflow:hidden;
}

.trabalhos-title{
text-align:center;
font-size:30px;
margin-bottom:8px;
}

.trabalhos-sub{
text-align:center;
color:#666;
margin-bottom:40px;
font-size:15px;
}

.trabalhos-slider{
overflow:hidden;
position:relative;
}

.trabalhos-track{
display:flex;
gap:20px;
transition:transform 0.8s ease;
will-change:transform;
}

.trabalho-card{
flex:0 0 23%;
background:#fff;
border-radius:14px;
overflow:hidden;
box-shadow:0 10px 30px rgba(0,0,0,0.08);
transition:0.3s ease;
display:flex;
flex-direction:column;
}

.trabalho-card:hover{
transform:translateY(-6px);
}

.trabalho-card img{
width:100%;
height:220px;
object-fit:cover;
display:block;
}

.trabalho-info{
padding:16px;
display:flex;
flex-direction:column;
gap:6px;
font-size:14px;
}

.trabalho-info strong{
display:flex;
align-items:center;
gap:6px;
font-size:14px;
}

.trabalho-info span{
color:#666;
font-size:13px;
}

/* Instagram Icon */
.instagram-icon{
width:20px;
height:20px;
}

.insta-user{
font-size:14px;
}

/* Tablet */
@media(max-width:992px){
.trabalho-card{
flex:0 0 48%;
}
}

/* Mobile */
@media(max-width:768px){

.trabalhos-section{
padding:60px 0;
background:#25D366;
}

.trabalho-card{
flex:0 0 85%;
margin:auto;
}

.trabalhos-track{
gap:15px;
}

.trabalho-card img{
height:200px;
}

.trabalhos-title{
font-size:24px;
}

.trabalhos-sub{
font-size:14px;
padding:0 10px;
}

}

.trabalho-instagram{
margin-bottom:6px;
}

.instagram-link{
display:flex;
align-items:center;
gap:6px;
text-decoration:none;
color:#222;
font-weight:600;
transition:0.2s;
}

.instagram-link:hover{
color:#E1306C;
}

.trabalho-cidade{
font-size:13px;
color:#666;
}

/* BADGE ENTREGA */
/* STATUS BADGES */
.status-badge{
position:absolute;
top:15px;
left:15px;
padding:6px 14px;
font-size:12px;
font-weight:600;
border-radius:20px;
color:#fff;
box-shadow:0 4px 12px rgba(0,0,0,0.2);
z-index:2;
}

.status-badge.entregue{
background:#2ecc71;
}

.status-badge.execucao{
background:#3498db;
}

.status-badge.andamento{
background:#f39c12;
}

/* CARD POSITION */
.trabalho-card{
position:relative;
overflow:hidden;
transition:0.4s ease;
}

/* HOVER PREMIUM */
.trabalho-card:hover{
transform:translateY(-8px);
box-shadow:0 15px 40px rgba(0,0,0,0.15);
}

/* AVALIAÇÃO */
.avaliacao{
color:#f1c40f;
font-size:14px;
letter-spacing:2px;
}

/* SELO VERIFICADO */
.verificado{
background:#3498db;
color:#fff;
font-size:11px;
padding:2px 6px;
border-radius:50%;
margin-left:6px;
}

/* TRANSIÇÃO IMAGEM */
.trabalho-card img{
transition:0.6s ease;
}

.trabalho-card:hover img{
transform:scale(1.05);
}

/* MOBILE AJUSTE */
@media(max-width:768px){
.badge-entregue{
font-size:11px;
padding:5px 10px;
}
}





