*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}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;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.container{width:100%}@media (min-width: 640px){.container{max-width:640px}}@media (min-width: 768px){.container{max-width:768px}}@media (min-width: 1024px){.container{max-width:1024px}}@media (min-width: 1280px){.container{max-width:1280px}}@media (min-width: 1536px){.container{max-width:1536px}}.pointer-events-none{pointer-events:none}.pointer-events-auto{pointer-events:auto}.visible{visibility:visible}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.-inset-px{top:-1px;right:-1px;bottom:-1px;left:-1px}.inset-0{top:0;right:0;bottom:0;left:0}.inset-auto{inset:auto}.bottom-0{bottom:0}.bottom-4{bottom:1rem}.left-0{left:0}.left-1\/2{left:50%}.left-6{left:1.5rem}.left-full{left:100%}.right-0{right:0}.right-1\/2{right:50%}.right-3{right:.75rem}.right-4{right:1rem}.right-6{right:1.5rem}.top-0{top:0}.top-1\/2{top:50%}.top-2{top:.5rem}.top-3{top:.75rem}.top-4{top:1rem}.isolate{isolation:isolate}.z-0{z-index:0}.z-20{z-index:20}.z-30{z-index:30}.z-40{z-index:40}.z-50{z-index:50}.z-\[10000\]{z-index:10000}.z-\[9999\]{z-index:9999}.mx-1{margin-left:.25rem;margin-right:.25rem}.mx-auto{margin-left:auto;margin-right:auto}.my-6{margin-top:1.5rem;margin-bottom:1.5rem}.mb-1{margin-bottom:.25rem}.mb-12{margin-bottom:3rem}.mb-16{margin-bottom:4rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-5{margin-bottom:1.25rem}.mb-6{margin-bottom:1.5rem}.mb-8{margin-bottom:2rem}.ml-3{margin-left:.75rem}.mt-0\.5{margin-top:.125rem}.mt-1{margin-top:.25rem}.mt-10{margin-top:2.5rem}.mt-12{margin-top:3rem}.mt-16{margin-top:4rem}.mt-2{margin-top:.5rem}.mt-20{margin-top:5rem}.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.mt-6{margin-top:1.5rem}.mt-8{margin-top:2rem}.line-clamp-2{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2}.line-clamp-3{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3}.\!block{display:block!important}.block{display:block}.\!inline{display:inline!important}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.grid{display:grid}.\!hidden{display:none!important}.hidden{display:none}.h-0\.5{height:.125rem}.h-1{height:.25rem}.h-20{height:5rem}.h-3{height:.75rem}.h-36{height:9rem}.h-4{height:1rem}.h-40{height:10rem}.h-44{height:11rem}.h-48{height:12rem}.h-56{height:14rem}.h-64{height:16rem}.h-\[24px\]{height:24px}.h-full{height:100%}.h-px{height:1px}.min-h-screen{min-height:100vh}.w-1{width:.25rem}.w-20{width:5rem}.w-3{width:.75rem}.w-4{width:1rem}.w-44{width:11rem}.w-48{width:12rem}.w-64{width:16rem}.w-8{width:2rem}.w-\[1\.2px\]{width:1.2px}.w-\[100\%\]{width:100%}.w-\[28rem\]{width:28rem}.w-\[30rem\]{width:30rem}.w-full{width:100%}.max-w-2xl{max-width:42rem}.max-w-3xl{max-width:48rem}.max-w-4xl{max-width:56rem}.max-w-5xl{max-width:64rem}.max-w-full{max-width:100%}.max-w-md{max-width:28rem}.max-w-none{max-width:none}.flex-1{flex:1 1 0%}.flex-shrink-0{flex-shrink:0}.-translate-x-1\/2{--tw-translate-x: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-1\/2{--tw-translate-y: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-20{--tw-translate-y: -5rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-\[12\.5rem\]{--tw-translate-y: -12.5rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-\[6rem\]{--tw-translate-y: -6rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-\[7rem\]{--tw-translate-y: -7rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-1{--tw-translate-x: .25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-y-0{--tw-translate-y: 0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-y-10{--tw-translate-y: 2.5rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-y-12{--tw-translate-y: 3rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-y-32{--tw-translate-y: 8rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scale-x-150{--tw-scale-x: 1.5;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scale-y-125{--tw-scale-y: 1.25;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes spin{to{transform:rotate(360deg)}}.animate-spin{animation:spin 1s linear infinite}.resize-none{resize:none}.resize{resize:both}.list-inside{list-style-position:inside}.list-decimal{list-style-type:decimal}.list-disc{list-style-type:disc}.grid-flow-dense{grid-auto-flow:dense}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.content-start{align-content:flex-start}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.items-center{align-items:center}.items-baseline{align-items:baseline}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-1{gap:.25rem}.gap-12{gap:3rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-5{gap:1.25rem}.gap-6{gap:1.5rem}.gap-8{gap:2rem}.gap-px{gap:1px}.gap-x-8{-moz-column-gap:2rem;column-gap:2rem}.gap-y-3{row-gap:.75rem}.space-y-1>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.25rem * var(--tw-space-y-reverse))}.space-y-12>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(3rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(3rem * var(--tw-space-y-reverse))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}.space-y-2\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.625rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.625rem * var(--tw-space-y-reverse))}.space-y-5>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.25rem * var(--tw-space-y-reverse))}.space-y-6>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.5rem * var(--tw-space-y-reverse))}.divide-y>:not([hidden])~:not([hidden]){--tw-divide-y-reverse: 0;border-top-width:calc(1px * calc(1 - var(--tw-divide-y-reverse)));border-bottom-width:calc(1px * var(--tw-divide-y-reverse))}.divide-neutral-900>:not([hidden])~:not([hidden]){--tw-divide-opacity: 1;border-color:rgb(23 23 23 / var(--tw-divide-opacity, 1))}.overflow-hidden{overflow:hidden}.overflow-visible{overflow:visible}.overflow-x-hidden{overflow-x:hidden}.whitespace-nowrap{white-space:nowrap}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:1rem}.rounded-\[inherit\]{border-radius:inherit}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-md{border-radius:.375rem}.rounded-xl{border-radius:.75rem}.rounded-r-lg{border-top-right-radius:.5rem;border-bottom-right-radius:.5rem}.border{border-width:1px}.border-2{border-width:2px}.border-4{border-width:4px}.border-b{border-bottom-width:1px}.border-l{border-left-width:1px}.border-l-4{border-left-width:4px}.border-t{border-top-width:1px}.border-black\/30{border-color:#0000004d}.border-gray-300\/30{border-color:#d1d5db4d}.border-gray-600{--tw-border-opacity: 1;border-color:rgb(75 85 99 / var(--tw-border-opacity, 1))}.border-gray-700{--tw-border-opacity: 1;border-color:rgb(55 65 81 / var(--tw-border-opacity, 1))}.border-gray-700\/50{border-color:#37415180}.border-gray-800{--tw-border-opacity: 1;border-color:rgb(31 41 55 / var(--tw-border-opacity, 1))}.border-gray-800\/50{border-color:#1f293780}.border-neutral-800{--tw-border-opacity: 1;border-color:rgb(38 38 38 / var(--tw-border-opacity, 1))}.border-neutral-900{--tw-border-opacity: 1;border-color:rgb(23 23 23 / var(--tw-border-opacity, 1))}.border-white{--tw-border-opacity: 1;border-color:rgb(255 255 255 / var(--tw-border-opacity, 1))}.border-white\/60{border-color:#fff9}.border-t-black{--tw-border-opacity: 1;border-top-color:rgb(0 0 0 / var(--tw-border-opacity, 1))}.bg-\[\#FF5C00\]{--tw-bg-opacity: 1;background-color:rgb(255 92 0 / var(--tw-bg-opacity, 1))}.bg-black{--tw-bg-opacity: 1;background-color:rgb(0 0 0 / var(--tw-bg-opacity, 1))}.bg-black\/50{background-color:#00000080}.bg-black\/60{background-color:#0009}.bg-black\/80{background-color:#000c}.bg-gray-800{--tw-bg-opacity: 1;background-color:rgb(31 41 55 / var(--tw-bg-opacity, 1))}.bg-gray-800\/30{background-color:#1f29374d}.bg-gray-900{--tw-bg-opacity: 1;background-color:rgb(17 24 39 / var(--tw-bg-opacity, 1))}.bg-gray-900\/30{background-color:#1118274d}.bg-gray-900\/50{background-color:#11182780}.bg-neutral-500{--tw-bg-opacity: 1;background-color:rgb(115 115 115 / var(--tw-bg-opacity, 1))}.bg-neutral-600{--tw-bg-opacity: 1;background-color:rgb(82 82 82 / var(--tw-bg-opacity, 1))}.bg-neutral-700{--tw-bg-opacity: 1;background-color:rgb(64 64 64 / var(--tw-bg-opacity, 1))}.bg-neutral-900{--tw-bg-opacity: 1;background-color:rgb(23 23 23 / var(--tw-bg-opacity, 1))}.bg-transparent{background-color:transparent}.bg-white{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.bg-white\/10{background-color:#ffffff1a}.bg-white\/30{background-color:#ffffff4d}.bg-gradient-to-br{background-image:linear-gradient(to bottom right,var(--tw-gradient-stops))}.bg-gradient-to-r{background-image:linear-gradient(to right,var(--tw-gradient-stops))}.bg-gradient-to-t{background-image:linear-gradient(to top,var(--tw-gradient-stops))}.from-black{--tw-gradient-from: #000 var(--tw-gradient-from-position);--tw-gradient-to: rgb(0 0 0 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-gray-900\/50{--tw-gradient-from: rgb(17 24 39 / .5) var(--tw-gradient-from-position);--tw-gradient-to: rgb(17 24 39 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-transparent{--tw-gradient-from: transparent var(--tw-gradient-from-position);--tw-gradient-to: rgb(0 0 0 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-white{--tw-gradient-from: #fff var(--tw-gradient-from-position);--tw-gradient-to: rgb(255 255 255 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-white\/20{--tw-gradient-from: rgb(255 255 255 / .2) var(--tw-gradient-from-position);--tw-gradient-to: rgb(255 255 255 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.via-black\/50{--tw-gradient-to: rgb(0 0 0 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), rgb(0 0 0 / .5) var(--tw-gradient-via-position), var(--tw-gradient-to)}.via-transparent{--tw-gradient-to: rgb(0 0 0 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), transparent var(--tw-gradient-via-position), var(--tw-gradient-to)}.to-black\/50{--tw-gradient-to: rgb(0 0 0 / .5) var(--tw-gradient-to-position)}.to-gray-200{--tw-gradient-to: #e5e7eb var(--tw-gradient-to-position)}.to-gray-300{--tw-gradient-to: #d1d5db var(--tw-gradient-to-position)}.to-gray-800{--tw-gradient-to: #1f2937 var(--tw-gradient-to-position)}.to-transparent{--tw-gradient-to: transparent var(--tw-gradient-to-position)}.to-white{--tw-gradient-to: #fff var(--tw-gradient-to-position)}.bg-clip-text{-webkit-background-clip:text;background-clip:text}.object-cover{-o-object-fit:cover;object-fit:cover}.p-0\.5{padding:.125rem}.p-1{padding:.25rem}.p-12{padding:3rem}.p-2{padding:.5rem}.p-2\.5{padding:.625rem}.p-3{padding:.75rem}.p-5{padding:1.25rem}.p-6{padding:1.5rem}.p-8{padding:2rem}.px-1\.5{padding-left:.375rem;padding-right:.375rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-2\.5{padding-left:.625rem;padding-right:.625rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-5{padding-left:1.25rem;padding-right:1.25rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-10{padding-top:2.5rem;padding-bottom:2.5rem}.py-16{padding-top:4rem;padding-bottom:4rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py-5{padding-top:1.25rem;padding-bottom:1.25rem}.py-8{padding-top:2rem;padding-bottom:2rem}.pb-12{padding-bottom:3rem}.pb-16{padding-bottom:4rem}.pb-20{padding-bottom:5rem}.pb-3{padding-bottom:.75rem}.pb-4{padding-bottom:1rem}.pl-6{padding-left:1.5rem}.pt-24{padding-top:6rem}.pt-4{padding-top:1rem}.pt-60{padding-top:15rem}.pt-8{padding-top:2rem}.text-center{text-align:center}.font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.text-2xl{font-size:1.5rem;line-height:2rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-4xl{font-size:2.25rem;line-height:2.5rem}.text-5xl{font-size:3rem;line-height:1}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-medium{font-weight:500}.font-normal{font-weight:400}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.italic{font-style:italic}.leading-relaxed{line-height:1.625}.leading-tight{line-height:1.25}.tracking-\[0\.2em\]{letter-spacing:.2em}.tracking-tight{letter-spacing:-.025em}.tracking-widest{letter-spacing:.1em}.text-black{--tw-text-opacity: 1;color:rgb(0 0 0 / var(--tw-text-opacity, 1))}.text-blue-400{--tw-text-opacity: 1;color:rgb(96 165 250 / var(--tw-text-opacity, 1))}.text-gray-200{--tw-text-opacity: 1;color:rgb(229 231 235 / var(--tw-text-opacity, 1))}.text-gray-300{--tw-text-opacity: 1;color:rgb(209 213 219 / var(--tw-text-opacity, 1))}.text-gray-400{--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity, 1))}.text-gray-500{--tw-text-opacity: 1;color:rgb(107 114 128 / var(--tw-text-opacity, 1))}.text-neutral-300{--tw-text-opacity: 1;color:rgb(212 212 212 / var(--tw-text-opacity, 1))}.text-neutral-400{--tw-text-opacity: 1;color:rgb(163 163 163 / var(--tw-text-opacity, 1))}.text-neutral-500{--tw-text-opacity: 1;color:rgb(115 115 115 / var(--tw-text-opacity, 1))}.text-neutral-600{--tw-text-opacity: 1;color:rgb(82 82 82 / var(--tw-text-opacity, 1))}.text-neutral-700{--tw-text-opacity: 1;color:rgb(64 64 64 / var(--tw-text-opacity, 1))}.text-transparent{color:transparent}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.underline{text-decoration-line:underline}.placeholder-gray-500::-moz-placeholder{--tw-placeholder-opacity: 1;color:rgb(107 114 128 / var(--tw-placeholder-opacity, 1))}.placeholder-gray-500::placeholder{--tw-placeholder-opacity: 1;color:rgb(107 114 128 / var(--tw-placeholder-opacity, 1))}.placeholder-neutral-600::-moz-placeholder{--tw-placeholder-opacity: 1;color:rgb(82 82 82 / var(--tw-placeholder-opacity, 1))}.placeholder-neutral-600::placeholder{--tw-placeholder-opacity: 1;color:rgb(82 82 82 / var(--tw-placeholder-opacity, 1))}.opacity-0{opacity:0}.opacity-10{opacity:.1}.opacity-100{opacity:1}.opacity-50{opacity:.5}.opacity-60{opacity:.6}.shadow-lg{--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-white\/10{--tw-shadow-color: rgb(255 255 255 / .1);--tw-shadow: var(--tw-shadow-colored)}.shadow-white\/20{--tw-shadow-color: rgb(255 255 255 / .2);--tw-shadow: var(--tw-shadow-colored)}.outline{outline-style:solid}.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)}.blur-2xl{--tw-blur: blur(40px);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)}.blur-3xl{--tw-blur: blur(64px);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)}.blur-\[var\(--blur\)\]{--tw-blur: blur(var(--blur));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)}.grayscale{--tw-grayscale: grayscale(100%);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)}.filter{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)}.backdrop-blur-md{--tw-backdrop-blur: blur(12px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.backdrop-blur-sm{--tw-backdrop-blur: blur(4px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.delay-300{transition-delay:.3s}.duration-1000{transition-duration:1s}.duration-200{transition-duration:.2s}.duration-300{transition-duration:.3s}.duration-500{transition-duration:.5s}.\[--conic-position\:from_290deg_at_center_top\]{--conic-position: from 290deg at center top}.\[--conic-position\:from_70deg_at_center_top\]{--conic-position: from 70deg at center top}.\[i\:i\+batch_size\]{i:i+batch size}.\[mask-image\:linear-gradient\(to_top\,white\,transparent\)\]{-webkit-mask-image:linear-gradient(to top,white,transparent);mask-image:linear-gradient(to top,white,transparent)}@font-face{font-family:Satoshi;src:url(/fonts/satoshi-400.woff2) format("woff2");font-style:normal;font-weight:400;font-display:swap}@font-face{font-family:Satoshi;src:url(/fonts/satoshi-400.woff2) format("woff2");font-style:normal;font-weight:500;font-display:swap}@font-face{font-family:Satoshi;src:url(/fonts/satoshi-700.woff2) format("woff2");font-style:normal;font-weight:700;font-display:swap}@font-face{font-family:Satoshi;src:url(/fonts/satoshi-900.woff2) format("woff2");font-style:normal;font-weight:900;font-display:swap}@font-face{font-family:IBM Plex Mono;src:url(/fonts/ibm-plex-mono-400.woff2) format("woff2");font-style:normal;font-weight:400;font-display:swap}@font-face{font-family:IBM Plex Mono;src:url(/fonts/ibm-plex-mono-400.woff2) format("woff2");font-style:normal;font-weight:500;font-display:swap}:root{color-scheme:dark;font-family:Satoshi,sans-serif;font-synthesis:none;--ink: #08090c;--ink-soft: #111319;--paper: #d9dee8;--paper-deep: #aab3c2;--muted: #7f8794;--line: rgba(217, 222, 232, .16);--acid: #ff5d3d;--acid-deep: #d9452b;--blue: #202a48;--blue-deep: #111729;--frame: 1760px;--content-frame: 1760px;--mono: "IBM Plex Mono", monospace}*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--ink);-webkit-text-size-adjust:100%}body{margin:0;min-width:320px;overflow-x:hidden;background:var(--ink);color:var(--paper);-webkit-font-smoothing:antialiased}button,input,textarea{font:inherit}button,a{color:inherit}button{cursor:pointer}::-moz-selection{color:var(--ink);background:var(--acid)}::selection{color:var(--ink);background:var(--acid)}.portfolio-shell{position:relative;background:radial-gradient(circle at 79% 8%,rgba(66,85,142,.13),transparent 30rem),radial-gradient(circle at 5% 34%,rgba(78,91,122,.07),transparent 34rem),var(--ink)}.portfolio-shell:before{position:fixed;z-index:90;top:0;right:0;bottom:0;left:0;opacity:.07;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.95' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.6'/%3E%3C/svg%3E");content:"";pointer-events:none}.intro-gate{position:fixed;z-index:1000;top:0;right:0;bottom:0;left:0;display:grid;grid-template-columns:repeat(3,1fr);overflow:hidden;background:var(--ink);pointer-events:none}.intro-gate-panel{display:block;height:100%;border-right:1px solid #2b303b;background:#0d0f14}.intro-gate span{position:absolute;z-index:2;bottom:30px;left:30px;color:#7f8794;font-family:var(--mono);font-size:8px;letter-spacing:.14em}.site-progress{position:fixed;z-index:110;top:69px;right:0;left:0;height:2px;transform-origin:left}.site-progress i{display:block;width:100%;height:100%;background:var(--acid);transform:scaleX(0);transform-origin:left}.site-nav{position:fixed;z-index:100;top:0;left:0;display:grid;grid-template-columns:1fr minmax(520px,.9fr) 1fr;align-items:center;width:100%;min-height:70px;padding:0 max(24px,calc((100vw - var(--frame)) / 2));border-bottom:1px solid var(--line);background:#08090ceb;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.nav-brand{width:-moz-fit-content;width:fit-content;font-size:13px;font-weight:600;letter-spacing:.03em;text-decoration:none}.nav-links{align-self:stretch;display:grid;grid-template-columns:repeat(5,1fr);border-inline:1px solid var(--line)}.nav-links a{display:grid;place-items:center;border-right:1px solid var(--line);color:#9aa2b0;font-family:var(--mono);font-size:9px;letter-spacing:.04em;text-decoration:none;text-transform:uppercase;transition:color .22s ease,background .22s ease}.nav-links a:last-child{border-right:0}.nav-links a:hover{color:var(--paper);background:#161a23}.nav-links a.is-active{background:#1a1f2a;color:#f0f2f6}.nav-resume{display:inline-flex;justify-self:end;align-items:center;gap:9px;padding-bottom:4px;border-bottom:1px solid #77786f;font-size:13px;text-decoration:none;transition:color .22s ease,border-color .22s ease}.nav-actions{display:flex;align-items:center;justify-self:end;gap:22px}.nav-github{display:grid;width:38px;height:38px;place-items:center;border:1px solid var(--line);border-radius:50%;text-decoration:none;transition:border-color .22s ease,color .22s ease,transform .22s ease}.nav-github:hover{border-color:var(--acid);color:var(--acid);transform:translateY(-2px)}.nav-book{border-top:0;border-right:0;border-left:0;background:transparent}.nav-resume:hover{color:var(--acid);border-color:var(--acid)}.hero-section{position:relative;display:block;width:100%;min-height:max(780px,100dvh);padding:118px max(24px,calc((100vw - var(--frame)) / 2)) 50px;overflow:hidden;background:#090a0e;color:#edf0f5;text-align:left}.fde-hero:before{position:absolute;top:70px;right:0;bottom:0;left:0;opacity:.52;background:linear-gradient(90deg,transparent 0,transparent 49.96%,rgba(217,222,232,.13) 50%,transparent 50.04%),linear-gradient(180deg,transparent 0,transparent 49.9%,rgba(217,222,232,.1) 50%,transparent 50.1%);content:"";pointer-events:none}.fde-hero:after{position:absolute;right:0;bottom:0;left:0;height:1px;background:#eef2ff2e;content:"";pointer-events:none}.hero-orbit{position:absolute;z-index:1;top:50%;left:57%;width:min(72vw,1170px);aspect-ratio:1.62;border:1px solid rgba(217,222,232,.18);border-radius:50%;opacity:.9;transform:translate(-50%,-50%) rotate(-22deg);pointer-events:none}.hero-orbit:before,.hero-orbit:after,.hero-orbit span,.hero-orbit i,.hero-orbit b{position:absolute;display:block;border:1px solid rgba(217,222,232,.13);border-radius:inherit;content:""}.hero-orbit:before{top:8%;right:8%;bottom:8%;left:8%}.hero-orbit:after{top:19%;right:19%;bottom:19%;left:19%;border-color:#d9dee81c}.hero-orbit span{top:31%;right:31%;bottom:31%;left:31%}.hero-orbit i{top:50%;left:-8%;width:116%;height:1px;border-width:1px 0 0;border-radius:0}.hero-orbit b{top:-11%;bottom:-11%;left:50%;width:1px;border-width:0 0 0 1px;border-radius:0}.fde-title{position:absolute;z-index:4;top:17%;right:max(24px,calc((100vw - var(--frame))/2));left:max(24px,calc((100vw - var(--frame))/2));width:auto;margin:0;font-size:clamp(7rem,9.8vw,11.8rem);font-weight:700;letter-spacing:-.085em;line-height:.71;text-transform:uppercase;transform-origin:left center;will-change:transform}.hero-line-wrap{display:block;overflow:hidden;padding:.12em .02em .14em}.masthead-word{display:block;white-space:nowrap}.fde-forward{width:100%;color:#edf0f5}.fde-deployed{margin-left:14.5%;color:transparent;-webkit-text-stroke:1px #8993a5}.fde-engineer-line{position:relative;z-index:2;margin-top:.03em}.hero-foreground-word{margin-left:4.4%;color:#edf0f5;font-weight:900;letter-spacing:-.095em;transform-origin:left center}.hero-coordinate{position:absolute;z-index:6;color:#eef2ffb8;font-family:var(--mono);font-size:8px;letter-spacing:.13em;text-transform:uppercase}.hero-coordinate-top{top:96px;right:max(43px,calc((100vw - var(--frame))/2))}.hero-portrait{position:absolute;z-index:2;top:70px;right:0;bottom:0;width:min(43vw,760px);margin:0;overflow:hidden;pointer-events:none}.hero-portrait:after{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,#090a0e 0%,transparent 30%),linear-gradient(180deg,#090a0e 0%,transparent 18%,#090a0e 100%);content:"";pointer-events:none}.hero-portrait img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;-o-object-position:54% 14%;object-position:54% 14%;filter:grayscale(.08) contrast(1.09) brightness(.9)}.hero-portrait figcaption{position:absolute;z-index:2;right:clamp(24px,2.1vw,40px);bottom:20px;width:112px;color:#edf0f594;font-family:var(--mono);font-size:8px;letter-spacing:.1em;text-align:center;text-transform:uppercase}.hero-actions{position:absolute;z-index:7;right:max(56px,calc((100vw - 1616px)/2));bottom:20px;display:flex;align-items:flex-end;gap:21px}.hero-index-link{display:inline-flex;align-items:center;gap:13px;padding-bottom:7px;border-bottom:1px solid rgba(238,242,255,.72);font-family:var(--mono);font-size:9px;letter-spacing:.08em;text-decoration:none;text-transform:uppercase}.hero-call-orbit{position:relative;display:grid;width:112px;height:112px;place-items:center;border:1px solid rgba(238,242,255,.56);border-radius:50%;background:transparent;color:#eef2ff;transition:transform .28s ease,background .28s ease,color .28s ease}.hero-call-orbit:before{position:absolute;top:7px;right:7px;bottom:7px;left:7px;border:1px dashed rgba(238,242,255,.34);border-radius:inherit;content:""}.hero-call-orbit span{position:absolute;width:76px;font-family:var(--mono);font-size:7px;line-height:1.45;letter-spacing:.07em;text-align:center;text-transform:uppercase;transform:translateY(29px)}.hero-call-orbit svg{transform:translateY(-12px)}.hero-call-orbit:hover{background:var(--acid);color:var(--ink);transform:rotate(7deg)}.hero-booking-origin.is-origin-hidden{opacity:0;pointer-events:none}.global-booking-float{position:fixed;z-index:140;right:24px;bottom:24px;width:104px;height:104px;border-color:#d9dee885;background:#090b10e6;box-shadow:0 18px 65px #0000006b;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);animation:booking-float-in .48s cubic-bezier(.22,1,.36,1)}.global-booking-float:hover{border-color:var(--acid);background:var(--acid)}@keyframes booking-float-in{0%{opacity:0;transform:translateY(18px) scale(.78)}to{opacity:1;transform:translateY(0) scale(1)}}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:34px;min-height:53px;padding:0 19px;border-radius:0;font-size:13px;font-weight:600;text-decoration:none;transition:transform .24s ease,background .24s ease,border-color .24s ease}.button:hover{transform:translateY(-3px)}.button-primary{border:1px solid var(--acid);background:var(--acid);color:var(--ink)}.button-primary:hover{background:#e4ff78}.button-secondary{border:1px solid rgba(238,234,224,.3);background:#090a09bf;color:var(--paper)}.button-secondary:hover{border-color:var(--paper);background:var(--ink)}.hero-role-note{position:absolute;z-index:6;bottom:76px;left:max(43px,calc((100vw - var(--frame))/2));display:grid;grid-template-columns:104px minmax(0,1fr);gap:22px;width:min(30vw,430px);padding-top:14px;border-top:1px solid rgba(217,222,232,.42)}.hero-role-note strong{display:block;margin:2px 0 0;font-family:var(--mono);font-size:8px;font-weight:500;line-height:1.55;letter-spacing:.12em}.hero-role-note p{margin:0;color:#c5ccd8;font-size:14px;line-height:1.56}.hero-side-note{position:absolute;z-index:2;bottom:59px;left:max(43px,calc((100vw - var(--frame))/2));max-width:245px;margin:0;color:#eef2ffb8;font-size:13px;line-height:1.55;text-align:left;display:none}.discipline-marquee{width:100%;overflow:hidden;border-block:1px solid var(--line);background:#121620;color:var(--paper)}.discipline-track{display:flex;width:-moz-max-content;width:max-content;padding:21px 0;animation:discipline-marquee 34s linear infinite}.discipline-group{display:flex;flex:none}.discipline-track span{display:flex;align-items:center;gap:26px;padding-left:26px;color:#a9b1bf;font-family:var(--mono);font-size:10px;font-weight:500;letter-spacing:.15em}.discipline-track i{width:5px;height:5px;border-radius:50%;background:var(--acid)}@keyframes discipline-marquee{to{transform:translate(-50%)}}.statement-section{width:min(calc(100% - 48px),var(--content-frame));margin:0 auto;padding:200px 0}.statement-context{margin:0 0 44px;color:var(--muted);font-family:var(--mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase}.statement-section h2{width:100%;max-width:1340px;margin:0;overflow-wrap:anywhere;font-size:clamp(3.2rem,5.35vw,5.8rem);font-weight:500;letter-spacing:-.06em;line-height:.98}.statement-word{display:inline-block;margin-right:.2em;will-change:opacity}.inline-image{display:inline-block;width:1.5em;height:.56em;margin:0 .12em;border-radius:999px;background-position:center;background-size:cover;vertical-align:.08em;filter:grayscale(1) contrast(1.15)}.inline-image-code{background-image:url(/images/software-testing.jpg)}.inline-image-cloud{background-image:url(/images/cloud.webp)}.statement-foot{display:grid;grid-template-columns:1fr 1fr;gap:90px;margin-top:75px;padding-top:28px;border-top:1px solid var(--line)}.statement-foot p{max-width:510px;margin:0;color:#a2a198;font-size:16px;line-height:1.65}.statement-foot a{display:inline-flex;align-items:center;justify-self:end;gap:12px;height:-moz-fit-content;height:fit-content;padding-bottom:6px;border-bottom:1px solid #77776e;font-size:13px;text-decoration:none;transition:color .2s ease,border-color .2s ease}.statement-foot a:hover{color:var(--acid);border-color:var(--acid)}.capability-section,.experience-section,.writing-section{width:min(calc(100% - 48px),var(--content-frame));margin:0 auto;padding:180px 0}.section-heading{display:grid;grid-template-columns:.72fr 1.28fr;align-items:start;gap:70px;margin-bottom:78px}.section-heading>p{max-width:330px;margin:0;color:var(--muted);font-family:var(--mono);font-size:10px;line-height:1.65;letter-spacing:.08em;text-transform:uppercase}.section-heading h2{max-width:850px;margin:0;font-size:clamp(3.1rem,5.5vw,6.3rem);font-weight:500;letter-spacing:-.065em;line-height:.95}.capability-grid{display:grid;grid-template-columns:1fr 1fr 1fr;grid-auto-flow:dense;min-height:620px;gap:1px;overflow:hidden;border:1px solid rgba(238,234,224,.2);background:#eeeae033;transition:grid-template-columns .9s cubic-bezier(.22,1,.36,1)}.capability-panel{position:relative;display:flex;flex-direction:column;justify-content:space-between;min-width:0;min-height:620px;padding:36px;overflow:hidden;background:#12151b;transition:background .7s cubic-bezier(.22,1,.36,1)}.capability-grid:has(.capability-panel-1:hover){grid-template-columns:1.7fr .9fr .9fr}.capability-grid:has(.capability-panel-2:hover){grid-template-columns:.9fr 1.7fr .9fr}.capability-grid:has(.capability-panel-3:hover){grid-template-columns:.9fr .9fr 1.7fr}.capability-grid .capability-panel:hover{background:#171c27}.capability-panel-1{background:#222833;color:var(--paper)}.capability-grid .capability-panel-1:hover{background:#2a323f}.capability-panel h3{position:relative;z-index:2;max-width:560px;margin:0 0 23px;font-size:clamp(2rem,3.25vw,4rem);font-weight:500;letter-spacing:-.055em;line-height:.98}.capability-panel>div>p{position:relative;z-index:2;max-width:500px;margin:0;color:#96968d;font-size:15px;line-height:1.6}.capability-panel-1>div>p{max-width:430px;color:#a3adbc}.capability-panel ul{position:relative;z-index:2;display:flex;flex-wrap:wrap;gap:8px 18px;margin:45px 0 0;padding:0;list-style:none}.capability-panel li{color:#aaa99f;font-family:var(--mono);font-size:9px;letter-spacing:.08em;text-transform:uppercase}.capability-panel-1 li{color:#a3adbc}.system-diagram{position:absolute;right:-15%;bottom:-8%;width:420px;height:420px;border:1px solid rgba(217,222,232,.14);border-radius:50%}.system-diagram:before,.system-diagram:after{position:absolute;border:1px solid rgba(217,222,232,.14);border-radius:50%;content:""}.system-diagram:before{top:18%;right:18%;bottom:18%;left:18%}.system-diagram:after{top:38%;right:38%;bottom:38%;left:38%}.system-diagram span{position:absolute;width:8px;height:8px;border-radius:50%;background:var(--paper);box-shadow:0 0 0 7px #d9dee814}.system-diagram span:nth-child(1){top:9%;left:45%}.system-diagram span:nth-child(2){top:39%;right:6%}.system-diagram span:nth-child(3){right:28%;bottom:8%}.system-diagram span:nth-child(4){bottom:25%;left:9%}.system-diagram span:nth-child(5){top:48%;left:48%}.work-section{width:100%;padding:210px max(24px,calc((100vw - var(--content-frame))/2));background:#0d1016;color:var(--paper)}.cases-layout{display:grid;grid-template-columns:.72fr 1.28fr;gap:clamp(60px,8vw,140px);align-items:start}.cases-intro{align-self:start}.cases-intro>p:first-child{max-width:330px;margin:0 0 35px;color:#7f8794;font-family:var(--mono);font-size:10px;line-height:1.65;letter-spacing:.08em;text-transform:uppercase}.cases-intro h2{max-width:560px;margin:0;font-size:clamp(3.4rem,5.3vw,6.2rem);font-weight:500;letter-spacing:-.065em;line-height:.94}.cases-intro>p:nth-of-type(2){max-width:400px;margin:42px 0 34px;color:#939cab;font-size:16px;line-height:1.65}.cases-intro>a{display:inline-flex;align-items:center;gap:12px;padding-bottom:6px;border-bottom:1px solid #717168;font-size:13px;text-decoration:none;transition:border-color .2s ease}.cases-intro>a:hover{border-color:var(--ink)}.case-stack{display:flex;flex-direction:column;gap:110px}.case-sheet{position:sticky;top:95px;overflow:hidden;border:1px solid #303642;background:#141820;box-shadow:0 35px 100px #00000061;transform-origin:center top}.case-sheet:nth-child(2){top:112px}.case-sheet:nth-child(3){top:129px}.case-sheet:nth-child(4){top:146px}.case-browser{margin:18px 18px 0;border:1px solid rgba(9,10,9,.18);background:#171816}.browser-bar{display:flex;align-items:center;gap:6px;height:35px;padding:0 12px;border-bottom:1px solid rgba(238,234,224,.12)}.browser-bar i{width:6px;height:6px;border-radius:50%;background:#77776f}.browser-bar span{margin-left:auto;color:#93938a;font-family:var(--mono);font-size:8px;letter-spacing:.06em}.case-image-link{display:block;aspect-ratio:16/9;overflow:hidden;background:#0d0e0d}.case-image-link img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;filter:grayscale(.88) contrast(1.06);transition:transform .7s ease-out,filter .7s ease-out}.case-image-link:hover img{transform:scale(1.035);filter:grayscale(0) contrast(1)}.case-copy{padding:32px 30px 30px}.case-copy>p:first-child{margin:0 0 14px;color:#8791a2;font-family:var(--mono);font-size:9px;letter-spacing:.1em;text-transform:uppercase}.case-copy h3{margin:0 0 16px;font-size:clamp(2.5rem,4vw,5rem);font-weight:500;letter-spacing:-.06em;line-height:.92}.case-copy>p:nth-of-type(2){max-width:650px;margin:0;color:#9ba5b5;font-size:15px;line-height:1.6}.case-copy>div{display:flex;align-items:flex-end;justify-content:space-between;gap:25px;margin-top:28px;padding-top:19px;border-top:1px solid var(--line)}.case-copy>div span{color:#6e6e66;font-family:var(--mono);font-size:8px;letter-spacing:.06em;text-transform:uppercase}.case-copy>div a{display:inline-flex;align-items:center;gap:9px;font-size:12px;font-weight:600;text-decoration:none}.feedback-section{width:100%;padding:175px 0;overflow:hidden;border-block:1px solid var(--line)}.feedback-heading{display:flex;align-items:center;justify-content:space-between;width:min(calc(100% - 48px),var(--content-frame));margin:0 auto 48px}.feedback-heading p,.feedback-heading span{margin:0;color:var(--muted);font-family:var(--mono);font-size:9px;letter-spacing:.1em;text-transform:uppercase}.feedback-viewport{width:100%;overflow:hidden}.feedback-rail{display:flex;gap:18px;width:-moz-max-content;width:max-content;animation:feedback-loop 36s linear infinite;will-change:transform}.feedback-viewport:hover .feedback-rail{animation-play-state:paused}.feedback-group{display:flex;gap:18px}.feedback-item{display:flex;flex:0 0 clamp(390px,46vw,690px);flex-direction:column;justify-content:space-between;min-height:360px;padding:38px;border:1px solid var(--line);background:linear-gradient(145deg,#11151d,#090b0f)}.feedback-item blockquote{max-width:620px;margin:0;font-size:clamp(2.25rem,3.7vw,4.7rem);font-weight:500;letter-spacing:-.055em;line-height:.98}.feedback-person{display:flex;flex-direction:column;margin-top:55px}.feedback-person strong{font-size:14px;font-weight:600}.feedback-person span{margin-top:3px;color:var(--muted);font-family:var(--mono);font-size:9px;letter-spacing:.08em;text-transform:uppercase}@keyframes feedback-loop{to{transform:translate(calc(-50% - 9px))}}.experience-section{padding-top:170px}.experience-list{border-top:1px solid var(--line)}.experience-row{display:grid;grid-template-columns:.75fr 1.2fr 1.35fr .7fr;align-items:start;gap:36px;padding:34px 0;border-bottom:1px solid var(--line);transition:padding .28s ease,color .28s ease}.experience-row:hover{padding-inline:16px;color:var(--acid)}.experience-row>p:first-child,.experience-row>span{color:#77776f;font-family:var(--mono);font-size:9px;line-height:1.55;letter-spacing:.06em;text-transform:uppercase}.experience-row h3{margin:0 0 5px;font-size:19px;font-weight:600}.experience-row div p{margin:0;color:#8f8f86;font-size:13px}.experience-row>p:nth-child(3){max-width:510px;margin:0;color:#9d9c93;font-size:14px;line-height:1.58}.experience-row:hover>p,.experience-row:hover div p,.experience-row:hover>span{color:inherit}.credential-band{display:grid;grid-template-columns:1fr 1fr;gap:1px;margin-top:80px;border:1px solid var(--line);background:var(--line)}.credential-band>div{padding:38px;background:var(--ink-soft)}.credential-band p{margin:0 0 48px;color:var(--muted);font-family:var(--mono);font-size:9px;letter-spacing:.1em;text-transform:uppercase}.credential-band h3{margin:0 0 9px;font-size:clamp(1.7rem,2.8vw,3.2rem);font-weight:500;letter-spacing:-.045em}.credential-band span{color:#8e8e86;font-size:13px}.writing-section{padding-bottom:200px}.notes-list{border-top:1px solid var(--line)}.notes-list>a{display:grid;grid-template-columns:.55fr 1.45fr auto;align-items:center;gap:40px;min-height:145px;padding:28px 0;border-bottom:1px solid var(--line);text-decoration:none;transition:padding .28s ease,background .28s ease}.notes-list>a:hover{padding-inline:22px;background:#eeeae009}.notes-list span{color:var(--muted);font-family:var(--mono);font-size:9px;letter-spacing:.07em;text-transform:uppercase}.notes-list h3{max-width:800px;margin:0;font-size:clamp(1.75rem,3vw,3.65rem);font-weight:500;letter-spacing:-.045em;line-height:1}.notes-list svg{transition:transform .26s ease}.notes-list a:hover svg{transform:translate(5px,-5px)}.writing-archive{display:inline-flex;align-items:center;gap:11px;margin-top:36px;padding-bottom:6px;border-bottom:1px solid #73736b;font-size:13px;text-decoration:none}.github-section{position:relative;width:100%;padding:64px max(24px,calc((100vw - var(--frame))/2)) 190px;overflow:hidden;border-top:1px solid #273142;background:linear-gradient(90deg,rgba(36,48,75,.14) 1px,transparent 1px) 0 0/12.5% 100%,#090b10;color:#e7ebf2}.github-section:before{position:absolute;top:0;right:0;width:29vw;height:540px;background:radial-gradient(circle at top right,rgba(255,93,61,.1),transparent 66%);content:"";pointer-events:none}.github-section-rule{position:relative;display:flex;align-items:center;gap:24px;margin-bottom:150px;color:#768092;font-family:var(--mono);font-size:8px;letter-spacing:.13em}.github-section-rule i{flex:1;height:1px;background:#273142}.github-overview{position:relative;display:grid;grid-template-columns:repeat(12,1fr);gap:0 34px;align-items:start}.github-index{grid-column:1/6;align-self:start;max-width:555px;padding-right:40px}.github-identity{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:14px;width:min(100%,390px);margin-bottom:62px;padding:15px 0;border-block:1px solid #2b3443;text-decoration:none;transition:color .2s ease,border-color .2s ease}.github-identity:hover{color:var(--acid);border-color:var(--acid)}.github-identity span{display:flex;min-width:0;flex-direction:column}.github-identity strong{font-size:14px;font-weight:600}.github-identity small{margin-top:2px;color:#737d8d;font-family:var(--mono);font-size:8px;letter-spacing:.06em}.github-eyebrow{max-width:330px;margin:0 0 28px;color:#768092;font-family:var(--mono);font-size:9px;line-height:1.6;letter-spacing:.1em;text-transform:uppercase}.github-index h2{max-width:590px;margin:0;font-size:clamp(4rem,5.7vw,7rem);font-weight:500;letter-spacing:-.072em;line-height:.86}.github-deck{max-width:480px;margin:40px 0 0;color:#9aa4b4;font-size:16px;line-height:1.65}.github-audit{display:grid;grid-template-columns:repeat(3,1fr);margin-top:64px;border-block:1px solid #2b3443}.github-audit>div{min-width:0;padding:23px 14px 23px 0}.github-audit>div+div{padding-left:14px;border-left:1px solid #2b3443}.github-audit strong{display:block;color:#f0f3f8;font-size:clamp(1.9rem,2.6vw,3.4rem);font-weight:500;letter-spacing:-.06em}.github-audit span{display:block;max-width:110px;margin-top:7px;color:#717b8b;font-family:var(--mono);font-size:7px;line-height:1.45;letter-spacing:.06em;text-transform:uppercase}.github-audit-note{display:block;margin-top:15px;color:#596273;font-family:var(--mono);font-size:7px;letter-spacing:.06em;text-transform:uppercase}.github-ledger{grid-column:6/13;border-top:1px solid #354052}.github-repo-row{position:relative;display:block;min-height:405px;padding:30px 8px 32px;overflow:hidden;border-bottom:1px solid #354052;text-decoration:none}.github-repo-row:after{position:absolute;z-index:0;right:-50px;bottom:-85px;width:240px;height:240px;border:1px solid rgba(217,222,232,.08);border-radius:50%;box-shadow:0 0 0 34px #d9dee806,0 0 0 70px #d9dee805;content:"";transform:scale(.72);transition:transform .7s cubic-bezier(.22,1,.36,1),border-color .3s ease}.github-repo-row:hover:after{border-color:#ff5d3d73;transform:scale(1)}.github-repo-progress{position:absolute;z-index:2;top:-1px;right:0;left:0;height:2px;background:var(--acid);transform-origin:left}.github-repo-meta{position:relative;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:30px;color:#778294;font-family:var(--mono);font-size:8px;letter-spacing:.09em;text-transform:uppercase}.github-repo-meta span:last-child{color:#a6afbd}.github-repo-title{position:relative;z-index:1;display:flex;align-items:flex-start;justify-content:space-between;gap:30px;margin-top:60px}.github-repo-title h3{max-width:800px;margin:0;font-size:clamp(3.5rem,5.5vw,7rem);font-weight:500;letter-spacing:-.068em;line-height:.86;transition:color .23s ease,transform .5s cubic-bezier(.22,1,.36,1)}.github-repo-title svg{flex:0 0 auto;margin-top:8px;transition:color .22s ease,transform .35s cubic-bezier(.22,1,.36,1)}.github-repo-row:hover .github-repo-title h3{color:var(--acid);transform:translate(8px)}.github-repo-row:hover .github-repo-title svg{color:var(--acid);transform:translate(6px,-6px)}.github-repo-row>p{position:relative;z-index:1;max-width:730px;margin:29px 0 0;color:#929dad;font-size:15px;line-height:1.65}.github-repo-proof{position:relative;z-index:1;display:flex;flex-wrap:wrap;align-items:center;gap:10px 22px;margin-top:45px;padding-top:18px;border-top:1px solid #242c39}.github-repo-proof span,.github-repo-proof code{color:#758091;font-family:var(--mono);font-size:8px;letter-spacing:.06em;text-transform:uppercase}.github-repo-proof code{margin-left:auto;color:#a8b1bf;text-transform:none}.github-archive{display:grid;grid-template-columns:5fr 7fr;gap:34px;margin-top:170px;padding-top:34px;border-top:1px solid #354052}.github-archive-heading{padding-right:40px}.github-archive-heading p{margin:0 0 15px;font-size:22px;letter-spacing:-.025em}.github-archive-heading span{display:block;max-width:410px;color:#747f90;font-size:13px;line-height:1.6}.github-archive-list{border-top:1px solid #2b3443}.github-archive-list a{display:grid;grid-template-columns:1.15fr 1fr auto;align-items:center;gap:30px;min-height:76px;border-bottom:1px solid #2b3443;text-decoration:none;transition:padding .26s ease,background .26s ease}.github-archive-list a:hover{padding-inline:15px;background:#d9dee809}.github-archive-list span{min-width:0;overflow:hidden;font-size:14px;font-weight:500;text-overflow:ellipsis;white-space:nowrap}.github-archive-list small{color:#727d8e;font-family:var(--mono);font-size:8px;letter-spacing:.04em}.github-toolkit{display:grid;grid-template-columns:5fr 7fr;gap:34px;margin-top:190px;padding-top:40px;border-top:1px solid #354052}.github-toolkit-heading{padding-right:60px}.github-toolkit-heading>p{margin:0 0 33px;color:#768092;font-family:var(--mono);font-size:8px;letter-spacing:.1em;text-transform:uppercase}.github-toolkit-heading h3{max-width:560px;margin:0;font-size:clamp(3rem,4.6vw,5.7rem);font-weight:500;letter-spacing:-.065em;line-height:.91}.github-toolkit-heading>span{display:block;max-width:390px;margin-top:32px;color:#7d8797;font-size:13px;line-height:1.55}.github-toolkit-matrix{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid #354052;border-left:1px solid #354052}.github-toolkit-matrix>div{min-height:210px;padding:27px;border-right:1px solid #354052;border-bottom:1px solid #354052;background:#0c0f16b8;transition:background .24s ease,color .24s ease}.github-toolkit-matrix>div:hover{background:#171d28;color:var(--acid)}.github-toolkit-matrix>div:last-child{grid-column:1/-1;min-height:170px}.github-toolkit-matrix h4{margin:0 0 70px;font-family:var(--mono);font-size:9px;font-weight:500;letter-spacing:.1em;text-transform:uppercase}.github-toolkit-matrix p{max-width:510px;margin:0;color:#8f9aaa;font-size:14px;line-height:1.7;transition:color .24s ease}.github-toolkit-matrix>div:hover p{color:#bec6d2}.github-reference{display:grid;grid-template-columns:5fr 7fr;gap:34px;margin-top:190px;padding-top:40px;border-top:1px solid #354052}.github-reference-heading{padding-right:60px}.github-reference-heading>p{margin:0 0 33px;color:#768092;font-family:var(--mono);font-size:8px;letter-spacing:.1em;text-transform:uppercase}.github-reference-heading h3{max-width:570px;margin:0;font-size:clamp(3rem,4.5vw,5.6rem);font-weight:500;letter-spacing:-.065em;line-height:.91}.github-reference-heading a{display:inline-flex;align-items:center;gap:10px;margin-top:35px;padding-bottom:5px;border-bottom:1px solid #687283;color:#9ca6b5;font-size:12px;text-decoration:none;transition:color .2s ease,border-color .2s ease}.github-reference-heading a:hover{border-color:var(--acid);color:var(--acid)}.github-reference dl{margin:0;border-top:1px solid #354052}.github-reference dl>div{display:grid;grid-template-columns:.72fr 1.28fr;gap:40px;padding:29px 0;border-bottom:1px solid #354052}.github-reference dt{font-size:16px;font-weight:500;letter-spacing:-.02em}.github-reference dd{max-width:650px;margin:0;color:#8e99a9;font-size:14px;line-height:1.65}.github-reference dd a{color:#d3d9e2;text-decoration-color:#657083;text-underline-offset:4px}.contact-section{display:grid;grid-template-columns:.82fr 1.18fr;gap:clamp(70px,9vw,150px);width:100%;padding:180px max(24px,calc((100vw - var(--content-frame))/2));border-top:1px solid #29303c;background:linear-gradient(135deg,#171b25,#0b0d12 70%);color:#eef1f6}.contact-heading>p:first-child{margin:0 0 33px;font-family:var(--mono);font-size:10px;letter-spacing:.11em;text-transform:uppercase}.contact-heading h2{max-width:610px;margin:0;font-size:clamp(3.4rem,6vw,7rem);font-weight:500;letter-spacing:-.07em;line-height:.89}.contact-heading>p:nth-of-type(2){max-width:520px;margin:38px 0 29px;font-size:16px;line-height:1.62}.contact-heading button{display:inline-flex;align-items:center;gap:10px;padding:0 0 5px;border:0;border-bottom:1px solid rgba(238,242,255,.65);background:transparent;font-size:13px;font-weight:600}.contact-form{align-self:start;padding:34px;background:#0c0f15;color:var(--paper);box-shadow:0 32px 90px #0000004d}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:22px}.contact-form label{display:block}.contact-form label>span{display:block;margin-bottom:10px;color:#a0a096;font-family:var(--mono);font-size:9px;letter-spacing:.08em;text-transform:uppercase}.contact-form input,.contact-form textarea{width:100%;border:1px solid rgba(217,222,232,.2);border-radius:0;outline:0;background:#090b10;color:var(--paper);transition:border-color .2s ease,background .2s ease}.contact-form input{height:54px;padding:0 15px}.contact-form textarea{min-height:190px;margin-top:0;padding:15px;resize:vertical}.contact-form label+label,.contact-form .form-row+label{margin-top:24px}.form-row label+label{margin-top:0}.contact-form input:focus,.contact-form textarea:focus{border-color:var(--acid);background:#111722}.contact-form input::-moz-placeholder,.contact-form textarea::-moz-placeholder{color:#596273}.contact-form input::placeholder,.contact-form textarea::placeholder{color:#596273}.form-action{display:flex;align-items:center;justify-content:space-between;gap:28px;margin-top:24px}.form-action p{display:flex;align-items:center;gap:8px;max-width:330px;margin:0;color:#888980;font-size:12px;line-height:1.5}.form-action button{display:inline-flex;align-items:center;justify-content:space-between;gap:30px;min-height:50px;padding:0 17px;border:1px solid var(--paper);background:var(--paper);color:var(--ink);font-size:13px;font-weight:600;transition:background .22s ease,border-color .22s ease}.form-action button:hover{border-color:var(--acid);background:var(--acid)}.form-action button:disabled{cursor:wait;opacity:.65}.site-footer{display:grid;grid-template-columns:1.1fr 1fr auto;align-items:end;gap:60px;padding:80px max(24px,calc((100vw - var(--content-frame))/2)) 34px;border-top:1px solid var(--line);background:var(--ink)}.site-footer>div:first-child{display:flex;flex-direction:column}.site-footer>div:first-child strong{font-size:20px;font-weight:600}.site-footer>div:first-child span{margin-top:5px;color:var(--muted);font-size:12px}.site-footer nav{display:flex;flex-wrap:wrap;gap:12px 24px}.site-footer nav a{color:#a3a39a;font-size:12px;text-decoration:none;transition:color .2s ease}.site-footer nav a:hover{color:var(--acid)}.footer-socials{display:flex;gap:7px}.footer-socials a{display:grid;width:42px;height:42px;place-items:center;border:1px solid var(--line);transition:color .2s ease,border-color .2s ease,transform .2s ease}.footer-socials a:hover{border-color:var(--acid);color:var(--acid);transform:translateY(-3px)}.site-footer>p{grid-column:1/-1;margin:55px 0 0;padding-top:20px;border-top:1px solid var(--line);color:#66675f;font-family:var(--mono);font-size:8px;letter-spacing:.08em;text-transform:uppercase}.route-shell{min-height:100vh;background:var(--ink);color:var(--paper)}.page-transition{animation:page-enter .36s cubic-bezier(.22,1,.36,1) both}@keyframes page-enter{0%{opacity:0}to{opacity:1}}.route-nav{position:fixed;z-index:100;top:0;left:0;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;width:100%;min-height:70px;padding:0 max(24px,calc((100vw - var(--content-frame))/2));border-bottom:1px solid var(--line);background:#090a09db;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.route-brand{width:-moz-fit-content;width:fit-content;font-size:13px;font-weight:600;letter-spacing:.03em;text-decoration:none}.route-nav nav{display:flex;gap:30px}.route-nav nav a{color:#a0a097;font-size:13px;text-decoration:none;transition:color .2s ease}.route-nav nav a:hover{color:var(--paper)}.route-nav nav a.is-active{color:var(--paper)}.route-actions{display:flex;align-items:center;justify-self:end;gap:20px}.route-github{display:grid;width:34px;height:34px;place-items:center;border:1px solid var(--line);border-radius:50%;color:#a0a8b7;text-decoration:none;transition:color .2s ease,border-color .2s ease,transform .2s ease}.route-github:hover{border-color:var(--acid);color:var(--acid);transform:translateY(-2px)}.route-contact{display:inline-flex;align-items:center;gap:9px;padding:0 0 4px;border:0;border-bottom:1px solid #74746c;background:transparent;color:inherit;font:inherit;font-size:13px;text-decoration:none;cursor:pointer}.archive-hero,.journal-hero{width:min(calc(100% - 48px),var(--content-frame));margin:0 auto;padding:175px 0 110px}.archive-hero>p,.journal-hero>p{max-width:470px;margin:0 0 38px;color:var(--muted);font-family:var(--mono);font-size:10px;line-height:1.65;letter-spacing:.08em;text-transform:uppercase}.archive-hero h1,.journal-hero h1{max-width:1180px;margin:0;font-size:clamp(4.2rem,8vw,9.4rem);font-weight:500;letter-spacing:-.075em;line-height:.86}.archive-hero>div{display:flex;flex-wrap:wrap;gap:18px 34px;margin-top:58px;padding-top:22px;border-top:1px solid var(--line)}.archive-hero>div span{color:#85857d;font-family:var(--mono);font-size:9px;letter-spacing:.08em;text-transform:uppercase}.archive-filters{display:flex;flex-wrap:wrap;gap:11px 28px;width:min(calc(100% - 48px),var(--content-frame));margin:0 auto 85px;border-bottom:1px solid var(--line)}.archive-filters button{padding:0 0 16px;border:0;border-bottom:2px solid transparent;background:transparent;color:#77776f;font-size:13px;transition:color .2s ease,border-color .2s ease}.archive-filters button:hover{color:var(--paper)}.archive-filters button[aria-pressed=true]{border-color:var(--acid);color:var(--paper)}.study-list{width:100%}.study{display:grid;grid-template-columns:.7fr 1.3fr;gap:70px 100px;padding:150px max(24px,calc((100vw - var(--content-frame))/2));border-top:1px solid var(--line)}.study:nth-child(2n){background:#11151c;color:var(--paper)}.study-heading>p{margin:0 0 28px;color:#85857d;font-family:var(--mono);font-size:9px;letter-spacing:.08em;text-transform:uppercase}.study-heading h2{max-width:560px;margin:0;font-size:clamp(3rem,5.2vw,6.3rem);font-weight:500;letter-spacing:-.065em;line-height:.92}.study-heading>div{display:flex;gap:12px 26px;margin-top:32px;color:#85857d;font-family:var(--mono);font-size:9px;letter-spacing:.06em;text-transform:uppercase}.study-media{grid-column:2;grid-row:1/3;align-self:start;aspect-ratio:16/10;overflow:hidden;background:#151613}.study-media img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;filter:grayscale(.85) contrast(1.1);transition:transform .8s ease,filter .6s ease}.study:hover .study-media img{transform:scale(1.035);filter:grayscale(.2) contrast(1.05)}.study-overview{align-self:end}.study-overview>p{max-width:540px;margin:0;color:#999990;font-size:16px;line-height:1.65}.study:nth-child(2n) .study-overview>p{color:#99a3b2}.study-overview ul{display:flex;flex-wrap:wrap;gap:8px 17px;margin:30px 0 0;padding:0;list-style:none}.study-overview li{color:#77776f;font-family:var(--mono);font-size:8px;letter-spacing:.07em;text-transform:uppercase}.study-overview>a{display:inline-flex;align-items:center;gap:9px;margin-top:26px;padding-bottom:5px;border-bottom:1px solid currentColor;font-size:12px;font-weight:600;text-decoration:none}.study-stats{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,1fr);border-block:1px solid var(--line)}.study:nth-child(2n) .study-stats{border-color:var(--line)}.study-stats div{padding:30px 0;border-right:1px solid var(--line)}.study:nth-child(2n) .study-stats div{border-color:var(--line)}.study-stats div+div{padding-left:30px}.study-stats strong{display:block;font-size:clamp(2rem,3.4vw,4rem);font-weight:500;letter-spacing:-.05em}.study-stats span{color:#818179;font-family:var(--mono);font-size:8px;letter-spacing:.08em;text-transform:uppercase}.study-detail{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,1fr);gap:50px}.study-detail h3{margin:0 0 22px;font-family:var(--mono);font-size:9px;font-weight:400;letter-spacing:.08em;text-transform:uppercase}.study-detail ul{margin:0;padding:0;list-style:none}.study-detail li{position:relative;margin-top:11px;padding-left:18px;color:#97978e;font-size:14px;line-height:1.5}.study:nth-child(2n) .study-detail li{color:#99a3b2}.study-detail li:before{position:absolute;top:.65em;left:0;width:5px;height:5px;border-radius:50%;background:var(--acid);content:""}.study:nth-child(2n) .study-detail li:before{background:var(--acid)}.route-cta{padding:180px max(24px,calc((100vw - var(--content-frame))/2));background:linear-gradient(135deg,#171b25,#0b0d12);color:#eef2ff}.route-cta>p{margin:0 0 30px;font-family:var(--mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase}.route-cta h2{max-width:990px;margin:0;font-size:clamp(3.5rem,7vw,8rem);font-weight:500;letter-spacing:-.07em;line-height:.88}.route-cta a{display:inline-flex;align-items:center;gap:20px;margin-top:50px;padding:17px 19px;background:var(--acid);color:var(--ink);font-size:13px;font-weight:600;text-decoration:none}.journal-hero{padding-bottom:90px}.journal-hero h1{max-width:1040px}.journal-filters{margin-bottom:75px}.lead-article{display:grid;grid-template-columns:1.2fr .8fr;width:min(calc(100% - 48px),var(--content-frame));margin:0 auto 145px;border:1px solid var(--line);text-decoration:none}.lead-image{min-height:560px;overflow:hidden}.lead-image img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;filter:grayscale(.8) contrast(1.12);transition:transform .8s ease,filter .6s ease}.lead-article:hover .lead-image img{transform:scale(1.035);filter:grayscale(.15) contrast(1.04)}.lead-article>div:last-child{display:flex;flex-direction:column;justify-content:center;padding:50px}.lead-article>div>p:first-child{margin:0 0 27px;color:var(--muted);font-family:var(--mono);font-size:9px;letter-spacing:.08em;text-transform:uppercase}.lead-article h2{margin:0;font-size:clamp(2.7rem,4.4vw,5.5rem);font-weight:500;letter-spacing:-.06em;line-height:.94}.lead-article h2+p{margin:30px 0 0;color:#97978e;font-size:15px;line-height:1.6}.lead-article>div>span{display:inline-flex;align-items:center;gap:10px;width:-moz-fit-content;width:fit-content;margin-top:35px;padding-bottom:5px;border-bottom:1px solid #77776f;font-size:12px}.journal-list{width:min(calc(100% - 48px),var(--content-frame));margin:0 auto;border-top:1px solid var(--line)}.journal-list>a{position:relative;display:grid;grid-template-columns:.55fr 1.25fr 1fr auto;align-items:center;gap:45px;min-height:180px;padding:32px 0;border-bottom:1px solid var(--line);text-decoration:none;transition:padding .26s ease,background .26s ease}.journal-list>a:hover{padding-inline:22px;background:#eeeae009}.journal-list>a>div{display:flex;flex-direction:column;gap:7px;color:var(--muted);font-family:var(--mono);font-size:8px;letter-spacing:.07em;text-transform:uppercase}.journal-list h2{margin:0;font-size:clamp(1.9rem,3.2vw,3.9rem);font-weight:500;letter-spacing:-.05em;line-height:.98}.journal-list p{margin:0;color:#929289;font-size:13px;line-height:1.55}.journal-list svg{transition:transform .24s ease}.journal-list a:hover svg{transform:translate(5px,-5px)}.route-footer{display:grid;grid-template-columns:1fr 1fr auto;align-items:center;gap:40px;margin-top:150px;padding:42px max(24px,calc((100vw - var(--content-frame))/2));border-top:1px solid var(--line)}.services-shell,.service-detail-shell{background:linear-gradient(180deg,#08090c,#0b0d12 52%,#08090c)}.services-hero{position:relative;display:block;min-height:min(940px,100dvh);padding:150px max(24px,calc((100vw - var(--frame))/2)) 54px;overflow:hidden;border-bottom:1px solid var(--line);background:#08090c}.services-hero-copy{position:relative;z-index:3;display:flex;flex-direction:column;justify-content:flex-end;min-height:calc(min(940px,100dvh) - 204px);max-width:min(51vw,940px);padding:0 7vw 45px 0}.services-hero-copy>p:first-child{margin:0 0 30px;color:var(--acid);font-family:var(--mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase}.services-hero-copy h1{max-width:900px;margin:0;font-size:clamp(4.8rem,7.35vw,8.8rem);font-weight:500;letter-spacing:-.078em;line-height:.84}.services-hero-copy h1+p{max-width:660px;margin:42px 0 0;color:#a5adba;font-size:18px;line-height:1.62}.services-hero-copy>div,.service-detail-hero>div>div{display:flex;flex-wrap:wrap;gap:12px 30px;margin-top:40px}.services-hero-copy a,.service-detail-hero>div>div a{display:inline-flex;align-items:center;gap:11px;min-height:48px;padding:0 17px;border:1px solid var(--line);font-size:12px;font-weight:600;text-decoration:none;transition:color .22s ease,border-color .22s ease,background .22s ease}.services-hero-copy a:first-child,.service-detail-hero>div>div a:first-child{border-color:var(--acid);background:var(--acid);color:var(--ink)}.services-hero-copy a:hover,.service-detail-hero>div>div a:hover{border-color:var(--paper);background:var(--paper);color:var(--ink)}.services-hero figure{position:absolute;top:70px;right:0;bottom:0;width:min(51vw,980px);height:auto;margin:0;overflow:hidden;background:#11151b}.services-hero figure:after{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,#08090c 0%,transparent 36%),linear-gradient(180deg,#08090c 0%,transparent 19%,#08090c 100%);content:"";pointer-events:none}.service-detail-hero figure:after,.service-proof figure:after{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,transparent 48%,rgba(5,6,9,.54));content:"";pointer-events:none}.services-hero img,.service-detail-hero img,.service-proof img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;filter:saturate(.68) contrast(1.09);transition:transform .9s cubic-bezier(.2,.65,.2,1),filter .6s ease}.services-hero:hover img,.service-detail-hero:hover img,.service-proof:hover img{transform:scale(1.025);filter:saturate(.88) contrast(1.04)}.services-index{padding:180px max(24px,calc((100vw - var(--content-frame))/2))}.services-index>header{display:grid;grid-template-columns:1.5fr .5fr;align-items:end;gap:70px;margin-bottom:95px}.services-index>header h2{max-width:900px;margin:0;font-size:clamp(4rem,6.5vw,7.7rem);font-weight:500;letter-spacing:-.07em;line-height:.87}.services-index>header p{margin:0;color:#969fac;font-size:15px;line-height:1.65}.services-index>div{border-top:1px solid var(--line)}.services-index>div>a{display:grid;grid-template-columns:.48fr 1.05fr 1fr auto;align-items:center;gap:45px;min-height:220px;padding:38px 0;border-bottom:1px solid var(--line);text-decoration:none;transition:padding .28s ease,background .28s ease}.services-index>div>a.is-offset{padding-left:7vw}.services-index>div>a:hover{padding-right:24px;padding-left:24px;background:#121620}.services-index>div>a>span{color:var(--acid);font-family:var(--mono);font-size:9px;letter-spacing:.08em;text-transform:uppercase}.services-index h3{margin:0;font-size:clamp(2.3rem,3.5vw,4.5rem);font-weight:500;letter-spacing:-.055em;line-height:.94}.services-index a>p{margin:0;color:#9099a6;font-size:14px;line-height:1.62}.services-index strong{display:inline-flex;align-items:center;gap:9px;font-size:11px;white-space:nowrap}.services-region{display:grid;grid-template-columns:.92fr 1.08fr;gap:110px;padding:160px max(24px,calc((100vw - var(--content-frame))/2));border-block:1px solid var(--line);background:#10141d}.services-region h2{max-width:620px;margin:0;font-size:clamp(3.5rem,5.4vw,6.5rem);font-weight:500;letter-spacing:-.065em;line-height:.9}.services-region h2+p{max-width:570px;margin:42px 0 0;color:#98a2b0;font-size:16px;line-height:1.65}.services-region dl{margin:0;border-top:1px solid var(--line)}.services-region dl>div{display:grid;grid-template-columns:.55fr 1.45fr;gap:42px;padding:31px 0;border-bottom:1px solid var(--line)}.services-region dt{color:var(--paper);font-family:var(--mono);font-size:9px;letter-spacing:.07em;text-transform:uppercase}.services-region dd{margin:0;color:#98a2b0;font-size:14px;line-height:1.65}.service-detail-hero{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(440px,.95fr);min-height:min(940px,100svh);padding:70px 0 0 max(24px,calc((100vw - var(--frame))/2));border-bottom:1px solid var(--line)}.service-detail-hero>div{display:flex;flex-direction:column;justify-content:flex-end;padding:95px 8vw 80px 0}.service-detail-hero>div>a{width:-moz-fit-content;width:fit-content;margin-bottom:auto;color:#98a2b0;font-family:var(--mono);font-size:9px;letter-spacing:.08em;text-decoration:none;text-transform:uppercase}.service-detail-hero h1{max-width:900px;margin:0;font-size:clamp(4.8rem,7vw,8.5rem);font-weight:500;letter-spacing:-.078em;line-height:.84}.service-detail-hero h1+p{max-width:720px;margin:38px 0 0;color:#a2abba;font-size:17px;line-height:1.65}.service-detail-hero figure{position:relative;min-height:670px;margin:0;overflow:hidden;background:#131721}.service-fit{display:grid;grid-template-columns:.8fr 1.2fr;gap:120px;padding:150px max(24px,calc((100vw - var(--content-frame))/2))}.service-fit h2{max-width:560px;margin:0;font-size:clamp(3.4rem,5vw,6rem);font-weight:500;letter-spacing:-.065em;line-height:.92}.service-fit ul{margin:0;padding:0;border-top:1px solid var(--line);list-style:none}.service-fit li{display:grid;grid-template-columns:auto 1fr;gap:18px;padding:27px 0;border-bottom:1px solid var(--line);color:#adb5c1;font-size:15px;line-height:1.6}.service-fit li svg{margin-top:3px;color:var(--acid)}.service-outcomes{padding:160px max(24px,calc((100vw - var(--content-frame))/2));background:#111621}.service-outcomes>header{display:grid;grid-template-columns:1.2fr .8fr;align-items:end;gap:90px;margin-bottom:80px}.service-outcomes h2,.service-process h2,.service-faq h2{margin:0;font-size:clamp(4rem,6.4vw,7.6rem);font-weight:500;letter-spacing:-.07em;line-height:.88}.service-outcomes>header p{max-width:480px;margin:0;color:#9aa4b3;font-size:15px;line-height:1.65}.service-outcomes>div{display:grid;grid-template-columns:1.15fr .85fr;border-top:1px solid var(--line);border-left:1px solid var(--line)}.service-outcomes article{min-height:310px;padding:42px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.service-outcomes article:nth-child(2),.service-outcomes article:nth-child(3){background:#0c0f15}.service-outcomes h3{margin:0;font-size:clamp(2rem,3vw,3.7rem);font-weight:500;letter-spacing:-.05em}.service-outcomes article p{max-width:520px;margin:95px 0 0;color:#929ca9;font-size:14px;line-height:1.65}.service-proof{display:grid;grid-template-columns:1.2fr .8fr;min-height:760px}.service-proof figure{position:relative;margin:0;overflow:hidden;background:#131721}.service-proof>div{display:flex;flex-direction:column;justify-content:flex-end;padding:90px max(24px,calc((100vw - var(--content-frame))/2)) 90px 75px;border-left:1px solid var(--line)}.service-proof h2{max-width:630px;margin:0;font-size:clamp(3.2rem,4.7vw,5.7rem);font-weight:500;letter-spacing:-.065em;line-height:.9}.service-proof p{max-width:580px;margin:38px 0 0;color:#9da6b3;font-size:15px;line-height:1.68}.service-proof a{display:inline-flex;align-items:center;gap:10px;width:-moz-fit-content;width:fit-content;margin-top:35px;padding-bottom:5px;border-bottom:1px solid currentColor;font-size:12px;font-weight:600;text-decoration:none}.service-process{padding:170px max(24px,calc((100vw - var(--content-frame))/2))}.service-process>header{margin-bottom:85px}.service-process>div:not(.service-technology){display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line)}.service-process article{display:grid;grid-template-columns:.42fr 1.58fr;gap:38px;min-height:230px;padding:38px 40px 38px 0;border-right:1px solid var(--line);border-bottom:1px solid var(--line);counter-increment:process}.service-process>div:not(.service-technology){counter-reset:process}.service-process article:nth-child(2n){padding-right:0;padding-left:40px;border-right:0}.service-process article h3{margin:0;font-size:0}.service-process article h3:before{color:var(--acid);font-family:var(--mono);font-size:10px;content:"0" counter(process)}.service-process article h3{font-size:clamp(1.8rem,2.5vw,3rem);line-height:.98}.service-process article h3:before{display:block;margin-bottom:28px}.service-process article p{margin:0;color:#929ba8;font-size:14px;line-height:1.65}.service-technology{display:grid;grid-template-columns:.42fr 1.58fr;gap:38px;margin-top:80px;padding-top:24px;border-top:1px solid var(--line)}.service-technology>p{margin:0;color:var(--muted);font-family:var(--mono);font-size:9px;letter-spacing:.08em;text-transform:uppercase}.service-technology>div{display:flex;flex-wrap:wrap;gap:10px}.service-technology span{padding:10px 13px;border:1px solid var(--line);color:#aeb6c2;font-family:var(--mono);font-size:9px}.service-faq{display:grid;grid-template-columns:.8fr 1.2fr;gap:110px;padding:160px max(24px,calc((100vw - var(--content-frame))/2));border-block:1px solid var(--line);background:#0f131b}.service-faq>div{border-top:1px solid var(--line)}.service-faq details{border-bottom:1px solid var(--line)}.service-faq summary{display:grid;grid-template-columns:1fr auto;gap:30px;padding:28px 0;font-size:18px;font-weight:500;list-style:none;cursor:pointer}.service-faq summary::-webkit-details-marker{display:none}.service-faq summary span{color:var(--acid);font-family:var(--mono);transition:transform .22s ease}.service-faq details[open] summary span{transform:rotate(45deg)}.service-faq details p{max-width:690px;margin:-4px 0 31px;color:#99a2af;font-size:14px;line-height:1.68}.service-related{padding:140px max(24px,calc((100vw - var(--content-frame))/2))}.service-related h2{margin:0 0 45px;color:var(--muted);font-family:var(--mono);font-size:9px;font-weight:400;letter-spacing:.08em;text-transform:uppercase}.service-related>div{border-top:1px solid var(--line)}.service-related a{display:grid;grid-template-columns:1fr auto;align-items:center;gap:25px;padding:28px 0;border-bottom:1px solid var(--line);font-size:clamp(1.8rem,3.2vw,3.8rem);font-weight:500;letter-spacing:-.05em;text-decoration:none;transition:padding .24s ease,color .24s ease}.service-related a:hover{padding-inline:20px;color:var(--acid)}.route-footer a{font-size:13px;text-decoration:none}.route-footer p{margin:0;color:var(--muted);font-size:12px}.article-shell>article{padding-top:70px}.article-header{width:min(calc(100% - 48px),1120px);margin:0 auto;padding:95px 0 85px}.article-header>a{display:inline-flex;align-items:center;gap:9px;margin-bottom:70px;color:#aaa9a0;font-size:12px;text-decoration:none}.article-header>div{display:flex;flex-wrap:wrap;gap:12px 28px;margin-bottom:32px;color:var(--muted);font-family:var(--mono);font-size:8px;letter-spacing:.08em;text-transform:uppercase}.article-header h1{max-width:1100px;margin:0;font-size:clamp(3.7rem,7vw,8.2rem);font-weight:500;letter-spacing:-.072em;line-height:.9}.article-header>p{max-width:810px;margin:45px 0 0;color:#a2a299;font-size:19px;line-height:1.6}.article-image{width:min(calc(100% - 48px),var(--content-frame));height:min(70vw,760px);margin:0 auto;overflow:hidden}.article-image img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;filter:grayscale(.65) contrast(1.08)}.article-layout{display:grid;grid-template-columns:260px minmax(0,760px);justify-content:center;gap:100px;width:min(calc(100% - 48px),1120px);margin:0 auto;padding:120px 0 160px}.article-layout aside{position:sticky;top:110px;align-self:start;padding-top:15px;border-top:1px solid var(--line)}.article-layout aside>p{margin:0 0 18px;color:var(--muted);font-family:var(--mono);font-size:8px;letter-spacing:.08em;text-transform:uppercase}.article-layout aside strong,.article-layout aside span{display:block}.article-layout aside strong{font-size:16px}.article-layout aside span{margin-top:4px;color:var(--muted);font-size:12px;line-height:1.5}.article-layout aside div{display:flex;flex-wrap:wrap;gap:7px 12px;margin-top:30px}.article-layout aside i{color:#77776f;font-family:var(--mono);font-size:8px;font-style:normal;text-transform:uppercase}.article-body{min-width:0;color:#c2c0b7;font-size:18px;line-height:1.76}.article-body h1,.article-body h2,.article-body h3{color:var(--paper);font-weight:500;letter-spacing:-.045em;line-height:1.02}.article-body h1{margin:2em 0 .8em;font-size:3.4rem}.article-body h2{margin:2em 0 .7em;font-size:2.7rem}.article-body h3{margin:1.7em 0 .6em;font-size:2rem}.article-body p{margin:0 0 1.45em}.article-body ul,.article-body ol{margin:0 0 1.6em;padding-left:1.2em}.article-body li{margin:.45em 0}.article-body blockquote{margin:2.2em 0;padding:28px 32px;border-left:3px solid var(--acid);background:#121310;color:var(--paper);font-size:1.15em}.article-body a{color:var(--acid)}.article-body code{padding:.15em .35em;background:#171816;color:var(--acid);font-family:var(--mono);font-size:.85em}.article-body pre{max-width:100%;overflow:auto}.related-reading{width:min(calc(100% - 48px),1120px);margin:0 auto;padding:0 0 150px}.related-reading>p{margin:0 0 30px;color:var(--muted);font-family:var(--mono);font-size:9px;letter-spacing:.08em;text-transform:uppercase}.related-reading>a{display:grid;grid-template-columns:.45fr 1.55fr auto;align-items:center;gap:35px;min-height:130px;border-top:1px solid var(--line);text-decoration:none}.related-reading>a:last-child{border-bottom:1px solid var(--line)}.related-reading span{color:var(--muted);font-family:var(--mono);font-size:8px;text-transform:uppercase}.related-reading h2{margin:0;font-size:clamp(1.7rem,2.7vw,3.2rem);font-weight:500;letter-spacing:-.045em}.article-missing{display:flex;align-items:center;flex-direction:column;justify-content:center;min-height:100vh}.article-missing h1{font-size:clamp(3rem,7vw,7rem);font-weight:500;letter-spacing:-.06em}.article-missing>a{display:inline-flex;align-items:center;gap:10px}@media (max-width: 1100px){.site-nav{grid-template-columns:1fr minmax(460px,.9fr) 1fr}.fde-title{font-size:clamp(5rem,12vw,8rem)}.hero-foreground-word{left:32vw;font-size:clamp(5rem,11vw,7.6rem)}.hero-role-note{width:min(44vw,410px)}.cases-layout{grid-template-columns:1fr}.cases-intro{max-width:780px;margin-bottom:75px}.case-stack{max-width:900px;margin-left:auto}.experience-row{grid-template-columns:.75fr 1fr 1.3fr}.experience-row>span{display:none}.github-section{padding-inline:24px}.github-overview{grid-template-columns:4fr 6fr;gap:50px}.github-index{grid-column:1;padding-right:0}.github-index h2{font-size:clamp(3.5rem,6.5vw,5.4rem)}.github-ledger{grid-column:2}.github-repo-row{min-height:380px}.github-repo-title h3{font-size:clamp(3.2rem,6vw,5.3rem)}.github-archive,.github-toolkit,.github-reference{grid-template-columns:4fr 6fr;gap:50px}.contact-section{grid-template-columns:1fr}.contact-heading{max-width:820px}.study{grid-template-columns:1fr}.study-media{grid-column:1;grid-row:auto}.journal-list>a{grid-template-columns:.45fr 1.55fr auto}.journal-list>a>p{display:none}.services-hero,.service-detail-hero{grid-template-columns:1.08fr .92fr}.services-hero-copy{padding-right:45px}.services-index>div>a{grid-template-columns:.4fr 1.1fr 1fr}.services-index strong{display:none}.services-index>div>a.is-offset{padding-left:4vw}.services-region,.service-fit,.service-faq{gap:60px}.service-proof{grid-template-columns:1fr 1fr}.service-proof>div{padding-right:35px;padding-left:45px}}@media (max-width: 767px){.site-nav{grid-template-columns:1fr auto;min-height:62px;padding-inline:15px}.nav-links{display:none}.nav-brand{font-size:11px}.nav-actions{gap:12px}.nav-github{width:34px;height:34px}.nav-resume{font-size:11px}.hero-section{width:100%;min-height:790px;padding:98px 14px 28px}.hero-orbit{top:49%;left:52%;width:145vw;opacity:.62}.hero-portrait{top:212px;right:-10vw;width:88vw}.hero-portrait figcaption{right:29px;bottom:18px;width:92px;font-size:6px}.fde-hero:after{top:auto;right:0;bottom:0;left:0}.fde-hero:before{background-size:25% 100%}.hero-coordinate-top{top:79px;right:29px;font-size:6px}.fde-title{top:15%;right:14px;left:14px;margin:0;font-size:clamp(3.9rem,17.4vw,5.1rem);line-height:.76;letter-spacing:-.085em}.hero-line-wrap{padding:.1em 0 .14em}.fde-forward{width:100%;white-space:normal}.fde-deployed{margin-left:0;white-space:normal;-webkit-text-stroke-width:1px}.hero-foreground-word{top:32%;left:18px;margin-left:0;font-size:clamp(3.9rem,17.4vw,5.1rem)}.hero-role-note{top:53%;right:29px;bottom:auto;z-index:7;width:36%;padding-top:9px;display:none}.hero-actions{right:29px;bottom:30px;gap:12px}.hero-index-link{font-size:7px}.hero-call-orbit{width:92px;height:92px}.hero-call-orbit span{width:67px;font-size:6px;transform:translateY(24px)}.hero-side-note{z-index:7;bottom:35px;left:29px;display:block;width:30%;color:#eef2ffb8;font-size:8px}.statement-section{width:calc(100% - 28px);padding:130px 0}.statement-context{margin-bottom:34px}.statement-section h2{font-size:clamp(2.7rem,12vw,4.4rem)}.inline-image{width:1.3em}.statement-foot{grid-template-columns:1fr;gap:30px;margin-top:48px}.statement-foot a{justify-self:start}.capability-section,.experience-section,.writing-section{width:calc(100% - 28px);padding:120px 0}.section-heading{display:block;margin-bottom:48px}.section-heading>p{margin-bottom:28px}.section-heading h2{font-size:clamp(3rem,13vw,4.8rem)}.capability-grid{display:block;border:0;background:transparent}.capability-panel{min-height:390px;margin-bottom:1px;padding:27px}.capability-panel-1{min-height:520px}.capability-panel h3{font-size:clamp(2.25rem,10vw,3.4rem)}.system-diagram{right:-48%;width:380px;height:380px}.work-section{padding:125px 14px}.cases-intro h2{font-size:clamp(3rem,13vw,4.8rem)}.case-stack{gap:70px}.case-sheet,.case-sheet:nth-child(n){position:relative;top:auto}.case-browser{margin:10px 10px 0}.case-copy{padding:26px 20px 24px}.case-copy h3{font-size:2.8rem}.case-copy>div{align-items:flex-start;flex-direction:column}.feedback-section{width:100%;padding:110px 0}.feedback-heading{width:calc(100% - 28px);margin-bottom:32px}.feedback-heading span{display:none}.feedback-item{flex-basis:82vw;min-height:330px;padding:25px}.feedback-item blockquote{font-size:clamp(2.15rem,10vw,3.2rem)}.global-booking-float{right:14px;bottom:14px;width:86px;height:86px}.experience-list{border-top:1px solid var(--line)}.experience-row{display:block;padding:31px 0}.experience-row>p:first-child{margin:0 0 25px}.experience-row h3{font-size:22px}.experience-row div p{margin-bottom:17px}.experience-row:hover{padding-inline:0;color:var(--paper)}.credential-band{grid-template-columns:1fr;margin-top:60px}.credential-band>div{padding:27px}.notes-list>a{grid-template-columns:1fr auto;gap:20px;min-height:170px}.notes-list span{grid-column:1/-1}.notes-list h3{font-size:2rem}.github-section{padding:42px 14px 120px}.github-section-rule{margin-bottom:95px}.github-overview{display:block}.github-index{max-width:none;padding:0}.github-identity{margin-bottom:46px}.github-index h2{max-width:650px;font-size:clamp(3.7rem,15vw,6rem)}.github-deck{margin-top:31px;font-size:15px}.github-audit{margin-top:45px}.github-audit>div{padding:18px 9px 18px 0}.github-audit>div+div{padding-left:9px}.github-audit strong{font-size:2.2rem}.github-ledger{margin-top:105px}.github-repo-row{min-height:430px;padding:25px 2px 28px}.github-repo-meta{align-items:flex-start;flex-direction:column;gap:7px}.github-repo-title{margin-top:48px}.github-repo-title h3{font-size:clamp(3.3rem,15vw,5.6rem)}.github-repo-row>p{font-size:14px}.github-repo-proof{align-items:flex-start;flex-direction:column;gap:8px;margin-top:35px}.github-repo-proof code{margin:9px 0 0}.github-archive,.github-toolkit,.github-reference{display:block;margin-top:115px}.github-archive-heading,.github-toolkit-heading,.github-reference-heading{padding-right:0}.github-archive-list{margin-top:42px}.github-archive-list a{grid-template-columns:1fr auto;gap:9px 20px;padding:16px 0}.github-archive-list small{grid-column:1;grid-row:2;line-height:1.45}.github-archive-list svg{grid-column:2;grid-row:1/3}.github-toolkit-heading h3{font-size:clamp(3.2rem,13vw,5rem)}.github-toolkit-matrix{grid-template-columns:1fr;margin-top:56px}.github-toolkit-matrix>div,.github-toolkit-matrix>div:last-child{grid-column:auto;min-height:175px;padding:23px}.github-toolkit-matrix h4{margin-bottom:50px}.github-reference-heading h3{font-size:clamp(3.2rem,13vw,5rem)}.github-reference dl{margin-top:56px}.github-reference dl>div{display:block;padding:25px 0}.github-reference dd{margin-top:14px}.contact-section{display:block;padding:120px 14px}.contact-heading h2{font-size:clamp(3.3rem,15vw,5.5rem)}.contact-form{margin-top:70px;padding:22px}.form-row{grid-template-columns:1fr;gap:24px}.form-row label+label{margin-top:0}.form-action{align-items:stretch;flex-direction:column}.form-action button{width:100%}.site-footer{grid-template-columns:1fr auto;gap:40px 25px;padding:65px 14px 28px}.site-footer nav{grid-column:1/-1;grid-row:2}.footer-socials{grid-column:2;grid-row:1}.site-footer>p{margin-top:20px}.route-nav{grid-template-columns:1fr auto;min-height:62px;padding-inline:15px}.route-nav nav{display:none}.route-brand{font-size:11px}.route-contact{font-size:10px}.archive-hero,.journal-hero{width:calc(100% - 28px);padding:125px 0 80px}.archive-hero h1,.journal-hero h1{font-size:clamp(3.6rem,16vw,6rem)}.archive-filters{gap:10px 20px;width:calc(100% - 28px);margin-bottom:55px}.archive-filters button{font-size:11px}.study{display:block;padding:100px 14px}.study-heading h2{font-size:clamp(3rem,14vw,5rem)}.study-media{margin-top:45px}.study-overview{margin-top:38px}.study-stats{margin-top:55px}.study-stats div{padding:24px 10px 24px 0}.study-stats div+div{padding-left:14px}.study-stats strong{font-size:2rem}.study-detail{grid-template-columns:1fr;gap:45px;margin-top:55px}.route-cta{padding:110px 14px}.route-cta h2{font-size:clamp(3.5rem,16vw,5.7rem)}.lead-article{display:block;width:calc(100% - 28px);margin-bottom:95px}.lead-image{min-height:270px}.lead-article>div:last-child{padding:28px 23px}.lead-article h2{font-size:2.7rem}.journal-list{width:calc(100% - 28px)}.journal-list>a{display:grid;grid-template-columns:1fr auto;gap:22px;min-height:190px}.journal-list>a>div{grid-column:1/-1}.journal-list h2{font-size:2rem}.route-footer{grid-template-columns:1fr auto;margin-top:95px;padding:35px 14px}.route-footer p{display:none}.article-shell>article{padding-top:62px}.article-header{width:calc(100% - 28px);padding:65px 0 60px}.article-header>a{margin-bottom:50px}.article-header h1{font-size:clamp(3.2rem,14vw,5.4rem)}.article-header>p{margin-top:32px;font-size:16px}.article-image{width:calc(100% - 28px);height:62vw}.article-layout{display:block;width:calc(100% - 28px);padding:75px 0 110px}.article-layout aside{position:static;margin-bottom:65px}.article-body{font-size:16px}.article-body h1{font-size:2.6rem}.article-body h2{font-size:2.2rem}.article-body h3{font-size:1.75rem}.related-reading{width:calc(100% - 28px);padding-bottom:100px}.related-reading>a{grid-template-columns:1fr auto;gap:20px;padding:25px 0}.related-reading span{grid-column:1/-1}.services-hero{display:block;min-height:0;padding:118px 14px 14px}.services-hero-copy{min-height:0;max-width:none;padding:0 0 55px}.services-hero-copy>p:first-child{margin-bottom:24px;font-size:8px}.services-hero-copy h1{font-size:clamp(3.8rem,16vw,5.6rem)}.services-hero-copy h1+p{margin-top:29px;font-size:15px}.services-hero-copy>div,.service-detail-hero>div>div{align-items:stretch;flex-direction:column;margin-top:30px}.services-hero-copy a,.service-detail-hero>div>div a{justify-content:space-between;width:100%}.services-hero figure{position:relative;top:auto;right:auto;bottom:auto;width:100%;height:78vw;max-height:470px}.services-index{padding:115px 14px}.services-index>header{display:block;margin-bottom:58px}.services-index>header h2{font-size:clamp(3.4rem,14vw,5.2rem)}.services-index>header p{margin-top:30px}.services-index>div>a,.services-index>div>a.is-offset{display:block;min-height:0;padding:34px 0}.services-index>div>a:hover{padding:34px 10px}.services-index h3{margin-top:28px;font-size:clamp(2.5rem,10vw,3.6rem)}.services-index a>p{margin-top:24px}.services-index strong{display:inline-flex;margin-top:28px}.services-region{display:block;padding:110px 14px}.services-region h2{font-size:clamp(3.4rem,14vw,5.1rem)}.services-region h2+p{margin-top:30px}.services-region dl{margin-top:65px}.services-region dl>div{display:block;padding:27px 0}.services-region dd{margin-top:15px}.service-detail-hero{display:flex;flex-direction:column;min-height:0;padding:62px 0 0}.service-detail-hero>div{padding:54px 14px 58px}.service-detail-hero>div>a{margin-bottom:65px}.service-detail-hero h1{font-size:clamp(3.8rem,16vw,5.5rem)}.service-detail-hero h1+p{margin-top:28px;font-size:15px}.service-detail-hero figure{min-height:0;height:86vw;max-height:520px}.service-fit{display:block;padding:110px 14px}.service-fit h2{font-size:clamp(3.3rem,14vw,5rem)}.service-fit ul{margin-top:58px}.service-outcomes{padding:110px 14px}.service-outcomes>header{display:block;margin-bottom:58px}.service-outcomes h2,.service-process h2,.service-faq h2{font-size:clamp(3.5rem,14vw,5.2rem)}.service-outcomes>header p{margin-top:28px}.service-outcomes>div{display:block}.service-outcomes article{min-height:270px;padding:29px}.service-outcomes article p{margin-top:65px}.service-proof{display:flex;flex-direction:column;min-height:0}.service-proof figure{height:82vw;max-height:500px}.service-proof>div{padding:75px 14px 90px;border-left:0}.service-proof h2{font-size:clamp(3.1rem,13vw,4.8rem)}.service-process{padding:110px 14px}.service-process>header{margin-bottom:55px}.service-process>div:not(.service-technology){display:block}.service-process article,.service-process article:nth-child(2n){display:block;min-height:0;padding:32px 0;border-right:0}.service-process article p{margin-top:25px}.service-technology{display:block;margin-top:65px}.service-technology>div{margin-top:26px}.service-faq{display:block;padding:110px 14px}.service-faq>div{margin-top:60px}.service-faq summary{font-size:16px;line-height:1.4}.service-related{padding:105px 14px}.service-related a{font-size:clamp(2rem,9vw,3.2rem)}}@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important}}.after\:absolute:after{content:var(--tw-content);position:absolute}.after\:inset-\[calc\(-1\*var\(--glowingeffect-border-width\)\)\]:after{content:var(--tw-content);inset:calc(-1 * var(--glowingeffect-border-width))}.after\:rounded-\[inherit\]:after{content:var(--tw-content);border-radius:inherit}.after\:opacity-\[var\(--active\)\]:after{content:var(--tw-content);opacity:var(--active)}.after\:transition-opacity:after{content:var(--tw-content);transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.after\:duration-300:after{content:var(--tw-content);transition-duration:.3s}.after\:content-\[\"\"\]:after{--tw-content: "";content:var(--tw-content)}.after\:\[background-attachment\:fixed\]:after{content:var(--tw-content);background-attachment:fixed}.after\:\[background\:var\(--gradient\)\]:after{content:var(--tw-content);background:var(--gradient)}.after\:\[border\:var\(--glowingeffect-border-width\)_solid_transparent\]:after{content:var(--tw-content);border:var(--glowingeffect-border-width) solid transparent}.after\:\[mask-clip\:padding-box\,border-box\]:after{content:var(--tw-content);-webkit-mask-clip:padding-box,border-box;mask-clip:padding-box,border-box}.after\:\[mask-composite\:intersect\]:after{content:var(--tw-content);-webkit-mask-composite:source-in,xor;mask-composite:intersect}.after\:\[mask-image\:linear-gradient\(\#0000\,\#0000\)\,conic-gradient\(from_calc\(\(var\(--start\)-var\(--spread\)\)\*1deg\)\,\#00000000_0deg\,\#fff\,\#00000000_calc\(var\(--spread\)\*2deg\)\)\]:after{content:var(--tw-content);-webkit-mask-image:linear-gradient(#0000,#0000),conic-gradient(from calc((var(--start) - var(--spread)) * 1deg),#00000000 0deg,#fff,#00000000 calc(var(--spread) * 2deg));mask-image:linear-gradient(#0000,#0000),conic-gradient(from calc((var(--start) - var(--spread)) * 1deg),#0000,#fff,#0000 calc(var(--spread) * 2deg))}.hover\:scale-105:hover{--tw-scale-x: 1.05;--tw-scale-y: 1.05;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:transform:hover{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:border-gray-600\/50:hover{border-color:#4b556380}.hover\:border-neutral-600:hover{--tw-border-opacity: 1;border-color:rgb(82 82 82 / var(--tw-border-opacity, 1))}.hover\:border-neutral-700:hover{--tw-border-opacity: 1;border-color:rgb(64 64 64 / var(--tw-border-opacity, 1))}.hover\:border-white:hover{--tw-border-opacity: 1;border-color:rgb(255 255 255 / var(--tw-border-opacity, 1))}.hover\:bg-gray-200:hover{--tw-bg-opacity: 1;background-color:rgb(229 231 235 / var(--tw-bg-opacity, 1))}.hover\:bg-gray-700\/50:hover{background-color:#37415180}.hover\:bg-gray-800:hover{--tw-bg-opacity: 1;background-color:rgb(31 41 55 / var(--tw-bg-opacity, 1))}.hover\:bg-gray-800\/50:hover{background-color:#1f293780}.hover\:bg-neutral-200:hover{--tw-bg-opacity: 1;background-color:rgb(229 229 229 / var(--tw-bg-opacity, 1))}.hover\:bg-white\/10:hover{background-color:#ffffff1a}.hover\:bg-white\/5:hover{background-color:#ffffff0d}.hover\:from-gray-100:hover{--tw-gradient-from: #f3f4f6 var(--tw-gradient-from-position);--tw-gradient-to: rgb(243 244 246 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.hover\:to-gray-300:hover{--tw-gradient-to: #d1d5db var(--tw-gradient-to-position)}.hover\:text-gray-300:hover{--tw-text-opacity: 1;color:rgb(209 213 219 / var(--tw-text-opacity, 1))}.hover\:text-white:hover{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.hover\:shadow-white\/30:hover{--tw-shadow-color: rgb(255 255 255 / .3);--tw-shadow: var(--tw-shadow-colored)}.focus\:border-neutral-500:focus{--tw-border-opacity: 1;border-color:rgb(115 115 115 / var(--tw-border-opacity, 1))}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.focus\:ring-2:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus\:ring-white\/50:focus{--tw-ring-color: rgb(255 255 255 / .5)}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-50:disabled{opacity:.5}.group:hover .group-hover\:w-6{width:1.5rem}.group:hover .group-hover\:translate-x-0{--tw-translate-x: 0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:translate-x-1{--tw-translate-x: .25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:scale-110{--tw-scale-x: 1.1;--tw-scale-y: 1.1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:bg-neutral-500{--tw-bg-opacity: 1;background-color:rgb(115 115 115 / var(--tw-bg-opacity, 1))}.group:hover .group-hover\:text-gray-300{--tw-text-opacity: 1;color:rgb(209 213 219 / var(--tw-text-opacity, 1))}.group:hover .group-hover\:text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.group:hover .group-hover\:opacity-100{opacity:1}.group:hover .group-hover\:grayscale-0{--tw-grayscale: grayscale(0);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)}@media (min-width: 640px){.sm\:mb-12{margin-bottom:3rem}.sm\:w-\[80\%\]{width:80%}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:flex-row{flex-direction:row}.sm\:gap-4{gap:1rem}.sm\:gap-8{gap:2rem}.sm\:px-6{padding-left:1.5rem;padding-right:1.5rem}.sm\:py-3{padding-top:.75rem;padding-bottom:.75rem}.sm\:pb-20{padding-bottom:5rem}.sm\:text-4xl{font-size:2.25rem;line-height:2.5rem}.sm\:text-5xl{font-size:3rem;line-height:1}.sm\:text-sm{font-size:.875rem;line-height:1.25rem}.sm\:text-xl{font-size:1.25rem;line-height:1.75rem}}@media (min-width: 768px){.md\:mb-16{margin-bottom:4rem}.md\:block{display:block}.md\:hidden{display:none}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-\[220px_1fr\]{grid-template-columns:220px 1fr}.md\:gap-12{gap:3rem}.md\:gap-16{gap:4rem}.md\:px-12{padding-left:3rem;padding-right:3rem}.md\:py-24{padding-top:6rem;padding-bottom:6rem}.md\:text-2xl{font-size:1.5rem;line-height:2rem}.md\:text-4xl{font-size:2.25rem;line-height:2.5rem}.md\:text-5xl{font-size:3rem;line-height:1}.md\:text-6xl{font-size:3.75rem;line-height:1}.md\:text-7xl{font-size:4.5rem;line-height:1}}@media (min-width: 1024px){.lg\:sticky{position:sticky}.lg\:top-32{top:8rem}.lg\:col-span-2{grid-column:span 2 / span 2}.lg\:col-span-3{grid-column:span 3 / span 3}.lg\:block{display:block}.lg\:w-\[45\%\]{width:45%}.lg\:max-w-2xl{max-width:42rem}.lg\:grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.lg\:grid-cols-\[220px_1fr\]{grid-template-columns:220px 1fr}.lg\:flex-row{flex-direction:row}.lg\:items-start{align-items:flex-start}.lg\:gap-16{gap:4rem}.lg\:px-20{padding-left:5rem;padding-right:5rem}.lg\:text-6xl{font-size:3.75rem;line-height:1}}
