
.blog-listing{background:linear-gradient(160deg,#eef2ed,#f6f4ee)}
.blog-listing-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.blog-card{display:flex;flex-direction:column;min-width:0;padding:28px 27px;background:#fff;border:1px solid var(--line);border-radius:24px;box-shadow:0 14px 55px rgba(19,37,31,.045)}
.blog-card-top{display:flex;gap:16px;flex-wrap:wrap;justify-content:space-between;align-items:center;font-size:.74rem;color:var(--muted)}
.blog-category{font-size:.71rem;font-weight:800;letter-spacing:.09em;text-transform:uppercase;color:#856239}
.blog-card h3{font:700 clamp(1.3rem,2vw,1.85rem)/1.16 Georgia,serif;letter-spacing:-.025em;margin:20px 0 13px}
.blog-card h3 a{text-decoration:none;color:var(--ink)}
.blog-card h3 a:hover,.blog-read-more:hover{color:var(--accent-dark);text-decoration:underline;text-underline-offset:4px}
.blog-card p{font-size:.9rem;color:var(--muted);line-height:1.65;margin:0 0 22px}
.blog-read-more{color:#326549;font-size:.86rem;font-weight:800;text-decoration:none;margin-top:auto}
.blog-preview{background:#eaf0e9}
.blog-more-link{margin-top:30px}
.blog-empty{padding:58px 35px;border-radius:24px;text-align:center;background:white;border:1px solid var(--line)}
.blog-empty h2{font:700 clamp(1.8rem,3vw,2.7rem)/1.18 Georgia,serif;margin:0 0 17px}
.blog-empty p{margin:0 auto 24px;max-width:590px;color:var(--muted)}
.blog-ethics{padding:40px 0 48px;background:#e9eee9}
.blog-ethics .container{max-width:790px}
.blog-ethics strong{font-weight:800}
.blog-ethics p{color:var(--muted);font-size:.95rem}
.blog-ethics a{color:#326549;font-weight:750}
.blog-inline-cites{font-size:.85rem;color:#617069;padding:10px 13px;border-radius:10px;background:#eaf0eb}
.blog-inline-cites a{font-weight:800;margin-right:8px}
.blog-related{padding-top:18px}
.blog-related ul{display:grid;gap:9px;padding-left:19px}
.blog-related li::first-letter{text-transform:uppercase}
.blog-related a{text-transform:capitalize}
@media(max-width:1050px){.blog-listing-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:690px){.blog-listing-grid{grid-template-columns:1fr}.blog-card{padding:25px}.blog-listing{padding-top:58px}}
