.blog-article .prose{max-width:680px;line-height:1.7;font-size:1.0625rem}.blog-article .prose p{margin-bottom:1.25em}.blog-article .prose h2{margin-top:2.5em;margin-bottom:.75em;font-size:1.625rem;font-weight:700;line-height:1.25;letter-spacing:-.02em;scroll-margin-top:6rem}.blog-article .prose h3{margin-top:2em;margin-bottom:.625em;font-size:1.375rem;font-weight:600;line-height:1.3;scroll-margin-top:6rem}.blog-article .prose h4{margin-top:1.5em;margin-bottom:.5em;font-size:1.125rem;font-weight:600;line-height:1.4;scroll-margin-top:6rem}.blog-article .prose ol,.blog-article .prose ul{margin-top:1em;margin-bottom:1.25em;padding-left:1.5em}.blog-article .prose li{margin-bottom:.5em;line-height:1.65}.blog-article .prose blockquote{margin-top:1.5em;margin-bottom:1.5em;padding-left:1.25em;border-left:3px solid hsl(var(--primary));font-style:italic;color:hsl(var(--muted-foreground))}.blog-article .prose pre{margin-top:1.5em;margin-bottom:1.5em;border-radius:.5rem}.blog-article .prose code:not(pre code){padding:.125em .375em;border-radius:.25rem;font-size:.9em}.blog-article .prose a{color:hsl(var(--primary));text-decoration:underline;text-underline-offset:2px;transition:opacity .15s ease}.blog-article .prose a:hover{opacity:.8}.blog-article .prose img{border-radius:.5rem}.blog-article .prose img,.blog-article .prose table{margin-top:1.5em;margin-bottom:1.5em}@media (max-width:768px){.blog-article .prose{font-size:1rem;line-height:1.75}.blog-article .prose h2{margin-top:2em;font-size:1.5rem}.blog-article .prose h3{margin-top:1.75em;font-size:1.25rem}}@keyframes progress-grow{0%{transform:scaleX(0)}}html{scroll-behavior:smooth}.blog-article .prose a:focus-visible{outline:2px solid hsl(var(--primary));outline-offset:2px;border-radius:2px}