/* Sección general */
.somos-section {
  padding: 1rem 0 !important;
}

/* Botones: si el texto sale oscuro por variables del tema, fuerzalo */
section.somos-section .cta-button {
  color: #fff !important; /* o #fff si quieres texto blanco en el botón */
}


/* Contenedor principal con layout en fila */
.somos-container {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 2rem !important;
  max-width: 1480px !important;
  margin: 0 auto !important;
  padding: 0rem !important;
  box-sizing: border-box !important;
 
}

/* Texto izquierda */
.somos-text {
  width: 60% !important;
}

.somos-hashtag {
  color: var(--color-primary) !important;
  font-size: 2.8rem !important;
  font-weight: 700 !important;
  margin-bottom: 0.5rem !important;
}

.somos-title {
  font-size: 3.5rem !important;
  font-weight: 300 !important;
  margin-bottom: 1rem !important;
  line-height: 1.1 !important;
}

.somos-description {
  font-size: 1.1rem !important;
  line-height: 1.6 !important;
  margin-bottom: 2.0rem !important;
}

/* Imagen derecha */
.somos-imagen-grande {
  width: 40% !important;
}

.somos-imagen-grande img {
  width: 100% !important;
  height: auto !important;
  display: block !important;
  object-fit: cover !important;
  border-top-left-radius: 0rem !important;
  border-bottom-right-radius: 4rem !important;
  transition: transform 0.3s ease !important;
}

.somos-imagen-grande img:hover {
  transform: scale(1.03) !important;
}

/* Responsive (móviles o pantallas pequeñas) */
@media (max-width: 900px) {
  .somos-container {
    flex-direction: column-reverse !important;
    gap: 2rem !important;
    padding: 1.5rem !important;
  }

  .somos-text,
  .somos-imagen-grande {
    width: 100% !important;
    max-width: 100% !important;
  }

  .somos-title {
    font-size: 2rem !important;
    line-height: 1.3 !important;
  }

  .somos-hashtag {
    font-size: 2rem !important;
  }
}
