/* RISE blog (V151) — hub cards + post extras. Spine posts use rise-portal.css (light); A2 posts are styled here (dark + gold). */
.blog-post{max-width:980px}
.blog-lead{font-size:1.12rem!important;line-height:1.65}
.blog-hero{margin:0 auto 26px;max-width:980px;border-radius:16px;overflow:hidden;aspect-ratio:16/9;background:#0d2237;box-shadow:0 24px 50px rgba(13,34,55,.18)}
.blog-hero img{display:block;width:100%;height:100%;object-fit:cover}
.blog-more{max-width:980px;margin:40px auto 0}
.blog-more h2{font-family:Montserrat,Manrope,sans-serif;font-size:1.25rem;color:#0d2237;text-align:center;margin:0 0 14px}
.blog-back{text-align:center;margin:26px 0 0}
.blog-back a{font-weight:600;color:#1f5fa8}
.article-body h3{font-family:Montserrat,Manrope,sans-serif;font-size:1.08rem;color:#0d2237;margin:22px 0 6px}
.article-body .blog-callout{margin:18px 0;padding:16px 20px;border-radius:12px;background:#f4f7fb;border-left:3px solid #c7a24a}

/* hub */
.blog-hub{max-width:1180px}
.blog-tabs{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin:0 0 30px}
.blog-tabs button{font:600 .82rem/1 Montserrat,Manrope,sans-serif;letter-spacing:.08em;text-transform:uppercase;padding:13px 20px;border-radius:999px;border:1px solid rgba(13,34,55,.18);background:#fff;color:#0d2237;cursor:pointer}
.blog-tabs button[aria-pressed="true"]{background:#0d2237;color:#fff;border-color:#0d2237}
.blog-tabs button:focus-visible{outline:3px solid #c7a24a;outline-offset:2px}
.blog-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:22px}
.blog-card{display:flex;flex-direction:column;border-radius:16px;overflow:hidden;background:#fff;border:1px solid rgba(13,34,55,.12);box-shadow:0 18px 40px rgba(13,34,55,.10);color:#0d2237;text-decoration:none;transition:transform .2s,box-shadow .2s}
.blog-card:hover{transform:translateY(-3px);box-shadow:0 24px 50px rgba(13,34,55,.16)}
.blog-card[hidden]{display:none}
.blog-card img{width:100%;aspect-ratio:16/9;object-fit:cover;display:block}
.blog-card-body{display:flex;flex-direction:column;gap:8px;padding:18px 20px 22px;flex:1}
.blog-card strong{font-family:Montserrat,Manrope,sans-serif;font-size:1.12rem;line-height:1.3}
.blog-excerpt{font-size:.95rem;line-height:1.6;color:#36506a}
.blog-date{margin-top:auto;font-size:.8rem;color:#6b7f93}
.blog-tag{align-self:flex-start;font:700 .68rem/1 Montserrat,Manrope,sans-serif;letter-spacing:.12em;text-transform:uppercase;padding:7px 10px;border-radius:999px;background:#e8f0fa;color:#1f5fa8}
.blog-card-a2{background:linear-gradient(160deg,#17140e,#0b0b0e);border-color:rgba(228,200,136,.35);color:#fff}
.blog-card-a2 .blog-excerpt{color:#d6cdbd}
.blog-card-a2 .blog-date{color:#b8a98d}
.blog-card-a2 .blog-tag{background:linear-gradient(135deg,#e4c888,#c9a24a);color:#1b140a}
.blog-empty{text-align:center;color:#6b7f93}

/* A2 posts (dark + gold) */
.blog-a2-main{padding:150px 0 90px}
.blog-a2 .crumbs{font-size:.8rem;color:#b8a98d;margin:0 0 18px;text-align:center}
.blog-a2 .crumbs a,.blog-a2 .blog-back a{color:#e4c888;font-weight:600}
.blog-a2 .article-head{max-width:760px;margin:0 auto 26px;text-align:center}
.blog-a2 .section-kicker{font-size:.74rem;letter-spacing:.24em;color:#e4c888;margin:0 0 12px}
.blog-a2 h1{font-family:"Marcellus",serif;font-weight:400;font-size:clamp(2.1rem,4.4vw,3.3rem);line-height:1.1;color:#fff;margin:0 0 12px}
.blog-a2 .article-byline{font-size:.86rem;color:#b8a98d;margin:0 0 14px}
.blog-a2 .blog-lead{color:#e9e1d2;margin:0}
.blog-a2 .blog-hero{background:#17140e;box-shadow:0 24px 60px rgba(0,0,0,.45);border:1px solid rgba(228,200,136,.25)}
.blog-a2 .article-body{position:relative;max-width:980px;margin:0 auto;padding:clamp(22px,4vw,46px);border-radius:18px;background:linear-gradient(160deg,rgba(255,255,255,.07),rgba(255,255,255,.02));border:1px solid rgba(228,200,136,.22)}
.blog-a2 .article-body::before{content:"";position:absolute;left:30px;right:30px;top:0;height:2px;background:linear-gradient(90deg,transparent,#e4c888,transparent)}
.blog-a2 .article-body h2{font-family:"Marcellus",serif;font-weight:400;font-size:clamp(1.35rem,2.4vw,1.7rem);color:#fff;margin:30px 0 10px}
.blog-a2 .article-body h2:first-child{margin-top:0}
.blog-a2 .article-body h3{font-family:"Marcellus",serif;font-weight:400;color:#f3e6c8}
.blog-a2 .article-body p,.blog-a2 .article-body li{color:#d6cdbd;font-size:1.02rem;line-height:1.75}
.blog-a2 .article-body ul{padding-left:1.2em}
.blog-a2 .article-body strong{color:#fff;font-weight:500}
.blog-a2 .article-body a{color:#e4c888;font-weight:500}
.blog-a2 .article-body .blog-callout{background:rgba(228,200,136,.08);border-left-color:#e4c888}
.blog-a2 .article-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:14px 0 18px}
.blog-a2 .article-links a{display:flex;flex-direction:column;gap:4px;padding:16px 18px;border:1px solid rgba(228,200,136,.25);border-left:3px solid #e4c888;border-radius:10px;background:rgba(255,255,255,.04);color:#fff;text-decoration:none}
.blog-a2 .article-links a span{color:#b8a98d;font-size:.9rem}
.blog-a2 .article-note{margin-top:28px;padding-top:18px;border-top:1px solid rgba(228,200,136,.18);font-size:.86rem!important;color:#a99c84!important}
.blog-a2 .blog-more h2{font-family:"Marcellus",serif;font-weight:400;color:#fff}
.blog-cta-a2{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;margin-top:26px}
.blog-btn-gold,.blog-btn-line{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 24px;border-radius:999px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;font-size:.82rem;text-decoration:none}
.blog-btn-gold{background:linear-gradient(135deg,#e4c888,#c9a24a);color:#1b140a}
.blog-btn-line{border:1px solid rgba(228,200,136,.55);color:#e4c888}
@media (max-width:760px){
  .blog-a2-main{padding:120px 0 110px}
  .blog-a2 .article-links,.blog-more .article-links{grid-template-columns:1fr}
  .blog-grid{grid-template-columns:1fr}
}

/* V153: larger reading text on blog posts (Dr. Joe: too small on desktop) */
.blog-post .article-body p,.blog-post .article-body li{font-size:1.1rem;line-height:1.75}
.blog-post .blog-lead{font-size:1.2rem!important}
.blog-post .article-byline{font-size:.95rem!important}
.blog-post .article-body h2{font-size:clamp(1.4rem,2.4vw,1.8rem)}
.blog-post .article-body h3{font-size:1.2rem}
.blog-post .article-links a strong{font-size:1.05rem}
.blog-post .article-links a span{font-size:.98rem}
.blog-post .article-note{font-size:.95rem!important}
@media (min-width:1024px){
  .blog-post .article-body p,.blog-post .article-body li{font-size:1.22rem;line-height:1.8}
  .blog-post .blog-lead{font-size:1.32rem!important}
  .blog-post .article-body h2{font-size:2rem}
  .blog-post .article-body h3{font-size:1.32rem}
  .blog-post .article-body{padding:clamp(34px,4vw,60px)}
}
.blog-excerpt{font-size:1.02rem}
@media (min-width:1024px){.blog-card strong{font-size:1.22rem}.blog-excerpt{font-size:1.06rem}}
