@font-face{font-family:Heavitas;src:url(/portfolio/fonts/Heavitas.woff2) format("woff2"),url(/portfolio/fonts/Heavitas.ttf) format("truetype");font-display:swap}*,:after,:before{margin:0;padding:0;box-sizing:border-box}nav{width:100%;height:10vh;display:flex;flex-direction:row;align-items:center;justify-content:space-between;padding:0 .5%;background-color:transparent;position:fixed;top:0;left:0;z-index:1000}nav .despliegue{position:relative;display:flex;align-items:center}nav .despliegue #menu-toggle{cursor:pointer;border:none;background-color:#ff9a3d;width:70px;height:40px;color:#fff;clip-path:polygon(0% 0%,100% 0%,100% 75%,75% 100%,0% 100%);display:flex;justify-content:center;align-items:center;transition:transform .2s ease,background-color .2s ease;z-index:1100}nav .despliegue #menu-toggle svg{width:24px;height:24px}nav .despliegue #menu-toggle:hover{background-color:#ffa600c3;transform:scale(1.05)}nav .despliegue #menu-toggle:active{transform:scale(.95)}nav .despliegue #menu-items{list-style:none;display:flex;flex-direction:column;position:fixed;top:0;left:0;width:100%;height:100dvh;background-color:#000000e6;z-index:1050;backdrop-filter:blur(10px);padding:clamp(90px,15vh,160px) 2rem 2rem;overflow-y:auto;transition:all .4s cubic-bezier(.4,0,.2,1);opacity:1;visibility:visible}nav .despliegue #menu-items.hidden{opacity:0;visibility:hidden;transform:translateY(-20px);pointer-events:none}nav .despliegue #menu-items li{cursor:pointer;transition:transform .3s ease;display:flex;justify-content:left;align-items:start;width:100%}nav .despliegue #menu-items li .cont_sections{width:auto;display:flex;align-items:flex-start;gap:10px;padding:1rem 2rem;transition:all .3s ease}nav .despliegue #menu-items li .cont_sections.is-active{background-color:#ff9a3d;clip-path:polygon(0% 0%,100% 0%,100% 70%,85% 100%,0% 100%);mask-image:radial-gradient(circle at 10px 10px,black 100%,transparent 0);border-radius:5px}nav .despliegue #menu-items li .cont_sections.is-active .menu-number{color:#0009!important}nav .despliegue #menu-items li .cont_sections.is-active a{color:#000!important}nav .despliegue #menu-items li .cont_sections.is-active svg{color:#000}nav .despliegue #menu-items li .cont_sections:active{transform:scale(.98)}nav .despliegue #menu-items li .cont_sections .menu-number{font-family:monospace;font-weight:900;font-size:1.2rem;color:#ff9a3d80;margin-top:1rem}nav .despliegue #menu-items li .cont_sections a{text-decoration:none;color:#fff;font-family:Heavitas;font-size:4rem;line-height:1;transition:transform .3s ease,color .3s ease;transform:translateY(14px)}nav .despliegue #menu-items li .cont_sections:hover:not(.is-active) .menu-number{color:#ff9a3d}nav .despliegue #menu-items li .cont_sections:hover:not(.is-active) a{color:#ff9a3d;transform:translate(10px)}nav .despliegue #menu-items li .cont_sections:hover:not(.is-active) svg{color:#ff9a3d}nav .despliegue #menu-items li .cont_sections svg{width:4vh;height:3vh}nav .despliegue #menu-items .contact-me{width:100%;height:auto;display:flex;flex-direction:row;justify-content:left;gap:1rem;padding:1rem}nav .despliegue #menu-items .contact-me .bi-caret-right{color:#ff9a3d;width:5rem;height:5rem;padding:1rem}nav .despliegue #menu-items .contact-me a{display:block;width:5rem;height:5rem;text-decoration:none;color:#fff;perspective:800px;border-radius:25px}nav .despliegue #menu-items .contact-me a .card-inner{display:block;position:relative;width:100%;height:100%;transition:transform .5s ease;transform-style:preserve-3d}nav .despliegue #menu-items .contact-me a .card-face{position:absolute;inset:0;display:flex;justify-content:center;align-items:center;border-radius:25px;backface-visibility:hidden;transition:background-color .3s ease}nav .despliegue #menu-items .contact-me a .card-front{background-color:transparent;color:#fff}nav .despliegue #menu-items .contact-me a .card-front svg{width:70%;height:70%}nav .despliegue #menu-items .contact-me a .card-back{background-color:#ff9a3d;color:#000;transform:rotateY(180deg);font-family:Heavitas,sans-serif;font-size:.85rem;letter-spacing:.5px;text-align:center;padding:.25rem}nav .despliegue #menu-items .contact-me a .social-name--short{display:none}nav .despliegue #menu-items .contact-me a:hover .card-inner,nav .despliegue #menu-items .contact-me a:focus-visible .card-inner{transform:rotateY(180deg)}nav .despliegue #menu-items .contact-me a:hover .card-front,nav .despliegue #menu-items .contact-me a:focus-visible .card-front{background-color:#ff9a3d}nav .logo{display:flex;justify-content:center;align-items:center;gap:.7rem;z-index:1100}nav .logo span{font-family:Heavitas,sans-serif;font-size:1.5rem;color:#ff9a3d;letter-spacing:1px}nav .lang-switch{display:flex;border:1px solid rgba(125,255,90,.85);background:#111111b8}nav .lang-switch button{border:none;background:transparent;color:#fff;font-family:monospace;font-size:.72rem;font-weight:700;letter-spacing:.08em;padding:.28rem .42rem;cursor:pointer;line-height:1}nav .lang-switch button.is-on{background:#7dff5a;color:#0a0a0a}@media(max-width:320px){nav{height:60px;padding:0 10px}nav .despliegue #menu-toggle{width:50px;height:30px}nav .despliegue #menu-toggle svg{width:18px;height:18px}nav .despliegue #menu-items{padding:70px 1rem 1rem}nav .despliegue #menu-items li .cont_sections{padding:.5rem;gap:5px}nav .despliegue #menu-items li .cont_sections.is-active{clip-path:none;border-radius:4px}nav .despliegue #menu-items li .cont_sections .menu-number{font-size:.7rem;margin-top:.4rem}nav .despliegue #menu-items li .cont_sections a{font-size:1.2rem;transform:translateY(5px)}nav .despliegue #menu-items li .cont_sections svg{width:15px;height:15px}nav .despliegue #menu-items li .cont_sections:hover:not(.is-active) a{transform:translate(5px)}nav .despliegue #menu-items .contact-me{gap:.45rem;padding:.5rem;flex-wrap:wrap}nav .despliegue #menu-items .contact-me .bi-caret-right{display:none}nav .logo span{font-size:.9rem}}@media(min-width:321px)and (max-width:480px){nav{height:65px;padding:0 12px}nav .despliegue #menu-toggle{width:55px;height:32px}nav .despliegue #menu-toggle svg{width:20px;height:20px}nav .despliegue #menu-items{padding:clamp(80px,13vh,110px) 1.25rem 1.25rem}nav .despliegue #menu-items li .cont_sections{padding:.6rem 1rem;gap:6px}nav .despliegue #menu-items li .cont_sections a{font-size:clamp(1.2rem,5.2vw,1.85rem);transform:translateY(8px)}nav .despliegue #menu-items li .cont_sections .menu-number{font-size:.85rem;margin-top:.6rem}nav .despliegue #menu-items li .cont_sections svg{width:2.5vh;height:2vh}nav .despliegue #menu-items .contact-me{gap:.5rem;padding:.6rem;flex-wrap:wrap}nav .despliegue #menu-items .contact-me .bi-caret-right{display:none}nav .logo span{font-size:1rem}}@media(min-width:481px)and (max-width:768px){nav{height:70px;padding:0 15px}nav .despliegue #menu-toggle{width:60px;height:35px}nav .despliegue #menu-items{padding:12vh 1.5rem 1.5rem}nav .despliegue #menu-items li .cont_sections{padding:.8rem 1.5rem;gap:8px}nav .despliegue #menu-items li .cont_sections a{font-size:3rem;transform:translateY(10px)}nav .despliegue #menu-items li .cont_sections .menu-number{font-size:1rem;margin-top:.8rem}nav .despliegue #menu-items li .cont_sections svg{width:3vh;height:2.5vh}nav .despliegue #menu-items .contact-me{gap:.65rem;padding:.8rem;flex-wrap:wrap}nav .despliegue #menu-items .contact-me .bi-caret-right{display:none}nav .logo span{font-size:1.2rem}}@media(min-width:769px)and (max-width:1024px){nav{height:80px;padding:0 20px}nav .despliegue #menu-toggle{width:65px;height:38px}nav .despliegue #menu-items{padding:13vh 2rem 2rem}nav .despliegue #menu-items li .cont_sections{padding:1rem 2rem;gap:12px}nav .despliegue #menu-items li .cont_sections a{font-size:3.5rem}nav .despliegue #menu-items li .cont_sections .menu-number{font-size:1.1rem}nav .despliegue #menu-items li .cont_sections svg{width:3.5vh;height:2.8vh}nav .despliegue #menu-items .contact-me{gap:.8rem;padding:1rem;flex-wrap:wrap}nav .logo span{font-size:1.4rem}}@media(hover:none),(max-width:1024px){nav .despliegue #menu-items{overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}nav .despliegue #menu-items .contact-me{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));align-items:start;justify-items:center;gap:.55rem .4rem;width:100%;margin-top:.4rem;padding:.85rem .35rem 1.1rem;border-top:1px solid rgba(255,154,61,.28)}nav .despliegue #menu-items .contact-me .bi-caret-right{display:none}nav .despliegue #menu-items .contact-me a{perspective:none;width:100%;max-width:4.8rem;height:auto!important;min-width:0;border-radius:0}nav .despliegue #menu-items .contact-me a .card-inner{display:flex;flex-direction:column;align-items:center;gap:.35rem;position:static;width:100%;height:auto;transform:none!important}nav .despliegue #menu-items .contact-me a .card-face{position:static;backface-visibility:visible}nav .despliegue #menu-items .contact-me a .card-front{width:clamp(2.6rem,9vw,3.2rem);height:clamp(2.6rem,9vw,3.2rem);background-color:#ff9a3d26;border-radius:12px;flex-shrink:0}nav .despliegue #menu-items .contact-me a .card-front svg{width:56%;height:56%}nav .despliegue #menu-items .contact-me a .card-back{position:static;transform:none!important;background-color:transparent;color:#ff9a3d;font-size:clamp(.62rem,2.4vw,.78rem);letter-spacing:.03em;line-height:1.2;padding:0;border-radius:0;width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}nav .despliegue #menu-items .contact-me a .social-name--full{display:none}nav .despliegue #menu-items .contact-me a .social-name--short{display:inline}nav .despliegue #menu-items .contact-me a:hover .card-inner,nav .despliegue #menu-items .contact-me a:focus-visible .card-inner{transform:none!important}nav .despliegue #menu-items .contact-me a:active .card-front{background-color:#ff9a3d;color:#000}}@media(hover:none)and (min-width:520px),(min-width:520px)and (max-width:1024px){nav .despliegue #menu-items .contact-me a{max-width:6rem}nav .despliegue #menu-items .contact-me a .card-back{font-size:.72rem}nav .despliegue #menu-items .contact-me a .social-name--full{display:inline}nav .despliegue #menu-items .contact-me a .social-name--short{display:none}}@media(max-width:360px){nav .despliegue #menu-items .contact-me{gap:.45rem .25rem;padding:.75rem .2rem 1.2rem}nav .despliegue #menu-items .contact-me a{max-width:none}nav .despliegue #menu-items .contact-me a .card-front{width:2.75rem;height:2.75rem}nav .despliegue #menu-items .contact-me a .card-back{font-size:.66rem}}@media(max-width:280px),(max-width:420px)and (max-height:420px){nav{height:36px;padding:0 6px;background-color:#0a0a0a;border-bottom:1px solid rgba(255,154,61,.35)}nav .despliegue #menu-toggle{width:32px;height:22px;clip-path:polygon(0% 0%,100% 0%,100% 70%,70% 100%,0% 100%)}nav .despliegue #menu-toggle svg{width:12px;height:12px}nav .despliegue #menu-items{padding:46px .4rem .4rem}nav .despliegue #menu-items li .cont_sections{padding:.25rem .3rem;gap:4px}nav .despliegue #menu-items li .cont_sections a{font-size:.85rem}nav .despliegue #menu-items li .cont_sections .menu-number{font-size:.5rem;margin-top:.15rem}nav .despliegue #menu-items li .cont_sections svg{width:10px;height:10px}nav .despliegue #menu-items .contact-me{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.2rem;margin-top:.2rem;padding:.35rem .15rem .5rem;border-top:1px solid rgba(255,154,61,.25)}nav .despliegue #menu-items .contact-me .bi-caret-right{display:none}nav .despliegue #menu-items .contact-me a{max-width:none}nav .despliegue #menu-items .contact-me a .card-front{width:22px!important;height:22px!important;border-radius:6px}nav .despliegue #menu-items .contact-me a .card-back{display:none!important}nav .logo{gap:.3rem}nav .logo span{font-size:.68rem}nav .lang-switch button{font-size:.5rem;padding:.16rem .22rem}}@keyframes nav-item-in{0%{opacity:0;transform:translate(-24px)}to{opacity:1;transform:none}}nav{background:linear-gradient(180deg,#0a0a0ad9,#0a0a0a00);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}nav .logo span{color:#7dff5a;text-shadow:0 0 18px rgba(125,255,90,.55);transition:text-shadow .3s ease,letter-spacing .3s ease}nav .logo span:hover{letter-spacing:3px;text-shadow:0 0 26px rgba(125,255,90,.9)}nav .despliegue #menu-toggle{background:linear-gradient(135deg,#ff9a3d,#ffb066);color:#0a0a0a;box-shadow:0 0 22px #ff9a3d73}nav .despliegue #menu-toggle:hover{background:linear-gradient(135deg,#ffb066,#ff9a3d);box-shadow:0 0 32px #ff9a3dcc}nav .despliegue #menu-items{background:radial-gradient(circle at 85% 15%,rgba(125,255,90,.12),transparent 45%),radial-gradient(circle at 10% 90%,rgba(255,154,61,.12),transparent 45%),#0a0a0aed;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}nav .despliegue #menu-items:not(.hidden) li{animation:nav-item-in .5s cubic-bezier(.2,.7,.2,1) both}nav .despliegue #menu-items:not(.hidden) li:nth-child(1){animation-delay:.04s}nav .despliegue #menu-items:not(.hidden) li:nth-child(2){animation-delay:.1s}nav .despliegue #menu-items:not(.hidden) li:nth-child(3){animation-delay:.16s}nav .despliegue #menu-items:not(.hidden) li:nth-child(4){animation-delay:.22s}nav .despliegue #menu-items:not(.hidden) li:nth-child(5){animation-delay:.28s}nav .despliegue #menu-items:not(.hidden) li:nth-child(6){animation-delay:.36s}nav .despliegue #menu-items li .cont_sections.is-active{background:linear-gradient(135deg,#7dff5a,#b6ff9e);box-shadow:0 0 36px #7dff5a73}nav .despliegue #menu-items li .cont_sections:hover:not(.is-active) .menu-number{color:#7dff5a}nav .despliegue #menu-items li .cont_sections:hover:not(.is-active) a{color:#7dff5a;text-shadow:0 0 22px rgba(125,255,90,.6)}nav .despliegue #menu-items li .cont_sections:hover:not(.is-active) svg{color:#7dff5a}nav .despliegue #menu-items .contact-me a .card-back,nav .despliegue #menu-items .contact-me a:hover .card-front{background-color:#ff9a3d}nav .lang-switch{border-radius:999px;overflow:hidden;border-color:#7dff5a8c;backdrop-filter:blur(6px)}nav .lang-switch button{transition:background .2s ease,color .2s ease}nav .lang-switch button:hover:not(.is-on){background:#7dff5a26}@media(prefers-reduced-motion:reduce){nav .despliegue #menu-items:not(.hidden) li{animation:none}}@media(max-width:280px),(max-width:420px)and (max-height:420px){nav{backdrop-filter:none;-webkit-backdrop-filter:none}}@keyframes social-pop{0%{opacity:0;transform:translateY(18px) scale(.8)}to{opacity:1;transform:none}}@keyframes caret-nudge{50%{transform:translate(5px)}}@keyframes shine-sweep{0%{transform:translate(-130%) skew(-20deg)}to{transform:translate(230%) skew(-20deg)}}@keyframes label-in{0%{opacity:0;transform:translateY(8px) scale(.85);filter:blur(3px)}to{opacity:1;transform:none;filter:blur(0)}}@media(hover:hover)and (min-width:1025px){nav .despliegue #menu-items .contact-me{align-items:center}nav .despliegue #menu-items .contact-me .bi-caret-right{animation:caret-nudge 1.6s ease-in-out infinite}nav .despliegue #menu-items .contact-me a{perspective:900px;border-radius:18px;transition:transform .35s cubic-bezier(.34,1.56,.64,1),filter .3s ease}nav .despliegue #menu-items .contact-me a:not(:hover){animation:social-pop .55s cubic-bezier(.34,1.56,.64,1) backwards}nav .despliegue #menu-items .contact-me a:nth-of-type(1){animation-delay:.45s}nav .despliegue #menu-items .contact-me a:nth-of-type(2){animation-delay:.53s}nav .despliegue #menu-items .contact-me a:nth-of-type(3){animation-delay:.61s}nav .despliegue #menu-items .contact-me a:nth-of-type(4){animation-delay:.69s}nav .despliegue #menu-items .contact-me a:nth-of-type(5){animation-delay:.77s}nav .despliegue #menu-items .contact-me a:hover,nav .despliegue #menu-items .contact-me a:focus-visible{transform:translateY(-8px) scale(1.08);filter:drop-shadow(0 14px 22px rgba(255,154,61,.45));outline:none}nav .despliegue #menu-items .contact-me a:active{transform:translateY(-2px) scale(.96)}nav .despliegue #menu-items .contact-me a .card-inner{transition:transform .75s cubic-bezier(.34,1.56,.64,1)}nav .despliegue #menu-items .contact-me a .card-face{border-radius:18px;overflow:hidden;-webkit-backface-visibility:hidden;backface-visibility:hidden}nav .despliegue #menu-items .contact-me a .card-face:after{content:"";position:absolute;inset:0;width:45%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.55),transparent);transform:translate(-130%) skew(-20deg);pointer-events:none}nav .despliegue #menu-items .contact-me a .card-front{background:#ffffff0d;border:1px solid rgba(125,255,90,.55);box-shadow:inset 0 0 18px #7dff5a1f,0 0 16px #7dff5a2e;backdrop-filter:blur(6px)}nav .despliegue #menu-items .contact-me a .card-front svg{transition:transform .4s ease,filter .4s ease;filter:drop-shadow(0 0 6px rgba(125,255,90,.6))}nav .despliegue #menu-items .contact-me a .card-back{background:linear-gradient(135deg,#ff9a3d,#ffb066 55%,#ffd2a3);border:1px solid #ffd2a3;box-shadow:inset 0 0 20px #ffffff59,0 0 26px #ff9a3db3;color:#0a0a0a;font-weight:900;text-transform:uppercase;padding:.2rem;display:grid;place-items:center;text-align:center}nav .despliegue #menu-items .contact-me a .card-back .social-name{display:block;width:100%;font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace;font-size:.68rem;letter-spacing:0;white-space:nowrap;text-align:center;margin:0 auto;transform-origin:center;opacity:0}nav .despliegue #menu-items .contact-me a .card-back .social-name--short{display:none}nav .despliegue #menu-items .contact-me a:hover .card-front,nav .despliegue #menu-items .contact-me a:focus-visible .card-front{background-color:transparent}nav .despliegue #menu-items .contact-me a:hover .card-face:after,nav .despliegue #menu-items .contact-me a:focus-visible .card-face:after{animation:shine-sweep .9s .15s ease}nav .despliegue #menu-items .contact-me a:hover .card-back .social-name--full,nav .despliegue #menu-items .contact-me a:focus-visible .card-back .social-name--full{animation:label-in .6s .28s cubic-bezier(.2,.7,.2,1) forwards}}@media(prefers-reduced-motion:reduce){nav .despliegue #menu-items .contact-me a,nav .despliegue #menu-items .contact-me a .card-inner,nav .despliegue #menu-items .contact-me .bi-caret-right{animation:none!important;transition:none!important}nav .despliegue #menu-items .contact-me a .card-back .social-name{opacity:1}}.astro-route-announcer{position:absolute;left:0;top:0;clip:rect(0 0 0 0);clip-path:inset(50%);overflow:hidden;white-space:nowrap;width:1px;height:1px}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html,body{width:100%;background-color:#0a0a0a;color:#fff;overflow-x:hidden}:root{--nav-h: 10vh;--neon-green: #7dff5a;--neon-orange: #ff9a3d;--white: #ffffff}@media(min-width:1920px){html{font-size:125%}}@media(min-width:2560px){html{font-size:175%}}@media(min-width:3840px){html{font-size:250%}}@media(max-width:280px){html{font-size:70%}}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}::selection{background:var(--neon-green);color:#0a0a0a}:focus-visible{outline:2px solid var(--neon-green);outline-offset:3px}html{scroll-behavior:smooth;scrollbar-color:var(--neon-orange) #0a0a0a;scrollbar-width:thin}body{-webkit-font-smoothing:antialiased}[data-reveal]{opacity:0;transform:translateY(26px);transition:opacity .7s ease,transform .7s cubic-bezier(.2,.7,.2,1)}[data-reveal].is-in{opacity:1;transform:none}img,svg,video{max-width:100%}body{padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}@media(max-width:280px){body{padding-inline:.35rem}}@media(max-height:500px)and (orientation:landscape){#container,#contact_container,#detail_container{min-height:auto}}@media(max-width:1024px){:root{--nav-h: 80px}}@media(max-width:768px){:root{--nav-h: 70px}}@media(max-width:480px){:root{--nav-h: 65px}}@media(max-width:320px){:root{--nav-h: 60px}}@media(max-width:280px),(max-width:420px)and (max-height:420px){:root{--nav-h: 36px}}main{width:100%;display:block}@keyframes astroFadeInOut{0%{opacity:1}to{opacity:0}}@keyframes astroFadeIn{0%{opacity:0;mix-blend-mode:plus-lighter}to{opacity:1;mix-blend-mode:plus-lighter}}@keyframes astroFadeOut{0%{opacity:1;mix-blend-mode:plus-lighter}to{opacity:0;mix-blend-mode:plus-lighter}}@keyframes astroSlideFromRight{0%{transform:translate(100%)}}@keyframes astroSlideFromLeft{0%{transform:translate(-100%)}}@keyframes astroSlideToRight{to{transform:translate(100%)}}@keyframes astroSlideToLeft{to{transform:translate(-100%)}}@media(prefers-reduced-motion){::view-transition-group(*),::view-transition-old(*),::view-transition-new(*){animation:none!important}[data-astro-transition-scope]{animation:none!important}}
