@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/fef07dbb0973bf53-s.00az9qtie3ho1.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.3j-a226dh71aj.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.2gwoz23eiro2t.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.0i3h3th1vs4m7.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.0zr6hhvz-h9nw.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.27spqqad3wyeo.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.3f4zuumv8svu0.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.34r5yzckw0h2s.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.2jyz_zw3a8jit.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.30bdpjkrtcces.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.1v5bejj26fx9h.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 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;--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}.grid{display:grid}.resize{resize:both}}:root{--background:#08090a;--surface:#0d0f11;--text:#f1f1ee;--muted:#929498;--faint:#55585d;--border:#ffffff1a;--border-strong:#ffffff2b;--accent:#34d8ff;--font-sans:var(--font-geist-sans);--font-mono:var(--font-geist-mono)}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;background:var(--background)}body{background:var(--background);color:var(--text);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;font-weight:400;overflow-x:hidden}::selection{background:var(--accent);color:var(--background)}a{color:inherit;text-decoration:none}button,a{-webkit-tap-highlight-color:transparent}.section{align-items:center;width:100%;min-height:100vh;display:flex;position:relative}.section-inner{z-index:2;width:min(1480px,100% - 104px);margin:0 auto;position:relative}.section-heading>p,.eyebrow{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.14em;color:var(--muted);font-size:.74rem;font-weight:400}
.site-header{z-index:100;pointer-events:none;position:fixed;inset:0 0 auto}.nav-container{pointer-events:auto;justify-content:space-between;align-items:center;width:min(1480px,100% - 104px);height:92px;margin:0 auto;display:flex}.nav-logo{font-family:var(--font-mono);letter-spacing:.04em;font-size:.82rem;font-weight:500;position:relative}.nav-logo:after{content:"";background:var(--accent);transform-origin:0;width:100%;height:1px;transition:transform .18s;position:absolute;bottom:-7px;left:0;transform:scaleX(0)}.nav-logo:hover:after{transform:scaleX(1)}.nav-links{align-items:center;gap:38px;font-size:.86rem;display:flex}.nav-links a{color:#f1f1eebd;transition:color .18s,opacity .18s;position:relative}.nav-links a:hover,.nav-links a:last-child{color:var(--text)}
.hero-section{min-height:100svh;position:relative;overflow:hidden}.hero-environment{pointer-events:none;position:absolute;inset:0;overflow:hidden}.hero-environment:before{content:"";opacity:.7;background-image:linear-gradient(#ffffff06 1px,#0000 1px),linear-gradient(90deg,#ffffff06 1px,#0000 1px);background-size:80px 80px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(90deg,#0000 0%,#0003 35%,#000 100%);mask-image:linear-gradient(90deg,#0000 0%,#0003 35%,#000 100%)}.hero-environment:after{content:"";filter:blur(10px);background:radial-gradient(circle,#34d8ff14 0%,#34d8ff06 38%,#0000 70%);border-radius:50%;width:800px;height:800px;position:absolute;top:-200px;right:-250px}.hero-content{flex-direction:column;justify-content:space-between;min-height:100svh;padding-top:92px;padding-bottom:52px;display:flex}.hero-meta{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.12em;color:var(--muted);justify-content:space-between;align-items:center;padding-top:60px;font-size:.72rem;display:flex}.hero-status{align-items:center;gap:10px;display:flex}.status-dot{background:var(--accent);border-radius:50%;width:6px;height:6px;box-shadow:0 0 12px #34d8ff99}.hero-main{margin-top:auto;margin-bottom:auto;padding:90px 0 60px}.hero-title{letter-spacing:-.065em;flex-direction:column;width:fit-content;max-width:none;margin-top:28px;font-size:clamp(5rem,7.6vw,9.2rem);font-weight:400;line-height:.86;display:flex}.hero-title>span{color:var(--text)}.hero-title strong{white-space:nowrap;width:fit-content;font-weight:600;position:relative}.hero-bottom{grid-template-columns:minmax(320px,620px) auto;align-items:end;gap:72px;margin-top:62px;display:grid}.hero-description{max-width:600px;color:var(--muted);font-size:1.08rem;line-height:1.7}.hero-actions{gap:34px;display:flex}.hero-link{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.05em;color:var(--muted);align-items:center;gap:9px;font-size:.78rem;transition:color .18s,transform .18s;display:inline-flex}.hero-link:hover{color:var(--text)}.hero-link:hover span:last-child{transform:translate(2px,-2px)}.hero-link span:last-child{transition:transform .18s}.hero-link-primary{color:var(--text)}
.selected-work{background:var(--background);height:500vh;position:relative}.selected-work-sticky{align-items:stretch;width:100%;height:100svh;display:flex;position:sticky;top:0;overflow:hidden}.selected-work-inner{grid-template-rows:auto auto minmax(0,1fr);height:100%;padding-top:118px;padding-bottom:46px;display:grid}.selected-work-heading{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.12em;color:var(--muted);justify-content:space-between;align-items:center;margin-bottom:34px;font-size:.72rem;display:flex}.selected-work-progress{color:var(--faint);gap:6px;display:flex}.selected-work-progress span:first-child{color:var(--text)}.project-tabs{border-top:1px solid var(--border);border-bottom:1px solid var(--border);grid-template-columns:repeat(5,1fr);display:grid}.project-tab{min-height:76px;color:var(--faint);font-family:var(--font-mono);text-align:left;text-transform:uppercase;letter-spacing:.06em;cursor:pointer;background:0 0;border:0;align-items:center;gap:10px;padding:0;font-size:.7rem;transition:color .25s,opacity .25s;display:flex;position:relative}.project-tab:not(:last-child){border-right:1px solid var(--border)}.project-tab span:first-child{opacity:.55}.project-tab:after{content:"";background:var(--accent);transform-origin:0;width:100%;height:1px;transition:transform .35s;position:absolute;bottom:-1px;left:0;transform:scaleX(0)}.project-tab:hover,.project-tab.is-active{color:var(--text)}.project-tab.is-active:after{transform:scaleX(1)}.project-showcase{grid-template-columns:minmax(280px,.75fr) minmax(0,1.65fr);align-items:center;gap:clamp(50px,6vw,110px);min-height:0;padding:56px 0 10px;display:grid}.project-copy{flex-direction:column;align-self:center;min-width:0;min-height:0;display:flex}.project-category{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.1em;color:var(--muted);margin-bottom:20px;font-size:.7rem}.project-copy h2{letter-spacing:-.055em;font-size:clamp(3.4rem,5vw,6.5rem);font-weight:500;line-height:.9}.project-description{max-width:420px;color:var(--muted);margin-top:26px;font-size:1rem;line-height:1.65}.project-technologies{flex-wrap:wrap;gap:8px 18px;margin-top:24px;display:flex}.project-technologies span{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.07em;color:var(--faint);font-size:.66rem}.project-actions{flex-wrap:wrap;align-items:center;gap:14px 24px;margin-top:30px;display:flex}.project-link{width:fit-content;font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.06em;color:var(--text);flex-shrink:0;align-items:center;gap:9px;font-size:.72rem;display:inline-flex}.project-link span{transition:transform .18s}.project-link:hover span{transform:translate(3px,-3px)}.project-case-study-link{width:fit-content;font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.06em;color:var(--muted);align-items:center;gap:9px;font-size:.72rem;transition:color .18s;display:inline-flex}.project-case-study-link span{color:var(--accent);transition:transform .18s}.project-case-study-link:hover{color:var(--text)}.project-case-study-link:hover span{transform:translate(3px)}.project-visual{border:1px solid var(--border);background-color:#0000;background-image:linear-gradient(#ffffff05 1px,#0000 1px),linear-gradient(90deg,#ffffff05 1px,#0000 1px);background-position:0 0,0 0;background-repeat:repeat,repeat;background-size:48px 48px;background-attachment:scroll,scroll;background-origin:padding-box,padding-box;background-clip:border-box,border-box;height:min(58vh,620px);min-height:420px;position:relative;overflow:hidden}.project-visual:after{content:"";pointer-events:none;background:radial-gradient(circle,#34d8ff0d,#0000 68%);border-radius:50%;width:500px;height:500px;position:absolute;inset:auto -150px -250px auto}.project-visual-inner{color:var(--faint);flex-direction:column;justify-content:center;align-items:center;gap:14px;display:flex;position:absolute;inset:0}.project-visual-inner span{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.08em;font-size:.66rem}.project-visual-inner strong{color:#f1f1ee1f;letter-spacing:-.06em;font-size:clamp(3rem,6vw,7rem);line-height:.9}.project-copy h2.project-title-long{letter-spacing:-.045em;font-size:clamp(3rem,4.15vw,4.9rem);line-height:.92}
.experience-section{padding:112px 0 96px}.section-heading h2{letter-spacing:-.04em;margin-top:20px;font-size:clamp(3rem,5vw,5rem)}.experience-list{margin-top:28px}.experience-item{border-top:1px solid #ffffff26;overflow:hidden}.experience-item:last-child{border-bottom:1px solid #ffffff26}.experience-summary{grid-template-columns:180px 1fr 1fr auto;align-items:center;gap:48px;min-height:112px;display:grid}.experience-summary h3{font-size:1.5rem;font-weight:400}.experience-period,.experience-role{color:var(--text)}.experience-indicator{width:24px;height:24px;font-family:var(--font-mono);color:var(--faint);transform-origin:50%;justify-content:center;align-items:center;font-size:.9rem;line-height:1;transition:color .2s,transform .3s;display:inline-flex}.experience-item:hover .experience-indicator{color:var(--accent);transform:rotate(45deg)}.experience-details{opacity:0;grid-template-columns:180px minmax(0,1fr);gap:0 48px;max-height:0;transition:max-height .42s,opacity .26s,transform .42s,padding .42s;display:grid;transform:translateY(-8px)}.experience-details p{max-width:720px;color:var(--muted);grid-column:2/-1;margin-bottom:12px;font-size:.96rem;line-height:1.55}.experience-item:hover .experience-details{opacity:1;max-height:220px;padding:0 0 32px;transform:translateY(0)}
.about-section{min-height:auto;padding:72px 0 64px;display:block}.about-section .section-heading{margin-bottom:36px}.about-layout{grid-template-columns:minmax(0,1.2fr) minmax(340px,.8fr);align-items:start;gap:clamp(64px,7vw,110px);display:grid}.about-title-group{flex-direction:column;align-items:flex-start;display:flex}.about-title-group h2{letter-spacing:-.05em;max-width:760px;font-size:clamp(3.5rem,5.7vw,6.7rem);line-height:.94}.about-lead{max-width:430px;color:var(--text);margin-top:34px;font-size:clamp(1.05rem,1.22vw,1.28rem);line-height:1.5}.about-copy{max-width:520px;color:var(--muted);padding-top:56px}.about-copy>p{font-size:clamp(1rem,1.18vw,1.22rem);line-height:1.6}.about-meta{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.08em;color:var(--faint);flex-wrap:wrap;gap:8px 18px;margin-top:28px;font-size:.66rem;display:flex}.about-meta span{position:relative}.about-meta span:not(:last-child):after{content:"·";color:#ffffff2e;margin-left:18px}
.tools-section{border-top:1px solid #ffffff26;border-bottom:1px solid #ffffff26;width:100%;padding:46px 0 50px}.tools-list{flex-wrap:wrap;gap:14px 30px;margin-top:26px;font-size:1.1rem;display:flex}
.playground-section{background:var(--background);padding:120px 0 140px}.playground-heading{margin-bottom:64px}.playground-heading h2{letter-spacing:-.05em;max-width:1100px;margin-top:20px;font-size:clamp(3.4rem,5.5vw,6.5rem);line-height:.95}.playground-heading h2 span{display:block}.playground-heading h2 span+span{margin-left:-.035em}.playground-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px;display:grid}.playground-card{border:1px solid var(--border);background:linear-gradient(#ffffff05,#ffffff02);min-width:0;overflow:hidden}.playground-card-featured{grid-column:1/-1}.playground-card-secondary{min-height:480px}.playground-card-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:flex-start;gap:24px;min-height:96px;padding:22px 24px;display:flex}.playground-card-header>div>span,.playground-card-meta{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.08em;color:var(--faint);font-size:.64rem}.playground-card-header h3{letter-spacing:-.04em;margin-top:8px;font-size:clamp(2rem,3vw,3.2rem);font-weight:500;line-height:1}.playground-card-meta{white-space:nowrap;padding-top:4px}.playground-preview{border-bottom:1px solid var(--border);background-color:#0000;background-image:linear-gradient(#ffffff05 1px,#0000 1px),linear-gradient(90deg,#ffffff05 1px,#0000 1px);background-position:0 0,0 0;background-repeat:repeat,repeat;background-size:40px 40px;background-attachment:scroll,scroll;background-origin:padding-box,padding-box;background-clip:border-box,border-box;min-height:300px;position:relative;overflow:hidden}.playground-card-featured .playground-preview{min-height:420px}.preview-placeholder{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.1em;color:#f1f1ee47;place-items:center;font-size:.72rem;display:grid;position:absolute;inset:0}.field-placeholder{position:absolute;inset:0}.field-placeholder span{background:#f1f1ee52;border-radius:50%;width:4px;height:4px;position:absolute}.field-placeholder span:first-child{top:22%;left:12%}.field-placeholder span:nth-child(2){top:68%;left:24%}.field-placeholder span:nth-child(3){top:30%;left:38%}.field-placeholder span:nth-child(4){top:52%;left:55%}.field-placeholder span:nth-child(5){top:28%;left:72%}.field-placeholder span:nth-child(6){top:64%;left:86%}.field-placeholder span:nth-child(7){top:46%;left:18%}.field-placeholder span:nth-child(8){top:78%;left:31%}.field-placeholder span:nth-child(9){top:62%;left:45%}.field-placeholder span:nth-child(10){top:18%;left:62%}.field-placeholder span:nth-child(11){top:72%;left:78%}.field-placeholder span:nth-child(12){top:38%;left:90%}.field-placeholder span:nth-child(13){top:82%;left:10%}.field-placeholder span:nth-child(14){top:18%;left:28%}.field-placeholder span:nth-child(15){top:42%;left:48%}.field-placeholder span:nth-child(16){top:58%;left:68%}.field-placeholder span:nth-child(17){top:16%;left:82%}.field-placeholder span:nth-child(18){top:84%;left:94%}.field-placeholder span:nth-child(19){top:34%;left:20%}.field-placeholder span:nth-child(20){top:56%;left:36%}.field-placeholder span:nth-child(21){top:74%;left:52%}.field-placeholder span:nth-child(22){top:36%;left:66%}.field-placeholder span:nth-child(23){top:48%;left:76%}.field-placeholder span:nth-child(24){top:26%;left:88%}.playground-card-footer{justify-content:space-between;align-items:flex-end;gap:32px;min-height:112px;padding:22px 24px;display:flex}.playground-card-footer p{max-width:620px;color:var(--muted);font-size:.95rem;line-height:1.6}.playground-status{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.08em;color:var(--accent);flex-shrink:0;font-size:.6rem}.field-preview{cursor:crosshair}.field-experiment{position:absolute;inset:0}.field-canvas{width:100%;height:100%;display:block}.field-hud{pointer-events:none;align-items:center;gap:22px;display:flex;position:absolute;top:18px;left:20px;right:20px}.field-hud span{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.08em;color:var(--faint);align-items:center;gap:7px;font-size:.58rem;display:flex}.field-hud strong{color:#f1f1ee94;font-weight:400}.field-instruction{pointer-events:none;font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.08em;color:var(--faint);font-size:.58rem;position:absolute;bottom:18px;left:20px}.state-preview{min-height:350px}.state-stack-experiment{color:var(--text);grid-template-columns:minmax(0,1.25fr) minmax(190px,.75fr);display:grid;position:absolute;inset:0}.state-stack-runtime{border-right:1px solid var(--border);min-width:0;padding:18px 20px}.state-stack-topbar{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.08em;color:var(--faint);justify-content:space-between;align-items:center;gap:16px;margin-bottom:18px;font-size:.58rem;display:flex}.state-runtime-status{align-items:center;gap:7px;display:inline-flex}.state-runtime-status i{background:var(--accent);border-radius:50%;width:5px;height:5px}.state-stack-list{flex-direction:column;gap:8px;display:flex}.state-stack-row{background:#ffffff03;border:1px solid #ffffff14;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:12px;min-height:42px;padding:0 12px;transition:border-color .18s,background .18s,opacity .18s;display:grid}.state-stack-row:not(.is-active){opacity:.55}.state-stack-row.is-active{background:#34d8ff09;border-color:#34d8ff52}.state-index{font-family:var(--font-mono);color:var(--faint);font-size:.58rem}.state-name{text-overflow:ellipsis;min-width:0;font-family:var(--font-mono);color:#f1f1eebd;font-size:.68rem;overflow:hidden}.state-stack-row.is-active .state-name{color:var(--text)}.state-active{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.08em;color:var(--accent);font-size:.54rem}.state-runtime-bottom{flex-direction:column;min-width:0;display:flex}.state-event-log{flex:1;padding:18px}.state-event-heading{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.08em;color:var(--faint);margin-bottom:14px;font-size:.58rem}.state-event-list{flex-direction:column;gap:8px;display:flex}.state-event{font-family:var(--font-mono);color:var(--faint);align-items:center;gap:8px;font-size:.56rem;display:flex}.state-event span{min-width:34px;color:var(--accent)}.state-event-pop span{color:#f1f1ee73}.state-event strong{text-overflow:ellipsis;color:#f1f1ee8c;font-weight:400;overflow:hidden}.state-event-empty{font-family:var(--font-mono);color:var(--faint);font-size:.56rem}.state-controls{border-top:1px solid var(--border);grid-template-columns:1fr 1fr;gap:7px;padding:16px 18px;display:grid}.state-controls button{color:#f1f1ee94;min-height:34px;font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.05em;cursor:pointer;background:0 0;border:1px solid #ffffff17;padding:0 10px;font-size:.53rem;transition:border-color .16s,color .16s,background .16s}.state-controls button:hover{color:var(--text);background:#34d8ff06;border-color:#34d8ff47}.state-controls button:active{background:#34d8ff0f}.playground-card-featured .minimax-preview{height:640px;min-height:640px}.search-space-experiment{color:var(--text);grid-template-columns:minmax(360px,.78fr) minmax(0,1.22fr);display:grid;position:absolute;inset:0}.search-panel-topbar{border-bottom:1px solid var(--border);min-height:48px;font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.08em;color:var(--faint);justify-content:space-between;align-items:center;gap:16px;padding:0 18px;font-size:.58rem;display:flex}.search-board-panel{border-right:1px solid var(--border);min-width:0}.search-runtime-status{color:#f1f1eeb8;align-items:center;gap:10px;display:inline-flex}.search-runtime-status i{background:#f1f1ee80;border-radius:50%;flex-shrink:0;width:6px;height:6px;transition:background .18s,box-shadow .18s,transform .18s}.search-runtime-status span{letter-spacing:.1em;font-size:.64rem;font-weight:500}.search-runtime-status i.is-ai{background:var(--accent);box-shadow:0 0 0 4px #34d8ff0f}.search-runtime-status:has(i.is-ai) span{color:var(--accent)}.search-reset{color:var(--faint);font:inherit;text-transform:inherit;letter-spacing:inherit;cursor:pointer;background:0 0;border:0;padding:4px 0;transition:color .16s}.search-reset:hover{color:var(--text)}.search-board-wrapper{flex-direction:column;justify-content:flex-start;height:calc(100% - 48px);padding:34px 24px 22px;display:flex}.search-column-controls{grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;width:min(100%,350px);margin:28px auto 8px;display:grid}.search-column-button{min-width:0;height:28px;font-family:var(--font-mono);color:var(--faint);cursor:pointer;background:0 0;border:0;font-size:.55rem;transition:color .15s,background .15s}.search-column-button:not(:disabled):hover{color:var(--accent);background:#34d8ff09}.search-column-button:disabled{cursor:default;opacity:.25}.connect-four-board{aspect-ratio:7/6;background:#ffffff05;border:1px solid #ffffff1a;grid-template-rows:repeat(6,1fr);grid-template-columns:repeat(7,1fr);gap:6px;width:min(100%,350px);margin:0 auto;padding:8px;display:grid}.connect-four-cell{background:#00000029;border:1px solid #ffffff0b;place-items:center;min-width:0;display:grid}.connect-four-piece{aspect-ratio:1;background:#ffffff05;border:1px solid #ffffff17;border-radius:50%;width:70%;transition:background .22s,border-color .22s,box-shadow .22s,transform .22s}.connect-four-piece.is-player{background:#f1f1eed1;border-color:#f1f1eebd}.connect-four-piece.is-ai{background:#34d8ff85;border-color:#34d8ffb3}.connect-four-piece.is-winning{transform:scale(1.08);box-shadow:0 0 0 3px #34d8ff17}.search-board-status{width:min(100%,350px);font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.06em;color:var(--faint);justify-content:space-between;align-items:center;gap:16px;margin:14px auto 0;font-size:.56rem;display:flex}.search-player-key{align-items:center;gap:12px;display:flex}.search-player-key span{align-items:center;gap:5px;display:inline-flex}.search-player-key i{border-radius:50%;width:5px;height:5px}.player-dot{background:#f1f1eecc}.ai-dot{background:var(--accent)}.search-trace-panel{flex-direction:column;min-width:0;display:flex}.search-empty-state{color:var(--faint);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:24px;display:flex}.search-empty-explainer{text-align:center;max-width:390px}.search-empty-explainer>span{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.08em;color:#f1f1eeb8;margin-bottom:10px;font-size:.58rem;display:block}.search-empty-explainer p{color:var(--muted);font-size:.78rem;line-height:1.6}.search-empty-explainer small{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.08em;color:var(--faint);margin-top:16px;font-size:.54rem;display:block}.search-empty-tree{width:180px;height:80px;position:relative}.search-empty-tree span{border:1px solid #ffffff26;border-radius:50%;width:8px;height:8px;position:absolute}.search-empty-tree span:first-child{top:0;left:86px}.search-empty-tree span:nth-child(2){top:42px;left:18px}.search-empty-tree span:nth-child(3){top:42px;left:62px}.search-empty-tree span:nth-child(4){top:42px;left:106px}.search-empty-tree span:nth-child(5){top:42px;left:150px}.search-result-view{flex-direction:column;flex:1;gap:16px;min-height:0;padding:20px;display:flex}.search-debug-label{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.08em;color:var(--faint);margin-bottom:10px;font-size:.56rem;display:block}.candidate-order-list{font-family:var(--font-mono);color:#f1f1eea8;align-items:center;gap:8px;font-size:.65rem;display:flex}.candidate-order-list span{align-items:center;gap:8px;display:inline-flex}.candidate-order-list i{color:#ffffff2e;font-style:normal}.candidate-score-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;display:grid}.candidate-score{background:#ffffff03;border:1px solid #ffffff12;flex-direction:column;justify-content:center;align-items:center;gap:4px;min-width:0;min-height:60px;padding:8px 6px;display:flex}.candidate-score span,.candidate-score em{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.06em;color:var(--faint);font-size:.5rem;font-style:normal}.candidate-score strong{font-family:var(--font-mono);color:#f1f1eea3;font-size:.66rem;font-weight:400}.candidate-score.is-best{background:#34d8ff06;border-color:#34d8ff4d}.candidate-score.is-best strong,.candidate-score.is-best em{color:var(--accent)}.search-metrics{border:1px solid var(--border);background:var(--border);grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;display:grid}.search-metrics>div{background:var(--background);flex-direction:column;justify-content:center;gap:5px;min-height:58px;padding:10px 12px;display:flex}.search-metrics span{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.07em;color:var(--faint);font-size:.5rem}.search-metrics strong{font-family:var(--font-mono);color:#f1f1eeb3;font-size:.68rem;font-weight:400}.search-metrics strong.is-accent{color:var(--accent)}.search-processing-note{border-top:1px solid var(--border);justify-content:space-between;align-items:flex-end;gap:24px;margin-top:auto;padding-top:14px;display:flex}.search-processing-note span{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.07em;color:var(--faint);flex-shrink:0;font-size:.5rem}.search-processing-note p{text-align:right;max-width:300px;color:var(--muted);font-size:.72rem;line-height:1.45}.search-runtime-status i.is-game-over{background:#f1f1eed1;box-shadow:0 0 0 4px #f1f1ee0d}.search-runtime-status:has(i.is-game-over) span{color:var(--text)}.candidate-score strong.is-terminal-score{text-transform:uppercase;letter-spacing:.04em;font-size:.56rem}.search-trace-stage{min-height:150px}.search-trace-visualizer{min-height:132px;padding-top:4px;position:relative}.search-trace-root{opacity:0;background:#ffffff03;border:1px solid #ffffff1a;flex-direction:column;justify-content:center;align-items:center;gap:2px;width:76px;min-height:38px;margin:0 auto;transition:opacity .22s,transform .22s,border-color .22s;display:flex;transform:translateY(-4px)}.search-trace-root.is-visible{opacity:1;transform:translateY(0)}.search-trace-root span,.search-trace-root strong{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.07em;font-size:.5rem}.search-trace-root span{color:var(--faint)}.search-trace-root strong{color:var(--text);font-weight:400}.search-trace-root-line{background:#ffffff1a;width:1px;height:16px;margin:0 auto}.search-trace-candidates{grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;display:grid}.search-trace-candidate{opacity:0;min-width:0;transition:opacity .22s,transform .22s;transform:translateY(5px)}.search-trace-candidate.is-visible{opacity:1;transform:translateY(0)}.search-trace-candidate-node{background:#ffffff03;border:1px solid #ffffff12;flex-direction:column;justify-content:center;align-items:center;gap:2px;min-height:44px;transition:border-color .2s,background .2s;display:flex}.search-trace-candidate-node span,.search-trace-candidate-node strong,.search-trace-candidate-node em{font-family:var(--font-mono);text-align:center}.search-trace-candidate-node span{color:var(--faint);font-size:.48rem}.search-trace-candidate-node strong{color:#f1f1eead;font-size:.56rem;font-weight:400}.search-trace-candidate-node em{text-transform:uppercase;letter-spacing:.05em;color:var(--accent);font-size:.45rem;font-style:normal}.search-trace-children{opacity:0;flex-direction:column;gap:4px;margin-top:6px;transition:opacity .2s,transform .2s;display:flex;transform:translateY(-3px)}.search-trace-children.is-visible{opacity:1;transform:translateY(0)}.search-trace-child{justify-content:center;align-items:center;min-height:27px;display:flex;position:relative}.search-trace-connector{background:#ffffff14;width:1px;height:6px;position:absolute;top:-6px;left:50%}.search-trace-node{background:#0000001a;border:1px solid #ffffff0d;grid-template-columns:auto 1fr;align-items:center;gap:3px 5px;width:100%;min-height:27px;padding:4px 5px;display:grid}.search-trace-node-role{font-family:var(--font-mono);color:var(--faint);font-size:.4rem}.search-trace-node strong{font-family:var(--font-mono);color:#f1f1ee99;font-size:.47rem;font-weight:400}.search-trace-node em,.search-trace-node small{font-family:var(--font-mono);text-align:center;color:var(--faint);grid-column:1/-1;font-size:.4rem;font-style:normal}.search-trace-child.is-pruned{opacity:.48}.search-trace-child.is-pruned .search-trace-node{border-style:dashed;position:relative}.search-trace-child.is-pruned .search-trace-node:after{content:"";background:#f1f1ee40;height:1px;position:absolute;top:50%;left:8%;right:8%;transform:rotate(-8deg)}.search-trace-child.is-pruned em{color:#f1f1ee6b}.search-trace-child.is-pruned small{color:var(--accent)}.search-trace-leaf{font-family:var(--font-mono);text-align:center;text-transform:uppercase;letter-spacing:.05em;color:var(--faint);padding:6px 4px;font-size:.42rem}.search-trace-candidate.is-collapsed{align-self:start}.search-trace-candidate.is-expanded .search-trace-candidate-node{border-color:#ffffff1a}.search-trace-candidate.is-selected .search-trace-candidate-node{background:#34d8ff09;border-color:#34d8ff6b}.search-trace-candidate.is-expanded .search-trace-children{gap:5px}.search-trace-child.is-pruned .search-trace-node{opacity:.62;border-color:#ffffff1a}.search-trace-child.is-pruned small{color:var(--accent);letter-spacing:.04em}.search-space-footer>div{max-width:700px}.search-space-footer strong{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.07em;color:var(--text);margin-bottom:5px;font-size:.64rem;font-weight:400;display:block}.search-space-footer p{max-width:700px}
.contact-section{border-top:1px solid var(--border);min-height:auto;padding:120px 0 48px;display:block}.contact-content{flex-direction:column;display:flex}.contact-main{margin-top:34px}.contact-main h2{letter-spacing:-.055em;max-width:1080px;font-size:clamp(4rem,7vw,8rem);font-weight:500;line-height:.92}.contact-email{letter-spacing:-.025em;width:fit-content;color:var(--text);align-items:center;gap:16px;margin-top:58px;padding-bottom:8px;font-size:clamp(1.45rem,2.2vw,2.4rem);line-height:1.2;display:inline-flex;position:relative}.contact-email:after{content:"";transform-origin:0;background:#f1f1ee47;height:1px;transition:background .18s,transform .18s;position:absolute;bottom:0;left:0;right:0}.contact-email:hover:after{background:var(--accent);transform:scaleX(1.04)}.contact-email span:last-child{color:var(--faint);transition:color .18s,transform .18s}.contact-email:hover span:last-child{color:var(--accent);transform:translate(2px,-2px)}.contact-footer{border-top:1px solid var(--border);justify-content:space-between;align-items:center;gap:32px;margin-top:96px;padding-top:22px;display:flex}.contact-links{align-items:center;gap:28px;display:flex}.contact-links a,.contact-client a{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-size:.68rem;transition:color .16s}.contact-links a:hover,.contact-client a:hover{color:var(--accent)}.contact-meta{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.08em;color:var(--faint);align-items:center;gap:24px;font-size:.62rem;display:flex}.contact-client{border-top:1px solid #ffffff0f;align-items:center;gap:14px;margin-top:22px;padding-top:18px;display:flex}.contact-client>span{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.08em;color:var(--faint);font-size:.6rem}
