.article-page,.blog-page{padding-top:var(--sp-10);padding-bottom:var(--sp-16);background:var(--c-bg);min-height:100vh}.blog-header{text-align:center;margin-bottom:var(--sp-12)}.blog-back{display:block;font-family:var(--font-mono);font-size:.75rem;color:color-mix(in oklch,var(--c-ink) 60%,transparent);text-decoration:none;letter-spacing:.1em;text-transform:uppercase;margin-bottom:var(--sp-6);transition:color .2s ease}.blog-back:hover{color:var(--c-accent-deep)}.blog-h1{font-size:clamp(2.5rem,6vw,4.5rem);letter-spacing:-.02em;line-height:1.02;margin:var(--sp-4) 0 var(--sp-6);color:var(--c-ink)}.blog-h1 em{font-style:italic;font-family:"Instrument Serif",Georgia,serif;color:var(--c-accent-deep)}.blog-intro{max-width:56ch;margin:0 auto;font-size:1.125rem;line-height:1.65;color:var(--c-ink-soft)}.blog-featured{margin-bottom:var(--sp-12)}.blog-featured-link{display:grid;grid-template-columns:1fr 1.1fr;gap:var(--sp-8);align-items:center;text-decoration:none;color:inherit;background:linear-gradient(135deg,#fefaf5,#fef0dc);border:1.5px solid color-mix(in oklch,var(--c-accent) 30%,transparent);border-radius:24px;padding:var(--sp-8);transition:transform .25s cubic-bezier(.22,1,.36,1),box-shadow .25s ease;overflow:hidden}.blog-featured-link:hover{transform:translateY(-2px);box-shadow:0 16px 48px rgba(184,115,51,.12)}@media (max-width:800px){.blog-featured-link{grid-template-columns:1fr;gap:var(--sp-5);padding:var(--sp-5)}}.blog-featured-image{aspect-ratio:4/3;border-radius:16px;overflow:hidden;background:color-mix(in oklch,var(--c-ink) 5%,transparent);order:2}.blog-featured-image img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s cubic-bezier(.22,1,.36,1)}.blog-featured-link:hover .blog-featured-image img{transform:scale(1.03)}@media (max-width:800px){.blog-featured-image{order:1;aspect-ratio:16/10}}.blog-featured-content{padding:var(--sp-3) var(--sp-3) var(--sp-3) var(--sp-5);order:1}@media (max-width:800px){.blog-featured-content{order:2;padding:0}}.blog-featured-content h2{font-size:clamp(1.625rem,3.6vw,2.5rem);letter-spacing:-.015em;line-height:1.1;margin:var(--sp-3) 0 var(--sp-4);color:var(--c-ink)}.blog-featured-excerpt{font-size:1.0625rem;line-height:1.55;color:var(--c-ink-soft);margin-bottom:var(--sp-4);max-width:60ch}.blog-featured-meta{display:flex;align-items:center;gap:6px;font-family:var(--font-mono);font-size:.6875rem;text-transform:uppercase;letter-spacing:.1em;color:color-mix(in oklch,var(--c-ink) 55%,transparent);margin-bottom:var(--sp-4)}.blog-featured-cta{display:inline-flex;align-items:center;font-weight:600;color:var(--c-accent-deep);font-size:.9375rem}.blog-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:var(--sp-6);margin-bottom:var(--sp-12)}.blog-card{background:white;border-radius:20px;overflow:hidden;border:1px solid color-mix(in oklch,var(--c-ink) 8%,transparent);transition:transform .25s cubic-bezier(.22,1,.36,1),box-shadow .25s ease,border-color .25s ease;display:flex;flex-direction:column}.blog-card:hover{transform:translateY(-3px);box-shadow:0 16px 40px rgba(0,0,0,.08);border-color:color-mix(in oklch,var(--c-accent) 40%,transparent)}.blog-card-link{display:flex;flex-direction:column;text-decoration:none;color:inherit;height:100%}.blog-card-image{aspect-ratio:16/10;overflow:hidden;background:color-mix(in oklch,var(--c-ink) 5%,transparent)}.blog-card-image img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s cubic-bezier(.22,1,.36,1)}.blog-card:hover .blog-card-image img{transform:scale(1.04)}.blog-card-content{padding:var(--sp-5);flex:1;display:flex;flex-direction:column}.blog-card-meta{display:flex;align-items:center;gap:6px;font-family:var(--font-mono);font-size:.6875rem;text-transform:uppercase;letter-spacing:.1em;color:color-mix(in oklch,var(--c-ink) 55%,transparent);margin-bottom:var(--sp-3)}.blog-card-dot{opacity:.5}.blog-card h3{font-size:1.375rem;letter-spacing:-.01em;line-height:1.2;margin:0 0 var(--sp-3);color:var(--c-ink)}.blog-card-excerpt{font-size:.9375rem;line-height:1.55;color:var(--c-ink-soft);margin:0 0 var(--sp-4)}.blog-card-tags{display:flex;flex-wrap:wrap;gap:6px}.blog-tag{display:inline-block;font-family:var(--font-mono);font-size:.6875rem;padding:3px 10px;background:color-mix(in oklch,var(--c-accent) 8%,transparent);color:var(--c-accent-deep);border-radius:99px;text-transform:lowercase}.blog-empty{text-align:center;padding:var(--sp-16) var(--sp-8);color:var(--c-ink-soft)}.blog-footer-cta{text-align:center;padding:var(--sp-12) var(--sp-8);background:white;border-radius:20px;border:1px solid color-mix(in oklch,var(--c-ink) 8%,transparent);margin-top:var(--sp-8)}.blog-footer-cta p{font-size:1.125rem;color:var(--c-ink-soft);margin:0 0 var(--sp-5);max-width:50ch;margin-left:auto;margin-right:auto}.article-container{max-width:760px;margin:0 auto}.article-breadcrumb{display:flex;align-items:center;gap:8px;font-family:var(--font-mono);font-size:.75rem;text-transform:uppercase;letter-spacing:.1em;color:color-mix(in oklch,var(--c-ink) 55%,transparent);margin-bottom:var(--sp-8);flex-wrap:wrap}.article-breadcrumb a{color:inherit;text-decoration:none;transition:color .2s ease}.article-breadcrumb a:hover{color:var(--c-accent-deep)}.article-breadcrumb .current{color:var(--c-ink);font-weight:600;max-width:50ch;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.article-header{margin-bottom:var(--sp-10);text-align:center}.article-tags{display:flex;justify-content:center;gap:8px;margin-bottom:var(--sp-5)}.article-h1{font-size:clamp(2rem,5vw,3.75rem);letter-spacing:-.02em;line-height:1.05;margin:0 0 var(--sp-5);color:var(--c-ink)}.article-lead{font-size:1.25rem;line-height:1.55;color:var(--c-ink-soft);margin:0 auto var(--sp-6);max-width:58ch;font-family:"Instrument Serif",Georgia,serif;font-style:italic}.article-meta{display:inline-flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:center;font-family:var(--font-mono);font-size:.75rem;text-transform:uppercase;letter-spacing:.1em;color:color-mix(in oklch,var(--c-ink) 55%,transparent)}.article-dot{opacity:.4}.article-author{font-weight:600}.article-body{font-family:var(--font-geist),"Inter",system-ui,sans-serif;font-size:1.0625rem;line-height:1.75;color:var(--c-ink)}.article-body>*+*{margin-top:1.2em}.article-body h2{font-family:"Instrument Serif",Georgia,serif;font-size:clamp(1.625rem,3vw,2.25rem);font-weight:400;letter-spacing:-.015em;line-height:1.15;margin-top:2.2em;margin-bottom:.6em;color:var(--c-ink)}.article-body h3{font-size:1.3125rem;font-weight:700;letter-spacing:-.01em;line-height:1.3;margin-top:1.8em;margin-bottom:.4em;color:var(--c-ink)}.article-body h4{font-size:1.0625rem;font-weight:700;margin-top:1.4em;margin-bottom:.3em}.article-body p{margin:0}.article-body a{color:var(--c-accent-deep);text-decoration:none;background-image:linear-gradient(currentColor,currentColor);background-size:100% 1px;background-repeat:no-repeat;background-position:0 100%;padding-bottom:1px;transition:opacity .2s ease}.article-body a:hover{opacity:.7}.article-body strong{font-weight:700;color:var(--c-ink)}.article-body em{font-style:italic}.article-body ol,.article-body ul{padding-left:1.6em;margin:1em 0}.article-body li{margin:.4em 0;line-height:1.65}.article-body li::marker{color:var(--c-accent)}.article-body blockquote{margin:1.5em 0;padding:.5em 0 .5em 1.5em;border-left:3px solid var(--c-accent);font-family:"Instrument Serif",Georgia,serif;font-style:italic;font-size:1.25rem;line-height:1.55;color:var(--c-ink-soft)}.article-body code{background:color-mix(in oklch,var(--c-ink) 6%,transparent);padding:2px 6px;border-radius:4px;font-family:var(--font-geist-mono);font-size:.875em}.article-body pre{background:#1a1a2e;color:#faf6f0;padding:1.2em 1.4em;border-radius:12px;overflow-x:auto;font-size:.875em;line-height:1.55;margin:1.5em 0}.article-body pre code{background:transparent;padding:0;color:inherit;font-size:inherit}.article-body hr{margin:2.5em 0;border:none;border-top:1px solid color-mix(in oklch,var(--c-ink) 12%,transparent)}.article-body table{width:100%;border-collapse:collapse;margin:1.5em 0;font-size:.9375rem}.article-body td,.article-body th{padding:12px 14px;border-bottom:1px solid color-mix(in oklch,var(--c-ink) 10%,transparent);text-align:left}.article-body th{font-weight:700;background:color-mix(in oklch,var(--c-accent) 6%,transparent);color:var(--c-ink)}.article-body img{max-width:100%;height:auto;border-radius:12px;margin:1.5em 0}.article-body .article-figure{margin:var(--sp-10) auto;max-width:540px;text-align:center}.article-body .article-figure img{width:100%;height:auto;border-radius:16px;margin:0;display:block;box-shadow:0 8px 24px -8px color-mix(in oklch,var(--c-ink) 18%,transparent)}.article-body .article-figure figcaption{font-family:"Instrument Serif",Georgia,serif;font-style:italic;font-size:1.02rem;color:var(--c-ink-soft);margin-top:var(--sp-3);line-height:1.5;padding:0 var(--sp-2);letter-spacing:.005em}@media (max-width:640px){.article-body .article-figure{margin:var(--sp-8) auto;max-width:100%}}.article-body>p:first-child:first-letter{font-family:"Instrument Serif",Georgia,serif;font-size:3.5em;font-weight:400;float:left;line-height:.9;margin:.08em .08em 0 0;color:var(--c-accent-deep)}.article-cta{margin:var(--sp-12) 0 var(--sp-10)}.article-cta-inner{background:linear-gradient(135deg,#fefaf5,#fef0dc);border:1.5px solid color-mix(in oklch,var(--c-accent) 30%,transparent);border-radius:20px;padding:var(--sp-10);text-align:center}.article-cta-inner h3{font-size:clamp(1.5rem,3vw,2rem);line-height:1.2;letter-spacing:-.015em;margin:var(--sp-3) 0 var(--sp-4);color:var(--c-ink)}.article-cta-inner h3 em{font-style:italic;font-family:"Instrument Serif",Georgia,serif;color:var(--c-accent-deep)}.article-cta-inner p{max-width:50ch;margin:0 auto var(--sp-5);font-size:1rem;line-height:1.55;color:var(--c-ink-soft)}.article-related{margin-top:var(--sp-12);padding-top:var(--sp-10);border-top:1px solid color-mix(in oklch,var(--c-ink) 10%,transparent)}.article-related h2{font-size:clamp(1.5rem,3vw,2rem);letter-spacing:-.015em;margin:0 0 var(--sp-6);text-align:center;color:var(--c-ink)}@media (max-width:640px){.article-page,.blog-page{padding-top:var(--sp-6);padding-bottom:var(--sp-10)}.blog-featured-link{padding:var(--sp-6)}.article-body{font-size:1rem}.article-body>p:first-child:first-letter{font-size:3em}}