*,:after,:before{box-sizing:border-box;margin:0;padding:0}:root{--font-size-xs:clamp(0.75rem,0.9vw,0.875rem);--font-size-sm:clamp(1rem,1.2vw,1.5rem);--font-size-base:clamp(1.5rem,1.5vw,2rem);--font-size-lg:clamp(2rem,1.8vw,2.5rem);--font-size-xl:clamp(2.5rem,3vw,3rem);--font-size-2xl:clamp(3rem,4vw,4rem);--font-size-3xl:clamp(4rem,6vw,6rem);--space-xs:clamp(0.5rem,1vw,1rem);--space-sm:clamp(1rem,2vw,1.5rem);--space-md:clamp(1.5rem,3vw,2.5rem);--space-lg:clamp(2rem,4vw,4rem);--space-xl:clamp(3rem,6vw,8rem);--bp-mobile:320px;--bp-tablet:768px;--bp-desktop:1024px;--bp-wide:1440px}html{scroll-behavior:smooth}body,html{overflow-y:auto}body{font-family:Geo,system-ui,-apple-system,sans-serif;font-size:var(--font-size-base);line-height:1.6;color:#e8e8e8;background:linear-gradient(#000000,#00132c);overflow-x:hidden;min-height:100vh;max-height:100vh;position:relative;display:flex}img{display:block}img,video{max-width:100%;height:auto}a{font-weight:400;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}h1,h2{color:white;font-size:var(--font-size-xl);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}.skills-page-wrapper{display:flex;flex-direction:row;gap:clamp(1rem,4vw,2rem);width:100%;height:100vh;margin:0 auto;padding:clamp(1rem,4vw,2rem);overflow:hidden;box-sizing:border-box}.skillscards-wrapper{flex:0 1 40%}.bio-wrapper,.skillscards-wrapper{min-width:0;max-height:100%;display:flex;align-items:center;justify-content:center}.bio-wrapper{flex:0 1 60%;padding:2rem;overflow:hidden}.bio-wrapper h2{font-size:clamp(1.25rem,2.5vw,2.5rem);line-height:1.3;word-wrap:break-word;overflow-wrap:break-word}@media (orientation:portrait){.skills-page-wrapper{flex-direction:column;gap:clamp(.5rem,2vw,1.5rem);height:100vh;max-height:100vh}.skillscards-wrapper{flex:0 1 70%;max-width:100%;max-height:70%}.bio-wrapper{flex:0 1 30%;padding:1.5rem;max-width:100%;max-height:30%;text-align:center}.bio-wrapper h2{font-size:clamp(1rem,4vh,2rem);line-height:1.2}}@media (max-height:940px) and (orientation:portrait){.skillscards-wrapper{flex:0 1 60%;max-width:100%;max-height:70%}.bio-wrapper{flex:0 1 40%;padding:1.5rem;max-width:100%;max-height:40%;text-align:center}.bio-wrapper h2{font-size:clamp(.875rem,3vh,1.5rem)}}@media (max-width:940px) and (orientation:landscape){.skills-page-wrapper{flex-direction:row;gap:clamp(1rem,3vw,2rem);height:100vh;max-height:100vh}.bio-wrapper h2{font-size:clamp(1rem,2vw,1.5rem)}}section{display:flex;gap:clamp(1rem,2vw,3rem);padding:clamp(1rem,4vw,4rem);height:100vh;width:100vw;max-height:100%;max-width:100%;margin:0 auto;box-sizing:border-box;scroll-snap-align:start;scroll-snap-stop:always;align-items:center;justify-content:center}.scroll-container{height:100vh;overflow-y:auto;overflow-x:hidden;scroll-snap-type:y mandatory;scroll-behavior:smooth;padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom)}.scroll-container section{min-height:100vh;min-height:100dvh;scroll-snap-align:start;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:var(--space-md) var(--space-sm);position:relative}@media (max-width:768px){.scroll-container section{padding:var(--space-md) var(--space-sm);justify-content:flex-start;padding-top:var(--space-lg)}}.project-preview-wrapper{display:flex;justify-content:space-between;gap:2rem;padding:1rem}.project-details{flex:2 1;max-width:85%;text-align:left}.project-title{cursor:pointer}.project-image{max-width:100vw}.project-image img{max-width:100vw;border:2px solid #ff6b57;border-radius:4px}@media (max-width:768px){.project-preview-wrapper{flex-direction:column;align-items:stretch}.project-details,.project-image,.project-image img{max-width:100%}}.project-preview-wrapper{display:grid;grid-template-columns:1fr 1fr;grid-gap:var(--space-lg);gap:var(--space-lg);align-items:center;max-width:min(100%,1000px);margin:0 auto;padding:0 var(--space-md);box-sizing:border-box;width:100%}.project-details{display:flex;flex-direction:column;gap:var(--space-xs);min-width:0}.project-title{border-bottom:2px solid #ff6b57;padding-bottom:.5rem;margin-bottom:1rem}.project-title h2{font-size:var(--font-size-xl);cursor:pointer;transition:all .3s ease;line-height:1.2;margin:0;word-wrap:break-word;overflow-wrap:break-word}.project-title h2:hover{transform:translateX(10px);opacity:.8}.project-desc h3{font-size:var(--font-size-base);margin:0;font-weight:400;opacity:.8;word-wrap:break-word;overflow-wrap:break-word}.project-image{flex:1 1;max-width:75vw;display:flex;justify-content:left;align-items:flex-start;min-width:0}.project-image img{width:100%;height:auto;border-radius:clamp(8px,1vw,16px);transition:transform .3s ease}.project-image img:hover{transform:scale(1.05)}@media (max-width:768px) and (orientation:landscape){.project-preview-wrapper{grid-gap:var(--space-sm);gap:var(--space-sm);padding:var(--space-sm);align-items:center;align-content:center;min-height:100%;display:grid}.project-title h2{font-size:clamp(1.25rem,3vw,2rem)}.project-desc h3{font-size:clamp(1rem,2.5vw,1.5rem)}.project-title{padding-bottom:.25rem;margin-bottom:.5rem}}@media (max-width:667px) and (orientation:landscape){.project-preview-wrapper{grid-gap:var(--space-xs);gap:var(--space-xs);padding:var(--space-xs);align-items:center;align-content:center;min-height:100%;display:grid}.project-title h2{font-size:clamp(1rem,2.5vw,1.5rem)}.project-desc h3{font-size:clamp(.875rem,2vw,1.25rem)}.project-details{gap:var(--space-xs)}}@media (orientation:portrait){.project-preview-wrapper{grid-template-columns:1fr;gap:var(--space-md);text-align:center}.project-details,.project-image{max-width:100%}.project-title h2{font-size:var(--font-size-xl)}.project-title h2:hover{transform:translateY(-5px)}}.project-section{background:rgba(26,26,26,.95);border:2px solid #ff6b57;max-width:800px;color:white}.project-info,.project-section{border-radius:8px;padding:var(--space-md);margin:var(--space-md) 0;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.project-info{display:flex;justify-content:space-between;align-items:flex-start;gap:2rem;width:100%;box-sizing:border-box;background:rgba(0,0,0,.3)}.project-info h1{margin:0;color:white;font-size:var(--font-size-xl);font-weight:600}.project-info-title{border-bottom:2px solid #ff6b57;padding-bottom:.5rem;margin-bottom:1rem;position:relative}.project-info-title:after{content:"";position:absolute;bottom:-2px;right:-2rem;width:2rem;height:2px;background:#FF6B57}.project-info-details{display:flex;flex-direction:column;flex:1 1;max-width:33.33%;text-align:left}.project-meta{display:flex;flex-direction:column;gap:.75rem;color:#cccccc}.project-meta p{margin:0;font-size:var(--font-size-sm);line-height:1.6}.project-meta strong{color:#FF6B57;font-weight:600;display:block;margin-bottom:.25rem;text-transform:uppercase;font-size:var(--font-size-xs);letter-spacing:1px}.project-meta .tech-stack{margin-top:1rem}.project-meta .project-link{margin-top:1.5rem}.project-meta .project-link a{color:#FF6B57;text-decoration:none;font-weight:500;padding:.5rem 1rem;border:1px solid #ff6b57;border-radius:4px;transition:all .3s ease;display:inline-block}.project-meta .project-link a:hover{background-color:#FF6B57;color:#000;transform:translateY(-2px)}.project-video{flex:2 1;max-width:66.67%;display:flex;justify-content:center;align-items:flex-start}.project-video video{width:100%;height:auto;border:2px solid #ff6b57;border-radius:4px;background:#000}.project-contributions{background:rgba(26,26,26,.95);border:2px solid #ff6b57;border-radius:8px;padding:var(--space-md);margin:var(--space-md) 0;max-width:800px;color:white;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.project-contributions h2{color:white;font-size:var(--font-size-lg);margin:0 0 var(--space-sm) 0;border-bottom:2px solid #ff6b57;padding-bottom:var(--space-xs)}.contributions-list{list-style:none;padding:0;margin:var(--space-sm) 0}.contributions-list li{color:#cccccc;font-size:var(--font-size-base);margin:var(--space-xs) 0;padding-left:var(--space-sm);position:relative}.contributions-list li:before{content:"▸";color:#FF6B57;font-weight:700;position:absolute;left:0}.project-about{display:flex;justify-content:flex-start;flex-direction:row;flex-wrap:wrap}.project-about h1{color:white;font-size:var(--font-size-xl);margin:0 0 var(--space-sm) 0;border-bottom:2px solid #ff6b57;padding-bottom:var(--space-xs)}.project-about h3{font-size:2rem;color:#FF6B57}.project-about p{color:white;font-size:var(--font-size-base);line-height:1.5}@media (max-width:768px){.project-section{padding:var(--space-sm);margin:var(--space-sm) 0;max-width:100%}.project-info{flex-direction:column;gap:1.5rem;padding:var(--space-sm)}.project-info-details{max-width:100%;order:1}.project-info-title:after{display:none}.project-video{max-width:100%;order:2}.project-info-title h1{font-size:var(--font-size-lg)}.project-meta{gap:calc(var(--space-xs) * .75)}.project-meta strong{min-width:80px}.project-meta a{padding:calc(var(--space-xs) * .75) var(--space-xs)}.contributions-list li{font-size:var(--font-size-sm)}}.section-title{color:white;font-size:var(--font-size-lg);margin:0 0 var(--space-sm) 0;border-bottom:2px solid #ff6b57;padding-bottom:var(--space-xs)}.section-content{color:#cccccc;font-size:var(--font-size-base);line-height:1.6}.sub-heading-highlight{color:#FF6557}.my-contributions-container{color:white;padding:2%;height:100vh;box-sizing:border-box;display:flex;flex-direction:column}.my-contributions-title h1{border-bottom:2px solid #ff6557;margin:0 0 20px}.carousel-wrapper{overflow:hidden;position:relative;flex:1 1;display:flex;flex-direction:column}.carousel-container{display:flex;transition:transform .3s ease-in-out;flex:1 1}.contribution-container{width:100%;min-width:100%;flex-shrink:0;box-sizing:border-box;padding-right:2%;padding-left:1%}.contribution-container,.single-contribution-wrapper{height:100%;display:flex;flex-direction:column}.contribution-title{font-size:x-large}.contribution-details-container{display:flex;flex-direction:row;padding-top:1%;padding-left:1.5%;border-left:1px solid #ff6557;flex:1 1;min-height:0;gap:20px}.text-content-column{justify-content:flex-start;padding-right:20px}.text-content-column,.video-content-column{flex:1 1;display:flex;flex-direction:column}.video-content-column{gap:10px;min-height:0}.contribution-detail{display:flex;flex-direction:column;padding:2px;flex:1 1}.contribution-detail .text{margin-bottom:10px}.contribution-detail p{margin:.5rem 0;font-size:.9rem;line-height:1.4}.video{border:2px solid #ff6557;flex:1 1;min-height:150px;max-height:100%}.video video{width:100%;height:100%;object-fit:cover}.contribution-Impact{margin-top:20px}.my-contributions-carousel-dots{display:flex;justify-content:center;gap:10px;padding:20px 0;align-self:center;flex-shrink:0}.dot{width:9px;height:9px;background-color:none;border:1px solid #ff6557;border-radius:50%;cursor:pointer;transition:background-color .3s ease}.dot.active,.dot:hover{background-color:#FF6557}.dot:hover{opacity:.8}.card-stack{position:relative;display:flex;align-items:center;justify-content:center;max-width:min(25vw,400px);height:auto;margin:0 auto;perspective:1200px}.card,.card-stack{width:100%;aspect-ratio:2/3}.card{position:absolute;height:100%;transform-origin:center;cursor:pointer;transition:transform .4s cubic-bezier(.4,.2,.2,1),z-index 0s linear .2s;will-change:transform}.card.top.swiping{transform:translateX(320px) rotate(18deg)!important;opacity:0;pointer-events:none}.card-inner{width:100%;height:100%;position:relative;transition:transform .5s;transform-style:preserve-3d}.card.flipped .card-inner{transform:rotateY(180deg)}.card-back,.card-front{position:absolute;width:100%;height:100%;-webkit-backface-visibility:hidden;backface-visibility:hidden;overflow:hidden;display:flex;align-items:center;justify-content:center}.card-front img{width:90%}.card-back img,.card-front img{height:auto;border-radius:12px;border-color:#FF6557}.card-back img{width:100%}.card-back{color:#222;transform:rotateY(180deg);display:flex;align-items:left;justify-content:left;font-size:clamp(.875rem,1.5vw,1.2rem)}.card-instructions{position:absolute;bottom:-2.5rem;left:50%;transform:translateX(-50%);text-align:center;font-size:var(--font-size-xs);opacity:.7;white-space:nowrap;width:max-content;max-width:100%;pointer-events:none;text-shadow:0 1px 2px rgba(0,0,0,.5);transition:opacity .3s ease}@media (orientation:portrait){.card-stack{align-items:center;width:100%;max-width:min(60vw,300px);aspect-ratio:2/3;margin:0 auto}.card-instructions{font-size:clamp(.75rem,2vw,1rem);bottom:-1rem}}@media (max-width:940px) and (orientation:landscape){.card-stack{width:100%;max-width:min(20vw,240px)}.card-instructions{font-size:clamp(.65rem,1.2vw,.0875rem);bottom:-1rem}}.title-wrapper{display:flex;align-items:center;justify-content:center;height:100vh;padding:2rem}.title-container{display:flex;align-items:center;gap:clamp(1rem,3vw,2rem);max-height:100%}.title-block{display:flex;align-items:column}.name-container{display:flex;flex-direction:column;font-size:clamp(4rem,8vh,7rem);text-transform:uppercase;color:white;font-weight:300;line-height:1;text-align:right}.name{position:block;cursor:pointer;text-shadow:0 4px 8px rgba(0,0,0,.8),0 2px 4px rgba(0,0,0,.9)}.title-divider{width:2px;background-color:white;align-self:stretch;flex-shrink:0}.roles{display:flex;flex-direction:column;color:#ff6557;text-align:left;font-size:clamp(4rem,8vh,7rem);font-weight:300;line-height:1}.roles span{display:block;text-shadow:0 4px 8px rgba(0,0,0,.8),0 2px 4px rgba(0,0,0,.9)}@media (orientation:portrait){.title-wrapper{padding:1rem;height:100vh;max-height:100vh}.title-container{flex-direction:column;gap:1.5rem;text-align:center;max-height:100%}.title-divider{width:60%;height:3px;align-self:center}.name-container{font-size:clamp(4rem,15vw,7rem);text-align:center;flex-direction:row;gap:1rem}.roles{font-size:clamp(2rem,10vw,4rem);text-align:center}}@media (max-height:500px) and (orientation:landscape){.title-wrapper{padding:1rem;height:100vh;max-height:100vh}.name-container{max-height:100%}.name-container,.roles{font-size:clamp(2rem,6vw,4rem)}}