.horror-news-section{background:#0a0a0a;padding:60px 20px;color:#e0e0e0;font-family:'Segoe UI',sans-serif;}
.horror-news-header{text-align:center;margin-bottom:40px;}
.horror-news-header h2{color:#8b0000;text-transform:uppercase;letter-spacing:3px;font-size:36px;text-shadow:0 0 10px #8b0000;}
.news-subtitle{color:#888;font-style:italic;margin-top:10px;}

/* === Сетка новостей === */
.horror-news-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 30px;
  max-width: 1200px;
  margin: 0 auto;
  padding: 20px;
}

/* 2 карточки на планшетах */
@media (max-width: 900px) {
  .horror-news-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

/* 1 карточка на мобильных */
@media (max-width: 600px) {
  .horror-news-grid {
    grid-template-columns: 1fr;
  }
}
.news-card {
  background: linear-gradient(145deg,#1a0a0a 0%,#0a0a0a 100%);
  border: 1px solid #330000;
  border-radius: 6px;
  overflow: hidden;
  box-shadow: 0 5px 15px rgba(0,0,0,0.6);
  transition: all .4s ease;
  position: relative;
  cursor: pointer;
}
.news-card a {
  position: relative;
  z-index: 2;
}

.news-card * {
  pointer-events: none;
}

.news-card img,
.news-card h3,
.news-card p,
.news-card span {
  pointer-events: none; /* делает весь блок кликабельным */
}
.news-card:hover {
  transform: translateY(-8px);
  border-color: #8b0000;
  box-shadow: 0 20px 40px rgba(139,0,0,0.4);
}
.news-image img {
  width: 100%;
  height: 220px;
  object-fit: cover;
  filter: sepia(.3) contrast(1.1);
  transition: .5s;
}
.news-card:hover img { filter: sepia(.1) contrast(1.2) brightness(1); transform: scale(1.05); }
.news-content { padding: 20px; }
.news-title { color:#ff4444; font-weight:700; font-size:18px; margin-bottom:10px; }
.news-title a { color:inherit; text-decoration:none; }
.news-excerpt { color:#b0b0b0; font-family:'Courier New',monospace; font-size:14px; }
.news-date { display:block; margin-top:10px; font-size:12px; color:#888; }

/* === Пагинация новостей === */
.horror-pagination {
  text-align: center;
  margin-top: 40px;
}

.horror-pagination ul {
  list-style: none;
  display: inline-flex;
  gap: 10px;
  padding: 0;
  margin: 0;
}

.horror-pagination li {
  display: inline-block;
}

.horror-pagination a,
.horror-pagination span {
  display: block;
  padding: 8px 14px;
  background: #1a0a0a;
  color: #ccc;
  border: 1px solid #330000;
  border-radius: 4px;
  text-decoration: none;
  font-family: 'Courier New', monospace;
  transition: all 0.2s ease;
}

.horror-pagination a:hover,
.horror-pagination .current {
  background: #8b0000;
  color: #fff;
  border-color: #ff4444;
  box-shadow: 0 0 10px rgba(139,0,0,0.5);
}

/* Адаптив для мобильных */
@media (max-width: 600px) {
  .horror-pagination ul {
    gap: 6px;
  }
  .horror-pagination a,
  .horror-pagination span {
    padding: 6px 10px;
    font-size: 13px;
  }
}

/* === Стили пагинации === */
.horror-pagination ul {
  display: flex;
  justify-content: center;
  gap: 8px;
  list-style: none;
  padding: 0;
  margin: 25px 0;
  flex-wrap: wrap;
}

.horror-pagination a,
.horror-pagination span {
  background: #111;
  color: #ddd;
  border: 1px solid #330000;
  border-radius: 6px;
  padding: 8px 14px;
  font-size: 15px;
  transition: all .3s;
}

.horror-pagination a:hover {
  background: #ff4444;
  color: #fff;
  border-color: #ff4444;
}

.horror-pagination .current {
  background: #8b0000;
  color: #fff;
  border-color: #8b0000;
}

/* === Адаптив (мобильные устройства) === */
@media (max-width: 600px) {
  .horror-pagination ul {
    gap: 6px;
  }
  .horror-pagination a,
  .horror-pagination span {
    padding: 6px 10px;
    font-size: 13px;
  }
}

.pulse-loader {
  width: 60px; height: 60px;
  border-radius: 50%;
  background: radial-gradient(circle, #ff0000 0%, #330000 60%);
  animation: pulse 1s infinite;
  margin: 50px auto;
}
@keyframes pulse {
  0% { transform: scale(0.9); opacity:0.7; }
  50% { transform: scale(1.2); opacity:1; }
  100% { transform: scale(0.9); opacity:0.7; }
}
.modal-overlay {
  position: fixed; inset:0; background: rgba(0,0,0,0.9);
  display:flex; justify-content:center; align-items:center; z-index:9999;
}
.modal-content {
  background:#111; color:#fff; padding:20px; border-radius:10px;
  max-width:800px; width:90%; max-height:80%; overflow:auto;
}
.close-modal { position:absolute; top:10px; right:15px; color:#ff4444; cursor:pointer; font-size:28px; }

