.template-root[data-brand="concord-harrisburg-herald"] {
  --brand-tokens-brand-50: #fbf1ef;
  --brand-tokens-brand-100: #f5ddd6;
  --brand-tokens-brand-200: #e9b4a5;
  --brand-tokens-brand-300: #d78670;
  --brand-tokens-brand-400: #cc745c;
  --brand-tokens-brand-500: #bf5b40;
  --brand-tokens-brand-600: #a14d36;
  --brand-tokens-brand-700: #86402d;
  --brand-tokens-brand-800: #6f3525;
  --brand-tokens-brand-900: #582a1d;
  --brand-tokens-brand-950: #361a12;
  --brand-tokens-greyscale-10: #fdfaf4;
  --brand-tokens-greyscale-50: #f5f1ea;
  --brand-tokens-greyscale-100: #e9e3db;
  --brand-tokens-greyscale-200: #d5ccc4;
  --brand-tokens-greyscale-300: #b4a9a1;
  --brand-tokens-greyscale-400: #918780;
  --brand-tokens-greyscale-500: #6d6560;
  --brand-tokens-greyscale-600: #57514d;
  --brand-tokens-greyscale-700: #423d3a;
  --brand-tokens-greyscale-800: #2f2b29;
  --brand-tokens-greyscale-900: #211a18;
  --brand-tokens-greyscale-950: #151110;
  --brand-tokens-greyscale-1000: #0a0808;
  --brand-tokens-typography-body: "Source Serif 4";
  --brand-tokens-typography-labels: "Inter Tight";
  --brand-tokens-typography-titles-a: "Playfair Display";
  --brand-tokens-typography-titles-b: "Playfair Display";
  --tint-light: #f6ece7;
  --speedway-red: #d61f26;
}

.template-root[data-brand="concord-harrisburg-herald"] .block-section-title {
  letter-spacing: 0.02em;
}

.template-root[data-brand="concord-harrisburg-herald"] {
  --text-default-4: var(--speedway-red);
  --interactive-text-primary-idle: var(--speedway-red);
  --interactive-text-primary-hover: color-mix(
    in srgb,
    var(--speedway-red) 85%,
    var(--brand-tokens-greyscale-900)
  );
  --interactive-text-primary-pressed: var(--speedway-red);
  --interactive-contained-primary-idle: var(--speedway-red);
  --interactive-contained-primary-hover: color-mix(
    in srgb,
    var(--speedway-red) 85%,
    var(--brand-tokens-greyscale-900)
  );
}

/* Raw speedway red is 4.1:1 on the chrome plate; mixing it toward ink reaches 5.1:1. */
.template-root[data-brand="concord-harrisburg-herald"] :where(.block-menubar:not([data-bg="inverted"], [data-bg="brand"])) .block-menubar__link[aria-current="page"] {
  color: color-mix(in srgb, var(--speedway-red) 85%, var(--brand-tokens-greyscale-900));
}

/* Hero v6 uses a big Card on desktop; Playfair 400 avoids synthetic display weight. */
.template-root[data-brand="concord-harrisburg-herald"] .block-hero .card--big .card__title {
  font-size: 44px;
  line-height: 50px;
  font-weight: 400;
}

/* A fixed size bypasses the shared 767px step on --card-title-xl. */
@media (max-width: 767px) {
  .template-root[data-brand="concord-harrisburg-herald"] .block-hero .card--big .card__title {
    font-size: 32px;
    line-height: 38px;
  }
}

/* SUR-691: the desktop split lead is a big card too; it keeps the hero's
   lead size, as before. */
@media (min-width: 1200px) {
  .template-root[data-brand="concord-harrisburg-herald"] .block-hero .block-hero__split.card--big .card__title {
    font-size: var(--card-title-xl);
    line-height: var(--card-title-xl-lh);
    font-weight: 600;
  }
}

.template-root[data-brand="concord-harrisburg-herald"]
  .block-container--bg-default:has(.block-header) {
  background-image:
    linear-gradient(
      180deg,
      color-mix(in srgb, var(--brand-tokens-brand-300) 20%, transparent) 0%,
      color-mix(in srgb, var(--brand-tokens-brand-300) 12%, transparent) 74%,
      transparent 100%
    ),
    radial-gradient(
      50% 80% at 88% 6%,
      color-mix(in srgb, var(--brand-tokens-brand-200) 22%, transparent) 0%,
      transparent 62%
    );
}
