body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.about-me{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:#0a0c1499;border-radius:8px;box-shadow:0 4px 8px #0000004d;color:#f0f0f0;margin:40px auto;max-width:800px;padding:20px}.about-me h2{color:#61dafb;font-size:2rem;margin-bottom:20px;text-align:center}.about-me p{background-color:#333;border-radius:5px;color:#e0e0e0;font-size:1.2rem;line-height:1.5;margin-bottom:15px;padding:10px;text-align:justify}.about-me p,.experience{box-shadow:0 4px 8px #0000004d}.experience{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:#0a0c1499;border-radius:8px;color:#f0f0f0;margin:40px auto;max-width:800px;padding:20px}.experience h2{color:#61dafb;font-size:2rem;margin-bottom:20px;text-align:center}.experience ul{list-style-type:none;padding:0}.experience li{background-color:#333;border-radius:5px;box-shadow:0 4px 8px #0003;margin-bottom:10px;padding:15px}.experience li strong{color:#61dafb;font-size:1.3rem}.project-link{color:#fff;text-decoration:none}.project-link:hover{color:#61dafb;text-decoration:underline}.education{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:#0a0c1499;border-radius:8px;box-shadow:0 4px 8px #0000004d;color:#f0f0f0;margin:40px auto;max-width:800px;padding:20px}.education h2{color:#61dafb;font-size:2rem;margin-bottom:20px;text-align:center}.education ul{list-style-type:none;padding:0}.education li{background-color:#333;border-radius:5px;box-shadow:0 4px 8px #0003;margin-bottom:10px;padding:15px}.education li:hover{background-color:#444}.education li strong{color:#61dafb;font-size:1.3rem}.education li p{color:#e0e0e0;margin-top:5px}.certificate-image{justify-content:center}.courses{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:#0a0c1499;border-radius:8px;box-shadow:0 4px 8px #0000004d;color:#f0f0f0;margin:40px auto;max-width:800px;padding:20px}.courses h2{color:#61dafb;font-size:2rem;margin-bottom:20px;text-align:center}.courses ul{list-style-type:none;padding:0}.courses li:hover{background-color:#444}.courses li{background-color:#333;border-radius:5px;box-shadow:0 4px 8px #0003;margin-bottom:10px;padding:15px}.courses li strong{color:#61dafb;font-size:1.3rem}.courses li p{color:#e0e0e0;margin-top:5px}.course-item{margin-bottom:20px}.courses-fit{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:#0a0c1499;border-radius:8px;box-shadow:0 4px 8px #0000004d;color:#f0f0f0;margin:40px auto;max-width:800px;padding:20px}.courses-fit h2{color:#61dafb;font-size:2rem;margin-bottom:20px;text-align:center}.courses-fit ul{list-style-type:none;padding:0}.courses-fit li{background-color:#333;border-radius:5px;box-shadow:0 4px 8px #0003;margin-bottom:10px;padding:15px}.courses-fit li strong{color:#61dafb;font-size:1.3rem}.courses-fit li p{color:#e0e0e0;margin-top:5px}.caret-icon{color:#61dafb;cursor:pointer;font-size:1.2rem;margin-left:10px}.certificate-image{align-items:center;display:flex;flex-direction:column;margin-top:10px}.certificate-image img{height:auto;margin-bottom:15px;max-width:100%}.certificate-image img,.skills{border-radius:8px;box-shadow:0 4px 8px #0000004d}.skills{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:#0a0c1499;color:#f0f0f0;margin:40px auto;max-width:800px;padding:20px}.skills h2{color:#61dafb;font-size:2rem;margin-bottom:24px;text-align:center}.skills-groups{display:flex;flex-direction:column;gap:16px}.skill-group{align-items:flex-start;display:flex;gap:12px}.skill-group-label{color:#61dafb;font-size:.8rem;font-weight:700;letter-spacing:.05em;min-width:120px;padding-top:4px;text-transform:uppercase}.skill-chips{display:flex;flex-wrap:wrap;gap:8px}.skill-chip{background-color:#333;border:1px solid #444;border-radius:20px;color:#f0f0f0;font-size:.85rem;padding:4px 12px;transition:background-color .2s,border-color .2s}.skill-chip:hover{background-color:#3a3a3a;border-color:#61dafb;color:#61dafb}@media (max-width:600px){.skill-group{flex-direction:column;gap:6px}.skill-group-label{min-width:0;min-width:auto}}.projects{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:#0a0c1499;border-radius:8px;box-shadow:0 4px 8px #0000004d;color:#f0f0f0;margin:40px auto;max-width:800px;padding:20px}.projects h2{align-items:center;color:#61dafb;display:flex;font-size:2rem;justify-content:center;margin-bottom:20px}.project-list{list-style:none;padding:0}.project-list li{font-size:1.2rem;margin-bottom:10px;position:relative}.project-list a,.project-title{color:#61dafb;text-decoration:none}.project-list a:hover,.project-title:hover{color:#61dafb}.details-toggle{background-color:#333;border-radius:8px;box-shadow:0 12px 8px #0003;color:#f0f0f0;cursor:pointer;font-size:1.2rem;margin-left:10px}.project-details,.sub-project-details{animation:expandIn .35s ease;background-color:#333;border-radius:8px;box-shadow:0 4px 8px #0000004d;color:#f0f0f0;margin-top:10px;padding:15px;text-align:justify;transform-origin:top}@keyframes expandIn{0%{opacity:0;transform:scaleY(.85) translateY(-8px)}to{opacity:1;transform:scaleY(1) translateY(0)}}.project-images{align-items:center;display:flex;flex-direction:column}.project-images,.project-images img,.sub-project-details img{border-radius:8px;box-shadow:0 4px 8px #0000004d;height:auto;margin-top:10px;max-width:100%}.project-images,.sub-project-details img{display:block}.project-item{margin-bottom:1px;padding-top:20px}.project-list li{margin-bottom:20px}.project-button{background-color:#333;border:none;border-radius:8px;box-shadow:0 12px 8px #0003;color:#f0f0f0;cursor:pointer;font-size:1.2rem;text-decoration:none}.project-button:hover{color:#61dafb}.visit-link{margin-bottom:30px;margin-top:10px;text-align:center}.video-container{border-radius:8px;box-shadow:0 4px 8px #0000004d;overflow:hidden;padding-top:56.25%;position:relative;width:100%}.video-container iframe{border:none;height:100%;left:0;position:absolute;top:0;width:100%}.lightbox-overlay{align-items:center;animation:fadeOverlay .25s ease;background-color:#000000e0;cursor:zoom-out;display:flex;inset:0;justify-content:center;position:fixed;z-index:2000}@keyframes fadeOverlay{0%{opacity:0}to{opacity:1}}.lightbox-img{animation:zoomIn .25s ease;border-radius:8px;box-shadow:0 8px 32px #0009;cursor:default;max-height:88vh;max-width:92vw}@keyframes zoomIn{0%{opacity:0;transform:scale(.88)}to{opacity:1;transform:scale(1)}}.lightbox-close{background:none;border:none;color:#fff;cursor:pointer;font-size:1.8rem;line-height:1;opacity:.8;position:fixed;right:20px;top:16px;transition:opacity .2s;z-index:2001}.lightbox-close:hover{opacity:1}.github-section{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:#0a0c1499;border-radius:8px;box-shadow:0 4px 8px #0000004d;color:#f0f0f0;margin:40px auto;max-width:800px;padding:20px;text-align:center}.github-section h2{color:#61dafb;font-size:2rem;margin-bottom:20px}.github-link{color:#61dafb;font-size:1.2rem;text-decoration:none}.github-link:hover{color:#f0f0f0;text-decoration:underline}.contact{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:#0a0c1499;border-radius:8px;box-shadow:0 4px 8px #0000004d;color:#f0f0f0;margin:40px auto;max-width:800px;padding:20px;text-align:center}.contact h2{color:#61dafb;font-size:2rem;margin-bottom:20px}.contact-info{align-items:center;display:flex;flex-direction:column;gap:14px}.contact-btn{align-items:center;border-radius:8px;color:#fff;display:inline-flex;font-size:1.1rem;font-weight:700;gap:10px;justify-content:center;max-width:340px;padding:12px 24px;text-decoration:none;transition:background-color .2s ease,transform .15s ease;width:100%}.contact-btn--email{background-color:#479ece}.contact-btn--email:hover{background-color:#21a1f1;transform:translateY(-2px)}.contact-btn--linkedin{background-color:#0077b5}.contact-btn--linkedin:hover{background-color:#005f93;transform:translateY(-2px)}.contact-btn-icon{font-size:1.3rem}.section-icon{color:#61dafb;font-size:1.5rem;margin-right:10px}.footer{backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);background:#0a0c148c;border-top:1px solid #61dafb1f;bottom:0;color:#fff;flex-direction:column;padding:20px;position:fixed;text-align:center;width:100%}.footer,.footer-content{align-items:center;display:flex}.footer-content{flex-wrap:wrap;gap:5px;justify-content:center}.footer-logo{height:65px}.footer p{margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.privacy-link{color:#fff;display:block;font-size:.9rem;margin-top:-15px;text-decoration:none}.privacy-link:hover{text-decoration:underline}@media (max-width:768px){.footer{align-items:center;flex-direction:row;flex-wrap:wrap;gap:10px;justify-content:center;padding:6px 10px}.footer-content{gap:6px}.footer-logo{height:36px}.footer p{font-size:.8rem}.privacy-link{font-size:.75rem;margin-top:0}}.navbar-section1{background-color:#333;padding:10px 0;position:fixed;top:0;width:100%;z-index:1000}.menu-list-desktop{list-style:none;padding:0}.download-item,.menu-list-desktop{display:flex;justify-content:center}.download-item{margin-top:20px}.download-btn{align-items:center;background-color:#479ece;border-radius:8px;color:#f0f0f0;display:inline-flex;font-size:1.2rem;font-weight:700;gap:0;justify-content:center;margin-top:10px;padding:10px;text-decoration:none;transition:background-color .3s ease,color .3s ease}.download-btn:hover{background-color:#21a1f1;color:#fff}.menu-list-desktop li{margin:0 15px}.menu-list-desktop li a{color:#fff;font-size:1.2rem;text-decoration:none}.menu-list-desktop li a:hover{text-decoration:underline}.navbar-section2{align-items:center;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);background:#0a0c148c;border-bottom:1px solid #61dafb1f;display:flex;justify-content:center;padding:5px;position:fixed;top:0;width:100%;z-index:1000}.navbar-logo-left,.navbar-logo-right{margin:20px 15px 0;width:80px}.navbar-logo-left img,.navbar-logo-right img{cursor:pointer;height:80px}.navbar-text{color:#fff;text-align:center}.navbar-text h1{font-size:2.5rem;margin:0}.navbar-text p{color:#bbb;font-size:1rem;margin:0}.menu-list-mobile{backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);background:#0a0c14b8;border:1px solid #61dafb1a;border-radius:0 0 10px 10px;display:none;flex-direction:column;height:auto;left:0;list-style:none;margin:0;overflow-y:auto;padding:10px 0 10px 10px;position:fixed;text-align:left;top:70px;width:100%;z-index:999}.menu-list-mobile.open{display:flex}@media (min-width:1025px){.menu-list-mobile{backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);background:#0a0c14b8;border:1px solid #61dafb1a;border-radius:10px;display:flex;flex-direction:column;height:calc(82vh - 120px);left:20px;padding:10px;top:120px;width:15%}.navbar-logo-left,.navbar-logo-right{display:none}.fixed-photo-right{border-radius:50%;box-shadow:0 4px 8px #0003;height:270px;position:fixed;right:30px;top:200px;width:270px}.fixed-photo-right img{border-radius:50%;height:100%;width:100%}}@media (max-width:1024px){.navbar-logo-left,.navbar-logo-right{display:block}.navbar-logo-left img{display:none}.menu-list-mobile{backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);background:#0a0c14f0;display:none;flex-direction:column;height:auto;top:70px;width:100%}.menu-list-mobile.open{display:flex}.navbar-text{margin:0 auto}}@media (max-width:768px){.menu-list-mobile{width:100%}.navbar-logo-right{margin:10px 6px 0;width:56px}.navbar-logo-right img{height:56px}.navbar-text h1{font-size:1.8rem}.navbar-text p{font-size:.82rem}.navbar-logo-left{margin:10px 6px 0;width:56px}}.hamburger-btn{background:none;border:2px solid #61dafb;border-radius:6px;color:#61dafb;cursor:pointer;display:block;font-size:1.4rem;margin-top:6px;padding:4px 8px}.hamburger-btn:hover{background-color:#61dafb26}@media (min-width:1025px){.hamburger-btn{display:none}}.menu-icon{color:#61dafb;font-size:1.2rem;margin-right:10px}.menu-list-mobile li{align-items:center;border-radius:8px;display:flex;margin-top:0;padding:5px;position:relative}.menu-list-mobile li a{color:#fff;font-size:1.2rem;margin-left:5px;text-decoration:none}.menu-list-mobile li:hover{background-color:#61dafb1a;color:#61dafb;text-decoration:underline}.menu-list-mobile li.active{background-color:#61dafb14;border-left:3px solid #61dafb}.menu-list-mobile li.active a{color:#61dafb;font-weight:700}section{scroll-margin-top:120px}.scroll-to-top{align-items:center;background-color:#479ece;border:none;border-radius:50%;bottom:24px;box-shadow:0 4px 12px #0006;color:#fff;cursor:pointer;display:flex;font-size:1.2rem;height:44px;justify-content:center;opacity:0;pointer-events:none;position:fixed;right:20px;transform:translateY(16px);transition:opacity .3s ease,transform .3s ease,background-color .2s ease;width:44px;z-index:998}.scroll-to-top.visible{opacity:1;pointer-events:auto;transform:translateY(0)}.scroll-to-top:hover{background-color:#21a1f1}@media (min-width:1025px){.scroll-to-top{display:none}}@media (max-width:1024px){.scroll-to-top{bottom:100px}}html{scroll-behavior:smooth}body{background-color:#1e1e1e;color:#f0f0f0;font-family:Arial,sans-serif;margin:0}.App{padding-bottom:60px;padding-top:30px;text-align:center}.App-logo{height:100px;margin-top:0}.navbar{background-color:#333;height:15px}.App-header,.navbar{position:fixed;top:0;width:100%;z-index:1000}.App-header{background-color:#282c34}.App-footer,.App-header{color:#f0f0f0;padding:20px}.App-footer{background-color:#333;bottom:0;position:fixed;text-align:center;width:100%}.background-container{background-image:url(/static/media/fondo.4507b7209511205e7078.png);background-position:50%;background-size:cover;margin-top:0;padding:50px 20px}@media (max-width:768px){.App-logo{height:100px;margin-top:10px}.App-header{padding:10px}}
/*# sourceMappingURL=main.df90507d.css.map*/