.blog-hero{background:var(--wash);padding-block:clamp(48px,7vw,84px) clamp(28px,4vw,44px)}.blog-hero h1{max-width:760px;font-size:clamp(38px,5vw,60px)}.blog-hero .lead{max-width:640px}.post-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin:0;padding:clamp(36px,5vw,56px) 0 clamp(56px,7vw,88px);list-style:none;display:grid}.post-card{border:1px solid var(--line);background:#fff;border-radius:16px;flex-direction:column;height:100%;text-decoration:none;transition:border-color .2s,transform .2s;display:flex;overflow:hidden}.post-card:hover{border-color:var(--blue);transform:translateY(-2px)}.post-card img{aspect-ratio:16/9;object-fit:cover;width:100%;height:auto}.post-card__body{flex-direction:column;flex:1;gap:8px;padding:18px 20px 20px;display:flex}.post-card__body h2{letter-spacing:-.01em;margin:0;font-size:20px;line-height:1.3}.post-card__body p{color:var(--muted);margin:0;font-size:14px}.post-meta{color:var(--muted);margin:0;font-size:13px}.post-meta a{color:var(--blue);font-weight:700;text-decoration:none}.draft-badge{color:#6b4e00;letter-spacing:.06em;text-transform:uppercase;background:#fff1c2;border-radius:6px;margin-right:6px;padding:2px 7px;font-size:11px;font-weight:800;display:inline-block}.blog-empty{color:var(--muted);padding-block:40px 80px}.article{padding-block:clamp(36px,5vw,64px) clamp(56px,7vw,88px)}.article__head{max-width:760px;margin-inline:auto}.breadcrumbs{color:var(--muted);margin-bottom:18px;font-size:13px}.breadcrumbs a{color:var(--blue);font-weight:700;text-decoration:none}.article__head h1{max-width:none;font-size:clamp(34px,4.6vw,54px)}.article__head .lead{max-width:none;margin-bottom:18px}.article__hero{max-width:1000px;margin:clamp(26px,4vw,40px) auto}.article__hero img{border-radius:18px;width:100%;height:auto}.prose{max-width:720px;margin-inline:auto;font-size:18px;line-height:1.7}.prose h2{letter-spacing:-.025em;margin:2.1em 0 .6em;font-size:clamp(26px,3vw,32px);line-height:1.2}.prose h3{margin:1.7em 0 .5em;font-size:21px}.prose p,.prose ul,.prose ol,.prose table,.prose blockquote,.prose figure{margin:0 0 1.15em}.prose li{margin:.35em 0}.prose a{color:var(--blue);font-weight:600}.prose img{border-radius:14px;height:auto;margin-block:1.6em}.prose blockquote{border-left:3px solid var(--blue);background:var(--pale);color:var(--ink);border-radius:0 12px 12px 0;padding:14px 20px}.prose blockquote p:last-child{margin-bottom:0}.prose table{border-collapse:collapse;width:100%;font-size:15px}.prose th,.prose td{border-bottom:1px solid var(--line);text-align:left;vertical-align:top;padding:10px 12px}.prose th{background:var(--wash);font-weight:800}.prose code{background:var(--wash);border-radius:5px;padding:.1em .35em;font-size:.9em}.prose hr{border:0;border-top:1px solid var(--line);margin:2.4em 0}.faq{max-width:720px;margin:2.6em auto 0}.faq h2{letter-spacing:-.025em;font-size:clamp(26px,3vw,32px)}.faq details{border-bottom:1px solid var(--line)}.faq summary{cursor:pointer;padding:16px 0;font-size:18px;font-weight:750}.faq details p{color:var(--muted);margin:0 0 18px}.cta-box{background:var(--blue);color:#fff;border-radius:18px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:18px;max-width:720px;margin:2.8em auto 0;padding:26px 28px;display:flex}.cta-box h2{letter-spacing:-.02em;margin:0 0 4px;font-size:24px}.cta-box p{color:#d9dcff;margin:0;font-size:15px}.cta-box__actions{flex-wrap:wrap;gap:10px;display:flex}.cta-box .button{color:var(--blue);background:#fff}.cta-box .button:hover{background:var(--pale)}.cta-box .button--outline{color:#fff;background:0 0;border-color:#b6bbff}.cta-box .button--outline:hover{background:#3039e1}.author-box{border-top:1px solid var(--line);max-width:720px;color:var(--muted);align-items:center;gap:14px;margin:2.4em auto 0;padding-top:22px;font-size:14px;display:flex}.author-box img{flex:0 0 44px;width:44px;height:44px}.author-box strong{color:var(--ink);display:block}.related{max-width:1000px;margin:clamp(48px,6vw,72px) auto 0}.related h2{letter-spacing:-.02em;font-size:clamp(24px,2.6vw,30px)}.related .post-list{padding:0}@media (width<=850px){.post-list{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=560px){.post-list{grid-template-columns:1fr}.prose{font-size:17px}.cta-box{padding:22px 20px}}@media (prefers-reduced-motion:reduce){.post-card{transition:none}}
