
  /* Hero: same per-type gradient, a touch taller and with a soft light
     sweep so the flat panel reads as intentional; the page heading lives
     here. */
  body.golf-page .venue-hero-fallback {
    position: relative; min-height: 280px; padding: 34px 36px; border-radius: 14px;
  }
  body.golf-page .venue-hero-fallback.venue-hero-golf { box-shadow: 0 18px 34px -22px rgba(52,89,66,0.7); }
  body.golf-page .venue-hero-fallback.venue-hero-beach { box-shadow: 0 18px 34px -22px rgba(16,27,36,0.75); }
  body.golf-page .venue-hero-fallback.venue-hero-outdoor { box-shadow: 0 18px 34px -22px rgba(47,33,24,0.75); }
  body.golf-page .venue-hero-fallback::before {
    content: ""; position: absolute; inset: 0; pointer-events: none;
    background:
      radial-gradient(120% 90% at 100% 0%, rgba(255,255,255,0.14), rgba(255,255,255,0) 55%),
      linear-gradient(180deg, rgba(0,0,0,0) 45%, rgba(16,32,22,0.28) 100%);
  }
  body.golf-page .venue-hero-fallback::after {
    content: ""; position: absolute; inset: 10px; pointer-events: none;
    border: 1px solid rgba(255,255,255,0.14); border-radius: 8px;
  }
  body.golf-page .venue-hero-fallback .venue-hero-type,
  body.golf-page .venue-hero-fallback h1 { position: relative; z-index: 1; }
  body.golf-page .venue-hero-fallback .venue-hero-type {
    font-family: 'Nunito', 'Nunito Fallback', sans-serif; font-size: 0.74rem; font-weight: 800; letter-spacing: 0.12em;
    text-transform: uppercase; color: rgba(255,255,255,0.82); margin-bottom: 10px;
  }
  body.golf-page .venue-hero-fallback h1 {
    font-family: 'Fraunces', 'Fraunces Fallback', serif; font-weight: 600; line-height: 1.1;
    font-size: clamp(1.9rem, 3.6vw, 2.75rem); margin: 0; color: var(--ref-white); max-width: 22ch;
    text-shadow: 0 1px 2px rgba(16,32,22,0.25);
  }
  /* Under the hero: category/region meta first (no repeated title), then
     any badges, then the description. */
  body.golf-page .venue-header { margin: 0 0 14px; }
  body.golf-page .venue-header .venue-at-a-glance {
    margin: 0 0 8px; font-size: 0.86rem; font-weight: 700; letter-spacing: 0.02em;
    color: rgba(42,32,25,0.76); opacity: 1;
  }
  body.golf-page .venue-header .venue-at-a-glance a { color: var(--ref-navy); text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 2px; }
  body.golf-page .venue-header .venue-at-a-glance a:hover { color: var(--ref-gold-ink, #8A6A0F); }
  body.golf-page .venue-header .chips:empty { display: none; }
  body.golf-page .venue-description { font-size: 1.06rem; line-height: 1.7; max-width: 72ch; margin: 0 0 22px; }
  /* Good to Know: let an unbreakable website URL (e.g. a StoryMaps hash)
     wrap instead of forcing a sideways scroll on phones; ordinary links
     are unaffected because they never overflow. */
  body.golf-page .venue-key-info .detail-row a { overflow-wrap: anywhere; }
  /* At a glance: the paper card system, with a compact label/value grid. */
  body.golf-page .venue-section.golf-glance { padding: 20px 22px 8px; }
  body.golf-page .golf-glance h2 { margin-bottom: 14px; }
  body.golf-page .golf-glance dl {
    display: grid; grid-template-columns: 1fr; gap: 0 28px; margin: 0;
  }
  @media (min-width: 640px) { body.golf-page .golf-glance dl { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
  @media (min-width: 1000px) { body.golf-page .golf-glance dl { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
  body.golf-page .golf-glance .golf-glance-item {
    padding: 10px 0 12px; border-top: 1px solid rgba(27,43,58,0.1);
  }
  body.golf-page .golf-glance dt {
    font-family: 'Nunito', 'Nunito Fallback', sans-serif; font-size: 0.72rem; font-weight: 800; letter-spacing: 0.1em;
    text-transform: uppercase; color: rgba(42,32,25,0.76); margin: 0 0 3px; /* round 12 (2026-10-20): was 0.55, 3.65:1 */
  }
  body.golf-page .golf-glance dd { margin: 0; font-size: 0.95rem; line-height: 1.45; color: var(--ink); }
  @media (max-width: 640px) {
    body.golf-page .venue-hero-fallback { min-height: 200px; padding: 22px 20px; }
    body.golf-page .venue-hero-fallback::after { inset: 8px; }
    body.golf-page .venue-hero-fallback h1 { font-size: 1.6rem; }
    body.golf-page .venue-section.golf-glance { padding: 16px 16px 4px; }
  }
