.blog-prose{font-family:var(--font-body),system-ui,sans-serif;font-size:18px;line-height:1.7;color:#1f2937}.blog-prose>*+*{margin-top:1.25em}.blog-prose h2{font-size:28px;font-weight:700;color:#0f172a;margin-top:2.25em;margin-bottom:.6em;line-height:1.25;letter-spacing:-.015em;position:relative}.blog-prose h2:hover:after{content:"";position:absolute;left:0;bottom:-4px;width:48px;height:3px;background:#14b8a6;border-radius:2px}.blog-prose h3{font-size:22px;font-weight:600;color:#0f172a;margin-top:1.75em;margin-bottom:.5em;line-height:1.3;letter-spacing:-.01em}.blog-prose p{margin-top:0;margin-bottom:1.25em}.blog-prose a{color:#14b8a6;text-decoration:none;border-bottom:1px solid transparent;transition:border-color .15s,color .15s}.blog-prose a:hover{color:#0d9488;border-bottom-color:#14b8a6}.blog-prose ol,.blog-prose ul{padding-left:1.5em;margin-top:0;margin-bottom:1.25em}.blog-prose ul{list-style-type:disc}.blog-prose ol{list-style-type:decimal}.blog-prose li{margin-bottom:.4em;padding-left:.25em}.blog-prose li::marker{color:#14b8a6}.blog-prose ol ol,.blog-prose ol ul,.blog-prose ul ol,.blog-prose ul ul{margin-top:.4em;margin-bottom:.4em}.blog-prose blockquote{border-left:3px solid #14b8a6;padding:.25em 1.25em;color:#475569;font-style:italic;margin:1.5em 0;background:rgba(20,184,166,.04);border-radius:0 8px 8px 0}.blog-prose blockquote p{margin-bottom:.5em}.blog-prose blockquote p:last-child{margin-bottom:0}.blog-prose code{font-size:.9em;color:#0f766e;background:#f0fdfa;padding:2px 6px;border-radius:4px;border:1px solid #ccfbf1}.blog-prose code,.blog-prose pre{font-family:var(--font-mono),monospace}.blog-prose pre{font-size:14px;line-height:1.6;background:#0f172a;color:#e2e8f0;padding:1.25em 1.5em;border-radius:10px;overflow-x:auto;margin:1.75em 0}.blog-prose pre code{background:transparent;color:inherit;padding:0;border:none;border-radius:0;font-size:inherit}.blog-prose img{max-width:100%;height:auto;border-radius:10px;margin:1.75em 0;box-shadow:0 4px 16px rgba(0,0,0,.06)}.blog-prose hr{border:0;border-top:1px solid #e2e8f0;margin:2.5em auto;max-width:120px}.blog-prose table{width:100%;border-collapse:collapse;margin:1.5em 0;font-size:15px}.blog-prose td,.blog-prose th{padding:10px 14px;border-bottom:1px solid #e2e8f0;text-align:left}.blog-prose th{font-weight:600;color:#0f172a;background:#f8fafc}.blog-prose strong{color:#0f172a;font-weight:700}.blog-prose em{font-style:italic}@media (max-width:640px){.blog-prose{font-size:17px}.blog-prose h2{font-size:24px}.blog-prose h3{font-size:19px}}