*,: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:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;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% 100%;--foreground:0 0% 3.9%;--card:0 0% 100%;--card-foreground:0 0% 3.9%;--popover:0 0% 100%;--popover-foreground:0 0% 3.9%;--primary:0 0% 9%;--primary-foreground:0 0% 98%;--secondary:0 0% 96.1%;--secondary-foreground:0 0% 9%;--muted:0 0% 96.1%;--muted-foreground:0 0% 45.1%;--accent:0 0% 96.1%;--accent-foreground:0 0% 9%;--destructive:0 84.2% 60.2%;--destructive-foreground:0 0% 98%;--border:0 0% 89.8%;--input:0 0% 89.8%;--ring:0 0% 3.9%;--chart-1:12 76% 61%;--chart-2:173 58% 39%;--chart-3:197 37% 24%;--chart-4:43 74% 66%;--chart-5:27 87% 67%;--radius:.5rem;--sidebar-background:0 0% 98%;--sidebar-foreground:240 5.3% 26.1%;--sidebar-primary:240 5.9% 10%;--sidebar-primary-foreground:0 0% 98%;--sidebar-accent:240 4.8% 95.9%;--sidebar-accent-foreground:240 5.9% 10%;--sidebar-border:220 13% 91%;--sidebar-ring:217.2 91.2% 59.8%}.dark{--background:0 0% 3.9%;--foreground:0 0% 98%;--card:0 0% 3.9%;--card-foreground:0 0% 98%;--popover:0 0% 3.9%;--popover-foreground:0 0% 98%;--primary:0 0% 98%;--primary-foreground:0 0% 9%;--secondary:0 0% 14.9%;--secondary-foreground:0 0% 98%;--muted:0 0% 14.9%;--muted-foreground:0 0% 63.9%;--accent:0 0% 14.9%;--accent-foreground:0 0% 98%;--destructive:0 62.8% 30.6%;--destructive-foreground:0 0% 98%;--border:0 0% 14.9%;--input:0 0% 14.9%;--ring:0 0% 83.1%;--chart-1:220 70% 50%;--chart-2:160 60% 45%;--chart-3:30 80% 55%;--chart-4:280 65% 60%;--chart-5:340 75% 55%;--sidebar-background:240 5.9% 10%;--sidebar-foreground:240 4.8% 95.9%;--sidebar-primary:224.3 76.3% 48%;--sidebar-primary-foreground:0 0% 100%;--sidebar-accent:240 3.7% 15.9%;--sidebar-accent-foreground:240 4.8% 95.9%;--sidebar-border:240 3.7% 15.9%;--sidebar-ring:217.2 91.2% 59.8%}.\!container{width:100%!important;margin-left:auto!important;margin-right:auto!important;padding-left:2rem!important;padding-right:2rem!important}.container{width:100%;margin-left:auto;margin-right:auto;padding-left:2rem;padding-right:2rem}@media (width>=1400px){.\!container{max-width:1400px!important}.container{max-width:1400px}}.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}.pointer-events-none{pointer-events:none}.visible{visibility:visible}.invisible{visibility:hidden}.collapse{visibility:collapse}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.inset-0{inset:0}.inset-x-0{left:0;right:0}.inset-y-0{top:0;bottom:0}.-bottom-12{bottom:-3rem}.-left-12{left:-3rem}.-right-12{right:-3rem}.-top-12{top:-3rem}.bottom-0{bottom:0}.left-0{left:0}.left-1\/2{left:50%}.left-2{left:.5rem}.left-\[50\%\]{left:50%}.right-0{right:0}.right-1{right:.25rem}.right-2{right:.5rem}.right-3{right:.75rem}.right-4{right:1rem}.top-0{top:0}.top-1\.5{top:.375rem}.top-1\/2{top:50%}.top-3\.5{top:.875rem}.top-4{top:1rem}.top-\[1px\]{top:1px}.top-\[50\%\]{top:50%}.top-\[60\%\]{top:60%}.top-full{top:100%}.z-10{z-index:10}.z-20{z-index:20}.z-50{z-index:50}.z-\[1\]{z-index:1}.order-first{order:-9999}.order-last{order:9999}.\!m-0{margin:0!important}.-mx-1{margin-left:-.25rem;margin-right:-.25rem}.-my-2{margin-top:-.5rem;margin-bottom:-.5rem}.mx-2{margin-left:.5rem;margin-right:.5rem}.mx-3\.5{margin-left:.875rem;margin-right:.875rem}.mx-auto{margin-left:auto;margin-right:auto}.my-0{margin-top:0;margin-bottom:0}.my-1{margin-top:.25rem;margin-bottom:.25rem}.-ml-4{margin-left:-1rem}.-mt-4{margin-top:-1rem}.mb-1{margin-bottom:.25rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.ml-1{margin-left:.25rem}.ml-4{margin-left:1rem}.ml-auto{margin-left:auto}.mr-2{margin-right:.5rem}.mt-1\.5{margin-top:.375rem}.mt-2{margin-top:.5rem}.mt-24{margin-top:6rem}.mt-4{margin-top:1rem}.mt-auto{margin-top:auto}.line-clamp-2{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.hidden{display:none}.aspect-square{aspect-ratio:1}.size-10{width:2.5rem;height:2.5rem}.size-3{width:.75rem;height:.75rem}.size-3\.5{width:.875rem;height:.875rem}.size-4{width:1rem;height:1rem}.size-6{width:1.5rem;height:1.5rem}.size-8{width:2rem;height:2rem}.size-\[--cell-size\]{width:var(--cell-size);height:var(--cell-size)}.h-1\.5{height:.375rem}.h-10{height:2.5rem}.h-12{height:3rem}.h-2{height:.5rem}.h-2\.5{height:.625rem}.h-3{height:.75rem}.h-3\.5{height:.875rem}.h-4{height:1rem}.h-5{height:1.25rem}.h-6{height:1.5rem}.h-7{height:1.75rem}.h-8{height:2rem}.h-9{height:2.25rem}.h-\[--cell-size\]{height:var(--cell-size)}.h-\[1px\]{height:1px}.h-\[var\(--radix-navigation-menu-viewport-height\)\]{height:var(--radix-navigation-menu-viewport-height)}.h-\[var\(--radix-select-trigger-height\)\]{height:var(--radix-select-trigger-height)}.h-auto{height:auto}.h-full{height:100%}.h-px{height:1px}.h-svh{height:100svh}.max-h-\[--radix-context-menu-content-available-height\]{max-height:var(--radix-context-menu-content-available-height)}.max-h-\[--radix-select-content-available-height\]{max-height:var(--radix-select-content-available-height)}.max-h-\[300px\]{max-height:300px}.max-h-\[var\(--radix-dropdown-menu-content-available-height\)\]{max-height:var(--radix-dropdown-menu-content-available-height)}.min-h-0{min-height:0}.min-h-\[60px\]{min-height:60px}.min-h-svh{min-height:100svh}.w-10{width:2.5rem}.w-2{width:.5rem}.w-2\.5{width:.625rem}.w-3{width:.75rem}.w-3\.5{width:.875rem}.w-3\/4{width:75%}.w-4{width:1rem}.w-5{width:1.25rem}.w-64{width:16rem}.w-7{width:1.75rem}.w-72{width:18rem}.w-8{width:2rem}.w-9{width:2.25rem}.w-\[--cell-size\]{width:var(--cell-size)}.w-\[--sidebar-width\]{width:var(--sidebar-width)}.w-\[100px\]{width:100px}.w-\[1px\]{width:1px}.w-auto{width:auto}.w-fit{width:fit-content}.w-full{width:100%}.w-max{width:max-content}.w-px{width:1px}.min-w-0{min-width:0}.min-w-10{min-width:2.5rem}.min-w-5{min-width:1.25rem}.min-w-8{min-width:2rem}.min-w-9{min-width:2.25rem}.min-w-\[--cell-size\]{min-width:var(--cell-size)}.min-w-\[12rem\]{min-width:12rem}.min-w-\[8rem\]{min-width:8rem}.min-w-\[var\(--radix-select-trigger-width\)\]{min-width:var(--radix-select-trigger-width)}.max-w-\[--skeleton-width\]{max-width:var(--skeleton-width)}.max-w-lg{max-width:32rem}.max-w-max{max-width:max-content}.max-w-sm{max-width:24rem}.flex-1{flex:1}.shrink{flex-shrink:1}.shrink-0{flex-shrink:0}.grow{flex-grow:1}.grow-0{flex-grow:0}.basis-full{flex-basis:100%}.caption-bottom{caption-side:bottom}.border-collapse{border-collapse:collapse}.origin-\[--radix-context-menu-content-transform-origin\]{transform-origin:var(--radix-context-menu-content-transform-origin)}.origin-\[--radix-dropdown-menu-content-transform-origin\]{transform-origin:var(--radix-dropdown-menu-content-transform-origin)}.origin-\[--radix-hover-card-content-transform-origin\]{transform-origin:var(--radix-hover-card-content-transform-origin)}.origin-\[--radix-menubar-content-transform-origin\]{transform-origin:var(--radix-menubar-content-transform-origin)}.origin-\[--radix-popover-content-transform-origin\]{transform-origin:var(--radix-popover-content-transform-origin)}.origin-\[--radix-select-content-transform-origin\]{transform-origin:var(--radix-select-content-transform-origin)}.origin-\[--radix-tooltip-content-transform-origin\]{transform-origin:var(--radix-tooltip-content-transform-origin)}.-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))}.-translate-x-px{--tw-translate-x:-1px;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-1\/2{--tw-translate-y:-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))}.translate-x-\[-50\%\]{--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))}.translate-x-px{--tw-translate-x:1px;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-\[-50\%\]{--tw-translate-y:-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))}.rotate-45{--tw-rotate:45deg;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))}.rotate-90{--tw-rotate:90deg;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))}@keyframes pulse{50%{opacity:.5}}.animate-pulse{animation:2s cubic-bezier(.4,0,.6,1) infinite pulse}@keyframes spin{to{transform:rotate(360deg)}}.animate-spin{animation:1s linear infinite spin}.cursor-default{cursor:default}.cursor-pointer{cursor:pointer}.cursor-text{cursor:text}.touch-none{touch-action:none}.select-none{-webkit-user-select:none;user-select:none}.resize-none{resize:none}.resize{resize:both}.list-disc{list-style-type:disc}.list-none{list-style-type:none}.flex-row{flex-direction:row}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.flex-wrap{flex-wrap:wrap}.place-content-center{place-content:center}.items-end{align-items:flex-end}.items-center{align-items:center}.items-stretch{align-items:stretch}.justify-start{justify-content:flex-start}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-1{gap:.25rem}.gap-1\.5{gap:.375rem}.gap-2{gap:.5rem}.gap-2\.5{gap:.625rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.gap-7{gap:1.75rem}.space-x-1>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-right:calc(.25rem * var(--tw-space-x-reverse));margin-left:calc(.25rem * calc(1 - var(--tw-space-x-reverse)))}.space-y-1\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.375rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.375rem * 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))}.self-stretch{align-self:stretch}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-y-auto{overflow-y:auto}.overflow-x-hidden{overflow-x:hidden}.whitespace-nowrap{white-space:nowrap}.text-balance{text-wrap:balance}.break-words{overflow-wrap:break-word}.rounded{border-radius:.25rem}.rounded-\[calc\(var\(--radius\)-5px\)\]{border-radius:calc(var(--radius) - 5px)}.rounded-\[inherit\]{border-radius:inherit}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:var(--radius)}.rounded-md{border-radius:calc(var(--radius) - 2px)}.rounded-none{border-radius:0}.rounded-sm{border-radius:calc(var(--radius) - 4px)}.rounded-xl{border-radius:.75rem}.rounded-l-md{border-top-left-radius:calc(var(--radius) - 2px);border-bottom-left-radius:calc(var(--radius) - 2px)}.rounded-r-md{border-top-right-radius:calc(var(--radius) - 2px);border-bottom-right-radius:calc(var(--radius) - 2px)}.rounded-t-\[10px\]{border-top-left-radius:10px;border-top-right-radius:10px}.rounded-tl-sm{border-top-left-radius:calc(var(--radius) - 4px)}.border{border-width:1px}.border-0{border-width:0}.border-2{border-width:2px}.border-y{border-top-width:1px;border-bottom-width:1px}.border-b{border-bottom-width:1px}.border-l{border-left-width:1px}.border-r{border-right-width:1px}.border-t{border-top-width:1px}.border-dashed{border-style:dashed}.border-border{border-color:hsl(var(--border))}.border-destructive\/50{border-color:hsl(var(--destructive) / .5)}.border-input{border-color:hsl(var(--input))}.border-primary{border-color:hsl(var(--primary))}.border-primary\/50{border-color:hsl(var(--primary) / .5)}.border-sidebar-border{border-color:hsl(var(--sidebar-border))}.border-transparent{border-color:#0000}.border-l-transparent{border-left-color:#0000}.border-t-transparent{border-top-color:#0000}.bg-accent{background-color:hsl(var(--accent))}.bg-background{background-color:hsl(var(--background))}.bg-black\/80{background-color:#000c}.bg-border{background-color:hsl(var(--border))}.bg-card{background-color:hsl(var(--card))}.bg-destructive{background-color:hsl(var(--destructive))}.bg-foreground{background-color:hsl(var(--foreground))}.bg-input{background-color:hsl(var(--input))}.bg-muted{background-color:hsl(var(--muted))}.bg-muted\/50{background-color:hsl(var(--muted) / .5)}.bg-popover{background-color:hsl(var(--popover))}.bg-primary{background-color:hsl(var(--primary))}.bg-primary\/10{background-color:hsl(var(--primary) / .1)}.bg-primary\/20{background-color:hsl(var(--primary) / .2)}.bg-secondary{background-color:hsl(var(--secondary))}.bg-sidebar{background-color:hsl(var(--sidebar-background))}.bg-sidebar-border{background-color:hsl(var(--sidebar-border))}.bg-transparent{background-color:#0000}.fill-current{fill:currentColor}.fill-primary{fill:hsl(var(--primary))}.p-0{padding:0}.p-1{padding:.25rem}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-6{padding:1.5rem}.p-\[1px\]{padding:1px}.px-1{padding-left:.25rem;padding-right:.25rem}.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-8{padding-left:2rem;padding-right:2rem}.px-\[--cell-size\]{padding-left:var(--cell-size);padding-right:var(--cell-size)}.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.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-6{padding-top:1.5rem;padding-bottom:1.5rem}.pb-3{padding-bottom:.75rem}.pb-4{padding-bottom:1rem}.pl-2{padding-left:.5rem}.pl-2\.5{padding-left:.625rem}.pl-3{padding-left:.75rem}.pl-4{padding-left:1rem}.pl-8{padding-left:2rem}.pr-1{padding-right:.25rem}.pr-2{padding-right:.5rem}.pr-2\.5{padding-right:.625rem}.pr-3{padding-right:.75rem}.pr-8{padding-right:2rem}.pt-0{padding-top:0}.pt-3{padding-top:.75rem}.pt-4{padding-top:1rem}.text-left{text-align:left}.text-center{text-align:center}.align-middle{vertical-align:middle}.font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.font-sans{font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji}.text-\[0\.8rem\]{font-size:.8rem}.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-sm\/relaxed{font-size:.875rem;line-height:1.625}.text-xs{font-size:.75rem;line-height:1rem}.font-medium{font-weight:500}.font-normal{font-weight:400}.font-semibold{font-weight:600}.lowercase{text-transform:lowercase}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)}.leading-none{line-height:1}.leading-normal{line-height:1.5}.leading-snug{line-height:1.375}.tracking-tight{letter-spacing:-.025em}.tracking-widest{letter-spacing:.1em}.text-accent-foreground{color:hsl(var(--accent-foreground))}.text-card-foreground{color:hsl(var(--card-foreground))}.text-current{color:currentColor}.text-destructive{color:hsl(var(--destructive))}.text-destructive-foreground{color:hsl(var(--destructive-foreground))}.text-foreground{color:hsl(var(--foreground))}.text-muted-foreground{color:hsl(var(--muted-foreground))}.text-popover-foreground{color:hsl(var(--popover-foreground))}.text-primary{color:hsl(var(--primary))}.text-primary-foreground{color:hsl(var(--primary-foreground))}.text-secondary-foreground{color:hsl(var(--secondary-foreground))}.text-sidebar-foreground{color:hsl(var(--sidebar-foreground))}.text-sidebar-foreground\/70{color:hsl(var(--sidebar-foreground) / .7)}.underline{text-decoration-line:underline}.underline-offset-4{text-underline-offset:4px}.opacity-0{opacity:0}.opacity-50{opacity:.5}.opacity-60{opacity:.6}.opacity-70{opacity:.7}.shadow{--tw-shadow:0 1px 3px 0 #0000001a, 0 1px 2px -1px #0000001a;--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px 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-\[0_0_0_1px_hsl\(var\(--sidebar-border\)\)\]{--tw-shadow:0 0 0 1px hsl(var(--sidebar-border));--tw-shadow-colored:0 0 0 1px 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-lg{--tw-shadow:0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a;--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-md{--tw-shadow:0 4px 6px -1px #0000001a, 0 2px 4px -2px #0000001a;--tw-shadow-colored:0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px 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-none{--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;box-shadow:var(--tw-ring-offset-shadow,0 0 #0000), var(--tw-ring-shadow,0 0 #0000), var(--tw-shadow)}.shadow-sm{--tw-shadow:0 1px 2px 0 #0000000d;--tw-shadow-colored:0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000), var(--tw-ring-shadow,0 0 #0000), var(--tw-shadow)}.outline-none{outline-offset:2px;outline:2px solid #0000}.outline{outline-style:solid}.ring{--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(3px + 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)}.ring-0{--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(0px + 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)}.ring-1{--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(1px + 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)}.ring-ring{--tw-ring-color:hsl(var(--ring))}.ring-sidebar-ring{--tw-ring-color:hsl(var(--sidebar-ring))}.ring-offset-background{--tw-ring-offset-color:hsl(var(--background))}.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)}.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)}.transition-\[color\,box-shadow\]{transition-property:color,box-shadow;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-\[left\,right\,width\]{transition-property:left,right,width;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-\[margin\,opacity\]{transition-property:margin,opacity;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-\[width\,height\,padding\]{transition-property:width,height,padding;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-\[width\]{transition-property:width;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-all{transition-property:all;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-opacity{transition-property:opacity;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-transform{transition-property:transform;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.duration-100{transition-duration:.1s}.duration-1000{transition-duration:1s}.duration-200{transition-duration:.2s}.duration-300{transition-duration:.3s}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.ease-linear{transition-timing-function:linear}.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))}}.animate-in{--tw-enter-opacity:initial;--tw-enter-scale:initial;--tw-enter-rotate:initial;--tw-enter-translate-x:initial;--tw-enter-translate-y:initial;animation-name:enter;animation-duration:.15s}.fade-in-0{--tw-enter-opacity:0}.zoom-in-95{--tw-enter-scale:.95}.duration-100{animation-duration:.1s}.duration-1000{animation-duration:1s}.duration-200{animation-duration:.2s}.duration-300{animation-duration:.3s}.ease-in-out{animation-timing-function:cubic-bezier(.4,0,.2,1)}.ease-linear{animation-timing-function:linear}.ease-out{animation-timing-function:cubic-bezier(0,0,.2,1)}.\!running{animation-play-state:running!important}.running{animation-play-state:running}.\!paused{animation-play-state:paused!important}.paused{animation-play-state:paused}.\[--cell-size\:2rem\]{--cell-size:2rem}:root{--serif:"Libre Baskerville", Georgia, serif;--sans:"Inter", system-ui, sans-serif;--text-body:18px;--bento-toolbar-inset:16px;--gutter:clamp(16px, 4.5vw, 24px)}:root,[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#0a0a0a;--bg-hero:#b8b4ad;--fg:#f4f2ee;--fg-dim:#8a8782;--scramble-accent:#5ed29c;--card:#161616;--card-2:#1f1f1f;--line:#f4f2ee1a;--line-strong:#f4f2ee40;--hover-tint:#f4f2ee17;--glass:#14141480}[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f5f5f7;--bg-hero:#d8d5d0;--fg:#1a1a1a;--fg-dim:#6b6b70;--scramble-accent:#1f7a55;--card:#fff;--card-2:#ececef;--line:#1a1a1a1f;--line-strong:#1a1a1a38;--hover-tint:#1a1a1a0f;--glass:#ffffff8c}*{box-sizing:border-box;margin:0;padding:0}img,picture,video,svg{-webkit-user-drag:none;user-drag:none;-webkit-touch-callout:none}html{scroll-behavior:smooth}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}body{background:var(--bg);color:var(--fg);font-family:var(--sans);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;transition:background .3s,color .3s}a{color:inherit;text-decoration:none}.wrap{max-width:1180px;margin:0 auto;padding:0 32px}.wrap--wide{max-width:1320px}.intro-overlay{z-index:40;background:var(--bg);pointer-events:none;position:fixed;inset:0}.intro-logo-wrap{z-index:60;pointer-events:none;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.intro-logo{color:var(--fg);display:inline-flex}.intro-logo__svg{width:auto;height:150px;display:block}.nav{z-index:50;pointer-events:none;background:0 0;justify-content:space-between;align-items:center;padding:28px 32px;display:flex;position:fixed;top:0;left:0;right:0}.nav>*{pointer-events:auto}.nav{transition:color .3s}.nav:before{content:"";z-index:-1;pointer-events:none;background-color:color-mix(in srgb, var(--bg) 62%, transparent);-webkit-backdrop-filter:blur(14px)saturate(1.1);backdrop-filter:blur(14px)saturate(1.1);opacity:0;height:calc(100% + 24px);transition:opacity .24s ease-out;position:absolute;top:0;left:0;right:0;-webkit-mask-image:linear-gradient(#000 0% 70%,#0000 100%);mask-image:linear-gradient(#000 0% 70%,#0000 100%)}.nav[data-scrolled=true]:before{opacity:1}@supports not ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){.nav:before{background-color:color-mix(in srgb, var(--bg) 92%, transparent)}}@media (prefers-reduced-motion:reduce){.nav,.nav:before{transition:none}}.nav{color:var(--fg)}.nav__brand{color:currentColor;align-items:center;min-width:47px;min-height:38px;display:inline-flex}.nav__logo-box{display:inline-flex}.nav__logo{width:auto;height:38px;display:block}.nav__links{gap:36px;display:flex}.nav__link{color:currentColor;opacity:.9;align-items:center;gap:5px;font-size:19px;transition:opacity .25s;display:inline-flex}body.over-hero .nav{--band-ink:#f5f3ef;color:var(--band-ink)}[data-theme=light] body.over-hero .nav{--band-ink:#141417}.nav__link:hover{opacity:1}.nav__arrow-wrap{opacity:0;align-items:center;transition:opacity .2s,translate .2s;display:inline-flex;translate:-6px}.nav__link:hover .nav__arrow-wrap,.nav__link:focus-visible .nav__arrow-wrap{opacity:1;translate:0}@media (prefers-reduced-motion:reduce){.nav__arrow-wrap{transition:none}}.nav__arrow{width:.7em;height:.7em}.nav-burger{cursor:pointer;color:currentColor;background:0 0;border:0;flex-direction:column;justify-content:center;align-items:center;width:44px;height:44px;padding:0;display:none}.nav-burger span{background:currentColor;border-radius:2px;width:20px;height:1.5px;transition:transform .32s cubic-bezier(.22,1,.36,1);display:block}.nav-burger span+span{margin-top:6px}.nav-burger.is-x span:first-child{transform:translateY(3.75px)rotate(45deg)}.nav-burger.is-x span:last-child{transform:translateY(-3.75px)rotate(-45deg)}.nav__brand,.nav-burger{z-index:2;position:relative}.mobile-menu{z-index:1;background:var(--bg);-webkit-backdrop-filter:blur(20px);opacity:0;pointer-events:none;flex-direction:column;padding:120px 28px 40px;transition:opacity .2s;display:none;position:fixed;inset:0}.mobile-menu.is-open{opacity:1;pointer-events:auto;transition-duration:.24s}.mobile-menu__links{flex-direction:column;display:flex}.mobile-menu__links a{font:400 40px/1.15 var(--serif);color:var(--fg);border-bottom:1px solid var(--line);padding:14px 0;display:block}.mobile-menu.is-open .mobile-menu__links a{opacity:0;animation:.5s cubic-bezier(.22,1,.36,1) forwards menu-link-in;translate:0 14px}.mobile-menu.is-open .mobile-menu__links a:first-child{animation-delay:80ms}.mobile-menu.is-open .mobile-menu__links a:nth-child(2){animation-delay:.14s}.mobile-menu.is-open .mobile-menu__links a:nth-child(3){animation-delay:.2s}.mobile-menu.is-open .mobile-menu__links a:nth-child(4){animation-delay:.26s}.mobile-menu__foot{margin-top:auto}.mobile-menu.is-open .mobile-menu__foot{opacity:0;animation:.5s cubic-bezier(.22,1,.36,1) .34s forwards menu-link-in}.mobile-menu__foot .action-ib{width:40px;height:40px}@keyframes menu-link-in{to{opacity:1;translate:0}}@media (prefers-reduced-motion:reduce){.nav-burger span,.mobile-menu{transition:none}.mobile-menu.is-open .mobile-menu__links a,.mobile-menu.is-open .mobile-menu__foot{opacity:1;animation:none;translate:none}}.hero{align-items:center;min-height:88vh;padding:120px 0 48px;display:flex;position:relative;overflow:hidden}.hero__photo{z-index:0;position:absolute;inset:0 -12% 0 0}.hero__photo-img{-o-object-fit:cover;object-fit:cover;-o-object-position:center 22%;object-position:center 22%;width:100%;height:100%}.hero:before{content:"";z-index:1;pointer-events:none;background:linear-gradient(to right, color-mix(in srgb, var(--bg) 85%, transparent) 0%, color-mix(in srgb, var(--bg) 55%, transparent) 30%, color-mix(in srgb, var(--bg) 22%, transparent) 48%, transparent 66%);position:absolute;inset:0}.hero__copywrap{z-index:2;width:100%;position:relative}.hero__title{font-family:var(--serif);letter-spacing:-.01em;max-width:46ch;text-shadow:0 1px 14px var(--bg), 0 2px 36px var(--bg);font-size:clamp(28px,3.2vw,40px);font-weight:700;line-height:1.2}.hero__sub{color:var(--fg-dim);max-width:52ch;text-shadow:0 1px 12px var(--bg);margin-top:18px;font-size:16px;line-height:1.65}.hero:after{content:"";z-index:1;pointer-events:none;background:linear-gradient(to top, var(--bg) 0%, color-mix(in srgb, var(--bg) 85%, transparent) 24%, color-mix(in srgb, var(--bg) 55%, transparent) 46%, color-mix(in srgb, var(--bg) 30%, transparent) 64%, color-mix(in srgb, var(--bg) 12%, transparent) 82%, transparent 100%);height:30%;position:absolute;bottom:0;left:0;right:0}.hero__ctas{flex-wrap:wrap;gap:13px;margin-top:28px;display:flex}.btn-hero{font-family:var(--sans);cursor:pointer;border-radius:999px;align-items:center;gap:8px;padding:12px 20px;font-size:15px;font-weight:500;transition:transform .2s,background .2s,border-color .2s,box-shadow .2s;display:inline-flex}.btn-hero:hover{transform:translateY(-2px)}.btn-hero svg{flex-shrink:0}.btn-hero--primary{background:var(--fg);color:var(--bg);border:1px solid var(--fg)}.btn-hero--ghost{color:var(--fg);border:1px solid var(--line-strong);background:0 0}.btn-hero--ghost:hover{border-color:var(--fg)}@media (prefers-reduced-motion:reduce){.btn-hero:hover{transform:none}}body.over-hero .nav{--scramble-accent:#5ed29c}[data-theme=light] body.over-hero .nav{--scramble-accent:#1f7a55}.sec{padding-block:120px}.sec__head{font-family:var(--serif);letter-spacing:-.01em;margin-bottom:40px;font-size:28px;font-weight:400}.work-sec{isolation:isolate;position:relative;overflow:hidden}.work-fx{z-index:0;pointer-events:none;width:100%;height:100%;position:absolute;inset:0}@media (width<=1023px){.work-fx{display:none}}.work-sec>.wrap{z-index:1;position:relative}.work-grid{grid-template-columns:1fr 1fr;align-items:start;gap:20px;display:grid}.card-wrap--hero,.card-wrap--wide{grid-column:1/-1}.card{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:22px;overflow:hidden}.card__head{justify-content:space-between;align-items:flex-start;gap:14px;min-height:64px;margin-bottom:16px;display:flex}.card__heading{min-width:0}.card__title{font-family:var(--serif);--work-icon-nudge:0em;align-items:baseline;gap:.4em;font-size:clamp(1.05rem,1.5vw,1.35rem);font-weight:400;line-height:1;display:inline-flex}.card__mark{width:auto;height:1cap;transform:translateY(var(--work-icon-nudge,0));flex:none;display:block}@supports not (height:1cap){.card__mark{height:.7em}}.card__mark.mark-fixed{--mark-shift:calc((var(--mark-h) - 1cap) / 2 + var(--work-icon-nudge,0em));height:var(--mark-h);margin-top:calc(1cap - var(--mark-h));transform:translateY(var(--mark-shift))}@supports not (height:1cap){.card__mark.mark-fixed{--mark-shift:calc((var(--mark-h) - .7em) / 2 + var(--work-icon-nudge,0em));margin-top:calc(.7em - var(--mark-h))}}.pg-ghost{overflow:visible}.pg-ghost .pg-hop{transform-box:fill-box;transform-origin:50% 100%;animation:4.8s cubic-bezier(.3,.7,.4,1) infinite pg-hop}@keyframes pg-hop{0%,58%,to{transform:translateY(0)scale(1)}63%{transform:translateY(0)scale(1.07,.9)}70%{transform:translateY(-14%)scale(.95,1.07)}76%{transform:translateY(-17%)scale(1)}83%{transform:translateY(0)scale(1.09,.88)}88%{transform:translateY(-3%)scale(.98,1.03)}93%{transform:translateY(0)scale(1.02,.98)}}.pg-ghost .pg-look{animation:7.4s ease-in-out infinite pg-look}@keyframes pg-look{0%,40%,to{transform:translate(0)}44%,62%{transform:translate(-2.4px)}67%{transform:translate(.6px)}72%{transform:translate(0)}}.pg-ghost .pg-glint{animation:7.4s cubic-bezier(.5,1.6,.5,1) infinite pg-glint}@keyframes pg-glint{0%,40%,to{transform:translate(0)}43.5%,62%{transform:translate(14.4px)}66%{transform:translate(0)}}.pg-ghost .pg-eye{transform-box:fill-box;transform-origin:50% 55%;animation:5.3s linear infinite pg-blink}.pg-ghost .pg-eye.r{animation-delay:30ms}@keyframes pg-blink{0%,88%,to{transform:scaleY(1)}90%{transform:scaleY(.06)}92.5%{transform:scaleY(1)}}@media (prefers-reduced-motion:reduce){.pg-ghost .pg-hop,.pg-ghost .pg-look,.pg-ghost .pg-glint,.pg-ghost .pg-eye{animation:none}}.card--hero .card__title{font-size:clamp(1.3rem,2vw,1.8rem)}.card__tagline{color:var(--fg-dim);margin-top:8px;font-size:14px;line-height:1.4}.card__arrow{border:1px solid var(--line-strong);width:40px;height:40px;color:var(--fg-dim);background:0 0;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;transition:transform .2s,box-shadow .2s,background .2s,color .2s,border-color .2s;display:inline-flex;box-shadow:0 0 #0000}.card__arrow svg{width:15px;height:15px}.card__arrow:hover{background:var(--fg);color:var(--bg);border-color:var(--fg);transform:scale(1.05);box-shadow:0 4px 16px #0000004d}.card__divider{background:var(--line);height:1px;margin-bottom:18px}.work-media{aspect-ratio:16/10;-o-object-fit:cover;object-fit:cover;background:var(--card-2);border-radius:8px;width:100%;display:block}.card--hero .work-media,.card--wide .work-media{aspect-ratio:21/9}.work-ph{place-items:center;display:grid}.work-media--mock,.work-media--image{position:relative;overflow:hidden}.work-ph span{letter-spacing:.1em;text-transform:uppercase;color:var(--fg-dim);font-size:12px}.work-status{justify-content:space-between;align-items:center;gap:12px;margin-top:16px;display:flex}.store-badges{align-items:center;gap:6px;display:flex}.store-badge{filter:grayscale()brightness(.85);opacity:.75;width:auto;height:28px;transition:opacity .25s;display:block}.card:hover .store-badge{opacity:.95}.store-badge-link{line-height:0;display:block}@media (prefers-reduced-motion:reduce){.store-badge{transition:none}}@media (width<=599px){.work-status{flex-wrap:wrap;justify-content:flex-start;row-gap:8px}.store-badges{flex-basis:100%}}.status-pill{font:500 11.5px/1 var(--sans);letter-spacing:.02em;color:var(--sp-fg);background:var(--sp-bg);border:1px solid;border-color:var(--sp-line);box-shadow:0 0 14px var(--sp-halo);border-radius:999px;align-items:center;gap:7px;padding:6px 10px 6px 8px;display:inline-flex}.status-pill:before{content:"";width:6px;height:6px;box-shadow:0 0 6px var(--sp-dot);background:currentColor;border-radius:50%}.status-pill[data-status=deployed]{--sp-fg:#4fd58f;--sp-bg:#3ddc841a;--sp-line:#3ddc8447;--sp-dot:#3ddc84bf;--sp-halo:#3ddc842e}.status-pill[data-status=in-development]{--sp-fg:#e0c168;--sp-bg:#e0c16817;--sp-line:#e0c16842;--sp-dot:#e0c168b3;--sp-halo:#e0c16824}.status-pill[data-status=releasing-2026]{--sp-fg:#9fb3c8;--sp-bg:#9fb3c817;--sp-line:#9fb3c83d;--sp-dot:#9fb3c8b3;--sp-halo:#9fb3c81f}@keyframes sp-ping{0%,to{box-shadow:0 0 0 0 #3ddc848c, 0 0 6px var(--sp-dot)}50%{box-shadow:0 0 0 5px #3ddc8400, 0 0 6px var(--sp-dot)}}.status-pill[data-status=deployed]:before{animation:2.2s ease-out infinite sp-ping}.work-sec:not(.is-onscreen) .status-pill[data-status=deployed]:before{animation-play-state:paused}[data-theme=light] .status-pill{box-shadow:none}[data-theme=light] .status-pill:before{box-shadow:none;animation:none}[data-theme=light] .status-pill[data-status=deployed]{--sp-fg:#177a47;--sp-bg:#1f8f571a;--sp-line:#1f8f574d}[data-theme=light] .status-pill[data-status=in-development]{--sp-fg:#8a6a10;--sp-bg:#b48c1e1a;--sp-line:#b48c1e52}[data-theme=light] .status-pill[data-status=releasing-2026]{--sp-fg:#4b5d70;--sp-bg:#4b5d7014;--sp-line:#4b5d7047}@media (prefers-reduced-motion:reduce){.status-pill[data-status=deployed]:before{animation:none}}.exp-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px 24px;margin-bottom:40px;display:flex}.exp-head .sec__head{margin-bottom:0}.btn-pill{border:1px solid var(--line-strong);color:var(--fg);white-space:nowrap;background:0 0;border-radius:999px;align-items:center;gap:6px;padding:10px 20px;font-size:14px;transition:background .2s,border-color .2s;display:inline-flex}.btn-pill:hover{background:var(--hover-tint);border-color:var(--fg-dim)}.adv-item{border-bottom:1px solid var(--line)}.adv-item:first-child{border-top:1px solid var(--line)}.adv-row{width:100%;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:none;grid-template-columns:1fr auto auto;align-items:center;gap:24px;padding:22px 0;display:grid}.adv-head{flex-direction:column;gap:6px;display:flex}.adv-role{font-family:var(--serif);font-size:19px;font-weight:400}.adv-org,.adv-date{color:var(--fg-dim);font-size:14px}.adv-date{text-align:right;white-space:nowrap}.adv-chev-wrap{color:var(--fg-dim);transition:color .25s;display:inline-flex}.adv-row:hover .adv-chev-wrap{color:var(--fg)}.adv-chevron{display:block}.adv-panel{overflow:hidden}.adv-bullets{gap:12px;padding:4px 0 26px;list-style:none;display:grid}.adv-bullets li{color:var(--fg-dim);padding-left:22px;font-size:15px;line-height:1.6;position:relative}.adv-bullets li:before{content:"";background:var(--fg-dim);border-radius:50%;width:6px;height:6px;position:absolute;top:.65em;left:2px}.footer{border-top:1px solid var(--line);padding:100px 0 60px}.footer__big{font-family:var(--serif);letter-spacing:-.02em;font-size:clamp(32px,5vw,64px);font-weight:400;line-height:1.05}.footer__big a{color:var(--fg-dim);transition:color .3s}.footer__big a:hover{color:var(--fg)}.footer__meta{color:var(--fg-dim);justify-content:space-between;margin-top:60px;font-size:13px;display:flex}.site-hero,.site-footer{--band-bg:#0b0b0c;--band-ink:#f5f3ef;--band-muted:#8c8c92;--band-hair:#f5f3ef24;--band-accent:#5ed29c}[data-theme=light] .site-hero,[data-theme=light] .site-footer{--band-bg:#f5f5f7;--band-ink:#141417;--band-muted:#6e6e74;--band-hair:#14141724;--band-accent:#1f7a55}.site-footer{--film-op:.46;isolation:isolate;background-color:var(--band-bg);border-top:none;width:100%;padding-top:clamp(120px,18vh,260px);transition:background-color .5s;position:relative;overflow:hidden}[data-theme=light] .site-footer{--film-op:.42}.footer-backdrop{z-index:1;pointer-events:none;background:radial-gradient(90% 70% at 50% 88%,#5ed29c1a 0%,#5ed29c00 60%),radial-gradient(70% 55% at 50% 100%,#142219d9 0%,#14221900 70%),linear-gradient(#0b0f0de6 0%,#0b0f0d00 60%);position:absolute;inset:0}[data-theme=light] .footer-backdrop{background:radial-gradient(90% 70% at 50% 88%,#1f7a5512 0%,#1f7a5500 60%),radial-gradient(70% 55% at 50% 100%,#1f7a551a 0%,#1f7a5500 70%),linear-gradient(#ffffff80 0%,#fff0 60%)}.footer-artwrap{z-index:2;pointer-events:none;position:absolute;inset:0}.footer-film{z-index:2;-o-object-fit:cover;object-fit:cover;opacity:0;filter:url(#duoDark)contrast(1.07);width:100%;height:100%;position:absolute;inset:0;transform:scaleX(-1)}[data-theme=light] .footer-film{filter:url(#duoLight)contrast(1.03)}.footer-film[data-ok="1"]{opacity:var(--film-op);transition:opacity 1.4s}.footer-seam{z-index:3;pointer-events:none;background:linear-gradient(to bottom, var(--band-bg) 0%, color-mix(in srgb, var(--band-bg) 0%, transparent) 20%), linear-gradient(90deg, color-mix(in srgb, var(--band-bg) 50%, transparent) 0%, color-mix(in srgb, var(--band-bg) 0%, transparent) 18%, color-mix(in srgb, var(--band-bg) 0%, transparent) 82%, color-mix(in srgb, var(--band-bg) 50%, transparent) 100%);position:absolute;inset:0}.footer-frost{z-index:4;pointer-events:none;-webkit-backdrop-filter:blur(18px);background:linear-gradient(to bottom, color-mix(in srgb, var(--band-bg) 0%, transparent) 44%, color-mix(in srgb, var(--band-bg) 42%, transparent) 100%);position:absolute;inset:0;-webkit-mask-image:linear-gradient(#0000 0% 44%,#000 72%);mask-image:linear-gradient(#0000 0% 44%,#000 72%)}@media (prefers-reduced-motion:reduce){.footer-film{display:none}}.site-footer__inner{z-index:10;padding:44px 0 36px;position:relative}@media (width<=900px){.site-footer{padding-top:clamp(96px,14vh,150px)}}@media (height<=800px){.site-footer{padding-top:clamp(96px,15vh,170px)}}.site-footer__row{justify-content:space-between;gap:24px;display:flex}.site-footer__row--top{align-items:flex-end}.site-footer__row--bottom{align-items:center}.site-footer__divider{background:var(--band-hair);border:0;width:100%;height:1px;margin:26px 0}.site-footer__brand{flex-direction:column;gap:14px;display:flex}.site-footer__logo{width:64px;height:auto;color:var(--band-ink);display:block}.site-footer__tagline{color:color-mix(in srgb, var(--band-ink) 90%, transparent);font-size:15px;line-height:1.4}.site-footer__copy{color:color-mix(in srgb, var(--band-ink) 60%, transparent);font-size:13px}.site-footer__colophon{color:color-mix(in srgb, var(--band-ink) 60%, transparent);align-items:center;gap:14px;font-size:13px;display:flex}.site-footer__links{flex-direction:row;align-items:center;gap:24px;display:flex}.site-footer__links a{color:color-mix(in srgb, var(--band-ink) 78%, transparent);align-items:center;gap:5px;font-size:15px;text-decoration:none;display:inline-flex}.theme-rocker{--rk:.66;--rk-shadow-outer:color-mix(in srgb, var(--band-bg) 65%, transparent);--rk-shadow-inset:color-mix(in srgb, var(--band-bg) 58%, transparent);--rk-shadow-deep:color-mix(in srgb, var(--band-bg) 92%, transparent);--rk-hilite:color-mix(in srgb, var(--band-ink) 9%, transparent);appearance:none;cursor:pointer;width:calc(130px * var(--rk));height:calc(70px * var(--rk));background:0 0;border:0;padding:0;line-height:0;display:inline-block}[data-theme=light] .theme-rocker{--rk-shadow-outer:color-mix(in srgb, var(--band-ink) 25%, transparent);--rk-shadow-inset:color-mix(in srgb, var(--band-ink) 12%, transparent);--rk-shadow-deep:color-mix(in srgb, var(--band-ink) 25%, transparent);--rk-hilite:#ffffffd9}.theme-rocker:focus-visible{outline:none}.theme-rocker:focus-visible .rk-bezel{outline:2px solid color-mix(in srgb, var(--band-ink) 50%, transparent);outline-offset:3px}.theme-rocker__scale{width:130px;height:70px;transform:scale(var(--rk));transform-origin:0 0;display:block}.rk-bezel{border:1px solid var(--band-hair);background:linear-gradient(155deg, color-mix(in srgb, var(--band-ink) 20%, var(--band-bg)) 0%, color-mix(in srgb, var(--band-ink) 10%, var(--band-bg)) 56%, color-mix(in srgb, var(--band-ink) 4%, var(--band-bg)) 100%);width:130px;height:70px;box-shadow:0 6px 13px var(--rk-shadow-outer), inset 0 1px 0 var(--rk-hilite), inset 0 -3px 7px var(--rk-shadow-inset);border-radius:12px;justify-content:center;align-items:center;transition:background-color .3s,box-shadow .3s,border-color .3s;display:flex}.rk-well{background:color-mix(in srgb, var(--band-ink) 2%, var(--band-bg));width:108px;height:48px;box-shadow:inset 0 3px 9px var(--rk-shadow-deep), inset 0 -1px 0 color-mix(in srgb, var(--band-ink) 4%, transparent);perspective:280px;border-radius:8px;transition:background-color .3s,box-shadow .3s;position:relative}.rk-rocker{transform-style:preserve-3d;box-shadow:0 1px 2px var(--rk-shadow-inset);border-radius:5px;flex-direction:row;transition:transform .2s cubic-bezier(.2,.8,.3,1),box-shadow .3s;display:flex;position:absolute;inset:3px;overflow:hidden}.theme-rocker.is-dark .rk-rocker{transform:rotateY(9deg)}.theme-rocker.is-light .rk-rocker{transform:rotateY(-9deg)}.rk-half{background:linear-gradient(180deg, color-mix(in srgb, var(--band-ink) 14%, var(--band-bg)), color-mix(in srgb, var(--band-ink) 9%, var(--band-bg)));flex:1;justify-content:center;align-items:center;transition:box-shadow .2s,background-color .3s;display:flex;position:relative}.rk-half--left{border-right:1px solid var(--rk-shadow-inset);border-radius:5px 0 0 5px}.rk-half--right{border-left:1px solid color-mix(in srgb, var(--band-ink) 5%, transparent);border-radius:0 5px 5px 0}.theme-rocker.is-dark .rk-half--right{box-shadow:inset 0 2px 7px var(--rk-shadow-deep)}.theme-rocker.is-dark .rk-half--left{box-shadow:inset 0 1px 0 var(--rk-hilite)}.theme-rocker.is-light .rk-half--left{box-shadow:inset 0 2px 7px var(--rk-shadow-deep)}.theme-rocker.is-light .rk-half--right{box-shadow:inset 0 1px 0 var(--rk-hilite)}.theme-rocker .ico{width:23px;height:23px;color:var(--band-muted);transition:color .2s,filter .2s}.theme-rocker.is-dark .rk-half--right .ico{color:var(--band-ink);filter:drop-shadow(0 0 6px #96b9ffcc)}.theme-rocker.is-light .rk-half--left .ico{color:#f5b84c;filter:drop-shadow(0 0 7px #ffa546d9)}@media (prefers-reduced-motion:reduce){.rk-rocker,.rk-bezel,.rk-well,.rk-half,.theme-rocker .ico{transition:none}}.card-wrap{transition:filter .25s}.card-wrap--dim{filter:brightness(.6)saturate(.85)}[data-theme=light] .card-wrap--dim{filter:saturate(.35)contrast(.88)brightness(1.02)}@media (prefers-reduced-motion:reduce){.card-wrap{transition:none}}.about__bento{--tile:332px;grid-template-columns:2fr 1fr 1fr;grid-template-rows:var(--tile) var(--tile) auto;grid-template-areas:"about linkedin music""about photo podcast""about reading reading";align-items:stretch;gap:16px;display:grid}.bento-card{background:var(--card);border:1px solid var(--line);border-radius:16px;flex-direction:column;height:100%;padding:26px;display:flex;overflow:hidden}.bento-card--about{grid-area:about}.bento-card--music{grid-area:music;gap:12px;position:relative}.bento-card--photo{grid-area:photo}.bento-card--reading{grid-area:reading}.bento-card--linkedin{grid-area:linkedin;position:relative}.bento-card--podcast{grid-area:podcast;gap:12px;position:relative}.bento-card--podcast,.bento-card--music,.bento-card--linkedin{padding-bottom:var(--bento-toolbar-inset)}.media__art{z-index:1;background:var(--card-2);border-radius:9px;width:128px;height:128px;position:relative;overflow:hidden;box-shadow:0 3px 9px #0000002e}.media__art img{-o-object-fit:cover;object-fit:cover;width:100%;height:100%;display:block}.media__meta{z-index:1;flex-direction:column;gap:3px;min-width:0;display:flex;position:relative}.media__title{color:var(--fg);font-size:15px;font-weight:600;line-height:1.25;transition:color .3s}.media__sub{color:var(--fg-dim);font-size:13px;transition:color .3s}.media__bar{z-index:1;border:1px solid var(--line);background:0 0;border-radius:999px;justify-content:space-between;align-items:center;gap:6px;height:50px;margin-top:auto;padding:7px 10px;display:flex;position:relative}.media__bar svg{color:var(--fg-dim);display:block}.media__ctrl,.media__play{position:relative}.ui-tip{z-index:5;border:1px solid var(--line);background:var(--card);font:400 11.5px/1 var(--sans);letter-spacing:0;white-space:nowrap;color:color-mix(in srgb, var(--fg) 80%, transparent);opacity:0;pointer-events:none;border-radius:999px;padding:6px 11px;transition:opacity 80ms,translate 80ms;position:absolute;bottom:calc(100% + 8px);left:50%;translate:-50% 4px;box-shadow:0 10px 24px #00000059}@media (hover:hover){.media__ctrl:hover .ui-tip,.media__play:hover .ui-tip,.pc__cat:hover .ui-tip{opacity:1;transition:opacity .12s .25s,translate .12s .25s;translate:-50%}}.media__ctrl:focus-visible .ui-tip,.media__play:focus-visible .ui-tip,.pc__cat:focus-visible .ui-tip{opacity:1;transition:opacity .12s,translate .12s;translate:-50%}[data-tip-hide] .ui-tip{opacity:0!important;transition:opacity 80ms,translate 80ms!important;translate:-50% 4px!important}.media__ctrl,.media__play{width:34px;height:34px;color:var(--fg-dim);cursor:pointer;background:0 0;border:none;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;padding:0;transition:background .2s,color .2s;display:inline-flex}.media__ctrl:hover,.media__play:hover{background:var(--hover-tint);color:var(--fg)}.media__ctrl svg,.media__play svg{color:inherit}.bento-card.is-playing .media__bar{border-color:#ffffff73}.bento-card.is-playing .media__ctrl,.bento-card.is-playing .media__play,.bento-card.is-playing .media__title,.bento-card.is-playing .media__sub{color:#fff}.pod__wash,.mus__wash{z-index:0;pointer-events:none;width:0;height:0;position:absolute;top:41px;right:41px}.pod__wash-circle,.mus__wash-circle{transform-origin:50%;border-radius:50%;width:1700px;height:1700px;margin:-850px 0 0 -850px;display:block;position:absolute;top:0;left:0}.pod__wash-circle{background:#93c}.mus__wash-circle{background:#fa243c}.bento-appicon{z-index:4;border-radius:13px;width:50px;height:50px;line-height:0;transition:transform .2s,box-shadow .2s;display:block;position:absolute;top:16px;right:16px;overflow:hidden;box-shadow:0 3px 9px #0000002e}.bento-appicon:hover{transform:scale(1.04);box-shadow:0 5px 13px #0000003d}.bento-appicon img{width:100%;height:100%;display:block}.bento-appicon--li{background:#fff}.li__wash{z-index:0;pointer-events:none;width:0;height:0;position:absolute;top:41px;right:41px}.li__wash-circle{transform-origin:50%;background:#0a66c2;border-radius:50%;width:1700px;height:1700px;margin:-850px 0 0 -850px;display:block;position:absolute;top:0;left:0}.li__head,.li__text,.li__link{z-index:1;position:relative}.li__head{align-items:center;gap:12px;margin-bottom:14px;padding-right:58px;display:flex}.li__avatar{background:var(--card-2);border-radius:50%;flex-shrink:0;width:46px;height:46px;display:block;overflow:hidden}.li__avatar img{-o-object-fit:cover;object-fit:cover;width:100%;height:100%;display:block}.li__id{flex-direction:column;min-width:0;display:flex}.li__name{color:var(--fg);font-size:15px;font-weight:600;transition:color .3s}.li__text{font-size:var(--text-body);color:var(--fg);margin-top:18px;margin-bottom:18px;font-weight:500;line-height:1.6;transition:color .3s}.li__link{min-height:50px;color:var(--fg);border:1px solid var(--line-strong);border-radius:999px;justify-content:center;align-self:stretch;align-items:center;gap:6px;margin-top:auto;padding:0 16px;font-size:14.5px;transition:background .2s,border-color .2s,color .3s;display:inline-flex}.li__link:hover{background:var(--hover-tint);border-color:var(--fg-dim)}.bento-card--linkedin.is-washed .li__name,.bento-card--linkedin.is-washed .li__text,.bento-card--linkedin.is-washed .li__link{color:#fff}.bento-card--linkedin.is-washed .li__link{background:0 0;border-color:#fff9}.pc{width:100%;height:100%;min-height:240px;position:relative;overflow:hidden}.pc__ph{z-index:0;background:var(--card-2);color:var(--fg-dim);letter-spacing:.04em;justify-content:center;align-items:center;font-size:13px;display:flex;position:absolute;inset:0}.pc__stage{z-index:1;cursor:pointer;background:0 0;border:none;padding:0;display:block;position:absolute;inset:0}.pc__img{-o-object-fit:cover;object-fit:cover;pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.pc__app{z-index:3;border-radius:13px;width:52px;height:52px;line-height:0;transition:transform .2s,box-shadow .2s;display:block;position:absolute;top:14px;right:14px;overflow:hidden;box-shadow:0 6px 18px #0000004d}.pc__app:hover{transform:scale(1.04);box-shadow:0 8px 22px #00000061}.pc__app img{border-radius:13px;width:100%;height:100%;display:block}.pc__bar{z-index:3;left:14px;right:14px;bottom:var(--bento-toolbar-inset);-webkit-backdrop-filter:blur(20px);background:#fff3;border:1px solid #ffffff4d;border-radius:999px;justify-content:space-around;align-items:center;gap:4px;height:50px;padding:7px 8px;display:flex;position:absolute;overflow:hidden;box-shadow:0 6px 22px #00000040}.pc__cat{color:#141414b3;cursor:pointer;background:0 0;border:none;border-radius:999px;flex:0 auto;justify-content:center;align-items:center;min-width:0;height:34px;padding:0 14px;transition:background .2s,color .2s;display:inline-flex;position:relative}.pc__cat svg{z-index:1;position:relative}.pc__cat:not(.pc__cat--on):hover{background:#ffffff4d}.pc__cat:hover{color:#141414f2}.pc__cat--on{color:#1a1a1a}.pc__chip{z-index:0;background:#fff;border-radius:999px;position:absolute;inset:0;box-shadow:0 1px 4px #0000002e}.bento__h{font-family:var(--serif);letter-spacing:-.01em;font-size:26px;font-weight:400}.bento__h--sm{font-size:21px}.bento__label{letter-spacing:.1em;text-transform:uppercase;color:var(--fg-dim);font-size:12px}.bento-card--about{height:100%}.bento__rule{background:var(--line);height:1px;margin:16px 0 20px}.bento__blurbs{flex-direction:column;flex:1;justify-content:space-between;gap:24px;display:flex}.bento__blurb{gap:8px;display:grid}.bento__blurb p{font-size:var(--text-body);color:var(--fg-dim);line-height:1.6}.bento__blurb strong{color:var(--fg);font-weight:600}.bento__link{color:var(--fg);text-decoration:underline;-webkit-text-decoration-color:var(--line-strong);text-decoration-color:var(--line-strong);text-underline-offset:2px;font-weight:600;transition:text-decoration-color .2s}.bento__link:hover{-webkit-text-decoration-color:var(--fg);text-decoration-color:var(--fg)}.bento__link span{font-weight:400;text-decoration:none}.bento__socials{gap:16px;margin-top:auto;padding-top:24px;display:flex}.bento__icon{color:var(--fg-dim);transition:color .2s;display:inline-flex}.bento__icon:hover{color:var(--fg)}.bento__icon svg{display:block}.bento-card--media{padding:0}.bento__media-fill{background:var(--card-2);min-height:220px;color:var(--fg-dim);letter-spacing:.04em;flex:1;justify-content:center;align-items:center;font-size:13px;display:flex}.bento-card--reading{justify-content:center;min-height:280px;padding-left:186px;position:relative;overflow:hidden}.book{transform-origin:top;filter:drop-shadow(4px 9px 12px #0000006b);z-index:2;width:184px;height:315px;transition:transform .35s cubic-bezier(.22,1,.36,1);position:absolute;top:16px;left:-30px;transform:rotate(9deg)}.bento-card--reading:hover .book{transform:rotate(3deg)}.book__cover{background:var(--card-2);border-radius:2px 6px 6px 2px;position:absolute;inset:0;overflow:hidden}.book__cover img{-o-object-fit:cover;object-fit:cover;width:100%;height:100%;display:block}.book__cover:before{content:"";z-index:2;background:linear-gradient(90deg,#0000008c,#0000002e 45%,#ffffff1a 70%,#0000);width:11px;position:absolute;top:0;bottom:0;left:0}.book__cover:after{content:"";z-index:2;pointer-events:none;background:linear-gradient(242deg,#ffffff3d 0%,#ffffff0d 16%,#0000 36%);position:absolute;inset:0}.book__pages{z-index:-1;transform-origin:0;background:repeating-linear-gradient(#f6f5f1 0 1px,#c7c5bf 1px 2px);border-radius:0 2px 2px 0;width:9px;position:absolute;top:3px;bottom:2px;right:-7px;transform:skewY(-7deg)}.book__pages--bottom{display:none}.bento__read{flex-direction:column;gap:5px;min-width:0;display:flex}.bento__read-title{font-family:var(--serif);font-size:22px;line-height:1.2}.bento__read-author{color:var(--fg-dim);font-size:14px}.bento__stars{letter-spacing:3px;color:#f4b400;margin-top:8px;font-size:21px}.book-buy{z-index:3;position:absolute;bottom:18px;right:18px}.project{padding-bottom:140px}.project__hero{background:var(--card);border:1px solid var(--line);border-radius:24px;justify-content:center;align-items:center;height:clamp(420px,76vh,780px);margin-top:116px;display:flex;position:relative;overflow:hidden}.project__hero-img{-o-object-fit:cover;object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.project__hero-ph{color:var(--fg-dim);letter-spacing:.04em;font-size:13px}.project__head{margin-top:80px}.project__title{font-family:var(--serif);letter-spacing:-.02em;font-size:clamp(40px,6vw,80px);font-weight:400;line-height:1.05}.project__tagline{color:var(--fg-dim);max-width:52ch;margin-top:26px;font-size:clamp(17px,2vw,21px);line-height:1.6}.project__divider{border:0;border-top:1px solid var(--line);margin:48px 0}.project__body{grid-template-columns:1.7fr .6fr;align-items:start;gap:72px;display:grid}.project__desc{-moz-columns:2;columns:2;-moz-column-gap:44px;column-gap:44px}.project__desc p{color:var(--fg-dim);-moz-column-break-inside:avoid;break-inside:avoid;margin:0 0 20px;font-size:16px;line-height:1.75}.project__meta{gap:34px;display:grid;position:sticky;top:116px}.project__meta-block h3{font-family:var(--serif);color:var(--fg);margin-bottom:12px;font-size:15px;font-weight:400}.project__meta-block p{color:var(--fg-dim);font-size:15px}.project__meta-block ul{gap:9px;list-style:none;display:grid}.project__meta-block li{color:var(--fg-dim);font-size:15px}.project--missing{padding-top:180px}.project__back{color:var(--fg-dim);transition:color .25s}.project__back:hover{color:var(--fg)}@media (width<=900px){.about__bento{grid-template-rows:none;grid-template-columns:repeat(2,1fr);grid-template-areas:"about about""linkedin music""photo podcast""reading reading"}}@media (width<=720px){.project__hero{border-radius:16px;height:56vh;margin-top:88px}.project__head{margin-top:52px}.project__body{grid-template-columns:1fr;gap:40px}.project__desc{-moz-columns:1;columns:1}.project__meta{position:static}.site-footer__row{flex-direction:column;align-items:flex-start;gap:20px}.site-footer__links{flex-wrap:wrap;gap:16px 24px}.site-footer__colophon{flex-wrap:wrap}}@media (width<=767px){.site-footer{padding:8px var(--gutter) 72px}.footer-backdrop,.footer-artwrap{height:min(46vw,300px);inset:0 0 auto;-webkit-mask-image:linear-gradient(#0000,#000 35% 70%,#0000);mask-image:linear-gradient(#0000,#000 35% 70%,#0000)}.footer-artwrap{overflow:hidden}.footer-film{-o-object-position:50% 45%;object-position:50% 45%;transform-origin:50%;scale:1.6}.footer-seam,.footer-frost{display:none}.site-footer .wrap.site-footer__inner--m{max-width:100%;padding-inline:0;display:block}.site-footer__inner--m .site-footer__logo{width:44px;height:44px;margin:min(46vw,300px) 0 14px}.site-footer__inner--m .site-footer__tagline{color:color-mix(in srgb, var(--band-ink) 80%, transparent);margin:0 0 18px;font-size:15px}.footer-tiles{grid-template-columns:1fr 1fr;gap:10px;margin-bottom:22px;display:grid}.footer-tiles a{border:1px solid var(--band-hair);height:44px;color:color-mix(in srgb, var(--band-ink) 88%, transparent);border-radius:12px;justify-content:space-between;align-items:center;padding:0 16px;font-size:14px;text-decoration:none;display:flex}.footer-tiles a .glyph{color:color-mix(in srgb, var(--band-ink) 45%, transparent)}.footer-tiles a:active{background:color-mix(in srgb, var(--band-ink) 8%, transparent)}.footer-hr{background:var(--band-hair);height:1px;margin:0 0 18px}.footer-meta{color:color-mix(in srgb, var(--band-ink) 55%, transparent);justify-content:space-between;align-items:center;gap:12px;font-size:12.5px;display:flex}.footer-meta__text{flex-direction:column;gap:3px;min-width:0;display:flex}.about__bento{grid-template:none/1fr;gap:14px}.about__bento>.bento-card{grid-area:auto;height:auto}.bento-card--about{border-radius:22px;order:-1;padding:22px}.bento-card--about p{color:color-mix(in srgb, var(--fg) 80%, transparent);font-size:15px;line-height:1.6}.bento-card--about .bento__label{letter-spacing:.12em;font-size:10px}.bento-card--about .bento__h{font-size:22px}.bento-card--music,.bento-card--podcast,.bento-card--linkedin,.bento-card--reading,.bento-card--photo{border-radius:28px;padding:24px}.bento-card--music,.bento-card--podcast,.bento-card--linkedin{padding-bottom:var(--bento-toolbar-inset)}.media__art{border-radius:14px;width:150px;height:150px;box-shadow:0 8px 24px #0006}.bento-appicon{border-radius:16px;width:56px;height:56px;top:24px;right:24px}.media__meta{margin-top:18px;margin-bottom:20px}.media__title{font-size:17px}.media__sub{font-size:15px}.media__bar{justify-content:space-between;height:56px;padding:0 18px}.media__ctrl,.media__play{width:44px;height:44px}.bento-card--photo{height:300px;min-height:300px;padding:0}.pc{min-height:300px}.pc__app{border-radius:16px;width:56px;height:56px;top:24px;right:24px}.bento-card--reading{padding:24px;min-height:230px;padding-left:186px;padding-right:96px}.book-buy{border-radius:50%;place-items:center;width:44px;height:44px;display:grid;bottom:24px;right:24px}.li__link{text-align:center;border-radius:999px;justify-content:center;width:100%;padding:12px;display:flex}}@media (width<=900px){.work-grid{grid-template-columns:1fr}.work-media,.card--hero .work-media,.card--wide .work-media{aspect-ratio:16/10}}@media (width<=720px){.nav__links{gap:20px}.adv-row{grid-template-columns:1fr auto;gap:8px 16px}.adv-date{text-align:left;grid-column:1}.adv-chev-wrap{grid-area:1/2;align-self:start}.sec{padding:80px 0}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}@media (width<=1023px){.nav{height:64px;padding:0 var(--gutter)}.nav__logo{height:26px}.nav__brand{min-width:26px;min-height:26px}.nav__links{display:none}.nav-burger,.mobile-menu{display:flex}.nav:before{height:calc(100% + 64px);-webkit-mask-image:linear-gradient(#000 0% 60%,#0009 76%,#0000 100%);mask-image:linear-gradient(#000 0% 60%,#0009 76%,#0000 100%)}.wrap,.wrap--wide,.sec.wrap,.wrap.site-footer__inner{max-width:100%;padding-inline:var(--gutter)}.sec__head{margin-top:32px}.adv-role{font-size:22px}.adv-chev-wrap{align-self:start;padding-top:8px}.site-footer__logo{width:48px}.site-footer__links{flex-wrap:wrap;gap:12px 24px}.site-footer__row--bottom{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px 16px}.site-footer__colophon{flex-wrap:wrap;row-gap:12px}}@media (width<=767px){:root{--section-gap:56px}.sec{padding-block:var(--section-gap)}.sec__head{margin-top:0}.work-sec{padding-top:0}.about__bento{gap:12px}#about.sec{padding-bottom:40px}.footer-artwrap{height:min(38vw,260px)}.site-footer__inner--m .site-footer__logo{margin:min(38vw,260px) 0 14px}.exp-head{align-items:center;margin-bottom:24px}.exp-head .sec__head{font-size:clamp(28px,8vw,34px);line-height:1}.exp-head .btn-pill{height:36px;padding:0 14px;font-size:13px}.adv-role{font-size:clamp(20px,5.6vw,24px);line-height:1.2}.adv-org{font-size:14px}.adv-date{color:var(--fg-dim);font-size:13px}.adv-row{gap:6px 16px;padding:20px 0}.adv-chev-wrap{align-self:flex-start;margin-top:.35em;padding-top:0}.pc__bar{left:24px;right:24px;bottom:var(--bento-toolbar-inset);justify-content:space-evenly;gap:0;height:56px;padding:0 18px}.pc__cat{border-radius:50%;flex:none;width:44px;height:44px;padding:0}.pc__cat:not(.pc__cat--on):hover,.pc__cat:not(.pc__cat--on):active{background:#ffffff14}.pc__chip{border-radius:50%}}.project--case{padding-bottom:56px;position:relative}.project__band{pointer-events:none;z-index:0;height:1120px;position:absolute;inset:0 0 auto;-webkit-mask:linear-gradient(#000 0 60%,#0000 100%);mask:linear-gradient(#000 0 60%,#0000 100%)}.project__band .work-fx{opacity:.65}.project--case>.wrap,.project--case .pp{z-index:1;position:relative}.project__hero--case{height:auto;display:block;box-shadow:0 40px 120px #0009}[data-theme=light] .project__hero--case{box-shadow:0 30px 90px #1414172e}.project__live{color:var(--fg);border:1px solid var(--line-strong);border-radius:999px;align-items:center;gap:8px;margin-top:2px;padding:9px 16px;font-size:14px;transition:background .2s,color .2s,border-color .2s;display:inline-flex}.project__live:hover{background:var(--fg);color:var(--bg);border-color:var(--fg)}@media (width>=1024px){.project--case .wrap{max-width:1512px;padding-inline:clamp(32px,20vw - 172.8px,132px)}}.project--case .project__hero--case{aspect-ratio:1728/800;max-height:none}.project--case .project__head{margin-top:64px}.project--case .project__title{letter-spacing:-.015em;text-wrap:balance;font-size:clamp(36px,3.4vw,48px);line-height:1.1}.project--case .project__tagline,.project--case .project__desc p{text-wrap:pretty}.project--case .project__tagline{margin-top:18px;font-size:17px;line-height:1.55}.project--case .project__divider{margin:40px 0}.project--case .project__body{gap:80px}.project--case .project__desc p{line-height:1.65}.project--case .project__meta-block h3{font-size:20px}.project--case .project__meta-block p,.project--case .project__meta-block li{font-size:16px}@media (width<=900px){.project__band{display:none}}@media (width<=480px){.project__hero--case{margin-top:88px}}.file\:border-0::file-selector-button{border-width:0}.file\:bg-transparent::file-selector-button{background-color:#0000}.file\:text-sm::file-selector-button{font-size:.875rem;line-height:1.25rem}.file\:font-medium::file-selector-button{font-weight:500}.file\:text-foreground::file-selector-button{color:hsl(var(--foreground))}.placeholder\:text-muted-foreground::placeholder{color:hsl(var(--muted-foreground))}.after\:absolute:after{content:var(--tw-content);position:absolute}.after\:-inset-2:after{content:var(--tw-content);inset:-.5rem}.after\:inset-y-0:after{content:var(--tw-content);top:0;bottom:0}.after\:left-1\/2:after{content:var(--tw-content);left:50%}.after\:w-1:after{content:var(--tw-content);width:.25rem}.after\:w-\[2px\]:after{content:var(--tw-content);width:2px}.after\:-translate-x-1\/2:after{content:var(--tw-content);--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))}.first\:rounded-l-md:first-child{border-top-left-radius:calc(var(--radius) - 2px);border-bottom-left-radius:calc(var(--radius) - 2px)}.first\:border-l:first-child{border-left-width:1px}.last\:mt-0:last-child{margin-top:0}.last\:rounded-r-md:last-child{border-top-right-radius:calc(var(--radius) - 2px);border-bottom-right-radius:calc(var(--radius) - 2px)}.hover\:bg-accent:hover{background-color:hsl(var(--accent))}.hover\:bg-destructive\/80:hover{background-color:hsl(var(--destructive) / .8)}.hover\:bg-destructive\/90:hover{background-color:hsl(var(--destructive) / .9)}.hover\:bg-muted:hover{background-color:hsl(var(--muted))}.hover\:bg-muted\/50:hover{background-color:hsl(var(--muted) / .5)}.hover\:bg-primary\/80:hover{background-color:hsl(var(--primary) / .8)}.hover\:bg-primary\/90:hover{background-color:hsl(var(--primary) / .9)}.hover\:bg-secondary\/80:hover{background-color:hsl(var(--secondary) / .8)}.hover\:bg-sidebar-accent:hover{background-color:hsl(var(--sidebar-accent))}.hover\:text-accent-foreground:hover{color:hsl(var(--accent-foreground))}.hover\:text-foreground:hover{color:hsl(var(--foreground))}.hover\:text-muted-foreground:hover{color:hsl(var(--muted-foreground))}.hover\:text-sidebar-accent-foreground:hover{color:hsl(var(--sidebar-accent-foreground))}.hover\:underline:hover{text-decoration-line:underline}.hover\:opacity-100:hover{opacity:1}.hover\:shadow-\[0_0_0_1px_hsl\(var\(--sidebar-accent\)\)\]:hover{--tw-shadow:0 0 0 1px hsl(var(--sidebar-accent));--tw-shadow-colored:0 0 0 1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000), var(--tw-ring-shadow,0 0 #0000), var(--tw-shadow)}.hover\:after\:bg-sidebar-border:hover:after{content:var(--tw-content);background-color:hsl(var(--sidebar-border))}.focus\:bg-accent:focus{background-color:hsl(var(--accent))}.focus\:text-accent-foreground:focus{color:hsl(var(--accent-foreground))}.focus\:outline-none:focus{outline-offset:2px;outline:2px solid #0000}.focus\:ring-1: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(1px + 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-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-ring:focus{--tw-ring-color:hsl(var(--ring))}.focus\:ring-offset-2:focus{--tw-ring-offset-width:2px}.focus-visible\:border-ring:focus-visible{border-color:hsl(var(--ring))}.focus-visible\:outline-none:focus-visible{outline-offset:2px;outline:2px solid #0000}.focus-visible\:ring-0:focus-visible{--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(0px + 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-visible\:ring-1:focus-visible{--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(1px + 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-visible\:ring-2:focus-visible{--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-visible\:ring-\[3px\]:focus-visible{--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(3px + 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-visible\:ring-ring:focus-visible{--tw-ring-color:hsl(var(--ring))}.focus-visible\:ring-ring\/50:focus-visible{--tw-ring-color:hsl(var(--ring) / .5)}.focus-visible\:ring-sidebar-ring:focus-visible{--tw-ring-color:hsl(var(--sidebar-ring))}.focus-visible\:ring-offset-1:focus-visible{--tw-ring-offset-width:1px}.focus-visible\:ring-offset-2:focus-visible{--tw-ring-offset-width:2px}.focus-visible\:ring-offset-background:focus-visible{--tw-ring-offset-color:hsl(var(--background))}.active\:bg-sidebar-accent:active{background-color:hsl(var(--sidebar-accent))}.active\:text-sidebar-accent-foreground:active{color:hsl(var(--sidebar-accent-foreground))}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-50:disabled{opacity:.5}.group\/menu-item:focus-within .group-focus-within\/menu-item\:opacity-100,.group\/menu-item:hover .group-hover\/menu-item\:opacity-100{opacity:1}.group.toaster .group-\[\.toaster\]\:border-border{border-color:hsl(var(--border))}.group.toast .group-\[\.toast\]\:bg-muted{background-color:hsl(var(--muted))}.group.toast .group-\[\.toast\]\:bg-primary{background-color:hsl(var(--primary))}.group.toaster .group-\[\.toaster\]\:bg-background{background-color:hsl(var(--background))}.group.toast .group-\[\.toast\]\:text-muted-foreground{color:hsl(var(--muted-foreground))}.group.toast .group-\[\.toast\]\:text-primary-foreground{color:hsl(var(--primary-foreground))}.group.toaster .group-\[\.toaster\]\:text-foreground{color:hsl(var(--foreground))}.group.toaster .group-\[\.toaster\]\:shadow-lg{--tw-shadow:0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a;--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)}.peer\/menu-button:hover~.peer-hover\/menu-button\:text-sidebar-accent-foreground{color:hsl(var(--sidebar-accent-foreground))}.peer:disabled~.peer-disabled\:cursor-not-allowed{cursor:not-allowed}.peer:disabled~.peer-disabled\:opacity-70{opacity:.7}.has-\[\>button\]\:ml-\[-0\.45rem\]:has(>button){margin-left:-.45rem}.has-\[\>button\]\:mr-\[-0\.4rem\]:has(>button){margin-right:-.4rem}.has-\[\>kbd\]\:ml-\[-0\.35rem\]:has(>kbd){margin-left:-.35rem}.has-\[\>kbd\]\:mr-\[-0\.35rem\]:has(>kbd){margin-right:-.35rem}.has-\[\>\[data-align\=block-end\]\]\:h-auto:has(>[data-align=block-end]){height:auto}.has-\[\>\[data-align\=block-start\]\]\:h-auto:has(>[data-align=block-start]){height:auto}.has-\[\>textarea\]\:h-auto:has(>textarea){height:auto}.has-\[\>\[data-slot\=field\]\]\:w-full:has(>[data-slot=field]){width:100%}.has-\[\>\[data-align\=block-end\]\]\:flex-col:has(>[data-align=block-end]){flex-direction:column}.has-\[\>\[data-align\=block-start\]\]\:flex-col:has(>[data-align=block-start]){flex-direction:column}.has-\[\>\[data-slot\=field\]\]\:flex-col:has(>[data-slot=field]){flex-direction:column}.has-\[\>\[data-slot\=field-content\]\]\:items-start:has(>[data-slot=field-content]){align-items:flex-start}.has-\[\>\[data-slot\=button-group\]\]\:gap-2:has(>[data-slot=button-group]){gap:.5rem}.has-\[\>\[data-slot\=checkbox-group\]\]\:gap-3:has(>[data-slot=checkbox-group]){gap:.75rem}.has-\[\>\[data-slot\=radio-group\]\]\:gap-3:has(>[data-slot=radio-group]){gap:.75rem}.has-\[\>\[data-slot\=field\]\]\:rounded-md:has(>[data-slot=field]){border-radius:calc(var(--radius) - 2px)}.has-\[\>\[data-slot\=field\]\]\:border:has(>[data-slot=field]){border-width:1px}.has-\[\[data-slot\]\[aria-invalid\=true\]\]\:border-destructive:has([data-slot][aria-invalid=true]){border-color:hsl(var(--destructive))}.has-\[\[data-variant\=inset\]\]\:bg-sidebar:has([data-variant=inset]){background-color:hsl(var(--sidebar-background))}.has-\[\>svg\]\:p-0:has(>svg){padding:0}.has-\[\>svg\]\:px-2:has(>svg){padding-left:.5rem;padding-right:.5rem}.has-\[\>svg\]\:px-2\.5:has(>svg){padding-left:.625rem;padding-right:.625rem}.has-\[\:disabled\]\:opacity-50:has(:disabled){opacity:.5}.has-\[\[data-slot\=input-group-control\]\:focus-visible\]\:ring-1:has([data-slot=input-group-control]:focus-visible){--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(1px + 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)}.has-\[\[data-slot\=input-group-control\]\:focus-visible\]\:ring-ring:has([data-slot=input-group-control]:focus-visible){--tw-ring-color:hsl(var(--ring))}.has-\[\[data-slot\]\[aria-invalid\=true\]\]\:ring-destructive\/20:has([data-slot][aria-invalid=true]){--tw-ring-color:hsl(var(--destructive) / .2)}.group\/item:has([data-slot=item-description]) .group-has-\[\[data-slot\=item-description\]\]\/item\:translate-y-0\.5{--tw-translate-y:.125rem;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\/item:has([data-slot=item-description]) .group-has-\[\[data-slot\=item-description\]\]\/item\:self-start{align-self:flex-start}.group\/field:has([data-orientation=horizontal]) .group-has-\[\[data-orientation\=horizontal\]\]\/field\:text-balance{text-wrap:balance}.group\/input-group:has(>input) .group-has-\[\>input\]\/input-group\:pb-2\.5{padding-bottom:.625rem}.group\/input-group:has(>input) .group-has-\[\>input\]\/input-group\:pt-2\.5{padding-top:.625rem}.group\/menu-item:has([data-sidebar=menu-action]) .group-has-\[\[data-sidebar\=menu-action\]\]\/menu-item\:pr-8{padding-right:2rem}.aria-disabled\:pointer-events-none[aria-disabled=true]{pointer-events:none}.aria-disabled\:opacity-50[aria-disabled=true]{opacity:.5}.aria-selected\:text-muted-foreground[aria-selected=true]{color:hsl(var(--muted-foreground))}.data-\[disabled\=true\]\:pointer-events-none[data-disabled=true],.data-\[disabled\]\:pointer-events-none[data-disabled]{pointer-events:none}.data-\[orientation\=vertical\]\:h-auto[data-orientation=vertical]{height:auto}.data-\[panel-group-direction\=vertical\]\:h-px[data-panel-group-direction=vertical]{height:1px}.data-\[panel-group-direction\=vertical\]\:w-full[data-panel-group-direction=vertical]{width:100%}.data-\[side\=bottom\]\:translate-y-1[data-side=bottom]{--tw-translate-y:.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))}.data-\[side\=left\]\:-translate-x-1[data-side=left]{--tw-translate-x:-.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))}.data-\[side\=right\]\:translate-x-1[data-side=right]{--tw-translate-x:.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))}.data-\[side\=top\]\:-translate-y-1[data-side=top]{--tw-translate-y:-.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))}.data-\[state\=checked\]\:translate-x-4[data-state=checked]{--tw-translate-x:1rem;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))}.data-\[state\=unchecked\]\:translate-x-0[data-state=unchecked]{--tw-translate-x:0px;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))}@keyframes accordion-up{0%{height:var(--radix-accordion-content-height)}to{height:0}}.data-\[state\=closed\]\:animate-accordion-up[data-state=closed]{animation:.2s ease-out accordion-up}@keyframes accordion-down{0%{height:0}to{height:var(--radix-accordion-content-height)}}.data-\[state\=open\]\:animate-accordion-down[data-state=open]{animation:.2s ease-out accordion-down}.data-\[panel-group-direction\=vertical\]\:flex-col[data-panel-group-direction=vertical]{flex-direction:column}.data-\[slot\=checkbox-group\]\:gap-3[data-slot=checkbox-group]{gap:.75rem}.data-\[range-end\=true\]\:rounded-md[data-range-end=true]{border-radius:calc(var(--radius) - 2px)}.data-\[range-middle\=true\]\:rounded-none[data-range-middle=true]{border-radius:0}.data-\[range-start\=true\]\:rounded-md[data-range-start=true]{border-radius:calc(var(--radius) - 2px)}.data-\[selected\=true\]\:rounded-none[data-selected=true]{border-radius:0}.data-\[active\=true\]\:bg-sidebar-accent[data-active=true]{background-color:hsl(var(--sidebar-accent))}.data-\[range-end\=true\]\:bg-primary[data-range-end=true]{background-color:hsl(var(--primary))}.data-\[range-middle\=true\]\:bg-accent[data-range-middle=true]{background-color:hsl(var(--accent))}.data-\[range-start\=true\]\:bg-primary[data-range-start=true],.data-\[selected-single\=true\]\:bg-primary[data-selected-single=true]{background-color:hsl(var(--primary))}.data-\[selected\=true\]\:bg-accent[data-selected=true]{background-color:hsl(var(--accent))}.data-\[state\=active\]\:bg-background[data-state=active]{background-color:hsl(var(--background))}.data-\[state\=checked\]\:bg-primary[data-state=checked]{background-color:hsl(var(--primary))}.data-\[state\=on\]\:bg-accent[data-state=on],.data-\[state\=open\]\:bg-accent[data-state=open]{background-color:hsl(var(--accent))}.data-\[state\=open\]\:bg-accent\/50[data-state=open]{background-color:hsl(var(--accent) / .5)}.data-\[state\=open\]\:bg-secondary[data-state=open]{background-color:hsl(var(--secondary))}.data-\[state\=selected\]\:bg-muted[data-state=selected]{background-color:hsl(var(--muted))}.data-\[state\=unchecked\]\:bg-input[data-state=unchecked]{background-color:hsl(var(--input))}.data-\[variant\=label\]\:text-sm[data-variant=label]{font-size:.875rem;line-height:1.25rem}.data-\[variant\=legend\]\:text-base[data-variant=legend]{font-size:1rem;line-height:1.5rem}.data-\[active\=true\]\:font-medium[data-active=true]{font-weight:500}.data-\[active\=true\]\:text-sidebar-accent-foreground[data-active=true]{color:hsl(var(--sidebar-accent-foreground))}.data-\[invalid\=true\]\:text-destructive[data-invalid=true]{color:hsl(var(--destructive))}.data-\[placeholder\]\:text-muted-foreground[data-placeholder]{color:hsl(var(--muted-foreground))}.data-\[range-end\=true\]\:text-primary-foreground[data-range-end=true]{color:hsl(var(--primary-foreground))}.data-\[range-middle\=true\]\:text-accent-foreground[data-range-middle=true]{color:hsl(var(--accent-foreground))}.data-\[range-start\=true\]\:text-primary-foreground[data-range-start=true],.data-\[selected-single\=true\]\:text-primary-foreground[data-selected-single=true]{color:hsl(var(--primary-foreground))}.data-\[selected\=true\]\:text-accent-foreground[data-selected=true]{color:hsl(var(--accent-foreground))}.data-\[state\=active\]\:text-foreground[data-state=active]{color:hsl(var(--foreground))}.data-\[state\=checked\]\:text-primary-foreground[data-state=checked]{color:hsl(var(--primary-foreground))}.data-\[state\=on\]\:text-accent-foreground[data-state=on],.data-\[state\=open\]\:text-accent-foreground[data-state=open]{color:hsl(var(--accent-foreground))}.data-\[state\=open\]\:text-muted-foreground[data-state=open]{color:hsl(var(--muted-foreground))}.data-\[disabled\=true\]\:opacity-50[data-disabled=true],.data-\[disabled\]\:opacity-50[data-disabled]{opacity:.5}.data-\[state\=open\]\:opacity-100[data-state=open]{opacity:1}.data-\[state\=active\]\:shadow[data-state=active]{--tw-shadow:0 1px 3px 0 #0000001a, 0 1px 2px -1px #0000001a;--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000), var(--tw-ring-shadow,0 0 #0000), var(--tw-shadow)}.data-\[state\=closed\]\:duration-300[data-state=closed]{transition-duration:.3s}.data-\[state\=open\]\:duration-500[data-state=open]{transition-duration:.5s}.data-\[motion\^\=from-\]\:animate-in[data-motion^=from-],.data-\[state\=open\]\:animate-in[data-state=open],.data-\[state\=visible\]\:animate-in[data-state=visible]{--tw-enter-opacity:initial;--tw-enter-scale:initial;--tw-enter-rotate:initial;--tw-enter-translate-x:initial;--tw-enter-translate-y:initial;animation-name:enter;animation-duration:.15s}.data-\[motion\^\=to-\]\:animate-out[data-motion^=to-],.data-\[state\=closed\]\:animate-out[data-state=closed],.data-\[state\=hidden\]\:animate-out[data-state=hidden]{--tw-exit-opacity:initial;--tw-exit-scale:initial;--tw-exit-rotate:initial;--tw-exit-translate-x:initial;--tw-exit-translate-y:initial;animation-name:exit;animation-duration:.15s}.data-\[motion\^\=from-\]\:fade-in[data-motion^=from-]{--tw-enter-opacity:0}.data-\[motion\^\=to-\]\:fade-out[data-motion^=to-],.data-\[state\=closed\]\:fade-out-0[data-state=closed],.data-\[state\=hidden\]\:fade-out[data-state=hidden]{--tw-exit-opacity:0}.data-\[state\=open\]\:fade-in-0[data-state=open],.data-\[state\=visible\]\:fade-in[data-state=visible]{--tw-enter-opacity:0}.data-\[state\=closed\]\:zoom-out-95[data-state=closed]{--tw-exit-scale:.95}.data-\[state\=open\]\:zoom-in-90[data-state=open]{--tw-enter-scale:.9}.data-\[state\=open\]\:zoom-in-95[data-state=open]{--tw-enter-scale:.95}.data-\[motion\=from-end\]\:slide-in-from-right-52[data-motion=from-end]{--tw-enter-translate-x:13rem}.data-\[motion\=from-start\]\:slide-in-from-left-52[data-motion=from-start]{--tw-enter-translate-x:-13rem}.data-\[motion\=to-end\]\:slide-out-to-right-52[data-motion=to-end]{--tw-exit-translate-x:13rem}.data-\[motion\=to-start\]\:slide-out-to-left-52[data-motion=to-start]{--tw-exit-translate-x:-13rem}.data-\[side\=bottom\]\:slide-in-from-top-2[data-side=bottom]{--tw-enter-translate-y:-.5rem}.data-\[side\=left\]\:slide-in-from-right-2[data-side=left]{--tw-enter-translate-x:.5rem}.data-\[side\=right\]\:slide-in-from-left-2[data-side=right]{--tw-enter-translate-x:-.5rem}.data-\[side\=top\]\:slide-in-from-bottom-2[data-side=top]{--tw-enter-translate-y:.5rem}.data-\[state\=closed\]\:slide-out-to-bottom[data-state=closed]{--tw-exit-translate-y:100%}.data-\[state\=closed\]\:slide-out-to-left[data-state=closed]{--tw-exit-translate-x:-100%}.data-\[state\=closed\]\:slide-out-to-left-1\/2[data-state=closed]{--tw-exit-translate-x:-50%}.data-\[state\=closed\]\:slide-out-to-right[data-state=closed]{--tw-exit-translate-x:100%}.data-\[state\=closed\]\:slide-out-to-top[data-state=closed]{--tw-exit-translate-y:-100%}.data-\[state\=closed\]\:slide-out-to-top-\[48\%\][data-state=closed]{--tw-exit-translate-y:-48%}.data-\[state\=open\]\:slide-in-from-bottom[data-state=open]{--tw-enter-translate-y:100%}.data-\[state\=open\]\:slide-in-from-left[data-state=open]{--tw-enter-translate-x:-100%}.data-\[state\=open\]\:slide-in-from-left-1\/2[data-state=open]{--tw-enter-translate-x:-50%}.data-\[state\=open\]\:slide-in-from-right[data-state=open]{--tw-enter-translate-x:100%}.data-\[state\=open\]\:slide-in-from-top[data-state=open]{--tw-enter-translate-y:-100%}.data-\[state\=open\]\:slide-in-from-top-\[48\%\][data-state=open]{--tw-enter-translate-y:-48%}.data-\[state\=closed\]\:duration-300[data-state=closed]{animation-duration:.3s}.data-\[state\=open\]\:duration-500[data-state=open]{animation-duration:.5s}.data-\[panel-group-direction\=vertical\]\:after\:left-0[data-panel-group-direction=vertical]:after{content:var(--tw-content);left:0}.data-\[panel-group-direction\=vertical\]\:after\:h-1[data-panel-group-direction=vertical]:after{content:var(--tw-content);height:.25rem}.data-\[panel-group-direction\=vertical\]\:after\:w-full[data-panel-group-direction=vertical]:after{content:var(--tw-content);width:100%}.data-\[panel-group-direction\=vertical\]\:after\:-translate-y-1\/2[data-panel-group-direction=vertical]:after{content:var(--tw-content);--tw-translate-y:-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))}.data-\[panel-group-direction\=vertical\]\:after\:translate-x-0[data-panel-group-direction=vertical]:after{content:var(--tw-content);--tw-translate-x:0px;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))}.data-\[state\=open\]\:hover\:bg-accent:hover[data-state=open]{background-color:hsl(var(--accent))}.data-\[state\=open\]\:hover\:bg-sidebar-accent:hover[data-state=open]{background-color:hsl(var(--sidebar-accent))}.data-\[state\=open\]\:hover\:text-sidebar-accent-foreground:hover[data-state=open]{color:hsl(var(--sidebar-accent-foreground))}.data-\[state\=open\]\:focus\:bg-accent:focus[data-state=open]{background-color:hsl(var(--accent))}.group\/day[data-focused=true] .group-data-\[focused\=true\]\/day\:relative{position:relative}.group[data-collapsible=offcanvas] .group-data-\[collapsible\=offcanvas\]\:left-\[calc\(var\(--sidebar-width\)\*-1\)\]{left:calc(var(--sidebar-width) * -1)}.group[data-collapsible=offcanvas] .group-data-\[collapsible\=offcanvas\]\:right-\[calc\(var\(--sidebar-width\)\*-1\)\]{right:calc(var(--sidebar-width) * -1)}.group[data-side=left] .group-data-\[side\=left\]\:-right-4{right:-1rem}.group[data-side=right] .group-data-\[side\=right\]\:left-0{left:0}.group\/day[data-focused=true] .group-data-\[focused\=true\]\/day\:z-10{z-index:10}.group[data-collapsible=icon] .group-data-\[collapsible\=icon\]\:-mt-8{margin-top:-2rem}.group\/field-group[data-variant=outline] .group-data-\[variant\=outline\]\/field-group\:-mb-2{margin-bottom:-.5rem}.group[data-collapsible=icon] .group-data-\[collapsible\=icon\]\:hidden{display:none}.group[data-collapsible=icon] .group-data-\[collapsible\=icon\]\:\!size-8{width:2rem!important;height:2rem!important}.group[data-collapsible=icon] .group-data-\[collapsible\=icon\]\:w-\[--sidebar-width-icon\]{width:var(--sidebar-width-icon)}.group[data-collapsible=icon] .group-data-\[collapsible\=icon\]\:w-\[calc\(var\(--sidebar-width-icon\)_\+_theme\(spacing\.4\)\)\]{width:calc(var(--sidebar-width-icon) + 1rem)}.group[data-collapsible=icon] .group-data-\[collapsible\=icon\]\:w-\[calc\(var\(--sidebar-width-icon\)_\+_theme\(spacing\.4\)_\+2px\)\]{width:calc(var(--sidebar-width-icon) + 1rem + 2px)}.group[data-collapsible=offcanvas] .group-data-\[collapsible\=offcanvas\]\:w-0{width:0}.group[data-collapsible=offcanvas] .group-data-\[collapsible\=offcanvas\]\:translate-x-0{--tw-translate-x:0px;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[data-side=right] .group-data-\[side\=right\]\:rotate-180,.group[data-state=open] .group-data-\[state\=open\]\:rotate-180{--tw-rotate:180deg;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[data-collapsible=icon] .group-data-\[collapsible\=icon\]\:overflow-hidden{overflow:hidden}.group[data-variant=floating] .group-data-\[variant\=floating\]\:rounded-lg{border-radius:var(--radius)}.group[data-variant=floating] .group-data-\[variant\=floating\]\:border{border-width:1px}.group[data-side=left] .group-data-\[side\=left\]\:border-r{border-right-width:1px}.group[data-side=right] .group-data-\[side\=right\]\:border-l{border-left-width:1px}.group\/day[data-focused=true] .group-data-\[focused\=true\]\/day\:border-ring{border-color:hsl(var(--ring))}.group[data-variant=floating] .group-data-\[variant\=floating\]\:border-sidebar-border{border-color:hsl(var(--sidebar-border))}.group[data-collapsible=icon] .group-data-\[collapsible\=icon\]\:\!p-0{padding:0!important}.group[data-collapsible=icon] .group-data-\[collapsible\=icon\]\:\!p-2{padding:.5rem!important}.group[data-collapsible=icon] .group-data-\[collapsible\=icon\]\:opacity-0{opacity:0}.group\/field[data-disabled=true] .group-data-\[disabled\=true\]\/field\:opacity-50,.group\/input-group[data-disabled=true] .group-data-\[disabled\=true\]\/input-group\:opacity-50{opacity:.5}.group[data-variant=floating] .group-data-\[variant\=floating\]\:shadow{--tw-shadow:0 1px 3px 0 #0000001a, 0 1px 2px -1px #0000001a;--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000), var(--tw-ring-shadow,0 0 #0000), var(--tw-shadow)}.group\/day[data-focused=true] .group-data-\[focused\=true\]\/day\:ring-\[3px\]{--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(3px + 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)}.group\/day[data-focused=true] .group-data-\[focused\=true\]\/day\:ring-ring\/50{--tw-ring-color:hsl(var(--ring) / .5)}.group[data-collapsible=offcanvas] .group-data-\[collapsible\=offcanvas\]\:after\:left-full:after{content:var(--tw-content);left:100%}.group[data-collapsible=offcanvas] .group-data-\[collapsible\=offcanvas\]\:hover\:bg-sidebar:hover{background-color:hsl(var(--sidebar-background))}.peer\/menu-button[data-size=default]~.peer-data-\[size\=default\]\/menu-button\:top-1\.5{top:.375rem}.peer\/menu-button[data-size=lg]~.peer-data-\[size\=lg\]\/menu-button\:top-2\.5{top:.625rem}.peer\/menu-button[data-size=sm]~.peer-data-\[size\=sm\]\/menu-button\:top-1{top:.25rem}.peer\/menu-button[data-active=true]~.peer-data-\[active\=true\]\/menu-button\:text-sidebar-accent-foreground{color:hsl(var(--sidebar-accent-foreground))}.dark\:border-destructive:is(.dark *){border-color:hsl(var(--destructive))}.dark\:bg-input\/30:is(.dark *){background-color:hsl(var(--input) / .3)}.dark\:bg-transparent:is(.dark *){background-color:#0000}.dark\:has-\[\[data-slot\]\[aria-invalid\=true\]\]\:ring-destructive\/40:has([data-slot][aria-invalid=true]):is(.dark *){--tw-ring-color:hsl(var(--destructive) / .4)}@media (width>=640px){.sm\:mt-0{margin-top:0}.sm\:flex{display:flex}.sm\:max-w-sm{max-width:24rem}.sm\:flex-row{flex-direction:row}.sm\:justify-end{justify-content:flex-end}.sm\:gap-2\.5{gap:.625rem}.sm\:space-x-2>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-right:calc(.5rem * var(--tw-space-x-reverse));margin-left:calc(.5rem * calc(1 - var(--tw-space-x-reverse)))}.sm\:rounded-lg{border-radius:var(--radius)}.sm\:text-left{text-align:left}}@media (width>=768px){.md\:absolute{position:absolute}.md\:block{display:block}.md\:flex{display:flex}.md\:w-\[var\(--radix-navigation-menu-viewport-width\)\]{width:var(--radix-navigation-menu-viewport-width)}.md\:w-auto{width:auto}.md\:flex-row{flex-direction:row}.md\:p-12{padding:3rem}.md\:text-sm{font-size:.875rem;line-height:1.25rem}.md\:opacity-0{opacity:0}.after\:md\:hidden:after{content:var(--tw-content);display:none}.peer[data-variant=inset]~.md\:peer-data-\[variant\=inset\]\:m-2{margin:.5rem}.peer[data-state=collapsed][data-variant=inset]~.md\:peer-data-\[state\=collapsed\]\:peer-data-\[variant\=inset\]\:ml-2{margin-left:.5rem}.peer[data-variant=inset]~.md\:peer-data-\[variant\=inset\]\:ml-0{margin-left:0}.peer[data-variant=inset]~.md\:peer-data-\[variant\=inset\]\:rounded-xl{border-radius:.75rem}.peer[data-variant=inset]~.md\:peer-data-\[variant\=inset\]\:shadow{--tw-shadow:0 1px 3px 0 #0000001a, 0 1px 2px -1px #0000001a;--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000), var(--tw-ring-shadow,0 0 #0000), var(--tw-shadow)}}.\[\&\+\[data-slot\=item-content\]\]\:flex-none+[data-slot=item-content]{flex:none}.\[\&\:first-child\[data-selected\=true\]_button\]\:rounded-l-md:first-child[data-selected=true] button{border-top-left-radius:calc(var(--radius) - 2px);border-bottom-left-radius:calc(var(--radius) - 2px)}.\[\&\:has\(\[role\=checkbox\]\)\]\:pr-0:has([role=checkbox]){padding-right:0}.\[\&\:last-child\[data-selected\=true\]_button\]\:rounded-r-md:last-child[data-selected=true] button{border-top-right-radius:calc(var(--radius) - 2px);border-bottom-right-radius:calc(var(--radius) - 2px)}.\[\&\>\*\:not\(\:first-child\)\]\:rounded-l-none>:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.\[\&\>\*\:not\(\:first-child\)\]\:rounded-t-none>:not(:first-child){border-top-left-radius:0;border-top-right-radius:0}.\[\&\>\*\:not\(\:first-child\)\]\:border-l-0>:not(:first-child){border-left-width:0}.\[\&\>\*\:not\(\:first-child\)\]\:border-t-0>:not(:first-child){border-top-width:0}.\[\&\>\*\:not\(\:last-child\)\]\:rounded-b-none>:not(:last-child){border-bottom-right-radius:0;border-bottom-left-radius:0}.\[\&\>\*\:not\(\:last-child\)\]\:rounded-r-none>:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.\[\&\>\*\]\:w-full>*{width:100%}.\[\&\>\*\]\:focus-visible\:relative:focus-visible>*{position:relative}.\[\&\>\*\]\:focus-visible\:z-10:focus-visible>*{z-index:10}.\[\&\>\.sr-only\]\:w-auto>.sr-only{width:auto}.\[\&\>\[data-slot\=field-group\]\]\:gap-4>[data-slot=field-group]{gap:1rem}.\[\&\>\[data-slot\=field-label\]\]\:flex-auto>[data-slot=field-label]{flex:auto}.\[\&\>\[data-slot\=field\]\]\:p-4>[data-slot=field]{padding:1rem}.has-\[select\[aria-hidden\=true\]\:last-child\]\:\[\&\>\[data-slot\=select-trigger\]\:last-of-type\]\:rounded-r-md>[data-slot=select-trigger]:last-of-type:has(select[aria-hidden=true]:last-child){border-top-right-radius:calc(var(--radius) - 2px);border-bottom-right-radius:calc(var(--radius) - 2px)}.\[\&\>\[data-slot\=select-trigger\]\:not\(\[class\*\=\'w-\'\]\)\]\:w-fit>[data-slot=select-trigger]:not([class*=w-]){width:fit-content}.\[\&\>\[role\=checkbox\]\]\:translate-y-\[2px\]>[role=checkbox]{--tw-translate-y:2px;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))}.\[\&\>a\:hover\]\:text-primary>a:hover{color:hsl(var(--primary))}.\[\&\>a\]\:underline>a{text-decoration-line:underline}.\[\&\>a\]\:underline-offset-4>a{text-underline-offset:4px}.\[\&\>button\]\:hidden>button{display:none}.\[\&\>input\]\:flex-1>input{flex:1}.has-\[\>\[data-align\=block-end\]\]\:\[\&\>input\]\:pt-3>input:has(>[data-align=block-end]){padding-top:.75rem}.has-\[\>\[data-align\=block-start\]\]\:\[\&\>input\]\:pb-3>input:has(>[data-align=block-start]){padding-bottom:.75rem}.has-\[\>\[data-align\=inline-end\]\]\:\[\&\>input\]\:pr-2>input:has(>[data-align=inline-end]){padding-right:.5rem}.has-\[\>\[data-align\=inline-start\]\]\:\[\&\>input\]\:pl-2>input:has(>[data-align=inline-start]){padding-left:.5rem}.\[\&\>kbd\]\:rounded-\[calc\(var\(--radius\)-5px\)\]>kbd{border-radius:calc(var(--radius) - 5px)}.\[\&\>span\:last-child\]\:truncate>span:last-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.\[\&\>span\]\:line-clamp-1>span{-webkit-line-clamp:1;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.\[\&\>span\]\:text-xs>span{font-size:.75rem;line-height:1rem}.\[\&\>span\]\:opacity-70>span{opacity:.7}.\[\&\>svg\+div\]\:translate-y-\[-3px\]>svg+div{--tw-translate-y:-3px;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))}.\[\&\>svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-3\.5>svg:not([class*=size-]){width:.875rem;height:.875rem}.\[\&\>svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-4>svg:not([class*=size-]){width:1rem;height:1rem}.\[\&\>svg\]\:absolute>svg{position:absolute}.\[\&\>svg\]\:left-4>svg{left:1rem}.\[\&\>svg\]\:top-4>svg{top:1rem}.\[\&\>svg\]\:size-3\.5>svg{width:.875rem;height:.875rem}.\[\&\>svg\]\:size-4>svg{width:1rem;height:1rem}.\[\&\>svg\]\:h-3\.5>svg{height:.875rem}.\[\&\>svg\]\:w-3\.5>svg{width:.875rem}.\[\&\>svg\]\:shrink-0>svg{flex-shrink:0}.\[\&\>svg\]\:text-destructive>svg{color:hsl(var(--destructive))}.\[\&\>svg\]\:text-foreground>svg{color:hsl(var(--foreground))}.\[\&\>svg\]\:text-muted-foreground>svg{color:hsl(var(--muted-foreground))}.\[\&\>svg\]\:text-sidebar-accent-foreground>svg{color:hsl(var(--sidebar-accent-foreground))}.\[\&\>svg\~\*\]\:pl-7>svg~*{padding-left:1.75rem}.\[\&\>tr\]\:last\:border-b-0:last-child>tr{border-bottom-width:0}.\[\&\[data-panel-group-direction\=vertical\]\>div\]\:rotate-90[data-panel-group-direction=vertical]>div{--tw-rotate:90deg;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))}.\[\&\[data-state\=open\]\>svg\]\:rotate-180[data-state=open]>svg{--tw-rotate:180deg;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))}.\[\&_\[cmdk-group-heading\]\]\:px-2 [cmdk-group-heading]{padding-left:.5rem;padding-right:.5rem}.\[\&_\[cmdk-group-heading\]\]\:py-1\.5 [cmdk-group-heading]{padding-top:.375rem;padding-bottom:.375rem}.\[\&_\[cmdk-group-heading\]\]\:text-xs [cmdk-group-heading]{font-size:.75rem;line-height:1rem}.\[\&_\[cmdk-group-heading\]\]\:font-medium [cmdk-group-heading]{font-weight:500}.\[\&_\[cmdk-group-heading\]\]\:text-muted-foreground [cmdk-group-heading]{color:hsl(var(--muted-foreground))}.\[\&_\[cmdk-group\]\:not\(\[hidden\]\)_\~\[cmdk-group\]\]\:pt-0 [cmdk-group]:not([hidden])~[cmdk-group]{padding-top:0}.\[\&_\[cmdk-group\]\]\:px-2 [cmdk-group]{padding-left:.5rem;padding-right:.5rem}.\[\&_\[cmdk-input-wrapper\]_svg\]\:h-5 [cmdk-input-wrapper] svg{height:1.25rem}.\[\&_\[cmdk-input-wrapper\]_svg\]\:w-5 [cmdk-input-wrapper] svg{width:1.25rem}.\[\&_\[cmdk-input\]\]\:h-12 [cmdk-input]{height:3rem}.\[\&_\[cmdk-item\]\]\:px-2 [cmdk-item]{padding-left:.5rem;padding-right:.5rem}.\[\&_\[cmdk-item\]\]\:py-3 [cmdk-item]{padding-top:.75rem;padding-bottom:.75rem}.\[\&_\[cmdk-item\]_svg\]\:h-5 [cmdk-item] svg{height:1.25rem}.\[\&_\[cmdk-item\]_svg\]\:w-5 [cmdk-item] svg{width:1.25rem}.\[\&_img\]\:size-full img{width:100%;height:100%}.\[\&_img\]\:object-cover img{-o-object-fit:cover;object-fit:cover}.\[\&_p\]\:leading-relaxed p{line-height:1.625}.\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-3 svg:not([class*=size-]){width:.75rem;height:.75rem}.\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-4 svg:not([class*=size-]){width:1rem;height:1rem}.\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-6 svg:not([class*=size-]){width:1.5rem;height:1.5rem}.\[\&_svg\]\:pointer-events-none svg{pointer-events:none}.\[\&_svg\]\:size-4 svg{width:1rem;height:1rem}.\[\&_svg\]\:shrink-0 svg{flex-shrink:0}.\[\&_tr\:last-child\]\:border-0 tr:last-child{border-width:0}.\[\&_tr\]\:border-b tr{border-bottom-width:1px}[data-side=left][data-collapsible=offcanvas] .\[\[data-side\=left\]\[data-collapsible\=offcanvas\]_\&\]\:-right-2{right:-.5rem}[data-side=left][data-state=collapsed] .\[\[data-side\=left\]\[data-state\=collapsed\]_\&\]\:cursor-e-resize{cursor:e-resize}[data-side=left] .\[\[data-side\=left\]_\&\]\:cursor-w-resize{cursor:w-resize}[data-side=right][data-collapsible=offcanvas] .\[\[data-side\=right\]\[data-collapsible\=offcanvas\]_\&\]\:-left-2{left:-.5rem}[data-side=right][data-state=collapsed] .\[\[data-side\=right\]\[data-state\=collapsed\]_\&\]\:cursor-w-resize{cursor:w-resize}[data-side=right] .\[\[data-side\=right\]_\&\]\:cursor-e-resize{cursor:e-resize}[data-slot=card-content] .\[\[data-slot\=card-content\]_\&\]\:bg-transparent,[data-slot=popover-content] .\[\[data-slot\=popover-content\]_\&\]\:bg-transparent{background-color:#0000}[data-slot=tooltip-content] .\[\[data-slot\=tooltip-content\]_\&\]\:bg-background\/20{background-color:hsl(var(--background) / .2)}[data-slot=tooltip-content] .\[\[data-slot\=tooltip-content\]_\&\]\:text-background{color:hsl(var(--background))}[data-slot=tooltip-content] .dark\:\[\[data-slot\=tooltip-content\]_\&\]\:bg-background\/10:is(.dark *){background-color:hsl(var(--background) / .1)}[data-variant=legend]+.\[\[data-variant\=legend\]\+\&\]\:-mt-1\.5{margin-top:-.375rem}.action-row{--ar-fg:var(--fg);--ar-muted:color-mix(in srgb, var(--fg) 55%, transparent);--ar-line:var(--line);--ar-wash:color-mix(in srgb, var(--fg) 7%, transparent);--ar-tip-bg:var(--card);gap:6px;display:flex}.ask-panel .action-row{--ar-fg:var(--pane-ink);--ar-muted:var(--pane-muted);--ar-line:var(--pane-hair);--ar-wash:var(--pane-wash);--ar-tip-bg:var(--pane-solid)}.action-ib{width:34px;height:34px;color:var(--ar-muted);border:1px solid #0000;border-radius:10px;place-items:center;transition:color .15s,background-color .15s,border-color .15s;display:grid;position:relative}.action-ib svg{display:block}.action-ib:hover,.action-ib:focus-visible{color:var(--ar-fg);background:var(--ar-wash);border-color:var(--ar-line)}.action-ib:focus-visible{outline:1px solid var(--ar-muted);outline-offset:2px}.action-tip{z-index:5;background:var(--ar-tip-bg);border:1px solid var(--ar-line);color:var(--ar-fg);font:400 12px/1 var(--sans);white-space:nowrap;opacity:0;pointer-events:none;border-radius:7px;padding:4px 8px;transition:opacity .12s;position:absolute;top:calc(100% + 6px);left:50%;translate:-50%}.action-ib:hover .action-tip,.action-ib:focus-visible .action-tip{opacity:1}.bm-stage{background:#0e100f;position:absolute;inset:0}.bm-window{background:#0b0c0b;border:1px solid #2a2e2b;border-bottom:0;border-radius:12px 12px 0 0;position:absolute;inset:5% 4% -2%;overflow:hidden;box-shadow:0 30px 80px #0009}.bm-chrome{background:#161917;align-items:center;gap:8px;height:38px;padding:0 12px;display:flex}.bm-chrome i{background:#3a3f3c;border-radius:50%;width:10px;height:10px}.bm-chrome i:first-child{background:#ff5f57}.bm-chrome i:nth-child(2){background:#febc2e}.bm-chrome i:nth-child(3){background:#28c840}.bm-url{max-width:340px;height:24px;font:11.5px/1 var(--sans);color:var(--fg-dim);background:#0e100f;border-radius:8px;flex:1;align-items:center;gap:8px;margin-left:12px;padding:0 10px;display:flex}.bm-url b{border:1.5px solid color-mix(in srgb, var(--fg-dim) 70%, transparent);border-radius:50%;width:10px;height:10px}.bm-video{aspect-ratio:20/9;-o-object-fit:cover;object-fit:cover;-o-object-position:top;object-position:top;background:#0b0c0b;width:100%;display:block}.bm-play{color:#fff;cursor:pointer;background:#0000008c;border:1px solid #fff3;border-radius:50%;place-items:center;width:44px;height:44px;padding:0;display:grid;position:absolute;top:50%;left:50%;translate:-50% -50%}.bm-play svg{width:20px;height:20px}[data-theme=light] .bm-stage{background:#e6e8e6}[data-theme=light] .bm-window{background:#f2f3f0;border-color:#d6dad7}[data-theme=light] .bm-chrome{background:#f2f3f0}[data-theme=light] .bm-url{background:#e6e8e6}@media (width<=767px){.bm-window{left:3%;right:3%}.bm-chrome{height:30px}.bm-chrome i{width:8px;height:8px}}.im-box{position:absolute;inset:0;overflow:hidden}.im-box picture{display:contents}.im-box img,.im-box video{-o-object-fit:cover;object-fit:cover;-o-object-position:var(--im-pos,center);object-position:var(--im-pos,center);width:100%;height:100%;position:absolute;inset:0}@media (width<=767px){.im-box img,.im-box video{-o-object-position:var(--im-pos-m,var(--im-pos,center));object-position:var(--im-pos-m,var(--im-pos,center))}}.im-blur{filter:blur(14px);scale:1.08}.im-full{opacity:0;transition:opacity .2s}.im-full.is-loaded{opacity:1}@media (prefers-reduced-motion:reduce){.im-full{transition:none}}.im-play{color:#fff;cursor:pointer;background:#0000008c;border:1px solid #fff3;border-radius:50%;place-items:center;width:44px;height:44px;padding:0;display:grid;position:absolute;top:50%;left:50%;translate:-50% -50%}.im-play svg{width:20px;height:20px}.scramble-link{cursor:pointer;text-decoration:none;position:relative}.scramble-link--standalone{color:inherit;display:inline-block}button.scramble-link{appearance:none;font:inherit;letter-spacing:inherit;text-align:inherit;background:0 0;border:0;margin:0;padding:0}.scramble-link__cells{letter-spacing:0;white-space:pre}.scramble-link .scramble-link__cells{font-weight:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}.scramble-link__cell{text-align:center;display:inline-block}.scramble-link__cell.is-space{text-align:center}.scramble-link__cell.is-noise{color:var(--band-accent,var(--scramble-accent,currentColor))}.scramble-link__rule{background:var(--band-accent,var(--scramble-accent,currentColor));transform-origin:0;pointer-events:none;height:1px;transition:transform .28s;position:absolute;bottom:-.12em;left:0;right:0;transform:scaleX(0)}.scramble-link:hover .scramble-link__rule,.scramble-link:focus-visible .scramble-link__rule{transform:scaleX(1)}.scramble-link:focus-visible{outline:2px solid var(--band-accent,var(--scramble-accent,currentColor));outline-offset:3px;border-radius:2px}.scramble-link__probe{visibility:hidden;white-space:pre;pointer-events:none;position:absolute;top:0;left:-9999px;margin:0!important}@media (prefers-reduced-motion:reduce){.scramble-link__rule{transition:none}}.pgs{background:#0b0d12;position:absolute;inset:0;overflow:hidden;container-type:size}.pgs-stage{width:max(100cqw,230cqh);position:absolute;top:0;left:50%;transform:translate(-50%)}.pgs-comp{width:100%;height:100%;display:block}.pgs-screen{opacity:0;--pgs-s:1;transition:opacity .32s;position:absolute;overflow:hidden}.pgs-screen.is-live{opacity:1}.pgs-px{transform-origin:0 0;transform:scale(var(--pgs-s));position:absolute;top:0;left:0}.pgs-map,.pgs-svg{display:block;position:absolute;top:0;left:0}.pgs-svg{overflow:hidden}.pgs-detour,.pgs-cone{opacity:0}.pgs-cone.is-pulsing{animation:.4s ease-in-out 3 pgs-pulse}@keyframes pgs-pulse{0%,to{opacity:0}50%{opacity:.5}}.pgs-alert{box-sizing:border-box;-webkit-backdrop-filter:blur(14px)saturate(1.1);backdrop-filter:blur(14px)saturate(1.1);color:#fff;opacity:0;background:#4a201e8a;border:1.5px solid #e85c509e;border-radius:31px;width:545px;height:163px;padding:0 26px;font-family:Inter,system-ui,sans-serif;transition:opacity .35s,transform .35s;position:absolute;top:239px;left:22px;transform:translateY(-18px);box-shadow:0 0 22px #e0454529,0 10px 28px #00000052}.pgs-alert.is-in{opacity:1;transform:none}.pgs-alert__row{box-sizing:border-box;align-items:center;gap:17px;height:67px;padding-top:8px;display:flex}.pgs-alert__cam{color:#ee5a4c;flex:none;width:26px;height:26px}.pgs-alert__row b{letter-spacing:-.01em;white-space:nowrap;font-size:22px;font-weight:650}.pgs-alert__row span{color:#ebebf59e;white-space:nowrap;margin-left:auto;font-size:17.5px}.pgs-alert__btns{gap:12px;display:flex}.pgs-dodge,.pgs-ignore{box-sizing:border-box;white-space:nowrap;border-radius:35px;justify-content:center;align-items:center;height:69px;font-size:23.5px;display:flex}.pgs-dodge{color:#0f1a0a;letter-spacing:-.015em;background:linear-gradient(#a9f45a,#8fe53c);gap:14px;width:275px;font-weight:800;transition:transform .18s,filter .18s;box-shadow:0 0 26px #9ef04a57}.pgs-dodge svg{flex:none;width:24px;height:24px}.pgs-dodge.is-pressed{filter:brightness(1.2);transform:scale(.95)}.pgs-ignore{background:#ffffff0f;border:1.5px solid #ffffff2b;flex:1;font-size:21px;font-weight:650}@property --sb-angle{syntax:"<angle>";inherits:false;initial-value:0deg}@property --sb-offset{syntax:"<angle>";inherits:false;initial-value:0deg}@property --sb-percent{syntax:"<percentage>";inherits:false;initial-value:10%}@property --sb-shine{syntax:"<color>";inherits:false;initial-value:#fff}:root{--glint-period:7s}.shiny-btn{--sb-bg:#0c0c0ecc;--sb-ink:#f5f3ef;--sb-hi:#5ed29c;--sb-hi-soft:#a8e9cc;--sb-edge:#f5f3ef0d;--sb-ring:color-mix(in srgb, var(--sb-ink) 16%, transparent);--sb-dur:var(--glint-period);isolation:isolate;cursor:pointer;height:46px;font:500 14px/1 var(--sans,Inter, system-ui, sans-serif);color:var(--sb-ink);-webkit-backdrop-filter:blur(8px);background:linear-gradient(var(--sb-bg), var(--sb-bg)) padding-box, conic-gradient(from calc(var(--sb-angle) - var(--sb-offset)), var(--sb-ring), color-mix(in srgb, var(--sb-hi) 55%, var(--sb-ring)) var(--sb-percent), color-mix(in srgb, var(--sb-hi-soft) 70%, var(--sb-ring)) calc(var(--sb-percent) * 2), color-mix(in srgb, var(--sb-hi) 55%, var(--sb-ring)) calc(var(--sb-percent) * 3), var(--sb-ring) calc(var(--sb-percent) * 4)) border-box;box-shadow:inset 0 0 0 1px var(--sb-edge);animation:sb-spin var(--sb-dur) linear infinite;border:1px solid #0000;border-radius:999px;align-items:center;padding:0 22px;transition:--sb-offset .8s cubic-bezier(.25,1,.5,1),--sb-percent .8s cubic-bezier(.25,1,.5,1),--sb-shine .8s cubic-bezier(.25,1,.5,1),transform .8s cubic-bezier(.25,1,.5,1);display:inline-flex;position:relative;overflow:hidden}[data-theme=light] .site-hero .shiny-btn{--sb-bg:#fcfcfbbd;--sb-ink:#141417;--sb-hi:#1f7a55;--sb-hi-soft:#6fbf9a;--sb-edge:#14141712}.shiny-btn:after{content:"";z-index:-1;pointer-events:none;border-radius:inherit;background:radial-gradient(125% 140% at 50% 132%, color-mix(in srgb, var(--sb-hi) 60%, transparent) 0%, color-mix(in srgb, var(--sb-hi) 20%, transparent) 38%, color-mix(in srgb, var(--sb-hi) 0%, transparent) 68%);opacity:.32;width:100%;height:100%;transition:opacity .55s cubic-bezier(.25,1,.5,1);animation:6s ease-in-out infinite sb-glow;position:absolute;top:50%;left:50%;translate:-50% -50%}.shiny-btn-label{z-index:1;align-items:center;gap:9px;line-height:1;display:inline-flex;position:relative}.shiny-btn:is(:hover,:focus-visible){--sb-percent:20%;--sb-offset:95deg;--sb-shine:var(--sb-hi-soft)}.shiny-btn:is(:hover,:focus-visible):after{opacity:1}.shiny-btn:active{translate:0 1px}.shiny-btn:focus-visible{outline:2px solid var(--sb-hi);outline-offset:3px}@keyframes sb-spin{to{--sb-angle:360deg}}@keyframes sb-glow{0%,to{transform:scale(1)}50%{transform:scale(1.06)}}@media (prefers-reduced-motion:reduce){.shiny-btn,.shiny-btn:after{animation:none}}@media (width<=900px){.shiny-btn{height:42px;padding:0 18px;font-size:13px}}.site-hero{--hero-fig-h:70vh;--hero-fig-bottom:21vh;--film-op:.62;background-color:var(--band-bg);background-image:radial-gradient(70% 55% at 50% 38%,#f5f3ef0c 0%,#f5f3ef00 72%);width:100%;height:100svh;min-height:720px;transition:background-color .5s;position:relative}[data-theme=light] .site-hero{--film-op:.5;background-image:radial-gradient(70% 55% at 50% 38%,#ffffff8c 0%,#fff0 72%)}.site-hero-film{z-index:2;-o-object-fit:cover;object-fit:cover;filter:url(#duoDark)contrast(1.08)brightness(1.02);width:100%;height:100%;position:absolute;inset:0}[data-theme=light] .site-hero-film{filter:url(#duoLight)contrast(1.04)}.site-hero.film-in .site-hero-film[data-ok="1"]{opacity:var(--film-op);transition:opacity 1.3s}.site-hero-scrim{z-index:3;pointer-events:none;background:linear-gradient(90deg,#0b0b0c8c 0%,#0b0b0c00 20% 80%,#0b0b0c8c 100%),linear-gradient(#0b0b0cb3 0%,#0b0b0c00 22%,#0b0b0c47 64%,#0b0b0c 97%),radial-gradient(96% 84% at 50% 42%,#0b0b0c00 46%,#0b0b0c80 100%);position:absolute;inset:0}[data-theme=light] .site-hero-scrim{background:linear-gradient(90deg,#f5f5f78c 0%,#f5f5f700 20% 80%,#f5f5f78c 100%),linear-gradient(#f5f5f7b3 0%,#f5f5f700 22%,#f5f5f747 64%,#f5f5f7 97%),radial-gradient(96% 84% at 50% 42%,#f5f5f700 46%,#f5f5f780 100%)}.site-hero-pool{z-index:4;pointer-events:none;background:radial-gradient(44% 50% at 50% 42%,#f5f3ef1f,#f5f3ef08 54%,#f5f3ef00 76%);position:absolute;inset:0}[data-theme=light] .site-hero-pool{background:radial-gradient(44% 50% at 50% 46%,#14141712,#14141700 76%)}.site-hero-figure{z-index:10;left:50%;bottom:var(--hero-fig-bottom);height:var(--hero-fig-h);-o-object-fit:contain;object-fit:contain;filter:url(#figureMono)drop-shadow(0 30px 60px #0000008c);width:auto;position:absolute;translate:-50%}[data-theme=light] .site-hero-figure{filter:url(#figureMonoLight)drop-shadow(0 24px 48px #14141738)}.site-hero-stack{z-index:20;text-align:center;flex-direction:column;align-items:center;display:flex;position:absolute;bottom:clamp(40px,5.5vh,74px);left:0;right:0}.site-hero-wordmark{letter-spacing:-.022em;white-space:nowrap;color:var(--band-ink);-webkit-user-select:none;user-select:none;margin:0 0 max(24px,.28em);font-family:Libre Baskerville,Georgia,serif;font-size:clamp(2rem,7.5vw,10rem);font-weight:700;line-height:.88}.site-hero-role{white-space:nowrap;letter-spacing:.085em;text-transform:uppercase;color:var(--band-ink);margin:0 0 26px;font-size:clamp(.58rem,1.12vw,1.4rem);font-weight:500;line-height:1.5}.site-hero-role em{color:inherit;font-style:normal}.site-hero-cta{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.site-hero-btn-solid{background:var(--band-ink);height:46px;color:var(--band-bg);font:500 14px/1 var(--sans);border-radius:999px;align-items:center;gap:9px;padding:0 22px;text-decoration:none;transition:transform .22s,background-color .5s,color .5s;display:inline-flex}.site-hero-btn-solid:hover{transform:translateY(-1px)}.site-hero-btn-solid:focus-visible{outline:2px solid var(--band-ink);outline-offset:3px}.sb-logo{flex:none;line-height:1;display:block}@media (width<=1150px){.site-hero{--hero-fig-h:60vh;--hero-fig-bottom:21vh}}@media (height<=760px){.site-hero{--hero-fig-h:64vh;--hero-fig-bottom:18vh}}@media (width<=1023px){.site-hero-wordmark{font-size:clamp(2rem,11.5vw,10rem)}.site-hero-role{letter-spacing:.09em;white-space:normal;text-wrap:balance;margin-left:20px;margin-right:20px;font-size:clamp(12px,3.3vw,14px);line-height:1.5}.site-hero-cta{gap:10px}.site-hero-cta>.site-hero-btn-solid,.site-hero-cta>.shiny-btn{border-radius:999px;justify-content:center;min-width:150px;height:44px;padding:0 18px;font-size:14px}.site-hero{--hero-fig-h:min(60vh, calc(100svh - var(--hero-fig-bottom) - 80px))}}.site-hero{--land:cubic-bezier(.16, 1, .3, 1)}.site-hero-figure,.site-hero-role,.site-hero-pool,.site-hero-film{opacity:0}.site-hero-figure{translate:-50% 14px}.site-hero-role{translate:0 14px}.site-hero-cta>*{--cta-land:cubic-bezier(.22, 1, .36, 1);opacity:0;filter:blur(6px);will-change:opacity, translate, scale, filter;translate:0 16px;scale:.96}.site-hero-cta>:nth-child(2){--cta-delay:.5s}.site-hero-cta>.site-hero-btn-solid{transition:opacity .46s var(--cta-land) var(--cta-delay,.4s), translate .46s var(--cta-land) var(--cta-delay,.4s), scale .46s var(--cta-land) var(--cta-delay,.4s), filter .46s var(--cta-land) var(--cta-delay,.4s), transform .22s ease, background-color .5s ease, color .5s ease}.site-hero-cta>.shiny-btn{transition:opacity .46s var(--cta-land) var(--cta-delay,.4s), translate .46s var(--cta-land) var(--cta-delay,.4s), scale .46s var(--cta-land) var(--cta-delay,.4s), filter .46s var(--cta-land) var(--cta-delay,.4s), --sb-offset .8s cubic-bezier(.25,1,.5,1), --sb-percent .8s cubic-bezier(.25,1,.5,1), --sb-shine .8s cubic-bezier(.25,1,.5,1), transform .8s cubic-bezier(.25,1,.5,1)}.site-hero.is-ready .site-hero-cta>*{opacity:1;filter:blur();translate:0;scale:1}.site-hero.no-cta-anim .site-hero-cta>*{will-change:auto;transition:none}.site-hero.is-ready .site-hero-figure{opacity:1;transition:opacity 1.2s var(--land) .16s, translate 1.2s var(--land) .16s;translate:-50%}.site-hero.is-ready .site-hero-role{opacity:1;transition:opacity 1.2s var(--land) .28s, translate 1.2s var(--land) .28s;translate:0}.site-hero.is-ready .site-hero-pool{opacity:1;transition:opacity 1.2s var(--land) .16s}.site-hero-wordmark{opacity:0}.site-hero-wordmark.is-in{opacity:1;transition:opacity .22s}.site-hero-wordmark .dc,.site-hero-role .dc{text-align:left;display:inline-block}.site-hero-wordmark .dc.is-cursor,.site-hero-role .dc.is-cursor{color:var(--band-accent)}.dc-probe{visibility:hidden;white-space:pre;pointer-events:none;position:absolute;top:0;left:-9999px;margin:0!important}@media (prefers-reduced-motion:reduce){.site-hero-film{display:none}.site-hero-figure,.site-hero-wordmark,.site-hero-role,.site-hero-pool{opacity:1;transition:none}.site-hero-figure{translate:-50%}.site-hero-role{translate:none}.site-hero-cta>*,.site-hero-cta>.site-hero-btn-solid,.site-hero-cta>.shiny-btn{filter:none;will-change:auto;transition:opacity .2s;translate:none;scale:1}.site-hero.is-ready .site-hero-cta>*{opacity:1;filter:none;translate:none;scale:none}.site-hero-film[data-ok="1"]{opacity:var(--film-op)}}.ask-reply{--rc-surface:color-mix(in srgb, var(--pane-ink) 6%, transparent);--rc-surface-2:color-mix(in srgb, var(--pane-ink) 10%, transparent);--rc-faint:color-mix(in srgb, var(--pane-ink) 42%, transparent);width:100%;max-width:95%;color:color-mix(in srgb, var(--pane-ink) 88%, transparent);align-self:flex-start;font-size:15px;line-height:1.6}.ask-md p{margin:0 0 var(--chat-gap,18px)}.ask-md strong{color:var(--pane-ink);font-weight:500}.ask-md em{font-style:italic}.ask-md ul,.ask-md ol{margin:0 0 var(--chat-gap,18px);padding-left:0;list-style:none}.ask-md li{color:var(--pane-muted);margin:0 0 8px}.ask-md li ul,.ask-md li ol{margin:8px 0 0;padding-left:16px}.ask-md code{background:var(--rc-surface);border:1px solid var(--pane-hair);border-radius:5px;padding:1px 5px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.86em}.ask-md a{color:var(--pane-accent);text-underline-offset:2px;text-decoration:underline}.ask-md-tail{margin:0 0 var(--chat-gap,18px);white-space:pre-wrap}.ask-md-ellipsis{color:var(--rc-faint);margin-top:-6px;font-size:15px;line-height:1;display:block}.rc-video{aspect-ratio:16/9;width:100%;margin:0 0 var(--chat-gap,18px);border:1px solid var(--pane-hair);background:#000;border-radius:14px;animation:.18s both rc-in;position:relative;overflow:hidden}.rc-video iframe{border:0;width:100%;height:100%;display:block;position:absolute;inset:0}.rc-video-poster{cursor:pointer;background:0 0;border:0;width:100%;height:100%;padding:0;transition:opacity .2s;display:block;position:absolute;inset:0}.rc-video-poster.is-fading{opacity:0;pointer-events:none}.rc-video-poster img{-o-object-fit:cover;object-fit:cover;width:100%;height:100%;display:block;position:absolute;inset:0}.rc-video-shade{background:linear-gradient(#0000 58%,#0000008c);position:absolute;inset:0}.rc-video-play{color:#fff;background:#0000008c;border:1px solid #fff3;border-radius:50%;place-items:center;width:56px;height:56px;display:grid;position:absolute;top:50%;left:50%;translate:-50% -50%}.rc-video-play svg{width:24px;height:24px}.rc-video-caption{color:#ffffffbf;font-size:12px;position:absolute;bottom:10px;left:12px}@media (prefers-reduced-motion:reduce){.rc-video,.rc-video-poster{transition:none;animation:none}}.rc-photo{margin:0 0 var(--chat-gap,18px);animation:.18s both rc-in}.rc-photo img{aspect-ratio:16/10;-o-object-fit:cover;object-fit:cover;border:1px solid var(--pane-hair);border-radius:14px;width:100%;display:block}.rc-photo figcaption{color:var(--pane-muted);margin-top:7px;font-size:11.5px}.ask-reply>:last-child,.ask-reply>.ask-md:last-child>:last-child{margin-bottom:0}.rc-card{text-align:left;width:100%;color:inherit;margin:0 0 var(--chat-gap,18px);cursor:pointer;background:linear-gradient(#1a1c1b 0%,#121413 100%);border:1px solid #2a2f2c;border-radius:14px;align-items:center;gap:14px;padding:12px 14px;text-decoration:none;transition:background .2s,border-color .2s,translate .2s;animation:.18s both rc-in;display:flex;position:relative;overflow:hidden;box-shadow:inset 0 1px #ffffff12,0 1px 2px #0006}.rc-card:hover{background:linear-gradient(#1e2120 0%,#141615 100%);border-color:#353b38;translate:0 -1px}[data-theme=light] .rc-card{background:linear-gradient(#fff 0%,#f4f5f4 100%);border-color:#dfe3e0;box-shadow:inset 0 1px #fffc,0 1px 2px #14141714}[data-theme=light] .rc-card:hover{background:linear-gradient(#fbfcfb 0%,#eff1ef 100%);border-color:#cfd4d1}.rc-thumb{flex:none;width:44px;height:44px;position:relative}.rc-back{opacity:.55;background:linear-gradient(148deg, var(--g2), var(--g1));border-radius:11px;transition:translate .32s cubic-bezier(.22,1,.36,1),rotate .32s cubic-bezier(.22,1,.36,1),opacity .32s;position:absolute;inset:0}.rc-front{background:radial-gradient(120% 100% at 22% 12%, #ffffff4d, transparent 58%), linear-gradient(148deg, var(--g2) 0%, var(--g1) 100%);color:#fff;border-radius:11px;place-items:center;font-size:16px;transition:translate .32s cubic-bezier(.22,1,.36,1);display:grid;position:absolute;inset:0;box-shadow:inset 0 1px #ffffff59,inset 0 -1px #00000040}.rc-glyph{filter:drop-shadow(0 1px 1px #00000040);font-style:normal}.rc-icon{filter:drop-shadow(0 1px 1px #00000040);width:22px;height:22px;display:block}.rc-cal-dot{opacity:0;transition:opacity .16s}.rc-card:hover .rc-cal-dot{opacity:1}.rc-card:hover .rc-cal-dot:first-of-type{transition-delay:60ms}.rc-card:hover .rc-cal-dot:nth-of-type(2){transition-delay:.13s}.rc-card:hover .rc-cal-dot:nth-of-type(3){transition-delay:.2s}.rc-card:hover .rc-cal-dot:nth-of-type(4){transition-delay:.27s}.rc-card:hover .rc-cal-dot:nth-of-type(5){transition-delay:.34s}.rc-file-line{stroke-dasharray:1;stroke-dashoffset:0}.rc-card:hover .rc-fl-1{animation:.35s ease-out both rc-at-draw}.rc-card:hover .rc-fl-2{animation:.35s ease-out .14s both rc-at-draw}.rc-card:hover .rc-fl-3{animation:.35s ease-out .28s both rc-at-draw}.rc-at-draw{stroke-dasharray:1;stroke-dashoffset:0}.rc-card:hover .rc-at-ring{animation:.45s ease-out both rc-at-draw}.rc-card:hover .rc-at-tail{animation:.6s ease-out .18s both rc-at-draw}@keyframes rc-at-draw{0%{stroke-dashoffset:1px}to{stroke-dashoffset:0}}.rc-card:hover .rc-back{opacity:.9;translate:5px -4px;rotate:7deg}.rc-card:hover .rc-front{translate:-1px 1px}.rc-card:after{content:"";pointer-events:none;background:linear-gradient(105deg,#0000 38%,#ffffff0e 50%,#0000 62%);transition:translate .62s cubic-bezier(.3,.7,.3,1);position:absolute;inset:0;translate:-100%}.rc-card:hover:after{translate:100%}.rc-tx{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.rc-t1{color:var(--pane-ink);font-size:13.5px;font-weight:500;line-height:1.25;display:block}.rc-t2{color:var(--rc-faint);text-overflow:ellipsis;white-space:nowrap;font-size:11.5px;line-height:1.25;display:block;overflow:hidden}[data-theme=light] .rc-card .rc-t2{color:color-mix(in srgb, var(--pane-ink) 60%, transparent)}.rc-end{flex:none;align-items:center;gap:11px;margin-left:auto;display:flex}.rc-go{color:var(--rc-faint);font-size:13px;transition:color .2s,translate .2s}.rc-card:hover .rc-go{color:var(--pane-ink);translate:2px -2px}.rc-mark{flex:none;place-items:center;font-weight:600;display:grid}.rc-mark--cal{color:#fff;background:#0f0f0f;border:1px solid #ffffff38;border-radius:6px;width:22px;height:22px;font-size:9px}[data-theme=light] .rc-mark--cal{background:#141417}.rc-proj{align-items:initial;padding:0;display:block}.rc-proj-cover{aspect-ratio:16/10;background:var(--rc-surface-2);border-bottom:1px solid var(--pane-hair);display:block}.rc-proj-cover img{-o-object-fit:cover;object-fit:cover;width:100%;height:100%;display:block}.rc-proj-body{padding:12px 14px 14px;display:block}.rc-proj-title{color:var(--pane-ink);margin:0 0 5px;font-family:Libre Baskerville,Georgia,serif;font-size:17px;font-weight:400;line-height:1.2;display:block}.rc-proj-blurb{color:var(--pane-muted);font-size:12.5px;line-height:1.5;display:block}.rc-proj-status{margin-top:10px;display:flex}@keyframes rc-in{0%{opacity:0}}@media (prefers-reduced-motion:reduce){.rc-card,.rc-card *,.rc-card:after,.rc-proj{transition:none;animation:none}.rc-card--proj:hover .rc-thumb--shot img{scale:1}.rc-cal-dot{opacity:1}.rc-card:hover .rc-at-ring,.rc-card:hover .rc-at-tail,.rc-card:hover .rc-file-line{animation:none}.rc-card:hover .rc-back{translate:0;rotate:0deg}.rc-card:hover .rc-front{translate:0}.rc-card:hover:after{translate:-100%}.rc-card:hover,.rc-proj:hover{translate:0}}.ask-badge,.ask-panel{--pane-bg:#0d0d0ff0;--pane-solid:#0d0d0f;--pane-ink:#f5f3ef;--pane-muted:#8c8c92;--pane-hair:#f5f3ef21;--pane-wash:#f5f3ef0f;--pane-accent:#5ed29c;--pane-accent-soft:#a8e9cc;--pane-shadow:0 18px 40px #00000080}[data-theme=light] .ask-badge,[data-theme=light] .ask-panel{--pane-bg:#fcfcfbed;--pane-solid:#fcfcfb;--pane-ink:#141417;--pane-muted:#6e6e74;--pane-hair:#14141721;--pane-wash:#1414170d;--pane-accent:#1f7a55;--pane-accent-soft:#6fbf9a;--pane-shadow:0 18px 40px #1414172e}@property --ab-angle{syntax:"<angle>";inherits:false;initial-value:0deg}@property --ab-offset{syntax:"<angle>";inherits:false;initial-value:0deg}@property --ab-percent{syntax:"<percentage>";inherits:false;initial-value:5%}@property --ab-shine{syntax:"<color>";inherits:false;initial-value:#fff}.ask-badge{z-index:70;isolation:isolate;background:linear-gradient(var(--pane-bg), var(--pane-bg)) padding-box, conic-gradient(from calc(var(--ab-angle) - var(--ab-offset)), transparent, var(--pane-accent) var(--ab-percent), var(--ab-shine) calc(var(--ab-percent) * 2), var(--pane-accent) calc(var(--ab-percent) * 3), transparent calc(var(--ab-percent) * 4)) border-box;width:56px;height:56px;box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--pane-ink) 8%, transparent), 0 10px 30px #00000073;-webkit-backdrop-filter:blur(10px);color:var(--pane-ink);cursor:pointer;opacity:0;pointer-events:none;animation:ab-spin var(--glint-period,7s) linear infinite;border:1px solid #0000;border-radius:50%;justify-content:center;align-items:center;transition:opacity .3s,transform .3s,--ab-offset .8s cubic-bezier(.25,1,.5,1),--ab-percent .8s cubic-bezier(.25,1,.5,1),--ab-shine .8s cubic-bezier(.25,1,.5,1);display:flex;position:fixed;bottom:22px;right:22px;overflow:hidden;transform:translateY(10px)}.ask-badge.is-visible{opacity:1;pointer-events:auto;transform:translateY(0)}.ask-badge:after{content:"";z-index:-1;pointer-events:none;border-radius:inherit;background:radial-gradient(125% 140% at 50% 132%, color-mix(in srgb, var(--pane-accent) 62%, transparent) 0%, color-mix(in srgb, var(--pane-accent) 20%, transparent) 38%, color-mix(in srgb, var(--pane-accent) 0%, transparent) 68%);opacity:.32;transition:opacity .55s cubic-bezier(.25,1,.5,1);position:absolute;inset:0}.ask-badge:is(:hover,:focus-visible){--ab-percent:20%;--ab-offset:95deg;--ab-shine:#a8e9cc}.ask-badge:is(:hover,:focus-visible):after{opacity:1}.ask-badge:active{translate:0 1px}.ask-badge:focus-visible{outline:2px solid var(--pane-accent);outline-offset:3px}[data-theme=light] .ask-badge{background:color-mix(in srgb, var(--pane-solid) 88%, transparent);border:1px solid var(--pane-hair);color:var(--pane-ink);box-shadow:0 14px 34px #14141738}[data-theme=light] .ask-badge:is(:hover,:focus-visible){--ab-shine:#6fbf9a}.ask-badge-logo{flex:none;line-height:1;display:block}@keyframes ab-spin{to{--ab-angle:360deg}}.ask-root{z-index:80;position:fixed;inset:0}.ask-veil{opacity:0;transition:opacity var(--exit-ms,.24s) ease;background:#06060780;position:absolute;inset:0}.ask-veil.is-shown{opacity:1;transition-duration:var(--open-ms,.34s)}[data-theme=light] .ask-veil{background:#0606074d}.ask-panel{background:var(--pane-bg);-webkit-backdrop-filter:blur(22px);width:min(430px,100vw);height:100dvh;color:var(--pane-ink);opacity:0;transition:translate var(--exit-ms,.24s) cubic-bezier(.4, 0, 1, 1), opacity var(--exit-ms,.24s) cubic-bezier(.4, 0, 1, 1);will-change:translate;border-left:none;flex-direction:column;display:flex;position:absolute;top:0;right:0;translate:100%}.ask-panel.is-shown{opacity:1;transition:translate var(--open-ms,.34s) cubic-bezier(.22, 1, .36, 1), opacity var(--open-ms,.34s) cubic-bezier(.22, 1, .36, 1);translate:0}.ask-edge,.ask-edge-bloom{--edge-ring:color-mix(in srgb, var(--pane-ink) 16%, transparent);--edge-mid:color-mix(in srgb, var(--pane-accent) 55%, var(--edge-ring));--edge-hi:color-mix(in srgb, var(--pane-accent-soft) 70%, var(--edge-ring));--glint-len:22%;pointer-events:none;animation:edge-glint var(--glint-period,7s) linear infinite;background-position:0 0;background-size:100% 300%;transition:opacity .26s;position:absolute;top:0;bottom:0}.ask-edge{z-index:2;background-image:linear-gradient(180deg, var(--edge-ring) 0%, var(--edge-ring) calc(50% - var(--glint-len) / 2), var(--edge-mid) calc(50% - var(--glint-len) / 6), var(--edge-hi) 50%, var(--edge-mid) calc(50% + var(--glint-len) / 6), var(--edge-ring) calc(50% + var(--glint-len) / 2), var(--edge-ring) 100%);width:1px;left:0}.ask-edge-bloom{--edge-bloom:14px;left:calc(-1 * var(--edge-bloom));width:calc(var(--edge-bloom) * 2);z-index:1;background-image:linear-gradient(180deg, transparent 0%, transparent calc(50% - var(--glint-len) / 2), var(--edge-mid) 50%, transparent calc(50% + var(--glint-len) / 2), transparent 100%);filter:blur(7px);opacity:.32}@keyframes edge-glint{to{background-position:0 100%}}.ask-edge.is-fast,.ask-edge-bloom.is-fast{animation-duration:calc(var(--glint-period,7s) / 2)}.ask-edge.is-off,.ask-edge-bloom.is-off{opacity:0}.ask-head{border-bottom:1px solid var(--pane-hair);justify-content:space-between;align-items:center;padding:16px 18px;display:flex}.ai-panel-title{align-items:center;gap:8px;line-height:1;display:flex}.ai-title-dots{color:var(--pane-ink);flex:none;display:block}.ai-panel-title>span{letter-spacing:-.01em;color:var(--pane-ink);font-family:Libre Baskerville,Georgia,serif;font-size:17px;font-weight:700;line-height:1;display:block}.ai-info{width:22px;height:22px;color:color-mix(in srgb, var(--pane-ink) 55%, transparent);cursor:help;background:0 0;border:0;border-radius:50%;place-items:center;padding:0;transition:color .2s;display:grid;position:relative}.ai-info:hover,.ai-info:focus-visible{color:var(--pane-ink)}.ai-info:focus-visible{outline:2px solid var(--pane-accent);outline-offset:2px}.ai-tip{z-index:5;border:1px solid var(--pane-hair);background:var(--pane-solid);-webkit-backdrop-filter:blur(16px);width:268px;box-shadow:var(--pane-shadow);font:400 12.5px/1.55 var(--sans);letter-spacing:0;text-align:left;text-transform:none;color:color-mix(in srgb, var(--pane-ink) 72%, transparent);opacity:0;pointer-events:none;border-radius:12px;padding:13px 15px;transition:opacity .22s,transform .22s;position:absolute;top:calc(100% + 10px);left:-8px;transform:translateY(-4px)}.ai-info:hover .ai-tip,.ai-info:focus-visible .ai-tip{opacity:1;transform:none}.ask-head-actions{gap:6px;display:flex}.ask-iconbtn{width:32px;height:32px;color:color-mix(in srgb, var(--pane-ink) 75%, transparent);cursor:pointer;background:0 0;border:0;border-radius:50%;place-items:center;padding:0;transition:background-color .18s,color .18s;display:grid}.ask-iconbtn svg{width:15px;height:15px}.ask-iconbtn:hover:not(:disabled),.ask-iconbtn:focus-visible{background:var(--pane-wash);color:var(--pane-ink)}.ask-iconbtn:focus-visible{outline:none}.ask-iconbtn:disabled{opacity:.35;cursor:default}.ask-thread{--chat-gap:18px;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--pane-hair) transparent;flex-direction:column;flex:1;gap:32px;padding:28px;display:flex;overflow-y:auto}.ask-thread::-webkit-scrollbar{width:8px}.ask-thread::-webkit-scrollbar-thumb{background:var(--pane-hair);border-radius:99px}.ask-thread::-webkit-scrollbar-track{background:0 0}.ai-greet{margin-top:auto}.ask-empty-title{margin:0 0 16px;font-family:Libre Baskerville,Georgia,serif;font-size:20px;font-weight:700}.ai-greet h3,.ai-greet li{opacity:0;animation:.55s cubic-bezier(.16,1,.3,1) both ai-gin}.ai-greet h3{animation-delay:.35s}.ai-greet li:first-child{animation-delay:.46s}.ai-greet li:nth-child(2){animation-delay:.54s}.ai-greet li:nth-child(3){animation-delay:.62s}.ai-greet li:nth-child(4){animation-delay:.7s}@keyframes ai-gin{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.ask-seeds{flex-direction:column;align-items:stretch;margin:0;padding:0;list-style:none;display:flex}.ask-seeds li{display:flex}.ask-seed{appearance:none;color:color-mix(in srgb, var(--pane-ink) 62%, transparent);cursor:pointer;font:400 14.5px/1.5 var(--sans);text-align:left;background:0 0;border:0;border-radius:10px;align-items:flex-start;gap:11px;width:calc(100% + 24px);margin:0 -12px;padding:10px 12px;transition:background-color .18s,color .18s;display:flex}.ask-seed:hover,.ask-seed:focus-visible{background:var(--pane-wash);color:var(--pane-ink)}.ask-seed:focus-visible{outline:none}.ask-seed i{color:color-mix(in srgb, var(--pane-muted) 70%, transparent);flex:none;font-style:normal;line-height:1.5}.ask-msg-user{background:var(--pane-wash);border:1px solid var(--pane-hair);white-space:pre-wrap;border-radius:16px;align-self:flex-end;max-width:85%;padding:10px 16px;font-size:15px;line-height:1.5}.ask-msg-assistant{max-width:95%;color:color-mix(in srgb, var(--pane-ink) 88%, transparent);white-space:pre-wrap;align-self:flex-start;font-size:14.5px;line-height:1.65}.ask-turn{flex-direction:column;align-self:stretch;align-items:flex-start;display:flex}.status-line{--sl-dim:color-mix(in srgb, var(--pane-ink) 48%, transparent);color:var(--sl-dim);margin:0 0 var(--chat-gap,18px);-webkit-user-select:none;user-select:none;align-items:center;gap:10px;font-size:14px;display:flex}.status-label{color:var(--pane-muted)}.status-spin{opacity:.85;background:repeating-conic-gradient(var(--pane-accent) 0 24deg, transparent 24deg 45deg);border-radius:50%;flex:none;width:16px;height:16px;animation:1.1s linear infinite status-rot;-webkit-mask:radial-gradient(farthest-side,#0000 calc(100% - 4px),#000 calc(100% - 3px));mask:radial-gradient(farthest-side,#0000 calc(100% - 4px),#000 calc(100% - 3px))}@keyframes status-rot{to{rotate:1turn}}.ask-turn .ask-msg-assistant{margin-top:6px}.ask-turn .action-row{margin-top:16px}.ask-tip{z-index:5;border:1px solid var(--pane-hair);background:var(--pane-solid);box-shadow:var(--pane-shadow);font:400 11.5px/1 var(--sans);letter-spacing:0;white-space:nowrap;color:color-mix(in srgb, var(--pane-ink) 80%, transparent);opacity:0;pointer-events:none;border-radius:999px;padding:6px 11px;transition:opacity .18s,transform .18s;position:absolute;bottom:calc(100% + 8px);left:50%;transform:translateY(3px)}.ask-followups{border-top:1px solid var(--pane-hair);flex-direction:column;align-self:stretch;align-items:stretch;margin-top:12px;padding-top:6px;display:flex}.ask-followup{color:color-mix(in srgb, var(--pane-ink) 50%, transparent);padding-top:8px;padding-bottom:8px;font-size:13.5px}.ask-composer{padding:14px 18px calc(14px + env(safe-area-inset-bottom));display:block}.ai-box{background:var(--pane-wash);border:1px solid var(--pane-hair);border-radius:16px;transition:border-color .2s,background .2s}.ai-box:focus-within{border-color:color-mix(in srgb, var(--pane-ink) 28%, transparent);background:color-mix(in srgb, var(--pane-ink) 7%, transparent)}.ai-box textarea{resize:none;width:100%;color:var(--pane-ink);font:400 14px/1.55 var(--sans);background:0 0;border:0;outline:none;max-height:132px;padding:12px 14px 2px;display:block;overflow-y:auto}.ai-box textarea::placeholder{color:color-mix(in srgb, var(--pane-ink) 40%, transparent)}[data-theme=light] .ai-box{border-color:var(--pane-hair);background:#1414170a}[data-theme=light] .ai-box:focus-within{background:#1414170f;border-color:#1414174d}[data-theme=light] .ai-box textarea{color:var(--pane-ink);caret-color:var(--pane-ink)}[data-theme=light] .ai-box textarea::placeholder{color:color-mix(in srgb, var(--pane-muted) 72%, transparent)}.ai-box .row{align-items:center;gap:6px;padding:6px 8px 8px 10px;display:flex}.ai-spacer{flex:1}.ai-model{position:relative}.ai-chip{background:var(--pane-wash);height:30px;color:color-mix(in srgb, var(--pane-ink) 60%, transparent);font:400 12.5px/1 var(--sans);cursor:pointer;border:0;border-radius:9px;align-items:center;gap:6px;padding:0 10px;transition:background-color .18s,color .18s;display:inline-flex}.ai-chip:hover,.ai-chip:focus-visible,.ai-chip[aria-expanded=true]{background:color-mix(in srgb, var(--pane-ink) 10%, transparent);color:var(--pane-ink)}.ai-chip:focus-visible{outline:none}.ai-menu{z-index:6;border:1px solid var(--pane-hair);background:var(--pane-solid);-webkit-backdrop-filter:blur(16px);width:236px;box-shadow:var(--pane-shadow);border-radius:14px;padding:5px;position:absolute;bottom:calc(100% + 8px);left:0}.ai-menu-item{width:100%;color:color-mix(in srgb, var(--pane-ink) 85%, transparent);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:10px;align-items:center;gap:10px;padding:9px 11px;transition:background-color .15s;display:flex}.ai-menu-item:hover,.ai-menu-item:focus-visible{background:var(--pane-wash)}.ai-menu-item:focus-visible{outline:none}.ai-menu-text{flex-direction:column;flex:1;gap:2px;display:flex}.ai-menu-text b{font:500 13px/1.3 var(--sans);color:var(--pane-ink)}.ai-menu-text small{font:400 11.5px/1.4 var(--sans);color:color-mix(in srgb, var(--pane-ink) 55%, transparent)}.ai-menu-item svg{color:var(--pane-ink);flex:none}.ai-dice,.ai-send{--ai-tile:34px;width:var(--ai-tile);height:var(--ai-tile);cursor:pointer;border:0;border-radius:10px;flex:none;place-items:center;padding:0;display:grid}.ai-dice{background:var(--pane-wash);color:color-mix(in srgb, var(--pane-ink) 60%, transparent);transition:background-color .18s,color .18s;position:relative}.ai-dice svg{width:17px;height:17px;transition:transform .5s cubic-bezier(.25,1,.5,1)}.ai-dice:hover svg,.ai-dice:focus-visible svg{transform:rotate(360deg)}.ai-dice:hover,.ai-dice:focus-visible{background:color-mix(in srgb, var(--pane-ink) 10%, transparent);color:var(--pane-ink)}.ai-dice:focus-visible{outline:none}.ai-dice:hover .ask-tip,.ai-dice:focus-visible .ask-tip{opacity:1;transform:none}.ai-send{background:var(--pane-ink);color:var(--pane-solid);transition:opacity .2s,background-color .18s,filter .18s}.ai-send:hover:not(:disabled){filter:brightness(1.08)}.ai-send:disabled{opacity:.35;cursor:default}.ai-send:focus-visible{outline:2px solid color-mix(in srgb, var(--pane-ink) 50%, transparent);outline-offset:2px}@media (width<=767px){.ask-badge{width:52px;height:52px;right:16px;bottom:max(16px, env(safe-area-inset-bottom));transition-duration:.2s}html.ai-open .ask-badge{opacity:0!important;pointer-events:none!important}.ask-panel{width:100vw;height:100dvh;padding-bottom:var(--kb,0px);left:0;right:0;translate:0 100%}.ask-panel.is-shown{translate:0}.ask-edge,.ask-edge-bloom{display:none}.ask-head{height:64px;padding:0 16px 0 20px}.ai-panel-title>span{font-family:var(--serif);font-size:18px;font-weight:400}.ask-thread{padding:22px 20px}.ask-empty-title{margin-bottom:22px;font-size:26px}.ask-seed{color:var(--pane-muted);border-top:1px solid var(--pane-hair);border-radius:0;width:100%;margin:0;padding:12px 0;font-size:15px}.ask-seeds li:first-child .ask-seed{border-top:0}.ask-seed:hover,.ask-seed:focus-visible{color:var(--pane-ink);background:0 0}.ai-box{border-radius:18px}.ai-box textarea{font-size:15px}.ai-box textarea::placeholder{font-size:15px}.ai-chip{font-size:13px}.ai-dice,.ai-send{--ai-tile:40px}}@media (prefers-reduced-motion:reduce){.ask-badge{transition:none;animation:none}.ask-panel,.ask-panel.is-shown{transition-property:opacity;translate:0}.ask-edge{background-image:none;background-color:var(--edge-ring);animation:none}.ask-edge-bloom{display:none}.ask-panel,.ask-panel.is-shown,.ask-veil,.ask-veil.is-shown{transition-duration:.15s}.ask-badge:after{animation:none}.status-spin{opacity:1;animation:none}.ai-dice svg{transition:none;transform:none}.ai-greet h3,.ai-greet li{opacity:1;animation:none}}html.ai-open{scrollbar-gutter:stable;overflow:hidden}.pp{--pp-bg:var(--bg);--pp-surface:var(--card);--pp-ink:var(--fg);--pp-ink-mute:var(--fg-dim);--pp-ink-faint:color-mix(in srgb, var(--fg) 38%, transparent);--pp-line:var(--line);--pp-accent:#5ed29c;--pp-ph-bg:color-mix(in srgb, var(--fg) 4%, transparent);--pp-ph-line:color-mix(in srgb, var(--fg) 18%, transparent);--pp-label-font:"JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, monospace;padding:40px 0 110px}[data-theme=light] .pp{--pp-accent:#1f7a55}.pp-section{margin-top:110px}.pp-section:first-child{margin-top:64px}.pp-ph,.pp-fig{width:100%;aspect-ratio:var(--ar,16/9);border-radius:18px}.pp-fig{-o-object-fit:cover;object-fit:cover;display:block}.pp-ph{background:var(--pp-ph-bg);border:1px dashed var(--pp-ph-line);place-items:center;display:grid;position:relative;overflow:hidden}.pp-ph.is-solid{border-style:solid;border-radius:22px}.pp-ph:before{content:"";opacity:.55;background:repeating-linear-gradient(135deg, transparent 0 14px, var(--pp-ph-bg) 14px 28px);position:absolute;inset:0}.pp-ph span{text-align:center;letter-spacing:.1em;text-transform:uppercase;color:var(--pp-ink-faint);padding:0 20px;font-size:.78rem;position:relative}.pp-eyebrow{font-family:var(--pp-label-font);letter-spacing:.1em;text-transform:uppercase;color:var(--pp-ink-faint);margin:0 0 14px;font-size:12.5px;font-weight:500}.pp-h{font-family:var(--serif);letter-spacing:-.01em;color:var(--pp-ink);margin:0 0 16px;font-size:clamp(26px,2.6vw,38px);font-weight:400;line-height:1.15}.pp-body{max-width:46ch;color:var(--pp-ink-mute);margin:0;font-size:16px;line-height:1.7}.pp-em{color:var(--pp-accent);font-style:normal}.pp-feature{grid-template-columns:1.15fr 1fr;align-items:center;gap:clamp(32px,5vw,84px);display:grid}.pp-feature.is-flip .pp-feature__fig{order:2}.pp-tags{flex-wrap:wrap;gap:8px;margin:22px 0 0;padding:0;list-style:none;display:flex}.pp-tags li{border:1px solid var(--pp-line);letter-spacing:.02em;color:var(--pp-ink-mute);border-radius:999px;padding:7px 13px;font-size:12.5px}.pp-panel{background:var(--pp-surface);border:1px solid var(--pp-line);border-radius:26px;padding:clamp(26px,4vw,56px)}.pp-panel__head{max-width:62ch;margin-bottom:30px}.pp-panel__head .pp-h{margin-bottom:0}.pp-notes{counter-reset:pp-note;grid-template-columns:repeat(3,1fr);gap:22px;margin:30px 0 0;padding:0;list-style:none;display:grid}.pp-notes li{counter-increment:pp-note;color:var(--pp-ink-mute);padding-left:40px;font-size:14.5px;line-height:1.6;position:relative}.pp-notes li:before{content:counter(pp-note);background:var(--pp-accent);width:26px;height:26px;color:var(--pp-bg);font-family:var(--pp-label-font);border-radius:50%;place-items:center;font-size:12.5px;font-weight:600;display:grid;position:absolute;top:-1px;left:0}.pp-pull{text-align:center;max-width:24ch;font-family:var(--serif);letter-spacing:-.01em;color:var(--pp-ink);margin:0 auto;font-size:clamp(28px,3.4vw,48px);font-weight:400;line-height:1.28}.pp-metrics{grid-template-columns:repeat(3,1fr);gap:clamp(24px,4vw,64px);display:grid}.pp-metric{border-top:1px solid var(--pp-line);flex-direction:column;gap:10px;padding-top:22px;display:flex}.pp-metric__value{font-family:var(--serif);color:var(--pp-ink);font-size:clamp(40px,4.4vw,64px);line-height:1}.pp-metric__label{color:var(--pp-ink-mute);max-width:26ch;font-size:14px;line-height:1.55}.pp-grid2{grid-template-columns:1fr 1fr;gap:clamp(20px,2.5vw,36px);display:grid}.pp-next{border-top:1px solid var(--pp-line);justify-content:space-between;align-items:flex-end;gap:24px;padding-top:44px;display:flex}.pp-next__link{color:inherit;border-radius:8px;text-decoration:none;display:block}.pp-next__link .pp-eyebrow{margin-bottom:10px}.pp-next__title{font-family:var(--serif);color:var(--pp-ink);font-size:clamp(28px,3.4vw,52px);line-height:1.1;transition:color .25s;display:block}.pp-next__link:hover .pp-next__title{color:var(--pp-ink-mute)}.pp-totop{appearance:none;border:1px solid var(--pp-line);font:500 13.5px/1 var(--sans);color:var(--pp-ink-mute);cursor:pointer;background:0 0;border-radius:999px;flex:none;padding:11px 18px;transition:color .2s,border-color .2s}.pp-totop:hover{color:var(--pp-ink);border-color:var(--pp-ink-faint)}.pp-next__link:focus-visible,.pp-totop:focus-visible{outline:2px solid color-mix(in srgb, var(--pp-ink) 60%, transparent);outline-offset:4px}@media (width<=900px){.pp-section{margin-top:72px}.pp-feature{grid-template-columns:1fr;gap:26px}.pp-feature.is-flip .pp-feature__fig{order:0}.pp-notes{grid-template-columns:1fr;gap:16px}.pp-metrics{grid-template-columns:1fr;gap:28px}.pp-grid2{grid-template-columns:1fr}.pp-next{flex-direction:column;align-items:flex-start}}.pp-pill{font:400 15px/1 var(--serif);color:var(--fg);border:1px solid var(--line-strong);border-radius:999px;margin-bottom:34px;padding:12px 20px;display:inline-block}.feat{grid-template-columns:1.15fr .85fr;align-items:center;gap:56px;margin-top:96px;display:grid}.shot{aspect-ratio:4/3;border:1px solid var(--line);background:#e9e7e2;border-radius:24px;position:relative;overflow:hidden}.shot picture{display:contents}.shot img{-o-object-fit:cover;object-fit:cover;-o-object-position:var(--pos,50% 50%);object-position:var(--pos,50% 50%);width:100%;height:100%;transition:scale 1.4s cubic-bezier(.2,.8,.2,1);display:block;position:absolute;inset:0}.shot:hover img{scale:1.035}.shot:after{content:"";border-radius:inherit;box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--fg) 8%, transparent);pointer-events:none;position:absolute;inset:0}.f-ico--line{fill:none;stroke:currentColor;stroke-width:var(--ico-sw,1.5);stroke-linecap:round;stroke-linejoin:round}.shot--wall{background:var(--card)}.shot--wall:before{content:"";background:radial-gradient(60% 55% at 50% 50%, color-mix(in srgb, var(--fg) 6%, transparent), transparent 70%);position:absolute;inset:0}.bw{grid-template-columns:repeat(5,1fr);gap:34px 16px;width:138%;padding:0;display:grid;position:absolute;top:50%;left:50%;translate:-50% -50%}.feat--flip{grid-template-columns:.85fr 1.15fr}.feat:first-of-type{margin-top:0}.feat--flip .feat__media{order:2}.feat__text{padding:12px 8px}.f-ico{width:40px;height:40px;color:var(--fg);margin-bottom:18px;display:block}.feat__text h3{font:400 clamp(24px, 2.6vw, 34px)/1.15 var(--serif);letter-spacing:-.01em;text-wrap:balance}.feat__text p{color:var(--fg-dim);text-wrap:pretty;max-width:44ch;margin-top:14px;font-size:16px;line-height:1.7}.bw__b{text-align:center;animation:6s ease-in-out infinite bob;animation-delay:calc(var(--i) * -.7s);margin:0}.bw__b img{filter:drop-shadow(0 14px 24px #00000080);width:78%;height:auto;margin:0 auto;display:block;position:static;inset:auto}.bw__b figcaption{letter-spacing:.1em;text-transform:uppercase;color:var(--fg-dim);margin-top:12px;font:11px/1.2 ui-monospace,Menlo,monospace}@keyframes bob{0%,to{translate:0}50%{translate:0 -6px}}.arch3__h{font:400 clamp(30px, 3.2vw, 44px)/1.08 var(--serif);letter-spacing:-.02em}.arch3__h em{color:var(--fg-dim);font-style:italic}.arch3__p{color:var(--fg-dim);text-wrap:pretty;max-width:none;margin-top:20px;font-size:17px;line-height:1.7}.arch3__scene{margin-top:28px}.marq__label{font:400 17px/1 var(--serif);color:var(--fg);margin-top:44px}.marq{border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-top:16px;padding:26px 0;overflow:hidden;-webkit-mask:linear-gradient(90deg,#0000,#000 14% 86%,#0000);mask:linear-gradient(90deg,#0000,#000 14% 86%,#0000)}.marq__track{gap:56px;width:max-content;list-style:none;animation:38s linear infinite marq;display:flex}.marq:hover .marq__track{animation-play-state:paused}.marq__track li{color:var(--fg);white-space:nowrap;align-items:center;gap:12px;display:flex}.marq__lg{opacity:.9;width:26px;height:26px;color:var(--fg);-webkit-mask:var(--mark) center / contain no-repeat;-webkit-mask:var(--mark) center / contain no-repeat;mask:var(--mark) center / contain no-repeat;background:currentColor;flex:none}.marq__track span:not(.marq__lg){font:500 14px/1 var(--sans);color:var(--fg-dim)}@keyframes marq{to{translate:-50%}}.wall{grid-template-columns:repeat(3,1fr);gap:48px 40px;display:grid}.lcard{background:0 0;border:0;border-radius:0;padding:0}.lcard__head{display:block}.lcard__head h4{font:400 22px/1.25 var(--serif);text-wrap:balance}.lcard p{color:var(--fg-dim);text-wrap:pretty;max-width:52ch;margin-top:14px;font-size:15px;line-height:1.7}.cta{border-top:1px dashed var(--line-strong);border-bottom:1px dashed var(--line-strong);grid-template-columns:1fr auto;align-items:center;gap:48px;margin-top:120px;padding:52px 0;display:grid}.cta__line{font:400 clamp(30px, 3.2vw, 44px)/1.1 var(--serif);letter-spacing:-.02em;max-width:16ch}.cta__line em{color:var(--fg-dim);font-style:italic}.cta__sub{color:var(--fg-dim);text-wrap:pretty;max-width:46ch;margin-top:14px;font-size:17px;line-height:1.55}.pp--case .btn{background:var(--fg);color:var(--bg);font:500 15px/1 var(--sans);white-space:nowrap;border-radius:999px;align-items:center;gap:10px;margin-bottom:10px;padding:16px 24px;display:inline-flex}.nextcard{border:1px solid var(--line);background:var(--card);border-radius:24px;grid-template-columns:.9fr 1.1fr;gap:0;min-height:300px;margin-top:0;transition:border-color .3s;display:grid;overflow:hidden}.nextcard:hover{border-color:var(--line-strong)}.nextcard__text{flex-direction:column;justify-content:center;padding:48px 52px;display:flex}.nextcard h3{font:400 clamp(30px, 3.6vw, 48px)/1.1 var(--serif);text-wrap:balance;margin-top:14px}.nextcard__blurb{color:var(--fg-dim);text-wrap:pretty;max-width:40ch;margin-top:12px;font-size:16px;line-height:1.6}.nextcard__cta{font:500 14px/1 var(--sans);color:var(--fg);align-items:center;gap:10px;margin-top:26px;display:inline-flex}.nextcard__cta i{font-style:normal;transition:translate .3s}.nextcard:hover .nextcard__cta i{translate:6px}.nextcard__media{background:color-mix(in srgb, var(--fg) 3%, var(--bg));position:relative;overflow:hidden}.nextcard__media img{border:1px solid var(--line-strong);filter:brightness(.55)saturate(.8);border-radius:12px 0 0;width:auto;max-width:none;height:100%;transition:translate .5s cubic-bezier(.2,.8,.2,1),filter .5s;position:absolute;top:16%;left:12%;box-shadow:0 30px 80px #0009}.nextcard:hover .nextcard__media img,.nextcard:focus-visible .nextcard__media img{filter:none}.nextcard:hover .nextcard__media img{translate:-10px -10px}.nextcard__cta{opacity:.75;transition:opacity .3s}.nextcard:hover .nextcard__cta,.nextcard:focus-visible .nextcard__cta{opacity:1}.iso-wrap{--iso-face-t:color-mix(in srgb, var(--fg) 9%, var(--bg));--iso-face-l:color-mix(in srgb, var(--fg) 5%, var(--bg));--iso-face-r:color-mix(in srgb, var(--fg) 2%, var(--bg))}.iso{width:100%;height:auto;display:block;overflow:visible}.iso .ring{fill:none;stroke:var(--fg);opacity:.06;stroke-width:1px}.iso .grid{stroke:var(--fg);opacity:.05;stroke-width:1px}.iso .f-t{fill:var(--iso-face-t)}.iso .f-l{fill:var(--iso-face-l)}.iso .f-r{fill:var(--iso-face-r)}.iso .f-linen{fill:url(#linen)}.iso .f-paper{fill:#eee9de}.iso .f-frame{fill:color-mix(in srgb, var(--fg) 6%, var(--bg))}.iso .f-inner{fill:none;stroke:var(--fg);opacity:.55;stroke-width:1px}.iso .orn{fill:var(--fg)}.iso .blk polygon{stroke:var(--fg);stroke-opacity:.55;stroke-width:1px;stroke-linejoin:round}.iso .blk--frame polygon{stroke-opacity:.9}.iso .eng{letter-spacing:.14em;fill:var(--fg);fill-opacity:.82;font-family:ui-monospace,Menlo,monospace}.iso .tick,.iso .slot{stroke:var(--fg);stroke-opacity:.35;stroke-width:1px}.iso .glyph{fill:none;stroke:var(--fg);stroke-opacity:.7;stroke-width:1px}.iso .mark{fill:var(--fg);fill-opacity:.14;stroke:var(--fg);stroke-opacity:.8;stroke-width:1px;stroke-linejoin:round}.iso .guide{stroke:var(--fg);stroke-opacity:.22;stroke-width:1px;stroke-dasharray:2 5}.iso .cyl .c-side{fill:var(--iso-face-l);stroke:var(--fg);stroke-opacity:.55;stroke-width:1px}.iso .cyl .c-top{fill:var(--iso-face-t);stroke:var(--fg);stroke-opacity:.6;stroke-width:1px}.iso .shade{fill:#00000073}.iso .wire{fill:none;stroke:var(--fg);stroke-opacity:.22;stroke-width:1px;stroke-dasharray:2 5}.iso .lead{fill:none;stroke:var(--fg);stroke-width:1px;stroke-dasharray:3 4}.iso .ldot{fill:var(--fg)}.iso .cbox{fill:var(--bg);stroke:var(--fg);stroke-width:1px}.iso .ctxt{font:500 13px var(--sans);fill:var(--fg)}.iso .cnum{font:600 13px var(--sans);fill:var(--bg)}.iso #hatch line,.iso #linen path{stroke:var(--fg);opacity:.14}.iso .rise,.iso .bob,.iso .pop{animation:none}.iso .layer{--y:40px}.is-in .iso .rise{animation:1.1s cubic-bezier(.2,.8,.2,1) both iso-rise;animation-delay:var(--d,0s)}.is-in .iso .bob{animation:1.1s cubic-bezier(.2,.8,.2,1) both iso-rise,5s ease-in-out infinite iso-bob;animation-delay:var(--d,0s), calc(var(--d,0s) + 1.1s + var(--b,0s))}.is-in .iso .pop{animation:.5s ease-out both iso-pop;animation-delay:var(--d,0s)}.iso .pulse{fill:none;stroke:var(--fg);stroke-width:1.6px;stroke-linecap:round;stroke-dasharray:34 260;stroke-dashoffset:294px}.is-in .iso .pulse{animation:2.6s linear infinite iso-pulse}.iso .pulse--glow{stroke-width:7px;opacity:.22;filter:blur(2px)}@keyframes iso-rise{0%{opacity:0;transform:translateY(var(--y,28px))}to{opacity:1;transform:none}}@keyframes iso-bob{0%,to{transform:translateY(0)}50%{transform:translateY(-7px)}}@keyframes iso-pop{0%{opacity:0}to{opacity:1}}@keyframes iso-pulse{to{stroke-dashoffset:0}}@media (width<=900px){.feat{grid-template-columns:1fr;gap:28px;margin-top:56px}.feat--flip{grid-template-columns:1fr}.feat--flip .feat__media{order:0}.feat__text{padding:0}.bw{gap:24px 12px;width:150%}.bw__b img{width:72%}.wall{grid-template-columns:1fr;gap:40px}.cta{grid-template-columns:1fr;align-items:start;gap:28px;padding:40px 0}.cta__sub{margin-top:10px}.pp--case .btn{margin-bottom:0}.nextcard{grid-template-columns:1fr}.nextcard__text{padding:36px 28px}.nextcard__media{min-height:220px}.iso-wrap{margin-inline:calc(var(--gutter,20px) * -1);padding-inline:6px;overflow:hidden}}@media (width<=480px){.pp-pill{margin-bottom:24px}.bw{grid-template-columns:repeat(4,1fr);width:160%}.nextcard__text{padding:30px 22px}}@media (prefers-reduced-motion:reduce){.bw__b{animation:none}.shot img{transition:none}.marq__track{flex-wrap:wrap;width:auto;animation:none}.is-in .iso .rise,.is-in .iso .bob,.is-in .iso .pop{opacity:1;animation:none;transform:none}.is-in .iso .pulse{animation:none}.iso .pulse{stroke-dasharray:none;stroke-dashoffset:0;opacity:.5}.nextcard__cta i{transition:none}.nextcard__media img{transition:filter .5s}.nextcard:hover .nextcard__media img{translate:none}}
