/* ── Mobile-first base (< 600px) ──────────────────────────── */
.columns--2,
.columns--3 { grid-template-columns: 1fr; }

.col { border-right: none; border-bottom: 1px solid var(--color-rule); }
.col:last-child { border-bottom: none; }

.masthead__meta {
  flex-direction: column;
  align-items: center;
  gap: var(--space-1);
  text-align: center;
}

.masthead__nav { gap: var(--space-4); flex-wrap: wrap; }

.social-grid { grid-template-columns: 1fr 1fr; }

.interests-strip { grid-template-columns: 1fr; }

/* ── Tablet (≥ 600px) ─────────────────────────────────────── */
@media (min-width: 600px) {
  .masthead__meta { flex-direction: row; }

  .columns--2 { grid-template-columns: 1.5fr 1fr; }
  .columns--2 .col { border-right: 1px solid var(--color-rule); border-bottom: none; }
  .columns--2 .col:last-child { border-right: none; }

  .interests-strip { grid-template-columns: repeat(3, 1fr); }
}

/* ── Desktop (≥ 900px) ────────────────────────────────────── */
@media (min-width: 900px) {
  .columns--3 { grid-template-columns: 1fr 1fr 1fr; }
  .columns--3 .col { border-right: 1px solid var(--color-rule); border-bottom: none; }
  .columns--3 .col:last-child { border-right: none; }

  .social-grid { grid-template-columns: repeat(auto-fit, minmax(160px, 1fr)); }
}

/* ── Reduced motion ───────────────────────────────────────── */
@media (prefers-reduced-motion: reduce) {
  .reveal { opacity: 1; transform: none; transition: none; }
  .rule-animated { animation: none; }
  .drop-cap::first-letter { animation: none; }
  html { scroll-behavior: auto; }
}
