:root {
  --color-primary: #090d1c;
  --color-secondary: #e1e1e1;
  --color-tertiary: #152143;
  --color-quartary: #302B27;
  --color-quintary: #F5F3F5;
  --header-font-size: 12px;
}

h1 {
  font-size: 30px;
  text-align: center;
}

h2 {
  font-weight: 300;
  font-size: 25px;
}

h3 {
  margin: 0;
  font-weight: 300;
}

h6 {
  margin: 0;
  font-size: 16px;
  font-weight: 300;
}

a {
  color: white;
}

.shadow {
  box-shadow: -1px 1px 11px -2px rgba(100, 100, 100, 0.75);
  -webkit-box-shadow: -1px 1px 11px -2px rgba(100, 100, 100, 0.75);
  -moz-box-shadow: -1px 1px 11px -2px rgba(100, 100, 100, 0.75);
}

.color-dark {
  color: var(--color-primary);
  background: var(--color-quintary);
}

.background-dark {
  background: var(--color-primary);
}

.flex-center {
  display: flex;
  justify-content: center;
  align-items: center;
}

.flex-column {
  flex-direction: column;
}

.grid {
  width: 100%;
  display: grid;
  grid-template-columns: 1fr;
  grid-gap: 10px;
}

.max-width {
  max-width: 1500px;
}

.card {
  width: 100%;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  color: var(--color-primary);
  margin: 0 0 1em 0;
  border-radius: 10px;
  overflow: hidden;
  border: solid 1px #e0e0e0;
}
.card .teaser {
  flex: 1;
  padding: 1em;
  font-size: 1.2rem;
  max-height: 300px;
}
.card .teaser .split {
  display: flex;
  justify-content: space-between;
}
.card .teaser .readmore {
  height: 20px;
  width: 100px;
  background-color: red;
  position: absolute;
  bottom: 0;
}
.card .teaser p {
  text-overflow: ellipsis;
}
.card .thumbnail {
  height: 300px;
  border-radius: 10px;
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
}

.form-container {
  padding: 1em;
  background: white;
}

@media only screen and (min-width: 650px) {
  h1 {
    font-size: 30px;
  }

  .grid {
    grid-template-columns: 1fr 1fr;
  }
}
@media only screen and (min-width: 1025px) {
  .grid {
    grid-template-columns: 1fr 1fr 1fr;
    grid-gap: 20px;
  }
}