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

body{

font-family:'Inter', sans-serif;
background:black;
color:white;

}

h1,h2,h3{

font-family:'Poppins', sans-serif;

}



/* HERO */

.hero{

height:60vh;

display:flex;
align-items:center;
justify-content:center;

text-align:center;

position:relative;
overflow:hidden;

background:black;

}

.hero-content{

z-index:2;

animation:heroFade 1.2s ease;

}

.hero h1{

font-size:48px;
margin-bottom:10px;

}

.hero p{

font-size:20px;
margin-bottom:25px;

}



/* BOTONES */

.hero-botones{

display:flex;
gap:15px;
justify-content:center;

}

.btn{

background:white;
color:black;

padding:12px 28px;

text-decoration:none;
border-radius:30px;

transition:all 0.3s ease;

}

.btn:hover{

transform:translateY(-3px) scale(1.05);

}

.btn-outline{

border:2px solid white;

padding:10px 26px;

border-radius:30px;

color:white;

text-decoration:none;

transition:all 0.3s ease;

}

.btn-outline:hover{

background:white;
color:black;

transform:translateY(-3px) scale(1.05);

}



/* HERO COCHE */

.coche-hero{

position:absolute;

font-size:140px;

bottom:-20px;

left:50%;

transform:translateX(-50%);

animation:zoomcar 4s ease infinite;

filter: drop-shadow(0 15px 25px rgba(255,255,255,0.15));

}

@keyframes drive{

0%{
left:-120px;
}

100%{
left:110%;
}

}



/* HERO ANIMATION */

@keyframes heroFade{

0%{
opacity:0;
transform:translateY(-30px);
}

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

}



/* SERVICIOS */

.servicios{

padding:80px 20px;
text-align:center;

background:#111;

}

.servicios-grid{

display:grid;

grid-template-columns:repeat(auto-fit,minmax(250px,1fr));

gap:30px;

max-width:1000px;

margin:auto;

margin-top:40px;

}

.servicio{

background:#1b1b1b;

padding:30px;

border-radius:10px;

transition:all 0.3s ease;

}

.servicio:hover{

transform:translateY(-10px) scale(1.03);

box-shadow:0 10px 30px rgba(255,255,255,0.08);

}

.servicio i{

font-size:40px;

margin-bottom:15px;

}





.coche-zoom{

position:relative;

font-size:40px;

margin:30px auto;

display:block;

left:-120px;

animation:drive 6s linear infinite;

}

@keyframes zoomcar{

0%{
transform:translateX(-50%) scale(0.5);
opacity:0;
}

50%{
transform:translateX(-50%) scale(1.2);
opacity:1;
}

100%{
transform:translateX(-50%) scale(1.8);
opacity:0;
}

}


/* OPINIONES */

.opiniones{

padding:80px 20px;

text-align:center;

}

.opiniones-grid{

display:grid;

grid-template-columns:repeat(auto-fit,minmax(250px,1fr));

gap:30px;

max-width:900px;

margin:auto;

margin-top:40px;

}

.opinion{

background:#111;

padding:30px;

border-radius:10px;

transition:all 0.3s ease;

}

.opinion:hover{

transform:scale(1.05);

}

.opinion i{

color:gold;

margin-bottom:10px;

}



/* UBICACION */

.ubicacion{

padding:80px 20px;

text-align:center;

background:#111;

}

.ubicacion p{

margin-bottom:20px;

}

.ubicacion .btn{

margin-top:10px;

}



/* FOOTER */

footer{

padding:30px;

text-align:center;

background:#000;

}



/* SCROLL ANIMATION */

.reveal{

opacity:0;

transform:translateY(40px);

transition:all 0.8s ease;

}

.reveal.active{

opacity:1;

transform:translateY(0);

}