.page-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:black;z-index:1000;opacity:1;transition:opacity .5s ease-in-out}.fade-in{opacity:0;transition:opacity .5s ease-in-out}.fade-in.visible{opacity:1}.nav{position:fixed;font-weight:700;display:flex;justify-content:center;align-items:center;height:10vh;width:100vw;background:#2e2e2e;font-size:1.75rem;box-shadow:0 0 12px #0003;transition:height .3s ease;z-index:10}.nav-items{display:flex;justify-content:center;align-items:center}.nav-element{margin:0 3rem;-webkit-user-select:none;user-select:none;transition:color .25s ease-in-out,transform .25s ease-in-out}.nav-element:hover{color:#9d72e8;cursor:pointer}a{color:#fff;text-decoration:none}.dflex{display:flex}.nav.small{height:7vh}@media (max-width: 768px){.nav{font-size:1rem}.nav-items{justify-content:space-evenly}.nav-element{margin:0 2rem;-webkit-user-select:none;user-select:none;transition:color .25s ease-in-out,transform .25s ease-in-out}}.about-container{color:#2e2e2e;background:white;padding:14vh 14vh 4vh}.about-info{flex-direction:column;align-items:center;text-align:center}.about-item{margin:12px}.about-image-container{position:relative;width:20vw;min-width:250px;height:auto;overflow:hidden}.about-image{width:100%;height:100%;transition:opacity .5s ease-in-out;opacity:0}.about-image.loaded{opacity:1}.about-image-placeholder{position:absolute;top:0;left:0;width:100%;height:100%;background-image:url(/assets/website-picture.png);background-size:cover;background-position:center;filter:blur(20px)}.about-line{width:75px;height:2px;background-color:#2e2e2e;margin:10px 0}.about-name{font-size:4rem;font-weight:700}.about-bio{font-size:1.5rem}.about-github{filter:invert(100%);height:3rem;transition:transform .2s ease-in-out}.about-github:hover{transform:scale(1.05)}.about-instagram{filter:invert(100%);height:3rem;transition:transform .2s ease-in-out}.about-instagram:hover{transform:scale(1.05)}.about-linkedIn{filter:invert(100%);height:3rem;transition:transform .2s ease-in-out}.about-linkedIn:hover{transform:scale(1.05)}.about-logo-container{display:flex;gap:1rem}.projects-wrapper{background:#2e2e2e;position:relative;z-index:0;box-shadow:0 0 12px #0003,0 0 12px #0003}.projects-arrow-container{justify-content:center}@keyframes bounce{0%,20%,50%,80%,to{transform:translateY(0)}40%{transform:translateY(-10px)}60%{transform:translateY(-5px)}}.projects-arrow{margin-top:30px;height:2rem;animation:bounce 2s infinite;animation-timing-function:ease-in-out;cursor:pointer}.projects-container{flex-wrap:wrap;justify-content:center;padding:20px;width:80vw;margin:0 auto}@media (max-width: 768px){.projects-container{display:block}}.project{flex:0 0 calc(33.33% - 50px);margin:10px;background:white;padding:15px;transition:box-shadow .3s ease-in-out,transform .3s ease-in-out,color .3s ease-in-out,background-color .3s ease-in-out;text-align:center;border-radius:7px;color:#2e2e2e}.project:hover{box-shadow:0 0 25px #000;transform:scale(1.015);cursor:pointer;z-index:0}.project:last-child{margin-right:auto}.project-image{max-width:100%;height:auto;border-radius:6px}@media (max-width: 768px){.project:last-child{margin:10px}}.popup-wrapper{color:#2e2e2e;top:0;right:0;bottom:0;left:0;position:fixed;background:rgba(0,0,0,.75);justify-content:center;align-items:center;text-align:center;z-index:20}.popup-page{position:absolute;height:100dvh;background:#2e2e2e;display:flex;color:#fff;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background-color:#000000bf}.popup-container{display:flex;flex:1;flex-direction:column;justify-content:center;align-items:center;z-index:99}.popup-caption{font-weight:700;font-size:4rem;margin:0}.popup-image-container{display:flex;justify-content:center;gap:20px;padding:10px}.popup-image{border-radius:5px;max-width:50%}.popup-text{width:40%;font-weight:500;font-size:1.5rem;margin:15px}.popup-technology{font-weight:700;margin:0}.popup-year{font-weight:700;margin:0 0 5px}.popup-close-button{position:absolute;right:20px;top:20px;width:50px;cursor:pointer;z-index:150}.popup-link-button{display:inline-block;padding:5px;border-radius:5px;transition:background-color .3s ease;text-decoration:none}.popup-link-button img{width:40px;vertical-align:middle}.popup-link-button:hover{background-color:#555}.popup-background{top:0;right:0;bottom:0;left:0;position:fixed;justify-content:center;align-items:center;text-align:center;z-index:20;cursor:pointer;height:100dvh;background-color:#0000}@media (max-width: 768px){.popup-image-container{flex-direction:column;align-items:center;gap:1rem}.popup-image{max-width:80%}.popup-caption{font-weight:700;font-size:1.5rem}.popup-text{width:70%;font-size:.75rem}.popup-technology,.popup-year{font-size:.75rem;font-weight:700}.popup-close-button{position:absolute;right:10px;top:10px;width:25px;cursor:pointer}}@media (orientation: landscape){.popup-image{max-width:40%}.popup-image-container{flex-direction:row;align-items:center;gap:1rem}}.resume-container{color:#2e2e2e;background:white;padding:10vh}.resume-info{flex-direction:column;align-items:center;text-align:center}.resume-item{margin:20px}.resume-line{width:75px;height:2px;background-color:#2e2e2e;margin:10px 0}.resume-name{font-size:4rem;font-weight:700}.resume-bio{width:55%;font-size:1.5rem}.resume-hint{width:30%;font-size:1.5rem}.resume-download-icon{height:2rem}.resume-download-button{display:flex;align-items:center;justify-content:center;gap:.75rem;font-weight:700;font-size:1rem;background:#2e2e2e;width:150px;height:50px;border:none;cursor:pointer;font-family:Poppins,sans-serif;transition:background .2s ease-in-out;transition:transform .2s ease-in-out;border-radius:4px}.resume-download-button:hover{box-shadow:0 0 12px #0003;transform:scale(1.015);background:#9d72e8}.resume-download-button:active{background:white;color:#2e2e2e}@media (max-width: 768px){.resume-name{font-size:2rem;font-weight:700}.resume-bio{width:125%;font-size:1rem}.resume-hint{font-size:1rem;width:125%}}.contact-container{color:#fff;background:#2e2e2e;padding:4rem 4rem 1rem;box-shadow:0 0 12px #0003}.contact-info{flex-direction:column;align-items:center;text-align:center}.contact-item{font-size:1.5rem;margin:5px}.contact-caption{font-size:4rem;font-weight:700}.contact-line{width:75px;height:2px;background-color:#fff;margin:10px 0}.contact-form{display:flex;flex-direction:column;align-items:center;width:100%;max-width:400px;margin:0 auto}.form-group{width:100%;margin-bottom:1rem}.form-group label{font-size:1.25rem;margin-bottom:.5rem;display:block;text-align:left;color:#ccc}.form-group input,.form-group textarea{width:100%;padding:.75rem;font-size:1rem;color:#2e2e2e;border-radius:4px;border:none;outline:none}.form-group input::placeholder,.form-group textarea::placeholder{color:#888}.form-group input,.form-group textarea{background:#ffffff;box-shadow:0 0 8px #0000001a}.form-group textarea{resize:none;height:150px}button[type=submit]{gap:.75rem;color:#2e2e2e;font-weight:700;font-size:1rem;background:#ffffff;width:150px;height:50px;border:none;cursor:pointer;font-family:Poppins,sans-serif;transition:background .2s ease-in-out;transition:transform .2s ease-in-out;border-radius:4px}button[type=submit]:hover{box-shadow:0 0 12px #00000080;transform:scale(1.015);background:#9d72e8}.contact-send-button{display:flex;align-items:center;justify-content:center;gap:8px;padding:10px;border:none;background-color:#f5f5f5;cursor:pointer}.contact-send-icon{color:#2e2e2e;height:1.75rem}.form-submit-message{margin-top:1rem;font-size:1.25rem;text-align:center;font-weight:300;opacity:1}input::placeholder,textarea::placeholder{font-family:Poppins,sans-serif;font-size:1rem;color:#aaa}input,textarea{font-family:Poppins,sans-serif;font-size:1rem;width:100%;max-width:400px;padding:.75rem;border:1px solid #ccc;border-radius:4px;outline:none;transition:border-color .2s ease-in-out}@media (max-width: 768px){.contact-caption{font-size:2rem;font-weight:700}.form-group input,.form-group textarea{font-size:1rem;padding:.5rem}button[type=submit]{font-size:1rem;padding:.5rem 1rem}.form-group label{font-size:1rem;margin-bottom:.5rem;display:block;text-align:left;color:#ccc}input::placeholder,textarea::placeholder{font-size:.75rem}}:root{font-family:Poppins,sans-serif;color-scheme:light dark;color:#fff;background-color:#fff;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-text-size-adjust:100%}::selection{background:#9d72e8;color:#fff}body{margin:0;min-width:320px;min-height:100vh}html{scroll-behavior:smooth}
