.act-blog {
  color: #172d24;
  padding: 4rem clamp(1rem, 3vw, 2rem) 5rem;
}

.act-blog *, .act-blog *::before, .act-blog *::after { box-sizing: border-box; }
.act-blog__wrap { max-width: 1400px; margin: 0 auto; }
.act-blog__intro { max-width: 48rem; margin-bottom: 2.75rem; }
.act-blog__eyebrow { color: #38814c; font-size: .8rem; font-weight: 700; letter-spacing: .1em; margin: 0 0 .75rem; text-transform: uppercase; }
.act-blog h1 { color: #172d24; font-size: clamp(2rem, 4vw, 3.25rem); letter-spacing: -.035em; line-height: 1.12; margin: 0 0 1rem; }
.act-blog__intro > p:last-child { color: #617067; font-size: 1.1rem; line-height: 1.65; margin: 0; }
.act-blog__toolbar { align-items: end; display: flex; flex-wrap: wrap; gap: .75rem 1rem; margin-bottom: 1.25rem; }
.act-blog__search-label { color: #172d24; flex-basis: 100%; font-size: .9rem; font-weight: 700; }
.act-blog__search { background: #fff; border: 1px solid #c9d5cb; border-radius: .6rem; color: #172d24; font: inherit; max-width: 100%; padding: .75rem 1rem; width: 24rem; }
.act-blog__search:focus-visible { outline: 3px solid #9fd9ad; outline-offset: 2px; }
.act-blog__count { color: #617067; margin: 0 0 .7rem auto; }
.act-blog__filters { display: flex; flex-wrap: wrap; gap: .5rem; margin-bottom: 2rem; }
.act-blog__filter { background: #fff; border: 1px solid #c9cfcb; border-radius: 2rem; color: #172d24; cursor: pointer; font: inherit; padding: .6rem 1rem; }
.act-blog__filter:hover, .act-blog__filter:focus-visible { border-color: #159d4b; }
.act-blog__filter.is-active { background: #159d4b; border-color: #159d4b; color: #fff; font-weight: 700; }
.act-blog__grid { display: grid; gap: 1.5rem; grid-template-columns: repeat(3, minmax(0, 1fr)); }
.act-blog__card { background: #fff; border: 1px solid #d5dfd7; border-radius: 1rem; min-width: 0; overflow: hidden; transition: border-color .2s, box-shadow .2s, transform .2s; }
.act-blog__card[hidden], .act-blog__empty[hidden] { display: none; }
.act-blog__card:hover { border-color: #3b9855; box-shadow: 0 12px 30px rgba(23, 45, 36, .1); transform: translateY(-3px); }
.act-blog__card-link { color: inherit; display: flex; flex-direction: column; height: 100%; text-decoration: none; }
.act-blog__card-link:hover { color: inherit; text-decoration: none; }
.act-blog__card-link:focus-visible { outline: 3px solid #159d4b; outline-offset: -3px; }
.act-blog__image { aspect-ratio: 16 / 10; display: block; overflow: hidden; }
.act-blog__image img { display: block; height: 100%; object-fit: cover; width: 100%; }
.act-blog__body { display: flex; flex: 1; flex-direction: column; padding: 1.5rem; }
.act-blog__category { color: #38814c; font-size: .78rem; font-weight: 700; margin: 0 0 .6rem; text-transform: uppercase; }
.act-blog__date { color: #617067; font-size: .82rem; margin-bottom: 1rem; }
.act-blog .act-blog__card h2 { color: #172d24; font-size: 1.2rem; letter-spacing: -.025em; line-height: 1.35; margin: 0 0 1rem; }
.act-blog__summary { color: #617067; font-size: .95rem; line-height: 1.6; margin: 0 0 1.75rem; }
.act-blog__more { align-items: center; border-top: 1px solid #e7ede8; color: #1e6d37; display: flex; font-size: .9rem; font-weight: 700; justify-content: space-between; margin-top: auto; padding-top: 1rem; }
.act-blog__more span { font-size: 1.35rem; line-height: 1; }
.act-blog__empty { background: #f6f8f6; border-radius: 1rem; color: #617067; padding: 2.5rem; text-align: center; }
@media (max-width: 960px) { .act-blog__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 640px) { .act-blog { padding: 2.5rem 1rem 3rem; } .act-blog__grid { grid-template-columns: 1fr; } .act-blog__body { padding: 1.25rem; } .act-blog__count { flex-basis: 100%; margin: 0; } }
