@import url(https://fonts.googleapis.com/css2?family=Quicksand:wght@400;600;700&display=swap);body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;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}@font-face{font-family:Inter;src:local("Inter"),url(/static/media/Inter-VariableFont_slnt,wght.b4c30855aff392d7e8dc.ttf) format("truetype")}.App{text-align:center}body{font-family:Quicksand,sans-serif}.App-logo{height:40vmin;pointer-events:none}@media (prefers-reduced-motion:no-preference){.App-logo{animation:App-logo-spin 20s linear infinite}}.App-header{align-items:center;background-color:#282c34;color:#fff;display:flex;flex-direction:column;font-size:calc(10px + 2vmin);justify-content:center;min-height:100vh}.App-link{color:#61dafb}@keyframes App-logo-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}:root{--siteBackground:#2c3f51}canvas{z-index:0}#intro{align-items:center;display:flex;justify-content:center;min-height:100vh;position:relative}.intro-background{background-image:url(/static/media/spaceBG.78b74120551dfe004ec4.jpeg);background-position:50%;background-size:cover}.frost{background:#0000004d}@supports ((-webkit-backdrop-filter:none) or (backdrop-filter:none)){.frost{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}}.card-container{display:flex;justify-content:center}.inner-card-container{max-width:1500px}.aboutDiv{margin-top:-88px;min-height:30vh}.whiteBackground{background:var(--white)}#aboutSecContainer{z-index:-1}.aboutText{color:#000;font-size:1.3rem}.aboutTitle{color:#000}#aboutContainer{max-width:var(--textMaxWidth);padding:0 5%}.fillerBox{height:88px}#projects{display:flex;flex-wrap:wrap;justify-content:center;position:relative}:root{--envelopeOutside:#72efdd;--envelopeInside:#72efdd;--floatAccent:#ff5964;--white:azure;--c1:#ff5964;--c2:#ff5964;--projectbackground:#b2cde4;--bodyBackground:#2c3f51;--topFaceColour:#93b7be;--topFaceHighlight:#f1fffa;--topFaceTitle:#000;--personalProjectFill:#181830;--textMaxWidth:1400px;--cardRadius:22px}*{-ms-overflow-style:none;box-sizing:border-box}::-webkit-scrollbar{display:none}body{background-color:var(--bodyBackground)}p{font-weight:400}h1,p{color:azure;font-size:2rem}h1{font-weight:800}.wave,img{width:100%}.wave{line-height:0;margin-bottom:0;overflow:hidden;transform:rotate(180deg) translateY(99%)}.wave svg{display:block;height:102px;position:relative;transform:rotateY(180deg);width:calc(100% + 1.3px)}.wave .shape-fill{fill:var(--white)}.researchTitle{align-items:center;color:#f0f8ff;display:flex;justify-content:center;margin-left:-50%;transform:rotate(-90deg)}.cursor{animation:cursorAnim .5s infinite alternate;border:1px solid #fff;border-radius:50%;pointer-events:none;transition-duration:.2s;transition-timing-function:ease-out}.cursor,.cursor:after{height:20px;position:absolute;width:20px}.cursor:after{animation:cursorAnim2 .5s infinite alternate;border:8px solid gray;border-radius:50%;content:"";left:-8px;opacity:.5;top:-8px}@keyframes cursorAnim{0%{transform:scale(1)}to{transform:scale(.7)}}@keyframes cursorAnim2{0%{transform:scale(1)}to{transform:scale(.4)}}@keyframes cursorAnim3{0%{transform:scale(1)}50%{transform:scale(3)}to{opacity:0;transform:scale(1)}}.intro-container{align-self:center;border-radius:var(--cardRadius);display:flex;justify-content:space-around;margin-top:-10%;max-width:800px;padding:1rem;position:absolute;width:80%;z-index:1}.intro-left{color:#fff;flex:2 1}.intro-right{align-items:center;display:flex;flex:1 1;flex-direction:column}#intro-title{color:#fff;font-size:2.5rem;font-weight:700;margin-bottom:1.5rem}.intro-left p{color:#fff;font-size:1.1rem;line-height:1.6;margin-bottom:1rem}#intro-image{border-radius:5%;height:200px;object-fit:cover;width:200px}#intro-image-links{background:#ffffff1a;border-radius:8px;max-width:250px;padding:1rem}.cv-social-link{align-items:center;margin-bottom:.5rem}.cv-social-link-icon-wrapper{margin-right:.5rem;text-align:center;width:20px}.cv-social-link-text-wrapper a{color:#fff;font-size:.9rem;text-decoration:none}.cv-social-link-text-wrapper a:hover{text-decoration:underline}#intro-cv-wrapper{max-width:250px;width:100%}@media (max-width:768px){.intro-container{flex-direction:column;gap:2rem;text-align:center}.intro-left,.intro-right{flex:1 1}#intro-title{font-size:2rem}#intro-image{height:150px;width:150px}}.nav{position:fixed;width:100%;z-index:4}.navBar{-ms-flex-pack:justify;align-items:center;display:flex;flex-wrap:wrap;justify-content:flex-start;padding:1.4rem 1rem;position:sticky}@media only screen and (max-width:600px){.navBar{justify-content:center}}.navbarUl{display:table;list-style-type:none;margin:0;padding:0;text-align:center}.navItem{cursor:pointer;display:table-cell;position:relative}.navLink{z-index:10}.navItem .navLink{border:0;color:#fff!important;font-size:1em;padding:10px}.navLink:after{background:none repeat scroll 0 0 #0000;background:#fff;bottom:-1;content:"";display:block;height:.11em;left:50%;opacity:0;position:absolute;transition:width .4s cubic-bezier(.22,.67,.29,.95),left .4s cubic-bezier(.22,.67,.29,.95) 0s,opacity .4s ease-in-out;width:0}.navItem .navLink:hover{color:#fff;text-decoration:none}.navItem .navLink:hover:after{left:0;opacity:1;width:100%}.sectionTitle{font-size:8vw;margin-bottom:2%;margin-top:15%;text-align:center}@media only screen and (max-width:800px){.projectContainer{background-color:var(--projectbackground);flex-basis:100%;margin:3%;padding:3%}}@media only screen and (min-width:801px){.projectContainer{background-color:var(--projectbackground);flex-basis:43%;margin:3%;padding:2%}}.allProjectsContainer{display:flex;flex-wrap:wrap;justify-content:space-between}.projectContainer{align-items:center;display:flex;justify-content:center;position:relative;transform:translateY(0);transition:all .5s ease-in}.projectOffScreen{opacity:0;transform:translateY(50px)}.projectOnScreen{opacity:100%}.card{background-color:initial;border:none}.card:hover{box-shadow:0 0 10px #313131,-10px 5px 30px var(--topFaceHighlight),10px 5px 30px var(--topFaceHighlight);transition:box-shadow .4s cubic-bezier(.58,.06,.61,.17)}.cardContainer{display:flex;flex-wrap:wrap;justify-content:space-between;position:relative}.cardBackground{position:relative;width:100%}.cardImage{border-radius:var(--cardRadius) var(--cardRadius) 0 0;height:100%}.cardLayer{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background-color:#0000004f;bottom:0;display:flex;flex-direction:column;height:100%;justify-content:center;left:0;opacity:0;position:absolute;right:0;top:0;transition-duration:.75s;transition-property:opacity;transition-timing-function:ease-in-out;transition-timing-function:linear(0 .0001%,0 1.8%,.01 3.6%,.03 6.35%,.07 9.1%,.13 11.4%,.19 13.4%,.27 15%,.34 16.1%,.54 18.35%,.66 20.6%,.72 22.4%,.77 24.6%,.81 27.3%,.85 30.4%,.88 35.1%,.92 40.6%,.94 47.2%,.96 55%,.98 64%,.99 74.4%,1 86.4%,1 100%);width:100%}.cardLayer:hover{opacity:1}.line{background-color:#fff;height:2px;transition:width .5s;width:100%}.cardLayer:hover>.line{width:50%}.cardLayer>p,a,h2{color:#fff;text-align:center}.cardLayer>a>h2{color:#fff;margin:5px}.cardLayer>p{color:#fff;font-size:1em;margin:0;padding:0}.cardOverlay .cardContainer .card{width:100%}.cardContainer .card .face{transition:.4s;width:100%}.cardContainer .card .topFace{align-content:center;align-items:center;background:var(--topFaceColour);border-radius:0 0 var(--cardRadius) var(--cardRadius);display:flex;height:250px;justify-content:center;max-height:230px;position:absolute;transition:max-height .3s cubic-bezier(.35,.06,.38,.95);width:100%;z-index:1}.cardBackground:hover .cardContainer .card .topFace{box-shadow:inset 0 0 30px #525252,inset 20px 0 80px var(--topFaceHighlight),inset -20px 0 80px var(--topFaceHighlight),inset 20px 0 300px var(--topFaceHighlight),inset -20px 0 300px var(--topFaceHighlight);max-height:50px}.cardContainer .card .topFace .content{opacity:.8;text-align:center;transition:.5s}.cardBackground:hover .cardContainer .card .topFace .content{opacity:1}.cardContainer .card .topFace .content i{color:#fff;display:inline-block;font-size:3em}.cardContainer .card .topFace .content h2{color:var(--topFaceTitle);font-size:2em;text-align:center}.cardContainer .card .topFace .content a{transition:.5s}.cardContainer .card .face.face2{align-items:center;background:#f5f5f5;border-radius:0 0 var(--cardRadius) var(--cardRadius);box-shadow:0 10px 50px #000c;box-sizing:border-box;display:flex;height:230px;justify-content:center;padding:50px 20px 10px;position:relative}.projectImg{width:90%;z-index:0}.projectH{color:#fff}.covered{box-shadow:inset 0 0 #9158fd}.covered,.unCover{transition:box-shadow .3s ease-in-out}.unCover{box-shadow:inset 0 2000px #9158fd}.cover{background:#0d3e57;height:100%;left:0;top:0;transform:translateY(100%);width:100%;z-index:1}.envelopeContainer{background-color:var(--envelopeInside);height:80px;margin:1% -.5%;width:101%}.poliUnder{position:relative;transform:scaleY(.6) translateY(-135%)}.poliOver{position:relative;z-index:1}.envelope{background-image:linear-gradient(#282828 0,var(--envelopeOutside) 25%);height:100%;width:100%}.imgNoDrawBorders{--c:#fff;--b:2px;--g:0px;--t:1s;--_g:#0000 25%,var(--c) 0;background:conic-gradient(from 180deg at top var(--b) right var(--b),var(--_g)) var(--_i,200%) 0 /200% var(--_i,var(--b)) no-repeat,conic-gradient(at bottom var(--b) left var(--b),var(--_g)) 0 var(--_i,200%) /var(--_i,var(--b)) 200% no-repeat;padding:calc(var(--g) + var(--b));transition:var(--t),background-position var(--t) var(--t)}.imgDrawBorders{--_i:100%;transition:var(--t),background-size var(--t) var(--t)}.scrolling-lines{overflow:hidden;position:absolute;width:100vw}.back{z-index:-1}.front{z-index:0}.scrolling-line-back,.scrolling-line-front{animation:scrollText 60s linear infinite}.noBorders{width:0}.borders{background-color:#fff;height:2px;width:100%}.hLTransform{margin:0;position:relative;transition:width 1s ease;z-index:1}.scrolling-line span:hover{cursor:context-menu}.scrolling-line span{-webkit-text-stroke:.5px #fff;color:#0000;font-size:70px;padding:0 .2em;transition:color .4s}.scrolling-line-container{background-color:var(--personalProjectFill);display:flex;overflow-x:hidden;white-space:nowrap}.scrolling-line-container-front{transform:skewY(-10deg)}.scrolling-line-container-back{transform:skewY(10deg)}@keyframes scrollText{0%{transform:translateX(0)}to{transform:translateX(-100%)}}@keyframes scrollText2{0%{transform:translateX(-5%)}to{transform:translateX(-105%)}}.personalTitlePanel{align-items:center;display:flex;flex-basis:100%;height:60vh;justify-content:space-between}#personalContainer{background-color:var(--personalProjectFill);position:relative;z-index:3}.personalProjectContainer{display:flex;flex-wrap:wrap;justify-content:space-between;width:100%}.textTransform{transition:all .5s ease}.leftOffScreen{opacity:0;transform:translateX(-15%)}.onScreen{opacity:1;transform:translateX(0)}.textPanel{font-size:11vw;padding-left:5%;width:50%}.carPanel{margin:0 5%;width:100%;z-index:3}.carPanel>div{display:flex;height:100%;justify-content:center}@media only screen and (min-width:800px){.carPanel>div>img{height:100%;width:auto}.carPanel{height:100%}}.threeDCanvas{display:block;height:100%;touch-action:auto!important;width:100%}.curveTop{line-height:0;overflow:hidden;transform:rotate(180deg) translateY(101px);width:100%}.curveBottom{line-height:0;overflow:hidden;width:100%}.curveBottom svg,.curveTop svg{display:block;height:106px;position:relative;width:calc(280% + 1.3px)}.curveBottom .shape-fill,.curveTop .shape-fill{fill:var(--personalProjectFill)}.contactContainer{overflow:hidden}#contact{width:100%}.contactTopCurve{line-height:0;overflow:hidden;transform:translateY(5px);width:100%;z-index:2}.contactTopCurve svg{display:block;height:65px;position:relative;width:calc(280% + 1.3px)}.contactTopCurve .shape-fill{fill:var(--floatAccent)}.float{background-color:var(--c1);box-shadow:2px 2px 3px var(--floatAccent);overflow:hidden;position:fixed;text-align:center;transition:opacity .3s,width .3s,height .3s,translateY,.3s,translateX .4s,border-radius .3s cubic-bezier(.8,.16,.42,.89)}.floatTop{border-radius:50px;bottom:20px;height:60px;right:20px;width:60px;z-index:10}.floatGone{opacity:0;transform:translateY(100%);z-index:1}.floatBottom{display:flex;flex-direction:column;position:absolute;width:100%}.floatBottom h4{margin:auto;opacity:1}.floatTop:hover{border-radius:10px;height:180px;text-align:center;width:130px}.my-float{margin-top:22px}.float h4{background-color:#fff;border-radius:40px;font-size:medium;height:40px;margin-bottom:.6%;text-align:center;transition:opacity .4s linear;width:100px}.floatTop h4{margin:0 0 5% 12.5%;opacity:0}.float h4:hover{box-shadow:0 0 4px #00000040;cursor:pointer}.floatTop:hover h4{opacity:1}.floatTop .firstH4{font-size:1.1rem;margin-top:-15%;opacity:0}.floatTop:hover .firstH4{margin-bottom:5%;opacity:1}.floatBottom .firstH4{font-size:1.1rem;margin-bottom:1%;margin-top:0}.attributions{align-items:center;background-color:#000;border-radius:40px;bottom:8px;color:#fff;cursor:pointer;display:flex;flex-basis:100%;height:25px;justify-content:center;margin:0 10%;position:absolute;width:100px}.attributionsPopup{background-color:#000;border-radius:20px;bottom:0;color:#fff;display:none;height:150px;min-width:70vw;padding:3% 1%;transform:translateY(-160px)}.attributionsPopup a{color:#fff}.attributionsContainer{display:flex;flex-wrap:wrap;justify-content:center}.attributionsPopupActive{display:block}.innerContact{transform:translateY(9px)}.float .floatLinks{font-family:Articulat CF;font-size:medium;font-style:normal;font-weight:400;opacity:0;transition:opacity .3s linear}.floatTop:hover .floatLinks{opacity:1}.floatBottom .contactIcon{opacity:0}.contactIcon{height:60px;margin-bottom:-50%;opacity:1;transform:scale(.8);transition:all .3s ease;width:60px}.floatTop:hover .contactIcon{opacity:0;transform:translateY(-60px)}.aboutDiv,.contactContainer{display:flex;justify-content:center}.contactContainer{align-items:center;background-color:#ff5964;border-radius:var(--cardRadius);box-shadow:0 4px 8px #ff59644d;flex-direction:column;padding:40px;text-align:center;width:70%}#contactInner{max-width:var(--textMaxWidth);padding:.2rem 5% 1.5rem}.contactTitle{color:#fff;font-size:2rem;margin:10px 0}.contactLink{color:#fff;cursor:pointer}.contactLink:hover{text-decoration:underline}
/*# sourceMappingURL=main.5f9cf6e9.css.map*/