body,html{margin:0;padding:0;overflow-x:hidden;width:100%;background-color:#000;overscroll-behavior:none}.portfolio-master-container{width:100%;height:100%;background:#000}.intro-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#000;z-index:9000;display:flex;justify-content:center;align-items:center;flex-direction:column;cursor:pointer;transition:background-color 1.5s ease-in-out,opacity .5s}.intro-overlay.bg-fade-out{background-color:transparent;pointer-events:none}.intro-text{position:absolute;display:flex;flex-direction:column;align-items:center;opacity:0;transform:translateY(20px);transition:all .8s cubic-bezier(.2,.8,.2,1);width:100%;text-align:center;padding:0 1rem;box-sizing:border-box}.intro-text.visible{opacity:1;transform:translateY(0)}.intro-text.hidden{opacity:0;transform:translateY(-20px);transition-duration:.5s}.intro-line{font-family:Inter,sans-serif;font-size:1rem;letter-spacing:.4em;color:#888;margin-bottom:.5rem;text-transform:uppercase}.intro-name{font-family:Playfair Display,serif;font-size:4rem;color:#fff;margin:0;letter-spacing:-.02em;text-align:center}.intro-cta-title{color:#fff;margin:0;letter-spacing:-.02em}.intro-skip{position:absolute;bottom:2rem;font-family:Inter,sans-serif;font-size:.7rem;color:#444;text-transform:uppercase;letter-spacing:.2em;animation:pulse 2s infinite;transition:opacity .5s}.intro-skip.hidden{opacity:0}@keyframes pulse{0%{opacity:.3}50%{opacity:.7}to{opacity:.3}}.portfolio-selector-container{opacity:1;transition:opacity 2s ease}.transition-curtain{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#000;pointer-events:none;z-index:9999;opacity:0;transition:opacity .8s ease-in}.transition-curtain.active{opacity:1}.portfolio-selector-container{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#050505;z-index:5000;display:flex;flex-direction:row;overflow:hidden;font-family:Inter,sans-serif;margin:0;padding:0}.selector-cta{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);text-align:center;pointer-events:none;z-index:4000;transition:opacity .5s ease;mix-blend-mode:exclusion;width:100%}.selector-cta.fade-out{opacity:0!important}.cta-title{font-family:Playfair Display,serif;font-size:4vw;font-style:italic;color:#fff;margin:0;letter-spacing:-.02em;text-transform:uppercase}.cta-subtitle{font-family:Inter,sans-serif;font-size:1rem;color:#ffffffb3;letter-spacing:.2em;margin-top:1rem;text-transform:uppercase}.portfolio-panel{position:relative;flex:1;height:100%;cursor:pointer;overflow:hidden;transition:flex .8s cubic-bezier(.6,.05,.01,1);border-right:1px solid rgba(255,255,255,.1)}.portfolio-panel:last-child{border-right:none}.panel-bg{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;transition:transform .8s ease,filter .5s ease;filter:brightness(.5) grayscale(100%);transform:scale(1.05);z-index:0}.portfolio-panel:hover{flex:2.5;z-index:10}.portfolio-panel:hover .panel-bg{filter:brightness(1) grayscale(0%);transform:scale(1)}.portfolio-selector-container:hover .portfolio-panel:not(:hover) .panel-bg{filter:brightness(.3) grayscale(100%);transition:all .8s ease}.panel-content{position:absolute;top:0;left:0;width:100%;height:100%;z-index:2;display:flex;flex-direction:column;justify-content:flex-end;padding:3rem;box-sizing:border-box;background:linear-gradient(to top,rgba(0,0,0,.9),transparent 50%);opacity:.8;transition:opacity .4s ease}.portfolio-panel:hover .panel-content{opacity:1}.panel-vertical-text{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%) rotate(-90deg);white-space:nowrap;font-family:Inter,sans-serif;font-weight:300;font-size:.9rem;letter-spacing:.4em;color:#ffffffb3;text-transform:uppercase;pointer-events:none;transition:opacity .3s ease;z-index:5}.portfolio-panel:hover .panel-vertical-text{opacity:0}.panel-number,.panel-info{transition:all .5s ease}.panel-number{position:absolute;top:2rem;left:2rem;font-family:Playfair Display,serif;font-size:4rem;font-style:italic;opacity:.2;color:#fff}.portfolio-panel:hover .panel-number{opacity:1;transform:translate(10px)}.panel-info{transform:translateY(20px);opacity:0;max-width:450px}.portfolio-panel:hover .panel-info{transform:translateY(0);opacity:1}.panel-subtitle{display:block;font-size:.75rem;letter-spacing:.25em;color:gold;margin-bottom:.5rem;text-transform:uppercase}.panel-title{font-family:Playfair Display,serif;font-size:3rem;line-height:1;margin:0 0 1rem;color:#fff}.panel-desc{font-size:.9rem;line-height:1.6;color:#fffc;margin-bottom:1.5rem}.panel-btn{padding:.6rem 2rem;border:1px solid white;border-radius:50px;font-size:.75rem;text-transform:uppercase;letter-spacing:.2em;color:#fff;background:transparent;transition:background .3s,color .3s}.panel-btn:hover{background:#fff;color:#000}.panel-zooming{flex:100!important;cursor:default;z-index:100!important}.panel-zooming .panel-bg{filter:brightness(1.2) grayscale(0%)!important;transform:scale(1.3)!important;transition:transform 1.5s cubic-bezier(.2,0,.2,1)!important}.panel-zooming .panel-content,.panel-zooming .panel-vertical-text{opacity:0!important;transition:opacity .3s ease!important}.panel-exiting{flex:.0001!important;opacity:0;transition:flex 1s ease,opacity .5s ease}.container-zooming{pointer-events:none}.overlay-ui{position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:6000;padding:2rem;display:flex;flex-direction:column;justify-content:space-between;transition:opacity .5s ease}.overlay-ui.fade-out{opacity:0}.global-header{width:100%;text-align:center}.global-brand{font-family:Playfair Display,serif;font-size:1.5rem;font-weight:700;color:#fff;mix-blend-mode:exclusion}.global-footer{width:100%;display:flex;justify-content:space-between;color:#fff;opacity:.7;font-size:.75rem;mix-blend-mode:exclusion}@media(max-width:768px){.portfolio-selector-container{flex-direction:column}.portfolio-panel{width:100%;border-right:none;border-bottom:1px solid rgba(255,255,255,.1);flex:1!important}.panel-bg{filter:brightness(.6) grayscale(20%)}.portfolio-panel:active .panel-bg{filter:brightness(1) grayscale(0%)}.selector-cta{width:85%}.cta-title{font-size:2rem;line-height:1.2}.cta-subtitle{font-size:.8rem}.panel-vertical-text{opacity:0!important}.panel-content{padding:1.5rem;justify-content:center;align-items:center;text-align:center;opacity:1;background:#0000004d}.panel-info{opacity:1;transform:translateY(0);margin:0}.panel-subtitle{font-size:.65rem;margin-bottom:.25rem}.panel-title{font-size:1.8rem;margin-bottom:.5rem}.panel-desc{display:none}.panel-btn{padding:.5rem 1.2rem;font-size:.7rem;margin-top:.5rem;background:#ffffff1a}.panel-number{font-size:2.5rem;top:1rem;left:1rem;opacity:.5}.intro-name{font-size:2rem}.intro-line{font-size:.8rem}.intro-cta-title{font-size:1.8rem!important}.panel-zooming .panel-bg{transform:scale(1.1)!important}}.cyber-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;pointer-events:none;z-index:9999;overflow:hidden}.cyber-scanlines{position:absolute;inset:0;background:linear-gradient(to bottom,#12101000 50%,#00000017 50%);background-size:100% 3px;z-index:1;pointer-events:none;animation:scanline-scroll 10s linear infinite}@keyframes scanline-scroll{0%{background-position:0 0}to{background-position:0 100%}}.cyber-vignette{position:absolute;inset:0;background:radial-gradient(circle,#0000 60%,#0006);z-index:2}.cyber-noise{position:absolute;inset:0;opacity:.03;z-index:3;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noiseFilter'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noiseFilter)' opactiy='0.5'/%3E%3C/svg%3E");animation:noise-shift .5s infinite linear}@keyframes noise-shift{0%{transform:translate(0)}10%{transform:translate(-5px,-5px)}20%{transform:translate(-10px,5px)}30%{transform:translate(5px,-10px)}40%{transform:translate(-5px,15px)}50%{transform:translate(-10px,5px)}60%{transform:translate(15px)}70%{transform:translateY(10px)}80%{transform:translate(-15px)}90%{transform:translate(10px,5px)}to{transform:translate(5px)}}.cyber-glitch-hover{position:relative;overflow:visible;transition:all .2s}.cyber-glitch-hover:hover{animation:glitch-skew .3s cubic-bezier(.25,.46,.45,.94) both infinite;color:#ff003c;background:#ff003c1a;box-shadow:0 0 10px #ff003c80;border-color:#ff003c!important}.cyber-glitch-hover:hover:before,.cyber-glitch-hover:hover:after{content:attr(data-text);position:absolute;top:0;left:0;width:100%;height:100%;background:#000;opacity:.7}.cyber-glitch-hover:hover:before{left:2px;text-shadow:-2px 0 #cc00ff;clip:rect(44px,450px,56px,0);animation:glitch-anim-1 2s infinite linear alternate-reverse}.cyber-glitch-hover:hover:after{left:-2px;text-shadow:-2px 0 #00ffff;clip:rect(44px,450px,56px,0);animation:glitch-anim-2 2s infinite linear alternate-reverse}
