/* @import must be at top of file, otherwise CSS will not work */

@font-face {
  font-family: "Garamond-Regular";
  src: url("/fonts/garamond/AdobeGaramond-Regular.otf") format("opentype"),
    url("/fonts/garamond/AdobeGaramond-Regular.woff") format("woff"),
    url("/fonts/garamond/AdobeGaramond-Regular.woff2") format("woff2");
}

@font-face {
  font-family: "Soleil-Book";
  src: url("/fonts/soleil/SoleilBook.otf") format("opentype");
}

@font-face {
  font-family: "Soleil-Bold";
  src: url("/fonts/soleil/SoleilBold.otf") format("opentype");
}

@font-face {
  font-family: "Soleil-Regular";
  src: url("/fonts/soleil/SoleilRegular.otf") format("opentype");
}

@font-face {
  font-family: "Soleil-Regular";
  font-weight: bold;
  src: url("/fonts/soleil/SoleilBold.otf") format("opentype");
}

@font-face {
  font-family: "Soleil-Light";
  src: url("/fonts/soleil/SoleilLight.otf") format("opentype");
}

@font-face {
  font-family: "Soleil-Light";
  font-weight: bold;
  src: url("/fonts/soleil/SoleilBook.otf") format("opentype");
}

/* This file is for your main application css. */

*, ::before, ::after {
  --tw-border-spacing-x: 0;
  --tw-border-spacing-y: 0;
  --tw-translate-x: 0;
  --tw-translate-y: 0;
  --tw-rotate: 0;
  --tw-skew-x: 0;
  --tw-skew-y: 0;
  --tw-scale-x: 1;
  --tw-scale-y: 1;
  --tw-pan-x:  ;
  --tw-pan-y:  ;
  --tw-pinch-zoom:  ;
  --tw-scroll-snap-strictness: proximity;
  --tw-gradient-from-position:  ;
  --tw-gradient-via-position:  ;
  --tw-gradient-to-position:  ;
  --tw-ordinal:  ;
  --tw-slashed-zero:  ;
  --tw-numeric-figure:  ;
  --tw-numeric-spacing:  ;
  --tw-numeric-fraction:  ;
  --tw-ring-inset:  ;
  --tw-ring-offset-width: 0px;
  --tw-ring-offset-color: #fff;
  --tw-ring-color: rgb(59 130 246 / 0.5);
  --tw-ring-offset-shadow: 0 0 #0000;
  --tw-ring-shadow: 0 0 #0000;
  --tw-shadow: 0 0 #0000;
  --tw-shadow-colored: 0 0 #0000;
  --tw-blur:  ;
  --tw-brightness:  ;
  --tw-contrast:  ;
  --tw-grayscale:  ;
  --tw-hue-rotate:  ;
  --tw-invert:  ;
  --tw-saturate:  ;
  --tw-sepia:  ;
  --tw-drop-shadow:  ;
  --tw-backdrop-blur:  ;
  --tw-backdrop-brightness:  ;
  --tw-backdrop-contrast:  ;
  --tw-backdrop-grayscale:  ;
  --tw-backdrop-hue-rotate:  ;
  --tw-backdrop-invert:  ;
  --tw-backdrop-opacity:  ;
  --tw-backdrop-saturate:  ;
  --tw-backdrop-sepia:  ;
  --tw-contain-size:  ;
  --tw-contain-layout:  ;
  --tw-contain-paint:  ;
  --tw-contain-style:  ;
}

::backdrop {
  --tw-border-spacing-x: 0;
  --tw-border-spacing-y: 0;
  --tw-translate-x: 0;
  --tw-translate-y: 0;
  --tw-rotate: 0;
  --tw-skew-x: 0;
  --tw-skew-y: 0;
  --tw-scale-x: 1;
  --tw-scale-y: 1;
  --tw-pan-x:  ;
  --tw-pan-y:  ;
  --tw-pinch-zoom:  ;
  --tw-scroll-snap-strictness: proximity;
  --tw-gradient-from-position:  ;
  --tw-gradient-via-position:  ;
  --tw-gradient-to-position:  ;
  --tw-ordinal:  ;
  --tw-slashed-zero:  ;
  --tw-numeric-figure:  ;
  --tw-numeric-spacing:  ;
  --tw-numeric-fraction:  ;
  --tw-ring-inset:  ;
  --tw-ring-offset-width: 0px;
  --tw-ring-offset-color: #fff;
  --tw-ring-color: rgb(59 130 246 / 0.5);
  --tw-ring-offset-shadow: 0 0 #0000;
  --tw-ring-shadow: 0 0 #0000;
  --tw-shadow: 0 0 #0000;
  --tw-shadow-colored: 0 0 #0000;
  --tw-blur:  ;
  --tw-brightness:  ;
  --tw-contrast:  ;
  --tw-grayscale:  ;
  --tw-hue-rotate:  ;
  --tw-invert:  ;
  --tw-saturate:  ;
  --tw-sepia:  ;
  --tw-drop-shadow:  ;
  --tw-backdrop-blur:  ;
  --tw-backdrop-brightness:  ;
  --tw-backdrop-contrast:  ;
  --tw-backdrop-grayscale:  ;
  --tw-backdrop-hue-rotate:  ;
  --tw-backdrop-invert:  ;
  --tw-backdrop-opacity:  ;
  --tw-backdrop-saturate:  ;
  --tw-backdrop-sepia:  ;
  --tw-contain-size:  ;
  --tw-contain-layout:  ;
  --tw-contain-paint:  ;
  --tw-contain-style:  ;
}

/* ! tailwindcss v3.4.17 | MIT License | https://tailwindcss.com */

/*
1. Prevent padding and border from affecting element width. (https://github.com/mozdevs/cssremedy/issues/4)
2. Allow adding a border to an element by just adding a border-width. (https://github.com/tailwindcss/tailwindcss/pull/116)
*/

*,
::before,
::after {
  box-sizing: border-box; /* 1 */
  border-width: 0; /* 2 */
  border-style: solid; /* 2 */
  border-color: #e5e7eb; /* 2 */
}

::before,
::after {
  --tw-content: '';
}

/*
1. Use a consistent sensible line-height in all browsers.
2. Prevent adjustments of font size after orientation changes in iOS.
3. Use a more readable tab size.
4. Use the user's configured `sans` font-family by default.
5. Use the user's configured `sans` font-feature-settings by default.
6. Use the user's configured `sans` font-variation-settings by default.
7. Disable tap highlights on iOS
*/

html,
:host {
  line-height: 1.5; /* 1 */
  -webkit-text-size-adjust: 100%; /* 2 */
  -moz-tab-size: 4; /* 3 */
  -o-tab-size: 4;
     tab-size: 4; /* 3 */
  font-family: Soleil-Regular, ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; /* 4 */
  font-feature-settings: normal; /* 5 */
  font-variation-settings: normal; /* 6 */
  -webkit-tap-highlight-color: transparent; /* 7 */
}

/*
1. Remove the margin in all browsers.
2. Inherit line-height from `html` so users can set them as a class directly on the `html` element.
*/

body {
  margin: 0; /* 1 */
  line-height: inherit; /* 2 */
}

/*
1. Add the correct height in Firefox.
2. Correct the inheritance of border color in Firefox. (https://bugzilla.mozilla.org/show_bug.cgi?id=190655)
3. Ensure horizontal rules are visible by default.
*/

hr {
  height: 0; /* 1 */
  color: inherit; /* 2 */
  border-top-width: 1px; /* 3 */
}

/*
Add the correct text decoration in Chrome, Edge, and Safari.
*/

abbr:where([title]) {
  -webkit-text-decoration: underline dotted;
          text-decoration: underline dotted;
}

/*
Remove the default font size and weight for headings.
*/

h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: inherit;
  font-weight: inherit;
}

/*
Reset links to optimize for opt-in styling instead of opt-out.
*/

a {
  color: inherit;
  text-decoration: inherit;
}

/*
Add the correct font weight in Edge and Safari.
*/

b,
strong {
  font-weight: bolder;
}

/*
1. Use the user's configured `mono` font-family by default.
2. Use the user's configured `mono` font-feature-settings by default.
3. Use the user's configured `mono` font-variation-settings by default.
4. Correct the odd `em` font sizing in all browsers.
*/

code,
kbd,
samp,
pre {
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace; /* 1 */
  font-feature-settings: normal; /* 2 */
  font-variation-settings: normal; /* 3 */
  font-size: 1em; /* 4 */
}

/*
Add the correct font size in all browsers.
*/

small {
  font-size: 80%;
}

/*
Prevent `sub` and `sup` elements from affecting the line height in all browsers.
*/

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/*
1. Remove text indentation from table contents in Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=999088, https://bugs.webkit.org/show_bug.cgi?id=201297)
2. Correct table border color inheritance in all Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=935729, https://bugs.webkit.org/show_bug.cgi?id=195016)
3. Remove gaps between table borders by default.
*/

table {
  text-indent: 0; /* 1 */
  border-color: inherit; /* 2 */
  border-collapse: collapse; /* 3 */
}

/*
1. Change the font styles in all browsers.
2. Remove the margin in Firefox and Safari.
3. Remove default padding in all browsers.
*/

button,
input,
optgroup,
select,
textarea {
  font-family: inherit; /* 1 */
  font-feature-settings: inherit; /* 1 */
  font-variation-settings: inherit; /* 1 */
  font-size: 100%; /* 1 */
  font-weight: inherit; /* 1 */
  line-height: inherit; /* 1 */
  letter-spacing: inherit; /* 1 */
  color: inherit; /* 1 */
  margin: 0; /* 2 */
  padding: 0; /* 3 */
}

/*
Remove the inheritance of text transform in Edge and Firefox.
*/

button,
select {
  text-transform: none;
}

/*
1. Correct the inability to style clickable types in iOS and Safari.
2. Remove default button styles.
*/

button,
input:where([type='button']),
input:where([type='reset']),
input:where([type='submit']) {
  -webkit-appearance: button; /* 1 */
  background-color: transparent; /* 2 */
  background-image: none; /* 2 */
}

/*
Use the modern Firefox focus style for all focusable elements.
*/

:-moz-focusring {
  outline: auto;
}

/*
Remove the additional `:invalid` styles in Firefox. (https://github.com/mozilla/gecko-dev/blob/2f9eacd9d3d995c937b4251a5557d95d494c9be1/layout/style/res/forms.css#L728-L737)
*/

:-moz-ui-invalid {
  box-shadow: none;
}

/*
Add the correct vertical alignment in Chrome and Firefox.
*/

progress {
  vertical-align: baseline;
}

/*
Correct the cursor style of increment and decrement buttons in Safari.
*/

::-webkit-inner-spin-button,
::-webkit-outer-spin-button {
  height: auto;
}

/*
1. Correct the odd appearance in Chrome and Safari.
2. Correct the outline style in Safari.
*/

[type='search'] {
  -webkit-appearance: textfield; /* 1 */
  outline-offset: -2px; /* 2 */
}

/*
Remove the inner padding in Chrome and Safari on macOS.
*/

::-webkit-search-decoration {
  -webkit-appearance: none;
}

/*
1. Correct the inability to style clickable types in iOS and Safari.
2. Change font properties to `inherit` in Safari.
*/

::-webkit-file-upload-button {
  -webkit-appearance: button; /* 1 */
  font: inherit; /* 2 */
}

/*
Add the correct display in Chrome and Safari.
*/

summary {
  display: list-item;
}

/*
Removes the default spacing and border for appropriate elements.
*/

blockquote,
dl,
dd,
h1,
h2,
h3,
h4,
h5,
h6,
hr,
figure,
p,
pre {
  margin: 0;
}

fieldset {
  margin: 0;
  padding: 0;
}

legend {
  padding: 0;
}

ol,
ul,
menu {
  list-style: none;
  margin: 0;
  padding: 0;
}

/*
Reset default styling for dialogs.
*/

dialog {
  padding: 0;
}

/*
Prevent resizing textareas horizontally by default.
*/

textarea {
  resize: vertical;
}

/*
1. Reset the default placeholder opacity in Firefox. (https://github.com/tailwindlabs/tailwindcss/issues/3300)
2. Set the default placeholder color to the user's configured gray 400 color.
*/

input::-moz-placeholder, textarea::-moz-placeholder {
  opacity: 1; /* 1 */
  color: #9ca3af; /* 2 */
}

input::placeholder,
textarea::placeholder {
  opacity: 1; /* 1 */
  color: #9ca3af; /* 2 */
}

/*
Set the default cursor for buttons.
*/

button,
[role="button"] {
  cursor: pointer;
}

/*
Make sure disabled buttons don't get the pointer cursor.
*/

:disabled {
  cursor: default;
}

/*
1. Make replaced elements `display: block` by default. (https://github.com/mozdevs/cssremedy/issues/14)
2. Add `vertical-align: middle` to align replaced elements more sensibly by default. (https://github.com/jensimmons/cssremedy/issues/14#issuecomment-634934210)
   This can trigger a poorly considered lint error in some tools but is included by design.
*/

img,
svg,
video,
canvas,
audio,
iframe,
embed,
object {
  display: block; /* 1 */
  vertical-align: middle; /* 2 */
}

/*
Constrain images and videos to the parent width and preserve their intrinsic aspect ratio. (https://github.com/mozdevs/cssremedy/issues/14)
*/

img,
video {
  max-width: 100%;
  height: auto;
}

/* Make elements with the HTML hidden attribute stay hidden by default */

[hidden]:where(:not([hidden="until-found"])) {
  display: none;
}

[type='text'],[type='email'],[type='url'],[type='password'],[type='number'],[type='date'],[type='datetime-local'],[type='month'],[type='search'],[type='tel'],[type='time'],[type='week'],[multiple],textarea,select {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background-color: #fff;
  border-color: #6b7280;
  border-width: 1px;
  border-radius: 0px;
  padding-top: 0.5rem;
  padding-right: 0.75rem;
  padding-bottom: 0.5rem;
  padding-left: 0.75rem;
  font-size: 1rem;
  line-height: 1.5rem;
  --tw-shadow: 0 0 #0000;
}

[type='text']:focus, [type='email']:focus, [type='url']:focus, [type='password']:focus, [type='number']:focus, [type='date']:focus, [type='datetime-local']:focus, [type='month']:focus, [type='search']:focus, [type='tel']:focus, [type='time']:focus, [type='week']:focus, [multiple]:focus, textarea:focus, select:focus {
  outline: 2px solid transparent;
  outline-offset: 2px;
  --tw-ring-inset: var(--tw-empty,/*!*/ /*!*/);
  --tw-ring-offset-width: 0px;
  --tw-ring-offset-color: #fff;
  --tw-ring-color: #2563eb;
  --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  border-color: #2563eb;
}

input::-moz-placeholder, textarea::-moz-placeholder {
  color: #6b7280;
  opacity: 1;
}

input::placeholder,textarea::placeholder {
  color: #6b7280;
  opacity: 1;
}

::-webkit-datetime-edit-fields-wrapper {
  padding: 0;
}

::-webkit-date-and-time-value {
  min-height: 1.5em;
}

::-webkit-datetime-edit,::-webkit-datetime-edit-year-field,::-webkit-datetime-edit-month-field,::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute-field,::-webkit-datetime-edit-second-field,::-webkit-datetime-edit-millisecond-field,::-webkit-datetime-edit-meridiem-field {
  padding-top: 0;
  padding-bottom: 0;
}

select {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3e%3c/svg%3e");
  background-position: right 0.5rem center;
  background-repeat: no-repeat;
  background-size: 1.5em 1.5em;
  padding-right: 2.5rem;
  -webkit-print-color-adjust: exact;
          color-adjust: exact;
}

[multiple] {
  background-image: initial;
  background-position: initial;
  background-repeat: unset;
  background-size: initial;
  padding-right: 0.75rem;
  -webkit-print-color-adjust: unset;
          color-adjust: unset;
}

[type='checkbox'],[type='radio'] {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  padding: 0;
  -webkit-print-color-adjust: exact;
          color-adjust: exact;
  display: inline-block;
  vertical-align: middle;
  background-origin: border-box;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  flex-shrink: 0;
  height: 1rem;
  width: 1rem;
  color: #2563eb;
  background-color: #fff;
  border-color: #6b7280;
  border-width: 1px;
  --tw-shadow: 0 0 #0000;
}

[type='checkbox'] {
  border-radius: 0px;
}

[type='radio'] {
  border-radius: 100%;
}

[type='checkbox']:focus,[type='radio']:focus {
  outline: 2px solid transparent;
  outline-offset: 2px;
  --tw-ring-inset: var(--tw-empty,/*!*/ /*!*/);
  --tw-ring-offset-width: 2px;
  --tw-ring-offset-color: #fff;
  --tw-ring-color: #2563eb;
  --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
}

[type='checkbox']:checked,[type='radio']:checked {
  border-color: transparent;
  background-color: currentColor;
  background-size: 100% 100%;
  background-position: center;
  background-repeat: no-repeat;
}

[type='checkbox']:checked {
  background-image: url("data:image/svg+xml,%3csvg viewBox='0 0 16 16' fill='white' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M12.207 4.793a1 1 0 010 1.414l-5 5a1 1 0 01-1.414 0l-2-2a1 1 0 011.414-1.414L6.5 9.086l4.293-4.293a1 1 0 011.414 0z'/%3e%3c/svg%3e");
}

[type='radio']:checked {
  background-image: url("data:image/svg+xml,%3csvg viewBox='0 0 16 16' fill='white' xmlns='http://www.w3.org/2000/svg'%3e%3ccircle cx='8' cy='8' r='3'/%3e%3c/svg%3e");
}

[type='checkbox']:checked:hover,[type='checkbox']:checked:focus,[type='radio']:checked:hover,[type='radio']:checked:focus {
  border-color: transparent;
  background-color: currentColor;
}

[type='checkbox']:indeterminate {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 16 16'%3e%3cpath stroke='white' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M4 8h8'/%3e%3c/svg%3e");
  border-color: transparent;
  background-color: currentColor;
  background-size: 100% 100%;
  background-position: center;
  background-repeat: no-repeat;
}

[type='checkbox']:indeterminate:hover,[type='checkbox']:indeterminate:focus {
  border-color: transparent;
  background-color: currentColor;
}

[type='file'] {
  background: unset;
  border-color: inherit;
  border-width: 0;
  border-radius: 0;
  padding: 0;
  font-size: unset;
  line-height: inherit;
}

[type='file']:focus {
  outline: 1px auto -webkit-focus-ring-color;
}

.container {
  width: 100%;
  margin-right: auto;
  margin-left: auto;
  padding-right: 1rem;
  padding-left: 1rem;
}

@media (min-width: 640px) {

  .container {
    max-width: 640px;
  }
}

@media (min-width: 650px) {

  .container {
    max-width: 650px;
  }
}

@media (min-width: 660px) {

  .container {
    max-width: 660px;
  }
}

@media (min-width: 670px) {

  .container {
    max-width: 670px;
  }
}

@media (min-width: 680px) {

  .container {
    max-width: 680px;
  }
}

@media (min-width: 690px) {

  .container {
    max-width: 690px;
  }
}

@media (min-width: 700px) {

  .container {
    max-width: 700px;
  }
}

@media (min-width: 710px) {

  .container {
    max-width: 710px;
  }
}

@media (min-width: 720px) {

  .container {
    max-width: 720px;
  }
}

@media (min-width: 730px) {

  .container {
    max-width: 730px;
  }
}

@media (min-width: 740px) {

  .container {
    max-width: 740px;
  }
}

@media (min-width: 750px) {

  .container {
    max-width: 750px;
  }
}

@media (min-width: 760px) {

  .container {
    max-width: 760px;
  }
}

@media (min-width: 770px) {

  .container {
    max-width: 770px;
  }
}

@media (min-width: 780px) {

  .container {
    max-width: 780px;
  }
}

@media (min-width: 790px) {

  .container {
    max-width: 790px;
  }
}

@media (min-width: 800px) {

  .container {
    max-width: 800px;
  }
}

@media (min-width: 810px) {

  .container {
    max-width: 810px;
  }
}

@media (min-width: 820px) {

  .container {
    max-width: 820px;
  }
}

@media (min-width: 830px) {

  .container {
    max-width: 830px;
  }
}

@media (min-width: 840px) {

  .container {
    max-width: 840px;
  }
}

@media (min-width: 850px) {

  .container {
    max-width: 850px;
  }
}

@media (min-width: 860px) {

  .container {
    max-width: 860px;
  }
}

@media (min-width: 870px) {

  .container {
    max-width: 870px;
  }
}

@media (min-width: 880px) {

  .container {
    max-width: 880px;
  }
}

@media (min-width: 890px) {

  .container {
    max-width: 890px;
  }
}

@media (min-width: 900px) {

  .container {
    max-width: 900px;
  }
}

@media (min-width: 910px) {

  .container {
    max-width: 910px;
  }
}

@media (min-width: 920px) {

  .container {
    max-width: 920px;
  }
}

@media (min-width: 930px) {

  .container {
    max-width: 930px;
  }
}

@media (min-width: 940px) {

  .container {
    max-width: 940px;
  }
}

@media (min-width: 950px) {

  .container {
    max-width: 950px;
  }
}

@media (min-width: 960px) {

  .container {
    max-width: 960px;
  }
}

@media (min-width: 970px) {

  .container {
    max-width: 970px;
  }
}

@media (min-width: 980px) {

  .container {
    max-width: 980px;
  }
}

@media (min-width: 990px) {

  .container {
    max-width: 990px;
  }
}

@media (min-width: 1000px) {

  .container {
    max-width: 1000px;
  }
}

@media (min-width: 1010px) {

  .container {
    max-width: 1010px;
  }
}

@media (min-width: 1020px) {

  .container {
    max-width: 1020px;
  }
}

@media (min-width: 1024px) {

  .container {
    max-width: 1024px;
  }
}

@media (min-width: 1030px) {

  .container {
    max-width: 1030px;
  }
}

@media (min-width: 1040px) {

  .container {
    max-width: 1040px;
  }
}

@media (min-width: 1050px) {

  .container {
    max-width: 1050px;
  }
}

@media (min-width: 1060px) {

  .container {
    max-width: 1060px;
  }
}

@media (min-width: 1070px) {

  .container {
    max-width: 1070px;
  }
}

@media (min-width: 1080px) {

  .container {
    max-width: 1080px;
  }
}

@media (min-width: 1090px) {

  .container {
    max-width: 1090px;
  }
}

@media (min-width: 1100px) {

  .container {
    max-width: 1100px;
  }
}

@media (min-width: 1110px) {

  .container {
    max-width: 1110px;
  }
}

@media (min-width: 1120px) {

  .container {
    max-width: 1120px;
  }
}

@media (min-width: 1130px) {

  .container {
    max-width: 1130px;
  }
}

@media (min-width: 1140px) {

  .container {
    max-width: 1140px;
  }
}

@media (min-width: 1150px) {

  .container {
    max-width: 1150px;
  }
}

@media (min-width: 1160px) {

  .container {
    max-width: 1160px;
  }
}

@media (min-width: 1170px) {

  .container {
    max-width: 1170px;
  }
}

@media (min-width: 1180px) {

  .container {
    max-width: 1180px;
  }
}

@media (min-width: 1190px) {

  .container {
    max-width: 1190px;
  }
}

@media (min-width: 1200px) {

  .container {
    max-width: 1200px;
  }
}

@media (min-width: 1280px) {

  .container {
    max-width: 1280px;
  }
}

@media (min-width: 1536px) {

  .container {
    max-width: 1536px;
  }
}

.aspect-h-9 {
  --tw-aspect-h: 9;
}

.aspect-w-16 {
  position: relative;
  padding-bottom: calc(var(--tw-aspect-h) / var(--tw-aspect-w) * 100%);
  --tw-aspect-w: 16;
}

.aspect-w-16 > * {
  position: absolute;
  height: 100%;
  width: 100%;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}

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

.pointer-events-none {
  pointer-events: none;
}

.pointer-events-auto {
  pointer-events: auto;
}

.collapse {
  visibility: collapse;
}

.fixed {
  position: fixed;
}

.absolute {
  position: absolute;
}

.relative {
  position: relative;
}

.inset-0 {
  inset: 0px;
}

.inset-y-0 {
  top: 0px;
  bottom: 0px;
}

.-left-\[100vw\] {
  left: -100vw;
}

.-right-\[100vw\] {
  right: -100vw;
}

.-top-1 {
  top: -0.25rem;
}

.-top-7 {
  top: -1.75rem;
}

.bottom-96 {
  bottom: 24rem;
}

.right-0 {
  right: 0px;
}

.top-1 {
  top: 0.25rem;
}

.z-10 {
  z-index: 10;
}

.z-20 {
  z-index: 20;
}

.z-30 {
  z-index: 30;
}

.z-50 {
  z-index: 50;
}

.z-\[60\] {
  z-index: 60;
}

.mx-auto {
  margin-left: auto;
  margin-right: auto;
}

.my-2 {
  margin-top: 0.5rem;
  margin-bottom: 0.5rem;
}

.my-8 {
  margin-top: 2rem;
  margin-bottom: 2rem;
}

.-mr-6 {
  margin-right: -1.5rem;
}

.-mt-6 {
  margin-top: -1.5rem;
}

.mb-1 {
  margin-bottom: 0.25rem;
}

.mb-2 {
  margin-bottom: 0.5rem;
}

.mb-24 {
  margin-bottom: 6rem;
}

.mb-4 {
  margin-bottom: 1rem;
}

.mb-6 {
  margin-bottom: 1.5rem;
}

.ml-1 {
  margin-left: 0.25rem;
}

.ml-3 {
  margin-left: 0.75rem;
}

.ml-32 {
  margin-left: 8rem;
}

.ml-4 {
  margin-left: 1rem;
}

.mr-1 {
  margin-right: 0.25rem;
}

.mr-2 {
  margin-right: 0.5rem;
}

.mr-3 {
  margin-right: 0.75rem;
}

.mr-4 {
  margin-right: 1rem;
}

.mr-auto {
  margin-right: auto;
}

.mt-1 {
  margin-top: 0.25rem;
}

.mt-12 {
  margin-top: 3rem;
}

.mt-2 {
  margin-top: 0.5rem;
}

.mt-3 {
  margin-top: 0.75rem;
}

.mt-4 {
  margin-top: 1rem;
}

.mt-6 {
  margin-top: 1.5rem;
}

.mt-8 {
  margin-top: 2rem;
}

.block {
  display: block;
}

.inline-block {
  display: inline-block;
}

.flex {
  display: flex;
}

.\!inline-flex {
  display: inline-flex !important;
}

.inline-flex {
  display: inline-flex;
}

.grid {
  display: grid;
}

.hidden {
  display: none;
}

.h-0 {
  height: 0px;
}

.h-10 {
  height: 2.5rem;
}

.h-12 {
  height: 3rem;
}

.h-4 {
  height: 1rem;
}

.h-5 {
  height: 1.25rem;
}

.h-6 {
  height: 1.5rem;
}

.h-7 {
  height: 1.75rem;
}

.h-8 {
  height: 2rem;
}

.h-9 {
  height: 2.25rem;
}

.h-\[900px\] {
  height: 900px;
}

.h-full {
  height: 100%;
}

.max-h-\[4\.5rem\] {
  max-height: 4.5rem;
}

.max-h-\[60vh\] {
  max-height: 60vh;
}

.max-h-\[90vh\] {
  max-height: 90vh;
}

.min-h-0 {
  min-height: 0px;
}

.min-h-\[4rem\] {
  min-height: 4rem;
}

.min-h-\[70vh\] {
  min-height: 70vh;
}

.min-h-\[min\(80vh\)\] {
  min-height: min(80vh);
}

.min-h-screen {
  min-height: 100vh;
}

.\!w-full {
  width: 100% !important;
}

.w-10 {
  width: 2.5rem;
}

.w-12 {
  width: 3rem;
}

.w-32 {
  width: 8rem;
}

.w-5 {
  width: 1.25rem;
}

.w-6 {
  width: 1.5rem;
}

.w-8 {
  width: 2rem;
}

.w-9 {
  width: 2.25rem;
}

.w-96 {
  width: 24rem;
}

.w-\[8rem\] {
  width: 8rem;
}

.w-auto {
  width: auto;
}

.w-full {
  width: 100%;
}

.w-screen {
  width: 100vw;
}

.min-w-\[1rem\] {
  min-width: 1rem;
}

.min-w-\[2rem\] {
  min-width: 2rem;
}

.min-w-\[6rem\] {
  min-width: 6rem;
}

.max-w-2xl {
  max-width: 42rem;
}

.max-w-\[1200px\] {
  max-width: 1200px;
}

.max-w-\[300px\] {
  max-width: 300px;
}

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

.flex-1 {
  flex: 1 1 0%;
}

.flex-auto {
  flex: 1 1 auto;
}

.flex-initial {
  flex: 0 1 auto;
}

.flex-shrink-0 {
  flex-shrink: 0;
}

.shrink-0 {
  flex-shrink: 0;
}

.flex-grow {
  flex-grow: 1;
}

.flex-grow-\[0\.5\] {
  flex-grow: 0.5;
}

.flex-grow-\[2\] {
  flex-grow: 2;
}

.grow-0 {
  flex-grow: 0;
}

.translate-x-0 {
  --tw-translate-x: 0px;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.translate-x-full {
  --tw-translate-x: 100%;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.rotate-180 {
  --tw-rotate: 180deg;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.rotate-90 {
  --tw-rotate: 90deg;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.transform {
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

@keyframes pulse {

  50% {
    opacity: .5;
  }
}

.animate-pulse {
  animation: pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;
}

.cursor-not-allowed {
  cursor: not-allowed;
}

.cursor-pointer {
  cursor: pointer;
}

.select-none {
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
}

.list-disc {
  list-style-type: disc;
}

.flex-col {
  flex-direction: column;
}

.items-start {
  align-items: flex-start;
}

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

.justify-start {
  justify-content: flex-start;
}

.justify-end {
  justify-content: flex-end;
}

.justify-center {
  justify-content: center;
}

.justify-between {
  justify-content: space-between;
}

.gap-2 {
  gap: 0.5rem;
}

.gap-4 {
  gap: 1rem;
}

.space-x-1 > :not([hidden]) ~ :not([hidden]) {
  --tw-space-x-reverse: 0;
  margin-right: calc(0.25rem * var(--tw-space-x-reverse));
  margin-left: calc(0.25rem * calc(1 - var(--tw-space-x-reverse)));
}

.space-x-2 > :not([hidden]) ~ :not([hidden]) {
  --tw-space-x-reverse: 0;
  margin-right: calc(0.5rem * var(--tw-space-x-reverse));
  margin-left: calc(0.5rem * calc(1 - var(--tw-space-x-reverse)));
}

.space-x-4 > :not([hidden]) ~ :not([hidden]) {
  --tw-space-x-reverse: 0;
  margin-right: calc(1rem * var(--tw-space-x-reverse));
  margin-left: calc(1rem * calc(1 - var(--tw-space-x-reverse)));
}

.space-y-4 > :not([hidden]) ~ :not([hidden]) {
  --tw-space-y-reverse: 0;
  margin-top: calc(1rem * calc(1 - var(--tw-space-y-reverse)));
  margin-bottom: calc(1rem * var(--tw-space-y-reverse));
}

.space-y-6 > :not([hidden]) ~ :not([hidden]) {
  --tw-space-y-reverse: 0;
  margin-top: calc(1.5rem * calc(1 - var(--tw-space-y-reverse)));
  margin-bottom: calc(1.5rem * var(--tw-space-y-reverse));
}

.divide-y > :not([hidden]) ~ :not([hidden]) {
  --tw-divide-y-reverse: 0;
  border-top-width: calc(1px * calc(1 - var(--tw-divide-y-reverse)));
  border-bottom-width: calc(1px * var(--tw-divide-y-reverse));
}

.divide-gray-200 > :not([hidden]) ~ :not([hidden]) {
  --tw-divide-opacity: 1;
  border-color: rgb(229 231 235 / var(--tw-divide-opacity, 1));
}

.self-end {
  align-self: flex-end;
}

.overflow-hidden {
  overflow: hidden;
}

.overflow-visible {
  overflow: visible;
}

.overflow-y-auto {
  overflow-y: auto;
}

.overflow-y-scroll {
  overflow-y: scroll;
}

.whitespace-pre-line {
  white-space: pre-line;
}

.rounded {
  border-radius: 0.25rem;
}

.rounded-md {
  border-radius: 0.375rem;
}

.rounded-xl {
  border-radius: 0.75rem;
}

.border {
  border-width: 1px;
}

.border-b {
  border-bottom-width: 1px;
}

.border-b-2 {
  border-bottom-width: 2px;
}

.border-t {
  border-top-width: 1px;
}

.border-black {
  --tw-border-opacity: 1;
  border-color: rgb(0 0 0 / var(--tw-border-opacity, 1));
}

.border-gray-300 {
  --tw-border-opacity: 1;
  border-color: rgb(209 213 219 / var(--tw-border-opacity, 1));
}

.border-red-500 {
  --tw-border-opacity: 1;
  border-color: rgb(239 68 68 / var(--tw-border-opacity, 1));
}

.border-red-600 {
  --tw-border-opacity: 1;
  border-color: rgb(220 38 38 / var(--tw-border-opacity, 1));
}

.border-red-700 {
  --tw-border-opacity: 1;
  border-color: rgb(185 28 28 / var(--tw-border-opacity, 1));
}

.border-transparent {
  border-color: transparent;
}

.border-white {
  --tw-border-opacity: 1;
  border-color: rgb(255 255 255 / var(--tw-border-opacity, 1));
}

.\!bg-transparent {
  background-color: transparent !important;
}

.\!bg-white {
  --tw-bg-opacity: 1 !important;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1)) !important;
}

.bg-\[color\:var\(--current-stripe-color\)\] {
  background-color: var(--current-stripe-color);
}

.bg-\[color\:var\(--current-stripe-textcolor\)\] {
  background-color: var(--current-stripe-textcolor);
}

.bg-black {
  --tw-bg-opacity: 1;
  background-color: rgb(0 0 0 / var(--tw-bg-opacity, 1));
}

.bg-gray-200 {
  --tw-bg-opacity: 1;
  background-color: rgb(229 231 235 / var(--tw-bg-opacity, 1));
}

.bg-gray-500 {
  --tw-bg-opacity: 1;
  background-color: rgb(107 114 128 / var(--tw-bg-opacity, 1));
}

.bg-gray-800 {
  --tw-bg-opacity: 1;
  background-color: rgb(31 41 55 / var(--tw-bg-opacity, 1));
}

.bg-white {
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
}

.\!bg-opacity-40 {
  --tw-bg-opacity: 0.4 !important;
}

.\!bg-opacity-50 {
  --tw-bg-opacity: 0.5 !important;
}

.bg-opacity-50 {
  --tw-bg-opacity: 0.5;
}

.bg-opacity-80 {
  --tw-bg-opacity: 0.8;
}

.bg-cover {
  background-size: cover;
}

.bg-center {
  background-position: center;
}

.bg-no-repeat {
  background-repeat: no-repeat;
}

.fill-black {
  fill: #000;
}

.fill-white {
  fill: #fff;
}

.stroke-current {
  stroke: currentColor;
}

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

.object-cover {
  -o-object-fit: cover;
     object-fit: cover;
}

.object-left {
  -o-object-position: left;
     object-position: left;
}

.p-12 {
  padding: 3rem;
}

.p-2 {
  padding: 0.5rem;
}

.p-4 {
  padding: 1rem;
}

.p-8 {
  padding: 2rem;
}

.\!py-\[0\.7rem\] {
  padding-top: 0.7rem !important;
  padding-bottom: 0.7rem !important;
}

.px-2 {
  padding-left: 0.5rem;
  padding-right: 0.5rem;
}

.px-4 {
  padding-left: 1rem;
  padding-right: 1rem;
}

.px-6 {
  padding-left: 1.5rem;
  padding-right: 1.5rem;
}

.py-10 {
  padding-top: 2.5rem;
  padding-bottom: 2.5rem;
}

.py-4 {
  padding-top: 1rem;
  padding-bottom: 1rem;
}

.py-6 {
  padding-top: 1.5rem;
  padding-bottom: 1.5rem;
}

.py-8 {
  padding-top: 2rem;
  padding-bottom: 2rem;
}

.pb-0 {
  padding-bottom: 0px;
}

.pb-1 {
  padding-bottom: 0.25rem;
}

.pb-12 {
  padding-bottom: 3rem;
}

.pb-16 {
  padding-bottom: 4rem;
}

.pb-8 {
  padding-bottom: 2rem;
}

.pl-10 {
  padding-left: 2.5rem;
}

.pl-32 {
  padding-left: 8rem;
}

.pl-8 {
  padding-left: 2rem;
}

.pr-20 {
  padding-right: 5rem;
}

.pr-4 {
  padding-right: 1rem;
}

.pr-8 {
  padding-right: 2rem;
}

.pt-1 {
  padding-top: 0.25rem;
}

.pt-2 {
  padding-top: 0.5rem;
}

.pt-4 {
  padding-top: 1rem;
}

.pt-8 {
  padding-top: 2rem;
}

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

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

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

.font-soleil {
  font-family: Soleil-Regular, ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
}

.font-soleil_bold {
  font-family: Soleil-Bold, ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
}

.font-soleil_light {
  font-family: Soleil-Light, ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
}

.text-2xl {
  font-size: clamp(1.601806640625rem, calc(1.601806640625rem + (2.1599999999999997 - 1.601806640625) * ((100vw - 20rem) / (96 - 20))), 2.1599999999999997rem);
}

.text-4xl {
  font-size: clamp(2.0272865295410156rem, calc(2.0272865295410156rem + (3.1103999999999994 - 2.0272865295410156) * ((100vw - 20rem) / (96 - 20))), 3.1103999999999994rem);
}

.text-base {
  font-size: clamp(1.125rem, calc(1.125rem + (1.25 - 1.125) * ((100vw - 20rem) / (96 - 20))), 1.25rem);
}

.text-lg {
  font-size: clamp(1.265625rem, calc(1.265625rem + (1.5 - 1.265625) * ((100vw - 20rem) / (96 - 20))), 1.5rem);
}

.text-sm {
  font-size: clamp(1rem, calc(1rem + (1.0416666666666667 - 1) * ((100vw - 20rem) / (96 - 20))), 1.0416666666666667rem);
}

.text-xs {
  font-size: clamp(0.8888888888888888rem, calc(0.8888888888888888rem + (0.8680555555555557 - 0.8888888888888888) * ((100vw - 20rem) / (96 - 20))), 0.8680555555555557rem);
}

.font-bold {
  font-weight: 700;
}

.font-medium {
  font-weight: 500;
}

.font-semibold {
  font-weight: 600;
}

.uppercase {
  text-transform: uppercase;
}

.leading-5 {
  line-height: 1.25rem;
}

.leading-none {
  line-height: 1;
}

.leading-snug {
  line-height: 1.375;
}

.leading-tight {
  line-height: 1.25;
}

.\!text-black {
  --tw-text-opacity: 1 !important;
  color: rgb(0 0 0 / var(--tw-text-opacity, 1)) !important;
}

.\!text-white {
  --tw-text-opacity: 1 !important;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1)) !important;
}

.text-\[color\:var\(--current-stripe-color\)\] {
  color: var(--current-stripe-color);
}

.text-\[color\:var\(--current-stripe-textcolor\)\] {
  color: var(--current-stripe-textcolor);
}

.text-black {
  --tw-text-opacity: 1;
  color: rgb(0 0 0 / var(--tw-text-opacity, 1));
}

.text-gray-400 {
  --tw-text-opacity: 1;
  color: rgb(156 163 175 / var(--tw-text-opacity, 1));
}

.text-gray-500 {
  --tw-text-opacity: 1;
  color: rgb(107 114 128 / var(--tw-text-opacity, 1));
}

.text-gray-600 {
  --tw-text-opacity: 1;
  color: rgb(75 85 99 / var(--tw-text-opacity, 1));
}

.text-gray-800 {
  --tw-text-opacity: 1;
  color: rgb(31 41 55 / var(--tw-text-opacity, 1));
}

.text-red-500 {
  --tw-text-opacity: 1;
  color: rgb(239 68 68 / var(--tw-text-opacity, 1));
}

.text-red-700 {
  --tw-text-opacity: 1;
  color: rgb(185 28 28 / var(--tw-text-opacity, 1));
}

.text-white {
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

.underline {
  -webkit-text-decoration-line: underline;
          text-decoration-line: underline;
}

.opacity-0 {
  opacity: 0;
}

.opacity-10 {
  opacity: 0.1;
}

.opacity-100 {
  opacity: 1;
}

.opacity-40 {
  opacity: 0.4;
}

.opacity-50 {
  opacity: 0.5;
}

.opacity-60 {
  opacity: 0.6;
}

.opacity-75 {
  opacity: 0.75;
}

.shadow-lg {
  --tw-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);
  --tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.shadow-xl {
  --tw-shadow: 0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1);
  --tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.blur {
  --tw-blur: blur(8px);
  filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
}

.drop-shadow-lg {
  --tw-drop-shadow: drop-shadow(0 10px 8px rgb(0 0 0 / 0.04)) drop-shadow(0 4px 3px rgb(0 0 0 / 0.1));
  filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
}

.invert {
  --tw-invert: invert(100%);
  filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
}

.filter {
  filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
}

.transition {
  transition-property: color, background-color, border-color, fill, stroke, opacity, box-shadow, transform, filter, -webkit-text-decoration-color, -webkit-backdrop-filter;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter, -webkit-text-decoration-color, -webkit-backdrop-filter;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}

.transition-all {
  transition-property: all;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}

.transition-opacity {
  transition-property: opacity;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}

.transition-transform {
  transition-property: transform;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}

.duration-1000 {
  transition-duration: 1000ms;
}

.duration-150 {
  transition-duration: 150ms;
}

.duration-200 {
  transition-duration: 200ms;
}

.duration-500 {
  transition-duration: 500ms;
}

.ease-in {
  transition-timing-function: cubic-bezier(0.4, 0, 1, 1);
}

.ease-in-out {
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}

.ease-linear {
  transition-timing-function: linear;
}

.my_container {
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto;
  }

/* @import "./_fonts.pcss"; */

/* @import "../node_modules/nprogress/nprogress.css"; */

/* LiveView specific classes for your customizations */

.phx-no-feedback.invalid-feedback,
.phx-no-feedback .invalid-feedback {
  display: none;
}

.phx-click-loading {
  /* opacity: 0.5;
   transition: opacity 1s ease-out; */
}

@keyframes bounce {

  0%, 100% {
    transform: translateY(-25%);
    animation-timing-function: cubic-bezier(0.8,0,1,1);
  }

  50% {
    transform: none;
    animation-timing-function: cubic-bezier(0,0,0.2,1);
  }
}

.phx-click-loading {
  animation: bounce 1s infinite;
}

.phx-disconnected {
  cursor: wait;
  opacity: 0.2;
  transition: opacity 1s ease-out;
  z-index: 1000;
}

.phx-disconnected * {
  pointer-events: none;
}

/* alpinejs: */

[x-cloak] {
  display: none !important;
}

/* material design input ----------------------------------- start */

/* liveview ----------------------------------- start */

.while-submitting {
  display: none;
}

.inputs {
  display: block;
}

.phx-submit-loading .while-submitting, .phx-change-loading .while-submitting {
    display: block;
  }

.phx-submit-loading .inputs, .phx-change-loading .inputs {
    display: none;
  }

/* liveview ----------------------------------- end */

.btn, .klaro .cm-btn {
  background-color: var(--current-stripe-textcolor);
  padding-left: 0.5rem;
  padding-right: 0.5rem;
  padding-top: 0.5rem;
  padding-bottom: 0.25rem;
  text-transform: uppercase;
  line-height: 1;
  color: var(--current-stripe-color);
}

.btn-outline {
  border-width: 1px;
  border-color: var(--current-stripe-textcolor);
  background-color: transparent;
  padding-left: 0.5rem;
  padding-right: 0.5rem;
  padding-top: 0.5rem;
  padding-bottom: 0.25rem;
  text-transform: uppercase;
  line-height: 1;
  color: var(--current-stripe-textcolor);
  font-size: 1rem;

  /* @apply px-4 py-2 text-gray-700 bg-transparent rounded border border-gray-700 transition duration-300 ease-in-out focus:outline-none focus:ring hover:bg-gray-200 hover:text-gray-900; */
}

.btn-primary {
  margin-right: 0.25rem;
  border-radius: 0.25rem;
  --tw-bg-opacity: 1;
  background-color: rgb(99 102 241 / var(--tw-bg-opacity, 1));
  padding-left: 1rem;
  padding-right: 1rem;
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
  transition-property: color, background-color, border-color, fill, stroke, opacity, box-shadow, transform, filter, -webkit-text-decoration-color, -webkit-backdrop-filter;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter, -webkit-text-decoration-color, -webkit-backdrop-filter;
  transition-duration: 300ms;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}

.btn-primary .loading-indicator {
  --tw-invert: invert(100%);
  filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
}

body.contrastmode .stripe-hl:not(.cm-black).btn-primary,
    body.contrastmode .stripe-hl:not(.cm-black) > .btn-primary {
  --tw-text-opacity: 1 !important;
  color: rgb(0 0 0 / var(--tw-text-opacity, 1)) !important;
}

body.contrastmode .is-popup .btn-primary {
  --tw-text-opacity: 1 !important;
  color: rgb(0 0 0 / var(--tw-text-opacity, 1)) !important;
}

.btn-primary:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(79 70 229 / var(--tw-bg-opacity, 1));
}

.btn-primary:focus {
  outline: 2px solid transparent;
  outline-offset: 2px;
  --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
}

.btn-outline-primary {
  border-radius: 0.25rem;
  border-width: 1px;
  --tw-border-opacity: 1;
  border-color: rgb(67 56 202 / var(--tw-border-opacity, 1));
  padding-left: 1rem;
  padding-right: 1rem;
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
  --tw-text-opacity: 1;
  color: rgb(67 56 202 / var(--tw-text-opacity, 1));
  transition-property: color, background-color, border-color, fill, stroke, opacity, box-shadow, transform, filter, -webkit-text-decoration-color, -webkit-backdrop-filter;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter, -webkit-text-decoration-color, -webkit-backdrop-filter;
  transition-duration: 300ms;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}

.btn-outline-primary:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(67 56 202 / var(--tw-bg-opacity, 1));
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

.btn-outline-primary:focus {
  outline: 2px solid transparent;
  outline-offset: 2px;
  --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
}

*[disabled] {
  cursor: not-allowed;
  opacity: 0.4;
}

.bigpic {
  transition: all 1s linear;
}

.tpl-intro .paletteicons {
  display: none;
}

.paletteicons {
  display: flex;
}

.paletteicons > a {
    display: block;
  }

.paletteicons > a > span {
  height: 7px;
  width: 8.4px;
}

@media (max-width: 639px) {

  .paletteicons > a > span {
    height: 1.375vw;
    width: 1.65vw;
  }
}

.paletteicons > a > span {
      display: block;
      background-color: var(--current-stripe-color);
    }

@media (min-width: 640px) {

  header .iconbar,
header .contrasticon,
header .ticketicon {
    height: 28px;
  }
}

@media (max-width: 639px) {

  header .iconbar,
header .contrasticon,
header .ticketicon {
    height: 5.5vw;
  }
}

header .ticketicon {
  width: auto;
}

@media (max-width: 639px) {

  header .ticketicon {
    margin-right: 2.8vw;
  }
}

header .contrasticon {
  width: auto;
}

@media (max-width: 639px) {

  .intro-palettes-wrap {
    padding-left: 0px !important;
    padding-right: 0px !important;
  }
}

.intro-palettes {
  display: flex;
  align-items: flex-start;
  justify-content: stretch;
}

@media (any-hover: hover) {
        .intro-palettes > a:not(.cloned):hover > span {
    height: 4rem;
    --tw-text-opacity: 1;
    color: rgb(255 255 255 / var(--tw-text-opacity, 1));
  }

.intro-palettes > a:not(.cloned):hover > span .loading-indicator {
    --tw-invert: invert(100%);
    filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
  }

body.contrastmode .stripe-hl:not(.cm-black).intro-palettes > a:not(.cloned):hover > span,
    body.contrastmode .stripe-hl:not(.cm-black) > .intro-palettes > a:not(.cloned):hover > span {
    --tw-text-opacity: 1 !important;
    color: rgb(0 0 0 / var(--tw-text-opacity, 1)) !important;
  }

body.contrastmode .is-popup .intro-palettes > a:not(.cloned):hover > span {
    --tw-text-opacity: 1 !important;
    color: rgb(0 0 0 / var(--tw-text-opacity, 1)) !important;
  }
        @media (max-width: 639px) {

    .intro-palettes > a:not(.cloned):hover > span {
      height: 15vw;
    }
  }
          @media (min-width: 840px) {

    .intro-palettes-small .intro-palettes > a:not(.cloned):hover > span {
      height: 3rem;
    }
  }

          .intro-palettes > a:not(.cloned):hover > span > div {
            line-height: 2rem;
          }
            @media (min-width: 840px) {

    .intro-palettes-small .intro-palettes > a:not(.cloned):hover > span > div {
      font-size: clamp(1rem, calc(1rem + (1.0416666666666667 - 1) * ((100vw - 20rem) / (96 - 20))), 1.0416666666666667rem);
      line-height: 4rem;
    }
  }
    }

@media (any-hover: none) {
      .intro-palettes > a:not(.cloned):focus {
        outline: none;
      }
        .intro-palettes > a:not(.cloned):focus > span {
    height: 4rem;
    --tw-text-opacity: 1;
    color: rgb(255 255 255 / var(--tw-text-opacity, 1));
  }

.intro-palettes > a:not(.cloned):focus > span .loading-indicator {
    --tw-invert: invert(100%);
    filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
  }

body.contrastmode .stripe-hl:not(.cm-black).intro-palettes > a:not(.cloned):focus > span,
    body.contrastmode .stripe-hl:not(.cm-black) > .intro-palettes > a:not(.cloned):focus > span {
    --tw-text-opacity: 1 !important;
    color: rgb(0 0 0 / var(--tw-text-opacity, 1)) !important;
  }

body.contrastmode .is-popup .intro-palettes > a:not(.cloned):focus > span {
    --tw-text-opacity: 1 !important;
    color: rgb(0 0 0 / var(--tw-text-opacity, 1)) !important;
  }
        @media (max-width: 639px) {

    .intro-palettes > a:not(.cloned):focus > span {
      height: 15vw;
    }
  }
          .intro-palettes > a:not(.cloned):focus > span > div {
            line-height: 2rem;
          }
    }

.intro-palettes > a {
  position: relative;
}

.intro-palettes > a > span {
      background-color: var(--current-stripe-color);
      display: block;
      height: 3rem;
      color: transparent;
      transition-property: all;
      transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
      transition-duration: 150ms;
    }

@media (min-width: 840px) {

  .intro-palettes-small .intro-palettes > a > span {
    height: 1rem;
  }
}

@media (max-width: 639px) {

  .intro-palettes > a > span {
    height: 13vw;
    overflow: visible;
    --tw-text-opacity: 1;
    color: rgb(255 255 255 / var(--tw-text-opacity, 1));
  }
}

.intro-palettes > a > span > div {
  font-size: 12px;
}

@media (min-width: 640px) {

  .intro-palettes > a > span > div {
    inset: 0.25rem;
    text-align: center;
  }
}

@media (max-width: 639px) {
        .intro-palettes > a > span > div {
          /* @apply absolute border border-red-500  origin-top-left overflow-visible left-0 bottom-0  z-20  w-64 rotate-90 h-[100%] text-right leading-[16vw] text-[3vw]; */
          transform-origin: bottom left;
          left: 50%;
          bottom: 0;
          transform: rotate(-90deg) translateY(50%);
          position: absolute;
          width: 10rem;
          padding-left: 1rem;
          font-size: 4vw;
        }
      }

.stripe-bg {
  --current-stripe-color: white;
  --current-stripe-textcolor: black;
}

.stripe-bg-1 {
  --current-stripe-textcolor: white;
}

.stripe-bg-2 {
  --current-stripe-textcolor: white;
}

.stripe-bg-3 {
  --current-stripe-textcolor: white;
}

.stripe-bg-4 {
  --current-stripe-textcolor: white;
}

.stripe-bg-5 {
  --current-stripe-textcolor: white;
}

.stripe-bg-6 {
  --current-stripe-textcolor: white;
}

.stripe-bg-urgent {
  color: white;
}

.stripe-bg-urgent .stripe-hl {
  max-width: 100vw; /* iOS braucht das */
  white-space: nowrap;
  overflow: hidden;
}

.stripe-bg-urgent .stripe-hl > span {
    display: inline-block;
    padding-left: 50%; /* die zusätzlichen 5% erzeugen einen verzögerten Start und vermeiden so ein Ruckeln auf langsamen Seiten */
    animation: marquee 30s linear infinite;
  }

/* Optional: mouseover (oder Tipp auf dem Touchscreen) pausiert die Laufschrift */

.stripe-bg-urgent .stripe-hl > span:hover {
    animation-play-state: paused;
  }

main.stripe-white {
  padding-top: 1.5rem;
}

body.tpl-intro main.stripe-white {
  padding-top: 0px;
}

.stripe-bg {
  background-color: var(--current-stripe-color);
}

.stripe-bg.stripe-black {
  transition-property: all;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 500ms;
  border-top-width: 1px;
  --tw-border-opacity: 1;
  border-color: rgb(255 255 255 / var(--tw-border-opacity, 1));
  --tw-bg-opacity: 1;
  background-color: rgb(0 0 0 / var(--tw-bg-opacity, 1));
}

.stripe-bg.stripe-black.active {
  border-bottom-width: 1px;
  --tw-border-opacity: 1;
  border-color: rgb(0 0 0 / var(--tw-border-opacity, 1));
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  --tw-text-opacity: 1;
  color: rgb(0 0 0 / var(--tw-text-opacity, 1));
}

html {
  height: 100vh;
  overflow: hidden;
}

body {
  margin: 0;
  padding: 0;
  /* scroll-snap-type: y proximity; */
  overflow-y: scroll;
  height: 100vh;
  scroll-padding-top: 3rem;
}

body.tpl-homepage,
  body.tpl-intro {
    scroll-snap-type: none;
    scroll-padding-top: 0;
  }

header {
  position: fixed;
}

/* @apply pr-4; */

body.tpl-intro header,
  body.tpl-homepage header {
    position: relative;
    padding-right: 0px;
  }

.stripes-top {
  padding-top: 3rem;
}

body.tpl-homepage .stripes-top,
  body.tpl-intro .stripes-top {
    padding-top: 0;
  }

.stripe {
  /* scroll-snap-align: start; */
  position: relative;
  display: flex;
  min-height: 3rem;
  align-items: center;
  padding-top: 0.35rem;
  /* transition: background-color 1s linear; */
}

.stripe .overlay {
  position: absolute;
  inset: 0px;
    max-width: unset;
}

.stripe {
  color: white;
}

.stripe:hover .overlay {
  background-color: rgb(0 0 0 / var(--tw-bg-opacity, 1));
  --tw-bg-opacity: 0.2;
}

.stripe .text {
  width: 100%;
  padding-left: 1rem;
  padding-right: 1rem;
}

/* Make it move */

@keyframes marquee {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-100%);
  }
}

.mc {
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto;
  }

header > * {
  padding-left: 1rem;
  padding-right: 1rem;
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto;
}

@media (max-width: 839px) {

  nav.subnav {
    max-width: none;
  }
}

nav.subnav {
  margin-top: -2rem;
  padding-top: 2rem;
}

nav.subnav > .c0 {
    font-size: clamp(16px, 2vw, 22px);
    display: flex;
    justify-content: flex-start;
    font-weight: 400;
  }

@media (min-width: 840px) {

  nav.subnav > .c0 {
    margin-left: auto;
    margin-right: auto;
  }
}

@media (max-width: 839px) {

  nav.subnav > .c0 {
    flex-direction: column;
  }
}

nav.subnav > .c0 {
    color: var(--current-stripe-textcolor);
    max-width: 1200px;
  }

nav.subnav > .c0 .last-tab.active + .tab-line-shoulder {
  border-top-width: 0px;
  border-bottom-width: 0px;
      background-size: 100% 101%;
}

@media (min-width: 840px) {

  nav.subnav > .c0 > * {
    position: relative;
    flex: 1 1 auto;
    flex-shrink: 0;
    border-top-width: 1px;
    border-bottom-width: 1px;
    padding-top: 0.25rem;
    padding-bottom: 0.25rem;
    padding-right: 2.5rem;
    padding-left: 0px;
  }
}

@media (max-width: 839px) {

  nav.subnav > .c0 > * {
    border-top-width: 1px;
    --tw-border-opacity: 1;
    border-color: rgb(255 255 255 / var(--tw-border-opacity, 1));
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
    padding-left: 1rem;
    padding-right: 1rem;
    font-size: clamp(1.265625rem, calc(1.265625rem + (1.5 - 1.265625) * ((100vw - 20rem) / (96 - 20))), 1.5rem);
  }

  nav.subnav > .c0 > *:hover {
    --tw-text-opacity: 0.5;
  }
}

nav.subnav > .c0 > * {
      border-color: var(--current-stripe-textcolor);
    }

nav.subnav > .c0 > *.tab::before {
        content: "";
        /* @apply border border-red-500; */
        background-image: url("/img/tabline.svg");
      }

.stripe-white nav.subnav > .c0 > *.tab::before,
        .contrastmode nav.subnav > .c0 > *.tab::before {
          background-image: url("/img/tabline_black.svg");
        }

nav.subnav > .c0 > *.tab::before {
  position: absolute;
  top: -1px;
  bottom: -1px;
  left: -39px;
  display: block;
  width: 3rem;
  background-size: contain;
  background-repeat: no-repeat;
}

@media (max-width: 839px) {

  nav.subnav > .c0 > *.tab::before {
    display: none;
  }
}

nav.subnav > .c0 > *.active.tab::before {
  border-top-width: 1px;
  background-image: none;
        border-color: var(--current-stripe-textcolor);
}

@media (min-width: 840px) {

  nav.subnav > .c0 > *.active {
    padding-left: 1rem;
  }
}

nav.subnav > .c0 > *.active {
  font-weight: 700;
  -webkit-text-decoration-line: none;
          text-decoration-line: none;
}

@media (min-width: 840px) {

  nav.subnav > .c0 > *.active {
    border-top-left-radius: 0.5rem;
    border-left-width: 1px;
    border-bottom-color: transparent;
  }
}

@media (max-width: 839px) {

  nav.subnav > .c0 > *.active {
    color: rgb(0 0 0 / var(--tw-text-opacity, 1));
    --tw-text-opacity: 0.5;
  }
}

nav.subnav > .c0 > *.inactive {
        /* @apply; */
      }

@media (min-width: 840px) {

  nav.subnav > .c0 > *.inactive.tab {
    padding-right: 1.25rem;
  }
}

nav.subnav > .c0 > *.inactive.tab span {
  padding-right: 0.75rem;
}

@media (min-width: 840px) {

  nav.subnav > .c0 > *:first-child {
    padding-left: 1rem;
    border-top-left-radius: 0.5rem;
    border-left-width: 1px;
  }
}

nav.subnav > .c0 > *.last-tab.active::after {
        /* border-bottom: 1px solid var(--current-stripe-color); */
        z-index: 10;
      }

@media (max-width: 839px) {

  nav.subnav > .c0 > *.last-tab {
    border-bottom-width: 1px;
  }
}

nav.subnav > .c0 > *.tab-line-shoulder {
        /* content: "";
        background-image: url("/img/tabline.svg");
        .stripe-white & {
          background-image: url("/img/tabline_black.svg");
        }

        @apply w-[3rem] block absolute -inset-y-px right-[-3.1rem] bg-contain bg-no-repeat border border-red-500;
        */
        width: 37px;
        flex: none;
        align-self: stretch;
        border-top-width: 0px;
        background-repeat: no-repeat;
        padding-left: 0px;
        padding-right: 0px;
        padding-top: 0px;
        padding-bottom: 0px;
        background-size: 100% 102.5%;
        background-image: url("/img/tabline_shoulder.png");
      }

.stripe-white nav.subnav > .c0 > *.tab-line-shoulder,.contrastmode nav.subnav > .c0 > *.tab-line-shoulder {
          background-image: url("/img/tabline_shoulder_black.png");
        }

@media (max-width: 839px) {

  nav.subnav > .c0 > *.tab-line-shoulder {
    display: none;
  }
}

nav.subnav > .c0 > *.tab-line {
        flex: 1 1 60%;
      }

@media (min-width: 840px) {

  nav.subnav > .c0 > *.tab-line {
    border-top-width: 0px;
    border-left-width: 0px;
    border-right-width: 0px;
  }
}

@media (max-width: 839px) {

  nav.subnav > .c0 > *.tab-line {
    display: none;
  }
}

main {
  min-height: 10vh;
}

main.has-subnav-tab {
  padding-bottom: 1rem;
}

@media (min-width: 840px) {

  main.has-subnav-tab {
    padding-left: 0.25rem;
    padding-right: 0.25rem;
  }
}

main {
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

main .loading-indicator {
  --tw-invert: invert(100%);
  filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
}

body.contrastmode .stripe-hl:not(.cm-black)main,
    body.contrastmode .stripe-hl:not(.cm-black) > main {
  --tw-text-opacity: 1 !important;
  color: rgb(0 0 0 / var(--tw-text-opacity, 1)) !important;
}

body.contrastmode .is-popup main {
  --tw-text-opacity: 1 !important;
  color: rgb(0 0 0 / var(--tw-text-opacity, 1)) !important;
}

main a:hover,
  main .hover_like_a:hover {
  opacity: 0.5;
}

main a.tab:hover {
  opacity: 1;
}

main a.tab:hover > span:hover {
  opacity: 0.5;
}

.subnav-tab {
  padding-left: 1rem;
  padding-right: 1rem;
  padding-top: 3rem;
  padding-bottom: 2rem;
}

@media (min-width: 840px) {

  .subnav-tab {
    border-left-width: 1px;
    border-right-width: 1px;
    border-bottom-width: 1px;
  }
}

.subnav-tab {
  min-height: 10vh;
  border-color: var(--current-stripe-textcolor);

  max-width: 1200px;

  margin-left: auto;

  margin-right: auto;
}

.pc {
  position: absolute;
  bottom: 1rem;
  z-index: 20;
  width: 100%;
}

.pc .mc {
  padding-left: 1rem;
  padding-right: 1rem;
}

.pc span::after {
  font-size: clamp(1rem, calc(1rem + (1.0416666666666667 - 1) * ((100vw - 20rem) / (96 - 20))), 1.0416666666666667rem);
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
  opacity: 0.7;
  --tw-drop-shadow: drop-shadow(0 1px 2px rgb(0 0 0 / 0.1)) drop-shadow(0 1px 1px rgb(0 0 0 / 0.06));
  filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
}

.pc span .loading-indicator::after {
  --tw-invert: invert(100%);
  filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
}

body.contrastmode .stripe-hl:not(.cm-black).pc span::after,
    body.contrastmode .stripe-hl:not(.cm-black) > .pc span::after {
  --tw-text-opacity: 1 !important;
  color: rgb(0 0 0 / var(--tw-text-opacity, 1)) !important;
}

body.contrastmode .is-popup .pc span::after {
  --tw-text-opacity: 1 !important;
  color: rgb(0 0 0 / var(--tw-text-opacity, 1)) !important;
}

@media (max-width: 639px) {

  .pc span::after {
    font-size: 2.8vw;
  }
}

.pc span::after {
    content: var(--current-theme-credits);
  }

.loading-indicator {
  margin-left: auto;
  margin-right: auto;
  margin-top: 4rem;
  display: block;
  height: 3rem;
  width: auto;
}

.text-white .loading-indicator {
  --tw-invert: invert(100%);
  filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
}

.langswitcher {
  position: relative;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.05em;
}

@media (min-width: 640px) {

  .langswitcher {
    top: 0.25rem;
  }
}

.langswitcher {
  text-transform: uppercase;
}

@media (min-width: 640px) {

  .langswitcher {
    font-size: clamp(1.265625rem, calc(1.265625rem + (1.5 - 1.265625) * ((100vw - 20rem) / (96 - 20))), 1.5rem);
  }
}

@media (max-width: 639px) {

  .langswitcher {
    top: .7vw;
    order: 9999;
    font-size: clamp(10px,7.5vw,20px);
  }
}

.svelte-ticker {
    transform: translate3d(0, 0, 0);
  }

.svelte-ticker.horizontal {
    display: inline-block;
    white-space: nowrap;
  }

.svelte-ticker.vertical {
    display: block;
    white-space: normal;
  }

.svelte-ticker.horizontal > p {
    max-width: unset !important;
    display: inline-block !important;
  }

.svelte-ticker.vertical > p {
    max-width: unset !important;
    display: block !important;
  }

.svelte-ticker.animate {
    animation-timing-function: linear;
  }

.svelte-ticker.pausing:hover {
    animation-play-state: paused;
  }

.svelte-ticker.animate.horizontal {
    animation-name: horizontal;
  }

.svelte-ticker.animate.vertical {
    animation-name: vertical;
  }

@keyframes horizontal {
  0% {
    transform: translateX(0%);
  }
  100% {
    transform: translateX(-50%);
  }
}

@keyframes vertical {
  0% {
    transform: translateY(0%);
  }
  100% {
    transform: translateY(-50%);
  }
}

/* ce auf top-ebene */

@media (max-width: 839px) {

  .main-content p {
    margin-left: 0px;
    max-width: 600px;
  }
}

.main-content > .ce {
  /* max-width: 2000px; */
  padding-left: 1rem;
  padding-right: 1rem;
  padding-top: 1px;
  padding-bottom: 1px;
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
}

.ce > .c1 > .c0 {
  }

.ce .col {
  /* border: 1px dotted #ddd; */
}

/* headline styles: */

h1 {
  font-size: clamp(2.0272865295410156rem, calc(2.0272865295410156rem + (3.1103999999999994 - 2.0272865295410156) * ((100vw - 20rem) / (96 - 20))), 3.1103999999999994rem);
}

h2 {
  font-size: clamp(1.601806640625rem, calc(1.601806640625rem + (2.1599999999999997 - 1.601806640625) * ((100vw - 20rem) / (96 - 20))), 2.1599999999999997rem);
}

h3 {
  font-size: clamp(1.265625rem, calc(1.265625rem + (1.5 - 1.265625) * ((100vw - 20rem) / (96 - 20))), 1.5rem);
}

h3.ce-headline {
  text-transform: uppercase;
}

h4 {
  font-weight: 700;
}

h1,
h2,
h3,
h4 {
  position: relative;
  line-height: 1.25;
}

h1 + p,
h2 + p,
h3 + p,
h4 + p {
  margin-top: 0.75rem;
}

p + h1,
p + h2,
p + h3,
p + h4 {
  margin-top: 3rem;
}

/* 
h1::after,
h2::after,
h3::after,
h4::after {
  border: 1px solid currentColor;
  font-size: 0.5em;
  padding: 0.1em;
  margin-left: 1em;
  display: block;
  position: absolute;
  right: 0px;
  top: 0.5em;
  opacity: 0.4;
}

h1::after {
  content: "H1";
}

h2::after {
  content: "H2";
}

h3::after {
  content: "H3";
}

h4::after {
  content: "H4";
} */

/* headline styles END */

.ce-textblock {
  font-size: clamp(1rem, calc(1rem + (1.0416666666666667 - 1) * ((100vw - 20rem) / (96 - 20))), 1.0416666666666667rem);
  overflow-wrap: break-word;
}

.ce-textblock p,
  .ce-textblock ul,
  .ce-textblock ol {
    margin-bottom: 1em;
  }

.ce-textblock p:last-child, .ce-textblock ul:last-child, .ce-textblock ol:last-child {
      margin-bottom: 0;
    }

.ce-textblock ul {
  margin-left: 1rem;
  list-style-type: disc;
}

.ce-textblock table {
  width: 100%;
}

.ce-textblock table th {
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  --tw-bg-opacity: 0.5;
  text-align: left;
}

.ce-textblock table td {
  border-bottom-width: 1px;
  border-color: rgb(255 255 255 / var(--tw-border-opacity, 1));
  --tw-border-opacity: 0.4;
  padding: 0.25rem;
  vertical-align: top;
}

.ce-textblock table td:first-child {
  padding-left: 0px;
}

.ce-textblock table td:last-child {
  padding-right: 0px;
}

.ce-textblock table tr:first-child td {
  border-top-width: 1px;
}

.ce-textblock a {
    text-decoration: underline;
  }

.ce.border-defaultcolor {
  border-color: rgb(255 255 255 / var(--tw-border-opacity, 1));
  --tw-border-opacity: 0.4;
}

.ce {
  padding-bottom: 2rem;
}

.ce:last-child {
  padding-bottom: 0px;
}

/* https://van11y.net/accessible-hide-show/ */

.ce-expander {
  border-bottom-width: 1px;
  border-color: rgb(255 255 255 / var(--tw-border-opacity, 1));
  --tw-border-opacity: 0.5;
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
}

.stripe-white .ce-expander {
  border-color: rgb(0 0 0 / var(--tw-border-opacity, 1));
  --tw-border-opacity: 0.4;
}

.js-to_expand[aria-hidden="true"],
.js-to_expand[data-hidden="true"] {
  display: none;
}

.expandmore__button {
  background: none;
  font-size: inherit;
  color: inherit;
  border: none;
  padding: 0;
  text-align: left;
  text-indent: -1em;
  padding-left: 1em;
}

/* optional */

.expandmore__button:before,
.expandmore__button:before {
  content: "+ ";
  width: 1em;
  display: inline-block;
  /* padding-left: 1em; */
  text-indent: 0;
}

.expandmore__button[aria-expanded="true"]:before,
.expandmore__button[data-expanded="true"]:before {
  content: "- ";
}

/* This is the opened state */

.expandmore__to_expand {
  display: block;
  overflow: hidden;
  opacity: 1;
  margin-top: 1em;
  transition: visibility 0s ease, max-height 1s ease, opacity 1s ease;
  max-height: 200em;
  /* magic number for max-height = enough height */
  visibility: visible;
  transition-delay: 0s;
  padding-left: 1.8rem;
}

/* This is the hidden state */

[data-hidden="true"].expandmore__to_expand {
  display: block;
  max-height: 0;
  opacity: 0;
  visibility: hidden;
  transition-delay: 1s, 0s, 0s;
}

/* send in blue overrides: */

.sib-form {
  background: none !important;
}

.sib-form #sib-container {
    border-color: transparent !important;
    margin-left: 0px;
    display: block;
  }

.pretix-button {
  background-color: var(--current-stripe-textcolor);
  padding-left: 0.5rem;
  padding-right: 0.5rem;
  padding-top: 0.5rem;
  padding-bottom: 0.25rem;
  text-transform: uppercase;
  line-height: 1;
  color: var(--current-stripe-color);
}

.main-box {
  font-family: ui-serif, Georgia, Cambria, "Times New Roman", Times, serif;
}

.infotext p {
  margin-bottom: 1rem;
}

.infotext a {
  -webkit-text-decoration-line: underline;
          text-decoration-line: underline;
}

.eventsuche input,
  .eventsuche select {
  --tw-border-opacity: 1;
  border-color: rgb(255 255 255 / var(--tw-border-opacity, 1));
  background-color: transparent;
}

.eventsuche input:focus,
  .eventsuche select:focus {
  --tw-border-opacity: 1;
  border-color: rgb(255 255 255 / var(--tw-border-opacity, 1));
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(255 255 255 / var(--tw-ring-opacity, 1));
}

.swiper-button-prev,
.swiper-button-next {
  --swiper-navigation-size: 48px;
  /* @apply bg-green-300 border border-red-500; */
  background-position: center;
  background-repeat: no-repeat;
}

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

.swiper-button-prev {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20300%20300%22%3E%20%3Cpolygon%20fill%3D%22white%22%20points%3D%22216.74%20298.98%2067.76%20150%20216.74%201.02%20232.24%2016.52%2098.75%20150%20232.24%20283.48%20216.74%20298.98%22%20%2F%3E%3C%2Fsvg%3E") !important;
}

.swiper-button-next {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20300%20300%22%3E%20%3Cpolygon%20fill%3D%22white%22%20points%3D%2283.26%20298.98%2067.76%20283.48%20201.25%20150%2067.76%2016.52%2083.26%201.02%20232.24%20150%2083.26%20298.98%22%20%2F%3E%3C%2Fsvg%3E") !important;
}

.stripe-white .ce-form_element input,
  .stripe-white .ce-form_element select,
  .stripe-white .ce-form_element textarea {
  border-width: 1px;
  --tw-border-opacity: 1;
  border-color: rgb(156 163 175 / var(--tw-border-opacity, 1));
}

.stripe-colored .ce-form_element input,
  .stripe-colored .ce-form_element select,
  .stripe-colored .ce-form_element textarea {
  border-style: none;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  --tw-bg-opacity: 0.5;
  --tw-text-opacity: 1;
  color: rgb(0 0 0 / var(--tw-text-opacity, 1));
}

.stripe-colored .ce-form_element input:focus,
  .stripe-colored .ce-form_element select:focus,
  .stripe-colored .ce-form_element textarea:focus {
  --tw-bg-opacity: 1;
  --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
}

.ce-form_element label {
    color: var(--current-stripe-textcolor);
    position: relative;
    top: 0.25rem;
    margin-top: 0.75rem;
    font-size: clamp(1.125rem, calc(1.125rem + (1.25 - 1.125) * ((100vw - 20rem) / (96 - 20))), 1.25rem);
  }

.ce-form_element .ce-textblock {
  padding-top: 2rem;
}

.ce-form_element .ce-textblock:first-child {
  padding-top: 0px;
}

.ce-form_element button {
  display: inline-block;
  background-color: var(--current-stripe-textcolor);
  padding-left: 0.5rem;
  padding-right: 0.5rem;
  padding-top: 0.5rem;
  padding-bottom: 0.25rem;
  text-transform: uppercase;
  line-height: 1;
  color: var(--current-stripe-color);
}

.ce .sib-form {
  padding-left: 0px !important;
  padding-right: 0px !important;
}

.ce .sib-form a {
  --tw-text-opacity: 1 !important;
  color: rgb(0 0 0 / var(--tw-text-opacity, 1)) !important;
}

/* *[style*="padding: 8px 0"] {
    @apply !px-0;
    @apply !text-red-400;
  } */

.ce .sib-form .sib-form-block {
  padding-left: 0px !important;
  padding-right: 0px !important;
}

.ce .sib-form #sib-container {
  padding-left: 0px !important;
  padding-right: 0px !important;
}

.ce .sib-form *[style*="Helvetica"] {
    font-family: inherit !important;
  }

.ce .sib-form *[style*="size:10px"],
  .ce .sib-form *[style*="size:12px"] {
  font-size: clamp(0.8888888888888888rem, calc(0.8888888888888888rem + (0.8680555555555557 - 0.8888888888888888) * ((100vw - 20rem) / (96 - 20))), 0.8680555555555557rem) !important;
}

.ce .sib-form *[style*="size:15px"],
  .ce .sib-form *[style*="size:16px"] {
  font-size: clamp(1.125rem, calc(1.125rem + (1.25 - 1.125) * ((100vw - 20rem) / (96 - 20))), 1.25rem) !important;
}

.ce .sib-form .entry__field {
  border-radius: 0px;
  border-width: 1px;
  --tw-border-opacity: 1;
  border-color: rgb(156 163 175 / var(--tw-border-opacity, 1));
}

.ce .sib-form .entry__field .input {
  border-style: none;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  --tw-bg-opacity: 0.5;
  --tw-text-opacity: 1;
  color: rgb(0 0 0 / var(--tw-text-opacity, 1));
}

.ce .sib-form .entry__field .input:focus {
  --tw-bg-opacity: 1;
  --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
}

.ce .sib-form .checkbox {
  border-radius: 0px;
}

.ce .sib-form .input_replaced:checked + .checkbox_tick_positive {
  --tw-border-opacity: 1;
  border-color: rgb(0 0 0 / var(--tw-border-opacity, 1));
  --tw-bg-opacity: 1;
  background-color: rgb(0 0 0 / var(--tw-bg-opacity, 1));
}

.ce .sib-form .sib-form-block__button {
  border-radius: 0px !important;
  background-color: var(--current-stripe-textcolor);
  padding-left: 0.5rem;
  padding-right: 0.5rem;
  padding-top: 0.5rem;
  padding-bottom: 0.25rem;
  text-transform: uppercase;
  line-height: 1;
  color: var(--current-stripe-color);
}

.ce .sib-form .entry__error {
  margin-bottom: 1rem !important;
  margin-top: 0.25rem !important;
  background-color: transparent !important;
  font-size: clamp(1.125rem, calc(1.125rem + (1.25 - 1.125) * ((100vw - 20rem) / (96 - 20))), 1.25rem) !important;
  --tw-text-opacity: 1 !important;
  color: rgb(239 68 68 / var(--tw-text-opacity, 1)) !important;
}

html.glightbox-open {
  overflow: initial;
}

.glightbox-open {
  height: 100% !important;
}

.glightbox-container {
  width: 100%;
  height: 100%;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 999999 !important;
  overflow: hidden;
  touch-action: none;
  -webkit-text-size-adjust: 100%;
  -moz-text-size-adjust: 100%;
  text-size-adjust: 100%;
  backface-visibility: hidden;
  outline: none;
}

.glightbox-container.inactive {
  display: none;
}

.glightbox-container .gcontainer {
  position: relative;
  width: 100%;
  height: 100%;
  z-index: 9999;
  overflow: hidden;
}

.glightbox-container .gslider {
  transition: transform 0.4s ease;
  height: 100%;
  left: 0;
  top: 0;
  width: 100%;
  position: relative;
  overflow: hidden;
  display: flex !important;
  justify-content: center;
  align-items: center;
  transform: translate3d(0, 0, 0);
}

.glightbox-container .gslide {
  width: 100%;
  position: absolute;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
}

.glightbox-container .gslide.current {
  opacity: 1;
  z-index: 99999;
  position: relative;
}

.glightbox-container .gslide.prev {
  opacity: 1;
  z-index: 9999;
}

.glightbox-container .gslide-inner-content {
  width: 100%;
}

.glightbox-container .ginner-container {
  position: relative;
  width: 100%;
  display: flex;
  justify-content: center;
  flex-direction: column;
  max-width: 100%;
  margin: auto;
  height: 100vh;
}

.glightbox-container .ginner-container.gvideo-container {
  width: 100%;
}

.glightbox-container .ginner-container.desc-bottom,
.glightbox-container .ginner-container.desc-top {
  flex-direction: column;
}

.glightbox-container .ginner-container.desc-left,
.glightbox-container .ginner-container.desc-right {
  max-width: 100% !important;
}

.gslide iframe,
.gslide video {
  outline: none !important;
  border: none;
  min-height: 165px;
  -webkit-overflow-scrolling: touch;
  touch-action: auto;
}

.gslide:not(.current) {
  pointer-events: none;
}

.gslide-image {
  align-items: center;
}

.gslide-image img {
  max-height: 100vh;
  display: block;
  padding: 0;
  float: none;
  outline: none;
  border: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
  max-width: 100vw;
  width: auto;
  height: auto;
  -o-object-fit: cover;
  object-fit: cover;
  touch-action: none;
  margin: auto;
  min-width: 200px;
}

.desc-top .gslide-image img,
.desc-bottom .gslide-image img {
  width: auto;
}

.desc-left .gslide-image img,
.desc-right .gslide-image img {
  width: auto;
  max-width: 100%;
}

.gslide-image img.zoomable {
  position: relative;
}

.gslide-image img.dragging {
  cursor: grabbing !important;
  transition: none;
}

.gslide-video {
  position: relative;
  max-width: 100vh;
  width: 100% !important;
}

.gslide-video .plyr__poster-enabled.plyr--loading .plyr__poster {
  display: none;
}

.gslide-video .gvideo-wrapper {
  width: 100%;
  /* max-width: 160vmin; */
  margin: auto;
}

.gslide-video::before {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  background: rgba(255, 0, 0, 0.34);
  display: none;
}

.gslide-video.playing::before {
  display: none;
}

.gslide-video.fullscreen {
  max-width: 100% !important;
  min-width: 100%;
  height: 75vh;
}

.gslide-video.fullscreen video {
  max-width: 100% !important;
  width: 100% !important;
}

.gslide-inline {
  background: #fff;
  text-align: left;
  max-height: calc(100vh - 40px);
  overflow: auto;
  max-width: 100%;
  margin: auto;
}

.gslide-inline .ginlined-content {
  padding: 20px;
  width: 100%;
}

.gslide-inline .dragging {
  cursor: grabbing !important;
  transition: none;
}

.ginlined-content {
  overflow: auto;
  display: block !important;
  opacity: 1;
}

.gslide-external {
  display: flex;
  width: 100%;
  min-width: 100%;
  background: #fff;
  padding: 0;
  overflow: auto;
  max-height: 75vh;
  height: 100%;
}

.gslide-media {
  display: flex;
  width: auto;
}

.zoomed .gslide-media {
  box-shadow: none !important;
}

.desc-top .gslide-media,
.desc-bottom .gslide-media {
  margin: 0 auto;
  flex-direction: column;
}

.gslide-description {
  position: relative;
  flex: 1 0 100%;
}

.gslide-description.description-left,
.gslide-description.description-right {
  max-width: 100%;
}

.gslide-description.description-bottom,
.gslide-description.description-top {
  margin: 0 auto;
  width: 100%;
}

.gslide-description p {
  margin-bottom: 12px;
}

.gslide-description p:last-child {
  margin-bottom: 0;
}

.zoomed .gslide-description {
  display: none;
}

.glightbox-button-hidden {
  display: none;
}

/*
 * Description for mobiles
 * something like facebook does the description
 * for the photos
*/

.glightbox-mobile .glightbox-container .gslide-description {
  height: auto !important;
  width: 100%;
  position: absolute;
  bottom: 0;
  padding: 19px 11px;
  max-width: 100vw !important;
  order: 2 !important;
  max-height: 78vh;
  overflow: auto !important;
  background: linear-gradient(
    to bottom,
    rgba(0, 0, 0, 0) 0%,
    rgba(0, 0, 0, 0.75) 100%
  );
  transition: opacity 0.3s linear;
  padding-bottom: 50px;
}

.glightbox-mobile .glightbox-container .gslide-title {
  color: #fff;
  font-size: 1em;
}

.glightbox-mobile .glightbox-container .gslide-desc {
  color: #a1a1a1;
}

.glightbox-mobile .glightbox-container .gslide-desc a {
  color: #fff;
  font-weight: bold;
}

.glightbox-mobile .glightbox-container .gslide-desc * {
  color: inherit;
}

.glightbox-mobile .glightbox-container .gslide-desc .desc-more {
  color: #fff;
  opacity: 0.4;
}

.gdesc-open .gslide-media {
  transition: opacity 0.5s ease;
  opacity: 0.4;
}

.gdesc-open .gdesc-inner {
  padding-bottom: 30px;
}

.gdesc-closed .gslide-media {
  transition: opacity 0.5s ease;
  opacity: 1;
}

.greset {
  transition: all 0.3s ease;
}

.gabsolute {
  position: absolute;
}

.grelative {
  position: relative;
}

.glightbox-desc {
  display: none !important;
}

.glightbox-open {
  overflow: hidden;
}

.gloader {
  height: 25px;
  width: 25px;
  animation: lightboxLoader 0.8s infinite linear;
  border: 2px solid #fff;
  border-right-color: transparent;
  border-radius: 50%;
  position: absolute;
  display: block;
  z-index: 9999;
  left: 0;
  right: 0;
  margin: 0 auto;
  top: 47%;
}

.goverlay {
  width: 100%;
  height: calc(100vh + 1px);
  position: fixed;
  top: -1px;
  left: 0;
  background: #000;
  will-change: opacity;
}

.glightbox-mobile .goverlay {
  background: #000;
}

.gprev,
.gnext,
.gclose {
  z-index: 99999;
  cursor: pointer;
  width: 26px;
  height: 44px;
  border: none;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
}

.gprev svg,
.gnext svg,
.gclose svg {
  display: block;
  width: 25px;
  height: auto;
  margin: 0;
  padding: 0;
}

.gprev.disabled,
.gnext.disabled,
.gclose.disabled {
  opacity: 0.1;
}

.gprev .garrow,
.gnext .garrow,
.gclose .garrow {
  stroke: #fff;
}

.gbtn.focused {
  outline: 2px solid #0f3d81;
}

iframe.wait-autoplay {
  opacity: 0;
}

.glightbox-closing .gnext,
.glightbox-closing .gprev,
.glightbox-closing .gclose {
  opacity: 0 !important;
}

/*Skin */

.glightbox-clean .gslide-description {
  background: #fff;
}

.glightbox-clean .gdesc-inner {
  padding: 22px 20px;
}

.glightbox-clean .gslide-title {
  font-size: 1em;
  font-weight: normal;
  font-family: arial;
  color: #000;
  margin-bottom: 19px;
  line-height: 1.4em;
}

.glightbox-clean .gslide-desc {
  font-size: 0.86em;
  margin-bottom: 0;
  font-family: arial;
  line-height: 1.4em;
}

.glightbox-clean .gslide-video {
  background: #000;
}

.glightbox-clean .gprev,
.glightbox-clean .gnext,
.glightbox-clean .gclose {
  background-color: rgba(0, 0, 0, 0.75);
  border-radius: 4px;
}

.glightbox-clean .gprev path,
.glightbox-clean .gnext path,
.glightbox-clean .gclose path {
  fill: #fff;
}

.glightbox-clean .gprev {
  position: absolute;
  top: -100%;
  left: 30px;
  width: 40px;
  height: 50px;
}

.glightbox-clean .gnext {
  position: absolute;
  top: -100%;
  right: 30px;
  width: 40px;
  height: 50px;
}

.glightbox-clean .gclose {
  width: 35px;
  height: 35px;
  top: 15px;
  right: 10px;
  position: absolute;
}

.glightbox-clean .gclose svg {
  width: 18px;
  height: auto;
}

.glightbox-clean .gclose:hover {
  opacity: 1;
}

/*CSS Animations*/

.gfadeIn {
  animation: gfadeIn 0.5s ease;
}

.gfadeOut {
  animation: gfadeOut 0.5s ease;
}

.gslideOutLeft {
  animation: gslideOutLeft 0.3s ease;
}

.gslideInLeft {
  animation: gslideInLeft 0.3s ease;
}

.gslideOutRight {
  animation: gslideOutRight 0.3s ease;
}

.gslideInRight {
  animation: gslideInRight 0.3s ease;
}

.gzoomIn {
  animation: gzoomIn 0.5s ease;
}

.gzoomOut {
  animation: gzoomOut 0.5s ease;
}

@keyframes lightboxLoader {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}

@keyframes gfadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

@keyframes gfadeOut {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}

@keyframes gslideInLeft {
  from {
    opacity: 0;
    transform: translate3d(-60%, 0, 0);
  }
  to {
    visibility: visible;
    transform: translate3d(0, 0, 0);
    opacity: 1;
  }
}

@keyframes gslideOutLeft {
  from {
    opacity: 1;
    visibility: visible;
    transform: translate3d(0, 0, 0);
  }
  to {
    transform: translate3d(-60%, 0, 0);
    opacity: 0;
    visibility: hidden;
  }
}

@keyframes gslideInRight {
  from {
    opacity: 0;
    visibility: visible;
    transform: translate3d(60%, 0, 0);
  }
  to {
    transform: translate3d(0, 0, 0);
    opacity: 1;
  }
}

@keyframes gslideOutRight {
  from {
    opacity: 1;
    visibility: visible;
    transform: translate3d(0, 0, 0);
  }
  to {
    transform: translate3d(60%, 0, 0);
    opacity: 0;
  }
}

@keyframes gzoomIn {
  from {
    opacity: 0;
    transform: scale3d(0.3, 0.3, 0.3);
  }
  to {
    opacity: 1;
  }
}

@keyframes gzoomOut {
  from {
    opacity: 1;
  }
  50% {
    opacity: 0;
    transform: scale3d(0.3, 0.3, 0.3);
  }
  to {
    opacity: 0;
  }
}

@media (min-width: 769px) {
  .glightbox-container .ginner-container {
    width: auto;
    height: auto;
    flex-direction: row;
  }
  .glightbox-container .ginner-container.desc-top .gslide-description {
    order: 0;
  }
  .glightbox-container .ginner-container.desc-top .gslide-image,
  .glightbox-container .ginner-container.desc-top .gslide-image img {
    order: 1;
  }
  .glightbox-container .ginner-container.desc-left .gslide-description {
    order: 0;
  }
  .glightbox-container .ginner-container.desc-left .gslide-image {
    order: 1;
  }
  .gslide-image img {
    max-height: 97vh;
    max-width: 100%;
  }
  .gslide-image img.zoomable {
    cursor: zoom-in;
  }
  .zoomed .gslide-image img.zoomable {
    cursor: grab;
  }
  .gslide-inline {
    max-height: 95vh;
  }
  .gslide-external {
    max-height: 100vh;
  }
  .gslide-description.description-left,
  .gslide-description.description-right {
    max-width: 275px;
  }
  .glightbox-open {
    height: auto;
  }
  .goverlay {
    background: rgba(0, 0, 0, 0.92);
  }
  .glightbox-clean .gslide-media {
    box-shadow: 1px 2px 9px 0px rgba(0, 0, 0, 0.65);
  }
  .glightbox-clean .description-left .gdesc-inner,
  .glightbox-clean .description-right .gdesc-inner {
    position: absolute;
    height: 100%;
    overflow-y: auto;
  }
  .glightbox-clean .gprev,
  .glightbox-clean .gnext,
  .glightbox-clean .gclose {
    background-color: rgba(0, 0, 0, 0.32);
  }
  .glightbox-clean .gprev:hover,
  .glightbox-clean .gnext:hover,
  .glightbox-clean .gclose:hover {
    background-color: rgba(0, 0, 0, 0.7);
  }
  .glightbox-clean .gprev {
    top: 45%;
  }
  .glightbox-clean .gnext {
    top: 45%;
  }
}

@media (min-width: 992px) {
  .glightbox-clean .gclose {
    opacity: 0.7;
    right: 20px;
  }
}

@media screen and (max-height: 420px) {
  .goverlay {
    background: #000;
  }
}

.pretix-embed .pretix-widget {
  border-style: none !important;
}

.pretix-embed .pretix-widget a {
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

.pretix-embed .pretix-widget a .loading-indicator {
  --tw-invert: invert(100%);
  filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
}

body.contrastmode .stripe-hl:not(.cm-black).pretix-embed .pretix-widget a,
    body.contrastmode .stripe-hl:not(.cm-black) > .pretix-embed .pretix-widget a {
  --tw-text-opacity: 1 !important;
  color: rgb(0 0 0 / var(--tw-text-opacity, 1)) !important;
}

body.contrastmode .is-popup .pretix-embed .pretix-widget a {
  --tw-text-opacity: 1 !important;
  color: rgb(0 0 0 / var(--tw-text-opacity, 1)) !important;
}

.pretix-embed .pretix-widget a:hover {
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
  opacity: 0.8;
}

.pretix-embed .pretix-widget a:focus {
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

.pretix-embed .pretix-widget a:active {
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

.pretix-embed .pretix-widget .pretix-widget-event-calendar-event {
  border-radius: 0px !important;
  text-align: center;
  font-size: clamp(0.8888888888888888rem, calc(0.8888888888888888rem + (0.8680555555555557 - 0.8888888888888888) * ((100vw - 20rem) / (96 - 20))), 0.8680555555555557rem);
}

.pretix-embed .pretix-widget .pretix-widget-event-calendar-head strong {
        visibility: hidden;
      }

.pretix-embed .pretix-widget .pretix-widget-event-calendar-head {
  margin-top: 2rem;
  margin-bottom: 1.5rem;
}

.pretix-embed .pretix-widget .pretix-widget-event-calendar-day {
  text-align: center;
  font-family: Soleil-Light, ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  text-transform: uppercase;
}

.pretix-embed .pretix-widget .pretix-widget-event-calendar-event-availability,
    .pretix-embed .pretix-widget .pretix-widget-event-calendar-event-name,
    .pretix-embed .pretix-widget .pretix-widget-attribution,
    .pretix-embed .pretix-widget .pretix-widget-event-header,
    .pretix-embed .pretix-widget .pretix-widget-error-action {
      display: none;
    }

.pretix-embed .pretix-widget .pretix-widget-loading {
      background-color: rgba(50, 50, 50, 0.8) !important;
    }

.pretix-embed .pretix-widget .pretix-widget-loading svg {
  margin-left: auto;
  margin-right: auto;
  height: 3rem !important;
  width: 3rem !important;
}

.pretix-embed .pretix-widget .pretix-widget-loading svg path {
  fill: #fff !important;
}

.pretix-embed .pretix-widget button {
  --tw-border-opacity: 1;
  border-color: rgb(255 255 255 / var(--tw-border-opacity, 1));
  --tw-bg-opacity: 1 !important;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1)) !important;
  text-transform: uppercase;
  color: var(--current-stripe-textcolor);
}

.pretix-embed .pretix-widget button:hover {
  color: var(--current-stripe-textcolor);
  opacity: 0.8;
}

body .pretix-widget-frame-holder .pretix-widget-frame-inner {
  border-radius: 0px !important;
  padding-right: 1.25rem !important;
}

body .pretix-widget-frame-holder {
  background-color: rgba(50, 50, 50, 0.9) !important;
}

body .pretix-widget-frame-holder .pretix-widget-frame-loading svg {
  margin-left: auto;
  margin-right: auto;
  height: 3rem !important;
  width: 3rem !important;
}

body .pretix-widget-frame-holder .pretix-widget-frame-loading svg path {
  fill: #fff !important;
}

body .pretix-widget-frame-close {
  line-height: 0.6;
}

body .pretix-widget-frame-close a:hover {
  opacity: 0.8;
}

body .pretix-widget-frame-close svg {
    display: inline;
  }

@media (max-width: 800px) {
  body .pretix-widget-frame-holder .pretix-widget-frame-close {
    right: 20px;
    top: 20px;
    background: transparent;
  }
      body .pretix-widget-frame-holder .pretix-widget-frame-close svg path {
        fill: #fff;
      }
}

body.contrastmode .stripe-bg img {
        filter: grayscale(1);
    }

body.contrastmode .stripe-bg {

    --current-stripe-color: white;
    --current-stripe-textcolor: black;
}

body.contrastmode .stripe-bg.stripe-black {
        --current-stripe-color: black;
        --current-stripe-textcolor: white;    
    }

body.contrastmode .eventsuche input, body.contrastmode .eventsuche select {
  --tw-border-opacity: 1;
  border-color: rgb(0 0 0 / var(--tw-border-opacity, 1));
}

body.contrastmode .stripe-hl:not(.cm-black) {
  border-top-width: 1px;
  --tw-border-opacity: 1 !important;
  border-color: rgb(0 0 0 / var(--tw-border-opacity, 1)) !important;
  --tw-text-opacity: 1 !important;
  color: rgb(0 0 0 / var(--tw-text-opacity, 1)) !important;
}

body.contrastmode .stripe-hl:not(.cm-black).text-white,
    body.contrastmode .stripe-hl:not(.cm-black) > .text-white {
  --tw-text-opacity: 1 !important;
  color: rgb(0 0 0 / var(--tw-text-opacity, 1)) !important;
}

body.contrastmode .stripe-bg-urgent {
  --tw-text-opacity: 1 !important;
  color: rgb(0 0 0 / var(--tw-text-opacity, 1)) !important;
}

body.contrastmode .is-popup .text-white {
  --tw-text-opacity: 1 !important;
  color: rgb(0 0 0 / var(--tw-text-opacity, 1)) !important;
}

body.contrastmode main {
  --tw-text-opacity: 1;
  color: rgb(0 0 0 / var(--tw-text-opacity, 1));
}

body.contrastmode .palette-artwork .mc {
    -webkit-backdrop-filter: grayscale(1)  brightness(1.3);
            backdrop-filter: grayscale(1)  brightness(1.3);
}

/* from v0.7.2 */

.klaro .cookie-modal {
    width: 100%;
    height: 100%;
    position: fixed;
    overflow: hidden;
    left: 0;
    top: 0;
    z-index: 1000;
  }

.klaro .cookie-modal.cm-embedded {
      position: relative;
      height: inherit;
      width: inherit;
      left: inherit;
      right: inherit;
      z-index: 0;
    }

.klaro .cookie-modal.cm-embedded .cm-modal.cm-klaro {
        position: relative;
        transform: none;
      }

.klaro .cookie-modal .cm-bg {
      background: rgba(0, 0, 0, 0.5);
      height: 100%;
      width: 100%;
      position: fixed;
      top: 0;
      left: 0;
    }

.klaro .cookie-modal .cm-modal.cm-klaro {
        /* @apply text-white shadow-lg bg-ma_rot; */

        z-index: 1001;

        width: 100%;
        max-height: 98%;

        top: 50%;
        transform: translateY(-50%);

        position: fixed;
        overflow: auto;
      }

@media (min-width: 840px) {

.klaro .cookie-modal .cm-modal.cm-klaro {
          /* @apply rounded-lg; */
          position: relative;
          margin: 0 auto;
          max-width: 660px;
          height: auto;
          width: auto
      }
        }

.klaro .cookie-modal .cm-modal .hide {
        border-style: none;
        background: none;
        cursor: pointer;
        position: absolute;
        top: 20px;
        right: 20px;
        z-index: 1;

        /* svg {
          stroke: var(--light1, #fafafa);
        } */
      }

.klaro .cookie-modal .cm-modal .cm-footer {
        /* @apply border-t border-t-white; */

        padding: 1em;
      }

.klaro .cookie-modal .cm-modal .cm-footer-buttons {
          display: flex;
          flex-flow: row;
          justify-content: space-between;
          flex-wrap: wrap;
          gap: 0.75rem;
        }

.klaro .cookie-modal .cm-modal .cm-footer .cm-powered-by {
          
          /* font-size: 0.8em;
          padding-top: 4px;
          text-align: right;
          padding-right: 8px; 

           a {
            @apply text-black;
        } 
            */
        }

.klaro .cookie-modal .cm-modal .cm-header {
  border-bottom-width: 1px;
  --tw-border-opacity: 1;
  border-color: rgb(255 255 255 / var(--tw-border-opacity, 1));
        padding: 1em;
        padding-right: 24px;
}

.klaro .cookie-modal .cm-modal .cm-header h1 {
          margin: 0;
          font-size: 1.5em;
          display: block;
        }

.klaro .cookie-modal .cm-modal .cm-header h1.title {
            padding-right: 20px;
          }

.klaro .cookie-modal .cm-modal .cm-body {
        padding: 1em;
      }

.klaro .cookie-modal .cm-modal .cm-body ul {
          display: block;
        }

.klaro .cookie-modal .cm-modal .cm-body span {
          display: inline-block;
          width: auto;
        }

.klaro .cookie-modal .cm-modal .cm-body ul.cm-services,
        .klaro .cookie-modal .cm-modal .cm-body ul.cm-purposes {
          padding: 0;
          margin: 0;
        }

/* @apply text-xs; */

/* .cm-caret {
                @apply text-white text-[.7rem];
            }
            .cm-list-description {
                @apply  text-[.8rem];
            } */

.klaro .cookie-modal .cm-modal .cm-body ul.cm-services li.cm-purpose .cm-services .cm-content, .klaro .cookie-modal .cm-modal .cm-body ul.cm-purposes li.cm-purpose .cm-services .cm-content {
                margin-left: -40px;
                display: none;
              }

.klaro .cookie-modal .cm-modal .cm-body ul.cm-services li.cm-purpose .cm-services .cm-content.expanded, .klaro .cookie-modal .cm-modal .cm-body ul.cm-purposes li.cm-purpose .cm-services .cm-content.expanded {
                  margin-top: 10px;
                  display: block;
                }

.klaro .cookie-modal .cm-modal .cm-body ul.cm-services li.cm-service,
          .klaro .cookie-modal .cm-modal .cm-body ul.cm-services li.cm-purpose,
          .klaro .cookie-modal .cm-modal .cm-body ul.cm-purposes li.cm-service,
          .klaro .cookie-modal .cm-modal .cm-body ul.cm-purposes li.cm-purpose {
            position: relative;
            line-height: 20px;
            vertical-align: middle;
            padding-left: 60px;
            min-height: 40px;
          }

.klaro .cookie-modal .cm-modal .cm-body ul.cm-services li.cm-service:first-child, .klaro .cookie-modal .cm-modal .cm-body ul.cm-services li.cm-purpose:first-child, .klaro .cookie-modal .cm-modal .cm-body ul.cm-purposes li.cm-service:first-child, .klaro .cookie-modal .cm-modal .cm-body ul.cm-purposes li.cm-purpose:first-child {
              margin-top: 0;
            }

.klaro .cookie-modal .cm-modal .cm-body ul.cm-services li.cm-service p, .klaro .cookie-modal .cm-modal .cm-body ul.cm-services li.cm-purpose p, .klaro .cookie-modal .cm-modal .cm-body ul.cm-purposes li.cm-service p, .klaro .cookie-modal .cm-modal .cm-body ul.cm-purposes li.cm-purpose p {
              margin-top: 0;
            }

.klaro .cookie-modal .cm-modal .cm-body ul.cm-services li.cm-service p.purposes, .klaro .cookie-modal .cm-modal .cm-body ul.cm-services li.cm-purpose p.purposes, .klaro .cookie-modal .cm-modal .cm-body ul.cm-purposes li.cm-service p.purposes, .klaro .cookie-modal .cm-modal .cm-body ul.cm-purposes li.cm-purpose p.purposes {
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

.klaro .cookie-modal .cm-modal .cm-body ul.cm-services li.cm-service p.purposes .loading-indicator, .klaro .cookie-modal .cm-modal .cm-body ul.cm-services li.cm-purpose p.purposes .loading-indicator, .klaro .cookie-modal .cm-modal .cm-body ul.cm-purposes li.cm-service p.purposes .loading-indicator, .klaro .cookie-modal .cm-modal .cm-body ul.cm-purposes li.cm-purpose p.purposes .loading-indicator {
  --tw-invert: invert(100%);
  filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
}

body.contrastmode .stripe-hl:not(.cm-black).klaro .cookie-modal .cm-modal .cm-body ul.cm-services li.cm-service p.purposes,
    body.contrastmode .stripe-hl:not(.cm-black) > .klaro .cookie-modal .cm-modal .cm-body ul.cm-services li.cm-service p.purposes,body.contrastmode .stripe-hl:not(.cm-black) .klaro .cookie-modal .cm-modal .cm-body ul.cm-services li.cm-purpose p.purposes,
    body.contrastmode .stripe-hl:not(.cm-black) >  .klaro .cookie-modal .cm-modal .cm-body ul.cm-services li.cm-purpose p.purposes,body.contrastmode .stripe-hl:not(.cm-black) .klaro .cookie-modal .cm-modal .cm-body ul.cm-purposes li.cm-service p.purposes,
    body.contrastmode .stripe-hl:not(.cm-black) >  .klaro .cookie-modal .cm-modal .cm-body ul.cm-purposes li.cm-service p.purposes,body.contrastmode .stripe-hl:not(.cm-black) .klaro .cookie-modal .cm-modal .cm-body ul.cm-purposes li.cm-purpose p.purposes,
    body.contrastmode .stripe-hl:not(.cm-black) >  .klaro .cookie-modal .cm-modal .cm-body ul.cm-purposes li.cm-purpose p.purposes {
  --tw-text-opacity: 1 !important;
  color: rgb(0 0 0 / var(--tw-text-opacity, 1)) !important;
}

body.contrastmode .is-popup .klaro .cookie-modal .cm-modal .cm-body ul.cm-services li.cm-service p.purposes,body.contrastmode .is-popup  .klaro .cookie-modal .cm-modal .cm-body ul.cm-services li.cm-purpose p.purposes,body.contrastmode .is-popup  .klaro .cookie-modal .cm-modal .cm-body ul.cm-purposes li.cm-service p.purposes,body.contrastmode .is-popup  .klaro .cookie-modal .cm-modal .cm-body ul.cm-purposes li.cm-purpose p.purposes {
  --tw-text-opacity: 1 !important;
  color: rgb(0 0 0 / var(--tw-text-opacity, 1)) !important;
}

.klaro .cookie-modal .cm-modal .cm-body ul.cm-services li.cm-service p.purposes, .klaro .cookie-modal .cm-modal .cm-body ul.cm-services li.cm-purpose p.purposes, .klaro .cookie-modal .cm-modal .cm-body ul.cm-purposes li.cm-service p.purposes, .klaro .cookie-modal .cm-modal .cm-body ul.cm-purposes li.cm-purpose p.purposes {
              font-size: 0.8em;
            }

.klaro .cookie-modal .cm-modal .cm-body ul.cm-services li.cm-service.cm-toggle-all, .klaro .cookie-modal .cm-modal .cm-body ul.cm-services li.cm-purpose.cm-toggle-all, .klaro .cookie-modal .cm-modal .cm-body ul.cm-purposes li.cm-service.cm-toggle-all, .klaro .cookie-modal .cm-modal .cm-body ul.cm-purposes li.cm-purpose.cm-toggle-all {
  border-top-width: 1px;
  --tw-border-opacity: 1;
  border-color: rgb(255 255 255 / var(--tw-border-opacity, 1));
              padding-top: 1em;
}

.klaro .cookie-modal .cm-modal .cm-body ul.cm-services li.cm-service span.cm-list-title, .klaro .cookie-modal .cm-modal .cm-body ul.cm-services li.cm-purpose span.cm-list-title, .klaro .cookie-modal .cm-modal .cm-body ul.cm-purposes li.cm-service span.cm-list-title, .klaro .cookie-modal .cm-modal .cm-body ul.cm-purposes li.cm-purpose span.cm-list-title {
              font-weight: 600;
            }

.klaro .cookie-modal .cm-modal .cm-body ul.cm-services li.cm-service span.cm-opt-out,
            .klaro .cookie-modal .cm-modal .cm-body ul.cm-services li.cm-service span.cm-required,
            .klaro .cookie-modal .cm-modal .cm-body ul.cm-services li.cm-purpose span.cm-opt-out,
            .klaro .cookie-modal .cm-modal .cm-body ul.cm-services li.cm-purpose span.cm-required,
            .klaro .cookie-modal .cm-modal .cm-body ul.cm-purposes li.cm-service span.cm-opt-out,
            .klaro .cookie-modal .cm-modal .cm-body ul.cm-purposes li.cm-service span.cm-required,
            .klaro .cookie-modal .cm-modal .cm-body ul.cm-purposes li.cm-purpose span.cm-opt-out,
            .klaro .cookie-modal .cm-modal .cm-body ul.cm-purposes li.cm-purpose span.cm-required {
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

.klaro .cookie-modal .cm-modal .cm-body ul.cm-services li.cm-service span.cm-opt-out .loading-indicator,
            .klaro .cookie-modal .cm-modal .cm-body ul.cm-services li.cm-service span.cm-required .loading-indicator,
            .klaro .cookie-modal .cm-modal .cm-body ul.cm-services li.cm-purpose span.cm-opt-out .loading-indicator,
            .klaro .cookie-modal .cm-modal .cm-body ul.cm-services li.cm-purpose span.cm-required .loading-indicator,
            .klaro .cookie-modal .cm-modal .cm-body ul.cm-purposes li.cm-service span.cm-opt-out .loading-indicator,
            .klaro .cookie-modal .cm-modal .cm-body ul.cm-purposes li.cm-service span.cm-required .loading-indicator,
            .klaro .cookie-modal .cm-modal .cm-body ul.cm-purposes li.cm-purpose span.cm-opt-out .loading-indicator,
            .klaro .cookie-modal .cm-modal .cm-body ul.cm-purposes li.cm-purpose span.cm-required .loading-indicator {
  --tw-invert: invert(100%);
  filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
}

body.contrastmode .stripe-hl:not(.cm-black).klaro .cookie-modal .cm-modal .cm-body ul.cm-services li.cm-service span.cm-opt-out,
    body.contrastmode .stripe-hl:not(.cm-black) > .klaro .cookie-modal .cm-modal .cm-body ul.cm-services li.cm-service span.cm-opt-out,body.contrastmode .stripe-hl:not(.cm-black)
            .klaro .cookie-modal .cm-modal .cm-body ul.cm-services li.cm-service span.cm-required,
    body.contrastmode .stripe-hl:not(.cm-black) > 
            .klaro .cookie-modal .cm-modal .cm-body ul.cm-services li.cm-service span.cm-required,body.contrastmode .stripe-hl:not(.cm-black)
            .klaro .cookie-modal .cm-modal .cm-body ul.cm-services li.cm-purpose span.cm-opt-out,
    body.contrastmode .stripe-hl:not(.cm-black) > 
            .klaro .cookie-modal .cm-modal .cm-body ul.cm-services li.cm-purpose span.cm-opt-out,body.contrastmode .stripe-hl:not(.cm-black)
            .klaro .cookie-modal .cm-modal .cm-body ul.cm-services li.cm-purpose span.cm-required,
    body.contrastmode .stripe-hl:not(.cm-black) > 
            .klaro .cookie-modal .cm-modal .cm-body ul.cm-services li.cm-purpose span.cm-required,body.contrastmode .stripe-hl:not(.cm-black)
            .klaro .cookie-modal .cm-modal .cm-body ul.cm-purposes li.cm-service span.cm-opt-out,
    body.contrastmode .stripe-hl:not(.cm-black) > 
            .klaro .cookie-modal .cm-modal .cm-body ul.cm-purposes li.cm-service span.cm-opt-out,body.contrastmode .stripe-hl:not(.cm-black)
            .klaro .cookie-modal .cm-modal .cm-body ul.cm-purposes li.cm-service span.cm-required,
    body.contrastmode .stripe-hl:not(.cm-black) > 
            .klaro .cookie-modal .cm-modal .cm-body ul.cm-purposes li.cm-service span.cm-required,body.contrastmode .stripe-hl:not(.cm-black)
            .klaro .cookie-modal .cm-modal .cm-body ul.cm-purposes li.cm-purpose span.cm-opt-out,
    body.contrastmode .stripe-hl:not(.cm-black) > 
            .klaro .cookie-modal .cm-modal .cm-body ul.cm-purposes li.cm-purpose span.cm-opt-out,body.contrastmode .stripe-hl:not(.cm-black)
            .klaro .cookie-modal .cm-modal .cm-body ul.cm-purposes li.cm-purpose span.cm-required,
    body.contrastmode .stripe-hl:not(.cm-black) > 
            .klaro .cookie-modal .cm-modal .cm-body ul.cm-purposes li.cm-purpose span.cm-required {
  --tw-text-opacity: 1 !important;
  color: rgb(0 0 0 / var(--tw-text-opacity, 1)) !important;
}

body.contrastmode .is-popup .klaro .cookie-modal .cm-modal .cm-body ul.cm-services li.cm-service span.cm-opt-out,body.contrastmode .is-popup 
            .klaro .cookie-modal .cm-modal .cm-body ul.cm-services li.cm-service span.cm-required,body.contrastmode .is-popup 
            .klaro .cookie-modal .cm-modal .cm-body ul.cm-services li.cm-purpose span.cm-opt-out,body.contrastmode .is-popup 
            .klaro .cookie-modal .cm-modal .cm-body ul.cm-services li.cm-purpose span.cm-required,body.contrastmode .is-popup 
            .klaro .cookie-modal .cm-modal .cm-body ul.cm-purposes li.cm-service span.cm-opt-out,body.contrastmode .is-popup 
            .klaro .cookie-modal .cm-modal .cm-body ul.cm-purposes li.cm-service span.cm-required,body.contrastmode .is-popup 
            .klaro .cookie-modal .cm-modal .cm-body ul.cm-purposes li.cm-purpose span.cm-opt-out,body.contrastmode .is-popup 
            .klaro .cookie-modal .cm-modal .cm-body ul.cm-purposes li.cm-purpose span.cm-required {
  --tw-text-opacity: 1 !important;
  color: rgb(0 0 0 / var(--tw-text-opacity, 1)) !important;
}

.klaro .cookie-modal .cm-modal .cm-body ul.cm-services li.cm-service span.cm-opt-out,
            .klaro .cookie-modal .cm-modal .cm-body ul.cm-services li.cm-service span.cm-required,
            .klaro .cookie-modal .cm-modal .cm-body ul.cm-services li.cm-purpose span.cm-opt-out,
            .klaro .cookie-modal .cm-modal .cm-body ul.cm-services li.cm-purpose span.cm-required,
            .klaro .cookie-modal .cm-modal .cm-body ul.cm-purposes li.cm-service span.cm-opt-out,
            .klaro .cookie-modal .cm-modal .cm-body ul.cm-purposes li.cm-service span.cm-required,
            .klaro .cookie-modal .cm-modal .cm-body ul.cm-purposes li.cm-purpose span.cm-opt-out,
            .klaro .cookie-modal .cm-modal .cm-body ul.cm-purposes li.cm-purpose span.cm-required {
              padding-left: 0.2em;
              font-size: 0.8em;
            }

.klaro .cm-list .cm-item {
      align-items: center;
      /* padding: map.get($cm-space, sm); */
      padding: 0.5rem;
      display: flex;
      flex-direction: row;
      align-items: top;
      justify-items: flex-end;
    }

@media (min-width: 900px) {

.klaro .cm-list .cm-item {
        /* @media (min-width: $cm-tablet) { */
    }
        .klaro .cm-list .cm-item span.cm-is-action {
          display: none;
        }
          .klaro .cm-list .cm-item:hover span.cm-is-action {
            display: inline-block;
          }
      }

.klaro .cm-list .cm-item:last-child {
        border-bottom: 0;
      }

.klaro .cm-list .cm-item:nth-child(2n) {
        /* @include var(background-color, light1); */
        background-color: rgb(255 255 255 / 0.4);
      }

.klaro .cm-list .cm-item.cm-is-header {
        font-weight: 600;
        /* margin-bottom: map.get($cm-space, xs); */

        background: none;
      }

.klaro .cm-list .cm-item.cm-is-card {
        /* @include var(background-color, white1);
            @include var(border-radius, border-radius); */
        --tw-bg-opacity: 1;
        background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
        /* box-shadow: $cm-box-shadow-dark-sm; */
        /* margin-bottom: map.get($cm-space, lg); */
      }

.klaro .cm-list .cm-item.cm-is-clickable {
        cursor: pointer;
      }

.klaro .cm-list .cm-item.cm-is-expandable {
        cursor: pointer;
      }

.klaro .cm-list .cm-item form {
        margin: 0;
      }

.klaro .cm-list .cm-item form label.label {
          font-weight: 300;
        }

.klaro .cm-list .cm-item span.cm-is-action {
        position: absolute;
        right: 1rem;
        top: 1rem;
      }

.klaro .cm-list .cm-item .cm-col {
        align-content: center;
        flex-basis: 0;
        /* margin: map.get($cm-space, sm); */
        margin: 0.5rem;
        flex-grow: 1;
      }

.klaro .cm-list .cm-item .cm-col.cm-is-xs {
          flex-grow: 1;
        }

.klaro .cm-list .cm-item .cm-col.cm-is-sm {
          flex-grow: 2;
        }

.klaro .cm-list .cm-item .cm-col.cm-is-md {
          flex-grow: 5;
        }

.klaro .cm-list .cm-item .cm-col.cm-is-lg {
          flex-grow: 10;
        }

.klaro .cm-list .cm-item .cm-col.cm-is-xl {
          flex-grow: 20;
        }

.klaro .cm-list .cm-item .cm-col.cm-is-icon {
          flex-basis: 50px;
          text-align: right;
          flex-grow: 0;
        }

.klaro .cm-list .cm-item .cm-content {
        flex: 10;
      }

.klaro .cm-switch-container {
    /* @include var(border-bottom-style, border-style);
    @include var(border-bottom-width, border-width);
    @include var(border-bottom-color, light2); */
    border-bottom-width: 1px;
    --tw-border-opacity: 1;
    border-color: rgb(255 255 255 / var(--tw-border-opacity, 1));

    display: block;
    position: relative;
    padding: 10px;
    padding-left: 66px;
    line-height: 20px;
    vertical-align: middle;
    min-height: 40px;
  }

.klaro .cm-switch-container:last-child {
      border-bottom: 0;
    }

.klaro .cm-switch-container:first-child {
      margin-top: 0;
    }

.klaro .cm-switch-container p {
      margin-top: 0;
    }

.klaro .cm-switch {
    position: relative;
    display: inline-block;
    width: 50px;
    height: 30px;
  }

.klaro .cm-list-input:checked + .cm-list-label .slider {
    /* @include var(background-color, green1); */
    --tw-bg-opacity: 1;
    background-color: rgb(132 204 22 / var(--tw-bg-opacity, 1));
  }

.klaro .cm-list-input.half-checked:checked + .cm-list-label .slider {
    @include var(background-color, green1);
    --tw-bg-opacity: 1;
    background-color: rgb(132 204 22 / var(--tw-bg-opacity, 1));
    opacity: 0.6;
  }

.klaro .cm-list-input.half-checked:checked + .cm-list-label .slider::before {
      transform: translateX(10px);
    }

.klaro .cm-list-input.only-required + .cm-list-label .slider {
    /* @include var(background-color, green2); */
    --tw-bg-opacity: 1;
    background-color: rgb(132 204 22 / var(--tw-bg-opacity, 1));

    opacity: 0.8;
  }

.klaro .cm-list-input.only-required + .cm-list-label .slider::before {
      transform: translateX(10px);
    }

.klaro .cm-list-input.required:checked + .cm-list-label .slider {
    /* @include var(background-color, green2); */
    --tw-bg-opacity: 1;
    background-color: rgb(132 204 22 / var(--tw-bg-opacity, 1));

    opacity: 0.8;
    cursor: not-allowed;
  }

.klaro .slider {
    /* box-shadow: $cm-box-shadow-dark-md; */
  }

.klaro .cm-list-input {
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0;
    width: 50px;
    height: 30px;
  }

.klaro .cm-list-title {
    font-size: 0.9em;
    font-weight: 600;
  }

.klaro .cm-list-description {
    /* @include var(color, dark3); */
    --tw-text-opacity: 1;
    color: rgb(255 255 255 / var(--tw-text-opacity, 1));
  }

.klaro .cm-list-description .loading-indicator {
  --tw-invert: invert(100%);
  filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
}

body.contrastmode .stripe-hl:not(.cm-black).klaro .cm-list-description,
    body.contrastmode .stripe-hl:not(.cm-black) > .klaro .cm-list-description {
  --tw-text-opacity: 1 !important;
  color: rgb(0 0 0 / var(--tw-text-opacity, 1)) !important;
}

body.contrastmode .is-popup .klaro .cm-list-description {
  --tw-text-opacity: 1 !important;
  color: rgb(0 0 0 / var(--tw-text-opacity, 1)) !important;
}

.klaro .cm-list-description {

    font-size: 0.9em;
    padding-top: 4px;
  }

/* The slider */

.klaro .cm-list-label .cm-switch {
      position: absolute;
      left: 0;
    }

.klaro .cm-list-label .slider {
      /* @include var(background-color, white2); */
      --tw-bg-opacity: 1;
      background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));

      position: absolute;
      cursor: pointer;
      top: 0;
      left: 0;
      right: 0;
      bottom: 0;
      transition: 0.4s;
      width: 50px;
      display: inline-block;
    }

.klaro .cm-list-label .slider::before {
      /* @include var(background-color, white3); */
      --tw-bg-opacity: 1;
      background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));

      position: absolute;
      content: "";
      height: 20px;
      width: 20px;
      left: 5px;
      bottom: 5px;
      transition: 0.4s;
    }

/* Rounded sliders */

.klaro .cm-list-label .slider.round {
      border-radius: 30px;
    }

.klaro .cm-list-label .slider.round::before {
      border-radius: 50%;
    }

.klaro .cm-list-label input:focus + .slider {
      /* @include var(box-shadow-color, green3); */
      /* @apply shadow-lime-bg-lime-500; */
      box-shadow: 0 0 1px black;
      /* box-shadow: 0 0 1px var(--box-shadow-color, green3); */
    }

.klaro .cm-list-label input:checked + .slider::before {
      transform: translateX(20px);
    }

.klaro .cm-list-input:focus + .cm-list-label .slider {
    box-shadow: 0 4px 6px 0 rgba(125, 125, 125, 0.2),
      5px 5px 10px 0 rgba(125, 125, 125, 0.19);
  }

.klaro .cm-list-input:checked + .cm-list-label .slider::before {
    transform: translateX(20px);
  }

.klaro .cookie-notice.cookie-modal-notice {
    padding: 1em;
    padding-top: 0.6em;
  
    
    z-index: 1001;
  
    width: 100%;
    max-height: 98%;
  
    top: 50%;
    transform: translateY(-50%);
  
    position: fixed;
    overflow: auto;
  }

@media (min-width: 840px) {

.klaro .cookie-notice.cookie-modal-notice {
      /* @apply rounded-lg; */
      position: relative;
      margin: 0 auto;
      max-width: 660px;
      height: auto;
      width: auto
  }
    }

.klaro .cookie-notice.cookie-modal-notice .cn-ok {
        display: flex;
        flex-flow: row;
        justify-content: space-between;
        align-items: center;
  
        margin-top: 1em;
    }

.klaro .cookie-notice:not(.cookie-modal-notice) {
    /* @include var(background-color, dark1); */
    z-index: 999;

    position: fixed;
    width: 100%;
    bottom: 0;
    right: 0;


}

/* @media (min-width: $cm-desktop) {
        @include var(border-radius, border-radius);
        @include var(position, notice-position);
        @include var(right, notice-right);
        @include var(left, notice-left);
        @include var(bottom, notice-bottom);
        @include var(top, notice-top);
        @include var(max-width, notice-max-width);
        box-shadow: $cm-box-shadow-dark-md;
    } */

/* @media (max-width: ($cm-desktop - 1)) {
        border-style: none;
        border-radius: 0;
    } */

.klaro .cookie-notice:not(.cookie-modal-notice).cn-embedded {
        position: relative;
        height: inherit;
        width: inherit;
        left: inherit;
        right: inherit;
        bottom: inherit;
        z-index: 0;
    }

.klaro .cookie-notice:not(.cookie-modal-notice).cn-embedded .cn-body {
            padding-top: 0.5em;
        }

.klaro .cookie-notice:not(.cookie-modal-notice) .cn-body {
        margin-bottom: 0;
        margin-right: 0;
        bottom: 0;

        padding: 1em;
        padding-top: 0;
    }

.klaro .cookie-notice:not(.cookie-modal-notice) .cn-body p {
            margin-bottom: 0.5em;
        }

.klaro .cookie-notice:not(.cookie-modal-notice) .cn-body p.cn-changes {
            text-decoration: underline;
        }

.klaro .cookie-notice:not(.cookie-modal-notice) .cn-body .cn-learn-more {
            display: inline-block;
            flex-grow: 1;
        }

/* .cn-buttons {
            display: inline-block;
            margin-top: -0.5em;

            @media (max-width: $cm-mobile) {
                width: 100%;
            } 

            button.cm-btn {
                margin-top: 0.5em;

                 @media (max-width: $cm-mobile) {
                    width: calc(50% - #{$btn-margin-right});
                } 
            }
        }  */

.klaro .cookie-notice:not(.cookie-modal-notice) .cn-body .cn-ok {
            /* // we add a margin that cancels out unless the items are wrapped
            // in which case it will add some spacing between them */
            margin-top: -0.5em;
            display: flex;
            flex-flow: row;
            flex-wrap: wrap;
            justify-content: right;
            align-items: baseline;
        }

.klaro .cookie-notice:not(.cookie-modal-notice) .cn-body .cn-ok a,
            .klaro .cookie-notice:not(.cookie-modal-notice) .cn-body .cn-ok div {
                margin-top: 0.5em;
            }

.klaro {
  --current-stripe-textcolor: #fff;
}

.klaro .cookie-notice {
  background-color: var(--current-stripe-color);
  padding: 1rem;
  font-size: clamp(1rem, calc(1rem + (1.0416666666666667 - 1) * ((100vw - 20rem) / (96 - 20))), 1.0416666666666667rem);
  color: var(--current-stripe-textcolor);
}

.klaro .cm-btn {
    /* @apply btn btn-outline btn-xs hover:bg-white/20; */
    text-transform: none;
    background-color: var(--current-stripe-textcolor);
    padding-left: 0.5rem;
    padding-right: 0.5rem;
    padding-top: 0.5rem;
    padding-bottom: 0.25rem;
    text-transform: uppercase;
    line-height: 1;
    color: var(--current-stripe-color);
  }

.klaro .cm-btn-decline, .klaro .cm-btn-accept-all {
  border-width: 1px;
  border-color: var(--current-stripe-textcolor);
  background-color: transparent;
  padding-left: 0.5rem;
  padding-right: 0.5rem;
  padding-top: 0.5rem;
  padding-bottom: 0.25rem;
  text-transform: uppercase;
  line-height: 1;
  color: var(--current-stripe-textcolor);
  font-size: 1rem;

  /* @apply px-4 py-2 text-gray-700 bg-transparent rounded border border-gray-700 transition duration-300 ease-in-out focus:outline-none focus:ring hover:bg-gray-200 hover:text-gray-900; */
}

.klaro .cookie-notice.cookie-modal-notice {
  border-radius: 0.75rem;
  padding-left: 1.5rem;
  padding-right: 1.5rem;
  padding-top: 3rem;
  padding-bottom: 3rem;
}

/* @apply btn btn-lg; */

/* @apply btn-lg; */

.klaro .cn-buttons .cm-btn.cn-decline {
  border-width: 1px;
  border-color: var(--current-stripe-textcolor);
  background-color: transparent;
  padding-left: 0.5rem;
  padding-right: 0.5rem;
  padding-top: 0.5rem;
  padding-bottom: 0.25rem;
  text-transform: uppercase;
  line-height: 1;
  color: var(--current-stripe-textcolor);
  font-size: 1rem;

  /* @apply px-4 py-2 text-gray-700 bg-transparent rounded border border-gray-700 transition duration-300 ease-in-out focus:outline-none focus:ring hover:bg-gray-200 hover:text-gray-900; */
}

.klaro .cn-ok {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
}

.klaro .cn-ok .cn-buttons {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 1rem;
}

@media (max-width: 839px) {

  .klaro .cn-ok .cn-buttons {
    width: 100%;
  }
}

.klaro .cn-ok .cn-learn-more {
  -webkit-text-decoration-line: underline;
          text-decoration-line: underline;
      /* @apply mt-5; */
}

.klaro .cm-footer-buttons {
  font-size: clamp(0.8888888888888888rem, calc(0.8888888888888888rem + (0.8680555555555557 - 0.8888888888888888) * ((100vw - 20rem) / (96 - 20))), 0.8680555555555557rem);
}

.klaro .cm-modal.cm-klaro {
  --tw-bg-opacity: 1;
  background-color: rgb(156 163 175 / var(--tw-bg-opacity, 1));
  --tw-text-opacity: 1;
  color: rgb(0 0 0 / var(--tw-text-opacity, 1));
  --tw-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);
  --tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.klaro .cm-modal.cm-klaro h1 {
  padding-bottom: 1rem;
  font-size: clamp(1.265625rem, calc(1.265625rem + (1.5 - 1.265625) * ((100vw - 20rem) / (96 - 20))), 1.5rem);
  line-height: 1;
}

.klaro .cm-modal.cm-klaro p {
  font-size: 0.9rem;
  line-height: 1.375;
}

.klaro .cm-modal.cm-klaro p a {
  -webkit-text-decoration-line: underline;
          text-decoration-line: underline;
}

@media (min-width: 840px) {

.klaro .cm-modal.cm-klaro {
        /* @apply rounded-lg; */
    }
      }

.klaro .cm-modal.cm-klaro .hide svg {
        stroke: black;
      }

.klaro .cm-modal.cm-klaro ul.cm-purposes {
  font-size: .9rem;
}

.klaro .cm-modal.cm-klaro .cm-caret {
  padding-top: 0.25rem;
  padding-bottom: 0.25rem;
  font-size: .9rem;
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

.klaro .cm-modal.cm-klaro .cm-caret .loading-indicator {
  --tw-invert: invert(100%);
  filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
}

body.contrastmode .stripe-hl:not(.cm-black).klaro .cm-modal.cm-klaro .cm-caret,
    body.contrastmode .stripe-hl:not(.cm-black) > .klaro .cm-modal.cm-klaro .cm-caret {
  --tw-text-opacity: 1 !important;
  color: rgb(0 0 0 / var(--tw-text-opacity, 1)) !important;
}

body.contrastmode .is-popup .klaro .cm-modal.cm-klaro .cm-caret {
  --tw-text-opacity: 1 !important;
  color: rgb(0 0 0 / var(--tw-text-opacity, 1)) !important;
}

.klaro .cm-modal.cm-klaro .cm-list-description {
  font-size: .9rem;
}

.klaro .cm-modal.cm-klaro .cm-footer {
  border-top-width: 1px;
  --tw-border-opacity: 1;
  border-top-color: rgb(255 255 255 / var(--tw-border-opacity, 1));
}

.klaro .cm-modal.cm-klaro .cm-powered-by {
  margin-top: 1rem;
  text-align: right;
  font-size: 0.8rem;
  opacity: 0.5;
}

/**
 * Swiper 8.4.7
 * Most modern mobile touch slider and framework with hardware accelerated transitions
 * https://swiperjs.com
 *
 * Copyright 2014-2023 Vladimir Kharlampidi
 *
 * Released under the MIT License
 *
 * Released on: January 30, 2023
 */

@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');
  font-weight: 400;
  font-style: normal;
}

:root {
  --swiper-theme-color: #007aff;
}

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

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

.swiper-wrapper {
  position: relative;
  width: 100%;
  height: 100%;
  z-index: 1;
  display: flex;
  transition-property: transform;
  box-sizing: content-box;
}

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

.swiper-pointer-events {
  touch-action: pan-y;
}

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

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

.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-3d.swiper-css-mode .swiper-wrapper {
  perspective: 1200px;
}

.swiper-3d .swiper-wrapper,
.swiper-3d .swiper-slide,
.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-cube-shadow {
  transform-style: preserve-3d;
}

.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));
}

/* 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-horizontal.swiper-css-mode > .swiper-wrapper {
  scroll-snap-type: x mandatory;
}

.swiper-vertical.swiper-css-mode > .swiper-wrapper {
  scroll-snap-type: y mandatory;
}

.swiper-centered > .swiper-wrapper::before {
  content: '';
  flex-shrink: 0;
  order: 9999;
}

.swiper-centered.swiper-horizontal > .swiper-wrapper > .swiper-slide:first-child {
  margin-inline-start: var(--swiper-centered-offset-before);
}

.swiper-centered.swiper-horizontal > .swiper-wrapper::before {
  height: 100%;
  min-height: 1px;
  width: var(--swiper-centered-offset-after);
}

.swiper-centered.swiper-vertical > .swiper-wrapper > .swiper-slide:first-child {
  margin-block-start: var(--swiper-centered-offset-before);
}

.swiper-centered.swiper-vertical > .swiper-wrapper::before {
  width: 100%;
  min-width: 1px;
  height: var(--swiper-centered-offset-after);
}

.swiper-centered > .swiper-wrapper > .swiper-slide {
  scroll-snap-align: center center;
  scroll-snap-stop: always;
}

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

.swiper-virtual.swiper-css-mode .swiper-wrapper::after {
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  pointer-events: none;
}

.swiper-virtual.swiper-css-mode.swiper-horizontal .swiper-wrapper::after {
  height: 1px;
  width: var(--swiper-virtual-size);
}

.swiper-virtual.swiper-css-mode.swiper-vertical .swiper-wrapper::after {
  width: 1px;
  height: var(--swiper-virtual-size);
}

:root {
  --swiper-navigation-size: 44px;
  /*
  --swiper-navigation-color: var(--swiper-theme-color);
  */
}

.swiper-button-prev,
.swiper-button-next {
  position: absolute;
  top: 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: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,
.swiper-rtl .swiper-button-next {
  left: 10px;
  right: auto;
}

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

.swiper-button-next,
.swiper-rtl .swiper-button-prev {
  right: 10px;
  left: auto;
}

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

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

:root {
  /*
  --swiper-pagination-color: var(--swiper-theme-color);
  --swiper-pagination-bullet-size: 8px;
  --swiper-pagination-bullet-width: 8px;
  --swiper-pagination-bullet-height: 8px;
  --swiper-pagination-bullet-inactive-color: #000;
  --swiper-pagination-bullet-inactive-opacity: 0.2;
  --swiper-pagination-bullet-opacity: 1;
  --swiper-pagination-bullet-horizontal-gap: 4px;
  --swiper-pagination-bullet-vertical-gap: 6px;
  */
}

.swiper-pagination {
  position: absolute;
  text-align: center;
  transition: 300ms opacity;
  transform: translate3d(0, 0, 0);
  z-index: 10;
}

.swiper-pagination.swiper-pagination-hidden {
  opacity: 0;
}

.swiper-pagination-disabled > .swiper-pagination,
.swiper-pagination.swiper-pagination-disabled {
  display: none !important;
}

/* Common Styles */

.swiper-pagination-fraction,
.swiper-pagination-custom,
.swiper-horizontal > .swiper-pagination-bullets,
.swiper-pagination-bullets.swiper-pagination-horizontal {
  bottom: 10px;
  left: 0;
  width: 100%;
}

/* Bullets */

.swiper-pagination-bullets-dynamic {
  overflow: hidden;
  font-size: 0;
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  transform: scale(0.33);
  position: relative;
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active {
  transform: scale(1);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main {
  transform: scale(1);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev {
  transform: scale(0.66);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev {
  transform: scale(0.33);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next {
  transform: scale(0.66);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next {
  transform: scale(0.33);
}

.swiper-pagination-bullet {
  width: var(--swiper-pagination-bullet-width, var(--swiper-pagination-bullet-size, 8px));
  height: var(--swiper-pagination-bullet-height, var(--swiper-pagination-bullet-size, 8px));
  display: inline-block;
  border-radius: 50%;
  background: var(--swiper-pagination-bullet-inactive-color, #000);
  opacity: var(--swiper-pagination-bullet-inactive-opacity, 0.2);
}

button.swiper-pagination-bullet {
  border: none;
  margin: 0;
  padding: 0;
  box-shadow: none;
  -webkit-appearance: none;
          -moz-appearance: none;
       appearance: none;
}

.swiper-pagination-clickable .swiper-pagination-bullet {
  cursor: pointer;
}

.swiper-pagination-bullet:only-child {
  display: none !important;
}

.swiper-pagination-bullet-active {
  opacity: var(--swiper-pagination-bullet-opacity, 1);
  background: var(--swiper-pagination-color, var(--swiper-theme-color));
}

.swiper-vertical > .swiper-pagination-bullets,
.swiper-pagination-vertical.swiper-pagination-bullets {
  right: 10px;
  top: 50%;
  transform: translate3d(0px, -50%, 0);
}

.swiper-vertical > .swiper-pagination-bullets .swiper-pagination-bullet,
.swiper-pagination-vertical.swiper-pagination-bullets .swiper-pagination-bullet {
  margin: var(--swiper-pagination-bullet-vertical-gap, 6px) 0;
  display: block;
}

.swiper-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic,
.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
  top: 50%;
  transform: translateY(-50%);
  width: 8px;
}

.swiper-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,
.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  display: inline-block;
  transition: 200ms transform, 200ms top;
}

.swiper-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet,
.swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 0 var(--swiper-pagination-bullet-horizontal-gap, 4px);
}

.swiper-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic,
.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
  left: 50%;
  transform: translateX(-50%);
  white-space: nowrap;
}

.swiper-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,
.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  transition: 200ms transform, 200ms left;
}

.swiper-horizontal.swiper-rtl > .swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  transition: 200ms transform, 200ms right;
}

/* Progress */

.swiper-pagination-progressbar {
  background: rgba(0, 0, 0, 0.25);
  position: absolute;
}

.swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  background: var(--swiper-pagination-color, var(--swiper-theme-color));
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  transform: scale(0);
  transform-origin: left top;
}

.swiper-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  transform-origin: right top;
}

.swiper-horizontal > .swiper-pagination-progressbar,
.swiper-pagination-progressbar.swiper-pagination-horizontal,
.swiper-vertical > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite,
.swiper-pagination-progressbar.swiper-pagination-vertical.swiper-pagination-progressbar-opposite {
  width: 100%;
  height: 4px;
  left: 0;
  top: 0;
}

.swiper-vertical > .swiper-pagination-progressbar,
.swiper-pagination-progressbar.swiper-pagination-vertical,
.swiper-horizontal > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite,
.swiper-pagination-progressbar.swiper-pagination-horizontal.swiper-pagination-progressbar-opposite {
  width: 4px;
  height: 100%;
  left: 0;
  top: 0;
}

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

/* Scrollbar */

.swiper-scrollbar {
  border-radius: 10px;
  position: relative;
  -ms-touch-action: none;
  background: rgba(0, 0, 0, 0.1);
}

.swiper-scrollbar-disabled > .swiper-scrollbar,
.swiper-scrollbar.swiper-scrollbar-disabled {
  display: none !important;
}

.swiper-horizontal > .swiper-scrollbar,
.swiper-scrollbar.swiper-scrollbar-horizontal {
  position: absolute;
  left: 1%;
  bottom: 3px;
  z-index: 50;
  height: 5px;
  width: 98%;
}

.swiper-vertical > .swiper-scrollbar,
.swiper-scrollbar.swiper-scrollbar-vertical {
  position: absolute;
  right: 3px;
  top: 1%;
  z-index: 50;
  width: 5px;
  height: 98%;
}

.swiper-scrollbar-drag {
  height: 100%;
  width: 100%;
  position: relative;
  background: rgba(0, 0, 0, 0.5);
  border-radius: 10px;
  left: 0;
  top: 0;
}

.swiper-scrollbar-cursor-drag {
  cursor: move;
}

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

.swiper-zoom-container {
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
}

.swiper-zoom-container > img,
.swiper-zoom-container > svg,
.swiper-zoom-container > canvas {
  max-width: 100%;
  max-height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}

.swiper-slide-zoomed {
  cursor: move;
}

/* Preloader */

:root {
  /*
  --swiper-preloader-color: var(--swiper-theme-color);
  */
}

.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);
  }
}

/* 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;
}

.swiper-grid > .swiper-wrapper {
  flex-wrap: wrap;
}

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

.swiper-fade.swiper-free-mode .swiper-slide {
  transition-timing-function: ease-out;
}

.swiper-fade .swiper-slide {
  pointer-events: none;
  transition-property: opacity;
}

.swiper-fade .swiper-slide .swiper-slide {
  pointer-events: none;
}

.swiper-fade .swiper-slide-active,
.swiper-fade .swiper-slide-active .swiper-slide-active {
  pointer-events: auto;
}

.swiper-cube {
  overflow: visible;
}

.swiper-cube .swiper-slide {
  pointer-events: none;
  backface-visibility: hidden;
  z-index: 1;
  visibility: hidden;
  transform-origin: 0 0;
  width: 100%;
  height: 100%;
}

.swiper-cube .swiper-slide .swiper-slide {
  pointer-events: none;
}

.swiper-cube.swiper-rtl .swiper-slide {
  transform-origin: 100% 0;
}

.swiper-cube .swiper-slide-active,
.swiper-cube .swiper-slide-active .swiper-slide-active {
  pointer-events: auto;
}

.swiper-cube .swiper-slide-active,
.swiper-cube .swiper-slide-next,
.swiper-cube .swiper-slide-prev,
.swiper-cube .swiper-slide-next + .swiper-slide {
  pointer-events: auto;
  visibility: visible;
}

.swiper-cube .swiper-slide-shadow-top,
.swiper-cube .swiper-slide-shadow-bottom,
.swiper-cube .swiper-slide-shadow-left,
.swiper-cube .swiper-slide-shadow-right {
  z-index: 0;
  backface-visibility: hidden;
}

.swiper-cube .swiper-cube-shadow {
  position: absolute;
  left: 0;
  bottom: 0px;
  width: 100%;
  height: 100%;
  opacity: 0.6;
  z-index: 0;
}

.swiper-cube .swiper-cube-shadow:before {
  content: '';
  background: #000;
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  right: 0;
  filter: blur(50px);
}

.swiper-flip {
  overflow: visible;
}

.swiper-flip .swiper-slide {
  pointer-events: none;
  backface-visibility: hidden;
  z-index: 1;
}

.swiper-flip .swiper-slide .swiper-slide {
  pointer-events: none;
}

.swiper-flip .swiper-slide-active,
.swiper-flip .swiper-slide-active .swiper-slide-active {
  pointer-events: auto;
}

.swiper-flip .swiper-slide-shadow-top,
.swiper-flip .swiper-slide-shadow-bottom,
.swiper-flip .swiper-slide-shadow-left,
.swiper-flip .swiper-slide-shadow-right {
  z-index: 0;
  backface-visibility: hidden;
}

.swiper-creative .swiper-slide {
  backface-visibility: hidden;
  overflow: hidden;
  transition-property: transform, opacity, height;
}

.swiper-cards {
  overflow: visible;
}

.swiper-cards .swiper-slide {
  transform-origin: center bottom;
  backface-visibility: hidden;
  overflow: hidden;
}

:root {
  --swiper-theme-color: white;
  --swiper-navigation-size: 26px;
}

.opacity-pulse {
  animation: opacityPulse 2s ease-out;
  animation-iteration-count: infinite;
  opacity: 1;
}

.pulsate {
  animation: pulsate 2s ease-out;
  animation-iteration-count: infinite;
}

@media (min-width: 840px) {

  .sm\:aspect-h-1 {
    --tw-aspect-h: 1;
  }

  .sm\:aspect-w-1 {
    position: relative;
    padding-bottom: calc(var(--tw-aspect-h) / var(--tw-aspect-w) * 100%);
    --tw-aspect-w: 1;
  }

  .sm\:aspect-w-1 > * {
    position: absolute;
    height: 100%;
    width: 100%;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
  }
}

.hover\:text-red-500:hover {
  --tw-text-opacity: 1;
  color: rgb(239 68 68 / var(--tw-text-opacity, 1));
}

.hover\:opacity-100:hover {
  opacity: 1;
}

.hover\:opacity-50:hover {
  opacity: 0.5;
}

.hover\:opacity-60:hover {
  opacity: 0.6;
}

.focus\:outline-none:focus {
  outline: 2px solid transparent;
  outline-offset: 2px;
}

.focus\:ring-2:focus {
  --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
}

.focus\:ring-indigo-500:focus {
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(99 102 241 / var(--tw-ring-opacity, 1));
}

@media (min-width: 840px) {

  .sm\:col-span-1 {
    grid-column: span 1 / span 1;
  }

  .sm\:col-span-10 {
    grid-column: span 10 / span 10;
  }

  .sm\:col-span-11 {
    grid-column: span 11 / span 11;
  }

  .sm\:col-span-12 {
    grid-column: span 12 / span 12;
  }

  .sm\:col-span-2 {
    grid-column: span 2 / span 2;
  }

  .sm\:col-span-3 {
    grid-column: span 3 / span 3;
  }

  .sm\:col-span-4 {
    grid-column: span 4 / span 4;
  }

  .sm\:col-span-5 {
    grid-column: span 5 / span 5;
  }

  .sm\:col-span-6 {
    grid-column: span 6 / span 6;
  }

  .sm\:col-span-7 {
    grid-column: span 7 / span 7;
  }

  .sm\:col-span-8 {
    grid-column: span 8 / span 8;
  }

  .sm\:col-span-9 {
    grid-column: span 9 / span 9;
  }

  .sm\:-mt-1 {
    margin-top: -0.25rem;
  }

  .sm\:flex {
    display: flex;
  }

  .sm\:grid {
    display: grid;
  }

  .sm\:hidden {
    display: none;
  }

  .sm\:w-1\/3 {
    width: 33.333333%;
  }

  .sm\:w-2\/3 {
    width: 66.666667%;
  }

  .sm\:auto-cols-\[minmax\(0\2c 1fr\)\] {
    grid-auto-columns: minmax(0,1fr);
  }

  .sm\:grid-flow-col {
    grid-auto-flow: column;
  }

  .sm\:grid-cols-12 {
    grid-template-columns: repeat(12, minmax(0, 1fr));
  }

  .sm\:grid-cols-3 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .sm\:grid-cols-\[minmax\(0\2c _1fr\)_minmax\(0\2c _1fr\)\] {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  }

  .sm\:gap-16 {
    gap: 4rem;
  }

  .sm\:gap-2 {
    gap: 0.5rem;
  }

  .sm\:gap-4 {
    gap: 1rem;
  }

  .sm\:gap-6 {
    gap: 1.5rem;
  }

  .sm\:space-x-4 > :not([hidden]) ~ :not([hidden]) {
    --tw-space-x-reverse: 0;
    margin-right: calc(1rem * var(--tw-space-x-reverse));
    margin-left: calc(1rem * calc(1 - var(--tw-space-x-reverse)));
  }

  .sm\:space-x-6 > :not([hidden]) ~ :not([hidden]) {
    --tw-space-x-reverse: 0;
    margin-right: calc(1.5rem * var(--tw-space-x-reverse));
    margin-left: calc(1.5rem * calc(1 - var(--tw-space-x-reverse)));
  }

  .sm\:object-contain {
    -o-object-fit: contain;
       object-fit: contain;
  }

  .sm\:px-6 {
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }

  .sm\:pr-8 {
    padding-right: 2rem;
  }

  .sm\:duration-500 {
    transition-duration: 500ms;
  }
}

@media (min-width: 900px) {

  .md\:\!mt-0 {
    margin-top: 0px !important;
  }

  .md\:flex {
    display: flex;
  }

  .md\:w-1\/3 {
    width: 33.333333%;
  }

  .md\:w-2\/3 {
    width: 66.666667%;
  }

  .md\:min-w-\[400px\] {
    min-width: 400px;
  }

  .md\:space-x-6 > :not([hidden]) ~ :not([hidden]) {
    --tw-space-x-reverse: 0;
    margin-right: calc(1.5rem * var(--tw-space-x-reverse));
    margin-left: calc(1.5rem * calc(1 - var(--tw-space-x-reverse)));
  }

  .md\:border-r {
    border-right-width: 1px;
  }

  .md\:object-contain {
    -o-object-fit: contain;
       object-fit: contain;
  }

  .md\:last\:border-r-0:last-child {
    border-right-width: 0px;
  }
}

@media (max-width: 839px) {

  .xs\:order-first {
    order: -9999;
  }

  .xs\:order-last {
    order: 9999;
  }

  .xs\:-mx-4 {
    margin-left: -1rem;
    margin-right: -1rem;
  }

  .xs\:mb-12 {
    margin-bottom: 3rem;
  }

  .xs\:mb-16 {
    margin-bottom: 4rem;
  }

  .xs\:ml-4 {
    margin-left: 1rem;
  }

  .xs\:mt-2 {
    margin-top: 0.5rem;
  }

  .xs\:flex {
    display: flex;
  }

  .xs\:w-\[80vw\] {
    width: 80vw;
  }

  .xs\:flex-col {
    flex-direction: column;
  }

  .xs\:space-y-2 > :not([hidden]) ~ :not([hidden]) {
    --tw-space-y-reverse: 0;
    margin-top: calc(0.5rem * calc(1 - var(--tw-space-y-reverse)));
    margin-bottom: calc(0.5rem * var(--tw-space-y-reverse));
  }

  .xs\:space-y-4 > :not([hidden]) ~ :not([hidden]) {
    --tw-space-y-reverse: 0;
    margin-top: calc(1rem * calc(1 - var(--tw-space-y-reverse)));
    margin-bottom: calc(1rem * var(--tw-space-y-reverse));
  }

  .xs\:space-y-6 > :not([hidden]) ~ :not([hidden]) {
    --tw-space-y-reverse: 0;
    margin-top: calc(1.5rem * calc(1 - var(--tw-space-y-reverse)));
    margin-bottom: calc(1.5rem * var(--tw-space-y-reverse));
  }

  .xs\:border-b {
    border-bottom-width: 1px;
  }
}

@media (min-width: 640px) {

  .b640\:hidden {
    display: none;
  }

  .b640\:h-24 {
    height: 6rem;
  }

  .b640\:h-32 {
    height: 8rem;
  }

  .b640\:min-h-\[calc\(100vh-6rem\)\] {
    min-height: calc(100vh - 6rem);
  }

  .b640\:w-32 {
    width: 8rem;
  }

  .b640\:w-40 {
    width: 10rem;
  }

  .b640\:max-w-md {
    max-width: 28rem;
  }

  .b640\:justify-end {
    justify-content: flex-end;
  }

  .b640\:px-8 {
    padding-left: 2rem;
    padding-right: 2rem;
  }

  .b640\:text-sm {
    font-size: clamp(1rem, calc(1rem + (1.0416666666666667 - 1) * ((100vw - 20rem) / (96 - 20))), 1.0416666666666667rem);
  }
}

@media (max-width: 639px) {

  .bl640\:mx-\[3vw\] {
    margin-left: 3vw;
    margin-right: 3vw;
  }

  .bl640\:mt-\[78vw\] {
    margin-top: 78vw;
  }

  .bl640\:hidden {
    display: none;
  }

  .bl640\:h-\[40vw\] {
    height: 40vw;
  }

  .bl640\:h-\[78vw\] {
    height: 78vw;
  }

  .bl640\:min-h-\[calc\(100vh-3rem\)\] {
    min-height: calc(100vh - 3rem);
  }

  .bl640\:w-\[40vw\] {
    width: 40vw;
  }

  .bl640\:w-\[50vw\] {
    width: 50vw;
  }

  .bl640\:flex-auto {
    flex: 1 1 auto;
  }

  .bl640\:justify-around {
    justify-content: space-around;
  }

  .bl640\:py-4 {
    padding-top: 1rem;
    padding-bottom: 1rem;
  }

  .bl640\:font-soleil_book {
    font-family: Soleil-Book, ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  }

  .bl640\:text-\[3\.5vw\] {
    font-size: 3.5vw;
  }

  .bl640\:leading-snug {
    line-height: 1.375;
  }
}

@media (max-width: 809px) {

  .bl810\:hidden {
    display: none;
  }
}
