:root{--palette-brand-400:#a896e6;--palette-brand-500:#8b7fd9;--palette-brand-600:#6f60cc;--palette-brand-700:#5e52b3;--palette-accent-magenta:#e879f9;--palette-accent-wash:#fef1f7;--palette-neutral-950:#0f0d14;--palette-neutral-900:#14121a;--palette-neutral-800:#212121;--palette-neutral-700:#3d3a45;--palette-neutral-600:#5f5c6b;--palette-neutral-500:#8e8a9a;--palette-neutral-400:#b4b0bd;--palette-neutral-300:#d4d1dc;--palette-neutral-200:#ebe8f0;--palette-neutral-100:#f5f3f9;--palette-neutral-50:#faf9fc;--palette-white:#fff;--palette-black:#111;--palette-alpha-border:#14121a14;--palette-alpha-border-brand:#6f60cc38;--palette-alpha-brand-soft:#6f60cc24;--palette-alpha-brand-muted:#6f60cc14;--palette-alpha-brand-glow:#6f60cc59;--color-text-primary:var(--palette-neutral-900);--color-text-secondary:var(--palette-neutral-600);--color-text-muted:var(--palette-neutral-500);--color-text-heading:var(--palette-neutral-800);--color-text-on-primary:var(--palette-white);--color-action-primary-default:var(--palette-brand-600);--color-action-primary-hover:var(--palette-brand-700);--color-surface-canvas:transparent;--color-surface-raised:var(--palette-white);--color-border-default:var(--palette-alpha-border);--color-border-brand:var(--palette-alpha-border-brand);--color-focus-ring:var(--color-action-primary-default);--font-family-sans:"Inter", system-ui, -apple-system, sans-serif;--font-size-65:.6875rem;--font-size-75:.75rem;--font-size-87:.875rem;--font-size-100:1rem;--font-size-112:1.125rem;--font-size-125:1.25rem;--font-size-150:1.5rem;--font-size-187:1.875rem;--font-size-225:2.25rem;--font-weight-regular:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--font-weight-extrabold:800;--line-height-tight:1.15;--line-height-snug:1.3;--line-height-normal:1.5;--line-height-relaxed:1.65;--letter-spacing-tight:-.04em;--letter-spacing-snug:-.025em;--letter-spacing-normal:0;--letter-spacing-wide:.04em;--type-kicker:var(--font-size-65);--type-caption:var(--font-size-75);--type-ui-sm:var(--font-size-87);--type-body:var(--font-size-100);--type-body-emphasis:var(--font-size-112);--type-deck:var(--font-size-125);--type-title-sm:var(--font-size-150);--type-title-md:var(--font-size-187);--type-title-lg:var(--font-size-225);--space-0:0;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--space-16:4rem;--space-20:5rem;--space-24:6rem;--space-gap-xs:var(--space-2);--space-gap-sm:var(--space-4);--space-gap-md:var(--space-6);--space-gap-lg:var(--space-8);--space-gap-xl:var(--space-12);--space-section-y:clamp(var(--space-12), 8vw, var(--space-24));--space-container-x:clamp(var(--space-4), 4vw, var(--space-12));--radius-xs:4px;--radius-sm:8px;--radius-md:16px;--radius-lg:22px;--shadow-card:0 4px 24px #0f172a0f;--shadow-float:0 32px 96px -20px #0f172a24, 0 12px 40px -24px #6f60cc1f;--motion-duration-xs:.2s;--motion-duration-sm:.25s;--motion-ease-standard:cubic-bezier(.22, 1, .36, 1);--z-base:0;--z-sticky-nav:50;--z-skip-link:100;--layout-max-width:1440px;--layout-nav-height:4.75rem;--brand:var(--color-action-primary-default);--brand-hover:var(--color-action-primary-hover);--brand-soft:var(--palette-alpha-brand-soft);--brand-muted:var(--palette-alpha-brand-muted);--text:var(--color-text-primary);--heading:var(--color-text-heading);--text-secondary:var(--color-text-secondary);--text-muted:var(--color-text-muted);--border:var(--color-border-default);--focus-ring:2px solid var(--color-focus-ring);--font-body:var(--font-family-sans);--font-display:var(--font-family-sans);--sub-paragraph-size:18px;--h2-size:var(--type-title-md);--nav-h:var(--layout-nav-height);--max:var(--layout-max-width);--section-max:var(--layout-max-width);--ease:var(--motion-ease-standard)}*,:before,:after{box-sizing:border-box;margin:0;padding:0}.skip-link{z-index:var(--z-skip-link);color:#fff;background:var(--brand);transition:top .2s var(--ease);border-radius:8px;padding:.65rem 1rem;font-size:.875rem;font-weight:600;text-decoration:none;position:absolute;top:-100px;left:1rem}.skip-link:focus{outline:none;top:1rem}.skip-link:focus-visible{box-shadow:0 0 0 3px #fffffff2, 0 0 0 5px var(--brand);top:1rem}html{scroll-behavior:smooth;scroll-padding-top:calc(var(--nav-h) + .75rem);background:#fff}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}body{font-family:var(--font-body);color:var(--text-secondary);-webkit-font-smoothing:antialiased;background:#fff;min-height:100vh;line-height:1.6;overflow-x:hidden}img,svg,video,iframe{max-width:100%;height:auto}img[width][height]{height:auto}.fs-page{background:#fff;min-height:100vh;position:relative}.fs-master{z-index:2;background:#fff;width:100%;max-width:none;margin:0 auto;position:relative}.container{width:100%;max-width:none;margin:0 auto;padding:0 clamp(1.25rem,4vw,3rem)}.fs-section .container,.fs-nav .container,.fs-footer .container{max-width:var(--section-max)}.fs-nav .container,.fs-section>.container,.fs-footer>.container{border-left:0;border-right:0}.mono{font-family:var(--font-body);text-transform:uppercase;letter-spacing:.12em;font-size:.6875rem;font-weight:500}.fs-logo:focus-visible,.fs-nav-links a:focus-visible,.fs-nav-signin:focus-visible,.fs-nav-cta:focus-visible,.blog-card:focus-visible,.fs-footer-col-list a:focus-visible,.blog-pagination a:focus-visible{outline:var(--focus-ring);outline-offset:3px}.fs-section{--fs-rail-pad-top:clamp(3.5rem, 9vw, 5.5rem);--fs-rail-pad-bottom:clamp(3.5rem, 9vw, 5.5rem);padding:var(--fs-rail-pad-top) 0 var(--fs-rail-pad-bottom);scroll-margin-top:calc(var(--nav-h) + .75rem);position:relative}.fs-section+.fs-section{border-top:1px solid #6f60cc1a}.blog-hero{text-align:center;background:#fff;padding:clamp(4rem,10vw,6rem) 0 clamp(3.5rem,8vw,5rem)}.blog-hero .mono{color:var(--brand);margin-bottom:1rem;display:block}.blog-hero h1{font-family:var(--font-display);letter-spacing:-.042em;color:var(--heading);margin-bottom:1rem;font-size:clamp(2rem,4.2vw + .35rem,3.35rem);font-weight:800;line-height:1.14}.blog-hero p{color:var(--text-secondary);max-width:36rem;font-size:var(--sub-paragraph-size);margin:0 auto;line-height:1.6}.blog-main{padding:0 0 clamp(3.5rem,9vw,5.5rem)}.blog-main h2{font-family:var(--font-display);font-size:var(--h2-size);letter-spacing:-.035em;color:var(--heading);margin-bottom:clamp(1.75rem,4vw,2.5rem);font-weight:800;line-height:1.12}.blog-grid{grid-template-columns:repeat(3,1fr);gap:clamp(1.25rem,3vw,1.75rem);display:grid}@media (max-width:900px){.blog-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:600px){.blog-grid{grid-template-columns:1fr}}.blog-card{min-height:100%;color:inherit;border-radius:var(--radius-md);transition:border-color var(--motion-duration-xs) var(--ease), box-shadow var(--motion-duration-xs) var(--ease);background:#fff;border:1px solid #6f60cc24;flex-direction:column;text-decoration:none;display:flex;overflow:hidden}a.blog-card:hover{box-shadow:var(--shadow-card);border-color:#6f60cc61}.blog-card-media{aspect-ratio:16/10;background:var(--palette-neutral-100);position:relative;overflow:hidden}.blog-card-media img{object-fit:cover;width:100%;height:100%;transition:transform var(--motion-duration-sm) var(--ease);display:block}a.blog-card:hover .blog-card-media img{transform:scale(1.03)}.blog-card-cat{font-family:var(--font-jetbrains-mono), "JetBrains Mono", monospace;letter-spacing:.1em;text-transform:uppercase;color:#fff;white-space:nowrap;text-overflow:ellipsis;-webkit-backdrop-filter:blur(4px);background:#0f172ad9;max-width:calc(100% - 1.5rem);padding:.35rem .6rem;font-size:.5625rem;position:absolute;top:.75rem;right:.75rem;overflow:hidden}.blog-card-body{flex-direction:column;flex:1;padding:clamp(1.25rem,2.5vw,1.5rem);display:flex}.blog-card-author{z-index:1;align-items:center;gap:.65rem;margin-top:-2rem;margin-bottom:.75rem;display:flex;position:relative}.blog-card-author img{object-fit:cover;background:#fff;border:3px solid #fff;border-radius:50%;width:44px;height:44px}.blog-card-title{font-family:var(--font-display);letter-spacing:-.02em;color:var(--heading);margin-bottom:.75rem;font-size:clamp(1.0625rem,1.8vw,1.1875rem);font-weight:700;line-height:1.35}.blog-card-more{font-family:var(--font-jetbrains-mono), "JetBrains Mono", monospace;letter-spacing:.14em;text-transform:uppercase;color:var(--brand);margin-top:auto;margin-bottom:1rem;font-size:.625rem;font-weight:600}a.blog-card:hover .blog-card-more{text-decoration:underline}.blog-card-meta{color:var(--text-muted);border-top:1px solid var(--border);padding-top:1rem;font-size:.75rem;line-height:1.5}.blog-empty{text-align:center;color:var(--text-secondary);background:var(--palette-neutral-50);border-radius:var(--radius-md);border:1px solid var(--border);grid-column:1/-1;padding:4rem 2rem}.blog-pagination{justify-content:center;margin-top:clamp(2.5rem,5vw,3.5rem);display:flex}.blog-pagination ul{flex-wrap:wrap;align-items:center;gap:.5rem;list-style:none;display:flex}.blog-pagination a,.blog-pagination span{border-radius:var(--radius-sm);min-width:2.5rem;height:2.5rem;color:var(--text-secondary);transition:background var(--motion-duration-xs) var(--ease), border-color var(--motion-duration-xs) var(--ease), color var(--motion-duration-xs) var(--ease);background:#fff;border:1px solid #6f60cc2e;justify-content:center;align-items:center;padding:0 .65rem;font-size:.875rem;font-weight:500;text-decoration:none;display:inline-flex}.blog-pagination a:hover{border-color:var(--brand);color:var(--brand);background:#6f60cc0a}.blog-pagination span.current{background:var(--brand);color:#fff;border-color:var(--brand)}@media (max-width:600px){.blog-hero h1{white-space:normal}}@media (max-width:480px){.blog-pagination a,.blog-pagination span{min-width:2.25rem;height:2.25rem;font-size:.8125rem}}@media (prefers-reduced-motion:reduce){.blog-card:hover{box-shadow:none}a.blog-card:hover .blog-card-media img{transform:none}.blog-pagination a{transition:none}}
