.blog-entry-inner{align-items:stretch;gap:2.5rem;display:flex}.blog-entry-inner.has-preview .blog-entry-body{flex:1;min-width:0}.blog-preview-img{aspect-ratio:1;flex:0 0 260px;align-self:center;width:260px;overflow:hidden}.blog-preview-img img{object-fit:cover;width:100%;height:100%;display:block}@media (width<=768px){.blog-entry-inner.has-preview{flex-direction:column}.blog-preview-img{aspect-ratio:16/9;flex:none;align-self:auto;width:calc(100% + 5rem);margin:-2.5rem -2.5rem 0}}article.blog-entry{background:oklch(100% 0 0);border:2px solid oklch(17% .01 260/.08);padding:2.5rem;transition:border-color .2s;overflow:hidden}article.blog-entry:hover{border-color:oklch(44.5% .148 248.8/.3)}.blog-meta{flex-wrap:wrap;align-items:center;gap:1.5rem;margin-bottom:1.5rem;display:flex}.blog-date{letter-spacing:.15em;text-transform:uppercase;color:oklch(44.5% .148 248.8);font-family:Poppins,sans-serif;font-size:.7rem;font-weight:700}.blog-author{color:oklch(17% .01 260/.55);font-size:.8rem}.blog-title{color:oklch(17% .01 260);margin-bottom:1rem;font-family:Poppins,sans-serif;font-size:clamp(1.4rem,2.5vw,2rem);font-weight:900;line-height:1.2}.blog-title-link{color:inherit;cursor:pointer;width:100%;text-decoration:none;display:block}.blog-title-link:hover{color:oklch(44.5% .148 248.8)}.blog-excerpt{color:oklch(17% .01 260/.78);max-width:680px;margin-bottom:2rem;font-size:1.05rem;line-height:1.7}.blog-toggle-wrap{display:inline-block}.blog-read-more{letter-spacing:.03em;color:oklch(44.5% .148 248.8);cursor:pointer;padding:0 0 3px;font-family:Poppins,sans-serif;font-size:1.1rem;font-weight:600;text-decoration:none;display:inline-block;position:relative}.blog-read-more:after{content:"";background:oklch(44.5% .148 248.8);width:0;height:2px;transition:width .3s;position:absolute;bottom:0;left:0}.blog-read-more:hover:after,.blog-read-more:focus-visible:after{width:100%}.blog-lightbox{z-index:1000;opacity:0;pointer-events:none;justify-content:center;align-items:center;transition:opacity .25s;display:flex;position:fixed;inset:0}.blog-lightbox.is-open{opacity:1;pointer-events:all}.blog-lightbox-backdrop{background:oklch(13% .005 280/.85);position:absolute;inset:0}.blog-lightbox-panel{z-index:1;background:oklch(100% 0 0);width:min(800px,90vw);max-height:90vh;padding:4rem 5rem;transition:transform .3s;position:relative;overflow-y:auto;transform:translateY(20px)}.blog-lightbox.is-open .blog-lightbox-panel{transform:translateY(0)}@media (width<=768px){.blog-lightbox{align-items:flex-start}.blog-lightbox-panel{width:100vw;height:100dvh;max-height:100dvh;padding:max(2.5rem, env(safe-area-inset-top)) 1.75rem 2.5rem;transform:translateY(100%)}.blog-lightbox.is-open .blog-lightbox-panel{transform:translateY(0)}}.blog-lightbox-close{float:right;z-index:10;color:oklch(17% .01 260/.5);cursor:pointer;background:oklch(100% 0 0/.95);border:none;padding:.25rem .5rem;font-size:1.5rem;font-weight:700;line-height:1;transition:color .2s;position:sticky;top:0}.blog-lightbox-close:hover{color:oklch(17% .01 260)}.blog-lightbox-header .blog-meta{margin-bottom:.5rem}.blog-lightbox-divider{background:oklch(44.5% .148 248.8);width:60px;height:2px;margin:2rem 0 2.5rem}:global(body.lightbox-open){overflow:hidden}.blog-content{color:oklch(17% .01 260/.85);font-size:1.05rem;line-height:2}.blog-content img{width:100%;height:auto;margin:3rem 0;display:block}.blog-content p{margin-bottom:2rem}.blog-content h3{color:oklch(17% .01 260);border-top:1px solid oklch(17% .01 260/.08);margin:3.5rem 0 1.25rem;padding-top:.5rem;font-family:Poppins,sans-serif;font-size:1.15rem;font-weight:700}.blog-content ul,.blog-content ol{margin:1.75rem 0 2.25rem 2rem;list-style:outside}.blog-content p+ul,.blog-content p+ol{margin-top:.5rem}.blog-content p:has(>strong:only-child){margin-top:2rem;margin-bottom:.5rem}.blog-content ol{list-style:decimal}.blog-content li{margin-bottom:1.1rem;line-height:1.85}.blog-content a{color:oklch(44.5% .148 248.8);text-underline-offset:3px;text-decoration:underline}.blog-content blockquote{color:oklch(17% .01 260/.88);background:oklch(44.5% .148 248.8/.05);border-left:4px solid oklch(44.5% .148 248.8);margin:2.75rem 0;padding:2rem 2.25rem;font-size:1.1rem;font-style:italic;line-height:1.9}.blog-content strong{color:oklch(17% .01 260);font-weight:600}.blog-content h2{border-top:1px solid oklch(17% .01 260/.08);margin:3rem 0 1rem;padding-top:.5rem;font-family:Poppins,sans-serif;font-size:1.35rem;font-weight:700}.blog-content>p:first-child{margin-top:0}
