:root{--palette-white: #ffffff;--palette-black: #000000;--palette-ink: #1C1D24;--palette-night: #131313;--palette-cream: #FFF6E7;--palette-navy: #1E223B;--palette-charcoal: #424242;--palette-sand-50: #FFFAF3;--palette-sand-75: #FFFAF0;--palette-sand-100: #FFF9EF;--palette-sand-200: #FFF1D7;--palette-sand-300: #FEECCD;--palette-warm-gray-300: #C3AEA7;--palette-warm-gray-400: #A28C85;--palette-warm-gray-500: #927B74;--palette-warm-gray-600: #716A67;--palette-gray-caption: #6C6C6C;--palette-gray-soft: #ADADAD;--palette-taupe: #C1B9B1;--palette-sand-tan: #F4E6D3;--palette-sand-ivory: #FFFBF6;--palette-sand-line: #F3E9DC;--palette-sand-shell: #F3EADC;--palette-semi-white-3: rgba(255, 255, 255, .03);--palette-semi-white-5: rgba(255, 255, 255, .05);--palette-semi-white-10: rgba(255, 255, 255, .1);--palette-semi-white-15: rgba(255, 255, 255, .15);--palette-semi-white-20: rgba(255, 255, 255, .2);--palette-semi-white-30: rgba(255, 255, 255, .3);--palette-semi-white-40: rgba(255, 255, 255, .4);--palette-semi-white-50: rgba(255, 255, 255, .5);--palette-semi-white-70: rgba(255, 255, 255, .7);--palette-semi-white-80: rgba(255, 255, 255, .8);--palette-peach-glow: #FFDCCD;--palette-peach-glow-soft: #FFE5D9;--palette-peach-100: #FFEFE9;--palette-peach-200: #FFD2C0;--palette-sand-shadow: #F2E5D3;--palette-rose-border: #F5E9E5;--palette-rose-border-light: #F9ECE8;--palette-orange-hover: #ED5D09;--palette-orange-outline: #FF985B;--palette-orange-glow-start: #FF7320;--palette-orange-glow-end: #FFA26A;--palette-chip-dark: #2E2E2E;--palette-chip-dark-border: #1D1D1D;--neutral-bg: #1C1D24;--neutral-surface: #171717;--neutral-elevated: #262626;--neutral-border: #404040;--neutral-muted: #a3a3a3;--neutral-subtle: #d4d4d4;--neutral-text: #e5e5e5;--neutral-emphasis: #fafafa;--palette-orange-400: #fb923c;--palette-orange-500: #f97316;--palette-orange-600: #F96209;--palette-mint: #34E1BE;--palette-green-50: #F0F9EF;--palette-green-500: #10b981;--palette-green-600: #29A316;--palette-yellow-500: #eab308;--palette-red-500: #ef4444;--palette-red-600: #F90971;--palette-red-rose: #EE5560;--palette-red-rose-soft: #FDEEEF;--palette-blue-500: #3b82f6;--palette-blue-600: #3992DF;--palette-teal-500: #14b8a6;--palette-teal-400: #75B7C8;--palette-teal-300: #86BAC7;--palette-teal-200: #63AABD;--palette-salmon: #e8956a;--palette-brown-warm: #AA5332;--palette-brown-brand: #9E401D;--palette-token-eth: #627EEA;--palette-token-usdc: #2775CA;--palette-token-usdt: #50AF95;--palette-token-pathusd: #22C55E;--palette-ui-gray-light: #F2F3F6;--palette-ui-gray-muted: #9D9FAB;--palette-ui-gray-mid: #787A89;--palette-ui-gray-placeholder: #CBCCD5;--palette-ui-gray-dark: #3A3E5A;--palette-ui-gray-darker: #28292F;--palette-ui-gray-popover: #45454A}:root{--page-bg: var(--palette-night);--text-primary: var(--neutral-emphasis);--text-secondary: var(--neutral-text);--brand-primary: var(--palette-orange-500);--brand-secondary: var(--palette-orange-600);--interactive-hover: rgba(255, 255, 255, .1);--shadow-brand: rgba(249, 115, 22, .2);--mobile-menu-link: var(--palette-white);--mobile-menu-social: var(--palette-ui-gray-mid);--landing-heading: var(--palette-white);--landing-subtitle: var(--palette-semi-white-40);--landing-nav-bg: var(--palette-semi-white-5);--landing-nav-border: var(--palette-semi-white-10);--landing-theme-toggle-bg: var(--palette-semi-white-10);--landing-nav-divider: var(--palette-semi-white-20);--landing-announce-bg: var(--palette-semi-white-3);--landing-announce-border: var(--palette-semi-white-10);--landing-announce-text: var(--palette-white);--landing-announce-close-bg: var(--palette-semi-white-15);--dropdown-menu-bg: #222121;--dropdown-menu-border: var(--palette-semi-white-10);--dropdown-item-hover: var(--palette-semi-white-10);--dropdown-item-text: var(--palette-white);--footer-link: var(--palette-semi-white-40);--footer-title: var(--palette-white);--footer-social: var(--palette-semi-white-70);--footer-social-hover-bg: var(--palette-semi-white-10);--shadow-brand-sm: 0 2px 8px var(--shadow-brand);--radius-sm: 6px;--radius-full: 9999px;--transition-fast: .15s ease;--transition-normal: .2s ease;--transition-soft: .25s ease-in-out}:root[data-theme=light]{--neutral-emphasis: #0d0c0a;--neutral-text: #2a2622;--page-bg: var(--palette-cream);--landing-heading: var(--palette-ink);--landing-subtitle: var(--palette-warm-gray-400);--landing-nav-bg: var(--palette-white);--landing-nav-border: var(--palette-ui-gray-light);--landing-theme-toggle-bg: var(--palette-white);--landing-nav-divider: var(--palette-ui-gray-placeholder);--landing-announce-bg: var(--palette-sand-200);--landing-announce-border: var(--palette-sand-300);--landing-announce-text: var(--palette-navy);--landing-announce-close-bg: var(--palette-cream);--dropdown-menu-bg: var(--palette-white);--dropdown-menu-border: var(--palette-ui-gray-light);--dropdown-item-hover: var(--palette-ui-gray-light);--dropdown-item-text: var(--palette-navy);--footer-link: var(--palette-navy);--footer-title: var(--palette-warm-gray-400);--footer-social: var(--palette-ink);--footer-social-hover-bg: rgba(30, 34, 59, .06);--text-primary: var(--palette-navy);--text-secondary: var(--neutral-text);--interactive-hover: rgba(0, 0, 0, .05);--mobile-menu-link: var(--palette-navy);--shadow-brand-sm: 0 2px 8px rgba(249, 115, 22, .15)}.theme-instant *:not(.theme-icon),.theme-instant *:not(.theme-icon):before,.theme-instant *:not(.theme-icon):after{transition:none!important}@font-face{font-family:roc-grotesk;src:url(https://use.typekit.net/af/978839/00000000000000007735b7d4/31/l?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n4&v=3) format("woff2");font-style:normal;font-weight:400;font-display:optional}:root:where([data-section=blog]){color-scheme:light;background:var(--blog-bg);--blog-bg: var(--palette-sand-50);--blog-text: var(--palette-navy);--blog-muted: var(--palette-warm-gray-600);--blog-line: var(--palette-sand-shadow);--blog-surface: var(--palette-cream);--blog-accent: var(--palette-orange-600);--blog-link: var(--palette-brown-warm);--blog-selected: var(--palette-navy);--blog-selected-text: var(--palette-cream);--site-header-height: 132px;--art-sand: var(--palette-orange-600);--art-shadow: var(--palette-brown-warm);--art-light: var(--palette-cream);--font-body: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-accent: "roc-grotesk", "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--syntax-keyword: var(--palette-brown-warm);--syntax-string: color-mix(in srgb, var(--palette-teal-400) 45%, var(--palette-navy));--syntax-number: var(--palette-brown-warm);--syntax-title: var(--palette-navy);--diagram-border: color-mix(in srgb, var(--blog-text) 24%, var(--blog-bg));scroll-behavior:smooth;scroll-padding-top:calc(var(--site-header-height) + 16px)}:root:where([data-section=blog])[data-theme=dark]{color-scheme:dark;--blog-bg: var(--page-bg);--blog-text: var(--palette-cream);--blog-muted: var(--palette-taupe);--blog-line: var(--palette-semi-white-15);--blog-surface: var(--palette-ui-gray-darker);--blog-link: var(--palette-orange-outline);--blog-selected: var(--palette-cream);--blog-selected-text: var(--palette-navy);--art-sand: var(--palette-orange-600);--art-shadow: var(--palette-navy);--art-light: var(--palette-salmon);--syntax-keyword: var(--palette-orange-outline);--syntax-string: var(--palette-teal-400);--syntax-number: var(--palette-salmon);--syntax-title: var(--palette-cream)}:where(:root[data-section=blog]) *{box-sizing:border-box}:where(:root[data-section=blog]) body{margin:0;background:var(--blog-bg);color:var(--blog-text);font:15px/1.6 var(--font-body);-webkit-font-smoothing:antialiased}:where(:root[data-section=blog]) [hidden]{display:none!important}:where(:root[data-section=blog]) button,:where(:root[data-section=blog]) input{font:inherit;color:inherit}:where(:root[data-section=blog]) button,:where(:root[data-section=blog]) a,:where(:root[data-section=blog]) input{-webkit-tap-highlight-color:transparent}:where(:root[data-section=blog]) button,:where(:root[data-section=blog]) a{touch-action:manipulation}:where(:root[data-section=blog]) a{color:inherit;text-decoration:none}:where(:root[data-section=blog]) button{cursor:pointer}:where(:root[data-section=blog]) button:focus-visible,:where(:root[data-section=blog]) a:focus-visible,:where(:root[data-section=blog]) input:focus-visible,:where(:root[data-section=blog]) summary:focus-visible{outline:2px solid var(--blog-accent);outline-offset:5px}:where(:root[data-section=blog]) .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}:where(:root[data-section=blog]) button{border:0;background:none}:where(:root[data-section=blog]) ::selection{background:var(--palette-peach-200);color:var(--palette-navy)}:where(:root[data-section=blog]) h1,:where(:root[data-section=blog]) h2,:where(:root[data-section=blog]) h3,:where(:root[data-section=blog]) p{margin:0}:where(:root[data-section=blog]) h1,:where(:root[data-section=blog]) h2,:where(:root[data-section=blog]) h3{font-family:var(--font-accent);font-weight:400;line-height:1.1;letter-spacing:-.035em;text-wrap:balance}:where(:root[data-section=blog]) img{display:block;max-width:100%}:where(:root[data-section=blog]) svg{flex-shrink:0}:where(:root[data-section=blog]) .skip-link{position:fixed;left:24px;top:-100px;z-index:1002;background:var(--blog-bg);padding:12px 20px}:where(:root[data-section=blog]) .skip-link:focus{top:12px}:where(:root[data-section=blog]) .header-search{display:flex;align-items:center;width:196px;height:40px;padding:0 8px 0 4px;border:1px solid var(--landing-nav-border);border-radius:24px;background:var(--landing-nav-bg);color:var(--blog-muted);transition:border-color .2s,background .2s,box-shadow .2s}:where(:root[data-section=blog]) .header-search:hover{border-color:color-mix(in srgb,var(--blog-muted) 35%,var(--blog-line))}:where(:root[data-section=blog]) .header-search:focus-within{background:var(--blog-bg);border-color:var(--blog-link);box-shadow:0 0 0 3px color-mix(in srgb,var(--blog-link) 10%,transparent)}:where(:root[data-section=blog]) .header-search button{display:grid;place-items:center;padding:0;width:32px;height:30px;border-radius:50%;flex-shrink:0}:where(:root[data-section=blog]) .header-search button:hover{color:var(--blog-text)}:where(:root[data-section=blog]) .header-search .search-clear{width:26px;height:26px}:where(:root[data-section=blog]) .header-search .search-clear:hover{background:var(--blog-surface)}:where(:root[data-section=blog]) .header-search input{width:100%;min-width:0;padding:7px 0;background:none;border:0;border-radius:0;font-size:13px;color:var(--blog-text)}:where(:root[data-section=blog]) .header-search input:focus-visible{outline:none}:where(:root[data-section=blog]) .header-search input::-webkit-search-cancel-button{-webkit-appearance:none}:where(:root[data-section=blog]) .header-search input::placeholder{color:var(--blog-muted);opacity:1}:where(:root[data-section=blog]) .blog-hero{height:690px;position:relative;isolation:isolate}:where(:root[data-section=blog]) .dune-scene{position:absolute;top:155px;right:0;bottom:-10px;left:0;z-index:-1;pointer-events:none}:where(:root[data-section=blog]) .dune-scene canvas,:where(:root[data-section=blog]) .dune-poster{display:block;position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%}:where(:root[data-section=blog]) .dune-scene canvas{opacity:0;transition:opacity .7s cubic-bezier(.16,1,.3,1)}:where(:root[data-section=blog]) .dune-poster{object-fit:fill}:where(:root[data-section=blog])[data-theme=dark] .dune-poster{filter:brightness(.65) saturate(.85)}:where(:root[data-section=blog]) .dune-scene.ready canvas{opacity:1}:where(:root[data-section=blog]) .hero-copy{padding:68px 24px 0;text-align:center}:where(:root[data-section=blog]) .hero-copy h1{font-size:clamp(42px,5.3vw,76px)}:where(:root[data-section=blog]) .hero-copy p{margin-top:24px;color:var(--blog-muted);font-size:18px;line-height:1.6;letter-spacing:-.025em}:where(:root[data-section=blog]) .explore-link{display:inline-flex;gap:10px;align-items:center;margin-top:30px;font-size:13px}:where(:root[data-section=blog]) .explore-link svg{transition:transform .2s}:where(:root[data-section=blog]) .explore-link:hover svg{transform:translateY(3px)}:where(:root[data-section=blog]) .art{position:relative;width:100%;overflow:hidden;border-radius:10px;background:var(--blog-surface);aspect-ratio:2 / 1}:where(:root[data-section=blog]) .art img{width:100%;height:100%;object-fit:cover}:where(:root[data-section=blog])[data-theme=dark] .art:not(.custom-art) img{filter:brightness(.65) saturate(.8)}:where(:root[data-section=blog]) .stories{max-width:1120px;padding:80px 32px 0;margin:auto}:where(:root[data-section=blog]) .stories-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:34px}:where(:root[data-section=blog]) .stories h2{font-size:34px}:where(:root[data-section=blog]) .story-tools{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-bottom:30px}:where(:root[data-section=blog]) .categories{display:flex;flex-wrap:wrap;gap:6px;position:relative;isolation:isolate}:where(:root[data-section=blog]) .category-marker{position:absolute;top:0;left:0;border-radius:30px;background:var(--blog-selected);pointer-events:none;z-index:-1}:where(:root[data-section=blog]) .categories button{padding:8px 16px;border-radius:30px;font-size:13px;color:var(--blog-muted);transition:background .15s}:where(:root[data-section=blog]) .categories button:hover{background:var(--blog-surface)}:where(:root[data-section=blog]) .categories button.selected{background:var(--blog-selected);color:var(--blog-selected-text)}:where(:root[data-section=blog]) .categories.has-marker button.selected{background:transparent}:where(:root[data-section=blog]) .post-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:58px 32px}:where(:root[data-section=blog]) .post-card.featured{grid-column:1 / -1}:where(:root[data-section=blog]) .post-card.featured .art{aspect-ratio:2.6 / 1}:where(:root[data-section=blog]) .card-copy{text-align:center;padding:24px 8px 0}:where(:root[data-section=blog]) .post-meta{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:6px 18px;color:var(--blog-muted);font-size:11px}:where(:root[data-section=blog]) .post-meta>*{white-space:nowrap}:where(:root[data-section=blog]) .post-meta .post-category{color:var(--blog-link)}:where(:root[data-section=blog]) .meta-author{display:inline-flex;align-items:center;gap:8px;color:var(--blog-text);border-radius:20px}:where(:root[data-section=blog]) .meta-author strong{font-weight:500}:where(:root[data-section=blog]) .meta-author:hover{color:var(--blog-link)}:where(:root[data-section=blog]) .card-copy h3{font-size:30px;margin:0 auto 12px;max-width:650px}:where(:root[data-section=blog]) .card-copy .post-meta{margin-top:18px}:where(:root[data-section=blog]) .featured .card-copy h3{font-size:42px}:where(:root[data-section=blog]) .card-copy p{color:var(--blog-muted);max-width:560px;margin:auto;font-size:14px;line-height:1.7}:where(:root[data-section=blog]) .post-link:hover{color:var(--blog-link)}:where(:root[data-section=blog]) .empty-results{padding:70px 20px;text-align:center}:where(:root[data-section=blog]) .empty-results h3{font-size:28px;margin-bottom:12px}:where(:root[data-section=blog]) .empty-results p{color:var(--blog-muted)}:where(:root[data-section=blog]) .empty-results button{margin:18px auto 0;display:flex;align-items:center;gap:8px;color:var(--blog-link)}:where(:root[data-section=blog]) .blog-footer{width:calc(100% - 64px);max-width:900px;margin:130px auto 0;padding-bottom:32px}:where(:root[data-section=blog]) .article-page{--article-content-width: 660px;max-width:1120px;padding:28px 32px 0;margin:auto}:where(:root[data-section=blog]) .back-nav{margin-bottom:25px;font-size:13px;color:var(--blog-muted)}:where(:root[data-section=blog]) .back-nav a{display:inline-flex;align-items:center;gap:9px}:where(:root[data-section=blog]) .arrow-back{transform:rotate(180deg)}:where(:root[data-section=blog]) .article-art .art{aspect-ratio:2.65 / 1}:where(:root[data-section=blog]) .article-header{max-width:760px;text-align:center;margin:50px auto 44px}:where(:root[data-section=blog]) .article-header h1{font-size:clamp(38px,5vw,60px)}:where(:root[data-section=blog]) .article-description{max-width:630px;margin:24px auto;font-size:18px;line-height:1.65;color:var(--blog-muted)}:where(:root[data-section=blog]) .article-header .post-meta{margin-top:28px;font-size:12px}:where(:root[data-section=blog]) .author-avatar{flex-shrink:0;object-fit:cover;border-radius:50%;background:var(--blog-surface)}:where(:root[data-section=blog]) .updated-date{margin-top:12px;font-size:12px;color:var(--blog-muted)}:where(:root[data-section=blog]) .author-page{max-width:1120px;padding:28px 32px 0;margin:auto}:where(:root[data-section=blog]) .author-profile{max-width:660px;margin:44px auto 0;text-align:center}:where(:root[data-section=blog]) .profile-avatar{margin:auto auto 26px;width:104px;height:104px}:where(:root[data-section=blog]) .author-profile h1{font-size:clamp(42px,5vw,60px)}:where(:root[data-section=blog]) .author-bio{margin:24px auto 0;max-width:540px;font-size:17px;line-height:1.8;color:var(--blog-muted)}:where(:root[data-section=blog]) .author-bio p+p{margin-top:16px}:where(:root[data-section=blog]) .author-links{display:flex;justify-content:center;flex-wrap:wrap;gap:12px 28px;margin-top:26px;font-size:13px}:where(:root[data-section=blog]) .author-links a{display:inline-flex;align-items:center;gap:5px;color:var(--blog-link)}:where(:root[data-section=blog]) .author-links a:hover{text-decoration:underline;text-underline-offset:4px}:where(:root[data-section=blog]) .author-links svg{width:14px;transform:rotate(-40deg)}:where(:root[data-section=blog]) .author-stories{padding-top:72px}:where(:root[data-section=blog]) .story-count{flex-shrink:0;font-size:12px;color:var(--blog-muted)}:where(:root[data-section=blog]) .author-empty{color:var(--blog-muted)}:where(:root[data-section=blog]) .contents{max-width:var(--article-content-width);margin:0 auto 40px;padding:16px 20px;border:1px solid var(--blog-line);border-radius:8px;font-size:13px}:where(:root[data-section=blog]) .contents summary{cursor:pointer}:where(:root[data-section=blog]) .contents nav{display:flex;flex-direction:column;gap:10px;padding-top:16px}:where(:root[data-section=blog]) .contents a{color:var(--blog-muted)}:where(:root[data-section=blog]) .contents .subheading{padding-left:16px}:where(:root[data-section=blog]) .contents .deep-heading{padding-left:32px}:where(:root[data-section=blog]) .contents a:hover,:where(:root[data-section=blog]) .contents a.active{color:var(--blog-link)}:where(:root[data-section=blog]) .contents-rail{display:none}@media(min-width:1180px){:where(:root[data-section=blog]) .article-page.enhanced .contents-inline{display:none}:where(:root[data-section=blog]) .contents-rail{display:block;position:fixed;z-index:1;top:var(--contents-center, 50%);transform:translateY(-50%);left:max(24px,calc((100vw - 1320px)/2));width:min(232px,calc((100vw - var(--article-content-width)) / 2 - 64px));max-height:var(--contents-height, calc(100dvh - 48px) );overflow-y:auto;overscroll-behavior-y:contain;scrollbar-width:thin;scrollbar-color:var(--blog-line) transparent;padding:4px 12px 4px 4px}:where(:root[data-section=blog]) .contents-rail nav{display:flex;flex-direction:column;border-left:1px solid var(--blog-line)}:where(:root[data-section=blog]) .contents-rail a{display:block;padding:7px 0 7px 15px;margin-left:-1px;border-left:2px solid transparent;color:var(--blog-muted);font-size:12px;line-height:1.5;transition:color .15s,border-color .15s}:where(:root[data-section=blog]) .contents-rail a:hover{color:var(--blog-text)}:where(:root[data-section=blog]) .contents-rail a.active{color:var(--blog-link);border-left-color:var(--blog-accent)}:where(:root[data-section=blog]) .contents-rail .subheading{padding-left:27px;font-size:11px}:where(:root[data-section=blog]) .contents-rail .deep-heading{padding-left:39px}}@media(min-width:1440px){:where(:root[data-section=blog]) .article-page{--article-content-width: 891px}:where(:root[data-section=blog]) .contents-rail{left:max(24px,calc((100vw - var(--article-content-width)) / 2 - 272px))}}:where(:root[data-section=blog]) .prose{max-width:var(--article-content-width);margin:auto;font-size:17px;line-height:1.9;overflow-wrap:anywhere}:where(:root[data-section=blog]) .prose>*+*{margin-top:24px}:where(:root[data-section=blog]) .prose h2,:where(:root[data-section=blog]) .prose h3,:where(:root[data-section=blog]) .prose h4{margin-top:46px;line-height:1.25;scroll-margin-top:28px}:where(:root[data-section=blog]) .prose h2{font-size:32px}:where(:root[data-section=blog]) .prose h3{font-size:25px}:where(:root[data-section=blog]) .prose ul,:where(:root[data-section=blog]) .prose ol{padding-left:25px}:where(:root[data-section=blog]) .prose li+li{margin-top:10px}:where(:root[data-section=blog]) .prose a{color:var(--blog-link);text-decoration:underline;text-underline-offset:4px}:where(:root[data-section=blog]) .prose blockquote{margin-left:0;margin-right:0;border-left:2px solid var(--blog-accent);padding:10px 0 10px 24px;font-size:23px;font-family:var(--font-accent);line-height:1.5}:where(:root[data-section=blog]) .prose blockquote p{margin:0}:where(:root[data-section=blog]) .prose pre{padding:20px;background:var(--blog-surface);border:1px solid var(--blog-line);border-radius:8px;overflow-x:auto;line-height:1.65}:where(:root[data-section=blog]) .prose code{font-family:ui-monospace,SFMono-Regular,monospace;font-size:.82em}:where(:root[data-section=blog]) .prose :not(pre)>code{background:var(--blog-surface);padding:3px 5px;border-radius:3px}:where(:root[data-section=blog]) .prose .code-block,:where(:root[data-section=blog]) .prose .diagram-block{margin:30px 0;overflow:hidden;border:1px solid var(--blog-line);border-radius:12px;background:color-mix(in srgb,var(--blog-surface) 60%,var(--blog-bg))}:where(:root[data-section=blog]) .code-toolbar,:where(:root[data-section=blog]) .diagram-toolbar{display:flex;align-items:center;gap:12px;min-height:46px;padding:8px 18px;border-bottom:1px solid var(--blog-line);font:12px/1.5 var(--font-body)}:where(:root[data-section=blog]) .code-title{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}:where(:root[data-section=blog]) .code-language{color:var(--blog-muted)}:where(:root[data-section=blog]) .code-copy,:where(:root[data-section=blog]) .diagram-toolbar button{display:inline-flex;flex-shrink:0;align-items:center;justify-content:center;gap:6px;margin-left:auto;min-height:30px;padding:4px 8px;border-radius:6px;color:var(--blog-muted);font-size:12px}:where(:root[data-section=blog]) .code-copy:hover,:where(:root[data-section=blog]) .diagram-toolbar button:hover{background:var(--blog-line);color:var(--blog-text)}:where(:root[data-section=blog]) .code-copy:disabled{cursor:default;color:var(--blog-link)}:where(:root[data-section=blog]) .prose .code-block pre{margin:0;padding:0;border:0;border-radius:0;background:transparent}:where(:root[data-section=blog]) .code-block pre:focus-visible,:where(:root[data-section=blog]) .diagram-canvas:focus-visible{outline:2px solid var(--blog-link);outline-offset:-3px}:where(:root[data-section=blog]) .code-block pre code{display:block;width:max-content;min-width:100%;padding:18px 0;font-size:13px;line-height:1.85;-moz-tab-size:2;tab-size:2}:where(:root[data-section=blog]) .code-line{display:inline-block;width:100%;padding:0 22px}:where(:root[data-section=blog]) .code-line.highlighted{background:color-mix(in srgb,var(--blog-accent) 9%,transparent);box-shadow:inset 2px 0 var(--blog-accent)}:where(:root[data-section=blog]) .numbered .code-line:before{content:attr(data-line);display:inline-block;width:2ch;margin-right:22px;color:var(--blog-muted);text-align:right;-webkit-user-select:none;user-select:none;font-variant-numeric:tabular-nums}:where(:root[data-section=blog]) .hljs-comment,:where(:root[data-section=blog]) .hljs-quote{color:var(--blog-muted);font-style:italic}:where(:root[data-section=blog]) .hljs-keyword,:where(:root[data-section=blog]) .hljs-selector-tag,:where(:root[data-section=blog]) .hljs-meta,:where(:root[data-section=blog]) .hljs-built_in{color:var(--syntax-keyword)}:where(:root[data-section=blog]) .hljs-string,:where(:root[data-section=blog]) .hljs-regexp,:where(:root[data-section=blog]) .hljs-addition,:where(:root[data-section=blog]) .hljs-attribute{color:var(--syntax-string)}:where(:root[data-section=blog]) .hljs-number,:where(:root[data-section=blog]) .hljs-literal,:where(:root[data-section=blog]) .hljs-variable,:where(:root[data-section=blog]) .hljs-symbol,:where(:root[data-section=blog]) .hljs-bullet{color:var(--syntax-number)}:where(:root[data-section=blog]) .hljs-title,:where(:root[data-section=blog]) .hljs-type,:where(:root[data-section=blog]) .hljs-section,:where(:root[data-section=blog]) .hljs-attr{color:var(--syntax-title);font-weight:600}:where(:root[data-section=blog]) .hljs-deletion{color:var(--syntax-keyword);background:color-mix(in srgb,var(--blog-accent) 8%,transparent)}:where(:root[data-section=blog]) .hljs-emphasis{font-style:italic}:where(:root[data-section=blog]) .hljs-strong{font-weight:600}:where(:root[data-section=blog]) .prose .diagram-block{background:var(--blog-bg)}:where(:root[data-section=blog]) .diagram-toolbar{color:var(--blog-muted)}:where(:root[data-section=blog]) .diagram-toolbar>span{color:var(--blog-text)}:where(:root[data-section=blog]) .diagram-canvas{overflow:auto;padding:12px;overscroll-behavior-x:contain}:where(:root[data-section=blog]) .diagram-canvas svg{display:block;max-width:100%;min-width:var(--diagram-min-width);height:auto;margin:auto;--_text: var(--fg);--_text-sec: var(--muted);--_text-muted: var(--muted);--_text-faint: color-mix(in srgb, var(--fg) 45%, var(--bg));--_line: var(--line);--_arrow: var(--accent);--_node-fill: var(--surface);--_node-stroke: var(--border);--_group-fill: var(--bg);--_group-hdr: var(--surface);--_inner-stroke: var(--border);--_key-badge: color-mix(in srgb, var(--fg) 10%, var(--bg))}:where(:root[data-section=blog]) .diagram-canvas text{font-family:var(--font-body)}:where(:root[data-section=blog]) .diagram-canvas .mono{font-family:ui-monospace,SFMono-Regular,monospace}:where(:root[data-section=blog]) .diagram-source{border-top:1px solid var(--blog-line)}:where(:root[data-section=blog]) .diagram-source summary{padding:12px 18px;cursor:pointer;color:var(--blog-muted);font-size:12px}:where(:root[data-section=blog]) .diagram-source summary:hover{color:var(--blog-link)}:where(:root[data-section=blog]) .prose .diagram-source .code-block{margin:0;border:0;border-top:1px solid var(--blog-line);border-radius:0}:where(:root[data-section=blog]) .diagram-dialog{width:min(1200px,calc(100vw - 40px));max-width:none;max-height:calc(100dvh - 40px);padding:0;border:1px solid var(--blog-line);border-radius:16px;background:var(--blog-bg);color:var(--blog-text);box-shadow:0 24px 90px #0003}:where(:root[data-section=blog]) .diagram-dialog::backdrop{background:#0007;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}:where(:root[data-section=blog]) .diagram-dialog-header{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:16px 22px;border-bottom:1px solid var(--blog-line)}:where(:root[data-section=blog]) .diagram-dialog-header button{padding:6px 12px;border:1px solid var(--blog-line);border-radius:20px;font-size:13px}:where(:root[data-section=blog]) .diagram-dialog .diagram-canvas{max-height:calc(100dvh - 120px);padding:32px 16px}:where(:root[data-section=blog]) .diagram-dialog svg{width:100%;max-width:none;min-width:max(var(--diagram-min-width),800px)}:where(:root[data-section=blog]) .prose img,:where(:root[data-section=blog]) .prose video{width:100%;height:auto;border-radius:8px}:where(:root[data-section=blog]) .prose table{display:block;overflow-x:auto;border-collapse:collapse;font-size:14px}:where(:root[data-section=blog]) .prose th,:where(:root[data-section=blog]) .prose td{padding:12px 16px;border:1px solid var(--blog-line);text-align:left}:where(:root[data-section=blog]) .prose hr{border:0;border-top:1px solid var(--blog-line);margin:40px 0}:where(:root[data-section=blog]) .article-end{max-width:var(--article-content-width);margin:56px auto 0;padding-top:25px;border-top:1px solid var(--blog-line);font-size:13px}:where(:root[data-section=blog]) .article-end a{display:inline-flex;align-items:center;gap:10px;color:var(--blog-muted)}:where(:root[data-section=blog]) .article-end a:hover{color:var(--blog-link)}:where(:root[data-section=blog]) .related h2{margin-bottom:30px}:where(:root[data-section=blog]) .empty-page{min-height:60vh;padding:100px 24px;text-align:center}:where(:root[data-section=blog]) .empty-page h1{font-size:52px}:where(:root[data-section=blog]) .empty-page p{margin:24px 0;color:var(--blog-muted)}:where(:root[data-section=blog]) .text-link{display:inline-flex;align-items:center;gap:12px}@media(prefers-reduced-motion:no-preference){:root:where([data-section=blog]){--motion-ease: cubic-bezier(.2, .7, .2, 1)}:where(:root[data-section=blog]) body{transition:background-color .18s ease,color .18s ease}:where(:root[data-section=blog]) .post-link,:where(:root[data-section=blog]) .meta-author,:where(:root[data-section=blog]) .back-nav a,:where(:root[data-section=blog]) .article-end a,:where(:root[data-section=blog]) .contents a,:where(:root[data-section=blog]) .diagram-source summary{transition:color .16s ease}:where(:root[data-section=blog]) .header-search button,:where(:root[data-section=blog]) .categories button,:where(:root[data-section=blog]) .code-copy,:where(:root[data-section=blog]) .diagram-toolbar button,:where(:root[data-section=blog]) .diagram-dialog-header button,:where(:root[data-section=blog]) .empty-results button{transition:color .16s ease,background-color .16s ease,border-color .16s ease,scale .14s var(--motion-ease)}:where(:root[data-section=blog]) .header-search button:active,:where(:root[data-section=blog]) .categories button:active,:where(:root[data-section=blog]) .code-copy:active,:where(:root[data-section=blog]) .diagram-toolbar button:active,:where(:root[data-section=blog]) .diagram-dialog-header button:active,:where(:root[data-section=blog]) .empty-results button:active{scale:.96}:where(:root[data-section=blog]) .category-marker{transition:transform .22s var(--motion-ease),width .22s var(--motion-ease),height .22s var(--motion-ease),background-color .16s ease}:where(:root[data-section=blog]) .header-search>button:first-child svg{transition:scale .18s var(--motion-ease)}:where(:root[data-section=blog]) .header-search:focus-within>button:first-child svg{scale:1.08}:where(:root[data-section=blog]) .post-art-link img{transition:transform .28s var(--motion-ease)}:where(:root[data-section=blog]) .post-card:has(.post-link:focus-visible) .post-art-link img{transform:scale(1.015)}:where(:root[data-section=blog]) .back-nav svg,:where(:root[data-section=blog]) .article-end svg,:where(:root[data-section=blog]) .text-link svg,:where(:root[data-section=blog]) .author-links svg{transition:translate .18s var(--motion-ease)}:where(:root[data-section=blog]) .back-nav a:focus-visible svg{translate:-3px 0}:where(:root[data-section=blog]) .article-end a:focus-visible svg,:where(:root[data-section=blog]) .text-link:focus-visible svg{translate:3px 0}:where(:root[data-section=blog]) .author-links a:focus-visible svg{translate:2px -2px}:where(:root[data-section=blog]) .explore-link:focus-visible svg{transform:translateY(3px)}:where(:root[data-section=blog]) .contents-rail nav{animation:contents-arrive .18s var(--motion-ease)}:where(:root[data-section=blog]) .code-copy:disabled svg{animation:copy-confirm .2s var(--motion-ease)}@media(hover:hover)and (pointer:fine){:where(:root[data-section=blog]) .post-art-link:hover img,:where(:root[data-section=blog]) .post-card:has(.post-link:hover) .post-art-link img{transform:scale(1.015)}:where(:root[data-section=blog]) .back-nav a:hover svg{translate:-3px 0}:where(:root[data-section=blog]) .article-end a:hover svg,:where(:root[data-section=blog]) .text-link:hover svg{translate:3px 0}:where(:root[data-section=blog]) .author-links a:hover svg{translate:2px -2px}}@supports (interpolate-size: allow-keywords){:where(:root[data-section=blog]) .contents,:where(:root[data-section=blog]) .diagram-source{interpolate-size:allow-keywords}:where(:root[data-section=blog]) .contents::details-content,:where(:root[data-section=blog]) .diagram-source::details-content{height:0;opacity:0;overflow:clip;transition:height .18s var(--motion-ease),opacity .18s ease,content-visibility .18s allow-discrete}:where(:root[data-section=blog]) .contents[open]::details-content,:where(:root[data-section=blog]) .diagram-source[open]::details-content{height:auto;opacity:1}:where(:root[data-section=blog]) .contents::details-content{overflow-clip-margin:7px}}:where(:root[data-section=blog]) .diagram-dialog{opacity:0;transform:translateY(6px) scale(.99);transition:opacity .16s ease,transform .16s var(--motion-ease),display .16s allow-discrete,overlay .16s allow-discrete}:where(:root[data-section=blog]) .diagram-dialog[open]{opacity:1;transform:none}:where(:root[data-section=blog]) .diagram-dialog::backdrop{opacity:0;transition:opacity .16s ease,display .16s allow-discrete,overlay .16s allow-discrete}:where(:root[data-section=blog]) .diagram-dialog[open]::backdrop{opacity:1}@starting-style{:where(:root[data-section=blog]) .diagram-dialog[open]{opacity:0;transform:translateY(6px) scale(.99)}:where(:root[data-section=blog]) .diagram-dialog[open]::backdrop{opacity:0}}}@keyframes contents-arrive{0%{opacity:0;transform:translate(-3px)}to{opacity:1;transform:translate(0)}}@keyframes copy-confirm{0%{opacity:.5;transform:scale(.88)}to{opacity:1;transform:scale(1)}}@media(max-width:1100px){:root:where([data-section=blog]){--site-header-height: 108px}}@media(max-width:900px){:where(:root[data-section=blog]) .blog-hero{height:620px}}@media(max-width:700px){:where(:root[data-section=blog]) .blog-footer{width:100%;margin-top:80px}}@media(max-width:600px){:where(:root[data-section=blog]) .header-search{width:clamp(96px,30vw,160px);height:36px;padding-right:5px}:where(:root[data-section=blog]) .header-search button{width:28px}:where(:root[data-section=blog]) .header-search input{font-size:16px}:where(:root[data-section=blog]) .header-search input::placeholder{font-size:13px}:where(:root[data-section=blog]) .blog-hero{height:605px}:where(:root[data-section=blog]) .dune-scene{top:235px;bottom:-10px}:where(:root[data-section=blog]) .hero-copy{padding:42px 24px 0}:where(:root[data-section=blog]) .hero-copy h1{max-width:350px;margin:auto;font-size:clamp(42px,13.3vw,52px)}:where(:root[data-section=blog]) .hero-copy p{font-size:16px;margin-top:22px}:where(:root[data-section=blog]) .explore-link{margin-top:24px}:where(:root[data-section=blog]) .stories{padding:50px 20px 0}:where(:root[data-section=blog]) .stories h2{font-size:28px}:where(:root[data-section=blog]) .stories-heading{margin-bottom:24px}:where(:root[data-section=blog]) .story-tools{flex-wrap:wrap;gap:16px}:where(:root[data-section=blog]) .categories{gap:3px}:where(:root[data-section=blog]) .categories button{padding:7px 12px;font-size:12px}:where(:root[data-section=blog]) .post-grid{grid-template-columns:minmax(0,1fr);gap:40px}:where(:root[data-section=blog]) .post-card.featured .art{aspect-ratio:1.8 / 1}:where(:root[data-section=blog]) .card-copy{padding:20px 4px 0}:where(:root[data-section=blog]) .featured .card-copy h3,:where(:root[data-section=blog]) .card-copy h3{font-size:30px}:where(:root[data-section=blog]) .post-meta{gap:4px 12px;font-size:10px}:where(:root[data-section=blog]) .card-copy p{font-size:13px}:where(:root[data-section=blog]) .article-page{padding:18px 20px 0}:where(:root[data-section=blog]) .article-art .art{aspect-ratio:1.6 / 1}:where(:root[data-section=blog]) .article-header{margin:32px auto}:where(:root[data-section=blog]) .article-header h1{font-size:39px}:where(:root[data-section=blog]) .article-description{font-size:16px;margin:20px auto}:where(:root[data-section=blog]) .prose{font-size:16px;line-height:1.85}:where(:root[data-section=blog]) .prose h2{font-size:28px}:where(:root[data-section=blog]) .author-page{padding:18px 20px 0}:where(:root[data-section=blog]) .author-profile{margin-top:36px}:where(:root[data-section=blog]) .profile-avatar{width:88px;height:88px}:where(:root[data-section=blog]) .author-bio{font-size:16px}:where(:root[data-section=blog]) .author-stories .stories-heading{flex-wrap:wrap;gap:12px}}@media(prefers-reduced-motion:reduce){:root:where([data-section=blog]){scroll-behavior:auto}:where(:root[data-section=blog]) *,:where(:root[data-section=blog]) *:before,:where(:root[data-section=blog]) *:after{animation:none!important;transition:none!important}}.theme-icon-btn.svelte-1iq0t37{display:flex;align-items:center;justify-content:center;width:26px;height:26px;flex:none;overflow:hidden;padding:0;background:transparent;border:none;cursor:pointer;border-radius:8px}.theme-icon-btn.svelte-1iq0t37:hover{background:var(--landing-theme-toggle-bg)}.theme-icon-stack.svelte-1iq0t37{position:relative;display:block;width:18px;height:18px}.theme-icon.svelte-1iq0t37{position:absolute;top:0;right:0;bottom:0;left:0;display:block;width:18px;height:18px;opacity:0;transform:rotate(-90deg) scale(.6);transition:opacity .25s ease,transform .25s cubic-bezier(.2,.8,.2,1)}.theme-icon.active.svelte-1iq0t37{opacity:1;transform:rotate(0) scale(1)}[data-theme=dark] .theme-icon.sun.svelte-1iq0t37{filter:brightness(0) invert(1)}[data-theme=light] .theme-icon.moon.svelte-1iq0t37{filter:brightness(0)}.theme-icon-btn.svelte-1iq0t37:hover .theme-icon.active:where(.svelte-1iq0t37),.mobile-theme-button.svelte-1iq0t37:hover .theme-icon.active:where(.svelte-1iq0t37){opacity:0;transform:rotate(90deg) scale(.6)}.theme-icon-btn.svelte-1iq0t37:hover .theme-icon:where(.svelte-1iq0t37):not(.active),.mobile-theme-button.svelte-1iq0t37:hover .theme-icon:where(.svelte-1iq0t37):not(.active){opacity:1;transform:rotate(0) scale(1)}.theme-icon-btn.svelte-1iq0t37:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.mobile-theme-button.svelte-1iq0t37{display:flex;align-items:center;justify-content:center;width:28px;height:28px;flex:none;padding:0;overflow:hidden;background:transparent;border:none;border-radius:8px;cursor:pointer}.mobile-theme-button.svelte-1iq0t37:hover{background:var(--landing-theme-toggle-bg)}[hidden].svelte-1iq0t37{display:none}@media(hover:none){button.svelte-1iq0t37:hover .theme-icon.active:where(.svelte-1iq0t37){opacity:1;transform:rotate(0) scale(1)}button.svelte-1iq0t37:hover .theme-icon:where(.svelte-1iq0t37):not(.active){opacity:0;transform:rotate(-90deg) scale(.6)}}@media(prefers-reduced-motion:reduce){.theme-icon.svelte-1iq0t37{transition:none}}.navbar-scroll-blur.svelte-k3slgy{position:fixed;top:0;left:0;right:0;z-index:999;height:calc(var(--announcement-height) + var(--navigation-height) + 35px);overflow:hidden;mask-image:linear-gradient(to bottom,black calc(100% - 18px),transparent 100%);-webkit-mask-image:linear-gradient(to bottom,black calc(100% - 18px),transparent 100%);opacity:0;pointer-events:none;transition:opacity var(--transition-normal)}.navbar-scroll-blur.svelte-k3slgy:before{content:"";position:absolute;top:-48px;right:0;bottom:-72px;left:0;background:color-mix(in srgb,var(--page-bg) 45%,transparent);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.navbar-scroll-blur.scrolled.svelte-k3slgy:not(.menu-open){opacity:1}.navbar.svelte-k3slgy{position:fixed;top:var(--announcement-height);left:0;right:0;z-index:1000;box-sizing:border-box;display:flex;align-items:center;justify-content:center;padding:15px clamp(24px,5.55vw,80px);transition:background var(--transition-normal),box-shadow var(--transition-normal)}.navbar.scrolled.svelte-k3slgy:before{content:"";position:absolute;top:0;right:0;bottom:-24px;left:0;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);mask-image:linear-gradient(to bottom,black 75%,transparent 100%);-webkit-mask-image:linear-gradient(to bottom,black 75%,transparent 100%);z-index:-1;pointer-events:none}.navbar-content.svelte-k3slgy{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;width:100%;max-width:1280px;margin:0 auto}.navbar-content.svelte-k3slgy>.logo-link:where(.svelte-k3slgy){justify-self:start}.navbar-content.svelte-k3slgy>.navbar-right:where(.svelte-k3slgy){justify-self:end}.logo-link.svelte-k3slgy{display:flex;align-items:center;gap:6px;text-decoration:none}.logo-img.svelte-k3slgy{width:auto;height:32px}.logo-text.svelte-k3slgy{font-family:roc-grotesk,sans-serif;font-size:24px;font-weight:600;line-height:1;color:var(--text-primary);transition:text-shadow var(--transition-normal)}.logo-link.svelte-k3slgy:hover .logo-text:where(.svelte-k3slgy){text-shadow:0 0 20px var(--shadow-brand-sm)}.menu-pill.svelte-k3slgy{position:relative;display:flex;align-items:center;gap:24px;padding:8px 24px;background:var(--landing-nav-bg);border:1px solid var(--landing-nav-border);border-radius:38px;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}[data-theme=light] .menu-pill.svelte-k3slgy{background:#ffffff59}.nav-hl.svelte-k3slgy{position:absolute;top:8px;left:0;height:32px;background:var(--dropdown-item-hover);border-radius:var(--radius-full);opacity:0;pointer-events:none}.nav-hl.visible.svelte-k3slgy{opacity:1}.menu-item.svelte-k3slgy{position:relative;z-index:1;display:inline-flex;align-items:center;gap:6px;height:32px;padding:0;background:transparent;border:none;font-family:var(--font-accent);font-size:14px;font-weight:500;color:var(--landing-heading);text-decoration:none;cursor:pointer;transition:color var(--transition-soft)}.menu-item.svelte-k3slgy:hover{color:var(--brand-secondary)}.resources-caret.svelte-k3slgy{display:inline-flex;align-items:center;font-size:12px;transition:transform var(--transition-normal)}.dropdown-menu.svelte-k3slgy{position:absolute;top:calc(100% + 16px);left:auto;right:-24px;min-width:120px;background:var(--dropdown-menu-bg);border:1px solid var(--dropdown-menu-border);border-radius:16px;padding:8px;z-index:1001;display:flex;flex-direction:column;gap:4px}.dropdown-menu.svelte-k3slgy:before{content:"";position:absolute;top:-16px;left:0;right:0;height:16px}.dropdown-menu.svelte-k3slgy a:where(.svelte-k3slgy){display:flex;align-items:center;min-height:36px;padding:8px;border-radius:12px;font-family:var(--font-accent);font-size:14px;font-weight:400;color:var(--dropdown-item-text);text-decoration:none;white-space:nowrap;position:relative;z-index:1}.dropdown-hl.svelte-k3slgy{position:absolute;top:0;left:8px;right:8px;background:var(--dropdown-item-hover);border-radius:12px;opacity:0;pointer-events:none;transition:transform var(--transition-soft),height var(--transition-soft),opacity var(--transition-soft)}.dropdown-hl.visible.svelte-k3slgy{opacity:1}.navbar-right.svelte-k3slgy{display:flex;align-items:center;gap:10px}.navbar-divider.svelte-k3slgy{width:1px;height:11px;background:var(--landing-nav-divider)}.mobile-header.svelte-k3slgy{display:none;position:fixed;top:var(--announcement-height);left:0;right:0;z-index:1000;background:transparent;transition:background .15s ease,box-shadow .15s ease,bottom .15s ease,padding-bottom .15s ease}.mobile-header.scrolled.svelte-k3slgy:not(.menu-open):before{content:"";position:absolute;top:calc(-1*env(safe-area-inset-top,0px));left:0;right:0;bottom:-20px;background:linear-gradient(to bottom,var(--page-bg) 60%,transparent 100%);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);mask-image:linear-gradient(to bottom,black 75%,transparent 100%);-webkit-mask-image:linear-gradient(to bottom,black 75%,transparent 100%);z-index:-1;pointer-events:none}.mobile-header.menu-open.svelte-k3slgy{bottom:0;background:var(--page-bg);padding-bottom:0}@-moz-document url-prefix(){.navbar-scroll-blur.svelte-k3slgy{display:block;height:calc(var(--announcement-height) + var(--navigation-height));mask-image:none;-webkit-mask-image:none}.navbar-scroll-blur.svelte-k3slgy:before{top:0;right:0;bottom:0;left:0;background:linear-gradient(to bottom,color-mix(in srgb,var(--page-bg) 52%,transparent),color-mix(in srgb,var(--page-bg) 42%,transparent));backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.navbar.scrolled.svelte-k3slgy:before,.mobile-header.scrolled.svelte-k3slgy:not(.menu-open):before{content:none}}.mobile-header-content.svelte-k3slgy{display:flex;justify-content:space-between;align-items:center;padding:16px;box-sizing:border-box}.mobile-logo.svelte-k3slgy{display:flex;align-items:center;gap:11.46px;text-decoration:none}.mobile-logo.svelte-k3slgy img:where(.svelte-k3slgy){width:auto;height:32px}.mobile-logo.svelte-k3slgy .mobile-wordmark:where(.svelte-k3slgy){width:71.81px;height:auto;transform:translateY(2px)}.mobile-controls.svelte-k3slgy{display:flex;align-items:center;gap:8px}.mobile-menu-btn.svelte-k3slgy{display:flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;background:transparent;border:none;color:var(--text-secondary);cursor:pointer;font-size:18px;border-radius:10px;transition:all var(--transition-fast)}.mobile-menu-btn.svelte-k3slgy:hover{color:var(--text-primary);background:var(--interactive-hover)}.mobile-menu-disclosure[open].svelte-k3slgy .mobile-menu-btn:where(.svelte-k3slgy),.mobile-menu-disclosure[open].svelte-k3slgy .mobile-menu-btn:where(.svelte-k3slgy):hover{background:transparent;color:var(--text-secondary)}.mobile-menu-btn.svelte-k3slgy svg{width:14px;height:14px}.mobile-menu.svelte-k3slgy{display:flex;flex-direction:column;gap:8px;min-height:0;padding:8px 16px 16px;flex:1;overflow-y:auto}.mobile-external-links.svelte-k3slgy{display:flex;flex-direction:column;flex:none}.mobile-external-links.svelte-k3slgy a:where(.svelte-k3slgy){display:flex;align-items:center;height:40px;padding:8px 12px;color:var(--mobile-menu-link);text-decoration:none;font-family:var(--font-accent);font-size:14px;font-weight:500;border-radius:12px;transition:all var(--transition-fast)}.mobile-external-links.svelte-k3slgy a:where(.svelte-k3slgy):hover{background:var(--interactive-hover)}.mobile-social-links.svelte-k3slgy{display:flex;align-items:center;flex:none;gap:5px}.mobile-social-links.svelte-k3slgy a:where(.svelte-k3slgy){display:flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:10px;color:var(--mobile-menu-social);text-decoration:none;font-size:16px;transition:all var(--transition-fast)}.mobile-social-links.svelte-k3slgy a:where(.svelte-k3slgy):hover{color:var(--text-primary)}.announcement-bar.svelte-k3slgy{position:fixed;top:0;left:0;right:0;z-index:1001;display:flex;align-items:center;justify-content:space-between;gap:16px;box-sizing:border-box;min-height:52px;padding:10px clamp(24px,5.55vw,80px);background:linear-gradient(var(--landing-announce-bg),var(--landing-announce-bg)) var(--page-bg);border-bottom:1px solid var(--landing-announce-border);font-family:var(--font-accent);font-size:14px;font-weight:500;color:var(--landing-announce-text)}.announcement-icon.svelte-k3slgy{width:18px;height:18px;flex-shrink:0}.announcement-text.svelte-k3slgy{flex:1;align-self:center;line-height:20px;text-align:center}.announcement-text.svelte-k3slgy a:where(.svelte-k3slgy){color:inherit;text-decoration:underline;text-underline-position:from-font}.announcement-close.svelte-k3slgy{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:22px;height:22px;padding:0;background:var(--landing-announce-close-bg);border:none;border-radius:var(--radius-sm);color:var(--landing-announce-text);font-size:12px;cursor:pointer}@media(max-width:1100px){.navbar.svelte-k3slgy{display:none}.mobile-header.svelte-k3slgy{display:block}.announcement-bar.svelte-k3slgy{display:flex;gap:8px;min-height:44px;padding:8px 12px;font-size:13px;line-height:1.25}.announcement-icon.svelte-k3slgy{width:14px;height:14px}.announcement-close.svelte-k3slgy{width:20px;height:20px;font-size:10px}.mobile-logo.svelte-k3slgy>img:where(.svelte-k3slgy):first-child{width:32px;height:32px}@-moz-document url-prefix(){.navbar-scroll-blur.svelte-k3slgy{height:calc(var(--announcement-height) + var(--navigation-height))}}}@media(max-width:350px){.mobile-header-content.svelte-k3slgy{padding-inline:12px}.mobile-logo.svelte-k3slgy{gap:8px}.mobile-logo.svelte-k3slgy>img:where(.svelte-k3slgy):first-child{width:28px;height:28px}.mobile-logo.svelte-k3slgy .mobile-wordmark:where(.svelte-k3slgy){width:62px}}.site-header.svelte-k3slgy{--announcement-height: 52px;--navigation-height: 80px;height:calc(var(--announcement-height) + var(--navigation-height));flex:none}.nav-hl.svelte-k3slgy{transition:transform .18s cubic-bezier(.2,.8,.2,1),width .18s cubic-bezier(.2,.8,.2,1)}.resources.svelte-k3slgy{position:relative}summary.svelte-k3slgy{list-style:none}summary.svelte-k3slgy::-webkit-details-marker{display:none}.resources[open].svelte-k3slgy .resources-caret:where(.svelte-k3slgy){transform:rotate(180deg)}.menu-close.svelte-k3slgy,.mobile-menu-disclosure[open].svelte-k3slgy .menu-bars:where(.svelte-k3slgy){display:none}.mobile-menu-disclosure[open].svelte-k3slgy .menu-close:where(.svelte-k3slgy){display:flex}.menu-bars.svelte-k3slgy{display:flex}.mobile-menu.svelte-k3slgy{position:fixed;inset:calc(var(--announcement-height) + var(--navigation-height)) 0 0;display:flex;flex-direction:column;background:var(--page-bg)}.mobile-header.svelte-k3slgy:has(.mobile-menu-disclosure[open]:where(.svelte-k3slgy)){background:var(--page-bg)}[data-theme=dark] .mobile-wordmark.svelte-k3slgy{filter:brightness(0) invert(1)}[hidden].svelte-k3slgy{display:none}a.svelte-k3slgy:focus-visible,button.svelte-k3slgy:focus-visible,summary.svelte-k3slgy:focus-visible{outline:2px solid var(--brand-primary);outline-offset:3px}@media(max-width:1100px){.site-header.svelte-k3slgy{--announcement-height: 44px;--navigation-height: 64px}}@media(prefers-reduced-motion:reduce){.svelte-k3slgy,.svelte-k3slgy:before{transition:none!important}}.landing-footer.svelte-ug8j89{display:flex;flex-direction:column;gap:84px;width:100%;max-width:900px}.content.svelte-ug8j89{display:flex;justify-content:space-between;gap:48px;flex-wrap:wrap}.brand.svelte-ug8j89{display:flex;flex-direction:column;gap:16px;max-width:270px}.logo.svelte-ug8j89{display:flex;align-items:center;gap:10px}.logo-img.svelte-ug8j89{height:32px}.wordmark.svelte-ug8j89{height:20px;transform:translateY(2px)}.brand.svelte-ug8j89 p:where(.svelte-ug8j89){margin:0;font-size:14px;font-weight:500;line-height:1.4;color:var(--landing-subtitle)}.menus.svelte-ug8j89{display:flex;gap:clamp(32px,7vw,100px);flex-wrap:wrap}.group.svelte-ug8j89{display:flex;flex-direction:column;gap:6px}.group-title.svelte-ug8j89{font-size:14px;font-weight:500;color:var(--footer-title);margin-bottom:6px}.group.svelte-ug8j89 a:where(.svelte-ug8j89){display:inline-flex;align-items:center;gap:6px;font-family:var(--font-accent);font-weight:500;font-size:14px;line-height:20px;color:var(--footer-link);text-decoration:none}.group.svelte-ug8j89 a:where(.svelte-ug8j89):hover{color:var(--brand-secondary)}.ending.svelte-ug8j89{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;flex-wrap:wrap}.copyright.svelte-ug8j89{font-size:14px;font-weight:500;color:var(--landing-subtitle)}.copyright.svelte-ug8j89 .em:where(.svelte-ug8j89){color:var(--landing-heading)}.socials.svelte-ug8j89{display:flex;gap:5px}.socials.svelte-ug8j89 a:where(.svelte-ug8j89){display:flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:10px;color:var(--footer-social);background:transparent;transition:background var(--transition-fast)}.socials.svelte-ug8j89 a:where(.svelte-ug8j89):hover,.socials.svelte-ug8j89 a:where(.svelte-ug8j89):focus-visible{background:var(--footer-social-hover-bg)}.socials.svelte-ug8j89 a:where(.svelte-ug8j89) svg{width:18px;height:18px}@media(max-width:700px){.landing-footer.svelte-ug8j89{gap:32px;padding:0 16px}.content.svelte-ug8j89{flex-direction:column;gap:24px}.menus.svelte-ug8j89{gap:44px}.ending.svelte-ug8j89{flex-direction:column;align-items:flex-start;gap:12px}.ending.svelte-ug8j89 .socials:where(.svelte-ug8j89){order:-1}}[data-theme=dark] .wordmark.svelte-ug8j89{filter:brightness(0) invert(1)}.location.svelte-ug8j89{display:inline-block}.location.svelte-ug8j89:before{content:", "}@media(max-width:700px){.location.svelte-ug8j89{display:block;margin-top:4px}.location.svelte-ug8j89:before{content:none}}
