*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}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;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;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}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}*{border-color:#ffffff14}body.light-mode body,html.light-mode body{background:linear-gradient(135deg,#f0f4ff,#fff,#f0f4ff,#fff,#f0f4ff);color:#1a1a1a}body{--tw-bg-opacity: 1;background-color:rgb(10 10 15 / var(--tw-bg-opacity, 1));--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1));font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;font-feature-settings:"rlig" 1,"calt" 1;font-weight:400;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;transition:background-color .5s ease,color .5s ease}html{transition:background-color .5s ease}body.light-mode .text-white,html.light-mode .text-white{color:#1a1a1a!important}body.light-mode .text-gray-300,body.light-mode .text-gray-400,html.light-mode .text-gray-300,html.light-mode .text-gray-400{color:#4a4a4a!important}body.light-mode .border-white\/10,body.light-mode .border-white\/20,html.light-mode .border-white\/10,html.light-mode .border-white\/20{border-color:#0000001a!important}.\!container{width:100%!important}.container{width:100%}@media (min-width: 640px){.\!container{max-width:640px!important}.container{max-width:640px}}@media (min-width: 768px){.\!container{max-width:768px!important}.container{max-width:768px}}@media (min-width: 1024px){.\!container{max-width:1024px!important}.container{max-width:1024px}}@media (min-width: 1280px){.\!container{max-width:1280px!important}.container{max-width:1280px}}@media (min-width: 1536px){.\!container{max-width:1536px!important}.container{max-width:1536px}}.pointer-events-none{pointer-events:none}.pointer-events-auto{pointer-events:auto}.visible{visibility:visible}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.inset-0{inset:0}.bottom-6{bottom:1.5rem}.left-0{left:0}.left-1\/2{left:50%}.left-2{left:.5rem}.left-6{left:1.5rem}.left-8{left:2rem}.left-full{left:100%}.right-0{right:0}.right-2{right:.5rem}.right-6{right:1.5rem}.top-0{top:0}.top-1\/2{top:50%}.top-8{top:2rem}.top-full{top:100%}.z-10{z-index:10}.z-20{z-index:20}.z-30{z-index:30}.z-40{z-index:40}.z-50{z-index:50}.z-\[100\]{z-index:100}.z-\[60\]{z-index:60}.mx-auto{margin-left:auto;margin-right:auto}.mb-1{margin-bottom:.25rem}.mb-2{margin-bottom:.5rem}.mb-4{margin-bottom:1rem}.mb-6{margin-bottom:1.5rem}.mb-8{margin-bottom:2rem}.ml-auto{margin-left:auto}.mt-2{margin-top:.5rem}.mt-3{margin-top:.75rem}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.grid{display:grid}.hidden{display:none}.h-0\.5{height:.125rem}.h-20{height:5rem}.h-8{height:2rem}.h-full{height:100%}.h-px{height:1px}.h-screen{height:100vh}.min-h-\[300px\]{min-height:300px}.w-24{width:6rem}.w-4{width:1rem}.w-8{width:2rem}.w-full{width:100%}.max-w-6xl{max-width:72rem}.max-w-7xl{max-width:80rem}.-translate-x-1\/2{--tw-translate-x: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-1\/2{--tw-translate-y: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.cursor-pointer{cursor:pointer}.list-inside{list-style-position:inside}.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}.justify-center{justify-content:center}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}.space-y-6>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.5rem * var(--tw-space-y-reverse))}.overflow-hidden{overflow:hidden}.overflow-visible{overflow:visible}.whitespace-nowrap{white-space:nowrap}.rounded-2xl{border-radius:1rem}.rounded-full{border-radius:9999px}.rounded-sm{border-radius:.125rem}.rounded-xl{border-radius:.75rem}.border{border-width:1px}.border-2{border-width:2px}.border-l-4{border-left-width:4px}.border-r-4{border-right-width:4px}.border-white\/10{border-color:#ffffff1a}.bg-black\/50{background-color:#00000080}.bg-black\/60{background-color:#0009}.bg-black\/90{background-color:#000000e6}.bg-transparent{background-color:transparent}.bg-gradient-to-r{background-image:linear-gradient(to right,var(--tw-gradient-stops))}.from-transparent{--tw-gradient-from: transparent var(--tw-gradient-from-position);--tw-gradient-to: rgb(0 0 0 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.via-white\/20{--tw-gradient-to: rgb(255 255 255 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), rgb(255 255 255 / .2) var(--tw-gradient-via-position), var(--tw-gradient-to)}.to-transparent{--tw-gradient-to: transparent var(--tw-gradient-to-position)}.p-6{padding:1.5rem}.p-8{padding:2rem}.px-10{padding-left:2.5rem;padding-right:2.5rem}.px-4{padding-left:1rem;padding-right:1rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-24{padding-top:6rem;padding-bottom:6rem}.pl-6{padding-left:1.5rem}.pr-6{padding-right:1.5rem}.text-center{text-align:center}.text-right{text-align:right}.font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-light{font-weight:300}.font-medium{font-weight:500}.font-normal{font-weight:400}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.lowercase{text-transform:lowercase}.leading-relaxed{line-height:1.625}.tracking-\[0\.12em\]{letter-spacing:.12em}.tracking-tight{letter-spacing:-.025em}.tracking-wide{letter-spacing:.025em}.tracking-wider{letter-spacing:.05em}.text-blue-200{--tw-text-opacity: 1;color:rgb(191 219 254 / var(--tw-text-opacity, 1))}.text-gray-300{--tw-text-opacity: 1;color:rgb(209 213 219 / var(--tw-text-opacity, 1))}.text-gray-400{--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity, 1))}.text-gray-500{--tw-text-opacity: 1;color:rgb(107 114 128 / var(--tw-text-opacity, 1))}.text-orange-200{--tw-text-opacity: 1;color:rgb(254 215 170 / var(--tw-text-opacity, 1))}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.text-white\/60{color:#fff9}.text-white\/70{color:#ffffffb3}.text-white\/75{color:#ffffffbf}.text-white\/80{color:#fffc}.text-white\/95{color:#fffffff2}.underline{text-decoration-line:underline}.decoration-blue-300{text-decoration-color:#93c5fd}.decoration-blue-300\/70{text-decoration-color:#93c5fdb3}.decoration-orange-300{text-decoration-color:#fdba74}.decoration-orange-300\/70{text-decoration-color:#fdba74b3}.decoration-2{text-decoration-thickness:2px}.underline-offset-4{text-underline-offset:4px}.opacity-15{opacity:.15}.opacity-20{opacity:.2}.opacity-30{opacity:.3}.opacity-40{opacity:.4}.opacity-50{opacity:.5}.opacity-60{opacity:.6}.shadow{--tw-shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-2xl{--tw-shadow: 0 25px 50px -12px rgb(0 0 0 / .25);--tw-shadow-colored: 0 25px 50px -12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-lg{--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.ring{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.blur{--tw-blur: blur(8px);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)}.blur-xl{--tw-blur: blur(24px);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-md{--tw-backdrop-blur: blur(12px);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-blur-sm{--tw-backdrop-blur: blur(4px);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,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-200{transition-duration:.2s}.duration-300{transition-duration:.3s}.magical-hover-card{position:relative;overflow:hidden;--mouse-x: 50%;--mouse-y: 50%;--glow-color: rgba(255, 255, 255, .1);--glow-radius: 800px;--glow-opacity: .6;--transition-duration: .3s}.magical-hover-card:before,.magical-hover-card:after{content:"";position:absolute;inset:0;pointer-events:none;opacity:0;transition:opacity var(--transition-duration) ease-out;z-index:1;will-change:opacity,background}.magical-hover-card:before{background:radial-gradient(circle at var(--mouse-x) var(--mouse-y),var(--glow-color) 0%,transparent 40%);filter:blur(40px)}.magical-hover-card:after{background:radial-gradient(circle at var(--mouse-x) var(--mouse-y),var(--glow-color) 0%,transparent 30%);filter:blur(20px);opacity:0}.magical-hover-card:hover:before{opacity:calc(var(--glow-opacity) * .8)}.magical-hover-card:hover:after{opacity:var(--glow-opacity)}.magical-hover-card>*{position:relative;z-index:2}.magical-text-wrapper{position:relative;display:inline-block}.magic-text{position:relative;display:inline-block;background:linear-gradient(90deg,rgba(var(--darker-rgb),1),rgba(var(--lighter-rgb),1),rgba(var(--planet-rgb),1),rgba(var(--lighter-rgb),1),rgba(var(--darker-rgb),1));background-size:200% 100%;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:background-pan 3s linear infinite;will-change:background-position}@keyframes background-pan{0%{background-position:0% center}to{background-position:200% center}}.magic-star{position:absolute;left:var(--star-left, 50%);top:var(--star-top, 50%);transform:translate(-50%,-50%);pointer-events:none;z-index:1;color:rgba(var(--planet-rgb),1);opacity:0;will-change:transform,opacity}.magic-star-svg{width:16px;height:16px;filter:drop-shadow(0 0 4px rgb(var(--planet-rgb)));animation:star-sparkle 1s ease-out forwards}.asteroid-field{position:relative;width:min(1500px,100%);height:min(86vh,860px);margin-top:1rem;border-radius:24px;overflow:visible;contain:layout}.cluster-title{position:absolute;font-size:1.2rem;letter-spacing:.04em;text-transform:lowercase;color:#ffffffd9;text-shadow:0 0 18px rgba(160,152,138,.5)}.cluster-subtitle{position:absolute;font-size:.85rem;letter-spacing:.18em;text-transform:lowercase;color:#ffffff73}.left-title{left:8%;top:7%}.left-subtitle{left:10%;top:22%}.mid-title{left:74%;top:7%;transform:translate(-50%)}.mid-subtitle{left:52%;top:29%;transform:translate(-50%)}.right-subtitle{left:90%;top:46%;transform:translate(-50%)}.mid-degree{left:74%;top:13%;font-size:.8rem;letter-spacing:.12em;line-height:1.2;text-align:center;transform:translate(-50%);color:#fff9}.asteroid-wrapper{position:absolute;z-index:1;animation:asteroid-drift 6s ease-in-out infinite;will-change:transform}.asteroid-ellipse-tilt{position:absolute;left:50%;top:50%;transform:rotate(var(--ellipse-tilt));will-change:transform}.asteroid-ellipse{animation:asteroid-ellipse var(--ellipse-duration) linear infinite;animation-delay:var(--ellipse-phase);will-change:transform}.asteroid-rotator{position:relative;width:var(--size);height:var(--size);animation:asteroid-spin var(--spin) linear infinite;will-change:transform;z-index:1}.asteroid{position:absolute;inset:0;z-index:1;border-radius:46% 54% 58% 42%/52% 44% 56% 48%;clip-path:polygon(8% 18%,24% 6%,46% 8%,68% 12%,88% 26%,94% 48%,88% 70%,70% 86%,46% 94%,24% 88%,10% 72%,6% 46%);background:radial-gradient(circle at 20% 25%,rgba(255,255,255,.2),transparent 40%),radial-gradient(circle at 70% 60%,rgba(0,0,0,.32),transparent 50%),radial-gradient(circle at 40% 80%,rgba(0,0,0,.28),transparent 55%),linear-gradient(145deg,#b99b6b,#8b6d47);background-blend-mode:screen,multiply,multiply,normal;box-shadow:0 0 8px #b99b6b47;filter:brightness(.95);transition:filter .2s ease,box-shadow .2s ease;animation-delay:calc(var(--spin) * -.1);will-change:transform,filter}.asteroid:after{content:"";position:absolute;inset:18% 20% 16% 18%;border-radius:50%;background:radial-gradient(circle at 30% 35%,rgba(255,255,255,.1),transparent 52%);box-shadow:inset 0 0 8px #00000059;opacity:.55}.asteroid:before{content:"";position:absolute;inset:8% 10% 10% 8%;border-radius:50%;background:radial-gradient(circle at 28% 42%,rgba(0,0,0,.25),transparent 45%),radial-gradient(circle at 62% 30%,rgba(255,255,255,.08),transparent 38%);opacity:.6}.asteroid-shape-1{border-radius:20% 80% 40% 60%/55% 35% 65% 45%;clip-path:polygon(4% 18%,22% 6%,44% 8%,70% 14%,92% 34%,96% 58%,82% 82%,54% 96%,26% 88%,8% 62%)}.asteroid-shape-2{border-radius:60% 40% 15% 85%/25% 65% 35% 75%;clip-path:polygon(8% 34%,18% 10%,46% 2%,72% 12%,96% 30%,88% 56%,66% 86%,38% 98%,14% 82%,2% 56%)}.asteroid-shape-3{border-radius:75% 25% 65% 35%/45% 70% 30% 55%;clip-path:polygon(12% 6%,36% 2%,68% 10%,92% 28%,98% 52%,90% 76%,62% 96%,30% 92%,8% 66%)}.asteroid-shape-4{border-radius:5% 95% 80% 20%/20% 60% 40% 80%;clip-path:polygon(2% 22%,18% 4%,52% 2%,86% 16%,98% 44%,92% 76%,58% 98%,24% 96%,6% 72%)}.asteroid-label{position:absolute;z-index:5;left:50%;top:-12px;--label-scale: .95;transform:translate(-50%,-100%) scale(var(--label-scale));min-width:140px;max-width:220px;text-align:center;font-size:.72rem;letter-spacing:.04em;color:#ffffffd9;text-shadow:0 0 12px rgba(160,152,138,.6);opacity:0;transition:opacity .2s ease,transform .2s ease;pointer-events:none}.asteroid-wrapper:hover .asteroid,.asteroid-wrapper:focus-visible .asteroid{filter:brightness(1.25);box-shadow:0 0 14px #b99b6bb3}.asteroid-wrapper:hover .asteroid-label,.asteroid-wrapper:focus-visible .asteroid-label{opacity:1;--label-scale: 1}.asteroid-wrapper:hover,.asteroid-wrapper:focus-visible{z-index:20}.comet-field{position:relative;width:min(1500px,100%);height:min(86vh,860px);margin-top:1rem;border-radius:24px;overflow:visible;contain:layout}.belt-field-wrap{position:relative;width:min(1600px,calc(100% + 6rem));height:min(90vh,900px);margin-top:.5rem;margin-left:-3rem;margin-right:-3rem;overflow:visible}.belt-asteroid-wrap:before,.belt-comet-wrap:before{content:"";position:absolute;inset:-4% -6% -6%;border-radius:28px;pointer-events:none;z-index:0}.belt-asteroid-wrap:before{background:radial-gradient(circle at 60% 50%,rgba(160,152,138,.22),transparent 62%)}.belt-comet-wrap:before{background:radial-gradient(circle at 40% 50%,rgba(122,166,214,.24),transparent 62%)}.belt-field-shift{margin-top:-2.25rem}.comet-title{position:absolute;font-size:1.05rem;letter-spacing:.18em;text-transform:lowercase;color:#fffc;text-shadow:0 0 18px rgba(122,166,214,.6)}.comet-languages{left:11%;top:20%}.comet-aiml{left:38%;top:8%}.comet-web{left:64%;top:28%}.comet-misc{left:89%;top:42%}.comet-wrapper{position:absolute;z-index:1;animation:asteroid-drift 6s ease-in-out infinite;will-change:transform}.comet-ellipse-tilt{position:absolute;left:50%;top:50%;transform:rotate(var(--ellipse-tilt));will-change:transform}.comet-ellipse{animation:asteroid-ellipse var(--ellipse-duration) linear infinite;animation-delay:var(--ellipse-phase);will-change:transform}.comet-rotator{position:relative;width:var(--size);height:var(--size);animation:asteroid-spin var(--spin) linear infinite;will-change:transform;z-index:1}.comet{position:absolute;inset:0;z-index:1;border-radius:50% 60% 40% 55%;background:radial-gradient(circle at 25% 25%,rgba(255,255,255,.55),transparent 45%),radial-gradient(circle at 70% 65%,rgba(40,80,120,.4),transparent 55%),linear-gradient(145deg,#cfe6ff,#7aa6d6);box-shadow:0 0 12px #8cbeff99;filter:brightness(.95);transition:filter .2s ease,box-shadow .2s ease;animation-delay:calc(var(--spin) * -.1);will-change:transform,filter}.comet:before{content:"";position:absolute;inset:20% 18% 22% 16%;border-radius:50%;background:radial-gradient(circle at 35% 40%,rgba(255,255,255,.5),transparent 55%),radial-gradient(circle at 70% 60%,rgba(160,210,255,.35),transparent 60%);opacity:.7;z-index:2}.comet:after{content:"";position:absolute;left:55%;top:50%;width:calc(var(--size) * 2.2);height:calc(var(--size) * .6);transform:translateY(-50%) rotate(10deg);transform-origin:left center;border-radius:999px;background:linear-gradient(90deg,#fff0,#aad7ff40 35%,#8cc8ff99 70%,#ffffffe6);filter:blur(1.2px);opacity:.75;z-index:0}.comet-shape-1{border-radius:70% 30% 50% 50%;clip-path:polygon(6% 18%,22% 6%,48% 4%,74% 12%,94% 32%,98% 56%,84% 80%,58% 94%,30% 90%,10% 66%)}.comet-shape-2{border-radius:25% 75% 35% 65%;clip-path:polygon(2% 30%,16% 8%,40% 2%,68% 10%,92% 28%,96% 52%,80% 78%,52% 94%,22% 88%,6% 62%)}.comet-shape-3{border-radius:55% 45% 20% 80%;clip-path:polygon(10% 10%,30% 2%,60% 6%,86% 24%,98% 50%,88% 78%,62% 96%,32% 92%,8% 68%)}.comet-shape-4{border-radius:10% 90% 60% 40%;clip-path:polygon(4% 22%,18% 4%,46% 2%,74% 14%,96% 40%,92% 70%,66% 94%,34% 98%,8% 78%)}.comet-label{position:absolute;z-index:5;left:50%;top:-14px;--label-scale: .95;transform:translate(-50%,-100%) scale(var(--label-scale));min-width:120px;max-width:220px;text-align:center;font-size:.72rem;letter-spacing:.08em;color:#ebf8ffe6;text-shadow:0 0 12px rgba(140,200,255,.7);opacity:0;transition:opacity .2s ease,transform .2s ease;pointer-events:none}.comet-wrapper:hover .comet,.comet-wrapper:focus-visible .comet{filter:brightness(1.2);box-shadow:0 0 18px #aadcffd9}.comet-wrapper:hover .comet-label,.comet-wrapper:focus-visible .comet-label{opacity:1;--label-scale: 1}.comet-wrapper:hover,.comet-wrapper:focus-visible{z-index:20}@keyframes asteroid-spin{0%{transform:rotate(var(--rot))}to{transform:rotate(calc(var(--rot) + 360deg))}}@keyframes asteroid-ellipse{0%{transform:translate(var(--ellipse-x))}12.5%{transform:translate(calc(var(--ellipse-x) * .7),calc(var(--ellipse-y) * .7))}25%{transform:translateY(var(--ellipse-y))}37.5%{transform:translate(calc(var(--ellipse-x) * -.7),calc(var(--ellipse-y) * .7))}50%{transform:translate(calc(var(--ellipse-x) * -1))}62.5%{transform:translate(calc(var(--ellipse-x) * -.7),calc(var(--ellipse-y) * -.7))}75%{transform:translateY(calc(var(--ellipse-y) * -1))}87.5%{transform:translate(calc(var(--ellipse-x) * .7),calc(var(--ellipse-y) * -.7))}to{transform:translate(var(--ellipse-x))}}@keyframes asteroid-drift{0%,to{margin-left:0}50%{margin-left:var(--drift)}}@keyframes star-sparkle{0%{opacity:0;transform:scale(0) rotate(0)}50%{opacity:1;transform:scale(1.2) rotate(180deg)}to{opacity:0;transform:scale(.8) rotate(360deg)}}@keyframes fade-in{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes page-fade-in{0%{opacity:0}to{opacity:1}}.animate-fade-in{animation:fade-in .8s ease-out}body:not(.page-loaded) .container,body:not(.page-loaded) [class*=max-w],body:not(.page-loaded) main,body:not(.page-loaded)>div:not(#loading-screen):not(#persistent-star-background){opacity:0;transform:translate(20px);transition:opacity .8s ease-out,transform .8s ease-out}body.page-loaded .container,body.page-loaded [class*=max-w],body.page-loaded main,body.page-loaded>div:not(#loading-screen):not(#persistent-star-background){opacity:1;transform:translate(0);animation:page-fade-in .8s ease-out forwards}body.page-loaded [class*=animate-fade-in]{animation:fade-in .8s ease-out forwards}.hobby-node{position:absolute;z-index:20;perspective:420px;animation-timing-function:ease-in-out;animation-iteration-count:infinite}.hobby-object{position:relative;transform-style:preserve-3d;transition:transform .22s ease,filter .22s ease;filter:brightness(.95)}.hobby-node:hover .hobby-object{transform:scale(1.08);filter:brightness(1.2) drop-shadow(0 0 16px rgba(180,210,255,.45))}.hobby-label{margin:.55rem 0 0;font-size:.78rem;letter-spacing:.12em;text-transform:lowercase;color:#ebf2ffe0;text-shadow:0 0 14px rgba(140,175,255,.5);white-space:nowrap}.hobby-object-title{margin:0 0 .45rem;font-size:.74rem;letter-spacing:.14em;text-transform:lowercase;color:#dcecffd1;text-shadow:0 0 12px rgba(122,170,245,.5);white-space:nowrap}.hobby-cube-node{left:10%;top:23%;animation-name:drift-cube;animation-duration:8s}.hobby-tetris-node{right:11%;bottom:16%;text-align:right;animation-name:drift-tetris;animation-duration:7.4s}.hobby-set-node{left:42%;bottom:18%;animation-name:drift-set;animation-duration:8.6s}.hobby-basketball-node{left:14%;bottom:14%;animation-name:drift-basketball;animation-duration:7.9s}.hobby-poker-node{right:12%;top:22%;animation-name:drift-poker;animation-duration:8.3s}.rubiks-cube{--cube-face-size: 92px;--cube-depth: 46px;width:106px;height:106px;transform-style:preserve-3d}.rubiks-inner{position:relative;width:100%;height:100%;transform-style:preserve-3d;animation:spin-cube 11s linear infinite}.cube-face{position:absolute;left:50%;top:50%;display:grid;grid-template-columns:repeat(3,1fr);gap:3px;width:var(--cube-face-size);height:var(--cube-face-size);padding:4px;background:#06080df5;border-radius:8px;box-shadow:inset 0 0 14px #ffffff14,0 0 18px #00000080}.cube-face span{border-radius:3px;border:1px solid rgba(0,0,0,.45);box-shadow:inset 0 0 7px #fff3}.cube-core{position:absolute;left:50%;top:50%;width:88px;height:88px;transform:translate(-50%,-50%);border-radius:8px;background:#030508fa;box-shadow:inset 0 0 24px #ffffff0d}.cube-front{transform:translate(-50%,-50%) translateZ(var(--cube-depth))}.cube-top{transform:translate(-50%,-50%) rotateX(90deg) translateZ(var(--cube-depth))}.cube-right{transform:translate(-50%,-50%) rotateY(90deg) translateZ(var(--cube-depth))}.cube-left{transform:translate(-50%,-50%) rotateY(-90deg) translateZ(var(--cube-depth))}.cube-back{transform:translate(-50%,-50%) rotateY(180deg) translateZ(var(--cube-depth))}.cube-bottom{transform:translate(-50%,-50%) rotateX(-90deg) translateZ(var(--cube-depth))}.cube-front span:nth-child(1){background:#ff3b3b}.cube-front span:nth-child(2){background:#ffd538}.cube-front span:nth-child(3){background:#2a7dff}.cube-front span:nth-child(4){background:#35c26b}.cube-front span:nth-child(5){background:#fff2d0}.cube-front span:nth-child(6){background:#ff8c25}.cube-front span:nth-child(7){background:#2a7dff}.cube-front span:nth-child(8){background:#ff3b3b}.cube-front span:nth-child(9){background:#ffd538}.cube-top span:nth-child(1){background:#fff2d0}.cube-top span:nth-child(2){background:#ff3b3b}.cube-top span:nth-child(3){background:#35c26b}.cube-top span:nth-child(4){background:#2a7dff}.cube-top span:nth-child(5){background:#2a7dff}.cube-top span:nth-child(6){background:#35c26b}.cube-top span:nth-child(7){background:#2a7dff}.cube-top span:nth-child(8){background:#ff3b3b}.cube-top span:nth-child(9){background:#35c26b}.cube-right span:nth-child(1){background:#ff8c25}.cube-right span:nth-child(2){background:#ff3b3b}.cube-right span:nth-child(3){background:#35c26b}.cube-right span:nth-child(4){background:#2a7dff}.cube-right span:nth-child(5){background:#ff3b3b}.cube-right span:nth-child(6){background:#2a7dff}.cube-right span:nth-child(7){background:#2a7dff}.cube-right span:nth-child(8){background:#ff3b3b}.cube-right span:nth-child(9){background:#ff8c25}.cube-left span:nth-child(1){background:#fff2d0}.cube-left span:nth-child(2){background:#fff2d0}.cube-left span:nth-child(3){background:#ffd538}.cube-left span:nth-child(4){background:#ff8c25}.cube-left span:nth-child(5){background:#ff8c25}.cube-left span:nth-child(6){background:#2a7dff}.cube-left span:nth-child(7){background:#ffd538}.cube-left span:nth-child(8){background:#fff2d0}.cube-left span:nth-child(9){background:#ffd538}.cube-back span:nth-child(3n+1){background:#35c26b}.cube-back span:nth-child(3n+2){background:#ff8c25}.cube-back span:nth-child(3n){background:#fff2d0}.cube-bottom span:nth-child(odd){background:#ff3b3b}.cube-bottom span:nth-child(2n){background:#35c26b}.tetris-piece{width:142px;height:122px;animation:spin-tetris 9.5s linear infinite;transform-style:preserve-3d}.tetromino-3d{position:relative;width:100%;height:100%}.t-cube{position:absolute;width:34px;height:34px;transform-style:preserve-3d}.t-face{position:absolute;box-sizing:border-box;border:1px solid rgba(69,29,130,.8)}.t-face-front{inset:0;border-radius:4px;background:linear-gradient(150deg,#cb8cff,#a260f0 58%,#733ac9);box-shadow:inset 0 0 8px #ffffff42,0 0 12px #9650ff57}.t-face-top{left:0;top:-10px;width:100%;height:10px;border-radius:4px 4px 0 0;background:linear-gradient(180deg,#e5bdff,#c386fb);transform-origin:bottom left;transform:skew(-45deg)}.t-face-right{right:-10px;top:0;width:10px;height:100%;border-radius:0 4px 4px 0;background:linear-gradient(90deg,#6d32bf,#4a1f94);transform-origin:left top;transform:skewY(-45deg)}.t1{left:10px;top:52px}.t2{left:44px;top:52px}.t3{left:78px;top:52px}.t4{left:44px;top:18px}.rank-link{color:#a7c6ff;text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:3px;transition:color .18s ease,text-shadow .18s ease}.rank-link:hover{color:#d6e7ff;text-shadow:0 0 12px rgba(173,205,255,.7)}.set-card{width:220px;height:128px;padding:18px 16px;border-radius:13px;border:1px solid rgba(120,200,140,.6);background:linear-gradient(140deg,#fafffaf5,#eef8efeb 70%,#d2ebd6eb);box-shadow:0 0 24px #5fb47852,inset 0 0 12px #50a56429;display:flex;flex-direction:row;justify-content:space-around;align-items:center;animation:spin-card 10.5s linear infinite}.set-diamond{--w: 46px;--h: 88px;--border: 6px;--green: #0b7a13;width:var(--w);height:var(--h);position:relative;clip-path:polygon(50% 0%,100% 50%,50% 100%,0% 50%);background:repeating-linear-gradient(to bottom,#0b7a13f2 0 3px,#fff 3px 8px);filter:drop-shadow(0 0 0 rgba(0,0,0,0))}.set-diamond:before{content:"";position:absolute;inset:0;background:var(--green);clip-path:inherit;z-index:-1}.set-diamond{padding:var(--border);box-sizing:border-box}.basketball{width:92px;height:92px;border-radius:50%;overflow:hidden;animation:spin-basketball 10.1s linear infinite;background:radial-gradient(circle at 30% 24%,rgba(255,224,174,.52),transparent 32%),radial-gradient(circle at 68% 74%,rgba(86,34,9,.38),transparent 52%),radial-gradient(circle at 50% 58%,rgba(210,110,34,.28),transparent 62%),linear-gradient(145deg,#f29f3f,#dc7929 55%,#b75619);box-shadow:inset -15px -16px 24px #4a1c086b,inset 9px 8px 12px #ffdeb247,0 0 16px #f09b3a4d}.basketball-seam{position:absolute;border:2.4px solid rgba(22,10,3,.86);border-radius:50%;pointer-events:none}.seam-equator{width:120%;height:48%;left:-10%;top:26%;border-left-color:transparent;border-right-color:transparent;transform:rotate(-4deg)}.seam-meridian-left,.seam-meridian-right{width:62%;height:122%;top:-11%;border-top-color:transparent;border-bottom-color:transparent}.seam-meridian-left{left:-30%;transform:rotate(6deg)}.seam-meridian-right{right:-30%;transform:rotate(-6deg)}.poker-card{width:108px;height:148px;border-radius:10px;border:1px solid rgba(255,255,255,.78);background:linear-gradient(160deg,#fffffff5,#f3f4fbed);box-shadow:0 0 16px #c8cdff40,inset 0 0 0 3px #d6183914,inset -8px -10px 14px #0000001a;animation:spin-poker 9.7s linear infinite;transform-style:preserve-3d}.poker-card:after{content:"";position:absolute;right:-8px;top:3px;width:8px;height:calc(100% - 6px);border-radius:0 8px 8px 0;background:linear-gradient(90deg,#bfbfd0e6,#9191a8f2)}.card-corner{position:absolute;font-size:.92rem;font-weight:700;color:#d31839;letter-spacing:.03em;font-family:Times New Roman,serif}.card-corner-top{left:10px;top:8px}.card-corner-bottom{right:10px;bottom:8px;transform:rotate(180deg)}.card-pips{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%) rotate(.5deg);display:flex;flex-direction:column;align-items:center;gap:2.1rem;font-size:1.62rem;color:#d31839;text-shadow:0 0 8px rgba(211,24,57,.2);font-family:Times New Roman,serif}@keyframes drift-cube{0%,to{transform:translateZ(0)}25%{transform:translate3d(10px,-8px,0)}50%{transform:translate3d(-8px,-5px,0)}75%{transform:translate3d(4px,8px,0)}}@keyframes drift-tetris{0%,to{transform:translateZ(0)}30%{transform:translate3d(-9px,-6px,0)}60%{transform:translate3d(7px,-10px,0)}}@keyframes drift-set{0%,to{transform:translateZ(0)}35%{transform:translate3d(8px,-10px,0)}70%{transform:translate3d(-7px,6px,0)}}@keyframes drift-basketball{0%,to{transform:translateZ(0)}33%{transform:translate3d(7px,-9px,0)}66%{transform:translate3d(-8px,-5px,0)}}@keyframes drift-poker{0%,to{transform:translateZ(0)}34%{transform:translate3d(-7px,-9px,0)}68%{transform:translate3d(8px,-4px,0)}}@keyframes spin-cube{0%,to{transform:rotateX(-24deg) rotateY(32deg) rotate(0)}50%{transform:rotateX(-18deg) rotateY(-24deg) rotate(4deg)}}@keyframes spin-tetris{0%,to{transform:rotateX(-16deg) rotateY(20deg) rotate(-5deg)}50%{transform:rotateX(-10deg) rotateY(-14deg) rotate(5deg)}}@keyframes spin-card{0%,to{transform:rotateX(8deg) rotateY(-10deg) rotate(4deg)}50%{transform:rotateX(-4deg) rotateY(10deg) rotate(-3deg)}}@keyframes spin-basketball{0%,to{transform:rotateX(-12deg) rotateY(18deg) rotate(0)}50%{transform:rotateX(-8deg) rotateY(-16deg) rotate(3deg)}}@keyframes spin-poker{0%,to{transform:rotateX(10deg) rotateY(-14deg) rotate(3deg)}50%{transform:rotateX(3deg) rotateY(14deg) rotate(-2deg)}}@media (max-width: 900px){.hobby-cube-node{left:8%;top:27%}.hobby-set-node{left:40%;bottom:13%}.hobby-tetris-node{right:7%;bottom:9%}.hobby-basketball-node{left:10%;bottom:8%}.hobby-poker-node{right:8%;top:24%}.rubiks-cube{width:84px;height:84px}.tetris-piece{width:122px;height:102px}.set-card{width:190px;height:112px}.basketball{width:78px;height:78px}.poker-card{width:96px;height:132px}.hobby-label{font-size:.68rem;letter-spacing:.1em}.hobby-object-title{font-size:.64rem;letter-spacing:.11em}}#loading-screen{display:flex!important;transition:opacity .5s ease-out!important;will-change:opacity}html{--slide-ms: .8s;--panorama-x: 0vw;--pane-count: 1}#panorama-bg{position:fixed;top:0;left:0;width:calc(var(--pane-count) * 100vw);height:100vh;background-color:#000;background-image:var(--panorama-bg);background-size:auto 100%;background-repeat:repeat-x;background-position:0 50%;transform:translate(var(--panorama-x));transition:transform var(--slide-ms) cubic-bezier(.4,0,.2,1);z-index:0;pointer-events:none}#panorama-container{position:relative;display:flex;width:calc(var(--pane-count) * 100vw);height:100vh;transform:translate(var(--panorama-x));transition:transform var(--slide-ms) cubic-bezier(.4,0,.2,1);z-index:1}.panorama-pane{width:100vw;height:100vh;overflow-y:auto;overflow-x:hidden;position:relative;background-color:#000}.panorama-pane .pane-placeholder{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-family:Inter,sans-serif;color:#ffffffe6;text-shadow:0 0 20px rgba(255,255,255,.5),0 0 40px rgba(255,255,255,.3);letter-spacing:2px;font-weight:300;font-size:1.5rem;opacity:1;pointer-events:none;animation:loadingPulse 2s ease-in-out infinite}.panorama-pane .pane-content{position:relative;min-height:100%}.panorama-pane:has(.hobbies-page),.panorama-pane:has(.gallery-page),.panorama-pane:has(.timeline-page),.panorama-pane:has(.projects-page),.panorama-pane:has(.research-page),.panorama-pane:has(.education-page),.panorama-pane:has(.experience-page),.panorama-pane:has(.saturn-page),.panorama-pane:has(.honors-page),.panorama-pane:has(.skills-page),.panorama-pane:has(.contacts-page){overflow-y:hidden}.saturn-scene{position:absolute;left:50vw;top:56vh;width:220vw;height:150vh;transform:translate3d(calc(-50% + var(--saturn-shift, 0px)),-50%,0);perspective:1200px;pointer-events:none;z-index:1;contain:layout}.saturn-planet{position:absolute;left:50%;top:50%;width:155vw;height:155vw;transform:translate(-50%,-50%);border-radius:50%;z-index:3;background:radial-gradient(circle at 30% 28%,rgba(255,255,255,.45),transparent 32%),radial-gradient(circle at 66% 40%,rgba(255,255,255,.18),transparent 50%),radial-gradient(circle at 70% 70%,rgba(90,60,40,.35),transparent 55%),linear-gradient(180deg,#f6e7c9,#f0d8a8 12%,#e8c98f 18%,#e2bf7f 26%,#d9b26f 36%,#d8ad6b 44%,#d2a66c,#d7b07a 64%,#e1c292,#ead7ae,#f6e7c9);box-shadow:inset -40px -30px 80px #5a3c2859,inset 25px 20px 60px #ffffff2e,0 0 120px #fad5a540;filter:saturate(1.05)}.saturn-planet:before{content:"";position:absolute;inset:8% 6%;border-radius:50%;background:linear-gradient(180deg,#e6c48c99,#ddaa6e59 18%,#d29c6040,#c78e5633 42%,#d7aa7859 62%,#e8c89680 84%,#f0dcb4a6);opacity:.55;mix-blend-mode:screen}.saturn-planet:after{content:"";position:absolute;inset:0;border-radius:50%;background:radial-gradient(circle at 40% 35%,rgba(255,255,255,.18),transparent 45%);opacity:.8}.saturn-rings{position:absolute;left:50%;top:50%;width:300vw;height:58vw;max-height:92vh;transform:translate(-50%,-50%) rotate(-5deg) rotateX(68deg);transform-style:preserve-3d;border-radius:50%;z-index:2}.saturn-scene-left{--saturn-shift: 100vw}.saturn-scene-right{--saturn-shift: -100vw}.saturn-page .saturn-scene,.saturn-scene-left,.saturn-scene-right{will-change:transform}.saturn-rings ellipse{fill:none;stroke-linecap:round}.saturn-rings ellipse:nth-child(1){stroke:#fae8c880;stroke-width:18}.saturn-rings ellipse:nth-child(2){stroke:#e1be968c;stroke-width:12}.saturn-rings ellipse:nth-child(3){stroke:#be875f80;stroke-width:10}.saturn-rings ellipse:nth-child(4){stroke:#f0d2af99;stroke-width:12}.saturn-rings ellipse:nth-child(5){stroke:#af785573;stroke-width:8}.saturn-rings ellipse:nth-child(6){stroke:#e6c8a08c;stroke-width:10}.saturn-rings ellipse:nth-child(7){stroke:#c8a57d66;stroke-width:6}.saturn-rings-back{opacity:.45;-webkit-mask-image:linear-gradient(#000 0 45%,transparent 60%);mask-image:linear-gradient(#000 0 45%,transparent 60%)}.saturn-rings-front{opacity:.75;-webkit-mask-image:linear-gradient(transparent 0 40%,#000 60%);mask-image:linear-gradient(transparent 0 40%,#000 60%);z-index:5}.saturn-caption{display:inline-block;font-size:.8rem;letter-spacing:.2em;text-transform:uppercase;color:#ffffff8c}.mars-scene{position:absolute;left:50vw;top:10vh;width:150vw;height:75vh;transform:translate3d(calc(-50% + var(--mars-shift, 0px)),-50%,0);pointer-events:none;z-index:2}.mars-scene-projects{--mars-shift: 50vw}.mars-scene-research{--mars-shift: -50vw}.mars-planet{position:absolute;left:50%;top:50%;width:78vw;height:62vw;transform:translate(-50%,-50%);border-radius:50%;background:radial-gradient(circle at 30% 28%,rgba(255,215,185,.35),transparent 36%),radial-gradient(circle at 66% 42%,rgba(120,45,20,.35),transparent 52%),radial-gradient(circle at 72% 64%,rgba(95,35,18,.28),transparent 56%),linear-gradient(165deg,#e48756,#cc5b2f 30%,#b94a24 54%,#d46a3d 74%,#e59465);box-shadow:inset -34px -30px 80px #3c160a73,inset 18px 16px 45px #ffe6cd33,0 0 80px #c1440e33;filter:saturate(1.08)}.mars-planet:before{content:"";position:absolute;inset:7% 8%;border-radius:50%;background:radial-gradient(circle at 22% 66%,rgba(90,34,17,.42) 0 10%,transparent 14%),radial-gradient(circle at 42% 58%,rgba(80,30,16,.36) 0 8%,transparent 12%),radial-gradient(circle at 58% 30%,rgba(108,40,20,.34) 0 9%,transparent 13%),radial-gradient(circle at 72% 54%,rgba(84,31,16,.35) 0 7%,transparent 11%),radial-gradient(circle at 36% 24%,rgba(210,120,76,.28),transparent 42%);opacity:.8}.mars-planet:after{content:"";position:absolute;inset:0;border-radius:50%;background:radial-gradient(circle at 36% 34%,rgba(255,235,215,.14),transparent 48%)}.experience-rings-ui{position:absolute;inset:0;z-index:24;pointer-events:none}.experience-rings-scene{position:absolute;left:50vw;top:56vh;width:220vw;height:150vh;transform:translate3d(calc(-50% + 100vw),-50%,0);perspective:1200px;pointer-events:none}.experience-rings-hitbox{position:absolute;left:50%;top:50%;width:300vw;height:58vw;max-height:92vh;transform:translate(-50%,-50%) rotate(-5deg) rotateX(68deg);transform-style:preserve-3d;pointer-events:auto}.experience-rings-svg{width:100%;height:100%;overflow:visible}.experience-rings-click-us{position:absolute;left:7vw;top:81vh;font-size:.82rem;letter-spacing:.14em;text-transform:lowercase;color:#fae6beeb;text-shadow:0 0 16px rgba(240,210,170,.6);transform:rotate(-5deg) skewY(-3deg);pointer-events:none}.experience-ring-panel{position:absolute;left:5vw;top:22vh;width:min(42vw,620px);min-height:180px;pointer-events:auto;padding:1rem 1.2rem;border:1px solid rgba(214,180,134,.22);border-radius:14px;background:linear-gradient(145deg,#0a0a0cad,#120e0a6b);backdrop-filter:blur(8px)}.experience-ring-panel-header{display:flex;align-items:center;gap:.9rem}.experience-ring-logo{width:52px;height:52px;-o-object-fit:cover;object-fit:cover;border-radius:10px;background:transparent;padding:0;flex-shrink:0}.experience-ring-title{margin:0;font-size:1.35rem;letter-spacing:.05em;color:#fff4dff2}.experience-ring-role{margin:.22rem 0;font-size:.92rem;color:#f6d9aee6}.experience-ring-meta{margin:0;font-size:.78rem;letter-spacing:.08em;text-transform:uppercase;color:#ffffffa8}.experience-ring-bullets{margin:.8rem 0 0;padding-left:1.1rem;display:grid;gap:.36rem}.experience-ring-bullets li{font-size:.86rem;line-height:1.4;color:#ffffffd6}.experience-ring-empty{font-size:.9rem;letter-spacing:.09em;text-transform:lowercase;color:#ffffffb3}.honors-rings-ui{position:absolute;inset:0;z-index:24;pointer-events:none}.honors-rings-scene{position:absolute;left:50vw;top:56vh;width:220vw;height:150vh;transform:translate3d(calc(-50% - 100vw),-50%,0);perspective:1200px;pointer-events:none}.honors-rings-hitbox{position:absolute;left:50%;top:50%;width:300vw;height:58vw;max-height:92vh;transform:translate(-50%,-50%) rotate(-5deg) rotateX(68deg);transform-style:preserve-3d;pointer-events:auto}.honors-rings-svg{width:100%;height:100%;overflow:visible}.honors-rings-click{position:absolute;right:9vw;top:75vh;font-size:.82rem;letter-spacing:.14em;text-transform:lowercase;color:#b4ebfff2;text-shadow:0 0 16px rgba(120,210,255,.6);transform:rotate(-8deg) skewY(-2deg);pointer-events:none}.honors-ring-panel{position:absolute;right:5vw;top:73vh;width:min(44vw,660px);min-height:170px;pointer-events:auto;padding:1rem 1.2rem;border:1px solid rgba(110,210,240,.28);border-radius:14px;background:linear-gradient(145deg,#080c10b8,#0c181c73);backdrop-filter:blur(8px)}.honors-ring-panel-header{display:flex;align-items:center;gap:.9rem}.honors-ring-logo{width:56px;height:56px;-o-object-fit:cover;object-fit:cover;border-radius:10px;background:transparent;flex-shrink:0}.honors-ring-title{margin:0;font-size:1.2rem;letter-spacing:.04em;color:#e4fafff2}.honors-ring-achievement{margin:.18rem 0;font-size:.9rem;color:#9ae2f5eb}.honors-ring-year{margin:0;font-size:.78rem;letter-spacing:.08em;text-transform:uppercase;color:#dcf4ffb3}.honors-ring-note{margin:.8rem 0 0;font-size:.83rem;line-height:1.4;color:#e8f6fcd9}.honors-ring-empty{font-size:.9rem;letter-spacing:.09em;text-transform:lowercase;color:#dcf4ffb8}.gallery-stamp-layer{position:absolute;inset:0;z-index:12;pointer-events:none;overflow:hidden}.image{position:absolute;transform:translate(-50%,-50%);border-radius:16px;box-shadow:0 12px 28px #00000061,0 0 0 1px #ffffff24;-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-user-drag:none}.image[data-status=inactive]{display:none}.image[data-status=active]{display:block;animation:gallery-stamp-in .28s ease-out}.page-tip{position:absolute;left:1.5rem;bottom:1.5rem;z-index:40;pointer-events:none}.page-tip-text{color:#fff9;font-size:.75rem;font-weight:400;text-transform:lowercase;letter-spacing:.03em;animation:page-tip-pulse 2s infinite}@keyframes page-tip-pulse{0%,to{opacity:.5}50%{opacity:1}}@keyframes gallery-stamp-in{0%{opacity:0;transform:translate(-50%,-50%) scale(.88)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}body,html{overflow:hidden;position:relative;will-change:transform;backface-visibility:hidden;-webkit-backface-visibility:hidden}body>*:not(#panorama-bg){position:relative;z-index:1}.page-starfield{display:none!important}#page-slot{display:none}body:not(.page-loaded) nav{opacity:0;transition:opacity .6s ease-out}body.page-loaded nav{opacity:1;animation:page-fade-in .6s ease-out forwards}html{scroll-behavior:smooth}body{transition:opacity .3s ease-out}body:not(.page-loaded){overflow:hidden}@keyframes loadingPulse{0%,to{opacity:.7}50%{opacity:1}}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:#0a0a0f}::-webkit-scrollbar-thumb{background:#fff3;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#ffffff4d}body.light-mode .group:hover .group-hover\:text-gray-300,html.light-mode .group:hover .group-hover\:text-gray-300{color:#4a4a4a!important}.hover\:border-opacity-100:hover{--tw-border-opacity: 1}.hover\:bg-white\/5:hover{background-color:#ffffff0d}.hover\:text-blue-100:hover{--tw-text-opacity: 1;color:rgb(219 234 254 / var(--tw-text-opacity, 1))}.hover\:text-blue-200:hover{--tw-text-opacity: 1;color:rgb(191 219 254 / var(--tw-text-opacity, 1))}.hover\:text-orange-100:hover{--tw-text-opacity: 1;color:rgb(255 237 213 / var(--tw-text-opacity, 1))}.hover\:text-orange-200:hover{--tw-text-opacity: 1;color:rgb(254 215 170 / var(--tw-text-opacity, 1))}.hover\:opacity-60:hover{opacity:.6}.group:hover .group-hover\:text-gray-300{--tw-text-opacity: 1;color:rgb(209 213 219 / var(--tw-text-opacity, 1))}@media (min-width: 768px){.md\:col-span-2{grid-column:span 2 / span 2}.md\:-ml-12{margin-left:-3rem}.md\:block{display:block}.md\:w-8{width:2rem}.md\:w-\[60\%\]{width:60%}.md\:w-\[68\%\]{width:68%}.md\:w-\[76\%\]{width:76%}.md\:w-\[84\%\]{width:84%}.md\:grid-cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}.md\:gap-8{gap:2rem}.md\:px-8{padding-left:2rem;padding-right:2rem}}@media (min-width: 1024px){.lg\:w-12{width:3rem}.lg\:gap-12{gap:3rem}}
