@layer properties;@layer theme,base,components,utilities;@layer theme{:root,:host{--font-sans: "Inter", system-ui, sans-serif;--font-serif: "Instrument Serif", Georgia, serif;--font-mono: "Space Grotesk", ui-monospace, monospace;--color-black: #000;--color-white: #fff;--spacing: .25rem;--container-sm: 24rem;--container-md: 28rem;--container-2xl: 42rem;--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: 1.5 ;--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: 1.2 ;--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-extrabold: 800;--tracking-tighter: -.05em;--tracking-tight: -.025em;--tracking-wider: .05em;--leading-relaxed: 1.625;--radius-2xl: 1rem;--radius-3xl: 1.5rem;--ease-in-out: cubic-bezier(.4, 0, .2, 1);--animate-pulse: pulse 2s cubic-bezier(.4, 0, .6, 1) infinite;--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);--font-display: "Bricolage Grotesque", "Space Grotesk", system-ui, sans-serif;--color-ink: #0a0a0a;--color-bone: #fafaf7;--color-cream: #f4f1ea;--color-grid: #e9e6df;--color-accent: #ff5b22;--color-accent-soft: #ffe6dc;--color-lime: #d6ff3d;--color-sky: #c9e1ff;--color-lavender: #e7defb}}@layer base{*,:after,:before,::backdrop,::file-selector-button{box-sizing:border-box;margin:0;padding:0;border:0 solid}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;tab-size:4;font-family:var(--default-font-family, ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings, normal);font-variation-settings:var(--default-font-variation-settings, normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;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{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea,::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;border-radius:0;background-color:transparent;opacity:1}: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,::-webkit-datetime-edit-year-field,::-webkit-datetime-edit-month-field,::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute-field,::-webkit-datetime-edit-second-field,::-webkit-datetime-edit-millisecond-field,::-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]),::file-selector-button{appearance:button}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer utilities{.pointer-events-none{pointer-events:none}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.inset-0{inset:calc(var(--spacing) * 0)}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.-top-24{top:calc(var(--spacing) * -24)}.-top-\[6\%\]{top:-6%}.top-3{top:calc(var(--spacing) * 3)}.top-5{top:calc(var(--spacing) * 5)}.top-\[2\%\]{top:2%}.top-\[10\%\]{top:10%}.top-\[66px\]{top:66px}.-right-24{right:calc(var(--spacing) * -24)}.right-0{right:calc(var(--spacing) * 0)}.right-5{right:calc(var(--spacing) * 5)}.right-\[-2\%\]{right:-2%}.right-\[3\%\]{right:3%}.bottom-\[4\%\]{bottom:4%}.bottom-\[14\%\]{bottom:14%}.left-0{left:calc(var(--spacing) * 0)}.left-1\/2{left:50%}.left-5{left:calc(var(--spacing) * 5)}.left-\[-2\%\]{left:-2%}.left-\[2\%\]{left:2%}.left-\[40\%\]{left:40%}.isolate{isolation:isolate}.-z-10{z-index:-10}.z-10{z-index:10}.z-40{z-index:40}.z-50{z-index:50}.mx-auto{margin-inline:auto}.mt-1{margin-top:calc(var(--spacing) * 1)}.mt-1\.5{margin-top:calc(var(--spacing) * 1.5)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-3{margin-top:calc(var(--spacing) * 3)}.mt-5{margin-top:calc(var(--spacing) * 5)}.mt-6{margin-top:calc(var(--spacing) * 6)}.mt-8{margin-top:calc(var(--spacing) * 8)}.mt-10{margin-top:calc(var(--spacing) * 10)}.mb-5{margin-bottom:calc(var(--spacing) * 5)}.ml-1{margin-left:calc(var(--spacing) * 1)}.ml-2{margin-left:calc(var(--spacing) * 2)}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.table{display:table}.h-1\.5{height:calc(var(--spacing) * 1.5)}.h-4{height:calc(var(--spacing) * 4)}.h-5{height:calc(var(--spacing) * 5)}.h-7{height:calc(var(--spacing) * 7)}.h-9{height:calc(var(--spacing) * 9)}.h-12{height:calc(var(--spacing) * 12)}.h-72{height:calc(var(--spacing) * 72)}.h-px{height:1px}.min-h-\[100svh\]{min-height:100svh}.min-h-screen{min-height:100vh}.w-1\.5{width:calc(var(--spacing) * 1.5)}.w-4{width:calc(var(--spacing) * 4)}.w-5{width:calc(var(--spacing) * 5)}.w-7{width:calc(var(--spacing) * 7)}.w-8{width:calc(var(--spacing) * 8)}.w-9{width:calc(var(--spacing) * 9)}.w-12{width:calc(var(--spacing) * 12)}.w-72{width:calc(var(--spacing) * 72)}.w-\[min\(92vw\,340px\)\]{width:min(92vw,340px)}.w-full{width:100%}.w-px{width:1px}.max-w-2xl{max-width:var(--container-2xl)}.max-w-6xl{max-width:var(--container-6xl)}.max-w-md{max-width:var(--container-md)}.max-w-sm{max-width:var(--container-sm)}.min-w-0{min-width:calc(var(--spacing) * 0)}.min-w-\[200px\]{min-width:200px}.flex-1{flex:1}.shrink-0{flex-shrink:0}.-translate-x-1\/2{--tw-translate-x: -50% ;translate:var(--tw-translate-x) var(--tw-translate-y)}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.animate-pulse{animation:var(--animate-pulse)}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.place-items-center{place-items:center}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-1{gap:calc(var(--spacing) * 1)}.gap-1\.5{gap:calc(var(--spacing) * 1.5)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-2\.5{gap:calc(var(--spacing) * 2.5)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}.gap-5{gap:calc(var(--spacing) * 5)}.gap-6{gap:calc(var(--spacing) * 6)}.gap-7{gap:calc(var(--spacing) * 7)}.gap-8{gap:calc(var(--spacing) * 8)}.gap-10{gap:calc(var(--spacing) * 10)}.gap-12{gap:calc(var(--spacing) * 12)}: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)))}.overflow-hidden{overflow:hidden}.rounded-2xl{border-radius:var(--radius-2xl)}.rounded-3xl{border-radius:var(--radius-3xl)}.rounded-full{border-radius:calc(infinity * 1px)}.border{border-style:var(--tw-border-style);border-width:1px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-black\/10{border-color:color-mix(in srgb,#000 10%,transparent)}@supports (color: color-mix(in lab,red,red)){.border-black\/10{border-color:color-mix(in oklab,var(--color-black) 10%,transparent)}}.border-black\/15{border-color:color-mix(in srgb,#000 15%,transparent)}@supports (color: color-mix(in lab,red,red)){.border-black\/15{border-color:color-mix(in oklab,var(--color-black) 15%,transparent)}}.bg-\[var\(--color-accent\)\]{background-color:var(--color-accent)}.bg-\[var\(--color-ink\)\]{background-color:var(--color-ink)}.bg-black\/10{background-color:color-mix(in srgb,#000 10%,transparent)}@supports (color: color-mix(in lab,red,red)){.bg-black\/10{background-color:color-mix(in oklab,var(--color-black) 10%,transparent)}}.bg-black\/20{background-color:color-mix(in srgb,#000 20%,transparent)}@supports (color: color-mix(in lab,red,red)){.bg-black\/20{background-color:color-mix(in oklab,var(--color-black) 20%,transparent)}}.bg-black\/80{background-color:color-mix(in srgb,#000 80%,transparent)}@supports (color: color-mix(in lab,red,red)){.bg-black\/80{background-color:color-mix(in oklab,var(--color-black) 80%,transparent)}}.bg-grid{background-color:var(--color-grid)}.bg-white{background-color:var(--color-white)}.bg-white\/85{background-color:color-mix(in srgb,#fff 85%,transparent)}@supports (color: color-mix(in lab,red,red)){.bg-white\/85{background-color:color-mix(in oklab,var(--color-white) 85%,transparent)}}.p-0\.5{padding:calc(var(--spacing) * .5)}.p-3{padding:calc(var(--spacing) * 3)}.p-5{padding:calc(var(--spacing) * 5)}.p-6{padding:calc(var(--spacing) * 6)}.p-7{padding:calc(var(--spacing) * 7)}.px-2{padding-inline:calc(var(--spacing) * 2)}.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-1{padding-block:calc(var(--spacing) * 1)}.py-1\.5{padding-block:calc(var(--spacing) * 1.5)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-3{padding-block:calc(var(--spacing) * 3)}.py-5{padding-block:calc(var(--spacing) * 5)}.py-10{padding-block:calc(var(--spacing) * 10)}.pt-6{padding-top:calc(var(--spacing) * 6)}.pt-20{padding-top:calc(var(--spacing) * 20)}.pr-12{padding-right:calc(var(--spacing) * 12)}.pb-6{padding-bottom:calc(var(--spacing) * 6)}.pb-8{padding-bottom:calc(var(--spacing) * 8)}.text-center{text-align:center}.font-mono{font-family:var(--font-mono)}.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-\[0\.68rem\]{font-size:.68rem}.text-\[0\.72rem\]{font-size:.72rem}.text-\[0\.78rem\]{font-size:.78rem}.text-\[0\.85rem\]{font-size:.85rem}.text-\[0\.92rem\]{font-size:.92rem}.text-\[0\.95rem\]{font-size:.95rem}.text-\[6\.5vw\]{font-size:6.5vw}.text-\[17vw\]{font-size:17vw}.text-\[20vw\]{font-size:20vw}.leading-\[0\.85\]{--tw-leading: .85;line-height:.85}.leading-\[1\.05\]{--tw-leading: 1.05;line-height:1.05}.leading-relaxed{--tw-leading: var(--leading-relaxed);line-height:var(--leading-relaxed)}.font-extrabold{--tw-font-weight: var(--font-weight-extrabold);font-weight:var(--font-weight-extrabold)}.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\.2em\]{--tw-tracking: .2em;letter-spacing:.2em}.tracking-tight{--tw-tracking: var(--tracking-tight);letter-spacing:var(--tracking-tight)}.tracking-tighter{--tw-tracking: var(--tracking-tighter);letter-spacing:var(--tracking-tighter)}.tracking-wider{--tw-tracking: var(--tracking-wider);letter-spacing:var(--tracking-wider)}.text-\[var\(--color-accent\)\]{color:var(--color-accent)}.text-\[var\(--color-bone\)\]{color:var(--color-bone)}.text-\[var\(--color-ink\)\]{color:var(--color-ink)}.text-\[var\(--color-ink\)\]\/70{color:color-mix(in srgb,#0a0a0a 70%,transparent)}@supports (color: color-mix(in lab,red,red)){.text-\[var\(--color-ink\)\]\/70{color:color-mix(in oklab,var(--color-ink) 70%,transparent)}}.text-\[var\(--color-ink\)\]\/80{color:color-mix(in srgb,#0a0a0a 80%,transparent)}@supports (color: color-mix(in lab,red,red)){.text-\[var\(--color-ink\)\]\/80{color:color-mix(in oklab,var(--color-ink) 80%,transparent)}}.text-\[var\(--color-lime\)\]{color:var(--color-lime)}.text-black\/50{color:color-mix(in srgb,#000 50%,transparent)}@supports (color: color-mix(in lab,red,red)){.text-black\/50{color:color-mix(in oklab,var(--color-black) 50%,transparent)}}.text-black\/55{color:color-mix(in srgb,#000 55%,transparent)}@supports (color: color-mix(in lab,red,red)){.text-black\/55{color:color-mix(in oklab,var(--color-black) 55%,transparent)}}.text-black\/60{color:color-mix(in srgb,#000 60%,transparent)}@supports (color: color-mix(in lab,red,red)){.text-black\/60{color:color-mix(in oklab,var(--color-black) 60%,transparent)}}.text-black\/65{color:color-mix(in srgb,#000 65%,transparent)}@supports (color: color-mix(in lab,red,red)){.text-black\/65{color:color-mix(in oklab,var(--color-black) 65%,transparent)}}.text-black\/70{color:color-mix(in srgb,#000 70%,transparent)}@supports (color: color-mix(in lab,red,red)){.text-black\/70{color:color-mix(in oklab,var(--color-black) 70%,transparent)}}.text-black\/80{color:color-mix(in srgb,#000 80%,transparent)}@supports (color: color-mix(in lab,red,red)){.text-black\/80{color:color-mix(in oklab,var(--color-black) 80%,transparent)}}.text-white{color:var(--color-white)}.uppercase{text-transform:uppercase}.underline{text-decoration-line:underline}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.opacity-0{opacity:0%}.opacity-60{opacity:60%}.shadow-2xl{--tw-shadow: 0 25px 50px -12px var(--tw-shadow-color, rgb(0 0 0 / .25));box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-\[0_8px_30px_-12px_rgba\(0\,0\,0\,0\.18\)\]{--tw-shadow: 0 8px 30px -12px var(--tw-shadow-color, rgba(0,0,0,.18));box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring{--tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.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{--tw-backdrop-blur: blur(8px);-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease, var(--default-transition-timing-function));transition-duration:var(--tw-duration, var(--default-transition-duration))}.transition-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-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease, var(--default-transition-timing-function));transition-duration:var(--tw-duration, var(--default-transition-duration))}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease, var(--default-transition-timing-function));transition-duration:var(--tw-duration, var(--default-transition-duration))}.duration-500{--tw-duration: .5s;transition-duration:.5s}.ease-in-out{--tw-ease: var(--ease-in-out);transition-timing-function:var(--ease-in-out)}.select-none{-webkit-user-select:none;user-select:none}@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)}}@media(hover:hover){.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)}}@media(hover:hover){.group-hover\:-rotate-12:is(:where(.group):hover *){rotate:-12deg}}@media(hover:hover){.group-hover\:opacity-100:is(:where(.group):hover *){opacity:100%}}@media(hover:hover){.hover\:-translate-y-1:hover{--tw-translate-y: calc(var(--spacing) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}}@media(hover:hover){.hover\:-translate-y-1\.5:hover{--tw-translate-y: calc(var(--spacing) * -1.5);translate:var(--tw-translate-x) var(--tw-translate-y)}}@media(hover:hover){.hover\:border-transparent:hover{border-color:transparent}}@media(hover:hover){.hover\:bg-\[var\(--color-cream\)\]:hover{background-color:var(--color-cream)}}@media(hover:hover){.hover\:bg-black:hover{background-color:var(--color-black)}}@media(hover:hover){.hover\:text-\[var\(--color-ink\)\]:hover{color:var(--color-ink)}}@media(hover:hover){.hover\:opacity-100:hover{opacity:100%}}@media(hover:hover){.hover\:shadow-\[0_22px_50px_-25px_rgba\(0\,0\,0\,0\.3\)\]:hover{--tw-shadow: 0 22px 50px -25px var(--tw-shadow-color, rgba(0,0,0,.3));box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}}@media(hover:hover){.hover\:shadow-\[0_28px_60px_-28px_rgba\(0\,0\,0\,0\.3\)\]:hover{--tw-shadow: 0 28px 60px -28px var(--tw-shadow-color, rgba(0,0,0,.3));box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}}@media(width>=40rem){.sm\:top-4{top:calc(var(--spacing) * 4)}}@media(width>=40rem){.sm\:top-\[72px\]{top:72px}}@media(width>=40rem){.sm\:px-4{padding-inline:calc(var(--spacing) * 4)}}@media(width>=40rem){.sm\:text-\[4\.4vw\]{font-size:4.4vw}}@media(width>=40rem){.sm\:text-\[14vw\]{font-size:14vw}}@media(width>=48rem){.md\:col-span-1{grid-column:span 1 / span 1}}@media(width>=48rem){.md\:col-span-2{grid-column:span 2 / span 2}}@media(width>=48rem){.md\:col-span-5{grid-column:span 5 / span 5}}@media(width>=48rem){.md\:col-span-7{grid-column:span 7 / span 7}}@media(width>=48rem){.md\:mt-6{margin-top:calc(var(--spacing) * 6)}}@media(width>=48rem){.md\:mt-8{margin-top:calc(var(--spacing) * 8)}}@media(width>=48rem){.md\:mt-10{margin-top:calc(var(--spacing) * 10)}}@media(width>=48rem){.md\:mr-1{margin-right:calc(var(--spacing) * 1)}}@media(width>=48rem){.md\:flex{display:flex}}@media(width>=48rem){.md\:grid{display:grid}}@media(width>=48rem){.md\:hidden{display:none}}@media(width>=48rem){.md\:inline{display:inline}}@media(width>=48rem){.md\:inline-block{display:inline-block}}@media(width>=48rem){.md\:inline-flex{display:inline-flex}}@media(width>=48rem){.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(width>=48rem){.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(width>=48rem){.md\:grid-cols-12{grid-template-columns:repeat(12,minmax(0,1fr))}}@media(width>=48rem){.md\:flex-row{flex-direction:row}}@media(width>=48rem){.md\:items-center{align-items:center}}@media(width>=48rem){.md\:items-end{align-items:flex-end}}@media(width>=48rem){.md\:gap-3{gap:calc(var(--spacing) * 3)}}@media(width>=48rem){.md\:gap-6{gap:calc(var(--spacing) * 6)}}@media(width>=48rem){.md\:gap-12{gap:calc(var(--spacing) * 12)}}@media(width>=48rem){.md\:gap-14{gap:calc(var(--spacing) * 14)}}@media(width>=48rem){.md\:p-7{padding:calc(var(--spacing) * 7)}}@media(width>=48rem){.md\:p-10{padding:calc(var(--spacing) * 10)}}@media(width>=48rem){.md\:py-14{padding-block:calc(var(--spacing) * 14)}}@media(width>=48rem){.md\:pt-24{padding-top:calc(var(--spacing) * 24)}}@media(width>=48rem){.md\:pb-8{padding-bottom:calc(var(--spacing) * 8)}}@media(width>=48rem){.md\:pl-10{padding-left:calc(var(--spacing) * 10)}}@media(width>=48rem){.md\:text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading, var(--text-3xl--line-height))}}@media(width>=48rem){.md\:text-4xl{font-size:var(--text-4xl);line-height:var(--tw-leading, var(--text-4xl--line-height))}}@media(width>=48rem){.md\:text-5xl{font-size:var(--text-5xl);line-height:var(--tw-leading, var(--text-5xl--line-height))}}@media(width>=48rem){.md\:text-base{font-size:var(--text-base);line-height:var(--tw-leading, var(--text-base--line-height))}}@media(width>=48rem){.md\:text-lg{font-size:var(--text-lg);line-height:var(--tw-leading, var(--text-lg--line-height))}}@media(width>=48rem){.md\:text-xl{font-size:var(--text-xl);line-height:var(--tw-leading, var(--text-xl--line-height))}}@media(width>=48rem){.md\:text-xs{font-size:var(--text-xs);line-height:var(--tw-leading, var(--text-xs--line-height))}}@media(width>=48rem){.md\:text-\[2\.5rem\]{font-size:2.5rem}}@media(width>=48rem){.md\:text-\[8vw\]{font-size:8vw}}@media(width>=48rem){.md\:text-\[12vw\]{font-size:12vw}}@media(width>=64rem){.lg\:block{display:block}}@media(width>=64rem){.lg\:hidden{display:none}}@media(width>=64rem){.lg\:text-6xl{font-size:var(--text-6xl);line-height:var(--tw-leading, var(--text-6xl--line-height))}}@media(width>=64rem){.lg\:text-\[3rem\]{font-size:3rem}}@media(width>=64rem){.lg\:text-\[9\.5rem\]{font-size:9.5rem}}@media(width>=80rem){.xl\:text-\[11\.5rem\]{font-size:11.5rem}}}:root{color-scheme:light;--px: 0;--py: 0}html{scroll-behavior:smooth}html,body{height:100%;background:var(--color-bone);color:var(--color-ink);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{overflow-x:hidden}::selection{background:var(--color-ink);color:var(--color-bone)}@media(hover:hover)and (pointer:fine){body,a,button,[role=button],input,textarea,[data-cursor]{cursor:none}input,textarea{cursor:text}}.bg-grid{background-image:linear-gradient(to right,rgba(10,10,10,.05) 1px,transparent 1px),linear-gradient(to bottom,rgba(10,10,10,.05) 1px,transparent 1px);background-size:56px 56px;background-position:calc(-1px + (var(--px, 0) * -12px)) calc(-1px + (var(--py, 0) * -12px));transition:background-position 1.2s cubic-bezier(.2,.8,.2,1)}.bg-grid-fade{-webkit-mask-image:radial-gradient(ellipse at center,black 55%,transparent 100%);mask-image:radial-gradient(ellipse at center,black 55%,transparent 100%)}.ambient-blobs{position:fixed;inset:0;pointer-events:none;z-index:-1;overflow:hidden}.ambient-blobs span{position:absolute;border-radius:999px;filter:blur(90px);opacity:.5;will-change:transform}.ambient-blobs .b1{width:520px;height:520px;left:-120px;top:10%;background:var(--color-accent-soft);animation:blob-drift-a 22s ease-in-out infinite}.ambient-blobs .b2{width:440px;height:440px;right:-120px;top:50%;background:var(--color-sky);animation:blob-drift-b 26s ease-in-out infinite}.ambient-blobs .b3{width:380px;height:380px;left:30%;bottom:-120px;background:var(--color-lavender);animation:blob-drift-c 30s ease-in-out infinite}@keyframes blob-drift-a{0%,to{transform:translate(0) scale(1)}50%{transform:translate(80px,40px) scale(1.1)}}@keyframes blob-drift-b{0%,to{transform:translate(0) scale(1)}50%{transform:translate(-60px,-40px) scale(1.05)}}@keyframes blob-drift-c{0%,to{transform:translate(0) scale(1)}50%{transform:translate(40px,-60px) scale(1.08)}}.noise{position:fixed;inset:0;pointer-events:none;z-index:2;opacity:.045;mix-blend-mode:multiply;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='160' height='160'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 0  0 0 0 0 0  0 0 0 0 0  0 0 0 0.9 0'/></filter><rect width='100%25' height='100%25' filter='url(%23n)'/></svg>")}.scroll-progress{position:fixed;top:0;left:0;right:0;height:2px;z-index:60;background:transparent;pointer-events:none}.scroll-progress__bar{display:block;height:100%;width:100%;transform-origin:left;transform:scaleX(0);background:linear-gradient(90deg,var(--color-ink),var(--color-accent) 60%,var(--color-lime))}.cursor{position:fixed;top:0;left:0;z-index:9999;pointer-events:none;width:18px;height:18px;mix-blend-mode:difference;opacity:0;transition:opacity .3s ease}.cursor.is-active{opacity:1}.cursor__ring{position:absolute;inset:0;border-radius:999px;background:#f5f5f5;transform:scale(1);transition:transform .32s cubic-bezier(.2,.8,.2,1),background .3s ease,width .32s cubic-bezier(.2,.8,.2,1),height .32s cubic-bezier(.2,.8,.2,1)}.cursor.is-press .cursor__ring{transform:scale(.65)}.cursor.is-hover .cursor__ring{transform:scale(2.4);background:#f5f5f5}.cursor.is-view{width:80px;height:80px;mix-blend-mode:normal}.cursor.is-view .cursor__ring{background:var(--color-accent);transform:scale(1)}.cursor__label{position:absolute;inset:0;display:grid;place-items:center;color:#fff;font-family:var(--font-mono);font-size:.72rem;letter-spacing:.2em;font-weight:600;opacity:0;transform:scale(.8);transition:opacity .25s ease,transform .3s cubic-bezier(.2,.8,.2,1)}.cursor.is-view .cursor__label{opacity:1;transform:scale(1)}@media(pointer:coarse){.cursor{display:none!important}}.hero-name{font-family:var(--font-display);font-weight:800;letter-spacing:-.06em;line-height:.85}.serif-italic{font-family:var(--font-serif);font-style:italic;font-weight:400;letter-spacing:-.01em}.letters{display:inline-block;white-space:nowrap;color:var(--color-ink)}.letters .letter{display:inline-block;opacity:0;transform:translateY(60%) rotate(6deg);color:var(--color-ink);will-change:transform,opacity;animation:letter-in .9s cubic-bezier(.2,.8,.2,1) calc(.15s + var(--gd, 0s)) forwards}@keyframes letter-in{0%{opacity:0;transform:translateY(60%) rotate(6deg);filter:blur(6px)}60%{filter:blur(0)}to{opacity:1;transform:translateY(0) rotate(0);filter:blur(0)}}@keyframes hero-fade{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.hero-fade{animation:hero-fade .9s cubic-bezier(.2,.8,.2,1) both}.hero-fade-1{animation-delay:.2s}.hero-fade-2{animation-delay:1.05s}.hero-fade-3{animation-delay:1.35s}.float-wrap{will-change:transform;transition:transform .4s cubic-bezier(.2,.8,.2,1);transform:translate3d(calc(var(--px, 0) * var(--pw, 30px)),calc(var(--py, 0) * var(--pw, 30px)),0)}@keyframes float-a{0%,to{transform:translate(0) rotate(var(--r, -6deg))}50%{transform:translateY(-10px) rotate(calc(var(--r, -6deg) - 1.5deg))}}@keyframes float-b{0%,to{transform:translate(0) rotate(var(--r, 6deg))}50%{transform:translate(-6px,-8px) rotate(calc(var(--r, 6deg) + 2deg))}}@keyframes float-c{0%,to{transform:translate(0) rotate(var(--r, -3deg))}50%{transform:translate(8px,-12px) rotate(calc(var(--r, -3deg) + 1deg))}}.float-1{animation:float-a 7.5s ease-in-out infinite}.float-2{animation:float-b 8.2s ease-in-out infinite;animation-delay:.4s}.float-3{animation:float-c 9s ease-in-out infinite;animation-delay:.9s}.float-4{animation:float-a 8.8s ease-in-out infinite;animation-delay:.2s}.float-5{animation:float-b 7.8s ease-in-out infinite;animation-delay:1.1s}.sticker{display:inline-flex;align-items:center;gap:.4rem;padding:.5rem .95rem;background:#fff;color:var(--color-ink);border-radius:999px;border:1px solid rgba(10,10,10,.1);box-shadow:0 1px #0a0a0a0a,0 8px 22px -10px #0a0a0a2e;font-family:var(--font-mono);font-weight:500;font-size:.78rem;letter-spacing:-.005em;white-space:nowrap;transform-origin:center}.sticker .dot{width:6px;height:6px;border-radius:999px;background:var(--color-ink)}.sticker.is-accent{background:var(--color-accent);color:#fff;border-color:transparent}.sticker.is-accent .dot{background:#fff}.sticker.is-lime{background:var(--color-lime);border-color:transparent}.sticker.is-sky{background:var(--color-sky);border-color:transparent}.sticker.is-lavender{background:var(--color-lavender);border-color:transparent}.sticker.is-ink{background:var(--color-ink);color:#fff;border-color:transparent}.sticker.is-ink .dot{background:var(--color-lime)}.btn{position:relative;display:inline-flex;align-items:center;gap:.55rem;padding:.95rem 1.4rem;border-radius:999px;font-family:var(--font-sans);font-weight:500;font-size:.95rem;letter-spacing:-.01em;transition:background .3s ease,color .3s ease,box-shadow .45s ease,border-color .3s ease;cursor:pointer;border:1px solid transparent;white-space:nowrap;isolation:isolate;overflow:hidden;--mx: .5;--my: .5}.btn:before{content:"";position:absolute;inset:-1px;border-radius:inherit;padding:1px;background:radial-gradient(120px 120px at calc(var(--mx) * 100%) calc(var(--my) * 100%),rgba(255,91,34,.45),transparent 70%);opacity:0;transition:opacity .35s ease;pointer-events:none;z-index:-1}.btn:hover:before{opacity:1}.btn:hover{box-shadow:0 18px 42px -16px #ff5b2266}.btn-primary{background:var(--color-ink);color:#fff;box-shadow:0 12px 28px -14px #0a0a0a8c}.btn-primary:hover{box-shadow:0 20px 44px -16px #0a0a0aa6,0 0 0 1px #ff5b2240}.btn-ghost{background:#fff;color:var(--color-ink);border-color:#0a0a0a1f}.btn-ghost:hover{background:var(--color-cream)}.ripple{position:absolute;border-radius:999px;background:#ffffff59;transform:scale(0);animation:ripple .7s cubic-bezier(.2,.8,.2,1) forwards;pointer-events:none;z-index:0}.btn-ghost .ripple{background:#0a0a0a14}@keyframes ripple{to{transform:scale(1);opacity:0}}.project-card{position:relative;display:block;border-radius:28px;background:#fff;border:1px solid rgba(10,10,10,.08);overflow:hidden;transform-style:preserve-3d;transform:perspective(1100px) rotateX(var(--tx, 0deg)) rotateY(var(--ty, 0deg)) translateY(0);transition:transform .5s cubic-bezier(.2,.8,.2,1),box-shadow .6s ease,border-color .3s ease;box-shadow:0 1px #0a0a0a0a;isolation:isolate;--mx: 50%;--my: 50%}.project-card:hover{transform:perspective(1100px) rotateX(var(--tx, 0deg)) rotateY(var(--ty, 0deg)) translateY(-6px);box-shadow:0 30px 60px -30px #0a0a0a4d,0 0 0 1px #ff5b2259;border-color:transparent}.project-card:before{content:"";position:absolute;inset:0;border-radius:inherit;background:radial-gradient(320px 320px at var(--mx) var(--my),rgba(255,91,34,.22),transparent 60%);opacity:0;transition:opacity .4s ease;pointer-events:none;z-index:3}.project-card:hover:before{opacity:1}.project-thumb{position:relative;aspect-ratio:16 / 10;display:flex;align-items:center;justify-content:center;overflow:hidden}.project-thumb:before{content:"";position:absolute;inset:0;background:radial-gradient(120% 80% at 0% 0%,rgba(255,255,255,.25),transparent 60%),radial-gradient(120% 80% at 100% 100%,rgba(0,0,0,.18),transparent 60%)}.project-thumb .thumb-scale{transition:transform 1.2s cubic-bezier(.2,.8,.2,1);will-change:transform}.project-card:hover .thumb-scale{transform:scale(1.08)}.project-meta{display:inline-flex;gap:.4rem;margin-top:.7rem;opacity:0;transform:translateY(6px);transition:opacity .45s ease,transform .5s cubic-bezier(.2,.8,.2,1)}.project-card:hover .project-meta{opacity:1;transform:translateY(0)}.project-tag{display:inline-flex;align-items:center;gap:.35rem;padding:.25rem .6rem;background:#0a0a0a0f;border-radius:999px;font-family:var(--font-mono);font-size:.7rem;color:#0a0a0ab3}.project-tag .tag-dot{width:5px;height:5px;border-radius:999px;background:var(--color-accent)}.project-card .arrow{transition:transform .45s cubic-bezier(.2,.8,.2,1)}.project-card:hover .arrow{transform:translate(4px,-4px) rotate(-18deg)}.skill-pill{position:relative;display:inline-flex;align-items:center;gap:.5rem;padding:.7rem 1.1rem;background:#fff;border:1px solid rgba(10,10,10,.1);border-radius:999px;font-family:var(--font-mono);font-weight:500;font-size:.95rem;letter-spacing:-.01em;transition:transform .35s cubic-bezier(.2,.8,.2,1),background .3s ease,color .3s ease,border-color .3s ease,box-shadow .4s ease;cursor:default;overflow:visible}.skill-pill:hover{transform:translateY(-4px) rotate(-2deg) scale(1.04);background:var(--color-ink);color:#fff;border-color:var(--color-ink);box-shadow:0 18px 30px -18px #0a0a0a73}.skill-pill:hover:after{content:"";position:absolute;inset:-3px;border-radius:inherit;border:1px solid var(--color-accent);opacity:0;animation:skill-pulse 1.6s ease-out infinite;pointer-events:none}@keyframes skill-pulse{0%{transform:scale(1);opacity:.6}to{transform:scale(1.18);opacity:0}}.skill-pill .skill-dot{width:8px;height:8px;border-radius:999px;background:var(--color-accent);transition:background .3s ease,transform .4s cubic-bezier(.2,.8,.2,1)}.skill-pill:hover .skill-dot{background:var(--color-lime);transform:scale(1.3) rotate(90deg)}.skill-card .skill-icon{transition:transform .5s cubic-bezier(.2,.8,.2,1)}.skill-card:hover .skill-icon{transform:rotate(-12deg) scale(1.1)}.skill-bar{position:relative;height:6px;border-radius:999px;background:#0a0a0a14;overflow:hidden}.skill-bar>span{position:absolute;inset:0 auto 0 0;width:var(--p, 0%);background:linear-gradient(90deg,var(--color-ink),var(--color-accent));border-radius:inherit;transform:translate(-100%);transition:transform 1.1s cubic-bezier(.2,.8,.2,1)}.skill-card.is-visible .skill-bar>span{transform:translate(0)}.particles{position:absolute;inset:0;pointer-events:none;overflow:hidden;z-index:0}.particles span{position:absolute;width:6px;height:6px;border-radius:999px;background:var(--color-ink);opacity:.1}.particles span:nth-child(1){left:10%;top:20%;animation:particle 14s ease-in-out infinite}.particles span:nth-child(2){left:85%;top:30%;width:10px;height:10px;background:var(--color-accent);opacity:.18;animation:particle 18s ease-in-out infinite reverse}.particles span:nth-child(3){left:25%;top:75%;animation:particle 17s ease-in-out infinite;animation-delay:2s}.particles span:nth-child(4){left:70%;top:80%;background:var(--color-accent);opacity:.12;animation:particle 20s ease-in-out infinite reverse;animation-delay:3s}.particles span:nth-child(5){left:50%;top:15%;width:4px;height:4px;animation:particle 16s ease-in-out infinite;animation-delay:1s}.particles span:nth-child(6){left:90%;top:65%;width:8px;height:8px;opacity:.12;animation:particle 19s ease-in-out infinite;animation-delay:5s}@keyframes particle{0%,to{transform:translate(0)}50%{transform:translate(40px,-60px)}}.field{position:relative;display:block}.field input,.field textarea{width:100%;background:transparent;border:0;border-bottom:1px solid rgba(10,10,10,.18);padding:1.4rem 0 .65rem;font-family:var(--font-sans);font-size:1.05rem;color:var(--color-ink);outline:none;transition:border-color .3s ease;resize:none}.field textarea{min-height:120px}.field>span:not(.underline):not(.field-check):not(.field-counter){position:absolute;left:0;top:1.3rem;font-family:var(--font-sans);font-size:1rem;color:#0a0a0a8c;pointer-events:none;transition:transform .3s cubic-bezier(.2,.8,.2,1),color .3s ease,font-size .3s ease;transform-origin:left top}.field input:focus,.field textarea:focus{border-bottom-color:var(--color-ink)}.field input:focus~span:not(.underline):not(.field-check):not(.field-counter),.field input:not(:placeholder-shown)~span:not(.underline):not(.field-check):not(.field-counter),.field textarea:focus~span:not(.underline):not(.field-check):not(.field-counter),.field textarea:not(:placeholder-shown)~span:not(.underline):not(.field-check):not(.field-counter){transform:translateY(-1.15rem) scale(.78);color:var(--color-ink)}.field .underline{position:absolute;left:0;bottom:0;height:2px;width:0;background:var(--color-accent);transition:width .55s cubic-bezier(.2,.8,.2,1);pointer-events:none}.field input:focus~.underline,.field textarea:focus~.underline{width:100%}.field input:focus,.field textarea:focus{border-bottom-color:transparent}.eyebrow{display:inline-flex;align-items:center;gap:.6rem;font-family:var(--font-mono);font-size:.78rem;letter-spacing:.12em;text-transform:uppercase;color:#0a0a0aa6}.eyebrow:before{content:"";width:28px;height:1px;background:#0a0a0a66}@keyframes marquee{0%{transform:translate(0)}to{transform:translate(-50%)}}.marquee-track{display:flex;width:max-content;animation:marquee 28s linear infinite}.nav-links{position:relative;align-items:center;gap:.15rem}.nav-indicator{position:absolute;top:50%;left:0;height:34px;width:var(--nav-w, 0px);transform:translate(var(--nav-x, 0px),-50%);background:#0a0a0a12;border-radius:999px;transition:transform .55s cubic-bezier(.22,1,.36,1),width .55s cubic-bezier(.22,1,.36,1),opacity .3s ease;opacity:0;pointer-events:none;z-index:0}.nav-indicator.is-on{opacity:1}.nav-link{position:relative;padding:.55rem 1rem;border-radius:999px;font-size:.92rem;font-weight:500;color:#0a0a0ab3;transition:color .3s ease;z-index:1}.nav-link:hover{color:var(--color-ink)}.nav-link:after{content:"";position:absolute;left:50%;bottom:.35rem;height:1.5px;width:0;background:var(--color-accent);transform:translate(-50%);transition:width .4s cubic-bezier(.22,1,.36,1)}.nav-link:hover:after{width:calc(100% - 1.6rem)}.nav-link.is-active{color:var(--color-ink)}.nav-glass{background:#ffffffb3;backdrop-filter:saturate(180%) blur(18px);-webkit-backdrop-filter:saturate(180%) blur(18px)}.nav-glass.is-scrolled{background:#ffffffd1;box-shadow:0 18px 40px -18px #0a0a0a47,0 0 0 1px #0a0a0a0d}.reveal{opacity:0;transform:translateY(28px);transition:opacity .9s cubic-bezier(.22,1,.36,1),transform .9s cubic-bezier(.22,1,.36,1);will-change:opacity,transform}.reveal.is-visible{opacity:1;transform:translateY(0)}.reveal-delay-1{transition-delay:.08s}.reveal-delay-2{transition-delay:.16s}.reveal-delay-3{transition-delay:.24s}.reveal-delay-4{transition-delay:.32s}.reveal-delay-5{transition-delay:.4s}.reveal-delay-6{transition-delay:.48s}.line{display:block;opacity:0;transform:translateY(18px);transition:opacity .8s cubic-bezier(.22,1,.36,1),transform .8s cubic-bezier(.22,1,.36,1)}.reveal.is-visible .line{opacity:1;transform:translateY(0)}.reveal.is-visible .line:nth-child(1){transition-delay:.05s}.reveal.is-visible .line:nth-child(2){transition-delay:.18s}.reveal.is-visible .line:nth-child(3){transition-delay:.32s}.reveal.is-visible .line:nth-child(4){transition-delay:.46s}.about-card{animation:about-float 9s ease-in-out infinite}@keyframes about-float{0%,to{transform:translateY(0) rotate(-1.5deg)}50%{transform:translateY(-12px) rotate(-.4deg)}}.typewriter{display:inline-block;min-width:1ch}.typewriter:after{content:"";display:inline-block;width:2px;height:.9em;background:var(--color-accent);margin-left:4px;vertical-align:baseline;transform:translateY(.1em);animation:caret 1.05s steps(1) infinite}@keyframes caret{50%{opacity:0}}.contact-form{isolation:isolate;transition:transform .6s cubic-bezier(.2,.8,.2,1),box-shadow .5s ease}.contact-form:before{content:"";position:absolute;inset:0;border-radius:inherit;background:radial-gradient(540px at var(--mx, 50%) var(--my, 50%),rgba(255,91,34,.12),transparent 55%);opacity:0;transition:opacity .4s ease;pointer-events:none;z-index:0}.contact-form:hover:before{opacity:1}.contact-form>*{position:relative;z-index:1}.contact-form.is-error{animation:form-shake .55s cubic-bezier(.36,.07,.19,.97);box-shadow:0 0 0 2px #ef444466}@keyframes form-shake{10%,90%{transform:translate3d(-2px,0,0)}20%,80%{transform:translate3d(4px,0,0)}30%,50%,70%{transform:translate3d(-6px,0,0)}40%,60%{transform:translate3d(6px,0,0)}}.contact-form.is-sent{box-shadow:0 30px 70px -30px #10b98159,0 0 0 1px #10b98133}.contact-form__progress{position:absolute;top:0;left:0;right:0;height:3px;background:#0a0a0a0f;z-index:4;border-top-left-radius:inherit;border-top-right-radius:inherit;overflow:hidden}.contact-form__progress>span{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--color-ink),var(--color-accent) 80%,var(--color-lime));transition:width .55s cubic-bezier(.2,.8,.2,1);box-shadow:0 0 14px #ff5b2266}.field--check .field-check{position:absolute;left:auto;top:1.35rem;right:.1rem;display:grid;place-items:center;width:22px;height:22px;border-radius:999px;background:#10b981;color:#fff;opacity:0;transform:scale(.4) rotate(-45deg);transition:opacity .35s ease,transform .45s cubic-bezier(.2,.8,.2,1);pointer-events:none;box-shadow:0 0 0 3px #10b98126}.field--check.is-valid .field-check{opacity:1;transform:scale(1) rotate(0)}.field--check.field:has(textarea) .field-check{top:auto;bottom:.6rem;right:.1rem}.field-counter{position:absolute;left:auto;top:auto;right:2.4rem;bottom:.7rem;font-family:var(--font-mono);font-size:.72rem;font-variant-numeric:tabular-nums;color:#0a0a0a73;pointer-events:none;transition:color .3s ease}.field-counter.is-warn{color:#f59e0b}.field-counter.is-max{color:#ef4444;font-weight:600}.loader-dot{display:inline-block;width:6px;height:6px;border-radius:999px;background:currentColor;animation:dot-bounce .9s ease-in-out infinite}.loader-dot:nth-child(2){animation-delay:.15s}.loader-dot:nth-child(3){animation-delay:.3s}@keyframes dot-bounce{0%,80%,to{transform:translateY(0);opacity:.5}40%{transform:translateY(-6px);opacity:1}}.btn.is-ready{box-shadow:0 0 #ff5b228c,0 14px 32px -14px #ff5b2273;animation:btn-ready-pulse 2.6s ease-in-out infinite}@keyframes btn-ready-pulse{0%,to{box-shadow:0 0 #ff5b228c,0 14px 32px -14px #ff5b2273}50%{box-shadow:0 0 0 8px #ff5b2200,0 18px 40px -12px #ff5b2299}}.success-view{position:relative;min-height:280px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:2rem 1rem;overflow:hidden;animation:success-rise .6s cubic-bezier(.2,.8,.2,1) both}@keyframes success-rise{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.success-view h3{font-family:var(--font-display);font-size:clamp(1.5rem,3vw,2rem);font-weight:700;letter-spacing:-.02em;margin-top:1.5rem;animation:success-text-in .6s cubic-bezier(.2,.8,.2,1) .4s both}.success-view p{margin-top:.5rem;font-size:.95rem;color:#0a0a0aa6;max-width:360px;animation:success-text-in .6s cubic-bezier(.2,.8,.2,1) .55s both}@keyframes success-text-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.success-icon{width:72px;height:72px;border-radius:999px;background:#10b98114;display:grid;place-items:center;animation:success-icon-pop .5s cubic-bezier(.2,.8,.2,1) .1s both}@keyframes success-icon-pop{0%{transform:scale(.5);opacity:0}to{transform:scale(1);opacity:1}}.success-icon svg{width:48px;height:48px}.success-check__circle{stroke:#10b981;stroke-dasharray:153;stroke-dashoffset:153;animation:success-draw .6s cubic-bezier(.2,.8,.2,1) .2s forwards}.success-check__path{stroke:#10b981;stroke-dasharray:36;stroke-dashoffset:36;animation:success-draw .45s cubic-bezier(.2,.8,.2,1) .7s forwards}@keyframes success-draw{to{stroke-dashoffset:0}}.confetti{position:absolute;top:-20px;border-radius:2px;opacity:0;animation:confetti-fall linear forwards;pointer-events:none;z-index:5;will-change:transform,opacity}@keyframes confetti-fall{0%{transform:translate(0) rotate(0);opacity:0}8%{opacity:1}to{transform:translate(var(--drift, 0px),420px) rotate(calc(var(--rot, 0deg) + 720deg));opacity:0}}html.dark .contact-form__progress{background:#f5f5f514}html.dark .field-counter{color:#f5f5f573}html.dark .success-view p{color:#f5f5f5a6}html.dark .success-icon{background:#10b98124}.check-draw{width:18px;height:18px;stroke:currentColor;stroke-width:2.4;fill:none;stroke-linecap:round;stroke-linejoin:round}.check-draw path{stroke-dasharray:26;stroke-dashoffset:26;animation:draw-check .55s cubic-bezier(.2,.8,.2,1) forwards}@keyframes draw-check{to{stroke-dashoffset:0}}html.dark{--color-ink: #f5f5f5;--color-bone: #0b0b0c;--color-cream: #151517;--color-grid: rgba(245, 245, 245, .05);color-scheme:dark}html.dark body{background:var(--color-bone);color:var(--color-ink)}html.dark .bg-grid{background-image:linear-gradient(to right,rgba(245,245,245,.06) 1px,transparent 1px),linear-gradient(to bottom,rgba(245,245,245,.06) 1px,transparent 1px)}html.dark .noise{mix-blend-mode:screen;opacity:.05}html.dark .ambient-blobs span{opacity:.28}html.dark .nav-glass{background:#141416b3;border-color:#ffffff14}html.dark .nav-glass.is-scrolled{background:#141416d9;box-shadow:0 18px 40px -18px #000000b3,0 0 0 1px #ffffff0d}html.dark .nav-link{color:#f5f5f5b8}html.dark .nav-link:hover,html.dark .nav-link.is-active{color:var(--color-ink)}html.dark .nav-indicator{background:#f5f5f51a}html.dark nav a[href="#contact"]{background:var(--color-ink)!important;color:var(--color-bone)!important}html.dark .btn-primary{background:var(--color-ink);color:var(--color-bone);box-shadow:0 12px 28px -14px #000000b3}html.dark .btn-ghost{background:#17171a;color:var(--color-ink);border-color:#f5f5f51f}html.dark .btn-ghost:hover{background:#1f1f22}html.dark .sticker{background:#18181b;color:var(--color-ink);border-color:#f5f5f51f;box-shadow:0 1px #0000004d,0 8px 22px -10px #0009}html.dark .sticker .dot{background:var(--color-ink)}html.dark .sticker.is-ink{background:#fafaf7;color:#0a0a0a}html.dark .sticker.is-ink .dot{background:var(--color-accent)}html.dark .project-card{background:#141416;border-color:#f5f5f514}html.dark .project-tag{background:#f5f5f514;color:#f5f5f5b8}html.dark .project-card .arrow{background:#fafaf7;color:#0a0a0a}html.dark .skill-pill{background:#141416;border-color:#f5f5f51a}html.dark .skill-pill:hover{background:#fafaf7;color:#0a0a0a;border-color:#fafaf7}html.dark .skill-pill:hover .skill-dot{background:var(--color-accent)}html.dark .skill-bar{background:#f5f5f514}html.dark form{background:#141416;border-color:#f5f5f514}html.dark .field input,html.dark .field textarea{color:var(--color-ink);border-bottom-color:#f5f5f533}html.dark .field input:focus,html.dark .field textarea:focus{border-bottom-color:transparent}html.dark .field>span:not(.underline):not(.field-check):not(.field-counter){color:#f5f5f580}html.dark .field input:focus~span:not(.underline):not(.field-check):not(.field-counter),html.dark .field input:not(:placeholder-shown)~span:not(.underline):not(.field-check):not(.field-counter),html.dark .field textarea:focus~span:not(.underline):not(.field-check):not(.field-counter),html.dark .field textarea:not(:placeholder-shown)~span:not(.underline):not(.field-check):not(.field-counter){color:var(--color-ink)}html.dark .text-black\/85{color:#f5f5f5d9}html.dark .text-black\/80{color:#f5f5f5cc}html.dark .text-black\/75{color:#f5f5f5bf}html.dark .text-black\/70{color:#f5f5f5b3}html.dark .text-black\/65{color:#f5f5f5a6}html.dark .text-black\/60{color:#f5f5f599}html.dark .text-black\/55{color:#f5f5f58c}html.dark .text-black\/50{color:#f5f5f580}html.dark .text-black\/45{color:#f5f5f573}html.dark .text-black\/40{color:#f5f5f566}html.dark .border-black\/10{border-color:#f5f5f51a}html.dark .border-black\/12{border-color:#f5f5f51f}html.dark .border-black\/15{border-color:#f5f5f526}html.dark .border-black\/20{border-color:#f5f5f533}html.dark .bg-white{background-color:#141416}html.dark .bg-white\/85{background-color:#141416d9}html.dark .bg-white\/70{background-color:#141416b3}html.dark .bg-black\/80{background-color:#f5f5f5e0;color:#0a0a0a}html.dark .bg-black\/10{background-color:#f5f5f51a}html.dark .bg-black\/5{background-color:#f5f5f50f}html.dark .eyebrow{color:#f5f5f5a6}html.dark .eyebrow:before{background:#f5f5f566}.theme-toggle{transition:transform .3s ease,background .3s ease,border-color .3s ease;color:var(--color-ink)}.theme-toggle:hover{transform:scale(1.08) rotate(-8deg)}html.dark .theme-toggle{border-color:#f5f5f524}body,.project-card,.skill-pill,.skill-card,.sticker,.btn,form,.nav-glass{transition:background-color .4s ease,color .4s ease,border-color .4s ease}html.dark ::selection{background:var(--color-accent);color:#0a0a0a}@media(prefers-reduced-motion:reduce){.reveal,.line,.letters .letter,.hero-fade,.shine,.about-card,.float-1,.float-2,.float-3,.float-4,.float-5,.marquee-track,.ambient-blobs span,.particles span{animation:none!important;transition:none!important}.reveal,.line,.letters .letter{opacity:1!important;transform:none!important}.skill-card .skill-bar>span{transform:translate(0)!important;transition:none!important}.cursor{display:none!important}html{scroll-behavior:auto}}@property --tw-translate-x{syntax: "*"; inherits: false; initial-value: 0;}@property --tw-translate-y{syntax: "*"; inherits: false; initial-value: 0;}@property --tw-translate-z{syntax: "*"; inherits: false; initial-value: 0;}@property --tw-rotate-x{syntax: "*"; inherits: false;}@property --tw-rotate-y{syntax: "*"; inherits: false;}@property --tw-rotate-z{syntax: "*"; inherits: false;}@property --tw-skew-x{syntax: "*"; inherits: false;}@property --tw-skew-y{syntax: "*"; inherits: false;}@property --tw-space-y-reverse{syntax: "*"; inherits: false; initial-value: 0;}@property --tw-border-style{syntax: "*"; inherits: false; initial-value: solid;}@property --tw-leading{syntax: "*"; inherits: false;}@property --tw-font-weight{syntax: "*"; inherits: false;}@property --tw-tracking{syntax: "*"; inherits: false;}@property --tw-shadow{syntax: "*"; inherits: false; initial-value: 0 0 #0000;}@property --tw-shadow-color{syntax: "*"; inherits: false;}@property --tw-shadow-alpha{syntax: "<percentage>"; inherits: false; initial-value: 100%;}@property --tw-inset-shadow{syntax: "*"; inherits: false; initial-value: 0 0 #0000;}@property --tw-inset-shadow-color{syntax: "*"; inherits: false;}@property --tw-inset-shadow-alpha{syntax: "<percentage>"; inherits: false; initial-value: 100%;}@property --tw-ring-color{syntax: "*"; inherits: false;}@property --tw-ring-shadow{syntax: "*"; inherits: false; initial-value: 0 0 #0000;}@property --tw-inset-ring-color{syntax: "*"; inherits: false;}@property --tw-inset-ring-shadow{syntax: "*"; inherits: false; initial-value: 0 0 #0000;}@property --tw-ring-inset{syntax: "*"; inherits: false;}@property --tw-ring-offset-width{syntax: "<length>"; inherits: false; initial-value: 0px;}@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;}@property --tw-scale-x{syntax: "*"; inherits: false; initial-value: 1;}@property --tw-scale-y{syntax: "*"; inherits: false; initial-value: 1;}@property --tw-scale-z{syntax: "*"; inherits: false; initial-value: 1;}@keyframes pulse{50%{opacity:.5}}@layer properties{@supports ((-webkit-hyphens: none) and (not (margin-trim: inline))) or ((-moz-orient: inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-translate-x: 0;--tw-translate-y: 0;--tw-translate-z: 0;--tw-rotate-x: initial;--tw-rotate-y: initial;--tw-rotate-z: initial;--tw-skew-x: initial;--tw-skew-y: initial;--tw-space-y-reverse: 0;--tw-border-style: solid;--tw-leading: initial;--tw-font-weight: initial;--tw-tracking: initial;--tw-shadow: 0 0 #0000;--tw-shadow-color: initial;--tw-shadow-alpha: 100%;--tw-inset-shadow: 0 0 #0000;--tw-inset-shadow-color: initial;--tw-inset-shadow-alpha: 100%;--tw-ring-color: initial;--tw-ring-shadow: 0 0 #0000;--tw-inset-ring-color: initial;--tw-inset-ring-shadow: 0 0 #0000;--tw-ring-inset: initial;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-offset-shadow: 0 0 #0000;--tw-blur: initial;--tw-brightness: initial;--tw-contrast: initial;--tw-grayscale: initial;--tw-hue-rotate: initial;--tw-invert: initial;--tw-opacity: initial;--tw-saturate: initial;--tw-sepia: initial;--tw-drop-shadow: initial;--tw-drop-shadow-color: initial;--tw-drop-shadow-alpha: 100%;--tw-drop-shadow-size: initial;--tw-backdrop-blur: initial;--tw-backdrop-brightness: initial;--tw-backdrop-contrast: initial;--tw-backdrop-grayscale: initial;--tw-backdrop-hue-rotate: initial;--tw-backdrop-invert: initial;--tw-backdrop-opacity: initial;--tw-backdrop-saturate: initial;--tw-backdrop-sepia: initial;--tw-duration: initial;--tw-ease: initial;--tw-scale-x: 1;--tw-scale-y: 1;--tw-scale-z: 1}}}
