.problema {
  background: var(--ink-950);
  color: var(--paper);
  position: relative;
  overflow: hidden;
}

.problema::before {
  content: "";
  position: absolute;
  top: -200px;
  left: -100px;
  width: 600px;
  height: 500px;
  background: radial-gradient(closest-side, rgba(139, 92, 246, 0.18), transparent 70%);
  pointer-events: none;
}

.theme-light .problema {
  background: var(--paper);
  color: var(--ink-900);
}

.theme-light .problema::before {
  background: radial-gradient(closest-side, rgba(196, 181, 253, 0.35), transparent 70%);
}

.problema-inner {
  display: grid;
  gap: var(--space-12);
  grid-template-columns: 1fr;
  align-items: start;
  position: relative;
}

@media (min-width: 900px) {
  .problema-inner {
    grid-template-columns: 1fr 1.3fr;
    gap: var(--space-16);
  }
}

.problema-head .eyebrow {
  color: var(--violet-300);
  margin-bottom: var(--space-4);
}

.theme-light .problema-head .eyebrow {
  color: var(--violet-700);
}

.problema-head h2 {
  font-size: var(--fs-display-lg);
  line-height: var(--lh-snug);
  margin-bottom: var(--space-6);
}

@media (min-width: 900px) {
  .problema-head {
    position: sticky;
    top: calc(var(--space-20) + var(--space-4));
  }
}

.problema-lead {
  font-size: var(--fs-body-lg);
  color: var(--ink-200);
  line-height: var(--lh-relaxed);
  margin-bottom: var(--space-8);
  max-width: 60ch;
}

.theme-light .problema-lead {
  color: var(--ink-700);
}

.problema-pains {
  list-style: none;
  margin: 0 0 var(--space-8);
  padding: 0;
  display: grid;
  gap: var(--space-5);
}

.problema-pain {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: var(--space-5);
  padding: var(--space-5) 0;
  border-top: 1px solid rgba(255, 255, 255, 0.08);
  align-items: baseline;
}

.theme-light .problema-pain {
  border-top-color: var(--color-border);
}

.problema-pain:last-child {
  border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}

.theme-light .problema-pain:last-child {
  border-bottom-color: var(--color-border);
}

.problema-pain-marker {
  font-family: var(--font-mono);
  font-size: var(--fs-mono-sm);
  color: var(--violet-300);
  letter-spacing: 0.08em;
  min-width: 110px;
}

.theme-light .problema-pain-marker {
  color: var(--violet-700);
}

.problema-pain-text {
  font-size: var(--fs-body-lg);
  line-height: var(--lh-relaxed);
  color: var(--paper);
  font-weight: 500;
}

.theme-light .problema-pain-text {
  color: var(--ink-900);
}

.problema-close {
  color: var(--ink-300);
  font-size: var(--fs-body);
  line-height: var(--lh-relaxed);
  max-width: 60ch;
}

.theme-light .problema-close {
  color: var(--ink-600);
}
