.badge-benefits {
  --badge-text: var(--text-color);
  --badge-muted: var(--text-color);
  --badge-card-bg: #ffffff;
  --badge-radius: 16px;
  --badge-shadow: 0 6px 20px rgba(15, 18, 34, 0.07);
  --badge-shadow-hover: 0 16px 34px rgba(15, 18, 34, 0.13);
  --badge-font: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;

  font-family: var(--badge-font);
  color: var(--badge-text);
  padding: 20px; /* 20px garantizados para eliminar exceso de aire */
  box-sizing: border-box;
}
.badge-benefits *,
.badge-benefits *::before,
.badge-benefits *::after { box-sizing: border-box; }

.badge-benefits__inner {
  max-width: 1180px;
  margin: 0 auto;
}

.badge-benefits__title {
  text-align: center;
  font-size: clamp(1.8rem, 3.2vw, 2.75rem);
  line-height: 1.15;
  font-weight: 700;
  letter-spacing: -0.02em;
  margin: 0 auto 32px; /* Reducido para quitar el aire excesivo */
  max-width: 20ch;
  color: var(--badge-text);
}

.badge-benefits__grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px; /* Grid gap ya alineado a 20px */
}

.badge-benefits__card {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 16px;
  background: var(--badge-card-bg);
  border: 1px solid rgba(15, 18, 34, 0.05);
  border-radius: var(--badge-radius);
  padding: 22px 26px;
  box-shadow: var(--badge-shadow);
  transition: transform .28s cubic-bezier(.2,.7,.3,1), box-shadow .28s ease;
}
.badge-benefits__card:hover {
  transform: translateY(-6px);
  box-shadow: var(--badge-shadow-hover);
}

.badge-benefits__icon {
  flex: 0 0 auto;
  width: 44px;
  height: 44px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 12px;
  background: color-mix(in srgb, var(--badge-accent) 10%, transparent);
  color: var(--badge-accent);
}
@supports not (background: color-mix(in srgb, red 10%, transparent)) {
  .badge-benefits__icon { background: rgba(39, 12, 232, 0.10); }
}

.badge-benefits__text {
  font-size: 1rem;
  line-height: 1.45;
  font-weight: 600;
  color: var(--badge-muted);
  opacity: 0.85; /* Da contraste visual entre el título y el texto del card */
}
.badge-benefits__text > * { margin: 0; }

/* Responsive */
@media (max-width: 992px) {
  .badge-benefits__grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 600px) {
  .badge-benefits__grid { grid-template-columns: 1fr; }
}