:root {
  --gs-outline-color: currentcolor;
  --gs-outline-style: solid;
  --gs-outline-size: max(2px, 0.1em);
}

video {
  display: block;
  height: auto;
  width: 100%;
}

.bar__title {
  list-style: none;
  opacity: 1;
}

.bar__title::-webkit-details-marker {
  display: none;
}

.bar__title::before {
  transform: rotate(0deg);
}

.bar[open] .bar__title::before {
  transform: rotate(180deg);
}

.bar__content,
.bar__items {
  display: block;
}

.blocks__item a {
  text-decoration: underline;
}

.button-group {
  display: flex;
  flex-flow: row wrap;
  gap: 0.5rem;
}

.button-group .btn:not(
  [href*="gsportvlaanderen.be"]
) {
  align-items: center;
  column-gap: 0.5em;
  display: flex;
  flex-flow: row nowrap;
}

.button-group .btn:not(
  [href*="gsportvlaanderen.be"]
):after {
  background-color: currentcolor;
  content: '';
  flex-shrink: 0;
  height: 1em;
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath d='M320 0c-17.7 0-32 14.3-32 32s14.3 32 32 32l82.7 0L201.4 265.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0L448 109.3l0 82.7c0 17.7 14.3 32 32 32s32-14.3 32-32l0-160c0-17.7-14.3-32-32-32L320 0zM80 32C35.8 32 0 67.8 0 112L0 432c0 44.2 35.8 80 80 80l320 0c44.2 0 80-35.8 80-80l0-112c0-17.7-14.3-32-32-32s-32 14.3-32 32l0 112c0 8.8-7.2 16-16 16L80 448c-8.8 0-16-7.2-16-16l0-320c0-8.8 7.2-16 16-16l112 0c17.7 0 32-14.3 32-32s-14.3-32-32-32L80 32z'/%3E%3C/svg%3E");
  mask-position: 50%;
  mask-size: contain;
  width: 1em;
}

.card--partner {
  --_spacing: clamp(15px, 5vw, 30px);

  align-items: start;
  background-color: #d5f3f0;
  border-radius: .8rem;
  display: flex;
  flex-flow: row wrap;
  gap: var(--_spacing);
  height: auto;
  justify-content: start;
  max-width: 60rem;
  padding: var(--_spacing);
  z-index: 0;
}

.card--partner a {
  border-radius: 0;
  color: inherit;
  position: static;
}

.card--partner :is(h2, h3, h4, h5, h6) > a:before {
  left: 0;
  top: 0;
  z-index: 1;
}

.card--partner + .card--partner {
  margin-top: 30px;
}

.card--partner .card__image {
  background-color: #FFF;
  border-radius: 5px;
  display: block;
  flex-grow: 1;
  flex-shrink: 0;
  max-width: 10rem;
  margin: 0;
  padding: 10px;
  width: 100%;
}

.card--partner .card__image:last-child {
  flex-grow: 0;
}

.card--partner .card__image picture {
  aspect-ratio: 1;
  margin: 0;
}

.card--partner .card__image img {
  height: 100%;
  object-fit: contain;
  object-position: 50%;
  width: 100%;
}

.card--partner .card__content {
  background-color: transparent;
  display: flex;
  flex-direction: column;
  height: auto;
  flex-basis: 0;
  flex-grow: 9999;
  min-width: 60%;
  padding: 0;
  row-gap: 1rem;
  transform: none;
}

.card--partner .card__content > :is(h2, h3, h4, h5, h6) {
  margin-bottom: 0.5rem;
}

.card--partner .card__content > * {
  margin-bottom: 0;
}

.c-grid .card--partner {
  flex-direction: column;
}

@media screen and (min-width: 640px) {
  .c-grid .card--partner + .card--partner {
    margin-top: 0;
  }
}

.embed {
  aspect-ratio: 16 / 9;
  background-color: #000;
  display: block;
  width: 100%;
}

.embed:is(iframe) {
  aspect-ratio: auto;
}

.filter--inline {
  display: flex;
  flex-flow: row wrap;
  gap: 2rem;
}

.filter--inline .filter__item {
  align-items: flex-start;
  flex-basis: 20%;
  flex-grow: 1;
  flex-direction: column;
  margin-bottom: 0;
  max-width: 20rem;
  min-width: 15rem;
  row-gap: 1rem;
}

.filter--inline .filter__item--button-group {
  flex-grow: 999;
  max-width: none;
}

@media all and (min-width: 600px) {
  .filter--inline .filter__item--button-group {
    min-width: 30rem;
  }
}

.filter--inline .filter__item-label {
  font-size: inherit;
  margin-bottom: 0;
  margin-right: 0;
  min-width: auto;
}

.filter--inline .filter__item-input--select,
.filter--inline .filter__item-input--select .select {
  width: 100%;
}

.filter--inline .filter__item-input--select .select {
  border-radius: 6px;
  margin: 0;
}

.filter__item-input--select .btn:active,
.filter__item-input--select .btn:focus,
.filter__item-input--select .btn:hover {
  background-color: #1a2bc2;
  border-color: #0e1561;
  color: #fff;
}

.header__middle .btn {
  background-color: #CC0044;
}

button.nav__link {
  background-color: transparent;
  border: 0;
  cursor: pointer;
  letter-spacing: inherit;
}

button.nav__link:before {
  height: 1em;
  line-height: 1em;
}

button.nav__link[aria-expanded="true"]:before {
  transform: rotate(180deg);
}

.subnav {
  border-top: 0;
  display: flex;
  visibility: visible;
}

@media screen and (min-width: 768px) {
  .subnav {
    margin-top: 15px;
  }
}

.subnav[aria-hidden="true"] {
  display: none;
}

.subnav__items li :is(h2, h3, h4, h5, h6) {
  font-size: inherit;
  font-weight: 700;
  line-height: inherit;
}

.select:has(
  select:focus-visible
) {
  outline: var(--gs-outline-size) var(--gs-outline-style) var(--gs-outline-color);
  outline-offset: var(--gs-outline-offset, var(--gs-outline-size));
}

.c-pagination {
  align-items: center;
  display: flex;
  flex-flow: row wrap;
  justify-content: center;
  gap: 1em;
  margin-top: 3rem;
}

.c-pagination__item a[aria-current="page"] {
  color: #1a2bc2;
  font-weight: 700;
  text-decoration: none;
}

a[data-fancybox="video"] {
  display: block;
  position: relative;
  z-index: 0;
}

a[data-fancybox="video"]:before,
a[data-fancybox="video"]:after {
  content: '';
  position: absolute;
  z-index: 1;
}

a[data-fancybox="video"]:before {
  background-color: rgba(255, 255, 255, 0.7);
  background-image: url('../img/icon-play.svg');
  background-position: 55% 50%;
  background-repeat: no-repeat;
  background-size: 1rem;
  border-radius: 100%;
  height: 3rem;
  left: 50%;
  transform: translate(-50%, -50%);
  top: 50%;
  width: 3rem;
}

a[data-fancybox="video"]:after {
  background-color: #fff;
  bottom: 0;
  height: 1rem;
  margin: 1rem;
  mask-image: url('../img/icon-full-screen.svg');
  mask-position: 50%;
  mask-repeat: no-repeat;
  mask-size: contain;
  right: 0;
  width: 1rem;
}

a[data-fancybox="video"]:hover:after,
a[data-fancybox="video"]:focus-visible:after {
  transform: scale(1.1);
}

.u-align-items-center {
  align-items: center;
}

.u-border-frame {
  background-color: #2ec4b5;
  border: 1rem solid transparent;
  border-radius: 1rem;
  overflow: hidden;
}

@media all and (min-width: 1240px) {
  .u-margin-inline-negative-900 {
    margin-inline: -20%;
  }

  .c-grid.u-order-reverse > :first-child {
    order: 9999;
  }
}
