/* Journal index — scoped to .page-journal so the shared editorial-* classes
       used by dining / events / explore / find-us are untouched. */
    .page-journal .jrnl-eyebrow {
      display: inline-block; font-family: var(--sans);
      font-size: 0.68rem; font-weight: 600; letter-spacing: 0.18em;
      text-transform: uppercase; color: var(--gold);
    }
    .page-journal .jrnl-meta {
      display: block; font-family: var(--sans); font-size: 0.76rem;
      letter-spacing: 0.04em; color: var(--stone); margin-top: 0.75rem;
    }
    .page-journal .jrnl-dot {
      display: inline-block; width: 3px; height: 3px; border-radius: 50%;
      background: currentColor; vertical-align: middle; margin: 0 0.4rem;
      opacity: 0.6;
    }
    .page-journal .jrnl-more {
      display: inline-block; margin-top: 1.4rem; font-family: var(--sans);
      font-size: 0.74rem; font-weight: 600; letter-spacing: 0.14em;
      text-transform: uppercase; color: var(--pink-dark);
    }

    /* ── Lead ─────────────────────────────────────────── */
    .page-journal .jrnl-lead {
      display: block; position: relative; text-decoration: none; color: inherit;
      margin-bottom: 4.5rem;
    }
    .page-journal .jrnl-lead__media {
      position: relative; overflow: hidden; border-radius: 2px;
      aspect-ratio: 16 / 9;
    }
    .page-journal .jrnl-lead__media img {
      width: 100%; height: 100%; object-fit: cover; display: block;
      transition: transform 900ms cubic-bezier(0.16, 1, 0.3, 1);
    }
    .page-journal .jrnl-lead:hover .jrnl-lead__media img { transform: scale(1.03); }
    .page-journal .jrnl-lead__panel {
      background: var(--warm-white); padding: 2.2rem 2rem 2rem;
      border-top: 2px solid var(--gold);
    }
    .page-journal .jrnl-lead__title {
      font-family: var(--serif); font-weight: 300;
      font-size: clamp(1.9rem, 4vw, 3.1rem); line-height: 1.08;
      color: var(--ink); margin: 0.7rem 0 0;
    }
    .page-journal .jrnl-lead__excerpt {
      font-size: 1rem; line-height: 1.75; color: var(--mid);
      margin: 1rem 0 0; max-width: 46em;
    }

    /* ── Cards ────────────────────────────────────────── */
    .page-journal .jrnl-pair,
    .page-journal .jrnl-grid { display: grid; gap: 2.4rem; }
    .page-journal .jrnl-card { display: block; text-decoration: none; color: inherit; }
    .page-journal .jrnl-card__media {
      position: relative; overflow: hidden; border-radius: 2px;
      aspect-ratio: 3 / 2; margin-bottom: 1.1rem;
    }
    .page-journal .jrnl-card--wide .jrnl-card__media { aspect-ratio: 16 / 10; }
    .page-journal .jrnl-card__media img {
      width: 100%; height: 100%; object-fit: cover; display: block;
      transition: transform 900ms cubic-bezier(0.16, 1, 0.3, 1);
    }
    .page-journal .jrnl-card:hover .jrnl-card__media img { transform: scale(1.04); }
    .page-journal .jrnl-card__title {
      font-family: var(--serif); font-weight: 300; line-height: 1.15;
      font-size: 1.45rem; color: var(--ink); margin: 0.5rem 0 0;
    }
    .page-journal .jrnl-card--wide .jrnl-card__title { font-size: 1.8rem; }
    .page-journal .jrnl-card:hover .jrnl-card__title { color: var(--pink-dark); }
    .page-journal .jrnl-card__excerpt {
      font-size: 0.92rem; line-height: 1.7; color: var(--mid); margin: 0.6rem 0 0;
    }
    .page-journal .jrnl-rule {
      border: 0; border-top: 1px solid var(--line, rgba(120,67,86,0.16));
      margin: 4rem 0 3rem;
    }

    :is(.dark) .page-journal .jrnl-lead__panel { background: rgba(255,255,255,0.03); }
    :is(.dark) .page-journal .jrnl-card__title,
    :is(.dark) .page-journal .jrnl-lead__title { color: var(--cream); }

    @media (prefers-reduced-motion: reduce) {
      .page-journal .jrnl-lead__media img,
      .page-journal .jrnl-card__media img { transition: none; }
    }

    /* Breakpoints last, so they win over the base rules above. */
    @media (min-width: 700px) {
      .page-journal .jrnl-pair { grid-template-columns: 1fr 1fr; }
    }
    @media (min-width: 960px) {
      .page-journal .jrnl-grid { grid-template-columns: repeat(3, 1fr); }
      .page-journal .jrnl-lead__panel {
        position: relative; margin: -5rem 3.5rem 0 3.5rem;
        padding: 2.8rem 3rem 2.6rem;
      }
    }
