.blog-post{padding:var(--section-space) 0}.blog-index-hero{background:var(--white);padding:clamp(3rem,5vw,5rem) 0 clamp(2rem,3vw,3rem)}.blog-index-list{padding:clamp(2rem,3vw,3rem) 0 clamp(4rem,6vw,6rem)}.blog-index-hero-inner,.blog-post-header{max-width:860px}.blog-content-layout{display:grid;grid-template-columns:1fr 280px;gap:clamp(2rem,4vw,4rem);align-items:start}.blog-main{min-width:0}.blog-sidebar{padding:1.5rem;background:var(--light-gray);position:sticky;top:calc(var(--header-height) + 1.5rem)}.blog-sidebar-title{font-size:1rem;font-weight:700;margin:0 0 1.25rem;text-transform:uppercase;letter-spacing:.08em;color:var(--black)}.blog-sidebar .blog-filter-group{margin-bottom:1.5rem}.blog-sidebar .blog-chip-row{flex-direction:column;gap:.3rem}.blog-sidebar .blog-chip{font-size:.875rem;padding:.4rem .7rem}.blog-post-hero{position:relative;overflow:hidden;max-width:none;min-height:clamp(21rem,50vw,32rem);padding:clamp(2rem,4vw,3.5rem)}.blog-post-hero-content{position:relative;z-index:1;max-width:860px}.blog-hero-wave{position:absolute;inset:0;pointer-events:none;-webkit-mask-image:linear-gradient(to right,transparent,#000 56px,#000 calc(100% - 56px),transparent),linear-gradient(to bottom,transparent,#000 56px,#000 calc(100% - 56px),transparent);-webkit-mask-composite:source-in;mask-image:linear-gradient(to right,transparent,#000 56px,#000 calc(100% - 56px),transparent),linear-gradient(to bottom,transparent,#000 56px,#000 calc(100% - 56px),transparent);mask-composite:intersect}.blog-hero-wave-canvas{display:block;width:100%;height:100%}.blog-index-hero h1,.blog-post-header h1{font-size:clamp(2.5rem,5vw,4rem);font-weight:800;margin-bottom:1rem;letter-spacing:-.02em}.blog-active-filters,.blog-page-count,.blog-post-meta{color:var(--dark-gray);font-size:.95rem}.blog-section-title{font-size:1.1rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;margin:0 0 1.25rem;color:var(--black)}.blog-filter-group{display:flex;flex-direction:column;gap:.6rem;margin-bottom:1.5rem}.blog-filter-label{font-weight:700}.blog-chip-row,.blog-post-tags,.blog-pagination-pages{display:flex;flex-wrap:wrap;gap:.75rem}.blog-chip,.blog-tag,.blog-post-category,.blog-pagination-pages a{display:inline-flex;align-items:center;padding:.55rem .8rem;background:var(--light-gray);color:var(--black);text-decoration:none;font-size:.92rem}.blog-chip.is-active,.blog-pagination-pages a.is-current{background:var(--red);color:var(--white)}.blog-post-grid,.blog-outline-grid{display:grid;grid-template-columns:1fr;gap:1.5rem}.blog-post-card,.blog-placeholder-note,.blog-outline-card,.blog-author-box,.blog-service-cta{padding:2rem;background:var(--light-gray)}.blog-post-card h3,.blog-outline-card h3,.blog-outline-section h2,.blog-placeholder-note h2,.blog-author-box h2,.blog-service-cta h2{margin-top:0}.blog-post-card{position:relative;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}.blog-post-card:hover{transform:translateY(-3px);box-shadow:0 8px 24px #00000014}.blog-post-card h3 a{color:inherit;text-decoration:none}.blog-post-card h3 a:after{content:"";position:absolute;inset:0}.blog-post-card:hover h3 a{color:var(--red)}.blog-post-card .blog-post-category,.blog-post-card .blog-tag{position:relative;z-index:1}.blog-post-meta{display:flex;flex-wrap:wrap;gap:1rem;margin:0 0 1rem}.blog-post-meta--header{margin-bottom:1.5rem}.blog-pagination{display:flex;justify-content:space-between;gap:1rem;align-items:center;margin-top:2rem}.blog-pagination a{text-decoration:none;color:var(--red);font-weight:700}.blog-post-wrap{display:flex;flex-direction:column;gap:2rem}.blog-outline-section{display:flex;flex-direction:column;gap:1.2rem}.blog-service-cta{background:var(--black);color:var(--white)}.blog-service-cta .eyebrow{color:var(--red)}.blog-service-cta p{color:#ffffffbf}@media(min-width:780px){.blog-post-grid{grid-template-columns:repeat(2,1fr)}.blog-outline-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:900px){.blog-content-layout{grid-template-columns:1fr}.blog-sidebar{position:static;order:-1}.blog-sidebar .blog-chip-row{flex-direction:row;flex-wrap:wrap}}.blog-post-body{max-width:860px;line-height:1.75}.blog-post-body h2{font-size:clamp(1.5rem,2.5vw,2rem);margin-top:3rem;margin-bottom:1rem;padding-bottom:.5rem;border-bottom:2px solid var(--line)}.blog-post-body h3{font-size:clamp(1.15rem,2vw,1.4rem);margin-top:2rem;margin-bottom:.75rem;color:var(--black)}.blog-post-body h4{font-size:1.05rem;margin-top:1.5rem;margin-bottom:.5rem;color:var(--black);font-weight:700}.blog-post-body p{margin:0 0 1.25rem;color:var(--dark-gray)}.blog-post-body a{color:var(--red);text-decoration:underline;text-underline-offset:3px}.blog-post-body a:hover{color:var(--red-hover)}.blog-post-body ul,.blog-post-body ol{margin:0 0 1.5rem 1.5rem;padding:0;color:var(--dark-gray)}.blog-post-body li{margin-bottom:.5rem}.blog-post-body strong{color:var(--black);font-weight:700}.blog-post-body em{font-style:italic}.blog-post-body blockquote{margin:1.5rem 0;padding:1rem 1.5rem;border-left:4px solid var(--red);background:var(--light-gray);color:var(--black);font-style:italic}.blog-post-body blockquote p{margin:0;color:var(--black)}.blog-post-body table{width:100%;border-collapse:collapse;margin:1.5rem 0;font-size:.95rem;overflow-x:auto;display:block}.blog-post-body th,.blog-post-body td{padding:.75rem 1rem;text-align:left;border:1px solid var(--line-strong);vertical-align:top}.blog-post-body th{background:var(--black);color:var(--white);font-weight:700;font-family:var(--font-display)}.blog-post-body tr:nth-child(2n) td{background:var(--light-gray)}.blog-post-body code{font-family:Courier New,Courier,monospace;font-size:.9em;background:var(--light-gray);padding:.15em .4em;border-radius:2px}.blog-post-body hr{border:none;border-top:1px solid var(--line-strong);margin:2.5rem 0}.blog-post-body .note{padding:1.25rem 1.5rem;background:var(--light-gray);border-left:4px solid var(--black);margin:1.5rem 0}@media(max-width:780px){.blog-post-hero{min-height:auto;padding:1.75rem 1.5rem}.blog-pagination{flex-direction:column;align-items:flex-start}.blog-post-card,.blog-placeholder-note,.blog-outline-card,.blog-author-box,.blog-service-cta{padding:1.5rem}.blog-post-body h2{margin-top:2rem}.blog-post-body table{font-size:.875rem}.blog-post-body th,.blog-post-body td{padding:.6rem .75rem}}
