/*! tailwindcss v4.1.12 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-y-reverse:0;--tw-space-x-reverse:0;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-duration:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--color-gray-300:oklch(87.2% .01 258.338);--color-gray-400:oklch(70.7% .022 261.325);--color-gray-700:oklch(37.3% .034 259.733);--color-gray-800:oklch(27.8% .033 256.848);--color-gray-900:oklch(21% .034 264.665);--color-black:#000;--color-white:#fff;--spacing:.25rem;--container-lg:32rem;--container-3xl:48rem;--container-4xl:56rem;--container-6xl:72rem;--container-7xl:80rem;--text-sm:.875rem;--text-sm--line-height:calc(1.25/.875);--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-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-semibold:600;--font-weight-bold:700;--tracking-wide:.025em;--leading-relaxed:1.625;--radius-md:.375rem;--radius-lg:.5rem;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.fixed{position:fixed}.top-0{top:calc(var(--spacing)*0)}.right-0{right:calc(var(--spacing)*0)}.left-0{left:calc(var(--spacing)*0)}.z-50{z-index:50}.order-1{order:1}.order-2{order:2}.mx-auto{margin-inline:auto}.mt-3{margin-top:calc(var(--spacing)*3)}.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-6{margin-bottom:calc(var(--spacing)*6)}.mb-8{margin-bottom:calc(var(--spacing)*8)}.mb-12{margin-bottom:calc(var(--spacing)*12)}.mb-14{margin-bottom:calc(var(--spacing)*14)}.mb-16{margin-bottom:calc(var(--spacing)*16)}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.h-4{height:calc(var(--spacing)*4)}.h-5{height:calc(var(--spacing)*5)}.h-6{height:calc(var(--spacing)*6)}.h-12{height:calc(var(--spacing)*12)}.h-16{height:calc(var(--spacing)*16)}.h-80{height:calc(var(--spacing)*80)}.h-auto{height:auto}.min-h-screen{min-height:100vh}.w-4{width:calc(var(--spacing)*4)}.w-5{width:calc(var(--spacing)*5)}.w-6{width:calc(var(--spacing)*6)}.w-12{width:calc(var(--spacing)*12)}.w-80{width:calc(var(--spacing)*80)}.max-w-3xl{max-width:var(--container-3xl)}.max-w-4xl{max-width:var(--container-4xl)}.max-w-6xl{max-width:var(--container-6xl)}.max-w-7xl{max-width:var(--container-7xl)}.max-w-full{max-width:100%}.max-w-lg{max-width:var(--container-lg)}.transform{transform:var(--tw-rotate-x,)var(--tw-rotate-y,)var(--tw-rotate-z,)var(--tw-skew-x,)var(--tw-skew-y,)}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-2{gap:calc(var(--spacing)*2)}.gap-3{gap:calc(var(--spacing)*3)}.gap-4{gap:calc(var(--spacing)*4)}.gap-5{gap:calc(var(--spacing)*5)}.gap-6{gap:calc(var(--spacing)*6)}.gap-8{gap:calc(var(--spacing)*8)}.gap-12{gap:calc(var(--spacing)*12)}:where(.space-y-1>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*1)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*1)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-6>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*6)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*6)*calc(1 - var(--tw-space-y-reverse)))}: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)))}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:var(--radius-lg)}.rounded-md{border-radius:var(--radius-md)}.border{border-style:var(--tw-border-style);border-width:1px}.border-gray-700{border-color:var(--color-gray-700)}.border-gray-800{border-color:var(--color-gray-800)}.bg-black{background-color:var(--color-black)}.bg-gray-800{background-color:var(--color-gray-800)}.bg-gray-900{background-color:var(--color-gray-900)}.bg-gray-900\/40{background-color:#10182866}@supports (color:color-mix(in lab,red,red)){.bg-gray-900\/40{background-color:color-mix(in oklab,var(--color-gray-900)40%,transparent)}}.bg-gray-900\/50{background-color:#10182880}@supports (color:color-mix(in lab,red,red)){.bg-gray-900\/50{background-color:color-mix(in oklab,var(--color-gray-900)50%,transparent)}}.object-cover{object-fit:cover}.p-5{padding:calc(var(--spacing)*5)}.p-6{padding:calc(var(--spacing)*6)}.px-2{padding-inline:calc(var(--spacing)*2)}.px-3{padding-inline:calc(var(--spacing)*3)}.px-4{padding-inline:calc(var(--spacing)*4)}.py-1{padding-block:calc(var(--spacing)*1)}.py-2{padding-block:calc(var(--spacing)*2)}.py-8{padding-block:calc(var(--spacing)*8)}.py-20{padding-block:calc(var(--spacing)*20)}.pt-2{padding-top:calc(var(--spacing)*2)}.pt-16{padding-top:calc(var(--spacing)*16)}.pb-3{padding-bottom:calc(var(--spacing)*3)}.text-center{text-align:center}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-4xl{font-size:var(--text-4xl);line-height:var(--tw-leading,var(--text-4xl--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))}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-wide{--tw-tracking:var(--tracking-wide);letter-spacing:var(--tracking-wide)}.text-gray-300{color:var(--color-gray-300)}.text-gray-400{color:var(--color-gray-400)}.text-white{color:var(--color-white)}.uppercase{text-transform:uppercase}.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))}.duration-300{--tw-duration:.3s;transition-duration:.3s}@media (min-width:40rem){.sm\:px-6{padding-inline:calc(var(--spacing)*6)}}@media (min-width:48rem){.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width:64rem){.lg\:flex{display:flex}.lg\:hidden{display:none}.lg\:h-96{height:calc(var(--spacing)*96)}.lg\:w-96{width:calc(var(--spacing)*96)}.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:px-8{padding-inline:calc(var(--spacing)*8)}.lg\:text-right{text-align:right}.lg\:text-5xl{font-size:var(--text-5xl);line-height:var(--tw-leading,var(--text-5xl--line-height))}.lg\:text-6xl{font-size:var(--text-6xl);line-height:var(--tw-leading,var(--text-6xl--line-height))}}}html{scroll-behavior:smooth}@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-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}.portfolio-shell{--canvas: #09090d;--surface: #111116;--surface-raised: #17171e;--ink: #f4f1ea;--muted: #a09da8;--line: rgb(244 241 234 / 12%);--violet: #a78bfa;--lime: #d6ff62;--mono: "SFMono-Regular", Consolas, "Liberation Mono", monospace;color:var(--ink);background:radial-gradient(ellipse at 76% 15%,rgb(89 66 142 / 9%),transparent 35rem),var(--canvas);font-family:Inter,Avenir Next,Avenir,sans-serif;overflow:clip}.portfolio-shell ::selection{color:var(--canvas);background:var(--lime)}.portfolio-scroll-progress{position:fixed;z-index:70;top:0;right:0;left:0;height:2px;background:linear-gradient(90deg,var(--lime),var(--violet));box-shadow:0 0 .8rem #a78bfa73;pointer-events:none;transform:scaleX(0);transform-origin:left center}body.has-playful-cursor .portfolio-shell,body.has-playful-cursor .portfolio-shell *{cursor:none!important}.portfolio-cursor{position:fixed;z-index:100;top:0;left:0;display:grid;width:2.6rem;height:2.6rem;place-items:center;pointer-events:none;opacity:0;scale:.72;translate:-50% -50%;transition:opacity .18s ease,scale .22s cubic-bezier(.2,.8,.2,1)}.portfolio-cursor.is-visible{opacity:1;scale:1}.portfolio-cursor__ring{display:grid;width:100%;height:100%;place-items:center;border:1px solid rgb(214 255 98 / 75%);border-radius:50%;background:#09090d94;box-shadow:0 0 1.4rem #d6ff621f;color:var(--lime);font-family:var(--mono);font-size:1.15rem;transition:border-color .18s ease,background .18s ease,color .18s ease,scale .18s ease;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.portfolio-cursor:after{position:absolute;top:2.9rem;left:50%;color:var(--lime);content:attr(data-label);font-family:var(--mono);font-size:.48rem;letter-spacing:.13em;white-space:nowrap;transform:translate(-50%)}.portfolio-cursor.is-active{scale:1.15}.portfolio-cursor.is-active .portfolio-cursor__ring{border-color:var(--lime);background:var(--lime);color:var(--canvas)}.portfolio-cursor.is-pressed{scale:.84}.portfolio-cursor.is-pressed .portfolio-cursor__ring{background:var(--violet);border-color:var(--violet)}.portfolio-shell a{text-decoration:none}.portfolio-shell a:focus-visible,.portfolio-shell button:focus-visible{outline:2px solid var(--lime);outline-offset:5px}.portfolio-nav{padding:.35rem 0;border-bottom:1px solid var(--line);background:#09090dc7;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}.portfolio-nav>div{max-width:88rem}.portfolio-wordmark{display:inline-flex;align-items:center;gap:.7rem;color:var(--ink);font-size:.95rem;letter-spacing:-.025em}.portfolio-wordmark__mark{display:grid;width:2rem;height:2rem;place-items:center;border:1px solid rgb(214 255 98 / 55%);border-radius:50%;color:var(--lime);font-family:var(--mono);font-size:.9rem}.portfolio-nav__link{position:relative;color:#c3c0c8;font-size:.78rem;letter-spacing:.04em}.portfolio-nav__link:after{position:absolute;right:0;bottom:-.45rem;left:0;height:1px;background:var(--lime);content:"";transform:scaleX(0);transform-origin:left;transition:transform .22s ease}.portfolio-nav__link:hover,.portfolio-nav__link:focus-visible{color:var(--lime)}.portfolio-nav__link:hover:after,.portfolio-nav__link:focus-visible:after{transform:scaleX(1)}.portfolio-button{display:inline-flex;min-height:3.1rem;align-items:center;justify-content:center;gap:.65rem;padding:.8rem 1.15rem;border:1px solid var(--lime);border-radius:.35rem;background:var(--lime);color:#101109;font-size:.82rem;font-weight:700;letter-spacing:.015em;transition:background .2s ease,color .2s ease,transform .2s ease,box-shadow .2s ease}.portfolio-button:hover{box-shadow:0 0 2rem #d6ff622e;transform:translateY(-3px)}.portfolio-button--small{min-height:2.5rem;padding:.55rem .9rem;font-size:.75rem}.portfolio-button--ghost{border-color:var(--line);background:transparent;color:var(--ink)}.portfolio-button--ghost:hover{border-color:var(--lime);color:var(--lime)}.portfolio-hero{position:relative;isolation:isolate;min-height:min(850px,100svh);padding-bottom:5rem;background:radial-gradient(ellipse at 70% 54%,rgb(111 76 163 / 16%),transparent 32rem),linear-gradient(130deg,#0a0a0f 5%,#111017 54%,#0a0a0f)}.portfolio-hero:after{position:absolute;z-index:-1;right:0;bottom:2rem;left:0;height:1px;background:linear-gradient(90deg,transparent,var(--line) 18%,var(--line) 82%,transparent);content:""}.portfolio-hero__grid{position:absolute;z-index:-1;inset:0;background-image:linear-gradient(rgb(255 255 255 / 2.2%) 1px,transparent 1px),linear-gradient(90deg,rgb(255 255 255 / 2.2%) 1px,transparent 1px);background-position:center center;background-size:5.5rem 5.5rem;-webkit-mask-image:linear-gradient(90deg,transparent,#000 42%,#000 80%,transparent);mask-image:linear-gradient(90deg,transparent,#000 42%,#000 80%,transparent)}.portfolio-hero__glow{position:absolute;z-index:-1;top:8rem;right:5%;width:min(42rem,70vw);aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,rgb(167 139 250 / 10%),transparent 68%);filter:blur(12px);animation:portfolio-glow-breathe 8s ease-in-out infinite alternate}.portfolio-hero>div.max-w-7xl{position:relative;z-index:1;width:100%;max-width:88rem;padding-top:7rem}.portfolio-eyebrow,.portfolio-section__index{display:flex;align-items:center;gap:.7rem;margin-bottom:1.4rem;color:var(--lime);font-family:var(--mono);font-size:.65rem;letter-spacing:.14em}.portfolio-eyebrow__dot{width:.45rem;height:.45rem;border-radius:50%;background:var(--lime);box-shadow:0 0 #d6ff6266;animation:portfolio-live-pulse 2.2s ease-out infinite}.portfolio-title{display:flex;flex-direction:column;margin-top:2.4rem;color:var(--ink);font-size:clamp(4rem,8vw,8rem);letter-spacing:-.09em;line-height:.88}.portfolio-title__line{display:block;width:max-content;max-width:100%}.portfolio-title__line:last-child{color:var(--violet)}.portfolio-role{max-width:38rem;margin-top:2.1rem;color:#d0ccd5;font-size:clamp(1.1rem,2vw,1.45rem);line-height:1.5}.portfolio-role>span{color:var(--lime)}.portfolio-intro{max-width:36rem;margin-top:1rem;color:#aaa7b2;font-size:.98rem;line-height:1.85}.portfolio-stats{max-width:37rem;margin-top:1.8rem;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.portfolio-stat{padding:1rem .75rem 1rem 0}.portfolio-stat+.portfolio-stat{padding-left:1.1rem;border-left:1px solid var(--line)}.portfolio-stat__value{color:var(--ink);font-size:1.55rem;font-weight:700;letter-spacing:-.06em}.portfolio-stat__label{margin-top:.22rem;color:var(--muted);font-family:var(--mono);font-size:.58rem;letter-spacing:.08em;text-transform:uppercase}.portfolio-actions{margin-top:.25rem}.portfolio-portrait{position:relative;width:min(32rem,100%);aspect-ratio:1;align-items:center;justify-self:center}.portfolio-portrait__image{position:relative;z-index:2;width:72%;height:72%;border:1px solid rgb(244 241 234 / 32%);border-radius:48% 52% 50% 50%/46% 46% 54% 54%;background:#27232d;box-shadow:0 0 0 .65rem #f4f1ea08,0 0 5rem #a78bfa29;animation:portfolio-portrait-float 7s ease-in-out infinite}.portfolio-portrait__orbit{position:absolute;top:50%;left:50%;width:94%;aspect-ratio:1;border:1px solid rgb(167 139 250 / 25%);border-radius:50%;transform:translate(-50%,-50%) rotate(-26deg)}.portfolio-portrait__orbit--outer{border-style:dashed;border-color:#d6ff6238;animation:portfolio-orbit 52s linear infinite}.portfolio-portrait__orbit--inner{width:82%;border-color:#a78bfa4d;transform:translate(-50%,-50%) rotate(24deg) scaleY(.74)}.portfolio-portrait__orbit--outer:before,.portfolio-portrait__orbit--inner:before{position:absolute;top:50%;left:-.32rem;width:.65rem;height:.65rem;border:2px solid var(--canvas);border-radius:50%;background:var(--lime);box-shadow:0 0 1.2rem #d6ff6299;content:""}.portfolio-portrait__orbit--inner:before{top:10%;left:84%;width:.5rem;height:.5rem;background:var(--violet);box-shadow:0 0 1rem #a78bfab3}.portfolio-portrait__spark{position:absolute;z-index:3;display:grid;width:2.6rem;height:2.6rem;place-items:center;padding:0;border:1px solid transparent;border-radius:50%;background:transparent;color:var(--lime);font-size:1.4rem;line-height:1;touch-action:none;-webkit-user-select:none;user-select:none;animation:portfolio-sparkle 3.6s ease-in-out infinite}.portfolio-portrait__spark--one{z-index:4;top:14%;left:79%;right:auto;transition:background .2s ease,border-color .2s ease,box-shadow .2s ease,scale .2s ease}.portfolio-portrait__spark-hint{position:absolute;top:calc(100% + .2rem);left:50%;padding:.24rem .4rem;border:1px solid rgb(214 255 98 / 30%);border-radius:99px;background:#09090dc7;color:var(--lime);font-family:var(--mono);font-size:.44rem;letter-spacing:.1em;line-height:1;opacity:.8;pointer-events:none;text-transform:uppercase;transform:translate(-50%);transition:opacity .18s ease}.portfolio-portrait__spark--one:hover,.portfolio-portrait__spark--one:focus-visible{border-color:#d6ff627a;background:#d6ff621a;box-shadow:0 0 1.5rem #d6ff623d}.portfolio-portrait__spark--one:hover .portfolio-portrait__spark-hint,.portfolio-portrait__spark--one:focus-visible .portfolio-portrait__spark-hint{opacity:1}.portfolio-portrait__spark--one.is-dragging{z-index:5;border-color:var(--lime);background:#d6ff622e;box-shadow:0 0 0 .45rem #d6ff6217,0 0 2rem #d6ff6261;scale:1.35;animation-play-state:paused}.portfolio-portrait__spark--two{bottom:19%;left:8%;color:var(--violet);font-size:1rem;animation-delay:-1.7s}.portfolio-portrait__note{position:absolute;z-index:3;right:0;bottom:8%;display:flex;align-items:center;gap:.5rem;padding:.65rem .8rem;border:1px solid var(--line);border-radius:99px;background:#111116d6;color:#d3d0d8;font-family:var(--mono);font-size:.58rem;letter-spacing:.06em;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.portfolio-portrait__note>span:first-child{width:.4rem;height:.4rem;border-radius:50%;background:var(--lime)}.portfolio-section{position:relative;padding-top:clamp(5rem,10vw,9rem);padding-bottom:clamp(5rem,10vw,9rem);background:transparent}.portfolio-section:before{position:absolute;top:0;right:max(1rem,calc((100% - 88rem)/2));left:max(1rem,calc((100% - 88rem)/2));height:1px;background:var(--line);content:"";transform:scaleX(var(--section-rule-progress, 1));transform-origin:left center}.portfolio-section>div{position:relative;z-index:1;max-width:78rem}.portfolio-section__index{margin-bottom:1.2rem;color:var(--violet)}.portfolio-section__title{color:var(--ink);font-size:clamp(2.7rem,5vw,4.75rem);letter-spacing:-.075em;line-height:1}.portfolio-about{background:radial-gradient(ellipse at 88% 55%,rgb(167 139 250 / 6%),transparent 30rem),transparent}.portfolio-about>div{max-width:66rem}.portfolio-about__copy{max-width:55rem;color:#aaa7b2;font-size:clamp(1rem,1.5vw,1.25rem);line-height:1.9}.portfolio-about__copy p:first-child{color:#e4e1e9;font-size:clamp(1.35rem,2.4vw,2rem);letter-spacing:-.035em;line-height:1.55}.portfolio-skills>div>p:nth-of-type(2),.portfolio-experience>div>p:nth-of-type(2){max-width:47rem;margin-right:auto;margin-left:auto;color:var(--muted);line-height:1.8}.portfolio-skills>div>p:nth-of-type(2){text-align:center}.portfolio-skills .grid{gap:.9rem}.portfolio-skill-card{position:relative;min-height:11rem;overflow:hidden;border:1px solid var(--line);border-radius:.6rem;background:radial-gradient(circle at 100% 0%,rgb(167 139 250 / 9%),transparent 12rem),var(--surface);transition:border-color .25s ease,background .25s ease,transform .25s ease}.portfolio-skill-card:hover{transform:translateY(-5px);border-color:#d6ff625c;background:radial-gradient(circle at 100% 0%,rgb(167 139 250 / 14%),transparent 12rem),var(--surface-raised)}.portfolio-skill-card__number{margin-bottom:1.1rem;color:var(--lime);font-family:var(--mono);font-size:.62rem;letter-spacing:.1em}.portfolio-skill-card__title{color:var(--ink);letter-spacing:-.03em}.portfolio-skill-card__items{gap:.42rem}.portfolio-skill-card__tag{border-color:#f4f1ea1f;border-radius:99px;background:#ffffff05;color:#c1bec8;font-size:.67rem;transition:color .2s ease,border-color .2s ease}.portfolio-skill-card:hover .portfolio-skill-card__tag{border-color:#a78bfa59;color:var(--ink)}.portfolio-skills__art{max-height:22rem;overflow:hidden;opacity:.52;-webkit-mask-image:linear-gradient(180deg,#000 30%,transparent);mask-image:linear-gradient(180deg,#000 30%,transparent)}.portfolio-skills__art img{width:min(55rem,100%);filter:saturate(.65);animation:portfolio-art-float 8s ease-in-out infinite alternate}.portfolio-projects{background:radial-gradient(ellipse at 15% 42%,rgb(167 139 250 / 5%),transparent 25rem),#0c0c11}.portfolio-projects__heading .portfolio-section__title{margin-bottom:3.6rem}.portfolio-project-grid{align-items:stretch;gap:1rem}.portfolio-project-card{--project-accent: var(--lime);position:relative;display:flex;min-height:21rem;flex-direction:column;overflow:hidden;border:1px solid var(--line);border-radius:.7rem;background:radial-gradient(ellipse at 100% 0%,rgb(214 255 98 / 6%),transparent 19rem),var(--surface);transition:border-color .28s ease,background .28s ease,transform .28s cubic-bezier(.2,.8,.2,1),box-shadow .28s ease}.portfolio-project-card__content{display:flex;height:100%;flex:1;flex-direction:column;will-change:transform}.portfolio-project-card:after{position:absolute;top:0;left:1.5rem;width:2.5rem;height:2px;background:var(--project-accent);content:"";transition:width .28s ease}.portfolio-project-card--1,.portfolio-project-card--4,.portfolio-project-card--7{--project-accent: var(--violet)}.portfolio-project-card--2,.portfolio-project-card--5{--project-accent: #ff9872}.portfolio-project-card:hover{z-index:1;border-color:color-mix(in srgb,var(--project-accent) 48%,transparent);box-shadow:0 1.2rem 3.5rem #00000040;transform:translateY(-6px)}.portfolio-project-card:hover:after{width:5.5rem}.portfolio-project-card__topline{display:flex;align-items:center;gap:.8rem;margin-bottom:2.3rem;color:var(--muted);font-family:var(--mono);font-size:.65rem;letter-spacing:.09em}.portfolio-project-card__number{color:var(--project-accent)}.portfolio-project-card__date{padding-left:.8rem;border-left:1px solid var(--line)}.portfolio-project-card__arrow{margin-left:auto;color:var(--project-accent);font-size:1rem;transition:transform .25s ease}.portfolio-project-card:hover .portfolio-project-card__arrow{transform:translate(3px,-3px)}.portfolio-project-card__title{color:var(--ink);font-size:clamp(1.55rem,3vw,2rem);letter-spacing:-.055em}.portfolio-project-card>p.text-gray-300{flex:1;color:#aaa7b2;font-size:.88rem;line-height:1.8}.portfolio-project-card__tech{color:var(--project-accent);font-family:var(--mono);font-size:.63rem;line-height:1.8}.portfolio-project-card__links{padding-top:1rem;border-top:1px solid var(--line)}.portfolio-project-card__link{display:inline-flex;align-items:center;gap:.45rem;color:#ddd9e2;font-size:.75rem;font-weight:650;transition:color .18s ease}.portfolio-project-card__link img{filter:grayscale(1) brightness(0) invert(1);opacity:.72}.portfolio-project-card__link:hover{color:var(--project-accent)}.portfolio-project-card__link:hover img{opacity:1}.portfolio-project-card__link--demo{margin-left:.6rem;color:var(--project-accent)}.portfolio-experience{background:radial-gradient(ellipse at 95% 25%,rgb(214 255 98 / 4%),transparent 27rem),transparent}.portfolio-experience>div>p:nth-of-type(2){margin-bottom:3rem;text-align:center}.portfolio-experience .grid{gap:1rem}.portfolio-experience-card{position:relative;overflow:hidden;border:1px solid var(--line);border-radius:.55rem;background:var(--surface);transition:border-color .25s ease,transform .25s ease}.portfolio-experience-card:before{position:absolute;top:0;bottom:0;left:0;width:2px;background:linear-gradient(var(--lime),var(--violet));content:"";transform:scaleY(0);transform-origin:bottom;transition:transform .25s ease}.portfolio-experience-card:hover{border-color:#a78bfa52;transform:translateY(-4px)}.portfolio-experience-card:hover:before{transform:scaleY(1)}.portfolio-experience-card__org{color:var(--violet);font-family:var(--mono);font-size:.63rem;letter-spacing:.08em}.portfolio-experience-card__role{color:var(--ink);font-size:1.25rem;letter-spacing:-.035em}.portfolio-experience-card>p.text-gray-300{color:var(--muted);font-size:.85rem;line-height:1.8}.portfolio-contact{padding-bottom:7rem;background:radial-gradient(ellipse at 80% 45%,rgb(167 139 250 / 10%),transparent 22rem),#101015}.portfolio-contact>div{max-width:72rem}.portfolio-contact__email{width:fit-content;color:var(--lime);font-size:clamp(1rem,2.7vw,1.55rem);font-weight:650;letter-spacing:-.04em;transition:color .2s ease}.portfolio-contact__email:hover{color:var(--violet)}.portfolio-contact__email span{display:inline-block;transition:transform .2s ease}.portfolio-contact__email:hover span{transform:translate(3px,-3px)}.portfolio-social-link{border:1px solid var(--line);background:var(--surface);transition:border-color .2s ease,background .2s ease,transform .2s ease}.portfolio-social-link:hover{transform:translateY(-4px);border-color:var(--lime);background:#d6ff6214}.portfolio-contact__details{position:relative;align-self:center;padding:3rem;border:1px solid var(--line);border-radius:50%;background:radial-gradient(circle at center,rgb(167 139 250 / 9%),transparent 70%)}.portfolio-contact__orbit{display:block;margin-bottom:1.1rem;color:var(--lime);font-size:2.4rem;animation:portfolio-sparkle 4s ease-in-out infinite}.portfolio-contact__details>p{color:var(--muted)}.portfolio-footer{border-top:1px solid var(--line);background:var(--canvas);color:var(--muted);font-family:var(--mono);font-size:.63rem;letter-spacing:.06em}.portfolio-footer>div{max-width:88rem}.portfolio-footer a{color:var(--lime);transition:color .18s ease}.portfolio-footer a:hover{color:var(--violet)}@keyframes portfolio-live-pulse{0%{box-shadow:0 0 #d6ff625c}70%{box-shadow:0 0 0 .55rem #d6ff6200}to{box-shadow:0 0 #d6ff6200}}@keyframes portfolio-glow-breathe{0%{opacity:.55;transform:scale(.92)}to{opacity:1;transform:scale(1.08)}}@keyframes portfolio-portrait-float{0%,to{transform:translateY(0) rotate(-1.5deg)}50%{transform:translateY(-.7rem) rotate(1.5deg)}}@keyframes portfolio-orbit{to{transform:translate(-50%,-50%) rotate(334deg)}}@keyframes portfolio-sparkle{0%,to{opacity:.7;transform:scale(.85) rotate(-12deg)}50%{opacity:1;transform:scale(1.15) rotate(16deg)}}@keyframes portfolio-art-float{0%{transform:translateY(0)}to{transform:translateY(-1rem)}}@media (min-width: 1024px){.portfolio-hero>div.max-w-7xl>.grid{grid-template-columns:1.08fr .92fr;gap:2rem}.portfolio-portrait{margin-left:auto}}@media (max-width: 1023px){.portfolio-hero{min-height:auto;padding-bottom:6rem}.portfolio-hero>div.max-w-7xl{padding-top:8rem}.portfolio-portrait{grid-row:1;width:min(25rem,78vw);margin:1.5rem auto 0}.portfolio-hero>div.max-w-7xl>.grid{gap:.5rem}.portfolio-hero>div.max-w-7xl>.grid>div:first-child{margin-top:1rem}}@media (max-width: 640px){.portfolio-nav>div>div{height:3.8rem}.portfolio-nav>div>div>div:last-child>button{display:grid;width:2.75rem;height:2.75rem;place-items:center;border:1px solid var(--line);border-radius:50%}.portfolio-nav__mobile{padding:.7rem 0 1rem;border-top:1px solid var(--line);background:var(--canvas)}.portfolio-nav__mobile .portfolio-button{width:100%;margin-top:.5rem}.portfolio-hero>div.max-w-7xl{padding-top:6.5rem}.portfolio-eyebrow{font-size:.55rem}.portfolio-title{margin-top:1.8rem;font-size:clamp(3.55rem,18vw,6rem)}.portfolio-role{margin-top:1.5rem}.portfolio-intro{font-size:.9rem}.portfolio-stat{padding-right:.35rem}.portfolio-stat+.portfolio-stat{padding-left:.65rem}.portfolio-stat__value{font-size:1.35rem}.portfolio-stat__label{font-size:.49rem}.portfolio-portrait{width:min(19rem,75vw)}.portfolio-portrait__note{right:-.3rem;font-size:.5rem}.portfolio-section__title{font-size:clamp(2.6rem,13vw,4rem)}.portfolio-projects__heading .portfolio-section__title{margin-bottom:2.5rem}.portfolio-project-card{min-height:0}.portfolio-project-card__topline{margin-bottom:1.5rem}.portfolio-contact__details{justify-self:stretch;padding:2rem;border-radius:1rem}.portfolio-footer>div{align-items:center}}@media (prefers-reduced-motion: reduce){body.has-playful-cursor .portfolio-shell,body.has-playful-cursor .portfolio-shell *{cursor:auto!important}.portfolio-cursor{display:none}.portfolio-shell *,.portfolio-shell *:before,.portfolio-shell *:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
