/* ==========================================================================
   Module: text-columns — two-column label + body block
   Reproduces the mission and heritage sections of the locked QP design.
   ========================================================================== */

.m-text-columns__grid {
  display: flex;
  flex-wrap: wrap;
  gap: clamp(32px, 6vw, 96px);
  align-items: flex-start;
}

.m-text-columns__grid--divider {
  padding-top: clamp(36px, 5vh, 60px);
  border-top: 1px solid var(--ink);
}

.m-text-columns__aside {
  flex: 0 1 240px;
  min-width: 170px;
}

.m-text-columns__label {
  font-family: var(--font-mono);
  font-size: 12px;
  letter-spacing: .2em;
  text-transform: uppercase;
}
.m-text-columns__label--accent { color: var(--accent); }
.m-text-columns__label--muted  { color: var(--mono-muted); }

.m-text-columns__sublabel {
  font-family: var(--font-mono);
  font-size: 11px;
  letter-spacing: .18em;
  color: var(--faint);
  margin-top: 14px;
}

.m-text-columns__body {
  flex: 1 1 560px;
  max-width: 1000px;
}

/* Normal: stacked body paragraphs */
.m-text-columns__body--normal p {
  margin: 0 0 clamp(20px, 3vh, 30px);
  font-family: var(--font-sans);
  font-weight: 400;
  font-size: clamp(1.05rem, 1.5vw, 1.32rem);
  line-height: 1.6;
  color: var(--ink-strong-2);
}
.m-text-columns__body--normal p:last-child { margin-bottom: 0; }

/* Large: weight-300 lead statement with Spectral italic accent support */
.m-text-columns__body--large p {
  margin: 0 0 clamp(20px, 3vh, 30px);
  font-family: var(--font-sans);
  font-weight: 300;
  font-size: clamp(1.3rem, 2.2vw, 1.9rem);
  line-height: 1.4;
  letter-spacing: -.005em;
  color: var(--ink-strong);
}
.m-text-columns__body--large p:last-child { margin-bottom: 0; }
.m-text-columns__body--large em {
  font-family: var(--font-serif);
  font-style: italic;
  font-weight: 500;
}
