*{box-sizing:border-box;margin:0;padding:0}:root{--fondo-claro:#fff;--texto-claro:#000;--fondo-oscuro:#121212;--texto-oscuro:#f5f5f5;--color-principal:#087ec4;--color-secundario:#14a1f0}body{background-color:#fff;background-color:var(--fondo-claro);color:#000;color:var(--texto-claro);font-family:Open Sans,sans-serif;line-height:1.6;scroll-behavior:smooth}.App.dark{background-color:#121212;background-color:var(--fondo-oscuro);color:#f5f5f5;color:var(--texto-oscuro)}.navbar{background:#fff;background:var(--fondo-claro);box-shadow:0 2px 5px #0000001a;padding:20px 40px}.App.dark .navbar{background:#121212;background:var(--fondo-oscuro)}.logo{color:#087ec4;color:var(--color-principal);font-size:1.5rem;font-weight:700}.nav-links{display:flex;gap:15px;list-style:none}.nav-links li a{color:inherit;font-weight:600;text-decoration:none}.social-links a{color:#087ec4;color:var(--color-principal);margin-left:15px;text-decoration:none}.dark-mode-toggle{background:#14a1f0;background:var(--color-secundario);border:none;border-radius:4px;color:#fff;cursor:pointer;margin-left:20px;padding:8px 12px}.hero{height:100vh;margin-top:80px}.hero-overlay{align-items:center;color:#fff;display:flex;flex-direction:column;height:100%;justify-content:center;left:0;position:absolute;text-align:center;top:0;width:100%}.hero h1{font-size:3rem;margin-bottom:20px}.hero p{font-size:1.2rem;margin-bottom:30px}.btn{background:#14a1f0;background:var(--color-secundario);border-radius:5px;color:#fff;padding:10px 20px;text-decoration:none;transition:background .3s ease}.btn:hover{background:#087ec4;background:var(--color-principal)}.container{margin:80px auto 60px;max-width:1200px;width:90%}.about{text-align:center}.contact-details a{color:#087ec4;color:var(--color-principal);text-decoration:none}.cv-download{margin-top:15px}.projects-grid{display:flex;flex-wrap:wrap;justify-content:center}.project-item{background:#f9f9f9;border-radius:5px;box-shadow:0 0 5px #0000001a;flex-basis:calc(33.333% - 20px);flex-grow:1;flex-shrink:1;overflow:hidden;transition:transform .3s ease}.project-item:hover{transform:translateY(-5px)}.project-item img{display:block;width:100%}.project-info{padding:15px;text-align:left}.tech-stack{color:#555;font-size:.9rem}.skills-list{list-style:none;margin:20px auto;max-width:700px;padding:0;text-align:left}.skills-list li{border-bottom:1px solid #ddd;padding:8px 0}.experience-item{background:#f0f0f0;border-radius:5px;padding:20px}.experience-item h3{margin-bottom:10px}.experience-item .company,.experience-item .period{color:#555;font-style:italic}.experience-item .description{margin-top:10px}.education-item{background:#f0f0f0;border-radius:5px;margin-bottom:30px;padding:20px}.education-item h3{margin-bottom:10px}.education-item .institution,.education-item .period{color:#555;font-style:italic}.contact-info{margin-bottom:20px;text-align:center}.contact-form{display:flex;flex-direction:column;gap:15px;margin:0 auto;max-width:500px}.contact-form input,.contact-form textarea{font-size:1rem}.contact-form button{background:#087ec4;background:var(--color-principal);font-weight:600;padding:10px;transition:background .3s ease}.contact-form button:hover{background:#14a1f0;background:var(--color-secundario)}.footer{background:#000;color:#fff;font-size:.9rem;padding:20px 0;text-align:center}.footer a{color:#14a1f0;color:var(--color-secundario);text-decoration:none}@media (max-width:768px){.project-item{flex-basis:calc(50% - 20px);flex-grow:1;flex-shrink:1}.nav-links{flex-direction:column;gap:10px}}@media (max-width:480px){.project-item{flex:1 1 100%}.skills-list{max-width:100%}}*{transition:background-color .3s ease,color .3s ease}.App{padding-top:80px;text-align:center}.App.dark{background-color:#1c1c1c;color:#e0e0e0}.App.light{background-color:#fff;color:#333}.App.dark a{color:silver}.App.dark a:hover{color:#fff}.App.dark .dark-mode-toggle{background-color:#444;color:#fff}.App.dark .dark-mode-toggle:hover{background-color:#666}.App.dark .navbar{background-color:#2a2a2a}.App.dark .hero-overlay{background:#0006}.App.dark .contact-form,.App.dark .contact-info,.App.dark .education-item,.App.dark .experience-item{background-color:#2a2a2a;color:#e0e0e0}.navbar{align-items:center;background-color:#fff;box-shadow:0 2px 4px #0000001a;display:flex;justify-content:space-between;padding:.5rem 1rem;position:fixed;top:0;width:100%;z-index:1000}.App.dark .navbar .logo,.App.dark .navbar .nav-links ul li a{color:#fff}.navbar .logo{color:#333;font-size:1.5rem;font-weight:700;margin-left:20px;margin-right:20px}.navbar nav{flex:1 1;text-align:right}.navbar .nav-links ul{display:flex;gap:2rem;list-style:none;margin:0;padding:0}.navbar .nav-links ul li a{color:#333;font-weight:500;text-decoration:none}.navbar .menu-icon{cursor:pointer;display:none;font-size:2rem}.navbar .social-links{align-items:center;display:flex;gap:.5rem}.navbar .dark-mode-toggle{background-color:#007bff;border:none;border-radius:5px;color:#fff;cursor:pointer;margin-left:1rem;padding:.5rem 1rem}@media (max-width:768px){.navbar nav{align-items:center;background-color:#fff;box-shadow:0 4px 8px #0000001a;display:none;flex-direction:column;left:0;position:absolute;text-align:center;top:100%;width:100%}.navbar nav.nav-active{display:flex}.navbar .nav-links ul{flex-direction:column;gap:1rem;justify-content:center;padding:1rem 0;width:100%}.navbar .nav-links ul li a{text-align:center}.navbar .menu-icon{display:block}.navbar .social-links{display:none}}.hero{background-position:50%;background-size:cover;color:#fff;padding:100px 20px;position:relative;text-align:center}.hero-overlay{background:#00000080;border-radius:10px;padding:50px}.profile-picture{border-radius:50%;height:200px;object-fit:cover;object-position:top;width:200px}.about-content p,.profile-picture{margin-bottom:20px}.projects-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));margin-top:40px}.project-card{background-color:#fff;border-radius:10px;box-shadow:0 4px 8px #0000001a;display:flex;flex-direction:column;overflow:hidden;transition:transform .3s ease,box-shadow .3s ease}.project-card:hover{box-shadow:0 8px 16px #0003;transform:translateY(-5px)}.project-card-header{align-items:center;background-color:#333;color:#fff;display:flex;gap:10px;padding:15px}.project-platform{align-items:center;display:flex;font-size:1rem;gap:5px}.project-title{flex:1 1;font-size:1.5rem;margin:0;text-align:center}.project-card-image{height:200px;object-fit:cover;width:100%}.project-card-body{display:flex;flex:1 1;flex-direction:column;padding:20px;text-align:left}.description-box{background-color:#fefefe;border:1px solid #ddd;border-radius:5px;margin-bottom:10px;padding:10px}.project-description{line-height:1.4;margin-bottom:10px}.tech-stack{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:10px;min-height:50px}.tech-item{align-items:center;background-color:#f0f0f0;border-radius:4px;box-shadow:0 2px 4px #0000001a;display:inline-flex;font-size:.9rem;padding:5px 8px;transition:transform .2s ease,box-shadow .2s ease}.tech-item:hover{box-shadow:0 4px 8px #0003;transform:translateY(-2px)}.App.dark .tech-item{background-color:#3a3a3a;color:#fff}.expand-btn{background:none;color:#007bff;font-size:.9rem;margin-bottom:10px;padding:0;text-decoration:underline}.expand-btn,.repo-btn{border:none;cursor:pointer}.repo-btn{background-color:#007bff;border-radius:0 0 10px 10px;color:#fff;display:block;font-size:1rem;margin-top:auto;padding:12px 0;text-align:center;transition:background-color .3s ease;width:100%}.repo-btn:hover{background-color:#0056b3}.App.dark .project-card{background-color:#2a2a2a;color:#e0e0e0}.App.dark .project-card:hover{box-shadow:0 8px 16px #ffffff1a}.App.dark .project-card-header{background-color:#222}.App.dark .expand-btn{color:#5aa4ff}.App.dark .repo-btn{background-color:#444}.App.dark .repo-btn:hover{background-color:#666}.education-grid,.experience-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));margin-top:40px}.education-item,.experience-item{background-color:#fff;border-radius:10px;box-shadow:0 4px 8px #0000001a;overflow:hidden;transition:transform .3s ease,box-shadow .3s ease}.education-item:hover,.experience-item:hover{box-shadow:0 8px 16px #0003;transform:translateY(-5px)}.education-info,.experience-info{padding:20px;text-align:left}.education-info h3,.experience-info h3{font-size:1.5em;margin-top:0}.education-info p,.experience-info p{margin:10px 0}.contact-info{background-color:#f9f9f9;border-radius:10px;box-shadow:0 4px 8px #0000001a;margin:0 auto 30px;max-width:600px;padding:20px;text-align:left}.contact-info p{align-items:center;display:flex;font-size:1.1em;margin-bottom:10px}.contact-info p svg{margin-right:10px}.contact-info a{color:#007bff;text-decoration:none}.contact-info a:hover{text-decoration:underline}.contact-form{background-color:#f9f9f9;border-radius:10px;box-shadow:0 4px 8px #0000001a;margin:20px auto;max-width:600px;padding:20px}.contact-form input,.contact-form textarea{border:1px solid #ccc;border-radius:5px;margin-bottom:10px;padding:10px;width:100%}.contact-form button{background-color:#007bff;border:none;border-radius:5px;color:#fff;cursor:pointer;padding:10px 20px;transition:background-color .3s ease}.contact-form button:hover{background-color:#0056b3}.social-links-footer a{margin:0 10px}.App.dark .description-box{background-color:#3a3a3a;color:#e0e0e0}.skills{margin-top:60px;padding:0 20px}.skills h2{font-size:2em;margin-bottom:30px;text-align:center}.top-skills-highlight{margin-bottom:40px}.top-skills-row{display:flex;flex-wrap:wrap;gap:30px;justify-content:center}.top-skills-row .skill-item.top{align-items:center;display:flex;flex-direction:column;text-align:center}.top-skills-row .skill-item.top span{font-size:1.1rem;font-weight:600;margin-top:10px}.stack-section{margin-bottom:40px}.stack-title{border-bottom:1px solid #ddd;font-size:1.2rem;font-weight:600;margin-bottom:15px;padding-bottom:5px;text-align:left}.skills-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));justify-items:center}.skill-item{align-items:center;display:flex;flex-direction:column;max-width:120px;padding:10px;text-align:center}.skill-item span{font-size:.9rem;font-weight:500;margin-top:8px}.button-group{display:flex;gap:10px;justify-content:center;margin-top:20px}.experience-grid{grid-gap:20px;gap:20px;margin-top:40px}.experience-info{padding:20px}.experience-info h3{font-size:1.5em}.experience-info .company{margin-bottom:10px}.experience-info .description{margin:10px 0}.details-icon-btn{background:none;border:none;color:#007bff;cursor:pointer;margin-top:10px;padding:0}.modal-overlay{align-items:center;background:#0009;display:flex;height:100%;justify-content:center;left:0;padding:80px 0;position:fixed;top:0;width:100%;z-index:2000}.modal-content{background:#fff;border-radius:10px;max-height:90vh;max-width:900px;overflow-y:auto;padding:30px;position:relative;width:90%}.modal-close-btn{background:none;border:none;cursor:pointer;font-size:1.3rem;position:absolute;right:15px;top:15px}.details-text{font-size:1.1rem;line-height:1.8;list-style:disc outside;margin-bottom:20px;margin-top:20px;padding-left:40px;text-align:left}.details-text li{margin-bottom:10px}.App.dark .modal-content{background:#2a2a2a;border:1px solid #555;color:#e0e0e0}.App.dark .details-text{background-color:#3a3a3a;border-color:#555}.experience-grid{grid-gap:30px;display:grid;gap:30px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));margin-bottom:50px;margin-top:50px}.experience-item{background-color:#fff;border-radius:10px;box-shadow:0 4px 8px #0000001a;margin-bottom:30px;overflow:hidden;transition:transform .3s ease,box-shadow .3s ease}.experience-item:hover{box-shadow:0 8px 16px #0003;transform:translateY(-5px)}.experience-info{padding:25px;text-align:left}.experience-info h3{font-size:1.6em;margin-top:0}.experience-info .company{font-style:italic;margin-bottom:15px}.experience-info .description{margin:15px 0}.App.dark .experience-item{background-color:#2a2a2a;color:#e0e0e0}.App.dark .experience-item:hover{box-shadow:0 8px 16px #ffffff1a}.App.dark .experience-info .description{color:#e0e0e0}
/*# sourceMappingURL=main.2cabc323.css.map*/