@font-face{font-family:Inter Tight;font-style:normal;font-weight:400 800;font-display:swap;src:url(/fonts/inter-tight-normal-cyrillic-ext.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Tight;font-style:normal;font-weight:400 800;font-display:swap;src:url(/fonts/inter-tight-normal-cyrillic.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter Tight;font-style:normal;font-weight:400 800;font-display:swap;src:url(/fonts/inter-tight-normal-latin-ext.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter Tight;font-style:normal;font-weight:400 800;font-display:swap;src:url(/fonts/inter-tight-normal-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/jetbrains-mono-normal-cyrillic-ext.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/jetbrains-mono-normal-cyrillic.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/jetbrains-mono-normal-latin-ext.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/jetbrains-mono-normal-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Lora;font-style:italic;font-weight:400 600;font-display:swap;src:url(/fonts/lora-italic-cyrillic-ext.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Lora;font-style:italic;font-weight:400 600;font-display:swap;src:url(/fonts/lora-italic-cyrillic.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Lora;font-style:italic;font-weight:400 600;font-display:swap;src:url(/fonts/lora-italic-latin-ext.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Lora;font-style:italic;font-weight:400 600;font-display:swap;src:url(/fonts/lora-italic-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Lora;font-style:normal;font-weight:400 600;font-display:swap;src:url(/fonts/lora-normal-cyrillic-ext.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Lora;font-style:normal;font-weight:400 600;font-display:swap;src:url(/fonts/lora-normal-cyrillic.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Lora;font-style:normal;font-weight:400 600;font-display:swap;src:url(/fonts/lora-normal-latin-ext.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Lora;font-style:normal;font-weight:400 600;font-display:swap;src:url(/fonts/lora-normal-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--grey-100:#e9ecef;--grey-300:#cdd2d8;--ink-900:#111316;--night-900:#0e1013;--violet-500:#7b4dff;--violet-600:#6436e8;--violet-300:#b39dff;--red-500:#e5484d;--red-700:#b3263a;--red-400-dark:#ff6b76;--red-200-dark:#ff9aa2;--ocean-600:#0b6e99;--ocean-300-dark:#5cc8e8;--ocean-200-dark:#9adcf2;--bg:var(--night-900);--bg-raised:#14171b;--dot:#23272d;--glow-1:#7b4dff42;--glow-2:#7b4dff21;--surface:#181b209e;--surface-strong:#22262cd6;--surface-solid:#181b20;--glass-hi:#ffffff0f;--header-bg:#0e1013b8;--line:#ffffff14;--line-2:#ffffff26;--fill:#ffffff0d;--fill-2:#ffffff17;--ink:#eceef1;--ink-2:#b6bcc4;--ink-3:#8e959e;--accent:var(--violet-500);--accent-strong:var(--violet-600);--accent-text:var(--violet-300);--accent-soft:#b39dff1f;--accent-line:#b39dff73;--on-accent:#fff;--deleted:var(--red-400-dark);--deleted-ink:var(--red-200-dark);--deleted-soft:#ff6b7629;--edited:var(--ocean-300-dark);--edited-ink:var(--ocean-200-dark);--edited-soft:#5cc8e829;--btn:#f2f3f5;--btn-ink:#111316;--btn-hover:#fff;--btn-max:var(--violet-500);--btn-max-ink:#fff;--btn-max-hover:#8a61ff;--focus:var(--violet-300);--selection:#7b4dff61;--shadow-lg:0 1px 0 #ffffff0d inset, 0 30px 70px -34px #000c;--shadow-sm:0 14px 34px -22px #000000b3;--max-border:conic-gradient(from var(--max-angle,210deg), #7b4dff, #b39dff 25%, #7b4dff40 50%, #b39dff 75%, #7b4dff);color-scheme:dark;--font-ui:"Inter Tight", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-mono:"JetBrains Mono", ui-monospace, "SF Mono", Menlo, Consolas, monospace;--font-said:"Lora", ui-serif, Georgia, "Times New Roman", serif;--fs-mono:clamp(.75rem, .73rem + .1vw, .8125rem);--fs-sm:clamp(.875rem, .85rem + .1vw, .9375rem);--fs-body:clamp(1rem, .98rem + .1vw, 1.0625rem);--fs-lead:clamp(1.0625rem, 1rem + .3vw, 1.25rem);--fs-h4:clamp(1.0625rem, 1rem + .25vw, 1.1875rem);--fs-h3:clamp(1.25rem, 1.1rem + .6vw, 1.625rem);--fs-num:clamp(1.75rem, 1.4rem + 1.4vw, 2.5rem);--fs-h2:clamp(2.125rem, 1.5rem + 2.6vw, 3.625rem);--fs-h1:clamp(2.625rem, 1.65rem + 4.2vw, 5rem);--lh-tight:1;--lh-head:1.06;--lh-snug:1.3;--lh-body:1.55;--tr-h1:-.036em;--tr-h2:-.04em;--tr-h3:-.025em;--tr-mono:.01em;--s-1:4px;--s-2:8px;--s-3:12px;--s-4:16px;--s-5:20px;--s-6:24px;--s-7:28px;--s-8:32px;--s-10:40px;--s-12:48px;--s-14:56px;--s-16:64px;--s-20:80px;--s-24:96px;--s-28:112px;--s-32:128px;--r-xs:6px;--r-sm:10px;--r-md:14px;--r-lg:20px;--r-xl:28px;--r-pill:999px;--blur:20px;--wrap:1240px;--gutter:clamp(16px, 4vw, 40px);--header-h:60px;--section-y:clamp(80px, 5rem + 3vw, 136px);--tap:44px;--ease-out:cubic-bezier(.23, 1, .32, 1);--ease-in-out:cubic-bezier(.77, 0, .175, 1);--ease-spring:cubic-bezier(.34, 1.45, .64, 1);--d-press:.12s;--d-fast:.18s;--d-mid:.32s;--d-rise:.64s}:root[data-theme=light]{--bg:var(--grey-100);--bg-raised:#f3f5f7;--dot:var(--grey-300);--glow-1:#7b4dff3d;--glow-2:#7b4dff21;--surface:#ffffff9e;--surface-strong:#ffffffdb;--surface-solid:#fff;--glass-hi:#ffffffd9;--header-bg:#e9ecefbd;--line:#11131617;--line-2:#11131629;--fill:#1113160b;--fill-2:#11131614;--ink:var(--ink-900);--ink-2:#3e444c;--ink-3:#59606a;--accent-text:var(--violet-600);--accent-soft:#7b4dff1a;--accent-line:#7b4dff73;--deleted:var(--red-500);--deleted-ink:var(--red-700);--deleted-soft:#e5484d1f;--edited:var(--ocean-600);--edited-ink:var(--ocean-600);--edited-soft:#0b6e991c;--btn:var(--ink-900);--btn-ink:#fff;--btn-hover:#2a2e34;--btn-max:var(--violet-600);--btn-max-ink:#fff;--btn-max-hover:var(--violet-500);--focus:var(--violet-600);--selection:#7b4dff38;--shadow-lg:0 1px 0 #fffc inset, 0 30px 70px -34px #11131657;--shadow-sm:0 14px 34px -22px #1113164d;color-scheme:light}@media (prefers-reduced-transparency:reduce){:root,:root[data-theme]{--surface:var(--surface-solid);--surface-strong:var(--surface-solid);--blur:0px}}@supports not (backdrop-filter:blur(1px)){:root,:root[data-theme]{--surface:var(--surface-solid);--surface-strong:var(--surface-solid)}}@media (prefers-contrast:more){:root,:root[data-theme]{--line:var(--line-2);--ink-3:var(--ink-2);--surface:var(--surface-solid)}}.tg{--tg-font:-apple-system, BlinkMacSystemFont, "SF Pro Text", "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--tg-chat-bg:#0e1621;--tg-chat-pattern:#ffffff06;--tg-bar-bg:#17212b;--tg-bar-line:#00000059;--tg-pane-bg:#0e1621;--tg-row-bg:#17212b;--tg-row-line:#10171f;--tg-in:#182533;--tg-out:#2b5278;--tg-text:#f5f5f5;--tg-text-out:#fff;--tg-muted:#7d8b99;--tg-time-in:#6d7f8f;--tg-time-out:#7da8d3;--tg-tick:#7da8d3;--tg-accent:#6ab3f3;--tg-accent-ink:#fff;--tg-button:#5288c1;--tg-switch-on:#5288c1;--tg-switch-off:#3a4a5a;--tg-quote-in:#6ab3f3;--tg-quote-out:#a9d4ff;--tg-quote-bg:#6ab3f31f;--tg-pill-bg:#1e2c3ac7;--tg-pill-ink:#fff;--tg-input-bg:#17212b;--tg-input-ink:#f5f5f5;--tg-input-hint:#6d7f8f;--tg-kb-bg:#2b52788c;--tg-kb-ink:#fff;--tg-typing:#6ab3f3;--tg-danger:#ec3942;--tg-bubble-shadow:0 1px 1.5px #0000004d;--tg-status-bar-ink:#fff;--tga-red:#e17076;--tga-orange:#e9964f;--tga-violet:#7f7ad3;--tga-green:#62b856;--tga-cyan:#4fb4c9;--tga-blue:#5fa9dd;--tga-pink:#e26f9b;--tgi-red:#f05a5a;--tgi-orange:#f39a2e;--tgi-green:#3fb858;--tgi-blue:#3390ec;--tgi-violet:#8e6cf0;--tgi-grey:#8e99a4;--tg-ongly-violet:#7b4dff;font-family:var(--tg-font);color:var(--tg-text)}:root[data-theme=light] .tg{--tg-chat-bg:#dfe7ee;--tg-chat-pattern:#4664780f;--tg-bar-bg:#fff;--tg-bar-line:#dde3e8;--tg-pane-bg:#f1f2f6;--tg-row-bg:#fff;--tg-row-line:#e7eaee;--tg-in:#fff;--tg-out:#eeffde;--tg-text:#0e1114;--tg-text-out:#0e1114;--tg-muted:#6e7883;--tg-time-in:#a0acb6;--tg-time-out:#4fae4e;--tg-tick:#4fae4e;--tg-accent:#3390ec;--tg-accent-ink:#fff;--tg-button:#3390ec;--tg-switch-on:#3390ec;--tg-switch-off:#d6dbe0;--tg-quote-in:#3390ec;--tg-quote-out:#4fae4e;--tg-quote-bg:#3390ec1a;--tg-pill-bg:#465a6c73;--tg-pill-ink:#fff;--tg-input-bg:#fff;--tg-input-ink:#0e1114;--tg-input-hint:#a0acb6;--tg-kb-bg:#465a6c52;--tg-kb-ink:#fff;--tg-typing:#3390ec;--tg-danger:#e53935;--tg-bubble-shadow:0 1px 1.5px #10182021;--tg-status-bar-ink:#0e1114}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;text-size-adjust:100%;background:var(--bg);scroll-padding-top:calc(var(--header-h) + 12px)}body{min-height:100vh;color:var(--ink);font-family:var(--font-ui);font-size:var(--fs-body);line-height:var(--lh-body);font-feature-settings:"ss01" 0, "cv11" 1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;background:0 0;flex-direction:column;margin:0;display:flex;overflow-x:clip}body>main{flex:1 0 auto}h1,h2,h3,h4,h5,p,ul,ol,dl,dd,figure,blockquote{margin:0}ul[class],ol[class]{padding:0;list-style:none}img,svg,video,canvas{max-width:100%;display:block}img,video{height:auto}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}a{color:var(--accent-text);text-underline-offset:.18em;text-decoration-thickness:1px}::selection{background:var(--selection)}[hidden]{display:none!important}:target{scroll-margin-top:calc(var(--header-h) + 12px)}section[id],[id].anchor{scroll-margin-top:var(--header-h)}html.lenis,html.lenis body{height:auto}.lenis:not(.lenis-autoToggle).lenis-stopped{overflow:clip}.lenis [data-lenis-prevent]{overscroll-behavior:contain}.ground{z-index:-1;pointer-events:none;background:var(--bg);position:fixed;inset:0;overflow:hidden}.ground:before{content:"";background-image:radial-gradient(circle, var(--dot) 1px, transparent 1.5px);background-position:8px 8px;background-size:16px 16px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000 0%,#000000b3 60%,#00000073 100%);mask-image:linear-gradient(#000 0%,#000000b3 60%,#00000073 100%)}.ground__glow{aspect-ratio:1;background:radial-gradient(circle, var(--glow-1) 0%, transparent 66%);will-change:transform;border-radius:50%;width:min(68vw,820px);animation:36s ease-in-out infinite alternate ground-drift;position:absolute}.ground__glow--a{top:-22%;right:-16%}.ground__glow--b{background:radial-gradient(circle, var(--glow-2) 0%, transparent 66%);animation-duration:44s;animation-direction:alternate-reverse;bottom:-30%;left:-20%}@keyframes ground-drift{0%{transform:translate(0,0)scale(1)}to{transform:translate(-9vw,11vh)scale(1.08)}}html[data-idle] .ground__glow{animation-play-state:paused}h1,h2,h3,h4,.h1,.h2,.h3,.h4{font-family:var(--font-ui);color:var(--ink);text-wrap:balance;font-weight:700}h1,.h1{font-size:var(--fs-h1);letter-spacing:var(--tr-h1);line-height:.96}h2,.h2{font-size:var(--fs-h2);letter-spacing:var(--tr-h2);line-height:1}h3,.h3{font-size:var(--fs-h3);letter-spacing:var(--tr-h3);font-weight:650;line-height:1.15}h4,.h4{font-size:var(--fs-h4);letter-spacing:-.015em;font-weight:650;line-height:1.25}p{text-wrap:pretty}.lead{font-size:var(--fs-lead);color:var(--ink-2);max-width:62ch;line-height:1.5}.muted{color:var(--ink-2)}.quiet{color:var(--ink-3)}.small{font-size:var(--fs-sm);line-height:1.5}.mono{font-family:var(--font-mono);font-size:var(--fs-mono);letter-spacing:var(--tr-mono);font-weight:500;line-height:1.4}.eyebrow{align-items:center;gap:var(--s-2);margin-bottom:var(--s-4);font:500 var(--fs-mono)/1.2 var(--font-mono);letter-spacing:var(--tr-mono);color:var(--ink-3);display:inline-flex}.eyebrow b{color:var(--accent-text);font-weight:500}.cmd,code.cmd{border-radius:var(--r-xs);background:var(--fill-2);box-shadow:inset 0 0 0 1px var(--line);color:var(--ink);font:500 .86em/1.35 var(--font-mono);letter-spacing:0;white-space:nowrap;padding:.08em .45em;display:inline-block}.said{font-family:var(--font-said);letter-spacing:0;font-weight:400}.wrap{width:100%;max-width:var(--wrap);padding-inline:max(var(--gutter), env(safe-area-inset-left,0px)) max(var(--gutter), env(safe-area-inset-right,0px));margin-inline:auto}.wrap--narrow{max-width:820px}.section{padding-block:var(--section-y) 0;position:relative}main>.section~.section:not(#story){content-visibility:auto;contain-intrinsic-size:auto 900px}html.cv-all main>.section{content-visibility:visible}@media print{main>.section{content-visibility:visible}}.section:last-child{padding-bottom:var(--section-y)}.sec-head{gap:var(--s-6) var(--s-14);grid-template-columns:minmax(0,5fr) minmax(0,7fr);align-items:end;margin-bottom:clamp(32px,2rem + 1vw,48px);display:grid}.sec-head>div>.eyebrow:last-child{margin-bottom:0}.sec-head .lead{padding-bottom:.2em}@media (width<=860px){.sec-head{gap:var(--s-4);grid-template-columns:minmax(0,1fr)}}.glass{background:var(--surface);backdrop-filter:blur(var(--blur)) saturate(1.3);border:1px solid var(--line-2);border-radius:var(--r-lg);box-shadow:var(--shadow-lg);position:relative}.glass:before{content:"";border-radius:inherit;box-shadow:inset 0 1px 0 var(--glass-hi);pointer-events:none;position:absolute;inset:0}.hairline{background:var(--line);border:0;height:1px;margin:0}.plan-tag{border-radius:var(--r-xs);background:var(--fill-2);height:22px;color:var(--ink-2);font:500 12px/1 var(--font-mono);letter-spacing:.02em;white-space:nowrap;align-items:center;padding:0 8px;display:inline-flex}.plan-tag[data-plan=max]{background:var(--accent-soft);color:var(--accent-text);box-shadow:inset 0 0 0 1px var(--accent-line)}.icon{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;flex:none;width:1em;height:1em}.btn{--btn-h:48px;min-height:var(--btn-h);border-radius:var(--r-md);background:var(--btn);color:var(--btn-ink);font:600 1rem/1 var(--font-ui);letter-spacing:-.01em;white-space:nowrap;cursor:pointer;transition:background-color var(--d-fast) var(--ease-out), transform var(--d-press) var(--ease-out), box-shadow var(--d-fast) var(--ease-out);-webkit-tap-highlight-color:transparent;border:0;justify-content:center;align-items:center;gap:10px;padding:0 20px;text-decoration:none;display:inline-flex}.btn:hover{background:var(--btn-hover)}.btn:active{transform:scale(.97)}.btn .icon{width:18px;height:18px}.btn--sm{--btn-h:38px;border-radius:var(--r-sm);gap:8px;padding:0 14px;font-size:.875rem}.btn--sm .icon{width:16px;height:16px}.btn--lg{--btn-h:54px;padding:0 24px;font-size:1.0625rem}.btn--max{background:var(--btn-max);color:var(--btn-max-ink)}.btn--max:hover{background:var(--btn-max-hover)}.btn--ghost{color:var(--ink);box-shadow:inset 0 0 0 1px var(--line-2);background:0 0}.btn--ghost:hover{background:var(--fill)}.btn--block{width:100%;display:flex}.text-link{color:var(--ink);min-height:var(--tap);align-items:center;gap:6px;font-weight:600;text-decoration:none;display:inline-flex}.text-link .icon{width:18px;height:18px;transition:transform var(--d-fast) var(--ease-out)}.text-link:hover{color:var(--accent-text)}.text-link:hover .icon{transform:translate(3px)}.icon-btn{border-radius:var(--r-sm);width:38px;height:38px;color:var(--ink-2);transition:background-color var(--d-fast) var(--ease-out), color var(--d-fast) var(--ease-out);background:0 0;border:0;place-items:center;padding:0;display:inline-grid;position:relative}.icon-btn:after{content:"";position:absolute;inset:-3px}.icon-btn:hover{background:var(--fill-2);color:var(--ink)}.icon-btn .icon{width:19px;height:19px}:focus{outline:none}:focus-visible{outline:2px solid var(--focus);outline-offset:3px}a:not([class]):focus-visible{border-radius:3px}main:focus,[tabindex="-1"]:focus{outline:none}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;position:absolute!important}.skip-link{z-index:100;border-radius:var(--r-sm);background:var(--btn);color:var(--btn-ink);transition:transform var(--d-fast) var(--ease-out);padding:10px 16px;font-weight:600;text-decoration:none;position:fixed;top:10px;left:10px;transform:translateY(-160%)}.skip-link:focus-visible{transform:none}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}.ground__glow{animation:none}}@media print{.ground,.site-header,.skip-link{display:none!important}[data-reveal]{opacity:1!important;transform:none!important}}.logo[data-astro-cid-f7espo7c]{align-items:center;gap:calc(var(--logo-size) * .3);color:var(--ink);display:inline-flex}.logo__mark[data-astro-cid-f7espo7c]{width:var(--logo-size);height:var(--logo-size);box-shadow:0 0 0 1px var(--line);border-radius:24%;flex:none}.logo__word[data-astro-cid-f7espo7c]{font:700 calc(var(--logo-size) * .74) / 1 var(--font-ui);letter-spacing:-.045em;padding-bottom:.06em}.logo--animated[data-astro-cid-f7espo7c] .logo__mark[data-astro-cid-f7espo7c]{animation:4s ease-in-out infinite logo-float}@keyframes logo-float{50%{transform:translateY(-6%)}}@media (prefers-reduced-motion:reduce){.logo--animated[data-astro-cid-f7espo7c] .logo__mark[data-astro-cid-f7espo7c]{animation:none}}.lang[data-astro-cid-lemdd452] ul[data-astro-cid-lemdd452]{margin:0;padding:0;list-style:none;display:flex}.lang--compact[data-astro-cid-lemdd452] ul[data-astro-cid-lemdd452]{border-radius:var(--r-sm);background:var(--fill);box-shadow:inset 0 0 0 1px var(--line);gap:2px;padding:3px}.lang--compact[data-astro-cid-lemdd452] a[data-astro-cid-lemdd452]{min-width:34px;height:30px;color:var(--ink-3);font:500 12px/1 var(--font-mono);letter-spacing:.04em;transition:color var(--d-fast) var(--ease-out), background-color var(--d-fast) var(--ease-out);border-radius:7px;place-items:center;padding:0 6px;text-decoration:none;display:grid;position:relative}.lang--compact[data-astro-cid-lemdd452] a[data-astro-cid-lemdd452]:after{content:"";position:absolute;inset:-7px -1px}.lang--compact[data-astro-cid-lemdd452] a[data-astro-cid-lemdd452]:hover{color:var(--ink)}.lang--compact[data-astro-cid-lemdd452] a[data-astro-cid-lemdd452][aria-current]{color:var(--ink);background:var(--surface-strong);box-shadow:0 1px 2px #0000002e, inset 0 0 0 1px var(--line)}.lang--list[data-astro-cid-lemdd452] ul[data-astro-cid-lemdd452]{flex-wrap:wrap;gap:4px 18px}.lang--list[data-astro-cid-lemdd452] a[data-astro-cid-lemdd452]{min-height:32px;color:var(--ink-2);font-size:var(--fs-sm);align-items:center;text-decoration:none;display:inline-flex}.lang--list[data-astro-cid-lemdd452] a[data-astro-cid-lemdd452]:hover{color:var(--ink)}.lang--list[data-astro-cid-lemdd452] a[data-astro-cid-lemdd452][aria-current]{color:var(--ink);font-weight:600}.lang--list[data-astro-cid-lemdd452] a[data-astro-cid-lemdd452][aria-current]:before{content:"";background:var(--accent);border-radius:50%;width:6px;height:6px;margin-right:8px}.theme-toggle[data-astro-cid-l6lhmie6] .icon{transition:transform var(--d-mid) var(--ease-out), opacity var(--d-fast) var(--ease-out);grid-area:1/1}.theme-toggle[data-astro-cid-l6lhmie6] .theme-toggle__moon{opacity:0;transform:rotate(-40deg)scale(.7)}:root[data-theme=light] .theme-toggle[data-astro-cid-l6lhmie6] .theme-toggle__sun{opacity:0;transform:rotate(40deg)scale(.7)}:root[data-theme=light] .theme-toggle[data-astro-cid-l6lhmie6] .theme-toggle__moon{opacity:1;transform:none}.site-header[data-astro-cid-nen7h5rs]{z-index:50;background:var(--header-bg);backdrop-filter:blur(16px)saturate(1.4);transition:border-color var(--d-mid) var(--ease-out), background-color var(--d-mid) var(--ease-out);border-bottom:1px solid #0000;position:sticky;top:0}.site-header[data-astro-cid-nen7h5rs][data-scrolled]{border-bottom-color:var(--line)}@media (prefers-reduced-transparency:reduce){.site-header[data-astro-cid-nen7h5rs]{background:var(--bg)}}.site-header__bar[data-astro-cid-nen7h5rs]{align-items:center;gap:var(--s-8);height:var(--header-h);display:flex}.site-header__logo[data-astro-cid-nen7h5rs]{color:var(--ink);border-radius:var(--r-sm);flex:none;align-items:center;text-decoration:none;display:inline-flex}.site-header__nav[data-astro-cid-nen7h5rs] ul[data-astro-cid-nen7h5rs]{gap:2px;margin:0;padding:0;list-style:none;display:flex}.site-header__nav[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs]{border-radius:var(--r-sm);height:36px;color:var(--ink-2);transition:color var(--d-fast) var(--ease-out), background-color var(--d-fast) var(--ease-out);align-items:center;padding:0 12px;font-size:.90625rem;font-weight:500;text-decoration:none;display:inline-flex}.site-header__nav[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs]:hover{color:var(--ink);background:var(--fill)}.site-header__nav[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs][aria-current]{color:var(--ink)}.site-header__tools[data-astro-cid-nen7h5rs]{align-items:center;gap:var(--s-2);margin-left:auto;display:flex}.site-header__cta[data-astro-cid-nen7h5rs]{margin-left:var(--s-1);position:relative}.site-header__cta[data-astro-cid-nen7h5rs]:after{content:"";position:absolute;inset:-3px 0}.site-header__cta-short[data-astro-cid-nen7h5rs]{display:none}@media (width<=1080px){.site-header__bar[data-astro-cid-nen7h5rs]{gap:var(--s-4)}.site-header__nav[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs]{padding:0 9px}}@media (width<=900px){.site-header__nav[data-astro-cid-nen7h5rs]{display:none}}@media (width<=720px){.site-header__cta-long[data-astro-cid-nen7h5rs]{display:none}.site-header__cta-short[data-astro-cid-nen7h5rs]{display:inline}}@media (width<=480px){.site-header__tools[data-astro-cid-nen7h5rs]{gap:6px}.site-header__cta[data-astro-cid-nen7h5rs]{margin-left:0;padding:0 12px}.site-header__cta[data-astro-cid-nen7h5rs] .icon{display:none}.site-header__tools[data-astro-cid-nen7h5rs] .lang--compact a{min-width:32px;padding:0 4px}}@media (width<=350px){.site-header__logo[data-astro-cid-nen7h5rs] .logo__word{display:none}}.site-footer[data-astro-cid-jo6i4kqk]{margin-top:var(--section-y);padding:var(--s-16) 0 calc(var(--s-8) + env(safe-area-inset-bottom,0px));border-top:1px solid var(--line);background:linear-gradient(to bottom, transparent, color-mix(in srgb, var(--bg) 70%, transparent))}.site-footer__grid[data-astro-cid-jo6i4kqk]{gap:var(--s-10) var(--s-8);grid-template-columns:minmax(0,5fr) repeat(3,minmax(0,2fr));display:grid}.site-footer__logo[data-astro-cid-jo6i4kqk]{min-height:44px;color:var(--ink);border-radius:var(--r-sm);align-items:center;text-decoration:none;display:inline-flex}.site-footer__tagline[data-astro-cid-jo6i4kqk]{margin-top:var(--s-5);font-size:var(--fs-h4);letter-spacing:-.02em;color:var(--ink);font-weight:650}.site-footer__about[data-astro-cid-jo6i4kqk]{margin-top:var(--s-2);max-width:40ch;color:var(--ink-3);font-size:var(--fs-sm)}.site-footer__op[data-astro-cid-jo6i4kqk]{margin-top:var(--s-4)}.site-footer__mail[data-astro-cid-jo6i4kqk]{color:var(--ink-2);text-underline-offset:3px;overflow-wrap:anywhere}.site-footer__mail[data-astro-cid-jo6i4kqk]:hover{color:var(--ink)}.site-footer__h[data-astro-cid-jo6i4kqk]{margin-bottom:var(--s-3);font:500 var(--fs-mono)/1.2 var(--font-mono);letter-spacing:var(--tr-mono);color:var(--ink-3)}.site-footer__col[data-astro-cid-jo6i4kqk] ul[data-astro-cid-jo6i4kqk]{gap:0;margin:0;padding:0;list-style:none;display:grid}.site-footer__col[data-astro-cid-jo6i4kqk] a[data-astro-cid-jo6i4kqk]{min-height:44px;color:var(--ink-2);font-size:var(--fs-sm);align-items:center;text-decoration:none;display:inline-flex}.site-footer__col[data-astro-cid-jo6i4kqk] a[data-astro-cid-jo6i4kqk].mono{font-size:var(--fs-mono)}.site-footer__col[data-astro-cid-jo6i4kqk] a[data-astro-cid-jo6i4kqk]:hover{color:var(--ink)}.site-footer__col[data-astro-cid-jo6i4kqk] .site-footer__langs ul{flex-direction:column;gap:2px}.site-footer__base[data-astro-cid-jo6i4kqk]{justify-content:space-between;gap:var(--s-4);margin-top:var(--s-12);padding-top:var(--s-5);border-top:1px solid var(--line);color:var(--ink-3);display:flex}.site-footer__independent[data-astro-cid-jo6i4kqk]{font-size:var(--fs-sm);text-align:right}@media (width<=860px){.site-footer__grid[data-astro-cid-jo6i4kqk]{grid-template-columns:repeat(3,minmax(0,1fr))}.site-footer__brand[data-astro-cid-jo6i4kqk]{grid-column:1/-1}}@media (width<=520px){.site-footer__grid[data-astro-cid-jo6i4kqk]{grid-template-columns:repeat(2,minmax(0,1fr))}.site-footer__base[data-astro-cid-jo6i4kqk]{gap:var(--s-2);flex-direction:column}.site-footer__independent[data-astro-cid-jo6i4kqk]{text-align:left}}
