.prose{color:var(--color-text-body)}.prose h1,.prose h2,.prose h3,.prose h4,.prose h5,.prose h6{color:var(--color-text-heading);font-family:Space Grotesk,sans-serif;text-wrap:pretty}.prose li,.prose p{color:var(--color-text-body-secondary);font-size:1.125rem;line-height:1.75;margin-bottom:1em;margin-top:1em}@media (min-width:768px){.prose li,.prose p{font-size:1.1875rem;line-height:1.75}}.prose h1{font-size:2.75rem;letter-spacing:-.025em;line-height:1.15;margin-bottom:.75em}.prose h2{border-bottom:1px solid var(--color-border);font-size:1.875rem;letter-spacing:-.02em;line-height:1.25;margin-bottom:1em;margin-top:2em;padding-bottom:.5em}.dark .prose h2{border-bottom-color:var(--color-border-secondary)}.prose h3{font-size:1.5rem;letter-spacing:-.015em;line-height:1.3;margin-bottom:.75em;margin-top:2em}.prose h4{color:var(--color-text-body-secondary);font-size:.875rem;font-weight:700;letter-spacing:.05em;margin-bottom:-.5em;margin-top:2em;text-transform:uppercase}.dark .prose h4{color:var(--color-text-body-secondary-accent)}.prose a{color:var(--color-accent-purple);font-weight:500;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px;transition:all .25s ease-in-out}.prose a:hover{background-color:#7c3aed0f;border-radius:.25rem;color:var(--color-text-heading);padding:.125rem .25rem;text-decoration-thickness:2px}.prose .cta-button,.prose .cta-button-secondary,.prose .cta-button-secondary:hover,.prose .cta-button:hover{background-color:unset!important;border-radius:.75rem!important;color:unset!important;padding:.875rem 2rem!important;text-decoration:none!important;text-decoration-thickness:unset!important}.prose .cta-button{color:#fff!important}.prose .cta-button-secondary{color:var(--color-text-body)!important}.prose .cta-button-secondary:hover{color:var(--color-accent-purple)!important}.dark .prose a{color:#c084fc}.dark .prose a:hover{background-color:#c084fc1a;color:#fff}.prose ol,.prose ul{margin-bottom:1.25em;margin-top:1.25em;padding-left:1.25rem}.prose ul{list-style-type:disc}.prose ol{list-style-type:decimal}.prose li{padding-left:.5rem}.prose li,.prose li p{margin-top:.5em}.prose li::marker{color:var(--color-text-body-secondary-accent)}.prose blockquote{background-color:var(--color-bg-tertiary);border-left:4px solid var(--color-accent-purple);border-radius:0 .5rem .5rem 0;box-shadow:0 2px 8px #7c3aed0a;color:var(--color-text-body);font-style:italic;margin-bottom:2em;margin-top:2em;padding:1.5rem 1.5rem 1.5rem 2.5rem;position:relative}.prose blockquote:before{content:none}.prose blockquote p{margin:0}.dark .prose blockquote{border-left-color:#a78bfa}.prose strong{color:var(--color-text-heading);font-weight:600;letter-spacing:-.01em}.prose figure{margin-bottom:2.5em;margin-top:2.5em}.prose .lead{color:var(--color-text-body);font-size:1.25em;font-weight:400;line-height:1.6;text-wrap:pretty}.prose .prose-header{border-bottom:1px solid var(--color-border);margin-bottom:2.5rem;padding-bottom:1.5rem}.dark .prose .prose-header{border-bottom-color:var(--color-border-secondary)}.inline-cta-box{background-color:var(--color-bg);border:1px solid var(--color-border);border-radius:1rem;box-shadow:0 4px 8px #7c3aed0a,0 12px 24px #7c3aed0f;padding:2rem;text-align:center}.dark .inline-cta-box{background-color:var(--color-bg-tertiary);border-color:var(--color-border-secondary)}.inline-cta-emoji{font-size:2.5rem;line-height:1}.end-of-article-cta-box{align-items:center;background:var(--color-bg);border:1px solid var(--color-border-secondary);border-radius:1.5rem;display:flex;flex-direction:column;gap:1.5rem;padding:2.5rem;text-align:center}.dark .end-of-article-cta-box{background:var(--color-bg-tertiary)}.end-of-article-cta-box .about-me-image-wrapper img{height:120px;width:120px}@media (min-width:768px){.end-of-article-cta-box{flex-direction:row;gap:2.5rem;text-align:left}.end-of-article-cta-box .about-me-image-wrapper img{height:160px;width:160px}}.blog-grid{display:grid;gap:2rem;grid-template-columns:1fr}@media (min-width:768px){.blog-grid{gap:2.5rem;grid-template-columns:repeat(2,1fr)}}@media (min-width:1024px){.blog-grid{gap:2rem;grid-template-columns:repeat(3,1fr)}}.article-card{background-color:var(--color-bg);border:1px solid var(--color-border);border-radius:1rem;box-shadow:0 4px 12px #0000000a,0 0 1px #0000000d;display:flex;flex-direction:column;overflow:hidden;text-decoration:none;transition:transform .3s cubic-bezier(.23,1,.32,1),box-shadow .3s ease,border-color .3s ease}.dark .article-card{background-color:var(--color-bg-tertiary);border-color:var(--color-border-secondary);box-shadow:0 4px 12px #0000001a,0 0 1px #0000001a}.article-card:hover{border-color:var(--color-accent-purple);box-shadow:0 12px 24px -4px #7c3aed1f,0 8px 16px -6px #7c3aed14;transform:translateY(-6px)}.dark .article-card:hover{border-color:var(--color-accent-purple);box-shadow:0 12px 24px -4px #00000040,0 0 20px -4px var(--color-accent-purple-glow)}.article-card-image-wrapper{overflow:hidden}.article-card-image{aspect-ratio:16/9;border-bottom:1px solid var(--color-border);display:block;-o-object-fit:cover;object-fit:cover;transition:transform .4s cubic-bezier(.23,1,.32,1);width:100%}.article-card:hover .article-card-image{transform:scale(1.03)}.article-card-content{display:flex;flex-direction:column;flex-grow:1;padding:2rem}.article-card-title{color:var(--color-text-heading);font-family:Space Grotesk,sans-serif;font-size:1.25rem;font-weight:700;letter-spacing:-.015em;line-height:1.3;margin-bottom:.75rem}.article-card-excerpt{color:var(--color-text-body-secondary);flex-grow:1;font-size:1rem;line-height:1.6;margin-top:0}.article-card-link{color:var(--color-accent-purple);display:inline-block;font-size:.875rem;font-weight:600;margin-top:1.5rem;transition:all .2s ease}.article-card:hover .article-card-link{text-decoration:underline;text-underline-offset:3px;transform:translate(2px)}.dark .article-card-image{border-bottom-color:var(--color-border-secondary)}.dark .article-card-link{color:#c084fc}