.template-root[data-brand="carlsbad-current"] {
  --brand-tokens-brand-50: #fef6e0;
  --brand-tokens-brand-100: #fdebb8;
  --brand-tokens-brand-200: #fbd670;
  --brand-tokens-brand-300: #f7c02e;
  --brand-tokens-brand-400: #eeb00f;
  --brand-tokens-brand-500: #e6a80d;
  --brand-tokens-brand-600: #e2a50c;
  --brand-tokens-brand-700: #7a5407;
  --brand-tokens-brand-800: #573b05;
  --brand-tokens-brand-900: #3b2804;
  --brand-tokens-brand-950: #221802;
  --brand-tokens-greyscale-10: #fffdf5;
  --brand-tokens-greyscale-50: #faf6ea;
  --brand-tokens-greyscale-100: #f0ebdb;
  --brand-tokens-greyscale-200: #ded7c3;
  --brand-tokens-greyscale-300: #bcb39c;
  --brand-tokens-greyscale-400: #948b74;
  --brand-tokens-greyscale-500: #665f4c;
  --brand-tokens-greyscale-600: #544e3e;
  --brand-tokens-greyscale-700: #403b2f;
  --brand-tokens-greyscale-800: #2c2820;
  --brand-tokens-greyscale-900: #211e18;
  --brand-tokens-greyscale-950: #171510;
  --brand-tokens-greyscale-1000: #0c0b08;
  --brand-tokens-typography-body: "Instrument Sans";
  --brand-tokens-typography-labels: "DM Mono";
  --brand-tokens-typography-titles-a: "Space Grotesk";
  --brand-tokens-typography-titles-b: "Space Grotesk";
  --tint-light: #fdf3dc; /* ranunculus field, two shades off the cream page */
  --accent-lagoon: #2f8f9c; /* Batiquitos lagoon, wash only */
}

/* The anchor (brand-600) is a surface colour, too light to carry type: marks
   and links come off the deep end of the ramp instead. Declared per painted
   surface — Container.css remaps text tokens on a painted band but not the
   interactive ones, so a root declaration would land dark-on-dark. */
.template-root[data-brand="carlsbad-current"] .block-container--bg-default,
.template-root[data-brand="carlsbad-current"] .block-container--bg-tint {
  --interactive-text-primary-idle: var(--brand-tokens-brand-800);
  --interactive-text-primary-hover: var(--brand-tokens-brand-900);
  --interactive-text-primary-pressed: var(--brand-tokens-brand-800);
  --text-default-4: var(--brand-tokens-brand-800);
  /* Section-title bars and squares carry a label, so the fill obeys 4.5:1. */
  --elevation-fill-default-4: var(--brand-tokens-brand-700);
}
.template-root[data-brand="carlsbad-current"] .block-container--bg-brand {
  --interactive-text-primary-idle: var(--brand-tokens-brand-100);
  --interactive-text-primary-hover: var(--brand-tokens-brand-50);
  --interactive-text-primary-pressed: var(--brand-tokens-brand-200);
}
.template-root[data-brand="carlsbad-current"] .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);
}
.template-root[data-brand="carlsbad-current"] {
  /* A white label needs the deep end of the ramp under it, at every state. */
  --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="carlsbad-current"] .block-container--bg-brand,
.template-root[data-brand="carlsbad-current"] .block-container--bg-inverted {
  --interactive-contained-primary-idle: var(--brand-tokens-greyscale-10);
  --interactive-contained-primary-hover: var(--brand-tokens-greyscale-100);
  --interactive-contained-primary-pressed: var(--brand-tokens-greyscale-200);
  --interactive-contained-primary-on-idle: var(--brand-tokens-brand-900);
}
/* Painted containers otherwise render typed input text on the field's light fill. */
.template-root[data-brand="carlsbad-current"] .block-container--bg-brand .block-cta__input,
.template-root[data-brand="carlsbad-current"] .block-container--bg-inverted .block-cta__input {
  color: var(--brand-tokens-greyscale-900);
}

/* Depth moves the surface away from the type's luminance: light type on a dark
   band means darkening from below. */
.template-root[data-brand="carlsbad-current"] .block-container--bg-brand {
  background-image: radial-gradient(
    132% 80% at 50% 126%,
    color-mix(in srgb, var(--brand-tokens-brand-950) 24%, transparent) 0%,
    transparent 74%
  );
}
.template-root[data-brand="carlsbad-current"] .block-container--bg-inverted {
  background-image: radial-gradient(
    132% 76% at 50% 124%,
    color-mix(in srgb, var(--brand-tokens-greyscale-1000) 26%, transparent) 0%,
    transparent 72%
  );
}

/* Header wash: the flower fields read as a band of colour across the top, not a glow. */
.template-root[data-brand="carlsbad-current"] .block-container--bg-default:has(.block-header) {
  background-image:
    linear-gradient(
      180deg,
      color-mix(in srgb, var(--brand-tokens-brand-400) 30%, transparent) 0%,
      color-mix(in srgb, var(--brand-tokens-brand-400) 8%, transparent) 62%,
      transparent 100%
    ),
    radial-gradient(
      70% 120% at 88% -10%,
      color-mix(in srgb, var(--accent-lagoon) 22%, transparent) 0%,
      transparent 62%
    );
}
/* Section rules come in bronze at 3px — the repeated mark down the page. */
.template-root[data-brand="carlsbad-current"] .block-container--bg-default .block-section-title__line,
.template-root[data-brand="carlsbad-current"] .block-container--bg-tint .block-section-title__line {
  border-top-color: var(--brand-tokens-brand-700);
  border-top-width: 3px;
}
.template-root[data-brand="carlsbad-current"] .block-container--bg-default .block-section-title--v1,
.template-root[data-brand="carlsbad-current"] .block-container--bg-tint .block-section-title--v1 {
  border-bottom-color: var(--brand-tokens-brand-700);
}
.template-root[data-brand="carlsbad-current"] .block-container--bg-default .card-section-label,
.template-root[data-brand="carlsbad-current"] .block-container--bg-tint .card-section-label {
  color: var(--brand-tokens-brand-800);
}
.template-root[data-brand="carlsbad-current"] .block-section-title {
  letter-spacing: 0.02em;
}

/* Overlay forms set type on a photo, so the recoloured kicker/meta above would
   land on the scrim. These keep the fleet's light overlay ramp. */
.template-root[data-brand="carlsbad-current"] .block-hero__overlay-kicker.card-section-label,
.template-root[data-brand="carlsbad-current"] .block-feature-card__overlay-kicker.card-section-label,
.template-root[data-brand="carlsbad-current"] .block-article-hero__overlay-kicker {
  color: var(--brand-tokens-greyscale-10);
}
.template-root[data-brand="carlsbad-current"] .block-hero__overlay-meta.card-meta,
.template-root[data-brand="carlsbad-current"] .block-feature-card__meta--overlay.card-meta,
.template-root[data-brand="carlsbad-current"] .block-article-hero__overlay-meta {
  color: var(--brand-tokens-greyscale-200);
}
