/* Blog-specific styles */
.blog-post{background:#fff;border:1px solid #d9e6f2;padding:32px 40px;margin-bottom:24px}
.blog-post-title{font-family:'Special Elite',serif;font-size:clamp(1.4rem,2.4vw,2rem);color:#111827;margin:0 0 8px;text-align:center}
.blog-post-date{text-align:center;color:#64748b;font-size:.95rem;margin:0 0 24px;padding-bottom:16px;border-bottom:1px solid #e5e7eb}
.blog-post-body{color:#1f2937;line-height:1.8;font-size:1.02rem}
.blog-post-body p{margin:0 0 16px}
.blog-post-body img{width:100%;height:auto;display:block;margin:16px auto;border:1px solid #e5e7eb}
.blog-post-body figure{margin:16px 0;text-align:center}
.blog-post-body figure img{margin:0 auto}
.blog-post-body figcaption{font-size:.9rem;color:#64748b;margin-top:6px;font-style:italic}
.blog-post-nav{display:flex;justify-content:space-between;gap:16px;margin:0 0 24px;flex-wrap:wrap}
.blog-nav-link{color:#3475ad;text-decoration:none;font-size:.95rem;max-width:48%}
.blog-nav-link:hover{color:#1b4362;text-decoration:underline}
.blog-nav-prev{text-align:left}
.blog-nav-next{text-align:right;margin-left:auto}
.blog-year-nav{display:flex;justify-content:center;gap:16px;margin:0 0 24px;flex-wrap:wrap}
.blog-year-link{display:inline-block;padding:8px 18px;background:#1d4f91;color:#fff;text-decoration:none;font-family:'Special Elite',serif;font-size:1.1rem;letter-spacing:.06em}
.blog-year-link:hover{background:#3475ad}
.blog-year-section{background:#fff;border:1px solid #d9e6f2;padding:24px 32px;margin-bottom:18px}
.blog-year-section h2{font-family:'Special Elite',serif;color:#1d4f91;margin:0 0 12px;font-size:1.5rem}
.blog-year-section h2 a{color:inherit;text-decoration:none}
.blog-year-section h2 a:hover{color:#3475ad}
.blog-year-section h3{font-family:'Special Elite',serif;color:#334155;margin:16px 0 8px;font-size:1.1rem}
.blog-post-count{font-size:.85rem;color:#64748b;font-family:Arial,sans-serif;font-weight:normal}
.blog-post-list{list-style:none;padding:0;margin:0 0 12px}
.blog-post-list li{padding:6px 0;border-bottom:1px solid #f1f5f9}
.blog-post-list li:last-child{border-bottom:none}
.blog-post-list a{color:#3475ad;text-decoration:none}
.blog-post-list a:hover{color:#1b4362;text-decoration:underline}
.blog-post-date-small{color:#94a3b8;font-size:.85rem;margin-left:8px}
.blog-archive-back{margin:0 0 16px}
.blog-archive-back a{color:#3475ad;text-decoration:none}
.blog-archive-back a:hover{text-decoration:underline}
/* Two-column blog index layout */
.blog-index-layout{display:flex;gap:24px;align-items:flex-start}
.blog-index-main{flex:0 0 70%;min-width:0}
.blog-index-sidebar{flex:0 0 calc(30% - 24px);position:sticky;top:20px;max-height:calc(100vh - 40px);overflow-y:auto}
.blog-latest-heading{font-family:'Special Elite',serif;color:#1d4f91;font-size:1.4rem;margin:0 0 16px;padding-bottom:8px;border-bottom:2px solid #1d4f91}
.blog-sidebar-heading{font-family:'Special Elite',serif;color:#1d4f91;font-size:1.2rem;margin:0 0 10px;padding-bottom:6px;border-bottom:2px solid #1d4f91}
.blog-post-featured{max-width:none}
.blog-post-featured .blog-post-title a{color:#111827;text-decoration:none}
.blog-post-featured .blog-post-title a:hover{color:#1d4f91}
.blog-read-more{text-align:center;margin-top:20px;padding-top:16px;border-top:1px solid #e5e7eb}
.blog-read-more a{color:#3475ad;text-decoration:none;font-family:'Special Elite',serif;font-size:1.1rem}
.blog-read-more a:hover{color:#1b4362;text-decoration:underline}
/* Collapsible archive tree */
.archive-tree{list-style:none;padding:0;margin:0;font-size:.85rem;line-height:1.4}
.archive-tree ul{list-style:none;margin:0}
.archive-toggle{cursor:pointer;user-select:none;display:flex;align-items:center;gap:4px;padding:3px 0;color:#334155;font-weight:600;font-size:.85rem}
.archive-toggle:hover{color:#1d4f91}
.archive-toggle .arrow{display:inline-block;width:12px;font-size:.7rem;color:#94a3b8;flex-shrink:0;transition:transform .15s}
.archive-toggle .arrow.open{transform:rotate(90deg)}
.archive-count{color:#94a3b8;font-weight:normal;font-size:.8rem}
.archive-year-item{margin-bottom:2px}
.archive-year-item>ul{padding-left:18px}
.archive-month-item{margin-bottom:1px}
.archive-month-toggle{padding:2px 0;font-weight:500;font-size:.83rem}
.archive-posts{padding:0;margin:0 0 2px 0;padding-left:18px}
.archive-posts li{padding:1px 0;line-height:1.3}
.archive-posts a{color:#3475ad;text-decoration:none;font-size:.82rem;font-weight:normal}
.archive-posts a:hover{color:#1b4362;text-decoration:underline}
.archive-active a{color:#1d4f91!important;font-weight:600}
.archive-hidden{display:none}
.blog-post-number{display:block;text-align:right;color:#64748b;font-size:.95rem;margin-top:12px;font-family:'Special Elite',serif}
@media(max-width:900px){.blog-index-layout{flex-direction:column}.blog-index-main,.blog-index-sidebar{flex:none;width:100%}.blog-index-sidebar{position:static;max-height:none}}
@media(max-width:700px){.blog-post{padding:20px 18px}.blog-post-nav{flex-direction:column}.blog-nav-link{max-width:100%}.blog-year-section{padding:18px 16px}}
