:root {
  --dark-teal: rgb(23, 69, 74);
  --teal: rgb(102, 170, 178);
  --light-teal: rgb(183, 206, 209);
  --dark-blue: rgb(33, 68, 120);
  --blue: rgb(95, 141, 211);
  --light-blue: rgb(198, 215, 240);
  --dark-purple: rgb(90, 44, 160);
  --purple: rgb(141, 95, 211);
  --light-purple: rgb(210, 193, 236);
  --background-blue: rgb(33, 68, 120, 0.9);
  --background-teal: rgb(23, 69, 74, 0.9);
}

body {
  padding: 0;
  margin: 0;
  background: #f2f6e9;
}

/*--- navigation bar ---*/

.navbar {
  background:var(--dark-teal);
}

.nav-link,
.navbar-brand {
  color: var(--light-blue);
  cursor: pointer;
}

.nav-link {
  margin-right: 1em !important;
}

.nav-link:hover {
  color: var(--blue);
}

.navbar-collapse {
  justify-content: flex-end;
}

.header {
  background-image: url('images/header-background.jpg');
  background-size: cover;
  background-position: center;
  position: relative;
}

.overlay {
  position: absolute;
  min-height: 100%;
  min-width: 100%;
  left: 0;
  top: 0;
  background: var(--background-teal);
}

.description {
  left: 50%;
  position: absolute;
  top: 45%;
  transform: translate(-50%, -55%);
  text-align: center;
}

.description h1 {
  color: var(--light-blue);
}

.description p {
  color: var(--light-blue);
  font-size: 1.3rem;
  line-height: 1.5;
}

.description button {
  border:1px solid var(--dark-blue);
  background:var(--light-blue);
  border-radius: 0;
  color: var(--dark-blue);
}

.description button:hover {
  border:1px solid var(--light-blue);
  background: var(--dark-blue);
  color: var(--light-blue);
}

.features {
  margin: 4em auto;
  padding: 1em;
  position: relative;
}

.feature-title {
  color: #333;
  font-size: 1.3rem;
  font-weight: 700;
  margin-bottom: 20px;
  text-transform: uppercase;
}

.features img {
  -webkit-box-shadow: 1px 1px 4px rgba(0, 0, 0, 0.4);
  -moz-box-shadow: 1px 1px 4px rgba(0, 0, 0, 0.4);
  box-shadow: 1px 1px 4px rgba(0, 0, 0, 0.4);
  margin-bottom: 16px;
}

.page-footer {
  background-color: #222;
  color: #ccc;
  padding: 60px 0 30px;
}

.footer-copyright {
  color: #666;
  padding: 40px 0;
}

@media (max-width: 575.98px) {

  .description {
    left: 0;
    padding: 0 15px;
    position: absolute;
    top: 10%;
    transform: none;
    text-align: center;
  }
  
  .description h1 {
    font-size: 2em;
  }
  
  .description p {
    font-size: 1.2rem;
  }
  
  .features {
    margin: 0;
  }

}