html,
body {
  font-family: "Raleway", sans-serif;
  font-smoothing: antialiased;
  height: 100%;
 
}

a {
  color: inherit;
  text-decoration: none !important;
}

#sidebar {
  animation-duration: .2s;
  background-color: rgba(84, 106, 123, 0.95);
  height: 100%;
  left: 0;
  position: fixed;
  top: 0;
  width: 300px;
  z-index: 1;
}
#sidebar ul {
  display: table;
  position: relative;
  top: 6em;
  width: 100%;
}
#sidebar ul li {
  border-style: none;
  display: table;
  font-size: 20px;
  font-weight: 400;
  height: 60px;
  margin-bottom: 5px;
  width: 100%;
}
#sidebar ul li:hover {
  background-color: #222426 !important;
  color: #546a7b !important;
}
#sidebar ul li a {
  background-color: rgba(84, 106, 123, 0);
  color: inherit;
  display: table-cell;
  height: 100%;
  padding-left: 1.2em;
  text-decoration: none;
  transform: translate(-5px, 0);
  transition: .6s ease-out;
  vertical-align: middle;
  width: 100%;
}
#sidebar ul li a:hover {
  color: #00f6ed !important;
  transform: translate(5px, 0);
  transition: .2s linear;
}

#projects {
  background-color: #edf9f9;
  padding: 80px 0;
}
#projects h2 {
  display: block;
  font-size: 38px;
  font-weight: 400;
  letter-spacing: 5px;
  margin: 0 !important;
  margin-after: .83em;
  margin-before: .83em;
  padding-bottom: 50px;
  position: relative;
  text-align: center;
}
#projects h2after {
  bottom: 30px;
  content: "";
  display: block;
  height: 3px;
  left: 50%;
  position: absolute;
  transform: translateX(-50%);
  width: 100px;
}

#about {
  background-color: #fdfdff;
  margin: 0;
  min-height: 70%;
  padding: 80px 0;
}
#about h2 {
  display: block;
  font-size: 38px;
  font-weight: 400;
  letter-spacing: 5px;
  margin: 0 !important;
  margin-after: .83em;
  margin-before: .83em;
  padding-bottom: 50px;
  text-align: center;
}
#about h2after {
  bottom: 30px;
  content: "";
  display: block;
  height: 3px;
  left: 50%;
  position: absolute;
  transform: translateX(-50%);
  width: 100px;
}
#about div {
  font-family: "Droid Serif", sans-serif;
  font-size: 18px;
  font-weight: 100;
  letter-spacing: 1px;
  line-height: 1.4em;
  text-indent: 25px;
}

#contact {
  background-color: #222426;
  font-size: 25px;
}
#contact strong {
  color: #00f6ed;
}

@media (min-width: 1024px) {
  #menu-button {
    font-size: 14px;
    left: 2.5em;
    position: fixed;
    top: 2.5em;
    z-index: 2;
  }

  #home h1 p {
    font-size: 42px;
    font-weight: 400;
  }
  #home h1 strong {
    font-size: 46px;
  }
}
@media (min-width: 768px) and (max-width: 1023px) {
  #menu-button {
    font-size: 12px;
    left: 2.5em;
    position: fixed;
    top: 2.5em;
    z-index: 2;
  }

  #home h1 p {
    font-size: 38px;
    font-weight: 400;
  }
  #home h1 strong {
    font-size: 42px;
  }
}
@media (min-width: 320px) and (max-width: 767px) {
  #menu-button {
    font-size: 10px;
    left: 2.5em;
    position: fixed;
    top: 2.5em;
    z-index: 2;
  }

  #home h1 p {
    font-size: 30px;
    font-weight: 400;
  }
  #home h1 strong {
    font-size: 34px;
  }

  #contact button {
    font-size: .7em;
  }
  #contact p {
    font-size: .7em;
  }
}
.dark-gray-background {
  background-color: #222426;
}

.dark-gray-font {
  color: #222426 !important;
}

.light-white-font {
  color: #fdfdff;
}

.light-blue-background {
  background-color: #edf9f9;
}

.middle-blue-font {
  color: #00f6ed !important;
}

.middle-blue-background {
  background-color: #00f6ed;
}

.dark-blue-font {
  color: #546a7b;
}

.center {
  left: 50%;
  position: relative;
  top: 50%;
  transform: translate(-50%, -50%);
}

.container-fluid {
  min-height: 100%;
  padding: 0;
}

.fill {
  height: 100%;
  min-height: 100%;
}

.footer {
  bottom: 0;
  min-height: 30%;
  position: relative;
}
.footer .container {
  left: 50%;
  padding-top: 1.3em;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
}

.fixed-width {
  max-width: 300px;
  min-width: 300px;
}

.email {
  font-size: .9em;
  height: 2.4em;
  width: 8.7em;
}

.typed-cursor {
  -webkit-animation: blink .7s infinite;
  -moz-animation: blink .7s infinite;
  animation: blink .7s infinite;
  opacity: 1;
}

@keyframes blink {
  0% {
    opacity: 1;
  }
  50% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@-webkit-keyframes blink {
  0% {
    opacity: 1;
  }
  50% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@-moz-keyframes blink {
  0% {
    opacity: 1;
  }
  50% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

