@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;600;700;800&display=swap";*{margin:0;padding:0;box-sizing:border-box}:root{--color-cream: #F6F0D7;--color-light-green: #C5D89D;--color-olive: #9CAB84;--color-dark-olive: #89986D;--color-fondo: #1a1d16;--color-text-primary: var(--color-cream);--color-text-secondary: var(--color-light-green);--color-text-muted: #a8b088;--gradient-primary: linear-gradient(135deg, var(--color-light-green) 0%, var(--color-dark-olive) 100%);--gradient-secondary: linear-gradient(135deg, var(--color-olive) 0%, var(--color-dark-olive) 100%);--gradient-accent: linear-gradient(135deg, var(--color-cream) 0%, var(--color-light-green) 100%);--gradient-hero: linear-gradient(135deg, var(--color-cream) 0%, var(--color-light-green) 50%, var(--color-olive) 100%);--glass-bg: rgba(197, 216, 157, .08);--glass-border: rgba(197, 216, 157, .15)}html{scroll-behavior:smooth;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}body{background-color:var(--color-fondo);color:var(--color-text-primary);line-height:1.6}@keyframes gradientShift{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}.section{padding:4rem 2rem;scroll-margin-top:100px;position:relative}.section>h1{font-size:3rem;margin-bottom:.5rem;font-weight:800;background:var(--gradient-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.section>h2{margin-top:3rem;margin-bottom:1.5rem;font-size:2rem;font-weight:700;color:var(--color-light-green)}.section>p{color:var(--color-text-secondary);font-size:1.1rem;max-width:800px}.navbar{position:fixed;top:0;left:0;width:100%;background:#9cab841f;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--glass-border);padding:.75rem 2rem;display:flex;align-items:center;z-index:1000;box-shadow:0 8px 32px #0006;transition:all .3s ease}.navbar:hover{box-shadow:0 12px 48px #c5d89d40}.navbar button{color:var(--color-cream);background:transparent;border:none;font-size:1rem;font-weight:600;padding:.6rem 1.2rem;border-radius:25px;cursor:pointer;position:relative;transition:all .3s ease;overflow:hidden}.navbar button:before{content:"";position:absolute;bottom:0;left:50%;width:0;height:2px;background:var(--gradient-accent);transition:all .3s ease;transform:translate(-50%)}.navbar button:hover{color:var(--color-light-green);background:#c5d89d26}.navbar button:hover:before{width:80%}.navbar-brand{font-size:1.4rem;font-weight:800;letter-spacing:.05em;background:var(--gradient-accent);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;-webkit-user-select:none;user-select:none;flex-shrink:0}.navbar-links{position:absolute;left:50%;transform:translate(-50%);display:flex;gap:.5rem;align-items:center}.navbar-right{margin-left:auto;flex-shrink:0}.lang-btn{color:var(--color-cream);border:1.5px solid var(--glass-border);font-size:.85rem;font-weight:700;padding:.4rem .8rem;border-radius:20px;cursor:pointer;letter-spacing:.08em;transition:all .3s ease}.navbar .lang-btn{background:#c5d89d26}.navbar .lang-btn:hover{background:#89986d40;border-color:var(--color-dark-olive)!important;color:var(--color-olive)}#home{min-height:90vh;display:flex;flex-direction:column;justify-content:center;position:relative;overflow:hidden}#home:before{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:var(--gradient-hero);background-size:400% 400%;animation:gradientShift 15s ease infinite;opacity:.08;z-index:-1}#home>h1{font-size:3.5rem;font-weight:800;line-height:1.2;margin-bottom:2rem;background:linear-gradient(135deg,var(--color-cream) 0%,var(--color-light-green) 50%,var(--color-olive) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:fadeInUp .8s ease}#home>h2{font-size:2rem;margin-top:3rem;margin-bottom:1rem;color:var(--color-light-green)}#home>p{font-size:1.2rem;color:var(--color-text-secondary);max-width:700px;animation:fadeInUp 1s ease}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.social-links{display:flex;gap:1rem;margin-top:2rem;animation:fadeInUp 1.2s ease}.social-links a{width:60px;height:60px;display:flex;align-items:center;justify-content:center;background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:15px;transition:all .3s ease;position:relative;overflow:hidden}.social-links a:before{content:"";position:absolute;inset:0;background:var(--gradient-primary);opacity:0;transition:opacity .3s ease}.social-links a:hover{transform:translateY(-5px) scale(1.05);box-shadow:0 10px 30px #c5d89d66}.social-links a:hover:before{opacity:.25}.social-links a svg{position:relative;z-index:1}#github{color:var(--color-cream);text-decoration:none}#github:hover{color:var(--color-light-green)}#linkedin{color:var(--color-olive);text-decoration:none}#linkedin:hover{color:var(--color-light-green)}#CV{color:var(--color-light-green);text-decoration:none}#CV:hover{color:var(--color-cream)}.projects-grid,.big-projects-grid{margin-top:1rem;justify-items:center;display:grid;gap:2rem;perspective:1000px}.projects-grid{grid-template-columns:repeat(auto-fill,minmax(400px,1fr))}.big-projects-grid{grid-template-columns:repeat(auto-fill,minmax(800px,1fr))}.project-card{gap:1rem;background:var(--glass-bg);border:1px solid var(--glass-border);padding:2rem;border-radius:20px;text-align:left;position:relative;transition:all .4s cubic-bezier(.23,1,.32,1);transform-style:preserve-3d;overflow:hidden}.project-card:before{content:"";position:absolute;inset:0;background:var(--gradient-primary);opacity:0;transition:opacity .4s ease;border-radius:20px}.project-card:hover{transform:translateY(-10px);box-shadow:0 20px 60px #9cab844d;border-color:#c5d89d80;cursor:pointer}.project-card:hover:before{opacity:.08}.project-card h1{color:var(--color-cream);font-size:1.8rem;font-weight:700;margin-bottom:1rem;position:relative;z-index:1}.project-card p{color:var(--color-text-secondary);text-align:justify;position:relative;z-index:1;line-height:1.7}.project-items{list-style:none;display:flex;gap:.5rem;flex-wrap:wrap;margin:1rem 0;position:relative;z-index:1}.project-item-element{background:var(--gradient-secondary);color:var(--color-cream);padding:.4rem .8rem;border-radius:12px;font-weight:600;font-size:.85rem;transition:all .3s ease}.project-item-element:hover{transform:translateY(-2px);box-shadow:0 5px 15px #9cab8480}.github-link{font-size:1.5rem;color:var(--color-cream);transition:all .3s ease;margin-top:1rem;display:inline-block;position:relative;z-index:1}.github-link:hover{color:var(--color-light-green);transform:scale(1.15)}.skill-selectors{display:flex;justify-content:flex-start;gap:1.2rem;margin-top:2rem;margin-bottom:3rem;flex-wrap:wrap}.skill-selector{background:var(--glass-bg);border:1px solid var(--glass-border);color:var(--color-text-secondary);padding:.7rem 1.8rem;border-radius:30px;cursor:pointer;font-weight:700;font-size:.95rem;transition:all .4s cubic-bezier(.23,1,.32,1);letter-spacing:.05em;text-transform:uppercase}.skill-selector:hover{background:#c5d89d26;transform:translateY(-3px);border-color:var(--color-light-green);box-shadow:0 10px 20px #0003}.skill-selector.active{background:var(--gradient-primary);border-color:transparent;color:var(--color-cream);box-shadow:0 10px 25px #9cab8466}.technologies{margin-top:1rem;display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1.5rem}.techHability{display:flex;flex-direction:row;gap:1rem;align-items:center;justify-content:center;padding:1.2rem 1.5rem;background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:15px;transition:all .3s ease;position:relative;overflow:hidden}.techHability:before{content:"";position:absolute;inset:0;opacity:0;transition:opacity .3s ease}.techHability[data-tech=Java]:before{background:linear-gradient(135deg,#f89820,#e74c3c)}.techHability[data-tech=Springboot]:before{background:linear-gradient(135deg,#6db33f,#b8e680)}.techHability[data-tech=NestJS]:before{background:linear-gradient(135deg,#e0234e,#ff5277)}.techHability[data-tech=TypeScript]:before{background:linear-gradient(135deg,#3178c6,#5ca0e6)}.techHability[data-tech=Sql]:before{background:linear-gradient(135deg,#336791,#4facfe)}.techHability[data-tech=Python]:before{background:linear-gradient(135deg,#306998,#ffd43b)}.techHability[data-tech="C/C++"]:before{background:linear-gradient(135deg,#00599c,#659ad2)}.techHability[data-tech=HTML5]:before{background:linear-gradient(135deg,#e34c26,#eb9a77)}.techHability[data-tech=CSS]:before{background:linear-gradient(135deg,#264de4,#5278d1)}.techHability[data-tech=JavaScript]:before{background:linear-gradient(135deg,#cfc166,#f7df1e)}.techHability[data-tech=React]:before{background:linear-gradient(135deg,#88cde0,#00d8ff)}.techHability[data-tech=FastAPI]:before{background:linear-gradient(135deg,#05998b,#00e5d1)}.techHability[data-tech=Git]:before{background:linear-gradient(135deg,#f05032,#f9a08e)}.techHability[data-tech=Docker]:before{background:linear-gradient(135deg,#2496ed,#7dc3f5)}.techHability[data-tech=Antigravity]:before{background:linear-gradient(135deg,#9461fd,#d2b4ff)}.techHability[data-tech=Terminal]:before{background:linear-gradient(135deg,#4d4d4d,#8c8c8c)}.techHability[data-tech=HTTP]:before{background:linear-gradient(135deg,#005c97,#363795)}.techHability:hover{transform:translateY(-5px) scale(1.05);box-shadow:0 15px 40px #9cab8459;border-color:#c5d89d66}.techHability:hover:before{opacity:.2}.techName{color:var(--color-cream);font-weight:700;font-size:1.1rem;position:relative;z-index:1}.logoWhite{width:50px;height:50px;position:relative;z-index:1;filter:drop-shadow(0 2px 8px rgba(0,0,0,.3))}.timeline-item{margin-top:1rem;position:relative;margin-bottom:1rem}.timeline-content{background:var(--glass-bg);border:1px solid var(--glass-border);padding:1.5rem;border-radius:15px;box-shadow:0 8px 32px #0003;transition:all .3s ease}.timeline-content:hover{transform:translateY(-10px);box-shadow:0 12px 40px #9cab8440;border-color:#c5d89d80}.timeline-content h4{color:var(--color-cream);font-size:1.3rem;margin:.5rem 0}.timeline-content p{color:var(--color-text-secondary)}.timeline-content strong{color:var(--color-olive);font-weight:700}.timeline-year{font-size:.9rem;font-weight:700;color:var(--color-light-green)}.contact-subtitle{color:var(--color-text-muted);font-size:1.1rem;margin-bottom:2rem;margin-top:.25rem}.contact-layout{display:grid;grid-template-columns:1fr 1fr;gap:3rem;margin-top:1rem;align-items:stretch}.contact-form-wrapper{background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:20px;padding:2rem;box-shadow:0 8px 32px #0003;display:flex;flex-direction:column;transition:all .3s ease}.hidden-form{display:none!important}.contact-form-wrapper:hover{box-shadow:0 12px 40px #9cab8440;border-color:#c5d89d80}.contact-form-wrapper h2,.contact-info-wrapper h2{margin-bottom:1.5rem;font-size:1.6rem;font-weight:700;color:var(--color-light-green)}.contact-form{display:flex;flex-direction:column;gap:1rem;flex:1}.contact-form>label{display:flex;flex-direction:column;color:var(--color-cream);font-weight:600;gap:.5rem}.contact-form>label>input,.contact-form>label>textarea{padding:.8rem;border:1px solid var(--glass-border);border-radius:10px;background:var(--glass-bg);color:var(--color-cream);width:100%;min-height:40px;transition:all .3s ease;font-family:inherit;font-size:.95rem;resize:vertical}.contact-form>label.label-grow{flex:1}.contact-form>label.label-grow>textarea{flex:1;height:100%;resize:none}.contact-form>label>input:focus,.contact-form>label>textarea:focus{outline:none;border-color:#c5d89dcc;box-shadow:0 0 20px #9cab844d}.form-button{padding:.8rem;border:none;border-radius:10px;background:var(--gradient-primary);color:var(--color-cream);font-weight:700;cursor:pointer;font-size:1rem;transition:all .3s ease}.form-button:hover{transform:translateY(-2px);box-shadow:0 10px 30px #9cab8466}.contact-info-list{list-style:none;display:flex;flex-direction:column;gap:1.2rem}.contact-info-item{display:flex;align-items:center;gap:1.2rem;background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:15px;padding:1.2rem 1.5rem;transition:all .3s ease}.contact-info-item:hover{transform:translate(6px);border-color:#c5d89d80;box-shadow:0 8px 30px #9cab8433}.contact-info-icon{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:12px;background:var(--gradient-secondary);color:var(--color-cream);flex-shrink:0}.contact-info-item>div{display:flex;flex-direction:column;gap:.2rem}.contact-info-label{font-size:.8rem;font-weight:700;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.08em}.contact-info-value{font-size:1rem;font-weight:600;color:var(--color-cream);text-decoration:none;transition:color .3s ease}.contact-info-value:hover{color:var(--color-light-green)}@media (max-width: 900px){.contact-layout{grid-template-columns:1fr}}@media (max-width: 768px){.navbar{padding:.5rem 1rem;gap:.25rem}.navbar-brand{font-size:1.1rem}.navbar button{font-size:.85rem;padding:.5rem .8rem}#home>h1{font-size:2.5rem}.section>h1{font-size:2.2rem}.section>h2{font-size:1.6rem}.projects-grid,.big-projects-grid{grid-template-columns:1fr}.technologies{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}}
