@font-face{font-family:Retina Narrow;src:url(/fonts/RetinaNarr-Bold.woff2) format("woff2");font-weight:700;font-style:normal}@font-face{font-family:Retina Narrow;src:url(/fonts/RetinaNarr-Medium.woff2) format("woff2");font-weight:500;font-style:normal}@font-face{font-family:Retina Narrow;src:url(/fonts/RetinaNarr-Book.woff2) format("woff2");font-weight:400;font-style:normal}@font-face{font-family:Retina Narrow;src:url(/fonts/RetinaNarr-Light.woff2) format("woff2");font-weight:300;font-style:normal}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body,#root{width:100%;height:100%;overflow:hidden}body{font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;background:#0a0a0a}.app{position:relative;width:100%;height:100vh;background:radial-gradient(ellipse at 50% 20%,#161616,#080808 65%);overflow:hidden}.bg-text{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:clamp(60px,15vw,160px);font-weight:900;color:#ffffff06;letter-spacing:.08em;white-space:nowrap;-webkit-user-select:none;user-select:none;pointer-events:none}.hint{position:absolute;bottom:32px;left:50%;transform:translate(-50%);font-size:11px;letter-spacing:.2em;color:#ffffff26;text-transform:uppercase;-webkit-user-select:none;user-select:none;pointer-events:none}.badge-wrapper{position:fixed;top:0;left:0;width:353px;cursor:grab;z-index:2}.badge-wrapper.baked-in{cursor:default;-webkit-user-select:none;user-select:none;z-index:2;transform-origin:0px 0px;will-change:transform,left,top;touch-action:none}.badge-scene{width:353px;height:500px;perspective:1000px}.badge-scene .badge-face{position:absolute;top:0;right:0;bottom:0;left:0;backface-visibility:hidden;-webkit-backface-visibility:hidden;transition:transform .6s cubic-bezier(.4,0,.2,1)}.badge-front{transform:rotateY(0)}.badge-back{transform:rotateY(180deg)}.badge-scene.is-flipped .badge-front{transform:rotateY(-180deg)}.badge-scene.is-flipped .badge-back{transform:rotateY(0)}.badge-card{width:100%;height:100%;background:linear-gradient(180deg,#1c1d20,#151519);border:none;border-radius:14px;padding:12px;font-family:Retina Narrow,-apple-system,sans-serif;display:flex;flex-direction:column;gap:0;box-shadow:0 30px 90px #000000f2,0 8px 24px #0009,0 -1px #ffffff24,-1px 0 #ffffff12,0 1px #ffffff1f,1px 0 #ffffff17,inset 0 1px #ffffff14,inset 0 -1px #0009;position:relative;overflow:hidden;isolation:isolate;transition:transform .9s cubic-bezier(.4,0,.2,1),box-shadow .9s ease}.badge-card:before{content:"";position:absolute;top:0;left:0;right:0;height:120px;background:linear-gradient(180deg,rgba(255,255,255,.04) 0%,transparent 100%);border-radius:14px 14px 0 0;pointer-events:none}.badge-card:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(125deg,transparent 20%,rgba(255,255,255,.025) 50%,transparent 80%);pointer-events:none;border-radius:14px}.badge-passcode{margin-top:12px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;position:relative;z-index:1}.badge-passcode.shake{animation:shake .45s ease}@keyframes shake{0%,to{transform:translate(0)}15%{transform:translate(-6px)}35%{transform:translate(6px)}55%{transform:translate(-4px)}75%{transform:translate(4px)}}.passcode-indicator-row{display:flex;align-items:center;justify-content:center;width:100%;position:relative}.passcode-clear{position:absolute;right:0;background:none;border:none;color:#ffffff59;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:4px;font-family:Retina Narrow,sans-serif;font-size:12px;font-weight:500;letter-spacing:.12em;transition:color .15s}.passcode-clear:hover{color:#ffffffbf}.passcode-digits{display:flex;justify-content:space-between;align-items:center;width:calc((100% - 30px - 16px) / 3);margin-top:0;position:relative;opacity:1;transition:opacity .2s ease}.digit-dot{width:8px;height:8px;border-radius:50%;background:#ffffff1f;transition:background .2s,transform .15s}.digit-dot.active{background:#fff}.digit-dot.unlocked{background:#c8f500}.digit-dot.wrong{background:#e10000;border-color:#e10000}.passcode-digits.unlocked .digit-dot{animation:dotCollapse .3s ease forwards}.passcode-digits.unlocked .digit-dot:nth-child(1){animation-delay:1s}.passcode-digits.unlocked .digit-dot:nth-child(2){animation-delay:1.04s}.passcode-digits.unlocked .digit-dot:nth-child(3){animation-delay:1.08s}.passcode-digits.unlocked .digit-dot:nth-child(4){animation-delay:1.08s}.passcode-digits.unlocked .digit-dot:nth-child(5){animation-delay:1.04s}.passcode-digits.unlocked .digit-dot:nth-child(6){animation-delay:1s}.passcode-digits.wrong .digit-dot{animation:dotCollapse .3s ease forwards}.passcode-digits.wrong .digit-dot:nth-child(1){animation-delay:0s}.passcode-digits.wrong .digit-dot:nth-child(2){animation-delay:.04s}.passcode-digits.wrong .digit-dot:nth-child(3){animation-delay:.08s}.passcode-digits.wrong .digit-dot:nth-child(4){animation-delay:.08s}.passcode-digits.wrong .digit-dot:nth-child(5){animation-delay:.04s}.passcode-digits.wrong .digit-dot:nth-child(6){animation-delay:0s}@keyframes dotCollapse{0%{transform:scale(1);opacity:1}60%{transform:scale(1.4);opacity:.6}to{transform:scale(0);opacity:0}}.passcode-success{position:absolute;left:50%;top:50%;display:flex;align-items:center;justify-content:center;color:#c8f500;opacity:0;transform:translate(-50%) translateY(calc(-50% + 2px)) scale(.2);pointer-events:none}.passcode-digits.unlocked .passcode-success{animation:successPop 2s ease 1.38s forwards}@keyframes successPop{0%{opacity:0;transform:translate(-50%) translateY(calc(-50% + 2px)) scale(.2)}20%{opacity:1;transform:translate(-50%) translateY(calc(-50% + 2px)) scale(1.1)}30%{opacity:1;transform:translate(-50%) translateY(calc(-50% + 2px)) scale(1)}75%{opacity:1;transform:translate(-50%) translateY(calc(-50% + 2px)) scale(1)}to{opacity:0;transform:translate(-50%) translateY(calc(-50% + 2px)) scale(.8)}}.passcode-error{position:absolute;left:50%;top:50%;display:flex;align-items:center;justify-content:center;color:#e10000;opacity:0;transform:translate(-50%) translateY(calc(-50% + 2px)) scale(.2);pointer-events:none}.passcode-digits.wrong .passcode-error{animation:successPop 2s ease .2s forwards}.passcode-pad.wrong .pad-key{background:#e10000!important;transition:background .15s}.passcode-pad{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;width:100%;padding:0;box-sizing:border-box}.pad-key{height:80px;border-radius:12px;background:#363739;border:none;color:transparent;font-family:Retina Narrow,sans-serif;font-size:28px;font-weight:500;cursor:pointer;transition:background .1s}.pad-key:hover{background:#3e4042;color:#999}.pad-key:active{background:#404244}.passcode-pad.unlocked{gap:8px}.passcode-pad.unlocked .pad-key{pointer-events:none;transition:all .35s cubic-bezier(.4,0,.2,1)}.passcode-pad.unlocked .pad-key:not(.correct):not(.pad-reset){opacity:0;transform:scale(.7);background:transparent!important;border-color:transparent!important}.passcode-pad.unlocked .pad-key:nth-child(5){transition-delay:.05s}.passcode-pad.unlocked .pad-key:nth-child(7){transition-delay:.1s}.passcode-pad.unlocked .pad-key:nth-child(10){transition-delay:.15s}.passcode-pad.unlocked .pad-key.correct{color:transparent}.pad-key.pressed{background:#c8f500;border-color:#c8f500;color:#222;box-shadow:inset 0 2px 6px #0000008c,inset 0 1px 2px #0006}.pad-key.correct{background:#c8f500;border-color:#c8f500;color:#222}.pad-key.digit-active{background:#3e4042;border-color:#c8f50026;color:#c8f50040}.pad-reset-overlay{position:absolute;bottom:0;right:38px;width:24px;height:24px;border-radius:50%;background:#c8f500;border:none;display:flex;align-items:center;justify-content:center;color:transparent;cursor:pointer;transition:color .2s,background .15s}.pad-reset-overlay:hover{background:#d8ff10;color:#1a1a1a}.pad-key.pad-reset{width:24px!important;height:24px!important;border-radius:50%!important;background:#c8f500!important;display:flex;align-items:center;justify-content:center;color:transparent!important;transform:none!important;transition:background .15s,color .15s!important;animation:resetFadeIn 3s ease forwards;box-shadow:none!important;pointer-events:auto!important;cursor:pointer}.pad-key.pad-reset:hover{background:#d8ff10!important;color:#1a1a1a!important}@keyframes resetFadeIn{0%{opacity:0}to{opacity:1}}.passcode-pad.resetting .pad-key{animation:padFadeIn 1.2s ease forwards;pointer-events:none}@keyframes padFadeIn{0%{opacity:0;transform:scale(.85)}to{opacity:1;transform:scale(1)}}.project-row{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;gap:32px;padding:0;pointer-events:none;z-index:10;box-sizing:border-box}.project-card-number{position:absolute;top:16px;left:24px;font-family:Retina Narrow,sans-serif;font-size:11px;font-weight:500;color:#c8f500;letter-spacing:.06em;text-transform:uppercase;pointer-events:none;-webkit-user-select:none;user-select:none;z-index:2}.project-card-title{position:absolute;top:34px;left:24px;right:24px;z-index:2;font-family:Retina Narrow,sans-serif;font-size:32px;font-weight:500;color:#fff;line-height:1.15;letter-spacing:-.02em;pointer-events:none;-webkit-user-select:none;user-select:none}.project-card-info{position:absolute;top:100px;left:24px;right:24px;display:flex;flex-direction:column;gap:20px;z-index:2}.project-info-row{display:flex;flex-direction:row;gap:24px}.project-info-row .project-info-section{flex:1}.project-info-section{display:flex;flex-direction:column;gap:4px}.project-info-heading{display:flex;align-items:center;gap:6px;font-family:Retina Narrow,sans-serif;font-size:12px;font-weight:500;color:#fff;margin-bottom:4px}.project-info-heading svg{opacity:.9;position:relative;top:-1.5px}.project-info-primary{font-family:Retina,sans-serif;font-size:12px;font-weight:600;color:#fff;margin:0}.project-info-secondary{font-family:Retina,sans-serif;font-size:12px;font-weight:400;color:#ffffff80;margin:0;line-height:1.5}.project-card-data{position:absolute;bottom:24px;left:24px;right:24px;display:flex;flex-direction:column;gap:12px;z-index:2}.project-card-metrics{display:flex;flex-direction:row;justify-content:space-between;align-items:flex-start}.project-card-metrics:has(.project-card-metric:only-child){justify-content:center}.project-card-metric{display:flex;flex-direction:column;align-items:center;gap:4px}.metric-value{font-family:Retina Narrow,sans-serif;font-size:48px;font-weight:700;color:#c8f500;line-height:1}.project-card:nth-child(2) .project-card-number,.project-card:nth-child(2) .metric-value{color:#ff8c00}.project-card:nth-child(3) .project-card-number,.project-card:nth-child(3) .metric-value{color:#4da6ff}.project-card:nth-child(4) .project-card-number,.project-card:nth-child(4) .metric-value{color:#a06aff}.metric-label{font-family:Retina Narrow,sans-serif;font-size:12px;font-weight:500;color:#fff9}.project-card:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:14px;background-image:repeating-linear-gradient(-52deg,transparent 0px,transparent 3px,rgba(255,255,255,.022) 3px,rgba(255,255,255,.022) 4px);pointer-events:none;z-index:0}.project-card:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:14px;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)' opacity='1'/%3E%3C/svg%3E");background-size:180px 180px;opacity:.07;mix-blend-mode:overlay;pointer-events:none;z-index:1}.project-card{position:relative;overflow:hidden;flex-shrink:0;width:max(363px,calc(25vw - 40px));height:min(calc(max(363px,calc(25vw - 40px))*1.46),90vh);background:#0c0c0fd1;backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border-radius:14px;box-shadow:20px 30px 80px #000000e6,0 -1px #ffffff38,1px 0 #ffffff24,0 1px #ffffff2e,inset 0 1px #ffffff1f;opacity:1;will-change:transform,opacity;transition:transform .75s cubic-bezier(.34,1.4,.64,1),opacity .4s ease}.project-row:not(.visible) .project-card{cursor:pointer;pointer-events:auto;touch-action:manipulation}.project-row:not(.visible) .project-card-number,.project-row:not(.visible) .project-card-title,.project-row:not(.visible) .project-card-info,.project-row:not(.visible) .project-card-data{opacity:0}.project-card.from-left.delay-1{transform:perspective(60vw) translate(calc(-50vw + 40px)) translateY(2vh) rotateY(65deg)}.project-card.from-left.delay-2{transform:perspective(60vw) translate(calc(-50vw + 120px)) translateY(-2vh) rotateY(60deg)}.project-card.from-right.delay-2{transform:perspective(60vw) translate(calc(50vw - 120px)) translateY(-2vh) rotateY(-60deg)}.project-card.from-right.delay-1{transform:perspective(60vw) translate(calc(50vw - 40px)) translateY(2vh) rotateY(-65deg)}.project-row:not(.visible):has(.project-card:hover) .project-card.from-left.delay-1{transform:perspective(60vw) translate(calc(-50vw + 64px)) translateY(2vh) rotateY(65deg)}.project-row:not(.visible):has(.project-card:hover) .project-card.from-left.delay-2{transform:perspective(60vw) translate(calc(-50vw + 144px)) translateY(-2vh) rotateY(60deg)}.project-row:not(.visible):has(.project-card:hover) .project-card.from-right.delay-2{transform:perspective(60vw) translate(calc(50vw - 144px)) translateY(-2vh) rotateY(-60deg)}.project-row:not(.visible):has(.project-card:hover) .project-card.from-right.delay-1{transform:perspective(60vw) translate(calc(50vw - 64px)) translateY(2vh) rotateY(-65deg)}.project-row.visible .project-card{opacity:1;transform:none;pointer-events:auto;cursor:pointer;touch-action:manipulation}.project-card.delay-1{transition-delay:0s}.project-card.delay-2{transition-delay:.12s}.project-nav-bar{position:fixed;top:24px;right:24px;display:flex;align-items:center;gap:16px;z-index:20;pointer-events:auto}.project-close-fixed{background:none;border:none;color:#c8f500;display:flex;cursor:pointer;padding:0;transition:color .15s}.project-close-fixed:hover{color:#d8ff10}.project-nav-btn{background:#ffffff14;border:1px solid rgba(255,255,255,.12);border-radius:50%;width:36px;height:36px;display:flex;align-items:center;justify-content:center;color:#ffffffb3;cursor:pointer;transition:background .15s,color .15s}.project-nav-btn:hover{background:#c8f5001f;color:#c8f500;border-color:#c8f5004d}@media (min-width: 1550px){.project-nav-btn{display:none}}.project-row.visible{overflow-x:scroll;pointer-events:auto;align-items:center;justify-content:safe center;padding:32px;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none}.project-row.visible::-webkit-scrollbar{display:none}.project-row.visible .project-card{scroll-snap-align:center}.badge-bg-logo{position:absolute;top:0;right:0;bottom:0;left:0;background:url(/logo_white.svg) calc(50% + 64px) center / 200% auto no-repeat;opacity:.015;pointer-events:none;border-radius:14px;z-index:-1}.baked-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:#0000;border-radius:14px;pointer-events:none;z-index:100;transition:background .9s ease}.badge-wrapper.baked-in .baked-overlay{background:#00000026}.badge-wrapper.baked-in .badge-hole{display:none}.badge-wrapper.baked-in .badge-card{transform:scale(.96);transform-origin:center;transition:transform .9s cubic-bezier(.4,0,.2,1),box-shadow .9s ease;box-shadow:0 30px 90px #0000,0 8px 24px #0000,0 -1px #fff0,-1px 0 #fff0,0 1px #fff0,1px 0 #fff0,inset 0 1px #fff0,inset 0 -1px #0000}.badge-hole{display:none}.badge-header-group{display:flex;justify-content:space-between;align-items:center;padding:0;position:relative;z-index:1}.badge-bottom-group{flex:1;display:flex;flex-direction:column;justify-content:flex-end;position:relative;z-index:1}.badge-label{font-size:12px;font-weight:500;letter-spacing:.22em;color:#c8f500;text-transform:uppercase}.badge-no{font-size:12px;letter-spacing:.18em;color:#999;text-transform:uppercase}.badge-sep{height:4px;background:#c8f500;margin:0;flex-shrink:0}.badge-main-info{padding:0;margin-top:0;margin-bottom:8px;text-align:left}.badge-name{font-size:28px;font-weight:500;letter-spacing:.04em;line-height:1;color:#fff;margin-bottom:0;display:flex;align-items:baseline;justify-content:flex-start;gap:6px;width:100%}.badge-name-logo{width:20px;height:20px;object-fit:contain;flex-shrink:0}.badge-info-group{display:flex;flex-direction:column;gap:12px;margin-top:12px}.badge-role-group{display:flex;justify-content:space-between;align-items:flex-start}.badge-role{font-size:14px;font-weight:500;letter-spacing:.18em;color:#fff}.badge-meta-row{display:flex;justify-content:space-between;align-items:flex-start}.badge-meta-item{display:flex;flex-direction:column;gap:6px}.meta-label{font-size:12px;letter-spacing:.2em;color:#999;text-transform:uppercase}.meta-value{font-size:14px;font-weight:500;color:#fff;letter-spacing:.06em}.about-me-trigger{display:none}.projects-trigger{display:flex;align-items:center;gap:8px;position:fixed;bottom:24px;left:24px;background:#1c1c1ed9;border:1px solid rgba(255,255,255,.07);border-radius:8px;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);padding:8px 12px;height:36px;font-family:Retina,sans-serif;font-size:12px;font-weight:500;color:#ffffffd9;cursor:pointer;z-index:20;white-space:nowrap;-webkit-tap-highlight-color:transparent;transition:background .15s,color .15s}.projects-trigger:hover{background:#28282af2;color:#c8f500}@media (max-width: 1023px){.about-me-trigger{display:flex;align-items:center;justify-content:center;position:fixed;bottom:24px;left:24px;width:36px;height:36px;padding:0;background:#1c1c1ed9;border:1px solid rgba(255,255,255,.07);border-radius:8px;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);color:#ffffffd9;cursor:pointer;z-index:20;-webkit-tap-highlight-color:transparent;transition:background .15s,color .15s}.about-me-trigger .trigger-label{display:none}.about-me-trigger:hover{background:#28282af2;color:#c8f500}.projects-trigger{left:68px;width:36px;height:36px;padding:0;justify-content:center}.projects-trigger .trigger-label{display:none}}.badge-card-back{background:#1a1a1a;padding:0;position:relative;overflow:hidden}.badge-bio-panel{position:fixed;left:calc(50% + 204px);top:50%;transform:translateY(-50%);width:260px;display:flex;flex-direction:column;gap:0;opacity:0;transform:translateY(-50%) translate(-12px);transition:opacity .4s ease,transform .4s ease;pointer-events:none;z-index:300}.badge-bio-panel.visible{opacity:1;transform:translateY(-50%) translate(0);pointer-events:auto}@media (max-width: 1023px){.badge-bio-panel{position:fixed;right:0;bottom:0;left:0;top:0;width:100%;height:100%;transform:scale(.98);transform-origin:center center;background:#0c0c0ff7;backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border-radius:0;padding:80px 32px 40px;max-width:100%;box-shadow:none;overflow-y:auto;z-index:300;display:flex;flex-direction:column;align-items:center;justify-content:center}.badge-bio-content{width:100%;max-width:360px;display:flex;flex-direction:column;gap:12px}.badge-bio-panel.visible{transform:scale(1);transform-origin:center center}}.badge-bio-close{display:none;position:fixed;top:20px;right:20px;align-items:center;justify-content:center;background:none;border:none;padding:0;color:#c8f500;cursor:pointer;z-index:301;-webkit-tap-highlight-color:transparent;transition:color .15s}.badge-bio-close:hover{color:#d8ff10}@media (max-width: 1023px){.badge-bio-close{display:flex}}.badge-bio-arrow{width:48px;height:auto;transform:scaleY(-1);flex-shrink:0}.badge-bio-content{display:flex;flex-direction:column;gap:12px;width:100%}.badge-bio-title{font-family:Inter,sans-serif;font-size:13px;font-weight:700;color:#c8f500;margin:0;line-height:1.3}.badge-bio-body{font-family:Inter,sans-serif;font-size:12px;font-weight:400;color:#ffffffb3;line-height:1.6;margin:0}.badge-bio-superpowers{display:flex;flex-direction:column;gap:16px;margin-top:16px}.badge-avatar-wrap{position:relative;width:100%;height:100%;border-radius:14px;overflow:hidden;-webkit-touch-callout:none;user-select:none;-webkit-user-select:none;cursor:default}.badge-avatar{width:100%;height:100%;object-fit:cover;display:block;-webkit-touch-callout:none;pointer-events:none}.badge-overlay-tags{display:flex;flex-wrap:wrap;gap:6px;width:100%}.badge-overlay-tag{font-family:Inter,sans-serif;font-size:11px;font-weight:600;color:#fff;background:transparent;border:1px solid #ffffff;border-radius:4px;padding:3px 10px;white-space:nowrap}.bg-tagline{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:flex-start;font-family:Funnel Sans,sans-serif;font-size:max(48px,22vh);font-weight:800;line-height:1;color:#ffffff0a;pointer-events:none;z-index:0;user-select:none;-webkit-user-select:none;-webkit-tap-highlight-color:transparent;white-space:nowrap}.bg-tagline-good{position:relative;display:block}.bg-logo-wrap{position:absolute;bottom:calc(100% - .15em - 2px);left:2.224em;width:.14em;pointer-events:auto;cursor:default;user-select:none;-webkit-user-select:none;-webkit-tap-highlight-color:transparent}.bg-logo-mask{width:100%;aspect-ratio:1;background-color:#c8f5001f;-webkit-mask-image:url(/logo_white.svg);mask-image:url(/logo_white.svg);-webkit-mask-size:contain;mask-size:contain;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-position:center;mask-position:center;transition:background-color .3s,filter .3s}.bg-logo-wrap.hovered .bg-logo-mask{background-color:#c8f5002e;filter:drop-shadow(0 0 6px #c8f50066)}.bg-tagline-indent{padding-left:.3em}.bg-tagline-dot{color:#c8f5001f}.contact-dock{position:fixed;bottom:24px;right:24px;display:flex;flex-direction:row;gap:8px;z-index:1}.contact-row{display:flex;align-items:center;gap:8px;padding:8px 12px;background:#1c1c1ed9;border:1px solid rgba(255,255,255,.07);border-radius:8px;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);text-decoration:none;cursor:pointer;transition:background .15s;white-space:nowrap}.contact-row:hover{background:#28282af2}.contact-row:hover .contact-label,.contact-row:hover .contact-icon{color:#c8f500}.contact-label{font-family:Retina,-apple-system,sans-serif;font-size:12px;font-weight:400;color:#ffffffd9;letter-spacing:.02em}.contact-icon{color:#ffffffd9}.reset-confirm-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;z-index:200;animation:fadeIn .2s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.reset-confirm{background:#161618fa;border:1px solid rgba(255,255,255,.1);border-radius:8px;padding:20px;max-width:340px;width:90%;box-shadow:0 24px 64px #000c;animation:slideUp .25s cubic-bezier(.34,1.4,.64,1)}@keyframes slideUp{0%{transform:translateY(16px);opacity:0}to{transform:translateY(0);opacity:1}}.reset-confirm-title{font-family:Retina,-apple-system,sans-serif;font-size:18px;font-weight:500;color:#fff;margin:0 0 8px;letter-spacing:.02em}.reset-confirm-msg{font-family:Retina,-apple-system,sans-serif;font-size:14px;font-weight:400;color:#ffffffbf;line-height:1.5;margin:0 0 24px;letter-spacing:.02em}.reset-confirm-actions{display:flex;gap:10px}.reset-confirm-btn{flex:1;height:46px;border-radius:4px;border:none;font-family:Retina,-apple-system,sans-serif;font-size:14px;font-weight:600;letter-spacing:.06em;cursor:pointer;transition:background .15s,color .15s}.reset-confirm-sure{background:#c8f500;color:#111}.reset-confirm-sure:hover{background:#d8ff10}.reset-confirm-cancel{background:#ffffff14;color:#fff9}.reset-confirm-cancel:hover{background:#ffffff24;color:#ffffffe6}.oops-toast-wrap{position:fixed;top:calc(50% - 162px);left:calc(50% + 193px);transform:translate(20px);display:flex;flex-direction:column;align-items:flex-start;gap:8px;pointer-events:none;opacity:0;transition:opacity .3s ease,transform .3s cubic-bezier(.34,1.4,.64,1);z-index:5}.oops-toast-wrap.visible{opacity:1;transform:translate(0)}.oops-toast{background:#141414f2;border:1px solid rgba(255,255,255,.12);border-radius:8px;padding:8px 12px;font-family:Retina,-apple-system,sans-serif;font-size:12px;font-weight:500;letter-spacing:.04em;color:#fffc;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);box-shadow:0 16px 48px #000000b3}.oops-toast .oops-highlight{color:#c8f500;text-transform:uppercase}.oops-arrow{width:80px;height:auto;flex-shrink:0;animation:arrowBounce 1s ease-in-out infinite}@keyframes arrowBounce{0%,to{transform:translate(0)}50%{transform:translate(-6px)}}@media (max-width: 1366px) and (pointer: coarse){.project-row.visible{pointer-events:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;justify-content:flex-start;padding:0 24px}.project-card{scroll-snap-align:center;flex-shrink:0}.project-nav-btn{display:none}}@media (max-width: 768px){.contact-label{display:none}.badge-scene{transform:scale(.9);transform-origin:top center}}@media (max-width: 1023px){.oops-toast-wrap{top:calc(50% - 196px);left:calc(50% + 28px);transform:translate(-50%,-20px);align-items:center}.oops-toast-wrap.visible{transform:translate(-50%)}.oops-toast{width:200px;line-height:1.5}}.project-expanded-wrap{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;background:#000000a6;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);animation:fadeIn .4s cubic-bezier(.4,0,.2,1)}.project-expanded-card{position:fixed;top:32px;right:32px;bottom:32px;left:32px;background:#0c0c0ffa;border-radius:14px;border:1px solid rgba(255,255,255,.1);box-shadow:0 40px 120px #000000f2;overflow:hidden;transform-origin:top left;animation:expandCard .9s linear}@keyframes expandCard{0%{transform:translate(var(--src-dx),var(--src-dy)) scale(var(--src-sx),var(--src-sy));opacity:.9;animation-timing-function:cubic-bezier(.4,0,.6,1)}42%{transform:translate(0) scale(var(--src-sx),var(--src-sy));opacity:1;animation-timing-function:cubic-bezier(.2,0,0,1)}to{transform:translate(0) scale(1);opacity:1}}.project-expanded-wrap.closing{animation:fadeOut .68s ease forwards}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}.project-expanded-card.closing{animation:collapseCard .68s linear forwards}.project-expanded-card.closing .project-expanded-scroll,.project-expanded-card.closing .project-expanded-close{opacity:0!important;animation:none}@keyframes collapseCard{0%{transform:translate(0) scale(1);opacity:1;animation-timing-function:cubic-bezier(.4,0,.2,1)}55%{transform:translate(0) scale(var(--src-sx),var(--src-sy));opacity:1;animation-timing-function:cubic-bezier(.4,0,.6,1)}to{transform:translate(var(--src-dx),var(--src-dy)) scale(var(--src-sx),var(--src-sy));opacity:.5}}.project-expanded-close{position:absolute;top:20px;right:20px;background:none;border:none;color:var(--card-color, #c8f500);cursor:pointer;padding:0;z-index:10;display:flex;transition:color .15s;opacity:0;animation:fadeInContent .35s ease .82s forwards}.project-expanded-close:hover{filter:brightness(1.15)}.project-expanded-scroll{height:100%;overflow-y:auto;padding:0;scrollbar-width:none;box-sizing:border-box;opacity:0;animation:fadeInContent .35s ease .82s forwards;overscroll-behavior-y:none}.exp-nav{position:sticky;top:0;z-index:5;height:76px;background:#0c0c0fd1;backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);box-shadow:0 4px 24px #0009,0 -1px #ffffff38,inset 0 1px #ffffff1f}.exp-nav:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-image:repeating-linear-gradient(-52deg,transparent 0px,transparent 3px,rgba(255,255,255,.022) 3px,rgba(255,255,255,.022) 4px);pointer-events:none}.exp-nav:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)' opacity='1'/%3E%3C/svg%3E");background-size:180px 180px;opacity:.07;mix-blend-mode:overlay;pointer-events:none}.exp-nav-inner{max-width:900px;margin:0 auto;height:100%;display:flex;align-items:center;gap:8px;padding:0 48px;position:relative;z-index:1}.exp-nav-item{height:36px;padding:0 14px;border-radius:8px;border:1px solid transparent;background:transparent;font-family:Retina,sans-serif;font-size:12px;font-weight:400;color:#ffffff80;cursor:pointer;transition:background .15s,color .15s,border-color .15s;white-space:nowrap}.exp-nav-item:hover{color:#ffffffd9}.exp-nav-item.active{background:transparent;border-color:var(--card-color, #ff8c00);color:var(--card-color, #ff8c00)}.exp-content{max-width:900px;margin:0 auto;padding:48px 48px 64px}@keyframes fadeInContent{to{opacity:1}}.project-expanded-scroll::-webkit-scrollbar{display:none}.exp-header{margin-bottom:36px}.exp-number{display:block;font-family:Retina,sans-serif;font-size:14px;font-weight:500;color:var(--card-color, #c8f500);letter-spacing:.1em;text-transform:uppercase;margin-bottom:8px}.exp-title{font-family:Retina Narrow,sans-serif;font-size:48px;font-weight:500;color:#fff;letter-spacing:-.02em;line-height:1.1;margin:0 0 4px}.exp-brief{font-family:Retina,sans-serif;font-size:16px;font-weight:300;color:#fff;line-height:1.5;margin:0}.exp-meta-row{display:flex;justify-content:space-between;flex-wrap:wrap;gap:16px}.exp-meta-item{display:flex;flex-direction:column;gap:12px}.exp-meta-label{display:flex;align-items:center;gap:6px;font-family:Retina Narrow,sans-serif;font-size:16px;font-weight:500;color:#fff6;letter-spacing:.16em;text-transform:uppercase}.exp-meta-label svg{position:relative;top:-1px}.exp-meta-value{font-family:Retina,sans-serif;font-size:16px;font-weight:300;color:#fff}.exp-metrics{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap}.exp-metric{display:flex;flex-direction:column;align-items:center;gap:16px;background:#ffffff0a;border:1px solid rgba(255,255,255,.08);border-radius:10px;padding:36px 20px;flex:1}.exp-metric-value{font-family:Retina Narrow,sans-serif;font-size:64px;font-weight:700;color:var(--card-color, #c8f500);line-height:1}.exp-metric-label{font-family:Retina Narrow,sans-serif;font-size:16px;font-weight:500;color:#fff6;letter-spacing:.16em;text-transform:uppercase}.exp-section{margin-bottom:36px}.exp-section-title{font-family:Retina Narrow,sans-serif;font-size:10px;font-weight:500;color:#fff6;letter-spacing:.18em;text-transform:uppercase;margin:0 0 12px}.exp-section-body{font-family:Retina,sans-serif;font-size:16px;font-weight:300;color:#fff;line-height:1.65;margin:0}.exp-callout{font-family:Retina,sans-serif;font-size:17px;font-weight:500;color:#ffffffe6;line-height:1.5;margin:0;padding:16px 20px;border-left:3px solid var(--card-color, #c8f500);background:#ffffff0a;border-radius:0 8px 8px 0}.exp-list{font-family:Retina,sans-serif;font-size:14px;font-weight:400;color:#ffffffbf;line-height:1.65;margin:0;padding-left:20px;display:flex;flex-direction:column;gap:8px}.exp-list-spaced{gap:16px}.exp-divider{height:1px;background:#ffffff14;margin:8px 0 32px}.exp-tags{display:flex;flex-wrap:wrap;gap:8px}.exp-tag{font-family:Retina Narrow,sans-serif;font-size:11px;font-weight:500;color:#ffffffb3;border:1px solid rgba(255,255,255,.2);border-radius:4px;padding:4px 10px}.exp-section-heading{display:flex;align-items:center;gap:6px;font-family:Retina Narrow,sans-serif;font-size:16px;font-weight:500;color:#fff6;letter-spacing:.16em;text-transform:uppercase;margin-bottom:8px}.exp-section-heading+.exp-metrics{margin-top:16px}.exp-section-heading svg{opacity:.9;position:relative;top:-1px}.exp-section-label{font-family:Retina Narrow,sans-serif;font-size:11px;font-weight:500;color:#ffffff59;letter-spacing:.12em;text-transform:uppercase;margin-bottom:24px}.exp-two-col{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-bottom:8px}.exp-img-block{margin-bottom:36px}.exp-img{width:100%;border-radius:10px;display:block;background:#ffffff0a}.exp-img-caption{font-family:Retina,sans-serif;font-size:11px;font-weight:400;color:#ffffff59;margin:8px 0 0}.exp-principles{display:flex;flex-direction:column;gap:16px}.exp-principle{display:flex;align-items:center;gap:16px;background:#ffffff0a;border:1px solid rgba(255,255,255,.07);border-radius:10px;padding:14px 16px}.exp-principle-icon{width:40px;height:40px;border-radius:8px;flex-shrink:0;object-fit:contain}.exp-principle-title{font-family:Retina Narrow,sans-serif;font-size:14px;font-weight:600;color:#ffffffe6;margin:0 0 2px}.exp-principle-body{font-family:Retina,sans-serif;font-size:12px;color:#ffffff73;margin:0}.ba-slider{position:relative;width:100%;aspect-ratio:2619 / 1967;border-radius:10px;overflow:hidden;cursor:ew-resize;-webkit-user-select:none;user-select:none;touch-action:none}.ba-pane{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden}.ba-img{width:120%;height:120%;position:absolute;top:-10%;left:-10%;object-fit:cover;display:block}.ba-handle{position:absolute;top:0;bottom:0;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;pointer-events:none}.ba-line{width:2px;flex:1;background:#222}.ba-pill{position:absolute;top:50%;transform:translateY(-50%);padding:6px;border-radius:6px;background:#222;display:flex;align-items:center;justify-content:center;line-height:0;box-shadow:0 2px 12px #0006}.ba-pill svg path{stroke:#fff}.ba-label{position:absolute;bottom:12px;font-family:Retina Narrow,sans-serif;font-size:11px;font-weight:500;letter-spacing:.1em;text-transform:uppercase;color:#ffffffb3;background:#0006;padding:4px 8px;border-radius:4px;pointer-events:none;white-space:nowrap}.ba-label-before{left:12px}.ba-label-after{right:12px}.exp-chapter{scroll-margin-top:76px}.exp-chapter-label{display:block;font-family:Retina Narrow,sans-serif;font-size:16px;font-weight:500;color:#fff6;letter-spacing:.16em;text-transform:uppercase;margin-bottom:12px}.exp-chapter+.exp-chapter{margin-top:64px}.exp-highlight-images{display:flex;flex-direction:column;gap:36px}.exp-highlight-item{position:relative}.exp-highlight-caption{position:absolute;top:12px;right:12px;font-family:Retina,sans-serif;font-size:12px;font-weight:400;color:#ffffffb3;background:#0006;padding:4px 8px;border-radius:4px;pointer-events:none}.exp-highlight-img-wrap{width:100%;overflow:hidden;border-radius:10px}.exp-highlight-img{width:120%;margin-left:-10%;margin-top:-36px;margin-bottom:-36px;display:block}.exp-context-blocks{display:flex;gap:16px;flex-wrap:wrap;margin-top:16px}.exp-context-block{flex:1 1 calc(50% - 8px);min-width:180px;background:#ffffff0a;border:1px solid rgba(255,255,255,.08);border-radius:10px;padding:24px 20px;display:flex;flex-direction:column;gap:12px}.exp-context-block-title{font-family:Retina Narrow,sans-serif;font-size:16px;font-weight:700;color:#fff;line-height:1.2;text-transform:uppercase;letter-spacing:.05em}.exp-context-block-body{font-family:Retina,sans-serif;font-size:14px;font-weight:300;color:#fff9;line-height:1.6;margin:0}.exp-research-list{display:flex;flex-direction:row;flex-wrap:wrap;gap:16px}.exp-research-item{flex:1 1 calc(50% - 8px);min-width:180px;background:#ffffff0a;border:1px solid rgba(255,255,255,.08);border-radius:10px;padding:20px}.exp-research-title{font-family:Retina,sans-serif;font-size:16px;font-weight:500;color:#fff;margin:0 0 4px}.exp-research-body{font-family:Retina,sans-serif;font-size:16px;font-weight:300;color:#fff9;line-height:1.6;margin:0}.exp-role-layout{display:flex;flex-direction:column;gap:36px}.exp-role-left{flex:1;min-width:0}.exp-role-right{flex:1;min-width:0;display:flex;flex-direction:column}.exp-role-item{display:flex;align-items:center;gap:16px;padding:10px 0;border-bottom:1px solid rgba(255,255,255,.08)}.exp-role-item:last-child{border-bottom:none;padding-bottom:0}.exp-role-item:first-child{padding-top:0}.exp-role-dot{width:6px;height:6px;border-radius:50%;background:var(--card-color, #ff8c00);flex-shrink:0}.exp-role-item-text{font-family:Retina,sans-serif;font-size:16px;font-weight:300;color:#fffc;line-height:1.6}@media (max-width: 700px){.exp-role-layout{flex-direction:column}}.exp-role-inline{display:flex;flex-direction:column;gap:36px;margin-top:36px}.exp-protected{display:flex;flex-direction:column;border:1px solid rgba(255,255,255,.1);border-radius:10px;overflow:hidden}.exp-protected-label{display:block;padding:20px 20px 16px;font-family:Retina Narrow,sans-serif;font-size:16px;font-weight:500;color:#fff6;letter-spacing:.16em;text-transform:uppercase;border-bottom:1px solid rgba(255,255,255,.1)}.exp-protected-cards{display:flex;flex-direction:row}.exp-protected-card{flex:1;display:flex;flex-direction:column;gap:12px;padding:16px 20px;border-right:1px solid rgba(255,255,255,.1)}.exp-protected-card:last-child{border-right:none}.exp-protected-num{font-family:Retina Narrow,sans-serif;font-size:16px;font-weight:500;color:var(--card-color, #ff8c00);letter-spacing:.05em}.exp-protected-title{font-family:Retina,sans-serif;font-size:32px;font-weight:500;color:#fff;line-height:1.2}.exp-coming-soon{height:100%;display:flex;align-items:center;justify-content:center}.exp-coming-soon-label{font-family:Retina,sans-serif;font-size:14px;color:#ffffff4d}@media (max-width: 768px){.project-expanded-card{top:16px;right:16px;bottom:16px;left:16px}.project-expanded-scroll{padding:0}.exp-nav{height:64px}.exp-nav-inner{padding:0 24px}.exp-content{padding:32px 12px 48px}.exp-title{font-size:32px}.exp-metric-value{font-size:24px}.exp-two-col{grid-template-columns:1fr}}
