/* Blog styles - MSA Law Chamber */
.blog-empty { text-align: center; padding: 48px 24px; border: 1px dashed rgba(0,0,0,.2); border-radius: 12px; }

.breadcrumbs { font-size: .9rem; margin-bottom: 18px; opacity: .85; }
.breadcrumbs a { text-decoration: underline; }
.breadcrumbs span.sep { margin: 0 8px; }
.post-meta { font-size: .95rem; opacity: .75; margin-bottom: 28px; }
.post-body { font-size: 1.075rem; line-height: 1.8; }
.post-body h2 { font-size: 1.7rem; margin: 2.2rem 0 1rem; scroll-margin-top: 110px; }
.post-body h3 { font-size: 1.3rem; margin: 1.6rem 0 .8rem; }
.post-body p, .post-body ul, .post-body ol { margin-bottom: 1.1rem; }
.post-body ul, .post-body ol { padding-left: 1.4rem; }
.post-body li { margin-bottom: .45rem; }
.post-body table { width: 100%; border-collapse: collapse; margin: 1rem 0 1.5rem; font-size: .98rem; }
.post-body th, .post-body td { border: 1px solid rgba(0,0,0,.12); padding: 10px 12px; vertical-align: top; text-align: left; }
.post-body th { background: rgba(11,31,77,.05); }
.post-toc { background: rgba(11,31,77,.04); border-radius: 12px; padding: 22px 26px; margin-bottom: 32px; }
.post-toc h2 { font-size: 1.15rem; margin: 0 0 10px; }
.post-toc ol { margin: 0; padding-left: 1.2rem; }
.post-toc li { margin-bottom: 4px; }
.post-faq { margin-top: 2.5rem; }
.post-faq details { border: 1px solid rgba(0,0,0,.12); border-radius: 10px; padding: 16px 20px; margin-bottom: 12px; background: #fff; }
.post-faq summary { font-weight: 600; cursor: pointer; }
.post-faq details p { margin: 12px 0 0; }
.post-cta { background: #0b1f4d; color: #fff; border-radius: 14px; padding: 32px; margin: 2.5rem 0; }
.post-cta h2 { color: #fff; font-size: 1.5rem; margin: 0 0 10px; }
.post-cta p { color: rgba(255,255,255,.85); }
.post-cta .btn { margin: 6px 10px 0 0; }
.post-cta .btn-light-outline { border: 1px solid #fff; color: #fff; border-radius: 50px; padding: 12px 26px; }
.post-disclaimer { font-size: .9rem; opacity: .8; border-top: 1px solid rgba(0,0,0,.1); padding-top: 16px; margin-top: 2rem; }
.post-related { border: 1px solid rgba(0,0,0,.1); border-radius: 12px; padding: 22px; }
.post-related h2 { font-size: 1.15rem; margin: 0 0 10px; }
.post-related ul { list-style: none; padding: 0; margin: 0; }
.post-related li { margin-bottom: 8px; }
@media (max-width: 767.98px) {
    .post-body { font-size: 1rem; }
  .post-body h2 { font-size: 1.4rem; }
  .post-cta { padding: 24px; }
  .post-body table { display: block; overflow-x: auto; }
}

/* ---------- Blog banner ---------- */
.blog-hero{position:relative;overflow:hidden;background:#0A1F44;color:#fff;border-bottom:3px solid #D4AF37;isolation:isolate}
.blog-hero-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 40%;z-index:-2}
.blog-hero-overlay{position:absolute;inset:0;z-index:-1;
  background:linear-gradient(90deg,rgba(2,23,54,.95) 0%,rgba(10,31,68,.85) 38%,rgba(10,31,68,.45) 75%,rgba(10,31,68,.30) 100%),
             linear-gradient(0deg,rgba(2,23,54,.55) 0%,rgba(2,23,54,0) 45%)}
.blog-hero-inner{padding:110px 0 100px;max-width:680px}
.blog-hero-eyebrow{display:inline-flex;align-items:center;gap:14px;font-family:'DM Sans',sans-serif;font-size:13px;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:#D4AF37;margin-bottom:18px}
.blog-hero-eyebrow::before{content:"";width:42px;height:1px;background:#D4AF37}
.blog-hero-title{font-family:'Sora',sans-serif;font-weight:600;font-size:56px;line-height:1.1;color:#fff;margin:0;letter-spacing:-.01em}
.blog-hero-sub{margin:18px 0 0;font-size:18px;line-height:1.6;color:rgba(255,255,255,.82);max-width:560px}
@media (max-width:991.98px){.blog-hero-inner{padding:90px 0 80px}.blog-hero-title{font-size:46px}}
@media (max-width:575.98px){.blog-hero-inner{padding:70px 0 60px}.blog-hero-title{font-size:36px}.blog-hero-sub{font-size:16px}
  .blog-hero-overlay{background:linear-gradient(0deg,rgba(2,23,54,.9) 0%,rgba(10,31,68,.78) 100%)}}

/* ===== Editorial layout (chosen style) ===== */
.blog-editorial { --ivory:#FBF8F1; --gold:#B8963A; --ink:#14213D; }
.blog-editorial .service-details-sec { background: var(--ivory); }
.blog-editorial .service-details-sec h1, .blog-editorial .service-details-sec h2, .blog-editorial .service-details-sec h3,
.blog-editorial .blog-hero-title { font-family: 'Playfair Display', Georgia, serif; letter-spacing: 0; }

/* Banner: keeps the library photo, navy overlay, gold line and label; serif title to match */
.blog-editorial .blog-hero-title { font-weight:600; font-size:58px; line-height:1.12; }
.blog-editorial .blog-hero-sub { font-family:'Playfair Display',Georgia,serif; font-style:italic; font-size:19px; }
.blog-editorial .service-details-sec p.mb-5 { text-align:center; font-style:italic; color:#5b6472; }

/* Featured post */
.ed-featured { display:grid; grid-template-columns: 1.15fr 1fr; gap:48px; align-items:center; padding-bottom:48px; margin-bottom:48px; border-bottom:1px solid var(--gold); }
.ed-featured-img { display:block; overflow:hidden; border-radius:2px; box-shadow:0 20px 40px rgba(20,33,61,.15); }
.ed-featured-img img { width:100%; aspect-ratio: 4/3; object-fit:cover; display:block; transition: transform .6s ease; }
.ed-featured-img:hover img { transform: scale(1.03); }
.ed-featured h2 { font-size:2.5rem; line-height:1.18; margin:12px 0 16px; }
.ed-featured h2 a, .ed-item h2 a { color:var(--ink); }
.ed-featured p { font-size:1.1rem; line-height:1.75; color:#3d4655; }
.ed-kicker { font-family:'DM Sans',sans-serif; font-size:12px; letter-spacing:.2em; text-transform:uppercase; color:var(--gold); font-weight:600; }
.ed-meta { font-size:.9rem; color:#6b7280; margin:14px 0 18px; font-style:italic; }
.ed-read { display:inline-block; font-weight:600; color:var(--ink); border-bottom:1px solid var(--gold); padding-bottom:3px; letter-spacing:.04em; }
.ed-grid > div { margin-bottom:40px; }
.ed-item { height:100%; padding-top:22px; border-top:1px solid rgba(184,150,58,.6); }
.ed-item h2 { font-size:1.6rem; line-height:1.28; margin:10px 0 12px; }
.ed-item p { color:#3d4655; line-height:1.7; }
@media (max-width:991.98px){ .ed-featured{grid-template-columns:1fr; gap:28px} .ed-featured h2{font-size:2rem} .blog-editorial .blog-hero-title{font-size:46px} }
@media (max-width:575.98px){ .blog-editorial .blog-hero-title{font-size:36px} .ed-item h2{font-size:1.35rem} }

/* Post pages */
.blog-editorial .post-kicker { display:block; font-size:12px; letter-spacing:.2em; text-transform:uppercase; color:var(--gold); font-weight:600; margin-bottom:8px; }
.blog-editorial article h1 { font-size:2.6rem; line-height:1.15; }
.blog-editorial .post-meta { font-style:italic; border-bottom:1px solid var(--gold); padding-bottom:18px; }
.blog-editorial .post-body { font-family: Georgia, 'Times New Roman', serif; font-size:1.13rem; color:#262b33; }
.blog-editorial .post-body > p:first-of-type::first-letter { float:left; font-family:'Playfair Display',Georgia,serif; font-size:4.6rem; line-height:.85; padding:6px 10px 0 0; color:var(--gold); font-weight:600; }
.blog-editorial .post-body h2 { border-top:1px solid rgba(184,150,58,.5); padding-top:22px; }
.blog-editorial .post-toc, .blog-editorial .post-related { background:#fff; border:1px solid rgba(184,150,58,.45); border-radius:2px; }
.blog-editorial .post-faq details { border-radius:2px; border-color:rgba(184,150,58,.45); }
.blog-editorial .post-cta { border-radius:2px; border-top:3px solid var(--gold); }
/* featured-consistent 2026-10-30: featured post styled like other cards (no Read link, no extra rules) */
.ed-featured { border-bottom:0; padding-bottom:0; margin-bottom:40px; }
.ed-read { display:none; }
