

/* Hero Section - New 3 Column Layout */
.hero-section-new {
  padding: var(--spacing-lg) 0;
  margin-bottom: var(--spacing-xl);
}

.hero-layout {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--spacing-lg);
  max-width: 1400px;
  margin: 0 auto;
}

.featured-main {
/*  margin-bottom: 10px;*/
  padding-bottom: var(--spacing-md);
  border-bottom: 1px solid var(--border-color);
}

.category-label {
  display: inline-block;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  border-radius: 2px;
  margin-bottom: var(--spacing-sm);
  color: #B71C1C;
}

.featured-headline {
  font-size: 24px;
  font-weight: 700;
  line-height: 1.3;
  margin-bottom: var(--spacing-sm);
  color: var(--text-primary);
  font-family: var(--font-heading);
}

.featured-author {
  font-size: 12px;
  font-weight: 500;
  color: var(--text-secondary);
}

.featured-image-large {
  width: 100%;
  height: 300px;
  overflow: hidden;
  border-radius: 4px;
}

.featured-image-large img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.sub-articles {
  display: flex;
  flex-direction: column;
/*  gap: var(--spacing-md);*/
}

.sub-article {
  display: flex;
  gap: var(--spacing-md);
  padding: var(--spacing-md) 0px;
  background-color: var(--background);
  border-radius: 4px;
  border-bottom: 1px solid var(--border-color);
}

.sub-content {
  flex: 1;
}

.sub-title {
  font-size: 16px;
  font-weight: 600;
  line-height: 1.4;
  margin-bottom: var(--spacing-sm);
  color: var(--text-primary);
}

.sub-excerpt {
  font-size: 13px;
  line-height: 1.5;
  color: var(--text-secondary);
  margin-bottom: var(--spacing-sm);
  display: -webkit-box;
  -webkit-line-clamp: 3;
  overflow: hidden;
  -webkit-box-orient: vertical;
}

.sub-meta {
  display: flex;
  align-items: center;
  gap: var(--spacing-sm);
  font-size: 12px;
  color: var(--text-secondary);
  justify-content: space-between;
}

.sub-image {
  width: 250px;
/*  height: 80px;*/
  flex-shrink: 0;
  overflow: hidden;
}

.sub-image img {
  width: 100%;
/*  height: 100%;*/
  object-fit: cover;
}

.hero-center {
  background-color: var(--background);
}

.behind-news {
  /*border: 1px solid var(--border-color);
  border-radius: 4px;*/
  overflow: hidden;
}

.behind-header {
  border-bottom: 1px solid #DFD0A6;
  margin-bottom: 16px;
}

.behind-title {
  font-size: 16px;
  font-weight: 700;
  letter-spacing: 1.5px;
  /* color: var(--text-on-primary); */
  margin: 0;
  text-transform: uppercase;
  line-height: 35px;
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 0px 0px;
}

.news-list {
  background-color: var(--background);
  margin-bottom: 16px;
}

.news-item-header {
  display: flex;
  align-items: center;
  gap: var(--spacing-sm);
  padding: var(--spacing-md);
  background-color: var(--surface);
  border-bottom: 1px solid var(--border-color);
}

.live-indicator {
  color: var(--accent-color);
  font-size: 12px;
}

.just-now {
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 1px;
  color: var(--text-primary);
}

.news-item {
  padding: var(--spacing-md);
  border-bottom: 1px solid var(--border-color);
  transition: background-color var(--transition-fast);
}

.news-item:hover {
  background-color: var(--surface);
}

.news-item-title {
  font-size: 14px;
  font-weight: 500;
  line-height: 1.5;
  color: var(--text-primary);
  margin-top: var(--spacing-xs);
}

.news-item-author {
  font-size: 12px;
  color: var(--text-secondary);
/*  margin-top: var(--spacing-xs);*/
}

.news-item-time {
  font-size: 11px;
  color: var(--text-disabled);
}

.hero-right {
  background-color: var(--background);
}

.southern-strokes-box {
  background-color: #FFD001;
  padding: 10px;
/*  border-radius: 8px;*/
  box-shadow: var(--elevation-2);
}

.strokes-title {
  font-size: 20px;
  font-weight: 700;
  color: var(--text-primary);
  margin-bottom: var(--spacing-md);
  text-align: center;
  font-family: var(--font-heading);
}

.strokes-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: var(--spacing-sm);
}
.strokes-full {
  width: 100%;
}
.stroke-item {
/*  aspect-ratio: 1 / 1;*/
  overflow: hidden;
  /*border-radius: 4px;
  box-shadow: var(--elevation-1);*/
}

.stroke-item img {
  width: 100%;
/*  height: 100%;*/
  object-fit: cover;
}

/* SF Specials Section */

.section-header-special {
  display: flex;
  align-items: center;
  justify-content: space-between;
/*  margin-bottom: var(--spacing-lg);*/
  padding-bottom: var(--spacing-md);
/*  border-bottom: 2px solid var(--accent-color);*/
  position: relative;
}

.section-title-special {
  font-size: 28px;
  font-weight: 700;
  margin: 0;
  font-family: var(--font-heading);
  background-color: #fffbf2;
  z-index: 1;
  padding-right: 10px;
}

.sf-red {
  color: var(--accent-color);
}

.view-more-special {
  font-size: 14px;
  font-weight: 600;
  color: var(--text-primary);
  transition: color var(--transition-fast);
  letter-spacing: 0.5px;
  background-color: #fffbf2;
  z-index: 1;
  padding-left: 10px;
}

.sf-specials-layout {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--spacing-xl);
}

.sf-specials-left {
    display: grid;
    flex-direction: column;
    gap: var(--spacing-lg);
    grid-template-columns: 1fr 1fr 1fr;
}

.sf-large-card {
  display: flex;
  flex-direction: column;
/*  background-color: var(--background);*/
  border-radius: 4px;
  overflow: hidden;
/*  border: 1px solid var(--border-color);*/
}

.sf-card-image {
  width: 100%;
  height: inherit;
  overflow: hidden;
}

.sf-card-image img {
  width: 100%;
  height: inherit;
  object-fit: cover;
}

.sf-card-content {
/*  padding: var(--spacing-md);*/
}

.sf-card-content p,.opinions-grid p,.no-corruption .list-excerpt {
  font-family: var(--font-heading);
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 5;
  overflow: hidden;
  margin-bottom: 5px;
}

.sf-category,.article-category {
  display: inline-block;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  padding: 0px;
  border-radius: 2px;
  margin-bottom: var(--spacing-sm);
  color: #B71C1C;
}

.sf-card-title {
  font-size: 18px;
  font-weight: 600;
  line-height: 1.4;
  color: var(--text-primary);
  margin-bottom: var(--spacing-sm);
}

.sf-card-meta {
  display: flex;
  align-items: center;
  gap: var(--spacing-sm);
  font-size: 13px;
  color: var(--text-secondary);
  justify-content: space-between;
}

.sf-specials-right {
  display: flex;
  flex-direction: column;
/*  gap: var(--spacing-lg);*/
}

.sf-small-item {
  padding: 10px 0px;
  /*background-color: var(--background);
  border-radius: 4px;*/
  border-bottom: 1px solid var(--border-color);
}
.sf-specials-right .sf-small-item:first-child {padding-top: 0px;}

.sf-item-title {
  font-size: 16px;
  font-weight: 600;
  line-height: 1.4;
  color: var(--text-primary);
  margin-top: var(--spacing-xs);
  margin-bottom: var(--spacing-sm);
}

.sf-item-meta,.article-meta {
  display: flex;
  align-items: center;
  gap: var(--spacing-sm);
  font-size: 13px;
  color: var(--text-secondary);
  justify-content: space-between;
}

.hero-section,
.news-grid,
.content-section {
  margin-bottom: var(--spacing-xxl);
}

.section-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 10px;
  padding-bottom: var(--spacing-md);
  position: relative;
/*  border-bottom: 2px solid var(--primary-color);*/
}

.section-title {
  font-size: 24px;
  font-weight: 700;
  color: var(--primary-color);
  margin: 0;
  background-color: #FFF;
  padding-right: 10px;
  z-index: 1;
}
#web-stories-heading {background-color: #FFD001;}
.view-more {
  font-size: 14px;
  font-weight: 500;
  color: var(--primary-color);
  z-index: 1;
  background-color: #FFF;
  padding-left: 10px;
}
.web-stories-section .view-more{
  background-color: #FFD001;
  padding-left: 10px;
}
.adsCont {
  text-align: center;
  clear: both;
  position: relative;
  z-index: 0;
  padding: 0px;
  margin: 10px 0px;
}
/*.adsCont:before {
    content: "Advertisement";
    font-size: 10px;
    line-height: 16px;
    display: block;
    color: #777;
}*/
.adsCont a {display: flex;justify-content: center;}
.d-flex {display: flex;}
.align-center {align-items: center;}
.justify-btw {justify-content: space-between;}
.author {
  font-size: 12px;
  font-weight: 500;
  color: var(--text-secondary);
}
.read-time {
  font-size: 10px;
  font-weight: 500;
  color: var(--text-secondary);
}
.article-detail {padding: 10px;background-color: #F5F7F9;}
.behind-news article .sub-image {width: 100%;}
.behind-news .news-item {padding: 0px;}
.pulse {
    background: rgb(222, 84, 72);
    border-radius: 50%;
    height: 8px;
    width: 8px;
    box-shadow: 0 0 0 0 rgba(222, 84, 72, 1);
    transform: scale(1);
    animation: pulse 2s infinite;
    margin: 0px 10px;
}

@keyframes pulse {
    0% {
        transform: scale(0.95);
        box-shadow: 0 0 0 0 rgba(222, 84, 72, 0.7);
    }

    70% {
        transform: scale(1);
        box-shadow: 0 0 0 15px rgba(222, 84, 72, 0);
    }

    100% {
        transform: scale(0.95);
        box-shadow: 0 0 0 0 rgba(222, 84, 72, 0);
    }
}
.sf-specials-section {background-color: #FFFBF2;padding: 30px 0px;}
.sf-specials-right .sf-small-item:last-child,.list-articles .article-list-item:last-child,.thumb-article .article-list-item {border-bottom: none;}
.articles-list,.left-list,.right-list,.widget-content {
  display: grid;
  gap: 20px;
  grid-template-columns: 1fr 1fr;
}
.article-list-item {
  padding: 10px 0px;
  border-bottom: 1px solid #D5C8A6;
}
.article-list-item h3 {font-size: 16px;display: -webkit-box;-webkit-box-orient: vertical;-webkit-line-clamp: 3;overflow: hidden;margin-bottom: 10px;}
.web-stories-section {background-color: #FFD001;padding: 100px 0px;padding-top: 40px;}
.web-stories-grid {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  gap: 20px;
}
.story-overlay {
  max-width: 80%;
  padding: 10px;
  background-color: #fff;
  position: absolute;
  bottom: -40px;
  left: 0px;
  right: 0px;
  margin: auto;
  margin-bottom: 0px;
}
.story-overlay h3 {margin-bottom: 0px;font-size: 16px;height: 65px;display: -webkit-box;-webkit-line-clamp: 3;-webkit-box-orient: vertical;overflow: hidden;}
.web-story-card {position: relative;}
.through-line{content: "";border-bottom: 2px solid #CD2529;position: absolute;top: 33%;width: 100%;z-index: 0;}
.opinions-grid {
  display: grid;
  grid-template-columns: 1fr 2fr 1fr;
  gap: 20px;
}
.middle-grid-single {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px;
}
/* Container */
.widgets-container {
  max-width: 1400px;
  margin: 0 auto;
  padding: 40px 20px;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 40px;
}

/* Widget Section */
.widget-section {
  background: white;
  border-radius: 8px;
  padding: 30px;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}

.widget-title {
  font-family: "Merriweather", serif;
  font-size: 32px;
  font-weight: 700;
  margin-bottom: 30px;
  color: #1a1a1a;
  border-bottom: 3px solid #d32f2f;
  padding-bottom: 15px;
}

/* Citizen Journalism Widget */
.widget-articles {
  display: grid;
/*  gap: 20px;*/
}

.widget-article {
  background: #fff;
  border: 1px solid #e0e0e0;
  border-radius: 8px;
  overflow: hidden;
  transition: all 0.3s ease;
  cursor: pointer;
}

.widget-article:hover {
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
  transform: translateY(-2px);
}

.widget-article.large {
  grid-column: 1 / -1;
}

.article-image {
  width: 100%;
  height: auto;
  object-fit: cover;
  display: block;
}

.widget-article.large .article-image {
  height: 400px;
}

.widget-article:not(.large) .article-image {
  height: 250px;
}

.article-content {
  padding: 20px;
}

.category {
  display: inline-block;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.5px;
  padding: 6px 12px;
  border-radius: 3px;
  margin-bottom: 12px;
  text-transform: uppercase;
}

.category.politics {
  background-color: #e3f2fd;
  color: #1565c0;
}

.category.environment {
  background-color: #e8f5e9;
  color: #2e7d32;
}

.category.communalism {
  background-color: #fff3e0;
  color: #e65100;
}

.article-title {
/*  font-family: "Merriweather", serif;*/
  font-size: 20px;
  font-weight: 700;
  line-height: 1.4;
  margin-bottom: 12px;
  color: #1a1a1a;
}

.widget-article.large .article-title {
  font-size: 26px;
}

.article-meta {
  display: flex;
  align-items: center;
  gap: 15px;
  font-size: 13px;
  color: #666;
}

.author {
  font-weight: 600;
  font-size: 10px;
}

.read-time {
  color: #999;
}
.citizen-section .section-title,.citizen-section .view-more {background-color: #fffbf2;}
.citizen-journalism .article-list-item .list-link {display: flex;}
.citizen-journalism .sf-card-image {
  width: 100px;
  margin-right: 10px;
  height: auto;
  padding: 10px 0px;
}
.citizen-journalism .sf-card-image img {
  height: inherit;
}
.citizen-journalism .list-content {width: calc(100% - 110px);}
.citizen-journalism .widget-articles:last-child .list-content {width: 100%;}
.widget-articles .article-list-item:last-child {border-bottom: none;}
.no-corruption .widget-articles:first-child .article-list-item h3 {-webkit-line-clamp: 6;}
.story-title-video {padding: 10px 0px;}
.story-title-video .author,.story-title-video .read-time {color: #000000;}
.story-image {position: relative;}
.play-icon {position: absolute;display: flex;width: 100%;height: 100%;justify-content: center;text-align: center;align-items: center;top: 0;}
.play-icon img {width: 30px;height: 30px;}
.sfvideo-section {padding: 50px 0px;}

/* Three Column Grid */
.three-column-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 20px;
}
.sf-specials-left {
  display: flex;
  flex-wrap: nowrap;
  flex-direction: row;
  overflow-x: auto;
}
.sf-large-card {
  flex: 0 0 auto;
  width: 70%;
}
@media (min-width: 1024px) {
  .three-column-grid {
    grid-template-columns: repeat(3, 1fr);
    gap: 32px;
  }
}

/* Column Styling */
.column {
  display: flex;
  flex-direction: column;
  background-color: #fff;
}

.opinions-column {
  background-color: #fffbf2;
  padding: 24px;
  border-radius: 8px;
}

.column-title {
  font-family: "Roboto Slab", serif;
  font-size: 24px;
  font-weight: 700;
  margin-bottom: 24px;
  color: #000;
}

/* Featured Article Card */
.featured-article {
  margin-bottom: 16px;
}

.featured-article .article-link {
  display: flex;
  flex-direction: column;
  background-color: #fff;
  border-bottom: 1px solid #dfd0a6;
  overflow: hidden;
}


.article-image {
  aspect-ratio: 16 / 9;
  overflow: hidden;
  background-color: #f5f5f5;
}

.article-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.featured-article .article-content {
  padding: 10px 0px;
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.article-category {
  color: #b71c1c;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.5px;
}

.article-title {
  font-size: 16px;
  font-weight: 700;
  line-height: 1.4;
  color: #000;
  transition: color 0.2s ease;
}

.featured-article .article-link:hover .article-title {
  color: #e80000;
}

.article-meta {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 12px;
  color: #666;
  margin-top: auto;
}

.article-meta .separator {
  color: #999;
}

/* List Articles */
.article-list {
  flex: 1;
  display: flex;
  flex-direction: column;
}

.list-article {
  padding: 12px 0;
  border-bottom: 1px solid #dfd0a6;
}

.list-article:last-child {
  border-bottom: none;
}

.list-article .article-link {
  display: block;
  transition: opacity 0.2s ease;
}

.list-article .article-link:hover {
  opacity: 0.8;
}

.list-category {
  color: #b71c1c;
  font-size: 12px;
  font-weight: 600;
  margin-bottom: 12px;
  letter-spacing: 0.5px;
}

.list-title {
  font-size: 14px;
  font-weight: 600;
  line-height: 1.4;
  color: #000;
  margin-bottom: 8px;
  transition: color 0.2s ease;
}

.list-article .article-link:hover .list-title {
  color: #e80000;
}

/* View More Link */
.view-more-container {
  display: flex;
  justify-content: flex-end;
  margin-top: 16px;
}

.view-more-container.centered {
  justify-content: center;
  padding-top: 16px;
}

.view-more-link {
  font-size: 14px;
  font-weight: 600;
  color: #e80000;
  display: inline-flex;
  align-items: center;
  gap: 4px;
  transition: text-decoration 0.2s ease;
}

.view-more-link:hover {
  text-decoration: underline;
}

/* Opinions Section */
.opinions-list {
  display: flex;
  flex-direction: column;
  gap: 16px;
  margin-bottom: 24px;
  flex: 1;
}

.opinion-item {
  display: block;
  padding: 10px 0px;
  border-bottom: 1px solid #BDAE83;
}

.opinion-link {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  transition: opacity 0.2s ease;
}

.opinion-link:hover {
  opacity: 0.8;
}

.author-avatar {
  flex-shrink: 0;
  width: 48px;
  height: 48px;
  border-radius: 50%;
  overflow: hidden;
  background-color: #e0e0e0;
}

.author-avatar img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.opinion-content {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.author-name {
  color: #b71c1c;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.5px;
  margin-bottom: 5px;
}

.opinion-title {
  font-size: 12px;
  font-weight: 600;
  line-height: 1.4;
  color: #000;
  transition: color 0.2s ease;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  margin-bottom: 5px;
}

.opinion-link:hover .opinion-title {
  color: #e80000;
}
.community-world-section {margin-bottom: 40px;}
.states-section .section-header {
  padding: 0px var(--spacing-md);
  background-color: #FFD001;
}
.states-section .section-title {
  background-color: #ffd001
}
.state-tab {
  background-color: #ffd001;
  border: none;
  padding: 25px 10px;
  color: #000;
  font-weight: 600;
  font-size: 14px;
  cursor: pointer;
}
.state-tab.active {border-bottom: 3px solid #000;}
.articles-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 20px;
}

@media (max-width: 768px) {
  .articles-list, .left-list, .right-list, .widget-content,.opinions-grid,.sf-specials-left,.middle-grid-single {grid-template-columns: 1fr;}
  .web-stories-grid {
    display: flex;
    gap: 20px;
    flex-wrap: nowrap;
    overflow-x: auto;
    overflow-y: visible;
  }
  .web-story-card {
    width: 80%;
    flex: 0 0 auto;
  }
  .story-overlay {
/*    background-color: transparent;*/
    bottom: 0px;
    position: relative;
    max-width: 100%;
  }
  .states-section .section-header {display: block;}
  .states-tabs {
    display: flex;
    flex-wrap: nowrap;
    overflow-x: auto;
  }
  .state-tab {
    flex: 0 0 auto;
  }
  .articles-grid {grid-template-columns: repeat(2, 1fr);}
  .sub-image {width: 100px;}
}

@media (max-width: 480px) {
  .logo-south,
  .logo-first {
    font-size: 24px;
  }

  .logo-tagline {
    font-size: 12px;
  }

  .categories-grid {
    grid-template-columns: 1fr;
    gap: 16px;
  }

  .footer-heading {
    font-size: 13px;
  }

  .category-column a,
  .links-column a {
    font-size: 13px;
  }
}
/* Responsive Design */
@media (max-width: 768px) {
  .column-title {
    font-size: 20px;
    margin-bottom: 16px;
  }

  .opinions-column {
    padding: 16px;
  }
  .web-stories-section {padding-bottom: 40px;}
}

@media (min-width: 768px) and (max-width: 1023px) {
  .three-column-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .opinions-column {
    grid-column: 1 / -1;
  }
}
/* Responsive Design */
@media (max-width: 1024px) {
  .widgets-container {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 768px) {
  .desktop-ads {display: none;} 
}

@media (max-width: 480px) {
  .news-badges {
    flex-direction: column;
  }

  .badge {
    justify-content: center;
  }

  .widget-article.large .article-image {
    height: 250px;
  }

  .widget-article:not(.large) .article-image {
    height: 200px;
  }
}

/* Responsive Styles */
@media (min-width: 768px) {
  .hero-layout {
    grid-template-columns: 1fr 1fr;
  }

  .hero-right {
    grid-column: 1 / 3;
  }

  .featured-image-large {
    height: 350px;
  }
}

@media (min-width: 1024px) {
  .hero-layout {
    grid-template-columns: 2fr 1fr 1fr;
  }

  .hero-left {
    grid-column: auto;
  }

  .hero-center {
    grid-column: auto;
  }

  .hero-right {
    grid-column: auto;
  }

  .featured-headline {
    font-size: 24px;
  }

  .featured-image-large {
    height: 400px;
  }

  .sf-specials-layout {
    grid-template-columns: 3fr 1fr;
  }
}

@media (min-width: 1280px) {
  .featured-headline {
    font-size: 24px;
  }
}
