/* Minimal styles for News block */
.news { 
  padding: 60px 0; 
}
.news .container { 
  max-width: 1100px; 
  margin: 0 auto; 
  padding: 0 16px; 
}
.news h2 { 
  text-align: center; 
  margin-bottom: 24px; 
}
.news-grid { 
  display: grid; 
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); 
  gap: 16px; 
}
.news-card { 
  background: #fff; 
  border-radius: 18px; 
  overflow: hidden; 
  box-shadow: 0 10px 25px rgba(0,0,0,.08); 
}
.news-card .cover {
  display: block;
  width: 100%;
  height: auto;          /* image keeps its own height */
  /* no object-fit → no crop */
}

.news-card .body { 
  padding: 14px 16px 16px; 
}
.news-card .title { 
  font-weight: 600; 
  margin: 4px 0 8px; 
}
.news-card .views { 
  font-size: 14px; 
  opacity: .75; 
}

/* Detail */
.news-detail .nd-wrap { 
  max-width: 900px; 
  margin: 32px auto; 
  padding: 0 16px; 
}
.nd-cover { 
  width: 100%; 
  height: auto; 
  border-radius: 16px; 
  box-shadow: 0 10px 25px rgba(0,0,0,.08); 
}
.nd-title { 
  margin: 16px 0 6px; 
}
.nd-meta { 
  opacity: .75; 
}
.btn-back { 
  display:inline-block; 
  margin: 16px 0; 
  text-decoration: none; 
}
