:root{--color-silver-mist: #E5E4E2;--color-soft-platinum: #C5C6C7;--color-cool-pewter: #909497;--color-dark-graphite: #2F2F2F;font-family:sans-serif;line-height:1.5;font-weight:400;color-scheme:light;color:var(--color-dark-graphite);background-color:var(--color-silver-mist);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;scroll-behavior:smooth}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;min-width:320px;min-height:100vh}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media (prefers-color-scheme: light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}.app-header{position:fixed;top:0;left:0;width:100%;display:flex;justify-content:space-between;align-items:center;padding:1rem 2rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:var(--color-dark-graphite);z-index:1000;box-sizing:border-box}.logo{text-transform:uppercase;font-size:1.8rem;font-weight:700;color:var(--color-silver-mist)}.nav-links{list-style:none;display:flex;margin:0;padding:0;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.nav-links li{margin-left:1.5rem;animation:slideIn .5s forwards ease}.nav-links a{color:var(--color-dark-graphite);text-decoration:none;font-size:1.2rem;transition:color .3s ease;position:relative;padding-bottom:5px;cursor:pointer}.nav-links a:after{content:"";position:absolute;width:0;height:2px;bottom:0;left:0;background-color:var(--color-silver-mist);transition:width .3s ease-in-out}.nav-links a:hover:after{width:100%}.nav-links a.active:after{width:100%;transition:none}.nav-links a.active,.nav-links a:hover{color:var(--color-silver-mist)}.hamburger{display:none;background:none;border:none;padding:.5rem;cursor:pointer;z-index:1100;position:relative;width:2rem;height:1.5rem;right:-80vw}.hamburger span{display:block;position:absolute;height:3px;background-color:var(--color-dark-graphite);transition:all .3s ease}.hamburger span:nth-child(1){width:50%;top:0;left:25%}.hamburger span:nth-child(2){width:100%;top:50%;transform:translateY(-50%)}.hamburger span:nth-child(3){width:75%;bottom:0;left:12.5%}.hamburger.open span:nth-child(1){transform:rotate(45deg);top:50%;left:50%;width:100%}.hamburger.open span:nth-child(2){opacity:0}.hamburger.open span:nth-child(3){transform:rotate(-45deg);top:50%;left:50%;width:100%}@keyframes slideIn{to{opacity:1;transform:translate(0)}}@media (max-width: 768px){.app-header{flex-direction:column;align-items:flex-start}.nav-links{flex-direction:column;margin-top:1rem}.nav-links li{margin-left:0;margin-bottom:1rem;animation-delay:var(--animation-delay)}}@media (max-width: 768px){.app-header{flex-direction:column;align-items:flex-start;padding:1rem}.hamburger{display:block}.logo{font-size:1.5rem}.nav-links{display:none;flex-direction:column;top:100%;right:0;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);width:100vw;padding:1rem 0}.nav-links.visible{display:flex}.nav-links li{margin:.5rem 0;text-align:center;animation:slideIn .5s forwards ease}.nav-links a{font-size:1rem}}@media (max-width: 480px){.app-header{padding:.5rem 1rem}.logo{font-size:1.2rem}.nav-links{margin-top:.5rem}.nav-links a{font-size:.9rem}}@media (max-width: 1000px){.logo{font-size:2rem}.nav-links a{font-size:1.5rem}}.home-section{min-height:100vh;display:flex;align-items:center;justify-content:space-between;padding:0 5%;background:linear-gradient(to right,#2f2f2fe6,#c5c6c7e6)}.home-content{display:flex;width:100%;align-items:center;justify-content:space-between}.home-text{flex:1;max-width:50%;padding-right:2rem;color:var(--color-silver-mist)}.home-text h1{font-size:3rem;margin-bottom:1rem}.home-text p{font-size:1.2rem;line-height:1.5}.home-image{flex:1;max-width:50%;text-align:right}.home-image img{max-width:500px;min-width:500px;max-height:400px;min-height:400px;border-radius:8px;transition:transform .3s ease,opacity .3s ease;box-shadow:0 4px 8px #0003;object-fit:contain}.cta-button{display:inline-block;margin-top:1.5rem;padding:.8rem 1.5rem;font-size:1rem;font-weight:700;color:var(--color-silver-mist);background-color:#2f2f2f;text-decoration:none;border-radius:4px;transition:transform .2s ease,box-shadow .3s ease;box-shadow:0 4px 8px #0003}.cta-button:hover{color:var(--color-silver-mist);transform:scale(1.05);box-shadow:0 8px 16px #0006}@media (max-width: 1000px){.home-section{flex-direction:column;padding:2rem;text-align:center;color:var(--color-dark-graphite);background:var(--color-cool-pewter)!important}.home-content{flex-direction:column;align-items:center;gap:10rem}.home-text{max-width:90%;padding-right:0;margin:0 auto;display:grid}.home-text h1{font-size:5rem;margin-bottom:1.5rem}.home-text p{font-size:1.1rem;line-height:1.4;margin-bottom:1.5rem}.home-image{max-width:90%;text-align:center}.home-image img{max-width:400px;min-width:75vw;width:100%;max-height:350px;min-height:40vh;height:auto}.cta-button{padding:.7rem 1.3rem;font-size:.95rem}}.about-section{display:flex;flex-direction:column;height:100vh;overflow:hidden;position:relative;padding-top:10px}.about-section:before,.about-section:after{content:"";position:absolute;top:0;bottom:0;width:50%;z-index:0}.about-section:before{left:0;background-color:var(--color-cool-pewter)}.about-section:after{right:0;background-color:var(--color-soft-platinum)}.about-interests-container{display:flex;flex:3;position:relative;z-index:1}.about,.interests{flex:1;padding:2rem;display:flex;flex-direction:column;justify-content:center;font-size:1rem}.about{align-items:flex-start;text-align:right;color:var(--color-silver-mist)}.interests{align-items:flex-start;text-align:left;color:var(--color-dark-graphite)}.languages-frameworks{flex:1;display:flex;justify-content:center;align-items:flex-start;position:relative;z-index:1;gap:2rem;padding:0 1rem 2rem}.languages-container{flex:1;display:flex;flex-direction:column;align-items:flex-end;justify-content:flex-start;color:var(--color-silver-mist)}.frameworks-container{flex:1;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;color:var(--color-dark-graphite)}.icon-grid{display:flex;flex-wrap:wrap;gap:2rem}.icon-item{display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:2rem;opacity:.7;transition:opacity .3s}.icon-item.left{color:var(--color-silver-mist)}.icon-item:hover{opacity:1;cursor:pointer;animation:float 2s infinite alternate}@keyframes float{0%{transform:translateY(-1px)}to{transform:translateY(-5px)}}.icon-item span{margin-top:.5rem;font-size:1rem}@media (max-width: 1000px){.about-section{height:auto;min-height:100vh}.about-section:before,.about-section:after{width:100%;height:50%;background-color:var(--color-soft-platinum)}.about-section:before{top:0;bottom:50%}.about-section:after{top:50%;bottom:0}.about-interests-container{flex-direction:column}.about,.interests{padding:1.5rem;text-align:center;align-items:center;color:var(--color-dark-graphite)}.languages-container,.frameworks-container{align-items:center;width:100%}.icon-grid{justify-content:center}.icon-item{font-size:2.8rem;color:var(--color-dark-graphite)}.icon-item span{font-size:.9rem}.about,.interests,.languages-container,.frameworks-container{margin-bottom:2rem}}.education-section{padding-top:80px;background:linear-gradient(to right,#2f2f2fe6,#c5c6c7e6);display:flex;height:calc(100vh - 80px);background-color:var(--color-soft-platinum);position:relative;overflow:hidden}.tabs{flex:1;display:flex;flex-direction:column;justify-content:flex-start;align-items:flex-start;padding:1rem;gap:1rem}.tab{width:200px;height:50px;background-color:var(--color-cool-pewter);color:var(--color-silver-mist);display:flex;align-items:center;justify-content:center;font-size:1rem;font-weight:700;border-radius:4px;cursor:pointer;transition:transform .3s ease,background-color .3s ease;overflow:hidden;position:relative;transform:translate(-50px)}.tab.active,.tab.hovered{transform:translate(0);background-color:var(--color-dark-graphite)}.tab:hover{transform:translate(0)}.text-area-container{flex:2;display:flex;padding-right:10vw;align-items:center;justify-content:center;position:relative;overflow:hidden;height:100%}.text-area{width:90%;color:var(--color-silver-mist);font-size:1.2rem;text-align:center;animation:scrollText 15s linear infinite;transform-origin:bottom center}.text-area.blurred{filter:blur(5px);animation-play-state:paused}.text-area:hover{animation-play-state:paused}.text-area.blurred{filter:blur(5px)}.image-showcase{flex:1;display:flex;padding-right:3rem;align-items:center;justify-content:center;position:relative;overflow:hidden;height:100%}.image-showcase img{width:100%;height:60%;object-fit:cover;z-index:2;transition:transform .3s ease;filter:grayscale(100%)}.image-showcase.scaled img{transform:scale(1.1)}@media (max-width: 1000px){.education-section{flex-direction:column;padding:5rem 1rem 2rem;height:auto;gap:2rem;background:var(--color-cool-pewter)}.tabs{width:100%;flex-direction:row;justify-content:center;padding:.5rem;gap:.5rem;order:1;max-height:5rem}.tab{width:auto;min-width:120px;padding:0 1rem;transform:translate(0);font-size:1.4rem;box-shadow:0 4px 8px #0003;transition:box-shadow .3s ease,background-color .3s ease}.text-area-container{flex:none;width:100%;padding:1rem;order:2;height:auto;min-height:200px}.text-area{width:100%;font-size:1rem;padding:1rem;animation:none}.image-showcase{flex:none;width:100%;padding:1rem;order:3;height:auto}.image-showcase img{width:80%;height:auto;max-height:300px;margin:0 auto}}.projects-section{display:flex;align-items:center;justify-content:space-between;height:100vh;width:100%;position:relative;overflow:hidden;background:linear-gradient(to right,#2f2f2fe6,#c5c6c7e6)}.nav-button{position:absolute;top:0;height:100vh;width:3rem;background-color:var(--color-dark-graphite);color:var(--color-silver-mist);border:none;font-size:2rem;cursor:pointer;border-radius:0;z-index:2;opacity:.3;transition:opacity .3s ease,background-color .3s ease}.nav-button.left{left:0;background-color:#c5c6c780}.nav-button.right{right:0;background-color:#2f2f2f80}.nav-button:hover{opacity:1}.nav-button:disabled{opacity:.1;cursor:not-allowed}.projects-container{flex:1;display:flex;justify-content:center;align-items:center;overflow:hidden;position:relative;height:100vh}.project-card{position:absolute;width:30%;max-width:400px;padding:1rem;background-color:var(--color-cool-pewter);color:var(--color-dark-graphite);border-radius:8px;box-shadow:0 4px 8px #0003;text-align:center;transition:transform .5s ease,opacity .5s ease;opacity:0;transform:scale(.8) translate(0)}.project-card.active{opacity:1;transform:scale(1) translate(0);z-index:2}.project-card.previous{opacity:.8;transform:scale(.9) translate(-120%);z-index:1}.project-card.next{opacity:.8;transform:scale(.9) translate(120%);z-index:1}.project-card.hidden{opacity:0;transform:scale(.8);z-index:0}.project-card img{width:100%;border-radius:8px;margin-bottom:1rem}.project-card h3{margin:.5rem 0}.project-card p{font-size:1rem;margin-bottom:1rem}.languages{list-style:none;padding:0;margin:0 0 1rem;display:flex;flex-wrap:wrap;gap:.5rem}.languages li{background-color:var(--color-dark-graphite);color:var(--color-silver-mist);padding:.3rem .6rem;border-radius:4px;font-size:.8rem}.project-links{display:flex;gap:1rem;justify-content:center}.project-links .btn{padding:.3rem .8rem;border:none;border-radius:4px;text-decoration:none;color:var(--color-silver-mist);background-color:var(--color-dark-graphite);font-size:.9rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;position:relative;transition:background-color .3s ease}.project-links .btn:hover{background-color:var(--color-cool-pewter)}.project-links .btn.disabled{background-color:var(--color-soft-platinum);color:var(--color-dark-graphite);cursor:not-allowed}@media (max-width: 1000px){.projects-section{padding-top:5rem;background:var(--color-cool-pewter);height:fit-content}.projects-container{height:50vh}.nav-button{height:3rem;width:3rem;top:50%;transform:translateY(-50%);font-size:1.5rem;opacity:.8}.nav-button.left{left:.5rem}.nav-button.right{right:.5rem}.project-card{max-width:none;height:auto;padding:1rem}.project-card.previous{transform:scale(.8) translate(-120%);opacity:.5}.project-card.next{transform:scale(.8) translate(120%);opacity:.5}.project-card img{max-height:200px;object-fit:cover}.project-card h3{font-size:1.2rem;margin:.5rem 0}.project-card p{font-size:.9rem;margin-bottom:.8rem}.languages{justify-content:center;margin-bottom:.8rem}.languages li{font-size:.7rem;padding:.2rem .4rem}.project-links{flex-wrap:wrap;gap:.5rem}.project-links .btn{padding:.4rem .6rem;font-size:.8rem;flex:1;min-width:120px;text-align:center}}.resume-container{display:flex;flex-direction:column;align-items:center;padding:80px 0 0;height:100vh;overflow:hidden;position:relative}.resume-container h2{margin-bottom:1rem;color:var(--color-silver-mist)}.resume-container iframe{border:none;height:100%;box-shadow:0 4px 8px #0003;overflow:hidden}.resume-container{position:relative;display:flex;flex-direction:column;align-items:center}.resume-container{position:relative;display:flex;flex-direction:column;align-items:center;width:100%}.download-button{position:absolute;top:40%;right:3rem;transform:translateY(-50%);display:inline-block;padding:.8rem 1.5rem;font-size:1rem;font-weight:700;color:var(--color-silver-mist);background-color:var(--color-dark-graphite);text-decoration:none;border:none;border-radius:4px;transition:transform .2s ease,box-shadow .3s ease;box-shadow:0 4px 8px #0003;cursor:pointer;animation:floatButton 3s ease-in-out infinite;text-align:center;white-space:pre-line;box-shadow:.2rem .2rem .5rem #0000004d}.download-button:hover,.download-button:focus{animation-play-state:paused}.download-button:hover{color:var(--color-silver-mist);transform:translateY(-50%) scale(1.05);box-shadow:0 8px 16px #0006}@keyframes floatButton{0%{transform:translateY(0)}50%{transform:translateY(-.5rem)}to{transform:translateY(0)}}@media (max-width: 1000px){.resume-container{padding:5rem 1rem 1rem;height:auto}.resume-container iframe{height:50vh}.pdf-container{width:95%;height:75vh}.download-button{top:5rem;right:1rem;padding:.6rem 1.2rem;font-size:.9rem}.resume-container h2{font-size:1.5rem;margin-bottom:1.5rem}}@media (max-width: 1000px){.resume-container{padding:5rem 1rem 1rem}.pdf-container{width:95%;height:75vh}.download-button{top:5rem;right:1rem;padding:.6rem 1.2rem;font-size:.9rem}.resume-container h2{font-size:1.5rem;margin-bottom:1.5rem}iframe{height:100px}}.contact-section{background-color:var(--color-soft-platinum);display:flex;align-items:center;justify-content:center;height:100vh;color:var(--color-dark-graphite);position:relative;padding:40px 0 0}.contact-container{display:flex;width:100%;max-width:1200px;background-color:var(--color-silver-mist);border-radius:8px;box-shadow:0 4px 8px #0003;overflow:hidden}.contact-details{flex:1;background-color:var(--color-cool-pewter);padding:2rem;display:flex;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);flex-direction:column;justify-content:space-between;align-items:flex-start;color:var(--color-silver-mist)}.contact-details h2{font-size:1.8rem;margin-bottom:1rem;text-align:center;color:var(--color-silver-mist)}.detail-item{display:flex;align-items:center;margin-bottom:1rem;font-size:1.5rem}.detail-item .icon{font-size:1.5rem;margin-right:1rem;color:var(--color-silver-mist)}.social-icons{display:flex;justify-content:space-between;width:100%;margin-top:2rem}.social-icons a{font-size:1.5rem;color:var(--color-silver-mist);transition:color .3s ease;animation:float 3s ease-in-out infinite}.social-icons a:hover{color:var(--color-dark-graphite);animation-play-state:paused}.contact-form{flex:2;padding:2rem;background-color:var(--color-silver-mist);display:flex;flex-direction:column;justify-content:center}.contact-form h2{font-size:1.8rem;margin-bottom:1rem;color:var(--color-dark-graphite)}.contact-form .form-group{display:flex;flex-direction:column;margin-bottom:1rem}.contact-form .form-group label{font-size:1rem;margin-bottom:.5rem;color:var(--color-dark-graphite)}.contact-form .form-group input,.contact-form .form-group textarea{padding:.8rem;font-size:1rem;border:1px solid var(--color-dark-graphite);border-radius:4px;outline:none;transition:border-color .3s ease}.contact-form .form-group input:focus,.contact-form .form-group textarea:focus{border-color:var(--color-cool-pewter)}.submit-button{background-color:var(--color-dark-graphite);color:var(--color-silver-mist);padding:.8rem 1.5rem;font-size:1rem;border:none;border-radius:4px;cursor:pointer;transition:background-color .3s ease}.submit-button:hover{background-color:var(--color-cool-pewter)}@keyframes float{0%{transform:translateY(0)}50%{transform:translateY(-10px)}to{transform:translateY(0)}}@media (max-width: 1000px){.contact-section{padding:5rem 1rem 2rem;height:50vh}.contact-container{flex-direction:column;min-width:40vw;margin:0 1rem;background-color:transparent;box-shadow:none}.contact-details{padding:1.5rem;border-radius:8px;margin-bottom:1rem;box-shadow:0 4px 8px #0003}.contact-details h2{font-size:1.5rem}.detail-item{font-size:1.2rem;margin-bottom:.8rem}.detail-item .icon{font-size:1.2rem;margin-right:.8rem}.social-icons{margin-top:1.5rem;justify-content:space-around}.social-icons a{font-size:1.3rem}.contact-form{padding:1.5rem;background-color:var(--color-silver-mist);border-radius:8px;box-shadow:0 4px 8px #0003}.contact-form h2{font-size:1.5rem}.contact-form .form-group{margin-bottom:.8rem}.contact-form .form-group input,.contact-form .form-group textarea{padding:.6rem;font-size:.9rem}.submit-button{width:100%;padding:.7rem;font-size:.9rem;margin-top:1rem}}.loader-container{position:fixed;top:0;left:0;width:100%;height:100vh;display:flex;flex-direction:column;justify-content:center;align-items:center;background-color:var(--color-dark-graphite);z-index:9999}.loader{display:flex;gap:1rem}.circle{width:20px;height:20px;border-radius:50%;background-color:var(--color-silver-mist);animation:bounce .5s ease-in-out infinite}.circle:nth-child(2){animation-delay:.1s}.circle:nth-child(3){animation-delay:.2s}.loading-text{margin-top:1rem;color:var(--color-silver-mist);font-size:1.2rem;letter-spacing:.2em}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-20px)}}@media (max-width: 1000px){.circle{width:15px;height:15px}.loading-text{font-size:1rem}}@font-face{font-family:dot-matrix;src:url(/assets/led_counter-7-Zli3CVkO.ttf) format("truetype"),}*,html{scroll-behavior:smooth;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}body,html{margin:0;padding:0;box-sizing:border-box;font-family:dot-matrix,sans-serif}.full-height-section{display:flex;align-items:center;justify-content:center;color:var(--color-dark-graphite);background-color:var(--color-soft-platinum);text-align:center;font-size:2rem}.full-height-section h1{margin:0;padding:1rem;background-color:#0000001a;border-radius:8px}.vertical-page-name{position:fixed;bottom:0;left:10px;writing-mode:sideways-lr;text-align:center;font-size:2rem;font-weight:700;color:var(--color-dark-graphite);background-color:var(--color-cool-pewter);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:20px 10px;border-radius:0;z-index:10}
