@font-face{font-family:ReferenceSerif;src:url('reference-serif.woff2') format('woff2');font-display:swap}
@font-face{font-family:ReferenceSans;src:url('reference-sans.woff2') format('woff2');font-display:swap}
:root{--serif:ReferenceSerif,Georgia,serif;--sans:ReferenceSans,Arial,sans-serif;--paper:#fafaf9;--ink:#141312;--muted:#625c53;--line:#e2ded6;--accent:#806139}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:32px}body{margin:0;background:var(--paper);color:var(--ink);font:400 17px/1.65 var(--sans)}a{color:inherit;text-underline-offset:5px;text-decoration-thickness:1px}a:hover{color:var(--accent)}a:focus-visible,button:focus-visible{outline:2px solid var(--accent);outline-offset:5px}img{display:block;max-width:100%;height:auto}button{font:inherit}p{margin:0 0 22px}h1,h2{font-family:var(--serif);font-weight:400}h1{font-size:clamp(44px,5vw,72px);line-height:1.08;letter-spacing:-.025em;margin:0}h2{font-size:36px;line-height:1.16;letter-spacing:-.015em}.skip-link{position:absolute;left:20px;top:-100px;background:var(--ink);color:var(--paper);padding:12px 20px;z-index:20}.skip-link:focus{top:12px}
.blog-nav{height:76px;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:0 clamp(20px,2.3vw,40px);border-bottom:1px solid var(--line)}.blog-nav>a img{width:140px}.blog-nav nav{display:flex;gap:12px;align-items:center}.blog-nav nav a{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 16px;font-size:14px;text-decoration:none;line-height:1;border:1px solid var(--ink);border-radius:4px;transition:background .2s,color .2s}.blog-login:hover{background:var(--ink);color:var(--paper)}.blog-nav .blog-demo{background:var(--ink);color:var(--paper)}.blog-nav .blog-demo:hover{background:#35312b}.blog-nav nav a:active{transform:translateY(1px)}
.blog-index{max-width:1280px;margin:auto;padding:82px 40px 120px}.blog-heading{padding-bottom:55px;border-bottom:1px solid var(--line)}.blog-heading p{font-size:20px;line-height:1.5;color:var(--muted);margin:22px 0 0}.blog-feature{display:grid;grid-template-columns:1.2fr 1fr;align-items:center;gap:64px;padding:56px 0 0}.blog-feature-image{overflow:hidden;border-radius:6px;display:block;aspect-ratio:16/10;background:#e9e4dc}.blog-feature-image img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}.blog-feature-image:hover img{transform:scale(1.025)}.blog-feature h2{margin:20px 0 22px;font-size:40px}.blog-feature h2 a{text-decoration:none}.blog-feature h2 a:hover{text-decoration:underline}.blog-excerpt{color:#4c4740;line-height:1.7;margin-bottom:22px}.blog-feature .article-meta{gap:8px 18px;font-size:12px}.blog-feature .article-meta span:first-child{width:100%;color:var(--accent);font-size:13px}.blog-read{display:inline-flex;align-items:center;min-height:44px;font-size:15px}
.article-main{max-width:1280px;margin:auto;padding:42px 40px 100px}.breadcrumbs{display:flex;gap:14px;align-items:center;font-size:13px;color:var(--muted);margin-bottom:42px}.breadcrumbs a{display:inline-flex;align-items:center;min-height:32px}.breadcrumbs span{color:#a39b8e}.article-heading{max-width:900px;margin:0 auto 40px}.article-heading h1{max-width:860px;font-size:clamp(44px,5vw,68px)}.article-deck{max-width:810px;font-size:20px;line-height:1.6;color:#4c4740;margin:26px 0}.article-meta{display:flex;flex-wrap:wrap;gap:12px 26px;color:var(--muted);font-size:13px}.article-meta span:first-child{color:var(--accent)}.article-cover{margin:0 0 66px;border-radius:6px;overflow:hidden;background:#e9e4dc;aspect-ratio:24/11}.article-cover img{width:100%;height:100%;object-fit:cover}.article-layout{display:grid;grid-template-columns:220px minmax(0,740px);justify-content:space-between;gap:64px}.article-toc{position:sticky;top:32px;align-self:start;font-size:13px;line-height:1.45}.article-toc p{color:var(--accent);margin:0 0 16px;font-size:12px}.article-toc a{display:block;padding:9px 0;color:var(--muted);text-decoration:none}.article-toc a:hover{color:var(--accent);text-decoration:underline}.article-body{font-size:18px;line-height:1.78;color:#4c4740;min-width:0}.article-body p{margin:0 0 23px}.article-body h2{color:var(--ink);margin:0 0 24px;font-size:34px;line-height:1.2}.article-body section{margin-top:44px;padding-top:38px;border-top:1px solid var(--line);scroll-margin-top:32px}.article-body ul{padding-left:24px;margin:0 0 26px}.article-body li{padding-left:4px;margin:0 0 13px}.article-body a{color:#69502e;overflow-wrap:anywhere}.article-cta{background:#f1eee8;padding:38px!important;border:0!important;border-radius:6px;margin-top:50px!important}.article-body .article-demo{display:inline-flex;align-items:center;justify-content:center;padding:0 22px;min-height:48px;background:var(--ink);color:var(--paper);text-decoration:none;border-radius:4px;font-size:15px;transition:background .2s}.article-body .article-demo:hover{background:#35312b}.article-body .article-demo:active{transform:translateY(1px)}.article-back{margin-top:58px;padding-top:28px;border-top:1px solid var(--line);font-size:14px}.article-back a{display:inline-flex;align-items:center;min-height:44px}
.blog-footer{background:#141312;color:#f1efea;display:flex;flex-wrap:wrap;align-items:center;gap:32px;padding:48px clamp(24px,5vw,80px)}.blog-footer img{width:148px}.blog-footer nav{display:flex;gap:12px 28px;flex-wrap:wrap;margin-left:auto;font-size:14px}.blog-footer nav a{display:inline-flex;align-items:center;min-height:44px;text-decoration:none}.blog-footer nav a:hover{color:#d9c29f;text-decoration:underline}.blog-footer p{flex-basis:100%;margin:0;font-size:12px;color:#bab3a6}
@media(max-width:1000px){.blog-feature{gap:36px}.blog-feature h2{font-size:34px}.article-layout{grid-template-columns:180px minmax(0,1fr);gap:40px}.article-body h2{font-size:30px}.blog-footer nav{margin-left:0}}
@media(max-width:760px){.blog-nav{gap:12px}.blog-nav>a img{width:120px}.blog-nav nav{gap:8px}.blog-nav nav a{font-size:12px;padding:0 11px}.blog-index{padding:50px 24px 72px}.blog-heading{padding-bottom:32px}.blog-heading p{font-size:18px;margin-top:18px}.blog-feature{grid-template-columns:1fr;gap:28px;padding-top:32px}.blog-feature-image{aspect-ratio:16/9}.blog-feature h2{font-size:35px;margin-top:16px}.blog-excerpt{font-size:17px}.article-main{padding:24px 24px 64px}.breadcrumbs{margin-bottom:26px}.article-heading{margin-bottom:30px}.article-heading h1{font-size:44px}.article-deck{font-size:18px;line-height:1.6;margin:22px 0}.article-meta{gap:8px 20px;font-size:12px}.article-meta span:first-child{width:100%}.article-cover{margin:0 0 32px;aspect-ratio:24/11}.article-layout{grid-template-columns:1fr;gap:30px}.article-toc{position:static;display:grid;grid-template-columns:1fr 1fr;gap:0 20px;border-bottom:1px solid var(--line);padding-bottom:24px}.article-toc p{grid-column:1/-1;margin-bottom:8px}.article-toc a{min-height:44px;padding:10px 0;font-size:12px}.article-body{font-size:17px;line-height:1.75}.article-body h2{font-size:29px;line-height:1.2}.article-body section{margin-top:34px;padding-top:30px}.article-cta{padding:28px 24px!important}.article-back{margin-top:38px}.blog-footer{padding:38px 24px;gap:24px}.blog-footer nav{gap:4px 24px;flex-basis:100%;font-size:13px}.blog-footer img{width:140px}}
@media(max-width:360px){.blog-nav>a img{width:104px}.blog-nav{padding:0 16px}.blog-nav nav a{padding:0 9px}.article-heading h1{font-size:38px}.blog-feature h2{font-size:32px}.article-main,.blog-index{padding-left:20px;padding-right:20px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}.blog-feature-image:hover img{transform:none}}

.article-heading h1,.blog-feature h2{text-wrap:balance}
