/* Spacing utilities */
.mt-0 { margin-top: 0 !important; }
.mt-1 { margin-top: 0.5rem !important; }
.mt-2 { margin-top: 1rem !important; }
.mt-3 { margin-top: 1.5rem !important; }
.mt-4 { margin-top: 2rem !important; }

.mb-0 { margin-bottom: 0 !important; }
.mb-1 { margin-bottom: 0.5rem !important; }
.mb-2 { margin-bottom: 1rem !important; }
.mb-3 { margin-bottom: 1.5rem !important; }
.mb-4 { margin-bottom: 2rem !important; }

.py-section { padding: clamp(3rem, 6vw, 5rem) 0 !important; }

/* Layout helpers */
.flex { display: flex !important; }
.flex-column { flex-direction: column !important; }
.flex-center { justify-content: center !important; align-items: center !important; }
.grid { display: grid !important; }
.grid-cols-1 { grid-template-columns: repeat(1, minmax(0, 1fr)) !important; }
.gap-2 { gap: 1rem !important; }
.gap-3 { gap: 1.5rem !important; }

@media (min-width: 768px) {
  .grid-cols-3-md { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; }
}

/* Text helpers */
.text-center { text-align: center !important; }
.text-left { text-align: left !important; }
.text-right { text-align: right !important; }
.text-sm { font-size: 0.875rem !important; }
.text-xs { font-size: 0.75rem !important; letter-spacing: 0.08em !important; text-transform: uppercase !important; }
.text-lg { font-size: 1.125rem !important; }
.text-muted { color: var(--fg-muted) !important; }
.text-subtle { color: var(--fg-subtle) !important; }

/* Width helpers */
.max-w-sm { max-width: 24rem !important; }
.max-w-md { max-width: 32rem !important; }
.max-w-lg { max-width: 42rem !important; }
.max-w-xl { max-width: 56rem !important; }

/* Background helpers */
.bg-surface { background: var(--surface) !important; }
.bg-muted { background: var(--surface-muted) !important; }
.bg-transparent { background: transparent !important; }

/* Accent helpers */
.pill {
  display: inline-flex !important;
  align-items: center;
  gap: 0.5rem;
  padding: 0.4rem 0.85rem;
  border-radius: 999px;
  background: rgba(99, 102, 241, 0.08);
  color: var(--accent);
  font-size: 0.75rem;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}
