/* Shared article header. Reading-column type and the site's text-size controls
   keep their existing sizes. All selectors stay inside the article template. */
.news-article__header {
  padding-block: clamp(1.75rem, 3vw, 3rem) clamp(1.75rem, 3vw, 3rem);
  border-bottom: 1px solid var(--line);
  background: linear-gradient(120deg, var(--paper) 65%, var(--soft));
}
.news-article__lead {
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr);
  align-items: center;
  gap: clamp(2rem, 4vw, 4rem);
}
.news-article__intro { min-width: 0; }
.news-article__classification {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: .5rem 1rem;
  margin-bottom: 1.15rem;
}
.news-article__classification .eyebrow {
  margin: 0;
  color: var(--ink);
  text-decoration: none;
}
.news-article__classification .eyebrow:hover { text-decoration: underline; }
.news-article__classification .news-article__topics { margin: 0; }
.news-article__classification .news-article__topics a {
  padding: .35rem .75rem;
  background: var(--paper);
}
.news-article__header h1 {
  max-width: 22ch;
  margin: 0;
  font-size: clamp(2rem, 3.7vw, 3.25rem);
  line-height: 1.12;
  letter-spacing: -.035em;
  overflow-wrap: anywhere;
  text-wrap: balance;
}
.news-article__summary { margin-block: 1.25rem 0; }
.news-article__meta {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem 2rem;
  margin: 1.5rem 0 0;
  padding: 1rem 0 0;
  border-top: 1px solid var(--line);
}
.news-article__meta > div { min-width: 0; }
.news-article__meta dt {
  font-size: .75rem;
  font-weight: 600;
  letter-spacing: .06em;
  text-transform: uppercase;
  color: var(--muted);
}
.news-article__meta dd {
  margin: .35rem 0 0;
  color: var(--ink);
  font-size: .95rem;
  line-height: 1.5;
  overflow-wrap: anywhere;
}
.news-article__image {
  width: 100%;
  min-width: 0;
  max-width: none;
  margin: 0;
  overflow: hidden;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background: var(--soft);
}
.news-article__image img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 4 / 3;
  object-fit: cover;
  border-radius: 0;
}
.news-article__lead--text-only { display: block; max-width: 46rem; }
@media (max-width: 64rem) {
  .news-article__lead { grid-template-columns: minmax(0, 1fr); max-width: 46rem; gap: 1.75rem; }
  .news-article__header h1 { max-width: none; }
  .news-article__image img { aspect-ratio: 16 / 9; }
}
@media (max-width: 36rem) {
  .news-article__classification { column-gap: .75rem; }
  .news-article__meta { column-gap: 1.5rem; }
}

.event-details{display:flex;flex-wrap:wrap;gap:.75rem 2rem;margin:1.25rem 0;padding:1rem 0;border-block:1px solid #66735940}
.event-details dt{font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em}.event-details dd{margin:.25rem 0 0;font-size:1.05rem}

.news-article__image--event img{aspect-ratio:auto;object-fit:contain}


/* News workspace: shared listing/detail layout, scoped away from catalogue/admin. */
.news-workspace{display:grid;grid-template-columns:minmax(0,1fr) minmax(15rem,.38fr);align-items:start;gap:clamp(1.5rem,3vw,3rem)}
.news-workspace__results,.news-article__main{min-width:0}
.news-listing .news-workspace{margin-top:2rem}
.news-sticky{position:sticky;top:var(--news-sticky-top,1rem);max-height:calc(100vh - var(--news-sticky-top,1rem) - 1rem);max-height:calc(100dvh - var(--news-sticky-top,1rem) - 1rem);overflow:auto;overscroll-behavior:contain;scrollbar-gutter:stable;min-width:0}
.news-listing__sidebar{padding:1.25rem;border:1px solid var(--line);border-top:3px solid var(--green);background:var(--white)}
.news-listing__sidebar>h2{font-size:1.15rem;line-height:1.4;letter-spacing:0;margin:0 0 1rem}
.news-filter-form fieldset{min-width:0;padding:0;margin:0 0 1.25rem;border:0}
.news-filter-form legend{font-size:.9rem;font-weight:650;margin-bottom:.4rem;color:var(--ink)}
.news-filter-form label{display:flex;align-items:flex-start;gap:.6rem;min-height:36px;padding:.35rem 0;font-size:.9rem;line-height:1.5;cursor:pointer;overflow-wrap:anywhere}
.news-filter-form input[type=radio]{appearance:auto;width:1rem;height:1rem;flex:0 0 1rem;margin:.2rem 0 0;accent-color:var(--avant-link,var(--forest))}
.news-filter-form__actions{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem 1rem;border-top:1px solid var(--line);padding-top:1rem}
.news-filter-form__actions .button{min-height:44px;padding:.65rem 1rem;font-size:.9rem}
.news-filter-form__actions>a{font-size:.85rem}
.news-filters-mobile{display:none}
.news-listing .news-card-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem;align-items:stretch}
.news-listing :is(.news-card,.skeleton-news-card){display:flex;flex-direction:column;align-items:stretch;grid-row:auto;gap:0;padding:1rem;background:var(--white);height:100%;min-width:0}
.news-listing .news-card__frame{width:100%;margin-bottom:1rem}
.news-listing .news-card__image{position:relative;aspect-ratio:16/9;border:1px solid var(--line);background:var(--soft)}
.news-listing .news-card__image img{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover}
.news-listing .news-card__image--event img{object-fit:contain;width:auto;max-width:100%;left:50%;right:auto;transform:translateX(-50%)}
.news-listing .news-card__metadata{min-width:0;min-height:5.5rem}
.news-listing .news-card__type{margin:0 0 .35rem;font-size:.75rem;font-weight:650;letter-spacing:.05em;text-transform:uppercase;color:var(--ink)}
.news-listing .news-card__date,.news-listing .news-card__venue{font-size:.85rem;line-height:1.45;margin:0 0 .35rem;color:var(--muted)}
.news-listing .news-card__categories{display:flex;flex-wrap:wrap;gap:.25rem .65rem;list-style:none;padding:0;margin:.5rem 0 .75rem;font-size:.8rem;line-height:1.5}
.news-listing .news-card__title{font-size:1.25rem;line-height:1.35;margin:0;min-height:2.7em;letter-spacing:-.015em}
.news-listing .news-card__excerpt{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden;font-size:.95rem;line-height:1.6;margin:.8rem 0 1rem}
.news-listing .news-card__author{font-size:.8rem;margin:auto 0 0;padding-top:.8rem}
.news-listing__empty{grid-column:1/-1;padding:1.5rem;border:1px solid var(--line);background:var(--white)}
@supports(grid-template-rows:subgrid){.news-listing :is(.news-card,.skeleton-news-card){display:grid;grid-template-rows:subgrid;grid-row:span 5;row-gap:0}}
.news-article__layout{padding-block:clamp(1.5rem,3vw,3rem)}
.news-article__layout .news-article__reading{max-width:46rem;margin-inline:0}
.news-article__layout .news-article__body{padding-top:0}
.news-article__body>.prose+.prose{margin-top:1.5rem}
.news-article__body .prose img{max-width:100%;height:auto}
.news-article__sidebar{display:grid;gap:1rem}
.news-sidebox{padding:1.25rem;background:var(--white);border:1px solid var(--line);min-width:0}
.news-sidebox h2{font-size:1.15rem;line-height:1.4;letter-spacing:-.01em;margin:0 0 .8rem}
.news-sidebox h2:not(:first-child){margin-top:1.25rem}
.news-sidebar-posts,.news-sidebar-topics{list-style:none;padding:0;margin:0}
.news-sidebar-posts li+li{border-top:1px solid var(--line);margin-top:1rem;padding-top:1rem}
.news-sidebar-posts a,.news-sidebar-topics a{display:inline-block;padding-block:.25rem;font-size:.95rem;line-height:1.5;overflow-wrap:anywhere}
.news-sidebar-posts__meta{font-size:.75rem;line-height:1.5;color:var(--muted);margin:0 0 .25rem}
.news-sidebar-topics li+li{margin-top:.25rem}
.news-sidebar-enquiry{background:var(--soft);border-left:3px solid var(--green)}
.news-sidebar-enquiry>p:not(.eyebrow){font-size:.95rem;line-height:1.65;margin-bottom:1rem}
.news-sidebar-enquiry .eyebrow{font-size:.75rem;margin-bottom:.5rem}
.news-sidebar-enquiry .button{font-size:.9rem;padding:.7rem 1rem;min-height:44px;white-space:normal;text-align:center}
.news-sidebar-back{font-size:.9rem;padding:.5rem 0}
/* Accent only: the established title/metadata/event layout and image ratios stay. */
.news-article__image{border:0;overflow:visible;background:transparent;border-radius:0}
.news-article__image .image-accent img{border:1px solid var(--line)}
@media(max-width:64rem){
 .news-workspace{grid-template-columns:minmax(0,1fr)}
 .news-listing__sidebar{display:none}
 .news-filters-mobile{display:block;margin-top:1.5rem;border:1px solid var(--line);border-top:3px solid var(--green);background:var(--white)}
 .news-filters-mobile>summary{cursor:pointer;padding:1rem;min-height:48px;font-weight:600;font-size:1rem}
 .news-filters-mobile>summary span{font-size:.8rem;color:var(--muted);font-weight:400;margin-left:.75rem}
 .news-filters-mobile__body{padding:0 1rem 1rem}
 .news-listing .news-workspace{margin-top:1.5rem}
 .news-sticky{position:static;max-height:none;overflow:visible;scrollbar-gutter:auto}
 .news-article__sidebar{grid-template-columns:repeat(2,minmax(0,1fr))}
 .news-sidebar-back{grid-column:1/-1}
}
@media(max-width:40rem){.news-listing .news-card-grid,.news-article__sidebar{grid-template-columns:minmax(0,1fr)}.news-listing .news-card__title{min-height:0}.news-filter-form__actions{align-items:stretch}.news-filter-form__actions .button{flex:1 1 auto}}

/* Keep the existing result geometry reserved while a real GET is pending. */
.news-workspace__results{position:relative}
.news-results-skeleton[hidden]{display:none!important}
.news-results-skeleton{position:absolute;inset:0;overflow:hidden;pointer-events:none}
.news-workspace__results.is-loading .news-results-content{visibility:hidden}
.news-results-skeleton>.news-card-grid{position:sticky;top:var(--news-sticky-top,1rem)}
.news-loading-status.alert{margin:1rem auto;max-width:var(--container,80rem);padding:1rem}
