/* Homepage-only styles */
.hero{ max-width:none; margin:0; }
.hero h1{
  font-size:80px;
  word-spacing:0.35em;
  margin-bottom:26vh; /* lifts the title off the bottom edge; the scroll cue stays put */
}
.hero h1 .kicker{
  display:block;
  font-family:'IBM Plex Mono', monospace;
  font-size:16px;
  font-weight:400;
  letter-spacing:0.12em;
  text-transform:uppercase;
  word-spacing:normal;
  line-height:1;
  color:rgba(255, 255, 255, 0.75);
  margin-bottom:18px;
}
@media (max-width:700px){
  .hero h1{ font-size:clamp(2.2rem, 11vw, 80px); }
  .hero h1 .kicker{ margin-bottom:12px; }
}

/* Section headings on the homepage: small label on the left, count on the right, one line */
.section-head{ align-items:baseline; }
.section-head h2.eyebrow{
  font-family:'IBM Plex Mono', monospace;
  font-size:14px;
  font-weight:400;
  letter-spacing:0.12em;
  text-transform:uppercase;
  color:var(--muted);
  margin-bottom:0;
}

/* ---------- News ---------- */
.news-list{
  display:flex;
  flex-direction:column;
}
.news-item{
  display:grid;
  grid-template-columns:140px 1fr;
  gap:32px;
  padding:32px 0;
  border-bottom:1px solid var(--line);
}
.news-item:first-child{ padding-top:0; }
.news-item .news-dates{
  font-family:'IBM Plex Mono', monospace;
  font-size:14px;
  line-height:1.6;
  color:var(--muted);
  padding-top:4px;
}
.news-item h3{
  font-family:'Alegreya', serif;
  font-weight:400;
  font-size:clamp(1.15rem, 2vw, 1.5rem);
  letter-spacing:0.01em;
  margin-bottom:8px;
}
.news-item .news-venue{
  font-size:15px;
  color:#2c2c28;
}
.news-item .news-venue a{
  color:var(--accent);
  border-bottom:1px solid var(--accent);
  transition:opacity 0.2s ease;
}
.news-item .news-venue a:hover, .news-item .news-venue a:focus-visible{ opacity:0.7; }
@media (max-width:700px){
  .news-item{ grid-template-columns:1fr; gap:8px; }
  .news-item .news-dates{ padding-top:0; }
}

