/* ===== SHARED ACTIVITIES TITLE STYLE ===== */
.activities-section-title {
    font-size: 1.5rem;
    font-weight: 700;
    color: #8B0000;
    margin-bottom: 1rem;
    padding-bottom: 0.5rem;
    border-left: 4px solid #8B0000;
    padding-left: 0.75rem;
}

/* ===== NEWS INDEX ===== */
.news-hero {
    background: linear-gradient(135deg, #8B0000 0%, #c0392b 100%);
}
.news-hero h1 { font-size: 1.8rem; }
.news-hero p  { font-size: 0.92rem; }

.news-card-thumb {
    padding: 0.5rem 0 0.5rem 0.5rem;
}
.news-card-thumb img {
    width: 160px;
    height: 110px;
    object-fit: cover;
    border-radius: 6px;
    flex-shrink: 0;
    transition: transform .4s;
}
.news-card:hover .news-card-thumb img { transform: scale(1.04); }

.news-card-category {
    background: #8B0000;
    font-size: 0.68rem;
}
.news-card-title {
    font-size: 0.92rem;
    line-height: 1.45;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}
.news-card-excerpt {
    font-size: 0.8rem;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}
.news-card-date { font-size: 0.75rem; }

/* ===== NEWS SHOW ===== */
.news-breadcrumb { font-size: 0.85rem; }
.news-breadcrumb-title { max-width: 200px; }

.news-article-title {
    font-size: 1.75rem;
    line-height: 1.45;
    color: #1a1a1a;
}
.news-meta { font-size: 0.85rem; }
.news-thumbnail { max-height: 480px; object-fit: cover; }
.news-excerpt {
    border-bottom: 2px solid #f0f0f0;
    font-size: 1rem;
}
.news-share { border-top: 1px solid #eee; }
.news-share span { font-size: 0.88rem; }

.news-content {
    font-size: 1rem;
    line-height: 1.9;
    color: #2c2c2c;
}
.news-content p { margin-bottom: 1.2rem; text-align: justify; }
.news-content img { max-width: 100%; height: auto; border-radius: 8px; margin: 1rem 0; }
.news-content h2,
.news-content h3 { font-weight: 700; margin: 1.8rem 0 0.8rem; color: #1a1a1a; }
.news-content blockquote {
    border-left: 4px solid #8B0000;
    padding: 0.75rem 1.25rem;
    background: #fdf3f3;
    border-radius: 0 6px 6px 0;
    margin: 1.5rem 0;
    font-style: italic;
}

.news-related-header { background: #8B0000; color: #fff; }
.news-related-thumb {
    width: 80px;
    height: 60px;
    object-fit: cover;
    border-radius: 6px;
    flex-shrink: 0;
}
.news-related-title {
    font-size: 0.88rem;
    line-height: 1.4;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}
.news-sidebar { top: 90px; }
