/*! tailwindcss v4.3.2 | 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)))){*,:before,:after,::backdrop{--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-tracking:initial;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction: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}}}.pointer-events-none{pointer-events:none}.invisible{visibility:hidden}.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}.relative{position:relative}.static{position:static}.z-0{z-index:0}.z-10{z-index:10}.z-50{z-index:50}.col-span-2{grid-column:span 2/span 2}.container{width:100%;margin-inline:auto;padding-inline:2rem}@media (width>=1400px){.container{max-width:1400px}}.mx-auto{margin-inline:auto}.ml-auto{margin-left:auto}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.table{display:table}.aspect-\[16\/10\]{aspect-ratio:16/10}.h-auto{height:auto}.h-full{height:100%}.max-h-\[34vh\]{max-height:34vh}.max-h-full{max-height:100%}.min-h-screen{min-height:100vh}.w-\[min\(40\%\,220px\)\]{width:min(40%,220px)}.w-full{width:100%}.max-w-full{max-width:100%}.min-w-\[250px\]{min-width:250px}.flex-1{flex:1}.flex-shrink-0,.shrink-0{flex-shrink:0}.grow{flex-grow:1}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.cursor-crosshair{cursor:crosshair}.cursor-grab{cursor:grab}.cursor-pointer{cursor:pointer}.cursor-zoom-in{cursor:zoom-in}.resize{resize:both}.resize-none{resize:none}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.content-start{align-content:flex-start}.items-center{align-items:center}.items-end{align-items:flex-end}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.gap-\[3px\]{gap:3px}.gap-px{gap:1px}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-x-hidden{overflow-x:hidden}.overflow-y-auto{overflow-y:auto}.rounded-\[28px\]{border-radius:28px}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:var(--radius)}.rounded-md{border-radius:calc(var(--radius) - 2px)}.border{border-style:var(--tw-border-style);border-width:1px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-b-2{border-bottom-style:var(--tw-border-style);border-bottom-width:2px}.border-dashed{--tw-border-style:dashed;border-style:dashed}.border-border{border-color:hsl(var(--border))}.border-input{border-color:hsl(var(--input))}.border-primary,.border-primary\/5{border-color:hsl(var(--primary))}@supports (color:color-mix(in lab, red, red)){.border-primary\/5{border-color:color-mix(in oklab, hsl(var(--primary)) 5%, transparent)}}.border-primary\/10{border-color:hsl(var(--primary))}@supports (color:color-mix(in lab, red, red)){.border-primary\/10{border-color:color-mix(in oklab, hsl(var(--primary)) 10%, transparent)}}.border-primary\/15{border-color:hsl(var(--primary))}@supports (color:color-mix(in lab, red, red)){.border-primary\/15{border-color:color-mix(in oklab, hsl(var(--primary)) 15%, transparent)}}.border-primary\/20{border-color:hsl(var(--primary))}@supports (color:color-mix(in lab, red, red)){.border-primary\/20{border-color:color-mix(in oklab, hsl(var(--primary)) 20%, transparent)}}.border-primary\/25{border-color:hsl(var(--primary))}@supports (color:color-mix(in lab, red, red)){.border-primary\/25{border-color:color-mix(in oklab, hsl(var(--primary)) 25%, transparent)}}.border-primary\/30{border-color:hsl(var(--primary))}@supports (color:color-mix(in lab, red, red)){.border-primary\/30{border-color:color-mix(in oklab, hsl(var(--primary)) 30%, transparent)}}.border-primary\/40{border-color:hsl(var(--primary))}@supports (color:color-mix(in lab, red, red)){.border-primary\/40{border-color:color-mix(in oklab, hsl(var(--primary)) 40%, transparent)}}.border-primary\/50{border-color:hsl(var(--primary))}@supports (color:color-mix(in lab, red, red)){.border-primary\/50{border-color:color-mix(in oklab, hsl(var(--primary)) 50%, transparent)}}.border-transparent{border-color:#0000}.bg-background,.bg-background\/40{background-color:hsl(var(--background))}@supports (color:color-mix(in lab, red, red)){.bg-background\/40{background-color:color-mix(in oklab, hsl(var(--background)) 40%, transparent)}}.bg-background\/50{background-color:hsl(var(--background))}@supports (color:color-mix(in lab, red, red)){.bg-background\/50{background-color:color-mix(in oklab, hsl(var(--background)) 50%, transparent)}}.bg-background\/60{background-color:hsl(var(--background))}@supports (color:color-mix(in lab, red, red)){.bg-background\/60{background-color:color-mix(in oklab, hsl(var(--background)) 60%, transparent)}}.bg-background\/80{background-color:hsl(var(--background))}@supports (color:color-mix(in lab, red, red)){.bg-background\/80{background-color:color-mix(in oklab, hsl(var(--background)) 80%, transparent)}}.bg-background\/90{background-color:hsl(var(--background))}@supports (color:color-mix(in lab, red, red)){.bg-background\/90{background-color:color-mix(in oklab, hsl(var(--background)) 90%, transparent)}}.bg-card,.bg-card\/30{background-color:hsl(var(--card))}@supports (color:color-mix(in lab, red, red)){.bg-card\/30{background-color:color-mix(in oklab, hsl(var(--card)) 30%, transparent)}}.bg-card\/40{background-color:hsl(var(--card))}@supports (color:color-mix(in lab, red, red)){.bg-card\/40{background-color:color-mix(in oklab, hsl(var(--card)) 40%, transparent)}}.bg-card\/50{background-color:hsl(var(--card))}@supports (color:color-mix(in lab, red, red)){.bg-card\/50{background-color:color-mix(in oklab, hsl(var(--card)) 50%, transparent)}}.bg-card\/60{background-color:hsl(var(--card))}@supports (color:color-mix(in lab, red, red)){.bg-card\/60{background-color:color-mix(in oklab, hsl(var(--card)) 60%, transparent)}}.bg-card\/80{background-color:hsl(var(--card))}@supports (color:color-mix(in lab, red, red)){.bg-card\/80{background-color:color-mix(in oklab, hsl(var(--card)) 80%, transparent)}}.bg-destructive{background-color:hsl(var(--destructive))}.bg-primary,.bg-primary\/5{background-color:hsl(var(--primary))}@supports (color:color-mix(in lab, red, red)){.bg-primary\/5{background-color:color-mix(in oklab, hsl(var(--primary)) 5%, transparent)}}.bg-primary\/10{background-color:hsl(var(--primary))}@supports (color:color-mix(in lab, red, red)){.bg-primary\/10{background-color:color-mix(in oklab, hsl(var(--primary)) 10%, transparent)}}.bg-primary\/15{background-color:hsl(var(--primary))}@supports (color:color-mix(in lab, red, red)){.bg-primary\/15{background-color:color-mix(in oklab, hsl(var(--primary)) 15%, transparent)}}.bg-primary\/20{background-color:hsl(var(--primary))}@supports (color:color-mix(in lab, red, red)){.bg-primary\/20{background-color:color-mix(in oklab, hsl(var(--primary)) 20%, transparent)}}.bg-primary\/30{background-color:hsl(var(--primary))}@supports (color:color-mix(in lab, red, red)){.bg-primary\/30{background-color:color-mix(in oklab, hsl(var(--primary)) 30%, transparent)}}.bg-primary\/50{background-color:hsl(var(--primary))}@supports (color:color-mix(in lab, red, red)){.bg-primary\/50{background-color:color-mix(in oklab, hsl(var(--primary)) 50%, transparent)}}.bg-primary\/60{background-color:hsl(var(--primary))}@supports (color:color-mix(in lab, red, red)){.bg-primary\/60{background-color:color-mix(in oklab, hsl(var(--primary)) 60%, transparent)}}.bg-primary\/70{background-color:hsl(var(--primary))}@supports (color:color-mix(in lab, red, red)){.bg-primary\/70{background-color:color-mix(in oklab, hsl(var(--primary)) 70%, transparent)}}.bg-primary\/\[0\.02\]{background-color:hsl(var(--primary))}@supports (color:color-mix(in lab, red, red)){.bg-primary\/\[0\.02\]{background-color:color-mix(in oklab, hsl(var(--primary)) 2%, transparent)}}.bg-primary\/\[0\.03\]{background-color:hsl(var(--primary))}@supports (color:color-mix(in lab, red, red)){.bg-primary\/\[0\.03\]{background-color:color-mix(in oklab, hsl(var(--primary)) 3%, transparent)}}.bg-secondary{background-color:hsl(var(--secondary))}.bg-transparent{background-color:#0000}.object-cover{-o-object-fit:cover;object-fit:cover}.object-top{-o-object-position:top;object-position:top}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.align-top{vertical-align:top}.font-mono{font-family:Fira Code,Courier Prime,Courier New,monospace}.text-\[9px\]{font-size:9px}.text-\[10px\]{font-size:10px}.text-\[11px\]{font-size:11px}.leading-\[0\.95\]{--tw-leading:.95;line-height:.95}.leading-none{--tw-leading:1;line-height:1}.tracking-\[0\.2em\]{--tw-tracking:.2em;letter-spacing:.2em}.break-words{overflow-wrap:break-word}.break-all{word-break:break-all}.whitespace-nowrap{white-space:nowrap}.whitespace-pre-wrap{white-space:pre-wrap}.text-card-foreground{color:hsl(var(--card-foreground))}.text-destructive-foreground{color:hsl(var(--destructive-foreground))}.text-foreground{color:hsl(var(--foreground))}.text-muted-foreground,.text-muted-foreground\/50{color:hsl(var(--muted-foreground))}@supports (color:color-mix(in lab, red, red)){.text-muted-foreground\/50{color:color-mix(in oklab, hsl(var(--muted-foreground)) 50%, transparent)}}.text-muted-foreground\/60{color:hsl(var(--muted-foreground))}@supports (color:color-mix(in lab, red, red)){.text-muted-foreground\/60{color:color-mix(in oklab, hsl(var(--muted-foreground)) 60%, transparent)}}.text-muted-foreground\/80{color:hsl(var(--muted-foreground))}@supports (color:color-mix(in lab, red, red)){.text-muted-foreground\/80{color:color-mix(in oklab, hsl(var(--muted-foreground)) 80%, transparent)}}.text-primary{color:hsl(var(--primary))}.text-primary-foreground{color:hsl(var(--primary-foreground))}.text-primary\/20{color:hsl(var(--primary))}@supports (color:color-mix(in lab, red, red)){.text-primary\/20{color:color-mix(in oklab, hsl(var(--primary)) 20%, transparent)}}.text-primary\/25{color:hsl(var(--primary))}@supports (color:color-mix(in lab, red, red)){.text-primary\/25{color:color-mix(in oklab, hsl(var(--primary)) 25%, transparent)}}.text-primary\/30{color:hsl(var(--primary))}@supports (color:color-mix(in lab, red, red)){.text-primary\/30{color:color-mix(in oklab, hsl(var(--primary)) 30%, transparent)}}.text-primary\/40{color:hsl(var(--primary))}@supports (color:color-mix(in lab, red, red)){.text-primary\/40{color:color-mix(in oklab, hsl(var(--primary)) 40%, transparent)}}.text-primary\/45{color:hsl(var(--primary))}@supports (color:color-mix(in lab, red, red)){.text-primary\/45{color:color-mix(in oklab, hsl(var(--primary)) 45%, transparent)}}.text-primary\/50{color:hsl(var(--primary))}@supports (color:color-mix(in lab, red, red)){.text-primary\/50{color:color-mix(in oklab, hsl(var(--primary)) 50%, transparent)}}.text-primary\/60{color:hsl(var(--primary))}@supports (color:color-mix(in lab, red, red)){.text-primary\/60{color:color-mix(in oklab, hsl(var(--primary)) 60%, transparent)}}.text-primary\/70{color:hsl(var(--primary))}@supports (color:color-mix(in lab, red, red)){.text-primary\/70{color:color-mix(in oklab, hsl(var(--primary)) 70%, transparent)}}.text-primary\/80{color:hsl(var(--primary))}@supports (color:color-mix(in lab, red, red)){.text-primary\/80{color:color-mix(in oklab, hsl(var(--primary)) 80%, transparent)}}.text-primary\/90{color:hsl(var(--primary))}@supports (color:color-mix(in lab, red, red)){.text-primary\/90{color:color-mix(in oklab, hsl(var(--primary)) 90%, transparent)}}.text-secondary-foreground{color:hsl(var(--secondary-foreground))}.text-transparent{color:#0000}.uppercase{text-transform:uppercase}.italic{font-style:italic}.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,)}.underline-offset-4{text-underline-offset:4px}.placeholder-primary\/20::placeholder{color:hsl(var(--primary))}@supports (color:color-mix(in lab, red, red)){.placeholder-primary\/20::placeholder{color:color-mix(in oklab, hsl(var(--primary)) 20%, transparent)}}.accent-foreground{accent-color:hsl(var(--foreground))}.accent-primary{accent-color:hsl(var(--primary))}.opacity-0{opacity:0}.opacity-100{opacity:1}.ring{--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-offset-background{--tw-ring-offset-color:hsl(var(--background))}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.invert{--tw-invert:invert(100%);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,ease);transition-duration:var(--tw-duration,0s)}.transition-\[opacity\,transform\]{transition-property:opacity,transform;transition-timing-function:var(--tw-ease,ease);transition-duration:var(--tw-duration,0s)}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,ease);transition-duration:var(--tw-duration,0s)}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,ease);transition-duration:var(--tw-duration,0s)}.duration-75{--tw-duration:75ms;transition-duration:75ms}.duration-100{--tw-duration:.1s;transition-duration:.1s}.duration-700{--tw-duration:.7s;transition-duration:.7s}.outline-none{--tw-outline-style:none;outline-style:none}.select-all{-webkit-user-select:all;user-select:all}.select-none{-webkit-user-select:none;user-select:none}.duration-75{animation-duration:75ms}.duration-100{animation-duration:.1s}.duration-700{animation-duration:.7s}.ease-in-out{animation-timing-function:cubic-bezier(.4,0,.2,1)}.ease-out{animation-timing-function:cubic-bezier(0,0,.2,1)}.fade-in{--tw-enter-opacity:0}.paused{animation-play-state:paused}.running{animation-play-state:running}.last\:border-0:last-child{border-style:var(--tw-border-style);border-width:0}@media (hover:hover){.hover\:border-primary:hover,.hover\:border-primary\/40:hover{border-color:hsl(var(--primary))}@supports (color:color-mix(in lab, red, red)){.hover\:border-primary\/40:hover{border-color:color-mix(in oklab, hsl(var(--primary)) 40%, transparent)}}.hover\:border-primary\/50:hover{border-color:hsl(var(--primary))}@supports (color:color-mix(in lab, red, red)){.hover\:border-primary\/50:hover{border-color:color-mix(in oklab, hsl(var(--primary)) 50%, transparent)}}.hover\:border-primary\/60:hover{border-color:hsl(var(--primary))}@supports (color:color-mix(in lab, red, red)){.hover\:border-primary\/60:hover{border-color:color-mix(in oklab, hsl(var(--primary)) 60%, transparent)}}.hover\:bg-accent:hover{background-color:hsl(var(--accent))}.hover\:bg-destructive\/80:hover{background-color:hsl(var(--destructive))}@supports (color:color-mix(in lab, red, red)){.hover\:bg-destructive\/80:hover{background-color:color-mix(in oklab, hsl(var(--destructive)) 80%, transparent)}}.hover\:bg-destructive\/90:hover{background-color:hsl(var(--destructive))}@supports (color:color-mix(in lab, red, red)){.hover\:bg-destructive\/90:hover{background-color:color-mix(in oklab, hsl(var(--destructive)) 90%, transparent)}}.hover\:bg-primary\/5:hover{background-color:hsl(var(--primary))}@supports (color:color-mix(in lab, red, red)){.hover\:bg-primary\/5:hover{background-color:color-mix(in oklab, hsl(var(--primary)) 5%, transparent)}}.hover\:bg-primary\/10:hover{background-color:hsl(var(--primary))}@supports (color:color-mix(in lab, red, red)){.hover\:bg-primary\/10:hover{background-color:color-mix(in oklab, hsl(var(--primary)) 10%, transparent)}}.hover\:bg-primary\/20:hover{background-color:hsl(var(--primary))}@supports (color:color-mix(in lab, red, red)){.hover\:bg-primary\/20:hover{background-color:color-mix(in oklab, hsl(var(--primary)) 20%, transparent)}}.hover\:bg-primary\/80:hover{background-color:hsl(var(--primary))}@supports (color:color-mix(in lab, red, red)){.hover\:bg-primary\/80:hover{background-color:color-mix(in oklab, hsl(var(--primary)) 80%, transparent)}}.hover\:bg-primary\/90:hover{background-color:hsl(var(--primary))}@supports (color:color-mix(in lab, red, red)){.hover\:bg-primary\/90:hover{background-color:color-mix(in oklab, hsl(var(--primary)) 90%, transparent)}}.hover\:bg-secondary\/80:hover{background-color:hsl(var(--secondary))}@supports (color:color-mix(in lab, red, red)){.hover\:bg-secondary\/80:hover{background-color:color-mix(in oklab, hsl(var(--secondary)) 80%, transparent)}}.hover\:text-accent-foreground:hover{color:hsl(var(--accent-foreground))}.hover\:text-primary:hover,.hover\:text-primary\/70:hover{color:hsl(var(--primary))}@supports (color:color-mix(in lab, red, red)){.hover\:text-primary\/70:hover{color:color-mix(in oklab, hsl(var(--primary)) 70%, transparent)}}.hover\:text-primary\/80:hover{color:hsl(var(--primary))}@supports (color:color-mix(in lab, red, red)){.hover\:text-primary\/80:hover{color:color-mix(in oklab, hsl(var(--primary)) 80%, transparent)}}.hover\:underline:hover{text-decoration-line:underline}}.focus\:not-sr-only:focus{clip-path:none;white-space:normal;width:auto;height:auto;margin:0;padding:0;position:static;overflow:visible}.focus\:absolute:focus{position:absolute}.focus\:border-primary:focus,.focus\:border-primary\/50:focus{border-color:hsl(var(--primary))}@supports (color:color-mix(in lab, red, red)){.focus\:border-primary\/50:focus{border-color:color-mix(in oklab, hsl(var(--primary)) 50%, transparent)}}.focus\:border-primary\/60:focus{border-color:hsl(var(--primary))}@supports (color:color-mix(in lab, red, red)){.focus\:border-primary\/60:focus{border-color:color-mix(in oklab, hsl(var(--primary)) 60%, transparent)}}.focus\:ring-2:focus{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + 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\:ring-ring:focus{--tw-ring-color:hsl(var(--ring))}.focus\:ring-offset-2:focus{--tw-ring-offset-width:2px;--tw-ring-offset-shadow:var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color)}.focus\:outline-none:focus{--tw-outline-style:none;outline-style:none}.focus-visible\:bg-primary\/10:focus-visible{background-color:hsl(var(--primary))}@supports (color:color-mix(in lab, red, red)){.focus-visible\:bg-primary\/10:focus-visible{background-color:color-mix(in oklab, hsl(var(--primary)) 10%, transparent)}}.focus-visible\:text-primary:focus-visible{color:hsl(var(--primary))}.focus-visible\:ring-2:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + 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:focus-visible{--tw-ring-color:hsl(var(--ring))}.focus-visible\:ring-offset-2:focus-visible{--tw-ring-offset-width:2px;--tw-ring-offset-shadow:var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color)}.focus-visible\:outline-none:focus-visible{--tw-outline-style:none;outline-style:none}.active\:cursor-grabbing:active{cursor:grabbing}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-30:disabled{opacity:.3}.disabled\:opacity-50:disabled{opacity:.5}.\[\&_svg\]\:pointer-events-none svg{pointer-events:none}.\[\&_svg\]\:shrink-0 svg{flex-shrink:0}@layer base{:root{--background:0 0% 2%;--foreground:120 100% 78%;--card:0 0% 6%;--card-foreground:120 100% 78%;--popover:0 0% 6%;--popover-foreground:120 100% 78%;--primary:120 100% 50%;--primary-foreground:0 0% 0%;--primary-glow:120 100% 65%;--secondary:0 0% 10%;--secondary-foreground:120 80% 60%;--muted:0 0% 8%;--muted-foreground:120 40% 45%;--accent:120 100% 40%;--accent-foreground:0 0% 0%;--destructive:0 84% 60%;--destructive-foreground:0 0% 100%;--border:120 25% 18%;--input:120 25% 14%;--ring:120 100% 50%;--radius:.5rem;--gradient-primary:linear-gradient(135deg, #0f0, #0ff);--shadow-glow:0 0 40px #00ff0059;--shadow-card:0 4px 24px -4px #00000080;--sidebar-background:0 0% 2%;--sidebar-foreground:120 80% 60%;--sidebar-primary:120 100% 50%;--sidebar-primary-foreground:0 0% 0%;--sidebar-accent:0 0% 8%;--sidebar-accent-foreground:120 80% 60%;--sidebar-border:120 30% 15%;--sidebar-ring:120 100% 50%}.light{--background:0 0% 98%;--foreground:222 47% 11%;--card:0 0% 100%;--card-foreground:222 47% 11%;--popover:0 0% 100%;--popover-foreground:222 47% 11%;--primary:221 83% 53%;--primary-foreground:0 0% 100%;--primary-glow:221 83% 60%;--secondary:210 40% 96%;--secondary-foreground:222 47% 11%;--muted:210 40% 96%;--muted-foreground:215 16% 47%;--accent:210 40% 96%;--accent-foreground:222 47% 11%;--destructive:0 84% 60%;--destructive-foreground:0 0% 100%;--border:214 32% 91%;--input:214 32% 91%;--ring:221 83% 53%;--sidebar-background:0 0% 98%;--sidebar-foreground:222 47% 11%;--sidebar-primary:221 83% 53%;--sidebar-primary-foreground:0 0% 100%;--sidebar-accent:210 40% 96%;--sidebar-accent-foreground:222 47% 11%;--sidebar-border:214 32% 91%;--sidebar-ring:221 83% 53%}*{border-color:hsl(var(--border))}html{scroll-behavior:smooth}body{background-color:hsl(var(--background));color:hsl(var(--foreground));font-variant-ligatures:none;text-rendering:optimizelegibility;font-family:Fira Code,Courier Prime,Courier New,monospace}body:after{content:"";pointer-events:none;z-index:9999;background:repeating-linear-gradient(0deg,#0000,#0000 2px,#00000008 2px 4px);position:fixed;inset:0}body.home-redesign{background:#0a0b0a}body.home-redesign:after{display:none}@keyframes home-pulse-ring{0%{opacity:.7;transform:scale(.9)}70%,to{opacity:0;transform:scale(2.2)}}@keyframes home-caret-blink{0%,50%{opacity:1}51%,to{opacity:0}}.matrix-text{text-shadow:0 0 8px hsl(var(--primary) / .8), 0 0 20px hsl(var(--primary) / .4);font-family:Fira Code,Courier Prime,Courier New,monospace}.terminal-border{border:1px solid hsl(var(--primary) / .35);box-shadow:0 0 12px hsl(var(--primary) / .15), inset 0 0 12px hsl(var(--primary) / .05)}.matrix-glow{box-shadow:0 0 30px hsl(var(--primary) / .25), inset 0 0 30px hsl(var(--primary) / .08)}.glass-card{-webkit-backdrop-filter:blur(12px);border:1px solid hsl(var(--primary) / .2);box-shadow:0 8px 32px #0006, inset 0 1px 0 hsl(var(--primary) / .1);background:#0f0f0fb3}.glass-card:hover{border-color:hsl(var(--primary) / .45);box-shadow:0 8px 32px #00000080, 0 0 20px hsl(var(--primary) / .15), inset 0 1px 0 hsl(var(--primary) / .15);transition:all .3s;transform:translateY(-2px)}.gradient-text{-webkit-text-fill-color:transparent;background:linear-gradient(90deg,#1aff1a,#1affff);-webkit-background-clip:text;background-clip:text}.gradient-text-warm{-webkit-text-fill-color:transparent;background:linear-gradient(90deg,#1aff1a,#ffff1a);-webkit-background-clip:text;background-clip:text}.neon-underline{display:inline-block;position:relative}.neon-underline:after{content:"";background:hsl(var(--primary));width:0;height:1px;box-shadow:0 0 6px hsl(var(--primary));transition:width .3s;position:absolute;bottom:-2px;left:0}.neon-underline:hover:after{width:100%}.section-divider{background:linear-gradient(90deg, transparent, hsl(var(--primary) / .4) 20%, hsl(var(--primary) / .6) 50%, hsl(var(--primary) / .4) 80%, transparent);height:1px;box-shadow:0 0 8px hsl(var(--primary) / .3)}.reveal{opacity:0;transition:opacity .65s,transform .65s;transform:translateY(28px)}.reveal.visible{opacity:1;transform:translateY(0)}.reveal-stagger>*{opacity:0;transition:opacity .5s,transform .5s;transform:translateY(20px)}.reveal-stagger.visible>:first-child{opacity:1;transition-delay:0s;transform:none}.reveal-stagger.visible>:nth-child(2){opacity:1;transition-delay:80ms;transform:none}.reveal-stagger.visible>:nth-child(3){opacity:1;transition-delay:.16s;transform:none}.reveal-stagger.visible>:nth-child(4){opacity:1;transition-delay:.24s;transform:none}.reveal-stagger.visible>:nth-child(5){opacity:1;transition-delay:.32s;transform:none}.reveal-stagger.visible>:nth-child(6){opacity:1;transition-delay:.4s;transform:none}@keyframes terminal-blink{0%,50%{opacity:1}51%,to{opacity:0}}.animate-terminal-blink{animation:1s infinite terminal-blink}@keyframes glow-pulse{0%,to{text-shadow:0 0 8px hsl(var(--primary) / .8), 0 0 20px hsl(var(--primary) / .4)}50%{text-shadow:0 0 15px hsl(var(--primary)), 0 0 40px hsl(var(--primary) / .7), 0 0 60px hsl(var(--primary) / .3)}}.animate-glow-pulse{animation:3s ease-in-out infinite glow-pulse}@keyframes fade-in{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.animate-fade-in{animation:.7s forwards fade-in}@keyframes slide-up{0%{opacity:0;transform:translateY(32px)}to{opacity:1;transform:translateY(0)}}.animate-slide-up{animation:.6s forwards slide-up}@keyframes border-glow{0%,to{border-color:hsl(var(--primary) / .3)}50%{border-color:hsl(var(--primary) / .7)}}.animate-border-glow{animation:3s ease-in-out infinite border-glow}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}.animate-float{animation:4s ease-in-out infinite float}@keyframes shimmer{0%{background-position:-200%}to{background-position:200%}}.animate-shimmer{background:linear-gradient(90deg, hsl(var(--primary) / .1) 0%, hsl(var(--primary) / .4) 50%, hsl(var(--primary) / .1) 100%);background-size:200%;animation:3s linear infinite shimmer}.card-hover-glow{transition:box-shadow .3s,border-color .3s,transform .3s}.card-hover-glow:hover{box-shadow:0 0 28px hsl(var(--primary) / .18);border-color:hsl(var(--primary) / .45);transform:translateY(-2px)}.tag-pill{border:1px solid hsl(var(--primary) / .3);background:hsl(var(--primary) / .08);color:hsl(var(--primary));letter-spacing:.12em;text-transform:uppercase;border-radius:9999px;align-items:center;padding:2px 10px;font-family:Fira Code,monospace;font-size:.65rem;font-weight:700;display:inline-flex}.progress-bar{background:hsl(var(--muted));border-radius:9999px;height:3px;overflow:hidden}.progress-bar-fill{border-radius:9999px;height:100%;transition:width 1.2s cubic-bezier(.4,0,.2,1);box-shadow:0 0 8px}.section-label{letter-spacing:.2em;text-transform:uppercase;color:hsl(var(--primary) / .7);margin-bottom:.5rem;font-family:Fira Code,monospace;font-size:.65rem;font-weight:700}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:hsl(var(--background))}::-webkit-scrollbar-thumb{background:hsl(var(--primary) / .3);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:hsl(var(--primary) / .6)}::selection{background:hsl(var(--primary) / .3);color:hsl(var(--primary))}}body.home-redesign{color:#f3f1e8;background:#0b0c0a}.rd-site{--rd-paper:#0b0c0a;--rd-panel:#11130e;--rd-ink:#f3f1e8;--rd-signal:#d7ff5f;--rd-muted:#9a9e8c;--rd-faint:#64685a;--rd-line:#f3f1e824;background:radial-gradient(circle at 83% 9%, #d7ff5f0e, transparent 26rem), var(--rd-paper);min-height:100vh;color:var(--rd-ink);-webkit-font-smoothing:antialiased;font-family:IBM Plex Sans,system-ui,sans-serif;font-size:16px;line-height:1.5;overflow:hidden}.rd-site *,.rd-site :before,.rd-site :after{box-sizing:border-box}.rd-site a{color:inherit;text-decoration:none}.rd-site button,.rd-site input{font:inherit}.rd-mono{font-family:JetBrains Mono,SFMono-Regular,Consolas,monospace}.rd-skip{z-index:1000;background:var(--rd-signal);color:#0b0c0a;padding:12px 16px;font-size:.72rem;transition:top .18s;position:fixed;top:-80px;left:24px}.rd-skip:focus{top:16px}.rd-site :focus-visible{outline:2px solid var(--rd-signal);outline-offset:5px}.rd-nav{z-index:80;border-bottom:1px solid var(--rd-line);-webkit-backdrop-filter:blur(18px);background:#0b0c0ad6;grid-template-columns:1fr auto 1fr;align-items:center;min-height:76px;padding:0 5.5vw;display:grid;position:sticky;top:0}.rd-wordmark{letter-spacing:-.02em;justify-self:start;align-items:center;gap:12px;font-family:Space Grotesk,system-ui,sans-serif;font-size:.94rem;font-weight:600;display:inline-flex}.rd-wordmark-mark{flex:none;width:32px;height:32px;display:block}.rd-nav-links{color:var(--rd-muted);letter-spacing:.08em;text-transform:uppercase;align-items:center;gap:32px;font-size:.67rem;display:flex}.rd-nav-links a,.rd-nav-cta,.rd-text-action,.rd-case-links a,.rd-index-link,.rd-footer a{transition:color .16s}.rd-nav-links a:hover,.rd-text-action:hover,.rd-case-links a:hover,.rd-index-link:hover,.rd-footer a:hover{color:var(--rd-signal)}.rd-nav-cta{color:var(--rd-signal);letter-spacing:.05em;text-transform:uppercase;border-bottom:1px solid #d7ff5f8c;justify-self:end;padding:3px 0;font-size:.68rem}.rd-hero{--pointer-x:0;--pointer-y:0;border-bottom:1px solid var(--rd-line);grid-template-columns:minmax(0,1.05fr) minmax(440px,.95fr);min-height:calc(100svh - 76px);display:grid;position:relative}.rd-hero:before{z-index:0;content:"";pointer-events:none;background-image:linear-gradient(#f3f1e809 1px,#0000 1px),linear-gradient(90deg,#f3f1e809 1px,#0000 1px);background-size:76px 76px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(90deg,#000,#0000 72%);mask-image:linear-gradient(90deg,#000,#0000 72%)}.rd-hero-copy{z-index:2;flex-direction:column;justify-content:center;align-items:flex-start;min-width:0;padding:clamp(62px,8vh,104px) 3vw 72px 5.5vw;display:flex;position:relative}.rd-availability{color:#c9cdbd;letter-spacing:.12em;text-transform:uppercase;align-items:center;gap:10px;margin-bottom:clamp(42px,6vh,68px);font-size:.64rem;display:inline-flex}.rd-availability span{background:var(--rd-signal);border-radius:50%;width:7px;height:7px;position:relative;box-shadow:0 0 14px #d7ff5f99}.rd-availability span:after{border:1px solid var(--rd-signal);border-radius:inherit;content:"";animation:2.4s ease-out infinite rd-status;position:absolute;inset:-5px}.rd-hero-kicker{color:var(--rd-muted);letter-spacing:.16em;margin:0 0 18px;font-size:.62rem}.rd-hero h1{color:var(--rd-ink);letter-spacing:-.085em;margin:0;font-family:Space Grotesk,system-ui,sans-serif;font-size:clamp(5.5rem,10.1vw,10.25rem);font-weight:600;line-height:.77}.rd-hero h1 span{color:var(--rd-signal)}.rd-hero-statement{letter-spacing:-.04em;max-width:660px;margin:clamp(38px,5vh,58px) 0 0;font-family:Space Grotesk,system-ui,sans-serif;font-size:clamp(1.55rem,2.35vw,2.55rem);font-weight:500;line-height:1.08}.rd-hero-detail{max-width:585px;color:var(--rd-muted);margin:22px 0 0;font-size:clamp(.95rem,1.15vw,1.1rem);line-height:1.7}.rd-hero-actions{flex-wrap:wrap;align-items:center;gap:16px 24px;margin-top:34px;display:flex}.rd-site .rd-primary-action{background:var(--rd-signal);color:#050605;letter-spacing:-.01em;align-items:center;gap:22px;min-height:48px;padding:0 18px;font-family:Space Grotesk,system-ui,sans-serif;font-size:.9rem;font-weight:700;transition:background .16s,transform .16s;display:inline-flex}.rd-site .rd-primary-action:hover{color:#050605;background:#e2ff8c;transform:translateY(-2px)}.rd-text-action{color:#c8ccbc;letter-spacing:.04em;text-transform:uppercase;font-size:.69rem}.rd-hero-plot{z-index:1;border-left:1px solid var(--rd-line);min-width:0;transform:translate(calc(var(--pointer-x) * -6px), calc(var(--pointer-y) * -6px));background:linear-gradient(135deg,#0000 40%,#d7ff5f0a),#f3f1e803;transition:transform .45s cubic-bezier(.2,.8,.2,1);position:relative;overflow:hidden}.rd-hero-plot:after{width:32rem;height:32rem;top:calc(46% + var(--pointer-y) * 13px);left:calc(50% + var(--pointer-x) * 13px);content:"";border:1px solid #d7ff5f14;border-radius:50%;transition:inset .45s;position:absolute;transform:translate(-50%,-50%)}.rd-hero-plot svg{width:min(44vw,700px);min-width:540px;position:absolute;top:50%;left:50%;transform:translate(-50%,-49%)}.rd-grid-lines line{stroke:#f3f1e814;stroke-width:1px}.rd-plot-reference{fill:none;stroke:#f3f1e838;stroke-dasharray:6 8;stroke-width:1.5px}.rd-plot-line{fill:none;stroke:url(#plot-fade);stroke-dasharray:1;stroke-dashoffset:1px;stroke-linecap:round;stroke-width:4px;animation:1.9s cubic-bezier(.3,.8,.2,1) .35s forwards rd-draw}.rd-plot-points circle{fill:var(--rd-signal);filter:drop-shadow(0 0 7px #d7ff5f99)}.rd-orbit{fill:none;stroke:#d7ff5f75;stroke-dasharray:3 6;transform-box:fill-box;transform-origin:50%;animation:18s linear infinite rd-spin}.rd-plot-signal{fill:none;stroke:var(--rd-signal);stroke-width:1px}.rd-plot-meta{z-index:2;color:var(--rd-faint);letter-spacing:.11em;justify-content:space-between;font-size:.57rem;display:flex;position:absolute;top:34px;left:34px;right:34px}.rd-plot-readout{z-index:3;border-top:1px solid var(--rd-line);border-bottom:1px solid var(--rd-line);gap:3px;min-width:154px;padding:14px 0;display:grid;position:absolute;bottom:clamp(64px,10vh,110px);right:clamp(24px,5vw,72px)}.rd-plot-readout strong{color:var(--rd-signal);letter-spacing:-.08em;font-family:Space Grotesk,sans-serif;font-size:clamp(3.8rem,6vw,6.4rem);font-weight:500;line-height:.9}.rd-plot-readout span{color:var(--rd-muted);letter-spacing:.11em;font-size:.52rem}.rd-plot-caption{color:var(--rd-faint);letter-spacing:.12em;font-size:.55rem;position:absolute;bottom:28px;left:34px}.rd-hero-index{z-index:4;color:var(--rd-faint);letter-spacing:.11em;pointer-events:none;justify-content:space-between;font-size:.5rem;display:none;position:absolute;bottom:22px;left:5.5vw;right:5.5vw}.rd-signal-strip{border-bottom:1px solid var(--rd-line);min-height:54px;color:var(--rd-muted);letter-spacing:.11em;text-transform:uppercase;white-space:nowrap;align-items:center;gap:24px;padding:0 5.5vw;font-size:.61rem;display:flex;overflow:hidden}.rd-signal-strip span:first-child{color:var(--rd-signal)}.rd-signal-strip i{background:var(--rd-faint);flex:none;width:4px;height:4px;transform:rotate(45deg)}.rd-section{padding:clamp(104px,11vw,168px) 5.5vw}.rd-section-intro{-moz-column-gap:8vw;grid-template-columns:minmax(0,1.15fr) minmax(260px,.55fr);align-items:end;column-gap:8vw;max-width:1500px;margin:0 auto clamp(70px,8vw,116px);display:grid}.rd-section-label{color:var(--rd-signal);letter-spacing:.16em;grid-column:1/-1;margin:0 0 26px;font-size:.63rem}.rd-section-intro h2,.rd-practice h2{letter-spacing:-.075em;margin:0;font-family:Space Grotesk,sans-serif;font-size:clamp(3rem,6.4vw,7.25rem);font-weight:500;line-height:.92}.rd-section-intro>p:last-child{max-width:480px;color:var(--rd-muted);margin:0;font-size:1.04rem;line-height:1.75}.rd-section-intro--compact{grid-template-columns:minmax(0,.9fr) minmax(280px,.55fr);margin-bottom:64px}.rd-section-intro--compact h2{font-size:clamp(2.8rem,5vw,5.6rem)}.rd-case-list{max-width:1500px;margin:0 auto}.rd-case{border-top:1px solid var(--rd-line);grid-template-columns:minmax(220px,.85fr) minmax(330px,1.3fr) minmax(260px,.95fr) 132px;align-items:stretch;gap:clamp(28px,3.2vw,56px);min-height:460px;padding:40px 0 42px;display:grid;position:relative}.rd-case:last-child{border-bottom:1px solid var(--rd-line)}.rd-case:before{background:var(--rd-signal);content:"";width:0;height:1px;transition:width .5s cubic-bezier(.2,.8,.2,1);position:absolute;top:-1px;left:0}.rd-case:hover:before{width:100%}.rd-case-heading{flex-direction:column;min-width:0;display:flex}.rd-case-number{color:var(--rd-signal);font-size:.65rem}.rd-case-heading p{color:var(--rd-muted);letter-spacing:.12em;text-transform:uppercase;margin:30px 0 0;font-size:.61rem}.rd-case-heading h3{letter-spacing:-.065em;margin:auto 0 0;font-family:Space Grotesk,sans-serif;font-size:clamp(2.4rem,4vw,5.2rem);font-weight:500;line-height:.93;transition:color .2s}.rd-case:hover .rd-case-heading h3{color:var(--rd-signal)}.rd-project-graphic{border-left:1px solid var(--rd-line);border-right:1px solid var(--rd-line);background-color:#f3f1e803;background-image:linear-gradient(#f3f1e80a 1px,#0000 1px),linear-gradient(90deg,#f3f1e80a 1px,#0000 1px);background-position:0 0,0 0;background-repeat:repeat,repeat;background-size:38px 38px;background-attachment:scroll,scroll;background-origin:padding-box,padding-box;background-clip:border-box,border-box;min-height:360px;position:relative;overflow:hidden}.rd-project-graphic--solvent{justify-content:center;align-items:center;padding:28px;display:flex}.rd-flow-node{background:var(--rd-paper);border:1px solid #f3f1e82e;flex-direction:column;flex:none;justify-content:flex-end;width:110px;height:130px;padding:13px;transition:transform .22s,border-color .22s;display:flex;position:relative}.rd-case:hover .rd-flow-node:first-of-type{transform:translateY(-8px)}.rd-case:hover .rd-flow-node:nth-of-type(3){transform:translateY(8px)}.rd-flow-node span{color:var(--rd-faint);font-size:.56rem;position:absolute;top:12px;left:12px}.rd-flow-node strong{font-family:Space Grotesk,sans-serif;font-size:1.15rem;font-weight:500}.rd-flow-node small{color:var(--rd-muted);text-transform:uppercase;font-family:JetBrains Mono,monospace;font-size:.53rem}.rd-flow-node--active{border-color:var(--rd-signal);color:var(--rd-signal);box-shadow:0 0 28px #d7ff5f14}.rd-flow-line{background:#f3f1e82e;flex:auto;width:clamp(24px,3vw,54px);height:1px;position:relative}.rd-flow-line:after{background:var(--rd-signal);content:"";width:5px;height:5px;position:absolute;top:-2px;right:0;transform:rotate(45deg)}.rd-project-graphic--sports svg{width:92%;position:absolute;inset:18% 4% auto}.rd-project-graphic--sports circle{fill:var(--rd-signal)}.rd-mini-baseline{fill:none;stroke:#f3f1e833;stroke-dasharray:5 7}.rd-mini-curve{fill:none;stroke:var(--rd-signal);stroke-dasharray:1;stroke-dashoffset:1px;stroke-linecap:round;stroke-width:3px}.rd-case.is-visible .rd-mini-curve{animation:1.4s .24s forwards rd-draw}.rd-mini-label{color:var(--rd-faint);letter-spacing:.12em;font-size:.55rem;position:absolute;bottom:22px;left:24px}.rd-project-graphic--juryrig{flex-direction:column;justify-content:center;gap:24px;padding:36px;display:flex}.rd-audit-row{grid-template-columns:116px 1fr 42px;align-items:center;gap:14px;display:grid}.rd-audit-row span{color:var(--rd-muted);letter-spacing:.08em;font-size:.51rem}.rd-audit-row i{background:#f3f1e81a;height:4px;overflow:hidden}.rd-audit-row b{background:var(--rd-signal);height:100%;transition:width 1.1s cubic-bezier(.2,.8,.2,1);display:block;width:0!important}.rd-case.is-visible .rd-audit-row b{width:var(--bar-width)}.rd-case.is-visible .rd-audit-row:first-child b{width:42%!important}.rd-case.is-visible .rd-audit-row:nth-child(2) b{width:61%!important}.rd-case.is-visible .rd-audit-row:nth-child(3) b{width:84%!important}.rd-case.is-visible .rd-audit-row:nth-child(4) b{width:73%!important}.rd-audit-row em{color:var(--rd-signal);font-family:Space Grotesk,sans-serif;font-size:.78rem;font-style:normal}.rd-case-copy{flex-direction:column;min-width:0;display:flex}.rd-case-copy>p{color:#d4d7ca;margin:0;font-size:clamp(1.05rem,1.35vw,1.3rem);line-height:1.6}.rd-case-copy>small{color:var(--rd-muted);margin-top:22px;font-size:.84rem;line-height:1.65}.rd-case-links{color:#c9cdbd;letter-spacing:.07em;text-transform:uppercase;flex-wrap:wrap;gap:18px 24px;margin-top:auto;padding-top:24px;font-size:.61rem;display:flex}.rd-case-metric{text-align:right;flex-direction:column;justify-content:flex-end;align-items:flex-end;display:flex}.rd-case-metric strong{color:var(--rd-signal);letter-spacing:-.07em;font-family:Space Grotesk,sans-serif;font-size:clamp(2.6rem,4vw,4.6rem);font-weight:500;line-height:.9}.rd-case-metric span{max-width:120px;color:var(--rd-faint);letter-spacing:.08em;text-transform:uppercase;margin-top:10px;font-size:.5rem}.rd-source{border-top:1px solid var(--rd-line);background:#f3f1e803}.rd-repo-index{border-top:1px solid var(--rd-line);max-width:1500px;margin:0 auto}.rd-repo-index>a{border-bottom:1px solid var(--rd-line);grid-template-columns:52px minmax(170px,.7fr) 100px minmax(250px,1.35fr) 36px;align-items:center;gap:24px;min-height:108px;padding:22px 8px;transition:padding .2s,background .2s;display:grid}.rd-repo-index>a:hover{background:#d7ff5f09;padding-left:18px;padding-right:18px}.rd-repo-count,.rd-repo-kind{color:var(--rd-faint);letter-spacing:.08em;text-transform:uppercase;font-size:.58rem}.rd-repo-index strong{letter-spacing:-.035em;font-family:Space Grotesk,sans-serif;font-size:clamp(1.2rem,1.8vw,1.65rem);font-weight:500}.rd-repo-index p{color:var(--rd-muted);margin:0;font-size:.9rem}.rd-repo-index>a>span:last-child{color:var(--rd-signal);font-size:1.1rem;transition:transform .18s}.rd-repo-index>a:hover>span:last-child{transform:translate(3px,-3px)}.rd-index-link{color:var(--rd-signal);letter-spacing:.08em;text-transform:uppercase;align-items:center;gap:15px;margin:38px 0 0 calc(50% - min(1500px,100%)/2);font-size:.65rem;display:inline-flex}.rd-practice{border-top:1px solid var(--rd-line);border-bottom:1px solid var(--rd-line);background:var(--rd-panel);grid-template-columns:minmax(0,.9fr) minmax(420px,.7fr);gap:10vw;padding:clamp(110px,12vw,184px) 5.5vw;display:grid}.rd-practice-statement{max-width:770px}.rd-practice-statement>p:not(.rd-section-label){max-width:640px;color:var(--rd-muted);margin:36px 0 30px;font-size:clamp(1rem,1.3vw,1.2rem);line-height:1.75}.rd-practice-log{margin:8px 0 0;padding:0;list-style:none}.rd-practice-log li{border-top:1px solid var(--rd-line);grid-template-columns:78px 1fr;align-items:start;gap:22px;min-height:96px;padding:22px 0;display:grid}.rd-practice-log li:last-child{border-bottom:1px solid var(--rd-line)}.rd-practice-log span{color:var(--rd-signal);letter-spacing:.08em;font-size:.61rem}.rd-practice-log p{color:#d3d6c9;margin:0;font-size:.9rem;line-height:1.6}.rd-writing{padding-bottom:clamp(120px,14vw,210px)}.rd-notes{border-top:1px solid var(--rd-line);border-bottom:1px solid var(--rd-line);grid-template-columns:repeat(3,1fr);max-width:1500px;margin:0 auto;display:grid}.rd-notes>a{border-right:1px solid var(--rd-line);flex-direction:column;min-height:280px;padding:30px;transition:background .18s;display:flex;position:relative}.rd-notes>a:last-child{border-right:0}.rd-notes>a:hover{background:#d7ff5f09}.rd-notes span{color:var(--rd-signal);letter-spacing:.09em;text-transform:uppercase;font-size:.55rem}.rd-notes h3{letter-spacing:-.05em;max-width:420px;margin:auto 0 0;font-family:Space Grotesk,sans-serif;font-size:clamp(1.65rem,2.5vw,2.75rem);font-weight:500;line-height:1.02}.rd-notes>a>span:last-child{font-size:1rem;transition:transform .18s;position:absolute;bottom:28px;right:30px}.rd-notes>a:hover>span:last-child{transform:translate(4px,-4px)}.rd-newsletter{border-top:1px solid var(--rd-line);border-bottom:1px solid var(--rd-line);grid-template-columns:minmax(250px,.7fr) minmax(520px,1.3fr);align-items:end;gap:8vw;max-width:1500px;margin:70px auto 0;padding:40px 0;display:grid}.rd-newsletter>div>span{color:var(--rd-signal);letter-spacing:.1em;font-size:.55rem}.rd-newsletter h3{letter-spacing:-.05em;margin:16px 0 8px;font-family:Space Grotesk,sans-serif;font-size:clamp(1.9rem,3vw,3.2rem);font-weight:500;line-height:1}.rd-newsletter>div>p{max-width:430px;color:var(--rd-muted);margin:0;font-size:.9rem}.rd-newsletter form{grid-template-columns:minmax(120px,.6fr) minmax(220px,1fr) auto;align-items:end;gap:14px;display:grid;position:relative}.rd-newsletter label{gap:8px;display:grid}.rd-newsletter label span{color:var(--rd-faint);letter-spacing:.09em;font-size:.5rem}.rd-newsletter input{border:1px solid var(--rd-line);width:100%;height:48px;color:var(--rd-ink);background:0 0;border-radius:0;outline:none;padding:0 14px}.rd-newsletter input:focus{border-color:var(--rd-signal)}.rd-newsletter input::placeholder{color:var(--rd-faint)}.rd-newsletter button{background:var(--rd-signal);height:48px;color:var(--rd-paper);cursor:pointer;letter-spacing:.05em;text-transform:uppercase;border:0;border-radius:0;padding:0 18px;font-size:.62rem;font-weight:700}.rd-newsletter button:disabled{cursor:wait;opacity:.55}.rd-newsletter-message{color:var(--rd-signal);margin:0;font-size:.76rem;position:absolute;bottom:-28px;right:0}.rd-newsletter-message.is-error{color:#ff8b80}.rd-contact{background:var(--rd-signal);color:#0b0c0a;place-items:center start;min-height:min(760px,88vh);padding:clamp(90px,10vw,160px) 5.5vw;display:grid;position:relative;overflow:hidden}.rd-contact>div:first-child{z-index:2;max-width:1000px;position:relative}.rd-contact p:first-child{letter-spacing:.14em;margin:0 0 28px;font-size:.64rem;font-weight:700}.rd-contact h2{letter-spacing:-.085em;margin:0;font-family:Space Grotesk,sans-serif;font-size:clamp(4rem,9.5vw,10.5rem);font-weight:600;line-height:.78}.rd-contact>div:first-child>p:nth-of-type(2){max-width:650px;margin:46px 0 34px;font-size:clamp(1rem,1.45vw,1.35rem);line-height:1.55}.rd-contact-link{letter-spacing:.05em;border-bottom:2px solid #0b0c0a;align-items:center;gap:30px;padding-bottom:6px;font-size:clamp(.8rem,1vw,1rem);font-weight:700;display:inline-flex}.rd-contact-link span{transition:transform .18s}.rd-contact-link:hover span{transform:translate(4px,-4px)}.rd-contact-orbit{border:1px solid #0b0c0a59;border-radius:50%;width:min(49vw,720px);height:min(49vw,720px);position:absolute;bottom:-16vw;right:-7vw}.rd-contact-orbit:before,.rd-contact-orbit:after{border-radius:inherit;content:"";border:1px solid #0b0c0a38;position:absolute}.rd-contact-orbit:before{inset:12%}.rd-contact-orbit:after{background:#0b0c0a0e;inset:28%}.rd-contact-orbit>span{letter-spacing:.18em;font-family:JetBrains Mono,monospace;font-size:.55rem;position:absolute;top:49%;left:-4%;transform:rotate(-90deg)}.rd-footer{min-height:108px;color:var(--rd-faint);letter-spacing:.08em;text-transform:uppercase;grid-template-columns:1fr auto 1fr;align-items:center;gap:30px;padding:28px 5.5vw;font-size:.55rem;display:grid}.rd-footer div{color:var(--rd-muted);gap:24px;display:flex}.rd-footer>span:last-child{justify-self:end}.rd-site [data-reveal]{opacity:1;transition:opacity .7s cubic-bezier(.2,.8,.2,1),transform .7s cubic-bezier(.2,.8,.2,1);transform:translateY(32px)}.rd-site [data-reveal].is-visible{opacity:1;transform:translateY(0)}@keyframes rd-draw{to{stroke-dashoffset:0}}@keyframes rd-spin{to{transform:rotate(360deg)}}@keyframes rd-status{0%{opacity:.7;transform:scale(.65)}75%,to{opacity:0;transform:scale(1.7)}}@media (width<=1180px){.rd-hero{grid-template-columns:minmax(0,1.05fr) minmax(380px,.78fr)}.rd-case{grid-template-columns:minmax(190px,.72fr) minmax(300px,1.1fr) minmax(240px,.9fr)}.rd-case-metric{position:absolute;top:38px;right:0}.rd-case-metric strong{font-size:2.5rem}.rd-case-metric span{display:none}.rd-newsletter{grid-template-columns:.65fr 1fr}.rd-newsletter form{grid-template-columns:1fr 1.2fr}.rd-newsletter button{grid-column:2}}@media (width<=900px){.rd-nav{grid-template-columns:1fr auto}.rd-nav-links{display:none}.rd-hero{display:block}.rd-hero-copy{min-height:calc(100svh - 76px);padding-right:5.5vw}.rd-hero h1{font-size:clamp(5.8rem,19vw,9rem)}.rd-hero-plot{border-top:1px solid var(--rd-line);border-left:0;min-height:680px}.rd-hero-plot svg{width:min(86vw,700px)}.rd-section-intro,.rd-section-intro--compact{grid-template-columns:1fr;row-gap:28px}.rd-section-intro>p:last-child{max-width:660px}.rd-case{grid-template-columns:minmax(170px,.55fr) 1fr;min-height:0}.rd-project-graphic{grid-area:2/1/auto/-1;min-height:410px}.rd-case-copy{grid-column:2}.rd-case-metric{top:40px}.rd-repo-index>a{grid-template-columns:42px 1fr 90px 30px}.rd-repo-index p{grid-column:2/4}.rd-practice{grid-template-columns:1fr;gap:76px}.rd-notes{grid-template-columns:1fr}.rd-notes>a{border-right:0;border-bottom:1px solid var(--rd-line);min-height:210px}.rd-notes>a:last-child{border-bottom:0}.rd-newsletter{grid-template-columns:1fr;gap:44px}.rd-newsletter form{grid-template-columns:1fr 1.35fr auto}.rd-newsletter button{grid-column:auto}.rd-contact-orbit{opacity:.5}}@media (width<=640px){.rd-nav{min-height:68px;padding:0 20px}.rd-wordmark>span:last-child{display:none}.rd-nav-cta{font-size:.58rem}.rd-hero-copy{min-height:calc(100svh - 68px);padding:48px 20px 46px}.rd-availability{margin-bottom:50px;font-size:.55rem}.rd-hero-kicker{letter-spacing:.11em;font-size:.5rem}.rd-hero h1{font-size:clamp(5.25rem,25vw,7.2rem)}.rd-hero-statement{margin-top:42px;font-size:1.65rem}.rd-hero-actions{flex-direction:column;align-items:flex-start}.rd-primary-action{justify-content:space-between;width:100%}.rd-hero-plot{min-height:530px}.rd-hero-plot svg{min-width:470px}.rd-plot-meta{top:20px;left:20px;right:20px}.rd-plot-readout{bottom:62px;right:20px}.rd-plot-caption{left:20px}.rd-signal-strip{padding:0 20px;overflow-x:auto}.rd-section{padding:92px 20px}.rd-section-intro{margin-bottom:60px}.rd-section-intro h2,.rd-practice h2{font-size:clamp(3rem,14vw,4.6rem)}.rd-case{flex-direction:column;gap:30px;padding:30px 0 50px;display:flex}.rd-case-heading{min-height:150px}.rd-case-heading p{margin-top:20px}.rd-case-heading h3{margin-top:auto;font-size:3.3rem}.rd-case-metric{top:30px}.rd-project-graphic{min-height:320px}.rd-project-graphic--solvent{padding:18px}.rd-flow-node{width:82px;height:112px;padding:10px}.rd-flow-node strong{font-size:.92rem}.rd-flow-node small{font-size:.43rem}.rd-project-graphic--juryrig{padding:24px 18px}.rd-audit-row{grid-template-columns:88px 1fr 36px;gap:9px}.rd-case-copy>p{font-size:1.05rem}.rd-repo-index>a{grid-template-columns:32px 1fr 22px;gap:14px;min-height:0;padding:24px 0}.rd-repo-index>a:hover{padding-left:0;padding-right:0}.rd-repo-kind{display:none}.rd-repo-index p{grid-column:2/4}.rd-index-link{margin-left:0}.rd-practice{gap:64px;padding:96px 20px}.rd-practice-log li{grid-template-columns:62px 1fr}.rd-notes>a{min-height:190px;padding:24px 0}.rd-notes>a>span:last-child{bottom:24px;right:4px}.rd-newsletter{margin-top:56px}.rd-newsletter form{grid-template-columns:1fr}.rd-newsletter button{grid-column:auto}.rd-newsletter-message{position:static}.rd-contact{min-height:720px;padding:100px 20px}.rd-contact h2{font-size:clamp(4.2rem,20vw,6.7rem)}.rd-contact-orbit{width:110vw;height:110vw;bottom:-28vw;right:-55vw}.rd-footer{grid-template-columns:1fr auto;padding:32px 20px}.rd-footer>span:last-child{display:none}}@media (prefers-reduced-motion:reduce){.rd-site *,.rd-site :before,.rd-site :after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}.rd-site [data-reveal]{opacity:1;transform:none}.rd-plot-line,.rd-mini-curve{stroke-dashoffset:0}}@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))}}@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-tracking{syntax:"*";inherits:false}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{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}
