@import"https://fonts.googleapis.com/css2?family=Comfortaa:wght@300&family=Montserrat:wght@300;900&family=Raleway:wght@900&family=Ubuntu:wght@700&family=Quicksand:wght@700&family=Josefin+Sans:wght@100;700&family=Cabin:wght@700&display=swap";@import"https://unpkg.com/splitting@1.0.6/dist/splitting.css";:root{--body-bg: #020024 radial-gradient(circle farthest-corner at center top, #00d4ff, #020024 100%) no-repeat 50% 0;--text-color: white;--accent-color: #f90;--link-color: var(--accent-color);--text-font: Comfortaa;--heading-font: Montserrat;--heading-weight: bold;--site-width-min: 85vw;--site-width-max: 1360px;--site-width: min(var(--site-width-min), var(--site-width-max));--site-padding: calc((100vw - var(--site-width)) / 2);--spacing-small: .5rem;--spacing-medium: 1.25rem;--spacing-large: 2.5rem;--easing: cubic-bezier(.16, 1, .3, 1)}@keyframes navigation-slide-in{0%{transform:translate(calc(4vw + 100%))}to{transform:translate(0)}}@keyframes navigation-slide-up{0%{transform:translateY(calc(var(--spacing-medium) * 2 + 100%))}to{transform:translate(0)}}#navigation{position:fixed;right:var(--spacing-medium);top:50%;z-index:1;display:flex;flex-direction:column;gap:var(--spacing-small)}#navigation a{background-color:var(--text-color);display:block;width:.5rem;height:.5rem;font-size:0;border-radius:50%;transition:opacity .25s var(--easing),background-color .25s var(--easing);opacity:.25}#navigation a.active{opacity:1;background:var(--link-color)}html.js #navigation a{animation:navigation-slide-in var(--scrollspy-duration) var(--easing);animation-play-state:paused;animation-fill-mode:backwards}html.js.loaded #navigation a{animation-play-state:running}html.js #navigation a:nth-child(1){animation-delay:4s}html.js #navigation a:nth-child(2){animation-delay:4.1s}html.js #navigation a:nth-child(3){animation-delay:4.2s}html.js #navigation a:nth-child(4){animation-delay:4.3s}html.js #navigation a:nth-child(5){animation-delay:4.4s}html.js #navigation a:nth-child(6){animation-delay:4.5s}html.js #navigation a:nth-child(7){animation-delay:4.6s}html.js #navigation a:nth-child(8){animation-delay:4.7s}html.js #navigation a:nth-child(9){animation-delay:4.8s}html.js #navigation a:nth-child(10){animation-delay:4.9s}@media (orientation: portrait){#navigation{right:auto;top:auto;left:50%;bottom:var(--spacing-medium);transform:translate(-50%);flex-direction:row}html.js #navigation a{animation-name:navigation-slide-up}}html.no-js #navigation{display:none}*{box-sizing:border-box}html{background:var(--body-bg);background-attachment:fixed;font-size:100%;color:var(--text-color);transition:background-color 2.5s var(--easing),color 2.5s var(--easing)}body{min-height:100vh;margin:0;font:1rem/2 var(--text-font),sans-serif}h1,h2,h3,h4,h5,h6{font:var(--heading-weight) 2rem/.9 var(--heading-font),serif;letter-spacing:-.025em;margin:0 0 var(--spacing-medium);max-width:36rem;text-shadow:1px 1px 2px rgba(0,0,0,.25)}h1,h2{font-size:40px}h3{font-size:clamp(1rem,16vmin,3rem)}p{margin:0 0 var(--spacing-medium);max-width:40rem}a{cursor:pointer;color:var(--text-color);text-decoration:underline;text-decoration-color:var(--link-color);text-underline-offset:.5rem;transition:color .25s var(--easing)}a:hover{color:var(--link-color)}img{width:auto;height:auto;max-width:100%}video{max-width:100%}ul,ol{margin:0 0 var(--spacing-medium) var(--spacing-large);padding:0}figure{margin:0 0 var(--spacing-medium)}figure img{display:block;width:100%}@font-face{font-family:icons;src:url(/assets/icons.1cf51a10.woff2) format("woff2");font-weight:400;font-style:normal;font-display:block}[class*=icon-]:before{font-family:icons;font-style:normal;font-weight:400;speak:never;display:inline-block;text-decoration:inherit;font-variant:normal;text-transform:none;margin-right:.5em}.icon-globe:before{content:"\e802"}.icon-linkedin:before{content:"\f05c"}.icon-play:before{content:"\e805"}.icon-pause:before{content:"\e806"}.icon-emo-devil:before{content:"\e807"}.icon-emo-sunglasses:before{content:"\e809"}.icon-github:before{content:"\f09b"}.icon-left:before{content:"\e803"}.icon-right:before{content:"\e804"}.icon-up:before{content:"\e801"}.icon-down:before{content:"\e800"}.icon-terminal:before{content:"\f120"}.icon-stackoverflow:before{content:"\f16c"}.icon-download-cloud:before{content:"\f0ed"}a[class*=icon-]:before{display:inline-block;color:var(--link-color);text-decoration:none;transform:scale(1);transition:transform .5s var(--easing)}a[class*=icon-]:hover:before{transform:scale(1.5)}#bg{position:fixed;left:0;top:0;right:0;bottom:0;z-index:-2;margin:0;pointer-events:none}#bg canvas{position:absolute;left:0;top:0;outline:0;width:100%;height:100%;object-fit:cover;object-position:center center}html.bg3d-disabled [data-toggle-bg3d]:before{content:"\e805"}html #bg{transform:translate(100%);transition:transform 2.5s 2s var(--easing)}html.loaded #bg{transform:translate(0)}section{display:flex;align-items:flex-start;justify-content:center;flex-direction:column;padding:15vh var(--site-padding);min-height:100vh}section header{margin-bottom:var(--spacing-large)}section header p{font-size:1.2rem}section header>:last-child{margin-bottom:0}section nav{margin-left:0;list-style:none}section nav>*{display:inline-block;margin:0 var(--spacing-medium) 0 0}html.js section header p{transform:translateY(2rem);opacity:0;transition:transform var(--scrollspy-duration) var(--easing),opacity var(--scrollspy-duration) var(--easing);transition-delay:1.75s}html.js section nav>*{transform:translate(2rem);opacity:0;transition:transform var(--scrollspy-duration) var(--easing),opacity var(--scrollspy-duration) var(--easing);transition-delay:1.75s}html.js section nav>*:nth-child(1){transition-delay:1.75s}html.js section nav>*:nth-child(2){transition-delay:1.85s}html.js section nav>*:nth-child(3){transition-delay:1.95s}html.js section nav>*:nth-child(4){transition-delay:2.05s}html.js section nav>*:nth-child(5){transition-delay:2.15s}html.js section.in-view header p,html.js section.in-view nav>*{transform:translate(0);opacity:1}#work article{position:relative;padding:var(--spacing-large);box-shadow:0 .2rem 1rem #000;border-radius:.5rem;backdrop-filter:blur(20px);width:100%}@media (max-width: 600px){#work article{display:flex;flex-direction:row;justify-content:center}}#work article>nav{margin-top:auto}#work .optional-header{font-size:medium}@media (max-width: 600px){#work .optional-header{display:none}}#work>div{display:grid;gap:min(5vw,var(--spacing-large));grid-auto-columns:1fr;perspective:300px;max-width:calc(100% + var(--site-padding) * 2);padding:var(--spacing-large) var(--site-padding);margin:calc(var(--spacing-large) * -1) calc(var(--site-padding) * -1);overflow:auto}#work>div>*{grid-row:1}#work .experience{display:flex;flex-direction:column;justify-content:center;align-items:center;width:100%;position:relative}@media (max-width: 600px){#work .experience{flex-direction:row;justify-content:space-between;align-items:center;gap:var(--spacing-medium);margin-bottom:var(--spacing-medium)}}@media (max-width: 600px){#work .experience>div:nth-child(3){flex:1}}#work .experience .company{margin-top:var(--spacing-small);margin-bottom:0}@media (max-width: 600px){#work .experience .company{margin:0}}#work .line{height:5px;width:65%;position:relative;margin:auto;top:55px;background-color:var(--text-color)}@media (max-width: 600px){#work .line{display:none}}#work .content{display:flex;justify-content:space-evenly}@media (max-width: 600px){#work .content{flex-direction:column}}#work .content .date-mobile{display:none}@media (max-width: 600px){#work .content .date-mobile{display:block;font-size:x-small;margin:0}}#work .content .date{font-size:smaller;margin-bottom:10px}@media (max-width: 600px){#work .content .date{display:none}}#work .content .company{font-size:large;font-weight:700}@media (max-width: 600px){#work .content .company{font-size:medium;font-weight:500}}#work .content .circle{height:2rem;width:2rem;background-color:var(--text-color);display:flex;justify-content:center;align-items:center;border-radius:100%}#work .content .circle .inner{height:1.4rem;width:1.4rem;background-color:var(--body-bg);border-radius:100%}html.js #work article{opacity:0;transform-origin:50% top;transform:rotateX(-90deg);transition:transform var(--scrollspy-duration) var(--easing),opacity var(--scrollspy-duration) var(--easing)}html.js #work article .circle{transform:scale(0)}html.js #work article .line{transform:scaleX(0);transform-origin:left;transition:none}@media (max-width: 600px){html.js #work article .line{transform:scaleY(0);transform-origin:top}}html.js #work article .company,html.js #work article .date,html.js #work article .date-mobile{opacity:0;transform-origin:50% bottom;transform:rotateX(-90deg);transition:transform var(--scrollspy-duration) var(--easing),opacity var(--scrollspy-duration) var(--easing)}html.js #work article:nth-child(1){transition-delay:1.5s}html.js #work article:nth-child(2){transition-delay:1.75s}html.js #work article:nth-child(3){transition-delay:2s}html.js #work article:nth-child(4){transition-delay:2.25s}html.js #work article:nth-child(5){transition-delay:2.5s}html.js #work.in-view article{opacity:1;transform:rotateX(0)}html.js #work.in-view article .circle{transform:scale(1);transition:transform 2s var(--easing)}html.js #work.in-view article .line{transform:scaleX(1);transition:transform 3s linear;transition-delay:calc(var(--scrollspy-duration) + 1s)}@media (max-width: 600px){html.js #work.in-view article .line{transform:scaleY(1)}}html.js #work.in-view article .experience:nth-child(1) .circle{transition-delay:2.25s}html.js #work.in-view article .experience:nth-child(2) .circle{transition-delay:3.75s}html.js #work.in-view article .experience:nth-child(3) .circle{transition-delay:5.25s}html.js #work.in-view article .company,html.js #work.in-view article .date,html.js #work.in-view article .date-mobile{opacity:1;transform:rotateX(0)}html.js #work.in-view article .experience:nth-child(1) .date,html.js #work.in-view article .experience:nth-child(1) .company,html.js #work.in-view article .experience:nth-child(1) .date-mobile{transition-delay:2.25s}html.js #work.in-view article .experience:nth-child(2) .date,html.js #work.in-view article .experience:nth-child(2) .company,html.js #work.in-view article .experience:nth-child(2) .date-mobile{transition-delay:3.75s}html.js #work.in-view article .experience:nth-child(3) .date,html.js #work.in-view article .experience:nth-child(3) .company,html.js #work.in-view article .experience:nth-child(3) .date-mobile{transition-delay:5.25s}#play>div{width:100%;display:flex;gap:min(2vw,var(--spacing-large));perspective:100vw}#play>div>*{flex-grow:1}#play figure{position:relative;margin:0}#play figure:hover{z-index:1}#play figure:before{display:block;content:"";padding-bottom:100%}#play figure a{display:block;position:absolute;left:0;top:0;right:0;bottom:0;cursor:zoom-in;transform:scale(1) rotateX(0);transition:transform 1s var(--easing)}#play figure a:hover,html.js #play figure a:hover{transform:scale(1.5) rotate(-2.5deg)}#play figure:nth-child(odd) a:hover,html.js #play figure:nth-child(odd) a:hover{transform:scale(1.5) rotate(2.5deg)}#play figure img,#play figure video{position:absolute;left:0;top:0;right:0;bottom:0;object-fit:cover;width:100%;height:100%;border:min(1vw,1rem) solid white;border-radius:50%;box-shadow:.25rem .25rem .75rem #00000040}html.js #play figure{transform:scale(0) rotateX(90deg);transition:transform var(--scrollspy-duration) var(--easing)}html.js #play figure:nth-child(1){transition-delay:1.5s}html.js #play figure:nth-child(2){transition-delay:1.6s}html.js #play figure:nth-child(3){transition-delay:1.7s}html.js #play figure:nth-child(4){transition-delay:1.8s}html.js #play figure:nth-child(5){transition-delay:1.9s}html.js #play figure:nth-child(6){transition-delay:2s}html.js #play figure:nth-child(7){transition-delay:2.1s}html.js #play figure:nth-child(8){transition-delay:2.2s}html.js #play figure:nth-child(9){transition-delay:2.3s}html.js #play figure:nth-child(10){transition-delay:2.4s}html.js #play.in-view figure{transform:scale(1) rotateX(0)}#performance-notice{--performance-notice-bottom: var(--spacing-large);padding:var(--spacing-medium);font-size:.8em;color:#fff;text-align:center;position:fixed;left:50%;bottom:var(--performance-notice-bottom);z-index:99;width:max-content;max-width:90%;transform:translate(-50%,calc(100% + var(--performance-notice-bottom) + var(--spacing-medium)));transition:transform 1s var(--easing);border-radius:.5rem}@media (orientation: landscape){#performance-notice{--performance-notice-bottom: var(--spacing-medium)}}#performance-notice:before{background:var(--accent-color);display:block;content:"";position:absolute;left:0;top:0;right:0;bottom:0;border-radius:.5rem;z-index:-1;opacity:.75}#performance-notice p{margin:0}#performance-notice.active{transform:translate(-50%)}#fps{position:fixed;left:var(--spacing-medium);bottom:var(--spacing-medium);color:var(--accent-color);transform:scale(0);transition:transform .5s 5.5s var(--easing)}html.dev.loaded #fps{transform:scale(1)}html.no-js #fps,html.no-js #performance-notice{display:none}:root{--scrollspy-duration: 1.25s}.splitting{perspective:300px}.splitting .word{transform-style:preserve-3d}.splitting .char{transform:rotateX(90deg);transform-origin:50% bo}.in-view .splitting .char{transform:rotateX(0);opacity:1;transition:transform 1s ease,opacity .25s ease;transition-delay:calc(.1s * var(--char-index))}html.js h1,html.js h2{opacity:0}html.js h1.splitting,html.js h2.splitting{opacity:1}html{scroll-snap-type:y mandatory;scroll-behavior:smooth}section{scroll-snap-align:start;scroll-snap-stop:always}html.theme-a{--body-bg: #020024;--text-color: white;--accent-color: #f90}a[data-set-theme=a]{background:#020024}html.theme-b{--body-bg: #FFF6E5;--text-color: #3E454C;--accent-color: #FF7F66}a[data-set-theme=b]{background:#FFF6E5}html.theme-c{--body-bg: #D95284;--text-color: #F2F2F2;--accent-color: #F285AD}a[data-set-theme=c]{background:#D95284}@keyframes themes-slide-in{0%{transform:translateY(calc((var(--spacing-medium) * 2 + 100%) * -1))}to{transform:translateY(0)}}#themes{position:fixed;right:var(--spacing-medium);top:var(--spacing-medium);z-index:1;display:flex;align-items:center;gap:var(--spacing-small)}#themes a{display:block;width:1rem;height:1rem;font-size:0;opacity:.5;border:1px solid white;border-radius:50%;transition:opacity .25s var(--easing)}#themes a:hover{opacity:1}#themes a.active{opacity:1;box-shadow:.1rem .1rem .25rem #00000040}html.js #themes a{animation:themes-slide-in var(--scrollspy-duration) var(--easing);animation-play-state:paused;animation-fill-mode:backwards}html.js.loaded #themes a{animation-play-state:running}html.js #themes a:nth-child(1){animation-delay:3.5s}html.js #themes a:nth-child(2){animation-delay:3.55s}html.js #themes a:nth-child(3){animation-delay:3.6s}html.js #themes a:nth-child(4){animation-delay:3.65s}html.js #themes a:nth-child(5){animation-delay:3.7s}html.js #themes a:nth-child(6){animation-delay:3.75s}html.js #themes a:nth-child(7){animation-delay:3.8s}html.js #themes a:nth-child(8){animation-delay:3.85s}html.js #themes a:nth-child(9){animation-delay:3.9s}html.js #themes a:nth-child(10){animation-delay:3.95s}html.no-js #themes{display:none}#utils{position:fixed;left:var(--spacing-medium);top:var(--spacing-medium);display:grid;grid-auto-flow:column;grid-gap:var(--spacing-medium)}#utils a{display:inline-block;grid-row:1;font-size:0;line-height:1;transform:scale(0);transition:transform .5s 5s var(--easing)}#utils a:empty{grid-row:2;width:1rem;height:1rem}#utils a:before{font-size:1rem;margin:0}#utils a:nth-child(1){transition-delay:5s}#utils a:nth-child(2){transition-delay:5.25s}#utils a:nth-child(3){transition-delay:5.5s}#utils a:nth-child(4){transition-delay:5.75s}#utils a:nth-child(5){transition-delay:6s}html.loaded #utils a{transform:scale(1)}html.no-js a[data-toggle-bg3d],html.no-js a[href="?dev=true"]{display:none}html.loading body:before{content:"Loading...";color:var(--text-color);font-size:4vw;position:fixed;left:50%;top:50%;transform:translate(-50%,-50%)}html.loading body *{visibility:hidden}
