:root{--wood: #10b981;--fire: #ef4444;--earth: #f59e0b;--metal: #cbd5e1;--water: #3b82f6;--font-suit: "SUIT", sans-serif;--font-gowun: "Gowun Batang", serif}*{box-sizing:border-box}body{margin:0;padding:0;background-color:#000;color:#fff;font-family:var(--font-suit),system-ui,-apple-system,sans-serif;overflow-x:hidden}h1,h2,h3{font-family:var(--font-gowun);margin:0}button{cursor:pointer;background:none;border:none;font-family:inherit;color:inherit}.relative{position:relative}.absolute{position:absolute}.fixed{position:fixed}.pointer-events-none{pointer-events:none}.inset-0{inset:0}.z-10{z-index:10}.min-h-screen{min-height:100vh}.h-screen{height:100vh}.w-full{width:100%}.h-full{height:100%}.object-cover{object-fit:cover}.overflow-hidden{overflow:hidden}.container{width:100%;max-width:1280px;margin-left:auto;margin-right:auto}.flex{display:flex}.flex-col{flex-direction:column}.flex-row{flex-direction:row}.items-center{align-items:center}.items-end{align-items:flex-end}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.space-x-2>*+*{margin-left:.5rem}.space-x-4>*+*{margin-left:1rem}.space-y-4>*+*{margin-top:1rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.py-12{padding-top:3rem;padding-bottom:3rem}.p-4{padding:1rem}.px-8{padding-left:2rem;padding-right:2rem}.py-4{padding-top:1rem;padding-bottom:1rem}.mb-4{margin-bottom:1rem}.mb-8{margin-bottom:2rem}.mb-12{margin-bottom:3rem}.mt-12{margin-top:3rem}.glass{background:#ffffff08;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.05)}.text-gradient{background:linear-gradient(to right,#c084fc,#db2777);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.bg-black{background-color:#000}.text-white{color:#fff}.text-white\/20{color:#fff3}.text-white\/40{color:#fff6}.text-white\/50{color:#ffffff80}.text-white\/60{color:#fff9}.text-gray-200\/90{color:#e5e7ebe6}.bg-white{background-color:#fff}.text-black{color:#000}.text-xs{font-size:.75rem}.text-sm{font-size:.875rem}.text-lg{font-size:1.125rem}.text-2xl{font-size:1.5rem}.text-7xl{font-size:4.5rem}.text-9xl{font-size:8rem}.font-bold{font-weight:700}.font-light{font-weight:300}.italic{font-style:italic}.tracking-tighter{letter-spacing:-.05em}.tracking-widest{letter-spacing:.1em}.tracking-\[0\.3em\]{letter-spacing:.3em}.tracking-\[0\.4em\]{letter-spacing:.4em}.rounded-full{border-radius:9999px}.rounded-hidden{border-radius:0}.border{border:1px solid currentColor}.border-2{border-width:2px}.border-white\/20{border-color:#fff3}.border-transparent{border-color:transparent}.border-white{border-color:#fff}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s}.duration-300{transition-duration:.3s}.duration-700{transition-duration:.7s}.duration-1000{transition-duration:1s}.opacity-40{opacity:.4}.opacity-50{opacity:.5}.opacity-100{opacity:1}.scale-105{transform:scale(1.05)}.scale-110{transform:scale(1.1)}.hover\:scale-105:hover{transform:scale(1.05)}.hover\:scale-110:hover{transform:scale(1.1)}.hover\:opacity-100:hover{opacity:1}.hover\:bg-transparent:hover{background-color:transparent}.hover\:text-white:hover{color:#fff}.uppercase{text-transform:uppercase}.bg-gradient-to-t{background-image:linear-gradient(to top,var(--tw-gradient-stops))}.from-black{--tw-gradient-from: #000;--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to, rgba(0, 0, 0, 0))}.via-black\/40{--tw-gradient-to: rgba(0, 0, 0, .4);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to), var(--tw-gradient-to, rgba(0, 0, 0, 0))}.to-transparent{--tw-gradient-to: transparent}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{transform:translateY(30px);opacity:0}to{transform:translateY(0);opacity:1}}.animate-in{animation:fadeIn 1s ease-out forwards}.slide-in-from-bottom-8{animation:slideUp .8s ease-out forwards}.animate-pulse{animation:pulse 1.8s ease-in-out infinite}@keyframes pulse{0%,to{opacity:.45;transform:scale(1.02)}50%{opacity:.7;transform:scale(1.06)}}.motion-fade{animation:motionFade 1.6s ease-in-out infinite alternate}@keyframes motionFade{0%{transform:scale(1.02) translate(0);filter:saturate(1)}to{transform:scale(1.08) translate(-1.5%);filter:saturate(1.18)}}#root{width:100%}
