/*
 * INFISAD Enterprise · 11.9.43
 * Tipografía pública justificada + títulos equilibrados.
 *
 * Regla visual:
 * - párrafos, descripciones y listas: justificados;
 * - títulos: centrados para evitar apariencia cargada a la izquierda;
 * - navegación, botones, badges, métricas y formularios: no se justifican.
 * - nunca partir palabras arbitrariamente.
 */

.public-site,
.public-site *{
  word-break:normal;
  overflow-wrap:normal;
  hyphens:none;
}

/* ------------------------------ */
/* CUERPO DE TEXTO JUSTIFICADO     */
/* ------------------------------ */
.public-site main p:not(.eyebrow),
.public-site main li,
.public-site .service-card-content p,
.public-site .category-intro p,
.public-site .section-heading p,
.public-site .hero-copy>p:not(.eyebrow),
.public-site .public40-lead,
.public-site .public41-build-copy>p:not(.eyebrow),
.public-site .public41-tool-grid span,
.public-site .public41-system-modules span,
.public-site .public40-software-note,
.public-site .public41-build-note,
.public-site .contact-box p,
.public-site .about-copy p,
.public-site .technology-copy p,
.public-site .services-hero p:not(.eyebrow),
.public-site .service-category-showcase p,
.public-site .public-footer p{
  text-align:justify!important;
  text-justify:inter-word!important;
  word-break:normal!important;
  overflow-wrap:normal!important;
  hyphens:none!important;
}

/* Listas: conservar viñeta y justificación profesional. */
.public-site main ul,
.public-site main ol{
  text-align:initial!important;
}

.public-site main li{
  padding-right:2px;
}

/* ------------------------------ */
/* TÍTULOS: NO CARGADOS A IZQUIERDA */
/* ------------------------------ */
.public-site main h1,
.public-site main h2,
.public-site main h3,
.public-site .section-heading h2,
.public-site .category-intro h2,
.public-site .service-card-content h3,
.public-site .contact-box h2{
  text-align:center!important;
  text-wrap:balance;
  word-break:normal!important;
  overflow-wrap:normal!important;
  hyphens:none!important;
}

/* Hero: centrar el bloque para que título y copy trabajen juntos. */
.public-site .corporate-hero .hero-copy,
.public-site .public41-software-hero .hero-copy{
  margin-left:auto!important;
  margin-right:auto!important;
}

.public-site .corporate-hero .hero-actions,
.public-site .public41-software-hero .hero-actions,
.public-site .corporate-hero .hero-trust,
.public-site .public41-software-hero .hero-trust{
  justify-content:center!important;
}

/* Servicios: encabezados de categoría equilibrados. */
.public-site .category-intro>div:first-child{
  min-width:0!important;
}

.public-site .category-intro .eyebrow,
.public-site .services-hero .eyebrow,
.public-site .service-card-content small{
  text-align:center!important;
}

.public-site .service-card-content{
  min-width:0!important;
}

/* Software a medida: copy centrado en títulos, justificado en descripción. */
.public-site .public41-build-copy .eyebrow{
  text-align:center!important;
}

.public-site .public41-tool-grid b,
.public-site .public41-system-modules b{
  text-align:center!important;
}

/* Footer: texto descriptivo justificado y títulos centrados. */
.public-site .public-footer h3{
  text-align:center!important;
}

/* ------------------------------ */
/* EXCLUSIONES: NO DEFORMAR UI     */
/* ------------------------------ */
.public-site .public-menu a,
.public-site .public-topbar a,
.public-site .public-topbar span,
.public-site .gold-button,
.public-site .outline-button,
.public-site button,
.public-site input,
.public-site select,
.public-site textarea,
.public-site .eyebrow,
.public-site .metrics-grid span,
.public-site .metrics-grid strong,
.public-site .public40-visit-counter span,
.public-site .public40-visit-counter small,
.public-site .public40-capabilities span,
.public-site .public41-process-flow strong,
.public-site .public41-system-label,
.public-site .service-icon,
.public-site .service-card-content small,
.public-site .footer-bottom,
.public-site .footer-grid a,
.public-site .footer-grid>div>span{
  text-align:center!important;
  text-justify:auto!important;
}

/* No estirar enlaces de texto dentro de tarjetas. */
.public-site .service-card-content>a{
  display:block;
  text-align:center!important;
}

/* ------------------------------ */
/* PANTALLAS ESTRECHAS             */
/* ------------------------------ */
@media(max-width:700px){
  .public-site main p:not(.eyebrow),
  .public-site main li,
  .public-site .service-card-content p,
  .public-site .category-intro p,
  .public-site .hero-copy>p:not(.eyebrow),
  .public-site .public41-build-copy>p:not(.eyebrow),
  .public-site .public41-tool-grid span,
  .public-site .public41-system-modules span{
    text-align:justify!important;
    text-justify:inter-word!important;
  }

  .public-site main h1,
  .public-site main h2,
  .public-site main h3{
    text-align:center!important;
  }
}
