:root {
  --primary-color: #fff;
  --inactive-color: #283539;
  --background-color: #000;
  --font-family: 'Jost', sans-serif;
  --fg-inactive: #555;
  --padding: 0 .62rem;
}

#imageCarousel {
  margin-top: 20px;
  background: var(--background-color);
  color: var(--primary-color);
}

#imageCarousel .carousel-inner {
  background: var(--background-color);
}

#imageCarousel .carousel-item {
  text-align: center;
}

#imageCarousel img {
  max-width: 100%;
  height: auto;
}

#imageCarousel .carousel-control-prev, #imageCarousel .carousel-control-next {
  display: none;
}

#imageCarousel .carousel-indicators {
  bottom: 10px;
}

#imageCarousel .carousel-indicators li {
  background-color: var(--inactive-color);
  border: 1px solid var(--background-color);
  border-radius: 50%;
  width: 10px;
  height: 10px;
  margin: 0 5px;
  cursor: pointer;
}

#imageCarousel .carousel-indicators li.active {
  background-color: var(--primary-color)
}

#imageCarousel .carousel-inner {
  background: var(--background-color);
}

#imageCarousel .carousel-item {
  text-align: center;
}

.media-container {
  position: relative;
  overflow: hidden;
  max-width: 100%;
  margin-top: 20px;
}

body {
  color: var(--primary-color);
  background: var(--background-color);
  font-family: var(--font-family);
  margin: 1rem auto;
  max-width: 40rem;
  padding: var(--padding);
  text-align: center;
}

h1, h2, h3 {
  line-height: 1;
}

h1 {
  margin-bottom: 0;
  font-size: 4rem;
  font-weight: normal;
}

h2 {
  font-size: 1.2rem;
  font-weight: normal;
}

p {
  font-size: 0.9rem;
}

.liens {
  color: white;
}

.liens:hover {
  color: #999999;
}

.musiciens {
  font-size: 0.9rem;
  margin: 1rem auto;
  max-width: 40rem;
  padding: var(--padding);
  text-align: left;
}

td {
  padding: 4px;
}

td:first-child {
  text-align: right;
}

.events table {
    width: 100%;
    border-collapse: collapse;
    margin-top: 20px;
    table-layout: fixed;
}

.events th, .events td {
    padding: 12px;
    border: 1px solid #ddd;
    text-align: left;
}

.events a {
  color: white;
}

.events a:hover {
  color: #999999;
}

.events th:first-child,
.events td:first-child {
    width: 13ch;
    text-align: center;
}

.events details {
    font-size: 0.8em;
    margin-top: 5px;
}

.events details summary {
    cursor: pointer;
}

.events details div {
    margin-top: 5px;
    padding-top: 5px;
    padding-bottom: 5px;
}

.past-event {
  color: var(--fg-inactive);
}

.past-event a {
  color: var(--fg-inactive);
}

img {
  max-width: 100%;
  height: auto;
}

.space {
  padding-bottom: 40px;
}

.citation {
  font-size: 0.9rem;
}

.lineup {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-start;
  padding: 0 .25rem;
}

.lineup-container {
  flex: 1 1 40%;
  min-width: 14rem;
  padding: 0rem;
  text-align: left;
}

.lineup-image {
  flex: 1 1 40%;
  text-align: right;
  min-width: 19.5rem;
  padding: 0rem;
  width: 100%;
  margin-top: 0.2rem;
}

.lineup-txt {
  text-align: left;
}

@media (max-width: 36rem) {
  .lineup {
    flex-direction: column;
    align-items: center;
  }
  .lineup-container, .lineup-image {
    flex: 1 1 100%;
    text-align: center;
  }
  .lineup-txt {
    text-align: center;
  }
}

.logo {
  align-items: center;
  padding: 0 0rem;
  width: 4.5rem;
  margin-top: -1rem;
}

.credits {
  min-width: 10rem;
}

.media {
  max-width: 100%;
  box-sizing: border-box;
  padding: 0 .25rem;
}

.media-contained {
  max-width: 100%;
  box-sizing: border-box;
  padding: 0 0;
}
