.header{-webkit-backdrop-filter:blur(14px);z-index:1000;background:#020617d1;border-bottom:1px solid #38bdf814;width:100%;height:72px;position:fixed;top:0;left:0}.container{align-items:center;width:100%;max-width:1180px;height:100%;margin:0 auto;padding:0 24px;display:flex}.logo{color:#f8fafc;letter-spacing:-.5px;font-size:1.35rem;font-weight:700;text-decoration:none;transition:all .3s}.logo span{color:#38bdf8}.logo:hover{transform:translateY(-1px)}.nav{align-items:center;gap:32px;margin-left:auto;margin-right:28px;display:flex}.nav a{color:#cbd5e1;padding:26px 0;font-size:.88rem;font-weight:500;text-decoration:none;transition:color .3s;position:relative}.nav a:hover{color:#fff}.nav a.active{color:#38bdf8}.nav a.active:after{content:"";background:#38bdf8;width:100%;height:2px;position:absolute;bottom:0;left:0;box-shadow:0 0 10px #38bdf8cc}.header-socials{align-items:center;gap:10px;display:flex}.social-link{color:#cbd5e1;border:1px solid #38bdf840;border-radius:18px;justify-content:center;align-items:center;gap:7px;height:34px;padding:0 14px;font-size:.78rem;font-weight:500;text-decoration:none;transition:all .3s;display:flex}.social-link svg{fill:currentColor;width:15px;height:15px}.social-link:hover{color:#38bdf8;background:#38bdf812;border-color:#38bdf8;transform:translateY(-2px)}.menu-toggle{cursor:pointer;background:#0f172ab3;border:1px solid #38bdf833;border-radius:8px;flex-direction:column;justify-content:center;align-items:center;gap:5px;width:42px;height:42px;margin-left:auto;padding:0;display:none}.menu-toggle span{background:#e2e8f0;border-radius:10px;width:20px;height:2px;transition:all .3s}.menu-toggle.open span:first-child{transform:translateY(7px)rotate(45deg)}.menu-toggle.open span:nth-child(2){opacity:0}.menu-toggle.open span:nth-child(3){transform:translateY(-7px)rotate(-45deg)}.mobile-nav{display:none}@media (width<=900px){.nav{gap:20px;margin-right:18px}.social-link{padding:0 10px}.social-link span{display:none}}@media (width<=768px){.header{height:68px}.container{padding:0 20px}.nav,.header-socials{display:none}.menu-toggle{display:flex}.mobile-nav{-webkit-backdrop-filter:blur(14px);opacity:0;visibility:hidden;pointer-events:none;background:#020617f7;border-bottom:1px solid #38bdf81f;flex-direction:column;gap:4px;width:100%;padding:18px 20px 24px;transition:opacity .3s,transform .3s,visibility .3s;display:flex;position:absolute;top:68px;left:0;transform:translateY(-15px)}.mobile-nav.show{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0)}.mobile-nav>a{color:#cbd5e1;border-radius:8px;padding:14px 12px;font-size:.95rem;font-weight:500;text-decoration:none;transition:all .3s}.mobile-nav>a:hover{color:#38bdf8;background:#38bdf80f}.mobile-socials{border-top:1px solid #94a3b81a;gap:10px;margin-top:12px;padding-top:16px;display:flex}.mobile-socials a{text-align:center;color:#cbd5e1;border:1px solid #38bdf833;border-radius:8px;flex:1;padding:11px;font-size:.85rem;text-decoration:none;transition:all .3s}.mobile-socials a:hover{color:#38bdf8;background:#38bdf80f;border-color:#38bdf8}}@media (width<=400px){.container{padding:0 16px}.logo{font-size:1.2rem}}.home{width:100%}.hero{color:#fff;background-image:url(./home-codigo-CHRql7Cc.jpg);background-position:100%;background-repeat:no-repeat;background-size:cover;align-items:center;min-height:100vh;display:flex;position:relative;overflow:hidden}.hero-overlay{z-index:1;background:linear-gradient(90deg,#020617fa 0%,#020617f0 25%,#020617b3 48%,#02061740 75%,#02061733 100%);position:absolute;inset:0}.hero-container{z-index:2;width:100%;max-width:1180px;margin:0 auto;padding:110px 24px 70px;position:relative}.hero-content{width:100%;max-width:600px}.hero-badge{color:#cbd5e1;letter-spacing:.7px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0f172a8c;border:1px solid #38bdf859;border-radius:20px;align-items:center;gap:8px;margin-bottom:22px;padding:7px 13px;font-size:.68rem;font-weight:600;display:inline-flex}.status-dot{background:#22c55e;border-radius:50%;width:7px;height:7px;box-shadow:0 0 8px #22c55ee6}.hero h1{color:#f8fafc;letter-spacing:-2px;margin:0;font-size:clamp(3.2rem,6vw,4.8rem);font-weight:800;line-height:1.05}.hero h2{color:#f8fafc;margin:10px 0 22px;font-size:clamp(1.7rem,3vw,2.35rem);font-weight:700;line-height:1.2}.hero h2 span{color:#38bdf8;text-shadow:0 0 18px #38bdf833}.hero-description{color:#cbd5e1;max-width:560px;margin:0 0 28px;font-size:1rem;line-height:1.75}.hero-technologies{flex-wrap:wrap;align-items:center;gap:20px;margin-bottom:34px;display:flex}.technology{color:#cbd5e1;align-items:center;gap:7px;font-size:.78rem;font-weight:500;display:flex}.technology-icon{background:#0f172abf;border:1px solid #94a3b81f;border-radius:6px;justify-content:center;align-items:center;width:37px;height:27px;font-size:.65rem;font-weight:700;display:flex}.react-icon{color:#38bdf8;font-size:1.25rem}.js-icon{color:#facc15}.html-icon{color:#f97316}.css-icon{color:#38bdf8}.api-icon{color:#a78bfa}.hero-buttons{flex-wrap:wrap;align-items:center;gap:14px;display:flex}.btn{border-radius:8px;justify-content:center;align-items:center;gap:9px;min-height:44px;padding:0 20px;font-size:.86rem;font-weight:600;text-decoration:none;transition:transform .3s,background .3s,border-color .3s,box-shadow .3s;display:inline-flex}.btn.primary{color:#02111d;background:#38bdf8;border:1px solid #38bdf8;box-shadow:0 0 20px #38bdf81f}.btn.primary:hover{background:#0ea5e9;border-color:#0ea5e9;transform:translateY(-2px);box-shadow:0 8px 25px #0ea5e933}.btn.primary span{font-size:1.1rem;transition:transform .3s}.btn.primary:hover span{transform:translate(3px)}.btn.outline{color:#e2e8f0;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#02061740;border:1px solid #38bdf88c}.btn.outline:hover{color:#38bdf8;background:#38bdf812;border-color:#38bdf8;transform:translateY(-2px)}@media (width<=900px){.hero{background-position:65%}.hero-overlay{background:linear-gradient(90deg,#020617fa 0%,#020617e6 45%,#0206178c 100%)}.hero-content{max-width:560px}}@media (width<=768px){.hero{background-position:72%;align-items:flex-start;min-height:100svh}.hero-overlay{background:linear-gradient(#020617f5 0%,#020617e6 45%,#020617c7 100%)}.hero-container{justify-content:center;padding:120px 20px 60px;display:flex}.hero-content{text-align:center;flex-direction:column;align-items:center;width:100%;max-width:600px;display:flex}.hero-badge{margin-bottom:18px;font-size:.62rem}.hero h1{letter-spacing:-1.5px;font-size:clamp(2.7rem,12vw,4rem)}.hero h2{margin-top:8px;font-size:1.65rem}.hero-description{margin-bottom:24px;font-size:.94rem;line-height:1.65}.hero-technologies{justify-content:center;gap:14px;margin-bottom:28px}.technology{font-size:.72rem}.hero-buttons{flex-direction:column;align-items:stretch;width:100%;max-width:320px}.btn{width:100%}}@media (width<=400px){.hero-container{padding:110px 16px 50px}.hero h1{font-size:2.5rem}.hero h2{font-size:1.45rem}.hero-description{font-size:.88rem}.hero-technologies{gap:11px}}.project-card{background:#0f172ab8;border:1px solid #38bdf81f;border-radius:18px;transition:transform .35s,border-color .35s,box-shadow .35s;position:relative;overflow:hidden;box-shadow:0 15px 40px #00000040}.project-card:hover{border-color:#38bdf873;transform:translateY(-8px);box-shadow:0 20px 50px #0006,0 0 25px #38bdf814}.project-image{background:#0f172a;width:100%;height:210px;position:relative;overflow:hidden}.project-image img{object-fit:cover;width:100%;height:100%;transition:transform .5s;display:block}.project-card:hover .project-image img{transform:scale(1.05)}.project-image:after{content:"";pointer-events:none;background:linear-gradient(#0000 40%,#020617bf);position:absolute;inset:0}.featured-badge{z-index:2;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#38bdf8;letter-spacing:.3px;background:#020617c7;border:1px solid #38bdf859;border-radius:999px;padding:.45rem .75rem;font-size:.72rem;font-weight:600;position:absolute;top:16px;left:16px}.project-content{padding:1.5rem}.project-content h3{color:#fff;margin:0 0 .75rem;font-size:1.3rem;line-height:1.3}.project-content p{color:#94a3b8;margin:0;font-size:.9rem;line-height:1.65}.techs{flex-wrap:wrap;gap:.5rem;margin-top:1.25rem;display:flex}.techs span{color:#7dd3fc;background:#0f172ae6;border:1px solid #38bdf81f;border-radius:6px;padding:.35rem .65rem;font-size:.7rem;font-weight:500}.links{border-top:1px solid #94a3b81a;justify-content:space-between;align-items:center;gap:1rem;margin-top:1.5rem;padding-top:1.2rem;display:flex}.links a{font-size:.85rem;font-weight:600;text-decoration:none;transition:color .3s}.project-demo{color:#38bdf8;align-items:center;gap:.35rem;display:inline-flex}.project-demo span{font-size:1rem;transition:transform .3s}.project-demo:hover{color:#7dd3fc}.project-demo:hover span{transform:translate(2px,-2px)}.project-github{color:#cbd5e1}.project-github:hover{color:#38bdf8}.project-card.featured{background:linear-gradient(145deg,#0f172af2,#081426e6);border-color:#38bdf833}.project-card.featured:hover{border-color:#38bdf88c;box-shadow:0 25px 60px #00000073,0 0 35px #38bdf81a}.featured-projects .project-card:first-child .project-image{height:330px}.featured-projects .project-card:first-child .project-content{padding:2rem}.featured-projects .project-card:first-child .project-content h3{font-size:1.8rem}@media (width<=900px){.featured-projects .project-card:first-child .project-image{height:280px}}@media (width<=600px){.project-card{border-radius:15px}.project-image{height:190px}.project-content{padding:1.25rem}.project-content h3{font-size:1.2rem}.project-content p{font-size:.88rem}.featured-projects .project-card:first-child .project-image{height:210px}.featured-projects .project-card:first-child .project-content{padding:1.25rem}.featured-projects .project-card:first-child .project-content h3{font-size:1.5rem}.links{margin-top:1.25rem}}.projects{background:#020617;min-height:100vh;padding:8rem 2rem}.projects-header{text-align:center;max-width:700px;margin:0 auto 4rem}.section-label{color:#38bdf8;letter-spacing:2px;margin-bottom:1rem;font-size:.8rem;font-weight:600;display:inline-block}.projects-header h2{color:#fff;margin:0 0 1rem;font-size:clamp(2.2rem,5vw,3rem);line-height:1.2}.projects-header h2 span{color:#38bdf8}.projects-header p{color:#94a3b8;margin:0;font-size:1rem;line-height:1.7}.featured-projects{grid-template-columns:repeat(2,1fr);gap:2rem;max-width:1100px;margin:0 auto;display:grid}.featured-projects .project-card:first-child{grid-column:1/-1}.other-projects{max-width:1100px;margin:7rem auto 0}.other-projects-header{margin-bottom:2.5rem}.other-projects-header h3{color:#fff;margin:0 0 .7rem;font-size:1.8rem}.other-projects-header p{color:#94a3b8;max-width:600px;margin:0;font-size:.95rem;line-height:1.6}.projects-grid{grid-template-columns:repeat(3,1fr);gap:1.8rem;display:grid}@media (width<=900px){.featured-projects{grid-template-columns:1fr}.featured-projects .project-card:first-child{grid-column:auto}.projects-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=600px){.projects{padding:6rem 1.2rem}.projects-header{margin-bottom:3rem}.projects-header h2{font-size:2rem}.projects-header p{font-size:.9rem}.featured-projects{grid-template-columns:1fr;gap:1.5rem}.other-projects{margin-top:5rem}.other-projects-header{margin-bottom:2rem}.other-projects-header h3{font-size:1.5rem}.other-projects-header p{font-size:.9rem}.projects-grid{grid-template-columns:1fr;gap:1.5rem}}.skills{color:#fff;background:#0f172a;padding:8rem 2rem}.skills-container{max-width:1100px;margin:0 auto}.skills-header{text-align:center;max-width:650px;margin:0 auto 4rem}.skills-header .section-label{color:#38bdf8;letter-spacing:2px;margin-bottom:1rem;font-size:.8rem;font-weight:600;display:inline-block}.skills-header h2{margin:0 0 1rem;font-size:clamp(2.2rem,5vw,3rem);line-height:1.2}.skills-header h2 span{color:#38bdf8}.skills-header p{color:#94a3b8;margin:0;font-size:1rem;line-height:1.7}.skills-grid{grid-template-columns:repeat(5,1fr);gap:1.2rem;display:grid}.skill-card{text-align:center;background:#020617a6;border:1px solid #38bdf81a;border-radius:16px;flex-direction:column;justify-content:center;align-items:center;min-height:170px;padding:1.5rem;transition:transform .3s,border-color .3s,box-shadow .3s,background .3s;display:flex}.skill-card:hover{background:#020617e6;border-color:#38bdf866;transform:translateY(-6px);box-shadow:0 15px 35px #0000004d,0 0 25px #38bdf814}.skill-icon{color:#38bdf8;background:#0f172acc;border:1px solid #38bdf826;border-radius:14px;justify-content:center;align-items:center;width:64px;height:64px;margin-bottom:1rem;font-size:1.3rem;font-weight:700;transition:transform .3s,border-color .3s,box-shadow .3s;display:flex}.skill-card:hover .skill-icon{border-color:#38bdf866;transform:scale(1.08);box-shadow:0 0 20px #38bdf81f}.skill-card h3{color:#f8fafc;margin:0 0 .4rem;font-size:1rem;font-weight:600}.skill-card>span{color:#64748b;font-size:.75rem}@media (maxwidth:1000px){.skills-grid{grid-template-columns:repeat(4,1fr)}}@media (width<=800px){.skills{padding:7rem 1.5rem}.skills-grid{grid-template-columns:repeat(3,1fr)}}@media (width<=600px){.skills{padding:6rem 1.2rem}.skills-header{margin-bottom:3rem}.skills-header h2{font-size:2rem}.skills-header p{font-size:.9rem}.skills-grid{grid-template-columns:repeat(2,1fr);gap:1rem}.skill-card{min-height:155px;padding:1.2rem .8rem}.skill-icon{width:55px;height:55px;margin-bottom:.8rem;font-size:1.1rem}.skill-card h3{font-size:.9rem}.skill-card>span{font-size:.7rem}}@media (width<=380px){.skill-card{grid-template-columns:1fr;min-height:140px}}.about{color:#fff;background:#020617;padding:8rem 2rem}.about-container{max-width:1100px;margin:0 auto}.about-header{text-align:center;max-width:650px;margin:0 auto 5rem}.about-header .section-label{color:#38bdf8;letter-spacing:2px;margin-bottom:1rem;font-size:.8rem;font-weight:600;display:inline-block}.about-header h2{margin:0 0 1rem;font-size:clamp(2.2rem,5vw,3rem);line-height:1.2}.about-header h2 span{color:#38bdf8}.about-header p{color:#94a3b8;margin:0;font-size:1rem;line-height:1.7}.about-content{grid-template-columns:300px 1fr;align-items:center;gap:5rem;display:grid}.about-profile{text-align:center;flex-direction:column;align-items:center;display:flex}.about-photo-wrapper{width:240px;height:300px;margin-bottom:1.5rem;position:relative}.about-photo-wrapper:before{content:"";z-index:0;border:1px solid #38bdf859;border-radius:20px;width:100%;height:100%;position:absolute;top:12px;left:12px}.about-photo{object-fit:cover;z-index:1;border:1px solid #38bdf880;border-radius:20px;width:100%;height:100%;transition:transform .4s,box-shadow .4s;position:relative}.about-photo:hover{transform:translate(-4px,-4px);box-shadow:0 20px 40px #0006,0 0 30px #38bdf81a}.about-profile h3{color:#f8fafc;margin:0 0 .4rem;font-size:1.1rem}.about-technologies{color:#64748b;font-size:.8rem}.about-text{max-width:680px}.about-text p{color:#cbd5e1;margin:0 0 1.2rem;font-size:.98rem;line-height:1.8}.about-text p:last-of-type{margin-bottom:2rem}.about-text p span{color:#38bdf8;font-weight:600}.about-text strong{color:#f8fafc;font-weight:600}.about-links{gap:1rem;margin-top:1.5rem;display:flex}.about-link{color:#38bdf8;background:#0f172a99;border:1px solid #38bdf840;border-radius:8px;justify-content:center;align-items:center;gap:.6rem;padding:.75rem 1.2rem;font-size:.9rem;font-weight:500;text-decoration:none;transition:transform .3s,background .3s,border-color .3s,box-shadow .3s;display:inline-flex}.about-link svg{font-size:1.1rem}.about-link:hover{color:#020617;background:#38bdf8;border-color:#38bdf8;transform:translateY(-3px);box-shadow:0 8px 20px #38bdf826}@media (width<=900px){.about-content{grid-template-columns:240px 1fr;gap:3rem}.about-photo-wrapper{width:210px;height:270px}}@media (width<=750px){.about{padding:7rem 1.5rem}.about-header{margin-bottom:4rem}.about-content{grid-template-columns:1fr;gap:3rem}.about-profile{order:1}.about-text{order:2;max-width:700px;margin:0 auto}}@media (width<=600px){.about{padding:6rem 1.2rem}.about-header{margin-bottom:3.5rem}.about-header h2{font-size:2rem}.about-header p{font-size:.9rem}.about-photo-wrapper{width:190px;height:240px}.about-photo-wrapper:before{top:8px;left:8px}.about-text p{font-size:.9rem;line-height:1.7}.about-links{flex-wrap:wrap}.about-link{flex:1;min-width:130px}}@media (width<=380px){.about-photo-wrapper{width:170px;height:220px}.about-links{flex-direction:column}.about-link{width:100%}}.footer{color:#fff;background:#020610;padding:7rem 2rem 2rem;position:relative;overflow:hidden}.footer:before{content:"";background:#38bdf8;width:180px;height:1px;position:absolute;top:0;left:50%;transform:translate(-50%);box-shadow:0 0 20px #38bdf880}.footer-container{max-width:1100px;margin:0 auto}.footer-content{text-align:center;max-width:700px;margin:0 auto 3rem}.footer-label{color:#38bdf8;letter-spacing:2px;margin-bottom:1rem;font-size:.8rem;font-weight:600;display:inline-block}.footer-content h2{margin:0 0 1rem;font-size:clamp(2.2rem,5vw,3.2rem);line-height:1.2}.footer-content h2 span{color:#38bdf8}.footer-content p{color:#94a3b8;max-width:550px;margin:0 auto;font-size:1rem;line-height:1.7}.footer-links{justify-content:center;gap:1rem;margin-bottom:5rem;display:flex}.footer-link{color:#38bdf8;background:#0f172a99;border:1px solid #38bdf833;border-radius:8px;justify-content:center;align-items:center;gap:.6rem;min-width:130px;padding:.8rem 1.2rem;font-size:.9rem;font-weight:500;text-decoration:none;transition:transform .3s,background .3s,border-color .3s,box-shadow .3s;display:inline-flex}.footer-link svg{font-size:1.1rem}.footer-link:hover{color:#020617;background:#38bdf8;border-color:#38bdf8;transform:translateY(-4px);box-shadow:0 10px 25px #38bdf826}.footer-bottom{border-top:1px solid #94a3b81a;justify-content:space-between;align-items:center;padding-top:1.5rem;display:flex}.footer-logo{color:#38bdf8;font-size:1rem;font-weight:600}.copyright{color:#64748b;text-align:right;font-size:.75rem}@media (width<=700px){.footer{padding:6rem 1.5rem 2rem}.footer-links{margin-bottom:4rem}.footer-bottom{text-align:center;flex-direction:column;gap:.8rem}.copyright{text-align:center}}@media (width<=500px){.footer{padding:5rem 1.2rem 1.5rem}.footer-content{margin-bottom:2.5rem}.footer-content h2{font-size:2rem}.footer-content p{font-size:.9rem}.footer-links{flex-direction:column;align-items:stretch;gap:.8rem;margin-bottom:3.5rem}.footer-link{width:100%}.footer-bottom{padding-top:1.2rem}}*{box-sizing:border-box;margin:0;padding:0}
