:root{--brand-primary:#2948C4;--brand-secondary:#3E4AAF;--brand-tertiary:#4960BB;--bg-soft:#F1F3FF;--text-dark:#0F122B;--text-body:#18181D;--text-mid:#72726D;--border-soft:#E5E9F2}

/* === Typography in blog content === */
.blog-rich-text h2, .w-richtext h2{font-family:'SF Pro Display',system-ui,sans-serif;font-weight:700;font-size:32px;line-height:44px;color:var(--text-dark);margin:60px 0 16px;scroll-margin-top:100px}
.blog-rich-text h3, .w-richtext h3{font-family:'SF Pro Display',system-ui,sans-serif;font-weight:700;font-size:24px;line-height:32px;color:var(--text-dark);margin:40px 0 12px}
.blog-rich-text h4, .w-richtext h4{font-family:'SF Pro Display',system-ui,sans-serif;font-weight:700;font-size:18px;line-height:26px;color:var(--text-dark);margin:24px 0 8px}
.blog-rich-text p, .w-richtext p{font-family:'Inter',system-ui,sans-serif;font-weight:400;font-size:16px;line-height:28px;color:var(--text-body);margin:0 0 16px}
.blog-rich-text ul, .blog-rich-text ol, .w-richtext ul, .w-richtext ol{margin:16px 0;padding-left:24px;font-family:'Inter',sans-serif;font-size:16px;line-height:28px;color:var(--text-body)}
.blog-rich-text li, .w-richtext li{margin:8px 0}
.blog-rich-text a, .w-richtext a{color:var(--brand-primary);text-decoration:underline;text-underline-offset:2px}
.blog-rich-text a:hover, .w-richtext a:hover{color:var(--brand-secondary)}
.blog-rich-text strong, .w-richtext strong{font-weight:700;color:var(--text-dark)}
.blog-rich-text em, .w-richtext em{font-style:italic}
.blog-rich-text img, .w-richtext img{width:100%;border-radius:16px;margin:32px 0;box-shadow:0 4px 24px rgba(15,18,43,.08)}
.blog-rich-text>*+h2, .w-richtext>*+h2{margin-top:60px}
.blog-rich-text>*+h3, .w-richtext>*+h3{margin-top:40px}
.blog-rich-text [id], .w-richtext [id]{scroll-margin-top:100px}

/* === Tables === */
.blog-rich-text table, .w-richtext table{width:100%;border-collapse:collapse;margin:32px 0;font-size:16px;box-shadow:0 2px 8px rgba(15,18,43,.06);border-radius:12px;overflow:hidden}
.blog-rich-text thead th, .w-richtext thead th{background:var(--brand-primary);color:#FFF;text-align:left;padding:14px 18px;font-family:'SF Pro Display',sans-serif;font-weight:600;font-size:16px;line-height:24px}
.blog-rich-text tbody td, .w-richtext tbody td{padding:14px 18px;border-bottom:1px solid var(--border-soft);vertical-align:top;font-family:'Inter',sans-serif;font-size:16px;line-height:24px;color:var(--text-body)}
.blog-rich-text tbody tr:last-child td, .w-richtext tbody tr:last-child td{border-bottom:none}
.blog-rich-text tbody tr:nth-child(even) td, .w-richtext tbody tr:nth-child(even) td{background:var(--bg-soft)}

/* === Blockquotes === */
.blog-rich-text blockquote, .w-richtext blockquote{border-left:4px solid var(--brand-primary);padding:16px 24px;margin:32px 0;background:var(--bg-soft);font-style:italic;color:var(--text-body);border-radius:0 12px 12px 0}

/* === HR === */
.blog-rich-text hr, .w-richtext hr{border:none;border-top:1px solid var(--border-soft);margin:48px 0}

/* === TOC sidebar (designer's .toc-sidebar + .toc-list) === */
.toc-list{display:flex;flex-direction:column;gap:8px}
.toc-list .toc-link{display:block;font-family:'SF Pro Display',sans-serif;font-weight:500;font-size:15px;line-height:22px;color:var(--text-mid);text-decoration:none;padding:10px 0 10px 16px;border-left:2px solid transparent;transition:color 0.15s, border-color 0.15s}
.toc-list .toc-link:hover{color:var(--brand-primary)}
.toc-list .toc-link.is-active{color:var(--brand-primary);border-left-color:var(--brand-primary);font-weight:700}

/* === FAQ Accordion (minimalist) === */
.blog-rich-text .faq-item, .w-richtext .faq-item{border-bottom:1px solid var(--border-soft);margin:0;padding:0;background:none}
.blog-rich-text .faq-item:first-of-type, .w-richtext .faq-item:first-of-type{border-top:1px solid var(--border-soft)}
.blog-rich-text .faq-q, .w-richtext .faq-q{font-family:'SF Pro Display',system-ui,sans-serif;font-weight:700;font-size:17px;line-height:24px;color:var(--text-dark);cursor:pointer;padding:18px 40px 18px 0;margin:0;position:relative;user-select:none;background:none;transition:color 0.2s}
.blog-rich-text .faq-q:hover, .w-richtext .faq-q:hover{color:var(--brand-primary)}
.blog-rich-text .faq-q::after, .w-richtext .faq-q::after{content:'+';position:absolute;right:0;top:50%;transform:translateY(-50%);font-size:22px;font-weight:400;color:var(--text-dark);line-height:1;pointer-events:none}
.blog-rich-text .faq-item.open .faq-q, .w-richtext .faq-item.open .faq-q{color:var(--brand-primary)}
.blog-rich-text .faq-item.open .faq-q::after, .w-richtext .faq-item.open .faq-q::after{content:'\2212';color:var(--brand-primary)}
.blog-rich-text .faq-a, .w-richtext .faq-a{max-height:0;overflow:hidden;transition:max-height 0.3s ease-out, padding 0.2s;padding:0}
.blog-rich-text .faq-item.open .faq-a, .w-richtext .faq-item.open .faq-a{max-height:800px;padding:0 0 18px}
.blog-rich-text .faq-a p, .w-richtext .faq-a p{margin:0;font-family:'Inter',sans-serif;font-weight:400;font-size:16px;line-height:26px;color:var(--text-body)}
