/* News follows the current What We Stand For page. Scoped to the posts index. */
@font-face { font-family:AllianceNewsDisplay; src:url('../fonts/archivo-latin.woff2') format('woff2'); font-weight:400 900; font-display:swap; }
body.blog {
  --news-paper:#f5eee0; --news-red:#821918; --news-pine:#0f4f45; --news-ink:#242422;
  --news-white:#fff; --news-offset:rgba(130,25,24,.12);
}
body.blog .header, body.blog .header.header-scrolled { background:var(--news-paper); }
body.blog .header .header-logo { color:var(--news-red); }
body.blog .header .header-nav a:not(.btn) { color:var(--news-ink); }
body.blog .header .header-nav a:not(.btn):hover,
body.blog .header .header-nav a[aria-current="page"]:not(.btn) { color:var(--news-red); }
body.blog .header .header-nav a:not(.btn)::after,
body.blog .header .mobile-toggle span { background:var(--news-red); }
body.blog .header .header-nav .btn.btn-primary { background:var(--news-red); color:var(--news-paper); border-color:var(--news-red); }
body.blog #main > section > .container { max-width:1200px; }
body.blog .interior-hero {
  padding:calc(var(--header-height,72px) + 54px) 0 44px;
  background:var(--news-paper); text-align:left;
}
body.blog .interior-hero::before, body.blog .interior-hero::after { display:none; }
body.blog .interior-hero .container { display:grid; grid-template-columns:1.1fr 1fr; gap:var(--space-20); align-items:end; }
body.blog .interior-hero-headline {
  font:900 clamp(3.25rem,6.2vw,5.5rem)/.93 var(--font-display);
  letter-spacing:-.055em; text-transform:none; color:var(--news-red); margin:0;
}
body.blog .news-intro { max-width:480px; margin:0; font:800 1.35rem/1.25 var(--font-heading); color:var(--news-red); }
body.blog .news-listing { background:var(--news-paper); padding:var(--space-3) 0 var(--space-24); }
body.blog .news-grid { grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
body.blog .news-card {
  border:0; border-top:7px solid var(--news-red); border-radius:0;
  box-shadow:7px 7px 0 var(--news-offset); background:var(--news-white);
  min-width:0; min-height:0; transform:none;
}
body.blog .news-card:hover { transform:none; box-shadow:7px 7px 0 var(--news-offset); }
body.blog .news-card:focus-within { outline:3px solid var(--news-pine); outline-offset:5px; }
body.blog .news-card-image,
body.blog .news-card--constitutional-policy .news-card-image,
body.blog .news-card-image:has(.alliance-event-artwork) {
  display:flex; align-items:center; aspect-ratio:1.85; height:auto; border-radius:0; background:var(--paper-2);
}
body.blog .news-card-image img { width:100%; height:100%; object-fit:cover; object-position:center; }
body.blog .news-card:hover .news-card-image img { transform:none; }
body.blog .news-card-image img[src*="gender-equality"] { object-position:50% 43%; }
body.blog .news-card-image img[src*="greymouth-factory"] { object-position:50% 58%; }
body.blog .news-card-image img[src*="matt-robson"] { object-position:50% 28%; }
body.blog .news-card-image img[src*="social-security-health"] { object-position:50% 25%; }
body.blog .news-card-image img.alliance-news-logo,
body.blog .news-card-image img.alliance-event-artwork,
body.blog .news-card-image img[src*="alliance-candidates-2026"],
body.blog .news-card--constitutional-policy .news-card-image img { height:100%; object-fit:contain; }
body.blog .news-card-body { padding:22px 22px 18px; gap:0; flex:1; }
/* Use the story's actual text when no photograph is available. */
body.blog .news-card--text-only::before, body.blog .news-card--text-only::after { display:none; }
body.blog .news-card--text-only .news-card-body { padding-top:28px; }
body.blog .news-meta { align-items:baseline; flex-wrap:wrap; gap:var(--space-3); margin-bottom:var(--space-3); }
body.blog .news-meta-category {
  color:var(--news-red); background:transparent; padding:0; border-radius:0;
  font:800 .8125rem/1.3 var(--font-heading); letter-spacing:.04em; text-transform:uppercase;
}
body.blog .news-meta-date { color:var(--neutral-700); font-size:.8125rem; }
body.blog .news-card-title {
  font:900 clamp(1.375rem,1.9vw,1.625rem)/1.12 AllianceNewsDisplay,var(--font-display),sans-serif;
  font-variation-settings:'wght' 900,'wdth' 75;
  letter-spacing:-.04em; text-transform:none; color:var(--news-red); margin:0 0 14px;
}
body.blog .news-card-title a { color:inherit; position:static; }
body.blog .news-card-title a::after { content:''; position:absolute; inset:0; }
body.blog .news-card:hover .news-card-title a,
body.blog .news-card:focus-within .news-card-title a { text-decoration:underline; text-underline-offset:.15em; }
body.blog .news-card-title a:focus-visible { outline:none; }
body.blog .news-card-excerpt { margin:0 0 18px; font:400 .9375rem/1.6 var(--font-body); color:var(--news-ink); }
body.blog .news-card-action {
  display:flex; justify-content:space-between; align-items:center; gap:var(--space-5); margin-top:auto;
  min-height:48px; padding-bottom:var(--space-2); border-bottom:2px solid currentColor;
  font:800 1rem/1.4 var(--font-heading); color:var(--news-red);
}
body.blog .page-numbers { border-radius:0; min-width:44px; min-height:44px; }
@media (max-width:1100px) {
  body.blog .news-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  body.blog .interior-hero .container { gap:var(--space-8); }
  body.blog .news-card-body { padding:var(--space-6); }
}
@media (max-width:700px) {
  body.blog .interior-hero { padding-top:calc(var(--header-height,72px) + 30px); padding-bottom:28px; }
  body.blog .interior-hero .container { grid-template-columns:1fr; gap:28px; }
  body.blog .interior-hero-headline { font-size:clamp(3rem,12vw,4.75rem); }
  body.blog .news-intro { font-size:1.15rem; }
  body.blog .news-grid { grid-template-columns:minmax(0,1fr); }
  body.blog .news-card-title { font-size:1.5rem; }
  body.blog .news-card-body { padding:24px 22px 16px; }
  body.blog .news-card-action { font-size:.9375rem; }
}
@media (prefers-reduced-motion:reduce) { body.blog .news-card { transition:none; } }
