/* Basic classes */

.visually-hidden {
  position: absolute !important;
  clip: rect(1px,1px,1px,1px);
  width: 1px;
  height: 1px;
  overflow: hidden;
}

/* This makes linkarea bigger. Parent needs position: relative. */
a.linkarea::before {
  position: absolute;
  inset: 0;
  content: '';
}

ul, ol {
  &.slim {
    margin: 0 0 4rem 0;
    list-style: none;
  }
}

.right {
  text-align: right;
}

.center {
  text-align: center;
}

.uppercase {
  text-transform: uppercase;
}

.button {
  border-radius: var(--br-small);
  background-color: var(--primary);
  padding: 0.8rem 1.6rem;
  color: white;
  font-weight: bold;
  text-decoration: none;

  &:hover,
  &:focus {
    background-color: white;
    color: var(--primary);
  }
}

.button.white {
  background-color: white;
  color: var(--primary);

  &:hover,
  &:focus {
    background-color: var(--primary);
    color: white;
  }
}

.rounded {
  margin-bottom: 4rem;
  border-radius: var(--br-big);
  background: white;
  padding: 3.2rem 0;
  overflow: hidden;
}
.searchform--open .rounded,
.menu__full--open .rounded {
  border-radius: 0 0 var(--br-big) var(--br-big);
}

.end {
  align-self: end;
}


/* Aktuelles */
.list__news {
  li {
    display: grid;
    position: relative;
    grid-template-columns: 184px 1fr;
    gap: var(--gap);
    margin-bottom: 4rem;
    list-style: none;

    img {
      border-radius: var(--br-big);
    }

    .date {
      color: var(--primary-60);
    }

    p,
    h2 {
      margin-bottom: 0;
    }
  }
}

/* Literatur */
.list__literature {
  display: block;
  margin-bottom: 5rem;

  li {
    display: grid;
    position: relative;
    grid-template-columns: 184px 1fr;
    gap: 24px;
    margin-bottom: 3rem;
    list-style: none;
  }

  .cover {
    display: grid;
    align-items: center;
    justify-items: center;
    border-radius: var(--br-big);
    background-color: var(--primary-light);
    padding: 1rem;
    aspect-ratio: 1 / 1;
    text-align: center;

    img {
      max-width: 90%;
      max-height: 90%;
    }
  }

  h2 {
    margin-bottom: 0;
    font-size: 1.8rem;
  }
}

/* Responsiveness */
@media (max-width: 600px) {
  .list__news {
    li {
      display: grid;
      grid-template-columns: 1fr;
      margin-bottom: 8rem;
    }
  }

  .list__literature {
    li {
      display: grid;
      grid-template-columns: 1fr;
      margin-bottom: 8rem;
    }
  }
}
