body {
  background-color: black;
  color: #414141;
  font-size: 15px;
  font-family: futura-pt, sans-serif;
}

h1, h2, h3, h4, h5, h6 {
  font-family: cooper-black-std, serif;
  text-transform: lowercase;
}

.hidden {
  display: none;
}

.generic-page {
  margin-top: 2rem;
}

.generic-page figure {
  margin-bottom: 0;
}

.news-page {
  margin-top: 2rem;
}

.news-page .news-container {
  background: #3F629A;
  padding: 2rem;
  color: white;
  border-radius: 20px;
  background-size: cover;
}

.news-page .news-container .back-link {
  display: block;
  color: #6582AE !important;
  font-family: cooper-black-std, serif;
  text-transform: lowercase;
  font-size: 18px;
  margin-bottom: 1rem;
}

.news-page .news-container .back-link:hover {
  opacity: 0.8;
  text-decoration: none;
}

.news-page .news-container h2 {
  margin-bottom: 2rem;
}

.news-page .news-container p a {
  color: white;
  text-decoration: underline;
}

.news-page .news-container p a:hover, .news-page .news-container p a:focus {
  color: #ddddff;
  text-decoration: underline;
}

.news-page .news-container figure {
  text-align: center;
}

.news-page .news-container figcaption {
  font-style: italic;
  font-size: 85%;
  margin-top: 0.25rem;
}

.news-page .news-container img {
  max-width: 480px;
  text-decoration: none;
  border-radius: 10px;
}

@media (max-width: 575px) {
  .news-page .news-container img {
    max-width: 100%;
    height: auto;
  }
}

.video .embed-responsive {
  text-align: center;
  margin-top: 2rem;
}

.video .embed-responsive.embed-responsive-4by3 {
  margin-top: 1rem;
}

@media (max-width: 900px) {
  #video {
    max-width: 540px;
  }
}

#video_controls {
  margin-top: 1rem;
  background-color: #414141;
  border-radius: 15px;
}

#video_controls .nav-link {
  color: white;
  font-family: cooper-black-std, serif;
  text-transform: lowercase;
  font-size: 18px;
}

#video_controls .nav-link small {
  display: block;
  font-size: 12px;
  font-family: 'Ubuntu', sans-serif;
}

#video_controls .nav-link:hover {
  color: #CCCCCC;
}

#video_controls .nav-item:not(:first-child) {
  border-left: 1px solid #222222;
}

#video_controls .nav-item:not(:last-child) {
  border-right: 1px solid #222222;
}

#video_controls .nav-link.disabled {
  color: #888888 !important;
}

@media (max-width: 575px) {
  #video_controls {
    background: none;
    max-width: 100%;
  }
  #video_controls .nav-item {
    background-color: #414141;
    margin-bottom: 0.25rem;
    border: 1px solid #222222;
    border-radius: 20px;
    text-align: center;
  }
  #video_controls .nav-item:not(:first-child) {
    margin-left: 0.25rem;
  }
  #video_controls .nav-link small {
    max-width: 100px;
    text-overflow: ellipsis;
    overflow: hidden;
    white-space: nowrap;
    margin: 0 auto;
  }
}

@media (max-width: 396px) {
  #video_controls .nav-link small {
    max-width: 60px;
  }
}

footer {
  margin-top: 0.5rem;
  margin-bottom: 2rem;
  color: #414141;
}

#footer .logo {
  height: 35px;
  width: auto;
}

#footer a {
  font-size: 18px;
  color: #414141;
  border-radius: 20px;
  text-transform: lowercase;
}

#footer a.logo-container {
  min-width: 120px;
  text-align: center;
}

#footer a.logo-container:hover {
  opacity: 0.75;
}

#footer a:not(.logo-container):hover {
  background-color: #222222;
  color: #414141;
}

footer #legal {
  font-size: 12px;
  margin-top: 1rem;
  padding: 0.5rem;
  text-align: center;
}

#ruffle_alert .alert {
  border: 2px solid #414141;
  border-radius: 15px;
  padding: 0.5rem 1rem;
  margin: 2rem 0;
}

#ruffle_alert p {
  margin-bottom: 0;
}
