.blog-public-section{padding:2.5rem 0 4rem}.blog-public-grid{grid-template-columns:minmax(0,1fr);gap:2.5rem;display:grid}@media (width>=960px){.blog-public-grid{grid-template-columns:minmax(0,1fr) 18rem;align-items:start}}.blog-public-main{min-width:0}.blog-public-header{margin-bottom:2rem}.blog-public-page-title{letter-spacing:-.04em;color:var(--rb-ink);margin:.6rem 0 0;font-family:Georgia,Times New Roman,serif;font-size:clamp(2rem,4vw,3rem);line-height:1.1}.blog-public-loading,.blog-public-empty{color:var(--rb-ink-muted);padding:1.5rem 0;font-size:1rem}.blog-public-error{background:var(--rb-danger-bg);border:1px solid var(--rb-danger-line);color:var(--rb-danger-ink);border-radius:.75rem;margin-bottom:1.5rem;padding:1rem 1.25rem}.blog-public-card-list{gap:1.75rem;display:grid}.blog-post-card{background:var(--rb-surface);border:1px solid var(--rb-line);box-shadow:var(--rb-shadow);border-radius:1.25rem;padding:1.5rem 1.75rem;transition:box-shadow .15s,transform .15s}.blog-post-card:hover{transform:translateY(-1px);box-shadow:0 24px 56px #00000073}.blog-post-card-header{margin-bottom:.75rem}.blog-post-card-title{letter-spacing:-.02em;color:var(--rb-ink);margin:0;font-family:Georgia,Times New Roman,serif;font-size:1.6rem;line-height:1.2}.blog-post-card-title-link{color:inherit;text-decoration:none}.blog-post-card-title-link:hover{text-decoration:underline}.blog-post-card-meta{color:var(--rb-ink-muted);flex-wrap:wrap;align-items:center;gap:.65rem;margin-top:.4rem;font-size:.8rem;display:flex}.blog-post-card-category{color:var(--rb-accent);letter-spacing:.06em;text-transform:uppercase;background:#57a2f029;border-radius:999px;padding:.15rem .6rem;font-size:.7rem;font-weight:700;display:inline-block}.blog-post-card-excerpt{color:var(--rb-ink-muted);margin:0 0 .75rem;line-height:1.7}.blog-post-card-readmore{color:var(--rb-accent);font-weight:700;text-decoration:none;display:inline-block}.blog-post-card-readmore:hover{text-decoration:underline}.blog-public-sidebar{gap:1.5rem;display:grid}.blog-sidebar-widget{background:var(--rb-surface);border:1px solid var(--rb-line);box-shadow:var(--rb-shadow);border-radius:1rem;padding:1.25rem 1.4rem}.blog-sidebar-heading{letter-spacing:-.01em;color:var(--rb-ink);margin:0 0 .85rem;font-family:Georgia,Times New Roman,serif;font-size:1.1rem}.blog-sidebar-empty{color:var(--rb-ink-faint);margin:0;font-size:.9rem}.blog-sidebar-list{gap:.55rem;margin:0;padding:0;list-style:none;display:grid}.blog-sidebar-list-item{font-size:.92rem;line-height:1.4}.blog-sidebar-link{color:var(--rb-accent);font-weight:600;text-decoration:none}.blog-sidebar-link:hover{text-decoration:underline}.blog-archive-year-list{gap:.4rem;margin:0;padding:0;list-style:none;display:grid}.blog-archive-year{gap:.35rem;display:grid}.blog-archive-year-toggle{color:var(--rb-ink);cursor:pointer;text-align:left;background:0 0;border:0;align-items:center;gap:.4rem;padding:.2rem 0;font-size:.95rem;font-weight:700;display:inline-flex}.blog-archive-year-toggle:hover{color:var(--rb-accent)}.blog-archive-year-caret{width:.8rem;color:var(--rb-ink-muted);font-size:.75rem;display:inline-block}.blog-archive-month-list{gap:.3rem;margin:0 0 .5rem 1.2rem;padding:0;list-style:none;display:grid}.blog-archive-month-link{color:var(--rb-accent);align-items:baseline;gap:.4rem;font-size:.88rem;font-weight:600;text-decoration:none;display:inline-flex}.blog-archive-month-link:hover{text-decoration:underline}.blog-archive-month-count{color:var(--rb-ink-faint);font-size:.78rem;font-weight:500}.blog-pagination{flex-wrap:wrap;justify-content:center;align-items:center;gap:.5rem;margin-top:2rem;display:flex}.blog-pagination-pages{flex-wrap:wrap;gap:.25rem;margin:0;padding:0;list-style:none;display:flex}.blog-pagination-link,.blog-pagination-step{background:var(--rb-surface);border:1px solid var(--rb-line-strong);color:var(--rb-accent);cursor:pointer;border-radius:.5rem;padding:.4rem .8rem;font-size:.9rem;font-weight:600}.blog-pagination-link:hover:not(.blog-pagination-current),.blog-pagination-step:not(:disabled):hover{background:var(--rb-surface-strong)}.blog-pagination-current{background:var(--rb-accent);color:#fff;border-color:var(--rb-accent);cursor:default}.blog-pagination-step:disabled{opacity:.4;cursor:not-allowed}.blog-pagination-ellipsis{color:var(--rb-ink-muted);padding:.4rem;display:inline-block}.blog-archive-back{margin:.5rem 0 0;font-size:.9rem}
