html{font-size:100%}#root{max-width:90rem;margin:0 auto}body{color:#fff;background-color:#000;margin:0;padding:0 3rem;font-family:Orbitron}h1{margin:0;padding:0;font-size:2rem;font-weight:700}h2{color:#737373;margin:0;padding:0;font-size:2rem;font-weight:700}h3{color:#004480;margin:0;padding:0;font-size:1.25rem;font-weight:700}p{margin:0;padding:0}@media (width<=600px){html{font-size:85%}}@media (width<=500px){html{font-size:70%}}@media (width<=420px){html{font-size:60%}}@media (width<=360px){html{font-size:50%}}nav{gap:2rem;font-size:1.75rem;font-weight:700;display:flex}nav a{color:#fff;border-radius:.35rem;padding:.25rem .4rem;text-decoration:none;transition:background-color .16s,color .16s,box-shadow .16s;position:relative}nav a:after{content:"";transform-origin:50%;background-color:#005fb3;width:100%;height:.15rem;transition:transform .16s;position:absolute;bottom:-.4rem;left:0;transform:scaleX(0)}nav a:hover,nav a:focus-visible{color:#4cacff}.active{color:#80c4ff;background-color:#00294d;box-shadow:inset 0 0 0 .125rem #005fb3}nav a:hover:after,nav a:focus-visible:after,.active:after{transform:scaleX(1)}nav a:focus-visible{outline-offset:.2rem;outline:.15rem solid #66b8ff}.Logo{width:7rem;height:7rem;margin-right:1rem}header{z-index:1000;text-align:center;background-color:#000;justify-content:space-between;align-items:center;display:flex;position:sticky;top:0}.header-content{flex-direction:row;align-items:center;display:flex}.text-content{flex-direction:column;align-items:flex-start;display:flex}.site-name{margin:0;padding:0;font-size:2.25rem;font-weight:700}.text-content h3{margin-bottom:.5rem}@media (width<=1100px){header{text-align:center;flex-direction:column;align-items:center;padding-bottom:1.5rem}}footer{text-align:center;justify-content:center;padding:.5rem 1.25rem;font-size:.75rem;display:flex}.icon-placement{flex-direction:column;align-items:center;width:5.5rem;display:flex}.social-link{border-radius:.5rem;transition:transform .16s,box-shadow .16s;display:inline-flex}.social-link:hover,.social-link:focus-visible{outline:none;transform:translateY(-.125rem);box-shadow:0 .35rem 0 #004480}.img-style{cursor:pointer;border-radius:.5rem;width:5.5rem;height:5.5rem}.socials-placement{justify-content:center;align-items:center;gap:2rem;margin-top:1rem;display:flex}.headshot-frame{border:.125rem solid #005299;border-radius:50%;padding:.25rem;transition:border-color .16s;display:inline-flex}.headshot-frame:hover{border-color:#007ae6}.headshot{object-fit:cover;border-radius:50%;width:13rem;height:13rem}.Button{box-sizing:border-box;color:#fff;cursor:pointer;background-color:#072e50;border:.125rem solid #1071c6;border-radius:.5rem;justify-content:center;align-items:center;width:12.5rem;min-height:3rem;margin-top:.25rem;padding:.65rem 1.25rem;font-family:Orbitron;font-size:1.25rem;font-weight:700;text-decoration:none;transition:background-color .16s,border-color .16s,box-shadow .16s,color .16s,transform .16s;display:inline-flex;box-shadow:0 .25rem 0 #031626,0 0 .75rem #0d5ea52e}.Button:hover,.Button:focus-visible{color:#fff;background-color:#0a4376;border-color:#399aef;transform:translateY(-.125rem);box-shadow:0 .3rem 0 #03182a,0 0 1rem #1179d447}.Button:focus-visible{outline-offset:.2rem;outline:.15rem solid #68b2f3}.Button:active{transform:translateY(.12rem);box-shadow:0 .12rem 0 #031626,0 0 .5rem #0d5ea533}.Resume{justify-content:center;width:100%;display:flex}.resume-placement{box-sizing:border-box;background-color:#0a0a0a;border:.125rem solid #474747;border-radius:.5rem;flex-direction:row;justify-content:space-between;align-items:center;gap:1.5rem;width:min(100%,36rem);margin-top:4rem;padding:1.25rem;transition:border-color .16s;display:flex}.resume-placement:hover,.resume-placement:focus-within{border-color:#004480}.resume-copy{text-align:left;flex-direction:column;align-items:flex-start;gap:.25rem;display:flex}.resume-copy p{color:#b3b3b3}.resume-placement .Button{flex-shrink:0}@media (width<=600px){.resume-placement{text-align:center;flex-direction:column;align-items:center}.resume-copy{text-align:center;align-items:center}}.ProfileBody{text-align:center;flex-direction:column;justify-content:center;align-items:center;margin-top:1.5rem;margin-bottom:3rem;display:flex}.ProfileBody h1{margin-bottom:1rem}.ProfileBody h2{margin-bottom:2rem}.Intro{width:80%;margin:2.5rem;padding:0;font-size:1.25em}.ProjectCard{text-align:center;box-sizing:border-box;background-color:#0a0a0a;border:.125rem solid #474747;border-radius:.5rem;flex-direction:column;justify-content:center;align-items:center;gap:.5rem;width:80%;padding:1.25rem;transition:border-color .16s;display:flex}.ProjectCard:hover,.ProjectCard:focus-within{border-color:#004480}.ProjectCard h3{font-weight:400}.ProjectCard .description-list{text-align:center;margin:.25rem;padding:0;line-height:1.5rem;list-style:none}.ProjectCard .description-list li:before{content:"- "}.Image{width:90%;height:auto}.ProjectsBody{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:2rem;margin-top:1.5rem;margin-bottom:3rem;display:flex}.ProjectsBody h1{margin-bottom:1rem}.ExperienceCard{text-align:center;box-sizing:border-box;background-color:#0a0a0a;border:.125rem solid #474747;border-radius:.5rem;flex-direction:column;justify-content:center;align-items:center;gap:.5rem;width:80%;padding:1.25rem;transition:border-color .16s;display:flex}.ExperienceCard:hover,.ExperienceCard:focus-within{border-color:#004480}.ExperienceCard h3{font-weight:400}.ExperienceCard p{margin:.25rem}.grey{color:#474747}.ExperienceCard .description-list{text-align:center;margin:.25rem;padding:0;line-height:1.5rem;list-style:none}.ExperienceCard .description-list li:before{content:"- "}.ExperienceCard .Button{white-space:nowrap;width:16rem;max-width:100%}.white{color:#fff}.ExperienceBody{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:2rem;margin-top:1.5rem;margin-bottom:3rem;display:flex}.ExperienceBody h1{margin-bottom:1rem}.NotFound{box-sizing:border-box;text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:55vh;padding:4rem 1rem;display:flex}.NotFound-code{color:#007ae6;font-size:5rem;font-weight:700;line-height:1}.NotFound h1{margin-top:1rem;font-size:2.5rem}.NotFound-copy{color:#c7c7c7;max-width:42rem;margin:1.25rem 0 1.75rem;font-size:1.25rem;line-height:1.6}.NotFound-actions{flex-wrap:wrap;justify-content:center;gap:1rem;display:flex}@media (width<=500px){.NotFound{min-height:45vh;padding:3rem 0}.NotFound-code{font-size:4rem}.NotFound h1{font-size:2rem}}
