:root{font-family:Nothing You Could Do,Inter,-apple-system,BlinkMacSystemFont,Segoe UI,system-ui,sans-serif;line-height:1.6;font-weight:400;color-scheme:dark;color:#fffffff2;background-color:#000;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--bg-primary: #000000;--bg-secondary: #0a0a0a;--glass-bg: rgba(255, 255, 255, .08);--glass-border: rgba(255, 255, 255, .12);--text-primary: rgba(255, 255, 255, .95);--text-secondary: rgba(255, 255, 255, .7);--text-muted: rgba(255, 255, 255, .5);--gradient-primary: linear-gradient(135deg, #667eea 0%, #764ba2 100%);--gradient-accent: linear-gradient(135deg, #f093fb 0%, #f5576c 100%);--gradient-success: linear-gradient(135deg, #4facfe 0%, #00f2fe 100%)}*{box-sizing:border-box}body{margin:0;padding:0;overflow-x:hidden;scroll-behavior:smooth;background:radial-gradient(ellipse at top,rgba(0,50,100,.1) 0%,transparent 50%),radial-gradient(ellipse at bottom,rgba(50,0,100,.1) 0%,transparent 50%),#000}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.inset-0{inset:0}.-z-10{z-index:-10}.z-10{z-index:10}.z-20{z-index:20}.z-30{z-index:30}.z-35{z-index:35}.z-40{z-index:40}.z-45{z-index:45}.overflow-hidden{overflow:hidden}.w-full{width:100%}.h-full{height:100%}.min-h-screen{min-height:100vh}.flex{display:flex}.block{display:block}.inline-block{display:inline-block}.hidden{display:none}.flex-col{flex-direction:column}.flex-row{flex-direction:row}.items-center{align-items:center}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.justify-around{justify-content:space-around}.justify-start{justify-content:flex-start}.justify-end{justify-content:flex-end}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.gap-1{gap:.25rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.space-y-1>*+*{margin-top:.25rem}.space-y-2>*+*{margin-top:.5rem}.space-y-3>*+*{margin-top:.75rem}.space-y-4>*+*{margin-top:1rem}.space-y-6>*+*{margin-top:1.5rem}.space-y-8>*+*{margin-top:2rem}.space-x-1>*+*{margin-left:.25rem}.space-x-2>*+*{margin-left:.5rem}.space-x-3>*+*{margin-left:.75rem}.space-x-4>*+*{margin-left:1rem}.space-x-6>*+*{margin-left:1.5rem}.w-2{width:.5rem}.w-3{width:.75rem}.w-4{width:1rem}.w-5{width:1.25rem}.w-6{width:1.5rem}.w-8{width:2rem}.w-10{width:2.5rem}.w-12{width:3rem}.w-16{width:4rem}.w-20{width:5rem}.w-24{width:6rem}.w-32{width:8rem}.w-64{width:16rem}.w-92{width:92%}.h-2{height:.5rem}.h-3{height:.75rem}.h-4{height:1rem}.h-5{height:1.25rem}.h-6{height:1.5rem}.h-8{height:2rem}.h-10{height:2.5rem}.h-12{height:3rem}.h-16{height:4rem}.h-20{height:5rem}.h-24{height:6rem}.h-32{height:8rem}.h-40{height:10rem}.max-w-xs{max-width:20rem}.max-w-sm{max-width:24rem}.max-w-md{max-width:28rem}.max-w-lg{max-width:32rem}.max-w-xl{max-width:36rem}.max-w-3xl{max-width:48rem}.max-w-4xl{max-width:56rem}.max-w-5xl{max-width:64rem}.max-w-420{max-width:26.25rem}.mx-auto{margin-left:auto;margin-right:auto}.p-1{padding:.25rem}.p-3{padding:.75rem}.p-5{padding:1.25rem}.p-8{padding:2rem}.p-10{padding:2.5rem}.p-12{padding:3rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.px-8{padding-left:2rem;padding-right:2rem}.px-10{padding-left:2.5rem;padding-right:2.5rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py-6{padding-top:1.5rem;padding-bottom:1.5rem}.py-8{padding-top:2rem;padding-bottom:2rem}.m-0{margin:0}.m-2{margin:.5rem}.m-4{margin:1rem}.mt-2{margin-top:.5rem}.mt-4{margin-top:1rem}.mt-6{margin-top:1.5rem}.mt-8{margin-top:2rem}.mt-10{margin-top:2.5rem}.mt-12{margin-top:3rem}.mb-8{margin-bottom:2rem}.mb-12{margin-bottom:3rem}.rounded{border-radius:.25rem}.rounded-md{border-radius:.375rem}.rounded-xl{border-radius:.75rem}.rounded-2xl{border-radius:1rem}.rounded-3xl{border-radius:1.5rem}.rounded-full{border-radius:9999px}.bg-black{background-color:#000}.bg-gray-50{background-color:#f9fafb}.bg-gray-100{background-color:#f3f4f6}.bg-gray-200{background-color:#e5e7eb}.bg-gray-300{background-color:#d1d5db}.bg-gray-400{background-color:#9ca3af}.bg-gray-600{background-color:#4b5563}.bg-gray-700{background-color:#374151}.bg-gray-800{background-color:#1f2937}.bg-gray-900{background-color:#111827}.bg-white-5{background-color:#ffffff0d}.bg-white-10{background-color:#ffffff1a}.bg-white-15{background-color:#ffffff26}.bg-white-20{background-color:#fff3}.bg-white-6{background-color:#ffffff0f}.text-xs{font-size:.75rem;line-height:1rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-4xl{font-size:2.25rem;line-height:2.5rem}.text-5xl{font-size:3rem;line-height:1}.text-6xl{font-size:3.75rem;line-height:1}.font-thin{font-weight:100}.font-light{font-weight:300}.font-normal{font-weight:400}.font-medium{font-weight:500}.font-extrabold{font-weight:800}.font-black{font-weight:900}.text-black{color:#000}.text-gray-100{color:#f3f4f6}.text-gray-200{color:#e5e7eb}.text-gray-500{color:#6b7280}.text-gray-600{color:#4b5563}.text-left{text-align:left}.text-right{text-align:right}.leading-tight{line-height:1.25}.leading-snug{line-height:1.375}.leading-normal{line-height:1.5}.leading-loose{line-height:2}.border-2{border-width:2px}.border-white-20{border-color:#fff3}.border-white-30{border-color:#ffffff4d}.shadow-sm{box-shadow:0 1px 2px #0000000d}.shadow{box-shadow:0 1px 3px #0000001a,0 1px 2px #0000000f}.shadow-md{box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f}.shadow-xl{box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a}.shadow-2xl{box-shadow:0 25px 50px -12px #00000040}.backdrop-blur-sm{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.backdrop-blur{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.backdrop-blur-lg{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.backdrop-blur-xl{-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px)}.transition-none{transition:none}.transition-all{transition:all .15s cubic-bezier(.4,0,.2,1)}.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:.2s}.transition-opacity{transition:opacity .15s cubic-bezier(.4,0,.2,1)}.transition-shadow{transition:box-shadow .15s cubic-bezier(.4,0,.2,1)}.transition-transform{transition:transform .15s cubic-bezier(.4,0,.2,1)}.duration-150{transition-duration:.15s}.duration-200{transition-duration:.2s}.duration-300{transition-duration:.3s}.duration-500{transition-duration:.5s}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.top-0{top:0}.left-0{left:0}.bottom-0{bottom:0}.right-0{right:0}.translate-y-neg-50{transform:translateY(-50%)}.scale-95{transform:scale(.95)}.scale-100{transform:scale(1)}.scale-105{transform:scale(1.05)}.scale-110{transform:scale(1.1)}.object-cover{object-fit:cover}.object-contain{object-fit:contain}.object-center{object-position:center}.cursor-pointer{cursor:pointer}.cursor-default{cursor:default}.animate-spin{animation:spin 1s linear infinite}.animate-ping{animation:ping 1s cubic-bezier(0,0,.2,1) infinite}.animate-fade-in{animation:fadeIn .5s ease-in-out}.text-white{color:#fff}.text-sm{font-size:.875rem}.leading-relaxed{line-height:1.625}.p-4{padding:1rem}.p-2{padding:.5rem}.border{border-width:1px}.border-white-10{border-color:#ffffff1a}.shadow-lg{box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d}.backdrop-blur-md{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.transition-colors{transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out}.hover\:text-blue-400:hover{color:#60a5fa}.animate-bounce{animation:bounce 1s infinite}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}.overflow-visible{overflow:visible}.focus-ring{outline:none;box-shadow:0 0 0 2px #60a5fa}.active-bg{background:#ffffff26;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-radius:.5rem}.bottom-6{bottom:1.5rem}.top-1\/2{top:50%}.top-85{top:85%}.left-1\/2{left:50%}.translate-x-neg-50{transform:translate(-50%)}.translate-neg-50{transform:translate(-50%,-50%)}.app-bg{background:#000}.card-elevated{box-shadow:0 8px 32px #0000002e,0 1.5px 6px #0000001f;border-radius:1.25rem;border:1.5px solid rgba(255,255,255,.12);background:#ffffff14;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);transition:box-shadow .2s,background .2s}.card-elevated:hover{box-shadow:0 16px 48px #00000038,0 2px 8px #00000029;background:#ffffff24}.section-spacing{padding-top:3rem;padding-bottom:3rem}.glass-effect{background:linear-gradient(135deg,#ffffff1a,#ffffff0d);-webkit-backdrop-filter:blur(20px) saturate(180%);backdrop-filter:blur(20px) saturate(180%);border:1px solid rgba(255,255,255,.1);box-shadow:0 8px 32px #0000004d,0 4px 16px #0000001a,inset 0 1px #ffffff1a}.text-gradient{background:linear-gradient(135deg,#667eea,#764ba2);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent}*{transition:all .3s cubic-bezier(.4,0,.2,1)}*:focus{outline:2px solid rgba(255,255,255,.3);outline-offset:2px}.centered{display:flex;flex-direction:column;align-items:center;justify-content:center}.avatar-shadow{box-shadow:0 4px 24px #0000002e}@media (min-width: 768px){.avatar-size{width:5rem;height:5rem}}.mt-7-percent{margin-top:7%}@keyframes bounce{0%,20%,53%,80%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1);transform:translateZ(0)}40%,43%{animation-timing-function:cubic-bezier(.755,.05,.855,.06);transform:translate3d(0,-30px,0)}70%{animation-timing-function:cubic-bezier(.755,.05,.855,.06);transform:translate3d(0,-15px,0)}90%{transform:translate3d(0,-4px,0)}}.py-20{padding-top:5rem;padding-bottom:5rem}.max-w-6xl{max-width:72rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.font-bold{font-weight:700}.text-center{text-align:center}.mb-10{margin-bottom:2.5rem}.mb-4{margin-bottom:1rem}.mb-2{margin-bottom:.5rem}.grid{display:grid}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.gap-8{gap:2rem}.h-48{height:12rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.font-semibold{font-weight:600}.text-gray-300{color:#d1d5db}.gap-2{gap:.5rem}.bg-blue-500\/20{background-color:#3b82f633}.text-blue-300{color:#93c5fd}.px-2{padding-left:.5rem;padding-right:.5rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.text-gray-400{color:#9ca3af}.text-red-400{color:#f87171}.hover\:text-red-300:hover{color:#fca5a5}.bg-blue-500{background-color:#3b82f6}.px-4{padding-left:1rem;padding-right:1rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.rounded-lg{border-radius:.5rem}.bg-white\/10{background-color:#ffffff1a}.hover\:bg-white\/20:hover{background-color:#fff3}.hover\:bg-blue-600:hover{background-color:#2563eb}.bg-black\/50{background-color:#00000080}.z-50{z-index:50}.bg-white{background-color:#fff}.max-w-2xl{max-width:42rem}.max-h-80vh{max-height:80vh}.text-2xl{font-size:1.5rem;line-height:2rem}.h-64{height:16rem}.bg-gray-500{background-color:#6b7280}.hover\:bg-gray-600:hover{background-color:#4b5563}@media (min-width: 768px){.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}}.p-6{padding:1.5rem}.mb-6{margin-bottom:1.5rem}.bg-blue-600{background-color:#2563eb}.hover\:bg-blue-700:hover{background-color:#1d4ed8}.disabled\:opacity-50:disabled{opacity:.5}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.resize-none{resize:none}.placeholder-gray-400::placeholder{color:#9ca3af}.focus\:ring-2:focus{box-shadow:0 0 0 2px currentColor}.focus\:ring-blue-500:focus{box-shadow:0 0 0 2px #fff}.focus\:border-blue-500:focus{border-color:#fff}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1{font-size:3.2em;line-height:1.1}.app-bg{background:radial-gradient(ellipse at top,#0a0a0a,#000);min-height:100vh;position:relative}.app-bg:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 20% 50%,rgba(255,255,255,.02) 0%,transparent 50%),radial-gradient(circle at 80% 20%,rgba(255,255,255,.02) 0%,transparent 50%),radial-gradient(circle at 40% 80%,rgba(255,255,255,.01) 0%,transparent 50%);pointer-events:none}.hero-centered{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;transition:all 1.2s cubic-bezier(.4,0,.2,1)}.hero-top{display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;margin-top:7%;transition:all 1.2s cubic-bezier(.4,0,.2,1)}.card-elevated{background:linear-gradient(145deg,#ffffff1a,#ffffff0d);-webkit-backdrop-filter:blur(20px) saturate(180%);backdrop-filter:blur(20px) saturate(180%);border:1px solid rgba(255,255,255,.1);border-radius:1rem;box-shadow:0 8px 32px #0000004d,0 4px 16px #0000001a,inset 0 1px #ffffff1a,inset 0 0 20px #ffffff0d;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.card-elevated:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.4),transparent)}.card-elevated:hover{background:linear-gradient(145deg,#ffffff26,#ffffff14);border-color:#fff3;box-shadow:0 16px 64px #0006,0 8px 32px #0003,inset 0 1px #fff3,inset 0 0 20px #ffffff14;transform:translateY(-4px)}.nav-glass{background:linear-gradient(145deg,#ffffff1f,#ffffff0f);-webkit-backdrop-filter:blur(24px) saturate(180%);backdrop-filter:blur(24px) saturate(180%);border:1px solid rgba(255,255,255,.15);box-shadow:0 8px 32px #0000004d,0 4px 16px #0000001a,inset 0 1px #fff3}.btn-primary{background:linear-gradient(135deg,#fff,#f0f0f0);color:#000;font-weight:600;padding:.75rem 2rem;border-radius:.75rem;border:1px solid rgba(0,0,0,.1);box-shadow:0 4px 16px #0000001a,0 2px 8px #0000000d,inset 0 1px #fff;transition:all .2s cubic-bezier(.4,0,.2,1);cursor:pointer;position:relative;overflow:hidden}.btn-primary:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.4),transparent);transition:left .6s}.btn-primary:hover{background:linear-gradient(135deg,#f8f8f8,#e8e8e8);box-shadow:0 8px 24px #00000026,0 4px 12px #00000014,inset 0 1px #fff;transform:translateY(-2px)}.btn-primary:hover:before{left:100%}.btn-secondary{background:#ffffff1a;color:#fff;font-weight:500;padding:.625rem 1.5rem;border-radius:.5rem;border:1px solid rgba(255,255,255,.2);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);transition:all .2s cubic-bezier(.4,0,.2,1);cursor:pointer}.btn-secondary:hover{background:#ffffff26;border-color:#ffffff4d;transform:translateY(-1px)}.project-card{background:linear-gradient(145deg,#ffffff14,#ffffff08);border:1px solid rgba(255,255,255,.1);border-radius:1rem;overflow:hidden;transition:all .4s cubic-bezier(.4,0,.2,1);cursor:pointer;position:relative}.project-card:after{content:"";position:absolute;inset:0;background:linear-gradient(145deg,rgba(255,255,255,.1) 0%,transparent 50%);opacity:0;transition:opacity .3s ease}.project-card:hover{background:linear-gradient(145deg,#ffffff1f,#ffffff0f);border-color:#fff3;transform:translateY(-8px) scale(1.02);box-shadow:0 20px 40px #0000004d,0 8px 24px #00000026}.project-card:hover:after{opacity:1}.form-input{background:#ffffff0d;border:1px solid rgba(255,255,255,.1);color:var(--text-primary);padding:.875rem 1rem;border-radius:.5rem;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);transition:all .2s cubic-bezier(.4,0,.2,1);font-size:.875rem}.form-input:focus{outline:none;border-color:#ffffff4d;background:#ffffff14;box-shadow:0 0 0 3px #ffffff0d,0 4px 16px #0000001a}.form-input::placeholder{color:var(--text-muted)}.form-textarea{resize:vertical;min-height:120px}.avatar-shadow{box-shadow:0 8px 32px #0000004d,0 4px 16px #0003,inset 0 1px #ffffff1a;border:2px solid rgba(255,255,255,.15);transition:all .3s ease}.avatar-shadow:hover{box-shadow:0 12px 48px #0006,0 6px 24px #00000040,inset 0 1px #fff3;border-color:#ffffff40;transform:scale(1.05)}.avatar-size{width:3rem;height:3rem}.hover\:bg-white-5:hover{background-color:#ffffff0d}.hover\:bg-white-10:hover{background-color:#ffffff1a}.hover\:bg-white-15:hover{background-color:#ffffff26}.hover\:scale-105:hover{transform:scale(1.05)}.hover\:-translate-y-1:hover{transform:translateY(-.25rem)}@media (min-width: 768px){.avatar-size{width:5rem;height:5rem}.md\:text-5xl{font-size:3rem;line-height:1}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}}@keyframes bounce{0%,to{transform:translateY(-25%);animation-timing-function:cubic-bezier(.8,0,1,1)}50%{transform:translateY(0);animation-timing-function:cubic-bezier(0,0,.2,1)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes ping{0%{transform:scale(1);opacity:1}75%,to{transform:scale(2);opacity:0}}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}.tech-hex-card{position:relative;width:100px;height:100px;background:linear-gradient(135deg,#ffffff1a,#ffffff0d);-webkit-backdrop-filter:blur(20px) saturate(180%);backdrop-filter:blur(20px) saturate(180%);border:1px solid rgba(255,255,255,.2);border-radius:20px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .4s cubic-bezier(.4,0,.2,1);overflow:hidden;box-shadow:0 4px 20px #0000001a,0 1px 3px #0000001a,inset 0 1px #fff3}.tech-hex-content{position:relative;z-index:2;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.tech-hex-glow{position:absolute;top:-50%;left:-50%;width:200%;height:200%;opacity:0;transition:opacity .4s ease;border-radius:50%;filter:blur(20px)}.tech-hex-card:hover{transform:translateY(-8px) scale(1.05);border-color:#ffffff4d;box-shadow:0 20px 40px #0003,0 10px 20px #0000001a,inset 0 1px #ffffff4d}.tech-hex-card:hover .tech-hex-glow{opacity:1}.tech-hex-card:hover .tech-hex-content{transform:scale(1.1)}@media (max-width: 768px){.tech-hex-card{width:80px;height:80px;border-radius:16px}.tech-hex-content div:first-child{font-size:1.5rem!important}}@media (max-width: 640px){.tech-hex-card{width:70px;height:70px;border-radius:14px}}.projects-grid-desktop{display:grid!important;grid-template-columns:1fr!important;gap:1.5rem!important;max-width:28rem!important;margin-left:auto!important;margin-right:auto!important}@media (min-width: 1024px){.projects-grid-desktop{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:1.5rem!important;max-width:80rem!important;margin-left:auto!important;margin-right:auto!important;width:100%!important}.projects-grid-desktop>div{height:100%!important;display:flex!important;flex-direction:column!important}.projects-grid-desktop .card-elevated{height:100%!important;display:flex!important;flex-direction:column!important;min-height:400px!important}.projects-grid-desktop .card-elevated>img{height:192px!important;flex-shrink:0!important}.projects-grid-desktop .card-elevated>h3{min-height:3.5rem!important;display:flex!important;align-items:center!important}.projects-grid-desktop .card-elevated>p{flex:1!important;min-height:3rem!important}.projects-grid-desktop .card-elevated>div:first-of-type{min-height:2.5rem!important}}.loading-screen{position:fixed;inset:0;width:100vw;height:100vh;min-height:100vh;min-height:-webkit-fill-available;background:#000;z-index:9999999;display:flex;align-items:center;justify-content:center;overflow:hidden;opacity:1;transition:opacity .8s ease-out;will-change:opacity,transform;-webkit-overflow-scrolling:touch}.loading-screen:before{content:"";position:absolute;inset:0;width:100%;height:100%;background:#000;z-index:-1}.loading-screen.zooming{animation:screen-zoom .5s cubic-bezier(.4,0,.2,1) forwards}@keyframes screen-zoom{0%{transform:scale(1);opacity:1}to{transform:scale(1.5);opacity:0}}.loading-screen.fade-out{opacity:0;pointer-events:none}.firework-container{position:absolute;bottom:10%;left:50%;transform:translate(-50%);width:20px;height:20px;will-change:transform}.firework-container.launching{animation:firework-launch 1s cubic-bezier(.25,.46,.45,.94) forwards}@keyframes firework-launch{0%{bottom:10%;opacity:1}to{bottom:55%;opacity:1}}.firework-container.exploded{bottom:55%;left:50%}.firework-core{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:18px;height:18px;background:radial-gradient(circle,#fff,#f8f8f8 40%,#f0f0f0);border-radius:50%;box-shadow:0 0 40px #fff,0 0 80px #ffffffe6,0 0 120px #ffffffb3;animation:core-pulse .2s ease-in-out infinite;filter:brightness(2) contrast(1.5)}@keyframes core-pulse{0%,to{transform:translate(-50%,-50%) scale(1)}50%{transform:translate(-50%,-50%) scale(1.2)}}.firework-trail{position:absolute;bottom:-100%;left:50%;transform:translate(-50%);width:4px;height:100vh;pointer-events:none}.trail-particle{position:absolute;bottom:0;left:50%;transform:translate(-50%);width:4px;height:15px;background:linear-gradient(to bottom,#ffffff 0%,#d0d0d0 50%,transparent 100%);border-radius:50%;animation:trail-fade .6s ease-out forwards;filter:blur(1px)}@keyframes trail-fade{0%{opacity:1;transform:translate(-50%) scale(1)}to{opacity:0;transform:translate(-50%) scale(.3)}}.explosion-particle{position:absolute;top:50%;left:50%;width:9px;height:9px;background:var(--color);border-radius:50%;box-shadow:0 0 20px var(--color),0 0 40px var(--color),0 0 60px #fff9;animation:particle-explode 1.3s ease-out forwards;will-change:transform,opacity;filter:brightness(1.4)}@keyframes particle-explode{0%{transform:translate(-50%,-50%) rotate(var(--angle)) translateY(0) scale(1);opacity:1}60%{opacity:1}to{transform:translate(-50%,-50%) rotate(var(--angle)) translateY(calc(var(--speed) * 600px)) scale(0);opacity:0}}.sparkle-particle{position:absolute;top:50%;left:50%;width:7px;height:7px;background:var(--color);border-radius:50%;box-shadow:0 0 15px var(--color),0 0 30px var(--color),0 0 45px #ffffffb3;animation:sparkle-explode 1.1s ease-out forwards;will-change:transform,opacity;filter:brightness(1.6)}@keyframes sparkle-explode{0%{transform:translate(-50%,-50%) rotate(var(--angle)) translateY(0) scale(0);opacity:0}20%{opacity:1;transform:translate(-50%,-50%) rotate(var(--angle)) translateY(30px) scale(1)}to{transform:translate(-50%,-50%) rotate(var(--angle)) translateY(450px) scale(0);opacity:0}}.zoom-overlay{position:absolute;top:0;left:0;width:100%;height:100%;display:flex;align-items:center;justify-content:center;pointer-events:none;z-index:100}.zoom-particles{position:absolute;width:100%;height:100%}.zoom-particle{position:absolute;width:4px;height:4px;background:#fff;border-radius:50%;animation:particle-zoom 1s ease-in forwards;box-shadow:0 0 8px #fffc;will-change:transform,opacity}@keyframes particle-zoom{0%{transform:translate(0) scale(1);opacity:1}to{transform:translate(calc((50vw - var(--x, 50vw)) * -3),calc((50vh - var(--y, 50vh)) * -3)) scale(3);opacity:0}}@media (max-width: 768px){.firework-core{width:12px;height:12px}.explosion-particle{width:6px;height:6px}@keyframes particle-explode{0%{transform:translate(-50%,-50%) rotate(var(--angle)) translateY(0) scale(1);opacity:1}60%{opacity:1}to{transform:translate(-50%,-50%) rotate(var(--angle)) translateY(calc(var(--speed) * 450px)) scale(0);opacity:0}}.sparkle-particle{width:5px;height:5px}@keyframes sparkle-explode{0%{transform:translate(-50%,-50%) rotate(var(--angle)) translateY(0) scale(0);opacity:0}20%{opacity:1;transform:translate(-50%,-50%) rotate(var(--angle)) translateY(25px) scale(1)}to{transform:translate(-50%,-50%) rotate(var(--angle)) translateY(380px) scale(0);opacity:0}}}@media (max-width: 480px){.firework-core{width:10px;height:10px}.explosion-particle{width:5px;height:5px}@keyframes particle-explode{0%{transform:translate(-50%,-50%) rotate(var(--angle)) translateY(0) scale(1);opacity:1}60%{opacity:1}to{transform:translate(-50%,-50%) rotate(var(--angle)) translateY(calc(var(--speed) * 380px)) scale(0);opacity:0}}.sparkle-particle{width:4px;height:4px}@keyframes sparkle-explode{0%{transform:translate(-50%,-50%) rotate(var(--angle)) translateY(0) scale(0);opacity:0}20%{opacity:1;transform:translate(-50%,-50%) rotate(var(--angle)) translateY(20px) scale(1)}to{transform:translate(-50%,-50%) rotate(var(--angle)) translateY(320px) scale(0);opacity:0}}}*{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.loading-screen *{transform:translateZ(0);backface-visibility:hidden;perspective:1000px}
