/* Hendersonville Register: Old Hickory Lake teal and a deep lake navy on a cool
   mist paper, with a brass signal, Playfair Display over Inter Tight. Cards are
   white plates on the mist, so a story reads as an object on the page. */
.template-root[data-brand="hendersonville-register"] {
  --brand-tokens-brand-50: #eafaf7;
  --brand-tokens-brand-100: #ccf1ea;
  --brand-tokens-brand-200: #99e2d6;
  --brand-tokens-brand-300: #5fcdbc;
  --brand-tokens-brand-400: #2fb3a0;
  --brand-tokens-brand-500: #199a89;
  --brand-tokens-brand-600: #0f8878;
  --brand-tokens-brand-700: #0b6a5e;
  --brand-tokens-brand-800: #084f47;
  --brand-tokens-brand-900: #05372f;
  --brand-tokens-brand-950: #032220;
  /* 10 is the page: a cool lake mist, not white, so the white tint and card
     plates lift off it. */
  --brand-tokens-greyscale-10: #f3f6f5;
  --brand-tokens-greyscale-50: #eaf0ee;
  --brand-tokens-greyscale-100: #e6ecea;
  --brand-tokens-greyscale-200: #d0d9d7;
  --brand-tokens-greyscale-300: #abb6b4;
  --brand-tokens-greyscale-400: #808d8b;
  --brand-tokens-greyscale-500: #586462;
  --brand-tokens-greyscale-600: #455150;
  --brand-tokens-greyscale-700: #333d3c;
  --brand-tokens-greyscale-800: #222b2a;
  --brand-tokens-greyscale-900: #15201f;
  --brand-tokens-greyscale-950: #0d1514;
  --brand-tokens-greyscale-1000: #070c0b;
  --brand-tokens-typography-body: "Inter Tight";
  --brand-tokens-typography-labels: "Manrope";
  --brand-tokens-typography-titles-a: "Playfair Display";
  --brand-tokens-typography-titles-b: "Playfair Display";
  --tint-light: #ffffff;

  /* Optional roles (proposal 022). */
  --accent-secondary: #1d4f6e;
  --accent-signal: #d9a441;
  --accent-signal-strong: #9a6a14;
  --label-tone-civic: var(--brand-tokens-brand-700);
  --label-tone-everyday: var(--accent-secondary);
  --numbered-list-index-color: var(--accent-signal-strong);
  --card-fill: #ffffff;
  --card-pad: 12px;
  --card-surface-radius: 4px;
  --card-image-radius: 2px;
  --card-lead-image-radius: 4px;
  --card-shadow: 0 1px 2px rgba(13, 21, 20, 0.07), 0 3px 10px rgba(13, 21, 20, 0.05);
  --panel-radius: 4px;
  --card-grid-align: stretch;
  --menubar-current-underline: 3px;
  /* v4's item list scrolls on overflow, so a deeper offset clips the rule. */
  --menubar-current-underline-offset: 2px;
  --menubar-current-underline-color: var(--brand-tokens-brand-300);
}

/* Labels and kickers on the light grounds take the deep teal. The vivid 600
   they would inherit measures 4.36:1 on the paper. */
.template-root[data-brand="hendersonville-register"] .block-container--bg-default,
.template-root[data-brand="hendersonville-register"] .block-container--bg-tint {
  --text-default-4: var(--brand-tokens-brand-700);
}

/* The inverted bar sets its links in the title face; a serif in capitals reads
   fussy at nav size, so the links keep the label face. */
.template-root[data-brand="hendersonville-register"]
  .block-menubar[data-bg="inverted"]
  .block-menubar__link {
  font-family: var(--brand-tokens-typography-labels), sans-serif;
  font-size: 14px;
  font-weight: 500;
  letter-spacing: 0.06em;
}

/* The footer plate sits in the masthead's deep-lake family instead of a
   brighter teal, so the page opens and closes on one dark. */
.template-root[data-brand="hendersonville-register"] .block-container--bg-brand {
  background-color: var(--brand-tokens-brand-900);
}

/* Links come from the deep stops. The vivid 600 measures 4.36:1 on the paper,
   which is a plate and a rule, never a link. */
.template-root[data-brand="hendersonville-register"] .block-container--bg-default,
.template-root[data-brand="hendersonville-register"] .block-container--bg-tint {
  --interactive-text-primary-idle: var(--brand-tokens-brand-700);
  --interactive-text-primary-hover: var(--brand-tokens-brand-800);
  --interactive-text-primary-pressed: var(--brand-tokens-brand-900);
}
.template-root[data-brand="hendersonville-register"] .block-container--bg-brand {
  --interactive-text-primary-idle: var(--brand-tokens-brand-100);
  --interactive-text-primary-hover: var(--brand-tokens-greyscale-10);
  --interactive-text-primary-pressed: var(--brand-tokens-brand-200);
}
.template-root[data-brand="hendersonville-register"] .block-container--bg-inverted {
  --interactive-text-primary-idle: var(--brand-tokens-brand-300);
  --interactive-text-primary-hover: var(--brand-tokens-brand-200);
  --interactive-text-primary-pressed: var(--brand-tokens-brand-100);
  --text-default-4: var(--brand-tokens-brand-300);
}

/* Buttons: the fleet fill and hover both sit too light under a white label
   here, and on the two painted bands the button flips to paper. */
.template-root[data-brand="hendersonville-register"] {
  --interactive-contained-primary-idle: var(--brand-tokens-brand-700);
  --interactive-contained-primary-hover: var(--brand-tokens-brand-800);
  --interactive-contained-primary-pressed: var(--brand-tokens-brand-900);
}
.template-root[data-brand="hendersonville-register"] .block-container--bg-brand,
.template-root[data-brand="hendersonville-register"] .block-container--bg-inverted {
  --interactive-contained-primary-idle: var(--brand-tokens-greyscale-10);
  --interactive-contained-primary-hover: var(--brand-tokens-brand-100);
  --interactive-contained-primary-pressed: var(--brand-tokens-brand-200);
  --interactive-contained-primary-on-idle: var(--brand-tokens-brand-900);
}
.template-root[data-brand="hendersonville-register"] .block-container--bg-brand .block-cta__input,
.template-root[data-brand="hendersonville-register"]
  .block-container--bg-inverted
  .block-cta__input {
  color: var(--brand-tokens-greyscale-900);
}

.template-root[data-brand="hendersonville-register"]
  .block-container--bg-inverted:has(.block-header) {
  background-image: linear-gradient(
    180deg,
    transparent 40%,
    color-mix(in srgb, var(--brand-tokens-brand-600) 26%, transparent) 100%
  );
}

.template-root[data-brand="hendersonville-register"] .block-container--bg-brand {
  background-image: radial-gradient(
    130% 85% at 50% 125%,
    color-mix(in srgb, var(--brand-tokens-brand-950) 55%, transparent) 0%,
    transparent 70%
  );
}

.template-root[data-brand="hendersonville-register"]
  .block-container--bg-default
  .card-section-label,
.template-root[data-brand="hendersonville-register"] .block-container--bg-tint .card-section-label,
.template-root[data-brand="hendersonville-register"] .block-container--bg-default .article-kicker,
.template-root[data-brand="hendersonville-register"] .block-container--bg-tint .article-kicker {
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

/* Overlay forms set type on a photo; keep the fleet's light overlay ramp. */
.template-root[data-brand="hendersonville-register"]
  .block-container
  .block-hero__overlay-kicker.card-section-label,
.template-root[data-brand="hendersonville-register"]
  .block-container
  .block-hero__cover-kicker.card-section-label,
.template-root[data-brand="hendersonville-register"]
  .block-container
  .block-feature-card__overlay-kicker.card-section-label,
.template-root[data-brand="hendersonville-register"]
  .block-container
  .block-article-hero__overlay-kicker.article-kicker {
  color: var(--brand-tokens-greyscale-10);
}

.template-root[data-brand="hendersonville-register"] .block-header__masthead,
.template-root[data-brand="hendersonville-register"] .block-hero__lead-title,
.template-root[data-brand="hendersonville-register"] .block-feature-card__title,
.template-root[data-brand="hendersonville-register"] .block-article-hero__title {
  /* Playfair runs tight already; a lighter pull keeps its hairlines apart. */
  letter-spacing: -0.01em;
  line-height: 1.1;
}
