.home-title {
  font-size: var(--text-section);
}

.section-heading {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: var(--space-4);
  padding-block-end: var(--space-3);
  border-block-end: var(--border-width) solid var(--color-border);
}

.section-heading a {
  flex: 0 0 auto;
  font-size: var(--text-small);
  font-weight: var(--font-weight-bold);
  text-decoration: none;
}

.news-ticker {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) var(--ticker-control-width);
  align-items: center;
  gap: var(--space-4);
  padding: var(--space-3) var(--space-4);
  overflow: hidden;
  background: var(--color-surface);
  border: var(--border-width) solid var(--color-border);
  border-radius: var(--radius-card);
}

.news-ticker__eyebrow {
  padding: var(--space-1) var(--space-3);
  background: var(--color-category-bg);
  color: var(--color-category-text);
  border-radius: var(--radius-pill);
  font-size: var(--text-label);
  font-weight: var(--font-weight-bold);
  line-height: var(--leading-label);
  text-transform: uppercase;
}

.news-ticker__viewport {
  min-width: 0;
  overflow: hidden;
}

.news-ticker__track {
  display: flex;
  width: max-content;
  animation: ticker-scroll var(--ticker-cycle-duration) linear infinite;
}

.news-ticker__group {
  display: flex;
  flex: none;
  gap: var(--ticker-item-gap);
  align-items: center;
  padding: 0 var(--ticker-item-gap) 0 0;
  list-style: none;
}

.news-ticker__group li {
  display: inline-flex;
  align-items: center;
  gap: var(--space-3);
  white-space: nowrap;
}

.news-ticker__group li::before {
  width: var(--space-1);
  height: var(--space-1);
  background: var(--color-category-bg);
  border-radius: var(--radius-pill);
  content: "";
}

.news-ticker__group a {
  font-weight: var(--font-weight-semibold);
  text-decoration: none;
}

.news-ticker__toggle {
  padding-inline: var(--space-3);
  background: var(--color-page);
  color: var(--color-text);
  border: var(--border-width) solid var(--color-border);
  font-size: var(--text-small);
  font-weight: var(--font-weight-bold);
}

.news-ticker.is-paused .news-ticker__track,
.news-ticker__viewport:focus-within .news-ticker__track,
.news-ticker__viewport:hover .news-ticker__track {
  animation-play-state: paused;
}

@keyframes ticker-scroll {
  to {
    transform: translateX(-50%);
  }
}

.featured-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  grid-auto-flow: dense;
  grid-auto-rows: minmax(var(--featured-secondary-min-height), auto);
  gap: var(--card-gap);
}

.featured-grid [data-featured-role="lead"] {
  grid-column: span 2;
  grid-row: span 2;
  min-height: var(--featured-lead-min-height);
}

.featured-grid [data-featured-role="secondary"] {
  min-height: var(--featured-secondary-min-height);
}

.featured-grid .article-card {
  border: 0;
}

.featured-grid .article-card__content {
  position: relative;
  display: block;
  min-height: 100%;
  padding: 0;
  overflow: hidden;
  background: var(--color-surface-hover);
}

.featured-grid .article-card__content::after {
  position: absolute;
  z-index: 1;
  inset: 0;
  background: linear-gradient(to top, var(--color-overlay-strong), transparent 70%);
  content: "";
}

.featured-grid .article-card img,
.featured-grid .article-card__placeholder {
  position: absolute;
  inset: 0;
  height: 100%;
  aspect-ratio: auto;
}

.featured-grid .article-card .article-card__media-link,
.featured-grid .article-card__media-link {
  height: 100%;
}

.featured-grid .article-card__category,
.featured-grid .article-card__title,
.featured-grid .article-card__meta {
  position: absolute;
  z-index: 2;
  inset-inline: var(--space-4);
}

.featured-grid .article-card__category {
  inset-block-start: var(--space-4);
}

.featured-grid .article-card__title {
  inset-block-end: var(--space-6);
  color: var(--neutral-0);
}

.featured-grid [data-featured-role="lead"] .article-card__title {
  max-width: var(--heading-measure);
  font-size: var(--text-section);
}

.featured-grid .article-card__excerpt,
.featured-grid .article-card__meta {
  display: none;
}

.editorial-section {
  display: grid;
  gap: var(--space-6);
}

.editorial-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: var(--card-gap);
}

.editorial-grid--mixed > :nth-child(1),
.editorial-grid--lead-list > :nth-child(1),
.editorial-grid--mosaic > :nth-child(1),
.editorial-grid--closing > :nth-child(2) {
  grid-column: span 2;
  grid-row: span 2;
}

.editorial-grid--reverse > :nth-child(3) {
  grid-column: 3 / span 2;
  grid-row: 1 / span 2;
}

.editorial-grid--mixed > :nth-child(2),
.editorial-grid--mixed > :nth-child(3),
.editorial-grid--lead-list > :nth-child(2),
.editorial-grid--lead-list > :nth-child(5),
.editorial-grid--mosaic > :nth-child(2),
.editorial-grid--mosaic > :nth-child(3),
.editorial-grid--mosaic > :nth-child(5),
.editorial-grid--reverse > :nth-child(1),
.editorial-grid--reverse > :nth-child(4),
.editorial-grid--closing > :nth-child(1),
.editorial-grid--closing > :nth-child(3) {
  grid-column: span 2;
}

.editorial-grid--closing {
  padding-block-end: var(--space-8);
  border-block-end: var(--border-width) solid var(--color-border);
}
