    .hero-section {
      background-color: var(--teal-primary);
      padding-top: 50px;
      padding-bottom: 40px;
      position: relative;
      overflow: hidden;
    }
    .hero-section::before {
      content: '';
      position: absolute;
      top: -50%;
      left: 50%;
      width: 700px;
      height: 700px;
      background: #c63d2f0d;
      border-radius: 50%;
      filter: blur(150px);
      transform: translateX(50%);
    }
    .search-bar {
      background: white;
      border-radius: 2rem;
      box-shadow: 0 25px 50px #0000001a;
      border: 1px solid #f1f5f9;
    }
    .search-input {
      background: #f8fafc;
      border: 2px solid transparent;
      border-radius: 1rem;
      padding: 1rem 3.5rem 1rem 1.5rem;
      font-weight: 700;
      color: var(--teal-primary);
      width: 100%;
      outline: none;
      transition: border-color 0.3s;
      font-family: 'Cairo', sans-serif;
    }
    .search-input:focus {
      border-color: var(--mustard-primary);
    }
.news-card {
    background: white;
    border-radius: 1.5rem;
    overflow: hidden;
    box-shadow: 0 10px 40px #0000000f;
    border: 1px solid #f8fafc;
    transition: all 0.7s;
    cursor: pointer;
    display: flex;
    flex-direction: column;
}
    .news-card:hover {
      box-shadow: 0 25px 60px #0000001f;
      transform: translateY(-4px);
    }
    .news-card:hover .news-card-img {
      transform: scale(1.1);
    }
    .news-card-img {
      transition: transform 1s;
      width: 100%;
      height: 100%;
      object-fit: cover;
    }
    .news-card:hover h3 {
      color: var(--terracotta-primary);
    }
    /* Bootstrap nav-pills for news filter tabs */
    .ns-nav-pills {
      list-style: none;
      padding: 0;
      margin: 0;
      width: 100%;
      max-width: 100%;
      overflow-x: auto;
      flex-wrap: nowrap !important;
      -webkit-overflow-scrolling: touch;
      scrollbar-width: none;
      -ms-overflow-style: none;
    }
    .ns-nav-pills::-webkit-scrollbar {
      display: none;
    }
    .ns-pill {
      padding: 0.75rem 1.5rem;
      border-radius: 1rem;
      font-weight: 900;
      font-size: 11px;
      white-space: nowrap;
      border: none;
      cursor: pointer;
      transition: all 0.3s;
      font-family: 'Cairo', sans-serif;
      background: #f8fafc;
      color: #9ca3af;
    }
    .ns-pill.active,
    .ns-pill:focus,
    .ns-pill[aria-selected="true"] {
      background: var(--teal-primary);
      color: white;
      box-shadow: 0 8px 20px #1f4e554d;
    }
    .ns-pill:not(.active):hover {
      background: #f1f5f9;
      color: #6b7280;
    }
    .sidebar-card {
      background: white;
      border-radius: 3rem;
      padding: 2rem;
      border: 1px solid #f1f5f9;
      box-shadow: 0 10px 40px #0000000f;
    }
    .sidebar-sticky {
      position: sticky;
      top: 90px;
    }
    .breaking-badge {
      background: var(--terracotta-primary);
      color: white;
      padding: 0.25rem 1rem;
      border-radius: 0.75rem;
      font-size: 10px;
      font-weight: 900;
      text-transform: uppercase;
      letter-spacing: 0.1em;
      animation: pulse 2s infinite;
    }
    @keyframes pulse {
      0%, 100% { opacity: 1; }
      50% { opacity: 0.7; }
    }
    .live-dot {
      width: 10px;
      height: 10px;
      background: #22c55e;
      border-radius: 50%;
      animation: ping 1s infinite;
    }
    @keyframes ping {
      0% { transform: scale(1); opacity: 1; }
      75%, 100% { transform: scale(2); opacity: 0; }
    }
    .empty-state {
      background: white;
      border-radius: 3.5rem;
      border: 2px dashed #e2e8f0;
      padding: 6rem 2rem;
      text-align: center;
    }
    /* Filter hidden news */
    .news-item[data-hidden="true"] {
      display: none !important;
    }

/* Hero */
.ns-hero-inner   { max-width: 800px; }
.ns-hero-icon    { width: 64px; height: 64px; flex-shrink: 0; transform: rotate(3deg); }
.ns-hero-title   { line-height: 1.1; }
.ns-hero-desc    { opacity: 0.7; }

.ns-main-wrap {
  margin-top: 20px;
  position: relative;
  z-index: 20;
}

.ns-search-icon {
  width: 20px;
  height: 20px;
  top: 50%;
  transform: translateY(-50%);
  right: 1.25rem;
}
.ns-search-input { padding-right: 3.5rem; }

/* Card image wrapper — 16/9 ratio */
.ns-card-img-wrap { aspect-ratio: 12 / 9; }

/* Card gradient overlay */
.ns-card-gradient {
  background: linear-gradient(to top, #1f4e55cc, transparent);
}

.ns-category-badge {
  background: #d49a551a;
  color: var(--mustard-primary);
  font-size: 10px;
  letter-spacing: 0.05em;
}
.ns-card-title {
  font-size: 20px;
  line-height: 1.4;
}

.ns-card-stat-icon { width: 40px; height: 40px; }

.ns-read-more { font-size: 13px; }
.ns-sidebar-accent { width: 4px; }

.ns-alerts-bg {
  background: radial-gradient(circle at top left, #d49a551a, transparent);
  pointer-events: none;
}
.ns-alerts-desc { opacity: 0.7; font-style: italic; }

.ns-empty-icon { width: 96px; height: 96px; }

#newsTabsContent .fw-black {
    height: 82px;
}
#newsTabsContent .title-more {
    height: 40px;
}

.ns-pill {
    background-color: #f8f9fa;
    color: #002147;
    border: 1px solid #dee2e6;
    padding: 10px 24px;
    border-radius: 50rem;
    font-weight: 900;
    transition: all 0.3s ease;
    white-space: nowrap;
}

    .ns-pill.active, .ns-pill:hover {
        background-color: #0d47a1;
        color: #fff;
        border-color: #0d47a1;
    }

.no-scrollbar::-webkit-scrollbar {
    display: none;
}

.no-scrollbar {
    -ms-overflow-style: none;
    scrollbar-width: none;
}

@media (max-width: 768px) {
}