/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){:root,:host{--shimmer-angle:20deg}*,:before,:after{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-duration:initial;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-animation-delay:0s;--tw-animation-direction:normal;--tw-animation-duration:initial;--tw-animation-fill-mode:none;--tw-animation-iteration-count:1;--tw-enter-blur:0;--tw-enter-opacity:1;--tw-enter-rotate:0;--tw-enter-scale:1;--tw-enter-translate-x:0;--tw-enter-translate-y:0;--tw-exit-blur:0;--tw-exit-opacity:1;--tw-exit-rotate:0;--tw-exit-scale:1;--tw-exit-translate-x:0;--tw-exit-translate-y:0;--scroll-fade-t:0px;--scroll-fade-b:0px;--scroll-fade-s:0px;--scroll-fade-e:0px;--scroll-fade-mask:initial;--shimmer-image:initial;--shimmer-text-fill:initial}::backdrop{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-duration:initial;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-animation-delay:0s;--tw-animation-direction:normal;--tw-animation-duration:initial;--tw-animation-fill-mode:none;--tw-animation-iteration-count:1;--tw-enter-blur:0;--tw-enter-opacity:1;--tw-enter-rotate:0;--tw-enter-scale:1;--tw-enter-translate-x:0;--tw-enter-translate-y:0;--tw-exit-blur:0;--tw-exit-opacity:1;--tw-exit-rotate:0;--tw-exit-scale:1;--tw-exit-translate-x:0;--tw-exit-translate-y:0;--scroll-fade-t:0px;--scroll-fade-b:0px;--scroll-fade-s:0px;--scroll-fade-e:0px;--scroll-fade-mask:initial;--shimmer-image:initial;--shimmer-text-fill:initial}}}@layer theme{:root,:host{--color-black:#000;--spacing:.25rem;--container-sm:24rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-base:1rem;--text-base--line-height:calc(1.5 / 1);--font-weight-medium:500;--radius-md:.375rem;--radius-lg:.5rem;--radius-xl:.75rem;--blur-xs:4px;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-geist-sans);--default-mono-font-family:var(--font-geist-mono)}}@layer base{*,:after,:before{box-sizing:border-box;border:0 solid;margin:0;padding:0}::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){-webkit-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.static{position:static}.inset-0{inset:calc(var(--spacing) * 0)}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.top-1\/2{top:50%}.top-2{top:calc(var(--spacing) * 2)}.right-2{right:calc(var(--spacing) * 2)}.left-1\/2{left:50%}.isolate{isolation:isolate}.z-50{z-index:50}.-mx-4{margin-inline:calc(var(--spacing) * -4)}.-mb-4{margin-bottom:calc(var(--spacing) * -4)}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline-flex{display:inline-flex}.size-6{width:calc(var(--spacing) * 6);height:calc(var(--spacing) * 6)}.size-7{width:calc(var(--spacing) * 7);height:calc(var(--spacing) * 7)}.size-8{width:calc(var(--spacing) * 8);height:calc(var(--spacing) * 8)}.size-9{width:calc(var(--spacing) * 9);height:calc(var(--spacing) * 9)}.h-6{height:calc(var(--spacing) * 6)}.h-7{height:calc(var(--spacing) * 7)}.h-8{height:calc(var(--spacing) * 8)}.h-9{height:calc(var(--spacing) * 9)}.w-full{width:100%}.max-w-\[calc\(100\%-2rem\)\]{max-width:calc(100% - 2rem)}.shrink-0{flex-shrink:0}.grow{flex-grow:1}.-translate-x-1\/2{--tw-translate-x:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.-translate-y-1\/2{--tw-translate-y:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.items-center{align-items:center}.justify-center{justify-content:center}.gap-1{gap:calc(var(--spacing) * 1)}.gap-1\.5{gap:calc(var(--spacing) * 1.5)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-4{gap:calc(var(--spacing) * 4)}.rounded-\[min\(var\(--radius-md\)\,10px\)\]{border-radius:min(var(--radius-md), 10px)}.rounded-\[min\(var\(--radius-md\)\,12px\)\]{border-radius:min(var(--radius-md), 12px)}.rounded-lg{border-radius:var(--radius-lg)}.rounded-xl{border-radius:var(--radius-xl)}.rounded-b-xl{border-bottom-right-radius:var(--radius-xl);border-bottom-left-radius:var(--radius-xl)}.border{border-style:var(--tw-border-style);border-width:1px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-border{border-color:var(--border)}.border-transparent{border-color:#0000}.bg-background{background-color:var(--background)}.bg-black\/10{background-color:#0000001a}@supports (color:color-mix(in lab, red, red)){.bg-black\/10{background-color:color-mix(in oklab, var(--color-black) 10%, transparent)}}.bg-muted\/50{background-color:var(--muted)}@supports (color:color-mix(in lab, red, red)){.bg-muted\/50{background-color:color-mix(in oklab, var(--muted) 50%, transparent)}}.bg-primary{background-color:var(--primary)}.bg-clip-padding{background-clip:padding-box}.p-4{padding:calc(var(--spacing) * 4)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-2\.5{padding-inline:calc(var(--spacing) * 2.5)}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\[0\.8rem\]{font-size:.8rem}.leading-none{--tw-leading:1;line-height:1}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.whitespace-nowrap{white-space:nowrap}.text-muted-foreground{color:var(--muted-foreground)}.text-primary{color:var(--primary)}.text-primary-foreground{color:var(--primary-foreground)}.underline-offset-4{text-underline-offset:4px}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.ring,.ring-1{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring-foreground\/10{--tw-ring-color:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.ring-foreground\/10{--tw-ring-color:color-mix(in oklab, var(--foreground) 10%, transparent)}}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.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-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-100{--tw-duration:.1s;transition-duration:.1s}.outline-none{--tw-outline-style:none;outline-style:none}.select-none{-webkit-user-select:none;user-select:none}.paused{animation-play-state:paused}.running{animation-play-state:running}@media (hover:hover){.hover\:bg-\[color-mix\(in_oklch\,var\(--secondary\)\,var\(--foreground\)_5\%\)\]:hover{background-color:var(--secondary)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-\[color-mix\(in_oklch\,var\(--secondary\)\,var\(--foreground\)_5\%\)\]:hover{background-color:color-mix(in oklch,var(--secondary),var(--foreground) 5%)}}.hover\:bg-muted:hover{background-color:var(--muted)}.hover\:bg-primary\/80:hover{background-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-primary\/80:hover{background-color:color-mix(in oklab, var(--primary) 80%, transparent)}}.hover\:text-foreground:hover{color:var(--foreground)}.hover\:underline:hover{text-decoration-line:underline}}.focus-visible\:border-ring:focus-visible{border-color:var(--ring)}.focus-visible\:ring-3:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.focus-visible\:ring-ring\/50:focus-visible{--tw-ring-color:var(--ring)}@supports (color:color-mix(in lab, red, red)){.focus-visible\:ring-ring\/50:focus-visible{--tw-ring-color:color-mix(in oklab, var(--ring) 50%, transparent)}}.active\:not-aria-\[haspopup\]\:translate-y-px:active:not([aria-haspopup]){--tw-translate-y:1px;translate:var(--tw-translate-x) var(--tw-translate-y)}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:opacity-50:disabled{opacity:.5}:where([data-slot=button-group]) .in-data-\[slot\=button-group\]\:rounded-lg{border-radius:var(--radius-lg)}.has-data-\[icon\=inline-end\]\:pr-1\.5:has([data-icon=inline-end]){padding-right:calc(var(--spacing) * 1.5)}.has-data-\[icon\=inline-end\]\:pr-2:has([data-icon=inline-end]){padding-right:calc(var(--spacing) * 2)}.has-data-\[icon\=inline-start\]\:pl-1\.5:has([data-icon=inline-start]){padding-left:calc(var(--spacing) * 1.5)}.has-data-\[icon\=inline-start\]\:pl-2:has([data-icon=inline-start]){padding-left:calc(var(--spacing) * 2)}.aria-expanded\:bg-muted[aria-expanded=true]{background-color:var(--muted)}.aria-expanded\:text-foreground[aria-expanded=true]{color:var(--foreground)}.aria-invalid\:ring-3[aria-invalid=true]{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}@supports ((-webkit-backdrop-filter:var(--tw)) or (backdrop-filter:var(--tw))){.supports-backdrop-filter\:backdrop-blur-xs{--tw-backdrop-blur:blur(var(--blur-xs));-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}}@media (min-width:40rem){.sm\:max-w-sm{max-width:var(--container-sm)}.sm\:flex-row{flex-direction:row}.sm\:justify-end{justify-content:flex-end}}@media (hover:hover){.dark\:hover\:bg-muted\/50:is(.dark *):hover{background-color:var(--muted)}@supports (color:color-mix(in lab, red, red)){.dark\:hover\:bg-muted\/50:is(.dark *):hover{background-color:color-mix(in oklab, var(--muted) 50%, transparent)}}}.data-open\:animate-in:where([data-state=open]),.data-open\:animate-in:where([data-open]:not([data-open=false])){animation:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.data-open\:fade-in-0:where([data-state=open]),.data-open\:fade-in-0:where([data-open]:not([data-open=false])){--tw-enter-opacity:0}.data-open\:zoom-in-95:where([data-state=open]),.data-open\:zoom-in-95:where([data-open]:not([data-open=false])){--tw-enter-scale:.95}.data-closed\:animate-out:where([data-state=closed]),.data-closed\:animate-out:where([data-closed]:not([data-closed=false])){animation:exit var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.data-closed\:fade-out-0:where([data-state=closed]),.data-closed\:fade-out-0:where([data-closed]:not([data-closed=false])){--tw-exit-opacity:0}.data-closed\:zoom-out-95:where([data-state=closed]),.data-closed\:zoom-out-95:where([data-closed]:not([data-closed=false])){--tw-exit-scale:.95}.\[\&_svg\]\:pointer-events-none svg{pointer-events:none}.\[\&_svg\]\:shrink-0 svg{flex-shrink:0}.\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-3 svg:not([class*=size-]){width:calc(var(--spacing) * 3);height:calc(var(--spacing) * 3)}.\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-3\.5 svg:not([class*=size-]){width:calc(var(--spacing) * 3.5);height:calc(var(--spacing) * 3.5)}.\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-4 svg:not([class*=size-]){width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}:is(.\*\:\[a\]\:underline>*):is(a){text-decoration-line:underline}:is(.\*\:\[a\]\:underline-offset-3>*):is(a){text-underline-offset:3px}@media (hover:hover){:is(.\*\:\[a\]\:hover\:text-foreground>*):is(a):hover{color:var(--foreground)}}}@property --tw-animation-delay{syntax:"*";inherits:false;initial-value:0s}@property --tw-animation-direction{syntax:"*";inherits:false;initial-value:normal}@property --tw-animation-duration{syntax:"*";inherits:false}@property --tw-animation-fill-mode{syntax:"*";inherits:false;initial-value:none}@property --tw-animation-iteration-count{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-blur{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-opacity{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-rotate{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-scale{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-blur{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-opacity{syntax:"*";inherits:false;initial-value:1}@property --tw-exit-rotate{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-scale{syntax:"*";inherits:false;initial-value:1}@property --tw-exit-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-translate-y{syntax:"*";inherits:false;initial-value:0}@property --scroll-fade-t{syntax:"<length-percentage>";inherits:false;initial-value:0}@property --scroll-fade-b{syntax:"<length-percentage>";inherits:false;initial-value:0}@property --scroll-fade-s{syntax:"<length-percentage>";inherits:false;initial-value:0}@property --scroll-fade-e{syntax:"<length-percentage>";inherits:false;initial-value:0}@property --scroll-fade-mask{syntax:"*";inherits:false}@property --shimmer-angle{syntax:"<angle>";inherits:true;initial-value:20deg}@property --shimmer-image{syntax:"*";inherits:false}@property --shimmer-text-fill{syntax:"*";inherits:false}@media (prefers-reduced-motion:reduce){.shimmer{-webkit-text-fill-color:currentColor;background-image:none;animation:none}}:root,.dark{--background:#121414;--foreground:#f5f6ef;--card:#1b1e1d;--card-foreground:#f5f6ef;--primary:#d3fa71;--primary-foreground:#121414;--muted:#272b28;--muted-foreground:#a7ada8;--border:#343934;--ring:#d3fa71;--accent:#d3fa71;--accent-foreground:#121414;--radius:.75rem}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:2rem}body{background:var(--background);color:var(--foreground);font-family:var(--font-geist-sans), Arial, sans-serif;margin:0;font-size:16px;line-height:1.5}a{color:inherit;text-decoration:none}button,a{-webkit-tap-highlight-color:transparent}:is(a:focus-visible,button:focus-visible){outline:2px solid var(--primary);outline-offset:6px}main{max-width:1600px;margin:auto;padding:0 4.3%}.site-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:20px;height:104px;display:flex}.wordmark{letter-spacing:-1.3px;align-items:center;gap:5px;font-size:25px;font-weight:760;display:inline-flex}.wordmark>span:not(.brand-icon):not(.brand-dot){font-weight:400}.brand-icon{width:38px;height:38px;color:var(--background);background:var(--primary);letter-spacing:-3px;border-radius:11px;justify-content:center;align-items:center;margin-right:8px;padding-right:3px;font-size:23px;display:inline-flex}.brand-dot{align-self:start;margin-top:4px;font-size:12px}.header-note,.eyebrow{font-family:var(--font-geist-mono), monospace;letter-spacing:1.2px;font-size:12px}.header-note{color:#a7ada8}.header-link{align-items:center;gap:12px;font-size:14px;display:flex}.header-link:hover{color:var(--primary)}.intro{justify-content:space-between;align-items:flex-end;gap:40px;padding:54px 0 48px;display:flex}.eyebrow{color:#b9c0b9;margin:0}.live-dot{background:var(--primary);vertical-align:2px;border-radius:50%;width:6px;height:6px;margin-right:9px;display:inline-block}h1{letter-spacing:-4px;margin:22px 0 0;font-size:clamp(42px,5.2vw,77px);font-weight:540;line-height:1.03;position:relative}h1>span{color:var(--primary)}.intro-star{width:72px;height:72px;color:var(--primary);stroke-width:1.3px;position:absolute;bottom:0;right:-88px}.intro-note{color:#abb2ac;max-width:320px;margin:0 0 4px;font-size:16px;line-height:1.7}.section-heading{border-top:1px solid var(--border);justify-content:space-between;align-items:center;gap:20px;margin:0 0 24px;padding-top:24px;display:flex}h2{margin:0;font-size:18px;font-weight:500}h2>span{color:var(--primary);margin-left:12px}.project-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px;display:grid}.project-card{border:1px solid var(--border);background:var(--card);border-radius:13px;min-width:0;overflow:hidden}.project-visual{aspect-ratio:1.85;background:#242c23;position:relative;overflow:hidden}.text-visual{justify-content:space-between;align-items:flex-end;padding:32px;display:flex}.visual-index{font:12px var(--font-geist-mono);opacity:.7;position:absolute;top:24px;left:28px}.visual-title{letter-spacing:-2px;max-width:75%;font-size:40px;font-weight:550;line-height:1.1}.stars .project-visual{color:#f5f1dc;background:#223c40}.yoink .project-visual{color:#42253c;background:#e8a2c4}.project-content{padding:22px 26px 26px}.project-category{color:#bac1ba;text-transform:uppercase;font:12px var(--font-geist-mono);letter-spacing:1px}h3{letter-spacing:-.7px;margin:9px 0 5px;font-size:24px;font-weight:550}.project-content p{color:#aab1ab;margin:0;font-size:16px}footer{border-top:1px solid var(--border);justify-content:space-between;align-items:center;gap:24px;margin-top:58px;padding:35px 0;display:flex}footer p,footer>span{color:#a7ada8;font-size:12px}footer .wordmark{font-size:21px}footer svg{margin-left:15px}::selection{color:#121414;background:#d3fa71}@media (max-width:1000px){.header-note{display:none}.intro{display:block}.intro-note{max-width:unset;margin-top:28px}.intro-note br{display:none}.intro-star{bottom:5px;right:0}h1{max-width:650px}.project-grid{gap:20px}}@media (max-width:600px){main{padding:0 6%}.site-header{height:80px}.wordmark{font-size:21px}.brand-icon{width:33px;height:33px;font-size:20px}.header-link{gap:6px;font-size:12px}.intro{padding:36px 0}h1{letter-spacing:-2px;font-size:42px}.intro-star{display:none}.intro-note{font-size:16px}.section-heading>.eyebrow{display:none}.project-grid{grid-template-columns:1fr}.project-content{padding:20px}.visual-title{font-size:34px}footer{flex-wrap:wrap;align-items:flex-start;margin-top:36px}footer p{order:3;width:100%;margin:0}footer>span{margin-left:auto}.text-visual{padding:25px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important;animation:none!important}}.skip-link{z-index:50;background:var(--primary);color:var(--background);border-radius:6px;padding:12px 18px;position:fixed;top:12px;left:12px;transform:translateY(-200%)}.skip-link:focus{transform:translateY(0)}.library-bar{border-top:1px solid var(--border);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:20px;padding:22px 0;display:flex}.library-bar>div{align-items:center;gap:12px;display:flex}.library-label{font-size:16px;font-weight:520}.total-count{font:12px var(--font-geist-mono);color:var(--primary);border:1px solid #485244;border-radius:5px;padding:4px 6px}.library-bar nav{gap:28px;display:flex}.library-bar nav a{color:#d3d8d1;padding:5px 0;font-size:14px}.library-bar nav a:hover{color:var(--primary)}.library-bar nav span{font:12px var(--font-geist-mono);color:#9ba899;margin-left:6px}.project-section{padding-top:31px;scroll-margin-top:16px}.project-section+.project-section{padding-top:42px}.section-heading{border:0;margin:0 0 18px;padding:0}.section-heading h2{align-items:center;gap:11px;font-size:17px;display:flex}.section-heading h2 svg{color:var(--primary)}.section-heading p{color:#aab1ab;margin:0;font-size:14px}.section-games .project-grid,.section-experiments .project-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.project-card{border-radius:10px;flex-direction:column;transition:border-color .2s;display:flex;position:relative}.project-card>a{outline-offset:3px;flex-direction:column;height:100%;display:flex}.project-card:has(a):hover{border-color:#839d67}.project-card>a:focus-visible{outline-offset:-3px;outline:3px solid var(--primary)}.project-content{flex-direction:column;flex:1;display:flex}.card-meta{justify-content:space-between;align-items:center;gap:12px;display:flex}.project-category{letter-spacing:.6px;font-size:11px}.status{white-space:nowrap;color:#c5bda6;align-items:center;gap:5px;font-size:12px;display:inline-flex}.status>span{background:currentColor;border-radius:50%;width:5px;height:5px;display:inline-block}.status.is-live{color:#c1e28e}.project-content h3{font-size:23px}.project-content p{line-height:1.65}.card-bottom{border-top:1px solid var(--border);color:var(--primary);justify-content:space-between;align-items:center;gap:16px;margin-top:auto;padding-top:15px;font-size:14px;display:flex}.project-content>p{margin-bottom:21px}.project-card:not(:has(a)) .card-bottom{color:#b3b9b1}.project-number{font:12px var(--font-geist-mono);color:#a9b39e}.image-visual>img{object-fit:cover;width:100%;height:100%;transition:transform .35s;display:block}.project-card:has(a):hover .image-visual>img{transform:scale(1.025)}.stars .image-visual{aspect-ratio:1.9;background:#101b1e}.stars .image-visual>img{object-fit:contain;z-index:1;width:62%;height:100%;margin-left:auto;position:relative}.stars-caption{z-index:2;position:absolute;bottom:12%;left:7%}.stars-caption>span{letter-spacing:-2px;font-size:clamp(27px,3vw,48px);font-weight:600;line-height:.94;display:block}.stars-caption small{font:9px var(--font-geist-mono);letter-spacing:1px;color:#c1c9c4;max-width:120px;margin-top:18px;line-height:1.6;display:block}.visual-link{z-index:3;color:var(--primary);background:#141914e8;border:1px solid #929c8a66;border-radius:50%;justify-content:center;align-items:center;width:37px;height:37px;display:flex;position:absolute;top:18px;right:18px}.text-visual{flex-direction:column;justify-content:center;align-items:flex-start;gap:26px;padding:27px 30px;display:flex}.poster-note{font:10px var(--font-geist-mono);letter-spacing:1px;opacity:.8}.poster-title{letter-spacing:-1.5px;z-index:1;font-size:clamp(26px,2.2vw,37px);font-weight:520;line-height:1.06}.poster-title>span{display:block}.poster-mark{opacity:.5;stroke-width:1.2px;width:49px;height:49px;position:absolute;bottom:18px;right:22px}.grogan .project-visual{color:#26342d;aspect-ratio:1.9;background:#d7dfcf}.grogan .poster-title{letter-spacing:-3px;font-family:Georgia,serif;font-size:clamp(38px,4vw,62px);font-weight:400}.grogan .poster-mark{display:none}.ghost .project-visual{color:#203f30;background:#bfeacb}.physics .project-visual{color:#1b2a4b;background:#abc0f1}.ostension .project-visual{color:#4c3024;background:#efbfa4}.section-experiments .project-visual{aspect-ratio:1.9}.section-experiments .poster-title{max-width:86%;font-size:29px}.section-experiments .poster-note{max-width:80%;font-size:9px}.yoink .project-visual{background:#fff8e5}.yoink .image-visual>img{object-fit:contain}.colophon{border-top:1px solid var(--border);color:var(--primary);align-items:center;gap:18px;margin-top:64px;padding-top:34px;display:flex}.colophon p{margin:0;font-size:16px;line-height:1.5}.colophon p>span{color:#b0b9ad}.colophon a{color:#b8c1b5;align-items:center;gap:10px;margin-left:auto;font-size:14px;display:flex}footer{margin-top:32px}footer .brand-dot{display:none}.brand-dot{color:var(--primary);margin-left:3px;font-size:16px}@media (max-width:1150px){.card-meta{flex-direction:column;align-items:flex-start;gap:8px}.section-games .project-grid,.section-experiments .project-grid{gap:20px}.project-content{padding:20px}.project-category{font-size:12px}.section-experiments .poster-title{font-size:26px}.section-experiments .project-visual{aspect-ratio:1.5}.text-visual{gap:20px;padding:22px}.poster-mark{width:35px;height:35px;bottom:16px;right:15px}}@media (max-width:850px){.section-games .project-grid,.section-experiments .project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.library-bar{flex-direction:column;align-items:flex-start;gap:17px}.library-bar nav{gap:28px;width:100%}.card-meta{flex-direction:row;align-items:center}.project-category{font-size:11px}.project-content h3{font-size:22px}.section-experiments .project-visual{aspect-ratio:1.75}.intro{padding:42px 0 35px}.stars-caption>span{font-size:28px}.stars-caption small{font-size:9px}}@media (max-width:600px){.project-grid,.section-games .project-grid,.section-experiments .project-grid{grid-template-columns:1fr}.library-bar nav{gap:20px}.library-bar nav a{font-size:14px}.library-bar nav span{margin-left:3px}.section-heading p{text-align:right;max-width:125px;font-size:12px}.section-heading h2{font-size:16px}.project-section{padding-top:25px}.project-section+.project-section{padding-top:34px}.card-meta{flex-direction:row}.project-category{font-size:11px}.project-content h3{font-size:24px}.stars-caption>span{font-size:32px}.grogan .poster-title{font-size:44px}.text-visual{padding:25px}.section-experiments .poster-title{font-size:32px}.section-experiments .project-visual{aspect-ratio:1.8}.poster-note,.section-experiments .poster-note{font-size:10px}.colophon{flex-wrap:wrap;align-items:flex-start;margin-top:40px}.colophon a{width:100%;margin-left:46px}}.rent-map .project-visual{color:#313853;background:#d0d5f0}.market-pulse .project-visual{color:#273922;background:#bacaab}.fries .project-visual{color:#722e20;background:#f1cb69}.troll .project-visual{color:#26392a;background:#bbd7bd}.section-websites .project-card:nth-child(n+3) .project-visual{aspect-ratio:2.5}.section-websites .project-card:nth-child(n+3) .poster-title{font-size:36px}.poster-note,.section-experiments .poster-note,.project-category{font-size:12px}.stars-caption small{letter-spacing:.5px;max-width:140px;font-size:12px}.header-note,.eyebrow{font-size:12px}.section-websites .project-card:first-child .project-visual{min-height:0}@media (max-width:1150px){.section-experiments .text-visual{min-height:220px}.poster-note,.section-experiments .poster-note,.project-category{font-size:12px}}@media (max-width:850px){.card-meta{flex-direction:column;align-items:flex-start;gap:8px}.section-websites .project-card:nth-child(n+3) .poster-title{font-size:29px}.stars-caption small{max-width:120px;font-size:12px}}@media (max-width:600px){.card-meta{flex-direction:row;align-items:center}.project-category{font-size:12px}.section-websites .project-card:nth-child(n+3) .project-visual{aspect-ratio:1.9}.section-experiments .text-visual{min-height:220px}.section-websites .project-card:nth-child(n+3) .poster-title{font-size:32px}}.ventana .project-visual{color:#373725;background:#d8c5a1}.section-experiments .project-card.physics .project-visual{background:#f8f9fc}.section-experiments .project-card.physics .project-visual>img{object-fit:cover}.section-featured .project-grid,.section-more .project-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.section-featured .project-visual,.section-more .project-visual{aspect-ratio:1.65}.section-featured .project-card .project-visual,.section-more .project-card .project-visual{min-height:230px}.section-featured .poster-title,.section-more .poster-title{font-size:30px}.section-more .grogan .poster-title{font-size:38px}.section-featured .stars-caption>span{font-size:32px}.section-featured .card-meta,.section-more .card-meta{flex-direction:column;align-items:flex-start;gap:8px}.section-featured .poster-note,.section-more .poster-note{max-width:90%}.section-more .poster-mark{width:38px;height:38px}.physics .project-visual>img{object-position:top}@media (max-width:1050px){.section-featured .project-grid,.section-more .project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:600px){.section-featured .project-grid,.section-more .project-grid{grid-template-columns:1fr}.section-featured .card-meta,.section-more .card-meta{flex-direction:row;align-items:center}.section-featured .project-card .project-visual,.section-more .project-card .project-visual{min-height:210px}.library-bar nav{gap:24px}}.media-frame{background:#121414;width:100%;height:100%;position:relative;overflow:hidden}.media-frame>img,.media-frame>video{object-fit:cover;width:100%;height:100%;display:block}.media-frame>video{opacity:0;position:absolute;inset:0}.media-frame>video[data-preview-ready=true]{opacity:1}.fieldstation .media-frame>img,.fieldstation .media-frame>video{object-fit:contain}.project-card button[data-slot=dialog-trigger]{cursor:pointer;text-align:inherit}.project-content h3 button[data-slot=dialog-trigger]:hover,.card-bottom>button[data-slot=dialog-trigger]:hover{color:var(--primary);text-underline-offset:4px;text-decoration:underline}.project-card:has(button[data-slot=dialog-trigger]) .card-bottom{color:var(--primary)}.project-demo-dialog[data-slot=dialog-content]{color:#edf4e6;background:#101712;border:1px solid #657450;gap:14px;width:calc(100vw - 24px);max-width:1000px;max-height:92dvh;padding:20px;overflow-y:auto;box-shadow:0 24px 100px #000b}.project-demo-heading{padding-right:30px}.project-demo-heading .eyebrow{margin:0 0 8px;font-size:12px}.project-demo-heading [data-slot=dialog-title]{margin-bottom:10px;font-size:26px}.project-demo-heading [data-slot=dialog-description]{color:#b7c3b0;max-width:85ch;font-size:14px;line-height:1.55}.project-demo-dialog video{object-fit:contain;background:#0b1116;border:1px solid #344437;border-radius:8px;width:100%;max-height:62dvh;display:block}.project-demo-caption{color:#b7c3b0;margin:0;font-size:13px;line-height:1.5}.preview-label{color:#e9efdf;font:11px var(--font-geist-mono);letter-spacing:.7px;pointer-events:none;background:#101712dc;border-radius:4px;padding:5px 8px;position:absolute;bottom:15px;left:14px}.preview-toggle{cursor:pointer;z-index:4;bottom:13px;right:14px;color:#e1f8c0!important;background:#142015ed!important;border:1px solid #b6cba44d!important;border-radius:50%!important;width:36px!important;height:36px!important;position:absolute!important}.preview-toggle:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.project-content h3 a:hover,.card-bottom>a:hover{color:var(--primary);text-underline-offset:4px;text-decoration:underline}.project-card .visual-link{flex-direction:row;width:37px;height:37px;display:flex}.stars .media-frame>img,.stars .media-frame>video{object-fit:cover;width:100%;margin:0}.physics .media-frame>img{object-position:top}.fries .media-frame{background:#f1cb69}.fries .media-frame>img{object-fit:contain;padding:20px}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (max-width:380px){.site-header{gap:10px}.wordmark{font-size:20px}.header-link{font-size:12px}.brand-icon{margin-right:4px}.library-bar nav{gap:16px}.library-bar nav a{font-size:13px}.card-meta{flex-wrap:wrap}.project-category{font-size:12px}.preview-label{font-size:10px}}.media-frame{position:absolute;inset:0}.project-visual{flex-shrink:0}.card-bottom{min-height:40px}.card-bottom>a{align-items:center;min-height:24px;display:inline-flex}.tanuki-brand-mark{background:var(--primary);flex:none;width:55px;height:55px;margin-left:7px;display:inline-block;-webkit-mask:url(/tanuki-mark-small.webp) 50%/contain no-repeat;mask:url(/tanuki-mark-small.webp) 50%/contain no-repeat}footer .tanuki-brand-mark{width:40px;height:40px}@media (max-width:600px){.tanuki-brand-mark{width:43px;height:43px;margin-left:3px}}.technical-rank{color:var(--primary);font:12px var(--font-geist-mono);margin-right:8px;display:inline-block}.rent-map .media-frame>img,.market-pulse .media-frame>img{object-position:center top}.neon-circuit{pointer-events:none;z-index:0;contain:strict;position:fixed;inset:0;overflow:hidden}.circuit-side{fill:none;color:#cfff73;width:clamp(14px,4vw,64px);height:100%;position:absolute;top:0;overflow:visible}.circuit-left{left:0}.circuit-right{color:#91bbff;right:0;transform:scaleX(-1)}.circuit-wire{stroke:currentColor;stroke-width:.65px;opacity:.13}.circuit-tracer{stroke:currentColor;stroke-width:1.5px;stroke-linecap:round;stroke-dasharray:65 1400;animation:8s linear infinite circuit-run}.circuit-glow{stroke-width:4px;filter:blur(5px);opacity:.75}.circuit-right .circuit-tracer{stroke-dasharray:95 1400;animation-duration:11s;animation-delay:-5s}.circuit-node{fill:currentColor;filter:drop-shadow(0 0 7px);animation:5s ease-in-out infinite circuit-breathe}.node-late{animation-delay:-2.7s}.neon-horizon{opacity:.2;width:90%;height:1px;position:absolute;top:28%;left:5%;transform:perspective(450px)rotateY(-12deg)}.neon-horizon i{filter:blur(.3px);background:linear-gradient(90deg,#0000 5%,#cfff7333 30%,#cfff73 50%,#91bbff33 70%,#0000 95%);animation:15s ease-in-out infinite horizon-drift;position:absolute;inset:0;transform:scaleX(.25)}.neon-horizon i:nth-child(2){filter:blur(9px);opacity:.5;height:7px;top:-3px}.neon-horizon i:nth-child(3){opacity:.3;animation-delay:-7s;top:8px}.is-paused *{animation-play-state:paused!important}.ambient-toggle{z-index:15;color:#d3fa71;font:10px var(--font-geist-mono);letter-spacing:.06em;cursor:pointer;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#121414e8;border:1px solid #cfff7340;border-radius:30px;padding:7px 12px;position:fixed;bottom:16px;right:18px}.ambient-toggle:hover{border-color:#cfff73}.ambient-toggle:focus-visible{outline-offset:4px;outline:2px solid #d3fa71}@keyframes circuit-run{0%{stroke-dashoffset:300px}to{stroke-dashoffset:-1165px}}@keyframes circuit-breathe{0%,to{opacity:.18}50%{opacity:.85}}@keyframes horizon-drift{0%,to{opacity:0;transform:translate(-25%)scaleX(.25)}30%,70%{opacity:1}50%{transform:translate(25%)scaleX(.5)}}main{z-index:1;position:relative}@media (prefers-reduced-motion:reduce){.neon-circuit *{animation:none!important}.circuit-tracer{opacity:.25}.ambient-toggle,.neon-horizon{display:none}}@media (max-width:650px){.circuit-side{opacity:.6;width:12px}.neon-horizon{display:none}.ambient-toggle{padding:6px 9px;font-size:9px;bottom:10px;right:10px}}.film-section{border-top:1px solid var(--border);margin-top:55px;padding:55px 0 30px;position:relative}.film-section:before{content:"";background:linear-gradient(90deg,#0000,#d3fa71,#0000);width:25%;height:1px;position:absolute;top:-1px;left:0;box-shadow:0 0 16px #d3fa7155}.film-heading{justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:28px;display:flex}.film-heading h2{letter-spacing:-.055em;margin:14px 0 0;font-size:clamp(32px,4vw,58px);font-weight:550;line-height:1.05}.film-heading>p{color:var(--muted-foreground);font-size:13px;line-height:1.8}.film-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:25px;display:grid}.film-card{border:1px solid var(--border);background:#1b1e1d;border-radius:12px;min-width:0;transition:border-color .2s;overflow:hidden}.film-card:hover{border-color:#a4c85b}.film-preview{aspect-ratio:16/9;background:#080b0b;position:relative;overflow:hidden}.film-preview .media-frame{height:100%}.film-preview video,.film-preview img{object-fit:contain;width:100%;height:100%}.film-open{text-align:left;width:100%;color:inherit;cursor:pointer;background:0 0;border:0;align-items:center;gap:15px;padding:21px;display:flex}.film-open strong{letter-spacing:-.025em;font-size:22px;font-weight:550;display:block}.film-open small{color:var(--muted-foreground);margin-top:4px;font-size:12px;display:block}.film-number{color:var(--primary);font:10px var(--font-geist-mono);align-self:flex-start;margin-top:7px}.film-watch{white-space:nowrap;color:var(--primary);align-items:center;gap:6px;margin-left:auto;font-size:11px;display:flex}.film-dialog{color:#f5f6ef;background:#101312;border:1px solid #52633c;border-radius:16px;width:min(1100px,94vw);max-height:94dvh;padding:18px;box-shadow:0 0 90px #cfff7312}.film-dialog::backdrop{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#030807ed}.film-player-heading{justify-content:space-between;align-items:center;margin-bottom:14px;display:flex}.film-player-heading h2{margin:0;font-size:20px}.film-player-heading button{color:#fff;cursor:pointer;background:#283126;border:1px solid #46533e;border-radius:50%;padding:10px;display:flex}.film-dialog video{background:#000;width:100%;max-height:72dvh;display:block}.film-dialog>p{color:var(--primary);font:9px var(--font-geist-mono);letter-spacing:.13em;align-items:center;gap:8px;margin:15px 0 0;display:flex}@media (max-width:650px){.film-grid{grid-template-columns:1fr;gap:18px}.film-heading{display:block}.film-heading>p{margin-top:20px}.film-open{gap:10px;padding:16px}.film-open strong{font-size:21px}.film-watch{font-size:10px}.film-section{margin-top:30px;padding-top:30px}}.section-more .fieldstation .project-visual,.section-featured .fieldstation .project-visual{aspect-ratio:1;min-height:0}.dashboard-demo{max-width:1440px;margin:0 auto;padding:32px clamp(18px,4vw,64px) 64px}.demo-back{color:var(--primary);font-size:13px;text-decoration:none}.demo-title{margin:42px 0 24px}.demo-title h1{letter-spacing:-.055em;margin:12px 0;font-size:clamp(40px,6vw,76px);line-height:1.05}.demo-title>p:last-child{color:var(--muted-foreground)}.dashboard-demo>video{background:#0a1015;border:1px solid #405249;border-radius:12px;width:100%;max-height:80vh;display:block}.demo-caption{color:var(--muted-foreground);margin:14px 0 28px;font-size:12px}.demo-details{color:#b6c0b9;grid-template-columns:1fr 1fr;gap:32px;font-size:15px;line-height:1.8;display:grid}@media (max-width:650px){.demo-details{grid-template-columns:1fr;gap:0}.demo-title{margin-top:30px}}.library-bar nav{flex-wrap:wrap;row-gap:10px}.build-section{border-top:1px solid var(--border);margin-top:55px;padding:55px 0 0;scroll-margin-top:24px}.build-index{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.build-link{min-height:240px;color:inherit;background:radial-gradient(at 100% 0,#a9ce5620,#0000 60%),#171d19;border:1px solid #384239;border-radius:12px;flex-direction:column;padding:28px;text-decoration:none;transition:border-color .2s,transform .2s;display:flex}.build-link:hover{border-color:#cfff73;transform:translateY(-3px)}.build-number{font:10px var(--font-geist-mono);text-transform:uppercase;letter-spacing:.08em;color:#b3ca8b}.build-link h3{letter-spacing:-.04em;margin:24px 0 10px;font-size:30px;font-weight:550}.build-link p{color:#b5bdb6;max-width:40ch;margin:0 0 24px;font-size:14px;line-height:1.6}.build-read{color:#d3fa71;align-items:center;gap:9px;margin-top:auto;font-size:12px;display:flex}.commission-brief{border-top:1px solid #384139;border-bottom:1px solid #384139;grid-template-columns:110px minmax(0,1fr);gap:12px 25px;margin:0 0 30px;padding:22px 0;display:grid}.commission-brief>span:first-child{font:10px var(--font-geist-mono);color:#d3fa71;padding-top:5px}.commission-brief p{color:#c6cdc6;max-width:72ch;margin:0;font-size:15px;line-height:1.7}.commission-role{font:10px var(--font-geist-mono);color:#8f9b90;grid-column:2}.paid-section{scroll-margin-top:24px}.studies-page{max-width:1240px;margin:auto;padding:35px clamp(20px,5vw,64px) 65px}.studies-intro{padding:70px 0 40px}.studies-intro h1{letter-spacing:-.065em;margin:20px 0 28px;font-size:clamp(44px,7vw,88px);font-weight:550;line-height:.98}.studies-intro h1 span{color:#d3fa71}.studies-intro>p:last-child{color:#b4beb5;max-width:55ch;font-size:16px;line-height:1.8}.study-nav{flex-wrap:wrap;gap:12px;margin-bottom:45px;display:flex}.study-nav a{color:#dce9d0;border:1px solid #3c473d;border-radius:30px;padding:10px 14px;font-size:12px;text-decoration:none}.study-nav a:hover{border-color:#d3fa71}.study-detail{border-top:1px solid #3a453b;padding:50px 0 65px;scroll-margin-top:20px}.study-title h2{letter-spacing:-.05em;margin:12px 0;font-size:clamp(36px,5vw,60px);font-weight:550}.study-title>p:not(.eyebrow){color:#b6c2b7;max-width:60ch;font-size:17px;line-height:1.6}.study-state{font:10px var(--font-geist-mono);color:#c9dfaa;border:1px solid #44503c;border-radius:4px;margin:15px 0 25px;padding:7px 10px;display:inline-block}.study-visual{background:#111915;border:1px solid #3e483e;border-radius:14px;grid-template-columns:1.5fr 1fr;display:grid;overflow:hidden}.study-visual>img{object-fit:cover;width:100%;height:100%;min-height:290px;max-height:380px}.study-flow{background:radial-gradient(at 100% 0,#b9df6422,#0000);flex-direction:column;justify-content:center;padding:28px;display:flex}.flow-caption{font:9px var(--font-geist-mono);letter-spacing:.08em;color:#9baa93;margin-bottom:20px}.flow-step{color:#dce7d4;border-bottom:1px solid #394637;align-items:center;gap:14px;padding:15px 0;font-size:13px;display:flex}.flow-step:last-child{border-bottom:0}.flow-step b{font:10px var(--font-geist-mono);color:#cfff73}.study-writing{grid-template-columns:1fr 1fr;gap:24px 42px;margin:32px 0;display:grid}.study-writing h3{color:#e1e9da;margin:0 0 12px;font-size:13px;font-weight:600}.study-writing p{color:#b6c0b5;margin:0;font-size:15px;line-height:1.85}.study-lesson{border-left:2px solid #cfff73;padding-left:20px}.study-project-link{color:#d3fa71;text-underline-offset:5px;font-size:13px;display:inline-block}.build-link:focus-visible{outline-offset:4px;outline:2px solid #d3fa71}.study-nav a:focus-visible{outline-offset:4px;outline:2px solid #d3fa71}@media (max-width:650px){.build-index,.study-writing,.study-visual{grid-template-columns:1fr}.build-link{min-height:210px;padding:22px}.build-section{margin-top:30px;padding-top:30px}.commission-brief{grid-template-columns:1fr;gap:12px}.commission-role{grid-column:1}.study-visual>img{aspect-ratio:1.5;min-height:0}.study-flow{padding:22px}.study-writing{gap:28px}.studies-intro{padding-top:45px}.study-detail{padding-top:35px}.library-bar{align-items:flex-start;gap:18px}.library-bar nav{gap:12px}}@media (prefers-reduced-motion:reduce){.build-link{transition:none}.build-link:hover{transform:none}}.orbit-toolbar{border-top:1px solid #34402f;border-bottom:1px solid #34402f;flex-wrap:wrap;align-items:center;gap:10px;padding:16px 0;display:flex}.orbit-toolbar button,.orbit-film-index button{color:#dcecce;cursor:pointer;background:#182219;border:1px solid #40513b;border-radius:24px;align-items:center;gap:8px;padding:10px 15px;font-size:14px;display:flex}.orbit-toolbar button:hover,.orbit-film-index button:hover{background:#283823;border-color:#cfff73}.orbit-status{color:#b5cd91;font:12px var(--font-geist-mono);letter-spacing:.09em;align-items:center;gap:9px;margin-right:auto;display:flex}.film-orbit{isolation:isolate;background:radial-gradient(#91c74b12,#0000 64%);height:610px;position:relative}.orbit-globe{pointer-events:none;border:1px solid #cfff7340;border-radius:50%;width:390px;height:390px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:inset 0 0 70px #98e6400a,0 0 75px #98e6400a}.orbit-globe:before,.orbit-globe:after,.orbit-globe i{content:"";border:1px dashed #bce88733;border-radius:50%;position:absolute;inset:0}.orbit-globe:before{transform:rotateX(65deg)rotate(-25deg)}.orbit-globe:after{transform:rotateY(65deg)rotate(25deg)}.orbit-globe i:first-child{transform:rotateX(35deg)rotateY(60deg)}.orbit-globe i:nth-child(2){transform:rotateY(35deg)rotateX(60deg)}.orbit-globe i:nth-child(3){border-style:dotted;inset:-40px;transform:rotateX(65deg)}.orbit-globe>span{letter-spacing:-.06em;color:#d3fa7190;text-shadow:0 0 35px #cfff7340;flex-direction:column;justify-content:center;align-items:center;font-size:48px;font-weight:600;display:flex;position:absolute;inset:0}.orbit-globe>span>span{font:11px var(--font-geist-mono);letter-spacing:.22em;margin-top:8px}.orbit-film{aspect-ratio:16/11;width:clamp(180px,25%,290px);transform:translate(-50%,-50%) translate(var(--orbit-x,0px),var(--orbit-y,0px)) scale(var(--orbit-scale,1)) rotate(var(--orbit-roll,0deg));will-change:transform;background:#070b08;border:1px solid #8daa6290;border-radius:13px;position:absolute;top:50%;left:50%;overflow:hidden;box-shadow:0 20px 45px #0009,0 0 20px #b4e95d10}.orbit-film:hover,.orbit-film:focus-within{border-color:#d3fa71;box-shadow:0 22px 55px #000b,0 0 32px #cfff7340;z-index:40!important}.orbit-film video{object-fit:cover;width:100%;height:100%;display:block}.orbit-film-hit{color:#fff;cursor:pointer;text-align:left;background:linear-gradient(#0000 40%,#030905f5);border:0;padding:0;position:absolute;inset:0}.orbit-film-title{justify-content:space-between;align-items:center;gap:8px;padding:15px;display:flex;position:absolute;bottom:0;left:0;right:0}.orbit-film-title b{letter-spacing:-.02em;font-size:18px;font-weight:550;display:block}.orbit-film-title small{color:#b5c9a8;margin-top:4px;font-size:12px;display:block}.orbit-film-index{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.orbit-film-index button{border-radius:8px}.orbit-film-index button>span{color:#b0d075;font:11px var(--font-geist-mono)}.orbit-notice{color:#a7b49f;text-align:center;margin:20px 0 0;font-size:13px}.orbit-toolbar button:focus-visible{outline-offset:3px;outline:2px solid #d3fa71}.orbit-film-hit:focus-visible{outline-offset:3px;outline:2px solid #d3fa71}.orbit-film-index button:focus-visible{outline-offset:3px;outline:2px solid #d3fa71}.orbit-close:focus-visible{outline-offset:3px;outline:2px solid #d3fa71}.orbit-film.orbit-fullscreen{aspect-ratio:auto;will-change:auto;border:0;border-radius:0;width:100vw;height:100dvh;position:fixed;inset:0;z-index:10000!important;transform:none!important}.orbit-fullscreen video{object-fit:contain;background:#000;width:100%;height:100%}.orbit-film video:-webkit-full-screen{object-fit:contain;background:#000;width:100%;height:100%}.orbit-film video:fullscreen{object-fit:contain;background:#000;width:100%;height:100%}.orbit-close{z-index:2;color:#fff;cursor:pointer;background:#101a10df;border:1px solid #cfff7370;border-radius:50%;padding:12px;display:flex;position:absolute;top:20px;right:20px}.has-fullscreen-film{isolation:auto}@media (max-width:650px){.film-orbit{height:520px}.orbit-globe{width:240px;height:240px}.orbit-film{aspect-ratio:4/3;width:44%;min-width:135px}.orbit-film-title{padding:10px}.orbit-film-title b{font-size:15px}.orbit-film-title small{display:none}.orbit-toolbar{gap:8px}.orbit-status{width:100%;margin:0 0 5px}.orbit-toolbar button{font-size:13px}.orbit-film-index{gap:7px}.orbit-film-index button{padding:10px;font-size:13px}.orbit-notice{text-align:left}}@media (prefers-reduced-motion:reduce){.orbit-film{will-change:auto}}.header-actions{align-items:center;gap:24px;display:flex}.pricing-link{color:var(--muted-foreground);font-size:13px;text-decoration:none}.pricing-link:hover{color:var(--foreground)}.portfolio-shortcuts{flex-wrap:wrap;align-items:center;gap:20px 32px;padding:0 0 32px;display:flex}.portfolio-shortcuts a{align-items:center;gap:12px;min-height:44px;font-size:15px;text-decoration:none;display:inline-flex}.explore-work{color:var(--primary);font-weight:600}.contact-shortcut{color:var(--foreground)}:is(.portfolio-shortcuts a:focus-visible,.header-actions a:focus-visible){outline:2px solid var(--primary);outline-offset:6px}#work{scroll-margin-top:24px}@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}.contact-cue{animation:1.8s ease-in-out 3 contact-invitation}@keyframes contact-invitation{0%,to{transform:translate(0)}50%{transform:translate(3px,-3px)}}}@media (max-width:600px){.header-actions{flex-wrap:wrap;justify-content:flex-end;gap:14px}.pricing-link{font-size:12px}.portfolio-shortcuts{gap:12px 24px}}.cinema-emblem{filter:drop-shadow(0 0 24px #baff6340);flex-direction:column;justify-content:center;align-items:center;gap:8px;display:flex;position:absolute;inset:0}.cinema-logo{filter:drop-shadow(0 0 12px #cfff7380);background:linear-gradient(145deg,#f0ffd5,#cfff73 48%,#70c94c);width:112px;height:112px;display:block;-webkit-mask:url(/tanuki-mark-small.webp) 50%/contain no-repeat;mask:url(/tanuki-mark-small.webp) 50%/contain no-repeat}.cinema-emblem strong{letter-spacing:-.065em;color:#f1f8e9;text-shadow:0 0 22px #cfff7340;font-size:32px;font-weight:650;line-height:1}.cinema-emblem strong span{color:#cfff73;font-weight:350}.cinema-label{font:12px var(--font-geist-mono);letter-spacing:.32em;color:#d7f5ae;border-top:1px solid #cfff7350;border-bottom:1px solid #cfff7325;margin-top:5px;padding:8px 14px}@media (max-width:650px){.cinema-logo{width:76px;height:76px}.cinema-emblem strong{font-size:24px}.cinema-label{letter-spacing:.25em;font-size:10px}.cinema-emblem{gap:5px}}.cinema-modes{flex-wrap:wrap;gap:10px;padding-top:20px;display:flex}.cinema-modes button{color:#c8d7bc;cursor:pointer;background:#142015;border:1px solid #4b5a3c;border-radius:8px;justify-content:space-between;align-items:center;gap:25px;min-width:150px;padding:13px 17px;font-size:14px;display:flex}.cinema-modes button span{font:11px var(--font-geist-mono);opacity:.6}.cinema-modes button[aria-pressed=true]{color:#101a0b;background:#cfff73;border-color:#cfff73;box-shadow:0 0 26px #cfff7325}.cinema-modes button:focus-visible{outline-offset:4px;outline:2px solid #cfff73}.film-orbit[data-mode=bounce]{background:radial-gradient(#9cf14812,#0000 65%)}.film-orbit[data-mode=vortex]{background:radial-gradient(#b8ff6925,#0000 65%)}@media (max-width:650px){.cinema-modes{gap:6px}.cinema-modes button{flex:1;gap:8px;min-width:0;padding:12px 9px;font-size:12px}}.orbit-globe{z-index:45;border-color:#cfff7338}.orbit-globe:before{animation:13s linear infinite cinema-ring-one}.orbit-globe:after{animation:17s linear infinite cinema-ring-two}.orbit-globe i:first-child{border-style:solid;border-color:#cfff7355;animation:19s linear infinite cinema-ring-three}.orbit-globe i:nth-child(2){border-color:#8aeecb50;animation:23s linear infinite reverse cinema-ring-two}.orbit-globe i:nth-child(3){animation:29s linear infinite reverse cinema-ring-one}.cinema-emblem{isolation:isolate;filter:none;background:radial-gradient(#0b160cf5 45%,#0b160ce8 66%,#0b160c00 73%);border-radius:50%;width:250px;height:230px;inset:50% auto auto 50%;transform:translate(-50%,-50%)}.cinema-emblem strong{color:#f1f8e9;text-shadow:0 2px 5px #000,0 0 24px #b9ff6466}.cinema-label{color:#e5ffc6;background:#0b160ce6}.film-orbit.is-motion-paused .orbit-globe:before,.film-orbit.is-motion-paused .orbit-globe:after,.film-orbit.is-motion-paused .orbit-globe i{animation-play-state:paused}@keyframes cinema-ring-one{0%{transform:rotate(0)rotateX(65deg)rotateY(15deg)}to{transform:rotate(360deg)rotateX(65deg)rotateY(15deg)}}@keyframes cinema-ring-two{0%{transform:rotate(30deg)rotateY(65deg)rotateX(20deg)}to{transform:rotate(390deg)rotateY(65deg)rotateX(20deg)}}@keyframes cinema-ring-three{0%{transform:rotate(70deg)rotateX(45deg)rotateY(55deg)}to{transform:rotate(430deg)rotateX(45deg)rotateY(55deg)}}@media (max-width:650px){.cinema-emblem{width:195px;height:190px}}@media (prefers-reduced-motion:reduce){.orbit-globe:before,.orbit-globe:after,.orbit-globe i{animation:none!important}}.cinema-emblem{gap:4px;width:170px;height:155px}.cinema-logo{width:65px;height:65px}.cinema-emblem strong{font-size:24px}.cinema-label{letter-spacing:.22em;margin-top:2px;padding:6px 9px;font-size:10px}@media (max-width:650px){.cinema-emblem{width:130px;height:130px}.cinema-logo{width:48px;height:48px}.cinema-emblem strong{font-size:19px}.cinema-label{padding:5px 7px;font-size:9px}}.cinema-credit{text-align:center;color:#9ba991;margin:14px 0 0;font-size:13px;line-height:1.7}.cinema-credit a{color:#c7d9b3;text-underline-offset:3px;text-decoration:underline}.cinema-credit a:hover{color:#d3fa71}.cinema-credit a:focus-visible{outline-offset:4px;outline:2px solid #d3fa71}.study-stats{border-bottom:1px solid #384239;grid-template-columns:repeat(3,1fr);gap:20px;padding:30px 0;display:grid}.study-stats strong{color:#d3fa71;letter-spacing:-.05em;font-size:clamp(32px,5vw,54px);font-weight:550;display:block}.study-stats span{color:#b6c0b5;margin-top:5px;font-size:14px;display:block}.study-mechanics{margin:32px 0}.study-mechanics>h3{letter-spacing:-.03em;margin-bottom:22px;font-size:25px}.study-mechanics>div{grid-template-columns:1fr 1fr;gap:24px;display:grid}.study-mechanics section{background:#141c16;border:1px solid #384239;border-radius:12px;padding:22px}.study-mechanics h4{color:#dcecce;margin:0 0 12px;font-size:16px}.study-mechanics p{color:#b6c0b5;margin:0;font-size:15px;line-height:1.8}@media (max-width:650px){.study-mechanics>div{grid-template-columns:1fr}.study-stats{gap:12px}.study-stats span{font-size:12px}}.featured-film{margin:0 0 54px}.featured-film-heading{justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:22px;display:flex}.featured-film-heading .eyebrow{color:#d3fa71;margin-bottom:12px}.featured-film-heading h3{color:#f1f8e9;letter-spacing:-.055em;text-wrap:balance;margin:0;font-size:clamp(2rem,4.8vw,4.75rem);font-weight:500;line-height:1.04}.featured-film-runtime{color:#b5c4a7;font:13px var(--font-geist-mono);letter-spacing:.08em;flex-shrink:0;padding-bottom:6px}.featured-film-screen{aspect-ratio:16/9;background:#090d08;border:1px solid #69704c;border-radius:14px;position:relative;overflow:hidden;box-shadow:0 24px 75px #0005}.featured-film-screen video{object-fit:contain;background:#090d08;width:100%;height:100%;display:block}.featured-film-play{color:#f8ffe9;cursor:pointer;background:linear-gradient(#0000 45%,#080d0890);border:0;flex-direction:column;justify-content:flex-end;align-items:center;gap:16px;padding:clamp(22px,5vw,64px);font-size:16px;display:flex;position:absolute;inset:0}.featured-film-play-icon{color:#14200f;background:#cfff73;border:1px solid #e5ffb6aa;border-radius:50%;place-items:center;width:76px;height:76px;padding-left:4px;display:grid;box-shadow:0 0 40px #cfff7320}.featured-film-play:hover .featured-film-play-icon{background:#e1ffac;box-shadow:0 0 48px #cfff7350}.featured-film-play:focus-visible{outline-offset:-7px;outline:3px solid #e1ffac}.featured-film-error{color:#f3d9aa;margin:14px 0;font-size:16px}.featured-film-error a{text-underline-offset:3px;text-decoration:underline}@media (max-width:650px){.featured-film{margin-bottom:36px}.featured-film-heading{margin-bottom:18px;display:block}.featured-film-runtime{margin-top:16px;font-size:12px;display:block}.featured-film-screen{border-radius:8px}.featured-film-play{gap:10px;padding:18px;font-size:14px}.featured-film-play-icon{width:54px;height:54px}.featured-film-play-icon svg{width:23px;height:23px}}.study-demo{margin:30px 0}.study-demo video{aspect-ratio:16/9;object-fit:contain;background:#071a24;border:1px solid #415144;border-radius:14px;width:100%;display:block}.study-demo figcaption{color:#aebba7;max-width:80ch;margin:12px 0 0;font-size:13px;line-height:1.7}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@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));filter:blur(var(--tw-enter-blur,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));filter:blur(var(--tw-exit-blur,0))}}.showcase-nav{align-items:center;gap:30px;font-size:14px;display:flex}.showcase-nav a:last-child{color:var(--primary);align-items:center;gap:10px;display:flex}.showcase-intro{border-bottom:1px solid var(--border);grid-template-columns:minmax(0,1fr) 220px;gap:60px;padding:70px 0 72px;display:grid}.showcase-intro h1{letter-spacing:-.065em;margin:26px 0;font-size:clamp(48px,6.5vw,100px);font-weight:560;line-height:1.01}.showcase-intro h1 span{color:var(--primary)}.showcase-lede{color:#b9c1b8;max-width:650px;font-size:18px;line-height:1.6}.showcase-actions{align-items:center;gap:30px;margin-top:32px;font-size:14px;display:flex}.showcase-actions a{align-items:center;gap:12px;min-height:44px;display:inline-flex}.primary-text-link{color:var(--primary);cursor:pointer;align-items:center;gap:14px;min-height:44px;font-size:15px;font-weight:550;text-decoration:none;display:inline-flex}.primary-text-link:hover{color:#e6ffaf;text-underline-offset:5px;text-decoration:underline}.intro-index{align-self:end;padding-bottom:6px}.intro-index>a{border-bottom:1px solid #394034;flex-direction:column;gap:3px;padding:18px 0;display:flex}.intro-index>a>span{letter-spacing:-.04em;font-size:24px}.intro-index small{color:#aeb8a9;font-size:13px}.intro-index a:hover span{color:var(--primary)}.editorial-heading{justify-content:space-between;align-items:end;gap:36px;padding:64px 0 30px;display:flex}.editorial-heading h2{letter-spacing:-.045em;margin:10px 0 0;font-size:clamp(28px,3vw,44px);font-weight:500;line-height:1.1}.editorial-heading>p{color:#adb8a8;max-width:390px;font-size:15px;line-height:1.7}.eyebrow{font-size:12px;line-height:1.6}.flagship{background:#171c18;border:1px solid #3c4538;border-radius:16px;margin:0 0 30px;scroll-margin-top:30px;overflow:hidden}.flagship-main{grid-template-columns:1fr 1.3fr;min-height:410px;display:grid}.flagship-copy{align-self:center;padding:40px}.project-state{font:12px var(--font-geist-mono),monospace;letter-spacing:.08em;color:#c2daa6;line-height:1.6;display:block}.flagship h3{letter-spacing:-.06em;margin:24px 0;font-size:clamp(42px,4.8vw,72px);font-weight:520;line-height:.98}.flagship h3 span{color:var(--primary)}.flagship-copy>p{color:#b9c3b4;max-width:43ch;font-size:16px;line-height:1.65}.flagship-copy .flagship-hook{color:#eef2e8;letter-spacing:-.025em;font-size:21px;line-height:1.25}.flagship .contribution{color:#a5b598;margin:24px 0 12px;font-size:13px;line-height:1.65}.flagship-capture{background:#0b1a24;flex-direction:column;justify-content:center;min-width:0;margin:0;display:flex;position:relative;overflow:hidden}.flagship-capture img{object-fit:contain;width:100%;height:auto;display:block}.flagship-capture figcaption{color:#c4dce5;font:12px var(--font-geist-mono),monospace;justify-content:space-between;gap:14px;padding:18px 24px;line-height:1.6;display:flex}.flagship-game{background:linear-gradient(115deg,#161c20,#12292b)}.proof-strip{color:#b2c5c5;background:#0d181ba3;border-top:1px solid #324044;border-bottom:1px solid #324044;flex-wrap:wrap;align-items:center;gap:30px;padding:20px 40px;font-size:13px;display:flex}.proof-strip b{color:#e6f5ed;margin-right:6px;font-size:21px;font-weight:550}.proof-strip small{font-size:12px;display:block}.proof-strip a{color:var(--primary);align-items:center;min-height:44px;margin-left:auto;display:flex}.flagship-evidence{border-top:1px solid #354034;grid-template-columns:1fr 1fr 1.1fr;gap:28px;padding:30px 40px;display:grid}.flagship-game .flagship-evidence{border-top:0}.flagship-evidence h4{font:12px var(--font-geist-mono),monospace;text-transform:uppercase;letter-spacing:.08em;color:#d6e5c9;margin:0 0 12px}.flagship-evidence p{color:#abbba9;margin:0;font-size:14px;line-height:1.75}.flagship-evidence a{color:var(--primary);align-items:center;gap:8px;min-height:32px;margin-top:12px;font-size:14px;display:inline-flex}.flagship-cabinet{background:#1d201a}.flagship-cabinet .flagship-main{grid-template-columns:1.15fr 1fr}.cabinet-architecture{color:#293322;background:#dce3ca;border-radius:12px;flex-direction:column;align-items:center;margin:30px 38px 30px 12px;padding:25px 30px;display:flex}.cabinet-architecture figcaption{font:12px var(--font-geist-mono),monospace;letter-spacing:.05em;align-self:start;margin-bottom:24px}.architecture-node{background:#edf1e3;border:1px solid #b5bfa5;border-radius:7px;width:100%;max-width:320px;padding:14px 18px}.architecture-node>span{font:11px var(--font-geist-mono);color:#4d6041}.architecture-node strong{font-size:22px;font-weight:600;display:block}.architecture-node p{color:#4b5942;margin:3px 0 0;font-size:13px;line-height:1.5}.node-api{color:#e7f3d7;background:#263923;border-color:#263923}.node-api>span,.node-api p{color:#c2d4b4}.architecture-connector{color:#5d6e4b;height:28px}.architecture-storage{grid-template-columns:1fr 1fr;gap:12px;width:100%;max-width:320px;display:grid}.architecture-storage>div{background:#eef1e4;border:1px solid #adbaa0;border-radius:7px;padding:14px}.architecture-storage strong{font-size:23px;display:block}.architecture-storage span{font-size:12px;line-height:1.5;display:block}.architecture-note{color:#4e6145;margin:18px 0 0;font-size:12px}.fieldstation-heading{justify-content:space-between;align-items:center;gap:24px;padding:36px 40px 24px;display:flex}.fieldstation-heading h3{margin:12px 0 0}.fieldstation-stage{background:#0b1219;border:1px solid #3b5145;border-radius:10px;height:340px;margin:0 40px;position:relative;overflow:hidden}.fieldstation-stage .media-frame{height:100%}.fieldstation-stage .media-frame img,.fieldstation-stage .media-frame video{object-fit:cover;object-position:50% 50%}.fieldstation-caption{pointer-events:none;color:#dcefd8;background:linear-gradient(90deg,#08131bea,#0000);width:55%;padding:30px;position:absolute;top:0;bottom:0;left:0}.fieldstation-caption>span{font:12px var(--font-geist-mono);letter-spacing:.08em}.fieldstation-caption p{letter-spacing:-.035em;max-width:350px;margin-top:22px;font-size:clamp(20px,2.2vw,30px);line-height:1.2}.fieldstation-summary{grid-template-columns:1.3fr 1fr;gap:40px;padding:22px 40px;display:grid}.fieldstation-summary>p{color:#b5c2b0;font-size:15px;line-height:1.7}.fieldstation-summary .contribution{align-self:center;margin:0}.collection-section{scroll-margin-top:20px}.collection-controls{justify-content:space-between;align-items:center;gap:20px;padding:14px 0 26px;display:flex}.collection-controls>div{flex-wrap:wrap;gap:6px;display:flex}.collection-controls button{color:#c4d0bc;border:1px solid #3d4937;border-radius:99px;min-height:44px;padding:9px 16px;font-size:14px}.collection-controls button[aria-pressed=true]{color:#16200b;background:#d3fa71;border-color:#d3fa71}.collection-controls>span{font:12px var(--font-geist-mono);color:#aebaa5;white-space:nowrap}.collection-section .project-card h3{font-size:23px}.collection-section .project-content{padding:22px}.collection-section .project-content>p{font-size:14px;line-height:1.65}.collection-section .project-category{font-size:11px}.collection-section .project-grid{gap:20px}.collection-section .project-card{border-radius:11px}.collection-section .project-visual{height:200px;min-height:0}.collection-section .card-bottom{font-size:13px}.collection-section .section-heading{padding:0}.showcase-home .build-section{padding:20px 0 48px}.showcase-home .build-index{gap:14px}.showcase-home .build-link{padding:23px}.showcase-home .build-link h3{font-size:23px}.showcase-home .build-link p{font-size:14px}.showcase-home .film-section{padding-top:40px}.showcase-home .film-heading h2{letter-spacing:-.05em;font-size:clamp(32px,4.5vw,64px);line-height:1.05}.closing-invitation{border-top:1px solid #405032;grid-template-columns:1.1fr 1fr;gap:20px 80px;margin-top:50px;padding:60px 0 70px;display:grid}.closing-invitation>.eyebrow{grid-column:1/-1;margin:0}.closing-invitation h2{letter-spacing:-.06em;margin:5px 0;font-size:clamp(44px,5.3vw,78px);font-weight:500;line-height:1.05}.closing-invitation h2 span{color:var(--primary)}.closing-invitation>div{align-self:center}.closing-invitation>div>p{color:#b3c0aa;max-width:37ch;font-size:18px;line-height:1.6}.services-note{color:#aebaa5;margin-top:18px;font-size:13px;display:block}@media (max-width:1000px){.showcase-intro{grid-template-columns:1fr 170px;gap:25px}.showcase-intro h1{font-size:64px}.flagship-copy{padding:28px}.flagship h3{font-size:54px}.flagship-evidence{gap:22px;padding:26px}.flagship-main{grid-template-columns:1fr 1.1fr}.cabinet-architecture{margin:25px 25px 25px 0;padding:22px}.fieldstation-heading{padding:28px}.fieldstation-stage{margin:0 28px}.fieldstation-summary{padding:24px 28px}.proof-strip{gap:18px;padding:18px 28px}.showcase-nav{gap:23px}}@media (max-width:700px){.showcase-home{padding:0 22px}.showcase-home .site-header{gap:15px;height:82px}.showcase-nav{gap:16px;font-size:13px}.showcase-nav a:first-child{display:none}.showcase-home .wordmark{font-size:22px}.showcase-home .tanuki-brand-mark{width:32px;height:32px}.showcase-intro{padding:38px 0 35px;display:block}.showcase-intro h1{margin:22px 0;font-size:clamp(41px,8.8vw,62px)}.showcase-intro .eyebrow{max-width:290px;font-size:10px}.showcase-lede{font-size:16px;line-height:1.6}.showcase-actions{flex-direction:column;align-items:start;gap:8px;margin-top:22px}.intro-index{display:none}.editorial-heading{padding:38px 0 24px;display:block}.editorial-heading h2{font-size:32px}.editorial-heading>p{margin-top:16px;font-size:14px}.flagship-main,.flagship-cabinet .flagship-main{flex-direction:column;display:flex}.flagship{border-radius:12px;margin-bottom:24px}.flagship-copy{padding:26px 24px}.flagship h3{margin:18px 0;font-size:50px}.flagship-copy>p{font-size:15px}.flagship-copy .flagship-hook{font-size:21px}.project-state{font-size:10px}.flagship-capture figcaption{padding:14px 18px;font-size:10px}.proof-strip{gap:14px;padding:18px 24px}.proof-strip>span{flex:1;font-size:12px}.proof-strip b{display:block}.proof-strip a{width:100%;min-height:28px;margin-left:0}.flagship-evidence{padding:0 24px 20px;display:block}.flagship-evidence>div{padding:22px 0 0}.flagship-evidence h4{margin-bottom:8px}.flagship-evidence p{font-size:14px;line-height:1.65}.cabinet-architecture{margin:0 24px 24px;padding:20px}.fieldstation-heading{padding:24px;display:block}.fieldstation-heading h3{margin:14px 0;font-size:46px}.fieldstation-stage{height:260px;margin:0 16px}.fieldstation-caption{width:85%;padding:20px}.fieldstation-caption>span{font-size:10px}.fieldstation-caption p{max-width:240px;font-size:22px}.fieldstation-summary{padding:18px 24px;display:block}.fieldstation-summary>p{font-size:14px}.collection-controls{flex-direction:column;align-items:start;gap:10px}.collection-controls button{padding:8px 13px;font-size:12px}.collection-section .project-visual{height:190px}.collection-section .project-grid{gap:18px}.showcase-home .build-link{padding:22px}.closing-invitation{margin-top:28px;padding:40px 0;display:block}.closing-invitation h2{margin:22px 0;font-size:50px}.closing-invitation>div>p{font-size:16px}.showcase-home footer{gap:20px}.showcase-home footer>p{font-size:12px}.flagship-evidence a{min-height:44px}}@media (prefers-reduced-motion:reduce){html,.showcase-home *{scroll-behavior:auto}}.cinema-loading{min-height:1000px}.cinema-loading-stage{background:radial-gradient(#82bb3b15,#0000 60%);border:1px solid #354432;border-radius:14px;flex-direction:column;justify-content:center;align-items:center;gap:20px;height:570px;display:flex}.cinema-loading-stage p{font-size:25px}.cinema-loading-stage button,.cinema-retry{color:#d3fa71;cursor:pointer;border:1px solid #aac77b;border-radius:30px;min-height:44px;padding:12px 23px}.cinema-period{color:var(--primary)}.showcase-home .constellation-section{border-top:1px solid #405032;margin-top:24px}.constellation-section .film-heading{align-items:end;padding-top:24px}.constellation-section .film-heading>p{max-width:390px;font-size:15px;line-height:1.7}.constellation-section .orbit-globe{z-index:5;width:330px;height:330px}.constellation-section .orbit-film{width:clamp(180px,23%,265px)}.orbit-film>img{object-fit:cover;width:100%;height:100%;display:block}.orbit-film>video{position:absolute;inset:0}.constellation-section .orbit-film-title small{font-size:12px}.constellation-section .orbit-film-hit:focus-visible{outline-offset:-4px}.constellation-section .orbit-film-index button{min-height:44px}.constellation-section .cinema-modes button{min-width:130px}.constellation-section .orbit-notice{font-size:14px;line-height:1.6}.constellation-section .cinema-credit{margin-top:8px;font-size:13px}.constellation-section .featured-film{border-top:1px solid #394333;margin-top:46px;padding-top:32px}.constellation-section .featured-film-heading h3{font-size:30px}.constellation-section .featured-film-screen{max-height:540px}.constellation-section .featured-film-screen video{object-fit:contain;max-height:540px}.film-orbit.is-static{background:0 0;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;height:auto;min-height:0;padding:26px 0;display:grid}.film-orbit.is-static .orbit-globe{display:none}.film-orbit.is-static .orbit-film{aspect-ratio:16/11;will-change:auto;width:100%;min-width:0;position:relative;inset:auto;transform:none!important}.cinema-player-dialog{color:#eff5e9;background:#0c120e;border:1px solid #617d45;border-radius:12px;width:min(1200px,96vw);max-width:96vw;max-height:95dvh;margin:auto;padding:18px;position:fixed;inset:0;overflow-y:auto;box-shadow:0 25px 100px #000c}.cinema-player-dialog::backdrop{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#030706ed}.cinema-player-dialog header{justify-content:space-between;align-items:center;gap:16px;margin-bottom:12px;display:flex}.cinema-player-dialog h2{margin:0;font-size:22px}.cinema-player-dialog header button{color:#d3fa71;cursor:pointer;padding:10px}.cinema-player-dialog video{object-fit:contain;background:#000;width:100%;max-height:75dvh;display:block}.cinema-player-dialog video:-webkit-full-screen{object-fit:contain;width:100%;height:100%;max-height:none}.cinema-player-dialog video:fullscreen{object-fit:contain;width:100%;height:100%;max-height:none}.cinema-player-status{color:#c7d5bd;margin-top:10px;font-size:14px;line-height:1.5}.cinema-retry{align-items:center;gap:10px;margin-top:12px;display:inline-flex}.cinema-player-dialog:not([open]){display:none}@media (max-width:700px){.film-orbit.is-static{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.film-orbit.is-static .orbit-film:last-child{grid-column:1/-1;justify-self:center;max-width:calc(50% - 6px)}.constellation-section .film-heading{display:block}.constellation-section .film-heading h2{font-size:43px}.constellation-section .film-heading>p{margin-top:18px;font-size:14px}.constellation-section .orbit-film-title{padding:12px}.constellation-section .orbit-film-title b{font-size:15px}.constellation-section .orbit-status{font-size:11px}.constellation-section .orbit-toolbar{gap:8px}.constellation-section .orbit-toolbar button{font-size:13px}.constellation-section .orbit-film-index{justify-content:start}.constellation-section .orbit-film-index button{font-size:12px}.constellation-section .featured-film-screen{min-height:0}.cinema-loading{min-height:1000px}.cinema-loading-stage{height:500px}.cinema-player-dialog{padding:12px}.cinema-player-dialog h2{font-size:19px}}.showcase-intro{padding:46px 0}.showcase-intro h1{font-size:clamp(48px,6.1vw,88px)}.flagships>.editorial-heading{padding-top:38px}.flagships>.editorial-heading h2{font-size:36px;line-height:1.08}.showcase-intro .intro-index{align-self:center}@media (max-width:700px){.showcase-intro{padding:28px 0}.showcase-intro h1{font-size:clamp(41px,8.8vw,62px)}.showcase-actions a:last-child{display:none}.showcase-actions{margin-top:18px}.flagships>.editorial-heading{padding-top:28px;padding-bottom:22px}.flagships>.editorial-heading h2{font-size:30px}.flagship-game .game-capture{order:-1}.flagships>.editorial-heading>p{margin-top:12px}.game-capture figcaption{font-size:10px}}.project-demo-loading{z-index:100;color:#eef6e6;background:#172211;border:1px solid #90aa69;border-radius:12px;padding:20px;position:fixed;bottom:20px;right:20px;box-shadow:0 12px 60px #000b}.project-demo-loading a,.project-demo-loading button{color:#d3fa71;cursor:pointer;align-items:center;min-height:44px;margin-right:18px;font-size:14px;display:inline-flex}.rent-showcase{max-width:1200px;padding-top:35px;padding-bottom:60px}.rent-showcase-intro{padding:35px 0}.rent-showcase h1{letter-spacing:-.055em;margin:20px 0;font-size:clamp(42px,5.7vw,76px);line-height:1.05}.rent-showcase h1 span{color:var(--primary)}.rent-showcase-intro>p:not(.eyebrow){color:#b9c7ae;max-width:650px;font-size:18px;line-height:1.6}.rent-showcase-capture{margin:10px 0 35px}.rent-showcase-capture img{border:1px solid #3f4b37;border-radius:12px;width:100%;height:auto}.rent-showcase-capture figcaption{color:#b7c3ac;margin-top:12px;font-size:13px;line-height:1.6}.rent-showcase .flagship-evidence{margin-bottom:30px;padding:28px 0}.rent-showcase .flagship-evidence h2{margin:0 0 12px;font-size:18px;font-weight:500}.fieldstation-stage .preview-label{z-index:3}.gameplay-stage{aspect-ratio:8/5;width:100%;position:relative}.gameplay-stage .media-frame>img,.gameplay-stage .media-frame>video{object-fit:contain}
