.blog-shell{background:var(--c-light);min-height:100svh;color:var(--c-text);font-family:var(--font-ui)}.blog-topbar{z-index:20;background:var(--c-light);border-bottom:1px solid #14151d14;position:sticky;top:0}.blog-topbar-inner{justify-content:space-between;align-items:baseline;max-width:72ch;margin:0 auto;padding:1rem 1.25rem;display:flex}.blog-wm{font-family:var(--font-brand);letter-spacing:-.06em;color:var(--c-navy);font-size:1.25rem;font-style:italic;font-weight:500;text-decoration:none}.blog-topbar a.blog-back{color:var(--c-text-muted);font-size:.75rem;text-decoration:none}.blog-topbar a.blog-back:hover{color:var(--c-accent)}.blog-container{max-width:72ch;margin:0 auto;padding:2rem 1.25rem 4rem}@media (min-width:768px){.blog-container{padding:3rem 2rem 5rem}.blog-topbar-inner{padding:1.25rem 2rem}}.blog-shell.has-mast .blog-container{padding-top:6.5rem}@media (min-width:768px){.blog-shell.has-mast .blog-container{padding-top:8rem}}.blog-crumbs{color:var(--c-text-muted);flex-wrap:wrap;gap:.4rem;margin-bottom:1.5rem;font-size:.75rem;display:flex}.blog-crumbs a{color:var(--c-text-muted);text-decoration:none}.blog-crumbs a:hover{color:var(--c-accent)}.blog-eyebrow{text-transform:uppercase;letter-spacing:.18em;color:var(--c-accent);margin-bottom:.75rem;font-size:.6875rem;font-weight:500}.blog-title{font-family:var(--font-display);letter-spacing:-.02em;color:var(--c-navy);margin:0 0 1rem;font-size:clamp(2rem,7vw,3.25rem);font-weight:400;line-height:1.08}.blog-title em{color:var(--c-accent);font-style:italic}.blog-meta{color:var(--c-text-muted);border-bottom:1px solid #14151d1a;flex-wrap:wrap;align-items:center;gap:.5rem;margin-bottom:2.25rem;padding-bottom:1.5rem;font-size:.8125rem;display:flex}.blog-meta .dot{opacity:.5}.blog-prose{color:var(--c-text);font-size:1.0625rem;line-height:1.72}.blog-prose>*+*{margin-top:1.15rem}.blog-prose h2{font-family:var(--font-display);letter-spacing:-.01em;color:var(--c-navy);margin-top:2.75rem;margin-bottom:.25rem;scroll-margin-top:5rem;font-size:clamp(1.5rem,4.5vw,1.95rem);font-weight:400;line-height:1.18}.blog-prose h3{font-family:var(--font-ui);color:var(--c-navy);margin-top:2rem;margin-bottom:.25rem;scroll-margin-top:5rem;font-size:1.2rem;font-weight:600}.blog-prose p{margin:0}.blog-prose strong{color:var(--c-navy);font-weight:600}.blog-prose em{font-style:italic}.blog-prose a{color:var(--c-accent);text-underline-offset:3px;text-decoration:underline;text-decoration-thickness:1px}.blog-prose a:hover{text-decoration-thickness:2px}.blog-prose ul,.blog-prose ol{flex-direction:column;gap:.45rem;padding-left:1.35rem;display:flex}.blog-prose ul{list-style:outside}.blog-prose ol{list-style:decimal}.blog-prose li{padding-left:.2rem}.blog-prose li>ul,.blog-prose li>ol{margin-top:.45rem}.blog-prose blockquote{border-left:3px solid var(--c-accent);color:var(--c-text-muted);padding-left:1rem;font-style:italic}.blog-prose code{background:#14151d0f;border-radius:4px;padding:.1em .35em;font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:.875em}.blog-prose table{border-collapse:collapse;width:100%;font-size:.9375rem;display:block;overflow-x:auto}.blog-prose th,.blog-prose td{text-align:left;vertical-align:top;border:1px solid #14151d24;padding:.6rem .75rem}.blog-prose thead th{color:var(--c-navy);background:#14151d0a;font-weight:600}.blog-prose hr{border:0;border-top:1px solid #14151d1f;margin:2.5rem 0}.blog-cta{background:var(--c-navy);color:var(--c-light);border-radius:1rem;margin-top:3rem;padding:1.75rem}.blog-cta h3{font-family:var(--font-display);color:var(--c-light);margin:0 0 .5rem;font-size:1.5rem;font-weight:400}.blog-cta h3 em{color:var(--c-accent);font-style:italic}.blog-cta p{color:#eae8e8bf;margin:0 0 1.1rem;font-size:.9375rem}.blog-cta .blog-cta-row{flex-wrap:wrap;gap:.6rem;display:flex}.blog-cta a.primary{background:var(--c-accent);color:var(--c-navy);border-radius:999px;align-items:center;gap:.4rem;padding:.8rem 1.4rem;font-size:.9375rem;font-weight:600;text-decoration:none;display:inline-flex}.blog-cta a.ghost{color:var(--c-light);border:1px solid #eae8e847;border-radius:999px;align-items:center;gap:.4rem;padding:.8rem 1.4rem;font-size:.9375rem;font-weight:500;text-decoration:none;display:inline-flex}.blog-index-head{margin-bottom:2.5rem}.blog-index-lede{color:var(--c-text);max-width:52ch;font-size:1.0625rem;line-height:1.6}.blog-container.blog-index{max-width:1080px}.blog-tags{flex-wrap:wrap;gap:.5rem;margin-bottom:2rem;display:flex}.blog-tag{font-family:var(--font-ui);color:var(--c-text);cursor:pointer;background:0 0;border:1px solid #14151d29;border-radius:999px;align-items:center;gap:.4rem;padding:.45rem .9rem;font-size:.875rem;font-weight:500;transition:border-color .15s,background .15s,color .15s;display:inline-flex}.blog-tag:hover{border-color:var(--c-accent);color:var(--c-navy)}.blog-tag.is-active{background:var(--c-navy);border-color:var(--c-navy);color:var(--c-light)}.blog-tag-n{font-variant-numeric:tabular-nums;opacity:.6;font-size:.75rem}.blog-tag.is-active .blog-tag-n{opacity:.85}.blog-grid{grid-template-columns:1fr;gap:1rem;display:grid}@media (min-width:640px){.blog-grid{grid-template-columns:repeat(2,1fr)}}@media (min-width:980px){.blog-grid{grid-template-columns:repeat(3,1fr)}}.blog-tile{background:#fff;border:1px solid #14151d12;border-radius:24px;flex-direction:column;padding:1.5rem;text-decoration:none;transition:transform .2s,box-shadow .2s,border-color .2s;display:flex}.blog-tile:hover{border-color:#14151d1f;transform:translateY(-4px);box-shadow:0 22px 44px -18px #14151d33}.blog-tile-cat{text-transform:uppercase;letter-spacing:.18em;color:var(--c-accent);margin-bottom:.75rem;font-size:.6875rem;font-weight:500}.blog-tile-title{font-family:var(--font-display);color:var(--c-navy);margin:0 0 .5rem;font-size:1.4rem;font-weight:400;line-height:1.15;transition:color .15s}.blog-tile:hover .blog-tile-title{color:var(--c-accent)}.blog-tile-desc{color:var(--c-text-muted);-webkit-line-clamp:3;-webkit-box-orient:vertical;margin:0 0 1rem;font-size:.9375rem;line-height:1.5;display:-webkit-box;overflow:hidden}.blog-tile-meta{color:var(--c-text-muted);opacity:.8;margin-top:auto;font-size:.75rem}