:root{--bg-color:#000;--text-color:#fff;--accent-color:#fff;--zoom-scale:1;--zoom-x:0px;--zoom-y:0px;--tilt-x:0deg;--tilt-y:0deg}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg-color);color:var(--text-color);min-height:100vh;font-family:Space Mono,monospace}.home-shell{cursor:crosshair;width:100vw;height:100vh;overflow:hidden}@keyframes bgVideoFadeIn{0%{opacity:0}to{opacity:1}}.bg-video{object-fit:cover;z-index:-1;pointer-events:none;opacity:0;width:100vw;height:100vh;animation:2s forwards bgVideoFadeIn;position:fixed;inset:0}.bg-video-scrim{z-index:0;pointer-events:none;background:radial-gradient(at 100% 100%,#000 0% 30%,#000000d9 55%,#0000 85%);width:460px;height:260px;position:fixed;bottom:0;right:0}.side-nav{z-index:100;flex-direction:column;gap:30px;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.left-nav{align-items:flex-start;gap:92px;left:44px}.right-nav{align-items:center;gap:26px;right:44px}.hxh-link{z-index:100;line-height:0;display:block;position:absolute;bottom:40px;left:0}.hxh-link img{width:130px;height:auto;transition:transform .25s;display:block}.hxh-link:hover img{transform:translate(6px)}.nav-link{color:#fff;letter-spacing:.24em;text-transform:uppercase;opacity:.75;text-shadow:0 0 12px #000000d9;align-items:center;gap:18px;font-family:Syncopate,sans-serif;font-size:1.5rem;text-decoration:none;transition:opacity .3s,transform .2s,letter-spacing .3s;display:flex}.nav-link:hover{opacity:1;letter-spacing:.3em;transform:translate(6px)}.left-nav:not(.intro-visible) .nav-link{opacity:0;pointer-events:none;transform:translate(-24px)}.left-nav.nav-entering .nav-link{transition:opacity .7s cubic-bezier(.22,1,.36,1),transform .7s cubic-bezier(.22,1,.36,1)}.left-nav.nav-entering .nav-link:first-child{transition-delay:0s}.left-nav.nav-entering .nav-link:nth-child(2){transition-delay:.433s}.left-nav.nav-entering .nav-link:nth-child(3){transition-delay:.867s}.left-nav.nav-entering .nav-link:nth-child(4){transition-delay:1.3s}.nav-icon{filter:drop-shadow(0 0 6px #000c);flex-shrink:0;width:30px;height:30px}.social-link{color:#fff;opacity:.75;transform-origin:50%;will-change:transform;transition:opacity .3s,transform .18s cubic-bezier(.22,1,.36,1);display:block}.social-link:hover{opacity:1}.right-nav:not(.intro-visible) .social-link{opacity:0;pointer-events:none;transform:translate(24px)}.right-nav.social-entering .social-link{transition:opacity .3s cubic-bezier(.22,1,.36,1),transform .3s cubic-bezier(.22,1,.36,1)}.right-nav.social-entering .social-link:first-child{transition-delay:0s}.right-nav.social-entering .social-link:nth-child(2){transition-delay:.3s}.right-nav.social-entering .social-link:nth-child(3){transition-delay:.6s}.right-nav.social-entering .social-link:nth-child(4){transition-delay:.9s}.right-nav.social-entering .social-link:nth-child(5){transition-delay:1.2s}.right-nav.social-entering .social-link:nth-child(6){transition-delay:1.5s}.right-nav.social-entering .social-link:nth-child(7){transition-delay:1.8s}.right-nav.social-entering .social-link:nth-child(8){transition-delay:2.1s}.social-icon{filter:drop-shadow(0 0 10px #000000b3);width:32px;height:32px;display:block}.background-scene{width:100%;height:100%;transform-style:preserve-3d;transform:translate(var(--parallax-x), var(--parallax-y)) rotateX(var(--tilt-y)) rotateY(var(--tilt-x));justify-content:center;align-items:center;transition:transform .1s ease-out;display:flex;position:absolute}#zoom-wrapper{cursor:crosshair;justify-content:center;align-items:center;width:100%;height:100vh;display:flex;position:relative}.hero{perspective:2000px;width:100%;height:100%;transform-style:preserve-3d;justify-content:center;align-items:center;display:flex;position:relative}.center-content{z-index:50;text-align:center;pointer-events:none;transform-style:preserve-3d;transform:translate(var(--main-parallax-x,0px), var(--main-parallax-y,0px)) translateZ(500px) rotateX(var(--main-tilt-y,0deg)) rotateY(var(--main-tilt-x,0deg)) scale(.75);will-change:transform;transition:transform .1s ease-out;position:absolute}.main-name{text-transform:uppercase;letter-spacing:.3em;text-shadow:0 0 20px #000,0 0 10px #fff3;margin-bottom:.5rem;font-family:Syncopate,sans-serif;font-size:clamp(1.7rem,4.6vw,3.2rem);font-weight:700}.sub-name{text-transform:uppercase;letter-spacing:.8em;opacity:.7;text-shadow:0 0 10px #000c;font-size:1rem;font-weight:400}@media screen and (max-width:1366px),(max-height:768px){.left-nav,.right-nav{left:28px}.right-nav{left:auto;right:28px}.left-nav{gap:54px}.nav-link{gap:12px;font-size:.95rem}.nav-icon{width:22px;height:22px}.social-icon{width:24px;height:24px}.main-name{font-size:clamp(1.5rem,5vw,3rem)}.sub-name{letter-spacing:.5em;font-size:.8rem}}@media screen and (max-width:768px){#zoom-wrapper{cursor:default;width:100%}.side-nav{-webkit-backdrop-filter:blur(12px);z-index:200;background:#000000eb;border-top:1px solid #ffffff12;flex-direction:row;justify-content:center;align-items:center;gap:28px;width:100%;padding:16px 12px;position:fixed;inset:auto 0 0;transform:none}.right-nav{flex-direction:row;gap:20px;bottom:0}.left-nav{-webkit-backdrop-filter:none;background:0 0;border-top:none;flex-direction:row;justify-content:center;align-items:flex-start;gap:22px;padding:0 12px;top:58%;bottom:auto}.nav-link{flex-direction:column;align-items:center;gap:6px}.nav-link span{letter-spacing:.05em;white-space:nowrap;font-size:.55rem;display:block}.nav-icon{width:22px;height:22px}.center-content{text-align:center;width:92%;position:absolute;top:42%;left:50%;translate:-50% -50%;transform:none!important}.main-name{letter-spacing:.15em;font-size:clamp(2.5rem,10vw,4rem)}.sub-name{letter-spacing:.4em;opacity:.8;font-size:clamp(.65rem,2.5vw,.95rem)}}@media screen and (max-width:480px){.main-name{letter-spacing:.1em;font-size:clamp(2rem,11vw,3rem)}.sub-name{letter-spacing:.22em;font-size:clamp(.5rem,3vw,.7rem)}}@media (hover:none) and (pointer:coarse) and (min-width:769px){.center-content,.background-scene{will-change:auto;transition:none}.center-content{transform:translateZ(150px)scale(.72)}}.portal-label{letter-spacing:.15em;text-transform:uppercase;opacity:.6;font-size:.75rem}.portal-input{color:#fff;background:#ffffff0d;border:1px solid #fff3;outline:none;padding:12px 14px;font-family:Space Mono,monospace;font-size:1rem;transition:border-color .2s}.portal-input:focus{border-color:#fff9}.portal-error{color:#ff8080;font-size:.8rem}.portal-submit{color:#000;letter-spacing:.2em;text-transform:uppercase;cursor:pointer;background:#fff;border:none;margin-top:14px;padding:13px 0;font-family:Syncopate,sans-serif;font-size:.85rem;font-weight:700;transition:opacity .2s}.portal-submit:hover{opacity:.85}.portal-section{margin-top:48px}.portal-section-title{letter-spacing:.15em;text-transform:uppercase;opacity:.65;border-bottom:1px solid #ffffff1f;justify-content:space-between;align-items:baseline;margin-bottom:24px;padding-bottom:14px;font-family:Syncopate,sans-serif;font-size:.8rem;display:flex}.portal-textarea{resize:vertical;font-family:Space Mono,monospace}.section-eyebrow{letter-spacing:.25em;text-transform:uppercase;opacity:.55;margin-bottom:12px;font-family:Syncopate,sans-serif;font-size:.72rem;display:block}.section-title{text-transform:uppercase;letter-spacing:.06em;font-family:Syncopate,sans-serif;font-size:clamp(1.6rem,4vw,2.4rem);font-weight:700}.section-link{color:#fff;letter-spacing:.15em;text-transform:uppercase;opacity:.7;font-family:Syncopate,sans-serif;font-size:.75rem;text-decoration:none;transition:opacity .2s;display:inline-block}.section-link:hover{opacity:1}.home-about-text{opacity:.8;margin:26px 0 32px;font-size:1rem;line-height:1.85}.pv-header{flex-direction:column;gap:18px;display:flex}.pv-title{text-transform:uppercase;letter-spacing:.24em;font-family:Syncopate,sans-serif;font-size:clamp(1.8rem,4.6vw,3rem);font-weight:700;line-height:1.1}.pv-lead{opacity:.6;max-width:52ch;font-size:.9rem;line-height:1.75}.pv-filters{border-bottom:1px solid #ffffff1f;flex-wrap:wrap;gap:8px 28px;margin-top:44px;padding-bottom:20px;display:flex}.pv-filter{color:#fff;letter-spacing:.18em;text-transform:uppercase;cursor:pointer;opacity:.45;background:0 0;border:0;padding:6px 0;font-family:Syncopate,sans-serif;font-size:.66rem;transition:opacity .2s;position:relative}.pv-filter:after{content:"";transform-origin:0;background:#fff;height:1px;transition:transform .3s cubic-bezier(.22,1,.36,1);position:absolute;bottom:0;left:0;right:0;transform:scaleX(0)}.pv-filter:hover{opacity:.8}.pv-filter[aria-pressed=true]{opacity:1}.pv-filter[aria-pressed=true]:after{transform:scaleX(1)}.pv-filter:focus-visible,.pv-card:focus-visible{outline-offset:6px;outline:1px solid #fff}.pv-filter-count{letter-spacing:0;opacity:.6;margin-left:4px;font-family:Space Mono,monospace}.pv-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:64px 40px;margin-top:48px;padding:0;list-style:none;display:grid}.pv-item{animation:.45s cubic-bezier(.22,1,.36,1) both pv-in}.pv-item:nth-child(2){animation-delay:60ms}.pv-item:nth-child(3){animation-delay:.12s}.pv-item:nth-child(4){animation-delay:.18s}.pv-item:nth-child(n+5){animation-delay:.24s}@keyframes pv-in{0%{opacity:0;transform:translateY(10px)}}.pv-card{color:#fff;flex-direction:column;text-decoration:none;display:flex}.pv-media{aspect-ratio:16/10;background:#ffffff08;border:1px solid #ffffff24;justify-content:center;align-items:center;transition:border-color .3s;display:flex;position:relative;overflow:hidden}.pv-media img{object-fit:cover;filter:grayscale()brightness(.8);width:100%;height:100%;transition:filter .5s,transform .6s cubic-bezier(.22,1,.36,1)}a.pv-card:hover .pv-media,a.pv-card:focus-visible .pv-media{border-color:#ffffff80}.pv-card:hover .pv-media img,.pv-card:focus-visible .pv-media img{filter:grayscale(0%)brightness();transform:scale(1.03)}.pv-media-empty{opacity:.25;font-family:Syncopate,sans-serif;font-size:2rem}.pv-meta{justify-content:space-between;align-items:baseline;gap:16px;margin-top:22px;display:flex}.pv-name{text-transform:uppercase;letter-spacing:.14em;font-family:Syncopate,sans-serif;font-size:1.05rem;font-weight:700;line-height:1.3;transition:letter-spacing .3s}a.pv-card:hover .pv-name{letter-spacing:.18em}.pv-status{opacity:.6;white-space:nowrap;flex-shrink:0;align-items:center;gap:8px;font-size:.68rem;display:inline-flex}.pv-status:before{content:"";border:1px solid #fff;border-radius:50%;width:6px;height:6px}.pv-status-live:before{background:#fff}.pv-category{opacity:.45;margin-top:6px;font-size:.72rem}.pv-desc{opacity:.72;max-width:58ch;margin-top:14px;font-size:.8rem;line-height:1.7}.pv-stack{white-space:pre-wrap;opacity:.4;margin-top:14px;font-size:.68rem}@media screen and (max-width:820px){.pv-grid{grid-template-columns:minmax(0,1fr);gap:52px}.pv-filters{gap:2px 20px}}@media (hover:none){.pv-media img{filter:grayscale(0%)brightness(.95)}}@media (prefers-reduced-motion:reduce){.pv-item{animation:none}.pv-media img,.pv-name{transition:none}}.about-stack{flex-wrap:wrap;gap:12px;list-style:none;display:flex}.about-stack-item{letter-spacing:.08em;border:1px solid #ffffff38;padding:8px 16px;font-size:.78rem}.about-now-grid{gap:20px;display:grid}.about-now-card{border-left:2px solid #ffffff40;padding-left:20px}.about-now-title{text-transform:uppercase;letter-spacing:.06em;margin-bottom:8px;font-family:Syncopate,sans-serif;font-size:.95rem}.about-now-desc{opacity:.65;font-size:.85rem;line-height:1.7}.side-nav{transition:opacity .85s cubic-bezier(.22,1,.36,1),transform .85s cubic-bezier(.22,1,.36,1)}.side-nav.hero-exit-left{opacity:0;pointer-events:none;transform:translateY(-50%)translate(-90px)}.side-nav.hero-exit-right{opacity:0;pointer-events:none;transform:translateY(-50%)translate(90px)}.center-content.hero-exit-content{pointer-events:none}.main-name.hero-exit-left,.sub-name.hero-exit-right{opacity:0;transition:opacity .85s cubic-bezier(.22,1,.36,1),transform .85s cubic-bezier(.22,1,.36,1)}.main-name.hero-exit-left{transform:translate(-90px)}.sub-name.hero-exit-right{transform:translate(90px)}.view-panel{z-index:150;opacity:0;pointer-events:none;background:#000c;flex-direction:column;transition:opacity .9s cubic-bezier(.22,1,.36,1) .25s,transform .9s cubic-bezier(.22,1,.36,1) .25s;display:flex;position:absolute;inset:0;transform:translateY(28px)}.view-panel.is-visible{opacity:1;pointer-events:auto;transform:translateY(0)}.view-back{z-index:160;color:#fff;letter-spacing:.2em;text-transform:uppercase;cursor:pointer;opacity:.8;background:0 0;border:1px solid #ffffff40;padding:10px 18px;font-family:Syncopate,sans-serif;font-size:.72rem;transition:opacity .2s,border-color .2s,letter-spacing .2s;position:absolute;top:32px;left:44px}.view-back:hover{opacity:1;letter-spacing:.26em;border-color:#fff9}.view-panel-scroll{flex:1;justify-content:center;padding:110px 8vw 60px;display:flex;overflow-y:auto}.view-content{width:100%;max-width:760px}.proyectos-view{max-width:1080px}.view-lead{opacity:.65;letter-spacing:.03em;margin:10px 0 26px;font-size:.9rem}.sobremi-cv-link{cursor:pointer;background:0 0;border:none;margin-top:8px;padding:0;display:block}.contacto-view{text-align:center;flex-direction:column;align-items:center;display:flex}.contacto-title{text-transform:uppercase;letter-spacing:.12em;margin-top:6px;font-family:Syncopate,sans-serif;font-size:clamp(2rem,6vw,3.2rem);font-weight:700}.contacto-lead{text-align:center;max-width:46ch}.contacto-form{text-align:left;flex-direction:column;align-items:stretch;gap:20px;width:100%;max-width:480px;margin-top:28px;display:flex}.contacto-form-row{flex-direction:column;gap:8px;display:flex}.contacto-submit{align-self:center;padding-left:32px;padding-right:32px}.contacto-alt{text-align:center;opacity:.5;font-size:.75rem}.contacto-alt a{color:inherit;text-underline-offset:3px}.contacto-alt a:hover{opacity:1;color:#fff}.curriculum-print-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:24px;display:flex}.curriculum-download-group{gap:10px;display:flex}.curriculum-download{padding:10px 20px;font-size:.68rem;text-decoration:none;display:inline-block}.curriculum-download-light{color:#fff;background:0 0;border:1px solid #ffffff59}.curriculum-name{text-transform:uppercase;letter-spacing:.08em;font-family:Syncopate,sans-serif;font-size:clamp(1.8rem,4vw,2.6rem);font-weight:700}.curriculum-role{opacity:.6;letter-spacing:.2em;text-transform:uppercase;margin-top:6px;font-size:.85rem}.curriculum-info-grid{border-top:1px solid #ffffff24;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:16px 28px;margin-top:24px;padding-top:20px;display:grid}.curriculum-info-item{flex-direction:column;gap:4px;min-width:0;font-size:.8rem;display:flex}.curriculum-info-label{opacity:.5;letter-spacing:.06em;text-transform:uppercase;font-size:.68rem}.curriculum-info-value{opacity:.85;overflow-wrap:break-word}.curriculum-lang-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:10px 24px;margin-top:14px;display:grid}.curriculum-lang-item{border-bottom:1px solid #ffffff1f;justify-content:space-between;padding:8px 0;font-size:.8rem;display:flex}.curriculum-lang-level{opacity:.6;font-family:Syncopate,sans-serif;font-size:.72rem}.curriculum-bio{opacity:.8;max-width:62ch;margin-top:22px;font-size:.92rem;line-height:1.8}.curriculum-section{margin-top:36px}.curriculum-stack{margin-top:4px}.curriculum-timeline{flex-direction:column;gap:22px;margin-top:16px;display:flex}.curriculum-timeline-item{border-left:2px solid #ffffff38;padding-left:20px}.curriculum-timeline-top{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:16px;display:flex}.curriculum-timeline-top h4{text-transform:uppercase;letter-spacing:.04em;font-family:Syncopate,sans-serif;font-size:.9rem}.curriculum-timeline-top span{letter-spacing:.08em;text-transform:uppercase;opacity:.5;white-space:nowrap;font-size:.7rem}.curriculum-timeline-place{opacity:.6;margin-top:4px;font-size:.8rem}.curriculum-timeline-desc{opacity:.65;max-width:60ch;margin-top:8px;font-size:.82rem;line-height:1.6}.curriculum-projects{gap:18px;margin-top:16px;display:grid}.curriculum-project h4{text-transform:uppercase;letter-spacing:.04em;margin-bottom:6px;font-family:Syncopate,sans-serif;font-size:.9rem}.curriculum-project p{opacity:.65;font-size:.82rem;line-height:1.6}@media screen and (max-width:768px){.view-back{padding:8px 14px;font-size:.65rem;top:18px;left:20px}.view-panel-scroll{padding:90px 20px 60px}}@media print{.bg-video,.bg-video-scrim,.side-nav,.view-back,.curriculum-download{display:none!important}body,.home-shell,.view-panel,.view-panel-scroll{color:#000!important;opacity:1!important;background:#fff!important;position:static!important;overflow:visible!important;transform:none!important}.curriculum-view .about-stack-item{border-color:#0000004d}.curriculum-role,.curriculum-project p{opacity:.75}}
