.blog{max-width:720px;color:var(--t1);font-family:var(--f);margin:0 auto;padding:40px 24px 80px}.blog-back{font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--t3);margin-bottom:var(--sp-xl);transition:color var(--dur-fast) var(--ease-out);text-decoration:none;display:inline-block}.blog-back:hover{color:var(--lime)}.blog-title{font-size:var(--fs-4xl);font-weight:var(--fw-semibold);color:var(--t1);line-height:1.1}.blog-list{margin-top:var(--sp-xl);gap:var(--sp-lg);list-style:none;display:grid}.blog-card{background:var(--blue-card);border:var(--stroke-sm) solid var(--b2);border-radius:var(--r-lg);color:inherit;transition:border-color var(--dur-fast) var(--ease-out);text-decoration:none;display:block;overflow:hidden}.blog-card:hover{border-color:var(--lime-border)}.blog-card:focus-visible{outline:2px solid var(--lime);outline-offset:2px}.blog-card-cover{aspect-ratio:1200/630;width:100%;height:auto;display:block}.blog-card-body{padding:var(--sp-md) var(--sp-lg) var(--sp-lg)}.blog-card-date{font-size:var(--fs-xs);color:var(--t3)}.blog-card-title{font-size:var(--fs-2xl);font-weight:var(--fw-semibold);color:var(--t1);margin-top:var(--sp-xs);transition:color var(--dur-fast) var(--ease-out);line-height:1.2}.blog-card:hover .blog-card-title{color:var(--lime)}.blog-card-excerpt{font-size:var(--fs-md);color:var(--t2);margin-top:var(--sp-sm);line-height:1.6}.post-title{font-size:var(--fs-3xl);font-weight:var(--fw-semibold);color:var(--t1);line-height:1.15}.post-byline{font-size:var(--fs-sm);color:var(--t3);margin-top:var(--sp-sm)}.post-cover{aspect-ratio:1200/630;border-radius:var(--r-lg);width:100%;height:auto;margin-top:var(--sp-xl);display:block}.post-column{max-width:68ch;font-size:var(--fs-lg)}.post-body{margin-top:var(--sp-xl);color:var(--t2);line-height:1.65}.post-body p+p{margin-top:var(--sp-md)}.post-body h2{font-size:var(--fs-2xl);font-weight:var(--fw-semibold);color:var(--t1);margin-top:var(--sp-2xl);margin-bottom:var(--sp-sm);line-height:1.25}.post-body a,.post-author a{color:var(--lime);text-underline-offset:3px;text-decoration:underline}.post-body a:hover,.post-author a:hover{color:var(--lime-hover)}.post-author{margin-top:var(--sp-3xl);background:var(--blue-card);border:var(--stroke-sm) solid var(--b2);border-radius:var(--r-lg);padding:var(--sp-lg);font-size:var(--fs-md);color:var(--t2);line-height:1.6}.post-author strong{color:var(--t1);font-weight:var(--fw-semibold)}@media (min-width:768px){.post-title{font-size:var(--fs-4xl)}.blog{padding-top:56px}}
