@font-face{font-family:Pixelify Sans;font-style:normal;font-weight:400 700;font-display:swap;src:url(/_next/static/media/aaf0e744731a46d3-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Pixelify Sans;font-style:normal;font-weight:400 700;font-display:swap;src:url(/_next/static/media/9cb204d1bfdb6539-s.p.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,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:Pixelify Sans;font-style:normal;font-weight:400 700;font-display:swap;src:url(/_next/static/media/c565b14407d34fed-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Pixelify Sans Fallback;src:local("Arial");ascent-override:81.70%;descent-override:24.87%;line-gap-override:0.00%;size-adjust:112.61%}.__className_e9fcfe{font-family:Pixelify Sans,Pixelify Sans Fallback;font-style:normal}.__variable_e9fcfe{--font-pixel:"Pixelify Sans","Pixelify Sans Fallback"}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/58f386aa6b1a2a92-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/011e180705008d6f-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/7ba5fb2a8c88521c-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/92eeb95d069020cc-s.p.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,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:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/d3ebbfd689654d3a-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/ef4d5661765d0e49-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/d29838c109ef09b4-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/e40af3453d7c920a-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/99dcf268bda04fe5-s.p.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,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:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/98e207f02528a563-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/73cb51aac9c97f90-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/d26bbd13d6b70f89-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/20535187d867b7b9-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/5356a6a4f2c8c8d8-s.p.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,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:IBM Plex Mono;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/db96af6b531dc71f-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:IBM Plex Mono Fallback;src:local("Arial");ascent-override:76.16%;descent-override:20.43%;line-gap-override:0.00%;size-adjust:134.59%}.__className_26a6cf{font-family:IBM Plex Mono,IBM Plex Mono Fallback;font-style:normal}.__variable_26a6cf{--font-mono:"IBM Plex Mono","IBM Plex Mono Fallback"}

/*! tailwindcss v4.1.13 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,::backdrop,:after,:before{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid}}}@layer theme{:host,:root{--font-sans:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,::backdrop,:after,:before{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}:host,html{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}menu,ol,ul{list-style:none}audio,canvas,embed,iframe,img,object,svg,video{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,optgroup,select,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit,::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-millisecond-field,::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden}.absolute,.sr-only{position:absolute}.relative{position:relative}.flex{display:flex}.grid{display:grid}.hidden{display:none}.table{display:table}.grow{flex-grow:1}.transform{transform:var(--tw-rotate-x,)var(--tw-rotate-y,)var(--tw-rotate-z,)var(--tw-skew-x,)var(--tw-skew-y,)}.border{border-style:var(--tw-border-style);border-width:1px}}pre code.hljs{padding:1em;display:block;overflow-x:auto}code.hljs{padding:3px 5px}.hljs{color:#24292e;background:#fff}.hljs-doctag,.hljs-keyword,.hljs-meta .hljs-keyword,.hljs-template-tag,.hljs-template-variable,.hljs-type,.hljs-variable.language_{color:#d73a49}.hljs-title,.hljs-title.class_,.hljs-title.class_.inherited__,.hljs-title.function_{color:#6f42c1}.hljs-attr,.hljs-attribute,.hljs-literal,.hljs-meta,.hljs-number,.hljs-operator,.hljs-selector-attr,.hljs-selector-class,.hljs-selector-id,.hljs-variable{color:#005cc5}.hljs-meta .hljs-string,.hljs-regexp,.hljs-string{color:#032f62}.hljs-built_in,.hljs-symbol{color:#e36209}.hljs-code,.hljs-comment,.hljs-formula{color:#6a737d}.hljs-name,.hljs-quote,.hljs-selector-pseudo,.hljs-selector-tag{color:#22863a}.hljs-subst{color:#24292e}.hljs-section{color:#005cc5;font-weight:700}.hljs-bullet{color:#735c0f}.hljs-emphasis{color:#24292e;font-style:italic}.hljs-strong{color:#24292e;font-weight:700}.hljs-addition{color:#22863a;background-color:#f0fff4}.hljs-deletion{color:#b31d28;background-color:#ffeef0}:root{--background:#f5efe4;--foreground:#1f2731;--card:#fffdf8;--primary:#3f54aa;--secondary:#243966;--accent:#9b432d;--muted:#e3cfad;--signal:#f9d36a;--border:#82776d;--ease:cubic-bezier(.16,1,.3,1);color-scheme:light}*{box-sizing:border-box}@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}body{font-variant-ligatures:none;font-feature-settings:"liga" 0,"clig" 0;color:var(--foreground);background-color:var(--background);font-family:var(--font-mono),monospace;background-image:linear-gradient(#1f27310b 1px,#0000 0),linear-gradient(90deg,#1f27310b 1px,#0000 0);background-size:18px 18px;margin:0;line-height:1.6}button,input,textarea{font:inherit}button{cursor:pointer}.window-header,button,h1,h2,h3{font-family:var(--font-pixel),monospace}a{color:var(--primary);text-underline-offset:.22em}a:hover{text-decoration:underline}:focus-visible{outline:2px solid var(--primary);outline-offset:4px}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.home-page{min-width:0}.hero{isolation:isolate;grid-template-rows:1fr auto;justify-items:center;height:100svh;min-height:100svh;padding:0 24px;display:grid;position:relative;overflow:clip}.pixel-waves{pointer-events:none;z-index:-1;width:100%;height:100%;position:absolute;inset:0}.home-top{position:absolute;top:18px;right:24px}.lang-toggle{gap:4px;display:flex}.lang-toggle button{border:1px solid var(--border);background:var(--card);color:var(--secondary);padding:4px 9px;font-size:16px}.lang-toggle button[aria-pressed=true]{background:var(--secondary);color:var(--signal);border-color:var(--foreground);box-shadow:2px 2px 0 var(--foreground)}[data-i18n-fade]{transition:opacity .2s ease-out}html.locale-switching [data-i18n-fade]{opacity:0;transition-duration:.15s}.locale-text{max-width:100%;display:inline-grid}.locale-text>span{grid-area:1/1;min-width:0}.locale-text,.locale-text>span{-webkit-text-decoration:inherit;text-decoration:inherit;text-underline-offset:inherit}.locale-text>[aria-hidden=true]{visibility:hidden}.home-content{text-align:center;flex-direction:column;align-self:center;align-items:center;width:min(900px,100%);min-width:0;display:flex}.home-content h1{margin:0 0 18px;line-height:1}.logo{height:auto;display:block}.hero .logo{--intro-scale:3.4;transform-origin:50%;width:auto;height:clamp(30px,2.6vw,40px)}.logo-letter{transform-box:fill-box;transform-origin:50%}.wordmark{height:auto;display:block}.headline{max-width:780px;font-family:var(--font-mono),monospace;color:var(--foreground);text-wrap:balance;margin:0;font-size:clamp(18px,1.6vw,22px)}.subline{color:#5f5850;text-wrap:balance;max-width:660px;margin:8px 0 0;font-size:14px}.contact-trigger{color:var(--primary);font-family:var(--font-mono),monospace;text-underline-offset:.3em;background:0 0;border:0;margin-top:clamp(28px,5vh,48px);padding:4px 10px;font-size:14px;text-decoration:underline;text-decoration-thickness:1px}.contact-trigger:hover{text-decoration-thickness:2px}html.js:not(.ready) .hero :is(.logo-animated,.headline,.subline,.contact-trigger,.home-top,.pixel-waves,.works-row){visibility:hidden}html.js.ready:not(.seen) .logo-animated{animation:logo-settle .44s cubic-bezier(.22,1,.36,1)var(--symbol-lit-end)both}html.js.ready:not(.seen) .logo-animated .logo-letter{animation:letter-rise .24s cubic-bezier(.22,1,.36,1)calc(var(--symbol-lit-end) + .2s + var(--i)*55ms)both}html.js.ready:not(.seen) .hero :is(.headline,.subline){animation:line-rise .5s var(--ease)2.45s both}html.js.ready:not(.seen) .hero .contact-trigger{animation:fade-in .3s var(--ease)2.6s both}html.js.ready:not(.seen) .hero :is(.home-top,.pixel-waves){animation:fade-in .2s var(--ease)2.75s both}html.js.ready:not(.seen) .hero .works-row h2{animation:works-rise .7s ease-out 2.8s both}html.js.ready:not(.seen) .hero .works-viewport{animation:works-rise .7s ease-out 2.95s both}html.js.ready.seen .hero{animation:fade-in .6s var(--ease)both}@keyframes letter-rise{0%{transform:translateY(140%)}to{transform:none}}@keyframes logo-settle{0%{transform:scale(var(--intro-scale))translate(var(--symbol-shift),var(--intro-dy,0))}to{transform:none}}@keyframes line-rise{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes works-rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.retro-window{border:2px solid var(--foreground);background:var(--card);box-shadow:6px 6px 0 var(--foreground);min-width:0}.window-header{background:var(--secondary);min-height:32px;color:var(--card);text-align:left;letter-spacing:.03em;align-items:center;gap:12px;padding:4px 10px;font-size:16px;display:flex}.window-dots{flex-shrink:0;gap:4px;display:flex}.window-dots i{background:var(--muted);width:6px;height:6px}.window-dots i:first-child{background:var(--accent)}.window-dots i:last-child{background:var(--signal)}.site-footer{background:var(--secondary);color:var(--background);font-size:14px;position:relative}.site-footer:before{content:"";background:repeating-linear-gradient(90deg,var(--background)0 8px,transparent 8px 16px);pointer-events:none;height:8px;position:absolute;inset:0 0 auto}.footer-inner{width:min(1100px,100% - 48px);margin:0 auto;padding-top:clamp(48px,8vh,88px)}.site-footer a{color:var(--signal)}.site-footer :focus-visible{outline-color:var(--signal)}.works-row{text-align:center;width:100%;min-width:0;padding-bottom:clamp(20px,4vh,40px);position:relative}.works-row h2{font-family:var(--font-mono),monospace;color:#5f5850;margin:0 0 clamp(14px,2.4vh,24px);font-size:13px;font-style:italic;font-weight:400}.works-viewport{--works-fade:min(18%,220px);width:100%;padding:8px 0;overflow:clip}.works-group,.works-track{align-items:center;gap:24px;width:max-content;display:flex}.works-track{margin:0 auto}.works-group{flex:none}.works-group[aria-hidden=true]{display:none}.works-item{flex:none;min-width:44px;min-height:44px;padding:10px 14px;display:block}.works-item,.works-item:hover{text-decoration:none}.works-item svg{width:auto;height:24px;color:var(--secondary);opacity:var(--mark-o,.6);pointer-events:none;transition:opacity 80ms;display:block}.works-item:is(:hover,:focus-visible) svg{opacity:1}.work-bubble-title{font-family:var(--font-mono),monospace;letter-spacing:0;color:var(--secondary);margin-bottom:4px;font-size:14.5px;font-weight:600;display:block}.works-row[data-reduced=false] .works-track{will-change:transform;margin:0}.works-row[data-reduced=false] .works-group[aria-hidden=true]{display:flex}.works-row[data-reduced=false] .works-viewport{mask-image:linear-gradient(to right,transparent,#000 var(--works-fade),#000 calc(100% - var(--works-fade)),transparent);-webkit-mask-image:linear-gradient(to right,transparent,#000 var(--works-fade),#000 calc(100% - var(--works-fade)),transparent)}.works-row[data-reduced=true][data-wrapped=true] .works-track{width:100%}.works-row[data-reduced=true][data-wrapped=true] .works-group:not([aria-hidden]){grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 24px;width:100%;display:grid}.work-bubble{z-index:2;border:2px solid var(--foreground);width:min(280px,100vw - 16px);box-shadow:4px 4px 0 var(--foreground);background:var(--card);color:var(--foreground);font-family:var(--font-mono),monospace;text-align:left;overflow-wrap:anywhere;padding:10px 12px;font-size:12.5px;line-height:1.6;position:absolute}.work-bubble:before{content:"";height:18px;position:absolute;inset:100% -2px auto}.work-bubble:after{content:"";top:100%;left:var(--arrow-x,50%);background:var(--foreground);clip-path:polygon(0 0,100% 0,100% 20%,85.7% 20%,85.7% 40%,71.4% 40%,71.4% 60%,57.1% 60%,57.1% 100%,42.9% 100%,42.9% 60%,28.6% 60%,28.6% 40%,14.3% 40%,14.3% 20%,0 20%);width:14px;height:10px;position:absolute;transform:translate(-50%)}.footer-links{flex-wrap:wrap;justify-content:center;align-items:baseline;gap:12px 32px;margin:0;padding:0;list-style:none;display:flex}.footer-links a{overflow-wrap:anywhere}.footer-signature{margin-top:56px;overflow:hidden}.footer-signature .wordmark{color:#8fa0e0;width:100%;margin-bottom:-1.5%;-webkit-mask-image:linear-gradient(#000,#0000 95%);mask-image:linear-gradient(#000,#0000 95%)}.contact-dialog{width:min(480px,100% - 32px);max-height:calc(100svh - 32px);color:var(--foreground);margin:auto;padding:0}.contact-dialog::backdrop{background:#1f27318c}html:has(dialog[open]){overflow:hidden}.window-close{border:1px solid var(--foreground);background:var(--card);width:28px;height:26px;color:var(--foreground);margin-left:auto;font-size:24px;line-height:1}.dialog-body{padding:22px}.dialog-body h2{color:var(--primary);margin:0 0 18px;font-size:30px}.dialog-body label{margin-bottom:5px;font-size:14px;display:block}.dialog-body input,.dialog-body textarea{background:var(--card);border:2px solid var(--border);border-radius:0;width:100%;padding:9px;font-size:16px}.dialog-body textarea{resize:vertical}.dialog-body [aria-invalid=true]{border-color:var(--accent)}.field-error{color:var(--accent);margin:4px 0 14px}.field-error,.form-status,.privacy{font-size:12px}.send-button{background:var(--secondary);border:2px solid var(--foreground);width:100%;color:var(--card);box-shadow:3px 3px 0 var(--foreground);margin-top:14px;padding:9px;font-size:21px}.send-button:disabled{cursor:progress;background:var(--primary)}.form-status{min-height:2em;margin-bottom:0}.form-status[data-state=error]{color:var(--accent)}.posts-page{width:min(840px,100% - 40px);margin:0 auto;padding:24px 0 32px}.post-header{align-items:center;gap:24px;margin-bottom:30px;font-size:13px;display:flex}.post-header .lang-toggle{margin-left:auto}.post-logo{flex-shrink:0}.post-logo .logo{width:auto;height:28px}.posts-body{padding:clamp(20px,4vw,48px);font-size:16px;line-height:1.7}.posts-body h1{color:var(--primary);overflow-wrap:anywhere;margin:12px 0 24px;font-size:clamp(30px,4vw,44px);line-height:1.15}.posts-body h2{font-size:28px;line-height:1.3}.post-date{font-size:12px}.post-list{padding:0;list-style:none}.post-list li{border-top:1px solid var(--border);padding:20px 0}.post-content{overflow-wrap:anywhere;margin:36px 0 0}.post-content blockquote,.post-content ol,.post-content p,.post-content pre,.post-content table,.post-content ul{margin:0 0 1.15em}.post-content h2{border-top:2px dashed var(--border);margin:2.2em 0 .6em;padding-top:.6em}.post-content h3{margin:1.8em 0 .5em;font-size:21px}.post-content ol,.post-content ul{padding-left:1.5em}.post-content ul{list-style:square}.post-content ol{list-style:decimal}.post-content li+li{margin-top:.3em}.post-content a{color:var(--primary);text-underline-offset:.18em;text-decoration:underline}.post-content mark{background:var(--signal);color:var(--foreground);padding:0 .15em}.post-content hr{border:0;border-top:2px dashed var(--border);margin:2em 0}.post-content sup{line-height:0}.post-content img{border:1px solid var(--border);max-width:100%;height:auto}.post-content pre{border:2px solid var(--border);background:#f6f8fa;max-width:100%;padding:20px;font-size:14px;line-height:1.65;overflow:auto}.post-content pre code.hljs{background:0 0;padding:0;overflow:visible}.post-content code{font-family:var(--font-mono),monospace}.post-content table{border-collapse:collapse;max-width:100%;display:block;overflow:auto}.post-content td,.post-content th{border:1px solid var(--border);padding:8px}.post-content blockquote{border-left:4px solid var(--accent);margin-left:0;padding-left:20px}@media (max-width:600px){.hero{padding:0 18px}.home-top{top:14px;right:18px}.hero .logo{--intro-scale:2.6;height:30px}.works-item svg{height:20px}.works-viewport{--works-fade:40px}.post-header{gap:12px}.posts-page{width:calc(100% - 32px)}.posts-body{padding:18px}}@media (prefers-reduced-motion:reduce){*,:after,:before{transition:none!important;animation:none!important}html.locale-switching [data-i18n-fade]{opacity:1}html.js:not(.ready) .hero :is(.logo-animated,.headline,.subline,.contact-trigger,.home-top,.pixel-waves,.works-row){visibility:visible}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}