/*! 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,::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-scroll-snap-strictness:proximity;--tw-space-x-reverse:0;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight: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-duration:initial;--tw-ease:initial;--tw-content:"";--tw-scale-x:1;--tw-scale-y:1;--tw-scale-z:1;--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{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--color-black:#000;--color-white:#fff;--spacing:.25rem;--container-xs:20rem;--container-sm:24rem;--container-lg:32rem;--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);--text-lg:1.125rem;--text-lg--line-height:calc(1.75 / 1.125);--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--tracking-tight:-.025em;--tracking-widest:.1em;--leading-tight:1.25;--leading-snug:1.375;--leading-normal:1.5;--leading-relaxed:1.625;--radius-xs:.125rem;--radius-sm:.25rem;--radius-md:.375rem;--radius-lg:.5rem;--radius-xl:.75rem;--ease-in-out:cubic-bezier(.4, 0, .2, 1);--animate-spin:spin 1s linear infinite;--animate-pulse:pulse 2s cubic-bezier(.4, 0, .6, 1) infinite;--aspect-video:16 / 9;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}
}
@layer base{*,:after,:before,::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]){appearance:button}
::file-selector-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{.\@container\/card-header{container:card-header/inline-size}
.\@container\/field-group{container:field-group/inline-size}
.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}
.inset-0{inset:calc(var(--spacing) * 0)}
.inset-x-0{inset-inline:calc(var(--spacing) * 0)}
.inset-y-0{inset-block:calc(var(--spacing) * 0)}
.inset-s-1\/2{inset-inline-start:50%}
.start{inset-inline-start:var(--spacing)}
.end{inset-inline-end:var(--spacing)}
.-top-12{top:calc(var(--spacing) * -12)}
.top-0{top:calc(var(--spacing) * 0)}
.top-1\.5{top:calc(var(--spacing) * 1.5)}
.top-1\/2{top:50%}
.top-3\.5{top:calc(var(--spacing) * 3.5)}
.top-4{top:calc(var(--spacing) * 4)}
.top-\[1px\]{top:1px}
.top-\[50\%\]{top:50%}
.top-\[60\%\]{top:60%}
.top-full{top:100%}
.-right-12{right:calc(var(--spacing) * -12)}
.right-0{right:calc(var(--spacing) * 0)}
.right-1{right:calc(var(--spacing) * 1)}
.right-2{right:calc(var(--spacing) * 2)}
.right-3{right:calc(var(--spacing) * 3)}
.right-3\.5{right:calc(var(--spacing) * 3.5)}
.right-4{right:calc(var(--spacing) * 4)}
.-bottom-12{bottom:calc(var(--spacing) * -12)}
.bottom-0{bottom:calc(var(--spacing) * 0)}
.-left-12{left:calc(var(--spacing) * -12)}
.left-0{left:calc(var(--spacing) * 0)}
.left-1\/2{left:50%}
.left-2{left:calc(var(--spacing) * 2)}
.left-3{left:calc(var(--spacing) * 3)}
.left-\[50\%\]{left:50%}
.isolate{isolation:isolate}
.z-10{z-index:10}
.z-20{z-index:20}
.z-50{z-index:50}
.z-\[1\]{z-index:1}
.order-first{order:-9999}
.order-last{order:9999}
.col-start-2{grid-column-start:2}
.row-span-2{grid-row:span 2/span 2}
.row-start-1{grid-row-start:1}
.m-0\!{margin:calc(var(--spacing) * 0)!important}
.-mx-1{margin-inline:calc(var(--spacing) * -1)}
.mx-2{margin-inline:calc(var(--spacing) * 2)}
.mx-3\.5{margin-inline:calc(var(--spacing) * 3.5)}
.mx-auto{margin-inline:auto}
.-my-2{margin-block:calc(var(--spacing) * -2)}
.my-0{margin-block:calc(var(--spacing) * 0)}
.my-0\.5{margin-block:calc(var(--spacing) * .5)}
.my-1{margin-block:calc(var(--spacing) * 1)}
.-mt-4{margin-top:calc(var(--spacing) * -4)}
.mt-0\.5{margin-top:calc(var(--spacing) * .5)}
.mt-1\.5{margin-top:calc(var(--spacing) * 1.5)}
.mt-2{margin-top:calc(var(--spacing) * 2)}
.mt-4{margin-top:calc(var(--spacing) * 4)}
.mt-auto{margin-top:auto}
.mb-2{margin-bottom:calc(var(--spacing) * 2)}
.mb-3{margin-bottom:calc(var(--spacing) * 3)}
.-ml-1{margin-left:calc(var(--spacing) * -1)}
.-ml-4{margin-left:calc(var(--spacing) * -4)}
.ml-1{margin-left:calc(var(--spacing) * 1)}
.ml-4{margin-left:calc(var(--spacing) * 4)}
.ml-auto{margin-left:auto}
.line-clamp-1{-webkit-line-clamp:1;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}
.line-clamp-2{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}
.block{display:block}
.contents{display:contents}
.flex{display:flex}
.grid{display:grid}
.hidden{display:none}
.inline-flex{display:inline-flex}
.table{display:table}
.table-caption{display:table-caption}
.table-cell{display:table-cell}
.table-row{display:table-row}
.field-sizing-content{field-sizing:content}
.aspect-square{aspect-ratio:1}
.aspect-video{aspect-ratio:var(--aspect-video)}
.size-\(--cell-size\){width:var(--cell-size);height:var(--cell-size)}
.size-2{width:calc(var(--spacing) * 2);height:calc(var(--spacing) * 2)}
.size-2\.5{width:calc(var(--spacing) * 2.5);height:calc(var(--spacing) * 2.5)}
.size-3{width:calc(var(--spacing) * 3);height:calc(var(--spacing) * 3)}
.size-3\.5{width:calc(var(--spacing) * 3.5);height:calc(var(--spacing) * 3.5)}
.size-4{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}
.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)}
.size-10{width:calc(var(--spacing) * 10);height:calc(var(--spacing) * 10)}
.size-16{width:calc(var(--spacing) * 16);height:calc(var(--spacing) * 16)}
.size-auto{width:auto;height:auto}
.size-full{width:100%;height:100%}
.h-\(--cell-size\){height:var(--cell-size)}
.h-1\.5{height:calc(var(--spacing) * 1.5)}
.h-2{height:calc(var(--spacing) * 2)}
.h-2\.5{height:calc(var(--spacing) * 2.5)}
.h-4{height:calc(var(--spacing) * 4)}
.h-5{height:calc(var(--spacing) * 5)}
.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)}
.h-10{height:calc(var(--spacing) * 10)}
.h-12{height:calc(var(--spacing) * 12)}
.h-\[calc\(--spacing\(5\.5\)\)\]{height:calc(calc(var(--spacing) * 5.5))}
.h-\[calc\(100\%-1px\)\]{height:calc(100% - 1px)}
.h-\[var\(--radix-navigation-menu-viewport-height\)\]{height:var(--radix-navigation-menu-viewport-height)}
.h-\[var\(--radix-select-trigger-height\)\]{height:var(--radix-select-trigger-height)}
.h-auto{height:auto}
.h-full{height:100%}
.h-max{height:max-content}
.h-px{height:1px}
.h-svh{height:100svh}
.max-h-\(--radix-context-menu-content-available-height\){max-height:var(--radix-context-menu-content-available-height)}
.max-h-\(--radix-dropdown-menu-content-available-height\){max-height:var(--radix-dropdown-menu-content-available-height)}
.max-h-\(--radix-select-content-available-height\){max-height:var(--radix-select-content-available-height)}
.max-h-96{max-height:calc(var(--spacing) * 96)}
.max-h-\[300px\]{max-height:300px}
.max-h-\[min\(calc\(--spacing\(96\)---spacing\(9\)\)\,calc\(var\(--available-height\)---spacing\(9\)\)\)\]{max-height:min(calc(calc(var(--spacing) * 96) - calc(var(--spacing) * 9)), calc(var(--available-height) - calc(var(--spacing) * 9)))}
.min-h-0{min-height:calc(var(--spacing) * 0)}
.min-h-4{min-height:calc(var(--spacing) * 4)}
.min-h-9{min-height:calc(var(--spacing) * 9)}
.min-h-16{min-height:calc(var(--spacing) * 16)}
.min-h-full{min-height:100%}
.min-h-svh{min-height:100svh}
.w-\(--anchor-width\){width:var(--anchor-width)}
.w-\(--cell-size\){width:var(--cell-size)}
.w-\(--sidebar-width\){width:var(--sidebar-width)}
.w-0{width:calc(var(--spacing) * 0)}
.w-1{width:calc(var(--spacing) * 1)}
.w-2{width:calc(var(--spacing) * 2)}
.w-2\.5{width:calc(var(--spacing) * 2.5)}
.w-3{width:calc(var(--spacing) * 3)}
.w-3\/4{width:75%}
.w-4{width:calc(var(--spacing) * 4)}
.w-5{width:calc(var(--spacing) * 5)}
.w-9{width:calc(var(--spacing) * 9)}
.w-10{width:calc(var(--spacing) * 10)}
.w-24{width:calc(var(--spacing) * 24)}
.w-64{width:calc(var(--spacing) * 64)}
.w-72{width:calc(var(--spacing) * 72)}
.w-\[100px\]{width:100px}
.w-auto{width:auto}
.w-fit{width:fit-content}
.w-full{width:100%}
.w-max{width:max-content}
.w-px{width:1px}
.max-w-\(--available-width\){max-width:var(--available-width)}
.max-w-\(--skeleton-width\){max-width:var(--skeleton-width)}
.max-w-\[80\%\]{max-width:80%}
.max-w-\[calc\(100\%-2rem\)\]{max-width:calc(100% - 2rem)}
.max-w-full{max-width:100%}
.max-w-max{max-width:max-content}
.max-w-sm{max-width:var(--container-sm)}
.min-w-\(--cell-size\){min-width:var(--cell-size)}
.min-w-0{min-width:calc(var(--spacing) * 0)}
.min-w-5{min-width:calc(var(--spacing) * 5)}
.min-w-8{min-width:calc(var(--spacing) * 8)}
.min-w-9{min-width:calc(var(--spacing) * 9)}
.min-w-10{min-width:calc(var(--spacing) * 10)}
.min-w-16{min-width:calc(var(--spacing) * 16)}
.min-w-40{min-width:calc(var(--spacing) * 40)}
.min-w-\[8rem\]{min-width:8rem}
.min-w-\[12rem\]{min-width:12rem}
.min-w-\[calc\(var\(--anchor-width\)\+--spacing\(7\)\)\]{min-width:calc(var(--anchor-width) + calc(var(--spacing) * 7))}
.min-w-\[var\(--radix-select-trigger-width\)\]{min-width:var(--radix-select-trigger-width)}
.flex-1{flex:1}
.shrink-0{flex-shrink:0}
.grow{flex-grow:1}
.grow-0{flex-grow:0}
.basis-full{flex-basis:100%}
.caption-bottom{caption-side:bottom}
.border-collapse{border-collapse:collapse}
.origin-\(--radix-context-menu-content-transform-origin\){transform-origin:var(--radix-context-menu-content-transform-origin)}
.origin-\(--radix-dropdown-menu-content-transform-origin\){transform-origin:var(--radix-dropdown-menu-content-transform-origin)}
.origin-\(--radix-hover-card-content-transform-origin\){transform-origin:var(--radix-hover-card-content-transform-origin)}
.origin-\(--radix-menubar-content-transform-origin\){transform-origin:var(--radix-menubar-content-transform-origin)}
.origin-\(--radix-popover-content-transform-origin\){transform-origin:var(--radix-popover-content-transform-origin)}
.origin-\(--radix-select-content-transform-origin\){transform-origin:var(--radix-select-content-transform-origin)}
.origin-\(--radix-tooltip-content-transform-origin\){transform-origin:var(--radix-tooltip-content-transform-origin)}
.origin-\(--transform-origin\){transform-origin:var(--transform-origin)}
.-translate-x-1\/2{--tw-translate-x:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}
.-translate-x-px{--tw-translate-x:-1px;translate:var(--tw-translate-x) var(--tw-translate-y)}
.translate-x-\[-50\%\]{--tw-translate-x:-50%;translate:var(--tw-translate-x) var(--tw-translate-y)}
.translate-x-px{--tw-translate-x:1px;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)}
.-translate-y-3\/4{--tw-translate-y:calc(calc(3 / 4 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}
.translate-y-0\.5{--tw-translate-y:calc(var(--spacing) * .5);translate:var(--tw-translate-x) var(--tw-translate-y)}
.translate-y-3\/4{--tw-translate-y:calc(3 / 4 * 100%);translate:var(--tw-translate-x) var(--tw-translate-y)}
.translate-y-\[-50\%\]{--tw-translate-y:-50%;translate:var(--tw-translate-x) var(--tw-translate-y)}
.translate-y-\[calc\(-50\%_-_2px\)\]{--tw-translate-y:calc(-50% - 2px);translate:var(--tw-translate-x) var(--tw-translate-y)}
.rotate-45{rotate:45deg}
.rotate-90{rotate:90deg}
.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}
.scroll-fade-x{--_scroll-fade-size-s:var(--scroll-fade-s-size,var(--scroll-fade-size,min(12%, calc(var(--spacing) * 10))));--_scroll-fade-size-e:var(--scroll-fade-e-size,var(--scroll-fade-size,min(12%, calc(var(--spacing) * 10))));--scroll-fade-inline:linear-gradient(to right, transparent 0, #000 var(--scroll-fade-s,0px), #000 calc(100% - var(--scroll-fade-e,0px)), transparent 100%)}
.scroll-fade-x:where([dir=rtl],[dir=rtl] *){--scroll-fade-inline:linear-gradient(to left, transparent 0, #000 var(--scroll-fade-s,0px), #000 calc(100% - var(--scroll-fade-e,0px)), transparent 100%)}
.scroll-fade-x{-webkit-mask-image:var(--scroll-fade-mask,var(--scroll-fade-inline));-webkit-mask-image:var(--scroll-fade-mask,var(--scroll-fade-inline));-webkit-mask-image:var(--scroll-fade-mask,var(--scroll-fade-inline));-webkit-mask-image:var(--scroll-fade-mask,var(--scroll-fade-inline));mask-image:var(--scroll-fade-mask,var(--scroll-fade-inline));-webkit-mask-composite:source-in;-webkit-mask-composite:source-in;-webkit-mask-composite:source-in;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-composite:source-in;mask-composite:intersect}
@supports (animation-timeline:scroll()){.scroll-fade-x{animation:1ms ease-in-out scroll-fade-reveal-s,1ms ease-in-out scroll-fade-reveal-e;animation-timeline:scroll(self inline),scroll(self inline);animation-range:0 var(--scroll-fade-reveal,calc(var(--spacing) * 24)), calc(100% - var(--scroll-fade-reveal,calc(var(--spacing) * 24))) 100%;animation-fill-mode:both}
}
@supports not (animation-timeline:scroll()){.scroll-fade-x{--scroll-fade-s:var(--_scroll-fade-size-s);--scroll-fade-e:var(--_scroll-fade-size-e)}
}
.scroll-fade-b{--_scroll-fade-size-b:var(--scroll-fade-b-size,var(--scroll-fade-size,min(12%, calc(var(--spacing) * 10))));--scroll-fade-mask:linear-gradient(to bottom, #000 0, #000 calc(100% - var(--scroll-fade-b,0px)), transparent 100%);-webkit-mask-image:var(--scroll-fade-mask);-webkit-mask-image:var(--scroll-fade-mask);-webkit-mask-image:var(--scroll-fade-mask);-webkit-mask-image:var(--scroll-fade-mask);mask-image:var(--scroll-fade-mask);-webkit-mask-composite:source-in;-webkit-mask-composite:source-in;-webkit-mask-composite:source-in;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-composite:source-in;mask-composite:intersect}
@supports (animation-timeline:scroll()){.scroll-fade-b{animation:1ms ease-in-out scroll-fade-reveal-b;animation-timeline:scroll(self y);animation-range:calc(100% - var(--scroll-fade-reveal,calc(var(--spacing) * 24))) 100%;animation-fill-mode:both}
}
@supports not (animation-timeline:scroll()){.scroll-fade-b{--scroll-fade-b:var(--_scroll-fade-size-b)}
}
.animate-caret-blink{animation:1.25s ease-out infinite caret-blink}
.animate-in{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)}
.animate-pulse{animation:var(--animate-pulse)}
.animate-spin{animation:var(--animate-spin)}
.cursor-default{cursor:default}
.cursor-text{cursor:text}
.touch-none{touch-action:none}
.resize{resize:both}
.resize-none{resize:none}
.snap-x{scroll-snap-type:x var(--tw-scroll-snap-strictness)}
.snap-mandatory{--tw-scroll-snap-strictness:mandatory}
.scroll-my-1{scroll-margin-block:calc(var(--spacing) * 1)}
.scroll-px-1{scroll-padding-inline:calc(var(--spacing) * 1)}
.scroll-py-1{scroll-padding-block:calc(var(--spacing) * 1)}
.list-disc{list-style-type:disc}
.list-none{list-style-type:none}
.appearance-none{appearance:none}
.auto-rows-min{grid-auto-rows:min-content}
.grid-cols-\[0_1fr\]{grid-template-columns:0 1fr}
.grid-rows-\[auto_1fr\]{grid-template-rows:auto 1fr}
.grid-rows-\[auto_auto\]{grid-template-rows:auto auto}
.flex-col{flex-direction:column}
.flex-col-reverse{flex-direction:column-reverse}
.flex-row{flex-direction:row}
.flex-wrap{flex-wrap:wrap}
.place-content-center{place-content:center}
.place-items-center{place-items:center}
.items-center{align-items:center}
.items-end{align-items:flex-end}
.items-start{align-items:flex-start}
.items-stretch{align-items:stretch}
.justify-between{justify-content:space-between}
.justify-center{justify-content:center}
.justify-start{justify-content:flex-start}
.justify-items-start{justify-items:start}
.gap-0\.5{gap:calc(var(--spacing) * .5)}
.gap-1{gap:calc(var(--spacing) * 1)}
.gap-1\.5{gap:calc(var(--spacing) * 1.5)}
.gap-2{gap:calc(var(--spacing) * 2)}
.gap-2\.5{gap:calc(var(--spacing) * 2.5)}
.gap-3{gap:calc(var(--spacing) * 3)}
.gap-4{gap:calc(var(--spacing) * 4)}
.gap-6{gap:calc(var(--spacing) * 6)}
.gap-7{gap:calc(var(--spacing) * 7)}
.gap-8{gap:calc(var(--spacing) * 8)}
.gap-\[--spacing\(var\(--gap\)\)\]{gap:calc(var(--spacing) * var(--gap))}
:where(.-space-x-2>:not(:last-child)){--tw-space-x-reverse:0;margin-inline-start:calc(calc(var(--spacing) * -2) * var(--tw-space-x-reverse));margin-inline-end:calc(calc(var(--spacing) * -2) * calc(1 - var(--tw-space-x-reverse)))}
.gap-y-0\.5{row-gap:calc(var(--spacing) * .5)}
.self-end{align-self:flex-end}
.self-start{align-self:flex-start}
.self-stretch{align-self:stretch}
.justify-self-end{justify-self:flex-end}
.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}
.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}
.overscroll-contain{overscroll-behavior:contain}
.overscroll-x-contain{overscroll-behavior-x:contain}
.rounded-\[2px\]{border-radius:2px}
.rounded-\[4px\]{border-radius:4px}
.rounded-\[calc\(var\(--radius\)-5px\)\]{border-radius:calc(var(--radius) - 5px)}
.rounded-\[inherit\]{border-radius:inherit}
.rounded-full{border-radius:3.40282e38px}
.rounded-lg{border-radius:var(--radius-lg)}
.rounded-md{border-radius:var(--radius-md)}
.rounded-none{border-radius:0}
.rounded-sm{border-radius:var(--radius-sm)}
.rounded-xl{border-radius:var(--radius-xl)}
.rounded-xs{border-radius:var(--radius-xs)}
.rounded-l-md{border-top-left-radius:var(--radius-md);border-bottom-left-radius:var(--radius-md)}
.rounded-tl-sm{border-top-left-radius:var(--radius-sm)}
.rounded-r-md{border-top-right-radius:var(--radius-md);border-bottom-right-radius:var(--radius-md)}
.border{border-style:var(--tw-border-style);border-width:1px}
.border-0{border-style:var(--tw-border-style);border-width:0}
.border-\[1\.5px\]{border-style:var(--tw-border-style);border-width:1.5px}
.border-y{border-block-style:var(--tw-border-style);border-block-width:1px}
.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}
.border-r{border-right-style:var(--tw-border-style);border-right-width:1px}
.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}
.border-l{border-left-style:var(--tw-border-style);border-left-width:1px}
.border-dashed{--tw-border-style:dashed;border-style:dashed}
.border-none{--tw-border-style:none;border-style:none}
.border-\(--color-border\){border-color:var(--color-border)}
.border-transparent{border-color:#0000}
.border-t-transparent{border-top-color:#0000}
.border-l-transparent{border-left-color:#0000}
.bg-\(--color-bg\){background-color:var(--color-bg)}
.bg-\[Canvas\]{background-color:canvas}
.bg-black\/50{background-color:#00000080}
@supports (color:color-mix(in lab, red, red)){.bg-black\/50{background-color:color-mix(in oklab, var(--color-black) 50%, transparent)}
}
.bg-transparent{background-color:#0000}
.bg-white{background-color:var(--color-white)}
.bg-clip-padding{background-clip:padding-box}
.fill-current{fill:currentColor}
.p-0{padding:calc(var(--spacing) * 0)}
.p-1{padding:calc(var(--spacing) * 1)}
.p-2{padding:calc(var(--spacing) * 2)}
.p-3{padding:calc(var(--spacing) * 3)}
.p-4{padding:calc(var(--spacing) * 4)}
.p-6{padding:calc(var(--spacing) * 6)}
.p-\[3px\]{padding:3px}
.p-px{padding:1px}
.px-\(--cell-size\){padding-inline:var(--cell-size)}
.px-1{padding-inline:calc(var(--spacing) * 1)}
.px-1\.5{padding-inline:calc(var(--spacing) * 1.5)}
.px-2{padding-inline:calc(var(--spacing) * 2)}
.px-2\.5{padding-inline:calc(var(--spacing) * 2.5)}
.px-3{padding-inline:calc(var(--spacing) * 3)}
.px-4{padding-inline:calc(var(--spacing) * 4)}
.px-6{padding-inline:calc(var(--spacing) * 6)}
.py-0\.5{padding-block:calc(var(--spacing) * .5)}
.py-1{padding-block:calc(var(--spacing) * 1)}
.py-1\.5{padding-block:calc(var(--spacing) * 1.5)}
.py-2{padding-block:calc(var(--spacing) * 2)}
.py-3{padding-block:calc(var(--spacing) * 3)}
.py-4{padding-block:calc(var(--spacing) * 4)}
.py-6{padding-block:calc(var(--spacing) * 6)}
.pt-0{padding-top:calc(var(--spacing) * 0)}
.pt-3{padding-top:calc(var(--spacing) * 3)}
.pt-4{padding-top:calc(var(--spacing) * 4)}
.pr-1{padding-right:calc(var(--spacing) * 1)}
.pr-2{padding-right:calc(var(--spacing) * 2)}
.pr-2\.5{padding-right:calc(var(--spacing) * 2.5)}
.pr-3{padding-right:calc(var(--spacing) * 3)}
.pr-8{padding-right:calc(var(--spacing) * 8)}
.pr-9{padding-right:calc(var(--spacing) * 9)}
.pb-2{padding-bottom:calc(var(--spacing) * 2)}
.pb-3{padding-bottom:calc(var(--spacing) * 3)}
.pb-4{padding-bottom:calc(var(--spacing) * 4)}
.pl-2{padding-left:calc(var(--spacing) * 2)}
.pl-3{padding-left:calc(var(--spacing) * 3)}
.pl-4{padding-left:calc(var(--spacing) * 4)}
.pl-8{padding-left:calc(var(--spacing) * 8)}
.text-center{text-align:center}
.text-left{text-align:left}
.align-middle{vertical-align:middle}
.font-mono{font-family:var(--font-mono)}
.font-sans{font-family:var(--font-sans)}
.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}
.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}
.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}
.text-sm\/relaxed{font-size:var(--text-sm);line-height:var(--leading-relaxed)}
.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}
.leading-normal{--tw-leading:var(--leading-normal);line-height:var(--leading-normal)}
.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}
.leading-snug{--tw-leading:var(--leading-snug);line-height:var(--leading-snug)}
.leading-tight{--tw-leading:var(--leading-tight);line-height:var(--leading-tight)}
.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}
.font-normal{--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal)}
.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}
.tracking-tight{--tw-tracking:var(--tracking-tight);letter-spacing:var(--tracking-tight)}
.tracking-widest{--tw-tracking:var(--tracking-widest);letter-spacing:var(--tracking-widest)}
.text-balance{text-wrap:balance}
.break-words,.wrap-break-word{overflow-wrap:break-word}
.whitespace-nowrap{white-space:nowrap}
.text-\[CanvasText\]{color:canvastext}
.text-current{color:currentColor}
.text-white{color:var(--color-white)}
.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}
.opacity-0{opacity:0}
.opacity-50{opacity:.5}
.opacity-60{opacity:.6}
.opacity-70{opacity:.7}
.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}
.shadow-\[0_0_0_1px_var\(--sidebar-border\)\]{--tw-shadow:0 0 0 1px var(--tw-shadow-color,var(--sidebar-border));box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}
.shadow-lg{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a), 0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}
.shadow-md{--tw-shadow:0 4px 6px -1px var(--tw-shadow-color,#0000001a), 0 2px 4px -2px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}
.shadow-none{--tw-shadow:0 0 #0000;box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}
.shadow-sm{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}
.shadow-xl{--tw-shadow:0 20px 25px -5px var(--tw-shadow-color,#0000001a), 0 8px 10px -6px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}
.shadow-xs{--tw-shadow:0 1px 2px 0 var(--tw-shadow-color,#0000000d);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}
.ring-0{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(0px + 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-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-2{--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)}
.ring-3{--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)}
.outline-hidden{--tw-outline-style:none;outline-style:none}
@media (forced-colors:active){.outline-hidden{outline-offset:2px;outline:2px solid #0000}
}
.outline{outline-style:var(--tw-outline-style);outline-width:1px}
.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,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}
.transition-\[color\,box-shadow\]{transition-property:color,box-shadow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}
.transition-\[left\,right\,width\]{transition-property:left,right,width;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}
.transition-\[margin\,opacity\]{transition-property:margin,opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}
.transition-\[translate\,scale\,opacity\]{transition-property:translate,scale,opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}
.transition-\[width\,height\,padding\]{transition-property:width,height,padding;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}
.transition-\[width\]{transition-property:width;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}
.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))}
.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,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}
.transition-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}
.transition-shadow{transition-property:box-shadow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}
.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}
.transition-none{transition-property:none}
.duration-100{--tw-duration:.1s;transition-duration:.1s}
.duration-200{--tw-duration:.2s;transition-duration:.2s}
.duration-300{--tw-duration:.3s;transition-duration:.3s}
.duration-1000{--tw-duration:1s;transition-duration:1s}
.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}
.ease-linear{--tw-ease:linear;transition-timing-function:linear}
.contain-content{contain:content}
.fade-in-0{--tw-enter-opacity:0}
.outline-none{--tw-outline-style:none;outline-style:none}
.select-none{-webkit-user-select:none;user-select:none}
.zoom-in-95{--tw-enter-scale:.95}
.\[--cell-size\:--spacing\(8\)\]{--cell-size:calc(var(--spacing) * 8)}
.\[contain-intrinsic-size\:auto_10rem\]{contain-intrinsic-size:auto 10rem}
.\[content-visibility\:auto\]{content-visibility:auto}
.running{animation-play-state:running}
.group-focus-within\/menu-item\:opacity-100:is(:where(.group\/menu-item):focus-within *){opacity:1}
@media (hover:hover){.group-hover\/menu-item\:opacity-100:is(:where(.group\/menu-item):hover *){opacity:1}
}
.group-has-data-\[sidebar\=menu-action\]\/menu-item\:pr-8:is(:where(.group\/menu-item):has([data-sidebar=menu-action]) *){padding-right:calc(var(--spacing) * 8)}
.group-has-data-\[size\=lg\]\/avatar-group\:size-10:is(:where(.group\/avatar-group):has([data-size=lg]) *){width:calc(var(--spacing) * 10);height:calc(var(--spacing) * 10)}
.group-has-data-\[size\=sm\]\/avatar-group\:size-6:is(:where(.group\/avatar-group):has([data-size=sm]) *){width:calc(var(--spacing) * 6);height:calc(var(--spacing) * 6)}
.group-has-data-\[slot\=combobox-clear\]\/input-group\:hidden:is(:where(.group\/input-group):has([data-slot=combobox-clear]) *){display:none}
.group-has-data-\[slot\=message-footer\]\/message\:-translate-y-8:is(:where(.group\/message):has([data-slot=message-footer]) *){--tw-translate-y:calc(var(--spacing) * -8);translate:var(--tw-translate-x) var(--tw-translate-y)}
.group-has-data-\[variant\=ghost\]\/message\:px-0:is(:where(.group\/message):has([data-variant=ghost]) *){padding-inline:calc(var(--spacing) * 0)}
.group-has-\[\[data-orientation\=horizontal\]\]\/field\:text-balance:is(:where(.group\/field):has([data-orientation=horizontal]) *){text-wrap:balance}
.group-has-\[\[data-slot\=item-description\]\]\/item\:translate-y-0\.5:is(:where(.group\/item):has([data-slot=item-description]) *){--tw-translate-y:calc(var(--spacing) * .5);translate:var(--tw-translate-x) var(--tw-translate-y)}
.group-has-\[\[data-slot\=item-description\]\]\/item\:self-start:is(:where(.group\/item):has([data-slot=item-description]) *){align-self:flex-start}
.group-has-\[\>input\]\/input-group\:pt-2\.5:is(:where(.group\/input-group):has(>input) *){padding-top:calc(var(--spacing) * 2.5)}
.group-has-\[\>input\]\/input-group\:pb-2\.5:is(:where(.group\/input-group):has(>input) *){padding-bottom:calc(var(--spacing) * 2.5)}
.group-data-empty\/combobox-content\:flex:is(:where(.group\/combobox-content)[data-empty] *){display:flex}
.group-data-\[align\=end\]\/bubble\:self-end:is(:where(.group\/bubble)[data-align=end] *){align-self:flex-end}
.group-data-\[align\=end\]\/message\:justify-end:is(:where(.group\/message)[data-align=end] *){justify-content:flex-end}
.group-data-\[align\=end\]\/message\:self-end:is(:where(.group\/message)[data-align=end] *){align-self:flex-end}
.group-data-\[collapsible\=icon\]\:-mt-8:is(:where(.group)[data-collapsible=icon] *){margin-top:calc(var(--spacing) * -8)}
.group-data-\[collapsible\=icon\]\:hidden:is(:where(.group)[data-collapsible=icon] *){display:none}
.group-data-\[collapsible\=icon\]\:size-8\!:is(:where(.group)[data-collapsible=icon] *){width:calc(var(--spacing) * 8)!important;height:calc(var(--spacing) * 8)!important}
.group-data-\[collapsible\=icon\]\:w-\(--sidebar-width-icon\):is(:where(.group)[data-collapsible=icon] *){width:var(--sidebar-width-icon)}
.group-data-\[collapsible\=icon\]\:w-\[calc\(var\(--sidebar-width-icon\)\+\(--spacing\(4\)\)\)\]:is(:where(.group)[data-collapsible=icon] *){width:calc(var(--sidebar-width-icon) + (calc(var(--spacing) * 4)))}
.group-data-\[collapsible\=icon\]\:w-\[calc\(var\(--sidebar-width-icon\)\+\(--spacing\(4\)\)\+2px\)\]:is(:where(.group)[data-collapsible=icon] *){width:calc(var(--sidebar-width-icon) + (calc(var(--spacing) * 4)) + 2px)}
.group-data-\[collapsible\=icon\]\:overflow-hidden:is(:where(.group)[data-collapsible=icon] *){overflow:hidden}
.group-data-\[collapsible\=icon\]\:p-0\!:is(:where(.group)[data-collapsible=icon] *){padding:calc(var(--spacing) * 0)!important}
.group-data-\[collapsible\=icon\]\:p-2\!:is(:where(.group)[data-collapsible=icon] *){padding:calc(var(--spacing) * 2)!important}
.group-data-\[collapsible\=icon\]\:opacity-0:is(:where(.group)[data-collapsible=icon] *){opacity:0}
.group-data-\[collapsible\=offcanvas\]\:right-\[calc\(var\(--sidebar-width\)\*-1\)\]:is(:where(.group)[data-collapsible=offcanvas] *){right:calc(var(--sidebar-width) * -1)}
.group-data-\[collapsible\=offcanvas\]\:left-\[calc\(var\(--sidebar-width\)\*-1\)\]:is(:where(.group)[data-collapsible=offcanvas] *){left:calc(var(--sidebar-width) * -1)}
.group-data-\[collapsible\=offcanvas\]\:w-0:is(:where(.group)[data-collapsible=offcanvas] *){width:calc(var(--spacing) * 0)}
.group-data-\[collapsible\=offcanvas\]\:translate-x-0:is(:where(.group)[data-collapsible=offcanvas] *){--tw-translate-x:calc(var(--spacing) * 0);translate:var(--tw-translate-x) var(--tw-translate-y)}
.group-data-\[disabled\=true\]\:pointer-events-none:is(:where(.group)[data-disabled=true] *){pointer-events:none}
.group-data-\[disabled\=true\]\:opacity-50:is(:where(.group)[data-disabled=true] *),.group-data-\[disabled\=true\]\/field\:opacity-50:is(:where(.group\/field)[data-disabled=true] *),.group-data-\[disabled\=true\]\/input-group\:opacity-50:is(:where(.group\/input-group)[data-disabled=true] *){opacity:.5}
.group-data-\[focused\=true\]\/day\:relative:is(:where(.group\/day)[data-focused=true] *){position:relative}
.group-data-\[focused\=true\]\/day\:z-10:is(:where(.group\/day)[data-focused=true] *){z-index:10}
.group-data-\[focused\=true\]\/day\:ring-\[3px\]:is(:where(.group\/day)[data-focused=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)}
.group-data-\[orientation\=horizontal\]\/tabs\:h-9:is(:where(.group\/tabs)[data-orientation=horizontal] *){height:calc(var(--spacing) * 9)}
.group-data-\[orientation\=vertical\]\/attachment\:absolute:is(:where(.group\/attachment)[data-orientation=vertical] *){position:absolute}
.group-data-\[orientation\=vertical\]\/attachment\:top-3:is(:where(.group\/attachment)[data-orientation=vertical] *){top:calc(var(--spacing) * 3)}
.group-data-\[orientation\=vertical\]\/attachment\:right-3:is(:where(.group\/attachment)[data-orientation=vertical] *){right:calc(var(--spacing) * 3)}
.group-data-\[orientation\=vertical\]\/attachment\:w-full:is(:where(.group\/attachment)[data-orientation=vertical] *){width:100%}
.group-data-\[orientation\=vertical\]\/attachment\:gap-1:is(:where(.group\/attachment)[data-orientation=vertical] *){gap:calc(var(--spacing) * 1)}
.group-data-\[orientation\=vertical\]\/attachment\:px-1:is(:where(.group\/attachment)[data-orientation=vertical] *){padding-inline:calc(var(--spacing) * 1)}
.group-data-\[orientation\=vertical\]\/tabs\:h-fit:is(:where(.group\/tabs)[data-orientation=vertical] *){height:fit-content}
.group-data-\[orientation\=vertical\]\/tabs\:w-full:is(:where(.group\/tabs)[data-orientation=vertical] *){width:100%}
.group-data-\[orientation\=vertical\]\/tabs\:flex-col:is(:where(.group\/tabs)[data-orientation=vertical] *){flex-direction:column}
.group-data-\[orientation\=vertical\]\/tabs\:justify-start:is(:where(.group\/tabs)[data-orientation=vertical] *){justify-content:flex-start}
.group-data-\[side\=left\]\:-right-4:is(:where(.group)[data-side=left] *){right:calc(var(--spacing) * -4)}
.group-data-\[side\=left\]\:border-r:is(:where(.group)[data-side=left] *){border-right-style:var(--tw-border-style);border-right-width:1px}
.group-data-\[side\=right\]\:left-0:is(:where(.group)[data-side=right] *){left:calc(var(--spacing) * 0)}
.group-data-\[side\=right\]\:rotate-180:is(:where(.group)[data-side=right] *){rotate:180deg}
.group-data-\[side\=right\]\:border-l:is(:where(.group)[data-side=right] *){border-left-style:var(--tw-border-style);border-left-width:1px}
.group-data-\[size\=default\]\/avatar\:size-2\.5:is(:where(.group\/avatar)[data-size=default] *){width:calc(var(--spacing) * 2.5);height:calc(var(--spacing) * 2.5)}
.group-data-\[size\=default\]\/switch\:size-4:is(:where(.group\/switch)[data-size=default] *){width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}
.group-data-\[size\=lg\]\/avatar\:size-3:is(:where(.group\/avatar)[data-size=lg] *){width:calc(var(--spacing) * 3);height:calc(var(--spacing) * 3)}
.group-data-\[size\=sm\]\/alert-dialog-content\:grid:is(:where(.group\/alert-dialog-content)[data-size=sm] *){display:grid}
.group-data-\[size\=sm\]\/alert-dialog-content\:grid-cols-2:is(:where(.group\/alert-dialog-content)[data-size=sm] *){grid-template-columns:repeat(2,minmax(0,1fr))}
.group-data-\[size\=sm\]\/attachment\:w-8:is(:where(.group\/attachment)[data-size=sm] *){width:calc(var(--spacing) * 8)}
.group-data-\[size\=sm\]\/avatar\:size-2:is(:where(.group\/avatar)[data-size=sm] *){width:calc(var(--spacing) * 2);height:calc(var(--spacing) * 2)}
.group-data-\[size\=sm\]\/avatar\:text-xs:is(:where(.group\/avatar)[data-size=sm] *){font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}
.group-data-\[size\=sm\]\/switch\:size-3:is(:where(.group\/switch)[data-size=sm] *){width:calc(var(--spacing) * 3);height:calc(var(--spacing) * 3)}
.group-data-\[size\=xs\]\/attachment\:w-7:is(:where(.group\/attachment)[data-size=xs] *){width:calc(var(--spacing) * 7)}
.group-data-\[size\=xs\]\/attachment\:rounded-md:is(:where(.group\/attachment)[data-size=xs] *){border-radius:var(--radius-md)}
.group-data-\[state\=done\]\/attachment\:opacity-100:is(:where(.group\/attachment)[data-state=done] *),.group-data-\[state\=idle\]\/attachment\:opacity-100:is(:where(.group\/attachment)[data-state=idle] *){opacity:1}
.group-data-\[state\=open\]\:rotate-180:is(:where(.group)[data-state=open] *){rotate:180deg}
.group-data-\[state\=processing\]\/attachment\:shimmer:is(:where(.group\/attachment)[data-state=processing] *){--_spread:var(--shimmer-spread,calc(3ch + 40px));--_base:currentColor;--_highlight:var(--shimmer-color,oklch(from currentColor l c h / calc(alpha* .2)));background-image:var(--shimmer-image,linear-gradient(calc(90deg + var(--shimmer-angle)), var(--_base) calc(50% - var(--_spread)), var(--_highlight) calc(50% - var(--_spread) * .5), var(--_highlight) 50%, var(--_highlight) calc(50% + var(--_spread) * .5), var(--_base) calc(50% + var(--_spread))))}
@supports (color:color-mix(in lab, red, red)){.group-data-\[state\=processing\]\/attachment\:shimmer:is(:where(.group\/attachment)[data-state=processing] *){background-image:var(--shimmer-image,linear-gradient(calc(90deg + var(--shimmer-angle)), var(--_base) calc(50% - var(--_spread)), color-mix(in oklch, var(--_highlight), var(--_base) 50%) calc(50% - var(--_spread) * .5), var(--_highlight) 50%, color-mix(in oklch, var(--_highlight), var(--_base) 50%) calc(50% + var(--_spread) * .5), var(--_base) calc(50% + var(--_spread))))}
}
.group-data-\[state\=processing\]\/attachment\:shimmer:is(:where(.group\/attachment)[data-state=processing] *){background-repeat:no-repeat;background-size:calc(200% + var(--_spread) * 2) 100%;-webkit-text-fill-color:var(--shimmer-text-fill,transparent);animation:tw-shimmer var(--shimmer-duration,2s) linear infinite;background-position:0 0;-webkit-background-clip:text;background-clip:text}
@media (prefers-color-scheme:dark){.group-data-\[state\=processing\]\/attachment\:shimmer:is(:where(.group\/attachment)[data-state=processing] *){--_highlight:var(--shimmer-color,oklch(from currentColor max(.8, calc(l + .4)) c h / calc(alpha + .4)))}
}
.group-data-\[state\=processing\]\/attachment\:shimmer:is(:where(.group\/attachment)[data-state=processing] *):where([dir=rtl],[dir=rtl] *){animation-direction:reverse}
.group-data-\[state\=uploading\]\/attachment\:shimmer:is(:where(.group\/attachment)[data-state=uploading] *){--_spread:var(--shimmer-spread,calc(3ch + 40px));--_base:currentColor;--_highlight:var(--shimmer-color,oklch(from currentColor l c h / calc(alpha* .2)));background-image:var(--shimmer-image,linear-gradient(calc(90deg + var(--shimmer-angle)), var(--_base) calc(50% - var(--_spread)), var(--_highlight) calc(50% - var(--_spread) * .5), var(--_highlight) 50%, var(--_highlight) calc(50% + var(--_spread) * .5), var(--_base) calc(50% + var(--_spread))))}
@supports (color:color-mix(in lab, red, red)){.group-data-\[state\=uploading\]\/attachment\:shimmer:is(:where(.group\/attachment)[data-state=uploading] *){background-image:var(--shimmer-image,linear-gradient(calc(90deg + var(--shimmer-angle)), var(--_base) calc(50% - var(--_spread)), color-mix(in oklch, var(--_highlight), var(--_base) 50%) calc(50% - var(--_spread) * .5), var(--_highlight) 50%, color-mix(in oklch, var(--_highlight), var(--_base) 50%) calc(50% + var(--_spread) * .5), var(--_base) calc(50% + var(--_spread))))}
}
.group-data-\[state\=uploading\]\/attachment\:shimmer:is(:where(.group\/attachment)[data-state=uploading] *){background-repeat:no-repeat;background-size:calc(200% + var(--_spread) * 2) 100%;-webkit-text-fill-color:var(--shimmer-text-fill,transparent);animation:tw-shimmer var(--shimmer-duration,2s) linear infinite;background-position:0 0;-webkit-background-clip:text;background-clip:text}
@media (prefers-color-scheme:dark){.group-data-\[state\=uploading\]\/attachment\:shimmer:is(:where(.group\/attachment)[data-state=uploading] *){--_highlight:var(--shimmer-color,oklch(from currentColor max(.8, calc(l + .4)) c h / calc(alpha + .4)))}
}
.group-data-\[state\=uploading\]\/attachment\:shimmer:is(:where(.group\/attachment)[data-state=uploading] *):where([dir=rtl],[dir=rtl] *){animation-direction:reverse}
.group-data-\[variant\=floating\]\:rounded-lg:is(:where(.group)[data-variant=floating] *){border-radius:var(--radius-lg)}
.group-data-\[variant\=floating\]\:border:is(:where(.group)[data-variant=floating] *){border-style:var(--tw-border-style);border-width:1px}
.group-data-\[variant\=floating\]\:shadow-sm:is(:where(.group)[data-variant=floating] *){--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}
.group-data-\[variant\=line\]\/tabs-list\:bg-transparent:is(:where(.group\/tabs-list)[data-variant=line] *){background-color:#0000}
.group-data-\[variant\=outline\]\/field-group\:-mb-2:is(:where(.group\/field-group)[data-variant=outline] *){margin-bottom:calc(var(--spacing) * -2)}
.group-data-\[variant\=separator\]\/marker\:flex-none:is(:where(.group\/marker)[data-variant=separator] *){flex:none}
.group-data-\[variant\=separator\]\/marker\:text-center:is(:where(.group\/marker)[data-variant=separator] *){text-align:center}
.group-data-\[vaul-drawer-direction\=bottom\]\/drawer-content\:block:is(:where(.group\/drawer-content)[data-vaul-drawer-direction=bottom] *){display:block}
.group-data-\[vaul-drawer-direction\=bottom\]\/drawer-content\:text-center:is(:where(.group\/drawer-content)[data-vaul-drawer-direction=bottom] *),.group-data-\[vaul-drawer-direction\=top\]\/drawer-content\:text-center:is(:where(.group\/drawer-content)[data-vaul-drawer-direction=top] *){text-align:center}
.group-data-\[viewport\=false\]\/navigation-menu\:top-full:is(:where(.group\/navigation-menu)[data-viewport=false] *){top:100%}
.group-data-\[viewport\=false\]\/navigation-menu\:mt-1\.5:is(:where(.group\/navigation-menu)[data-viewport=false] *){margin-top:calc(var(--spacing) * 1.5)}
.group-data-\[viewport\=false\]\/navigation-menu\:overflow-hidden:is(:where(.group\/navigation-menu)[data-viewport=false] *){overflow:hidden}
.group-data-\[viewport\=false\]\/navigation-menu\:rounded-md:is(:where(.group\/navigation-menu)[data-viewport=false] *){border-radius:var(--radius-md)}
.group-data-\[viewport\=false\]\/navigation-menu\:border:is(:where(.group\/navigation-menu)[data-viewport=false] *){border-style:var(--tw-border-style);border-width:1px}
.group-data-\[viewport\=false\]\/navigation-menu\:shadow:is(:where(.group\/navigation-menu)[data-viewport=false] *){--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}
.group-data-\[viewport\=false\]\/navigation-menu\:duration-200:is(:where(.group\/navigation-menu)[data-viewport=false] *){--tw-duration:.2s;transition-duration:.2s}
.peer-disabled\:cursor-not-allowed:is(:where(.peer):disabled~*){cursor:not-allowed}
.peer-disabled\:opacity-50:is(:where(.peer):disabled~*){opacity:.5}
.peer-data-\[size\=default\]\/menu-button\:top-1\.5:is(:where(.peer\/menu-button)[data-size=default]~*){top:calc(var(--spacing) * 1.5)}
.peer-data-\[size\=lg\]\/menu-button\:top-2\.5:is(:where(.peer\/menu-button)[data-size=lg]~*){top:calc(var(--spacing) * 2.5)}
.peer-data-\[size\=sm\]\/menu-button\:top-1:is(:where(.peer\/menu-button)[data-size=sm]~*){top:calc(var(--spacing) * 1)}
.file\:inline-flex::file-selector-button{display:inline-flex}
.file\:h-7::file-selector-button{height:calc(var(--spacing) * 7)}
.file\:border-0::file-selector-button{border-style:var(--tw-border-style);border-width:0}
.file\:bg-transparent::file-selector-button{background-color:#0000}
.file\:text-sm::file-selector-button{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}
.file\:font-medium::file-selector-button{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}
.before\:mr-1:before{content:var(--tw-content);margin-right:calc(var(--spacing) * 1)}
.before\:h-px:before{content:var(--tw-content);height:1px}
.before\:min-w-0:before{content:var(--tw-content);min-width:calc(var(--spacing) * 0)}
.before\:flex-1:before{content:var(--tw-content);flex:1}
.after\:absolute:after{content:var(--tw-content);position:absolute}
.after\:-inset-2:after{content:var(--tw-content);inset:calc(var(--spacing) * -2)}
.after\:inset-y-0:after{content:var(--tw-content);inset-block:calc(var(--spacing) * 0)}
.after\:left-1\/2:after{content:var(--tw-content);left:50%}
.after\:ml-1:after{content:var(--tw-content);margin-left:calc(var(--spacing) * 1)}
.after\:h-px:after{content:var(--tw-content);height:1px}
.after\:w-1:after{content:var(--tw-content);width:calc(var(--spacing) * 1)}
.after\:w-\[2px\]:after{content:var(--tw-content);width:2px}
.after\:min-w-0:after{content:var(--tw-content);min-width:calc(var(--spacing) * 0)}
.after\:flex-1:after{content:var(--tw-content);flex:1}
.after\:-translate-x-1\/2:after{content:var(--tw-content);--tw-translate-x:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}
.after\:opacity-0:after{content:var(--tw-content);opacity:0}
.after\:transition-opacity:after{content:var(--tw-content);transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}
.group-data-\[collapsible\=offcanvas\]\:after\:left-full:is(:where(.group)[data-collapsible=offcanvas] *):after{content:var(--tw-content);left:100%}
.group-data-\[orientation\=horizontal\]\/tabs\:after\:inset-x-0:is(:where(.group\/tabs)[data-orientation=horizontal] *):after{content:var(--tw-content);inset-inline:calc(var(--spacing) * 0)}
.group-data-\[orientation\=horizontal\]\/tabs\:after\:bottom-\[-5px\]:is(:where(.group\/tabs)[data-orientation=horizontal] *):after{content:var(--tw-content);bottom:-5px}
.group-data-\[orientation\=horizontal\]\/tabs\:after\:h-0\.5:is(:where(.group\/tabs)[data-orientation=horizontal] *):after{content:var(--tw-content);height:calc(var(--spacing) * .5)}
.group-data-\[orientation\=vertical\]\/tabs\:after\:inset-y-0:is(:where(.group\/tabs)[data-orientation=vertical] *):after{content:var(--tw-content);inset-block:calc(var(--spacing) * 0)}
.group-data-\[orientation\=vertical\]\/tabs\:after\:-right-1:is(:where(.group\/tabs)[data-orientation=vertical] *):after{content:var(--tw-content);right:calc(var(--spacing) * -1)}
.group-data-\[orientation\=vertical\]\/tabs\:after\:w-0\.5:is(:where(.group\/tabs)[data-orientation=vertical] *):after{content:var(--tw-content);width:calc(var(--spacing) * .5)}
.first\:rounded-l-md:first-child{border-top-left-radius:var(--radius-md);border-bottom-left-radius:var(--radius-md)}
.first\:border-l:first-child{border-left-style:var(--tw-border-style);border-left-width:1px}
.last\:mt-0:last-child{margin-top:calc(var(--spacing) * 0)}
.last\:rounded-r-md:last-child{border-top-right-radius:var(--radius-md);border-bottom-right-radius:var(--radius-md)}
.last\:border-b-0:last-child{border-bottom-style:var(--tw-border-style);border-bottom-width:0}
.focus-within\:ring-1:focus-within{--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)}
.focus-within\:ring-\[3px\]:focus-within{--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)}
@media (hover:hover){.hover\:underline:hover{text-decoration-line:underline}
.hover\:opacity-100:hover{opacity:1}
.hover\:shadow-\[0_0_0_1px_var\(--sidebar-accent\)\]:hover{--tw-shadow:0 0 0 1px var(--tw-shadow-color,var(--sidebar-accent));box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}
.hover\:ring-4:hover{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(4px + 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\:z-10:focus{z-index:10}
.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-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-hidden:focus{--tw-outline-style:none;outline-style:none}
@media (forced-colors:active){.focus\:outline-hidden:focus{outline-offset:2px;outline:2px solid #0000}
}
.focus-visible\:z-10:focus-visible{z-index:10}
.focus-visible\:ring-0:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(0px + 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-1:focus-visible{--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)}
.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-4:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(4px + 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-\[3px\]: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-offset-1:focus-visible{--tw-ring-offset-width:1px;--tw-ring-offset-shadow:var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color)}
.focus-visible\:outline-hidden:focus-visible{--tw-outline-style:none;outline-style:none}
@media (forced-colors:active){.focus-visible\:outline-hidden:focus-visible{outline-offset:2px;outline:2px solid #0000}
}
.focus-visible\:outline-1:focus-visible{outline-style:var(--tw-outline-style);outline-width:1px}
.disabled\:pointer-events-none:disabled{pointer-events:none}
.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}
.disabled\:opacity-50:disabled{opacity:.5}
:where([data-side=left]) .in-data-\[side\=left\]\:cursor-w-resize{cursor:w-resize}
:where([data-side=right]) .in-data-\[side\=right\]\:cursor-e-resize{cursor:e-resize}
.has-focus\:ring-\[3px\]:has(:focus){--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)}
.has-disabled\:pointer-events-none:has(:disabled){pointer-events:none}
.has-disabled\:cursor-not-allowed:has(:disabled){cursor:not-allowed}
.has-disabled\:opacity-50:has(:disabled){opacity:.5}
.has-aria-invalid\:ring-\[3px\]:has([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)}
.has-data-\[slot\=alert-dialog-media\]\:grid-rows-\[auto_auto_1fr\]:has([data-slot=alert-dialog-media]){grid-template-rows:auto auto 1fr}
.has-data-\[slot\=alert-dialog-media\]\:gap-x-6:has([data-slot=alert-dialog-media]){column-gap:calc(var(--spacing) * 6)}
.has-data-\[slot\=attachment-content\]\:w-30:has([data-slot=attachment-content]){width:calc(var(--spacing) * 30)}
.has-data-\[slot\=attachment-content\]\:px-1\.5:has([data-slot=attachment-content]){padding-inline:calc(var(--spacing) * 1.5)}
.has-data-\[slot\=attachment-content\]\:px-2:has([data-slot=attachment-content]){padding-inline:calc(var(--spacing) * 2)}
.has-data-\[slot\=attachment-content\]\:px-2\.5:has([data-slot=attachment-content]){padding-inline:calc(var(--spacing) * 2.5)}
.has-data-\[slot\=attachment-content\]\:py-1:has([data-slot=attachment-content]){padding-block:calc(var(--spacing) * 1)}
.has-data-\[slot\=attachment-content\]\:py-1\.5:has([data-slot=attachment-content]){padding-block:calc(var(--spacing) * 1.5)}
.has-data-\[slot\=attachment-content\]\:py-2:has([data-slot=attachment-content]){padding-block:calc(var(--spacing) * 2)}
.has-data-\[slot\=attachment-media\]\:p-1:has([data-slot=attachment-media]){padding:calc(var(--spacing) * 1)}
.has-data-\[slot\=attachment-media\]\:p-1\.5:has([data-slot=attachment-media]){padding:calc(var(--spacing) * 1.5)}
.has-data-\[slot\=attachment-media\]\:p-2:has([data-slot=attachment-media]){padding:calc(var(--spacing) * 2)}
.has-data-\[slot\=card-action\]\:grid-cols-\[1fr_auto\]:has([data-slot=card-action]){grid-template-columns:1fr auto}
.has-data-\[slot\=combobox-chip\]\:px-1\.5:has([data-slot=combobox-chip]){padding-inline:calc(var(--spacing) * 1.5)}
.has-data-\[slot\=combobox-chip-remove\]\:pr-0:has([data-slot=combobox-chip-remove]){padding-right:calc(var(--spacing) * 0)}
.has-\[\[data-slot\=input-group-control\]\:focus-visible\]\:ring-\[3px\]:has([data-slot=input-group-control]: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)}
.has-\[button\]\:p-0:has(:is(button)){padding:calc(var(--spacing) * 0)}
.has-\[select\:disabled\]\:opacity-50:has(:is(select:disabled)){opacity:.5}
.has-\[\>\[data-align\=block-end\]\]\:h-auto:has(>[data-align=block-end]){height:auto}
.has-\[\>\[data-align\=block-end\]\]\:flex-col:has(>[data-align=block-end]){flex-direction:column}
.has-\[\>\[data-align\=block-start\]\]\:h-auto:has(>[data-align=block-start]){height:auto}
.has-\[\>\[data-align\=block-start\]\]\:flex-col:has(>[data-align=block-start]){flex-direction:column}
.has-\[\>\[data-slot\=button-group\]\]\:gap-2:has(>[data-slot=button-group]){gap:calc(var(--spacing) * 2)}
.has-\[\>\[data-slot\=checkbox-group\]\]\:gap-3:has(>[data-slot=checkbox-group]){gap:calc(var(--spacing) * 3)}
.has-\[\>\[data-slot\=field-content\]\]\:items-start:has(>[data-slot=field-content]){align-items:flex-start}
.has-\[\>\[data-slot\=field\]\]\:w-full:has(>[data-slot=field]){width:100%}
.has-\[\>\[data-slot\=field\]\]\:flex-col:has(>[data-slot=field]){flex-direction:column}
.has-\[\>\[data-slot\=field\]\]\:rounded-md:has(>[data-slot=field]){border-radius:var(--radius-md)}
.has-\[\>\[data-slot\=field\]\]\:border:has(>[data-slot=field]){border-style:var(--tw-border-style);border-width:1px}
.has-\[\>\[data-slot\=radio-group\]\]\:gap-3:has(>[data-slot=radio-group]){gap:calc(var(--spacing) * 3)}
.has-\[\>button\]\:mr-\[-0\.45rem\]:has(>button){margin-right:-.45rem}
.has-\[\>button\]\:ml-\[-0\.45rem\]:has(>button){margin-left:-.45rem}
.has-\[\>kbd\]\:mr-\[-0\.35rem\]:has(>kbd){margin-right:-.35rem}
.has-\[\>kbd\]\:ml-\[-0\.35rem\]:has(>kbd){margin-left:-.35rem}
.has-\[\>svg\]\:grid-cols-\[calc\(var\(--spacing\)\*4\)_1fr\]:has(>svg){grid-template-columns:calc(var(--spacing) * 4) 1fr}
.has-\[\>svg\]\:gap-x-3:has(>svg){column-gap:calc(var(--spacing) * 3)}
.has-\[\>svg\]\:p-0:has(>svg){padding:calc(var(--spacing) * 0)}
.has-\[\>svg\]\:px-1\.5:has(>svg){padding-inline:calc(var(--spacing) * 1.5)}
.has-\[\>svg\]\:px-2:has(>svg){padding-inline:calc(var(--spacing) * 2)}
.has-\[\>svg\]\:px-2\.5:has(>svg){padding-inline:calc(var(--spacing) * 2.5)}
.has-\[\>svg\]\:px-3:has(>svg){padding-inline:calc(var(--spacing) * 3)}
.has-\[\>svg\]\:px-4:has(>svg){padding-inline:calc(var(--spacing) * 4)}
.has-\[\>textarea\]\:h-auto:has(>textarea){height:auto}
.aria-disabled\:pointer-events-none[aria-disabled=true]{pointer-events:none}
.aria-disabled\:opacity-50[aria-disabled=true]{opacity:.5}
.aria-\[orientation\=horizontal\]\:h-px[aria-orientation=horizontal]{height:1px}
.aria-\[orientation\=horizontal\]\:w-full[aria-orientation=horizontal]{width:100%}
.aria-\[orientation\=horizontal\]\:after\:left-0[aria-orientation=horizontal]:after{content:var(--tw-content);left:calc(var(--spacing) * 0)}
.aria-\[orientation\=horizontal\]\:after\:h-1[aria-orientation=horizontal]:after{content:var(--tw-content);height:calc(var(--spacing) * 1)}
.aria-\[orientation\=horizontal\]\:after\:w-full[aria-orientation=horizontal]:after{content:var(--tw-content);width:100%}
.aria-\[orientation\=horizontal\]\:after\:translate-x-0[aria-orientation=horizontal]:after{content:var(--tw-content);--tw-translate-x:calc(var(--spacing) * 0);translate:var(--tw-translate-x) var(--tw-translate-y)}
.aria-\[orientation\=horizontal\]\:after\:-translate-y-1\/2[aria-orientation=horizontal]:after{content:var(--tw-content);--tw-translate-y:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}
.aria-\[orientation\=vertical\]\:flex-col[aria-orientation=vertical]{flex-direction:column}
.data-empty\:p-0[data-empty]{padding:calc(var(--spacing) * 0)}
.data-pressed\:bg-transparent[data-pressed]{background-color:#0000}
:is(.group-data-\[align\=end\]\/message\:\*\:data-slot\:self-end:is(:where(.group\/message)[data-align=end] *)>*)[data-slot]{align-self:flex-end}
.data-\[active\=false\]\:pointer-events-none[data-active=false]{pointer-events:none}
.data-\[active\=false\]\:scale-95[data-active=false]{--tw-scale-x:95%;--tw-scale-y:95%;--tw-scale-z:95%;scale:var(--tw-scale-x) var(--tw-scale-y)}
.data-\[active\=false\]\:opacity-0[data-active=false]{opacity:0}
.data-\[active\=false\]\:duration-400[data-active=false]{--tw-duration:.4s;transition-duration:.4s}
.data-\[active\=false\]\:ease-\[cubic-bezier\(0\.7\,0\,0\.84\,0\)\][data-active=false]{--tw-ease:cubic-bezier(.7,0,.84,0);transition-timing-function:cubic-bezier(.7,0,.84,0)}
.data-\[active\=true\]\:z-10[data-active=true]{z-index:10}
.data-\[active\=true\]\:translate-y-0[data-active=true]{--tw-translate-y:calc(var(--spacing) * 0);translate:var(--tw-translate-x) var(--tw-translate-y)}
.data-\[active\=true\]\:scale-100[data-active=true]{--tw-scale-x:100%;--tw-scale-y:100%;--tw-scale-z:100%;scale:var(--tw-scale-x) var(--tw-scale-y)}
.data-\[active\=true\]\:font-medium[data-active=true]{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}
.data-\[active\=true\]\:opacity-100[data-active=true]{opacity:1}
.data-\[active\=true\]\:ring-\[3px\][data-active=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)}
.data-\[active\=true\]\:ease-\[cubic-bezier\(0\.23\,1\,0\.32\,1\)\][data-active=true]{--tw-ease:cubic-bezier(.23,1,.32,1);transition-timing-function:cubic-bezier(.23,1,.32,1)}
.data-\[align\=end\]\:flex-row-reverse[data-align=end]{flex-direction:row-reverse}
.data-\[align\=end\]\:self-end[data-align=end]{align-self:flex-end}
.data-\[chips\=true\]\:min-w-\(--anchor-width\)[data-chips=true]{min-width:var(--anchor-width)}
.data-\[direction\=end\]\:bottom-4[data-direction=end]{bottom:calc(var(--spacing) * 4)}
.data-\[direction\=end\]\:data-\[active\=false\]\:translate-y-full[data-direction=end][data-active=false]{--tw-translate-y:100%;translate:var(--tw-translate-x) var(--tw-translate-y)}
.data-\[direction\=start\]\:top-4[data-direction=start]{top:calc(var(--spacing) * 4)}
.data-\[direction\=start\]\:data-\[active\=false\]\:-translate-y-full[data-direction=start][data-active=false]{--tw-translate-y:-100%;translate:var(--tw-translate-x) var(--tw-translate-y)}
.data-\[disabled\]\:pointer-events-none[data-disabled]{pointer-events:none}
.data-\[disabled\]\:opacity-50[data-disabled]{opacity:.5}
.data-\[disabled\=true\]\:pointer-events-none[data-disabled=true]{pointer-events:none}
.data-\[disabled\=true\]\:opacity-50[data-disabled=true]{opacity:.5}
.data-\[inset\]\:pl-8[data-inset]{padding-left:calc(var(--spacing) * 8)}
.data-\[motion\=from-end\]\:slide-in-from-right-52[data-motion=from-end]{--tw-enter-translate-x:calc(52*var(--spacing))}
.data-\[motion\=from-start\]\:slide-in-from-left-52[data-motion=from-start]{--tw-enter-translate-x:calc(52*var(--spacing)*-1)}
.data-\[motion\=to-end\]\:slide-out-to-right-52[data-motion=to-end]{--tw-exit-translate-x:calc(52*var(--spacing))}
.data-\[motion\=to-start\]\:slide-out-to-left-52[data-motion=to-start]{--tw-exit-translate-x:calc(52*var(--spacing)*-1)}
.data-\[motion\^\=from-\]\:animate-in[data-motion^=from-]{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-\[motion\^\=from-\]\:fade-in[data-motion^=from-]{--tw-enter-opacity:0}
.data-\[motion\^\=to-\]\:animate-out[data-motion^=to-]{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-\[motion\^\=to-\]\:fade-out[data-motion^=to-]{--tw-exit-opacity:0}
.data-\[orientation\=horizontal\]\:h-1\.5[data-orientation=horizontal]{height:calc(var(--spacing) * 1.5)}
.data-\[orientation\=horizontal\]\:h-full[data-orientation=horizontal]{height:100%}
.data-\[orientation\=horizontal\]\:h-px[data-orientation=horizontal]{height:1px}
.data-\[orientation\=horizontal\]\:w-full[data-orientation=horizontal]{width:100%}
.data-\[orientation\=horizontal\]\:flex-col[data-orientation=horizontal]{flex-direction:column}
.data-\[orientation\=vertical\]\:h-auto[data-orientation=vertical]{height:auto}
.data-\[orientation\=vertical\]\:h-full[data-orientation=vertical]{height:100%}
.data-\[orientation\=vertical\]\:min-h-44[data-orientation=vertical]{min-height:calc(var(--spacing) * 44)}
.data-\[orientation\=vertical\]\:w-1\.5[data-orientation=vertical]{width:calc(var(--spacing) * 1.5)}
.data-\[orientation\=vertical\]\:w-auto[data-orientation=vertical]{width:auto}
.data-\[orientation\=vertical\]\:w-full[data-orientation=vertical]{width:100%}
.data-\[orientation\=vertical\]\:w-px[data-orientation=vertical]{width:1px}
.data-\[orientation\=vertical\]\:flex-col[data-orientation=vertical]{flex-direction:column}
.data-\[range-end\=true\]\:rounded-md[data-range-end=true]{border-radius:var(--radius-md)}
.data-\[range-end\=true\]\:rounded-r-md[data-range-end=true]{border-top-right-radius:var(--radius-md);border-bottom-right-radius:var(--radius-md)}
.data-\[range-middle\=true\]\:rounded-none[data-range-middle=true]{border-radius:0}
.data-\[range-start\=true\]\:rounded-md[data-range-start=true]{border-radius:var(--radius-md)}
.data-\[range-start\=true\]\:rounded-l-md[data-range-start=true]{border-top-left-radius:var(--radius-md);border-bottom-left-radius:var(--radius-md)}
.data-\[selected\=true\]\:rounded-none[data-selected=true]{border-radius:0}
.data-\[side\=bottom\]\:translate-y-1[data-side=bottom]{--tw-translate-y:calc(var(--spacing) * 1);translate:var(--tw-translate-x) var(--tw-translate-y)}
.data-\[side\=bottom\]\:slide-in-from-top-2[data-side=bottom]{--tw-enter-translate-y:calc(2*var(--spacing)*-1)}
.data-\[side\=left\]\:-translate-x-1[data-side=left]{--tw-translate-x:calc(var(--spacing) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}
.data-\[side\=left\]\:slide-in-from-right-2[data-side=left]{--tw-enter-translate-x:calc(2*var(--spacing))}
.data-\[side\=right\]\:translate-x-1[data-side=right]{--tw-translate-x:calc(var(--spacing) * 1);translate:var(--tw-translate-x) var(--tw-translate-y)}
.data-\[side\=right\]\:slide-in-from-left-2[data-side=right]{--tw-enter-translate-x:calc(2*var(--spacing)*-1)}
.data-\[side\=top\]\:-translate-y-1[data-side=top]{--tw-translate-y:calc(var(--spacing) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}
.data-\[side\=top\]\:slide-in-from-bottom-2[data-side=top]{--tw-enter-translate-y:calc(2*var(--spacing))}
.data-\[size\=default\]\:h-9[data-size=default]{height:calc(var(--spacing) * 9)}
.data-\[size\=default\]\:h-\[1\.15rem\][data-size=default]{height:1.15rem}
.data-\[size\=default\]\:w-8[data-size=default]{width:calc(var(--spacing) * 8)}
.data-\[size\=lg\]\:size-10[data-size=lg]{width:calc(var(--spacing) * 10);height:calc(var(--spacing) * 10)}
.data-\[size\=sm\]\:size-6[data-size=sm]{width:calc(var(--spacing) * 6);height:calc(var(--spacing) * 6)}
.data-\[size\=sm\]\:h-3\.5[data-size=sm]{height:calc(var(--spacing) * 3.5)}
.data-\[size\=sm\]\:h-8[data-size=sm]{height:calc(var(--spacing) * 8)}
.data-\[size\=sm\]\:w-6[data-size=sm]{width:calc(var(--spacing) * 6)}
.data-\[size\=sm\]\:max-w-xs[data-size=sm]{max-width:var(--container-xs)}
.data-\[size\=sm\]\:py-1[data-size=sm]{padding-block:calc(var(--spacing) * 1)}
:is(.\*\:data-\[slot\=attachment\]\:flex-none>*)[data-slot=attachment]{flex:none}
:is(.\*\:data-\[slot\=attachment\]\:snap-start>*)[data-slot=attachment]{scroll-snap-align:start}
:is(.\*\:data-\[slot\=avatar\]\:ring-2>*)[data-slot=avatar]{--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)}
:is(.\*\:data-\[slot\=bubble-content\]\:rounded-none>*)[data-slot=bubble-content]{border-radius:0}
:is(.\*\:data-\[slot\=bubble-content\]\:bg-\[oklch\(from_var\(--primary\)_0\.93_calc\(c\*0\.4\)_h\)\]>*)[data-slot=bubble-content]{background-color:oklch(from var(--primary) .93 calc(c * .4) h)}
:is(.\*\:data-\[slot\=bubble-content\]\:bg-transparent>*)[data-slot=bubble-content]{background-color:#0000}
:is(.\*\:data-\[slot\=bubble-content\]\:p-0>*)[data-slot=bubble-content]{padding:calc(var(--spacing) * 0)}
.data-\[slot\=checkbox-group\]\:gap-3[data-slot=checkbox-group]{gap:calc(var(--spacing) * 3)}
:is(.\*\*\:data-\[slot\=command-input-wrapper\]\:h-12 *)[data-slot=command-input-wrapper]{height:calc(var(--spacing) * 12)}
:is(.\*\:data-\[slot\=input-group\]\:m-1>*)[data-slot=input-group]{margin:calc(var(--spacing) * 1)}
:is(.\*\:data-\[slot\=input-group\]\:mb-0>*)[data-slot=input-group]{margin-bottom:calc(var(--spacing) * 0)}
:is(.\*\:data-\[slot\=input-group\]\:h-8>*)[data-slot=input-group]{height:calc(var(--spacing) * 8)}
:is(.\*\:data-\[slot\=input-group\]\:shadow-none>*)[data-slot=input-group]{--tw-shadow:0 0 #0000;box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}
:is(.\*\*\:data-\[slot\=navigation-menu-link\]\:focus\:ring-0 *)[data-slot=navigation-menu-link]:focus{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(0px + 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)}
:is(.\*\*\:data-\[slot\=navigation-menu-link\]\:focus\:outline-none *)[data-slot=navigation-menu-link]:focus{--tw-outline-style:none;outline-style:none}
:is(.\*\:data-\[slot\=select-value\]\:line-clamp-1>*)[data-slot=select-value]{-webkit-line-clamp:1;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}
:is(.\*\:data-\[slot\=select-value\]\:flex>*)[data-slot=select-value]{display:flex}
:is(.\*\:data-\[slot\=select-value\]\:items-center>*)[data-slot=select-value]{align-items:center}
:is(.\*\:data-\[slot\=select-value\]\:gap-2>*)[data-slot=select-value]{gap:calc(var(--spacing) * 2)}
:is(.group-data-\[orientation\=vertical\]\/attachment\:\*\:data-\[slot\=spinner\]\:size-6\!:is(:where(.group\/attachment)[data-orientation=vertical] *)>*)[data-slot=spinner]{width:calc(var(--spacing) * 6)!important;height:calc(var(--spacing) * 6)!important}
.data-\[spacing\=0\]\:rounded-none[data-spacing="0"]{border-radius:0}
.data-\[spacing\=0\]\:shadow-none[data-spacing="0"]{--tw-shadow:0 0 #0000;box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}
.data-\[spacing\=0\]\:first\:rounded-l-md[data-spacing="0"]:first-child{border-top-left-radius:var(--radius-md);border-bottom-left-radius:var(--radius-md)}
.data-\[spacing\=0\]\:last\:rounded-r-md[data-spacing="0"]:last-child{border-top-right-radius:var(--radius-md);border-bottom-right-radius:var(--radius-md)}
.group-data-\[variant\=default\]\/tabs-list\:data-\[state\=active\]\:shadow-sm:is(:where(.group\/tabs-list)[data-variant=default] *)[data-state=active]{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}
.group-data-\[variant\=line\]\/tabs-list\:data-\[state\=active\]\:bg-transparent:is(:where(.group\/tabs-list)[data-variant=line] *)[data-state=active]{background-color:#0000}
.group-data-\[variant\=line\]\/tabs-list\:data-\[state\=active\]\:shadow-none:is(:where(.group\/tabs-list)[data-variant=line] *)[data-state=active]{--tw-shadow:0 0 #0000;box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}
.group-data-\[variant\=line\]\/tabs-list\:data-\[state\=active\]\:after\:opacity-100:is(:where(.group\/tabs-list)[data-variant=line] *)[data-state=active]:after{content:var(--tw-content);opacity:1}
.data-\[state\=checked\]\:translate-x-\[calc\(100\%-2px\)\][data-state=checked]{--tw-translate-x:calc(100% - 2px);translate:var(--tw-translate-x) var(--tw-translate-y)}
.data-\[state\=closed\]\:animate-accordion-up[data-state=closed]{animation:accordion-up var(--tw-animation-duration,var(--tw-duration,.2s))var(--tw-ease,ease-out)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}
.data-\[state\=closed\]\:animate-out[data-state=closed]{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-\[state\=closed\]\:duration-300[data-state=closed]{--tw-duration:.3s;transition-duration:.3s}
.data-\[state\=closed\]\:fade-out-0[data-state=closed]{--tw-exit-opacity:0}
.data-\[state\=closed\]\:zoom-out-95[data-state=closed]{--tw-exit-scale:.95}
.data-\[state\=closed\]\:slide-out-to-bottom[data-state=closed]{--tw-exit-translate-y:100%}
.data-\[state\=closed\]\:slide-out-to-left[data-state=closed]{--tw-exit-translate-x:-100%}
.data-\[state\=closed\]\:slide-out-to-right[data-state=closed]{--tw-exit-translate-x:100%}
.data-\[state\=closed\]\:slide-out-to-top[data-state=closed]{--tw-exit-translate-y:-100%}
.group-data-\[viewport\=false\]\/navigation-menu\:data-\[state\=closed\]\:animate-out:is(:where(.group\/navigation-menu)[data-viewport=false] *)[data-state=closed]{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)}
.group-data-\[viewport\=false\]\/navigation-menu\:data-\[state\=closed\]\:fade-out-0:is(:where(.group\/navigation-menu)[data-viewport=false] *)[data-state=closed]{--tw-exit-opacity:0}
.group-data-\[viewport\=false\]\/navigation-menu\:data-\[state\=closed\]\:zoom-out-95:is(:where(.group\/navigation-menu)[data-viewport=false] *)[data-state=closed]{--tw-exit-scale:.95}
.data-\[state\=hidden\]\:animate-out[data-state=hidden]{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-\[state\=hidden\]\:fade-out[data-state=hidden]{--tw-exit-opacity:0}
.data-\[state\=idle\]\:border-dashed[data-state=idle]{--tw-border-style:dashed;border-style:dashed}
.data-\[state\=open\]\:animate-accordion-down[data-state=open]{animation:accordion-down var(--tw-animation-duration,var(--tw-duration,.2s))var(--tw-ease,ease-out)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}
.data-\[state\=open\]\:animate-in[data-state=open]{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-\[state\=open\]\:opacity-100[data-state=open]{opacity:1}
.data-\[state\=open\]\:duration-500[data-state=open]{--tw-duration:.5s;transition-duration:.5s}
.data-\[state\=open\]\:fade-in-0[data-state=open]{--tw-enter-opacity:0}
.data-\[state\=open\]\:zoom-in-90[data-state=open]{--tw-enter-scale:.9}
.data-\[state\=open\]\:zoom-in-95[data-state=open]{--tw-enter-scale:.95}
.data-\[state\=open\]\:slide-in-from-bottom[data-state=open]{--tw-enter-translate-y:100%}
.data-\[state\=open\]\:slide-in-from-left[data-state=open]{--tw-enter-translate-x:-100%}
.data-\[state\=open\]\:slide-in-from-right[data-state=open]{--tw-enter-translate-x:100%}
.data-\[state\=open\]\:slide-in-from-top[data-state=open]{--tw-enter-translate-y:-100%}
.group-data-\[viewport\=false\]\/navigation-menu\:data-\[state\=open\]\:animate-in:is(:where(.group\/navigation-menu)[data-viewport=false] *)[data-state=open]{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)}
.group-data-\[viewport\=false\]\/navigation-menu\:data-\[state\=open\]\:fade-in-0:is(:where(.group\/navigation-menu)[data-viewport=false] *)[data-state=open]{--tw-enter-opacity:0}
.group-data-\[viewport\=false\]\/navigation-menu\:data-\[state\=open\]\:zoom-in-95:is(:where(.group\/navigation-menu)[data-viewport=false] *)[data-state=open]{--tw-enter-scale:.95}
.data-\[state\=unchecked\]\:translate-x-0[data-state=unchecked]{--tw-translate-x:calc(var(--spacing) * 0);translate:var(--tw-translate-x) var(--tw-translate-y)}
.data-\[state\=visible\]\:animate-in[data-state=visible]{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-\[state\=visible\]\:fade-in[data-state=visible]{--tw-enter-opacity:0}
.data-\[variant\=ghost\]\:max-w-full[data-variant=ghost]{max-width:100%}
.data-\[variant\=label\]\:text-sm[data-variant=label]{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}
.data-\[variant\=legend\]\:text-base[data-variant=legend]{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}
.data-\[variant\=line\]\:rounded-none[data-variant=line]{border-radius:0}
.data-\[spacing\=0\]\:data-\[variant\=outline\]\:border-l-0[data-spacing="0"][data-variant=outline]{border-left-style:var(--tw-border-style);border-left-width:0}
.data-\[spacing\=0\]\:data-\[variant\=outline\]\:first\:border-l[data-spacing="0"][data-variant=outline]:first-child{border-left-style:var(--tw-border-style);border-left-width:1px}
.data-\[spacing\=default\]\:data-\[variant\=outline\]\:shadow-xs[data-spacing=default][data-variant=outline]{--tw-shadow:0 1px 2px 0 var(--tw-shadow-color,#0000000d);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}
.data-\[vaul-drawer-direction\=bottom\]\:inset-x-0[data-vaul-drawer-direction=bottom]{inset-inline:calc(var(--spacing) * 0)}
.data-\[vaul-drawer-direction\=bottom\]\:bottom-0[data-vaul-drawer-direction=bottom]{bottom:calc(var(--spacing) * 0)}
.data-\[vaul-drawer-direction\=bottom\]\:mt-24[data-vaul-drawer-direction=bottom]{margin-top:calc(var(--spacing) * 24)}
.data-\[vaul-drawer-direction\=bottom\]\:max-h-\[80vh\][data-vaul-drawer-direction=bottom]{max-height:80vh}
.data-\[vaul-drawer-direction\=bottom\]\:rounded-t-lg[data-vaul-drawer-direction=bottom]{border-top-left-radius:var(--radius-lg);border-top-right-radius:var(--radius-lg)}
.data-\[vaul-drawer-direction\=bottom\]\:border-t[data-vaul-drawer-direction=bottom]{border-top-style:var(--tw-border-style);border-top-width:1px}
.data-\[vaul-drawer-direction\=left\]\:inset-y-0[data-vaul-drawer-direction=left]{inset-block:calc(var(--spacing) * 0)}
.data-\[vaul-drawer-direction\=left\]\:left-0[data-vaul-drawer-direction=left]{left:calc(var(--spacing) * 0)}
.data-\[vaul-drawer-direction\=left\]\:w-3\/4[data-vaul-drawer-direction=left]{width:75%}
.data-\[vaul-drawer-direction\=left\]\:border-r[data-vaul-drawer-direction=left]{border-right-style:var(--tw-border-style);border-right-width:1px}
.data-\[vaul-drawer-direction\=right\]\:inset-y-0[data-vaul-drawer-direction=right]{inset-block:calc(var(--spacing) * 0)}
.data-\[vaul-drawer-direction\=right\]\:right-0[data-vaul-drawer-direction=right]{right:calc(var(--spacing) * 0)}
.data-\[vaul-drawer-direction\=right\]\:w-3\/4[data-vaul-drawer-direction=right]{width:75%}
.data-\[vaul-drawer-direction\=right\]\:border-l[data-vaul-drawer-direction=right]{border-left-style:var(--tw-border-style);border-left-width:1px}
.data-\[vaul-drawer-direction\=top\]\:inset-x-0[data-vaul-drawer-direction=top]{inset-inline:calc(var(--spacing) * 0)}
.data-\[vaul-drawer-direction\=top\]\:top-0[data-vaul-drawer-direction=top]{top:calc(var(--spacing) * 0)}
.data-\[vaul-drawer-direction\=top\]\:mb-24[data-vaul-drawer-direction=top]{margin-bottom:calc(var(--spacing) * 24)}
.data-\[vaul-drawer-direction\=top\]\:max-h-\[80vh\][data-vaul-drawer-direction=top]{max-height:80vh}
.data-\[vaul-drawer-direction\=top\]\:rounded-b-lg[data-vaul-drawer-direction=top]{border-bottom-right-radius:var(--radius-lg);border-bottom-left-radius:var(--radius-lg)}
.data-\[vaul-drawer-direction\=top\]\:border-b[data-vaul-drawer-direction=top]{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}
.nth-last-2\:-mt-1:nth-last-child(2){margin-top:calc(var(--spacing) * -1)}
@media (width>=40rem){.sm\:block{display:block}
.sm\:flex{display:flex}
.sm\:max-w-lg{max-width:var(--container-lg)}
.sm\:max-w-sm{max-width:var(--container-sm)}
.sm\:flex-row{flex-direction:row}
.sm\:justify-end{justify-content:flex-end}
.sm\:gap-2\.5{gap:calc(var(--spacing) * 2.5)}
.sm\:pr-2\.5{padding-right:calc(var(--spacing) * 2.5)}
.sm\:pl-2\.5{padding-left:calc(var(--spacing) * 2.5)}
.sm\:text-left{text-align:left}
.sm\:group-data-\[size\=default\]\/alert-dialog-content\:row-span-2:is(:where(.group\/alert-dialog-content)[data-size=default] *){grid-row:span 2/span 2}
.sm\:group-data-\[size\=default\]\/alert-dialog-content\:place-items-start:is(:where(.group\/alert-dialog-content)[data-size=default] *){place-items:start}
.sm\:group-data-\[size\=default\]\/alert-dialog-content\:text-left:is(:where(.group\/alert-dialog-content)[data-size=default] *){text-align:left}
.sm\:group-data-\[size\=default\]\/alert-dialog-content\:group-has-data-\[slot\=alert-dialog-media\]\/alert-dialog-content\:col-start-2:is(:where(.group\/alert-dialog-content)[data-size=default] *):is(:where(.group\/alert-dialog-content):has([data-slot=alert-dialog-media]) *){grid-column-start:2}
.sm\:group-data-\[size\=default\]\/alert-dialog-content\:has-data-\[slot\=alert-dialog-media\]\:grid-rows-\[auto_1fr\]:is(:where(.group\/alert-dialog-content)[data-size=default] *):has([data-slot=alert-dialog-media]){grid-template-rows:auto 1fr}
.data-\[size\=default\]\:sm\:max-w-lg[data-size=default]{max-width:var(--container-lg)}
.data-\[vaul-drawer-direction\=left\]\:sm\:max-w-sm[data-vaul-drawer-direction=left],.data-\[vaul-drawer-direction\=right\]\:sm\:max-w-sm[data-vaul-drawer-direction=right]{max-width:var(--container-sm)}
}
@media (width>=48rem){.md\:absolute{position:absolute}
.md\:block{display:block}
.md\:flex{display:flex}
.md\:w-\[var\(--radix-navigation-menu-viewport-width\)\]{width:var(--radix-navigation-menu-viewport-width)}
.md\:w-auto{width:auto}
.md\:flex-row{flex-direction:row}
.md\:gap-1\.5{gap:calc(var(--spacing) * 1.5)}
.md\:p-12{padding:calc(var(--spacing) * 12)}
.md\:text-left{text-align:left}
.md\:text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}
.md\:opacity-0{opacity:0}
.md\:peer-data-\[variant\=inset\]\:m-2:is(:where(.peer)[data-variant=inset]~*){margin:calc(var(--spacing) * 2)}
.md\:peer-data-\[variant\=inset\]\:ml-0:is(:where(.peer)[data-variant=inset]~*){margin-left:calc(var(--spacing) * 0)}
.md\:peer-data-\[variant\=inset\]\:rounded-xl:is(:where(.peer)[data-variant=inset]~*){border-radius:var(--radius-xl)}
.md\:peer-data-\[variant\=inset\]\:shadow-sm:is(:where(.peer)[data-variant=inset]~*){--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}
.md\:peer-data-\[variant\=inset\]\:peer-data-\[state\=collapsed\]\:ml-2:is(:where(.peer)[data-variant=inset]~*):is(:where(.peer)[data-state=collapsed]~*){margin-left:calc(var(--spacing) * 2)}
.md\:after\:hidden:after{content:var(--tw-content);display:none}
}
@container field-group (width>=28rem){.\@md\/field-group\:flex-row{flex-direction:row}
.\@md\/field-group\:items-center{align-items:center}
.\@md\/field-group\:has-\[\>\[data-slot\=field-content\]\]\:items-start:has(>[data-slot=field-content]){align-items:flex-start}
}
.rtl\:translate-x-1\/2:where(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)),[dir=rtl],[dir=rtl] *){--tw-translate-x:calc(1 / 2 * 100%);translate:var(--tw-translate-x) var(--tw-translate-y)}
@media (prefers-color-scheme:dark){.dark\:bg-transparent{background-color:#0000}
:is(.dark\:\*\:data-\[slot\=bubble-content\]\:bg-\[oklch\(from_var\(--primary\)_0\.3_calc\(c\*0\.4\)_h\)\]>*)[data-slot=bubble-content]{background-color:oklch(from var(--primary) .3 calc(c * .4) h)}
.dark\:group-data-\[variant\=line\]\/tabs-list\:data-\[state\=active\]\:border-transparent:is(:where(.group\/tabs-list)[data-variant=line] *)[data-state=active]{border-color:#0000}
.dark\:group-data-\[variant\=line\]\/tabs-list\:data-\[state\=active\]\:bg-transparent:is(:where(.group\/tabs-list)[data-variant=line] *)[data-state=active]{background-color:#0000}
}
@media (pointer:coarse){.pointer-coarse\:size-5{width:calc(var(--spacing) * 5);height:calc(var(--spacing) * 5)}
.pointer-coarse\:px-3{padding-inline:calc(var(--spacing) * 3)}
.pointer-coarse\:py-2{padding-block:calc(var(--spacing) * 2)}
.pointer-coarse\:text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}
}
.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}
.\[\&_\.recharts-dot\[stroke\=\'\#fff\'\]\]\:stroke-transparent .recharts-dot[stroke=\#fff]{stroke:#0000}
.\[\&_\.recharts-layer\]\:outline-hidden .recharts-layer{--tw-outline-style:none;outline-style:none}
@media (forced-colors:active){.\[\&_\.recharts-layer\]\:outline-hidden .recharts-layer{outline-offset:2px;outline:2px solid #0000}
}
.\[\&_\.recharts-sector\]\:outline-hidden .recharts-sector{--tw-outline-style:none;outline-style:none}
@media (forced-colors:active){.\[\&_\.recharts-sector\]\:outline-hidden .recharts-sector{outline-offset:2px;outline:2px solid #0000}
}
.\[\&_\.recharts-sector\[stroke\=\'\#fff\'\]\]\:stroke-transparent .recharts-sector[stroke=\#fff]{stroke:#0000}
.\[\&_\.recharts-surface\]\:outline-hidden .recharts-surface{--tw-outline-style:none;outline-style:none}
@media (forced-colors:active){.\[\&_\.recharts-surface\]\:outline-hidden .recharts-surface{outline-offset:2px;outline:2px solid #0000}
}
.\[\&_\[cmdk-group-heading\]\]\:px-2 [cmdk-group-heading]{padding-inline:calc(var(--spacing) * 2)}
.\[\&_\[cmdk-group-heading\]\]\:py-1\.5 [cmdk-group-heading]{padding-block:calc(var(--spacing) * 1.5)}
.\[\&_\[cmdk-group-heading\]\]\:text-xs [cmdk-group-heading]{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}
.\[\&_\[cmdk-group-heading\]\]\:font-medium [cmdk-group-heading]{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}
.\[\&_\[cmdk-group\]\]\:px-2 [cmdk-group]{padding-inline:calc(var(--spacing) * 2)}
.\[\&_\[cmdk-group\]\:not\(\[hidden\]\)_\~\[cmdk-group\]\]\:pt-0 [cmdk-group]:not([hidden])~[cmdk-group]{padding-top:calc(var(--spacing) * 0)}
.\[\&_\[cmdk-input-wrapper\]_svg\]\:h-5 [cmdk-input-wrapper] svg{height:calc(var(--spacing) * 5)}
.\[\&_\[cmdk-input-wrapper\]_svg\]\:w-5 [cmdk-input-wrapper] svg{width:calc(var(--spacing) * 5)}
.\[\&_\[cmdk-input\]\]\:h-12 [cmdk-input]{height:calc(var(--spacing) * 12)}
.\[\&_\[cmdk-item\]\]\:px-2 [cmdk-item]{padding-inline:calc(var(--spacing) * 2)}
.\[\&_\[cmdk-item\]\]\:py-3 [cmdk-item]{padding-block:calc(var(--spacing) * 3)}
.\[\&_\[cmdk-item\]_svg\]\:h-5 [cmdk-item] svg{height:calc(var(--spacing) * 5)}
.\[\&_\[cmdk-item\]_svg\]\:w-5 [cmdk-item] svg{width:calc(var(--spacing) * 5)}
.\[\&_img\]\:size-full img{width:100%;height:100%}
.\[\&_img\]\:object-cover img{object-fit:cover}
.\[\&_p\]\:leading-relaxed p{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}
.\[\&_svg\]\:pointer-events-none svg{pointer-events:none}
.\[\&_svg\]\:shrink-0 svg{flex-shrink:0}
.data-\[direction\=start\]\:\[\&_svg\]\:rotate-180[data-direction=start] svg{rotate:180deg}
.\[\&_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-4 svg:not([class*=size-]){width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}
.\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-6 svg:not([class*=size-]),.group-data-\[orientation\=vertical\]\/attachment\:\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-6:is(:where(.group\/attachment)[data-orientation=vertical] *) svg:not([class*=size-]){width:calc(var(--spacing) * 6);height:calc(var(--spacing) * 6)}
.group-data-\[size\=xs\]\/attachment\:\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-3\.5:is(:where(.group\/attachment)[data-size=xs] *) svg:not([class*=size-]){width:calc(var(--spacing) * 3.5);height:calc(var(--spacing) * 3.5)}
.\[\&_tr\]\:border-b tr{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}
.\[\&_tr\:last-child\]\:border-0 tr:last-child{border-style:var(--tw-border-style);border-width:0}
.\[\&\+\[data-slot\=item-content\]\]\:flex-none+[data-slot=item-content]{flex:none}
.\[\&\:first-child\[data-selected\=true\]_button\]\:rounded-l-md:first-child[data-selected=true] button{border-top-left-radius:var(--radius-md);border-bottom-left-radius:var(--radius-md)}
.\[\&\:has\(\[role\=checkbox\]\)\]\:pr-0:has([role=checkbox]){padding-right:calc(var(--spacing) * 0)}
.\[\.border-b\]\:pb-3.border-b{padding-bottom:calc(var(--spacing) * 3)}
.\[\.border-b\]\:pb-6.border-b{padding-bottom:calc(var(--spacing) * 6)}
.\[\.border-t\]\:pt-3.border-t{padding-top:calc(var(--spacing) * 3)}
.\[\.border-t\]\:pt-6.border-t{padding-top:calc(var(--spacing) * 6)}
:is(.rtl\:\*\*\:\[\.rdp-button\\_next\>svg\]\:rotate-180:where(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)),[dir=rtl],[dir=rtl] *) *):is(.rdp-button_next>svg),:is(.rtl\:\*\*\:\[\.rdp-button\\_previous\>svg\]\:rotate-180:where(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)),[dir=rtl],[dir=rtl] *) *):is(.rdp-button_previous>svg){rotate:180deg}
.\[a\]\:underline:is(a){text-decoration-line:underline}
.\[a\]\:underline-offset-3:is(a){text-underline-offset:3px}
.\[a\]\:transition-colors:is(a){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,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}
:is(.\*\:\[a\]\:underline>*):is(a){text-decoration-line:underline}
:is(.\*\:\[a\]\:underline-offset-3>*):is(a){text-underline-offset:3px}
.\[button\]\:text-left:is(button){text-align:left}
.\[button\,a\]\:transition-colors:is(button,a){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,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}
.\[button\,a\]\:outline-none:is(button,a){--tw-outline-style:none;outline-style:none}
.\[button\,a\]\:focus-visible\:ring-3:is(button,a):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)}
:is(.\*\:\[img\]\:aspect-square>*):is(img){aspect-ratio:1}
:is(.\*\:\[img\]\:w-full>*):is(img){width:100%}
:is(.\*\:\[img\]\:object-cover>*):is(img){object-fit:cover}
:is(.\*\:\[span\]\:last\:flex>*):is(span):last-child{display:flex}
:is(.\*\:\[span\]\:last\:items-center>*):is(span):last-child{align-items:center}
:is(.\*\:\[span\]\:last\:gap-2>*):is(span):last-child{gap:calc(var(--spacing) * 2)}
:is(.\*\:\[svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-8>*):is(svg:not([class*=size-])){width:calc(var(--spacing) * 8);height:calc(var(--spacing) * 8)}
.\[\&\:last-child\[data-selected\=true\]_button\]\:rounded-r-md:last-child[data-selected=true] button{border-top-right-radius:var(--radius-md);border-bottom-right-radius:var(--radius-md)}
.\[\&\:nth-child\(2\)\[data-selected\=true\]_button\]\:rounded-l-md:nth-child(2)[data-selected=true] button{border-top-left-radius:var(--radius-md);border-bottom-left-radius:var(--radius-md)}
.\[\&\>\*\]\:w-full>*{width:100%}
.\[\&\>\*\]\:focus-visible\:relative>:focus-visible{position:relative}
.\[\&\>\*\]\:focus-visible\:z-10>:focus-visible{z-index:10}
.\[\&\>\*\]\:data-\[slot\=field\]\:p-4>[data-slot=field]{padding:calc(var(--spacing) * 4)}
@container field-group (width>=28rem){.\@md\/field-group\:\[\&\>\*\]\:w-auto>*{width:auto}
}
.\[\&\>\*\:not\(\:first-child\)\]\:rounded-t-none>:not(:first-child){border-top-left-radius:0;border-top-right-radius:0}
.\[\&\>\*\:not\(\:first-child\)\]\:rounded-l-none>:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}
.\[\&\>\*\:not\(\:first-child\)\]\:border-t-0>:not(:first-child){border-top-style:var(--tw-border-style);border-top-width:0}
.\[\&\>\*\:not\(\:first-child\)\]\:border-l-0>:not(:first-child){border-left-style:var(--tw-border-style);border-left-width:0}
.\[\&\>\*\:not\(\:last-child\)\]\:rounded-r-none>:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}
.\[\&\>\*\:not\(\:last-child\)\]\:rounded-b-none>:not(:last-child){border-bottom-right-radius:0;border-bottom-left-radius:0}
.\[\&\>\.sr-only\]\:w-auto>.sr-only{width:auto}
.\[\&\>\[data-slot\=bubble-content\]\:is\(button\,a\)\:hover\]\:bg-\[color-mix\(in_oklch\,var\(--muted\)\,var\(--foreground\)_5\%\)\]>[data-slot=bubble-content]:is(button,a):hover{background-color:var(--muted)}
@supports (color:color-mix(in lab, red, red)){.\[\&\>\[data-slot\=bubble-content\]\:is\(button\,a\)\:hover\]\:bg-\[color-mix\(in_oklch\,var\(--muted\)\,var\(--foreground\)_5\%\)\]>[data-slot=bubble-content]:is(button,a):hover{background-color:color-mix(in oklch,var(--muted),var(--foreground) 5%)}
}
.\[\&\>\[data-slot\=bubble-content\]\:is\(button\,a\)\:hover\]\:bg-\[color-mix\(in_oklch\,var\(--secondary\)\,var\(--foreground\)_5\%\)\]>[data-slot=bubble-content]:is(button,a):hover{background-color:var(--secondary)}
@supports (color:color-mix(in lab, red, red)){.\[\&\>\[data-slot\=bubble-content\]\:is\(button\,a\)\:hover\]\:bg-\[color-mix\(in_oklch\,var\(--secondary\)\,var\(--foreground\)_5\%\)\]>[data-slot=bubble-content]:is(button,a):hover{background-color:color-mix(in oklch,var(--secondary),var(--foreground) 5%)}
}
.\[\&\>\[data-slot\=bubble-content\]\:is\(button\,a\)\:hover\]\:bg-\[oklch\(from_var\(--primary\)_0\.88_calc\(c\*0\.5\)_h\)\]>[data-slot=bubble-content]:is(button,a):hover{background-color:oklch(from var(--primary) .88 calc(c * .5) h)}
@media (prefers-color-scheme:dark){.dark\:\[\&\>\[data-slot\=bubble-content\]\:is\(button\,a\)\:hover\]\:bg-\[oklch\(from_var\(--primary\)_0\.35_calc\(c\*0\.5\)_h\)\]>[data-slot=bubble-content]:is(button,a):hover{background-color:oklch(from var(--primary) .35 calc(c * .5) h)}
}
.\[\&\>\[data-slot\=field-group\]\]\:gap-4>[data-slot=field-group]{gap:calc(var(--spacing) * 4)}
.\[\&\>\[data-slot\=field-label\]\]\:flex-auto>[data-slot=field-label]{flex:auto}
@container field-group (width>=28rem){.\@md\/field-group\:\[\&\>\[data-slot\=field-label\]\]\:flex-auto>[data-slot=field-label]{flex:auto}
}
.has-\[select\[aria-hidden\=true\]\:last-child\]\:\[\&\>\[data-slot\=select-trigger\]\:last-of-type\]\:rounded-r-md:has(:is(select[aria-hidden=true]:last-child))>[data-slot=select-trigger]:last-of-type{border-top-right-radius:var(--radius-md);border-bottom-right-radius:var(--radius-md)}
.\[\&\>\[data-slot\=select-trigger\]\:not\(\[class\*\=\'w-\'\]\)\]\:w-fit>[data-slot=select-trigger]:not([class*=w-]){width:fit-content}
.\[\&\>\[role\=checkbox\]\]\:translate-y-\[2px\]>[role=checkbox]{--tw-translate-y:2px;translate:var(--tw-translate-x) var(--tw-translate-y)}
:is(.has-\[\>\[data-slot\=field-content\]\]\:\[\&\>\[role\=checkbox\]\,\[role\=radio\]\]\:mt-px:has(>[data-slot=field-content])>[role=checkbox],.has-\[\>\[data-slot\=field-content\]\]\:\[\&\>\[role\=checkbox\]\,\[role\=radio\]\]\:mt-px:has(>[data-slot=field-content]) [role=radio]){margin-top:1px}
@container field-group (width>=28rem){:is(.\@md\/field-group\:has-\[\>\[data-slot\=field-content\]\]\:\[\&\>\[role\=checkbox\]\,\[role\=radio\]\]\:mt-px:has(>[data-slot=field-content])>[role=checkbox],.\@md\/field-group\:has-\[\>\[data-slot\=field-content\]\]\:\[\&\>\[role\=checkbox\]\,\[role\=radio\]\]\:mt-px:has(>[data-slot=field-content]) [role=radio]){margin-top:1px}
}
.\[\&\>a\]\:underline>a{text-decoration-line:underline}
.\[\&\>a\]\:underline-offset-4>a{text-underline-offset:4px}
.\[\&\>button\]\:hidden>button{display:none}
.\[\&\>input\]\:flex-1>input{flex:1}
.has-\[\>\[data-align\=block-end\]\]\:\[\&\>input\]\:pt-3:has(>[data-align=block-end])>input{padding-top:calc(var(--spacing) * 3)}
.has-\[\>\[data-align\=block-start\]\]\:\[\&\>input\]\:pb-3:has(>[data-align=block-start])>input{padding-bottom:calc(var(--spacing) * 3)}
.has-\[\>\[data-align\=inline-end\]\]\:\[\&\>input\]\:pr-2:has(>[data-align=inline-end])>input{padding-right:calc(var(--spacing) * 2)}
.has-\[\>\[data-align\=inline-start\]\]\:\[\&\>input\]\:pl-2:has(>[data-align=inline-start])>input{padding-left:calc(var(--spacing) * 2)}
.\[\&\>kbd\]\:rounded-\[calc\(var\(--radius\)-5px\)\]>kbd{border-radius:calc(var(--radius) - 5px)}
.\[\&\>span\]\:text-xs>span{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}
.\[\&\>span\]\:opacity-70>span{opacity:.7}
.\[\&\>span\:last-child\]\:truncate>span:last-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}
.\[\&\>svg\]\:pointer-events-none>svg{pointer-events:none}
.\[\&\>svg\]\:size-3>svg{width:calc(var(--spacing) * 3);height:calc(var(--spacing) * 3)}
.\[\&\>svg\]\:size-3\.5>svg{width:calc(var(--spacing) * 3.5);height:calc(var(--spacing) * 3.5)}
.\[\&\>svg\]\:size-4>svg{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}
.\[\&\>svg\]\:h-2\.5>svg{height:calc(var(--spacing) * 2.5)}
.\[\&\>svg\]\:h-3>svg{height:calc(var(--spacing) * 3)}
.\[\&\>svg\]\:w-2\.5>svg{width:calc(var(--spacing) * 2.5)}
.\[\&\>svg\]\:w-3>svg{width:calc(var(--spacing) * 3)}
.\[\&\>svg\]\:shrink-0>svg{flex-shrink:0}
.\[\&\>svg\]\:translate-y-0\.5>svg{--tw-translate-y:calc(var(--spacing) * .5);translate:var(--tw-translate-x) var(--tw-translate-y)}
.\[\&\>svg\]\:text-current>svg{color:currentColor}
.group-has-data-\[size\=lg\]\/avatar-group\:\[\&\>svg\]\:size-5:is(:where(.group\/avatar-group):has([data-size=lg]) *)>svg{width:calc(var(--spacing) * 5);height:calc(var(--spacing) * 5)}
.group-has-data-\[size\=sm\]\/avatar-group\:\[\&\>svg\]\:size-3:is(:where(.group\/avatar-group):has([data-size=sm]) *)>svg{width:calc(var(--spacing) * 3);height:calc(var(--spacing) * 3)}
.group-data-\[size\=default\]\/avatar\:\[\&\>svg\]\:size-2:is(:where(.group\/avatar)[data-size=default] *)>svg,.group-data-\[size\=lg\]\/avatar\:\[\&\>svg\]\:size-2:is(:where(.group\/avatar)[data-size=lg] *)>svg{width:calc(var(--spacing) * 2);height:calc(var(--spacing) * 2)}
.group-data-\[size\=sm\]\/avatar\:\[\&\>svg\]\:hidden:is(:where(.group\/avatar)[data-size=sm] *)>svg{display:none}
.\[\&\>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)}
.\[\&\>tr\]\:last\:border-b-0>tr:last-child{border-bottom-style:var(--tw-border-style);border-bottom-width:0}
.\[\&\[aria-orientation\=horizontal\]\>div\]\:rotate-90[aria-orientation=horizontal]>div{rotate:90deg}
.\[\&\[data-state\=open\]\>svg\]\:rotate-180[data-state=open]>svg{rotate:180deg}
[data-side=left][data-collapsible=offcanvas] .\[\[data-side\=left\]\[data-collapsible\=offcanvas\]_\&\]\:-right-2{right:calc(var(--spacing) * -2)}
[data-side=left][data-state=collapsed] .\[\[data-side\=left\]\[data-state\=collapsed\]_\&\]\:cursor-e-resize{cursor:e-resize}
[data-side=right][data-collapsible=offcanvas] .\[\[data-side\=right\]\[data-collapsible\=offcanvas\]_\&\]\:-left-2{left:calc(var(--spacing) * -2)}
[data-side=right][data-state=collapsed] .\[\[data-side\=right\]\[data-state\=collapsed\]_\&\]\:cursor-w-resize{cursor:w-resize}
[data-slot=card-content] .\[\[data-slot\=card-content\]_\&\]\:bg-transparent,[data-slot=popover-content] .\[\[data-slot\=popover-content\]_\&\]\:bg-transparent{background-color:#0000}
[data-variant=legend]+.\[\[data-variant\=legend\]\+\&\]\:-mt-1\.5{margin-top:calc(var(--spacing) * -1.5)}
@media (hover:hover){a.\[a\&\]\:hover\:underline:hover{text-decoration-line:underline}
}
}
@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{--background:#000;--foreground:#f5f5f2;--border:#ffffff2e;--ring:#fff;--primary:#fff;--primary-foreground:#000;--secondary:#161616;--secondary-foreground:#fff;--muted:#161616;--muted-foreground:#b6b6b6;--accent:#222;--accent-foreground:#fff;--editorial-title-size:clamp(2.15rem, 4.4vw, 5rem)}
*{box-sizing:border-box}
html{scroll-behavior:smooth;background:#000}
body{color:#f5f5f2;background:#000;margin:0;font-family:Helvetica Neue,Helvetica,Arial,sans-serif;overflow-x:hidden}
html,.urbanistica-gallery-overlay{scrollbar-width:thin;scrollbar-color:#fff transparent}
html::-webkit-scrollbar{width:5px;height:5px}
.urbanistica-gallery-overlay::-webkit-scrollbar{width:5px;height:5px}
html::-webkit-scrollbar-track{background:0 0}
.urbanistica-gallery-overlay::-webkit-scrollbar-track{background:0 0}
html::-webkit-scrollbar-thumb{background:#fff;border:0;border-radius:999px}
.urbanistica-gallery-overlay::-webkit-scrollbar-thumb{background:#fff;border:0;border-radius:999px}
html::-webkit-scrollbar-button{background:0 0;width:0;height:0;display:none}
html::-webkit-scrollbar-button:single-button{background:0 0;width:0;height:0;display:none}
.urbanistica-gallery-overlay::-webkit-scrollbar-button{background:0 0;width:0;height:0;display:none}
.urbanistica-gallery-overlay::-webkit-scrollbar-button:single-button{background:0 0;width:0;height:0;display:none}
html::-webkit-scrollbar-corner{background:0 0}
.urbanistica-gallery-overlay::-webkit-scrollbar-corner{background:0 0}
button,a{-webkit-tap-highlight-color:transparent}
.editorial-title{font-family:Didot,Bodoni MT,Times New Roman,serif;font-size:var(--editorial-title-size);letter-spacing:-.04em;text-transform:uppercase;margin:0;font-weight:400;line-height:.95}
.site-shell{background:#000;min-height:100svh}
.hero-header{box-sizing:border-box;background:#000;place-items:center;min-height:0;padding:1cm 0 0;display:grid;position:relative}
.brand-block{text-align:center;width:clamp(235px,24vw,360px);margin-top:0}
.brand-home-link{color:inherit;text-decoration:none;display:block}
.brand-logo{width:100%;height:auto;display:block}
.location-line{color:#f3f3f3;letter-spacing:.15em;text-transform:uppercase;justify-content:space-between;align-items:center;width:100%;margin-top:10px;font-size:clamp(7px,.58vw,10px);font-weight:500;display:flex}
.menu-trigger{z-index:20;cursor:pointer;background:0 0;border:0;flex-direction:column;justify-content:center;align-items:flex-end;gap:8px;width:58px;height:48px;display:flex;position:absolute;top:clamp(34px,6vh,70px);right:clamp(25px,5vw,82px)}
.menu-trigger span{transform-origin:100%;background:#fff;border-radius:20px;width:46px;height:3px;transition:width .55s cubic-bezier(.16,1,.3,1),transform .55s cubic-bezier(.16,1,.3,1),opacity .35s;display:block}
.menu-trigger span:nth-child(2),.menu-trigger:hover span:first-child{width:34px}
.menu-trigger:hover span:nth-child(2){width:46px}
.menu-trigger:focus-visible{outline-offset:6px;outline:1px solid #fff}
.nav-sheet{color:#fff!important;background:#000!important;border-left:1px solid #fff3!important;width:min(395px,82vw)!important;max-width:none!important;padding:clamp(26px,4.5vw,56px)!important;transition-duration:.7s!important;transition-timing-function:cubic-bezier(.16,1,.3,1)!important}
.nav-sheet>button{color:#fff;top:34px;right:34px}
.nav-sheet-header{padding:0!important}
.nav-kicker{letter-spacing:.25em;text-transform:uppercase;font-size:11px!important;font-weight:500!important}
.side-nav{margin-top:clamp(82px,16vh,150px);display:grid}
.side-nav-row,.contact-toggle{color:#fff;text-align:left;background:0 0;border:0;border-bottom:1px solid #ffffff29;grid-template-columns:38px 1fr;align-items:baseline;width:100%;padding:19px 0;font-family:Georgia,Times New Roman,serif;font-size:clamp(26px,2.5vw,38px);display:grid}
.side-nav-row{cursor:default}
.side-nav small{letter-spacing:.16em;color:#888;font-family:Arial,sans-serif;font-size:9px}
.contact-nav{position:relative}
.contact-toggle{z-index:2;cursor:pointer;transition:color .3s;position:relative}
.contact-toggle:hover{color:#cfcfcb}
.contact-toggle:focus-visible{outline-offset:5px;outline:1px solid #fff}
.contact-rule{z-index:1;transform-origin:0 0;background:#ffffff52;width:100%;height:1px;transition:width .46s cubic-bezier(.16,1,.3,1),height .52s cubic-bezier(.16,1,.3,1),top .52s cubic-bezier(.16,1,.3,1),background-color .3s;display:block;position:absolute;top:100%;left:0}
.contact-nav.is-open .contact-toggle{border-bottom-color:#0000}
.contact-nav.is-open .contact-rule{background:#ffffffa8;width:1px;height:178px;top:94px}
.contact-details{opacity:0;max-height:0;margin-left:24px;transition:max-height .58s cubic-bezier(.16,1,.3,1),opacity .32s,transform .52s cubic-bezier(.16,1,.3,1),padding .52s cubic-bezier(.16,1,.3,1);overflow:hidden;transform:translateY(-12px)}
.contact-nav.is-open .contact-details{opacity:1;max-height:230px;padding:24px 0 5px;transform:translateY(0)}
.contact-details a,.contact-details p{color:#fff;gap:6px;min-width:0;margin:0;padding:11px 0;text-decoration:none;display:grid}
.contact-details a span,.contact-details p span{overflow-wrap:anywhere;letter-spacing:.025em;font-size:13px;font-weight:400;line-height:1.35}
.contact-details a:hover span{text-underline-offset:4px;text-decoration:underline}
.side-location{color:#999;letter-spacing:.2em;text-transform:uppercase;margin-top:auto;font-size:10px}
.intro{text-align:center;place-items:center;min-height:clamp(112px,12vh,150px);padding:0 8vw;display:grid}
.intro h1{letter-spacing:.005em;margin:0;font-family:"Century Gothic",CenturyGothic,AppleGothic,Arial,sans-serif;font-size:clamp(18px,1.65vw,28px);font-weight:400}.intro-number{font-family:inherit;font-size:1.3em}
.intro em{text-transform:none;font-size:1.07em;font-style:normal;font-weight:600}
.gallery{height:clamp(210px,22vw,330px);position:relative;overflow:hidden}
.gallery-track{will-change:transform;backface-visibility:hidden;width:max-content;height:100%;animation:365s linear infinite gallery-right;display:flex;transform:translate3d(-50%,0,0)}
.gallery-group{gap:clamp(10px,1.1vw,18px);height:100%;padding-right:clamp(10px,1.1vw,18px);display:flex}
.project-placeholder{aspect-ratio:1;background:#fff;flex:none;height:100%}
.project-slide{aspect-ratio:1;contain:layout paint;backface-visibility:hidden;flex:none;height:100%;margin:0;background:#000;overflow:hidden;transform:translateZ(0)}
.project-slide img{backface-visibility:hidden;width:100%;height:100%;max-width:none;object-fit:cover;object-position:center;display:block;transform:translateZ(0)}
.gallery:hover .gallery-track{animation-play-state:running}
@keyframes gallery-right{0%{transform:translate3d(-50%,0,0)}
to{transform:translate3d(0,0,0)}
}
.sector-marquee{color:#080808;background:#f4f4f0;border-bottom:1px solid #d6d6d2;height:48px;overflow:hidden}
.sector-track{will-change:transform;width:max-content;height:100%;animation:64s linear infinite sectors-left;display:flex}
.sector-group{white-space:nowrap;align-items:center;display:flex}
.sector-group strong,.sector-group span,.sector-group a{letter-spacing:.13em;text-transform:uppercase;font-size:11px}
.sector-group strong{padding:0 34px;font-weight:700}
.sector-group span,.sector-group a{align-items:center;padding-right:32px;display:flex}
.sector-link{color:inherit;text-underline-offset:4px;font-weight:700;text-decoration:none}
.sector-link:hover,.sector-link:focus-visible{text-decoration:underline}
.sector-link:focus-visible{outline-offset:3px;outline:1px solid #080808}
.dot{background:#1d72d8;border-radius:50%;width:5px;height:5px;margin-right:32px}
.dot-2{background:#ec1c24}
.dot-3{background:#16872d}
@keyframes sectors-left{0%{transform:translate(0)}
to{transform:translate(-50%)}
}
.entry-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 8vw;padding:clamp(44px,7vh,90px) clamp(34px,11vw,190px) clamp(70px,10vh,120px);display:grid}
.entry-link{color:#fff;letter-spacing:.02em;text-transform:uppercase;border-bottom:1px solid #fff3;grid-template-columns:1fr auto;align-items:center;min-height:72px;font-size:clamp(16px,1.45vw,23px);text-decoration:none;transition:padding-left .55s cubic-bezier(.16,1,.3,1),border-color .55s;display:grid;position:relative}
.entry-link:hover{border-color:#fff;padding-left:10px}
.entry-arrow{opacity:0;font-size:20px;font-weight:200;transition:opacity .45s,transform .55s cubic-bezier(.16,1,.3,1);transform:translate(-9px,9px)}
.entry-link:hover .entry-arrow{opacity:1;transform:translate(0)}
.entry-link:focus-visible{outline-offset:5px;outline:1px solid #fff}
.whatsapp-button{z-index:30;color:#fff;width:58px;height:58px;box-shadow:none;cursor:default;background:#08d763;border:0;border-radius:14px;place-items:center;display:grid;position:fixed;bottom:62px;right:clamp(18px,3vw,48px)}
.whatsapp-button svg{width:32px;height:32px}
.whatsapp-button span{letter-spacing:.08em;text-transform:uppercase;font-size:6px;font-weight:700;position:absolute;bottom:5px}
.association-footer{z-index:2;color:#111;text-align:center;background:#f4f4f0;justify-content:center;align-items:center;gap:7px;width:100%;min-height:43px;padding:7px 18px;font-family:Georgia,Times New Roman,serif;font-size:clamp(10px,.9vw,14px);display:flex;position:relative}
.association-footer i{color:#666}
.footer-dash{color:#777;margin:0 2px}
.legal-footer{z-index:2;color:#f1f1ee;background:#050505;border-top:1px solid #ffffff47;padding:clamp(58px,7vw,108px) clamp(24px,6vw,92px) clamp(86px,9vw,132px);position:relative}
.legal-footer-heading{justify-content:space-between;align-items:baseline;gap:30px;padding-bottom:clamp(36px,5vw,64px);display:flex}
.legal-footer-heading p{font-family:Didot,Bodoni MT,Times New Roman,serif;font-size:var(--editorial-title-size);letter-spacing:-.04em;margin:0;font-weight:400;line-height:.95}
.legal-footer-heading>span{color:#868686;letter-spacing:.17em;text-align:right;text-transform:uppercase;font-size:.7rem}
.legal-footer-grid{border-top:1px solid #ffffff2e;grid-template-columns:1.15fr 1fr 1.2fr .8fr;gap:clamp(32px,5vw,78px);padding-top:28px;display:grid}
.legal-footer section{min-width:0}
.legal-footer h2{color:#777;letter-spacing:.18em;text-transform:uppercase;margin:0 0 27px;font-size:.68rem;font-weight:500}
.legal-footer section>a,.legal-footer section>p{color:#ecece8;margin:0 0 19px;font-size:.9rem;font-style:normal;font-weight:400;line-height:1.55;text-decoration:none;display:block}
.legal-footer section>a:hover{text-underline-offset:5px;text-decoration:underline}
.legal-footer section p>a{color:inherit;overflow-wrap:anywhere;text-decoration:none}
.legal-footer section p>a:hover{text-underline-offset:5px;text-decoration:underline}
.legal-footer section p>span{color:#777;letter-spacing:.13em;text-transform:uppercase;margin-bottom:3px;font-size:.66rem;display:block}
.pending-value{color:#898989;letter-spacing:.08em;font-style:normal;display:block}
.legal-copyright{color:#777;letter-spacing:.12em;text-transform:uppercase;margin:0 0 11px;font-size:.66rem}
.section-page{color:#fff;background:#000;grid-template-rows:auto 1fr;min-height:100svh;display:grid}
.section-header{border-bottom:1px solid #ffffff29;justify-content:space-between;align-items:center;padding:1cm clamp(22px,5vw,72px) 28px;display:flex}
.section-header img{width:150px;height:auto}
.section-home-link{color:inherit;text-decoration:none;display:block}
.section-back-link{color:#fff;letter-spacing:.15em;text-transform:uppercase;font-size:11px;text-decoration:none}
.section-body{padding:clamp(42px,6vw,92px) clamp(24px,6vw,92px) clamp(80px,9vw,140px)}
.section-body small{color:#888;letter-spacing:.18em;text-transform:uppercase}
.section-body h1{max-width:1000px;margin-top:16px}
.section-body p{color:#aaa;max-width:560px;margin:clamp(50px,8vw,120px) 0 0 auto;font-size:15px;line-height:1.7}
.references-page{display:block}
.references-content{padding:clamp(42px,6vw,92px) clamp(24px,6vw,92px) clamp(80px,9vw,140px)}
.references-heading{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:40px;padding-bottom:clamp(38px,5vw,72px);display:grid}
.references-kicker{color:#888;letter-spacing:.18em;text-transform:uppercase;margin:0 0 24px;font-size:.75rem;font-weight:500}
.references-heading h1{margin:0}
.references-selection{color:#a7a7a7;margin:24px 0 0 .35rem;font-family:Didot,Bodoni MT,Times New Roman,serif;font-size:clamp(1rem,1.3vw,1.25rem);font-style:italic}
.references-period{letter-spacing:-.025em;align-items:baseline;gap:.35em;margin:0;font-family:Helvetica Neue,Helvetica,Arial,sans-serif;font-size:clamp(1.3rem,2.3vw,2.2rem);font-weight:300;display:flex}
.references-period i{color:#666;font-style:normal;font-weight:200}
.references-list{border-top:1px solid #ffffff47;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:clamp(44px,7vw,120px);margin:0;padding:0;list-style:none;display:grid}
.references-list li{color:#eeeeeb;border-bottom:1px solid #ffffff29;align-items:center;min-height:72px;padding:15px 18px 15px 26px;font-size:clamp(1rem,1.15vw,1.18rem);font-weight:400;line-height:1.45;display:flex;position:relative}
.references-list li:before{content:"";opacity:.72;background:#fff;border-radius:50%;width:5px;height:5px;position:absolute;top:50%;left:1px;transform:translateY(-50%)}
.public-works-page{display:block}
.public-works-content{padding:clamp(42px,5vw,76px) clamp(24px,6vw,92px) clamp(82px,9vw,138px)}
.public-works-title{padding-bottom:clamp(22px,2.4vw,36px)}
.public-works-title>p{color:#888;letter-spacing:.18em;text-transform:uppercase;margin:0 0 24px;font-size:.75rem;font-weight:500}
.public-works-title h1{margin:0}
.professional-services{border-top:1px solid #ffffff4d;border-bottom:1px solid #fff3}
.professional-services-trigger{color:#f0f0ed;cursor:pointer;text-align:left;background:0 0;border:0;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:clamp(14px,1.7vw,26px);width:100%;min-height:clamp(66px,6.5vw,88px);padding:11px 2px;font-family:Didot,Bodoni MT,Times New Roman,serif;font-size:clamp(1.18rem,1.75vw,2rem);font-weight:400;display:grid}
.professional-services-label{min-width:0}
.professional-services-trigger:focus-visible{outline-offset:5px;outline:1px solid #fffc}
.professional-services-arrow{color:#aaa;flex:none;font-family:Helvetica Neue,Helvetica,Arial,sans-serif;font-size:clamp(1rem,1.4vw,1.35rem);font-weight:300;transition:color .3s,transform .52s cubic-bezier(.16,1,.3,1);transform:rotate(0)}
.professional-services.is-open .professional-services-arrow{color:#fff;transform:rotate(180deg)}
.professional-services-panel{opacity:0;grid-template-rows:0fr;transition:grid-template-rows .62s cubic-bezier(.16,1,.3,1),opacity .3s,transform .62s cubic-bezier(.16,1,.3,1);display:grid;transform:translateY(-8px)}
.professional-services.is-open .professional-services-panel{opacity:1;grid-template-rows:1fr;transform:translateY(0)}
.professional-services-panel-inner{min-height:0;overflow:hidden}
.professional-services-copy{color:#b7b7b3;max-width:1180px;margin:0;padding:2px 0 clamp(22px,2.5vw,34px);font-size:clamp(1rem,1.16vw,1.14rem);font-weight:300;line-height:1.8}
.curriculum-availability{color:#73736f;letter-spacing:.025em;margin:0;padding:0 0 clamp(28px,3vw,42px);font-size:.78rem;line-height:1.6}
.curriculum-availability button{color:#d8d8d4;cursor:pointer;font:inherit;text-underline-offset:4px;background:0 0;border:0;border-bottom:1px solid;padding:0;transition:color .3s,border-color .3s}
.curriculum-availability button:hover{color:#fff}
.curriculum-availability button:focus-visible{outline-offset:4px;outline:1px solid #fffc}
.curriculum-request{opacity:0;grid-template-rows:0fr;transition:grid-template-rows .58s cubic-bezier(.16,1,.3,1),opacity .28s;display:grid}
.curriculum-request.is-open{opacity:1;grid-template-rows:1fr}
.curriculum-request-inner{min-height:0;overflow:hidden}
.curriculum-form{background:#050505;border:1px solid #fff3;margin-bottom:clamp(34px,4vw,56px);padding:clamp(28px,3.4vw,48px) clamp(20px,3.4vw,48px) clamp(24px,3vw,42px);animation:.46s cubic-bezier(.16,1,.3,1) both curriculum-form-in}
.curriculum-form-heading{border-bottom:1px solid #ffffff26;justify-content:space-between;align-items:flex-end;gap:30px;padding-bottom:clamp(24px,3vw,38px);display:flex}
.curriculum-form-heading p{color:#777;letter-spacing:.17em;text-transform:uppercase;margin:0 0 9px;font-size:.65rem;font-weight:500}
.curriculum-form-heading h3{margin:0;font-family:Didot,Bodoni MT,Times New Roman,serif;font-size:clamp(1.55rem,2.25vw,2.5rem);font-weight:400;line-height:1.05}
.curriculum-form-heading>span{color:#777;letter-spacing:.15em;text-align:right;text-transform:uppercase;font-size:.66rem}
.curriculum-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px clamp(36px,5vw,74px);padding-top:clamp(28px,3vw,42px);display:grid}
.curriculum-fields label{flex-direction:column;gap:8px;min-width:0;display:flex}
.curriculum-fields label>span{color:#92928e;letter-spacing:.11em;text-transform:uppercase;font-size:.7rem;font-weight:500;line-height:1.35}
.curriculum-fields input,.curriculum-fields select,.curriculum-fields textarea{color:#f1f1ed;width:100%;min-height:44px;font:inherit;background:0 0;border:0;border-bottom:1px solid #ffffff5c;border-radius:0;outline:0;padding:8px 0 10px;font-size:1rem;font-weight:300;line-height:1.45}
.curriculum-fields input::placeholder{color:#555}
.curriculum-fields select{appearance:none;cursor:pointer}
.curriculum-fields select option{color:#fff;background:#090909}
.curriculum-fields textarea{resize:vertical;min-height:112px}
.curriculum-fields input:focus,.curriculum-fields select:focus,.curriculum-fields textarea:focus{border-bottom-color:#fff}
.curriculum-reason{grid-column:1/-1}
.curriculum-form-footer{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:40px;padding-top:clamp(28px,3vw,42px);display:grid}
.curriculum-privacy{color:#858581;cursor:pointer;align-items:flex-start;gap:12px;max-width:610px;font-size:.78rem;line-height:1.55;display:flex}
.curriculum-privacy input{accent-color:#fff;flex:none;width:15px;height:15px;margin:3px 0 0}
.curriculum-form-footer>div{text-align:right;flex-direction:column;align-items:flex-end;gap:10px;min-width:min(310px,100%);display:flex}
.curriculum-form-footer button{color:#fff;cursor:pointer;width:100%;min-height:42px;font:inherit;letter-spacing:.08em;text-transform:uppercase;background:0 0;border:0;border-bottom:1px solid #ffffff8c;justify-content:space-between;align-items:center;gap:36px;padding:10px 0;font-size:.85rem;display:flex}
.curriculum-form-footer button:focus-visible{outline-offset:4px;outline:1px solid #fffc}
.curriculum-form-footer small{color:#5f5f5b;max-width:310px;font-size:.68rem;line-height:1.45}
@keyframes curriculum-form-in{0%{opacity:0;transform:translateY(12px)}
to{opacity:1;transform:translateY(0)}
}
.realized-works{margin-top:1cm}
.realized-works-heading{align-items:baseline;gap:18px;padding-bottom:clamp(30px,3.6vw,52px);display:flex}
.realized-works-heading h2{letter-spacing:-.035em;text-transform:uppercase;margin:0;font-family:Didot,Bodoni MT,Times New Roman,serif;font-size:clamp(2rem,3.5vw,4rem);font-weight:400;line-height:1}
.realized-works-heading>span,.public-work-category-heading>span{color:#858581;font-family:Didot,Bodoni MT,Times New Roman,serif;font-size:clamp(.95rem,1.2vw,1.14rem);font-style:italic}
.public-work-categories{border-top:1px solid #ffffff4d}
.public-work-category{border-bottom:1px solid #ffffff38;padding:clamp(42px,5vw,78px) 0 clamp(48px,6vw,88px)}
.public-work-category-heading{align-items:baseline;gap:14px;margin-bottom:clamp(30px,3.5vw,48px);display:flex}
.public-work-category-heading h2{letter-spacing:-.025em;text-transform:uppercase;margin:0;font-family:Didot,Bodoni MT,Times New Roman,serif;font-size:clamp(1.55rem,2.3vw,2.65rem);font-weight:400;line-height:1.08}
.public-work-group+.public-work-group{margin-top:clamp(42px,5vw,74px)}
.public-work-group h3{color:#bdbdb9;margin:0 0 20px;font-family:Didot,Bodoni MT,Times New Roman,serif;font-size:clamp(1.05rem,1.35vw,1.35rem);font-weight:400;line-height:1.4}
@media (width>=721px){.public-work-group h3.is-single-line{white-space:nowrap}
}
.public-work-list{border-top:1px solid #ffffff3d;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:clamp(44px,7vw,120px);margin:0;padding:0;list-style:none;display:grid}
.public-work-list li{color:#e4e4e0;border-bottom:1px solid #ffffff24;align-items:center;min-height:76px;padding:17px 18px 17px 26px;font-size:clamp(.93rem,1.03vw,1.08rem);font-weight:300;line-height:1.58;display:flex;position:relative}
.public-work-list li:before{content:"";background:#ffffffbd;border-radius:50%;width:5px;height:5px;position:absolute;top:50%;left:1px;transform:translateY(-50%)}
.sectors-page{display:block}
.sectors-content{padding:clamp(42px,5vw,76px) clamp(24px,6vw,92px) clamp(62px,7vw,100px)}
.sectors-heading{padding-bottom:clamp(30px,3.5vw,52px)}
.sectors-kicker{color:#888;letter-spacing:.18em;text-transform:uppercase;margin:0 0 24px;font-size:.75rem;font-weight:500}
.sectors-columns{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:clamp(44px,7vw,120px);display:grid}
.sectors-columns ul{border-top:1px solid #ffffff47;margin:0;padding:0;list-style:none}
.sectors-columns li{color:#eeeeeb;border-bottom:1px solid #ffffff29;align-items:stretch;min-height:clamp(58px,6.4vh,70px);font-size:clamp(.96rem,1.08vw,1.12rem);font-weight:400;line-height:1.4;display:flex;position:relative}
.sectors-columns li:before{content:"";background:#ffffffb8;border-radius:50%;width:5px;height:5px;position:absolute;top:50%;left:1px;transform:translateY(-50%)}
.sector-row-link{width:100%;min-height:inherit;color:inherit;justify-content:space-between;align-items:center;gap:20px;padding:13px 16px 13px 26px;text-decoration:none;transition:padding-left .55s cubic-bezier(.16,1,.3,1),color .35s;display:flex}
.sector-row-link:hover{color:#fff;padding-left:36px}
.sector-row-link:focus-visible{outline-offset:5px;outline:1px solid #fff}
.sector-row-arrow{opacity:0;flex:none;font-size:1.05rem;font-weight:200;transition:opacity .45s,transform .55s cubic-bezier(.16,1,.3,1);transform:translate(-9px,9px)}
.sector-row-link:hover .sector-row-arrow,.sector-row-link:focus-visible .sector-row-arrow{opacity:1;transform:translate(0)}
.sector-wide-entry{color:#eeeeeb;border-bottom:1px solid #ffffff29;align-items:stretch;min-height:clamp(58px,6.4vh,70px);font-size:clamp(.96rem,1.08vw,1.12rem);font-weight:400;line-height:1.4;display:flex;position:relative}
.sector-wide-entry:before{content:"";background:#ffffffb8;border-radius:50%;width:5px;height:5px;position:absolute;top:50%;left:1px;transform:translateY(-50%)}
.sector-instrument-entry{border-top:1px solid #ffffff70;border-bottom:1px solid #ffffff38;margin-top:clamp(3cm,8vw,4cm)}
.sector-instrument-link{min-height:86px;padding-block:18px}
.sector-instrument-copy{align-items:baseline;gap:clamp(14px,2vw,30px);display:flex}
.sector-instrument-copy>span{letter-spacing:-.015em;font-family:Didot,Bodoni MT,Times New Roman,serif;font-size:clamp(1.15rem,1.7vw,1.7rem)}
.sector-instrument-copy small{color:#777773;letter-spacing:.16em;text-transform:uppercase;font-size:.66rem;font-weight:500}
.sector-detail-page{min-height:100svh;display:block}
.sector-gallery{padding:clamp(30px,4vw,58px) 0 1cm;animation:.72s cubic-bezier(.16,1,.3,1) both sector-page-in;overflow:hidden}
.sector-detail-layout{--sector-small-frame:clamp(182px, 15.75vw, 315px);--sector-small-frame-half:clamp(91px, 7.875vw, 157.5px);--sector-large-frame:clamp(430px, 40.3vw, 767px);--sector-large-frame-height:clamp(645px, 60.45vw, 1150px);--sector-portrait-frame-width:clamp(250px, 24vw, 390px);--sector-portrait-frame-height:clamp(375px, 36vw, 585px);--sector-adaptive-landscape-height:clamp(245px, 27vw, 445px);--sector-frame-gap:clamp(18px, 1.8vw, 36px);--sector-story-gap:clamp(12px, 1vw, 20px);--sector-story-right:10cm;--sector-story-top:2cm;--sector-story-width:clamp(270px, 23.5vw, 500px);--sector-strip-margin:calc(0px - var(--sector-small-frame) - var(--sector-small-frame-half) - var(--sector-frame-gap));--sector-fixed-hero-left:calc(var(--sector-strip-margin) + var(--sector-small-frame) + var(--sector-small-frame) + var(--sector-frame-gap) + var(--sector-frame-gap));width:100%;position:relative}
.sector-story{z-index:3;top:var(--sector-story-top);right:var(--sector-story-right);bottom:calc(var(--sector-small-frame) + var(--sector-frame-gap));width:var(--sector-story-width);flex-direction:column;justify-content:flex-start;min-width:0;display:flex;position:absolute}
.sector-story-kicker{color:#666;letter-spacing:.19em;text-transform:uppercase;margin:0 0 clamp(17px,1.7vw,30px);font-size:.67rem;font-weight:500}
.sector-story-title-row{grid-template-columns:7px minmax(0,1fr);align-items:start;gap:17px;display:grid}
.sector-story-title-row>span{background:#fff;border-radius:50%;width:7px;height:7px;margin-top:clamp(13px,1.5vw,20px)}
.sector-story h1{letter-spacing:-.045em;text-transform:uppercase;max-width:680px;margin:0;font-family:Didot,Bodoni MT,Times New Roman,serif;font-size:clamp(2.25rem,3vw,4rem);font-weight:400;line-height:.92}
.sector-story-subtitle{color:#d6d6d2;letter-spacing:.015em;margin:clamp(18px,1.9vw,32px) 0 0 24px;font-size:clamp(.88rem,1.1vw,1.08rem);font-weight:300;line-height:1.5}
.sector-story.is-centered{text-align:center;align-items:center}
.sector-story.is-centered .sector-story-title-row{justify-content:center;width:100%;display:flex}
.sector-story.is-centered .sector-story-title-row>span{display:none}
.sector-story.is-centered h1{margin-inline:auto}
.sector-story.is-centered .sector-story-subtitle{margin-left:auto;margin-right:auto}
.sector-service-columns{text-align:left;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(20px,2.4vw,40px);width:min(1240px,100%);margin:1cm auto 0;display:grid}
.sector-service-list{color:#d0d0cc;letter-spacing:.045em;border-top:1px solid #ffffff3d;margin:0;padding:0;font-size:clamp(.73rem,.72vw,.86rem);font-weight:300;line-height:1.2;list-style:none}
.sector-service-list li{white-space:nowrap;border-bottom:1px solid #ffffff21;grid-template-columns:28px minmax(0,1fr);align-items:center;gap:8px;min-height:35px;padding:7px 2px;display:grid}
.sector-service-index{color:#777773;letter-spacing:.08em;font-family:Didot,Bodoni MT,Times New Roman,serif;font-size:.7rem;font-weight:400}
.sector-intro-columns{text-align:left;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(20px,2.4vw,40px);width:min(1240px,100%);margin:1cm auto 0;display:grid}
.sector-intro-columns p{color:#c9c9c5;letter-spacing:.018em;border-top:1px solid #ffffff3d;margin:0;padding:14px 2px 0;font-size:clamp(.76rem,.78vw,.9rem);font-weight:300;line-height:1.52}
.sector-intro-columns strong{color:#f0f0ed;font-weight:600}
.sector-description{color:#b0b0ac;letter-spacing:.025em;margin:clamp(22px,2.2vw,36px) 0 0 24px;padding:0;font-size:clamp(.82rem,.86vw,.94rem);font-weight:300;line-height:1.42;list-style:none}
.sector-description li{padding-left:15px;position:relative}
.sector-description li+li{margin-top:.28em}
.sector-description li:before{content:"";background:#d7d7d3;border-radius:50%;width:4px;height:4px;position:absolute;top:.63em;left:0;transform:translateY(-50%)}
.sector-detail-layout.has-fixed-hero{min-height:var(--sector-large-frame-height)}
.sector-detail-layout.has-portrait-carousel{min-height:0;display:block}
.sector-detail-layout.has-urbanistica-showcase{width:min(1360px,100% - 64px);margin:0 auto}
.has-urbanistica-showcase .sector-story{width:min(1240px,100%);margin:0 auto clamp(36px,4vw,62px);position:relative;inset:auto;transform:none}
.urbanistica-feature-selection{width:100%}
.urbanistica-feature-row{justify-content:center;align-items:center;gap:clamp(10px,1.1vw,18px);width:100%;display:flex}
.urbanistica-feature-card{color:#fff;cursor:zoom-in;background:0 0;border:0;min-width:0;margin:0;padding:0;position:relative;overflow:hidden}
.urbanistica-feature-card img{object-fit:contain;object-position:center;filter:none;width:100%;height:auto;transition:opacity .35s,transform .7s cubic-bezier(.16,1,.3,1);display:block}
.urbanistica-feature-card:hover img{opacity:.82;transform:scale(1.012)}
.sector-gallery:not(.uses-original-color) .urbanistica-feature-card img,.sector-gallery:not(.uses-original-color) .urbanistica-gallery-grid img,.sector-gallery:not(.uses-original-color) .urbanistica-project-image{filter:grayscale()contrast(1.03)}
.urbanistica-feature-row.is-empty{grid-template-columns:repeat(4,minmax(0,1fr));position:relative}
.urbanistica-feature-row.is-empty>span{background:linear-gradient(145deg,#ffffff06,#ffffff02);border:1px solid #ffffff14;flex:1 1 0;min-width:0;min-height:clamp(300px,36vw,520px)}
.urbanistica-feature-row.is-empty:after{color:#72726e;letter-spacing:.16em;text-transform:uppercase;content:"Immagini in preparazione";place-items:center;font-size:.66rem;display:grid;position:absolute;inset:0}
.urbanistica-feature-card>span,.urbanistica-gallery-grid button>span{color:#eee;letter-spacing:.08em;background:#000000c2;min-width:38px;padding:8px 9px;font-family:Didot,Bodoni MT,Times New Roman,serif;font-size:.72rem;position:absolute;bottom:0;right:0}
.urbanistica-gallery-cta{color:#eee;letter-spacing:.12em;text-align:left;text-transform:uppercase;cursor:pointer;background:0 0;border:0;border-top:1px solid #ffffff61;border-bottom:1px solid #fff3;justify-content:space-between;align-items:center;gap:24px;width:min(500px,100%);min-height:64px;margin:clamp(24px,3vw,42px) 0 0 auto;padding:0 3px;font-size:.82rem;font-weight:400;transition:color .3s,padding .45s cubic-bezier(.16,1,.3,1);display:flex}
.urbanistica-gallery-cta:hover{color:#fff;padding-left:12px}
.urbanistica-gallery-cta:disabled{color:#777;cursor:progress;padding-left:2px}
.urbanistica-gallery-cta span:last-child{font-size:1rem}
.urbanistica-gallery-cta-copy{flex-direction:column;gap:5px;display:flex}
.urbanistica-gallery-cta-copy strong{letter-spacing:.13em;font-size:.86rem;font-weight:500}
.urbanistica-gallery-cta-copy small{color:#92928e;letter-spacing:.1em;font-size:.66rem;font-weight:400}
.urbanistica-gallery-overlay{z-index:100;overscroll-behavior:contain;background:#000;animation:.28s cubic-bezier(.22,1,.36,1) both urbanistica-layer-in;position:fixed;inset:0;overflow-y:auto;transform:translateZ(0)}
.urbanistica-gallery-overlay.is-closing{pointer-events:none;animation:.18s ease-out both urbanistica-layer-out}
.urbanistica-gallery-header{z-index:2;background:#000000fb;border-bottom:1px solid #ffffff26;justify-content:space-between;align-items:center;gap:28px;min-height:104px;padding:24px clamp(22px,4vw,62px);display:flex;position:sticky;top:0}
.urbanistica-gallery-header>div{align-items:center;gap:16px;display:flex}
.urbanistica-gallery-header>div>span{background:#fff;border-radius:50%;width:7px;height:7px}
.urbanistica-gallery-header p{letter-spacing:-.02em;text-transform:uppercase;margin:0;font-family:Didot,Bodoni MT,Times New Roman,serif;font-size:clamp(1.55rem,2.2vw,2.5rem);line-height:1}
.urbanistica-gallery-header small{color:#999;letter-spacing:.15em;text-transform:uppercase;margin-top:7px;font-size:.68rem;display:block}
.urbanistica-gallery-header button{color:#bbb;letter-spacing:.12em;text-transform:uppercase;cursor:pointer;background:0 0;border:0;padding:10px 0;font-size:.72rem}
.urbanistica-gallery-grid{--gallery-gap:clamp(5px, .5vw, 9px);align-items:start;gap:var(--gallery-gap);grid-template-columns:repeat(4,minmax(0,1fr));padding:clamp(28px,4vw,64px);animation:.36s cubic-bezier(.22,1,.36,1) 40ms both urbanistica-grid-in;display:grid}
.urbanistica-gallery-column{gap:var(--gallery-gap);flex-direction:column;min-width:0;display:flex}
.urbanistica-gallery-grid button{cursor:zoom-in;background:#080808;border:0;align-self:start;width:100%;margin:0;padding:0;display:block;position:relative;overflow:hidden;transform:translateZ(0)}
.urbanistica-gallery-grid img{object-fit:contain;filter:none;width:100%;height:auto;transition:opacity .3s,transform .65s cubic-bezier(.16,1,.3,1);display:block}
.urbanistica-gallery-grid button:hover img{opacity:.78;transform:scale(1.012)}
.urbanistica-lightbox{z-index:1000;background:#000000eb;place-items:start center;padding:8px;animation:.24s cubic-bezier(.22,1,.36,1) both urbanistica-layer-in;display:grid;position:fixed;inset:0;overflow:hidden;transform:translateZ(0)}
.urbanistica-lightbox.is-closing{pointer-events:none;animation:.18s ease-out both urbanistica-layer-out}
.urbanistica-project-sheet{color:#0a0a0a;background:#fff;grid-template-rows:auto minmax(0,1fr);height:calc(100dvh - 16px);max-height:calc(100dvh - 16px);animation:.3s cubic-bezier(.22,1,.36,1) both urbanistica-sheet-in;display:grid;position:relative;overflow:hidden;transform:translateZ(0);box-shadow:0 24px 90px #0000007a}
.urbanistica-project-sheet.is-portrait{width:min(64svh,880px,94vw)}
.urbanistica-project-sheet.is-balanced{width:min(94svh,1160px,96vw)}
.urbanistica-project-sheet.is-landscape{width:min(96vw,1560px)}
.urbanistica-lightbox.is-closing .urbanistica-project-sheet{animation:.18s ease-out both urbanistica-sheet-out}
.urbanistica-project-sheet>button{z-index:3;color:#fff;cursor:pointer;background:#0000003d;border:1px solid #ffffff6b;border-radius:50%;width:36px;height:36px;font-size:1.45rem;line-height:1;position:absolute;top:18px;right:22px}
.urbanistica-project-sheet>header{color:#fff;background:#000;align-items:center;gap:20px;min-height:106px;padding:24px clamp(34px,5vw,76px);display:flex}
.urbanistica-project-sheet>header>span{background:#fff;border-radius:50%;flex:0 0 7px;width:7px;height:7px}
.urbanistica-project-sheet h2{letter-spacing:-.025em;text-transform:uppercase;margin:0;font-family:Didot,Bodoni MT,Times New Roman,serif;font-size:clamp(1.65rem,2.7vw,3rem);font-weight:400;line-height:1}
.urbanistica-project-sheet header p{color:#d5d5d2;letter-spacing:.035em;text-transform:uppercase;margin:10px 0 0;font-size:clamp(.7rem,.9vw,.9rem)}
.urbanistica-project-body{background:#fff;grid-template-rows:minmax(0,1fr) auto;min-height:0;padding:clamp(14px,1.8vw,28px) max(1cm,2.8vw) clamp(14px,2vw,30px);display:grid;position:relative}
.urbanistica-project-loading{z-index:1;color:#8a8a86;letter-spacing:.16em;text-transform:uppercase;opacity:1;font-size:.62rem;transition:opacity .18s;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}
.urbanistica-project-sheet.is-image-ready .urbanistica-project-loading{opacity:0}
.urbanistica-project-image{object-fit:contain;object-position:center;opacity:0;width:100%;height:100%;min-height:0;transition:opacity .24s,transform .32s cubic-bezier(.22,1,.36,1);display:block;transform:translateZ(0)scale(.997)}
.urbanistica-project-sheet.is-image-ready .urbanistica-project-image{opacity:1;transform:translateZ(0)scale(1)}
.urbanistica-project-body footer{background:#fff;grid-template-columns:120px 1fr 40px;align-items:end;gap:20px;min-height:62px;padding-top:clamp(12px,1.4vw,20px);display:grid}
.urbanistica-project-body footer img{width:94px;height:auto;display:block}
.urbanistica-project-body footer span{letter-spacing:.09em;text-align:center;text-transform:uppercase;font-size:.8rem}
.urbanistica-project-body footer small{color:#777;letter-spacing:.08em;text-align:right;font-family:Didot,Bodoni MT,Times New Roman,serif;font-size:.8rem}
@keyframes urbanistica-layer-in{0%{opacity:0}
to{opacity:1}
}
@keyframes urbanistica-layer-out{0%{opacity:1}
to{opacity:0}
}
@keyframes urbanistica-grid-in{0%{opacity:0;transform:translateY(8px)}
to{opacity:1;transform:translateY(0)}
}
@keyframes urbanistica-sheet-in{0%{opacity:0;transform:translateY(14px)scale(.988)}
to{opacity:1;transform:translate(0)scale(1)}
}
@keyframes urbanistica-sheet-out{0%{opacity:1;transform:translate(0)scale(1)}
to{opacity:0;transform:translateY(8px)scale(.994)}
}
.sector-carousel-window{z-index:1;height:var(--sector-small-frame);position:absolute;bottom:0;left:0;right:0;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,#0000 0,#000 6% 94%,#0000 100%);mask-image:linear-gradient(90deg,#0000 0,#000 6% 94%,#0000 100%)}
.sector-portrait-carousel-window{z-index:1;width:100%;height:var(--sector-portrait-frame-height);position:relative;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,#0000 0,#000 4% 96%,#0000 100%);mask-image:linear-gradient(90deg,#0000 0,#000 4% 96%,#0000 100%)}
.sector-carousel-track{width:max-content;height:100%;animation:sector-carousel-flow var(--sector-carousel-duration,80s) linear infinite;backface-visibility:hidden;will-change:transform;display:flex;transform:translate(0)}
.sector-carousel-group{align-items:center;gap:var(--sector-frame-gap);height:100%;padding-right:var(--sector-frame-gap);display:flex}
.sector-carousel-card{isolation:isolate;width:var(--sector-small-frame);height:var(--sector-small-frame);flex:0 0 var(--sector-small-frame);contain:layout paint;background:#050505;position:relative;overflow:hidden;transform:translateZ(0)}
.sector-carousel-card.is-portrait{width:var(--sector-portrait-frame-width);height:var(--sector-portrait-frame-height);flex-basis:var(--sector-portrait-frame-width)}
.sector-carousel-card.is-adaptive{width:auto;height:var(--sector-adaptive-landscape-height);aspect-ratio:var(--sector-card-aspect,1.5);flex:none}
.sector-carousel-card.is-adaptive.is-portrait{height:var(--sector-portrait-frame-height)}
.sector-carousel-card img{backface-visibility:hidden;object-fit:cover;object-position:center;filter:grayscale()contrast(1.02);pointer-events:none;width:100%;height:100%;display:block;position:absolute;inset:0;transform:translateZ(0)scale(1.001)}
.sector-gallery.uses-original-color .sector-carousel-card img{filter:none}
.sector-fixed-hero{z-index:3;width:var(--sector-large-frame);height:var(--sector-large-frame-height);margin:0 0 0 var(--sector-fixed-hero-left);background:#050505;position:relative;overflow:hidden;transform:translateZ(0)}
.sector-fixed-hero img{backface-visibility:hidden;object-fit:cover;object-position:center;pointer-events:none;width:100%;height:100%;display:block;transform:translateZ(0)}
.sector-frame-strip{width:max-content;margin-left:var(--sector-strip-margin);align-items:flex-end;gap:var(--sector-frame-gap);display:flex}
.sector-frame-strip.is-placeholder .sector-frame-slot{background:#f2f2ee}
.sector-frame-slot{width:var(--sector-small-frame);height:var(--sector-small-frame);flex:0 0 var(--sector-small-frame)}
.sector-frame-slot.is-featured{width:var(--sector-large-frame);height:var(--sector-large-frame-height);flex-basis:var(--sector-large-frame)}
.sector-frame-number{color:#eee;letter-spacing:.08em;text-align:center;pointer-events:none;background:#000000c2;min-width:38px;padding:8px 9px;font-family:Didot,Bodoni MT,Times New Roman,serif;font-size:.78rem;font-weight:400;line-height:1;position:absolute;bottom:0;left:0}
.sector-pending{min-height:calc(100svh - 120px);padding:clamp(50px,7vw,100px) clamp(24px,6vw,92px);animation:.72s cubic-bezier(.16,1,.3,1) both sector-page-in}
.sector-pending>p{color:#777;letter-spacing:.18em;text-transform:uppercase;margin:0 0 24px;font-size:.7rem}
.sector-pending h1{max-width:1080px}
.sector-pending>span{color:#666;letter-spacing:.16em;text-transform:uppercase;margin-top:clamp(64px,10vw,150px);font-size:.72rem;display:block}
@keyframes sector-page-in{0%{opacity:0;transform:translateY(18px)}
to{opacity:1;transform:translateY(0)}
}
@keyframes sector-carousel-flow{to{transform:translate(-50%)}
}
.consultation-page{display:block}
.consultation-content{padding:clamp(42px,6vw,92px) clamp(24px,6vw,92px) clamp(80px,9vw,140px)}
.consultation-heading{grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);align-items:end;gap:clamp(50px,8vw,140px);padding-bottom:clamp(54px,7vw,105px);display:grid}
.consultation-kicker{color:#888;letter-spacing:.18em;text-transform:uppercase;margin:0 0 28px;font-size:.75rem;font-weight:500}
.consultation-heading h1{max-width:980px;margin:0}
.consultation-intro{color:#b7b7b4;margin:0;padding-bottom:.35rem;font-size:clamp(1rem,1.25vw,1.2rem);font-weight:300;line-height:1.7}
.consultation-form{border-top:1px solid #ffffff52}
.form-section{border:0;border-bottom:1px solid #fff3;grid-template-columns:minmax(180px,.32fr) minmax(0,1fr);gap:clamp(40px,7vw,110px);min-width:0;margin:0;padding:clamp(42px,5vw,74px) 0;display:grid}
.form-section-title{color:#f0f0ed;margin:0;font-family:Didot,Bodoni MT,Times New Roman,serif;font-size:clamp(1.6rem,2.4vw,2.6rem);font-weight:400;line-height:1.15}
.form-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(34px,4vw,56px) clamp(34px,5vw,76px);display:grid}
.line-field{flex-direction:column;gap:7px;min-width:0;display:flex}
.line-field label{color:#aaa;letter-spacing:.13em;text-transform:uppercase;font-size:.75rem;font-weight:500;line-height:1.35}
.line-field input,.line-field textarea{color:#fff;width:100%;font:inherit;background:0 0;border:0;border-bottom:1px solid #ffffff6b;border-radius:0;outline:0;font-size:1.08rem;font-weight:300;line-height:1.45;transition:border-color .35s}
.line-field input{min-height:48px;padding:8px 0 10px}
.line-field textarea{resize:vertical;min-height:142px;padding:13px 0 12px}
.line-field input:focus,.line-field textarea:focus{border-color:#fff}
.field-wide{grid-column:1/-1}
.description-field{margin-top:2px}
.consultation-select-trigger{color:#fff!important;width:100%!important;height:auto!important;min-height:48px!important;box-shadow:none!important;background:0 0!important;border:0!important;border-bottom:1px solid #ffffff6b!important;border-radius:0!important;outline:0!important;padding:8px 0 10px!important;font-size:1.08rem!important;font-weight:300!important}
.consultation-select-trigger:focus-visible{box-shadow:none!important;border-bottom-color:#fff!important}
.consultation-select-trigger[data-placeholder]{color:#777!important}
.consultation-select-content{min-width:var(--radix-select-trigger-width)!important;color:#fff!important;background:#090909!important;border:1px solid #ffffff40!important;border-radius:0!important;box-shadow:0 22px 50px #00000073!important}
.consultation-select-item{min-height:40px;color:#e7e7e4!important;border-radius:0!important;font-size:.9rem!important}
.consultation-select-item:focus{color:#000!important;background:#fff!important}
.consultation-submit-area{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:48px;padding-top:clamp(38px,5vw,70px);display:grid}
.privacy-consent{color:#aaa;cursor:pointer;align-items:flex-start;gap:13px;max-width:650px;font-size:.88rem;line-height:1.55;display:flex}
.privacy-consent input{accent-color:#fff;flex:none;width:16px;height:16px;margin:3px 0 0}
.submit-column{text-align:right;flex-direction:column;align-items:flex-end;gap:13px;min-width:min(360px,100%);display:flex}
.submit-column button{color:#fff;min-width:300px;font:inherit;letter-spacing:.08em;text-transform:uppercase;background:0 0;border:0;border-bottom:1px solid #ffffff73;border-radius:0;justify-content:space-between;align-items:center;gap:50px;padding:13px 0;font-size:1rem;display:flex}
.submit-column button:disabled{color:#777;cursor:not-allowed}
.submit-column small{color:#6f6f6f;max-width:330px;font-size:.75rem;line-height:1.5}
.technical-service-page,.instruments-page{color:#f3f3ef;background:#000;min-height:100svh}
.technical-service-page{border-top:1px solid #ffffff2e}
.technical-service-heading{border-bottom:1px solid #ffffff1f;flex-direction:column;align-items:flex-start;gap:clamp(14px,1.7vw,26px);padding:clamp(46px,6vw,88px) clamp(24px,5vw,78px) clamp(38px,4vw,62px);display:flex}
.technical-service-heading h2{white-space:nowrap;max-width:none}
.technical-service-heading p{color:#f5f5f2;letter-spacing:-.012em;max-width:none;margin:0;font-family:Didot,Bodoni MT,Times New Roman,serif;font-size:clamp(18px,1.75vw,29px);font-style:normal;font-weight:400;line-height:1.25}
.instruments-header{z-index:10;background:#000;position:relative}
.instruments-intro{border-bottom:1px solid #ffffff1f;padding:clamp(36px,4vw,60px) clamp(24px,5vw,78px) clamp(38px,4vw,62px)}
.instruments-title-row{flex-direction:column;align-items:flex-start;gap:clamp(14px,1.7vw,26px);display:flex}
.instruments-title-row h1{white-space:nowrap;max-width:none;margin:0}
.instruments-title-row>p{color:#f5f5f2;letter-spacing:-.012em;max-width:none;margin:0;font-family:Didot,Bodoni MT,Times New Roman,serif;font-size:clamp(18px,1.75vw,29px);font-weight:400;line-height:1.25}
.instruments-experience{min-height:560px;padding:0 clamp(22px,4.5vw,72px) clamp(72px,8vw,120px)}
.instrument-detail{opacity:0;grid-template-rows:0fr;transition:grid-template-rows .62s cubic-bezier(.16,1,.3,1),opacity .24s,transform .62s cubic-bezier(.16,1,.3,1);display:grid;overflow:hidden;transform:translateY(16px)}
.instrument-detail-inner{grid-template-columns:minmax(320px,.82fr) minmax(440px,1.18fr);gap:clamp(38px,7vw,112px);min-height:0;animation:.46s cubic-bezier(.16,1,.3,1) both instrument-panel-in;display:grid;position:relative;overflow:hidden}
.instruments-experience.has-selection .instrument-detail{opacity:1;grid-template-rows:1fr;transform:translateY(0)}
.instrument-close{z-index:3;color:#f3f3ef;cursor:pointer;opacity:0;background:0 0;border:0;width:46px;height:46px;padding:0;animation:.42s cubic-bezier(.16,1,.3,1) .12s forwards instrument-close-in;position:absolute;top:clamp(22px,2.5vw,38px);right:0}
.instrument-close span,.instrument-close span:after{content:"";background:currentColor;width:24px;height:1px;transition:width .35s cubic-bezier(.16,1,.3,1),transform .45s cubic-bezier(.16,1,.3,1),opacity .25s;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)rotate(45deg)}
.instrument-close span:after{transform:translate(-50%,-50%)rotate(90deg)}
.instrument-close:hover span{width:29px;transform:translate(-50%,-50%)rotate(135deg)}
.instrument-close:hover span:after{width:29px}
.instrument-close:focus-visible{outline-offset:2px;outline:1px solid #ffffffb8}
.instrument-copy{align-self:center;padding:clamp(56px,7vw,104px) 0}
.instrument-role{color:#777773;letter-spacing:.17em;text-transform:uppercase;margin:0 0 clamp(36px,4vw,64px);font-size:.72rem;font-weight:500}
.instrument-maker{color:#a3a39f;letter-spacing:.2em;text-transform:uppercase;margin:0 0 9px;font-size:.76rem;font-weight:500}
.instrument-copy h2{letter-spacing:-.05em;margin:0;font-family:Didot,Bodoni MT,Times New Roman,serif;font-size:clamp(3rem,5.5vw,6.5rem);font-weight:400;line-height:.88}
.instrument-description{color:#aaa9a5;max-width:610px;margin:clamp(28px,3.2vw,44px) 0 0;font-size:clamp(1rem,1.1vw,1.12rem);font-weight:300;line-height:1.72}
.instrument-capabilities{border-top:1px solid #ffffff26;flex-wrap:wrap;margin:clamp(30px,3vw,42px) 0 0;padding:0;list-style:none;display:flex}
.instrument-capabilities li{color:#71716d;letter-spacing:.12em;text-transform:uppercase;margin-right:18px;padding:13px 22px 0 0;font-size:.67rem}
.instrument-hero-image{place-items:center;min-height:clamp(470px,52vw,680px);display:grid;overflow:hidden}
.instrument-image-item{place-items:center;width:100%;min-width:0;height:100%;display:grid}
.instrument-hero-image img{object-fit:contain;filter:saturate(.96)contrast(1.015);width:min(92%,760px);height:min(76vh,630px);animation:.58s cubic-bezier(.16,1,.3,1) both instrument-image-in;display:block}
.instrument-hero-image.is-pair{justify-content:center;align-items:center;gap:clamp(8px,.8vw,16px);display:flex}
.instrument-hero-image.is-pair .instrument-image-item{flex:none;width:auto;height:min(70vh,590px)}
.instrument-hero-image.is-pair .instrument-image-item:first-child{aspect-ratio:642/1116}
.instrument-hero-image.is-pair .instrument-image-item:last-child{aspect-ratio:482/1105}
.instrument-hero-image.is-pair .instrument-image-item img{width:100%;height:100%}
@keyframes instrument-image-in{0%{opacity:0;transform:translateY(20px)scale(.97)}
to{opacity:1;transform:translateY(0)scale(1)}
}
@keyframes instrument-panel-in{0%{opacity:.72;transform:translateY(8px)}
to{opacity:1;transform:translateY(0)}
}
@keyframes instrument-close-in{0%{opacity:0;transform:rotate(-30deg)scale(.82)}
to{opacity:1;transform:rotate(0)scale(1)}
}
.instrument-dock{grid-template-columns:repeat(6,minmax(0,1fr));gap:clamp(12px,1.7vw,28px);margin:0;padding:clamp(42px,5vw,72px) 0 0;list-style:none;transition:padding .62s cubic-bezier(.16,1,.3,1);display:grid}
.instruments-experience.has-selection .instrument-dock{border-top:1px solid #ffffff21;padding-top:clamp(24px,3vw,44px)}
.instrument-dock>li{min-width:0}
.instrument-card{color:#edede9;cursor:pointer;background:0 0;border:0;grid-template-rows:auto minmax(0,1fr) auto;row-gap:clamp(8px,.7vw,11px);width:100%;height:clamp(190px,16vw,260px);padding:0;display:grid;position:relative;overflow:visible}
.instrument-card:focus-visible{outline-offset:7px;outline:1px solid #ffffffb3}
.instrument-card-number{color:#535350;letter-spacing:.13em;justify-self:start;font-size:.67rem;line-height:1;transition:color .3s}
.instrument-card[data-instrument=mavic]{--thumb-width:96%;--thumb-height:66%}
.instrument-card[data-instrument=hdv600]{--thumb-width:100%;--thumb-height:88%;--thumb-scale:.56;--thumb-shift-y:clamp(-90px, -4.4vw, -32px)}
.instrument-card[data-instrument=profoscope]{--thumb-width:72%;--thumb-height:76%;--thumb-scale:.78;--thumb-shift-y:clamp(-68px, -3.3vw, -26px)}
.instrument-card[data-instrument=reach],.instrument-card[data-instrument=raven]{--thumb-width:68%;--thumb-height:74%;--thumb-scale:.8;--thumb-shift-y:clamp(-54px, -2.6vw, -20px)}
.instrument-thumb-media{justify-content:center;align-items:center;width:100%;height:100%;min-height:0;transition:transform .55s cubic-bezier(.16,1,.3,1),filter .35s,opacity .35s;display:flex;overflow:visible;transform:translateY(0)}
.instrument-thumb-media:not(.is-pair) .instrument-image-item{width:var(--thumb-width,82%);height:var(--thumb-height,78%);transform:translateY(var(--thumb-shift-y,0)) scale(var(--thumb-scale,1));transform-origin:50%;flex:none;transition:transform .55s cubic-bezier(.16,1,.3,1)}
.instrument-thumb-media.is-pair{gap:clamp(2px,.28vw,5px)}
.instrument-thumb-media.is-pair .instrument-image-item{flex:none;width:auto;height:82%}
.instrument-thumb-media.is-pair .instrument-image-item:first-child{aspect-ratio:642/1116}
.instrument-thumb-media.is-pair .instrument-image-item:last-child{aspect-ratio:482/1105}
.instrument-thumb-media img{object-fit:contain;filter:saturate(.94)contrast(1.01);max-width:100%;max-height:100%;transition:filter .35s,opacity .35s;display:block;width:auto!important;height:auto!important}
.instrument-card:hover .instrument-thumb-media,.instrument-card.is-active .instrument-thumb-media{transform:translateY(-5px)}
.instrument-card:hover .instrument-thumb-media img,.instrument-card.is-active .instrument-thumb-media img{filter:saturate()contrast(1.02)}
.instrument-card.is-active .instrument-card-number{color:#ddd}
.instrument-card-label{white-space:nowrap;text-align:left;justify-content:space-between;align-items:baseline;gap:8px;width:100%;display:flex}
.instrument-card-label small{color:#666662;letter-spacing:.12em;text-transform:uppercase;font-size:.56rem;font-weight:500}
.instrument-card-label>span{font-family:Didot,Bodoni MT,Times New Roman,serif;font-size:clamp(.9rem,.95vw,1.08rem);line-height:1}
.instrument-instruction{color:#60605c;letter-spacing:.16em;text-align:center;text-transform:uppercase;margin:clamp(58px,6vw,88px) 0 0;font-size:.68rem;transition:opacity .3s,margin .62s cubic-bezier(.16,1,.3,1)}
.instruments-experience.has-selection .instrument-instruction{opacity:0;margin-top:26px}
@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}
}
@media (width>=1351px){.sector-detail-page{grid-template-rows:auto minmax(0,1fr);height:100svh;min-height:0;display:grid;overflow:hidden}
.sector-gallery{align-items:flex-end;min-height:0;padding-top:clamp(14px,2svh,24px);display:flex}
.sector-detail-layout{--sector-large-frame:min(clamp(430px, 40.3vw, 767px), calc(66.667svh - 144px));--sector-large-frame-height:min(clamp(645px, 60.45vw, 1150px), calc(100svh - 216px));min-height:var(--sector-large-frame-height);align-items:flex-end;display:flex}
.sector-detail-layout.has-portrait-carousel{--sector-portrait-frame-width:min(clamp(280px, 21vw, 410px), 33.333svh);--sector-portrait-frame-height:min(clamp(420px, 31.5vw, 615px), 50svh);--sector-adaptive-landscape-height:min(clamp(320px, 25vw, 500px), 42svh);min-height:var(--sector-large-frame-height);align-items:flex-end;display:flex}
.sector-detail-layout.has-urbanistica-showcase{--urbanistica-feature-height:min(54svh, 30vw);--urbanistica-selection-height:calc(var(--urbanistica-feature-height) + 82px);width:100%;min-height:var(--sector-large-frame-height);align-items:flex-end;margin:0;display:flex}
.has-portrait-carousel .sector-story{top:0;right:auto;bottom:calc(var(--sector-portrait-frame-height) + var(--sector-frame-gap));width:min(1240px,100% - 2cm);left:50%;transform:translate(-50%)}
.has-urbanistica-showcase .sector-story{top:0;right:auto;bottom:calc(var(--urbanistica-selection-height) + var(--sector-frame-gap));width:min(1240px,100% - 2cm);margin:0;position:absolute;left:50%;transform:translate(-50%)}
.has-portrait-carousel .sector-story h1,.has-urbanistica-showcase .sector-story h1{font-size:clamp(2rem,2.5vw,3.2rem)}
.has-portrait-carousel .sector-story-subtitle,.has-urbanistica-showcase .sector-story-subtitle{margin-top:clamp(10px,1.2vw,18px)}
.urbanistica-feature-selection{height:var(--urbanistica-selection-height);position:absolute;bottom:0;left:0;right:0}
.urbanistica-feature-row{height:var(--urbanistica-feature-height);grid-template-columns:var(--urbanistica-feature-columns);align-items:stretch;padding-inline:clamp(28px,4vw,76px);display:grid}
.urbanistica-feature-card{aspect-ratio:auto;width:100%;height:100%}
.urbanistica-feature-card img{object-fit:cover;object-position:center;height:100%}
.urbanistica-feature-row.is-empty>span{min-height:0}
.urbanistica-gallery-cta{min-height:64px;margin:14px clamp(28px,4vw,76px) 0 auto}
.sector-portrait-carousel-window{position:absolute;bottom:0;left:0;right:0}
}
@media (width>=1351px) and (height<=1000px){.sector-story h1{font-size:clamp(2.2rem,3vw,3.5rem)}
.sector-story-subtitle{margin-top:12px;font-size:.8rem;line-height:1.35}
.sector-description{margin-top:14px;font-size:.76rem;line-height:1.3}
.sector-description li+li{margin-top:.16em}
.has-portrait-carousel .sector-story-subtitle,.has-urbanistica-showcase .sector-story-subtitle{margin-top:8px}
.has-portrait-carousel .sector-service-columns,.has-urbanistica-showcase .sector-service-columns{margin-top:1cm}
.sector-service-list li{min-height:30px;padding-block:5px}
}
@media (width>=721px) and (width<=1350px){.sector-gallery{padding-top:clamp(38px,5vw,64px)}
.sector-detail-layout,.sector-detail-layout.has-portrait-carousel,.sector-detail-layout.has-urbanistica-showcase{min-height:0;display:block}
.sector-story,.has-portrait-carousel .sector-story.is-centered,.has-urbanistica-showcase .sector-story.is-centered{width:min(980px,100% - 64px);max-width:none;margin:0 auto clamp(42px,5vw,68px);position:relative;inset:auto;transform:none}
.sector-service-columns,.sector-intro-columns{width:100%;margin-top:clamp(30px,4vw,48px)}
.urbanistica-gallery-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.urbanistica-feature-selection{height:auto;position:relative}
.urbanistica-feature-card{flex:var(--urbanistica-aspect,1) 1 0}
}
@media (width>=1101px) and (width<=1350px){.instrument-detail-inner{grid-template-columns:minmax(300px,.88fr) minmax(0,1.12fr);gap:clamp(32px,4vw,58px)}
.instrument-card{height:clamp(190px,18vw,238px)}
.instrument-card-label small{letter-spacing:.09em;font-size:.5rem}
.instrument-card-label>span{font-size:clamp(.78rem,1.12vw,.98rem)}
}
@media (width>=721px) and (width<=1100px){:root{--editorial-title-size:clamp(2.15rem, 6.2vw, 4.4rem)}
.legal-footer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.instrument-detail-inner{grid-template-columns:1fr;gap:0}
.instrument-copy{padding:clamp(52px,7vw,76px) 0 24px}
.instrument-hero-image{min-height:420px;padding-bottom:34px}
.instrument-hero-image img{height:min(58vh,500px)}
.instrument-dock{overscroll-behavior-inline:contain;scroll-snap-type:inline mandatory;scrollbar-width:none;grid-template-columns:repeat(6,minmax(190px,25vw));gap:22px;margin-inline:calc(0px - clamp(22px,4.5vw,72px));padding:clamp(38px,5vw,58px) clamp(22px,4.5vw,72px) 12px;scroll-padding-inline:clamp(22px,4.5vw,72px);overflow-x:auto}
.instruments-experience.has-selection .instrument-dock{padding-top:34px}
.instrument-dock::-webkit-scrollbar{display:none}
.instrument-dock>li{scroll-snap-align:start}
.instrument-card{height:250px}
}
@media (width>=721px) and (width<=900px){.references-heading,.consultation-heading{grid-template-columns:1fr;align-items:start;gap:30px}
.references-list,.public-work-list{grid-template-columns:1fr}
.urbanistica-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.form-section{grid-template-columns:1fr;gap:36px}
.urbanistica-feature-row{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;display:grid}
.urbanistica-feature-card{aspect-ratio:4/5;width:100%;height:auto}
.urbanistica-feature-card img{object-fit:cover;width:100%;height:100%}
}
@media (width<=720px){:root{--editorial-title-size:clamp(2rem, 10vw, 3.2rem)}
.site-shell{padding-bottom:0}
.hero-header{place-items:start center;min-height:0;padding-top:20px}
.brand-block{width:min(220px,58vw)}
.menu-trigger{top:max(25px, env(safe-area-inset-top));right:max(16px, env(safe-area-inset-right));transform-origin:100% 0;transform:scale(.72)}
.intro{min-height:96px;padding:0 24px}
.intro h1{line-height:1.3}
.gallery{height:clamp(190px,60vw,245px)}
.sector-marquee{height:43px}
.entry-grid{grid-template-columns:1fr;padding:30px 22px 104px}
.entry-link{min-height:70px}
.association-footer{min-height:calc(64px + env(safe-area-inset-bottom));padding:8px max(12px, env(safe-area-inset-right)) max(8px, env(safe-area-inset-bottom)) max(12px, env(safe-area-inset-left));flex-wrap:wrap;gap:3px 6px;font-size:.64rem;line-height:1.25}
.nav-sheet{width:min(340px,88vw)!important}
.side-nav{margin-top:74px}
.contact-nav.is-open .contact-rule{height:174px;top:86px}
.whatsapp-button{width:51px;height:51px;right:max(10px, env(safe-area-inset-right));bottom:calc(16px + env(safe-area-inset-bottom));border-radius:12px}
.legal-footer{padding:54px 22px 100px}
.legal-footer-heading{flex-direction:column;align-items:flex-start;gap:15px}
.legal-footer-heading>span{text-align:left;line-height:1.6}
.legal-footer-grid{grid-template-columns:1fr;gap:30px}
.legal-footer h2{margin-bottom:17px}
.section-header{min-height:calc(72px + env(safe-area-inset-top));padding:max(15px, env(safe-area-inset-top)) max(18px, env(safe-area-inset-right)) 15px max(18px, env(safe-area-inset-left));gap:16px}
.section-header img{flex:none;width:min(110px,34vw)}
.section-back-link{text-align:right;justify-content:flex-end;align-items:center;min-height:44px;font-size:.62rem;line-height:1.35;display:flex}
.references-content{padding:36px 20px 88px}
.references-heading{grid-template-columns:1fr;align-items:start;gap:28px;padding-bottom:38px}
.references-kicker{margin-bottom:19px;font-size:.7rem;line-height:1.6}
.references-selection{margin-top:17px}
.references-period{font-size:1.5rem}
.references-list{grid-template-columns:1fr}
.references-list li{min-height:66px;padding:14px 8px 14px 24px;font-size:1rem}
.public-works-content{padding:36px 20px 82px}
.public-works-title{padding-bottom:20px}
.public-works-title>p{margin-bottom:19px;font-size:.7rem;line-height:1.6}
.professional-services-trigger{min-height:64px;padding:10px 0;font-size:1.1rem;line-height:1.2}
.professional-services-copy{padding-top:4px;font-size:1rem;line-height:1.7}
.curriculum-availability{padding-bottom:28px}
.curriculum-form{padding:25px 18px 23px}
.curriculum-form-heading{flex-direction:column;align-items:flex-start;gap:13px}
.curriculum-form-heading>span{text-align:left}
.curriculum-fields{grid-template-columns:1fr;gap:27px}
.curriculum-reason{grid-column:auto}
.curriculum-form-footer{grid-template-columns:1fr;gap:28px}
.curriculum-form-footer>div{text-align:left;align-items:stretch;min-width:0}
.curriculum-form-footer small{max-width:none}
.realized-works{margin-top:72px}
.realized-works-heading{flex-direction:column;align-items:flex-start;gap:9px;padding-bottom:32px}
.realized-works-heading h2{font-size:clamp(1.8rem,10vw,2.8rem);line-height:1.05}
.public-work-category{padding:40px 0 52px}
.public-work-category-heading{flex-direction:column;align-items:flex-start;gap:7px;margin-bottom:27px}
.public-work-category-heading h2{font-size:1.62rem}
.public-work-group+.public-work-group{margin-top:42px}
.public-work-group h3{margin-bottom:17px;font-size:1.08rem}
.public-work-list{grid-template-columns:1fr}
.public-work-list li{min-height:68px;padding:15px 8px 15px 24px;font-size:.98rem}
.sectors-content{padding:36px 20px 78px}
.sectors-heading{padding-bottom:34px}
.sectors-kicker{margin-bottom:19px;font-size:.7rem;line-height:1.6}
.sectors-columns{grid-template-columns:1fr;row-gap:0}
.sectors-columns ul+ul{border-top:0}
.sectors-columns li,.sector-wide-entry{min-height:62px;font-size:1rem}
.sector-instrument-entry{margin-top:3cm}
.sector-instrument-link{min-height:88px}
.sector-instrument-copy{flex-direction:column;align-items:flex-start;gap:7px}
.sector-gallery{padding:30px 0 1cm}
.sector-detail-layout{--sector-small-frame:42vw;--sector-large-frame:72vw;--sector-large-frame-height:108vw;--sector-portrait-frame-width:72vw;--sector-portrait-frame-height:108vw;--sector-adaptive-landscape-height:58vw;--sector-frame-gap:12px;--sector-strip-margin:calc(12px - var(--sector-small-frame) - 28vw)}
.sector-story{width:auto;margin:0 18px 38px;padding:12px 0 0;position:relative;inset:auto}
.sector-story h1{font-size:clamp(2.4rem,12vw,4.2rem)}
.sector-story-subtitle{margin:22px 0 0 24px}
.sector-description{margin:28px 0 0 24px;font-size:.84rem}
.sector-story.is-centered h1{font-size:clamp(1.9rem,9.5vw,3rem);line-height:1}
.sector-story.is-centered .sector-story-subtitle{margin-top:16px}
.sector-service-columns,.sector-intro-columns{grid-template-columns:1fr;gap:18px;margin-top:22px}
.sector-intro-columns p{font-size:.9rem;line-height:1.55}
.sector-service-list{font-size:.84rem}
.sector-service-list li{white-space:normal;min-height:42px}
.sector-detail-layout.has-urbanistica-showcase{width:calc(100% - 36px)}
.has-urbanistica-showcase .sector-story{margin-bottom:34px}
.urbanistica-feature-row{grid-template-columns:1fr;gap:14px;display:grid}
.urbanistica-feature-card{aspect-ratio:4/5;width:100%;height:auto}
.urbanistica-feature-card img{object-fit:cover;width:100%;height:100%}
.urbanistica-feature-row.is-empty>span{min-height:72vw}
.urbanistica-gallery-cta{margin-top:24px}
.urbanistica-gallery-header{min-height:86px;padding:18px 20px}
.urbanistica-gallery-header>div{gap:11px;min-width:0}
.urbanistica-gallery-header p{overflow-wrap:anywhere;font-size:clamp(1.25rem,6vw,1.7rem)}
.urbanistica-gallery-header button{min-width:68px;min-height:44px}
.urbanistica-gallery-grid{grid-template-columns:1fr;padding:20px}
.urbanistica-project-sheet,.urbanistica-project-sheet.is-portrait,.urbanistica-project-sheet.is-balanced,.urbanistica-project-sheet.is-landscape{width:96vw;height:calc(100svh - 16px);max-height:none}
.urbanistica-project-sheet>header{gap:14px;min-height:92px;padding:18px 52px 18px 22px}
.urbanistica-project-sheet h2{font-size:clamp(1.35rem,7vw,2rem)}
.urbanistica-project-sheet header p{line-height:1.35}
.urbanistica-project-body{padding:10px 1cm 12px}
.urbanistica-project-body footer{grid-template-columns:74px 1fr 28px;gap:10px}
.urbanistica-project-body footer img{width:68px}
.urbanistica-project-body footer span{font-size:.66rem}
.sector-carousel-card.is-adaptive.is-landscape{width:88vw;height:auto}
.sector-carousel-card.is-adaptive.is-portrait{width:auto;max-width:88vw;height:var(--sector-portrait-frame-height)}
.sector-pending{min-height:calc(100svh - 84px);padding:42px 20px 82px}
.consultation-content{padding:36px 20px 88px}
.consultation-heading{grid-template-columns:1fr;align-items:start;gap:28px;padding-bottom:48px}
.consultation-kicker{margin-bottom:20px;font-size:.7rem;line-height:1.6}
.consultation-intro{padding:0}
.form-section{grid-template-columns:1fr;gap:34px;padding:42px 0}
.form-section-title{font-size:1.8rem}
.form-fields{grid-template-columns:1fr;gap:31px}
.field-wide{grid-column:auto}
.consultation-submit-area{grid-template-columns:1fr;gap:38px}
.submit-column{text-align:left;align-items:stretch;min-width:0}
.submit-column button{width:100%;min-width:0}
.submit-column small{max-width:none}
.technical-service-heading{gap:18px;padding:42px 20px 34px}
.technical-service-heading h2{font-size:clamp(1rem,5vw,2.15rem)}
.technical-service-heading p{margin:0}
.instruments-intro{padding:30px 20px 34px}
.instruments-title-row{gap:20px}
.instruments-title-row h1{letter-spacing:-.025em;max-width:100%;font-size:clamp(.96rem,4.65vw,1.28rem)}
.instruments-title-row>p{font-size:clamp(1rem,5vw,1.28rem)}
.instruments-experience{min-height:520px;padding:0 20px 74px}
.instrument-detail-inner{grid-template-columns:1fr;gap:0}
.instrument-close{top:18px;right:-4px}
.instrument-copy{padding:48px 0 24px}
.instrument-role{margin-bottom:30px}
.instrument-copy h2{font-size:clamp(3rem,14vw,4.6rem)}
.instrument-description{margin-top:23px;font-size:1rem}
.instrument-capabilities{margin-top:25px}
.instrument-hero-image{min-height:360px;padding:8px 0 42px}
.instrument-hero-image img{width:94%;height:340px}
.instrument-hero-image.is-pair{gap:5px;min-height:330px}
.instrument-hero-image.is-pair .instrument-image-item{height:280px}
.instrument-dock{overscroll-behavior-inline:contain;scroll-snap-type:inline mandatory;scrollbar-width:none;grid-template-columns:repeat(6,minmax(clamp(230px,72vw,290px),1fr));gap:18px;margin-inline:-20px;padding:40px 20px 12px;scroll-padding-inline:20px;overflow-x:auto}
.instruments-experience.has-selection .instrument-dock{padding-top:32px}
.instrument-dock::-webkit-scrollbar{display:none}
.instrument-dock>li{scroll-snap-align:start}
.instrument-card{height:282px}
.instrument-card-label{flex-direction:row;align-items:baseline;gap:7px}
.instrument-card-label small{font-size:.58rem}
.instrument-card-label>span{font-size:1rem}
.instrument-instruction{margin-top:54px;line-height:1.6}
}
@media (width<=420px){.hero-header{min-height:0}
.menu-trigger{right:max(10px, env(safe-area-inset-right))}
.location-line{font-size:7px}
.nav-sheet{width:92vw!important;padding:24px!important}
.side-nav-row,.contact-toggle{grid-template-columns:32px 1fr;font-size:clamp(1.55rem,8vw,2rem)}
.contact-details{margin-left:18px}
.association-footer{min-height:68px;font-size:.59rem}
.section-header{padding-right:max(14px, env(safe-area-inset-right));padding-left:max(14px, env(safe-area-inset-left))}
.section-header img{width:min(100px,32vw)}
.section-back-link{letter-spacing:.11em;max-width:48vw;font-size:.56rem}
.sector-story-title-row{grid-template-columns:6px minmax(0,1fr);gap:13px}
.sector-story-title-row>span{width:6px;height:6px}
.sector-story h1{text-wrap:balance;font-size:clamp(2.1rem,11.5vw,3.1rem)}
.sector-story-subtitle,.sector-description{margin-left:19px}
.sector-service-columns{gap:14px}
.urbanistica-gallery-cta{gap:15px;min-height:72px}
.urbanistica-gallery-cta-copy strong{font-size:.76rem}
.urbanistica-gallery-cta-copy small{font-size:.6rem;line-height:1.4}
.urbanistica-project-sheet>header{padding:16px 48px 16px 18px}
.urbanistica-project-sheet>header>span{display:none}
.urbanistica-project-body{padding:10px 18px 12px}
.urbanistica-project-body footer{grid-template-columns:60px 1fr 24px;gap:8px}
.urbanistica-project-body footer img{width:58px}
.instrument-copy h2{font-size:clamp(2.75rem,13vw,3.7rem)}
.instrument-capabilities li{margin-right:10px;padding-right:10px;line-height:1.45}
.instrument-hero-image{min-height:330px}
.instrument-hero-image img{height:310px}
.instrument-card{height:270px}
}
@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-scroll-snap-strictness{syntax:"*";inherits:false;initial-value:proximity}
@property --tw-space-x-reverse{syntax:"*";inherits:false;initial-value:0}
@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-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-duration{syntax:"*";inherits:false}
@property --tw-ease{syntax:"*";inherits:false}
@property --tw-content{syntax:"*";inherits:false;initial-value:""}
@property --tw-scale-x{syntax:"*";inherits:false;initial-value:1}
@property --tw-scale-y{syntax:"*";inherits:false;initial-value:1}
@property --tw-scale-z{syntax:"*";inherits:false;initial-value:1}
@keyframes spin{to{transform:rotate(360deg)}
}
@keyframes pulse{50%{opacity:.5}
}
@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))}
}
@keyframes accordion-down{0%{height:0}
to{height:var(--radix-accordion-content-height,var(--accordion-panel-height,auto))}
}
@keyframes accordion-up{0%{height:var(--radix-accordion-content-height,var(--accordion-panel-height,auto))}
to{height:0}
}
@keyframes caret-blink{0%,70%,to{opacity:1}
20%,50%{opacity:0}
}
@keyframes scroll-fade-reveal-b{0%{--scroll-fade-b:var(--_scroll-fade-size-b,var(--scroll-fade-size,min(12%, calc(var(--spacing) * 10))))}
to{--scroll-fade-b:0px}
}
@keyframes scroll-fade-reveal-s{0%{--scroll-fade-s:0px}
to{--scroll-fade-s:var(--_scroll-fade-size-s,var(--scroll-fade-size,min(12%, calc(var(--spacing) * 10))))}
}
@keyframes scroll-fade-reveal-e{0%{--scroll-fade-e:var(--_scroll-fade-size-e,var(--scroll-fade-size,min(12%, calc(var(--spacing) * 10))))}
to{--scroll-fade-e:0px}
}
@keyframes tw-shimmer{0%{background-position:100% 0}
to{background-position:0 0}
}
/* Nuove costruzioni: i quattro paragrafi della sintesi restano su un'unica riga desktop. */
@media (width>=901px){
.sector-detail-page:has(.urbanistica-feature-card img[src*="/settori/nuove-costruzioni/"]) .sector-story{width:min(1500px,calc(100vw - 48px))}
.sector-detail-page:has(.urbanistica-feature-card img[src*="/settori/nuove-costruzioni/"]) .sector-intro-columns{grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(14px,1.25vw,22px)}
.sector-detail-page:has(.urbanistica-feature-card img[src*="/settori/nuove-costruzioni/"]) .sector-intro-columns p{font-size:clamp(.8rem,1vw,.9rem);line-height:1.42}
}

/* Tutte le gallerie mantengono un ritmo editoriale variato ma senza forti squilibri di scala. */
.urbanistica-gallery-grid img{object-fit:cover}

/* Le sintesi lunghe di Nuove costruzioni e Impianti – Lighting restano su una sola riga desktop. */
@media (width>=901px){
.sector-detail-page:has(.urbanistica-feature-card img[src*="/settori/impianti/"]) .sector-story{width:min(1500px,calc(100vw - 48px))}
.sector-detail-page:has(.urbanistica-feature-card img[src*="/settori/impianti/"]) .sector-intro-columns{grid-template-columns:repeat(5,minmax(0,1fr));gap:clamp(10px,1vw,18px)}
.sector-detail-page:has(.urbanistica-feature-card img[src*="/settori/impianti/"]) .sector-intro-columns p{font-size:clamp(.76rem,.9vw,.82rem);line-height:1.38}
}

/* Versione essenziale dei settori: quattro immagini statiche, senza galleria o sovrapposizioni. */
.urbanistica-feature-card{cursor:default}
.urbanistica-feature-card:hover img{opacity:1;transform:none}
.urbanistica-gallery-cta{display:none}

@media (width>=721px){
.sector-detail-page{height:auto;min-height:100svh;overflow:visible}
.sector-detail-page .sector-gallery{min-height:0;padding-top:clamp(34px,4vw,64px);display:block}
.sector-detail-page .sector-detail-layout.has-urbanistica-showcase{width:100%;min-height:0;align-items:initial;margin:0;display:block}
.sector-detail-page .has-urbanistica-showcase .sector-story{width:min(1500px,calc(100vw - 48px));max-width:none;margin:0 auto clamp(42px,4vw,72px);position:relative;inset:auto;transform:none}
.sector-detail-page .urbanistica-feature-selection{height:auto;position:relative;inset:auto}
.sector-detail-page .urbanistica-feature-row{height:clamp(330px,34vw,640px);grid-template-columns:var(--urbanistica-feature-columns);align-items:stretch;padding-inline:clamp(24px,3vw,58px);display:grid}
.sector-detail-page .urbanistica-feature-card{aspect-ratio:auto;width:100%;height:100%}
.sector-detail-page .urbanistica-feature-card img{object-fit:cover;width:100%;height:100%}
}

@media (width>=721px) and (width<=900px){
.sector-detail-page .has-urbanistica-showcase .sector-story{width:min(980px,calc(100vw - 48px))}
.sector-detail-page .urbanistica-feature-row{height:auto;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.sector-detail-page .urbanistica-feature-card{aspect-ratio:4/5;height:auto}
}
.editorial-title,.entry-link,.legal-footer-heading p,.form-section-title,.sector-story h1,.side-nav-row,.contact-toggle,.realized-works-heading h2,.public-work-category-heading h2,.curriculum-form-heading h3,.urbanistica-gallery-header p,.urbanistica-project-sheet h2,.instrument-copy h2{font-family:"Century Gothic",CenturyGothic,AppleGothic,Arial,sans-serif}

/* Tipografia generale richiesta: Century Gothic, con tre eccezioni editoriali. */
body,body *,button,input,textarea,select{font-family:"Century Gothic",CenturyGothic,AppleGothic,Arial,sans-serif!important}
.sector-marquee,.sector-marquee *{font-family:Helvetica Neue,Helvetica,Arial,sans-serif!important}
.legal-footer-grid,.legal-footer-grid *{font-family:Helvetica Neue,Helvetica,Arial,sans-serif!important}
.association-footer,.association-footer *{font-family:Georgia,Times New Roman,serif!important}
.legal-footer-heading p{font-family:"Century Gothic",CenturyGothic,AppleGothic,Arial,sans-serif!important}

/* Numerazione progressiva del carosello. */
.project-slide-number{z-index:2;color:#fff;letter-spacing:.08em;pointer-events:none;background:#000c;border-top:1px solid #ffffff38;border-left:1px solid #ffffff38;min-width:38px;padding:8px 9px;font-family:"Century Gothic",CenturyGothic,AppleGothic,Arial,sans-serif!important;font-size:11px;font-weight:500;line-height:1;text-align:center;position:absolute;right:0;bottom:0}
/* Le tavole 05 e 80 devono essere sempre interamente visibili nel riquadro. */
.project-slide img[src$="/005.webp"]{object-fit:contain!important;object-position:center!important;background:#000!important}
.project-slide img[src$="/079.webp"]{object-fit:contain!important;object-position:center!important;background:#fff!important}

/* Galleria Lavori pubblici — release v26. */
.public-gallery-entry{border-bottom:1px solid #fff3}
.public-gallery-trigger{color:#f4f4f1;text-align:left;text-decoration:none;background:transparent;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:clamp(14px,1.7vw,26px);width:100%;min-height:clamp(66px,6.5vw,88px);padding:11px 2px;font-size:clamp(1.18rem,1.75vw,2rem);font-weight:700!important;display:grid;transition:color .25s ease,background-color .25s ease}
.public-gallery-trigger:hover{color:#fff;background:#ffffff08}
.public-gallery-trigger:focus-visible{outline-offset:5px;outline:1px solid #fffc}
.public-gallery-trigger-arrow{color:#aaa;font-size:clamp(1rem,1.4vw,1.35rem);font-weight:300;transition:color .25s ease,transform .25s ease}
.public-gallery-trigger:hover .public-gallery-trigger-arrow{color:#fff;transform:translateX(3px)}
.public-gallery-trigger .public-gallery-trigger-arrow:first-child{transform:rotate(-90deg)}
.public-gallery-trigger:hover .public-gallery-trigger-arrow:first-child{transform:rotate(-90deg) translateY(3px)}
.public-gallery-page{min-height:100svh;color:#fff;background:#000;display:block}
.public-gallery-shell{padding:clamp(38px,5vw,78px) clamp(20px,5vw,78px) clamp(72px,8vw,128px)}
.public-gallery-heading{border-bottom:1px solid #ffffff35;margin-bottom:clamp(30px,4vw,58px);padding-bottom:clamp(24px,3vw,44px)}
.public-gallery-kicker{color:#888;letter-spacing:.18em;text-transform:uppercase;margin:0 0 18px;font-size:.72rem;font-weight:500}
.public-gallery-heading h1{margin:0;font-size:clamp(2.45rem,5vw,6.4rem);font-weight:500;line-height:.95}
.public-gallery-heading p:last-child{color:#aaa;max-width:720px;margin:22px 0 0;font-size:clamp(.86rem,1vw,1rem);font-weight:300;line-height:1.65}
.public-gallery-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(18px,2vw,34px);align-items:stretch;display:grid}
.public-gallery-item{aspect-ratio:4/3;min-width:0;color:inherit;cursor:zoom-in;background:#000;border:1px solid #ffffff1f;border-radius:0;align-items:center;justify-content:center;margin:0;padding:clamp(4px,.45vw,8px);display:flex;overflow:hidden;transition:border-color .25s ease,transform .25s ease}
.public-gallery-item:hover{border-color:#ffffff73;transform:translateY(-2px)}
.public-gallery-item:focus-visible{outline-offset:4px;outline:1px solid #fff}
.public-gallery-item img{object-fit:contain;object-position:center;width:100%;height:100%;max-width:100%;max-height:100%;background:#000;display:block}
.public-gallery-lightbox{z-index:10000;width:100vw;max-width:none;height:100svh;max-height:none;color:#fff;background:#000000f7;border:0;margin:0;padding:0}
.public-gallery-lightbox::backdrop{background:#000000ed}
.public-gallery-lightbox[open]{align-items:center;justify-content:center;display:flex}
.public-gallery-lightbox-figure{width:min(88vw,1500px);height:min(84svh,980px);align-items:center;justify-content:center;margin:0;padding:clamp(12px,2vw,30px);display:flex}
.public-gallery-lightbox-figure img{object-fit:contain;width:100%;height:100%;max-width:100%;max-height:100%;background:#000;display:block}
.public-gallery-lightbox-close,.public-gallery-lightbox-prev,.public-gallery-lightbox-next{z-index:2;color:#fff;cursor:pointer;background:#000b;border:1px solid #ffffff4d;border-radius:50%;align-items:center;justify-content:center;width:48px;height:48px;font-size:24px;display:flex;position:fixed}
.public-gallery-lightbox-close{top:max(18px,env(safe-area-inset-top));right:max(18px,env(safe-area-inset-right))}
.public-gallery-lightbox-prev{top:50%;left:max(18px,env(safe-area-inset-left));transform:translateY(-50%)}
.public-gallery-lightbox-next{top:50%;right:max(18px,env(safe-area-inset-right));transform:translateY(-50%)}
.public-gallery-lightbox-counter{color:#bbb;letter-spacing:.12em;font-size:.68rem;position:fixed;bottom:max(18px,env(safe-area-inset-bottom));left:50%;transform:translateX(-50%)}
@media (width<=900px){.public-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.public-gallery-shell{padding-inline:20px}}
@media (width<=720px){.public-gallery-trigger{min-height:64px;padding:10px 0;font-size:1.1rem;line-height:1.2}.sector-detail-page .sector-story h1{max-width:100%;font-size:clamp(1.05rem,5.75vw,1.55rem)!important;line-height:1.08!important;overflow-wrap:anywhere}.public-gallery-heading h1{font-size:clamp(2rem,10vw,3.2rem)}.public-gallery-grid{gap:12px}.public-gallery-item{padding:3px}.public-gallery-lightbox-prev,.public-gallery-lightbox-next{width:42px;height:42px}.public-gallery-lightbox-prev{left:8px}.public-gallery-lightbox-next{right:8px}}
@media (width<=390px){.public-gallery-grid{gap:9px}.public-gallery-shell{padding-inline:14px}.public-gallery-lightbox-figure{width:94vw;height:80svh}}
/* Carosello v11: ogni asset quadrato viene mostrato esattamente come approvato. */
.project-slide img{object-fit:fill!important;object-position:center!important}
/* Le tavole 05 e 80 restano interamente visibili sui rispettivi fondi. */
.project-slide img[src$="/005.webp"]{object-fit:contain!important;object-position:center!important;background:#000!important}
.project-slide img[src$="/079.webp"]{object-fit:contain!important;object-position:center!important;background:#fff!important}

/* Aggiornamento v12: carosello casuale e quattro riquadri identici per ogni settore. */
.gallery-track{animation-duration:381s!important;animation-delay:var(--carousel-random-delay,0s)!important}
.sector-variant-tabs{display:flex;align-items:baseline;gap:clamp(8px,.8vw,14px);margin-left:clamp(10px,1vw,18px);white-space:nowrap}
.sector-variant-tabs button{color:#fff;opacity:.35;cursor:pointer;background:transparent;border:0;padding:5px 1px;font-size:clamp(.72rem,.85vw,.95rem);font-weight:500;letter-spacing:.12em;line-height:1;transition:opacity .25s ease}
.sector-variant-tabs button:hover,.sector-variant-tabs button:focus-visible,.sector-variant-tabs button.is-active{opacity:1}
.sector-variant-tabs button:focus-visible{outline:1px solid #fff;outline-offset:4px}
.sector-story-title-row{align-items:baseline!important}

@media (width>=901px){
.sector-detail-page .urbanistica-feature-row{height:auto!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;align-items:stretch!important}
.sector-detail-page .urbanistica-feature-card{aspect-ratio:4/5!important;width:100%!important;height:auto!important}
.sector-detail-page .urbanistica-feature-card img{object-fit:cover!important;object-position:center!important;width:100%!important;height:100%!important}
}

@media (width<=720px){
.sector-story-title-row{flex-wrap:nowrap}
.sector-variant-tabs{margin-left:7px;gap:7px}
.sector-variant-tabs button{font-size:.68rem}
}

/* v13: eliminata la vecchia slide 63 duplicata; sequenza 01–94. */

/* v14 — settori uniformi in una sola schermata desktop. */
@media (width>=721px){
html:has(.sector-detail-page),body:has(.sector-detail-page){height:100%;overflow:hidden}
.sector-detail-page{height:100svh!important;min-height:0!important;grid-template-rows:auto minmax(0,1fr)!important;display:grid!important;overflow:hidden!important}
.sector-detail-page>.section-header{box-sizing:border-box;height:clamp(102px,17svh,136px);min-height:0;padding:clamp(12px,2svh,20px) clamp(22px,5vw,72px) clamp(10px,1.5svh,16px)}
.sector-detail-page>.section-header img{width:clamp(108px,10vw,140px)}
.sector-detail-page .sector-gallery{box-sizing:border-box;height:100%;min-height:0!important;padding:0!important;display:block!important;overflow:hidden!important}
.sector-detail-page .sector-detail-layout.has-urbanistica-showcase{box-sizing:border-box;width:100%!important;height:100%;min-height:0!important;margin:0!important;grid-template-rows:auto minmax(0,1fr);align-items:stretch!important;display:grid!important}
.sector-detail-page .has-urbanistica-showcase .sector-story{box-sizing:border-box;width:min(1500px,calc(100vw - 40px))!important;max-width:none!important;margin:0 auto!important;padding-top:clamp(4px,1.3svh,12px);position:relative!important;inset:auto!important;transform:none!important}
.sector-detail-page .sector-story-title-row{flex-wrap:nowrap!important;align-items:baseline!important;gap:clamp(7px,.8vw,13px);min-width:0}
.sector-detail-page .sector-story h1{white-space:nowrap;text-wrap:nowrap;max-width:none;font-size:clamp(1.02rem,2.25vw,2rem)!important;line-height:1!important;letter-spacing:-.035em}
.sector-detail-page .sector-service-columns,.sector-detail-page .sector-intro-columns,.sector-detail-page .sector-copy-placeholder{box-sizing:border-box;width:100%!important;margin:clamp(6px,1.35svh,13px) auto 0!important}
.sector-detail-page .sector-service-columns{grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(10px,1.8vw,30px)}
.sector-detail-page .sector-service-list{font-size:clamp(.52rem,.61vw,.7rem);line-height:1.12}
.sector-detail-page .sector-service-list li{grid-template-columns:22px minmax(0,1fr);gap:5px;min-height:clamp(18px,2.7svh,25px);padding:3px 1px}
.sector-detail-page .sector-service-index{font-size:clamp(.48rem,.54vw,.64rem)}
.sector-detail-page .sector-intro-columns{grid-template-columns:none!important;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);gap:clamp(8px,1.1vw,17px)}
.sector-detail-page .sector-intro-columns p{padding:clamp(5px,.8svh,8px) 1px 0;font-size:clamp(.56rem,.67vw,.75rem)!important;line-height:1.28!important}
.sector-detail-page .urbanistica-feature-selection{box-sizing:border-box;height:auto!important;min-height:0;align-items:flex-end;display:flex;position:relative!important;inset:auto!important}
.sector-detail-page .urbanistica-feature-row{box-sizing:border-box;width:100%;height:auto!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;align-items:end!important;gap:clamp(8px,1.05vw,18px)!important;padding:0 clamp(18px,3vw,58px) clamp(10px,1.8svh,19px)!important;display:grid!important}
.sector-detail-page .urbanistica-feature-card{aspect-ratio:4/5!important;width:100%!important;height:auto!important;min-width:0;background:#050505}
.sector-detail-page .urbanistica-feature-card img{object-fit:cover!important;object-position:center!important;width:100%!important;height:100%!important;display:block}
.sector-detail-page .urbanistica-feature-card>span{min-width:28px;padding:6px 7px;font-size:.58rem}
.sector-copy-placeholder{grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(10px,2vw,34px);display:grid}
.sector-copy-placeholder>div{gap:clamp(4px,.65svh,7px);display:grid}
.sector-copy-placeholder span{background:#ffffff2e;width:100%;height:1px;display:block}
.sector-copy-placeholder span:nth-child(2){width:94%}
.sector-copy-placeholder span:nth-child(3){width:84%}
.sector-copy-placeholder span:nth-child(4){width:70%}
.sector-variant-tabs{flex:none;margin-left:clamp(7px,.8vw,13px)!important}
.sector-variant-tabs button{font-size:clamp(.6rem,.72vw,.82rem)!important}
}

@media (width>=721px) and (height<=720px){
.sector-detail-page>.section-header{height:clamp(94px,15svh,108px);padding-top:10px;padding-bottom:9px}
.sector-detail-page>.section-header img{width:clamp(98px,9vw,122px)}
.sector-detail-page .has-urbanistica-showcase .sector-story{padding-top:3px}
.sector-detail-page .sector-story h1{font-size:clamp(.98rem,2.05vw,1.72rem)!important}
.sector-detail-page .sector-service-columns,.sector-detail-page .sector-intro-columns,.sector-detail-page .sector-copy-placeholder{margin-top:5px!important}
.sector-detail-page .sector-intro-columns p{font-size:clamp(.53rem,.62vw,.68rem)!important;line-height:1.22!important;padding-top:4px}
.sector-detail-page .sector-service-list li{min-height:18px;padding-block:2px}
.sector-detail-page .urbanistica-feature-row{padding-bottom:9px!important}
}

/* v22 — controllo manuale rapido sopra il carosello principale. */
.carousel-manual-control{box-sizing:border-box;color:#fff;background:#000;border-top:1px solid #ffffff24;border-bottom:1px solid #ffffff24;grid-template-columns:auto minmax(90px,1fr) 34px auto;align-items:center;gap:clamp(9px,1.15vw,18px);width:100%;min-height:42px;padding:8px clamp(14px,4vw,64px);display:grid}
.carousel-control-label{letter-spacing:.16em;white-space:nowrap;font-size:10px;font-weight:600}
.carousel-control-range{-webkit-appearance:none;appearance:none;cursor:ew-resize;background:transparent;width:100%;height:22px;margin:0;padding:0}
.carousel-control-range::-webkit-slider-runnable-track{background:#ffffff61;border:0;height:2px}
.carousel-control-range::-moz-range-track{background:#ffffff61;border:0;height:2px}
.carousel-control-range::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;background:#fff;border:1px solid #000;border-radius:50%;width:16px;height:16px;margin-top:-7px;box-shadow:0 0 0 2px #ffffff35}
.carousel-control-range::-moz-range-thumb{background:#fff;border:1px solid #000;border-radius:50%;width:16px;height:16px;box-shadow:0 0 0 2px #ffffff35}
.carousel-control-range:focus-visible{outline:1px solid #fff;outline-offset:4px}
.carousel-control-output{font-variant-numeric:tabular-nums;letter-spacing:.08em;text-align:center;min-width:34px;font-size:11px}
.carousel-control-auto{color:#fff;letter-spacing:.12em;cursor:pointer;background:#000;border:1px solid #ffffff66;min-height:25px;padding:4px 8px;font-size:9px;line-height:1}
.carousel-control-auto:hover,.carousel-control-auto:focus-visible{color:#000;background:#fff}
.carousel-control-auto:focus-visible{outline:1px solid #fff;outline-offset:3px}
.carousel-manual-control.is-manual .carousel-control-auto{border-color:#fff}
.gallery.is-manually-positioned .gallery-track{transition:transform .12s linear}

@media (width<=720px){
.carousel-manual-control{grid-template-columns:auto minmax(70px,1fr) 30px auto;gap:8px;min-height:40px;padding:7px 12px}
.carousel-control-label{font-size:9px}
.carousel-control-output{min-width:30px;font-size:10px}
.carousel-control-auto{padding-inline:6px;font-size:8px}
}

/* v22 — titoli dei settori raddoppiati e testi sostituiti da linee editoriali. */
.sector-detail-page .sector-story-subtitle,
.sector-detail-page .sector-description,
.sector-detail-page .sector-service-columns,
.sector-detail-page .sector-intro-columns,
.sector-detail-page .sector-copy-placeholder{display:none!important}
.sector-detail-page .sector-story:after{
content:"";
width:100%;
height:clamp(44px,6svh,68px);
margin-top:clamp(12px,1.6svh,20px);
background:
linear-gradient(90deg,#ffffff52,#ffffff52) 0 0/100% 1px no-repeat,
linear-gradient(90deg,#ffffff52,#ffffff52) 0 33.333%/100% 1px no-repeat,
linear-gradient(90deg,#ffffff52,#ffffff52) 0 66.666%/100% 1px no-repeat,
linear-gradient(90deg,#ffffff52,#ffffff52) 0 100%/100% 1px no-repeat;
display:block
}
.sector-detail-page .sector-story-title-row{justify-content:center!important;align-items:baseline!important;width:100%!important}
.sector-detail-page .sector-variant-tabs{gap:clamp(13px,1.25vw,24px)!important;margin-left:clamp(20px,2vw,38px)!important}
.sector-detail-page .sector-variant-tabs button{font-size:clamp(1.2rem,1.44vw,1.64rem)!important;letter-spacing:.1em}

@media (width>=721px){
.sector-detail-page .sector-story h1{font-size:clamp(2.04rem,4.5vw,4rem)!important;line-height:.94!important;letter-spacing:-.05em}
}

@media (width>=721px) and (height<=720px){
.sector-detail-page .sector-story h1{font-size:clamp(1.96rem,4.1vw,3.44rem)!important}
.sector-detail-page .sector-story:after{height:clamp(34px,5svh,48px);margin-top:8px}
}

@media (width<=720px){
.sector-detail-page .sector-story h1{font-size:clamp(3.8rem,19vw,6rem)!important;line-height:.92!important}
.sector-detail-page .sector-story-title-row{flex-wrap:wrap!important;row-gap:12px}
.sector-detail-page .sector-variant-tabs{margin-left:16px!important}
.sector-detail-page .sector-variant-tabs button{font-size:1.36rem!important}
.sector-detail-page .sector-story:after{height:56px;margin-top:18px}
}

/* v22 — rendering stabile su desktop e mobile. Una sola superficie GPU anima il
   carosello; le 188 tessere non creano piu' altrettanti layer indipendenti. */
.brand-logo,.section-home-link img{
opacity:1!important;
visibility:visible!important;
display:block!important;
height:auto;
}
.project-slide,.project-slide img{
backface-visibility:visible!important;
transform:none!important;
}
.project-slide img{
image-rendering:auto;
contain-intrinsic-size:800px 800px;
}
.gallery-track{
will-change:transform;
transform-style:flat;
}

/* Il titolo dei singoli settori è dimezzato esclusivamente su telefono. */
@media (width<=720px){
.sector-detail-page .sector-story h1{max-width:100%;font-size:clamp(1.05rem,5.75vw,1.55rem)!important;line-height:1.08!important;letter-spacing:-.025em!important;overflow-wrap:anywhere}
}
