@font-face{font-family:Geist;src:url(/assets/Geist-Regular-0dceeee4.otf);src:url(/assets/Geist-Regular-0dceeee4.otf) format("opentype"),url(/assets/Geist-Regular-0240fbeb.woff2) format("woff2")}@font-face{font-family:Geist;src:url(/assets/Geist-Bold-4d23fa5f.otf);src:url(/assets/Geist-Bold-4d23fa5f.otf) format("opentype"),url(/assets/Geist-Bold-df796d23.woff2) format("woff2");font-weight:700;font-style:normal}@font-face{font-family:Geist;src:url(/assets/Geist-Thin-7fe22331.otf);src:url(/assets/Geist-Thin-7fe22331.otf) format("opentype"),url(/assets/Geist-Thin-654c81ae.woff2) format("woff2");font-weight:100;font-style:normal}@font-face{font-family:Geist Mono;src:url(/assets/GeistMono-Regular-4b49e169.otf);src:url(/assets/GeistMono-Regular-4b49e169.otf) format("opentype"),url(/assets/GeistMono-Regular-84ba9928.woff2) format("woff2")}:root{--linkHover: #4adad0;--black: #000000;--white: #ffffff;--clear: #00000000;--button: #838383;--buttonHover: #4b4b4b;--transparent: #00000000}html{overflow-x:hidden;overflow-y:auto;scrollbar-gutter:stable;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Geist;margin:0}body{margin:0}html::-webkit-scrollbar{width:8px;height:8px;background-color:var(--transparent)}html::-webkit-scrollbar-thumb{background-color:#949494;border-radius:10px;width:8px;height:8px}nav a{text-decoration:none;color:#000;transition:ease-in-out .2s;font-weight:100}nav a:hover{color:var(--linkHover)}.footer{display:flex;justify-content:center;position:fixed;align-items:center;background:linear-gradient(var(--clear) 10%,var(--white) 20%);height:2.5rem;padding-top:1rem;z-index:2;bottom:0;left:0;width:100%}.page-start{min-height:105vh}header{display:flex;justify-content:center;width:100%;position:fixed;z-index:10;top:0;margin:auto}.navbar{display:flex;justify-content:space-around;text-align:center;margin:5px auto 0;border:solid 2px;border-radius:8px;font-size:1.5rem;width:fit-content;background-color:#fff}.name{display:flex;justify-content:center;align-items:center;flex-direction:column;font-family:Geist;font-weight:700;margin:0;padding:0;height:100vh}.about-me{display:flex;justify-content:center;width:100%;height:100vh;align-items:center;flex-direction:column;text-align:center;font-family:Geist;position:relative}.about-me p{text-align:justify;margin:5px 15%;max-width:1000px;line-height:1.4}.resume-window{display:flex;justify-content:center;flex-direction:column;align-items:center;text-align:center;margin:0;width:100%}.resume-pic{justify-content:center;flex-direction:block;align-items:center;text-align:center;width:80%}.dark-resume{display:none}.resume-dl{padding-top:20px}#resume-dl{height:30px;width:30px;color:#000}.resume-dl a{display:flex;justify-content:center}.resume-pic img{width:100%;flex-direction:column}.nav-link{margin:10px 1.5rem}.portfolio-container{display:flex;flex-wrap:wrap;margin:0;width:100%;justify-content:center;padding:5vh 0 10vh}.project-card{flex:1 0 30%;align-items:center;flex-wrap:wrap;flex-direction:column;justify-content:center;font-family:Geist;border:solid 3px;border-radius:8px;margin:5rem 5rem 0;max-width:41vw;aspect-ratio:16/9;position:relative;z-index:2;background-color:#fff;color:#000;text-decoration:none;overflow:hidden;cursor:pointer}.project-card h2{margin:.5rem auto}.project-card p{margin:.5rem auto;font-size:1rem;text-align:center}#github-repo{color:#000;height:3vh;width:3vw}.project-card img{width:100%;height:100%;transition:ease-in-out .3s;aspect-ratio:16/9}.project-card:hover img{filter:blur(7px);opacity:.4}.card-links{position:absolute;z-index:-1;top:0;left:0;bottom:0;display:flex;flex-wrap:wrap;align-items:center;justify-content:center;flex-direction:column;font-size:1.5vw;height:100%;width:100%;aspect-ratio:16/9;opacity:0;transition:ease-in-out .4s;color:#000;text-decoration:none}.project-card:hover .card-links{filter:blur(0px);opacity:1;z-index:2}.project-page{display:flex;z-index:3;background-color:#000e;position:fixed;top:0;left:0;width:100vw;margin:auto;flex-direction:column;align-items:center;text-align:center;min-height:100vh;height:fit-content}.project-page .description{display:flex;flex-direction:column;align-items:center}.project-page p{position:relative;width:45%;margin:auto}.thumbnail{align-items:center;flex-direction:column;justify-content:center;font-family:Geist;border:solid 2px;border-radius:8px;margin:5rem 5rem 0;max-height:40vh;max-width:90vw;aspect-ratio:16/9;position:relative;z-index:2;overflow:hidden}.thumbnail img,.thumbnail video{width:100%;height:100%;aspect-ratio:16/9}.description p{display:flex;flex-direction:column;margin:0 10px}.project-linkout{display:flex;flex-direction:row;align-items:center;justify-content:center}.project-link{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;margin:2vh 1rem 6vh 1rem;border:gray 3px;border-radius:10px;padding:.5rem;height:40px;width:15rem;cursor:pointer;font-family:Geist;text-decoration:none;color:var(--white);background-color:var(--black);transition:ease-in-out .3s}.animation-container{position:fixed;top:0;left:0;width:100vw;height:100vh;background-color:transparent;z-index:100}.intro-animation{height:100vh;width:100vw;z-index:100;background:black;display:flex;justify-content:center;align-items:center;flex-direction:column;gap:10px;position:fixed;top:0;left:0}.intro-animation h1{font-size:100px;color:#fff}.intro-bg{height:100vh;width:100vw;z-index:99;background:white;position:fixed;top:0;left:0}.project-link:hover{background-color:var(--buttonHover)}.tech-used{width:fit-content;margin:auto;columns:2;-webkit-columns:2;-moz-columns:2;padding-left:0;text-align:start;list-style-position:inside}.tech-used li{margin:0 1em}.back{display:flex;width:fit-content;margin:auto;flex-direction:row}.back p{width:fit-content}.back a{text-decoration:none;color:#000;margin:10px;transition:ease-in-out .2s}.back:hover{color:var(--linkHover)}.project-link svg{margin:0 3px;height:32px;width:32px}.contact-window{height:100vh;display:flex;justify-content:center;flex-direction:column}.contact-card{display:flex;align-items:center;flex-wrap:wrap;flex-direction:column;border:solid 3px;border-radius:8px;margin:auto;padding:10px 25px}.contact-card a,.contact-card p{margin:10px 0}.contact-form{display:flex;align-items:center;flex-wrap:wrap;flex-direction:column;border:solid 3px;border-radius:8px;margin:20px auto;background-color:#fff}.btn{text-align:center;display:inline-block;padding:.5rem 1.2rem;margin:0;text-decoration:none;font-size:1rem;font-weight:700;border-radius:.3rem;border:1px solid transparent;outline:none;color:#fff;background-color:#000;transition:color .2s ease-in-out,background-color .2s ease-in-out;cursor:pointer}.btn:hover{background-color:#fff;color:#000}#linkedin,#email,#github,#stackoverflow{color:#000;transition:ease-in-out .2s;margin:0 1rem;height:2rem;width:2rem}#linkedin:hover,#email:hover,#phone:hover,#github:hover,#stackoverflow:hover{color:var(--linkHover)}#zach-pic{width:15%}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes moveUpCard{0%{margin-bottom:5rem}to{margin-bottom:0rem}}@keyframes moveUpCardMobile{0%{margin-bottom:5rem}to{margin-bottom:4.8%}}@keyframes moveUp{0%{transform:translateY(5rem);-webkit-transform:translateY(5rem)}to{transform:translateY(0);-webkit-transform:translateY(0rem)}}@keyframes moveUpProject{0%{padding-top:5vh}to{padding-top:0vh}}@keyframes moveUpAbout{0%{margin-top:20vh}to{margin-top:15vh}}@keyframes moveUpAboutMobile{0%{padding-top:20vh}to{padding-top:10vh}}@keyframes moveUpGoBack{0%{padding-top:5vh}to{padding-top:0vh}}@media (prefers-color-scheme: dark){:root{background-color:#000;color:#fff}#resume-dl{color:#fff}.navbar{background-color:#000}.navbar a{color:#fff}.footer{background:linear-gradient(var(--clear) 10%,var(--black) 20%)}.light-resume{display:none;z-index:-1}.dark-resume{display:inherit}#linkedin,#email,#github,#stackoverflow{color:#fff}.project-card{color:var(--white)}.back{cursor:pointer}.back a{color:var(--white)}.project-link{border:gray 3px;color:#000;background-color:var(--white)}}@media (min-width: 1025px){.back{position:absolute;top:0;left:0;margin-top:8vh;margin-left:20vw}}@media (max-width: 1024px){.project-card{flex:1 0 90%;align-items:center;flex-wrap:wrap;flex-direction:column;font-family:Geist;border:solid 3px;border-radius:8px;margin:4.5rem 4.8% 0;max-width:90%;position:relative}.card-links{position:absolute;z-index:-1;top:0;left:0;bottom:0;display:flex;flex-wrap:wrap;align-items:center;justify-content:center;text-align:center;flex-direction:column;font-size:4vw;width:101%;opacity:0;transition:ease-in-out .4s}#github-repo{color:#000;transition:ease-in-out .2s;margin:0 10vw;height:5vh;width:5vw}#resume-dl{height:5vh;width:5vw}.back{padding-bottom:15vh}}@media (max-width: 768px){.name{display:flex;justify-content:center;align-items:center;flex-direction:column;font-family:Geist;font-weight:700;margin-top:42vh;padding:0;height:fit-content}.portfolio-container{display:flex;width:100%;flex-wrap:wrap;margin:auto;padding-top:5vh;padding-bottom:6vh}.project-card{flex:1 0 90%;align-items:center;flex-wrap:wrap;flex-direction:column;font-family:Geist;border:solid 3px;border-radius:8px;margin:4.8%;max-width:100%;position:relative}.card-links{position:absolute;z-index:-1;top:0;left:0;bottom:0;display:flex;flex-wrap:wrap;align-items:center;justify-content:center;text-align:center;flex-direction:column;font-size:4vw;width:100%;opacity:0;transition:ease-in-out .4s}.navbar{position:fixed;z-index:3;top:0;display:flex;justify-content:space-around;text-align:center;margin:5px auto 0;border:solid 3px;border-radius:8px;font-size:1rem;width:90vw}.nav-link{margin:10px 0}.about-me{display:flex;width:fit-content;justify-content:center;align-items:center;flex-direction:column;text-align:center;font-family:Geist;padding:10vh 0;height:fit-content;margin:0 0%;min-height:105vh}#zach-pic{width:40%}#linkedin,#email,#phone,#github,#stackoverflow{transition:ease-in-out .2s;margin:0 10vw;height:2.5rem;width:2.5rem}.resume-pic{padding-top:1vh;align-items:center;text-align:center}.resume-pic img{width:125%;left:-12.5%;position:relative;flex-direction:column}.contact-window{margin-top:30vh;display:flex;justify-content:center;flex-direction:column}.footer{display:flex;justify-content:center;position:fixed;z-index:2;bottom:0;left:0;width:100%;height:fit-content}header{display:flex;justify-content:center;width:100%;position:fixed;z-index:3;top:0}#resume-dl{height:6vh;width:6vw}.page-start{min-height:105vh}.project-linkout{flex-direction:column}.thumbnail{width:100%}}
