/* Heading component styles */

/* Base heading reset */
.heading {
  margin: 0;
  padding: 0;
  font-family: inherit;
  font-weight: 900;
  line-height: 1.2;
  text-transform: uppercase;
  letter-spacing: 0;
}

/* ===================
   Variant: Page
   Large page titles (h1)
   Figma 80px @ 1920 → 60px @ 1440
   =================== */
.heading--page {
  font-size: 2rem; /* 32px mobile */
}

@media (min-width: 768px) {
  .heading--page {
    font-size: 3.75rem; /* 60px desktop */
  }
}

/* ===================
   Variant: Section
   Section headings (h2)
   Figma 64px @ 1920 → 48px @ 1440
   =================== */
.heading--section {
  font-size: 1.75rem;
}

@media (min-width: 768px) {
  .heading--section {
    font-size: 2.5rem; /* 48px desktop */
  }
}

/* ===================
   Variant: Hero
   Large hero headings
   Figma 80px @ 1920 → 60px @ 1440
   =================== */
.heading--hero {
  font-size: 2.25rem; /* 36px mobile */
}

@media (min-width: 1024px) {
  .heading--hero {
    font-size: 3.75rem; /* 60px desktop */
  }
}

/* ===================
   Variant: Subtitle
   Smaller subtitle/label headings (h3/h4)
   =================== */
.heading--subtitle {
  font-size: 1.125rem; /* 18px mobile */
}

@media (min-width: 768px) {
  .heading--subtitle {
    font-size: 1.25rem; /* 20px desktop */
  }
}

/* ===================
   Alignment
   =================== */
.heading--align-left {
  text-align: left;
}

.heading--align-center {
  text-align: center;
}

.heading--align-right {
  text-align: right;
}

/* ===================
   Colors
   =================== */
.heading--color-default {
  color: var(--color-text);
}

.heading--color-white {
  color: white;
}

.heading--color-inherit {
  color: inherit;
}
