:root {
   --primary-color: #ff9933; 
   --secondary-color: #ffffff; 
   --accent-color: #e68a00; 
--dark-text-color: #333333;
--border-radius: 12px;
}

.mainContentWrapper {
   padding: 0;
   margin: 0;
}

.newsHeaderBanner {
   background-color: #f0f0f0; 
   width: 100%;
   padding: 60px 20px;
   text-align: center;
   border-bottom: 20px solid var(--primary-color); 
}

.bannerTitle {
   font-size: 3em;
   font-family: 'Charis SIL Bold', serif;
   color: var(--primary-color);
   margin-bottom: 20px;
   font-weight: bold;
}

.bannerText {
   color: #666; 
   font-size: 1.1em;
   max-width: 800px;
   margin: 0 auto;
}

.newsArticleGroup {
   padding-right: 30px;
}

.articleImageWrapper {
   width: 100%;
}

.placeholderImage {
   background-color: #f0f0f0; 
   width: 100%;
   height: 350px; 
   border-radius: 5px;
}

.articleHeadline {
   font-size: 2.5em;
   font-family: 'Geist', sans-serif;
   color: var(--primary-color); 
   font-weight: bold;
   margin-bottom: 25px;
}

.articleBody p {
   font-size: 1em;
   line-height: 1.6;
   color: var(--dark-text-color);
   margin-bottom: 20px;
   text-align: justify;
}

.sidebarSection {
   background-color: #f0f0f0; 
   padding: 20px;
   border-radius: 5px;
   margin-bottom: 30px;
}

.sidebarTitle {
   font-size: 1.5em;
   font-family: 'Geist', sans-serif;
   color: var(--primary-color); 
   font-weight: bold;
   margin-bottom: 15px;
   border-bottom: 2px solid var(--primary-color);
   padding-bottom: 5px;
}

.announcementItem {
   margin-bottom: 15px;
}

.announcementText {
   font-size: 1em;
   font-weight: 500;
   color: var(--dark-text-color);
   margin-bottom: 5px;
}

.announcementDate {
   font-size: 0.85em;
   color: #999;
   display: block; 
}

.sidebarDivider {
   color: #ccc;
   margin-top: 15px;
   margin-bottom: 15px;
}

@media (max-width: 768px) {
   .newsHeaderBanner {
      padding: 40px 15px;
      border-bottom-width: 10px;
   }
   .bannerTitle {
      font-size: 2.5em;
   }
   .newsArticleGroup {
      padding-right: 15px; 
   }
   .placeholderImage {
      height: 200px;
   }
   .articleHeadline {
      font-size: 2em;
   }
   .sidebarSection {
      margin-top: 20px; 
   }
   .sidebarTitle {
      font-size: 16px;
   }
   .announcementText {
      font-size: 16px;
   }
}