/* =========================
RESET
========================= */

*{
margin:0;
padding:0;
box-sizing:border-box;
}

html{
scroll-behavior:smooth;
}

body{
font-family:'Poppins',sans-serif;
color:#333;
background:#fff;
line-height:1.7;
}

/* =========================
HEADER
========================= */

.header{
position:fixed;
width:100%;
top:0;
left:0;
z-index:1000;
background:rgba(255,255,255,.95);
backdrop-filter:blur(10px);
box-shadow:0 2px 10px rgba(0,0,0,.08);
}

.contenedor-header{
max-width:1200px;
margin:auto;
padding:15px 30px;
display:flex;
justify-content:space-between;
align-items:center;
}

.logo-area{
display:flex;
align-items:center;
gap:15px;
}

.logo{
width:70px;
height:70px;
border-radius:50%;
object-fit:cover;
}

.logo-area h1{
font-size:1.4rem;
color:#DC143C;
}

.logo-area p{
font-size:.85rem;
}

nav ul{
display:flex;
list-style:none;
gap:25px;
}

nav a{
text-decoration:none;
color:#333;
font-weight:600;
transition:.3s;
}

nav a:hover

/* =========================
HERO
========================= */

.hero{
height:100vh;
background:
linear-gradient(
rgba(0,0,0,.55),
rgba(0,0,0,.55)),
url("hero.jpg");

```
background-size:cover;
background-position:center;
display:flex;
justify-content:center;
align-items:center;
text-align:center;
padding:20px;
position:relative;
```

}

.hero-contenido{
max-width:800px;
color:white;
}

.hero h1{
font-size:3rem;
margin-bottom:20px;
}

.hero p{
font-size:1.2rem;
margin-bottom:30px;
}

.hero-botones{
display:flex;
justify-content:center;
gap:15px;
flex-wrap:wrap;
}

/* =========================
BOTONES
========================= */

.btn-principal{
display:inline-block;
background:#DC143C;
color:white;
padding:15px 35px;
border-radius:50px;
text-decoration:none;
font-weight:600;
transition:.3s;
}

.btn-principal:hover{
background:#0a6653;
transform:translateY(-3px);
}

.btn-secundario{
display:inline-block;
background:white;
color:#DC143C;
padding:15px 35px;
border-radius:50px;
text-decoration:none;
font-weight:600;
}

.btn-secundario:hover

/* =========================
TITULOS
========================= */

.titulo-seccion{
text-align:center;
margin-bottom:50px;
}

.titulo-seccion h2{
font-size:2.5rem;
color:#DC143C;
}

.titulo-seccion p{
color:#666;
}

/* =========================
ESTADISTICAS
========================= */

.estadisticas{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(200px,1fr));
gap:30px;
padding:80px 10%;
background:#f8fbfa;
}

.estadistica{
text-align:center;
}

.estadistica h2{
color:#DC143C;
font-size:3rem;
}

/* =========================
SERVICIOS
========================= */

.servicios{
padding:100px 10%;
}

.grid-servicios{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(280px,1fr));
gap:30px;
}

.card-servicio{
background:white;
padding:35px;
border-radius:20px;
text-align:center;
box-shadow:0 5px 20px rgba(0,0,0,.08);
transition:.3s;
}

.card-servicio:hover{
transform:translateY(-8px);
}

.card-servicio i{
font-size:3rem;
color:#DC143C;
margin-bottom:20px;
}

.card-servicio h3{
margin-bottom:15px;
}

/* =========================
ESPECIALIDADES
========================= */

.especialidades{
background:#f8fbfa;
padding:100px 10%;
}

.especialidades-grid{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(300px,1fr));
gap:30px;
}

.especialidad{
overflow:hidden;
border-radius:20px;
background:white;
box-shadow:0 5px 20px rgba(0,0,0,.08);
}

.especialidad img{
width:100%;
height:250px;
object-fit:cover;
}

.especialidad h3{
text-align:center;
padding:20px;
}

/* =========================
NOSOTROS
========================= */

.nosotros{
padding:100px 10%;
}

.nosotros-contenido{
display:grid;
grid-template-columns:1fr 1fr;
gap:50px;
align-items:center;
}

.nosotros-imagen img{
width:100%;
border-radius:20px;
}

/* =========================
EQUIPO
========================= */

.equipo{
background:#f8fbfa;
padding:100px 10%;
}

.equipo-grid{
display:flex;
justify-content:center;
gap:40px;
flex-wrap:wrap;
}

.doctor{
text-align:center;
}

.doctor img{
width:250px;
height:250px;
border-radius:50%;
object-fit:cover;
margin-bottom:15px;
}

/* =========================
GALERIA
========================= */

.galeria{
padding:100px 10%;
}

.galeria-grid{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(250px,1fr));
gap:20px;
}

.galeria-grid img{
width:100%;
height:280px;
object-fit:cover;
border-radius:15px;
transition:.3s;
}

.galeria-grid img:hover{
transform:scale(1.05);
}

/* =========================
TESTIMONIOS
========================= */

.testimonios{
background:#f8fbfa;
padding:100px 10%;
}

.testimonios-grid{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(300px,1fr));
gap:25px;
}

.testimonio{
background:white;
padding:30px;
border-radius:20px;
box-shadow:0 5px 15px rgba(0,0,0,.08);
}

/* =========================
CTA
========================= */

.cta{
background:#DC143C;
color:white;
text-align:center;
padding:100px 20px;
}

.cta h2{
font-size:2.5rem;
margin-bottom:15px;
}

.cta p{
margin-bottom:25px;
}

/* =========================
CONTACTO
========================= */

.contacto{
padding:100px 10%;
}

.contacto-grid{
display:grid;
grid-template-columns:1fr 1fr;
gap:40px;
}

.contacto a{
color:#DC143C;
text-decoration:none;
}

/* =========================
MAPA
========================= */

.ubicacion{
padding:100px 10%;
}

.ubicacion h2{
text-align:center;
margin-bottom:30px;
color:#DC143C;
}

.mapa iframe{
width:100%;
height:500px;
border:none;
border-radius:20px;
}

/* =========================
FOOTER
========================= */

footer{
background:#DC143C;
color:white;
text-align:center;
padding:50px 20px;
}

.footer-logo{
width:200px;
height:100px;
border-radius:50%;
object-fit:cover;
margin-bottom:15px;
}

footer p{
margin:8px 0;
}

/* =========================
BOTONES FLOTANTES
========================= */

.whatsapp{
position:fixed;
bottom:25px;
right:25px;
width:65px;
height:65px;
background:#25d366;
color:white;
border-radius:50%;
display:flex;
justify-content:center;
align-items:center;
font-size:2rem;
text-decoration:none;
z-index:999;
box-shadow:0 5px 15px rgba(0,0,0,.3);
}

.instagram-float{
position:fixed;
bottom:100px;
right:25px;
width:65px;
height:65px;
background:#E1306C;
color:white;
border-radius:50%;
display:flex;
justify-content:center;
align-items:center;
font-size:2rem;
text-decoration:none;
z-index:999;
box-shadow:0 5px 15px rgba(0,0,0,.3);
}

/* =========================
RESPONSIVE
========================= */

@media(max-width:900px){

```
.nosotros-contenido,
.contacto-grid{
    grid-template-columns:1fr;
}

.hero h1{
    font-size:2rem;
}

nav ul{
    flex-wrap:wrap;
    justify-content:center;
}

.contenedor-header{
    flex-direction:column;
    gap:15px;
}
```

}
nav a.activo{
    color:#DC143C;
    font-weight:700;
}

#btn-arriba:hover{
    background:#0a6653;
}