/* =========================================================
   V34 — correcciones visibles y definitivas 11-08-2026
   Alcance estricto: Nosotros, Reseñas de Inicio y menú responsive.
   Esta hoja se carga AL FINAL para evitar sobrescrituras posteriores.
   ========================================================= */

/* A. NOSOTROS — lienzo sin franja/sombra lateral ni desbordes reales. */
body.pagina-nosotros {
  width: 100%;
  max-width: 100%;
  margin: 0;
  padding: 0;
  background: #fff;
  overflow-x: clip;
}
body.pagina-nosotros .nosotros-pagina,
body.pagina-nosotros .nos-seccion,
body.pagina-nosotros .nos-container {
  box-sizing: border-box;
  min-width: 0;
}
body.pagina-nosotros .nosotros-pagina {
  width: 100%;
  max-width: 100%;
  margin: 0;
  box-shadow: none;
  filter: none;
}

/* B. Header sticky de Nosotros: mismas medidas del header global de Inicio. */
body.pagina-nosotros .encabezado.fijo .menu-envuelto {
  position: fixed !important;
  inset: 0 0 auto 0 !important;
  width: 100% !important;
  z-index: 1500 !important;
  background: #fff !important;
  box-shadow: var(--sombra) !important;
}
@media (min-width:1121px) {
  body.pagina-nosotros .encabezado.fijo { padding-bottom: 96px !important; }
}
@media (min-width:1121px) and (max-width:1540px) {
  body.pagina-nosotros .encabezado.fijo { padding-bottom: 90px !important; }
}
@media (max-width:1120px) and (min-width:721px) {
  body.pagina-nosotros .encabezado.fijo { padding-bottom: 102px !important; }
}
@media (max-width:720px) {
  body.pagina-nosotros .encabezado.fijo { padding-bottom: 88px !important; }
}

/* C. WhatsApp y volver arriba: exactamente dentro del contenedor flotante global. */
body.pagina-nosotros .acciones-flotantes {
  position: fixed !important;
  right: 18px !important;
  bottom: 18px !important;
  left: auto !important;
  top: auto !important;
  z-index: 6500 !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  gap: 10px !important;
  width: auto !important;
  height: auto !important;
  pointer-events: none !important;
}
body.pagina-nosotros .acciones-flotantes .whatsapp-flotante {
  position: relative !important;
  inset: auto !important;
  display: grid !important;
  visibility: visible !important;
  opacity: 1 !important;
  pointer-events: auto !important;
}
body.pagina-nosotros .acciones-flotantes .volver-arriba {
  position: relative !important;
  inset: auto !important;
  pointer-events: auto !important;
}
@media (max-width:720px) {
  body.pagina-nosotros .acciones-flotantes {
    right: 14px !important;
    bottom: calc(14px + env(safe-area-inset-bottom,0px)) !important;
    gap: 9px !important;
  }
}

/* D. Primera sección: más ancho para texto y fotografía ligeramente menor.
      El título queda en dos líneas en PC/laptop. */
body.pagina-nosotros .nos-hero {
  padding-top: clamp(42px,4vw,60px) !important;
  padding-bottom: clamp(24px,2.4vw,36px) !important;
}
body.pagina-nosotros .nos-hero-grid {
  grid-template-columns: minmax(0,1.08fr) minmax(0,.92fr) !important;
  gap: clamp(28px,3.2vw,44px) !important;
}
body.pagina-nosotros .nos-hero h1 {
  font-size: clamp(38px,3.55vw,56px) !important;
  line-height: 1.06 !important;
  text-wrap: initial !important;
}
body.pagina-nosotros .nos-titulo-linea { white-space: nowrap; }
body.pagina-nosotros .nos-hero-foto {
  width: 100% !important;
  max-width: 590px !important;
  justify-self: end !important;
}

/* E. Espaciado moderado y consistente entre bloques de Nosotros. */
body.pagina-nosotros .nos-seccion { padding-block: clamp(44px,4.2vw,66px); }
body.pagina-nosotros .nos-encabezado-seccion { margin-bottom: clamp(24px,2.4vw,34px); }
body.pagina-nosotros .nos-timeline {
  padding-top: clamp(28px,2.8vw,42px) !important;
  padding-bottom: clamp(40px,4vw,60px) !important;
}
body.pagina-nosotros .nos-metricas { padding-bottom: clamp(40px,4vw,60px) !important; }
body.pagina-nosotros .nos-propuesta { padding-top: clamp(40px,4vw,60px) !important; }
body.pagina-nosotros .nos-mision-vision,
body.pagina-nosotros .nos-equipo,
body.pagina-nosotros .nos-resenas {
  padding-top: clamp(42px,4vw,62px) !important;
}
body.pagina-nosotros .nos-resenas { padding-bottom: clamp(46px,4.4vw,68px) !important; }

/* F. Menú móvil/tablet: el CTA Agendar Asesoría fue eliminado del HTML.
      Portal Cliente conserva íntegramente sus estilos actuales. */
@media (max-width:1120px) {
  .menu-principal .menu-zona > #agendarEncabezado,
  .menu-principal .menu-zona > a[href*="formulario=reunion"] {
    display: none !important;
  }
}

/* G. RESEÑAS INICIO — responsive real sin alterar escritorio. */
@media (max-width:699px) {
  .seccion-resenas {
    width: 100% !important;
    max-width: 100% !important;
    overflow: hidden !important;
  }
  .seccion-resenas .resenas-contenedor {
    width: calc(100% - 28px) !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin-inline: auto !important;
    padding-inline: 0 !important;
    box-sizing: border-box !important;
  }
  .seccion-resenas .resenas-encabezado {
    display: flex !important;
    flex-direction: column !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    gap: 22px !important;
    margin: 0 0 26px !important;
  }
  .seccion-resenas .resenas-titulos {
    order: 1 !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    text-align: center !important;
  }
  .seccion-resenas .resenas-calificacion {
    order: 2 !important;
    width: min(100%,286px) !important;
    max-width: 286px !important;
    min-width: 0 !important;
    margin: 0 auto !important;
    box-sizing: border-box !important;
  }
  .seccion-resenas .resenas-titulos .etiqueta-seccion {
    width: fit-content !important;
    max-width: calc(100% - 12px) !important;
    margin-inline: auto !important;
  }
  .seccion-resenas .resenas-titulos h2 {
    width: 100% !important;
    max-width: 100% !important;
    margin: 14px auto 12px !important;
    font-size: clamp(30px,8.5vw,38px) !important;
    line-height: 1.04 !important;
    letter-spacing: -.025em !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
  }
  .seccion-resenas .resenas-titulos > p:last-child {
    width: 100% !important;
    max-width: 34rem !important;
    margin: 0 auto !important;
    font-size: 16px !important;
    line-height: 1.5 !important;
  }
  .seccion-resenas .resenas-carrusel-zona {
    --resenas-visibles: 1 !important;
    display: grid !important;
    grid-template-columns: 42px minmax(0,1fr) 42px !important;
    gap: 4px !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin-inline: 0 !important;
    box-sizing: border-box !important;
  }
  .seccion-resenas .resenas-viewport {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    padding: 10px 2px 16px !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
  }
  .seccion-resenas .resenas-track {
    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;
  }
  .seccion-resenas .resena-tarjeta {
    flex: 0 0 100% !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
  }
  .seccion-resenas .resenas-nav {
    width: 40px !important;
    height: 40px !important;
  }
  .seccion-resenas .resenas-cta {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
  }
}

@media (max-width:1024px) {
  body.pagina-nosotros .nos-hero-grid {
    grid-template-columns: 1fr !important;
    gap: 32px !important;
  }
  body.pagina-nosotros .nos-hero-copy { max-width: 820px; margin-inline: auto; }
  body.pagina-nosotros .nos-hero-foto {
    max-width: 820px !important;
    justify-self: center !important;
    margin-inline: auto !important;
  }
  body.pagina-nosotros .nos-titulo-linea { white-space: normal; }
}

@media (max-width:720px) {
  body.pagina-nosotros .nos-seccion { padding-block: 36px !important; }
  body.pagina-nosotros .nos-hero { padding-top: 30px !important; padding-bottom: 22px !important; }
  body.pagina-nosotros .nos-timeline { padding-top: 24px !important; padding-bottom: 34px !important; }
  body.pagina-nosotros .nos-metricas { padding-bottom: 34px !important; }
  body.pagina-nosotros .nos-propuesta,
  body.pagina-nosotros .nos-mision-vision,
  body.pagina-nosotros .nos-equipo,
  body.pagina-nosotros .nos-resenas { padding-top: 36px !important; }
  body.pagina-nosotros .nos-encabezado-seccion { margin-bottom: 24px !important; }
}

/* V38 — Header desktop/laptop unificado: CTA Agendar Asesoría visible en todas las páginas públicas. */
@media (min-width: 1121px) {
  .menu-principal .menu-zona > .encabezado-cta-agendar {
    display: inline-flex !important;
    flex: 0 0 auto;
    white-space: nowrap;
  }
}
@media (max-width: 1120px) {
  .menu-principal .menu-zona > .encabezado-cta-agendar {
    display: none !important;
  }
}
