    .blog-hero {
      background: linear-gradient(135deg, #2c5e1e, #1a3a10);
      color: white;
      padding: 3rem 2rem;
      text-align: center;
      border-radius: 0 0 50px 50px;
      margin-bottom: 3rem;
    }
    .blog-hero h1 { color: white; margin-bottom: 1rem; }
    .blog-hero p { font-size: 1.1rem; opacity: 0.9; }

    .blog-container {
      max-width: 1200px;
      margin: 0 auto;
      padding: 0 1.5rem 3rem;
    }

    .blog-grid-page {
      display: grid;
      grid-template-columns: repeat(auto-fill, minmax(350px, 1fr));
      gap: 2rem;
      margin-bottom: 3rem;
    }

    .blog-card-page {
      background: white;
      border-radius: 24px;
      overflow: hidden;
      box-shadow: 0 10px 30px rgba(0,0,0,0.08);
      transition: all 0.3s ease;
      border: 1px solid rgba(100, 128, 60, 0.15);
    }

    .blog-card-page:hover {
      transform: translateY(-5px);
      box-shadow: 0 20px 40px rgba(0,0,0,0.12);
      border-color: #e87c2a;
    }

    .blog-image-page {
      width: 100%;
      height: 220px;
      object-fit: cover;
    }

    .blog-image-placeholder-page {
      width: 100%;
      height: 220px;
      background: linear-gradient(135deg, #f5f7f0, #e8ede0);
      display: flex;
      align-items: center;
      justify-content: center;
    }

    .blog-image-placeholder-page i {
      font-size: 48px;
      color: #e87c2a;
    }

    .blog-content-page {
      padding: 1.5rem;
    }

    .blog-date-page {
      color: #e87c2a;
      font-size: 0.8rem;
      font-weight: 600;
      margin-bottom: 0.5rem;
    }

    .blog-category-page {
      display: inline-block;
      background: #f0f4ea;
      color: #2c5e1e;
      padding: 4px 12px;
      border-radius: 20px;
      font-size: 0.75rem;
      font-weight: 600;
      margin-bottom: 0.75rem;
    }

    .blog-card-page h3 {
      color: #2c5e1e;
      font-size: 1.3rem;
      margin-bottom: 0.75rem;
      line-height: 1.3;
    }

    .blog-excerpt {
      color: #555;
      line-height: 1.6;
      margin-bottom: 1rem;
    }

    .read-more-btn {
      display: inline-flex;
      align-items: center;
      gap: 0.5rem;
      color: #e87c2a;
      text-decoration: none;
      font-weight: 600;
      transition: gap 0.3s ease;
    }

    .read-more-btn:hover {
      gap: 0.75rem;
      color: #f39c12;
    }

    .loading-state, .empty-state {
      text-align: center;
      padding: 3rem;
    }

    .empty-state i {
      font-size: 4rem;
      color: #cbd5e0;
      margin-bottom: 1rem;
    }

    @media (max-width: 768px) {
      .blog-grid-page {
        grid-template-columns: 1fr;
      }
    }