/* HERO Urbanismo */
.hero-urbanismo {
  height: 75vh;
  background: url("../images/hero/pexels-adrien-olichon-1257089-2387542.jpg") center/cover no-repeat fixed;
  position: relative;
}
.hero-urbanismo .overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(rgba(0,0,0,0.5), rgba(0,0,0,0.7));
}
.hero-urbanismo h1,
.hero-urbanismo p {
  z-index: 2;
  position: relative;
}

/* Títulos Generales */
.section-title {
  font-size: 2.3rem;
  font-weight: 700;
  color: #333;
  margin-bottom: 25px;
  position: relative;
}
.section-title:after {
  content: "";
  width: 70px;
  height: 4px;
  background: #007bff; /* azul urbanismo */
  display: block;
  margin: 10px auto 0 auto;
  border-radius: 2px;
}

/* Info Cards */
.info-card {
  background: #fff;
  border-radius: 12px;
  padding: 30px;
  transition: .3s ease;
  box-shadow: 0 4px 15px rgba(0,0,0,0.1);
  text-align: center;
}
.info-card:hover {
  transform: translateY(-6px);
  box-shadow: 0 10px 25px rgba(0,0,0,0.15);
}
.info-card i {
  font-size: 2.7rem;
  color: #007bff;
}

/* Actividad Card */
.actividad-card {
  background: #fff;
  border-left: 4px solid #007bff;
  border-radius: 12px;
  padding: 20px;
  transition: .3s ease;
}
.actividad-card:hover {
  transform: translateY(-5px);
  box-shadow: 0 6px 20px rgba(0,0,0,0.12);
}
.actividad-img {
  width: 100%;
  height: 200px;
  object-fit: cover;
  border-radius: 10px;
}

/* Evento Card */
.evento-card {
  background: #fff;
  border-top: 4px solid #007bff;
  border-radius: 12px;
  padding: 20px;
  transition: .3s ease;
}
.evento-card:hover {
  transform: translateY(-6px);
  box-shadow: 0 6px 20px rgba(0,0,0,0.12);
}
.evento-card .evento-icon {
  font-size: 2.4rem;
  color: #007bff;
  margin-bottom: 12px;
}

/* Galería */
.galeria-item {
  border-radius: 14px;
  overflow: hidden;
  background: #fff;
  transition: transform .25s ease;
}
.galeria-item:hover {
  transform: translateY(-6px);
  box-shadow: 0 10px 22px rgba(0,0,0,0.18);
}
.cultura-galeria-img {
  width: 100%;
  height: 220px;
  object-fit: cover;
}

/* Noticias Tarjetas */
.cultura-noticia {
  border-radius: 12px;
  overflow: hidden;
  background: #fff;
  transition: all .3s ease;
  box-shadow: 0 3px 12px rgba(0,0,0,0.1);
}
.cultura-noticia:hover {
  transform: translateY(-5px);
}
.cultura-noticia img {
  width: 100%;
  height: 200px;
  object-fit: cover;
}
.cultura-noticia-body {
  padding: 18px;
}
.cultura-noticia-body h5 {
  font-size: 1.1rem;
  font-weight: 700;
}

/* Animaciones Fade */
.fade-in {
  opacity: 0;
  transform: translateY(25px);
  transition: all .7s ease-out;
}
.fade-in.in-view {
  opacity: 1;
  transform: translateY(0);
}
