body, html {
  color: #fff !important;
  font-family: 'Montserrat' !important;
  height: 100%;
}

#main_body_index {
  background-blend-mode: overlay;
  background-color: #222;
  background-image: url("../../assets/img/edu.jpg");
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  height: 100%;
  background-attachment: fixed;
}

#main_nav_index {
  background-color: rgba(0,0,0,0.1);
}

ul {
  display: flex;
  flex-flow: row wrap;
  flex-grow: 1;
  margin-top: 4rem;
  height: 100%;
}

li {
  list-style: none;
  white-space: wrap;
  display: flex;
  flex-flow: row wrap;
  text-align: center;
}

li ul {
  position: absolute;
  display: none;
  margin-top: 7%;
}

li a {
  text-decoration: none;
  font-size: 1.7em;
  padding: 2vw 4vw;
  background: rgba(255, 255, 255, 1);
  color: rgb(255, 0, 0);
  margin: 0.8vw;
  border-radius: 1vw;
  transition: 0.4s ease-out;
  width: 320px;
}

li a:focus, li a:hover {
  background: rgba(255, 0, 0, 0.836);
  color: rgb(255, 255, 255);
  padding: 2vw 4vw;
  outline: none;
}

li a ~ ul.visible, li a ~ ul.visible {
  display: flex;
  flex-wrap: wrap;
  flex-direction: column;
}

li ul li {
  margin-bottom: 5vw;
  margin-left: -3vw;
}

li ul li a {
  font-size: 1.1em;
  background: rgba(255, 255, 255, 1);
  padding: 2vw 3vw;
}

li ul li a:hover, li ul li a:focus {
  background: rgba(255, 255, 255, 1);
  padding: 3vw 4vw;
}

.caret {
  border: 10px solid transparent;
  border-top-color: white;
  position: relative;
  top: 20px;
  left: 5px;
}

a:focus .caret, a:hover .caret {
  border-top-color: rgb(20,90,190);
}

