

.u-tac { text-align: center; }
.u-tal { text-align: left; }

.u-mb-0 { margin-bottom: 0; }
.u-mb-8 { margin-bottom: 8px; }
.u-mb-16 { margin-bottom: 16px; }
.u-mb-24 { margin-bottom: 24px; }
.u-mb-32 { margin-bottom: 32px; }
.u-mt-8 { margin-top: 8px; }
.u-mt-16 { margin-top: 16px; }
.u-mt-24 { margin-top: 24px; }
.u-mt-32 { margin-top: 32px; }

.u-flex { display: flex; }
.u-wrap { flex-wrap: wrap; }
.u-gap-8 { gap: 8px; }
.u-gap-12 { gap: 12px; }
.u-gap-16 { gap: 16px; }
.u-gap-24 { gap: 24px; }
.u-between { justify-content: space-between; }
.u-items-center { align-items: center; }

.u-block { display: block; }
.u-inline { display: inline-block; }
.u-w-100 { width: 100%; }
.u-nowrap { white-space: nowrap; }

.u-fw-6 { font-weight: 600; }
.u-fw-7 { font-weight: 700; }
.u-uc { text-transform: uppercase; letter-spacing: 0.12em; }
.u-lead { font-size: var(--fluid-lead); }
.u-small { font-size: 13px; }
.u-mono { font-family: var(--font-num); }
.u-head { font-family: var(--font-head); }

.u-muted { color: var(--text-muted); }
.u-soft { color: var(--text-secondary); }
.u-cool { color: var(--chill); }
.u-accent { color: var(--accent-hover); }
.u-invert { color: #ffffff; }

.u-link { color: var(--accent-hover); text-decoration: underline; }

.u-columns-2 {
  columns: 1;
  column-gap: 32px;
  column-rule: 1px solid var(--line-soft);
}

.u-columns-3 {
  columns: 1;
  column-gap: 32px;
  column-rule: 1px solid var(--line-soft);
}

.u-columns-3 p,
.u-columns-2 p {
  break-inside: avoid;
}

.is-hidden { display: none; }

@media (min-width: 600px) {
  .u-columns-2 { columns: 2; }
}

@media (min-width: 768px) {
  .u-columns-3 { columns: 3; }
}
