/* ============ NEWS SLIDER ============ */
.news-slider{
  margin:40px 0;
}
.news-slider-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  margin-bottom:18px;
}
.news-slider-head h2{
  font-size:clamp(1.6rem,3vw,2.2rem);
  color:var(--ink);
}
.news-slider-controls{display:flex; gap:10px;}
.news-slider-controls-standalone{justify-content:flex-end; margin-bottom:12px;}

.ns-arrow{
  width:40px; height:40px;
  font-family:'Bangers', cursive;
  font-size:1.4rem;
  line-height:1;
  background:var(--paper);
  color:var(--ink);
  border:3px solid var(--ink);
  border-radius:8px;
  box-shadow:4px 4px 0 var(--ink);
  cursor:pointer;
  transition:transform .08s ease, box-shadow .08s ease;
}
.ns-arrow:hover{transform:translate(2px,2px); box-shadow:2px 2px 0 var(--ink);}
.ns-arrow:active{transform:translate(4px,4px); box-shadow:0 0 0 var(--ink);}
.ns-arrow:disabled{opacity:.35; cursor:default; box-shadow:4px 4px 0 var(--ink); transform:none;}

.news-slider-track{
  display:flex;
  gap:22px;
  overflow-x:auto;
  scroll-snap-type:x mandatory;
  scroll-behavior:smooth;
  padding-bottom:6px;
  -ms-overflow-style:none;
  scrollbar-width:none;
}
.news-slider-track::-webkit-scrollbar{display:none;}

.news-slide{
  scroll-snap-align:start;
  flex:0 0 300px;
  background:var(--paper);
  border:3px solid var(--ink);
  border-radius:14px;
  box-shadow:var(--shadow-hard);
  overflow:hidden;
  display:flex;
  flex-direction:column;
}
.news-slide-thumb{display:block; border-bottom:3px solid var(--ink); overflow:hidden; aspect-ratio:16/10;}
.news-slide-thumb img{width:100%; height:100%; object-fit:cover;}
.news-slide-body{padding:16px 18px 18px; display:flex; flex-direction:column; gap:6px; flex:1;}
.news-slide-date{
  font-size:.7rem; font-weight:700; text-transform:uppercase; color:var(--ember-dark);
}
.news-slide-body h3{
  font-family:'Bangers', cursive; font-size:1.25rem; line-height:1.15; margin-bottom:2px;
}
.news-slide-body h3 a:hover{color:var(--leaf-dark);}
.news-slide-body p{font-size:.9rem; color:#4a463a; margin-bottom:8px; flex:1;}
.news-slide-body .btn.small{align-self:flex-start;}

.news-slider-empty{
  font-style:italic; color:#7a7563;
}

@media (max-width:640px){
  .news-slide{flex-basis:78%;}
  .news-slider-head{flex-direction:column; align-items:flex-start;}
}
