/* =============================================================================
   Tables
   ========================================================================== */

table.ce-table td {
  border: 2px solid rgb(var(--c-neutral-lightest));
  background: rgb(var(--c-neutral-lighter));
  padding: 0.3rem 0.7rem;
}

.content > .frame:nth-child(2n) table.ce-table td {
  border: 2px solid rgb(var(--c-neutral-lighter));
  background: rgb(var(--c-neutral-lightest));
}

table.ce-table th,
table.ce-table caption {
  color: rgb(var(--c-neutral-lightest));
  background: rgb(var(--c-primary));
  font-family: var(--f-family);
  border: 2px solid rgb(var(--c-neutral-lightest));
  text-transform: uppercase;
  padding: 0.3rem 0.7rem;
}

.content > .frame:nth-child(2n) table.ce-table th,
.content > .frame:nth-child(2n) table.ce-table caption {
  border: 2px solid rgb(var(--c-neutral-lighter));
}

.ce-table-fixedRowWidth tr td:first-child {
  width: 15%
}

.ce-table-fixedRowWidth tr td:nth-child(2) {
  width: 15%
}

.ce-table-fixedRowWidth tr td:nth-child(3) {
  width: 35%
}

.ce-table-fixedRowWidth tr td:nth-child(4) {
  width: 15%
}

.ce-table-fixedRowWidth tr td:nth-child(5) {
  width: 20%
}

.ce-table-fixedRowWidth .premium::after,
.premium::after {
  content: '\f005';
  font-family: 'FaSolid', sans-serif;
  margin-left: 0.3rem;
  color: rgb(var(--c-special-star-table));
}


/* =============================================================================
   Standard contentelements
   ========================================================================== */

.grid__col.-w100 {
  overflow: visible;
}

.content__aside {
  margin-top: 2rem;
}

/* Uploads */
.uploads__item {
  background-color: rgb(var(--c-neutral-lighter));
}

.content > .frame:nth-child(2n) .uploads__item {
  background-color: rgb(var(--c-neutral-lightest));
}

.uploads__link {
  color: rgb(var(--c-neutral-dark));

  &[rel="noreferrer"]::after {
    display: none !important;
  }
}

.uploads__title {
  color: rgb(var(--c-primary));
  text-transform: uppercase;
  font-size: var(--f-size-l-1);
}

.uploads__arrowpath {
  stroke: rgb(var(--c-primary));
}

.no-touch .content > .frame:nth-child(2n) .uploads__item:hover,
.no-touch .uploads__item:hover {
  background-color: rgb(var(--c-primary));
}

.no-touch .uploads__item:hover,
.no-touch .uploads__item:hover .uploads__title {
  color: rgb(var(--c-neutral-lightest));
}

.no-touch .uploads__item:hover .uploads__arrowpath {
  stroke: rgb(var(--c-neutral-lightest));
}

/* Images */
.-border img,
.-border iframe {
  border: 1px solid rgb(var(--c-neutral-light));
}

.gallery__item a[data-fancybox]::before,
.media__image a::before {
  background-color: rgba(var(--c-primary), 0.6);
}

/* Menus */
.frame-type-menu_pages li a,
.frame-type-menu_sitemap li a {
  color: rgb(var(--c-neutral-dark));
}

.frame-type-menu_subpages li {
  border-top: 1px solid rgb(var(--c-neutral-lightest));
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
}

.frame-type-menu_subpages li:last-child {
  border-bottom: 1px solid rgb(var(--c-neutral-lightest));
}

/* Paginator */
ul.f3-widget-paginator {
  padding: 0;
  display: flex;
  flex-wrap: wrap;
}

ul.f3-widget-paginator li {
  list-style-type: none;
  width: 40px;
  height: 40px;
  line-height: 40px;
  margin: 0 5px 5px 0;
  text-align: center;
  background: rgb(var(--c-neutral-lighter));
}

ul.f3-widget-paginator a {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 100%;
  width: 100%;
}

.no-touch ul.f3-widget-paginator li:hover,
ul.f3-widget-paginator li.current {
  background: rgb(var(--c-primary));
  color: rgb(var(--c-neutral-lightest));
}

.no-touch ul.f3-widget-paginator li:hover a,
ul.f3-widget-paginator li.current a {
  color: rgb(var(--c-neutral-lightest));
}

ul.f3-widget-paginator li.previous a::after {
  content: '\f053';
  font-family: 'FaLight', sans-serif;;
  font-weight: normal;
  font-style: normal;
  text-decoration: inherit;
  -webkit-font-smoothing: antialiased;
  height: auto;
  line-height: normal;
  vertical-align: baseline;
  font-size: var(--f-size);
}

ul.f3-widget-paginator li.next a::after {
  content: '\f054';
  font-family: 'FaLight', sans-serif;
  font-weight: normal;
  font-style: normal;
  text-decoration: inherit;
  -webkit-font-smoothing: antialiased;
  height: auto;
  line-height: normal;
  vertical-align: baseline;
  font-size: var(--f-size);
}

/* Footer */
.footer {
  background-color: rgb(var(--c-primary-dark));
  position: relative;
  padding-top: 100px;
}

.footer,
.footer h3,
.footer a,
.footer a:hover {
  color: rgb(var(--c-neutral-lightest));
}

.footer a[rel="noreferrer"]:not(:has(span.font__button))::after {
  vertical-align: top;
  font-size: var(--f-size-s-2);
}

.footer__partner {
  padding: 2rem 0;
}

.footer__contact {
  padding: 0.5rem 0;
  background-color: rgb(var(--c-secondary));
}

.footer__contact .grid__col.-w80 {
  font-size: var(--f-size-s-1);
  grid-column: span 10;
}

.footer__contact .grid__col.-w20 {
  grid-column: span 2;
}

.footer__contact a,
.footer__contact {
  color: rgb(var(--c-neutral-lightest));
}

.footer__scroll {
  position: absolute;
  right: 0;
  top: 50px;
  width: 28px;
  height: 44px;
  background: url(../Images/sprites.svg) no-repeat 0 -160px;
  -webkit-background-size: 600px 600px;
  -moz-background-size: 600px 600px;
  -o-background-size: 600px 600px;
  background-size: 600px 600px;
  cursor: pointer;
}

#newsletterregistration__mail {
  background: transparent;
  border: none;
  border-bottom: 1px solid rgb(var(--c-neutral-lightest));
  color: rgb(var(--c-neutral-lightest));
  margin-right: 0.5rem;
  margin-bottom: 1rem;
  border-radius: 0;
}

#newsletterregistration__mail::placeholder {
  color: rgb(var(--c-neutral-lightest));
}

/* Login */
.frame-type-felogin_login fieldset {
  padding: 0;
  border: none;
  margin-top: 2rem;
}

.frame-type-felogin_login input[type=submit] {
  margin-top: 1rem;
}

/* =============================================================================
   Media Queries
   ========================================================================== */

@media (min-width: 1580px) {
  /* Footer */
  .footer__scroll {
    right: 2rem;
    top: 100px;
  }
}