*,:before,:after,::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:#3b82f680;--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:0 solid #e5e7eb}:before,:after{--tw-content:""}html,:host{-webkit-text-size-adjust:100%;tab-size:4;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;line-height:1.5}body{line-height:inherit;margin:0}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-feature-settings:normal;font-variation-settings:normal;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-feature-settings:inherit;font-variation-settings:inherit;font-family: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:#0000;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button{height:auto}::-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{margin:0;padding:0;list-style:none}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder{opacity:1;color:#9ca3af}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{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}:root{--background:0 0% 98%;--foreground:0 0% 10%;--card:0 0% 100%;--card-foreground:0 0% 10%;--popover:0 0% 100%;--popover-foreground:0 0% 10%;--primary:0 0% 10%;--primary-foreground:0 0% 98%;--secondary:0 0% 96%;--secondary-foreground:0 0% 10%;--muted:0 0% 96%;--muted-foreground:0 0% 45%;--accent:0 0% 94%;--accent-foreground:0 0% 10%;--destructive:0 84% 60%;--destructive-foreground:0 0% 98%;--border:0 0% 80%;--input:0 0% 80%;--ring:0 0% 10%;--radius:.5rem;--sidebar-background:0 0% 98%;--sidebar-foreground:0 0% 45%;--sidebar-primary:0 0% 10%;--sidebar-primary-foreground:0 0% 98%;--sidebar-accent:0 0% 94%;--sidebar-accent-foreground:0 0% 10%;--sidebar-border:0 0% 90%;--sidebar-ring:0 0% 10%}.\!dark{--background:0 0% 10%!important;--foreground:0 0% 98%!important;--card:0 0% 12%!important;--card-foreground:0 0% 98%!important;--popover:0 0% 12%!important;--popover-foreground:0 0% 98%!important;--primary:0 0% 98%!important;--primary-foreground:0 0% 10%!important;--secondary:0 0% 15%!important;--secondary-foreground:0 0% 98%!important;--muted:0 0% 15%!important;--muted-foreground:0 0% 65%!important;--accent:0 0% 15%!important;--accent-foreground:0 0% 98%!important;--destructive:0 62% 30%!important;--destructive-foreground:0 0% 98%!important;--border:0 0% 15%!important;--input:0 0% 15%!important;--ring:0 0% 83%!important;--sidebar-background:0 0% 12%!important;--sidebar-foreground:0 0% 65%!important;--sidebar-primary:0 0% 98%!important;--sidebar-primary-foreground:0 0% 10%!important;--sidebar-accent:0 0% 15%!important;--sidebar-accent-foreground:0 0% 98%!important;--sidebar-border:0 0% 15%!important;--sidebar-ring:0 0% 83%!important}.dark{--background:0 0% 10%;--foreground:0 0% 98%;--card:0 0% 12%;--card-foreground:0 0% 98%;--popover:0 0% 12%;--popover-foreground:0 0% 98%;--primary:0 0% 98%;--primary-foreground:0 0% 10%;--secondary:0 0% 15%;--secondary-foreground:0 0% 98%;--muted:0 0% 15%;--muted-foreground:0 0% 65%;--accent:0 0% 15%;--accent-foreground:0 0% 98%;--destructive:0 62% 30%;--destructive-foreground:0 0% 98%;--border:0 0% 15%;--input:0 0% 15%;--ring:0 0% 83%;--sidebar-background:0 0% 12%;--sidebar-foreground:0 0% 65%;--sidebar-primary:0 0% 98%;--sidebar-primary-foreground:0 0% 10%;--sidebar-accent:0 0% 15%;--sidebar-accent-foreground:0 0% 98%;--sidebar-border:0 0% 15%;--sidebar-ring:0 0% 83%}*{border-color:hsl(var(--border))}html{scroll-behavior:smooth}body{background-color:hsl(var(--background));color:hsl(var(--foreground));-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-feature-settings:"ss01", "ss02", "cv01", "cv02";font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif}h1,h2,h3,h4,h5,h6{letter-spacing:-.025em;font-family:Space Grotesk,-apple-system,BlinkMacSystemFont,sans-serif;font-weight:500}h1{font-size:2.25rem;line-height:2.5rem}@media (width>=768px){h1{font-size:3rem;line-height:1}}@media (width>=1024px){h1{font-size:3.75rem;line-height:1}}h2{font-size:1.875rem;line-height:2.25rem}@media (width>=768px){h2{font-size:2.25rem;line-height:2.5rem}}h3{font-size:1.5rem;line-height:2rem}@media (width>=768px){h3{font-size:1.875rem;line-height:2.25rem}}p{font-size:1rem;line-height:1.625}@media (width>=768px){p{font-size:1.125rem;line-height:1.75rem}}.container{max-width:1200px;margin-left:auto;margin-right:auto;padding-left:1rem;padding-right:1rem}@media (width>=768px){.container{padding-left:1.5rem;padding-right:1.5rem}}::-webkit-scrollbar{width:10px}::-webkit-scrollbar-track{background-color:hsl(var(--secondary))}::-webkit-scrollbar-thumb{background-color:hsl(var(--muted-foreground) / .5);border-radius:9999px}::-webkit-scrollbar-thumb:hover{background-color:hsl(var(--muted-foreground) / .7)}.container{width:100%;margin-left:auto;margin-right:auto;padding-left:2rem;padding-right:2rem}@media (width>=1400px){.container{max-width:1400px}}.button{background-color:hsl(var(--foreground));color:hsl(var(--background));border-radius:9999px;justify-content:center;align-items:center;gap:.5rem;padding:.75rem 1.5rem;font-size:.875rem;font-weight:500;line-height:1.25rem;transition-property:opacity;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1);display:inline-flex}.button:hover{opacity:.8}.button:disabled{cursor:not-allowed;opacity:.5}.button.secondary{border-width:1px;border-color:hsl(var(--border));color:hsl(var(--foreground));background-color:#0000}.button.secondary:hover{background-color:hsl(var(--secondary))}.icon-button{border-radius:9999px;flex-shrink:0;justify-content:center;align-items:center;width:2.5rem;height:2.5rem;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1);display:inline-flex}.icon-button:hover{background-color:hsl(var(--secondary))}.panel{border-width:1px;border-color:hsl(var(--border) / .5);background-color:hsl(var(--card));border-radius:1rem}.section{padding-top:5rem;padding-bottom:5rem}@media (width>=768px){.section{padding-top:7rem;padding-bottom:7rem}}.eyebrow{text-transform:uppercase;letter-spacing:.16em;color:hsl(var(--muted-foreground));font-size:.75rem;font-weight:500;line-height:1rem}.page-heading{max-width:1200px;margin-left:auto;margin-right:auto;padding-left:1rem;padding-right:1rem}@media (width>=768px){.page-heading{padding-left:1.5rem;padding-right:1.5rem}}.page-heading{width:100%;margin-left:auto;margin-right:auto;padding-left:2rem;padding-right:2rem}@media (width>=1400px){.page-heading{max-width:1400px}}.page-heading{text-align:center;padding-top:4rem;padding-bottom:4rem}@media (width>=768px){.page-heading{padding-top:6rem;padding-bottom:6rem}}.page-heading h1{margin-top:1rem;margin-bottom:1.5rem}.page-heading>p:not(.eyebrow){max-width:36rem;color:hsl(var(--muted-foreground));margin-left:auto;margin-right:auto;font-size:1.125rem;line-height:1.75rem}.badge{border-width:1px;border-color:hsl(var(--border) / .6);background-color:hsl(var(--secondary) / .5);border-radius:9999px;align-items:center;gap:.5rem;padding:.25rem .75rem;font-size:.75rem;font-weight:500;line-height:1rem;display:inline-flex}.tabs{border-width:1px;border-color:hsl(var(--border) / .5);background-color:hsl(var(--secondary) / .6);border-radius:9999px;gap:.25rem;width:fit-content;max-width:100%;margin-left:auto;margin-right:auto;padding:.375rem;display:flex;overflow-x:auto}.tab{white-space:nowrap;color:hsl(var(--muted-foreground));border-radius:9999px;padding:.5rem 1rem;font-size:.875rem;font-weight:500;line-height:1.25rem}.tab:hover{color:hsl(var(--foreground))}.tab.active{background-color:hsl(var(--foreground));color:hsl(var(--background))}.portfolio-dialog{border-width:1px;border-color:hsl(var(--border));background-color:hsl(var(--background));width:calc(100% - 2rem);max-width:48rem;max-height:90dvh;color:hsl(var(--foreground));border-radius:1rem;margin:auto;padding:0;overflow-y:auto}.portfolio-dialog::backdrop{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#000000a6}.gallery-prev,.gallery-next{--tw-translate-y:-50%;width:2.25rem;height:2.25rem;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));border-width:1px;border-color:hsl(var(--border));background-color:hsl(var(--background) / .9);border-radius:9999px;place-items:center;display:grid;position:absolute;top:50%}.gallery-prev{left:.75rem}.gallery-next{right:.75rem}label{margin-bottom:.5rem;font-size:.875rem;font-weight:500;line-height:1.25rem;display:block}input:not([type=checkbox]):not([type=radio]),textarea,select{border-radius:var(--radius);border-width:1px;border-color:hsl(var(--input));background-color:hsl(var(--background));outline-offset:2px;outline:2px solid #0000;width:100%;padding:.625rem .75rem;font-size:.875rem;line-height:1.25rem}input:not([type=checkbox]):not([type=radio]):focus,textarea:focus,select: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);--tw-ring-color:hsl(var(--ring) / .3)}.field-error{--tw-text-opacity:1;color:rgb(220 38 38/var(--tw-text-opacity,1));margin-top:.5rem;font-size:.875rem;line-height:1.25rem}.field-error:is(.dark *){--tw-text-opacity:1;color:rgb(248 113 113/var(--tw-text-opacity,1))}.success-message{--tw-text-opacity:1;color:rgb(22 101 52/var(--tw-text-opacity,1));background-color:#22c55e1a;border-width:1px;border-color:#16a34a4d;border-radius:.75rem;padding:1rem;font-size:.875rem;line-height:1.25rem}.success-message:is(.dark *){--tw-text-opacity:1;color:rgb(134 239 172/var(--tw-text-opacity,1))}.skip-link{z-index:50;background-color:hsl(var(--foreground));color:hsl(var(--background));border-radius:.25rem;padding:.5rem 1rem;position:fixed;top:-5rem;left:1rem}.skip-link:focus{top:1rem}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.\!visible{visibility:visible!important}.visible{visibility:visible}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.bottom-3{bottom:.75rem}.left-1\/2{left:50%}.left-3{left:.75rem}.right-3{right:.75rem}.top-3{top:.75rem}.isolate{isolation:isolate}.z-10{z-index:10}.\!mx-0{margin-left:0!important;margin-right:0!important}.my-5{margin-top:1.25rem;margin-bottom:1.25rem}.my-6{margin-top:1.5rem;margin-bottom:1.5rem}.mb-2{margin-bottom:.5rem}.mb-4{margin-bottom:1rem}.mb-5{margin-bottom:1.25rem}.mb-6{margin-bottom:1.5rem}.mb-8{margin-bottom:2rem}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.mt-5{margin-top:1.25rem}.mt-6{margin-top:1.5rem}.mt-8{margin-top:2rem}.block{display:block}.inline{display:inline}.flex{display:flex}.table{display:table}.grid{display:grid}.contents{display:contents}.hidden{display:none}.aspect-video{aspect-ratio:16/9}.h-20{height:5rem}.max-h-\[55vh\]{max-height:55vh}.min-h-64{min-height:16rem}.min-h-\[55vh\]{min-height:55vh}.min-h-screen{min-height:100vh}.w-28{width:7rem}.w-full{width:100%}.min-w-0{min-width:0}.max-w-72{max-width:18rem}.max-w-md{max-width:28rem}.flex-1{flex:1}.flex-shrink{flex-shrink:1}.-translate-x-1\/2{--tw-translate-x:-50%;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))}.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-pointer{cursor:pointer}.resize{resize:both}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.flex-wrap{flex-wrap:wrap}.place-items-center{place-items:center}.items-center{align-items:center}.\!justify-start{justify-content:flex-start!important}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-1{gap:.25rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-5{gap:1.25rem}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.75rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem * 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}.whitespace-pre-line{white-space:pre-line}.break-words{overflow-wrap:break-word}.rounded-3xl{border-radius:1.5rem}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:var(--radius)}.rounded-xl{border-radius:.75rem}.border{border-width:1px}.border-8{border-width:8px}.border-t{border-top-width:1px}.border-black{--tw-border-opacity:1;border-color:rgb(0 0 0/var(--tw-border-opacity,1))}.border-border{border-color:hsl(var(--border))}.bg-background\/90{background-color:hsl(var(--background) / .9)}.bg-black\/70{background-color:#000000b3}.bg-secondary{background-color:hsl(var(--secondary))}.object-contain{-o-object-fit:contain;object-fit:contain}.object-cover{-o-object-fit:cover;object-fit:cover}.p-12{padding:3rem}.p-2{padding:.5rem}.p-4{padding:1rem}.p-5{padding:1.25rem}.p-6{padding:1.5rem}.p-8{padding:2rem}.\!py-2{padding-top:.5rem!important;padding-bottom:.5rem!important}.px-2{padding-left:.5rem;padding-right:.5rem}.px-3{padding-left:.75rem;padding-right:.75rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.\!pl-10{padding-left:2.5rem!important}.pt-8{padding-top:2rem}.text-center{text-align:center}.text-2xl{font-size:1.5rem;line-height:2rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xs{font-size:.75rem;line-height:1rem}.font-semibold{font-weight:600}.capitalize{text-transform:capitalize}.text-muted-foreground{color:hsl(var(--muted-foreground))}.text-red-500{--tw-text-opacity:1;color:rgb(239 68 68/var(--tw-text-opacity,1))}.text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.underline{text-decoration-line:underline}.outline{outline-style:solid}.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)}.invert{--tw-invert:invert(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)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter,backdrop-filter;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.ease-out{transition-timing-function:cubic-bezier(0,0,.2,1)}@keyframes enter{0%{opacity:var(--tw-enter-opacity,1);transform:translate3d(var(--tw-enter-translate-x,0), var(--tw-enter-translate-y,0), 0) scale3d(var(--tw-enter-scale,1), var(--tw-enter-scale,1), var(--tw-enter-scale,1)) rotate(var(--tw-enter-rotate,0))}}@keyframes exit{to{opacity:var(--tw-exit-opacity,1);transform:translate3d(var(--tw-exit-translate-x,0), var(--tw-exit-translate-y,0), 0) scale3d(var(--tw-exit-scale,1), var(--tw-exit-scale,1), var(--tw-exit-scale,1)) rotate(var(--tw-exit-rotate,0))}}.ease-out{animation-timing-function:cubic-bezier(0,0,.2,1)}.\!paused{animation-play-state:paused!important}.paused{animation-play-state:paused}:focus-visible{outline-offset:4px;outline:2px solid}html:has(dialog[open]){overflow:hidden}.filepond--root{font-family:inherit}.filepond--panel-root{background:hsl(var(--secondary))}.filepond--drop-label{color:hsl(var(--foreground))}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.hover\:bg-secondary:hover{background-color:hsl(var(--secondary))}.dark\:invert:is(.dark *){--tw-invert:invert(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)}@media (width>=640px){.sm\:block{display:block}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width>=768px){.md\:p-8{padding:2rem}}:root{--background:70 23% 95%;--foreground:103 10% 13%;--card:70 23% 98%;--card-foreground:103 10% 13%;--popover:70 23% 98%;--popover-foreground:103 10% 13%;--secondary:70 18% 89%;--muted:70 18% 89%;--muted-foreground:100 5% 35%;--border:80 9% 77%;--input:80 8% 55%;--spot:#495c28;--citron:#e4ed87;--paper:#f4f5ef;--ink:#20251e;--ease-out:cubic-bezier(.22, 1, .36, 1)}.dark{--background:103 10% 10%;--foreground:70 23% 95%;--card:103 9% 14%;--card-foreground:70 23% 95%;--popover:103 9% 14%;--popover-foreground:70 23% 95%;--secondary:103 8% 17%;--muted:103 8% 17%;--muted-foreground:80 10% 72%;--border:100 7% 30%;--input:100 7% 49%;--spot:#e4ed87}html{scroll-behavior:auto;scrollbar-color:#7a8464 hsl(var(--background));scroll-padding-top:104px}html.menu-open{overflow:hidden}.site-shell{--gutter:clamp(22px, 4vw, 68px);font-feature-settings:normal;font-family:Space Grotesk,sans-serif;overflow:clip}.site-shell ::selection{background:var(--ink);color:var(--citron)}.site-shell :focus-visible{outline:2px solid var(--spot);outline-offset:5px}.site-shell :is(h1,h2,h3){letter-spacing:-.045em;text-wrap:balance;font-family:Space Grotesk,sans-serif;font-weight:500}.site-shell h1{font-size:clamp(52px,6.7vw,96px);line-height:.98}.site-shell h2{font-size:clamp(34px,4.3vw,62px);line-height:1.08}.site-shell p{line-height:1.7}.site-shell :is(a,button){-webkit-tap-highlight-color:transparent;touch-action:manipulation}.site-shell button{cursor:pointer}.site-shell button:disabled{cursor:wait;opacity:.6}.shell{width:min(100%,1680px);padding-inline:var(--gutter);margin-inline:auto}.accent-text{color:var(--spot)}.footer-legal{flex-wrap:wrap;gap:8px 24px;margin-top:22px;font-size:12px;display:flex}.footer-legal :is(a,button){text-underline-offset:4px;align-items:center;min-height:44px;display:inline-flex}.footer-legal :is(a,button):hover{text-decoration:underline}.small-label{font-size:13px;line-height:1.5}.line-mask{margin-bottom:-.12em;padding-bottom:.12em;display:block;overflow:clip}.line-mask>span{display:block}.skip-link{z-index:70;background:var(--ink);color:var(--paper);padding:14px 20px;position:fixed;top:12px;left:16px;transform:translateY(-160%)}.skip-link:focus{transform:none}.portfolio-header{z-index:40;background:hsl(var(--background));transition:transform .18s var(--ease-out);position:sticky;top:0}.portfolio-header.is-hidden{transform:translateY(-100%)}.portfolio-header:focus-within{transition:none;transform:translateY(0)}.header-inner{justify-content:space-between;align-items:center;gap:26px;min-height:92px;display:flex}.wordmark{flex-shrink:0;align-items:center;gap:15px;display:inline-flex}.brand-symbol{letter-spacing:-.04em;font:600 42px/1 Space Grotesk,sans-serif}.brand-name{flex-direction:column;gap:4px;font-size:13px;font-weight:500;display:flex}.brand-name>span{color:hsl(var(--muted-foreground));font-size:10px;font-weight:400}.desktop-nav{align-items:center;gap:4px;display:flex}.desktop-nav a{border-radius:24px;min-height:44px;padding:12px 20px;font-size:13px;transition:background-color .16s}.desktop-nav a[aria-current=page]{background:hsl(var(--foreground));color:hsl(var(--background))}.header-actions{align-items:center;gap:16px;display:flex}.cv-link{align-items:center;gap:9px;min-height:44px;font-size:12px;display:inline-flex}.site-shell .icon-button{border:1px solid hsl(var(--border));border-radius:50%;width:44px;height:44px}.mobile-toggle,.mobile-nav{display:none}.studio-link,.text-link{text-underline-offset:6px;align-items:center;gap:16px;min-height:44px;font-size:14px;text-decoration:underline;text-decoration-thickness:1px;display:inline-flex}.studio-link svg,.text-link svg{transition:transform .16s var(--ease-out);flex-shrink:0}.round-link{align-items:center;gap:15px;font-size:14px;display:inline-flex}.round-icon{border:1px solid;border-radius:50%;place-items:center;width:52px;height:52px;display:grid}.site-shell .button{background:hsl(var(--foreground));min-height:52px;color:hsl(var(--background));transition:transform .14s var(--ease-out);border-radius:28px}.site-shell :is(.button,.icon-button):active{transform:scale(.97)}.studio-showcase{background:var(--citron);color:var(--ink);border-radius:clamp(24px,3vw,44px);grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr);gap:clamp(36px,5vw,84px);padding-block:58px 42px;display:grid;overflow:hidden}.studio-showcase :focus-visible{outline-color:var(--ink)}@media (width>=1680px){.studio-showcase.shell{width:calc(100% - 64px)}.studio-showcase .object-showcase{height:clamp(560px,28vw,720px)}}.showcase-intro{flex-direction:column;align-items:flex-start;padding-top:6px;display:flex}.site-shell .showcase-intro h1{font-size:clamp(52px,5.6vw,80px)}.showcase-description{max-width:38ch;margin-top:25px;font-size:15px}.showcase-selector{width:100%;margin-block:34px 16px}.showcase-selector button{text-align:left;border-radius:8px;justify-content:space-between;align-items:center;gap:12px;width:100%;min-height:48px;padding:12px 16px;font-size:14px;transition:background-color .16s,color .16s;display:flex}.showcase-selector button svg{opacity:0;flex-shrink:0}.showcase-selector button[aria-pressed=true]{background:var(--ink);color:var(--citron)}.showcase-selector button[aria-pressed=true] svg{opacity:1}.showcase-intro>.studio-link{margin-top:auto}.showcase-stage{min-width:0}.object-showcase{isolation:isolate;height:clamp(380px,36vw,560px);position:relative}.object-canvas{cursor:grab;position:absolute;inset:0}.object-canvas:active{cursor:grabbing}.object-canvas canvas{width:100%;height:100%;display:block}.object-shadow{z-index:-1;filter:blur(22px);opacity:0;background:#344018;border-radius:50%;width:52%;height:10%;transition:opacity .25s;position:absolute;bottom:6%;left:24%}.is-ready .object-shadow{opacity:.16}.object-placeholder{flex-direction:column;justify-content:center;align-items:center;gap:18px;font-size:13px;display:flex;position:absolute;inset:0}.object-hint{color:#4b542a;pointer-events:none;font-size:11px;position:absolute;bottom:8px;left:0}.object-playback{border:1px solid #a7b35b;border-radius:50%;place-items:center;width:44px;height:44px;transition:background-color .16s;display:grid;position:absolute;bottom:0;right:0}.object-playback:hover{background:#d4df74}.object-playback:active{background:#c5d168}.showcase-caption p{color:#4b542a;margin-top:7px;font-size:13px}.showcase-index{font-variant-numeric:tabular-nums}.showcase-index>span{opacity:.5}.showcase-caption{justify-content:space-between;align-items:flex-start;gap:24px;padding-top:23px;display:flex}.site-shell .showcase-caption h2{letter-spacing:-.025em;font-size:24px}.showcase-caption>span{flex-shrink:0;align-items:center;gap:10px;padding-top:5px;font-size:12px;display:flex}.studio-statement{isolation:isolate;min-height:610px;position:relative}.studio-statement-content{z-index:1;pointer-events:none;position:relative}.studio-statement-copy{max-width:55%;padding-block:100px}.studio-statement-copy a{pointer-events:auto}.studio-statement-copy p{max-width:40ch;color:hsl(var(--muted-foreground));margin-block:26px;font-size:18px}.studio-dna{z-index:0;position:absolute;inset:0}.studio-dna .model-scene{height:100%;position:absolute;inset:0}.studio-statement-copy .studio-caption{color:hsl(var(--muted-foreground));margin:28px 0 0;font-size:12px}.model-scene{width:100%;height:100%;position:relative;overflow:hidden}.model-fallback{place-items:center;padding:24px;font-size:13px;display:grid;position:absolute;inset:0}.approach-section{background:hsl(var(--secondary));padding-block:100px}.approach-grid{grid-template-columns:.8fr 1.2fr;gap:8vw;display:grid}.approach-aside{text-align:center;align-self:start;position:sticky;top:115px}.thinker-stage{height:450px}.approach-aside>a{margin-top:22px}.approach-lead{max-width:45ch;margin-top:28px;font-size:20px}.approach-copy blockquote{color:hsl(var(--muted-foreground));max-width:55ch;margin-block:26px 46px;font-size:15px;line-height:1.8}.approach-copy cite{margin-top:12px;font-size:12px;font-style:normal;display:block}.expertise-list article{border-top:1px solid hsl(var(--border));padding-block:24px}.expertise-list h3{justify-content:space-between;gap:18px;font-size:26px;display:flex}.expertise-list h3 svg{flex-shrink:0}.expertise-list p{color:hsl(var(--muted-foreground));max-width:60ch;margin-block:14px;font-size:15px}.expertise-list article>span{font-size:12px}.inner-hero{padding-top:62px}.inner-hero-title{grid-template-columns:1.3fr 1fr;align-items:end;gap:8vw;padding-bottom:55px;display:grid}.inner-hero-title>p{color:hsl(var(--muted-foreground));max-width:38ch;padding-bottom:6px;font-size:16px}.work-filter-row{flex-direction:column;align-items:flex-start;gap:24px;padding-block:24px 34px;display:flex}.archive-total{font-size:13px}.archive-count{font-variant-numeric:tabular-nums;margin-left:8px}.filter-list{flex-wrap:wrap;gap:8px;display:flex}.filter-list button{border:1px solid hsl(var(--border));border-radius:24px;min-height:44px;padding:10px 20px;font-size:13px;transition:background-color .16s,color .16s}.filter-list button[aria-pressed=true]{background:var(--citron);color:var(--ink);border-color:#0000}.archive-section{padding-bottom:100px}.archive-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:58px 28px;display:grid}.archive-grid>:nth-child(3n+1){grid-column:1/-1}.project-link{min-width:0;display:block}.folio-image{background:hsl(var(--secondary));aspect-ratio:1.4;border-radius:16px;position:relative;overflow:hidden}.archive-grid>:nth-child(3n+1) .folio-image{aspect-ratio:2.25}.folio-image img{-o-object-fit:contain;object-fit:contain;width:100%;height:100%;transition:transform .22s var(--ease-out)}.project-open{background:var(--citron);color:var(--ink);border-radius:50%;place-items:center;width:52px;height:52px;display:grid;position:absolute;bottom:20px;right:20px}.folio-meta{justify-content:space-between;align-items:baseline;gap:20px;margin-top:20px;display:flex}.site-shell .folio-meta h3{letter-spacing:-.03em;font-size:clamp(24px,2.7vw,38px)}.folio-meta>span{color:hsl(var(--muted-foreground));flex-shrink:0;font-size:12px}.folio-summary{color:hsl(var(--muted-foreground));-webkit-line-clamp:2;-webkit-box-orient:vertical;max-width:68ch;margin-top:12px;font-size:15px;display:-webkit-box;overflow:hidden}.folio-tools{flex-wrap:wrap;gap:8px 16px;margin-top:15px;font-size:11px;display:flex}.image-placeholder{place-items:center;height:100%;padding:24px;font-size:28px;display:grid}.empty-state{color:hsl(var(--muted-foreground));padding-block:80px}.about-heading{padding-bottom:60px}.biography{grid-template-columns:.8fr 1.2fr;align-items:start;gap:8vw;padding-bottom:100px;display:grid}.portrait{margin:0;position:sticky;top:114px}.portrait-frame{aspect-ratio:.9;background:var(--citron);border-radius:16px;display:block;overflow:hidden}.portrait img{-o-object-fit:cover;object-fit:cover;width:100%;height:100%}.portrait figcaption{color:hsl(var(--muted-foreground));justify-content:space-between;gap:15px;margin-top:18px;font-size:12px;display:flex}.site-shell .biography-copy h2{margin-bottom:30px;font-size:clamp(30px,3.5vw,48px)}.biography-copy p{color:hsl(var(--muted-foreground));max-width:65ch;margin-bottom:24px;font-size:17px;line-height:1.85}.biography-copy .round-link{margin-top:20px}.section-bar{justify-content:space-between;align-items:end;gap:24px;margin-bottom:32px;display:flex}.journey-section{border-top:1px solid hsl(var(--border));padding-block:65px 100px}.timeline-filters{margin-block:28px}.journey-item{border-top:1px solid hsl(var(--border));grid-template-columns:.6fr 1.4fr;gap:8vw;padding-block:35px;display:grid}.journey-date{font:500 24px Space Grotesk,sans-serif}.journey-date span{text-transform:capitalize;color:hsl(var(--muted-foreground));margin-top:12px;font:400 12px Space Grotesk,sans-serif;display:block}.site-shell .journey-item h3{font-size:28px}.journey-item p,.journey-item li{color:hsl(var(--muted-foreground));max-width:70ch;font-size:15px;line-height:1.75}.journey-item p{margin-top:14px}.journey-item .journey-location{margin-top:8px;font-size:13px}.journey-item ul{margin-top:20px;padding-left:18px;list-style:outside}.journey-item li+li{margin-top:8px}.skills-section{background:hsl(var(--secondary));padding-block:90px}.skills-layout{grid-template-columns:.75fr 1.25fr;gap:8vw;display:grid}.skills-layout p{color:hsl(var(--muted-foreground));margin-top:26px;font-size:16px}.skills-filters{margin-bottom:30px}.skills-panels{display:grid}.skills-panels>.skills-list{visibility:hidden;pointer-events:none;grid-area:1/1;align-self:start}.skills-panels>.skills-list.is-active{visibility:visible;pointer-events:auto}.skills-list{grid-template-columns:1fr 1fr;gap:0 25px;display:grid}.skills-list>div{border-top:1px solid hsl(var(--border));align-items:center;gap:16px;min-height:78px;padding-block:20px;font-size:15px;display:flex}.skills-list img{-o-object-fit:contain;object-fit:contain;width:28px;height:28px}.contact-scene{isolation:isolate;position:relative;overflow:hidden}.contact-hero{min-height:510px;padding-block:70px 90px;position:relative}.contact-hero-copy{z-index:1;max-width:760px;position:relative}.contact-hero-copy>p{max-width:42ch;margin-top:30px;font-size:17px}.contact-email{letter-spacing:-.03em;text-underline-offset:8px;align-items:center;gap:20px;margin-top:32px;font:500 clamp(21px,2.7vw,38px) Space Grotesk,sans-serif;text-decoration:underline;display:inline-flex}.contact-layout{z-index:1;grid-template-columns:1.2fr .8fr;gap:9vw;padding-bottom:100px;display:grid;position:relative}.contact-form{background:hsl(var(--background));border-radius:16px;padding:38px}.site-shell .contact-layout h2{margin-bottom:38px;font-size:32px}.contact-field{margin-bottom:30px}.contact-field label{margin-bottom:12px;font-size:13px;font-weight:500;display:block}.site-shell .contact-field input,.site-shell .contact-field textarea{background:hsl(var(--secondary));resize:vertical;width:100%;box-shadow:none;caret-color:var(--spot);border:1px solid #0000;border-radius:8px;padding:16px;font-size:16px}.contact-field input::-moz-placeholder{color:hsl(var(--muted-foreground));opacity:1}.contact-field textarea::-moz-placeholder{color:hsl(var(--muted-foreground));opacity:1}.contact-field input::placeholder,.contact-field textarea::placeholder{color:hsl(var(--muted-foreground));opacity:1}.site-shell .contact-field :is(input,textarea):focus{outline:2px solid var(--spot);outline-offset:3px}.contact-field [aria-invalid=true]{border-color:#b53423}.field-error{color:#b53423;margin-top:10px;font-size:13px}.dark .field-error{color:#ffac9b}.success-message{background:var(--citron);color:var(--ink);border-radius:8px;margin-bottom:25px;padding:16px}.send-button{width:100%;justify-content:space-between!important;padding-inline:24px!important}.contact-details{background:hsl(var(--background));border-radius:16px;padding:38px}.contact-details dl>div{margin-bottom:30px}.contact-details dt{color:hsl(var(--muted-foreground));margin-bottom:10px;font-size:12px}.contact-details dd{font-size:17px;line-height:1.65}.contact-social{flex-wrap:wrap;gap:24px;display:flex}.contact-social a{align-items:center;gap:8px;min-height:44px;display:inline-flex}.contact-map{margin-top:38px}.contact-map>div{aspect-ratio:auto;width:100%;border-radius:12px!important;height:220px!important}.portfolio-footer{background:var(--citron);color:var(--ink);padding-top:38px}.portfolio-footer :focus-visible{outline-color:var(--ink)}.footer-cta{letter-spacing:-.04em;width:fit-content;margin-block:70px 80px;font:500 clamp(54px,7.5vw,96px)/1.05 Space Grotesk,sans-serif;display:block}.footer-word{white-space:nowrap;align-items:baseline;margin-top:.4em;display:flex}.footer-stairs{display:inline-flex}.footer-step{display:inline-block}.footer-cta-arrow{width:clamp(38px,6vw,82px);height:auto;transition:transform .18s var(--ease-out);align-self:center;margin-left:clamp(20px,4vw,60px)}.footer-bottom{border-top:1px solid #9da65c;justify-content:space-between;align-items:center;gap:24px;padding-block:25px;font-size:12px;display:flex}.footer-socials{gap:25px;display:flex}.footer-socials a{align-items:center;gap:8px;min-height:44px;display:flex}.bird-transition{z-index:60;pointer-events:auto;background:#fff;position:fixed;inset:0}.bird-transition canvas{display:block}@media (hover:hover) and (pointer:fine){.desktop-nav a:not([aria-current=page]):hover{background:hsl(var(--secondary))}.studio-link:hover svg,.text-link:hover svg{transform:translate(2px,-2px)}.showcase-selector button:not([aria-pressed=true]):hover{background:#d3dd74}.filter-list button:not([aria-pressed=true]):hover{background:hsl(var(--secondary))}.project-link:hover .folio-image img{transform:scale(1.025)}.footer-cta:hover svg{transform:translate(3px,-3px)}}@media (width<=1100px){.studio-dna{opacity:.2}.brand-name{display:none}.desktop-nav a{padding-inline:16px}.studio-showcase{grid-template-columns:.9fr 1.1fr;gap:35px}.site-shell .showcase-intro h1{font-size:58px}.showcase-caption{display:block}.showcase-caption>span{margin-top:8px}.folio-meta{display:block}.folio-meta>span{margin-top:10px;display:block}.contact-layout{gap:5vw}.contact-form{padding:25px}}@media (width<=767px){.header-inner{gap:12px;min-height:78px}.brand-name{display:flex}.brand-symbol{font-size:35px}.brand-name>span,.desktop-nav,.cv-link{display:none}.header-actions{gap:8px}.mobile-toggle{display:inline-flex}.mobile-nav{background:hsl(var(--background));border-bottom:1px solid hsl(var(--border));flex-direction:column;max-height:calc(100dvh - 78px);padding-block:20px 30px;display:flex;position:absolute;top:100%;left:0;right:0;overflow-y:auto}.mobile-nav a{letter-spacing:-.03em;justify-content:space-between;align-items:center;padding-block:14px;font:500 34px Space Grotesk,sans-serif;display:flex}.mobile-nav a[aria-current=page]{color:var(--spot)}.mobile-nav .mobile-cv{margin-top:10px;font:400 14px Space Grotesk,sans-serif}.menu-enter-active,.menu-leave-active{transition:opacity .18s ease, transform .18s var(--ease-out)}.menu-enter-from,.menu-leave-to{opacity:0;transform:translateY(-8px)}.site-shell h1{font-size:clamp(48px,11vw,72px)}.site-shell h2{font-size:clamp(34px,8vw,48px)}.studio-showcase{padding-block:36px;display:block}.site-shell .showcase-intro h1{font-size:clamp(48px,11vw,68px)}.showcase-description{max-width:42ch;margin-top:24px;font-size:16px}.showcase-selector{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;width:100%;margin-block:25px 20px;display:grid}.showcase-selector button{border:1px solid #9da65c;border-radius:8px;width:100%;min-height:44px;padding:10px 12px;font-size:12px}.showcase-selector button svg{display:none}.showcase-intro>.studio-link{margin-bottom:24px}.object-showcase{aspect-ratio:1.1;height:auto;min-height:280px}.showcase-caption{padding-top:18px;display:flex}.site-shell .showcase-caption h2{font-size:22px}.showcase-caption>span{margin-top:0;font-size:11px}.studio-statement{min-height:610px}.studio-statement-copy{max-width:none;padding-block:65px 32px}.studio-statement-copy p{font-size:17px}.studio-dna{opacity:.16}.approach-section{padding-block:65px}.approach-grid{flex-direction:column-reverse;gap:35px;display:flex}.approach-aside{align-self:stretch;position:static}.thinker-stage{height:350px}.approach-lead{font-size:18px}.expertise-list h3{font-size:25px}.inner-hero{padding-top:40px}.inner-hero-title{padding-bottom:25px;display:block}.inner-hero-title>p{margin-top:25px;font-size:16px}.work-filter-row{gap:18px}.filter-list{gap:8px}.filter-list button{padding-inline:15px;font-size:12px}.archive-grid{display:block}.archive-grid>*+*{margin-top:42px}.folio-image,.archive-grid>:nth-child(3n+1) .folio-image{aspect-ratio:1.3}.site-shell .folio-meta h3{font-size:28px}.folio-summary{font-size:16px}.archive-section{padding-bottom:65px}.about-heading{padding-bottom:36px}.biography{flex-direction:column;gap:40px;padding-bottom:65px;display:flex}.portrait{width:100%;position:static}.portrait-frame{aspect-ratio:1}.portrait figcaption{font-size:11px}.biography-copy p{font-size:16px}.section-bar{display:block}.section-bar>span{margin-top:18px;display:block}.journey-section{padding-block:45px 65px}.journey-item{grid-template-columns:1fr;gap:18px}.journey-date{align-items:baseline;gap:18px;font-size:20px;display:flex}.journey-date span{margin-top:0}.site-shell .journey-item h3{font-size:26px}.journey-item p,.journey-item li{font-size:16px}.skills-section{padding-block:65px}.skills-layout{display:block}.skills-filters{margin-top:32px}.skills-list{gap:0 15px}.skills-list>div{gap:12px;font-size:14px}.contact-hero{min-height:470px;padding-block:50px 60px}.contact-hero-copy>p{font-size:16px}.contact-email{gap:12px;font-size:clamp(20px,5.5vw,28px)}.contact-email svg{flex-shrink:0;width:20px}.contact-layout{padding-bottom:65px;display:block}.contact-form{border-radius:0;padding:25px 0}.site-shell .contact-layout h2{font-size:30px}.contact-details{border-radius:0;padding:35px 0 0}.footer-cta{margin-block:55px 60px;font-size:clamp(42px,10.6vw,76px)}.footer-bottom{flex-wrap:wrap;gap:8px 22px}.footer-socials{width:100%}}@media (prefers-reduced-motion:reduce){.site-shell *,.site-shell :before,.site-shell :after{transition:none!important;animation:none!important}.footer-step{transform:none!important}.bird-transition{display:none}}.cms-preview-bar{z-index:50;color:#20251e;text-align:center;background:#e4ed87;padding:12px 24px;font:13px Inter,sans-serif;position:relative}.cms-preview-bar a{margin-left:12px;text-decoration:underline}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/build/assets/inter-latin-400-normal-C38fXH4l.woff2)format("woff2"),url(/build/assets/inter-latin-400-normal-CyCys3Eg.woff)format("woff")}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/build/assets/inter-latin-500-normal-Cerq10X2.woff2)format("woff2"),url(/build/assets/inter-latin-500-normal-BL9OpVg8.woff)format("woff")}
