body {
  background-color: #FAFAF8;
  color: #171717;
  font-family: "DM Sans", sans-serif;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
  overflow-x: hidden;
}
h1, h2, h3, h4, .font-serif { font-family: "Libre Baskerville", Georgia, serif; }
.no-scrollbar::-webkit-scrollbar { display: none; }
.no-scrollbar { -ms-overflow-style: none; scrollbar-width: none; }
.cat-tab.active { color: #B91C1C; font-weight: 700; border-bottom-color: #B91C1C; }
.region-tab.active { background-color: #B91C1C; color: #fff; border-color: #B91C1C; }
.reading-content p { margin-bottom: 1.35rem; line-height: 1.85; font-size: 1.125rem; color: #262626; }
.reading-content p.author-line { font-size: 0.95rem; font-weight: 700; color: #171717; margin-bottom: 1.5rem; font-family: "DM Sans", sans-serif; font-style: normal; }
.reading-content h2, .reading-content h3 { font-weight: 700; color: #171717; margin-top: 2.25rem; margin-bottom: 0.85rem; }
.reading-content blockquote { border-left: 4px solid #B91C1C; font-style: italic; color: #4B5563; margin: 1.75rem 0; background: #F3F2EE; padding: 1.1rem 1.35rem; border-radius: 0 0.5rem 0.5rem 0; }
.news-card-img { transition: transform 0.4s cubic-bezier(0.16, 1, 0.3, 1); }
.group:hover .news-card-img { transform: scale(1.04); }
[data-animate] { opacity: 1; }
.hp-field { position: absolute; left: -10000px; height: 1px; width: 1px; overflow: hidden; }
.ticker-wrap { height: 1.5rem; }
.ticker-track { display: flex; align-items: center; gap: 2rem; width: max-content; animation: ticker-move 46s linear infinite; }
.ticker-wrap:hover .ticker-track { animation-play-state: paused; }
@keyframes ticker-move { from { transform: translateX(0); } to { transform: translateX(-50%); } }
@media (prefers-reduced-motion: reduce) {
  .ticker-track { animation: none; }
}
@media (min-width: 1024px) {
  .nav-item:hover .nav-drop,
  .nav-item:focus-within .nav-drop { display: block; }
}
@media (max-width: 640px) {
  .reading-content p { font-size: 1.05rem; line-height: 1.75; }
}
