.blog-index-hero{position:relative;padding-top:148px;padding-bottom:80px;overflow:hidden}.blog-index-hero::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 14% 42%,color-mix(in srgb,var(--accent) calc(18% * var(--glow-strength)),transparent),transparent 30%),radial-gradient(circle at 82% 16%,color-mix(in srgb,var(--accent-2) calc(9% * var(--glow-strength)),transparent),transparent 28%),linear-gradient(180deg,color-mix(in srgb,var(--bg-deep) 40%,transparent),color-mix(in srgb,var(--bg-deep) 80%,transparent));pointer-events:none;z-index:0}.blog-index-hero::after{content:'';position:absolute;inset:0;opacity:var(--noise-opacity);background-image:linear-gradient(color-mix(in srgb,var(--tint) 6%,transparent) 1px,transparent 1px),linear-gradient(90deg,color-mix(in srgb,var(--tint) 6%,transparent) 1px,transparent 1px);background-size:var(--noise-size) var(--noise-size);mask-image:radial-gradient(circle at center,black 30%,transparent 92%);pointer-events:none;z-index:0;animation:scanline-scroll 5s linear infinite}.blog-index-hero-inner{position:relative;z-index:1}.blog-index-hero-layout{position:relative;z-index:1;display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center}.blog-index-hero-copy{display:flex;flex-direction:column;align-items:flex-start}.blog-index-hero-copy .section-kicker{margin-bottom:14px;animation:hero-fade-up var(--dur-slow) var(--ease) calc(0.05s * var(--stagger)) both}.blog-index-title{font-size:calc(clamp(3rem,6.5vw,6rem) * var(--type-scale));line-height:1.04;letter-spacing:calc(-0.04em * var(--tracking-display));margin:0 0 18px 0;padding-bottom:0.06em;color:var(--text-strong);background:linear-gradient(135deg,var(--text-strong) 40%,color-mix(in srgb,var(--accent) calc(90% * var(--glow-strength)),transparent) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:hero-fade-up var(--dur-slow) var(--ease) calc(0.16s * var(--stagger)) both}.blog-index-lead{color:var(--text-soft);font-size:1.08rem;line-height:1.7;max-width:480px;margin:0 0 24px 0;animation:hero-fade-up var(--dur-slow) var(--ease) calc(0.30s * var(--stagger)) both}.blog-index-post-badge{display:inline-flex;align-items:center;gap:8px;padding:10px 18px;border-radius:var(--radius-pill);background:color-mix(in srgb,var(--accent) calc(8% * var(--glow-strength)),transparent);border:var(--border-width) solid color-mix(in srgb,var(--accent) calc(22% * var(--glow-strength)),transparent);color:var(--accent);font-size:0.82rem;font-weight:var(--weight-ui);letter-spacing:0.05em;white-space:nowrap;animation:hero-fade-up var(--dur-slow) var(--ease) calc(0.42s * var(--stagger)) both}.blog-index-hero-post{position:relative;display:flex;flex-direction:column;animation:hero-fade-right var(--dur-slow) var(--ease) calc(0.22s * var(--stagger)) both;border-radius:var(--radius-lg);overflow:hidden;background:linear-gradient(160deg,color-mix(in srgb,var(--surface) 97%,transparent),color-mix(in srgb,var(--surface) 98%,transparent));border:var(--border-width) solid color-mix(in srgb,var(--highlight) 28%,transparent);box-shadow:0 28px 70px color-mix(in srgb,var(--shade) calc(46% * var(--shadow-strength)),transparent),0 0 0 1px color-mix(in srgb,var(--highlight) 10%,transparent),0 8px 48px color-mix(in srgb,var(--highlight) 8%,transparent);color:inherit;text-decoration:none;transition:transform var(--dur-slow) var(--ease),border-color var(--dur-slow) ease,box-shadow var(--dur-slow) ease}.blog-index-hero-post::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent 5%,color-mix(in srgb,var(--highlight) 45%,transparent) 25%,color-mix(in srgb,var(--highlight) 90%,transparent) 50%,color-mix(in srgb,var(--highlight) 45%,transparent) 75%,transparent 95%);z-index:3}.blog-index-hero-post:hover{transform:translateY(calc(-4px * var(--hover-lift)));border-color:color-mix(in srgb,var(--highlight) 52%,transparent);box-shadow:0 40px 90px color-mix(in srgb,var(--shade) calc(50% * var(--shadow-strength)),transparent),0 0 0 1px color-mix(in srgb,var(--highlight) 22%,transparent),0 16px 60px color-mix(in srgb,var(--highlight) 14%,transparent)}.blog-index-hero-post .blog-card-cover{aspect-ratio:5 / 2}.blog-index-hero-post .blog-card-body{padding:var(--pad-card);gap:8px}.blog-index-hero-post .blog-card-title{font-size:1.5rem;line-height:1.25}.blog-index-hero-post .blog-card-summary{-webkit-line-clamp:4;line-clamp:4}.blog-index-hero-post .blog-featured-badge{font-size:0.74rem;padding:4px 12px;background:color-mix(in srgb,var(--highlight) 14%,transparent);border-color:color-mix(in srgb,var(--highlight) 38%,transparent);color:color-mix(in srgb,var(--highlight) 55%,var(--text-strong))}.blog-index-grid-label{font-size:0.72rem;font-weight:var(--weight-display);letter-spacing:calc(0.18em * var(--tracking-kicker));text-transform:var(--case-kicker);color:var(--text-muted);margin-bottom:20px}.blog-index-list-section{padding-top:8px;padding-bottom:80px}.blog-card-grid{display:grid;grid-template-columns:var(--grid-blog);gap:var(--gap-grid);margin-top:8px}.blog-card.blog-card--hidden{display:none}.blog-card--revealed{animation:blog-card-in var(--dur-slow) var(--ease) both}@keyframes blog-card-in{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}.blog-index-more{display:flex;justify-content:center;margin-top:34px}.blog-card{display:flex;flex-direction:column;border-radius:var(--radius-lg);overflow:hidden;background:linear-gradient(180deg,color-mix(in srgb,var(--surface) 92%,transparent),color-mix(in srgb,var(--surface) 92%,transparent));border:var(--border-width) solid color-mix(in srgb,var(--tint) 8%,transparent);box-shadow:var(--shadow-md);transition:transform var(--dur-slow) var(--ease),border-color var(--dur-slow) ease,box-shadow var(--dur-slow) ease;color:inherit;text-decoration:none}.blog-card:hover{transform:translateY(calc(-5px * var(--hover-lift)));border-color:color-mix(in srgb,var(--accent) calc(30% * var(--glow-strength)),transparent);box-shadow:0 28px 60px color-mix(in srgb,var(--shade) calc(34% * var(--shadow-strength)),transparent),0 0 26px color-mix(in srgb,var(--accent) calc(12% * var(--glow-strength)),transparent)}.blog-card--featured{border-color:color-mix(in srgb,var(--highlight) 28%,transparent);box-shadow:var(--shadow-md),0 0 0 1px color-mix(in srgb,var(--highlight) 10%,transparent),0 8px 32px color-mix(in srgb,var(--highlight) 8%,transparent);background:linear-gradient(180deg,color-mix(in srgb,var(--surface) 95%,transparent),color-mix(in srgb,var(--surface) 97%,transparent))}.blog-card--featured:hover{border-color:color-mix(in srgb,var(--highlight) 50%,transparent);box-shadow:0 28px 60px color-mix(in srgb,var(--shade) calc(34% * var(--shadow-strength)),transparent),0 0 0 1px color-mix(in srgb,var(--highlight) 18%,transparent),0 12px 40px color-mix(in srgb,var(--highlight) 12%,transparent)}.blog-card-cover{position:relative;width:100%;aspect-ratio:16 / 9;overflow:hidden;background:color-mix(in srgb,var(--tint) 4%,transparent)}.blog-card-cover::after{content:"";position:absolute;inset:0;z-index:1;opacity:0;pointer-events:none;background:radial-gradient(circle at 16% 12%,color-mix(in srgb,var(--accent) calc(28% * var(--glow-strength)),transparent),transparent 40%),radial-gradient(circle at 86% 16%,color-mix(in srgb,var(--accent-2) calc(18% * var(--glow-strength)),transparent),transparent 36%);transition:opacity var(--dur-slow) ease}.blog-card:hover .blog-card-cover::after{opacity:1;animation:blog-glow-shift 3.6s ease-in-out infinite}.blog-card--featured .blog-card-cover::after,.blog-featured-single .blog-card-cover::after,.blog-index-hero-post .blog-card-cover::after{background:radial-gradient(circle at 16% 14%,color-mix(in srgb,var(--highlight) 30%,transparent),transparent 42%),radial-gradient(circle at 86% 16%,color-mix(in srgb,var(--highlight) 18%,transparent),transparent 36%)}.blog-featured-single:hover .blog-card-cover::after,.blog-index-hero-post:hover .blog-card-cover::after{opacity:1;animation:blog-glow-shift 3.6s ease-in-out infinite}@keyframes blog-glow-shift{0%{transform:scale(1) translate3d(0,0,0)}50%{transform:scale(1.14) translate3d(-3%,3%,0)}100%{transform:scale(1) translate3d(0,0,0)}}.blog-card-cover img{width:100%;height:100%;object-fit:var(--cov-fit,cover);object-position:var(--cov-x,50%) var(--cov-y,50%);transform:scale(var(--cov-zoom,1));display:block;transition:transform var(--dur-slow) var(--ease),filter var(--dur-slow) ease}.blog-card:hover .blog-card-cover img{transform:scale(calc(var(--cov-zoom,1) * 1.04));filter:brightness(1.04)}.blog-card-cover--empty{display:flex;align-items:center;justify-content:center;color:color-mix(in srgb,var(--accent) calc(30% * var(--glow-strength)),transparent);font-size:2.5rem}.blog-card-body{display:flex;flex-direction:column;flex:1;padding:var(--pad-card);gap:6px}.blog-card-meta{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin-bottom:4px}.blog-card-meta time{font-size:0.78rem;color:var(--text-muted);letter-spacing:0.04em;font-weight:var(--weight-ui)}.blog-card-reading-time{font-size:0.76rem;color:var(--text-muted);font-weight:var(--weight-ui);padding:2px 8px;border-radius:var(--radius-xs);background:color-mix(in srgb,var(--tint) 4%,transparent);border:var(--border-width) solid color-mix(in srgb,var(--tint) 7%,transparent)}.blog-card-tags{display:flex;flex-wrap:wrap;gap:6px}.ui-pill--sm{font-size:0.68rem!important;padding:2px 9px!important}.blog-card-title{font-size:1.18rem;font-weight:var(--weight-ui);color:var(--text-strong);line-height:1.3;margin:0}.blog-card-subtitle{font-size:0.84rem;color:var(--accent);font-weight:var(--weight-ui);margin:0}.blog-card-summary{font-size:0.88rem;color:var(--text-soft);line-height:1.6;margin:4px 0 0 0;flex:1;display:-webkit-box;-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.blog-card-read-more{display:inline-flex;align-items:center;gap:7px;margin-top:14px;font-size:0.82rem;font-weight:var(--weight-ui);color:var(--accent);letter-spacing:0.04em;transition:gap var(--dur-base) var(--ease),color var(--dur-base) ease}.blog-card-read-more i{transition:transform var(--dur-base) var(--ease)}.blog-card:hover .blog-card-read-more{gap:11px;color:var(--text-strong)}.blog-card:hover .blog-card-read-more i,.blog-featured-single:hover .blog-card-read-more i,.blog-index-hero-post:hover .blog-card-read-more i{transform:translateX(3px)}.blog-empty{display:flex;flex-direction:column;align-items:center;gap:14px;padding:80px 0;color:var(--text-muted);font-size:1rem}.blog-empty i{font-size:2.5rem;opacity:0.4}.back-to-top{position:fixed;bottom:32px;right:32px;width:46px;height:46px;border-radius:var(--radius-pill);background:color-mix(in srgb,var(--accent) calc(12% * var(--glow-strength)),transparent);border:var(--border-width) solid color-mix(in srgb,var(--accent) calc(28% * var(--glow-strength)),transparent);color:var(--accent);display:inline-flex;align-items:center;justify-content:center;opacity:0;transform:translateY(10px);transition:opacity var(--dur-base) ease,transform var(--dur-base) ease,background var(--dur-base) ease,border-color var(--dur-base) ease;z-index:200;text-decoration:none;font-size:0.9rem;backdrop-filter:blur(calc(8px * var(--blur-strength)));-webkit-backdrop-filter:blur(calc(8px * var(--blur-strength)))}.back-to-top.is-visible{opacity:1;transform:translateY(0)}.back-to-top:hover{background:color-mix(in srgb,var(--accent) calc(24% * var(--glow-strength)),transparent);border-color:color-mix(in srgb,var(--accent) calc(50% * var(--glow-strength)),transparent)}.blog-post-hero{position:relative;padding-top:132px;padding-bottom:0;overflow:hidden}.blog-post-hero::before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 10% 50%,color-mix(in srgb,var(--accent) calc(9% * var(--glow-strength)),transparent),transparent 42%),radial-gradient(ellipse at 85% 10%,color-mix(in srgb,var(--accent-2) calc(5% * var(--glow-strength)),transparent),transparent 36%);pointer-events:none}.blog-post-back-row{margin-bottom:22px}.blog-post-back-link{display:inline-flex;align-items:center;gap:10px;color:var(--text-soft);transition:transform var(--dur-base) ease,color var(--dur-base) ease}.blog-post-back-link:hover{transform:translateX(-2px);color:var(--text-strong)}.blog-post-cover{border-radius:var(--radius-md);overflow:hidden;border:var(--border-width) solid color-mix(in srgb,var(--tint) 8%,transparent);box-shadow:var(--shadow-md);margin-bottom:36px;max-height:360px}.blog-post-cover a{display:block}.blog-post-cover img{width:100%;max-height:360px;object-fit:var(--cov-fit,cover);object-position:var(--cov-x,50%) var(--cov-y,50%);transform:scale(var(--cov-zoom,1));display:block;transition:transform var(--dur-slow) ease}.blog-post-cover:hover img{transform:scale(calc(var(--cov-zoom,1) * 1.01))}.blog-post-header{max-width:100%;padding-bottom:32px}.blog-post-meta-row{display:flex;align-items:center;flex-wrap:wrap;gap:14px;margin-bottom:14px}.blog-post-date{font-size:0.82rem;color:var(--text-muted);letter-spacing:0.06em;font-weight:var(--weight-ui);text-transform:var(--case-kicker)}.blog-post-tags{display:flex;flex-wrap:wrap;gap:8px}.blog-post-reading-time{display:inline-flex;align-items:center;gap:6px;font-size:0.78rem;color:var(--text-muted);font-weight:var(--weight-ui);padding:2px 8px;border-radius:var(--radius-xs);background:color-mix(in srgb,var(--tint) 4%,transparent);border:var(--border-width) solid color-mix(in srgb,var(--tint) 7%,transparent)}.blog-post-title{font-size:calc(clamp(2.2rem,5vw,3.8rem) * var(--type-scale));line-height:1.1;letter-spacing:calc(-0.03em * var(--tracking-display));margin:0 0 12px 0;padding-bottom:0.06em;color:var(--text-strong);background:linear-gradient(135deg,var(--text-strong) 50%,color-mix(in srgb,var(--accent) calc(85% * var(--glow-strength)),transparent) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.blog-post-subtitle{font-size:1.15rem;color:var(--accent);font-weight:var(--weight-ui);margin:0 0 16px 0}.blog-post-body-section{}.blog-post-layout{display:grid;grid-template-columns:200px minmax(0,760px);justify-content:center;gap:48px;align-items:start;padding-top:112px;padding-bottom:100px}.blog-post-main{display:flex;flex-direction:column;min-width:0}.blog-post-sidebar{position:sticky;top:88px;max-height:calc(100vh - 110px);overflow-y:auto;overflow-x:hidden;display:flex;flex-direction:column;gap:28px;scrollbar-width:none}.blog-post-sidebar::-webkit-scrollbar{display:none}.sidebar-back{display:inline-flex;align-items:center;gap:9px;color:var(--text-muted);font-size:0.82rem;font-weight:var(--weight-ui);letter-spacing:0.04em;text-transform:var(--case-kicker);text-decoration:none;transition:color var(--dur-fast) ease}.sidebar-back:hover{color:var(--accent)}.sidebar-back i{font-size:0.8rem}.sidebar-post-nav{display:flex;flex-direction:column;gap:6px;padding-top:20px;border-top:var(--border-width) solid var(--border)}.sidebar-nav-item{display:flex;flex-direction:column;gap:4px;padding:10px 12px;border-radius:var(--radius-sm);border:var(--border-width) solid transparent;text-decoration:none;color:inherit;transition:background var(--dur-fast) ease,border-color var(--dur-fast) ease}.sidebar-nav-item:hover{background:color-mix(in srgb,var(--tint) 4%,transparent);border-color:var(--border)}.sidebar-nav-dir{display:flex;align-items:center;gap:6px;font-size:0.7rem;font-weight:var(--weight-display);letter-spacing:calc(0.1em * var(--tracking-kicker));text-transform:var(--case-kicker);color:var(--text-muted)}.sidebar-nav-dir i{font-size:0.65rem}.sidebar-nav-title{font-size:0.82rem;color:var(--text-soft);line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.sidebar-nav-item:hover .sidebar-nav-title{color:var(--text-strong)}.sidebar-toc{padding-top:20px;border-top:var(--border-width) solid var(--border)}.sidebar-toc-label{font-size:0.7rem;font-weight:var(--weight-display);letter-spacing:calc(0.12em * var(--tracking-kicker));text-transform:var(--case-kicker);color:var(--text-muted);margin-bottom:14px}#toc-nav{position:relative;display:flex;flex-direction:column;align-items:stretch;padding-left:20px}#toc-nav::before{content:'';position:absolute;left:5px;top:8px;bottom:8px;width:1px;background:color-mix(in srgb,var(--tint) 8%,transparent)}#toc-nav::after{content:'';position:absolute;left:5px;top:8px;width:1px;height:var(--toc-progress,0px);background:var(--accent);transition:height var(--dur-fast) linear}.toc-link{position:relative;display:flex;align-items:baseline;gap:5px;font-size:0.79rem;line-height:1.45;font-weight:var(--weight-ui);padding:5px 0 5px 2px;color:var(--text-muted);text-decoration:none;transition:color var(--dur-fast) ease}.toc-text{min-width:0;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden;word-break:break-word}.toc-link::before{content:'';position:absolute;left:-17px;top:calc(5px + 0.73em);transform:translateY(-50%);width:5px;height:5px;border-radius:var(--radius-pill);background:color-mix(in srgb,var(--tint) 12%,transparent);transition:background var(--dur-base) ease,transform var(--dur-base) ease,box-shadow var(--dur-base) ease}.toc-link--sub{padding-left:14px;font-size:0.75rem}.toc-link--sub::before{width:4px;height:4px;left:-17px}.toc-num{flex:none;color:var(--text-muted);font-size:0.85em;font-weight:var(--weight-ui);transition:color var(--dur-fast) ease}.toc-link.is-active .toc-num{color:color-mix(in srgb,var(--accent) calc(70% * var(--glow-strength)),transparent)}.toc-link:hover{color:var(--text-soft)}.toc-link:hover::before{background:color-mix(in srgb,var(--tint) 25%,transparent)}.toc-link.is-active{color:var(--accent)}.toc-link.is-active::before{background:var(--accent);box-shadow:0 0 7px color-mix(in srgb,var(--accent) calc(70% * var(--glow-strength)),transparent);transform:translateY(-50%) scale(1.5)}.blog-post-content{min-width:0;color:var(--text-soft);font-size:1.12rem;line-height:1.9;counter-reset:h2counter}@media (max-width:1024px){.blog-post-layout{grid-template-columns:minmax(0,760px);justify-content:center;padding-top:96px}.blog-post-sidebar{display:none}}.blog-post-content p{margin:0 0 28px 0;color:var(--text-soft)}.blog-post-content p.lead{font-size:1.16rem;line-height:1.75;color:var(--text-main);margin-bottom:22px}.blog-post-content p.lead + h2{margin-top:40px}.blog-post-content p a,.blog-post-content h2 a,.blog-post-content h3 a,.blog-post-content blockquote a,.blog-post-content li a{color:var(--accent);text-decoration:underline;text-decoration-color:color-mix(in srgb,var(--accent) calc(45% * var(--glow-strength)),transparent);text-underline-offset:3px;transition:color var(--dur-base) ease,text-decoration-color var(--dur-base) ease}.blog-post-content p a:hover,.blog-post-content h2 a:hover,.blog-post-content h3 a:hover,.blog-post-content blockquote a:hover,.blog-post-content li a:hover{color:color-mix(in srgb,var(--accent) 40%,var(--text-strong));text-decoration-color:var(--accent)}.blog-post-content mark{background:color-mix(in srgb,var(--accent) calc(26% * var(--glow-strength)),transparent);color:inherit;padding:0.04em 0.28em;border-radius:var(--radius-xs);box-decoration-break:clone;-webkit-box-decoration-break:clone}.blog-post-content u{text-decoration:underline;text-decoration-color:color-mix(in srgb,var(--accent) calc(75% * var(--glow-strength)),transparent);text-decoration-thickness:1.5px;text-underline-offset:2px}.blog-post-content p code,.blog-post-content h2 code,.blog-post-content h3 code,.blog-post-content blockquote code,.blog-post-content li code{background:color-mix(in srgb,var(--accent) calc(12% * var(--glow-strength)),transparent);border:var(--border-width) solid color-mix(in srgb,var(--accent) calc(24% * var(--glow-strength)),transparent);color:color-mix(in srgb,var(--accent) 20%,var(--text-strong));padding:0.08em 0.4em;border-radius:var(--radius-xs);font-size:0.86em;font-family:'JetBrains Mono',ui-monospace,'SF Mono',Menlo,monospace;white-space:nowrap}.blog-post-content h2{counter-increment:h2counter;counter-reset:h3counter;font-size:1.85rem;color:var(--text-strong);font-weight:var(--weight-ui);letter-spacing:calc(-0.025em * var(--tracking-display));margin:52px 0 18px 0;padding-left:14px;border-left:3px solid var(--accent)}.blog-post-content h2::before{content:counter(h2counter) ".";margin-right:10px;color:var(--accent);font-size:0.82em;font-weight:var(--weight-display);vertical-align:baseline;font-family:var(--font-body)}.blog-post-content h3{counter-increment:h3counter;font-size:1.28rem;color:var(--text-main);font-weight:var(--weight-ui);margin:32px 0 12px 0;padding-left:10px;border-left:2px solid color-mix(in srgb,var(--accent-2) calc(38% * var(--glow-strength)),transparent)}.blog-post-content h3::before{content:counter(h2counter) "." counter(h3counter);margin-right:8px;color:color-mix(in srgb,var(--accent-2) calc(75% * var(--glow-strength)),transparent);font-size:0.75em;font-weight:var(--weight-display);vertical-align:baseline;font-family:var(--font-body)}.blog-post-figure{margin:30px auto;border-radius:var(--radius-md);overflow:hidden;border:var(--border-width) solid color-mix(in srgb,var(--tint) 8%,transparent);box-shadow:var(--shadow-md);transition:border-color var(--dur-slow) ease,box-shadow var(--dur-slow) ease}.blog-post-figure:hover{border-color:color-mix(in srgb,var(--accent) calc(22% * var(--glow-strength)),transparent);box-shadow:var(--shadow-md),0 0 28px color-mix(in srgb,var(--accent) calc(14% * var(--glow-strength)),transparent)}.blog-post-figure--full{width:100%}.blog-post-figure--large{width:80%;margin-left:auto;margin-right:auto}.blog-post-figure--medium{width:55%;margin-left:auto;margin-right:auto}.blog-post-figure--small{width:35%;margin-left:auto;margin-right:auto}.blog-post-video-wrap--full{width:100%}.blog-post-video-wrap--large{width:80%;margin-left:auto;margin-right:auto}.blog-post-video-wrap--medium{width:55%;margin-left:auto;margin-right:auto}.blog-post-video-wrap--small{width:35%;margin-left:auto;margin-right:auto}.blog-post-figure a{display:block}.blog-post-figure img{width:100%;display:block;transition:transform var(--dur-slow) ease}.blog-post-figure:hover img{transform:scale(1.01)}.blog-post-figure figcaption{padding:10px 16px 12px;font-size:0.8rem;color:var(--text-muted);background:color-mix(in srgb,var(--tint) 3%,transparent);border-top:var(--border-width) solid color-mix(in srgb,var(--tint) 6%,transparent);text-align:center;letter-spacing:0.03em}.blog-post-image-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;margin:30px 0}.blog-post-image-row .blog-post-figure{margin:0}.blog-post-video-wrap{margin:30px 0}.blog-post-video-inner{position:relative;border-radius:var(--radius-md);overflow:hidden;border:var(--border-width) solid color-mix(in srgb,var(--tint) 8%,transparent);box-shadow:var(--shadow-md);aspect-ratio:16 / 9;background:var(--shade)}.blog-post-video-thumb-wrap{position:relative;width:100%;height:100%}.blog-post-video-poster{width:100%;height:100%;object-fit:cover;display:block;transition:filter var(--dur-base) ease}.blog-post-video-thumb-wrap:hover .blog-post-video-poster{filter:brightness(0.75)}.blog-post-video-play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);z-index:2;width:72px;height:72px;border-radius:var(--radius-pill);display:flex;align-items:center;justify-content:center;background:color-mix(in srgb,var(--shade) calc(65% * var(--shadow-strength)),transparent);color:var(--text-on-media);border:var(--border-width) solid color-mix(in srgb,var(--tint) 18%,transparent);backdrop-filter:blur(calc(8px * var(--blur-strength)));font-size:1.2rem;cursor:pointer;transition:transform var(--dur-base) ease,background var(--dur-base) ease}.blog-post-video-play:hover{transform:translate(-50%,-50%) scale(1.1);background:color-mix(in srgb,var(--accent) calc(28% * var(--glow-strength)),transparent)}.blog-post-video-consent{position:absolute;left:0;right:0;bottom:0;z-index:3;display:flex;flex-wrap:wrap;align-items:center;gap:4px 12px;padding:10px 14px;background:linear-gradient(to top,color-mix(in srgb,var(--shade) calc(90% * var(--shadow-strength)),transparent),transparent);color:color-mix(in srgb,var(--tint) 82%,transparent);font-size:0.72rem;line-height:1.35}.blog-post-video-consent-links{display:inline-flex;gap:14px;margin-left:auto}.blog-post-video-consent a{color:var(--accent);text-decoration:underline;white-space:nowrap}.blog-post-video-consent a:hover{color:color-mix(in srgb,var(--accent) 35%,var(--text-strong))}.blog-post-video-fullscreen{position:absolute;top:12px;right:14px;z-index:3;width:32px;height:32px;border-radius:var(--radius-xs);display:flex;align-items:center;justify-content:center;background:color-mix(in srgb,var(--shade) calc(45% * var(--shadow-strength)),transparent);color:color-mix(in srgb,var(--tint) 55%,transparent);border:var(--border-width) solid color-mix(in srgb,var(--tint) 12%,transparent);font-size:0.8rem;text-decoration:none;transition:color var(--dur-fast),background var(--dur-fast)}.blog-post-video-fullscreen:hover{color:var(--text-on-media);background:color-mix(in srgb,var(--accent) calc(22% * var(--glow-strength)),transparent)}.blog-post-video-iframe{width:100%;height:100%;border:none;display:block}.blog-post-video-local{width:100%;height:100%;display:block;object-fit:contain;background:var(--shade)}.blog-post-video-caption{margin-top:10px;font-size:0.8rem;color:var(--text-muted);text-align:center}.blog-post-quote{position:relative;margin:40px 0;padding:28px 32px 28px 36px;border-left:3px solid var(--accent);background:linear-gradient(135deg,color-mix(in srgb,var(--accent) calc(7% * var(--glow-strength)),transparent),color-mix(in srgb,var(--accent-2) calc(3% * var(--glow-strength)),transparent));border-radius:0 20px 20px 0;overflow:hidden}.blog-post-quote::before{content:'\201C';position:absolute;top:-4px;left:18px;font-size:5rem;line-height:1;color:color-mix(in srgb,var(--accent) calc(22% * var(--glow-strength)),transparent);font-family:Georgia,serif;pointer-events:none;user-select:none}.blog-post-quote p{position:relative;color:color-mix(in srgb,var(--accent) 22%,var(--text-strong));font-style:italic;font-size:1.1rem;line-height:1.75;margin:0 0 8px 0}.blog-post-quote cite{font-size:0.82rem;color:var(--text-muted);font-style:normal}.blog-post-code-wrap{position:relative;margin:30px 0}.blog-post-code-copy{position:absolute;top:10px;right:12px;z-index:2;padding:3px 10px;background:color-mix(in srgb,var(--tint) 6%,transparent);border:var(--border-width) solid color-mix(in srgb,var(--tint) 12%,transparent);border-radius:var(--radius-xs);color:color-mix(in srgb,var(--tint) 45%,transparent);font-size:0.72rem;font-family:inherit;cursor:pointer;letter-spacing:0.04em;transition:background var(--dur-fast),color var(--dur-fast),border-color var(--dur-fast)}.blog-post-code-copy:hover{background:color-mix(in srgb,var(--accent) calc(12% * var(--glow-strength)),transparent);color:var(--accent);border-color:color-mix(in srgb,var(--accent) calc(35% * var(--glow-strength)),transparent)}.blog-post-code .hljs,.blog-post-code code.hljs{background:var(--code-bg)}.blog-post-code{margin:0;padding:0;border:var(--border-width) solid color-mix(in srgb,var(--tint) 7%,transparent);border-radius:var(--radius-sm);overflow:hidden;font-size:0.86rem;line-height:1.65}.blog-post-code code{display:block;padding:20px 24px;padding-top:38px;overflow-x:auto;font-family:"Cascadia Code","Fira Code","Consolas",monospace;border-radius:var(--radius-sm)}.blog-post-divider{border:none;border-top:var(--border-width) solid color-mix(in srgb,var(--tint) 8%,transparent);margin:40px 0}@media (max-width:900px){.blog-index-hero,.blog-post-hero{padding-top:118px}.blog-post-cover{border-radius:var(--radius-md);max-height:380px}.blog-post-cover img{max-height:380px}}@media (max-width:600px){.blog-card-grid{grid-template-columns:1fr}.blog-post-title{font-size:2rem}.blog-post-content h2{font-size:1.4rem}.blog-post-image-row{grid-template-columns:1fr}}.blog-featured-section{margin-bottom:48px}.blog-featured-label{font-size:0.72rem;font-weight:var(--weight-display);letter-spacing:calc(0.12em * var(--tracking-kicker));text-transform:var(--case-kicker);color:var(--accent);margin-bottom:18px}.blog-featured-single{display:grid;grid-template-columns:1.4fr 1fr;border-radius:var(--radius-lg);overflow:hidden;background:linear-gradient(135deg,color-mix(in srgb,var(--surface) 95%,transparent),color-mix(in srgb,var(--surface) 95%,transparent));border:var(--border-width) solid color-mix(in srgb,var(--accent) calc(18% * var(--glow-strength)),transparent);box-shadow:0 20px 60px color-mix(in srgb,var(--shade) calc(38% * var(--shadow-strength)),transparent);transition:transform var(--dur-slow) var(--ease),border-color var(--dur-slow) ease,box-shadow var(--dur-slow) ease;color:inherit;text-decoration:none;min-height:300px}.blog-featured-single:hover{transform:translateY(calc(-5px * var(--hover-lift)));border-color:color-mix(in srgb,var(--accent) calc(35% * var(--glow-strength)),transparent);box-shadow:0 32px 72px color-mix(in srgb,var(--shade) calc(42% * var(--shadow-strength)),transparent)}.blog-featured-single .blog-card-cover{aspect-ratio:unset;height:100%}.blog-featured-single .blog-card-body{padding:var(--pad-card);justify-content:center;gap:10px}.blog-featured-single .blog-card-title{font-size:1.5rem;line-height:1.25}.blog-featured-single .blog-card-summary{-webkit-line-clamp:4;line-clamp:4}.blog-featured-badge{display:inline-flex;align-items:center;gap:5px;font-size:0.7rem;font-weight:var(--weight-display);letter-spacing:calc(0.1em * var(--tracking-kicker));text-transform:var(--case-kicker);color:color-mix(in srgb,var(--highlight) 55%,var(--text-strong));background:color-mix(in srgb,var(--highlight) 12%,transparent);border:var(--border-width) solid color-mix(in srgb,var(--highlight) 30%,transparent);border-radius:var(--radius-md);padding:3px 10px;margin-bottom:4px;width:fit-content}.blog-featured-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:var(--gap-grid);margin-top:22px}@media (max-width:900px){.blog-index-hero-layout{grid-template-columns:1fr;gap:36px}}@media (max-width:820px){.blog-featured-single{grid-template-columns:1fr}.blog-featured-single .blog-card-cover{height:220px}}@media (max-width:600px){.blog-featured-single .blog-card-body{padding:22px 20px}}