@charset "UTF-8";
/*
	HTML5 Reset :: style.css
    https://github.com/murtaugh/HTML5-Reset/blob/master/assets/css/reset.css
	----------------------------------------------------------
	We have learned much from/been inspired by/taken code where offered from:
	Eric Meyer					:: http://meyerweb.com
	HTML5 Doctor				:: http://html5doctor.com
	and the HTML5 Boilerplate	:: http://html5boilerplate.com
-------------------------------------------------------------------------------*/
/* Let's default this puppy out
-------------------------------------------------------------------------------*/
html, body, body div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, figure, footer, header, menu, nav, section, time, mark, audio, video, details, summary {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font-weight: normal;
  vertical-align: baseline;
  background: transparent; }

main, article, aside, figure, footer, header, nav, section, details, summary {
  display: block; }

/* Handle box-sizing while better addressing child elements:
   http://css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice/ */
html {
  box-sizing: border-box; }

*,
*:before,
*:after {
  box-sizing: inherit; }

/* consider resetting the default cursor: https://gist.github.com/murtaugh/5247154 */
/* Responsive images and other embedded objects */
/* if you don't have full control over `img` tags (if you have to overcome attributes), consider adding height: auto */
img,
object,
embed {
  max-width: 100%; }

/*
   Note: keeping IMG here will cause problems if you're using foreground images as sprites.
	In fact, it *will* cause problems with Google Maps' controls at small size.
	If this is the case for you, try uncommenting the following:
#map img {
		max-width: none;
}
*/
/* force a vertical scrollbar to prevent a jumpy page */
html {
  overflow-y: scroll; }

/* we use a lot of ULs that aren't bulleted.
	you'll have to restore the bullets within content,
	which is fine because they're probably customized anyway */
ul {
  list-style: none; }

blockquote, q {
  quotes: none; }

blockquote:before,
blockquote:after,
q:before,
q:after {
  content: '';
  content: none; }

a {
  margin: 0;
  padding: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent; }

del {
  text-decoration: line-through; }

abbr[title], dfn[title] {
  border-bottom: 1px dotted #000;
  cursor: help; }

/* tables still need cellspacing="0" in the markup */
table {
  border-collapse: separate;
  border-spacing: 0; }

th {
  font-weight: bold;
  vertical-align: bottom; }

td {
  font-weight: normal;
  vertical-align: top; }

hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #ccc;
  margin: 1em 0;
  padding: 0; }

input, select {
  vertical-align: middle; }

pre {
  white-space: pre;
  /* CSS2 */
  white-space: pre-wrap;
  /* CSS 2.1 */
  white-space: pre-line;
  /* CSS 3 (and 2.1 as well, actually) */
  word-wrap: break-word;
  /* IE */ }

input[type="radio"] {
  vertical-align: text-bottom; }

input[type="checkbox"] {
  vertical-align: bottom; }

.ie7 input[type="checkbox"] {
  vertical-align: baseline; }

.ie6 input {
  vertical-align: text-bottom; }

select, input, textarea {
  font: 99% sans-serif; }

table {
  font-size: inherit;
  font: 100%; }

small {
  font-size: 85%; }

strong {
  font-weight: bold; }

td, td img {
  vertical-align: top; }

/* Make sure sup and sub don't mess with your line-heights http://gist.github.com/413930 */
sub, sup {
  font-size: 75%;
  line-height: 0;
  position: relative; }

sup {
  top: -0.5em; }

sub {
  bottom: -0.25em; }

/* standardize any monospaced elements */
pre, code, kbd, samp {
  font-family: monospace, sans-serif; }

/* hand cursor on clickable elements */
.clickable,
label,
input[type=button],
input[type=submit],
input[type=file],
button {
  cursor: pointer; }

/* Webkit browsers add a 2px margin outside the chrome of form elements */
button, input, select, textarea {
  margin: 0; }

/* make buttons play nice in IE */
button,
input[type=button] {
  width: auto;
  overflow: visible; }

/* scale images in IE7 more attractively */
.ie7 img {
  -ms-interpolation-mode: bicubic; }

/* prevent BG image flicker upon hover
   (commented out as usage is rare, and the filter syntax messes with some pre-processors)
.ie6 html {filter: expression(document.execCommand("BackgroundImageCache", false, true));}
*/
/* let's clear some floats */
.clearfix:after {
  content: " ";
  display: block;
  clear: both; }

a {
  text-decoration: none; }

@media (max-width: 1180px) {
  .desktop-only, .only-desktop {
    display: none !important; } }

@media (min-width: 1181px) {
  .mobile-only, .only-mobile {
    display: none !important; } }

.align-left {
  text-align: left; }

.align-center {
  text-align: center; }

html:not([data-browser="chrome"]), html:not([data-browser="chrome"]) body {
  scroll-behavior: smooth;
  scroll-padding-top: 40px; }
  @media (max-width: 1180px) {
    html:not([data-browser="chrome"]), html:not([data-browser="chrome"]) body {
      scroll-padding-top: 30px; } }
  @media (max-width: 600px) {
    html:not([data-browser="chrome"]), html:not([data-browser="chrome"]) body {
      scroll-padding-top: 30px; } }

body {
  font-family: "Open Sans", "Calibri", "Arial", sans-serif;
  font-size: 1.25rem;
  line-height: 1.5;
  color: #002862;
  display: flex;
  flex-direction: column;
  min-height: 100vh;
  justify-content: space-between; }
  @media (max-width: 1180px) {
    body {
      font-size: 1rem; } }
  @media (max-width: 600px) {
    body {
      font-size: 1rem; } }
  @media (max-width: 1180px) {
    body {
      line-height: 1.5; } }
  @media (max-width: 600px) {
    body {
      line-height: 1.5; } }
  body.menu-open, body.modal-popup {
    overflow: hidden; }

main, footer {
  display: flex;
  flex-direction: column;
  align-items: center; }

section {
  --bgcol:                #ffffff;
  --bgcover:              none;
  --col:                  #002862;
  background-color: var(--bgcol);
  background-image: var(--bgcover);
  background-size: cover;
  background-position: top center;
  background-repeat: no-repeat;
  color: var(--col);
  display: flex;
  align-items: center;
  flex-direction: column;
  width: 100%;
  padding: 5rem 0; }
  section.blue {
    --bgcol:                #002862;
    --col:                  #ffffff; }
  section.turquoise {
    --bgcol:                #BEE1E0; }
  @media (max-width: 1180px) {
    section {
      padding: 3.125rem 0; } }
  @media (max-width: 600px) {
    section {
      padding: 3.125rem 0; } }
  section inner-block {
    display: flex;
    flex-direction: column;
    width: 100%;
    max-width: calc(1720px);
    padding-left: 100px;
    padding-right: 100px; }
    @media (max-width: 1180px) {
      section inner-block {
        max-width: 100%; } }
    @media (max-width: 600px) {
      section inner-block {
        max-width: 100%; } }
    @media (max-width: 1180px) {
      section inner-block {
        padding-left: 25px; } }
    @media (max-width: 600px) {
      section inner-block {
        padding-left: 25px; } }
    @media (max-width: 1180px) {
      section inner-block {
        padding-right: 25px; } }
    @media (max-width: 600px) {
      section inner-block {
        padding-right: 25px; } }
    section inner-block > * + * {
      margin-top: 2.5rem; }
      @media (max-width: 1180px) {
        section inner-block > * + * {
          margin-top: 1.25rem; } }
      @media (max-width: 600px) {
        section inner-block > * + * {
          margin-top: 1.25rem; } }
  section.hero {
    min-height: 100lvh; }

section:not(.blue):not(.turquoise):not([data-cover]) + section:not(.blue):not(.turquoise):not([data-cover]),
section.blue:not([data-cover]) + section.blue:not([data-cover]),
section.turquoise:not([data-cover]) + section.turquoise:not([data-cover]) {
  padding-top: 0 !important; }

section.blue:last-child {
  padding-bottom: 0 !important; }

@media (prefers-reduced-motion: reduce) {
  section[data-parallax] {
    background-position: top center !important; } }

footer section {
  --bgcol:    #002862;
  --col:      #ffffff; }

#pb-logo {
  width: 7.5rem; }
  @media (max-width: 1180px) {
    #pb-logo {
      width: 5rem; } }
  @media (max-width: 600px) {
    #pb-logo {
      width: 5rem; } }
  #pb-logo.large {
    width: 8.75rem;
    margin-top: 4em; }
    @media (max-width: 1180px) {
      #pb-logo.large {
        width: 6.25rem; } }
    @media (max-width: 600px) {
      #pb-logo.large {
        width: 6.25rem; } }
    @media (max-width: 1180px) {
      #pb-logo.large {
        margin-top: 3em; } }
    @media (max-width: 600px) {
      #pb-logo.large {
        margin-top: 3em; } }
  #pb-logo img {
    display: block;
    width: 100%; }
  #pb-logo img:first-child {
    display: block; }
  #pb-logo img:last-child {
    display: none; }
  section.blue #pb-logo img:first-child {
    display: none; }
  section.blue #pb-logo img:last-child {
    display: block; }

#skip-navigation {
  position: fixed;
  top: 50%;
  left: 50%;
  width: 4em;
  height: 4em;
  transform: translate(-50%, -50%) rotate(90deg);
  background-image: url("../images/arrow-right.svg");
  background-size: 75%;
  background-position: center;
  background-repeat: no-repeat;
  background-color: #fffb;
  border-radius: 3px;
  z-index: 1120;
  cursor: pointer;
  transition: opacity 175ms linear;
  pointer-events: none;
  opacity: 0; }
  #skip-navigation:focus {
    pointer-events: all;
    opacity: 1; }
  #skip-navigation::before {
    position: absolute;
    content: attr(title);
    transform: rotate(-90deg);
    right: 90%;
    text-align: center;
    color: #ffffff;
    background: #000b;
    padding: 0.5em; }

*[data-focus-hint][title], *[data-hover-hint][title] {
  position: relative;
  cursor: pointer; }
  *[data-focus-hint][title]::before, *[data-hover-hint][title]::before {
    position: absolute;
    content: attr(title);
    text-transform: none;
    bottom: calc(100% + 0.5em);
    font-weight: 400;
    left: 50%;
    transform: translateX(-50%);
    text-align: center;
    color: #ffffff;
    background: #000b;
    padding: 0.5em;
    white-space: pre;
    opacity: 0;
    pointer-events: none;
    transition: opacity 175ms;
    z-index: 1060;
    transform: var(--tooltip-shift, translateX(-50%));
    top: var(--tooltip-top, auto);
    bottom: var(--tooltip-bottom, calc(100% + 0.5em)); }

*[data-focus-hint][title].show-tooltip::before {
  opacity: 1; }

body.no-touch *[data-hover-hint][title]:hover::before {
  opacity: 1;
  transform: var(--tooltip-shift, translateX(-50%));
  top: var(--tooltip-top, auto);
  bottom: var(--tooltip-bottom, calc(100% + 0.5em)); }

.menu-section {
  padding: 0; }
  .menu-section inner-block {
    height: 0;
    max-height: 0; }
    .menu-section inner-block .menu-canvas {
      position: relative; }

.menu-positioner {
  height: 0; }
  .menu-positioner section {
    padding: 0; }
  .menu-positioner inner-block {
    position: relative; }

#menu-bar {
  position: absolute;
  top: 5rem;
  right: 0;
  z-index: 1020;
  display: flex;
  flex-direction: row;
  justify-content: flex-end;
  align-items: center;
  --scrollOffset: 0px;
  transform: translateY(0);
  line-height: 1; }
  @media (max-width: 1180px) {
    #menu-bar {
      top: 3.125rem; } }
  @media (max-width: 600px) {
    #menu-bar {
      top: 3.125rem; } }
  body.menu-open #menu-bar {
    transform: translateY(var(--scroll-offset)); }
  #menu-bar > * + * {
    margin-left: 2em; }
  body:not([data-page=index]) #menu-bar .index-only, body.menu-open #menu-bar .index-only {
    display: none; }
  @media (max-width: 1180px) {
    #menu-bar .index-only {
      display: none; } }
  #menu-bar a {
    text-transform: uppercase;
    font-weight: 600;
    color: #002862; }
    #menu-bar a:hover {
      color: #78C9C6; }
    body[data-color-scheme="dark"] #menu-bar a {
      color: #ffffff; }
      body[data-color-scheme="dark"] #menu-bar a:hover {
        color: #EBA800; }
  #menu-bar svg {
    display: inline-block;
    height: 1.875rem;
    color: #002862; }
    @media (max-width: 1180px) {
      #menu-bar svg {
        height: 1.5625rem; } }
    @media (max-width: 600px) {
      #menu-bar svg {
        height: 1.5625rem; } }
    #menu-bar svg:hover {
      color: #78C9C6; }
    body[data-color-scheme="dark"] #menu-bar svg {
      color: #ffffff; }
      body[data-color-scheme="dark"] #menu-bar svg:hover {
        color: #FFEE00; }
    body.menu-open #menu-bar svg {
      color: #ffffff; }
      body.menu-open #menu-bar svg:hover {
        color: #FFEE00; }
  #menu-bar .lang-switch {
    color: #EBA800;
    /*
        body[data-color-scheme="medium"] & {
            color: $blue;
        }
        body[data-color-scheme="medium"].menu-open & {
            color: $yellow;
        } */ }
    body[data-color-scheme="dark"] #menu-bar .lang-switch, body.menu-open #menu-bar .lang-switch {
      color: #FFEE00; }
    #menu-bar .lang-switch a {
      color: #EBA800; }
      #menu-bar .lang-switch a:hover {
        color: #002862; }
      #menu-bar .lang-switch a.current {
        border-bottom: 0.125rem currentcolor solid; }
    #menu-bar .lang-switch a {
      /*
            body[data-color-scheme="medium"] & {
                color: $blue;
                &:hover {
                    color: $black;
                }
            }

            body[data-color-scheme="medium"].menu-open & {
                color: $yellow;
                &:hover {
                    color: $white;
                }
            }
                */ }
      body[data-color-scheme="dark"] #menu-bar .lang-switch a, body.menu-open #menu-bar .lang-switch a {
        color: #FFEE00; }
        body[data-color-scheme="dark"] #menu-bar .lang-switch a:hover, body.menu-open #menu-bar .lang-switch a:hover {
          color: #ffffff; }

#menu {
  position: absolute;
  top: 0px;
  right: 0;
  padding: 150px 100px 100px 100px;
  background: #002862;
  border-bottom-left-radius: 1.875rem;
  z-index: 19;
  box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.25);
  min-width: Min(calc(100vw - 5rem), 28.125rem);
  display: none;
  max-height: 100vh;
  overflow-y: scroll;
  overscroll-behavior: contain; }
  @media (max-width: 1180px) {
    #menu {
      padding: 100px 25px 25px 25px; } }
  @media (max-width: 600px) {
    #menu {
      padding: 100px 25px 25px 25px; } }
  body[data-color-scheme="dark"] #menu {
    box-shadow: rgba(0, 0, 0, 0.5) 0px 7px 29px 0px; }
  @media (max-width: 1180px) {
    #menu {
      min-width: Min(calc(100vw - 5rem), 18.75rem); } }
  @media (max-width: 600px) {
    #menu {
      min-width: Min(calc(100vw - 5rem), 15.625rem); } }
  #menu.open {
    display: flex;
    flex-direction: column; }
  #menu a {
    color: #ffffff; }
  #menu a.menu-item-title {
    text-transform: uppercase;
    color: #78C9C6;
    font-weight: 600; }
    #menu a.menu-item-title:hover {
      color: #ffffff; }
  #menu .menu-subitems {
    display: flex;
    flex-direction: column; }
    #menu .menu-subitems .menu-subitem {
      margin-top: 0.2em;
      color: #ffffff; }
      #menu .menu-subitems .menu-subitem:hover {
        color: #BEE1E0; }
    #menu .menu-subitems:last-child {
      margin-bottom: 0.75em; }
  #menu .menu-item {
    text-align: right; }
  #menu .menu-item + .menu-item {
    margin-top: 1em; }

.search-canvas #search-bar {
  width: auto;
  box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.25);
  position: absolute;
  top: calc(100% + 1em);
  right: 0;
  padding: 1.25rem 1.25rem 1.25rem 1.66667rem;
  border-top-right-radius: 1.875rem;
  border-bottom-left-radius: 1.875rem;
  color: #ffffff;
  background: #002862;
  display: flex; }
  @media (max-width: 1180px) {
    .search-canvas #search-bar {
      width: auto; } }
  @media (max-width: 600px) {
    .search-canvas #search-bar {
      width: calc(100vw - 3.125rem); } }
  @media (max-width: 1180px) {
    .search-canvas #search-bar {
      padding: 1.5625rem 1.5625rem 1.5625rem 1.5625rem; } }
  @media (max-width: 600px) {
    .search-canvas #search-bar {
      padding: 1.5625rem 1.5625rem 1.5625rem 1.5625rem; } }
  body[data-color-scheme="dark"] .search-canvas #search-bar {
    box-shadow: rgba(0, 0, 0, 0.5) 0px 7px 29px 0px; }
  .search-canvas #search-bar input[type="text"] {
    flex-grow: 1;
    margin-right: 0.5em;
    border: none;
    border-bottom: 1px #ffffff solid;
    background: transparent;
    color: #ffffff;
    font-weight: 400;
    font-family: "Open Sans", "Calibri", "Arial", sans-serif; }
    .search-canvas #search-bar input[type="text"]::placeholder {
      color: #78C9C6; }
  .search-canvas #search-bar input[type="submit"] {
    border: none;
    display: inline-block;
    font-weight: 700;
    padding: 0.25em 1em;
    border-radius: 2em;
    position: relative;
    overflow: hidden;
    cursor: pointer;
    text-transform: uppercase;
    font-family: "Open Sans", "Calibri", "Arial", sans-serif;
    background: #BEE1E0; }
    .search-canvas #search-bar input[type="submit"]:hover {
      background-color: #ffffff; }
  .search-canvas #search-bar:not(.open) {
    display: none; }

#burger, #search {
  cursor: pointer;
  position: relative; }
  #burger.open::before, #search.open::before {
    display: none !important; }

#burger svg line {
  transition: opacity 350ms ease-out, transform 350ms ease-out; }

#burger svg .mid1, #burger svg .mid2 {
  transform-origin: center;
  transform: rotate(0deg); }

#burger svg .mid2 {
  opacity: 0; }

#burger.open svg .top, #burger.open svg .bottom {
  opacity: 0; }

#burger.open svg .mid2 {
  opacity: 1; }

#burger.open svg .mid1 {
  transform: rotate(45deg); }

#burger.open svg .mid2 {
  transform: rotate(-45deg); }

.col2 {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 2.5rem; }
  @media (max-width: 1180px) {
    .col2 {
      grid-template-columns: repeat(2, minmax(0, 1fr)); } }
  @media (max-width: 600px) {
    .col2 {
      grid-template-columns: 1fr; } }
  @media (max-width: 1180px) {
    .col2 {
      gap: 1.25rem; } }
  @media (max-width: 600px) {
    .col2 {
      gap: 1.25rem; } }

.col3 {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 2.5rem; }
  @media (max-width: 1180px) {
    .col3 {
      grid-template-columns: repeat(2, minmax(0, 1fr)); } }
  @media (max-width: 600px) {
    .col3 {
      grid-template-columns: 1fr; } }
  @media (max-width: 1180px) {
    .col3 {
      gap: 1.25rem; } }
  @media (max-width: 600px) {
    .col3 {
      gap: 1.25rem; } }

.col4 {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 2.5rem; }
  @media (max-width: 1180px) {
    .col4 {
      grid-template-columns: repeat(2, minmax(0, 1fr)); } }
  @media (max-width: 600px) {
    .col4 {
      grid-template-columns: repeat(2, minmax(0, 1fr)); } }
  @media (max-width: 1180px) {
    .col4 {
      gap: 1.25rem; } }
  @media (max-width: 600px) {
    .col4 {
      gap: 1.25rem; } }

.text-with-icons {
  display: grid;
  grid-template-columns: 2fr 1fr;
  grid-template-areas: "text icons";
  gap: 2.5rem; }
  @media (max-width: 1180px) {
    .text-with-icons {
      grid-template-columns: 1fr; } }
  @media (max-width: 600px) {
    .text-with-icons {
      grid-template-columns: 1fr; } }
  @media (max-width: 1180px) {
    .text-with-icons {
      grid-template-areas: "text" "icons"; } }
  @media (max-width: 600px) {
    .text-with-icons {
      grid-template-areas: "text" "icons"; } }
  @media (max-width: 1180px) {
    .text-with-icons {
      gap: 2.5rem; } }
  @media (max-width: 600px) {
    .text-with-icons {
      gap: 2.5rem; } }
  .text-with-icons .text {
    grid-area: text; }
  .text-with-icons .icons {
    grid-area: icons;
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    align-items: flex-end;
    margin-right: -1em;
    margin-right: -1em; }
    @media (max-width: 1180px) {
      .text-with-icons .icons {
        justify-content: center; } }
    @media (max-width: 600px) {
      .text-with-icons .icons {
        justify-content: center; } }
    @media (max-width: 1180px) {
      .text-with-icons .icons {
        margin-right: -1em; } }
    @media (max-width: 600px) {
      .text-with-icons .icons {
        margin-right: 0; } }
    .text-with-icons .icons > * {
      margin-right: 1em; }
      @media (max-width: 1180px) {
        .text-with-icons .icons > * {
          margin-right: 1em; } }
      @media (max-width: 600px) {
        .text-with-icons .icons > * {
          margin-right: 0.5em; } }
    .text-with-icons .icons img, .text-with-icons .icons svg {
      display: inline-block;
      width: 5rem; }
      @media (max-width: 1180px) {
        .text-with-icons .icons img, .text-with-icons .icons svg {
          width: 3.75rem; } }
      @media (max-width: 600px) {
        .text-with-icons .icons img, .text-with-icons .icons svg {
          width: 3.125rem; } }
  .text-with-icons.for-filtering .icons {
    justify-content: flex-end; }
    @media (max-width: 1180px) {
      .text-with-icons.for-filtering .icons {
        justify-content: flex-end; } }
    @media (max-width: 600px) {
      .text-with-icons.for-filtering .icons {
        justify-content: flex-end; } }
  section.flipped .text-with-icons {
    grid-template-columns: 1fr 2fr;
    grid-template-areas: "icons text"; }
    @media (max-width: 1180px) {
      section.flipped .text-with-icons {
        grid-template-columns: 1fr; } }
    @media (max-width: 600px) {
      section.flipped .text-with-icons {
        grid-template-columns: 1fr; } }
    @media (max-width: 1180px) {
      section.flipped .text-with-icons {
        grid-template-areas: "text" "icons"; } }
    @media (max-width: 600px) {
      section.flipped .text-with-icons {
        grid-template-areas: "text" "icons"; } }
    section.flipped .text-with-icons .text {
      text-align: right; }
    section.flipped .text-with-icons .icons {
      justify-content: flex-start; }
      @media (max-width: 1180px) {
        section.flipped .text-with-icons .icons {
          justify-content: center; } }
      @media (max-width: 600px) {
        section.flipped .text-with-icons .icons {
          justify-content: center; } }

.cubic-cell, .panorama-cell, .dynamic-cell {
  border-top-right-radius: 1.875rem;
  border-bottom-left-radius: 1.875rem;
  overflow: hidden;
  position: relative; }
  @media (max-width: 1180px) {
    .cubic-cell, .panorama-cell, .dynamic-cell {
      border-top-right-radius: 1.25rem; } }
  @media (max-width: 600px) {
    .cubic-cell, .panorama-cell, .dynamic-cell {
      border-top-right-radius: 1.25rem; } }
  @media (max-width: 1180px) {
    .cubic-cell, .panorama-cell, .dynamic-cell {
      border-bottom-left-radius: 1.25rem; } }
  @media (max-width: 600px) {
    .cubic-cell, .panorama-cell, .dynamic-cell {
      border-bottom-left-radius: 1.25rem; } }
  .cubic-cell img, .panorama-cell img, .dynamic-cell img {
    position: absolute;
    left: 0;
    width: 100%;
    top: 0;
    height: 100%;
    object-fit: cover;
    transition: transform 350ms; }
  .cubic-cell figcaption, .panorama-cell figcaption, .dynamic-cell figcaption {
    position: absolute;
    bottom: 0;
    left: 0;
    width: calc(100% - 3.125rem);
    background-color: #002862;
    opacity: 0.8;
    color: #ffffff;
    padding: 1.25rem;
    border-top-right-radius: 1.875rem;
    transition: opacity 350ms; }
    @media (max-width: 1180px) {
      .cubic-cell figcaption, .panorama-cell figcaption, .dynamic-cell figcaption {
        border-top-right-radius: 1.25rem; } }
    @media (max-width: 600px) {
      .cubic-cell figcaption, .panorama-cell figcaption, .dynamic-cell figcaption {
        border-top-right-radius: 1.25rem; } }
    .cubic-cell figcaption p, .panorama-cell figcaption p, .dynamic-cell figcaption p {
      overflow: hidden;
      text-overflow: " …";
      display: -webkit-box;
      line-clamp: 2;
      -webkit-line-clamp: 2;
      -webkit-box-orient: vertical; }
  .cubic-cell .cubic-cover, .panorama-cell .cubic-cover, .dynamic-cell .cubic-cover {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #002862;
    opacity: 0;
    padding: 5rem 2.5rem;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    color: #ffffff;
    transition: opacity 350ms ease-out; }
    @media (max-width: 1180px) {
      .cubic-cell .cubic-cover, .panorama-cell .cubic-cover, .dynamic-cell .cubic-cover {
        padding: 3.125rem; } }
    @media (max-width: 600px) {
      .cubic-cell .cubic-cover, .panorama-cell .cubic-cover, .dynamic-cell .cubic-cover {
        padding: 3.125rem; } }
    .cubic-cell .cubic-cover > *, .panorama-cell .cubic-cover > *, .dynamic-cell .cubic-cover > * {
      text-align: center; }
    .cubic-cell .cubic-cover .place, .panorama-cell .cubic-cover .place, .dynamic-cell .cubic-cover .place {
      font-size: 1.125rem;
      line-height: 3.33333;
      text-transform: uppercase;
      font-weight: 600; }
      @media (max-width: 1180px) {
        .cubic-cell .cubic-cover .place, .panorama-cell .cubic-cover .place, .dynamic-cell .cubic-cover .place {
          font-size: 1rem; } }
      @media (max-width: 600px) {
        .cubic-cell .cubic-cover .place, .panorama-cell .cubic-cover .place, .dynamic-cell .cubic-cover .place {
          font-size: 1rem; } }
    .cubic-cell .cubic-cover .title, .panorama-cell .cubic-cover .title, .dynamic-cell .cubic-cover .title {
      font-family: "Cinzel Decorative", serif;
      font-size: 2.8125rem;
      line-height: 1.37778; }
      @media (max-width: 1180px) {
        .cubic-cell .cubic-cover .title, .panorama-cell .cubic-cover .title, .dynamic-cell .cubic-cover .title {
          font-size: 2.1875rem; } }
      @media (max-width: 600px) {
        .cubic-cell .cubic-cover .title, .panorama-cell .cubic-cover .title, .dynamic-cell .cubic-cover .title {
          font-size: 2.1875rem; } }
    .cubic-cell .cubic-cover .category, .panorama-cell .cubic-cover .category, .dynamic-cell .cubic-cover .category {
      font-size: 1.25rem;
      line-height: 2.5;
      font-style: italic; }
      @media (max-width: 1180px) {
        .cubic-cell .cubic-cover .category, .panorama-cell .cubic-cover .category, .dynamic-cell .cubic-cover .category {
          font-size: 1.125rem; } }
      @media (max-width: 600px) {
        .cubic-cell .cubic-cover .category, .panorama-cell .cubic-cover .category, .dynamic-cell .cubic-cover .category {
          font-size: 1.125rem; } }
    .cubic-cell .cubic-cover .credits, .panorama-cell .cubic-cover .credits, .dynamic-cell .cubic-cover .credits {
      font-size: 0.9375rem;
      line-height: 1;
      margin-bottom: 0.25em; }
      @media (max-width: 1180px) {
        .cubic-cell .cubic-cover .credits, .panorama-cell .cubic-cover .credits, .dynamic-cell .cubic-cover .credits {
          font-size: 0.8125rem; } }
      @media (max-width: 600px) {
        .cubic-cell .cubic-cover .credits, .panorama-cell .cubic-cover .credits, .dynamic-cell .cubic-cover .credits {
          font-size: 0.8125rem; } }
    .cubic-cell .cubic-cover .credits-name, .panorama-cell .cubic-cover .credits-name, .dynamic-cell .cubic-cover .credits-name {
      font-style: italic; }
    body.touch .cubic-cell .cubic-cover, body.touch .panorama-cell .cubic-cover, body.touch .dynamic-cell .cubic-cover {
      height: auto;
      padding: 1.25rem 1.25rem; }
      @media (max-width: 1180px) {
        body.touch .cubic-cell .cubic-cover, body.touch .panorama-cell .cubic-cover, body.touch .dynamic-cell .cubic-cover {
          padding: 0.78125rem; } }
      @media (max-width: 600px) {
        body.touch .cubic-cell .cubic-cover, body.touch .panorama-cell .cubic-cover, body.touch .dynamic-cell .cubic-cover {
          padding: 0.78125rem; } }
      body.touch .cubic-cell .cubic-cover .category, body.touch .cubic-cell .cubic-cover .credits, body.touch .cubic-cell .cubic-cover .credits-name, body.touch .cubic-cell .cubic-cover .place, body.touch .panorama-cell .cubic-cover .category, body.touch .panorama-cell .cubic-cover .credits, body.touch .panorama-cell .cubic-cover .credits-name, body.touch .panorama-cell .cubic-cover .place, body.touch .dynamic-cell .cubic-cover .category, body.touch .dynamic-cell .cubic-cover .credits, body.touch .dynamic-cell .cubic-cover .credits-name, body.touch .dynamic-cell .cubic-cover .place {
        display: none !important; }

body.no-touch a:hover .cubic-cover, body.no-touch a:focus .cubic-cover {
  opacity: 0.7;
  pointer-events: all; }

body.no-touch a:hover .cubic-cell img, body.no-touch a:hover .panorama-cell img, body.no-touch a:focus .cubic-cell img, body.no-touch a:focus .panorama-cell img {
  transform: scale(1.05); }

body.no-touch a:hover figcaption, body.no-touch a:focus figcaption {
  opacity: 0.9; }

body.touch a .cubic-cover {
  opacity: 0.7;
  pointer-events: all; }

.cubic-cell {
  aspect-ratio: 1/1; }

.panorama-cell {
  aspect-ratio: 3/2; }
  .panorama-cell.ultra-wide {
    aspect-ratio: 2; }
    @media (max-width: 1180px) {
      .panorama-cell.ultra-wide {
        aspect-ratio: 1.66667; } }
    @media (max-width: 600px) {
      .panorama-cell.ultra-wide {
        aspect-ratio: 2; } }

section h2 {
  font-family: "Cinzel Decorative", serif;
  font-size: 4rem;
  line-height: 1;
  letter-spacing: 2%;
  hyphens: auto;
  word-wrap: break-all; }
  @media (max-width: 1180px) {
    section h2 {
      font-size: 2.625rem; } }
  @media (max-width: 600px) {
    section h2 {
      font-size: 2.625rem; } }
  section h2 a {
    color: inherit; }

section.flipped h2 {
  text-align: right; }

section .text-block {
  display: flex;
  flex-direction: column;
  text-align: center; }
  @media (max-width: 1180px) {
    section .text-block {
      text-align: left; } }
  @media (max-width: 600px) {
    section .text-block {
      text-align: left; } }
  section .text-block.scale-75 {
    max-width: 75%;
    margin: 0 auto; }
    @media (max-width: 1180px) {
      section .text-block.scale-75 {
        max-width: 100%; } }
    @media (max-width: 600px) {
      section .text-block.scale-75 {
        max-width: 100%; } }
  section .text-block.align-left {
    text-align: left;
    align-items: flex-start;
    margin-left: 0; }
    @media (max-width: 1180px) {
      section .text-block.align-left {
        text-align: left; } }
    @media (max-width: 600px) {
      section .text-block.align-left {
        text-align: left; } }
  section .text-block.align-right {
    text-align: right;
    align-items: flex-end;
    margin-right: 0; }
    @media (max-width: 1180px) {
      section .text-block.align-right {
        text-align: right; } }
    @media (max-width: 600px) {
      section .text-block.align-right {
        text-align: right; } }
  section .text-block > p + p, section .text-block h3 + p {
    margin-top: 1em; }
  section .text-block > h2 + p {
    margin-top: 2em; }
  section .text-block > p + h3 {
    margin-top: 1.5em; }
  section .text-block strong {
    text-transform: uppercase;
    font-weight: 700; }
  section .text-block h3 {
    font-size: 2.25rem;
    font-weight: 600; }
    @media (max-width: 1180px) {
      section .text-block h3 {
        font-size: 1.75rem; } }
    @media (max-width: 600px) {
      section .text-block h3 {
        font-size: 1.75rem; } }

.breadcrumb a, .text-block a {
  color: #002862; }
  .breadcrumb a:hover, .text-block a:hover {
    color: #78C9C6; }

section.blue .breadcrumb a, section.blue .text-block a {
  color: #78C9C6; }
  section.blue .breadcrumb a:hover, section.blue .text-block a:hover {
    color: #BEE1E0; }

.breadcrumb + h2, .text-block + h2 {
  margin-top: 0.2em;
  transform: translateX(-0.1em); }

.flipped .breadcrumb {
  text-align: right; }

.hero.landing:not(.blue) {
  background-size: contain; }
  @media (max-width: 1180px) {
    .hero.landing:not(.blue) {
      background-size: cover; } }
  @media (max-width: 600px) {
    .hero.landing:not(.blue) {
      background-size: cover; } }

@media (max-width: 600px) {
  body[data-color-scheme="light"] .hero.landing inner-block {
    background: radial-gradient(#fff 0%, #fff 50%, #fff0 80%);
    background-size: contain; } }

.hero.landing h1 {
  margin-top: 1.5em; }
  .hero.landing h1 :first-child {
    color: #002862;
    font-family: "Cinzel Decorative", serif;
    font-size: 4.5rem;
    line-height: 1.1;
    letter-spacing: 2%; }
    @media (max-width: 1180px) {
      .hero.landing h1 :first-child {
        font-size: 2.5rem; } }
    @media (max-width: 600px) {
      .hero.landing h1 :first-child {
        font-size: 2.5rem; } }
    body[data-color-scheme="dark"] .hero.landing h1 :first-child {
      color: #ffffff; }
  .hero.landing h1 :last-child {
    display: inline-block;
    font-size: 2.1875rem;
    text-transform: uppercase;
    letter-spacing: 2%;
    color: #EBA800;
    color: transparent;
    background: repeating-linear-gradient(90deg, goldenrod 0%, #d5ad6d 2%, #e2ba78 4%, #a37e43 6%, #d4af37 8%, #d5ad6d 10%);
    background-clip: text; }
    @media (max-width: 1180px) {
      .hero.landing h1 :last-child {
        font-size: 1.5625rem; } }
    @media (max-width: 600px) {
      .hero.landing h1 :last-child {
        font-size: 1.5625rem; } }

.hero.landing p {
  max-width: 33.75rem; }
  @media (max-width: 1180px) {
    .hero.landing p {
      max-width: 33.75rem; } }
  @media (max-width: 600px) {
    .hero.landing p {
      max-width: 100%; } }

.button-block {
  display: inline-block;
  font-weight: 400;
  border-radius: 2em;
  position: relative;
  overflow: hidden;
  cursor: pointer;
  background: #78C9C6;
  background: #002862; }
  .button-block > a, .button-block > div {
    position: relative;
    z-index: 2;
    display: block;
    padding: 0.75em 1.5em;
    color: #ffffff;
    transition: color 350ms ease-out; }
  .button-block.collapse > a, .button-block.collapse > div {
    padding: 0.75em 0.75em; }
  #search-bar .button-block > a, #search-bar .button-block > div {
    padding: 0.5em 1em; }
  .button-block::before {
    content: '';
    background: #BEE1E0;
    border-radius: 18.75rem;
    width: 100%;
    aspect-ratio: 1/1;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%) scale(0);
    z-index: 1;
    transition: transform 350ms, opacity 350ms; }
  .button-block:hover::before {
    transform: translate(-50%, -50%) scale(1); }
  .button-block::before {
    background: #78C9C6; }
  .button-block > a, .button-block > div {
    color: #ffffff; }
  .button-block:hover > a, .button-block:hover > div {
    color: #002862; }
  .button-block.bright {
    background: #78C9C6; }
    .button-block.bright::before {
      background: #BEE1E0; }
    .button-block.bright > a, .button-block.bright > div {
      color: #ffffff; }
    .button-block.bright:hover > a, .button-block.bright:hover > div {
      color: #002862; }

.image-gallery {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 2.5rem;
  grid-template-areas: "longdesc longdesc largeimage largeimage largeimage largeimage" "smallimages smallimages smallimages smallimages shortdesc shortdesc";
  grid-template-rows: auto 1fr; }
  @media (max-width: 1180px) {
    .image-gallery {
      grid-template-columns: repeat(6, minmax(0, 1fr)); } }
  @media (max-width: 600px) {
    .image-gallery {
      grid-template-columns: repeat(6, minmax(0, 1fr)); } }
  @media (max-width: 1180px) {
    .image-gallery {
      gap: 1.25rem; } }
  @media (max-width: 600px) {
    .image-gallery {
      gap: 1.25rem; } }
  @media (max-width: 1180px) {
    .image-gallery {
      grid-template-areas: "longdesc longdesc largeimage largeimage largeimage largeimage" "longdesc longdesc . shortdesc shortdesc shortdesc" "smallimages smallimages smallimages smallimages smallimages smallimages"; } }
  @media (max-width: 600px) {
    .image-gallery {
      grid-template-areas: "largeimage largeimage largeimage largeimage largeimage largeimage" ". shortdesc shortdesc shortdesc shortdesc shortdesc" "longdesc longdesc longdesc longdesc longdesc longdesc" "smallimages smallimages smallimages smallimages smallimages smallimages"; } }
  .image-gallery .long-description {
    grid-area: longdesc; }
    .image-gallery .long-description > * + * {
      margin-top: 1em; }
  .image-gallery .short-description {
    grid-area: shortdesc;
    font-size: 0.9375rem;
    text-align: right; }
    @media (max-width: 1180px) {
      .image-gallery .short-description {
        font-size: 0.6875rem; } }
    @media (max-width: 600px) {
      .image-gallery .short-description {
        font-size: 0.6875rem; } }
  .image-gallery .large-image {
    grid-area: largeimage;
    align-self: start; }
  .image-gallery .small-images {
    grid-area: smallimages;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 2.5rem; }
    @media (max-width: 1180px) {
      .image-gallery .small-images {
        grid-template-columns: repeat(3, minmax(0, 1fr)); } }
    @media (max-width: 600px) {
      .image-gallery .small-images {
        grid-template-columns: repeat(2, minmax(0, 1fr)); } }
    @media (max-width: 1180px) {
      .image-gallery .small-images {
        gap: 1.25rem; } }
    @media (max-width: 600px) {
      .image-gallery .small-images {
        gap: 1.25rem; } }

.filter-icon-canvas {
  position: relative; }

.filter-icon {
  cursor: default !important; }
  @media (max-width: 600px) {
    .filter-icon {
      margin-right: 0 !important; } }
  .filter-icon svg circle {
    color: #002862;
    transition: color 350ms; }
  body.no-touch .filter-icon svg:hover circle {
    color: #78C9C6; }
  body.no-touch .filter-icon svg:hover {
    transform: scaleX(-1); }
  .filter-icon.open svg {
    transform: scaleX(-1); }
    .filter-icon.open svg circle {
      color: #78C9C6; }
  .filter-icon svg {
    cursor: pointer; }
  .filter-icon:not(.open) + .filter-menu {
    display: none; }

.filter-menu {
  position: absolute;
  display: flex;
  flex-direction: column;
  right: 0;
  transform: none;
  top: calc(100% + 0.5em);
  width: 60vw;
  padding: 5rem;
  background: #002862;
  z-index: 1015;
  border-top-right-radius: 1.875rem;
  color: #ffffff; }
  @media (max-width: 1180px) {
    .filter-menu {
      right: 0; } }
  @media (max-width: 600px) {
    .filter-menu {
      right: -0.625rem; } }
  @media (max-width: 1180px) {
    .filter-menu {
      transform: none; } }
  @media (max-width: 600px) {
    .filter-menu {
      transform: translateX(-0.1em); } }
  @media (max-width: 1180px) {
    .filter-menu {
      width: 80vw; } }
  @media (max-width: 600px) {
    .filter-menu {
      width: calc(100vw - 3.125rem); } }
  @media (max-width: 1180px) {
    .filter-menu {
      padding: 3.125rem; } }
  @media (max-width: 600px) {
    .filter-menu {
      padding: 3.125rem; } }
  .filter-menu .filter-category .filter-category-title {
    font-family: "Cinzel Decorative", serif;
    font-size: 2.5rem;
    margin-bottom: 0.25em; }
    @media (max-width: 1180px) {
      .filter-menu .filter-category .filter-category-title {
        font-size: 1.875rem; } }
    @media (max-width: 600px) {
      .filter-menu .filter-category .filter-category-title {
        font-size: 1.875rem; } }
  .filter-menu .filter-category + .filter-category {
    margin-top: 2em; }
  .filter-menu .filter-list {
    display: flex;
    flex-wrap: wrap;
    margin-left: -1em;
    margin-top: -1em; }
    .filter-menu .filter-list .filter {
      display: inline-flex;
      margin-left: 1em;
      margin-top: 1em; }
      .filter-menu .filter-list .filter input {
        display: none; }
      .filter-menu .filter-list .filter .filter-name {
        border: 1px white solid;
        padding: 0.25em 0.6em 0.25em 0.5em;
        text-transform: uppercase;
        border-top-right-radius: 1.25rem;
        display: inline-flex;
        align-items: center; }
        .filter-menu .filter-list .filter .filter-name::after {
          display: inline-block;
          content: '';
          width: 0.8em;
          height: 0.8em;
          background-image: url("../images/filter-unselected.svg");
          background-size: contain;
          background-position: center;
          background-repeat: no-repeat;
          margin-left: 0.5em; }
      .filter-menu .filter-list .filter input:checked + .filter-name {
        background: #BEE1E0;
        border-color: #BEE1E0;
        color: #002862;
        box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.25); }
        .filter-menu .filter-list .filter input:checked + .filter-name::after {
          background-image: url("../images/filter-selected.svg");
          background-size: 160%; }
  .filter-menu .filter-reset-canvas {
    margin-top: 3em;
    display: flex;
    justify-content: flex-end; }
    .filter-menu .filter-reset-canvas .filter-reset {
      display: inline-flex;
      text-transform: uppercase;
      align-items: center;
      cursor: pointer; }
      .filter-menu .filter-reset-canvas .filter-reset:hover {
        color: #EBA800; }
      .filter-menu .filter-reset-canvas .filter-reset::before {
        content: '';
        width: 0.8em;
        height: 0.8em;
        background-image: url("../images/filter-selected-white.svg");
        background-size: 160%;
        background-position: center;
        background-repeat: no-repeat;
        margin-right: 0.5em; }

.event-list {
  display: flex;
  flex-direction: column; }
  .event-list .event {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 0 2.5rem;
    grid-template-rows: auto 1fr;
    grid-template-areas: "image image headline headline avail book" "image image text text text text"; }
    .event-list .event:not(:first-child) {
      margin-top: 2.5rem;
      padding-top: 2.5rem;
      border-top: 1px #002862 solid; }
      @media (max-width: 1180px) {
        .event-list .event:not(:first-child) {
          margin-top: 4.6875rem; } }
      @media (max-width: 600px) {
        .event-list .event:not(:first-child) {
          margin-top: 4.6875rem; } }
      @media (max-width: 1180px) {
        .event-list .event:not(:first-child) {
          padding-top: 4.6875rem; } }
      @media (max-width: 600px) {
        .event-list .event:not(:first-child) {
          padding-top: 4.6875rem; } }
    .event-list .event:first-child {
      margin-top: 2.5rem; }
      @media (max-width: 1180px) {
        .event-list .event:first-child {
          margin-top: 0; } }
      @media (max-width: 600px) {
        .event-list .event:first-child {
          margin-top: 0; } }
    @media (max-width: 1180px) {
      .event-list .event {
        grid-template-columns: repeat(6, minmax(0, 1fr)); } }
    @media (max-width: 600px) {
      .event-list .event {
        grid-template-columns: repeat(2, minmax(0, 1fr)); } }
    @media (max-width: 1180px) {
      .event-list .event {
        gap: 1.25rem; } }
    @media (max-width: 600px) {
      .event-list .event {
        gap: 1.25rem; } }
    @media (max-width: 1180px) {
      .event-list .event {
        grid-template-areas: "image image headline headline headline headline" "image image text text text text" "image image avail avail avail book"; } }
    @media (max-width: 600px) {
      .event-list .event {
        grid-template-areas: "image image" "headline headline" "text text" "avail book"; } }
    .event-list .event .event-image {
      grid-area: image; }
    .event-list .event .event-headline {
      grid-area: headline;
      margin-bottom: 1.25rem;
      padding-bottom: 1.66667rem;
      border-bottom: 1px #002862 solid; }
      .event-list .event .event-headline .event-headline-date {
        font-weight: bold;
        font-size: 2rem; }
        @media (max-width: 1180px) {
          .event-list .event .event-headline .event-headline-date {
            font-size: 1.5625rem; } }
        @media (max-width: 600px) {
          .event-list .event .event-headline .event-headline-date {
            font-size: 1.5625rem; } }
      @media (max-width: 1180px) {
        .event-list .event .event-headline {
          margin-bottom: 0; } }
      @media (max-width: 600px) {
        .event-list .event .event-headline {
          margin-bottom: 1.5625rem; } }
      @media (max-width: 1180px) {
        .event-list .event .event-headline {
          padding-bottom: 0; } }
      @media (max-width: 600px) {
        .event-list .event .event-headline {
          padding-bottom: 1.5625rem; } }
      @media (max-width: 1180px) {
        .event-list .event .event-headline {
          border-bottom: none; } }
      @media (max-width: 600px) {
        .event-list .event .event-headline {
          border-bottom: none; } }
    .event-list .event .event-availability {
      grid-area: avail;
      padding-top: 0.5em;
      display: flex;
      justify-content: flex-start;
      align-items: flex-start;
      text-align: center; }
      @media (max-width: 1180px) {
        .event-list .event .event-availability {
          padding-top: 0; } }
      @media (max-width: 600px) {
        .event-list .event .event-availability {
          padding-top: 0; } }
      @media (max-width: 1180px) {
        .event-list .event .event-availability {
          justify-content: flex-end; } }
      @media (max-width: 600px) {
        .event-list .event .event-availability {
          justify-content: flex-start; } }
      @media (max-width: 1180px) {
        .event-list .event .event-availability {
          align-items: flex-end; } }
      @media (max-width: 600px) {
        .event-list .event .event-availability {
          align-items: flex-end; } }
      @media (max-width: 1180px) {
        .event-list .event .event-availability {
          text-align: right; } }
      @media (max-width: 600px) {
        .event-list .event .event-availability {
          text-align: right; } }
      .event-list .event .event-availability.last-ones {
        color: #ED0E0E; }
    .event-list .event .event-book {
      grid-area: book;
      display: flex;
      justify-content: flex-end;
      align-items: flex-start; }
    .event-list .event .event-text {
      grid-area: text; }
      .event-list .event .event-text h2.event-headline-title {
        font-size: 2rem;
        font-family: "Open Sans", "Calibri", "Arial", sans-serif;
        margin-bottom: 1em; }
        @media (max-width: 1180px) {
          .event-list .event .event-text h2.event-headline-title {
            font-size: 1.5625rem; } }
        @media (max-width: 600px) {
          .event-list .event .event-text h2.event-headline-title {
            font-size: 1.5625rem; } }
      .event-list .event .event-text p + p {
        margin-top: 1em; }

.event-teaser {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0 2.5rem;
  grid-template-areas: "image teasers"; }
  @media (max-width: 1180px) {
    .event-teaser {
      grid-template-columns: repeat(2, minmax(0, 1fr)); } }
  @media (max-width: 600px) {
    .event-teaser {
      grid-template-columns: 1fr; } }
  @media (max-width: 1180px) {
    .event-teaser {
      gap: 1.25rem; } }
  @media (max-width: 600px) {
    .event-teaser {
      gap: 1.25rem; } }
  @media (max-width: 1180px) {
    .event-teaser {
      grid-template-areas: "image teasers"; } }
  @media (max-width: 600px) {
    .event-teaser {
      grid-template-areas: "image" "teasers"; } }
  .event-teaser .big-image {
    grid-area: image; }
    .event-teaser .big-image figure {
      width: 100%;
      height: 100%; }
      @media (max-width: 1180px) {
        .event-teaser .big-image figure {
          height: 100%; } }
      @media (max-width: 600px) {
        .event-teaser .big-image figure {
          height: auto; } }
      @media (max-width: 600px) {
        .event-teaser .big-image figure {
          display: none; } }
    body.no-touch .event-teaser .big-image:hover img, body.no-touch .event-teaser .big-image:focus img {
      transform: scale(1.05); }
  .event-teaser .teaser-list {
    grid-area: teasers;
    display: flex;
    flex-direction: column; }
    .event-teaser .teaser-list .event + .event {
      margin-top: 2.5rem; }
      @media (max-width: 1180px) {
        .event-teaser .teaser-list .event + .event {
          margin-top: 1.25rem; } }
      @media (max-width: 600px) {
        .event-teaser .teaser-list .event + .event {
          margin-top: 1.25rem; } }
    .event-teaser .teaser-list .event {
      display: grid;
      grid-template-columns: minmax(0, 1fr) minmax(0, 2fr);
      gap: 0 2.5rem;
      color: #002862; }
      @media (max-width: 1180px) {
        .event-teaser .teaser-list .event {
          grid-template-columns: minmax(0, 1fr) minmax(0, 2fr); } }
      @media (max-width: 600px) {
        .event-teaser .teaser-list .event {
          grid-template-columns: 1fr; } }
      @media (max-width: 1180px) {
        .event-teaser .teaser-list .event {
          gap: 1.25rem; } }
      @media (max-width: 600px) {
        .event-teaser .teaser-list .event {
          gap: 1.25rem; } }
      .event-teaser .teaser-list .event .teaser-cell {
        aspect-ratio: 1; }
        @media (max-width: 1180px) {
          .event-teaser .teaser-list .event .teaser-cell {
            aspect-ratio: 1; } }
        @media (max-width: 600px) {
          .event-teaser .teaser-list .event .teaser-cell {
            aspect-ratio: 1.5; } }
      .event-teaser .teaser-list .event .teaser-time {
        grid-area: headline;
        margin-bottom: 1.25rem;
        padding-bottom: 1.66667rem;
        border-bottom: 1px #002862 solid; }
        @media (max-width: 1180px) {
          .event-teaser .teaser-list .event .teaser-time {
            margin-bottom: 0; } }
        @media (max-width: 600px) {
          .event-teaser .teaser-list .event .teaser-time {
            margin-bottom: 1.5625rem; } }
        @media (max-width: 1180px) {
          .event-teaser .teaser-list .event .teaser-time {
            padding-bottom: 0; } }
        @media (max-width: 600px) {
          .event-teaser .teaser-list .event .teaser-time {
            padding-bottom: 1.5625rem; } }
        @media (max-width: 1180px) {
          .event-teaser .teaser-list .event .teaser-time {
            border-bottom: none; } }
        @media (max-width: 600px) {
          .event-teaser .teaser-list .event .teaser-time {
            border-bottom: none; } }
      .event-teaser .teaser-list .event .teaser-text .event-headline-title, .event-teaser .teaser-list .event .teaser-text .teaser-title {
        font-size: 2rem;
        font-family: "Open Sans", "Calibri", "Arial", sans-serif;
        margin-bottom: 1em; }
        @media (max-width: 1180px) {
          .event-teaser .teaser-list .event .teaser-text .event-headline-title, .event-teaser .teaser-list .event .teaser-text .teaser-title {
            font-size: 1.5625rem; } }
        @media (max-width: 600px) {
          .event-teaser .teaser-list .event .teaser-text .event-headline-title, .event-teaser .teaser-list .event .teaser-text .teaser-title {
            font-size: 1.5625rem; } }
      .event-teaser .teaser-list .event .teaser-text p + p {
        margin-top: 1em; }
      .event-teaser .teaser-list .event .teaser-date {
        font-weight: bold;
        font-size: 2rem; }
        @media (max-width: 1180px) {
          .event-teaser .teaser-list .event .teaser-date {
            font-size: 1.5625rem; } }
        @media (max-width: 600px) {
          .event-teaser .teaser-list .event .teaser-date {
            font-size: 1.5625rem; } }

.event-teaseessdfdsr {
  display: flex;
  flex-direction: column; }
  .event-teaseessdfdsr .event {
    margin-top: 2.5rem;
    padding-top: 2.5rem;
    border-top: 1px #002862 solid;
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 0 2.5rem;
    grid-template-rows: auto 1fr;
    grid-template-areas: "image image headline headline avail book" "image image text text text text"; }
    @media (max-width: 1180px) {
      .event-teaseessdfdsr .event {
        margin-top: 4.6875rem; } }
    @media (max-width: 600px) {
      .event-teaseessdfdsr .event {
        margin-top: 4.6875rem; } }
    @media (max-width: 1180px) {
      .event-teaseessdfdsr .event {
        padding-top: 4.6875rem; } }
    @media (max-width: 600px) {
      .event-teaseessdfdsr .event {
        padding-top: 4.6875rem; } }
    @media (max-width: 1180px) {
      .event-teaseessdfdsr .event {
        grid-template-columns: repeat(6, minmax(0, 1fr)); } }
    @media (max-width: 600px) {
      .event-teaseessdfdsr .event {
        grid-template-columns: repeat(2, minmax(0, 1fr)); } }
    @media (max-width: 1180px) {
      .event-teaseessdfdsr .event {
        gap: 1.25rem; } }
    @media (max-width: 600px) {
      .event-teaseessdfdsr .event {
        gap: 1.25rem; } }
    @media (max-width: 1180px) {
      .event-teaseessdfdsr .event {
        grid-template-areas: "image image headline headline headline headline" "image image text text text text" "image image avail avail avail book"; } }
    @media (max-width: 600px) {
      .event-teaseessdfdsr .event {
        grid-template-areas: "image image" "headline headline" "text text" "avail book"; } }
    .event-teaseessdfdsr .event .event-image {
      grid-area: image; }
    .event-teaseessdfdsr .event .event-headline {
      grid-area: headline;
      margin-bottom: 1.25rem;
      padding-bottom: 1.66667rem;
      border-bottom: 1px #002862 solid; }
      @media (max-width: 1180px) {
        .event-teaseessdfdsr .event .event-headline {
          margin-bottom: 0; } }
      @media (max-width: 600px) {
        .event-teaseessdfdsr .event .event-headline {
          margin-bottom: 1.5625rem; } }
      @media (max-width: 1180px) {
        .event-teaseessdfdsr .event .event-headline {
          padding-bottom: 0; } }
      @media (max-width: 600px) {
        .event-teaseessdfdsr .event .event-headline {
          padding-bottom: 1.5625rem; } }
      @media (max-width: 1180px) {
        .event-teaseessdfdsr .event .event-headline {
          border-bottom: none; } }
      @media (max-width: 600px) {
        .event-teaseessdfdsr .event .event-headline {
          border-bottom: none; } }
      .event-teaseessdfdsr .event .event-headline .event-headline-date {
        font-weight: bold;
        font-size: 2rem; }
        @media (max-width: 1180px) {
          .event-teaseessdfdsr .event .event-headline .event-headline-date {
            font-size: 1.5625rem; } }
        @media (max-width: 600px) {
          .event-teaseessdfdsr .event .event-headline .event-headline-date {
            font-size: 1.5625rem; } }
    .event-teaseessdfdsr .event .event-availability {
      grid-area: avail;
      padding-top: 0.5em;
      display: flex;
      justify-content: flex-start;
      align-items: flex-start;
      text-align: center; }
      @media (max-width: 1180px) {
        .event-teaseessdfdsr .event .event-availability {
          padding-top: 0; } }
      @media (max-width: 600px) {
        .event-teaseessdfdsr .event .event-availability {
          padding-top: 0; } }
      @media (max-width: 1180px) {
        .event-teaseessdfdsr .event .event-availability {
          justify-content: flex-end; } }
      @media (max-width: 600px) {
        .event-teaseessdfdsr .event .event-availability {
          justify-content: flex-start; } }
      @media (max-width: 1180px) {
        .event-teaseessdfdsr .event .event-availability {
          align-items: flex-end; } }
      @media (max-width: 600px) {
        .event-teaseessdfdsr .event .event-availability {
          align-items: flex-end; } }
      @media (max-width: 1180px) {
        .event-teaseessdfdsr .event .event-availability {
          text-align: right; } }
      @media (max-width: 600px) {
        .event-teaseessdfdsr .event .event-availability {
          text-align: right; } }
      .event-teaseessdfdsr .event .event-availability.last-ones {
        color: #ED0E0E; }
    .event-teaseessdfdsr .event .event-book {
      grid-area: book;
      display: flex;
      justify-content: flex-end;
      align-items: flex-start; }
    .event-teaseessdfdsr .event .event-text {
      grid-area: text; }
      .event-teaseessdfdsr .event .event-text .event-headline-title, .event-teaseessdfdsr .event .event-text .teaser-title {
        font-size: 2rem;
        font-family: "Open Sans", "Calibri", "Arial", sans-serif;
        margin-bottom: 1em; }
        @media (max-width: 1180px) {
          .event-teaseessdfdsr .event .event-text .event-headline-title, .event-teaseessdfdsr .event .event-text .teaser-title {
            font-size: 1.5625rem; } }
        @media (max-width: 600px) {
          .event-teaseessdfdsr .event .event-text .event-headline-title, .event-teaseessdfdsr .event .event-text .teaser-title {
            font-size: 1.5625rem; } }
      .event-teaseessdfdsr .event .event-text p + p {
        margin-top: 1em; }

.block-image {
  width: 90%;
  display: block;
  margin-left: auto;
  margin-right: auto; }
  @media (max-width: 1180px) {
    .block-image {
      width: 90%; } }
  @media (max-width: 600px) {
    .block-image {
      width: 100%; } }

blockquote {
  margin: 2em auto 2em auto;
  width: 80%;
  display: flex;
  flex-direction: column;
  align-items: center; }
  @media (max-width: 1180px) {
    blockquote {
      width: 80%; } }
  @media (max-width: 600px) {
    blockquote {
      width: 100%; } }
  blockquote .quote {
    text-align: center;
    display: block;
    font-family: "Cinzel Decorative", serif;
    font-size: 2.5rem; }
    @media (max-width: 1180px) {
      blockquote .quote {
        font-size: 2rem; } }
    @media (max-width: 600px) {
      blockquote .quote {
        font-size: 2rem; } }
  blockquote .credits {
    text-align: right;
    margin-left: auto;
    margin-top: 2em; }

.map-positioner {
  position: relative;
  display: block;
  border-top-right-radius: 1.875rem;
  border-bottom-left-radius: 1.875rem;
  overflow: hidden; }
  .map-positioner .map-enabler {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: radial-gradient(#fff, #fff0);
    z-index: 100000;
    color: #002862;
    cursor: pointer;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    padding: 1em; }
  .map-positioner .map-enabler.done {
    display: none !important; }
  .map-positioner .map-container:focus + .map-enabler, .map-positioner .map-container:focus-within + .map-enabler {
    display: none !important; }
  .map-positioner .map-legend {
    border-top-right-radius: 1.875rem;
    position: absolute;
    bottom: 0;
    left: 0;
    max-width: calc(100% - 5rem);
    z-index: 10000;
    background: #ffffff;
    color: #002862;
    padding: 2.5rem; }
    @media (max-width: 1180px) {
      .map-positioner .map-legend {
        max-width: calc(100% - 2.5rem); } }
    @media (max-width: 600px) {
      .map-positioner .map-legend {
        max-width: calc(100% - 2.5rem); } }
    @media (max-width: 1180px) {
      .map-positioner .map-legend {
        padding: 1.25rem; } }
    @media (max-width: 600px) {
      .map-positioner .map-legend {
        padding: 1.25rem; } }
    .map-positioner .map-legend a {
      color: #002862; }
      .map-positioner .map-legend a:hover {
        color: #000000; }

#map-container {
  height: 600px; }

.map-positioner:has(#map-container:focus) {
  outline: medium auto currentColor;
  outline: medium auto invert;
  outline: 5px auto -webkit-focus-ring-color; }

.leaflet-popup-content-wrapper {
  font-family: "Open Sans", "Calibri", "Arial", sans-serif;
  font-size: 1.25rem;
  color: #002862; }
  @media (max-width: 1180px) {
    .leaflet-popup-content-wrapper {
      font-size: 1rem; } }
  @media (max-width: 600px) {
    .leaflet-popup-content-wrapper {
      font-size: 1rem; } }
  .leaflet-popup-content-wrapper b {
    font-weight: bold; }
  .leaflet-popup-content-wrapper .map-popup-link {
    margin-top: 0.75em;
    color: #000000;
    display: block; }
    .leaflet-popup-content-wrapper .map-popup-link:hover {
      color: #002862; }

.leaflet-popup .leaflet-popup-close-button {
  color: #002862 !important; }
  .leaflet-popup .leaflet-popup-close-button:hover {
    color: #000000; }

.leaflet-popup .leaflet-popup-content-wrapper {
  border-top-left-radius: 0;
  border-bottom-right-radius: 0; }

.leaflet-popup .leaflet-popup-content {
  font-size: 1rem; }
  @media (max-width: 1180px) {
    .leaflet-popup .leaflet-popup-content {
      font-size: 1rem; } }
  @media (max-width: 600px) {
    .leaflet-popup .leaflet-popup-content {
      font-size: 1rem; } }
  .leaflet-popup .leaflet-popup-content strong, .leaflet-popup .leaflet-popup-content b {
    font-size: 1.25rem; }
    @media (max-width: 1180px) {
      .leaflet-popup .leaflet-popup-content strong, .leaflet-popup .leaflet-popup-content b {
        font-size: 1.25rem; } }
    @media (max-width: 600px) {
      .leaflet-popup .leaflet-popup-content strong, .leaflet-popup .leaflet-popup-content b {
        font-size: 1.25rem; } }

.leaflet-control-container > .leaflet-bottom.leaflet-right {
  transform: rotate(-90deg) translateX(100%);
  transform-origin: 100% 100%; }

/*
.leaflet-control-attribution    {

	position: absolute;
	z-index: 1000;
	pointer-events: none;
}
    */
.leaflet-container :focus {
  outline: medium auto currentColor !important;
  outline: medium auto invert !important;
  outline: 5px auto -webkit-focus-ring-color !important; }

.museum-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 2.5rem 2.5rem;
  grid-template-areas: "hours prices acc" "map map travel"; }
  @media (max-width: 1180px) {
    .museum-grid {
      grid-template-columns: repeat(2, minmax(0, 1fr)); } }
  @media (max-width: 600px) {
    .museum-grid {
      grid-template-columns: 1fr; } }
  @media (max-width: 1180px) {
    .museum-grid {
      gap: 2.5rem; } }
  @media (max-width: 600px) {
    .museum-grid {
      gap: 2.5rem; } }
  @media (max-width: 1180px) {
    .museum-grid {
      grid-template-areas: "hours prices" "travel acc" "map map"; } }
  @media (max-width: 600px) {
    .museum-grid {
      grid-template-areas: "hours" "prices" "acc" "travel" "map"; } }
  .museum-grid h3 {
    font-family: "Open Sans", "Calibri", "Arial", sans-serif;
    font-size: 2.25rem;
    font-weight: bold;
    text-transform: uppercase;
    margin-bottom: 1.25rem;
    padding-bottom: 1.25rem;
    border-bottom: 1px #ffffff solid; }
    @media (max-width: 1180px) {
      .museum-grid h3 {
        font-size: 1.75rem; } }
    @media (max-width: 600px) {
      .museum-grid h3 {
        font-size: 1.75rem; } }
    @media (max-width: 1180px) {
      .museum-grid h3 {
        margin-bottom: 1.25rem; } }
    @media (max-width: 600px) {
      .museum-grid h3 {
        margin-bottom: 1.5625rem; } }
    @media (max-width: 1180px) {
      .museum-grid h3 {
        padding-bottom: 1.25rem; } }
    @media (max-width: 600px) {
      .museum-grid h3 {
        padding-bottom: 1.5625rem; } }
    @media (max-width: 1180px) {
      .museum-grid h3 {
        border-bottom: 1px #ffffff solid; } }
    @media (max-width: 600px) {
      .museum-grid h3 {
        border-bottom: 1px #ffffff solid; } }
  .museum-grid .museum-hours {
    grid-area: hours; }
  .museum-grid .museum-prices {
    grid-area: prices; }
  .museum-grid .museum-map {
    grid-area: map; }
  .museum-grid .museum-accessibility {
    grid-area: acc; }
  .museum-grid .museum-travel {
    grid-area: travel; }
  .museum-grid .museum-hours p + p, .museum-grid .museum-prices p + p, .museum-grid .museum-accessibility p + p, .museum-grid .museum-travel p + p {
    margin-top: 1em; }
  .museum-grid .museum-hours a, .museum-grid .museum-prices a, .museum-grid .museum-accessibility a, .museum-grid .museum-travel a {
    color: #78C9C6; }
    .museum-grid .museum-hours a:hover, .museum-grid .museum-prices a:hover, .museum-grid .museum-accessibility a:hover, .museum-grid .museum-travel a:hover {
      color: #BEE1E0; }
  .museum-grid .museum-map #map-container {
    height: 43.75rem; }
    @media (max-width: 1180px) {
      .museum-grid .museum-map #map-container {
        height: 31.25rem; } }
    @media (max-width: 600px) {
      .museum-grid .museum-map #map-container {
        height: 70vh; } }

.landing-museum-grid .museum-grid {
  margin-top: 1em;
  grid-template-areas: "hours map map" "prices map map" "travel map map"; }
  @media (max-width: 1180px) {
    .landing-museum-grid .museum-grid {
      grid-template-areas: "hours prices" "map travel"; } }
  @media (max-width: 600px) {
    .landing-museum-grid .museum-grid {
      grid-template-areas: "hours" "prices" "travel" "map"; } }
  .landing-museum-grid .museum-grid .museum-map #map-container {
    height: 43.75rem; }
    @media (max-width: 1180px) {
      .landing-museum-grid .museum-grid .museum-map #map-container {
        height: 21.875rem; } }
    @media (max-width: 600px) {
      .landing-museum-grid .museum-grid .museum-map #map-container {
        height: 70vh; } }
  .landing-museum-grid .museum-grid .museum-accessibility {
    display: none; }

.hero-museum {
  min-height: calc(68vh); }
  @media (max-width: 1180px) {
    .hero-museum {
      min-height: 31.25rem; } }
  @media (max-width: 600px) {
    .hero-museum {
      min-height: 25rem; } }

section.shaded {
  position: relative; }
  section.shaded::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 0.5rem;
    background: linear-gradient(0deg, #0000, #000f);
    opacity: 0.5; }

/*
section.fade-out  {

    position: relative;

    &::after   {
        content: '';
        position: absolute;
        bottom: 0;
        left: 0;
        width: 100%;
        height: $shadeHeight * 10;
        background: linear-gradient(0deg, #ffff, #fff0);
        opacity: 1;
    }
}*/
.search-results .search-result {
  margin-top: 2.5rem;
  padding-top: 2.5rem;
  border-top: 1px #002862 solid;
  color: #002862;
  padding-left: 5rem; }
  @media (max-width: 1180px) {
    .search-results .search-result {
      margin-top: 3.125rem; } }
  @media (max-width: 600px) {
    .search-results .search-result {
      margin-top: 3.125rem; } }
  @media (max-width: 1180px) {
    .search-results .search-result {
      padding-top: 3.125rem; } }
  @media (max-width: 600px) {
    .search-results .search-result {
      padding-top: 3.125rem; } }
  @media (max-width: 1180px) {
    .search-results .search-result {
      padding-left: 0; } }
  @media (max-width: 600px) {
    .search-results .search-result {
      padding-left: 0; } }

.search-results .no-result {
  display: flex;
  flex-direction: column;
  font-weight: bold;
  font-size: 2rem; }
  @media (max-width: 1180px) {
    .search-results .no-result {
      font-size: 1.5625rem; } }
  @media (max-width: 600px) {
    .search-results .no-result {
      font-size: 1.5625rem; } }
  .search-results .no-result > div {
    max-width: 60%; }
    @media (max-width: 1180px) {
      .search-results .no-result > div {
        max-width: 60%; } }
    @media (max-width: 600px) {
      .search-results .no-result > div {
        max-width: 100%; } }
  .search-results .no-result .text-separator {
    margin-top: 1.25rem;
    padding-top: 1.25rem;
    border-top: 1px #002862 solid; }
    @media (max-width: 1180px) {
      .search-results .no-result .text-separator {
        margin-top: 1.5625rem; } }
    @media (max-width: 600px) {
      .search-results .no-result .text-separator {
        margin-top: 1.5625rem; } }
    @media (max-width: 1180px) {
      .search-results .no-result .text-separator {
        padding-top: 1.5625rem; } }
    @media (max-width: 600px) {
      .search-results .no-result .text-separator {
        padding-top: 1.5625rem; } }
  .search-results .no-result a {
    color: #002862; }
    .search-results .no-result a:hover {
      color: #78C9C6; }

.search-results .event {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 0 2.5rem;
  grid-template-rows: auto 1fr;
  grid-template-areas: "headline headline . ." "text text text text"; }
  .search-results .event:first-child {
    margin-top: 2.5rem; }
    @media (max-width: 1180px) {
      .search-results .event:first-child {
        margin-top: 0; } }
    @media (max-width: 600px) {
      .search-results .event:first-child {
        margin-top: 0; } }
  @media (max-width: 1180px) {
    .search-results .event {
      grid-template-columns: repeat(6, minmax(0, 1fr)); } }
  @media (max-width: 600px) {
    .search-results .event {
      grid-template-columns: repeat(2, minmax(0, 1fr)); } }
  @media (max-width: 1180px) {
    .search-results .event {
      gap: 1.25rem; } }
  @media (max-width: 600px) {
    .search-results .event {
      gap: 1.25rem; } }
  @media (max-width: 1180px) {
    .search-results .event {
      grid-template-areas: "headline headline headline headline" "text text text text"; } }
  @media (max-width: 600px) {
    .search-results .event {
      grid-template-areas: "headline headline" "text text"; } }
  .search-results .event .event-image {
    grid-area: image; }
  .search-results .event .event-headline {
    grid-area: headline;
    margin-bottom: 1.25rem;
    padding-bottom: 1.66667rem;
    border-bottom: 1px #002862 solid; }
    .search-results .event .event-headline .event-headline-date {
      font-weight: bold;
      font-size: 2rem; }
      @media (max-width: 1180px) {
        .search-results .event .event-headline .event-headline-date {
          font-size: 1.5625rem; } }
      @media (max-width: 600px) {
        .search-results .event .event-headline .event-headline-date {
          font-size: 1.5625rem; } }
    @media (max-width: 1180px) {
      .search-results .event .event-headline {
        margin-bottom: 0; } }
    @media (max-width: 600px) {
      .search-results .event .event-headline {
        margin-bottom: 0; } }
    @media (max-width: 1180px) {
      .search-results .event .event-headline {
        padding-bottom: 0; } }
    @media (max-width: 600px) {
      .search-results .event .event-headline {
        padding-bottom: 0; } }
    @media (max-width: 1180px) {
      .search-results .event .event-headline {
        border-bottom: none; } }
    @media (max-width: 600px) {
      .search-results .event .event-headline {
        border-bottom: none; } }
  .search-results .event .event-text {
    grid-area: text; }
    .search-results .event .event-text h2.event-headline-title {
      font-size: 2rem;
      font-family: "Open Sans", "Calibri", "Arial", sans-serif;
      margin-bottom: 1em; }
      @media (max-width: 1180px) {
        .search-results .event .event-text h2.event-headline-title {
          font-size: 1.5625rem; } }
      @media (max-width: 600px) {
        .search-results .event .event-text h2.event-headline-title {
          font-size: 1.5625rem; } }
      .search-results .event .event-text h2.event-headline-title.in-search {
        font-family: "Cinzel Decorative", serif; }
    .search-results .event .event-text p + p {
      margin-top: 1em; }

footer section {
  padding-bottom: 0; }

footer .donators {
  padding-bottom: 5rem;
  gap: 5rem;
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center; }
  @media (max-width: 1180px) {
    footer .donators {
      padding-bottom: 3.125rem; } }
  @media (max-width: 600px) {
    footer .donators {
      padding-bottom: 3.125rem; } }
  @media (max-width: 1180px) {
    footer .donators {
      gap: 3.125rem; } }
  @media (max-width: 600px) {
    footer .donators {
      gap: 3.125rem; } }
  @media (max-width: 1180px) {
    footer .donators {
      flex-direction: column; } }
  @media (max-width: 600px) {
    footer .donators {
      flex-direction: column; } }
  @media (max-width: 1180px) {
    footer .donators {
      justify-content: center; } }
  @media (max-width: 600px) {
    footer .donators {
      justify-content: center; } }
  @media (max-width: 1180px) {
    footer .donators {
      align-items: center; } }
  @media (max-width: 600px) {
    footer .donators {
      align-items: center; } }
  footer .donators a {
    display: block;
    width: Min(100%, 28.125rem); }
    @media (max-width: 1180px) {
      footer .donators a {
        width: Min(60%, 18.75rem); } }
    @media (max-width: 600px) {
      footer .donators a {
        width: Min(60%, 18.75rem); } }
  footer .donators img {
    display: block;
    width: 100%; }

footer nav {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: flex-start;
  padding: 3.125rem 0;
  border-top: 1px #fff solid; }
  @media (max-width: 1180px) {
    footer nav {
      flex-direction: column; } }
  @media (max-width: 600px) {
    footer nav {
      flex-direction: column; } }
  @media (max-width: 1180px) {
    footer nav {
      justify-content: center; } }
  @media (max-width: 600px) {
    footer nav {
      justify-content: center; } }
  footer nav *:not(:first-child) {
    margin-left: 2em; }
    @media (max-width: 1180px) {
      footer nav *:not(:first-child) {
        margin-left: 0; } }
    @media (max-width: 600px) {
      footer nav *:not(:first-child) {
        margin-left: 0; } }
  footer nav a {
    color: #ffffff;
    text-transform: uppercase;
    font-weight: 600;
    line-height: 1; }
    @media (max-width: 1180px) {
      footer nav a {
        line-height: 1.6; } }
    @media (max-width: 600px) {
      footer nav a {
        line-height: 1.6; } }
    footer nav a:hover {
      color: #EBA800; }
  footer nav img, footer nav svg {
    display: inline-block; }
    @media (min-width: 1181px) {
      footer nav img, footer nav svg {
        height: 2.25rem; } }
    @media (max-width: 1180px) {
      footer nav img, footer nav svg {
        width: 1.75rem; } }
