/* ============================================================
       NEWS ARTICLE — long-read layout for an individual release
       ============================================================ */
    .article-hero {
      padding-top: clamp(var(--space-7), 6vw, var(--space-9));
      padding-bottom: clamp(var(--space-6), 4vw, var(--space-7));
      border-bottom: var(--border-thin);
    }

    /* Hero image — wide, immersive, sits between crumbs and title */
    .article-hero-image {
      width: 100%;
      max-width: 1200px;
      margin: var(--space-6) auto var(--space-7);
      aspect-ratio: 21 / 9;
      object-fit: cover;
      border-radius: var(--radius-md);
      background: var(--color-surface-sunken);
      display: block;
      box-shadow: var(--shadow-sm);
    }
    @media (max-width: 720px) {
      .article-hero-image { aspect-ratio: 16 / 9; }
    }
    .article-hero__crumbs {
      font-family: var(--font-mono);
      font-size: var(--text-xs);
      color: var(--color-text-muted);
      margin-bottom: var(--space-6);
      letter-spacing: -0.005em;
    }
    .article-hero__crumbs a {
      color: var(--color-text);
      text-decoration: none;
    }
    .article-hero__crumbs a:hover { color: var(--color-brand-orange-deep); }
    .article-hero__crumbs .sep {
      margin: 0 var(--space-2);
      color: var(--color-hairline-strong);
    }
    .article-hero__dateline {
      font-family: var(--font-mono);
      font-size: var(--text-xs);
      letter-spacing: -0.005em;
      color: var(--color-text-muted);
      margin: 0 0 var(--space-3);
    }
    .article-hero__loc {
      display: inline-block;
      font-family: var(--font-sans);
      font-size: var(--text-xs);
      font-weight: var(--weight-semibold);
      letter-spacing: var(--tracking-wide);
      text-transform: uppercase;
      color: var(--color-brand-orange-deep);
      margin-bottom: var(--space-5);
    }
    .article-hero__title {
      font-family: var(--font-serif);
      font-size: clamp(1.85rem, 4vw, 2.8rem);
      font-weight: var(--weight-semibold);
      color: var(--color-ink);
      letter-spacing: -0.015em;
      line-height: 1.15;
      max-width: 22ch;
      text-wrap: balance;
      margin: 0;
    }

    .article-body {
      padding-top: clamp(var(--space-7), 5vw, var(--space-8));
      padding-bottom: clamp(var(--space-7), 5vw, var(--space-8));
    }
    .article-body__inner {
      max-width: 68ch;
    }
    .article-body p {
      font-size: var(--text-lg);
      line-height: 1.75;
      color: var(--color-text);
      margin: 0 0 var(--space-6);
    }
    .article-body p:last-child { margin-bottom: 0; }
    .article-body em { font-style: italic; }
    .article-body strong { font-weight: var(--weight-semibold); color: var(--color-ink); }

    /* Sidebar with "more from the archive" */
    .article-layout {
      display: grid;
      grid-template-columns: 1fr;
      gap: var(--space-9);
    }
    @media (min-width: 1024px) {
      .article-layout { grid-template-columns: minmax(0, 1fr) 280px; gap: var(--space-9); }
    }
    .article-sidebar {
      padding-top: var(--space-3);
    }
    .article-sidebar__label {
      font-family: var(--font-sans);
      font-size: var(--text-xs);
      letter-spacing: var(--tracking-wide);
      text-transform: uppercase;
      color: var(--color-text-muted);
      font-weight: var(--weight-semibold);
      margin: 0 0 var(--space-4);
    }
    .article-sidebar__list {
      list-style: none;
      padding: 0;
      margin: 0;
      display: grid;
      gap: var(--space-5);
    }
    .article-sidebar__item {
      padding-top: var(--space-4);
      border-top: var(--border-thin);
    }
    .article-sidebar__item:first-child {
      padding-top: 0;
      border-top: 0;
    }
    .article-sidebar__link {
      display: grid;
      grid-template-columns: 76px 1fr;
      gap: var(--space-4);
      align-items: start;
      text-decoration: none;
      color: inherit;
    }
    .article-sidebar__link--no-thumb { grid-template-columns: 1fr; }
    .article-sidebar__thumb {
      width: 76px;
      height: 76px;
      object-fit: cover;
      border-radius: var(--radius-sm);
      background: var(--color-surface-sunken);
      border-top: 2px solid var(--color-brand-orange);
      transition: filter var(--duration-base) var(--ease-out);
      filter: saturate(0.92);
    }
    .article-sidebar__link:hover .article-sidebar__thumb { filter: saturate(1); }
    .article-sidebar__content { min-width: 0; }
    .article-sidebar__date {
      font-family: var(--font-mono);
      font-size: var(--text-xs);
      letter-spacing: -0.005em;
      color: var(--color-text-muted);
      margin-bottom: var(--space-2);
      display: block;
    }
    .article-sidebar__title {
      display: block;
      font-family: var(--font-serif);
      font-size: var(--text-base);
      font-weight: var(--weight-semibold);
      color: var(--color-ink);
      line-height: 1.35;
      text-decoration: none;
      letter-spacing: -0.01em;
      text-wrap: pretty;
    }
    .article-sidebar__link:hover .article-sidebar__title { color: var(--color-brand-orange-deep); }

    /* Prev / next navigation */
    .article-nav {
      margin-top: clamp(var(--space-7), 5vw, var(--space-8));
      padding-top: var(--space-6);
      border-top: var(--border-thin);
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: var(--space-5);
    }
    .article-nav__btn {
      display: flex;
      flex-direction: column;
      gap: var(--space-2);
      padding: var(--space-5);
      border: var(--border-thin);
      border-radius: var(--radius-md);
      background: var(--color-surface-elevated);
      text-decoration: none;
      color: inherit;
      transition: border-color var(--duration-base) var(--ease-out), transform var(--duration-base) var(--ease-out), box-shadow var(--duration-base) var(--ease-out);
    }
    .article-nav__btn:hover {
      border-color: var(--color-brand-orange);
      transform: translateY(-1px);
      box-shadow: var(--shadow-sm);
    }
    .article-nav__btn--next { text-align: right; align-items: flex-end; }
    .article-nav__btn[aria-disabled="true"] {
      opacity: 0.4;
      pointer-events: none;
    }
    .article-nav__label {
      font-family: var(--font-mono);
      font-size: var(--text-xs);
      letter-spacing: -0.005em;
      color: var(--color-text-muted);
      text-transform: uppercase;
    }
    .article-nav__title {
      font-family: var(--font-serif);
      font-size: var(--text-base);
      font-weight: var(--weight-semibold);
      color: var(--color-ink);
      line-height: 1.3;
      letter-spacing: -0.005em;
    }

    /* Back-to-news link */
    .article-back {
      display: inline-flex;
      align-items: center;
      gap: var(--space-2);
      font-family: var(--font-sans);
      font-size: var(--text-sm);
      font-weight: var(--weight-semibold);
      color: var(--color-brand-navy);
      text-decoration: none;
      margin-top: var(--space-6);
    }
    .article-back:hover { color: var(--color-brand-orange-deep); }

    /* "Article not found" state */
    .article-missing {
      padding: clamp(var(--space-8), 8vw, var(--space-9)) 0;
      text-align: center;
    }
    .article-missing h1 {
      font-family: var(--font-serif);
      font-size: clamp(1.8rem, 3vw, 2.4rem);
      margin-bottom: var(--space-5);
    }
    .article-missing p {
      font-size: var(--text-lg);
      color: var(--color-text-muted);
      max-width: 48ch;
      margin: 0 auto var(--space-6);
      line-height: 1.6;
    }

    @media (max-width: 640px) {
      .article-nav { grid-template-columns: 1fr; }
      .article-nav__btn--next { text-align: left; align-items: flex-start; }
    }