/* ==========================================================================
   Aura Yoga — Utility classes
   ========================================================================== */

/* Layout helpers */
.mx-auto { margin-left: auto; margin-right: auto; }

/* Spacing rhythm */
.section-pad-sm { padding: 3rem 0; }

/* Typography helpers */
.text-forest    { color: var(--forest); }
.text-forest-deep { color: var(--forest-deep); }
.text-gold      { color: var(--gold); }
.text-neutral   { color: var(--neutral); }
.text-muted-alt { color: var(--muted); }
.fw-medium      { font-weight: 500; }

/* Rounded helpers */
.rounded-4 { border-radius: var(--radius) !important; }
.rounded-5 { border-radius: var(--radius-lg) !important; }

/* Shadow helpers */
.shadow-soft  { box-shadow: var(--shadow-sm) !important; }
.shadow-float { box-shadow: var(--shadow) !important; }
.shadow-strong { box-shadow: var(--shadow-lg) !important; }

/* Background helpers */
.bg-beige      { background-color: var(--beige); }
.bg-sage-light { background-color: var(--sage-light); }
.bg-forest     { background-color: var(--forest); }

/* Borders */
.border-soft { border: 1px solid var(--border); }

/* Accessibility helper — visually hidden labels for icon-only controls */
.visually-hidden {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}

/* Skip link for keyboard users */
.skip-link {
    position: absolute;
    left: -999px;
    top: 0;
    z-index: 9999;
    background: var(--forest);
    color: var(--white);
    padding: 0.75rem 1.25rem;
    border-radius: 0 0 10px 0;
}
.skip-link:focus {
    left: 0;
    color: var(--white);
}
