@charset "UTF-8";
.topNav {
  background-color: #575656;
  -webkit-box-shadow: 0px 0px 20px 0px rgba(0, 0, 0, 0.75);
  -moz-box-shadow: 0px 0px 20px 0px rgba(0, 0, 0, 0.75);
  box-shadow: 0px 0px 20px 0px rgba(0, 0, 0, 0.75);
  position: relative;
  overflow: hidden;
  z-index: 5;
}

nav {
  margin: auto;
  text-align: right;
  width: 58%;
  padding-bottom: 1rem;
}
nav .icon {
  display: none;
  position: absolute;
  left: 1rem;
  top: 1rem;
}
nav .icon .fa-bars {
  font-size: 10vw;
  color: #0095ff;
}
nav .icon .fa-bars:hover {
  color: #0076ca;
}
nav button {
  background-color: transparent;
  border: 5px solid #ec9b03;
  border-bottom: 10px solid #ec9b03;
  border-radius: 15px;
  color: white;
  padding: 0.5rem 1rem;
  margin-top: 1rem;
  font-size: 1.5rem;
  font-weight: bold;
  cursor: pointer;
  transition: 0.25s;
  position: relative;
  font-weight: 700;
  letter-spacing: 2px;
  text-transform: lowercase;
  overflow: hidden;
  z-index: 1;
  cursor: pointer;
  transition: 0.15s ease-in;
  -o-transition: 0.15s ease-in;
  -ms-transition: 0.15s ease-in;
  -moz-transition: 0.15s ease-in;
  -webkit-transition: 0.15s ease-in;
}
nav button:before {
  content: "";
  position: absolute;
  background: #ec9b03;
  bottom: 0;
  left: 0;
  right: 0;
  top: 100%;
  z-index: -1;
  -webkit-transition: top 0.15s ease-in;
}
nav button:hover:before {
  top: 0;
}
nav button:focus {
  outline: 0;
}
nav button:not(.active):hover {
  background-color: #ec9b03;
}
nav button:not(.active):active {
  background-color: #c07d00;
  border: 5px solid #c07d00;
  border-bottom: 10px solid #c07d00;
}
nav .active {
  background-color: #ec9b03;
}

/* When the screen is less than 600 pixels wide, hide all links, except for the first one ("Home"). Show the link that contains should open and close the topnav (.icon) */
@media screen and (max-width: 600px) {
  nav {
    width: 80%;
  }

  .topNav a:not(:first-child) {
    display: none;
  }

  .topNav a.icon {
    float: right;
    display: block;
  }
}
/* The "responsive" class is added to the topnav with JavaScript when the user clicks on the icon. This class makes the topnav look good on small screens (display the links vertically instead of horizontally) */
@media screen and (max-width: 600px) {
  .topNav.responsive {
    position: relative;
  }

  .topNav.responsive a {
    float: none;
    display: block;
    text-align: right;
  }
}
.footer {
  background-color: #575656;
  border-bottom: 10px solid #0095ff;
  color: white;
  width: 100%;
  position: relative;
  z-index: 5;
  padding-bottom: 2rem;
  -webkit-box-shadow: 0px 0px 20px 0px rgba(0, 0, 0, 0.75);
  -moz-box-shadow: 0px 0px 20px 0px rgba(0, 0, 0, 0.75);
  box-shadow: 0px 0px 20px 0px rgba(0, 0, 0, 0.75);
}
.footer ul {
  list-style: none;
  padding: 0;
  margin: 0;
}
.footer ul a {
  color: white;
  text-decoration: none;
}
.footer ul a:hover {
  color: #cecece;
}
.footer .footerContent {
  display: flex;
  flex-flow: row wrap;
  width: 50%;
  margin: auto;
}
.footer .footerContent .last {
  text-align: right;
  flex: 2;
}
.footer .footerContent .footerFlex {
  display: flex;
  flex-direction: column;
  width: 10rem;
}
.footer .footerContent .footerFlex p {
  border-bottom: 2px solid #0095ff;
  width: 75%;
}

html, body {
  margin: 0;
  padding: 0;
  width: 100%;
  height: 100%;
  font-family: "Source Code Pro", monospace;
  -webkit-overflow-scrolling: touch;
  scroll-behavior: smooth;
}

body {
  background-size: cover;
  background-color: #1a1a1a;
  width: 100%;
  height: 100%;
}

.spacemanPicture {
  pointer-events: none;
  overflow: hidden;
}
.spacemanPicture img {
  position: absolute;
  top: 20;
  z-index: 20;
  right: 0;
  width: 25%;
  height: 50%;
}

.centerContent {
  background-color: #868686;
  width: 58%;
  margin: auto;
  z-index: 2;
  padding-top: 2rem;
  -webkit-box-shadow: 0px 0px 20px 0px rgba(0, 0, 0, 0.75);
  -moz-box-shadow: 0px 0px 20px 0px rgba(0, 0, 0, 0.75);
  box-shadow: 0px 0px 20px 0px rgba(0, 0, 0, 0.75);
  position: relative;
  border-top: 1px solid black;
  border-bottom: 1px solid black;
}
.centerContent .content {
  width: 90%;
  margin: auto;
  color: white;
}
.centerContent h1, .centerContent h2, .centerContent h4 {
  margin: 0;
  padding: 0;
}
.centerContent h2 {
  margin-top: 1rem;
}
.centerContent h4 {
  margin-bottom: 0.5rem;
}

span {
  color: #0095ff;
}

.hero {
  padding-top: 2rem;
  padding-bottom: 2rem;
  background-color: #868686;
  color: white;
}
.hero .heroText {
  width: 90%;
  margin: auto;
}

.calendly {
  margin-bottom: 10px;
}
.calendly a {
  text-decoration: none;
  color: #0075c9;
  font-size: 25px;
  font-weight: bolder;
}
.calendly a:hover {
  color: #004475;
}

@media only screen and (max-width: 1024px) {
  .centerContent {
    width: 100%;
  }

  .spacemanPicture {
    display: none;
  }
}
.smaller ul {
  list-style: none;
  /* Remove default bullets */
  margin: 0 0 0 1em;
  padding: 0;
  /* Unvisited link  */
  /* Visited link    */
  /* Mouse over link */
  /* Selected link   */
}
.smaller ul li::before {
  content: "• ";
  /* Add content: \2022 is the CSS Code/unicode for a bullet */
  color: black;
  /* Change the color */
  font-weight: bold;
  /* If you want it to be bold */
  display: inline-block;
  /* Needed to add space between the bullet and the text */
  width: 1.5em;
  /* Also needed for space (tweak if needed) */
}
.smaller ul a {
  color: black;
}
.smaller ul a:visited {
  color: black;
}
.smaller ul a:hover {
  color: #363636;
}
.smaller ul a:active {
  color: black;
}

.flex {
  display: flex;
  flex-flow: row wrap;
  align-items: center;
  justify-content: center;
  background-color: #868686;
}
.flex .expertise {
  display: flex;
  flex-flow: column wrap;
  align-items: left;
  justify-content: left;
  align-content: left;
  width: 100%;
  padding: 2rem 0 2rem 0;
}
.flex .expertise .fa-chevron-left, .flex .expertise .fa-chevron-right {
  position: absolute;
  width: 8vw;
  height: 8vh;
  transition: ease-in-out 0.25s;
  color: #0095ff;
}
.flex .expertise .fa-chevron-left:hover, .flex .expertise .fa-chevron-right:hover {
  color: #025c9c;
}
.flex .expertise .fa-chevron-left {
  left: 3vw;
}
.flex .expertise .fa-chevron-right {
  right: 1vw;
}
.flex .expertise .imageText {
  display: flex;
  flex-direction: row;
  justify-content: baseline;
  align-content: center;
  align-items: center;
  margin-left: 1rem;
  width: 100%;
}
.flex .expertise .imageText img {
  background-color: #1a1a1a;
  padding: 0.5rem;
  border-radius: 1rem;
  height: 5rem;
  margin-right: 10px;
}
.flex .expertise .programProjects {
  display: flex;
  flex-flow: row nowrap;
  align-content: center;
  align-items: center;
  -webkit-overflow-scrolling: touch;
  overflow-x: scroll;
  overflow-y: hidden;
  width: 100%;
  height: 100%;
}
.flex .expertise .programProjects::-webkit-scrollbar {
  display: none;
}
.flex .expertise .programProjects .program {
  flex: 0 0 auto;
  background-color: #575656;
  height: 19rem;
  width: 26rem;
  margin: 5px 0 5px 1rem;
  border-radius: 1rem;
  -webkit-box-shadow: 0px 1px 5px -1px rgba(0, 0, 0, 0.75);
  -moz-box-shadow: 0px 1px 5px -1px rgba(0, 0, 0, 0.75);
  box-shadow: 0px 1px 5px -1px rgba(0, 0, 0, 0.75);
}
.flex .expertise .programProjects .program .details {
  display: flex;
  flex-flow: row wrap;
  width: 100%;
  margin: 0;
  padding: 0;
  height: 30%;
}
.flex .expertise .programProjects .program .details .info {
  width: 75%;
  height: 100%;
  margin-top: 3px;
}
.flex .expertise .programProjects .program h3, .flex .expertise .programProjects .program p {
  margin: 0 0 0 1rem;
  color: white;
}
.flex .expertise .programProjects .program a {
  width: 20%;
  margin-top: 40px;
}
.flex .expertise .programProjects .program button {
  background-color: #ec9b03;
  border: none;
  border-radius: 2px;
  color: #eeeeee;
  font-size: 1rem;
  padding: 0.3rem 0.8rem 0.3rem 0.8rem;
  margin-left: 25px;
  font-weight: bold;
  cursor: pointer;
  transition: 0.25s;
}
.flex .expertise .programProjects .program button:focus:enabled {
  outline: 0;
}
.flex .expertise .programProjects .program button:hover:enabled {
  background-color: #d68c01;
}
.flex .expertise .programProjects .program button:active:enabled {
  background-color: #b17301;
  transform: translateY(2px);
}
.flex .expertise .programProjects .program button:disabled {
  opacity: 0.4;
}
.flex .tech {
  width: 12rem;
  height: 12rem;
  padding-top: 1rem;
  text-align: center;
}
.flex .tech h3 {
  padding-top: 0;
  margin: 0;
  padding-bottom: 0;
  margin-bottom: 0;
}
.flex .tech:nth-child(odd) {
  background-color: #9e9e9e;
}

.threeprojects {
  display: flex;
  flex-flow: row wrap;
  padding-bottom: 2rem;
}
.threeprojects .project {
  width: 25rem;
  height: 20rem;
  margin-right: 5px;
  margin-top: 1rem;
  background-color: #575656;
}

.moreprojects {
  margin-bottom: 5rem;
  background-color: transparent;
  border: 5px solid #ec9b03;
  border-bottom: 10px solid #ec9b03;
  border-radius: 15px;
  color: white;
  padding: 0.5rem 1rem;
  font-size: 1.5rem;
  font-weight: bold;
  cursor: pointer;
  transition: 0.25s;
  text-shadow: -1px -1px 0 #000, 1px -1px 0 #000, -1px 1px 0 #000, 1px 1px 0 #000;
}
.moreprojects:focus {
  outline: 0;
}
.moreprojects:hover {
  background-color: #ec9b03;
}

.active {
  background-color: #ec9b03;
}

@media only screen and (max-width: 1024px) {
  .fa-chevron-left {
    transform: translate(-50%, 0%);
  }
}
@media only screen and (min-width: 1025px) {
  .content {
    width: 20%;
  }
}
