body[data-note-design="keys-watercolor"] {
  --keys-ink: oklch(29% 0.04 170);
  --keys-paper: oklch(96% 0.025 85);
  --keys-sea: oklch(72% 0.06 180);
  --keys-sand: oklch(79% 0.085 80);
}

body[data-note-design="keys-watercolor"] .article-header--art-directed {
  position: relative;
  isolation: isolate;
  width: 100%;
  min-height: max(44rem, calc(100svh - var(--site-header-height, 154px)));
  margin: 0;
  padding: 0;
  overflow: hidden;
  color: var(--keys-ink);
  background: var(--keys-paper);
}

body[data-note-design="keys-watercolor"] .article-hero-media,
body[data-note-design="keys-watercolor"] .article-hero-veil {
  position: absolute;
  inset: 0;
  pointer-events: none;
}

body[data-note-design="keys-watercolor"] .article-hero-media {
  z-index: -2;
}

body[data-note-design="keys-watercolor"] .article-hero-media img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: var(--hero-position, center);
}

body[data-note-design="keys-watercolor"] .article-hero-veil {
  z-index: -1;
  background: linear-gradient(180deg, oklch(96% 0.025 85 / 0.15), transparent 48%);
}

body[data-note-design="keys-watercolor"] .article-header__inner {
  width: min(calc(100% - 2rem), var(--reading-column));
  margin: 0 auto;
  padding: clamp(2rem, 3.5vh, 2.75rem) 0 0;
  text-align: left;
}

body[data-note-design="keys-watercolor"] .article-meta {
  align-items: center;
  gap: 0.65rem 1.1rem;
  margin-bottom: 1.25rem;
  color: var(--keys-ink);
}

body[data-note-design="keys-watercolor"] .article-meta span:first-child {
  display: inline-flex;
  align-items: center;
  padding-block: 0.3rem;
  color: var(--keys-paper);
  background: var(--keys-ink);
  border-color: var(--keys-ink);
}

body[data-note-design="keys-watercolor"] .article-header h1 {
  max-width: none;
  margin: 0 0 1rem;
  font: 400 clamp(3.25rem, 5.5vw, 5rem) / 0.98 var(--font-display);
  letter-spacing: 0.005em;
  color: var(--keys-ink);
}

body[data-note-design="keys-watercolor"] .article-title--split > span {
  display: block;
}

body[data-note-design="keys-watercolor"] .article-header__inner > p {
  position: relative;
  isolation: isolate;
  max-width: none;
  margin: 0;
  color: var(--keys-ink);
  font: 500 1.1rem / 1.5 var(--font-body);
  text-wrap: pretty;
}

body[data-note-design="keys-watercolor"] .article-header__inner > p::before {
  content: "";
  position: absolute;
  z-index: -1;
  inset: -0.35rem -0.7rem;
  background: var(--keys-paper);
  filter: blur(0.65rem);
  pointer-events: none;
}

body[data-note-design="keys-watercolor"] .article-bands {
  height: 0.34rem;
  background: linear-gradient(90deg, var(--keys-ink) 0 32%, var(--keys-sea) 32% 75%, var(--keys-sand) 75%);
}

body[data-note-design="keys-watercolor"] .article-copy blockquote {
  color: var(--keys-ink);
  background: oklch(72% 0.06 180 / 0.1);
  border-color: var(--keys-sea);
}

/* Keep the whole restaurant visible below the copy on narrow screens. */
@media (max-width: 47.98rem) {
  body[data-note-design="keys-watercolor"] .article-header--art-directed {
    display: flex;
    flex-direction: column;
    min-height: 0;
  }

  body[data-note-design="keys-watercolor"] .article-header__inner {
    order: -1;
    padding-top: 2rem;
  }

  body[data-note-design="keys-watercolor"] .article-meta {
    gap: 0.6rem 0.8rem;
    font-size: 0.63rem;
  }

  body[data-note-design="keys-watercolor"] .article-header h1 {
    font-size: clamp(2.8rem, 10.6vw, 4.6rem);
  }

  body[data-note-design="keys-watercolor"] .article-header__inner > p {
    font-size: 1.05rem;
  }

  body[data-note-design="keys-watercolor"] .article-header__inner > p::before {
    display: none;
  }

  body[data-note-design="keys-watercolor"] .article-hero-media {
    position: relative;
    inset: auto;
    z-index: 0;
    height: clamp(20rem, 70vw, 34rem);
    margin-top: 0.5rem;
    overflow: hidden;
    mask-image: linear-gradient(transparent, black 12%);
  }

  body[data-note-design="keys-watercolor"] .article-hero-media img {
    width: 150%;
    max-width: none;
    height: auto;
    position: absolute;
    bottom: 0;
    left: -25%;
  }

  body[data-note-design="keys-watercolor"] .article-hero-veil {
    display: none;
  }
}
