.blog-page .site-header nav {gap:26px}
.blog-page .site-header nav>a {display:inline-flex}
.blog-intro {padding:65px 0 58px;max-width:760px}
.blog-intro h1 {font-size:clamp(44px,6vw,78px);letter-spacing:-3px;margin:20px 0 24px}
.blog-intro>p:last-child {font-size:21px;max-width:590px;color:var(--muted)}
.post-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px}
.post-card {border:1px solid var(--line);border-radius:18px;overflow:hidden;display:flex;flex-direction:column;background:#fffdf8;transition:transform .2s}
.post-card:hover {transform:translateY(-4px)}
.post-card>img {display:block;width:100%;height:auto;aspect-ratio:1440/850;object-fit:cover}
.post-card-copy {padding:25px;display:flex;flex:1;flex-direction:column;gap:18px}
.post-card h2 {font-size:27px;letter-spacing:-.7px;line-height:1.2}
.post-card-copy>p:not(.eyebrow) {color:var(--muted);font-size:16px}
.post-card-link {margin-top:auto;padding-top:10px;font-weight:650}
.blog-page .eyebrow {font-size:12px;letter-spacing:1.5px}
.series-note {margin:55px 0 90px;border-top:1px solid var(--line);padding:28px 0;display:grid;grid-template-columns:1fr 2fr;gap:35px}
.series-note strong {font-family:var(--display);font-size:25px;font-weight:500}
.series-note p {color:var(--muted);max-width:690px}
.article-header {padding-top:35px;padding-bottom:45px;max-width:1000px}
.back-link {display:inline-block;color:var(--muted);font-size:14px;margin-bottom:45px}
.article-header h1 {font-size:clamp(38px,4.8vw,65px);letter-spacing:-2.4px;line-height:1.08;max-width:980px;margin:20px 0 25px}
.article-intro {font-size:22px;line-height:1.5;max-width:810px;color:var(--muted)}
.article-meta {font-size:14px;color:var(--muted);margin-top:24px}
.article-hero img {display:block;width:100%;height:auto;border-radius:18px}
.article-hero figcaption {font-size:13px;color:var(--muted);padding:12px 0}
.download-card {margin:35px 0 60px;background:var(--lime);border-radius:16px;padding:30px;display:flex;align-items:center;justify-content:space-between;gap:25px}
.download-card h2 {font-size:28px;letter-spacing:-.7px;margin:8px 0 10px}
.download-card p:not(.eyebrow) {font-size:15px}
.download-actions {display:flex;flex-direction:column;align-items:flex-start;gap:14px;flex-shrink:0}
.download-actions .text-link {font-size:14px;text-decoration:underline;text-underline-offset:4px}
.article-layout {display:grid;grid-template-columns:240px minmax(0,760px);gap:70px;justify-content:space-between;align-items:start}
.article-toc {position:sticky;top:35px;border-top:1px solid var(--line);padding-top:22px}
.article-toc nav {display:flex;flex-direction:column;gap:13px;margin:20px 0 28px}
.article-toc a {font-size:14px;color:var(--muted);line-height:1.45}
.article-toc a:hover {color:var(--ink);text-decoration:underline;text-underline-offset:4px}
.article-body {font-size:18px;line-height:1.8;min-width:0}
.article-body section {margin-bottom:55px;scroll-margin-top:32px}
.article-body h2 {font-size:32px;line-height:1.2;letter-spacing:-.8px;margin-bottom:22px}
.article-body p {margin-bottom:20px}
.article-body a:not(.button) {text-decoration:underline;text-underline-offset:4px;text-decoration-color:#83955a}
.article-body ul,.article-body ol {padding-left:25px}
.article-body li {padding-left:5px;margin-bottom:9px}
.article-body code {font-size:.87em;background:#eceee5;border-radius:4px;padding:2px 5px;overflow-wrap:anywhere}
.article-body pre {background:#243c34;color:#f3f6e8;padding:25px 28px;border-radius:12px;overflow-x:auto;font-size:15px;line-height:1.8;margin:26px 0}
.article-body pre code {padding:0;background:transparent;font-size:inherit;white-space:pre;overflow-wrap:normal}
.article-note {border-left:4px solid #97ad64;padding:20px 25px;background:#eef1e5;margin:26px 0}
.article-note p {margin:10px 0 0}
.table-scroll {overflow-x:auto;margin:25px 0;border:1px solid var(--line);border-radius:10px}
.article-body table {border-collapse:collapse;width:100%;font-size:15px;white-space:nowrap}
.article-body td,.article-body th {padding:14px 16px;text-align:left;border-bottom:1px solid var(--line)}
.article-body th {background:#eceee5;font-weight:600}
.article-body tr:last-child td {border-bottom:0}
.verification-note {font-size:14px;color:var(--muted);border-top:1px solid var(--line);padding-top:25px;margin:30px 0}
.verification-note h2 {font-size:19px;letter-spacing:-.2px;margin-bottom:14px}
.article-cta {background:var(--purple);padding:32px;border-radius:14px;margin:40px 0 60px}
.article-cta h2,.article-cta h3 {margin:14px 0 16px}
.article-cta p {font-size:17px}
.article-cta .button {font-size:16px}
.next-tutorials {padding:35px 0 55px;border-top:1px solid var(--line)}
.next-tutorials>div {display:grid;grid-template-columns:1fr 1fr;gap:35px;margin-top:22px}
.next-tutorials a {display:grid;grid-template-columns:1fr auto;gap:8px 20px;border-bottom:1px solid var(--line);padding-bottom:22px}
.next-tutorials a>span:first-child {grid-column:1/-1;font-size:13px;color:var(--muted)}
.next-tutorials strong {font-family:var(--display);font-weight:500;font-size:24px;line-height:1.3}
@media(max-width:1000px){.post-grid{grid-template-columns:1fr}.post-card{display:grid;grid-template-columns:1fr 1fr}.post-card>img{height:100%;object-fit:cover}.article-layout{grid-template-columns:190px minmax(0,1fr);gap:35px}.download-card{align-items:flex-start;flex-direction:column}.blog-page .site-header nav{gap:16px}}
@media(max-width:700px){.blog-page .wrap{width:calc(100% - 40px)}.blog-page .site-header{height:90px;gap:20px}.blog-page .brand{font-size:26px}.blog-page .brand-symbol{width:26px;height:28px;font-size:26px}.blog-page .site-header nav{gap:15px}.blog-page .site-header nav>a{font-size:14px}.blog-page .site-header nav>a[href='/install.html']{display:none}.blog-page .nav-cta{padding:10px 12px}.blog-intro{padding:35px 0}.blog-intro h1{letter-spacing:-1.8px}.blog-intro>p:last-child{font-size:18px}.post-card{display:flex}.post-card>img{height:auto}.series-note{grid-template-columns:1fr;gap:12px;margin-bottom:35px}.article-header{padding-top:15px;padding-bottom:30px}.back-link{margin-bottom:30px}.article-header h1{letter-spacing:-1.3px}.article-intro{font-size:19px}.article-hero img{border-radius:10px}.download-card{padding:23px;margin:25px 0 35px}.download-card h2{font-size:25px}.download-actions{width:100%;flex-shrink:1}.download-actions .button{font-size:14px;padding:14px 17px;width:100%;justify-content:space-between}.article-layout{display:block}.article-toc{position:static;margin-bottom:35px}.article-toc nav{gap:10px}.article-body{font-size:17px;line-height:1.75}.article-body h2{font-size:27px}.article-body pre{padding:18px;font-size:12px}.article-body section{margin-bottom:40px}.article-cta{padding:24px}.next-tutorials>div{grid-template-columns:1fr}.next-tutorials strong{font-size:22px}}
@media(prefers-reduced-motion:reduce){.post-card{transition:none}.post-card:hover{transform:none}}

.article-cta h3 {font-size:30px;line-height:1.2;letter-spacing:-.7px}
.article-cta .button+p {margin-top:20px;margin-bottom:0}
