.datepicker {
  width: -moz-min-content;
  width: min-content;
}

.datepicker:not(.active) {
  display: none;
}

.datepicker-dropdown {
  position: absolute;
  z-index: 20;
  padding-top: 4px;
}

.datepicker-dropdown.datepicker-orient-top {
  padding-top: 0;
  padding-bottom: 4px;
}

.datepicker-picker {
  display: flex;
  flex-direction: column;
  border-radius: 4px;
  background-color: hsl(0, 0%, 100%);
}

.datepicker-dropdown .datepicker-picker {
  box-shadow: 0 2px 3px rgba(10, 10, 10, 0.1), 0 0 0 1px rgba(10, 10, 10, 0.1);
}

.datepicker-main {
  flex: auto;
  padding: 2px;
}

.datepicker-footer {
  box-shadow: inset 0 1px 1px rgba(10, 10, 10, 0.1);
  background-color: hsl(0, 0%, 96%);
}

.datepicker-title {
  box-shadow: inset 0 -1px 1px rgba(10, 10, 10, 0.1);
  background-color: hsl(0, 0%, 96%);
  padding: 0.375rem 0.75rem;
  text-align: center;
  font-weight: 700;
}

.datepicker-controls {
  display: flex;
}

.datepicker-header .datepicker-controls {
  padding: 2px 2px 0;
}

.datepicker-controls .button {
  display: inline-flex;
  position: relative;
  align-items: center;
  justify-content: center;
  margin: 0;
  border: 1px solid gainsboro;
  border-radius: 4px;
  box-shadow: none;
  background-color: hsl(0, 0%, 100%);
  cursor: pointer;
  padding: calc(0.375em - 1px) 0.75em;
  height: 2.25em;
  vertical-align: top;
  text-align: center;
  line-height: 1.5;
  white-space: nowrap;
  color: hsl(0, 0%, 21%);
  font-size: 1rem;
}

.datepicker-controls .button:focus,
.datepicker-controls .button:active {
  outline: none;
}

.datepicker-controls .button:hover {
  border-color: #b8b8b8;
  color: hsl(0, 0%, 21%);
}

.datepicker-controls .button:focus {
  border-color: hsl(217, 71%, 53%);
  color: hsl(0, 0%, 21%);
}

.datepicker-controls .button:focus:not(:active) {
  box-shadow: 0 0 0 0.125em rgba(50, 115, 220, 0.25);
}

.datepicker-controls .button:active {
  border-color: #474747;
  color: hsl(0, 0%, 21%);
}

.datepicker-controls .button[disabled] {
  cursor: not-allowed;
}

.datepicker-header .datepicker-controls .button {
  border-color: transparent;
  font-weight: bold;
}

.datepicker-header .datepicker-controls .button:hover {
  background-color: #f9f9f9;
}

.datepicker-header .datepicker-controls .button:active {
  background-color: #f2f2f2;
}

.datepicker-footer .datepicker-controls .button {
  flex: auto;
  margin: calc(0.375rem - 1px) 0.375rem;
  border-radius: 2px;
  font-size: 0.75rem;
}

.datepicker-controls .view-switch {
  flex: auto;
}

.datepicker-controls .prev-button,
.datepicker-controls .next-button {
  padding-right: 0.375rem;
  padding-left: 0.375rem;
  flex: 0 0 14.2857142857%;
}

.datepicker-controls .prev-button.disabled,
.datepicker-controls .next-button.disabled {
  visibility: hidden;
}

.datepicker-view,
.datepicker-grid {
  display: flex;
}

.datepicker-view {
  align-items: stretch;
  width: 15.75rem;
}

.datepicker-grid {
  flex-wrap: wrap;
  flex: auto;
}

.datepicker .days {
  display: flex;
  flex-direction: column;
  flex: auto;
}

.datepicker .days-of-week {
  display: flex;
}

.datepicker .week-numbers {
  display: flex;
  flex-direction: column;
  flex: 0 0 9.6774193548%;
}

.datepicker .weeks {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  flex: auto;
}

.datepicker span {
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 4px;
  cursor: default;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
}

.datepicker .dow {
  height: 1.5rem;
  font-size: 0.875rem;
  font-weight: 700;
}

.datepicker .week {
  flex: auto;
  color: #b8b8b8;
  font-size: 0.75rem;
}

.datepicker-cell,
.datepicker .days .dow {
  flex-basis: 14.2857142857%;
}

.datepicker-cell {
  height: 2.25rem;
}

.datepicker-cell:not(.day) {
  flex-basis: 25%;
  height: 4.5rem;
}

.datepicker-cell:not(.disabled):hover {
  background-color: #f9f9f9;
  cursor: pointer;
}

.datepicker-cell.focused:not(.selected) {
  background-color: #e9e9e9;
}

.datepicker-cell.selected,
.datepicker-cell.selected:hover {
  background-color: hsl(217, 71%, 53%);
  color: #fff;
  font-weight: 600;
}

.datepicker-cell.disabled {
  color: gainsboro;
}

.datepicker-cell.prev:not(.disabled),
.datepicker-cell.next:not(.disabled) {
  color: hsl(0, 0%, 48%);
}

.datepicker-cell.prev.selected,
.datepicker-cell.next.selected {
  color: #e6e6e6;
}

.datepicker-cell.highlighted:not(.selected):not(.range):not(.today) {
  border-radius: 0;
  background-color: hsl(0, 0%, 96%);
}

.datepicker-cell.highlighted:not(.selected):not(.range):not(.today):not(.disabled):hover {
  background-color: #efefef;
}

.datepicker-cell.highlighted:not(.selected):not(.range):not(.today).focused {
  background-color: #e9e9e9;
}

.datepicker-cell.today:not(.selected) {
  background-color: hsl(171, 100%, 41%);
}

.datepicker-cell.today:not(.selected):not(.disabled) {
  color: #fff;
}

.datepicker-cell.today.focused:not(.selected) {
  background-color: #00ccad;
}

.datepicker-cell.range-end:not(.selected),
.datepicker-cell.range-start:not(.selected) {
  background-color: #b8b8b8;
  color: #fff;
}

.datepicker-cell.range-end.focused:not(.selected),
.datepicker-cell.range-start.focused:not(.selected) {
  background-color: #b3b3b3;
}

.datepicker-cell.range-start:not(.range-end) {
  border-radius: 4px 0 0 4px;
}

.datepicker-cell.range-end:not(.range-start) {
  border-radius: 0 4px 4px 0;
}

.datepicker-cell.range {
  border-radius: 0;
  background-color: gainsboro;
}

.datepicker-cell.range:not(.disabled):not(.focused):not(.today):hover {
  background-color: #d7d7d7;
}

.datepicker-cell.range.disabled {
  color: #c6c6c6;
}

.datepicker-cell.range.focused {
  background-color: #d1d1d1;
}

.datepicker-input.in-edit {
  border-color: #276bda;
}

.datepicker-input.in-edit:focus,
.datepicker-input.in-edit:active {
  box-shadow: 0 0 0.25em 0.25em rgba(39, 107, 218, 0.2);
}
@charset "UTF-8";
@font-face {
  font-family: "Gradus";
  src: url("https://arcola-theatre-development.cogdesign.com/wp-content/themes/arcola-theatre-theme/public/static/gradus-medium.woff2") format("woff2");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Gradus";
  src: url("https://arcola-theatre-development.cogdesign.com/wp-content/themes/arcola-theatre-theme/public/static/gradus-semibold.woff2") format("woff2");
  font-weight: 600;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Gradus";
  src: url("https://arcola-theatre-development.cogdesign.com/wp-content/themes/arcola-theatre-theme/public/static/gradus-bold.woff2") format("woff2");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Gradus";
  src: url("https://arcola-theatre-development.cogdesign.com/wp-content/themes/arcola-theatre-theme/public/static/gradus-medium-italic.woff2") format("woff2");
  font-weight: 500;
  font-style: italic;
  font-display: swap;
}
@font-face {
  font-family: "Gradus";
  src: url("https://arcola-theatre-development.cogdesign.com/wp-content/themes/arcola-theatre-theme/public/static/gradus-bold-italic.woff2") format("woff2");
  font-weight: 700;
  font-style: italic;
  font-display: swap;
}
@keyframes slide-down {
  from {
    transform: translateY(-100%);
  }
  to {
    transform: translateY(0);
  }
}
@keyframes fade-in {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes rotate {
  100% {
    transform: rotate(360deg);
  }
}
@keyframes pulse {
  0% {
    transform: scale(1);
  }
  50% {
    transform: scale(1.01);
  }
  100% {
    transform: scale(1);
  }
}
:root {
  --width--full--padded: calc(100vw - (var(--section--margin-inline) * 2));
  --width--spektrix-content: 840px;
  --width--m: 822px;
  --width--m--padded: min(var(--width--m), var(--width--full--padded));
  --width--l: 822px;
  --width--l--padded: min(var(--width--l), var(--width--full--padded));
  --width--xl: 1033px;
  --width--xl--padded: min(var(--width--xl), var(--width--full--padded));
  --width--max: 1248px;
  --width--max--padded: min(var(--width--max), var(--width--full--padded));
  --width--fluid-min: 390px;
  --width--fluid-min--padded: min(var(--width--fluid-min), var(--width--full--padded));
  --width--fluid-max: 1248px;
  --width--fluid-max--padded: min(var(--width--fluid-max), var(--width--full--padded));
}
@media (min-width: 62em) {
  :root {
    --width--full--padded: calc(100vw - (var(--section--margin-inline) * 2));
  }
}

:root {
  --color--black: #000;
  --color--black--hsl: 0deg, 0%, 0%;
  --color--black--h: 0deg;
  --color--black--s: 0%;
  --color--black--l: 0%;
  --color--black-50: #1a1918;
  --color--black-50--hsl: 30deg, 4%, 9.8039215686%;
  --color--black-50--h: 30deg;
  --color--black-50--s: 4%;
  --color--black-50--l: 9.8039215686%;
  --color--black-40: #1f1e1c;
  --color--black-40--hsl: 40deg, 5.0847457627%, 11.568627451%;
  --color--black-40--h: 40deg;
  --color--black-40--s: 5.0847457627%;
  --color--black-40--l: 11.568627451%;
  --color--white: #fff;
  --color--white--hsl: 0deg, 0%, 100%;
  --color--white--h: 0deg;
  --color--white--s: 0%;
  --color--white--l: 100%;
  --color--dark-grey: #33322e;
  --color--dark-grey--hsl: 48deg, 5.1546391753%, 19.0196078431%;
  --color--dark-grey--h: 48deg;
  --color--dark-grey--s: 5.1546391753%;
  --color--dark-grey--l: 19.0196078431%;
  --color--coral: #EB432B;
  --color--coral--hsl: 7.5deg, 82.7586206897%, 54.5098039216%;
  --color--coral--h: 7.5deg;
  --color--coral--s: 82.7586206897%;
  --color--coral--l: 54.5098039216%;
  --color--lime: #CBC82B;
  --color--lime--hsl: 58.875deg, 65.0406504065%, 48.2352941176%;
  --color--lime--h: 58.875deg;
  --color--lime--s: 65.0406504065%;
  --color--lime--l: 48.2352941176%;
  --color--grey: #D4D3CD;
  --color--grey--hsl: 51.4285714286deg, 7.5268817204%, 81.7647058824%;
  --color--grey--h: 51.4285714286deg;
  --color--grey--s: 7.5268817204%;
  --color--grey--l: 81.7647058824%;
  --color--green: #BAD38D;
  --color--green--hsl: 81.4285714286deg, 44.3037974684%, 69.0196078431%;
  --color--green--h: 81.4285714286deg;
  --color--green--s: 44.3037974684%;
  --color--green--l: 69.0196078431%;
  --color--mustard: #D6BC4A;
  --color--mustard--hsl: 48.8571428571deg, 63.0630630631%, 56.4705882353%;
  --color--mustard--h: 48.8571428571deg;
  --color--mustard--s: 63.0630630631%;
  --color--mustard--l: 56.4705882353%;
  --color--beige: #E1CAB1;
  --color--beige--hsl: 31.25deg, 44.4444444444%, 78.8235294118%;
  --color--beige--h: 31.25deg;
  --color--beige--s: 44.4444444444%;
  --color--beige--l: 78.8235294118%;
  --color--orange: #E8672B;
  --color--orange--hsl: 19.0476190476deg, 80.4255319149%, 53.9215686275%;
  --color--orange--h: 19.0476190476deg;
  --color--orange--s: 80.4255319149%;
  --color--orange--l: 53.9215686275%;
  --color--brown: #7E2D19;
  --color--brown--hsl: 11.8811881188deg, 66.8874172185%, 29.6078431373%;
  --color--brown--h: 11.8811881188deg;
  --color--brown--s: 66.8874172185%;
  --color--brown--l: 29.6078431373%;
  --color--grape: #6C1E53;
  --color--grape--hsl: 319.2307692308deg, 56.5217391304%, 27.0588235294%;
  --color--grape--h: 319.2307692308deg;
  --color--grape--s: 56.5217391304%;
  --color--grape--l: 27.0588235294%;
  --color--accent: #EB432B;
  --color--accent--hsl: 7.5deg, 82.7586206897%, 54.5098039216%;
  --color--accent--h: 7.5deg;
  --color--accent--s: 82.7586206897%;
  --color--accent--l: 54.5098039216%;
  --color--focus: #D4D3CD;
  --color--focus--hsl: 51.4285714286deg, 7.5268817204%, 81.7647058824%;
  --color--focus--h: 51.4285714286deg;
  --color--focus--s: 7.5268817204%;
  --color--focus--l: 81.7647058824%;
  --color--error: #E8672B;
  --color--error--hsl: 19.0476190476deg, 80.4255319149%, 53.9215686275%;
  --color--error--h: 19.0476190476deg;
  --color--error--s: 80.4255319149%;
  --color--error--l: 53.9215686275%;
  --color--disabled: #D4D3CD;
  --color--disabled--hsl: 51.4285714286deg, 7.5268817204%, 81.7647058824%;
  --color--disabled--h: 51.4285714286deg;
  --color--disabled--s: 7.5268817204%;
  --color--disabled--l: 81.7647058824%;
  --color--background: #33322e;
  --color--background--hsl: 48deg, 5.1546391753%, 19.0196078431%;
  --color--background--h: 48deg;
  --color--background--s: 5.1546391753%;
  --color--background--l: 19.0196078431%;
  --color--foreground: #fff;
  --color--foreground--hsl: 0deg, 0%, 100%;
  --color--foreground--h: 0deg;
  --color--foreground--s: 0%;
  --color--foreground--l: 100%;
  --space--4: 4px;
  --space--6: 6px;
  --space--8: 8px;
  --space--12: 12px;
  --space--16: 16px;
  --space--20: 20px;
  --space--24: 24px;
  --space--32: 32px;
  --space--40: 40px;
  --space--48: 48px;
  --space--64: 64px;
  --space--72: 72px;
  --space--80: 80px;
  --space--96: 96px;
  --space--128: 128px;
  --space--xxs: 4px;
  --space--xs: 8px;
  --space--s: 12px;
  --space--m: 16px;
  --space--ml: 20px;
  --space--l: 24px;
  --space--xl: 32px;
  --space--xxl: 40px;
  --space--layout--xs: 48px;
  --space--layout--s: 64px;
  --space--layout--m: 80px;
  --space--layout--l: 96px;
  --space--layout--xl: 128px;
  --space--layout: calc(24 * 1px + (40 - 24) * var(--fluid--bp));
  --space--base: var(--space--xl);
  --space--prose: var(--space--24);
  --space--stack: var(--space--base);
  --fs--base: 1.125rem;
  --fs--body: calc(18 / 16 * 1rem + (16 - 18) * var(--fluid--bp));
  --fw--normal: 400;
  --fw--medium: 500;
  --fw--semibold: 600;
  --fw--bold: 700;
  --ff--primary: "Gradus", Helvetica, sans-serif;
  --ff--secondary: "Gradus", Helvetica, sans-serif;
  --text-underline-offset: 0.2em;
  --heading--margin-top: var(--space--base);
  --heading--margin-bottom: var(--space--xs);
  --border-radius--xs: 8px;
  --border-radius--s: 10px;
  --border-radius--m: 20px;
  --border-radius--l: 40px;
  --border--1: 2px solid var(--color--pink);
  --box-shadow--1: 0px 2px 3px 0px rgba(0, 0, 0, 0.2);
  --transition--duration: 200ms;
  --transition--base: var(--transition--duration) cubic-bezier(0.165, 0.84, 0.44, 1);
  --transition--duration--s: 125ms;
  --transition--s: var(--transition--duration--s) ease;
  --transition--duration--m: 300ms;
  --transition--m: var(--transition--duration--m) ease;
  --transition--duration--l: 450ms;
  --transition--l: var(--transition--duration--l) ease;
  --btn--size: 48px;
  --btn--border-width: 2px;
  --btn--padding-block: calc(0.555em - var(--btn--border-width));
  --btn--padding-inline: calc(var(--space--24) - var(--btn--border-width));
  --btn--border-radius: 1.5em;
  --btn--font-weight: var(--fw--semibold);
  --btn--background-color: var(--color--dark-grey);
  --btn--border-color: var(--color--dark-grey);
  --btn--color: var(--color--grey);
  --btn--background-color--hover: transparent;
  --btn--border-color--hover: var(--color--dark-grey);
  --btn--color--hover: var(--color--dark-grey);
  --link--color: inherit;
  --link--color--hover: inherit;
  --link--text-decoration: underline;
  --link--text-decoration--hover: underline;
  --container--padding-inline: calc(20 * 1px + (32 - 20) * var(--fluid--bp));
  --section--max-width: var(--width--l);
  --section--margin-inline: var(--container--padding-inline);
  --section--margin-block: var(--space--layout);
  --section--padding-inline: var(--container--padding-inline);
  --section--padding-block: var(--space--layout);
  --form--column-gap: var(--space--24);
  --form--row-gap: var(--space--24);
  --form--label-spacing: var(--space--xs);
  --form--field--row-gap: var(--space--xs);
  --form--field--column-gap: var(--space--s);
  --input--background-color: transparent;
  --input--background-color--focus: transparent;
  --input--border-width: 1px;
  --input--border-color: currentColor;
  --input--border-radius: 0;
  --input--color: currentColor;
  --input--gap: var(--space--xs);
  --input--padding-block: calc(0.555em - var(--input--border-width));
  --input--padding-inline: calc(0.75em - var(--input--border-width));
  --input--min-height: 48px;
  --input--placeholder-color: currentColor;
  --checkbox--size: 1.5em;
  --checkbox--check-size: 1.125em;
  --checkbox--checkmark-size: 1em;
  --checkbox--input--background-color: currentColor;
  --radio--size: 1.5em;
  --radio--check-size: 1.125em;
  --grid--column-gap: var(--space--20);
  --grid--row-gap: var(--space--20);
  --grid--columns: 1;
  --grid--item--min-width: 21.875rem;
  --table--header--background-color: rgba(0, 0, 0, 0.5);
  --table--header--border: var(--border--1);
  --table--header--color: var(--color--white);
  --table--row--background-color: rgba(0, 0, 0, 0.4);
  --table--row--color: var(--color--white);
  --table--row--height: 68px;
  --table--row--border-radius: var(--border-radius--s);
  --table--row--padding-block: var(--space--20);
  --table--row--padding-inline: var(--space--20);
  --fluid--min-width: 390;
  --fluid--max-width: 1248;
  --fluid--screen: 100vw;
  --fluid--bp: calc((var(--fluid--screen) - var(--fluid--min-width) / 16 * 1rem) / (var(--fluid--max-width) - var(--fluid--min-width)));
}
@media (min-width: 48em) {
  :root {
    --grid--columns: 2;
    --input--padding-block: calc(0.555em - var(--input--border-width));
    --input--padding-inline: calc(0.75em - var(--input--border-width));
  }
}
@media (min-width: 62em) {
  :root {
    --grid--columns: 3;
  }
}
@media (min-width: 83.125em) {
  :root {
    --container--padding-inline: calc(22 * 1px + (60 - 22) * var(--fluid--bp));
  }
}
@media screen and (min-width: 1248px) {
  :root {
    --fluid--screen: calc(var(--fluid--max-width) * 1px);
  }
}

/* More intuitive box sizing model */
*,
*::before,
*::after {
  box-sizing: border-box;
  min-width: 0;
}

/* Remove default margins */
:where(body,
h1,
h2,
h3,
h4,
h5,
h6,
p,
figure,
blockquote,
dl,
dd) {
  margin: 0;
}

/* Prevent font size inflation */
html {
  -webkit-text-size-adjust: none;
     -moz-text-size-adjust: none;
          text-size-adjust: none;
}
html:focus-within {
  scroll-behavior: smooth;
}

/* Allow percentage-based heights */
html,
body {
  height: 100%;
}

/* Set core body defaults */
body {
  min-height: 100%;
  line-height: 1.5;
  -webkit-font-smoothing: antialiased;
}

/* Improve media defaults */
img,
picture,
video,
canvas,
svg {
  display: block;
  max-width: 100%;
}

/* Remove built-in form typography styles */
input,
button,
textarea,
select {
  font: inherit;
}

/* Avoid text overflows */
p,
h1,
h2,
h3,
h4,
h5,
h6 {
  overflow-wrap: break-word;
}

/* A elements that don't have a class get default styles */
a:not([class]) {
  -webkit-text-decoration-skip: ink;
          text-decoration-skip-ink: auto;
  color: currentColor;
}

/* Make images easier to work with */
img,
picture {
  max-width: 100%;
  display: block;
  width: 100%;
  height: auto;
}

/* Make sure textareas without a rows attribute are not tiny */
textarea:not([rows]) {
  min-height: 10em;
}

/* Anything that has been anchored to should have extra scroll margin */
:target {
  scroll-margin-block: 5ex;
}

audio,
canvas,
iframe,
img,
svg,
video {
  vertical-align: middle;
}

small {
  font-size: 80%;
}

:where(form) {
  margin: 0;
}

:root {
  --animate--animation: animate--fade-in;
  --animate--duration: 600ms;
  --animate--delay: 0ms;
  --animate--item--key-delay: 300ms;
  --animate--easing: ease-in-out;
}

@media screen and (prefers-reduced-motion: no-preference) {
  .animate {
    animation: var(--animate--animation) var(--animate--duration) var(--animate--delay) forwards var(--animate--easing);
    animation-delay: calc(var(--animate--delay, 0ms) + var(--animate--item--key-delay, 0ms) * var(--animate--key, 0));
    animation-play-state: running;
  }
}
@media screen and (prefers-reduced-motion: no-preference) {
  .animate {
    opacity: 0;
  }
}

.animate--up {
  --animate--animation: animate--fade-in--translate;
  --animate--translateY: 5px;
}

.animate--down {
  --animate--animation: animate--fade-in--translate;
  --animate--translateY: -5px;
}

.animate--right {
  --animate--animation: animate--fade-in--translate;
  --animate--translateX: -5px;
}

.animate--left {
  --animate--animation: animate--fade-in--translate;
  --animate--translateX: 5px;
}

@keyframes animate--fade-in {
  from {
    opacity: var(--animate--opacity--from, 0);
  }
  to {
    opacity: var(--animate--opacity--to, 1);
  }
}
@keyframes animate--fade-in--translate {
  from {
    opacity: var(--animate--opacity--from, 0);
    transform: translate(var(--animate--translateX, 0), var(--animate--translateY, 0));
  }
  50% {
    transform: translate(0);
  }
  to {
    opacity: var(--animate--opacity--to, 1);
  }
}
.page-header--front-page [data-carousel=hero-events] .card__heading, .page-header--front-page .page-header__heading,
.type-heading-xl {
  font-weight: var(--fw--bold);
  font-size: calc(36 / 16 * 1rem + (50 - 36) * var(--fluid--bp));
  line-height: 1.222;
  text-wrap: pretty;
}
@media (min-width: 48em) {
  .page-header--front-page [data-carousel=hero-events] .card__heading, .page-header--front-page .page-header__heading,
  .type-heading-xl {
    line-height: 1.16;
  }
}

.page-header__heading, h1,
.type-h1 {
  font-weight: var(--fw--bold);
  font-size: calc(32 / 16 * 1rem + (42 - 32) * var(--fluid--bp));
  line-height: 1.1875;
  text-wrap: pretty;
}
@media (min-width: 48em) {
  .page-header__heading, h1,
  .type-h1 {
    line-height: 1.143;
  }
}

h2,
.type-h2 {
  font-weight: var(--fw--bold);
  font-size: calc(28 / 16 * 1rem + (32 - 28) * var(--fluid--bp));
  line-height: 1.286;
  text-wrap: pretty;
}
@media (min-width: 48em) {
  h2,
  .type-h2 {
    line-height: 1.25;
  }
}

.page-header--front-page [data-carousel=hero-events] .card__dates, .card__heading, h3,
.type-h3 {
  font-weight: var(--fw--bold);
  font-size: calc(24 / 16 * 1rem + (28 - 24) * var(--fluid--bp));
  line-height: 1.25;
  text-wrap: pretty;
}
@media (min-width: 48em) {
  .page-header--front-page [data-carousel=hero-events] .card__dates, .card__heading, h3,
  .type-h3 {
    line-height: 1.286;
  }
}

.site-header__top-menu .menu-item__link, .event-instances__heading, h4,
.type-h4 {
  font-weight: var(--fw--bold);
  font-size: calc(20 / 16 * 1rem + (24 - 20) * var(--fluid--bp));
  line-height: 1.3;
  text-wrap: pretty;
}
@media (min-width: 48em) {
  .site-header__top-menu .menu-item__link, .event-instances__heading, h4,
  .type-h4 {
    line-height: 1.25;
  }
}

.article--spektrix-iframe .main-content__intro,
.label--large, h5,
.type-h5 {
  font-weight: var(--fw--bold);
  font-size: calc(18 / 16 * 1rem + (20 - 18) * var(--fluid--bp));
  line-height: 1.333;
  text-wrap: pretty;
}
@media (min-width: 48em) {
  .article--spektrix-iframe .main-content__intro,
  .label--large, h5,
  .type-h5 {
    line-height: 1.3;
  }
}

.listing-filters .dates-filter__input, .listing__clear.btn, .search-form .input-group [type=text], .post-detail__content, .gform_wrapper.gravity-theme.gravity-theme .gform-field-label, .gform_confirmation_wrapper .gform_confirmation_message, .progress-nav-item__icon, .progress-nav-item__text,
.table th,
.table td:first-child, h6,
.label,
label,
.type-input-label,
.type-h6 {
  font-weight: var(--fw--bold);
  font-size: calc(16 / 16 * 1rem + (18 - 16) * var(--fluid--bp));
  line-height: 1.25;
  text-wrap: pretty;
}
@media (min-width: 48em) {
  .listing-filters .dates-filter__input, .listing__clear.btn, .search-form .input-group [type=text], .post-detail__content, .gform_wrapper.gravity-theme.gravity-theme .gform-field-label, .gform_confirmation_wrapper .gform_confirmation_message, .progress-nav-item__icon, .progress-nav-item__text,
  .table th,
  .table td:first-child, h6,
  .label,
  label,
  .type-input-label,
  .type-h6 {
    line-height: 1.333;
  }
}

.site-header__utility-nav > .btn,
.type-heading-xs {
  font-weight: var(--fw--bold);
  font-size: 0.875rem;
  line-height: 1.143;
  text-wrap: pretty;
}

.page-header--front-page [data-carousel=hero-events] .card .type-body-l, .page-header__subheading,
.type-body-xl {
  font-weight: var(--fw--semibold);
  font-size: calc(22 / 16 * 1rem + (26 - 22) * var(--fluid--bp));
  line-height: 1.364;
}
@media (min-width: 48em) {
  .page-header--front-page [data-carousel=hero-events] .card .type-body-l, .page-header__subheading,
  .type-body-xl {
    line-height: 1.385;
  }
}

.card__summary, .page-header__summary,
.type-body-l {
  font-weight: var(--fw--medium);
  font-size: calc(18 / 16 * 1rem + (20 - 18) * var(--fluid--bp));
  line-height: 1.556;
}
@media (min-width: 48em) {
  .card__summary, .page-header__summary,
  .type-body-l {
    line-height: 1.5;
  }
}

.post-detail__heading, .article--spektrix-iframe .main-content__text, body,
.type-body {
  font-family: var(--ff--primary);
  font-weight: var(--fw--medium);
  font-size: calc(16 / 16 * 1rem + (18 - 16) * var(--fluid--bp));
  line-height: 1.375;
}
@media (min-width: 48em) {
  .post-detail__heading, .article--spektrix-iframe .main-content__text, body,
  .type-body {
    line-height: 1.556;
  }
}

.gform_wrapper.gravity-theme.gravity-theme .validation_message,
.type-body-s {
  font-weight: var(--fw--medium);
  font-size: 0.875rem;
  line-height: 1.571;
}
@media (min-width: 48em) {
  .gform_wrapper.gravity-theme.gravity-theme .validation_message,
  .type-body-s {
    line-height: 1.429;
  }
}

.tooltip-item__tooltip,
.type-body-xs {
  font-weight: var(--fw--medium);
  font-size: 0.75rem;
  line-height: 1.333;
}

.site-header__main-menu .menu-item__wrap[data-menu-depth="0"] > .menu-item__link,
.type-menu-heading {
  font-weight: var(--fw--bold);
  font-size: calc(24 / 16 * 1rem + (20 - 24) * var(--fluid--bp));
  line-height: 1.25;
}
@media (min-width: 48em) {
  .site-header__main-menu .menu-item__wrap[data-menu-depth="0"] > .menu-item__link,
  .type-menu-heading {
    line-height: 1.3;
  }
}

.site-header__main-menu .menu-item__link,
.type-menu-text {
  font-weight: var(--fw--medium);
  font-size: calc(20 / 16 * 1rem + (16 - 20) * var(--fluid--bp));
  line-height: 1.5;
}
@media (min-width: 48em) {
  .site-header__main-menu .menu-item__link,
  .type-menu-text {
    line-height: 1.5;
  }
}

.mailing-list .gform_wrapper.gravity-theme.gravity-theme [type=text],
.mailing-list .gform_wrapper.gravity-theme.gravity-theme [type=password],
.mailing-list .gform_wrapper.gravity-theme.gravity-theme [type=date],
.mailing-list .gform_wrapper.gravity-theme.gravity-theme [type=datetime],
.mailing-list .gform_wrapper.gravity-theme.gravity-theme [type=datetime-local],
.mailing-list .gform_wrapper.gravity-theme.gravity-theme [type=month],
.mailing-list .gform_wrapper.gravity-theme.gravity-theme [type=week],
.mailing-list .gform_wrapper.gravity-theme.gravity-theme [type=email],
.mailing-list .gform_wrapper.gravity-theme.gravity-theme [type=number],
.mailing-list .gform_wrapper.gravity-theme.gravity-theme [type=search],
.mailing-list .gform_wrapper.gravity-theme.gravity-theme [type=tel],
.mailing-list .gform_wrapper.gravity-theme.gravity-theme [type=time],
.mailing-list .gform_wrapper.gravity-theme.gravity-theme [type=url],
.mailing-list .gform_wrapper.gravity-theme.gravity-theme [type=color],
.mailing-list .gform_wrapper.gravity-theme.gravity-theme textarea,
.btn, .quantity-input [data-quantity-increment],
.quantity-input [data-quantity-decrement],
quantity-input [data-quantity-increment],
quantity-input [data-quantity-decrement], .media .swiper-button-next,
.media .swiper-button-prev,
.filter-button, .datepicker .datepicker__close-btn, .gform_wrapper.gravity-theme.gravity-theme .gform-button,
.gform_wrapper.gravity-theme.gravity-theme .gform_button, .cky-banner-element,
.type-button {
  font-weight: var(--fw--semibold);
  font-size: var(--fs--base);
  line-height: 1.5555;
}

.type-card-meta {
  font-weight: var(--fw--medium);
  font-size: 0.875rem;
  line-height: 1.429;
}

html {
  color: var(--color--foreground);
  background-color: var(--color--background);
  scroll-behavior: smooth;
  scroll-padding-top: 4rem;
}

@view-transition {
  navigation: auto;
}
body {
  display: flex;
  flex-direction: column;
  text-underline-offset: var(--text-underline-offset);
}

.page-wrap {
  display: flex;
  flex-direction: column;
  flex: 1;
}

.SpektrixFooter {
  display: none;
}

:where(p,
ul,
ol,
table,
iframe,
embed,
hr,
address,
pre,
dl,
fieldset):where(:not([class~=not-prose] *)) {
  margin-block: var(--space--prose);
}

:where(p + p):where(:not([class~=not-prose] *)) {
  margin-top: calc(var(--space--prose) * -1 + var(--space--m));
}

:where(h1,
h2,
h3,
h4,
h5,
h6) {
  text-wrap: pretty;
}
:where(h1,
h2,
h3,
h4,
h5,
h6):where(:not([class~=not-prose] *)) {
  margin-block-start: var(--heading--margin-top, 0px);
  margin-block-end: var(--heading--margin-bottom, 0px);
}
:where(h1,
h2,
h3,
h4,
h5,
h6):where(:not([class~=not-prose] *)) + :where(p, ul, ol) {
  margin-block-start: 0;
}

strong,
b {
  font-weight: var(--fw--bold);
}

details, summary {
  list-style: none;
}

::-webkit-details-marker,
summary::marker {
  display: none;
}

ul,
ol {
  padding-left: 1.2em;
}

li {
  position: relative;
  margin-bottom: 0.5em;
}
li:last-child {
  margin-bottom: 0;
}

/* Remove list styles on ul, ol elements with a list role, which suggests default styling will be removed */
[role=list] {
  margin: 0;
  padding: 0;
  list-style: none;
}
[role=list] li {
  list-style-image: none;
  margin-bottom: 0;
}
[role=list] li::after {
  content: none;
}

button,
[type=submit] {
  font-family: var(--ff--primary);
  background-color: transparent;
  border: 0;
  border-radius: 0;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  padding: 0;
  cursor: pointer;
  color: currentColor;
}

svg {
  width: 100%;
  height: auto;
}
svg:where(:not(.svg--stroke)) {
  fill: currentColor;
}

:where(.svg--stroke) path {
  stroke: currentColor;
}

iframe {
  max-width: 100%;
}

.support__donate-item input:focus-visible + label,
.filter-button:has([type=checkbox]:focus-visible),
.filter-button:has([type=radio]:focus-visible),
*:focus,
*:focus-visible {
  outline: 3px dotted var(--color--focus);
  outline-offset: 3px;
}
.support__donate-item input:focus-visible + label:not(:focus-visible):active,
.filter-button:not(:focus-visible):active:has([type=checkbox]:focus-visible),
.filter-button:not(:focus-visible):active:has([type=radio]:focus-visible),
*:focus:not(:focus-visible):focus,
*:focus:not(:focus-visible):active,
*:focus-visible:not(:focus-visible):focus,
*:focus-visible:not(:focus-visible):active {
  outline-style: none;
  outline-width: 0;
}

[hidden] {
  display: none !important;
}
[hidden]:where(.hide-with-visibility) {
  display: block !important;
  visibility: hidden;
  opacity: 0;
}

.container {
  width: 100%;
  max-width: var(--width--l--padded);
  margin-inline: auto;
}

.container--max {
  width: 100%;
  max-width: var(--width--max--padded);
  margin-inline: auto;
}

.container--full {
  width: 100%;
  max-width: var(--width--max--padded);
  margin-inline: auto;
}
@media (min-width: 96.875em) {
  .container--full {
    max-width: var(--width--full--padded);
  }
}

.has-black-background-color {
  --color--background: var(--color--black);
  background-color: var(--color--background);
  --color--foreground: var(--color--white);
  --focus--color: var(--color--foreground);
  color: var(--color--foreground);
  --link--color: var(--color--white);
  --link--color--hover: var(--color--white);
}

.has-black-color {
  color: var(--color--black);
}

.has-black-50-background-color {
  --color--background: var(--color--black-50);
  background-color: var(--color--background);
  --color--foreground: var(--color--white);
  --focus--color: var(--color--foreground);
  color: var(--color--foreground);
  --link--color: var(--color--white);
  --link--color--hover: var(--color--white);
}

.has-black-50-color {
  color: var(--color--black-50);
}

.has-black-40-background-color {
  --color--background: var(--color--black-40);
  background-color: var(--color--background);
  --color--foreground: var(--color--white);
  --focus--color: var(--color--foreground);
  color: var(--color--foreground);
  --link--color: var(--color--white);
  --link--color--hover: var(--color--white);
}

.has-black-40-color {
  color: var(--color--black-40);
}

.has-white-background-color {
  --color--background: var(--color--white);
  background-color: var(--color--background);
}

.has-white-color {
  color: var(--color--white);
}

.has-dark-grey-background-color {
  --color--background: var(--color--dark-grey);
  background-color: var(--color--background);
  --color--foreground: var(--color--white);
  --focus--color: var(--color--foreground);
  color: var(--color--foreground);
  --link--color: var(--color--white);
  --link--color--hover: var(--color--white);
}

.has-dark-grey-color {
  color: var(--color--dark-grey);
}

.has-coral-background-color {
  --color--background: var(--color--coral);
  background-color: var(--color--background);
  --color--foreground: var(--color--dark-grey);
  --focus--color: var(--color--foreground);
  color: var(--color--foreground);
  --link--color: var(--color--dark-grey);
  --link--color--hover: var(--color--dark-grey);
  --color--focus: var(--color--dark-grey);
}

.has-coral-color {
  color: var(--color--coral);
}

.has-lime-background-color {
  --color--background: var(--color--lime);
  background-color: var(--color--background);
  --color--foreground: var(--color--dark-grey);
  --focus--color: var(--color--foreground);
  color: var(--color--foreground);
  --link--color: var(--color--dark-grey);
  --link--color--hover: var(--color--dark-grey);
  --color--focus: var(--color--dark-grey);
}

.has-lime-color {
  color: var(--color--lime);
}

.has-grey-background-color {
  --color--background: var(--color--grey);
  background-color: var(--color--background);
  --color--foreground: var(--color--dark-grey);
  --focus--color: var(--color--foreground);
  color: var(--color--foreground);
  --link--color: var(--color--dark-grey);
  --link--color--hover: var(--color--dark-grey);
  --color--focus: var(--color--dark-grey);
}

.has-grey-color {
  color: var(--color--grey);
}

.has-green-background-color {
  --color--background: var(--color--green);
  background-color: var(--color--background);
  --color--foreground: var(--color--dark-grey);
  --focus--color: var(--color--foreground);
  color: var(--color--foreground);
  --link--color: var(--color--dark-grey);
  --link--color--hover: var(--color--dark-grey);
  --color--focus: var(--color--dark-grey);
}

.has-green-color {
  color: var(--color--green);
}

.has-mustard-background-color {
  --color--background: var(--color--mustard);
  background-color: var(--color--background);
  --color--foreground: var(--color--dark-grey);
  --focus--color: var(--color--foreground);
  color: var(--color--foreground);
  --link--color: var(--color--dark-grey);
  --link--color--hover: var(--color--dark-grey);
  --color--focus: var(--color--dark-grey);
}

.has-mustard-color {
  color: var(--color--mustard);
}

.has-beige-background-color {
  --color--background: var(--color--beige);
  background-color: var(--color--background);
  --color--foreground: var(--color--dark-grey);
  --focus--color: var(--color--foreground);
  color: var(--color--foreground);
  --link--color: var(--color--dark-grey);
  --link--color--hover: var(--color--dark-grey);
  --color--focus: var(--color--dark-grey);
}

.has-beige-color {
  color: var(--color--beige);
}

.has-orange-background-color {
  --color--background: var(--color--orange);
  background-color: var(--color--background);
  --color--foreground: var(--color--dark-grey);
  --focus--color: var(--color--foreground);
  color: var(--color--foreground);
  --link--color: var(--color--dark-grey);
  --link--color--hover: var(--color--dark-grey);
  --color--focus: var(--color--dark-grey);
  --color--error: var(--color--dark-grey);
}

.has-orange-color {
  color: var(--color--orange);
}

.has-brown-background-color {
  --color--background: var(--color--brown);
  background-color: var(--color--background);
  --color--foreground: var(--color--white);
  --focus--color: var(--color--foreground);
  color: var(--color--foreground);
  --link--color: var(--color--white);
  --link--color--hover: var(--color--white);
}

.has-brown-color {
  color: var(--color--brown);
}

.has-grape-background-color {
  --color--background: var(--color--grape);
  background-color: var(--color--background);
  --color--foreground: var(--color--white);
  --focus--color: var(--color--foreground);
  color: var(--color--foreground);
  --link--color: var(--color--white);
  --link--color--hover: var(--color--white);
}

.has-grape-color {
  color: var(--color--grape);
}

.has-accent-background-color {
  --color--background: var(--color--accent);
  background-color: var(--color--background);
}

.has-accent-color {
  color: var(--color--accent);
}

.has-focus-background-color {
  --color--background: var(--color--focus);
  background-color: var(--color--background);
}

.has-focus-color {
  color: var(--color--focus);
}

.has-error-background-color {
  --color--background: var(--color--error);
  background-color: var(--color--background);
}

.has-error-color {
  color: var(--color--error);
}

.has-disabled-background-color {
  --color--background: var(--color--disabled);
  background-color: var(--color--background);
}

.has-disabled-color {
  color: var(--color--disabled);
}

.has-background-background-color {
  background-color: var(--color--background);
}

.has-background-color {
  color: var(--color--background);
}

.has-foreground-background-color {
  --color--background: var(--color--foreground);
  background-color: var(--color--background);
}

.has-foreground-color {
  color: var(--color--foreground);
}

/* enable transitions */
@media screen and (prefers-reduced-motion: no-preference) {
  [popover],
  dialog {
    transition: display var(--transition--m) allow-discrete, overlay var(--transition--m) allow-discrete, opacity var(--transition--m), transform var(--transition--m);
    opacity: 0;
    transform: scale(0.99) translateY(8px);
  }
  ::backdrop {
    transition: display var(--transition--m) allow-discrete, overlay var(--transition--m) allow-discrete, opacity var(--transition--m), transform var(--transition--m);
    opacity: 0;
  }
  /* IN */
  :popover-open::backdrop,
  [open]::backdrop {
    opacity: 1;
  }
  :popover-open,
  [open] {
    opacity: 1;
    transform: scale(1) translateY(0);
  }
  /* OUT */
  @starting-style {
    :popover-open,
    [open] {
      opacity: 0;
      transform: scale(0.99) translateY(8px);
    }
    :popover-open::backdrop,
    [open]::backdrop {
      opacity: 0;
    }
  }
}
[data-field-sizing=content] {
  --field-sizing--multiplier: 0.85ch;
}
@supports (field-sizing: content) {
  [data-field-sizing=content] {
    field-sizing: content;
  }
}
@supports not (field-sizing: content) {
  [data-field-sizing=content] {
    width: calc(var(--field-sizing--length, 0) * var(--field-sizing--multiplier) + var(--field-sizing--padding-x, 0px) * 2) !important;
  }
}

.grid--auto,
.grid {
  display: grid;
  grid-template-columns: repeat(var(--grid--columns), minmax(0, 1fr));
  -moz-column-gap: var(--grid--column-gap, 0px);
       column-gap: var(--grid--column-gap, 0px);
  row-gap: var(--grid--row-gap, 0px);
}

.grid--auto {
  grid-template-columns: repeat(auto-fill, minmax(min(var(--grid--item--min-width, 21.875rem), 100%), 1fr));
}

.flex-grid {
  display: flex;
  flex-flow: row wrap;
  -moz-column-gap: var(--grid--column-gap, 0px);
       column-gap: var(--grid--column-gap, 0px);
  row-gap: var(--grid--row-gap, 0px);
}
.flex-grid > *,
.flex-grid-item {
  width: calc(100% / var(--grid--columns) - var(--grid--column-gap, 0px) + var(--grid--column-gap, 0px) / var(--grid--columns));
}

.flex-list {
  display: flex;
  flex-flow: row wrap;
  -moz-column-gap: var(--grid--column-gap, 0px);
       column-gap: var(--grid--column-gap, 0px);
  row-gap: var(--grid--row-gap, 0px);
  align-items: center;
  justify-content: flex-start;
}

.grid-columns--1 {
  --grid--columns: 1;
}

.grid-columns--2 {
  --grid--columns: 1;
}
@media (min-width: 62em) {
  .grid-columns--2 {
    --grid--columns: 2;
  }
}

.grid-columns--3 {
  --grid--columns: 1;
}
@media (min-width: 62em) {
  .grid-columns--3 {
    --grid--columns: 2;
  }
}
@media (min-width: 75em) {
  .grid-columns--3 {
    --grid--columns: 3;
  }
}

.grid-columns--4 {
  --grid--columns: 1;
}
@media (min-width: 48em) {
  .grid-columns--4 {
    --grid--columns: 2;
  }
}
@media (min-width: 62em) {
  .grid-columns--4 {
    --grid--columns: 4;
  }
}

.mask-icon,
.page-header__link::before,
.progress-nav-item:has(~ .is-active) .progress-nav-item__icon::before,
.btn--mask-icon::before,
.btn--mask-icon--after::after,
.quantity-input [data-quantity-increment]::before,
.quantity-input [data-quantity-decrement]::before,
quantity-input [data-quantity-increment]::before,
quantity-input [data-quantity-decrement]::before,
.media .swiper-button-next::before,
.media .swiper-button-prev::before,
.datepicker .datepicker-controls .prev-btn::before,
.datepicker .datepicker-controls .next-btn::before,
.filter-button--selectable::after,
.filter-button--checkbox::after {
  width: var(--icon--size, 1em);
  height: var(--icon--size, 1em);
  background-color: currentColor;
  content: "";
  -webkit-mask-position: center;
          mask-position: center;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-size: contain;
          mask-size: contain;
  -webkit-mask-image: var(--icon--url);
          mask-image: var(--icon--url);
}

.img-fit {
  position: relative;
  display: block;
  overflow: hidden;
}
.img-fit > * {
  position: absolute;
  width: 100%;
  height: 100%;
  inset: 0;
  -o-object-fit: var(--img-fit--object-fit, cover);
     object-fit: var(--img-fit--object-fit, cover);
}

.img-fit--contain {
  --img-fit--object-fit: contain;
}

:root {
  --label--border-width: 1px;
  --label--border-radius: 20px;
  --label--padding-block: calc(4px - var(--label--border-width));
  --label--padding-inline: calc(8px - var(--label--border-width));
}

.label--large {
  padding: var(--label--padding-block) var(--label--padding-inline);
  border: var(--label--border-width) solid currentColor;
  background-color: transparent;
  border-radius: var(--label--border-radius, 0px);
  color: var(--color--white);
  margin: 0;
}
@media (min-width: 48em) {
  .label--large {
    --label--padding-inline: calc(16px - var(--label--border-width));
  }
}

.label--small {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 3px var(--space--12);
  border: 1px solid currentColor;
  border-radius: var(--btn--border-radius, 0px);
  font-size: calc(14 / 16 * 1rem + (16 - 14) * var(--fluid--bp));
}

.event-instances > *:first-child, .gform_wrapper.gravity-theme.gravity-theme > *:first-child, .gform_wrapper.gravity-theme.gravity-theme .gform_validation_errors > *:first-child, .article__content > *:first-child, .section > *:first-child, .section__inner > *:first-child,
.section > [class*=__inner] > *:first-child,
.margin-trim > *:first-child {
  margin-block-start: 0;
}
.event-instances > *:last-child, .gform_wrapper.gravity-theme.gravity-theme > *:last-child, .gform_wrapper.gravity-theme.gravity-theme .gform_validation_errors > *:last-child, .article__content > *:last-child, .section > *:last-child, .section__inner > *:last-child,
.section > [class*=__inner] > *:last-child,
.margin-trim > *:last-child {
  margin-block-end: 0;
}

.margin-trim-start > *:first-child {
  margin-block-start: 0;
}

.margin-trim-end > *:last-child {
  margin-block-end: 0;
}

.taxonomy-list > *, .page-header--404 .page-header__content > *, .page-header--search .page-header__content > *, .article__content > *,
:where(.stack) > * {
  margin-block: 0;
}
.taxonomy-list :where(.stack > * + *), .page-header--404 .page-header__content :where(.stack > * + *), .page-header--search .page-header__content :where(.stack > * + *), .article__content :where(.stack > * + *),
:where(.stack) :where(.stack > * + *) {
  margin-block-start: var(--space--stack);
}

.taxonomy-list > * + *, .page-header--404 .page-header__content > * + *, .page-header--search .page-header__content > * + *, .article__content > * + * {
  margin-block-start: var(--space--stack);
}

:where(.stack--xxs) > * + * {
  --space--stack: var(--space--xxs);
}

:where(.stack--xs) > * + * {
  --space--stack: var(--space--xs);
}

:where(.stack--s) > * + * {
  --space--stack: var(--space--s);
}

:where(.stack--m) > * + * {
  --space--stack: var(--space--m);
}

:where(.stack--ml) > * + * {
  --space--stack: var(--space--ml);
}

:where(.stack--l) > * + * {
  --space--stack: var(--space--l);
}

:where(.stack--xl) > * + * {
  --space--stack: var(--space--l);
}

:where(.stack--layout) > * + * {
  --space--stack: var(--space--layout);
}

.section {
  width: 100%;
  margin-inline: auto;
  container: section/inline-size;
}
.section__inner,
.section > [class*=__inner] {
  margin-inline: auto;
}
.section__header {
  display: flex;
  flex-flow: row nowrap;
  align-items: flex-end;
  justify-content: space-between;
  margin-bottom: calc(18 / 16 * 1rem + (20 - 18) * var(--fluid--bp));
  gap: var(--space--24);
}
.section__header__content {
  flex: 1;
}
.section.has-background {
  padding-block: var(--section--padding-block);
}

.person.no-image, .media .dialog--media .dialog-content, .dialog:where(.dialog--general) .dialog__inner,
.rounded {
  overflow: hidden;
  border-radius: var(--border-radius--m);
}

.rounded--s {
  overflow: hidden;
  border-radius: var(--border-radius--s);
}

.rounded--l {
  overflow: hidden;
  border-radius: var(--border-radius--m);
}

.table {
  --table--row-gap: 12px;
  border-collapse: separate;
  border-spacing: 0 var(--table--row-gap);
  margin-block: calc(-1 * var(--table--row-gap));
  overflow: hidden;
  width: 100%;
  line-height: inherit;
}
.table th,
.table td {
  text-align: center;
  padding: var(--table--row--padding-block) var(--table--row--padding-inline);
}
.table th:first-child,
.table td:first-child {
  border-radius: var(--table--row--border-radius) 0 0 var(--table--row--border-radius);
  text-align: left;
}
.table th:last-child,
.table td:last-child {
  border-radius: 0 var(--table--row--border-radius) var(--table--row--border-radius) 0;
}
.table th {
  height: var(--table--header--height);
  background-color: var(--table--header--background-color);
  color: var(--table--header--color);
  border: 0;
  min-height: var(--table--row--height);
}
.table td {
  height: var(--table--row--height);
  background-color: var(--table--row--background-color);
  color: var(--table--row--color);
  border: 0;
  vertical-align: middle;
}
.table tr:nth-child(odd) {
  background-color: transparent;
}
.table tr:nth-child(odd) td {
  background-color: var(--table--row--background-color--odd, var(--table--row--background-color));
}
.table tr:nth-child(even) {
  background-color: transparent;
}
.table tr:nth-child(even) td {
  background-color: var(--table--row--background-color--even, var(--table--row--background-color));
}
.table tfoot::before {
  content: "";
  display: block;
  height: var(--space--layout);
}
.table tfoot tr:first-of-type td {
  border-top: 1px solid var(--color--white);
}
.table tfoot tr:nth-child(odd) {
  --table--row--background-color--odd: var(--table--row--background-color--even);
}
.table tfoot tr:nth-child(even) {
  --table--row--background-color--even: var(--table--row--background-color--odd);
}
.table tfoot .label {
  font-weight: var(--fw--bold);
}
.table tfoot .grand-total td {
  font-weight: var(--fw--bold);
}

.responsive-table {
  overflow: hidden;
  width: 100%;
  max-width: 100%;
}
.responsive-table > * {
  overflow-x: auto;
  overflow-y: hidden;
  -webkit-overflow-scrolling: touch;
}
.responsive-table > * > table {
  min-width: min(100%, 600px);
}
@media (max-width: 47.99em) {
  .responsive-table > * > table {
    min-width: 700px;
  }
}

.responsive-table-wrapper {
  overflow: hidden;
  position: relative;
}
@media (max-width: 47.99em) {
  .responsive-table-wrapper {
    margin-left: calc(-1 * var(--section--margin-inline));
    margin-right: calc(-1 * var(--section--margin-inline));
    width: calc(100% + 2 * var(--section--margin-inline));
  }
}

@media (max-width: 47.99em) {
  .responsive-table-scroller {
    display: grid;
    grid-template-columns: var(--section--margin-inline) 1fr var(--section--margin-inline);
  }
  .responsive-table-scroller > table {
    grid-column: 2;
  }
}

:where(:-moz-any-link) {
  color: var(--link--color);
  text-decoration: var(--link--text-decoration);
}

:where(:any-link),
.link,
.btn--link {
  color: var(--link--color);
  -webkit-text-decoration: var(--link--text-decoration);
          text-decoration: var(--link--text-decoration);
}
:where(:-moz-any-link):active {
  color: var(--link--color--hover);
  text-decoration: var(--link--text-decoration--hover);
}
:where(:any-link):active,
.link:active,
.btn--link:active {
  color: var(--link--color--hover);
  -webkit-text-decoration: var(--link--text-decoration--hover);
          text-decoration: var(--link--text-decoration--hover);
}
@media (hover: hover) {
  :where(:-moz-any-link):hover {
    color: var(--link--color--hover);
    text-decoration: var(--link--text-decoration--hover);
  }
  :where(:any-link):hover,
  .link:hover,
  .btn--link:hover {
    color: var(--link--color--hover);
    -webkit-text-decoration: var(--link--text-decoration--hover);
            text-decoration: var(--link--text-decoration--hover);
  }
}

.link--secondary {
  color: var(--link--color);
  -webkit-text-decoration: var(--link--text-decoration);
          text-decoration: var(--link--text-decoration);
  font-weight: var(--fw--bold);
}
.link--secondary:active {
  color: var(--link--color--hover);
  -webkit-text-decoration: var(--link--text-decoration--hover);
          text-decoration: var(--link--text-decoration--hover);
}
@media (hover: hover) {
  .link--secondary:hover {
    color: var(--link--color--hover);
    -webkit-text-decoration: var(--link--text-decoration--hover);
            text-decoration: var(--link--text-decoration--hover);
  }
}

.link--underline-on-hover {
  --link--text-decoration: none;
  --link--text-decoration--hover: underline;
}

.mailing-list .gform_wrapper.gravity-theme.gravity-theme .gform-button,
.mailing-list .gform_wrapper.gravity-theme.gravity-theme .gform_button,
.btn--dark-grey.btn--dark-grey {
  --btn--background-color: var(--color--dark-grey);
  --btn--border-color: var(--color--dark-grey);
  --btn--color: var(--color--grey);
  --btn--background-color--hover: transparent;
  --btn--border-color--hover: var(--color--dark-grey);
  --btn--color--hover: var(--color--dark-grey);
}

.btn--grey.btn--grey {
  --btn--background-color: var(--color--grey);
  --btn--border-color: var(--color--grey);
  --btn--color: var(--color--dark-grey);
  --btn--background-color--hover: transparent;
  --btn--border-color--hover: var(--color--grey);
  --btn--color--hover: var(--color--grey);
}

.btn--grey-to-dark-grey.btn--grey-to-dark-grey {
  --btn--background-color: var(--color--grey);
  --btn--border-color: var(--color--grey);
  --btn--color: var(--color--dark-grey);
  --btn--background-color--hover: var(--color--dark-grey);
  --btn--border-color--hover: var(--color--dark-grey);
  --btn--color--hover: var(--color--grey);
}

.datepicker .datepicker__close-btn, .gform_wrapper.gravity-theme.gravity-theme [type=submit], .cky-banner-element, .has-neutral-background-color .quantity-input [data-quantity-increment], .quantity-input .has-neutral-background-color [data-quantity-increment],
.has-neutral-background-color .quantity-input [data-quantity-decrement],
.quantity-input .has-neutral-background-color [data-quantity-decrement],
.has-neutral-background-color quantity-input [data-quantity-increment],
quantity-input .has-neutral-background-color [data-quantity-increment],
.has-neutral-background-color quantity-input [data-quantity-decrement],
quantity-input .has-neutral-background-color [data-quantity-decrement], .has-neutral-background-color .media .swiper-button-next, .media .has-neutral-background-color .swiper-button-next,
.has-neutral-background-color .media .swiper-button-prev,
.media .has-neutral-background-color .swiper-button-prev,
.has-neutral-background-color .filter-button, .has-neutral-background-color .datepicker .datepicker__close-btn, .datepicker .has-neutral-background-color .datepicker__close-btn, .has-neutral-background-color .gform_wrapper.gravity-theme.gravity-theme .gform-button, .gform_wrapper.gravity-theme.gravity-theme .has-neutral-background-color .gform-button,
.has-neutral-background-color .gform_wrapper.gravity-theme.gravity-theme .gform_button,
.gform_wrapper.gravity-theme.gravity-theme .has-neutral-background-color .gform_button, .has-neutral-background-color .cky-banner-element,
.has-neutral-background-color .btn, .has-grape-background-color .quantity-input [data-quantity-increment], .quantity-input .has-grape-background-color [data-quantity-increment],
.has-grape-background-color .quantity-input [data-quantity-decrement],
.quantity-input .has-grape-background-color [data-quantity-decrement],
.has-grape-background-color quantity-input [data-quantity-increment],
quantity-input .has-grape-background-color [data-quantity-increment],
.has-grape-background-color quantity-input [data-quantity-decrement],
quantity-input .has-grape-background-color [data-quantity-decrement], .has-grape-background-color .media .swiper-button-next, .media .has-grape-background-color .swiper-button-next,
.has-grape-background-color .media .swiper-button-prev,
.media .has-grape-background-color .swiper-button-prev,
.has-grape-background-color .filter-button, .has-grape-background-color .datepicker .datepicker__close-btn, .datepicker .has-grape-background-color .datepicker__close-btn, .has-grape-background-color .gform_wrapper.gravity-theme.gravity-theme .gform-button, .gform_wrapper.gravity-theme.gravity-theme .has-grape-background-color .gform-button,
.has-grape-background-color .gform_wrapper.gravity-theme.gravity-theme .gform_button,
.gform_wrapper.gravity-theme.gravity-theme .has-grape-background-color .gform_button, .has-grape-background-color .cky-banner-element, .has-coral-background-color .quantity-input [data-quantity-increment], .quantity-input .has-coral-background-color [data-quantity-increment],
.has-coral-background-color .quantity-input [data-quantity-decrement],
.quantity-input .has-coral-background-color [data-quantity-decrement],
.has-coral-background-color quantity-input [data-quantity-increment],
quantity-input .has-coral-background-color [data-quantity-increment],
.has-coral-background-color quantity-input [data-quantity-decrement],
quantity-input .has-coral-background-color [data-quantity-decrement], .has-coral-background-color .media .swiper-button-next, .media .has-coral-background-color .swiper-button-next,
.has-coral-background-color .media .swiper-button-prev,
.media .has-coral-background-color .swiper-button-prev,
.has-coral-background-color .filter-button, .has-coral-background-color .datepicker .datepicker__close-btn, .datepicker .has-coral-background-color .datepicker__close-btn, .has-coral-background-color .gform_wrapper.gravity-theme.gravity-theme .gform-button, .gform_wrapper.gravity-theme.gravity-theme .has-coral-background-color .gform-button,
.has-coral-background-color .gform_wrapper.gravity-theme.gravity-theme .gform_button,
.gform_wrapper.gravity-theme.gravity-theme .has-coral-background-color .gform_button, .has-coral-background-color .cky-banner-element,
.has-grape-background-color .btn,
.has-coral-background-color .btn,
.btn--lime.btn--lime {
  --btn--background-color: var(--color--lime);
  --btn--border-color: var(--color--lime);
  --btn--color: var(--color--dark-grey);
  --btn--background-color--hover: var(--color--grape);
  --btn--border-color--hover: var(--color--grape);
  --btn--color--hover: var(--color--grey);
}

.btn--mustard.btn--mustard {
  --btn--background-color: var(--color--mustard);
  --btn--border-color: var(--color--mustard);
  --btn--color: var(--color--dark-grey);
  --btn--background-color--hover: var(--color--grape);
  --btn--border-color--hover: var(--color--grape);
  --btn--color--hover: var(--color--grey);
}

.quantity-input [data-quantity-increment]:disabled,
.quantity-input [data-quantity-decrement]:disabled,
quantity-input [data-quantity-increment]:disabled,
quantity-input [data-quantity-decrement]:disabled, .media .swiper-button-next:disabled,
.media .swiper-button-prev:disabled,
.filter-button:disabled, .datepicker .datepicker__close-btn:disabled, .gform_wrapper.gravity-theme.gravity-theme .gform-button:disabled,
.gform_wrapper.gravity-theme.gravity-theme .gform_button:disabled, .cky-banner-element:disabled,
.btn:disabled,
.btn--outline-dark-grey.btn--outline-dark-grey {
  --btn--background-color: transparent;
  --btn--border-color: var(--color--dark-grey);
  --btn--color: var(--color--dark-grey);
  --btn--background-color--hover: var(--color--dark-grey);
  --btn--border-color--hover: var(--color--dark-grey);
  --btn--color--hover: var(--color--grey);
  --btn--background-color--active: hsla(0, 0%, 100%, 0.5);
  --btn--border-color--active: var(--color--dark-grey);
  --btn--color--active: var(--color--dark-grey);
}

.btn--outline-dark-grey-selectable.btn--outline-dark-grey-selectable {
  --btn--background-color: transparent;
  --btn--border-color: var(--color--dark-grey);
  --btn--color: var(--color--dark-grey);
  --btn--background-color--hover: hsla(0, 0%, 100%, 0.2);
  --btn--border-color--hover: var(--color--dark-grey);
  --btn--color--hover: var(--color--dark-grey);
  --btn--background-color--active: hsla(0, 0%, 100%, 0.5);
}

.quantity-input [data-quantity-increment]:disabled,
.quantity-input [data-quantity-decrement]:disabled,
quantity-input [data-quantity-increment]:disabled,
quantity-input [data-quantity-decrement]:disabled, .media .swiper-button-next:disabled,
.media .swiper-button-prev:disabled,
.filter-button:disabled, .datepicker .datepicker__close-btn:disabled, .gform_wrapper.gravity-theme.gravity-theme .gform-button:disabled,
.gform_wrapper.gravity-theme.gravity-theme .gform_button:disabled, .cky-banner-element:disabled,
.btn:disabled,
.btn--disabled,
.btn--outline-grey.btn--outline-grey {
  --btn--background-color: var(--color--dark-grey);
  --btn--border-color: var(--color--grey);
  --btn--color: var(--color--grey);
  --btn--background-color--hover: var(--color--dark-grey);
  --btn--border-color--hover: var(--color--grey);
  --btn--color--hover: var(--color--grey);
}

.quantity-input [data-quantity-increment],
.quantity-input [data-quantity-decrement],
quantity-input [data-quantity-increment],
quantity-input [data-quantity-decrement],
.filter-button,
.btn--secondary,
.btn--outline-white.btn--outline-white {
  --btn--background-color: transparent;
  --btn--border-color: var(--color--white);
  --btn--color: var(--color--white);
  --btn--background-color--hover: var(--color--dark-grey);
  --btn--border-color--hover: var(--color--grey);
  --btn--color--hover: var(--color--grey);
  --btn--background-color--active: var(--color--grey);
  --btn--border-color--active: var(--color--grey);
  --btn--color--active: var(--color--dark-grey);
}

.quantity-input [data-quantity-increment],
.quantity-input [data-quantity-decrement],
quantity-input [data-quantity-increment],
quantity-input [data-quantity-decrement], .media .swiper-button-next,
.media .swiper-button-prev,
.filter-button, .datepicker .datepicker__close-btn, .gform_wrapper.gravity-theme.gravity-theme .gform-button,
.gform_wrapper.gravity-theme.gravity-theme .gform_button, .cky-banner-element,
.btn {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: var(--btn--padding-block) var(--btn--padding-inline);
  font-family: var(--ff--primary);
  gap: 0.25rem;
  font-weight: var(--btn--font-weight);
  text-align: center;
  text-decoration: none;
  min-width: 9em;
  border: var(--btn--border-width) solid var(--btn--border-color);
  border-radius: var(--btn--border-radius, 0px);
  background-color: var(--btn--background-color);
  color: var(--btn--color);
  transition: all 80ms ease-in-out;
  transition-property: background-color, color, border-color, box-shadow, transform;
}
.quantity-input [data-quantity-increment]:where(button, :-moz-any-link, [role=button], [type=submit], [type=button], .filter-button), .quantity-input [data-quantity-decrement]:where(button, :-moz-any-link, [role=button], [type=submit], [type=button], .filter-button), quantity-input [data-quantity-increment]:where(button, :-moz-any-link, [role=button], [type=submit], [type=button], .filter-button), quantity-input [data-quantity-decrement]:where(button, :-moz-any-link, [role=button], [type=submit], [type=button], .filter-button), .media .swiper-button-next:where(button, :-moz-any-link, [role=button], [type=submit], [type=button], .filter-button), .media .swiper-button-prev:where(button, :-moz-any-link, [role=button], [type=submit], [type=button], .filter-button), .filter-button:where(button, :-moz-any-link, [role=button], [type=submit], [type=button], .filter-button), .datepicker .datepicker__close-btn:where(button, :-moz-any-link, [role=button], [type=submit], [type=button], .filter-button), .gform_wrapper.gravity-theme.gravity-theme .gform-button:where(button, :-moz-any-link, [role=button], [type=submit], [type=button], .filter-button), .gform_wrapper.gravity-theme.gravity-theme .gform_button:where(button, :-moz-any-link, [role=button], [type=submit], [type=button], .filter-button), .cky-banner-element:where(button, :-moz-any-link, [role=button], [type=submit], [type=button], .filter-button), .btn:where(button, :-moz-any-link, [role=button], [type=submit], [type=button], .filter-button) {
  cursor: pointer;
}
.quantity-input [data-quantity-increment]:where(button, :any-link, [role=button], [type=submit], [type=button], .filter-button),
.quantity-input [data-quantity-decrement]:where(button, :any-link, [role=button], [type=submit], [type=button], .filter-button),
quantity-input [data-quantity-increment]:where(button, :any-link, [role=button], [type=submit], [type=button], .filter-button),
quantity-input [data-quantity-decrement]:where(button, :any-link, [role=button], [type=submit], [type=button], .filter-button), .media .swiper-button-next:where(button, :any-link, [role=button], [type=submit], [type=button], .filter-button),
.media .swiper-button-prev:where(button, :any-link, [role=button], [type=submit], [type=button], .filter-button),
.filter-button:where(button, :any-link, [role=button], [type=submit], [type=button], .filter-button), .datepicker .datepicker__close-btn:where(button, :any-link, [role=button], [type=submit], [type=button], .filter-button), .gform_wrapper.gravity-theme.gravity-theme .gform-button:where(button, :any-link, [role=button], [type=submit], [type=button], .filter-button),
.gform_wrapper.gravity-theme.gravity-theme .gform_button:where(button, :any-link, [role=button], [type=submit], [type=button], .filter-button), .cky-banner-element:where(button, :any-link, [role=button], [type=submit], [type=button], .filter-button),
.btn:where(button, :any-link, [role=button], [type=submit], [type=button], .filter-button) {
  cursor: pointer;
}
.quantity-input [data-quantity-increment]:where(button, :-moz-any-link, [role=button], [type=submit], [type=button], .filter-button):active, .quantity-input [data-quantity-decrement]:where(button, :-moz-any-link, [role=button], [type=submit], [type=button], .filter-button):active, quantity-input [data-quantity-increment]:where(button, :-moz-any-link, [role=button], [type=submit], [type=button], .filter-button):active, quantity-input [data-quantity-decrement]:where(button, :-moz-any-link, [role=button], [type=submit], [type=button], .filter-button):active, .media .swiper-button-next:where(button, :-moz-any-link, [role=button], [type=submit], [type=button], .filter-button):active, .media .swiper-button-prev:where(button, :-moz-any-link, [role=button], [type=submit], [type=button], .filter-button):active, .filter-button:where(button, :-moz-any-link, [role=button], [type=submit], [type=button], .filter-button):active, .datepicker .datepicker__close-btn:where(button, :-moz-any-link, [role=button], [type=submit], [type=button], .filter-button):active, .gform_wrapper.gravity-theme.gravity-theme .gform-button:where(button, :-moz-any-link, [role=button], [type=submit], [type=button], .filter-button):active, .gform_wrapper.gravity-theme.gravity-theme .gform_button:where(button, :-moz-any-link, [role=button], [type=submit], [type=button], .filter-button):active, .cky-banner-element:where(button, :-moz-any-link, [role=button], [type=submit], [type=button], .filter-button):active, .btn:where(button, :-moz-any-link, [role=button], [type=submit], [type=button], .filter-button):active {
  background-color: var(--btn--background-color--hover);
  color: var(--btn--color--hover);
  border-color: var(--btn--border-color--hover);
  text-decoration: none;
}
.quantity-input [data-quantity-increment]:where(button, :any-link, [role=button], [type=submit], [type=button], .filter-button):active,
.quantity-input [data-quantity-decrement]:where(button, :any-link, [role=button], [type=submit], [type=button], .filter-button):active,
quantity-input [data-quantity-increment]:where(button, :any-link, [role=button], [type=submit], [type=button], .filter-button):active,
quantity-input [data-quantity-decrement]:where(button, :any-link, [role=button], [type=submit], [type=button], .filter-button):active, .media .swiper-button-next:where(button, :any-link, [role=button], [type=submit], [type=button], .filter-button):active,
.media .swiper-button-prev:where(button, :any-link, [role=button], [type=submit], [type=button], .filter-button):active,
.filter-button:where(button, :any-link, [role=button], [type=submit], [type=button], .filter-button):active, .datepicker .datepicker__close-btn:where(button, :any-link, [role=button], [type=submit], [type=button], .filter-button):active, .gform_wrapper.gravity-theme.gravity-theme .gform-button:where(button, :any-link, [role=button], [type=submit], [type=button], .filter-button):active,
.gform_wrapper.gravity-theme.gravity-theme .gform_button:where(button, :any-link, [role=button], [type=submit], [type=button], .filter-button):active, .cky-banner-element:where(button, :any-link, [role=button], [type=submit], [type=button], .filter-button):active,
.btn:where(button, :any-link, [role=button], [type=submit], [type=button], .filter-button):active {
  background-color: var(--btn--background-color--hover);
  color: var(--btn--color--hover);
  border-color: var(--btn--border-color--hover);
  text-decoration: none;
}
@media (hover: hover) {
  .quantity-input [data-quantity-increment]:where(button, :-moz-any-link, [role=button], [type=submit], [type=button], .filter-button):hover, .quantity-input [data-quantity-decrement]:where(button, :-moz-any-link, [role=button], [type=submit], [type=button], .filter-button):hover, quantity-input [data-quantity-increment]:where(button, :-moz-any-link, [role=button], [type=submit], [type=button], .filter-button):hover, quantity-input [data-quantity-decrement]:where(button, :-moz-any-link, [role=button], [type=submit], [type=button], .filter-button):hover, .media .swiper-button-next:where(button, :-moz-any-link, [role=button], [type=submit], [type=button], .filter-button):hover, .media .swiper-button-prev:where(button, :-moz-any-link, [role=button], [type=submit], [type=button], .filter-button):hover, .filter-button:where(button, :-moz-any-link, [role=button], [type=submit], [type=button], .filter-button):hover, .datepicker .datepicker__close-btn:where(button, :-moz-any-link, [role=button], [type=submit], [type=button], .filter-button):hover, .gform_wrapper.gravity-theme.gravity-theme .gform-button:where(button, :-moz-any-link, [role=button], [type=submit], [type=button], .filter-button):hover, .gform_wrapper.gravity-theme.gravity-theme .gform_button:where(button, :-moz-any-link, [role=button], [type=submit], [type=button], .filter-button):hover, .cky-banner-element:where(button, :-moz-any-link, [role=button], [type=submit], [type=button], .filter-button):hover, .btn:where(button, :-moz-any-link, [role=button], [type=submit], [type=button], .filter-button):hover {
    background-color: var(--btn--background-color--hover);
    color: var(--btn--color--hover);
    border-color: var(--btn--border-color--hover);
    text-decoration: none;
  }
  .quantity-input [data-quantity-increment]:where(button, :any-link, [role=button], [type=submit], [type=button], .filter-button):hover,
  .quantity-input [data-quantity-decrement]:where(button, :any-link, [role=button], [type=submit], [type=button], .filter-button):hover,
  quantity-input [data-quantity-increment]:where(button, :any-link, [role=button], [type=submit], [type=button], .filter-button):hover,
  quantity-input [data-quantity-decrement]:where(button, :any-link, [role=button], [type=submit], [type=button], .filter-button):hover, .media .swiper-button-next:where(button, :any-link, [role=button], [type=submit], [type=button], .filter-button):hover,
  .media .swiper-button-prev:where(button, :any-link, [role=button], [type=submit], [type=button], .filter-button):hover,
  .filter-button:where(button, :any-link, [role=button], [type=submit], [type=button], .filter-button):hover, .datepicker .datepicker__close-btn:where(button, :any-link, [role=button], [type=submit], [type=button], .filter-button):hover, .gform_wrapper.gravity-theme.gravity-theme .gform-button:where(button, :any-link, [role=button], [type=submit], [type=button], .filter-button):hover,
  .gform_wrapper.gravity-theme.gravity-theme .gform_button:where(button, :any-link, [role=button], [type=submit], [type=button], .filter-button):hover, .cky-banner-element:where(button, :any-link, [role=button], [type=submit], [type=button], .filter-button):hover,
  .btn:where(button, :any-link, [role=button], [type=submit], [type=button], .filter-button):hover {
    background-color: var(--btn--background-color--hover);
    color: var(--btn--color--hover);
    border-color: var(--btn--border-color--hover);
    text-decoration: none;
  }
}
.quantity-input [data-quantity-increment] svg,
.quantity-input [data-quantity-decrement] svg,
quantity-input [data-quantity-increment] svg,
quantity-input [data-quantity-decrement] svg, .media .swiper-button-next svg,
.media .swiper-button-prev svg,
.filter-button svg, .datepicker .datepicker__close-btn svg, .gform_wrapper.gravity-theme.gravity-theme .gform-button svg,
.gform_wrapper.gravity-theme.gravity-theme .gform_button svg, .cky-banner-element svg,
.btn svg {
  width: var(--btn--icon-size, 1em);
  height: var(--btn--icon-size, 1em);
}
.support__donate-item[aria-expanded=true], .support__donate-item [type=radio]:checked + label,
.btn--active {
  background-color: var(--btn--background-color--active, var(--btn--background-color--hover));
  color: var(--btn--color--active, var(--btn--color--hover));
  border-color: var(--btn--border-color--active, var(--btn--border-color--hover));
  text-decoration: none;
}

.btn--loading-indicator {
  position: relative;
}
.btn--loading-indicator.is-loading .btn__content {
  opacity: 0;
}
.btn--loading-indicator .loading-indicator {
  --loading-spinner--size: 25px;
  --loading-spinner--border-width: 5px;
}

.quantity-input [data-quantity-increment]:disabled,
.quantity-input [data-quantity-decrement]:disabled,
quantity-input [data-quantity-increment]:disabled,
quantity-input [data-quantity-decrement]:disabled, .media .swiper-button-next:disabled,
.media .swiper-button-prev:disabled,
.filter-button:disabled, .datepicker .datepicker__close-btn:disabled, .gform_wrapper.gravity-theme.gravity-theme .gform-button:disabled,
.gform_wrapper.gravity-theme.gravity-theme .gform_button:disabled, .cky-banner-element:disabled,
.btn:disabled,
.btn--disabled {
  pointer-events: none;
  opacity: 0.5;
}

.btn--link {
  background-color: unset;
  padding: unset;
  font-family: inherit;
  font-weight: inherit;
  text-align: inherit;
  color: var(--link--color);
  border: 0;
  border-radius: 0;
  transition: none;
  -webkit-text-decoration: var(--link--text-decoration);
          text-decoration: var(--link--text-decoration);
  min-width: unset;
}
.btn--link:where(button, :-moz-any-link, [role=button], [type=submit], [type=button], .filter-button):active {
  color: var(--link--color--hover);
  text-decoration: var(--link--text-decoration--hover);
  background-color: unset;
}
.btn--link:where(button, :any-link, [role=button], [type=submit], [type=button], .filter-button):active {
  color: var(--link--color--hover);
  -webkit-text-decoration: var(--link--text-decoration--hover);
          text-decoration: var(--link--text-decoration--hover);
  background-color: unset;
}
@media (hover: hover) {
  .btn--link:where(button, :-moz-any-link, [role=button], [type=submit], [type=button], .filter-button):hover {
    color: var(--link--color--hover);
    text-decoration: var(--link--text-decoration--hover);
    background-color: unset;
  }
  .btn--link:where(button, :any-link, [role=button], [type=submit], [type=button], .filter-button):hover {
    color: var(--link--color--hover);
    -webkit-text-decoration: var(--link--text-decoration--hover);
            text-decoration: var(--link--text-decoration--hover);
    background-color: unset;
  }
}

.quantity-input [data-quantity-increment],
.quantity-input [data-quantity-decrement],
quantity-input [data-quantity-increment],
quantity-input [data-quantity-decrement], .datepicker .datepicker-controls .prev-btn,
.datepicker .datepicker-controls .next-btn,
.btn--square {
  padding: 0 0.3em;
  min-width: var(--btn--size, 2.75rem);
  min-height: var(--btn--size, 2.75rem);
  z-index: 1;
  border-radius: var(--border-radius--s, 0px);
}
.quantity-input [data-quantity-increment] .btn__icon,
.quantity-input [data-quantity-decrement] .btn__icon,
quantity-input [data-quantity-increment] .btn__icon,
quantity-input [data-quantity-decrement] .btn__icon, .datepicker .datepicker-controls .prev-btn .btn__icon,
.datepicker .datepicker-controls .next-btn .btn__icon,
.quantity-input [data-quantity-increment] svg,
.quantity-input [data-quantity-decrement] svg,
quantity-input [data-quantity-increment] svg,
quantity-input [data-quantity-decrement] svg,
.datepicker .datepicker-controls .prev-btn svg,
.datepicker .datepicker-controls .next-btn svg,
.btn--square .btn__icon,
.btn--square svg {
  width: var(--btn--icon-size, 1em);
  height: var(--btn--icon-size, 1em);
}

.btn--small {
  --btn--padding-block: calc(0.75em - var(--btn--border-width));
  --btn--padding-inline: calc(1em - var(--btn--border-width));
}

.btn--label {
  --btn--padding-block: 10px;
  --btn--padding-inline: 3px;
  --btn--color: var(--color--dark-grey);
  --btn--border-color: var(--color--dark-grey);
  --btn--background-color: transparent;
  padding: 3px 10px;
  border-width: 1px;
  min-width: unset;
  font-weight: var(--fw--medium);
  font-size: 0.875rem;
  line-height: 1.571;
}
@media (min-width: 48em) {
  .btn--label {
    line-height: 1.429;
  }
}

.btn--tiny {
  --btn--padding-block: calc(0.25em - var(--btn--border-width));
  --btn--padding-inline: calc(0.5em - var(--btn--border-width));
  font-size: 0.875rem;
}

.tooltip-item .tooltip-trigger:where(button, :-moz-any-link, [role=button]):active:is(button) {
  border-color: var(--btn--border-color);
}

.tooltip-item .tooltip-trigger:where(button, :any-link, [role=button]):active:is(button) {
  border-color: var(--btn--border-color);
}
@media (hover: hover) {
  .tooltip-item .tooltip-trigger:where(button, :-moz-any-link, [role=button]):hover:is(button) {
    border-color: var(--btn--border-color);
  }
  .tooltip-item .tooltip-trigger:where(button, :any-link, [role=button]):hover:is(button) {
    border-color: var(--btn--border-color);
  }
}

.quantity-input [data-quantity-increment],
.quantity-input [data-quantity-decrement],
quantity-input [data-quantity-increment],
quantity-input [data-quantity-decrement], .media .swiper-button-next,
.media .swiper-button-prev, .datepicker .datepicker-controls .prev-btn,
.datepicker .datepicker-controls .next-btn,
.btn--mask-icon {
  --icon--size: var(--btn--icon-size, 1em);
  position: relative;
  overflow: hidden;
}
.filter-button--selectable,
.filter-button--checkbox,
.btn--mask-icon--after {
  --icon--size: var(--btn--icon-size, 1em);
  position: relative;
  overflow: hidden;
}
.btn-reset {
  background-color: unset;
  display: inline;
  align-items: flex-start;
  justify-content: flex-start;
  padding: 0;
  font-family: inherit;
  gap: 0;
  font-weight: inherit;
  text-align: inherit;
  border: 0;
  border-radius: 0;
  background-color: unset;
  color: inherit;
  transition: none;
  box-shadow: unset;
}
.btn-reset:active {
  box-shadow: unset;
  background-color: unset;
  color: inherit;
  border-color: unset;
  text-decoration: none;
}
@media (hover: hover) {
  .btn-reset:hover {
    box-shadow: unset;
    background-color: unset;
    color: inherit;
    border-color: unset;
    text-decoration: none;
  }
}

.gform_wrapper.gravity-theme.gravity-theme [type=text],
.gform_wrapper.gravity-theme.gravity-theme [type=password],
.gform_wrapper.gravity-theme.gravity-theme [type=date],
.gform_wrapper.gravity-theme.gravity-theme [type=datetime],
.gform_wrapper.gravity-theme.gravity-theme [type=datetime-local],
.gform_wrapper.gravity-theme.gravity-theme [type=month],
.gform_wrapper.gravity-theme.gravity-theme [type=week],
.gform_wrapper.gravity-theme.gravity-theme [type=email],
.gform_wrapper.gravity-theme.gravity-theme [type=number],
.gform_wrapper.gravity-theme.gravity-theme [type=search],
.gform_wrapper.gravity-theme.gravity-theme [type=tel],
.gform_wrapper.gravity-theme.gravity-theme [type=time],
.gform_wrapper.gravity-theme.gravity-theme [type=url],
.gform_wrapper.gravity-theme.gravity-theme [type=color],
.gform_wrapper.gravity-theme.gravity-theme textarea, [type=text],
[type=password],
[type=date],
[type=datetime],
[type=datetime-local],
[type=month],
[type=week],
[type=email],
[type=number],
[type=search],
[type=tel],
[type=time],
[type=url],
[type=color],
textarea,
select,
.input-group {
  display: block;
  width: 100%;
  padding: var(--input--padding-block) var(--input--padding-inline);
  border: var(--input--border-width) solid var(--input--border-color);
  border-radius: var(--input--border-radius);
  background: var(--input--background-color);
  box-shadow: none;
  color: var(--input--color);
  font-family: inherit;
  line-height: inherit;
  font-size: inherit;
  min-height: var(--input--min-height);
}

.mailing-list .gform_wrapper.gravity-theme.gravity-theme [type=text],
.mailing-list .gform_wrapper.gravity-theme.gravity-theme [type=password],
.mailing-list .gform_wrapper.gravity-theme.gravity-theme [type=date],
.mailing-list .gform_wrapper.gravity-theme.gravity-theme [type=datetime],
.mailing-list .gform_wrapper.gravity-theme.gravity-theme [type=datetime-local],
.mailing-list .gform_wrapper.gravity-theme.gravity-theme [type=month],
.mailing-list .gform_wrapper.gravity-theme.gravity-theme [type=week],
.mailing-list .gform_wrapper.gravity-theme.gravity-theme [type=email],
.mailing-list .gform_wrapper.gravity-theme.gravity-theme [type=number],
.mailing-list .gform_wrapper.gravity-theme.gravity-theme [type=search],
.mailing-list .gform_wrapper.gravity-theme.gravity-theme [type=tel],
.mailing-list .gform_wrapper.gravity-theme.gravity-theme [type=time],
.mailing-list .gform_wrapper.gravity-theme.gravity-theme [type=url],
.mailing-list .gform_wrapper.gravity-theme.gravity-theme [type=color],
.mailing-list .gform_wrapper.gravity-theme.gravity-theme textarea {
  font-weight: var(--btn--font-weight);
  padding: var(--btn--padding-block) var(--space--20);
  border: var(--btn--border-width) solid var(--btn--border-color);
  border-radius: var(--btn--border-radius, 0px);
}

.input-group {
  display: flex;
  gap: var(--space--s);
  padding: 0;
}
.input-group input {
  border: 0;
  background-color: transparent;
  padding-inline-end: 0;
}
.input-group label {
  width: 100%;
}
.input-group .btn {
  font-size: 1em;
  padding: 0;
}

select {
  position: relative;
  min-width: 6em;
  max-width: 100%;
}
select:not([multiple]) {
  padding-right: 2em;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg width='12' height='8' viewBox='0 0 12 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0.382823 0.817787C-0.0565166 1.25713 -0.0565165 1.96944 0.382823 2.40878L5.15579 7.18175C5.59513 7.62109 6.30744 7.62109 6.74678 7.18175C7.18612 6.74241 7.18612 6.0301 6.74678 5.59076L1.97381 0.817787C1.53447 0.378447 0.822163 0.378447 0.382823 0.817787Z' fill='white'/%3E%3Cpath d='M11.617 0.817819C11.1777 0.378479 10.4654 0.378479 10.026 0.817819L5.25307 5.59079C4.81373 6.03013 4.81373 6.74244 5.25307 7.18178C5.69241 7.62112 6.40472 7.62112 6.84406 7.18178L11.617 2.40881C12.0564 1.96947 12.0564 1.25716 11.617 0.817819Z' fill='white'/%3E%3C/svg%3E%0A");
  background-position: right var(--input--padding-block) top 50%;
  background-repeat: no-repeat;
  background-size: 0.6875em auto;
  cursor: pointer;
}
select:not([multiple]):focus,
select:not([multiple]):active {
  background-color: transparent;
}
select option {
  color: var(--color--foreground);
  background-color: var(--color--background);
}

.form-grid {
  display: grid;
  grid-auto-flow: row;
  -moz-column-gap: var(--form--row-gap);
       column-gap: var(--form--row-gap);
  row-gap: var(--form--row-gap);
  grid-template-columns: repeat(6, 1fr);
  grid-template-areas: "left left left right right right";
}
.form-grid > * {
  grid-column: 1/-1;
}

.mailing-list .gform_wrapper.gravity-theme.gravity-theme {
  --form--row-gap: var(--space--12);
  --form--column-gap: var(--space--16);
}
@media (min-width: 36em) {
  .mailing-list .gform_wrapper.gravity-theme.gravity-theme {
    --form--row-gap: var(--space--16);
  }
}
@media (min-width: 36em) {
  .form-item--left {
    grid-column: left;
  }
}

@media (min-width: 36em) {
  .form-item--right {
    grid-column: right;
  }
}

.form-item--m {
  max-width: 340px;
}

.form-field--compound {
  display: flex;
  flex-flow: row wrap;
  gap: var(--space--s);
  align-items: flex-start;
}
.form-field--compound label {
  width: 100%;
}

::-moz-placeholder {
  color: var(--input--placeholder-color);
  opacity: 1;
}

::placeholder {
  color: var(--input--placeholder-color);
  opacity: 1;
}

fieldset {
  width: 100%;
  padding: 0;
  border: 0;
  margin-right: 0;
  margin-left: 0;
}
fieldset + fieldset {
  margin-top: var(--form--row-gap);
}

.label,
label {
  display: inline-block;
  cursor: pointer;
  margin-bottom: var(--form--label-spacing);
}

legend {
  font-weight: var(--fw--medium);
  margin-bottom: var(--form--row-gap);
}

textarea {
  resize: vertical;
}

.form-field--checkbox-radio,
.gform_wrapper.gravity-theme.gravity-theme .ginput_container_consent,
.gform_wrapper.gravity-theme.gravity-theme .gchoice,
.form-field--radio,
.form-field--checkbox {
  display: grid;
  grid-template-columns: min-content auto;
  grid-template-areas: "input label";
  -moz-column-gap: var(--input--gap);
       column-gap: var(--input--gap);
  row-gap: var(--space--xxs);
  padding-top: 3px;
  font-weight: var(--fw--medium);
}
.form-field--checkbox-radio + .form-field--checkbox,
.form-field--checkbox-radio + .form-field--radio,
.gform_wrapper.gravity-theme.gravity-theme .ginput_container_consent + .form-field--checkbox,
.gform_wrapper.gravity-theme.gravity-theme .gchoice + .form-field--checkbox,
.form-field--radio + .form-field--checkbox,
.form-field--checkbox + .form-field--checkbox,
.gform_wrapper.gravity-theme.gravity-theme .ginput_container_consent + .form-field--radio,
.gform_wrapper.gravity-theme.gravity-theme .gchoice + .form-field--radio,
.form-field--radio + .form-field--radio,
.form-field--checkbox + .form-field--radio {
  margin-top: 20px;
}
.form-field--checkbox-radio > *,
.gform_wrapper.gravity-theme.gravity-theme .ginput_container_consent > *,
.gform_wrapper.gravity-theme.gravity-theme .gchoice > *,
.form-field--radio > *,
.form-field--checkbox > * {
  grid-column: label;
  justify-self: flex-start;
}
.form-field--checkbox-radio [type=checkbox],
.form-field--checkbox-radio [type=radio],
.gform_wrapper.gravity-theme.gravity-theme .ginput_container_consent [type=checkbox],
.gform_wrapper.gravity-theme.gravity-theme .gchoice [type=checkbox],
.form-field--radio [type=checkbox],
.form-field--checkbox [type=checkbox],
.gform_wrapper.gravity-theme.gravity-theme .ginput_container_consent [type=radio],
.gform_wrapper.gravity-theme.gravity-theme .gchoice [type=radio],
.form-field--radio [type=radio],
.form-field--checkbox [type=radio] {
  grid-area: input;
}
.form-field--checkbox-radio label,
.gform_wrapper.gravity-theme.gravity-theme .ginput_container_consent label,
.gform_wrapper.gravity-theme.gravity-theme .gchoice label,
.form-field--radio label,
.form-field--checkbox label {
  font-weight: var(--fw--medium);
  margin-bottom: 0;
}

[type=checkbox],
[type=radio] {
  --color--accent: var(--color--background);
  position: relative;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background-color: var(--checkbox--input--background-color);
  margin: 0;
  cursor: pointer;
  font: inherit;
  color: currentColor;
  width: var(--checkbox--size);
  height: var(--checkbox--size);
  border: var(--input--border-width) solid var(--input--border-color);
  transform: translateY(-3px);
}
[type=checkbox]::before,
[type=radio]::before {
  position: absolute;
  top: 50%;
  left: 50%;
  content: "";
  width: var(--checkbox--check-size);
  height: var(--checkbox--check-size);
  opacity: 0;
  background-color: var(--color--accent);
}
[type=checkbox]:disabled,
[type=radio]:disabled {
  --color--accent: var(--color--grey);
  color: var(--color--disabled);
  cursor: not-allowed;
}
[type=checkbox]:disabled ~ label,
[type=radio]:disabled ~ label {
  color: var(--color--disabled);
  cursor: not-allowed;
}
[type=checkbox] ~ label,
[type=radio] ~ label {
  font-weight: var(--fw--medium);
  margin-bottom: 0;
}
[type=checkbox]:disabled,
[type=radio]:disabled {
  color: var(--color--black-50);
}

[type=checkbox] {
  border-radius: var(--input--border-radius);
}
[type=checkbox]::before, [type=checkbox]::after {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
[type=checkbox]::before {
  background-color: unset;
  transition: all var(--transition--base);
  transition-property: background-color;
}
[type=checkbox]::after {
  content: "";
  width: var(--checkbox--checkmark-size);
  height: var(--checkbox--checkmark-size);
  -webkit-mask-image: url("../images/tick.svg");
          mask-image: url("../images/tick.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-size: contain;
          mask-size: contain;
  -webkit-mask-position: center;
          mask-position: center;
  background-color: var(--color--accent);
  opacity: 0;
  transition: all var(--transition--base);
  transition-property: background-color;
}
[type=checkbox]:checked::before, [type=checkbox]:checked::after {
  opacity: 1;
}

[type=radio] {
  border-radius: 50%;
}
[type=radio]::before {
  border-radius: 50%;
  opacity: 0;
  transform: translate(-50%, -50%) scale(var(--check-scale, 0));
}
[type=radio]:checked::before {
  --check-scale: 1;
  opacity: 1;
  transition: all var(--transition--base);
  transition-property: transform, opacity;
}

.width--m {
  max-width: var(--width--m);
}

.width--m--padded {
  max-width: var(--width--m--padded);
}

.width--l {
  max-width: var(--width--l);
}

.width--l--padded {
  max-width: var(--width--l--padded);
}

.width--xl {
  max-width: var(--width--xl);
}

.width--xl--padded {
  max-width: var(--width--xl--padded);
}

.width--max {
  max-width: var(--width--max);
}

.width--max--padded {
  max-width: var(--width--max--padded);
}

.width--fluid-min {
  max-width: var(--width--fluid-min);
}

.width--fluid-min--padded {
  max-width: var(--width--fluid-min--padded);
}

.width--fluid-max {
  max-width: var(--width--fluid-max);
}

.width--fluid-max--padded {
  max-width: var(--width--fluid-max--padded);
}

.width--full {
  max-width: 100%;
}

.width--full--padded {
  max-width: var(--width--full--padded);
}

.accordion-item {
  position: relative;
  border-top: var(--border--1);
  overflow: hidden;
}
.accordion-item__header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: var(--space--m);
  text-align: left;
  width: 100%;
  padding-inline: var(--space--ml);
  padding-block: var(--space--ml);
  font-family: var(--font-family-medium);
  transition: background-color var(--transition--base);
}
@media (min-width: 48em) {
  .accordion-item__header {
    padding-inline: var(--space--l);
    padding-block: var(--space--l);
  }
}
.accordion-item__header:hover, .accordion-item__header:focus-visible {
  background-color: #1f1e1c;
}
.accordion-item__header[aria-expanded=true] {
  background-color: #1f1e1c;
}
.accordion-item__header[aria-expanded=true] .accordion-item__icon {
  --rotate: -90deg;
}
.accordion-item__header .accordion-item__icon {
  --btn--size: 36px;
  --icon--size: 36px;
  --rotate: 90deg;
  padding: 0;
  width: var(--btn--size);
  border: unset;
  height: calc(var(--icon--size) / 1.5);
  flex-shrink: 0;
  min-height: unset;
  border-radius: 0;
}
.accordion-item__header .accordion-item__icon::before {
  position: absolute;
  inset: 50% 0 0 50%;
  transform: translate(-50%, -50%) rotate(var(--rotate));
  width: var(--btn--size);
  height: var(--btn--size);
  background-color: currentColor;
  -webkit-mask-image: url("../images/arrow.svg");
          mask-image: url("../images/arrow.svg");
  -webkit-mask-size: var(--icon--size);
          mask-size: var(--icon--size);
}
.accordion-item .accordion-item__icon {
  --btn--border-color: transparent;
  --btn--background-color: transparent;
  --btn--border-color--hover: transparent;
  --btn--background-color--hover: transparent;
}
.accordion-item__heading {
  margin: 0;
}
.accordion-item__content-panel {
  width: 100%;
  overflow: hidden;
  transition: var(--transition--base);
  transition-property: background-color;
}
.accordion-item__content {
  max-width: var(--width--s);
  padding-inline: var(--space--ml);
  padding-block: var(--space--m);
}
@media (min-width: 48em) {
  .accordion-item__content {
    padding-inline: var(--space--l);
    padding-block: var(--space--l);
  }
}
.accordion-item .text-content {
  font-size: var(--fs--base);
}

.announcement-banner {
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 1000;
  transform: translateY(100%);
  transition: transform var(--transition--base);
}
.announcement-banner[aria-hidden=true] {
  transform: translateY(100%);
}
.announcement-banner--visible {
  transform: translateY(0);
}
.announcement-banner__content {
  display: flex;
  align-items: flex-start;
  gap: var(--space--20);
  padding-block: var(--space--16) var(--space--12);
  margin: 0 auto;
}
@media (min-width: 48em) {
  .announcement-banner__content {
    align-items: center;
  }
}
.announcement-banner__message {
  flex: 1;
}
@media (min-width: 48em) {
  .announcement-banner__message {
    font-size: var(--fs--base);
  }
}
.announcement-banner__message p {
  margin: 0;
}
.announcement-banner__message p:last-child {
  margin-bottom: 0;
}
.announcement-banner__message a {
  color: inherit;
  text-decoration: underline;
}
.announcement-banner__message a:hover {
  text-decoration: none;
}
.announcement-banner__actions {
  display: flex;
  align-items: center;
  gap: var(--space--12);
  flex-shrink: 0;
  width: -moz-fit-content;
  width: fit-content;
}
.announcement-banner__close {
  display: flex;
  align-items: center;
  gap: var(--space--8);
  cursor: pointer;
  transition: all 200ms ease;
}
@media (hover: hover) {
  .announcement-banner__close:hover {
    scale: 1.05;
  }
}
.announcement-banner__close:focus-visible {
  scale: 1.05;
}
.announcement-banner .btn__icon {
  --icon--size: 24px;
}

.access-badge {
  display: flex;
  flex-flow: column nowrap;
  gap: var(--space--8);
}
.access-badge__icon {
  --icon--size: 36px;
}

.article {
  --article--content--margin-bottom: var(--space--layout);
}
@media (min-width: 48em) {
  .article {
    --article--content--margin-top: var(--space--l);
  }
}
.article__inner {
  position: relative;
}
.article__content {
  margin-top: var(--article--content--margin-top);
  margin-bottom: var(--article--content--margin-bottom);
  -moz-column-gap: var(--space--xl);
       column-gap: var(--space--xl);
}
.article__content > * + * {
  --space--stack: var(--section--margin-block);
}
.article .page-header--contained + .article__inner {
  --article--content--margin-top: var(--space--l);
}
@media (min-width: 48em) {
  .article .page-header--contained + .article__inner {
    --article--content--margin-top: var(--space--xl);
  }
}
.article .article__content {
  container-name: content;
  container-type: inline-size;
}
.article :where(.article__content > *) {
  margin-inline: auto;
  max-width: var(--width--l--padded);
}
.article :where(.article__content > .container--max) {
  max-width: var(--width--max--padded);
}
.article--event {
  --article--content--margin-top: var(--space--l);
}
@media (min-width: 48em) {
  .article--event {
    --article--content--margin-top: var(--space--xxl);
  }
}
.page-template-whats-on .article {
  --article--content--margin-top: var(--space--l);
}
@media (min-width: 48em) {
  .page-template-whats-on .article {
    --article--content--margin-top: var(--space--xl);
  }
}
.article--spektrix-iframe {
  --article--content--margin-top: 0;
}
.article--spektrix-iframe .main-content {
  width: 100%;
  max-width: var(--width--max--padded);
  margin-inline: auto;
  padding: var(----space--24, 24px) var(----space-20, 20px);
  background: #000;
  border-radius: 20px;
  margin-top: var(--space--32);
}
@media (min-width: 48em) {
  .article--spektrix-iframe .main-content {
    padding: var(----space--32, 32px) var(----space-20, 20px);
    margin-top: var(--space--48);
  }
}
.article--spektrix-iframe .main-content + * {
  margin-top: 0;
}
.article--spektrix-iframe .main-content__intro {
  margin-bottom: 4px;
}
.article--spektrix-iframe .main-content__text {
  margin-bottom: 0;
}
.article--spektrix-page--merchandise .page-header {
  margin-top: 24px;
  position: relative;
  width: 100%;
  height: auto;
}
.article--spektrix-page--merchandise .page-header__content {
  padding: 0 !important;
  background: transparent !important;
}
.article--spektrix-page--merchandise .page-header__image {
  display: none;
}
.article--spektrix-page--merchandise .page-header__heading {
  padding-bottom: 24px;
  border-bottom: 1px solid;
}

.cky-banner-element {
  display: inline-flex;
  cursor: pointer;
}

.progress-nav {
  margin-top: calc(32 / 16 * 1rem + (48 - 32) * var(--fluid--bp) - var(--site-header--bar--padding-bottom));
}
.progress-nav__inner {
  padding-inline: var(--space--16);
  padding-block: var(--space--20);
}
@media (min-width: 48em) {
  .progress-nav__inner {
    padding-inline: var(--space--24);
  }
}
@media (min-width: 62em) {
  .progress-nav__inner {
    padding-inline: var(--space--48);
  }
}
.progress-nav__items {
  counter-reset: nav-items;
}

.progress-nav-item {
  counter-increment: nav-items;
}
.progress-nav-item__wrap {
  display: flex;
  flex-flow: row nowrap;
  gap: var(--space--xs);
  align-items: center;
}
.progress-nav-item__icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 1.5em;
  height: 1.5em;
  font-weight: var(--fw--bold);
  border-radius: 50%;
  text-align: center;
  transition: background-color var(--transition--base);
  background-color: HSLA(var(--color--white--h) var(--color--white--s) var(--color--white--l)/0.2);
  color: var(--color--dark-grey);
}
.progress-nav-item__icon::before {
  content: counter(nav-items);
}
.progress-nav-item.is-active .progress-nav-item__icon {
  background-color: var(--color--dark-grey);
  color: var(--color--grey);
}
.progress-nav-item:has(~ .is-active) .progress-nav-item__icon::before {
  --icon--url: url("../images/tick.svg");
  --icon--size: 14px;
  display: block;
  content: "";
}
.progress-nav-item__text {
  line-height: 1.2;
}
.progress-nav-item__link {
  text-decoration: none;
}
.progress-nav-item__link:hover {
  text-decoration: none;
}
.progress-nav-item__link:hover .progress-nav-item__text {
  text-decoration: underline;
}
.progress-nav-item__link:hover::before {
  --color--background: var(--color--grey);
  background-color: var(--color--background);
  --color--foreground: var(--color--dark-grey);
  --focus--color: var(--color--foreground);
  color: var(--color--foreground);
  --link--color: var(--color--dark-grey);
  --link--color--hover: var(--color--dark-grey);
  --color--focus: var(--color--dark-grey);
}

:where([aria-expanded]):where([aria-expanded=true])[data-show-expanded],
:where([aria-expanded]):where([aria-expanded=true]) [data-show-expanded] {
  display: block;
}
:where([aria-expanded]):where([aria-expanded=true])[data-hide-expanded],
:where([aria-expanded]):where([aria-expanded=true]) [data-hide-expanded] {
  display: none;
}
:where([aria-expanded]):where([aria-expanded=false])[data-show-expanded],
:where([aria-expanded]):where([aria-expanded=false]) [data-show-expanded] {
  display: none;
}
:where([aria-expanded]):where([aria-expanded=false])[data-hide-expanded],
:where([aria-expanded]):where([aria-expanded=false]) [data-hide-expanded] {
  display: block;
}

.gform_wrapper.gravity-theme.gravity-theme .gform_ajax_spinner, .loading-indicator__spinner {
  width: var(--loading-spinner--size, 40px);
  height: var(--loading-spinner--size, 40px);
  border-width: var(--loading-spinner--border-width, 6px);
  border-style: solid;
  border-color: var(--color--dark-grey) var(--color--grey) var(--color--grey);
  border-radius: 50%;
  animation: 1.6s linear infinite rotate;
}

.loading-indicator {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  z-index: 10;
  display: flex;
  min-height: 200px;
  align-items: center;
  justify-content: center;
  transition: var(--transition--base) all;
  max-width: unset;
  transition-property: opacity, visibility;
}
.loading-indicator.align-top {
  padding-top: 100px;
  align-items: flex-start;
}
.loading-indicator.align-bottom {
  padding-bottom: 150px;
  align-items: flex-end;
}
.loading-indicator[aria-hidden=true] {
  opacity: 0;
  visibility: hidden;
}
.loading-indicator--absolute {
  position: absolute;
  min-height: unset;
  background-color: unset;
}

.gform_wrapper.gravity-theme.gravity-theme {
  --color--background: var(--color--dark-grey);
  background-color: var(--color--background);
  --color--foreground: var(--color--white);
  --focus--color: var(--color--foreground);
  color: var(--color--foreground);
  --link--color: var(--color--white);
  --link--color--hover: var(--color--white);
  background-color: rgba(0, 0, 0, 0.4);
  border-radius: var(--border-radius--l);
  padding: var(--space--24);
}
@media (min-width: 48em) {
  .gform_wrapper.gravity-theme.gravity-theme {
    padding-top: var(--space--40);
  }
}
.gform_wrapper.gravity-theme.gravity-theme .gform_heading .gform_title {
  margin-top: 0;
}
.gform_wrapper.gravity-theme.gravity-theme .gform_fields {
  row-gap: var(--form--row-gap);
  -moz-column-gap: var(--form--column-gap);
       column-gap: var(--form--column-gap);
}
.gform_wrapper.gravity-theme.gravity-theme .gfield_required {
  color: inherit;
}
.gform_wrapper.gravity-theme.gravity-theme .gfield_required .gfield_required_text {
  font-size: inherit;
  font-weight: var(--fw--medium);
  color: inherit;
  text-transform: lowercase;
  font-style: normal;
}
.gform_wrapper.gravity-theme.gravity-theme .ginput_container_consent + .gchoice,
.gform_wrapper.gravity-theme.gravity-theme .gchoice + .gchoice {
  margin-top: 20px;
}
.gform_wrapper.gravity-theme.gravity-theme .ginput_container_consent,
.gform_wrapper.gravity-theme.gravity-theme .ginput_container_checkbox,
.gform_wrapper.gravity-theme.gravity-theme .ginput_container_radio {
  padding-top: var(--space--xs);
  padding-bottom: var(--space--s);
}
.gform_wrapper.gravity-theme.gravity-theme .gfield .medium {
  width: 100%;
}
@media (min-width: 40.0625em) {
  .gform_wrapper.gravity-theme.gravity-theme .gfield .medium:not(textarea) {
    width: calc(50% - var(--form--column-gap) / 2);
  }
}
@media (min-width: 40.0625em) {
  .gform_wrapper.gravity-theme.gravity-theme .gfield .small {
    width: calc(100% - var(--form--column-gap) / 2);
  }
}
@media (min-width: 641px) {
  .gform_wrapper.gravity-theme.gravity-theme .ginput_complex:not(.ginput_container_address) fieldset:not([style*="display:none"]):not(.ginput_full),
  .gform_wrapper.gravity-theme.gravity-theme .ginput_complex:not(.ginput_container_address) span:not([style*="display:none"]):not(.ginput_full) {
    padding-right: calc(var(--form--column-gap) / 2);
  }
  .gform_wrapper.gravity-theme.gravity-theme .ginput_complex:not(.ginput_container_address) fieldset:not([style*="display:none"]):not(.ginput_full) ~ span:not(.ginput_full),
  .gform_wrapper.gravity-theme.gravity-theme .ginput_complex:not(.ginput_container_address) span:not([style*="display:none"]):not(.ginput_full) ~ span:not(.ginput_full) {
    padding-right: 0;
    padding-left: calc(var(--form--column-gap) / 2);
  }
}
.gform_wrapper.gravity-theme.gravity-theme .gfield-choice-input + label {
  vertical-align: unset;
}
.gform_wrapper.gravity-theme.gravity-theme .gfield_checkbox label {
  font-size: inherit;
}
.gform_wrapper.gravity-theme.gravity-theme .gform-field-label--type-sub {
  font-weight: normal;
  margin-bottom: 4px;
}
.gform_wrapper.gravity-theme.gravity-theme [type=submit] {
  min-width: 160px;
}
.gform_wrapper.gravity-theme.gravity-theme .gform-footer {
  margin-top: var(--space--xxl);
  padding-top: 0;
}
.gform_wrapper.gravity-theme.gravity-theme .gfield_error label {
  color: inherit;
}
.gform_wrapper.gravity-theme.gravity-theme .gfield_error [aria-invalid=true] {
  border: var(--input--border-width) solid var(--input--border-color);
}
.gform_wrapper.gravity-theme.gravity-theme .gfield_error .gfield_repeater_cell label,
.gform_wrapper.gravity-theme.gravity-theme .gfield_error label,
.gform_wrapper.gravity-theme.gravity-theme .gfield_error legend,
.gform_wrapper.gravity-theme.gravity-theme .gfield_validation_message,
.gform_wrapper.gravity-theme.gravity-theme .validation_message,
.gform_wrapper.gravity-theme.gravity-theme [aria-invalid=true] + label,
.gform_wrapper.gravity-theme.gravity-theme label + [aria-invalid=true] {
  color: inherit;
}
.gform_wrapper.gravity-theme.gravity-theme .gform_submission_error .gform-icon {
  display: none;
}
.gform_wrapper.gravity-theme.gravity-theme .validation_message {
  padding: 0;
  background-color: unset;
  border: unset;
  color: var(--color--error);
}
.gform_wrapper.gravity-theme.gravity-theme .gform_validation_errors {
  border: 1px solid var(--color--error);
  background-color: HSLA(var(--color--error--h) var(--color--error--s) var(--color--error--l)/0.05);
  padding: var(--space--16);
  border-radius: 0;
  margin-block: var(--space--24);
}
.gform_wrapper.gravity-theme.gravity-theme .gform_validation_errors:first-child, .gform_anchor + .gform_wrapper.gravity-theme.gravity-theme .gform_validation_errors {
  margin-block-start: 0;
}
.gform_wrapper.gravity-theme.gravity-theme .gform_validation_errors > * {
  color: inherit;
}
.gform_wrapper.gravity-theme.gravity-theme .gform_validation_errors > ol * {
  color: inherit;
}
.gform_wrapper.gravity-theme.gravity-theme .gform_validation_errors > ol a:focus, .gform_wrapper.gravity-theme.gravity-theme .gform_validation_errors:focus {
  outline: 3px dotted var(--color--focus);
  outline-offset: 5px;
}
.gform_wrapper.gravity-theme.gravity-theme .gform_ajax_spinner {
  box-sizing: border-box;
  margin-top: 8px;
  margin-left: 12px;
  z-index: 1;
  width: 32px;
  height: 32px;
}
.event-instances__heading {
  margin-bottom: var(--space--prose);
}
.event-instances__items {
  display: grid;
  gap: var(--space--12);
}

.event-instance {
  display: flex;
  flex-flow: row nowrap;
  align-items: flex-start;
  grid-template-columns: repeat(8, 1fr);
  gap: var(--space--8);
  padding: var(--space--16) var(--space--20);
  font-size: var(--fs--base);
}
@media (min-width: 48em) {
  .event-instance {
    align-items: center;
    display: grid;
  }
}
.event-instance__content {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  gap: 0;
  grid-column: span 4;
}
@media (min-width: 48em) {
  .event-instance__content {
    display: grid;
    grid-template-columns: 1.5fr repeat(2, 1fr);
    grid-column: span 6;
    row-gap: var(--grid--row-gap);
    align-items: center;
  }
  .event-instance__content :first-child {
    justify-self: start;
  }
}
.event-instance__booking {
  flex: 1 0 auto;
}
@media (min-width: 48em) {
  .event-instance__booking {
    grid-column: span 2;
    justify-self: end;
  }
}
.event-instance__start-time {
  font-weight: var(--fw--semibold);
}
.event-instance__accessibility {
  --grid--row-gap: var(--space--8);
  --grid--column-gap: var(--space--8);
}

.page-header {
  --page-header--content--padding-top: calc(16 / 16 * 1rem + (20 - 16) * var(--fluid--bp));
  --page-header--content--padding-bottom: calc(16 / 16 * 1rem + (20 - 16) * var(--fluid--bp));
  --page-header--content--padding-inline: calc(20 / 16 * 1rem + (24 - 20) * var(--fluid--bp));
  --page-header--image-aspect-ratio: 3 / 4;
  position: relative;
  display: grid;
  grid-template-rows: minmax(0, 1fr);
  margin-bottom: var(--space--layout);
  margin-top: calc(24 / 16 * 1rem + (40 - 24) * var(--fluid--bp) - var(--site-header--bar--padding-bottom));
}
@media (min-width: 62em) {
  .page-header {
    --page-header--image-aspect-ratio: 16 / 8;
  }
}
.page-header .page-header__content {
  width: 100%;
  margin-inline: auto;
  background-color: var(--color--background);
  padding-top: var(--page-header--content--padding-top);
  padding-bottom: var(--page-header--content--padding-bottom);
  padding-inline: var(--page-header--content--padding-inline);
  max-width: var(--width--max--padded);
  overflow: unset;
}
.page-header.has-image {
  margin-top: 0;
}
.page-header.has-image .page-header__content {
  margin-top: calc(24 / 16 * 1rem + (40 - 24) * var(--fluid--bp));
}
.page-header.has-image::before {
  pointer-events: none;
  content: "";
  position: absolute;
  top: 0;
  width: 100%;
  z-index: 2;
  background-image: linear-gradient(180deg, hsla(var(--color--black--h), var(--color--black--s), var(--color--black--l), 0.75), hsla(var(--color--black--h), var(--color--black--s), var(--color--black--l), 0));
  mix-blend-mode: multiply;
  height: 240px;
}
@media (min-width: 62em) {
  .page-header.has-image::before {
    height: 286px;
  }
}
.page-header:has(.page-header__sidebar) .page-header__content-inner {
  display: grid;
  row-gap: var(--space--12);
}
@media (min-width: 48em) {
  .page-header:has(.page-header__sidebar) .page-header__content-inner {
    -moz-column-gap: var(--grid--column-gap);
         column-gap: var(--grid--column-gap);
    grid-template-columns: minmax(55%, 1fr) auto;
  }
}
@media (min-width: 62em) {
  .page-header:has(.page-header__sidebar) .page-header__content-inner {
    --grid--column-gap: var(--space--48);
  }
}
.page-header__sidebar:empty {
  display: none;
}
.page-header__image {
  position: relative;
  width: 100%;
  overflow: visible;
  aspect-ratio: var(--page-header--image-aspect-ratio);
  max-height: 600px;
  background-color: var(--color--black-50);
  background: linear-gradient(350deg, var(--color--black-50), HSLA(var(--color--black-50--h) var(--color--black-50--s) var(--color--black-50--l)/0.87));
}
@media (min-width: 62em) {
  .page-header__image {
    height: 100%;
    min-height: 500px;
    max-height: calc(100svh - var(--page-header--visible-space-below, 138px));
  }
}
.page-header__image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  position: relative;
}
.page-header__back-link {
  display: block;
  margin-bottom: var(--space--xs);
}
@media (min-width: 48em) {
  .page-header__back-link {
    margin-bottom: var(--space--xxs);
  }
}
.page-header__subheading {
  margin-top: calc(8 / 16 * 1rem + (12 - 8) * var(--fluid--bp));
}
.page-header__byline {
  margin-top: var(--space--4);
}
@media (min-width: 48em) {
  .page-header__byline {
    margin-top: var(--space--8);
  }
}
.page-header__summary {
  margin-top: calc(16 / 16 * 1rem + (24 - 16) * var(--fluid--bp));
}
.page-header__search {
  align-self: center;
}
.page-header__pre-heading {
  --link--text-decoration: none;
  --link--text-decoration--hover: underline;
  margin-bottom: var(--space--8);
}
.page-header__actions {
  display: flex;
  flex-flow: column nowrap;
}
.page-header__actions__message {
  align-self: center;
}
.page-header__actions .btn {
  width: 100%;
}
@media (min-width: 48em) {
  .page-header__actions .btn {
    min-width: 250px;
    width: auto;
  }
}
.page-header__links {
  display: flex;
  flex-flow: row wrap;
  align-items: center;
  -moz-column-gap: var(--space--24);
       column-gap: var(--space--24);
  row-gap: var(--space--4);
}
@media (max-width: 47.99em) {
  .page-header__links {
    justify-content: space-between;
    max-width: 420px;
    margin-inline: auto;
    margin-bottom: var(--space--24);
  }
}
@media (min-width: 48em) {
  .page-header__links {
    justify-content: end;
  }
}
.page-header__link {
  --link--text-decoration: none;
  display: flex;
  flex-flow: row nowrap;
  align-items: center;
  gap: var(--space--12);
}
@media (max-width: 47.99em) {
  .page-header__link {
    font-size: 1rem;
  }
}
@media (min-width: 48em) {
  .page-header__link {
    gap: var(--space--16);
  }
}
.page-header__link::before {
  --icon--url: url("../images/arrow-long.svg");
  --icon--size: 27px;
}
.page-header__tag {
  justify-self: flex-start;
  margin-bottom: var(--space--16);
}
@media (min-width: 48em) {
  .page-header__tag {
    margin-bottom: var(--space--12);
  }
}
.page-header__times {
  margin-top: var(--space--20);
}
.page-header--front-page {
  --page-header--visible-space-below: 125px;
  margin-bottom: 0;
}
.page-header--front-page .page-header__strapline {
  margin-top: calc(24 / 16 * 1rem + (32 - 24) * var(--fluid--bp));
}
.page-header--front-page .page-header__strapline-text {
  max-width: 14em;
}
.page-header--listing .page-header__content-inner {
  align-items: center;
}
@media (max-width: 47.99em) {
  .page-header--listing .page-header__sidebar {
    display: none;
  }
}
@media (max-width: 47.99em) {
  .page-header--listing .page-header__heading {
    text-align: center;
  }
}
.page-header--event {
  --page-header--visible-space-below: 161px;
}
.page-header--article .page-header__subheading {
  margin-top: var(--space--8);
}
.page-header--news .news-filters {
  margin-top: var(--space--16);
}
@media (min-width: 48em) {
  .page-header--news .news-filters {
    margin-top: var(--space--20);
  }
}
.page-header--404 .page-header__content {
  --space--stack: var(--space--16);
}
@media (min-width: 48em) {
  .page-header--404 .page-header__content {
    --space--stack: var(--space--20);
  }
}
.page-header--search {
  --page-header--content--padding-bottom: var(--space--20);
}
@media (min-width: 48em) {
  .page-header--search {
    --page-header--content--padding-bottom: var(--space--24);
  }
}
.page-header--search .page-header__content {
  --space--stack: var(--space--16);
}

.page-header--project .page-header__heading,
.page-header--festival .page-header__heading,
.page-header--event .page-header__heading {
  transition: font-size 300ms ease;
}
.page-header--project .page-header__subheading,
.page-header--festival .page-header__subheading,
.page-header--event .page-header__subheading {
  transition: font-size 300ms ease;
}
.page-header--project .page-header__content-inner,
.page-header--festival .page-header__content-inner,
.page-header--event .page-header__content-inner {
  transition: all 300ms ease;
  transition-property: padding;
}
.page-header--project .page-header__actions,
.page-header--festival .page-header__actions,
.page-header--event .page-header__actions {
  height: 100%;
  display: flex;
  flex-flow: column nowrap;
}
@media (min-width: 48em) {
  .page-header--project .page-header__actions,
  .page-header--festival .page-header__actions,
  .page-header--event .page-header__actions {
    align-items: center;
  }
}
.page-header--project .page-header__actions cog-booking,
.page-header--festival .page-header__actions cog-booking,
.page-header--event .page-header__actions cog-booking {
  display: grid;
  gap: var(--space--s);
}
@media (min-width: 48em) {
  .page-header--project .page-header__actions cog-booking,
  .page-header--festival .page-header__actions cog-booking,
  .page-header--event .page-header__actions cog-booking {
    justify-items: end;
  }
}
.page-header--project .page-header__additional-credits,
.page-header--festival .page-header__additional-credits,
.page-header--event .page-header__additional-credits {
  margin-top: var(--space--4);
}
.page-header--project .page-header__extra,
.page-header--festival .page-header__extra,
.page-header--event .page-header__extra {
  justify-content: center;
  margin-top: var(--space--20);
}
@media (min-width: 48em) {
  .page-header--project .page-header__extra,
  .page-header--festival .page-header__extra,
  .page-header--event .page-header__extra {
    justify-content: flex-start;
  }
}
.page-header--project .page-header__event-date:not(:first-child),
.page-header--festival .page-header__event-date:not(:first-child),
.page-header--event .page-header__event-date:not(:first-child) {
  margin-top: var(--space--4);
}
.page-header--project .page-header__content-inner-wrap,
.page-header--festival .page-header__content-inner-wrap,
.page-header--event .page-header__content-inner-wrap {
  width: 100%;
}
.page-header--project p.price,
.page-header--festival p.price,
.page-header--event p.price {
  font-weight: 700;
  text-align: center;
  margin-top: 12px;
}

.card {
  --card--background-color--hover: var(--color--grape);
  --card--foreground--hover: var(--color--grey);
  position: relative;
  height: 100%;
  container: card/inline-size;
  background-color: transparent;
}
.card:has(.card__fill-link:hover) {
  --color--background: var(--card--background-color--hover);
  --color--foreground: var(--card--foreground--hover);
}
.card__inner {
  display: flex;
  flex-flow: column nowrap;
  height: 100%;
}
.card__content {
  --space--stack: var(--space--8);
  display: flex;
  flex-direction: column;
  flex: 1;
  padding: var(--space--16) var(--space--20) var(--space--20);
  background-color: var(--color--background);
  transition: background-color var(--transition--base);
}
.card__image + .card__content {
  margin-top: -1px;
}
@media (min-width: 48em) {
  .card__content {
    padding: var(--space--20) var(--space--20) var(--space--24);
  }
}
.card__heading {
  --link--text-decoration: none;
  --link--text-decoration--hover: none;
  --link--color: currentColor;
  --link--color--hover: currentColor;
  transition: color var(--transition--base);
}
.card__summary {
  text-wrap: pretty;
}
@media (min-width: 48em) {
  .card__header + .card__summary {
    --space--stack: var(--space--12);
  }
}
.card__summary:has(.excerpt_part:only-child:empty) {
  display: none;
}
.card__image {
  width: 100%;
  aspect-ratio: var(--card--image-aspect-ratio, 4/3);
  overflow: hidden;
  position: relative;
}
.card__image-inner {
  width: 100%;
  height: 100%;
}
.card__actions {
  --grid--column-gap: var(--space--12);
  display: flex;
  flex-wrap: wrap;
  row-gap: var(--space--xs);
  -moz-column-gap: var(--grid--column-gap);
       column-gap: var(--grid--column-gap);
  align-items: flex-start;
  padding-top: var(--space--24);
  margin-top: auto;
}
.card__actions > * {
  flex: 0 1 50%;
}
.card__actions > *:not(:only-child) {
  flex: 1 1 calc(50% - var(--grid--column-gap));
}
@media (max-width: 47.99em) {
  .card__actions {
    --grid--column-gap: var(--space--8);
  }
}
.card__actions .btn {
  --btn--padding-inline: var(--space--8);
  white-space: nowrap;
  min-width: unset;
}
@media (max-width: 47.99em) {
  .card__actions .btn {
    font-size: 16px;
    padding-inline: var(--space--20);
  }
}
.card__btn {
  --btn--color--hover: currentColor;
  --btn--border-color--hover: currentColor;
}
.card__fill-link::before {
  content: "";
  inset: 0;
  position: absolute;
  z-index: 1;
}
.card__clickable {
  position: relative;
  z-index: 5;
}
.card:where(.card--promo_block) {
  --card--background-color--hover: var(--color--mustard);
  --card--foreground--hover: var(--color--dark-grey);
}
.card:where(.card--event), .card:where(.card--project) {
  --card--background-color--hover: var(--color--grey);
  --card--foreground--hover: var(--color--dark-grey);
}
@media (min-width: 62em) {
  .card:where(.card--festival) .card__content, .card:where(.card--event) .card__content {
    min-height: 270px;
  }
}
.card:where(.card--festival) .card__summary, .card:where(.card--event) .card__summary {
  margin-top: var(--space--8);
}
.card:where(.card--festival) .card__venue, .card:where(.card--event) .card__venue {
  padding-right: var(--space--8);
  border-right: 1px solid currentColor;
  margin-right: var(--space--8);
}
.card:where(.card--festival) .card__meta, .card:where(.card--event) .card__meta {
  display: flex;
  flex-flow: row nowrap;
  gap: 0;
  margin-top: var(--space--8);
}
@media (min-width: 48em) {
  .card:where(.card--festival) .card__meta, .card:where(.card--event) .card__meta {
    margin-top: var(--space--12);
  }
}
.card:where(.card--festival) .taxonomy-list, .card:where(.card--event) .taxonomy-list {
  margin-top: var(--space--s);
}
.card .taxonomy-list .btn {
  --btn--color: currentColor;
  --btn--border-color: currentColor;
}
.card__instance {
  display: grid;
  align-items: center;
  grid-template-columns: minmax(min-content, 1fr) auto minmax(min-content, 1fr);
  justify-items: center;
  row-gap: var(--space--m);
  -moz-column-gap: var(--space--s);
       column-gap: var(--space--s);
  padding-block: var(--space--s);
  border-bottom: 1px solid HSLA(var(--color--grey--h) var(--color--grey--s) var(--color--grey--l)/0.5);
}
.card__instance .taxonomy-list {
  margin: 0;
}
.card__instance .taxonomy-list__items {
  justify-content: center;
}
.card__instance .taxonomy-list__item {
  white-space: nowrap;
}
.card__instance .btn--tiny {
  white-space: nowrap;
}
.card__instance__show-more {
  font-weight: bold;
  width: 100%;
  text-align: center;
  margin-top: var(--space--s);
}
.card__instance__date {
  justify-self: start;
}
.card__instance__times {
  justify-self: end;
}
.card__instance__not-available-online {
  grid-column: 1/-1;
  width: 100%;
}
.card .label--small {
  align-self: start;
}

.cards {
  --animate--duration: 250ms;
  --grid--row-gap: var(--space--20);
}
@media (min-width: 48em) {
  .cards {
    --grid--row-gap: var(--space--24);
  }
}
@media (min-width: 36em) {
  .cards__cards {
    grid-template-columns: repeat(auto-fill, minmax(min(var(--grid--item--min-width, 21.875rem), 100%), 1fr));
  }
}
@media (max-width: 64em) {
  .cards__cards:not(:has(.card--page)) {
    grid-template-columns: 1fr;
  }
}
.cards__inner {
  position: relative;
}
.cards__action {
  margin-top: var(--space--16);
}
@media (min-width: 48em) {
  .cards__action {
    margin-top: var(--space--24);
  }
}
.cards.cards--front-page {
  margin-top: calc(-1 * var(--article--content--margin-top, 0px) + var(--space--16));
}
@media (min-width: 48em) {
  .cards.cards--front-page {
    margin-top: calc(-1 * var(--article--content--margin-top, 0px) + var(--space--12));
  }
}
.cards.cards--front-page .section__header {
  margin-bottom: var(--space--layout);
}

cog-booking.stack > * + * {
  margin-block-start: 0;
}
cog-booking.stack > [data-booking-visible=true] ~ * {
  margin-block-start: var(--space--stack);
}

[data-booking-status] {
  animation: fade-in 400ms ease-out;
}
[data-booking-status]:not([data-booking-visible=true]) {
  display: none;
}

/* stylelint-disable selector-no-qualifying-type -- not relevant for custom elements */
cog-credits {
  --cog-logo--size: 30px;
  --transform: translateX(calc(100% - var(--cog-logo--size)));
  --rotate: -360deg;
  all: unset;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  height: var(--cog-logo--size, 30px);
  overflow: hidden;
}
cog-credits.cog-credits--left {
  --transform: translateX(calc(-100% + var(--cog-logo--size)));
  --rotate: 360deg;
  justify-content: flex-start;
}
cog-credits.cog-credits--left .cog-credits__toggle {
  order: 1;
}
cog-credits.cog-credits--right {
  justify-content: flex-end;
}
cog-credits .cog-credits__inner {
  display: flex;
  flex-flow: row nowrap;
  width: -moz-fit-content;
  width: fit-content;
  gap: 10px;
  transform: var(--transform);
}
cog-credits[open=true] .cog-credits__inner {
  transform: unset;
}
cog-credits a {
  display: flex;
  align-self: center;
  white-space: nowrap;
}
cog-credits a svg {
  fill: currentColor;
  flex-shrink: 0;
  width: 125px;
  border-bottom: 1px solid transparent;
}
cog-credits .cog-credits__toggle {
  display: flex;
}
cog-credits .cog-credits__toggle svg {
  width: var(--cog-logo--size, 30px);
  height: var(--cog-logo--size, 30px);
}
@media screen and (prefers-reduced-motion: no-preference) {
  cog-credits .cog-credits__inner {
    transition: transform 0.8s ease;
  }
  cog-credits .cog-credits__toggle {
    transition: rotate 0.8s ease;
  }
  cog-credits[open=true] .cog-credits__toggle {
    rotate: var(--rotate);
  }
}

/***
 Copy the datepicker variables (the ones with `dp-` prefix and `!default` flag)
 from `sass/Datepicker.scss` to here
 Then, edit them using your framework's variables/values
 e.g.:
 $dp-background-color: $background !default;
 $dp-border-color: $border !default;
 ...
 ***/
.datepicker {
  width: -moz-min-content;
  width: min-content;
}
.datepicker:not(.active) {
  display: none;
}

.datepicker-dropdown {
  position: absolute;
  z-index: 20;
  padding-top: 4px;
}
.datepicker-dropdown.datepicker-orient-top {
  padding-top: 0;
  padding-bottom: 4px;
}

.datepicker-picker {
  display: flex;
  flex-direction: column;
  border-radius: 32px;
  background-color: hsl(0, 0%, 0%);
}
.datepicker-dropdown .datepicker-picker {
  box-shadow: 0 2px 3px rgba(0, 0, 0, 0.1), 0 0 0 1px rgba(0, 0, 0, 0.1);
}

.datepicker-main {
  flex: auto;
  padding: 2px;
}

.datepicker-footer {
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.1);
  background-color: hsl(0, 0%, 96%);
}

.datepicker-title {
  box-shadow: inset 0 -1px 1px rgba(0, 0, 0, 0.1);
  background-color: hsl(0, 0%, 96%);
  padding: 0.375rem 0.75rem;
  text-align: center;
  font-weight: 700;
}

.datepicker-controls {
  display: flex;
}
.datepicker-header .datepicker-controls {
  padding: 2px 2px 0;
}
.datepicker-controls .btn {
  min-width: unset;
}
.datepicker-header .datepicker-controls .btn {
  border-color: transparent;
  font-weight: bold;
  --btn--background-color: transparent;
  --btn--background-color--hover: hsla(
        var(--color--white--h),
        var(--color--white--s),
        var(--color--white--l),
        0.2
    );
  color: inherit;
  border: 0;
  padding: 0 12px;
}
.datepicker-footer .datepicker-controls .btn {
  flex: auto;
  margin: calc(0.375rem - 1px) 0.375rem;
  border-radius: 2px;
  font-size: 0.75rem;
}
.datepicker-controls .view-switch {
  flex: auto;
}
.datepicker-controls .prev-button,
.datepicker-controls .next-button {
  padding-right: 0.375rem;
  padding-left: 0.375rem;
  flex: 0 0 14.2857142857%;
}
.datepicker-controls .prev-button.disabled,
.datepicker-controls .next-button.disabled {
  visibility: hidden;
}

.datepicker-view,
.datepicker-grid {
  display: flex;
}

.datepicker-view {
  align-items: stretch;
  width: 15.75rem;
}

.datepicker-grid {
  flex-wrap: wrap;
  flex: auto;
}

.datepicker .days {
  display: flex;
  flex-direction: column;
  flex: auto;
}
.datepicker .days-of-week {
  display: flex;
}
.datepicker .week-numbers {
  display: flex;
  flex-direction: column;
  flex: 0 0 9.6774193548%;
}
.datepicker .weeks {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  flex: auto;
}
.datepicker span {
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 32px;
  cursor: default;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
}
.datepicker .dow {
  height: 1.5rem;
  font-size: 0.875rem;
  font-weight: 700;
}
.datepicker .week {
  flex: auto;
  color: hsl(0, 0%, 72%);
  font-size: 0.75rem;
}

.datepicker-cell, .datepicker .days .dow {
  flex-basis: 14.2857142857%;
}

.datepicker-cell {
  height: 2.25rem;
}
.datepicker-cell:not(.day) {
  flex-basis: 25%;
  height: 4.5rem;
}
.datepicker-cell:not(.disabled):hover {
  background-color: hsl(0, 0%, 0%);
  cursor: pointer;
}
.datepicker-cell.focused:not(.selected) {
  background-color: hsl(0, 0%, 91.2%);
}
.datepicker-cell.selected, .datepicker-cell.selected:hover {
  background-color: hsl(217, 71%, 53%);
  color: #fff;
  font-weight: 600;
}
.datepicker-cell.disabled {
  color: hsl(0, 0%, 86.4%);
}
.datepicker-cell.prev:not(.disabled), .datepicker-cell.next:not(.disabled) {
  color: hsl(0, 0%, 48%);
}
.datepicker-cell.prev.selected, .datepicker-cell.next.selected {
  color: rgb(229.5, 229.5, 229.5);
}
.datepicker-cell.highlighted:not(.selected):not(.range):not(.today) {
  border-radius: 0;
  background-color: hsl(0, 0%, 96%);
}
.datepicker-cell.highlighted:not(.selected):not(.range):not(.today):not(.disabled):hover {
  background-color: hsl(0, 0%, 93.6%);
}
.datepicker-cell.highlighted:not(.selected):not(.range):not(.today).focused {
  background-color: hsl(0, 0%, 91.2%);
}
.datepicker-cell.today:not(.selected) {
  background-color: hsl(171, 100%, 41%);
}
.datepicker-cell.today:not(.selected):not(.disabled) {
  color: #fff;
}
.datepicker-cell.today.focused:not(.selected) {
  background-color: hsl(171, 100%, 39.975%);
}
.datepicker-cell.range-end:not(.selected), .datepicker-cell.range-start:not(.selected) {
  background-color: hsl(0, 0%, 72%);
  color: #fff;
}
.datepicker-cell.range-end.focused:not(.selected), .datepicker-cell.range-start.focused:not(.selected) {
  background-color: hsl(0, 0%, 70.2%);
}
.datepicker-cell.range-start:not(.range-end) {
  border-radius: 32px 0 0 32px;
}
.datepicker-cell.range-end:not(.range-start) {
  border-radius: 0 32px 32px 0;
}
.datepicker-cell.range {
  border-radius: 0;
  background-color: hsl(0, 0%, 86.4%);
}
.datepicker-cell.range:not(.disabled):not(.focused):not(.today):hover {
  background-color: hsl(0, 0%, 84.24%);
}
.datepicker-cell.range.disabled {
  color: hsl(0, 0%, 77.76%);
}
.datepicker-cell.range.focused {
  background-color: hsl(0, 0%, 82.08%);
}

.datepicker-input.in-edit {
  border-color: hsl(217, 71%, 50.35%);
}
.datepicker-input.in-edit:focus, .datepicker-input.in-edit:active {
  box-shadow: 0 0 0.25em 0.25em rgba(38.501175, 107.4178575, 218.283825, 0.2);
}

.datepicker {
  border-radius: 20px;
  overflow: hidden;
  width: var(--width--full--padded);
  margin-top: 6px;
}
@media (max-width: 47.99em) {
  .datepicker {
    left: 50% !important;
    transform: translateX(-50%);
  }
}
@media (min-width: 24.375em) {
  .datepicker {
    width: 358px;
  }
}
.datepicker .datepicker-header {
  padding: var(--space--12) 0;
}
.datepicker .datepicker-controls {
  justify-content: space-between;
  padding: 0 var(--space--4);
}
.datepicker .datepicker-controls .view-switch {
  flex: 0 0 auto;
  min-width: 10em;
}
.datepicker .datepicker-controls .prev-btn,
.datepicker .datepicker-controls .next-btn {
  --btn--size: 48px;
  --icon--size: 100%;
  display: flex;
  align-items: center;
  background-color: inherit;
  color: inherit;
  border-radius: 999px;
  transition: scale 50ms;
}
.datepicker .datepicker-controls .prev-btn::before,
.datepicker .datepicker-controls .next-btn::before {
  background-color: currentColor;
  -webkit-mask-image: url("../images/arrow.svg");
          mask-image: url("../images/arrow.svg");
  -webkit-mask-size: 48px;
          mask-size: 48px;
}
.datepicker .datepicker-controls .prev-btn:hover,
.datepicker .datepicker-controls .next-btn:hover {
  scale: 1.08;
}
.datepicker .datepicker-controls .prev-btn::before {
  transform: rotate(180deg);
}
.datepicker .days-of-week,
.datepicker .datepicker-grid {
  --grid--row-gap: 6px;
  --grid--column-gap: 6px;
  --item--width: calc(100% / 7 - var(--grid--column-gap));
  display: flex;
  flex-wrap: wrap;
  row-gap: var(--grid--row-gap);
  -moz-column-gap: var(--grid--column-gap);
       column-gap: var(--grid--column-gap);
  padding-inline: 7px;
}
.datepicker .datepicker-cell,
.datepicker .days .dow {
  flex-basis: var(--item--width);
  aspect-ratio: 1;
  height: auto;
  border-radius: 999px;
  line-height: var(--item--width);
}
.datepicker .days-of-week .dow {
  font-size: 14px;
  font-weight: var(--fw--bold);
  background-color: inherit;
  color: inherit;
}
.datepicker .datepicker-view {
  width: 100%;
}
.datepicker .datepicker-grid {
  width: 100%;
  padding-bottom: var(--space--12);
}
.datepicker .datepicker-cell {
  --day--color: var(--color--white);
  --day--background-color: transparent;
  --day--accent-text: var(--color--black-50);
  --day--accent-background: var(--color--lime);
  font-size: 14px;
  font-weight: var(--fw--medium);
}
.datepicker .datepicker-cell.datepicker-cell {
  background-color: var(--day--background-color);
  color: var(--day--color);
  border-color: var(--day--border-color, var(--day--background-color));
}
.datepicker .datepicker-cell:hover {
  --day--background-color: HSLA(var(--color--lime--h), var(--color--lime--s), var(--color--lime--l), 0.3);
  --day--color: var(--color--white);
}
.datepicker .datepicker-cell.focused:not(.selected) {
  --day--background-color: var(--day--accent-background);
  --day--color: var(--day--accent-text);
}
.datepicker .datepicker-cell.selected, .datepicker .datepicker-cell.range-start, .datepicker .datepicker-cell.range-end, .datepicker .datepicker-cell.range {
  --day--background-color: var(--day--accent-background);
  --day--color: var(--day--accent-text);
  color: var(--day--color);
  background-color: var(--day--background-color);
}
.datepicker .datepicker-cell.range {
  border-radius: 0;
  box-shadow: -15px 0 0 var(--day--background-color), 15px 0 0 var(--day--background-color);
}
.datepicker .datepicker-cell.range-start:not(.range-end) {
  box-shadow: 15px 0 0 var(--day--background-color);
}
.datepicker .datepicker-cell.disabled {
  opacity: 0.5;
}
.datepicker .datepicker-cell.disabled:hover {
  --day--background-color: HSLA(var(--color--white--h), var(--color--white--s), var(--color--white--l), 0.3);
  color: var(--day--color);
  background-color: var(--day--background-color);
}
.datepicker .datepicker-footer {
  background: var(--color--black);
}
.datepicker .datepicker-footer:has(.datepicker__close-btn) {
  padding: var(--space--8) var(--space--20) var(--space--20);
}
.datepicker .datepicker__close-btn {
  width: 100%;
}

.dialog-container,
.dialog-overlay {
  position: fixed;
  top: var(--wp-admin--admin-bar--height, 0);
  right: 0;
  bottom: 0;
  left: 0;
  height: 100%;
  overflow: auto;
  -ms-overflow-style: none;
  scrollbar-width: none;
  overflow-y: scroll;
  padding-bottom: 1px;
}
.dialog-container::-webkit-scrollbar,
.dialog-overlay::-webkit-scrollbar {
  display: none;
}

.dialog-container {
  z-index: 100;
  display: flex;
}
.dialog-container[aria-hidden=true] {
  visibility: hidden;
}

.dialog {
  --dialog--inner--padding-inline: calc(20 / 16 * 1rem + (50 - 20) * var(--fluid--bp));
  --dialog--inner--padding-block: calc(20 / 16 * 1rem + (50 - 20) * var(--fluid--bp));
  container: dialog/inline-size;
  margin: auto;
  border: 0;
  padding: 0;
  overflow: auto;
  background-color: unset;
}
.dialog::backdrop {
  background-color: var(--color--dark-grey);
}
.dialog:where([aria-modal=true]) {
  max-width: var(--width--l--padded);
  max-height: calc(100% - var(--space--layout--xs));
  width: 100%;
}
.dialog:where(.dialog--general):where([aria-modal=true]) {
  height: 100%;
}
.dialog:where(.dialog--general) .dialog__inner {
  background-color: var(--color--grey);
  overflow: auto;
}
@media (max-width: 47.99em) {
  .dialog:where(.dialog--general) .dialog__inner {
    border-radius: 0;
  }
}
.dialog:where(.dialog--general) .dialog-content {
  z-index: 2;
  position: relative;
  width: 100%;
  overflow: auto;
  max-width: var(--width--l);
}
@media (max-width: 47.99em) {
  .dialog:where(.dialog--general) .dialog-content {
    padding-top: 60px;
  }
}
.dialog--media {
  --dialog--inner--padding-inline: 0;
  --dialog--inner--padding-block: 0;
  padding-top: 2.5rem;
}
.dialog--media .dialog__close {
  top: 0;
  right: 0;
}
.dialog--media::backdrop {
  background-color: var(--color--grey);
}
.dialog .dialog-content {
  width: 100%;
}
@media (min-width: 48em) {
  .dialog .dialog-content {
    margin: auto;
  }
}
.dialog .dialog-content iframe {
  aspect-ratio: 16/9;
  width: 100%;
  height: auto;
}
.dialog__inner {
  max-height: 100%;
  overflow: auto;
  height: 100%;
  display: flex;
  padding-inline: var(--dialog--inner--padding-inline);
  padding-block: var(--dialog--inner--padding-block);
  min-height: 300px;
}
@media (min-width: 48em) {
  .dialog__inner {
    justify-content: center;
    align-items: center;
  }
}
.dialog__close {
  --icon--size: 24px;
  --link--text-decoration: none;
  position: absolute;
  top: var(--dialog--inner--padding-block);
  right: var(--dialog--inner--padding-inline);
  z-index: 5;
  border: 0;
  gap: var(--space--12);
}
.dialog__close:active {
  box-shadow: none;
}
@media (hover: hover) {
  .dialog__close:hover {
    box-shadow: none;
  }
}
@media (max-width: 47.99em) {
  .dialog__close__text {
    border: 0;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    white-space: nowrap;
    width: 1px;
  }
}

.filter-button {
  --btn--padding-block: calc(4px - var(--btn--border-width));
  --btn--padding-inline: calc(8px - var(--btn--border-width));
  --btn--border-width: 1px;
  font-weight: var(--fw--bold);
  font-size: calc(18 / 16 * 1rem + (20 - 18) * var(--fluid--bp));
  line-height: 1.333;
  min-width: unset;
  margin: 0;
  gap: var(--space--xs);
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
}
@media (min-width: 48em) {
  .filter-button {
    --btn--padding-inline: calc(16px - var(--btn--border-width));
    line-height: 1.3;
  }
}
.filter-button.is-open,
.filter-button:has([type=checkbox]:checked),
.filter-button:has([type=radio]:checked) {
  background-color: var(--btn--background-color--active, var(--btn--background-color--hover));
  color: var(--btn--color--active, var(--btn--color--hover));
  border-color: var(--btn--border-color--active, var(--btn--border-color--hover));
}
.filter-button.is-open::after,
.filter-button:has([type=checkbox]:checked)::after,
.filter-button:has([type=radio]:checked)::after {
  display: block;
}
.filter-button [type=checkbox],
.filter-button [type=radio] {
  border: 0;
  clip: rect(0 0 0 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  white-space: nowrap;
  width: 1px;
}
.filter-button [type=checkbox]::before,
.filter-button [type=radio]::before {
  content: none;
}
.filter-button--selectable::after,
.filter-button--checkbox::after {
  display: none;
  -webkit-mask-image: url("../images/close.svg");
          mask-image: url("../images/close.svg");
  width: 12px;
  height: 12px;
}

.filter-button--large {
  --btn--background-color: var(--color--dark-grey);
  --btn--border-color: var(--color--dark-grey);
  --btn--color: var(--color--white);
  --btn--background-color--hover: var(--color--dark-grey);
  --btn--border-color--hover: var(--color--white);
  --btn--color--hover: var(--color--white);
  --btn--background-color--active: var(--color--grey);
  --btn--border-color--active: var(--color--grey);
  --btn--color--active: var(--color--dark-grey);
  --btn--padding-inline: var(--space--12);
  --btn--padding-block: var(--space--8);
  --btn--border-radius: 20px;
}
@media (min-width: 48em) {
  .filter-button--large {
    --btn--padding-block: var(--space--12);
  }
}

.load-more {
  display: flex;
  margin-block: var(--space--layout);
  justify-content: center;
  align-items: center;
  text-align: center;
}
.load-more__pages {
  margin-block: 0;
}

.main-content__intro {
  margin-bottom: var(--space--prose);
  max-width: var(--width--s);
}
.main-content__text {
  max-width: var(--width--s);
  margin-bottom: var(--space--20);
}
.main-content + * {
  margin-top: var(--space--40);
}
@media (min-width: 48em) {
  .main-content + * {
    margin-top: var(--space--72);
  }
}

.mailing-list {
  position: relative;
  padding: var(--promo--padding);
  transition: background-color var(--transition--base);
}
.mailing-list__content {
  display: flex;
  flex-direction: column;
  width: 100%;
  max-width: 60ch;
}
.mailing-list__form {
  display: flex;
  flex-direction: column;
  gap: var(--space--24);
  margin-top: auto;
}
.mailing-list__form [type=email] {
  width: 100%;
}
@container (width > 390px) {
  .mailing-list__form [type=email] {
    width: auto;
    flex-grow: 1;
  }
}
.mailing-list .gform_wrapper.gravity-theme.gravity-theme {
  --color--background: var(--color--orange);
  background-color: var(--color--background);
  --color--foreground: var(--color--dark-grey);
  --focus--color: var(--color--foreground);
  color: var(--color--foreground);
  --link--color: var(--color--dark-grey);
  --link--color--hover: var(--color--dark-grey);
  --color--focus: var(--color--dark-grey);
  --color--error: var(--color--dark-grey);
  width: 100%;
  padding: 0;
  background-color: unset;
}
.mailing-list .gform_wrapper.gravity-theme.gravity-theme .gfield--type-email {
  grid-column: 1/-1;
}
.mailing-list .gform_wrapper.gravity-theme.gravity-theme .gfield--type-submit {
  grid-column: 1/-1;
}
.mailing-list .gform_wrapper.gravity-theme.gravity-theme .gfield--type-submit .gform-button {
  width: 100%;
}
@container (width > 1000px) {
  .mailing-list .gform_wrapper.gravity-theme.gravity-theme .gform_fields {
    display: flex;
    flex-flow: row wrap;
  }
}
.mailing-list .gform_wrapper.gravity-theme.gravity-theme .gform_fields > .gfield {
  flex: 0 1 auto;
}
.mailing-list .gform_wrapper.gravity-theme.gravity-theme .gform_fields .gfield--type-email {
  flex: 1;
}
.mailing-list .gform_wrapper.gravity-theme.gravity-theme .gform-field-label {
  font-weight: var(--fw--semibold);
}
.mailing-list .gform_wrapper.gravity-theme.gravity-theme .gform_footer {
  position: absolute;
}
.mailing-list .gform_wrapper.gravity-theme.gravity-theme .gform_anchor {
  position: absolute;
}
.mailing-list .gform_wrapper.gravity-theme.gravity-theme .gform_ajax_spinner {
  display: none;
}

/**
 * Swiper 11.2.2
 * Most modern mobile touch slider and framework with hardware accelerated transitions
 * https://swiperjs.com
 *
 * Copyright 2014-2025 Vladimir Kharlampidi
 *
 * Released under the MIT License
 *
 * Released on: January 31, 2025
 */
@font-face {
  font-family: "swiper-icons";
  src: url("data:application/font-woff;charset=utf-8;base64, d09GRgABAAAAAAZgABAAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAGRAAAABoAAAAci6qHkUdERUYAAAWgAAAAIwAAACQAYABXR1BPUwAABhQAAAAuAAAANuAY7+xHU1VCAAAFxAAAAFAAAABm2fPczU9TLzIAAAHcAAAASgAAAGBP9V5RY21hcAAAAkQAAACIAAABYt6F0cBjdnQgAAACzAAAAAQAAAAEABEBRGdhc3AAAAWYAAAACAAAAAj//wADZ2x5ZgAAAywAAADMAAAD2MHtryVoZWFkAAABbAAAADAAAAA2E2+eoWhoZWEAAAGcAAAAHwAAACQC9gDzaG10eAAAAigAAAAZAAAArgJkABFsb2NhAAAC0AAAAFoAAABaFQAUGG1heHAAAAG8AAAAHwAAACAAcABAbmFtZQAAA/gAAAE5AAACXvFdBwlwb3N0AAAFNAAAAGIAAACE5s74hXjaY2BkYGAAYpf5Hu/j+W2+MnAzMYDAzaX6QjD6/4//Bxj5GA8AuRwMYGkAPywL13jaY2BkYGA88P8Agx4j+/8fQDYfA1AEBWgDAIB2BOoAeNpjYGRgYNBh4GdgYgABEMnIABJzYNADCQAACWgAsQB42mNgYfzCOIGBlYGB0YcxjYGBwR1Kf2WQZGhhYGBiYGVmgAFGBiQQkOaawtDAoMBQxXjg/wEGPcYDDA4wNUA2CCgwsAAAO4EL6gAAeNpj2M0gyAACqxgGNWBkZ2D4/wMA+xkDdgAAAHjaY2BgYGaAYBkGRgYQiAHyGMF8FgYHIM3DwMHABGQrMOgyWDLEM1T9/w8UBfEMgLzE////P/5//f/V/xv+r4eaAAeMbAxwIUYmIMHEgKYAYjUcsDAwsLKxc3BycfPw8jEQA/gZBASFhEVExcQlJKWkZWTl5BUUlZRVVNXUNTQZBgMAAMR+E+gAEQFEAAAAKgAqACoANAA+AEgAUgBcAGYAcAB6AIQAjgCYAKIArAC2AMAAygDUAN4A6ADyAPwBBgEQARoBJAEuATgBQgFMAVYBYAFqAXQBfgGIAZIBnAGmAbIBzgHsAAB42u2NMQ6CUAyGW568x9AneYYgm4MJbhKFaExIOAVX8ApewSt4Bic4AfeAid3VOBixDxfPYEza5O+Xfi04YADggiUIULCuEJK8VhO4bSvpdnktHI5QCYtdi2sl8ZnXaHlqUrNKzdKcT8cjlq+rwZSvIVczNiezsfnP/uznmfPFBNODM2K7MTQ45YEAZqGP81AmGGcF3iPqOop0r1SPTaTbVkfUe4HXj97wYE+yNwWYxwWu4v1ugWHgo3S1XdZEVqWM7ET0cfnLGxWfkgR42o2PvWrDMBSFj/IHLaF0zKjRgdiVMwScNRAoWUoH78Y2icB/yIY09An6AH2Bdu/UB+yxopYshQiEvnvu0dURgDt8QeC8PDw7Fpji3fEA4z/PEJ6YOB5hKh4dj3EvXhxPqH/SKUY3rJ7srZ4FZnh1PMAtPhwP6fl2PMJMPDgeQ4rY8YT6Gzao0eAEA409DuggmTnFnOcSCiEiLMgxCiTI6Cq5DZUd3Qmp10vO0LaLTd2cjN4fOumlc7lUYbSQcZFkutRG7g6JKZKy0RmdLY680CDnEJ+UMkpFFe1RN7nxdVpXrC4aTtnaurOnYercZg2YVmLN/d/gczfEimrE/fs/bOuq29Zmn8tloORaXgZgGa78yO9/cnXm2BpaGvq25Dv9S4E9+5SIc9PqupJKhYFSSl47+Qcr1mYNAAAAeNptw0cKwkAAAMDZJA8Q7OUJvkLsPfZ6zFVERPy8qHh2YER+3i/BP83vIBLLySsoKimrqKqpa2hp6+jq6RsYGhmbmJqZSy0sraxtbO3sHRydnEMU4uR6yx7JJXveP7WrDycAAAAAAAH//wACeNpjYGRgYOABYhkgZgJCZgZNBkYGLQZtIJsFLMYAAAw3ALgAeNolizEKgDAQBCchRbC2sFER0YD6qVQiBCv/H9ezGI6Z5XBAw8CBK/m5iQQVauVbXLnOrMZv2oLdKFa8Pjuru2hJzGabmOSLzNMzvutpB3N42mNgZGBg4GKQYzBhYMxJLMlj4GBgAYow/P/PAJJhLM6sSoWKfWCAAwDAjgbRAAB42mNgYGBkAIIbCZo5IPrmUn0hGA0AO8EFTQAA") format("woff");
  font-weight: 400;
  font-style: normal;
}
:root {
  --swiper-theme-color: #007aff;
  /*
  --swiper-preloader-color: var(--swiper-theme-color);
  --swiper-wrapper-transition-timing-function: initial;
  */
}

:host {
  position: relative;
  display: block;
  margin-left: auto;
  margin-right: auto;
  z-index: 1;
}

.swiper {
  margin-left: auto;
  margin-right: auto;
  position: relative;
  overflow: hidden;
  list-style: none;
  padding: 0;
  /* Fix of Webkit flickering */
  z-index: 1;
  display: block;
}

.swiper-vertical > .swiper-wrapper {
  flex-direction: column;
}

.swiper-wrapper {
  position: relative;
  width: 100%;
  height: 100%;
  z-index: 1;
  display: flex;
  transition-property: transform;
  transition-timing-function: var(--swiper-wrapper-transition-timing-function, initial);
  box-sizing: content-box;
}

.swiper-android .swiper-slide,
.swiper-ios .swiper-slide,
.swiper-wrapper {
  transform: translate3d(0px, 0, 0);
}

.swiper-horizontal {
  touch-action: pan-y;
}

.swiper-vertical {
  touch-action: pan-x;
}

.swiper-slide {
  flex-shrink: 0;
  width: 100%;
  height: 100%;
  position: relative;
  transition-property: transform;
  display: block;
}

.swiper-slide-invisible-blank {
  visibility: hidden;
}

/* Auto Height */
.swiper-autoheight,
.swiper-autoheight .swiper-slide {
  height: auto;
}

.swiper-autoheight .swiper-wrapper {
  align-items: flex-start;
  transition-property: transform, height;
}

.swiper-backface-hidden .swiper-slide {
  transform: translateZ(0);
  backface-visibility: hidden;
}

/* 3D Effects */
.swiper-3d.swiper-css-mode .swiper-wrapper {
  perspective: 1200px;
}

.swiper-3d .swiper-wrapper {
  transform-style: preserve-3d;
}

.swiper-3d {
  perspective: 1200px;
}
.swiper-3d .swiper-slide,
.swiper-3d .swiper-cube-shadow {
  transform-style: preserve-3d;
}

/* CSS Mode */
.swiper-css-mode > .swiper-wrapper {
  overflow: auto;
  scrollbar-width: none; /* For Firefox */
  -ms-overflow-style: none; /* For Internet Explorer and Edge */
}
.swiper-css-mode > .swiper-wrapper::-webkit-scrollbar {
  display: none;
}
.swiper-css-mode > .swiper-wrapper > .swiper-slide {
  scroll-snap-align: start start;
}
.swiper-css-mode.swiper-horizontal > .swiper-wrapper {
  scroll-snap-type: x mandatory;
}
.swiper-css-mode.swiper-vertical > .swiper-wrapper {
  scroll-snap-type: y mandatory;
}
.swiper-css-mode.swiper-free-mode > .swiper-wrapper {
  scroll-snap-type: none;
}
.swiper-css-mode.swiper-free-mode > .swiper-wrapper > .swiper-slide {
  scroll-snap-align: none;
}
.swiper-css-mode.swiper-centered > .swiper-wrapper::before {
  content: "";
  flex-shrink: 0;
  order: 9999;
}
.swiper-css-mode.swiper-centered > .swiper-wrapper > .swiper-slide {
  scroll-snap-align: center center;
  scroll-snap-stop: always;
}
.swiper-css-mode.swiper-centered.swiper-horizontal > .swiper-wrapper > .swiper-slide:first-child {
  margin-inline-start: var(--swiper-centered-offset-before);
}
.swiper-css-mode.swiper-centered.swiper-horizontal > .swiper-wrapper::before {
  height: 100%;
  min-height: 1px;
  width: var(--swiper-centered-offset-after);
}
.swiper-css-mode.swiper-centered.swiper-vertical > .swiper-wrapper > .swiper-slide:first-child {
  margin-block-start: var(--swiper-centered-offset-before);
}
.swiper-css-mode.swiper-centered.swiper-vertical > .swiper-wrapper::before {
  width: 100%;
  min-width: 1px;
  height: var(--swiper-centered-offset-after);
}

/* Slide styles start */
/* 3D Shadows */
.swiper-3d .swiper-slide-shadow,
.swiper-3d .swiper-slide-shadow-left,
.swiper-3d .swiper-slide-shadow-right,
.swiper-3d .swiper-slide-shadow-top,
.swiper-3d .swiper-slide-shadow-bottom,
.swiper-3d .swiper-slide-shadow,
.swiper-3d .swiper-slide-shadow-left,
.swiper-3d .swiper-slide-shadow-right,
.swiper-3d .swiper-slide-shadow-top,
.swiper-3d .swiper-slide-shadow-bottom {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  z-index: 10;
}
.swiper-3d .swiper-slide-shadow {
  background: rgba(0, 0, 0, 0.15);
}
.swiper-3d .swiper-slide-shadow-left {
  background-image: linear-gradient(to left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}
.swiper-3d .swiper-slide-shadow-right {
  background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}
.swiper-3d .swiper-slide-shadow-top {
  background-image: linear-gradient(to top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}
.swiper-3d .swiper-slide-shadow-bottom {
  background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

.swiper-lazy-preloader {
  width: 42px;
  height: 42px;
  position: absolute;
  left: 50%;
  top: 50%;
  margin-left: -21px;
  margin-top: -21px;
  z-index: 10;
  transform-origin: 50%;
  box-sizing: border-box;
  border: 4px solid var(--swiper-preloader-color, var(--swiper-theme-color));
  border-radius: 50%;
  border-top-color: transparent;
}

.swiper:not(.swiper-watch-progress) .swiper-lazy-preloader,
.swiper-watch-progress .swiper-slide-visible .swiper-lazy-preloader {
  animation: swiper-preloader-spin 1s infinite linear;
}

.swiper-lazy-preloader-white {
  --swiper-preloader-color: #fff;
}

.swiper-lazy-preloader-black {
  --swiper-preloader-color: #000;
}

@keyframes swiper-preloader-spin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
/* Slide styles end */
/* a11y */
.swiper .swiper-notification {
  position: absolute;
  left: 0;
  top: 0;
  pointer-events: none;
  opacity: 0;
  z-index: -1000;
}

.swiper-free-mode > .swiper-wrapper {
  transition-timing-function: ease-out;
  margin: 0 auto;
}

:root {
  --swiper-navigation-size: 44px;
  /*
  --swiper-navigation-top-offset: 50%;
  --swiper-navigation-sides-offset: 10px;
  --swiper-navigation-color: var(--swiper-theme-color);
  */
}

.swiper-button-prev,
.swiper-button-next {
  position: absolute;
  top: var(--swiper-navigation-top-offset, 50%);
  width: calc(var(--swiper-navigation-size) / 44 * 27);
  height: var(--swiper-navigation-size);
  margin-top: calc(0px - var(--swiper-navigation-size) / 2);
  z-index: 10;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--swiper-navigation-color, var(--swiper-theme-color));
}
.swiper-button-prev.swiper-button-disabled,
.swiper-button-next.swiper-button-disabled {
  opacity: 0.35;
  cursor: auto;
  pointer-events: none;
}
.swiper-button-prev.swiper-button-hidden,
.swiper-button-next.swiper-button-hidden {
  opacity: 0;
  cursor: auto;
  pointer-events: none;
}
.swiper-navigation-disabled .swiper-button-prev,
.swiper-navigation-disabled .swiper-button-next {
  display: none !important;
}
.swiper-button-prev svg,
.swiper-button-next svg {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
  transform-origin: center;
}
.swiper-rtl .swiper-button-prev svg,
.swiper-rtl .swiper-button-next svg {
  transform: rotate(180deg);
}

.swiper-button-prev,
.swiper-rtl .swiper-button-next {
  left: var(--swiper-navigation-sides-offset, 10px);
  right: auto;
}

.swiper-button-next,
.swiper-rtl .swiper-button-prev {
  right: var(--swiper-navigation-sides-offset, 10px);
  left: auto;
}

.swiper-button-lock {
  display: none;
}

/* Navigation font start */
.swiper-button-prev:after,
.swiper-button-next:after {
  font-family: swiper-icons;
  font-size: var(--swiper-navigation-size);
  text-transform: none !important;
  letter-spacing: 0;
  font-variant: initial;
  line-height: 1;
}

.swiper-button-prev:after,
.swiper-rtl .swiper-button-next:after {
  content: "prev";
}

.swiper-button-next,
.swiper-rtl .swiper-button-prev {
  right: var(--swiper-navigation-sides-offset, 10px);
  left: auto;
}
.swiper-button-next:after,
.swiper-rtl .swiper-button-prev:after {
  content: "next";
}

/* Navigation font end */
.media {
  --media-item--aspect-ratio: 1.3333;
  --swiper-navigation-sides-offset: 0;
  container: section/inline-size;
}
@media (min-width: 48em) {
  .media {
    --media-item--aspect-ratio: 1.7778;
  }
}
.media .media__inner {
  display: grid;
  gap: 8px;
}
@media (min-width: 48em) {
  .media .media__inner {
    gap: 16px;
  }
}
.media .swiper {
  width: 100%;
}
.media .swiper-button-next,
.media .swiper-button-prev {
  --icon--size: 100%;
  --offset: 0.2em;
  position: absolute;
  top: calc(100cqw / var(--media-item--aspect-ratio) / 2);
  transform: rotate(var(--rotate, 0deg));
  z-index: 10;
  min-width: unset;
  min-height: unset;
  height: 42px;
  width: 31px;
  padding: 0;
  border: unset;
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
  padding-left: var(--offset);
  border-radius: var(--border-radius--l);
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}
@media (min-width: 48em) {
  .media .swiper-button-next,
  .media .swiper-button-prev {
    height: 58px;
    width: 37px;
    border-radius: var(--border-radius--m, 0px);
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
  }
}
.media .swiper-button-next::after,
.media .swiper-button-prev::after {
  display: none;
}
.media .swiper-button-next::before,
.media .swiper-button-prev::before {
  --icon--translate-x: 1px;
  --icon--size: 18px;
  -webkit-mask-image: url("../images/chevron.svg");
          mask-image: url("../images/chevron.svg");
  background-color: currentColor;
  transform: translateX(var(--icon--translate-x, 0));
  transition: transform var(--transition--base);
}
@media (min-width: 48em) {
  .media .swiper-button-next,
  .media .swiper-button-prev {
    font-size: 37px;
    width: 1em;
  }
}
.media .swiper-button-next:where(.swiper-button-prev),
.media .swiper-button-prev:where(.swiper-button-prev) {
  --rotate: 180deg;
}
.media .media-item {
  position: relative;
  display: flex;
  border: 0;
}
.media .media-item__inner {
  display: grid;
  grid-template-areas: "media" "caption";
  width: 100%;
  grid-template-rows: auto minmax(1lh, auto);
}
.media .media-item__media {
  aspect-ratio: var(--media-item--aspect-ratio);
  grid-area: media;
}
.media .media-item img {
  z-index: -1;
}
.media .media-item .btn-play {
  place-self: center;
  position: relative;
  grid-area: media;
  width: 80px;
  height: 80px;
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: hsla(0, 0%, 0%, 0.4);
  border-radius: var(--border-radius--m);
  transition: all var(--transition--base);
}
.media .media-item .btn-play .btn__icon {
  --icon--size: 100%;
  display: block;
  background-color: var(--color--grey);
  -webkit-mask-size: 110px;
          mask-size: 110px;
}
.media .media-item .btn-play:hover {
  scale: 1.02;
  background-color: hsla(0, 0%, 0%, 0.5);
}
.media .media-item__caption {
  margin-top: var(--space--4);
}
@media (min-width: 48em) {
  .media .media-item__caption {
    gap: var(--space--m);
    margin-top: var(--space--8);
  }
}
.media [data-carousel=multiple]:not(.swiper-initialized),
.media [data-carousel=nav]:not(.swiper-initialized) {
  display: flex;
  flex-flow: row nowrap;
  overflow: auto;
}
.media [data-carousel=multiple]:not(.swiper-initialized) .media-item,
.media [data-carousel=nav]:not(.swiper-initialized) .media-item {
  flex: 0 0 100%;
  align-items: flex-start;
  justify-content: flex-start;
}
.media [data-carousel=nav] {
  width: 100%;
}
.media [data-carousel=nav]:not(.swiper-initialized) .swiper-wrapper {
  gap: 8px;
}
.media [data-carousel=nav]:not(.swiper-initialized) .media-item {
  flex: 0 0 25%;
}
.media [data-carousel=nav] .swiper-slide-thumb-active .media-item__media {
  box-shadow: inset 0 0 0 var(--border-width) var(--color--grey);
}
.media [data-carousel=nav] .media-item {
  --border-width: 2px;
}
.media [data-carousel=nav] .media-item__media {
  transition: box-shadow var(--transition--base);
  aspect-ratio: 4/3;
  border-radius: 6px;
}
@media (min-width: 48em) {
  .media [data-carousel=nav] .media-item__media {
    border-radius: var(--border-radius--m);
  }
}
.media__nav {
  display: flex;
  flex-flow: column nowrap;
  gap: 12px;
}
@media (min-width: 48em) {
  .media__nav {
    gap: 21px;
  }
}
:where(.menu, .menu__items) {
  display: flex;
  flex-flow: column nowrap;
  gap: var(--menu-items--gap, var(--space--s));
}

.menu-item {
  --link--text-decoration: none;
  position: relative;
}
.menu-item__wrap {
  display: flex;
  align-items: center;
  gap: var(--menu-item--gap, var(--space--xs));
}
.menu-item__link {
  display: inline-flex;
}
.menu-item__sub-menu-toggle {
  --btn--size: 42px;
  --icon--size: 42px;
  flex-shrink: 0;
  margin-left: auto;
  padding: 0;
  border-width: 1px;
  transition: var(--transition--base);
  transition-property: scale;
  border-radius: 8px;
}
@media (min-width: 62em) {
  .menu-item__sub-menu-toggle {
    display: none;
  }
}
.menu-item__sub-menu-toggle:active {
  scale: 1.05;
}
@media (hover: hover) {
  .menu-item__sub-menu-toggle:hover {
    scale: 1.05;
  }
}
.menu-item__sub-menu-toggle::before {
  rotate: 90deg;
  background-color: currentColor;
  -webkit-mask-image: url("../images/arrow.svg");
          mask-image: url("../images/arrow.svg");
}
.menu-item__sub-menu-toggle[aria-expanded=true]::before {
  rotate: -90deg;
}

.partners {
  container: section/inline-size;
}
.partners__items {
  --grid--row-gap: var(--space--l);
  --grid--columns: 2;
}
@container section (width > 600px) {
  .partners__items {
    --grid--columns: 4;
  }
}

.partner {
  --link--text-decoration: none;
  --link--text-decoration--hover: none;
  text-align: center;
  align-self: stretch;
}
.partner:not(.has-image) {
  --link--text-decoration--hover: underline;
}
.partner:hover .partner__image, .partner:focus-within .partner__image {
  box-shadow: inset 0 0 0 1px var(--color--white);
  border: 2px solid var(--color--lime);
}
.partner:hover .partner__heading, .partner:focus-within .partner__heading {
  text-decoration: underline;
}
.partner__inner {
  display: flex;
  flex-direction: column;
  gap: var(--space--xs);
  height: 100%;
}
.partner__image {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  border-radius: var(--border-radius--m);
  aspect-ratio: 1;
  background-color: var(--color--white);
  box-shadow: inset 0 0 0 0px var(--color--white);
  transition: box-shadow var(--transition--base);
  border: 2px solid var(--color--white);
}
.partner__image img {
  -o-object-fit: contain;
     object-fit: contain;
  transition: all 600ms ease;
  height: var(--image-size, 85%);
  width: var(--image-size, 85%);
}
.partner__heading {
  margin-top: auto;
  padding: var(--space--8) var(--space--8);
}

.people {
  container: section/inline-size;
}
.people__items {
  --grid--item--min-width: 8.75rem;
  --grid--columns: 2;
  --grid--column-gap: var(--space--20);
  align-items: start;
}
@container section (width > 600px) {
  .people__items {
    --grid--columns: 4;
  }
}

.person {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: var(--space--xs);
}
.person.no-image .btn__icon {
  background-color: var(--color--dark-grey);
}
.person__image {
  position: relative;
  aspect-ratio: 3/4;
}
.person__dialog-trigger {
  --btn--size: 45px;
  --icon--size: 50px;
  --btn--background-color--hover: var(--color--dark-grey);
  --btn--color--hover: var(--color--grey);
  position: absolute;
  inset: 0;
  z-index: 1;
  background-color: transparent;
  border: 0;
}
.person__dialog-trigger:active {
  background-color: transparent;
  box-shadow: none;
}
.person__dialog-trigger:active .btn__icon {
  background-color: var(--color--background);
  color: var(--color--foreground);
}
@media (hover: hover) {
  .person__dialog-trigger:hover {
    background-color: transparent;
    box-shadow: none;
  }
  .person__dialog-trigger:hover .btn__icon {
    background-color: var(--color--background);
    color: var(--color--foreground);
  }
}
.person__dialog-trigger .btn__icon {
  display: flex;
  justify-content: center;
  align-items: center;
  position: absolute;
  bottom: 0;
  right: 0;
  width: var(--btn--size);
  height: var(--btn--size);
  border-top-left-radius: var(--border-radius--m);
  background-color: var(--btn--background-color);
  color: var(--color--background);
  transition: all 80ms ease-in-out;
  transition-property: background-color, color, border-color, box-shadow, transform;
}
.person__header {
  display: flex;
  flex-flow: column;
  gap: var(--space--xxs);
  aspect-ratio: 3/4;
  position: relative;
  padding: var(--space--16);
  padding-bottom: 50px;
}
.person__image ~ .person__header {
  aspect-ratio: unset;
  background-color: transparent;
  padding: 0;
}
.person__header .type-body-s {
  margin-bottom: 8px;
}
.person__header__flex {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-top: auto;
}

.dialog--people {
  max-width: 100%;
}
@media (max-width: 47.99em) {
  .dialog--people {
    border-radius: 0;
    height: 100%;
    max-height: 100%;
  }
}
@media (min-width: 48em) {
  .dialog--people {
    max-width: var(--width--full--padded);
  }
}

.person-dialog {
  display: flex;
  flex-flow: column nowrap;
  gap: var(--grid--column-gap);
  align-items: flex-start;
  margin-inline: auto;
  justify-content: center;
}
@container dialog (width > 660px) {
  .person-dialog {
    flex-flow: row wrap;
  }
}
.person-dialog__header {
  margin-bottom: var(--space--m);
}
@container dialog (width > 660px) {
  .person-dialog__header {
    padding-right: var(--space--l);
  }
}
@media (min-width: 48em) {
  .person-dialog__header {
    margin-bottom: var(--space--s);
  }
}
.person-dialog__image {
  aspect-ratio: 3/4;
  width: 100%;
  max-width: 300px;
}
.person-dialog__content {
  flex: 1;
  align-self: center;
  max-width: 700px;
}

.pagination {
  display: flex;
  margin-block: var(--space--layout);
  justify-content: center;
  align-items: center;
  text-align: center;
}
.pagination__items {
  margin-block: 0;
}
.pagination__item, .pagination__nav {
  font-size: var(--fs--base);
  font-weight: var(--fw--bold);
}
.pagination__item--link {
  --link--text-decoration: none;
}
.pagination__item--current {
  text-decoration: underline;
}
.pagination__nav a {
  display: block;
  width: 26px;
  height: 1em;
}
.pagination__nav--prev {
  display: none;
}

.price-table__table {
  width: 100%;
  border-collapse: collapse;
}
.price-table__table thead {
  display: block;
}
@media (min-width: 48em) {
  .price-table__table thead tr {
    padding-top: 0;
    padding-bottom: var(--space--m);
  }
}
.price-table__table tr {
  display: flex;
  gap: var(--space--base);
  padding: var(--space--s) var(--container--padding-inline);
}
@media (min-width: 62em) {
  .price-table__table tr {
    padding-block: var(--space--l);
  }
}
.price-table__table th {
  flex: 1;
  text-align: left;
}
.price-table__table tbody {
  display: block;
}
.price-table__table tbody tr:nth-child(2n-1) {
  background-color: var(--color--grey);
}
.price-table__table tbody td {
  flex: 1;
}
.price-table__band-name {
  display: flex;
  align-items: center;
  gap: var(--space--xs);
}
.price-table__band-name::before {
  --size: 1em;
  content: "";
  height: var(--size);
  width: var(--size);
  border-radius: 50%;
  background-color: var(--price-table--band-color);
  flex-shrink: 0;
}

:root {
  --promo--padding: var(--space--24) var(--space--20);
}
@media (min-width: 48em) {
  :root {
    --promo--padding: var(--space--32);
  }
}

.promo {
  --promo--background-color--focus: var(--color--mustard);
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space--ml);
  transition: background-color var(--transition--base);
  padding: var(--promo--padding);
}
.promo:has(.btn:hover, .btn:focus) {
  background-color: var(--promo--background-color--focus);
}
@media (min-width: 48em) {
  .promo {
    flex-direction: row;
    justify-content: space-between;
    min-height: 413px;
  }
}
.promo__image {
  aspect-ratio: 1;
  width: 100%;
  max-width: 500px;
}
@media (min-width: 48em) {
  .promo__image {
    max-width: 350px;
  }
}
.promo__content {
  z-index: 1;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  align-self: stretch;
}
@media (min-width: 48em) {
  .promo__content {
    max-width: 440px;
  }
}
.promo__header {
  --space--stack: calc(12 / 16 * 1rem + (20 - 12) * var(--fluid--bp));
}
.promo__footer {
  width: 100%;
  margin-top: auto;
}
@media (min-width: 48em) {
  .promo__footer {
    width: auto;
  }
}
.promo__parent-page {
  padding: 3px var(--space--8);
}
.promo .btn {
  margin-top: var(--space--24);
}

.post-details {
  --grid--item--min-width: 240px;
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--space--20);
  padding: var(--space--20);
  grid-template-columns: repeat(auto-fill, minmax(min(var(--grid--item--min-width), 100%), 1fr));
  align-items: flex-start;
}
@media (min-width: 48em) {
  .post-details {
    row-gap: var(--space--32);
    padding: var(--space--20) var(--space--24);
  }
}
.post-details:not(:has(li)) {
  display: none;
}
.post-details:not(:has(li)) + * {
  margin-top: 0;
}
.main-content + .post-details {
  margin-top: var(--space--stack);
}
.post-details .view-toggle-btn {
  margin-top: 12px;
  text-decoration: underline;
}

.post-detail {
  display: grid;
}
.post-detail__heading {
  margin-bottom: 0;
}
.post-detail__dialog-content p {
  margin-block: var(--space--prose);
}
.post-detail__dialog-heading {
  margin-block-end: var(--heading--margin-bottom, 0px);
}
.dialog.dialog--event-warning {
  max-width: 100%;
}
@media (max-width: 47.99em) {
  .dialog.dialog--event-warning {
    border-radius: 0;
    height: 100%;
    max-height: 100%;
  }
}
@media (min-width: 48em) {
  .dialog.dialog--event-warning {
    max-width: var(--width--full--padded);
  }
}

.post-detail .taxonomy-list {
  padding-block: var(--space--s);
}
.post-detail__accessibility {
  --link--text-decoration: none;
}

.quantity-input,
quantity-input {
  display: inline-flex;
  flex-flow: row nowrap;
  align-items: stretch;
  gap: var(--space--s);
  flex: 0 0 auto;
  align-items: center;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
}
.quantity-input [data-quantity-value],
quantity-input [data-quantity-value] {
  text-align: center;
  width: 4em;
}
.quantity-input [data-quantity-value]::-webkit-inner-spin-button, .quantity-input [data-quantity-value]::-webkit-outer-spin-button,
quantity-input [data-quantity-value]::-webkit-inner-spin-button,
quantity-input [data-quantity-value]::-webkit-outer-spin-button {
  -webkit-appearance: none;
          appearance: none;
  margin: 0;
}
.quantity-input [data-quantity-increment],
.quantity-input [data-quantity-decrement],
quantity-input [data-quantity-increment],
quantity-input [data-quantity-decrement] {
  --btn--icon-size: 2.5em;
  display: inline-flex;
  align-items: center;
  align-self: center;
  justify-content: center;
  border-width: 1px;
  border-radius: 50%;
  cursor: pointer;
  padding: 0;
  transition: background-color 0.3s ease;
  font-size: 16px;
  line-height: 1.675;
}
.quantity-input [data-quantity-increment]::before,
quantity-input [data-quantity-increment]::before {
  -webkit-mask-image: url("../images/plus.svg");
          mask-image: url("../images/plus.svg");
}
.quantity-input [data-quantity-decrement]::before,
quantity-input [data-quantity-decrement]::before {
  -webkit-mask-image: url("../images/minus.svg");
          mask-image: url("../images/minus.svg");
}

.quotes {
  display: flex;
  flex-flow: row wrap;
  align-items: flex-start;
  -moz-column-gap: var(--grid--column-gap);
       column-gap: var(--grid--column-gap);
  row-gap: var(--grid--row-gap);
  align-items: stretch;
}
@media (max-width: 47.99em) {
  .quotes {
    --grid--row-gap: var(--space--12);
  }
}
.quotes .section__header {
  flex: 1 0 100%;
  width: 100%;
  display: block;
  margin-bottom: 4px;
}

.quote {
  flex: 1 1 400px;
  padding: calc(20 / 16 * 1rem + (24 - 20) * var(--fluid--bp));
}
.quote > * {
  --space--stack: calc(12 / 16 * 1rem + (16 - 12) * var(--fluid--bp));
}
.quote__text {
  margin-bottom: 0;
}
.quote__credit {
  --link--text-decoration: none;
  --link--text-decordation--hover: underline;
}
.quote__credit-link {
  text-decoration: underline;
}
.quote__rating {
  display: flex;
  flex-flow: row nowrap;
  gap: 6px;
  padding-bottom: 4px;
}
.quote__rating-icon {
  --icon--size: 30px;
  --icon--url: url("../images/star.svg");
  display: block;
  background-color: currentColor;
}
.quote__rating-icon.half {
  --icon--size: 32px;
}
.quote cite {
  font-style: normal;
}

.search-prompts {
  --grid--column-gap: var(--space--8);
  --grid--row-gap: var(--space--8);
}
.search-prompts--search {
  padding: var(--space--16);
}
@media (min-width: 48em) {
  .search-prompts--search {
    padding: var(--space--24) var(--space--20);
  }
}
.search-prompts .btn {
  --btn--padding-block: calc(6px - var(--btn--border-width));
  --btn--padding-inline: calc(12px - var(--btn--border-width));
  font-weight: var(--fw--bold);
  font-size: 0.875rem;
  line-height: 1.143;
  text-wrap: pretty;
  min-width: unset;
  border-width: 1px;
}
@media (min-width: 48em) {
  .search-prompts .btn {
    --btn--padding-block: calc(4px - var(--btn--border-width));
    --btn--padding-inline: calc(16px - var(--btn--border-width));
    font-size: calc(18 / 16 * 1rem + (20 - 18) * var(--fluid--bp));
    line-height: 1.3;
  }
}

.site-main {
  flex: 1;
}

:root {
  --z-index--site-header: 500;
  --site-header--top: var(--wp-admin--admin-bar--height, 0px);
  --site-header--bar--height: 136px;
  --site-header--bar--padding-bottom: var(--space--m);
  --site-header--bottom: calc(var(--site-header--bar--height) + var(--site-header--top));
  --site-header--menu--duration: 250ms;
  --site-header--menu--ease: ease-in-out;
  --submenu--transition-duration: 200ms;
  --submenu--transition-ease: ease-out;
}
@media (min-width: 62em) {
  :root {
    --submenu--transition-duration: 250ms;
    --site-header--bar--height: 182px;
    --site-header--bar--padding-bottom: var(--space--l);
  }
}

.site-header {
  --site-header--logo--width: 75px;
  --site-header--spacing: var(--space--s);
  --site-header--button-size: 2.8125rem;
  --link--color: var(--color--foreground);
  --link--color--hover: var(--color--foreground);
  display: grid;
  position: absolute;
  flex: 0;
  grid-template-rows: min-content auto;
  height: 100%;
  z-index: var(--z-index--site-header);
  width: 100%;
  height: 100%;
  background-color: transparent;
  pointer-events: none;
}
@media (min-width: 62em) {
  .site-header {
    --site-header--logo--width: 101px ;
  }
}
.site-header ~ .page-wrap {
  margin-top: var(--site-header--bar--height);
}
.site-header ~ .page-wrap:has(.page-header.has-image) {
  margin-top: 0;
}
@media (min-width: 62em) {
  .site-header.has-image-background .site-header__bar {
    align-items: flex-start;
  }
}
@media (max-width: 61.99em) {
  .site-header.is-open {
    position: fixed;
    top: 0;
    z-index: 999999;
    pointer-events: auto;
    height: calc(100% - var(--wp-admin-bar--height, 0px));
    transition: height var(--site-header--menu--duration) 0s;
  }
}
.site-header > *:not(.site-header__main, .site-header__search) {
  pointer-events: auto;
}
.site-header__bar {
  display: flex;
  height: var(--site-header--bar--height);
  width: 100%;
  align-items: flex-end;
  justify-content: space-between;
  padding-bottom: var(--site-header--bar--padding-bottom);
  gap: var(--space--s);
  background-color: transparent;
  transition: background-color var(--site-header--menu--duration) var(--site-header--menu--ease);
  z-index: 11;
}
.site-header__bar__menus {
  display: flex;
  flex-flow: column nowrap;
  gap: var(--space--16);
}
@media (min-width: 62em) {
  .site-header__bar__menus {
    padding-top: var(--space--16);
  }
}
.site-header__utility-nav {
  --gap: var(--space--32);
  --icon--size: 20px;
  display: flex;
  flex-flow: row nowrap;
  align-items: center;
  gap: var(--gap);
}
@media (max-width: 61.99em) {
  .site-header__utility-nav {
    --gap: var(--space--24);
    bottom: var(--space--ml);
    left: 50%;
    transform: translateX(-50%);
    padding: var(--space--20) var(--space--32);
    position: fixed;
    margin-inline: auto;
    z-index: 15;
    max-width: var(--width--full--padded);
    background-color: var(--color--dark-grey);
    width: -moz-max-content;
    width: max-content;
  }
}
@media (max-width: 23.75em) {
  .site-header__utility-nav {
    --gap: var(--space--12);
    padding-inline: var(--space--16);
  }
}
@media (min-width: 62em) {
  .site-header__utility-nav {
    --gap: var(--space--xl);
    justify-content: flex-end;
    align-items: center;
  }
}
.site-header__utility-nav > .btn {
  --btn--size: 53px;
  --btn--icon-size: 20px;
  --btn--background-color: transparent;
  --btn--color: var(--color--grey);
  --btn--background-color--hover: transparent;
  --btn--color--hover: var(--color--grey);
  gap: var(--space--8);
  min-width: unset;
  padding: 0;
  border: 0;
  transition: opacity var(--transition--base);
}
.site-header__utility-nav > .btn:active {
  opacity: 0.8;
}
@media (hover: hover) {
  .site-header__utility-nav > .btn:hover {
    opacity: 0.8;
  }
}
.site-header__quick-nav {
  --grid--column-gap: 38px;
}
@media (max-width: 61.99em) {
  .site-header__quick-nav {
    background-color: transparent;
  }
}
@media (min-width: 62em) {
  .site-header__quick-nav {
    overflow: hidden;
    border-radius: var(--border-radius--m, 0px);
    padding: var(--space--20) var(--space--32);
  }
}
.site-header__panel {
  --contents--translateY: 10px;
  --contents--translateX: 0;
  --contents--scale: 1;
  --contents--opacity: 0;
  --contents--duration: calc(var(--site-header--menu--duration) + 200ms);
  position: absolute;
  top: 0;
  height: 100%;
  width: 100%;
  clip-path: polygon(0 0, 100% 0, 100% 0, 0 0);
  opacity: 0;
  z-index: 1;
  pointer-events: none;
  transition: all var(--site-header--menu--duration) var(--site-header--menu--ease);
}
@media (min-width: 62em) {
  .site-header__panel {
    --contents--translateY: 0;
    --contents--translateX: 0;
    --contents--scale: 0.98;
    position: fixed;
    top: var(--site-header--top, 0px);
    padding-top: var(--site-header--bar--height);
    pointer-events: auto;
    transition: all var(--site-header--menu--duration) var(--site-header--menu--ease);
    height: calc(100% - var(--site-header--top, 0px));
    clip-path: polygon(0% 0, 100% 0, 100% 100%, 0% 100%);
  }
}
.site-header__panel:not([inert]) {
  --contents--translateY: 0;
  --contents--translateX: 0;
  --contents--scale: 1;
  --contents--opacity: 1;
  opacity: 1;
  pointer-events: all;
  clip-path: polygon(0% 0, 100% 0, 100% 100%, 0% 100%);
}
.site-header__panel > * {
  opacity: var(--contents--opacity, 1);
  transform: translate(var(--contents--translateX, 0), var(--contents--translateY, 0)) scale(var(--contents--scale, 1));
  transition: all var(--contents--duration) var(--site-header--menu--ease);
  transition-property: opacity, transform;
}
.site-header__panel > .site-header__utility-nav {
  opacity: var(--contents--opacity, 1);
  transform: translate(-50%, var(--contents--translateY, 0)) scale(var(--contents--scale, 1));
  transition: all var(--contents--duration) var(--site-header--menu--ease);
  transition-property: opacity, transform;
}
.site-header__main-panel {
  overflow: auto;
  display: grid;
  gap: var(--site-header--spacing);
  grid-auto-rows: min-content;
  grid-template-rows: auto;
  grid-auto-flow: row;
  background-color: var(--color--grey);
}
@media (min-width: 62em) {
  .site-header__main-panel {
    align-items: flex-start;
    background-color: var(--color--dark-grey);
    padding-bottom: var(--space--40);
  }
}
.site-header__main-panel-inner {
  display: flex;
  flex-flow: column nowrap;
  gap: var(--space--m);
  padding-top: 7.8125rem;
  border-radius: var(--border-radius--m, 0px);
  padding-bottom: 120px;
}
@media (min-width: 62em) {
  .site-header__main-panel-inner {
    padding: var(--space--40);
    flex-flow: row nowrap;
    align-items: flex-start;
    gap: var(--space--m);
    max-height: 100%;
    overflow: auto;
  }
}
.site-header__logo {
  display: flex;
  align-items: center;
  max-width: var(--site-header--logo--width);
  margin-right: auto;
}
.site-header__logo > * {
  -o-object-fit: contain;
     object-fit: contain;
  -o-object-position: left center;
     object-position: left center;
}
.site-header.is-search-open .site-header__logo {
  visibility: hidden;
  opacity: 0;
  transition-duration: calc(var(--site-header--menu--duration) / 2);
  transition-delay: 0s;
}
@media (max-width: 61.99em) {
  .site-header.is-open .site-header__logo {
    visibility: hidden;
    opacity: 0;
    transition-duration: calc(var(--site-header--menu--duration) / 2);
    transition-delay: 0s;
  }
}
.site-header__search {
  display: grid;
  justify-content: stretch;
  align-items: center;
  gap: var(--site-header--spacing);
  grid-auto-rows: min-content;
  grid-template-rows: auto;
  padding-bottom: var(--space--base);
  z-index: 12;
}
@media (min-width: 62em) {
  .site-header__search {
    padding-top: 0;
  }
}
.site-header__search-header {
  position: fixed;
  top: 32px;
  inset-inline: 0;
  display: flex;
  width: 100%;
  align-items: flex-end;
  justify-content: space-between;
  padding-bottom: var(--space--m);
  gap: var(--space--s);
}
@media (min-width: 62em) {
  .site-header__search-header {
    top: 50px;
  }
}
.site-header__search .btn-close {
  --icon--size: 24px;
  --btn--color: var(--color--grey);
  --btn--color--hover: var(--color--grey);
  margin-left: auto;
  transition: scale var(--transition--base);
}
@media (hover: hover) {
  .site-header__search .btn-close:hover {
    scale: 1.05;
  }
}
.site-header__search-inner {
  --space--stack: var(--space--24);
}

.btn-hamburger {
  --burger--line-width: 100%;
  --burger--line-height: 3px;
  --burger--border-thickness: 0px;
  --burger--line-offset: 10px;
  --burger--line-width-offset: 7px;
  --burger--color: currentColor;
  --btn--border-color--hover: currentColor;
  --btn--size: 64px;
  --btn--icon-size: 32px;
  --btn--background-color: var(--color--grey);
  --btn--color: var(--color--dark-grey);
  --btn--color--hover: var(--color--grey);
  --btn--background-color--hover: var(--color--dark-grey);
  border: unset;
  transition: all var(--transition--base);
  transition-property: transform, background-color, color;
}
@media (min-width: 62em) {
  .btn-hamburger {
    --btn--size: 32px;
    --btn--icon-size: 32px;
    padding: 0;
    border-radius: 0;
  }
}
.btn-hamburger__icon {
  position: relative;
  display: flex;
  overflow: hidden;
  width: var(--btn--icon-size);
  height: var(--btn--icon-size);
  flex-flow: column nowrap;
  align-items: flex-end;
  justify-content: space-around;
  padding: 0;
  border: var(--burger--border-thickness) solid var(--btn--border-color);
  transition: all var(--transition--base);
  transition-property: transform;
}
@media (hover: hover) {
  .btn-hamburger:hover {
    transform: scale(1.05);
    color: var(--btn--color);
    background-color: var(--btn--background-color);
  }
}
.btn-hamburger__line {
  position: absolute;
  display: block;
  width: var(--burger--line-width);
  height: var(--burger--line-height);
  border-radius: 3px;
  margin: 0;
  background-color: currentColor;
  content: "";
  transition: all var(--transition--base);
  transition-property: opacity, transform, top, background-color;
}
.btn-hamburger__line--1 {
  transform: translateY(calc(var(--burger--line-offset, 10px) * -1));
}
.btn-hamburger__line--3 {
  transform: translateY(var(--burger--line-offset, 10px));
}
.btn-hamburger.is-open, .btn-hamburger[aria-expanded=true] {
  position: relative;
}
@media (max-width: 61.99em) {
  .btn-hamburger.is-open, .btn-hamburger[aria-expanded=true] {
    top: -24px;
    color: var(--btn--color--hover);
    background-color: var(--btn--background-color--hover);
  }
}
.btn-hamburger.is-open .btn-hamburger__line--1, .btn-hamburger[aria-expanded=true] .btn-hamburger__line--1 {
  transform: rotate(45deg);
  transform-origin: unset;
}
.btn-hamburger.is-open .btn-hamburger__line--2, .btn-hamburger[aria-expanded=true] .btn-hamburger__line--2 {
  opacity: 0;
}
.btn-hamburger.is-open .btn-hamburger__line--3, .btn-hamburger[aria-expanded=true] .btn-hamburger__line--3 {
  transform: rotate(-45deg);
  transform-origin: unset;
}
.btn-hamburger[aria-expanded=false] .btn-hamburger__line--1 {
  width: calc(var(--burger--line-width) - var(--burger--line-width-offset));
}
.btn-hamburger[aria-expanded=false] .btn-hamburger__line--3 {
  width: calc(var(--burger--line-width) - var(--burger--line-width-offset));
}

.site-header__top-menu {
  --menu-items--gap: var(--space--32);
  display: flex;
  flex-flow: row nowrap;
  align-items: center;
}
.site-header__top-menu > .menu-item + .menu-item {
  display: flex;
  flex-flow: row nowrap;
  align-items: center;
}
.site-header__top-menu .menu-item__link {
  text-decoration: none;
}
.site-header__top-menu .menu-item__link:hover, .site-header__top-menu .menu-item__link:focus-visible {
  text-decoration: underline;
}
.site-header__main-menu {
  --menu-items--gap: var(--space--l);
  --link--color: inherit;
  width: 100%;
}
@media (min-width: 62em) {
  .site-header__main-menu {
    -moz-column-gap: var(--space--20);
         column-gap: var(--space--20);
    row-gap: var(--space--40);
  }
  .site-header__main-menu::after {
    content: "";
    width: 100%;
    padding-bottom: var(--space--4);
  }
}
.site-header__main-menu .menu__sub-menu[data-menu-depth="1"] {
  padding-top: 10px;
}
.site-header__main-menu .menu__items {
  display: flex;
  flex-flow: column nowrap;
}
.site-header__main-menu .menu__items:not([data-menu-depth="0"]) {
  --menu-items--gap: var(--space--8);
  gap: var(--menu-items--gap);
}
@media (max-width: 61.99em) {
  .site-header__main-menu .menu__items:not([data-menu-depth="0"]) {
    padding-top: var(--space--12);
    padding-bottom: var(--space--16);
  }
}
@media (min-width: 48em) {
  .site-header__main-menu .menu__items:not([data-menu-depth="0"]) {
    --menu-items--gap: var(--space--4);
  }
}
.site-header__main-menu .menu-item {
  --btn--size: 32px;
}
@media (min-width: 62em) {
  .site-header__main-menu .menu-item {
    --btn--size: 43px;
  }
}
.site-header__main-menu .menu-item__wrap {
  justify-content: space-between;
}
@media (min-width: 62em) {
  .site-header__main-menu .menu-item__wrap {
    display: flex;
    align-items: flex-start;
    gap: var(--space--m);
  }
}

.site-footer {
  padding-bottom: 60px;
  overflow: hidden;
}
.site-footer__inner {
  padding: var(--space--20) var(--space--16);
}
@media (min-width: 48em) {
  .site-footer__inner {
    padding: var(--space--32);
    padding-bottom: var(--space--40);
  }
}
.site-footer__top {
  display: grid;
  gap: var(--space--32);
}
@media (min-width: 36em) {
  .site-footer__top {
    grid-template-columns: repeat(12, 1fr);
  }
}
@media (min-width: 62em) {
  .site-footer__top {
    grid-template-columns: repeat(12, 1fr);
    gap: var(--space--40);
    row-gap: var(--space--layout--xs);
  }
}
.site-footer__bottom {
  display: flex;
  flex-direction: column;
  margin-top: var(--space--xl);
  gap: var(--space--16);
}
@media (min-width: 48em) {
  .site-footer__bottom {
    flex-direction: row;
    gap: var(--space--l);
    padding-top: var(--space--ml);
    justify-content: space-between;
    align-items: flex-end;
  }
}
@media (min-width: 62em) {
  .site-footer__bottom {
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    gap: var(--space--ml);
    row-gap: var(--space--layout--xs);
  }
}
@media (min-width: 36em) {
  .site-footer__bottom .btn {
    display: inline-flex;
  }
}
@media (min-width: 62em) {
  .site-footer__section {
    grid-column: span 8;
  }
}
.site-footer__contact-info {
  grid-column: span 12;
}
@media (min-width: 62em) {
  .site-footer__contact-info {
    grid-column: span 4;
  }
}
.site-footer__contact-info address {
  font-style: normal;
}
.site-footer__contact {
  --link--text-decoration: none;
  --space--stack: var(--space--4);
  max-width: 20rem;
}
@media (min-width: 48em) {
  .site-footer__contact {
    --space--stack: var(--space--8);
  }
}
.site-footer__links {
  display: flex;
  flex-flow: row wrap;
  -moz-column-gap: var(--space--ml);
       column-gap: var(--space--ml);
  grid-column: span 12;
  justify-self: start;
}
@media (min-width: 36em) {
  .site-footer__links {
    grid-column: span 6;
  }
}
@media (min-width: 62em) {
  .site-footer__links {
    justify-self: center;
    grid-column: 5/span 4;
    max-width: 380px;
  }
}
.site-footer__links-menu {
  display: flex;
  flex-direction: column;
  gap: var(--space--s);
  flex: 1;
}
.site-footer__links-menu a {
  --link--text-decoration: none;
  font-size: var(--fs--base);
  font-weight: var(--fw--semibold);
}
.site-footer .social-links {
  display: flex;
  gap: var(--space--ml);
}
.site-footer .social-links__item {
  display: flex;
  background: currentColor;
  border: 0;
  padding: 0;
  width: 40px;
  height: 40px;
}
.site-footer .social-links__item::before {
  width: 100%;
  height: 100%;
}
.site-footer .social-links__item:hover {
  opacity: 0.9;
}
.site-footer__partners {
  grid-column: span 12;
}
@media (min-width: 36em) {
  .site-footer__partners {
    grid-column: span 6;
  }
}
@media (min-width: 62em) {
  .site-footer__partners {
    grid-column: span 4;
  }
}
.site-footer__partners-items {
  display: flex;
  flex-direction: column;
  gap: var(--space--m);
}
@media (min-width: 36em) {
  .site-footer__partners-items {
    align-items: flex-end;
  }
}
.site-footer .footer-partner {
  display: flex;
  text-align: center;
  width: var(--logo-width);
}
@media (min-width: 62em) {
  .site-footer .footer-partner {
    width: var(--logo-width--l);
  }
}
.site-footer .footer-partner:nth-child(2) {
  transform: translateY(10px);
}
.site-footer .footer-partner__inner {
  display: flex;
}
.site-footer .footer-partner__image {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
}
.site-footer .footer-partner a {
  text-decoration: none;
}
.site-footer .footer-partner a:active {
  text-decoration: none;
}
@media (hover: hover) {
  .site-footer .footer-partner a:hover {
    text-decoration: none;
  }
}
.site-footer__company-info {
  max-width: 95ch;
}
.site-footer cog-credits {
  flex-shrink: 0;
  width: -moz-max-content;
  width: max-content;
  grid-column: 11/span 3;
}
@media (min-width: 48em) {
  .site-footer cog-credits {
    justify-self: end;
  }
}

.search-form .input-group {
  --input--color: var(--color--dark-grey);
  --input--background-color: var(--color--white);
  --input--border-color: var(--color--grey);
  --input--border-radius: var(--border-radius--m);
  --input--border-width: 0px;
  --btn--size: 43px;
  --btn--icon-size: 24px;
  padding: var(--space--8) var(--space--12);
  align-items: center;
}
.search-form .input-group [type=text] {
  padding: 0;
  border-radius: 0;
}
.search-form .input-group [type=text]::-moz-placeholder {
  opacity: 0.6;
}
.search-form .input-group [type=text]::placeholder {
  opacity: 0.6;
}
.search-form .input-group [type=text]:focus-visible {
  outline: none;
}
@media (min-width: 48em) {
  .search-form .input-group [type=text] {
    font-size: calc(20 / 16 * 1rem + (24 - 20) * var(--fluid--bp));
    line-height: 1.25;
  }
}
@media (min-width: 48em) {
  .search-form .input-group {
    --input--padding-block: var(--space--ml);
    --input--padding-inline: var(--space--m);
    --btn--size: 57px;
    --btn--icon-size: 31px;
    padding: var(--space--8) var(--space--20);
  }
}
.search-form .input-group .search-submit {
  --btn--border-color--hover: var(--color--dark-grey);
  --btn--color--hover: var(--color--dark-grey);
  border-radius: var(--border-radius--m);
}

.sub-nav {
  width: 100%;
  max-width: var(--width--max--padded);
  margin-bottom: var(--space--layout);
}
.sub-nav--desktop {
  --grid--column-gap: var(--space--32);
  padding: var(--space--20) var(--space--48);
}
.sub-nav--mobile {
  --sub-nav--padding: var(--space--16);
}
.sub-nav--mobile .sub-nav__items {
  display: flex;
  flex-direction: column;
  gap: var(--space--8);
  padding: var(--sub-nav--padding) var(--space--32);
}
.sub-nav .sub-nav-item--parent {
  display: flex;
  flex-flow: row nowrap;
  gap: var(--grid--column-gap);
  align-items: center;
}
.sub-nav .sub-nav-item--parent .mask-icon {
  --icon--size: 26px;
  display: block;
}
.sub-nav .sub-nav__toggle {
  padding: var(--sub-nav--padding);
  width: 100%;
  display: flex;
  flex-flow: row nowrap;
  align-items: center;
  gap: var(--grid--column-gap);
  justify-content: space-between;
}
.sub-nav .sub-nav__toggle:hover, .sub-nav .sub-nav__toggle:focus-visible {
  background-color: var(--color--black-40);
}
.sub-nav .sub-nav__toggle[aria-expanded=true] {
  background-color: var(--color--black-40);
}
.sub-nav .sub-nav__toggle .mask-icon {
  --icon--size: 22px;
  -webkit-mask-size: 160%;
          mask-size: 160%;
}

.support {
  --promo--background-color--focus: var(--color--beige);
}
.support__content {
  display: flex;
  flex-direction: column;
  height: 100%;
  width: 100%;
  padding: var(--promo--padding);
}
.support__actions {
  margin-top: auto;
}
.support__donation-buttons {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  row-gap: var(--space--12);
  -moz-column-gap: var(--space--12);
       column-gap: var(--space--12);
}
@container (width >= 400px) {
  .support__donation-buttons {
    row-gap: var(--space--24);
    -moz-column-gap: var(--space--16);
         column-gap: var(--space--16);
  }
}
@container (width >= 800px) {
  .support__donation-buttons {
    display: flex;
    flex-flow: row wrap;
  }
}
@container (width < 800px) {
  .support__donate-item {
    width: 100%;
  }
}
.support__donate-item input {
  border: 0;
  clip: rect(0 0 0 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  white-space: nowrap;
  width: 1px;
}
.support__donate-item label {
  font-weight: var(--btn--font-weight);
}
@container (width < 800px) {
  .support__donate-item label {
    min-width: unset;
  }
}
@container (width < 800px) {
  .support [data-submit-donation],
  .support [data-submit-membership] {
    width: 100%;
    grid-column: span 3;
  }
}
.support [data-display-donation-amount]::before {
  content: "£";
}
@container (width < 800px) {
  .support__donation-other {
    width: 100%;
    grid-column: span 3;
  }
}
.support__donation-other input {
  width: 300px;
  border: var(--btn--border-width) solid var(--btn--border-color);
  border-radius: var(--btn--border-radius, 0px);
}
@container (width < 800px) {
  .support__donation-other input {
    width: 100%;
  }
}

.taxonomy-list {
  --space--stack: var(--space--m);
}
.taxonomy-list__items {
  gap: var(--space--xs);
}
.taxonomy-list + .main-content {
  --space--stack: var(--space--l);
}

[data-tooltip] {
  position: relative;
  cursor: help;
}

.tooltip-item {
  --arrow--size: 20px;
}
.tooltip-item__tooltip {
  --color--background: var(--color--black-50);
  background-color: var(--color--background);
  --color--foreground: var(--color--white);
  --focus--color: var(--color--foreground);
  color: var(--color--foreground);
  --link--color: var(--color--white);
  --link--color--hover: var(--color--white);
  position: absolute;
  z-index: 9999;
  top: 0;
  left: 0;
  width: min(230px, var(--width--full--padded));
  padding: 8px;
  text-align: center;
  text-wrap: pretty;
  transition: display 250ms ease allow-discrete, overlay 250ms ease allow-discrete, transform 250ms ease, opacity 250ms ease;
  opacity: 0;
  transform: translateY(2px);
  /* IN */
  /* OUT */
}
.tooltip-item__tooltip:not([hidden]) {
  opacity: 1;
  transform: translateY(0);
}
@starting-style {
  .tooltip-item__tooltip:not([hidden]) {
    opacity: 0;
    transform: translateY(2px);
  }
}
.tooltip-item__content {
  position: relative;
}
.tooltip-item__arrow {
  position: absolute;
  z-index: 0;
  width: var(--arrow--size);
  height: var(--arrow--size);
  background-color: var(--color--background);
  transform: rotate(45deg);
}

.venue__tick {
  --icon--size: 1.5rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  vertical-align: middle;
}

.visit {
  --promo--background-color--focus: var(--color--beige);
  position: relative;
  display: flex;
  flex-direction: column;
  transition: background-color var(--transition--base);
}
@media (min-width: 48em) {
  .visit {
    flex-direction: row;
    justify-content: space-between;
  }
}
.visit:has(.btn:hover, .btn:focus) {
  background-color: var(--promo--background-color--focus);
}
.visit__content {
  z-index: 1;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  align-self: stretch;
  padding: var(--promo--padding);
}
@media (min-width: 48em) {
  .visit__content {
    width: 50%;
    max-width: 440px;
  }
}
.visit__map {
  position: relative;
  display: block;
  width: 100%;
  min-height: 350px;
  overflow: hidden;
}
@media (min-width: 48em) {
  .visit__map {
    width: 50%;
    min-height: 370px;
  }
}
.visit__map-credit {
  position: absolute;
  bottom: 3px;
  right: 6px;
  background-color: var(--color--grey);
  border-radius: var(--btn--border-radius);
  padding: var(--space--4) var(--space--8);
}
@media (min-width: 48em) {
  .visit__map-credit {
    bottom: 8px;
    left: 8px;
    right: unset;
  }
}
.visit google-maps-static {
  position: absolute;
  inset-inline: 0;
  inset-block: -30px;
}
.visit google-maps-static img:not([src]) {
  opacity: 0;
}
.visit__footer {
  width: 100%;
  margin-top: auto;
}
@media (min-width: 48em) {
  .visit__footer {
    width: auto;
  }
}
.visit__footer .btn {
  margin-top: var(--space--24);
}

.page-header--front-page .page-header__image {
  background: var(--color--dark-grey);
  max-height: calc(100svh - 138px);
}
.page-header--front-page [data-carousel=hero-events] {
  position: relative;
  width: 100%;
  height: 100%;
  /* Ensure previous/next slides in loop are hidden */
}
.page-header--front-page [data-carousel=hero-events] .card {
  border-radius: 0;
}
.page-header--front-page [data-carousel=hero-events] .card__content {
  position: absolute;
  transform: translate(-50%, 0%);
  left: 50%;
  bottom: 40px;
  z-index: 10;
  width: 100%;
  margin-inline: auto;
  background: none;
  padding: 0;
  display: block;
  min-height: auto;
  max-width: var(--width--max--padded);
}
.page-header--front-page [data-carousel=hero-events] .card__image {
  height: 100%;
}
@media (min-width: 48em) {
  .page-header--front-page [data-carousel=hero-events] .card__image {
    aspect-ratio: 1;
  }
}
.page-header--front-page [data-carousel=hero-events] .card__image:before {
  content: "";
  background: linear-gradient(180deg, rgba(51, 50, 46, 0) 0%, #33322E 100%);
  position: absolute;
  left: 0;
  right: 0;
  top: auto;
  bottom: 0;
  width: 100%;
  z-index: 1;
  bottom: 0;
  height: 350px;
}
@media (min-width: 48em) {
  .page-header--front-page [data-carousel=hero-events] .card__image:before {
    height: 450px;
  }
}
.page-header--front-page [data-carousel=hero-events] .card__heading {
  color: var(--color--white);
}
.page-header--front-page [data-carousel=hero-events] .card .type-body-l {
  color: var(--color--white);
  margin-top: 4px;
}
.page-header--front-page [data-carousel=hero-events] .card__meta {
  margin-top: 8px;
}
.page-header--front-page [data-carousel=hero-events] .card__venue {
  display: none;
}
.page-header--front-page [data-carousel=hero-events] .card__dates {
  color: var(--color--white);
}
.page-header--front-page [data-carousel=hero-events] .card__actions {
  margin-top: 16px;
  padding-top: 0;
}
.page-header--front-page [data-carousel=hero-events] .card__clickable {
  display: none;
}
.page-header--front-page [data-carousel=hero-events] .card__btn {
  max-width: 175px;
  background: #D4D3CD;
  color: #000;
  border-color: #D4D3CD;
}
.page-header--front-page [data-carousel=hero-events] .card__btn:hover {
  background-color: var(--color--lime);
  border-color: var(--color--lime);
}
.page-header--front-page [data-carousel=hero-events] .carousel-controls {
  position: absolute;
  bottom: 40px;
  right: 0;
  width: 100%;
  max-width: var(--width--max--padded);
  margin-inline: auto;
  left: 0;
  height: 48px;
  display: flex;
  justify-content: flex-end;
}
.page-header--front-page [data-carousel=hero-events] .swiper-slide {
  opacity: 0 !important;
  pointer-events: none;
}
.page-header--front-page [data-carousel=hero-events] .swiper-slide-active {
  opacity: 1 !important;
  pointer-events: auto;
}
.page-header--front-page [data-carousel=hero-events] .swiper-slide-duplicate {
  opacity: 0 !important;
}
.page-header--front-page [data-carousel=hero-events] .swiper-button-prev,
.page-header--front-page [data-carousel=hero-events] .swiper-button-next,
.page-header--front-page [data-carousel=hero-events] .swiper-button-pause {
  background: transparent;
  position: relative !important;
  width: 48px;
  border: none;
  color: #fff;
  height: 72px;
  height: 32px;
  min-width: 36px;
  flex-shrink: 0;
  left: 0;
  padding: 0;
}
.page-header--front-page [data-carousel=hero-events] .swiper-button-prev:after,
.page-header--front-page [data-carousel=hero-events] .swiper-button-next:after,
.page-header--front-page [data-carousel=hero-events] .swiper-button-pause:after {
  font-size: 24px;
}
@media (min-width: 48em) {
  .page-header--front-page [data-carousel=hero-events] .swiper-button-prev:after,
  .page-header--front-page [data-carousel=hero-events] .swiper-button-next:after,
  .page-header--front-page [data-carousel=hero-events] .swiper-button-pause:after {
    font-size: 30px;
  }
}
@media (min-width: 48em) {
  .page-header--front-page [data-carousel=hero-events] .swiper-button-prev,
  .page-header--front-page [data-carousel=hero-events] .swiper-button-next,
  .page-header--front-page [data-carousel=hero-events] .swiper-button-pause {
    height: 72px;
    min-width: 48px;
  }
}
.page-header--front-page [data-carousel=hero-events] .swiper-button-pause {
  order: 3;
  border-radius: 10px;
  border: 1px solid var(--Neutral-White, #FFF);
  background: var(--transparency-black-50, rgba(0, 0, 0, 0.5));
  width: 48px;
  height: 48px;
  min-width: 48px;
  margin-left: 16px;
}
.page-header--front-page [data-carousel=hero-events] .swiper-button-pause:hover {
  background-color: var(--color--lime);
  border-color: var(--color--lime);
}
.page-header--front-page [data-carousel=hero-events] .swiper-button-pause:hover svg path {
  fill: #000;
}
@media (min-width: 48em) {
  .page-header--front-page [data-carousel=hero-events] .swiper-button-pause {
    border-radius: 20px;
    width: 72px;
    height: 72px;
  }
}

.listing {
  width: 100%;
  min-height: 220px;
}
.listing__clear {
  --icon--url: url("../images/close.svg");
  --icon--size: 12px;
  --link--text-decoration: none;
  --link--text-decoration--hover: underline;
  gap: var(--space--xs);
  justify-self: flex-end;
}
.listing__clear:disabled {
  display: none;
}
.listing__featured {
  margin-bottom: var(--space--xl);
}
.listing__featured .listing-items:has(.listing-item:nth-child(2):last-child) {
  --grid--columns: 1;
}
@media (min-width: 48em) {
  .listing__featured .listing-items:has(.listing-item:nth-child(2):last-child) {
    --grid--columns: 2;
  }
}
@media (min-width: 62em) {
  .listing__featured .listing-items:has(.listing-item:nth-child(2):last-child) {
    --grid--columns: 2;
  }
}
.listing__status {
  margin-bottom: var(--space--layout);
}
.listing__applied-filters {
  flex-direction: column;
  gap: var(--space--12);
}
@media (min-width: 36em) {
  .listing__applied-filters {
    gap: var(--space--20);
    flex-direction: row;
    align-items: center;
  }
}
.listing [data-show-view] {
  --animate--duration: 250ms;
}
.listing .listing-items {
  --grid--columns: 1;
}
@media (min-width: 64.0625em) {
  .listing .listing-items {
    --grid--columns: 2;
  }
}
@media (min-width: 75em) {
  .listing .listing-items:has(.grid-columns--3), .listing .listing-items.whats-on, .listing .listing-items.news, .listing .listing-items.archive {
    --grid--columns: 3;
  }
}
.listing .listing-items__header {
  display: flex;
  flex-flow: row wrap;
  justify-content: space-between;
  align-items: center;
  -moz-column-gap: var(--space--l);
       column-gap: var(--space--l);
  row-gap: var(--space--s);
  margin-bottom: var(--space--m);
}
.listing .listing-items__header h2 {
  margin: 0;
}
@media (min-width: 48em) {
  .listing .listing-items__header {
    margin-bottom: var(--space--l);
  }
}
.listing .listing-item[aria-hidden=true] {
  display: none;
}

.listing-filters {
  display: grid;
  row-gap: var(--space--12);
  margin-top: var(--space--12);
}
@media (min-width: 48em) {
  .listing-filters {
    row-gap: var(--space--20);
    margin-top: var(--space--8);
  }
}
.listing-filters__group {
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  -moz-column-gap: var(--space--l);
       column-gap: var(--space--l);
  row-gap: var(--space--ml);
}
.listing-filters__group > * {
  grid-column: span 12;
}
@media (min-width: 48em) {
  .listing-filters__group > * {
    grid-column: span 6;
  }
}
@media (min-width: 75em) {
  .listing-filters__group > * {
    grid-column: span 3;
  }
}
.listing-filters__group .column--full.column--full {
  grid-column: span 12;
}
.listing-filters__view-selector .listing-filters__filter-list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: var(--space--8);
  background: var(--color--dark-grey);
  border-radius: 20px;
}
@media (min-width: 36em) {
  .listing-filters__view-selector .listing-filters__filter-list {
    background: none;
    align-items: center;
  }
}
@media (min-width: 48em) {
  .listing-filters__view-selector .listing-filters__filter-list {
    gap: var(--space--20);
  }
}
.listing-filters__view-selector .filter-button--large {
  height: 100%;
}
.listing-filters__filter-list {
  gap: var(--space--xs);
}
.listing-filters__filter-item {
  margin: 0;
}
.listing-filters .form-group {
  margin: 0;
}
.listing-filters .form-group legend {
  margin-bottom: var(--space--xs);
}
.listing-filters .dates-filter {
  display: flex;
  align-items: flex-start;
  flex-direction: column;
  justify-content: center;
}
@media (min-width: 36em) {
  .listing-filters .dates-filter {
    align-items: center;
    flex-direction: row;
    gap: var(--space--24);
  }
}
@media (min-width: 48em) {
  .listing-filters .dates-filter {
    justify-content: start;
  }
}
.listing-filters .dates-filter__label {
  display: flex;
  flex-flow: row nowrap;
  -moz-column-gap: 6px;
       column-gap: 6px;
  align-items: center;
  margin-bottom: 0;
  width: 100%;
  margin-top: var(--space--12);
}
@media (min-width: 36em) {
  .listing-filters .dates-filter__label {
    margin-top: 0;
    width: auto;
  }
}
.listing-filters .dates-filter__label .mask-icon {
  --icon--size: 23px;
}
@media (min-width: 48em) {
  .listing-filters .dates-filter__label .mask-icon {
    --icon--size: 32px;
  }
}
.listing-filters .dates-filter__label-text {
  min-width: 41px;
}
@media (min-width: 36em) {
  .listing-filters .dates-filter__label-text {
    min-width: auto;
  }
}
.listing-filters .dates-filter__input {
  --field-sizing--padding-x: var(--space--16);
  --input--border-radius: 10px;
  --input--border-color: var(--input--background-color);
  --input--border-width: 0px;
  --input--background-color: hsla(0 0% 100% / 0.2);
  --input--padding-block: var(--space--8);
  --input--padding-inline: var(--space--8);
  min-width: 0;
  flex: 1;
  cursor: pointer;
  line-height: 1;
  background-image: none;
  padding-right: var(--space--8);
  text-align: center;
}
@media (min-width: 48em) {
  .listing-filters .dates-filter__input {
    padding-right: var(--space--16);
    --input--padding-inline: var(--space--16);
  }
}
.listing-filters .dates-filter::after {
  display: none;
}
.listing-filters .dates-filter select {
  text-align: center;
  width: auto !important;
}

.page-header [data-listing-status]:empty {
  display: none;
}

.spektrix-iframe {
  max-width: unset;
}
.spektrix-iframe [name=SpektrixIFrame] {
  margin: 0;
  width: 100%;
  height: 90vh;
  opacity: 0;
}
.spektrix-iframe [name=SpektrixIFrame].is-loaded {
  opacity: 1;
}
.spektrix-iframe [name=SpektrixIFrame]:focus {
  outline-style: none;
  outline-width: 0;
}
.spektrix-iframe + .spektrix-iframe {
  margin-top: var(--space--layout);
}

.spektrix-page--standalone .spektrix-iframe {
  background-color: var(--color--dark-grey);
}

.spektrix-page {
  position: relative;
}
@media (min-width: 87.5em) {
  .article--spektrix-page--basket .spektrix-page {
    min-height: 780px;
  }
}
.spektrix-page__aside {
  --grid--column-gap: var(--space--48);
  margin-bottom: var(--space--layout);
}
@media (min-width: 87.5em) {
  .spektrix-page__aside {
    pointer-events: none;
    position: absolute;
    top: 179px;
    bottom: 0;
    inset-inline: 0;
    max-width: var(--width--max--padded);
  }
}
@media (min-width: 87.5em) {
  .spektrix-page__aside__inner {
    pointer-events: auto;
    position: sticky;
    top: var(--space--48);
    right: 0;
    margin-left: auto;
    width: calc(100% - var(--width--spektrix-content) - var(--grid--column-gap));
  }
}

.no-scroll {
  overflow: hidden;
}

.sr-only,
.sr-only,
.screen-reader-text {
  border: 0;
  clip: rect(0 0 0 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  white-space: nowrap;
  width: 1px;
}

.sr-only--show-on-focus:active, .sr-only--show-on-focus:focus {
  clip: auto;
  height: auto;
  margin: 0;
  overflow: visible;
  position: fixed;
  top: 30px;
  left: 20px;
  white-space: normal;
  width: auto;
}

.d-block {
  display: block;
}

.d-none {
  display: none;
}

@media (min-width: 22.5em) {
  .xxs\:d-block {
    display: block;
  }
  .xxs\:d-flex {
    display: flex;
  }
  .xxs\:d-inline {
    display: inline;
  }
}
@media (min-width: 25em) {
  .xs\:d-block {
    display: block;
  }
  .xs\:d-flex {
    display: flex;
  }
  .xs\:d-inline {
    display: inline;
  }
}
@media (min-width: 36em) {
  .s\:d-block {
    display: block;
  }
  .s\:d-flex {
    display: flex;
  }
  .s\:d-inline {
    display: inline;
  }
}
@media (min-width: 48em) {
  .m\:d-block {
    display: block;
  }
  .m\:d-flex {
    display: flex;
  }
  .m\:d-inline {
    display: inline;
  }
}
@media (min-width: 62em) {
  .l\:d-block {
    display: block;
  }
  .l\:d-flex {
    display: flex;
  }
  .l\:d-inline {
    display: inline;
  }
}
@media (min-width: 75em) {
  .xl\:d-block {
    display: block;
  }
  .xl\:d-flex {
    display: flex;
  }
  .xl\:d-inline {
    display: inline;
  }
}
@media (min-width: 87.5em) {
  .xxl\:d-block {
    display: block;
  }
  .xxl\:d-flex {
    display: flex;
  }
  .xxl\:d-inline {
    display: inline;
  }
}
@media (min-width: 62em) {
  .menu\:d-block {
    display: block;
  }
  .menu\:d-flex {
    display: flex;
  }
  .menu\:d-inline {
    display: inline;
  }
}
@media (min-width: 22.5em) {
  .xxs\:d-none {
    display: none;
  }
}
@media (min-width: 25em) {
  .xs\:d-none {
    display: none;
  }
}
@media (min-width: 36em) {
  .s\:d-none {
    display: none;
  }
}
@media (min-width: 48em) {
  .m\:d-none {
    display: none;
  }
}
@media (min-width: 62em) {
  .l\:d-none {
    display: none;
  }
}
@media (min-width: 75em) {
  .xl\:d-none {
    display: none;
  }
}
@media (min-width: 87.5em) {
  .xxl\:d-none {
    display: none;
  }
}
@media (min-width: 62em) {
  .menu\:d-none {
    display: none;
  }
}

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