/* Custom CSS (no Tailwind) */
    :root {
      --primary-blue: #245FA1;
      --primary-dark: #1A4A7F;
      --dark-text: #1E2A3E;
      --muted-text: #5A6E8A;
      --gold: #D4AF37;
      --light-bg-start: #EFF5FB;
      --light-bg-end: #E3EEF8;
      --border-radius-xl: 28px;
      --border-radius-lg: 24px;
    }
    .custom-container {
      max-width: 1280px;
      margin: 0 auto;
      padding-left: 1.75rem;
      padding-right: 1.75rem;
    }
    /* hero overlay */
    .hero-overlay {
      background: linear-gradient(to bottom, rgba(0,0,0,0.7) 0%, rgba(0,0,0,0.5) 50%, rgba(0,0,0,0.7) 100%);
    }
    .rounded-28 {
      border-radius: var(--border-radius-xl);
    }
    .rounded-24 {
      border-radius: var(--border-radius-lg);
    }
    /* blog card */
    .blog-card {
      transition: all 0.3s ease;
      text-decoration: none;
      display: block;
      border: 1px solid #E9EEF3;
      background: white;
    }
    .blog-card:hover {
      transform: translateY(-6px);
      box-shadow: 0 20px 25px -12px rgba(0,0,0,0.1);
    }

    .blog-card .read-more{
        color: var(--primary-blue);
    }

    .blog-card .read-more i {
        transition: transform 0.3s ease;
    }

    .blog-card:hover .read-more i {
        transform: translateX(4px);
        transition: transform 0.3s ease;
    }

    /* filter buttons */
    .filter-btn {
      transition: all 0.2s ease;
    }
    .filter-btn.active {
      background-color: var(--primary-blue);
      color: white;
      box-shadow: 0 4px 12px rgba(36,95,161,0.3);
    }
    .filter-btn:not(.active) {
      background-color: white;
      color: var(--muted-text);
    }
    .filter-btn:not(.active):hover {
      background-color: #F5F7FA;
      color: var(--dark-text);
    }
    .search-input {
      border: 1px solid #E9EEF3;
      border-radius: 999px;
      padding: 0.6rem 1rem 0.6rem 2.5rem;
      width: 100%;
      font-size: 0.9rem;
      transition: all 0.2s;
    }
    .search-input:focus {
      outline: none;
      border-color: var(--primary-blue);
      box-shadow: 0 0 0 3px rgba(36,95,161,0.2);
    }
    .category-badge {
      background-color: rgba(212, 175, 55, 0.1);
      color: var(--gold);
      font-weight: 600;
    }
    .line-clamp-3 {
      display: -webkit-box;
      -webkit-line-clamp: 3;
      -webkit-box-orient: vertical;
      overflow: hidden;
    }
    @media (max-width: 768px) {
      .custom-container {
        padding-left: 1.25rem;
        padding-right: 1.25rem;
      }
      .display-4 {
        font-size: 2rem;
      }
    }
