@charset "UTF-8";
.container-xxxl {
  --bs-gutter-x: 1.5rem;
  --bs-gutter-y: 0;
  width: 100%;
  padding-right: calc(var(--bs-gutter-x) * 0.5);
  padding-left: calc(var(--bs-gutter-x) * 0.5);
  margin-right: auto;
  margin-left: auto;
}
.container-xxxl.no-padding {
  padding-inline: 0;
}

@media screen and (min-width: 1200px) {
  .remove-padding .container-xxxl.no-padding {
    padding-inline: 1rem;
  }
}
/*@media screen and (min-width: 1400px) {
  .remove-padding {
    & > .container-xxxl {
      &.no-padding {
        padding-inline: 0;
      }
    }
  }
  .container-xxxl {
    max-width: 1440px;

    &.no-padding-xxxl {
      padding-right: calc(var(--bs-gutter-x) * 0.5);
      padding-left: calc(var(--bs-gutter-x) * 0.5);
    }
  }
}*/
@media (min-width: 1472px) {
  .remove-padding .container-xxxl.no-padding {
    padding-inline: 0;
  }
  .container-xxxl {
    max-width: 1440px;
  }
  .container-xxxl.no-padding-xxxl {
    padding-right: calc(var(--bs-gutter-x) * 0.5);
    padding-left: calc(var(--bs-gutter-x) * 0.5);
  }
}
@font-face {
  font-family: "BellGothicBlack";
  src: url("/static/fonts/BellGothic/Bell-Gothic_Black_BIV.woff2") format("woff2"), url("/static/fonts/BellGothic/Bell-Gothic_Black_BIV.woff") format("woff"), url("/static/fonts/BellGothic/Bell-Gothic_Black_BIV.eot") format("embedded-opentype"), url("/static/fonts/BellGothic/Bell-Gothic_Black_BIV.eot?#iefix") format("embedded-opentype");
  font-weight: normal;
  font-style: normal;
}
/*@font-face {
  font-family: 'BellGothicBlack';
  src: url('/static/fonts/BellGothic/Bell-Gothic_Light_BIV.woff2') format('woff2'),
  url('/static/fonts/BellGothic/Bell-Gothic_Light_BIV.woff') format('woff');
  font-weight: normal;
  font-style: normal;
}*/
@font-face {
  font-family: "SuisseWorks";
  src: url("/static/fonts/suisseworks/SuisseWorks-Book-WebS.woff2") format("woff2"), url("/static/fonts/suisseworks/SuisseWorks-Book-WebS.woff") format("woff"), url("/static/fonts/suisseworks/SuisseWorks-Book-WebS.eot") format("embedded-opentype"), url("/static/fonts/suisseworks/SuisseWorks-Book-WebS.eot?#iefix") format("embedded-opentype");
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: "SuisseWorks";
  src: url("/static/fonts/suisseworks/SuisseWorks-Bold-WebS.woff2") format("woff2"), url("/static/fonts/suisseworks/SuisseWorks-Bold-WebS.woff") format("woff"), url("/static/fonts/suisseworks/SuisseWorks-Bold-WebS.eot") format("embedded-opentype"), url("/static/fonts/suisseworks/SuisseWorks-Bold-WebS.eot?#iefix") format("embedded-opentype");
  font-weight: bold;
  font-style: normal;
}
:root {
  --bs-font-sans-serif: "SuisseWorks", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", "Liberation Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
}

h1, h2, h3 {
  font-family: "BellGothicBlack", "Segoe UI", sans-serif;
}

h1 {
  font-size: 32px;
  line-height: 32px;
  margin-block-start: 0.625rem;
  margin-block-end: 0.625rem;
  letter-spacing: 1px;
  text-transform: uppercase;
  word-wrap: break-word;
}

.fantoche-programm-title {
  font-size: 45px;
  line-height: 45px;
  margin-block-start: 0.625rem;
  margin-block-end: 0.625rem;
  letter-spacing: 1px;
  text-transform: uppercase;
  word-wrap: break-word;
}

h2 {
  font-size: 1.75rem;
  line-height: 1.875em;
  text-transform: uppercase;
}

h3 {
  font-size: 1.25rem;
}

h4 {
  font-size: 1.125rem;
}

h5 {
  letter-spacing: 1px;
  line-height: 1.125em;
}

a, p, strong, li, span, div {
  font-size: 1.125rem;
  line-height: 1.3em;
}

.location-type-title {
  font-size: 1.75rem;
  line-height: 1.2em;
}

.lead span, .lead p, .lead a, .lead li, .lead ul, .lead div, .lead strong {
  font-size: 1.375rem;
}

.fs-small {
  font-size: 0.875rem;
}

.fs-extra-small {
  font-size: 0.875rem;
}
.fs-extra-small > * {
  font-size: 0.875rem;
}

.ff-bell-gothic {
  font-family: BellGothicBlack, sans-serif;
}

.ff-suisse-works {
  font-family: SuisseWorks, sans-serif;
}

.fantoche-program-listing-title {
  padding-block: 0.75rem;
}

.copyright-div {
  font-size: 0.875rem;
}

.pimcore_area_wysiwyg h2, .sponsors-grid h2, .gallery-detail h2, .contest-detail h2, .movie-detail h2 {
  line-height: 1em;
}

.banner h2 {
  font-size: 1.125rem;
}

@media screen and (min-width: 768px) {
  .ff-md-bell-gothic {
    font-family: BellGothicBlack, sans-serif;
  }
  .banner h2 {
    font-size: 2rem;
  }
}
@media screen and (min-width: 992px) {
  h1 {
    font-size: 77px;
    line-height: 80px;
    margin-block-start: 0.625rem;
    margin-block-end: 0.625rem;
    letter-spacing: 1px;
    word-wrap: normal;
  }
  .fantoche-programm-title {
    font-size: 77px;
    line-height: 80px;
    margin-block-start: 0.625rem;
    margin-block-end: 0.625rem;
    letter-spacing: 1px;
    word-wrap: normal;
  }
  .pimcore_area_wysiwyg h1 {
    margin-block-start: 1rem;
  }
  h2 {
    font-size: 2rem;
  }
  h3 {
    font-size: 1.5rem;
  }
  h4 {
    font-size: 1.375rem;
  }
  a, p, strong, li, span, div {
    font-size: 1.25rem;
  }
  .location-type-title {
    font-size: 3.25rem;
    line-height: 1.875em;
  }
  .lead span, .lead p, .lead a, .lead li, .lead ul, .lead div, .lead strong {
    font-size: 1.875rem;
  }
  .fs-small {
    font-size: 1.125rem;
  }
  .fs-extra-small {
    font-size: 1rem;
  }
  .fs-extra-small > * {
    font-size: 1rem;
  }
  .fantoche-program-listing-title {
    font-size: 3.25rem;
    line-height: 1.05;
    padding-block: 1.4rem;
    letter-spacing: 1px;
  }
}
.bg-fantoche-primary {
  background-color: var(--primary-color);
}

.bg-fantoche-red {
  background-color: rgb(236, 81, 3) !important;
}

.bg-fantoche-orange {
  background-color: rgb(247, 162, 0) !important;
}

.bg-fantoche-green {
  background-color: rgb(6, 76, 4) !important;
}

.bg-fantoche-blue {
  background-color: rgb(78, 37, 131) !important;
}

.bg-fantoche-purple {
  background-color: rgb(78, 37, 131) !important;
}

.color-fantoche-red {
  color: rgb(236, 81, 3) !important;
}

.color-fantoche-orange {
  color: rgb(247, 162, 0) !important;
}

.color-fantoche-green {
  color: rgb(6, 76, 4) !important;
}

.color-fantoche-blue {
  color: rgb(78, 37, 131) !important;
}

.color-fantoche-purple {
  color: rgb(78, 37, 131) !important;
}

.color-fantoche-sold-out {
  color: rgb(236, 81, 3);
}

.remove-padding {
  margin-right: calc(var(--bs-gutter-x) * -0.5);
  margin-left: calc(var(--bs-gutter-x) * -0.5);
}

.remove-padding-right {
  margin-right: calc(var(--bs-gutter-x) * -0.5);
}

.remove-padding-left {
  margin-left: calc(var(--bs-gutter-x) * -0.5);
}

.arrow-link {
  display: grid;
  grid-template-columns: 17px auto;
  align-items: center;
  gap: 0.5rem;
  text-decoration: none;
  color: black;
}
.arrow-link.arrow-link-carousel:before {
  background-image: url("/static/images/icons/arrow-white.svg");
}
.arrow-link.arrow-link-carousel:hover:before {
  background-image: url("/static/images/icons/arrow-primary.svg");
}
.arrow-link:before {
  content: "";
  width: 17px;
  height: 13.5px;
  align-items: center;
  background-image: url("/static/images/icons/arrow.svg");
}
.arrow-link:hover:before {
  background-image: url("/static/images/icons/arrow-primary.svg");
}

.document-link {
  display: grid;
  grid-template-columns: 13.5px auto;
  align-items: center;
  gap: 0.5rem;
  text-decoration: none;
  color: black;
}
.document-link.document-link-carousel:before {
  background-image: url("/static/images/icons/document-white.svg");
}
.document-link.document-link-carousel:hover:before {
  background-image: url("/static/images/icons/document-primary.svg");
}
.document-link:before {
  content: "";
  width: 13.5px;
  height: 18px;
  align-items: center;
  background-image: url("/static/images/icons/document.svg");
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
}
.document-link:hover:before {
  background-image: url("/static/images/icons/document-primary.svg");
}

.other-topic-link {
  font-family: BellGothicBlack, sans-serif;
  text-transform: uppercase;
}

a {
  text-decoration: none;
  color: black;
}
a:hover {
  color: inherit;
}
a:hover:not(.no-hover) {
  color: var(--primary-color);
}

.text-two-columns {
  column-count: 1;
  column-gap: 1rem;
}

.filter-grid {
  display: grid;
  grid-column: 1;
  grid-auto-columns: 1fr;
}
.filter-grid > div {
  height: fit-content;
}

.form-check-input:checked {
  border-color: var(--primary-color);
  background-color: var(--primary-color);
}
.form-check-input:active, .form-check-input:focus {
  box-shadow: 0 0 0 0.25rem rgba(35, 191, 117, 0.25);
}

.hamburger-parent {
  margin-block: 1rem;
}
.hamburger-parent .hamburger {
  line-height: 0;
}
.hamburger-parent .hamburger .hamburger-box {
  width: 2rem;
  height: 2rem;
}
.hamburger-parent .hamburger .hamburger-box .hamburger-inner {
  height: 2px;
  width: 100%;
  border-radius: 0;
}
.hamburger-parent .hamburger .hamburger-box .hamburger-inner:before {
  height: 2px;
  top: -10px;
}
.hamburger-parent .hamburger .hamburger-box .hamburger-inner:after {
  height: 2px;
  bottom: -10px;
}
.hamburger-parent .hamburger .hamburger-box .hamburger-inner:before, .hamburger-parent .hamburger .hamburger-box .hamburger-inner:after {
  border-radius: 0;
  width: 100%;
}
.hamburger-parent .hamburger.is-active .hamburger-box .hamburger-inner:after {
  bottom: 0;
}

.px-4-5 {
  padding-inline: 1.5rem;
}

.px-custom-1 {
  padding-inline: 2.5rem;
}

.px-custom-2 {
  padding-inline: 1.5rem;
}

.px-custom-3 {
  padding-inline: 1rem;
}

.px-custom-4 {
  padding-inline: 0.125rem;
}

.py-custom-1 {
  padding-block: 0.125rem;
}

.py-custom-2 {
  padding-block: 1.375rem;
}

.mt-custom-1 {
  margin-block-start: 0.625rem;
}

.mb-custom-1 {
  margin-block-end: 0.625rem;
}

.object-fit-cover {
  width: 100%;
  object-fit: cover;
  object-position: center center;
}

.header-image {
  height: 100%;
  max-height: 210px;
}

.pimcore_area_image {
  padding-inline: 0;
}

.letter-spacing-small h1, .letter-spacing-small h2, .letter-spacing-small h3 {
  letter-spacing: 0.05em;
}

.program-listing-category-title {
  text-transform: none;
}

textarea.form-control, input.form-control {
  border-radius: 0;
  border: 2px solid black;
}

.badge-danger {
  background-color: var(--bs-danger);
}

.required:not(.custom-control-label):after {
  content: " *";
}

.formbuilder-row button.btn {
  background-color: white;
  color: black;
  border-radius: 0;
  border: 2px solid black;
  transition: all 0.3s ease-in-out;
}
.formbuilder-row button.btn:hover {
  border: 2px solid black;
  background-color: var(--primary-color);
  color: white;
}

.col-custom-padding-inline {
  padding-inline: 0.6rem;
}

.col-custom-padding-inline-start {
  padding-inline-start: 0.6rem;
}

.col-custom-padding-inline-end {
  padding-inline-end: 0.6rem;
}

.col-custom-padding-inline-2 {
  padding-inline: 1rem;
}

.col-custom-padding-inline-start-2 {
  padding-inline-start: 1rem;
}

.col-custom-padding-inline-end-2 {
  padding-inline-end: 1rem;
}

.card-row-padding {
  padding-inline: 0;
}

.gx-custom-1 {
  --bs-gutter-x: 6rem;
}

.text-black {
  color: black;
}

.pimcore_area_wysiwyg .text-black {
  color: black;
}
.pimcore_area_wysiwyg .text-black > * {
  color: black;
}

.h-0 {
  height: 0 !important;
}

.form-check-input[type=checkbox] {
  border-radius: 0;
}

.custom-radio {
  display: flex;
  align-items: first baseline;
  gap: 0.25rem;
}
.custom-radio > input[type=radio] {
  margin-top: 0.25rem;
}

iframe[data-type=pimcore_video_editable] {
  width: 100% !important;
  height: auto !important;
  aspect-ratio: 16/9;
}

.pimcore_area_two-column.pimcore_area_content .left-column div.pimcore_area_wysiwyg {
  border-bottom: 2px solid black;
}
.pimcore_area_two-column.pimcore_area_content .left-column div.pimcore_area_wysiwyg h2 {
  margin-bottom: 1rem;
}

.border-bottom-custom-1 {
  border-bottom: 2px solid black;
  margin-block-end: 0.5rem;
}
.border-bottom-custom-1 h2 {
  margin-block-end: 0.5rem;
}

sup {
  vertical-align: middle;
  font-size: 50%;
}

.gallery-icon {
  height: 32px;
}

@media screen and (min-width: 768px) {
  .header-image {
    max-height: 800px;
  }
  .col-md-custom-padding-inline-2 {
    padding-inline: 0.5rem;
  }
  .col-md-custom-padding-inline-start-2 {
    padding-inline-start: 0.5rem;
  }
  .col-md-custom-padding-inline-end-2 {
    padding-inline-end: 0.5rem;
  }
  .card-row-padding {
    padding-inline: 0.5rem;
  }
  .pimcore_area_two-column.pimcore_area_content .left-column div.pimcore_area_wysiwyg {
    border-bottom: 0;
  }
  .pimcore_area_two-column.pimcore_area_content .left-column div.pimcore_area_wysiwyg h2 {
    margin-bottom: 0.5rem;
  }
  .border-bottom-custom-1 {
    border-bottom: 0;
    margin-block-end: 0;
  }
  .border-bottom-custom-1 h2 {
    margin-block-end: 0.5rem;
  }
  .gallery-icon {
    height: 40px;
  }
  .program-listing-category-title {
    text-transform: uppercase;
  }
}
@media screen and (min-width: 992px) {
  .text-two-columns {
    column-count: 2;
  }
  .filter-grid {
    grid-column: 2;
    grid-template-columns: repeat(2, 1fr);
  }
  .filter-grid > div {
    height: fit-content;
  }
  .hamburger-parent {
    margin-block: auto;
  }
  .hamburger-parent .hamburger .hamburger-box {
    width: 3rem;
    height: 2.5rem;
  }
  .hamburger-parent .hamburger .hamburger-box .hamburger-inner {
    height: 3px;
    width: 100%;
    border-radius: 0;
  }
  .hamburger-parent .hamburger .hamburger-box .hamburger-inner:before {
    height: 3px;
    top: -15px;
  }
  .hamburger-parent .hamburger .hamburger-box .hamburger-inner:after {
    height: 3px;
    bottom: -15px;
  }
  .hamburger-parent .hamburger .hamburger-box .hamburger-inner:before, .hamburger-parent .hamburger .hamburger-box .hamburger-inner:after {
    width: 100%;
    border-radius: 0;
  }
  .header-image {
    max-height: 800px;
  }
  .program-listing-category-title {
    text-transform: uppercase;
  }
  .col-lg-custom-padding-inline-2 {
    padding-inline: 0.5rem;
  }
  .col-lg-custom-padding-inline-start-2 {
    padding-inline-start: 0.5rem;
  }
  .col-lg-custom-padding-inline-end-2 {
    padding-inline-end: 0.5rem;
  }
}
@media screen and (min-width: 1200px) {
  .card-row-padding {
    padding-inline: 2rem;
  }
}
@media screen and (min-width: 1400px) {
  .px-custom-xxl-3 {
    padding-inline: 1rem;
  }
}
header .header-logo {
  height: 32px;
}
header .header-lead {
  height: 40px;
}
header .nav-icon {
  height: 36px;
  width: auto;
}
header .text-bold {
  font-weight: bold;
}
header .language-chooser {
  font-family: BellGothicBlack, sans-serif;
  font-size: 0.875rem;
}
header span.fantoche-logo-text {
  font-size: 45px;
  line-height: 45px;
  margin-block-start: 0.75rem;
  margin-block-end: 0;
  letter-spacing: 1px;
}
header span.fantoche-logo-lead {
  font-size: 14px;
  line-height: 16px;
  letter-spacing: 1px;
  margin-block-end: 0.75rem;
}
header span.fantoche-logo-lead > br {
  font-size: 13px;
}
header .fantoche-header-link {
  font-size: 17px;
  letter-spacing: 0.8px;
}
header .header-icons-gap {
  gap: 2.25rem;
}

#sideNavigation {
  width: 100%;
  right: -100%;
  top: 0;
  z-index: 9;
  transition: right 0.3s ease-in-out;
  background-color: white;
  min-height: calc(100vh - 137px);
  height: 100%;
  font-family: BellGothicBlack, sans-serif;
}
#sideNavigation.opened {
  right: 0;
  overflow: auto;
}
#sideNavigation .nav-item {
  border-bottom: 2px solid black;
  padding-block: 0.6rem;
}
#sideNavigation .nav-item.nav-item-small {
  padding-block: 0;
  border-bottom: none;
  font-size: 1.125rem;
}
#sideNavigation .nav-item.nav-item-small > a {
  font-weight: normal;
  font-size: 1rem;
  line-height: 1.42em;
}
#sideNavigation .nav-item.nav-item-small .collapse a, #sideNavigation .nav-item.nav-item-small .collapsing a {
  font-size: 1rem;
  line-height: 1.3em;
}
#sideNavigation .nav-item > a {
  font-size: 1.625rem;
  font-weight: normal;
  text-transform: uppercase;
  width: 100%;
  height: 100%;
  letter-spacing: 1px;
  line-height: 1.375em;
}
#sideNavigation .nav-item .collapse a, #sideNavigation .nav-item .collapsing a {
  text-decoration: none;
  color: black;
  font-size: 1.5rem;
  font-weight: normal;
  font-family: "SuisseWorks", Serif, serif;
  line-height: 1.2em;
}
#sideNavigation .nav-item .language-chooser {
  font-family: BellGothicBlack, sans-serif;
  font-size: 1.25rem;
}

.child-item.active:before {
  content: "·";
  position: absolute;
  left: 0.8rem;
}

@media screen and (min-width: 576px) {
  header .header-logo {
    height: 50px;
  }
  header .nav-icon {
    height: 50px;
  }
  #sideNavigation {
    width: 488px;
    right: -488px;
    min-height: calc(100vh - 155px);
    height: 100%;
  }
}
@media screen and (min-width: 768px) {
  header .header-logo {
    height: 50px;
  }
  header .nav-icon {
    height: 28px;
  }
  #sideNavigation {
    min-height: calc(100vh - 98.5px);
    height: 100%;
  }
  .child-item.active:before {
    content: "·";
    position: absolute;
    left: 1.5rem;
  }
}
@media screen and (min-width: 992px) {
  header .header-logo {
    height: 60px;
  }
  header .nav-icon {
    height: 32px;
  }
  header span.fantoche-logo-text {
    font-size: 77px;
    line-height: 80px;
    margin-block-start: 12px;
    margin-block-end: 8px;
    letter-spacing: 1px;
  }
  header span.fantoche-logo-lead {
    font-size: 17px;
    line-height: 21px;
    letter-spacing: 1px;
    margin-block-end: 0;
  }
  header .fantoche-header-link {
    font-size: 17px;
    letter-spacing: 0.8px;
  }
  header .header-icons-gap {
    gap: 2.25rem;
  }
  #sideNavigation {
    min-height: calc(100vh - 98.5px);
    height: 100%;
  }
  #sideNavigation .nav-item.nav-item-small {
    font-size: 1.25rem;
  }
  #sideNavigation .nav-item.nav-item-small > a {
    font-size: 1.3125rem;
  }
  #sideNavigation .nav-item.nav-item-small .collapse a, #sideNavigation .nav-item.nav-item-small .collapsing a {
    font-size: 1.125rem;
  }
  #sideNavigation .nav-item > a {
    font-size: 2rem;
    letter-spacing: 1px;
  }
  #sideNavigation .nav-item .collapse a, #sideNavigation .nav-item .collapsing a {
    font-size: 1.875rem;
  }
  #sideNavigation .nav-item-small:first-child {
    margin-top: 1rem;
  }
}
@media screen and (min-width: 1200px) {
  header .header-logo {
    height: 64px;
  }
  header .header-lead {
    height: 56px;
  }
  header .nav-icon {
    height: 36px;
  }
  #sideNavigation {
    min-height: calc(100vh - 100px);
    height: 100%;
  }
}
@media screen and (min-width: 1400px) {
  header .header-logo {
    height: 64px;
  }
  header .header-lead {
    height: 60px;
  }
  header .nav-icon {
    height: 38px;
  }
  #sideNavigation {
    min-height: calc(100vh - 100px);
    height: 100%;
  }
}
#footer .banner {
  color: white;
  text-transform: uppercase;
}
#footer .banner .pimcore_editable_wysiwyg {
  color: black;
}
#footer .banner > div {
  /*margin-right: calc(var(--bs-gutter-x) * 0.5);
  margin-left: calc(var(--bs-gutter-x) * 0.5);*/
}
#footer .banner > div h2 {
  margin-bottom: 0;
}
#footer .footer-columns {
  border-top: 2px solid black;
}
#footer .footer-columns a, #footer .footer-columns p, #footer .footer-columns li, #footer .footer-columns strong, #footer .footer-columns span, #footer .footer-columns div {
  font-size: 0.875rem;
}
#footer .footer-columns a img {
  width: auto;
  height: 24px;
}

@media screen and (min-width: 992px) {
  #footer .footer-columns a, #footer .footer-columns p, #footer .footer-columns li, #footer .footer-columns strong, #footer .footer-columns span, #footer .footer-columns div {
    font-size: 1.125rem;
  }
}
#newsDetail h5 {
  font-family: "BellGothicBlack", "Segoe UI", sans-serif;
}
#newsDetail img.news-header-image {
  margin-right: calc(var(--bs-gutter-x) * -0.5);
  margin-left: calc(var(--bs-gutter-x) * -0.5);
  margin-bottom: 2rem;
  width: 100%;
  height: 100%;
  max-height: 800px;
}

#programDetail h1 {
  font-size: 2rem;
  line-height: 2rem;
}
#programDetail h2 {
  line-height: 1em;
}
#programDetail h5 {
  font-family: BellGothicBlack, "Segoe UI", sans-serif;
}
#programDetail span.fs-small a {
  font-size: 0.875rem;
}
#programDetail .description > * {
  font-size: 1.375rem;
}
#programDetail img.news-header-image {
  margin-right: calc(var(--bs-gutter-x) * -0.5);
  margin-left: calc(var(--bs-gutter-x) * -0.5);
  margin-bottom: 2rem;
  max-width: 100%;
  height: auto;
}
#programDetail .img-favorite {
  cursor: pointer;
  /*path {
    fill: #ffffff;
  }

  &.active {
    path {
      fill: #0C0B0B;
    }
  }*/
}
#programDetail .description-accordion .accordion {
  text-align: left;
}
#programDetail .description-accordion .accordion .accordion-item .accordion-collapse .accordion-body {
  padding-inline: 0;
}
#programDetail .description-accordion .accordion .accordion-item h2 .accordion-button {
  padding-inline: 0;
  padding-block-start: 0;
  border: none;
  box-shadow: none;
}
#programDetail .description-accordion .accordion .accordion-item h2 .accordion-button:focus, #programDetail .description-accordion .accordion .accordion-item h2 .accordion-button:active {
  box-shadow: none;
  border: none;
}
#programDetail .description-accordion .accordion .accordion-item h2 .accordion-button:not(.collapsed) {
  color: white;
  background-color: white;
}
#programDetail .description-accordion .accordion .accordion-item h2 .accordion-button:not(.collapsed):after {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='var%28--primary-color%29'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");
}
#programDetail .description-accordion .accordion .accordion-item h2 .accordion-button:after {
  margin-left: 0;
}
#programDetail .card {
  border-radius: 0;
  border: none;
}
#programDetail .card h5 {
  font-family: BellGothicBlack, "Segoe UI", sans-serif;
  font-size: 1.25rem;
  line-height: 1.375rem;
  text-transform: uppercase;
}
#programDetail .card span {
  font-size: 1rem;
}
#programDetail .card .card-header {
  width: 100%;
  border: none;
  border-radius: 0;
  height: 100%;
}
#programDetail .card .card-img, #programDetail .card .card-img-top {
  border-radius: 0;
  height: auto;
}
#programDetail .card .card-body a {
  color: black;
  font-size: 1rem;
}
#programDetail .card .card-body a:hover {
  color: var(--primary-color);
}
#programDetail .card .card-body p {
  margin-bottom: 0;
}
#programDetail .card .card-body .accordion {
  text-align: left;
}
#programDetail .card .card-body .accordion .accordion-item .accordion-collapse .accordion-body {
  padding-inline: 0;
}
#programDetail .card .card-body .accordion .accordion-item h2 .accordion-button {
  padding-inline: 0;
  padding-block-start: 0;
  border: none;
  box-shadow: none;
}
#programDetail .card .card-body .accordion .accordion-item h2 .accordion-button:focus, #programDetail .card .card-body .accordion .accordion-item h2 .accordion-button:active {
  box-shadow: none;
  border: none;
}
#programDetail .card .card-body .accordion .accordion-item h2 .accordion-button:not(.collapsed) {
  color: white;
  background-color: white;
}
#programDetail .card .card-body .accordion .accordion-item h2 .accordion-button:not(.collapsed):after {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='var%28--primary-color%29'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");
}
#programDetail .card .card-body .accordion .accordion-item h2 .accordion-button:after {
  margin-left: 0;
}

#favorites-listing h1 {
  font-size: 2rem;
}
#favorites-listing h5 {
  font-family: BellGothicBlack, "Segoe UI", sans-serif;
}
#favorites-listing .description > * {
  font-size: 1.375rem;
}
#favorites-listing img.news-header-image {
  margin-right: calc(var(--bs-gutter-x) * -0.5);
  margin-left: calc(var(--bs-gutter-x) * -0.5);
  margin-bottom: 2rem;
  max-width: 100%;
  height: auto;
}
#favorites-listing .img-favorite {
  cursor: pointer;
}
#favorites-listing .img-favorite path {
  fill: #ffffff;
}
#favorites-listing .img-favorite.active path {
  fill: #0C0B0B;
}
#favorites-listing .card {
  border-radius: 0;
  border: none;
}
#favorites-listing .card h5 {
  font-family: BellGothicBlack, "Segoe UI", sans-serif;
  font-size: 1.25rem;
  line-height: 1.375rem;
  text-transform: uppercase;
}
#favorites-listing .card p, #favorites-listing .card span {
  font-size: 1rem;
}
#favorites-listing .card .card-header {
  width: 100%;
  border: none;
  border-radius: 0;
  height: 100%;
}
#favorites-listing .card .card-img, #favorites-listing .card .card-img-top {
  border-radius: 0;
  height: auto;
}
#favorites-listing .card .card-body a {
  color: black;
  font-size: 1rem;
}
#favorites-listing .card .card-body a:hover {
  color: var(--primary-color);
}
#favorites-listing .card .card-body p {
  margin-bottom: 0;
}
#favorites-listing .card .card-body .accordion .accordion-item .accordion-collapse .accordion-body {
  padding-inline: 0;
}
#favorites-listing .card .card-body .accordion .accordion-item h2 .accordion-button {
  padding-inline: 0;
  padding-block-start: 0;
  border: none;
  box-shadow: none;
}
#favorites-listing .card .card-body .accordion .accordion-item h2 .accordion-button:focus, #favorites-listing .card .card-body .accordion .accordion-item h2 .accordion-button:active {
  box-shadow: none;
  border: none;
}
#favorites-listing .card .card-body .accordion .accordion-item h2 .accordion-button:not(.collapsed) {
  color: white;
  background-color: white;
}
#favorites-listing .card .card-body .accordion .accordion-item h2 .accordion-button:not(.collapsed):after {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='var%28--primary-color%29'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");
}
#favorites-listing .card .card-body .accordion .accordion-item h2 .accordion-button:after {
  margin-left: 0;
}

@media screen and (min-width: 992px) {
  #programDetail h1, #favorites-listing h1 {
    font-size: 77px;
    line-height: 80px;
  }
  #programDetail .description > *, #favorites-listing .description > * {
    font-size: 1.875rem;
  }
  #programDetail span.fs-small a, #favorites-listing span.fs-small a {
    font-size: 1.125rem;
  }
}
#movieDetail .accordion {
  text-align: left;
}
#movieDetail .accordion .accordion-item .accordion-collapse .accordion-body {
  padding-inline: 0;
}
#movieDetail .accordion .accordion-item h2 .accordion-button {
  padding-inline: 0;
  padding-block-start: 0;
  border: none;
  box-shadow: none;
}
#movieDetail .accordion .accordion-item h2 .accordion-button:focus, #movieDetail .accordion .accordion-item h2 .accordion-button:active {
  box-shadow: none;
  border: none;
}
#movieDetail .accordion .accordion-item h2 .accordion-button:not(.collapsed) {
  color: white;
  background-color: white;
}
#movieDetail .accordion .accordion-item h2 .accordion-button:not(.collapsed):after {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='var%28--primary-color%29'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");
}
#movieDetail .accordion .accordion-item h2 .accordion-button:after {
  margin-left: 0;
}

.gallery-carousel {
  margin-right: calc(var(--bs-gutter-x) * -0.5);
  margin-left: calc(var(--bs-gutter-x) * -0.5);
  transition: height 0.3s ease-in-out;
}
.gallery-carousel.mobile-portrait-mode .carousel-inner {
  height: auto;
}
.gallery-carousel.mobile-portrait-mode .carousel-inner .carousel-item img.header-image {
  pointer-events: none;
  height: 530px;
  max-height: 530px;
  object-fit: cover;
}
.gallery-carousel .carousel-indicators {
  margin-bottom: 1rem;
  justify-content: start;
}
.gallery-carousel .carousel-indicators [data-bs-target] {
  box-sizing: border-box;
  border-radius: 100%;
  width: 0.875rem;
  height: 0.875rem;
  margin-left: 0.25rem;
  margin-right: 0.25rem;
  border: 2px solid white;
  background-color: transparent;
  opacity: 1;
  background-clip: border-box;
}
.gallery-carousel .carousel-indicators [data-bs-target].active {
  background-color: white;
}
.gallery-carousel .carousel-inner {
  height: auto;
}
.gallery-carousel .carousel-inner .carousel-item img.header-image {
  pointer-events: none;
  height: auto;
  aspect-ratio: 3/2;
  object-fit: cover;
}
.gallery-carousel .carousel-inner .carousel-item h2 {
  line-height: 1.3em;
  font-size: 2rem;
}
.gallery-carousel .carousel-inner .carousel-item a {
  color: white;
}
.gallery-carousel .carousel-inner .carousel-item a:before {
  background-image: url("/static/images/icons/arrow-white.svg");
}
.gallery-carousel .carousel-inner .carousel-item a:hover {
  color: var(--primary-color);
}
.gallery-carousel .carousel-inner .carousel-item a:hover:before {
  background-image: url("/static/images/icons/arrow-primary.svg");
}
.gallery-carousel .carousel-inner .carousel-item .carousel-text-lead {
  font-size: 1.25rem;
}
.gallery-carousel .carousel-inner .carousel-item .carousel-text-lead > * {
  font-size: 1.25rem;
}
.gallery-carousel .carousel-inner .carousel-item .gallery-image-container {
  width: 100%;
}
.gallery-carousel .carousel-inner .carousel-item .gallery-image-container #toggle-gallery-description {
  left: 50%;
  transform: translateX(-50%);
}
.gallery-carousel .carousel-inner .carousel-item .gallery-description-container {
  width: 100%;
  height: 530px;
  transition: height 0.3s ease-in-out;
}
.gallery-carousel .carousel-inner .carousel-item .gallery-description-container.description-opened {
  height: 530px;
}

@media screen and (min-width: 768px) {
  .gallery-carousel.mobile-portrait-mode .carousel-inner, .gallery-carousel.mobile-landscape-mode .carousel-inner {
    height: 800px;
  }
  .gallery-carousel.mobile-portrait-mode .carousel-inner.editmode, .gallery-carousel.mobile-landscape-mode .carousel-inner.editmode {
    min-height: 800px;
    height: auto;
  }
  .gallery-carousel.mobile-portrait-mode .carousel-inner .carousel-item .pimcore_editable_image, .gallery-carousel.mobile-landscape-mode .carousel-inner .carousel-item .pimcore_editable_image {
    z-index: 1;
  }
  .gallery-carousel.mobile-portrait-mode .carousel-inner .carousel-item img.header-image, .gallery-carousel.mobile-landscape-mode .carousel-inner .carousel-item img.header-image {
    height: 800px;
    max-height: 800px;
  }
  .gallery-carousel.mobile-portrait-mode .carousel-inner .carousel-item img.header-image.editmode, .gallery-carousel.mobile-landscape-mode .carousel-inner .carousel-item img.header-image.editmode {
    height: auto;
    max-height: none;
  }
  .gallery-carousel.mobile-portrait-mode .carousel-inner .carousel-item h2, .gallery-carousel.mobile-landscape-mode .carousel-inner .carousel-item h2 {
    font-size: 2.5rem;
  }
  .gallery-carousel.mobile-portrait-mode .carousel-inner .carousel-item .gallery-description-container, .gallery-carousel.mobile-landscape-mode .carousel-inner .carousel-item .gallery-description-container {
    height: auto;
  }
  .gallery-carousel.mobile-portrait-mode .carousel-inner .carousel-item .carousel-text-lead, .gallery-carousel.mobile-landscape-mode .carousel-inner .carousel-item .carousel-text-lead {
    font-size: 1.5rem;
  }
  .gallery-carousel.mobile-portrait-mode .carousel-inner .carousel-item .carousel-text-lead > *, .gallery-carousel.mobile-landscape-mode .carousel-inner .carousel-item .carousel-text-lead > * {
    font-size: 1.5rem;
  }
  .gallery-carousel .carousel-indicators {
    margin-bottom: 2.5rem;
    justify-content: start;
  }
  .gallery-carousel .carousel-indicators [data-bs-target] {
    width: 1.125rem;
    height: 1.125rem;
    margin-left: 0.5rem;
    margin-right: 0.5rem;
  }
}
@media screen and (min-width: 1200px) {
  .gallery-carousel.mobile-portrait-mode .carousel-inner .carousel-item h2, .gallery-carousel.mobile-landscape-mode .carousel-inner .carousel-item h2 {
    font-size: 3.125rem;
  }
  .gallery-carousel.mobile-portrait-mode .carousel-inner .carousel-item .carousel-text-lead, .gallery-carousel.mobile-landscape-mode .carousel-inner .carousel-item .carousel-text-lead {
    font-size: 1.875rem;
  }
  .gallery-carousel.mobile-portrait-mode .carousel-inner .carousel-item .carousel-text-lead > *, .gallery-carousel.mobile-landscape-mode .carousel-inner .carousel-item .carousel-text-lead > * {
    font-size: 1.875rem;
  }
}
.news-teaser-padding {
  padding-inline: 0.625rem;
}

.news-grid {
  margin-block: 1rem;
}
.news-grid .card {
  border-radius: 0;
  border: none;
}
.news-grid .card h5 {
  font-family: "BellGothicBlack", "Segoe UI", sans-serif;
  font-size: 1.625rem;
  letter-spacing: 0;
  text-transform: uppercase;
  font-weight: normal;
}
.news-grid .card .card-header {
  width: 100%;
  border: none;
  border-radius: 0;
  height: auto;
  aspect-ratio: 3/2;
}
.news-grid .card .card-header h5.card-header-big {
  font-size: 1.625rem;
  line-height: 1.1em;
}
.news-grid .card .card-img, .news-grid .card .card-img-top {
  border-radius: 0;
  height: auto;
  aspect-ratio: 3/2;
}
.news-grid .card .card-body {
  padding-block-start: 0.75rem;
  padding-block-end: 1.25rem;
}
.news-grid .card .card-body a {
  color: black;
}
.news-grid .card .card-body a:hover {
  color: var(--primary-color);
}
.news-grid .card .card-body a:hover svg path {
  fill: var(--primary-color);
}
.news-grid .card .card-body a:hover .arrow-link {
  color: var(--primary-color);
}
.news-grid .card .card-body a:hover .arrow-link:before {
  background-image: url("/static/images/icons/arrow-primary.svg");
}

@media screen and (min-width: 768px) {
  .news-grid {
    margin-bottom: 1.25rem;
  }
}
@media screen and (min-width: 992px) {
  .news-grid {
    margin-bottom: 1.25rem;
  }
  .news-grid .card h5 {
    font-size: 2rem;
  }
  .news-grid .card .card-header h5.card-header-big {
    font-size: 3.125rem;
  }
}
.team-grid .card p {
  margin-bottom: 0 !important;
}

.text-carousel {
  margin-bottom: 2rem;
}
.text-carousel .col {
  /*margin-right: calc(var(--bs-gutter-x) * -0.5);
  margin-left: calc(var(--bs-gutter-x) * -0.5);*/
}
.text-carousel .col .card {
  border: none;
  border-radius: 0;
}
.text-carousel .col .card .carousel .carousel-inner .carousel-item .carousel-caption {
  top: 1.5rem;
  bottom: auto;
  right: auto;
  left: 0;
  text-align: left;
}
.text-carousel .col .card .carousel .carousel-inner .carousel-item .carousel-caption h5 {
  font-family: BellGothicBlack, "Segoe UI", sans-serif;
  font-size: 1.625rem;
  line-height: 1.875rem;
  letter-spacing: 2px;
  text-transform: uppercase;
  font-weight: bold;
}
.text-carousel .col .card .carousel .carousel-indicators [data-bs-target] {
  border-radius: 100%;
  width: 1rem;
  height: 1rem;
  margin-left: 0.5rem;
  margin-right: 0.5rem;
  border: 2px solid white;
  background-color: transparent;
  opacity: 1;
  background-clip: border-box;
}
.text-carousel .col .card .carousel .carousel-indicators [data-bs-target].active {
  background-color: white;
}

@media screen and (min-width: 992px) {
  .text-carousel .col .card .carousel .carousel-inner .carousel-item .carousel-caption h5 {
    font-size: 2rem;
    line-height: 2.25rem;
  }
}
#map {
  height: 530px;
}

@media screen and (min-width: 768px) {
  #map {
    height: 800px;
  }
}
.grid-general {
  margin-block-end: 2rem;
}
.grid-general .card {
  border: 0;
  border-radius: 0;
}
.grid-general .card h5 {
  font-family: BellGothicBlack, "Segoe UI", sans-serif;
  font-size: 1.5rem;
  line-height: 1.625rem;
  text-transform: uppercase;
}
.grid-general .card p {
  font-size: 1.125rem;
}
.grid-general .card .card-header {
  width: 100%;
  border: 0;
  border-radius: 0;
  height: 100%;
}
.grid-general .card .card-img, .grid-general .card .card-img-top {
  border-radius: 0;
  height: auto;
  aspect-ratio: 3/2;
}
.grid-general .card .card-body {
  padding-block-start: 0.75rem;
  padding-block-end: 1.25rem;
}
.grid-general .card .card-body a {
  color: black;
}
.grid-general .card .card-body a:hover {
  color: var(--primary-color);
}
.grid-general .card .card-body a:hover svg path {
  fill: var(--primary-color);
}
.grid-general .card .card-body a:hover .arrow-link {
  color: var(--primary-color);
}
.grid-general .card .card-body a:hover .arrow-link:before {
  background-image: url("/static/images/icons/arrow-primary.svg");
}

@media screen and (min-width: 992px) {
  .grid-general .card h5 {
    font-size: 1.5rem;
    line-height: 1.75rem;
  }
  .grid-general .card p {
    font-size: 1.25rem;
  }
  .grid-general .card .card-body a {
    font-size: 1.25rem;
  }
}
.copyright-wrapper {
  background-color: transparent;
  transition: background-color 1s;
}
.copyright-wrapper.active {
  background-color: black;
}
.copyright-wrapper .copyright-div {
  opacity: 0;
  transition: opacity 0.3s;
}
.copyright-wrapper .copyright-div.fade {
  opacity: 1;
}

* {
  box-sizing: border-box;
  --bs-gutter-x: 2rem;
}

.row {
  --bs-gutter-x: 2rem;
}

body {
  background-color: #FFFFFF;
}

#program-container .title-container {
  background-color: #7CFC00;
  font-weight: bold;
  color: #FFF;
}
#program-container .main-title {
  font-size: 36px;
}
#program-container .sub-title {
  font-size: 30px;
}
#program-container #filter-container .row #moreFiltersAccordion div button.filter-accordion-button {
  font-family: "SuisseWorks", sans-serif;
  font-size: 1rem;
  background-color: transparent;
  text-transform: none;
}
#program-container #filter-container .row #moreFiltersAccordion div button.filter-accordion-button:hover {
  background-color: transparent;
  color: black;
}
#program-container #filter-container .row #moreFiltersAccordion div button.filter-accordion-button:after {
  background-image: none;
}
#program-container #filter-container .row div span.filter-title {
  font-family: "BellGothicBlack", sans-serif;
  text-transform: uppercase;
}
#program-container #filter-container .row div a {
  font-family: "BellGothicBlack", serif, sans-serif;
  text-transform: uppercase;
  font-size: 1rem;
  line-height: 1.5em;
  background: white;
  color: black;
  border: 2px solid black;
}
#program-container #filter-container .row div a.active, #program-container #filter-container .row div a:hover {
  background: var(--primary-color);
  color: white;
}
#program-container #filter-container .row div button {
  font-family: BellGothicBlack, sans-serif;
  text-transform: uppercase;
  font-size: 1rem;
  line-height: 1.5em;
  background-color: white;
  color: black;
  text-align: left;
}
#program-container #filter-container .row div button:hover, #program-container #filter-container .row div button.active {
  background-color: var(--primary-color);
  color: #FFF;
}
#program-container #filter-container .row div button.accordion-button {
  border: none;
  box-shadow: none;
}
#program-container #filter-container .row div button.accordion-button:focus, #program-container #filter-container .row div button.accordion-button:active {
  box-shadow: none;
  border: none;
}
#program-container #filter-container .row div button.accordion-button:not(.collapsed):after {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23000000'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");
}
#program-container #filter-container .row div .accordion {
  border: 2px solid black;
}
#program-container #filter-container .row div .accordion input:checked + label {
  color: var(--primary-color);
}
#program-container #filter-container .row div .input-group input#search {
  border-top: 2px solid black;
  border-bottom: 2px solid black;
  border-left: 2px solid black;
  border-right: none;
  border-radius: 0;
  font-size: 1rem;
  line-height: 1.5rem;
  padding-block: 0.6rem;
  outline: none;
}
#program-container #filter-container .row div .input-group .input-group-text {
  background-color: transparent;
  border-top: 2px solid black;
  border-right: 2px solid black;
  border-bottom: 2px solid black;
  border-left: none;
  border-radius: 0;
}
#program-container #program-listing .custom-text-uppercase {
  text-transform: none;
}
#program-container #program-listing span.fs-small {
  line-height: 1.125;
}
#program-container #program-listing span.fs-small a {
  line-height: 1.125;
}
#program-container #program-listing a {
  text-decoration: none;
}
#program-container #program-listing .img-favorite {
  height: 25px;
  cursor: pointer;
  /*path {
    fill: white;
  }

  &.active {
    path {
      fill: black;
    }
  }*/
}
#program-container #program-listing .program-listing-icons svg, #program-container #program-listing .program-listing-icons img {
  height: 25px;
}
#program-container #program-listing .program-image-thumb {
  width: 100%;
  height: auto;
}
#program-container #program-listing [data-name=program-item] h2 {
  font-size: 0.875rem;
  line-height: 1.25em;
}
#program-container #program-listing [data-name=program-item] h5 {
  font-size: 0.875rem;
}
#program-container #program-listing [data-name=program-item] span.fs-small a {
  font-size: 0.875rem;
}

.fix {
  border: 1px solid black;
}

@media screen and (min-width: 768px) {
  #program-container #program-listing .custom-text-uppercase {
    text-transform: uppercase;
  }
  #program-container #program-listing [data-name=program-item] h2 {
    font-size: 2rem;
  }
  #program-container #program-listing [data-name=program-item] h5 {
    font-size: 1.125rem;
  }
  #program-container #program-listing [data-name=program-item] span.fs-small a {
    font-size: 1.125rem;
  }
}
@media screen and (min-width: 992px) {
  #program-container #filter-container .row div a {
    font-size: 1.5rem;
    line-height: 1.8rem;
  }
  #program-container #filter-container .row div button {
    font-size: 1.5rem;
    line-height: 1.8rem;
  }
  #program-container #filter-container .row div input#search {
    font-size: 1rem;
  }
  #program-container #program-listing .program-listing-icons svg, #program-container #program-listing .program-listing-icons img {
    height: 32px;
  }
}
.legend-fw-bold legend {
  font-weight: bold;
}

.form-spacer {
  height: 0 !important;
  overflow: hidden;
}

/*# sourceMappingURL=styles.css.map */
