:root{--color-red: #FF2424;--color-red-hover: #E01818;--color-red-light: rgba(255, 36, 36, .06);--color-white: #FFFFFF;--selection-background: var(--color-red);--selection-color: var(--color-white);--font-sans: "Plus Jakarta Sans", system-ui, -apple-system, sans-serif;--font-display: "Space Grotesk", system-ui, sans-serif;--font-mono: "JetBrains Mono", monospace}::selection{background-color:var(--selection-background);color:var(--selection-color)}.mobile-nav-overlay,.experience-entry,.contact-banner,.contact-card,.home-about-card,.about-title-box,.site-footer-red,.hero-path:hover,.pablo-rojo-experience:not(.white-active),.menu-overlay-open .site-header,.pj-chip,.pj-side a,.rb-side,.h-more-overlay,.h-cursor-follow{--selection-background: var(--color-white);--selection-color: var(--color-red)}.project-apple-card,.pj-entry-role,.pj-entry-iso,.home-about-card:hover .home-about-cta,.contact-card-links a:hover{--selection-background: var(--color-red);--selection-color: var(--color-white)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0;-webkit-tap-highlight-color:transparent!important}html{font-size:87.5%}html,body{width:100%;min-height:100dvh;scrollbar-gutter:stable;background-color:#ff2424;color:var(--color-red);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-tap-highlight-color:transparent!important;touch-action:manipulation}a,button,img,svg,input,select,textarea,[role=button],.header-brand-btn,.header-menu-toggle,.mobile-nav-link,.p-case-media-frame,.p-photo-color-btn,.p-dir-row,.p-detail-back-link{-webkit-tap-highlight-color:transparent!important;-webkit-touch-callout:none;touch-action:manipulation}html:not(.page-proyectos-html):not(.page-sobre-mi-html),body:not(.page-proyectos):not(.page-sobre-mi){height:100%;overflow:hidden}html.page-proyectos-html,html.page-sobre-mi-html,body.page-proyectos,body.page-sobre-mi{height:auto!important;min-height:100%!important;overflow-x:hidden!important;overflow-y:auto!important;position:static!important}html.lenis,html.lenis body{height:auto!important}.lenis.lenis-smooth{scroll-behavior:auto!important}html.white-active,body.white-active,html[data-home-entry=white] body{background-color:var(--color-white)}html[data-home-entry=white] #bloom-stage{display:none}.home-entrance-reset .site-content-scroller,.home-entrance-reset .site-content-scroller *{transition:none!important}a{color:inherit;text-decoration:none}button{font-family:inherit;cursor:pointer;border:none;background:transparent}.site-header{position:fixed;top:0;left:0;right:0;height:72px;background:transparent!important;background-color:transparent!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important;border:none!important;border-bottom:none!important;box-shadow:none!important;z-index:100;pointer-events:none;color:#fff;mix-blend-mode:normal!important;transition:opacity .2s ease,color .18s ease}.site-header:after{display:none!important}.header-inner{max-width:1080px;height:100%;margin:0 auto;padding:0 clamp(1.25rem,4vw,3rem);display:flex;align-items:center;justify-content:space-between;pointer-events:auto}.header-brand-btn{display:flex;align-items:center;justify-content:center;padding:6px;border-radius:12px;color:inherit;transition:opacity .2s ease,transform .2s ease}.header-brand-btn:hover{opacity:.8;transform:scale(.96)}.header-logo-svg{display:block;width:32px;height:32px;fill:currentColor}.site-header .header-nav{display:none!important}.header-right-actions{display:flex;align-items:center;gap:1.25rem}.header-lang-switcher{display:none}.menu-overlay-open .header-lang-switcher{display:flex;align-items:center;gap:.3rem;color:var(--color-white)}.header-lang-switcher .lang-opt{min-width:32px;min-height:44px;border-bottom:none;color:inherit;opacity:.75}.header-lang-switcher .lang-opt.is-active{opacity:1;border-bottom:none}.header-lang-switcher .lang-opt:focus-visible{outline:2px solid currentColor;outline-offset:2px}.header-lang-switcher .lang-divider{color:inherit}.header-menu-toggle{display:flex!important;align-items:center;justify-content:center;width:44px;height:44px;border-radius:12px;color:inherit;background:transparent;transition:opacity .2s ease,transform .15s ease;z-index:101}.header-menu-toggle:active{transform:scale(.92)}morph-icon{color:inherit;display:inline-flex}morph-icon svg{stroke:currentColor!important}body.white-active .site-header,.page-proyectos .site-header,.page-sobre-mi .site-header{color:#0ff!important;mix-blend-mode:difference!important}body.white-active:not(.menu-overlay-open) .header-brand-btn,.page-proyectos:not(.menu-overlay-open) .header-brand-btn,.page-sobre-mi:not(.menu-overlay-open) .header-brand-btn,body.white-active:not(.menu-overlay-open) .header-menu-toggle,.page-proyectos:not(.menu-overlay-open) .header-menu-toggle,.page-sobre-mi:not(.menu-overlay-open) .header-menu-toggle{color:inherit!important}body.white-active:not(.menu-overlay-open) .header-logo-svg,.page-proyectos:not(.menu-overlay-open) .header-logo-svg,.page-sobre-mi:not(.menu-overlay-open) .header-logo-svg{fill:currentColor!important}body.white-active:not(.menu-overlay-open) morph-icon svg,.page-proyectos:not(.menu-overlay-open) morph-icon svg,.page-sobre-mi:not(.menu-overlay-open) morph-icon svg{stroke:currentColor!important}body:not(.white-active) .site-header{color:#fff!important;mix-blend-mode:normal!important}body:not(.white-active) .header-brand-btn,body:not(.white-active) .header-menu-toggle{color:#fff!important}body:not(.white-active) .header-logo-svg{fill:#fff!important}body:not(.white-active) morph-icon svg{stroke:#fff!important}body.menu-overlay-open .site-header,html.menu-overlay-open .site-header,body.menu-overlay-open.page-proyectos .site-header,html.menu-overlay-open.page-proyectos .site-header,body.menu-overlay-open.page-sobre-mi .site-header,html.menu-overlay-open.page-sobre-mi .site-header{color:#fff!important;mix-blend-mode:normal!important}body.menu-overlay-open .header-brand-btn,body.menu-overlay-open .header-menu-toggle{color:#fff!important}body.menu-overlay-open .header-logo-svg{fill:#fff!important}body.menu-overlay-open morph-icon svg{stroke:#fff!important}.site-header,.header-inner,body.menu-overlay-open .site-header,html.menu-overlay-open .site-header,body.menu-overlay-open .header-inner,html.menu-overlay-open .header-inner,body.header-on-red .site-header,html.header-on-red .site-header,body.header-on-red .header-inner,html.header-on-red .header-inner{background:transparent!important;background-color:transparent!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important;box-shadow:none!important;border:none!important;border-bottom:none!important}.mobile-nav-overlay{position:fixed;top:0;right:0;bottom:0;left:0;width:100vw;height:100vh;height:100dvh;background-color:var(--color-red);z-index:90;display:flex;flex-direction:column;justify-content:center;align-items:center;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .28s ease,visibility .28s}.mobile-nav-overlay.active{opacity:1;visibility:visible;pointer-events:auto}.mobile-nav-overlay.anim-topdown{opacity:1;visibility:hidden;transform:translateY(-100%);transition:transform .44s cubic-bezier(.16,1,.3,1),visibility .44s}.mobile-nav-overlay.anim-topdown.active{opacity:1;visibility:visible;transform:translateY(0)}.mobile-nav-content{width:100%;max-width:100%;height:100%;padding:clamp(3.5rem,6vh,5.5rem) 1.5rem 2rem;display:flex;flex-direction:column;justify-content:space-between;align-items:center;box-sizing:border-box}@media (min-width: 769px){.mobile-nav-content{max-width:100%;width:100%;padding:clamp(3rem,5vh,4.5rem) 2rem 2.5rem;align-items:center;position:relative;justify-content:flex-start}.mobile-nav-bottom{position:absolute;bottom:clamp(1.8rem,3.5vh,2.8rem);left:clamp(2rem,5vw,6rem);right:clamp(2rem,5vw,6rem);width:calc(100% - (2*clamp(2rem,5vw,6rem)));border-top:1px solid rgba(255,255,255,.15)}}.mobile-nav-links{display:flex;flex-direction:column;gap:clamp(.4rem,1.4vh,1.2rem);width:fit-content;max-width:94vw;margin:auto;align-items:flex-start;text-align:left}.mobile-nav-link{display:flex;align-items:baseline;justify-content:flex-start;gap:clamp(.75rem,1.8vw,1.75rem);color:var(--color-white);font-family:var(--font-display);font-weight:800;letter-spacing:-.04em;text-decoration:none;text-align:left}.mobile-nav-num{font-family:var(--font-mono);font-size:clamp(1rem,2vh,1.5rem);font-weight:700;color:#fff9;letter-spacing:.06em;pointer-events:none;margin-right:.25rem}.mobile-nav-num,.mobile-nav-text{position:relative;opacity:0;transform:translate3d(0,.35em,0);transition:opacity .18s ease,transform .18s ease}.mobile-nav-overlay.active .mobile-nav-num,.mobile-nav-overlay.active .mobile-nav-text{opacity:1;transform:none;transition:opacity .5s cubic-bezier(.16,1,.3,1),transform .7s cubic-bezier(.16,1,.3,1);transition-delay:calc(.12s + var(--menu-i, 0) * .05s)}@media (prefers-reduced-motion: reduce){.mobile-nav-overlay.anim-topdown{transition-duration:.01s}.mobile-nav-num,.mobile-nav-text,.mobile-nav-overlay.active .mobile-nav-num,.mobile-nav-overlay.active .mobile-nav-text{transform:none;transition:opacity .15s ease;transition-delay:0s}}.mobile-nav-link.active .mobile-nav-num:before,.mobile-nav-link.is-current .mobile-nav-num:before{content:"";position:absolute;right:calc(100% + .45em);top:50%;width:.42em;height:.42em;border-radius:50%;background:#fff;transform:translateY(-50%)}.mobile-nav-link.active .mobile-nav-num,.mobile-nav-link.is-current .mobile-nav-num{color:#fff!important;font-weight:800}.mobile-nav-link.active .mobile-nav-text:after,.mobile-nav-link.is-current .mobile-nav-text:after{content:"";position:absolute;left:.04em;right:0;bottom:-.16em;height:clamp(3px,.45vh,6px);background:#fff;transform-origin:left center;transform:scaleX(0);transition:transform .6s cubic-bezier(.16,1,.3,1)}.mobile-nav-overlay.active .mobile-nav-link.active .mobile-nav-text:after,.mobile-nav-overlay.active .mobile-nav-link.is-current .mobile-nav-text:after{transform:scaleX(1);transition-delay:calc(.35s + var(--menu-i, 0) * .05s)}@media (min-width: 769px) and (hover: hover){.mobile-nav-links{will-change:transform;gap:clamp(.1rem,.6vh,.8rem);margin-top:clamp(4.2rem,7vh,5.8rem);margin-left:auto;margin-right:auto;margin-bottom:auto;width:fit-content;max-width:92vw;align-items:flex-start;text-align:left}.mobile-nav-link{font-size:clamp(9rem,21vh,22rem);line-height:.86;letter-spacing:-.045em;white-space:nowrap;will-change:transform,opacity;transform-origin:left center;transition:opacity .3s cubic-bezier(.16,1,.3,1),filter .3s ease}.mobile-nav-num{font-size:clamp(1.4rem,2.8vh,2.5rem);font-weight:700;color:#ffffff8c;letter-spacing:.08em;align-self:baseline;margin-right:clamp(.6rem,1.2vw,1.6rem);pointer-events:none}.mobile-nav-links.has-hovered-child .mobile-nav-link:not(.is-hovered){opacity:.22;filter:blur(.5px)}.mobile-nav-links.has-hovered-child .mobile-nav-link.active:not(.is-hovered),.mobile-nav-links.has-hovered-child .mobile-nav-link.is-current:not(.is-hovered){opacity:.55!important;filter:none!important}.mobile-nav-link.is-hovered{opacity:1!important;filter:none!important}}@media (max-width: 768px){.mobile-nav-content{max-width:100%;padding:5.5rem 1.25rem 2.5rem;align-items:center}.mobile-nav-links{transform:none!important;gap:clamp(.8rem,2.4vh,1.8rem);margin:auto;width:fit-content;max-width:100%;align-items:flex-start;text-align:left}.mobile-nav-link{font-size:clamp(2.8rem,11vw,4.4rem);line-height:1;letter-spacing:-.035em;transform:none!important;opacity:1!important;filter:none!important;transition:transform .2s ease,opacity .2s ease}.mobile-nav-num{font-size:clamp(.95rem,3.2vw,1.25rem);font-weight:700;margin-right:.4rem}.mobile-nav-link:active{transform:translate(6px)!important;opacity:.85!important}}.mobile-nav-footer{display:flex;flex-direction:column;gap:.4rem;padding-top:1.8rem;border-top:1px solid rgba(255,255,255,.2);color:var(--color-white)}.mobile-nav-tag{font-family:var(--font-mono);font-size:.72rem;letter-spacing:.08em;color:#fffc}.mobile-nav-brand{font-family:var(--font-display);font-size:.85rem;font-weight:700;color:var(--color-white)}.mobile-nav-bottom{display:flex;align-items:center;justify-content:space-between;padding-top:1.5rem;border-top:1px solid rgba(255,255,255,.2);margin-top:1rem}.mobile-nav-lang-group{display:inline-flex;align-items:baseline;gap:.65rem}.mobile-nav-lang-tag{font-family:var(--font-mono);font-size:.78rem;font-weight:500;letter-spacing:.06em;color:var(--color-white);opacity:.5;text-transform:lowercase;-webkit-user-select:none;user-select:none}.mobile-nav-lang-switcher{display:inline-flex;align-items:baseline;gap:.35rem;background:transparent;border:none;border-radius:0;padding:0;cursor:pointer;user-select:none;-webkit-user-select:none}.mobile-nav-lang-switcher:hover{background:transparent}.lang-opt{display:inline-block;background:transparent;border:none;border-radius:0;padding:1px 2px;font-family:var(--font-mono);font-size:.82rem;font-weight:500;letter-spacing:.08em;text-transform:lowercase;color:var(--color-white);opacity:.45;cursor:pointer;line-height:1.2;border-bottom:1.5px solid transparent;box-shadow:none;transition:opacity .2s ease,border-color .2s ease,color .2s ease;-webkit-tap-highlight-color:transparent}.lang-opt:hover{color:var(--color-white);opacity:.85}.lang-opt.is-active{background:transparent;color:var(--color-white);font-weight:800;opacity:1;border-bottom:1.5px solid #FFFFFF;box-shadow:none;cursor:default}.lang-divider{font-family:var(--font-mono);font-size:.75rem;color:#ffffff59;padding:0 1px;-webkit-user-select:none;user-select:none;line-height:1}.bloom-viewport-stage{position:fixed;top:0;right:0;bottom:0;left:0;width:100vw;height:100vh;height:100dvh;z-index:50;pointer-events:none;overflow:hidden;transition:opacity .25s linear}.bloom-canvas-bg{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;background-color:var(--bloom-bg, #FF2424);display:flex;align-items:center;justify-content:center;transition:background-color .05s linear}.bloom-logo-center{display:flex;align-items:center;justify-content:center;will-change:transform}.bloom-entrance-wrapper{position:relative;width:clamp(240px,45vw,300px);height:clamp(240px,45vw,300px);display:flex;align-items:center;justify-content:center;animation:logoEntrance .85s cubic-bezier(.16,1,.3,1) forwards;will-change:transform,opacity}@keyframes logoEntrance{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.bloom-layer{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;display:flex;align-items:center;justify-content:center;pointer-events:none;will-change:transform,opacity}.bloom-svg-layer{width:100%;height:100%;display:block;overflow:visible}.bloom-vpath{fill:#fff}.bloom-stroke-expand{stroke:#fff;stroke-width:0;stroke-linejoin:round;stroke-linecap:round;paint-order:stroke fill}.bloom-radial-glow{position:absolute;top:50%;left:50%;width:320px;height:320px;margin-top:-160px;margin-left:-160px;border-radius:50%;background:radial-gradient(circle,#fff,#ffffffd9,#fff0 70%);opacity:0;transform:scale(.8);pointer-events:none;will-change:transform,opacity}.bloom-layer-wide{filter:blur(48px);-webkit-filter:blur(48px);opacity:0;transform:scale(1)}.bloom-layer-mid{filter:blur(20px);-webkit-filter:blur(20px);opacity:0;transform:scale(1)}.bloom-layer-core{filter:blur(6px);-webkit-filter:blur(6px);opacity:0;transform:scale(1)}.bloom-layer-sharp{opacity:1;transform:scale(1)}.hero-title-slot{transform:translateY(calc(-14px * (1 - var(--content-opacity, 0))));width:100%;position:relative;display:flex;justify-content:center;align-items:center;text-align:center;margin-bottom:0;opacity:var(--title-opacity, 0);visibility:hidden;transition:opacity .1s linear;user-select:none;-webkit-user-select:none;border:none;outline:none}.hero-title-slot.active{visibility:visible}.kinetic-hero-title{font-family:var(--font-display);font-size:clamp(3.2rem,8vw,6.8rem);font-weight:900;-webkit-text-stroke:.012em currentColor;line-height:.95;letter-spacing:var(--title-tracking, .02em);text-transform:lowercase;color:var(--color-red);margin:0 auto;padding:0 .35em;box-sizing:border-box;white-space:nowrap;display:inline-flex;align-items:baseline;justify-content:center;text-align:center;filter:none!important;-webkit-filter:none!important;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;caret-color:transparent;outline:none;border:none;transform:translateZ(0);-webkit-transform:translateZ(0);backface-visibility:hidden;-webkit-backface-visibility:hidden}.kinetic-char{display:inline-block;user-select:none;-webkit-user-select:none}.kinetic-space{width:.28em}.site-content-scroller{position:fixed;top:0;right:0;bottom:0;left:0;width:100vw;height:100vh;height:100dvh;overflow-y:auto;overflow-x:hidden;scroll-behavior:auto;z-index:25;-webkit-overflow-scrolling:touch;pointer-events:none;visibility:hidden;opacity:0;transition:opacity .2s linear}.site-content-scroller.active{visibility:visible;opacity:1}.site-content-scroller.interactive{pointer-events:auto}.site-content-inner{max-width:990px;margin:0 auto;padding:0 clamp(1.25rem,5vw,4rem) 0;display:flex;flex-direction:column;gap:clamp(3.25rem,6.5vw,5.5rem)}.hero-content-reveal,.section-benchmarks,.section-block,.site-footer{transform:translateY(var(--content-rise-y, 80px));opacity:var(--content-opacity, 0);visibility:hidden;transition:transform .08s linear,opacity .08s linear;will-change:transform,opacity}.hero-content-reveal.visible,.section-benchmarks.visible,.section-block.visible,.site-footer.visible{visibility:visible}.site-content-scroller.interactive .section-block,.site-content-scroller.interactive .section-benchmarks,.site-content-scroller.interactive .hero-content-reveal,.site-content-scroller.interactive .site-footer{transform:none!important;will-change:auto}.section-hero{display:flex;flex-direction:column;align-items:center;text-align:center;padding-top:calc(50vh - var(--hero-title-half-h, clamp(1.52rem, 3.8vw, 3.23rem)));padding-top:calc(50dvh - var(--hero-title-half-h, clamp(1.52rem, 3.8vw, 3.23rem)));transform:translateY(calc(-1 * var(--hero-elevate-y, 0px) + var(--hero-scroll-drift, 0px)));will-change:transform}.section-hero{min-height:100dvh}.hero-content-reveal{margin-top:clamp(1.4rem,3vh,2.2rem);display:flex;flex-direction:column;align-items:center;gap:clamp(1rem,2vh,1.5rem);width:100%}.hero-badge{display:inline-flex;align-items:center;gap:8px;border:none;padding:0;border-radius:0;width:fit-content;background:transparent}.hero-badge-pulse{width:8px;height:8px;border-radius:50%;background:var(--color-red);animation:pulseDot 1.5s infinite ease-in-out}@keyframes pulseDot{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.4);opacity:.4}}.hero-badge-text{font-family:var(--font-mono);font-size:.74rem;font-weight:800;color:var(--color-red);letter-spacing:.08em}.hero-lead-statement{font-family:var(--font-sans);font-size:clamp(1rem,1.8vw,1.25rem);font-weight:400;line-height:1.5;letter-spacing:.02em;color:var(--color-red);margin:0}.hero-paths{display:flex;justify-content:center;gap:1rem;flex-wrap:wrap;margin-top:clamp(.6rem,1.5vh,1rem)}.hero-path{display:inline-flex;align-items:center;justify-content:center;gap:.75rem;min-height:40px;padding:.6rem .75rem;border-bottom:1px solid rgba(255,36,36,.35);color:var(--color-red);font-size:1rem;font-weight:500;position:relative;isolation:isolate;transition:color .3s ease,border-color .3s ease}.hero-path:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;background:var(--color-red);transform:scaleY(0);transform-origin:center bottom;transition:transform .4s cubic-bezier(.16,1,.3,1)}.hero-path svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.hero-path:hover,.hero-path:focus-visible{color:var(--color-white);border-color:var(--color-red)}.hero-path:hover:before,.hero-path:focus-visible:before{transform:scaleY(1)}.hero-path:focus-visible{outline:2px solid var(--color-red);outline-offset:4px}@media (prefers-reduced-motion: reduce){.hero-path,.hero-path:before{transition:none}}.hero-cta-group{display:flex;align-items:center;justify-content:center;gap:1.25rem;flex-wrap:wrap;margin-top:.5rem}.btn-solid{display:inline-flex;align-items:center;gap:8px;background:transparent!important;color:var(--color-red)!important;padding:6px 0!important;border-radius:0!important;font-family:var(--font-mono);font-weight:700;font-size:.92rem;letter-spacing:.02em;border:none!important;border-bottom:2px solid var(--color-red)!important;box-shadow:none!important;text-transform:lowercase;cursor:pointer;transition:opacity .2s ease,transform .2s cubic-bezier(.16,1,.3,1)}.btn-solid:hover{opacity:.65;transform:translate(4px);box-shadow:none!important}.btn-solid:active{transform:translate(2px) scale(.99)}.btn-outline{display:inline-flex;align-items:center;gap:8px;background:transparent!important;color:var(--color-red)!important;padding:6px 0!important;border-radius:0!important;font-family:var(--font-mono);font-weight:700;font-size:.92rem;letter-spacing:.02em;border:none!important;border-bottom:1px solid rgba(255,36,36,.4)!important;box-shadow:none!important;text-transform:lowercase;opacity:.82;cursor:pointer;transition:opacity .2s ease,transform .2s cubic-bezier(.16,1,.3,1),border-color .2s ease}.btn-outline:hover{opacity:1;border-bottom-color:var(--color-red)!important;transform:translate(4px);box-shadow:none!important}.btn-outline:active{transform:translate(2px) scale(.99)}.benchmark-grid{display:grid;grid-template-columns:1fr auto 1fr auto 1fr auto 1fr;align-items:center;padding:clamp(2rem,4vw,3rem) 0;border:none;border-top:1px solid rgba(255,36,36,.16);border-bottom:1px solid rgba(255,36,36,.16);border-radius:0;gap:1.5rem;background:transparent;box-shadow:none}.benchmark-card{display:flex;flex-direction:column;gap:6px}.benchmark-val{font-family:var(--font-display);font-size:clamp(2.4rem,4vw,3.4rem);font-weight:800;line-height:1;color:var(--color-red);letter-spacing:-.035em}.benchmark-label{font-family:var(--font-mono);font-size:.72rem;font-weight:700;color:var(--color-red);text-transform:lowercase;letter-spacing:.05em;opacity:.85}.benchmark-sep{width:1px;height:48px;background:#ff242426}.section-block{display:flex;flex-direction:column;gap:clamp(1.6rem,3.2vw,2.4rem);scroll-margin-top:clamp(3.5rem,6.5vh,4.5rem)}.section-header{display:flex;flex-direction:column;gap:8px}.section-header-top{display:flex;align-items:center;gap:12px;line-height:1}.section-number{font-family:var(--font-mono);font-size:.74rem;font-weight:700;letter-spacing:.08em;color:var(--color-red);opacity:.85;text-transform:lowercase;margin:0;line-height:1}.section-badge-live{font-family:var(--font-mono);font-size:.72rem;font-weight:700;color:var(--color-red);background:transparent;border:none;border-radius:0;padding:0;letter-spacing:.04em;opacity:.75;line-height:1}.section-badge-live:before{content:"● ";font-size:.6em;vertical-align:1px}.section-title{font-family:var(--font-display);font-size:clamp(1.8rem,3.6vw,2.6rem);font-weight:800;line-height:1.15;color:var(--color-red);letter-spacing:-.025em;margin:0}.section-subtitle{font-size:clamp(.96rem,1.4vw,1.05rem);line-height:1.55;color:var(--color-red);opacity:.85;max-width:68ch;margin:0}.dual-lanes-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2rem,5vw,4rem)}.lane-card{padding:0;border:none;background:transparent;box-shadow:none;display:flex;flex-direction:column;gap:1rem}.lane-badge{font-family:var(--font-mono);font-size:.76rem;font-weight:700;letter-spacing:.05em;color:var(--color-red);background:transparent;border:none;border-radius:0;padding:0;width:fit-content;text-transform:lowercase;opacity:.8}.lane-badge:before{content:"// ";opacity:.6}.lane-card h3{font-family:var(--font-display);font-size:clamp(1.4rem,2.5vw,1.8rem);font-weight:800;line-height:1.18;letter-spacing:-.02em;color:var(--color-red);margin:0}.lane-card p{font-size:1.02rem;line-height:1.65;color:var(--color-red);opacity:.88;margin:0}.pillars-row{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(1.8rem,4vw,3rem);border-top:1px solid rgba(255,36,36,.16);padding-top:clamp(2rem,4vw,3rem)}.pillar-box{padding:0;border:none;background:transparent;box-shadow:none;display:flex;flex-direction:column;gap:8px}.pillar-idx{font-family:var(--font-mono);font-weight:800;font-size:.95rem;color:var(--color-red);opacity:.75}.pillar-box h4{font-family:var(--font-display);font-size:clamp(1.2rem,2vw,1.45rem);font-weight:800;letter-spacing:-.015em;color:var(--color-red);margin:0}.pillar-box p{font-size:.92rem;line-height:1.6;color:var(--color-red);opacity:.88;margin:0}.h-experience-top-label{font-family:var(--font-display);font-size:clamp(2.2rem,4.8vw,3.8rem);font-weight:900;color:#ff2424;letter-spacing:-.025em;text-transform:lowercase;margin:clamp(.75rem,1.8vh,1.5rem) 0 clamp(1.2rem,2.5vh,2rem);text-align:center;width:100%;line-height:1}.experience-brand-header{display:flex;align-items:center;gap:1.25rem;flex-wrap:wrap}.experience-brand-logo{height:38px;width:auto;max-width:160px;object-fit:contain;display:block;filter:brightness(0) invert(1)}.experience-titles{display:flex;flex-direction:column;gap:.25rem}.experience-entry{display:flex;flex-direction:column;gap:clamp(1.8rem,3.2vw,2.8rem);background:#ff2424;color:#fff;border-radius:0;padding:clamp(2rem,4.5vw,3.5rem);box-sizing:border-box}.experience-meta-bar{display:flex;justify-content:space-between;align-items:baseline;flex-wrap:wrap;gap:1rem;padding-bottom:1.25rem;border-bottom:1px solid rgba(255,255,255,.28)}.experience-role-group{display:flex;flex-direction:column;gap:.35rem}.experience-role{font-family:var(--font-display);font-size:clamp(1.2rem,2vw,1.55rem);font-weight:800;letter-spacing:-.02em;color:#fff;text-transform:lowercase}.experience-org{font-family:var(--font-mono);font-size:.82rem;font-weight:600;letter-spacing:.04em;color:#ffffffd1;text-transform:uppercase}.experience-tag-group{display:flex;align-items:center;gap:1rem}.experience-period{font-family:var(--font-mono);font-size:.85rem;font-weight:700;color:#fff}.experience-doc{font-family:var(--font-mono);font-size:.72rem;font-weight:700;color:#fff;border:1px solid rgba(255,255,255,.45);padding:3px 8px;letter-spacing:.05em;text-transform:uppercase}.experience-main-lead{display:flex;flex-direction:column;gap:1.15rem;width:100%}.experience-heading{font-family:var(--font-display);font-size:clamp(1.25rem,2.2vw,1.65rem);font-weight:800;line-height:1.25;letter-spacing:-.02em;color:#fff;margin:0}.experience-p{font-size:clamp(1rem,1.2vw,1.12rem);line-height:1.75;color:#fffffff0;margin:0;width:100%;max-width:100%}.experience-pillars-horizontal{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(1.5rem,3vw,2.75rem);padding-top:clamp(1.5rem,2.5vw,2.25rem);border-top:1px solid rgba(255,255,255,.28)}.experience-pillar-card{display:flex;flex-direction:column;gap:.5rem;padding-left:clamp(1rem,1.8vw,1.5rem);border-left:1px solid rgba(255,255,255,.28)}.exp-pillar-idx{font-family:var(--font-mono);font-size:.74rem;font-weight:700;letter-spacing:.08em;color:#ffffffb3;text-transform:uppercase}.experience-pillar-card h4{font-family:var(--font-display);font-size:clamp(1.02rem,1.35vw,1.18rem);font-weight:800;letter-spacing:-.01em;color:#fff;margin:0;text-transform:lowercase}.experience-pillar-card p{font-size:.92rem;line-height:1.62;color:#ffffffdb;margin:0}.experience-spec-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(1rem,2vw,2rem);padding-top:clamp(1.25rem,2vw,1.8rem);border-top:1px solid rgba(255,255,255,.28)}.exp-spec-item{display:flex;flex-direction:column;gap:.3rem}.exp-spec-label{font-family:var(--font-mono);font-size:.68rem;font-weight:700;letter-spacing:.09em;color:#ffffffa6;text-transform:uppercase}.exp-spec-val{font-family:var(--font-mono);font-size:.84rem;font-weight:600;letter-spacing:.02em;color:#fff}@media (max-width: 900px){.experience-pillars-horizontal{grid-template-columns:1fr;gap:1.5rem}.experience-pillar-card{border-left:2px solid rgba(255,255,255,.35);padding-left:1rem}.experience-spec-strip{grid-template-columns:repeat(2,1fr);gap:1.25rem}}@media (max-width: 540px){.experience-spec-strip{grid-template-columns:1fr;gap:1rem}}.projects-segmented-bar{display:flex;flex-direction:column;gap:1.25rem;align-items:flex-start}.projects-segmented-control{display:inline-flex;padding:0;background:transparent;border:none;border-radius:0;gap:1.5rem}.segment-btn{border:none;background:transparent;color:var(--color-red);padding:4px 0;border-radius:0;font-family:var(--font-mono);font-size:.8rem;font-weight:700;cursor:pointer;letter-spacing:.03em;opacity:.6;border-bottom:2px solid transparent;transition:all .2s ease;white-space:nowrap}.segment-btn:hover{opacity:.9;background:transparent}.segment-btn.active{background:transparent;color:var(--color-red);opacity:1;border-bottom-color:var(--color-red);box-shadow:none}.projects-filter-bar{display:flex;gap:1.25rem;flex-wrap:wrap;align-items:center;animation:fadeInChips .25s ease forwards}@keyframes fadeInChips{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.filter-chip{border:none;border-bottom:1px solid rgba(255,36,36,.3);background:transparent;color:var(--color-red);padding:4px 0;border-radius:0;font-family:var(--font-mono);font-size:.74rem;font-weight:700;cursor:pointer;letter-spacing:.03em;opacity:.75;transition:all .2s ease}.filter-chip:hover{opacity:1;border-bottom-color:var(--color-red);background:transparent}.filter-chip.active{background:transparent;color:var(--color-red);border-bottom:2px solid var(--color-red);opacity:1;box-shadow:none}section#proyectos[data-active-view=featured] .project-apple-card[data-featured=false]{display:none!important}section#proyectos[data-active-view=featured] .projects-filter-bar{display:none!important}section#proyectos[data-active-view=featured] .projects-featured-footer{display:flex}section#proyectos[data-active-view=all] .projects-filter-bar{display:flex}section#proyectos[data-active-view=all] .projects-featured-footer{display:none}.project-apple-card.filter-hidden{display:none!important}.projects-grid-main{display:grid;grid-template-columns:repeat(2,1fr);gap:2rem}.project-apple-card{padding:1.6rem;border:1px solid rgba(255,36,36,.14);border-radius:22px;background:var(--color-white);color:var(--color-red);display:flex;flex-direction:column;gap:.85rem;box-shadow:0 4px 20px -2px #ff24240a,0 1px 3px #00000005;transition:transform .25s cubic-bezier(.16,1,.3,1),box-shadow .25s cubic-bezier(.16,1,.3,1),border-color .2s ease}.project-apple-card:hover{transform:translateY(-3px);border-color:#ff24244d;box-shadow:0 14px 34px -4px #ff24241a,0 2px 6px #00000005}.project-card-visual{aspect-ratio:16 / 9;width:100%;border-radius:14px;overflow:hidden;border:1px solid rgba(255,36,36,.12);position:relative;background-color:var(--color-white)}.project-svg-art{width:100%;height:100%;display:block;object-fit:cover;transition:transform .4s cubic-bezier(.16,1,.3,1)}.project-apple-card:hover .project-svg-art{transform:scale(1.02)}.project-card-img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s cubic-bezier(.16,1,.3,1)}.project-apple-card:hover .project-card-img{transform:scale(1.03)}.project-card-header{display:flex;align-items:center;justify-content:space-between;gap:10px}.tag-pill{font-family:var(--font-mono);font-size:.74rem;font-weight:700;letter-spacing:.05em;color:var(--color-red);background:transparent;border:none;border-radius:0;padding:0;text-transform:lowercase;opacity:.82}.tag-pill:before{content:"// ";opacity:.6}.tag-year{font-family:var(--font-mono);font-size:.72rem;font-weight:700;opacity:.65}.project-card-title{font-family:var(--font-display);font-size:1.35rem;font-weight:800;line-height:1.22;letter-spacing:-.02em;color:var(--color-red);margin:0}.project-card-desc{font-size:.92rem;line-height:1.6;opacity:.88;color:var(--color-red);margin:0}.project-card-actions{display:flex;align-items:center;gap:10px;margin-top:auto;padding-top:.75rem;flex-wrap:wrap}.project-action-btn{display:inline-flex;align-items:center;gap:6px;border:none;border-bottom:1px solid var(--color-red);background:transparent;color:var(--color-red);padding:3px 0;border-radius:0;font-family:var(--font-mono);font-size:.76rem;font-weight:700;cursor:pointer;letter-spacing:.02em;text-decoration:none;transition:opacity .2s ease,transform .2s ease}.project-action-btn:hover{background:transparent;color:var(--color-red);opacity:.65;transform:translate(3px);box-shadow:none}.project-action-btn:active{transform:translate(1px)}.expand-chevron{display:inline-block;transition:transform .22s ease}.project-apple-card.expanded .expand-chevron{transform:rotate(180deg)}.project-apple-card.expanded .project-expand-trigger{background:#ff24241a;border-color:var(--color-red)}.project-expand-panel{display:none;margin-top:.4rem;padding-top:1rem;border-top:1px dashed rgba(255,36,36,.2);animation:expandFadeIn .25s ease forwards}.project-apple-card.expanded .project-expand-panel{display:block}@keyframes expandFadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.expand-inner{display:flex;flex-direction:column;gap:.85rem}.expand-row{display:flex;flex-direction:column;gap:3px}.expand-heading{font-family:var(--font-mono);font-size:.7rem;font-weight:800;text-transform:lowercase;letter-spacing:.05em;opacity:.75}.expand-detail{font-size:.88rem;line-height:1.55;margin:0;opacity:.92}.expand-row-honesty{background:#ff24240a;padding:10px 14px;border-radius:12px;border-left:3px solid var(--color-red)}.expand-row-honesty .expand-heading{color:var(--color-red);font-weight:900;opacity:1}.expand-row-honesty .expand-detail{font-style:italic;font-size:.86rem}.projects-featured-footer{display:flex;justify-content:center;padding-top:1.5rem}.projects-view-all-toggle{font-size:.92rem;padding:13px 28px}.skills-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(2rem,5vw,4rem);border-top:1px solid rgba(255,36,36,.16);padding-top:clamp(2rem,4vw,3rem)}.skill-category{padding:0;border:none;background:transparent;box-shadow:none;display:flex;flex-direction:column;gap:1.25rem}.skill-category h4{font-family:var(--font-display);font-size:clamp(1.22rem,2vw,1.45rem);font-weight:800;letter-spacing:-.015em;color:var(--color-red);margin:0}.skill-category ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.85rem}.skill-category li{font-size:.96rem;font-weight:600;display:flex;align-items:center;gap:8px;color:var(--color-red);opacity:.88}.skill-category li:before{content:"—";font-weight:800;color:var(--color-red);opacity:.7}.timeline-list{display:flex;flex-direction:column;gap:0}.timeline-item{display:grid;grid-template-columns:140px 1fr;align-items:flex-start;padding:clamp(1.75rem,3.5vw,2.5rem) 0;border:none;border-top:1px solid rgba(255,36,36,.2);background:transparent;gap:clamp(1.5rem,4vw,3rem);box-shadow:none}.timeline-date{font-family:var(--font-display);font-size:clamp(2rem,3.8vw,2.8rem);font-weight:900;line-height:1;letter-spacing:-.03em;color:var(--color-red)}.timeline-body h4{font-family:var(--font-display);font-size:clamp(1.2rem,2.2vw,1.5rem);font-weight:800;margin:0 0 8px;letter-spacing:-.015em;color:var(--color-red)}.timeline-body p{font-size:1rem;line-height:1.6;color:var(--color-red);opacity:.88;margin:0}.contact-banner{background:var(--color-red);color:var(--color-white);padding:clamp(3rem,7vw,5rem) clamp(1.5rem,5vw,4rem);border-radius:0;display:flex;flex-direction:column;align-items:center;text-align:center;gap:1.5rem;border:none;box-shadow:none}.contact-subhead{font-family:var(--font-mono);font-size:.76rem;font-weight:800;letter-spacing:.08em;opacity:.9}.contact-headline{font-family:var(--font-display);font-size:clamp(2.2rem,4.5vw,3.6rem);font-weight:800;line-height:1.08;letter-spacing:-.025em;max-width:800px}.contact-desc{font-size:1.08rem;line-height:1.6;opacity:.95;max-width:580px}.contact-email-btn{background:transparent;color:var(--color-white);font-family:var(--font-display);font-weight:800;font-size:clamp(1.4rem,2.5vw,1.8rem);letter-spacing:-.01em;padding:6px 0;border-radius:0;border:none;border-bottom:2px solid var(--color-white);box-shadow:none;transition:transform .25s cubic-bezier(.16,1,.3,1),opacity .2s ease;margin-top:.5rem}.contact-email-btn:hover{background:transparent;color:var(--color-white);transform:translate(4px);opacity:.85;box-shadow:none}.contact-social-row{display:flex;align-items:center;gap:14px;font-family:var(--font-mono);font-size:.85rem;font-weight:700;margin-top:1rem}.contact-social-row a{color:var(--color-white);transition:opacity .2s}.contact-social-row a:hover{opacity:.75}.site-footer{padding-top:3rem;border-top:1px solid rgba(255,36,36,.18);display:flex;align-items:center;justify-content:space-between;font-family:var(--font-mono);font-size:.8rem;font-weight:700;flex-wrap:wrap;gap:1rem}.footer-left{display:flex;align-items:center;gap:8px}.footer-dot{width:7px;height:7px;border-radius:50%;background:var(--color-red)}.footer-right{display:flex;align-items:center;gap:1.5rem}.footer-top-btn{border:none;border-bottom:1px solid var(--color-red);padding:3px 0;border-radius:0;transition:opacity .2s ease}.footer-top-btn:hover{opacity:.65;background:transparent;color:var(--color-red)}@media (max-width: 860px){.header-nav{display:none}.header-menu-toggle{display:flex}.benchmark-grid{grid-template-columns:1fr;gap:1.25rem}.benchmark-sep{display:none}.dual-lanes-grid,.pillars-row,.projects-grid-main,.skills-grid{grid-template-columns:1fr}.timeline-item{grid-template-columns:1fr;gap:.75rem}}body.menu-overlay-open{overflow:hidden}.pin-section-wrapper{position:relative;width:100%}#ticker-pin-wrapper{height:calc(100vh + 1500px)}#coverflow-pin-wrapper{height:calc(100vh + 1600px)}#h-projects-pin-wrapper{height:calc(100vh + 2600px);height:calc(100dvh + 2600px);width:100vw;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw)}@media (max-width: 640px){#h-projects-pin-wrapper{height:calc(100vh + 2000px);height:calc(100dvh + 2000px)}}.pin-section-sticky{position:-webkit-sticky;position:sticky;top:0;height:100vh;height:100dvh;display:flex;flex-direction:column;justify-content:center;align-items:center;overflow:hidden;box-sizing:border-box}.projects-ticker-stage{position:relative;background:transparent;color:var(--color-red);padding:1.5rem 0 1rem;display:grid;grid-template-columns:auto 1fr;align-items:center;gap:clamp(1.5rem,4vw,3.5rem);-webkit-user-select:none;user-select:none;touch-action:pan-y!important;width:100%}.projects-ticker-label-col{display:flex;align-items:center;justify-content:center;padding-right:clamp(1.2rem,3vw,2.5rem);border-right:2px solid rgba(255,36,36,.22);height:clamp(480px,58vh,600px);touch-action:pan-y!important}.projects-ticker-vertical-label{writing-mode:vertical-rl;transform:rotate(180deg);text-orientation:mixed;font-family:var(--font-display);font-weight:900;font-size:clamp(1.2rem,2.6vw,1.8rem);letter-spacing:.16em;text-transform:uppercase;color:#ff2424;line-height:1}.projects-ticker-viewport{position:relative;height:clamp(480px,58vh,600px);overflow:hidden;display:flex;flex-direction:column;justify-content:center;mask-image:linear-gradient(to bottom,transparent 0%,black 14%,black 86%,transparent 100%);-webkit-mask-image:linear-gradient(to bottom,transparent 0%,black 14%,black 86%,transparent 100%);cursor:pointer!important;touch-action:pan-y!important}.projects-ticker-track{display:flex;flex-direction:column;transition:transform .55s cubic-bezier(.16,1,.3,1);will-change:transform;touch-action:pan-y!important}.projects-ticker-item{height:72px;display:flex;align-items:center;font-family:var(--font-display);font-size:clamp(1.8rem,4.4vw,3.2rem);font-weight:800;text-transform:uppercase;letter-spacing:-.02em;color:#ff242438;transform:scale(.98);transform-origin:left center;transition:color .25s ease,transform .35s cubic-bezier(.16,1,.3,1);cursor:pointer!important;white-space:nowrap;text-decoration:none}.projects-ticker-item.active{color:#ff2424!important;-webkit-text-fill-color:#FF2424!important;opacity:1!important;transform:scale(1.02) translate(12px);font-weight:900}.projects-ticker-item:hover:not(.active){color:#ff2424a6;transform:translate(6px)}.projects-ticker-item.item-more-projects{display:inline-flex;align-items:center;gap:16px;color:#ff242459}.projects-ticker-item.item-more-projects.active{color:#ff2424!important;-webkit-text-fill-color:#FF2424!important}.projects-ticker-item.item-more-projects .item-arrow{display:inline-block;font-size:.85em;transition:transform .3s cubic-bezier(.16,1,.3,1)}.projects-ticker-item.item-more-projects:hover .item-arrow,.projects-ticker-item.item-more-projects.active .item-arrow{transform:translate(12px)}.ticker-cursor-preview{position:fixed;top:0;left:0;width:clamp(160px,16vw,220px);aspect-ratio:1 / 1;border-radius:2px!important;border:2px solid #FF2424;background:#fff;box-shadow:0 16px 42px #00000059,0 4px 14px #ff242438;overflow:hidden;pointer-events:none;z-index:9999;opacity:0;transform:translate(24px,24px) scale(.7);transition:opacity .2s cubic-bezier(.16,1,.3,1),transform .2s cubic-bezier(.16,1,.3,1);will-change:transform,opacity}.ticker-cursor-preview.active{opacity:1;transform:translate(24px,24px) scale(1)}.ticker-cursor-preview img{width:100%;height:100%;object-fit:cover;display:block;border-radius:2px!important}.ticker-cursor-badge{position:absolute;bottom:0;left:0;right:0;padding:6px 10px;background:linear-gradient(to top,rgba(0,0,0,.88) 0%,transparent 100%);color:#fff;font-family:var(--font-mono);font-size:.68rem;font-weight:700;display:flex;align-items:center;justify-content:space-between;letter-spacing:.04em;text-transform:lowercase}.ticker-cursor-arrow{font-size:.9em;color:#ff2424}@media (hover: none) and (pointer: coarse){.ticker-cursor-preview{display:none!important}.projects-ticker-viewport,.projects-ticker-item{cursor:pointer!important}}.projects-ticker-hud{grid-column:1 / -1;margin-top:1rem;padding-top:1.5rem;border-top:1px solid rgba(255,36,36,.18);display:flex;align-items:center;justify-content:space-between;gap:1.5rem;flex-wrap:wrap;color:var(--color-red)}.hud-meta-left{display:flex;align-items:center;gap:12px}.hud-counter{font-family:var(--font-mono);font-size:.85rem;font-weight:700;color:var(--color-red);opacity:.85}.hud-pill{font-family:var(--font-mono);font-size:.74rem;font-weight:700;letter-spacing:.05em;padding:0;border-radius:0;background:transparent;border:none;color:var(--color-red);text-transform:lowercase;opacity:.8}.hud-pill:before{content:"// ";opacity:.6}.hud-desc{font-size:.95rem;line-height:1.5;color:var(--color-red);opacity:.88;max-width:55ch;flex:1 1 300px}.hud-actions{display:flex;align-items:center;gap:12px}.hud-action-btn{display:inline-flex;align-items:center;gap:6px;padding:3px 0;border-radius:0;background:transparent;color:var(--color-red);border:none;border-bottom:1.5px solid var(--color-red);font-family:var(--font-mono);font-size:.76rem;font-weight:700;text-decoration:none;transition:opacity .2s ease,transform .2s ease}.hud-action-btn:hover{opacity:.65;transform:translate(3px);background:transparent;color:var(--color-red)}.coverflow-stage{position:relative;width:100%;min-height:460px;background:transparent;display:flex;flex-direction:column;align-items:center;justify-content:center;perspective:800px;transform-style:preserve-3d;touch-action:pan-y!important;margin-top:1.5rem;margin-bottom:2rem;user-select:none;-webkit-user-select:none}.boxes{position:relative;width:100%;height:clamp(340px,40vmin,420px);overflow:hidden;transform-style:preserve-3d;perspective:800px;touch-action:pan-y!important;cursor:grab;user-select:none;-webkit-user-select:none}.boxes:active,.boxes.is-dragging{cursor:grabbing!important}.box{transform-style:preserve-3d;position:absolute;top:48%;left:50%;height:clamp(200px,24vmin,260px);width:clamp(200px,24vmin,260px);border-radius:2px!important;overflow:hidden;cursor:grab;background:#fff;box-shadow:0 16px 36px #0000002e,0 2px 8px #ff242414;border:1px solid rgba(255,36,36,.2);display:none;user-select:none;-webkit-user-select:none}.box:active,.box.is-dragging{cursor:grabbing!important}.box img{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;display:block;pointer-events:none;-webkit-user-select:none;user-select:none;border-radius:2px!important}@supports (-webkit-box-reflect: below){.box{-webkit-box-reflect:below 4px linear-gradient(transparent 55%,rgba(0,0,0,.22) 100%)}}.coverflow-footer-action{display:flex;justify-content:center;align-items:center;margin-top:1.5rem;position:relative;z-index:50}.coverflow-more-btn{display:inline-flex;align-items:center;gap:8px;padding:4px 0;border-radius:0;border:none;border-bottom:1.5px solid var(--color-red);background:transparent;color:var(--color-red);font-family:var(--font-mono);font-size:.84rem;font-weight:700;letter-spacing:.04em;text-transform:lowercase;text-decoration:none;cursor:pointer;transition:opacity .2s ease,transform .2s ease}.coverflow-more-btn:hover{opacity:.65;transform:translate(4px);background:transparent;color:var(--color-red)}.coverflow-more-btn .more-arrow{font-size:1.1em;transition:transform .2s ease}.coverflow-more-btn:hover .more-arrow{transform:translate(4px)}.drag-proxy{visibility:hidden;position:absolute}body.coverflow-is-dragging,body.coverflow-is-dragging *{cursor:grabbing!important;-webkit-user-select:none!important;user-select:none!important}.page-proyectos{background:#fff!important;color:#ff2424!important;overflow-y:auto!important}.proyectos-editorial-page{padding-top:clamp(82px,8.5vw,96px);padding-bottom:0;min-height:100vh}.proyectos-editorial-inner{max-width:1080px;margin:0 auto;padding:0 clamp(1.25rem,4vw,3rem)}.p-feed-section{display:flex;flex-direction:column;gap:clamp(1.25rem,2.5vw,2rem)}.p-feed-header{display:flex;flex-direction:column;gap:0;max-width:100%}.p-feed-header-top{display:flex;align-items:center;gap:14px}.p-feed-header-top .section-number{margin:0;font-size:.8rem;line-height:1}.p-feed-main-title{font-family:var(--font-display);font-size:clamp(2.4rem,5.5vw,4.4rem);font-weight:900;letter-spacing:-.03em;color:#ff2424;line-height:1.05;margin:0;text-transform:lowercase}.p-feed-lead{font-size:clamp(1.05rem,1.8vw,1.25rem);line-height:1.6;color:#ff2424;opacity:.88;margin:0;max-width:68ch}.p-feed-list{display:flex;flex-direction:column;gap:clamp(4rem,8vw,7rem)}.p-feed-item{display:flex;flex-direction:column;gap:1.25rem;cursor:pointer;border:none;background:transparent;padding:0;margin:0;-webkit-user-select:none;user-select:none}.p-feed-photo-wrapper{width:100%;aspect-ratio:16 / 9;overflow:hidden;position:relative;background:#fff;border-radius:0!important;border:none!important}.p-feed-photo{width:100%;height:100%;object-fit:cover;display:block;border-radius:0!important;filter:url(#duotone-red-white);-webkit-filter:url(#duotone-red-white);transition:transform .4s cubic-bezier(.16,1,.3,1);pointer-events:none}.p-feed-photo-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:#ff242400;display:flex;align-items:center;justify-content:center;opacity:0;transition:all .25s cubic-bezier(.16,1,.3,1)}.p-feed-item:hover .p-feed-photo-overlay{background:#ff2424e0;opacity:1}.p-feed-photo-badge{color:#fff;font-family:var(--font-mono);font-size:clamp(.9rem,1.6vw,1.1rem);font-weight:800;letter-spacing:.05em;text-transform:lowercase;padding:6px 0;border:none;border-bottom:2px solid #FFFFFF;border-radius:0;transform:translateY(10px);transition:transform .25s cubic-bezier(.16,1,.3,1)}.p-feed-item:hover .p-feed-photo-badge{transform:translateY(0)}.p-feed-info{display:flex;flex-direction:column;gap:.6rem}.p-feed-meta-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.p-feed-num{font-family:var(--font-mono);font-size:.88rem;font-weight:800;color:#ff2424;opacity:.75}.p-feed-tag{font-family:var(--font-mono);font-size:.76rem;font-weight:700;letter-spacing:.05em;color:#ff2424;background:transparent;border:none;border-radius:0;padding:0;text-transform:lowercase;opacity:.85}.p-feed-tag:before{content:"// ";opacity:.6}.p-feed-tag.award{background:transparent;color:#ff2424;font-weight:800;opacity:1}.p-feed-year{font-family:var(--font-mono);font-size:.76rem;font-weight:700;color:#ff2424;opacity:.7}.p-feed-title{font-family:var(--font-display);font-size:clamp(1.8rem,3.8vw,2.8rem);font-weight:800;letter-spacing:-.025em;color:#ff2424;margin:0;text-transform:lowercase}.p-feed-desc{font-size:clamp(.96rem,1.6vw,1.1rem);line-height:1.6;color:#ff2424;opacity:.88;margin:0;max-width:70ch}.p-feed-switcher-bar{display:flex;align-items:center;gap:clamp(1rem,2.5vw,2rem);flex-wrap:wrap;padding:1rem 0;margin-top:.5rem;margin-bottom:clamp(1.5rem,3vw,2.5rem);border-top:1px solid rgba(255,36,36,.2);border-bottom:1px solid rgba(255,36,36,.2)}.p-switcher-label{font-family:var(--font-mono);font-size:.76rem;font-weight:700;color:#ff2424;opacity:.65;text-transform:lowercase;letter-spacing:.05em}.p-switcher-btn{display:inline-flex;align-items:center;gap:8px;background:transparent;border:none;border-bottom:1.5px solid transparent;color:#ff2424;font-family:var(--font-mono);font-size:.84rem;font-weight:700;letter-spacing:.03em;text-transform:lowercase;cursor:pointer;padding:4px 0;opacity:.55;transition:opacity .2s ease,border-color .2s ease;border-radius:0!important}.p-switcher-btn:hover{opacity:.9}.p-switcher-btn.active{opacity:1;border-bottom-color:#ff2424}.p-switcher-dot{width:6px;height:6px;border-radius:50%;background:#ff2424;display:inline-block;opacity:.4;transition:opacity .2s ease,transform .2s ease}.p-switcher-btn.active .p-switcher-dot{opacity:1;transform:scale(1.2);box-shadow:0 0 6px #ff242499}.p-feed-thumb-list{display:flex;flex-direction:column;gap:clamp(2.5rem,5vw,4.5rem);width:100%}.p-feed-split-card{display:flex;align-items:flex-start;justify-content:space-between;gap:clamp(1.5rem,4vw,3.5rem);padding-bottom:clamp(2.5rem,5vw,4rem);border-bottom:1px solid rgba(255,36,36,.2);cursor:pointer;position:relative;text-decoration:none;color:inherit;transition:transform .2s ease}.p-split-content{flex:1;display:flex;flex-direction:column;gap:.75rem;max-width:780px}.p-feed-split-card.no-thumb .p-split-content{max-width:900px}.p-split-action{margin-top:.6rem}.p-split-action span{font-family:var(--font-mono);font-size:.82rem;font-weight:800;color:#ff2424;letter-spacing:.03em;text-transform:lowercase;border-bottom:1.5px solid #FF2424;padding-bottom:2px;display:inline-flex;align-items:center;gap:6px;transition:opacity .2s ease,transform .2s ease}.p-feed-split-card:hover .p-split-action span{opacity:.65;transform:translate(4px)}.p-feed-split-card:hover .p-feed-title{transform:translate(4px)}.p-split-thumb-wrapper{width:clamp(220px,28vw,380px);aspect-ratio:16 / 9;flex-shrink:0;overflow:hidden;position:relative;background:#000;border-radius:0!important;border:1px solid rgba(255,36,36,.25);margin-top:.25rem;transition:border-color .25s ease,transform .25s ease}.p-split-thumb-img{width:100%;height:100%;object-fit:cover;display:block;border-radius:0!important;filter:url(#duotone-red-white);-webkit-filter:url(#duotone-red-white);transition:transform .4s cubic-bezier(.16,1,.3,1);pointer-events:none}.p-feed-split-card:hover .p-split-thumb-wrapper{border-color:#ff2424}.p-feed-split-card:hover .p-split-thumb-img{transform:scale(1.05)}@media (max-width: 768px){.p-feed-split-card{flex-direction:row;align-items:flex-start;gap:1.25rem;padding-bottom:2rem}.p-split-thumb-wrapper{width:clamp(100px,28vw,150px);aspect-ratio:16 / 9}}@media (max-width: 480px){.p-feed-split-card{flex-direction:column-reverse;gap:1.25rem}.p-split-thumb-wrapper{width:100%;aspect-ratio:16 / 9}}.p-feed-terminal-wrapper{width:100%;aspect-ratio:16 / 9;background:#080808;position:relative;overflow:hidden;border-radius:0!important;border:1px solid rgba(255,36,36,.28);display:flex;flex-direction:column;box-sizing:border-box;transition:border-color .3s ease}.p-feed-terminal-bar{display:flex;align-items:center;justify-content:space-between;padding:.65rem 1.25rem;background:#111;border-bottom:1px solid rgba(255,36,36,.2);-webkit-user-select:none;user-select:none}.terminal-dot{width:8px;height:8px;background:#ff2424;border-radius:50%;display:inline-block;box-shadow:0 0 8px #ff2424b3}.terminal-title{font-family:var(--font-mono);font-size:.76rem;font-weight:700;color:#fff;letter-spacing:.04em;text-transform:lowercase;opacity:.88}.terminal-status{font-family:var(--font-mono);font-size:.72rem;font-weight:700;color:#ff2424;letter-spacing:.05em;text-transform:lowercase}.p-feed-terminal-body{flex:1;padding:clamp(1rem,2.5vw,2.2rem);overflow:hidden;display:flex;align-items:center;background:radial-gradient(circle at 10% 20%,#ff24240f,#0000 70%)}.terminal-code{margin:0;padding:0;font-family:var(--font-mono);font-size:clamp(.72rem,1.2vw,.92rem);line-height:1.65;color:#d4d4d4;white-space:pre-wrap;word-break:break-word;pointer-events:none;width:100%}.terminal-code .c-red{color:#ff2424;font-weight:700}.terminal-code .c-white{color:#fff;font-weight:600}.terminal-code .c-dim{color:#666;font-style:italic}.p-feed-item:hover .p-feed-terminal-wrapper{border-color:#ff2424}.p-directory-section{display:flex;flex-direction:column;width:100%}.p-dir-table{width:100%;display:flex;flex-direction:column;border-top:1.5px solid #FF2424}.p-dir-head-row{display:grid;grid-template-columns:80px 2.5fr 2.2fr 1.8fr 75px 48px;align-items:center;padding:1rem 0 1rem .5rem;border-bottom:1px solid rgba(255,36,36,.35);font-family:var(--font-mono);font-size:.72rem;font-weight:800;letter-spacing:.08em;text-transform:lowercase;color:#ff2424;opacity:1}.p-dir-head-row span:last-child{justify-self:start;text-align:left}.p-dir-row{display:grid;grid-template-columns:80px 2.5fr 2.2fr 1.8fr 75px 48px;align-items:baseline;padding:clamp(1.2rem,2.2vw,1.8rem) 0 clamp(1.2rem,2.2vw,1.8rem) .5rem;border-bottom:1px solid rgba(255,36,36,.18);cursor:pointer;transition:background-color .2s ease,transform .2s ease;position:relative;text-decoration:none;color:inherit}.p-dir-row:hover{background-color:#ff242409}.p-dir-status{font-family:var(--font-mono);font-size:.75rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:#ff2424;opacity:1;display:inline-flex;align-items:center;gap:5px}.p-dir-status.live,.p-dir-status.prod,.p-dir-status.open,.p-dir-status.lab{color:#ff2424;opacity:1}.p-dir-title-cell{display:flex;flex-direction:column;gap:.25rem}.p-dir-title{font-family:var(--font-display);font-size:clamp(1.25rem,2.2vw,1.8rem);font-weight:800;letter-spacing:-.02em;color:#ff2424;margin:0;text-transform:lowercase;transition:transform .2s ease}.p-dir-row:hover .p-dir-title{transform:translate(4px)}.p-dir-category{font-family:var(--font-mono);font-size:.74rem;color:#ff2424;opacity:1;text-transform:lowercase}.p-dir-role{font-family:var(--font-mono);font-size:.82rem;font-weight:600;color:#ff2424;opacity:1;text-transform:lowercase}.p-dir-stack{font-family:var(--font-mono);font-size:.78rem;color:#ff2424;opacity:1}.p-dir-year{font-family:var(--font-mono);font-size:.82rem;font-weight:700;color:#ff2424;opacity:1}.p-dir-action{font-family:var(--font-mono);font-size:1.15rem;font-weight:800;color:#ff2424;border-bottom:none;line-height:1;justify-self:start;transition:opacity .2s ease,transform .2s ease}.p-dir-row:hover .p-dir-action{opacity:.7;transform:translate(2px,-2px)}.p-dir-floating-preview{position:fixed;pointer-events:none;width:320px;aspect-ratio:16 / 9;background:transparent;border:none;z-index:1000;opacity:0;transform:translate(-50%,-50%) scale(.94);transition:opacity .18s ease,transform .18s ease;overflow:hidden;box-shadow:0 16px 36px #ff242424,0 4px 14px #0000000f;display:none}.p-dir-floating-preview.visible{opacity:1;transform:translate(25px,25px) scale(1)}.p-dir-floating-preview img,.p-dir-floating-preview video{width:100%;height:100%;object-fit:cover;display:block;border:none;filter:url(#duotone-red-white);-webkit-filter:url(#duotone-red-white)}.p-dir-preview-text-box{width:100%;height:100%;background:#fff;border:none;padding:18px 20px;box-sizing:border-box;display:flex;flex-direction:column;justify-content:space-between}.preview-text-tag{font-family:var(--font-mono);font-size:.68rem;font-weight:700;color:#ff2424;letter-spacing:.05em;text-transform:lowercase;opacity:.85}.preview-text-name{font-family:var(--font-display);font-size:1.35rem;font-weight:800;color:#ff2424;letter-spacing:-.02em;margin:.25rem 0;text-transform:lowercase;line-height:1.2}.preview-text-desc{font-family:var(--font-mono);font-size:.72rem;color:#ff2424;opacity:.8;text-transform:lowercase}.preview-text-arrow{font-family:var(--font-mono);font-size:1.15rem;font-weight:800;color:#ff2424;margin-top:.4rem;border-bottom:none;display:inline-block;align-self:flex-start;line-height:1}@media (max-width: 900px){.p-dir-head-row{display:none}.p-dir-row{grid-template-columns:auto 1fr auto;grid-template-areas:"status title year" "status role role" "status stack action";row-gap:.35rem;column-gap:.85rem;padding:1.25rem .25rem}.p-dir-status{grid-area:status;font-size:.7rem;padding-top:4px}.p-dir-title-cell{grid-area:title}.p-dir-year{grid-area:year;justify-self:end}.p-dir-role{grid-area:role;font-size:.78rem}.p-dir-stack{grid-area:stack;font-size:.74rem}.p-dir-action{grid-area:action;justify-self:end}.p-dir-floating-preview{display:none!important}}.p-detail-section{display:flex;flex-direction:column;padding:0 clamp(1.25rem,5vw,4rem) 8rem;max-width:990px;margin:0 auto;width:100%}.p-detail-top-nav{padding-top:.25rem;padding-bottom:clamp(.55rem,1.2vw,.75rem);border-bottom:1px solid rgba(255,36,36,.2);margin-bottom:clamp(1.2rem,2.5vw,1.6rem)}.p-detail-back-link{display:inline-flex;align-items:center;gap:10px;background:transparent;border:none;color:#ff2424;font-family:var(--font-mono);font-size:.86rem;font-weight:800;letter-spacing:.04em;text-transform:lowercase;cursor:pointer;padding:0;transition:transform .2s ease,opacity .2s ease}.p-detail-back-link:hover{transform:translate(-4px);opacity:.75}.p-case-study{display:flex;flex-direction:column;gap:clamp(2.5rem,5vw,4rem);max-width:990px;width:100%}.p-case-header{display:flex;flex-direction:column;gap:1.25rem;max-width:990px;width:100%}.p-case-meta-top{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.p-case-num{font-family:var(--font-mono);font-size:.82rem;font-weight:800;color:#ff2424;letter-spacing:.05em;opacity:.8}.p-case-tag{font-family:var(--font-mono);font-size:.78rem;font-weight:700;letter-spacing:.05em;color:#ff2424;background:transparent;border:none;border-radius:0;padding:0;text-transform:lowercase;opacity:.85}.p-case-tag:before{content:"// ";opacity:.6}.p-case-tag.award{background:transparent;color:#ff2424;font-weight:800;opacity:1}.p-case-year{font-family:var(--font-mono);font-size:.78rem;font-weight:700;color:#ff2424;opacity:.75}.p-case-title{font-family:var(--font-display);font-size:clamp(2.6rem,6vw,4.6rem);font-weight:900;letter-spacing:-.035em;color:#ff2424;line-height:1.05;margin:0;text-transform:lowercase}.p-case-lead{font-size:clamp(1.15rem,2vw,1.4rem);line-height:1.6;color:#ff2424;opacity:.92;margin:0;max-width:68ch}.p-case-actions,.p-case-footer-actions{display:flex;align-items:center;gap:clamp(1.2rem,3vw,2.5rem);flex-wrap:wrap;margin-top:1rem;padding-top:.5rem}.p-case-footer-actions{margin-top:clamp(2.5rem,5vw,4rem);padding-top:1.5rem;border-top:1px solid rgba(255,36,36,.25);margin-bottom:1.5rem}.p-case-actions a,.p-case-footer-actions a{display:inline-flex;align-items:center;gap:6px;background:transparent!important;color:#ff2424!important;padding:4px 0!important;border:none!important;border-bottom:1.5px solid #FF2424!important;border-radius:0!important;box-shadow:none!important;font-family:var(--font-mono);font-weight:700;font-size:.88rem;letter-spacing:.03em;text-transform:lowercase;cursor:pointer;transition:opacity .2s ease,transform .2s ease}.p-case-actions a:hover,.p-case-footer-actions a:hover{opacity:.65;transform:translate(4px);box-shadow:none!important;background:transparent!important}.p-case-media-group{display:flex;flex-direction:column;gap:.65rem;width:100%;margin:clamp(1.8rem,3.5vw,2.8rem) 0}.p-case-media-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem;width:100%;margin:clamp(1.8rem,3.5vw,2.8rem) 0}.p-case-media-grid .p-case-media-group{margin:0}.p-case-media-frame.is-portrait{aspect-ratio:9 / 16}.p-case-video-duotone video{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover}.p-case-media-frame.is-portrait img,.p-case-media-frame.is-portrait video{object-position:top center}.p-case-stack{display:flex;flex-wrap:wrap;gap:.45rem;list-style:none;margin:.2rem 0 0;padding:0}.p-case-stack li{font-family:var(--font-mono);font-size:.74rem;font-weight:700;letter-spacing:.04em;text-transform:lowercase;color:var(--color-red);border:1px solid rgba(255,36,36,.45);padding:.28rem .6rem .24rem;line-height:1.2}.p-case-figures{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;margin-top:clamp(1.4rem,3vw,2.2rem);border-top:1px solid rgba(255,36,36,.25);border-bottom:1px solid rgba(255,36,36,.25)}.p-case-figures>div{display:flex;flex-direction:column-reverse;gap:.2rem;padding:.9rem .75rem .9rem 0}.p-case-figures>div+div{padding-left:.9rem;border-left:1px solid rgba(255,36,36,.25)}.p-case-figures dd{font-family:var(--font-display);font-size:clamp(1.5rem,3.2vw,2.4rem);font-weight:800;letter-spacing:-.03em;line-height:1;color:var(--color-red)}.p-case-figures dt{font-family:var(--font-mono);font-size:.72rem;letter-spacing:.08em;color:var(--color-red);opacity:.7}@media (max-width: 560px){.p-case-figures{grid-template-columns:repeat(2,minmax(0,1fr))}.p-case-figures>div:nth-child(3){padding-left:0;border-left:none}.p-case-figures>div:nth-child(n+3){border-top:1px solid rgba(255,36,36,.25)}}@media (max-width: 768px){.p-case-media-grid{grid-template-columns:1fr;gap:1.5rem}}.p-case-media-frame{width:100%;aspect-ratio:16 / 9;overflow:hidden;position:relative;background:#fff!important;border-radius:0!important;border:none!important;box-shadow:none!important;cursor:pointer}.p-case-media-frame.is-static-frame{cursor:default!important}.p-case-photo-static{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;display:block;border-radius:0!important;border:none!important;filter:none!important;-webkit-filter:none!important;opacity:1!important;visibility:visible!important;pointer-events:auto!important;transform:none!important;transition:none!important}.p-case-media-frame.is-static-frame:hover .p-case-photo-static,.p-case-media-frame.is-static-frame:hover img{opacity:1!important;visibility:visible!important;filter:none!important;-webkit-filter:none!important;transform:none!important}img[src*=vellum-banner],img[src*=speedwork-banner],.h-project-photo img[src*=vellum-banner],.h-project-photo img[src*=speedwork-banner],.p-dir-floating-preview img[src*=vellum-banner],.p-dir-floating-preview img[src*=speedwork-banner],.p-feed-photo[src*=vellum-banner],.p-feed-photo[src*=speedwork-banner],.p-split-thumb-img[src*=vellum-banner],.p-split-thumb-img[src*=speedwork-banner]{filter:none!important;-webkit-filter:none!important;transform:none!important}.p-case-photo-base{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;display:block;border-radius:0!important;border:none!important;filter:none!important;-webkit-filter:none!important;z-index:1;opacity:0!important;visibility:hidden!important;pointer-events:none!important;transition:opacity .45s cubic-bezier(.22,1,.36,1),visibility .45s}.p-case-photo-duotone{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;display:block;border-radius:0!important;border:none!important;filter:url(#duotone-red-white);-webkit-filter:url(#duotone-red-white);opacity:1!important;visibility:visible!important;z-index:2;pointer-events:none;transition:opacity .45s cubic-bezier(.22,1,.36,1),visibility .45s}.duotone-detail,.duotone-detail img,.duotone-detail video,img.duotone-detail,video.duotone-detail,.p-case-photo-duotone.duotone-detail{filter:url(#duotone-red-white-detail)!important;-webkit-filter:url(#duotone-red-white-detail)!important}.duotone-burn,.duotone-burn img,img.duotone-burn,.p-case-photo-duotone.duotone-burn{filter:url(#duotone-red-white-burn) contrast(1.16) brightness(1.04)!important;-webkit-filter:url(#duotone-red-white-burn) contrast(1.16) brightness(1.04)!important}@media (hover: hover) and (pointer: fine){.p-case-media-frame:hover .p-case-photo-duotone{opacity:0!important;visibility:hidden!important}.p-case-media-frame:hover .p-case-photo-base{opacity:1!important;visibility:visible!important}}.p-case-media-frame.is-color .p-case-photo-duotone{opacity:0!important;visibility:hidden!important}.p-case-media-frame.is-color .p-case-photo-base{opacity:1!important;visibility:visible!important}.p-photo-color-btn{position:absolute;bottom:12px;right:12px;width:32px;height:32px;border-radius:50%;background:#ffffff52;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(255,36,36,.18);color:#ff2424;display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:5;padding:0;transition:transform .2s ease,background-color .25s ease,color .25s ease,border-color .25s ease,box-shadow .25s ease;box-shadow:0 2px 8px #0000000d;-webkit-tap-highlight-color:transparent!important;touch-action:manipulation}.p-photo-color-btn:hover{transform:scale(1.08);border-color:#ff2424;background:#ffffffa6}.p-photo-color-btn:active{transform:scale(.92)}.p-case-media-frame.is-color .p-photo-color-btn,.p-photo-color-btn.active{background:#ff242461;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);color:#fff;border-color:#ffffff73;box-shadow:0 4px 14px #ff242440}.p-case-media-frame.is-color .p-photo-color-btn:hover,.p-photo-color-btn.active:hover{background:#ff24248c;border-color:#ffffffb3}.p-color-icon{width:15px;height:15px;display:block;transition:transform .35s ease}.p-photo-color-btn.active .p-color-icon{transform:rotate(180deg)}.p-case-caption{position:static!important;display:block!important;width:100%;background:transparent!important;color:#ff2424!important;font-family:var(--font-mono);font-size:.74rem;font-weight:700;letter-spacing:.04em;padding:0!important;margin:.4rem 0 0;text-align:left;text-transform:lowercase;opacity:.88}.p-case-caption:before{content:"↗ ";color:#ff2424}.p-case-narrative{display:flex;flex-direction:column;gap:1rem;max-width:990px}.p-narrative-heading{font-family:var(--font-display);font-size:clamp(1.5rem,2.6vw,2rem);font-weight:800;letter-spacing:-.02em;color:#ff2424;margin:0;text-transform:lowercase}.p-narrative-body{font-size:clamp(1.05rem,1.8vw,1.22rem);line-height:1.7;color:#ff2424;opacity:.9;margin:0}.p-hackathon-narrative{margin-top:.5rem;display:flex;flex-direction:column;gap:1rem}.p-hackathon-team-narrative{margin-top:2rem;display:flex;flex-direction:column;gap:.5rem}.p-hackathon-built-by{font-family:var(--font-mono);font-size:.82rem;font-weight:700;letter-spacing:.03em;color:#ff2424;opacity:.85;margin:0}.p-hackathon-team-section{display:flex;flex-direction:column;gap:.35rem;margin:.2rem 0 .5rem}.p-hackathon-team-label{font-family:var(--font-mono);font-size:.78rem;font-weight:800;letter-spacing:.06em;color:#ff2424;text-transform:lowercase;opacity:.82}.p-hackathon-team-list{list-style:none;padding:0;margin:.2rem 0 0;display:flex;flex-direction:column;gap:.35rem}.p-hackathon-team-list li{font-family:var(--font-mono);font-size:.92rem;font-weight:700;color:#ff2424;display:block;letter-spacing:-.01em}.p-hackathon-genesis-quote{font-family:var(--font-body);font-size:clamp(1.02rem,1.7vw,1.18rem);line-height:1.68;color:#ff2424;opacity:.92;margin:.2rem 0 0;padding-left:1.25rem;border-left:2px solid rgba(255,36,36,.35);font-style:normal}.p-project-intro-narrative{margin-top:1rem}.p-case-carousel-wrapper{position:relative;width:100%;margin:clamp(1.8rem,3.5vw,2.8rem) 0}.p-case-carousel-frame{position:relative;width:100%;aspect-ratio:16 / 9;overflow:visible!important;background:#fff}.p-case-carousel-viewport{position:relative;width:100%;height:100%;aspect-ratio:16 / 9;overflow:hidden!important;border-radius:0!important}.p-case-carousel-track{display:flex;flex-direction:row;width:100%;height:100%;transition:transform .85s cubic-bezier(.16,1,.3,1);will-change:transform}.p-case-carousel-slide{position:relative;flex:0 0 100%;width:100%;height:100%;aspect-ratio:16 / 9;overflow:hidden}.p-case-carousel-slide img{width:100%;height:100%;object-fit:cover;display:block}.p-case-carousel-frame .p-photo-color-btn{position:absolute;bottom:14px;right:14px;z-index:10}.p-carousel-btn{position:absolute;top:50%;transform:translateY(-50%);z-index:11;width:28px;height:34px;background:transparent!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;border:none!important;box-shadow:none!important;color:#0ff!important;mix-blend-mode:difference!important;text-shadow:none!important;filter:none!important;font-family:var(--font-display);font-size:1.35rem;font-weight:800;display:flex;align-items:center;justify-content:center;cursor:pointer;padding:0;line-height:1;opacity:.95;transition:transform .2s ease,opacity .2s ease;user-select:none;-webkit-user-select:none;touch-action:manipulation}.p-carousel-btn:hover{opacity:1;transform:translateY(-50%) scale(1.15);color:#0ff!important;mix-blend-mode:difference!important}.p-carousel-btn:active{transform:translateY(-50%) scale(.92);opacity:1}.p-carousel-btn-prev{left:6px}.p-carousel-btn-next{right:6px}.p-case-media-frame.is-color .p-carousel-btn,.p-case-media-frame.is-color .p-carousel-btn:hover{color:#ff2424!important;mix-blend-mode:normal!important}@media (hover: hover) and (pointer: fine){.p-case-media-frame:hover .p-carousel-btn{color:#ff2424!important;mix-blend-mode:normal!important}}@media (min-width: 1024px){.p-carousel-btn{width:44px;height:44px;font-size:2.2rem;color:#ff2424!important;mix-blend-mode:normal!important;text-shadow:none!important;filter:none!important;opacity:.88}.p-carousel-btn-prev{left:-58px}.p-carousel-btn-next{right:-58px}.p-carousel-btn:hover{opacity:1;color:#ff2424!important;mix-blend-mode:normal!important;transform:translateY(-50%) scale(1.25)}.p-carousel-btn:active{transform:translateY(-50%) scale(.95)}}.p-carousel-counter{font-weight:800;letter-spacing:.06em}.p-detail-bottom-nav{margin-top:clamp(3rem,6vw,4.5rem);padding-top:3rem;border-top:1px solid rgba(255,36,36,.16);display:flex;align-items:center;justify-content:flex-start}@media (max-width: 640px){.projects-ticker-stage{grid-template-columns:1fr;gap:1.5rem;padding:1.8rem 1.25rem}.projects-ticker-label-col{height:auto;border-right:none;border-bottom:1px solid rgba(255,255,255,.2);padding-right:0;padding-bottom:.75rem;justify-content:flex-start}.projects-ticker-vertical-label{writing-mode:horizontal-tb;transform:none;letter-spacing:.12em}.projects-ticker-viewport{height:270px}.projects-ticker-item{height:54px;font-size:clamp(1.5rem,6vw,2.2rem)}.coverflow-stage{height:440px}.coverflow-header{left:16px;right:16px;top:16px}.coverflow-controls{bottom:16px;width:90%;justify-content:space-between}}.h-projects-container{width:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;user-select:none;-webkit-user-select:none}.h-projects-top-label{font-family:var(--font-display);font-size:clamp(2.2rem,4.8vw,3.8rem);font-weight:900;color:#ff2424;letter-spacing:-.025em;text-transform:lowercase;margin:0 0 clamp(1rem,2.2vh,1.8rem);text-align:center;width:100%;line-height:1}.h-projects-strip-wrapper{width:100vw;max-width:100vw;overflow:hidden;position:relative;touch-action:pan-y!important}.h-projects-track{display:flex;flex-direction:row;align-items:flex-start;gap:0;margin:0;padding:0;width:max-content;will-change:transform;transform:translateZ(0);-webkit-transform:translate3d(0,0,0);backface-visibility:hidden;-webkit-backface-visibility:hidden;touch-action:pan-y!important}.h-project-card{flex:0 0 clamp(440px,68vw,860px);max-width:min(860px,calc((100vh - 190px) * (16 / 9)));margin:0;padding:0;text-decoration:none;color:#ff2424;display:flex;flex-direction:column;gap:.85rem;cursor:none!important;user-select:none;-webkit-user-select:none;background:transparent;transform:translateZ(0);-webkit-transform:translateZ(0)}@media (max-width: 640px){.h-project-card{flex:0 0 100vw;width:100vw;max-width:100vw}}.h-project-photo{width:100%;aspect-ratio:16 / 9;overflow:hidden;position:relative;border-radius:0!important;margin:0;padding:0;background:#fff;border:none!important;cursor:none!important;isolation:isolate;contain:paint}.h-project-photo img,.h-project-photo video{width:100%;height:100%;object-fit:cover;display:block;border-radius:0!important;pointer-events:none;transform:translateZ(0);-webkit-transform:translate3d(0,0,0);backface-visibility:hidden;-webkit-backface-visibility:hidden;will-change:transform}.h-project-photo img{filter:url(#duotone-red-white);-webkit-filter:url(#duotone-red-white)}.h-project-photo video,.p-case-video-duotone video{filter:grayscale(100%) contrast(1.25) brightness(1.05)!important;-webkit-filter:grayscale(100%) contrast(1.25) brightness(1.05)!important}.h-video-duotone-screen{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;background:#ff2424;mix-blend-mode:screen;pointer-events:none;z-index:2}.p-case-video-duotone{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;overflow:hidden;isolation:isolate;z-index:2;transition:opacity .4s cubic-bezier(.16,1,.3,1),visibility .4s}.p-case-media-frame:hover .p-case-video-duotone,.p-case-media-frame.is-color .p-case-video-duotone{opacity:0!important;visibility:hidden!important}.h-project-card:hover .h-project-photo img,.h-project-card:hover .h-project-photo video{transform:translateZ(0)!important}.h-project-info{display:flex;flex-direction:column;gap:.35rem;padding:.6rem 1.4rem .2rem;max-width:100%;cursor:none!important}.h-project-meta{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.h-project-num{font-family:var(--font-mono);font-size:.85rem;font-weight:800;color:#ff2424;opacity:.75}.h-project-name{font-family:var(--font-display);font-size:clamp(1.2rem,2.2vw,1.55rem);font-weight:800;letter-spacing:-.02em;color:#ff2424;margin:0;text-transform:lowercase}.h-project-tag{font-family:var(--font-mono);font-size:.72rem;font-weight:700;letter-spacing:.05em;color:#ff2424;background:transparent;border:none;border-radius:0;padding:0;text-transform:lowercase;opacity:.8}.h-project-tag:before{content:"// ";opacity:.6}.h-project-desc{font-size:.9rem;line-height:1.5;color:#ff2424;opacity:.85;margin:0;max-width:65ch}.h-project-card-more .h-project-photo{border:none!important}.h-more-overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;gap:16px;background:#ff2424c7;color:#fff;font-family:var(--font-display);font-size:clamp(1.8rem,3.6vw,2.8rem);font-weight:900;letter-spacing:-.02em;text-transform:uppercase;transition:background .3s ease}.h-project-card-more:hover .h-more-overlay{background:#ff2424e0}.h-more-arrow{font-size:1em;transition:transform .3s cubic-bezier(.16,1,.3,1)}.h-project-card-more:hover .h-more-arrow{transform:translate(12px)}.h-cursor-follow{position:fixed;top:0;left:0;pointer-events:none;z-index:99999;opacity:0;visibility:hidden;background:#0ff;color:#000;mix-blend-mode:difference;font-family:var(--font-mono);font-size:.76rem;font-weight:700;letter-spacing:.04em;text-transform:lowercase;padding:6px 12px;border-radius:0;box-shadow:none;border:none;outline:none;white-space:nowrap;contain:layout paint style;backface-visibility:hidden;-webkit-backface-visibility:hidden;will-change:transform,opacity;transform:translate3d(-9999px,-9999px,0);transition:opacity .15s ease,visibility .15s ease}.h-cursor-follow.active{opacity:1;visibility:visible}@media (hover: none) and (pointer: coarse){.h-cursor-follow{display:none!important}.h-project-card,.h-project-photo,.h-project-info{cursor:pointer!important}}.inline-split-mask{display:inline-block;overflow:hidden;vertical-align:top;padding-bottom:.12em;margin-bottom:-.12em}.inline-split-word{display:inline-block;will-change:transform}[data-reveal]{opacity:0;transform:translateY(28px);transition:opacity .85s cubic-bezier(.16,1,.3,1),transform .85s cubic-bezier(.16,1,.3,1);will-change:opacity,transform}[data-reveal].is-revealed{opacity:1;transform:translateY(0)}[data-reveal] .benchmark-card:nth-child(1),[data-reveal] .lane-card:nth-child(1),[data-reveal] .pillar-box:nth-child(1),[data-reveal] .skill-category:nth-child(1),[data-reveal] .timeline-item:nth-child(1){transition-delay:.05s}[data-reveal] .benchmark-card:nth-child(3),[data-reveal] .lane-card:nth-child(2),[data-reveal] .pillar-box:nth-child(2),[data-reveal] .skill-category:nth-child(2),[data-reveal] .timeline-item:nth-child(2){transition-delay:.14s}[data-reveal] .benchmark-card:nth-child(5),[data-reveal] .pillar-box:nth-child(3),[data-reveal] .skill-category:nth-child(3),[data-reveal] .timeline-item:nth-child(3){transition-delay:.22s}.site-footer-red{position:relative;width:100vw;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);background:#ff2424;color:#fff;padding:clamp(2.4rem,4.5vw,3.6rem) clamp(1.25rem,4vw,3.5rem) clamp(1.4rem,2.5vw,2rem);box-sizing:border-box;overflow:hidden;margin-top:clamp(2.5rem,4.5vw,4rem);margin-bottom:0!important}.footer-red-inner{max-width:990px;margin:0 auto;display:flex;flex-direction:column;gap:clamp(1.5rem,2.8vw,2.2rem)}.footer-red-statement{display:flex;flex-direction:column;gap:.65rem;max-width:990px}.footer-red-eyebrow{font-family:var(--font-mono);font-size:.72rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#fffc}.footer-red-headline{font-family:var(--font-display);font-size:clamp(1.55rem,3.2vw,2.4rem);font-weight:800;letter-spacing:-.025em;color:#fff;line-height:1.1;margin:0;text-transform:lowercase}.footer-red-subhead{font-size:clamp(.88rem,1.3vw,1rem);line-height:1.45;color:#ffffffe6;margin:0;max-width:58ch}.footer-red-cta-btn{display:inline-flex;align-items:center;gap:8px;font-family:var(--font-display);font-size:clamp(1.1rem,2vw,1.45rem);font-weight:800;color:#fff;background:transparent;padding:4px 0;border-radius:0;border:none;border-bottom:2px solid #FFFFFF;text-decoration:none;width:fit-content;margin-top:.35rem;box-shadow:none;transition:transform .25s cubic-bezier(.16,1,.3,1),opacity .2s ease}.footer-red-cta-btn:hover{transform:translate(5px);opacity:.85;background:transparent;color:#fff;box-shadow:none}.footer-red-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:clamp(1.25rem,2.5vw,2rem);border-top:1px solid rgba(255,255,255,.2);padding-top:clamp(1.25rem,2.5vw,1.8rem)}.footer-red-col{display:flex;flex-direction:column;gap:.55rem}.footer-red-col-title{font-family:var(--font-mono);font-size:.72rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#ffffffa6}.footer-red-links{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.35rem}.footer-red-links a,.footer-red-links span{font-family:var(--font-mono);font-size:.8rem;font-weight:600;color:#fff;text-decoration:none;transition:opacity .2s ease,transform .2s ease;display:inline-block;line-height:1.35}.footer-red-links a:hover{opacity:.75;transform:translate(3px)}.footer-red-text{font-family:var(--font-mono);font-size:.78rem;line-height:1.45;color:#ffffffd9;margin:0}.footer-red-monumental{display:none!important}.footer-red-bottom{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:.85rem;border-top:1px solid rgba(255,255,255,.18);padding-top:1.1rem;font-family:var(--font-mono);font-size:.72rem;font-weight:700;color:#fffc;letter-spacing:.03em}.page-sobre-mi{background:#fff!important;color:#ff2424!important;overflow-y:auto!important}.sobre-mi-page{padding-top:clamp(82px,8.5vw,96px);padding-bottom:0;min-height:100vh}.sobre-mi-inner{max-width:990px;margin:0 auto;padding:0 clamp(1.25rem,5vw,4rem) 8rem;display:flex;flex-direction:column;gap:clamp(3.5rem,7vw,6rem)}.sobre-mi-hero{display:flex;flex-direction:column;gap:1.25rem;width:100%}.sobre-mi-tag-row{display:flex;align-items:center;gap:14px}.sobre-mi-title{font-family:var(--font-display);font-size:clamp(2.6rem,5.5vw,4.5rem);font-weight:900;letter-spacing:-.03em;color:#ff2424;line-height:1.08;margin:0;text-transform:lowercase}.sobre-mi-lead{font-size:clamp(1.1rem,2vw,1.35rem);line-height:1.6;color:#ff2424;opacity:.9;max-width:80ch;margin:0}.sobre-mi-inner .p-case-media-group{margin:0;width:100%}.sobre-mi-metrics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:clamp(2rem,4vw,3.5rem);border-top:1px solid rgba(255,36,36,.18);border-bottom:1px solid rgba(255,36,36,.18);padding:clamp(2.5rem,5vw,3.8rem) 0}.editorial-stat-block{display:flex;flex-direction:column;gap:.6rem;padding:0;border:none;background:transparent}.stat-number{font-family:var(--font-display);font-size:clamp(2.6rem,4.8vw,3.6rem);font-weight:900;color:#ff2424;line-height:1}.stat-label{font-family:var(--font-mono);font-size:.78rem;font-weight:800;letter-spacing:.06em;color:#ff2424;text-transform:uppercase}.stat-desc{font-size:.92rem;line-height:1.55;color:#ff2424;opacity:.88;margin:0}.dual-editorial-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:clamp(2rem,4vw,3.5rem)}.editorial-lane{display:flex;flex-direction:column;gap:1.25rem;padding:0;border:none;background:transparent}.editorial-lane h3{font-family:var(--font-display);font-size:clamp(1.4rem,2.5vw,1.85rem);font-weight:800;letter-spacing:-.02em;color:#ff2424;margin:0;line-height:1.15}.editorial-lane p{font-size:clamp(.98rem,1.6vw,1.08rem);line-height:1.65;color:#ff2424;opacity:.88;margin:0}.pillars-editorial-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:clamp(1.75rem,3.5vw,3rem);border-top:1px solid rgba(255,36,36,.18);padding-top:clamp(2rem,4vw,3rem)}.editorial-pillar{display:flex;flex-direction:column;gap:.75rem;padding:0;border:none;background:transparent}.editorial-pillar h4{font-family:var(--font-display);font-size:clamp(1.2rem,2vw,1.45rem);font-weight:800;letter-spacing:-.015em;color:#ff2424;margin:0}.editorial-pillar p{font-size:.95rem;line-height:1.6;color:#ff2424;opacity:.88;margin:0}.editorial-closing-text{display:flex;flex-direction:column;gap:1.25rem;max-width:990px}.editorial-closing-text p{font-size:clamp(1.05rem,1.8vw,1.22rem);line-height:1.68;color:#ff2424;opacity:.9;margin:0}.editorial-cta-group{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.section-hero{position:relative;isolation:isolate}.hero-background-logo{position:absolute;top:calc(50dvh + var(--hero-elevate-y, 0px));left:50%;width:clamp(280px,60vw,620px);height:auto;transform:translate(-50%,-50%);color:var(--color-red);opacity:0;transition:opacity .408s linear;z-index:-1;pointer-events:none}.site-content-scroller.active .hero-background-logo{opacity:.055}.hero-paths{opacity:var(--hero-buttons-opacity, 0);transform:translateY(var(--hero-buttons-rise, 16px))}.rb-band{position:relative;background:#ff2424;color:#fff;box-shadow:0 0 0 100vmax #ff2424;clip-path:inset(-100vmax -100vmax 0 -100vmax)}.rb-band :is(h1,h2,p,span,a,li,dt,dd){color:#fff}.rb-band-waiting{background:transparent!important;box-shadow:none!important;border-color:transparent!important}.rb-band-waiting>*{opacity:0!important}.rb-band-in>*{animation:rb-content-in .8s cubic-bezier(.16,1,.3,1) both}.rb-band-in>:nth-child(2){animation-delay:.07s}.rb-band-in>:nth-child(3){animation-delay:.14s}.rb-band-in>:nth-child(4){animation-delay:.21s}.rb-band-in>:nth-child(5){animation-delay:.28s}.rb-band-in>:nth-child(n+6){animation-delay:.35s}@keyframes rb-content-in{0%{opacity:0;transform:translate3d(0,18px,0)}to{opacity:1;transform:none}}.rb-drop{position:fixed;top:0;left:0;width:100vw;background:#ff2424;transform-origin:top center;transform:scaleY(0);z-index:96;pointer-events:none;will-change:transform}.rb-side{position:fixed;top:var(--rb-side-top, 100px);left:var(--rb-side-left, 0px);width:var(--rb-side-w, 220px);z-index:95;background:#ff2424;color:#fff;padding:1.1rem .9rem 1.2rem 1.3rem;box-sizing:border-box;transform:translate3d(calc(-100% - var(--rb-side-left, 0px) - 2px),0,0);transition:transform .75s cubic-bezier(.76,0,.24,1);will-change:transform;--selection-background: var(--color-white);--selection-color: var(--color-red)}.rb-side.is-in{transform:none}.rb-side.is-unavailable{display:none}.rb-side .rb-index-list>li{opacity:0;transform:translate3d(-10px,0,0);transition:opacity .3s ease,transform .4s ease}.rb-side.is-in .rb-index-list>li{opacity:1;transform:none;transition:opacity .5s ease,transform .6s cubic-bezier(.16,1,.3,1);transition-delay:calc(.35s + var(--rb-li, 0) * 40ms)}.rb-index-list,.rb-sub{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}.rb-index-list a{display:flex;align-items:baseline;gap:.6em;padding:.32rem 0;color:#fff;text-decoration:none;font-family:var(--font-display);font-size:clamp(1.05rem,1.25vw,1.25rem);font-weight:700;letter-spacing:-.015em;text-transform:lowercase;line-height:1.2;opacity:.62;transition:opacity .25s ease,transform .35s cubic-bezier(.16,1,.3,1)}.rb-index-list a:hover,.rb-index-list a:focus-visible{opacity:1;transform:translate(3px)}.rb-index-list a.is-current{opacity:1}.rb-index-list a.is-current .rb-index-label{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:5px}.rb-index-num{font-family:var(--font-mono);font-size:.72rem;font-weight:700;opacity:.75;flex:none}.rb-index-list a:focus-visible{outline:2px solid #FFFFFF;outline-offset:2px}.rb-sub-wrap{display:grid;grid-template-rows:0fr;transition:grid-template-rows .5s cubic-bezier(.65,0,.35,1)}.rb-sub{overflow:hidden;min-height:0;padding-left:calc(.72rem * 1.9)}.has-sub.is-open>.rb-sub-wrap{grid-template-rows:1fr}.rb-sub a{font-size:clamp(.88rem,1vw,.98rem);font-weight:600;padding:.2rem 0;opacity:.55}.rb-sub li:first-child a{padding-top:.35rem}.rb-sub li:last-child a{padding-bottom:.45rem}.rb-sub a.is-current .rb-index-label{text-decoration-thickness:1.5px}html.menu-overlay-open :is(.rb-side,.rb-drop){visibility:hidden!important}@media (prefers-reduced-motion: reduce){.rb-band-in>*{animation:none}.rb-side,.rb-side .rb-index-list>li,.rb-sub-wrap{transition:none}}.pj-section{display:flex;flex-direction:column;gap:clamp(1.6rem,3vw,2.4rem);padding-bottom:clamp(3rem,7vw,6rem)}.pj-head{display:flex;flex-direction:column;gap:.7rem;color:#ff2424}.pj-kicker{margin:0;font-family:var(--font-mono);font-size:.8rem;font-weight:700;letter-spacing:.06em}.pj-title{margin:0;font-family:var(--font-display);font-size:clamp(3.4rem,10vw,8rem);font-weight:800;letter-spacing:-.055em;line-height:.92;text-transform:lowercase;color:#ff2424}.pj-lead{margin:0;max-width:56ch;font-size:clamp(1rem,1.5vw,1.2rem);line-height:1.55;color:#ff2424}.pj-entries{display:flex;flex-direction:column;gap:clamp(1.6rem,3vw,2.6rem)}.pj-entry{scroll-margin-top:96px}.pj-entry-media{margin:0}.pj-entry-media .p-case-media-frame{aspect-ratio:3 / 1;background:#fff!important}.pj-entry-media .p-case-media-frame img{object-position:center}.pj-entry-iso{width:44px;height:44px;flex:none;object-fit:contain;background:#fff;padding:4px;box-sizing:border-box;filter:url(#duotone-red-white)}.pj-entry .experience-role{margin:0}.pj-entry-figures{grid-template-columns:repeat(auto-fit,minmax(130px,1fr))}.pj-entry-foot{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1rem 2rem;padding-top:clamp(1.1rem,2vw,1.5rem);border-top:1px solid rgba(255,255,255,.28)}.pj-entry-stack{display:flex;flex-wrap:wrap;gap:.45rem;list-style:none;margin:0;padding:0}.pj-entry-stack li{font-family:var(--font-mono);font-size:.72rem;font-weight:700;letter-spacing:.04em;text-transform:lowercase;color:#fff;border:1px solid rgba(255,255,255,.45);padding:3px 8px}.pj-entry-links{display:flex;flex-wrap:wrap;gap:.6rem 1.6rem}.pj-entry-link{font-family:var(--font-mono);font-size:.85rem;font-weight:700;letter-spacing:.03em;color:#fff;text-decoration:none;border-bottom:1.5px solid #FFFFFF;padding-bottom:2px;transition:opacity .2s ease,transform .2s ease}.pj-entry-link:hover,.pj-entry-link:focus-visible{opacity:.75;transform:translate(3px)}body.page-proyectos,body.page-sobre-mi{scrollbar-gutter:auto!important}.pj-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:.4rem}.pj-chip{display:inline-flex;align-items:center;padding:.55rem .85rem;background:#ff2424;color:#fff;border-radius:0;font-family:var(--font-mono);font-size:.8rem;font-weight:700;letter-spacing:.03em;text-decoration:none;text-transform:lowercase;transition:transform .35s cubic-bezier(.16,1,.3,1),box-shadow .35s ease}.pj-chip:hover,.pj-chip:focus-visible{transform:translateY(-2px);box-shadow:0 0 0 2px #fff,0 0 0 4px #ff2424;outline:none}.pj-side{position:fixed;top:128px;right:var(--pj-side-right, 100vw);z-index:50;pointer-events:none}.pj-side.is-in{pointer-events:auto}.pj-side.is-unavailable{display:none}.pj-side ol{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;align-items:flex-end;gap:6px}.pj-side li{--r: 0;opacity:var(--r);clip-path:inset(-12px -12px calc(-12px + (1 - var(--r)) * (100% + 24px)) -60%);transform:translate3d(calc((1 - var(--r)) * -14px),calc((1 - var(--r)) * -8px),0);transition:opacity .12s linear,transform .12s linear,clip-path .12s linear}.pj-side a{display:inline-flex;align-items:center;gap:4px;padding:.38rem .6rem;background:#ff2424;color:#fff;border-radius:0;font-family:var(--font-mono);font-size:.74rem;font-weight:700;letter-spacing:.03em;line-height:1.1;text-transform:lowercase;text-decoration:none;opacity:.72;transform-origin:right center;transition:opacity .3s ease,transform .45s cubic-bezier(.16,1,.3,1)}.pj-side a:hover,.pj-side a:focus-visible{opacity:1;outline:none}.pj-side a.is-current{opacity:1;transform:scale(1.16)}.pj-side.is-fast li,.pj-side.is-fast a{transition-duration:.12s!important;transition-delay:0s!important}.pj-censor{display:inline-block;width:2.6em;height:.62em;vertical-align:middle;background:repeating-linear-gradient(-45deg,currentColor 0 2px,transparent 2px 6px);box-shadow:inset 0 0 0 1.5px currentColor}.pj-censor.is-long{width:4.2em}.pj-censor+.pj-censor{margin-left:.3em}.experience-role .pj-censor{height:.7em;background-image:repeating-linear-gradient(-45deg,currentColor 0 3px,transparent 3px 9px)}.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.pj-entry .pj-entry-role{font-size:.86rem;padding:7px 12px;background:#fff;color:#ff2424;border:2px solid #FFFFFF;letter-spacing:.06em}.pj-entry-links{border:2px solid #FFFFFF;padding:.7rem 1.1rem}.pj-entry .pj-entry-link{color:#fff;border-bottom-color:#fff}.pj-entry .pj-entry-figures{grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(1.2rem,2.4vw,2.4rem);padding-top:clamp(1.4rem,2.4vw,2rem)}.pj-entry .pj-entry-figures .exp-spec-item{gap:.45rem;padding-left:.9rem;border-left:2px solid rgba(255,255,255,.5)}.pj-entry .pj-entry-figures .exp-spec-val{order:-1;font-family:var(--font-display);font-size:clamp(2rem,3.6vw,3rem);font-weight:800;letter-spacing:-.04em;line-height:.95}.pj-entry .pj-entry-figures .exp-spec-label{font-size:.78rem;letter-spacing:.06em;color:#ffffffd1}.pj-entry .p-case-media-frame{cursor:default}.pj-entry .p-case-media-frame .p-case-photo-duotone,.pj-entry .p-case-media-frame:hover .p-case-photo-duotone,.pj-entry .p-case-media-frame.is-color .p-case-photo-duotone{opacity:1!important;visibility:visible!important;transition:none!important}.pj-entry .pj-entry-iso{position:relative;display:block;flex:none;width:46px;height:46px;padding:0;border-radius:10px;overflow:hidden;background:#fff;filter:none}.pj-entry-iso img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover}.pj-iso-duo{filter:url(#duotone-red-white)}.pj-entry .pj-entry-iso--gh{display:grid;place-items:center;background:#fff;color:#ff2424}.pj-entry--github .experience-main-lead{gap:0}.pj-entry .pj-entry-link.is-static{border-bottom:0;padding-bottom:0}.pj-entry .p-case-media-frame .p-case-photo-base{opacity:1!important;visibility:visible!important;transform:scale(1.05);transition:transform 1.8s cubic-bezier(.22,1,.36,1)!important}.pj-entry-media.was-colored .p-case-media-frame .p-case-photo-base{transform:none}@property --pj-sweep{syntax: "<percentage>"; inherits: true; initial-value: 0%;}.pj-entry-media,.pj-entry-iso{--pj-sweep: 0%;transition:--pj-sweep 1.5s cubic-bezier(.65,0,.35,1)}.pj-entry-media.is-colored,.pj-entry-iso.is-colored{--pj-sweep: 135%}.pj-entry-iso{transition-duration:1.1s}.pj-entry .p-case-media-frame .p-case-photo-duotone,.pj-entry .pj-iso-duo{-webkit-mask-image:linear-gradient(105deg,transparent calc(var(--pj-sweep) - 35%),#000 var(--pj-sweep));mask-image:linear-gradient(105deg,transparent calc(var(--pj-sweep) - 35%),#000 var(--pj-sweep))}@media (prefers-reduced-motion: reduce){.pj-entry-media,.pj-entry-iso,.pj-side li,.pj-side a,.pj-chip{transition:none}.pj-entry .p-case-media-frame .p-case-photo-base{transition:none!important}}.h-projects-track{gap:0;padding-inline:0}.h-project-photo{background:#fff}.h-project-photo img,.h-project-card:hover .h-project-photo img{position:absolute;top:-2px;left:-2px;width:calc(100% + 4px);height:calc(100% + 4px);transform:none!important;will-change:auto}.h-project-card{transform:none;-webkit-transform:none}.h-project-card:not(:last-child){margin-right:-1px}.h-project-name .pj-censor{height:.62em}.home-about-card{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);align-items:stretch;background:#ff2424;color:#fff;text-decoration:none;overflow:hidden;--selection-background: var(--color-white);--selection-color: var(--color-red)}.home-about-text{display:flex;flex-direction:column;justify-content:space-between;gap:clamp(1.6rem,3vw,2.4rem);padding:clamp(2rem,4.5vw,3.5rem)}.home-about-lead{margin:0;font-family:var(--font-display);font-size:clamp(1.5rem,2.8vw,2.35rem);font-weight:800;line-height:1.12;letter-spacing:-.025em}.home-about-facts{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(.8rem,2vw,1.6rem)}.home-about-facts li{display:flex;flex-direction:column;gap:.4rem;padding-left:.8rem;border-left:2px solid rgba(255,255,255,.5)}.home-about-facts strong{font-family:var(--font-display);font-size:clamp(1.7rem,3.2vw,2.6rem);font-weight:800;letter-spacing:-.04em;line-height:.95}.home-about-facts span{font-family:var(--font-mono);font-size:.72rem;font-weight:700;letter-spacing:.05em;line-height:1.35;color:#ffffffd9}.home-about-cta{align-self:flex-start;display:inline-flex;gap:.6rem;padding:.75rem 1.1rem;border:2px solid #FFFFFF;font-family:var(--font-mono);font-size:.85rem;font-weight:700;letter-spacing:.03em;transition:background-color .3s ease,color .3s ease}.home-about-cta [aria-hidden]{transition:transform .35s cubic-bezier(.16,1,.3,1)}.home-about-card:hover .home-about-cta,.home-about-card:focus-visible .home-about-cta{background:#fff;color:#ff2424}.home-about-card:hover .home-about-cta [aria-hidden]{transform:translate(5px)}.home-about-card:focus-visible{outline:3px solid #FF2424;outline-offset:4px}.home-about-photo{position:relative;margin:0;min-height:320px;overflow:hidden;--pj-sweep: 0%;transition:--pj-sweep 1.5s cubic-bezier(.65,0,.35,1)}.home-about-photo.is-colored{--pj-sweep: 135%}.home-about-photo img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;object-position:53% 48%}.home-about-base{transform:scale(1.05);transition:transform 1.8s cubic-bezier(.22,1,.36,1)}.home-about-photo.was-colored .home-about-base{transform:none}.home-about-duo{filter:url(#duotone-red-white-burn);-webkit-mask-image:linear-gradient(105deg,transparent calc(var(--pj-sweep) - 35%),#000 var(--pj-sweep));mask-image:linear-gradient(105deg,transparent calc(var(--pj-sweep) - 35%),#000 var(--pj-sweep))}@media (max-width: 860px){.home-about-card{grid-template-columns:1fr}.home-about-photo{min-height:0;aspect-ratio:3 / 2;order:-1}}@media (max-width: 540px){.home-about-facts{grid-template-columns:1fr}.home-about-facts li{flex-direction:row;align-items:baseline;gap:.7rem}}.stack-intro{margin:calc(-1*clamp(.6rem,1.4vw,1rem)) 0 0;text-align:center;font-size:clamp(1rem,1.5vw,1.15rem);color:#ff2424}.stack-list{margin:0;display:flex;flex-direction:column}.stack-row{display:grid;grid-template-columns:clamp(110px,16vw,180px) minmax(0,1fr);gap:clamp(.6rem,2vw,1.6rem);align-items:baseline;padding:.85rem 0;border-top:1px solid rgba(255,36,36,.22)}.stack-row:last-child{border-bottom:1px solid rgba(255,36,36,.22)}.stack-row dt{font-family:var(--font-display);font-size:clamp(1rem,1.6vw,1.2rem);font-weight:800;letter-spacing:-.015em;color:#ff2424}.stack-row dd{margin:0}.stack-row ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px}.stack-row li{font-family:var(--font-mono);font-size:.76rem;font-weight:700;letter-spacing:.02em;line-height:1.2;color:#ff2424;border:1px solid rgba(255,36,36,.45);padding:4px 9px}@media (max-width: 600px){.stack-row{grid-template-columns:1fr;gap:.5rem}}.contact-card{display:flex;flex-direction:column;align-items:center;gap:clamp(1.4rem,3vw,2rem);padding:clamp(2.4rem,6vw,4.5rem) clamp(1.2rem,4vw,3rem);background:#ff2424;color:#fff;text-align:center;--selection-background: var(--color-white);--selection-color: var(--color-red)}.contact-card-mail{font-family:var(--font-display);font-size:clamp(1.6rem,5.2vw,3.6rem);font-weight:800;letter-spacing:-.035em;line-height:1;color:#fff;text-decoration:none;overflow-wrap:anywhere;background:linear-gradient(#fff,#fff) left bottom / 100% 3px no-repeat;padding-bottom:.18em;transition:background-size .4s cubic-bezier(.16,1,.3,1)}.contact-card-mail:hover,.contact-card-mail:focus-visible{background-size:0% 3px;background-position:right bottom;outline:none}.contact-card-links{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;justify-content:center;gap:10px}.contact-card-links a{display:inline-flex;gap:.45rem;padding:.65rem 1rem;border:2px solid #FFFFFF;color:#fff;text-decoration:none;font-family:var(--font-mono);font-size:.85rem;font-weight:700;letter-spacing:.03em;transition:background-color .25s ease,color .25s ease}.contact-card-links a span{opacity:.75;font-weight:500}.contact-card-links a{position:relative;isolation:isolate;transition:color .4s cubic-bezier(.16,1,.3,1)}.contact-card-links a:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;background:#fff;transform:scaleY(0);transform-origin:center bottom;transition:transform .4s cubic-bezier(.16,1,.3,1)}.contact-card-links a:hover,.contact-card-links a:focus-visible{color:#ff2424;outline:none}.contact-card-links a:hover:before,.contact-card-links a:focus-visible:before{transform:scaleY(1)}@media (prefers-reduced-motion: reduce){.contact-card-links a,.contact-card-links a:before{transition:none}}@media (prefers-reduced-motion: reduce){.home-about-photo,.home-about-base,.contact-card-mail{transition:none}}#experiencia .experience-entry+.experience-entry{margin-top:clamp(.4rem,1.2vw,1rem)}.pj-entry--compact{gap:clamp(1rem,2vw,1.4rem);padding:clamp(1.4rem,3vw,2.2rem)}.pj-entry--compact .experience-heading{font-size:clamp(1.05rem,1.6vw,1.3rem)}.pj-entry--compact .pj-entry-foot{padding-top:0;border-top:0;justify-content:flex-start}.pj-entry .pj-entry-iso--gh svg{transition:color 1.2s cubic-bezier(.65,0,.35,1) .2s}.pj-entry .pj-entry-iso--gh.is-colored{color:#000}.pj-entry--github .experience-org{text-transform:none}.pj-entry-orgs a{color:inherit;text-decoration:none}.pj-entry-orgs li{transition:background-color .25s ease,color .25s ease}.pj-entry-orgs li:has(a:hover),.pj-entry-orgs li:has(a:focus-visible){background:#fff;color:#ff2424}@keyframes pj-rise{0%{opacity:0;transform:translate3d(0,26px,0)}to{opacity:1;transform:none}}.pj-head .pj-title{animation:pj-rise .9s cubic-bezier(.16,1,.3,1) both}.pj-head .pj-title,.pj-head .pj-chip{will-change:transform,opacity}.page-proyectos .site-header,.page-sobre-mi .site-header,body.white-active .site-header{will-change:transform;transform:translateZ(0)}.pj-head .pj-chip{animation:pj-rise .7s cubic-bezier(.16,1,.3,1) backwards;animation-delay:.16s}.pj-head .pj-chip:nth-child(2){animation-delay:.21s}.pj-head .pj-chip:nth-child(3){animation-delay:.26s}.pj-head .pj-chip:nth-child(4){animation-delay:.31s}.pj-head .pj-chip:nth-child(5){animation-delay:.36s}.pj-head .pj-chip:nth-child(n+6){animation-delay:.41s}@media (prefers-reduced-motion: reduce){.pj-head .pj-title,.pj-head .pj-chip{animation:none}}@media (min-width: 900px){.pj-entry .pj-entry-figures{grid-template-columns:repeat(4,minmax(0,1fr))}}.site-footer-red{--fs-step: clamp(12px, 1.5vw, 20px);--fs-edge: max(clamp(1.25rem, 4vw, 3.5rem), calc((100% - 990px)/2) );--fs-peak: min(24%, 190px);padding-top:calc(clamp(2.4rem,4.5vw,3.6rem) + 2 * var(--fs-step));clip-path:polygon(0 var(--fs-step),calc(100% - var(--fs-edge) - var(--fs-peak)) var(--fs-step),calc(100% - var(--fs-edge) - var(--fs-peak)) 0,calc(100% - var(--fs-edge)) 0,calc(100% - var(--fs-edge)) calc(2 * var(--fs-step)),100% calc(2 * var(--fs-step)),100% 100%,0 100%)}.footer-red-grid{position:relative;grid-template-columns:repeat(3,minmax(0,1fr)) auto;align-items:start}.footer-red-mark{width:auto;height:clamp(96px,10vw,128px);aspect-ratio:210 / 306;color:#fff;justify-self:end}@media (max-width: 640px){.footer-red-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.6rem 1rem;isolation:isolate}.footer-red-col{position:relative;z-index:1}.footer-red-mark{position:absolute;right:-.4rem;bottom:-.6rem;height:78%;max-height:190px;color:#ff4d4d;z-index:0;pointer-events:none}}.mobile-nav-link.is-parent .mobile-nav-text:after{content:"";position:absolute;left:.04em;right:0;bottom:-.16em;height:clamp(2px,.3vh,4px);background:repeating-linear-gradient(90deg,#FFFFFF 0 .32em,transparent .32em .56em);transform-origin:left center;transform:scaleX(0);transition:transform .6s cubic-bezier(.16,1,.3,1)}.mobile-nav-overlay.active .mobile-nav-link.is-parent .mobile-nav-text:after{transform:scaleX(1);transition-delay:calc(.35s + var(--menu-i, 0) * .05s)}
