
      .blog-toolbar{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin:6px 0 18px}
      .blog-search{flex:1 1 280px;min-width:0;padding:13px 16px;font-size:16px;
        border:1px solid #d9dde3;border-radius:8px;min-height:48px;font-family:inherit;color:var(--dark)}
      .blog-search:focus{outline:2px solid var(--accent);outline-offset:1px;border-color:var(--accent)}
      .blog-filters{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:20px}
      .blog-chip{background:#fff;border:1px solid #d9dde3;color:var(--dark);border-radius:999px;
        padding:10px 16px;font-size:13.5px;font-weight:600;cursor:pointer;min-height:44px;
        font-family:inherit;transition:background .2s,border-color .2s,color .2s}
      .blog-chip:hover{border-color:var(--accent);color:var(--accent)}
      .blog-chip[aria-pressed="true"]{background:var(--primary);border-color:var(--primary);color:#fff}
      .blog-count{font-size:14px;color:var(--medium);margin-bottom:18px}
      /* Text-only article list. No thumbnails and no placeholder blocks: an
         article index for a tax practice is read, not browsed by picture, and
         a coloured block holding two initials is worse than no image at all. */
      .blog-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(340px,100%),1fr));gap:14px 26px}
      .blog-card{background:#fff;border:1px solid #e9ebef;border-radius:10px;
        padding:22px 24px 20px;display:flex;flex-direction:column;
        transition:border-color .2s ease,box-shadow .2s ease}
      .blog-card:hover{border-color:#cfd5de;box-shadow:0 4px 16px rgba(27,42,74,.07)}
      .blog-body{display:flex;flex-direction:column;flex:1}
      .blog-meta{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-bottom:9px}
      .blog-cat{background:var(--accent);color:var(--primary);font-size:.66rem;font-weight:700;
        padding:3px 9px;border-radius:20px;text-transform:uppercase;letter-spacing:.04em}
      .blog-date{font-size:12.5px;color:var(--medium)}
      .blog-card h3{font-family:var(--font-heading);font-size:1.06rem;font-weight:700;
        line-height:1.34;margin-bottom:8px}
      .blog-card h3 a{color:var(--dark);text-decoration:none}
      .blog-card h3 a:hover{color:var(--accent)}
      .blog-card p{font-size:.885rem;color:var(--medium);line-height:1.55;margin-bottom:14px}
      /* A quiet text link, not a button. The whole card title is already a
         link; this is a secondary affordance and should read like one. */
      .blog-readmore{margin-top:auto;align-self:flex-start;font-size:13px;font-weight:600;
        color:var(--primary);text-decoration:none;letter-spacing:.01em}
      .blog-readmore::after{content:" \2192";color:var(--accent);transition:margin-left .2s ease}
      .blog-readmore:hover{color:var(--accent)}
      .blog-readmore:hover::after{margin-left:3px}
      .blog-empty{padding:36px 0;color:var(--medium)}
      .blog-more{display:block;margin:28px auto 0}
      @media (max-width:768px){
        .blog-grid{grid-template-columns:1fr;gap:12px}
        .blog-chip{flex:1 1 auto;text-align:center}
        .blog-card{padding:20px 20px 18px}
      }
    
.blog-pagination{display:flex;flex-wrap:wrap;gap:10px;margin:28px 0}.blog-pagination a,.blog-pagination span{padding:8px 12px;border:1px solid #d9dde3;border-radius:6px}.blog-pagination [aria-current]{font-weight:700;background:#edf2f7}#blog-category,#blog-search-form button{padding:12px;min-height:44px;font:inherit}#blog-search-form label{font-weight:600}.blog-more[hidden]{display:none}
.blog-card-title{font-family:var(--font-heading);font-size:1.06rem;line-height:1.34;margin:8px 0}.blog-card-title a{color:var(--dark);text-decoration:none}.blog-card-category{font-size:.8rem;font-weight:600}.blog-card-date{font-size:.8rem;color:var(--medium)}
.blog-pagination[hidden]{display:none}
