@import"https://fonts.googleapis.com/css2?family=Poppins:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap";*{margin:0;padding:0}:root{--bg-primary: #121212;--bg-secondary: #1e1e1e;--text-primary: #ffffff;--text-secondary: #d1d1d1;--accent-cyan: #ffffff;--accent-purple: #888888;--accent-pink: #cccccc;--font-family-base: "Poppins", sans-serif;--font-family-heading: "Orbitron", "Syncopate", sans-serif;font-family:var(--font-family-base);line-height:1.2;background-color:var(--bg-primary);color:var(--text-primary);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden}[data-theme=light]{--bg-primary: #f8f9fa;--bg-secondary: #ffffff;--text-primary: #212529;--text-secondary: #495057;--accent-cyan: #343a40;--accent-purple: #4c6ef5;--accent-pink: #d6336c}*,*:before,*:after{transition:background-color .5s ease,color .5s ease,border-color .5s ease}h3{font-weight:600;font-style:italic;font-size:64px}h4{font-weight:500;font-style:italic;font-size:28px}h5{font-weight:400;font-style:italic;font-size:20px}p{font-weight:400;font-size:14px;margin-left:20px;font-family:Poppins,sans-serif}input,textarea{font-family:Poppins,sans-serif}input::placeholder{font-size:12px}textarea::placeholder{font-size:12px}.scroll-to-top{position:fixed;right:20px;bottom:20px;width:40px;height:40px;border-radius:50%;background-color:var(--bg-primary);color:var(--accent-purple);border:1px solid var(--accent-purple);cursor:pointer;font-size:15px;z-index:999;box-shadow:0 0 10px var(--accent-purple);transition:background-color .3s ease,border-color .3s ease,transform .3s ease;display:flex;align-items:center;justify-content:center}.scroll-to-top:hover{transform:translateY(-5px)}a{text-decoration:none}@media (max-width: 768px){h3{font-size:30px!important}h4{font-size:20px!important}h5{font-size:16px!important}}.home{width:100%}.home-title{text-align:center;padding-top:2rem}.spacer{height:100vh}.section{height:100vh;padding:1rem 8rem;box-sizing:border-box}@media (max-width: 1024px){.section{padding:1rem 4rem}}@media (max-width: 768px){.section{padding:1rem 1.5rem;height:auto;min-height:100vh}}.about{background-color:var(--bg-secondary);height:50vh;display:flex;align-items:center;justify-content:space-between;color:var(--text-primary)}.about-text{width:35vw}.about-text h3,.about-text h4{margin:.5rem 0}.about-text p{margin-top:1rem}.about-photo{aspect-ratio:1/1;height:100%;background-image:url(/assets/pfp-Bp5OxdmX.png);background-repeat:no-repeat;background-position:center;background-size:fit}@media (max-width: 768px){.about{flex-direction:column-reverse;justify-content:center;gap:2rem;text-align:center;padding-top:4rem;padding-bottom:4rem}.about-text{width:100%}.about-photo{height:40vh;width:100%;background-size:contain}}.interests{padding-top:8rem;height:fit-content}.projects{display:flex;align-items:left;justify-content:top;color:var(--text-primary);flex-direction:column;margin-top:8rem;gap:2rem;height:fit-content}.contact{display:flex;align-items:left;justify-content:center;flex-direction:column;color:var(--text-primary);height:fit-content;margin-top:8rem;margin-bottom:8rem;gap:2rem}.skills{margin-top:8rem;display:flex;flex-direction:column;gap:2rem;height:fit-content}@media (max-width: 768px){.interests,.projects,.contact,.skills{margin-top:4rem;padding-top:4rem}.about-text{text-align:left}.experience-row{flex-direction:column}.experience-skills-col{padding:0!important}.contact-info{text-align:left!important}}.services{display:flex;justify-content:space-between;flex-wrap:wrap;height:fit-content;position:relative}.service-highlight{position:absolute;background-color:var(--text-primary);transition:all .3s cubic-bezier(.25,1,.5,1);z-index:0;pointer-events:none}.service{flex:1;min-width:220px;padding:1.5rem;border-left:1px solid var(--accent-purple);position:relative;z-index:1;transition:color .3s ease,border-color .3s ease;cursor:pointer}.service.hovered{border-left-color:transparent}.service:first-child{border-left:none}.service.hovered h4,.service.hovered p,.service.hovered .tech-list,.service.hovered .tech-item{color:var(--bg-primary);transition:color .3s ease}.service h4{margin:1rem 0;transition:color .3s ease}.service p{font-size:.95rem;line-height:1.5;color:var(--text-secondary);margin-bottom:2rem}.tech-list{margin-top:1rem;padding-left:1rem;list-style-type:disc;color:var(--text-secondary);margin-left:20px}.tech-item{font-size:.9rem;margin-bottom:.3rem}.projects-grid{width:100%;display:grid;grid-template-columns:repeat(auto-fit,minmax(450px,1fr));gap:2rem}.project-card{position:relative;background-size:cover;background-position:center;overflow:hidden;aspect-ratio:16 / 9;transition:transform .3s ease;border:1px solid var(--text-primary)}.project-card:hover{transform:scale(1.01)}.hover-overlay .project-overlay{position:absolute;inset:0;background:radial-gradient(42.3% 42.3% at 50% 58%,#0000004d,#0009 92%),url(<path-to-image>) center center / cover no-repeat;color:#fff;display:flex;flex-direction:row;justify-content:space-between;align-items:top;opacity:0;padding:2rem;text-align:center;transition:opacity .3s ease}.hover-overlay:hover .project-overlay{opacity:1}.project-overlay>div>h3{font-size:1.5rem;margin-bottom:.5rem;text-align:left}.project-overlay>div>p{font-size:1rem;margin-bottom:1rem;text-align:left}@media (max-width: 768px){.projects-grid{grid-template-columns:1fr}.hover-overlay .project-overlay{flex-direction:column;justify-content:flex-end;align-items:flex-start;gap:1.5rem}.project-overlay>div>p{display:none}}.experience-section{background-color:#f3f3f3;padding:3rem 2rem}.experience-title{font-size:2.5rem;font-weight:700;font-style:italic;margin-bottom:2rem}.experience-table{display:flex;flex-direction:column;gap:2px;position:relative}.experience-highlight{position:absolute;background-color:var(--text-primary);transition:all .3s cubic-bezier(.25,1,.5,1);z-index:0;pointer-events:none}.experience-row{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--accent-purple);padding:2rem 1.5rem;gap:2rem;flex-wrap:wrap;position:relative;z-index:1;transition:color .3s ease,border-color .3s ease;cursor:pointer}.experience-row.hovered{border-bottom-color:transparent}.experience-row.hovered h4,.experience-row.hovered .skill-bullet{color:var(--bg-primary);transition:color .3s ease}.experience-row h4,.skill-bullet{transition:color .3s ease}.experience-title-col{flex:1 1 30%}.experience-skills-col{flex:2 1 25%;display:flex;flex-wrap:wrap;gap:.8rem;color:var(--text-secondary);padding-left:5rem}.skill-bullet{white-space:nowrap}.contact-title{font-size:2.5rem;font-weight:700;font-style:italic;margin-bottom:2rem;color:var(--text-primary)}.contact-wrapper{display:flex;flex-wrap:wrap;gap:3rem;justify-content:space-between}.contact-info{flex:1 1 300px;font-size:1rem;line-height:1.8;margin-left:20px}.contact-info hr{margin:1.5rem 0;border:none;border-top:1px solid var(--accent-purple);width:80%}.contact-link{color:var(--text-primary);text-decoration:none;transition:color .3s ease}.contact-link:hover{color:var(--accent-cyan)}.contact-form{flex:1 1 300px;display:flex;flex-direction:column;gap:1rem}.contact-form input,.contact-form textarea{padding:.5rem;font-size:1rem;border:1px solid var(--accent-purple);background-color:transparent;color:var(--text-primary);outline:none;width:calc(100% - 18px)}.contact-form input:focus,.contact-form textarea:focus{border-color:var(--accent-cyan);box-shadow:0 0 8px #7878784d}.contact-form button{align-self:flex-end;background:transparent;color:var(--text-primary);border:1px solid var(--accent-cyan);font-weight:600;font-size:1rem;padding:.6rem 1.2rem;border-radius:999px;cursor:pointer;display:flex;align-items:center;gap:.5rem;transition:all .3s ease}.contact-form button:hover{background:var(--accent-cyan);color:var(--bg-primary);box-shadow:0 0 15px #78787866}.arrow{font-size:1.2rem}@media (max-width: 768px){.contact-wrapper{flex-direction:column;gap:2rem}.contact-info{margin-left:0;text-align:center}.contact-info hr{margin:1.5rem auto;width:100%}.contact-form button{width:100%;justify-content:center}}.hero-container{position:relative;height:100vh;min-height:600px;background-color:var(--bg-primary);overflow:hidden;display:flex;align-items:center;justify-content:center;isolation:isolate}.hero-spline{position:absolute;top:0;left:0;width:100%;height:100%;z-index:1;pointer-events:auto}.hero-spline:after{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:radial-gradient(circle at center,transparent 5%,var(--bg-primary) 100%);pointer-events:none;z-index:2}.hero-content{position:relative;display:flex;flex-direction:column;align-items:center;text-align:center;max-width:800px;padding:0 2rem;pointer-events:none;z-index:2}.hero-title{font-family:var(--font-family-heading);font-size:clamp(2rem,8vw,8rem);font-weight:700;color:#fff;line-height:1.1;letter-spacing:.05em;margin-bottom:1.5rem;text-transform:uppercase;animation:float 6s cubic-bezier(.25,1,.5,1) infinite alternate;mix-blend-mode:difference}[data-theme=light] .hero-title{-webkit-text-stroke:1px #000000}.highlight-text{color:transparent;-webkit-text-stroke:1px var(--accent-cyan);text-shadow:0 0 20px rgba(120,120,120,.4)}.hero-subtitle{font-family:var(--font-family-base);font-size:clamp(1rem,1.5vw,1.25rem);color:var(--text-secondary);max-width:600px;margin-bottom:3rem;margin-left:0;line-height:1.6}.hero-actions{display:flex;gap:1.5rem;pointer-events:auto}.btn-primary{font-family:var(--font-family-heading);font-size:1rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase;color:var(--text-primary);background:var(--bg-secondary);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--accent-cyan);padding:1rem 2.5rem;border-radius:2rem;cursor:pointer;transition:all .3s cubic-bezier(.25,1,.5,1)}.btn-primary:hover{background:var(--accent-cyan);color:var(--bg-primary);border-color:var(--accent-cyan);box-shadow:0 0 20px #78787880;transform:translateY(-2px)}.btn-secondary{font-family:var(--font-family-heading);font-size:1rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase;color:var(--text-primary);background:transparent;border:none;padding:1rem 1.5rem;cursor:pointer;position:relative;transition:color .3s ease,background .3s ease}.btn-secondary:after{content:"";position:absolute;bottom:10px;left:50%;transform:translate(-50%);width:0;height:2px;background-color:var(--accent-purple);transition:width .3s ease;box-shadow:0 0 10px var(--accent-purple)}.btn-secondary:hover:after{width:80%}@keyframes float{0%{transform:translateY(0)}50%{transform:translateY(-15px)}to{transform:translateY(0)}}@media (max-width: 768px){.hero-content{padding:0 1rem}.hero-actions{flex-direction:column;width:100%;max-width:280px}}.project-detail-page{min-height:100vh;background-color:var(--bg-primary);color:var(--text-primary);padding-bottom:4rem}.project-detail-nav{position:absolute;top:2rem;left:2rem;z-index:100}.project-detail-hero{width:100%;height:60vh;min-height:400px;background-size:cover;background-position:center;position:relative;display:flex;align-items:flex-end}.project-detail-overlay{background:linear-gradient(to top,var(--bg-primary) 0%,transparent 100%);width:100%;padding:4rem 8rem 2rem}.project-detail-title{font-family:var(--font-family-heading);font-size:clamp(2.5rem,5vw,4rem);text-transform:uppercase;margin:0 0 .5rem;color:var(--text-primary)}.project-detail-tech{font-size:1.2rem;color:var(--accent-cyan);margin:0}.project-detail-content{padding:4rem 8rem;max-width:1200px;margin:0 auto;display:grid;grid-template-columns:1fr 2fr;gap:4rem}.project-meta{display:flex;flex-direction:column;gap:2rem}.meta-item h4{font-size:1.1rem;color:var(--text-secondary);margin-bottom:.5rem;font-weight:600;text-transform:uppercase;letter-spacing:1px}.meta-item p{font-size:1rem;line-height:1.5;color:var(--text-primary);margin:0}.meta-link{color:var(--accent-purple);text-decoration:none;font-weight:500;transition:color .3s}.meta-link:hover{color:var(--accent-cyan)}.project-description h2{font-size:2rem;margin-bottom:1.5rem;color:var(--text-primary)}.project-description p{font-size:1.1rem;line-height:1.8;color:var(--text-secondary)}.project-gallery{grid-column:1 / -1;display:flex;flex-direction:column;gap:2rem;margin-top:4rem}.gallery-image{width:100%;height:auto;border-radius:8px;box-shadow:0 4px 20px #0003}@media (max-width: 1024px){.project-detail-overlay,.project-detail-content{padding-left:4rem;padding-right:4rem}}@media (max-width: 768px){.project-detail-overlay,.project-detail-content{padding-left:1.5rem;padding-right:1.5rem}.project-detail-content{grid-template-columns:1fr;gap:3rem}.project-detail-nav{top:1rem;left:1rem}}.theme-toggle{width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:1000;border:1px solid rgba(255,255,255,.1);background:#0a0b1a66;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);color:#fff;box-shadow:0 4px 12px #0000004d;transition:all .3s cubic-bezier(.25,1,.5,1)}.theme-toggle:hover{transform:translateY(-3px) rotate(15deg);box-shadow:0 6px 16px #0006}.theme-toggle:active{transform:translateY(0) scale(.95)}[data-theme=light] .theme-toggle{background:#ffffffb3;border:1px solid rgba(0,0,0,.1);color:#212529;box-shadow:0 4px 12px #0000001a}[data-theme=light] .theme-toggle:hover{box-shadow:0 6px 16px #00000026}.theme-toggle-icon{display:flex;align-items:center;justify-content:center;animation:fade-in-spin .5s ease}@keyframes fade-in-spin{0%{opacity:0;transform:rotate(-90deg) scale(.5)}to{opacity:1;transform:rotate(0) scale(1)}}.language-toggle{width:40px;height:40px;border-radius:50%;background:var(--bg-secondary);border:1px solid var(--accent-cyan);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:1000;box-shadow:0 4px 6px #0000001a,inset 0 0 10px #ffffff0d;transition:all .4s cubic-bezier(.25,1,.5,1);color:var(--text-primary)}.language-toggle:hover{transform:translateY(-5px);box-shadow:0 8px 15px #0003,0 0 20px var(--accent-cyan);background:var(--accent-cyan);color:var(--bg-primary)}.language-toggle-thumb{font-family:var(--font-family-heading);font-size:1.1rem;font-weight:700;transition:all .4s ease}.navbar{position:fixed;left:0;right:0;z-index:1000;background-color:var(--bg-secondary);display:flex;justify-content:space-between;align-items:center;padding:1rem 8rem;border-bottom:1px solid var(--accent-cyan);box-shadow:0 2px 5px #0000001a;transition:top .3s ease,background-color .5s ease,border-color .5s ease}.navbar-visible{top:0}.navbar-hidden{top:-100px}.navbar-logo{font-size:28px;margin:0;color:var(--text-primary)}.nav-links{display:flex;align-items:center;gap:20px}.nav-link{margin:0 10px;text-decoration:none;color:var(--text-secondary);transition:color .3s ease;font-weight:500}.nav-link.active,.nav-link:hover{color:var(--text-primary)}.nav-link-btn{text-decoration:none}.hamburger{display:none;flex-direction:column;cursor:pointer;gap:6px;z-index:1001}.hamburger .bar{width:25px;height:3px;background-color:var(--text-primary);transition:all .3s ease;border-radius:3px}@media (max-width: 1024px){.navbar{padding:1rem 4rem}}@media (max-width: 768px){.navbar{padding:1rem 1.5rem;flex-direction:row;justify-content:space-between}.hamburger{display:flex}.hamburger.open .bar:nth-child(1){transform:translateY(9px) rotate(45deg)}.hamburger.open .bar:nth-child(2){opacity:0}.hamburger.open .bar:nth-child(3){transform:translateY(-9px) rotate(-45deg)}.nav-links{position:fixed;top:0;right:-100%;width:70%;height:100vh;background-color:var(--bg-secondary);flex-direction:column;justify-content:center;align-items:center;gap:2rem;transition:right .4s cubic-bezier(.25,1,.5,1);box-shadow:-5px 0 20px #00000080;z-index:1000;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background-color:var(--bg-primary)}.nav-links.nav-links-open{right:0}.nav-link{margin:10px 0;font-size:1.3rem}}
