/* =========================================================
   SEIRV · Nosotros · ajuste responsive final · 2026-08-18
   Solo corrige escala, saltos de línea y comportamiento móvil.
   No modifica identidad visual, colores, contenido ni estructura.
   ========================================================= */

/* Seguridad general de esta página. */
html,body{max-width:100%;overflow-x:hidden}
/* La clase .container global vuelve a centrar con margin:auto; restituimos
   el centrado real del bloque fullwidth después del hardening global. */
.fullwidth-container{
  margin-left:50%!important;
  margin-right:0!important;
  transform:translateX(-50%)!important;
  padding-inline:0!important;
}

main,.section,.container,.fullwidth-container,
.seirv-problem-card,.seirv-problem-lead,.seirv-problem-copy,
.seirv-values-block,.seirv-process-shell,.values-carousel-shell,
.values-stage,.values-stage-media,.values-stage-copy,
.coverage,.coverage-copy,.coverage-visual{min-width:0;max-width:100%}

/* Diferenciador: título más pequeño y exactamente en dos renglones. */
.seirv-problem-lead{container-type:inline-size}
.seirv-problem-lead h3{
  max-width:none!important;
  width:100%;
  margin:20px 0 0!important;
  font-size:40px;
  font-size:clamp(22px,9.7cqw,40px)!important;
  line-height:1.02!important;
  letter-spacing:-.045em!important;
  overflow:visible!important;
}
.seirv-problem-lead h3 .seirv-problem-title-line{
  display:block!important;
  color:inherit!important;
  font:inherit!important;
  letter-spacing:inherit!important;
  text-transform:none!important;
  white-space:nowrap!important;
  width:auto!important;
}
.seirv-problem-lead h3 .seirv-problem-title-line::before{content:none!important}

/* Tablet: mantiene el lenguaje visual, solo evita cortes y desbordes. */
@media (max-width:980px){
  .nosotros-hero-title{max-width:100%!important}
  .nosotros-hero-title span{white-space:normal!important}
  .seirv-institutional-head>*{min-width:0}
  .about-immersive-shell,.seirv-problem-card,.seirv-process-title,
  .values-stage,.coverage.coverage-enhanced{min-width:0!important}
  .about-immersive-copy,.seirv-problem-copy,.values-stage-copy,.coverage-copy{min-width:0!important}
  .about-immersive-media img,.values-slide img,.coverage-map-design-image{max-width:100%;object-position:center}
  .seirv-problem-tags{max-width:100%}
}

/* Móvil: 320–720 px. Mismo diseño, proporciones más seguras. */
@media (max-width:720px){
  .inner-hero .container{min-width:0!important}
  .nosotros-hero-title{
    width:100%!important;
    max-width:100%!important;
    gap:.08em!important;
  }
  .nosotros-hero-title span{
    white-space:normal!important;
    overflow-wrap:normal!important;
    word-break:normal!important;
  }

  .seirv-institutional-section .container{min-width:0!important}
  .seirv-institutional-head{gap:14px!important}
  .seirv-institutional-head p{max-width:100%!important}
  .seirv-mv-grid{grid-template-columns:1fr!important;width:100%!important}
  .seirv-mv-card{width:100%!important;min-width:0!important}
  .seirv-mv-card h3,.seirv-mv-card p{max-width:100%!important}

  .about-immersive-shell{grid-template-columns:1fr!important;width:100%!important}
  .about-immersive-media{width:100%!important;overflow:hidden!important}
  .about-immersive-copy{width:100%!important}
  .about-immersive-copy h2,.about-immersive-copy p{max-width:100%!important}
  .about-immersive-points{width:100%!important}
  .about-immersive-points article{min-width:0!important}
  .about-immersive-copy>.btn{width:100%!important;justify-content:center!important}

  .seirv-problem-card{grid-template-columns:1fr!important;width:100%!important;gap:14px!important}
  .seirv-problem-lead{width:100%!important;min-width:0!important}
  .seirv-problem-lead h3{
    font-size:26px;
    font-size:clamp(22px,9.7cqw,32px)!important;
    margin-top:17px!important;
  }
  .seirv-problem-copy{width:100%!important}
  .seirv-problem-copy p{max-width:100%!important;overflow-wrap:break-word}
  .seirv-problem-tags{display:flex!important;flex-wrap:wrap!important;gap:7px!important;width:100%!important}
  .seirv-problem-tags span{max-width:100%!important;padding:8px 10px!important;font-size:11px!important}

  .seirv-values-block,.seirv-process-shell{width:100%!important}
  .seirv-subhead,.seirv-process-title{width:100%!important;min-width:0!important}
  .seirv-subhead h3,.seirv-process-title h3{max-width:100%!important}
  .seirv-values-grid,.seirv-process-grid{grid-template-columns:1fr!important;width:100%!important}
  .seirv-value-card,.seirv-process-step{width:100%!important;min-width:0!important}
  .seirv-process-step h4,.seirv-process-step p{max-width:100%!important}

  .values-carousel-shell{width:100%!important;overflow:hidden!important}
  .values-stage{grid-template-columns:1fr!important;width:100%!important;gap:12px!important}
  .values-stage-media{width:100%!important;min-width:0!important}
  .values-slide-overlay{max-width:calc(100% - 24px)!important}
  .values-slide-overlay h3,.values-slide-overlay p{max-width:100%!important}
  .values-stage-copy{width:100%!important;min-width:0!important;left:auto!important;right:auto!important;bottom:auto!important}
  .values-stage-copy h3,.values-stage-copy p{max-width:100%!important}
  .values-stage-controls{display:grid!important;grid-template-columns:1fr!important;width:100%!important}
  .values-nav{width:100%!important;min-width:0!important}
  .values-selector-grid{grid-template-columns:1fr!important;width:100%!important}
  .values-selector{width:100%!important;min-width:0!important}
  .values-selector>div{min-width:0!important}
  .values-selector b,.values-selector small{max-width:100%!important;overflow-wrap:break-word}

  .seirv-philosophy{width:100%!important;min-width:0!important}
  .seirv-philosophy-copy{min-width:0!important}
  .seirv-philosophy-copy blockquote{max-width:100%!important;overflow-wrap:break-word}

  .coverage.coverage-enhanced{grid-template-columns:1fr!important;width:100%!important}
  .coverage-copy{width:100%!important}
  .coverage-copy h2,.coverage-copy p{max-width:100%!important}
  .coverage-copy>.btn{width:100%!important;justify-content:center!important}
  .coverage-points{width:100%!important}
  .coverage-visual,.coverage-map-shell,.coverage-map-design-wrap{width:100%!important;min-width:0!important}
  .coverage-map-design-image{display:block!important;width:100%!important;height:auto!important;max-width:100%!important}
}

/* Teléfonos angostos: evita cualquier corte aun con 320px de ancho. */
@media (max-width:430px){
  .seirv-problem-card{padding:14px!important}
  .seirv-problem-lead{padding:16px!important;border-radius:19px!important}
  .seirv-problem-lead h3{
    font-size:23px;
    font-size:clamp(21px,9.5cqw,27px)!important;
  }
  .seirv-problem-copy p{font-size:14px!important;line-height:1.68!important}
  .seirv-problem-tags span{font-size:10.5px!important;padding:7px 9px!important}

  .about-immersive-shell{padding:12px!important}
  .about-immersive-media{min-height:380px!important}
  .about-immersive-metric{max-width:166px!important;padding:12px!important}
  .about-immersive-metric b{font-size:25px!important}
  .about-immersive-metric small{font-size:11px!important;line-height:1.4!important}

  .values-stage-media{min-height:330px!important}
  .values-slide-overlay{left:12px!important;right:12px!important;bottom:12px!important;padding:15px!important}
  .values-slide-overlay h3{font-size:25px!important}

  .coverage-map-design-wrap{min-height:220px!important}
}

/* Landscape de baja altura: no deja bloques gigantes ni contenido escondido. */
@media (max-width:980px) and (orientation:landscape) and (max-height:620px){
  .about-immersive-media,.values-stage-media{min-height:320px!important}
  .seirv-problem-lead h3{font-size:clamp(24px,7.7cqw,34px)!important}
}
