@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-ext-wght-normal-BOeWTOD4.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-wght-normal-DqGufNeO.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-ext-wght-normal-DlzME5K_.woff2)format("woff2-variations");unicode-range:U+1F??}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-wght-normal-CkhJZR-_.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-vietnamese-wght-normal-CBcvBZtf.woff2)format("woff2-variations");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:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-ext-wght-normal-DO1Apj_S.woff2)format("woff2-variations");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:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-wght-normal-Dx4kXJAl.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(data:font/woff2;base64,d09GMgABAAAAAASIABAAAAAACQQAAAQuAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGhwbHhwoBmA/U1RBVF4AdBEICoRkhAALIAABNgIkAzoEIAWFAAeBFAwHG2oHKJ6DceNW4lJEFHn9tEOE37LNsvkjHr7f739rn3u+OSrSxLQytE91Dw2PYtNVq3Qaw/vJ7fUBMdOj/u2ImB98cT5WUx9F13ZKt06mU7tG1sAYcM26yCRX4f/0904bmwq8hwkUUMTRX61pa9C3xlpAGYw1vOu8C2SBZZFlld7DAW82RJWmwYMI1AJCKBNCIASqdZGFmtPSNQRhMpR0EKjWTwm6z6sJ+4jqhxjovTinVdRpZaQjaQzAYjI8NgAKDJCokgunCn9oUQE8VZd/F//+v6P4F1U9gLr58yNI/dJX9BAshEoJbTDogz7ocKoUsPvES8UK/aQIUQgpGgECBVLkOEV6iASTYgNAPKdNXayhDPL7IJuAZnEYSZ0eOLc9i5Rv5/+lEi3sW/kfnCf/+fTe0sxS7CKLx5erRJkKOixEqQaoqrvx5HN4iz4VhX0gS6DjFIWUzn/fIXJRVFY1NFRVNVeFt+SYmrK6vCU6eJsnKnJj5HTESMTQZOTI3Y/tzr3rUcOsiRy/ciP50s3Mycgxmhz9GMXhjzVH30ut796NHP0UUa31/Zoa6vCH6iPvdIM0IRANaT60FablmZlZd+UKNFy9NrvnFGxb5NC2CRxR0/rIyF/WNn+35sv9r+tHVhkseuWGKkCPPh96+GXt8Lc/Sh24ujfjf+tNw1lZWreiPuHb/PSpyjdv2rf/++ZE5TSKjFdZxYsBvr1sEHl5STuHZqYR7jGYGvGBBdjcaB5bODY1GAxMjsd0wDMIzXAXODRd74DxNMtO4YuYHclgLQRzp9KlUmxptCwv9bYgvWGD2xBW7r9413fdJu+mxzvzAUYeeONQvZP4kgfqZle4jhH/MWh+UbxgtJdrLdXLymNL53PRU0D3Q6FcXTfGqGcul6vrqhgLGAVSv+IVIfZOHpu+mlLqSlnj903j8mazXDsba/wbxhS/4Oubh1c5/uXDgt4j5KtnGEy5BIJHo0ur+jD+r2qCkuP1aRVM8EpUoRYSJyqNRA38uwDvHBNo0AejO2Z+ZYLLal1QiFyFh1EDQOgSCSCpjwwKU8yDbIjroEwne0G5Qca49cYp4AlqtQNZfWTQoFb1tRpFYAmRD+HXTkV4uQhG2bg4OKmyoypAsUGtWgQXyFxYrkpODeUxvGqIZA61erXo0sFG1UBGuPgpuon8RNUG2DhovAjZCBuZwtXrU3mQGki9+pm0eVZAXoWxLWTQoYHBPrJR4WunNxIFbCHfkTyPK+sqxjxDmGArZvf79JGJ3GwEqjwc7a7NIrl/7bJ7Nzu4+n1Ow6shEPnUrtVo7cnd5Wi5qCUbBIQbNKCP95FMCSZylEV5VCiiMqqiOmrKZ/I/C0gI1fyuulVcM2E1r4MhtcV/fbCD+HwEvVzH1dGNAzFE0FTbKzyQz3gootrNbN2a4PuG0j0JOgE=)format("woff2"),url(data:font/woff;base64,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)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/jetbrains-mono-cyrillic-400-normal-BEIGL1Tu.woff2)format("woff2"),url(/assets/jetbrains-mono-cyrillic-400-normal-ugxPyKxw.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/jetbrains-mono-greek-400-normal-C190GLew.woff2)format("woff2"),url(/assets/jetbrains-mono-greek-400-normal-B9oWc5Lo.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(data:font/woff2;base64,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)format("woff2"),url(/assets/jetbrains-mono-vietnamese-400-normal-CqNFfHCs.woff)format("woff");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:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/jetbrains-mono-latin-ext-400-normal-Bc8Ftmh3.woff2)format("woff2"),url(/assets/jetbrains-mono-latin-ext-400-normal-fXTG6kC5.woff)format("woff");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:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/jetbrains-mono-latin-400-normal-V6pRDFza.woff2)format("woff2"),url(/assets/jetbrains-mono-latin-400-normal-6-qcROiO.woff)format("woff");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}@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;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:"Inter Variable", "Inter", sans-serif;--font-mono:"JetBrains Mono", monospace;--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}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.static{position:static}.container{width:100%}@media (width>=40rem){.container{max-width:40rem}}@media (width>=48rem){.container{max-width:48rem}}@media (width>=64rem){.container{max-width:64rem}}@media (width>=80rem){.container{max-width:80rem}}@media (width>=96rem){.container{max-width:96rem}}.grid{display:grid}.hidden{display:none}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.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{font-family:var(--font-sans);color:#f2f7f9;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;--secondary:#abc2d3;--line:#aecee138;--aqua:#5eead4;--cyan:#38bdf8;--motion-ease:cubic-bezier(.22,1,.36,1);background:#0b1d33}*{box-sizing:border-box}html{scroll-behavior:smooth;scrollbar-width:none;-ms-overflow-style:none}html::-webkit-scrollbar{width:0;height:0;display:none}body{min-width:320px;margin:0}a{color:inherit;transition:color .18s var(--motion-ease);text-decoration:none}button{font:inherit;cursor:pointer}button,a{-webkit-tap-highlight-color:transparent}:focus-visible{outline-offset:5px;outline:2px solid #67e8f9}::selection{color:#f5faff;background:#17628a}h1,h2,h3,p{margin:0}h1,h2,h3{overflow-wrap:break-word}svg{flex-shrink:0}figure{margin:0}.container{width:min(1320px,100% - 112px);margin-inline:auto}.mono,.eyebrow{font-family:var(--font-mono);letter-spacing:.04em;font-size:.75rem;line-height:1.7}.eyebrow{color:var(--secondary);text-transform:uppercase;flex-wrap:wrap;align-items:center;gap:12px;display:flex}.eyebrow>span:first-child{color:var(--aqua)}.label-divider{color:#7390a5}.accent{color:var(--cyan)}.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}#top{isolation:isolate;position:relative}.skip-link{z-index:100;color:#0b1d33;background:#67e8f9;padding:12px 20px;position:fixed;top:10px;left:20px;transform:translateY(-180%)}.skip-link:focus{transform:translateY(0)}.site-header-notch{z-index:100;pointer-events:none;justify-content:center;display:flex;position:fixed;top:24px;left:0;right:0}.nav-notch{pointer-events:auto;-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);background:#0a192dbf;border:1px solid #82dcf01f;border-radius:40px;padding:6px 10px;display:inline-flex;position:relative;overflow:hidden;box-shadow:0 10px 40px #0000004d,0 0 20px #5eead408}.nav-notch-links{z-index:2;align-items:center;gap:8px;display:flex;position:relative}.nav-notch-link{color:var(--secondary);transition:color .26s var(--motion-ease);border-radius:30px;padding:10px 22px;font-size:.9375rem;font-weight:500;position:relative}.nav-notch-link:hover{color:#f5faff}.nav-notch-link[aria-current=page]{color:#fff}.nav-light-beam{z-index:-1;pointer-events:none;position:absolute;inset:0}.nav-light-beam:before{content:"";filter:blur(4px);background:radial-gradient(#5eead466 0%,#0000 70%);width:60%;height:16px;position:absolute;top:-10px;left:50%;transform:translate(-50%)}.nav-light-beam:after{content:"";background:linear-gradient(#5eead41a 0%,#0000 80%);border-radius:30px;position:absolute;inset:0}.hero,.info-intro{isolation:isolate;grid-template-columns:minmax(0,1.55fr) minmax(0,1fr);gap:70px;padding-top:100px;display:grid;position:relative}.hero:before,.info-intro:before,.contact-hero:before,.case-hero:before{content:"";z-index:-1;pointer-events:none;background:radial-gradient(at 80% 32%,#38bdf829,#0000 64%);position:absolute;inset:0;-webkit-mask-image:radial-gradient(#000 25%,#0000 72%);mask-image:radial-gradient(#000 25%,#0000 72%)}.hero h1,.info-heading h1{letter-spacing:-.065em;margin-top:30px;font-size:clamp(3.5rem,7.2vw,7.8rem);font-weight:450;line-height:1.15}.hero h1>span,.info-heading h1>span,.contact-hero h1>span{color:#b8e7e8}.hero-introduction{max-width:440px;color:var(--secondary);margin-top:38px;font-size:1rem;line-height:1.7}.hero-introduction>p+p{margin-top:8px}.hero-statement{color:#e0edf5;font-size:1.125rem}.hero-actions{flex-wrap:wrap;align-items:center;gap:20px 30px;margin-top:28px;display:flex}.text-link{align-items:center;gap:22px;min-height:44px;display:inline-flex}.hero-visual{align-self:center;min-width:0;position:relative}.hero-bottom{border-bottom:1px solid var(--line);color:var(--secondary);grid-column:1/-1;justify-content:flex-end;align-items:center;gap:25px;padding-block:32px;font-size:.875rem;display:flex}.portrait-card{background:linear-gradient(135deg,#183f59,#12334b 65%,#184657);border-radius:3px;position:relative;overflow:hidden}.portrait-scene{aspect-ratio:4/5;position:relative;overflow:hidden}.portrait-halo,.portrait-orbit{aspect-ratio:1;pointer-events:none;border-radius:50%;width:110%;position:absolute;top:8%;left:-5%}.portrait-halo{-webkit-mask-composite:xor;-webkit-mask-source-type:auto,auto;-webkit-mask-composite:xor;-webkit-mask-source-type:auto,auto;background:conic-gradient(from 30deg,#0000 5%,#67e8f9 25%,#60a5fa1f 48%,#5eead4 72%,#0000 95%);padding:1px;-webkit-mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);-webkit-mask-position:0 0,0 0;mask-position:0 0,0 0;-webkit-mask-size:auto,auto;mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.portrait-orbit{border:1px solid #98dff224;width:88%;top:17%;left:6%}.portrait-orbit:before{content:"";background:#9aeee1;border-radius:50%;width:6px;height:6px;position:absolute;top:-3px;left:calc(50% - 3px);box-shadow:0 0 18px #5eead4a6}.portrait-image{position:absolute;inset:24px;overflow:hidden}.portrait-image img{object-fit:cover;width:100%;height:100%;display:block}.portrait-placeholder{color:#d2e8f0;flex-direction:column;justify-content:center;align-items:center;gap:12px;height:100%;display:flex}.portrait-placeholder svg{color:#9de4e1;margin-bottom:8px}.portrait-soon{color:var(--secondary);font-size:.8125rem}.portrait-card figcaption{border-top:1px solid var(--line);font:.6875rem var(--font-mono);letter-spacing:.08em;color:#c0d7e4;justify-content:space-between;padding:20px 24px;display:flex}.portrait-aura{z-index:-1;pointer-events:none;opacity:var(--trace-light,.44);background:radial-gradient(#67e8f938,#0000 70%);position:absolute;inset:-35px -20px}.work-section,.work-projects{padding-top:60px;padding-bottom:80px}.project-spread{padding-bottom:125px}.project-spread+.project-spread{border-top:1px solid var(--line);padding-top:70px}.project-heading h3{letter-spacing:-.055em;max-width:1120px;margin-top:24px;font-size:clamp(2.75rem,5.8vw,5.5rem);font-weight:450;line-height:1.12}.project-heading h3,.project-heading h3 a{justify-content:space-between;align-items:flex-start;gap:25px;display:flex}.project-heading h3 a{width:100%}.project-heading h3 svg{color:#b8e7e8;width:clamp(38px,5vw,72px);height:clamp(38px,5vw,72px);transition:transform .32s var(--motion-ease);margin-top:6px}.project-meta-row{flex-wrap:wrap;justify-content:flex-start;align-items:baseline;gap:16px;display:flex}.project-meta-row .eyebrow{margin:0}.project-meta-row .status{align-self:baseline;margin:0;position:static;inset:auto;transform:none}.project-information{flex-direction:column;gap:24px;margin-top:25px;margin-bottom:35px;display:flex}.project-copy{color:#bdd1df;max-width:700px;font-size:1.0625rem;line-height:1.75}.project-copy p+p{margin-top:18px}.project-technologies{color:var(--secondary);flex-wrap:wrap;gap:8px 20px;margin:35px 0 0;padding:0;font-size:.875rem;line-height:1.8;list-style:none;display:flex}.project-technologies li:not(:last-child):after{content:" /";color:#7290a6;padding-left:14px}.project-actions{flex-wrap:wrap;gap:18px 25px;margin-top:35px;font-size:.875rem;display:flex}.project-detail-link{color:#a0e8e2;align-items:center;gap:7px;display:inline-flex}.external-link,.placeholder-link{flex-wrap:wrap;align-items:center;gap:8px;min-height:32px;display:inline-flex}.placeholder-link{color:var(--secondary);cursor:default}.soon{color:#a9c3d5;font-size:.6875rem}.project-media{aspect-ratio:16/9;background:radial-gradient(at 75% 20%,#60a5fa38,#0000 65%),linear-gradient(135deg,#183b54,#12314b);border-radius:3px;position:relative;overflow:hidden}.project-media-02{background:radial-gradient(at 20% 20%,#5eead426,#0000 65%),linear-gradient(135deg,#163b4b,#142d49)}.project-media-03{background:radial-gradient(at 75% 60%,#38bdf830,#0000 65%),linear-gradient(135deg,#1a3c55,#112b43)}.project-media a{height:100%;display:block}.project-media img{object-fit:contain;width:100%;height:100%;transition:transform .6s var(--motion-ease);display:block}.project-preview-placeholder{text-align:center;place-items:center;height:100%;padding:30px;display:grid;position:relative}.placeholder-content{z-index:2;position:relative}.project-preview-placeholder p{letter-spacing:-.03em;color:#e0edf5;margin-top:16px;font-size:clamp(1.25rem,2.5vw,2rem)}.placeholder-content>span{color:#8da9be;margin-top:12px;font-size:.8125rem;display:block}.media-sequence{letter-spacing:-.08em;color:#b4e0ec0a;-webkit-user-select:none;user-select:none;z-index:0;pointer-events:none;font-size:clamp(6rem,17vw,15rem);font-weight:350;line-height:1;position:absolute;top:10%;left:auto;right:4%}.project-media-01:before{content:"";z-index:1;pointer-events:none;background-color:#0000;background-image:linear-gradient(90deg,#ffffff04 1px,#0000 1px),linear-gradient(#ffffff04 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;position:absolute;inset:0}.project-media-01:after{content:"";clip-path:polygon(0 100%,15% 75%,35% 85%,60% 40%,80% 65%,100% 25%,100% 100%);z-index:1;pointer-events:none;background:linear-gradient(#0000,#60a5fa0f);height:45%;position:absolute;bottom:0;left:0;right:0}.project-media-02:before{content:"";z-index:1;pointer-events:none;background-color:#0000;background-image:linear-gradient(90deg,#ffffff06 1px,#0000 1px),linear-gradient(#ffffff06 1px,#0000 1px);background-position:0 0,0 0;background-repeat:repeat,repeat;background-size:45px 45px;background-attachment:scroll,scroll;background-origin:padding-box,padding-box;background-clip:border-box,border-box;position:absolute;inset:0}.project-media-02:after{content:"";z-index:1;pointer-events:none;background:#5eead41f;border-radius:50%;width:45px;height:45px;position:absolute;top:40%;left:35%;box-shadow:120px 40px 0 -5px #ffffff0f,-70px 70px 0 -10px #5eead414}.project-media-03:before{content:"";z-index:1;pointer-events:none;border:1px dashed #38bdf81f;border-radius:8px;position:absolute;inset:25%}.project-media-03:after{content:"";z-index:1;pointer-events:none;background:linear-gradient(90deg,#0000,#38bdf826,#0000);height:2px;position:absolute;top:40%;left:35%;right:35%;box-shadow:0 35px #38bdf81a,0 70px #38bdf80d}.section-heading{margin-bottom:35px}.section-heading h2{letter-spacing:-.05em;margin-top:24px;font-size:clamp(2rem,3.8vw,3.5rem);font-weight:450;line-height:1.18}.info-heading{align-self:center}.page-introduction{color:var(--secondary);margin-top:32px;font-size:1.125rem;line-height:1.7}.info-intro{padding-bottom:110px}.info-section{border-top:1px solid var(--line);padding-block:85px}.info-section-layout{grid-template-columns:minmax(0,1fr) minmax(0,1.35fr);gap:100px;display:grid}.info-section .section-heading{margin-bottom:0}.info-prose{color:var(--secondary);font-size:1.0625rem;line-height:1.85}.info-prose p+p{margin-top:24px}.info-prose .lead{letter-spacing:-.035em;color:#e0edf5;font-size:clamp(1.5rem,2.2vw,2rem);line-height:1.6}.education-content h3{letter-spacing:-.04em;font-size:clamp(1.5rem,2.5vw,2.25rem);font-weight:450;line-height:1.45}.education-content p{color:var(--secondary);margin-top:10px;line-height:1.8}.education-dates{color:var(--secondary);margin-top:28px;font-size:.8125rem;display:block}.info-contact{border-top:1px solid var(--line);padding-block:90px 110px}.info-contact>a{letter-spacing:-.055em;align-items:center;gap:30px;margin-top:22px;font-size:clamp(2.5rem,5vw,4.75rem);line-height:1.25;display:inline-flex}.info-contact>a svg{color:#b8e7e8;width:clamp(35px,4vw,60px);height:clamp(35px,4vw,60px)}.contact-hero{isolation:isolate;padding-block:95px 80px;position:relative}.contact-hero h1{letter-spacing:-.075em;margin-top:35px;font-size:clamp(5rem,12.5vw,11.5rem);font-weight:430;line-height:1.06}.contact-introduction{color:var(--secondary);flex-wrap:wrap;justify-content:flex-end;gap:25px;margin-top:38px;font-size:.875rem;line-height:1.7;display:flex}.contact-introduction p:first-child{color:#e0edf5}.contact-directory{border-bottom:1px solid var(--line)}.contact-row{border-top:1px solid var(--line);grid-template-columns:minmax(140px,1fr) minmax(0,1.3fr) 40px;align-items:center;gap:30px;min-height:125px;padding:35px 12px;display:grid;position:relative;overflow:hidden}.contact-row-label{letter-spacing:-.055em;align-items:center;gap:20px;font-size:clamp(1.75rem,3.4vw,3.25rem);line-height:1.35;display:flex}.contact-row-icon{width:clamp(28px,4.5vw,42px);height:clamp(28px,4.5vw,42px);color:var(--cyan)}.contact-row-value{color:var(--secondary);overflow-wrap:anywhere;font-size:clamp(.875rem,1.4vw,1.125rem);line-height:1.7}.contact-row>svg{color:#b8e7e8;width:35px;height:35px;transition:transform .32s var(--motion-ease)}.contact-row-disabled{cursor:default}.contact-row-disabled>svg{color:#8faabc}.resume-reveal{margin-block:90px 120px}.resume-cta{background:linear-gradient(120deg,#174159,#163a51 75%,#194854);border-radius:3px;justify-content:space-between;align-items:center;gap:30px;padding:65px;display:flex;position:relative;overflow:hidden}.resume-cta h2{letter-spacing:-.055em;align-items:center;gap:25px;margin-top:20px;font-size:clamp(2.5rem,5.6vw,5rem);font-weight:450;line-height:1.2;display:flex}.resume-cta h2 svg{color:#b8e7e8;width:clamp(30px,4vw,60px);height:clamp(30px,4vw,60px)}.resume-cta p{color:#bad2df;margin-top:20px;font-size:.875rem}.resume-icon{color:#89c7d4;width:90px;height:90px}.site-footer{border-top:1px solid var(--line);padding-top:60px}.footer-cta-section{grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);align-items:center;gap:40px;padding-bottom:100px;display:grid}.footer-cta-section h2{letter-spacing:-.04em;margin-top:20px;font-size:clamp(4rem,9vw,7.5rem);line-height:1.05}.footer-pitch{color:var(--secondary);max-width:500px;margin-block:25px 0;font-size:clamp(1.125rem,2.5vw,1.6rem);line-height:1.6}.footer-cta-action{justify-content:flex-end;padding-right:40px;display:flex;position:relative}.footer-cta-action:before{content:"";pointer-events:none;background:radial-gradient(circle,#5eead40d,#0000 70%);width:300px;height:300px;position:absolute;top:50%;right:10%;transform:translateY(-50%)}.footer-cta-link{color:#f5faff;transition:color .3s var(--motion-ease);z-index:2;align-items:center;gap:15px;font-size:clamp(1.5rem,4vw,2.5rem);font-weight:500;display:inline-flex;position:relative}.footer-cta-link svg{transition:transform .3s var(--motion-ease), color .3s var(--motion-ease);color:var(--cyan)}.footer-cta-link:after{content:"";background:var(--line);height:1px;transition:background .3s var(--motion-ease), box-shadow .3s var(--motion-ease);position:absolute;bottom:-8px;left:0;right:-10px}.footer-inner{border-top:1px solid var(--line);justify-content:flex-end;align-items:center;gap:25px;padding-block:30px;font-size:.8125rem;line-height:1.7;display:flex}.back-top{color:var(--secondary);align-items:center;gap:12px;display:inline-flex}.button{border:1px solid var(--line);flex-wrap:wrap;justify-content:center;align-items:center;gap:9px;min-height:48px;padding:12px 20px;font-size:.875rem;display:inline-flex}.button-primary{color:#0b1d33;background:#67e8f9}.status{color:#b8cbdc;align-items:center;gap:8px;font-size:.8125rem;line-height:1.5;display:inline-flex}.status>span{background:var(--cyan);border-radius:50%;width:6px;height:6px;animation:2.5s infinite status-pulse}@keyframes status-pulse{0%{box-shadow:0 0 #38bdf880}70%{box-shadow:0 0 0 5px #38bdf800}to{box-shadow:0 0 #38bdf800}}.case-study{padding-top:40px}.back-link{color:var(--secondary);align-items:center;gap:12px;min-height:44px;font-size:.8125rem;display:inline-flex}.back-link>span{color:var(--cyan)}.case-hero{isolation:isolate;padding-block:65px;position:relative}.case-hero h1{letter-spacing:-.065em;margin-top:25px;font-size:clamp(5rem,12vw,11rem);font-weight:450;line-height:1.15}.case-subtitle{letter-spacing:-.035em;color:#cbdfe9;margin-top:15px;font-size:clamp(1.25rem,2.4vw,2rem);line-height:1.5}.case-summary{max-width:760px;color:var(--secondary);margin-top:25px;font-size:1.0625rem;line-height:1.85}.case-meta{flex-wrap:wrap;gap:35px 70px;margin:45px 0 0;display:flex}.case-meta dt{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--secondary);margin-bottom:10px;font-size:.6875rem}.case-meta dd{color:#d6e4ef;margin:0;font-size:.875rem}.case-contents{border-block:1px solid var(--line);flex-wrap:wrap;gap:9px 28px;padding-block:25px;display:flex}.case-contents a{color:var(--secondary);min-height:32px;transition:color .22s var(--motion-ease);align-items:center;font-size:.8125rem;display:inline-flex}.case-contents a.active{color:#67e8f9}.case-section{border-bottom:1px solid var(--line);padding-block:85px}.case-split{grid-template-columns:minmax(0,1fr) minmax(0,1.55fr);gap:90px;display:grid}.case-split .section-heading{margin-bottom:0}.case-section .section-heading h2{font-size:clamp(2rem,3vw,2.75rem)}.case-prose p{color:var(--secondary);font-size:1rem;line-height:1.9}.case-prose p+p{margin-top:20px}.flow-panel{background:radial-gradient(at 10% 0,#5eead40e,#0000 65%),linear-gradient(130deg,#17384f,#122d46);border:1px solid #a4d1e738;border-radius:18px;padding:27px}.flow-panel-header{color:#8da8bf;justify-content:space-between;align-items:center;gap:20px;margin-bottom:25px;display:flex}.flow-panel-header .mono{font-size:.75rem}.flow-legend{color:#9cb2c5;align-items:center;gap:8px;font-size:.75rem;display:inline-flex}.flow-legend>span{background:#38bdf8;width:5px;height:5px}.flow-diagram{grid-template-columns:repeat(5,minmax(0,1fr));gap:20px;margin:0;padding:0;list-style:none;display:grid}.flow-diagram li{grid-row:var(--flow-row);grid-column:var(--flow-column);background:linear-gradient(135deg,#204762,#1a3952);border:1px solid #a2d5e93d;border-radius:12px;flex-direction:column;justify-content:center;gap:9px;min-height:102px;padding:19px 16px;font-size:.875rem;line-height:1.6;display:flex;position:relative}.flow-index{color:#68b5d9;font-size:.75rem}.flow-connector{color:#5884a4;position:absolute;top:50%;right:-19px;transform:translateY(-50%)}@media (width>=768px){.flow-diagram .flow-turn .flow-connector{top:auto;bottom:-19px;right:50%;transform:translate(50%)rotate(90deg)}.flow-diagram .flow-reverse:not(.flow-turn) .flow-connector{left:-19px;right:auto;transform:translateY(-50%)rotate(180deg)}}.flow-end{color:#6fc5e9;position:absolute;top:14px;right:12px}.flow-footnote{color:#91a9be;margin-top:25px;font-size:.8125rem}.involvement-list{margin:0;padding:0;list-style:none}.involvement-list li{border-bottom:1px solid var(--line);align-items:flex-start;gap:22px;padding-block:18px;display:flex}.involvement-list li:first-child{padding-top:0}.involvement-list li:last-child{border-bottom:0;padding-bottom:0}.involvement-list .mono{color:#5fa9ce;margin-top:4px;font-size:.75rem}.involvement-list p{color:#b6c9d9;font-size:1rem;line-height:1.85}.development-intro{color:#a3b8cb;max-width:780px;margin-bottom:28px;line-height:1.9}.development-intro p+p{margin-top:10px}.flow-compact{grid-template-columns:repeat(4,minmax(0,1fr))}.review-note{color:#9eb7cd;align-items:center;gap:10px;margin-top:25px;font-size:.8125rem;line-height:1.7;display:flex}.review-note svg{color:#589bc4;flex-shrink:0}.video-frame{aspect-ratio:16/9;background:#15334c;border:1px solid #a3d7ed47;border-radius:22px;position:relative;overflow:hidden}.video-frame iframe,.video-frame video{z-index:1;border:0;width:100%;height:100%;display:block;position:relative}.media-placeholder{text-align:center;background-image:radial-gradient(at 50% 40%,#38bdf82e,#0000 62%),radial-gradient(at 85% 80%,#5eead414,#0000 60%),linear-gradient(135deg,#183c57,#102840);flex-direction:column;justify-content:center;align-items:center;padding:24px;display:flex}.play-icon{color:#66c8f2;background:#12263a;border:1px solid #355b76;border-radius:50%;justify-content:center;align-items:center;width:68px;height:68px;margin-bottom:24px;display:flex}.media-placeholder .eyebrow{color:#8da8bf;font-size:.75rem}.media-placeholder h3{letter-spacing:-.035em;margin-top:9px;font-size:1.75rem;font-weight:500}.media-placeholder p{color:#a9bdd0;margin-top:12px;font-size:.875rem;line-height:1.7}.media-placeholder code{color:#a4bacd;overflow-wrap:anywhere;margin-top:20px;font-size:.75rem}.video-loading{color:#9cb6cc;place-items:center;font-size:.875rem;display:grid;position:absolute;inset:0}.demo-links{margin-top:20px;font-size:.875rem;display:flex}.technology-list{flex-wrap:wrap;align-content:flex-start;gap:12px;margin:6px 0 0;padding:0;list-style:none;display:flex}.technology-list li{color:#cbd5e1;background:#15324b;border:1px solid #3a5a73;border-radius:4px;padding:12px 20px;font-size:.9375rem}.status-description{background:#102840;border:1px solid #3a5a73;border-radius:5px;padding:25px}.status-description p{color:#9bb3c9;margin-top:15px;font-size:1rem;line-height:1.9}.screenshot-gallery{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;display:grid}.screenshot-card{background:linear-gradient(135deg,#1b3c54,#142f49);border:1px solid #a4d5e93b;border-radius:16px;min-width:0;margin:0;overflow:hidden}.screenshot-placeholder{aspect-ratio:16/10;color:#91a9bd;flex-direction:column;justify-content:center;align-items:center;gap:14px;padding:20px;display:flex}.screenshot-placeholder span{font-size:.9375rem}.screenshot-placeholder code{color:#a4bacd;overflow-wrap:anywhere;font-size:.75rem}.screenshot-card img{aspect-ratio:16/10;object-fit:contain;width:100%;display:block}.screenshot-card figcaption{border-top:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:10px;padding:15px 18px;display:flex}.screenshot-card figcaption .mono,.screenshot-card figcaption>span:not(.mono){color:#a9bdd0;font-size:.75rem}.repository-section{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:24px;display:flex}.repository-section .section-heading{margin-bottom:0}.case-end{justify-content:space-between;align-items:center;gap:24px;padding-block:35px 50px;display:flex}.case-end>a:last-child{color:#8dcae8;font-size:.875rem}.not-found{min-height:70vh;padding-block:120px}.not-found h1{letter-spacing:-.04em;margin-block:25px 35px;font-size:clamp(2rem,4vw,3rem)}.flow-panel{background:#183b5280;border-radius:3px;padding:30px;overflow:hidden}.flow-diagram li{background:#18394f;border-radius:3px}.flow-panel-header,.flow-legend,.flow-footnote,.development-intro,.review-note,.involvement-list p,.status-description p{color:#b6cddd}.flow-footnote{line-height:1.8}.video-frame{border-color:var(--line);border-radius:3px}.video-loading{color:#c5dce8;background:#15334c}.video-frame video,.video-frame iframe{z-index:auto}.media-placeholder{background:radial-gradient(at 50% 40%,#38bdf826,#0000 62%),linear-gradient(135deg,#183c57,#102840)}.media-placeholder h3{font-size:clamp(1.5rem,3vw,2.5rem)}.media-placeholder p{color:#c0d5e2;max-width:450px}.media-placeholder .eyebrow{color:#bed3df}.play-icon{box-shadow:none;background:0 0;border-color:#5d9cb7}.technology-list{gap:12px 25px}.technology-list li,.status-description{background:0 0;border:0;padding:0}.screenshot-card{background:#15334b;border-radius:3px}.screenshot-placeholder{color:#bed3df}.screenshot-placeholder svg{color:#9bc4d8}.screenshot-card img{transition:transform .5s var(--motion-ease)}.screenshot-card figcaption{padding:17px}.screenshot-card figcaption .mono{color:#bdd2df}.case-end{padding-block:40px 70px}@media (width<=1100px){.container{width:calc(100% - 72px)}.hero,.info-intro{gap:40px;padding-top:70px}.hero h1,.info-heading h1{font-size:clamp(3.4rem,7vw,5.5rem)}.project-information{gap:45px}.info-section-layout,.case-split{gap:55px}.contact-row{grid-template-columns:minmax(120px,.75fr) minmax(0,1.5fr) 35px}}@media (width<=767px){.container{width:calc(100% - 40px)}.menu-toggle{display:inline-flex}.nav-links{border-bottom:1px solid var(--line);background:#0e263d;flex-direction:column;align-items:stretch;gap:8px;padding:20px;display:none;position:absolute;top:71px;left:0;right:0}.nav-links.is-open{display:flex}.nav-links a{padding:14px 10px;font-size:1rem}.nav-links a:after{width:35px;left:10px}.hero,.info-intro{grid-template-columns:1fr;gap:42px;padding-top:50px}.hero h1,.info-heading h1{margin-top:25px;font-size:clamp(3.3rem,11.5vw,5.5rem);line-height:1.14}.hero-introduction{margin-top:30px;font-size:.9375rem}.hero-statement{font-size:1rem}.hero-visual{width:min(100%,480px)}.portrait-image{inset:18px}.portrait-card figcaption{padding:17px 20px}.portrait-aura{inset-inline:-10px}.hero-bottom{flex-wrap:wrap;gap:10px;padding-block:22px}.work-section,.work-projects{padding-top:40px;padding-bottom:20px}.project-spread{padding-bottom:65px}.project-spread+.project-spread{padding-top:50px}.project-heading h3{gap:15px;font-size:clamp(2.3rem,8vw,3.5rem)}.project-heading h3 svg{width:32px;height:32px;margin-top:4px}.project-information{grid-template-columns:1fr;gap:25px;margin-top:25px;margin-bottom:30px}.project-copy{font-size:.9375rem;line-height:1.8}.project-actions{margin-top:20px}.project-preview-placeholder{padding:20px 15px}.project-preview-placeholder svg{width:22px;height:22px}.project-preview-placeholder p{margin-top:10px;font-size:1.125rem}.project-preview-placeholder>div>span{margin-top:8px;font-size:.6875rem}.media-caption{display:none}.media-sequence{font-size:25vw}.info-intro{padding-bottom:65px}.page-introduction{margin-top:25px;font-size:1rem}.info-section{padding-block:55px}.info-section-layout{grid-template-columns:1fr;gap:30px}.section-heading h2{font-size:clamp(2rem,7vw,3rem)}.info-prose{font-size:1rem}.info-prose .lead{font-size:1.5rem}.info-contact{padding-block:55px 75px}.info-contact>a{gap:15px;font-size:clamp(2.1rem,7vw,3.5rem)}.info-contact>a svg{width:32px;height:32px}.contact-hero{padding-block:50px}.contact-hero h1{margin-top:28px;font-size:clamp(4.2rem,15vw,7rem)}.contact-introduction{flex-direction:column;justify-content:flex-start;gap:5px;margin-top:30px}.contact-row{grid-template-columns:minmax(0,1fr) 30px;gap:10px 20px;min-height:115px;padding:25px 6px}.contact-row-label{gap:12px;font-size:2rem}.contact-row-icon{width:24px;height:24px}.contact-row-value{grid-area:2/1;font-size:.875rem}.contact-row>svg{grid-area:1/2;width:28px;height:28px}.resume-reveal{margin-block:55px 70px}.resume-cta{gap:15px;padding:30px 24px}.resume-cta h2{gap:12px;font-size:clamp(2rem,7vw,3rem)}.resume-cta h2 svg{width:28px;height:28px}.resume-icon{display:none}.site-footer{padding-top:40px}.footer-cta-section{padding-bottom:60px}.footer-inner{flex-wrap:wrap;justify-content:flex-end;gap:15px;padding-block:25px}.case-study{padding-top:25px}.case-hero{padding-block:40px}.case-hero h1{font-size:clamp(4.5rem,15vw,7rem)}.case-subtitle{font-size:1.25rem}.case-summary{font-size:1rem}.case-meta{gap:25px 35px;margin-top:30px}.case-section{padding-block:50px}.case-split{grid-template-columns:1fr;gap:25px}.case-section .section-heading h2{font-size:1.875rem}.flow-panel{padding:20px}.flow-panel-header{flex-wrap:wrap;gap:12px;margin-bottom:20px}.flow-diagram,.flow-compact{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.flow-diagram li{grid-row:var(--mobile-row);grid-column:var(--mobile-column);min-height:95px;padding:15px 12px;font-size:.875rem}.flow-diagram li .flow-connector{inset:50% -18px auto auto;transform:translateY(-50%)}.flow-diagram .flow-mobile-reverse:not(.flow-mobile-turn) .flow-connector{inset:50% auto auto -18px;transform:translateY(-50%)rotate(180deg)}.flow-diagram .flow-mobile-turn .flow-connector{inset:auto 50% -19px auto;transform:translate(50%)rotate(90deg)}.video-frame.media-placeholder{padding:12px}.play-icon{width:35px;height:35px;margin-bottom:10px}.play-icon svg{width:18px;height:18px}.media-placeholder p{display:none}.screenshot-gallery{grid-template-columns:1fr}.case-end{flex-wrap:wrap;padding-bottom:40px}}@media (width<=380px){.container{width:calc(100% - 32px)}.hero h1,.info-heading h1{font-size:3.05rem}.eyebrow{gap:8px;font-size:.6875rem}.flow-diagram,.flow-compact{grid-template-columns:1fr}.flow-diagram li{grid-area:auto/1;min-height:78px}.flow-diagram li .flow-connector,.flow-diagram .flow-mobile-reverse:not(.flow-mobile-turn) .flow-connector{inset:auto 50% -19px auto;transform:translate(50%)rotate(90deg)}}.ambient-light{z-index:-1;pointer-events:none;opacity:0;transition:opacity .36s var(--motion-ease);display:none;position:fixed;inset:0;overflow:hidden}.ambient-light-orb{background:radial-gradient(circle,#67e8f933 0%,#38bdf81f 20%,#60a5fa14 38%,#5eead40a 52%,#0000 70%);width:880px;height:880px;position:absolute;top:0;left:0}:is(.portrait-card,.project-media,.flow-panel,.video-frame,.screenshot-card,.contact-row,.resume-cta){isolation:isolate;position:relative}:is(.portrait-card,.project-media,.flow-panel,.video-frame,.screenshot-card,.contact-row,.resume-cta):before,:is(.portrait-card,.project-media,.flow-panel,.video-frame,.screenshot-card,.contact-row,.resume-cta):after{content:"";pointer-events:none;border-radius:inherit;opacity:0;transition:opacity .32s var(--motion-ease);position:absolute;inset:0}:is(.portrait-card,.project-media,.flow-panel,.video-frame,.screenshot-card,.contact-row,.resume-cta):before{z-index:-1;width:760px;height:760px;transform:translate3d(calc(var(--light-x,50%) - 380px),calc(var(--light-y,50%) - 380px),0);background:radial-gradient(380px,#67e8f933,#38bdf814 42%,#0000 75%);inset:0 auto auto 0}:is(.portrait-card,.project-media,.flow-panel,.video-frame,.screenshot-card,.contact-row,.resume-cta):after{z-index:2;background:radial-gradient(250px circle at var(--light-x,50%) var(--light-y,50%),#67e8f9cc,transparent 75%);-webkit-mask-composite:xor;-webkit-mask-source-type:auto,auto;-webkit-mask-composite:xor;-webkit-mask-source-type:auto,auto;padding:1px;-webkit-mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);-webkit-mask-position:0 0,0 0;mask-position:0 0,0 0;-webkit-mask-size:auto,auto;mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.atmosphere{z-index:-2;pointer-events:none;position:fixed;inset:0;overflow:hidden}.atmosphere>span{width:110%;height:110%;position:absolute;inset:-5%}.atmosphere-blue{background:radial-gradient(at 80% 22%,#60a5fa29,#0000 58%)}.atmosphere-aqua{background:radial-gradient(at 12% 82%,#5eead413,#0000 60%)}@keyframes atmosphere-drift{0%{transform:translate(-16px,12px)scale(1)}to{transform:translate(22px,-18px)scale(1.05)}}@keyframes portrait-orbit{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:no-preference){.atmosphere-blue{animation:28s ease-in-out infinite alternate atmosphere-drift}.atmosphere-aqua{animation:37s ease-in-out -11s infinite alternate-reverse atmosphere-drift}.portrait-halo{animation:38s linear infinite portrait-orbit}.portrait-orbit{animation:56s linear infinite reverse portrait-orbit}.portrait-aura{transform:translate3d(calc(var(--trace-x,0px) * 2),calc(var(--background-depth,0px) * 1.25),0)}.hero:before,.case-hero:before,.info-intro:before,.contact-hero:before{transform:translate3d(calc(var(--background-depth,0px) * -.28),var(--background-depth,0px),0)}}@media (width>=768px) and (hover:hover) and (pointer:fine){a:hover{color:#a4eee8}.nav-links a:hover:after{transform:scaleX(1)}}@media (width>=768px) and (hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){.ambient-light{display:block}.ambient-light[data-light-active]{opacity:1}.ambient-light[data-light-active] .ambient-light-orb,:is(.portrait-card,.project-media,.flow-panel,.video-frame,.screenshot-card,.contact-row,.resume-cta)[data-light-active]:before{will-change:transform}:is(.portrait-card,.project-media,.flow-panel,.video-frame,.screenshot-card,.contact-row,.resume-cta)[data-light-active]:before,:is(.portrait-card,.project-media,.flow-panel,.video-frame,.screenshot-card,.contact-row,.resume-cta)[data-light-active]:after{opacity:1}.project-spread:hover .project-media img,.screenshot-card:hover img{transform:scale(1.018)}.project-spread:hover .project-heading h3 svg,.project-heading h3 .project-title-arrow:hover,a.contact-row:hover>svg,a.resume-cta:hover h2 svg{transform:translate(3px,-3px)}.project-preview-placeholder>div{transition:transform .6s var(--motion-ease)}.project-spread:hover .project-preview-placeholder>div{transform:scale(1.018)}.footer-cta-link:hover{color:var(--aqua)}.footer-cta-link:hover svg{color:var(--aqua);transform:translate(6px)}.footer-cta-link:hover:after{background:var(--aqua);box-shadow:0 0 15px #5eead466}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal,.screenshot-card,.flow-diagram li{opacity:1!important;transform:none!important}.atmosphere>span,.portrait-halo,.portrait-orbit,.portrait-aura{animation:none;transform:none}.hero:before,.case-hero:before,.info-intro:before,.contact-hero:before{transform:none}.flow-diagram li{box-shadow:none!important}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.video-frame[aria-busy=true] video,.video-frame[aria-busy=true] iframe{opacity:0}:root{--section-height:100svh}.hero{flex-direction:column;gap:35px;padding-block:75px 35px;display:flex}.hero-copy{align-self:stretch}.hero h1{letter-spacing:-.055em;max-width:1180px;margin-top:35px;font-size:clamp(2.5rem,5.5vw,5.8rem);line-height:1.15}.hero-bottom{width:100%;margin-top:auto;padding-block:24px 15px}.work-section{padding-block:45px 0}.project-layout{min-width:0}.info-intro{grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);align-items:center}.info-portrait{width:min(100%,420px)}.info-heading h1{font-size:clamp(3rem,5.2vw,5rem)}.info-intro-note{max-width:430px;color:var(--secondary);margin-top:20px;font-size:1.125rem;line-height:1.75}@media (height<=850px) and (width>=768px){.hero,.info-intro{padding-top:45px}}@media (width<=767px){.site-header-notch{top:16px}.nav-notch{padding:4px 6px}.nav-notch-link{padding:8px 16px;font-size:.875rem}.hero{gap:30px;padding-block:50px 25px}.hero h1{margin-top:28px;font-size:clamp(2.25rem,8.5vw,4rem)}.hero h1 br{display:none}.hero-bottom{padding-block:18px}.work-section{padding-top:40px}.project-information{flex-direction:column;gap:24px;margin-bottom:25px;display:flex}.footer-cta-section{text-align:left;grid-template-columns:1fr;gap:30px;padding-bottom:60px}.footer-cta-action{justify-content:flex-start;padding-right:0}.info-intro{grid-template-columns:1fr;gap:36px}.info-heading{order:-1}.info-heading h1{font-size:clamp(3rem,11.5vw,5.5rem)}.info-intro-note{margin-top:16px;font-size:1rem}}@media (width>=1200px) and (height>=720px) and (hover:hover) and (pointer:fine){.viewport-section{min-height:var(--section-height)}.hero{justify-content:center;gap:0;padding-block:clamp(28px,4svh,60px)}.hero-copy{margin-block:auto}.hero h1{margin-top:clamp(24px,4svh,40px);font-size:clamp(3.25rem,7.8svh,5.8rem)}.hero-actions{margin-top:clamp(24px,4svh,40px)}.hero-bottom{flex-shrink:0;margin-top:clamp(24px,4svh,40px)}.work-section,.work-projects{padding:0}.project-spread,.project-spread+.project-spread{flex-direction:column;justify-content:center;padding-block:clamp(24px,4svh,45px);display:flex}.project-heading h3{max-width:none;margin-top:16px;font-size:clamp(2.75rem,6.3svh,4rem)}.project-heading h3 svg{width:46px;height:46px;margin-top:3px}.project-heading .status{margin-top:12px}.project-layout{grid-template-columns:minmax(0,1fr) minmax(0,1.38fr);align-items:center;gap:clamp(40px,4vw,70px);margin-top:clamp(16px,2.5svh,30px);display:grid}.project-information{flex-direction:column;gap:28px;margin:0;display:flex}.project-copy{font-size:1.0625rem;line-height:1.75}.project-copy p+p{margin-top:16px}.project-technologies{gap:6px 16px;margin-top:0;font-size:.875rem}.project-technologies li:not(:last-child):after{padding-left:8px}.project-actions{gap:8px 20px;margin-top:18px}.project-02 .project-layout{grid-template-columns:minmax(0,1.38fr) minmax(0,1fr)}.project-02 .project-information{order:2}.project-02 .project-media-reveal{order:1}.project-media-reveal{min-width:0}.project-media,.project-media-reveal .video-frame{aspect-ratio:16/9;width:100%}.media-sequence{font-size:clamp(5rem,17svh,11rem)}.project-preview-placeholder p{font-size:1.5rem}.media-caption{font-size:.6875rem}.info-intro{gap:clamp(55px,6vw,100px);padding-block:clamp(25px,4svh,45px)}.info-portrait{width:min(100%,420px,calc(var(--section-height) * .52))}.info-heading h1{font-size:clamp(3.25rem,7.8svh,5rem)}.info-section{align-items:center;padding-block:clamp(35px,6svh,70px);display:flex}.info-section-layout{width:100%}.viewport-final{padding:0;display:flex}.viewport-final>.container{flex-direction:column;display:flex}.viewport-final .footer-cta-section{flex-direction:column;flex:1;justify-content:center;padding-block:45px;display:flex}.viewport-final .footer-cta-section>.footer-cta-link{align-self:flex-start}.viewport-final .footer-inner{flex-shrink:0}.contact-page{min-height:var(--section-height);grid-template-columns:minmax(0,1fr) minmax(0,1.35fr);align-content:center;gap:clamp(20px,3svh,35px) 65px;padding-block:clamp(25px,4svh,45px);display:grid}.contact-hero{grid-area:1/1/3;align-self:center;padding:0}.contact-hero h1{margin-top:25px;font-size:clamp(4rem,10svh,6.5rem)}.contact-introduction{flex-direction:column;justify-content:flex-start;gap:5px;margin-top:30px}.contact-directory{grid-column:2}.contact-row{grid-template-columns:minmax(95px,.65fr) minmax(0,1.4fr) 28px;gap:18px;min-height:78px;padding:15px 6px}.contact-row-label{font-size:1.875rem}.contact-row-value{font-size:.875rem}.contact-row>svg{width:26px;height:26px}.contact-page .resume-reveal{grid-column:2;margin:0}.contact-page .resume-cta{padding:25px 30px}.contact-page .resume-cta h2{margin-top:12px;font-size:2.5rem}.contact-page .resume-cta h2 svg{width:35px;height:35px}.contact-page .resume-cta p{margin-top:12px}.contact-page .resume-icon{width:60px;height:60px}}@media (width>=1200px) and (height>=720px) and (height<=850px) and (hover:hover) and (pointer:fine){.project-heading h3{font-size:clamp(2.5rem,5.9svh,3.125rem)}.project-layout{gap:40px;margin-top:22px}.project-information{gap:18px}.project-copy{line-height:1.65}.info-intro-note{font-size:1rem}.case-hero{padding-block:35px}.case-hero h1{margin-top:16px;font-size:6rem}.case-meta{margin-top:30px}}@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-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}
