.problem { background: var(--c-dark-primary); color: var(--c-text-on-dark); }
.problem__concept-bar {
  position: sticky; top: 0; z-index: 10; display: flex; align-items: center; justify-content: center;
  gap: clamp(24px, 4vw, 48px); padding: 20px 24px;
  background: rgba(17,17,17,0.9); backdrop-filter: blur(12px); -webkit-backdrop-filter: blur(12px);
  border-bottom: 1px solid rgba(255,255,255,0.06);
}
.problem__concept { text-align: center; }
.problem__concept-label { font-size: 12px; color: var(--c-steel); margin-bottom: 2px; }
.problem__concept-en { font-family: var(--font-en); font-size: clamp(18px, 2.4vw, 28px); font-weight: var(--fw-semi); letter-spacing: -0.01em; }
.problem__arrow { font-size: clamp(18px, 2vw, 24px); color: var(--c-steel); }
.problem__content { padding: var(--section-pad) 0; }
.problem__sub { font-size: 13px; letter-spacing: 0.06em; color: var(--c-steel); text-align: center; margin-bottom: 16px; }
.problem__headline { font-size: clamp(22px, 3vw, 32px); font-weight: var(--fw-bold); text-align: center; line-height: 1.5; margin-bottom: clamp(40px, 6vw, 64px); }
.problem__gaps { display: grid; grid-template-columns: repeat(3, 1fr); gap: var(--card-gap); }
