/**
 * Sameday Foundation — Typography System
 * Font pairings: Bricolage Grotesque (display, via brand.css) + Inter (body)
 */


/* Display & Section Headings */
h1, h2, h3, h4, h5, h6 {
  font-family: var(--font-family-display);
  color: var(--color-charcoal);
  font-feature-settings: "cv02", "cv03", "cv04", "cv11";
}

h1 { font-size: var(--font-size-hero-h1); line-height: var(--lh-tight); }
h2 { font-size: var(--font-size-h2); line-height: var(--lh-heading); }
h3 { font-size: var(--font-size-h3); line-height: var(--lh-snug); }
h4 { font-size: var(--font-size-h4); line-height: var(--lh-snug); }

.t-hero-h1 {
  font-size: var(--font-size-hero-h1);
  font-weight: 800;
  line-height: var(--lh-tight);
  letter-spacing: -0.02em;
  text-transform: uppercase;
  color: var(--color-charcoal);
}

.t-section-h2 {
  font-size: var(--font-size-h2);
  font-weight: 700;
  line-height: var(--lh-heading);
  letter-spacing: -0.015em;
  color: var(--color-charcoal);
}

.t-card-h3 {
  font-size: var(--font-size-h3);
  font-weight: 700;
  line-height: var(--lh-snug);
  letter-spacing: -0.01em;
  color: var(--color-charcoal);
}

.t-card-h4 {
  font-size: var(--font-size-h4);
  font-weight: 600;
  line-height: var(--lh-snug);
  color: var(--color-charcoal);
}

/* Kicker / Overline Category Badge */
.t-kicker {
  display: inline-block;
  font-family: var(--font-family-display);
  font-size: var(--font-size-kicker);
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  line-height: 1.3;
  color: var(--color-blue);
  margin-bottom: var(--space-sm);
}

.t-kicker--orange {
  color: var(--color-orange);
}

.t-kicker--white {
  color: #FFFFFF;
}

/* Editorial Lead Text */
.t-lead {
  font-size: var(--font-size-lead);
  line-height: 1.65;
  color: var(--color-charcoal);
  font-weight: 450;
}

/* Paragraphs & Subtexts */
p {
  margin-bottom: var(--space-md);
}

p:last-child {
  margin-bottom: 0;
}

.t-subtext {
  font-size: var(--font-size-body-sm);
  line-height: 1.65;
  color: var(--color-charcoal-light);
}

.t-caption {
  font-size: var(--font-size-caption);
  line-height: 1.55;
  color: var(--color-slate);
}

/* Text Links with Arrows */
.t-arrow-link {
  display: inline-flex;
  align-items: center;
  gap: var(--space-sm);
  font-size: var(--font-size-body-sm);
  font-weight: 600;
  color: var(--color-blue);
  transition: gap var(--transition-fast), color var(--transition-fast);
}

.t-arrow-link:hover {
  color: var(--color-blue-dark);
  gap: 12px;
}

.t-arrow-link--orange {
  color: var(--color-orange);
}

.t-arrow-link--orange:hover {
  color: var(--color-orange-hover);
}

.t-arrow-link--white {
  color: #FFFFFF;
}

.t-arrow-link--white:hover {
  color: var(--color-orange-tint);
}
