/* ============================================================
   50-wwt-grid — full condition grid (13 conditions on this build),
   white section. Scoped under .sec-50-wwt-grid.
   NOTE (Pass 4 QA fix, 2026-08-28): was `display:grid` with
   `repeat(auto-fit, minmax(260px, 1fr))`. With 13 cards that leaves
   a final row of 1 card left-packed against the far edge with three
   phantom empty tracks beside it (auto-fit avoids blank TRACKS, not
   a short LAST ROW). Switched to flex-wrap + justify-content:center
   so an incomplete last row centers instead of hugging the left edge.
   ============================================================ */

.sec-50-wwt-grid {
  background: var(--white);
}

.sec-50-wwt-grid__grid {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: clamp(1.1rem, 1.8vw, 1.5rem);
}

.sec-50-wwt-grid__card {
  flex: 1 1 260px;
  max-width: 300px;
  background: var(--bone);
  border-radius: var(--radius-card);
  box-shadow: var(--shadow-soft);
  padding: clamp(1.4rem, 2vw, 1.9rem);
  border: 1.5px solid transparent;
  transition: border-color 250ms var(--ease-out), box-shadow 250ms var(--ease-out),
    transform 300ms var(--ease-spring);
}

.sec-50-wwt-grid__card:hover {
  border-color: var(--accent);
  box-shadow: var(--shadow-lift);
  transform: translateY(-4px);
}

.sec-50-wwt-grid__num {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  border-radius: 50%;
  background: var(--accent-soft);
  color: var(--accent-strong);
  font-family: var(--font-display);
  font-weight: 800;
  font-size: 0.85rem;
  margin-bottom: 1rem;
  transition: background 250ms var(--ease-out), color 250ms var(--ease-out);
}

.sec-50-wwt-grid__card:hover .sec-50-wwt-grid__num {
  background: var(--accent);
  color: var(--accent-on);
}

.sec-50-wwt-grid__card h3 {
  font-size: 1.15rem;
  margin-bottom: 0.5rem;
}

.sec-50-wwt-grid__card p {
  color: var(--text-on-bone-dim);
  font-size: 0.92rem;
  line-height: 1.55;
}

.sec-50-wwt-grid__link {
  margin-top: 1rem;
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  font-family: var(--font-display);
  font-weight: 700;
  font-size: 0.9rem;
  color: var(--accent-strong);
  text-decoration: none;
  transition: gap 200ms var(--ease-spring), color 200ms var(--ease-out);
}

.sec-50-wwt-grid__link:hover {
  gap: 0.65rem;
  /* AA text-contrast fix: --accent is 4.35:1 on bone (fails 4.5:1 for text);
     --accent-strong is ~8:1. See css/base.css .eyebrow for the full note. */
  color: var(--accent-strong);
}

html.reduced-motion .sec-50-wwt-grid__card {
  transition: none;
}
