@import url(https://fonts.googleapis.com/css2?family=Inter:wght@400;600;700&display=swap);body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}html.lenis{height:auto}.lenis.lenis-smooth{scroll-behavior:auto}.lenis.lenis-smooth [data-lenis-prevent]{overscroll-behavior:contain}.lenis.lenis-stopped{overflow:hidden}.lenis.lenis-scrolling iframe{pointer-events:none}.App{text-align:left}.App *{box-sizing:border-box}html{scroll-behavior:smooth}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:var(--color-black-primary)}::-webkit-scrollbar-thumb{border-radius:4px;-webkit-transition:all .3s ease;transition:all .3s ease}::-webkit-scrollbar-thumb,::-webkit-scrollbar-thumb:hover{background:var(--color-grey)}::selection{background:#fe44001a;color:var(--color-orange)}:focus{border-radius:6px;outline-offset:4px}:root{--color-orange:#fe4400;--font-family:"Inter",sans-serif;--font-size-base:15px;--font-size-medium:14px;--font-weight-regular:400;--font-weight-semibold:600;--font-weight-bold:600;--line-height:1.6;--color-white:#1a1a1a;--color-grey:#616977;--color-black-surface:#f9f9fa;--color-black-sheet:#fff;--color-black-primary:#f7f6f8;--color-dark-border:#eee;--color-light-surface:#f9f9fa;--color-light-sheet:#fff;--color-light-primary:#f7f6f8;--color-light-border:#eee;--color-text-primary:var(--color-white);--color-text-secondary:var(--color-grey);--color-bg-primary:var(--color-black-primary);--color-bg-surface:var(--color-black-surface);--color-bg-sheet:var(--color-black-sheet)}*{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f7f6f8;background-color:var(--color-black-primary);color:#1a1a1a;color:var(--color-white);font-family:Inter,sans-serif;font-family:var(--font-family);font-size:15px;font-size:var(--font-size-base);font-weight:400;font-weight:var(--font-weight-regular);line-height:1.6;line-height:var(--line-height);overflow-x:hidden;text-rendering:optimizeLegibility}.portfolio-container{background:#f7f6f8;background:var(--color-black-primary);display:flex;justify-content:center;min-height:100vh;padding:104px 80px;position:relative}.portfolio-main{border:1px solid #eee;border:1px solid var(--color-dark-border);border-radius:6px;display:flex;flex:1 1;flex-direction:column;gap:128px;margin:0 auto;max-width:1148px;padding:80px 104px;position:relative}.heading{color:#1a1a1a;color:var(--color-white);font-weight:600;font-weight:var(--font-weight-bold)}.body-text,.heading{font-size:15px;font-size:var(--font-size-base)}.body-text{color:#616977;color:var(--color-grey);font-weight:400;font-weight:var(--font-weight-regular);letter-spacing:.12px}.white-text{color:#1a1a1a;color:var(--color-white)}.orange-text{color:#fe4400;color:var(--color-orange)}.portfolio-link{color:#616977;color:var(--color-grey);display:inline;font-size:15px;font-size:var(--font-size-base);letter-spacing:.12px;text-decoration:none;transition:color .2s ease}.portfolio-link:hover{color:#fe4400;color:var(--color-orange)}.portfolio-link .link-text{display:inline}.portfolio-link .link-arrow{background-image:url(/static/media/arrow-up-right.87c8b782f2641c84ed50.svg);background-position:50%;background-repeat:no-repeat;background-size:contain;display:inline-block;height:20px;margin-bottom:4px;margin-left:2px;vertical-align:middle;width:20px}.btn-primary{align-items:center;background:#f9f9fa;border:none;border-radius:6px;cursor:pointer;display:inline-flex;overflow:hidden;text-decoration:none}.btn-primary:hover .btn-text{color:#1a1a1a}.btn-text{color:#616977;color:var(--color-grey);font-family:Inter,sans-serif;font-family:var(--font-family);font-size:15px;padding:8px 12px}.btn-arrow{background:#fe4400;background:var(--color-orange);border:1px solid #fe4400;border:1px solid var(--color-orange);color:#1a1a1a;color:var(--color-white);font-weight:700;height:38px;margin:4px;width:38px}.btn-arrow img{filter:brightness(0) saturate(100%) invert(1);height:20px;width:20px}.btn-primary:disabled{cursor:not-allowed;opacity:.6;pointer-events:none}.btn-primary:disabled .btn-text{color:#616977;color:var(--color-grey)}.btn-primary:disabled .btn-arrow{background:#616977;background:var(--color-grey);border-color:#616977;border-color:var(--color-grey)}@media (max-width:768px){.portfolio-container{padding:60px 20px}.portfolio-main{gap:128px;padding:40px 60px}}@media (max-width:480px){.portfolio-container{padding:60px 8px 16px}.portfolio-main{border:none;padding:20px}}@media (max-height:600px){.portfolio-container{padding:40px 37px}.portfolio-main{gap:60px;padding:40px 60px}}@media (max-height:400px){.portfolio-container{padding:20px 37px}.portfolio-main{gap:40px;padding:20px 40px}}.about-section{display:flex;flex-direction:column;gap:128px;width:100%}.about-content,.approach-content,.services-content{display:flex;flex-direction:column;gap:64px;width:100%}.section-heading{color:var(--color-white);font-size:var(--font-size-base);font-weight:var(--font-weight-bold);line-height:var(--line-height);margin:0}.about-text{max-width:690px}.about-text p,.approach-text{line-height:var(--line-height);margin:0}.approach-text,.services-list{max-width:690px}.services-list{display:flex;flex-direction:column;gap:0}.services-list p{line-height:var(--line-height);margin:0}.emphasized-word{background:#fe44001a;color:var(--color-orange);cursor:pointer;position:relative;transition:color .2s ease;transition:all .2s ease}.emphasized-word:hover{background:none}.hover-image-overlay{animation:fadeInScale .3s ease-out;pointer-events:none;position:fixed;z-index:1000}.hover-image{border:1px solid var(--color-dark-border);border-radius:6px;box-shadow:0 8px 16px #0003;height:110px;object-fit:cover;width:200px}.hover-image,.hover-image-caption{background:var(--color-black-surface)}.hover-image-caption{border:1px solid var(--color-dark-border);border-radius:4px;color:var(--color-white);font-size:14px;font-weight:500;margin-top:8px;padding:8px 12px;text-align:center;white-space:nowrap}@keyframes fadeInScale{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@media (max-width:480px){.about-text,.approach-text,.services-list{max-width:100%}.hover-image-overlay{display:none}}.resume-section{display:flex;flex-direction:column;gap:64px;margin:0 auto;width:100%}.resume-header{justify-content:space-between;width:100%}.download-btn,.resume-header{align-items:center;display:flex}.education-section,.experience-section{display:flex;flex-direction:column;gap:64px;width:100%}.subsection-heading{color:var(--color-white);font-size:var(--font-size-base);font-weight:var(--font-weight-bold);line-height:var(--line-height);margin:0}.education-list,.experience-list{display:flex;flex-direction:column;gap:32px;width:100%}.education-item,.experience-item{align-items:flex-start;display:flex;gap:48px;width:100%}.date-range{flex-shrink:0;min-width:150px;width:15%}.date-range .body-text{line-height:var(--line-height)}.position-company-group,.program-institution-group{align-items:flex-start;display:flex;flex:1 1;gap:32px;justify-content:space-between}.degree-info{flex-shrink:0;min-width:60px;width:10%}.degree-info,.position-info,.program-info{align-items:flex-start;display:flex;flex-direction:column;gap:8px;text-align:left}.position-info,.program-info{flex:1 1}.position-title,.program-title{color:var(--color-white)}.degree-title,.position-title,.program-title{text-align:left}.degree-title,.institution-name,.position-title,.program-title{font-size:var(--font-size-base);font-weight:var(--font-weight-regular);line-height:var(--line-height);margin:0}.institution-name{color:var(--color-grey)}.company-info,.institution-info{align-items:flex-end;display:flex;flex-direction:column;flex-shrink:0;gap:8px;text-align:right}.company-link{align-self:flex-end}.location{line-height:var(--line-height);margin:0}.degree{letter-spacing:.12px;line-height:1.5}.faculty,.program{line-height:1.5}.achievement,.faculty,.program,.responsibility{color:var(--color-grey);letter-spacing:.12px;margin:0}.achievement,.responsibility{font-size:var(--font-size-base);font-weight:var(--font-weight-regular);line-height:var(--line-height)}.achievements,.thesis-info{display:flex;flex-direction:column;gap:8px}.thesis-info{max-width:320px}.thesis-links{display:flex;flex-direction:column;gap:8px}.thesis-link{flex:1 1;min-width:0}.thesis-type{line-height:var(--line-height);margin:0}@media (max-width:1400px){.position-info,.program-info{flex:1 1;min-width:150px}.company-info,.institution-info{flex:1 1;min-width:200px}.position-company-group,.program-institution-group{flex:1 1;gap:24px}}@media (max-width:768px){.resume-section{width:100%}.education-section,.experience-section{gap:80px}.education-list,.experience-list{gap:32px}.education-item,.experience-item{align-items:stretch;flex-direction:column;gap:16px}.date-range{order:-1;padding-bottom:4px;width:100%}.date-range .body-text{color:var(--color-grey);font-size:var(--font-size-small);font-weight:var(--font-weight-medium)}.position-company-group,.program-institution-group{align-items:flex-start;flex-direction:row;gap:16px;justify-content:space-between;margin-bottom:0;width:100%}.position-info,.program-info{align-items:flex-start;flex:1 1;flex-direction:column;min-width:0;text-align:left}.company-info,.institution-info{align-items:flex-end;flex:1 1;flex-direction:column;min-width:0;text-align:right}.degree-info{align-items:flex-start;flex-direction:row;text-align:left;width:100%}.thesis-info{margin-top:8px;max-width:100%}}@media (max-width:480px){.resume-header{align-items:flex-start;flex-direction:column;gap:24px;justify-content:flex-start}.education-list,.experience-list{gap:32px}.education-item,.experience-item{gap:12px}}.header{height:103px;justify-content:space-between;width:100%}.header,.profile-section{align-items:center;display:flex}.profile-section{flex:1 1}.profile-container{align-items:center;display:flex;gap:24px}.profile-image{border-radius:6px;height:94px;position:relative;width:94px}.profile-bg{background:var(--color-orange);left:0;position:absolute;top:0;z-index:1}.profile-bg,.profile-photo{border-radius:6px;height:100%;width:100%}.profile-photo{object-fit:cover;position:relative;z-index:2}.profile-text{display:flex;flex:1 1;flex-direction:column;gap:16px}.profile-info{display:flex;flex-direction:column;gap:4px}.profile-name{color:var(--color-white);font-size:18px;font-weight:var(--font-weight-bold);letter-spacing:.18px;line-height:normal;margin:0}.profile-title{color:var(--color-grey);font-size:var(--font-size-base);letter-spacing:.12px;margin:0}.linkedin-link{align-self:flex-start}.navigation{align-items:flex-end;display:flex;flex-direction:column;gap:8px}.nav-item{background:none;border:none;color:var(--color-grey);cursor:pointer;font-family:var(--font-family);font-size:var(--font-size-base);height:29px;letter-spacing:.18px;line-height:var(--line-height);line-height:normal;margin:0;padding:0;text-align:right;transition:color .2s ease;width:100px}.nav-item:hover{color:var(--color-white)}.nav-item-active{color:var(--color-white)!important;font-weight:var(--font-weight-bold)}@media (max-width:600px){.header{align-items:flex-start;flex-direction:column;gap:32px;height:auto}.navigation{align-self:stretch;flex-direction:row;gap:24px;justify-content:space-between}.nav-item{text-align:left;width:-webkit-fit-content;width:fit-content}}@media (max-width:480px){.profile-image{height:70px;width:70px}.profile-text{gap:0}.profile-name{font-size:18px}.navigation{gap:16px}.nav-item{font-size:16px}}.animate-on-scroll{transition:all .6s cubic-bezier(.25,.46,.45,.94);will-change:opacity,transform}.animate-on-scroll.animate-hidden{opacity:0}.animate-on-scroll.animate-visible{opacity:1}.animate-on-scroll.fadeInUp.animate-hidden{opacity:0;transform:translateY(40px)}.animate-on-scroll.fadeInUp.animate-visible{opacity:1;transform:translateY(0)}.animate-on-scroll.fadeInDown.animate-hidden{opacity:0;transform:translateY(-40px)}.animate-on-scroll.fadeInDown.animate-visible{opacity:1;transform:translateY(0)}.animate-on-scroll.fadeInLeft.animate-hidden{opacity:0;transform:translateX(-40px)}.animate-on-scroll.fadeInLeft.animate-visible{opacity:1;transform:translateX(0)}.animate-on-scroll.fadeInRight.animate-hidden{opacity:0;transform:translateX(40px)}.animate-on-scroll.fadeInRight.animate-visible{opacity:1;transform:translateX(0)}.animate-on-scroll.scaleUp.animate-hidden{opacity:0;transform:scale(.8)}.animate-on-scroll.scaleUp.animate-visible{opacity:1;transform:scale(1)}.animate-on-scroll.popUp.animate-hidden{opacity:0;transform:scale(.8) translateY(20px)}.animate-on-scroll.popUp.animate-visible{opacity:1;transform:scale(1) translateY(0);transition:all .6s cubic-bezier(.175,.885,.32,1.275)}.animate-on-scroll.slideInUp.animate-hidden{opacity:0;transform:translateY(60px)}.animate-on-scroll.slideInUp.animate-visible{opacity:1;transform:translateY(0)}.animate-on-scroll.fadeIn.animate-hidden{opacity:0}.animate-on-scroll.fadeIn.animate-visible{opacity:1}.animate-on-scroll.stagger-1{transition-delay:.1s}.animate-on-scroll.stagger-2{transition-delay:.2s}.animate-on-scroll.stagger-3{transition-delay:.3s}.animate-on-scroll.stagger-4{transition-delay:.4s}.animate-on-scroll.stagger-5{transition-delay:.5s}@media (max-width:768px){.animate-on-scroll{transition-duration:.6s}.animate-on-scroll.fadeInUp.animate-hidden,.animate-on-scroll.slideInUp.animate-hidden{transform:translateY(25px)}.animate-on-scroll.fadeInDown.animate-hidden{transform:translateY(-25px)}.animate-on-scroll.fadeInLeft.animate-hidden,.animate-on-scroll.fadeInRight.animate-hidden{transform:translateX(25px)}}@media (prefers-reduced-motion:reduce){.animate-on-scroll{transform:none!important;transition-duration:.2s}.animate-on-scroll.animate-hidden{opacity:.3;transform:none!important}.animate-on-scroll.animate-visible{opacity:1;transform:none!important}}.btn{align-items:center;border:1px solid var(--color-dark-border);border-radius:6px;cursor:pointer;display:inline-flex;font-family:var(--font-family);overflow:hidden;position:relative;text-decoration:none}.btn,.btn-text{transition:all .2s ease}.btn-text{font-size:var(--font-size-base);font-weight:var(--font-weight-regular);letter-spacing:.12px}.btn-arrow{align-items:center;border-radius:5px;display:flex;justify-content:center}.btn-arrow,.btn-arrow img{transition:all .2s ease}.btn-primary{background:var(--color-black-surface)}.btn-primary .btn-text{color:var(--color-grey);padding:8px 12px}.btn-primary:hover .btn-text{color:var(--color-white)}.btn-primary .btn-arrow{background:var(--color-orange);border:1px solid var(--color-orange);height:32px;margin:4px;transition:background-color .2s ease;width:32px}.btn-primary:hover .btn-arrow{background:#fe3300}.btn-primary .btn-arrow img{filter:brightness(0) saturate(100%) invert(1);height:18px;width:18px}.btn-contact{background:var(--color-black-sheet);border:1px solid var(--color-dark-border)}.btn-contact:hover{border-color:var(--color-orange)}.btn-contact .btn-text{color:var(--color-grey);font-size:14px;padding:8px 12px}.btn-contact:hover .btn-text{color:var(--color-white)}.btn-contact .btn-arrow{background:var(--color-orange);height:32px;width:32px}.btn-contact .btn-arrow img{filter:brightness(0) saturate(100%) invert(100%);height:12px;width:12px}.btn-nav{background:#0000;border:none;border-radius:0;justify-content:flex-end;padding:0}.btn-nav .btn-text{color:var(--color-grey);font-size:var(--font-size-base);font-weight:var(--font-weight-regular);letter-spacing:.12px;padding:12px 0;position:relative;transition:color .3s ease}.btn-nav:hover .btn-text{color:var(--color-orange)}.btn-nav .btn-text:after{background-color:var(--color-orange);bottom:0;content:"";height:1px;left:0;position:absolute;transition:width .3s ease;width:0}.btn-nav:hover .btn-text:after{width:100%}.btn-nav.active .btn-text{color:var(--color-white)}.btn-nav.active .btn-text:after{width:100%}.btn-sticky-nav{background:#0000;color:var(--color-grey);cursor:pointer;font-family:var(--font-family);font-size:14px;font-weight:var(--font-weight-medium);letter-spacing:.12px;padding:8px 0;transition:color .2s ease}.btn-sticky-nav.active,.btn-sticky-nav:hover{color:var(--color-white)}.btn-small{font-size:12px}.btn-small .btn-text{font-size:12px;padding:6px 8px}.btn-small .btn-arrow{height:28px;width:28px}.btn-small .btn-arrow img{height:10px;width:10px}.btn-large .btn-text{font-size:16px;padding:12px 16px}.btn-large .btn-arrow{height:42px;margin:6px;width:42px}.btn-large .btn-arrow img{height:24px;width:24px}.btn-disabled,.btn:disabled{cursor:not-allowed;opacity:.6;pointer-events:none}.btn-disabled .btn-text,.btn:disabled .btn-text{color:var(--color-grey)}.btn-loading{cursor:wait}@media (max-width:768px){.btn-contact .btn-text{font-size:12px;padding:6px 8px}.btn-contact .btn-arrow{height:28px;width:28px}.btn-contact .btn-arrow img{height:10px;width:10px}.btn-sticky-nav{font-size:14px}}@media (max-width:480px){.btn-contact .btn-text{display:none}}.work-section{gap:128px;width:100%}.work-content,.work-section{display:flex;flex-direction:column}.work-content{gap:64px;max-width:690px}.work-description{line-height:var(--line-height);margin:0}.projects-container{grid-gap:30px;display:grid;gap:30px;grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr;width:100%}@media (max-width:1200px){.projects-container{gap:60px;grid-template-columns:1fr;grid-template-rows:auto}.work-content{max-width:100%}}@media (max-width:480px){.projects-container{gap:40px}}.project-card{align-items:center;background:var(--color-black-surface);border:1px solid var(--color-dark-border);border-radius:6px;padding:4px;position:relative;transition:all .3ws cubic-bezier(.4,0,.2,1)}.project-card,.project-content{display:flex;flex-direction:column;width:100%}.project-content{gap:8px}.project-image-container{border-radius:6px;height:400px;position:relative;width:100%}.project-hover-indicator{background:var(--color-orange);border-radius:1px;height:4px;left:50%;opacity:0;pointer-events:none;position:absolute;top:-5%;transform:translate(-50%,-50%);transform:translateY(4px);transition:all .3s ease;width:4px;z-index:2}.project-card:hover .project-hover-indicator{opacity:1;transform:translateY(0)}.project-image{border:1px solid var(--color-dark-border);border-radius:4px;filter:grayscale(100%);height:100%;object-fit:cover;transition:all .2s ease;width:100%}.project-card:hover .project-image{filter:grayscale(0)}.project-info{display:flex;flex-direction:column;gap:2px;padding:4px;width:100%}.project-image-description .project-title-text{color:var(--color-white)}.project-description{color:var(--color-text-secondary);font-size:14px;line-height:var(--line-height)}.project-card.coming-soon{cursor:none;pointer-events:auto}.project-card.coming-soon .project-image{filter:grayscale(100%) brightness(.9)}.coming-soon-overlay{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#00000080;border-radius:4px;bottom:0;display:flex;justify-content:center;left:0;pointer-events:none;position:absolute;right:0;top:0;transition:all .3s ease}.project-card.coming-soon:hover .coming-soon-overlay{background:#0009}.coming-soon-text{color:var(--color-black-primary);font-size:15px;letter-spacing:.5px}.project-card.coming-soon *{cursor:none}@media (max-width:1200px){.project-image-container{height:500px}.project-image{max-height:500px}}@media (max-width:768px){.project-image-container{max-height:350px}.project-card,.project-card *{cursor:pointer!important}}@media (max-width:480px){.project-image-container{max-height:260px}.project-hover-indicator{top:-8%}.project-content{gap:16px}.project-info{gap:6px}}.footer{display:flex;flex-direction:column;gap:24px;width:100%}.footer-content{align-items:flex-end;display:flex;justify-content:space-between;width:100%}.ai-comment{letter-spacing:.12px;line-height:var(--line-height);margin:0;max-width:500px}.contact-section{align-items:flex-end;display:flex;flex-direction:column;gap:24px}.work-with-me-btn{align-items:center;display:flex}.email-copy-container{display:inline-block;position:relative}.email-display{color:var(--color-grey);font-size:14px;font-weight:var(--font-weight-regular);letter-spacing:.12px;line-height:var(--line-height);transition:color .2s ease;-webkit-user-select:none;user-select:none}.email-display:hover{color:var(--color-white)}.footer-bottom{align-items:flex-start;gap:64px;justify-content:center}.footer-bottom,.footer-info{display:flex;flex-direction:column;width:100%}.footer-info{color:var(--color-grey);font-size:var(--font-size-base);font-weight:var(--font-weight-regular);gap:4px;letter-spacing:.12px;line-height:var(--line-height)}.copyright,.year{white-space:pre}.copyright,.social-links a,.year{font-family:var(--font-family);font-size:14px}.social-links a{color:var(--color-grey);text-decoration:none}.links-container{align-items:flex-end;display:flex;flex-direction:column;gap:4px}@media (max-width:768px){.footer-content{flex-direction:column-reverse;gap:24px}.contact-section{gap:24px;width:100%}.contact-section,.links-container{align-items:flex-start;flex-direction:column}.links-container{display:flex}.email-display{cursor:pointer!important;user-select:text!important;-webkit-user-select:text!important;-moz-user-select:text!important;-ms-user-select:text!important}.ai-comment{max-width:100%}.footer-bottom{gap:48px}.footer-info{align-items:flex-start;flex-direction:row;gap:16px}}@media (max-width:480px){.footer{gap:24px}.footer-bottom{gap:32px}.footer-info{gap:12px}}.ruler{align-items:flex-end;bottom:0;box-sizing:border-box;display:flex;flex-direction:column;gap:clamp(8px,1.5vh,16px);height:100vh;justify-content:flex-start;min-height:900px;overflow:hidden;padding:min(104px,15vh) 8px min(104px,15vh) 130px;position:fixed;right:37px;top:0;transition:all .2s ease;width:150px;z-index:1000}.ruler-segment{cursor:pointer;height:1px}.ruler-segment,.ruler-segment-chapter{position:relative;transition:all .2s ease}.ruler-segment-chapter{background:var(--color-white);width:16px}.ruler-segment-chapter:after{bottom:-12px;bottom:calc(var(--spacing, 12px)*-1);content:"";left:-32px;left:calc(var(--spacing, 32px)*-1);position:absolute;right:-32px;right:calc(var(--spacing, 32px)*-1);top:-12px;top:calc(var(--spacing, 12px)*-1);z-index:2}.ruler-segment-tick{background:var(--color-grey);cursor:pointer;position:relative;width:8px}.ruler-segment-tick:after{bottom:-12px;bottom:calc(var(--spacing, 12px)*-1);content:"";left:-64px;left:calc(var(--spacing, 64px)*-1);position:absolute;right:-64px;right:calc(var(--spacing, 64px)*-1);top:-12px;top:calc(var(--spacing, 12px)*-1);z-index:2}.ruler-segment-chapter:before{content:"";height:16px;position:absolute;right:-120px;top:-8px;width:120px;z-index:1}.ruler-segment-chapter:hover{background:var(--color-white);width:16px}.ruler-chapter-name{border-radius:4px;color:var(--color-white);cursor:pointer;font-family:Consolas,monospace;font-size:14px;opacity:0;padding:4px 16px;position:absolute;right:25px;text-align:right;top:50%;transform:translateY(-50%) translateX(-10px);transition:all .3s ease;white-space:nowrap;width:120px;z-index:10}.ruler-chapter-name:hover,.ruler-segment-chapter:hover .ruler-chapter-name{color:var(--color-orange)}.ruler:hover .ruler-chapter-name{opacity:1;transform:translateY(-50%) translateX(0)}.ruler-segment-tick:hover{background:var(--color-white);width:16px}.ruler-segment-current{width:16px}.ruler-segment-chapter.ruler-segment-current,.ruler-segment-current,.ruler-segment-tick.ruler-segment-current{background:var(--color-orange)!important;box-shadow:0 0 3px var(--color-orange);z-index:3}.ruler-segment-tick.ruler-segment-current{width:16px}@media (max-width:1400px){.ruler{display:none}}@media (max-width:768px){.ruler{display:none}}@media (max-width:768px) and (orientation:landscape) and (max-height:500px){.ruler{display:flex;padding-bottom:min(20px,4vh);padding-left:60px;padding-top:min(20px,4vh);right:5px;width:150px}}@media (max-height:500px){.ruler{display:none}}.active-heading-indicator{background:var(--color-orange);border-radius:1px;height:4px;margin-top:-2px;pointer-events:none;position:absolute;transition:all .4s cubic-bezier(.4,0,.2,1);width:4px;z-index:10}.active-heading-indicator.initial-hidden{opacity:0;transform:scale(.3)}.active-heading-indicator.initial-visible{opacity:1;transform:scale(1)}.section-heading,.subsection-heading{transition:margin-left .4s cubic-bezier(.4,0,.2,1)}@media (max-width:480px){.section-heading.active,.subsection-heading.active{margin-left:16px}.active-heading-indicator{left:20px!important}}.project-detail-container{background:var(--color-black-primary);box-shadow:0 4px 4px 0 #00000040;display:flex;justify-content:center;min-height:100vh;padding:104px 80px;position:relative}.project-detail-main{border:1px solid var(--color-dark-border);border-radius:6px;display:flex;flex:1 1;flex-direction:column;gap:128px;margin:0 auto;max-width:1148px;padding:80px 104px;position:relative}.project-title-section{display:flex;flex-direction:column;gap:60px;width:100%}.project-title{color:var(--color-white);font-size:var(--font-size-base);font-weight:var(--font-weight-bold);line-height:var(--line-height);margin:0;min-width:100%;width:-webkit-fit-content;width:fit-content}.project-title-name{gap:8px}.project-summary{color:var(--color-grey);font-size:var(--font-size-base);letter-spacing:.12px;line-height:var(--line-height);margin:16px 0 0;max-width:690px}.hero-project-section{gap:60px}.hero-project-card,.hero-project-section{display:flex;flex-direction:column;width:100%}.hero-project-card{align-items:flex-start;border:1px solid var(--color-dark-border);border-radius:6px;gap:6px;padding:4px;position:relative}.project-image-description{align-items:flex-start;display:flex;gap:16px;justify-content:space-between;width:100%}.hero-project-card .project-image-description,.work-image-card .project-image-description{padding:0 4px 1px}.project-number{color:var(--color-grey);font-family:Consolas,monospace;font-size:var(--font-size-base);letter-spacing:.12px;line-height:var(--line-height);transition:all .2s ease}.hero-project-image-container{border-radius:6px;height:450px;width:100%}.hero-project-image{border:1px solid var(--color-dark-border);border-radius:4px;height:100%;object-fit:cover;width:100%}.background-section{display:flex;flex-direction:column;gap:128px;width:100%}.background-content{align-items:flex-start;display:flex;gap:128px;width:100%}.background-text{display:flex;flex:1 1;flex-direction:column;gap:64px}.background-titles{display:flex;flex-direction:column;gap:4px}.section-subtitle{color:var(--color-grey);font-size:var(--font-size-base);font-weight:var(--font-weight-regular);letter-spacing:.12px}.background-description,.section-subtitle{line-height:var(--line-height);margin:0}.project-details{flex-shrink:0}.details-row,.project-details{display:flex;flex-direction:column;gap:56px}.details-row{align-items:flex-start}.detail-item{display:flex;flex-direction:column;gap:8px;min-width:200px}.detail-label{color:var(--color-white);font-size:var(--font-size-base);font-weight:var(--font-weight-bold)}.detail-label,.detail-value{line-height:var(--line-height);margin:0;white-space:pre}.detail-value{letter-spacing:.12px}.detail-value p{line-height:var(--line-height);margin:0}.challenge-section,.goals-section{width:100%}.challenge-content,.challenge-section,.goals-content,.goals-section{display:flex;flex-direction:column;gap:64px}.challenge-description{line-height:var(--line-height);margin:0;max-width:690px}.goals-list{display:flex;flex-direction:column;gap:12px;list-style:none;margin:0;max-width:690px;padding:0}.goals-list li{line-height:var(--line-height);margin:0;padding-left:20px;position:relative}.goals-list li:before{color:var(--color-orange);content:"•";font-weight:700;left:0;position:absolute}.process-section{gap:64px;width:100%}.process-section,.process-titles{display:flex;flex-direction:column}.process-titles{gap:4px}.process-steps{align-items:flex-start;display:flex;justify-content:space-between;width:100%}.process-step{width:155px}.process-step,.process-step-header{align-items:center;display:flex;flex-direction:column;gap:8px}.process-step-number{background:var(--color-black-surface);border:1px solid var(--color-dark-border);border-radius:6px;font-family:Consolas,monospace;letter-spacing:.12px;padding:10px 14px}.process-step-number,.process-step-title{color:var(--color-white);font-size:var(--font-size-base);line-height:var(--line-height)}.process-step-title{font-weight:var(--font-weight-bold);margin:0;white-space:pre}.process-step-description{display:flex;flex-direction:column;gap:0;text-align:center;width:100%}.process-step-description p{letter-spacing:.12px;line-height:var(--line-height);margin:0;white-space:pre}.work-detail-section{display:flex;flex-direction:column;gap:128px;width:100%}.work-detail-content{display:flex;flex-direction:column;gap:64px;max-width:690px}.work-detail-titles{display:flex;flex-direction:column;gap:4px}.work-detail-description{line-height:var(--line-height);margin:0}.work-images-container{display:flex;flex-direction:column;gap:60px;width:100%}.challenge-section,.design-flows-section,.feedback-section,.findings-section,.goals-section,.initial-state-section,.iterations-section,.key-features-section,.key-issues-section,.solution-section,.statistics-section,.testing-section{display:flex;flex-direction:column;gap:64px;width:100%}.challenge-section p,.feedback-section,.initial-state-section p,.iterations-section,.solution-section .work-detail-description,.statistics-section p,.testing-section p{max-width:690px}.key-features-section{display:flex;flex-direction:column;gap:64px}.features-list,.feedback-list,.goals-list,.iterations-list,.problems-list{display:flex;flex-direction:column;gap:12px;list-style:none;margin:0;padding:0}.features-list li,.feedback-list li,.goals-list li,.iterations-list li,.problems-list li{line-height:var(--line-height);margin:0;padding-left:20px;position:relative}.features-list li:before,.feedback-list li:before,.goals-list li:before,.iterations-list li:before,.problems-list li:before{color:var(--color-orange);content:"•";font-weight:700;left:0;position:absolute}.findings-grid{grid-gap:32px;display:grid;gap:32px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));width:100%}.finding-card{background:var(--color-black-surface);border:1px solid var(--color-dark-border);border-radius:6px;display:flex;flex-direction:column;gap:12px;padding:24px}.finding-title{color:var(--color-white);font-size:var(--font-size-base);font-weight:var(--font-weight-bold)}.finding-detail,.finding-title{line-height:var(--line-height);margin:0}.finding-detail{color:var(--color-grey);max-width:690px}.flows-container{grid-gap:100px 60px;display:grid;gap:100px 60px;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));max-width:100%;width:100%}.flow-card{align-items:center;background:none;border:none;border-radius:0;display:flex;flex-direction:column;gap:32px;padding:0;text-align:center}.flow-image-container{border-radius:6px;flex-shrink:0;height:auto;max-width:400px;overflow:hidden;width:100%}.flow-image{border-radius:4px;height:100%;object-fit:contain;width:100%}.flow-content{display:flex;flex-direction:column;gap:12px;max-width:400px;text-align:center;width:100%}.flow-title{color:var(--color-white);font-size:var(--font-size-base);font-weight:var(--font-weight-bold)}.flow-description,.flow-title{line-height:var(--line-height);margin:0}.flow-description{color:var(--color-grey);font-size:14px;height:40px;text-align:center}.back-to-portfolio-btn{width:-webkit-fit-content;width:fit-content}.project-detail-container[data-project-slug=ai-powered-travel-planning-app] .flow-card{gap:0}.project-detail-container[data-project-slug=ai-powered-travel-planning-app] .flow-image{height:750px;object-fit:cover}.project-detail-container[data-project-slug=click-to-pay-enrollment-redesign] .result-section .flow-card{gap:0}.project-detail-container[data-project-slug=insights-for-next-gen-wealth-management] .flow-description{height:auto}.project-detail-container[data-project-slug=gamified-mental-health-app] .statistics-section .flow-image-container{max-width:600px}.project-detail-container[data-project-slug=gamified-mental-health-app] .statistics-section .flow-image{height:auto;width:100%}.project-detail-container[data-project-slug=gamified-mental-health-app] .design-flows-section .flow-image{height:650px}.initial-state-description{color:var(--color-grey);line-height:var(--line-height);margin:0;max-width:690px}.problems-content{display:flex;flex-direction:column;gap:64px}.initial-state-images{width:100%}.video-container{border-radius:6px;height:820px;max-width:400px;overflow:hidden;position:relative;width:100%}.showcase-video{background:var(--color-black-primary);border-radius:4px;height:100%;object-fit:contain;width:100%}.feedback-highlights,.iterations-shipped,.testing-approach{display:flex;flex-direction:column;gap:16px}.document-snippets-container{display:flex;flex-direction:column;gap:40px;margin-top:80px;width:100%}.document-snippets-grid{grid-gap:40px;display:grid;gap:40px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));width:100%}.work-image-card{align-items:center;border:1px solid var(--color-dark-border);border-radius:6px;display:flex;flex-direction:column;gap:6px;padding:4px;position:relative;width:100%}.work-image-container{border-radius:6px;height:400px;width:100%}.work-image{border:1px solid var(--color-dark-border);border-radius:4px;height:100%;object-fit:cover;width:100%}.result-section{gap:128px;width:100%}.result-content,.result-section{display:flex;flex-direction:column}.result-content{gap:64px;max-width:690px}.result-description{line-height:var(--line-height);margin:0}.project-section{align-items:center;display:flex;gap:10px;justify-content:space-between;width:100%}.project-nav-container{align-items:flex-start;display:flex;flex-direction:column;gap:8px;transition:all .2s ease}.project-nav-container:hover .project-title-text{color:var(--color-white)}.next-project-arrow,.previous-project-arrow{color:var(--color-orange);font-weight:700;transition:all .2s ease}.next-project-arrow img{height:20px;margin-left:8px;transform:rotate(45deg) translateY(5px);width:20px}.previous-project-arrow img{height:20px;transform:rotate(-135deg) translateY(-5px);width:20px}.project-title-container{align-items:center;display:flex;justify-content:space-between;width:100%}.back-to-projects-link{align-items:center;background:var(--color-black-sheet);border-radius:6px;color:var(--color-grey);cursor:pointer;display:flex;justify-content:center;left:0;margin-top:8px;position:absolute;top:-60px;transition:all .2s ease;z-index:1000}.back-to-projects-link:hover .btn-text{color:var(--color-white)}.project-title-text{color:var(--color-grey);font-size:var(--font-size-base);font-weight:var(--font-weight-regular);line-height:var(--line-height);transition:all .2s ease}.next-project-text{text-align:right;width:100%}@media (max-width:1200px){.details-row{flex-direction:column}.process-steps{align-items:center;flex-wrap:wrap;gap:64px;justify-content:center}}.statistics-image-container{height:auto;max-width:800px}.statistics-image{height:auto;object-fit:contain}.process-diagram-container{height:auto;max-width:900px}.process-diagram{height:auto;object-fit:contain}.process-highlights{margin:24px 0}.process-highlights-text{color:var(--color-grey);font-style:italic;line-height:var(--line-height);margin:0;max-width:690px}@media (max-width:1024px){.background-content{flex-direction:column}.background-text{order:2}.project-details{flex-direction:row}}@media (max-width:960px){.project-section{flex-direction:column;gap:32px}.project-nav-container{width:100%}.next-project{align-items:flex-end}}@media (max-width:768px){.project-detail-container{padding:60px 20px 32px}.project-detail-main{gap:128px;padding:40px 60px}.hero-project-image-container,.work-image-container{height:300px}.project-details{flex-direction:column}.flow-card{gap:24px}.project-section{flex-direction:column;gap:32px}.project-nav-container{width:100%}.next-project{align-items:flex-end}}@media (max-width:480px){.project-detail-container{padding:60px 8px 16px}.project-detail-main{border:none;padding:20px}.hero-project-image-container,.work-image-container{height:300px}.process-steps{align-items:center;gap:64px;justify-content:center}.document-snippets-grid{gap:30px;grid-template-columns:1fr}.findings-grid{gap:24px;grid-template-columns:1fr}.flow-card{flex-direction:column;gap:24px}.flow-image,.flow-image-container{height:auto}.project-detail-container[data-project-slug=gamified-mental-health-app] .design-flows-section .flow-image{height:500px}.project-detail-container[data-project-slug=gamified-mental-health-app] .statistics-section .flow-image-container{height:auto}.project-detail-container[data-project-slug=ai-powered-travel-planning-app] .flow-description{height:0}.flows-container{grid-template-columns:1fr}.process-diagram-container,.statistics-image-container{height:auto;max-width:100%}.video-container{height:auto;max-height:600px;min-height:300px}.showcase-video{height:auto;max-height:600px;object-fit:contain}}.case-study-cursor{align-items:center;background:var(--color-black-surface);border:1px solid var(--color-dark-border);border-radius:6px;color:var(--color-text-primary);display:flex;font-size:14px;gap:8px;justify-content:center;left:0;opacity:0;padding:4px 8px 4px 4px;pointer-events:none;position:fixed;top:0;transform:translate(-50%,-50%) scale(.7);transition:opacity .3s cubic-bezier(.4,0,.2,1),visibility .3s cubic-bezier(.4,0,.2,1),transform .3s cubic-bezier(.4,0,.2,1);visibility:hidden;z-index:9999}.case-study-cursor.visible{opacity:1;transform:translate(-50%,-50%) scale(1);visibility:visible}.case-study-cursor .cursor-icon{background:var(--color-orange);border-radius:4px;color:#ededed;flex-shrink:0;height:24px;padding:4px;width:24px}.case-study-cursor .cursor-text{font-family:var(--font-family);white-space:nowrap}.email-display,.project-card,.project-card *{cursor:none}@media (max-width:768px){.email-display,.project-card,.project-card *{cursor:default!important}}
/*# sourceMappingURL=main.e928301a.css.map*/