.header{width:100%;z-index:var(--z-fixed);background-color:#0000;transition:all .4s;position:fixed;top:0;left:0}.scroll-header{background-color:var(--container-color);z-index:calc(var(--z-fixed) + 1);animation:.7s slide-down;position:fixed;box-shadow:0 0 10px #00000040}@keyframes slide-down{0%{transform:translateY(-100%)}to{transform:translateY(0)}}.nav{height:var(--header-height);justify-content:space-between;align-items:center;column-gap:.25rem;max-width:100%;padding-inline:.75rem;display:flex}.nav-logo{color:var(--title-color);font-weight:var(--weight-700);font-family:var(--second-font);flex-shrink:0;font-size:1.125rem}.nav-logo span{color:var(--first-color)}.nav-menu{background-color:var(--container-color);height:100vh;transition:all .8s var(--transition);width:80vw;z-index:var(--z-fixed);padding:3.5rem;position:fixed;top:0;right:-100%;box-shadow:-2px 0 10px #0000004d}.show-menu{right:0}.nav-list{flex-direction:column;row-gap:2rem;display:flex}.nav-link{color:var(--title-color);font-weight:var(--weight-500);font-size:var(--normal-font-size);transition:all .3s}.nav-link:hover,.active-link{color:var(--first-color)}.nav-right{align-items:center;column-gap:.5rem;display:flex}.nav-socials{display:none}.nav-social-link{color:var(--title-color);font-size:var(--smaller-font-size);transition:all .3s}.nav-social-link:hover{color:var(--first-color)}.nav-btns{align-items:center;column-gap:.3rem;display:flex}.btn-text{display:none}.lang-toggle,.cv-btn,.contact-btn{border:1px solid var(--border-color);color:#fff;border-radius:var(--border-radius);cursor:pointer;font-weight:var(--weight-500);background:#000;flex-shrink:0;align-items:center;column-gap:.25rem;padding:.25rem .4rem;font-size:.65rem;transition:all .3s;display:flex}.lang-toggle:hover,.cv-btn:hover,.contact-btn:hover{background-color:var(--first-color);border-color:var(--first-color);color:var(--title-color)}.cv-btn{align-items:center;column-gap:.4rem;display:flex}.contact-btn{display:none}.nav-toggle,.nav-close{cursor:pointer;color:var(--title-color);display:block}.nav-toggle{font-size:var(--h2-font-size)}.nav-close{font-size:1.5rem;position:absolute;top:1rem;right:1.125rem}@media screen and (width<=350px){.nav-menu{width:100vw;padding:2.75rem}}@media screen and (width>=768px){.nav{padding-inline:3rem}.nav-btns{column-gap:.75rem}.lang-toggle,.cv-btn,.contact-btn{font-size:var(--smaller-font-size);padding:.4rem .6rem}.contact-btn,.btn-text{display:inline-block}}@media screen and (width>=992px){.nav{padding-inline:4rem}.nav-logo{font-size:1.5rem}.nav-menu{position:initial;width:initial;height:initial;box-shadow:none;background-color:#0000;border-radius:0;padding:0;transition:none}.nav-list{flex-direction:row;column-gap:1.5rem}.nav-right,.nav-socials{column-gap:1rem}.nav-social-link{font-size:var(--small-font-size)}.nav-btns{column-gap:.75rem}.lang-toggle,.cv-btn,.contact-btn{font-size:var(--small-font-size);padding:.5rem .75rem}.nav-toggle,.nav-close{display:none}}@media screen and (width>=1200px){.container{max-width:960px}.nav{padding-inline:6rem}.nav-list,.nav-right{column-gap:2rem}.nav-socials{column-gap:1.25rem}}.home{background-color:var(--body-color);justify-content:center;align-items:center;min-height:100vh;padding-block:8rem 4rem;display:flex}.home-container{text-align:center;grid-template-columns:1fr;row-gap:2rem;display:grid}.home-content{order:2}.home-subtitle{font-size:var(--small-font-size);color:var(--mint);font-family:var(--body-font);font-weight:var(--weight-400);text-transform:uppercase;letter-spacing:.25rem;margin-bottom:1.25rem;display:block}.home-title{font-family:var(--second-font);font-size:var(--h1-font-size);font-weight:var(--weight-900);line-height:1.2}.home-title span{color:var(--first-color)}.home-stack-text{font-size:var(--h3-font-size);color:#fff}.home-social-stack{flex-wrap:wrap;justify-content:center;gap:1.25rem;margin-top:2rem;display:flex}.stack-icon-wrapper{cursor:pointer;font-size:2rem;transition:all .3s}.home-img-wrapper{order:1;justify-content:center;display:flex}.profile-photo{object-fit:cover;object-position:center top;border:.5rem solid var(--container-color);opacity:.9;border-radius:50%;width:260px;height:260px;margin-inline:auto;transition:all .4s}@media screen and (width>=768px){.profile-photo{width:280px;height:280px}.stack-icon-wrapper{font-size:2.5rem}}@media screen and (width>=992px){.home{padding-block:0}.profile-photo{width:320px;height:320px}}@media screen and (width>=1200px){.home{padding-block:0}.home-container{text-align:initial;grid-template-columns:7fr 5fr;align-items:center}.home-social-stack{justify-content:initial}.profile-photo{width:425px;height:425px;margin-left:auto;margin-right:initial}}.about{background-color:var(--container-color)}.about-container{grid-template-columns:1fr;row-gap:3rem}.about-img-wrapper{order:-1}.about-img{border-radius:var(--border-radius);border:1px solid var(--border-color);width:100%;max-width:400px;margin-inline:auto;transition:all .4s;display:block}.about-img:hover{border-color:var(--first-color);transform:scale(1.02)}.about-content{flex-direction:column;display:flex}.about-description{color:var(--text-color);text-align:center;margin-bottom:2rem;line-height:1.8}.tabs-buttons{border-bottom:1px solid var(--border-color);flex-wrap:wrap;justify-content:center;gap:.75rem;margin-bottom:2rem;padding-bottom:1rem;display:flex}.tabs-button{color:var(--text-color);border-radius:var(--border-radius);cursor:pointer;font-weight:var(--weight-600);font-size:var(--smaller-font-size);background:0 0;border:1px solid #0000;align-items:center;column-gap:.5rem;padding:.5rem .75rem;transition:all .3s;display:flex}.tabs-button:hover{color:var(--first-color);background-color:var(--container-color)}.tab-active{background-color:var(--first-color);color:var(--title-color)!important}.tabs-content{min-height:250px}.skills-grid{grid-template-columns:1fr;gap:1.25rem;display:grid}.skill-item{background-color:var(--container-color);border-radius:var(--border-radius);border:1px solid var(--border-color);padding:1.25rem;transition:all .3s}.skill-item:hover{border-color:var(--first-color);transform:translateY(-5px)}.skill-header{align-items:center;column-gap:1rem;margin-bottom:.75rem;display:flex}.skill-header h4{font-size:var(--normal-font-size);color:var(--title-color)}.skill-item p{font-size:var(--smaller-font-size);color:var(--text-color);line-height:1.6}.experience-list{flex-direction:column;row-gap:1.5rem;display:flex}.experience-item{border-left:2px solid var(--first-color);padding-left:1.25rem}.exp-header{flex-direction:column;row-gap:.5rem;margin-bottom:.5rem;display:flex}.exp-link{font-size:var(--smaller-font-size);color:var(--first-color);text-decoration:underline}.exp-subtitle{font-size:var(--smaller-font-size);color:var(--text-color);font-weight:var(--weight-600);margin-bottom:.75rem;display:block}.exp-desc{font-size:var(--small-font-size);color:var(--text-color)}.education-info{background-color:var(--container-color);border-radius:var(--border-radius);border:1px solid var(--border-color);padding:1.5rem}.edu-title{color:var(--first-color);margin-bottom:.5rem;font-size:1.25rem}.edu-school{font-weight:var(--weight-600);font-size:var(--small-font-size);margin-bottom:1rem}.edu-desc{color:var(--text-color);font-size:var(--small-font-size)}.certifications-grid{grid-template-columns:1fr;row-gap:1.25rem;display:grid}.cert-item{background-color:var(--container-color);border-radius:var(--border-radius);border:1px solid var(--border-color);flex-direction:column;padding:1.25rem;display:flex}.cert-header{color:var(--first-color);align-items:center;column-gap:1rem;margin-bottom:.5rem;display:flex}.cert-item p{font-size:var(--small-font-size);color:var(--text-color)}@media screen and (width>=768px){.about-description{text-align:initial}.tabs-buttons{justify-content:flex-start;gap:1rem}.tabs-button{font-size:var(--normal-font-size);padding:.75rem 1.25rem}.skills-grid{grid-template-columns:repeat(2,1fr)}.exp-header{flex-direction:row;justify-content:space-between;align-items:center}.education-info{padding:2rem}}@media screen and (width>=992px){.about-container{grid-template-columns:1fr 1.2fr;align-items:center;column-gap:4rem}.about-img-wrapper{order:initial}.about-img{margin-inline:initial;max-width:initial}}.services{background-color:var(--body-color)}.services-container{grid-template-columns:1fr;gap:1.5rem;max-width:450px;margin-inline:auto}.services-item{background-color:var(--container-color);border-radius:var(--border-radius);border:1px solid var(--border-color);text-align:center;flex-direction:column;align-items:center;padding:2.5rem 1.5rem;transition:all .4s;display:flex}.services-item:hover{border-color:var(--first-color);transform:translateY(-5px);box-shadow:0 10px 25px #904cf01a}.services-icon-wrapper{color:var(--first-color);margin-bottom:1.5rem;transition:all .3s}.services-item:hover .services-icon-wrapper{transform:scale(1.1)rotate(5deg)}.services-title-card{color:var(--title-color);margin-bottom:1rem;font-size:1.25rem}.services-description-card{font-size:var(--small-font-size);color:var(--text-color);line-height:1.6}@media screen and (width>=768px){.services-container{max-width:initial;grid-template-columns:repeat(2,1fr);gap:2rem}.services-item{padding:3rem 2rem}.services-item:hover{transform:translateY(-10px)}.services-title-card{font-size:var(--h3-font-size)}}@media screen and (width>=1024px){.services-container{grid-template-columns:repeat(3,1fr);gap:2.5rem}}.portfolio{background-color:var(--container-color)}.portfolio-container{grid-template-columns:1fr;gap:2rem;max-width:450px;margin-inline:auto}.portfolio-item{background-color:var(--container-color);border:1px solid var(--border-color);border-radius:var(--border-radius);transition:all .4s;overflow:hidden}.portfolio-item:hover{border-color:var(--first-color);transform:translateY(-5px);box-shadow:0 10px 25px #904cf01a}.portfolio-img-wrapper{aspect-ratio:16/9;position:relative;overflow:hidden}.portfolio-img{object-fit:cover;width:100%;height:100%;transition:all .6s}.portfolio-overlay{width:100%;height:100%;color:var(--title-color);opacity:0;background-color:#904cf099;justify-content:center;align-items:center;transition:all .4s;display:flex;position:absolute;top:0;left:0}.portfolio-item:hover .portfolio-overlay{opacity:1}.portfolio-item:hover .portfolio-img{transform:scale(1.1)}.portfolio-data{padding:1.25rem}.portfolio-title{color:var(--first-color);margin-bottom:.5rem;font-size:1.25rem}.portfolio-subtitle{font-size:var(--smaller-font-size);color:var(--text-color);font-weight:var(--weight-600);text-transform:uppercase;letter-spacing:1px;margin-bottom:.75rem}.portfolio-description{font-size:var(--small-font-size);color:var(--text-color);line-height:1.6}.portfolio-footer{justify-content:center;margin-top:3rem;display:flex}.btn-github{border:2px solid var(--first-color);color:var(--first-color);background-color:#0000;align-items:center;column-gap:.75rem;padding:1rem 2rem;font-size:1rem;display:flex}.btn-github:hover{background-color:var(--first-color);color:var(--title-color);transform:scale(1.05)}@media screen and (width>=768px){.portfolio-container{max-width:initial;grid-template-columns:repeat(2,1fr);gap:2.5rem}.portfolio-item:hover{transform:translateY(-10px)}.portfolio-data{padding:1.5rem}.portfolio-title{font-size:var(--h3-font-size)}.portfolio-footer{margin-top:4rem}.btn-github{padding:1.25rem 2.5rem;font-size:1.125rem}}@media screen and (width>=992px){.portfolio-container{gap:3rem}}.contact{background-color:var(--body-color)}.contact-container{grid-template-columns:1fr;row-gap:3rem}.contact-img-wrapper{order:-1;justify-content:center;display:flex}.contact-img{border-radius:var(--border-radius);border:1px solid var(--border-color);width:100%;max-width:400px;transition:all .4s}.contact-img:hover{border-color:var(--first-color);transform:scale(1.02)}.contact-content{flex-direction:column;display:flex}.contact-description{color:var(--text-color);text-align:center;margin-bottom:2rem;line-height:1.6}.contact-methods{flex-direction:column;align-items:center;row-gap:1.25rem;margin-bottom:2.5rem;display:flex}.contact-link{color:var(--title-color);font-weight:var(--weight-500);align-items:center;column-gap:1rem;transition:all .3s;display:flex}.contact-link:hover{color:var(--first-color);transform:translate(5px)}.contact-form{row-gap:1.25rem;display:grid}.contact-form-input{row-gap:.5rem;display:grid}.contact-label{color:var(--title-color);font-weight:var(--weight-500);font-size:var(--small-font-size)}.contact-input{background-color:var(--container-color);border:1px solid var(--border-color);border-radius:var(--border-radius);color:var(--text-color);font-family:var(--body-font);width:100%;padding:1rem;transition:all .3s}.contact-input:focus{border-color:var(--first-color);outline:none}.textarea{resize:none;height:10rem}.contact-submit{flex-direction:column;row-gap:1rem;display:flex}.contact-submit .btn{justify-content:center;align-items:center;column-gap:.75rem;width:100%;display:flex}.feedback-message{font-size:var(--small-font-size);font-weight:var(--weight-500);text-align:center}.feedback-message.success{color:var(--mint)}.feedback-message.error{color:#f44336}.spinner{animation:1s linear infinite spin}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media screen and (width>=768px){.contact-description{text-align:initial}.contact-methods{align-items:flex-start}.contact-submit .btn{width:max-content}}@media screen and (width>=992px){.contact-container{grid-template-columns:repeat(2,1fr);align-items:center;column-gap:4rem}.contact-img-wrapper{order:initial;justify-content:flex-end}.contact-img{max-width:500px}}.footer{background-color:var(--container-color);border-top:1px solid var(--border-color);padding-block:3rem 2rem}.footer-container{text-align:center;grid-template-columns:1fr;row-gap:2.5rem}.footer-logo{color:var(--title-color);font-weight:var(--weight-900);font-family:var(--second-font);order:1;font-size:1.25rem}.footer-logo span{color:var(--first-color)}.footer-socials{order:2;justify-content:center;column-gap:1.5rem;display:flex}.footer-social-link{color:var(--title-color);transition:all .3s}.footer-social-link:hover{color:var(--first-color);transform:translateY(-5px)}.footer-copyright{font-size:var(--smaller-font-size);color:var(--text-color);order:3}@media screen and (width>=768px){.footer{padding-block:4rem 2rem}.footer-container{grid-template-columns:repeat(3,1fr);align-items:center}.footer-logo{order:initial;font-size:1.5rem}.footer-socials{order:initial;column-gap:2rem}.footer-copyright{order:initial}}.App{flex-direction:column;min-height:100vh;display:flex}.main{flex:1}:root{--body-font:"Poppins", sans-serif;--second-font:"Montserrat", sans-serif;--header-height:6rem;--weight-300:300;--weight-400:400;--weight-500:500;--weight-600:600;--weight-700:700;--weight-900:900;--big-font-size:clamp(2rem, .9706rem + 4.7059vw, 4.5rem);--h1-font-size:clamp(1.75rem, .9265rem + 3.7647vw, 3.75rem);--h2-font-size:1.75rem;--h3-font-size:1.5rem;--normal-font-size:1.125rem;--small-font-size:1rem;--smaller-font-size:.875rem;--body-color:#0f0f0f;--border-color:#fff3;--container-color:#1a1a1a;--first-color:#904cf0;--mint:#a9c8a3;--orange-strong:#ff8c00;--orange:#f8aa72;--text-color:#c4c4c4;--title-color:#fff;--transition:cubic-bezier(.05, .2, .1, 1);--border-radius:.5rem;--z-fixed:100;--z-tooltip:10}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body,input,textarea{color:var(--text-color);font-family:var(--body-font);font-size:var(--normal-font-size);font-weight:var(--weight-300)}body{background-color:var(--body-color);overflow-x:hidden}h1,h2,h3{color:var(--title-color);font-weight:var(--weight-700)}ul{list-style:none}a{text-decoration:none}p{line-height:1.67em}img{max-width:100%}input,textarea{background-color:#0000;border:none;outline:none}.container{max-width:1260px;margin-inline:auto;padding-inline:1.5rem}.grid{gap:1.5rem;display:grid}.section{padding-block:4rem 2rem}.section-title{font-size:var(--h1-font-size);text-align:center;margin-bottom:2rem}.section-description{text-align:center;margin-bottom:3rem;max-width:600px;margin-inline:auto}.btn{background-color:var(--first-color);color:var(--title-color);border-radius:var(--border-radius);font-weight:var(--weight-600);cursor:pointer;border:none;padding:1rem 1.75rem;transition:all .3s;display:inline-block}.btn:hover{background-color:#7c2bee}@media screen and (width>=768px){.section{padding-block:6rem 3rem}}@media screen and (width>=992px){.container{padding-inline:.75rem}}
