/* ============================================================
   CS Integrador · Home comercial compacto v1.2.23
   Alcance: solo Home.
   - Retira protagonismo técnico del Home.
   - Reduce separación vertical sin alterar jerarquía ni responsive.
   - Convierte SOUT PDF en una prueba comercial compacta.
   ============================================================ */

.home-compact {
  --home-section-space: clamp(46px, 4.6vw, 62px);
  --home-section-space-mobile: 34px;
}

/* Densidad editorial: conserva aire, evita vacíos largos entre mensajes. */
.home-compact .problem-section,
.home-compact .commercial-journey-section,
.home-compact .experience-section,
.home-compact .about-home-section,
.home-compact .work-method-section,
.home-compact .portal-trust-section,
.home-compact .solutions-section,
.home-compact .faq-section {
  padding-top: var(--home-section-space);
  padding-bottom: var(--home-section-space);
}

.home-compact .commercial-snapshot-section {
  padding-bottom: 0;
}

.home-compact .commercial-snapshot-section + .problem-section {
  padding-top: clamp(38px, 3.8vw, 50px);
}

.home-compact .section-heading {
  margin-bottom: clamp(18px, 2vw, 26px);
}

.home-compact .section-heading > p:last-child {
  margin-top: 10px;
}

.home-compact .experience-disclaimer {
  margin-top: 18px;
}

.home-compact .about-home-grid,
.home-compact .portal-grid {
  gap: clamp(26px, 4vw, 48px);
}

.home-compact .faq-layout {
  gap: clamp(24px, 3.6vw, 40px);
}

.home-compact .cta-section {
  padding-top: clamp(48px, 4.8vw, 62px);
  padding-bottom: clamp(48px, 4.8vw, 62px);
}

/* SOUT PDF: franja comercial breve. Los detalles permanecen en soluciones.html. */
.home-compact .solutions-section.home-sout-compact {
  padding-top: clamp(38px, 4vw, 50px);
  padding-bottom: clamp(38px, 4vw, 50px);
}

.home-compact .solution-home-strip.solution-home-strip-compact {
  overflow: visible !important;
  padding: 0 !important;
  border: 1px solid var(--line, #d9e3ea) !important;
  border-radius: 18px !important;
  background: #fff !important;
  box-shadow: none !important;
}

.home-compact .solution-home-strip-compact .solution-home-copy.solution-home-copy-compact {
  display: grid !important;
  grid-template-columns: minmax(165px, .46fr) minmax(320px, 1.35fr) auto !important;
  grid-template-areas: "heading description actions" !important;
  align-items: center !important;
  gap: 20px 28px !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 22px 26px !important;
}

.home-compact .solution-home-strip-compact .solution-home-heading {
  grid-area: heading;
  min-width: 0;
}

.home-compact .solution-home-strip-compact .solution-label {
  display: inline-flex !important;
  margin: 0 0 7px !important;
  padding: 5px 9px !important;
  border-radius: 999px !important;
  background: #f2c25d !important;
  color: var(--primary-900, #0e3a56) !important;
  font-size: .66rem !important;
  font-weight: 850 !important;
  letter-spacing: .07em !important;
  line-height: 1 !important;
  text-transform: uppercase !important;
}

.home-compact .solution-home-strip-compact .solution-home-heading h3 {
  margin: 0 !important;
  color: var(--primary-900, #0e3a56) !important;
  font-size: clamp(1.55rem, 2.2vw, 2rem) !important;
  line-height: 1.05 !important;
  letter-spacing: -.015em !important;
}

.home-compact .solution-home-strip-compact .solution-home-copy > p {
  grid-area: description;
  max-width: 720px !important;
  margin: 0 !important;
  color: var(--muted, #66788a) !important;
  font-size: .93rem !important;
  line-height: 1.55 !important;
}

.home-compact .solution-home-strip-compact .solution-home-actions {
  grid-area: actions;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  gap: 7px;
  min-width: max-content;
}

.home-compact .solution-home-strip-compact .solution-home-plans {
  color: #536d7f;
  font-size: .8rem;
  font-weight: 750;
  white-space: nowrap;
}

.home-compact .solution-home-strip-compact .solution-home-actions .text-link {
  display: inline-flex !important;
  margin: 0 !important;
  color: #2563eb !important;
  font-size: .88rem !important;
  font-weight: 800 !important;
  text-decoration: none !important;
  white-space: nowrap;
}

.home-compact .solution-home-strip-compact .solution-home-actions .text-link:hover,
.home-compact .solution-home-strip-compact .solution-home-actions .text-link:focus-visible {
  text-decoration: underline !important;
  text-underline-offset: 3px;
}

@media (max-width: 980px) {
  .home-compact .solution-home-strip-compact .solution-home-copy.solution-home-copy-compact {
    grid-template-columns: minmax(150px, .55fr) minmax(0, 1.45fr) !important;
    grid-template-areas:
      "heading description"
      "heading actions" !important;
    gap: 10px 24px !important;
    padding: 20px 22px !important;
  }

  .home-compact .solution-home-strip-compact .solution-home-actions {
    flex-direction: row;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px 18px;
    min-width: 0;
  }
}

@media (max-width: 760px) {
  .home-compact {
    --home-section-space: var(--home-section-space-mobile);
  }

  .home-compact .commercial-snapshot-section + .problem-section {
    padding-top: 30px;
  }

  .home-compact .section-heading {
    margin-bottom: 16px;
  }

  .home-compact .about-home-grid,
  .home-compact .portal-grid,
  .home-compact .faq-layout {
    gap: 20px;
  }

  .home-compact .solutions-section.home-sout-compact {
    padding-top: 30px;
    padding-bottom: 30px;
  }

  .home-compact .solution-home-strip-compact .solution-home-copy.solution-home-copy-compact {
    grid-template-columns: 1fr !important;
    grid-template-areas:
      "heading"
      "description"
      "actions" !important;
    gap: 11px !important;
    padding: 18px !important;
  }

  .home-compact .solution-home-strip-compact .solution-label {
    margin-bottom: 6px !important;
  }

  .home-compact .solution-home-strip-compact .solution-home-heading h3 {
    font-size: 1.5rem !important;
  }

  .home-compact .solution-home-strip-compact .solution-home-copy > p {
    font-size: .88rem !important;
  }

  .home-compact .solution-home-strip-compact .solution-home-actions {
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    gap: 8px 14px;
  }

  .home-compact .solution-home-strip-compact .solution-home-plans,
  .home-compact .solution-home-strip-compact .solution-home-actions .text-link {
    white-space: normal;
  }

  .home-compact .cta-section {
    padding-top: 38px;
    padding-bottom: 38px;
  }
}
