@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/fef07dbb0973bf53-s.3p2_lha1f2xer.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:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/8a480f0b521d4e75-s.1qq4vpdcun5oj.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/53b9e256198e5412-s.390ncx5urfkfu.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/7178b3e590c64307-s.21jp631_3pja2.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-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/caa3a2e1cccd8315-s.p.0wgildi0cnwt9.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:Geist Fallback;src:local(Arial);ascent-override:95.94%;descent-override:28.16%;line-gap-override:0.0%;size-adjust:104.76%}.geist_a71539c9-module__T19VSG__className{font-family:Geist,Geist Fallback;font-style:normal}.geist_a71539c9-module__T19VSG__variable{--font-geist-sans:"Geist", "Geist Fallback"}
@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/5ce348bf30bf5439-s.31988l_ccedte.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:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/4fa387ec64143e14-s.2tuy5pz7dlieh.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/6306c77e7c8268e4-s.2dbetqa9o8jxf.woff2)format("woff2");unicode-range:U+2000-2001,U+2004-2008,U+200A,U+23B8-23BD,U+2500-259F}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/7d817b4c03b0c5f1-s.1uyisp29ctx0d.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/bbc41e54d2fcbd21-s.1rgnod-3esatf.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-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/797e433ab948586e-s.p.0r6juujl39pe6.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:Geist Mono Fallback;src:local(Arial);ascent-override:74.67%;descent-override:21.92%;line-gap-override:0.0%;size-adjust:134.59%}.geist_mono_8d43a2aa-module__8Li5zG__className{font-family:Geist Mono,Geist Mono Fallback;font-style:normal}.geist_mono_8d43a2aa-module__8Li5zG__variable{--font-geist-mono:"Geist Mono", "Geist Mono Fallback"}
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial}}}@layer theme{:root,:host{--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, 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;--animate-spin:spin 1s linear infinite;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{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}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, 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;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{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:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,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{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-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{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.static{position:static}.block{display:block}.contents{display:contents}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.animate-spin{animation:var(--animate-spin)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}}:root{--ink:#101827;--muted:#62708a;--line:#10182724;--paper:#f2f5f7;--paper-strong:#e5ebef;--signal:#ed5d3d;--signal-bright:#ffb347;--cobalt:#1b4dff;--mint:#73cfaa;--card:#ffffffb8;--night:0}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--paper);min-width:320px;color:var(--ink);margin:0;font-family:Arial,Helvetica,sans-serif;overflow-x:hidden}button,input,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}::selection{background:var(--signal-bright);color:var(--ink)}.portfolio-shell{isolation:isolate;background:radial-gradient(circle at 84% 4%, #ffb34738 0, transparent 68%) 0 0 / 42rem 42rem no-repeat, radial-gradient(circle at 6% 38%, #73cfaa2e 0, transparent 68%) 0 0 / 38rem 38rem no-repeat, hsl(210 24% calc(96% - var(--night) * 0.34%));min-height:100vh;transition:background .5s,color .5s;position:relative}.portfolio-shell:before{z-index:-1;content:"";pointer-events:none;opacity:.22;background-image:linear-gradient(#1018271f 1px,#0000 1px),linear-gradient(90deg,#1018271f 1px,#0000 1px);background-size:36px 36px;position:fixed;inset:0;-webkit-mask-image:linear-gradient(#000,#0000 78%);mask-image:linear-gradient(#000,#0000 78%)}.skip-link{z-index:100;background:var(--ink);color:#fff;border-radius:0 0 .75rem .75rem;padding:.75rem 1rem;transition:top .18s;position:fixed;top:-4rem;left:1rem}.skip-link:focus{top:0}.site-header{z-index:30;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);justify-content:space-between;align-items:center;gap:1rem;max-width:1360px;margin:0 auto;padding:1rem clamp(1rem,4vw,3rem);display:flex;position:sticky;top:0}.brand-mark,.hex-button{border:1px solid var(--ink);background:var(--signal);width:3.1rem;height:3.1rem;color:var(--ink);clip-path:polygon(25% 6.7%,75% 6.7%,100% 50%,75% 93.3%,25% 93.3%,0 50%);font-family:var(--font-geist-mono), monospace;letter-spacing:-.13em;place-items:center;font-size:.75rem;font-weight:900;display:inline-grid}.top-nav{border:1px solid var(--line);background:#ffffff7a;border-radius:999px;align-items:center;gap:.15rem;padding:.25rem;display:flex}.top-nav a,.top-nav button{color:var(--ink);cursor:pointer;background:0 0;border:0;border-radius:999px;padding:.55rem .72rem;font-size:.78rem;font-weight:750}.top-nav a:hover,.top-nav button:hover{background:var(--ink);color:#fff}.nav-tools{align-items:center;gap:.5rem;display:flex}.language-toggle,.mode-toggle{border:1px solid var(--line);background:var(--card);min-width:2.65rem;min-height:2.65rem;color:var(--ink);cursor:pointer;font-family:var(--font-geist-mono), monospace;border-radius:50%;justify-content:center;align-items:center;font-size:.69rem;font-weight:850;display:inline-flex}.hero{grid-template-columns:minmax(0,1.03fr) minmax(22rem,.97fr);align-items:center;gap:clamp(2rem,6vw,7rem);max-width:1360px;min-height:calc(100svh - 5.2rem);margin:0 auto;padding:clamp(2rem,5vw,4.5rem) clamp(1rem,4vw,3rem) 5rem;display:grid}.eyebrow{color:var(--muted);font-family:var(--font-geist-mono), monospace;letter-spacing:.08em;text-transform:uppercase;align-items:center;gap:.6rem;margin:0 0 1rem;font-size:.72rem;font-weight:780;display:flex}.eyebrow:before{background:var(--signal);content:"";width:.62rem;height:.62rem;box-shadow:0 0 0 5px var(--signal);border-radius:999px}@supports (color:color-mix(in lab, red, red)){.eyebrow:before{box-shadow:0 0 0 5px color-mix(in srgb, var(--signal), transparent 80%)}}.tamil-greeting{border:1px dashed var(--ink);flex-direction:column;align-items:flex-start;gap:.22rem;margin:-.15rem 0 1rem;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.tamil-greeting{border:1px dashed color-mix(in srgb, var(--ink), transparent 46%)}}.tamil-greeting{background:var(--signal-bright);border-radius:.45rem;padding:.52rem .65rem}@supports (color:color-mix(in lab, red, red)){.tamil-greeting{background:color-mix(in srgb, var(--signal-bright), white 70%)}}.tamil-greeting{color:var(--ink);cursor:pointer;font-family:var(--font-geist-mono), monospace;text-align:left;transform:rotate(-1deg)}.tamil-greeting span{color:var(--muted);letter-spacing:.03em;font-size:.56rem}.tamil-greeting strong{font-size:.9rem}.tamil-greeting:hover,.tamil-greeting:focus-visible{transform:rotate(1deg)translateY(-1px)}.hero h1{letter-spacing:-.085em;max-width:11ch;margin:0;font-size:clamp(3.15rem,8vw,7.25rem);font-weight:850;line-height:.86}.hero h1 .accent{color:var(--signal);display:inline-block;position:relative}.hero h1 .accent:after{background:var(--signal-bright);content:"";border-radius:999px;height:.13em;position:absolute;bottom:-.09em;left:.06em;right:.04em;transform:rotate(-2deg)}.hero-copy{color:#435069;max-width:54ch;margin:1.65rem 0 0;font-size:clamp(1rem,1.55vw,1.17rem);line-height:1.65}.hero-actions,.card-actions,.contact-actions{flex-wrap:wrap;gap:.7rem;margin-top:1.7rem;display:flex}.button{border:1px solid var(--ink);background:var(--ink);color:#fff;cursor:pointer;border-radius:999px;justify-content:center;align-items:center;gap:.5rem;min-height:3rem;padding:.75rem 1.05rem;font-size:.9rem;font-weight:800;transition:transform .18s,background .18s,color .18s;display:inline-flex}.button:hover{transform:translateY(-2px)}.button.secondary{color:var(--ink);background:0 0}.button.signal{border-color:var(--signal);background:var(--signal);color:var(--ink)}.hero-footnotes{color:var(--muted);font-family:var(--font-geist-mono), monospace;flex-wrap:wrap;gap:.55rem 1.3rem;margin-top:2.4rem;font-size:.72rem;display:flex}.hero-footnotes span{align-items:center;gap:.4rem;display:inline-flex}.hero-footnotes span:before{content:"";border:1px solid;border-radius:50%;width:.44rem;height:.44rem}.portrait-stage{border:1px solid var(--line);min-height:min(46rem,73vh);box-shadow:18px 22px 0 var(--ink);background:linear-gradient(145deg,#c9e8ec 0%,#d7d7ef 46%,#ffcc91 100%);position:relative;overflow:hidden}@supports (color:color-mix(in lab, red, red)){.portrait-stage{box-shadow:18px 22px 0 color-mix(in srgb, var(--ink), transparent 89%)}}.portrait-stage:before,.portrait-stage:after{z-index:0;content:"";pointer-events:none;position:absolute}.portrait-stage:before{border:1px dashed #10182759;inset:1rem}.portrait-stage:after{background:var(--signal);opacity:.9;border-radius:50%;width:15rem;height:15rem;top:-4rem;right:-4rem}.portrait-label,.portrait-cursor{z-index:4;border:1px solid var(--ink);color:var(--ink);font-family:var(--font-geist-mono), monospace;letter-spacing:.06em;text-transform:uppercase;background:#f9f6ef;font-size:.68rem;font-weight:800;position:absolute}.portrait-label{padding:.55rem .65rem;top:1.5rem;left:1.5rem;transform:rotate(-3deg)}.portrait-cursor{padding:.55rem .65rem;bottom:1.5rem;right:1.5rem;transform:rotate(3deg)}.portrait-art{z-index:2;object-fit:contain;object-position:right bottom;filter:drop-shadow(-1.2rem 1.7rem #10182724);-webkit-user-select:none;user-select:none;width:min(92%,43rem);height:96%;transition:transform .13s ease-out;position:absolute;bottom:-1.5%;right:-4%}.portrait-glow{z-index:1;aspect-ratio:1;opacity:.74;filter:blur(1px);background:#f8f2d1;border-radius:999px;width:13rem;position:absolute;bottom:11%;left:8%}.signal-slider{z-index:6;color:#fff;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#101827d4;border:1px solid #10182738;border-radius:.75rem;grid-template-columns:auto 1fr auto;align-items:center;gap:.7rem;padding:.72rem .8rem;display:grid;position:absolute;bottom:1rem;left:1rem;right:1rem}.signal-slider input{width:100%;accent-color:var(--signal-bright)}.signal-slider span{font-family:var(--font-geist-mono), monospace;font-size:.66rem;font-weight:800}.section{max-width:1360px;margin:0 auto;padding:clamp(4.5rem,9vw,8rem) clamp(1rem,4vw,3rem)}.section-heading{justify-content:space-between;align-items:flex-end;gap:2rem;margin-bottom:clamp(2rem,5vw,4rem);display:flex}.section-kicker{color:var(--signal);font-family:var(--font-geist-mono), monospace;letter-spacing:.11em;text-transform:uppercase;margin:0 0 .65rem;font-size:.72rem;font-weight:850}.section h2{letter-spacing:-.075em;max-width:13ch;margin:0;font-size:clamp(2.3rem,5vw,5rem);font-weight:850;line-height:.88}.section-intro{max-width:37ch;color:var(--muted);margin:0;font-size:1rem;line-height:1.6}.proof-grid{grid-template-columns:repeat(12,minmax(0,1fr));gap:1rem;display:grid}.proof-card{border:1px solid var(--line);background:var(--card);min-height:14rem;padding:1.35rem;position:relative;overflow:hidden}.proof-card:first-child{color:#f9f7f1;background:#16213e;grid-column:span 5}.proof-card:nth-child(2){background:#f4d491;grid-column:span 4}.proof-card:nth-child(3){background:#bce4d1;grid-column:span 3}.proof-card h3,.work-card h3,.lab-card h3,.contact-card h3{letter-spacing:-.055em;margin:0;font-size:clamp(1.35rem,2.5vw,2rem);font-weight:800;line-height:.98}.proof-card p,.work-card p,.lab-card p,.contact-card p{margin:.75rem 0 0;line-height:1.5}.proof-number{font-family:var(--font-geist-mono), monospace;letter-spacing:-.12em;margin-bottom:.4rem;font-size:clamp(2.8rem,5vw,5rem);font-weight:850;line-height:.85;display:block}.proof-scribble{aspect-ratio:1;opacity:.42;border:.22rem solid;border-radius:49% 51% 44% 56%/44% 48% 52% 56%;width:4rem;position:absolute;bottom:1rem;right:1.2rem;transform:rotate(16deg)}.work-grid{grid-template-columns:repeat(12,minmax(0,1fr));gap:1rem;display:grid}.work-card{border:1px solid var(--line);background:#dce7ee;flex-direction:column;grid-column:span 6;justify-content:flex-end;min-height:31rem;padding:clamp(1.25rem,3vw,2rem);display:flex;position:relative;overflow:hidden}.work-card.wide{grid-column:span 7}.work-card.narrow{grid-column:span 5}.work-card:after{z-index:1;content:"";background:linear-gradient(#09101e05 33%,#09101eeb);position:absolute;inset:0}.work-card-content{z-index:2;color:#fff;max-width:37rem;position:relative}.work-card-content .project-type{color:#e8edf2;font-family:var(--font-geist-mono), monospace;letter-spacing:.06em;text-transform:uppercase;border:1px solid #ffffff59;margin-bottom:.85rem;padding:.34rem .5rem;font-size:.64rem;font-weight:800;display:inline-flex}.work-card-content p{color:#d4dce7;max-width:57ch}.work-image,.proof-image{object-fit:cover;width:100%;height:100%;transition:transform .45s cubic-bezier(.2,.7,0,1);position:absolute;inset:0}.work-card:hover .work-image{transform:scale(1.045)}.tag-row{flex-wrap:wrap;gap:.4rem;margin-top:1rem;display:flex}.tag{color:inherit;font-family:var(--font-geist-mono), monospace;border:1px solid;border-radius:999px;padding:.28rem .52rem;font-size:.62rem;font-weight:720}.proof-shelf{grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem;display:grid}.proof-shot{aspect-ratio:1.37;border:1px solid var(--line);background:var(--paper-strong);display:block;position:relative;overflow:hidden}.proof-shot img{object-fit:cover;width:100%;height:100%;transition:transform .26s}.proof-shot:hover img{transform:scale(1.05)}.proof-shot span{color:#fff;font-family:var(--font-geist-mono), monospace;background:#101827d6;padding:.45rem .55rem;font-size:.61rem;font-weight:800;position:absolute;bottom:.65rem;left:.65rem;right:.65rem}.open-source-list{border-top:1px solid var(--line);display:grid}.open-source-item{border-bottom:1px solid var(--line);grid-template-columns:1fr auto auto;align-items:center;gap:1.25rem;padding:1.25rem 0;transition:padding .2s,color .2s;display:grid}.open-source-item:hover{background:var(--signal-bright);padding-left:.8rem;padding-right:.8rem}@supports (color:color-mix(in lab, red, red)){.open-source-item:hover{background:color-mix(in srgb, var(--signal-bright), transparent 82%)}}.open-source-item strong{letter-spacing:-.035em;font-size:clamp(1rem,2vw,1.35rem)}.open-source-item span,.open-source-item small{color:var(--muted);font-family:var(--font-geist-mono), monospace;font-size:.68rem}.route-section{padding-top:0}.route-card{color:#f5f5ec;background:#101827;border:1px solid #101827;grid-template-columns:.9fr 1.1fr;gap:clamp(1.5rem,5vw,4rem);padding:clamp(1.5rem,5vw,4rem);display:grid;position:relative;overflow:hidden}.route-card:before{z-index:0;content:"";opacity:.43;background-image:radial-gradient(#3d4a62 1px,#0000 1px);background-size:18px 18px;position:absolute;inset:0}.route-card>*{z-index:1;position:relative}.route-card h2{max-width:8ch}.route-card .section-kicker,.route-card .section-intro{color:#cdd7e5}.route-preview{align-content:center;min-height:18rem;display:grid}.route-line{background:linear-gradient(90deg, var(--mint), var(--signal), var(--signal-bright));justify-content:space-between;align-items:center;height:.5rem;margin:0 1.5rem;display:flex;position:relative}.route-stop{background:#f5f5ec;border:3px solid #101827;border-radius:50%;width:1.45rem;height:1.45rem;position:relative}.route-stop:after{color:#cdd7e5;content:attr(data-label);font-family:var(--font-geist-mono), monospace;white-space:nowrap;font-size:.59rem;font-weight:700;position:absolute;top:1.8rem;left:50%;transform:translate(-50%)}.rover-mini{background:var(--signal);border:3px solid #101827;border-radius:.45rem .8rem .55rem .55rem;width:3.8rem;height:2.2rem;position:absolute;top:-2.25rem;left:30%;box-shadow:0 .7rem 0 -.25rem #101827}.rover-mini:before,.rover-mini:after{content:"";background:#f5f5ec;border:2px solid #101827;border-radius:50%;width:.75rem;height:.75rem;position:absolute;bottom:-.75rem}.rover-mini:before{left:.35rem}.rover-mini:after{right:.35rem}.lab-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;display:grid}.lab-card{border:1px solid var(--line);background:var(--card);min-height:19rem;padding:1.35rem}.lab-card .lab-index{color:var(--signal);font-family:var(--font-geist-mono), monospace;margin-bottom:2.6rem;font-size:.7rem;font-weight:850;display:block}.private-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem;display:grid}.private-card{border:1px solid var(--line);border-top:3px solid var(--signal);background:var(--card);min-height:16rem}@supports (color:color-mix(in lab, red, red)){.private-card{background:color-mix(in srgb, var(--card), var(--signal-bright) 7%)}}.private-card{padding:1.2rem}.private-card>span{color:var(--signal);font-family:var(--font-geist-mono), monospace;letter-spacing:.05em;text-transform:uppercase;font-size:.63rem;font-weight:760}.private-card h3{margin:2rem 0 0;font-size:1.25rem;line-height:1.04}.private-card p{color:var(--muted);margin:.75rem 0 0;font-size:.9rem;line-height:1.55}.contact-grid{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:1rem;display:grid}.contact-card{border:1px solid var(--line);background:#ffd17f;padding:clamp(1.35rem,4vw,2.8rem);overflow:hidden}.contact-card h2{max-width:9ch}.contact-sidekick{border:1px solid var(--line);background:#c7e6eb;min-height:24rem;position:relative;overflow:hidden}.contact-sidekick img{object-fit:cover;object-position:top center;mix-blend-mode:multiply;width:94%;height:100%;position:absolute;bottom:0;right:0}.contact-sidekick p{z-index:2;max-width:20ch;font-family:var(--font-geist-mono), monospace;background:#f8f4ea;margin:0;padding:.65rem;font-size:.75rem;font-weight:780;line-height:1.35;position:absolute;top:1rem;left:1rem;transform:rotate(-2deg)}.contact-form{gap:.95rem;margin-top:1.65rem;display:grid}.contact-form label{font-family:var(--font-geist-mono), monospace;text-transform:uppercase;gap:.43rem;font-size:.67rem;font-weight:800;display:grid}.contact-form input,.contact-form textarea{width:100%;color:var(--ink);background:#ffffffa3;border:1px solid #10182752;border-radius:.2rem;outline:none;padding:.78rem}.contact-form textarea{resize:vertical;min-height:7rem}.contact-form input:focus,.contact-form textarea:focus{border-color:var(--ink);box-shadow:0 0 0 3px #1018271f}.form-result{min-height:1.1rem;font-family:var(--font-geist-mono), monospace;margin:0;font-size:.73rem;font-weight:700}.site-footer{border-top:1px solid var(--line);max-width:1360px;color:var(--muted);font-family:var(--font-geist-mono), monospace;justify-content:space-between;align-items:center;gap:1rem;margin:0 auto;padding:1.4rem clamp(1rem,4vw,3rem) 2rem;font-size:.68rem;display:flex}.sidekick-toast{z-index:50;pointer-events:none;align-items:flex-end;gap:.4rem;width:min(20rem,100vw - 2.4rem);display:flex;position:fixed;bottom:1.2rem;left:1.2rem}.sidekick-toast img{object-fit:cover;object-position:top center;mix-blend-mode:multiply;border-radius:.4rem;width:7.2rem;height:7.2rem}.sidekick-bubble{border:1px solid var(--ink);color:var(--ink);font-family:var(--font-geist-mono), monospace;box-shadow:.35rem .35rem 0 var(--ink);background:#f8f4ea;margin-bottom:.5rem;padding:.7rem;font-size:.68rem;font-weight:760;line-height:1.35}.boot-screen{z-index:90;color:#f7f2e8;background:#101827;place-items:center;display:grid;position:fixed;inset:0}.boot-screen>div{justify-items:center;gap:1rem;display:grid}.boot-hex{background:var(--signal);color:#101827;clip-path:polygon(25% 6.7%,75% 6.7%,100% 50%,75% 93.3%,25% 93.3%,0 50%);width:5rem;height:5rem;font-family:var(--font-geist-mono), monospace;letter-spacing:-.15em;place-items:center;font-weight:900;animation:1s ease-in-out infinite boot-pulse;display:grid}.boot-screen p{color:#c9d2df;font-family:var(--font-geist-mono), monospace;letter-spacing:.12em;text-transform:uppercase;margin:0;font-size:.67rem;font-weight:750}@keyframes boot-pulse{50%{transform:scale(.9)rotate(8deg)}}@media (max-width:980px){.top-nav{display:none}.hero{grid-template-columns:1fr}.portrait-stage{min-height:34rem}.proof-card:nth-child(n),.work-card,.work-card.wide,.work-card.narrow{grid-column:span 6}.proof-shelf{grid-template-columns:repeat(2,minmax(0,1fr))}.route-card,.contact-grid{grid-template-columns:1fr}.lab-grid,.private-grid{grid-template-columns:1fr 1fr}}@media (max-width:620px){.site-header{padding-top:.7rem;padding-bottom:.7rem}.hero{min-height:auto;padding-top:2rem}.hero h1{font-size:clamp(3.3rem,17vw,5.3rem)}.portrait-stage{min-height:27rem}.portrait-art{width:108%;right:-16%}.section-heading{display:block}.section-intro{margin-top:1.2rem}.proof-card:nth-child(n),.work-card,.work-card.wide,.work-card.narrow{grid-column:span 12}.proof-shelf,.lab-grid,.private-grid{grid-template-columns:1fr}.open-source-item{grid-template-columns:1fr auto}.open-source-item small{display:none}.route-preview{min-height:12rem}.route-stop:nth-of-type(odd){transform:translateY(.5rem)}.site-footer{flex-direction:column;align-items:flex-start}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.tour-shell,.arcade-shell{color:#eef0ea;min-height:100svh;font-family:Arial,Helvetica,sans-serif}.tour-shell{background:#112238;transition:background .9s;overflow:hidden}.tour-shell.is-night{background:#07101d}.tour-header,.arcade-header{font-family:var(--font-geist-mono), monospace;letter-spacing:.08em;border-bottom:1px solid #eef0ea2e;justify-content:space-between;align-items:center;gap:1rem;padding:1.15rem clamp(1rem,4vw,3rem);font-size:.72rem;font-weight:850;display:flex}.tour-brand,.arcade-header>a{color:#ffb347}.tour-tools,.arcade-header>div{align-items:center;gap:.45rem;display:flex}.tour-tools button,.arcade-header button{color:inherit;cursor:pointer;background:0 0;border:1px solid #eef0ea47;border-radius:999px;align-items:center;gap:.4rem;padding:.5rem .65rem;font-family:inherit;font-size:.65rem;font-weight:800;display:inline-flex}.tour-main{grid-template-columns:minmax(18rem,.82fr) minmax(30rem,1.18fr);min-height:calc(100svh - 4.3rem);display:grid}.tour-copy{flex-direction:column;justify-content:center;min-height:100%;padding:clamp(2rem,6vw,6rem);display:flex}.tour-kicker,.tour-index,.arcade-kicker,.arcade-level{color:#aebdd0;font-family:var(--font-geist-mono), monospace;letter-spacing:.11em;text-transform:uppercase;font-size:.69rem;font-weight:800}.tour-index{color:#ffb347;margin:2.8rem 0 .6rem}.tour-copy h1,.arcade-sidebar h1,.arcade-stage h2{letter-spacing:-.07em;margin:0;font-weight:850;line-height:.9}.tour-copy h1{font-size:clamp(3rem,5vw,5.8rem)}.tour-copy>p:not(.tour-kicker):not(.tour-index):not(.tour-toast){color:#c7d1de;max-width:38ch;font-size:1rem;line-height:1.6}.tour-actions{gap:.6rem;margin-top:1.5rem;display:flex}.tour-actions button,.final-stamp button{color:#eef0ea;cursor:pointer;background:0 0;border:1px solid #eef0ea;border-radius:999px;align-items:center;gap:.45rem;padding:.76rem .95rem;font-weight:800;display:inline-flex}.tour-actions .tour-next,.final-stamp button{color:#112238;background:#ffb347;border-color:#ffb347}.tour-actions button:disabled{opacity:.36;cursor:not-allowed}.tour-toast{color:#72d1af;min-height:1rem;font-family:var(--font-geist-mono), monospace;margin:1.2rem 0 0;font-size:.7rem;line-height:1.4}.tour-map{background:#b8ddeb;border-left:1px solid #eef0ea2e;min-height:34rem;transition:filter .9s,background .9s;position:relative;overflow:hidden}.is-night .tour-map{filter:saturate(.72)brightness(.66);background:#15213d}.tour-sky{background:radial-gradient(circle at 76% 20%,#ffe49c 0 2.7rem,#0000 2.8rem),linear-gradient(#72cbe1,#b8ddeb 57%,#f0b66e 58%);transition:opacity .9s;position:absolute;inset:0}.is-night .tour-sky{opacity:.3}.tour-hills{background:#496a68;border-radius:50% 50% 0 0;width:80%;height:36%;position:absolute;bottom:22%;transform:rotate(-7deg)}.hill-one{left:-21%}.hill-two{background:#375a5a;bottom:17%;right:-31%;transform:rotate(8deg)}.tour-road{background:#4b5565;border-top:.7rem solid #26354b;border-bottom:.7rem solid #26354b;height:16%;position:absolute;bottom:10%;left:-9%;right:-11%;transform:rotate(-3deg)}.road-dash{background:#f9ebc7;width:12%;height:.35rem;margin-left:12%;display:inline-block;position:relative;top:50%;transform:translateY(-50%)}.tour-rover{z-index:5;background:var(--marker-color);border:.22rem solid #172033;border-radius:.5rem 1rem .45rem .45rem;width:5rem;height:2.4rem;transition:left .72s cubic-bezier(.2,.9,.2,1),background .4s;position:absolute;bottom:calc(16% - 1.2rem);box-shadow:0 .72rem 0 -.28rem #172033}.rover-window{background:#c8eff0;border:.16rem solid #172033;border-radius:.25rem .45rem .12rem .12rem;width:1.55rem;height:.75rem;position:absolute;top:.33rem;left:1.45rem}.rover-light{background:#ffe86e;border-radius:50%;width:.4rem;height:.4rem;position:absolute;top:.92rem;right:-.19rem;box-shadow:0 0 .45rem #ffe86e}.tour-rover i{background:#eef0ea;border:.19rem solid #172033;border-radius:50%;width:.9rem;height:.9rem;position:absolute;bottom:-.45rem}.tour-rover i:first-of-type{left:.45rem}.tour-rover i:last-of-type{right:.45rem}.tour-stations button{z-index:7;color:#172033;cursor:pointer;background:0 0;border:0;justify-items:center;gap:.35rem;display:grid;position:absolute;bottom:calc(28% + 1.2rem);transform:translate(-50%)}.tour-stations button:before{content:"";width:1rem;height:1rem;box-shadow:0 0 0 .25rem var(--station-color);background:#eef0ea;border:.2rem solid #172033;border-radius:50%}@supports (color:color-mix(in lab, red, red)){.tour-stations button:before{box-shadow:0 0 0 .25rem color-mix(in srgb, var(--station-color), transparent 65%)}}.tour-stations button.active:before{background:var(--station-color);box-shadow:0 0 0 .44rem var(--station-color), 0 0 1rem var(--station-color)}@supports (color:color-mix(in lab, red, red)){.tour-stations button.active:before{box-shadow:0 0 0 .44rem color-mix(in srgb, var(--station-color), transparent 45%), 0 0 1rem var(--station-color)}}.tour-stations button.visited:before{background:var(--station-color)}.tour-stations button span{font-family:var(--font-geist-mono), monospace;font-size:.61rem;font-weight:900}.tour-stations button small{font-family:var(--font-geist-mono), monospace;font-size:.57rem}.tour-sign{z-index:3;background:var(--sign-color);color:#172033;border:.22rem solid #172033;gap:.25rem;width:8rem;padding:.75rem;display:grid;position:absolute;top:17%;right:10%;transform:rotate(3deg);box-shadow:.5rem .5rem #172033}.tour-sign span,.tour-sign small{font-family:var(--font-geist-mono), monospace;font-weight:900}.tour-sign small{font-size:.6rem}.tour-moon{color:#f8f1ba;opacity:0;transition:opacity .7s;position:absolute;top:2rem;right:2rem}.is-night .tour-moon{opacity:1}.tour-footer{color:#b8c5d4;font-family:var(--font-geist-mono), monospace;letter-spacing:.05em;border-top:1px solid #eef0ea2e;flex-wrap:wrap;gap:.7rem 1.3rem;padding:.9rem clamp(1rem,4vw,3rem);font-size:.62rem;font-weight:780;display:flex}.tour-footer a{color:#ffb347;align-items:center;gap:.35rem;display:inline-flex}.arcade-shell{background:#171923}.arcade-header{color:#fbe8c1;border-color:#fae8c136}.arcade-header>a{color:#f06a48}.arcade-main{grid-template-columns:minmax(17rem,.7fr) minmax(0,1.3fr);min-height:calc(100svh - 4.25rem);display:grid}.arcade-sidebar{background:#222534;border-right:1px solid #fae8c12e;flex-direction:column;padding:clamp(1.7rem,4.5vw,4rem);display:flex}.arcade-kicker{color:#f06a48;margin:0}.arcade-sidebar h1{color:#fbe8c1;max-width:7ch;margin-top:1.4rem;font-size:clamp(2.5rem,4.5vw,4.6rem)}.arcade-sidebar>p:not(.arcade-kicker){color:#afb2c1;max-width:30ch;line-height:1.6}.level-list{grid-template-columns:repeat(5,1fr);gap:.45rem;margin-top:2.5rem;display:grid}.level-list span{aspect-ratio:1;color:#727687;font-family:var(--font-geist-mono), monospace;border:1px solid #4c5060;place-items:center;font-size:.61rem;font-weight:850;display:grid}.level-list span.done{color:#171923;background:#72d1af;border-color:#72d1af}.level-list span.current{color:#fbe8c1;border-color:#f06a48;box-shadow:inset 0 0 0 2px #f06a48}.arcade-home{color:#fbe8c1;font-family:var(--font-geist-mono), monospace;align-items:center;gap:.45rem;margin-top:auto;font-size:.68rem;font-weight:780;display:inline-flex}.arcade-stage{background:linear-gradient(135deg,#f06a4838,#0000 46%),radial-gradient(circle at 79% 22%,#72d1af40 0 1.6rem,#0000 1.7rem),#171923;flex-direction:column;justify-content:center;align-items:flex-start;min-height:38rem;padding:clamp(2rem,7vw,7rem);display:flex;position:relative;overflow:hidden}.arcade-stage:before{content:"";pointer-events:none;border:1px dashed #515666;position:absolute;inset:1.2rem}.arcade-stage>*{z-index:1;position:relative}.arcade-level{color:#72d1af;margin:0}.arcade-stage h2{color:#fbe8c1;max-width:10ch;margin-top:.8rem;font-size:clamp(3rem,7vw,7.2rem)}.arcade-prompt{color:#bfc4d0;max-width:40ch;line-height:1.55}.arcade-puzzle{place-items:center;width:min(100%,36rem);min-height:12rem;margin-top:1.4rem;display:grid}.puzzle-button{color:#171923;cursor:pointer;min-width:min(100%,18rem);min-height:4.8rem;font-family:var(--font-geist-mono), monospace;letter-spacing:-.04em;background:#f06a48;border:.22rem solid #fbe8c1;justify-content:center;align-items:center;gap:.65rem;font-weight:900;display:inline-flex}.puzzle-button.pulse{animation:1.3s ease-in-out infinite small-pulse}.puzzle-button.double{background:#a99dff;border-radius:50%;min-width:12rem;min-height:12rem}.puzzle-button.anomaly{background:#72d1af;transform:rotate(-3deg)}@keyframes small-pulse{50%{transform:scale(1.05)rotate(-1deg)}}.hold-button{color:#fbe8c1;cursor:pointer;text-align:left;background:#222534;border:.2rem solid #fbe8c1;grid-template-columns:1fr auto;align-items:center;gap:1rem;width:min(100%,23rem);min-height:5rem;padding:1rem;display:grid;position:relative;overflow:hidden}.hold-button>span{opacity:.76;background:#72d1af;transition:width 20ms linear;position:absolute;inset:0 auto 0 0}.hold-button b,.hold-button small{z-index:1;font-family:var(--font-geist-mono), monospace;position:relative}.hold-button small{font-weight:800}.choice-grid{grid-template-columns:repeat(3,1fr);gap:.6rem;width:min(100%,34rem);display:grid}.choice-grid button,.sequence-puzzle button{color:#fbe8c1;cursor:pointer;min-height:5.5rem;font-family:var(--font-geist-mono), monospace;background:#222534;border:.16rem solid #fbe8c1;font-weight:900}.choice-grid button:hover,.sequence-puzzle button:hover{color:#171923;background:#ffb347}.sequence-puzzle{grid-template-columns:repeat(3,1fr);gap:.6rem;width:min(100%,28rem);display:grid}.sequence-display{color:#72d1af;min-height:3rem;font-family:var(--font-geist-mono), monospace;letter-spacing:.3em;text-align:center;border-bottom:1px solid #727687;grid-column:1/-1;font-size:1.3rem;font-weight:900}.arcade-message{color:#72d1af;min-height:1.5rem;font-family:var(--font-geist-mono), monospace;margin:2rem 0 0;font-size:.7rem;font-weight:750}.ghost-layer{z-index:50;color:#171923;letter-spacing:-.12em;text-align:center;background:#f5edda;place-items:center;font-size:clamp(4rem,18vw,15rem);font-weight:900;line-height:.73;animation:.7s cubic-bezier(.18,.89,.32,1.28) both ghost-pop;display:grid;position:fixed;inset:0}@keyframes ghost-pop{0%{opacity:0;transform:scale(.7)rotate(-6deg)}18%{opacity:1}to{opacity:1;transform:scale(1)rotate(0)}}.final-stamp{max-width:35rem}.final-stamp>span{color:#72d1af;width:7rem;height:7rem;font-family:var(--font-geist-mono), monospace;border:.3rem solid #72d1af;border-radius:50%;place-items:center;font-size:2.2rem;font-weight:900;display:inline-grid;transform:rotate(-10deg)}.final-stamp h2{max-width:10ch;margin-top:1.4rem}.final-stamp p{color:#bfc4d0;max-width:38ch;line-height:1.5}@media (max-width:840px){.tour-main,.arcade-main{grid-template-columns:1fr}.tour-map{border-top:1px solid #eef0ea2e;border-left:0;min-height:30rem}.arcade-sidebar{border-bottom:1px solid #fae8c12e;border-right:0}.arcade-sidebar h1{max-width:12ch}.arcade-home{margin-top:2.3rem}}@media (max-width:540px){.tour-header,.arcade-header{flex-direction:column;align-items:flex-start}.tour-copy{min-height:34rem}.tour-copy h1{font-size:clamp(3rem,14vw,4.3rem)}.tour-stations button span{writing-mode:vertical-rl;transform:rotate(180deg)}.tour-stations button small{display:none}.tour-sign{top:11%;right:6%}.arcade-stage{min-height:34rem;padding:2rem 1.25rem}.arcade-stage h2{font-size:clamp(3.2rem,14vw,5.4rem)}.choice-grid{grid-template-columns:1fr}}@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}@keyframes spin{to{transform:rotate(360deg)}}
