@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-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-space-x-reverse:0;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-duration:initial;--tw-ease:initial;--tw-content:"";--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial}}}@layer theme{:root,:host{--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, 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;--spacing:.25rem;--container-xs:20rem;--container-sm:24rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-base:1rem;--text-base--line-height:calc(1.5 / 1);--font-weight-medium:500;--leading-snug:1.375;--radius-sm:.25rem;--radius-md:.375rem;--radius-lg:.5rem;--radius-xl:.75rem;--radius-4xl:2rem;--ease-in-out:cubic-bezier(.4, 0, .2, 1);--blur-xs:4px;--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,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, 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:where(:not(iframe)){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}.\!visible{visibility:visible!important}.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:0}.top-1\/2{top:50%}.top-2{top:calc(var(--spacing) * 2)}.top-3{top:calc(var(--spacing) * 3)}.right-0{right:0}.right-2{right:calc(var(--spacing) * 2)}.right-3{right:calc(var(--spacing) * 3)}.bottom-0{bottom:0}.left-1\/2{left:50%}.isolate{isolation:isolate}.z-10{z-index:10}.z-50{z-index:50}.col-start-2{grid-column-start:2}.row-span-2{grid-row:span 2/span 2}.row-start-1{grid-row-start:1}.-mx-4{margin-inline:calc(var(--spacing) * -4)}.mt-auto{margin-top:auto}.-mb-4{margin-bottom:calc(var(--spacing) * -4)}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline-flex{display:inline-flex}.table{display:table}.field-sizing-content{field-sizing:content}.aspect-square{aspect-ratio:1}.size-2\.5{width:calc(var(--spacing) * 2.5);height:calc(var(--spacing) * 2.5)}.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-full{width:100%;height:100%}.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-\[calc\(100\%-1px\)\]{height:calc(100% - 1px)}.min-h-16{min-height:calc(var(--spacing) * 16)}.w-fit{width:fit-content}.w-full{width:100%}.max-w-\[calc\(100\%-2rem\)\]{max-width:calc(100% - 2rem)}.max-w-xs{max-width:var(--container-xs)}.min-w-0{min-width:0}.flex-1{flex:1}.shrink-0{flex-shrink:0}.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-y-1\/2{--tw-translate-y:calc(calc(1 / 2 * 100%) * -1);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}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.auto-rows-min{grid-auto-rows:min-content}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-center{justify-content:center}.gap-\(--card-spacing\){gap:var(--card-spacing)}.gap-0\.5{gap:calc(var(--spacing) * .5)}.gap-1{gap:var(--spacing)}.gap-1\.5{gap:calc(var(--spacing) * 1.5)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-4{gap:calc(var(--spacing) * 4)}: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)))}.self-start{align-self:flex-start}.justify-self-end{justify-self:flex-end}.overflow-hidden{overflow:hidden}.rounded-4xl{border-radius:var(--radius-4xl)}.rounded-\[2px\]{border-radius:2px}.rounded-\[min\(var\(--radius-md\)\,10px\)\]{border-radius:min(var(--radius-md), 10px)}.rounded-\[min\(var\(--radius-md\)\,12px\)\]{border-radius:min(var(--radius-md), 12px)}.rounded-full{border-radius:2147483647px}.rounded-lg{border-radius:var(--radius-lg)}.rounded-md{border-radius:var(--radius-md)}.rounded-xl{border-radius:var(--radius-xl)}.rounded-t-xl{border-top-left-radius:var(--radius-xl);border-top-right-radius:var(--radius-xl)}.rounded-b-xl{border-bottom-right-radius:var(--radius-xl);border-bottom-left-radius:var(--radius-xl)}.border{border-style:var(--tw-border-style);border-width:1px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-transparent{border-color:#0000}.bg-black\/10{background-color:#0000001a}@supports (color:color-mix(in lab, red, red)){.bg-black\/10{background-color:color-mix(in oklab, var(--color-black) 10%, transparent)}}.bg-transparent{background-color:#0000}.bg-clip-padding{background-clip:padding-box}.object-cover{object-fit:cover}.p-\(--card-spacing\){padding:var(--card-spacing)}.p-4{padding:calc(var(--spacing) * 4)}.p-\[3px\]{padding:3px}.px-\(--card-spacing\){padding-inline:var(--card-spacing)}.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)}.py-\(--card-spacing\){padding-block:var(--card-spacing)}.py-0\.5{padding-block:calc(var(--spacing) * .5)}.py-1{padding-block:var(--spacing)}.py-1\.5{padding-block:calc(var(--spacing) * 1.5)}.py-2{padding-block:calc(var(--spacing) * 2)}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\[0\.8rem\]{font-size:.8rem}.leading-none{--tw-leading:1;line-height:1}.leading-snug{--tw-leading:var(--leading-snug);line-height:var(--leading-snug)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.whitespace-nowrap{white-space:nowrap}.uppercase{text-transform:uppercase}.underline-offset-4{text-underline-offset:4px}.bg-blend-color{background-blend-mode:color}.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)}.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)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,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-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))}.duration-100{--tw-duration:.1s;transition-duration:.1s}.duration-150{--tw-duration:.15s;transition-duration:.15s}.duration-200{--tw-duration:.2s;transition-duration:.2s}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}.outline-none{--tw-outline-style:none;outline-style:none}.select-none{-webkit-user-select:none;user-select:none}.\[--card-spacing\:--spacing\(4\)\]{--card-spacing:calc(var(--spacing) * 4)}.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-data-horizontal\/tabs\:h-8:is(:where(.group\/tabs)[data-horizontal] *){height:calc(var(--spacing) * 8)}.group-data-vertical\/tabs\:h-fit:is(:where(.group\/tabs)[data-vertical] *){height:fit-content}.group-data-vertical\/tabs\:w-full:is(:where(.group\/tabs)[data-vertical] *){width:100%}.group-data-vertical\/tabs\:flex-col:is(:where(.group\/tabs)[data-vertical] *){flex-direction:column}.group-data-vertical\/tabs\:justify-start:is(:where(.group\/tabs)[data-vertical] *){justify-content:flex-start}.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\=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\]\/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\]\/card\:text-sm:is(:where(.group\/card)[data-size=sm] *){font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.group-data-\[variant\=line\]\/tabs-list\:bg-transparent:is(:where(.group\/tabs-list)[data-variant=line] *){background-color:#0000}.file\:inline-flex::file-selector-button{display:inline-flex}.file\:h-6::file-selector-button{height:calc(var(--spacing) * 6)}.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)}.after\:absolute:after{content:var(--tw-content);position:absolute}.after\:inset-0:after{content:var(--tw-content);inset:0}.after\:rounded-full:after{content:var(--tw-content);border-radius:2147483647px}.after\:border:after{content:var(--tw-content);border-style:var(--tw-border-style);border-width:1px}.after\:opacity-0:after{content:var(--tw-content);opacity:0}.after\:mix-blend-darken:after{content:var(--tw-content);mix-blend-mode:darken}.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-horizontal\/tabs\:after\:inset-x-0:is(:where(.group\/tabs)[data-horizontal] *):after{content:var(--tw-content);inset-inline:0}.group-data-horizontal\/tabs\:after\:bottom-\[-5px\]:is(:where(.group\/tabs)[data-horizontal] *):after{content:var(--tw-content);bottom:-5px}.group-data-horizontal\/tabs\:after\:h-0\.5:is(:where(.group\/tabs)[data-horizontal] *):after{content:var(--tw-content);height:calc(var(--spacing) * .5)}.group-data-vertical\/tabs\:after\:inset-y-0:is(:where(.group\/tabs)[data-vertical] *):after{content:var(--tw-content);inset-block:0}.group-data-vertical\/tabs\:after\:-right-1:is(:where(.group\/tabs)[data-vertical] *):after{content:var(--tw-content);right:calc(var(--spacing) * -1)}.group-data-vertical\/tabs\:after\:w-0\.5:is(:where(.group\/tabs)[data-vertical] *):after{content:var(--tw-content);width:calc(var(--spacing) * .5)}@media (hover:hover){.hover\:bg-\[color-mix\(in_oklch\,var\(--secondary\)\,var\(--foreground\)_5\%\)\]:hover{background-color:var(--secondary)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-\[color-mix\(in_oklch\,var\(--secondary\)\,var\(--foreground\)_5\%\)\]:hover{background-color:color-mix(in oklch,var(--secondary),var(--foreground) 5%)}}.hover\:underline:hover{text-decoration-line:underline}}.focus-visible\:ring-3:focus-visible,.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\:outline-1:focus-visible{outline-style:var(--tw-outline-style);outline-width:1px}.active\:not-aria-\[haspopup\]\:translate-y-px:active:not([aria-haspopup]){--tw-translate-y:1px;translate:var(--tw-translate-x) var(--tw-translate-y)}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-50:disabled{opacity:.5}:where([data-slot=button-group]) .in-data-\[slot\=button-group\]\:rounded-lg{border-radius:var(--radius-lg)}.has-data-\[icon\=inline-end\]\:pr-1:has([data-icon=inline-end]){padding-right:var(--spacing)}.has-data-\[icon\=inline-end\]\:pr-1\.5:has([data-icon=inline-end]){padding-right:calc(var(--spacing) * 1.5)}.has-data-\[icon\=inline-end\]\:pr-2:has([data-icon=inline-end]){padding-right:calc(var(--spacing) * 2)}.has-data-\[icon\=inline-start\]\:pl-1:has([data-icon=inline-start]){padding-left:var(--spacing)}.has-data-\[icon\=inline-start\]\:pl-1\.5:has([data-icon=inline-start]){padding-left:calc(var(--spacing) * 1.5)}.has-data-\[icon\=inline-start\]\:pl-2:has([data-icon=inline-start]){padding-left:calc(var(--spacing) * 2)}.has-data-\[slot\=card-action\]\:grid-cols-\[1fr_auto\]:has([data-slot=card-action]){grid-template-columns:1fr auto}.has-data-\[slot\=card-description\]\:grid-rows-\[auto_auto\]:has([data-slot=card-description]){grid-template-rows:auto auto}.has-data-\[slot\=card-footer\]\:pb-0:has([data-slot=card-footer]){padding-bottom:0}.has-data-\[slot\=kbd\]\:pr-1\.5:has([data-slot=kbd]){padding-right:calc(var(--spacing) * 1.5)}.has-\[\>img\:first-child\]\:pt-0:has(>img:first-child){padding-top:0}.aria-disabled\:pointer-events-none[aria-disabled=true]{pointer-events:none}.aria-disabled\:opacity-50[aria-disabled=true]{opacity:.5}.aria-invalid\:ring-3[aria-invalid=true]{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.group-data-\[variant\=default\]\/tabs-list\:data-active\:shadow-sm:is(:where(.group\/tabs-list)[data-variant=default] *)[data-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-active\:bg-transparent:is(:where(.group\/tabs-list)[data-variant=line] *)[data-active]{background-color:#0000}.group-data-\[variant\=line\]\/tabs-list\:data-active\:shadow-none:is(:where(.group\/tabs-list)[data-variant=line] *)[data-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-active\:after\:opacity-100:is(:where(.group\/tabs-list)[data-variant=line] *)[data-active]:after{content:var(--tw-content);opacity:1}.data-ending-style\:opacity-0[data-ending-style]{opacity:0}.data-horizontal\:h-px[data-horizontal]{height:1px}.data-horizontal\:w-full[data-horizontal]{width:100%}.data-horizontal\:flex-col[data-horizontal]{flex-direction:column}.data-starting-style\:opacity-0[data-starting-style]{opacity:0}.data-vertical\:w-px[data-vertical]{width:1px}.data-vertical\:self-stretch[data-vertical]{align-self:stretch}.data-\[side\=bottom\]\:inset-x-0[data-side=bottom]{inset-inline:0}.data-\[side\=bottom\]\:top-1[data-side=bottom]{top:var(--spacing)}.data-\[side\=bottom\]\:bottom-0[data-side=bottom]{bottom:0}.data-\[side\=bottom\]\:h-auto[data-side=bottom]{height:auto}.data-\[side\=bottom\]\:border-t[data-side=bottom]{border-top-style:var(--tw-border-style);border-top-width:1px}.data-\[side\=bottom\]\:data-ending-style\:translate-y-\[2\.5rem\][data-side=bottom][data-ending-style],.data-\[side\=bottom\]\:data-starting-style\:translate-y-\[2\.5rem\][data-side=bottom][data-starting-style]{--tw-translate-y:2.5rem;translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[side\=inline-end\]\:top-1\/2\![data-side=inline-end]{top:50%!important}.data-\[side\=inline-end\]\:-left-1[data-side=inline-end]{left:calc(var(--spacing) * -1)}.data-\[side\=inline-end\]\:-translate-y-1\/2[data-side=inline-end]{--tw-translate-y:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[side\=inline-start\]\:top-1\/2\![data-side=inline-start]{top:50%!important}.data-\[side\=inline-start\]\:-right-1[data-side=inline-start]{right:calc(var(--spacing) * -1)}.data-\[side\=inline-start\]\:-translate-y-1\/2[data-side=inline-start]{--tw-translate-y:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[side\=left\]\:inset-y-0[data-side=left]{inset-block:0}.data-\[side\=left\]\:top-1\/2\![data-side=left]{top:50%!important}.data-\[side\=left\]\:-right-1[data-side=left]{right:calc(var(--spacing) * -1)}.data-\[side\=left\]\:left-0[data-side=left]{left:0}.data-\[side\=left\]\:h-full[data-side=left]{height:100%}.data-\[side\=left\]\:w-3\/4[data-side=left]{width:75%}.data-\[side\=left\]\:-translate-y-1\/2[data-side=left]{--tw-translate-y:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[side\=left\]\:border-r[data-side=left]{border-right-style:var(--tw-border-style);border-right-width:1px}.data-\[side\=left\]\:data-ending-style\:translate-x-\[-2\.5rem\][data-side=left][data-ending-style],.data-\[side\=left\]\:data-starting-style\:translate-x-\[-2\.5rem\][data-side=left][data-starting-style]{--tw-translate-x:-2.5rem;translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[side\=right\]\:inset-y-0[data-side=right]{inset-block:0}.data-\[side\=right\]\:top-1\/2\![data-side=right]{top:50%!important}.data-\[side\=right\]\:right-0[data-side=right]{right:0}.data-\[side\=right\]\:-left-1[data-side=right]{left:calc(var(--spacing) * -1)}.data-\[side\=right\]\:h-full[data-side=right]{height:100%}.data-\[side\=right\]\:w-3\/4[data-side=right]{width:75%}.data-\[side\=right\]\:-translate-y-1\/2[data-side=right]{--tw-translate-y:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[side\=right\]\:border-l[data-side=right]{border-left-style:var(--tw-border-style);border-left-width:1px}.data-\[side\=right\]\:data-ending-style\:translate-x-\[2\.5rem\][data-side=right][data-ending-style],.data-\[side\=right\]\:data-starting-style\:translate-x-\[2\.5rem\][data-side=right][data-starting-style]{--tw-translate-x:2.5rem;translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[side\=top\]\:inset-x-0[data-side=top]{inset-inline:0}.data-\[side\=top\]\:top-0[data-side=top]{top:0}.data-\[side\=top\]\:-bottom-2\.5[data-side=top]{bottom:calc(var(--spacing) * -2.5)}.data-\[side\=top\]\:h-auto[data-side=top]{height:auto}.data-\[side\=top\]\:border-b[data-side=top]{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.data-\[side\=top\]\:data-ending-style\:translate-y-\[-2\.5rem\][data-side=top][data-ending-style],.data-\[side\=top\]\:data-starting-style\:translate-y-\[-2\.5rem\][data-side=top][data-starting-style]{--tw-translate-y:-2.5rem;translate:var(--tw-translate-x) var(--tw-translate-y)}.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\]\:\[--card-spacing\:--spacing\(3\)\][data-size=sm]{--card-spacing:calc(var(--spacing) * 3)}.data-\[size\=sm\]\:has-data-\[slot\=card-footer\]\:pb-0[data-size=sm]:has([data-slot=card-footer]){padding-bottom:0}: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\=kbd\]\:relative *)[data-slot=kbd]{position:relative}:is(.\*\*\:data-\[slot\=kbd\]\:isolate *)[data-slot=kbd]{isolation:isolate}:is(.\*\*\:data-\[slot\=kbd\]\:z-50 *)[data-slot=kbd]{z-index:50}:is(.\*\*\:data-\[slot\=kbd\]\:rounded-sm *)[data-slot=kbd]{border-radius:var(--radius-sm)}.data-\[variant\=line\]\:rounded-none[data-variant=line]{border-radius:0}@supports ((-webkit-backdrop-filter:var(--tw)) or (backdrop-filter:var(--tw))){.supports-backdrop-filter\:backdrop-blur-xs{--tw-backdrop-blur:blur(var(--blur-xs));-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}}@media (min-width:40rem){.sm\:max-w-sm{max-width:var(--container-sm)}.sm\:flex-row{flex-direction:row}.sm\:justify-end{justify-content:flex-end}.data-\[side\=left\]\:sm\:max-w-sm[data-side=left],.data-\[side\=right\]\:sm\:max-w-sm[data-side=right]{max-width:var(--container-sm)}}@media (min-width:48rem){.md\:text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}}@media (prefers-color-scheme:dark){.dark\:after\:mix-blend-lighten:after{content:var(--tw-content);mix-blend-mode:lighten}.dark\:group-data-\[variant\=line\]\/tabs-list\:data-active\:border-transparent:is(:where(.group\/tabs-list)[data-variant=line] *)[data-active]{border-color:#0000}.dark\:group-data-\[variant\=line\]\/tabs-list\:data-active\:bg-transparent:is(:where(.group\/tabs-list)[data-variant=line] *)[data-active]{background-color:#0000}}.\[\&_svg\]\:pointer-events-none svg{pointer-events:none}.\[\&_svg\]\:shrink-0 svg{flex-shrink:0}.\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-3 svg:not([class*=size-]){width:calc(var(--spacing) * 3);height:calc(var(--spacing) * 3)}.\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-3\.5 svg:not([class*=size-]){width:calc(var(--spacing) * 3.5);height:calc(var(--spacing) * 3.5)}.\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-4 svg:not([class*=size-]){width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.\[\.border-b\]\:pb-\(--card-spacing\).border-b{padding-bottom:var(--card-spacing)}:is(.\*\:\[a\]\:underline>*):is(a){text-decoration-line:underline}:is(.\*\:\[a\]\:underline-offset-3>*):is(a){text-underline-offset:3px}:is(.\*\:\[img\:first-child\]\:rounded-t-xl>*):is(img:first-child){border-top-left-radius:var(--radius-xl);border-top-right-radius:var(--radius-xl)}:is(.\*\:\[img\:last-child\]\:rounded-b-xl>*):is(img:last-child){border-bottom-right-radius:var(--radius-xl);border-bottom-left-radius:var(--radius-xl)}.\[\&\>svg\]\:pointer-events-none>svg{pointer-events:none}.\[\&\>svg\]\:size-3\!>svg{width:calc(var(--spacing) * 3)!important;height:calc(var(--spacing) * 3)!important}.\[\&\>svg\]\:size-4>svg{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.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}}:root{--ink:#111410;--panel:#191c18;--cream:#f1f0e9;--muted:#a4a9a1;--line:#3b403b;--accent:#b7d2d3;--font-sans:var(--font-geist)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--ink);color:var(--cream);font-family:Arial,Helvetica,sans-serif;font-family:var(--font-geist),Arial,sans-serif;-webkit-font-smoothing:antialiased;margin:0}a{color:inherit;text-decoration:none}button{font:inherit}button,a{-webkit-tap-highlight-color:transparent}:focus-visible{outline:2px solid var(--accent);outline-offset:4px}::selection{background:var(--accent);color:var(--ink)}.skip-link{z-index:100;background:var(--cream);color:var(--ink);padding:12px 18px;position:absolute;top:-100px;left:16px}.skip-link:focus{top:12px}.site-shell{width:min(100% - 80px,1760px);margin:auto}.site-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;height:82px;display:flex}.wordmark{letter-spacing:-.09em;align-items:baseline;font-size:25px;font-weight:800;line-height:1;display:flex}.wordmark-dot{color:var(--accent)}.wordmark-name{border-left:1px solid var(--line);letter-spacing:0;margin-left:23px;padding-left:22px;font-size:13px;font-weight:500}.main-nav{align-items:center;gap:clamp(22px,3.2vw,55px);font-size:13px;display:flex}.main-nav a:not(.nav-contact),.text-link,.featured-link,.site-footer a{transition:color .18s}.main-nav a:not(.nav-contact):hover,.text-link:hover,.featured-link:hover,.site-footer a:hover{color:var(--accent)}.nav-contact{border:1px solid var(--line);align-items:center;gap:24px;padding:12px 15px 12px 18px;display:flex}.nav-contact:hover{background:var(--cream);color:var(--ink)}.mobile-menu-trigger{display:none}.mobile-menu-dialog{background:var(--ink);width:min(100%,390px);height:100dvh;max-height:100dvh;color:var(--cream);border:0;margin:0 0 0 auto;padding:0;overflow-y:auto;box-shadow:-30px 0 80px #0006}.mobile-menu-dialog::backdrop{background:#000a}.mobile-menu-dialog[open]{animation:.22s ease-out mobile-menu-enter}@keyframes mobile-menu-enter{0%{transform:translate(100%)}to{transform:translate(0)}}.mobile-menu-panel{flex-direction:column;min-height:100%;padding:27px 25px 30px;display:flex}.mobile-menu-top{justify-content:space-between;align-items:center;gap:15px;display:flex}.mobile-menu-top .wordmark{font-size:24px}.mobile-menu-top .wordmark-name{font-size:12px}.mobile-menu-close{border:1px solid var(--line);width:44px;height:44px;color:var(--cream);cursor:pointer;background:0 0;place-items:center;display:grid}.mobile-menu-links{flex-direction:column;margin-top:70px;display:flex}.mobile-menu-links a{border-top:1px solid var(--line);letter-spacing:-.055em;justify-content:space-between;align-items:center;gap:12px;min-height:77px;padding:16px 0;font-size:clamp(32px,8vw,43px);line-height:1.1;display:flex}.mobile-menu-links a:last-child{border-bottom:1px solid var(--line)}.mobile-menu-links a:hover,.mobile-menu-bottom a:hover{color:var(--accent)}.mobile-menu-bottom{color:var(--muted);flex-direction:column;gap:12px;margin-top:auto;padding-top:42px;font-size:12px;line-height:1.4;display:flex}.mobile-menu-bottom a{color:var(--cream);overflow-wrap:anywhere;align-items:center;gap:6px;display:inline-flex}.home-page{flex-direction:column;min-height:calc(100svh - 140px);display:flex}.home-main{border-bottom:1px solid var(--line);flex:1;grid-template-columns:minmax(0,1.06fr) minmax(0,.94fr);min-height:0;display:grid}.home-main-empty{grid-template-columns:minmax(0,1fr)}.home-main-empty .hero-copy{max-width:1000px;padding-right:0}.hero-copy{flex-direction:column;min-width:0;padding:clamp(26px,4vh,58px) clamp(30px,4vw,70px) 30px 0;display:flex}.eyebrow,.featured-heading,.featured-meta,.visual-label,.strip-heading,.page-kicker,.project-card-meta,.case-kicker{font-family:var(--font-geist-mono),monospace;text-transform:uppercase;letter-spacing:.075em;font-size:10px;font-weight:500}.eyebrow{color:var(--muted);align-items:center;gap:11px;margin:0 0 auto;display:flex}.signal{background:var(--accent);border-radius:50%;width:6px;height:6px;box-shadow:0 0 0 4px #b7d2d318}.hero-copy h1{letter-spacing:-.083em;white-space:nowrap;margin:30px 0 0;font-size:clamp(56px,5.55vw,106px);font-weight:570;line-height:.985}.hero-copy h1 span:not(.hero-period){color:var(--muted)}.hero-copy h1 .hero-period{color:var(--accent)}.hero-intro{grid-template-columns:minmax(0,1fr);gap:25px;margin-top:clamp(30px,5vh,70px);display:grid}.hero-intro p{color:#d0d3cb;letter-spacing:-.015em;max-width:515px;margin:0;font-size:clamp(15px,1.15vw,19px);line-height:1.55}.hero-actions{flex-wrap:wrap;align-items:center;gap:19px 28px;display:flex}.button-primary{background:var(--accent);min-height:47px;color:var(--ink);justify-content:space-between;align-items:center;gap:30px;padding:0 17px;font-size:13px;font-weight:620;display:inline-flex}.button-primary:hover{background:#d1e3e2}.text-link,.featured-link{border-bottom:1px solid var(--muted);align-items:center;gap:10px;padding:9px 0;font-size:13px;display:inline-flex}.hero-note{max-width:340px;color:var(--muted);align-items:flex-start;gap:10px;margin-top:auto;padding-top:24px;font-size:12px;line-height:1.45;display:flex}.note-mark{color:var(--accent);font-size:20px;line-height:.8}.featured{border-left:1px solid var(--line);flex-direction:column;min-width:0;padding:clamp(24px,3.2vh,42px) 0 27px clamp(26px,3vw,50px);display:flex}.featured-heading{color:var(--muted);justify-content:space-between;padding-bottom:18px;display:flex}.device-stage{color:#183239;background:#a9c7ca;flex:1;justify-content:center;align-items:center;min-height:220px;display:flex;position:relative;overflow:hidden}.stage-grid{opacity:.19;background-image:linear-gradient(90deg,currentColor 1px,#0000 1px),linear-gradient(currentColor 1px,#0000 1px);background-size:13.3% 20%;position:absolute;inset:0}.stage-cross{z-index:1;font-family:var(--font-geist-mono),monospace;opacity:.65;font-size:14px;position:absolute}.stage-cross-one{top:10%;left:7%}.stage-cross-two{bottom:12%;right:8%}.stage-logo{z-index:3;border-radius:7px;place-items:center;width:49px;height:49px;display:grid;position:absolute;top:19px;left:19px;overflow:hidden}.stage-logo img{object-fit:contain;width:100%;height:100%}.device-stage-web .stage-logo,.device-stage-mixed .stage-logo{left:auto;right:19px}.case-visual .stage-logo{left:19px;right:auto}.device-set{width:350px;height:94%;min-height:216px;max-height:430px;position:relative;transform:translateY(15%)}.device{background:#222522;border:5px solid #232621;border-radius:29px;width:184px;height:390px;max-height:100%;padding:5px;position:absolute;box-shadow:0 28px 50px #101d2045}.device-back{transform-origin:bottom;top:8%;left:16px;transform:rotate(-12deg)scale(.84)}.device-front{top:0;right:30px;transform:rotate(8deg)}.device-screen{background:#eff0e7;border-radius:20px;flex-direction:column;height:100%;padding:18px 13px 12px;display:flex;position:relative;overflow:hidden}.device-camera{z-index:1;background:#202420;border-radius:10px;width:45px;height:9px;position:absolute;top:6px;left:50%;transform:translate(-50%)}.screen-topline{background:#9ca7a5;border-radius:10px;width:36%;height:7px;margin:14px 0 18px}.screen-feature{color:#58726f;min-height:120px;font:600 17px/.97 var(--font-geist-mono),monospace;letter-spacing:-.07em;text-align:center;background:#cbdad7;border:1px dashed #728c8b;flex:1;justify-content:center;align-items:center;display:flex}.screen-brand-mark{aspect-ratio:1;opacity:.7;border:12px solid #8cadac;border-radius:50%;width:44%}.screen-block{background:#ccd6d1;border-radius:3px;height:36%}.screen-lines{gap:7px;margin-top:16px;display:grid}.screen-lines i{background:#bdc9c5;border-radius:5px;height:5px}.screen-lines i:nth-child(2){width:77%}.screen-lines i:nth-child(3){width:52%}.screen-circle{background:#b6c8c0;border-radius:50%;width:42px;height:42px;margin-top:20px}.screen-bottom{border-top:1px solid #c2cac6;height:22px;margin-top:auto}.device-screen.has-screenshot{padding:0}.device-full-image{object-fit:cover;object-position:top center;width:100%;height:100%;position:absolute;inset:0}.screen-logo{object-fit:contain;max-width:74%;max-height:52%}.visual-label{z-index:4;justify-content:space-between;gap:12px;font-size:9px;display:flex;position:absolute;bottom:15px;left:17px;right:17px}.visual-label span{background:var(--ink);color:var(--cream);padding:5px 6px}.featured-lower{grid-template-columns:minmax(0,1fr) minmax(160px,.8fr);gap:26px;padding-top:18px;display:grid}.featured-selected{min-width:0}.featured-meta{color:var(--accent);white-space:nowrap;gap:12px;font-size:9px;display:flex}.featured-meta span+span:before{content:"/";color:var(--muted);margin-right:12px}.featured-selected h2{letter-spacing:-.055em;margin:12px 0 8px;font-size:clamp(24px,2.1vw,35px);font-weight:560;line-height:1.05}.featured-selected p{max-width:330px;min-height:48px;color:var(--muted);margin:0;font-size:12px;line-height:1.45}.featured-link{margin-top:10px;font-size:12px}.project-switcher{border-top:1px solid var(--line)}.project-switcher button{color:var(--muted);border:0;border-bottom:1px solid var(--line);text-align:left;cursor:pointer;background:0 0;grid-template-columns:25px 1fr 12px;align-items:center;gap:8px;width:100%;padding:10px 1px;font-size:11px;display:grid}.project-switcher button span:first-child{font-family:var(--font-geist-mono),monospace;font-size:9px}.project-switcher button.active,.project-switcher button:hover{color:var(--cream)}.project-switcher button.active .switcher-indicator{color:var(--accent)}.project-switcher-pages{color:var(--muted);font:10px var(--font-geist-mono),monospace;justify-content:space-between;align-items:center;padding-top:7px;display:flex}.project-switcher-pages button{border:1px solid var(--line);place-items:center;width:34px;height:32px;padding:0;font-size:16px;display:grid}.project-switcher-pages button:disabled{opacity:.35;cursor:not-allowed}.service-strip{grid-template-columns:145px 1fr;gap:20px;min-height:116px;padding:22px 0;display:grid}.strip-heading{color:var(--accent);justify-content:space-between;align-items:flex-start;padding-right:25px;display:flex}.service-list{grid-template-columns:repeat(4,1fr);gap:0;display:grid}.service-item{border-left:1px solid var(--line);flex-direction:column;gap:7px;padding:0 18px;display:flex}.service-item strong{letter-spacing:-.02em;font-size:13px;font-weight:550}.service-item span{max-width:205px;color:var(--muted);font-size:11px;line-height:1.4}.site-footer{border-top:1px solid var(--line);min-height:58px;color:var(--muted);grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;column-gap:24px;font-size:11px;display:grid}.site-footer .social-links{flex-wrap:nowrap;justify-content:center;justify-self:center;gap:0}.site-footer .social-links a{color:var(--muted);white-space:nowrap;border-bottom:0;align-items:center;gap:4px;padding:0;display:inline-flex}.site-footer .social-links a+a{border-left:1px solid var(--line);margin-left:16px;padding-left:16px}.site-footer .footer-email{color:var(--cream);white-space:nowrap;justify-self:end;align-items:center;gap:6px;display:inline-flex}.social-links{flex-wrap:wrap;align-items:center;gap:18px;display:flex}.social-links a{color:var(--cream);border-bottom:1px solid var(--line);align-items:center;gap:4px;padding:7px 0;font-size:11px;display:inline-flex}.social-links a:hover{color:var(--accent)}.case-links{flex-wrap:wrap;gap:22px;margin:-30px 0 60px;display:flex}.case-links a{border-bottom:1px solid var(--line);align-items:center;gap:7px;padding:8px 0;display:inline-flex}.case-gallery{margin:20px 0 90px}.case-section-heading{border-top:1px solid var(--line);color:var(--accent);font:10px var(--font-geist-mono),monospace;text-transform:uppercase;letter-spacing:.08em;justify-content:space-between;padding:22px 0 32px;display:flex}.case-gallery-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,210px),1fr));gap:30px;display:grid}.case-gallery figure{margin:0}.gallery-phone{background:#e8ebe5;border:7px solid #2d322d;border-radius:28px;max-width:350px;margin:auto;padding:10px;box-shadow:0 20px 50px #0003}.gallery-phone img{border-radius:13px;width:100%;height:auto;display:block}.case-gallery figcaption{max-width:320px;color:var(--muted);margin:14px auto 0;font-size:12px;line-height:1.4}.case-tech{border-top:1px solid var(--line);grid-template-columns:210px 1fr;gap:30px;padding:22px 0 65px;display:grid}.case-tech span{color:var(--accent);font:10px var(--font-geist-mono),monospace;text-transform:uppercase}.case-tech p{color:#c7cbc3;margin:0;font-size:17px}.next-project{border-top:1px solid var(--line);grid-template-columns:1fr auto auto;align-items:center;gap:20px;padding:30px 0;display:grid}.next-project span{color:var(--muted);font:10px var(--font-geist-mono),monospace;text-transform:uppercase}.next-project strong{letter-spacing:-.04em;font-size:25px;font-weight:520}.next-project:hover{color:var(--accent)}.gallery-phone-framed{aspect-ratio:49/100;width:100%;box-shadow:none;filter:drop-shadow(0 20px 28px #0006);background:0 0;border:0;border-radius:0;padding:0;position:relative}.gallery-phone-screen{background:#f2f2ef;border-radius:11%/5.3%;position:absolute;inset:2.5% 5.1%;overflow:hidden}.gallery-phone-framed .gallery-phone-screen img{object-fit:cover;object-position:center top;border-radius:0;width:100%;height:100%}.gallery-phone-framed .gallery-phone-frame{object-fit:fill;pointer-events:none;border-radius:0;width:100%;height:100%;position:absolute;inset:0}.work-empty{border:1px dashed var(--line);color:var(--muted);padding:40px;font-size:14px}.work-empty h2{color:var(--cream);letter-spacing:-.05em;margin:0 0 10px;font-size:clamp(26px,3vw,42px);font-weight:550}.work-empty p{max-width:500px;line-height:1.5}.work-empty .text-link{color:var(--cream);margin-top:14px}.gallery-android{border-radius:21px}.gallery-tablet{border-radius:19px;max-width:470px}.gallery-web,.gallery-desktop{border-width:5px;border-radius:10px;max-width:620px;padding:8px}.gallery-landscape{max-width:600px}.gallery-landscape img{object-fit:contain;max-height:480px}.admin-challenge{border:1px solid var(--line);margin:16px 0;padding:18px}.admin-challenge>.admin-danger,.admin-challenge>form:last-child{margin-top:14px}.admin-case-preview>.admin-text-link{margin:0 0 45px;display:inline-block}.admin-case-preview>h1{letter-spacing:-.075em;margin:0;font-size:clamp(50px,7vw,110px);font-weight:550;line-height:.95}.admin-case-preview>.device-stage{height:clamp(420px,53vw,650px);margin-top:45px}.admin-preview-story{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-bottom:60px;display:grid}.admin-preview-story section{border-top:1px solid var(--line);padding-top:20px}.admin-preview-story h2{font:10px var(--font-geist-mono),monospace;color:var(--accent);text-transform:uppercase}.admin-preview-story p{white-space:pre-wrap;color:#c7cbc3;line-height:1.55}.contact-grid{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);align-items:start;gap:clamp(50px,7vw,135px);display:grid}.contact-grid .social-links{margin-top:30px}.contact-form,.admin-form{gap:19px;display:grid}.contact-form h2{letter-spacing:-.06em;margin:0;font-size:clamp(30px,3vw,48px);font-weight:550;line-height:1}.contact-form-note{color:var(--muted);margin:-3px 0 10px;font-size:15px;line-height:1.5}.contact-form label,.admin-form label{text-transform:uppercase;letter-spacing:.07em;font-size:11px;font-family:var(--font-geist-mono),monospace;color:var(--muted);gap:8px;display:grid}.contact-form input,.contact-form textarea,.admin-form input,.admin-form textarea,.admin-form select{width:100%;color:var(--cream);border:1px solid var(--line);font:14px var(--font-geist),sans-serif;letter-spacing:0;text-transform:none;background:#1c201c;border-radius:0;outline:none;padding:13px 14px}.contact-form input:focus,.contact-form textarea:focus,.admin-form input:focus,.admin-form textarea:focus,.admin-form select:focus{border-color:var(--accent)}.contact-form textarea,.admin-form textarea{resize:vertical}.contact-form button{cursor:pointer;border:0;justify-self:start}.honeypot{width:1px!important;height:1px!important;position:absolute!important;left:-9999px!important}.form-success,.form-error{margin:8px 0;padding:12px 15px;font-size:13px}.form-success{color:#bde3c3;background:#243127;border:1px solid #668d70}.form-error{color:#ffd3ce;background:#31201e;border:1px solid #9c5e58}.site-shell:has(.admin-shell){width:100%;max-width:none}:is(.site-shell:has(.admin-shell)>.site-header,.site-shell:has(.admin-shell)>.site-footer){display:none}.admin-shell{background:#111410;grid-template-columns:235px minmax(0,1fr);min-height:100svh;display:grid}.admin-sidebar{border-right:1px solid var(--line);flex-direction:column;height:100svh;padding:32px 22px;display:flex;position:sticky;top:0}.admin-brand{letter-spacing:-.09em;white-space:nowrap;font-size:27px;font-weight:800}.admin-brand span{color:var(--accent)}.admin-brand small{font:9px var(--font-geist-mono),monospace;letter-spacing:.05em;color:var(--muted);margin-left:11px}.admin-sidebar nav{gap:2px;margin-top:78px;display:grid}.admin-sidebar nav a,.admin-sidebar-bottom a,.admin-sidebar-bottom button{color:#c4c9c0;padding:13px 10px;font-size:13px}.admin-sidebar nav a:hover,.admin-sidebar-bottom a:hover,.admin-sidebar-bottom button:hover{color:var(--accent);background:#1c211c}.admin-sidebar-bottom{gap:2px;margin-top:auto;display:grid}.admin-sidebar-bottom button{text-align:left;cursor:pointer;background:0 0;border:0;width:100%}.admin-content{min-width:0}.admin-main{max-width:1400px;margin:auto;padding:clamp(30px,4vw,68px)}.admin-page-head,.admin-list-head{border-bottom:1px solid var(--line);margin-bottom:32px;padding-bottom:42px}.admin-page-head h1,.admin-list-head h1,.admin-editor-heading h1{letter-spacing:-.075em;margin:0 0 20px;font-size:clamp(48px,6vw,86px);font-weight:570;line-height:.95}.admin-page-head p:last-child,.admin-list-head p:last-child,.admin-editor-heading p:last-child{color:var(--muted);max-width:580px;font-size:16px;line-height:1.5}.admin-stats{border:1px solid var(--line);grid-template-columns:repeat(4,1fr);display:grid}.admin-stats a{flex-direction:column;justify-content:space-between;min-height:145px;padding:24px;display:flex}.admin-stats a+a{border-left:1px solid var(--line)}.admin-stats a:hover{background:#1d231d}.admin-stats strong{letter-spacing:-.08em;font-size:49px;font-weight:500}.admin-stats span{font:10px var(--font-geist-mono),monospace;text-transform:uppercase;color:var(--muted)}.admin-actions{flex-wrap:wrap;align-items:center;gap:26px;margin-top:32px;display:flex}.admin-text-link{color:var(--accent);cursor:pointer;background:0 0;border:0;padding:5px 0;font-size:13px}.admin-list-head{justify-content:space-between;align-items:end;gap:30px;display:flex}.admin-list-head .button-primary{white-space:nowrap}.admin-list{display:grid}.admin-list>a{border-bottom:1px solid var(--line);grid-template-columns:1fr auto 20px;align-items:center;gap:25px;padding:24px 0;display:grid}.admin-list>a:hover{color:var(--accent)}.admin-list small{font:10px var(--font-geist-mono),monospace;text-transform:uppercase;color:var(--muted)}.admin-list h2{letter-spacing:-.04em;margin:9px 0 4px;font-size:26px;font-weight:550}.admin-list p{color:var(--muted);margin:0;font-size:13px}.admin-status{font:9px var(--font-geist-mono),monospace;text-transform:uppercase;letter-spacing:.08em;border:1px solid var(--line);color:var(--muted);padding:7px 10px}.admin-status.published{color:#bde3c3;border-color:#789d81}.admin-empty{text-align:center;color:var(--muted);border:1px dashed var(--line);padding:75px 20px;font-size:14px}.admin-editor{grid-template-columns:minmax(0,1fr) minmax(340px,.7fr);gap:40px;max-width:1700px;margin:auto;padding:42px clamp(24px,3vw,55px);display:grid}.admin-editor-fields{min-width:0}.admin-editor-heading{border-bottom:1px solid var(--line);margin-bottom:30px;padding-bottom:26px}.admin-editor-heading .admin-text-link{margin-bottom:38px;display:block}.admin-form .button-primary{cursor:pointer;border:0;justify-self:start}.admin-field-row{grid-template-columns:1fr 1fr;gap:15px;display:grid}.admin-form input[type=color]{cursor:pointer;height:49px;padding:5px}.admin-checkbox{flex-direction:row;align-items:center;gap:10px!important;display:flex!important}.admin-checkbox input{width:auto;accent-color:var(--accent)}.admin-divider{font:10px var(--font-geist-mono),monospace;color:var(--accent);text-transform:uppercase;letter-spacing:.09em;align-items:center;gap:20px;margin:34px 0 22px;display:flex}.admin-divider:after{content:"";background:var(--line);flex:1;height:1px}.admin-help{color:var(--muted);font-size:13px;line-height:1.5}.admin-preview-pane{align-self:start;min-width:0;position:sticky;top:25px}.admin-preview-pane .device-stage{flex:none;height:500px}.admin-preview-pane p:last-child{color:var(--muted);font-size:12px;line-height:1.5}.admin-upload{border-bottom:1px solid var(--line);grid-template-columns:130px 1fr auto;align-items:center;gap:12px;padding:14px 0;display:grid}.admin-upload>div{gap:4px;display:grid}.admin-upload strong{font-size:13px;font-weight:550}.admin-upload span{color:var(--muted);font-size:11px}.admin-upload form{align-items:center;gap:8px;display:flex}.admin-upload input{max-width:210px;font-size:11px}.admin-upload button,.admin-message-head button{border:1px solid var(--line);color:var(--cream);cursor:pointer;background:0 0;padding:8px 12px;font-size:11px}.admin-danger{cursor:pointer;background:0 0;padding:9px 12px;color:#efaba4!important;border-color:#865651!important}.admin-categories{grid-template-columns:repeat(2,1fr);gap:24px;display:grid}.admin-category{border:1px solid var(--line);padding:25px}.admin-settings{max-width:930px}.admin-messages{gap:16px;display:grid}.admin-messages article{border:1px solid var(--line);padding:24px}.admin-messages article.unread{border-color:#91afb0}.admin-message-head{justify-content:space-between;gap:20px;display:flex}.admin-message-head span{font:10px var(--font-geist-mono),monospace;color:var(--muted)}.admin-message-head h2{margin:8px 0 3px;font-size:24px;font-weight:550}.admin-message-head a{color:var(--accent);font-size:13px}.admin-messages article>p{white-space:pre-wrap;color:#d1d4cb;margin:25px 0 0;line-height:1.6}.admin-login-shell{grid-template-columns:1fr;place-items:center;display:grid}.admin-login{width:min(100% - 36px,480px);padding:50px 0}.admin-login h1{letter-spacing:-.075em;margin:0 0 24px;font-size:clamp(54px,7vw,85px);font-weight:550;line-height:.94}.admin-login>p:not(.page-kicker){color:var(--muted);line-height:1.5}.admin-login .admin-form{margin-top:36px}.admin-gallery-list{gap:15px;margin-top:22px;display:grid}.admin-gallery-item{border:1px solid var(--line);grid-template-columns:90px 1fr auto;align-items:start;gap:16px;padding:12px;display:grid}.admin-gallery-item>img{object-fit:contain;background:#d9dfd9;width:90px;max-height:150px}.admin-gallery-item .admin-form{grid-template-columns:1fr 75px auto;align-items:end}.admin-gallery-item .admin-text-link{white-space:nowrap}@media (max-width:1100px){.admin-editor{grid-template-columns:1fr}.admin-preview-pane{grid-row:1;position:static}.admin-preview-pane .device-stage{max-height:380px}.admin-categories{grid-template-columns:1fr}}@media (max-width:800px){.contact-grid{grid-template-columns:1fr}.admin-shell{grid-template-columns:minmax(0,1fr)}.admin-sidebar{border-right:0;border-bottom:1px solid var(--line);height:auto;padding:18px;position:static}.admin-sidebar nav{flex-wrap:wrap;gap:10px;margin-top:18px;display:flex}.admin-sidebar nav a{white-space:nowrap}.admin-sidebar-bottom{display:none}.admin-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-stats a{min-width:0;padding:18px}.admin-stats a:nth-child(3){border-left:0;border-top:1px solid var(--line)}.admin-stats a:nth-child(4){border-top:1px solid var(--line)}}@media (max-width:620px){.admin-main{padding:28px 18px}.admin-list-head{flex-direction:column;align-items:flex-start}.admin-field-row,.admin-upload{grid-template-columns:1fr}.admin-editor{padding:25px 18px}.admin-preview-pane .device-stage{height:330px}}@media (max-width:800px){.admin-gallery-item{grid-template-columns:70px 1fr}.admin-gallery-item>img{width:70px}.admin-gallery-item .admin-form{grid-template-columns:1fr}.case-tech{grid-template-columns:1fr;gap:10px}}@media (max-width:620px){.admin-preview-story{grid-template-columns:1fr}}.admin-project-form{gap:0}.admin-visual-section,.admin-core-section,.admin-publishing{border-bottom:1px solid var(--line);margin-bottom:29px;padding-bottom:28px}.admin-section-head{margin-bottom:20px}.admin-section-head>span{color:var(--accent);font:10px var(--font-geist-mono),monospace;text-transform:uppercase;letter-spacing:.08em}.admin-section-head h2{letter-spacing:-.055em;margin:9px 0 7px;font-size:clamp(27px,3vw,38px);font-weight:540;line-height:1.05}.admin-section-head p{max-width:520px;color:var(--muted);margin:0;font-size:13px;line-height:1.5}.admin-visual-files{gap:8px;display:grid}.admin-visual-file{background:#1b201b;border:1px dashed #596259;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;min-height:69px;padding:12px 15px;display:grid}.admin-visual-file:hover,.admin-visual-file:focus-within{border-color:var(--accent)}.admin-visual-file>div{gap:5px;display:grid}.admin-visual-file strong{font-size:13px;font-weight:560}.admin-visual-file span{color:var(--muted);font-size:11px}.admin-visual-file button,.admin-remove-visuals button{cursor:pointer}.admin-visual-file button{color:var(--cream);border:1px solid var(--line);background:0 0;padding:10px 12px;font-size:11px}.admin-visual-file button:hover{border-color:var(--accent)}.admin-file-input{opacity:0;pointer-events:none;border:0!important;width:1px!important;height:1px!important;padding:0!important;position:absolute!important}.admin-color-row{align-items:center;gap:12px;margin-top:20px;font-size:12px;display:flex}.admin-color-row label{color:var(--cream)}.admin-color-row input{cursor:pointer;width:55px!important;height:41px!important;padding:3px!important}.admin-color-row span{color:var(--muted);font:11px var(--font-geist-mono),monospace}.admin-visual-section>.admin-help{margin:13px 0 0;font-size:11px}.admin-core-section{gap:17px;display:grid}.admin-core-section .admin-section-head{margin-bottom:0}.admin-platform-field{min-width:0;color:var(--muted);font:11px var(--font-geist-mono),monospace;text-transform:uppercase;letter-spacing:.07em;align-content:start;gap:8px;display:grid}.admin-platform-picker{position:relative}.admin-platform-picker summary{border:1px solid var(--line);min-height:49px;color:var(--cream);font:14px var(--font-geist),sans-serif;text-transform:none;letter-spacing:0;cursor:pointer;white-space:nowrap;text-overflow:ellipsis;background:#1c201c;padding:15px 34px 15px 14px;display:block;overflow:hidden}.admin-platform-picker summary:after{content:"⌄";color:var(--accent);position:absolute;top:12px;right:14px}.admin-platform-picker[open] summary{border-color:var(--accent)}.admin-platform-picker>div{z-index:12;border:1px solid var(--accent);background:#1c201c;padding:7px;position:absolute;top:100%;left:0;right:0;box-shadow:0 15px 30px #0007}.admin-platform-picker label{color:var(--cream);font:13px var(--font-geist),sans-serif;text-transform:none;letter-spacing:0;cursor:pointer;flex-direction:row;align-items:center;gap:10px;padding:8px;display:flex}.admin-platform-picker label:hover{background:#2a322b}.admin-platform-picker input{width:auto;accent-color:var(--accent)}.admin-advanced{border-bottom:1px solid var(--line);margin-bottom:0}.admin-advanced>summary{cursor:pointer;letter-spacing:-.025em;justify-content:space-between;align-items:center;gap:12px;padding:20px 0;font-size:18px;list-style:none;display:flex}.admin-advanced>summary::-webkit-details-marker{display:none}.admin-advanced>summary:before{content:"+";color:var(--accent);font-size:22px;line-height:1}.admin-advanced[open]>summary:before{content:"−"}.admin-advanced>summary span{color:var(--muted);font:10px var(--font-geist-mono),monospace;text-transform:uppercase;letter-spacing:.04em;margin-left:auto}.admin-advanced-body{gap:17px;padding:8px 0 25px;display:grid}.admin-publishing{gap:16px;margin:0;padding-top:34px;display:grid}.admin-publishing .admin-section-head{margin:0}.admin-save-row{flex-wrap:wrap;align-items:center;gap:18px;padding-top:24px;display:flex}.admin-save-row button:disabled{opacity:.65;cursor:wait}.admin-upload-progress{color:var(--accent);align-items:center;gap:9px;font-size:12px;display:flex}.admin-upload-progress i{border:2px solid #66898a;border-top-color:var(--cream);border-radius:50%;width:12px;height:12px;animation:.8s linear infinite admin-spin}@keyframes admin-spin{to{transform:rotate(360deg)}}.admin-secondary{margin-top:30px}.admin-remove-visuals{gap:8px;display:grid}.admin-remove-visuals form{justify-content:space-between;align-items:center;gap:15px;font-size:12px;display:flex}.device-stage-editable .device{z-index:2}.device-stage-editable .device-edit-target{z-index:4;color:#1c3738;cursor:pointer;width:100%;font:700 12px/1.2 var(--font-geist),sans-serif;text-align:center;background:#8caaa421;border:2px dashed #5c8283;place-items:center;padding:12px;display:grid;position:absolute;inset:0}.device-stage-editable .device-edit-target.has-image{background:0 0;border:0}.device-stage-editable .device-edit-target.has-image span{opacity:0}.device-stage-editable .device-edit-target.has-image:hover,.device-stage-editable .device-edit-target.has-image:focus-visible{background:#e9f3eb9c}.device-stage-editable .device-edit-target.has-image:hover span,.device-stage-editable .device-edit-target.has-image:focus-visible span{opacity:1}.laptop-set{z-index:2;filter:drop-shadow(0 24px 28px #101d2040);width:min(78%,620px);position:relative}.laptop-full-image{object-fit:cover;object-position:top center;width:100%;height:100%}.laptop-skeleton{grid-template-rows:8% 26% 1fr;gap:8%;height:100%;padding:7%;display:grid}.laptop-skeleton>span{background:#bdc9c5;border-radius:4px;width:38%}.laptop-skeleton>div{gap:3%;display:flex}.laptop-skeleton i{background:#d0dcd5;border-radius:6px;flex:1}.laptop-skeleton>section{background:#d9e4df;border-radius:6px}.device-stage-mixed .laptop-set{width:min(62%,500px);transform:translate(-18%)}.device-stage-mixed .device-set{z-index:3;transform-origin:100% 100%;height:77%;position:absolute;bottom:11%;right:2%;transform:scale(.68)}.device-stage-editable .macbook-display .device-edit-target{z-index:4;color:#1c3738;cursor:pointer;background:#8caaa421;border:2px dashed #5c8283;place-items:center;width:100%;display:grid;position:absolute;inset:0}.device-stage-editable .macbook-display .device-edit-target.has-image{background:0 0;border:0}.device-stage-editable .macbook-display .device-edit-target.has-image span{opacity:0}.device-stage-editable .macbook-display .device-edit-target.has-image:hover,.device-stage-editable .macbook-display .device-edit-target.has-image:focus-visible{background:#e9f3eb9c}.device-stage-editable .macbook-display .device-edit-target.has-image:hover span,.device-stage-editable .macbook-display .device-edit-target.has-image:focus-visible span{opacity:1}@media (max-width:620px){.device-stage-mixed .laptop-set{width:70%;transform:translate(-12%,-24%)}.device-stage-mixed .device-set{bottom:14%;right:3%;transform:scale(.52)}}.admin-ai-page{max-width:980px}.admin-ai-page>.admin-text-link{margin-bottom:34px;display:inline-block}.admin-ai-page .admin-page-head{margin-bottom:35px}.admin-ai-settings{margin-top:40px}.admin-ai-settings h2{letter-spacing:-.04em;margin:0 0 10px;font-size:30px}.admin-ai-card,.admin-ai-category{border:1px solid var(--line);background:#171b17;margin-bottom:18px;padding:28px}.admin-ai-card h2{letter-spacing:-.05em;margin:12px 0 18px;font-size:clamp(27px,4vw,46px);line-height:1.08}.admin-ai-card p{max-width:680px;color:var(--muted);line-height:1.6}.admin-ai-card .button-primary{cursor:pointer;border:0;margin-top:14px}.admin-ai-progress{color:var(--accent);font:11px var(--font-geist-mono),monospace;text-transform:uppercase;justify-content:space-between;gap:15px;display:flex}.admin-ai-answer{gap:10px;margin-top:26px;font-size:13px;display:grid}.admin-ai-answer textarea{width:100%;color:var(--cream);border:1px solid var(--line);font:inherit;resize:vertical;background:#111511;padding:14px}.admin-ai-actions{flex-wrap:wrap;align-items:center;gap:18px;margin:25px 0 14px;display:flex}.admin-ai-actions .button-primary{cursor:pointer;border:0}.admin-ai-actions .admin-text-link{color:var(--accent);cursor:pointer;background:0 0;border:0}.admin-ai-category{gap:12px;display:grid}.admin-ai-category h3{letter-spacing:-.04em;margin:0;font-size:24px}.admin-ai-category label:not(.admin-checkbox){gap:8px;max-width:440px;font-size:13px;display:grid}.admin-ai-category select{color:var(--cream);border:1px solid var(--line);background:#111511;padding:12px}.admin-ai-changes{gap:8px;display:grid}.admin-ai-change{border:1px solid var(--line);cursor:pointer;align-items:flex-start;gap:14px;padding:16px;display:flex}.admin-ai-change>input{accent-color:var(--accent);margin-top:4px}.admin-ai-change span{gap:5px;min-width:0;display:grid}.admin-ai-change strong{font-size:13px}.admin-ai-change small,.admin-ai-change em{white-space:pre-wrap;font-size:12px;font-style:normal;line-height:1.5}.admin-ai-change small{color:var(--muted)}.admin-ai-change em{color:var(--cream)}.stage-logo-drop{z-index:5;color:#254649;cursor:pointer;background:#e8f2e9bb;border:1px dashed #537577;min-width:54px;height:54px;padding:5px;font-size:10px;font-weight:650;position:absolute;top:19px;left:19px}.device-stage-web .stage-logo-drop,.device-stage-mixed .stage-logo-drop{left:auto;right:19px}.stage-logo-drop:hover,.stage-logo-drop:focus-visible{background:#f1f7f0}.stage-logo-drop.has-image{color:#0000;background:0 0;border-color:#0000}.stage-logo-drop.has-image:hover,.stage-logo-drop.has-image:focus-visible{color:#254649;background:#f1f7f0e6;border-color:#537577}@media (max-width:620px){.admin-visual-file{grid-template-columns:1fr}.admin-visual-file button{justify-self:start}.admin-advanced>summary{font-size:16px}.admin-advanced>summary span{font-size:9px}}@media (prefers-reduced-motion:reduce){.admin-upload-progress i{animation:none}}.interior{min-height:calc(100svh - 140px);padding:66px 0 100px}.page-kicker,.case-kicker{color:var(--accent);margin:0 0 20px}.page-title{letter-spacing:-.08em;margin:0;font-size:clamp(56px,8vw,124px);font-weight:570;line-height:.95}.page-lead{color:#c5cac2;letter-spacing:-.03em;max-width:690px;margin:24px 0 0;font-size:clamp(18px,1.8vw,25px);line-height:1.42}.page-head{border-bottom:1px solid var(--line);padding-bottom:54px}.preview-notice{color:var(--muted);align-items:flex-start;gap:12px;padding:16px 0;font-size:12px;line-height:1.5;display:flex}.preview-notice strong{color:var(--accent);font-weight:600}.category-filter{flex-wrap:wrap;gap:8px;margin:36px 0 24px;display:flex}.category-filter a{border:1px solid var(--line);color:var(--muted);padding:10px 15px;font-size:12px}.category-filter a.active,.category-filter a:hover{background:var(--cream);color:var(--ink);border-color:var(--cream)}.work-count{color:var(--muted);font:10px var(--font-geist-mono),monospace;text-transform:uppercase;letter-spacing:.07em;margin-bottom:14px}.project-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;display:grid}.project-card{border-top:1px solid var(--line);min-width:0;padding-top:17px}.project-card-top{color:var(--muted);font:10px var(--font-geist-mono),monospace;text-transform:uppercase;letter-spacing:.07em;justify-content:space-between;padding-bottom:15px;display:flex}.project-card .device-stage{flex:auto;height:340px}.project-card .device-set{transform:translateY(18%)scale(.88)}.project-card .device-stage-web .laptop-set{width:min(72%,520px)}.project-card .device-stage-mixed .device-set{transform:scale(.68)}.project-card-info{justify-content:space-between;align-items:flex-start;gap:15px;padding:18px 0 30px;display:flex}.project-card h2{letter-spacing:-.055em;margin:0 0 7px;font-size:clamp(25px,3vw,42px);font-weight:550}.project-card p{color:var(--muted);max-width:420px;margin:0;font-size:13px;line-height:1.5}.project-card .card-arrow{border:1px solid var(--line);flex:none;place-items:center;width:37px;height:37px;display:grid}.project-card-info:hover .card-arrow,.project-card-info:focus-visible .card-arrow{background:var(--accent);color:var(--ink);border-color:var(--accent)}.work-cta{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:25px;margin-top:70px;padding-top:25px;display:flex}.work-cta p{letter-spacing:-.055em;margin:0;font-size:clamp(25px,3vw,42px)}.case-back{color:var(--muted);align-items:center;gap:8px;margin-bottom:60px;font-size:12px;display:inline-flex}.case-back:hover{color:var(--cream)}.case-head{grid-template-columns:1.3fr .7fr;align-items:end;gap:60px;margin-bottom:40px;display:grid}.case-head h1{letter-spacing:-.085em;margin:0;font-size:clamp(60px,8.5vw,138px);font-weight:570;line-height:.91}.case-head p{color:#c5cac2;margin:0 0 5px;font-size:clamp(18px,1.5vw,23px);line-height:1.4}.case-visual .device-stage{height:clamp(430px,57vw,720px)}.case-visual .device-set{max-height:560px;transform:translateY(12%)scale(1.28)}.case-visual .device-stage-web .laptop-set{width:min(78%,1100px)}.case-visual .device-stage-mixed .laptop-set{width:min(60%,1000px);transform:translate(-25%,-4%)}.case-visual .device-stage-mixed .device-set{height:78%;max-height:550px;bottom:10%;right:5%;transform:scale(1.04)}.case-data{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:repeat(3,1fr);margin:40px 0 80px;display:grid}.case-data div{padding:23px 0}.case-data span{color:var(--muted);font:10px var(--font-geist-mono),monospace;text-transform:uppercase;margin-bottom:9px;display:block}.case-data strong{font-size:14px;font-weight:500}.case-quick,.case-demo{margin:0 0 85px}.case-quick .case-section-heading,.case-demo .case-section-heading{margin-bottom:20px}.case-quick-grid{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.case-quick-grid>div{border-right:1px solid var(--line);min-width:0;padding:26px 28px 34px 0}.case-quick-grid>div+div{padding-left:28px}.case-quick-grid>div:last-child{border-right:0}.case-quick-grid h2{color:var(--accent);font:11px var(--font-geist-mono),monospace;text-transform:uppercase;margin:0 0 24px}.case-quick-grid p{color:var(--cream);letter-spacing:-.03em;overflow-wrap:anywhere;margin:0;font-size:clamp(17px,1.75vw,24px);line-height:1.42}.case-demo-frame{border:1px solid var(--line);background:#1b211d;place-items:center;min-height:280px;padding:clamp(14px,3vw,40px);display:grid}.case-demo-frame video{object-fit:contain;background:#0a0d0b;width:100%;max-width:100%;max-height:680px;display:block}.case-demo-frame.is-landscape video{aspect-ratio:16/9}.case-demo-frame.is-portrait video{aspect-ratio:9/16;width:auto;height:min(68vw,680px);max-height:680px}.case-demo-caption{color:var(--muted);margin:12px 0 0;font-size:13px;line-height:1.5}.admin-demo-existing{gap:16px;margin-bottom:28px;display:grid}.admin-demo-existing video{object-fit:contain;background:#0a0d0b;width:100%;max-height:440px}.admin-demo-existing form:last-child{justify-self:start}@media (max-width:720px){.case-quick-grid{grid-template-columns:1fr}.case-quick-grid>div,.case-quick-grid>div+div{border-right:0;border-bottom:1px solid var(--line);padding:20px 0}.case-quick-grid>div:last-child{border-bottom:0}.case-quick-grid h2{margin-bottom:10px}.case-demo-frame.is-portrait video{height:min(110vw,560px)}}.case-body{border-top:1px solid var(--line);padding:28px 0 90px}.case-body>h2{max-width:600px;color:var(--cream);letter-spacing:-.065em;margin:0 0 36px;font-size:clamp(34px,3.5vw,52px);font-weight:550;line-height:1.05}.case-story-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.case-story{border:1px solid var(--line);background:var(--panel);min-width:0;padding:30px}.case-story:first-child{border-top:2px solid var(--accent);grid-column:1/-1;grid-template-columns:minmax(180px,.38fr) minmax(0,1fr);gap:32px;display:grid}.case-story:last-child:nth-child(2n){grid-column:1/-1}.case-story h3{color:var(--cream);letter-spacing:-.045em;margin:0 0 22px;font-size:clamp(23px,2vw,30px);font-weight:540;line-height:1.12}.case-story:first-child h3{margin:0}.case-story-copy{max-width:68ch}.case-story-copy p{color:#c7cbc3;letter-spacing:-.012em;overflow-wrap:anywhere;margin:0;font-size:clamp(16px,1.1vw,18px);line-height:1.6}.case-story:first-child .case-story-copy p{color:var(--cream);font-size:clamp(18px,1.5vw,22px);line-height:1.5}.case-story-copy p+p{margin-top:16px}@media (max-width:760px){.case-story-list{grid-template-columns:1fr}.case-story:first-child,.case-story:last-child:nth-child(2n){grid-column:auto}.case-story:first-child{display:block}.case-story:first-child h3{margin-bottom:20px}}@media (max-width:620px){.case-body{padding:24px 0 70px}.case-body>h2{margin-bottom:28px}.case-story{padding:24px}.case-story h3{font-size:24px}.case-story-copy p,.case-story:first-child .case-story-copy p{font-size:16px;line-height:1.58}}.about-grid{grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr);align-items:center;gap:clamp(52px,7vw,136px);padding:70px 0 95px;display:grid}.about-portrait{aspect-ratio:4/5;border:1px solid var(--line);background:#363b38;width:100%;max-width:630px;margin:0;position:relative;overflow:hidden}.about-portrait img{object-fit:cover;object-position:center 35%;filter:grayscale()contrast(1.04)}.about-portrait:before{content:"";z-index:1;background:var(--accent);mix-blend-mode:color;opacity:.3;pointer-events:none;position:absolute;inset:0}.about-portrait:after{content:"";z-index:2;pointer-events:none;background:linear-gradient(#0000,#1114109c);position:absolute;inset:65% 0 0}.about-portrait figcaption{z-index:3;color:#f8f8f4;font:10px var(--font-geist-mono),monospace;letter-spacing:.08em;text-transform:uppercase;border-top:1px solid #ffffff8a;justify-content:space-between;gap:15px;padding-top:14px;display:flex;position:absolute;bottom:20px;left:23px;right:23px}.about-label{color:var(--accent);font:11px var(--font-geist-mono),monospace;letter-spacing:.08em;text-transform:uppercase;margin:0}.about-intro{border-top:1px solid var(--line);align-self:center;padding-top:25px}.about-intro h2{letter-spacing:-.07em;max-width:760px;margin:23px 0 40px;font-size:clamp(42px,4.8vw,78px);font-weight:560;line-height:1.06}.about-intro p:not(.about-label):not(.about-intro-lead){color:#bfc8bf;max-width:680px;font-size:17px;line-height:1.68}.about-intro p.about-intro-lead{color:var(--cream);letter-spacing:-.025em;margin-bottom:28px;font-size:clamp(20px,1.8vw,27px);line-height:1.48}.about-section{border-top:1px solid var(--line);grid-template-columns:minmax(160px,24%) minmax(0,1fr);gap:40px;padding:44px 0 66px;display:grid}.about-section .about-label{padding-top:11px}.about-section h2{letter-spacing:-.065em;margin:0 0 24px;font-size:clamp(38px,4.7vw,70px);font-weight:550;line-height:1.07}.about-section p:not(.about-label){color:#c5cac2;max-width:890px;margin:0;font-size:clamp(18px,1.55vw,23px);line-height:1.65}.about-section p+p{margin-top:22px!important}.about-principle{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:minmax(160px,24%) minmax(0,1fr);gap:40px;padding:50px 0 54px;display:grid}.about-principle .about-label{padding-top:10px}.about-principle>div>p{letter-spacing:-.065em;max-width:1080px;margin:0;font-size:clamp(34px,4.2vw,64px);line-height:1.14}.about-connect{border-top:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px 35px;margin-top:47px;padding-top:20px;display:flex}.about-connect .text-link{margin-left:auto}.contact-page{display:block}.contact-intro{flex-direction:column;align-items:flex-start;min-width:0;min-height:min(680px,72svh);display:flex}.contact-page .page-title{max-width:100%;font-size:clamp(64px,6vw,112px)}.contact-page .page-lead{max-width:570px;margin-top:34px}.contact-direct{margin-top:auto;padding-top:56px}.contact-direct>p{color:var(--muted);font:11px var(--font-geist-mono),monospace;letter-spacing:.06em;text-transform:uppercase;margin:0 0 12px}.contact-email{letter-spacing:-.055em;border-bottom:1px solid var(--cream);overflow-wrap:anywhere;align-items:center;gap:16px;padding-bottom:12px;font-size:clamp(24px,3vw,52px);font-weight:500;display:inline-flex}.contact-email svg{flex:none}.contact-email:hover{color:var(--accent);border-color:var(--accent)}.contact-form{border-top:1px solid var(--line);align-content:start;padding-top:25px}.contact-interview{display:block}.contact-interview-head{justify-content:space-between;align-items:end;gap:20px;display:flex}.contact-interview-head .page-kicker{margin:0 0 16px}.contact-interview-head>span{color:var(--accent);font:11px var(--font-geist-mono),monospace;letter-spacing:.08em;flex:none;padding-bottom:6px}.contact-interview .contact-form-note{margin:14px 0 23px}.contact-progress{grid-template-columns:repeat(4,1fr);gap:6px;display:grid}.contact-progress span{background:var(--line);height:2px}.contact-progress .is-active{background:var(--accent)}.contact-step{border:0;min-height:360px;margin:0;padding:46px 0 24px}.contact-step[hidden]{display:none}.contact-form .contact-question{color:var(--cream);font-family:var(--font-geist),sans-serif;letter-spacing:-.055em;text-transform:none;margin:0 0 28px;font-size:clamp(26px,2.8vw,42px);font-weight:500;line-height:1.15;display:block}.contact-form .contact-step>input,.contact-form .contact-step>textarea{width:100%;color:var(--cream);background:0 0;border:0;border-bottom:1px solid #68736c;padding:15px 0;font-size:clamp(17px,1.6vw,23px);line-height:1.4}.contact-form .contact-step>input:focus,.contact-form .contact-step>textarea:focus{border-color:var(--accent)}.contact-form .contact-step>input::placeholder,.contact-form .contact-step>textarea::placeholder{color:#858f88}.contact-step-hint{color:var(--muted);margin:15px 0 0;font-size:13px;line-height:1.45}.contact-options{gap:8px;display:grid}.contact-form .contact-option{color:var(--cream);font-family:var(--font-geist),sans-serif;letter-spacing:0;text-transform:none;cursor:pointer;font-size:15px;display:block;position:relative}.contact-form .contact-option input{opacity:0;border:0;width:1px;height:1px;padding:0;position:absolute}.contact-option span{border:1px solid var(--line);background:#191d19;align-items:center;gap:17px;min-height:50px;padding:10px 15px;transition:border-color .16s,background .16s;display:flex}.contact-option small{color:var(--accent);font:10px var(--font-geist-mono),monospace}.contact-option svg{opacity:0;margin-left:auto}.contact-option:hover span,.contact-option input:checked+span{border-color:var(--accent);background:#25302b}.contact-option input:checked+span svg{opacity:1}.contact-option input:focus-visible+span{outline:2px solid var(--accent);outline-offset:3px}.contact-interview-actions{border-top:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:14px 22px;padding-top:22px;display:flex}.contact-interview-actions .button-primary{justify-content:center;align-items:center;gap:16px;min-height:48px;display:inline-flex}.contact-form .contact-back{min-height:44px;color:var(--muted);background:0 0;align-items:center;gap:8px;padding:8px 0;display:inline-flex}.contact-form .contact-back:hover{color:var(--cream)}.contact-interview-actions>span{color:var(--muted);font:10px var(--font-geist-mono),monospace;line-height:1.5}.contact-interview button:disabled{opacity:.55;cursor:wait}.contact-complete{min-height:430px}.contact-complete h2{margin:26px 0 18px}.contact-complete>p:not(.page-kicker){color:var(--muted);font-size:18px;line-height:1.5}.contact-complete .text-link{align-items:center;gap:8px;margin-top:38px;display:inline-flex}@media (min-width:1100px) and (min-height:850px){.home-main{min-height:600px}}@media (max-height:760px) and (min-width:1100px){.home-page{min-height:720px}.home-main{min-height:565px}.hero-copy h1{font-size:clamp(54px,5vw,82px)}.featured .device-stage{min-height:230px}}@media (max-width:1200px){.site-shell{width:calc(100% - 52px)}.hero-copy h1{font-size:clamp(52px,5.3vw,75px)}.featured-lower{grid-template-columns:1fr;gap:15px}.project-switcher{grid-template-columns:repeat(3,1fr);display:grid}.project-switcher button{border-right:1px solid var(--line);grid-template-columns:20px 1fr}.switcher-indicator{display:none}.featured-selected p{min-height:0}.service-strip{grid-template-columns:110px 1fr}.service-item{padding:0 10px}}@media (max-width:900px){.site-header{gap:15px;height:auto;min-height:75px}.main-nav{gap:18px}.home-page{min-height:0}.home-main{display:block}.hero-copy{min-height:560px;padding-right:0}.hero-copy h1{font-size:clamp(58px,9vw,90px)}.featured{border-left:0;border-top:1px solid var(--line);padding:25px 0 35px}.featured .device-stage{flex:none;height:440px}.featured-lower{grid-template-columns:1fr 1fr}.project-switcher,.service-strip{display:block}.strip-heading{margin-bottom:24px}.service-list{grid-template-columns:repeat(2,1fr);row-gap:25px}}@media (max-width:620px){.site-shell{width:calc(100% - 32px)}.site-header{flex-direction:column;align-items:flex-start;padding:18px 0}.wordmark-name{font-size:12px}.main-nav{justify-content:space-between;gap:6px;width:100%;font-size:11px}.nav-contact{gap:3px;padding:8px}.hero-copy{min-height:0;padding:35px 0 50px}.eyebrow{font-size:9px}.hero-copy h1{white-space:normal;margin-top:72px;font-size:clamp(50px,11.5vw,75px)}.hero-intro{margin-top:35px}.hero-intro p{font-size:16px}.hero-actions{gap:14px}.text-link{font-size:12px}.hero-note{margin-top:40px}.featured .device-stage{height:370px}.device-set{transform:translateY(20%)scale(.83)}.featured-lower{grid-template-columns:1fr}.project-switcher{grid-template-columns:1fr;display:grid}.project-switcher button{border-right:0}.featured-selected h2{font-size:31px}.service-strip{padding:27px 0 32px}.service-list{grid-template-columns:1fr 1fr;gap:24px 6px}.service-item{padding:0 8px}.service-item strong{font-size:12px}.service-item span{font-size:10px}.site-footer{font-size:9px}.interior{padding:45px 0 80px}.page-title{font-size:clamp(52px,13vw,76px)}.page-lead{font-size:18px}.page-head{padding-bottom:30px}.project-grid{grid-template-columns:1fr;gap:15px}.project-card .device-stage{height:310px}.work-cta{flex-direction:column;align-items:flex-start}.case-back{margin-bottom:45px}.case-head{grid-template-columns:1fr;gap:22px}.case-head h1{font-size:clamp(58px,13vw,85px)}.case-visual .device-stage{height:430px}.case-visual .device-set{transform:translateY(19%)scale(.92)}.case-data{grid-template-columns:1fr 1fr;margin-bottom:55px}.case-body{display:block}.case-body h2{margin-bottom:20px}.about-grid{grid-template-columns:1fr;gap:42px}.about-portrait{min-height:370px}.about-copy h2{font-size:42px}.contact-email{gap:8px;margin-top:50px;font-size:clamp(22px,7vw,38px)}}@media (max-width:1000px){.contact-grid{grid-template-columns:1fr;gap:52px}.contact-intro{max-width:760px;min-height:0}.contact-direct{margin-top:0;padding-top:44px}.contact-form{max-width:680px}}@media (max-width:620px){.contact-page .page-title{font-size:clamp(48px,10vw,72px)}.contact-page .page-lead{margin-top:26px}.contact-email{gap:10px;margin-top:0;font-size:clamp(22px,6vw,34px)}.contact-email svg{width:22px;height:22px}.contact-grid{gap:42px}.contact-step{min-height:300px;padding-top:34px}.contact-form .contact-question{margin-bottom:22px;font-size:clamp(28px,7vw,38px)}.contact-interview-actions>span{width:100%}.contact-option span{min-height:48px}}@media (max-width:720px){.site-header{flex-direction:row;align-items:center;height:72px;min-height:72px;padding:0}.main-nav{display:none}.mobile-menu-trigger{border:1px solid var(--line);min-height:44px;color:var(--cream);cursor:pointer;background:0 0;justify-content:center;align-items:center;gap:11px;padding:9px 12px;font-size:12px;display:inline-flex}.mobile-menu-trigger:hover{border-color:var(--accent);color:var(--accent)}.hero-copy .eyebrow{margin-bottom:0}.hero-copy h1{margin-top:42px}}@media (max-width:760px){.site-footer{grid-template-columns:minmax(0,1fr) auto;gap:13px 12px;min-height:0;padding:16px 0 18px;font-size:10px}.site-footer .social-links{flex-wrap:wrap;grid-area:2/1/auto/-1;justify-content:flex-start;justify-self:start;gap:8px 18px}.site-footer .social-links a+a{border-left:0;margin-left:0;padding-left:0}.site-footer .footer-email{grid-area:1/2}}@media (max-width:420px){.site-footer{font-size:9px}.site-footer .footer-email{gap:3px}.site-header .wordmark-name{margin-left:13px;padding-left:12px}}@media (max-width:900px){.about-grid{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:36px}.about-intro h2{font-size:clamp(38px,5vw,58px)}.about-intro p:not(.about-label):not(.about-intro-lead){font-size:16px}}@media (max-width:760px){.about-grid{grid-template-columns:1fr;gap:42px;padding:46px 0 60px}.about-portrait{max-width:600px;min-height:0}.about-intro{max-width:650px}.about-intro h2{margin-bottom:28px;font-size:clamp(42px,8vw,60px)}.about-section,.about-principle{grid-template-columns:1fr;gap:20px;padding:32px 0 46px}.about-section .about-label,.about-principle .about-label{padding-top:0}.about-section h2{font-size:clamp(38px,8vw,55px)}.about-principle>div>p{font-size:clamp(34px,7vw,48px)}.about-connect{flex-direction:column;align-items:flex-start;gap:22px;margin-top:35px}.about-connect .text-link{margin-left:0}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}.blog-index,.blog-article{padding-bottom:90px}.blog-index-head{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1.25fr) minmax(260px,.65fr);align-items:end;gap:8vw;padding:75px 0 64px;display:grid}.blog-index-head h1,.blog-article-head h1{letter-spacing:-.085em;margin:0;font-size:clamp(64px,9vw,154px);font-weight:570;line-height:.9}.blog-index-head>p{color:#c9cdc4;letter-spacing:-.025em;max-width:450px;margin:0 0 8px;font-size:clamp(18px,1.8vw,26px);line-height:1.4}.blog-index-layout{grid-template-columns:minmax(0,1fr) minmax(240px,320px);gap:clamp(40px,5vw,100px);padding-top:30px;display:grid}.blog-index-main{min-width:0}.blog-filter-bar{font:11px var(--font-geist-mono),monospace;text-transform:uppercase;letter-spacing:.07em;color:var(--accent);justify-content:space-between;align-items:center;gap:20px;padding:8px 0 25px;display:flex}.blog-filter-bar b{color:var(--muted);margin-left:10px;font-weight:500}.blog-filter-bar a{align-items:center;gap:6px;display:inline-flex}.blog-filters,.blog-tag-filter{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:26px;display:flex}.blog-filters a,.blog-tag-filter a,.blog-admin-filters a{border:1px solid var(--line);color:var(--muted);padding:9px 13px;font-size:12px}.blog-filters a[aria-current],.blog-tag-filter a[aria-current],.blog-admin-filters a[aria-current],.blog-filters a:hover,.blog-tag-filter a:hover{border-color:var(--accent);color:var(--cream)}.blog-tag-filter{margin-top:-8px}.blog-tag-filter>span{color:var(--muted);font:10px var(--font-geist-mono),monospace;text-transform:uppercase;margin-right:7px}.blog-tag-filter a{padding:6px 9px;font-size:11px}.blog-card-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:45px 25px;display:grid}.blog-card{border-top:1px solid var(--line);min-width:0;padding-top:15px}.blog-card-visual{aspect-ratio:1.6;background:#b7d2d3;display:block;position:relative;overflow:hidden}.blog-card-visual img{object-fit:cover;transition:transform .25s}.blog-card-visual:hover img{transform:scale(1.03)}.blog-card-art{background-color:#b7d2d3;background-image:linear-gradient(#24352d36 1px,#0000 1px),linear-gradient(90deg,#24352d36 1px,#0000 1px);background-size:18% 25%;place-items:center;display:grid;position:absolute;inset:0}.blog-card-art span{letter-spacing:-.13em;color:#17231c;font-size:clamp(65px,8vw,150px);font-weight:800}.blog-card-meta{color:var(--accent);font:10px var(--font-geist-mono),monospace;text-transform:uppercase;letter-spacing:.04em;flex-wrap:wrap;gap:8px 13px;margin-top:17px;display:flex}.blog-card-title{justify-content:space-between;align-items:start;gap:10px;margin-top:14px;display:flex}.blog-card-title h2{letter-spacing:-.055em;margin:0;font-size:clamp(25px,2.2vw,37px);font-weight:550;line-height:1.08}.blog-card-title:hover{color:var(--accent)}.blog-card-title svg{flex:none;margin-top:6px}.blog-card>p{color:var(--muted);margin:12px 0;font-size:13px;line-height:1.55}.blog-card-tags{color:var(--accent);font:10px var(--font-geist-mono),monospace;flex-wrap:wrap;gap:9px;display:flex}.blog-about{border-top:1px solid var(--line);align-self:start;padding-top:15px;position:sticky;top:24px}.blog-about-photo{aspect-ratio:1.15;background:#363b38;position:relative;overflow:hidden}.blog-about-photo img{object-fit:cover;object-position:center 28%;filter:grayscale()contrast(1.04)}.blog-about-photo:before{content:"";z-index:1;background:var(--accent);mix-blend-mode:color;opacity:.3;pointer-events:none;position:absolute;inset:0}.blog-about .page-kicker{margin-top:24px}.blog-about h2,.blog-article-author h2{letter-spacing:-.06em;margin:0 0 16px;font-size:clamp(27px,2.8vw,42px);font-weight:550;line-height:1.04}.blog-about>p:not(.page-kicker),.blog-article-author>p:not(.page-kicker){color:var(--muted);font-size:14px;line-height:1.6}.blog-about .text-link{margin-top:20px}.blog-empty{border-top:1px solid var(--line);padding:70px 0 100px}.blog-empty>span{color:var(--accent);font:11px var(--font-geist-mono),monospace;text-transform:uppercase}.blog-empty h2{letter-spacing:-.06em;margin:16px 0;font-size:clamp(32px,4vw,58px);font-weight:550}.blog-empty p{color:var(--muted);max-width:430px;line-height:1.5}.blog-pagination{border-top:1px solid var(--line);color:var(--muted);justify-content:space-between;align-items:center;gap:20px;margin-top:60px;padding-top:22px;font-size:12px;display:flex}.blog-pagination a{color:var(--cream)}.blog-pagination a:hover{color:var(--accent)}.blog-article .case-back{margin-top:32px;display:inline-flex}.blog-article-head{max-width:1160px;padding:80px 0 50px}.blog-article-head h1{overflow-wrap:anywhere;font-size:clamp(54px,8vw,128px)}.blog-article-head>p:not(.page-kicker){color:#ced0c7;letter-spacing:-.025em;max-width:760px;margin:32px 0 26px;font-size:clamp(18px,2.1vw,27px);line-height:1.4}.blog-article-head>div{color:var(--accent);font:10px var(--font-geist-mono),monospace;text-transform:uppercase;gap:25px;display:flex}.blog-article-cover{aspect-ratio:2.2;background:#b7d2d3;width:100%;margin:0 0 70px;position:relative;overflow:hidden}.blog-article-cover img{object-fit:cover}.blog-article-layout{grid-template-columns:minmax(0,780px) minmax(220px,300px);justify-content:space-between;gap:50px;display:grid}.blog-article-layout article{min-width:0}.blog-article-author{border-top:1px solid var(--line);align-self:start;padding-top:24px;position:sticky;top:30px}.blog-article-tags{border-top:1px solid var(--line);flex-wrap:wrap;gap:10px;margin-top:50px;padding-top:24px;display:flex}.blog-article-tags a{color:var(--accent);font:11px var(--font-geist-mono),monospace}.blog-more{margin-top:110px}.blog-more .case-section-heading a{color:var(--accent)}.blog-prose{color:#d8dbd3;overflow-wrap:anywhere;font-size:clamp(16px,1.4vw,19px);line-height:1.75}.blog-prose>:first-child{margin-top:0}.blog-prose h1,.blog-prose h2,.blog-prose h3,.blog-prose h4{color:var(--cream);letter-spacing:-.05em;scroll-margin-top:24px;font-weight:560;line-height:1.15}.blog-prose h1{font-size:2.4em}.blog-prose h2{margin:2em 0 .65em;font-size:1.8em}.blog-prose h3{margin:1.7em 0 .5em;font-size:1.35em}.blog-prose p,.blog-prose ul,.blog-prose ol,.blog-prose blockquote,.blog-prose pre,.blog-prose table{margin:0 0 1.4em}.blog-prose a{color:var(--accent);text-underline-offset:4px;text-decoration:underline}.blog-prose strong{color:var(--cream)}.blog-prose blockquote{border-left:2px solid var(--accent);color:var(--muted);padding:4px 0 4px 22px}.blog-prose code{color:#c4e0df;background:#202720;padding:.1em .28em;font-size:.83em}.blog-prose pre{border:1px solid var(--line);background:#1b201c;padding:22px;font-size:14px;line-height:1.5;overflow-x:auto}.blog-prose pre code{color:#d9e4db;background:0 0;padding:0}.blog-prose table{border-collapse:collapse;max-width:100%;font-size:.85em;display:block;overflow-x:auto}.blog-prose th,.blog-prose td{border:1px solid var(--line);text-align:left;padding:9px 12px}.blog-prose hr{border:0;border-top:1px solid var(--line);margin:2.4em 0}.blog-inline-image{width:100%;height:auto;margin:14px 0 35px}.blog-repo-link{border:1px solid var(--line);grid-template-columns:1fr auto;gap:7px 12px;margin:45px 0;padding:23px;display:grid}.blog-repo-link span{color:var(--accent);font:10px var(--font-geist-mono),monospace;text-transform:uppercase;grid-column:1/-1}.blog-repo-link strong{letter-spacing:-.04em;font-size:21px}.blog-repo-link:hover{border-color:var(--accent)}.blog-admin-filters{gap:8px;margin:34px 0 20px;display:flex}.admin-blog .admin-actions{margin-top:0}.admin-blog-editor .admin-list-head{align-items:center}.blog-editor-grid{grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr);gap:45px;display:grid}.blog-editor-main,.blog-editor-side{min-width:0}.blog-post-form{gap:15px}.blog-markdown-input{min-height:540px;font:13px/1.55 var(--font-geist-mono),monospace;tab-size:2}.blog-editor-preview{border-top:1px solid var(--line);padding-top:20px}.blog-editor-preview-body{border:1px solid var(--line);background:#171b17;max-height:720px;padding:24px;overflow:auto}.blog-editor-preview .blog-prose{font-size:14px}.blog-editor-preview .blog-prose h2{font-size:23px}.blog-editor-side{align-self:start}.blog-editor-cover{padding-top:25px}.blog-cover-preview{aspect-ratio:1.6;background:#b7d2d3;position:relative;overflow:hidden}.blog-cover-preview img{object-fit:cover}.blog-cover-empty{aspect-ratio:1.6;background-color:#b7d2d3;background-image:linear-gradient(#11141030 1px,#0000 1px),linear-gradient(90deg,#11141030 1px,#0000 1px);background-position:0 0;background-repeat:repeat;background-size:20% 25%;background-attachment:scroll;background-origin:padding-box;background-clip:border-box;place-items:center;display:grid}.blog-cover-empty span{letter-spacing:-.13em;color:#17231c;font-size:100px;font-weight:800}.blog-editor-cover .admin-form{margin-top:18px}.blog-editor-cover .admin-divider{margin-top:30px}.blog-prompt-label{color:var(--muted);gap:8px;margin:20px 0;font-size:12px;display:grid}.blog-prompt-label textarea{width:100%;color:var(--cream);border:1px solid var(--line);background:#1b201c;padding:13px}.blog-candidate{border:1px solid var(--accent);margin-top:25px;padding:15px}.blog-candidate>div:last-child{flex-wrap:wrap;align-items:center;gap:12px;margin-top:13px;display:flex}.blog-admin-image-list{gap:12px;margin-top:25px;display:grid}.blog-admin-image-list>div{border:1px solid var(--line);grid-template-columns:120px minmax(0,1fr) auto;align-items:start;gap:14px;padding:12px;display:grid}.blog-admin-image-list img{object-fit:cover;width:120px;height:80px}.blog-admin-image-list .admin-form{margin:0}.blog-repo-facts{border:1px solid var(--line);color:var(--muted);padding:16px;font-size:12px;line-height:1.5}.blog-repo-facts strong{color:var(--cream);font-size:15px}.blog-repo-facts span,.blog-repo-facts small{margin-top:8px;display:block}.admin-blog-categories>.admin-text-link,.admin-settings>.admin-text-link{margin-bottom:32px;display:inline-block}@media (max-width:1100px){.blog-index-layout{grid-template-columns:minmax(0,1fr) 230px;gap:35px}.blog-editor-grid{grid-template-columns:1fr}.blog-editor-side{grid-template-columns:1fr 1fr;gap:24px;display:grid}.blog-editor-cover{padding:0}}@media (max-width:900px){.blog-index-head{grid-template-columns:1fr;gap:30px;padding:50px 0 40px}.blog-index-layout{grid-template-columns:1fr}.blog-about{grid-template-columns:160px 1fr;gap:0 25px;display:grid;position:static}.blog-about-photo{grid-row:1/5}.blog-about .page-kicker{margin:0}.blog-article-layout{grid-template-columns:1fr}.blog-article-author{max-width:550px;position:static}.blog-article-cover{aspect-ratio:1.7;margin-bottom:45px}}@media (max-width:620px){.blog-index,.blog-article{padding-bottom:55px}.blog-index-head h1{font-size:clamp(54px,14vw,86px)}.blog-card-grid{grid-template-columns:1fr;gap:38px}.blog-about{display:block}.blog-about-photo{aspect-ratio:1.6;margin-bottom:20px}.blog-index-head>p{font-size:17px}.blog-article-head{padding:50px 0 35px}.blog-article-head h1{font-size:clamp(48px,12vw,75px)}.blog-article-cover{aspect-ratio:1.2}.blog-editor-side{display:block}.blog-admin-image-list>div{grid-template-columns:75px 1fr}.blog-admin-image-list img{width:75px;height:65px}.blog-admin-image-list>div>form{grid-column:2}.blog-editor-preview-body{max-height:400px}.blog-article-head>div{flex-wrap:wrap}}.featured .device-stage-mixed .laptop-set{width:min(65%,520px);transform:translate(-13%,-7%)}.featured .device-stage-mixed .device-set{height:75%;bottom:9%;right:2%;transform:scale(.75)}@media (max-width:620px){.featured .device-stage-mixed .laptop-set,.case-visual .device-stage-mixed .laptop-set{width:70%;transform:translate(-12%,-24%)}.featured .device-stage-mixed .device-set,.case-visual .device-stage-mixed .device-set{height:77%;max-height:none;bottom:14%;right:3%;transform:scale(.52)}.case-visual .device-stage-web .laptop-set{width:86%}}.visual-carousel{isolation:isolate;touch-action:pan-y}.visual-carousel .stage-grid,.visual-carousel .stage-cross{pointer-events:none}.visual-carousel .stage-logo{z-index:5;box-shadow:none;background:0 0;border:0}.visual-carousel .stage-logo img{background:0 0;border:0;display:block}.visual-carousel-viewport{z-index:2;position:absolute;inset:0;overflow:hidden}.visual-carousel-track{will-change:transform;width:100%;height:100%;transition:transform .55s cubic-bezier(.22,.8,.25,1);display:flex}.visual-carousel-slide{box-sizing:border-box;flex:0 0 100%;justify-content:center;align-items:center;width:100%;height:100%;padding:48px 25px 64px;display:flex;position:relative;container-type:size}.visual-carousel-artwork{padding:inherit;box-sizing:border-box;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.image-reveal-shell{background:#e5e9e2;position:relative;overflow:hidden}.image-reveal-shell:before{content:"";z-index:1;filter:blur(22px);opacity:1;pointer-events:none;background:linear-gradient(115deg,#d0dacd 5%,#edf0e9 38%,#bdcabc 70%,#e5e9e2);transition:opacity .55s;position:absolute;inset:-12%}.image-reveal-shell.is-loaded:before,.image-reveal-shell.is-error:before{opacity:0}.image-reveal-target{opacity:.35;filter:blur(16px);transition:opacity .7s,filter .7s,transform .7s;transform:scale(1.06)}.image-reveal-shell.is-loaded .image-reveal-target{opacity:1;filter:blur();transform:scale(1)}.carousel-web-image{width:100%;height:100%}.gallery-reveal{width:100%}.gallery-phone-framed .gallery-reveal{height:100%}.gallery-reveal .carousel-image-error{min-height:280px}.carousel-phone-group{justify-content:center;align-items:center;gap:clamp(9px,1.6vw,24px);width:100%;height:100%;display:flex}.carousel-phone-group.count-1 .carousel-phone{height:min(96%,670px)}.carousel-phone-group.count-2 .carousel-phone{height:min(96%,100cqw - 32px,670px)}.carousel-phone-group.count-3 .carousel-phone{height:min(96%,66.6667cqw - 33.3333px,670px)}.carousel-image-error{color:#47534c;width:100%;height:100%;font:11px var(--font-geist-mono),monospace;place-items:center;display:grid}.carousel-laptop{aspect-ratio:1216/734.5;filter:drop-shadow(0 22px 28px #09121445);flex:none;width:min(81cqw,160cqh,1050px);position:relative}.macbook-screen-body{z-index:1;width:82.28%;height:auto;display:block;position:absolute;top:0;left:8.88%}.macbook-display{z-index:2;background:#f2f2ef;border-radius:8px 8px 0 0;position:absolute;inset:2.45% 10.24% 12.05%;overflow:hidden}.macbook-display img{object-fit:cover;object-position:center top;width:100%;height:100%;display:block}.macbook-notch{z-index:3;pointer-events:none;width:10.44%;height:auto;display:block;position:absolute;top:2.45%;left:44.78%}.macbook-camera{z-index:4;pointer-events:none;width:.64%;height:auto;display:block;position:absolute;top:2.75%;left:49.68%}.macbook-body{z-index:5;pointer-events:none;width:100%;height:auto;display:block;position:absolute;bottom:0;left:0}.device-stage-editable .laptop-set{width:min(78%,620px)}.device-stage-editable.device-stage-mixed .laptop-set{width:min(62%,500px)}.carousel-phone{aspect-ratio:49/100;filter:drop-shadow(0 24px 25px #09121455);flex:none;height:min(94%,650px);position:relative}.carousel-phone-screen{background:#f2f2ef;border-radius:11%/5.3%;position:absolute;inset:2.5% 5.1%;overflow:hidden}.carousel-phone-screen img{object-fit:cover;object-position:center top;width:100%;height:100%;display:block}.carousel-phone-frame{object-fit:fill;pointer-events:none;width:100%;height:100%;display:block;position:absolute;inset:0}.visual-carousel-controls{z-index:6;color:var(--cream);background:var(--ink);font:10px var(--font-geist-mono),monospace;white-space:nowrap;align-items:center;gap:6px;padding:3px;display:flex;position:absolute;bottom:12px;left:50%;transform:translate(-50%)}.visual-carousel-controls button{width:25px;height:25px;color:inherit;cursor:pointer;font:16px var(--font-geist-mono),monospace;background:0 0;border:0}.visual-carousel-controls button:hover,.visual-carousel-controls button:focus-visible{background:var(--accent);color:var(--ink);outline:0}.visual-carousel .visual-label{pointer-events:none;z-index:5}.visual-carousel .visual-label span:last-child{text-overflow:ellipsis;white-space:nowrap;max-width:35%;overflow:hidden}.case-visual .visual-carousel-slide{padding:48px 35px 66px}.case-visual .carousel-phone{height:min(96%,670px)}.project-card .visual-carousel-slide{padding:35px 20px 58px}.project-card .carousel-laptop{width:min(74cqw,160cqh,650px)}.project-card .carousel-phone{height:min(95%,330px)}.featured .visual-carousel-slide{padding:35px 20px 58px}.featured .carousel-laptop{width:min(76cqw,160cqh,690px)}.featured .carousel-phone{height:min(95%,440px)}.admin-preview-pane .visual-carousel-slide{padding:40px 20px 59px}.admin-preview-pane .carousel-phone{height:min(95%,450px)}@media (max-width:620px){.visual-carousel-slide,.case-visual .visual-carousel-slide{padding:46px 16px 63px}.carousel-laptop,.featured .carousel-laptop,.project-card .carousel-laptop{width:min(91cqw,120cqh)}.device-stage-editable.device-stage-mixed .laptop-set{width:70%}.carousel-phone,.case-visual .carousel-phone{height:min(96%,440px)}.visual-carousel .stage-logo{width:36px;height:36px;top:12px;right:12px}.case-visual .visual-carousel .stage-logo{left:12px;right:auto}.visual-carousel .visual-label{bottom:11px;left:11px;right:11px}.visual-carousel-controls{bottom:10px}.visual-carousel .visual-label span:last-child{max-width:25%}}@media (prefers-reduced-motion:reduce){.visual-carousel-track,.image-reveal-shell:before,.image-reveal-target{transition:none}}.case-project-actions{gap:10px;margin:0;padding-top:16px}.case-project-actions a{border:1px solid var(--line);justify-content:space-between;min-width:145px;min-height:43px;padding:0 13px;font-size:12px;display:inline-flex}.case-project-actions a:first-child{border-color:var(--accent);background:var(--accent);color:var(--ink)}.case-project-actions a:hover{border-color:var(--accent)}.case-data{grid-template-columns:repeat(auto-fit,minmax(170px,1fr))}.case-tech-list{flex-wrap:wrap;gap:9px;display:flex}.case-tech-list>span{border:1px solid var(--line);color:#c7cbc3;align-items:center;gap:9px;padding:9px 11px;font-size:12px;display:inline-flex}.case-tech-list img{object-fit:contain;width:18px;height:18px;display:block}@media (max-width:620px){.case-project-actions a{flex:145px}}@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-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-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}@property --tw-content{syntax:"*";inherits:false;initial-value:""}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}
