/* RESET */
*{margin:0;padding:0;box-sizing:border-box;font-family:'Inter',sans-serif;}
body{background:#f9fafb;color:#111827;}

/* NAV */
nav{
display:flex;
justify-content:space-between;
align-items:center;
padding:18px 10%;
position:fixed;
width:100%;
background:rgba(255,255,255,0.95);
backdrop-filter:blur(10px);
border-bottom:1px solid #e5e7eb;
z-index:1000;
}

.logo-group{
display:flex;
align-items:center;
gap:12px;
}

.logo{height:45px;}
.fgas{height:35px;}

nav a{
margin-left:25px;
text-decoration:none;
color:#374151;
font-weight:500;
}

nav a:hover{color:#2563eb;}

/* HERO */
.hero{
height:100vh;
display:flex;
align-items:center;
padding:0 10%;
background:
linear-gradient(rgba(15,23,42,0.75),rgba(15,23,42,0.85)),
url('images/hero.jpg');
background-size:cover;
background-position:center;
color:white;
}

.hero-content{max-width:700px;}

.hero h1{
font-size:48px;
margin-bottom:20px;
}

.hero p{
font-size:18px;
margin-bottom:30px;
color:#d1d5db;
}

.btn{
background:#2563eb;
color:white;
padding:14px 28px;
border-radius:8px;
text-decoration:none;
display:inline-block;
border:none;
cursor:pointer;
}

.btn:hover{background:#1e40af;}

/* SECTIONS */
section{padding:110px 10%;}
h2{font-size:32px;margin-bottom:30px;}

/* GRID */
.grid{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(250px,1fr));
gap:25px;
}

/* CARD */
.card{
background:white;
padding:25px;
border-radius:12px;
border:1px solid #e5e7eb;
transition:0.3s;
}

.card:hover{
transform:translateY(-5px);
box-shadow:0 10px 25px rgba(0,0,0,0.08);
}

/* GALLERY */
.gallery{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(250px,1fr));
gap:20px;
margin-top:30px;
}

.gallery img{
width:100%;
height:220px;
object-fit:cover;
border-radius:12px;
display:block;
transition:0.3s;
}

.gallery img:hover{
transform:scale(1.05);
}

/* CTA */
.cta{
background:linear-gradient(135deg,#1e3a8a,#2563eb);
color:white;
text-align:center;
border-radius:20px;
}

/* FORM */
form{
display:flex;
flex-direction:column;
gap:15px;
max-width:500px;
}

form input, form textarea{
padding:14px;
border-radius:8px;
border:1px solid #d1d5db;
}

/* WHATSAPP */
.whatsapp{
position:fixed;
bottom:20px;
right:20px;
background:#25D366;
color:white;
font-size:22px;
padding:14px;
border-radius:50%;
text-decoration:none;
z-index:999;
}

/* FOOTER */
footer{
background:#020617;
color:#cbd5e1;
text-align:center;
padding:40px;
}

/* MOBILE */
@media(max-width:768px){

.hero h1{font-size:32px;}

nav{
flex-direction:column;
gap:10px;
}

}