*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth;font-size:100%}body{min-height:100dvh;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;line-height:1.5;background-color:#fff;color:#000;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}img,picture,video,canvas{display:block;max-width:100%;height:auto;object-fit:cover}input,button,textarea,select{font:inherit;color:inherit;background:none;border:none;outline:none}button{cursor:pointer;background-color:transparent}a{text-decoration:none;color:inherit}ul,ol{list-style:none;padding:0;margin:0}table{border-collapse:collapse;width:100%}#root,#__next{isolation:isolate}::selection{background-color:#000;color:#fff}body{background-color:#141414}@media(min-width:1025px){body{margin:0 auto;max-width:1200px}}body>div:first-child{display:grid;grid-template-rows:auto 1fr auto;min-height:100dvh;padding:16px;box-sizing:border-box}div h1{font-weight:700;font-size:22px;line-height:28px;color:#fff;width:100%}@media(max-width:1024px)and (min-width:481px){div h1{font-size:1.6rem}}@media(min-width:1025px){div h1{font-size:2.8rem;line-height:40px}}div p{font-weight:400;font-size:16px;line-height:24px;color:#9eadbf}@media(max-width:1024px)and (min-width:481px){div p{font-size:1.2rem;line-height:28px}}@media(min-width:1025px){div p{font-size:1.15rem;line-height:28px}}article.project-data{margin:10px 0;display:grid;grid-template-columns:2fr 1fr;align-items:center;gap:5px}@media(min-width:1025px){article.project-data{grid-template-columns:auto 1fr;gap:30px;background-color:#2b3640;padding:20px;border-radius:30px;margin:0}article.project-data div.description{grid-area:1/2/1/span 1;text-wrap:balance}article.project-data div.description p.description{font-size:large}article.project-data div.description h3{font-size:x-large;line-height:26px}}article.project-data.page{margin:20px 0}@media(max-width:480px)and (min-width:376px){article.project-data{grid-template-columns:2fr 1fr}}article.project-data p.description{color:#9eadbf;font-size:14px;line-height:21px;font-weight:400;margin-bottom:5px}article.project-data h3{color:#fff;font-size:16px;line-height:20px}article.project-data div.description{display:flex;flex-direction:column;gap:4px}article.project-data div.image-container{border-radius:12px;height:100%;width:100%}article.project-data div.image-container img{border-radius:20px;height:100%;max-height:200px;aspect-ratio:1/1}@media(max-width:480px)and (min-width:376px){article.project-data div.image-container img{object-fit:cover}}.button{box-sizing:border-box;display:flex;justify-self:center}.button a{padding:16px;width:100%;border-radius:20px;background-color:#dbe8f2;text-align:center}.button a:hover{background-color:#000;color:#fff}.button.inverse a{text-align:center}.button.inverse a:hover{background-color:#fff;color:#000}.button>*{background-color:#141a1f;font-size:14px;line-height:21px;font-weight:700}div.articles{display:flex;flex-direction:column;align-items:center;gap:10px}div.articles h2.article-title{margin-top:15px;align-self:flex-start;color:#fff;font-size:22px;font-weight:700;line-height:28px}@media(max-width:1024px)and (min-width:481px){div.articles{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}div.articles article.project-data{display:flex;flex-direction:column-reverse;justify-content:flex-start;height:100%;row-gap:10px}div.articles article.project-data div{flex:1}div.articles article.project-data div.image-container img{width:100%}div.articles h2.article-title{grid-column:1/-1;margin-bottom:20px}}@media(min-width:1025px){div.articles{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:auto}div.articles h2.article-title{grid-area:1/1/1/span 2;font-size:2.3rem;line-height:40px;margin:50px 0}div.articles img{max-width:200px}}div.contact-button{font-size:14px;line-height:21px;font-weight:700;text-align:center;margin:0 auto}div.contact-button a{color:#fff;background-color:#303030;border-radius:20px;padding:8px 16px}div.contact-button a:hover{color:#303030;background-color:#fff}div.container-img img{border-radius:12px}div.text-container{margin-top:25px;display:flex;flex-direction:column;row-gap:20px;text-align:center}div.text-container h2{color:#fff;font-size:18px;line-height:23px;font-weight:700}div.text-container p{color:#9eadbf;font-size:14px;line-height:21px}div.home{display:grid;grid-template-rows:auto auto 1fr auto;box-sizing:border-box}@media(max-width:1024px)and (min-width:481px){div.home main{margin:0 auto}}@media(min-width:1025px){div.home div.container-img>img{width:50%;margin:0 auto}div.home main{margin:0 auto}}div.about-placeholder{padding:20px;display:grid;gap:20px;margin-bottom:30px;place-items:center}div.about-placeholder h2{text-align:center;color:#fff}div.about-placeholder div.about{display:flex;flex-direction:column;row-gap:10px}div.about-placeholder div.about p{text-align:center;color:#9eadbf;font-size:16px;max-width:50ch;text-wrap:balance;text-transform:uppercase}div.grid-about-data{box-sizing:border-box;display:grid;grid-template-columns:auto 1fr;grid-template-rows:1fr 1fr auto;align-items:center;padding:16px 0;column-gap:10px}div.grid-about-data img{border-radius:50%;width:100px;aspect-ratio:1/1}div.grid-about-data p.about-data{margin-top:10px;grid-area:2/1/2/span 2;color:#fff}div.grid-about-data .button{grid-area:3/1/3/span 2}@media(max-width:1024px)and (min-width:481px){div.grid-about-data{max-width:600px;column-gap:12px;grid-template-rows:auto;row-gap:5px}div.grid-about-data img{grid-area:1/1/4/1;width:200px}div.grid-about-data p.about-data{grid-area:2/2/2/2;margin-top:0}div.grid-about-data .button{grid-area:3/2/4/3;justify-self:left;width:180px;display:flex;justify-content:center;margin-top:15px}div.grid-about-data .button a{font-size:1.1rem}}@media(min-width:1025px){div.grid-about-data{margin-top:20px;grid-template-columns:auto 1fr auto;grid-template-rows:auto auto;place-self:center;width:900px}div.grid-about-data img{margin:10px 30px;place-self:center;grid-area:1/1/span 3/1;width:200px}div.grid-about-data p.about-data{margin-top:0;align-self:flex-start;font-size:1.3rem;line-height:24px;grid-area:2/2/3/2;text-wrap:balance}div.grid-about-data .button{grid-area:3/2/4/2;justify-self:left;margin-top:0;width:180px;display:flex;justify-content:center}div.grid-about-data .button a{font-size:1.2rem}}.dot-loader{display:flex;justify-content:center;align-items:center;gap:10px;height:80px}.dot{width:12px;height:12px;border-radius:50%;background-color:#ebebeb}div.contact h1.contact{margin-top:35px;margin-bottom:15px;font-size:22px;font-weight:700;line-height:28px;color:#fff}div.contact p.contact{font-size:16px;font-weight:400;line-height:24px;color:#9eadbf;margin-bottom:15px}@media(max-width:1024px)and (min-width:481px){div.contact{display:flex;flex-direction:column;justify-self:center;max-width:700px;margin:0 auto}div.contact h1.contact{font-size:2.3rem;line-height:40px;text-align:center}div.contact p.contact{font-size:1.3rem;line-height:28px;text-align:center;text-wrap:balance;align-self:center;max-width:50ch;margin-bottom:60px}}@media(min-width:1025px){div.contact{margin:0 auto;display:flex;flex-direction:column;justify-self:center;max-width:900px}div.contact h1.contact{font-size:2.3rem;line-height:40px;text-align:center}div.contact p.contact{font-size:1.3rem;line-height:28px;text-align:center;text-wrap:balance;width:60ch;align-self:center;margin-bottom:60px}}form{display:flex;flex-direction:column;gap:15px}label.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}input,textarea{border:1px solid #3D4D5C;background-color:#1f262e;border-radius:12px;padding:15px;width:100%;color:#fff;resize:none}input.message,textarea.message{height:144px}p.error{color:#e42525;margin-left:4px;font-size:12px;line-height:18px;font-weight:200;margin-top:5px}button{align-self:flex-end;background-color:#fff;color:#000;font-weight:700;font-size:14px;line-height:21px;border-radius:28px;padding:12px 16px}button:hover{background-color:#141a1f;color:#fff}div.projects header{margin:20px;display:flex;justify-content:center}div.projects header h1{color:#fff;font-size:22px;line-height:28px;width:auto}div.projects h2{font-size:18px;line-height:20px;color:#fff}div.projects nav.projects{display:grid;grid-template-columns:auto 1fr;align-items:center}div.projects p.loading{text-align:center;margin:20px 0}div.projects div.button a{background-color:#2b3640;color:#fff;width:auto;padding:10px 16px}div.projects article.project-data.page img{max-height:200px}@media(max-width:1024px)and (min-width:481px){div.projects main{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:10px}div.projects main article.project-data{display:flex;flex-direction:column-reverse}div.projects main article.project-data div.description{flex:2;height:100%}div.projects main article.project-data div.description :nth-child(3){flex:1}div.projects main article.project-data div.image-container{flex:1}div.projects main article.project-data div.image-container img{width:100%}}@media(min-width:1025px){div.projects div.container-img{max-width:50%;margin:35px auto 0}div.projects header h1{font-size:2.3rem;line-height:40px}div.projects>main{display:grid;grid-template-columns:1fr 1fr 1fr;grid-template-rows:auto;gap:20px;margin-top:40px}div.projects>main article.project-data.page{display:grid;grid-template-areas:"image" "description";grid-template-rows:auto 1fr;gap:8px;margin:0;transition:transform .3s ease}div.projects>main article.project-data.page:hover{transform:scale(1.05);box-shadow:0 0 20px #525252}div.projects>main article.project-data.page div.description{grid-area:description;height:100%}div.projects>main article.project-data.page div.description p{display:flex;align-self:flex-start;font-size:1.2rem;line-height:24px;text-wrap:wrap}div.projects>main article.project-data.page div.description div.button{height:100%;width:50%;padding:0;margin-top:6px}div.projects>main article.project-data.page div.description div.button a{background-color:#dbe8f2;align-self:flex-end;color:#000;padding:12px 16px;border-radius:20px;width:100%;text-align:center;transition:all .15s ease}div.projects>main article.project-data.page div.description div.button a:hover{background-color:#000;color:#fff}div.projects>main article.project-data.page div.image-container{height:200px;grid-area:image}div.projects>main article.project-data.page div.image-container img{aspect-ratio:1/1;object-fit:cover;width:100%}}section.skills{margin:20px 0}section.skills ul.skills{display:flex;flex-wrap:wrap;align-items:center;gap:8px}section.skills ul.skills>li.skill{background-color:#2b3640;color:#fff;padding:0 16px;border-radius:16px}@media(min-width:1025px){section.skills ul.skills>li.skill{font-size:1.2rem;line-height:24px;padding:6px 16px}}section.experience{display:flex;flex-direction:column-reverse;row-gap:10px;margin-bottom:10px}section.experience article.experience{width:100%;display:flex;column-gap:12px}section.experience h3{color:#fff;font-size:16px;font-weight:500;line-height:24px}div.timeline-container{display:flex;flex-direction:column;align-items:center;gap:.5rem}div.timeline-container div.timeline{height:75%;width:1px;background-color:#9eadbf}main.about p.about-data{margin-bottom:35px}main.about h1{margin:20px 0;text-align:center}main.about h2{margin:20px 0;color:#fff;font-size:22px;line-height:28px}@media(max-width:1024px)and (min-width:481px){main.about{display:flex;flex-direction:column;align-items:center;justify-self:center;justify-content:center;max-width:700px;margin:0 auto}main.about h1{font-size:2.3rem;line-height:40px;text-align:left}main.about p.about-data{font-size:1.3rem;line-height:28px;text-wrap:balance;max-width:60ch}main.about h2{font-size:1.9rem;line-height:28px;align-self:normal;margin-bottom:15px}}@media(min-width:1025px){main.about{display:flex;flex-direction:column;align-items:center;justify-self:center;justify-content:center;max-width:900px;margin:0 auto}main.about h1{font-size:2.3rem;line-height:40px}main.about p.about-data{font-size:1.3rem;line-height:28px;text-align:center;text-wrap:balance;max-width:60ch}main.about h2{font-size:1.9rem;line-height:28px;text-align:center;margin-bottom:15px}}nav{display:flex;justify-content:space-between}nav .overlay{position:fixed;top:0;left:0;height:100vh;width:100vw;background-color:#00000080;z-index:9998;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);transition:opacity .3s ease-in-out}nav #second-name{font-size:18px;line-height:23px;color:#fff}nav .desktop{display:none}@media(min-width:1025px){nav{flex-direction:row-reverse;margin-bottom:35px}nav .desktop{display:flex;gap:20px}nav .desktop li{color:#fff}nav .desktop a:hover{color:#d1d5db;text-decoration:underline}nav .mobile{display:none}}ul.portal{position:fixed;top:0;right:0;height:100vh;width:85vw;padding:16px;z-index:9999;background-color:#141a1f;transform:translate(100%);opacity:0;pointer-events:none;display:flex;flex-direction:column;gap:12px;transition:transform .3s ease-in-out,opacity .3s ease-in-out}ul.portal.active{transform:translate(0);opacity:1;pointer-events:auto}ul.portal li{color:#fff;font-weight:700;padding:8px;border-radius:18px;display:flex}ul.portal li a{width:100%}ul.portal li:hover{background-color:#2b3640}footer{display:flex;flex-direction:column;justify-content:center;align-items:center;row-gap:8px;padding:16px 0;margin-top:24px;box-sizing:border-box}footer div.socials{display:flex;align-items:center;gap:10px}footer div.socials svg{transition:all .3s ease}footer div.socials svg:hover{transform:scale(1.2)}footer div p.copyright{color:#9eadbf;font-size:16px;line-height:24px}div.container-confirmation{place-self:center;grid-row:2}div.container-confirmation div.confirmation{display:flex;flex-direction:column;align-items:center;text-align:center;row-gap:15px;background-color:#212936;padding:20px 10px;border-radius:10px}div.container-confirmation div.confirmation p.contact{max-width:40ch;text-wrap:balance;margin-bottom:15px}div.container-confirmation div.confirmation>a{display:flex;justify-self:center;align-self:center;text-align:center;background-color:#fff;color:#000;font-weight:700;font-size:14px;line-height:21px;border-radius:28px;padding:12px 16px;transition:all .3s ease-in-out}div.container-confirmation div.confirmation>a:hover{scale:1.1}
