root{
  --bg:#f7f7f5;
  --card:#ffffff;
  --muted:#777;
  --text:#111;
  --primary:#f7a8a8;
  --accent:#8fbfb2;
  --radius:18px;
  color-scheme: light;
}

*{box-sizing:border-box}
html,body{
  margin:0;
  padding:0;
  font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;
  background:var(--bg);
  color:var(--text);
}

/* NAVBAR */
.nav{
  position:sticky;
  top:0;
  backdrop-filter:saturate(150%) blur(10px);
  background:rgba(247,247,245,0.92);
  border-bottom:1px solid #ddd;
  z-index:10;
}
.nav .inner{
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:14px 24px;
}
.brand{display:flex;align-items:center;gap:12px}
.brand .logo{
  width:70px;
  height:auto;
  display:block;
}
.brand .logo img{
  width:100%;
  height:auto;
  display:block;
}
.nav a{
  color:var(--text);
  text-decoration:none;
  margin-left:18px;
  opacity:.9;
}
.nav a:hover{opacity:1}

/* HERO — sin parallax, sin overlay, sin texto dentro */
.hero {
  width:100%;
  min-height:auto;
  margin:0;
  padding:0;
  display:block;
}
.hero img {
  width:100%;
  height:auto;
  display:block;
  object-fit:cover;
}

/* CTA debajo del banner */
.hero-cta {
  text-align:center;
  padding:32px 24px 10px;
}

/* BOTONES */
.btn{
  padding:12px 16px;
  border-radius:12px;
  border:1px solid #ccc;
  background:#ffffff;
  color:var(--text);
  text-decoration:none;
  font-weight:600;
  display:inline-block;
}
.btn.primary{
  background:linear-gradient(135deg,var(--primary),var(--accent));
  color:#ffffff;
  border:0;
}
.btn:hover{
  transform:translateY(-1px);
}

/* SECCIONES Y CARDS */
.section{padding:36px 24px}
.section h2{
  font-size:26px;
  margin:0 0 12px;
  color:#111;
}
.card{
  background:var(--card);
  border:1px solid #e4e4e4;
  border-radius:var(--radius);
  padding:22px;
}
.grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:14px;
}
@media(max-width:1024px){.grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.grid{grid-template-columns:1fr}}

.category .img{
  aspect-ratio:4/3;
  background:#eee;
  width:100%;
  object-fit:cover;
}
.category .body{padding:14px}
.category .body h3{
  margin:0 0 6px;
  font-size:16px;
  color:#111;
}

/* GALERÍA */
.gallery{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:12px;
}
.gallery img{
  width:100%;
  aspect-ratio:1/1;
  object-fit:cover;
  border-radius:14px;
  border:1px solid #e0e0e0;
}
@media(max-width:900px){.gallery{grid-template-columns:repeat(3,1fr)}}
@media(max-width:600px){.gallery{grid-template-columns:repeat(2,1fr)}}

/* FOOTER */
.footer{
  padding:36px 24px;
  color:var(--muted);
  border-top:1px solid #e0e0e0;
  text-align:center;
}
