/* Base heading styles */
.Heading-module_heading__m8RYP {
  font-family: var(--font-headline);
  color: var(--color-text-secondary);
}

/* Center alignment */
.Heading-module_center__w1TRU {
  text-align: center;
}

/* ==================== PAGE-LEVEL HEADINGS ==================== */

/* Page Title - Large hero titles */
.Heading-module_pageTitle__lkjIM,
.Heading-module_pageTitleContact__qTJj8 {
  font-family: var(--font-headline);
  font-weight: var(--font-weight-bold);
  font-size: var(--text-h1);
  line-height: var(--text-h1-line-height);
  color: var(--color-white);
  word-break: break-word;
  overflow-wrap: break-word;
}

.Heading-module_pageTitleContact__qTJj8 {
  color: var(--color-white) !important;
}

/* Error Title - Error page headings */
.Heading-module_errorTitle__28L8H {
  font-family: var(--font-headline);
  font-weight: var(--font-weight-regular);
  font-size: var(--text-h4);
  line-height: var(--text-h4-line-height);
  color: var(--color-white);
  text-transform: uppercase;
}

.Heading-module_pageSubline__abIqp {
  font-size: var(--text-h2);
  line-height: var(--text-h2-line-height);
  font-weight: var(--font-weight-regular);
  letter-spacing: normal;
}

/* Track Title - Audio player titles */
.Heading-module_trackTitle__VM5ui {
  font-size: var(--text-h2);
  line-height: 1.2;
  letter-spacing: -0.01em;
  color: var(--color-text-on-accent);
}

/* ==================== SECTION-LEVEL HEADINGS ==================== */

/* Section Title - Main section headings */
.Heading-module_sectionTitle__cbbAF {
  font-family: var(--font-body);
  font-size: var(--text-body);
  font-weight: var(--font-weight-semibold);
  line-height: var(--text-body-line-height);
  letter-spacing: var(--tracking-wider);
  text-transform: uppercase;
  color: var(--color-text-secondary);
}

/* Show Title - Show cards */
.Heading-module_showTitle__G2Dj-,
.Heading-module_hostCardTitle__G0EAB,
.Heading-module_articleCardTitle__aEl-- {
  font-size: var(--text-h3);
  line-height: var(--text-h3-line-height);
  text-transform: uppercase;
  color: var(--color-text-secondary);
  word-break: break-word;
  overflow-wrap: break-word;
}

.Heading-module_cardTitle__wGv9G {
  font-size: 28px;
  line-height: 32px;
  text-transform: uppercase;
  color: var(--color-text-on-accent);
}

/* Episode item title (on accent backgrounds) */
.Heading-module_episodeItemTitle__MT0Dl {
  font-family: var(--font-headline);
  font-size: var(--text-h4);
  font-weight: var(--font-weight-regular);
  line-height: var(--text-h4-line-height);
  letter-spacing: var(--tracking-normal);
  color: var(--color-text-on-accent);
  text-transform: uppercase;
  margin: 0;
  word-break: break-word;
  overflow-wrap: break-word;
}

/* Host Name - Host cards and hero */

/* ==================== CARD-LEVEL HEADINGS ==================== */

/* Host Hero Overline and Emoji Title  */
.Heading-module_heroOverline__xNOHf,
.Heading-module_emojiTitle__vX-5g {
  font-size: var(--text-body);
  font-weight: var(--font-weight-semibold);
  line-height: var(--text-body-line-height);
  letter-spacing: var(--tracking-wider);
  text-transform: uppercase;
  color: var(--color-text-secondary);
}

/* ==================== SMALLER HEADINGS ==================== */

/* Subtitle - General subtitles */
.Heading-module_subtitle__NvPgj {
  font-size: var(--text-h5);
  font-weight: var(--font-weight-regular);
  line-height: var(--text-h5-line-height);
  color: var(--color-text-secondary);
}

/* Column Title - Footer column titles */
.Heading-module_footerGroupTitle__toKm- {
  font-family: var(--font-headline);
  font-size: var(--text-h4);
  line-height: var(--text-h4-line-height);
  font-weight: var(--font-weight-bold);
  color: var(--color-text-muted);
}

.Heading-module_fabTitle__ONM6X {
  font-size: var(--text-body);
  line-height: 1.4;
  color: var(--color-text-secondary);
}

/* Badge Label - Very small uppercase labels */
.Heading-module_badgeLabel__Rn3J2 {
  font-size: 12px;
  font-weight: var(--font-weight-semibold);
  line-height: 20px;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

/* ==================== FORM HEADER HEADINGS ==================== */

.Heading-module_formHeaderTitle__ajq6o {
  font-family: var(--font-body);
  font-weight: var(--font-weight-semibold);
  font-size: var(--text-h3);
  line-height: var(--text-h3-line-height);
  letter-spacing: var(--tracking-wider);
  text-transform: uppercase;
  color: var(--color-text-secondary);
  display: flex;
}

.Heading-module_formHeaderSubtitle__EupzG {
  font-family: var(--font-headline);
  font-weight: var(--font-weight-regular);
  font-size: 36px;
  line-height: 36px;
  letter-spacing: 0;
  color: var(--color-text-secondary);
  text-transform: uppercase;
}

@media (max-width: 640px) {
  .Heading-module_formHeaderSubtitle__EupzG {
    font-size: var(--text-h3);
    line-height: var(--text-h3-line-height);
  }
  .Heading-module_fabTitle__ONM6X {
    font-size: var(--text-small);
    line-height: 1.4;
    color: var(--color-text-secondary);
  }
}

/* ==================== CONTENT BLOCK HEADINGS ==================== */

/* Content Block Headline - Large headline for content blocks on accent backgrounds */
.Heading-module_contentHeadline__1VBYU {
  font-family: var(--font-headline);
  font-size: var(--text-h1);
  font-weight: var(--font-weight-regular);
  line-height: var(--text-h1-line-height);
  letter-spacing: normal;
  color: var(--color-text-on-accent);
}

.Heading-module_contentOverline__yRmuh {
  font-family: var(--font-body);
  font-weight: var(--font-weight-semibold);
  color: var(--color-text-on-accent);
  letter-spacing: var(--tracking-wider);
  text-transform: uppercase;
}

/* Accordion Title - Accordion item headings */
.Heading-module_accordionTitle__4hREx {
  font-size: var(--text-body);
  font-weight: var(--font-weight-regular);
  line-height: 1.5;
  color: var(--color-text-secondary);
}

/* Social Hotline Headlines */
.Heading-module_SocialHotlineTitle__GnDPb {
  font-size: 1.5rem;
  line-height: 1.5rem;
  font-weight: var(--font-weight-regular);
  color: var(--color-text-secondary);
}

@media (min-width: 768px) {
  .Heading-module_SocialHotlineTitle__GnDPb {
    font-size: 1.875rem;
    line-height: 2rem;
  }
}

/* Slide Headline - Large slider headlines */
.Heading-module_slideHeadline__Kp7I6 {
  font-size: var(--text-h1);
  line-height: var(--text-h1-line-height);
  font-weight: var(--font-weight-regular);
  color: var(--color-text-on-accent);
  text-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
}

/* Slide Subheadline - Slider subheadlines */
.Heading-module_slideSubheadline__w3JH6 {
  font-size: var(--text-h5);
  line-height: 1.4;
  color: var(--color-white);
  text-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
}

/* Hero Station Headline - Light text for station hero sections (theme-independent) */
.Heading-module_heroStationHeadline__N6OuP {
  font-family: var(--font-headline);
  font-size: var(--text-h1);
  font-weight: var(--font-weight-regular);
  line-height: var(--text-h1-line-height);
  letter-spacing: normal;
  text-transform: uppercase;
  color: var(--color-text-on-accent);
}

/* ==================== SEMANTIC DEFAULTS ==================== */

.Heading-module_h1__5atjS {
  font-size: var(--text-h1);
  line-height: var(--text-h1-line-height);
}

.Heading-module_h2__LmK1S {
  font-size: var(--text-h2);
  line-height: var(--text-h2-line-height);
}

.Heading-module_h3__fEmZj {
  font-size: var(--text-h3);
  line-height: var(--text-h3-line-height);
}

.Heading-module_h4__d-paY {
  font-size: var(--text-h4);
  line-height: var(--text-h4-line-height);
}

.Heading-module_h5__ookUY {
  font-size: var(--text-h5);
  line-height: var(--text-h5-line-height);
}

.Heading-module_h6__gVZ0z {
  font-size: var(--text-h6);
  line-height: var(--text-h6-line-height);
}

/* ==================== RESPONSIVE ADJUSTMENTS ==================== */

@media (max-width: 1023px) {
  .Heading-module_trackTitle__VM5ui {
    font-size: 32px;
  }
}

@media (max-width: 767px) {
  .Heading-module_trackTitle__VM5ui {
    font-size: 28px;
  }
}

@media (max-width: 640px) {
  .Heading-module_episodeItemTitle__MT0Dl {
    font-size: var(--text-h5);
    line-height: var(--text-h5-line-height);
  }
}

@media (max-width: 480px) {
  .Heading-module_trackTitle__VM5ui {
    font-size: var(--text-h4);
  }

  .Heading-module_subtitle__NvPgj {
    font-size: var(--text-body);
  }
}
