/*
Theme-safe TRI overrides.
These rules load after the client-approved CSS and are intentionally scoped.
*/

body:not(.home) #qodef-page-inner.qodef-content-grid {
  width: min(100% - 48px, 1300px) !important;
  max-width: 1300px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

.tri-page-padding,
.events-home,
.events-content,
.disciplines-home,
.artists-box {
  padding-left: 103px !important;
  padding-right: 103px !important;
}

body.tax-event-types #qodef-page-inner.qodef-content-grid,
body.tax-exhibition-types #qodef-page-inner.qodef-content-grid,
body.single-event #qodef-page-inner.qodef-content-grid,
body.single-event-item #qodef-page-inner.qodef-content-grid,
body.single-exhibition-item #qodef-page-inner.qodef-content-grid {
  width: min(100% - 48px, 1300px) !important;
  max-width: 1300px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

body,
body h1,
body h2,
body h3,
body h4,
body h5,
body h6,
body p,
body a,
body span,
body button {
  font-family: 'MVOffice', 'Space Grotesk', Roboto, sans-serif;
}

.elementor-widget-posts article.elementor-post.exhibition-item,
.elementor-widget-posts article.elementor-post.exhibition-item .elementor-post__text,
.elementor-widget-posts article.elementor-post.exhibition-item .elementor-post__excerpt,
.elementor-widget-posts article.elementor-post.exhibition-item .elementor-post__excerpt p.tri-exhibition-excerpt-parts {
  display: flex !important;
  flex-direction: column !important;
}

.elementor-widget-posts article.elementor-post.exhibition-item {
  border-radius: 0 !important;
  overflow: hidden !important;
}

.elementor-widget-posts article.elementor-post.exhibition-item .elementor-post__thumbnail__link,
.elementor-widget-posts article.elementor-post.exhibition-item .elementor-post__thumbnail,
.elementor-widget-posts article.elementor-post.exhibition-item .elementor-post__thumbnail img,
.qodef-events-list .qodef-e.qodef-grid-item,
.qodef-shortcode.qodef-events-list .qodef-e.qodef-grid-item,
.qodef-events .qodef-event-item,
.qodef-events .qodef-event-item .qodef-e-top,
.qodef-events .qodef-event-item .qodef-e-top .qodef-e-image,
.qodef-events .qodef-event-item .qodef-e-top .qodef-e-image img,
.qodef-e.qodef-grid-item,
.qodef-e.qodef-grid-item .qodef-e-inner,
.qodef-e.qodef-grid-item .qodef-e-media-image,
.qodef-e.qodef-grid-item .qodef-e-media-image img,
.qodef-exhibition-item,
.qodef-exhibition-item .qodef-e-inner,
.qodef-exhibition-item .qodef-e-top,
.qodef-exhibition-item .qodef-e-media-image,
.qodef-exhibition-item .qodef-e-media-image img,
.qodef-exhibition-list .qodef-e,
.qodef-exhibition-list .qodef-e-inner,
.qodef-exhibition-list .qodef-e-media-image,
.qodef-exhibition-list .qodef-e-media-image img {
  border-radius: 0 !important;
}

.elementor-widget-posts article.elementor-post.exhibition-item .elementor-post__text {
  flex: 1 1 auto !important;
  padding-bottom: 15px !important;
}

.elementor-widget-posts article.elementor-post.exhibition-item .elementor-post__excerpt {
  flex: 1 1 auto !important;
}

.elementor-widget-posts article.elementor-post.exhibition-item .elementor-post__excerpt p.tri-exhibition-excerpt-parts {
  flex: 1 1 auto !important;
  margin-bottom: 0 !important;
}

.elementor-widget-posts article.elementor-post.exhibition-item .tri-exhibition-description {
  display: block;
}

.elementor-widget-posts article.elementor-post.exhibition-item .tri-exhibition-meta {
  display: block;
  margin-top: auto !important;
  padding-top: 10px !important;
  text-align: left !important;
}

.elementor-widget-posts article.elementor-post.exhibition-item .tri-exhibition-meta-label,
.elementor-widget-posts article.elementor-post.exhibition-item .tri-exhibition-meta-value {
  display: block !important;
  text-align: left !important;
}

.elementor-widget-posts article.elementor-post.exhibition-item .tri-exhibition-meta-label {
  text-transform: uppercase !important;
  white-space: nowrap !important;
  margin: 0 !important;
}

.elementor-widget-posts article.elementor-post.exhibition-item .tri-exhibition-meta-label::after {
  content: "" !important;
}

.elementor-widget-posts article.elementor-post.exhibition-item .tri-exhibition-meta-value {
  margin-top: 2px !important;
  margin-bottom: 0 !important;
}

.elementor-widget-posts article.tri-formatted-meta-card,
.elementor-widget-posts article.tri-formatted-meta-card .elementor-post__text,
.elementor-widget-posts article.tri-formatted-meta-card .elementor-post__excerpt,
.elementor-widget-posts article.tri-formatted-meta-card .elementor-post__excerpt p.tri-exhibition-excerpt-parts {
  display: flex !important;
  flex-direction: column !important;
}

.elementor-widget-posts article.tri-formatted-meta-card .elementor-post__text {
  flex: 1 1 auto !important;
  padding-bottom: 15px !important;
}

.elementor-widget-posts article.tri-formatted-meta-card .elementor-post__excerpt {
  flex: 1 1 auto !important;
}

.elementor-widget-posts article.tri-formatted-meta-card .elementor-post__excerpt p.tri-exhibition-excerpt-parts {
  flex: 1 1 auto !important;
  margin-bottom: 0 !important;
}

.elementor-widget-posts article.tri-formatted-meta-card .tri-exhibition-description {
  display: block;
}

.elementor-widget-posts article.tri-formatted-meta-card .tri-exhibition-meta {
  display: block;
  margin-top: auto !important;
  padding-top: 10px !important;
  text-align: left !important;
}

.elementor-widget-posts article.tri-formatted-meta-card .tri-exhibition-meta-label,
.elementor-widget-posts article.tri-formatted-meta-card .tri-exhibition-meta-value {
  display: block !important;
  text-align: left !important;
}

.elementor-widget-posts article.tri-formatted-meta-card .tri-exhibition-meta-label {
  text-transform: uppercase !important;
  white-space: nowrap !important;
  margin: 0 !important;
}

.elementor-widget-posts article.tri-formatted-meta-card .tri-exhibition-meta-label::after {
  content: "" !important;
}

.elementor-widget-posts article.tri-formatted-meta-card .tri-exhibition-meta-value {
  margin-top: 2px !important;
  margin-bottom: 0 !important;
}

.qodef-events-list .qodef-e.qodef-grid-item.tri-event-card,
.qodef-events-list .qodef-e.qodef-grid-item.tri-event-card .qodef-e-inner,
.qodef-events-list .qodef-e.qodef-grid-item.tri-event-card .qodef-e-event-list-bottom-holder {
  display: flex !important;
  flex-direction: column !important;
}

.qodef-events-list .qodef-e.qodef-grid-item.tri-event-card {
  background-color: #3E4243 !important;
  color: #fff !important;
  border-radius: 0 !important;
  overflow: hidden !important;
}

.qodef-events-list .qodef-e.qodef-grid-item.tri-event-card .qodef-e-inner {
  flex: 1 1 auto !important;
}

.qodef-events-list .qodef-e.qodef-grid-item.tri-event-card .qodef-e-media-image,
.qodef-events-list .qodef-e.qodef-grid-item.tri-event-card .qodef-e-event-image-link,
.qodef-events-list .qodef-e.qodef-grid-item.tri-event-card .qodef-e-media-image img {
  display: block !important;
  width: 100% !important;
}

.qodef-events-list .qodef-e.qodef-grid-item.tri-event-card .qodef-e-media-image {
  margin-bottom: 0 !important;
}

.qodef-events-list .qodef-e.qodef-grid-item.tri-event-card .qodef-e-media-image img {
  height: auto !important;
  object-fit: cover !important;
}

.qodef-events-list .qodef-e.qodef-grid-item.tri-event-card .qodef-e-event-list-bottom-holder {
  flex: 1 1 auto !important;
  background-color: #3E4243 !important;
  padding: 20px 18px 28px !important;
  box-sizing: border-box !important;
}

.qodef-events-list .qodef-e.qodef-grid-item.tri-event-card .qodef-e-heading {
  margin: 0 !important;
  padding: 0 !important;
}

.qodef-events-list .qodef-e.qodef-grid-item.tri-event-card .qodef-e-title,
.qodef-events-list .qodef-e.qodef-grid-item.tri-event-card .qodef-e-title a {
  color: #fff !important;
  font-family: 'MVOffice', 'Space Grotesk', Roboto, sans-serif !important;
  font-size: 18px !important;
  font-weight: 600 !important;
  line-height: 1.22 !important;
  margin: 0 !important;
  text-align: left !important;
}

.qodef-events-list .qodef-e.qodef-grid-item.tri-event-card--has-exhibition .qodef-info--event-types {
  display: none !important;
}

.qodef-events-list .qodef-e.qodef-grid-item.tri-event-card .tri-event-exhibition-meta {
  display: block !important;
  margin-top: auto !important;
  padding-top: 34px !important;
  text-align: left !important;
}

.qodef-events-list .qodef-e.qodef-grid-item.tri-event-card .tri-event-exhibition-label,
.qodef-events-list .qodef-e.qodef-grid-item.tri-event-card .tri-event-exhibition-title,
.qodef-events-list .qodef-e.qodef-grid-item.tri-event-card .tri-event-exhibition-link {
  display: block !important;
  color: #fff !important;
  font-family: 'MVOffice', 'Space Grotesk', Roboto, sans-serif !important;
  text-align: left !important;
}

.qodef-events-list .qodef-e.qodef-grid-item.tri-event-card .tri-event-exhibition-label {
  margin: 0 0 8px !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  line-height: 1.1 !important;
  text-transform: uppercase !important;
}

.qodef-events-list .qodef-e.qodef-grid-item.tri-event-card .tri-event-exhibition-title,
.qodef-events-list .qodef-e.qodef-grid-item.tri-event-card .tri-event-exhibition-link {
  margin: 0 !important;
  font-size: 16px !important;
  font-weight: 400 !important;
  line-height: 1.28 !important;
  text-decoration: none !important;
}

body.single-event .related-events-card .tri-related-exhibition-description-parts,
body.single-event-item .related-events-card .tri-related-exhibition-description-parts {
  display: flex !important;
  flex-direction: column !important;
  min-height: 0 !important;
  margin-bottom: 0 !important;
}

body.single-event .related-events-card .tri-related-exhibition-description-parts .tri-exhibition-description,
body.single-event-item .related-events-card .tri-related-exhibition-description-parts .tri-exhibition-description {
  display: block !important;
}

body.single-event .related-events-card .tri-related-exhibition-description-parts .tri-exhibition-meta,
body.single-event-item .related-events-card .tri-related-exhibition-description-parts .tri-exhibition-meta {
  display: block !important;
  margin-top: auto !important;
  padding-top: 24px !important;
  text-align: left !important;
}

body.single-event .related-events-card .tri-related-exhibition-description-parts .tri-exhibition-meta-label,
body.single-event .related-events-card .tri-related-exhibition-description-parts .tri-exhibition-meta-value,
body.single-event-item .related-events-card .tri-related-exhibition-description-parts .tri-exhibition-meta-label,
body.single-event-item .related-events-card .tri-related-exhibition-description-parts .tri-exhibition-meta-value {
  display: block !important;
  text-align: left !important;
}

body.single-event .related-events-card .tri-related-exhibition-description-parts .tri-exhibition-meta-label,
body.single-event-item .related-events-card .tri-related-exhibition-description-parts .tri-exhibition-meta-label {
  margin: 0 0 6px !important;
  text-transform: uppercase !important;
}

body.single-event .related-events-card .tri-related-exhibition-description-parts .tri-exhibition-meta-label::after,
body.single-event-item .related-events-card .tri-related-exhibition-description-parts .tri-exhibition-meta-label::after {
  content: "" !important;
}

body.single-event .related-events-card .tri-related-exhibition-description-parts .tri-exhibition-meta-value,
body.single-event-item .related-events-card .tri-related-exhibition-description-parts .tri-exhibition-meta-value {
  margin: 0 !important;
}

.tri-year-hidden {
  display: none !important;
}

.qodef-events-list .qodef-m-filter {
  display: flex !important;
  align-items: flex-start !important;
  justify-content: space-between !important;
  gap: 18px !important;
}

.qodef-events-list .qodef-m-filter .qodef-m-filter-items {
  flex: 1 1 auto !important;
}

.tri-year-filter {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: 10px !important;
  margin-left: auto !important;
  color: #fff !important;
  font-family: 'MVOffice', 'Space Grotesk', Roboto, sans-serif !important;
}

.tri-year-filter--exhibitions {
  width: auto !important;
  max-width: 100% !important;
  margin: 0 0 28px auto !important;
}

.tri-year-filter--standalone {
  width: max-content !important;
  margin: 0 0 28px auto !important;
}

.tri-year-filter-label {
  color: #fff !important;
  font-family: 'MVOffice', 'Space Grotesk', Roboto, sans-serif !important;
  font-size: 15px !important;
  font-weight: 500 !important;
  line-height: 1 !important;
  white-space: nowrap !important;
}

.tri-year-filter-select {
  min-width: 128px !important;
  height: 36px !important;
  padding: 0 34px 3px 12px !important;
  border: 1px solid rgba(255, 255, 255, 0.75) !important;
  border-radius: 0 !important;
  background-color: transparent !important;
  color: #fff !important;
  font-family: 'MVOffice', 'Space Grotesk', Roboto, sans-serif !important;
  font-size: 15px !important;
  font-weight: 500 !important;
  line-height: 1.05 !important;
  outline: none !important;
}

.tri-year-filter-select option {
  background-color: #1c2122 !important;
  color: #fff !important;
}

#qodef-page-footer .nsmw-svg-icon,
#qodef-page-footer .nsmw-svg-icon *,
footer .nsmw-svg-icon,
footer .nsmw-svg-icon * {
  color: #fff !important;
  fill: #fff !important;
  stroke: #fff !important;
}

@media (min-width: 769px) {
  body.single-exhibition-item #qodef-page-inner.qodef-content-grid,
  body.single-exhibition-item #qodef-page-inner > .elementor {
    width: 100% !important;
    max-width: none !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  body.single-exhibition-item .elementor-section.elementor-section-stretched {
    width: 100vw !important;
    max-width: 100vw !important;
    left: 50% !important;
    margin-left: -50vw !important;
    margin-right: 0 !important;
    box-sizing: border-box !important;
  }

  body.single-exhibition-item .elementor-section.qodef-elementor-content-grid > .elementor-container {
    width: min(100% - 48px, 1300px) !important;
    max-width: 1300px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    box-sizing: border-box !important;
  }

  body.single-exhibition-item .elementor-section.qodef-elementor-content-grid > .elementor-container > .elementor-column,
  body.single-exhibition-item .elementor-section.qodef-elementor-content-grid > .elementor-container > .elementor-column > .elementor-widget-wrap {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    box-sizing: border-box !important;
  }

  body.single-exhibition-item .elementor-section.qodef-elementor-content-grid .e-con.e-con-full {
    max-width: 100% !important;
  }

  body.single-exhibition-item .related-events-card {
    margin-left: 0 !important;
    margin-right: 0 !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
  }

  body.single-exhibition-item .elementor-section:has(.related-events-card) > .elementor-container,
  body.single-exhibition-item .tri-related-events-section > .elementor-container {
    width: min(100% - 206px, 1300px) !important;
    max-width: 1300px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    box-sizing: border-box !important;
  }

  body.single-exhibition-item .elementor-section:has(.related-events-card) .elementor-widget-wrap,
  body.single-exhibition-item .tri-related-events-section .elementor-widget-wrap {
    padding-left: 0 !important;
    padding-right: 0 !important;
    box-sizing: border-box !important;
  }

  body.single-exhibition-item .related-events-card .elementor-image-box-content {
    padding: 15px !important;
    box-sizing: border-box !important;
  }

  body.single-exhibition-item .related-events-card .elementor-image-box-title,
  body.single-exhibition-item .related-events-card .elementor-image-box-description {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
}

/* Keep the programmatic tri-card spacing consistent on phones only. */
@media (max-width: 768px) {
  .tri-card {
    margin-bottom: 25px !important;
  }
}

/* Reveal each press button only after it has been positioned beneath its logo. */
body.single-exhibition-item .e-con.e-child:has(> .elementor-widget-image + .elementor-widget-kahlo_core_button) > .elementor-widget-kahlo_core_button .elementor-widget-container,
body.single-event .e-con.e-child:has(> .elementor-widget-image + .elementor-widget-kahlo_core_button) > .elementor-widget-kahlo_core_button .elementor-widget-container,
body.single-event-item .e-con.e-child:has(> .elementor-widget-image + .elementor-widget-kahlo_core_button) > .elementor-widget-kahlo_core_button .elementor-widget-container,
body.single-exhibition-item .e-con.e-child:has(> .elementor-widget-image + .elementor-widget-spacer + .elementor-widget-kahlo_core_button) > .elementor-widget-kahlo_core_button .elementor-widget-container,
body.single-event .e-con.e-child:has(> .elementor-widget-image + .elementor-widget-spacer + .elementor-widget-kahlo_core_button) > .elementor-widget-kahlo_core_button .elementor-widget-container,
body.single-event-item .e-con.e-child:has(> .elementor-widget-image + .elementor-widget-spacer + .elementor-widget-kahlo_core_button) > .elementor-widget-kahlo_core_button .elementor-widget-container {
  visibility: hidden;
}

/* Event header title alignment by device size. */
@media (min-width: 769px) {
  .event-header-title {
    padding-top: 325px !important;
    text-align: left !important;
  }
}

@media (max-width: 768px) {
  .event-header-title {
    padding-top: 150px !important;
    text-align: center !important;
    font-size: 28px !important;
  }

  .event-header-title .qodef-m-title {
    font-size: 28px !important;
  }
}

@media (max-width: 768px) {
  body:not(.home) #qodef-page-inner.qodef-content-grid,
  body.tax-event-types #qodef-page-inner.qodef-content-grid,
  body.tax-exhibition-types #qodef-page-inner.qodef-content-grid,
  body.single-event #qodef-page-inner.qodef-content-grid,
  body.single-event-item #qodef-page-inner.qodef-content-grid,
  body.single-exhibition-item #qodef-page-inner.qodef-content-grid {
    width: calc(100% - 32px) !important;
  }

  body.single-exhibition-item #qodef-page-inner.qodef-content-grid,
  body.single-exhibition-item .qodef-content-grid {
    width: calc(100% - 32px) !important;
    max-width: calc(100% - 32px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    box-sizing: border-box !important;
  }

  body.single-exhibition-item .elementor-section.elementor-top-section,
  body.single-exhibition-item .elementor-section.elementor-top-section > .elementor-container,
  body.single-exhibition-item .elementor-section.elementor-top-section > .elementor-container > .elementor-column,
  body.single-exhibition-item .elementor-section.elementor-top-section > .elementor-container > .elementor-column > .elementor-widget-wrap {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    box-sizing: border-box !important;
  }

  .tri-page-padding,
  .events-home,
  .events-content,
  .disciplines-home,
  .artists-box {
    padding-left: 24px !important;
    padding-right: 24px !important;
  }

  .tri-card,
  body.single-event-item .tri-card,
  body.single-exhibition-item .tri-card,
  .qodef-events-list .qodef-e.qodef-grid-item,
  .qodef-shortcode.qodef-events-list .qodef-e.qodef-grid-item,
  .elementor-widget-posts .elementor-post {
    border-radius: 10px !important;
    overflow: hidden;
  }

  .tri-card,
  body.single-event .tri-card,
  body.single-event-item .tri-card,
  body.single-exhibition-item .tri-card {
    padding: 20px 18px !important;
    box-sizing: border-box !important;
    width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  .tri-card .tri-row:not(:last-child) {
    border-bottom: 1px solid rgba(255, 255, 255, 0.16);
    padding-bottom: 14px;
  }

  .tri-card .tri-label,
  .tri-card .tri-value {
    text-align: left !important;
  }

  body.single-event .events-content,
  body.single-event-item .events-content,
  body.single-exhibition-item .events-content {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  body.single-event .events-content > .e-con-inner,
  body.single-event-item .events-content > .e-con-inner,
  body.single-exhibition-item .events-content > .e-con-inner {
    width: 100% !important;
    max-width: 100% !important;
    padding-left: 16px !important;
    padding-right: 16px !important;
    box-sizing: border-box !important;
  }

  body.single-event .tri-card .tri-row,
  body.single-event-item .tri-card .tri-row,
  body.single-exhibition-item .tri-card .tri-row {
    grid-template-columns: 20px minmax(0, 1fr) !important;
    column-gap: 10px !important;
    align-items: start !important;
  }

  body.single-event .tri-card .tri-label,
  body.single-event-item .tri-card .tri-label,
  body.single-exhibition-item .tri-card .tri-label,
  body.single-event .tri-card .tri-value,
  body.single-event-item .tri-card .tri-value,
  body.single-exhibition-item .tri-card .tri-value {
    width: auto !important;
    text-align: left !important;
  }

  body.single-event .tri-card .tri-row > div,
  body.single-event-item .tri-card .tri-row > div,
  body.single-exhibition-item .tri-card .tri-row > div {
    min-width: 0 !important;
  }

  body.single-event .qodef-image-gallery .qodef-e.qodef-image-wrapper,
  body.single-event-item .qodef-image-gallery .qodef-e.qodef-image-wrapper,
  body.single-exhibition-item .qodef-image-gallery .qodef-e.qodef-image-wrapper {
    height: auto !important;
    min-height: 0 !important;
    overflow: hidden !important;
  }

  body.single-event .qodef-image-gallery .qodef-e.qodef-image-wrapper,
  body.single-event-item .qodef-image-gallery .qodef-e.qodef-image-wrapper,
  body.single-exhibition-item .qodef-image-gallery .qodef-e.qodef-image-wrapper {
    aspect-ratio: 3 / 2 !important;
  }

  body.single-event .qodef-image-gallery.qodef-swiper-container,
  body.single-event-item .qodef-image-gallery.qodef-swiper-container,
  body.single-exhibition-item .qodef-image-gallery.qodef-swiper-container {
    margin-bottom: 24px !important;
    overflow: hidden !important;
  }

  body.single-event .qodef-image-gallery .swiper-wrapper,
  body.single-event-item .qodef-image-gallery .swiper-wrapper,
  body.single-exhibition-item .qodef-image-gallery .swiper-wrapper {
    align-items: stretch !important;
  }

  body.single-event .qodef-image-gallery .swiper-slide,
  body.single-event-item .qodef-image-gallery .swiper-slide {
    height: auto !important;
  }

  body.single-event .qodef-image-gallery .swiper-slide,
  body.single-event-item .qodef-image-gallery .swiper-slide,
  body.single-exhibition-item .qodef-image-gallery .swiper-slide {
    overflow: hidden !important;
  }

  body.single-event .qodef-image-gallery .qodef-e.qodef-image-wrapper img,
  body.single-event-item .qodef-image-gallery .qodef-e.qodef-image-wrapper img,
  body.single-exhibition-item .qodef-image-gallery .qodef-e.qodef-image-wrapper img {
    width: 100% !important;
    height: 100% !important;
    display: block !important;
    object-fit: cover !important;
    object-position: center center !important;
  }

  @media (max-width: 768px) {
    body.single-event .qodef-image-gallery .qodef-e.qodef-image-wrapper.tri-gallery-image--landscape,
    body.single-event-item .qodef-image-gallery .qodef-e.qodef-image-wrapper.tri-gallery-image--landscape,
    body.single-exhibition-item .qodef-image-gallery .qodef-e.qodef-image-wrapper.tri-gallery-image--landscape {
      aspect-ratio: 4 / 5 !important;
    }

    body.single-event .qodef-image-gallery .qodef-e.qodef-image-wrapper.tri-gallery-image--portrait,
    body.single-event-item .qodef-image-gallery .qodef-e.qodef-image-wrapper.tri-gallery-image--portrait,
    body.single-exhibition-item .qodef-image-gallery .qodef-e.qodef-image-wrapper.tri-gallery-image--portrait {
      aspect-ratio: 2 / 3 !important;
    }

    body.single-event .qodef-image-gallery .qodef-e.qodef-image-wrapper.tri-gallery-image--portrait img,
    body.single-event-item .qodef-image-gallery .qodef-e.qodef-image-wrapper.tri-gallery-image--portrait img,
    body.single-exhibition-item .qodef-image-gallery .qodef-e.qodef-image-wrapper.tri-gallery-image--portrait img {
      object-fit: contain !important;
      object-position: center center !important;
    }
  }

  body.single-exhibition-item .tri-related-events-section.elementor-section-stretched,
  body.single-exhibition-item .tri-related-events-section.elementor-section-full_width,
  body.single-exhibition-item .tri-related-events-section {
    width: 100% !important;
    max-width: 100% !important;
    left: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    box-sizing: border-box !important;
  }

  body.single-exhibition-item .tri-related-events-section > .elementor-container,
  body.single-exhibition-item .tri-related-events-section > .e-con-inner {
    width: 100% !important;
    max-width: 100% !important;
    padding-left: 16px !important;
    padding-right: 16px !important;
    box-sizing: border-box !important;
  }

  body.single-exhibition-item .tri-related-events-section .elementor-widget-wrap {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  body.single-exhibition-item .tri-related-events-section .related-events-card {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    box-sizing: border-box !important;
  }

  body.single-exhibition-item .tri-related-events-section .related-events-card .elementor-image-box-content {
    padding: 15px 14px !important;
  }

  body.single-exhibition-item .tri-related-events-section .related-events-card .elementor-image-box-title,
  body.single-exhibition-item .tri-related-events-section .related-events-card .elementor-image-box-description {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  body.single-exhibition-item .elementor-section:has(.related-events-card),
  body.single-exhibition-item .e-con:has(.related-events-card) {
    width: 100% !important;
    max-width: 100% !important;
    left: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    box-sizing: border-box !important;
  }

  body.single-exhibition-item .elementor-section:has(.related-events-card) > .elementor-container,
  body.single-exhibition-item .e-con:has(.related-events-card) > .e-con-inner {
    width: 100% !important;
    max-width: 100% !important;
    padding-left: 16px !important;
    padding-right: 16px !important;
    box-sizing: border-box !important;
  }

  body.single-exhibition-item .elementor-section:has(.related-events-card) .elementor-widget-wrap {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  body.single-exhibition-item .elementor-section:has(.related-events-card) .elementor-widget-heading,
  body.single-exhibition-item .e-con:has(.related-events-card) .elementor-widget-heading {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  body.single-exhibition-item .elementor-section:has(.related-events-card) .elementor-heading-title,
  body.single-exhibition-item .e-con:has(.related-events-card) .elementor-heading-title {
    padding-left: 0 !important;
    padding-right: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  body.single-exhibition-item .elementor-section:has(.related-events-card) .related-events-card,
  body.single-exhibition-item .e-con:has(.related-events-card) .related-events-card {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    box-sizing: border-box !important;
  }

  body.single-exhibition-item .elementor-section:has(.related-events-card) .related-events-card .elementor-image-box-content,
  body.single-exhibition-item .e-con:has(.related-events-card) .related-events-card .elementor-image-box-content {
    padding: 15px 14px !important;
    box-sizing: border-box !important;
  }

  body.single-exhibition-item .elementor-section:has(.related-events-card) .related-events-card .elementor-image-box-title,
  body.single-exhibition-item .elementor-section:has(.related-events-card) .related-events-card .elementor-image-box-description,
  body.single-exhibition-item .e-con:has(.related-events-card) .related-events-card .elementor-image-box-title,
  body.single-exhibition-item .e-con:has(.related-events-card) .related-events-card .elementor-image-box-description {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  .qodef-button,
  .qodef-m-filter-item,
  .tri-event-register-btn,
  .forminator-ui.forminator-custom-form button.forminator-button.forminator-button-submit {
    min-height: 48px;
  }

  body.single-event .elementor-widget__width-initial.elementor-widget-kahlo_core_button .qodef-button.qodef-size--small,
  body.single-event-item .elementor-widget__width-initial.elementor-widget-kahlo_core_button .qodef-button.qodef-size--small,
  body.single-exhibition-item .elementor-widget__width-initial.elementor-widget-kahlo_core_button .qodef-button.qodef-size--small {
    min-height: 0 !important;
    height: auto !important;
    line-height: 1 !important;
    padding-top: 6px !important;
    padding-bottom: 6px !important;
  }

  body.single-event .elementor-widget__width-initial.elementor-widget-kahlo_core_button .qodef-m-text,
  body.single-event-item .elementor-widget__width-initial.elementor-widget-kahlo_core_button .qodef-m-text,
  body.single-exhibition-item .elementor-widget__width-initial.elementor-widget-kahlo_core_button .qodef-m-text {
    display: inline-flex !important;
    align-items: center !important;
    min-height: 0 !important;
    height: auto !important;
    line-height: 1 !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .qodef-e.qodef-grid-item,
  .qodef-e.qodef-grid-item .qodef-e-inner,
  .qodef-e.qodef-grid-item .qodef-e-media-image,
  .qodef-e.qodef-grid-item .qodef-e-media-image img,
  .qodef-exhibition-item,
  .qodef-exhibition-item .qodef-e-inner,
  .qodef-exhibition-item .qodef-e-top,
  .qodef-exhibition-item .qodef-e-media-image,
  .qodef-exhibition-item .qodef-e-media-image img,
  .qodef-exhibition-list .qodef-e,
  .qodef-exhibition-list .qodef-e-inner,
  .qodef-exhibition-list .qodef-e-media-image,
  .qodef-exhibition-list .qodef-e-media-image img {
    border-radius: 10px !important;
  }

  .qodef-e.qodef-grid-item,
  .qodef-exhibition-item,
  .qodef-exhibition-list .qodef-e {
    overflow: hidden !important;
  }

  .qodef-shortcode.qodef-events-list.qodef-item-layout--info-below .qodef-grid-inner {
    gap: 14px !important;
    row-gap: 14px !important;
  }

  .qodef-events-list .qodef-grid-inner,
  .qodef-shortcode.qodef-events-list .qodef-grid-inner {
    --qode-columns-col-gap: 16px !important;
    --qode-columns-row-gap: 18px !important;
    column-gap: 16px !important;
    row-gap: 18px !important;
  }

  .qodef-shortcode.qodef-events-list.qodef-item-layout--info-below .qodef-e.qodef-grid-item,
  .qodef-events-list .qodef-e.qodef-grid-item,
  .qodef-events .qodef-event-item {
    margin-bottom: 14px !important;
  }

  .qodef-events .qodef-event-item .qodef-e-top .qodef-e-image,
  .qodef-events .qodef-event-item .qodef-e-top,
  .qodef-e-media-image {
    margin-bottom: 12px !important;
  }

  .qodef-events .qodef-e-info,
  .qodef-e-heading,
  .qodef-e-content .qodef-e-info {
    padding-top: 8px !important;
    padding-bottom: 8px !important;
  }

  .qodef-events-list .qodef-e-heading,
  .qodef-events .qodef-event-item .qodef-e-heading {
    margin-top: 6px !important;
    margin-bottom: 12px !important;
  }

  .qodef-events-list .qodef-e-title,
  .qodef-events-list .qodef-e-title a,
  .qodef-events .qodef-event-item .qodef-e-title,
  .qodef-events .qodef-event-item .qodef-e-title a {
    font-size: 15px !important;
    line-height: 1.18 !important;
    margin-bottom: 0 !important;
  }

  .elementor-widget-posts article.elementor-post.exhibition-item {
    border-radius: 10px !important;
    overflow: hidden !important;
    margin-top: 0 !important;
  }

  .elementor-widget-posts.elementor-grid-mobile-2 .elementor-posts-container.elementor-grid {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    column-gap: 10px !important;
    row-gap: 20px !important;
  }

  .elementor-widget-posts.elementor-grid-mobile-2 .elementor-posts-container.elementor-posts-masonry article.elementor-post.exhibition-item {
    margin-top: 0 !important;
  }

  .elementor-widget-posts article.elementor-post.exhibition-item .elementor-post__thumbnail__link,
  .elementor-widget-posts article.elementor-post.exhibition-item .elementor-post__thumbnail {
    display: block !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border-radius: 10px 10px 0 0 !important;
    overflow: hidden !important;
  }

  .elementor-widget-posts article.elementor-post.exhibition-item .elementor-post__thumbnail img {
    position: static !important;
    display: block !important;
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    max-width: 100% !important;
    margin: 0 !important;
    transform: none !important;
    border-radius: 10px 10px 0 0 !important;
  }

  .elementor-widget-posts article.elementor-post.exhibition-item .elementor-post__text {
    padding: 15px 12px 10px !important;
    min-height: 104px !important;
    text-align: left !important;
  }

  .elementor-widget-posts article.elementor-post.exhibition-item .elementor-post__title {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    font-size: 15px !important;
    line-height: 1.18 !important;
    text-align: left !important;
  }

  .elementor-widget-posts article.elementor-post.exhibition-item .elementor-post__excerpt {
    margin-top: 18px !important;
    margin-bottom: 0 !important;
    text-align: left !important;
  }

  .elementor-widget-posts article.elementor-post.exhibition-item .tri-exhibition-description {
    display: none !important;
  }

  .elementor-widget-posts article.elementor-post.exhibition-item .tri-exhibition-meta {
    font-size: 14px !important;
    line-height: 1.25 !important;
    margin-top: 0 !important;
    padding-top: 10px !important;
    text-align: left !important;
  }

  .elementor-widget-posts article.elementor-post.exhibition-item .tri-exhibition-meta-label,
  .elementor-widget-posts article.elementor-post.exhibition-item .tri-exhibition-meta-value {
    display: block !important;
  }

  .elementor-widget-posts article.elementor-post.exhibition-item .tri-exhibition-meta-label {
    text-transform: uppercase !important;
    white-space: nowrap !important;
    font-size: 11px !important;
    line-height: 1.1 !important;
    letter-spacing: 0.04em !important;
    margin: 0 0 2px !important;
  }

  .elementor-widget-posts article.elementor-post.exhibition-item .tri-exhibition-meta-label::after {
    content: "" !important;
  }

  .elementor-widget-posts article.elementor-post.exhibition-item .tri-exhibition-meta-value {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }

  .qodef-m-filter .qodef-m-filter-items {
    gap: 8px !important;
    padding-top: 0 !important;
    padding-bottom: 4px !important;
    align-items: flex-start !important;
  }

  .qodef-events-list .qodef-m-filter {
    flex-direction: column !important;
    gap: 12px !important;
  }

  .tri-year-filter,
  .tri-year-filter--events,
  .tri-year-filter--exhibitions {
    width: auto !important;
    max-width: 100% !important;
    justify-content: flex-end !important;
    margin-left: 0 !important;
    margin-bottom: 16px !important;
  }

  .qodef-events-list .tri-year-filter--events {
    align-self: flex-start !important;
    justify-content: flex-start !important;
  }

  .tri-year-filter--standalone {
    width: auto !important;
    margin: 0 0 16px 0 !important;
  }

  .tri-year-filter--exhibitions {
    margin-left: auto !important;
    margin-right: 0 !important;
  }

  .tri-year-filter-label,
  .tri-year-filter-select {
    font-size: 14px !important;
  }

  .qodef-shortcode.qodef-events-list.qodef-item-layout--info-below .qodef-e.qodef-grid-item .qodef-info--event-types,
  .qodef-shortcode.qodef-events-list.qodef-item-layout--info-below .qodef-e.qodef-grid-item .qodef-e-info--event-types,
  .qodef-events-list .qodef-info--event-types,
  .qodef-events .qodef-event-item .qodef-info--event-types,
  .qodef-exhibition-list .qodef-info--exhibition-types,
  .qodef-exhibition-item .qodef-info--exhibition-types,
  .qodef-info--exhibition-types {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    padding-top: 6px !important;
    padding-bottom: 6px !important;
  }

  .qodef-m-filter .qodef-m-filter-item,
  .qodef-events .qodef-event-item .qodef-info--event-types .qodef-e-info-content-link,
  .qodef-events-list .qodef-info--event-types .qodef-e-info-content-link,
  .qodef-exhibition-list .qodef-info--exhibition-types .qodef-e-info-content-link,
  .qodef-exhibition-item .qodef-info--exhibition-types .qodef-e-info-content-link,
  .qodef-info--exhibition-types .qodef-e-info-content-link {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 0 !important;
    line-height: 1 !important;
    padding-top: 6px !important;
    padding-bottom: 6px !important;
  }

  .qodef-m-filter .qodef-m-filter-item-name,
  .qodef-events .qodef-event-item .qodef-info--event-types .qodef-e-info-content-link,
  .qodef-events-list .qodef-info--event-types .qodef-e-info-content-link,
  .qodef-exhibition-list .qodef-info--exhibition-types .qodef-e-info-content-link,
  .qodef-exhibition-item .qodef-info--exhibition-types .qodef-e-info-content-link,
  .qodef-info--exhibition-types .qodef-e-info-content-link {
    line-height: 1 !important;
  }
}

/* Elementor footer: keep all written content in the TRI typeface. */
#menu-tri-footer :is(h1, h2, h3, h4, h5, h6, p, a, span, li, label, button, input, textarea, select, .elementor-heading-title, .elementor-icon-box-title, .elementor-icon-box-description, .elementor-nav-menu--main .elementor-item),
#menu-tri-footer + .elementor-element-c41ea7f :is(h1, h2, h3, h4, h5, h6, p, a, span, li, label, button, input, textarea, select, .elementor-heading-title, .elementor-icon-box-title, .elementor-icon-box-description) {
  font-family: "MVOffice", "Space Grotesk", Roboto, sans-serif !important;
}

/* =========================================================================
 * TRI — Exhibition single: align full-width blocks to the body content column
 * -------------------------------------------------------------------------
 * Rewritten against the REAL DOM (from DevTools):
 *
 *  - Purple "Visitor Engagement Statement" section =
 *      section.elementor-element-d2b0881  (old-style .elementor-section,
 *      .elementor-top-section, .elementor-section-boxed, .qodef-elementor-content-grid)
 *      -> content lives inside `> .elementor-container`.
 *      On MOBILE it was flush to the edge because our own full-width override
 *      (earlier in this file) force-zeroes padding on EVERY .elementor-top-section,
 *      which ALSO defeats padding set in Elementor. We re-add padding here with
 *      equal specificity + later source order so it wins.
 *
 *  - Related Events block = FLEX containers (Elementor "e-con"):
 *      .e-con-full (parent, id c0d6723)
 *        - .e-con-full.tri-related-events-section (id 618168f)  <- cards live here
 *      The "Related Events" heading is a child of the PARENT con, so it sat
 *      pinned hard-left. `e-con-full` has NO `.e-con-inner`/`.elementor-container`
 *      wrapper, so the old selectors matched nothing. We pad the parent con
 *      itself (matched structurally with :has(), plus the id as a backup anchor)
 *      to centre BOTH heading + cards on the 1300px column.
 *
 *  REUSABILITY: on other exhibition pages, add the CSS class
 *  `tri-related-events-section` to the related-events con and (optionally)
 *  `tri-statement-section` to the purple section — these rules then apply
 *  without needing the numeric element ids.
 * ========================================================================= */

/* ---- DESKTOP: Related Events — box heading + cards to the page column ---- */
@media (min-width: 769px) {

  /* Constrain + centre the WHOLE Related Events block (heading + card row)
     to the same 1300px column as the rest of the page. width + auto-margins
     is far more reliable than side-padding on Elementor flex containers.
     `c0d6723` is the top-level flex-con that directly holds the
     `.tri-related-events-section` card cons on this page; :has() matches it
     structurally so other exhibition pages work too. */
  body.single-exhibition-item .e-con:has(> .tri-related-events-section),
  body.single-exhibition-item .elementor-element-c0d6723 {
    width: min(100% - 48px, 1300px) !important;
    max-width: 1300px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    box-sizing: border-box !important;
  }

  /* Neutralise the inner section so padding doesn't stack / double up */
  body.single-exhibition-item .tri-related-events-section {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    box-sizing: border-box !important;
  }

  /* Ensure the "Related Events" heading is left-aligned within that column */
  body.single-exhibition-item .e-con:has(> .tri-related-events-section) .elementor-widget-heading .elementor-heading-title,
  body.single-exhibition-item .elementor-element-c0d6723 .elementor-widget-heading .elementor-heading-title {
    padding-left: 0 !important;
    margin-left: 0 !important;
    text-align: left !important;
  }
}

/* ---- MOBILE: purple statement section — restore internal padding ---- */
@media (max-width: 768px) {

  /* Beat the earlier full-width override (same specificity, later in file).
     Targets the section's inner container where the text actually sits. */
  body.single-exhibition-item .elementor-section.elementor-element-d2b0881 > .elementor-container,
  body.single-exhibition-item .elementor-section.tri-statement-section > .elementor-container {
    padding-top: 24px !important;
    padding-bottom: 24px !important;
    padding-left: 24px !important;
    padding-right: 24px !important;
    box-sizing: border-box !important;
  }

  /* Keep the Related Events heading + cards padded in from the edges too */
  body.single-exhibition-item .e-con:has(> .tri-related-events-section),
  body.single-exhibition-item .elementor-element-c0d6723 {
    padding-left: 16px !important;
    padding-right: 16px !important;
    box-sizing: border-box !important;
  }

  body.single-exhibition-item .tri-related-events-section {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    box-sizing: border-box !important;
  }
}

/* TRI-CSS-BUILD: related-events-align-v3 (2026-07-08) */

/* TRI hotfix: remove excess mobile/detail and related-card padding */
@media (min-width: 769px) {
  body.single-exhibition-item .related-events-card .elementor-image-box-content {
    padding: 10px 12px !important;
    box-sizing: border-box !important;
  }
}

@media (max-width: 768px) {
  body.single-exhibition-item .events-content > .e-con-inner {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  body.single-exhibition-item .events-content .tri-card {
    padding: 18px 16px !important;
  }

  body.single-exhibition-item .e-con:has(> .tri-related-events-section),
  body.single-exhibition-item .elementor-element-c0d6723 {
    padding: 0 !important;
  }

  body.single-exhibition-item .tri-related-events-section .related-events-card .elementor-image-box-content,
  body.single-exhibition-item .elementor-section:has(.related-events-card) .related-events-card .elementor-image-box-content,
  body.single-exhibition-item .e-con:has(.related-events-card) .related-events-card .elementor-image-box-content {
    padding: 10px 12px !important;
    box-sizing: border-box !important;
  }
}

@media (min-width: 769px) {
  body.single-exhibition-item .e-con:has(> .tri-related-events-section),
  body.single-exhibition-item .elementor-element-c0d6723 {
    width: min(100%, 1300px) !important;
    max-width: 1300px !important;
  }
}

/* TRI hotfix: keep mobile exhibition card curator labels aligned */
@media (max-width: 768px) {
  body .elementor-widget-posts article.elementor-post.exhibition-item .elementor-post__text {
    position: relative !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-start !important;
    padding: 0.875rem 0.75rem 1rem !important;
    box-sizing: border-box !important;
    overflow: visible !important;
  }

  body .elementor-widget-posts article.elementor-post.exhibition-item .elementor-post__title,
  body .elementor-widget-posts article.elementor-post.exhibition-item .elementor-post__title *,
  body .elementor-widget-posts article.elementor-post.exhibition-item .elementor-post__title a {
    font-size: 1rem !important;
    line-height: 1.18 !important;
    text-align: left !important;
    margin: 0 !important;
  }

  body .elementor-widget-posts article.elementor-post.exhibition-item .elementor-post__title {
    display: block !important;
    flex: 0 0 auto !important;
    height: auto !important;
    min-height: 2.35rem !important;
    max-height: 3.55rem !important;
    margin-top: 0 !important;
    margin-bottom: 0.85rem !important;
    overflow: hidden !important;
  }

  body .elementor-widget-posts article.elementor-post.exhibition-item .elementor-post__title a {
    display: -webkit-box !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: 3.55rem !important;
    overflow: hidden !important;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
  }

  body .elementor-widget-posts article.elementor-post.exhibition-item .elementor-post__excerpt,
  body .elementor-widget-posts article.elementor-post.exhibition-item .elementor-post__excerpt p.tri-exhibition-excerpt-parts {
    display: block !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    padding: 0 !important;
  }

  body .elementor-widget-posts article.elementor-post.exhibition-item .tri-exhibition-description {
    display: none !important;
  }

  body .elementor-widget-posts article.elementor-post.exhibition-item .tri-exhibition-meta {
    position: static !important;
    top: auto !important;
    left: 12px !important;
    right: 12px !important;
    bottom: auto !important;
    display: block !important;
    margin-top: 0 !important;
    padding-top: 0 !important;
    text-align: left !important;
  }

  body .elementor-widget-posts article.elementor-post.exhibition-item .tri-exhibition-meta-label {
    display: block !important;
    margin: 0 0 4px !important;
    line-height: 1.1 !important;
    font-size: 0.6875rem !important;
  }

  body .elementor-widget-posts article.elementor-post.exhibition-item .tri-exhibition-meta-value {
    display: block !important;
    margin: 0 !important;
    font-size: 1rem !important;
    line-height: 1.25 !important;
  }

  body .elementor-widget-posts article.tri-formatted-meta-card .elementor-post__text {
    position: relative !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-start !important;
    padding: 0.875rem 0.75rem 1rem !important;
    box-sizing: border-box !important;
    overflow: visible !important;
  }

  body .elementor-widget-posts article.tri-formatted-meta-card .elementor-post__excerpt,
  body .elementor-widget-posts article.tri-formatted-meta-card .elementor-post__excerpt p.tri-exhibition-excerpt-parts {
    display: block !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    padding: 0 !important;
  }

  body .elementor-widget-posts article.tri-formatted-meta-card .tri-exhibition-description {
    display: none !important;
  }

  body .elementor-widget-posts article.tri-formatted-meta-card .tri-exhibition-meta {
    position: static !important;
    top: auto !important;
    left: 12px !important;
    right: 12px !important;
    bottom: auto !important;
    display: block !important;
    margin-top: 0 !important;
    padding-top: 0 !important;
    text-align: left !important;
  }

  body .elementor-widget-posts article.tri-formatted-meta-card .tri-exhibition-meta-label {
    display: block !important;
    margin: 0 0 4px !important;
    line-height: 1.1 !important;
    font-size: 0.6875rem !important;
  }

  body .elementor-widget-posts article.tri-formatted-meta-card .tri-exhibition-meta-value {
    display: block !important;
    margin: 0 !important;
    font-size: 1rem !important;
    line-height: 1.25 !important;
  }
}

/* TRI hotfix: home event tabs should match the button treatment */
body.home .elementor-widget-n-tabs,
body.page-id-6543 .elementor-widget-n-tabs {
  --n-tabs-title-color: #ffffff;
  --n-tabs-title-color-hover: #ffffff;
  --n-tabs-title-color-active: #1c2122;
  --n-tabs-title-background-color: transparent;
  --n-tabs-title-background-color-hover: transparent;
  --n-tabs-title-background-color-active: #ffffff;
}

body.home .elementor-widget-n-tabs .e-n-tabs-heading .e-n-tab-title,
body.page-id-6543 .elementor-widget-n-tabs .e-n-tabs-heading .e-n-tab-title {
  background: transparent !important;
  background-image: none !important;
  border: 1px solid #ffffff !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  color: #ffffff !important;
}

body.home .elementor-widget-n-tabs .e-n-tabs-heading .e-n-tab-title .e-n-tab-title-text,
body.page-id-6543 .elementor-widget-n-tabs .e-n-tabs-heading .e-n-tab-title .e-n-tab-title-text {
  color: inherit !important;
}

body.home .elementor-widget-n-tabs .e-n-tabs-heading .e-n-tab-title[aria-selected="true"],
body.home .elementor-widget-n-tabs .e-n-tabs-heading .e-n-tab-title[aria-selected=true],
body.page-id-6543 .elementor-widget-n-tabs .e-n-tabs-heading .e-n-tab-title[aria-selected="true"],
body.page-id-6543 .elementor-widget-n-tabs .e-n-tabs-heading .e-n-tab-title[aria-selected=true] {
  background: #ffffff !important;
  background-image: none !important;
  border-color: #ffffff !important;
  color: #1c2122 !important;
}

body.home .elementor-widget-n-tabs .e-n-tabs-heading .e-n-tab-title[aria-selected="false"],
body.home .elementor-widget-n-tabs .e-n-tabs-heading .e-n-tab-title[aria-selected=false],
body.home .elementor-widget-n-tabs .e-n-tabs-heading .e-n-tab-title[aria-selected="false"]:hover,
body.home .elementor-widget-n-tabs .e-n-tabs-heading .e-n-tab-title[aria-selected=false]:hover,
body.page-id-6543 .elementor-widget-n-tabs .e-n-tabs-heading .e-n-tab-title[aria-selected="false"],
body.page-id-6543 .elementor-widget-n-tabs .e-n-tabs-heading .e-n-tab-title[aria-selected=false],
body.page-id-6543 .elementor-widget-n-tabs .e-n-tabs-heading .e-n-tab-title[aria-selected="false"]:hover,
body.page-id-6543 .elementor-widget-n-tabs .e-n-tabs-heading .e-n-tab-title[aria-selected=false]:hover {
  background: transparent !important;
  background-image: none !important;
  border-color: #ffffff !important;
  color: #ffffff !important;
}

/* TRI hotfix: keep single event header pattern clipped to the hero */
@media (min-width: 1025px) {
  body.single-event .header-container,
  body.single-event-item .header-container {
    overflow: hidden !important;
    contain: paint;
    isolation: isolate;
  }

  body.single-event .header-container .tri-pattern1,
  body.single-event .header-container .tri-pattern2,
  body.single-event .header-container .tri-pattern1 > *,
  body.single-event .header-container .tri-pattern2 > *,
  body.single-event-item .header-container .tri-pattern1,
  body.single-event-item .header-container .tri-pattern2,
  body.single-event-item .header-container .tri-pattern1 > *,
  body.single-event-item .header-container .tri-pattern2 > * {
    overflow: hidden !important;
    max-height: 100% !important;
  }
}

body.single-exhibition-item .related-events-card .elementor-image-box-title,
body.single-exhibition-item .related-events-card .elementor-image-box-description,
body.single-exhibition-item .tri-related-events-section .related-events-card .elementor-image-box-title,
body.single-exhibition-item .tri-related-events-section .related-events-card .elementor-image-box-description,
body.single-exhibition-item .elementor-section:has(.related-events-card) .related-events-card .elementor-image-box-title,
body.single-exhibition-item .elementor-section:has(.related-events-card) .related-events-card .elementor-image-box-description,
body.single-exhibition-item .e-con:has(.related-events-card) .related-events-card .elementor-image-box-title,
body.single-exhibition-item .e-con:has(.related-events-card) .related-events-card .elementor-image-box-description,
body.single-event .related-events-card .elementor-image-box-title,
body.single-event .related-events-card .elementor-image-box-description,
body.single-event .tri-related-events-section .related-events-card .elementor-image-box-title,
body.single-event .tri-related-events-section .related-events-card .elementor-image-box-description,
body.single-event .elementor-section:has(.related-events-card) .related-events-card .elementor-image-box-title,
body.single-event .elementor-section:has(.related-events-card) .related-events-card .elementor-image-box-description,
body.single-event .e-con:has(.related-events-card) .related-events-card .elementor-image-box-title,
body.single-event .e-con:has(.related-events-card) .related-events-card .elementor-image-box-description,
body.single-event-item .related-events-card .elementor-image-box-title,
body.single-event-item .related-events-card .elementor-image-box-description,
body.single-event-item .tri-related-events-section .related-events-card .elementor-image-box-title,
body.single-event-item .tri-related-events-section .related-events-card .elementor-image-box-description,
body.single-event-item .elementor-section:has(.related-events-card) .related-events-card .elementor-image-box-title,
body.single-event-item .elementor-section:has(.related-events-card) .related-events-card .elementor-image-box-description,
body.single-event-item .e-con:has(.related-events-card) .related-events-card .elementor-image-box-title,
body.single-event-item .e-con:has(.related-events-card) .related-events-card .elementor-image-box-description {
  padding-left: 5px !important;
  padding-right: 5px !important;
  box-sizing: border-box !important;
}

body.single-event .related-events-card.elementor-widget-image-box .elementor-image-box-content,
body.single-event-item .related-events-card.elementor-widget-image-box .elementor-image-box-content,
body.single-event .related-events-card .elementor-image-box-content,
body.single-event-item .related-events-card .elementor-image-box-content {
  width: 100% !important;
  padding: 20px 24px 22px !important;
  box-sizing: border-box !important;
}

body.single-event .related-events-card .elementor-image-box-title,
body.single-event-item .related-events-card .elementor-image-box-title,
body.single-event .related-events-card .elementor-image-box-description,
body.single-event-item .related-events-card .elementor-image-box-description {
  max-width: 100% !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  box-sizing: border-box !important;
}

/* TRI press cards: remove Elementor's gap widget below each press logo. */
body.single-exhibition-item .tri-press-section .e-con.e-child > .elementor-widget-spacer,
body.single-event .tri-press-section .e-con.e-child > .elementor-widget-spacer,
body.single-event-item .tri-press-section .e-con.e-child > .elementor-widget-spacer {
  display: none !important;
  height: 0 !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}

body.single-exhibition-item .tri-press-section .e-con.e-child > .elementor-widget-kahlo_core_button,
body.single-event .tri-press-section .e-con.e-child > .elementor-widget-kahlo_core_button,
body.single-event-item .tri-press-section .e-con.e-child > .elementor-widget-kahlo_core_button,
body.single-exhibition-item .tri-press-section .e-con.e-child > .elementor-widget-kahlo_core_button .elementor-widget-container,
body.single-event .tri-press-section .e-con.e-child > .elementor-widget-kahlo_core_button .elementor-widget-container,
body.single-event-item .tri-press-section .e-con.e-child > .elementor-widget-kahlo_core_button .elementor-widget-container {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

/* Keep press buttons stable and centered under their logos before and after image layout. */
body.single-exhibition-item .tri-press-section .e-con.e-child {
  align-items: center !important;
}

body.single-event .tri-press-section .e-con.e-child,
body.single-event-item .tri-press-section .e-con.e-child {
  align-items: center !important;
}

body.single-exhibition-item .tri-press-section .e-con.e-child > .elementor-widget-image,
body.single-event .tri-press-section .e-con.e-child > .elementor-widget-image,
body.single-event-item .tri-press-section .e-con.e-child > .elementor-widget-image {
  width: auto !important;
  max-width: 100% !important;
  align-self: center !important;
}

body.single-exhibition-item .tri-press-section .elementor-widget-kahlo_core_button,
body.single-event .tri-press-section .elementor-widget-kahlo_core_button,
body.single-event-item .tri-press-section .elementor-widget-kahlo_core_button {
  width: 100% !important;
  max-width: 100% !important;
  align-self: stretch !important;
  line-height: 0 !important;
}

body.single-exhibition-item .tri-press-section .elementor-widget-kahlo_core_button .elementor-widget-container,
body.single-event .tri-press-section .elementor-widget-kahlo_core_button .elementor-widget-container,
body.single-event-item .tri-press-section .elementor-widget-kahlo_core_button .elementor-widget-container {
  display: flex !important;
  width: 100% !important;
  align-items: flex-start !important;
  justify-content: center !important;
  line-height: 0 !important;
}

body.single-exhibition-item .tri-press-section .elementor-widget-kahlo_core_button .qodef-button,
body.single-event .tri-press-section .elementor-widget-kahlo_core_button .qodef-button,
body.single-event-item .tri-press-section .elementor-widget-kahlo_core_button .qodef-button {
  display: inline-flex !important;
  align-items: center !important;
  vertical-align: top !important;
  min-height: 0 !important;
  height: auto !important;
  margin: 0 !important;
  padding: 6px 14px !important;
  line-height: 1 !important;
  box-sizing: border-box !important;
}

/* Compact, readable mobile footer shared by every page. */
@media (max-width: 767px) {
  #qodef-page-footer-top-area .qodef-grid-inner {
    row-gap: 22px !important;
  }

  #qodef-page-footer-top-area-inner .qodef-grid .qodef-grid-item {
    padding: 14px 15px !important;
  }

  #qodef-page-footer #block-11 .wp-block-columns {
    display: grid !important;
    grid-template-columns: 96px minmax(0, 1fr) !important;
    gap: 16px !important;
    align-items: center !important;
  }

  #qodef-page-footer #block-11 p {
    margin: 0 !important;
    text-wrap: pretty;
  }

  #qodef-page-footer .widget_nav_menu ul.menu {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 8px 18px !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  #qodef-page-footer .widget_nav_menu ul.menu li {
    margin: 0 !important;
    min-width: 0 !important;
  }

  #qodef-page-footer .widget_nav_menu ul.menu li a {
    display: block !important;
    line-height: 1.3 !important;
    text-wrap: pretty;
  }

  #qodef-page-footer-top-area .qodef-grid-inner > .qodef-grid-item:nth-child(3) > .widget {
    margin: 0 0 16px !important;
  }

  #qodef-page-footer .qodef-icon-list-item .qodef-e-title,
  #qodef-page-footer .qodef-icon-list-item .qodef-e-title a {
    line-height: 1.35 !important;
    text-wrap: pretty;
  }

  #qodef-page-footer #new_social_media_widget-2 {
    display: flex !important;
    align-items: center !important;
    gap: 14px !important;
  }

  #qodef-page-footer #new_social_media_widget-2 .qodef-widget-title {
    flex: 0 0 auto !important;
    margin: 0 !important;
  }

  #qodef-page-footer #new_social_media_widget-2 .social-wrap {
    display: flex !important;
    flex: 0 0 auto !important;
    align-items: center !important;
    gap: 12px !important;
    margin: 0 !important;
  }

  #qodef-page-footer #new_social_media_widget-2 .nsmw-div-19675,
  #qodef-page-footer #new_social_media_widget-2 .social-media-link-19675,
  #qodef-page-footer #new_social_media_widget-2 .border-box {
    display: inline-flex !important;
    width: auto !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  #qodef-page-footer-bottom-area {
    border-top: 1px solid rgba(255, 255, 255, 0.55) !important;
  }

  #qodef-page-footer-bottom-area-inner .qodef-grid {
    width: 100% !important;
    margin: 0 !important;
    padding: 18px 15px !important;
  }

  #qodef-page-footer-bottom-area-inner .qodef-grid-inner {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 16px !important;
    width: 100% !important;
  }

  #qodef-page-footer-bottom-area-inner .qodef-grid-item,
  #qodef-page-footer-bottom-area-inner .widget,
  #qodef-page-footer-bottom-area-inner .textwidget,
  #qodef-page-footer-bottom-area-inner p {
    width: auto !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  #qodef-page-footer-bottom-area-inner .tri-footer-copyright-mobile,
  #qodef-page-footer-bottom-area-inner .footer-quixotic {
    display: block !important;
    line-height: 1.35 !important;
    text-align: left !important;
    text-wrap: pretty;
  }

  .elementor-heading-title,
  .elementor-widget-text-editor p,
  .qodef-e-title,
  .qodef-e-excerpt,
  .qodef-e-info {
    text-wrap: pretty;
  }
}

/* Single event/exhibition spacing: compact cards without affecting global widgets. */
@media (max-width: 768px) {
  body.single-exhibition-item .tri-related-events-section,
  body.single-event .tri-related-events-section,
  body.single-event-item .tri-related-events-section,
  body.single-exhibition-item .elementor-section:has(.related-events-card),
  body.single-event .elementor-section:has(.related-events-card),
  body.single-event-item .elementor-section:has(.related-events-card) {
    margin-top: 0 !important;
    padding-top: 0px !important;
    padding-bottom: 24px !important;
  }

  body.single-exhibition-item .related-events-card .elementor-image-box-content,
  body.single-exhibition-item .related-events-card.elementor-widget-image-box .elementor-image-box-content,
  body.single-event .related-events-card .elementor-image-box-content,
  body.single-event .related-events-card.elementor-widget-image-box .elementor-image-box-content,
  body.single-event-item .related-events-card .elementor-image-box-content,
  body.single-event-item .related-events-card.elementor-widget-image-box .elementor-image-box-content {
    padding: 18px 20px 20px !important;
  }

  body.single-exhibition-item .related-events-card .elementor-image-box-title,
  body.single-event .related-events-card .elementor-image-box-title,
  body.single-event-item .related-events-card .elementor-image-box-title {
    margin: 0 0 10px !important;
    padding: 0 !important;
    line-height: 1.2 !important;
  }

  body.single-exhibition-item .related-events-card .elementor-image-box-description,
  body.single-event .related-events-card .elementor-image-box-description,
  body.single-event-item .related-events-card .elementor-image-box-description {
    margin: 0 !important;
    padding: 0 !important;
    line-height: 1.4 !important;
  }

  body .elementor-widget-posts article.elementor-post.exhibition-item .elementor-post__title {
    min-height: 0 !important;
    max-height: none !important;
    margin-bottom: 8px !important;
  }
}

/* Global Elementor values taken from the approved DevTools edits. */
.elementor-image-box-title {
  font-family: "Space Grotesk", sans-serif !important;
  font-size: 19px !important;
  font-weight: 500 !important;
  line-height: 1.2631578947em !important;
  margin: 0 !important;
}

.elementor-widget-qi_addons_for_elementor_section_title > .elementor-widget-container {
  padding: 0 !important;
}

@media (max-width: 767px) {
  .elementor-section.elementor-top-section {
    padding: 15px 0 0 !important;
  }
}

/* Additional approved typography and heading spacing overrides. */
.qodef-h6,
h6 {
  margin: 15px 0 !important;
}

.footer-desk3 .qodef-h3,
h3 {
  margin: 0 !important;
}

.elementor-14308 .elementor-element.elementor-element-d172a7c .elementor-icon-box-title,
.elementor-14308 .elementor-element.elementor-element-d172a7c .elementor-icon-box-title a,
.elementor-14308 .elementor-element.elementor-element-aba8e46 .elementor-icon-box-title,
.elementor-14308 .elementor-element.elementor-element-aba8e46 .elementor-icon-box-title a {
  font-family: "MVOffice", "Space Grotesk", sans-serif !important;
}

/* Refined Elementor mobile footer: quieter hierarchy inspired by MAP's mobile footer. */
@media (max-width: 767px) {
  footer.elementor-14308 {
    background: #1c2122 !important;
  }

  footer.elementor-14308 .elementor-element-2dcbf81,
  footer.elementor-14308 .elementor-element-30ac6d9,
  footer.elementor-14308 .elementor-element-a4e87dd,
  footer.elementor-14308 .elementor-element-2680823 {
    background: #1c2122 !important;
    padding-left: 24px !important;
    padding-right: 24px !important;
  }

  footer.elementor-14308 .elementor-element-2dcbf81 {
    padding-top: 30px !important;
    padding-bottom: 16px !important;
  }

  footer.elementor-14308 .elementor-element-2dcbf81 .e-con-inner {
    display: grid !important;
    grid-template-columns: 76px minmax(0, 1fr) !important;
    gap: 18px !important;
    align-items: center !important;
    padding: 0 !important;
  }

  footer.elementor-14308 .elementor-element-ef7ccdd img {
    width: 76px !important;
    max-width: 76px !important;
    height: auto !important;
  }

  footer.elementor-14308 .elementor-element-07c7d5a p {
    margin: 0 !important;
    color: rgba(255, 255, 255, 0.88) !important;
    font-size: 15px !important;
    line-height: 1.45 !important;
  }

  footer.elementor-14308 .elementor-element-30ac6d9 {
    padding-top: 12px !important;
    padding-bottom: 18px !important;
  }

  footer.elementor-14308 .elementor-element-30ac6d9 .e-con-inner {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 0 24px !important;
    padding: 18px 0 !important;
    border-top: 1px solid rgba(255, 255, 255, 0.16) !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.16) !important;
  }

  footer.elementor-14308 .elementor-element-30ac6d9 ul.menu {
    display: grid !important;
    gap: 9px !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
  }

  footer.elementor-14308 .elementor-element-30ac6d9 li,
  footer.elementor-14308 .elementor-element-30ac6d9 a {
    margin: 0 !important;
    color: rgba(255, 255, 255, 0.82) !important;
    font-size: 15px !important;
    line-height: 1.25 !important;
    text-decoration: none !important;
  }

  footer.elementor-14308 .elementor-element-a4e87dd {
    padding-top: 16px !important;
    padding-bottom: 22px !important;
  }

  footer.elementor-14308 .elementor-element-a4e87dd .e-con-inner,
  footer.elementor-14308 .elementor-element-8365c3c {
    gap: 0 !important;
    padding: 0 !important;
  }

  footer.elementor-14308 .elementor-element-a4e87dd .elementor-widget-icon-box {
    margin-bottom: 0 !important;
    padding: 12px 0 !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.12) !important;
  }

  footer.elementor-14308 .elementor-element-a4e87dd .elementor-icon-box-wrapper {
    display: grid !important;
    grid-template-columns: 28px minmax(0, 1fr) !important;
    gap: 16px !important;
    align-items: start !important;
  }

  footer.elementor-14308 .elementor-element-a4e87dd .elementor-icon {
    width: 28px !important;
    height: 28px !important;
    font-size: 28px !important;
    opacity: 0.82 !important;
  }

  footer.elementor-14308 .elementor-element-a4e87dd .elementor-icon-box-title,
  footer.elementor-14308 .elementor-element-a4e87dd .elementor-icon-box-title a,
  footer.elementor-14308 .elementor-element-a4e87dd .elementor-icon-box-title span {
    color: rgba(255, 255, 255, 0.9) !important;
    font-size: 15px !important;
    line-height: 1.38 !important;
    font-weight: 400 !important;
  }

  footer.elementor-14308 .elementor-element-ceeca8d p {
    margin: 18px 0 10px !important;
    color: rgba(255, 255, 255, 0.62) !important;
    font-size: 13px !important;
    line-height: 1 !important;
    text-align: left !important;
    text-transform: uppercase !important;
    letter-spacing: 0.06em !important;
  }

  footer.elementor-14308 .elementor-element-2668a87 .elementor-social-icons-wrapper {
    justify-content: flex-start !important;
    gap: 18px !important;
  }

  footer.elementor-14308 .elementor-element-2668a87 .elementor-icon {
    width: 30px !important;
    height: 30px !important;
    font-size: 18px !important;
    background: transparent !important;
    color: #fff !important;
  }

  footer.elementor-14308 .elementor-element-2680823 {
    padding-top: 18px !important;
    padding-bottom: 28px !important;
    border-top: 1px solid rgba(255, 255, 255, 0.18) !important;
  }

  footer.elementor-14308 .elementor-element-2680823 .e-con-inner {
    display: grid !important;
    gap: 8px !important;
    padding: 0 !important;
  }

  footer.elementor-14308 .elementor-element-2680823,
  footer.elementor-14308 .elementor-element-2680823 p,
  footer.elementor-14308 .elementor-element-2680823 a,
  footer.elementor-14308 .elementor-element-2680823 .elementor-widget-container {
    color: rgba(255, 255, 255, 0.68) !important;
    font-size: 13px !important;
    line-height: 1.45 !important;
    text-align: left !important;
  }
}

/* Mobile footer alignment refinements requested after review. */
@media (max-width: 767px) {
  footer.elementor-14308 .elementor-element-2dcbf81 .e-con-inner {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    justify-items: center !important;
    text-align: center !important;
  }

  footer.elementor-14308 .elementor-element-07c7d5a,
  footer.elementor-14308 .elementor-element-07c7d5a .elementor-widget-container,
  footer.elementor-14308 .elementor-element-07c7d5a p {
    text-align: center !important;
  }

  footer.elementor-14308 .elementor-element-30ac6d9 .e-con-inner {
    grid-template-columns: minmax(0, 1fr) !important;
    justify-items: center !important;
    gap: 14px !important;
    text-align: center !important;
  }

  footer.elementor-14308 .elementor-element-30ac6d9 ul.menu {
    justify-items: center !important;
    text-align: center !important;
  }

  footer.elementor-14308 .elementor-element-30ac6d9 li,
  footer.elementor-14308 .elementor-element-30ac6d9 a {
    width: auto !important;
    max-width: 100% !important;
    white-space: nowrap !important;
    word-break: keep-all !important;
    overflow-wrap: normal !important;
    text-wrap: nowrap !important;
  }

  footer.elementor-14308 .elementor-element-ceeca8d p {
    text-align: center !important;
  }

  footer.elementor-14308 .elementor-element-2668a87 .elementor-social-icons-wrapper {
    justify-content: center !important;
  }
}

/* Site-wide Elementor default typography. */
body[class*="elementor-kit-"] {
  --e-global-typography-primary-font-family: "MVOffice", "Space Grotesk", sans-serif;
  --e-global-typography-secondary-font-family: "MVOffice", "Space Grotesk", sans-serif;
  --e-global-typography-text-font-family: "MVOffice", "Space Grotesk", sans-serif;
  --e-global-typography-accent-font-family: "MVOffice", "Space Grotesk", sans-serif;
}

/* WordPress and Elementor header menus, including their dropdown items. */
.qodef-header-navigation a,
.qodef-header-navigation .menu-item > a,
.qodef-header-navigation .qodef-drop-down-second a,
.qodef-mobile-header-navigation a,
.qodef-mobile-header-navigation .menu-item > a,
.elementor-nav-menu--main a,
.elementor-nav-menu--dropdown a,
.elementor-nav-menu .menu-item > a {
  font-family: "MVOffice", "Space Grotesk", sans-serif !important;
}

/* Header 14333: desktop normal/sticky states and the mobile background. */
.elementor-14333 .elementor-element.elementor-element-31f6650 .elementor-nav-menu--dropdown {
  padding-top: 0 !important;
}

@media (min-width: 769px) {
  header.elementor-location-header.elementor-14333,
  header.elementor-location-header.elementor-14333 > .elementor-sticky--active,
  header.elementor-location-header.elementor-14333 > .elementor-sticky__spacer {
    min-height: 100px !important;
    height: 100px !important;
    background-color: transparent !important;
    background-image: none !important;
  }

  body.qodef-header--sticky-display header.elementor-location-header.elementor-14333 > .elementor-sticky--active,
  body.qodef-header--sticky-display header.elementor-location-header.elementor-14333 > .elementor-sticky--active > .e-con-inner {
    min-height: 70px !important;
    height: 70px !important;
    background-color: #000 !important;
    background-image: none !important;
  }
}

@media (max-width: 768px) {
  .elementor-14333 .elementor-element.elementor-element-31f6650 .elementor-nav-menu--dropdown {
    padding-top: 20px !important;
  }

  header.elementor-location-header.elementor-14333,
  header.elementor-location-header.elementor-14333 > .elementor-sticky--active,
  header.elementor-location-header.elementor-14333 > .elementor-sticky__spacer {
    background-color: #1C2122 !important;
    background-image: none !important;
  }
}

/* Sticky desktop header: remove the wrapper's top inset and align the logo. */
@media (min-width: 769px) {
  body.qodef-header--sticky-display header.elementor-location-header.elementor-14333 > .elementor-sticky--active > .e-con-inner {
    width: 100% !important;
    max-width: 1560px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-top: 0 !important;
  }

  body.qodef-header--sticky-display header.elementor-location-header.elementor-14333 > .elementor-sticky--active .elementor-element-b204531 {
    width: 302px !important;
    padding-bottom: 13px !important;
  }

  body.qodef-header--sticky-display header.elementor-location-header.elementor-14333 > .elementor-sticky--active .elementor-element-b204531 img {
    width: 66px !important;
    max-width: 66px !important;
  }
}

@media (max-width: 768px) {
  /* The single-exhibition Related Events heading needs its own breathing room. */
  body.single-exhibition-item .elementor-section:has(.related-events-card) .elementor-heading-title,
  body.single-exhibition-item .elementor-section:has(.related-events-card) .qodef-m-title,
  body.single-exhibition-item .e-con:has(.related-events-card) .elementor-heading-title,
  body.single-exhibition-item .e-con:has(.related-events-card) .qodef-m-title {
    padding-top: 20px !important;
  }
}

/* Mobile card rounding for archive cards and related cards. */
@media (max-width: 768px) {
  .qodef-events-list .qodef-e.qodef-grid-item,
  .qodef-events-list .qodef-e.qodef-grid-item.tri-event-card,
  .qodef-events-list .qodef-e.qodef-grid-item .qodef-e-inner,
  .qodef-shortcode.qodef-events-list .qodef-e.qodef-grid-item,
  .qodef-shortcode.qodef-events-list .qodef-e.qodef-grid-item.tri-event-card,
  .qodef-shortcode.qodef-events-list .qodef-e.qodef-grid-item .qodef-e-inner,
  .elementor-widget-posts article.elementor-post.exhibition-item,
  .elementor-widget-posts article.elementor-post.exhibition-item .elementor-post__thumbnail,
  body.single-exhibition-item .related-events-card,
  body.single-exhibition-item .related-events-card .elementor-image-box-wrapper,
  body.single-event .related-events-card,
  body.single-event .related-events-card .elementor-image-box-wrapper,
  body.single-event-item .related-events-card,
  body.single-event-item .related-events-card .elementor-image-box-wrapper {
    border-radius: 10px !important;
    overflow: hidden !important;
  }

  .qodef-events-list .qodef-e.qodef-grid-item .qodef-e-media-image,
  .qodef-events-list .qodef-e.qodef-grid-item .qodef-e-media-image img,
  .qodef-shortcode.qodef-events-list .qodef-e.qodef-grid-item .qodef-e-media-image,
  .qodef-shortcode.qodef-events-list .qodef-e.qodef-grid-item .qodef-e-media-image img,
  .elementor-widget-posts article.elementor-post.exhibition-item .elementor-post__thumbnail,
  .elementor-widget-posts article.elementor-post.exhibition-item .elementor-post__thumbnail img,
  body.single-exhibition-item .related-events-card .elementor-image-box-img,
  body.single-exhibition-item .related-events-card .elementor-image-box-img img,
  body.single-event .related-events-card .elementor-image-box-img,
  body.single-event .related-events-card .elementor-image-box-img img,
  body.single-event-item .related-events-card .elementor-image-box-img,
  body.single-event-item .related-events-card .elementor-image-box-img img {
    border-radius: 10px 10px 0 0 !important;
    overflow: hidden !important;
  }

  .qodef-events-list .qodef-e.qodef-grid-item.tri-event-card .qodef-e-event-list-bottom-holder,
  body.single-exhibition-item .related-events-card .elementor-image-box-content,
  body.single-event .related-events-card .elementor-image-box-content,
  body.single-event-item .related-events-card .elementor-image-box-content {
    border-radius: 0 0 10px 10px !important;
  }
}

/* Archive year filters must beat the card display/flex rules above. */
.qodef-events-list .qodef-e.qodef-grid-item.tri-year-hidden,
.qodef-shortcode.qodef-events-list .qodef-e.qodef-grid-item.tri-year-hidden,
.elementor-widget-posts article.elementor-post.tri-year-hidden,
.elementor-widget-posts article.elementor-post.exhibition-item.tri-year-hidden {
  display: none !important;
}

@media (max-width: 767px) {
  body.page-id-7269 .elementor-widget-qi_addons_for_elementor_team_member,
  body.page-id-7259 .elementor-widget-qi_addons_for_elementor_team_member,
  body.page-id-7269 .elementor-widget-qi_addons_for_elementor_team_member > .elementor-widget-container,
  body.page-id-7259 .elementor-widget-qi_addons_for_elementor_team_member > .elementor-widget-container,
  body.page-id-7269 .qodef-qi-team-member,
  body.page-id-7259 .qodef-qi-team-member,
  body.page-id-7269 .qodef-qi-team-member .qodef-m-inner,
  body.page-id-7259 .qodef-qi-team-member .qodef-m-inner {
    height: 100% !important;
  }

  body.page-id-7269 .qodef-qi-team-member .qodef-m-inner,
  body.page-id-7259 .qodef-qi-team-member .qodef-m-inner {
    display: flex !important;
    flex-direction: column !important;
    background: transparent !important;
    border-radius: 10px !important;
    overflow: hidden !important;
  }

  body.page-id-7269 .qodef-qi-team-member .qodef-m-image,
  body.page-id-7259 .qodef-qi-team-member .qodef-m-image,
  body.page-id-7269 .qodef-qi-team-member .qodef-m-media-image,
  body.page-id-7259 .qodef-qi-team-member .qodef-m-media-image {
    width: 100% !important;
    aspect-ratio: 600 / 680 !important;
    background: transparent !important;
    border-radius: 10px 10px 0 0 !important;
    overflow: hidden !important;
  }

  body.page-id-7269 .qodef-qi-team-member .qodef-m-media-image img,
  body.page-id-7259 .qodef-qi-team-member .qodef-m-media-image img {
    width: 100% !important;
    height: 100% !important;
    display: block !important;
    object-fit: cover !important;
    border-radius: 10px 10px 0 0 !important;
    filter: grayscale(1) !important;
  }

  body.page-id-7269 .qodef-qi-team-member .qodef-m-content {
    flex: 0 0 110px !important;
    min-height: 92px !important;
    padding: 5px 15px 15px 20px !important;
    background: #fff !important;
    border-radius: 0 0 10px 10px !important;
    box-sizing: border-box !important;
  }

  body.page-id-7259 .qodef-qi-team-member .qodef-m-content {
    flex: 0 0 80px !important;
    min-height: 80px !important;
    padding: 5px 8px 5px 14px !important;
    background: #fff !important;
    border-radius: 0 0 10px 10px !important;
    box-sizing: border-box !important;
  }

  body.page-id-7269 .qodef-qi-team-member .qodef-m-title,
  body.page-id-7259 .qodef-qi-team-member .qodef-m-title,
  body.page-id-7269 .qodef-qi-team-member .qodef-m-role,
  body.page-id-7259 .qodef-qi-team-member .qodef-m-role {
    color: #1e1e1e !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  body.page-id-7269 .qodef-qi-team-member .qodef-m-title,
  body.page-id-7259 .qodef-qi-team-member .qodef-m-title {
    margin-top: 0 !important;
    margin-bottom: 8px !important;
  }

  body.page-id-7269 .qodef-qi-team-member .qodef-m-role,
  body.page-id-7259 .qodef-qi-team-member .qodef-m-role {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }

  body.page-id-14858 .elementor-element-7ab968e.elementor-widget-text-editor p,
  body.page-id-14866 .elementor-element-7ab968e.elementor-widget-text-editor p,
  body.page-id-14885 .elementor-element-7ab968e.elementor-widget-text-editor p,
  body.page-id-14874 .elementor-element-7ab968e.elementor-widget-text-editor p,
  body.page-id-14893 .elementor-element-7ab968e.elementor-widget-text-editor p {
    background: #1e1e1e !important;
    padding: 15px !important;
    box-sizing: border-box !important;
  }

  body.page-id-14858 .elementor-element-cb50772.elementor-widget-image img,
  body.page-id-14866 .elementor-element-cb50772.elementor-widget-image img,
  body.page-id-14885 .elementor-element-cb50772.elementor-widget-image img,
  body.page-id-14874 .elementor-element-cb50772.elementor-widget-image img,
  body.page-id-14893 .elementor-element-cb50772.elementor-widget-image img {
    filter: grayscale(1) !important;
  }
}

/* Final mobile footer alignment override for the Elementor mobile footer only. */
@media (max-width: 767px) {
  footer.elementor-14308 .elementor-element-2dcbf81,
  footer.elementor-14308 .elementor-element-2dcbf81 .e-con-inner {
    display: flex !important;
    flex-direction: column !important;
    gap: 10px !important;
    justify-content: flex-start !important;
    align-items: flex-start !important;
    text-align: left !important;
  }

  footer.elementor-14308 .elementor-element-2dcbf81 {
    padding-left: 20px !important;
    padding-right: 20px !important;
  }

  footer.elementor-14308 .elementor-element-2dcbf81 .e-con-inner {
    width: 100% !important;
  }

  footer.elementor-14308 .elementor-element-2dcbf81 .elementor-element-9b90aec {
    flex: 0 0 auto !important;
    width: 68px !important;
  }

  footer.elementor-14308 .elementor-element-2dcbf81 .elementor-element-5d88ab7 {
    flex: 0 0 auto !important;
    width: 100% !important;
  }

  footer.elementor-14308 .elementor-element-2dcbf81 .elementor-widget-container,
  footer.elementor-14308 .elementor-element-2dcbf81 p,
  footer.elementor-14308 .elementor-element-2dcbf81 img {
    text-align: left !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  footer.elementor-14308 .elementor-element-2dcbf81 img {
    width: 68px !important;
    max-width: 68px !important;
  }

  footer.elementor-14308 .elementor-element-2dcbf81 .elementor-element-07c7d5a p {
    margin-top: 0 !important;
  }

  footer.elementor-14308 .elementor-element-30ac6d9 .e-con-inner {
    display: grid !important;
    grid-template-columns: max-content max-content !important;
    justify-content: space-between !important;
    align-items: start !important;
    gap: 16px !important;
    width: min(100%, 342px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  footer.elementor-14308 .elementor-element-30ac6d9 .e-con-inner > .e-con,
  footer.elementor-14308 .elementor-element-30ac6d9 .elementor-widget-text-editor,
  footer.elementor-14308 .elementor-element-30ac6d9 .elementor-widget-container {
    width: auto !important;
    min-width: max-content !important;
    max-width: none !important;
  }

  footer.elementor-14308 .elementor-element-30ac6d9 #menu-tri-footer {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    justify-items: start !important;
    width: max-content !important;
    min-width: max-content !important;
    max-width: none !important;
  }

  footer.elementor-14308 .elementor-element-30ac6d9 #menu-tri-footer li,
  footer.elementor-14308 .elementor-element-30ac6d9 #menu-tri-footer a {
    width: auto !important;
    min-width: max-content !important;
    max-width: none !important;
    white-space: nowrap !important;
    word-break: keep-all !important;
    overflow-wrap: normal !important;
    text-wrap: nowrap !important;
    text-align: left !important;
  }

  footer.elementor-14308 .elementor-element-a4e87dd {
    padding-top: 10px !important;
  }

  footer.elementor-14308 .elementor-element-a4e87dd .elementor-widget-icon-box:first-child,
  footer.elementor-14308 .elementor-element-a4e87dd .elementor-element-1cd45d0 {
    padding-top: 8px !important;
  }

  footer.elementor-14308 .elementor-element-ceeca8d,
  footer.elementor-14308 .elementor-element-ceeca8d .elementor-widget-container,
  footer.elementor-14308 .elementor-element-ceeca8d p {
    text-align: center !important;
    margin-left: auto !important;
    margin-right: auto !important;
    margin-top: 10px !important;
    margin-bottom: 6px !important;
  }

  footer.elementor-14308 .elementor-element-2668a87 {
    width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-top: 4px !important;
    text-align: center !important;
  }

  footer.elementor-14308 .elementor-element-2668a87 .elementor-social-icons-wrapper {
    display: inline-flex !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 5px !important;
    text-align: center !important;
  }

  footer.elementor-14308 .elementor-element-2668a87 .elementor-icon {
    width: 36px !important;
    height: 36px !important;
    font-size: 21px !important;
    line-height: 36px !important;
  }
}

/* Mobile-only content spacing and archive/list refinements. */
@media (max-width: 767px) {
  body.page-id-12173 #qodef-page-content,
  body.page-id-12177 #qodef-page-content,
  body.page-id-12178 #qodef-page-content,
  body.page-id-12179 #qodef-page-content {
    padding-left: 24px !important;
    padding-right: 24px !important;
    box-sizing: border-box !important;
  }

  body.page-id-12173 #qodef-page-content .qodef-grid-inner,
  body.page-id-12177 #qodef-page-content .qodef-grid-inner,
  body.page-id-12178 #qodef-page-content .qodef-grid-inner,
  body.page-id-12179 #qodef-page-content .qodef-grid-inner,
  body.page-id-12173 #qodef-page-content .qodef-page-content-section,
  body.page-id-12177 #qodef-page-content .qodef-page-content-section,
  body.page-id-12178 #qodef-page-content .qodef-page-content-section,
  body.page-id-12179 #qodef-page-content .qodef-page-content-section {
    width: 100% !important;
    max-width: 100% !important;
  }

  .qodef-m-filter {
    margin-bottom: 10px !important;
    padding-bottom: 0 !important;
  }

  .qodef-m-filter .qodef-m-filter-items {
    justify-content: center !important;
    text-align: center !important;
    padding-bottom: 0 !important;
  }

  .tri-year-filter,
  .tri-year-filter--events,
  .tri-year-filter--exhibitions,
  .tri-year-filter--standalone {
    justify-content: center !important;
    align-items: center !important;
    text-align: center !important;
    margin-left: auto !important;
    margin-right: auto !important;
    margin-bottom: 10px !important;
    width: 100% !important;
  }

  .tri-year-filter-label,
  .tri-year-filter-items {
    text-align: center !important;
  }

  .qodef-shortcode.qodef-events-list.qodef-item-layout--info-below .qodef-e-title,
  .qodef-shortcode.qodef-events-list.qodef-item-layout--info-below .qodef-e-title a,
  .qodef-events-list .qodef-e.qodef-grid-item .qodef-e-title,
  .qodef-events-list .qodef-e.qodef-grid-item .qodef-e-title-link,
  body.home .events-home .qodef-events-list .qodef-e-title,
  body.home .events-home .qodef-events-list .qodef-e-title a,
  body.home .events-home .qodef-events-list .qodef-e-title-link,
  body.post-type-archive-event-item .qodef-events-list .qodef-e-title,
  body.post-type-archive-event-item .qodef-events-list .qodef-e-title a,
  body.post-type-archive-event-item .qodef-events-list .qodef-e-title-link {
    font-size: 16px !important;
    line-height: 1.18 !important;
  }
}

/* Programmatic Upcoming Events + Exhibitions cards. */
.tri-upcoming-programmes {
  width: 100% !important;
  max-width: 100% !important;
  color: #fff;
}

.elementor-widget-n-tabs .e-n-tabs-content > .e-con:has(.tri-upcoming-programmes),
.elementor-widget-n-tabs .e-n-tabs-content > .e-con:has(.qodef-events-list),
.elementor-widget-n-tabs .e-n-tabs-content > .e-con > .e-con-inner:has(.tri-upcoming-programmes),
.elementor-widget-n-tabs .e-n-tabs-content > .e-con > .e-con-inner:has(.qodef-events-list) {
  width: 100% !important;
  max-width: 100% !important;
}

body.home .elementor-widget-n-tabs .e-con:has(.tri-upcoming-programmes),
body.home .elementor-widget-n-tabs .elementor-widget-html:has(.tri-upcoming-programmes),
body.home .elementor-widget-n-tabs .elementor-widget-container:has(.tri-upcoming-programmes),
body.page-id-6543 .elementor-widget-n-tabs .e-con:has(.tri-upcoming-programmes),
body.page-id-6543 .elementor-widget-n-tabs .elementor-widget-html:has(.tri-upcoming-programmes),
body.page-id-6543 .elementor-widget-n-tabs .elementor-widget-container:has(.tri-upcoming-programmes) {
  width: 100% !important;
  max-width: 100% !important;
  flex: 0 0 100% !important;
  align-self: stretch !important;
}

.tri-upcoming-filters {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin: 0 0 28px;
}

.tri-upcoming-filter-button {
  appearance: none;
  min-height: 38px;
  padding: 7px 16px 9px;
  border: 1px solid rgba(255, 255, 255, 0.72);
  border-radius: 0;
  background: transparent;
  color: #fff;
  cursor: pointer;
  font-family: 'MVOffice', 'Space Grotesk', Roboto, sans-serif;
  font-size: 15px;
  line-height: 1;
  transition: background-color .2s ease, color .2s ease, border-color .2s ease;
}

.tri-upcoming-filter-button:hover,
.tri-upcoming-filter-button.is-active {
  background: #fff;
  border-color: #fff;
  color: #1c2122;
}

.tri-upcoming-grid {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: stretch !important;
  gap: 30px !important;
}

.tri-upcoming-card {
  display: flex;
  flex-direction: column;
  flex: 1 1 calc(33.333% - 30px) !important;
  min-width: 0;
  max-width: calc(33.333% - 20px) !important;
  height: auto;
  overflow: hidden;
  border: 0;
  border-radius: 0;
  background: #3E4243;
  color: #fff;
  cursor: pointer;
}

.tri-upcoming-card-band {
  display: block;
  flex: 0 0 10px;
  width: 100%;
  height: 10px;
  background: transparent;
}

.tri-upcoming-card.visual-arts .tri-upcoming-card-band { background: #8963e5 !important; }
.tri-upcoming-card.performance-arts .tri-upcoming-card-band,
.tri-upcoming-card.performing-arts .tri-upcoming-card-band { background: #f884f1 !important; }
.tri-upcoming-card.literary-arts .tri-upcoming-card-band { background: #d3cd05 !important; }
.tri-upcoming-card.social-practice .tri-upcoming-card-band { background: #0cc479 !important; }
.tri-upcoming-card.research-practice .tri-upcoming-card-band { background: #30c5d8 !important; }
.tri-upcoming-card.culinary-arts .tri-upcoming-card-band { background: #e5805c !important; }

.tri-upcoming-card.tri-upcoming-hidden {
  display: none !important;
}

.tri-upcoming-card .qodef-e-inner {
  display: flex !important;
  flex: 1 1 auto !important;
  flex-direction: column !important;
  height: 100% !important;
}

.tri-upcoming-card .qodef-e-media-image {
  width: 100% !important;
  margin-bottom: 0 !important;
}

.tri-upcoming-card-image {
  display: block;
  width: 100%;
  aspect-ratio: auto;
  overflow: hidden;
  background: #1c2122;
}

.tri-upcoming-card-image img {
  display: block;
  width: 100%;
  height: auto;
  object-fit: cover;
}

.tri-upcoming-card-content {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  min-height: 0;
  padding: 20px 18px 26px;
  background: #3E4243;
  box-sizing: border-box;
}

.tri-upcoming-card-datetime,
.tri-upcoming-card-space,
.tri-upcoming-card-curator,
.tri-upcoming-card-relation,
.tri-upcoming-card-relation-label,
.tri-upcoming-card-relation-title,
.tri-upcoming-card-relation-title a {
  margin: 0;
  color: rgba(255, 255, 255, 0.82);
  font-family: 'MVOffice', 'Space Grotesk', Roboto, sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.32;
  text-align: left;
}

.tri-upcoming-card-datetime {
  margin-bottom: 12px;
}

.tri-upcoming-card-space {
  margin-top: 12px;
}

.tri-upcoming-card-curator {
  margin-top: 18px;
}

.tri-upcoming-card-relation {
  display: grid;
  gap: 10px !important;
  margin-top: 24px !important;
  padding-top: 0 !important;
}

.tri-upcoming-card-relation-label {
  display: block;
  color: #fff;
  margin: 0 !important;
  font-size: 15px !important;
  font-weight: 500 !important;
  line-height: 1 !important;
  text-transform: uppercase !important;
}

.tri-upcoming-card-relation-title,
.tri-upcoming-card-relation-title a {
  display: block;
  color: #fff;
  margin: 0 !important;
  font-size: 18px !important;
  font-weight: 400 !important;
  line-height: 1.32 !important;
  text-decoration: none !important;
}

.tri-upcoming-card-curator span,
.tri-upcoming-card-curator strong {
  color: inherit;
  font: inherit;
}

.tri-upcoming-card-type {
  margin: 0 0 8px;
  color: rgba(255, 255, 255, 0.72);
  font-family: 'MVOffice', 'Space Grotesk', Roboto, sans-serif;
  font-size: 13px;
  font-weight: 500;
  line-height: 1;
  text-transform: uppercase;
}

.tri-upcoming-card-type,
.tri-upcoming-card-date,
.tri-upcoming-card-venue,
.tri-upcoming-card-price,
.tri-upcoming-card-button {
  display: none !important;
}

.tri-upcoming-card-title,
.tri-upcoming-card-title a {
  margin: 0;
  color: #fff;
  font-family: 'MVOffice', 'Space Grotesk', Roboto, sans-serif;
  font-size: 18px;
  font-weight: 600;
  line-height: 1.22;
  text-decoration: none;
}

.tri-upcoming-card-title {
  margin-bottom: 0;
}

.tri-upcoming-card-details {
  display: none !important;
}

.tri-single-register-interest {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: max-content;
  max-width: 100%;
  min-height: 42px;
  margin-top: auto;
  padding: 10px 18px 12px;
  border: 1px solid #fff;
  color: #fff;
  font-family: 'MVOffice', 'Space Grotesk', Roboto, sans-serif;
  font-size: 15px;
  font-weight: 500;
  line-height: 1;
  text-decoration: none;
  transition: background-color .2s ease, color .2s ease;
}

.tri-upcoming-card-button {
  margin-top: 24px;
}

.tri-single-register-interest:hover {
  background: #fff;
  color: #1c2122;
}

.tri-full-card-link {
  cursor: pointer;
}

.elementor-widget-posts article.elementor-post.tri-exhibition-card {
  --tri-card-accent-color: #8963e5;
  --tri-card-glow-color: rgba(137, 99, 229, 0.5);
  will-change: box-shadow;
  backface-visibility: hidden;
}

.tri-upcoming-empty {
  color: #fff;
  font-family: 'MVOffice', 'Space Grotesk', Roboto, sans-serif;
  font-size: 18px;
}

.tri-mobile-upcoming-programmes {
  display: none !important;
}

.qodef-e.qodef-grid-item,
.elementor-widget-posts article.elementor-post,
.tri-upcoming-card,
.related-events-card {
  --tri-card-accent-rgb: 137, 99, 229;
  transition: transform .3s ease, box-shadow .3s ease !important;
}

.qodef-e.qodef-grid-item.visual-arts,
.qodef-e.qodef-grid-item.event-types-visual-arts,
.elementor-widget-posts article.elementor-post.visual-arts,
.elementor-widget-posts article.elementor-post.event-types-visual-arts,
.elementor-widget-posts article.elementor-post[class*="visual-arts"],
.tri-upcoming-card.visual-arts,
.related-events-card.visual-arts,
.related-events-card[class*="visual-arts"] {
  --tri-card-accent-rgb: 137, 99, 229;
}

.qodef-e.qodef-grid-item.performing-arts,
.qodef-e.qodef-grid-item.performance-arts,
.qodef-e.qodef-grid-item.event-types-performing-arts,
.qodef-e.qodef-grid-item.event-types-performance-arts,
.elementor-widget-posts article.elementor-post.performing-arts,
.elementor-widget-posts article.elementor-post.performance-arts,
.elementor-widget-posts article.elementor-post.event-types-performing-arts,
.elementor-widget-posts article.elementor-post.event-types-performance-arts,
.elementor-widget-posts article.elementor-post[class*="performing-arts"],
.elementor-widget-posts article.elementor-post[class*="performance-arts"],
.tri-upcoming-card.performing-arts,
.tri-upcoming-card.performance-arts,
.related-events-card.performing-arts,
.related-events-card.performance-arts,
.related-events-card[class*="performing-arts"],
.related-events-card[class*="performance-arts"] {
  --tri-card-accent-rgb: 248, 132, 241;
}

.qodef-e.qodef-grid-item.literary-arts,
.qodef-e.qodef-grid-item.event-types-literary-arts,
.elementor-widget-posts article.elementor-post.literary-arts,
.elementor-widget-posts article.elementor-post.event-types-literary-arts,
.elementor-widget-posts article.elementor-post[class*="literary-arts"],
.tri-upcoming-card.literary-arts,
.related-events-card.literary-arts,
.related-events-card[class*="literary-arts"] {
  --tri-card-accent-rgb: 211, 205, 5;
}

.qodef-e.qodef-grid-item.social-practice,
.qodef-e.qodef-grid-item.event-types-social-practice,
.elementor-widget-posts article.elementor-post.social-practice,
.elementor-widget-posts article.elementor-post.event-types-social-practice,
.elementor-widget-posts article.elementor-post[class*="social-practice"],
.tri-upcoming-card.social-practice,
.related-events-card.social-practice,
.related-events-card[class*="social-practice"] {
  --tri-card-accent-rgb: 12, 196, 121;
}

.qodef-e.qodef-grid-item.research-practice,
.qodef-e.qodef-grid-item.event-types-research-practice,
.elementor-widget-posts article.elementor-post.research-practice,
.elementor-widget-posts article.elementor-post.event-types-research-practice,
.elementor-widget-posts article.elementor-post[class*="research-practice"],
.tri-upcoming-card.research-practice,
.related-events-card.research-practice,
.related-events-card[class*="research-practice"] {
  --tri-card-accent-rgb: 48, 197, 216;
}

.qodef-e.qodef-grid-item.culinary-arts,
.qodef-e.qodef-grid-item.event-types-culinary-arts,
.elementor-widget-posts article.elementor-post.culinary-arts,
.elementor-widget-posts article.elementor-post.event-types-culinary-arts,
.elementor-widget-posts article.elementor-post[class*="culinary-arts"],
.tri-upcoming-card.culinary-arts,
.related-events-card.culinary-arts,
.related-events-card[class*="culinary-arts"] {
  --tri-card-accent-rgb: 229, 128, 92;
}

.qodef-e.qodef-grid-item:hover,
.elementor-widget-posts article.elementor-post:hover,
.tri-upcoming-card:hover,
.related-events-card:hover {
  transform: translateY(-4px) !important;
  box-shadow:
    0 0 0 1px rgba(var(--tri-card-accent-rgb), .9),
    0 0 18px rgba(var(--tri-card-accent-rgb), .72),
    0 10px 26px rgba(0, 0, 0, .55) !important;
}

body.single-event .tri-event-sidebar,
body.single-event-item .tri-event-sidebar {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
}

body.single-event .tri-event-sidebar .tri-single-register-interest,
body.single-event-item .tri-event-sidebar .tri-single-register-interest {
  width: 100% !important;
  max-width: 100% !important;
  margin-top: 0;
  margin-bottom: 24px;
  box-sizing: border-box;
}

.tri-single-register-interest--before-card {
  width: 100% !important;
  max-width: 100% !important;
  margin-top: 0;
  margin-bottom: 18px;
  box-sizing: border-box;
}

@media (min-width: 769px) {
  body.single-event .qodef-event-item .qodef-e-inner,
  body.single-event-item .qodef-event-item .qodef-e-inner {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 360px !important;
    gap: 48px !important;
    align-items: start !important;
  }

  body.single-event .qodef-event-item .qodef-e-content,
  body.single-event-item .qodef-event-item .qodef-e-content {
    order: 1 !important;
  }

  body.single-event .qodef-event-item .tri-event-sidebar,
  body.single-event-item .qodef-event-item .tri-event-sidebar {
    order: 2 !important;
  }
}

@media (max-width: 1024px) {
  .tri-upcoming-grid {
    gap: 20px !important;
  }

  .tri-upcoming-card {
    flex: 1 1 calc(50% - 20px) !important;
    max-width: calc(50% - 10px) !important;
  }
}

@media (max-width: 768px) {
  body.home .tri-mobile-upcoming-programmes,
  body.page-id-6543 .tri-mobile-upcoming-programmes {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
  }

  body.home .tri-mobile-upcoming-programmes .tri-upcoming-grid,
  body.page-id-6543 .tri-mobile-upcoming-programmes .tri-upcoming-grid {
    display: flex !important;
    width: 100% !important;
  }

  .tri-upcoming-filters {
    justify-content: center;
    margin-bottom: 18px;
  }

  .tri-upcoming-grid {
    gap: 22px !important;
  }

  .tri-upcoming-card {
    flex: 1 1 100% !important;
    max-width: 100% !important;
  }

  .tri-upcoming-card-content {
    min-height: 0;
    padding: 18px 18px 24px;
  }

  .tri-upcoming-card-datetime,
  .tri-upcoming-card-space,
  .tri-upcoming-card-curator,
  .tri-upcoming-card-relation-title,
  .tri-upcoming-card-relation-title a {
    font-size: 15px !important;
  }

  .tri-upcoming-card-relation-label {
    font-size: 13px !important;
  }

  .tri-upcoming-card-title,
  .tri-upcoming-card-title a {
    font-size: 16px;
  }

  .tri-upcoming-card-datetime {
    margin-bottom: 10px;
  }

  .tri-upcoming-card-space {
    margin-top: 10px;
  }

  .tri-single-register-interest {
    width: 100%;
  }
}
