.article-card:where(.astro-7ahxywo7){display:flex;flex-direction:column;overflow:hidden;text-decoration:none;color:inherit;position:relative;isolation:isolate;will-change:transform,box-shadow,border-color;contain:layout style paint}.article-image-wrapper:where(.astro-7ahxywo7){position:relative;width:100%;aspect-ratio:16 / 9;overflow:hidden;border-radius:var(--radius-card) var(--radius-card) 0 0;background:var(--color-bg-secondary)}.article-image:where(.astro-7ahxywo7){width:100%;height:100%;object-fit:cover;object-position:center;transition:transform .6s cubic-bezier(.2,.8,.2,1),filter .4s;will-change:transform,filter}.article-image-wrapper:where(.astro-7ahxywo7):after{content:"";position:absolute;inset:0;border-radius:inherit;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--color-accent) 28%,transparent),inset 0 0 28px #0006;opacity:0;transition:opacity .4s;pointer-events:none}.image-overlay:where(.astro-7ahxywo7){position:absolute;inset:0;background:linear-gradient(#0000 50%,#0a080566);opacity:0;transition:opacity .4s;pointer-events:none}.article-card:where(.astro-7ahxywo7):hover .article-image:where(.astro-7ahxywo7){transform:scale(.97);filter:brightness(.92)}.article-card:where(.astro-7ahxywo7):hover .article-image-wrapper:where(.astro-7ahxywo7):after,.article-card:where(.astro-7ahxywo7):hover .image-overlay:where(.astro-7ahxywo7){opacity:1}.article-body:where(.astro-7ahxywo7){padding:1.5rem;display:flex;flex-direction:column;gap:.75rem;flex:1;position:relative;z-index:2}.article-meta:where(.astro-7ahxywo7){display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;font-size:.78rem;color:var(--color-text-muted);font-family:var(--font-mono)}.article-category:where(.astro-7ahxywo7){padding:.2rem .65rem;border-radius:100px;background:color-mix(in srgb,var(--color-accent) 12%,transparent);color:var(--color-accent);font-weight:500;font-family:var(--font-sans);transition:all .3s cubic-bezier(.2,.8,.2,1)}.article-card:where(.astro-7ahxywo7):hover .article-category:where(.astro-7ahxywo7){background:color-mix(in srgb,var(--color-accent) 20%,transparent);transform:translateY(-1px)}.article-date:where(.astro-7ahxywo7):before,.article-reading:where(.astro-7ahxywo7):before{content:"·";margin-right:.5rem;color:var(--color-text-muted-dark)}.article-title:where(.astro-7ahxywo7){font-size:1.2rem;font-weight:700;line-height:1.3;color:var(--color-text-primary);margin:0;transition:color .3s cubic-bezier(.2,.8,.2,1)}.article-card:where(.astro-7ahxywo7):hover .article-title:where(.astro-7ahxywo7){color:var(--color-accent)}.article-excerpt:where(.astro-7ahxywo7){font-size:.9rem;line-height:1.65;color:var(--color-text-secondary);flex:1;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.article-read-more:where(.astro-7ahxywo7){display:inline-flex;align-items:center;gap:.35rem;font-size:.85rem;font-weight:600;color:var(--color-accent);margin-top:auto;transition:gap .3s cubic-bezier(.2,.8,.2,1),transform .3s}.article-card:where(.astro-7ahxywo7):hover .article-read-more:where(.astro-7ahxywo7){gap:.7rem;transform:translate(2px)}.card-glow:where(.astro-7ahxywo7){position:absolute;inset:0;border-radius:inherit;background:radial-gradient(120% 120% at 50% 0%,color-mix(in srgb,var(--color-accent) 8%,transparent),transparent 60%);opacity:0;transition:opacity .5s cubic-bezier(.2,.8,.2,1);pointer-events:none;z-index:-1}.article-card:where(.astro-7ahxywo7):hover .card-glow:where(.astro-7ahxywo7){opacity:1}.article-card:where(.astro-7ahxywo7):focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}@media(prefers-reduced-motion:reduce){.article-image:where(.astro-7ahxywo7),.image-overlay:where(.astro-7ahxywo7),.article-image-wrapper:where(.astro-7ahxywo7):after,.article-category:where(.astro-7ahxywo7),.article-title:where(.astro-7ahxywo7),.article-read-more:where(.astro-7ahxywo7),.card-glow:where(.astro-7ahxywo7){transition:none!important}.article-card:where(.astro-7ahxywo7):hover .article-image:where(.astro-7ahxywo7){transform:none}.article-card:where(.astro-7ahxywo7):hover .article-read-more:where(.astro-7ahxywo7){transform:none;gap:.35rem}}@media(width<=768px){.article-body:where(.astro-7ahxywo7){padding:1.25rem}.article-title:where(.astro-7ahxywo7){font-size:1.1rem}}
