.blog{--blog-measure:1120px;--blog-reading:680px;padding:0 24px 96px}.blog-shell{max-width:var(--blog-measure);margin:0 auto}.blog-shell.reading{max-width:var(--blog-reading)}.blog-head{border-bottom:1px solid var(--line);margin-bottom:34px;padding:48px 0 34px}.blog-head h1{letter-spacing:-.02em;color:var(--ink);font-family:Fraunces,serif;font-size:32px;font-weight:500;line-height:1.15}.blog-head p{color:var(--ink3);max-width:52ch;margin-top:9px;font-size:15px}.blog-kicker{letter-spacing:.14em;text-transform:uppercase;color:var(--ink4);margin-bottom:10px;font-size:10px}.blog-grid{grid-template-columns:repeat(auto-fill,minmax(288px,1fr));gap:18px;display:grid}.blog-card{background:var(--paper2);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:16px;flex-direction:column;text-decoration:none;transition:transform .15s,border-color .15s;display:flex;overflow:hidden}.blog-card:hover{border-color:var(--accent);transform:translateY(-2px)}.blog-card:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.blog-card-media{aspect-ratio:16/9;background:var(--surface2);position:relative;overflow:hidden}.blog-card-media img{object-fit:cover}.blog-card-body{flex-direction:column;flex:1;padding:17px 18px 19px;display:flex}.blog-card-date{letter-spacing:.1em;text-transform:uppercase;color:var(--ink4);font-size:10px}.blog-card-body h2{letter-spacing:-.01em;color:var(--ink);margin-top:7px;font-family:Fraunces,serif;font-size:18px;font-weight:500;line-height:1.3}.blog-card-body p{color:var(--ink3);-webkit-line-clamp:3;-webkit-box-orient:vertical;margin-top:9px;font-size:13px;line-height:1.6;display:-webkit-box;overflow:hidden}.blog-empty{color:var(--ink3);padding:40px 0;font-size:15px}.blog-pager{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;margin-top:44px;padding-top:24px;display:flex}.blog-pager a,.blog-pager span.step{border:1px solid var(--line2);color:var(--ink3);border-radius:20px;align-items:center;gap:7px;padding:9px 17px;font-size:13px;text-decoration:none;transition:border-color .15s,color .15s;display:inline-flex}.blog-pager a:hover{border-color:var(--accent);color:var(--accent)}.blog-pager span.step{opacity:.38}.blog-pager .count{color:var(--ink4);font-variant-numeric:tabular-nums;font-size:12px}.blog-back{color:var(--ink4);margin:34px 0 0;font-size:13px;text-decoration:none;transition:color .15s;display:inline-block}.blog-back:hover{color:var(--accent)}.blog-article header{border-bottom:1px solid var(--line);margin-bottom:34px;padding:22px 0 30px}.blog-article h1{letter-spacing:-.02em;color:var(--ink);font-family:Fraunces,serif;font-size:34px;font-weight:500;line-height:1.18}.blog-meta{letter-spacing:.1em;text-transform:uppercase;color:var(--ink4);margin-top:14px;font-size:11px;display:block}.blog-foot{border-top:1px solid var(--line);margin-top:52px;padding-top:24px}.blog-tags{flex-wrap:wrap;gap:8px;display:flex}.blog-tag{letter-spacing:.03em;background:var(--accent-tint);color:var(--accent);border-radius:20px;padding:5px 12px;font-size:11px;text-decoration:none;transition:background .15s}.blog-tag:hover{background:var(--accent-soft)}@media (max-width:600px){.blog{padding:0 18px 72px}.blog-head{margin-bottom:26px;padding:34px 0 26px}.blog-head h1{font-size:26px}.blog-article h1{font-size:27px}.blog-grid{grid-template-columns:1fr}}.blog-head h1.tag-title{letter-spacing:-.01em;overflow-wrap:anywhere;font-family:Inter,-apple-system,Segoe UI,Roboto,sans-serif;font-size:24px;font-weight:600}.blog-head .blog-back{margin:0 0 12px}.blog-byline{color:var(--ink3);margin-top:16px;font-size:14px}.blog-byline a{color:var(--ink2);border-bottom:1px solid var(--line2);padding-bottom:1px;text-decoration:none;transition:color .15s,border-color .15s}.blog-byline a:hover{color:var(--accent);border-color:var(--accent)}.blog-author{background:var(--paper2);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:14px;margin-bottom:22px;padding:20px 22px}.blog-author-name{color:var(--ink);font-family:Fraunces,serif;font-size:18px;font-weight:500}.blog-author-role{letter-spacing:.1em;text-transform:uppercase;color:var(--ink4);margin-top:2px;font-size:11px}.blog-author-bio{color:var(--ink3);margin-top:12px;font-size:14px;line-height:1.7}.blog-author-link{color:var(--accent);margin-top:14px;font-size:13px;text-decoration:none;display:inline-block}.blog-author-link:hover{text-underline-offset:3px;text-decoration:underline}
