@charset "UTF-8";
/*!
 * Bootstrap Grid v5.0.0-beta1 (https://getbootstrap.com/)
 * Copyright 2011-2020 The Bootstrap Authors
 * Copyright 2011-2020 Twitter, Inc.
 * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
 */
.container,
.container-fluid,
.container-xxl,
.container-xl,
.container-lg,
.container-md,
.container-sm {
  width: 100%;
  padding-right: var(--bs-gutter-x, 0.75rem);
  padding-left: var(--bs-gutter-x, 0.75rem);
  margin-right: auto;
  margin-left: auto;
}

@media (min-width: 576px) {
  .container-sm, .container {
    max-width: 540px;
  }
}
@media (min-width: 768px) {
  .container-md, .container-sm, .container {
    max-width: 720px;
  }
}
@media (min-width: 992px) {
  .container-lg, .container-md, .container-sm, .container {
    max-width: 960px;
  }
}
@media (min-width: 1200px) {
  .container-xl, .container-lg, .container-md, .container-sm, .container {
    max-width: 1140px;
  }
}
@media (min-width: 1400px) {
  .container-xxl, .container-xl, .container-lg, .container-md, .container-sm, .container {
    max-width: 1320px;
  }
}
.row {
  --bs-gutter-x: 1.5rem;
  --bs-gutter-y: 0;
  display: flex;
  flex-wrap: wrap;
  margin-top: calc(var(--bs-gutter-y) * -1);
  margin-right: calc(var(--bs-gutter-x) / -2);
  margin-left: calc(var(--bs-gutter-x) / -2);
}
.row > * {
  box-sizing: border-box;
  flex-shrink: 0;
  width: 100%;
  max-width: 100%;
  padding-right: calc(var(--bs-gutter-x) / 2);
  padding-left: calc(var(--bs-gutter-x) / 2);
  margin-top: var(--bs-gutter-y);
}

.col {
  flex: 1 0 0%;
}

.row-cols-auto > * {
  flex: 0 0 auto;
  width: auto;
}

.row-cols-1 > * {
  flex: 0 0 auto;
  width: 100%;
}

.row-cols-2 > * {
  flex: 0 0 auto;
  width: 50%;
}

.row-cols-3 > * {
  flex: 0 0 auto;
  width: 33.3333333333%;
}

.row-cols-4 > * {
  flex: 0 0 auto;
  width: 25%;
}

.row-cols-5 > * {
  flex: 0 0 auto;
  width: 20%;
}

.row-cols-6 > * {
  flex: 0 0 auto;
  width: 16.6666666667%;
}

.col-auto {
  flex: 0 0 auto;
  width: auto;
}

.col-1 {
  flex: 0 0 auto;
  width: 8.3333333333%;
}

.col-2 {
  flex: 0 0 auto;
  width: 16.6666666667%;
}

.col-3 {
  flex: 0 0 auto;
  width: 25%;
}

.col-4 {
  flex: 0 0 auto;
  width: 33.3333333333%;
}

.col-5 {
  flex: 0 0 auto;
  width: 41.6666666667%;
}

.col-6 {
  flex: 0 0 auto;
  width: 50%;
}

.col-7 {
  flex: 0 0 auto;
  width: 58.3333333333%;
}

.col-8 {
  flex: 0 0 auto;
  width: 66.6666666667%;
}

.col-9 {
  flex: 0 0 auto;
  width: 75%;
}

.col-10 {
  flex: 0 0 auto;
  width: 83.3333333333%;
}

.col-11 {
  flex: 0 0 auto;
  width: 91.6666666667%;
}

.col-12 {
  flex: 0 0 auto;
  width: 100%;
}

.offset-1 {
  margin-left: 8.3333333333%;
}

.offset-2 {
  margin-left: 16.6666666667%;
}

.offset-3 {
  margin-left: 25%;
}

.offset-4 {
  margin-left: 33.3333333333%;
}

.offset-5 {
  margin-left: 41.6666666667%;
}

.offset-6 {
  margin-left: 50%;
}

.offset-7 {
  margin-left: 58.3333333333%;
}

.offset-8 {
  margin-left: 66.6666666667%;
}

.offset-9 {
  margin-left: 75%;
}

.offset-10 {
  margin-left: 83.3333333333%;
}

.offset-11 {
  margin-left: 91.6666666667%;
}

.g-0,
.gx-0 {
  --bs-gutter-x: 0;
}

.g-0,
.gy-0 {
  --bs-gutter-y: 0;
}

.g-1,
.gx-1 {
  --bs-gutter-x: 0.25rem;
}

.g-1,
.gy-1 {
  --bs-gutter-y: 0.25rem;
}

.g-2,
.gx-2 {
  --bs-gutter-x: 0.5rem;
}

.g-2,
.gy-2 {
  --bs-gutter-y: 0.5rem;
}

.g-3,
.gx-3 {
  --bs-gutter-x: 1rem;
}

.g-3,
.gy-3 {
  --bs-gutter-y: 1rem;
}

.g-4,
.gx-4 {
  --bs-gutter-x: 1.5rem;
}

.g-4,
.gy-4 {
  --bs-gutter-y: 1.5rem;
}

.g-5,
.gx-5 {
  --bs-gutter-x: 3rem;
}

.g-5,
.gy-5 {
  --bs-gutter-y: 3rem;
}

@media (min-width: 576px) {
  .col-sm {
    flex: 1 0 0%;
  }
  .row-cols-sm-auto > * {
    flex: 0 0 auto;
    width: auto;
  }
  .row-cols-sm-1 > * {
    flex: 0 0 auto;
    width: 100%;
  }
  .row-cols-sm-2 > * {
    flex: 0 0 auto;
    width: 50%;
  }
  .row-cols-sm-3 > * {
    flex: 0 0 auto;
    width: 33.3333333333%;
  }
  .row-cols-sm-4 > * {
    flex: 0 0 auto;
    width: 25%;
  }
  .row-cols-sm-5 > * {
    flex: 0 0 auto;
    width: 20%;
  }
  .row-cols-sm-6 > * {
    flex: 0 0 auto;
    width: 16.6666666667%;
  }
  .col-sm-auto {
    flex: 0 0 auto;
    width: auto;
  }
  .col-sm-1 {
    flex: 0 0 auto;
    width: 8.3333333333%;
  }
  .col-sm-2 {
    flex: 0 0 auto;
    width: 16.6666666667%;
  }
  .col-sm-3 {
    flex: 0 0 auto;
    width: 25%;
  }
  .col-sm-4 {
    flex: 0 0 auto;
    width: 33.3333333333%;
  }
  .col-sm-5 {
    flex: 0 0 auto;
    width: 41.6666666667%;
  }
  .col-sm-6 {
    flex: 0 0 auto;
    width: 50%;
  }
  .col-sm-7 {
    flex: 0 0 auto;
    width: 58.3333333333%;
  }
  .col-sm-8 {
    flex: 0 0 auto;
    width: 66.6666666667%;
  }
  .col-sm-9 {
    flex: 0 0 auto;
    width: 75%;
  }
  .col-sm-10 {
    flex: 0 0 auto;
    width: 83.3333333333%;
  }
  .col-sm-11 {
    flex: 0 0 auto;
    width: 91.6666666667%;
  }
  .col-sm-12 {
    flex: 0 0 auto;
    width: 100%;
  }
  .offset-sm-0 {
    margin-left: 0;
  }
  .offset-sm-1 {
    margin-left: 8.3333333333%;
  }
  .offset-sm-2 {
    margin-left: 16.6666666667%;
  }
  .offset-sm-3 {
    margin-left: 25%;
  }
  .offset-sm-4 {
    margin-left: 33.3333333333%;
  }
  .offset-sm-5 {
    margin-left: 41.6666666667%;
  }
  .offset-sm-6 {
    margin-left: 50%;
  }
  .offset-sm-7 {
    margin-left: 58.3333333333%;
  }
  .offset-sm-8 {
    margin-left: 66.6666666667%;
  }
  .offset-sm-9 {
    margin-left: 75%;
  }
  .offset-sm-10 {
    margin-left: 83.3333333333%;
  }
  .offset-sm-11 {
    margin-left: 91.6666666667%;
  }
  .g-sm-0,
  .gx-sm-0 {
    --bs-gutter-x: 0;
  }
  .g-sm-0,
  .gy-sm-0 {
    --bs-gutter-y: 0;
  }
  .g-sm-1,
  .gx-sm-1 {
    --bs-gutter-x: 0.25rem;
  }
  .g-sm-1,
  .gy-sm-1 {
    --bs-gutter-y: 0.25rem;
  }
  .g-sm-2,
  .gx-sm-2 {
    --bs-gutter-x: 0.5rem;
  }
  .g-sm-2,
  .gy-sm-2 {
    --bs-gutter-y: 0.5rem;
  }
  .g-sm-3,
  .gx-sm-3 {
    --bs-gutter-x: 1rem;
  }
  .g-sm-3,
  .gy-sm-3 {
    --bs-gutter-y: 1rem;
  }
  .g-sm-4,
  .gx-sm-4 {
    --bs-gutter-x: 1.5rem;
  }
  .g-sm-4,
  .gy-sm-4 {
    --bs-gutter-y: 1.5rem;
  }
  .g-sm-5,
  .gx-sm-5 {
    --bs-gutter-x: 3rem;
  }
  .g-sm-5,
  .gy-sm-5 {
    --bs-gutter-y: 3rem;
  }
}
@media (min-width: 768px) {
  .col-md {
    flex: 1 0 0%;
  }
  .row-cols-md-auto > * {
    flex: 0 0 auto;
    width: auto;
  }
  .row-cols-md-1 > * {
    flex: 0 0 auto;
    width: 100%;
  }
  .row-cols-md-2 > * {
    flex: 0 0 auto;
    width: 50%;
  }
  .row-cols-md-3 > * {
    flex: 0 0 auto;
    width: 33.3333333333%;
  }
  .row-cols-md-4 > * {
    flex: 0 0 auto;
    width: 25%;
  }
  .row-cols-md-5 > * {
    flex: 0 0 auto;
    width: 20%;
  }
  .row-cols-md-6 > * {
    flex: 0 0 auto;
    width: 16.6666666667%;
  }
  .col-md-auto {
    flex: 0 0 auto;
    width: auto;
  }
  .col-md-1 {
    flex: 0 0 auto;
    width: 8.3333333333%;
  }
  .col-md-2 {
    flex: 0 0 auto;
    width: 16.6666666667%;
  }
  .col-md-3 {
    flex: 0 0 auto;
    width: 25%;
  }
  .col-md-4 {
    flex: 0 0 auto;
    width: 33.3333333333%;
  }
  .col-md-5 {
    flex: 0 0 auto;
    width: 41.6666666667%;
  }
  .col-md-6 {
    flex: 0 0 auto;
    width: 50%;
  }
  .col-md-7 {
    flex: 0 0 auto;
    width: 58.3333333333%;
  }
  .col-md-8 {
    flex: 0 0 auto;
    width: 66.6666666667%;
  }
  .col-md-9 {
    flex: 0 0 auto;
    width: 75%;
  }
  .col-md-10 {
    flex: 0 0 auto;
    width: 83.3333333333%;
  }
  .col-md-11 {
    flex: 0 0 auto;
    width: 91.6666666667%;
  }
  .col-md-12 {
    flex: 0 0 auto;
    width: 100%;
  }
  .offset-md-0 {
    margin-left: 0;
  }
  .offset-md-1 {
    margin-left: 8.3333333333%;
  }
  .offset-md-2 {
    margin-left: 16.6666666667%;
  }
  .offset-md-3 {
    margin-left: 25%;
  }
  .offset-md-4 {
    margin-left: 33.3333333333%;
  }
  .offset-md-5 {
    margin-left: 41.6666666667%;
  }
  .offset-md-6 {
    margin-left: 50%;
  }
  .offset-md-7 {
    margin-left: 58.3333333333%;
  }
  .offset-md-8 {
    margin-left: 66.6666666667%;
  }
  .offset-md-9 {
    margin-left: 75%;
  }
  .offset-md-10 {
    margin-left: 83.3333333333%;
  }
  .offset-md-11 {
    margin-left: 91.6666666667%;
  }
  .g-md-0,
  .gx-md-0 {
    --bs-gutter-x: 0;
  }
  .g-md-0,
  .gy-md-0 {
    --bs-gutter-y: 0;
  }
  .g-md-1,
  .gx-md-1 {
    --bs-gutter-x: 0.25rem;
  }
  .g-md-1,
  .gy-md-1 {
    --bs-gutter-y: 0.25rem;
  }
  .g-md-2,
  .gx-md-2 {
    --bs-gutter-x: 0.5rem;
  }
  .g-md-2,
  .gy-md-2 {
    --bs-gutter-y: 0.5rem;
  }
  .g-md-3,
  .gx-md-3 {
    --bs-gutter-x: 1rem;
  }
  .g-md-3,
  .gy-md-3 {
    --bs-gutter-y: 1rem;
  }
  .g-md-4,
  .gx-md-4 {
    --bs-gutter-x: 1.5rem;
  }
  .g-md-4,
  .gy-md-4 {
    --bs-gutter-y: 1.5rem;
  }
  .g-md-5,
  .gx-md-5 {
    --bs-gutter-x: 3rem;
  }
  .g-md-5,
  .gy-md-5 {
    --bs-gutter-y: 3rem;
  }
}
@media (min-width: 992px) {
  .col-lg {
    flex: 1 0 0%;
  }
  .row-cols-lg-auto > * {
    flex: 0 0 auto;
    width: auto;
  }
  .row-cols-lg-1 > * {
    flex: 0 0 auto;
    width: 100%;
  }
  .row-cols-lg-2 > * {
    flex: 0 0 auto;
    width: 50%;
  }
  .row-cols-lg-3 > * {
    flex: 0 0 auto;
    width: 33.3333333333%;
  }
  .row-cols-lg-4 > * {
    flex: 0 0 auto;
    width: 25%;
  }
  .row-cols-lg-5 > * {
    flex: 0 0 auto;
    width: 20%;
  }
  .row-cols-lg-6 > * {
    flex: 0 0 auto;
    width: 16.6666666667%;
  }
  .col-lg-auto {
    flex: 0 0 auto;
    width: auto;
  }
  .col-lg-1 {
    flex: 0 0 auto;
    width: 8.3333333333%;
  }
  .col-lg-2 {
    flex: 0 0 auto;
    width: 16.6666666667%;
  }
  .col-lg-3 {
    flex: 0 0 auto;
    width: 25%;
  }
  .col-lg-4 {
    flex: 0 0 auto;
    width: 33.3333333333%;
  }
  .col-lg-5 {
    flex: 0 0 auto;
    width: 41.6666666667%;
  }
  .col-lg-6 {
    flex: 0 0 auto;
    width: 50%;
  }
  .col-lg-7 {
    flex: 0 0 auto;
    width: 58.3333333333%;
  }
  .col-lg-8 {
    flex: 0 0 auto;
    width: 66.6666666667%;
  }
  .col-lg-9 {
    flex: 0 0 auto;
    width: 75%;
  }
  .col-lg-10 {
    flex: 0 0 auto;
    width: 83.3333333333%;
  }
  .col-lg-11 {
    flex: 0 0 auto;
    width: 91.6666666667%;
  }
  .col-lg-12 {
    flex: 0 0 auto;
    width: 100%;
  }
  .offset-lg-0 {
    margin-left: 0;
  }
  .offset-lg-1 {
    margin-left: 8.3333333333%;
  }
  .offset-lg-2 {
    margin-left: 16.6666666667%;
  }
  .offset-lg-3 {
    margin-left: 25%;
  }
  .offset-lg-4 {
    margin-left: 33.3333333333%;
  }
  .offset-lg-5 {
    margin-left: 41.6666666667%;
  }
  .offset-lg-6 {
    margin-left: 50%;
  }
  .offset-lg-7 {
    margin-left: 58.3333333333%;
  }
  .offset-lg-8 {
    margin-left: 66.6666666667%;
  }
  .offset-lg-9 {
    margin-left: 75%;
  }
  .offset-lg-10 {
    margin-left: 83.3333333333%;
  }
  .offset-lg-11 {
    margin-left: 91.6666666667%;
  }
  .g-lg-0,
  .gx-lg-0 {
    --bs-gutter-x: 0;
  }
  .g-lg-0,
  .gy-lg-0 {
    --bs-gutter-y: 0;
  }
  .g-lg-1,
  .gx-lg-1 {
    --bs-gutter-x: 0.25rem;
  }
  .g-lg-1,
  .gy-lg-1 {
    --bs-gutter-y: 0.25rem;
  }
  .g-lg-2,
  .gx-lg-2 {
    --bs-gutter-x: 0.5rem;
  }
  .g-lg-2,
  .gy-lg-2 {
    --bs-gutter-y: 0.5rem;
  }
  .g-lg-3,
  .gx-lg-3 {
    --bs-gutter-x: 1rem;
  }
  .g-lg-3,
  .gy-lg-3 {
    --bs-gutter-y: 1rem;
  }
  .g-lg-4,
  .gx-lg-4 {
    --bs-gutter-x: 1.5rem;
  }
  .g-lg-4,
  .gy-lg-4 {
    --bs-gutter-y: 1.5rem;
  }
  .g-lg-5,
  .gx-lg-5 {
    --bs-gutter-x: 3rem;
  }
  .g-lg-5,
  .gy-lg-5 {
    --bs-gutter-y: 3rem;
  }
}
@media (min-width: 1200px) {
  .col-xl {
    flex: 1 0 0%;
  }
  .row-cols-xl-auto > * {
    flex: 0 0 auto;
    width: auto;
  }
  .row-cols-xl-1 > * {
    flex: 0 0 auto;
    width: 100%;
  }
  .row-cols-xl-2 > * {
    flex: 0 0 auto;
    width: 50%;
  }
  .row-cols-xl-3 > * {
    flex: 0 0 auto;
    width: 33.3333333333%;
  }
  .row-cols-xl-4 > * {
    flex: 0 0 auto;
    width: 25%;
  }
  .row-cols-xl-5 > * {
    flex: 0 0 auto;
    width: 20%;
  }
  .row-cols-xl-6 > * {
    flex: 0 0 auto;
    width: 16.6666666667%;
  }
  .col-xl-auto {
    flex: 0 0 auto;
    width: auto;
  }
  .col-xl-1 {
    flex: 0 0 auto;
    width: 8.3333333333%;
  }
  .col-xl-2 {
    flex: 0 0 auto;
    width: 16.6666666667%;
  }
  .col-xl-3 {
    flex: 0 0 auto;
    width: 25%;
  }
  .col-xl-4 {
    flex: 0 0 auto;
    width: 33.3333333333%;
  }
  .col-xl-5 {
    flex: 0 0 auto;
    width: 41.6666666667%;
  }
  .col-xl-6 {
    flex: 0 0 auto;
    width: 50%;
  }
  .col-xl-7 {
    flex: 0 0 auto;
    width: 58.3333333333%;
  }
  .col-xl-8 {
    flex: 0 0 auto;
    width: 66.6666666667%;
  }
  .col-xl-9 {
    flex: 0 0 auto;
    width: 75%;
  }
  .col-xl-10 {
    flex: 0 0 auto;
    width: 83.3333333333%;
  }
  .col-xl-11 {
    flex: 0 0 auto;
    width: 91.6666666667%;
  }
  .col-xl-12 {
    flex: 0 0 auto;
    width: 100%;
  }
  .offset-xl-0 {
    margin-left: 0;
  }
  .offset-xl-1 {
    margin-left: 8.3333333333%;
  }
  .offset-xl-2 {
    margin-left: 16.6666666667%;
  }
  .offset-xl-3 {
    margin-left: 25%;
  }
  .offset-xl-4 {
    margin-left: 33.3333333333%;
  }
  .offset-xl-5 {
    margin-left: 41.6666666667%;
  }
  .offset-xl-6 {
    margin-left: 50%;
  }
  .offset-xl-7 {
    margin-left: 58.3333333333%;
  }
  .offset-xl-8 {
    margin-left: 66.6666666667%;
  }
  .offset-xl-9 {
    margin-left: 75%;
  }
  .offset-xl-10 {
    margin-left: 83.3333333333%;
  }
  .offset-xl-11 {
    margin-left: 91.6666666667%;
  }
  .g-xl-0,
  .gx-xl-0 {
    --bs-gutter-x: 0;
  }
  .g-xl-0,
  .gy-xl-0 {
    --bs-gutter-y: 0;
  }
  .g-xl-1,
  .gx-xl-1 {
    --bs-gutter-x: 0.25rem;
  }
  .g-xl-1,
  .gy-xl-1 {
    --bs-gutter-y: 0.25rem;
  }
  .g-xl-2,
  .gx-xl-2 {
    --bs-gutter-x: 0.5rem;
  }
  .g-xl-2,
  .gy-xl-2 {
    --bs-gutter-y: 0.5rem;
  }
  .g-xl-3,
  .gx-xl-3 {
    --bs-gutter-x: 1rem;
  }
  .g-xl-3,
  .gy-xl-3 {
    --bs-gutter-y: 1rem;
  }
  .g-xl-4,
  .gx-xl-4 {
    --bs-gutter-x: 1.5rem;
  }
  .g-xl-4,
  .gy-xl-4 {
    --bs-gutter-y: 1.5rem;
  }
  .g-xl-5,
  .gx-xl-5 {
    --bs-gutter-x: 3rem;
  }
  .g-xl-5,
  .gy-xl-5 {
    --bs-gutter-y: 3rem;
  }
}
@media (min-width: 1400px) {
  .col-xxl {
    flex: 1 0 0%;
  }
  .row-cols-xxl-auto > * {
    flex: 0 0 auto;
    width: auto;
  }
  .row-cols-xxl-1 > * {
    flex: 0 0 auto;
    width: 100%;
  }
  .row-cols-xxl-2 > * {
    flex: 0 0 auto;
    width: 50%;
  }
  .row-cols-xxl-3 > * {
    flex: 0 0 auto;
    width: 33.3333333333%;
  }
  .row-cols-xxl-4 > * {
    flex: 0 0 auto;
    width: 25%;
  }
  .row-cols-xxl-5 > * {
    flex: 0 0 auto;
    width: 20%;
  }
  .row-cols-xxl-6 > * {
    flex: 0 0 auto;
    width: 16.6666666667%;
  }
  .col-xxl-auto {
    flex: 0 0 auto;
    width: auto;
  }
  .col-xxl-1 {
    flex: 0 0 auto;
    width: 8.3333333333%;
  }
  .col-xxl-2 {
    flex: 0 0 auto;
    width: 16.6666666667%;
  }
  .col-xxl-3 {
    flex: 0 0 auto;
    width: 25%;
  }
  .col-xxl-4 {
    flex: 0 0 auto;
    width: 33.3333333333%;
  }
  .col-xxl-5 {
    flex: 0 0 auto;
    width: 41.6666666667%;
  }
  .col-xxl-6 {
    flex: 0 0 auto;
    width: 50%;
  }
  .col-xxl-7 {
    flex: 0 0 auto;
    width: 58.3333333333%;
  }
  .col-xxl-8 {
    flex: 0 0 auto;
    width: 66.6666666667%;
  }
  .col-xxl-9 {
    flex: 0 0 auto;
    width: 75%;
  }
  .col-xxl-10 {
    flex: 0 0 auto;
    width: 83.3333333333%;
  }
  .col-xxl-11 {
    flex: 0 0 auto;
    width: 91.6666666667%;
  }
  .col-xxl-12 {
    flex: 0 0 auto;
    width: 100%;
  }
  .offset-xxl-0 {
    margin-left: 0;
  }
  .offset-xxl-1 {
    margin-left: 8.3333333333%;
  }
  .offset-xxl-2 {
    margin-left: 16.6666666667%;
  }
  .offset-xxl-3 {
    margin-left: 25%;
  }
  .offset-xxl-4 {
    margin-left: 33.3333333333%;
  }
  .offset-xxl-5 {
    margin-left: 41.6666666667%;
  }
  .offset-xxl-6 {
    margin-left: 50%;
  }
  .offset-xxl-7 {
    margin-left: 58.3333333333%;
  }
  .offset-xxl-8 {
    margin-left: 66.6666666667%;
  }
  .offset-xxl-9 {
    margin-left: 75%;
  }
  .offset-xxl-10 {
    margin-left: 83.3333333333%;
  }
  .offset-xxl-11 {
    margin-left: 91.6666666667%;
  }
  .g-xxl-0,
  .gx-xxl-0 {
    --bs-gutter-x: 0;
  }
  .g-xxl-0,
  .gy-xxl-0 {
    --bs-gutter-y: 0;
  }
  .g-xxl-1,
  .gx-xxl-1 {
    --bs-gutter-x: 0.25rem;
  }
  .g-xxl-1,
  .gy-xxl-1 {
    --bs-gutter-y: 0.25rem;
  }
  .g-xxl-2,
  .gx-xxl-2 {
    --bs-gutter-x: 0.5rem;
  }
  .g-xxl-2,
  .gy-xxl-2 {
    --bs-gutter-y: 0.5rem;
  }
  .g-xxl-3,
  .gx-xxl-3 {
    --bs-gutter-x: 1rem;
  }
  .g-xxl-3,
  .gy-xxl-3 {
    --bs-gutter-y: 1rem;
  }
  .g-xxl-4,
  .gx-xxl-4 {
    --bs-gutter-x: 1.5rem;
  }
  .g-xxl-4,
  .gy-xxl-4 {
    --bs-gutter-y: 1.5rem;
  }
  .g-xxl-5,
  .gx-xxl-5 {
    --bs-gutter-x: 3rem;
  }
  .g-xxl-5,
  .gy-xxl-5 {
    --bs-gutter-y: 3rem;
  }
}
.align-baseline {
  vertical-align: baseline !important;
}

.align-top {
  vertical-align: top !important;
}

.align-middle {
  vertical-align: middle !important;
}

.align-bottom {
  vertical-align: bottom !important;
}

.align-text-bottom {
  vertical-align: text-bottom !important;
}

.align-text-top {
  vertical-align: text-top !important;
}

.float-start {
  float: left !important;
}

.float-end {
  float: right !important;
}

.float-none {
  float: none !important;
}

.overflow-auto {
  overflow: auto !important;
}

.overflow-hidden {
  overflow: hidden !important;
}

.overflow-visible {
  overflow: visible !important;
}

.overflow-scroll {
  overflow: scroll !important;
}

.d-inline {
  display: inline !important;
}

.d-inline-block {
  display: inline-block !important;
}

.d-block {
  display: block !important;
}

.d-grid {
  display: grid !important;
}

.d-table {
  display: table !important;
}

.d-table-row {
  display: table-row !important;
}

.d-table-cell {
  display: table-cell !important;
}

.d-flex {
  display: flex !important;
}

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

.d-none {
  display: none !important;
}

.shadow {
  box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15) !important;
}

.shadow-sm {
  box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075) !important;
}

.shadow-lg {
  box-shadow: 0 1rem 3rem rgba(0, 0, 0, 0.175) !important;
}

.shadow-none {
  box-shadow: none !important;
}

.position-static {
  position: static !important;
}

.position-relative {
  position: relative !important;
}

.position-absolute {
  position: absolute !important;
}

.position-fixed {
  position: fixed !important;
}

.position-sticky {
  position: sticky !important;
}

.top-0 {
  top: 0 !important;
}

.top-50 {
  top: 50% !important;
}

.top-100 {
  top: 100% !important;
}

.bottom-0 {
  bottom: 0 !important;
}

.bottom-50 {
  bottom: 50% !important;
}

.bottom-100 {
  bottom: 100% !important;
}

.start-0 {
  left: 0 !important;
}

.start-50 {
  left: 50% !important;
}

.start-100 {
  left: 100% !important;
}

.end-0 {
  right: 0 !important;
}

.end-50 {
  right: 50% !important;
}

.end-100 {
  right: 100% !important;
}

.translate-middle {
  transform: translate(-50%, -50%) !important;
}

.translate-middle-x {
  transform: translateX(-50%) !important;
}

.translate-middle-y {
  transform: translateY(-50%) !important;
}

.border {
  border: 1px solid #dee2e6 !important;
}

.border-0 {
  border: 0 !important;
}

.border-top {
  border-top: 1px solid #dee2e6 !important;
}

.border-top-0 {
  border-top: 0 !important;
}

.border-end {
  border-right: 1px solid #dee2e6 !important;
}

.border-end-0 {
  border-right: 0 !important;
}

.border-bottom {
  border-bottom: 1px solid #dee2e6 !important;
}

.border-bottom-0 {
  border-bottom: 0 !important;
}

.border-start {
  border-left: 1px solid #dee2e6 !important;
}

.border-start-0 {
  border-left: 0 !important;
}

.border-primary {
  border-color: #0d6efd !important;
}

.border-secondary {
  border-color: #6c757d !important;
}

.border-success {
  border-color: #198754 !important;
}

.border-info {
  border-color: #0dcaf0 !important;
}

.border-warning {
  border-color: #ffc107 !important;
}

.border-danger {
  border-color: #dc3545 !important;
}

.border-light {
  border-color: #f8f9fa !important;
}

.border-dark {
  border-color: #212529 !important;
}

.border-white {
  border-color: #fff !important;
}

.border-0 {
  border-width: 0 !important;
}

.border-1 {
  border-width: 1px !important;
}

.border-2 {
  border-width: 2px !important;
}

.border-3 {
  border-width: 3px !important;
}

.border-4 {
  border-width: 4px !important;
}

.border-5 {
  border-width: 5px !important;
}

.w-25 {
  width: 25% !important;
}

.w-50 {
  width: 50% !important;
}

.w-75 {
  width: 75% !important;
}

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

.w-auto {
  width: auto !important;
}

.mw-100 {
  max-width: 100% !important;
}

.vw-100 {
  width: 100vw !important;
}

.min-vw-100 {
  min-width: 100vw !important;
}

.h-25 {
  height: 25% !important;
}

.h-50 {
  height: 50% !important;
}

.h-75 {
  height: 75% !important;
}

.h-100 {
  height: 100% !important;
}

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

.mh-100 {
  max-height: 100% !important;
}

.vh-100 {
  height: 100vh !important;
}

.min-vh-100 {
  min-height: 100vh !important;
}

.flex-fill {
  flex: 1 1 auto !important;
}

.flex-row {
  flex-direction: row !important;
}

.flex-column {
  flex-direction: column !important;
}

.flex-row-reverse {
  flex-direction: row-reverse !important;
}

.flex-column-reverse {
  flex-direction: column-reverse !important;
}

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

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

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

.flex-shrink-1 {
  flex-shrink: 1 !important;
}

.flex-wrap {
  flex-wrap: wrap !important;
}

.flex-nowrap {
  flex-wrap: nowrap !important;
}

.flex-wrap-reverse {
  flex-wrap: wrap-reverse !important;
}

.gap-0 {
  gap: 0 !important;
}

.gap-1 {
  gap: 0.25rem !important;
}

.gap-2 {
  gap: 0.5rem !important;
}

.gap-3 {
  gap: 1rem !important;
}

.gap-4 {
  gap: 1.5rem !important;
}

.gap-5 {
  gap: 3rem !important;
}

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

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

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

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

.justify-content-around {
  justify-content: space-around !important;
}

.justify-content-evenly {
  justify-content: space-evenly !important;
}

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

.align-items-end {
  align-items: flex-end !important;
}

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

.align-items-baseline {
  align-items: baseline !important;
}

.align-items-stretch {
  align-items: stretch !important;
}

.align-content-start {
  align-content: flex-start !important;
}

.align-content-end {
  align-content: flex-end !important;
}

.align-content-center {
  align-content: center !important;
}

.align-content-between {
  align-content: space-between !important;
}

.align-content-around {
  align-content: space-around !important;
}

.align-content-stretch {
  align-content: stretch !important;
}

.align-self-auto {
  align-self: auto !important;
}

.align-self-start {
  align-self: flex-start !important;
}

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

.align-self-center {
  align-self: center !important;
}

.align-self-baseline {
  align-self: baseline !important;
}

.align-self-stretch {
  align-self: stretch !important;
}

.order-first {
  order: -1 !important;
}

.order-0 {
  order: 0 !important;
}

.order-1 {
  order: 1 !important;
}

.order-2 {
  order: 2 !important;
}

.order-3 {
  order: 3 !important;
}

.order-4 {
  order: 4 !important;
}

.order-5 {
  order: 5 !important;
}

.order-last {
  order: 6 !important;
}

.m-0 {
  margin: 0 !important;
}

.m-1 {
  margin: 0.25rem !important;
}

.m-2 {
  margin: 0.5rem !important;
}

.m-3 {
  margin: 1rem !important;
}

.m-4 {
  margin: 1.5rem !important;
}

.m-5 {
  margin: 3rem !important;
}

.m-auto {
  margin: auto !important;
}

.mx-0 {
  margin-right: 0 !important;
  margin-left: 0 !important;
}

.mx-1 {
  margin-right: 0.25rem !important;
  margin-left: 0.25rem !important;
}

.mx-2 {
  margin-right: 0.5rem !important;
  margin-left: 0.5rem !important;
}

.mx-3 {
  margin-right: 1rem !important;
  margin-left: 1rem !important;
}

.mx-4 {
  margin-right: 1.5rem !important;
  margin-left: 1.5rem !important;
}

.mx-5 {
  margin-right: 3rem !important;
  margin-left: 3rem !important;
}

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

.my-0 {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

.my-1 {
  margin-top: 0.25rem !important;
  margin-bottom: 0.25rem !important;
}

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

.my-3 {
  margin-top: 1rem !important;
  margin-bottom: 1rem !important;
}

.my-4 {
  margin-top: 1.5rem !important;
  margin-bottom: 1.5rem !important;
}

.my-5 {
  margin-top: 3rem !important;
  margin-bottom: 3rem !important;
}

.my-auto {
  margin-top: auto !important;
  margin-bottom: auto !important;
}

.mt-0 {
  margin-top: 0 !important;
}

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

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

.mt-3 {
  margin-top: 1rem !important;
}

.mt-4 {
  margin-top: 1.5rem !important;
}

.mt-5 {
  margin-top: 3rem !important;
}

.mt-auto {
  margin-top: auto !important;
}

.me-0 {
  margin-right: 0 !important;
}

.me-1 {
  margin-right: 0.25rem !important;
}

.me-2 {
  margin-right: 0.5rem !important;
}

.me-3 {
  margin-right: 1rem !important;
}

.me-4 {
  margin-right: 1.5rem !important;
}

.me-5 {
  margin-right: 3rem !important;
}

.me-auto {
  margin-right: auto !important;
}

.mb-0 {
  margin-bottom: 0 !important;
}

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

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

.mb-3 {
  margin-bottom: 1rem !important;
}

.mb-4 {
  margin-bottom: 1.5rem !important;
}

.mb-5 {
  margin-bottom: 3rem !important;
}

.mb-auto {
  margin-bottom: auto !important;
}

.ms-0 {
  margin-left: 0 !important;
}

.ms-1 {
  margin-left: 0.25rem !important;
}

.ms-2 {
  margin-left: 0.5rem !important;
}

.ms-3 {
  margin-left: 1rem !important;
}

.ms-4 {
  margin-left: 1.5rem !important;
}

.ms-5 {
  margin-left: 3rem !important;
}

.ms-auto {
  margin-left: auto !important;
}

.p-0 {
  padding: 0 !important;
}

.p-1 {
  padding: 0.25rem !important;
}

.p-2 {
  padding: 0.5rem !important;
}

.p-3 {
  padding: 1rem !important;
}

.p-4 {
  padding: 1.5rem !important;
}

.p-5 {
  padding: 3rem !important;
}

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

.px-1 {
  padding-right: 0.25rem !important;
  padding-left: 0.25rem !important;
}

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

.px-3 {
  padding-right: 1rem !important;
  padding-left: 1rem !important;
}

.px-4 {
  padding-right: 1.5rem !important;
  padding-left: 1.5rem !important;
}

.px-5 {
  padding-right: 3rem !important;
  padding-left: 3rem !important;
}

.py-0 {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

.py-1 {
  padding-top: 0.25rem !important;
  padding-bottom: 0.25rem !important;
}

.py-2 {
  padding-top: 0.5rem !important;
  padding-bottom: 0.5rem !important;
}

.py-3 {
  padding-top: 1rem !important;
  padding-bottom: 1rem !important;
}

.py-4 {
  padding-top: 1.5rem !important;
  padding-bottom: 1.5rem !important;
}

.py-5 {
  padding-top: 3rem !important;
  padding-bottom: 3rem !important;
}

.pt-0 {
  padding-top: 0 !important;
}

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

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

.pt-3 {
  padding-top: 1rem !important;
}

.pt-4 {
  padding-top: 1.5rem !important;
}

.pt-5 {
  padding-top: 3rem !important;
}

.pe-0 {
  padding-right: 0 !important;
}

.pe-1 {
  padding-right: 0.25rem !important;
}

.pe-2 {
  padding-right: 0.5rem !important;
}

.pe-3 {
  padding-right: 1rem !important;
}

.pe-4 {
  padding-right: 1.5rem !important;
}

.pe-5 {
  padding-right: 3rem !important;
}

.pb-0 {
  padding-bottom: 0 !important;
}

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

.pb-2 {
  padding-bottom: 0.5rem !important;
}

.pb-3 {
  padding-bottom: 1rem !important;
}

.pb-4 {
  padding-bottom: 1.5rem !important;
}

.pb-5 {
  padding-bottom: 3rem !important;
}

.ps-0 {
  padding-left: 0 !important;
}

.ps-1 {
  padding-left: 0.25rem !important;
}

.ps-2 {
  padding-left: 0.5rem !important;
}

.ps-3 {
  padding-left: 1rem !important;
}

.ps-4 {
  padding-left: 1.5rem !important;
}

.ps-5 {
  padding-left: 3rem !important;
}

.fs-1 {
  font-size: calc(1.375rem + 1.5vw) !important;
}

.fs-2 {
  font-size: calc(1.325rem + 0.9vw) !important;
}

.fs-3 {
  font-size: calc(1.3rem + 0.6vw) !important;
}

.fs-4 {
  font-size: calc(1.275rem + 0.3vw) !important;
}

.fs-5 {
  font-size: 1.25rem !important;
}

.fs-6 {
  font-size: 1rem !important;
}

.fst-italic {
  font-style: italic !important;
}

.fst-normal {
  font-style: normal !important;
}

.fw-light {
  font-weight: 300 !important;
}

.fw-lighter {
  font-weight: lighter !important;
}

.fw-normal {
  font-weight: 400 !important;
}

.fw-bold {
  font-weight: 700 !important;
}

.fw-bolder {
  font-weight: bolder !important;
}

.text-lowercase {
  text-transform: lowercase !important;
}

.text-uppercase {
  text-transform: uppercase !important;
}

.text-capitalize {
  text-transform: capitalize !important;
}

.text-start {
  text-align: left !important;
}

.text-end {
  text-align: right !important;
}

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

.text-primary {
  color: #0d6efd !important;
}

.text-secondary {
  color: #6c757d !important;
}

.text-success {
  color: #198754 !important;
}

.text-info {
  color: #0dcaf0 !important;
}

.text-warning {
  color: #ffc107 !important;
}

.text-danger {
  color: #dc3545 !important;
}

.text-light {
  color: #f8f9fa !important;
}

.text-dark {
  color: #212529 !important;
}

.text-white {
  color: #fff !important;
}

.text-body {
  color: #212529 !important;
}

.text-muted {
  color: #6c757d !important;
}

.text-black-50 {
  color: rgba(0, 0, 0, 0.5) !important;
}

.text-white-50 {
  color: rgba(255, 255, 255, 0.5) !important;
}

.text-reset {
  color: inherit !important;
}

.lh-1 {
  line-height: 1 !important;
}

.lh-sm {
  line-height: 1.25 !important;
}

.lh-base {
  line-height: 1.5 !important;
}

.lh-lg {
  line-height: 2 !important;
}

.bg-primary {
  background-color: #0d6efd !important;
}

.bg-secondary {
  background-color: #6c757d !important;
}

.bg-success {
  background-color: #198754 !important;
}

.bg-info {
  background-color: #0dcaf0 !important;
}

.bg-warning {
  background-color: #ffc107 !important;
}

.bg-danger {
  background-color: #dc3545 !important;
}

.bg-light {
  background-color: #f8f9fa !important;
}

.bg-dark {
  background-color: #212529 !important;
}

.bg-body {
  background-color: #fff !important;
}

.bg-white {
  background-color: #fff !important;
}

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

.bg-gradient {
  background-image: var(--bs-gradient) !important;
}

.text-wrap {
  white-space: normal !important;
}

.text-nowrap {
  white-space: nowrap !important;
}

.text-decoration-none {
  text-decoration: none !important;
}

.text-decoration-underline {
  text-decoration: underline !important;
}

.text-decoration-line-through {
  text-decoration: line-through !important;
}

/* rtl:begin:remove */
.text-break {
  word-wrap: break-word !important;
  word-break: break-word !important;
}

/* rtl:end:remove */
.font-monospace {
  font-family: var(--bs-font-monospace) !important;
}

.user-select-all {
  user-select: all !important;
}

.user-select-auto {
  user-select: auto !important;
}

.user-select-none {
  user-select: none !important;
}

.pe-none {
  pointer-events: none !important;
}

.pe-auto {
  pointer-events: auto !important;
}

.rounded {
  border-radius: 0.25rem !important;
}

.rounded-0 {
  border-radius: 0 !important;
}

.rounded-1 {
  border-radius: 0.2rem !important;
}

.rounded-2 {
  border-radius: 0.25rem !important;
}

.rounded-3 {
  border-radius: 0.3rem !important;
}

.rounded-circle {
  border-radius: 50% !important;
}

.rounded-pill {
  border-radius: 50rem !important;
}

.rounded-top {
  border-top-left-radius: 0.25rem !important;
  border-top-right-radius: 0.25rem !important;
}

.rounded-end {
  border-top-right-radius: 0.25rem !important;
  border-bottom-right-radius: 0.25rem !important;
}

.rounded-bottom {
  border-bottom-right-radius: 0.25rem !important;
  border-bottom-left-radius: 0.25rem !important;
}

.rounded-start {
  border-bottom-left-radius: 0.25rem !important;
  border-top-left-radius: 0.25rem !important;
}

.visible {
  visibility: visible !important;
}

.invisible {
  visibility: hidden !important;
}

@media (min-width: 576px) {
  .float-sm-start {
    float: left !important;
  }
  .float-sm-end {
    float: right !important;
  }
  .float-sm-none {
    float: none !important;
  }
  .d-sm-inline {
    display: inline !important;
  }
  .d-sm-inline-block {
    display: inline-block !important;
  }
  .d-sm-block {
    display: block !important;
  }
  .d-sm-grid {
    display: grid !important;
  }
  .d-sm-table {
    display: table !important;
  }
  .d-sm-table-row {
    display: table-row !important;
  }
  .d-sm-table-cell {
    display: table-cell !important;
  }
  .d-sm-flex {
    display: flex !important;
  }
  .d-sm-inline-flex {
    display: inline-flex !important;
  }
  .d-sm-none {
    display: none !important;
  }
  .flex-sm-fill {
    flex: 1 1 auto !important;
  }
  .flex-sm-row {
    flex-direction: row !important;
  }
  .flex-sm-column {
    flex-direction: column !important;
  }
  .flex-sm-row-reverse {
    flex-direction: row-reverse !important;
  }
  .flex-sm-column-reverse {
    flex-direction: column-reverse !important;
  }
  .flex-sm-grow-0 {
    flex-grow: 0 !important;
  }
  .flex-sm-grow-1 {
    flex-grow: 1 !important;
  }
  .flex-sm-shrink-0 {
    flex-shrink: 0 !important;
  }
  .flex-sm-shrink-1 {
    flex-shrink: 1 !important;
  }
  .flex-sm-wrap {
    flex-wrap: wrap !important;
  }
  .flex-sm-nowrap {
    flex-wrap: nowrap !important;
  }
  .flex-sm-wrap-reverse {
    flex-wrap: wrap-reverse !important;
  }
  .gap-sm-0 {
    gap: 0 !important;
  }
  .gap-sm-1 {
    gap: 0.25rem !important;
  }
  .gap-sm-2 {
    gap: 0.5rem !important;
  }
  .gap-sm-3 {
    gap: 1rem !important;
  }
  .gap-sm-4 {
    gap: 1.5rem !important;
  }
  .gap-sm-5 {
    gap: 3rem !important;
  }
  .justify-content-sm-start {
    justify-content: flex-start !important;
  }
  .justify-content-sm-end {
    justify-content: flex-end !important;
  }
  .justify-content-sm-center {
    justify-content: center !important;
  }
  .justify-content-sm-between {
    justify-content: space-between !important;
  }
  .justify-content-sm-around {
    justify-content: space-around !important;
  }
  .justify-content-sm-evenly {
    justify-content: space-evenly !important;
  }
  .align-items-sm-start {
    align-items: flex-start !important;
  }
  .align-items-sm-end {
    align-items: flex-end !important;
  }
  .align-items-sm-center {
    align-items: center !important;
  }
  .align-items-sm-baseline {
    align-items: baseline !important;
  }
  .align-items-sm-stretch {
    align-items: stretch !important;
  }
  .align-content-sm-start {
    align-content: flex-start !important;
  }
  .align-content-sm-end {
    align-content: flex-end !important;
  }
  .align-content-sm-center {
    align-content: center !important;
  }
  .align-content-sm-between {
    align-content: space-between !important;
  }
  .align-content-sm-around {
    align-content: space-around !important;
  }
  .align-content-sm-stretch {
    align-content: stretch !important;
  }
  .align-self-sm-auto {
    align-self: auto !important;
  }
  .align-self-sm-start {
    align-self: flex-start !important;
  }
  .align-self-sm-end {
    align-self: flex-end !important;
  }
  .align-self-sm-center {
    align-self: center !important;
  }
  .align-self-sm-baseline {
    align-self: baseline !important;
  }
  .align-self-sm-stretch {
    align-self: stretch !important;
  }
  .order-sm-first {
    order: -1 !important;
  }
  .order-sm-0 {
    order: 0 !important;
  }
  .order-sm-1 {
    order: 1 !important;
  }
  .order-sm-2 {
    order: 2 !important;
  }
  .order-sm-3 {
    order: 3 !important;
  }
  .order-sm-4 {
    order: 4 !important;
  }
  .order-sm-5 {
    order: 5 !important;
  }
  .order-sm-last {
    order: 6 !important;
  }
  .m-sm-0 {
    margin: 0 !important;
  }
  .m-sm-1 {
    margin: 0.25rem !important;
  }
  .m-sm-2 {
    margin: 0.5rem !important;
  }
  .m-sm-3 {
    margin: 1rem !important;
  }
  .m-sm-4 {
    margin: 1.5rem !important;
  }
  .m-sm-5 {
    margin: 3rem !important;
  }
  .m-sm-auto {
    margin: auto !important;
  }
  .mx-sm-0 {
    margin-right: 0 !important;
    margin-left: 0 !important;
  }
  .mx-sm-1 {
    margin-right: 0.25rem !important;
    margin-left: 0.25rem !important;
  }
  .mx-sm-2 {
    margin-right: 0.5rem !important;
    margin-left: 0.5rem !important;
  }
  .mx-sm-3 {
    margin-right: 1rem !important;
    margin-left: 1rem !important;
  }
  .mx-sm-4 {
    margin-right: 1.5rem !important;
    margin-left: 1.5rem !important;
  }
  .mx-sm-5 {
    margin-right: 3rem !important;
    margin-left: 3rem !important;
  }
  .mx-sm-auto {
    margin-right: auto !important;
    margin-left: auto !important;
  }
  .my-sm-0 {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }
  .my-sm-1 {
    margin-top: 0.25rem !important;
    margin-bottom: 0.25rem !important;
  }
  .my-sm-2 {
    margin-top: 0.5rem !important;
    margin-bottom: 0.5rem !important;
  }
  .my-sm-3 {
    margin-top: 1rem !important;
    margin-bottom: 1rem !important;
  }
  .my-sm-4 {
    margin-top: 1.5rem !important;
    margin-bottom: 1.5rem !important;
  }
  .my-sm-5 {
    margin-top: 3rem !important;
    margin-bottom: 3rem !important;
  }
  .my-sm-auto {
    margin-top: auto !important;
    margin-bottom: auto !important;
  }
  .mt-sm-0 {
    margin-top: 0 !important;
  }
  .mt-sm-1 {
    margin-top: 0.25rem !important;
  }
  .mt-sm-2 {
    margin-top: 0.5rem !important;
  }
  .mt-sm-3 {
    margin-top: 1rem !important;
  }
  .mt-sm-4 {
    margin-top: 1.5rem !important;
  }
  .mt-sm-5 {
    margin-top: 3rem !important;
  }
  .mt-sm-auto {
    margin-top: auto !important;
  }
  .me-sm-0 {
    margin-right: 0 !important;
  }
  .me-sm-1 {
    margin-right: 0.25rem !important;
  }
  .me-sm-2 {
    margin-right: 0.5rem !important;
  }
  .me-sm-3 {
    margin-right: 1rem !important;
  }
  .me-sm-4 {
    margin-right: 1.5rem !important;
  }
  .me-sm-5 {
    margin-right: 3rem !important;
  }
  .me-sm-auto {
    margin-right: auto !important;
  }
  .mb-sm-0 {
    margin-bottom: 0 !important;
  }
  .mb-sm-1 {
    margin-bottom: 0.25rem !important;
  }
  .mb-sm-2 {
    margin-bottom: 0.5rem !important;
  }
  .mb-sm-3 {
    margin-bottom: 1rem !important;
  }
  .mb-sm-4 {
    margin-bottom: 1.5rem !important;
  }
  .mb-sm-5 {
    margin-bottom: 3rem !important;
  }
  .mb-sm-auto {
    margin-bottom: auto !important;
  }
  .ms-sm-0 {
    margin-left: 0 !important;
  }
  .ms-sm-1 {
    margin-left: 0.25rem !important;
  }
  .ms-sm-2 {
    margin-left: 0.5rem !important;
  }
  .ms-sm-3 {
    margin-left: 1rem !important;
  }
  .ms-sm-4 {
    margin-left: 1.5rem !important;
  }
  .ms-sm-5 {
    margin-left: 3rem !important;
  }
  .ms-sm-auto {
    margin-left: auto !important;
  }
  .p-sm-0 {
    padding: 0 !important;
  }
  .p-sm-1 {
    padding: 0.25rem !important;
  }
  .p-sm-2 {
    padding: 0.5rem !important;
  }
  .p-sm-3 {
    padding: 1rem !important;
  }
  .p-sm-4 {
    padding: 1.5rem !important;
  }
  .p-sm-5 {
    padding: 3rem !important;
  }
  .px-sm-0 {
    padding-right: 0 !important;
    padding-left: 0 !important;
  }
  .px-sm-1 {
    padding-right: 0.25rem !important;
    padding-left: 0.25rem !important;
  }
  .px-sm-2 {
    padding-right: 0.5rem !important;
    padding-left: 0.5rem !important;
  }
  .px-sm-3 {
    padding-right: 1rem !important;
    padding-left: 1rem !important;
  }
  .px-sm-4 {
    padding-right: 1.5rem !important;
    padding-left: 1.5rem !important;
  }
  .px-sm-5 {
    padding-right: 3rem !important;
    padding-left: 3rem !important;
  }
  .py-sm-0 {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }
  .py-sm-1 {
    padding-top: 0.25rem !important;
    padding-bottom: 0.25rem !important;
  }
  .py-sm-2 {
    padding-top: 0.5rem !important;
    padding-bottom: 0.5rem !important;
  }
  .py-sm-3 {
    padding-top: 1rem !important;
    padding-bottom: 1rem !important;
  }
  .py-sm-4 {
    padding-top: 1.5rem !important;
    padding-bottom: 1.5rem !important;
  }
  .py-sm-5 {
    padding-top: 3rem !important;
    padding-bottom: 3rem !important;
  }
  .pt-sm-0 {
    padding-top: 0 !important;
  }
  .pt-sm-1 {
    padding-top: 0.25rem !important;
  }
  .pt-sm-2 {
    padding-top: 0.5rem !important;
  }
  .pt-sm-3 {
    padding-top: 1rem !important;
  }
  .pt-sm-4 {
    padding-top: 1.5rem !important;
  }
  .pt-sm-5 {
    padding-top: 3rem !important;
  }
  .pe-sm-0 {
    padding-right: 0 !important;
  }
  .pe-sm-1 {
    padding-right: 0.25rem !important;
  }
  .pe-sm-2 {
    padding-right: 0.5rem !important;
  }
  .pe-sm-3 {
    padding-right: 1rem !important;
  }
  .pe-sm-4 {
    padding-right: 1.5rem !important;
  }
  .pe-sm-5 {
    padding-right: 3rem !important;
  }
  .pb-sm-0 {
    padding-bottom: 0 !important;
  }
  .pb-sm-1 {
    padding-bottom: 0.25rem !important;
  }
  .pb-sm-2 {
    padding-bottom: 0.5rem !important;
  }
  .pb-sm-3 {
    padding-bottom: 1rem !important;
  }
  .pb-sm-4 {
    padding-bottom: 1.5rem !important;
  }
  .pb-sm-5 {
    padding-bottom: 3rem !important;
  }
  .ps-sm-0 {
    padding-left: 0 !important;
  }
  .ps-sm-1 {
    padding-left: 0.25rem !important;
  }
  .ps-sm-2 {
    padding-left: 0.5rem !important;
  }
  .ps-sm-3 {
    padding-left: 1rem !important;
  }
  .ps-sm-4 {
    padding-left: 1.5rem !important;
  }
  .ps-sm-5 {
    padding-left: 3rem !important;
  }
  .text-sm-start {
    text-align: left !important;
  }
  .text-sm-end {
    text-align: right !important;
  }
  .text-sm-center {
    text-align: center !important;
  }
}
@media (min-width: 768px) {
  .float-md-start {
    float: left !important;
  }
  .float-md-end {
    float: right !important;
  }
  .float-md-none {
    float: none !important;
  }
  .d-md-inline {
    display: inline !important;
  }
  .d-md-inline-block {
    display: inline-block !important;
  }
  .d-md-block {
    display: block !important;
  }
  .d-md-grid {
    display: grid !important;
  }
  .d-md-table {
    display: table !important;
  }
  .d-md-table-row {
    display: table-row !important;
  }
  .d-md-table-cell {
    display: table-cell !important;
  }
  .d-md-flex {
    display: flex !important;
  }
  .d-md-inline-flex {
    display: inline-flex !important;
  }
  .d-md-none {
    display: none !important;
  }
  .flex-md-fill {
    flex: 1 1 auto !important;
  }
  .flex-md-row {
    flex-direction: row !important;
  }
  .flex-md-column {
    flex-direction: column !important;
  }
  .flex-md-row-reverse {
    flex-direction: row-reverse !important;
  }
  .flex-md-column-reverse {
    flex-direction: column-reverse !important;
  }
  .flex-md-grow-0 {
    flex-grow: 0 !important;
  }
  .flex-md-grow-1 {
    flex-grow: 1 !important;
  }
  .flex-md-shrink-0 {
    flex-shrink: 0 !important;
  }
  .flex-md-shrink-1 {
    flex-shrink: 1 !important;
  }
  .flex-md-wrap {
    flex-wrap: wrap !important;
  }
  .flex-md-nowrap {
    flex-wrap: nowrap !important;
  }
  .flex-md-wrap-reverse {
    flex-wrap: wrap-reverse !important;
  }
  .gap-md-0 {
    gap: 0 !important;
  }
  .gap-md-1 {
    gap: 0.25rem !important;
  }
  .gap-md-2 {
    gap: 0.5rem !important;
  }
  .gap-md-3 {
    gap: 1rem !important;
  }
  .gap-md-4 {
    gap: 1.5rem !important;
  }
  .gap-md-5 {
    gap: 3rem !important;
  }
  .justify-content-md-start {
    justify-content: flex-start !important;
  }
  .justify-content-md-end {
    justify-content: flex-end !important;
  }
  .justify-content-md-center {
    justify-content: center !important;
  }
  .justify-content-md-between {
    justify-content: space-between !important;
  }
  .justify-content-md-around {
    justify-content: space-around !important;
  }
  .justify-content-md-evenly {
    justify-content: space-evenly !important;
  }
  .align-items-md-start {
    align-items: flex-start !important;
  }
  .align-items-md-end {
    align-items: flex-end !important;
  }
  .align-items-md-center {
    align-items: center !important;
  }
  .align-items-md-baseline {
    align-items: baseline !important;
  }
  .align-items-md-stretch {
    align-items: stretch !important;
  }
  .align-content-md-start {
    align-content: flex-start !important;
  }
  .align-content-md-end {
    align-content: flex-end !important;
  }
  .align-content-md-center {
    align-content: center !important;
  }
  .align-content-md-between {
    align-content: space-between !important;
  }
  .align-content-md-around {
    align-content: space-around !important;
  }
  .align-content-md-stretch {
    align-content: stretch !important;
  }
  .align-self-md-auto {
    align-self: auto !important;
  }
  .align-self-md-start {
    align-self: flex-start !important;
  }
  .align-self-md-end {
    align-self: flex-end !important;
  }
  .align-self-md-center {
    align-self: center !important;
  }
  .align-self-md-baseline {
    align-self: baseline !important;
  }
  .align-self-md-stretch {
    align-self: stretch !important;
  }
  .order-md-first {
    order: -1 !important;
  }
  .order-md-0 {
    order: 0 !important;
  }
  .order-md-1 {
    order: 1 !important;
  }
  .order-md-2 {
    order: 2 !important;
  }
  .order-md-3 {
    order: 3 !important;
  }
  .order-md-4 {
    order: 4 !important;
  }
  .order-md-5 {
    order: 5 !important;
  }
  .order-md-last {
    order: 6 !important;
  }
  .m-md-0 {
    margin: 0 !important;
  }
  .m-md-1 {
    margin: 0.25rem !important;
  }
  .m-md-2 {
    margin: 0.5rem !important;
  }
  .m-md-3 {
    margin: 1rem !important;
  }
  .m-md-4 {
    margin: 1.5rem !important;
  }
  .m-md-5 {
    margin: 3rem !important;
  }
  .m-md-auto {
    margin: auto !important;
  }
  .mx-md-0 {
    margin-right: 0 !important;
    margin-left: 0 !important;
  }
  .mx-md-1 {
    margin-right: 0.25rem !important;
    margin-left: 0.25rem !important;
  }
  .mx-md-2 {
    margin-right: 0.5rem !important;
    margin-left: 0.5rem !important;
  }
  .mx-md-3 {
    margin-right: 1rem !important;
    margin-left: 1rem !important;
  }
  .mx-md-4 {
    margin-right: 1.5rem !important;
    margin-left: 1.5rem !important;
  }
  .mx-md-5 {
    margin-right: 3rem !important;
    margin-left: 3rem !important;
  }
  .mx-md-auto {
    margin-right: auto !important;
    margin-left: auto !important;
  }
  .my-md-0 {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }
  .my-md-1 {
    margin-top: 0.25rem !important;
    margin-bottom: 0.25rem !important;
  }
  .my-md-2 {
    margin-top: 0.5rem !important;
    margin-bottom: 0.5rem !important;
  }
  .my-md-3 {
    margin-top: 1rem !important;
    margin-bottom: 1rem !important;
  }
  .my-md-4 {
    margin-top: 1.5rem !important;
    margin-bottom: 1.5rem !important;
  }
  .my-md-5 {
    margin-top: 3rem !important;
    margin-bottom: 3rem !important;
  }
  .my-md-auto {
    margin-top: auto !important;
    margin-bottom: auto !important;
  }
  .mt-md-0 {
    margin-top: 0 !important;
  }
  .mt-md-1 {
    margin-top: 0.25rem !important;
  }
  .mt-md-2 {
    margin-top: 0.5rem !important;
  }
  .mt-md-3 {
    margin-top: 1rem !important;
  }
  .mt-md-4 {
    margin-top: 1.5rem !important;
  }
  .mt-md-5 {
    margin-top: 3rem !important;
  }
  .mt-md-auto {
    margin-top: auto !important;
  }
  .me-md-0 {
    margin-right: 0 !important;
  }
  .me-md-1 {
    margin-right: 0.25rem !important;
  }
  .me-md-2 {
    margin-right: 0.5rem !important;
  }
  .me-md-3 {
    margin-right: 1rem !important;
  }
  .me-md-4 {
    margin-right: 1.5rem !important;
  }
  .me-md-5 {
    margin-right: 3rem !important;
  }
  .me-md-auto {
    margin-right: auto !important;
  }
  .mb-md-0 {
    margin-bottom: 0 !important;
  }
  .mb-md-1 {
    margin-bottom: 0.25rem !important;
  }
  .mb-md-2 {
    margin-bottom: 0.5rem !important;
  }
  .mb-md-3 {
    margin-bottom: 1rem !important;
  }
  .mb-md-4 {
    margin-bottom: 1.5rem !important;
  }
  .mb-md-5 {
    margin-bottom: 3rem !important;
  }
  .mb-md-auto {
    margin-bottom: auto !important;
  }
  .ms-md-0 {
    margin-left: 0 !important;
  }
  .ms-md-1 {
    margin-left: 0.25rem !important;
  }
  .ms-md-2 {
    margin-left: 0.5rem !important;
  }
  .ms-md-3 {
    margin-left: 1rem !important;
  }
  .ms-md-4 {
    margin-left: 1.5rem !important;
  }
  .ms-md-5 {
    margin-left: 3rem !important;
  }
  .ms-md-auto {
    margin-left: auto !important;
  }
  .p-md-0 {
    padding: 0 !important;
  }
  .p-md-1 {
    padding: 0.25rem !important;
  }
  .p-md-2 {
    padding: 0.5rem !important;
  }
  .p-md-3 {
    padding: 1rem !important;
  }
  .p-md-4 {
    padding: 1.5rem !important;
  }
  .p-md-5 {
    padding: 3rem !important;
  }
  .px-md-0 {
    padding-right: 0 !important;
    padding-left: 0 !important;
  }
  .px-md-1 {
    padding-right: 0.25rem !important;
    padding-left: 0.25rem !important;
  }
  .px-md-2 {
    padding-right: 0.5rem !important;
    padding-left: 0.5rem !important;
  }
  .px-md-3 {
    padding-right: 1rem !important;
    padding-left: 1rem !important;
  }
  .px-md-4 {
    padding-right: 1.5rem !important;
    padding-left: 1.5rem !important;
  }
  .px-md-5 {
    padding-right: 3rem !important;
    padding-left: 3rem !important;
  }
  .py-md-0 {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }
  .py-md-1 {
    padding-top: 0.25rem !important;
    padding-bottom: 0.25rem !important;
  }
  .py-md-2 {
    padding-top: 0.5rem !important;
    padding-bottom: 0.5rem !important;
  }
  .py-md-3 {
    padding-top: 1rem !important;
    padding-bottom: 1rem !important;
  }
  .py-md-4 {
    padding-top: 1.5rem !important;
    padding-bottom: 1.5rem !important;
  }
  .py-md-5 {
    padding-top: 3rem !important;
    padding-bottom: 3rem !important;
  }
  .pt-md-0 {
    padding-top: 0 !important;
  }
  .pt-md-1 {
    padding-top: 0.25rem !important;
  }
  .pt-md-2 {
    padding-top: 0.5rem !important;
  }
  .pt-md-3 {
    padding-top: 1rem !important;
  }
  .pt-md-4 {
    padding-top: 1.5rem !important;
  }
  .pt-md-5 {
    padding-top: 3rem !important;
  }
  .pe-md-0 {
    padding-right: 0 !important;
  }
  .pe-md-1 {
    padding-right: 0.25rem !important;
  }
  .pe-md-2 {
    padding-right: 0.5rem !important;
  }
  .pe-md-3 {
    padding-right: 1rem !important;
  }
  .pe-md-4 {
    padding-right: 1.5rem !important;
  }
  .pe-md-5 {
    padding-right: 3rem !important;
  }
  .pb-md-0 {
    padding-bottom: 0 !important;
  }
  .pb-md-1 {
    padding-bottom: 0.25rem !important;
  }
  .pb-md-2 {
    padding-bottom: 0.5rem !important;
  }
  .pb-md-3 {
    padding-bottom: 1rem !important;
  }
  .pb-md-4 {
    padding-bottom: 1.5rem !important;
  }
  .pb-md-5 {
    padding-bottom: 3rem !important;
  }
  .ps-md-0 {
    padding-left: 0 !important;
  }
  .ps-md-1 {
    padding-left: 0.25rem !important;
  }
  .ps-md-2 {
    padding-left: 0.5rem !important;
  }
  .ps-md-3 {
    padding-left: 1rem !important;
  }
  .ps-md-4 {
    padding-left: 1.5rem !important;
  }
  .ps-md-5 {
    padding-left: 3rem !important;
  }
  .text-md-start {
    text-align: left !important;
  }
  .text-md-end {
    text-align: right !important;
  }
  .text-md-center {
    text-align: center !important;
  }
}
@media (min-width: 992px) {
  .float-lg-start {
    float: left !important;
  }
  .float-lg-end {
    float: right !important;
  }
  .float-lg-none {
    float: none !important;
  }
  .d-lg-inline {
    display: inline !important;
  }
  .d-lg-inline-block {
    display: inline-block !important;
  }
  .d-lg-block {
    display: block !important;
  }
  .d-lg-grid {
    display: grid !important;
  }
  .d-lg-table {
    display: table !important;
  }
  .d-lg-table-row {
    display: table-row !important;
  }
  .d-lg-table-cell {
    display: table-cell !important;
  }
  .d-lg-flex {
    display: flex !important;
  }
  .d-lg-inline-flex {
    display: inline-flex !important;
  }
  .d-lg-none {
    display: none !important;
  }
  .flex-lg-fill {
    flex: 1 1 auto !important;
  }
  .flex-lg-row {
    flex-direction: row !important;
  }
  .flex-lg-column {
    flex-direction: column !important;
  }
  .flex-lg-row-reverse {
    flex-direction: row-reverse !important;
  }
  .flex-lg-column-reverse {
    flex-direction: column-reverse !important;
  }
  .flex-lg-grow-0 {
    flex-grow: 0 !important;
  }
  .flex-lg-grow-1 {
    flex-grow: 1 !important;
  }
  .flex-lg-shrink-0 {
    flex-shrink: 0 !important;
  }
  .flex-lg-shrink-1 {
    flex-shrink: 1 !important;
  }
  .flex-lg-wrap {
    flex-wrap: wrap !important;
  }
  .flex-lg-nowrap {
    flex-wrap: nowrap !important;
  }
  .flex-lg-wrap-reverse {
    flex-wrap: wrap-reverse !important;
  }
  .gap-lg-0 {
    gap: 0 !important;
  }
  .gap-lg-1 {
    gap: 0.25rem !important;
  }
  .gap-lg-2 {
    gap: 0.5rem !important;
  }
  .gap-lg-3 {
    gap: 1rem !important;
  }
  .gap-lg-4 {
    gap: 1.5rem !important;
  }
  .gap-lg-5 {
    gap: 3rem !important;
  }
  .justify-content-lg-start {
    justify-content: flex-start !important;
  }
  .justify-content-lg-end {
    justify-content: flex-end !important;
  }
  .justify-content-lg-center {
    justify-content: center !important;
  }
  .justify-content-lg-between {
    justify-content: space-between !important;
  }
  .justify-content-lg-around {
    justify-content: space-around !important;
  }
  .justify-content-lg-evenly {
    justify-content: space-evenly !important;
  }
  .align-items-lg-start {
    align-items: flex-start !important;
  }
  .align-items-lg-end {
    align-items: flex-end !important;
  }
  .align-items-lg-center {
    align-items: center !important;
  }
  .align-items-lg-baseline {
    align-items: baseline !important;
  }
  .align-items-lg-stretch {
    align-items: stretch !important;
  }
  .align-content-lg-start {
    align-content: flex-start !important;
  }
  .align-content-lg-end {
    align-content: flex-end !important;
  }
  .align-content-lg-center {
    align-content: center !important;
  }
  .align-content-lg-between {
    align-content: space-between !important;
  }
  .align-content-lg-around {
    align-content: space-around !important;
  }
  .align-content-lg-stretch {
    align-content: stretch !important;
  }
  .align-self-lg-auto {
    align-self: auto !important;
  }
  .align-self-lg-start {
    align-self: flex-start !important;
  }
  .align-self-lg-end {
    align-self: flex-end !important;
  }
  .align-self-lg-center {
    align-self: center !important;
  }
  .align-self-lg-baseline {
    align-self: baseline !important;
  }
  .align-self-lg-stretch {
    align-self: stretch !important;
  }
  .order-lg-first {
    order: -1 !important;
  }
  .order-lg-0 {
    order: 0 !important;
  }
  .order-lg-1 {
    order: 1 !important;
  }
  .order-lg-2 {
    order: 2 !important;
  }
  .order-lg-3 {
    order: 3 !important;
  }
  .order-lg-4 {
    order: 4 !important;
  }
  .order-lg-5 {
    order: 5 !important;
  }
  .order-lg-last {
    order: 6 !important;
  }
  .m-lg-0 {
    margin: 0 !important;
  }
  .m-lg-1 {
    margin: 0.25rem !important;
  }
  .m-lg-2 {
    margin: 0.5rem !important;
  }
  .m-lg-3 {
    margin: 1rem !important;
  }
  .m-lg-4 {
    margin: 1.5rem !important;
  }
  .m-lg-5 {
    margin: 3rem !important;
  }
  .m-lg-auto {
    margin: auto !important;
  }
  .mx-lg-0 {
    margin-right: 0 !important;
    margin-left: 0 !important;
  }
  .mx-lg-1 {
    margin-right: 0.25rem !important;
    margin-left: 0.25rem !important;
  }
  .mx-lg-2 {
    margin-right: 0.5rem !important;
    margin-left: 0.5rem !important;
  }
  .mx-lg-3 {
    margin-right: 1rem !important;
    margin-left: 1rem !important;
  }
  .mx-lg-4 {
    margin-right: 1.5rem !important;
    margin-left: 1.5rem !important;
  }
  .mx-lg-5 {
    margin-right: 3rem !important;
    margin-left: 3rem !important;
  }
  .mx-lg-auto {
    margin-right: auto !important;
    margin-left: auto !important;
  }
  .my-lg-0 {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }
  .my-lg-1 {
    margin-top: 0.25rem !important;
    margin-bottom: 0.25rem !important;
  }
  .my-lg-2 {
    margin-top: 0.5rem !important;
    margin-bottom: 0.5rem !important;
  }
  .my-lg-3 {
    margin-top: 1rem !important;
    margin-bottom: 1rem !important;
  }
  .my-lg-4 {
    margin-top: 1.5rem !important;
    margin-bottom: 1.5rem !important;
  }
  .my-lg-5 {
    margin-top: 3rem !important;
    margin-bottom: 3rem !important;
  }
  .my-lg-auto {
    margin-top: auto !important;
    margin-bottom: auto !important;
  }
  .mt-lg-0 {
    margin-top: 0 !important;
  }
  .mt-lg-1 {
    margin-top: 0.25rem !important;
  }
  .mt-lg-2 {
    margin-top: 0.5rem !important;
  }
  .mt-lg-3 {
    margin-top: 1rem !important;
  }
  .mt-lg-4 {
    margin-top: 1.5rem !important;
  }
  .mt-lg-5 {
    margin-top: 3rem !important;
  }
  .mt-lg-auto {
    margin-top: auto !important;
  }
  .me-lg-0 {
    margin-right: 0 !important;
  }
  .me-lg-1 {
    margin-right: 0.25rem !important;
  }
  .me-lg-2 {
    margin-right: 0.5rem !important;
  }
  .me-lg-3 {
    margin-right: 1rem !important;
  }
  .me-lg-4 {
    margin-right: 1.5rem !important;
  }
  .me-lg-5 {
    margin-right: 3rem !important;
  }
  .me-lg-auto {
    margin-right: auto !important;
  }
  .mb-lg-0 {
    margin-bottom: 0 !important;
  }
  .mb-lg-1 {
    margin-bottom: 0.25rem !important;
  }
  .mb-lg-2 {
    margin-bottom: 0.5rem !important;
  }
  .mb-lg-3 {
    margin-bottom: 1rem !important;
  }
  .mb-lg-4 {
    margin-bottom: 1.5rem !important;
  }
  .mb-lg-5 {
    margin-bottom: 3rem !important;
  }
  .mb-lg-auto {
    margin-bottom: auto !important;
  }
  .ms-lg-0 {
    margin-left: 0 !important;
  }
  .ms-lg-1 {
    margin-left: 0.25rem !important;
  }
  .ms-lg-2 {
    margin-left: 0.5rem !important;
  }
  .ms-lg-3 {
    margin-left: 1rem !important;
  }
  .ms-lg-4 {
    margin-left: 1.5rem !important;
  }
  .ms-lg-5 {
    margin-left: 3rem !important;
  }
  .ms-lg-auto {
    margin-left: auto !important;
  }
  .p-lg-0 {
    padding: 0 !important;
  }
  .p-lg-1 {
    padding: 0.25rem !important;
  }
  .p-lg-2 {
    padding: 0.5rem !important;
  }
  .p-lg-3 {
    padding: 1rem !important;
  }
  .p-lg-4 {
    padding: 1.5rem !important;
  }
  .p-lg-5 {
    padding: 3rem !important;
  }
  .px-lg-0 {
    padding-right: 0 !important;
    padding-left: 0 !important;
  }
  .px-lg-1 {
    padding-right: 0.25rem !important;
    padding-left: 0.25rem !important;
  }
  .px-lg-2 {
    padding-right: 0.5rem !important;
    padding-left: 0.5rem !important;
  }
  .px-lg-3 {
    padding-right: 1rem !important;
    padding-left: 1rem !important;
  }
  .px-lg-4 {
    padding-right: 1.5rem !important;
    padding-left: 1.5rem !important;
  }
  .px-lg-5 {
    padding-right: 3rem !important;
    padding-left: 3rem !important;
  }
  .py-lg-0 {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }
  .py-lg-1 {
    padding-top: 0.25rem !important;
    padding-bottom: 0.25rem !important;
  }
  .py-lg-2 {
    padding-top: 0.5rem !important;
    padding-bottom: 0.5rem !important;
  }
  .py-lg-3 {
    padding-top: 1rem !important;
    padding-bottom: 1rem !important;
  }
  .py-lg-4 {
    padding-top: 1.5rem !important;
    padding-bottom: 1.5rem !important;
  }
  .py-lg-5 {
    padding-top: 3rem !important;
    padding-bottom: 3rem !important;
  }
  .pt-lg-0 {
    padding-top: 0 !important;
  }
  .pt-lg-1 {
    padding-top: 0.25rem !important;
  }
  .pt-lg-2 {
    padding-top: 0.5rem !important;
  }
  .pt-lg-3 {
    padding-top: 1rem !important;
  }
  .pt-lg-4 {
    padding-top: 1.5rem !important;
  }
  .pt-lg-5 {
    padding-top: 3rem !important;
  }
  .pe-lg-0 {
    padding-right: 0 !important;
  }
  .pe-lg-1 {
    padding-right: 0.25rem !important;
  }
  .pe-lg-2 {
    padding-right: 0.5rem !important;
  }
  .pe-lg-3 {
    padding-right: 1rem !important;
  }
  .pe-lg-4 {
    padding-right: 1.5rem !important;
  }
  .pe-lg-5 {
    padding-right: 3rem !important;
  }
  .pb-lg-0 {
    padding-bottom: 0 !important;
  }
  .pb-lg-1 {
    padding-bottom: 0.25rem !important;
  }
  .pb-lg-2 {
    padding-bottom: 0.5rem !important;
  }
  .pb-lg-3 {
    padding-bottom: 1rem !important;
  }
  .pb-lg-4 {
    padding-bottom: 1.5rem !important;
  }
  .pb-lg-5 {
    padding-bottom: 3rem !important;
  }
  .ps-lg-0 {
    padding-left: 0 !important;
  }
  .ps-lg-1 {
    padding-left: 0.25rem !important;
  }
  .ps-lg-2 {
    padding-left: 0.5rem !important;
  }
  .ps-lg-3 {
    padding-left: 1rem !important;
  }
  .ps-lg-4 {
    padding-left: 1.5rem !important;
  }
  .ps-lg-5 {
    padding-left: 3rem !important;
  }
  .text-lg-start {
    text-align: left !important;
  }
  .text-lg-end {
    text-align: right !important;
  }
  .text-lg-center {
    text-align: center !important;
  }
}
@media (min-width: 1200px) {
  .float-xl-start {
    float: left !important;
  }
  .float-xl-end {
    float: right !important;
  }
  .float-xl-none {
    float: none !important;
  }
  .d-xl-inline {
    display: inline !important;
  }
  .d-xl-inline-block {
    display: inline-block !important;
  }
  .d-xl-block {
    display: block !important;
  }
  .d-xl-grid {
    display: grid !important;
  }
  .d-xl-table {
    display: table !important;
  }
  .d-xl-table-row {
    display: table-row !important;
  }
  .d-xl-table-cell {
    display: table-cell !important;
  }
  .d-xl-flex {
    display: flex !important;
  }
  .d-xl-inline-flex {
    display: inline-flex !important;
  }
  .d-xl-none {
    display: none !important;
  }
  .flex-xl-fill {
    flex: 1 1 auto !important;
  }
  .flex-xl-row {
    flex-direction: row !important;
  }
  .flex-xl-column {
    flex-direction: column !important;
  }
  .flex-xl-row-reverse {
    flex-direction: row-reverse !important;
  }
  .flex-xl-column-reverse {
    flex-direction: column-reverse !important;
  }
  .flex-xl-grow-0 {
    flex-grow: 0 !important;
  }
  .flex-xl-grow-1 {
    flex-grow: 1 !important;
  }
  .flex-xl-shrink-0 {
    flex-shrink: 0 !important;
  }
  .flex-xl-shrink-1 {
    flex-shrink: 1 !important;
  }
  .flex-xl-wrap {
    flex-wrap: wrap !important;
  }
  .flex-xl-nowrap {
    flex-wrap: nowrap !important;
  }
  .flex-xl-wrap-reverse {
    flex-wrap: wrap-reverse !important;
  }
  .gap-xl-0 {
    gap: 0 !important;
  }
  .gap-xl-1 {
    gap: 0.25rem !important;
  }
  .gap-xl-2 {
    gap: 0.5rem !important;
  }
  .gap-xl-3 {
    gap: 1rem !important;
  }
  .gap-xl-4 {
    gap: 1.5rem !important;
  }
  .gap-xl-5 {
    gap: 3rem !important;
  }
  .justify-content-xl-start {
    justify-content: flex-start !important;
  }
  .justify-content-xl-end {
    justify-content: flex-end !important;
  }
  .justify-content-xl-center {
    justify-content: center !important;
  }
  .justify-content-xl-between {
    justify-content: space-between !important;
  }
  .justify-content-xl-around {
    justify-content: space-around !important;
  }
  .justify-content-xl-evenly {
    justify-content: space-evenly !important;
  }
  .align-items-xl-start {
    align-items: flex-start !important;
  }
  .align-items-xl-end {
    align-items: flex-end !important;
  }
  .align-items-xl-center {
    align-items: center !important;
  }
  .align-items-xl-baseline {
    align-items: baseline !important;
  }
  .align-items-xl-stretch {
    align-items: stretch !important;
  }
  .align-content-xl-start {
    align-content: flex-start !important;
  }
  .align-content-xl-end {
    align-content: flex-end !important;
  }
  .align-content-xl-center {
    align-content: center !important;
  }
  .align-content-xl-between {
    align-content: space-between !important;
  }
  .align-content-xl-around {
    align-content: space-around !important;
  }
  .align-content-xl-stretch {
    align-content: stretch !important;
  }
  .align-self-xl-auto {
    align-self: auto !important;
  }
  .align-self-xl-start {
    align-self: flex-start !important;
  }
  .align-self-xl-end {
    align-self: flex-end !important;
  }
  .align-self-xl-center {
    align-self: center !important;
  }
  .align-self-xl-baseline {
    align-self: baseline !important;
  }
  .align-self-xl-stretch {
    align-self: stretch !important;
  }
  .order-xl-first {
    order: -1 !important;
  }
  .order-xl-0 {
    order: 0 !important;
  }
  .order-xl-1 {
    order: 1 !important;
  }
  .order-xl-2 {
    order: 2 !important;
  }
  .order-xl-3 {
    order: 3 !important;
  }
  .order-xl-4 {
    order: 4 !important;
  }
  .order-xl-5 {
    order: 5 !important;
  }
  .order-xl-last {
    order: 6 !important;
  }
  .m-xl-0 {
    margin: 0 !important;
  }
  .m-xl-1 {
    margin: 0.25rem !important;
  }
  .m-xl-2 {
    margin: 0.5rem !important;
  }
  .m-xl-3 {
    margin: 1rem !important;
  }
  .m-xl-4 {
    margin: 1.5rem !important;
  }
  .m-xl-5 {
    margin: 3rem !important;
  }
  .m-xl-auto {
    margin: auto !important;
  }
  .mx-xl-0 {
    margin-right: 0 !important;
    margin-left: 0 !important;
  }
  .mx-xl-1 {
    margin-right: 0.25rem !important;
    margin-left: 0.25rem !important;
  }
  .mx-xl-2 {
    margin-right: 0.5rem !important;
    margin-left: 0.5rem !important;
  }
  .mx-xl-3 {
    margin-right: 1rem !important;
    margin-left: 1rem !important;
  }
  .mx-xl-4 {
    margin-right: 1.5rem !important;
    margin-left: 1.5rem !important;
  }
  .mx-xl-5 {
    margin-right: 3rem !important;
    margin-left: 3rem !important;
  }
  .mx-xl-auto {
    margin-right: auto !important;
    margin-left: auto !important;
  }
  .my-xl-0 {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }
  .my-xl-1 {
    margin-top: 0.25rem !important;
    margin-bottom: 0.25rem !important;
  }
  .my-xl-2 {
    margin-top: 0.5rem !important;
    margin-bottom: 0.5rem !important;
  }
  .my-xl-3 {
    margin-top: 1rem !important;
    margin-bottom: 1rem !important;
  }
  .my-xl-4 {
    margin-top: 1.5rem !important;
    margin-bottom: 1.5rem !important;
  }
  .my-xl-5 {
    margin-top: 3rem !important;
    margin-bottom: 3rem !important;
  }
  .my-xl-auto {
    margin-top: auto !important;
    margin-bottom: auto !important;
  }
  .mt-xl-0 {
    margin-top: 0 !important;
  }
  .mt-xl-1 {
    margin-top: 0.25rem !important;
  }
  .mt-xl-2 {
    margin-top: 0.5rem !important;
  }
  .mt-xl-3 {
    margin-top: 1rem !important;
  }
  .mt-xl-4 {
    margin-top: 1.5rem !important;
  }
  .mt-xl-5 {
    margin-top: 3rem !important;
  }
  .mt-xl-auto {
    margin-top: auto !important;
  }
  .me-xl-0 {
    margin-right: 0 !important;
  }
  .me-xl-1 {
    margin-right: 0.25rem !important;
  }
  .me-xl-2 {
    margin-right: 0.5rem !important;
  }
  .me-xl-3 {
    margin-right: 1rem !important;
  }
  .me-xl-4 {
    margin-right: 1.5rem !important;
  }
  .me-xl-5 {
    margin-right: 3rem !important;
  }
  .me-xl-auto {
    margin-right: auto !important;
  }
  .mb-xl-0 {
    margin-bottom: 0 !important;
  }
  .mb-xl-1 {
    margin-bottom: 0.25rem !important;
  }
  .mb-xl-2 {
    margin-bottom: 0.5rem !important;
  }
  .mb-xl-3 {
    margin-bottom: 1rem !important;
  }
  .mb-xl-4 {
    margin-bottom: 1.5rem !important;
  }
  .mb-xl-5 {
    margin-bottom: 3rem !important;
  }
  .mb-xl-auto {
    margin-bottom: auto !important;
  }
  .ms-xl-0 {
    margin-left: 0 !important;
  }
  .ms-xl-1 {
    margin-left: 0.25rem !important;
  }
  .ms-xl-2 {
    margin-left: 0.5rem !important;
  }
  .ms-xl-3 {
    margin-left: 1rem !important;
  }
  .ms-xl-4 {
    margin-left: 1.5rem !important;
  }
  .ms-xl-5 {
    margin-left: 3rem !important;
  }
  .ms-xl-auto {
    margin-left: auto !important;
  }
  .p-xl-0 {
    padding: 0 !important;
  }
  .p-xl-1 {
    padding: 0.25rem !important;
  }
  .p-xl-2 {
    padding: 0.5rem !important;
  }
  .p-xl-3 {
    padding: 1rem !important;
  }
  .p-xl-4 {
    padding: 1.5rem !important;
  }
  .p-xl-5 {
    padding: 3rem !important;
  }
  .px-xl-0 {
    padding-right: 0 !important;
    padding-left: 0 !important;
  }
  .px-xl-1 {
    padding-right: 0.25rem !important;
    padding-left: 0.25rem !important;
  }
  .px-xl-2 {
    padding-right: 0.5rem !important;
    padding-left: 0.5rem !important;
  }
  .px-xl-3 {
    padding-right: 1rem !important;
    padding-left: 1rem !important;
  }
  .px-xl-4 {
    padding-right: 1.5rem !important;
    padding-left: 1.5rem !important;
  }
  .px-xl-5 {
    padding-right: 3rem !important;
    padding-left: 3rem !important;
  }
  .py-xl-0 {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }
  .py-xl-1 {
    padding-top: 0.25rem !important;
    padding-bottom: 0.25rem !important;
  }
  .py-xl-2 {
    padding-top: 0.5rem !important;
    padding-bottom: 0.5rem !important;
  }
  .py-xl-3 {
    padding-top: 1rem !important;
    padding-bottom: 1rem !important;
  }
  .py-xl-4 {
    padding-top: 1.5rem !important;
    padding-bottom: 1.5rem !important;
  }
  .py-xl-5 {
    padding-top: 3rem !important;
    padding-bottom: 3rem !important;
  }
  .pt-xl-0 {
    padding-top: 0 !important;
  }
  .pt-xl-1 {
    padding-top: 0.25rem !important;
  }
  .pt-xl-2 {
    padding-top: 0.5rem !important;
  }
  .pt-xl-3 {
    padding-top: 1rem !important;
  }
  .pt-xl-4 {
    padding-top: 1.5rem !important;
  }
  .pt-xl-5 {
    padding-top: 3rem !important;
  }
  .pe-xl-0 {
    padding-right: 0 !important;
  }
  .pe-xl-1 {
    padding-right: 0.25rem !important;
  }
  .pe-xl-2 {
    padding-right: 0.5rem !important;
  }
  .pe-xl-3 {
    padding-right: 1rem !important;
  }
  .pe-xl-4 {
    padding-right: 1.5rem !important;
  }
  .pe-xl-5 {
    padding-right: 3rem !important;
  }
  .pb-xl-0 {
    padding-bottom: 0 !important;
  }
  .pb-xl-1 {
    padding-bottom: 0.25rem !important;
  }
  .pb-xl-2 {
    padding-bottom: 0.5rem !important;
  }
  .pb-xl-3 {
    padding-bottom: 1rem !important;
  }
  .pb-xl-4 {
    padding-bottom: 1.5rem !important;
  }
  .pb-xl-5 {
    padding-bottom: 3rem !important;
  }
  .ps-xl-0 {
    padding-left: 0 !important;
  }
  .ps-xl-1 {
    padding-left: 0.25rem !important;
  }
  .ps-xl-2 {
    padding-left: 0.5rem !important;
  }
  .ps-xl-3 {
    padding-left: 1rem !important;
  }
  .ps-xl-4 {
    padding-left: 1.5rem !important;
  }
  .ps-xl-5 {
    padding-left: 3rem !important;
  }
  .text-xl-start {
    text-align: left !important;
  }
  .text-xl-end {
    text-align: right !important;
  }
  .text-xl-center {
    text-align: center !important;
  }
}
@media (min-width: 1400px) {
  .float-xxl-start {
    float: left !important;
  }
  .float-xxl-end {
    float: right !important;
  }
  .float-xxl-none {
    float: none !important;
  }
  .d-xxl-inline {
    display: inline !important;
  }
  .d-xxl-inline-block {
    display: inline-block !important;
  }
  .d-xxl-block {
    display: block !important;
  }
  .d-xxl-grid {
    display: grid !important;
  }
  .d-xxl-table {
    display: table !important;
  }
  .d-xxl-table-row {
    display: table-row !important;
  }
  .d-xxl-table-cell {
    display: table-cell !important;
  }
  .d-xxl-flex {
    display: flex !important;
  }
  .d-xxl-inline-flex {
    display: inline-flex !important;
  }
  .d-xxl-none {
    display: none !important;
  }
  .flex-xxl-fill {
    flex: 1 1 auto !important;
  }
  .flex-xxl-row {
    flex-direction: row !important;
  }
  .flex-xxl-column {
    flex-direction: column !important;
  }
  .flex-xxl-row-reverse {
    flex-direction: row-reverse !important;
  }
  .flex-xxl-column-reverse {
    flex-direction: column-reverse !important;
  }
  .flex-xxl-grow-0 {
    flex-grow: 0 !important;
  }
  .flex-xxl-grow-1 {
    flex-grow: 1 !important;
  }
  .flex-xxl-shrink-0 {
    flex-shrink: 0 !important;
  }
  .flex-xxl-shrink-1 {
    flex-shrink: 1 !important;
  }
  .flex-xxl-wrap {
    flex-wrap: wrap !important;
  }
  .flex-xxl-nowrap {
    flex-wrap: nowrap !important;
  }
  .flex-xxl-wrap-reverse {
    flex-wrap: wrap-reverse !important;
  }
  .gap-xxl-0 {
    gap: 0 !important;
  }
  .gap-xxl-1 {
    gap: 0.25rem !important;
  }
  .gap-xxl-2 {
    gap: 0.5rem !important;
  }
  .gap-xxl-3 {
    gap: 1rem !important;
  }
  .gap-xxl-4 {
    gap: 1.5rem !important;
  }
  .gap-xxl-5 {
    gap: 3rem !important;
  }
  .justify-content-xxl-start {
    justify-content: flex-start !important;
  }
  .justify-content-xxl-end {
    justify-content: flex-end !important;
  }
  .justify-content-xxl-center {
    justify-content: center !important;
  }
  .justify-content-xxl-between {
    justify-content: space-between !important;
  }
  .justify-content-xxl-around {
    justify-content: space-around !important;
  }
  .justify-content-xxl-evenly {
    justify-content: space-evenly !important;
  }
  .align-items-xxl-start {
    align-items: flex-start !important;
  }
  .align-items-xxl-end {
    align-items: flex-end !important;
  }
  .align-items-xxl-center {
    align-items: center !important;
  }
  .align-items-xxl-baseline {
    align-items: baseline !important;
  }
  .align-items-xxl-stretch {
    align-items: stretch !important;
  }
  .align-content-xxl-start {
    align-content: flex-start !important;
  }
  .align-content-xxl-end {
    align-content: flex-end !important;
  }
  .align-content-xxl-center {
    align-content: center !important;
  }
  .align-content-xxl-between {
    align-content: space-between !important;
  }
  .align-content-xxl-around {
    align-content: space-around !important;
  }
  .align-content-xxl-stretch {
    align-content: stretch !important;
  }
  .align-self-xxl-auto {
    align-self: auto !important;
  }
  .align-self-xxl-start {
    align-self: flex-start !important;
  }
  .align-self-xxl-end {
    align-self: flex-end !important;
  }
  .align-self-xxl-center {
    align-self: center !important;
  }
  .align-self-xxl-baseline {
    align-self: baseline !important;
  }
  .align-self-xxl-stretch {
    align-self: stretch !important;
  }
  .order-xxl-first {
    order: -1 !important;
  }
  .order-xxl-0 {
    order: 0 !important;
  }
  .order-xxl-1 {
    order: 1 !important;
  }
  .order-xxl-2 {
    order: 2 !important;
  }
  .order-xxl-3 {
    order: 3 !important;
  }
  .order-xxl-4 {
    order: 4 !important;
  }
  .order-xxl-5 {
    order: 5 !important;
  }
  .order-xxl-last {
    order: 6 !important;
  }
  .m-xxl-0 {
    margin: 0 !important;
  }
  .m-xxl-1 {
    margin: 0.25rem !important;
  }
  .m-xxl-2 {
    margin: 0.5rem !important;
  }
  .m-xxl-3 {
    margin: 1rem !important;
  }
  .m-xxl-4 {
    margin: 1.5rem !important;
  }
  .m-xxl-5 {
    margin: 3rem !important;
  }
  .m-xxl-auto {
    margin: auto !important;
  }
  .mx-xxl-0 {
    margin-right: 0 !important;
    margin-left: 0 !important;
  }
  .mx-xxl-1 {
    margin-right: 0.25rem !important;
    margin-left: 0.25rem !important;
  }
  .mx-xxl-2 {
    margin-right: 0.5rem !important;
    margin-left: 0.5rem !important;
  }
  .mx-xxl-3 {
    margin-right: 1rem !important;
    margin-left: 1rem !important;
  }
  .mx-xxl-4 {
    margin-right: 1.5rem !important;
    margin-left: 1.5rem !important;
  }
  .mx-xxl-5 {
    margin-right: 3rem !important;
    margin-left: 3rem !important;
  }
  .mx-xxl-auto {
    margin-right: auto !important;
    margin-left: auto !important;
  }
  .my-xxl-0 {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }
  .my-xxl-1 {
    margin-top: 0.25rem !important;
    margin-bottom: 0.25rem !important;
  }
  .my-xxl-2 {
    margin-top: 0.5rem !important;
    margin-bottom: 0.5rem !important;
  }
  .my-xxl-3 {
    margin-top: 1rem !important;
    margin-bottom: 1rem !important;
  }
  .my-xxl-4 {
    margin-top: 1.5rem !important;
    margin-bottom: 1.5rem !important;
  }
  .my-xxl-5 {
    margin-top: 3rem !important;
    margin-bottom: 3rem !important;
  }
  .my-xxl-auto {
    margin-top: auto !important;
    margin-bottom: auto !important;
  }
  .mt-xxl-0 {
    margin-top: 0 !important;
  }
  .mt-xxl-1 {
    margin-top: 0.25rem !important;
  }
  .mt-xxl-2 {
    margin-top: 0.5rem !important;
  }
  .mt-xxl-3 {
    margin-top: 1rem !important;
  }
  .mt-xxl-4 {
    margin-top: 1.5rem !important;
  }
  .mt-xxl-5 {
    margin-top: 3rem !important;
  }
  .mt-xxl-auto {
    margin-top: auto !important;
  }
  .me-xxl-0 {
    margin-right: 0 !important;
  }
  .me-xxl-1 {
    margin-right: 0.25rem !important;
  }
  .me-xxl-2 {
    margin-right: 0.5rem !important;
  }
  .me-xxl-3 {
    margin-right: 1rem !important;
  }
  .me-xxl-4 {
    margin-right: 1.5rem !important;
  }
  .me-xxl-5 {
    margin-right: 3rem !important;
  }
  .me-xxl-auto {
    margin-right: auto !important;
  }
  .mb-xxl-0 {
    margin-bottom: 0 !important;
  }
  .mb-xxl-1 {
    margin-bottom: 0.25rem !important;
  }
  .mb-xxl-2 {
    margin-bottom: 0.5rem !important;
  }
  .mb-xxl-3 {
    margin-bottom: 1rem !important;
  }
  .mb-xxl-4 {
    margin-bottom: 1.5rem !important;
  }
  .mb-xxl-5 {
    margin-bottom: 3rem !important;
  }
  .mb-xxl-auto {
    margin-bottom: auto !important;
  }
  .ms-xxl-0 {
    margin-left: 0 !important;
  }
  .ms-xxl-1 {
    margin-left: 0.25rem !important;
  }
  .ms-xxl-2 {
    margin-left: 0.5rem !important;
  }
  .ms-xxl-3 {
    margin-left: 1rem !important;
  }
  .ms-xxl-4 {
    margin-left: 1.5rem !important;
  }
  .ms-xxl-5 {
    margin-left: 3rem !important;
  }
  .ms-xxl-auto {
    margin-left: auto !important;
  }
  .p-xxl-0 {
    padding: 0 !important;
  }
  .p-xxl-1 {
    padding: 0.25rem !important;
  }
  .p-xxl-2 {
    padding: 0.5rem !important;
  }
  .p-xxl-3 {
    padding: 1rem !important;
  }
  .p-xxl-4 {
    padding: 1.5rem !important;
  }
  .p-xxl-5 {
    padding: 3rem !important;
  }
  .px-xxl-0 {
    padding-right: 0 !important;
    padding-left: 0 !important;
  }
  .px-xxl-1 {
    padding-right: 0.25rem !important;
    padding-left: 0.25rem !important;
  }
  .px-xxl-2 {
    padding-right: 0.5rem !important;
    padding-left: 0.5rem !important;
  }
  .px-xxl-3 {
    padding-right: 1rem !important;
    padding-left: 1rem !important;
  }
  .px-xxl-4 {
    padding-right: 1.5rem !important;
    padding-left: 1.5rem !important;
  }
  .px-xxl-5 {
    padding-right: 3rem !important;
    padding-left: 3rem !important;
  }
  .py-xxl-0 {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }
  .py-xxl-1 {
    padding-top: 0.25rem !important;
    padding-bottom: 0.25rem !important;
  }
  .py-xxl-2 {
    padding-top: 0.5rem !important;
    padding-bottom: 0.5rem !important;
  }
  .py-xxl-3 {
    padding-top: 1rem !important;
    padding-bottom: 1rem !important;
  }
  .py-xxl-4 {
    padding-top: 1.5rem !important;
    padding-bottom: 1.5rem !important;
  }
  .py-xxl-5 {
    padding-top: 3rem !important;
    padding-bottom: 3rem !important;
  }
  .pt-xxl-0 {
    padding-top: 0 !important;
  }
  .pt-xxl-1 {
    padding-top: 0.25rem !important;
  }
  .pt-xxl-2 {
    padding-top: 0.5rem !important;
  }
  .pt-xxl-3 {
    padding-top: 1rem !important;
  }
  .pt-xxl-4 {
    padding-top: 1.5rem !important;
  }
  .pt-xxl-5 {
    padding-top: 3rem !important;
  }
  .pe-xxl-0 {
    padding-right: 0 !important;
  }
  .pe-xxl-1 {
    padding-right: 0.25rem !important;
  }
  .pe-xxl-2 {
    padding-right: 0.5rem !important;
  }
  .pe-xxl-3 {
    padding-right: 1rem !important;
  }
  .pe-xxl-4 {
    padding-right: 1.5rem !important;
  }
  .pe-xxl-5 {
    padding-right: 3rem !important;
  }
  .pb-xxl-0 {
    padding-bottom: 0 !important;
  }
  .pb-xxl-1 {
    padding-bottom: 0.25rem !important;
  }
  .pb-xxl-2 {
    padding-bottom: 0.5rem !important;
  }
  .pb-xxl-3 {
    padding-bottom: 1rem !important;
  }
  .pb-xxl-4 {
    padding-bottom: 1.5rem !important;
  }
  .pb-xxl-5 {
    padding-bottom: 3rem !important;
  }
  .ps-xxl-0 {
    padding-left: 0 !important;
  }
  .ps-xxl-1 {
    padding-left: 0.25rem !important;
  }
  .ps-xxl-2 {
    padding-left: 0.5rem !important;
  }
  .ps-xxl-3 {
    padding-left: 1rem !important;
  }
  .ps-xxl-4 {
    padding-left: 1.5rem !important;
  }
  .ps-xxl-5 {
    padding-left: 3rem !important;
  }
  .text-xxl-start {
    text-align: left !important;
  }
  .text-xxl-end {
    text-align: right !important;
  }
  .text-xxl-center {
    text-align: center !important;
  }
}
@media (min-width: 1200px) {
  .fs-1 {
    font-size: 2.5rem !important;
  }
  .fs-2 {
    font-size: 2rem !important;
  }
  .fs-3 {
    font-size: 1.75rem !important;
  }
  .fs-4 {
    font-size: 1.5rem !important;
  }
  .fs-sm-1 {
    font-size: 2.5rem !important;
  }
  .fs-sm-2 {
    font-size: 2rem !important;
  }
  .fs-sm-3 {
    font-size: 1.75rem !important;
  }
  .fs-sm-4 {
    font-size: 1.5rem !important;
  }
  .fs-md-1 {
    font-size: 2.5rem !important;
  }
  .fs-md-2 {
    font-size: 2rem !important;
  }
  .fs-md-3 {
    font-size: 1.75rem !important;
  }
  .fs-md-4 {
    font-size: 1.5rem !important;
  }
  .fs-lg-1 {
    font-size: 2.5rem !important;
  }
  .fs-lg-2 {
    font-size: 2rem !important;
  }
  .fs-lg-3 {
    font-size: 1.75rem !important;
  }
  .fs-lg-4 {
    font-size: 1.5rem !important;
  }
}
@media print {
  .d-print-inline {
    display: inline !important;
  }
  .d-print-inline-block {
    display: inline-block !important;
  }
  .d-print-block {
    display: block !important;
  }
  .d-print-grid {
    display: grid !important;
  }
  .d-print-table {
    display: table !important;
  }
  .d-print-table-row {
    display: table-row !important;
  }
  .d-print-table-cell {
    display: table-cell !important;
  }
  .d-print-flex {
    display: flex !important;
  }
  .d-print-inline-flex {
    display: inline-flex !important;
  }
  .d-print-none {
    display: none !important;
  }
}
.background-black {
  background-color: #000b17 !important;
}
.background-black .card-default a, .background-black .card-promotion a {
  background: #000b17 !important;
}

.background-white {
  background-color: #fefcf3 !important;
}
.background-white .card-default a, .background-white .card-promotion a {
  background: #fefcf3 !important;
}

.background-grey {
  background-color: #f3f3f3 !important;
}
.background-grey .card-default a, .background-grey .card-promotion a {
  background: #f3f3f3 !important;
}

.background-grey_dark {
  background-color: #909090 !important;
}
.background-grey_dark .card-default a, .background-grey_dark .card-promotion a {
  background: #909090 !important;
}

.background-dark_grey {
  background-color: #909090 !important;
}
.background-dark_grey .card-default a, .background-dark_grey .card-promotion a {
  background: #909090 !important;
}

.background-dark-grey {
  background-color: #909090 !important;
}
.background-dark-grey .card-default a, .background-dark-grey .card-promotion a {
  background: #909090 !important;
}

.background-grey-dark {
  background-color: #909090 !important;
}
.background-grey-dark .card-default a, .background-grey-dark .card-promotion a {
  background: #909090 !important;
}

.background-red {
  background-color: #e40046 !important;
}
.background-red .card-default a, .background-red .card-promotion a {
  background: #e40046 !important;
}

.background-green {
  background-color: #0b4052 !important;
}
.background-green .card-default a, .background-green .card-promotion a {
  background: #0b4052 !important;
}

.background-orange {
  background-color: #cba058 !important;
}
.background-orange .card-default a, .background-orange .card-promotion a {
  background: #cba058 !important;
}

.background-blue {
  background-color: #182866 !important;
}
.background-blue .card-default a, .background-blue .card-promotion a {
  background: #182866 !important;
}

.background-pink {
  background-color: #f088b6 !important;
}
.background-pink .card-default a, .background-pink .card-promotion a {
  background: #f088b6 !important;
}

.background-light_blue {
  background-color: #44bfe7 !important;
}
.background-light_blue .card-default a, .background-light_blue .card-promotion a {
  background: #44bfe7 !important;
}

.background-blue_dark {
  background-color: #07192c !important;
}
.background-blue_dark .card-default a, .background-blue_dark .card-promotion a {
  background: #07192c !important;
}

.background-blue-dark {
  background-color: #07192c !important;
}
.background-blue-dark .card-default a, .background-blue-dark .card-promotion a {
  background: #07192c !important;
}

.background-dark_blue {
  background-color: #07192c !important;
}
.background-dark_blue .card-default a, .background-dark_blue .card-promotion a {
  background: #07192c !important;
}

.background-dark-blue {
  background-color: #07192c !important;
}
.background-dark-blue .card-default a, .background-dark-blue .card-promotion a {
  background: #07192c !important;
}

.text-black {
  color: #000b17 !important;
}
.text-black * {
  color: #000b17 !important;
}
.text-black strong {
  -webkit-text-stroke-color: #000b17 !important;
  color: transparent !important;
}

.text-white {
  color: #fefcf3 !important;
}
.text-white * {
  color: #fefcf3 !important;
}
.text-white strong {
  -webkit-text-stroke-color: #fefcf3 !important;
  color: transparent !important;
}

.text-grey {
  color: #f3f3f3 !important;
}
.text-grey * {
  color: #f3f3f3 !important;
}
.text-grey strong {
  -webkit-text-stroke-color: #f3f3f3 !important;
  color: transparent !important;
}

.text-grey_dark {
  color: #909090 !important;
}
.text-grey_dark * {
  color: #909090 !important;
}
.text-grey_dark strong {
  -webkit-text-stroke-color: #909090 !important;
  color: transparent !important;
}

.text-dark_grey {
  color: #909090 !important;
}
.text-dark_grey * {
  color: #909090 !important;
}
.text-dark_grey strong {
  -webkit-text-stroke-color: #909090 !important;
  color: transparent !important;
}

.text-dark-grey {
  color: #909090 !important;
}
.text-dark-grey * {
  color: #909090 !important;
}
.text-dark-grey strong {
  -webkit-text-stroke-color: #909090 !important;
  color: transparent !important;
}

.text-grey-dark {
  color: #909090 !important;
}
.text-grey-dark * {
  color: #909090 !important;
}
.text-grey-dark strong {
  -webkit-text-stroke-color: #909090 !important;
  color: transparent !important;
}

.text-red {
  color: #e40046 !important;
}
.text-red * {
  color: #e40046 !important;
}
.text-red strong {
  -webkit-text-stroke-color: #e40046 !important;
  color: transparent !important;
}

.text-green {
  color: #0b4052 !important;
}
.text-green * {
  color: #0b4052 !important;
}
.text-green strong {
  -webkit-text-stroke-color: #0b4052 !important;
  color: transparent !important;
}

.text-orange {
  color: #cba058 !important;
}
.text-orange * {
  color: #cba058 !important;
}
.text-orange strong {
  -webkit-text-stroke-color: #cba058 !important;
  color: transparent !important;
}

.text-blue {
  color: #182866 !important;
}
.text-blue * {
  color: #182866 !important;
}
.text-blue strong {
  -webkit-text-stroke-color: #182866 !important;
  color: transparent !important;
}

.text-pink {
  color: #f088b6 !important;
}
.text-pink * {
  color: #f088b6 !important;
}
.text-pink strong {
  -webkit-text-stroke-color: #f088b6 !important;
  color: transparent !important;
}

.text-light_blue {
  color: #44bfe7 !important;
}
.text-light_blue * {
  color: #44bfe7 !important;
}
.text-light_blue strong {
  -webkit-text-stroke-color: #44bfe7 !important;
  color: transparent !important;
}

.text-blue_dark {
  color: #07192c !important;
}
.text-blue_dark * {
  color: #07192c !important;
}
.text-blue_dark strong {
  -webkit-text-stroke-color: #07192c !important;
  color: transparent !important;
}

.text-blue-dark {
  color: #07192c !important;
}
.text-blue-dark * {
  color: #07192c !important;
}
.text-blue-dark strong {
  -webkit-text-stroke-color: #07192c !important;
  color: transparent !important;
}

.text-dark_blue {
  color: #07192c !important;
}
.text-dark_blue * {
  color: #07192c !important;
}
.text-dark_blue strong {
  -webkit-text-stroke-color: #07192c !important;
  color: transparent !important;
}

.text-dark-blue {
  color: #07192c !important;
}
.text-dark-blue * {
  color: #07192c !important;
}
.text-dark-blue strong {
  -webkit-text-stroke-color: #07192c !important;
  color: transparent !important;
}

.border-color-black {
  border-color: #000b17 !important;
}
.border-color-white {
  border-color: #fefcf3 !important;
}
.border-color-grey {
  border-color: #f3f3f3 !important;
}
.border-color-grey_dark {
  border-color: #909090 !important;
}
.border-color-dark_grey {
  border-color: #909090 !important;
}
.border-color-dark-grey {
  border-color: #909090 !important;
}
.border-color-grey-dark {
  border-color: #909090 !important;
}
.border-color-red {
  border-color: #e40046 !important;
}
.border-color-green {
  border-color: #0b4052 !important;
}
.border-color-orange {
  border-color: #cba058 !important;
}
.border-color-blue {
  border-color: #182866 !important;
}
.border-color-pink {
  border-color: #f088b6 !important;
}
.border-color-light_blue {
  border-color: #44bfe7 !important;
}
.border-color-blue_dark {
  border-color: #07192c !important;
}
.border-color-blue-dark {
  border-color: #07192c !important;
}
.border-color-dark_blue {
  border-color: #07192c !important;
}
.border-color-dark-blue {
  border-color: #07192c !important;
}
.card-height-tiny {
  height: 30vh;
}

.card-height-small {
  height: 20vh;
}

.card-height-medium {
  height: 30vh;
}

.card-height-large {
  height: 40vh;
}

.card-height-extra_large {
  height: 50vh;
}

.banner-height-tiny {
  min-height: 30vh !important;
}

.banner-height-small {
  min-height: 40vh !important;
}

.banner-height-medium {
  min-height: 60vh !important;
}

.banner-height-large {
  min-height: 78vh !important;
}

.banner-height-extra_large {
  min-height: 85vh !important;
}

.block-padding-none {
  padding-top: 0rem;
  padding-bottom: 0rem;
}

.block-padding-small {
  padding-top: 1.25rem;
  padding-bottom: 1.25rem;
}

.block-padding-medium {
  padding-top: calc(1.5rem + 3vw);
}
@media (min-width: 1200px) {
  .block-padding-medium {
    padding-top: 3.75rem;
  }
}
.block-padding-medium {
  padding-bottom: calc(1.5rem + 3vw);
}
@media (min-width: 1200px) {
  .block-padding-medium {
    padding-bottom: 3.75rem;
  }
}

.block-padding-large {
  padding-top: calc(1.625rem + 4.5vw);
}
@media (min-width: 1200px) {
  .block-padding-large {
    padding-top: 5rem;
  }
}
.block-padding-large {
  padding-bottom: calc(1.625rem + 4.5vw);
}
@media (min-width: 1200px) {
  .block-padding-large {
    padding-bottom: 5rem;
  }
}

.block-margin-none {
  margin-top: 0rem;
  margin-bottom: 0rem;
}

.block-margin-small {
  margin-top: 1.25rem;
  margin-bottom: 1.25rem;
}

.block-margin-medium {
  margin-top: calc(1.4375rem + 2.25vw);
}
@media (min-width: 1200px) {
  .block-margin-medium {
    margin-top: 3.125rem;
  }
}
.block-margin-medium {
  margin-bottom: calc(1.4375rem + 2.25vw);
}
@media (min-width: 1200px) {
  .block-margin-medium {
    margin-bottom: 3.125rem;
  }
}

.block-margin-large {
  margin-top: calc(1.5625rem + 3.75vw);
}
@media (min-width: 1200px) {
  .block-margin-large {
    margin-top: 4.375rem;
  }
}
.block-margin-large {
  margin-bottom: calc(1.5625rem + 3.75vw);
}
@media (min-width: 1200px) {
  .block-margin-large {
    margin-bottom: 4.375rem;
  }
}

body {
  overflow-x: clip;
}

*, html, body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, form, label, fieldset, input, p, blockquote, th, td {
  margin: 0;
  padding: 0;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

fieldset, img {
  border: 0;
}

address, caption, cite, code, dfn, em, strong, th, var {
  font-style: normal;
  font-weight: normal;
}

ol, ul, li {
  list-style: none;
}

caption, th {
  text-align: left;
}

h1, h2, h3, h4, h5, h6 {
  font-size: 100%;
  font-weight: normal;
}

q:before, q:after {
  content: "";
}

strong {
  font-weight: bold;
}

em {
  font-style: italic;
}

a img {
  border: 0;
}

* {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.alignright {
  float: right;
  margin-left: 20px;
  margin-bottom: 10px;
}

.alignleft {
  float: left;
  margin-right: 20px;
  margin-bottom: 10px;
}

.aligncenter {
  display: block;
  margin: 0 auto 30px auto;
}

.clear-me:before,
.clear-me:after {
  content: "";
  display: table;
}

.clear-me:after {
  clear: both;
}

#nav-toggle, #mobile-nav, #mobile-detect, #ccccc, #nav-toggle {
  display: none;
}

img {
  max-width: 100%;
}

body {
  font-family: "nimbus-sans", sans-serif;
  font-weight: 400;
}

html {
  font-weight: 700;
  font-size: 1rem;
  line-height: 1;
}

h1,
.h1 {
  font-weight: 700;
  font-size: calc(1.55rem + 3.6vw);
}
@media (min-width: 1200px) {
  h1,
  .h1 {
    font-size: 4.25rem;
  }
}
h1,
.h1 {
  padding-bottom: 0.9375rem;
  line-height: 1;
  font-weight: 700;
  letter-spacing: -1px;
}
h1 strong,
.h1 strong {
  font-weight: 700;
}

h2,
.h2 {
  font-weight: 700;
  font-size: calc(1.425rem + 2.1vw);
}
@media (min-width: 1200px) {
  h2,
  .h2 {
    font-size: 3rem;
  }
}
h2,
.h2 {
  padding-bottom: 1.25rem;
  font-weight: 700;
  line-height: 0.9;
  letter-spacing: -1.75px;
}
h2 strong,
.h2 strong {
  font-weight: 900;
}

h3,
.h3 {
  font-weight: 700;
  font-size: calc(1.3rem + 0.6vw);
}
@media (min-width: 1200px) {
  h3,
  .h3 {
    font-size: 1.75rem;
  }
}
h3,
.h3 {
  padding-bottom: calc(1.28125rem + 0.375vw);
}
@media (min-width: 1200px) {
  h3,
  .h3 {
    padding-bottom: 1.5625rem;
  }
}
h3,
.h3 {
  line-height: 1;
  letter-spacing: -1.35px;
  font-weight: 700;
}
h3 strong,
.h3 strong {
  font-weight: 700;
}

h4,
.h4 {
  font-weight: 700;
  font-size: calc(1.275rem + 0.3vw);
}
@media (min-width: 1200px) {
  h4,
  .h4 {
    font-size: 1.5rem;
  }
}
h4,
.h4 {
  padding-bottom: 0.9375rem;
  font-weight: 800;
}

h5,
.h5 {
  font-weight: 700;
  font-size: 1.125rem;
  padding-bottom: 0.9375rem;
}

h6,
.h6 {
  font-weight: 700;
  font-size: 1rem;
}

p,
li {
  font-weight: 400;
  font-size: 1.25rem;
  letter-spacing: 0px;
  line-height: 1.6;
  font-weight: 300;
}

li {
  padding-bottom: 0;
}

table h2,
table h3,
table h4,
table h5,
table h6 {
  padding-bottom: 0;
  margin-bottom: 0;
}

a {
  text-decoration: underline;
}

.user-content .blockquote,
.user-content blockquote {
  line-height: 1.8;
  margin-bottom: 2em;
  border-left: 3px solid #333;
  padding-left: 2em;
  margin-left: 2em;
  font-style: italic;
  margin-bottom: 2em;
  margin-top: 2em;
  margin-bottom: 4em;
  margin-right: 2em;
}
.user-content .blockquote strong,
.user-content blockquote strong {
  display: block;
  text-align: right;
  font-size: 1.2em;
}
.user-content ul,
.user-content ol {
  list-style: initial;
  margin-left: 2em;
  margin-bottom: 1em;
}
.user-content ul li,
.user-content ol li {
  font-weight: 500 !important;
  list-style: initial;
}
.user-content p, .user-content ul {
  padding-bottom: 15px;
}
.user-content ol,
.user-content ol li {
  list-style: numeric !important;
}

.block-subtitle, .card-grid__subtitle {
  font-weight: 400;
  font-size: 1rem;
  line-height: 1.6;
}

.card-grid__carousel, .events-section__carousel {
  display: flex;
  flex-wrap: wrap;
  overflow: visible;
}
.card-grid__carousel .splide__track, .events-section__carousel .splide__track {
  order: 1;
  width: 100%;
  overflow: visible;
}
.card-grid__carousel .splide__slide, .events-section__carousel .splide__slide {
  align-items: start;
}
.card-grid__carousel .splide__pagination, .events-section__carousel .splide__pagination {
  order: 2;
  width: 50%;
  bottom: 0;
  position: static;
  justify-content: start;
  align-items: center;
  left: 0;
}
.card-grid__carousel .splide__pagination button, .events-section__carousel .splide__pagination button {
  background: black;
  opacity: 1;
  height: 15px;
  width: 15px;
}
.card-grid__carousel .splide__pagination button.is-active, .events-section__carousel .splide__pagination button.is-active {
  background: #e40046;
  transform: none;
}
.card-grid__carousel .splide__arrows, .events-section__carousel .splide__arrows {
  position: static;
  order: 3;
  width: 50%;
  display: flex;
  justify-content: end;
  align-items: center;
}
.card-grid__carousel .splide__arrows button, .events-section__carousel .splide__arrows button {
  position: static;
  transform: none;
  border: 2px solid black;
  background: white;
  height: 50px;
  width: 50px;
}
.card-grid__carousel .splide__arrows button svg, .events-section__carousel .splide__arrows button svg {
  fill: #e40046;
}

.row__header {
  margin-bottom: calc(1.35rem + 1.2vw);
}
@media (min-width: 1200px) {
  .row__header {
    margin-bottom: 2.25rem;
  }
}

iframe {
  max-width: 100% !important;
}

.columns-1,
.columns-2,
.columns-3,
.columns-4,
.columns-5 {
  display: flex;
  flex-wrap: wrap;
}

.columns-1 > div,
.columns-1 > li {
  width: 100%;
}

.columns-2 > div,
.columns-2 > li {
  width: 50%;
}
@media (max-width: 767.98px) {
  .columns-2 > div,
  .columns-2 > li {
    width: 100%;
  }
}

.columns-3 > div,
.columns-3 > li {
  width: 33.3333%;
}
@media (max-width: 767.98px) {
  .columns-3 > div,
  .columns-3 > li {
    width: 100%;
  }
}

.columns-4 > div,
.columns-4 > li {
  width: 25%;
}
@media (max-width: 767.98px) {
  .columns-4 > div,
  .columns-4 > li {
    width: 50%;
  }
}

.columns-5 > div,
.columns-5 > li {
  width: 20%;
}
@media (max-width: 767.98px) {
  .columns-5 > div,
  .columns-5 > li {
    width: 50%;
  }
}

.background-white h2 {
  color: #000b17;
}

.background-purple,
.background-black {
  color: white;
}
.background-purple a,
.background-black a {
  color: white !important;
}

.background-black .background-white * {
  color: black;
}
.background-orange * {
  color: black;
}
.background-orange .title-colour {
  color: black;
}
.background-blue * {
  color: white;
}
.background-blue .title-colour {
  color: white;
}
.background-red *,
.background-white .background-red * {
  color: white;
}
.background-red h2,
.background-red p,
.background-red h3,
.background-white .background-red h2,
.background-white .background-red p,
.background-white .background-red h3 {
  color: white;
}
.background-red .card-grid__heading--stylised:after, .background-red .card-grid__heading--stylised:before {
  background: #fefcf3;
}

.background-purple .title-colour {
  color: white;
}
.background-purple .title-colour strong {
  -webkit-text-stroke-color: white;
}
.background-purple .button {
  background-color: white !important;
  color: !important;
}

.background-grey .title-colour {
  color: black;
}
.background-overhang-right:before {
  right: auto;
  left: 100%;
}

.shadow-bottom {
  position: relative;
  box-shadow: 0 40px 40px -40px rgba(0, 0, 0, 0.5);
}

.background-overhang-left,
.background-overhang-right {
  position: relative;
}
.background-overhang-left:before,
.background-overhang-right:before {
  width: 100%;
  right: 100%;
  content: "";
  background: inherit;
  display: inline-block;
  position: absolute;
  height: 100%;
  top: 0;
}

.background-image {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  content: "";
  background-size: cover;
}

.content-block {
  position: relative;
}

.splide__arrow {
  margin: 0 10px;
}

.splide__arrow:focus svg,
.splide__arrow:hover svg {
  fill: white;
}

body .splide__pagination__page {
  background: #000b17;
}
body .splide__pagination__page.is-active {
  background: #e40046;
}

.background-red .splide__pagination__page.is-active {
  background: white !important;
}

.events-calendar-picker__day {
  padding: 0 !important;
}

.events-filter-popup__close {
  padding: 0;
}

.splide__arrow:disabled {
  display: none;
  opacity: 0;
}

.skip-to-content {
  position: absolute;
  left: -9999px;
  top: 0;
  z-index: 10000;
  background: #e40046;
  color: white;
  padding-top: 0.75rem;
  padding-bottom: 0.75rem;
  padding-left: 1.25rem;
  padding-right: 1.25rem;
  font-weight: 700;
  font-size: 1rem;
  font-weight: bold;
  text-decoration: none;
  border-radius: 0 0 8px 0;
}
.skip-to-content:focus {
  left: 0;
}

a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible,
[tabindex]:focus-visible {
  outline: 2px solid #e40046;
  outline-offset: 2px;
}
a:focus:not(:focus-visible),
button:focus:not(:focus-visible),
input:focus:not(:focus-visible),
select:focus:not(:focus-visible),
textarea:focus:not(:focus-visible),
[tabindex]:focus:not(:focus-visible) {
  outline: none;
}

.splide__arrow:focus-visible,
.splide__pagination__page:focus-visible {
  outline: 2px solid #e40046;
  outline-offset: 2px;
}

@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }
}
.background-red .button {
  background: black !important;
}

.reveal--ready {
  opacity: 0;
  transform: translateY(24px);
  transition: opacity 0.8s cubic-bezier(0.16, 1, 0.3, 1), transform 0.8s cubic-bezier(0.16, 1, 0.3, 1);
}
.reveal--ready.reveal--visible {
  opacity: 1;
  transform: translateY(0);
}
.reveal--ready.reveal--slide-up {
  transform: translateY(40px);
  transition-duration: 1s;
}
.reveal--ready.reveal--slide-up.reveal--visible {
  opacity: 1;
  transform: translateY(0);
}
.reveal--ready.reveal--fade {
  transform: none;
}
.reveal--ready.reveal--fade.reveal--visible {
  transform: none;
}
.reveal--ready.reveal--stagger > * {
  opacity: 0;
  transform: translateY(20px);
  transition: opacity 0.6s cubic-bezier(0.16, 1, 0.3, 1), transform 0.6s cubic-bezier(0.16, 1, 0.3, 1);
}
.reveal--ready.reveal--stagger.reveal--visible > * {
  opacity: 1;
  transform: translateY(0);
}
.reveal--ready.reveal--stagger.reveal--visible > *:nth-child(1) {
  transition-delay: 0s;
}
.reveal--ready.reveal--stagger.reveal--visible > *:nth-child(2) {
  transition-delay: 0.08s;
}
.reveal--ready.reveal--stagger.reveal--visible > *:nth-child(3) {
  transition-delay: 0.16s;
}
.reveal--ready.reveal--stagger.reveal--visible > *:nth-child(4) {
  transition-delay: 0.24s;
}
.reveal--ready.reveal--stagger.reveal--visible > *:nth-child(5) {
  transition-delay: 0.32s;
}
.reveal--ready.reveal--stagger.reveal--visible > *:nth-child(6) {
  transition-delay: 0.4s;
}
.reveal--ready.reveal--stagger.reveal--visible > *:nth-child(7) {
  transition-delay: 0.48s;
}
.reveal--ready.reveal--stagger.reveal--visible > *:nth-child(8) {
  transition-delay: 0.56s;
}
.reveal--ready.reveal--stagger.reveal--visible > *:nth-child(9) {
  transition-delay: 0.64s;
}
.reveal--ready.reveal--stagger.reveal--visible > *:nth-child(10) {
  transition-delay: 0.72s;
}
.reveal--ready.reveal--stagger.reveal--visible > *:nth-child(11) {
  transition-delay: 0.8s;
}
.reveal--ready.reveal--stagger.reveal--visible > *:nth-child(12) {
  transition-delay: 0.88s;
}

.reveal-heading__words {
  display: inline;
}
.reveal-heading .word-wrap {
  display: inline-block;
  overflow: hidden;
  vertical-align: bottom;
  padding-bottom: 0.05em;
  margin-right: 0.3em;
}
.reveal-heading .word-wrap:last-child {
  margin-right: 0;
}
.reveal-heading .word {
  display: inline-block;
  transform: translateY(110%);
  transition: transform 1.2s cubic-bezier(0.16, 1, 0.3, 1);
}

.reveal--visible .reveal-heading .word {
  transform: translateY(0);
}

.reveal-heading--visible .word {
  transform: translateY(0);
}

.reveal-heading .word-wrap:nth-child(1) .word {
  transition-delay: 0.15s;
}

.reveal-heading .word-wrap:nth-child(2) .word {
  transition-delay: 0.33s;
}

.reveal-heading .word-wrap:nth-child(3) .word {
  transition-delay: 0.51s;
}

.reveal-heading .word-wrap:nth-child(4) .word {
  transition-delay: 0.69s;
}

.reveal-heading .word-wrap:nth-child(5) .word {
  transition-delay: 0.87s;
}

.reveal-heading .word-wrap:nth-child(6) .word {
  transition-delay: 1.05s;
}

.reveal-heading .word-wrap:nth-child(7) .word {
  transition-delay: 1.23s;
}

.reveal-heading .word-wrap:nth-child(8) .word {
  transition-delay: 1.41s;
}

.reveal-heading .word-wrap:nth-child(9) .word {
  transition-delay: 1.59s;
}

.reveal-heading .word-wrap:nth-child(10) .word {
  transition-delay: 1.77s;
}

.reveal-heading .word-wrap:nth-child(11) .word {
  transition-delay: 1.95s;
}

.reveal-heading .word-wrap:nth-child(12) .word {
  transition-delay: 2.13s;
}

.reveal-heading .word-wrap:nth-child(13) .word {
  transition-delay: 2.31s;
}

.reveal-heading .word-wrap:nth-child(14) .word {
  transition-delay: 2.49s;
}

.reveal-heading .word-wrap:nth-child(15) .word {
  transition-delay: 2.67s;
}

.reveal-heading .word-wrap:nth-child(16) .word {
  transition-delay: 2.85s;
}

.reveal-heading .word-wrap:nth-child(17) .word {
  transition-delay: 3.03s;
}

.reveal-heading .word-wrap:nth-child(18) .word {
  transition-delay: 3.21s;
}

.reveal-heading .word-wrap:nth-child(19) .word {
  transition-delay: 3.39s;
}

.reveal-heading .word-wrap:nth-child(20) .word {
  transition-delay: 3.57s;
}

@media (prefers-reduced-motion: reduce) {
  .reveal--ready {
    opacity: 1;
    transform: none;
    transition: none;
  }
  .reveal--ready.reveal--stagger > * {
    opacity: 1;
    transform: none;
    transition: none;
  }
  .reveal-heading .word {
    transform: none;
    transition: none;
  }
}
.button, .form-style button, .button:visited {
  padding-top: 0.75rem;
  padding-bottom: 0.75rem;
  padding-left: calc(1.3125rem + 0.75vw);
}
@media (min-width: 1200px) {
  .button, .form-style button, .button:visited {
    padding-left: 1.875rem;
  }
}
.button, .form-style button, .button:visited {
  padding-right: calc(1.3125rem + 0.75vw);
}
@media (min-width: 1200px) {
  .button, .form-style button, .button:visited {
    padding-right: 1.875rem;
  }
}
.button, .form-style button, .button:visited {
  letter-spacing: -0.51px;
  display: inline-block;
  border-radius: 0;
  letter-spacing: 0.6px;
  color: white;
  border-radius: 50px;
  background: #e40046;
  font-weight: 700;
  font-size: 1rem;
  border: 0;
  cursor: pointer;
  text-decoration: none;
  transition: all 0.2s ease-in;
  font-weight: bold;
}
.button:hover, .form-style button:hover, .button:visited:hover {
  text-decoration: none;
  background: black;
  color: #fff;
  border-color: #000;
}
.button:focus-visible, .form-style button:focus-visible, .button:visited:focus-visible {
  outline: 2px solid #e40046;
  outline-offset: 2px;
}

html,
body {
  background: #fefcf3;
  overflow-x: clip;
}

.site-header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 1000;
  background: transparent;
  transition: background 0.3s ease, box-shadow 0.3s ease;
}
@media (max-width: 1199.98px) {
  .site-header {
    background: #e40046;
  }
}
.site-header--scrolled {
  background: #e40046;
  box-shadow: 0 2px 12px rgba(0, 0, 0, 0.2);
}
.site-header:has(.site-nav__item--has-dropdown.is-open), .site-header:has(.site-search--open) {
  background: #e40046;
}
.site-header > .container {
  position: static;
}
.site-header__inner {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding-top: calc(1.3625rem + 1.35vw);
}
@media (min-width: 1200px) {
  .site-header__inner {
    padding-top: 2.375rem;
  }
}
.site-header__inner {
  padding-bottom: calc(1.3625rem + 1.35vw);
}
@media (min-width: 1200px) {
  .site-header__inner {
    padding-bottom: 2.375rem;
  }
}
.site-header__inner {
  padding-left: 2rem;
  padding-right: 2rem;
}
@media (max-width: 1199.98px) {
  .site-header__inner {
    min-height: 60px;
    padding-left: 0;
    padding-right: 0;
  }
}
.site-header__logo {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  text-decoration: none;
  z-index: 2;
}
.site-header__logo img {
  height: 52px;
  width: auto;
  position: relative;
}
@media (max-width: 1199.98px) {
  .site-header__logo img {
    height: 30px;
  }
}
.site-header__actions-left, .site-header__actions-right {
  display: flex;
  align-items: center;
  gap: 1rem;
  z-index: 2;
}
@media (max-width: 1199.98px) {
  .site-header__actions-left, .site-header__actions-right {
    gap: 0.75rem;
  }
}
@media (min-width: 1200px) {
  .site-header__actions-left {
    margin-left: auto;
    padding-right: 1rem;
  }
}
.site-header__action-link {
  display: flex;
  align-items: center;
  gap: 0.4rem;
  color: #fefcf3;
  text-decoration: none;
  font-weight: 400;
  font-size: 1rem;
  font-weight: 400;
  transition: opacity 0.2s ease;
  cursor: pointer;
}
.site-header__action-link:hover {
  opacity: 0.8;
  text-decoration: none;
  color: #fefcf3;
}
.site-header__action-link span {
  color: #fefcf3;
}
@media (max-width: 767.98px) {
  .site-header__action-link span {
    display: none;
  }
}
.site-header__action-link i {
  font-weight: 400;
  font-size: 1rem;
  font-weight: 300;
  color: #fefcf3;
}
.site-header__menu-btn {
  position: relative;
  z-index: 1200;
  display: flex;
  align-items: center;
  gap: 0.5rem;
  background: none;
  border: none;
  color: #fefcf3;
  cursor: pointer;
  font-weight: 400;
  font-size: calc(1.2625rem + 0.15vw);
}
@media (min-width: 1200px) {
  .site-header__menu-btn {
    font-size: 1.375rem;
  }
}
.site-header__menu-btn {
  letter-spacing: -0.5px;
  font-weight: 600;
  padding-top: 0rem;
  padding-bottom: 0rem;
  padding-left: 0rem;
  padding-right: 0rem;
}
.site-header__menu-btn:hover {
  background: initial;
}
.site-header__menu-btn > span:first-child {
  color: #fefcf3;
}
@media (max-width: 767.98px) {
  .site-header__menu-btn > span:first-child {
    display: none;
  }
}
.site-header__menu-btn .hamburger-inner,
.site-header__menu-btn .hamburger-inner::before,
.site-header__menu-btn .hamburger-inner::after {
  background-color: #fefcf3;
  height: 2px;
  width: 22px;
}
@media (max-width: 1199.98px) {
  .site-header__menu-btn .hamburger-inner,
  .site-header__menu-btn .hamburger-inner::before,
  .site-header__menu-btn .hamburger-inner::after {
    height: 3px;
    width: 24px;
    border-radius: 2px;
  }
}
.site-header__menu-btn .hamburger {
  padding-top: 0rem;
  padding-bottom: 0rem;
  padding-left: 0rem;
  padding-right: 0rem;
  display: flex;
}
@media (max-width: 1199.98px) {
  .site-header__menu-btn .hamburger-box {
    width: 24px;
    height: 21px;
  }
}

.site-header__basket {
  position: relative;
}
.site-header__basket .basket-badge {
  position: absolute;
  top: -6px;
  right: -8px;
  background: #e40046;
  color: #fefcf3;
  font-weight: 700;
  font-size: 0.6875rem;
  min-width: 18px;
  height: 18px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  line-height: 1;
}
.site-header__basket .basket-badge:empty {
  display: none;
}
.site-header__basket .basket-flyout {
  position: absolute;
  top: 100%;
  right: -20px;
  width: 340px;
  padding-top: 1rem;
  opacity: 0;
  visibility: hidden;
  transform: translateY(8px);
  transition: opacity 0.25s ease, visibility 0.25s ease, transform 0.25s ease;
  z-index: 200;
}
@media (max-width: 767.98px) {
  .site-header__basket .basket-flyout {
    right: auto;
    left: 50%;
    transform: translateX(-100%) translateY(8px);
    width: min(300px, 100vw - 32px);
  }
}
.site-header__basket:hover .basket-flyout {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}
@media (max-width: 767.98px) {
  .site-header__basket:hover .basket-flyout {
    transform: translateX(-100%) translateY(0);
  }
}
.site-header__basket .basket-flyout__content {
  background: #fefcf3;
  border-radius: 16px;
  box-shadow: 0 12px 40px rgba(0, 0, 0, 0.18), 0 2px 8px rgba(0, 0, 0, 0.08);
  overflow: hidden;
}
.site-header__basket .basket-flyout__header {
  background: #000b17;
  color: #fefcf3;
  padding-top: 0.875rem;
  padding-bottom: 0.875rem;
  padding-left: 1.25rem;
  padding-right: 1.25rem;
  font-weight: 700;
  font-size: 0.9375rem;
  display: flex;
  align-items: center;
  gap: 8px;
}
.site-header__basket .basket-flyout__header i {
  font-weight: 400;
  font-size: 0.875rem;
  opacity: 0.7;
}
.site-header__basket .basket-flyout__items {
  max-height: 300px;
  overflow-y: auto;
  padding-left: 1.25rem;
  padding-right: 1.25rem;
  padding-top: 0.25rem;
  padding-bottom: 0.25rem;
}
.site-header__basket .basket-flyout__items::-webkit-scrollbar {
  width: 4px;
}
.site-header__basket .basket-flyout__items::-webkit-scrollbar-thumb {
  background: #f3f3f3;
  border-radius: 4px;
}
.site-header__basket .basket-flyout__item {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  padding-top: 0.875rem;
  padding-bottom: 0.875rem;
  border-bottom: 1px solid rgba(0, 0, 0, 0.06);
}
.site-header__basket .basket-flyout__item:last-child {
  border-bottom: none;
}
.site-header__basket .basket-flyout__item-info {
  flex: 1;
  min-width: 0;
}
.site-header__basket .basket-flyout__item-name {
  display: block;
  font-weight: 700;
  font-size: 0.875rem;
  color: #000b17;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  line-height: 1.3;
}
.site-header__basket .basket-flyout__item-date {
  display: flex;
  align-items: center;
  gap: 4px;
  font-weight: 400;
  font-size: 0.75rem;
  color: #909090;
  margin-top: 0.1875rem;
}
.site-header__basket .basket-flyout__item-date i {
  font-weight: 400;
  font-size: 0.625rem;
  color: #e40046;
}
.site-header__basket .basket-flyout__item-meta {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 2px;
  flex-shrink: 0;
}
.site-header__basket .basket-flyout__item-price {
  font-weight: 700;
  font-size: 0.875rem;
  color: #000b17;
  font-weight: 700;
}
.site-header__basket .basket-flyout__item-qty {
  font-weight: 400;
  font-size: 0.6875rem;
  color: #909090;
  background: rgba(0, 0, 0, 0.05);
  border-radius: 4px;
  padding: 1px 6px;
}
.site-header__basket .basket-flyout__empty,
.site-header__basket .basket-flyout__loading {
  font-weight: 400;
  font-size: 0.875rem;
  color: #909090;
  text-align: center;
  padding-top: calc(1.275rem + 0.3vw);
}
@media (min-width: 1200px) {
  .site-header__basket .basket-flyout__empty,
  .site-header__basket .basket-flyout__loading {
    padding-top: 1.5rem;
  }
}
.site-header__basket .basket-flyout__empty,
.site-header__basket .basket-flyout__loading {
  padding-bottom: calc(1.275rem + 0.3vw);
}
@media (min-width: 1200px) {
  .site-header__basket .basket-flyout__empty,
  .site-header__basket .basket-flyout__loading {
    padding-bottom: 1.5rem;
  }
}
.site-header__basket .basket-flyout__empty,
.site-header__basket .basket-flyout__loading {
  padding-left: 1.25rem;
  padding-right: 1.25rem;
}
.site-header__basket .basket-flyout__empty i,
.site-header__basket .basket-flyout__loading i {
  display: block;
  font-weight: 400;
  font-size: calc(1.3rem + 0.6vw);
}
@media (min-width: 1200px) {
  .site-header__basket .basket-flyout__empty i,
  .site-header__basket .basket-flyout__loading i {
    font-size: 1.75rem;
  }
}
.site-header__basket .basket-flyout__empty i,
.site-header__basket .basket-flyout__loading i {
  color: #f3f3f3;
  padding-bottom: 0.5rem;
}
.site-header__basket .basket-flyout__footer {
  padding-top: 1rem;
  padding-bottom: 1rem;
  padding-left: 1.25rem;
  padding-right: 1.25rem;
}
.site-header__basket .basket-flyout__total {
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-weight: 700;
  font-size: 1.125rem;
  color: #000b17;
  font-weight: 700;
  padding-bottom: 0.875rem;
}
.site-header__basket .basket-flyout__btn {
  display: block;
  width: 100%;
  background: #e40046;
  color: #fefcf3;
  font-weight: 700;
  font-size: 0.9375rem;
  border-radius: 8px;
  padding: 12px 24px;
  text-decoration: none;
  text-align: center;
  transition: background 0.2s ease;
}
.site-header__basket .basket-flyout__btn:hover {
  background: rgb(177, 0, 54.3421052632);
  color: #fefcf3;
  text-decoration: none;
}

.site-nav {
  display: flex;
  align-items: center;
  gap: 1.5rem;
  z-index: 2;
}
@media (max-width: 1199.98px) {
  .site-nav {
    display: none;
  }
}
.site-nav__link {
  display: flex;
  align-items: center;
  gap: 0.35rem;
  color: #fefcf3;
  text-decoration: none;
  font-weight: 400;
  font-size: calc(1.2625rem + 0.15vw);
}
@media (min-width: 1200px) {
  .site-nav__link {
    font-size: 1.375rem;
  }
}
.site-nav__link {
  font-weight: 600;
  letter-spacing: -0.5px;
  transition: opacity 0.2s ease;
}
.site-nav__link:hover {
  opacity: 0.8;
  text-decoration: none;
  color: #fefcf3;
}
.site-nav__link i {
  font-weight: 400;
  font-size: 0.8125rem;
  color: #07192c;
  font-weight: 800;
  margin-left: 5px;
  transition: transform 0.2s ease;
}
.site-nav__link:hover i {
  transform: translateY(1px);
}

.site-search {
  background: #000b17;
  display: grid;
  grid-template-rows: 0fr;
  transition: grid-template-rows 0.3s ease;
}
.site-search--open {
  grid-template-rows: 1fr;
}
.site-search__wrap {
  overflow: hidden;
}
.site-search .container {
  padding-top: 0rem;
  padding-bottom: 0rem;
  transition: padding 0.3s ease;
}
.site-search--open .container {
  padding-top: 1.25rem;
  padding-bottom: 1.25rem;
}
.site-search__inner {
  display: flex;
  align-items: center;
  gap: 0.75rem;
}
.site-search__input {
  flex: 1;
  background: transparent;
  border: none;
  border-bottom: 2px solid rgba(255, 255, 255, 0.3);
  color: #fefcf3;
  font-weight: 400;
  font-size: 1.125rem;
  padding-top: 0.625rem;
  padding-bottom: 0.625rem;
  outline: none;
  border-radius: 0;
}
.site-search__input::placeholder {
  color: rgba(255, 255, 255, 0.5);
}
.site-search__input:focus {
  border-bottom-color: #e40046;
}
.site-search__btn {
  background: none;
  border: none;
  color: #fefcf3;
  cursor: pointer;
  font-weight: 400;
  font-size: 1.125rem;
  padding-top: 0.625rem;
  padding-bottom: 0.625rem;
}
.site-search__btn:hover {
  color: #e40046;
}
.site-search__btn i {
  color: inherit;
}
.site-search__dropdown {
  display: none;
  margin-top: 1rem;
}
.site-search__dropdown.active {
  display: block;
}
.site-search__result {
  display: flex;
  align-items: flex-start;
  gap: 1rem;
  text-decoration: none;
  padding-top: 0.875rem;
  padding-bottom: 0.875rem;
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
  transition: background 0.15s ease;
}
.site-search__result:hover {
  background: rgba(255, 255, 255, 0.05);
  text-decoration: none;
}
.site-search__result:last-of-type {
  border-bottom: none;
}
@media (max-width: 767.98px) {
  .site-search__result {
    gap: 0.75rem;
  }
}
.site-search__result-image {
  width: 100px;
  height: 70px;
  object-fit: cover;
  border-radius: 4px;
  flex-shrink: 0;
}
@media (max-width: 767.98px) {
  .site-search__result-image {
    width: 72px;
    height: 50px;
  }
}
.site-search__result-placeholder {
  width: 100px;
  height: 70px;
  border-radius: 4px;
  flex-shrink: 0;
  background: rgba(255, 255, 255, 0.08);
  display: flex;
  align-items: center;
  justify-content: center;
}
.site-search__result-placeholder i {
  color: rgba(255, 255, 255, 0.3);
  font-weight: 400;
  font-size: 1.25rem;
}
@media (max-width: 767.98px) {
  .site-search__result-placeholder {
    width: 72px;
    height: 50px;
  }
}
.site-search__result-text {
  flex: 1;
  min-width: 0;
}
.site-search__result-text h4 {
  font-weight: 700;
  font-size: 1rem;
  color: #fefcf3;
  padding-bottom: 0.25rem;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.site-search__result-text p {
  font-weight: 400;
  font-size: 0.8125rem;
  color: #909090;
  padding-bottom: 0rem;
  line-height: 1.4;
}
.site-search__no-results {
  font-weight: 400;
  font-size: 0.9375rem;
  color: #909090;
  padding-top: 1rem;
  padding-bottom: 1rem;
  text-align: center;
}
.site-search__pills {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  padding-bottom: 0.75rem;
}
.site-search__pill {
  font-weight: 700;
  font-size: 0.6875rem;
  color: #fefcf3;
  border-radius: 50px;
  padding: 3px 10px;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}
.site-search__pill--accessibility {
  background: #0b4052;
}
.site-search__pill--date {
  background: #e40046;
}
.site-search__pill--genre {
  background: rgba(255, 255, 255, 0.15);
}
.site-search__pill--category {
  background: rgba(255, 255, 255, 0.15);
}
.site-search__pill--availability {
  background: #e40046;
}
.site-search__section-label {
  font-weight: 700;
  font-size: 0.6875rem;
  color: #909090;
  text-transform: uppercase;
  letter-spacing: 1px;
  padding-top: 0.75rem;
  padding-bottom: 0.375rem;
  border-top: 1px solid rgba(255, 255, 255, 0.1);
  margin-top: 0.25rem;
}
.site-search__section-label:first-child {
  border-top: none;
  margin-top: 0rem;
}
.site-search__fuzzy-notice {
  font-weight: 400;
  font-size: 0.8125rem;
  color: #909090;
  padding-bottom: 0.5rem;
  font-style: italic;
}
.site-search__popular {
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
}
.site-search__popular-label {
  display: block;
  font-weight: 700;
  font-size: 0.6875rem;
  color: #909090;
  text-transform: uppercase;
  letter-spacing: 1px;
  padding-bottom: 0.625rem;
}
.site-search__popular-items {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.site-search__popular-item {
  background: rgba(228, 0, 70, 0.8);
  color: #fefcf3;
  border: none;
  border-radius: 50px;
  padding: 6px 16px;
  font-weight: 400;
  font-size: 0.8125rem;
  cursor: pointer;
  transition: background 0.2s ease;
}
.site-search__popular-item:hover {
  background: #e40046;
}
.site-search__suggestions {
  padding-bottom: 0.75rem;
}
.site-search__category-links {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  padding-top: 0.375rem;
}
.site-search__category-link {
  display: inline-block;
  background: rgba(255, 255, 255, 0.1);
  color: #fefcf3;
  border-radius: 50px;
  padding: 5px 14px;
  font-weight: 400;
  font-size: 0.8125rem;
  text-decoration: none;
  transition: background 0.2s ease;
}
.site-search__category-link:hover {
  background: rgba(228, 0, 70, 0.8);
  color: #fefcf3;
  text-decoration: none;
}
.site-search__no-results {
  font-weight: 400;
  font-size: 0.9375rem;
  color: #909090;
  padding-top: 1rem;
  padding-bottom: 1rem;
  text-align: center;
}
.site-search__no-results i {
  display: block;
  font-weight: 400;
  font-size: calc(1.3rem + 0.6vw);
}
@media (min-width: 1200px) {
  .site-search__no-results i {
    font-size: 1.75rem;
  }
}
.site-search__no-results i {
  color: #f3f3f3;
  padding-bottom: 0.5rem;
}
.site-search__no-results p {
  padding-bottom: 0rem;
  color: #909090;
}
.site-search__no-results strong {
  color: #fefcf3;
}
.site-search__did-you-mean {
  font-weight: 400;
  font-size: 0.875rem;
  color: #909090;
  padding-top: 0.625rem;
  padding-bottom: 0.625rem;
  text-align: center;
}
.site-search__correction {
  background: none;
  border: none;
  color: #e40046;
  font-weight: 700;
  font-size: 0.875rem;
  font-weight: 700;
  cursor: pointer;
  text-decoration: underline;
  padding: 0;
}
.site-search__correction:hover {
  color: #f088b6;
}
.site-search__result--autocomplete .site-search__result-text h4 strong {
  color: #e40046;
}
.site-search__more {
  display: block;
  text-align: center;
  font-weight: 700;
  font-size: 0.875rem;
  color: #e40046;
  text-decoration: none;
  padding-top: 0.875rem;
  padding-bottom: 0.25rem;
  border-top: 1px solid rgba(255, 255, 255, 0.1);
  margin-top: 0.25rem;
  transition: color 0.2s ease;
}
.site-search__more:hover {
  color: #f088b6;
  text-decoration: none;
}

.search-slider {
  position: relative;
  min-width: 0;
  flex: 2;
}
.search-slider input {
  width: 100%;
}
.search-slider__overlay {
  position: absolute;
  top: 0;
  left: 16px;
  right: 36px;
  bottom: 0;
  overflow: hidden;
  pointer-events: none;
  transition: opacity 0.2s ease;
}
.search-slider__track {
  width: 100%;
  transition: none;
}
.search-slider__track--animating {
  transition: transform 0.45s cubic-bezier(0.4, 0, 0.2, 1);
}
.search-slider__item {
  font-weight: 400;
  font-size: 1rem;
  color: #fefcf3;
  font-weight: bold;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  display: block;
  text-align: left;
}
@media (max-width: 1199.98px) {
  .search-slider {
    flex: 1 1 100%;
  }
}

.search-slider--header {
  flex: 1;
}
.search-slider--header .search-slider__overlay {
  left: 0;
  right: 0;
}
.search-slider--header .search-slider__item {
  font-weight: 400;
  font-size: 1.125rem;
  color: rgba(255, 255, 255, 0.5);
}

.search-slider--filter .search-slider__overlay {
  left: 16px;
  right: 16px;
  display: flex;
  align-items: center;
}
.search-slider--filter .search-slider__item {
  font-weight: 400;
  font-size: 1.125rem;
  color: #909090;
  font-weight: normal;
}

body.mega-menu-active .site-header__logo {
  opacity: 0;
  pointer-events: none;
}

.site-nav__item {
  position: static;
}
.site-nav__item--has-dropdown .site-nav__link {
  cursor: pointer;
}
.site-nav__item--has-dropdown .site-nav__link i {
  transition: transform 0.2s ease;
}
.site-nav__item--has-dropdown.is-open .site-nav__link i {
  transform: rotate(180deg);
}

.nav-dropdown {
  position: absolute;
  top: 100%;
  left: 50%;
  width: 100vw;
  transform: translateX(-50%) translateY(-4px);
  background: #000b17;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.25s ease, visibility 0.25s ease, transform 0.25s ease;
  z-index: 999;
  padding-top: calc(1.325rem + 0.9vw);
}
@media (min-width: 1200px) {
  .nav-dropdown {
    padding-top: 2rem;
  }
}
.nav-dropdown {
  padding-bottom: calc(1.275rem + 0.3vw);
}
@media (min-width: 1200px) {
  .nav-dropdown {
    padding-bottom: 1.5rem;
  }
}
.site-nav__item--has-dropdown.is-open .nav-dropdown {
  opacity: 1;
  visibility: visible;
  transform: translateX(-50%) translateY(0);
}
.nav-dropdown__grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 2rem;
}
.nav-dropdown__grid--3col {
  grid-template-columns: repeat(3, 1fr);
}
.nav-dropdown__col {
  min-width: 0;
}
.nav-dropdown__heading {
  color: #fefcf3;
  font-weight: 700;
  font-size: calc(1.2875rem + 0.45vw);
}
@media (min-width: 1200px) {
  .nav-dropdown__heading {
    font-size: 1.625rem;
  }
}
.nav-dropdown__heading {
  padding-bottom: 0.75rem;
  font-weight: 600;
  margin-bottom: 0.75rem;
  border-bottom: 1px solid rgba(255, 255, 255, 0.15);
}
.nav-dropdown__list {
  list-style: none;
  padding-left: 0rem;
  margin-bottom: 0rem;
  font-weight: 400;
  font-size: 1.125rem;
}
.nav-dropdown__list li a {
  font-weight: 400;
  font-size: 1.125rem;
}
.nav-dropdown__link {
  display: block;
  color: #fefcf3;
  text-decoration: none;
  font-weight: 400;
  font-size: 0.875rem;
  padding-top: 0.3125rem;
  padding-bottom: 0.3125rem;
  opacity: 0.75;
  transition: opacity 0.15s ease;
}
.nav-dropdown__link:hover {
  opacity: 1;
  text-decoration: none;
  color: #fefcf3;
}
.nav-dropdown__footer {
  margin-top: 1.25rem;
  padding-top: 1rem;
  border-top: 1px solid rgba(255, 255, 255, 0.1);
}
.nav-dropdown__cards {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 1.5rem;
}
@media (max-width: 767.98px) {
  .nav-dropdown__cards {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (max-width: 575.98px) {
  .nav-dropdown__cards {
    grid-template-columns: 1fr;
  }
}
.nav-dropdown__card {
  position: relative;
  display: block;
  border-radius: 12px;
  overflow: hidden;
  aspect-ratio: 3/2;
  text-decoration: none;
}
.nav-dropdown__card::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  height: 50%;
  background: linear-gradient(to top, rgba(0, 0, 0, 0.7), transparent);
  z-index: 1;
  pointer-events: none;
}
.nav-dropdown__card:hover {
  text-decoration: none;
}
.nav-dropdown__card:hover .nav-dropdown__card-image {
  transform: scale(1.05);
}
.nav-dropdown__card-image {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.3s ease;
}
.nav-dropdown__card-title {
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: 2;
  color: #fefcf3;
  font-weight: 700;
  font-size: 1.125rem;
  padding-left: 1rem;
  padding-bottom: 0.875rem;
}
.nav-dropdown__view-all {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  color: #fefcf3;
  text-decoration: none;
  font-weight: 700;
  font-size: 0.875rem;
  transition: opacity 0.15s ease;
}
.nav-dropdown__view-all:hover {
  opacity: 0.8;
  text-decoration: none;
  color: #fefcf3;
}
.nav-dropdown__view-all i {
  font-weight: 400;
  font-size: 0.75rem;
  transition: transform 0.2s ease;
}
.nav-dropdown__view-all:hover i {
  transform: translateX(3px);
}
.nav-dropdown__tabbed {
  display: flex;
  gap: 2rem;
}
.nav-dropdown__sidebar {
  flex: 0 0 280px;
  border-right: 1px solid rgba(255, 255, 255, 0.1);
  padding-right: calc(1.275rem + 0.3vw);
}
@media (min-width: 1200px) {
  .nav-dropdown__sidebar {
    padding-right: 1.5rem;
  }
}
.nav-dropdown__sidebar {
  display: flex;
  flex-direction: column;
}
.nav-dropdown__sidebar-heading {
  color: #fefcf3;
  font-weight: 700;
  font-size: calc(1.325rem + 0.9vw);
}
@media (min-width: 1200px) {
  .nav-dropdown__sidebar-heading {
    font-size: 2rem;
  }
}
.nav-dropdown__sidebar-heading {
  margin-bottom: 1rem;
}
.nav-dropdown__tabs {
  list-style: none;
  padding-left: 0rem;
  margin-bottom: 0rem;
  flex: 1;
}
.nav-dropdown__tab {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  background: transparent;
  border: none;
  color: #fefcf3;
  font-weight: 400;
  font-size: 1.125rem;
  padding-top: 0.625rem;
  padding-bottom: 0.625rem;
  padding-left: 0.75rem;
  padding-right: 0.75rem;
  border-radius: 6px;
  cursor: pointer;
  transition: background 0.15s ease;
  text-align: left;
}
.nav-dropdown__tab i {
  font-weight: 400;
  font-size: 0.6875rem;
  opacity: 0;
  transition: opacity 0.15s ease;
}
.nav-dropdown__tab.is-active {
  background: #0b4052;
}
.nav-dropdown__tab.is-active i {
  opacity: 1;
}
.nav-dropdown__tab:hover:not(.is-active) {
  background: rgba(255, 255, 255, 0.08);
}
.nav-dropdown__panels {
  flex: 1;
  min-width: 0;
}
.nav-dropdown__panel {
  display: none;
}
.nav-dropdown__panel.is-active {
  display: block;
}
.nav-dropdown__panel-heading {
  color: #fefcf3;
  font-weight: 700;
  font-size: calc(1.325rem + 0.9vw);
}
@media (min-width: 1200px) {
  .nav-dropdown__panel-heading {
    font-size: 2rem;
  }
}
.nav-dropdown__panel-heading {
  padding-bottom: 0.75rem;
  margin-bottom: 1rem;
  border-bottom: 1px solid rgba(255, 255, 255, 0.15);
}
.nav-dropdown__panel-list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 0;
  list-style: none;
  padding-left: 0rem;
  margin-bottom: 0rem;
  font-weight: 400;
  font-size: 1.125rem;
}
.nav-dropdown__panel-list a {
  font-weight: 400;
  font-size: calc(1.275rem + 0.3vw);
}
@media (min-width: 1200px) {
  .nav-dropdown__panel-list a {
    font-size: 1.5rem;
  }
}
.nav-dropdown__panel-desc {
  color: rgba(255, 255, 255, 0.6);
  font-weight: 400;
  font-size: 0.875rem;
  margin-top: 0.75rem;
  margin-bottom: 0rem;
}
.nav-dropdown__link--featured {
  opacity: 1 !important;
  font-weight: 700;
  font-size: 1.125rem;
  color: #e40046;
}
.nav-dropdown__link--featured:hover {
  color: #e40046;
}
.nav-dropdown__view-all-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  margin-top: 1.25rem;
  padding-top: 0.75rem;
  padding-bottom: 0.75rem;
  background: #e40046;
  color: #fefcf3;
  font-weight: 700;
  font-size: 0.875rem;
  text-decoration: none;
  border-radius: 6px;
  transition: opacity 0.15s ease;
}
.nav-dropdown__view-all-btn:hover {
  opacity: 0.85;
  text-decoration: none;
  color: #fefcf3;
}
.nav-dropdown__view-all-btn i {
  font-weight: 400;
  font-size: 0.75rem;
  transition: transform 0.2s ease;
}
.nav-dropdown__view-all-btn:hover i {
  transform: translateX(3px);
}

@keyframes flourish-draw {
  0% {
    stroke-dashoffset: 1000;
    fill-opacity: 0;
  }
  60% {
    stroke-dashoffset: 0;
    fill-opacity: 0;
  }
  100% {
    stroke-dashoffset: 0;
    fill-opacity: 1;
  }
}
@keyframes flourish-drift {
  0%, 100% {
    transform: translate(0, 0);
  }
  50% {
    transform: translate(6px, -10px);
  }
}
.flourish-c {
  position: absolute;
  pointer-events: none;
  z-index: 1;
  width: 380px;
  height: auto;
  opacity: 0.4;
  animation: flourish-drift 8s ease-in-out infinite;
}
@media (max-width: 767.98px) {
  .flourish-c {
    width: 220px;
  }
}
.flourish-c__svg {
  width: 100%;
  height: auto;
  overflow: visible;
}
.flourish-c__outer {
  stroke-dasharray: 1000;
  stroke-dashoffset: 1000;
  fill-opacity: 0;
  animation: flourish-draw 2.5s ease-out forwards;
}
.flourish-c__inner {
  stroke-dasharray: 1000;
  stroke-dashoffset: 1000;
  fill-opacity: 0;
  animation: flourish-draw 2.5s 0.4s ease-out forwards;
}
.flourish-c--top-left {
  top: 0;
  left: -50px;
  transform: rotate(-15deg);
}
.flourish-c--bottom-right {
  bottom: 0;
  right: -40px;
  transform: rotate(165deg);
  animation-delay: -4s;
}

.gradient-effect {
  position: relative;
  overflow: hidden;
}
.gradient-effect::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 0;
  pointer-events: none;
  opacity: 0.85;
  background: radial-gradient(ellipse at 50% 0%, #e40046 0%, transparent 70%), radial-gradient(ellipse at 0% 100%, #906294 0%, transparent 70%), radial-gradient(ellipse at 100% 100%, #cba058 0%, transparent 70%);
  background-size: 300% 300%;
  animation: banner-gradient-shift 8s ease infinite;
}
.gradient-effect > .container,
.gradient-effect > .splide {
  position: relative;
  z-index: 2;
}
.gradient-effect > .flourish-c {
  z-index: 1;
}
.gradient-effect.background-black::before {
  background: radial-gradient(ellipse at 30% 0%, rgba(144, 98, 148, 0.5) 0%, transparent 60%), radial-gradient(ellipse at 80% 100%, rgba(24, 40, 102, 0.4) 0%, transparent 60%);
  opacity: 0.7;
}
.gradient-effect.background-white::before, .gradient-effect.background-grey::before {
  background: radial-gradient(ellipse at 50% 0%, rgba(240, 136, 182, 0.15) 0%, transparent 70%), radial-gradient(ellipse at 0% 100%, rgba(203, 160, 88, 0.1) 0%, transparent 70%);
  opacity: 1;
}
.gradient-effect.background-green::before {
  background: radial-gradient(ellipse at 40% 0%, rgba(68, 191, 231, 0.4) 0%, transparent 65%), radial-gradient(ellipse at 100% 100%, rgba(203, 160, 88, 0.35) 0%, transparent 60%);
  opacity: 0.75;
}
.gradient-effect.background-blue::before, .gradient-effect.background-blue_dark::before, .gradient-effect.background-dark_blue::before {
  background: radial-gradient(ellipse at 0% 0%, rgba(22, 44, 103, 0.9) 0%, transparent 65%), radial-gradient(ellipse at 0% 100%, rgba(42, 141, 188, 0.8) 0%, transparent 65%), radial-gradient(ellipse at 100% 0%, rgba(239, 64, 137, 0.7) 0%, transparent 65%), radial-gradient(ellipse at 100% 100%, rgba(201, 157, 101, 0.7) 0%, transparent 65%);
  opacity: 0.9;
}
.gradient-effect.background-orange::before {
  background: radial-gradient(ellipse at 50% 0%, rgba(228, 0, 70, 0.35) 0%, transparent 65%), radial-gradient(ellipse at 0% 100%, rgba(144, 98, 148, 0.3) 0%, transparent 60%);
  opacity: 0.7;
}
.gradient-effect.background-pink::before {
  background: radial-gradient(ellipse at 40% 0%, rgba(228, 0, 70, 0.35) 0%, transparent 65%), radial-gradient(ellipse at 100% 100%, rgba(144, 98, 148, 0.4) 0%, transparent 60%);
  opacity: 0.7;
}
.gradient-effect.background-light_blue::before, .gradient-effect.background-light-blue::before {
  background: radial-gradient(ellipse at 30% 0%, rgba(24, 40, 102, 0.35) 0%, transparent 60%), radial-gradient(ellipse at 90% 100%, rgba(144, 98, 148, 0.3) 0%, transparent 60%);
  opacity: 0.7;
}
.mega-menu {
  position: fixed;
  inset: 0;
  z-index: 1100;
  background: #e40046;
  visibility: hidden;
  pointer-events: none;
  overflow: hidden;
  overflow-y: auto;
}
@media (max-width: 991.98px) {
  .mega-menu {
    -webkit-overflow-scrolling: touch;
  }
}
.mega-menu {
  --circle-x: calc(100% - 40px);
  --circle-y: 28px;
  clip-path: circle(0% at var(--circle-x) var(--circle-y));
  transition: clip-path 0.65s cubic-bezier(0.4, 0, 0.2, 1), visibility 0s 0.65s;
}
.mega-menu--open {
  visibility: visible;
  pointer-events: auto;
  clip-path: circle(150% at var(--circle-x) var(--circle-y));
  transition: clip-path 0.65s cubic-bezier(0.4, 0, 0.2, 1), visibility 0s 0s;
}
.mega-menu::after {
  content: "";
  position: fixed;
  inset: 0;
  z-index: 2;
  pointer-events: none;
  opacity: 0.035;
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)'/%3E%3C/svg%3E");
  background-repeat: repeat;
  background-size: 256px 256px;
}
.mega-menu__content {
  position: relative;
  z-index: 3;
  display: flex;
  flex-direction: column;
  min-height: 100vh;
}
@media (max-width: 991.98px) {
  .mega-menu__content {
    min-height: auto;
  }
}
.mega-menu > .flourish-c {
  opacity: 0.15;
}
@media (max-width: 991.98px) {
  .mega-menu > .flourish-c {
    display: none;
  }
}
.mega-menu__header {
  padding-top: calc(1.275rem + 0.3vw);
}
@media (min-width: 1200px) {
  .mega-menu__header {
    padding-top: 1.5rem;
  }
}
.mega-menu__header {
  padding-bottom: 1rem;
}
.mega-menu__header-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  position: relative;
  z-index: 10;
}
.mega-menu__logo {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  padding-top: calc(1.40625rem + 1.875vw);
}
@media (min-width: 1200px) {
  .mega-menu__logo {
    padding-top: 2.8125rem;
  }
}
@media (max-width: 991.98px) {
  .mega-menu__logo {
    padding-top: 0.9375rem;
  }
}
.mega-menu__logo img {
  height: 70px;
  width: auto;
}
@media (max-width: 991.98px) {
  .mega-menu__logo img {
    height: 35px;
  }
}
.mega-menu__close {
  display: flex;
  align-items: center;
  gap: 10px;
  background: rgba(255, 255, 255, 0.15);
  border: 1px solid rgba(255, 255, 255, 0.2);
  border-radius: 50px;
  color: #fefcf3;
  cursor: pointer;
  padding-top: 0.625rem;
  padding-bottom: 0.625rem;
  padding-left: 1.25rem;
  padding-right: 1rem;
  margin-left: auto;
  margin-top: 45px;
  z-index: 10;
  transition: background 0.25s ease, opacity 0.25s ease;
}
@media (max-width: 991.98px) {
  .mega-menu__close {
    margin-top: 15px;
  }
}
.mega-menu__close span {
  font-weight: 700;
  font-size: 1rem;
}
.mega-menu__close i {
  font-weight: 400;
  font-size: 1.25rem;
}
.mega-menu__close:hover {
  background: rgba(255, 255, 255, 0.25);
}
.mega-menu__body {
  flex: 1;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding-top: calc(1.325rem + 0.9vw);
}
@media (min-width: 1200px) {
  .mega-menu__body {
    padding-top: 2rem;
  }
}
.mega-menu__body {
  padding-bottom: calc(1.425rem + 2.1vw);
}
@media (min-width: 1200px) {
  .mega-menu__body {
    padding-bottom: 3rem;
  }
}
@media (max-width: 991.98px) {
  .mega-menu__body {
    justify-content: flex-start;
    padding-top: calc(1.3125rem + 0.75vw);
  }
}
@media (max-width: 991.98px) and (min-width: 1200px) {
  .mega-menu__body {
    padding-top: 1.875rem;
  }
}
.mega-menu__columns {
  display: flex;
  align-items: center;
  gap: 48px;
  flex: 1;
}
@media (max-width: 991.98px) {
  .mega-menu__columns {
    flex-direction: column;
    align-items: stretch;
    gap: 0;
  }
}
.mega-menu__left {
  flex: 0 0 55%;
  padding-right: calc(1.375rem + 1.5vw);
}
@media (min-width: 1200px) {
  .mega-menu__left {
    padding-right: 2.5rem;
  }
}
.mega-menu__left {
  display: flex;
  flex-direction: column;
  justify-content: center;
}
@media (max-width: 1199.98px) {
  .mega-menu__left {
    flex: 0 0 50%;
  }
}
@media (max-width: 991.98px) {
  .mega-menu__left {
    flex: none;
    width: 100%;
    padding-right: 0rem;
  }
}
.mega-menu__right {
  flex: 1;
  padding-left: calc(1.2625rem + 0.15vw);
}
@media (min-width: 1200px) {
  .mega-menu__right {
    padding-left: 1.375rem;
  }
}
.mega-menu__right {
  padding-right: calc(1.325rem + 0.9vw);
}
@media (min-width: 1200px) {
  .mega-menu__right {
    padding-right: 2rem;
  }
}
.mega-menu__right {
  padding-top: calc(1.2625rem + 0.15vw);
}
@media (min-width: 1200px) {
  .mega-menu__right {
    padding-top: 1.375rem;
  }
}
.mega-menu__right {
  padding-bottom: calc(1.2625rem + 0.15vw);
}
@media (min-width: 1200px) {
  .mega-menu__right {
    padding-bottom: 1.375rem;
  }
}
.mega-menu__right {
  display: flex;
  flex-direction: column;
  justify-content: center;
  position: relative;
  background: rgba(0, 11, 23, 0.1);
  border-radius: 16px;
}
@media (max-width: 991.98px) {
  .mega-menu__right {
    flex: none;
    width: 100%;
    padding-left: 0rem;
    padding-right: 0rem;
    padding-top: 0rem;
    padding-bottom: 0rem;
    margin-top: -2px !important;
    margin-top: 0rem;
    background: none;
    border-radius: 0;
  }
  .mega-menu__right::before {
    left: 24px;
    right: 24px;
    top: 0;
    bottom: auto;
    width: auto;
    height: 1px;
    background: #fefcf3;
  }
}
.mega-menu__right-group {
  margin-bottom: 0rem;
  padding-top: 0.625rem;
  padding-bottom: 0.625rem;
  border-radius: 10px;
  transition: opacity 0.4s ease, transform 0.4s ease, background 0.25s ease;
  opacity: 0;
  transform: translateY(16px);
}
.mega-menu__right-group:hover {
  background: rgba(255, 255, 255, 0.14);
}
@media (max-width: 991.98px) {
  .mega-menu__right-group {
    border-radius: 0;
    border-top: 1px solid rgba(255, 255, 255, 0.4);
  }
  .mega-menu__right-group:last-child {
    border-bottom: 1px solid #fefcf3;
  }
  .mega-menu__right-group:hover {
    background: none;
  }
}
.mega-menu--open .mega-menu__right-group {
  opacity: 1;
  transform: translateY(0);
}
.mega-menu--open .mega-menu__right-group:nth-child(1) {
  transition-delay: 0.26s;
}
.mega-menu--open .mega-menu__right-group:nth-child(2) {
  transition-delay: 0.32s;
}
.mega-menu--open .mega-menu__right-group:nth-child(3) {
  transition-delay: 0.38s;
}
.mega-menu--open .mega-menu__right-group:nth-child(4) {
  transition-delay: 0.44s;
}
.mega-menu--open .mega-menu__right-group:nth-child(5) {
  transition-delay: 0.5s;
}
.mega-menu--open .mega-menu__right-group:nth-child(6) {
  transition-delay: 0.56s;
}
.mega-menu--open .mega-menu__right-group:nth-child(7) {
  transition-delay: 0.62s;
}
.mega-menu--open .mega-menu__right-group:nth-child(8) {
  transition-delay: 0.68s;
}
.mega-menu--open .mega-menu__right-group:nth-child(9) {
  transition-delay: 0.74s;
}
.mega-menu--open .mega-menu__right-group:nth-child(10) {
  transition-delay: 0.8s;
}
.mega-menu--open .mega-menu__right-group:nth-child(11) {
  transition-delay: 0.86s;
}
.mega-menu--open .mega-menu__right-group:nth-child(12) {
  transition-delay: 0.92s;
}
.mega-menu__right-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.mega-menu__right-link {
  display: inline-flex;
  align-items: center;
  color: #fefcf3;
  text-decoration: none;
  padding-left: 15px;
  font-weight: 700;
  font-size: calc(1.3625rem + 1.35vw);
}
@media (min-width: 1200px) {
  .mega-menu__right-link {
    font-size: 2.375rem;
  }
}
.mega-menu__right-link {
  line-height: 1.1;
  padding-top: 0.625rem;
  padding-bottom: 0.625rem;
  transition: opacity 0.25s ease;
  letter-spacing: -1px;
}
@media (max-width: 1199.98px) {
  .mega-menu__right-link {
    font-weight: 700;
    font-size: calc(1.3125rem + 0.75vw);
  }
}
@media (max-width: 1199.98px) and (min-width: 1200px) {
  .mega-menu__right-link {
    font-size: 1.875rem;
  }
}
@media (max-width: 991.98px) {
  .mega-menu__right-link {
    font-weight: 700;
    font-size: calc(1.2875rem + 0.45vw);
    padding-top: 0.3125rem;
    padding-bottom: 0.3125rem;
  }
}
@media (max-width: 991.98px) and (min-width: 1200px) {
  .mega-menu__right-link {
    font-size: 1.625rem;
  }
}
.mega-menu__right-link:hover {
  opacity: 0.6;
  text-decoration: none;
  color: #fefcf3;
}
.mega-menu__right-icon {
  font-weight: 400;
  font-size: 1.125rem;
  opacity: 0.6;
  margin-right: 0.625rem;
  transition: opacity 0.25s ease;
}
.mega-menu__right-group:hover .mega-menu__right-icon {
  opacity: 1;
}
.mega-menu__right-toggle {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  flex-shrink: 0;
  background: none;
  border: none;
  color: #fefcf3;
  cursor: pointer;
  transition: opacity 0.25s ease;
}
.mega-menu__right-toggle i {
  font-weight: 400;
  font-size: 1.25rem;
  transition: transform 0.3s ease;
  margin-right: 10px;
}
.is-open .mega-menu__right-toggle i {
  transform: rotate(180deg);
}
.mega-menu__right-toggle:hover {
  opacity: 0.6;
}
.mega-menu__right-sub {
  list-style: none;
  padding: 0;
  margin: 0;
}
.mega-menu__right-child {
  display: inline-block;
  color: #fefcf3;
  text-decoration: none;
  font-weight: 400;
  font-size: 1.125rem;
  padding-top: 0.1875rem;
  padding-bottom: 0rem;
  padding-left: 15px;
  transition: opacity 0.25s ease;
}
.mega-menu__right-child li {
  display: inline-block;
}
.mega-menu__right-child:hover {
  opacity: 0.6;
  text-decoration: none;
}
.mega-menu__right-sub--collapsible {
  display: none;
  padding-top: 0.25rem;
}
.is-open .mega-menu__right-sub--collapsible {
  display: inline-block;
}
.mega-menu__right-sub--collapsible li {
  display: inline-block;
}
.mega-menu__accordion {
  border-top: 1px solid rgba(255, 255, 255, 0.4);
  position: relative;
  padding-left: 1rem;
  opacity: 0;
  transform: translateY(24px);
  transition: opacity 0.5s ease, transform 0.5s ease;
}
.mega-menu__accordion::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  width: 5px;
  background: #fefcf3;
  transform: scaleY(0);
  transform-origin: top;
  transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}
.mega-menu__accordion.is-open::before {
  transform: scaleY(1);
}
.mega-menu__accordion:last-child {
  border-bottom: 1px solid rgba(255, 255, 255, 0.4);
}
.mega-menu--open .mega-menu__accordion {
  opacity: 1;
  transform: translateY(0);
}
.mega-menu--open .mega-menu__accordion:nth-child(1) {
  transition-delay: 0.16s;
}
.mega-menu--open .mega-menu__accordion:nth-child(2) {
  transition-delay: 0.22s;
}
.mega-menu--open .mega-menu__accordion:nth-child(3) {
  transition-delay: 0.28s;
}
.mega-menu--open .mega-menu__accordion:nth-child(4) {
  transition-delay: 0.34s;
}
.mega-menu--open .mega-menu__accordion:nth-child(5) {
  transition-delay: 0.4s;
}
.mega-menu--open .mega-menu__accordion:nth-child(6) {
  transition-delay: 0.46s;
}
.mega-menu--open .mega-menu__accordion:nth-child(7) {
  transition-delay: 0.52s;
}
.mega-menu--open .mega-menu__accordion:nth-child(8) {
  transition-delay: 0.58s;
}
.mega-menu--open .mega-menu__accordion:nth-child(9) {
  transition-delay: 0.64s;
}
.mega-menu--open .mega-menu__accordion:nth-child(10) {
  transition-delay: 0.7s;
}
.mega-menu--open .mega-menu__accordion:nth-child(11) {
  transition-delay: 0.76s;
}
.mega-menu--open .mega-menu__accordion:nth-child(12) {
  transition-delay: 0.82s;
}
.mega-menu__accordion-header {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.mega-menu__accordion-link {
  display: flex;
  align-items: center;
  flex: 1;
  background: none;
  border: none;
  padding-left: 0;
  padding-right: 0;
  color: #fefcf3;
  text-decoration: none;
  cursor: pointer;
  text-align: left;
  padding-top: 1.25rem;
  padding-bottom: 1.25rem;
  transition: opacity 0.25s ease;
}
@media (max-width: 991.98px) {
  .mega-menu__accordion-link {
    padding-top: 0.875rem;
    padding-bottom: 0.875rem;
  }
}
.mega-menu__accordion-link:hover, .mega-menu__accordion-link:focus, .mega-menu__accordion-link:active {
  opacity: 0.6;
  text-decoration: none;
  color: #fefcf3;
  background: transparent;
  outline: none;
}
.mega-menu__accordion-trigger {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 48px;
  height: 48px;
  background: none;
  border: none;
  color: #fefcf3;
  cursor: pointer;
  transition: opacity 0.25s ease;
}
.mega-menu__accordion-trigger:hover, .mega-menu__accordion-trigger:focus {
  opacity: 0.6;
  outline: none;
}
.mega-menu__accordion-title {
  font-weight: 700;
  font-size: calc(1.4125rem + 1.95vw);
}
@media (min-width: 1200px) {
  .mega-menu__accordion-title {
    font-size: 2.875rem;
  }
}
.mega-menu__accordion-title {
  line-height: 1.1;
  letter-spacing: -1px;
  position: relative;
  display: inline-block;
}
.mega-menu__accordion-title::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -2px;
  width: 100%;
  height: 3px;
  background: #cba058;
  transform: scaleX(0);
  transform-origin: left;
  transition: transform 0.3s ease;
}
@media (min-width: 992px) {
  .mega-menu__accordion-link:hover .mega-menu__accordion-title::after {
    transform: scaleX(1);
  }
}
@media (max-width: 1199.98px) {
  .mega-menu__accordion-title {
    font-weight: 700;
    font-size: calc(1.3125rem + 0.75vw);
  }
}
@media (max-width: 1199.98px) and (min-width: 1200px) {
  .mega-menu__accordion-title {
    font-size: 1.875rem;
  }
}
@media (max-width: 991.98px) {
  .mega-menu__accordion-title {
    font-weight: 700;
    font-size: calc(1.2875rem + 0.45vw);
  }
}
@media (max-width: 991.98px) and (min-width: 1200px) {
  .mega-menu__accordion-title {
    font-size: 1.625rem;
  }
}
@media (max-width: 991.98px) {
  .mega-menu__accordion-title::after {
    display: none;
  }
}
.mega-menu__accordion-chevron {
  font-weight: 400;
  font-size: 1.125rem;
  transition: transform 0.3s ease;
}
.is-open .mega-menu__accordion-chevron {
  transform: rotate(180deg);
}
.mega-menu__accordion-arrow {
  font-weight: 400;
  font-size: 1.125rem;
  margin-left: 1.25rem;
  transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1), color 0.25s ease;
}
.mega-menu__accordion-link:hover .mega-menu__accordion-arrow {
  transform: translateX(6px);
}
.mega-menu__accordion-panel {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.45s cubic-bezier(0.4, 0, 0.2, 1);
}
.is-open > .mega-menu__accordion-panel {
  max-height: 500px;
}
.mega-menu__accordion-inner {
  padding-bottom: calc(1.275rem + 0.3vw);
}
@media (min-width: 1200px) {
  .mega-menu__accordion-inner {
    padding-bottom: 1.5rem;
  }
}
@media (max-width: 991.98px) {
  .mega-menu__accordion-inner {
    padding-bottom: 1rem;
  }
}
.mega-menu__accordion-view-all {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: #fefcf3;
  text-decoration: none;
  font-weight: 700;
  font-size: 0.9375rem;
  letter-spacing: 0.6px;
  margin-bottom: 1.25rem;
  background: #000b17;
  padding: 10px 15px;
  border-radius: 20px;
  transition: opacity 0.2s ease;
  z-index: 999;
  position: relative;
}
.mega-menu__accordion-view-all:hover {
  opacity: 0.6;
  text-decoration: none;
  color: #fefcf3;
}
.mega-menu__accordion-view-all i {
  font-weight: 400;
  font-size: 0.625rem;
  transition: transform 0.2s ease;
}
.mega-menu__accordion-view-all:hover i {
  transform: translateX(4px);
}
.mega-menu__accordion-list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 0;
  column-gap: 2rem;
}
.mega-menu__accordion-list li {
  flex: 0 0 auto;
}
.mega-menu__accordion-child {
  display: inline-block;
  color: #fefcf3;
  text-decoration: none;
  font-weight: 400;
  font-size: 1.125rem;
  padding-top: 0.1875rem;
  padding-bottom: 0.1875rem;
  transition: opacity 0.25s ease;
  font-weight: bold;
  line-height: 1;
}
@media (max-width: 991.98px) {
  .mega-menu__accordion-child {
    font-weight: 400;
    font-size: 1rem;
  }
}
.mega-menu__accordion-child:hover {
  opacity: 0.6;
  text-decoration: none;
}
.mega-menu__accordion-sections {
  display: flex;
  flex-wrap: wrap;
  gap: 1.5rem 3rem;
}
@media (max-width: 767.98px) {
  .mega-menu__accordion-sections {
    flex-direction: column;
    gap: 1rem;
  }
}
.mega-menu__accordion-section {
  flex: 1;
}
.mega-menu__accordion-section.mega-menu__accordion-section--two-col {
  flex: 2;
}
.mega-menu__accordion-label {
  display: block;
  color: rgb(255, 255, 255);
  font-weight: 700;
  font-size: 0.875rem;
  margin-bottom: 0.625rem;
  font-weight: bold;
  text-transform: uppercase;
  letter-spacing: 1.5px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.2);
  padding-bottom: 5px;
}
.mega-menu__accordion-section .mega-menu__accordion-list {
  flex-direction: column;
  column-gap: 0;
}
.mega-menu__accordion-section--two-col .mega-menu__accordion-list {
  display: grid;
  grid-template-columns: 1fr 1fr;
  column-gap: 1.5rem;
  gap: 0 1.5rem;
}
@media (max-width: 991.98px) {
  .mega-menu__accordion-section--two-col .mega-menu__accordion-list {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    gap: 0;
    column-gap: 0;
  }
  .mega-menu__accordion-section--two-col .mega-menu__accordion-list li {
    flex: 0 0 auto;
  }
  .mega-menu__accordion-section--two-col .mega-menu__accordion-list li:not(:last-child)::after {
    content: "·";
    color: rgba(255, 255, 255, 0.3);
    padding-left: 0.5rem;
    padding-right: 0.5rem;
  }
}
.mega-menu__footer {
  border-top: 1px solid #fefcf3;
  padding-top: 1.25rem;
  padding-bottom: calc(1.275rem + 0.3vw);
}
@media (min-width: 1200px) {
  .mega-menu__footer {
    padding-bottom: 1.5rem;
  }
}
.mega-menu__footer {
  opacity: 0;
  transform: translateY(16px);
  transition: opacity 0.4s ease, transform 0.4s ease;
}
.mega-menu--open .mega-menu__footer {
  opacity: 1;
  transform: translateY(0);
  transition-delay: 0.6s;
}
.mega-menu__footer-inner {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 2.5rem;
  flex-wrap: wrap;
}
@media (max-width: 767.98px) {
  .mega-menu__footer-inner {
    gap: 1rem;
  }
}
.mega-menu__footer-link {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: #fefcf3;
  text-decoration: none;
  font-weight: 400;
  font-size: 1.125rem;
  letter-spacing: 0.5px;
  transition: color 0.25s ease;
}
@media (max-width: 767.98px) {
  .mega-menu__footer-link {
    font-weight: 400;
    font-size: 1rem;
  }
}
.mega-menu__footer-link:hover {
  color: #fefcf3;
  text-decoration: none;
}
.mega-menu__footer-link i {
  font-weight: 400;
  font-size: 0.8125rem;
  opacity: 0.5;
  transition: opacity 0.25s ease;
}
.mega-menu__footer-link:hover i {
  opacity: 1;
}
.mega-menu__footer-link--cta {
  color: #fefcf3;
  border: 1px solid rgba(255, 255, 255, 0.3);
  border-radius: 50px;
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
  padding-left: 1.25rem;
  padding-right: 1.25rem;
  transition: border-color 0.3s ease, opacity 0.3s ease;
}
.mega-menu__footer-link--cta i {
  opacity: 1;
}
.mega-menu__footer-link--cta:hover {
  border-color: rgba(255, 255, 255, 0.6);
  opacity: 0.8;
}
.mega-menu__footer-cta {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: #fefcf3;
  color: #e40046;
  text-decoration: none;
  font-weight: 700;
  font-size: 1.125rem;
  border-radius: 50px;
  padding-top: 0.625rem;
  padding-bottom: 0.625rem;
  padding-left: calc(1.275rem + 0.3vw);
}
@media (min-width: 1200px) {
  .mega-menu__footer-cta {
    padding-left: 1.5rem;
  }
}
.mega-menu__footer-cta {
  padding-right: calc(1.275rem + 0.3vw);
}
@media (min-width: 1200px) {
  .mega-menu__footer-cta {
    padding-right: 1.5rem;
  }
}
.mega-menu__footer-cta {
  transition: background 0.25s ease, color 0.25s ease;
}
@media (max-width: 767.98px) {
  .mega-menu__footer-cta {
    font-weight: 700;
    font-size: 1rem;
  }
}
.mega-menu__footer-cta i {
  font-weight: 400;
  font-size: 0.875rem;
}
.mega-menu__footer-cta:hover {
  background: #000b17;
  color: #fefcf3;
  text-decoration: none;
}

body.mega-menu-active {
  overflow: hidden;
}

.site-footer__newsletter {
  background: #000b17;
  padding-top: calc(1.4375rem + 2.25vw);
}
@media (min-width: 1200px) {
  .site-footer__newsletter {
    padding-top: 3.125rem;
  }
}
.site-footer__newsletter {
  padding-bottom: calc(1.4375rem + 2.25vw);
}
@media (min-width: 1200px) {
  .site-footer__newsletter {
    padding-bottom: 3.125rem;
  }
}
.site-footer__newsletter * {
  color: #fefcf3;
}
.site-footer {
  position: relative;
}
.site-footer:after {
  background-image: url("/assets/img/footer-c.png");
  width: 50%;
  height: 100%;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  background-position: right center;
  background-repeat: no-repeat;
  opacity: 0.2;
  background-size: contain;
  display: block;
  pointer-events: none;
  content: "";
}
@media (max-width: 767.98px) {
  .site-footer:after {
    top: initial;
    bottom: 0;
    height: 400px;
  }
}
.site-footer__newsletter-header {
  text-align: center;
  margin-bottom: calc(1.3125rem + 0.75vw);
}
@media (min-width: 1200px) {
  .site-footer__newsletter-header {
    margin-bottom: 1.875rem;
  }
}
.site-footer__newsletter-heading {
  font-weight: 700;
  font-size: calc(1.5rem + 3vw);
}
@media (min-width: 1200px) {
  .site-footer__newsletter-heading {
    font-size: 3.75rem;
  }
}
.site-footer__newsletter-heading {
  padding-bottom: 0.625rem;
  color: #fefcf3;
}
@media (max-width: 767.98px) {
  .site-footer__newsletter-heading {
    font-weight: 700;
    font-size: calc(1.3rem + 0.6vw);
  }
}
@media (max-width: 767.98px) and (min-width: 1200px) {
  .site-footer__newsletter-heading {
    font-size: 1.75rem;
  }
}
.site-footer__newsletter-text {
  font-weight: 400;
  font-size: 1.125rem;
  padding-bottom: 0rem;
  color: #fefcf3;
  margin-left: auto;
  margin-right: auto;
  line-height: 1.6;
}
.site-footer__newsletter-form {
  display: flex;
  gap: 1rem;
  margin-left: auto;
  margin-right: auto;
}
.site-footer__newsletter-form input {
  flex: 1;
  padding-top: 0.875rem;
  padding-bottom: 0.875rem;
  margin-bottom: 0;
  padding-left: 1.25rem;
  padding-right: 1.25rem;
  border: 1px solid rgba(255, 255, 255, 0.3);
  border-radius: 30px;
  background: transparent;
  color: #000b17;
  background: white;
  font-weight: 400;
  font-size: 1rem;
}
.site-footer__newsletter-form input::placeholder {
  color: #000b17;
}
.site-footer__newsletter-form input:focus {
  outline: none;
  border-color: #e40046;
}
@media (max-width: 767.98px) {
  .site-footer__newsletter-form {
    flex-direction: column;
  }
}
.site-footer__newsletter-btn {
  border-radius: 30px;
  padding-left: calc(1.4375rem + 2.25vw);
}
@media (min-width: 1200px) {
  .site-footer__newsletter-btn {
    padding-left: 3.125rem;
  }
}
.site-footer__newsletter-btn {
  padding-right: calc(1.4375rem + 2.25vw);
}
@media (min-width: 1200px) {
  .site-footer__newsletter-btn {
    padding-right: 3.125rem;
  }
}
.site-footer__newsletter-btn {
  white-space: nowrap;
  flex-shrink: 0;
  font-weight: 400;
  font-size: 1.125rem;
  font-weight: bold;
}
.site-footer__main {
  background: #000b17;
  padding-top: 0rem;
  padding-bottom: calc(1.4375rem + 2.25vw);
}
@media (min-width: 1200px) {
  .site-footer__main {
    padding-bottom: 3.125rem;
  }
}
.site-footer__main {
  color: #fefcf3;
}
.site-footer__main * {
  color: #fefcf3;
}
.site-footer__divider {
  height: 2px;
  background: #e40046;
  margin-bottom: calc(1.375rem + 1.5vw);
}
@media (min-width: 1200px) {
  .site-footer__divider {
    margin-bottom: 2.5rem;
  }
}
.site-footer__logo {
  display: inline-block;
  position: relative;
  margin-bottom: calc(1.375rem + 1.5vw);
}
@media (min-width: 1200px) {
  .site-footer__logo {
    margin-bottom: 2.5rem;
  }
}
.site-footer__logo img {
  max-width: 100%;
  height: auto;
  position: relative;
}
@media (max-width: 767.98px) {
  .site-footer__logo img {
    max-width: 200px;
  }
}
.site-footer__column {
  margin-bottom: 0rem;
}
@media (max-width: 767.98px) {
  .site-footer__column {
    text-align: center;
  }
}
.site-footer__column nav {
  display: flex;
  flex-direction: column;
}
.site-footer__column nav a,
.site-footer__column p {
  font-weight: 400;
  font-size: 1.1875rem;
  padding-top: 0.25rem;
  padding-bottom: 0.5rem;
  text-decoration: none;
  color: #fefcf3;
  transition: color 0.2s ease-in;
  font-weight: 500;
}
.site-footer__column nav a:hover,
.site-footer__column p:hover {
  color: #fefcf3;
}
.site-footer__column-title {
  font-weight: 700;
  font-size: calc(1.325rem + 0.9vw);
}
@media (min-width: 1200px) {
  .site-footer__column-title {
    font-size: 2rem;
  }
}
.site-footer__column-title {
  padding-bottom: 0.9375rem;
  font-weight: bold;
  color: #fefcf3;
}
.site-footer__social {
  display: flex;
  gap: 0.75rem;
  margin-top: 0.625rem;
}
@media (max-width: 767.98px) {
  .site-footer__social {
    margin-bottom: 20px;
    justify-content: center;
  }
}
.site-footer__social a {
  display: flex;
  margin-right: 10px;
  align-items: center;
  justify-content: center;
  color: #fefcf3;
  text-decoration: none;
  transition: all 0.2s ease-in;
}
.site-footer__social a:hover {
  background: rgba(255, 255, 255, 0.1);
  border-color: #fefcf3;
}
.site-footer__social a i {
  font-weight: 400;
  font-size: calc(1.275rem + 0.3vw);
}
@media (min-width: 1200px) {
  .site-footer__social a i {
    font-size: 1.5rem;
  }
}
.site-footer__partners {
  display: flex;
  align-items: center;
  gap: 1.5rem;
  margin-top: 1.25rem;
}
@media (max-width: 767.98px) {
  .site-footer__partners {
    justify-content: center;
  }
}
.site-footer__partners img {
  height: 50px;
  width: auto;
  object-fit: contain;
}
.site-footer__legal {
  background: #07192c;
  padding-top: 1.125rem;
  color: #909090;
  padding-bottom: 1.125rem;
  position: relative;
  z-index: 100;
}
.site-footer__legal .container {
  display: flex;
  align-items: center;
  justify-content: center;
}
@media (max-width: 767.98px) {
  .site-footer__legal .container {
    flex-wrap: wrap;
    justify-content: center;
  }
}
.site-footer__legal nav {
  display: flex;
  gap: 2rem;
}
@media (max-width: 767.98px) {
  .site-footer__legal nav {
    flex-wrap: wrap;
    justify-content: center;
    gap: 1rem;
  }
}
.site-footer__legal nav a {
  font-weight: 400;
  font-size: 1rem;
  color: #909090;
  text-decoration: none;
  font-weight: 300;
  transition: color 0.2s ease-in;
}
.site-footer__legal nav a:hover {
  color: #fefcf3;
}

.admin-toolbar {
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 9999;
  background-color: #000b17;
  font-weight: 400;
  font-size: 0.8125rem;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
}
.admin-toolbar__inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  max-width: 100%;
  padding: 0 15px;
  height: 40px;
}
.admin-toolbar__list {
  display: flex;
  align-items: center;
  list-style: none;
  margin: 0;
  padding: 0;
  gap: 4px;
}
.admin-toolbar__item {
  margin: 0;
  padding: 0;
}
.admin-toolbar__link {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  color: #fefcf3;
  text-decoration: none;
  padding: 6px 10px;
  -moz-border-radius: 3px;
  -webkit-border-radius: 3px;
  border-radius: 3px;
  -moz-transition: background-color 0.15s ease;
  -o-transition: background-color 0.15s ease;
  -webkit-transition: background-color 0.15s ease;
  transition: background-color 0.15s ease;
  white-space: nowrap;
}
.admin-toolbar__link:hover {
  background-color: rgba(255, 255, 255, 0.12);
  color: #fefcf3;
  text-decoration: none;
}
.admin-toolbar__link--confirm {
  color: #e40046;
}
.admin-toolbar__link--confirm:hover {
  color: #e40046;
}
.admin-toolbar__link i {
  font-weight: 400;
  font-size: 0.875rem;
}
.admin-toolbar__user {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  color: #909090;
  white-space: nowrap;
}
.admin-toolbar__user i {
  font-weight: 400;
  font-size: 0.75rem;
}
@media (max-width: 767.98px) {
  .admin-toolbar__link span {
    display: none;
  }
  .admin-toolbar__user span {
    display: none;
  }
}

.has-admin-toolbar {
  padding-bottom: 40px;
}

label {
  margin-bottom: 12px;
  display: inline-block;
  width: 100%;
  font-weight: 700;
  font-size: 1.1875rem;
  font-weight: 600;
}

form input, form select, form textarea, .form input, .form select, .form textarea {
  font-weight: 700;
  font-size: 1rem;
  line-height: 2.5rem;
  height: 3rem;
  margin-bottom: 30px;
  padding-right: 30px;
  padding-top: 0;
  padding-bottom: 0;
}
form input option, form select option, form textarea option, .form input option, .form select option, .form textarea option {
  padding: 15px;
}
form input[type=text], form input[type=email], form input[type=date], form select, form textarea, .form input[type=text], .form input[type=email], .form input[type=date], .form select, .form textarea {
  width: 100%;
  text-indent: 10px;
  box-shadow: rgba(0, 0, 0, 0.2) 0px 1px 5px;
  border: 1px solid #ccc;
}
form textarea, .form textarea {
  width: 100%;
  padding: 10px 20px;
  min-height: 180px;
  text-indent: 0;
}

input[type=checkbox] {
  float: left;
  display: inline-block;
  clear: none;
}

input[type=checkbox] + label, input[type=checkbox] + input + label {
  float: left;
  width: auto !important;
  margin-top: 8px;
  width: 90% !important;
  font-weight: normal;
  margin-left: 2%;
  margin-bottom: 10px !important;
  padding-bottom: 20px;
  font-size: 16px;
  line-height: 1.5;
}

.umbraco-forms-caption {
  font-size: 2em;
  margin-bottom: 20px;
  text-align: center;
}

.umbraco-forms-page {
  padding: 3em 0;
  max-width: 1000px;
  margin: 0 auto;
}
.umbraco-forms-page h2 {
  font-size: 1.5em;
}
.umbraco-forms-page .umbraco-forms-field-wrapper {
  width: 100%;
  flex: initial;
  position: relative;
  margin-bottom: 0px;
}
.umbraco-forms-page label {
  width: 100%;
}
.umbraco-forms-page .field-validation-error {
  background: #e40046;
  position: absolute;
  padding: 10px;
  font-size: 12px;
  bottom: -1px;
  width: 100%;
  right: 0;
  color: white;
}

.umbracoForms-Indicator {
  color: red;
}

.umbraco-forms-navigation .col-sm-10 {
  width: 100%;
  margin: 0;
  flex: initial;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.umbraco-forms-navigation .col-sm-10 .btn {
  text-align: center;
  padding: 12px 30px !important;
}

.modal-box {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  visibility: hidden;
  opacity: 0;
  z-index: -100;
  transition: all 0.2s ease-in;
  color: #fff;
  background: #e40046;
  display: flex;
  align-items: center;
  justify-content: center;
}
.modal-box__close {
  position: fixed;
  top: 20px;
  right: 30px;
  border: 0;
  background: transparent;
  font-size: 2.5em;
  cursor: pointer;
  color: #fff;
}
.modal-box__content {
  width: 100%;
}
.modal-box.active {
  z-index: 9999999;
  visibility: visible;
  opacity: 1;
}
.modal-box.active .modal-box__content.active {
  z-index: 9999999;
  visibility: visible;
  opacity: 1;
  top: 48%;
}

#modal-search form {
  text-align: center;
}
#modal-search form input {
  min-width: 250px;
}

#modal-search {
  align-items: center;
  justify-content: center;
}
#modal-search form {
  z-index: 99;
  position: relative;
}
#modal-search h2 {
  text-transform: none;
  text-align: left;
  width: 100%;
  padding-bottom: 0;
  margin-bottom: 0;
}
#modal-search p {
  text-align: left;
}
#modal-search .modal-box__close {
  z-index: 999999 !important;
}
#modal-search form {
  width: 100%;
}
#modal-search button {
  background: #000b17;
}
#modal-search input {
  margin: 0;
}
#modal-search .row {
  height: 100%;
}
@media (max-width: 991.98px) {
  #modal-search .row {
    height: auto;
  }
}
#modal-search .modal-box__content {
  display: flex;
  max-height: 100%;
  height: 100%;
}
#modal-search .left-navigation, #modal-search .right-navigation {
  padding-top: 100px;
  padding-left: 0%;
  position: relative;
  z-index: 10;
  padding-right: 0%;
  display: flex;
  align-items: start;
  justify-content: center;
  flex-direction: column;
}
#modal-search .left-navigation a, #modal-search .right-navigation a {
  color: white;
}
#modal-search .left-navigation {
  height: 100%;
  position: relative;
  z-index: 100;
  padding-right: 40px;
  background: rgba(0, 0, 0, 0.1);
}
@media (max-width: 767.98px) {
  #modal-search .left-navigation {
    background: transparent;
  }
}
#modal-search .left-navigation {
  height: 100%;
  position: relative;
}
#modal-search .left-navigation:before {
  content: "";
  width: 100%;
  right: 100%;
  height: 100%;
  top: 0;
  position: absolute;
  z-index: 99;
  background: rgba(0, 0, 0, 0.1);
}
@media (max-width: 767.98px) {
  #modal-search .left-navigation:before {
    display: none;
  }
}
@media (max-width: 991.98px) {
  #modal-search .left-navigation {
    padding-top: 150px;
  }
}
#modal-search .left-navigation ul {
  width: 100%;
}
#modal-search .left-navigation ul:first-of-type li {
  font-weight: 400;
  font-size: calc(1.46875rem + 2.625vw);
}
@media (min-width: 1200px) {
  #modal-search .left-navigation ul:first-of-type li {
    font-size: 3.4375rem;
  }
}
#modal-search .left-navigation ul:first-of-type li {
  padding-bottom: 5px;
  font-weight: bold;
  letter-spacing: -1px;
}
#modal-search .left-navigation ul:first-of-type li a {
  color: white;
  text-decoration: none;
}
#modal-search .left-navigation ul:last-of-type {
  display: flex;
  margin-top: 2em;
  justify-content: space-between;
  align-items: center;
}
#modal-search .left-navigation ul:last-of-type li {
  width: 80%;
  display: inline-block;
}
#modal-search .left-navigation ul:last-of-type li a {
  text-decoration: none;
  width: 100%;
  color: white;
  border: 1px solid white;
  font-weight: bold;
  display: inline-block;
  padding: 10px 10px;
  text-align: center;
}
#modal-search .right-navigation {
  height: 100%;
  padding-left: 5%;
  justify-content: center;
  position: static;
}
@media (max-width: 991.98px) {
  #modal-search .right-navigation {
    padding-top: 5px;
    background: transparent;
    padding-left: 0;
  }
}
#modal-search .right-navigation:after {
  position: absolute;
  height: 100%;
  width: 100%;
  right: 0;
  content: "";
  top: 0;
  width: 100%;
  background-repeat: no-repeat;
  background-position: right center;
  background-size: auto 100%;
  z-index: 10;
}
#modal-search .right-navigation ul {
  columns: 2;
  width: 100%;
  position: relative;
  z-index: 99999;
}
#modal-search .right-navigation ul li {
  font-weight: 400;
  font-size: calc(1.34375rem + 1.125vw);
}
@media (min-width: 1200px) {
  #modal-search .right-navigation ul li {
    font-size: 2.1875rem;
  }
}
#modal-search .right-navigation ul li {
  font-weight: bold;
}
#modal-search .right-navigation ul li a {
  text-decoration: none;
  display: inline-block;
  padding: 12px 20px;
}

#modal-performances {
  max-width: 320px;
  background: #182866;
  max-height: 100%;
  padding-bottom: 50px;
  text-align: right;
  right: 0;
  left: initial;
}
#modal-performances .modal-box__content, #modal-performances .container, #modal-performances .row, #modal-performances .col-lg-12 {
  max-height: 100%;
  height: 100%;
}
#modal-performances h2, #modal-performances h3 {
  text-align: left;
  padding-top: 20px;
}
#modal-performances .button {
  width: 100%;
  margin-bottom: 2px;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
#modal-performances .performances {
  max-height: 100%;
  overflow: scroll;
  padding-bottom: 50px;
  overflow-x: hidden;
}

.video-pause-btn {
  position: absolute;
  bottom: 12px;
  right: 12px;
  z-index: 10;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  border: none;
  border-radius: 50%;
  background: rgba(0, 0, 0, 0.5);
  color: #fefcf3;
  font-weight: 400;
  font-size: 0.875rem;
  cursor: pointer;
  opacity: 0.6;
  transition: opacity 0.2s ease, background 0.2s ease;
  backdrop-filter: blur(4px);
}
.video-pause-btn:hover, .video-pause-btn:focus-visible {
  opacity: 1;
  background: rgba(0, 0, 0, 0.7);
}
.video-pause-btn:focus-visible {
  outline: 2px solid #fefcf3;
  outline-offset: 2px;
}
.video-pause-btn--mega-menu {
  z-index: 2;
}

.umb-block-grid__layout-item[data-content-element-type-alias=bannerCarouselBlock] {
  margin-bottom: 70px;
}

@keyframes banner-gradient-shift {
  0% {
    background-position: 0% 0%;
    background-size: 300% 300%;
  }
  25% {
    background-position: 100% 50%;
    background-size: 350% 350%;
  }
  50% {
    background-position: 50% 100%;
    background-size: 300% 300%;
  }
  75% {
    background-position: 100% 0%;
    background-size: 350% 350%;
  }
  100% {
    background-position: 0% 0%;
    background-size: 300% 300%;
  }
}
.banner-carousel {
  position: relative;
  background: radial-gradient(ellipse at 50% 0%, #e40046 0%, transparent 70%), radial-gradient(ellipse at 0% 100%, #906294 0%, transparent 70%), radial-gradient(ellipse at 100% 100%, #cba058 0%, transparent 70%), #e40046;
  background-size: 300% 300%;
  animation: banner-gradient-shift 8s ease infinite;
  padding-top: calc(1.75rem + 6vw);
}
@media (min-width: 1200px) {
  .banner-carousel {
    padding-top: 6.25rem;
  }
}
.banner-carousel {
  padding-bottom: 1.25rem;
}
@media (max-width: 991.98px) {
  .banner-carousel {
    margin-top: 40px;
  }
}
.banner-carousel__frame {
  position: relative;
  z-index: 2;
  overflow: hidden;
  margin-bottom: -100px;
  box-shadow: 0px 0px 20px rgba(0, 0, 0, 0.54);
  border-radius: 16px;
  overflow: hidden;
}
.banner-carousel__splide .splide__arrow {
  background: rgba(0, 0, 0, 0.5);
  opacity: 0.8;
  filter: alpha(opacity=80);
}
.banner-carousel__splide .splide__arrow:hover {
  opacity: 1;
  filter: alpha(opacity=100);
}
.banner-carousel__splide .splide__arrow svg {
  fill: #fefcf3;
}
.banner-carousel__splide .splide__pagination {
  padding-bottom: 1rem;
}
.banner-carousel__splide .splide__pagination .splide__pagination__page {
  background: rgba(255, 255, 255, 0.4);
}
.banner-carousel__splide .splide__pagination .splide__pagination__page.is-active {
  background: #fefcf3;
}
.banner-carousel__splide .splide__track,
.banner-carousel__splide .splide__list,
.banner-carousel__splide .splide__slide {
  width: 100%;
}
.banner-carousel__slide {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  width: 100%;
  aspect-ratio: 16/7.8;
}
@media (max-width: 767.98px) {
  .banner-carousel__slide {
    aspect-ratio: 16/10;
  }
}
.banner-carousel__image {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.banner-carousel__video {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  border: none;
  z-index: 1;
  pointer-events: none;
}
.banner-carousel__slide--video .banner-carousel__image--poster {
  z-index: 0;
  transition: opacity 0.6s ease;
}
.banner-carousel__slide--video.is-video-playing .banner-carousel__image--poster {
  opacity: 0;
}
.banner-carousel__content {
  position: relative;
  z-index: 2;
  width: 100%;
  text-align: center;
  padding-top: calc(1.375rem + 1.5vw);
}
@media (min-width: 1200px) {
  .banner-carousel__content {
    padding-top: 2.5rem;
  }
}
.banner-carousel__content {
  padding-bottom: calc(1.375rem + 1.5vw);
}
@media (min-width: 1200px) {
  .banner-carousel__content {
    padding-bottom: 2.5rem;
  }
}
.banner-carousel__content {
  padding-left: calc(1.375rem + 1.5vw);
}
@media (min-width: 1200px) {
  .banner-carousel__content {
    padding-left: 2.5rem;
  }
}
.banner-carousel__content {
  padding-right: calc(1.375rem + 1.5vw);
}
@media (min-width: 1200px) {
  .banner-carousel__content {
    padding-right: 2.5rem;
  }
}
@media (max-width: 767.98px) {
  .banner-carousel__content {
    padding-left: calc(1.275rem + 0.3vw);
    padding-right: calc(1.275rem + 0.3vw);
  }
}
@media (max-width: 767.98px) and (min-width: 1200px) {
  .banner-carousel__content {
    padding-left: 1.5rem;
  }
}
@media (max-width: 767.98px) and (min-width: 1200px) {
  .banner-carousel__content {
    padding-right: 1.5rem;
  }
}
.banner-carousel__title {
  color: #fefcf3;
  font-weight: 700;
  font-size: calc(1.425rem + 2.1vw);
}
@media (min-width: 1200px) {
  .banner-carousel__title {
    font-size: 3rem;
  }
}
.banner-carousel__title {
  padding-bottom: 0.625rem;
}
@media (max-width: 767.98px) {
  .banner-carousel__title {
    font-weight: 700;
    font-size: calc(1.325rem + 0.9vw);
  }
}
@media (max-width: 767.98px) and (min-width: 1200px) {
  .banner-carousel__title {
    font-size: 2rem;
  }
}
.banner-carousel__subtitle,
.banner-carousel p {
  color: #fefcf3;
  font-weight: 400;
  font-size: 1.125rem;
  padding-bottom: 1.25rem;
  opacity: 0.9;
}
.banner-carousel__slide--event .banner-carousel__image {
  width: 70%;
  left: 0;
}
@media (max-width: 767.98px) {
  .banner-carousel__slide--event {
    flex-direction: column;
  }
  .banner-carousel__slide--event .banner-carousel__image {
    width: 100%;
  }
}
.banner-carousel__event-panel {
  position: absolute;
  top: 0;
  right: 0;
  width: 30%;
  height: 100%;
  z-index: 2;
  display: flex;
  align-items: center;
  background: -webkit-linear-gradient(top, #e40046 0%, #cba058 100%);
  background: -moz-linear-gradient(top, #e40046 0%, #cba058 100%);
  background: -o-linear-gradient(top, #e40046 0%, #cba058 100%);
  background: linear-gradient(to bottom, #e40046 0%, #cba058 100%);
}
@media (max-width: 767.98px) {
  .banner-carousel__event-panel {
    position: relative;
    width: 100%;
    height: auto;
  }
}
.banner-carousel__event-info {
  padding-top: calc(1.3125rem + 0.75vw);
}
@media (min-width: 1200px) {
  .banner-carousel__event-info {
    padding-top: 1.875rem;
  }
}
.banner-carousel__event-info {
  padding-bottom: calc(1.3125rem + 0.75vw);
}
@media (min-width: 1200px) {
  .banner-carousel__event-info {
    padding-bottom: 1.875rem;
  }
}
.banner-carousel__event-info {
  padding-left: 24px;
  padding-right: 24px;
  color: #fefcf3;
}
.banner-carousel__event-title {
  color: #fefcf3;
  font-weight: 700;
  font-size: calc(1.3rem + 0.6vw);
}
@media (min-width: 1200px) {
  .banner-carousel__event-title {
    font-size: 1.75rem;
  }
}
.banner-carousel__event-title {
  margin-bottom: 0.75rem;
}
@media (max-width: 991.98px) {
  .banner-carousel__event-title {
    font-weight: 700;
    font-size: calc(1.2625rem + 0.15vw);
  }
}
@media (max-width: 991.98px) and (min-width: 1200px) {
  .banner-carousel__event-title {
    font-size: 1.375rem;
  }
}
.banner-carousel__event-date, .banner-carousel__event-venue {
  color: #fefcf3;
  font-weight: 400;
  font-size: 0.9375rem;
  margin-bottom: 0.5rem;
  opacity: 0.9;
}
.banner-carousel__event-date i, .banner-carousel__event-venue i {
  margin-right: 0.375rem;
  width: 16px;
  text-align: center;
}
.banner-carousel__event-desc {
  color: rgba(254, 252, 243, 0.85);
  font-weight: 400;
  font-size: 0.875rem;
  margin-top: 0.75rem;
  margin-bottom: 1.25rem;
  line-height: 1.5;
}
.banner-carousel__event-desc p {
  font-weight: 400;
  font-size: 0.875rem;
  padding-bottom: 0;
}

.hero-block {
  position: relative;
  background: radial-gradient(ellipse at 50% 0%, #e40046 0%, transparent 70%), radial-gradient(ellipse at 0% 100%, #906294 0%, transparent 70%), radial-gradient(ellipse at 100% 100%, #cba058 0%, transparent 70%), #e40046;
  background-size: 300% 300%;
  animation: banner-gradient-shift 8s ease infinite;
  padding-top: calc(1.75rem + 6vw);
}
@media (min-width: 1200px) {
  .hero-block {
    padding-top: 6.25rem;
  }
}
.hero-block {
  padding-bottom: 1.25rem;
  margin-bottom: 50px;
}
@media (max-width: 991.98px) {
  .hero-block {
    padding-top: calc(1.625rem + 4.5vw);
  }
}
@media (max-width: 991.98px) and (min-width: 1200px) {
  .hero-block {
    padding-top: 5rem;
  }
}
.hero-block__frame {
  position: relative;
  z-index: 2;
  border-radius: 16px;
  overflow: hidden;
  box-shadow: 0px 0px 25px rgba(0, 0, 0, 0.1);
  min-height: 440px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: -70px;
  border-radius: 30px;
  z-index: 20;
}
@media (max-width: 767.98px) {
  .hero-block__frame {
    min-height: 300px;
  }
}
.hero-block__overlay {
  position: absolute;
  inset: 0;
  z-index: 1;
  opacity: 0.55;
  pointer-events: none;
}
.hero-block__frame--has-overlay .hero-block__content {
  z-index: 2;
  position: relative;
}
.hero-block__image {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.hero-block__content {
  position: relative;
  z-index: 2;
  width: 100%;
  text-align: center;
  padding-top: calc(1.375rem + 1.5vw);
}
@media (min-width: 1200px) {
  .hero-block__content {
    padding-top: 2.5rem;
  }
}
.hero-block__content {
  padding-bottom: calc(1.375rem + 1.5vw);
}
@media (min-width: 1200px) {
  .hero-block__content {
    padding-bottom: 2.5rem;
  }
}
.hero-block__content {
  padding-left: calc(1.375rem + 1.5vw);
}
@media (min-width: 1200px) {
  .hero-block__content {
    padding-left: 2.5rem;
  }
}
.hero-block__content {
  padding-right: calc(1.375rem + 1.5vw);
}
@media (min-width: 1200px) {
  .hero-block__content {
    padding-right: 2.5rem;
  }
}
@media (max-width: 767.98px) {
  .hero-block__content {
    padding-left: calc(1.275rem + 0.3vw);
    padding-right: calc(1.275rem + 0.3vw);
  }
}
@media (max-width: 767.98px) and (min-width: 1200px) {
  .hero-block__content {
    padding-left: 1.5rem;
  }
}
@media (max-width: 767.98px) and (min-width: 1200px) {
  .hero-block__content {
    padding-right: 1.5rem;
  }
}
.hero-block__title {
  color: #fefcf3;
  padding-bottom: 0rem;
}
.hero-block__subtitle {
  color: #fefcf3;
  opacity: 0.9;
}
.hero-block__cta {
  margin-top: 1rem;
}

.section-heading--center {
  text-align: center;
}
.section-heading--left {
  text-align: left;
}
.section-heading__title {
  padding-bottom: 0.625rem;
}
@media (max-width: 767.98px) {
  .section-heading__title {
    gap: 1rem;
  }
}
.section-heading--center .section-heading__subtitle {
  margin-left: auto;
  margin-right: auto;
}
.section-heading__description {
  font-weight: 400;
  font-size: 1rem;
  margin-top: 0.75rem;
}
.section-heading--center .section-heading__description {
  margin-left: auto;
  margin-right: auto;
}
.section-heading__description p {
  margin-bottom: 0.5rem;
}
.section-heading__description p:last-child {
  margin-bottom: 0;
}

.card-grid__heading--stylised, .stylised-header {
  position: relative;
  display: flex;
  width: 100%;
  align-items: center;
  justify-content: center;
  gap: 1rem;
}
.card-grid__heading--stylised::before, .card-grid__heading--stylised::after, .stylised-header::before, .stylised-header::after {
  content: "";
  flex: 1;
  height: 2px;
  background: #909090;
  max-width: 100%;
}
.card-grid__heading--stylised::after, .stylised-header::after {
  content: "";
  flex: 1;
  height: 2px;
  background: #909090;
}

.category-icons {
  text-align: center;
}
.category-icons--gradient {
  background: -webkit-linear-gradient(left, #e40046 0%, #cba058 100%);
  background: -moz-linear-gradient(left, #e40046 0%, #cba058 100%);
  background: -o-linear-gradient(left, #e40046 0%, #cba058 100%);
  background: linear-gradient(to right, #e40046 0%, #cba058 100%);
}
.category-icons--gradient .category-icons__label {
  color: #fefcf3;
}
.category-icons--gradient .category-icons__heading {
  color: #fefcf3;
}
.category-icons__heading {
  font-weight: 700;
  font-size: calc(1.325rem + 0.9vw);
}
@media (min-width: 1200px) {
  .category-icons__heading {
    font-size: 2rem;
  }
}
.category-icons__heading {
  padding-bottom: 1.25rem;
}
@media (max-width: 767.98px) {
  .category-icons__heading {
    font-weight: 700;
    font-size: calc(1.275rem + 0.3vw);
  }
}
@media (max-width: 767.98px) and (min-width: 1200px) {
  .category-icons__heading {
    font-size: 1.5rem;
  }
}
.category-icons__item {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-decoration: none;
  color: #000b17;
  padding-top: 0.9375rem;
  padding-bottom: 0.9375rem;
  transition: all 0.2s ease-in;
}
.category-icons__item:hover {
  text-decoration: none;
  transform: translateY(-5px);
  -webkit-transform: translateY(-5px);
  -moz-transform: translateY(-5px);
  -ms-transform: translateY(-5px);
}
.category-icons__icon {
  width: 120px;
  height: 120px;
  border-radius: 50%;
  background: #f3f3f3;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  margin-bottom: 0.75rem;
  border: 4px solid #f088b6;
}
.category-icons__icon img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 50%;
}
@media (max-width: 767.98px) {
  .category-icons__icon {
    width: 80px;
    height: 80px;
  }
}
.category-icons__label {
  font-weight: 700;
  font-size: 0.875rem;
  font-weight: bold;
  display: block;
}

.content-block {
  position: relative;
  overflow: hidden;
}
.content-block--reverse .row {
  flex-direction: row-reverse;
}
.content-block > .flourish-c.flourish-c--bottom-right, .content-block__contained > .flourish-c.flourish-c--bottom-right {
  width: 450px;
  opacity: 0.15;
  top: 50%;
  left: 50%;
  right: auto;
  bottom: auto;
  margin-left: -225px;
  margin-top: -225px;
}
@media (max-width: 767.98px) {
  .content-block > .flourish-c.flourish-c--bottom-right, .content-block__contained > .flourish-c.flourish-c--bottom-right {
    width: 280px;
  }
}
.content-block--has-featured > .flourish-c.flourish-c--bottom-right, .content-block--has-featured .content-block__contained > .flourish-c.flourish-c--bottom-right {
  left: auto;
  right: 0;
  top: 50%;
  transform: translateY(-50%) rotate(0deg);
}
.content-block--reverse.content-block--has-featured > .flourish-c.flourish-c--bottom-right, .content-block--reverse.content-block--has-featured .content-block__contained > .flourish-c.flourish-c--bottom-right {
  right: auto;
  left: 0;
  transform: translateY(-50%) rotate(0deg);
}
.content-block:not(.content-block--has-featured) {
  display: flex;
  align-items: center;
  justify-content: center;
}
.content-block:not(.content-block--has-featured) .container > .row {
  justify-content: center;
}
.content-block:not(.content-block--has-featured) .content-block__text {
  text-align: center;
  max-width: 800px;
  margin-left: auto;
  margin-right: auto;
}
.content-block:not(.content-block--has-featured) .container:not(.content-block__contained) {
  padding-top: calc(2.375rem + 13.5vw);
}
@media (min-width: 1200px) {
  .content-block:not(.content-block--has-featured) .container:not(.content-block__contained) {
    padding-top: 12.5rem;
  }
}
.content-block:not(.content-block--has-featured) .container:not(.content-block__contained) {
  padding-bottom: calc(2.375rem + 13.5vw);
}
@media (min-width: 1200px) {
  .content-block:not(.content-block--has-featured) .container:not(.content-block__contained) {
    padding-bottom: 12.5rem;
  }
}
@media (max-width: 767.98px) {
  .content-block:not(.content-block--has-featured) .container:not(.content-block__contained) {
    padding-top: calc(1.875rem + 7.5vw);
    padding-bottom: calc(1.875rem + 7.5vw);
  }
}
@media (max-width: 767.98px) and (min-width: 1200px) {
  .content-block:not(.content-block--has-featured) .container:not(.content-block__contained) {
    padding-top: 7.5rem;
  }
}
@media (max-width: 767.98px) and (min-width: 1200px) {
  .content-block:not(.content-block--has-featured) .container:not(.content-block__contained) {
    padding-bottom: 7.5rem;
  }
}
.content-block:not(.content-block--has-featured) .content-block__contained {
  padding-top: calc(2.375rem + 13.5vw);
}
@media (min-width: 1200px) {
  .content-block:not(.content-block--has-featured) .content-block__contained {
    padding-top: 12.5rem;
  }
}
.content-block:not(.content-block--has-featured) .content-block__contained {
  padding-bottom: calc(2.375rem + 13.5vw);
}
@media (min-width: 1200px) {
  .content-block:not(.content-block--has-featured) .content-block__contained {
    padding-bottom: 12.5rem;
  }
}
@media (max-width: 767.98px) {
  .content-block:not(.content-block--has-featured) .content-block__contained {
    padding-top: calc(1.875rem + 7.5vw);
    padding-bottom: calc(1.875rem + 7.5vw);
  }
}
@media (max-width: 767.98px) and (min-width: 1200px) {
  .content-block:not(.content-block--has-featured) .content-block__contained {
    padding-top: 7.5rem;
  }
}
@media (max-width: 767.98px) and (min-width: 1200px) {
  .content-block:not(.content-block--has-featured) .content-block__contained {
    padding-bottom: 7.5rem;
  }
}
.content-block--has-accordion:not(.content-block--has-featured) .container:not(.content-block__contained) {
  padding-top: calc(1.5rem + 3vw);
}
@media (min-width: 1200px) {
  .content-block--has-accordion:not(.content-block--has-featured) .container:not(.content-block__contained) {
    padding-top: 3.75rem;
  }
}
.content-block--has-accordion:not(.content-block--has-featured) .container:not(.content-block__contained) {
  padding-bottom: calc(1.5rem + 3vw);
}
@media (min-width: 1200px) {
  .content-block--has-accordion:not(.content-block--has-featured) .container:not(.content-block__contained) {
    padding-bottom: 3.75rem;
  }
}
.content-block--has-accordion:not(.content-block--has-featured) .content-block__contained {
  padding-top: calc(1.5rem + 3vw);
}
@media (min-width: 1200px) {
  .content-block--has-accordion:not(.content-block--has-featured) .content-block__contained {
    padding-top: 3.75rem;
  }
}
.content-block--has-accordion:not(.content-block--has-featured) .content-block__contained {
  padding-bottom: calc(1.5rem + 3vw);
}
@media (min-width: 1200px) {
  .content-block--has-accordion:not(.content-block--has-featured) .content-block__contained {
    padding-bottom: 3.75rem;
  }
}
.content-block--has-accordion:not(.content-block--has-featured) .content-block__text {
  text-align: center;
}
.content-block__contained {
  border-radius: 25px;
  padding-top: calc(1.375rem + 1.5vw);
}
@media (min-width: 1200px) {
  .content-block__contained {
    padding-top: 2.5rem;
  }
}
.content-block__contained {
  padding-bottom: calc(1.375rem + 1.5vw);
}
@media (min-width: 1200px) {
  .content-block__contained {
    padding-bottom: 2.5rem;
  }
}
.content-block__contained > .row {
  position: relative;
  z-index: 2;
}
.content-block__heading {
  padding-bottom: 1.25rem;
}
.content-block__heading.stylised-header {
  margin-bottom: calc(1.3125rem + 0.75vw);
}
@media (min-width: 1200px) {
  .content-block__heading.stylised-header {
    margin-bottom: 1.875rem;
  }
}
.content-block__heading.stylised-header {
  padding-bottom: 0;
  max-width: 100%;
  text-align: center;
}
@media (max-width: 767.98px) {
  .content-block__heading.stylised-header {
    white-space: normal;
    max-width: 60%;
  }
}
.content-block__body {
  padding-bottom: 1.25rem;
}
.content-block__cta {
  margin-top: 0.9375rem;
}
.content-block--has-bg-media {
  overflow: hidden;
}
.content-block__bg-media {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 0;
  opacity: 0.4;
  pointer-events: none;
}
.content-block__bg-media img,
.content-block__bg-media video {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.gradient-effect .content-block__bg-media img,
.gradient-effect .content-block__bg-media video {
  filter: blur(4px);
  transform: scale(1.05);
}
.content-block__image {
  position: relative;
  padding-top: 1.25rem;
}
.content-block__image img,
.content-block__image video {
  width: 100%;
  height: auto;
  object-fit: cover;
  border-radius: 20px;
}
@media (max-width: 991.98px) {
  .content-block__image {
    margin-top: calc(1.3125rem + 0.75vw);
  }
}
@media (max-width: 991.98px) and (min-width: 1200px) {
  .content-block__image {
    margin-top: 1.875rem;
  }
}
.content-block__accordions {
  margin-top: calc(1.3125rem + 0.75vw);
}
@media (min-width: 1200px) {
  .content-block__accordions {
    margin-top: 1.875rem;
  }
}
.content-block__accordions .accordian {
  border-bottom: 1px solid #f3f3f3;
}

.media-text {
  overflow: hidden;
}
.media-text img {
  vertical-align: top;
  max-height: 60vh;
  border-radius: 20px;
}
.media-text h2 strong {
  display: block;
}
.media-text .accordians {
  margin-bottom: 2em;
  background: #efefef;
  border-radius: 10px;
  overflow: hidden;
}
.media-text .accordians .accordian-top-header {
  background: #000b17;
  color: white;
  padding: 10px 20px;
  margin: 0;
}
.media-text .accordian {
  padding: 10px;
}
.media-text .accordian:last-of-type {
  border-bottom: 0;
}
.media-text .accordian .accordian__content {
  margin-top: 10px;
  padding-top: 10px;
  padding: 25px 10px 10px 25px;
}
.media-text .accordian .accordian__content p {
  font-weight: 400;
  font-size: 0.875rem;
  padding-bottom: 10px;
}
.media-text .accordian h5 {
  padding: 8px 20px;
  font-weight: 400;
  font-size: 1.125rem;
}
.media-text .accordian i {
  font-size: 1.2em;
}
@media (max-width: 767.98px) {
  .media-text {
    padding-top: 0;
    padding-bottom: 40px;
  }
  .media-text .media-text__image {
    order: 1 !important;
  }
  .media-text .media-text__image img {
    margin-left: -15px;
    width: calc(100% + 30px);
    max-width: calc(100% + 30px);
    margin-bottom: 40px;
    border-bottom: 1px solid white;
  }
  .media-text .media-text__content {
    order: 2 !important;
  }
}

.card {
  margin-bottom: 1.25rem;
  text-align: center;
}
.card a {
  text-decoration: none;
  display: inline-block;
  width: 100%;
  height: 100%;
  color: #000b17;
}
.card__content {
  padding: 0.9375rem;
}
.card__image img {
  display: block;
  height: 300px;
  width: 100%;
  object-fit: cover;
  border-radius: 20px;
}

.card__access-badges {
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
  padding-bottom: 0.5rem;
}

.card__access-badge {
  display: inline-block;
  font-weight: 700;
  font-size: 0.6875rem;
  color: #000b17;
  background: #f3f3f3;
  border-radius: 20px;
  padding: 2px 10px;
  text-transform: uppercase;
  letter-spacing: 0.3px;
}

.card--event-detail:before,
.card--news:before {
  background-color: #1d1d1d;
  bottom: 0;
  content: "";
  display: block;
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
  opacity: 0;
  border-radius: 20px;
  transition: all 0.2s cubic-bezier(0.55, 0.085, 0.68, 0.53), background-color 0.3s cubic-bezier(0.55, 0.085, 0.68, 0.53);
}
.card--event-detail:hover:before,
.card--news:hover:before {
  background-color: #e40046;
  opacity: 1;
  color: white;
  bottom: -15px;
  left: -15px;
  right: -15px;
  top: -15px;
  transition-timing-function: cubic-bezier(0.23, 1, 0.32, 1);
}
.card--event-detail img,
.card--news img {
  transition: all 0.28s cubic-bezier(0.55, 0.085, 0.68, 0.53);
}
.card--event-detail,
.card--news {
  position: relative;
}
.card--event-detail .card__image,
.card--news .card__image {
  border-radius: 25px;
  overflow: initial !important;
}
.card--event-detail .image-overflow,
.card--news .image-overflow {
  overflow: hidden;
  border-radius: 25px;
}
.card--event-detail:hover,
.card--news:hover {
  color: white !important;
}
.card--event-detail:hover .card__image,
.card--news:hover .card__image {
  overflow: hidden;
}
.card--event-detail:hover .card__image img,
.card--news:hover .card__image img {
  transform: scale(1.05);
}
.card--event-detail:hover .card__image,
.card--event-detail:hover .card__content,
.card--news:hover .card__image,
.card--news:hover .card__content {
  z-index: 10;
  position: relative;
}
.card--event-detail:hover .card__category,
.card--news:hover .card__category {
  background: #000b17;
}
.card--event-detail:hover .card__tags span,
.card--news:hover .card__tags span {
  background: #000b17;
}
.card--event-detail:hover *,
.card--news:hover * {
  color: white !important;
}

.card--event-detail {
  border-radius: 12px;
  transition: transform 0.25s ease, box-shadow 0.25s ease;
  text-align: left;
  height: 100%;
  transition-timing-function: cubic-bezier(0.23, 1, 0.32, 1);
  position: relative;
}
.card--event-detail:before {
  background-color: #1d1d1d;
  bottom: 0;
  content: "";
  display: block;
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
  opacity: 0;
  border-radius: 20px;
  transition: all 0.2s cubic-bezier(0.55, 0.085, 0.68, 0.53), background-color 0.3s cubic-bezier(0.55, 0.085, 0.68, 0.53);
}
.card--event-detail:hover:before {
  background-color: #e40046;
  opacity: 1;
  color: white;
  bottom: -15px;
  left: -15px;
  right: -15px;
  top: -15px;
  transition-timing-function: cubic-bezier(0.23, 1, 0.32, 1);
}
.card--event-detail:hover {
  color: white !important;
}
.card--event-detail:hover .card__category {
  background: #000b17;
}
.card--event-detail:hover .card__tags span {
  background: #000b17;
}
.card--event-detail:hover .card__book-btn {
  background: #fefcf3 !important;
  color: #000b17 !important;
}
.card--event-detail:hover .card__book-btn i {
  color: #000b17 !important;
}
.card--event-detail:hover * {
  color: white !important;
}
.card--event-detail .card__link {
  text-decoration: none;
  color: inherit;
  height: 100%;
  display: flex;
  flex-direction: column;
}
.card--event-detail .card__image,
.card--event-detail .card__content {
  z-index: 10;
}
.card--event-detail .card__image {
  position: relative;
}
@media (min-width: 992px) {
  .card--event-detail .card__image {
    aspect-ratio: 16/7.5;
  }
}
.card--event-detail .card__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 20px;
}
.card--event-detail .card__image--placeholder {
  display: flex;
  align-items: center;
  justify-content: center;
  color: #909090;
  font-weight: 400;
  font-size: 0.875rem;
}
.card--event-detail .card__badge--sold-out {
  position: absolute;
  top: 12px;
  right: 12px;
  font-weight: 700;
  font-size: 0.6875rem;
  color: white;
  background: #e40046;
  border-radius: 50px;
  padding: 4px 12px;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}
.card--event-detail .card__category {
  position: absolute;
  border-radius: 20px;
  bottom: -10px;
  left: 10px;
  z-index: 10;
  background: #e40046;
  padding: 6px 15px;
  font-size: 12px;
  line-height: 1;
  font-weight: 600;
  letter-spacing: 0.8px;
  text-transform: uppercase;
  color: white;
}
.card--event-detail .card__content {
  padding: 1rem;
  display: flex;
  flex-direction: column;
  flex-grow: 1;
}
.card--event-detail .card__title {
  color: #000b17;
  margin: 0;
  margin-bottom: 0.3125rem;
  padding-bottom: 0;
  margin-top: 5px;
}
.card--event-detail .card__dates {
  font-weight: 400;
  font-size: 1rem;
  color: #000b17;
  margin: 0;
  font-weight: bold;
  letter-spacing: -0.5px;
  margin-bottom: 0.3125rem;
  padding-bottom: 0;
}
.card--event-detail .card__teaser {
  font-weight: 400;
  font-size: 1rem;
  color: #000b17;
  margin: 0;
  font-weight: 300;
  margin-bottom: 0rem;
  padding-bottom: 5px;
  line-height: 1.5;
  flex-grow: 1;
}
.card--event-detail .card__venue {
  display: flex;
  align-items: center;
  gap: 6px;
  font-weight: 400;
  font-size: 1rem;
  color: #000b17;
  font-weight: bold;
  margin-bottom: 0.625rem;
  padding-bottom: 0;
}
.card--event-detail .card__venue i {
  color: #e40046;
  font-size: 1.5rem;
}
.card--event-detail .card__tags {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  align-items: center;
  border-top: 1px solid #909090;
  padding-top: 10px;
  min-height: 35px;
}
@media (max-width: 767.98px) {
  .card--event-detail .card__tags {
    min-height: 0;
  }
}
.card--event-detail .card__book-btn {
  display: flex !important;
  align-items: center;
  justify-content: center;
  gap: 6px;
  background: #e40046;
  color: #fefcf3;
  border-radius: 50px;
  text-transform: uppercase;
  text-align: center;
  letter-spacing: 0.5px;
  margin-top: 0.625rem;
  width: 100%;
}
.card--event-detail .card__book-btn--sold-out {
  background: #000b17;
  opacity: 0.6;
}
.card--event-detail .card__book-btn--limited {
  background: #cba058;
}
.card--event-detail .card__tag {
  font-weight: 400;
  font-size: 0.75rem;
  color: #000b17;
  background: #909090;
  border-radius: 50px;
  padding: 3px 10px;
  display: inline-flex;
  align-items: center;
  gap: 4px;
}
.card--event-detail .card__tag i {
  font-weight: 400;
  font-size: 0.6875rem;
}

.card--news * {
  color: #000b17;
}
.card--news img {
  aspect-ratio: 16/10.4;
  min-height: initial !important;
  height: initial !important;
}
.card--news a {
  background: #fefcf3;
  color: #000b17;
}

.card-event img {
  height: initial;
}
.card-event p {
  line-height: 1.6;
}

.card-event a,
.card-venue a {
  background: #000b17;
  color: #fefcf3;
  text-align: left;
}
.card-event a *,
.card-venue a * {
  color: #fefcf3;
}
.card-event .button,
.card-venue .button {
  margin-top: 0.9375rem;
  padding-top: 0.3125rem;
  padding-bottom: 0.3125rem;
  padding-left: calc(1.3125rem + 0.75vw);
}
@media (min-width: 1200px) {
  .card-event .button,
  .card-venue .button {
    padding-left: 1.875rem;
  }
}
.card-event .button,
.card-venue .button {
  padding-right: calc(1.3125rem + 0.75vw);
}
@media (min-width: 1200px) {
  .card-event .button,
  .card-venue .button {
    padding-right: 1.875rem;
  }
}
.card-event .button,
.card-venue .button {
  float: right;
  clear: both;
  margin-bottom: 1.25rem;
}
.card-event .button:hover,
.card-venue .button:hover {
  background: #182866;
}
.card-event h4,
.card-venue h4 {
  padding-bottom: 0.3125rem;
}
.card-event p,
.card-venue p {
  font-weight: 400;
  font-size: 0.8125rem;
  line-height: 1.6;
  padding-bottom: 0rem;
}
.card-event h3,
.card-venue h3 {
  font-weight: 700;
  font-size: 1.125rem;
  letter-spacing: 0;
  padding-bottom: 0.375rem;
}
.card-event .h6,
.card-venue .h6 {
  font-weight: 400;
  font-size: 0.875rem;
  margin-bottom: 0.3125rem;
  padding-bottom: 0.125rem;
}
.card-event .h6 img,
.card-venue .h6 img {
  vertical-align: top;
  margin-right: 0.3125rem;
}

.card-promotion a {
  background: transparent;
}
.card-promotion h4 {
  font-size: calc(1.2875rem + 0.45vw);
}
@media (min-width: 1200px) {
  .card-promotion h4 {
    font-size: 1.625rem;
  }
}
.card-promotion h4 {
  letter-spacing: -0.5px;
}
.card-promotion img {
  object-fit: contain;
}
@media (max-width: 767.98px) {
  .card-promotion img {
    height: auto;
  }
}

.card-default .card__content {
  padding-left: 0rem;
}
.card-default a {
  text-align: left;
}
.card-default h4 {
  font-size: calc(1.2875rem + 0.45vw);
}
@media (min-width: 1200px) {
  .card-default h4 {
    font-size: 1.625rem;
  }
}
.card-default h4 {
  letter-spacing: -0.5px;
}

@media (max-width: 767.98px) {
  .card-grid__spotlight .col-lg-7 {
    margin-bottom: 20px;
  }
}

@media (max-width: 767.98px) {
  .card-grid__spotlight .col-lg-7 {
    margin-bottom: 20px;
  }
}

.card--staff {
  text-align: center;
  overflow: hidden;
  -moz-border-radius: 12px;
  -webkit-border-radius: 12px;
  border-radius: 12px;
}
.card--staff .card__image img {
  width: 100%;
  height: auto;
  aspect-ratio: 1/1;
  object-fit: cover;
  display: block;
  -moz-border-radius: 12px;
  -webkit-border-radius: 12px;
  border-radius: 12px;
}
.card--staff .card__content {
  padding: 1rem;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
}
.card--staff .card__title {
  font-weight: 700;
  font-size: calc(1.2875rem + 0.45vw);
}
@media (min-width: 1200px) {
  .card--staff .card__title {
    font-size: 1.625rem;
  }
}
.card--staff .card__title {
  color: #fefcf3;
  margin-bottom: 0rem;
  padding-bottom: 0rem;
}
.card--staff .card__position {
  font-weight: 400;
  font-size: 0.9375rem;
  color: #fefcf3;
  margin-bottom: 0.5rem;
  padding-bottom: 0rem;
}
.card--staff .card__email {
  font-weight: 400;
  font-size: 0.875rem;
  color: #fefcf3;
  text-decoration: none;
  word-break: break-all;
}
.card--staff .card__email:hover {
  text-decoration: underline;
}

.card-spotlight {
  position: relative;
  overflow: hidden;
  -moz-border-radius: 12px;
  -webkit-border-radius: 12px;
  border-radius: 12px;
  -webkit-mask-image: -webkit-radial-gradient(white, black);
  height: 100%;
  margin-bottom: 0;
}
.card-spotlight a {
  display: block;
  position: relative;
  width: 100%;
  height: 100%;
  background: transparent;
}
.card-spotlight .card__image {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.card-spotlight .card__image img {
  width: 100%;
  height: 100% !important;
  object-fit: cover;
  transition: transform 0.4s ease;
}
@media (hover: hover) {
  .card-spotlight:hover .card__image img {
    transform: scale(1.06);
  }
  .card-spotlight:hover .card-spotlight__content h3 {
    transform: translateY(-4px);
  }
  .card-spotlight:hover .card-spotlight__content p {
    max-height: 120px;
    opacity: 1;
  }
}
@media (max-width: 767.98px) {
  .card-spotlight .card-spotlight__content h3 {
    transform: translateY(-4px);
    letter-spacing: 0;
  }
  .card-spotlight .card-spotlight__content p {
    max-height: 120px;
    opacity: 1 !important;
    max-height: initial !important;
  }
}
.card-spotlight .card-spotlight__content {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 2;
  text-align: left;
  padding: 20px !important;
  background: linear-gradient(to top, rgb(0, 0, 0) 0%, rgb(0, 0, 0) 25%, rgba(0, 0, 0, 0.8) 85%, rgba(0, 0, 0, 0) 100%);
}
.card-spotlight .card-spotlight__content h3 {
  color: #fefcf3;
  padding-bottom: 0.25rem;
  transition: transform 0.3s ease;
}
.card-spotlight .card-spotlight__content p {
  color: #fefcf3;
  font-weight: 400;
  font-size: 1rem;
  line-height: 1.5;
  padding-bottom: 0rem;
  display: block !important;
  max-height: 0;
  opacity: 0;
  overflow: hidden;
  transition: max-height 0.4s ease, opacity 0.3s ease;
}

.card--event .card__image img {
  height: initial !important;
  width: 100%;
  object-fit: initial !important;
}

.card--event-detail .card__image img {
  height: initial !important;
  width: 100%;
  object-fit: initial !important;
}

.card--image .card__image img {
  height: 350px;
}
.card--image .card__content {
  padding: 0.625rem;
}
.card--image .card__content p,
.card--image .card__content .h6 {
  display: none;
}

.card--tall-image {
  overflow: hidden;
  border-radius: 20px;
  -webkit-mask-image: -webkit-radial-gradient(white, black);
  width: 100%;
}
.card--tall-image a {
  position: relative;
}
.card--tall-image .card__image img {
  height: initial;
  aspect-ratio: 3/4;
  vertical-align: top;
  transition: transform 0.4s ease;
}
@media (hover: hover) {
  .card--tall-image:hover .card__image img {
    transform: scale(1.05);
  }
  .card--tall-image:hover .card__content h3 {
    transform: translateY(-4px);
  }
  .card--tall-image:hover .card__content p,
  .card--tall-image:hover .card__content .card__teaser {
    max-height: 120px;
    opacity: 1;
  }
}
.card--tall-image .card__content {
  padding: 1.25rem;
  background: transparent;
  position: absolute;
  left: 0;
  bottom: 0;
  text-align: left;
  width: 100%;
  background: linear-gradient(to top, rgb(0, 0, 0) 0%, rgb(0, 0, 0) 25%, rgba(0, 0, 0, 0.8) 85%, rgba(0, 0, 0, 0) 100%);
}
.card--tall-image .card__content .button {
  display: none;
}
.card--tall-image .card__content h3 {
  color: white;
  padding-bottom: 5px;
  transition: transform 0.3s ease;
}
.card--tall-image .card__content p,
.card--tall-image .card__content .card__teaser {
  color: #fefcf3;
  font-weight: 400;
  font-size: 0.9375rem;
  letter-spacing: 0.5px;
  padding: 0;
  line-height: 1.3;
  max-height: 0;
  opacity: 0;
  overflow: hidden;
  transition: max-height 0.4s ease, opacity 0.3s ease;
}

.card--small-image {
  position: relative;
  overflow: hidden;
  border-radius: 20px;
  -webkit-mask-image: -webkit-radial-gradient(white, black);
}
.card--small-image .card__image img {
  height: 180px;
  vertical-align: top;
  transition: transform 0.4s ease;
}
@media (hover: hover) {
  .card--small-image:hover .card__image img {
    transform: scale(1.08);
  }
  .card--small-image:hover .card__content h3 {
    transform: translateY(-3px);
  }
  .card--small-image:hover .card__content p,
  .card--small-image:hover .card__content .card__teaser {
    max-height: 80px;
    opacity: 1;
  }
}
.card--small-image .card__content {
  padding: 0.625rem;
  position: absolute;
  left: 0;
  text-align: center;
  bottom: 0px;
  width: 100%;
  background: linear-gradient(0deg, rgb(0, 0, 0) 16%, rgba(0, 212, 255, 0) 100%);
}
.card--small-image .card__content h3 {
  padding-bottom: 0.25rem;
  color: white;
  width: 100%;
  text-align: center;
  transition: transform 0.3s ease;
}
.card--small-image .card__content .button {
  display: none;
}
.card--small-image .card__content p,
.card--small-image .card__content .card__teaser {
  color: #fefcf3;
  font-weight: 400;
  font-size: 0.875rem;
  max-height: 0;
  opacity: 0;
  overflow: hidden;
  transition: max-height 0.4s ease, opacity 0.3s ease;
}

.card--news {
  width: 100%;
}
.card--news .card__image img {
  height: 420px;
  width: 100%;
  object-fit: cover;
}
.card--news .card__content {
  padding: 1rem;
  text-align: left;
}
.card--news .card__content h3 {
  padding-bottom: 0.5rem;
}
.card--news .card__content p {
  font-weight: 400;
  font-size: 0.875rem;
  line-height: 1.6;
}
.card--news .card__content .button {
  display: none;
}

.card-grid--tall-image,
.card-grid--image {
  width: 100%;
}
.card-grid--tall-image .splide__slide,
.card-grid--image .splide__slide {
  align-items: stretch;
}
.card-grid--small-image .card-grid__heading {
  font-weight: 700;
  font-size: calc(1.325rem + 0.9vw);
}
@media (min-width: 1200px) {
  .card-grid--small-image .card-grid__heading {
    font-size: 2rem;
  }
}

.card-grid {
  position: relative;
  overflow: hidden;
}
.card-grid > .flourish-c {
  width: 700px;
  opacity: 0.45;
  bottom: -120px;
  right: -120px;
  top: auto;
  left: auto;
}
@media (max-width: 767.98px) {
  .card-grid > .flourish-c {
    width: 450px;
    bottom: -80px;
    right: -80px;
  }
}
.card-grid--merge {
  margin-top: calc(-2.375rem - 13.5vw);
}
@media (min-width: 1200px) {
  .card-grid--merge {
    margin-top: -12.5rem;
  }
}
.card-grid--merge {
  position: relative;
  z-index: 2;
}
@media (max-width: 991.98px) {
  .card-grid--merge {
    margin-top: calc(-2rem - 9vw);
  }
}
@media (max-width: 991.98px) and (min-width: 1200px) {
  .card-grid--merge {
    margin-top: -8.75rem;
  }
}
@media (max-width: 767.98px) {
  .card-grid--merge {
    margin-top: calc(-1.75rem - 6vw);
  }
}
@media (max-width: 767.98px) and (min-width: 1200px) {
  .card-grid--merge {
    margin-top: -6.25rem;
  }
}
.card-grid__header {
  text-align: center;
  margin-bottom: calc(1.3125rem + 0.75vw);
}
@media (min-width: 1200px) {
  .card-grid__header {
    margin-bottom: 1.875rem;
  }
}
.card-grid__subtitle {
  max-width: 700px;
  margin-left: auto;
  margin-right: auto;
}
.card-grid__footer {
  text-align: center;
  margin-top: calc(1.3125rem + 0.75vw);
}
@media (min-width: 1200px) {
  .card-grid__footer {
    margin-top: 1.875rem;
  }
}
.card-grid__see-all {
  display: inline-block;
}
.card-grid__spotlight .col-lg-7 .card-spotlight {
  min-height: 450px;
}
@media (max-width: 991.98px) {
  .card-grid__spotlight .col-lg-7 .card-spotlight {
    min-height: 300px;
    margin-bottom: 1.25rem;
  }
}
.card-grid__spotlight .card-grid__spotlight-stack {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}
.card-grid__spotlight .card-grid__spotlight-stack .card-spotlight {
  flex: 1;
  min-height: 300px;
}

.splide__slide {
  display: flex;
  align-items: center;
  justify-content: center;
  transition: opacity 0.15s ease;
}
.splide__slide:not(.is-visible) {
  opacity: 0.4;
}

.splide__pagination {
  bottom: -2em;
}

.staff-card {
  flex-direction: column;
  padding-left: 1.25rem;
  padding-right: 1.25rem;
  text-align: left;
}
.staff-card a {
  text-decoration: none;
  color: #000b17;
}
.staff-card__image {
  width: 100%;
}
.staff-card__image img {
  width: 100%;
}
.staff-card__content {
  width: 100%;
  text-align: left;
}
.staff-card h4 {
  font-weight: 700;
  font-size: calc(1.275rem + 0.3vw);
}
@media (min-width: 1200px) {
  .staff-card h4 {
    font-size: 1.5rem;
  }
}
.staff-card h4 {
  font-weight: bold;
}
.staff-card h5 {
  font-weight: bold;
}
.staff-card img {
  vertical-align: top;
  margin-bottom: 0.75rem;
}
.staff-card h4,
.staff-card h5 {
  padding-bottom: 0rem;
}

@media (max-width: 767.98px) {
  .card-grid__spotlight:last-of-type .col-lg-7 {
    margin-bottom: 20px;
  }
}

.card--workshop {
  cursor: default;
}
.card--workshop:before {
  display: none;
}
.card--workshop:hover:before {
  display: none;
}
.card--workshop:hover {
  color: #000b17 !important;
}
.card--workshop:hover * {
  color: inherit !important;
}
.card--workshop:hover .card__image img {
  transform: none;
}
.card--workshop .card__link--static {
  display: block;
  width: 100%;
  height: 100%;
  color: #000b17;
  text-decoration: none;
}

.accordians__header-row {
  padding-bottom: calc(1.28125rem + 0.375vw);
}
@media (min-width: 1200px) {
  .accordians__header-row {
    padding-bottom: 1.5625rem;
  }
}
.accordians__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding-bottom: calc(1.28125rem + 0.375vw);
}
@media (min-width: 1200px) {
  .accordians__header {
    padding-bottom: 1.5625rem;
  }
}
.accordians__header h2 {
  padding-bottom: 0;
}
.accordian {
  text-decoration: none;
  border: 1px solid #ccc !important;
  margin: 0 auto;
  padding: 20px 30px;
  border-right: 0;
  border-left: 0;
}
.accordian__header {
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  background: none;
  border: none;
  padding: 0;
  font: inherit;
  color: inherit;
  text-align: left;
}
.accordian__header:focus-visible {
  outline: 2px solid #e40046;
  outline-offset: 2px;
}
.accordian__header i {
  margin-right: 0px;
  border: 2px solid black;
  font-size: 1.05em;
  height: 35px;
  border-radius: 50%;
  color: #e40046;
  width: 35px;
  line-height: 32px;
  background: #fefcf3;
  text-align: center;
  transition: all 0.2s ease-in;
  border: 2px solid #000b17;
}
.accordian__header h4 {
  padding-bottom: 0;
  font-weight: 700;
  font-size: calc(1.2625rem + 0.15vw);
}
@media (min-width: 1200px) {
  .accordian__header h4 {
    font-size: 1.375rem;
  }
}
.accordian__header h4 {
  flex: 1;
  text-align: left;
}
.accordian__content {
  display: none;
  padding-left: 0rem;
  padding-right: 0rem;
  padding-bottom: 0;
  border-top: 1px solid #909090;
  padding-top: 0.9375rem;
  margin-top: 15px;
}
.accordian__content {
  padding-bottom: 0;
}
.accordian.active .accordian__header i {
  transform: rotate(180deg);
}

.content-block__accordions {
  margin-top: calc(1.3125rem + 0.75vw);
}
@media (min-width: 1200px) {
  .content-block__accordions {
    margin-top: 1.875rem;
  }
}
.content-block__accordions {
  max-width: 900px;
  margin-left: auto;
  margin-right: auto;
}

.accordian-lightbox__trigger {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  background: none;
  border: none;
  border-bottom: 1px solid #909090;
  cursor: pointer;
  text-align: left;
  font: inherit;
  color: inherit;
  padding-top: 1rem;
  padding-bottom: 1rem;
  padding-left: 0.5rem;
  padding-right: 0.5rem;
  transition: background 0.2s ease;
}
.accordian-lightbox__trigger:first-child {
  border-top: 1px solid #909090;
}
.accordian-lightbox__trigger:hover {
  background: rgba(0, 0, 0, 0.03);
}
.accordian-lightbox__trigger:focus-visible {
  outline: 2px solid #e40046;
  outline-offset: 2px;
}
.accordian-lightbox__trigger h4 {
  font-weight: 700;
  font-size: calc(1.2625rem + 0.15vw);
}
@media (min-width: 1200px) {
  .accordian-lightbox__trigger h4 {
    font-size: 1.375rem;
  }
}
.accordian-lightbox__trigger h4 {
  flex: 1;
  padding-bottom: 0;
}
.accordian-lightbox__trigger i {
  font-weight: 400;
  font-size: 1rem;
  color: #e40046;
  opacity: 0.6;
  transition: transform 0.25s ease, opacity 0.25s ease;
}
.accordian-lightbox__trigger:hover i {
  transform: translateX(4px);
  opacity: 1;
}

.accordian-lightbox {
  position: fixed;
  inset: 0;
  z-index: 10000;
  display: flex;
  align-items: center;
  justify-content: center;
  visibility: hidden;
  opacity: 0;
  transition: visibility 0s 0.35s, opacity 0.35s ease;
}
.accordian-lightbox.is-active {
  visibility: visible;
  opacity: 1;
  transition: visibility 0s 0s, opacity 0.35s ease;
}
.accordian-lightbox__overlay {
  position: absolute;
  inset: 0;
  background: rgba(0, 11, 23, 0.85);
  backdrop-filter: blur(6px);
}
.accordian-lightbox__panel {
  position: relative;
  z-index: 1;
  width: 90%;
  max-width: 760px;
  max-height: 85vh;
  background: #fefcf3;
  border-radius: 20px;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  transform: translateY(24px) scale(0.97);
  transition: transform 0.35s cubic-bezier(0.4, 0, 0.2, 1);
}
.is-active .accordian-lightbox__panel {
  transform: translateY(0) scale(1);
}
.accordian-lightbox__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding-top: calc(1.275rem + 0.3vw);
}
@media (min-width: 1200px) {
  .accordian-lightbox__header {
    padding-top: 1.5rem;
  }
}
.accordian-lightbox__header {
  padding-bottom: 1.25rem;
  padding-left: calc(1.325rem + 0.9vw);
}
@media (min-width: 1200px) {
  .accordian-lightbox__header {
    padding-left: 2rem;
  }
}
.accordian-lightbox__header {
  padding-right: calc(1.275rem + 0.3vw);
}
@media (min-width: 1200px) {
  .accordian-lightbox__header {
    padding-right: 1.5rem;
  }
}
.accordian-lightbox__header {
  border-bottom: 1px solid #f3f3f3;
  flex-shrink: 0;
}
@media (max-width: 767.98px) {
  .accordian-lightbox__header {
    padding-left: 1.25rem;
    padding-right: 1rem;
    padding-top: 1.25rem;
    padding-bottom: 1rem;
  }
}
.accordian-lightbox__title {
  font-weight: 700;
  font-size: calc(1.3rem + 0.6vw);
}
@media (min-width: 1200px) {
  .accordian-lightbox__title {
    font-size: 1.75rem;
  }
}
.accordian-lightbox__title {
  color: #000b17;
  padding-bottom: 0;
  flex: 1;
  padding-right: 1rem;
}
@media (max-width: 767.98px) {
  .accordian-lightbox__title {
    font-weight: 700;
    font-size: calc(1.2625rem + 0.15vw);
  }
}
@media (max-width: 767.98px) and (min-width: 1200px) {
  .accordian-lightbox__title {
    font-size: 1.375rem;
  }
}
.accordian-lightbox__close {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  flex-shrink: 0;
  border-radius: 50%;
  border: none;
  background: #f3f3f3;
  color: #000b17;
  cursor: pointer;
  transition: background 0.2s ease;
}
.accordian-lightbox__close i {
  font-weight: 400;
  font-size: 1.25rem;
}
.accordian-lightbox__close:hover {
  background: #e40046;
  color: #fefcf3;
}
.accordian-lightbox__body {
  padding-top: calc(1.3rem + 0.6vw);
}
@media (min-width: 1200px) {
  .accordian-lightbox__body {
    padding-top: 1.75rem;
  }
}
.accordian-lightbox__body {
  padding-bottom: calc(1.325rem + 0.9vw);
}
@media (min-width: 1200px) {
  .accordian-lightbox__body {
    padding-bottom: 2rem;
  }
}
.accordian-lightbox__body {
  padding-left: calc(1.325rem + 0.9vw);
}
@media (min-width: 1200px) {
  .accordian-lightbox__body {
    padding-left: 2rem;
  }
}
.accordian-lightbox__body {
  padding-right: calc(1.325rem + 0.9vw);
}
@media (min-width: 1200px) {
  .accordian-lightbox__body {
    padding-right: 2rem;
  }
}
.accordian-lightbox__body {
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
}
@media (max-width: 767.98px) {
  .accordian-lightbox__body {
    padding-top: 1.25rem;
    padding-bottom: calc(1.275rem + 0.3vw);
    padding-left: 1.25rem;
    padding-right: 1.25rem;
  }
}
@media (max-width: 767.98px) and (min-width: 1200px) {
  .accordian-lightbox__body {
    padding-bottom: 1.5rem;
  }
}

.person-carousel__heading {
  font-weight: 700;
  font-size: calc(1.3875rem + 1.65vw);
}
@media (min-width: 1200px) {
  .person-carousel__heading {
    font-size: 2.625rem;
  }
}
.person-carousel__heading {
  padding-bottom: calc(1.3125rem + 0.75vw);
}
@media (min-width: 1200px) {
  .person-carousel__heading {
    padding-bottom: 1.875rem;
  }
}
.person-carousel__heading {
  text-align: center;
}
@media (max-width: 767.98px) {
  .person-carousel__heading {
    font-weight: 700;
    font-size: calc(1.325rem + 0.9vw);
  }
}
@media (max-width: 767.98px) and (min-width: 1200px) {
  .person-carousel__heading {
    font-size: 2rem;
  }
}
.person-carousel__card {
  text-align: center;
}
.person-carousel__photo {
  margin-bottom: 0.9375rem;
}
.person-carousel__photo img {
  width: 100%;
  aspect-ratio: 1;
  object-fit: cover;
  border-radius: 50%;
}
.person-carousel__name {
  font-weight: 700;
  font-size: calc(1.275rem + 0.3vw);
}
@media (min-width: 1200px) {
  .person-carousel__name {
    font-size: 1.5rem;
  }
}
.person-carousel__name {
  padding-bottom: 0rem;
  font-weight: bold;
}
.person-carousel__role {
  font-weight: 400;
  font-size: 1rem;
  color: #000b17;
  padding-bottom: 0rem;
}

.gallery-block__heading {
  font-weight: 700;
  font-size: calc(1.3875rem + 1.65vw);
}
@media (min-width: 1200px) {
  .gallery-block__heading {
    font-size: 2.625rem;
  }
}
.gallery-block__heading {
  padding-bottom: calc(1.28125rem + 0.375vw);
}
@media (min-width: 1200px) {
  .gallery-block__heading {
    padding-bottom: 1.5625rem;
  }
}
.gallery-block__heading {
  text-align: center;
}
@media (max-width: 767.98px) {
  .gallery-block__heading {
    font-weight: 700;
    font-size: calc(1.325rem + 0.9vw);
  }
}
@media (max-width: 767.98px) and (min-width: 1200px) {
  .gallery-block__heading {
    font-size: 2rem;
  }
}
.gallery-block__item {
  display: block;
  position: relative;
  overflow: hidden;
  margin-bottom: 1.25rem;
  text-decoration: none;
}
.gallery-block__item img {
  width: 100%;
  height: 250px;
  object-fit: cover;
  transition: transform 0.3s ease-in;
}
.gallery-block__item:hover img {
  transform: scale(1.05);
  -webkit-transform: scale(1.05);
  -moz-transform: scale(1.05);
  -ms-transform: scale(1.05);
}
.gallery-block__play {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -moz-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  width: 60px;
  height: 60px;
  background: rgba(0, 0, 0, 0.6);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fefcf3;
  font-weight: 400;
  font-size: 1.25rem;
  transition: background 0.2s ease-in;
}
.gallery-block__item:hover .gallery-block__play {
  background: #e40046;
}
.gallery-block__caption {
  font-weight: 400;
  font-size: 0.8125rem;
  padding-top: 0.5rem;
  padding-bottom: 0.625rem;
  text-align: center;
}

.anchor-nav {
  background: #fefcf3;
  z-index: 100;
  padding-top: 0.9375rem;
  padding-bottom: 0.9375rem;
  border-bottom: 1px solid #000b17;
}
.anchor-nav--fixed {
  position: fixed;
  top: var(--header-height, 80px);
  left: 0;
  right: 0;
}
.anchor-nav__list {
  display: flex;
  align-items: center;
  gap: 3rem;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  justify-content: center;
}
@media (max-width: 767.98px) {
  .anchor-nav__list {
    gap: 1rem;
    justify-content: flex-start;
    padding-left: 1rem;
    padding-right: 1rem;
  }
}
.anchor-nav__item {
  flex-shrink: 0;
}
.anchor-nav__link {
  color: #000b17;
  text-decoration: none;
  font-weight: 700;
  font-size: 1.25rem;
  font-weight: 600;
  letter-spacing: 0px;
  white-space: nowrap;
  transition: color 0.2s ease-in;
  text-decoration: underline;
}
.anchor-nav__link:hover {
  opacity: 1;
  color: #e40046;
}

.tabbed-content {
  position: relative;
  overflow: hidden;
}
.tabbed-content > .container {
  position: relative;
  z-index: 2;
}
.tabbed-content__bg-media {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 0;
  opacity: 0.4;
  pointer-events: none;
}
.tabbed-content__bg-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.tabbed-content > .flourish-c.flourish-c--bottom-right {
  width: 450px;
  opacity: 0.15;
}
.tabbed-content__heading {
  font-weight: 700;
  font-size: calc(1.3875rem + 1.65vw);
}
@media (min-width: 1200px) {
  .tabbed-content__heading {
    font-size: 2.625rem;
  }
}
.tabbed-content__heading {
  padding-bottom: 0.9375rem;
  text-align: center;
}
@media (max-width: 767.98px) {
  .tabbed-content__heading {
    font-weight: 700;
    font-size: calc(1.325rem + 0.9vw);
  }
}
@media (max-width: 767.98px) and (min-width: 1200px) {
  .tabbed-content__heading {
    font-size: 2rem;
  }
}
.tabbed-content__intro {
  font-weight: 400;
  font-size: 1rem;
  text-align: center;
  margin-left: auto;
  margin-right: auto;
  padding-bottom: calc(1.3125rem + 0.75vw);
}
@media (min-width: 1200px) {
  .tabbed-content__intro {
    padding-bottom: 1.875rem;
  }
}
.tabbed-content__intro {
  line-height: 1.6;
}
.tabbed-content__tabs {
  display: flex;
  gap: 0;
  margin-bottom: calc(1.3125rem + 0.75vw);
}
@media (min-width: 1200px) {
  .tabbed-content__tabs {
    margin-bottom: 1.875rem;
  }
}
.tabbed-content__tabs {
  align-items: center;
  justify-content: center;
}
@media (max-width: 767.98px) {
  .tabbed-content__tabs {
    flex-wrap: nowrap;
    overflow-x: auto;
  }
}
.tabbed-content__tab {
  font-weight: 700;
  font-size: 1.125rem;
  font-weight: bold;
  padding-top: 0.75rem;
  padding-bottom: 0.75rem;
  padding-left: 1.25rem;
  padding-right: 1.25rem;
  border: none;
  background: none;
  cursor: pointer;
  color: #fefcf3;
  border-bottom: 3px solid transparent;
  transition: all 0.2s ease-in;
  white-space: nowrap;
  position: relative;
  bottom: -2px;
}
.tabbed-content__tab:hover {
  color: #e40046;
  background: transparent;
}
.tabbed-content__tab:focus-visible {
  outline: 2px solid #e40046;
  outline-offset: 2px;
}
.tabbed-content__tab--active {
  color: #fefcf3;
  border-bottom-color: #e40046;
}
.tabbed-content__panel {
  display: none;
}
.tabbed-content__panel--active {
  display: block;
}
.tabbed-content__panel--gradient {
  background: -webkit-linear-gradient(left, #e40046 0%, #cba058 100%);
  background: -moz-linear-gradient(left, #e40046 0%, #cba058 100%);
  background: -o-linear-gradient(left, #e40046 0%, #cba058 100%);
  background: linear-gradient(to right, #e40046 0%, #cba058 100%);
  border-radius: 12px;
  padding: calc(1.3125rem + 0.75vw);
}
@media (min-width: 1200px) {
  .tabbed-content__panel--gradient {
    padding: 1.875rem;
  }
}
.tabbed-content__panel--gradient {
  color: #fefcf3;
}
.tabbed-content__image img {
  width: 100%;
  height: auto;
  object-fit: cover;
  border-radius: 20px;
}
.tabbed-content__map iframe {
  width: 100%;
  border-radius: 12px;
}
.tabbed-content__inner-accordions {
  margin-top: 1.25rem;
}
.tabbed-content__accordian {
  border-color: rgba(255, 255, 255, 0.2) !important;
  padding: 0.9375rem;
  margin-bottom: 0.625rem;
  max-width: 100%;
  border-radius: 8px;
}
.tabbed-content__accordian .accordian__header h4 {
  font-weight: 700;
  font-size: 1.25rem;
  color: inherit;
}
.tabbed-content__accordian .accordian__header i {
  font-weight: 400;
  font-size: 1rem;
  background: Colours(brand, white);
}
.tabbed-content__accordian .accordian__content {
  border-top-color: rgba(255, 255, 255, 0.15);
}
.tabbed-content__accordian .accordian__content .tabbed-content__image img {
  border-radius: 8px;
}
.tabbed-content__accordian .accordian__content .tabbed-content__map iframe {
  border-radius: 8px;
  height: 300px;
}

.data-table__heading {
  padding-bottom: calc(1.28125rem + 0.375vw);
}
@media (min-width: 1200px) {
  .data-table__heading {
    padding-bottom: 1.5625rem;
  }
}
.data-table__wrapper {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}
.data-table__table {
  width: 100%;
  border-collapse: collapse;
}
.data-table__table th {
  font-weight: 700;
  font-size: 0.875rem;
  font-weight: bold;
  text-align: left;
  padding-top: 0.75rem;
  padding-bottom: 0.75rem;
  padding-left: 0.9375rem;
  padding-right: 0.9375rem;
  background: #000b17;
  color: #fefcf3;
  white-space: nowrap;
}
.data-table__table td {
  font-weight: 400;
  font-size: 0.875rem;
  padding-top: 0.75rem;
  padding-bottom: 0.75rem;
  padding-left: 0.9375rem;
  padding-right: 0.9375rem;
  border-bottom: 1px solid #f3f3f3;
}
.data-table__table tbody tr {
  transition: background 0.15s ease-in;
}
.data-table__table tbody tr:hover {
  background: #f3f3f3;
}
.data-table__link {
  color: #e40046;
  font-weight: 700;
  font-size: 0.875rem;
  font-weight: bold;
  text-decoration: none;
}
.data-table__link:hover {
  text-decoration: underline;
}

.pricing-cards {
  text-align: center;
}
.pricing-cards__heading {
  font-weight: 700;
  font-size: calc(1.3875rem + 1.65vw);
}
@media (min-width: 1200px) {
  .pricing-cards__heading {
    font-size: 2.625rem;
  }
}
.pricing-cards__heading {
  padding-bottom: calc(1.3125rem + 0.75vw);
}
@media (min-width: 1200px) {
  .pricing-cards__heading {
    padding-bottom: 1.875rem;
  }
}
@media (max-width: 767.98px) {
  .pricing-cards__heading {
    font-weight: 700;
    font-size: calc(1.325rem + 0.9vw);
  }
}
@media (max-width: 767.98px) and (min-width: 1200px) {
  .pricing-cards__heading {
    font-size: 2rem;
  }
}
.pricing-cards__card {
  background: #fefcf3;
  border: 1px solid #f3f3f3;
  padding-top: calc(1.375rem + 1.5vw);
}
@media (min-width: 1200px) {
  .pricing-cards__card {
    padding-top: 2.5rem;
  }
}
.pricing-cards__card {
  padding-bottom: calc(1.375rem + 1.5vw);
}
@media (min-width: 1200px) {
  .pricing-cards__card {
    padding-bottom: 2.5rem;
  }
}
.pricing-cards__card {
  padding-left: calc(1.3125rem + 0.75vw);
}
@media (min-width: 1200px) {
  .pricing-cards__card {
    padding-left: 1.875rem;
  }
}
.pricing-cards__card {
  padding-right: calc(1.3125rem + 0.75vw);
}
@media (min-width: 1200px) {
  .pricing-cards__card {
    padding-right: 1.875rem;
  }
}
.pricing-cards__card {
  margin-bottom: calc(1.3125rem + 0.75vw);
}
@media (min-width: 1200px) {
  .pricing-cards__card {
    margin-bottom: 1.875rem;
  }
}
.pricing-cards__card {
  transition: all 0.2s ease-in;
}
.pricing-cards__card:hover {
  -moz-box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
  -webkit-box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
  transform: translateY(-5px);
  -webkit-transform: translateY(-5px);
  -moz-transform: translateY(-5px);
  -ms-transform: translateY(-5px);
}
.pricing-cards__price {
  font-weight: 700;
  font-size: calc(1.425rem + 2.1vw);
}
@media (min-width: 1200px) {
  .pricing-cards__price {
    font-size: 3rem;
  }
}
.pricing-cards__price {
  font-weight: 900;
  color: #e40046;
  padding-bottom: 0.625rem;
  line-height: 1;
}
@media (max-width: 767.98px) {
  .pricing-cards__price {
    font-weight: 700;
    font-size: calc(1.35rem + 1.2vw);
  }
}
@media (max-width: 767.98px) and (min-width: 1200px) {
  .pricing-cards__price {
    font-size: 2.25rem;
  }
}
.pricing-cards__title {
  font-weight: 700;
  font-size: calc(1.275rem + 0.3vw);
}
@media (min-width: 1200px) {
  .pricing-cards__title {
    font-size: 1.5rem;
  }
}
.pricing-cards__title {
  padding-bottom: 0.9375rem;
  font-weight: bold;
}
.pricing-cards__description {
  font-weight: 400;
  font-size: 0.875rem;
  line-height: 1.6;
  padding-bottom: 1.25rem;
}

.form-block__heading {
  font-weight: 700;
  font-size: calc(1.3875rem + 1.65vw);
}
@media (min-width: 1200px) {
  .form-block__heading {
    font-size: 2.625rem;
  }
}
.form-block__heading {
  padding-bottom: calc(1.28125rem + 0.375vw);
}
@media (min-width: 1200px) {
  .form-block__heading {
    padding-bottom: 1.5625rem;
  }
}
.form-block__heading {
  text-align: center;
}
@media (max-width: 767.98px) {
  .form-block__heading {
    font-weight: 700;
    font-size: calc(1.325rem + 0.9vw);
  }
}
@media (max-width: 767.98px) and (min-width: 1200px) {
  .form-block__heading {
    font-size: 2rem;
  }
}
.form-block__form {
  max-width: 600px;
  margin-left: auto;
  margin-right: auto;
}
.form-block__field {
  margin-bottom: 1.25rem;
}
.form-block__field label {
  display: block;
  font-weight: 700;
  font-size: 0.875rem;
  font-weight: bold;
  margin-bottom: 0.5rem;
}
.form-block__field input,
.form-block__field textarea,
.form-block__field select {
  width: 100%;
  padding-top: 0.625rem;
  padding-bottom: 0.625rem;
  padding-left: 0.9375rem;
  padding-right: 0.9375rem;
  border: 1px solid #f3f3f3;
  font-weight: 400;
  font-size: 0.875rem;
  transition: border-color 0.2s ease-in;
}
.form-block__field input:focus,
.form-block__field textarea:focus,
.form-block__field select:focus {
  outline: none;
  border-color: #e40046;
}
.form-block__field textarea {
  resize: vertical;
}
.form-block__inline {
  display: flex;
  gap: 1rem;
}
.form-block__inline input {
  flex: 1;
}
@media (max-width: 767.98px) {
  .form-block__inline {
    flex-direction: column;
  }
}
.background-black .form-block__heading, .background-green .form-block__heading {
  color: #fefcf3;
}
.background-black .form-block label, .background-green .form-block label {
  color: #fefcf3;
}

.map-block__heading {
  font-weight: 700;
  font-size: calc(1.3875rem + 1.65vw);
}
@media (min-width: 1200px) {
  .map-block__heading {
    font-size: 2.625rem;
  }
}
.map-block__heading {
  padding-bottom: 1.25rem;
}
@media (max-width: 767.98px) {
  .map-block__heading {
    font-weight: 700;
    font-size: calc(1.325rem + 0.9vw);
  }
}
@media (max-width: 767.98px) and (min-width: 1200px) {
  .map-block__heading {
    font-size: 2rem;
  }
}
.map-block__address {
  font-weight: 400;
  font-size: 1rem;
  line-height: 1.8;
  padding-bottom: 1.25rem;
}
.map-block__embed {
  position: relative;
  width: 100%;
  overflow: hidden;
}
.map-block__embed iframe {
  width: 100%;
  min-height: 400px;
  border: 0;
}
@media (max-width: 767.98px) {
  .map-block__embed iframe {
    min-height: 300px;
  }
}

.partner-logos {
  text-align: center;
}
.partner-logos__heading {
  font-weight: 700;
  font-size: calc(1.3875rem + 1.65vw);
}
@media (min-width: 1200px) {
  .partner-logos__heading {
    font-size: 2.625rem;
  }
}
.partner-logos__heading {
  padding-bottom: calc(1.3125rem + 0.75vw);
}
@media (min-width: 1200px) {
  .partner-logos__heading {
    padding-bottom: 1.875rem;
  }
}
@media (max-width: 767.98px) {
  .partner-logos__heading {
    font-weight: 700;
    font-size: calc(1.325rem + 0.9vw);
  }
}
@media (max-width: 767.98px) and (min-width: 1200px) {
  .partner-logos__heading {
    font-size: 2rem;
  }
}
.partner-logos__item {
  padding-top: 1.25rem;
  padding-bottom: 1.25rem;
}
.partner-logos__item a {
  display: inline-block;
  transition: opacity 0.2s ease-in;
}
.partner-logos__item a:hover {
  opacity: 0.7;
  filter: alpha(opacity=70);
}
.partner-logos__item img {
  max-height: 80px;
  width: auto;
  object-fit: contain;
}
@media (max-width: 767.98px) {
  .partner-logos__item img {
    max-height: 60px;
  }
}
.partner-logos__name {
  font-weight: 700;
  font-size: 0.875rem;
  padding-top: 0.625rem;
  padding-bottom: 0rem;
  font-weight: bold;
}

.membership-block__heading {
  text-align: center;
  margin-bottom: calc(1.3125rem + 0.75vw);
}
@media (min-width: 1200px) {
  .membership-block__heading {
    margin-bottom: 1.875rem;
  }
}
.membership-block .row {
  display: flex;
  flex-wrap: wrap;
}
.membership-block .row > [class*=col-] {
  display: flex;
}
.membership-block__card {
  background: #000b17;
  color: #fefcf3;
  border-radius: 8px;
  overflow: hidden;
  margin-bottom: calc(1.3125rem + 0.75vw);
}
@media (min-width: 1200px) {
  .membership-block__card {
    margin-bottom: 1.875rem;
  }
}
.membership-block__card {
  display: flex;
  flex-direction: column;
  width: 100%;
}
.membership-block__card-header {
  background: #e40046;
  padding-top: 1.25rem;
  padding-bottom: 1.25rem;
  padding-left: 24px;
  padding-right: 24px;
}
.membership-block__card-header h3 {
  margin: 0;
  padding: 0;
  color: #fefcf3;
}
.membership-block__card-header--gold {
  background: #cba058;
}
.membership-block__card-content {
  padding-top: calc(1.3125rem + 0.75vw);
}
@media (min-width: 1200px) {
  .membership-block__card-content {
    padding-top: 1.875rem;
  }
}
.membership-block__card-content {
  padding-bottom: calc(1.3125rem + 0.75vw);
}
@media (min-width: 1200px) {
  .membership-block__card-content {
    padding-bottom: 1.875rem;
  }
}
.membership-block__card-content {
  padding-left: 24px;
  padding-right: 24px;
  flex: 1;
  display: flex;
  flex-direction: column;
}
.membership-block__card-content .user-content ul {
  list-style: none;
  padding-left: 0;
}
.membership-block__card-content .user-content ul li {
  margin-bottom: 0.625rem;
  font-weight: 400;
  font-size: 1rem;
  padding-left: 40px;
  position: relative;
}
.membership-block__card-content .user-content ul li:before {
  content: "✓";
  position: absolute;
  left: 0;
  background: #44bfe7;
  width: 25px;
  height: 25px;
  border-radius: 50%;
  text-align: center;
  display: inline-block;
  line-height: 25px;
}
.membership-block__actions {
  margin-top: auto;
  padding-top: calc(1.275rem + 0.3vw);
}
@media (min-width: 1200px) {
  .membership-block__actions {
    padding-top: 1.5rem;
  }
}
.membership-block__message {
  margin-top: 1rem;
  padding-top: 0.75rem;
  padding-bottom: 0.75rem;
  padding-left: 16px;
  padding-right: 16px;
  text-align: center;
  border-radius: 4px;
}
.membership-block__message--success {
  background: #0b4052;
  color: #fefcf3;
}
.membership-block__message--error {
  background: #e40046;
  color: #fefcf3;
}

.gift-voucher-block__heading {
  margin-bottom: 1.25rem;
}
.gift-voucher-block__intro {
  margin-bottom: 1.25rem;
}
.gift-voucher-block__form {
  background: -webkit-linear-gradient(left, #e40046 0%, #cba058 100%);
  background: -moz-linear-gradient(left, #e40046 0%, #cba058 100%);
  background: -o-linear-gradient(left, #e40046 0%, #cba058 100%);
  background: linear-gradient(to right, #e40046 0%, #cba058 100%);
  border-radius: 8px;
  padding-top: calc(1.3125rem + 0.75vw);
}
@media (min-width: 1200px) {
  .gift-voucher-block__form {
    padding-top: 1.875rem;
  }
}
.gift-voucher-block__form {
  padding-bottom: calc(1.3125rem + 0.75vw);
}
@media (min-width: 1200px) {
  .gift-voucher-block__form {
    padding-bottom: 1.875rem;
  }
}
.gift-voucher-block__form {
  padding-left: 24px;
  padding-right: 24px;
}
.gift-voucher-block__field {
  margin-bottom: 1rem;
}
.gift-voucher-block__field label {
  display: block;
  font-weight: 700;
  font-size: 1.125rem;
  margin-bottom: 0.375rem;
  font-weight: 700;
  color: #fefcf3;
}
.gift-voucher-block__field input,
.gift-voucher-block__field select,
.gift-voucher-block__field textarea {
  width: 100%;
  border: 1px solid rgba(254, 252, 243, 0.4);
  border-radius: 4px;
  background: rgba(254, 252, 243, 0.15);
  color: #fefcf3;
  padding-top: 0.625rem;
  padding-bottom: 0.625rem;
  padding-left: 12px;
  padding-right: 12px;
  font-weight: 400;
  font-size: 1rem;
}
.gift-voucher-block__field input::placeholder,
.gift-voucher-block__field select::placeholder,
.gift-voucher-block__field textarea::placeholder {
  color: rgba(254, 252, 243, 0.6);
}
.gift-voucher-block__field select {
  appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23fff' d='M6 8L1 3h10z'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 12px center;
  padding-right: 32px;
}
.gift-voucher-block__field textarea {
  resize: vertical;
}
.gift-voucher-block__submit {
  margin-top: calc(1.275rem + 0.3vw);
}
@media (min-width: 1200px) {
  .gift-voucher-block__submit {
    margin-top: 1.5rem;
  }
}
.gift-voucher-block__submit {
  text-align: center;
}
.gift-voucher-block__submit .button {
  width: 100%;
  background: #000b17;
  color: #fefcf3;
}
.gift-voucher-block__submit .button:hover {
  background: black;
}
.gift-voucher-block__message {
  margin-top: 1rem;
  padding-top: 0.75rem;
  padding-bottom: 0.75rem;
  padding-left: 16px;
  padding-right: 16px;
  text-align: center;
  border-radius: 4px;
}
.gift-voucher-block__message--success {
  background: #0b4052;
  color: #fefcf3;
}
.gift-voucher-block__message--error {
  background: #e40046;
  color: #fefcf3;
}

.donation-block__header {
  text-align: center;
  margin-bottom: 1rem;
}
.donation-block__heading {
  margin-bottom: 0rem;
}
.donation-block__intro {
  text-align: center;
  margin-bottom: calc(1.275rem + 0.3vw);
}
@media (min-width: 1200px) {
  .donation-block__intro {
    margin-bottom: 1.5rem;
  }
}
.donation-block__form {
  background: #f3f3f3;
  border: 1px solid #909090;
  border-radius: 8px;
  padding-top: 1.25rem;
  padding-bottom: 1.25rem;
  padding-left: 20px;
  padding-right: 20px;
  max-width: 580px;
  margin-left: auto;
  margin-right: auto;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.1);
}
.donation-block__presets {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-bottom: 1.25rem;
}
.donation-block__preset {
  flex: 1 1 25%;
  text-align: center;
  cursor: pointer;
}
.donation-block__preset-button {
  display: block;
  background: #fefcf3;
  border: 2px solid #e40046;
  border-radius: 4px;
  padding-top: 0.625rem;
  padding-bottom: 0.625rem;
  text-align: center;
  font-weight: 400;
  font-size: 1.125rem;
  cursor: pointer;
  transition: background 0.3s, color 0.3s;
}
.donation-block__preset--active .donation-block__preset-button, .donation-block__preset:hover .donation-block__preset-button {
  background: #e40046;
  color: #fefcf3;
}
.donation-block__custom {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 1.25rem;
}
.donation-block__custom label {
  margin: 0;
  white-space: nowrap;
  font-weight: 400;
  font-size: 0.875rem;
}
.donation-block__custom input[type=text] {
  flex: 1;
  max-width: 250px;
  border: 1px solid #909090;
  border-radius: 4px;
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
  padding-left: 8px;
  padding-right: 8px;
  font-weight: 700;
  font-size: 1.25rem;
}
.donation-block__submit-wrap .button {
  display: block;
  width: 100%;
  text-align: center;
  font-weight: 700;
  font-size: 1.25rem;
}
.donation-block__message {
  margin-top: 1rem;
  padding-top: 0.75rem;
  padding-bottom: 0.75rem;
  padding-left: 16px;
  padding-right: 16px;
  text-align: center;
  border-radius: 4px;
}
.donation-block__message--success {
  background: #0b4052;
  color: #fefcf3;
}
.donation-block__message--error {
  background: #e40046;
  color: #fefcf3;
}
@media (max-width: 575.98px) {
  .donation-block__preset {
    flex: 1 1 45%;
  }
  .donation-block__custom {
    flex-wrap: wrap;
  }
  .donation-block__custom input[type=text] {
    max-width: 100%;
  }
}

.cta-block {
  position: relative;
  text-align: center;
  color: white;
}
.cta-block .container {
  position: relative;
  z-index: 2;
}
.cta-block__content {
  display: flex;
  flex-direction: column;
  align-items: center;
}
.cta-block__heading {
  color: white;
  margin-bottom: 0.875rem;
}
.cta-block__text {
  font-weight: 400;
  font-size: 1.125rem;
  color: white;
  margin-bottom: calc(1.275rem + 0.3vw);
}
@media (min-width: 1200px) {
  .cta-block__text {
    margin-bottom: 1.5rem;
  }
}
.cta-block__text {
  max-width: 600px;
}
@media (max-width: 767.98px) {
  .cta-block__text {
    font-weight: 400;
    font-size: 1rem;
  }
}
.cta-block__button {
  display: inline-block;
}

/*!
 * Hamburgers
 * @description Tasty CSS-animated hamburgers
 * @author Jonathan Suh @jonsuh
 * @site https://jonsuh.com/hamburgers
 * @link https://github.com/jonsuh/hamburgers
 */
.hamburger {
  padding: 0px 15px;
  display: inline-block;
  cursor: pointer;
  transition-property: opacity, filter;
  transition-duration: 0.15s;
  transition-timing-function: linear;
  font: inherit;
  color: inherit;
  text-transform: none;
  background-color: transparent;
  border: 0;
  margin: 0;
  overflow: visible;
}
.hamburger:hover {
  opacity: 1;
}
.hamburger.is-active:hover {
  opacity: 1;
}
.hamburger.is-active .hamburger-inner,
.hamburger.is-active .hamburger-inner::before,
.hamburger.is-active .hamburger-inner::after {
  background-color: #fff;
}

.hamburger-box {
  width: 32px;
  height: 19px;
  display: inline-block;
  position: relative;
}

.hamburger-inner {
  display: block;
  top: 50%;
  margin-top: -1.5px;
}
.hamburger-inner, .hamburger-inner::before, .hamburger-inner::after {
  width: 32px;
  height: 3px;
  background-color: #fff;
  border-radius: 4px;
  position: absolute;
  transition-property: transform;
  transition-duration: 0.15s;
  transition-timing-function: ease;
}
.hamburger-inner::before, .hamburger-inner::after {
  content: "";
  display: block;
}
.hamburger-inner::before {
  top: -8px;
}
.hamburger-inner::after {
  bottom: -8px;
}

/*
 * 3DX
 */
.hamburger--3dx .hamburger-box {
  perspective: 64px;
}
.hamburger--3dx .hamburger-inner {
  transition: transform 0.15s cubic-bezier(0.645, 0.045, 0.355, 1), background-color 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1);
}
.hamburger--3dx .hamburger-inner::before, .hamburger--3dx .hamburger-inner::after {
  transition: transform 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1);
}
.hamburger--3dx.is-active .hamburger-inner {
  background-color: transparent !important;
  transform: rotateY(180deg);
}
.hamburger--3dx.is-active .hamburger-inner::before {
  transform: translate3d(0, 8px, 0) rotate(45deg);
}
.hamburger--3dx.is-active .hamburger-inner::after {
  transform: translate3d(0, -8px, 0) rotate(-45deg);
}

/*
 * 3DX Reverse
 */
.hamburger--3dx-r .hamburger-box {
  perspective: 64px;
}
.hamburger--3dx-r .hamburger-inner {
  transition: transform 0.15s cubic-bezier(0.645, 0.045, 0.355, 1), background-color 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1);
}
.hamburger--3dx-r .hamburger-inner::before, .hamburger--3dx-r .hamburger-inner::after {
  transition: transform 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1);
}
.hamburger--3dx-r.is-active .hamburger-inner {
  background-color: transparent !important;
  transform: rotateY(-180deg);
}
.hamburger--3dx-r.is-active .hamburger-inner::before {
  transform: translate3d(0, 8px, 0) rotate(45deg);
}
.hamburger--3dx-r.is-active .hamburger-inner::after {
  transform: translate3d(0, -8px, 0) rotate(-45deg);
}

/*
 * 3DY
 */
.hamburger--3dy .hamburger-box {
  perspective: 64px;
}
.hamburger--3dy .hamburger-inner {
  transition: transform 0.15s cubic-bezier(0.645, 0.045, 0.355, 1), background-color 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1);
}
.hamburger--3dy .hamburger-inner::before, .hamburger--3dy .hamburger-inner::after {
  transition: transform 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1);
}
.hamburger--3dy.is-active .hamburger-inner {
  background-color: transparent !important;
  transform: rotateX(-180deg);
}
.hamburger--3dy.is-active .hamburger-inner::before {
  transform: translate3d(0, 8px, 0) rotate(45deg);
}
.hamburger--3dy.is-active .hamburger-inner::after {
  transform: translate3d(0, -8px, 0) rotate(-45deg);
}

/*
 * 3DY Reverse
 */
.hamburger--3dy-r .hamburger-box {
  perspective: 64px;
}
.hamburger--3dy-r .hamburger-inner {
  transition: transform 0.15s cubic-bezier(0.645, 0.045, 0.355, 1), background-color 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1);
}
.hamburger--3dy-r .hamburger-inner::before, .hamburger--3dy-r .hamburger-inner::after {
  transition: transform 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1);
}
.hamburger--3dy-r.is-active .hamburger-inner {
  background-color: transparent !important;
  transform: rotateX(180deg);
}
.hamburger--3dy-r.is-active .hamburger-inner::before {
  transform: translate3d(0, 8px, 0) rotate(45deg);
}
.hamburger--3dy-r.is-active .hamburger-inner::after {
  transform: translate3d(0, -8px, 0) rotate(-45deg);
}

/*
 * 3DXY
 */
.hamburger--3dxy .hamburger-box {
  perspective: 64px;
}
.hamburger--3dxy .hamburger-inner {
  transition: transform 0.15s cubic-bezier(0.645, 0.045, 0.355, 1), background-color 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1);
}
.hamburger--3dxy .hamburger-inner::before, .hamburger--3dxy .hamburger-inner::after {
  transition: transform 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1);
}
.hamburger--3dxy.is-active .hamburger-inner {
  background-color: transparent !important;
  transform: rotateX(180deg) rotateY(180deg);
}
.hamburger--3dxy.is-active .hamburger-inner::before {
  transform: translate3d(0, 8px, 0) rotate(45deg);
}
.hamburger--3dxy.is-active .hamburger-inner::after {
  transform: translate3d(0, -8px, 0) rotate(-45deg);
}

/*
 * 3DXY Reverse
 */
.hamburger--3dxy-r .hamburger-box {
  perspective: 64px;
}
.hamburger--3dxy-r .hamburger-inner {
  transition: transform 0.15s cubic-bezier(0.645, 0.045, 0.355, 1), background-color 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1);
}
.hamburger--3dxy-r .hamburger-inner::before, .hamburger--3dxy-r .hamburger-inner::after {
  transition: transform 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1);
}
.hamburger--3dxy-r.is-active .hamburger-inner {
  background-color: transparent !important;
  transform: rotateX(180deg) rotateY(180deg) rotateZ(-180deg);
}
.hamburger--3dxy-r.is-active .hamburger-inner::before {
  transform: translate3d(0, 8px, 0) rotate(45deg);
}
.hamburger--3dxy-r.is-active .hamburger-inner::after {
  transform: translate3d(0, -8px, 0) rotate(-45deg);
}

/*
 * Arrow
 */
.hamburger--arrow.is-active .hamburger-inner::before {
  transform: translate3d(-6.4px, 0, 0) rotate(-45deg) scale(0.7, 1);
}
.hamburger--arrow.is-active .hamburger-inner::after {
  transform: translate3d(-6.4px, 0, 0) rotate(45deg) scale(0.7, 1);
}

/*
 * Arrow Right
 */
.hamburger--arrow-r.is-active .hamburger-inner::before {
  transform: translate3d(6.4px, 0, 0) rotate(45deg) scale(0.7, 1);
}
.hamburger--arrow-r.is-active .hamburger-inner::after {
  transform: translate3d(6.4px, 0, 0) rotate(-45deg) scale(0.7, 1);
}

/*
 * Arrow Alt
 */
.hamburger--arrowalt .hamburger-inner::before {
  transition: top 0.1s 0.1s ease, transform 0.1s cubic-bezier(0.165, 0.84, 0.44, 1);
}
.hamburger--arrowalt .hamburger-inner::after {
  transition: bottom 0.1s 0.1s ease, transform 0.1s cubic-bezier(0.165, 0.84, 0.44, 1);
}
.hamburger--arrowalt.is-active .hamburger-inner::before {
  top: 0;
  transform: translate3d(-6.4px, -8px, 0) rotate(-45deg) scale(0.7, 1);
  transition: top 0.1s ease, transform 0.1s 0.1s cubic-bezier(0.895, 0.03, 0.685, 0.22);
}
.hamburger--arrowalt.is-active .hamburger-inner::after {
  bottom: 0;
  transform: translate3d(-6.4px, 8px, 0) rotate(45deg) scale(0.7, 1);
  transition: bottom 0.1s ease, transform 0.1s 0.1s cubic-bezier(0.895, 0.03, 0.685, 0.22);
}

/*
 * Arrow Alt Right
 */
.hamburger--arrowalt-r .hamburger-inner::before {
  transition: top 0.1s 0.1s ease, transform 0.1s cubic-bezier(0.165, 0.84, 0.44, 1);
}
.hamburger--arrowalt-r .hamburger-inner::after {
  transition: bottom 0.1s 0.1s ease, transform 0.1s cubic-bezier(0.165, 0.84, 0.44, 1);
}
.hamburger--arrowalt-r.is-active .hamburger-inner::before {
  top: 0;
  transform: translate3d(6.4px, -8px, 0) rotate(45deg) scale(0.7, 1);
  transition: top 0.1s ease, transform 0.1s 0.1s cubic-bezier(0.895, 0.03, 0.685, 0.22);
}
.hamburger--arrowalt-r.is-active .hamburger-inner::after {
  bottom: 0;
  transform: translate3d(6.4px, 8px, 0) rotate(-45deg) scale(0.7, 1);
  transition: bottom 0.1s ease, transform 0.1s 0.1s cubic-bezier(0.895, 0.03, 0.685, 0.22);
}

/*
 * Arrow Turn
 */
.hamburger--arrowturn.is-active .hamburger-inner {
  transform: rotate(-180deg);
}
.hamburger--arrowturn.is-active .hamburger-inner::before {
  transform: translate3d(8px, 0, 0) rotate(45deg) scale(0.7, 1);
}
.hamburger--arrowturn.is-active .hamburger-inner::after {
  transform: translate3d(8px, 0, 0) rotate(-45deg) scale(0.7, 1);
}

/*
 * Arrow Turn Right
 */
.hamburger--arrowturn-r.is-active .hamburger-inner {
  transform: rotate(-180deg);
}
.hamburger--arrowturn-r.is-active .hamburger-inner::before {
  transform: translate3d(-8px, 0, 0) rotate(-45deg) scale(0.7, 1);
}
.hamburger--arrowturn-r.is-active .hamburger-inner::after {
  transform: translate3d(-8px, 0, 0) rotate(45deg) scale(0.7, 1);
}

/*
 * Boring
 */
.hamburger--boring .hamburger-inner, .hamburger--boring .hamburger-inner::before, .hamburger--boring .hamburger-inner::after {
  transition-property: none;
}
.hamburger--boring.is-active .hamburger-inner {
  transform: rotate(45deg);
}
.hamburger--boring.is-active .hamburger-inner::before {
  top: 0;
  opacity: 0;
}
.hamburger--boring.is-active .hamburger-inner::after {
  bottom: 0;
  transform: rotate(-90deg);
}

/*
 * Collapse
 */
.hamburger--collapse .hamburger-inner {
  top: auto;
  bottom: 0;
  transition-duration: 0.13s;
  transition-delay: 0.13s;
  transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
}
.hamburger--collapse .hamburger-inner::after {
  top: -16px;
  transition: top 0.2s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), opacity 0.1s linear;
}
.hamburger--collapse .hamburger-inner::before {
  transition: top 0.12s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}
.hamburger--collapse.is-active .hamburger-inner {
  transform: translate3d(0, -8px, 0) rotate(-45deg);
  transition-delay: 0.22s;
  transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
}
.hamburger--collapse.is-active .hamburger-inner::after {
  top: 0;
  opacity: 0;
  transition: top 0.2s cubic-bezier(0.33333, 0, 0.66667, 0.33333), opacity 0.1s 0.22s linear;
}
.hamburger--collapse.is-active .hamburger-inner::before {
  top: 0;
  transform: rotate(-90deg);
  transition: top 0.1s 0.16s cubic-bezier(0.33333, 0, 0.66667, 0.33333), transform 0.13s 0.25s cubic-bezier(0.215, 0.61, 0.355, 1);
}

/*
 * Collapse Reverse
 */
.hamburger--collapse-r .hamburger-inner {
  top: auto;
  bottom: 0;
  transition-duration: 0.13s;
  transition-delay: 0.13s;
  transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
}
.hamburger--collapse-r .hamburger-inner::after {
  top: -16px;
  transition: top 0.2s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), opacity 0.1s linear;
}
.hamburger--collapse-r .hamburger-inner::before {
  transition: top 0.12s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}
.hamburger--collapse-r.is-active .hamburger-inner {
  transform: translate3d(0, -8px, 0) rotate(45deg);
  transition-delay: 0.22s;
  transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
}
.hamburger--collapse-r.is-active .hamburger-inner::after {
  top: 0;
  opacity: 0;
  transition: top 0.2s cubic-bezier(0.33333, 0, 0.66667, 0.33333), opacity 0.1s 0.22s linear;
}
.hamburger--collapse-r.is-active .hamburger-inner::before {
  top: 0;
  transform: rotate(90deg);
  transition: top 0.1s 0.16s cubic-bezier(0.33333, 0, 0.66667, 0.33333), transform 0.13s 0.25s cubic-bezier(0.215, 0.61, 0.355, 1);
}

/*
 * Elastic
 */
.hamburger--elastic .hamburger-inner {
  top: 1.5px;
  transition-duration: 0.275s;
  transition-timing-function: cubic-bezier(0.68, -0.55, 0.265, 1.55);
}
.hamburger--elastic .hamburger-inner::before {
  top: 8px;
  transition: opacity 0.125s 0.275s ease;
}
.hamburger--elastic .hamburger-inner::after {
  top: 16px;
  transition: transform 0.275s cubic-bezier(0.68, -0.55, 0.265, 1.55);
}
.hamburger--elastic.is-active .hamburger-inner {
  transform: translate3d(0, 8px, 0) rotate(135deg);
  transition-delay: 0.075s;
}
.hamburger--elastic.is-active .hamburger-inner::before {
  transition-delay: 0s;
  opacity: 0;
}
.hamburger--elastic.is-active .hamburger-inner::after {
  transform: translate3d(0, -16px, 0) rotate(-270deg);
  transition-delay: 0.075s;
}

/*
 * Elastic Reverse
 */
.hamburger--elastic-r .hamburger-inner {
  top: 1.5px;
  transition-duration: 0.275s;
  transition-timing-function: cubic-bezier(0.68, -0.55, 0.265, 1.55);
}
.hamburger--elastic-r .hamburger-inner::before {
  top: 8px;
  transition: opacity 0.125s 0.275s ease;
}
.hamburger--elastic-r .hamburger-inner::after {
  top: 16px;
  transition: transform 0.275s cubic-bezier(0.68, -0.55, 0.265, 1.55);
}
.hamburger--elastic-r.is-active .hamburger-inner {
  transform: translate3d(0, 8px, 0) rotate(-135deg);
  transition-delay: 0.075s;
}
.hamburger--elastic-r.is-active .hamburger-inner::before {
  transition-delay: 0s;
  opacity: 0;
}
.hamburger--elastic-r.is-active .hamburger-inner::after {
  transform: translate3d(0, -16px, 0) rotate(270deg);
  transition-delay: 0.075s;
}

/*
 * Emphatic
 */
.hamburger--emphatic {
  overflow: hidden;
}
.hamburger--emphatic .hamburger-inner {
  transition: background-color 0.125s 0.175s ease-in;
}
.hamburger--emphatic .hamburger-inner::before {
  left: 0;
  transition: transform 0.125s cubic-bezier(0.6, 0.04, 0.98, 0.335), top 0.05s 0.125s linear, left 0.125s 0.175s ease-in;
}
.hamburger--emphatic .hamburger-inner::after {
  top: 8px;
  right: 0;
  transition: transform 0.125s cubic-bezier(0.6, 0.04, 0.98, 0.335), top 0.05s 0.125s linear, right 0.125s 0.175s ease-in;
}
.hamburger--emphatic.is-active .hamburger-inner {
  transition-delay: 0s;
  transition-timing-function: ease-out;
  background-color: transparent !important;
}
.hamburger--emphatic.is-active .hamburger-inner::before {
  left: -64px;
  top: -64px;
  transform: translate3d(64px, 64px, 0) rotate(45deg);
  transition: left 0.125s ease-out, top 0.05s 0.125s linear, transform 0.125s 0.175s cubic-bezier(0.075, 0.82, 0.165, 1);
}
.hamburger--emphatic.is-active .hamburger-inner::after {
  right: -64px;
  top: -64px;
  transform: translate3d(-64px, 64px, 0) rotate(-45deg);
  transition: right 0.125s ease-out, top 0.05s 0.125s linear, transform 0.125s 0.175s cubic-bezier(0.075, 0.82, 0.165, 1);
}

/*
 * Emphatic Reverse
 */
.hamburger--emphatic-r {
  overflow: hidden;
}
.hamburger--emphatic-r .hamburger-inner {
  transition: background-color 0.125s 0.175s ease-in;
}
.hamburger--emphatic-r .hamburger-inner::before {
  left: 0;
  transition: transform 0.125s cubic-bezier(0.6, 0.04, 0.98, 0.335), top 0.05s 0.125s linear, left 0.125s 0.175s ease-in;
}
.hamburger--emphatic-r .hamburger-inner::after {
  top: 8px;
  right: 0;
  transition: transform 0.125s cubic-bezier(0.6, 0.04, 0.98, 0.335), top 0.05s 0.125s linear, right 0.125s 0.175s ease-in;
}
.hamburger--emphatic-r.is-active .hamburger-inner {
  transition-delay: 0s;
  transition-timing-function: ease-out;
  background-color: transparent !important;
}
.hamburger--emphatic-r.is-active .hamburger-inner::before {
  left: -64px;
  top: 64px;
  transform: translate3d(64px, -64px, 0) rotate(-45deg);
  transition: left 0.125s ease-out, top 0.05s 0.125s linear, transform 0.125s 0.175s cubic-bezier(0.075, 0.82, 0.165, 1);
}
.hamburger--emphatic-r.is-active .hamburger-inner::after {
  right: -64px;
  top: 64px;
  transform: translate3d(-64px, -64px, 0) rotate(45deg);
  transition: right 0.125s ease-out, top 0.05s 0.125s linear, transform 0.125s 0.175s cubic-bezier(0.075, 0.82, 0.165, 1);
}

/*
 * Minus
 */
.hamburger--minus .hamburger-inner::before, .hamburger--minus .hamburger-inner::after {
  transition: bottom 0.08s 0s ease-out, top 0.08s 0s ease-out, opacity 0s linear;
}
.hamburger--minus.is-active .hamburger-inner::before, .hamburger--minus.is-active .hamburger-inner::after {
  opacity: 0;
  transition: bottom 0.08s ease-out, top 0.08s ease-out, opacity 0s 0.08s linear;
}
.hamburger--minus.is-active .hamburger-inner::before {
  top: 0;
}
.hamburger--minus.is-active .hamburger-inner::after {
  bottom: 0;
}

/*
 * Slider
 */
.hamburger--slider .hamburger-inner {
  top: 1.5px;
}
.hamburger--slider .hamburger-inner::before {
  top: 8px;
  transition-property: transform, opacity;
  transition-timing-function: ease;
  transition-duration: 0.15s;
}
.hamburger--slider .hamburger-inner::after {
  top: 16px;
}
.hamburger--slider.is-active .hamburger-inner {
  transform: translate3d(0, 8px, 0) rotate(45deg);
}
.hamburger--slider.is-active .hamburger-inner::before {
  transform: rotate(-45deg) translate3d(-4.5714285714px, -5px, 0);
  opacity: 0;
}
.hamburger--slider.is-active .hamburger-inner::after {
  transform: translate3d(0, -16px, 0) rotate(-90deg);
}

/*
 * Slider Reverse
 */
.hamburger--slider-r .hamburger-inner {
  top: 1.5px;
}
.hamburger--slider-r .hamburger-inner::before {
  top: 8px;
  transition-property: transform, opacity;
  transition-timing-function: ease;
  transition-duration: 0.15s;
}
.hamburger--slider-r .hamburger-inner::after {
  top: 16px;
}
.hamburger--slider-r.is-active .hamburger-inner {
  transform: translate3d(0, 8px, 0) rotate(-45deg);
}
.hamburger--slider-r.is-active .hamburger-inner::before {
  transform: rotate(45deg) translate3d(4.5714285714px, -5px, 0);
  opacity: 0;
}
.hamburger--slider-r.is-active .hamburger-inner::after {
  transform: translate3d(0, -16px, 0) rotate(90deg);
}

/*
 * Spin
 */
.hamburger--spin .hamburger-inner {
  transition-duration: 0.22s;
  transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
}
.hamburger--spin .hamburger-inner::before {
  transition: top 0.1s 0.25s ease-in, opacity 0.1s ease-in;
}
.hamburger--spin .hamburger-inner::after {
  transition: bottom 0.1s 0.25s ease-in, transform 0.22s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}
.hamburger--spin.is-active .hamburger-inner {
  transform: rotate(225deg);
  transition-delay: 0.12s;
  transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
}
.hamburger--spin.is-active .hamburger-inner::before {
  top: 0;
  opacity: 0;
  transition: top 0.1s ease-out, opacity 0.1s 0.12s ease-out;
}
.hamburger--spin.is-active .hamburger-inner::after {
  bottom: 0;
  transform: rotate(-90deg);
  transition: bottom 0.1s ease-out, transform 0.22s 0.12s cubic-bezier(0.215, 0.61, 0.355, 1);
}

/*
 * Spin Reverse
 */
.hamburger--spin-r .hamburger-inner {
  transition-duration: 0.22s;
  transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
}
.hamburger--spin-r .hamburger-inner::before {
  transition: top 0.1s 0.25s ease-in, opacity 0.1s ease-in;
}
.hamburger--spin-r .hamburger-inner::after {
  transition: bottom 0.1s 0.25s ease-in, transform 0.22s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}
.hamburger--spin-r.is-active .hamburger-inner {
  transform: rotate(-225deg);
  transition-delay: 0.12s;
  transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
}
.hamburger--spin-r.is-active .hamburger-inner::before {
  top: 0;
  opacity: 0;
  transition: top 0.1s ease-out, opacity 0.1s 0.12s ease-out;
}
.hamburger--spin-r.is-active .hamburger-inner::after {
  bottom: 0;
  transform: rotate(90deg);
  transition: bottom 0.1s ease-out, transform 0.22s 0.12s cubic-bezier(0.215, 0.61, 0.355, 1);
}

/*
 * Spring
 */
.hamburger--spring .hamburger-inner {
  top: 1.5px;
  transition: background-color 0s 0.13s linear;
}
.hamburger--spring .hamburger-inner::before {
  top: 8px;
  transition: top 0.1s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}
.hamburger--spring .hamburger-inner::after {
  top: 16px;
  transition: top 0.2s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}
.hamburger--spring.is-active .hamburger-inner {
  transition-delay: 0.22s;
  background-color: transparent !important;
}
.hamburger--spring.is-active .hamburger-inner::before {
  top: 0;
  transition: top 0.1s 0.15s cubic-bezier(0.33333, 0, 0.66667, 0.33333), transform 0.13s 0.22s cubic-bezier(0.215, 0.61, 0.355, 1);
  transform: translate3d(0, 8px, 0) rotate(45deg);
}
.hamburger--spring.is-active .hamburger-inner::after {
  top: 0;
  transition: top 0.2s cubic-bezier(0.33333, 0, 0.66667, 0.33333), transform 0.13s 0.22s cubic-bezier(0.215, 0.61, 0.355, 1);
  transform: translate3d(0, 8px, 0) rotate(-45deg);
}

/*
 * Spring Reverse
 */
.hamburger--spring-r .hamburger-inner {
  top: auto;
  bottom: 0;
  transition-duration: 0.13s;
  transition-delay: 0s;
  transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
}
.hamburger--spring-r .hamburger-inner::after {
  top: -16px;
  transition: top 0.2s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), opacity 0s linear;
}
.hamburger--spring-r .hamburger-inner::before {
  transition: top 0.1s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}
.hamburger--spring-r.is-active .hamburger-inner {
  transform: translate3d(0, -8px, 0) rotate(-45deg);
  transition-delay: 0.22s;
  transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
}
.hamburger--spring-r.is-active .hamburger-inner::after {
  top: 0;
  opacity: 0;
  transition: top 0.2s cubic-bezier(0.33333, 0, 0.66667, 0.33333), opacity 0s 0.22s linear;
}
.hamburger--spring-r.is-active .hamburger-inner::before {
  top: 0;
  transform: rotate(90deg);
  transition: top 0.1s 0.15s cubic-bezier(0.33333, 0, 0.66667, 0.33333), transform 0.13s 0.22s cubic-bezier(0.215, 0.61, 0.355, 1);
}

/*
 * Stand
 */
.hamburger--stand .hamburger-inner {
  transition: transform 0.075s 0.15s cubic-bezier(0.55, 0.055, 0.675, 0.19), background-color 0s 0.075s linear;
}
.hamburger--stand .hamburger-inner::before {
  transition: top 0.075s 0.075s ease-in, transform 0.075s 0s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}
.hamburger--stand .hamburger-inner::after {
  transition: bottom 0.075s 0.075s ease-in, transform 0.075s 0s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}
.hamburger--stand.is-active .hamburger-inner {
  transform: rotate(90deg);
  background-color: transparent !important;
  transition: transform 0.075s 0s cubic-bezier(0.215, 0.61, 0.355, 1), background-color 0s 0.15s linear;
}
.hamburger--stand.is-active .hamburger-inner::before {
  top: 0;
  transform: rotate(-45deg);
  transition: top 0.075s 0.1s ease-out, transform 0.075s 0.15s cubic-bezier(0.215, 0.61, 0.355, 1);
}
.hamburger--stand.is-active .hamburger-inner::after {
  bottom: 0;
  transform: rotate(45deg);
  transition: bottom 0.075s 0.1s ease-out, transform 0.075s 0.15s cubic-bezier(0.215, 0.61, 0.355, 1);
}

/*
 * Stand Reverse
 */
.hamburger--stand-r .hamburger-inner {
  transition: transform 0.075s 0.15s cubic-bezier(0.55, 0.055, 0.675, 0.19), background-color 0s 0.075s linear;
}
.hamburger--stand-r .hamburger-inner::before {
  transition: top 0.075s 0.075s ease-in, transform 0.075s 0s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}
.hamburger--stand-r .hamburger-inner::after {
  transition: bottom 0.075s 0.075s ease-in, transform 0.075s 0s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}
.hamburger--stand-r.is-active .hamburger-inner {
  transform: rotate(-90deg);
  background-color: transparent !important;
  transition: transform 0.075s 0s cubic-bezier(0.215, 0.61, 0.355, 1), background-color 0s 0.15s linear;
}
.hamburger--stand-r.is-active .hamburger-inner::before {
  top: 0;
  transform: rotate(-45deg);
  transition: top 0.075s 0.1s ease-out, transform 0.075s 0.15s cubic-bezier(0.215, 0.61, 0.355, 1);
}
.hamburger--stand-r.is-active .hamburger-inner::after {
  bottom: 0;
  transform: rotate(45deg);
  transition: bottom 0.075s 0.1s ease-out, transform 0.075s 0.15s cubic-bezier(0.215, 0.61, 0.355, 1);
}

/*
 * Squeeze
 */
.hamburger--squeeze .hamburger-inner {
  transition-duration: 0.075s;
  transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
}
.hamburger--squeeze .hamburger-inner::before {
  transition: top 0.075s 0.12s ease, opacity 0.075s ease;
}
.hamburger--squeeze .hamburger-inner::after {
  transition: bottom 0.075s 0.12s ease, transform 0.075s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}
.hamburger--squeeze.is-active .hamburger-inner {
  transform: rotate(45deg);
  transition-delay: 0.12s;
  transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
}
.hamburger--squeeze.is-active .hamburger-inner::before {
  top: 0;
  opacity: 0;
  transition: top 0.075s ease, opacity 0.075s 0.12s ease;
}
.hamburger--squeeze.is-active .hamburger-inner::after {
  bottom: 0;
  transform: rotate(-90deg);
  transition: bottom 0.075s ease, transform 0.075s 0.12s cubic-bezier(0.215, 0.61, 0.355, 1);
}

/*
 * Vortex
 */
.hamburger--vortex .hamburger-inner {
  transition-duration: 0.2s;
  transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
}
.hamburger--vortex .hamburger-inner::before, .hamburger--vortex .hamburger-inner::after {
  transition-duration: 0s;
  transition-delay: 0.1s;
  transition-timing-function: linear;
}
.hamburger--vortex .hamburger-inner::before {
  transition-property: top, opacity;
}
.hamburger--vortex .hamburger-inner::after {
  transition-property: bottom, transform;
}
.hamburger--vortex.is-active .hamburger-inner {
  transform: rotate(765deg);
  transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
}
.hamburger--vortex.is-active .hamburger-inner::before, .hamburger--vortex.is-active .hamburger-inner::after {
  transition-delay: 0s;
}
.hamburger--vortex.is-active .hamburger-inner::before {
  top: 0;
  opacity: 0;
}
.hamburger--vortex.is-active .hamburger-inner::after {
  bottom: 0;
  transform: rotate(90deg);
}

/*
 * Vortex Reverse
 */
.hamburger--vortex-r .hamburger-inner {
  transition-duration: 0.2s;
  transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
}
.hamburger--vortex-r .hamburger-inner::before, .hamburger--vortex-r .hamburger-inner::after {
  transition-duration: 0s;
  transition-delay: 0.1s;
  transition-timing-function: linear;
}
.hamburger--vortex-r .hamburger-inner::before {
  transition-property: top, opacity;
}
.hamburger--vortex-r .hamburger-inner::after {
  transition-property: bottom, transform;
}
.hamburger--vortex-r.is-active .hamburger-inner {
  transform: rotate(-765deg);
  transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
}
.hamburger--vortex-r.is-active .hamburger-inner::before, .hamburger--vortex-r.is-active .hamburger-inner::after {
  transition-delay: 0s;
}
.hamburger--vortex-r.is-active .hamburger-inner::before {
  top: 0;
  opacity: 0;
}
.hamburger--vortex-r.is-active .hamburger-inner::after {
  bottom: 0;
  transform: rotate(-90deg);
}

.home-banner {
  background: black;
  color: white;
  min-height: 80vh;
  display: flex;
  overflow: hidden;
  align-items: center;
  justify-content: center;
  background-image: url("/assets/img/home.png");
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
}
@media (max-width: 991.98px) {
  .home-banner {
    height: 600px;
    min-height: 0;
  }
}
.home-banner .h4 {
  letter-spacing: 8px;
}
.home-banner h1 {
  font-weight: 700;
  font-size: calc(2rem + 9vw);
}
@media (min-width: 1200px) {
  .home-banner h1 {
    font-size: 8.75rem;
  }
}
.home-banner .h4 {
  padding-bottom: 0rem;
}

.callout-navigation {
  max-width: 1100px;
  margin: 0 auto;
  margin-top: -70px;
  position: relative;
  z-index: 5;
}
.callout-navigation.staff h4 {
  padding: 0;
  margin: 0;
  font-weight: 400;
  padding-right: 2em;
  letter-spacing: 0.5px;
}
.callout-navigation.staff ::-webkit-input-placeholder {
  color: white;
}
.callout-navigation.staff :-moz-placeholder {
  color: white;
}
.callout-navigation.staff ::-moz-placeholder {
  color: white;
}
.callout-navigation.staff :-ms-input-placeholder {
  color: white;
}
.callout-navigation.staff form {
  margin: 5px 0;
}
.callout-navigation.staff form input,
.callout-navigation.staff form select {
  margin: 0 20px;
  border: 1px solid white;
  background: transparent;
  border-radius: 0;
  color: white;
  text-transform: uppercase;
  padding: 12px 20px;
  text-indent: 0;
  letter-spacing: 1px;
  height: auto;
  font-weight: 400;
  font-size: 0.9375rem;
  line-height: 1;
}
.callout-navigation.staff form option {
  color: black;
}
.callout-navigation.inner {
  width: 100%;
  max-width: 100%;
  margin-bottom: -35px;
  margin-top: -35px;
}
.callout-navigation.inner ul {
  justify-content: space-evenly;
}
.callout-navigation.inner ul li {
  font-weight: 700;
  font-size: 1rem;
  min-height: 70px;
  flex: initial;
  text-align: center;
  display: flex;
  flex-direction: row;
  flex-grow: 1 !important;
}
.callout-navigation.inner ul li:after {
  position: static;
  height: 50px;
}
@media (max-width: 991.98px) {
  .callout-navigation {
    margin-top: -30px;
  }
}
.callout-navigation ul {
  display: flex;
  align-items: center;
  justify-content: space-between;
  background: #000b17;
  box-shadow: inset 0px -50px 20px rgba(0, 0, 0, 0.2);
}
.callout-navigation ul li {
  flex: 1;
  text-align: center;
  font-weight: 700;
  font-size: calc(1.25625rem + 0.075vw);
}
@media (min-width: 1200px) {
  .callout-navigation ul li {
    font-size: 1.3125rem;
  }
}
.callout-navigation ul li {
  min-height: 100px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  font-weight: 700;
  position: relative;
  transition: all 0.2s ease-in;
}
.callout-navigation ul li a {
  display: flex;
  width: 100%;
  height: 100%;
  flex: 1;
  align-items: center;
  justify-content: center;
}
.callout-navigation ul li:hover {
  background: #182866;
}
.callout-navigation ul li:hover a {
  color: #fefcf3;
}
.callout-navigation ul li:after {
  width: 1px;
  height: 60%;
  top: 20%;
  right: 0;
  background: #6e1938;
  content: "";
  position: absolute;
}
.callout-navigation ul li:last-child:after {
  display: none;
}
@media (max-width: 991.98px) {
  .callout-navigation ul li {
    min-height: 60px;
    font-weight: 700;
    font-size: 1rem;
  }
}
.callout-navigation ul li span {
  display: block;
  font-size: 0.8em;
  font-weight: 400;
}
.callout-navigation ul li a {
  width: 100%;
  font-weight: 600;
  color: white;
  text-decoration: none;
  letter-spacing: 0;
}

@media (max-width: 991.98px) {
  .callout-navigation.inner {
    margin-bottom: 2em;
    z-index: 20;
    margin-top: -5px;
  }
  .callout-navigation.inner nav {
    position: relative;
    z-index: 2;
  }
  .callout-navigation.inner nav ul {
    display: none;
  }
}

.quote-block img {
  vertical-align: top;
}
.quote-block blockquote span {
  font-weight: 700;
  font-size: calc(1.4375rem + 2.25vw);
}
@media (min-width: 1200px) {
  .quote-block blockquote span {
    font-size: 3.125rem;
  }
}
.quote-block blockquote span {
  color: #e40046;
  font-weight: 800;
  line-height: 1;
  text-transform: uppercase;
}
.quote-block blockquote img {
  padding-bottom: 1.25rem;
  margin-top: 20px;
}
.quote-block blockquote p {
  line-height: 1.5;
}
.quote-block blockquote p strong {
  display: block;
}
.quote-block blockquote p small {
  display: block;
  padding-top: 20px;
  font-size: 0.7em;
}

.icon-block {
  padding-top: calc(1.4375rem + 2.25vw);
}
@media (min-width: 1200px) {
  .icon-block {
    padding-top: 3.125rem;
  }
}
.icon-block {
  padding-bottom: calc(1.4375rem + 2.25vw);
}
@media (min-width: 1200px) {
  .icon-block {
    padding-bottom: 3.125rem;
  }
}
.icon-block img {
  display: inline-block;
}
.icon-block ul {
  display: flex;
  text-align: center;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
}
.icon-block ul.icon-columns-4 li {
  width: 25%;
}
.icon-block ul.icon-columns-2 li {
  width: 50%;
}
.icon-block a {
  display: inline-block;
  text-decoration: none;
  color: black;
}
.icon-block li {
  width: 25%;
  display: flex;
  flex-direction: column;
  margin-bottom: 40px;
}
@media (max-width: 991.98px) {
  .icon-block li {
    flex: initial;
    padding-top: 1.25rem;
    padding-bottom: 1.25rem;
    width: 50%;
  }
}
.icon-block li span {
  max-width: 150px;
  margin: 0 auto;
  display: inline-block;
  text-align: center;
  line-height: 1.2;
}
.icon-block li img {
  height: 100px;
  width: auto;
  margin-bottom: 20px;
}

@media (max-width: 991.98px) {
  .content-block {
    overflow: hidden;
  }
}

.stat-icons header {
  margin-bottom: calc(1.275rem + 0.3vw);
}
@media (min-width: 1200px) {
  .stat-icons header {
    margin-bottom: 1.5rem;
  }
}
.stat-icons header {
  margin-bottom: calc(1.275rem + 0.3vw);
}
@media (min-width: 1200px) {
  .stat-icons header {
    margin-bottom: 1.5rem;
  }
}
.stat-icons header {
  position: relative;
}
.stat-icons header:after {
  width: 200px;
  height: 1px;
  background: #f088b6;
  content: "";
  position: absolute;
  left: 50%;
  bottom: 0;
  transform: translate(-50%, 0);
}
.stat-icons ul {
  display: flex;
  flex-wrap: wrap;
}
.stat-icons ul li {
  width: 50%;
  text-align: center;
}
.stat-icons ul li img {
  margin-bottom: 5px;
}
.stat-icons ul li h3 {
  padding-bottom: 0;
}

table {
  border: 1px solid #ccc;
  margin-bottom: 30px;
}

table p {
  padding: 0;
  font-weight: 400;
  font-size: 0.8125rem;
}

table th,
table td {
  padding: 10px;
}

tr:nth-child(odd) {
  background: #efefef;
}

table thead th {
  background: black;
  font-weight: bold;
  color: white;
  font-weight: 400;
  font-size: 1rem;
}

table thead th p {
  font-weight: 400;
  font-size: 1rem;
}

.inner-banner {
  background: #182866;
  min-height: 38vh;
  display: flex;
  align-items: center;
  justify-content: start;
  color: white;
  background-size: cover;
  text-align: center;
  background-position: center;
  position: relative;
}
@media (max-width: 991.98px) {
  .inner-banner {
    flex-direction: column;
    min-height: 100px;
  }
}
.inner-banner h1 {
  padding-bottom: 10px;
}
.inner-banner p {
  line-height: 1.6;
}
.inner-banner__content {
  position: relative;
  z-index: 10;
  margin: 0 auto;
  text-align: center;
}
@media (max-width: 991.98px) {
  .inner-banner__content {
    padding: 20px 0;
    background: #182866;
  }
}
.inner-banner img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
@media (max-width: 991.98px) {
  .inner-banner img {
    min-height: 200px;
    position: static;
  }
}
.inner-banner h1 {
  text-transform: none;
}

.row__navigation {
  display: flex;
  justify-content: end;
}
.row__navigation li {
  padding: 10px;
}

.image-group {
  position: relative;
  display: inline-block;
}
.image-group .image-accompany {
  position: absolute;
  bottom: -8%;
  right: -12%;
}

.intro p {
  font-weight: 700;
  font-size: calc(1.2625rem + 0.15vw);
}
@media (min-width: 1200px) {
  .intro p {
    font-size: 1.375rem;
  }
}
.intro p {
  font-weight: bold;
  line-height: 1.8;
}

.blockquote-image {
  position: relative;
  display: inline-block;
  width: 100%;
  padding-right: 5%;
}
.blockquote-image img:first-child {
  width: 100%;
}
.blockquote-image .quote-icon {
  position: Absolute;
  bottom: 5%;
  right: 0%;
}

.gift-voucher-container {
  padding: 2em;
  margin-bottom: 20px;
}

iframe {
  max-width: 100%;
}

.banner {
  min-height: 90vh;
  position: relative;
  width: 100%;
  flex-direction: column;
  align-items: start;
  justify-content: end;
  padding: 2em 0;
}
.banner h4 {
  padding-bottom: 0;
}
@media (max-width: 991.98px) {
  .banner {
    min-height: 420px;
  }
}
.banner__image, .banner__image img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.banner__content {
  position: relative;
  color: white;
  width: 100%;
}
.banner__content .col-md-12 {
  max-width: 600px;
}

@media (max-width: 991.98px) {
  .banner-block h4 {
    font-weight: 700;
    font-size: 1rem;
  }
  .banner-block img,
  .banner-block .banner__image {
    position: static;
  }
  .banner-block .banner {
    padding-top: 0;
    padding-bottom: 0;
  }
  .banner-block .banner__content {
    background: #182866;
    padding-top: 20px;
    padding-bottom: 20px;
  }
}

.mobile-inner-nav {
  background: #000b17;
  display: none;
  text-align: center;
  max-width: 100%;
  position: sticky;
  top: 130px;
  margin: 0 auto;
  z-index: 1000;
  padding: 1em;
}
@media (max-width: 991.98px) {
  .mobile-inner-nav {
    display: block;
    display: flex;
    align-items: center;
    justify-content: center;
  }
}
.mobile-inner-nav select {
  padding: 0.5em;
}
.mobile-inner-nav label {
  padding-bottom: 0px;
  margin-bottom: 0px;
  color: white;
  width: auto;
  margin-right: 10px;
}

@media (max-width: 991.98px) {
  .callout-navigation.inner {
    position: sticky;
    top: 106px;
  }
  .callout-navigation.inner .col-md-12 {
    padding: 0;
  }
}

.mobile-image {
  display: none;
}
@media (max-width: 991.98px) {
  .mobile-image {
    display: block;
  }
}

.desktop-image {
  display: block;
}
@media (max-width: 991.98px) {
  .desktop-image {
    display: none;
  }
}

@media (min-width: 991px) {
  .inner-banner__content {
    text-align: left;
    align-items: end;
    float: left;
    text-align: left;
    justify-content: start;
  }
  .breadcrumbs {
    text-align: left;
    justify-content: start;
  }
  .inner-banner {
    align-items: end;
    padding-bottom: 5em;
    justify-content: start;
  }
}
@media (max-width: 991.98px) {
  .page--events .banner-carousel__image {
    position: static !important;
  }
  .page--events .banner-carousel__slide {
    aspect-ratio: initial !important;
  }
  .page--events .banner-carousel__slide {
    flex-direction: column;
  }
  .page--events .banner-carousel__event-info {
    background: white !important;
    width: 100%;
  }
  .page--events .banner-carousel__event-info p, .page--events .banner-carousel__event-info h2 {
    color: black !important;
    padding-bottom: 0;
  }
  .page--events .splide__arrow svg {
    fill: black !important;
  }
  .page--events .banner-carousel__event-date, .page--events .banner-carousel__event-venue {
    font-size: 16px !important;
    padding-bottom: 0 !important;
  }
  .page--events .banner-carousel__slide {
    background: white;
  }
  .page--events .banner-carousel__title {
    color: black !important;
  }
  .page--events .splide__slide img {
    height: 200px;
  }
  .page--events .banner-carousel__frame {
    background: transparent !important;
    box-shadow: 0px 20px 20px rgba(0, 0, 0, 0.13);
  }
  .page--events .banner-carousel {
    margin-top: 0;
    padding-top: 0 !important;
    background: transparent;
  }
  .page--events .banner-carousel__splide .splide__pagination .splide__pagination__page {
    margin-top: 5px !important;
    background: black;
    top: 15px;
  }
  .page--events .banner-carousel__splide .splide__pagination .splide__pagination__page.is-active {
    background: #e40046;
  }
}
.events-hero {
  position: relative;
  background: radial-gradient(ellipse at 50% 0%, #e40046 0%, transparent 70%), radial-gradient(ellipse at 0% 100%, #906294 0%, transparent 70%), radial-gradient(ellipse at 100% 100%, #cba058 0%, transparent 70%), #e40046;
  background-size: 300% 300%;
  animation: banner-gradient-shift 8s ease infinite;
  color: white;
  text-align: center;
  padding-top: calc(2.3125rem + 12.75vw);
}
@media (min-width: 1200px) {
  .events-hero {
    padding-top: 11.875rem;
  }
}
.events-hero {
  margin-bottom: 20px;
  padding-bottom: 10px;
}
.events-hero .flourish-c {
  width: 200px;
  opacity: 0.25;
}
@media (max-width: 767.98px) {
  .events-hero .flourish-c {
    width: 120px;
  }
}

.events-hero__title {
  position: relative;
  z-index: 2;
  font-weight: 700;
  font-size: calc(1.3875rem + 1.65vw);
}
@media (min-width: 1200px) {
  .events-hero__title {
    font-size: 2.625rem;
  }
}
.events-hero__title {
  margin: 0;
  color: white;
}

.events-filter-bar {
  z-index: 99;
  padding: calc(1.3125rem + 0.75vw) 0 0 0;
}
@media (min-width: 1200px) {
  .events-filter-bar {
    padding: 1.875rem 0 0 0;
  }
}
@media (max-width: 991.98px) {
  .events-filter-bar {
    position: relative;
    top: auto;
    margin-top: -1.25rem;
  }
}

.events-filter-bar__form {
  display: flex;
  align-items: center;
  gap: 12px;
  border-top: 1px solid white;
  padding: 0.75rem;
  padding-left: 0rem;
  padding-right: 0rem;
}
@media (max-width: 991.98px) {
  .events-filter-bar__form {
    flex-wrap: wrap;
    border-radius: 0px;
    gap: 8px;
    padding: 0.75rem;
  }
}

.events-filter-bar__label {
  font-weight: 700;
  font-size: calc(1.325rem + 0.9vw);
}
@media (min-width: 1200px) {
  .events-filter-bar__label {
    font-size: 2rem;
  }
}
.events-filter-bar__label {
  color: #fefcf3;
  white-space: nowrap;
  flex-shrink: 0;
}
@media (max-width: 991.98px) {
  .events-filter-bar__label {
    width: 100%;
  }
}

.events-filter-bar__input,
.events-filter-bar__select {
  font-weight: 400;
  font-size: 1rem;
  font-weight: bold;
  border-radius: 0px;
  padding: 0px 16px;
  background: #e40046;
  border: 0 !important;
  color: #000b17;
  appearance: none;
  margin-bottom: 0;
  height: 2.7rem !important;
  line-height: 2.7rem !important;
  min-width: 0;
  flex: 1;
  box-shadow: none !important;
  color: white !important;
}
.events-filter-bar__input::placeholder,
.events-filter-bar__select::placeholder {
  color: #fefcf3;
}
@media (max-width: 991.98px) {
  .events-filter-bar__input,
  .events-filter-bar__select {
    flex: 1 1 calc(50% - 4px);
    min-width: 0;
  }
}

.events-filter-bar__input {
  flex: 1 1 auto;
  background-repeat: no-repeat;
  background-position: right 14px center;
  padding-right: 36px;
}
.events-filter-bar__input::placeholder {
  color: #fefcf3;
}

.events-filter-bar__select {
  padding-right: 32px;
  cursor: pointer;
}
@media (max-width: 991.98px) {
  .events-filter-bar__select {
    flex: 1 1 calc(50% - 4px);
  }
}

.events-calendar-picker {
  position: relative;
  flex: 1;
}
@media (max-width: 991.98px) {
  .events-calendar-picker {
    flex: 1 1 calc(50% - 4px);
  }
}

.events-calendar-picker__trigger {
  display: flex;
  align-items: center;
  gap: 8px;
  font-weight: 400;
  font-size: 1rem;
  font-weight: bold;
  color: white;
  padding: 13px 16px;
  background: #b80038;
  border: none;
  cursor: pointer;
  white-space: nowrap;
  width: 100%;
  transition: background-color 0.2s;
}
.events-calendar-picker__trigger i {
  color: #fefcf3;
  font-weight: 400;
  font-size: 1rem;
}
.events-calendar-picker__trigger:hover {
  background: rgb(197.4, 0, 60.6052631579);
}

.events-calendar-backdrop {
  display: none;
  position: fixed;
  inset: 0;
  z-index: 900;
  background: rgba(0, 0, 0, 0.5);
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
  opacity: 0;
  transition: opacity 0.25s ease;
}
.events-calendar-backdrop--open {
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 1;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
}

.events-calendar-picker__panel {
  display: none;
  position: relative;
  width: 380px;
  background: white;
  border-radius: 20px;
  box-shadow: 0 16px 64px rgba(0, 0, 0, 0.25);
  padding: 28px;
  z-index: 901;
  opacity: 0;
  transform: scale(0.95) translateY(12px);
  transition: opacity 0.25s ease, transform 0.25s ease;
}
.events-calendar-backdrop--open .events-calendar-picker__panel {
  display: block;
  opacity: 1;
  transform: scale(1) translateY(0);
}
@media (max-width: 767.98px) {
  .events-calendar-picker__panel {
    width: calc(100vw - 32px);
  }
}

.events-calendar-picker__shortcuts {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-bottom: 0.75rem;
}

.events-calendar-picker__shortcut {
  font-weight: 700;
  font-size: 0.75rem;
  border: 1px solid #f3f3f3;
  border-radius: 50px;
  padding: 5px 12px;
  background: white;
  color: #000b17;
  cursor: pointer;
  transition: all 0.2s;
  white-space: nowrap;
}
.events-calendar-picker__shortcut:hover {
  border-color: #e40046;
  color: #e40046;
}
.events-calendar-picker__shortcut--active {
  background: #e40046;
  border-color: #e40046;
  color: white;
}

.events-calendar-picker__divider {
  height: 1px;
  background: #f3f3f3;
  margin-bottom: 0.75rem;
}

.events-calendar-picker__range-hint {
  font-weight: 400;
  font-size: 0.75rem;
  color: #909090;
  text-align: center;
  margin-bottom: 0.75rem;
}

.events-calendar-picker__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 1rem;
}

.events-calendar-picker__month-year {
  font-weight: 700;
  font-size: 1rem;
  color: #000b17;
}

.events-calendar-picker__nav {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  border: none;
  border-radius: 50%;
  background: #f3f3f3;
  color: #000b17;
  cursor: pointer;
  transition: background-color 0.2s;
}
.events-calendar-picker__nav:hover {
  background: rgb(222.6, 222.6, 222.6);
}
.events-calendar-picker__nav i {
  font-weight: 400;
  font-size: 0.75rem;
}

.events-calendar-picker__grid {
  width: 100%;
  border-collapse: separate;
  border-spacing: 2px;
  table-layout: fixed;
}
.events-calendar-picker__grid th {
  font-weight: 700;
  font-size: 0.6875rem;
  color: #909090;
  text-align: center;
  padding-bottom: 8px;
  font-weight: 600;
}
.events-calendar-picker__grid td {
  text-align: center;
  padding: 0;
}

.events-calendar-picker__day {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  margin: 0 auto;
  border: none;
  border-radius: 50%;
  background: transparent;
  font-weight: 400;
  font-size: 0.8125rem;
  color: #000b17;
  cursor: pointer;
  position: relative;
  transition: background-color 0.15s, color 0.15s;
}
.events-calendar-picker__day:hover {
  background: #f3f3f3;
}
.events-calendar-picker__day--has-event {
  font-weight: 700;
}
.events-calendar-picker__day--has-event::after {
  content: "";
  position: absolute;
  bottom: 2px;
  left: 50%;
  transform: translateX(-50%);
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: #e40046;
}
.events-calendar-picker__day--today {
  background: #f3f3f3;
  font-weight: 700;
}
.events-calendar-picker__day--in-range {
  background: rgba(228, 0, 70, 0.12);
  color: #e40046;
  font-weight: 600;
}
.events-calendar-picker__day--in-range::after {
  background: #e40046;
}
.events-calendar-picker__day--range-start, .events-calendar-picker__day--range-end {
  background: #e40046;
  color: white;
  font-weight: 700;
}
.events-calendar-picker__day--range-start::after, .events-calendar-picker__day--range-end::after {
  background: white;
}

.events-calendar-picker__cell--in-range {
  background: rgba(228, 0, 70, 0.08);
}

.events-calendar-picker__cell--range-start {
  background: linear-gradient(90deg, transparent 50%, rgba(228, 0, 70, 0.08) 50%);
}

.events-calendar-picker__cell--range-end {
  background: linear-gradient(90deg, rgba(228, 0, 70, 0.08) 50%, transparent 50%);
}

.events-calendar-picker__cell--range-start.events-calendar-picker__cell--range-end {
  background: transparent;
}

.events-calendar-picker__footer {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  margin-top: 0.75rem;
  padding-top: 12px;
  border-top: 1px solid #f3f3f3;
}

.events-calendar-picker__apply {
  font-weight: 700;
  font-size: 0.8125rem;
  background: #e40046;
  color: white;
  border: none;
  border-radius: 50px;
  padding: 6px 20px;
  cursor: pointer;
  transition: background-color 0.2s;
}
.events-calendar-picker__apply:hover {
  background: rgb(187.2, 0, 57.4736842105);
}

.events-calendar-picker__clear {
  font-weight: 400;
  font-size: 0.8125rem;
  color: #e40046;
  background: none;
  border: none;
  cursor: pointer;
  padding: 4px 8px;
}
.events-calendar-picker__clear:hover {
  text-decoration: underline;
}

.events-filter-trigger {
  position: relative;
  flex: 1;
}
@media (max-width: 991.98px) {
  .events-filter-trigger {
    flex: 1 1 calc(50% - 4px);
  }
}

.events-filter-trigger__btn {
  display: flex;
  align-items: center;
  gap: 8px;
  font-weight: 400;
  font-size: 1rem;
  font-weight: bold;
  color: white;
  padding: 13px 16px;
  background: #b80038;
  border: none;
  cursor: pointer;
  white-space: nowrap;
  width: 100%;
  transition: background-color 0.2s;
}
.events-filter-trigger__btn i {
  font-weight: 400;
  font-size: 0.875rem;
}
.events-filter-trigger__btn:hover {
  background: rgb(197.4, 0, 60.6052631579);
}
.events-filter-trigger__btn--active {
  background: #000b17;
}
.events-filter-trigger__btn--active:hover {
  background: rgb(51.5, 51.5, 51.5);
}

.events-filter-trigger__label {
  overflow: hidden;
  text-overflow: ellipsis;
}

.events-filter-trigger__clear {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.25);
  font-weight: 400;
  font-size: 0.625rem;
  cursor: pointer;
  transition: background-color 0.2s;
  flex-shrink: 0;
}
.events-filter-trigger__clear:hover {
  background: rgba(255, 255, 255, 0.5);
}

.events-calendar-picker__trigger--active {
  background: #000b17;
}
.events-calendar-picker__trigger--active:hover {
  background: rgb(51.5, 51.5, 51.5);
}

.events-filter-backdrop {
  display: none;
  position: fixed;
  inset: 0;
  z-index: 900;
  background: rgba(0, 0, 0, 0.5);
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
  opacity: 0;
  transition: opacity 0.25s ease;
}
.events-filter-backdrop--open {
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 1;
}

.events-filter-popup {
  position: relative;
  background: white;
  border-radius: 20px;
  box-shadow: 0 16px 64px rgba(0, 0, 0, 0.25);
  z-index: 901;
  opacity: 0;
  transform: scale(0.95) translateY(12px);
  transition: opacity 0.25s ease, transform 0.25s ease;
  max-height: 90vh;
  overflow-y: auto;
}
.events-filter-backdrop--open .events-filter-popup {
  opacity: 1;
  transform: scale(1) translateY(0);
}
@media (max-width: 767.98px) {
  .events-filter-popup {
    width: calc(100vw - 32px);
    max-height: 85vh;
  }
}

.events-filter-popup__close {
  position: absolute;
  top: 14px;
  right: 14px;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  border-radius: 50%;
  border: none;
  background: #f3f3f3;
  color: #000b17;
  cursor: pointer;
  font-weight: 400;
  font-size: 0.875rem;
  transition: background-color 0.2s;
  z-index: 2;
}
.events-filter-popup__close:hover {
  background: rgb(217.5, 217.5, 217.5);
}

.events-search-popup {
  width: 680px;
  padding: calc(1.325rem + 0.9vw);
}
@media (min-width: 1200px) {
  .events-search-popup {
    padding: 2rem;
  }
}
.events-search-popup {
  padding-top: calc(1.3rem + 0.6vw);
}
@media (min-width: 1200px) {
  .events-search-popup {
    padding-top: 1.75rem;
  }
}
@media (max-width: 767.98px) {
  .events-search-popup {
    width: 95vw;
  }
}

.events-search-popup__input-row {
  display: flex;
  align-items: center;
  gap: 8px;
}
.events-search-popup__input-row .search-slider--filter {
  flex: 1;
  min-width: 0;
}

.events-search-popup__input {
  width: 100%;
  font-weight: 400;
  font-size: 1.125rem;
  border: 2px solid #f3f3f3;
  border-radius: 12px;
  padding: 12px 16px;
  background: white;
  color: #000b17;
  outline: none;
  transition: border-color 0.2s;
}
.events-search-popup__input:focus {
  border-color: #e40046;
}
.events-search-popup__input::placeholder {
  color: #909090;
}

.events-search-popup__submit {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  border-radius: 12px;
  border: none;
  background: #e40046;
  color: white;
  cursor: pointer;
  flex-shrink: 0;
  font-weight: 400;
  font-size: 1.125rem;
  transition: background-color 0.2s;
}
.events-search-popup__submit:hover {
  background: rgb(187.2, 0, 57.4736842105);
}

.events-search-popup__results {
  margin-top: 0.75rem;
  max-height: 400px;
  overflow-y: auto;
}

.events-search-popup__result {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 0.625rem;
  border-radius: 10px;
  text-decoration: none;
  color: #000b17;
  transition: background-color 0.15s;
}
.events-search-popup__result:hover {
  background: #f3f3f3;
}
.events-search-popup__result--page {
  background: rgba(228, 0, 70, 0.06);
  margin-bottom: 0.25rem;
}
.events-search-popup__result--page:hover {
  background: rgba(228, 0, 70, 0.12);
}

.events-search-popup__result-image {
  width: 48px;
  height: 48px;
  border-radius: 8px;
  object-fit: cover;
  flex-shrink: 0;
}

.events-search-popup__result-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  border-radius: 8px;
  background: #f3f3f3;
  color: #e40046;
  flex-shrink: 0;
  font-weight: 400;
  font-size: 1.125rem;
}

.events-search-popup__result-text {
  min-width: 0;
}
.events-search-popup__result-text strong {
  display: block;
  font-weight: 700;
  font-size: 0.875rem;
  color: #000b17;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.events-search-popup__result-text span {
  display: block;
  font-weight: 400;
  font-size: 0.75rem;
  color: #909090;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.events-search-popup__pills {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  padding: 0.5rem 0.625rem;
}

.events-search-popup__pill {
  font-weight: 700;
  font-size: 0.6875rem;
  border-radius: 50px;
  padding: 3px 10px;
  color: white;
}
.events-search-popup__pill--date {
  background: #e40046;
}
.events-search-popup__pill--genre {
  background: #000b17;
}
.events-search-popup__pill--accessibility {
  background: #0b4052;
}

.events-search-popup__no-results {
  font-weight: 400;
  font-size: 0.875rem;
  color: #909090;
  text-align: center;
  padding: 1.25rem;
}

.events-search-popup__fuzzy {
  font-weight: 400;
  font-size: 0.75rem;
  color: #909090;
  padding: 0.25rem 0.625rem;
}

.events-search-popup__view-all {
  display: block;
  text-align: center;
  font-weight: 700;
  font-size: 0.8125rem;
  color: #e40046;
  padding: 0.625rem;
  text-decoration: none;
  border-top: 1px solid #f3f3f3;
  margin-top: 0.5rem;
}
.events-search-popup__view-all:hover {
  text-decoration: underline;
}

.events-search-popup__suggestions {
  margin-top: 1rem;
}

.events-search-popup__suggestions-heading {
  font-weight: 700;
  font-size: 0.6875rem;
  text-transform: uppercase;
  letter-spacing: 1px;
  color: #909090;
  margin-bottom: 0.625rem;
}

.events-search-popup__suggestion-group {
  margin-bottom: 1rem;
}

.events-search-popup__suggestion-group-title {
  font-weight: 700;
  font-size: 0.8125rem;
  color: #000b17;
  margin-bottom: 0.375rem;
  display: flex;
  align-items: center;
  gap: 6px;
}
.events-search-popup__suggestion-group-title i {
  color: #e40046;
  width: 16px;
  text-align: center;
}

.events-search-popup__suggestion-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  padding-left: calc(1.2625rem + 0.15vw);
}
@media (min-width: 1200px) {
  .events-search-popup__suggestion-chips {
    padding-left: 1.375rem;
  }
}

.events-search-popup__suggestion-chip {
  display: inline-block;
  font-weight: 400;
  font-size: 0.8125rem;
  padding-top: 0.3125rem;
  padding-bottom: 0.3125rem;
  padding-left: 0.75rem;
  padding-right: 0.75rem;
  background: #f3f3f3;
  border-radius: 50px;
  color: #000b17;
  cursor: pointer;
  transition: all 0.15s;
  border: none;
}
.events-search-popup__suggestion-chip:hover {
  background: #e40046;
  color: #fefcf3;
}

.events-genre-popup {
  width: 420px;
  padding: calc(1.3rem + 0.6vw);
}
@media (min-width: 1200px) {
  .events-genre-popup {
    padding: 1.75rem;
  }
}
.events-genre-popup {
  padding-top: calc(1.275rem + 0.3vw);
}
@media (min-width: 1200px) {
  .events-genre-popup {
    padding-top: 1.5rem;
  }
}

.events-genre-popup__heading {
  font-weight: 700;
  font-size: 0.875rem;
  color: #000b17;
  margin-bottom: 0.875rem;
}

.events-genre-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 8px;
}
@media (max-width: 575.98px) {
  .events-genre-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

.events-genre-card {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 6px;
  padding: 0.875rem;
  border-radius: 12px;
  border: 2px solid #f3f3f3;
  background: white;
  cursor: pointer;
  transition: all 0.2s;
  text-align: center;
}
.events-genre-card i {
  font-weight: 400;
  font-size: calc(1.2625rem + 0.15vw);
}
@media (min-width: 1200px) {
  .events-genre-card i {
    font-size: 1.375rem;
  }
}
.events-genre-card i {
  color: #e40046;
  transition: color 0.2s;
}
.events-genre-card span {
  font-weight: 700;
  font-size: 0.75rem;
  color: #000b17;
  transition: color 0.2s;
}
.events-genre-card:hover {
  border-color: #e40046;
  background: rgba(228, 0, 70, 0.04);
}
.events-genre-card--active {
  background: #e40046;
  border-color: #e40046;
}
.events-genre-card--active i {
  color: white;
}
.events-genre-card--active span {
  color: white;
}
.events-genre-card--active:hover {
  background: rgb(197.4, 0, 60.6052631579);
}

.events-genre-popup__footer {
  text-align: center;
  margin-top: 0.75rem;
  padding-top: 12px;
  border-top: 1px solid #f3f3f3;
}

.events-genre-popup__clear {
  font-weight: 400;
  font-size: 0.8125rem;
  color: #e40046;
  background: none;
  border: none;
  cursor: pointer;
}
.events-genre-popup__clear:hover {
  text-decoration: underline;
}

.events-access-popup {
  width: 360px;
  padding: calc(1.3rem + 0.6vw);
}
@media (min-width: 1200px) {
  .events-access-popup {
    padding: 1.75rem;
  }
}
.events-access-popup {
  padding-top: calc(1.275rem + 0.3vw);
}
@media (min-width: 1200px) {
  .events-access-popup {
    padding-top: 1.5rem;
  }
}

.events-access-popup__heading {
  font-weight: 700;
  font-size: 0.875rem;
  color: #000b17;
  margin-bottom: 0.875rem;
}

.events-access-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 8px;
}

.events-access-card {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 1rem;
  border-radius: 12px;
  border: 2px solid #f3f3f3;
  background: white;
  cursor: pointer;
  transition: all 0.2s;
  text-align: center;
}
.events-access-card__input {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}
.events-access-card i {
  font-weight: 400;
  font-size: calc(1.275rem + 0.3vw);
}
@media (min-width: 1200px) {
  .events-access-card i {
    font-size: 1.5rem;
  }
}
.events-access-card i {
  color: #0b4052;
  transition: color 0.2s;
}
.events-access-card span {
  font-weight: 700;
  font-size: 0.75rem;
  color: #000b17;
  transition: color 0.2s;
}
.events-access-card:hover {
  border-color: #0b4052;
  background: rgba(11, 64, 82, 0.04);
}
.events-access-card--active {
  background: #0b4052;
  border-color: #0b4052;
}
.events-access-card--active i {
  color: white;
}
.events-access-card--active span {
  color: white;
}
.events-access-card--active:hover {
  background: rgb(8.5870967742, 49.9612903226, 64.0129032258);
}

.events-access-popup__footer {
  text-align: center;
  margin-top: 0.75rem;
  padding-top: 12px;
  border-top: 1px solid #f3f3f3;
}

.events-access-popup__clear {
  font-weight: 400;
  font-size: 0.8125rem;
  color: #0b4052;
  background: none;
  border: none;
  cursor: pointer;
}
.events-access-popup__clear:hover {
  text-decoration: underline;
}

.events-active-pills {
  padding: 0.75rem 0;
}

.events-active-pills__list {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  justify-content: center;
}

.events-active-pills__pill {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-weight: 700;
  font-size: 0.8125rem;
  color: white;
  background: #e40046;
  border-radius: 50px;
  padding: 5px 8px 5px 14px;
}
.events-active-pills__pill i:first-child {
  font-weight: 400;
  font-size: 0.75rem;
}
.events-active-pills__pill--genre {
  background: #000b17;
}
.events-active-pills__pill--date {
  background: #182866;
}
.events-active-pills__pill--access {
  background: #0b4052;
}

.events-active-pills__clear {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  border: none;
  background: rgba(255, 255, 255, 0.25);
  color: white;
  cursor: pointer;
  font-weight: 400;
  font-size: 0.625rem;
  transition: background-color 0.2s;
  padding: 0;
}
.events-active-pills__clear:hover {
  background: rgba(255, 255, 255, 0.5);
}

.events-active-pills__clear-all {
  font-weight: 400;
  font-size: 0.8125rem;
  color: #fefcf3;
  text-decoration: underline;
  margin-left: 4px;
}
.events-active-pills__clear-all:hover {
  color: white;
}

.events-page__heading {
  text-align: center;
  margin-top: calc(1.375rem + 1.5vw);
}
@media (min-width: 1200px) {
  .events-page__heading {
    margin-top: 2.5rem;
  }
}
.events-page__heading {
  margin-bottom: calc(1.3125rem + 0.75vw);
}
@media (min-width: 1200px) {
  .events-page__heading {
    margin-bottom: 1.875rem;
  }
}
.events-page__heading h2 {
  font-weight: 700;
  font-size: calc(1.35rem + 1.2vw);
}
@media (min-width: 1200px) {
  .events-page__heading h2 {
    font-size: 2.25rem;
  }
}
.events-page__heading h2 {
  color: #000b17;
}

.events-section {
  padding-top: calc(1.375rem + 1.5vw);
}
@media (min-width: 1200px) {
  .events-section {
    padding-top: 2.5rem;
  }
}
.events-section {
  padding-bottom: calc(1.375rem + 1.5vw);
}
@media (min-width: 1200px) {
  .events-section {
    padding-bottom: 2.5rem;
  }
}
.events-section--blocks {
  padding-top: 0rem;
  padding-bottom: 0rem;
}
.events-section__header {
  margin-bottom: calc(1.275rem + 0.3vw);
}
@media (min-width: 1200px) {
  .events-section__header {
    margin-bottom: 1.5rem;
  }
}
.events-section__title {
  color: #000b17;
  margin: 0;
}
.events-section__strapline {
  font-weight: 400;
  font-size: 1rem;
  color: #909090;
  margin: 0;
  margin-top: 0.25rem;
}
.events-section__actions {
  text-align: center;
  margin-top: calc(1.3125rem + 0.75vw);
}
@media (min-width: 1200px) {
  .events-section__actions {
    margin-top: 1.875rem;
  }
}
.events-section__view-all {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-weight: 700;
  font-size: 0.875rem;
  color: #fefcf3;
  background: #000b17;
  border-radius: 50px;
  padding: 12px 40px;
  text-decoration: none;
  transition: background-color 0.2s;
}
.events-section__view-all i {
  font-weight: 400;
  font-size: 0.75rem;
  transition: transform 0.2s;
}
.events-section__view-all:hover {
  background: rgb(0, 47.5869565217, 99.5);
  color: #fefcf3;
}
.events-section__view-all:hover i {
  transform: translateX(3px);
}
.events-section__carousel .splide__arrow {
  background: #000b17;
  opacity: 1;
}
.events-section__carousel .splide__arrow svg {
  fill: #fefcf3;
}
.events-section__carousel .splide__arrow:hover {
  background: #e40046;
}

.events-sticky-viewall {
  display: none;
}
@media (max-width: 991.98px) {
  .events-sticky-viewall {
    display: block;
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 90;
    background: #fefcf3;
    box-shadow: 0 -2px 10px rgba(0, 0, 0, 0.1);
    text-align: center;
    padding-top: 0.75rem;
    padding-bottom: 0.75rem;
    padding-left: 0.9375rem;
    padding-right: 0.9375rem;
  }
  .events-sticky-viewall .button {
    width: 100%;
  }
}

.events-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1.5rem;
}
@media (max-width: 991.98px) {
  .events-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (max-width: 767.98px) {
  .events-grid {
    grid-template-columns: 1fr;
  }
}

.events-grid__actions {
  text-align: center;
  margin-top: calc(1.3125rem + 0.75vw);
}
@media (min-width: 1200px) {
  .events-grid__actions {
    margin-top: 1.875rem;
  }
}
.events-grid__actions {
  margin-bottom: calc(1.3125rem + 0.75vw);
}
@media (min-width: 1200px) {
  .events-grid__actions {
    margin-bottom: 1.875rem;
  }
}

.events-grid__view-all {
  display: inline-block;
  font-weight: 700;
  font-size: 0.875rem;
  color: white;
  background: #000b17;
  border-radius: 50px;
  padding: 12px 40px;
  text-decoration: none;
  transition: background-color 0.2s;
}
.events-grid__view-all:hover {
  background: rgb(0, 47.5869565217, 99.5);
  color: white;
}

.events-page__pills {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  justify-content: center;
  margin-bottom: 1.25rem;
}

.events-page__pill {
  font-weight: 700;
  font-size: 0.75rem;
  color: white;
  border-radius: 50px;
  padding: 4px 14px;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}
.events-page__pill--accessibility {
  background: #0b4052;
}
.events-page__pill--date {
  background: #e40046;
}
.events-page__pill--genre {
  background: #000b17;
}
.events-page__pill--category {
  background: #000b17;
}
.events-page__pill--availability {
  background: #e40046;
}

.events-page__results-count {
  font-weight: 400;
  font-size: 0.875rem;
  color: #909090;
  text-align: center;
  margin-bottom: 1.25rem;
}

.events-pagination {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 16px;
  margin-top: calc(1.375rem + 1.5vw);
}
@media (min-width: 1200px) {
  .events-pagination {
    margin-top: 2.5rem;
  }
}
.events-pagination {
  margin-bottom: calc(1.375rem + 1.5vw);
}
@media (min-width: 1200px) {
  .events-pagination {
    margin-bottom: 2.5rem;
  }
}

.events-pagination__btn {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  border-radius: 50%;
  background: #000b17;
  color: white;
  text-decoration: none;
  font-weight: 400;
  font-size: 1rem;
  transition: background-color 0.2s;
}
.events-pagination__btn:hover {
  background: rgb(0, 47.5869565217, 99.5);
  color: white;
}

.events-pagination__info {
  font-weight: 400;
  font-size: 0.875rem;
  color: #909090;
}

.events-pagination__pages {
  display: flex;
  align-items: center;
  gap: 4px;
}

.events-pagination__page {
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 36px;
  height: 36px;
  border-radius: 50%;
  font-weight: 700;
  font-size: 0.875rem;
  text-decoration: none;
  color: #000b17;
  transition: background-color 0.2s;
}
.events-pagination__page:hover {
  background: rgba(0, 0, 0, 0.08);
  color: #000b17;
  text-decoration: none;
}
.events-pagination__page--active {
  background: #e40046;
  color: #fefcf3;
  font-weight: 700;
}

.events-pagination__ellipsis {
  font-weight: 400;
  font-size: 0.875rem;
  color: #909090;
  padding-left: 0.25rem;
  padding-right: 0.25rem;
}

.events-no-results {
  text-align: center;
  padding-top: calc(1.5rem + 3vw);
}
@media (min-width: 1200px) {
  .events-no-results {
    padding-top: 3.75rem;
  }
}
.events-no-results {
  padding-bottom: calc(1.5rem + 3vw);
}
@media (min-width: 1200px) {
  .events-no-results {
    padding-bottom: 3.75rem;
  }
}
.events-no-results h2 {
  font-weight: 700;
  font-size: calc(1.3rem + 0.6vw);
}
@media (min-width: 1200px) {
  .events-no-results h2 {
    font-size: 1.75rem;
  }
}
.events-no-results h2 {
  color: #000b17;
  margin-bottom: 0.625rem;
}
.events-no-results p {
  font-weight: 400;
  font-size: 1rem;
  color: #909090;
  margin-bottom: 1.25rem;
}

.event-inner-banner {
  background: #000b17;
  color: white;
  padding-top: 1.25rem;
  padding-bottom: 1.25rem;
}
.event-inner-banner h1 {
  font-weight: 700;
  font-size: calc(1.325rem + 0.9vw);
}
@media (min-width: 1200px) {
  .event-inner-banner h1 {
    font-size: 2rem;
  }
}
.event-inner-banner .genre img {
  margin-left: 10px;
}
.event-inner-banner .genre p {
  padding: 0;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  font-weight: 400;
  font-size: 1.125rem;
}
@media (max-width: 991.98px) {
  .event-inner-banner .genre p {
    justify-content: start;
  }
}
.event-inner-banner .genre {
  text-align: right;
}
.event-inner-banner .genre strong {
  font-weight: 700;
  font-size: 1.125rem;
  margin-right: 5px;
}
.event-inner-banner p,
.event-inner-banner h1 {
  padding: 0;
}

.image-banner {
  margin-bottom: 1.25rem;
}
.image-banner img {
  min-height: 500px;
  object-fit: cover;
  vertical-align: top;
  width: 100%;
}
@media (max-width: 991.98px) {
  .image-banner img {
    min-height: 1px;
  }
}

.sidebar {
  border-radius: 10px;
  overflow: hidden;
  margin-top: 2em;
}
.sidebar .button {
  width: 100%;
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
  letter-spacing: 2px;
  text-transform: uppercase;
  margin-top: 5px;
}
.sidebar .button img {
  margin-right: 10px;
  position: relative;
  top: -3px;
}
.sidebar .sidebar-header {
  background: #000b17;
  color: white;
  padding: 0.625rem;
  padding-left: 1.25rem;
}
.sidebar .sidebar-header h3 {
  padding: 0;
  font-weight: 700;
  font-size: calc(1.2875rem + 0.45vw);
}
@media (min-width: 1200px) {
  .sidebar .sidebar-header h3 {
    font-size: 1.625rem;
  }
}
.sidebar .sidebar-content {
  background: #efefef;
  padding: 1.25rem;
}
.sidebar .sidebar-content ul {
  margin: 20px 0;
}
.sidebar .sidebar-content ul li {
  display: flex;
  padding-bottom: 4px;
  justify-content: space-between;
}
.sidebar .sidebar-content ul li img {
  margin-right: 15px;
  position: relative;
  top: 3px;
}
.sidebar .sidebar-content ul li strong {
  margin-right: 20px;
}
.sidebar .sidebar-content ul li strong span {
  width: 30px;
  display: inline-block;
}

.event-content {
  padding: 2em 0;
}

.reviews {
  text-align: center;
  margin-bottom: 4em;
  border-radius: 20px;
  margin-top: 3em;
}
.reviews h4 {
  line-height: 1.6;
}
.reviews .blockquote {
  margin-bottom: 20px;
  line-height: 1.6;
}
.reviews .starreview {
  margin-bottom: 20px;
}
.reviews i {
  color: #cba058;
  font-size: 3em;
  margin: 0 10px 0 0;
}
.reviews .review-name h4 {
  line-height: 1.2;
}
.reviews .review-name small {
  display: block;
  font-weight: 300;
}
.reviews .review {
  text-align: center;
  margin: 0 auto;
  background: #efefef;
  padding: 5em;
  width: 100%;
}

.ticket-information p {
  font-weight: 400;
  font-size: 0.8125rem;
}

.basket-page {
  padding-top: calc(1.375rem + 1.5vw);
}
@media (min-width: 1200px) {
  .basket-page {
    padding-top: 2.5rem;
  }
}
.basket-page {
  padding-bottom: calc(1.5rem + 3vw);
}
@media (min-width: 1200px) {
  .basket-page {
    padding-bottom: 3.75rem;
  }
}

.basket-loading,
.basket-error,
.basket-empty {
  text-align: center;
  padding-top: calc(1.5rem + 3vw);
}
@media (min-width: 1200px) {
  .basket-loading,
  .basket-error,
  .basket-empty {
    padding-top: 3.75rem;
  }
}
.basket-loading,
.basket-error,
.basket-empty {
  padding-bottom: calc(1.5rem + 3vw);
}
@media (min-width: 1200px) {
  .basket-loading,
  .basket-error,
  .basket-empty {
    padding-bottom: 3.75rem;
  }
}
.basket-loading > i,
.basket-error > i,
.basket-empty > i {
  font-weight: 400;
  font-size: calc(1.325rem + 0.9vw);
}
@media (min-width: 1200px) {
  .basket-loading > i,
  .basket-error > i,
  .basket-empty > i {
    font-size: 2rem;
  }
}
.basket-loading > i,
.basket-error > i,
.basket-empty > i {
  color: #e40046;
  display: block;
  margin-bottom: 1rem;
}
.basket-loading p,
.basket-error p,
.basket-empty p {
  font-weight: 400;
  font-size: 1rem;
  color: #909090;
  padding-bottom: calc(1.275rem + 0.3vw);
}
@media (min-width: 1200px) {
  .basket-loading p,
  .basket-error p,
  .basket-empty p {
    padding-bottom: 1.5rem;
  }
}

.basket-error p {
  color: #e40046;
}

.basket-layout {
  display: grid;
  grid-template-columns: 1fr 380px;
  gap: 40px;
  align-items: start;
}
@media (max-width: 991.98px) {
  .basket-layout {
    grid-template-columns: 1fr;
    gap: 24px;
  }
}
.basket-layout--full-width {
  grid-template-columns: 1fr;
}

.basket-layout__main {
  min-width: 0;
}

.basket-layout__sidebar {
  display: flex;
  flex-direction: column;
  gap: 24px;
  position: sticky;
  top: 24px;
}
@media (max-width: 991.98px) {
  .basket-layout__sidebar {
    position: static;
  }
}

.basket-section {
  margin-top: calc(1.325rem + 0.9vw);
}
@media (min-width: 1200px) {
  .basket-section {
    margin-top: 2rem;
  }
}
.basket-section h2 {
  font-weight: 700;
  font-size: calc(1.275rem + 0.3vw);
}
@media (min-width: 1200px) {
  .basket-section h2 {
    font-size: 1.5rem;
  }
}
.basket-section h2 {
  letter-spacing: -0.4px;
  color: #000b17;
  padding-bottom: 0.75rem;
}

.basket-items {
  display: flex;
  flex-direction: column;
  gap: 12px;
  margin-bottom: calc(1.275rem + 0.3vw);
}
@media (min-width: 1200px) {
  .basket-items {
    margin-bottom: 1.5rem;
  }
}

.basket-item {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding-top: 0.25rem;
  padding-bottom: 0.25rem;
  padding-left: 0rem;
  padding-right: 1.25rem;
  border-radius: 8px;
  gap: 16px;
  flex-wrap: wrap;
}
@media (max-width: 767.98px) {
  .basket-item {
    flex-direction: column;
    align-items: flex-start;
  }
}

.basket-item-info {
  flex: 1;
  min-width: 200px;
}

.basket-item-name {
  font-weight: 600;
  font-weight: 700;
  font-size: 1rem;
  padding-bottom: 0.25rem;
}

.basket-item-detail {
  font-weight: 400;
  font-size: 1.25rem;
  text-align: right;
  color: #000b17;
}
.basket-item-detail span + span::before {
  content: "·";
  margin: 0 6px;
}

.basket-item-controls {
  display: flex;
  align-items: center;
  gap: 16px;
}
@media (max-width: 767.98px) {
  .basket-item-controls {
    width: 100%;
    justify-content: space-between;
  }
}

.basket-item-price {
  font-weight: 600;
  font-weight: 700;
  font-size: 1rem;
  min-width: 80px;
  text-align: right;
}

.basket-item-remove {
  background: none;
  border: none;
  color: #e40046;
  cursor: pointer;
  font-weight: 400;
  font-size: 0.8125rem;
  padding: 4px 8px;
}
.basket-item-remove:hover {
  text-decoration: underline;
}
.basket-item-remove:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}

.basket-event-header {
  padding: 12px 0 4px;
}
.basket-event-header:not(:first-child) {
  margin-top: 1rem;
  border-top: 1px solid #f3f3f3;
  padding-top: 1.25rem;
}

.basket-event-name {
  font-weight: 700;
  font-weight: 700;
  font-size: calc(1.275rem + 0.3vw);
}
@media (min-width: 1200px) {
  .basket-event-name {
    font-size: 1.5rem;
  }
}
.basket-event-name {
  color: #000b17;
}

.basket-event-date {
  font-weight: 400;
  font-size: 0.875rem;
  color: #909090;
  margin-top: 0.25rem;
}

.qty-controls {
  display: flex;
  align-items: center;
  gap: 8px;
}

.qty-btn {
  width: 32px;
  height: 32px;
  border: 2px solid #000b17;
  background: white;
  border-radius: 6px;
  font-weight: 700;
  font-size: 1rem;
  font-weight: 700;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  line-height: 1;
  padding: 0;
}
.qty-btn:hover {
  background: #000b17;
  color: white;
}
.qty-btn:disabled {
  opacity: 0.4;
  cursor: not-allowed;
}

.qty-value {
  min-width: 2rem;
  text-align: center;
  font-weight: 600;
  font-weight: 700;
  font-size: 1rem;
}

.basket-promo {
  margin-top: 1rem;
  margin-bottom: 1rem;
}

.basket-promo__row {
  display: flex;
  gap: 8px;
  align-items: center;
}

.basket-promo__input {
  padding: 8px 12px;
  border: 2px solid #f3f3f3;
  border-radius: 6px;
  font-weight: 400;
  font-size: 0.875rem;
  width: 200px;
  text-transform: uppercase;
}
.basket-promo__input:focus {
  border-color: #000b17;
  outline: none;
}
@media (max-width: 767.98px) {
  .basket-promo__input {
    flex: 1;
    width: auto;
  }
}

.basket-promo__applied {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 8px 12px;
  background: #0b4052;
  color: white;
  border-radius: 6px;
  font-weight: 400;
  font-size: 0.875rem;
}

.basket-promo__remove {
  background: none;
  border: none;
  color: #e40046;
  cursor: pointer;
  font-weight: 400;
  font-size: 0.8125rem;
  text-decoration: underline;
  padding: 0;
}

.basket-promo__error {
  margin-top: 0.5rem;
  color: #e40046;
  font-weight: 400;
  font-size: 0.875rem;
}

.basket-summary {
  border-top: 2px solid #000b17;
  padding-top: 1rem;
  margin-bottom: calc(1.275rem + 0.3vw);
}
@media (min-width: 1200px) {
  .basket-summary {
    margin-bottom: 1.5rem;
  }
}

.basket-summary__discount {
  display: flex;
  justify-content: space-between;
  font-weight: 400;
  font-size: 1rem;
  color: #0b4052;
  padding-bottom: 0.5rem;
}

.basket-summary__total {
  display: flex;
  justify-content: space-between;
  font-weight: 700;
  font-size: 1.25rem;
  font-weight: 700;
}

.basket-actions {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  flex-wrap: wrap;
}
@media (max-width: 767.98px) {
  .basket-actions {
    flex-direction: column;
  }
}

.basket-btn {
  display: inline-block;
  padding: 12px 24px;
  border-radius: 6px;
  text-decoration: none;
  font-weight: 600;
  font-weight: 700;
  font-size: calc(1.25625rem + 0.075vw);
}
@media (min-width: 1200px) {
  .basket-btn {
    font-size: 1.3125rem;
  }
}
.basket-btn {
  text-align: center;
  cursor: pointer;
  border: none;
}
.basket-btn--primary {
  background: #e40046;
  color: white;
}
.basket-btn--primary:hover {
  background: rgb(44.4166666667, 44.4166666667, 78.5833333333);
  color: white;
  text-decoration: none;
}
.basket-btn--secondary {
  background: white;
  color: #000b17;
  border: 2px solid #000b17;
}
.basket-btn--secondary:hover {
  color: #000b17;
  text-decoration: none;
}
.basket-btn--sm {
  padding: 8px 16px;
  font-weight: 700;
  font-size: 0.875rem;
}
@media (max-width: 767.98px) {
  .basket-btn {
    width: 100%;
  }
}

.basket-upsell--membership {
  margin-top: calc(1.325rem + 0.9vw);
}
@media (min-width: 1200px) {
  .basket-upsell--membership {
    margin-top: 2rem;
  }
}

.basket-upsell {
  padding-top: calc(1.275rem + 0.3vw);
}
@media (min-width: 1200px) {
  .basket-upsell {
    padding-top: 1.5rem;
  }
}
.basket-upsell {
  padding-bottom: calc(1.275rem + 0.3vw);
}
@media (min-width: 1200px) {
  .basket-upsell {
    padding-bottom: 1.5rem;
  }
}
.basket-upsell {
  padding-left: calc(1.275rem + 0.3vw);
}
@media (min-width: 1200px) {
  .basket-upsell {
    padding-left: 1.5rem;
  }
}
.basket-upsell {
  padding-right: calc(1.275rem + 0.3vw);
}
@media (min-width: 1200px) {
  .basket-upsell {
    padding-right: 1.5rem;
  }
}
.basket-upsell {
  border-radius: 12px;
  border: 1px solid #f3f3f3;
}

.basket-upsell__title {
  font-weight: 700;
  font-size: calc(1.275rem + 0.3vw);
}
@media (min-width: 1200px) {
  .basket-upsell__title {
    font-size: 1.5rem;
  }
}
.basket-upsell__title {
  color: #000b17;
  padding-bottom: 0.5rem;
}

.basket-upsell__desc {
  color: #909090;
  font-weight: 400;
  font-size: 0.875rem;
  padding-bottom: 1rem;
  line-height: 1.5;
}

.basket-upsell__presets {
  display: flex;
  gap: 8px;
  padding-bottom: 0.75rem;
  flex-wrap: wrap;
}

.basket-upsell__preset {
  padding: 8px 20px;
  border: 2px solid #000b17;
  background: white;
  color: #000b17;
  border-radius: 6px;
  font-weight: 600;
  font-weight: 700;
  font-size: 1rem;
  cursor: pointer;
}
.basket-upsell__preset:hover {
  background: #000b17;
  color: white;
}
.basket-upsell__preset:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}

.basket-upsell__custom {
  display: flex;
  align-items: center;
  gap: 8px;
}

.basket-upsell__currency {
  font-weight: 700;
  font-size: 1rem;
  font-weight: 600;
  color: #000b17;
}

.basket-upsell__custom-input {
  padding: 8px 12px;
  border: 2px solid #f3f3f3;
  border-radius: 6px;
  font-weight: 400;
  font-size: 0.875rem;
  width: 120px;
}
.basket-upsell__custom-input:focus {
  border-color: #000b17;
  outline: none;
}

.basket-upsell__tiers {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 16px;
}

.basket-upsell__tier {
  background: white;
  border: 2px solid #f3f3f3;
  border-radius: 8px;
  padding-top: 1.25rem;
  padding-bottom: 1.25rem;
  padding-left: 1.25rem;
  padding-right: 1.25rem;
  display: flex;
  flex-direction: column;
}
.basket-upsell__tier button {
  width: 100%;
  margin-top: auto;
}

.basket-upsell__tier-name {
  font-weight: 700;
  font-weight: 700;
  font-size: 1rem;
  padding-bottom: 0.25rem;
  color: #000b17;
}

.basket-upsell__tier-price {
  font-weight: 700;
  font-size: 1.25rem;
  font-weight: 700;
  color: #000b17;
  padding-bottom: 0.5rem;
}

.basket-upsell__tier-desc {
  font-weight: 400;
  font-size: 0.875rem;
  color: #909090;
  padding-bottom: 0.75rem;
  line-height: 1.5;
}

.basket-upsell__tier-saving {
  font-weight: 400;
  font-size: 0.875rem;
  color: #0b4052;
  font-weight: 600;
  padding-bottom: 0.75rem;
}

.basket-related {
  margin-top: calc(1.425rem + 2.1vw);
}
@media (min-width: 1200px) {
  .basket-related {
    margin-top: 3rem;
  }
}
.basket-related h2 {
  font-weight: 700;
  font-size: calc(1.2625rem + 0.15vw);
}
@media (min-width: 1200px) {
  .basket-related h2 {
    font-size: 1.375rem;
  }
}
.basket-related h2 {
  padding-bottom: 1rem;
}

.basket-related__grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 16px;
}
@media (max-width: 991.98px) {
  .basket-related__grid {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (max-width: 767.98px) {
  .basket-related__grid {
    grid-template-columns: 1fr;
  }
}
.basket-related__grid .card {
  margin-bottom: 0rem;
}

.checkout-page {
  padding-top: calc(1.375rem + 1.5vw);
}
@media (min-width: 1200px) {
  .checkout-page {
    padding-top: 2.5rem;
  }
}
.checkout-page {
  padding-bottom: calc(1.5rem + 3vw);
}
@media (min-width: 1200px) {
  .checkout-page {
    padding-bottom: 3.75rem;
  }
}

.checkout-page__iframe-wrap {
  width: 100%;
  border-radius: 8px;
  overflow: hidden;
}

.checkout-page__iframe {
  width: 100%;
  height: 80vh;
  border: none;
  display: block;
}

.checkout-page__back {
  margin-top: calc(1.325rem + 0.9vw);
}
@media (min-width: 1200px) {
  .checkout-page__back {
    margin-top: 2rem;
  }
}
.checkout-page__back {
  padding-top: calc(1.275rem + 0.3vw);
}
@media (min-width: 1200px) {
  .checkout-page__back {
    padding-top: 1.5rem;
  }
}
.checkout-page__back {
  border-top: 1px solid #f3f3f3;
}
.checkout-page__back a {
  color: #000b17;
  font-weight: 500;
  text-decoration: none;
}
.checkout-page__back a:hover {
  text-decoration: underline;
}

#SpektrixIFrame {
  margin-top: 80px !important;
}

.event-detail .event-detail__hero {
  overflow: initial !important;
}
.event-detail .hero-block__frame {
  aspect-ratio: initial !important;
  min-height: initial !important;
}
@media (max-width: 767.98px) {
  .event-detail .hero-block__frame {
    aspect-ratio: initial !important;
    margin-top: 50px;
  }
}
.event-detail .hero-block__frame img {
  position: static !important;
}
.event-detail__hero {
  position: relative;
  overflow: hidden;
}
.event-detail__hero-overlay {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 2;
  padding-bottom: calc(1.28125rem + 0.375vw);
}
@media (min-width: 1200px) {
  .event-detail__hero-overlay {
    padding-bottom: 1.5625rem;
  }
}
.event-detail__hero-overlay {
  padding-top: calc(1.3125rem + 0.75vw);
}
@media (min-width: 1200px) {
  .event-detail__hero-overlay {
    padding-top: 1.875rem;
  }
}
.event-detail .event-detail__hero-ticket-banner {
  position: relative;
  z-index: 5;
  margin-top: 2em;
}
.event-detail__hero-inner {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 20px;
  padding: 20px;
  border-radius: 20px;
}
@media (max-width: 767.98px) {
  .event-detail__hero-inner {
    flex-direction: column;
    align-items: flex-start;
  }
}
.event-detail__hero-breadcrumb {
  font-weight: 400;
  font-size: 0.8125rem;
  color: rgba(255, 255, 255, 0.8);
  margin-bottom: 0.5rem;
}
.event-detail__hero-breadcrumb a {
  color: rgba(255, 255, 255, 0.8);
  text-decoration: none;
}
.event-detail__hero-breadcrumb a:hover {
  color: #fefcf3;
}
.event-detail__hero-breadcrumb span {
  margin: 0 5px;
}
.event-detail__hero-title {
  font-weight: 700;
  font-size: calc(1.35rem + 1.2vw);
}
@media (min-width: 1200px) {
  .event-detail__hero-title {
    font-size: 2.25rem;
  }
}
.event-detail__hero-title {
  color: #fefcf3;
  margin: 0;
  padding-bottom: 0.5rem;
}
@media (max-width: 767.98px) {
  .event-detail__hero-title {
    font-weight: 700;
    font-size: calc(1.2875rem + 0.45vw);
  }
}
@media (max-width: 767.98px) and (min-width: 1200px) {
  .event-detail__hero-title {
    font-size: 1.625rem;
  }
}
.event-detail .event-detail__hero-date {
  padding-bottom: 0;
}
.event-detail__hero-genre {
  display: inline-block;
  font-weight: 700;
  font-size: 0.75rem;
  color: #fefcf3;
  background: rgba(0, 0, 0, 0.3);
  border-radius: 20px;
  padding-top: 0.25rem;
  padding-bottom: 0.25rem;
  padding-left: 0.875rem;
  padding-right: 0.875rem;
  letter-spacing: 0.5px;
  text-transform: uppercase;
}
.event-detail__hero-actions {
  flex-shrink: 0;
}
@media (max-width: 767.98px) {
  .event-detail__hero-actions {
    width: 100%;
  }
}
.event-detail__hero-book {
  font-weight: 700;
  font-size: 0.875rem;
  letter-spacing: 1px;
  text-transform: uppercase;
}
@media (max-width: 767.98px) {
  .event-detail__hero-book {
    width: 100%;
    text-align: center;
  }
}
.event-detail__subnav {
  background: #fefcf3;
  position: sticky;
  top: var(--header-height, 80px);
  z-index: 6;
  border-bottom: 1px solid #000b17;
}
.event-detail__subnav-list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  align-items: center;
  gap: 0;
  overflow-x: auto;
  justify-content: center;
  font-weight: 700;
  font-size: 1.125rem;
  -webkit-overflow-scrolling: touch;
}
.event-detail__subnav-list:before {
  content: "Jump to:";
}
.event-detail__subnav-link {
  display: block;
  color: #000b17;
  text-decoration: none;
  padding-top: 0.9375rem;
  padding-bottom: 0.9375rem;
  padding-left: 1rem;
  padding-right: 1rem;
  white-space: nowrap;
  border-bottom: 3px solid transparent;
  transition: all 0.2s ease-in;
  font-weight: bold;
  text-decoration: underline;
}
.event-detail__subnav-link:hover, .event-detail__subnav-link--active {
  color: #e40046;
}
.event-detail__overview {
  padding-top: calc(1.375rem + 1.5vw);
}
@media (min-width: 1200px) {
  .event-detail__overview {
    padding-top: 2.5rem;
  }
}
.event-detail__overview {
  padding-bottom: calc(1.375rem + 1.5vw);
}
@media (min-width: 1200px) {
  .event-detail__overview {
    padding-bottom: 2.5rem;
  }
}
.event-detail__overview-heading {
  margin-bottom: 0rem;
  border-bottom: 1px solid #ccc;
  margin-bottom: 20px;
  padding-bottom: 10px;
}
.event-detail__overview-teaser {
  font-weight: 400;
  font-size: 1.125rem;
  line-height: 1.6;
  font-weight: 500;
  margin-bottom: 1.25rem;
}
.event-detail__overview-description {
  font-weight: 400;
  font-size: 1rem;
  line-height: 1.7;
}
.event-detail__overview-description p {
  margin-bottom: 0.9375rem;
}
.event-detail__overview-description img {
  max-width: 100%;
  height: auto;
}
.event-detail__details-card {
  border-radius: 8px;
  border: 2px solid #909090;
  overflow: hidden;
}
@media (max-width: 991.98px) {
  .event-detail__details-card {
    position: static;
    margin-top: 0rem;
    margin-bottom: calc(1.3125rem + 0.75vw);
  }
}
@media (max-width: 991.98px) and (min-width: 1200px) {
  .event-detail__details-card {
    margin-bottom: 1.875rem;
  }
}
.event-detail__details-header {
  padding-top: calc(1.325rem + 0.9vw);
}
@media (min-width: 1200px) {
  .event-detail__details-header {
    padding-top: 2rem;
  }
}
.event-detail__details-header {
  padding-bottom: 0.75rem;
  padding-left: calc(1.3125rem + 0.75vw);
}
@media (min-width: 1200px) {
  .event-detail__details-header {
    padding-left: 1.875rem;
  }
}
.event-detail__details-header {
  padding-right: calc(1.3125rem + 0.75vw);
}
@media (min-width: 1200px) {
  .event-detail__details-header {
    padding-right: 1.875rem;
  }
}
.event-detail__details-header h2 {
  margin: 0;
  padding: 0;
  font-weight: 700;
  font-size: calc(1.35rem + 1.2vw);
}
@media (min-width: 1200px) {
  .event-detail__details-header h2 {
    font-size: 2.25rem;
  }
}
.event-detail__details-body {
  padding-top: 0.625rem;
  padding-bottom: 0.75rem;
  padding-left: calc(1.3125rem + 0.75vw);
}
@media (min-width: 1200px) {
  .event-detail__details-body {
    padding-left: 1.875rem;
  }
}
.event-detail__details-body {
  padding-right: calc(1.3125rem + 0.75vw);
}
@media (min-width: 1200px) {
  .event-detail__details-body {
    padding-right: 1.875rem;
  }
}
.event-detail__details-list {
  list-style: none;
  padding: 0;
  margin: 0;
}
.event-detail__details-item {
  display: flex;
  justify-content: start;
  align-items: flex-start;
  padding-bottom: 0.625rem;
  margin-bottom: 0rem;
  font-weight: 400;
  font-size: 1rem;
}
.event-detail__details-item p {
  font-weight: 400;
  font-size: 1rem;
  text-align: left;
  padding-bottom: 5px;
}
.event-detail__details-item:last-child {
  border-bottom: none;
  margin-bottom: 0;
  padding-bottom: 0;
}
.event-detail__details-label {
  margin-right: 10px;
}
.event-detail__details-value {
  text-align: right;
  font-weight: bold;
  flex-grow: 1;
  text-align: left;
}
.event-detail__details-book {
  width: 100%;
  text-align: center;
  display: block;
  margin-top: 0.9375rem;
  letter-spacing: 1px;
  text-transform: uppercase;
}
.event-detail__details-book--sold-out {
  opacity: 0.6;
  cursor: not-allowed;
}
.event-detail__ticket-overwrite {
  margin-top: 0.9375rem;
  padding-top: 0.9375rem;
  border-top: 1px solid rgb(227.7, 227.7, 227.7);
  font-weight: 400;
  font-size: 0.875rem;
  color: rgb(0, 59.7826086957, 125);
}
.event-detail__membership-promo {
  margin-top: 1.25rem;
  background: #07192c;
  border-radius: 8px;
  padding-top: calc(1.275rem + 0.3vw);
}
@media (min-width: 1200px) {
  .event-detail__membership-promo {
    padding-top: 1.5rem;
  }
}
.event-detail__membership-promo {
  padding-bottom: calc(1.275rem + 0.3vw);
}
@media (min-width: 1200px) {
  .event-detail__membership-promo {
    padding-bottom: 1.5rem;
  }
}
.event-detail__membership-promo {
  padding-left: calc(1.275rem + 0.3vw);
}
@media (min-width: 1200px) {
  .event-detail__membership-promo {
    padding-left: 1.5rem;
  }
}
.event-detail__membership-promo {
  padding-right: calc(1.275rem + 0.3vw);
}
@media (min-width: 1200px) {
  .event-detail__membership-promo {
    padding-right: 1.5rem;
  }
}
.event-detail__membership-promo {
  text-align: center;
}
.event-detail__membership-promo-text {
  color: #fefcf3;
  font-weight: 400;
  font-size: 1rem;
  margin-bottom: 1rem;
  line-height: 1.5;
}
.event-detail__membership-promo-btn {
  display: inline-block;
  width: 100%;
  text-align: center;
}
.event-detail__accessibility {
  margin-top: 0.9375rem;
  padding-top: 0.9375rem;
  border-top: 1px solid rgb(227.7, 227.7, 227.7);
}
.event-detail__accessibility-heading {
  font-weight: 700;
  font-size: 0.8125rem;
  margin-bottom: 0.5rem;
  color: rgb(0, 84.1739130435, 176);
}
.event-detail__access-list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}
.event-detail__access-badge {
  display: inline-block;
  padding-top: 0.3125rem;
  padding-bottom: 0.3125rem;
  padding-left: 0.75rem;
  padding-right: 0.75rem;
  background: #f3f3f3;
  text-transform: uppercase;
  color: white;
  color: black;
  border-radius: 15px;
  font-weight: 700;
  font-size: 0.8125rem;
  line-height: 1;
  letter-spacing: 0.03em;
  cursor: help;
}
.event-detail__tickets {
  padding-top: calc(1.375rem + 1.5vw);
}
@media (min-width: 1200px) {
  .event-detail__tickets {
    padding-top: 2.5rem;
  }
}
.event-detail__tickets {
  padding-bottom: calc(1.375rem + 1.5vw);
}
@media (min-width: 1200px) {
  .event-detail__tickets {
    padding-bottom: 2.5rem;
  }
}
.event-detail__tickets-heading {
  text-align: center;
  margin-bottom: calc(1.3125rem + 0.75vw);
}
@media (min-width: 1200px) {
  .event-detail__tickets-heading {
    margin-bottom: 1.875rem;
  }
}
.event-detail__tickets-table {
  width: 100%;
  border: 1px solid #909090;
  border-radius: 6px;
  overflow: hidden;
  margin: 0 auto;
  max-width: 800px;
}
.event-detail__ticket-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding-top: 0.875rem;
  padding-bottom: 0.875rem;
  padding-left: 1.25rem;
  padding-right: 1.25rem;
  border-bottom: 1px solid #909090;
  gap: 15px;
}
.event-detail__ticket-row:last-child {
  border-bottom: none;
}
.event-detail__ticket-row--cancelled {
  opacity: 0.5;
}
@media (max-width: 767.98px) {
  .event-detail__ticket-row {
    flex-direction: column;
    align-items: flex-start;
    gap: 8px;
  }
}
.event-detail__ticket-datetime {
  flex: 1;
  min-width: 0;
}
.event-detail__ticket-date {
  font-weight: 700;
  font-size: 1.25rem;
  display: block;
}
.event-detail__ticket-date-header {
  font-weight: 700;
  font-size: 1.125rem;
  padding-top: 1rem;
  padding-bottom: 0.5rem;
  border-bottom: 1px solid rgba(0, 0, 0, 0.1);
  margin-bottom: 0.25rem;
}
.event-detail__ticket-date-header:first-child {
  padding-top: 0;
}
.event-detail__ticket-time {
  font-weight: 400;
  font-size: 1rem;
  font-weight: bold;
}
.event-detail__ticket-venue {
  font-weight: 400;
  font-size: 1rem;
  margin-top: 0.125rem;
  display: none;
}
.event-detail__ticket-access {
  display: flex;
  gap: 4px;
  align-items: center;
}
.event-detail__ticket-availability {
  flex-shrink: 0;
  font-weight: 400;
  font-size: 1.125rem;
  font-weight: bold;
  text-align: center;
  min-width: 140px;
}
@media (max-width: 767.98px) {
  .event-detail__ticket-availability {
    text-align: left;
  }
}
.event-detail__ticket-action {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  gap: 8px;
}
@media (max-width: 767.98px) {
  .event-detail__ticket-action {
    width: 100%;
  }
}
.event-detail__ticket-edit {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  border-radius: 50%;
  background: #0b4052;
  color: #fefcf3;
  font-weight: 400;
  font-size: 0.875rem;
  text-decoration: none;
  opacity: 0.7;
  transition: opacity 0.2s;
}
.event-detail__ticket-edit:hover {
  opacity: 1;
}
.event-detail__ticket-book {
  font-weight: 700;
  font-size: 0.8125rem;
  letter-spacing: 1px;
  text-transform: uppercase;
}
@media (max-width: 767.98px) {
  .event-detail__ticket-book {
    width: 100%;
    text-align: center;
    display: block;
  }
}
.event-detail__ticket-badge {
  display: inline-block;
  padding-top: 0.1875rem;
  padding-bottom: 0.1875rem;
  padding-left: 0.625rem;
  padding-right: 0.625rem;
  border-radius: 4px;
  font-weight: 700;
  font-size: 0.75rem;
  text-transform: uppercase;
}
.event-detail__ticket-badge--sold-out {
  background: #e40046;
  color: #fefcf3;
}
.event-detail__ticket-badge--cancelled {
  background: rgb(0, 108.5652173913, 227);
  color: #fefcf3;
}
.event-detail__ticket-badge--limited {
  background: #cba058;
  color: #fefcf3;
}
.event-detail__ticket-onsale {
  font-weight: 400;
  font-size: 0.8125rem;
  color: rgb(0, 84.1739130435, 176);
  font-style: italic;
}
.event-detail__media {
  padding-top: calc(1.375rem + 1.5vw);
}
@media (min-width: 1200px) {
  .event-detail__media {
    padding-top: 2.5rem;
  }
}
.event-detail__media {
  padding-bottom: calc(1.375rem + 1.5vw);
}
@media (min-width: 1200px) {
  .event-detail__media {
    padding-bottom: 2.5rem;
  }
}
.event-detail__media {
  background: #000b17;
  color: #fefcf3;
}
.event-detail__cast {
  padding-top: calc(1.5rem + 3vw);
}
@media (min-width: 1200px) {
  .event-detail__cast {
    padding-top: 3.75rem;
  }
}
.event-detail__cast {
  padding-bottom: calc(1.5rem + 3vw);
}
@media (min-width: 1200px) {
  .event-detail__cast {
    padding-bottom: 3.75rem;
  }
}
.event-detail__cast {
  background: #e40046;
  background: linear-gradient(135deg, #e40046 0%, rgb(151.5, 0, 46.5131578947) 100%);
  color: #fefcf3;
}
.event-detail__cast-heading {
  font-weight: 700;
  font-size: calc(1.35rem + 1.2vw);
}
@media (min-width: 1200px) {
  .event-detail__cast-heading {
    font-size: 2.25rem;
  }
}
.event-detail__cast-heading {
  text-align: center;
  margin-bottom: calc(1.375rem + 1.5vw);
}
@media (min-width: 1200px) {
  .event-detail__cast-heading {
    margin-bottom: 2.5rem;
  }
}
.event-detail__cast-heading {
  color: #fefcf3;
}
.event-detail__cast-card {
  text-align: center;
}
.event-detail__cast-photo {
  width: 160px;
  height: 160px;
  border-radius: 50%;
  overflow: hidden;
  margin: 0 auto;
  margin-bottom: 1rem;
}
.event-detail__cast-photo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.event-detail__cast-photo--placeholder {
  background: rgba(255, 255, 255, 0.15);
  display: flex;
  align-items: center;
  justify-content: center;
}
.event-detail__cast-photo--placeholder i {
  font-weight: 400;
  font-size: calc(1.425rem + 2.1vw);
}
@media (min-width: 1200px) {
  .event-detail__cast-photo--placeholder i {
    font-size: 3rem;
  }
}
.event-detail__cast-photo--placeholder i {
  color: rgba(255, 255, 255, 0.5);
}
.event-detail__cast-name {
  font-size: 1.6rem;
  font-weight: 700;
  padding-bottom: 0;
  margin-bottom: 5px;
  color: #fefcf3;
}
.event-detail__cast-role {
  font-weight: 400;
  font-size: 1.125rem;
  color: rgba(255, 255, 255, 0.85);
}
.event-detail__reviews {
  padding-top: calc(1.5rem + 3vw);
}
@media (min-width: 1200px) {
  .event-detail__reviews {
    padding-top: 3.75rem;
  }
}
.event-detail__reviews {
  padding-bottom: calc(1.5rem + 3vw);
}
@media (min-width: 1200px) {
  .event-detail__reviews {
    padding-bottom: 3.75rem;
  }
}
.event-detail__reviews-heading {
  font-weight: 700;
  font-size: calc(1.35rem + 1.2vw);
}
@media (min-width: 1200px) {
  .event-detail__reviews-heading {
    font-size: 2.25rem;
  }
}
.event-detail__reviews-heading {
  text-align: center;
  margin-bottom: calc(1.375rem + 1.5vw);
}
@media (min-width: 1200px) {
  .event-detail__reviews-heading {
    margin-bottom: 2.5rem;
  }
}
.event-detail__review-card {
  text-align: center;
  max-width: 700px;
  margin: 0 auto;
  padding-top: 1.25rem;
  padding-bottom: 1.25rem;
}
.event-detail__review-quote {
  font-weight: 700;
  font-size: calc(1.2625rem + 0.15vw);
}
@media (min-width: 1200px) {
  .event-detail__review-quote {
    font-size: 1.375rem;
  }
}
.event-detail__review-quote {
  font-style: italic;
  line-height: 1.6;
  margin-bottom: 1.25rem;
}
.event-detail__review-quote p {
  margin: 0;
}
@media (max-width: 767.98px) {
  .event-detail__review-quote {
    font-weight: 700;
    font-size: 1.125rem;
  }
}
.event-detail__review-stars {
  margin-bottom: 1rem;
}
.event-detail__review-stars i {
  color: #f5a623;
  font-weight: 400;
  font-size: 1.25rem;
  margin: 0 2px;
}
.event-detail__review-source {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
}
.event-detail__review-logo {
  max-height: 32px;
  max-width: 120px;
  object-fit: contain;
}
.event-detail__review-name {
  font-weight: 700;
  font-size: 1rem;
  color: #909090;
}
.event-detail__media-heading {
  font-weight: 700;
  font-size: calc(1.35rem + 1.2vw);
}
@media (min-width: 1200px) {
  .event-detail__media-heading {
    font-size: 2.25rem;
  }
}
.event-detail__media-heading {
  text-align: center;
  margin-bottom: calc(1.3125rem + 0.75vw);
}
@media (min-width: 1200px) {
  .event-detail__media-heading {
    margin-bottom: 1.875rem;
  }
}
.event-detail__media-video {
  margin-bottom: calc(1.3125rem + 0.75vw);
}
@media (min-width: 1200px) {
  .event-detail__media-video {
    margin-bottom: 1.875rem;
  }
}
.event-detail__media-video iframe {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 16/9;
  border: 0;
  border-radius: 6px;
}
.event-detail__media-gallery {
  margin-top: calc(1.3125rem + 0.75vw);
}
@media (min-width: 1200px) {
  .event-detail__media-gallery {
    margin-top: 1.875rem;
  }
}
.event-detail__gallery-item {
  display: block;
  position: relative;
  overflow: hidden;
  border-radius: 12px;
  cursor: pointer;
}
.event-detail__gallery-item img {
  width: 100%;
  aspect-ratio: 4/3;
  object-fit: cover;
  transition: transform 0.3s ease;
}
.event-detail__gallery-item:hover img {
  transform: scale(1.03);
}
.event-detail__gallery-item:hover .event-detail__gallery-zoom {
  opacity: 1;
}
.event-detail__gallery-zoom {
  position: absolute;
  bottom: 12px;
  right: 12px;
  width: 36px;
  height: 36px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(0, 0, 0, 0.6);
  color: white;
  border-radius: 50%;
  font-weight: 400;
  font-size: 0.875rem;
  opacity: 0;
  transition: opacity 0.2s ease;
}
.event-detail__media-carousel .splide__slide img {
  width: 100%;
  aspect-ratio: 16/9;
  object-fit: cover;
  border-radius: 6px;
}
.event-detail__visit {
  background: #000b17;
  color: #fefcf3;
}
.event-detail__visit .tabbed-content__heading {
  color: #fefcf3;
}
.event-detail__visit .tabbed-content__tabs {
  border-bottom-color: rgba(255, 255, 255, 0.2);
}
.event-detail__visit .tabbed-content__tab {
  color: rgba(255, 255, 255, 0.7);
}
.event-detail__visit .tabbed-content__tab:hover {
  color: #fefcf3;
}
.event-detail__visit .tabbed-content__tab--active {
  color: #fefcf3;
  border-bottom-color: #e40046;
}
.event-detail__visit .tabbed-content__body {
  color: rgba(255, 255, 255, 0.9);
}
.event-detail__similar {
  padding-top: calc(1.4375rem + 2.25vw);
}
@media (min-width: 1200px) {
  .event-detail__similar {
    padding-top: 3.125rem;
  }
}
.event-detail__similar {
  padding-bottom: calc(1.4375rem + 2.25vw);
}
@media (min-width: 1200px) {
  .event-detail__similar {
    padding-bottom: 3.125rem;
  }
}
.event-detail__similar-heading {
  font-weight: 700;
  font-size: calc(1.35rem + 1.2vw);
}
@media (min-width: 1200px) {
  .event-detail__similar-heading {
    font-size: 2.25rem;
  }
}
.event-detail__similar-heading {
  text-align: center;
  margin-bottom: calc(1.3125rem + 0.75vw);
}
@media (min-width: 1200px) {
  .event-detail__similar-heading {
    margin-bottom: 1.875rem;
  }
}
.event-detail__perf-content {
  padding: 1.25rem;
}
.event-detail__perf-list h2 {
  font-weight: 700;
  font-size: calc(1.3rem + 0.6vw);
}
@media (min-width: 1200px) {
  .event-detail__perf-list h2 {
    font-size: 1.75rem;
  }
}
.event-detail__perf-list h2 {
  margin-bottom: 1.25rem;
}
.event-detail__perf-list h4 {
  font-weight: 700;
  font-size: 1.25rem;
  margin-top: 0.9375rem;
  margin-bottom: 0.625rem;
}
.event-detail__perf-btn {
  display: block;
  margin-bottom: 0.5rem;
  text-align: left;
}
.event-detail__perf-btn--sold-out, .event-detail__perf-btn--disabled {
  opacity: 0.5;
  cursor: not-allowed;
}
.event-detail__perf-access {
  display: inline-flex;
  gap: 4px;
  margin-left: 10px;
  vertical-align: middle;
}
.event-detail__perf-past {
  padding-top: calc(1.3125rem + 0.75vw);
}
@media (min-width: 1200px) {
  .event-detail__perf-past {
    padding-top: 1.875rem;
  }
}
.event-detail__perf-past a {
  color: #fefcf3;
  text-decoration: underline;
}
.event-detail__categories {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 1.25rem;
}
.event-detail__category-tag {
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
  padding-left: 0.625rem;
  padding-right: 0.625rem;
  background: #e40046;
  border-radius: 15px;
  color: white;
  font-weight: bold;
  letter-spacing: 0;
  text-transform: uppercase;
  font-weight: 700 !important;
  font-weight: 400;
  font-size: 0.875rem;
}

.events-section__strapline {
  font-weight: 400;
  font-size: 1.3rem !important;
  font-weight: bold !important;
  color: #333 !important;
  margin: 0;
  text-align: center;
  margin-top: 0.25rem;
}

.event-detail__ticket-overwrite span,
.event-detail__ticket-overwrite,
.event-detail__ticket-overwrite p {
  font-family: inherit !important;
  font-size: 16px !important;
  line-height: 1.5 !important;
  color: black;
  letter-spacing: inherit !important;
}

.event-detail__ticket-overwrite {
  padding-bottom: 0.5rem;
}

#membership-modal {
  background: #07192c;
  overflow-y: auto;
  align-items: flex-start;
  padding-top: calc(1.5rem + 3vw);
}
@media (min-width: 1200px) {
  #membership-modal {
    padding-top: 3.75rem;
  }
}
#membership-modal {
  padding-bottom: calc(1.5rem + 3vw);
}
@media (min-width: 1200px) {
  #membership-modal {
    padding-bottom: 3.75rem;
  }
}
#membership-modal .modal-box__close {
  z-index: 10;
}

.membership-modal__header {
  text-align: center;
  margin-bottom: calc(1.375rem + 1.5vw);
}
@media (min-width: 1200px) {
  .membership-modal__header {
    margin-bottom: 2.5rem;
  }
}

.membership-modal__title {
  font-weight: 700;
  font-size: calc(1.35rem + 1.2vw);
}
@media (min-width: 1200px) {
  .membership-modal__title {
    font-size: 2.25rem;
  }
}
.membership-modal__title {
  color: #fefcf3;
  margin-bottom: 0.5rem;
}
@media (max-width: 767.98px) {
  .membership-modal__title {
    font-weight: 700;
    font-size: calc(1.3rem + 0.6vw);
  }
}
@media (max-width: 767.98px) and (min-width: 1200px) {
  .membership-modal__title {
    font-size: 1.75rem;
  }
}

.membership-modal__subtitle {
  font-weight: 400;
  font-size: 1.125rem;
  color: rgba(255, 255, 255, 0.7);
  margin: 0;
}

.membership-modal__cards {
  display: flex;
  gap: 24px;
  justify-content: center;
  max-width: 720px;
  margin: 0 auto;
}
@media (max-width: 767.98px) {
  .membership-modal__cards {
    flex-direction: column;
    max-width: 360px;
  }
}

.membership-modal__card {
  flex: 1;
  border-radius: 12px;
  overflow: hidden;
  background: rgb(4.2, 15, 26.4);
  border: 1px solid rgba(255, 255, 255, 0.1);
  display: flex;
  flex-direction: column;
}
.membership-modal__card--premium {
  border-color: rgba(255, 200, 50, 0.3);
}

.membership-modal__card-header {
  background: #e40046;
  padding-top: 1.25rem;
  padding-bottom: 1.25rem;
  padding-left: calc(1.275rem + 0.3vw);
}
@media (min-width: 1200px) {
  .membership-modal__card-header {
    padding-left: 1.5rem;
  }
}
.membership-modal__card-header {
  padding-right: calc(1.275rem + 0.3vw);
}
@media (min-width: 1200px) {
  .membership-modal__card-header {
    padding-right: 1.5rem;
  }
}
.membership-modal__card-header {
  text-align: center;
}
.membership-modal__card-header h3 {
  font-weight: 700;
  font-size: calc(1.2625rem + 0.15vw);
}
@media (min-width: 1200px) {
  .membership-modal__card-header h3 {
    font-size: 1.375rem;
  }
}
.membership-modal__card-header h3 {
  color: #fefcf3;
  margin: 0;
  margin-bottom: 0.25rem;
}
.membership-modal__card-header--premium {
  background: #cba058;
}

.membership-modal__price {
  font-weight: 700;
  font-size: calc(1.325rem + 0.9vw);
}
@media (min-width: 1200px) {
  .membership-modal__price {
    font-size: 2rem;
  }
}
.membership-modal__price {
  color: #fefcf3;
  display: block;
}
.membership-modal__price small {
  font-weight: 400;
  font-size: 1rem;
  opacity: 0.8;
}

.membership-modal__card-body {
  padding-top: calc(1.275rem + 0.3vw);
}
@media (min-width: 1200px) {
  .membership-modal__card-body {
    padding-top: 1.5rem;
  }
}
.membership-modal__card-body {
  padding-bottom: calc(1.275rem + 0.3vw);
}
@media (min-width: 1200px) {
  .membership-modal__card-body {
    padding-bottom: 1.5rem;
  }
}
.membership-modal__card-body {
  padding-left: calc(1.275rem + 0.3vw);
}
@media (min-width: 1200px) {
  .membership-modal__card-body {
    padding-left: 1.5rem;
  }
}
.membership-modal__card-body {
  padding-right: calc(1.275rem + 0.3vw);
}
@media (min-width: 1200px) {
  .membership-modal__card-body {
    padding-right: 1.5rem;
  }
}
.membership-modal__card-body {
  flex: 1;
  display: flex;
  flex-direction: column;
}

.membership-modal__benefits {
  list-style: none;
  padding: 0;
  margin: 0;
  margin-bottom: calc(1.275rem + 0.3vw);
}
@media (min-width: 1200px) {
  .membership-modal__benefits {
    margin-bottom: 1.5rem;
  }
}
.membership-modal__benefits {
  flex: 1;
}
.membership-modal__benefits li {
  font-weight: 400;
  font-size: 0.9375rem;
  color: rgba(255, 255, 255, 0.9);
  padding-bottom: 0.625rem;
  line-height: 1.4;
}
.membership-modal__benefits li i {
  color: #0b4052;
  margin-right: 8px;
  width: 16px;
  text-align: center;
}

.membership-modal__actions {
  margin-bottom: 0.75rem;
}
.membership-modal__actions .button {
  width: 100%;
  text-align: center;
  display: block;
  text-transform: uppercase;
  letter-spacing: 1px;
}

.membership-modal__message {
  font-weight: 400;
  font-size: 0.875rem;
  text-align: center;
  padding-top: 0.625rem;
  padding-bottom: 0.625rem;
  border-radius: 6px;
}
.membership-modal__message--success {
  color: #0b4052;
}
.membership-modal__message--success i {
  margin-right: 6px;
}
.membership-modal__message--error {
  color: #e40046;
}
.membership-modal__message--error i {
  margin-right: 6px;
}

.membership-modal__card-header h3 {
  padding-bottom: 0;
  margin-bottom: 0;
}

.festival-events {
  padding-top: calc(1.5rem + 3vw);
}
@media (min-width: 1200px) {
  .festival-events {
    padding-top: 3.75rem;
  }
}
.festival-events {
  padding-bottom: calc(1.5rem + 3vw);
}
@media (min-width: 1200px) {
  .festival-events {
    padding-bottom: 3.75rem;
  }
}
.festival-events__heading {
  text-align: center;
  margin-bottom: calc(1.375rem + 1.5vw);
}
@media (min-width: 1200px) {
  .festival-events__heading {
    margin-bottom: 2.5rem;
  }
}
.festival-events__cta {
  text-align: center;
  margin-top: calc(1.375rem + 1.5vw);
}
@media (min-width: 1200px) {
  .festival-events__cta {
    margin-top: 2.5rem;
  }
}

.seat-selection {
  max-width: 1300px;
  margin: 0 auto;
  padding-top: calc(1.275rem + 0.3vw);
}
@media (min-width: 1200px) {
  .seat-selection {
    padding-top: 1.5rem;
  }
}
.seat-selection {
  padding-bottom: calc(1.875rem + 7.5vw);
}
@media (min-width: 1200px) {
  .seat-selection {
    padding-bottom: 7.5rem;
  }
}
.seat-selection {
  padding-left: 0.9375rem;
  padding-right: 0.9375rem;
}
.has-admin-toolbar .seat-selection {
  padding-bottom: calc(2.125rem + 10.5vw);
}
@media (min-width: 1200px) {
  .has-admin-toolbar .seat-selection {
    padding-bottom: 10rem;
  }
}

.seat-selection__header {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 16px;
  margin-bottom: 1.25rem;
}
@media (max-width: 767.98px) {
  .seat-selection__header {
    flex-direction: column;
  }
}

.seat-selection__event-name {
  font-weight: 700;
  font-size: calc(1.275rem + 0.3vw);
}
@media (min-width: 1200px) {
  .seat-selection__event-name {
    font-size: 1.5rem;
  }
}
.seat-selection__event-name {
  color: #000b17;
  margin: 0;
  padding-bottom: 0.25rem;
}

.seat-selection__date {
  font-weight: 400;
  font-size: 1rem;
  color: #909090;
  margin: 0;
  margin-top: 0.125rem;
}

.seat-selection__venue {
  font-weight: 400;
  font-size: 0.875rem;
  color: #909090;
  margin: 0;
  margin-top: 0.125rem;
}

.seat-selection__mode-toggle--header {
  flex-shrink: 0;
}
@media (min-width: 992px) {
  .seat-selection__mode-toggle--header {
    display: none;
  }
}

.seat-selection__iframe-container {
  margin-bottom: calc(1.3125rem + 0.75vw);
}
@media (min-width: 1200px) {
  .seat-selection__iframe-container {
    margin-bottom: 1.875rem;
  }
}
.seat-selection__iframe-container iframe {
  width: 100%;
  border: none;
}

.seat-selection__layout {
  display: flex;
  gap: 24px;
}
@media (max-width: 991.98px) {
  .seat-selection__layout {
    flex-direction: column;
    gap: 0;
  }
}

.seat-selection__sidebar {
  width: 280px;
  flex-shrink: 0;
  position: sticky;
  top: calc(var(--header-height, 80px) + 16px);
  align-self: flex-start;
}
@media (max-width: 991.98px) {
  .seat-selection__sidebar {
    width: 100%;
    position: static;
    display: contents;
  }
}

@media (max-width: 991.98px) {
  .seat-selection__sidebar-info {
    display: none;
  }
}

.seat-selection__divider {
  border: none;
  border-top: 1px solid #909090;
  margin-top: 1rem;
  margin-bottom: 1rem;
}
@media (max-width: 991.98px) {
  .seat-selection__divider {
    display: none;
  }
}

.seat-selection__map-area {
  flex: 1;
  min-width: 0;
}

@media (min-width: 992px) {
  .seat-selection__header--map-loaded {
    display: none;
  }
}

.seat-loading {
  text-align: center;
  padding-top: calc(1.4375rem + 2.25vw);
}
@media (min-width: 1200px) {
  .seat-loading {
    padding-top: 3.125rem;
  }
}
.seat-loading {
  padding-bottom: calc(1.4375rem + 2.25vw);
}
@media (min-width: 1200px) {
  .seat-loading {
    padding-bottom: 3.125rem;
  }
}
.seat-loading {
  color: #909090;
}

.seat-error {
  background: #fff3cd;
  border: 1px solid #ffc107;
  border-radius: 6px;
  padding: 0.75rem;
  margin-bottom: calc(1.28125rem + 0.375vw);
}
@media (min-width: 1200px) {
  .seat-error {
    margin-bottom: 1.5625rem;
  }
}
.seat-error {
  color: #856404;
}

.area-tabs {
  display: flex;
  gap: 8px;
}
@media (min-width: 992px) {
  .area-tabs {
    flex-direction: column;
  }
}
@media (max-width: 991.98px) {
  .area-tabs {
    flex-wrap: nowrap;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    margin-bottom: 0.75rem;
  }
}

.area-tab {
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
  padding-left: 1.25rem;
  padding-right: 1.25rem;
  border: 2px solid #000b17;
  border-radius: 6px;
  background: #fefcf3;
  color: #000b17;
  cursor: pointer;
  font-weight: 600;
  font-weight: 400;
  font-size: 0.875rem;
  transition: background 0.15s, color 0.15s;
}
@media (max-width: 991.98px) {
  .area-tab {
    white-space: nowrap;
    flex-shrink: 0;
  }
}
.area-tab:hover {
  background: #909090;
}
.area-tab.active {
  background: #000b17;
  color: #fefcf3;
}

.seat-legend {
  display: flex;
  gap: 12px;
  font-weight: 400;
  font-size: 0.8125rem;
}
@media (min-width: 992px) {
  .seat-legend {
    flex-direction: column;
  }
}
@media (max-width: 991.98px) {
  .seat-legend {
    flex-wrap: wrap;
    margin-bottom: 0.75rem;
  }
}

.legend-item {
  display: flex;
  align-items: center;
  gap: 6px;
}

.legend-swatch {
  width: 14px;
  height: 14px;
  border-radius: 50%;
  border: 1px solid rgba(0, 0, 0, 0.15);
}

.stage-label {
  text-align: center;
  font-weight: 700;
  font-weight: 700;
  font-size: 0.875rem;
  letter-spacing: 0.2em;
  color: #909090;
  padding: 0.5rem;
  margin-bottom: 0.5rem;
  border-bottom: 2px solid #909090;
}

.seat-map-container {
  position: relative;
  width: 100%;
  overflow: auto;
  border: 1px solid #909090;
  border-radius: 8px;
  margin-bottom: calc(1.28125rem + 0.375vw);
}
@media (min-width: 1200px) {
  .seat-map-container {
    margin-bottom: 1.5625rem;
  }
}
@media (max-width: 991.98px) {
  .seat-map-container {
    min-height: 60vh;
  }
}

#seat-map {
  display: block;
  width: 100%;
  height: auto;
}
#seat-map circle {
  cursor: pointer;
  transition: fill 0.1s, stroke 0.1s, r 0.1s;
}
#seat-map circle.unavailable {
  cursor: default;
  fill: #909090 !important;
}
#seat-map circle.selected {
  stroke: #000b17;
  stroke-width: 2.5;
}
#seat-map circle:hover:not(.unavailable) {
  filter: brightness(1.15);
}
#seat-map text.row-label {
  font-size: 10px;
  fill: #909090;
  font-weight: 600;
  pointer-events: none;
}

.seat-tooltip {
  position: fixed;
  background: #000b17;
  color: #fefcf3;
  padding-top: 0.375rem;
  padding-bottom: 0.375rem;
  padding-left: 0.625rem;
  padding-right: 0.625rem;
  border-radius: 4px;
  font-weight: 400;
  font-size: 0.8125rem;
  pointer-events: none;
  z-index: 1000;
  white-space: nowrap;
}

.type-modal-overlay {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.6);
  backdrop-filter: blur(4px);
  -webkit-backdrop-filter: blur(4px);
  z-index: 2000;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0.9375rem;
}

.type-modal {
  background: #fefcf3;
  border-radius: 12px;
  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.25);
  padding: calc(1.3125rem + 0.75vw);
}
@media (min-width: 1200px) {
  .type-modal {
    padding: 1.875rem;
  }
}
.type-modal {
  width: 100%;
  max-width: 400px;
  position: relative;
}
.type-modal__close {
  position: absolute;
  top: 12px;
  right: 12px;
  background: none;
  border: none;
  font-weight: 400;
  font-size: calc(1.275rem + 0.3vw);
}
@media (min-width: 1200px) {
  .type-modal__close {
    font-size: 1.5rem;
  }
}
.type-modal__close {
  color: #909090;
  cursor: pointer;
  line-height: 1;
  padding: 0.25rem;
}
.type-modal__close:hover {
  color: #000b17;
}
.type-modal__title {
  font-weight: 700;
  font-size: 1.25rem;
  font-weight: 700;
  margin: 0;
  margin-bottom: 0.25rem;
  color: #000b17;
}
.type-modal__seat {
  font-weight: 400;
  font-size: 0.875rem;
  color: #909090;
  margin: 0;
  margin-bottom: 1.25rem;
}
.type-modal__options {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.type-option {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 0.875rem;
  border: 2px solid #909090;
  border-radius: 8px;
  cursor: pointer;
  font-weight: 400;
  font-size: 1rem;
  transition: border-color 0.15s, background 0.15s;
}
.type-option:hover {
  border-color: #000b17;
  background: #909090;
}
.type-option-name {
  font-weight: 600;
}
.type-option-price {
  font-weight: 600;
  color: #000b17;
}

.seat-bar {
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 100;
  background: #44bfe7;
  color: #000b17;
  box-shadow: 0 -4px 20px rgba(0, 0, 0, 0.12);
}
.has-admin-toolbar .seat-bar {
  bottom: 40px;
}

.seat-bar__inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  max-width: 1300px;
  margin: 0 auto;
  padding-top: 0.875rem;
  padding-bottom: 0.875rem;
  padding-left: 1.25rem;
  padding-right: 1.25rem;
  gap: 20px;
}
@media (max-width: 767.98px) {
  .seat-bar__inner {
    flex-direction: column;
    gap: 10px;
  }
}

.seat-bar__info {
  display: flex;
  align-items: center;
  gap: 12px;
  flex: 1;
  min-width: 0;
  flex-wrap: wrap;
}

.seat-bar__prompt {
  font-weight: 400;
  font-size: 0.875rem;
  color: #000b17;
  opacity: 0.7;
}

.seat-bar__seats {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.seat-bar__chip {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  background: #fefcf3;
  color: #000b17;
  padding-top: 0.25rem;
  padding-bottom: 0.25rem;
  padding-left: 0.625rem;
  padding-right: 0.375rem;
  border-radius: 20px;
  font-weight: 400;
  font-size: 0.8125rem;
  font-weight: 600;
}

.seat-bar__chip-remove {
  background: none;
  border: none;
  color: #909090;
  cursor: pointer;
  font-weight: 400;
  font-size: 1rem;
  line-height: 1;
  padding: 0 2px;
}
.seat-bar__chip-remove:hover {
  color: #e40046;
}

.seat-bar__actions {
  display: flex;
  align-items: center;
  gap: 12px;
  flex-shrink: 0;
}

.seat-bar__total {
  font-weight: 700;
  font-size: calc(1.2625rem + 0.15vw);
}
@media (min-width: 1200px) {
  .seat-bar__total {
    font-size: 1.375rem;
  }
}
.seat-bar__total {
  font-weight: 700;
  color: #000b17;
}

.seat-bar .basket-btn--primary:disabled {
  opacity: 0.4;
  cursor: not-allowed;
}

.ticket-selection {
  padding-top: calc(1.375rem + 1.5vw);
}
@media (min-width: 1200px) {
  .ticket-selection {
    padding-top: 2.5rem;
  }
}
.ticket-selection {
  padding-bottom: calc(1.875rem + 7.5vw);
}
@media (min-width: 1200px) {
  .ticket-selection {
    padding-bottom: 7.5rem;
  }
}
.has-admin-toolbar .ticket-selection {
  padding-bottom: calc(2.125rem + 10.5vw);
}
@media (min-width: 1200px) {
  .has-admin-toolbar .ticket-selection {
    padding-bottom: 10rem;
  }
}

.ticket-selection__header {
  margin-bottom: calc(1.275rem + 0.3vw);
}
@media (min-width: 1200px) {
  .ticket-selection__header {
    margin-bottom: 1.5rem;
  }
}

.ticket-selection__event-name {
  font-weight: 700;
  font-size: calc(1.275rem + 0.3vw);
}
@media (min-width: 1200px) {
  .ticket-selection__event-name {
    font-size: 1.5rem;
  }
}
.ticket-selection__event-name {
  color: #000b17;
  padding-bottom: 0.25rem;
}

.ticket-selection__date {
  font-weight: 400;
  font-size: 1rem;
  color: #909090;
  margin-top: 0.25rem;
}

.ticket-selection__venue {
  font-weight: 400;
  font-size: 0.875rem;
  color: #909090;
  margin-top: 0.125rem;
}

.ticket-selection__mode-toggle {
  margin-bottom: calc(1.275rem + 0.3vw);
}
@media (min-width: 1200px) {
  .ticket-selection__mode-toggle {
    margin-bottom: 1.5rem;
  }
}

.ticket-selection__iframe-container {
  width: 100%;
  border-radius: 8px;
  overflow: hidden;
  margin-bottom: calc(1.275rem + 0.3vw);
}
@media (min-width: 1200px) {
  .ticket-selection__iframe-container {
    margin-bottom: 1.5rem;
  }
}
.ticket-selection__iframe-container iframe {
  width: 100%;
  height: 80vh;
  border: none;
  display: block;
}

.ticket-selection__loading {
  text-align: center;
  padding-top: calc(1.5rem + 3vw);
}
@media (min-width: 1200px) {
  .ticket-selection__loading {
    padding-top: 3.75rem;
  }
}
.ticket-selection__loading {
  padding-bottom: calc(1.5rem + 3vw);
}
@media (min-width: 1200px) {
  .ticket-selection__loading {
    padding-bottom: 3.75rem;
  }
}
.ticket-selection__loading {
  color: #909090;
}

.ticket-selection__error {
  background: #fff3cd;
  border: 1px solid #ffc107;
  border-radius: 6px;
  padding-top: 0.75rem;
  padding-bottom: 0.75rem;
  padding-left: 1rem;
  padding-right: 1rem;
  margin-bottom: calc(1.275rem + 0.3vw);
}
@media (min-width: 1200px) {
  .ticket-selection__error {
    margin-bottom: 1.5rem;
  }
}
.ticket-selection__error {
  color: #856404;
}
.ticket-selection__error p {
  margin: 0;
}

.ticket-selection__empty {
  text-align: center;
  padding-top: calc(1.5rem + 3vw);
}
@media (min-width: 1200px) {
  .ticket-selection__empty {
    padding-top: 3.75rem;
  }
}
.ticket-selection__empty {
  padding-bottom: calc(1.5rem + 3vw);
}
@media (min-width: 1200px) {
  .ticket-selection__empty {
    padding-bottom: 3.75rem;
  }
}
.ticket-selection__empty {
  color: #909090;
}
.ticket-selection__empty p {
  font-weight: 400;
  font-size: 1rem;
  padding-bottom: calc(1.275rem + 0.3vw);
}
@media (min-width: 1200px) {
  .ticket-selection__empty p {
    padding-bottom: 1.5rem;
  }
}

.ticket-selection__bands {
  display: flex;
  flex-direction: column;
  gap: 12px;
  margin-bottom: calc(1.275rem + 0.3vw);
}
@media (min-width: 1200px) {
  .ticket-selection__bands {
    margin-bottom: 1.5rem;
  }
}
.ticket-selection__bands {
  padding-bottom: calc(1.75rem + 6vw);
}
@media (min-width: 1200px) {
  .ticket-selection__bands {
    padding-bottom: 6.25rem;
  }
}

.ticket-selection__band {
  display: flex;
  align-items: center;
  padding-top: 1rem;
  padding-bottom: 1rem;
  padding-left: 1.25rem;
  padding-right: 1.25rem;
  border-radius: 8px;
  gap: 16px;
}
@media (max-width: 767.98px) {
  .ticket-selection__band {
    flex-wrap: wrap;
  }
}

.ticket-selection__band-info {
  display: flex;
  flex-direction: column;
  gap: 2px;
  flex: 1;
  min-width: 200px;
}

.ticket-selection__band-name {
  font-weight: 600;
  font-weight: 700;
  font-size: 1rem;
}

.ticket-selection__band-detail {
  font-weight: 400;
  font-size: 0.875rem;
  color: #909090;
}

.ticket-selection__band-price {
  font-weight: 600;
  font-weight: 700;
  font-size: 1rem;
  color: #000b17;
  min-width: 80px;
}

.ticket-selection__band-qty {
  min-width: 70px;
  text-align: right;
}

.ticket-qty-select {
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
  padding-left: 0.75rem;
  margin-bottom: 0;
  padding-right: 0.75rem;
  border: 2px solid #f3f3f3;
  border-radius: 6px;
  font-weight: 400;
  font-size: 1rem;
  min-width: 60px;
  background: white;
}
.ticket-qty-select:focus {
  border-color: #000b17;
  outline: none;
}

.ticket-bar {
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 100;
  background: #44bfe7;
  color: #000b17;
  box-shadow: 0 -4px 20px rgba(0, 0, 0, 0.12);
}
.has-admin-toolbar .ticket-bar {
  bottom: 40px;
}

.ticket-bar__inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding-top: 1rem;
  padding-bottom: 1rem;
  gap: 24px;
}
@media (max-width: 767.98px) {
  .ticket-bar__inner {
    flex-direction: column;
    gap: 12px;
    text-align: center;
  }
}

.ticket-bar__info {
  display: flex;
  align-items: center;
  gap: 16px;
}
@media (max-width: 767.98px) {
  .ticket-bar__info {
    flex-direction: column;
    gap: 4px;
  }
}

.ticket-bar__event {
  font-weight: 700;
  font-size: 1rem;
  font-weight: 600;
  color: #000b17;
}

.ticket-bar__summary {
  font-weight: 400;
  font-size: 0.875rem;
  color: #000b17;
  opacity: 0.7;
}

.ticket-bar__actions {
  display: flex;
  align-items: center;
  gap: 16px;
}

.ticket-bar__total {
  font-weight: 700;
  font-size: 1.25rem;
  font-weight: 700;
}

.ticket-bar .basket-btn--primary:disabled {
  opacity: 0.4;
  cursor: not-allowed;
}

.ticket-bar__total {
  color: #000b17;
}

.news-article__carousel-subtitle {
  font-weight: 400;
  font-size: 1.125rem;
  margin-bottom: calc(1.3125rem + 0.75vw);
}
@media (min-width: 1200px) {
  .news-article__carousel-subtitle {
    margin-bottom: 1.875rem;
  }
}
.news-article__carousel-subtitle {
  max-width: 600px;
}

.news-listing__filters {
  display: flex;
  gap: 0.5rem;
  margin-bottom: calc(1.3125rem + 0.75vw);
}
@media (min-width: 1200px) {
  .news-listing__filters {
    margin-bottom: 1.875rem;
  }
}
.news-listing__filter {
  font-weight: 400;
  font-size: 1rem;
  padding-top: 0.625rem;
  padding-bottom: 0.625rem;
  padding-left: 1.5rem;
  padding-right: 1.5rem;
  border: 2px solid #e40046;
  border-radius: 2rem;
  color: #e40046;
  text-decoration: none;
  font-weight: 600;
  transition: background-color 0.2s, color 0.2s;
}
.news-listing__filter:hover {
  background-color: rgba(228, 0, 70, 0.1);
  color: #e40046;
}
.news-listing__filter--active {
  background-color: #e40046;
  color: #fefcf3;
}
.news-listing__filter--active:hover {
  background-color: #e40046;
  color: #fefcf3;
}
.news-listing__count {
  font-weight: 400;
  opacity: 0.8;
}
.news-listing__grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1.5rem;
}
@media (max-width: 991.98px) {
  .news-listing__grid {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (max-width: 575.98px) {
  .news-listing__grid {
    grid-template-columns: 1fr;
  }
}
.news-listing__empty {
  font-weight: 400;
  font-size: 1.125rem;
  color: #909090;
  text-align: center;
  padding-top: calc(1.5rem + 3vw);
}
@media (min-width: 1200px) {
  .news-listing__empty {
    padding-top: 3.75rem;
  }
}
.news-listing__empty {
  padding-bottom: calc(1.5rem + 3vw);
}
@media (min-width: 1200px) {
  .news-listing__empty {
    padding-bottom: 3.75rem;
  }
}