html {
  font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
}

body {
  background-color: #212529;
  background-image: linear-gradient(to right, #212529, #6c757d);
  color: #fff;
  margin: 0;
}

.page {
  padding-top: 2rem;
  padding-bottom: 5rem;
  padding-left: 2rem;
  padding-right: 2rem;
}

.text {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}

@media (max-width: 450px)  {
  .navigation {
    position: relative;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    padding-bottom: .5rem;
  }
  .navbar-toggler {
    display: flex;
    justify-content: flex-end;
    z-index: 1030;
    color: rgba(255,255,255,.55);
    border-color: rgba(255,255,255,.1);
    background-color: transparent;
    margin-top: .5rem;
    margin-left: .5rem;
    cursor: pointer;
  }
  .navbar-toggler-icon {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.55%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
    height: 2rem;
    width: 2rem;
  }
  .navbar:not(.show) {
    display: none;
  }
  .navbar.show {
    display: flex;
    overflow: visible;
  }
}

@media(min-width: 450px) {
  .navigation {
    position: relative;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: flex-start;
    padding-bottom: .5rem;
  }
  .navbar {
    display: block;
  }
  .navbar-toggler {
    display: none;
  }
  .nav-links {
    display: flex;
    flex-direction: row;
    list-style-type: none;
  }
}

@media(max-width: 800px) {
  .page>.images {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    margin-top: 2rem;
  }
}

@media(min-width: 800px) {
  .page>.images {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    margin-top: 2rem;
  }
}

@media(max-width: 992px) {
  p {
    width: 80%;
    margin: 1rem 0;
  }

  hr {
    width: 80%;
  }
}

@media(min-width: 992px) {
  p {
    width: 50%;
    margin: 1rem 0;
  }

  hr {
    width: 50%;
  }
}

@media(max-width: 1400px) {
  table {
    width: 80%
  }
}

@media(min-width: 1400px) {
  table {
    width: 50%
  }
}

.image-text {
  font-size: x-small;
  padding-top: .25rem;
  text-align: center;
  margin: auto;
}

hr {
  margin-bottom: 2rem;
}

.bg-dark {
  background-color: #212529;
}

a {
  color: rgba(255,255,255,.55);
  display: block;
  padding: .5rem 1rem;
  text-decoration: none;
}
a:hover {
  color: lime;
  transition: color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out;
  cursor: pointer;
}

#footer {
  padding: .3125rem;
  color: rgba(255,255,255,.55);
}

.fixed-bottom {
  position: fixed;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1030;
}

.justify-content-center {
  display: flex;
  justify-content: center!important;
}

.list {
  display: flex;
  flex-direction: column;
  border-radius: 0.25rem;
}

.list .item {
  position: relative;
  display: block;
  color: #212529;
  text-decoration: none;
  box-shadow: inset 0 0 0 9999px #c8ebd7;
  border: 1px solid #b1b3b7;
  border-radius: 0.25rem;
  padding: .5rem;
}

ul {
  margin: 0;
  padding: 0.5rem;
  list-style-type: none;
}

.table {
  background-color: transparent;
  margin-bottom: 1rem;
  color: #212529;
  border-color: #b1b3b7;
}

table {
  caption-side: bottom;
  border-collapse: collapse;
}

.table>thead {
  vertical-align: bottom;
}
.table>body {
  vertical-align: inherit;
}
thead, tbody, tr, td, th {
  border-color: #b1b3b7;
  border-style: solid;
  border-width: 0;
}

th {
  text-align: start;
}

.table>:not(:first-child) {
  border-top: 2px solid currentColor;
  border-left: rgba(255,255,255,.55);
  border-right: rgba(255,255,255,.55);
  border-bottom: rgba(255,255,255,.55);
}

.table>:not(caption)>*>* {
  padding: .5rem .5rem;
  border-bottom-width: 1px;
  box-shadow: inset 0 0 0 9999px #c8ebd7;
}

.table-bordered>:not(caption)>* {
  border-width: 1px .5px;
}

.table-bordered>:not(caption)>*>* {
  border-width: 1px 0;
}