/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-y-reverse:0;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking: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-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-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-ease:initial;--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-scale-x:1;--tw-scale-y:1;--tw-scale-z:1;--tw-duration:initial}}}@font-face{font-family:Space Grotesk;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/space-grotesk-vietnamese-400-normal-B7xT_GF5.woff2)format("woff2"),url(/assets/space-grotesk-vietnamese-400-normal-BIWiOVfw.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Space Grotesk;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/space-grotesk-latin-ext-400-normal-CfP_5XZW.woff2)format("woff2"),url(/assets/space-grotesk-latin-ext-400-normal-DRPE3kg4.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Space Grotesk;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/space-grotesk-latin-400-normal-CJ-V5oYT.woff2)format("woff2"),url(/assets/space-grotesk-latin-400-normal-BnQMeOim.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Space Grotesk;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/space-grotesk-vietnamese-500-normal-BmEvtly_.woff2)format("woff2"),url(/assets/space-grotesk-vietnamese-500-normal-BTqKIpxg.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Space Grotesk;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/space-grotesk-latin-ext-500-normal-DUe3BAxM.woff2)format("woff2"),url(/assets/space-grotesk-latin-ext-500-normal-3dgZTiw9.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Space Grotesk;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/space-grotesk-latin-500-normal-lFbtlQH6.woff2)format("woff2"),url(/assets/space-grotesk-latin-500-normal-CNSSEhBt.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Space Grotesk;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/space-grotesk-vietnamese-700-normal-DMty7AZE.woff2)format("woff2"),url(/assets/space-grotesk-vietnamese-700-normal-Duxec5Rn.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Space Grotesk;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/space-grotesk-latin-ext-700-normal-BQnZhY3m.woff2)format("woff2"),url(/assets/space-grotesk-latin-ext-700-normal-HVCqSBdx.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Space Grotesk;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/space-grotesk-latin-700-normal-RjhwGPKo.woff2)format("woff2"),url(/assets/space-grotesk-latin-700-normal-CwsQ-cCU.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@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-red-500:oklch(63.7% .237 25.331);--color-amber-200:oklch(92.4% .12 95.746);--color-amber-500:oklch(76.9% .188 70.08);--color-amber-900:oklch(41.4% .112 45.904);--color-gray-100:oklch(96.7% .003 264.542);--color-gray-400:oklch(70.7% .022 261.325);--color-gray-600:oklch(44.6% .03 256.802);--color-gray-900:oklch(21% .034 264.665);--color-black:#000;--spacing:.25rem;--container-sm:24rem;--container-md:28rem;--container-lg:32rem;--container-3xl:48rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-base:1rem;--text-base--line-height:calc(1.5 / 1);--text-lg:1.125rem;--text-lg--line-height:calc(1.75 / 1.125);--text-xl:1.25rem;--text-xl--line-height:calc(1.75 / 1.25);--text-2xl:1.5rem;--text-2xl--line-height:calc(2 / 1.5);--text-3xl:1.875rem;--text-3xl--line-height:calc(2.25 / 1.875);--font-weight-normal:400;--font-weight-medium:500;--font-weight-bold:700;--tracking-tight:-.025em;--tracking-wider:.05em;--leading-tight:1.25;--leading-relaxed:1.625;--radius-xs:.125rem;--radius-md:.375rem;--radius-lg:.5rem;--radius-xl:.75rem;--ease-in-out:cubic-bezier(.4, 0, .2, 1);--animate-spin:spin 1s linear infinite;--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{.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}.sticky{position:sticky}.inset-0{inset:0}.inset-x-0{inset-inline:0}.top-0{top:0}.top-4{top:calc(var(--spacing) * 4)}.top-\[4\.5rem\]{top:4.5rem}.right-0{right:0}.right-4{right:calc(var(--spacing) * 4)}.right-8{right:calc(var(--spacing) * 8)}.bottom-0{bottom:0}.bottom-8{bottom:calc(var(--spacing) * 8)}.left-0{left:0}.z-50{z-index:50}.z-\[60\]{z-index:60}.container{width:100%}@media (width>=40rem){.container{max-width:40rem}}@media (width>=48rem){.container{max-width:48rem}}@media (width>=64rem){.container{max-width:64rem}}@media (width>=80rem){.container{max-width:80rem}}@media (width>=96rem){.container{max-width:96rem}}.mx-auto{margin-inline:auto}.-my-3{margin-block:calc(var(--spacing) * -3)}.mt-0\.5{margin-top:calc(var(--spacing) * .5)}.mt-1{margin-top:var(--spacing)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-auto{margin-top:auto}.mb-2{margin-bottom:calc(var(--spacing) * 2)}.mb-4{margin-bottom:calc(var(--spacing) * 4)}.mb-6{margin-bottom:calc(var(--spacing) * 6)}.line-clamp-3{-webkit-line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-flex{display:inline-flex}.size-4{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.h-3\.5{height:calc(var(--spacing) * 3.5)}.h-4{height:calc(var(--spacing) * 4)}.h-5{height:calc(var(--spacing) * 5)}.h-6{height:calc(var(--spacing) * 6)}.h-8{height:calc(var(--spacing) * 8)}.h-9{height:calc(var(--spacing) * 9)}.h-10{height:calc(var(--spacing) * 10)}.h-12{height:calc(var(--spacing) * 12)}.h-14{height:calc(var(--spacing) * 14)}.h-\[calc\(100dvh-4\.5rem\)\]{height:calc(100dvh - 4.5rem)}.h-auto{height:auto}.min-h-0{min-height:0}.min-h-11{min-height:calc(var(--spacing) * 11)}.min-h-dvh{min-height:100dvh}.min-h-screen{min-height:100vh}.w-3\.5{width:calc(var(--spacing) * 3.5)}.w-4{width:calc(var(--spacing) * 4)}.w-5{width:calc(var(--spacing) * 5)}.w-6{width:calc(var(--spacing) * 6)}.w-8{width:calc(var(--spacing) * 8)}.w-10{width:calc(var(--spacing) * 10)}.w-12{width:calc(var(--spacing) * 12)}.w-14{width:calc(var(--spacing) * 14)}.w-56{width:calc(var(--spacing) * 56)}.w-\[85vw\]{width:85vw}.w-\[92vw\]{width:92vw}.w-full{width:100%}.max-w-3xl{max-width:var(--container-3xl)}.max-w-lg{max-width:var(--container-lg)}.max-w-md{max-width:var(--container-md)}.max-w-sm{max-width:var(--container-sm)}.min-w-0{min-width:0}.flex-1{flex:1}.shrink-0{flex-shrink:0}.grow{flex-grow:1}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.animate-spin{animation:var(--animate-spin)}.cursor-pointer{cursor:pointer}.resize{resize:both}.list-disc{list-style-type:disc}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-1{gap:var(--spacing)}.gap-1\.5{gap:calc(var(--spacing) * 1.5)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}.gap-5{gap:calc(var(--spacing) * 5)}.gap-6{gap:calc(var(--spacing) * 6)}:where(.space-y-1>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(var(--spacing) * var(--tw-space-y-reverse));margin-block-end:calc(var(--spacing) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-1\.5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 1.5) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 1.5) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-2>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 2) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 2) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-3>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 3) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 3) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-6>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 6) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 6) * calc(1 - var(--tw-space-y-reverse)))}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-y-auto{overflow-y:auto}.overscroll-contain{overscroll-behavior:contain}.rounded{border-radius:.25rem}.rounded-\[6px\]{border-radius:6px}.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-xs{border-radius:var(--radius-xs)}.border{border-style:var(--tw-border-style);border-width:1px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-r{border-right-style:var(--tw-border-style);border-right-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-b-2{border-bottom-style:var(--tw-border-style);border-bottom-width:2px}.border-l{border-left-style:var(--tw-border-style);border-left-width:1px}.border-amber-500\/30{border-color:#f99c004d}@supports (color:color-mix(in lab, red, red)){.border-amber-500\/30{border-color:color-mix(in oklab, var(--color-amber-500) 30%, transparent)}}.border-current{border-color:currentColor}.bg-amber-500\/10{background-color:#f99c001a}@supports (color:color-mix(in lab, red, red)){.bg-amber-500\/10{background-color:color-mix(in oklab, var(--color-amber-500) 10%, transparent)}}.bg-black\/70{background-color:#000000b3}@supports (color:color-mix(in lab, red, red)){.bg-black\/70{background-color:color-mix(in oklab, var(--color-black) 70%, transparent)}}.bg-transparent{background-color:#0000}.p-1{padding:var(--spacing)}.p-2\.5{padding:calc(var(--spacing) * 2.5)}.p-3{padding:calc(var(--spacing) * 3)}.p-4{padding:calc(var(--spacing) * 4)}.p-6{padding:calc(var(--spacing) * 6)}.p-8{padding:calc(var(--spacing) * 8)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-2\.5{padding-inline:calc(var(--spacing) * 2.5)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-6{padding-inline:calc(var(--spacing) * 6)}.py-0\.5{padding-block:calc(var(--spacing) * .5)}.py-1{padding-block:var(--spacing)}.py-1\.5{padding-block:calc(var(--spacing) * 1.5)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-2\.5{padding-block:calc(var(--spacing) * 2.5)}.py-3{padding-block:calc(var(--spacing) * 3)}.py-4{padding-block:calc(var(--spacing) * 4)}.py-7{padding-block:calc(var(--spacing) * 7)}.pt-1{padding-top:var(--spacing)}.pt-2{padding-top:calc(var(--spacing) * 2)}.pt-2\.5{padding-top:calc(var(--spacing) * 2.5)}.pr-1\.5{padding-right:calc(var(--spacing) * 1.5)}.pr-8{padding-right:calc(var(--spacing) * 8)}.pr-12{padding-right:calc(var(--spacing) * 12)}.pb-1{padding-bottom:var(--spacing)}.pb-2{padding-bottom:calc(var(--spacing) * 2)}.pb-8{padding-bottom:calc(var(--spacing) * 8)}.pb-\[env\(safe-area-inset-bottom\)\]{padding-bottom:env(safe-area-inset-bottom)}.pl-3{padding-left:calc(var(--spacing) * 3)}.pl-4{padding-left:calc(var(--spacing) * 4)}.pl-6{padding-left:calc(var(--spacing) * 6)}.text-center{text-align:center}.text-left{text-align:left}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\[0\.8125rem\]{font-size:.8125rem}.text-\[11px\]{font-size:11px}.leading-none{--tw-leading:1;line-height:1}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.leading-tight{--tw-leading:var(--leading-tight);line-height:var(--leading-tight)}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-normal{--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal)}.tracking-tight{--tw-tracking:var(--tracking-tight);letter-spacing:var(--tracking-tight)}.tracking-wider{--tw-tracking:var(--tracking-wider);letter-spacing:var(--tracking-wider)}.whitespace-nowrap{white-space:nowrap}.whitespace-pre-wrap{white-space:pre-wrap}.text-amber-900{color:var(--color-amber-900)}.text-gray-600{color:var(--color-gray-600)}.text-gray-900{color:var(--color-gray-900)}.uppercase{text-transform:uppercase}.underline{text-decoration-line:underline}.underline-offset-2{text-underline-offset:2px}.underline-offset-4{text-underline-offset:4px}.opacity-40{opacity:.4}.opacity-50{opacity:.5}.opacity-60{opacity:.6}.opacity-70{opacity:.7}.opacity-100{opacity:1}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a), 0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-sm{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-xl{--tw-shadow:0 20px 25px -5px var(--tw-shadow-color,#0000001a), 0 8px 10px -6px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-xs{--tw-shadow:0 1px 2px 0 var(--tw-shadow-color,#0000000d);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring-2{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring-red-500{--tw-ring-color:var(--color-red-500)}.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,)}.backdrop-filter{-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,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[color\,box-shadow\]{transition-property:color,box-shadow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.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}@media (hover:hover){.group-hover\:translate-x-1:is(:where(.group):hover *){--tw-translate-x:var(--spacing);translate:var(--tw-translate-x) var(--tw-translate-y)}.group-hover\:scale-110:is(:where(.group):hover *){--tw-scale-x:110%;--tw-scale-y:110%;--tw-scale-z:110%;scale:var(--tw-scale-x) var(--tw-scale-y)}}.group-data-\[disabled\=true\]\:pointer-events-none:is(:where(.group)[data-disabled=true] *){pointer-events:none}.group-data-\[disabled\=true\]\:opacity-50:is(:where(.group)[data-disabled=true] *){opacity:.5}.peer-disabled\:cursor-not-allowed:is(:where(.peer):disabled~*){cursor:not-allowed}.peer-disabled\:opacity-50:is(:where(.peer):disabled~*){opacity:.5}.file\:inline-flex::file-selector-button{display:inline-flex}.file\:h-7::file-selector-button{height:calc(var(--spacing) * 7)}.file\:border-0::file-selector-button{border-style:var(--tw-border-style);border-width:0}.file\:bg-transparent::file-selector-button{background-color:#0000}.file\:text-sm::file-selector-button{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.file\:font-medium::file-selector-button{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.empty\:hidden:empty{display:none}@media (hover:hover){.hover\:scale-105:hover{--tw-scale-x:105%;--tw-scale-y:105%;--tw-scale-z:105%;scale:var(--tw-scale-x) var(--tw-scale-y)}.hover\:scale-110:hover{--tw-scale-x:110%;--tw-scale-y:110%;--tw-scale-z:110%;scale:var(--tw-scale-x) var(--tw-scale-y)}.hover\:scale-\[1\.01\]:hover{scale:1.01}.hover\:bg-red-500\/10:hover{background-color:#fb2c361a}@supports (color:color-mix(in lab, red, red)){.hover\:bg-red-500\/10:hover{background-color:color-mix(in oklab, var(--color-red-500) 10%, transparent)}}.hover\:underline:hover{text-decoration-line:underline}.hover\:opacity-70:hover{opacity:.7}.hover\:opacity-75:hover{opacity:.75}.hover\:opacity-80:hover{opacity:.8}.hover\:opacity-90:hover{opacity:.9}.hover\:opacity-95:hover{opacity:.95}.hover\:opacity-100:hover{opacity:1}}.focus\:ring-2:focus{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.focus\:ring-offset-2:focus{--tw-ring-offset-width:2px;--tw-ring-offset-shadow:var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color)}.focus\:outline-hidden:focus{--tw-outline-style:none;outline-style:none}@media (forced-colors:active){.focus\:outline-hidden:focus{outline-offset:2px;outline:2px solid #0000}}.focus\:outline-none:focus{--tw-outline-style:none;outline-style:none}.focus-visible\:ring-2:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.focus-visible\:ring-\[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-none:focus-visible{--tw-outline-style:none;outline-style:none}.active\:scale-95:active{--tw-scale-x:95%;--tw-scale-y:95%;--tw-scale-z:95%;scale:var(--tw-scale-x) var(--tw-scale-y)}.active\:scale-98:active{--tw-scale-x:98%;--tw-scale-y:98%;--tw-scale-z:98%;scale:var(--tw-scale-x) var(--tw-scale-y)}.active\:scale-\[0\.98\]:active{scale:.98}.active\:scale-\[0\.99\]:active{scale:.99}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-50:disabled{opacity:.5}.disabled\:opacity-60:disabled{opacity:.6}.data-\[state\=closed\]\:duration-300[data-state=closed]{--tw-duration:.3s;transition-duration:.3s}.data-\[state\=open\]\:duration-500[data-state=open]{--tw-duration:.5s;transition-duration:.5s}@media (width>=40rem){.sm\:w-\[400px\]{width:400px}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:flex-row{flex-direction:row}.sm\:items-center{align-items:center}.sm\:p-5{padding:calc(var(--spacing) * 5)}}@media (width>=48rem){.md\:p-8{padding:calc(var(--spacing) * 8)}.md\:p-10{padding:calc(var(--spacing) * 10)}.md\:text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.md\:text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.md\:text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}}@media (prefers-color-scheme:dark){.dark\:text-amber-200{color:var(--color-amber-200)}.dark\:text-gray-100{color:var(--color-gray-100)}.dark\:text-gray-400{color:var(--color-gray-400)}}}:root:not([data-paradigm=kinetic]){--sm-ease:cubic-bezier(.22, 1, .36, 1)}@media (prefers-reduced-motion:no-preference){:root:not([data-paradigm=kinetic])::view-transition-old(page){animation:.16s ease-in both sm-page-out}:root:not([data-paradigm=kinetic])::view-transition-new(page){animation:sm-page-in .22s var(--sm-ease) both}:root:not([data-paradigm=kinetic]) .studio-hero-name{--i:1}:root:not([data-paradigm=kinetic]) .studio-hero-description{--i:2}:root:not([data-paradigm=kinetic]) .studio-hero .studio-actions{--i:3}:root:not([data-paradigm=kinetic]) :is(.studio-hero-name,.studio-hero-description,.studio-hero .studio-actions){animation:sm-rise .24s var(--sm-ease) calc(var(--i,0) * 60ms) backwards}:root:not([data-paradigm=kinetic]) :is(.studio-button,.studio-button-secondary,.studio-hero-link){transition:transform .16s var(--sm-ease), translate .16s var(--sm-ease), scale .16s var(--sm-ease)}:root:not([data-paradigm=kinetic]) :is(.studio-button,.studio-button-secondary):active{scale:.98}:root:not([data-paradigm=kinetic]) .studio-navigation a{transition:translate .16s var(--sm-ease)}:root:not([data-paradigm=kinetic]) .studio-navigation a:hover{translate:0 -1px}:root:not([data-paradigm=kinetic]) .studio-project{transition:translate .24s var(--sm-ease), scale .24s var(--sm-ease)}:root:not([data-paradigm=kinetic]) .studio-project:hover{translate:0 -4px}:root:not([data-paradigm=kinetic]) .studio-project:active{scale:.99}}@supports (animation-timeline:view()){@media (prefers-reduced-motion:no-preference){:root:not([data-paradigm=kinetic]) :is(.studio-section-heading,.studio-project){animation:linear both sm-reveal;animation-timeline:view();animation-range:entry entry 35%}}}@keyframes sm-page-out{to{opacity:0;translate:0 -12px}}@keyframes sm-page-in{0%{opacity:0;translate:0 12px}}@keyframes sm-rise{0%{opacity:0;translate:0 12px}}@keyframes sm-reveal{0%{opacity:0;translate:0 16px}}.mode-strip{box-sizing:border-box;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:16px;block-size:32px;inline-size:100%;padding-inline:16px;display:grid;overflow:hidden}.mode-strip-lead{min-inline-size:0;overflow:hidden}.mode-switch{align-items:stretch;block-size:100%;display:inline-flex}.mode-switch button{appearance:none;color:inherit;font:inherit;cursor:pointer;touch-action:manipulation;background:0 0;border:0}@media (pointer:coarse){.mode-strip{block-size:45px}.mode-switch button{min-inline-size:44px}}:root:not([data-paradigm=kinetic]) .mode-strip{border-block-end:1px solid var(--color-border);background:var(--color-background);color:var(--color-textSecondary);letter-spacing:.1em;text-transform:uppercase;font:11px/1 ui-monospace,Menlo,Consolas,monospace}:root:not([data-paradigm=kinetic]) .mode-switch button{color:var(--color-textSecondary);letter-spacing:inherit;text-transform:inherit;padding:0 10px}:root:not([data-paradigm=kinetic]) .mode-switch button:hover,:root:not([data-paradigm=kinetic]) .mode-switch button[aria-pressed=true]{color:var(--color-text)}:root:not([data-paradigm=kinetic]) .mode-switch button[aria-pressed=true]{text-underline-offset:6px;text-decoration:underline;text-decoration-thickness:1px}:root:not([data-paradigm=kinetic]) .mode-switch button:focus-visible{outline:2px solid var(--color-focus-ring);outline-offset:-2px}@media (width>=1921px) and (pointer:fine){.mode-strip{block-size:2rem}:root:not([data-paradigm=kinetic]) .mode-strip{font-size:.6875rem}}:root{--color-primary:#244ce4;--color-secondary:#52617c;--color-accent:#fff;--color-background:#f3f5fa;--color-surface:#fff;--color-text:#17243c;--color-textSecondary:#52617c;--color-border:#ccd3e1;--color-borderLight:#e3e7f0;--color-success:#147348;--color-warning:#8a5700;--color-error:#b52d3a;--color-info:#244ce4;--studio-blue:#244ce4;--studio-ink:#17243c;--studio-lime:#dce99b;--studio-paper:#f3f5fa;--studio-on-ink:#f3f5fa;--studio-on-ink-soft:#c8d1e3;--studio-ink-line:#65738a;--studio-ink-line-strong:#8793a6;--studio-ink-hover:#283b59;--studio-ink-rule:#41516c;--studio-on-blue:#fff;--studio-on-blue-muted:#e0e7ff;--studio-on-blue-line:#aebfff;--studio-blue-line:#6c87ed;--diagram-line:#a1aecb;--art-periwinkle:#c3d0f5;--art-sheet:#f9fbff;--art-rule:#dfe4ef;--art-wash:#e6ebf7;--art-note-lime:#344626;--studio-ease:cubic-bezier(.16, 1, .3, 1);--color-focus-ring:var(--color-primary);--color-cta-bg:var(--color-primary);--color-cta-text:var(--color-accent);--color-cta-hover:var(--color-primary);accent-color:var(--color-primary);font-synthesis:none}:root[data-theme=midnight]{--studio-paper:#16213a;--diagram-line:#56688a}*{box-sizing:border-box}html{scroll-behavior:smooth;scrollbar-gutter:stable;scroll-padding-top:110px}body{background:var(--color-background);color:var(--color-text);margin:0;font-family:Space Grotesk,sans-serif;line-height:1.6}h1,h2,h3{text-wrap:balance;letter-spacing:-.035em;line-height:1.1}p{overflow-wrap:break-word}button,input,textarea,select{font:inherit}button,a,input{-webkit-tap-highlight-color:transparent}button:not(:disabled),label{cursor:pointer}a,button{touch-action:manipulation}:focus-visible{outline:3px solid var(--color-focus-ring);outline-offset:5px}[aria-disabled=true],button:disabled{opacity:.55;cursor:not-allowed}::selection{background:var(--studio-lime);color:var(--studio-ink)}.skip-link{z-index:100;background:var(--color-primary);color:var(--color-accent);padding:12px 20px;position:fixed;top:-100px;left:16px}.skip-link:focus{top:8px}#main-content{scroll-margin-top:100px}.studio-container{width:min(100% - 96px, var(--studio-container-max,1280px));margin-inline:auto}.studio-section{padding-block:clamp(64px,7vw,112px)}.studio-header{z-index:40;background:var(--color-background);border-bottom:1px solid var(--color-border);position:sticky;top:0}.studio-header-inner{justify-content:space-between;align-items:center;gap:24px;min-height:88px;display:flex}.studio-brand{align-items:center;gap:13px;font-size:.9375rem;font-weight:700;line-height:1.35;text-decoration:none;display:inline-flex}.studio-monogram{letter-spacing:-.04em;color:var(--color-primary);align-items:baseline;font-size:2.125rem;display:flex}.studio-monogram span{color:var(--color-text)}.studio-brand-caption{color:var(--color-textSecondary);margin-top:3px;font-size:.75rem;font-weight:400;display:block}.studio-desktop-nav{align-items:center;gap:26px;display:flex}.studio-navigation{align-items:center;gap:25px;font-size:.875rem;display:flex}.studio-navigation a{align-items:center;gap:6px;min-height:44px;text-decoration:none;display:inline-flex;position:relative}.studio-navigation a:after{content:"";background:var(--color-primary);transform-origin:0;height:2px;transition:transform .25s;position:absolute;bottom:5px;left:0;right:0;transform:scaleX(0)}.studio-navigation a:hover:after,.studio-navigation a.active:after{transform:scaleX(1)}.studio-mobile-nav{align-items:center;gap:12px;display:none}.composition-switcher{border:1px solid var(--studio-ink-line);border-radius:12px;flex-wrap:wrap;gap:4px;max-width:100%;margin:0;padding:4px;display:inline-flex}.composition-switcher label{min-height:44px;color:var(--studio-on-ink);border-radius:8px;place-items:center;transition:background-color .18s,color .18s;display:grid;position:relative}.composition-switcher input{opacity:0;cursor:pointer;width:100%;height:100%;position:absolute;inset:0}.composition-choice{align-items:center;gap:7px;padding:10px;font-size:.8125rem;display:flex}.composition-choice b{opacity:.65}.choice-check{visibility:hidden;flex-shrink:0}.composition-switcher label:has(input:checked){background:var(--studio-lime);color:var(--studio-ink)}.composition-switcher input:checked+span .choice-check,.theme-choice[aria-pressed=true] .choice-check{visibility:visible}.theme-choice:focus-visible{outline:2px solid var(--studio-lime);outline-offset:4px}.composition-switcher label:has(input:focus-visible){outline:2px solid var(--studio-lime);outline-offset:4px}.theme-switcher{flex-wrap:wrap;gap:6px;width:fit-content;max-width:100%;display:inline-flex}.theme-choice{border:1px solid var(--studio-ink-line);min-height:48px;color:var(--studio-on-ink);cursor:pointer;background:0 0;border-radius:8px;align-items:center;gap:7px;padding:10px;font-size:.8125rem;display:flex}.theme-choice:hover{background:var(--studio-ink-hover)}.theme-choice[aria-pressed=true]{background:var(--studio-on-ink);color:var(--studio-ink);border-color:var(--studio-on-ink)}.palette-swatch{border:1px solid var(--studio-ink-line-strong);border-radius:4px;width:27px;height:20px;display:flex;overflow:hidden}.palette-swatch i{flex:1}.studio-menu-trigger{place-items:center;width:44px;height:44px;display:grid}.studio-mobile-sheet{background:var(--color-background);color:var(--color-text);padding:1.25rem}.studio-hero{background:var(--studio-blue);color:var(--studio-on-blue);padding-top:72px;transition:background-color .5s,color .5s;overflow:clip}.studio-hero-grid{transition:grid-template-columns .6s var(--studio-ease), gap .6s;grid-template-columns:1.25fr 1fr;align-items:center;gap:64px;display:grid}.studio-hero h1{max-width:43.75rem;transition:font-size .6s var(--studio-ease);animation:hero-arrive .8s var(--studio-ease);margin:0;font-size:clamp(3rem,1rem + 4.5vw,5.125rem);font-weight:700;line-height:1.02}.studio-hero-name{margin:28px 0 0;font-size:1.0625rem;font-weight:700}.studio-hero-name span{margin-top:4px;font-size:.8125rem;font-weight:400;display:block}.studio-hero-description{max-width:52ch;color:var(--studio-on-blue-muted);text-wrap:pretty;margin:20px 0 0;font-size:1rem;line-height:1.7}.studio-actions{flex-wrap:wrap;align-items:center;gap:26px;margin-top:30px;display:flex}.studio-button,.studio-button-secondary{background:var(--color-primary);min-height:50px;color:var(--color-accent);transition:transform .25s var(--studio-ease);border-radius:6px;justify-content:center;align-items:center;gap:22px;padding:13px 24px;font-weight:500;text-decoration:none;display:inline-flex}.studio-button:hover,.studio-button-secondary:hover{transform:translateY(-3px)}.studio-button:hover:not(:disabled){opacity:.92}.studio-button:active:not(:disabled){transform:scale(.99)}.studio-button:disabled{opacity:.55;cursor:not-allowed}.studio-button:focus-visible{outline:3px solid var(--color-focus-ring);outline-offset:3px}.studio-button-light{background:var(--studio-lime);color:var(--studio-ink)}.studio-button-secondary{border:1px solid var(--color-border);color:var(--color-text);background:0 0}.studio-hero-link{text-underline-offset:6px;align-items:center;gap:10px;padding-block:12px;display:inline-flex}.studio-hero :focus-visible{outline-color:var(--studio-lime)}.studio-hero-foot{border-top:1px solid var(--studio-blue-line);color:var(--studio-on-blue-muted);justify-content:space-between;align-items:center;gap:24px;margin-top:62px;padding-block:22px;font-size:.75rem;display:flex}.studio-hero-foot a{align-items:center;gap:10px;min-height:44px;margin-block:-12px;text-decoration:none;display:inline-flex}.system-studio{background:var(--studio-paper);color:var(--studio-ink);transition:transform .6s var(--studio-ease);border-radius:12px;padding:25px 28px 18px;transform:rotate(-2deg)}.system-studio:hover,.system-studio:focus-within{transform:rotate(0)}.system-model{height:218px;margin:6px -8px 12px;position:relative}.system-connections{width:100%;height:100%;stroke:var(--diagram-line);stroke-width:1.5px;position:absolute;inset:0}.system-connections circle{fill:var(--studio-blue);stroke:var(--studio-paper);stroke-width:5px}.system-node{border:1px solid var(--color-border);background:var(--color-surface);width:76px;height:76px;transition:background-color .35s, transform .45s var(--studio-ease);border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:5px;font-size:.75rem;display:flex;position:absolute}.system-node svg{width:26px;height:26px}.studio-section-heading{justify-content:space-between;align-items:end;gap:48px;margin-bottom:44px;display:flex}.studio-section-heading h2,.studio-approach h2,.studio-closing h2{margin:0;font-size:clamp(2rem,1rem + 2.4vw,3rem);font-weight:500}.studio-section-heading>p{max-width:380px;color:var(--color-textSecondary);text-wrap:pretty;margin:0;font-size:1rem}.studio-project-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;margin-bottom:36px;display:grid}.studio-project{min-width:0}.studio-project-image{border-radius:10px;display:block;position:relative;overflow:hidden}.studio-project-open{background:var(--color-surface);width:40px;height:40px;color:var(--studio-ink);border-radius:50%;place-items:center;transition:transform .3s;display:grid;position:absolute;bottom:18px;right:18px}.studio-project-image:hover .studio-project-open{transform:rotate(45deg)}.studio-project h3{margin:10px 0 14px;font-size:1.6875rem;font-weight:500}.studio-project h3 a{justify-content:space-between;align-items:center;text-decoration:none;display:flex}.studio-project>p:not(.studio-project-meta){color:var(--color-textSecondary);text-wrap:pretty;max-width:46ch;font-size:.9375rem}.studio-project-meta{font-variant-numeric:tabular-nums;color:var(--color-textSecondary);justify-content:space-between;gap:10px;margin:22px 0 0;font-size:.75rem;display:flex}.studio-project-meta span{text-align:right}.project-art{isolation:isolate;height:290px;color:var(--studio-ink);place-items:center;display:grid;position:relative;overflow:hidden}.studio-link{color:var(--color-primary);text-underline-offset:6px;align-items:center;gap:12px;padding-block:10px;font-weight:500;text-decoration:underline;display:inline-flex}.studio-split{grid-template-columns:1fr 1.15fr;gap:clamp(40px,7vw,112px);display:grid}.studio-approach{background:var(--color-surface)}.studio-lede{color:var(--color-textSecondary);text-wrap:pretty;max-width:62ch;font-size:clamp(1.125rem,.875rem + .5vw,1.3125rem);line-height:1.7}.studio-approach .studio-lede{max-width:34ch;margin-block:24px}.studio-principles>section{border-top:1px solid var(--color-border);padding-block:25px}.studio-principles>section:first-child{border:0;padding-top:0}.studio-principles h3{font-size:1.4375rem;font-weight:500}.studio-principles p{color:var(--color-textSecondary);margin-block:15px;font-size:.9375rem}.studio-principles span{color:var(--color-primary);font-size:.75rem}.studio-closing{justify-content:space-between;align-items:center;gap:48px;display:flex}.studio-closing p{max-width:55ch;color:var(--color-textSecondary);text-wrap:pretty;margin:24px 0 0}.studio-closing .studio-button{flex-shrink:0}.studio-footer{background:var(--studio-ink);color:var(--studio-on-ink);padding-top:64px}.studio-footer-main{justify-content:space-between;align-items:start;gap:36px;padding-bottom:32px;display:flex}.studio-footer-name{letter-spacing:-.04em;font-size:clamp(2.5rem,1rem + 3.8vw,4rem);font-weight:500;line-height:1;text-decoration:none}.studio-footer-name>span{color:var(--studio-lime)}.studio-footer-main>div p{margin:0 0 25px;font-size:1.1875rem;line-height:1.5}.studio-footer-main>div a{text-underline-offset:5px;margin-block:-12px;align-items:center;gap:5px;min-height:44px;margin-right:24px;font-size:.8125rem;display:inline-flex}.studio-footer-bottom{border-top:1px solid var(--studio-ink-rule);color:var(--studio-on-ink-soft);justify-content:space-between;gap:24px;padding-block:22px;font-size:.75rem;display:flex}.studio-footer-bottom nav{gap:25px;display:flex}.studio-footer-bottom a{align-items:center;min-height:44px;margin-block:-12px;text-decoration:none;display:inline-flex}.studio-page{background:var(--color-background);color:var(--color-text)}.studio-page-intro{padding-block:72px 48px}.studio-page-heading{max-width:1000px;margin:0 0 28px;font-size:clamp(2.625rem,1rem + 4.3vw,4.75rem);font-weight:500}.studio-prose{max-width:68ch}.studio-prose p{text-wrap:pretty;line-height:1.8}.studio-prose h2{font-size:1.75rem;font-weight:500}.studio-contact{grid-template-columns:.8fr 1.2fr;align-items:start;gap:72px;padding-bottom:96px;display:grid}.studio-contact>*{min-width:0}.studio-contact form{background:var(--color-surface);border:1px solid var(--color-border);border-radius:12px}.studio-contact input{min-height:48px}.studio-contact textarea{min-height:160px}.studio-case-nav{flex-wrap:wrap;gap:12px;margin-bottom:48px;display:flex}.studio-case-nav a{border:1px solid var(--color-border);border-radius:24px;align-items:center;min-height:44px;padding:8px 18px;font-size:.875rem;text-decoration:none;display:inline-flex}.studio-case-nav a:hover{background:var(--color-surface)}.studio-case{border-top:1px solid var(--color-border);padding-block:72px;scroll-margin-top:105px}.studio-case-head{grid-template-columns:1fr 1fr;align-items:center;gap:72px;margin-bottom:48px;display:grid}.studio-case-head h2{margin-bottom:16px;font-size:clamp(2.25rem,1rem + 3vw,3.5rem);font-weight:500}.studio-case-head>div>p{max-width:50ch;margin-top:16px}.studio-case-head .project-art{border-radius:12px;height:340px}.studio-case-body{grid-template-columns:repeat(3,1fr);gap:40px;display:grid}.studio-case-body h3{margin-bottom:16px;font-size:1.3125rem;font-weight:500}.studio-case-body p{color:var(--color-textSecondary);text-wrap:pretty;font-size:.9375rem;line-height:1.75}.studio-case-flow{background:var(--color-surface);border-radius:10px;margin-top:44px;padding:28px}.studio-case-flow ol{grid-template-columns:repeat(3,1fr);gap:28px;display:grid}.studio-case-flow li{font-variant-numeric:tabular-nums;justify-content:space-between;align-items:center;gap:20px;font-size:.875rem;display:flex}.studio-case-flow figcaption{color:var(--color-textSecondary);margin-top:20px;font-size:.75rem}[data-composition=a] .studio-project-grid{flex-direction:column;gap:0;display:flex}[data-composition=a] .studio-project{border-top:1px solid var(--color-border);grid-template-columns:minmax(240px,.8fr) minmax(0,1.8fr);align-items:center;gap:40px;padding-block:32px;display:grid}[data-composition=a] .project-art{height:260px}.studio-project-copy{min-width:0}.studio-project-copy .studio-project-meta{flex-wrap:wrap;gap:4px 16px;margin:0 0 8px;font-size:.8125rem;display:flex}.studio-project-copy .studio-project-meta span{text-align:left}.studio-project-copy h3{margin:0 0 12px;font-size:clamp(1.625rem,1rem + 1.4vw,2.125rem)}.studio-project-summary{color:var(--color-text);text-wrap:pretty;margin-bottom:10px;font-size:1.125rem;line-height:1.5}.studio-project-contribution{max-width:66ch;color:var(--color-textSecondary);text-wrap:pretty;font-size:.9375rem;line-height:1.7}.studio-project-stack{color:var(--color-textSecondary);flex-wrap:wrap;gap:6px 16px;margin:16px 0;padding:0;font-size:.75rem;font-weight:500;list-style:none;display:flex}.studio-project-copy>.studio-link{min-height:44px;font-size:.875rem}[data-composition=b] .studio-hero{background:var(--color-background);color:var(--color-text)}[data-composition=b] .studio-hero h1{color:var(--color-primary)}[data-composition=b] .studio-hero-description,[data-composition=b] .studio-hero-foot{color:var(--color-textSecondary)}[data-composition=b] .studio-hero-foot{border-color:var(--color-border)}[data-composition=b] .system-studio{background:var(--studio-paper);transform:rotate(2deg)}[data-composition=b] .studio-project-grid{flex-direction:column;gap:32px;display:flex}[data-composition=b] .studio-project{background:var(--color-surface);border-radius:12px;grid-template-rows:auto;grid-template-columns:260px 1fr;gap:0 36px;width:86%;padding:20px;display:grid}[data-composition=b] .studio-project:nth-child(2){align-self:center}[data-composition=b] .studio-project:nth-child(3){align-self:end}[data-composition=b] .studio-project-image{grid-row:auto}[data-composition=b] .project-art{height:215px}[data-composition=b] .studio-project-meta{margin-top:12px}[data-composition=c] .studio-hero{background:var(--color-background);color:var(--color-text)}[data-composition=c] .studio-hero-grid{grid-template-columns:.8fr 1.5fr;gap:48px}[data-composition=c] .studio-hero-description,[data-composition=c] .studio-hero-foot{color:var(--color-textSecondary)}[data-composition=c] .studio-hero-foot{border-color:var(--color-border)}[data-composition=c] .system-studio{background:var(--studio-blue);color:var(--studio-on-blue);padding:30px 40px;transform:none}[data-composition=c] .system-model{height:275px}[data-composition=c] .system-node{width:95px;height:95px;color:var(--studio-ink)}[data-composition=c] .studio-project-grid{grid-template-columns:1fr 1fr}[data-composition=c] .studio-project:last-child{grid-column:1/-1;grid-template-columns:1fr 1fr;gap:0 32px;display:grid}[data-composition=c] .studio-project:last-child .studio-project-image{grid-row:auto}@keyframes hero-arrive{0%{clip-path:inset(0 0 10%);transform:translateY(18px)}to{clip-path:inset(0);transform:translateY(0)}}@keyframes signal-travel{0%{stroke-dashoffset:430px}to{stroke-dashoffset:0}}@media (width<=1100px){.studio-desktop-nav,.studio-navigation{gap:16px}.studio-brand-caption{display:none}.studio-hero-grid{gap:36px}.studio-hero h1{font-size:3.875rem}.studio-container{width:calc(100% - 64px)}.studio-contact{gap:40px}}@media (width<=950px){.studio-desktop-nav{display:none}.studio-mobile-nav{display:flex}.studio-hero-grid{grid-template-columns:1.1fr 1fr;gap:28px}.studio-hero h1{font-size:3.25rem}.system-studio{padding-inline:20px}.studio-section-heading{align-items:start}.studio-project-grid{gap:22px}.studio-project-meta{flex-direction:column}.studio-project-meta span{text-align:left}[data-composition=a] .studio-project{grid-template-columns:240px minmax(0,1fr);column-gap:24px}.studio-case-head{gap:40px}}@media (width<=700px){.studio-container{width:calc(100% - 40px)}.studio-header-inner{gap:12px;min-height:76px}.studio-brand{gap:9px;font-size:.75rem}.studio-monogram{font-size:1.8125rem}.studio-brand-caption{display:none}.studio-mobile-nav{gap:4px}.studio-hero{padding-top:44px}.studio-hero-grid,[data-composition=c] .studio-hero-grid{grid-template-columns:1fr;gap:44px}.studio-hero h1,[data-composition=c] .studio-hero h1{max-width:580px;font-size:clamp(2.75rem,1rem + 8.5vw,4.25rem)}.studio-hero-name{font-size:1rem}.studio-hero-name span{font-size:.75rem}.studio-hero-description{font-size:.9375rem}.studio-actions{gap:22px}.studio-hero-foot{margin-top:38px;font-size:.75rem}.studio-hero-foot>span{max-width:155px}.system-studio{justify-self:center;width:100%;max-width:520px;transform:none}.system-model{height:200px}[data-composition=c] .system-studio{padding:25px}[data-composition=c] .system-model{height:235px}.studio-section-heading{margin-bottom:28px;display:block}.studio-section-heading>p{margin-top:22px}.studio-split,.studio-contact{grid-template-columns:1fr;gap:40px}.studio-approach .studio-lede{max-width:55ch}.studio-closing{flex-direction:column;align-items:start;gap:28px}.studio-footer-main{flex-direction:column;gap:36px}.studio-footer-bottom{flex-wrap:wrap;gap:16px}.studio-footer-bottom nav{width:100%}.studio-page-intro{padding-block:48px 36px}.studio-contact{padding-bottom:64px}.studio-project-grid,[data-composition=c] .studio-project-grid{grid-template-columns:1fr;gap:38px;display:grid}[data-composition=a] .studio-project{grid-template-columns:1fr;gap:22px;padding-block:24px}[data-composition=a] .project-art{height:230px}[data-composition=b] .studio-project{grid-template-columns:1fr;width:100%;padding:16px}[data-composition=b] .studio-project-image{grid-row:auto}[data-composition=b] .studio-project:nth-child(2){align-self:auto}[data-composition=b] .studio-project-meta{margin-top:20px}[data-composition=c] .studio-project:last-child{grid-column:auto;display:block}.studio-case{padding-block:48px}.studio-case-head,.studio-case-body{grid-template-columns:1fr;gap:28px}.studio-case-head .project-art{height:280px}.studio-case-flow ol{grid-template-columns:1fr;gap:20px}.studio-case-flow li svg{transform:rotate(90deg)}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}::view-transition-old(root){animation:none!important}::view-transition-new(root){animation:none!important}}[data-composition=b] .studio-page-intro{text-align:center}[data-composition=b] .studio-page-intro>*{margin-inline:auto}[data-composition=b] .studio-page-intro .studio-split{text-align:left}[data-composition=c] .studio-page-intro{background:var(--studio-blue);color:var(--color-accent);border-radius:12px;margin-top:32px;margin-bottom:48px;padding-inline:40px}[data-composition=c] .studio-page-intro .studio-lede,[data-composition=c] .studio-page-intro p{color:var(--color-accent);opacity:.85}[data-composition=c] .studio-case-body{grid-template-columns:.8fr 1.2fr 1fr}@media (width<=700px){[data-composition=c] .studio-page-intro{padding-inline:24px}[data-composition=c] .studio-case-body{grid-template-columns:1fr}}.studio-hero{isolation:isolate;position:relative}.studio-hero>.studio-container{position:relative}[data-composition=a] .studio-hero:before{content:"";z-index:-1;background:var(--studio-paper);clip-path:polygon(86% 0,100% 0,100% 100%,47% 100%);position:absolute;inset:0}.system-studio,[data-composition=b] .system-studio{background:0 0;border-radius:0;padding:0;transform:none}.system-studio:hover{transform:none}.system-model{height:265px;margin:0 0 30px}.system-node{border:0;border-radius:0;width:86px;height:86px}[data-composition=a] .studio-hero-foot{background:var(--studio-blue);margin-inline:-24px;padding-inline:24px}[data-composition=b] .system-studio{padding-inline:20px}.studio-rail-nav{display:none}[data-composition=c] .studio-rail-nav{border-bottom:1px solid var(--color-border);flex-direction:column;align-items:start;gap:12px;margin-bottom:32px;padding-bottom:28px;font-size:.875rem;display:flex}[data-composition=c] .studio-rail-nav a{align-items:center;min-height:44px;text-decoration:none;display:inline-flex}[data-composition=c] .studio-rail-nav a:hover{text-underline-offset:5px;text-decoration:underline}[data-composition=c] .studio-hero{padding-top:32px}[data-composition=c] .studio-hero-copy{padding-block:10px}[data-composition=c] .studio-hero h1{font-size:clamp(2.375rem,1rem + 2.4vw,3.125rem)}[data-composition=c] .system-studio{border-radius:0;flex-direction:column;justify-content:center;align-self:stretch;padding:35px;display:flex}[data-composition=c] .system-model{height:355px;margin:0 0 30px}[data-composition=c] .system-connections,[data-composition=c] .system-node{display:none}@media (width<=700px){[data-composition=a] .studio-hero:before{clip-path:polygon(100% 51%,100% 100%,0 100%,0 88%)}[data-composition=a] .system-studio{background:var(--studio-paper);border-radius:8px;padding:24px 20px 18px}.system-model{height:205px;margin-bottom:20px}[data-composition=b] .system-studio{padding-inline:0}[data-composition=c] .studio-rail-nav{flex-direction:row;gap:25px;margin-bottom:24px;padding-bottom:16px}[data-composition=c] .studio-hero h1{font-size:clamp(2.75rem,1rem + 8.5vw,4.25rem)}[data-composition=c] .system-model{height:265px}[data-composition=c] .system-studio{padding:24px}}.mode-toggle{color:var(--color-text)}@media (prefers-reduced-motion:no-preference){.system-connections>path:first-child{stroke-dasharray:600;animation:.7s cubic-bezier(.16,1,.3,1) both studio-draw}}@keyframes studio-draw{0%{stroke-dashoffset:600px}to{stroke-dashoffset:0}}@keyframes studio-node-select{0%{scale:.94}to{scale:1}}@keyframes studio-plane-reveal{0%{clip-path:inset(0 0 100%)}to{clip-path:inset(0)}}.project-art .project-workflow{width:100%;height:100%;display:block}.project-workflow text{font-family:Space Grotesk,sans-serif;font-weight:500}.project-art:has(.project-workflow){background:var(--art-wash)}.studio-project-image:focus-visible{outline:3px solid var(--color-primary);outline-offset:5px}@keyframes workflow-trace{0%{stroke-dashoffset:500px}to{stroke-dashoffset:0}}@media (width<=700px){.composition-choice,.theme-choice{gap:5px;padding-inline:8px}}.engineering-workflow{--workflow-surface:var(--studio-paper);--workflow-text:var(--color-text);--workflow-muted:var(--color-textSecondary);--workflow-line:var(--diagram-line);--workflow-accent:var(--color-primary);color:var(--workflow-text)}[data-composition=a] .engineering-workflow,[data-composition=b] .engineering-workflow{background:var(--workflow-surface);border-radius:12px;padding:28px 24px 20px}[data-composition=b] .engineering-workflow{--workflow-surface:var(--color-surface);--workflow-text:var(--color-text);--workflow-muted:var(--color-textSecondary);--workflow-line:var(--color-border);--workflow-accent:var(--color-primary)}[data-composition=c] .engineering-workflow{--workflow-surface:var(--studio-blue);--workflow-text:var(--studio-on-blue);--workflow-muted:var(--studio-on-blue-muted);--workflow-line:var(--studio-on-blue-line);--workflow-accent:var(--studio-lime);padding:36px 28px}.workflow-intro h2{letter-spacing:-.025em;margin:0;font-size:clamp(1.5rem,.875rem + 1.2vw,2rem);line-height:1.2}.workflow-intro p{color:var(--workflow-muted);margin:10px 0 0;font-size:.875rem}.engineering-workflow .workflow-model{height:auto;margin:28px 0}.workflow-connections{width:100%;height:64px;stroke:var(--workflow-line);stroke-width:1.5px;position:absolute;top:32px;left:0}.workflow-stages{grid-template-columns:repeat(5,minmax(0,1fr));margin:0;padding:0;list-style:none;display:grid;position:relative}.workflow-stage{width:100%;color:var(--workflow-text);cursor:pointer;border-radius:6px;flex-direction:column;align-items:center;gap:8px;padding:4px 0 8px;display:flex}.workflow-number{color:var(--workflow-muted);font-variant-numeric:tabular-nums;font-size:.75rem}.workflow-icon{border:1px solid var(--workflow-line);background:var(--workflow-surface);border-radius:50%;place-items:center;width:56px;height:56px;transition:background-color .18s ease-out,border-color .18s ease-out;display:grid}.workflow-icon svg{stroke-width:1.6px;width:24px;height:24px}.workflow-name{font-size:.8125rem;font-weight:700}.workflow-output{color:var(--workflow-muted);font-size:.75rem}.workflow-stage[aria-pressed=true] .workflow-icon{background:var(--studio-lime);color:var(--studio-ink);border-color:var(--studio-lime)}.workflow-stage[aria-pressed=true] .workflow-number{color:var(--workflow-accent);font-weight:700}.workflow-stage:hover .workflow-icon{border-color:var(--workflow-accent)}.workflow-stage:focus-visible{outline:2px solid var(--workflow-accent);outline-offset:3px}.workflow-detail{border-top:1px solid var(--workflow-line);min-height:210px;padding-top:20px}.workflow-position{color:var(--workflow-accent);justify-content:space-between;font-size:.75rem;font-weight:700;display:flex}.workflow-position>span{font-variant-numeric:tabular-nums;color:var(--workflow-muted);font-weight:400}.workflow-detail h3{letter-spacing:-.02em;margin:12px 0 10px;font-size:1.3125rem;line-height:1.3}.workflow-detail p{color:var(--workflow-muted);text-wrap:pretty;margin:0 0 14px;font-size:.875rem;line-height:1.65}.workflow-tools{color:var(--workflow-accent);font-size:.75rem;line-height:1.6}.workflow-caption{color:var(--workflow-muted);margin:16px 0 0;font-size:.75rem}@media (prefers-reduced-motion:no-preference){.workflow-connections>path{stroke-dasharray:600;animation:.7s cubic-bezier(.16,1,.3,1) both studio-draw}}@media (width<=700px){[data-composition] .engineering-workflow{padding:24px 20px}.workflow-stages{grid-template-columns:1fr;gap:12px}.workflow-connections{display:none}.workflow-stages:before{content:"";border-left:1px solid var(--workflow-line);position:absolute;top:30px;bottom:30px;left:54px}.workflow-stage{text-align:left;grid-template-columns:20px 48px 1fr;column-gap:12px;padding:4px 0;display:grid}.workflow-icon{grid-area:1/2/3;width:46px;height:46px}.workflow-number{grid-area:1/1/3}.workflow-name{grid-column:3;align-self:end;font-size:.9375rem}.workflow-output{grid-column:3;align-self:start;font-size:.75rem}.workflow-detail{min-height:230px}}.workflow-connections-mobile{display:none}.workflow-system{margin-top:20px;padding-top:6px;position:relative}.workflow-system-nodes{display:grid;position:relative}.workflow-system-node{color:var(--workflow-muted);flex-direction:column;align-items:center;gap:8px;font-size:.75rem;display:flex}.workflow-system-icon{background:var(--workflow-surface);border:1px solid var(--workflow-line);width:46px;height:46px;color:var(--workflow-text);border-radius:8px;place-items:center;display:grid}.workflow-system-icon svg{stroke-width:1.6px;width:22px;height:22px}.workflow-system-icon.is-production{color:var(--studio-ink);background:var(--studio-lime);border-color:var(--studio-lime)}.workflow-system-connections{width:100%;height:46px;stroke:var(--workflow-line);stroke-width:1.5px;position:absolute;inset:6px 0 auto}.workflow-signal{stroke:var(--workflow-accent);stroke-width:2.5px;stroke-linecap:round;opacity:0}@media (prefers-reduced-motion:no-preference){.workflow-connections>.workflow-signal,.workflow-connections-mobile>.workflow-signal,.workflow-system-connections .workflow-signal{stroke-dasharray:16 100;animation:.85s cubic-bezier(.16,1,.3,1) both workflow-signal-flow}.workflow-system-connections .workflow-signal-return{animation-delay:.1s}}@keyframes workflow-signal-flow{0%{stroke-dashoffset:100px;opacity:0}12%,80%{opacity:1}to{stroke-dashoffset:-16px;opacity:0}}@media (width<=700px){.workflow-stages:before{content:none}.workflow-connections-mobile{width:2px;height:100%;stroke:var(--workflow-line);stroke-width:1px;display:block;position:absolute;top:0;left:54px;overflow:visible}.workflow-system-node{font-size:.75rem}}:root{--studio-container-max:1280px}@media (width>=1921px){:root{--studio-container-max:84rem;font-size:clamp(1rem,1rem + .21vw - 4.032px,1.875rem)}[data-composition=a] .studio-hero:before{clip-path:polygon(calc(50% + .36 * min(100% - 96px, var(--studio-container-max))) 0, 100% 0, 100% 100%, calc(50% - .03 * min(100% - 96px, var(--studio-container-max))) 100%)}}@media (width>=2560px){:root{--studio-container-max:90rem}}@media (width>=3440px){:root{--studio-container-max:100rem}}@media (width>=5120px){:root{--studio-container-max:110rem}}@media (height<=760px) and (width>=720px){.studio-header-inner{min-height:72px}.studio-hero{padding-top:40px}.studio-hero h1{font-size:clamp(2.75rem,1rem + 3.6vw,4rem)}}.studio-project-contribution{max-width:75ch}@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-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-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-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-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}@property --tw-ease{syntax:"*";inherits:false}@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-scale-x{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-y{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-z{syntax:"*";inherits:false;initial-value:1}@property --tw-duration{syntax:"*";inherits:false}@keyframes spin{to{transform:rotate(360deg)}}.has-consent body{padding-bottom:var(--consent-height,0px)}.has-consent{scroll-padding-bottom:var(--consent-height,0px)}.consent-banner{z-index:40;background:var(--color-surface);max-width:760px;color:var(--color-text);border:1px solid var(--color-border);border-radius:6px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px 24px;margin-inline:auto;padding:16px 20px;display:flex;position:fixed;inset:auto 16px 16px;box-shadow:0 8px 28px #00000024}.consent-banner:focus{outline:none}.consent-banner:focus-visible{outline:3px solid var(--color-focus-ring);outline-offset:2px}.consent-copy{flex:320px;min-width:0}.consent-title{margin:0 0 4px;font-size:1rem;font-weight:500}.consent-copy p{color:var(--color-textSecondary);text-wrap:pretty;max-width:62ch;margin:0;font-size:.875rem;line-height:1.55}.consent-copy a{color:var(--color-primary);text-underline-offset:4px;text-decoration:underline}.consent-actions{flex:none;gap:10px;display:flex}.consent-button{min-height:44px;font:inherit;color:var(--color-text);border:1px solid var(--color-text);cursor:pointer;background:0 0;border-radius:6px;padding:10px 18px;font-weight:500}.consent-button:hover{background:var(--color-borderLight)}.consent-button:focus-visible,.consent-link:focus-visible{outline:3px solid var(--color-focus-ring);outline-offset:3px}@media (width<=520px){.consent-banner{padding:14px;inset:auto 8px 8px}.consent-actions{width:100%}.consent-button{flex:1 1 0}}.consent-link{font:inherit;color:var(--color-primary);text-underline-offset:4px;cursor:pointer;background:0 0;border:0;padding:0;text-decoration:underline;display:inline}.studio-footer-bottom .consent-link{color:inherit;align-items:center;min-height:44px;margin-block:-12px;display:inline-flex}.legal-prose ul{margin:0 0 16px;padding-left:1.25em;list-style:outside}.legal-prose li{margin-bottom:8px;font-size:1.0625rem;line-height:1.7}.auth-ghost-button{min-width:44px;min-height:44px;color:var(--color-primary);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:10px;justify-content:center;align-items:center;padding:0 12px;font-size:.875rem;font-weight:700;transition:background-color .16s;display:inline-flex}.auth-ghost-button:hover,.auth-ghost-button[aria-expanded=true]{background:color-mix(in srgb, var(--color-primary) 10%, transparent)}.auth-ghost-button:focus-visible,.menu-segmented button:focus-visible{outline:2px solid var(--color-focus-ring,var(--color-primary));outline-offset:2px}.auth-ghost-icon{padding:0}.menu-segmented{border:1px solid var(--color-border);background:var(--color-surface);border-radius:10px;gap:2px;padding:3px;display:inline-flex}.menu-segmented button{min-height:44px;color:var(--color-textSecondary);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:7px;justify-content:center;align-items:center;gap:6px;padding:0 12px;font-size:.8125rem;font-weight:500;transition:background-color .16s,color .16s;display:inline-flex}.menu-segmented button[aria-pressed=true]{background:var(--color-primary);color:var(--color-accent)}@media (height<=760px){.menu-fineprint{display:none}}.page-skeleton{min-height:70dvh}.skeleton-bar{background:color-mix(in srgb, var(--color-border) 70%, transparent);border-radius:6px;display:block}.skeleton-bar--title{width:min(520px,70%);height:clamp(40px,5vw,64px);margin-bottom:28px}.skeleton-bar--line{width:min(640px,90%);height:18px;margin-bottom:12px}@media (prefers-reduced-motion:no-preference){.skeleton-bar{animation:1.4s ease-in-out infinite skeleton-pulse}}@keyframes skeleton-pulse{50%{opacity:.55}}.resume-page{padding-bottom:96px}.resume-actions{flex-wrap:wrap;gap:12px;margin-bottom:24px;display:flex}.resume-actions .studio-button,.resume-actions .studio-button-secondary{gap:12px}.resume-frame{border:1px solid var(--color-border);background:var(--color-surface);border-radius:6px;width:100%;height:78dvh;min-height:520px;display:block}.resume-note{max-width:52ch;color:var(--color-textSecondary);margin:0;display:none}.resume-panel{border:1px solid var(--color-border);background:var(--color-surface);max-width:640px;color:var(--color-text);border-radius:6px;align-items:flex-start;gap:16px;padding:24px;display:flex}.resume-panel>svg{color:var(--color-primary);flex:none;margin-top:2px}.resume-panel--error>svg{color:var(--color-error)}.resume-panel p{margin:0 0 16px;line-height:1.6}.resume-loading{position:relative}.resume-loading .resume-status{color:var(--color-textSecondary);align-items:center;gap:10px;margin:0 0 20px;display:flex}.resume-loading .skeleton-bar--frame{width:100%;height:78dvh;min-height:520px}@media (width<=719px){.resume-frame,.resume-loading .skeleton-bar--frame{display:none}.resume-note{display:block}.resume-actions .studio-button,.resume-actions .studio-button-secondary{flex:100%}}@media (prefers-reduced-motion:no-preference){.resume-spinner{animation:1s linear infinite resume-spin}}@keyframes resume-spin{to{transform:rotate(360deg)}}.studio-rule{border-top:1px solid var(--color-border)}.page-title-2{margin:0;font-size:clamp(1.75rem,1rem + 2.1vw,2.5rem);font-weight:500}.page-title-3{margin:40px 0 12px;font-size:1.5rem;font-weight:500}.page-copy{max-width:68ch;color:var(--color-textSecondary);text-wrap:pretty;margin:0;font-size:1.125rem;line-height:1.7}.page-small{color:var(--color-textSecondary);margin:0;font-size:.875rem}.page-head-row{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px 24px;margin-bottom:32px;display:flex}.page-actions{flex-wrap:wrap;align-items:center;gap:12px 24px;display:flex}.studio-button--sm{gap:10px;min-height:44px;padding:8px 18px}.studio-button--danger{background:var(--color-error);color:var(--color-accent)}.studio-button-secondary:disabled{opacity:.55;cursor:not-allowed}.studio-button-secondary:focus-visible{outline:3px solid var(--color-focus-ring);outline-offset:3px}.page-panel{border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text);border-radius:6px;padding:clamp(20px,3vw,32px)}.page-panel--danger{border-color:color-mix(in srgb, var(--color-error) 55%, var(--color-border))}.panel-title{align-items:center;gap:10px;margin:0 0 24px;font-size:1.375rem;font-weight:500;display:flex}.panel-title svg{color:var(--color-primary);flex:none}.page-panel--danger .panel-title svg{color:var(--color-error)}.page-notice{border:1px solid var(--notice-color,var(--color-border));background:color-mix(in srgb, var(--notice-color,var(--color-primary)) 9%, var(--color-surface));color:var(--color-text);border-radius:6px;align-items:flex-start;gap:12px;margin:0 0 24px;padding:14px 16px;font-size:.9375rem;line-height:1.5;display:flex}.page-notice>svg{color:var(--notice-color,var(--color-primary));flex:none;margin-top:1px}.page-notice>:not(svg):not(button){flex:1;min-width:0}.page-notice--error{--notice-color:var(--color-error)}.page-notice--success{--notice-color:var(--color-success)}.page-notice--warning{--notice-color:var(--color-warning)}.link-button{color:var(--color-primary);text-underline-offset:4px;background:0 0;border:0;padding:8px 4px;font-weight:500;text-decoration:underline}.field{align-content:start;gap:8px;min-width:0;display:grid}.field-label{color:var(--color-text);font-size:.9375rem;font-weight:500}.field-label small{font-size:inherit;color:var(--color-textSecondary);font-weight:400}.field-req{color:var(--color-error)}.field-input,.studio-contact form input:not([type=checkbox]),.studio-contact form textarea{border:1px solid var(--color-border);background:var(--color-background);width:100%;min-height:48px;color:var(--color-text);box-shadow:none;border-radius:6px;padding:10px 14px;font-size:1rem;line-height:1.5;display:block}.field-input::placeholder,.studio-contact form ::placeholder{color:var(--color-textSecondary);opacity:.8}textarea.field-input,.studio-contact form textarea{resize:vertical;min-height:160px}.field-input:hover:not(:disabled){border-color:var(--color-textSecondary)}.field-input:disabled{cursor:not-allowed;opacity:.7}.field-input[aria-invalid=true],.studio-contact form [aria-invalid=true]{border-color:var(--color-error)}.field-input:focus-visible,.studio-contact form input:focus-visible,.studio-contact form textarea:focus-visible{outline:3px solid var(--color-focus-ring);outline-offset:2px;box-shadow:none}.field-input--code{white-space:pre;min-height:65dvh;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.875rem;line-height:1.6;overflow:auto}.field-hint{color:var(--color-textSecondary);margin:0;font-size:.875rem;line-height:1.5}.field-error{color:var(--color-error);align-items:center;gap:6px;margin:0;font-size:.875rem;font-weight:500;display:flex}.field-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;display:grid}.field-stack{gap:24px;display:grid}.field-lock{position:relative}.field-lock>svg{color:var(--color-textSecondary);position:absolute;top:16px;right:14px}.field-lock .field-input{padding-right:40px}.kbd{border:1px solid var(--color-border);border-radius:4px;padding:2px 6px;font-size:.75rem}.about-name{margin:0;font-size:1.5rem;font-weight:500}.about-role{color:var(--color-primary);margin:8px 0 0}.about-meta{color:var(--color-textSecondary);margin:8px 0 0}.about-intro-split{margin-top:40px}.about-prose>.studio-link{margin-top:16px}.about-prose .page-title-3:first-of-type{margin-top:40px}.legal-page>.studio-container>nav{padding-top:32px}.legal-page .studio-page-intro{padding-block:32px 24px}.legal-prose{padding-bottom:clamp(64px,7vw,96px)}.legal-prose p{color:var(--color-text);-webkit-hyphens:manual;hyphens:manual;text-wrap:pretty;margin:0 0 16px;font-size:1.0625rem;line-height:1.75}.legal-prose h2{margin:44px 0 12px;font-size:1.5rem;font-weight:500}.legal-prose a{color:var(--color-primary);text-underline-offset:4px;text-decoration:underline}.legal-prose>:first-child{margin-top:0}.studio-page .studio-contact form{box-shadow:none;border-radius:6px;padding:clamp(20px,3vw,32px)}.studio-contact form h2{font-size:clamp(1.5rem,.875rem + 1.4vw,1.875rem);font-weight:500}.studio-contact form label,.studio-contact form span.text-sm{font-weight:500}.studio-contact form .font-mono{opacity:1;font-family:inherit;font-size:.8125rem}.studio-contact form button[type=submit]{box-shadow:none;border-radius:6px;font-weight:500}.contact-aside h2{margin:0 0 20px;font-size:clamp(1.75rem,1rem + 2.1vw,2.5rem);font-weight:500}.contact-methods{gap:24px;margin-top:40px;display:grid}.contact-methods dt{color:var(--color-textSecondary);margin-bottom:4px;font-size:.875rem}.contact-methods dd{overflow-wrap:anywhere;margin:0}.contact-main{gap:24px;min-width:0;display:grid}.contact-main .page-notice{margin:0}.notice-body{gap:12px;display:grid}.notice-actions{flex-wrap:wrap;gap:8px 12px;display:flex}.contact-success{gap:24px;display:grid}.contact-success h2{margin:0 0 8px;font-size:clamp(1.5rem,.875rem + 1.4vw,1.875rem);font-weight:500}.contact-success>svg{color:var(--color-success)}.contact-recap{border:1px solid var(--color-border);background:var(--color-background);border-radius:6px;margin:0;padding:16px;font-size:.9375rem}.contact-recap p{margin:0}.contact-recap p+p{margin-top:8px}.error-page{align-items:center;min-height:70dvh;display:flex}.error-page .studio-page-intro{padding-block:64px}.error-code{color:var(--color-error);letter-spacing:.02em;align-items:center;gap:12px;margin:0 0 16px;font-size:1.25rem;font-weight:500;display:flex}.error-countdown{max-width:360px;margin-top:32px}.error-countdown p{color:var(--color-textSecondary);margin:0 0 12px}.error-track{background:var(--color-border);border-radius:2px;height:4px;overflow:hidden}.error-track>span{background:var(--color-primary);height:100%;display:block}.ops-page{padding-bottom:clamp(64px,7vw,96px)}.ops-page .studio-page-intro{padding-block:40px 32px}.ops-page .studio-page-heading{margin-bottom:16px;font-size:clamp(2rem,1rem + 2.9vw,3rem)}.ops-column{max-width:880px}.ops-back{margin:0 0 16px;display:inline-flex}.ops-identity{flex-wrap:wrap;align-items:center;gap:8px 12px;display:flex}.ops-identity .page-small{overflow-wrap:anywhere}.ops-badge{border:1px solid;border-radius:4px;align-items:center;gap:6px;padding:3px 10px;font-size:.8125rem;font-weight:500;display:inline-flex}.ops-badge--ok{color:var(--color-success)}.ops-badge--role{color:var(--color-primary)}.ops-stack{gap:24px;display:grid}.ops-actions{border-top:1px solid var(--color-border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px 24px;padding-top:24px;display:flex}.ops-loading{color:var(--color-textSecondary);align-items:center;gap:12px;display:flex}.ops-danger{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px 24px;display:flex}.ops-danger p{max-width:56ch;margin:0}.ops-list{border:1px solid var(--color-border);background:var(--color-surface);border-radius:6px;margin:0;padding:0;list-style:none}.ops-list>li{gap:8px;padding:20px clamp(16px,2.5vw,24px);display:grid}.ops-list>li+li{border-top:1px solid var(--color-border)}.ops-row-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:4px 16px;display:flex}.ops-row-head h2{margin:0;font-size:1.25rem;font-weight:500}.ops-row-head time{color:var(--color-textSecondary);font-variant-numeric:tabular-nums;font-size:.875rem}.ops-message{white-space:pre-wrap;overflow-wrap:anywhere;max-width:68ch;margin:0}.ops-row-actions{margin-top:4px}.ops-pager{gap:12px;margin-top:24px;display:flex}.ops-empty{color:var(--color-textSecondary);margin:0;padding:32px 0}.ops-toolbar{flex-wrap:wrap;gap:12px;margin-top:24px;display:flex}@media (width<=719px){.field-grid{grid-template-columns:minmax(0,1fr)}.studio-button--sm{flex:auto}.ops-actions .studio-button,.ops-toolbar .studio-button,.ops-toolbar .studio-button-secondary{flex:100%}.page-copy{font-size:1.0625rem}}@media (prefers-reduced-motion:no-preference){.ops-spinner{animation:1s linear infinite resume-spin}}.page-lede-gap{margin-bottom:32px}.ops-danger-zone{margin-top:48px}.studio-proof{border-top:1px solid var(--color-border);padding-block:clamp(48px,5vw,80px)}.studio-proof-employers{grid-template-columns:1fr 1.6fr;align-items:start;gap:clamp(32px,6vw,96px);display:grid}.studio-proof h2{margin-bottom:8px;font-size:clamp(1.75rem,1rem + 1.9vw,2.5rem);font-weight:500}.employer-timeline{margin:0;padding:0;list-style:none}.employer-timeline li{border-top:1px solid var(--color-border);grid-template-columns:15rem minmax(0,1fr) minmax(0,1fr);align-items:baseline;gap:4px 20px;padding-block:14px;font-size:.9375rem;display:grid}.employer-timeline li:first-child{border-top:0;padding-top:0}.employer-dates{color:var(--color-primary);font-variant-numeric:tabular-nums;font-size:.875rem}.employer-name{font-weight:700}.employer-title{color:var(--color-textSecondary)}.studio-proof-tools{flex-wrap:wrap;align-items:baseline;gap:12px 28px;margin-top:clamp(32px,4vw,56px);display:flex}.studio-proof-tools h3{font-size:1rem;font-weight:700}.studio-proof-tools ul{flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none;display:flex}.studio-proof-tools li{border:1px solid var(--color-border);color:var(--color-textSecondary);border-radius:20px;padding:4px 12px;font-size:.875rem}.studio-approach .studio-principles span,.studio-project-stack{font-size:.8125rem}.studio-principles p{text-wrap:pretty;max-width:62ch}@media (width<=900px){.studio-proof-employers{grid-template-columns:1fr;gap:24px}}@media (width<=560px){.employer-timeline li{grid-template-columns:1fr;gap:2px}}html:has(.studio-case-nav){scroll-padding-top:180px}.studio-case{scroll-margin-top:0}.studio-case-nav{z-index:30;background:var(--color-background);border-bottom:1px solid var(--color-border);scrollbar-width:thin;flex-wrap:nowrap;margin:0 0 24px;padding-block:12px;position:sticky;top:89px;overflow-x:auto}.studio-case-nav a{white-space:nowrap;flex:none;font-size:.9375rem}.studio-case-nav a[aria-current]{background:var(--color-primary);border-color:var(--color-primary);color:var(--color-background)}.work-note{max-width:62ch;color:var(--color-textSecondary);text-wrap:pretty;margin-top:24px;font-size:.9375rem;line-height:1.6}.work-stack{color:var(--color-textSecondary);font-size:.9375rem}.studio-case-body p,.studio-case-flow li{text-wrap:pretty;font-size:1rem}@media (width<=700px){.studio-case-nav{top:77px}html:has(.studio-case-nav){scroll-padding-top:160px}}.about-aside{align-self:start;position:sticky;top:112px}.about-toc{flex-direction:column;margin:20px 0 12px;display:flex}.about-toc a{min-height:44px;color:var(--color-textSecondary);border-top:1px solid var(--color-border);align-items:center;padding-block:10px;font-size:.9375rem;text-decoration:none;display:flex}.about-toc a:hover{color:var(--color-primary)}.about-aside-note{color:var(--color-textSecondary);margin:4px 0 0;font-size:.875rem}@media (width<=900px){.about-aside{position:static}.about-toc{display:none}}:root[data-route-transition] #main-content{view-transition-name:page}#main-content:focus{outline:none}::view-transition-group(page){animation-duration:.22s}.pa-art{--pa-bg:var(--art-wash);--pa-card:#f9fbff;--pa-text:#17243c;--pa-muted:#52617c;--pa-line:#8a9ab8;--pa-blue:#244ce4;--pa-flow:#244ce4;--pa-lime:#dce99b;--pa-on-lime:#17243c}:root[data-theme=midnight] .pa-art{--pa-bg:#101a2e;--pa-card:#1f2f4d;--pa-text:#f3f5fa;--pa-muted:#c8d1e3;--pa-line:#6c7d9c;--pa-blue:#3a5be8;--pa-flow:#8da3f5}.project-art.pa-art:has(.pa){background:var(--pa-bg)}.pa{width:100%;height:100%;font-family:Space Grotesk,sans-serif;font-weight:500;display:block}.pa text{font-size:13px;font-weight:500}.pa .pa-kicker,.pa .pa-caption{letter-spacing:.04em}.pa-card{fill:var(--pa-card);stroke:var(--pa-line);stroke-width:2px}.pa-blue{fill:var(--pa-blue)}.pa-lime{fill:var(--pa-lime)}.pa-dot{fill:var(--pa-line)}.pa-line,.pa-rule,.pa-on-blue-line,.pa-flow,.pa-tick{fill:none;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round}.pa-line,.pa-rule{stroke:var(--pa-line)}.pa-dash{stroke-dasharray:4 5}.pa-on-blue-line{stroke:#e0e7ff}.pa-tick{stroke:#17243c;stroke-width:3px}.pa-flow{stroke:var(--pa-flow);stroke-width:2.5px}.pa .pa-text{fill:var(--pa-text)}.pa .pa-muted{fill:var(--pa-muted)}.pa .pa-on-blue{fill:#fff}.pa .pa-on-lime{fill:var(--pa-on-lime)}@media (prefers-reduced-motion:no-preference){.project-art:hover .pa-route,.studio-project-image:focus-visible .pa-route{stroke-dasharray:300;animation:.65s ease-out both pa-trace}}@keyframes pa-trace{0%{stroke-dashoffset:300px}to{stroke-dashoffset:0}}.project-intro{padding-bottom:32px}.project-meta{flex-wrap:wrap;gap:12px 40px;margin-top:28px;display:flex}.project-meta dt{color:var(--color-textSecondary);font-size:.75rem;font-weight:500}.project-meta dd{overflow-wrap:anywhere;margin:4px 0 0;font-weight:500}.project-stack{flex-wrap:wrap;gap:8px;margin:20px 0 0;padding:0;list-style:none;display:flex}.project-stack li{border:1px solid var(--color-border);color:var(--color-textSecondary);border-radius:24px;padding:6px 14px;font-size:.8125rem;font-weight:500}.project-figure{margin:16px 0 0}.project-figure .project-art{border-radius:12px;height:clamp(240px,34vw,420px)}.project-figure figcaption{color:var(--color-textSecondary);margin-top:12px;font-size:.75rem}.project-body{border-bottom:1px solid var(--color-border);grid-template-columns:repeat(3,minmax(0,1fr));gap:40px;padding-block:64px;display:grid}.project-body h2,.project-related h2{margin-bottom:16px;font-size:1.5rem;font-weight:500}.project-body p{color:var(--color-textSecondary);text-wrap:pretty;font-size:1rem;line-height:1.75}.project-related{padding-block:56px}.project-related ul{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin:0;padding:0;list-style:none;display:grid}.project-related a{border:1px solid var(--color-border);background:var(--color-surface);height:100%;color:inherit;transition:transform .25s var(--studio-ease);border-radius:10px;gap:6px;padding:24px;text-decoration:none;display:grid}.project-related a:hover{transform:translateY(-3px)}.project-related a:focus-visible{outline:2px solid var(--color-primary);outline-offset:3px}.project-related-org{color:var(--color-textSecondary);font-size:.75rem;font-weight:500}.project-related-name{color:var(--color-primary);font-size:1.25rem;font-weight:500}.project-related-summary{color:var(--color-textSecondary);text-wrap:pretty;font-size:.9375rem;line-height:1.6}.project-related a svg{color:var(--color-primary);margin-top:6px}.project-cta{flex-wrap:wrap;gap:12px;display:flex}.studio-case-more{margin-top:24px}@media (width<=900px){.project-body,.project-related ul{grid-template-columns:minmax(0,1fr)}.project-body{gap:32px;padding-block:48px}}
