*,:after,:before{--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:rgba(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:rgba(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: }/*
! tailwindcss v3.4.19 | MIT License | https://tailwindcss.com
*/*,:after,:before{box-sizing:border-box;border:0 solid #e5e7eb}:after,:before{--tw-content:""}:host,html{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,pre,samp{font-family:var(--font-mono),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,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{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}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.pointer-events-none{pointer-events:none}.pointer-events-auto{pointer-events:auto}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.inset-0{inset:0}.-bottom-1{bottom:-.25rem}.bottom-0{bottom:0}.bottom-10{bottom:2.5rem}.bottom-2{bottom:.5rem}.left-0{left:0}.left-14{left:3.5rem}.left-\[-5px\]{left:-5px}.right-0{right:0}.right-14{right:3.5rem}.top-0{top:0}.top-1\/2{top:50%}.top-2{top:.5rem}.z-0{z-index:0}.z-10{z-index:10}.z-\[1000\]{z-index:1000}.m-0{margin:0}.mx-14{margin-left:3.5rem;margin-right:3.5rem}.mb-1{margin-bottom:.25rem}.mb-10{margin-bottom:2.5rem}.mb-14{margin-bottom:3.5rem}.mb-16{margin-bottom:4rem}.mb-2{margin-bottom:.5rem}.mb-2\.5{margin-bottom:.625rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-5{margin-bottom:1.25rem}.mb-6{margin-bottom:1.5rem}.mb-9{margin-bottom:2.25rem}.ml-auto{margin-left:auto}.mt-1{margin-top:.25rem}.mt-1\.5{margin-top:.375rem}.block{display:block}.inline-block{display:inline-block}.flex{display:flex}.inline-flex{display:inline-flex}.grid{display:grid}.hidden{display:none}.h-0\.5{height:.125rem}.h-2\.5{height:.625rem}.h-\[2px\]{height:2px}.h-\[6px\]{height:6px}.h-full{height:100%}.h-px{height:1px}.min-h-screen{min-height:100vh}.w-0\.5{width:.125rem}.w-10{width:2.5rem}.w-2\.5{width:.625rem}.w-\[6px\]{width:6px}.w-fit{width:-moz-fit-content;width:fit-content}.w-max{width:-moz-max-content;width:max-content}.w-px{width:1px}.max-w-\[520px\]{max-width:520px}.max-w-\[900px\]{max-width:900px}.flex-1{flex:1 1 0%}.flex-shrink-0{flex-shrink:0}.grow{flex-grow:1}.origin-left{transform-origin:left}.origin-top{transform-origin:top}.-translate-y-1\/2{--tw-translate-y:-50%}.-translate-y-1\/2,.translate-x-\[-101\%\]{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-\[-101\%\]{--tw-translate-x:-101%}.translate-y-0{--tw-translate-y:0px}.translate-y-0,.translate-y-10{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(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}.scale-x-0{--tw-scale-x:0}.scale-x-0,.scale-y-0{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scale-y-0{--tw-scale-y:0}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.cursor-default{cursor:default}.cursor-pointer{cursor:pointer}.select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.resize{resize:both}.list-none{list-style-type:none}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-0\.5{gap:.125rem}.gap-1{gap:.25rem}.gap-1\.5{gap:.375rem}.gap-10{gap:2.5rem}.gap-12{gap:3rem}.gap-2{gap:.5rem}.gap-20{gap:5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-9{gap:2.25rem}.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-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))}.overflow-hidden{overflow:hidden}.overflow-x-hidden{overflow-x:hidden}.scroll-smooth{scroll-behavior:smooth}.whitespace-nowrap{white-space:nowrap}.break-all{word-break:break-all}.rounded-\[4px\]{border-radius:4px}.rounded-full{border-radius:9999px}.rounded-sm{border-radius:.125rem}.border{border-width:1px}.border-2{border-width:2px}.bg-\[\#4ade80\]{--tw-bg-opacity:1;background-color:rgb(74 222 128/var(--tw-bg-opacity,1))}.bg-\[var\(--sand\)\]{background-color:var(--sand)}.bg-bg{background-color:var(--bg)}.p-0{padding:0}.p-5{padding:1.25rem}.p-8{padding:2rem}.px-14{padding-left:3.5rem;padding-right:3.5rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-2\.5{padding-left:.625rem;padding-right:.625rem}.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}.px-7{padding-left:1.75rem;padding-right:1.75rem}.px-8{padding-left:2rem;padding-right:2rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-12{padding-top:3rem;padding-bottom:3rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-2\.5{padding-top:.625rem;padding-bottom:.625rem}.py-20{padding-top:5rem;padding-bottom:5rem}.py-28{padding-top:7rem;padding-bottom:7rem}.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-14{padding-bottom:3.5rem}.pb-24{padding-bottom:6rem}.pl-12{padding-left:3rem}.pl-5{padding-left:1.25rem}.pt-36{padding-top:9rem}.text-center{text-align:center}.text-right{text-align:right}.font-mono{font-family:var(--font-mono),monospace}.text-\[10px\]{font-size:10px}.text-\[11px\]{font-size:11px}.text-\[12px\]{font-size:12px}.text-\[13px\]{font-size:13px}.text-\[14px\]{font-size:14px}.text-\[15px\]{font-size:15px}.text-\[16px\]{font-size:16px}.text-\[18px\]{font-size:18px}.text-\[19px\]{font-size:19px}.text-\[20px\]{font-size:20px}.text-\[28px\]{font-size:28px}.font-black{font-weight:900}.font-bold{font-weight:700}.font-extrabold{font-weight:800}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.leading-\[0\.88\]{line-height:.88}.leading-\[0\.95\]{line-height:.95}.leading-none{line-height:1}.leading-relaxed{line-height:1.625}.leading-snug{line-height:1.375}.tracking-\[-0\.02em\]{letter-spacing:-.02em}.tracking-\[-0\.03em\]{letter-spacing:-.03em}.tracking-\[-0\.04em\]{letter-spacing:-.04em}.tracking-\[0\.08em\]{letter-spacing:.08em}.tracking-\[0\.12em\]{letter-spacing:.12em}.tracking-\[0\.15em\]{letter-spacing:.15em}.tracking-\[0\.16em\]{letter-spacing:.16em}.tracking-\[0\.18em\]{letter-spacing:.18em}.tracking-\[0\.1em\]{letter-spacing:.1em}.tracking-\[0\.2em\]{letter-spacing:.2em}.text-\[var\(--sand\)\]{color:var(--sand)}.text-\[var\(--text\)\]{color:var(--text)}.no-underline{text-decoration-line:none}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.opacity-0{opacity:0}.opacity-100{opacity:1}.blur{--tw-blur:blur(8px);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition{transition-property:color,background-color,border-color,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}.duration-200{transition-duration:.2s}.duration-300{transition-duration:.3s}.duration-700{transition-duration:.7s}.ease-out{transition-timing-function:cubic-bezier(0,0,.2,1)}:root{--sand:#3c4652;--sand-light:#586575;--sand-dim:#1f252c;--sand-glow:rgba(60,70,82,.16);--bg:#fff8dc;--bg2:#f7efcf;--bg3:#efe5c1;--surface:rgba(255,253,242,.72);--surface2:hsla(47,59%,85%,.82);--border:rgba(60,70,82,.12);--border2:rgba(60,70,82,.24);--text:#1f252c;--text-muted:#4f5965;--text-dim:#7a7363;--font-display:"Cabinet Grotesk",system-ui,sans-serif;--font-mono:"Instrument Mono",monospace}*{box-sizing:border-box}body,html{cursor:none}body{font-family:var(--font-display)}html{scroll-padding-top:96px}::-webkit-scrollbar{width:3px}::-webkit-scrollbar-track{background:var(--bg)}::-webkit-scrollbar-thumb{background:var(--sand-dim);border-radius:2px}.interactive-card{will-change:transform,box-shadow,border-color}.nav-brand{border-radius:999px;transition:transform .18s ease,background .18s ease,color .18s ease}.nav-brand:hover{background:rgba(60,70,82,.07);transform:translateY(-1px)}.nav-brand:hover .nav-brand-dot{box-shadow:0 0 0 6px rgba(60,70,82,.08)}.nav-link{border-radius:999px;isolation:isolate;transition:color .18s ease,background .18s ease,transform .18s ease}.nav-link:before{content:"";position:absolute;inset:.22rem 0;border-radius:999px;background:rgba(60,70,82,.07);transform:scaleX(.72);opacity:0;transition:opacity .18s ease,transform .18s ease;z-index:-1}.nav-link:hover{color:var(--sand)!important;transform:translateY(-1px)}.nav-link:hover:before{opacity:1;transform:scaleX(1)}.project-card{min-height:320px;box-shadow:0 18px 60px -54px rgba(60,70,82,.6)}.project-card:hover{box-shadow:0 26px 80px -42px rgba(60,70,82,.55)}.project-card:before{content:"";position:absolute;inset:0;background:linear-gradient(rgba(60,70,82,.035) 1px,transparent 0),linear-gradient(90deg,rgba(60,70,82,.035) 1px,transparent 0);background-size:24px 24px;opacity:0;transition:opacity .26s ease;pointer-events:none}.project-card:hover:before{opacity:1}.project-card-accent{position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,transparent,var(--sand),transparent);transform:translateX(-100%);transition:transform .42s ease;pointer-events:none}.project-card:hover .project-card-accent{transform:translateX(0)}.project-card:hover .project-tag{border-color:var(--border2)!important;color:var(--text)!important;transform:translateY(-1px)}.interactive-card:hover{transform:translateY(-5px);box-shadow:0 24px 70px -44px rgba(60,70,82,.55)}.scroll-rise-card{transform-origin:50% 70%}@supports (animation-timeline:view()){.scroll-rise-card{animation:scroll-card-rise ease-out both;animation-timeline:view();animation-range:entry 0 cover 34%}}@keyframes scroll-card-rise{0%{opacity:.45;transform:translateY(34px) scale(.965);filter:blur(2px)}to{opacity:1;transform:translateY(0) scale(1);filter:blur(0)}}@media (prefers-reduced-motion:reduce){.cursor-ring,.cursor-rocket,.interactive-card,.scroll-rise-card{animation:none!important;transition:none!important;transform:none!important;filter:none!important}}.cursor-rocket{position:fixed;width:42px;height:32px;pointer-events:none;z-index:9999;transform:translate(-50%,-50%) rotate(68deg);transform-origin:50% 50%;transition:transform .16s ease}.cursor-rocket span{position:absolute;display:block}.rocket-body{left:7px;top:7px;width:28px;height:18px;background:var(--bg2);border:2px solid var(--sand-dim);border-radius:16px 8px 8px 16px;box-shadow:0 6px 14px var(--sand-glow),inset 7px 0 0 rgba(255,253,242,.48);clip-path:polygon(0 50%,32% 0,100% 15%,86% 50%,100% 85%,32% 100%)}.rocket-nose{left:1px;top:9px;width:13px;height:13px;background:var(--sand);clip-path:polygon(0 50%,100% 0,100% 100%)}.rocket-window{left:17px;top:11px;width:6px;height:6px;background:var(--bg);border:1px solid var(--sand-light);border-radius:50%}.rocket-fin{width:9px;height:7px;background:var(--bg3);border:2px solid var(--sand-dim)}.rocket-fin-left{left:27px;top:5px;clip-path:polygon(0 100%,100% 0,72% 100%)}.rocket-fin-right{left:27px;bottom:5px;clip-path:polygon(0 0,100% 100%,72% 0)}.rocket-flame{right:-4px;top:11px;width:15px;height:8px;background:#f0a35e;border-radius:50% 50% 50% 0;transform:rotate(-45deg);opacity:.9;animation:rocket-flame .26s ease-in-out infinite alternate}.rocket-body:after{content:"";position:absolute;inset:4px 8px 5px 9px;border-top:1.5px solid rgba(60,70,82,.32);border-radius:50%;transform:rotate(-8deg)}.cursor-ring{position:fixed;width:40px;height:40px;border:1.5px solid var(--sand);border-radius:50%;pointer-events:none;z-index:9998;opacity:.35;transition:opacity .3s ease,transform .3s ease}.cursor-rocket.hover{transform:translate(-50%,-50%) rotate(68deg) scale(1.18)}.cursor-ring.hover{opacity:.08;transform:scale(.4)}.cursor-rocket:after,.cursor-rocket:before{content:"";position:absolute;right:-16px;height:1.5px;background:var(--sand);border-radius:999px;opacity:.52}.cursor-rocket:before{top:10px;width:15px;transform:rotate(8deg)}.cursor-rocket:after{top:24px;width:21px;transform:rotate(-7deg)}@keyframes rocket-flame{0%{width:10px;opacity:.65}to{width:17px;opacity:1}}.doodle-layer{position:absolute;inset:0;pointer-events:none;z-index:1;overflow:hidden}.doodle{position:absolute;fill:none;stroke:var(--sand);stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round;opacity:.12;stroke-dasharray:360;stroke-dashoffset:0;filter:drop-shadow(0 8px 18px rgba(60,70,82,.06))}.doodle circle,.doodle text{fill:var(--sand);stroke:none}.doodle text{font-family:var(--font-mono);font-size:12px;letter-spacing:0;text-transform:uppercase}.section-doodle{fill:none;stroke:var(--sand);stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round;opacity:.22;pointer-events:none}.section-doodle text{fill:var(--sand);stroke:none;font-family:var(--font-mono);font-size:12px;letter-spacing:0;text-transform:uppercase}.about-left-doodle{margin-top:2.5rem;max-width:min(100%,360px);transform:rotate(-3deg)}.about-graph-doodles{margin-top:2.6rem;max-width:540px;opacity:.34;transform:rotate(-2deg);pointer-events:none}.about-graph-doodles svg{width:min(100%,540px);height:auto;fill:none;stroke:var(--sand);stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}.about-graph-doodles text{fill:var(--sand);stroke:none;font-family:var(--font-mono);font-size:12px;letter-spacing:0;text-transform:uppercase}.about-graph-doodles .spark,.about-graph-doodles circle,.about-graph-doodles rect{fill:var(--bg3);stroke:var(--sand)}.about-graph-doodles .graph-grid{opacity:.7}.about-graph-doodles .graph-grid.light{opacity:.28}.about-graph-doodles .graph-line{stroke-width:3.2}.about-graph-doodles .bar-base{opacity:.4}.about-graph-doodles .spark.small{opacity:.7}.about-quality-widget{position:relative;width:min(100%,420px);margin-top:1.8rem;padding:1.25rem;background:rgba(255,253,242,.64);border:1px solid var(--border2);border-radius:4px;box-shadow:0 28px 90px -58px rgba(60,70,82,.55);backdrop-filter:blur(2px);transform:rotate(1deg);overflow:hidden}.about-quality-widget:before{content:"";position:absolute;inset:0;background:linear-gradient(rgba(60,70,82,.045) 1px,transparent 0),linear-gradient(90deg,rgba(60,70,82,.045) 1px,transparent 0);background-size:22px 22px;pointer-events:none}.about-quality-widget>*{position:relative}.quality-widget-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem}.quality-widget-grid div{padding:.75rem;background:hsla(47,59%,85%,.55);border:1px solid var(--border);border-radius:4px}.quality-widget-grid span,.quality-widget-grid strong{display:block;font-family:var(--font-mono);letter-spacing:0}.quality-widget-grid span{color:var(--text-dim);font-size:10px;text-transform:uppercase;margin-bottom:.35rem}.quality-widget-grid strong{color:var(--text);font-size:12px;font-weight:700}.quality-widget-graph{margin-top:1rem;width:100%;height:auto;fill:none;stroke:var(--sand);stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round;opacity:.74}.quality-widget-graph circle,.quality-widget-graph rect{fill:var(--bg3)}.quality-widget-graph text{fill:var(--sand);stroke:none;font-family:var(--font-mono);font-size:11px;letter-spacing:0;text-transform:uppercase}.experience-right-doodle{position:absolute;right:4.5rem;top:15.5rem;z-index:0;opacity:.16;transform:rotate(5deg)}.experience-signal-panel{position:absolute;right:0;top:.25rem;width:min(390px,28vw);min-height:540px;padding:1.5rem;background:rgba(255,253,242,.88);border:1.5px solid var(--border2);border-radius:4px;box-shadow:0 24px 80px -46px rgba(60,70,82,.55);overflow:hidden;z-index:5}.experience-signal-panel:before{content:"";position:absolute;inset:0;background:linear-gradient(rgba(60,70,82,.05) 1px,transparent 0),linear-gradient(90deg,rgba(60,70,82,.05) 1px,transparent 0);background-size:24px 24px;-webkit-mask-image:linear-gradient(180deg,#000,transparent 78%);mask-image:linear-gradient(180deg,#000,transparent 78%);pointer-events:none}.experience-signal-row{position:relative;display:grid;grid-template-columns:2.4rem 1fr;gap:.8rem;padding:1rem 0;border-top:1px solid var(--border)}.experience-signal-row span{color:var(--text-dim);font-size:11px}.experience-signal-row h3{margin:0 0 .35rem;color:var(--text);font-size:17px;line-height:1.2;font-weight:800}.experience-signal-row p{margin:0;color:var(--text-muted);font-size:13.5px;line-height:1.55}.experience-panel-doodle{position:absolute;left:1.2rem;bottom:1rem;width:calc(100% - 2.4rem);opacity:.18}.company-domain-doodle{position:absolute;right:clamp(1.5rem,6vw,7rem);fill:none;stroke:var(--sand);stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round;opacity:.24;pointer-events:none}.company-domain-doodle text{fill:var(--sand);stroke:none;font-family:var(--font-mono);font-size:12px;letter-spacing:0;text-transform:uppercase}.doodle-laptop{top:7%;right:-2.75rem;transform:rotate(5deg)}.doodle-testcase{top:23%;left:-3rem;transform:rotate(-6deg)}.doodle-bug-report{top:39%;right:-3rem;transform:rotate(6deg)}.doodle-api{top:55%;left:-3rem;transform:rotate(-5deg)}.doodle-database{top:68%;right:-1.75rem;opacity:.1;transform:rotate(5deg)}.doodle-terminal{top:71%;left:-2.5rem;opacity:.09;transform:rotate(-4deg)}.doodle-chip{top:81%;left:-3rem;transform:rotate(-5deg)}.doodle-branch{top:14%;left:-2.5rem;opacity:.09;transform:rotate(-3deg)}.doodle-ci{top:90%;right:-2.5rem;opacity:.1;transform:rotate(4deg)}.doodle-magnifier{top:49%;right:-2.75rem;opacity:.08;transform:rotate(6deg)}@media (max-width:900px){.doodle{opacity:.08;transform:scale(.72)!important}.doodle-bug-report,.doodle-ci,.doodle-database,.doodle-laptop{right:-4rem}.doodle-api,.doodle-chip,.doodle-testcase{left:-4rem}.doodle-branch,.doodle-magnifier,.doodle-terminal{display:none}}@media (max-width:1180px){.doodle-branch,.doodle-ci,.doodle-database,.doodle-magnifier,.doodle-terminal{display:none}}::-moz-selection{background:var(--sand);color:var(--bg)}::selection{background:var(--sand);color:var(--bg)}body:after{content:"";position:fixed;inset:0;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");opacity:.022;pointer-events:none;z-index:200}@keyframes ticker{0%{transform:translateX(0)}to{transform:translateX(-50%)}}.animate-ticker{animation:ticker 30s linear infinite}.ticker-wrap:hover .animate-ticker{animation-play-state:paused}.hero-name-space{position:relative;width:-moz-fit-content;width:fit-content}.name-celebration-star,.name-firework,.name-swoosh{position:absolute;pointer-events:none;opacity:0;animation:none}.name-swoosh{left:-.12em;right:-.36em;top:.52em;height:.28em;border-top:4px solid rgba(60,70,82,.34);border-radius:50%;transform:rotate(-7deg) scaleX(.22);transform-origin:left}.name-swoosh:after,.name-swoosh:before{content:"";position:absolute;width:.07em;height:.07em;background:var(--sand);border-radius:50%;top:-.18em}.name-swoosh:before{left:38%}.name-swoosh:after{left:78%}.name-firework{width:38px;height:38px;opacity:0;background:linear-gradient(var(--sand),var(--sand)) 50% 0 /2px 11px no-repeat,linear-gradient(var(--sand),var(--sand)) 50% 100% /2px 11px no-repeat,linear-gradient(90deg,var(--sand),var(--sand)) 0 50% /11px 2px no-repeat,linear-gradient(90deg,var(--sand),var(--sand)) 100% 50% /11px 2px no-repeat;border-radius:50%;animation:none}.name-firework-1{right:-.54em;top:-.2em}.name-firework-2{left:55%;bottom:-.18em;transform:scale(.7)}.name-firework-3{left:.08em;top:.12em;transform:scale(.56)}.name-celebration-star{color:var(--sand-light);font-size:clamp(17px,1.8vw,28px);line-height:1}.name-celebration-star-1{right:-.24em;top:.08em}.name-celebration-star-2{left:.1em;bottom:-.06em;font-size:clamp(14px,1.4vw,22px)}.name-celebration-star-3{left:70%;top:-.1em;font-size:clamp(13px,1.2vw,20px)}.hero-name-space:hover .name-swoosh{animation:celebration-swoosh .9s ease-out both,handdrawn-wiggle .44s steps(2) infinite}.hero-name-space:hover .name-firework{animation:name-firework 1.35s ease-out infinite,handdrawn-wiggle .44s steps(2) infinite}.hero-name-space:hover .name-firework-2{animation-delay:.18s}.hero-name-space:hover .name-firework-3{animation-delay:.34s}.hero-name-space:hover .name-celebration-star{animation:celebration-star-pop 1.25s ease-out infinite,handdrawn-wiggle .42s steps(2) infinite}.hero-name-space:hover .name-celebration-star-2{animation-delay:.18s}.hero-name-space:hover .name-celebration-star-3{animation-delay:.32s}@keyframes celebration-swoosh{0%{opacity:0;transform:rotate(-7deg) scaleX(.12)}45%{opacity:.72;transform:rotate(-7deg) scaleX(1)}to{opacity:.22;transform:rotate(-7deg) scaleX(1.03)}}@keyframes name-firework{0%{opacity:0;transform:scale(.3) rotate(0deg)}22%{opacity:.78;transform:scale(1) rotate(24deg)}70%{opacity:.4;transform:scale(1.18) rotate(48deg)}to{opacity:0;transform:scale(1.3) rotate(60deg)}}@keyframes celebration-star-pop{0%,to{opacity:0;transform:translateY(0) scale(.55) rotate(0deg)}28%{opacity:1;transform:translateY(-.08em) scale(1.08) rotate(16deg)}68%{opacity:.48;transform:translateY(-.14em) scale(.92) rotate(-8deg)}}@keyframes handdrawn-wiggle{0%,to{filter:drop-shadow(.8px -.4px 0 rgba(60,70,82,.18))}50%{filter:drop-shadow(-.8px .5px 0 rgba(60,70,82,.16))}}.skill-fill-bar{width:0;transition:width 1.3s cubic-bezier(.16,1,.3,1)}.skill-fill-bar.animated{width:var(--target-w)}@keyframes blink{0%,to{opacity:1;transform:scale(1)}50%{opacity:.3;transform:scale(.5)}}.blink{animation:blink 2s ease infinite}@keyframes scroll-bar{0%,to{width:50px;opacity:1}50%{width:28px;opacity:.4}}.scroll-bar-anim{animation:scroll-bar 2s ease infinite}.hover\:text-\[var\(--sand\)\]:hover{color:var(--sand)}.group:hover .group-hover\:-translate-y-1{--tw-translate-y:-0.25rem}.group:hover .group-hover\:-translate-y-1,.group:hover .group-hover\:translate-x-0{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(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-0{--tw-translate-x:0px}.group:hover .group-hover\:translate-x-1{--tw-translate-x:0.25rem}.group:hover .group-hover\:translate-x-1,.group:hover .group-hover\:translate-x-1\.5{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(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\.5{--tw-translate-x:0.375rem}.group:hover .group-hover\:scale-x-100{--tw-scale-x:1}.group:hover .group-hover\:scale-x-100,.group:hover .group-hover\:scale-y-100{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:scale-y-100{--tw-scale-y:1}.group:hover .group-hover\:text-\[var\(--sand\)\]{color:var(--sand)}.group:hover .group-hover\:opacity-100{opacity:1}@media (min-width:640px){.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width:768px){.md\:block{display:block}.md\:px-14{padding-left:3.5rem;padding-right:3.5rem}.md\:py-28{padding-top:7rem;padding-bottom:7rem}}@media (min-width:1024px){.lg\:block{display:block}.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:gap-24{gap:6rem}}