/* ============================
   NAVBAR
   ============================ */
.paz_nav {
  height: 100px;
}

/* ============================
   UTILIDADES BOOTSTRAP AJUSTADAS
   ============================ */
.py-5 {
  padding-top: 10rem !important;
  color: rgb(255, 255, 255);
}

/* ============================
   NAV LINK ACTIVO
   ============================ */
.nav-link.active {
  color: rgb(0, 32, 37) !important;
  position: relative;
}

.nav-link.active::after {
  content: "";
  position: absolute;
  bottom: -4px;
  left: 0;
  right: 0;
  height: 3px;
  background-color: rgb(41, 122, 113);
}

/* ============================
   LOGO / SLOGAN
   ============================ */
.pz_slogan {
  margin-left: 1rem !important;
  color: gray;
  font-size: 1.2rem;
  font-weight: 400 !important;
}

/* ============================
   HERO PRINCIPAL (ÚNICO 100vh)
   ============================ */
.hero {
  background-image: url('../images/hero_02b.jpg');
  background-size: cover;
  background-position: center;
  min-height: 100vh;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  position: relative;
  color: white;
}

.hero::before {
  content: '';
  position: absolute;
  inset: 0;
  background-color: rgba(0, 0, 0, 0.48);
  z-index: 0;
}


.hero-content-home {
  padding-left: 150px;
  padding-right: 150px;
}

.hero-content {
  position: relative;
  z-index: 1;
}

/* ============================
   SECCIONES CON FONDO (CORREGIDAS)
   ============================ */
.hero_problematica {
  background-image: url('../images/hero_03.jpg');
}

.hero_enfoque {
  background-image: url('../images/hero_04.jpg');
}

.hero_problematica,
.hero_enfoque {
  background-size: cover;
  background-position: center;
  min-height: 100vh;     /* ✔ puede crecer */
  height: auto;          /* ✔ clave */
  padding: 4rem 0;       /* ✔ espacio interno */
  position: relative;
  color: white;
}

/* Overlay oscuro */
.hero_problematica::before,
.hero_enfoque::before {
  content: '';
  position: absolute;
  inset: 0;
  background-color: rgba(0, 0, 0, 0.48);
  z-index: 0;
}

/* Asegura que el contenido quede arriba */
.hero_problematica > *,
.hero_enfoque > * {
  position: relative;
  z-index: 1;
}

/* ============================
   FORMULARIO
   ============================ */
.bg-form {
  background-color: rgb(0, 32, 37) !important;
}

/* ============================
   TIPOGRAFÍA
   ============================ */
.titulo_problematica,
.titulo_enfoque {
  font-size: 1.7rem;
}

.texto_problematica,
.texto_enfoque {
  font-size: 1.3rem;
  font-weight: 300;
  line-height: 1.5rem;
}

.texto_contacto {
  font-size: 1.1rem;
}

/* ============================
   RESALTADOR
   ============================ */
.resaltador {
  background-color: rgb(41, 122, 113);
  padding: 0.5rem 2.5rem;
  border-radius: 1rem;
  -webkit-box-decoration-break: clone;
  box-decoration-break: clone;
  font-size: 3rem;
  line-height: 4rem;
}

/* ============================
   BOTÓN
   ============================ */
.btn-primary {
  --bs-btn-bg: rgb(41, 122, 113);
  --bs-btn-border-color: rgb(41, 122, 113);
  --bs-btn-hover-color: white;
  --bs-btn-hover-bg: black;
  --bs-btn-hover-border-color: white;
}

/* ============================
   TEXTO MUTED
   ============================ */
.text-muted {
  color: white !important;
  text-align: center;
}

.container_problematica,
.container_enfoque {
  padding-top: 5rem;
}