:root{--color-bg:#000;--color-text:#f8fafc;--color-text-muted:#8e8e93;--color-border:#ffffff1f;--color-border-hover:#ffffff80;--font-sans:"Outfit", system-ui, sans-serif;--font-body:"Plus Jakarta Sans", system-ui, sans-serif;--sidebar-width:300px}*{box-sizing:border-box}body{background-color:var(--color-bg);color:var(--color-text);font-family:var(--font-body);width:100vw;height:100vh;margin:0;padding:0;overflow:hidden}#root{width:100vw;height:100vh;position:relative;overflow:hidden}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.inset-0{inset:0}.top-0{top:0}.right-0{right:0}.left-6{left:1.5rem}.z-0{z-index:0}.z-10{z-index:10}.z-20{z-index:20}.flex{display:flex}.hidden{display:none}.flex-row{flex-direction:row}.flex-col{flex-direction:column}.items-start{align-items:flex-start}.items-center{align-items:center}.items-end{align-items:flex-end}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.flex-grow{flex-grow:1}.flex-wrap{flex-wrap:wrap}.shrink-0{flex-shrink:0}@media (width>=640px){.sm\:block{display:block}.sm\:w-\[480px\]{width:480px}.sm\:border-l{border-left:1px solid var(--color-border)}}@media (width>=768px){.md\:flex-row{flex-direction:row}.md\:w-80{width:20rem}.md\:p-8{padding:2rem}.md\:border-b-0{border-bottom-width:0}.md\:border-r{border-right:1px solid var(--color-border)}}.w-full{width:100%}.h-full{height:100%}.w-64{width:16rem}.max-w-3xl{max-width:48rem}.max-w-lg{max-width:32rem}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-5{padding:1.25rem}.p-6{padding:1.5rem}.p-8{padding:2rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-3{padding-left:.75rem;padding-right:.75rem}.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.pb-2{padding-bottom:.5rem}.pt-3{padding-top:.75rem}.pt-4{padding-top:1rem}.pl-3{padding-left:.75rem}.pl-4{padding-left:1rem}.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}.mt-1\.5{margin-top:.375rem}.mt-2{margin-top:.5rem}.mt-4{margin-top:1rem}.mt-5{margin-top:1.25rem}.mt-6{margin-top:1.5rem}.mt-8{margin-top:2rem}.mr-2{margin-right:.5rem}.gap-1{gap:.25rem}.gap-1\.5{gap:.375rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.text-white{color:#fff}.text-cyan-300{color:#f8fafc}.text-cyan-400{color:#f1f5f9}.text-cyan-500{color:#e2e8f0}.text-cyan-600\/70{color:var(--color-text-muted)}.text-orange-400{color:#fff}.text-orange-500{color:#f8fafc}.text-orange-500\/60,.text-orange-500\/70{color:var(--color-text-muted)}.text-gray-300{color:#d1d5db}.text-gray-400{color:#9ca3af}.text-gray-500{color:#6b7280}.text-green-400{color:#fff}.text-xs{font-size:.75rem}.text-sm{font-size:.875rem}.text-base{font-size:1rem}.text-lg{font-size:1.125rem}.text-xl{font-size:1.25rem}.text-\[9px\]{font-size:9px}.text-\[10px\]{font-size:10px}.text-\[11px\]{font-size:11px}.bg-black\/40{background-color:#0006}.bg-black\/60{background-color:#000000bf}.bg-black\/75{background-color:#000000d9}.bg-cyan-500\/10{background-color:#ffffff0d}.bg-cyan-500\/20{background-color:#ffffff1a}.bg-cyan-950\/20,.bg-orange-500\/10{background-color:#ffffff0d}.bg-orange-500\/20{background-color:#ffffff1a}.bg-orange-950\/10{background-color:#ffffff0d}.bg-white\/\[0\.02\]{background-color:#ffffff05}.bg-white\/\[0\.04\]{background-color:#ffffff0a}.border{border:1px solid var(--color-border)}.border-2{border-width:2px}.border-transparent{border-color:#0000}.border-cyan-500{border-color:#fff3}.border-cyan-500\/10{border-color:#ffffff0d}.border-cyan-500\/20{border-color:#ffffff1a}.border-cyan-500\/30{border-color:#ffffff26}.border-cyan-500\/50{border-color:#ffffff4d}.border-orange-500{border-color:#fff3}.border-orange-500\/20{border-color:#ffffff1a}.border-orange-500\/30{border-color:#ffffff26}.border-white\/5{border-color:#ffffff0d}.border-l-2{border-left:2px solid #fffc}.border-b{border-bottom:1px solid var(--color-border)}.border-dashed{border-style:dashed}.font-mono,.font-sans{font-family:var(--font-sans)}.font-bold{font-weight:700}.font-semibold{font-weight:600}.font-black{font-weight:900}.tracking-wider{letter-spacing:.05em}.tracking-widest{letter-spacing:.08em}.tracking-tight{letter-spacing:-.02em}.uppercase{text-transform:uppercase}.italic{font-style:italic}.rounded{border-radius:2px}.rounded-md{border-radius:4px}.rounded-lg{border-radius:6px}.rounded-xl{border-radius:8px}.rounded-full{border-radius:9999px}.rounded-r-md{border-top-right-radius:4px;border-bottom-right-radius:4px}.backdrop-blur-sm{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.backdrop-blur-md{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.backdrop-blur-xl{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}.pointer-events-none{pointer-events:none}.pointer-events-auto{pointer-events:auto}.select-none{-webkit-user-select:none;user-select:none}.cursor-pointer{cursor:pointer}.transition-all{transition:all .3s cubic-bezier(.25,.8,.25,1)}.transition-transform{transition:transform .6s cubic-bezier(.25,.8,.25,1)}.duration-700{transition-duration:.7s}.scale-105:hover{transform:scale(1.03)}.scale-110{transform:scale(1.05)}@keyframes fadeIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes slideIn{0%{opacity:0;transform:translate(30px)}to{opacity:1;transform:translate(0)}}.animate-fade-in{animation:.4s cubic-bezier(.25,.8,.25,1) forwards fadeIn}.animate-slide-in{animation:.4s cubic-bezier(.25,.8,.25,1) forwards slideIn}.hud-tooltip{opacity:.95;transition:opacity .2s}.hud-branding{padding-left:2rem}.hud-btn{color:#fff;cursor:pointer;font-family:var(--font-sans);letter-spacing:.05em;text-transform:uppercase;background:0 0;border:1px solid #fff3;border-radius:4px;padding:6px 14px;font-size:11px;font-weight:500;transition:all .2s}.hud-btn:hover{color:#000;background:#fff;border-color:#fff}.canvas-container{z-index:0;will-change:filter;background-color:#000;width:100%;height:100%;transition:filter .8s cubic-bezier(.25,.8,.25,1);position:absolute;inset:0}.canvas-blur{filter:blur(8px)brightness(.5)}.left-panel{width:var(--sidebar-width);border-right:1px solid var(--color-border);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);z-index:10;pointer-events:auto;background:#0000008c;flex-direction:column;height:100vh;padding:2rem 1.5rem;transition:transform .4s cubic-bezier(.25,.8,.25,1);display:flex;position:fixed;top:0;left:0;overflow-y:auto;box-shadow:8px 0 25px #0009}.left-panel-title{font-family:var(--font-sans);letter-spacing:.12em;color:#fff;text-transform:uppercase;border-bottom:1px solid var(--color-border);margin-bottom:2rem;padding-bottom:.75rem;font-size:14px;font-weight:700}.project-index-item{cursor:pointer;font-family:var(--font-sans);background:#ffffff03;border:1px solid #0000;border-radius:4px;margin-bottom:.75rem;padding:.75rem 1rem;transition:all .25s}.project-index-item:hover{background:#ffffff0d;border-color:#ffffff26}.project-index-item.active{background:#ffffff17;border-color:#ffffff4d}.project-index-number{color:var(--color-text-muted);letter-spacing:.1em;margin-bottom:.15rem;font-size:9px;display:block}.project-index-name{color:#fff;letter-spacing:.03em;text-transform:uppercase;font-size:12px;font-weight:500}.subproject-list{font-family:var(--font-sans);margin-top:.4rem;padding-left:.2rem;list-style:none}.subproject-item{color:var(--color-text-muted);align-items:center;gap:.375rem;padding:.15rem 0;font-size:10px;display:flex}.subproject-bullet{background-color:#ffffff4d;border-radius:50%;width:3px;height:3px}.left-panel.collapsed{transform:translate(-100%)}.left-panel.open{transform:translate(0)}.left-panel-toggle{border:1px solid var(--color-border);color:#fff;cursor:pointer;z-index:25;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);pointer-events:auto;background:#000000d9;border-left:none;border-radius:0 6px 6px 0;outline:none;justify-content:center;align-items:center;width:42px;height:42px;transition:left .4s cubic-bezier(.25,.8,.25,1),background .2s,color .2s,border-color .2s;display:flex;position:fixed;top:1.5rem;left:0}.left-panel-toggle.open{left:var(--sidebar-width)}.left-panel-toggle:hover{color:#000;background:#fff;border-color:#fff}@media (width<=768px){.left-panel{width:280px}.left-panel-toggle.open{display:none}}.left-panel-close-btn{color:var(--color-text-muted);cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;padding:4px;transition:all .2s;display:flex}.left-panel-close-btn:hover{color:#fff;background:#ffffff0d}@media (width>=769px){.left-panel-close-btn{display:none}}.projects-panel{border-left:1px solid var(--color-border);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);z-index:20;pointer-events:auto;background:#000000d9;flex-direction:column;justify-content:space-between;width:480px;height:100vh;padding:2.5rem 2rem;transition:transform .4s cubic-bezier(.25,.8,.25,1);display:flex;position:fixed;top:0;right:0;overflow-y:auto;box-shadow:-10px 0 25px #0009}.projects-panel-header{border-bottom:1px solid var(--color-border);background:#000000d9}.projects-video-container{background:0 0;padding:0}@media (width<=768px){.projects-panel{width:100%;background:#000000a6!important}.projects-panel-header{background:#000000bf}.projects-video-container{padding:0 1.25rem}}.hud-reset-btn{z-index:15;pointer-events:auto;position:fixed;bottom:1.5rem;left:50%;transform:translate(-50%)}@media (width>=769px){.hud-reset-btn{top:1.5rem;bottom:auto}}.hud-header-controls{z-index:15;pointer-events:auto;align-items:center;gap:.75rem;display:flex;position:fixed;top:1.5rem;right:1.5rem}@media (width<=768px){.left-panel-open .hud-reset-btn,.left-panel-open .hud-header-controls{display:none!important}}.contact-dropdown{border:1px solid var(--color-border);z-index:30;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#000000f2;border-radius:6px;flex-direction:column;gap:.75rem;min-width:260px;margin-top:.5rem;padding:1.25rem;animation:.25s ease-out forwards fadeIn;display:flex;position:absolute;top:100%;right:0;box-shadow:0 10px 25px #000c}.contact-item{text-align:right;flex-direction:column;gap:.2rem;display:flex}.contact-label{color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.1em;font-size:8px;font-weight:600}.contact-value{color:#fff;font-size:13px;font-weight:500;text-decoration:none;transition:opacity .2s}.contact-value.link:hover{opacity:.8;text-decoration:underline}@media (width<=768px){.hud-legend{display:none!important}}
