@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-scale-x:1;--tw-scale-y:1;--tw-scale-z:1;--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-space-x-reverse:0;--tw-border-style:solid;--tw-gradient-position:initial;--tw-gradient-from:#0000;--tw-gradient-via:#0000;--tw-gradient-to:#0000;--tw-gradient-stops:initial;--tw-gradient-via-stops:initial;--tw-gradient-from-position:0%;--tw-gradient-via-position:50%;--tw-gradient-to-position:100%;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-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-duration:initial;--tw-ease: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-red-400:#ff6568;--color-red-500:#fb2c36;--color-red-600:#e40014;--color-green-400:#05df72;--color-green-500:#00c758;--color-green-600:#00a544;--color-cyan-400:#00d2ef;--color-blue-50:#eff6ff;--color-blue-100:#dbeafe;--color-blue-200:#bedbff;--color-blue-300:#90c5ff;--color-blue-400:#54a2ff;--color-blue-500:#3080ff;--color-blue-600:#155dfc;--color-blue-700:#1447e6;--color-blue-800:#193cb8;--color-gray-50:#f9fafb;--color-gray-100:#f3f4f6;--color-gray-200:#e5e7eb;--color-gray-300:#d1d5dc;--color-gray-400:#99a1af;--color-gray-500:#6a7282;--color-gray-600:#4a5565;--color-gray-700:#364153;--color-gray-800:#1e2939;--color-gray-900:#101828;--color-gray-950:#030712;--color-black:#000;--color-white:#fff;--spacing:.25rem;--container-sm:24rem;--container-xl:36rem;--container-2xl:42rem;--container-3xl:48rem;--container-5xl:64rem;--container-6xl:72rem;--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);--text-4xl:2.25rem;--text-4xl--line-height:calc(2.5 / 2.25);--text-5xl:3rem;--text-5xl--line-height:1;--text-6xl:3.75rem;--text-6xl--line-height:1;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--tracking-tight:-.025em;--tracking-wide:.025em;--tracking-wider:.05em;--tracking-widest:.1em;--leading-tight:1.25;--leading-snug:1.375;--leading-relaxed:1.625;--radius-lg:.5rem;--radius-xl:.75rem;--radius-2xl:1rem;--ease-out:cubic-bezier(0, 0, .2, 1);--animate-spin:spin 1s linear infinite;--blur-sm:8px;--blur-3xl:64px;--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)}@supports (color:lab(0% 0 0)){:root,:host{--color-red-400:lab(63.7053% 60.745 31.3109);--color-red-500:lab(55.4814% 75.0732 48.8528);--color-red-600:lab(48.4493% 77.4328 61.5452);--color-green-400:lab(78.503% -64.9265 39.7492);--color-green-500:lab(70.5521% -66.5147 45.8073);--color-green-600:lab(59.0978% -58.6621 41.2579);--color-cyan-400:lab(76.6045% -40.9406 -29.6231);--color-blue-50:lab(96.492% -1.14644 -5.11479);--color-blue-100:lab(92.0301% -2.24757 -11.6453);--color-blue-200:lab(86.15% -4.04379 -21.0797);--color-blue-300:lab(77.5052% -6.4629 -36.42);--color-blue-400:lab(65.0361% -1.42065 -56.9802);--color-blue-500:lab(54.1736% 13.3369 -74.6839);--color-blue-600:lab(44.0605% 29.0279 -86.0352);--color-blue-700:lab(36.9089% 35.0961 -85.6872);--color-blue-800:lab(30.2514% 27.7853 -70.2699);--color-gray-50:lab(98.2596% -.247031 -.706708);--color-gray-100:lab(96.1596% -.0823438 -1.13575);--color-gray-200:lab(91.6229% -.159115 -2.26791);--color-gray-300:lab(85.1236% -.612259 -3.7138);--color-gray-400:lab(65.9269% -.832707 -8.17473);--color-gray-500:lab(47.7841% -.393182 -10.0268);--color-gray-600:lab(35.6337% -1.58697 -10.8425);--color-gray-700:lab(27.1134% -.956401 -12.3224);--color-gray-800:lab(16.1051% -1.18239 -11.7533);--color-gray-900:lab(8.11897% .811279 -12.254);--color-gray-950:lab(1.90334% .278696 -5.48866)}}}@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{.pointer-events-none{pointer-events:none}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.inset-0{inset:0}.inset-x-0{inset-inline:0}.-top-24{top:calc(var(--spacing) * -24)}.top-0{top:0}.top-4{top:calc(var(--spacing) * 4)}.-right-24{right:calc(var(--spacing) * -24)}.-bottom-1{bottom:calc(var(--spacing) * -1)}.-bottom-24{bottom:calc(var(--spacing) * -24)}.bottom-4{bottom:calc(var(--spacing) * 4)}.-left-24{left:calc(var(--spacing) * -24)}.left-1\/2{left:50%}.left-\[22px\]{left:22px}.isolate{isolation:isolate}.z-10{z-index:10}.z-40{z-index:40}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.mx-auto{margin-inline:auto}.my-4{margin-block:calc(var(--spacing) * 4)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mt-5{margin-top:calc(var(--spacing) * 5)}.mt-8{margin-top:calc(var(--spacing) * 8)}.mt-10{margin-top:calc(var(--spacing) * 10)}.mt-12{margin-top:calc(var(--spacing) * 12)}.mt-14{margin-top:calc(var(--spacing) * 14)}.mb-1{margin-bottom:var(--spacing)}.mb-2{margin-bottom:calc(var(--spacing) * 2)}.mb-3{margin-bottom:calc(var(--spacing) * 3)}.mb-4{margin-bottom:calc(var(--spacing) * 4)}.mb-5{margin-bottom:calc(var(--spacing) * 5)}.mb-6{margin-bottom:calc(var(--spacing) * 6)}.mb-8{margin-bottom:calc(var(--spacing) * 8)}.mb-10{margin-bottom:calc(var(--spacing) * 10)}.mb-12{margin-bottom:calc(var(--spacing) * 12)}.mb-14{margin-bottom:calc(var(--spacing) * 14)}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.h-1{height:var(--spacing)}.h-2{height:calc(var(--spacing) * 2)}.h-4{height:calc(var(--spacing) * 4)}.h-5{height:calc(var(--spacing) * 5)}.h-6{height:calc(var(--spacing) * 6)}.h-7{height:calc(var(--spacing) * 7)}.h-10{height:calc(var(--spacing) * 10)}.h-11{height:calc(var(--spacing) * 11)}.h-12{height:calc(var(--spacing) * 12)}.h-48{height:calc(var(--spacing) * 48)}.h-55{height:calc(var(--spacing) * 55)}.h-56{height:calc(var(--spacing) * 56)}.h-64{height:calc(var(--spacing) * 64)}.h-72{height:calc(var(--spacing) * 72)}.h-full{height:100%}.h-px{height:1px}.max-h-96{max-height:calc(var(--spacing) * 96)}.min-h-screen{min-height:100vh}.w-2{width:calc(var(--spacing) * 2)}.w-3\/4{width:75%}.w-4{width:calc(var(--spacing) * 4)}.w-5{width:calc(var(--spacing) * 5)}.w-6{width:calc(var(--spacing) * 6)}.w-7{width:calc(var(--spacing) * 7)}.w-10{width:calc(var(--spacing) * 10)}.w-11{width:calc(var(--spacing) * 11)}.w-12{width:calc(var(--spacing) * 12)}.w-64{width:calc(var(--spacing) * 64)}.w-72{width:calc(var(--spacing) * 72)}.w-full{width:100%}.w-px{width:1px}.max-w-2xl{max-width:var(--container-2xl)}.max-w-3xl{max-width:var(--container-3xl)}.max-w-5xl{max-width:var(--container-5xl)}.max-w-6xl{max-width:var(--container-6xl)}.max-w-none{max-width:none}.max-w-sm{max-width:var(--container-sm)}.max-w-xl{max-width:var(--container-xl)}.min-w-0{min-width:0}.flex-1{flex:1}.flex-shrink-0,.shrink-0{flex-shrink:0}.-translate-x-1\/2{--tw-translate-x:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.scale-x-0{--tw-scale-x:0%;scale:var(--tw-scale-x) var(--tw-scale-y)}.rotate-y-180{--tw-rotate-y:rotateY(180deg);transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.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}.resize-y{resize:vertical}.list-decimal{list-style-type:decimal}.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-stretch{align-items:stretch}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.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-8{gap:calc(var(--spacing) * 8)}.gap-12{gap:calc(var(--spacing) * 12)}:where(.space-y-0>:not(:last-child)){--tw-space-y-reverse:0;margin-block:0}: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-4>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 4) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 4) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 5) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 5) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-x-4>:not(:last-child)){--tw-space-x-reverse:0;margin-inline-start:calc(calc(var(--spacing) * 4) * var(--tw-space-x-reverse));margin-inline-end:calc(calc(var(--spacing) * 4) * calc(1 - var(--tw-space-x-reverse)))}:where(.space-x-8>:not(:last-child)){--tw-space-x-reverse:0;margin-inline-start:calc(calc(var(--spacing) * 8) * var(--tw-space-x-reverse));margin-inline-end:calc(calc(var(--spacing) * 8) * calc(1 - var(--tw-space-x-reverse)))}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:var(--radius-2xl)}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:var(--radius-lg)}.rounded-xl{border-radius:var(--radius-xl)}.border{border-style:var(--tw-border-style);border-width:1px}.border-2{border-style:var(--tw-border-style);border-width:2px}.border-4{border-style:var(--tw-border-style);border-width:4px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-l-4{border-left-style:var(--tw-border-style);border-left-width:4px}.border-blue-200{border-color:var(--color-blue-200)}.border-blue-400\/80{border-color:#54a2ffcc}@supports (color:color-mix(in lab, red, red)){.border-blue-400\/80{border-color:color-mix(in oklab, var(--color-blue-400) 80%, transparent)}}.border-blue-500{border-color:var(--color-blue-500)}.border-blue-500\/30{border-color:#3080ff4d}@supports (color:color-mix(in lab, red, red)){.border-blue-500\/30{border-color:color-mix(in oklab, var(--color-blue-500) 30%, transparent)}}.border-blue-500\/40{border-color:#3080ff66}@supports (color:color-mix(in lab, red, red)){.border-blue-500\/40{border-color:color-mix(in oklab, var(--color-blue-500) 40%, transparent)}}.border-blue-600{border-color:var(--color-blue-600)}.border-gray-200{border-color:var(--color-gray-200)}.border-gray-200\/80{border-color:#e5e7ebcc}@supports (color:color-mix(in lab, red, red)){.border-gray-200\/80{border-color:color-mix(in oklab, var(--color-gray-200) 80%, transparent)}}.border-gray-300{border-color:var(--color-gray-300)}.border-gray-700{border-color:var(--color-gray-700)}.border-gray-800{border-color:var(--color-gray-800)}.border-green-500\/30{border-color:#00c7584d}@supports (color:color-mix(in lab, red, red)){.border-green-500\/30{border-color:color-mix(in oklab, var(--color-green-500) 30%, transparent)}}.border-red-500\/30{border-color:#fb2c364d}@supports (color:color-mix(in lab, red, red)){.border-red-500\/30{border-color:color-mix(in oklab, var(--color-red-500) 30%, transparent)}}.border-transparent{border-color:#0000}.bg-black{background-color:var(--color-black)}.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-blue-50{background-color:var(--color-blue-50)}.bg-blue-100{background-color:var(--color-blue-100)}.bg-blue-100\/80{background-color:#dbeafecc}@supports (color:color-mix(in lab, red, red)){.bg-blue-100\/80{background-color:color-mix(in oklab, var(--color-blue-100) 80%, transparent)}}.bg-blue-500{background-color:var(--color-blue-500)}.bg-blue-500\/10{background-color:#3080ff1a}@supports (color:color-mix(in lab, red, red)){.bg-blue-500\/10{background-color:color-mix(in oklab, var(--color-blue-500) 10%, transparent)}}.bg-blue-500\/15{background-color:#3080ff26}@supports (color:color-mix(in lab, red, red)){.bg-blue-500\/15{background-color:color-mix(in oklab, var(--color-blue-500) 15%, transparent)}}.bg-blue-600{background-color:var(--color-blue-600)}.bg-blue-600\/10{background-color:#155dfc1a}@supports (color:color-mix(in lab, red, red)){.bg-blue-600\/10{background-color:color-mix(in oklab, var(--color-blue-600) 10%, transparent)}}.bg-gray-50{background-color:var(--color-gray-50)}.bg-gray-100{background-color:var(--color-gray-100)}.bg-gray-200{background-color:var(--color-gray-200)}.bg-gray-800{background-color:var(--color-gray-800)}.bg-gray-800\/90{background-color:#1e2939e6}@supports (color:color-mix(in lab, red, red)){.bg-gray-800\/90{background-color:color-mix(in oklab, var(--color-gray-800) 90%, transparent)}}.bg-gray-900{background-color:var(--color-gray-900)}.bg-gray-900\/80{background-color:#101828cc}@supports (color:color-mix(in lab, red, red)){.bg-gray-900\/80{background-color:color-mix(in oklab, var(--color-gray-900) 80%, transparent)}}.bg-gray-900\/90{background-color:#101828e6}@supports (color:color-mix(in lab, red, red)){.bg-gray-900\/90{background-color:color-mix(in oklab, var(--color-gray-900) 90%, transparent)}}.bg-gray-950{background-color:var(--color-gray-950)}.bg-gray-950\/90{background-color:#030712e6}@supports (color:color-mix(in lab, red, red)){.bg-gray-950\/90{background-color:color-mix(in oklab, var(--color-gray-950) 90%, transparent)}}.bg-green-500\/10{background-color:#00c7581a}@supports (color:color-mix(in lab, red, red)){.bg-green-500\/10{background-color:color-mix(in oklab, var(--color-green-500) 10%, transparent)}}.bg-red-500\/10{background-color:#fb2c361a}@supports (color:color-mix(in lab, red, red)){.bg-red-500\/10{background-color:color-mix(in oklab, var(--color-red-500) 10%, transparent)}}.bg-transparent{background-color:#0000}.bg-white{background-color:var(--color-white)}.bg-white\/90{background-color:#ffffffe6}@supports (color:color-mix(in lab, red, red)){.bg-white\/90{background-color:color-mix(in oklab, var(--color-white) 90%, transparent)}}.bg-white\/95{background-color:#fffffff2}@supports (color:color-mix(in lab, red, red)){.bg-white\/95{background-color:color-mix(in oklab, var(--color-white) 95%, transparent)}}.bg-gradient-to-b{--tw-gradient-position:to bottom in oklab;background-image:linear-gradient(var(--tw-gradient-stops))}.bg-gradient-to-br{--tw-gradient-position:to bottom right in oklab;background-image:linear-gradient(var(--tw-gradient-stops))}.bg-gradient-to-r{--tw-gradient-position:to right in oklab;background-image:linear-gradient(var(--tw-gradient-stops))}.from-blue-400\/50{--tw-gradient-from:#54a2ff80}@supports (color:color-mix(in lab, red, red)){.from-blue-400\/50{--tw-gradient-from:color-mix(in oklab, var(--color-blue-400) 50%, transparent)}}.from-blue-400\/50{--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.from-blue-500\/10{--tw-gradient-from:#3080ff1a}@supports (color:color-mix(in lab, red, red)){.from-blue-500\/10{--tw-gradient-from:color-mix(in oklab, var(--color-blue-500) 10%, transparent)}}.from-blue-500\/10{--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.from-blue-500\/20{--tw-gradient-from:#3080ff33}@supports (color:color-mix(in lab, red, red)){.from-blue-500\/20{--tw-gradient-from:color-mix(in oklab, var(--color-blue-500) 20%, transparent)}}.from-blue-500\/20{--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.from-blue-500\/50{--tw-gradient-from:#3080ff80}@supports (color:color-mix(in lab, red, red)){.from-blue-500\/50{--tw-gradient-from:color-mix(in oklab, var(--color-blue-500) 50%, transparent)}}.from-blue-500\/50{--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.from-blue-600{--tw-gradient-from:var(--color-blue-600);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.from-gray-100{--tw-gradient-from:var(--color-gray-100);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.from-gray-900{--tw-gradient-from:var(--color-gray-900);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.from-transparent{--tw-gradient-from:transparent;--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.via-blue-400{--tw-gradient-via:var(--color-blue-400);--tw-gradient-via-stops:var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-via) var(--tw-gradient-via-position), var(--tw-gradient-to) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-via-stops)}.via-blue-400\/35{--tw-gradient-via:#54a2ff59}@supports (color:color-mix(in lab, red, red)){.via-blue-400\/35{--tw-gradient-via:color-mix(in oklab, var(--color-blue-400) 35%, transparent)}}.via-blue-400\/35{--tw-gradient-via-stops:var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-via) var(--tw-gradient-via-position), var(--tw-gradient-to) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-via-stops)}.via-blue-500\/40{--tw-gradient-via:#3080ff66}@supports (color:color-mix(in lab, red, red)){.via-blue-500\/40{--tw-gradient-via:color-mix(in oklab, var(--color-blue-500) 40%, transparent)}}.via-blue-500\/40{--tw-gradient-via-stops:var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-via) var(--tw-gradient-via-position), var(--tw-gradient-to) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-via-stops)}.via-blue-500\/60{--tw-gradient-via:#3080ff99}@supports (color:color-mix(in lab, red, red)){.via-blue-500\/60{--tw-gradient-via:color-mix(in oklab, var(--color-blue-500) 60%, transparent)}}.via-blue-500\/60{--tw-gradient-via-stops:var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-via) var(--tw-gradient-via-position), var(--tw-gradient-to) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-via-stops)}.via-blue-600\/30{--tw-gradient-via:#155dfc4d}@supports (color:color-mix(in lab, red, red)){.via-blue-600\/30{--tw-gradient-via:color-mix(in oklab, var(--color-blue-600) 30%, transparent)}}.via-blue-600\/30{--tw-gradient-via-stops:var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-via) var(--tw-gradient-via-position), var(--tw-gradient-to) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-via-stops)}.via-gray-900{--tw-gradient-via:var(--color-gray-900);--tw-gradient-via-stops:var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-via) var(--tw-gradient-via-position), var(--tw-gradient-to) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-via-stops)}.via-white{--tw-gradient-via:var(--color-white);--tw-gradient-via-stops:var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-via) var(--tw-gradient-via-position), var(--tw-gradient-to) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-via-stops)}.to-blue-300\/20{--tw-gradient-to:#90c5ff33}@supports (color:color-mix(in lab, red, red)){.to-blue-300\/20{--tw-gradient-to:color-mix(in oklab, var(--color-blue-300) 20%, transparent)}}.to-blue-300\/20{--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.to-blue-400\/20{--tw-gradient-to:#54a2ff33}@supports (color:color-mix(in lab, red, red)){.to-blue-400\/20{--tw-gradient-to:color-mix(in oklab, var(--color-blue-400) 20%, transparent)}}.to-blue-400\/20{--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.to-blue-500{--tw-gradient-to:var(--color-blue-500);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.to-cyan-400{--tw-gradient-to:var(--color-cyan-400);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.to-gray-50{--tw-gradient-to:var(--color-gray-50);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.to-gray-800{--tw-gradient-to:var(--color-gray-800);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.to-gray-950{--tw-gradient-to:var(--color-gray-950);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.to-transparent{--tw-gradient-to:transparent;--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.object-cover{object-fit:cover}.p-0{padding:0}.p-1{padding:var(--spacing)}.p-2{padding:calc(var(--spacing) * 2)}.p-3{padding:calc(var(--spacing) * 3)}.p-4{padding:calc(var(--spacing) * 4)}.p-5{padding:calc(var(--spacing) * 5)}.p-6{padding:calc(var(--spacing) * 6)}.px-1\.5{padding-inline:calc(var(--spacing) * 1.5)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-2\.5{padding-inline:calc(var(--spacing) * 2.5)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-5{padding-inline:calc(var(--spacing) * 5)}.px-6{padding-inline:calc(var(--spacing) * 6)}.py-0\.5{padding-block:calc(var(--spacing) * .5)}.py-1{padding-block:var(--spacing)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-3{padding-block:calc(var(--spacing) * 3)}.py-3\.5{padding-block:calc(var(--spacing) * 3.5)}.py-4{padding-block:calc(var(--spacing) * 4)}.py-16{padding-block:calc(var(--spacing) * 16)}.py-20{padding-block:calc(var(--spacing) * 20)}.py-24{padding-block:calc(var(--spacing) * 24)}.pt-2{padding-top:calc(var(--spacing) * 2)}.pt-6{padding-top:calc(var(--spacing) * 6)}.pt-16{padding-top:calc(var(--spacing) * 16)}.pt-28{padding-top:calc(var(--spacing) * 28)}.pb-8{padding-bottom:calc(var(--spacing) * 8)}.pb-14{padding-bottom:calc(var(--spacing) * 14)}.pb-20{padding-bottom:calc(var(--spacing) * 20)}.pl-4{padding-left:calc(var(--spacing) * 4)}.text-center{text-align:center}.font-mono{font-family:var(--font-mono)}.font-sans{font-family:var(--font-sans)}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.text-4xl{font-size:var(--text-4xl);line-height:var(--tw-leading,var(--text-4xl--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-\[10px\]{font-size:10px}.text-\[11px\]{font-size:11px}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.leading-snug{--tw-leading:var(--leading-snug);line-height:var(--leading-snug)}.leading-tight{--tw-leading:var(--leading-tight);line-height:var(--leading-tight)}.font-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-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-\[0\.25em\]{--tw-tracking:.25em;letter-spacing:.25em}.tracking-tight{--tw-tracking:var(--tracking-tight);letter-spacing:var(--tracking-tight)}.tracking-wide{--tw-tracking:var(--tracking-wide);letter-spacing:var(--tracking-wide)}.tracking-wider{--tw-tracking:var(--tracking-wider);letter-spacing:var(--tracking-wider)}.tracking-widest{--tw-tracking:var(--tracking-widest);letter-spacing:var(--tracking-widest)}.text-black{color:var(--color-black)}.text-blue-300{color:var(--color-blue-300)}.text-blue-400{color:var(--color-blue-400)}.text-blue-400\/80{color:#54a2ffcc}@supports (color:color-mix(in lab, red, red)){.text-blue-400\/80{color:color-mix(in oklab, var(--color-blue-400) 80%, transparent)}}.text-blue-500{color:var(--color-blue-500)}.text-blue-600{color:var(--color-blue-600)}.text-blue-600\/70{color:#155dfcb3}@supports (color:color-mix(in lab, red, red)){.text-blue-600\/70{color:color-mix(in oklab, var(--color-blue-600) 70%, transparent)}}.text-blue-700{color:var(--color-blue-700)}.text-blue-800{color:var(--color-blue-800)}.text-gray-300{color:var(--color-gray-300)}.text-gray-400{color:var(--color-gray-400)}.text-gray-500{color:var(--color-gray-500)}.text-gray-600{color:var(--color-gray-600)}.text-gray-700{color:var(--color-gray-700)}.text-gray-800{color:var(--color-gray-800)}.text-gray-900{color:var(--color-gray-900)}.text-green-600{color:var(--color-green-600)}.text-red-600{color:var(--color-red-600)}.text-white{color:var(--color-white)}.uppercase{text-transform:uppercase}.italic{font-style:italic}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.placeholder-gray-400::placeholder{color:var(--color-gray-400)}.placeholder-gray-500::placeholder{color:var(--color-gray-500)}.opacity-0{opacity:0}.opacity-25{opacity:.25}.opacity-50{opacity:.5}.opacity-60{opacity:.6}.opacity-70{opacity:.7}.opacity-75{opacity:.75}.opacity-90{opacity:.9}.shadow-lg{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a), 0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-md{--tw-shadow:0 4px 6px -1px var(--tw-shadow-color,#0000001a), 0 2px 4px -2px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-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)}.ring-1{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring-2{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring-blue-100{--tw-ring-color:var(--color-blue-100)}.ring-blue-200\/60{--tw-ring-color:#bedbff99}@supports (color:color-mix(in lab, red, red)){.ring-blue-200\/60{--tw-ring-color:color-mix(in oklab, var(--color-blue-200) 60%, transparent)}}.ring-blue-500\/20{--tw-ring-color:#3080ff33}@supports (color:color-mix(in lab, red, red)){.ring-blue-500\/20{--tw-ring-color:color-mix(in oklab, var(--color-blue-500) 20%, transparent)}}.ring-offset-gray-800{--tw-ring-offset-color:var(--color-gray-800)}.ring-offset-white{--tw-ring-offset-color:var(--color-white)}.blur-3xl{--tw-blur:blur(var(--blur-3xl));filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.backdrop-blur-sm{--tw-backdrop-blur:blur(var(--blur-sm));-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-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-shadow{transition-property:box-shadow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-200{--tw-duration:.2s;transition-duration:.2s}.duration-300{--tw-duration:.3s;transition-duration:.3s}.duration-500{--tw-duration:.5s;transition-duration:.5s}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}.backface-hidden{backface-visibility:hidden}@media (hover:hover){.group-hover\:-translate-y-0\.5:is(:where(.group):hover *){--tw-translate-y:calc(var(--spacing) * -.5);translate:var(--tw-translate-x) var(--tw-translate-y)}.group-hover\:scale-105:is(:where(.group):hover *){--tw-scale-x:105%;--tw-scale-y:105%;--tw-scale-z:105%;scale:var(--tw-scale-x) var(--tw-scale-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-hover\:scale-x-100:is(:where(.group):hover *){--tw-scale-x:100%;scale:var(--tw-scale-x) var(--tw-scale-y)}.group-hover\:rotate-y-0:is(:where(.group):hover *){--tw-rotate-y:rotateY(0deg);transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.group-hover\:rotate-y-180:is(:where(.group):hover *){--tw-rotate-y:rotateY(180deg);transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.group-hover\:border-blue-200:is(:where(.group):hover *){border-color:var(--color-blue-200)}.group-hover\:border-blue-300:is(:where(.group):hover *){border-color:var(--color-blue-300)}.group-hover\:border-blue-500:is(:where(.group):hover *){border-color:var(--color-blue-500)}.group-hover\:border-blue-500\/30:is(:where(.group):hover *){border-color:#3080ff4d}@supports (color:color-mix(in lab, red, red)){.group-hover\:border-blue-500\/30:is(:where(.group):hover *){border-color:color-mix(in oklab, var(--color-blue-500) 30%, transparent)}}.group-hover\:border-blue-600:is(:where(.group):hover *){border-color:var(--color-blue-600)}.group-hover\:text-blue-400:is(:where(.group):hover *){color:var(--color-blue-400)}.group-hover\:text-blue-600:is(:where(.group):hover *){color:var(--color-blue-600)}.group-hover\:text-gray-700:is(:where(.group):hover *){color:var(--color-gray-700)}.group-hover\:opacity-100:is(:where(.group):hover *){opacity:1}.group-hover\:shadow-lg:is(:where(.group):hover *){--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)}.group-hover\:shadow-md:is(:where(.group):hover *){--tw-shadow:0 4px 6px -1px var(--tw-shadow-color,#0000001a), 0 2px 4px -2px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.group-hover\:shadow-xl:is(:where(.group):hover *){--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)}.group-hover\:ring-blue-200:is(:where(.group):hover *){--tw-ring-color:var(--color-blue-200)}.group-hover\:ring-blue-400\/40:is(:where(.group):hover *){--tw-ring-color:#54a2ff66}@supports (color:color-mix(in lab, red, red)){.group-hover\:ring-blue-400\/40:is(:where(.group):hover *){--tw-ring-color:color-mix(in oklab, var(--color-blue-400) 40%, transparent)}}}.last\:pb-0:last-child{padding-bottom:0}@media (hover:hover){.hover\:-translate-y-1:hover{--tw-translate-y:calc(var(--spacing) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.hover\:border-blue-200:hover{border-color:var(--color-blue-200)}.hover\:border-blue-300:hover{border-color:var(--color-blue-300)}.hover\:border-blue-500\/40:hover{border-color:#3080ff66}@supports (color:color-mix(in lab, red, red)){.hover\:border-blue-500\/40:hover{border-color:color-mix(in oklab, var(--color-blue-500) 40%, transparent)}}.hover\:border-blue-500\/50:hover{border-color:#3080ff80}@supports (color:color-mix(in lab, red, red)){.hover\:border-blue-500\/50:hover{border-color:color-mix(in oklab, var(--color-blue-500) 50%, transparent)}}.hover\:bg-blue-50:hover{background-color:var(--color-blue-50)}.hover\:bg-blue-500:hover{background-color:var(--color-blue-500)}.hover\:bg-blue-500\/10:hover{background-color:#3080ff1a}@supports (color:color-mix(in lab, red, red)){.hover\:bg-blue-500\/10:hover{background-color:color-mix(in oklab, var(--color-blue-500) 10%, transparent)}}.hover\:bg-blue-600:hover{background-color:var(--color-blue-600)}.hover\:bg-blue-600\/10:hover{background-color:#155dfc1a}@supports (color:color-mix(in lab, red, red)){.hover\:bg-blue-600\/10:hover{background-color:color-mix(in oklab, var(--color-blue-600) 10%, transparent)}}.hover\:bg-blue-700:hover{background-color:var(--color-blue-700)}.hover\:bg-gray-700:hover{background-color:var(--color-gray-700)}.hover\:from-blue-500:hover{--tw-gradient-from:var(--color-blue-500);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.hover\:to-blue-600:hover{--tw-gradient-to:var(--color-blue-600);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.hover\:text-blue-300:hover{color:var(--color-blue-300)}.hover\:text-blue-400:hover{color:var(--color-blue-400)}.hover\:text-blue-500:hover{color:var(--color-blue-500)}.hover\:text-blue-600:hover{color:var(--color-blue-600)}.hover\:text-white:hover{color:var(--color-white)}.hover\:underline:hover{text-decoration-line:underline}.hover\:shadow-lg:hover{--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)}.hover\:shadow-xl:hover{--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)}.hover\:shadow-blue-500\/5:hover{--tw-shadow-color:#3080ff0d}@supports (color:color-mix(in lab, red, red)){.hover\:shadow-blue-500\/5:hover{--tw-shadow-color:color-mix(in oklab, color-mix(in oklab, var(--color-blue-500) 5%, transparent) var(--tw-shadow-alpha), transparent)}}.hover\:shadow-blue-500\/10:hover{--tw-shadow-color:#3080ff1a}@supports (color:color-mix(in lab, red, red)){.hover\:shadow-blue-500\/10:hover{--tw-shadow-color:color-mix(in oklab, color-mix(in oklab, var(--color-blue-500) 10%, transparent) var(--tw-shadow-alpha), transparent)}}.hover\:shadow-blue-500\/15:hover{--tw-shadow-color:#3080ff26}@supports (color:color-mix(in lab, red, red)){.hover\:shadow-blue-500\/15:hover{--tw-shadow-color:color-mix(in oklab, color-mix(in oklab, var(--color-blue-500) 15%, transparent) var(--tw-shadow-alpha), transparent)}}}.focus\:border-blue-500:focus{border-color:var(--color-blue-500)}.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-blue-500\/30:focus{--tw-ring-color:#3080ff4d}@supports (color:color-mix(in lab, red, red)){.focus\:ring-blue-500\/30:focus{--tw-ring-color:color-mix(in oklab, var(--color-blue-500) 30%, transparent)}}.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-blue-400:focus-visible{--tw-ring-color:var(--color-blue-400)}.focus-visible\:ring-blue-500:focus-visible{--tw-ring-color:var(--color-blue-500)}.focus-visible\:ring-offset-2:focus-visible{--tw-ring-offset-width:2px;--tw-ring-offset-shadow:var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color)}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-60:disabled{opacity:.6}@media (min-width:40rem){.sm\:flex-row{flex-direction:row}.sm\:justify-center{justify-content:center}.sm\:p-8{padding:calc(var(--spacing) * 8)}.sm\:text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}}@media (min-width:48rem){.md\:left-\[26px\]{left:26px}.md\:flex{display:flex}.md\:hidden{display:none}.md\:h-14{height:calc(var(--spacing) * 14)}.md\:h-72{height:calc(var(--spacing) * 72)}.md\:w-14{width:calc(var(--spacing) * 14)}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:gap-8{gap:calc(var(--spacing) * 8)}.md\:p-8{padding:calc(var(--spacing) * 8)}.md\:text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.md\:text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.md\:text-4xl{font-size:var(--text-4xl);line-height:var(--tw-leading,var(--text-4xl--line-height))}.md\:text-5xl{font-size:var(--text-5xl);line-height:var(--tw-leading,var(--text-5xl--line-height))}.md\:text-6xl{font-size:var(--text-6xl);line-height:var(--tw-leading,var(--text-6xl--line-height))}.md\:text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.md\:text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.md\:text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.md\:text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}}@media (min-width:64rem){.lg\:col-span-5{grid-column:span 5/span 5}.lg\:col-span-7{grid-column:span 7/span 7}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:grid-cols-12{grid-template-columns:repeat(12,minmax(0,1fr))}.lg\:flex-row{flex-direction:row}.lg\:gap-10{gap:calc(var(--spacing) * 10)}}@media (prefers-color-scheme:dark){.dark\:border-blue-400{border-color:var(--color-blue-400)}.dark\:bg-blue-400\/10{background-color:#54a2ff1a}@supports (color:color-mix(in lab, red, red)){.dark\:bg-blue-400\/10{background-color:color-mix(in oklab, var(--color-blue-400) 10%, transparent)}}.dark\:bg-blue-500\/15{background-color:#3080ff26}@supports (color:color-mix(in lab, red, red)){.dark\:bg-blue-500\/15{background-color:color-mix(in oklab, var(--color-blue-500) 15%, transparent)}}.dark\:bg-gray-800{background-color:var(--color-gray-800)}.dark\:bg-gray-900{background-color:var(--color-gray-900)}.dark\:text-blue-400{color:var(--color-blue-400)}.dark\:text-green-400{color:var(--color-green-400)}.dark\:text-red-400{color:var(--color-red-400)}@media (hover:hover){.dark\:group-hover\:text-blue-300:is(:where(.group):hover *){color:var(--color-blue-300)}.dark\:group-hover\:text-gray-200:is(:where(.group):hover *){color:var(--color-gray-200)}.dark\:hover\:bg-blue-600:hover{background-color:var(--color-blue-600)}.dark\:hover\:text-blue-300:hover{color:var(--color-blue-300)}.dark\:hover\:text-white:hover{color:var(--color-white)}}}}:root{--bg:#fff;--bg-alt:#f4f7fb;--surface:#fff;--text:#080b10;--muted:#566071;--faint:#778293;--line:#080b1021;--blue:#075ed1;--blue-hi:#004aad;--blue-soft:#eaf3ff;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}[data-theme=dark]{--bg:#050505;--bg-alt:#0a0d12;--surface:#10141c;--text:#f7f9fc;--muted:#a8b0bd;--faint:#727c8b;--line:#ffffff1c;--blue:#3b9cff;--blue-hi:#004aad;--blue-soft:#1677ff1a;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--text);font-family:var(--font-sans),sans-serif;margin:0}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.shell{width:min(1240px,100% - 48px);margin-inline:auto}.skip-link{z-index:100;background:var(--blue);color:#fff;padding:10px 16px;position:fixed;top:8px;left:8px;transform:translateY(-150%)}.skip-link:focus{transform:none}.site-header{z-index:50;border-bottom:1px solid var(--line);background:var(--bg);position:sticky;top:0}@supports (color:color-mix(in lab, red, red)){.site-header{background:color-mix(in srgb,var(--bg) 88%,transparent)}}.site-header{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.nav-wrap{justify-content:space-between;align-items:center;height:72px;display:flex}.wordmark{letter-spacing:-.04em;font-size:1.25rem;font-weight:750}.wordmark span{color:var(--blue)}.nav-links{align-items:center;gap:28px;font-size:.85rem;display:flex}.nav-links>a:not(.nav-cta){color:var(--muted)}.nav-links>a:hover,.nav-links>a:focus-visible{color:var(--blue)}.nav-cta{border:1px solid var(--line);padding:11px 16px;font-weight:600}.nav-actions{gap:8px;display:flex}.icon-button{border:1px solid var(--line);background:var(--bg);width:40px;height:40px;color:var(--text);cursor:pointer;place-items:center;display:grid}.menu-button{display:none}.eyebrow,code,.hero-kicker,.topology,.work-index,.tags,.article-row time,.article-row small{font-family:var(--font-mono),monospace}.eyebrow{color:var(--blue);letter-spacing:.13em;font-size:.74rem;font-weight:600}.hero{padding:54px 0 96px}.hero-kicker{border-bottom:1px solid var(--line);letter-spacing:.1em;color:var(--faint);justify-content:space-between;padding-bottom:18px;font-size:.65rem;display:flex}.hero-grid{grid-template-columns:1.6fr .7fr;align-items:end;gap:8vw;padding:64px 0;display:grid}.hero h1{letter-spacing:-.075em;max-width:1000px;margin:22px 0 36px;font-size:clamp(3.5rem,7.5vw,7.5rem);line-height:.88}.hero-copy{color:var(--muted);max-width:760px;font-size:clamp(1.05rem,1.5vw,1.3rem);line-height:1.65}.actions{flex-wrap:wrap;gap:12px;margin-top:34px;display:flex}.button{border:1px solid var(--line);background:var(--bg);cursor:pointer;justify-content:center;align-items:center;gap:10px;min-height:48px;padding:0 20px;font-weight:650;display:inline-flex}.button.primary{background:var(--blue-hi);border-color:var(--blue-hi);color:#fff}.button:hover{border-color:var(--blue);color:var(--blue)}.button.primary:hover{background:var(--blue);color:#fff}.portrait-frame{background:var(--bg-alt);height:420px;position:relative;overflow:hidden}.portrait-frame img{object-fit:cover;filter:grayscale()contrast(1.08)}.portrait-frame:after{content:"";background:linear-gradient(#0000 50%,#004aad66);position:absolute;inset:0}.portrait-frame span{z-index:2;color:#fff;font:600 .66rem var(--font-mono);letter-spacing:.1em;position:absolute;bottom:15px;left:15px}.topology{border:1px solid var(--line);background:var(--bg-alt)}.topology-head,.topology-foot{color:var(--faint);justify-content:space-between;align-items:center;padding:14px 18px;font-size:.65rem;display:flex}.topology-head{border-bottom:1px solid var(--line)}.topology-foot{border-top:1px solid var(--line)}.topology-foot code{color:var(--blue)}.status i{background:var(--blue);width:6px;height:6px;box-shadow:0 0 12px var(--blue);border-radius:50%;margin-right:7px;display:inline-block}.topology-map{grid-template-columns:repeat(7,1fr);padding:34px 18px;display:grid}.topology-node{flex-direction:column;gap:8px;display:flex;position:relative}.topology-node span{color:var(--blue);font-size:.6rem}.topology-node strong{font:500 .74rem var(--font-mono)}.topology-node b{background:var(--line);height:1px;position:absolute;top:4px;left:32px;right:10px;overflow:hidden}.topology-node b:after{content:"";background:var(--blue);width:30%;height:100%;animation:3s linear infinite signal;position:absolute}@keyframes signal{0%{transform:translate(-100%)}to{transform:translate(400%)}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.apicon-section{background:var(--blue-hi);color:#fff;padding:100px 0}.apicon-grid{grid-template-columns:1.25fr .75fr;gap:10vw;display:grid}.apicon-section .eyebrow{color:#fff;opacity:1}.apicon-section h2,.section-head h2{letter-spacing:-.065em;margin:18px 0;font-size:clamp(3rem,6vw,6.4rem);line-height:.94}.apicon-section p{font-size:1.18rem;line-height:1.65}.apicon-section .muted{opacity:1;font-size:.85rem}.text-link{color:var(--blue);border-bottom:1px solid;align-items:center;gap:6px;padding-bottom:3px;font-weight:700;display:inline-flex}.apicon-section .text-link{color:#fff;margin-top:20px}.section{padding:130px 0}.section-head{grid-template-columns:1fr 1.2fr .7fr;align-items:end;gap:48px;margin-bottom:70px;display:grid}.section-head>.eyebrow{align-self:start}.section-head h2{margin:0}.section-head>p:last-child{color:var(--muted);line-height:1.65}.section-head.horizontal{grid-template-columns:1fr auto}.work-list{border-top:1px solid var(--line)}.work-row{border-bottom:1px solid var(--line);grid-template-columns:70px 1fr auto;gap:30px;padding:44px 10px;transition:background .2s;display:grid}.work-row:hover{background:var(--blue-soft)}.work-index{color:var(--blue);font-size:.75rem}.work-row small{color:var(--blue);text-transform:uppercase;letter-spacing:.1em}.work-row h3{letter-spacing:-.045em;margin:10px 0 14px;font-size:clamp(1.6rem,3vw,3rem);line-height:1.05}.work-row p{max-width:750px;color:var(--muted);line-height:1.6}.tags{flex-wrap:wrap;gap:8px;margin-top:18px;display:flex}.tags span{border:1px solid var(--line);color:var(--muted);padding:6px 9px;font-size:.65rem}.row-arrow{color:var(--blue)}.expertise-section{background:var(--bg-alt)}.expertise-map{border-top:1px solid var(--line);border-left:1px solid var(--line);grid-template-columns:repeat(6,1fr);display:grid}.expertise-node{border-right:1px solid var(--line);border-bottom:1px solid var(--line);grid-column:span 2;min-height:300px;padding:28px}.expertise-node:nth-child(4),.expertise-node:nth-child(5){grid-column:span 3}.expertise-node>div{color:var(--blue);font:500 .65rem var(--font-mono);justify-content:space-between;display:flex}.expertise-node h3{letter-spacing:-.03em;margin:85px 0 12px;font-size:1.5rem}.expertise-node p{color:var(--muted);line-height:1.6}.article-list{border-top:1px solid var(--line)}.article-row{border-bottom:1px solid var(--line);grid-template-columns:140px 1fr auto;align-items:center;gap:28px;padding:30px 8px;display:grid}.article-row:hover h3{color:var(--blue)}.article-row time,.article-row small{color:var(--faint);text-transform:uppercase;font-size:.68rem}.article-row h3{margin:5px 0;font-size:1.45rem;transition:color .2s}.article-row p{color:var(--muted);margin:0}.founder-note{background:var(--bg-alt)}.quote-grid{grid-template-columns:.5fr 1.5fr .7fr;gap:55px;display:grid}.quote-grid blockquote{letter-spacing:-.06em;margin:0;font-size:clamp(2.4rem,4.8vw,5rem);line-height:1}.quote-grid>div{color:var(--muted);line-height:1.7}.quote-grid .text-link{margin-top:18px}.site-footer{color:#f7f9fc;background:#050505;padding:120px 0 26px}.footer-lead{border-bottom:1px solid #ffffff24;padding-bottom:80px}.footer-lead h2{letter-spacing:-.065em;margin:20px 0 35px;font-size:clamp(3rem,7vw,7rem);line-height:.92}.footer-grid{grid-template-columns:2fr 1fr 1fr;gap:50px;padding:60px 0;display:grid}.footer-grid p{color:#727c8b;line-height:1.6}.footer-grid nav,.social-list{flex-direction:column;gap:13px;display:flex}.footer-grid nav a,.social-list a{color:#a8b0bd}.footer-grid a:hover{color:#3b9cff}.footer-bottom{font:.65rem var(--font-mono);color:#727c8b;border-top:1px solid #ffffff1a;justify-content:space-between;padding-top:22px;display:flex}.page-hero{border-bottom:1px solid var(--line);padding:100px 0 70px}.page-hero h1{letter-spacing:-.075em;margin:20px 0;font-size:clamp(4rem,9vw,8rem);line-height:.9}.page-hero>p:last-child{color:var(--muted);max-width:750px;font-size:1.25rem;line-height:1.65}.content-grid{grid-template-columns:1fr 2fr;gap:80px;display:grid}.prose{max-width:780px}.prose h2{letter-spacing:-.04em;margin:0 0 25px;font-size:2.2rem}.prose h3{margin-top:45px;font-size:1.4rem}.prose p,.prose li{color:var(--muted);line-height:1.8}.prose strong{color:var(--text)}.meta-rail{font:500 .67rem var(--font-mono);color:var(--faint);text-transform:uppercase;letter-spacing:.08em}.meta-rail div{border-bottom:1px solid var(--line);padding:15px 0}.notice{border-left:3px solid var(--blue);background:var(--blue-soft);color:var(--muted);margin:25px 0;padding:20px}.contact-layout{grid-template-columns:.8fr 1.2fr;gap:9vw;display:grid}.contact-form{flex-direction:column;gap:20px;display:flex}.contact-form label{font:500 .72rem var(--font-mono);letter-spacing:.06em;text-transform:uppercase}.contact-form label span{color:var(--faint);text-transform:none}.contact-form input,.contact-form select,.contact-form textarea{background:var(--bg-alt);width:100%;color:var(--text);border:1px solid var(--line);outline:none;margin-top:8px;padding:14px;display:block}.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{border-color:var(--blue);box-shadow:0 0 0 3px var(--blue-soft)}.field-row{grid-template-columns:1fr 1fr;gap:16px;display:grid}.honeypot{left:-9999px;position:absolute!important}.form-status{min-height:24px;color:var(--muted)}@media (max-width:800px){.shell{width:min(100% - 28px,1240px)}.menu-button{display:grid}.nav-links{background:var(--bg);border-bottom:1px solid var(--line);flex-direction:column;align-items:stretch;padding:22px;display:none;position:absolute;top:72px;left:0;right:0}.nav-links.open{display:flex}.nav-cta{text-align:center}.hero{padding-top:30px}.hero-grid{grid-template-columns:1fr;padding:45px 0}.hero h1{font-size:clamp(3.2rem,16vw,5rem)}.portrait-frame{order:-1;height:390px}.topology-map{grid-template-columns:1fr;gap:25px}.topology-node{flex-direction:row}.topology-node b{display:none}.apicon-grid,.content-grid,.contact-layout,.quote-grid{grid-template-columns:1fr}.section{padding:90px 0}.section-head{grid-template-columns:1fr;gap:18px}.section-head.horizontal,.expertise-map{grid-template-columns:1fr}.expertise-node,.expertise-node:nth-child(4),.expertise-node:nth-child(5){grid-column:span 1;min-height:auto}.expertise-node h3{margin-top:50px}.work-row{grid-template-columns:40px 1fr;gap:12px}.row-arrow{display:none}.article-row{grid-template-columns:1fr auto}.article-row time,.article-row div{grid-column:1}.article-row>svg{grid-area:1/2/3}.footer-grid{grid-template-columns:1fr}.footer-bottom{flex-direction:column;gap:10px}.field-row{grid-template-columns:1fr}}.work-row h2,.article-row h2,.expertise-node h2{font-size:inherit;margin:inherit;font-weight:inherit}.work-row h2{letter-spacing:-.045em;margin:10px 0 14px;font-size:clamp(1.6rem,3vw,3rem);line-height:1.05}.article-row h2{margin:5px 0;font-size:1.45rem;font-weight:700}.expertise-node h2{letter-spacing:-.03em;margin:85px 0 12px;font-size:1.5rem;font-weight:700}.simple-hero{padding-bottom:72px}.simple-hero .hero-grid{padding-bottom:0}.simple-hero h1{max-width:980px;font-size:clamp(3.2rem,7vw,7rem)}.compact-section{padding-top:96px;padding-bottom:96px}.simple-heading{grid-template-columns:.55fr 1.45fr;align-items:start;gap:48px;margin-bottom:50px;display:grid}.simple-heading h2{letter-spacing:-.055em;max-width:800px;margin:0;font-size:clamp(2.4rem,4.5vw,4.8rem);line-height:1}.simple-heading.heading-row{grid-template-columns:1fr auto;align-items:end}.focus-list{border-top:1px solid var(--line)}.focus-list article{border-bottom:1px solid var(--line);grid-template-columns:70px .75fr 1fr;align-items:start;gap:28px;padding:34px 8px;display:grid}.focus-list article>span{font:500 .68rem var(--font-mono);color:var(--blue)}.focus-list h3{letter-spacing:-.03em;margin:0;font-size:1.45rem}.focus-list p{color:var(--muted);margin:0;line-height:1.65}.simple-cta{background:var(--bg-alt);padding:100px 0}.simple-cta h2{letter-spacing:-.06em;max-width:950px;margin:18px 0 38px;font-size:clamp(2.8rem,6vw,6rem);line-height:.96}.simple-footer{padding:64px 0 24px}.simple-footer>.shell{grid-template-columns:2fr 1fr 1fr;gap:50px;display:grid}.simple-footer p{color:#727c8b;line-height:1.6}.simple-footer nav,.simple-footer .social-list{flex-direction:column;gap:13px;display:flex}.simple-footer nav a,.simple-footer .social-list a{color:#a8b0bd}.simple-footer .footer-bottom{grid-column:1/-1}@media (max-width:800px){.simple-heading,.simple-heading.heading-row,.focus-list article,.simple-footer>.shell{grid-template-columns:1fr}.focus-list article{gap:10px}.simple-footer .footer-bottom{grid-column:auto}.compact-section{padding-top:72px;padding-bottom:72px}}.credential-line{flex-wrap:wrap;gap:8px;margin-top:24px;display:flex}.credential-line span{border:1px solid var(--line);color:var(--muted);font:500 .65rem var(--font-mono);padding:7px 10px}.step-rail{z-index:40;color:var(--faint);font:500 .58rem var(--font-mono);letter-spacing:.08em;text-transform:uppercase;flex-direction:column;align-items:center;gap:10px;display:flex;position:fixed;top:50%;right:18px;transform:translateY(-50%)}.step-track{background:var(--line);width:1px;height:92px;position:relative}.step-track i{background:var(--blue);transform-origin:top;transition:transform .55s cubic-bezier(.22,1,.36,1);position:absolute;inset:0}.step-label{writing-mode:vertical-rl;color:var(--blue)}@media (prefers-reduced-motion:no-preference){body.scroll-ready .reveal-step{transition:transform .7s cubic-bezier(.22,1,.36,1);transform:translateY(42px)}body.scroll-ready .reveal-step.is-visible{transform:none}.focus-list article,.article-row{transition:transform .25s,background .25s}.focus-list article:hover,.article-row:hover{transform:translate(7px)}}.role-list{border-top:1px solid var(--line);margin:28px 0 45px}.role-list article{border-bottom:1px solid var(--line);padding:24px 0}.role-list small{color:var(--blue);font:600 .68rem var(--font-mono);letter-spacing:.08em}.role-list h4{margin:8px 0;font-size:1.25rem}.role-list p{margin:0}@media (max-width:800px){.step-rail{display:none}.credential-line{margin-bottom:8px}}.portrait-frame img{transition:filter .55s cubic-bezier(.22,1,.36,1),transform .7s cubic-bezier(.22,1,.36,1)}.portrait-frame:hover img{filter:grayscale(0)contrast(1.02);transform:scale(1.025)}.project-pair{border-top:1px solid var(--line);border-left:1px solid var(--line);grid-template-columns:1fr 1fr;display:grid}.project-card{border-right:1px solid var(--line);border-bottom:1px solid var(--line);flex-direction:column;align-items:flex-start;min-height:360px;padding:34px;transition:background .25s,transform .25s;display:flex}.project-card:hover{background:var(--blue-soft)}.project-card small{color:var(--blue);font:600 .68rem var(--font-mono);letter-spacing:.09em;text-transform:uppercase}.project-card h3{letter-spacing:-.05em;margin:55px 0 18px;font-size:clamp(2rem,3.2vw,3.5rem);line-height:1}.project-card p{color:var(--muted);max-width:540px;line-height:1.65}.project-card strong{color:var(--blue);align-items:center;gap:7px;margin-top:auto;padding-top:26px;display:flex}.toolbox-section{background:var(--bg-alt);width:100%;max-width:none;padding-inline:max(24px,50vw - 620px)}.toolbox-grid{grid-template-columns:1fr 1fr;gap:70px;display:grid}.toolbox-grid h3{margin:0 0 20px;font-size:1rem}.tool-cloud{flex-wrap:wrap;gap:9px;display:flex}.tool-cloud span{border:1px solid var(--line);background:var(--bg);font:500 .7rem var(--font-mono);color:var(--muted);padding:10px 13px;transition:border-color .2s,color .2s,transform .2s}.tool-cloud span:hover{border-color:var(--blue);color:var(--blue);transform:translateY(-2px)}.connect-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.social-chip{border:1px solid var(--line);min-height:48px;font:500 .68rem var(--font-mono);color:var(--muted);align-items:center;gap:8px;padding:0 14px;display:inline-flex}.social-chip span{color:var(--text);font-weight:700}.social-chip:hover{border-color:var(--blue);color:var(--blue)}@media (hover:none){.portrait-frame img{filter:grayscale(0)contrast(1.02)}}@media (max-width:800px){.project-pair,.toolbox-grid{grid-template-columns:1fr}.project-card{min-height:320px}.toolbox-section{padding-inline:14px}}.about-subsection{margin-top:120px}.demo-notice{border-left:3px solid var(--blue);background:var(--blue-soft);color:var(--muted);margin:-24px 0 42px;padding:16px 18px}.record-groups{grid-template-columns:1fr 1fr;gap:60px;display:grid}.record-group>h3{color:var(--blue);font-size:1rem;font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.08em;border-bottom:1px solid var(--line);padding-bottom:14px}.record-item{border-bottom:1px solid var(--line);padding:24px 0}.record-item header{justify-content:space-between;gap:20px;display:flex}.record-item small,.record-item time,.demo-label{font:500 .65rem var(--font-mono);color:var(--faint);text-transform:uppercase;letter-spacing:.05em}.record-item h4{margin:7px 0;font-size:1.25rem}.record-item p{color:var(--muted);line-height:1.6}.demo-label,.demo-badge{color:var(--blue);background:var(--blue-soft);padding:6px 8px;display:inline-block}.gallery-grid{grid-template-columns:1fr 1fr;gap:18px;display:grid}.gallery-item{margin:0}.gallery-media{aspect-ratio:4/3;background:var(--bg-alt);border:1px solid var(--line);position:relative;overflow:hidden}.gallery-media img{object-fit:cover;transition:transform .45s}.gallery-item:hover img{transform:scale(1.025)}.gallery-placeholder{color:var(--faint);font:600 .67rem var(--font-mono);letter-spacing:.1em;background-image:linear-gradient(var(--line) 1px,transparent 1px),linear-gradient(90deg,var(--line) 1px,transparent 1px);background-size:32px 32px;flex-direction:column;justify-content:center;align-items:center;gap:12px;display:flex;position:absolute;inset:0}.gallery-placeholder svg{color:var(--blue)}.demo-badge{font:600 .62rem var(--font-mono);text-transform:uppercase;position:absolute;top:12px;right:12px}.gallery-item figcaption{justify-content:space-between;gap:20px;padding:14px 2px 24px;display:flex}.gallery-item figcaption strong,.gallery-item figcaption span{display:block}.gallery-item figcaption span,.gallery-item figcaption time{color:var(--faint);margin-top:5px;font-size:.75rem}@media (max-width:800px){.record-groups,.gallery-grid{grid-template-columns:1fr}.about-subsection{margin-top:80px}.record-item header{flex-direction:column;gap:4px}}.capability-grid{grid-template-columns:.65fr 1.35fr;gap:70px;display:grid}.capability-grid h3{margin:0 0 20px;font-size:1rem}.language-row{border-bottom:1px solid var(--line);justify-content:space-between;gap:30px;padding:18px 0;display:flex}.language-row span{color:var(--muted);font-family:var(--font-mono);font-size:.75rem}@media (max-width:800px){.capability-grid{grid-template-columns:1fr}}.achievement-block+.achievement-block{margin-top:130px}.event-gallery+.event-gallery{margin-top:88px}.event-gallery>header{border-bottom:1px solid var(--line);grid-template-columns:1fr auto;align-items:end;margin-bottom:24px;padding-bottom:18px;display:grid}.event-gallery>header .eyebrow{grid-column:1/-1;margin:0 0 10px}.event-gallery>header h3{letter-spacing:-.05em;margin:0;font-size:clamp(2rem,4vw,4rem)}.event-gallery>header>span{font:500 .67rem var(--font-mono);color:var(--faint);text-transform:uppercase}.event-gallery .gallery-grid{grid-template-columns:repeat(12,1fr);gap:18px;display:grid}.event-gallery .gallery-item{grid-column:span 6}.event-gallery:nth-child(3) .gallery-item:first-child{grid-column:span 7}.event-gallery:nth-child(3) .gallery-item:nth-child(2){grid-column:span 5}.event-gallery:nth-child(3) .gallery-item:nth-child(3){grid-column:1/-1}.event-gallery:nth-child(3) .gallery-item:nth-child(3) .gallery-media{aspect-ratio:16/7}.event-gallery:nth-child(2) .gallery-item{grid-column:1/-1}.event-gallery:nth-child(2) .gallery-media{aspect-ratio:16/7}.event-gallery .gallery-media{aspect-ratio:4/3}.event-gallery:nth-child(n+2) .gallery-item:first-child .gallery-media,.event-gallery:nth-child(n+2) .gallery-item:nth-child(2) .gallery-media{aspect-ratio:3/2}@media (max-width:800px){.achievement-block+.achievement-block{margin-top:90px}.event-gallery .gallery-item,.event-gallery:nth-child(3) .gallery-item:first-child,.event-gallery:nth-child(3) .gallery-item:nth-child(2),.event-gallery:nth-child(3) .gallery-item:nth-child(3){grid-column:1/-1}.event-gallery:nth-child(3) .gallery-item:nth-child(3) .gallery-media{aspect-ratio:4/3}.event-gallery>header{grid-template-columns:1fr;gap:8px}}.simple-hero .hero-grid{grid-template-columns:1.05fr .95fr;align-items:center;gap:6vw}.hero-collage{isolation:isolate;height:620px;position:relative}.hero-collage figure{border:1px solid var(--line);background:var(--bg-alt);margin:0;position:absolute;overflow:hidden;box-shadow:0 24px 60px #0003}.hero-collage img{object-fit:cover;transition:transform .6s cubic-bezier(.22,1,.36,1),filter .5s}.hero-collage figure:hover{z-index:5}.hero-collage figure:hover img{transform:scale(1.035)}.hero-collage figcaption{color:#fff;font:600 .62rem var(--font-mono);letter-spacing:.06em;text-transform:uppercase;background:linear-gradient(#0000,#000000d1);padding:26px 14px 12px;position:absolute;bottom:0;left:0;right:0}.collage-profile{z-index:3;width:54%;height:76%;top:42px;left:0}.collage-index{color:var(--blue);font:600 .64rem var(--font-mono);letter-spacing:.1em;position:absolute;bottom:4px;left:3%}@media (max-width:800px){.simple-hero .hero-grid{grid-template-columns:1fr}.hero-collage{order:-1;height:500px}.collage-profile{width:57%;height:72%}.collage-action{width:55%;height:42%}.collage-stage{width:62%;height:43%}}.about-story section+section{border-top:1px solid var(--line);margin-top:48px;padding-top:42px}.about-story h3{letter-spacing:-.035em;margin:0 0 16px;font-size:clamp(1.35rem,2.3vw,2rem)}.about-story section:first-child .eyebrow{margin-bottom:16px}@media (max-width:800px){.about-story section+section{margin-top:36px;padding-top:32px}}.about-sidebar{align-self:start;position:sticky;top:110px}.sidebar-skills{margin-top:38px}.sidebar-skills .eyebrow{margin-bottom:16px}.sidebar-skills .tool-cloud{gap:7px}.sidebar-skills .tool-cloud span{padding:8px 10px;font-size:.62rem}.language-list{max-width:680px}.collage-profile{z-index:4;width:62%;height:88%;top:20px;left:0;border:2px solid var(--blue)!important}.collage-profile img{object-position:center top}.collage-action{z-index:2;width:48%;height:40%;top:0;right:0}.collage-stage{z-index:5;width:53%;height:42%;bottom:0;right:0}@media (max-width:800px){.about-sidebar{position:static}.collage-profile{width:64%;height:86%}.collage-action{width:48%;height:39%}.collage-stage{width:54%;height:40%}}.name-accent{color:var(--blue);text-shadow:0 .02em 0 var(--blue)}@supports (color:color-mix(in lab, red, red)){.name-accent{text-shadow:0 .02em 0 color-mix(in srgb,var(--blue) 25%,transparent)}}@media (prefers-reduced-motion:no-preference){body.scroll-ready .simple-hero h1,body.scroll-ready .simple-hero .hero-copy,body.scroll-ready .simple-hero .credential-line,body.scroll-ready .simple-hero .actions{filter:blur(5px);transition:transform .8s cubic-bezier(.22,1,.36,1),filter .8s;transform:translateY(30px)}body.scroll-ready .simple-hero .hero-copy{transition-delay:.1s}body.scroll-ready .simple-hero .credential-line{transition-delay:.18s}body.scroll-ready .simple-hero .actions{transition-delay:.26s}body.experience-ready .simple-hero h1,body.experience-ready .simple-hero .hero-copy,body.experience-ready .simple-hero .credential-line,body.experience-ready .simple-hero .actions{filter:none;transform:none}body.scroll-ready .reveal-step:not(.simple-hero)>*{filter:blur(4px);transition:transform .75s cubic-bezier(.22,1,.36,1),filter .75s;transform:translateY(30px)}body.scroll-ready .reveal-step.is-visible:not(.simple-hero)>*{filter:none;transform:none}body.scroll-ready .reveal-step:not(.simple-hero)>:nth-child(2){transition-delay:.1s}body.scroll-ready .reveal-step:not(.simple-hero)>:nth-child(3){transition-delay:.18s}.hero-collage figure{animation:.9s cubic-bezier(.22,1,.36,1) both collage-in}.hero-collage .collage-profile{animation-delay:.12s}.hero-collage .collage-action{animation-delay:.26s}.hero-collage .collage-stage{animation-delay:.38s}.hero-collage .collage-action{translate:0 calc(var(--scroll-shift,0px) * -.35);rotate:1.5deg}.hero-collage .collage-stage{translate:0 calc(var(--scroll-shift,0px) * .45);rotate:-1.5deg}@keyframes collage-in{0%{opacity:0;transform:translateY(45px)scale(.96)}to{opacity:1;transform:none}}}@media (max-width:800px){.hero-collage .collage-action,.hero-collage .collage-stage{right:1%}}@media (prefers-reduced-motion:no-preference){body.scroll-ready .simple-hero h1,body.scroll-ready .simple-hero .hero-copy,body.scroll-ready .simple-hero .credential-line,body.scroll-ready .simple-hero .actions{opacity:0;transform:translateY(42px)}body.experience-ready .simple-hero h1,body.experience-ready .simple-hero .hero-copy,body.experience-ready .simple-hero .credential-line,body.experience-ready .simple-hero .actions{opacity:1;transform:none}body.scroll-ready .scroll-item{opacity:0;filter:blur(5px);transition:opacity .72s,transform .82s cubic-bezier(.22,1,.36,1),filter .72s;transition-delay:var(--reveal-delay,0s);transform:translateY(52px)scale(.985)}body.scroll-ready .scroll-item.is-visible{opacity:1;filter:none;transform:none}.achievement-pending>.simple-heading{opacity:0;clip-path:inset(0 100% 0 0);transition:opacity .5s,transform .8s cubic-bezier(.16,1,.3,1),clip-path .8s cubic-bezier(.16,1,.3,1);transform:translate(-36px)}.achievement-pending.achievement-visible>.simple-heading{opacity:1;clip-path:inset(0);transform:none}.achievement-item{opacity:0;transition:opacity .55s,transform .75s cubic-bezier(.16,1,.3,1);transition-delay:var(--achievement-delay,0s);transform:translateY(34px)scale(.985)}.achievement-item.achievement-visible{opacity:1;transform:none}.gallery-item .gallery-media:after{content:"";background:var(--blue);transition:transform .85s cubic-bezier(.16,1,.3,1) var(--achievement-delay,0s);z-index:3;position:absolute;inset:0;transform:translate(0)}.gallery-item.achievement-visible .gallery-media:after{transform:translate(101%)}}.record-item{transition:background .25s,padding .25s,border-color .25s}.record-item:hover{background:var(--blue-soft);border-color:var(--blue);padding-left:16px;padding-right:16px}.event-gallery>header{position:relative}.event-gallery>header:after{content:"";background:var(--blue);width:90px;height:2px;position:absolute;bottom:-1px;left:0}.gallery-media:before{content:"";z-index:2;pointer-events:none;border:1px solid #0000;transition:border-color .25s;position:absolute;inset:0}.gallery-item:hover .gallery-media:before{border-color:var(--blue)}@media (max-width:800px){.hero-collage{grid-template-rows:1.15fr .85fr;grid-template-columns:1fr 1fr;height:520px}.hero-collage .collage-profile{grid-area:1/1/auto/3}.hero-collage .collage-action{grid-area:2/1}.hero-collage .collage-stage{grid-area:2/2}.hero-collage .collage-index{bottom:-24px}}.hero-collage{isolation:isolate;height:620px;display:block;position:relative}.hero-collage figure,.hero-collage .collage-profile,.hero-collage .collage-action,.hero-collage .collage-stage{margin:0;position:absolute;overflow:hidden;box-shadow:0 24px 60px #0000003d}.hero-collage .collage-profile{z-index:3;width:61%;height:88%;top:5%;left:0;border:2px solid var(--blue)!important}.hero-collage .collage-action{z-index:2;width:48%;height:39%;top:0;right:0}.hero-collage .collage-stage{z-index:4;width:53%;height:42%;bottom:0;right:0}.hero-collage .collage-index{bottom:0;left:2%;right:auto}@media (prefers-reduced-motion:no-preference){.hero-collage .collage-action{translate:0 calc(var(--scroll-shift,0px) * -.2);rotate:1deg}.hero-collage .collage-stage{translate:0 calc(var(--scroll-shift,0px) * .25);rotate:-1deg}}.brand-tool-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;display:grid}.brand-tool{border:1px solid var(--line);background:var(--bg);min-height:68px;color:var(--muted);font:500 .66rem var(--font-mono);align-items:center;gap:10px;padding:10px;transition:transform .25s,border-color .25s,color .25s;display:flex}.brand-tool:hover{border-color:var(--blue);color:var(--text);transform:translateY(-3px)}.brand-logo{background:var(--bg-alt);border:1px solid var(--line);flex:0 0 30px;place-items:center;width:30px;height:30px;display:grid;position:relative}.brand-logo b{color:var(--faint);font-size:.5rem}.brand-logo img{object-fit:contain;width:18px;height:18px;position:absolute}.gallery-preview{grid-template-columns:repeat(3,1fr);gap:18px;display:grid}.gallery-button{margin-top:28px}.gallery-back{margin-bottom:55px}.full-gallery{margin-top:0!important}@media (max-width:1000px){.brand-tool-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:800px){.hero-collage{height:500px}.hero-collage .collage-profile{width:63%;height:82%;top:7%;left:0}.hero-collage .collage-action{width:48%;height:38%;top:0;right:0}.hero-collage .collage-stage{width:53%;height:42%;bottom:2%;right:0}.gallery-preview{grid-template-columns:1fr}.brand-tool-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.event-gallery .gallery-media,.gallery-preview .gallery-media{background:var(--bg-alt)}@supports (color:color-mix(in lab, red, red)){.event-gallery .gallery-media,.gallery-preview .gallery-media{background:color-mix(in srgb,var(--bg-alt) 88%,var(--blue-soft))}}.event-gallery .gallery-media,.gallery-preview .gallery-media{background-image:linear-gradient(135deg,var(--line) 25%,transparent 25%,transparent 75%,var(--line) 75%)}@supports (color:color-mix(in lab, red, red)){.event-gallery .gallery-media,.gallery-preview .gallery-media{background-image:linear-gradient(135deg,color-mix(in srgb,var(--line) 30%,transparent) 25%,transparent 25%,transparent 75%,color-mix(in srgb,var(--line) 30%,transparent) 75%)}}.event-gallery .gallery-media,.gallery-preview .gallery-media{background-size:18px 18px}.instagram-link{width:max-content;font:600 .68rem var(--font-mono);border-bottom:1px solid;align-items:center;gap:5px;padding-bottom:3px;color:var(--blue)!important;margin-top:12px!important;display:inline-flex!important}.event-gallery .gallery-media,.gallery-preview .gallery-media{background:var(--bg-alt);background-image:none}.event-gallery .gallery-media img,.gallery-preview .gallery-media img{object-fit:cover;object-position:center}.event-gallery .gallery-wide{aspect-ratio:3/2!important}.event-gallery .gallery-standard{aspect-ratio:4/3!important}.event-gallery .gallery-square{aspect-ratio:1!important}.event-gallery .gallery-portrait{max-width:620px;aspect-ratio:3/4!important}.gallery-preview .gallery-media{aspect-ratio:4/3!important}[data-theme=dark] .brand-logo img[src*=github\/181717]{filter:invert()}.event-gallery{max-width:1080px;margin-inline:auto}.event-gallery .gallery-grid{align-items:start}.event-gallery .gallery-item{width:100%;max-width:760px;margin-inline:auto}.event-gallery .gallery-portrait{width:min(100%,360px);max-width:360px;aspect-ratio:3/4!important}.event-gallery .gallery-square{width:min(100%,520px);max-width:520px}.event-gallery .gallery-standard,.event-gallery .gallery-wide,.event-gallery .gallery-standard img,.event-gallery .gallery-wide img{max-height:520px}.gallery-preview{max-width:1080px;margin-inline:auto}.gallery-preview .gallery-item{min-width:0}.writing-feature{border:1px solid var(--line);background:var(--bg-alt);grid-template-columns:1.08fr .92fr;min-height:520px;display:grid}.writing-feature-image{min-height:520px;position:relative;overflow:hidden}.writing-feature-image img,.writing-card-image img{object-fit:cover;transition:transform .7s cubic-bezier(.16,1,.3,1)}.writing-feature-image:hover img,.writing-card:hover img{transform:scale(1.035)}.writing-feature-image>span{background:var(--blue);color:#fff;font:600 .62rem var(--font-mono);letter-spacing:.08em;text-transform:uppercase;padding:8px 10px;position:absolute;top:18px;left:18px}.writing-feature-copy{flex-direction:column;justify-content:center;align-items:flex-start;padding:clamp(35px,5vw,72px);display:flex}.post-meta{color:var(--faint);font:500 .65rem var(--font-mono);letter-spacing:.06em;text-transform:uppercase;flex-wrap:wrap;align-items:center;gap:10px 18px;display:flex}.post-meta span:first-child{color:var(--blue)}.writing-feature-copy h2{letter-spacing:-.06em;margin:24px 0;font-size:clamp(2.5rem,4.7vw,5.2rem);line-height:.94}.writing-feature-copy>p{color:var(--muted);max-width:540px;font-size:1.05rem;line-height:1.75}.writing-feature-copy .text-link{margin-top:22px}.writing-library{margin-top:125px}.writing-library>header{border-bottom:1px solid var(--line);grid-template-columns:1fr auto;align-items:end;margin-bottom:30px;padding-bottom:22px;display:grid}.writing-library>header .eyebrow{grid-column:1/-1;margin:0 0 12px}.writing-library>header h2{letter-spacing:-.055em;margin:0;font-size:clamp(2.4rem,4vw,4.5rem);line-height:1}.writing-library>header>span{color:var(--faint);font:500 .65rem var(--font-mono);text-transform:uppercase}.writing-card-grid{grid-template-columns:repeat(2,1fr);gap:50px 24px;display:grid}.writing-card{flex-direction:column;align-items:flex-start;display:flex}.writing-card-image{aspect-ratio:16/9;background:var(--bg-alt);width:100%;margin-bottom:20px;position:relative;overflow:hidden}.writing-card h3{letter-spacing:-.04em;margin:16px 0 10px;font-size:clamp(1.6rem,2.5vw,2.4rem);line-height:1.05}.writing-card>p{color:var(--muted);margin:0;line-height:1.65}.read-label{color:var(--blue);font:600 .62rem var(--font-mono);letter-spacing:.08em;align-items:center;gap:5px;margin-top:22px;display:flex}.reading-progress{z-index:60;background:0 0;height:3px;position:fixed;top:72px;left:0;right:0}.reading-progress i{background:var(--blue);transform-origin:0;width:100%;height:100%;display:block}.article-hero{border-bottom:1px solid var(--line);background:linear-gradient(135deg,var(--bg) 55%,var(--blue-soft));padding:80px 0 90px}.article-hero-inner{max-width:1080px}.article-back{color:var(--muted);font:600 .68rem var(--font-mono);align-items:center;gap:7px;margin-bottom:70px;display:inline-flex}.article-back:hover{color:var(--blue)}.article-meta{margin-bottom:28px}.article-hero h1{letter-spacing:-.07em;max-width:1050px;margin:0;font-size:clamp(3.4rem,7vw,7.4rem);line-height:.9}.article-hero>div>p{max-width:760px;color:var(--muted);margin:32px 0;font-size:clamp(1.08rem,1.7vw,1.35rem);line-height:1.65}.article-author{align-items:center;gap:12px;margin-top:38px;display:flex}.article-author>span{background:var(--blue);color:#fff;width:42px;height:42px;font:700 .7rem var(--font-mono);place-items:center;display:grid}.article-author strong,.article-author small{display:block}.article-author small{color:var(--faint);margin-top:3px}.reading-layout{grid-template-columns:120px minmax(0,760px) 1fr;gap:40px;padding-top:90px;padding-bottom:120px;display:grid}.reading-rail{color:var(--faint);font:600 .59rem var(--font-mono);letter-spacing:.09em;flex-direction:column;align-self:start;gap:8px;display:flex;position:sticky;top:120px}.reading-rail strong{color:var(--blue);font-size:2rem}.reading-rail i{background:var(--line);width:1px;height:90px;margin-left:8px}.reading-prose{max-width:760px;font-size:1.075rem;line-height:1.82}.reading-prose h2{letter-spacing:-.045em;border-top:1px solid var(--line);margin:80px 0 24px;padding-top:18px;font-size:clamp(2rem,3.4vw,3.2rem);line-height:1.08}.reading-prose h2:first-child{margin-top:0}.reading-prose h3{margin:52px 0 18px;font-size:1.55rem;line-height:1.25}.reading-prose p{color:var(--muted);margin:0 0 24px}.reading-prose strong{color:var(--text);font-weight:700}.reading-prose a{color:var(--blue);text-underline-offset:3px;text-decoration:underline}.reading-prose ul,.reading-prose ol{counter-reset:article-list;margin:24px 0 34px;padding-left:0;list-style:none}.reading-prose li{color:var(--muted);border-bottom:1px solid var(--line);padding:11px 0 11px 30px;position:relative}@supports (color:color-mix(in lab, red, red)){.reading-prose li{border-bottom:1px solid color-mix(in srgb,var(--line) 60%,transparent)}}.reading-prose ul li:before{content:"";background:var(--blue);width:7px;height:7px;position:absolute;top:21px;left:4px}.reading-prose ol li{counter-increment:article-list}.reading-prose ol li:before{content:counter(article-list,decimal-leading-zero);color:var(--blue);font:600 .65rem var(--font-mono);position:absolute;top:13px;left:0}.reading-prose img{border:1px solid var(--line);background:var(--bg-alt);width:calc(100% + 100px);max-width:calc(100% + 100px);height:auto;margin:48px -50px;display:block}.reading-prose blockquote{border-left:3px solid var(--blue);background:var(--blue-soft);margin:45px 0;padding:25px 30px;font-size:1.2rem}.reading-prose blockquote p{color:var(--text);margin:0}.reading-prose pre{color:#d7e7ff;border-left:3px solid var(--blue);font:500 .85rem/1.7 var(--font-mono);background:#07111f;margin:35px 0;padding:24px;overflow:auto}.reading-prose code:not(pre code){background:var(--blue-soft);color:var(--blue);padding:2px 6px;font-size:.88em}.reading-prose hr{border:0;border-top:1px solid var(--line);margin:65px 0}.next-article{border-top:1px solid var(--line);justify-content:space-between;align-items:end;gap:40px;padding-top:55px;padding-bottom:100px;display:flex}.next-article h2{letter-spacing:-.05em;max-width:760px;margin:12px 0 0;font-size:clamp(2rem,4vw,4rem);line-height:1}@media (max-width:800px){.writing-feature{grid-template-columns:1fr}.writing-feature-image{min-height:300px}.writing-feature-copy{padding:32px 22px}.writing-library{margin-top:85px}.writing-card-grid{grid-template-columns:1fr}.article-hero{padding:45px 0 65px}.article-back{margin-bottom:45px}.article-hero h1{font-size:clamp(3rem,14vw,5.4rem)}.reading-layout{grid-template-columns:1fr;padding-top:55px;padding-bottom:80px}.reading-rail{display:none}.reading-prose{font-size:1rem}.reading-prose h2{margin-top:62px}.reading-prose img{width:100%;max-width:100%;margin:36px 0}.next-article{flex-direction:column;align-items:flex-start}.event-gallery .gallery-portrait{max-width:300px}.event-gallery .gallery-square{max-width:420px}}.contact-showcase{align-items:start}.contact-intro{padding-right:4vw;position:sticky;top:110px}.contact-intro h2{letter-spacing:-.05em;margin:18px 0;font-size:clamp(2rem,3.6vw,3.8rem);line-height:1}.contact-intro>p:not(.eyebrow){color:var(--muted);max-width:580px;line-height:1.75}.contact-channels{border-top:1px solid var(--line);margin-top:38px;display:grid}.contact-channel{border-bottom:1px solid var(--line);grid-template-columns:auto 1fr auto;align-items:center;gap:14px;padding:18px 2px;transition:color .2s,padding .2s,background .2s;display:grid}.contact-channel[href]:hover{color:var(--blue);background:var(--blue-soft);padding-inline:12px}.contact-channel-icon{width:40px;height:40px;color:var(--blue);background:var(--blue-soft);border:1px solid var(--blue);place-items:center;display:grid}@supports (color:color-mix(in lab, red, red)){.contact-channel-icon{border:1px solid color-mix(in srgb,var(--blue) 25%,var(--line))}}.contact-channel small,.contact-channel strong{display:block}.contact-channel small{color:var(--faint);font:600 .62rem var(--font-mono);letter-spacing:.08em;text-transform:uppercase;margin-bottom:4px}.contact-channel strong{font-size:.88rem}.privacy-note{border:1px solid var(--line);background:var(--bg-alt);color:var(--blue);gap:13px;margin-top:32px;padding:18px;display:flex}.privacy-note p{color:var(--muted);margin:0;font-size:.82rem;line-height:1.55}.privacy-note strong{color:var(--text)}.contact-form-panel{border:1px solid var(--line);background:linear-gradient(145deg,var(--bg-alt),var(--bg));padding:clamp(24px,4vw,52px);box-shadow:0 28px 80px #00000014}.contact-form-heading{border-bottom:1px solid var(--line);grid-template-columns:auto 1fr;align-items:start;gap:20px;margin-bottom:30px;padding-bottom:30px;display:grid}.contact-form-heading>span{color:var(--blue);font:700 .7rem var(--font-mono)}.contact-form-heading h2{letter-spacing:-.04em;margin:6px 0 0;font-size:clamp(1.8rem,3vw,2.8rem)}.contact-form .button{justify-content:center;align-self:flex-start;min-width:180px}.contact-form textarea{resize:vertical;min-height:150px}.form-status{border-left:2px solid #0000;padding-left:10px}.form-status:not(:empty){border-color:var(--blue)}.portfolio-footer{color:#f7f9fc;background:#05070b;padding:0 0 24px}.portfolio-footer>.shell{display:block}.footer-callout{border-bottom:1px solid #ffffff21;grid-template-columns:1.5fr auto;align-items:end;gap:60px;padding:95px 0 75px;display:grid}.footer-callout .eyebrow{color:#64adff}.footer-callout h2{letter-spacing:-.065em;max-width:900px;margin:18px 0 0;font-size:clamp(3rem,6.5vw,6.8rem);line-height:.92}.footer-contact-button{background:var(--blue);color:#fff;white-space:nowrap;justify-content:center;align-items:center;gap:10px;min-height:58px;padding:0 22px;font-weight:750;transition:transform .2s,background .2s;display:inline-flex}.footer-contact-button:hover{background:#197ee8;transform:translateY(-3px)}.footer-directory{grid-template-columns:2fr 1fr 1fr;gap:70px;padding:60px 0;display:grid}.footer-identity>p{color:#8b95a5;max-width:470px;margin:22px 0;line-height:1.7}.footer-facts{flex-wrap:wrap;gap:10px;display:flex}.footer-facts span{color:#aeb7c5;font:500 .65rem var(--font-mono);border:1px solid #ffffff1f;align-items:center;gap:7px;padding:8px 10px;display:inline-flex}.footer-label{font:650 .64rem var(--font-mono);letter-spacing:.1em;text-transform:uppercase;margin:0 0 20px;color:#64adff!important}.footer-column nav,.footer-column .social-list{flex-direction:column;align-items:flex-start;gap:14px;display:flex}.footer-column nav a,.footer-column .social-list a{color:#aeb7c5;align-items:center;gap:6px;display:inline-flex}.footer-column a:hover{color:#64adff}.portfolio-footer .footer-bottom{color:#737e8f;font:.62rem var(--font-mono);border-top:1px solid #ffffff1a;justify-content:space-between;padding-top:23px;display:flex}@media (max-width:800px){.contact-intro{padding-right:0;position:static}.contact-form-panel{padding:24px}.footer-callout{grid-template-columns:1fr;align-items:start;padding:70px 0 55px}.footer-contact-button{justify-self:start}.footer-directory{grid-template-columns:1fr;gap:38px}.portfolio-footer .footer-bottom{flex-direction:column;gap:10px}}html,body{max-width:100%;overflow-x:clip}.contact-channel{min-width:0}.contact-channel strong{overflow-wrap:anywhere}.project-card{min-width:0}.project-card h3{overflow-wrap:anywhere}.portfolio-footer .footer-directory{padding-top:64px}@media (max-width:560px){.page-hero{padding-top:64px}.page-hero h1{font-size:clamp(3rem,15vw,4.5rem)}.project-card{min-height:0;padding:26px 20px}.project-card h3{margin:36px 0 16px;font-size:2rem}.contact-form-panel{padding:20px 16px}.contact-form-heading{grid-template-columns:1fr;gap:8px}.contact-channel{grid-template-columns:auto minmax(0,1fr) auto}.portfolio-footer .footer-directory{padding-top:52px}.gallery-preview{grid-template-columns:1fr}}@media (prefers-reduced-motion:no-preference){.page-reveal-item{opacity:0;filter:blur(3px);transition:opacity .65s,transform .78s cubic-bezier(.22,1,.36,1),filter .65s;transition-delay:var(--page-reveal-delay,0s);transform:translateY(34px)}.page-reveal-item.page-reveal-visible{opacity:1;filter:none;transform:none}}@media (max-width:800px) and (prefers-reduced-motion:no-preference){.page-reveal-item{transition-duration:.72s,.82s,.72s;transform:translateY(44px)scale(.985)}.page-reveal-item.page-reveal-visible{transform:none}}.gallery-item{outline:none}.gallery-hover-copy{z-index:4;color:#fff;opacity:0;pointer-events:none;background:linear-gradient(#0000,#080b12eb);padding:54px 20px 20px;transition:opacity .28s,transform .35s cubic-bezier(.22,1,.36,1);position:absolute;inset:auto 0 0;transform:translateY(14px)}.gallery-hover-copy strong,.gallery-hover-copy span{display:block}.gallery-hover-copy strong{font-size:clamp(.92rem,1.5vw,1.12rem);line-height:1.25}.gallery-hover-copy span{color:#ffffffd1;margin-top:6px;font-size:.76rem;line-height:1.35}.gallery-item:hover .gallery-hover-copy,.gallery-item:focus .gallery-hover-copy,.gallery-item:focus-within .gallery-hover-copy{opacity:1;transform:none}.gallery-item:focus-visible .gallery-media{outline:3px solid var(--blue);outline-offset:3px}@media (hover:none){.gallery-hover-copy{opacity:1;padding:42px 16px 15px;transform:none}.gallery-hover-copy strong{font-size:.9rem}.gallery-hover-copy span{font-size:.7rem}}@media (prefers-reduced-motion:reduce){.gallery-hover-copy{transition:none}}@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-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-space-x-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-gradient-position{syntax:"*";inherits:false}@property --tw-gradient-from{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-via{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-to{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-stops{syntax:"*";inherits:false}@property --tw-gradient-via-stops{syntax:"*";inherits:false}@property --tw-gradient-from-position{syntax:"<length-percentage>";inherits:false;initial-value:0%}@property --tw-gradient-via-position{syntax:"<length-percentage>";inherits:false;initial-value:50%}@property --tw-gradient-to-position{syntax:"<length-percentage>";inherits:false;initial-value:100%}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-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-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}@keyframes spin{to{transform:rotate(360deg)}}
