/* ===========================================================
   NEWS PAGE STYLES
   Edit here to restyle the news page. Item content itself
   lives in the NEWS_ITEMS array in news.html — see the
   comment block above that array for how to add a story.
   =========================================================== */

/* ===== BREADCRUMB ===== */
.breadcrumb{
  padding:16px 48px;
  font-family:Arial, Helvetica, sans-serif;
  font-size:12.5px;
  letter-spacing:0.02em;
  color:var(--navy-soft);
  border-bottom:1px solid var(--line);
}
.breadcrumb a:hover{color:var(--orange-text);}

/* ===== PAGE INTRO ===== */
.news-intro{
  max-width:900px;
  margin:0 auto;
  padding:56px 48px 0;
}
.news-intro .venue-id{
  font-family:'Oswald', sans-serif;
  font-size:13px;
  font-weight:500;
  letter-spacing:0.04em;
  color:var(--orange-text);
}
.news-intro h1{
  font-family:'Oswald', sans-serif;
  font-weight:700;
  font-size:clamp(30px, 4.5vw, 48px);
  line-height:1.1;
  color:var(--navy);
  margin-top:8px;
}
.news-intro p{
  margin-top:16px;
  font-size:17px;
  max-width:60ch;
  color:var(--navy-soft);
  font-family:Arial, Helvetica, sans-serif;
}

/* ===== YEAR GROUPS ===== */
.news-list{
  max-width:900px;
  margin:0 auto;
  padding:8px 48px 80px;
}
.news-year{
  font-family:'Oswald', sans-serif;
  font-size:15px;
  font-weight:600;
  letter-spacing:0.08em;
  color:var(--navy);
  margin-top:52px;
  padding-bottom:14px;
  border-bottom:2px solid var(--navy);
}
.news-year:first-child{margin-top:40px;}

/* ===== ITEMS ===== */
.news-item{
  padding:32px 0;
  border-bottom:1px solid var(--line);
}
.news-item:last-child{border-bottom:none;}
.news-date{
  display:block;
  font-family:'Oswald', sans-serif;
  font-size:12px;
  font-weight:500;
  letter-spacing:0.05em;
  color:var(--orange-text);
}
.news-item h3{
  font-family:'Oswald', sans-serif;
  font-weight:600;
  font-size:22px;
  line-height:1.25;
  color:var(--navy);
  margin-top:6px;
}
.news-photo{
  aspect-ratio:16/9;
  background-size:cover;
  background-position:center;
  border-radius:2px;
  margin-top:18px;
}

/* Full, uncropped poster/flyer images (e.g. vacancy notices) — shown at
   their own aspect ratio rather than cropped to 16:9 like a photo. */
.news-poster{
  display:block;
  max-width:340px;
  width:100%;
  height:auto;
  border-radius:4px;
  border:1px solid var(--line);
  margin-top:18px;
}
/* Used instead of the default 340px cap for posters where the text
   itself needs to be legible (e.g. a scanned letter), rather than
   just a photo of a flyer. */
.news-poster-large{
  max-width:680px;
}
.news-body{
  margin-top:16px;
  font-size:16px;
  line-height:1.6;
  color:var(--navy-soft);
  font-family:Arial, Helvetica, sans-serif;
  max-width:68ch;
}
.news-body p + p{margin-top:14px;}

/* ===== EMPTY STATE (shown if NEWS_ITEMS is ever empty) ===== */
.news-empty{
  padding:40px 0;
  font-family:'Oswald', sans-serif;
  font-size:13px;
  letter-spacing:0.03em;
  color:var(--alum);
}

@media (max-width: 860px){
  .news-intro{padding:40px 24px 0;}
  .news-list{padding:8px 24px 56px;}
  .news-item h3{font-size:19px;}
}
