/* =============================================================
   utilities.css — Helpers
   ============================================================= */
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;
  clip:rect(0,0,0,0);white-space:nowrap;border:0}

.text-center{text-align:center}
.text-left{text-align:left}
.center-x{margin-inline:auto}

.mt-0{margin-top:0}.mt-16{margin-top:var(--space-16)}.mt-24{margin-top:var(--space-24)}
.mt-32{margin-top:var(--space-32)}.mt-48{margin-top:var(--space-48)}.mt-64{margin-top:var(--space-64)}
.mb-16{margin-bottom:var(--space-16)}.mb-24{margin-bottom:var(--space-24)}
.mb-32{margin-bottom:var(--space-32)}.mb-48{margin-bottom:var(--space-48)}

.hidden{display:none !important}
.relative{position:relative}
.full-width{width:100%}

.badge{display:inline-flex;align-items:center;gap:var(--space-8);
  font-family:var(--font-mono);font-size:var(--fs-eyebrow);text-transform:uppercase;
  letter-spacing:.08em;color:var(--text-secondary);
  padding:var(--space-8) var(--space-16);border:var(--border-hairline);border-radius:var(--radius-pill)}

.divider{height:1px;background:var(--border-subtle);border:none;width:100%}

.flex{display:flex}
.flex-center{display:flex;align-items:center;justify-content:center}
.gap-8{gap:var(--space-8)}.gap-16{gap:var(--space-16)}.gap-24{gap:var(--space-24)}
.wrap{flex-wrap:wrap}

.aspect-video{aspect-ratio:16/9}
.aspect-photo{aspect-ratio:16/11}
.cover{width:100%;height:100%;object-fit:cover}

.note{font-size:var(--fs-body-sm);color:var(--color-ink-300);font-style:italic}
