/* ============ LIBRARIES ============ */
/* _flexbox-grid.scss */
@import url("https://fonts.googleapis.com/css2?family=Kdam+Thmor+Pro&family=Lato:ital,wght@0,300;0,400;0,700;1,300;1,400;1,700&display=swap");
.flex-container,
.flex-container-fluid {
  margin-right: auto;
  margin-left: auto;
  padding-right: 2rem;
  padding-left: 2rem;
}

.flex-row {
  box-sizing: border-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -webkit-flex: 0 1 auto;
  -ms-flex: 0 1 auto;
  -webkit-box-flex: 0;
  flex: 0 1 auto;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-right: -1rem;
  margin-left: -1rem;
}

.flex-row.reverse {
  -webkit-flex-direction: row-reverse;
  -ms-flex-direction: row-reverse;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  flex-direction: row-reverse;
}

.flex-col.reverse {
  -webkit-flex-direction: column-reverse;
  -ms-flex-direction: column-reverse;
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
  flex-direction: column-reverse;
}

.flex-col-xs,
.flex-col-xs-1,
.flex-col-xs-2,
.flex-col-xs-3,
.flex-col-xs-4,
.flex-col-xs-5,
.flex-col-xs-6,
.flex-col-xs-7,
.flex-col-xs-8,
.flex-col-xs-9,
.flex-col-xs-10,
.flex-col-xs-11,
.flex-col-xs-12 {
  box-sizing: border-box;
  -webkit-flex: 0 0 auto;
  -ms-flex: 0 0 auto;
  -webkit-box-flex: 0;
  flex: 0 0 auto;
  padding-right: 1rem;
  padding-left: 1rem;
}

.flex-col-xs {
  -webkit-flex-grow: 1;
  -ms-flex-positive: 1;
  -webkit-box-flex: 1;
  flex-grow: 1;
  -ms-flex-preferred-size: 0;
  -webkit-flex-basis: 0;
  flex-basis: 0;
  max-width: 100%;
}

.flex-col-xs-1 {
  -ms-flex-preferred-size: 8.333%;
  -webkit-flex-basis: 8.333%;
  flex-basis: 8.333%;
  max-width: 8.333%;
}

.flex-col-xs-2 {
  -ms-flex-preferred-size: 16.667%;
  -webkit-flex-basis: 16.667%;
  flex-basis: 16.667%;
  max-width: 16.667%;
}

.flex-col-xs-3 {
  -ms-flex-preferred-size: 25%;
  -webkit-flex-basis: 25%;
  flex-basis: 25%;
  max-width: 25%;
}

.flex-col-xs-4 {
  -ms-flex-preferred-size: 33.333%;
  -webkit-flex-basis: 33.333%;
  flex-basis: 33.333%;
  max-width: 33.333%;
}

.flex-col-xs-5 {
  -ms-flex-preferred-size: 41.667%;
  -webkit-flex-basis: 41.667%;
  flex-basis: 41.667%;
  max-width: 41.667%;
}

.flex-col-xs-6 {
  -ms-flex-preferred-size: 50%;
  -webkit-flex-basis: 50%;
  flex-basis: 50%;
  max-width: 50%;
}

.flex-col-xs-7 {
  -ms-flex-preferred-size: 58.333%;
  -webkit-flex-basis: 58.333%;
  flex-basis: 58.333%;
  max-width: 58.333%;
}

.flex-col-xs-8 {
  -ms-flex-preferred-size: 66.667%;
  -webkit-flex-basis: 66.667%;
  flex-basis: 66.667%;
  max-width: 66.667%;
}

.flex-col-xs-9 {
  -ms-flex-preferred-size: 75%;
  -webkit-flex-basis: 75%;
  flex-basis: 75%;
  max-width: 75%;
}

.flex-col-xs-10 {
  -ms-flex-preferred-size: 83.333%;
  -webkit-flex-basis: 83.333%;
  flex-basis: 83.333%;
  max-width: 83.333%;
}

.flex-col-xs-11 {
  -ms-flex-preferred-size: 91.667%;
  -webkit-flex-basis: 91.667%;
  flex-basis: 91.667%;
  max-width: 91.667%;
}

.flex-col-xs-12 {
  -ms-flex-preferred-size: 100%;
  -webkit-flex-basis: 100%;
  flex-basis: 100%;
  max-width: 100%;
}

.flex-col-xs-offset-1 {
  margin-left: 8.333%;
}

.flex-col-xs-offset-2 {
  margin-left: 16.667%;
}

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

.flex-col-xs-offset-4 {
  margin-left: 33.333%;
}

.flex-col-xs-offset-5 {
  margin-left: 41.667%;
}

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

.flex-col-xs-offset-7 {
  margin-left: 58.333%;
}

.flex-col-xs-offset-8 {
  margin-left: 66.667%;
}

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

.flex-col-xs-offset-10 {
  margin-left: 83.333%;
}

.flex-col-xs-offset-11 {
  margin-left: 91.667%;
}

.start-xs {
  -webkit-justify-content: flex-start;
  -ms-flex-pack: start;
  -webkit-box-pack: start;
  justify-content: flex-start;
  text-align: start;
}

.center-xs {
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  -webkit-box-pack: center;
  justify-content: center;
  text-align: center;
}

.end-xs {
  -webkit-justify-content: flex-end;
  -ms-flex-pack: end;
  -webkit-box-pack: end;
  justify-content: flex-end;
  text-align: end;
}

.top-xs {
  -webkit-align-items: flex-start;
  -ms-flex-align: start;
  -webkit-box-align: start;
  align-items: flex-start;
}

.middle-xs {
  -webkit-align-items: center;
  -ms-flex-align: center;
  -webkit-box-align: center;
  align-items: center;
}

.bottom-xs {
  -webkit-align-items: flex-end;
  -ms-flex-align: end;
  -webkit-box-align: end;
  align-items: flex-end;
}

.around-xs {
  -webkit-justify-content: space-around;
  -ms-flex-pack: distribute;
  justify-content: space-around;
}

.between-xs {
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  -webkit-box-pack: justify;
  justify-content: space-between;
}

.first-xs {
  -webkit-order: -1;
  -ms-flex-order: -1;
  -webkit-box-ordinal-group: 0;
  order: -1;
}

.last-xs {
  -webkit-order: 1;
  -ms-flex-order: 1;
  -webkit-box-ordinal-group: 2;
  order: 1;
}

@media only screen and (min-width: 768px) {
  .flex-container {
    width: 750px;
  }
  .flex-col-sm,
  .flex-col-sm-1,
  .flex-col-sm-2,
  .flex-col-sm-3,
  .flex-col-sm-4,
  .flex-col-sm-5,
  .flex-col-sm-6,
  .flex-col-sm-7,
  .flex-col-sm-8,
  .flex-col-sm-9,
  .flex-col-sm-10,
  .flex-col-sm-11,
  .flex-col-sm-12 {
    box-sizing: border-box;
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    -webkit-box-flex: 0;
    flex: 0 0 auto;
    padding-right: 1rem;
    padding-left: 1rem;
  }
  .flex-col-sm {
    -webkit-flex-grow: 1;
    -ms-flex-positive: 1;
    -webkit-box-flex: 1;
    flex-grow: 1;
    -ms-flex-preferred-size: 0;
    -webkit-flex-basis: 0;
    flex-basis: 0;
    max-width: 100%;
  }
  .flex-col-sm-1 {
    -ms-flex-preferred-size: 8.333%;
    -webkit-flex-basis: 8.333%;
    flex-basis: 8.333%;
    max-width: 8.333%;
  }
  .flex-col-sm-2 {
    -ms-flex-preferred-size: 16.667%;
    -webkit-flex-basis: 16.667%;
    flex-basis: 16.667%;
    max-width: 16.667%;
  }
  .flex-col-sm-3 {
    -ms-flex-preferred-size: 25%;
    -webkit-flex-basis: 25%;
    flex-basis: 25%;
    max-width: 25%;
  }
  .flex-col-sm-4 {
    -ms-flex-preferred-size: 33.333%;
    -webkit-flex-basis: 33.333%;
    flex-basis: 33.333%;
    max-width: 33.333%;
  }
  .flex-col-sm-5 {
    -ms-flex-preferred-size: 41.667%;
    -webkit-flex-basis: 41.667%;
    flex-basis: 41.667%;
    max-width: 41.667%;
  }
  .flex-col-sm-6 {
    -ms-flex-preferred-size: 50%;
    -webkit-flex-basis: 50%;
    flex-basis: 50%;
    max-width: 50%;
  }
  .flex-col-sm-7 {
    -ms-flex-preferred-size: 58.333%;
    -webkit-flex-basis: 58.333%;
    flex-basis: 58.333%;
    max-width: 58.333%;
  }
  .flex-col-sm-8 {
    -ms-flex-preferred-size: 66.667%;
    -webkit-flex-basis: 66.667%;
    flex-basis: 66.667%;
    max-width: 66.667%;
  }
  .flex-col-sm-9 {
    -ms-flex-preferred-size: 75%;
    -webkit-flex-basis: 75%;
    flex-basis: 75%;
    max-width: 75%;
  }
  .flex-col-sm-10 {
    -ms-flex-preferred-size: 83.333%;
    -webkit-flex-basis: 83.333%;
    flex-basis: 83.333%;
    max-width: 83.333%;
  }
  .flex-col-sm-11 {
    -ms-flex-preferred-size: 91.667%;
    -webkit-flex-basis: 91.667%;
    flex-basis: 91.667%;
    max-width: 91.667%;
  }
  .flex-col-sm-12 {
    -ms-flex-preferred-size: 100%;
    -webkit-flex-basis: 100%;
    flex-basis: 100%;
    max-width: 100%;
  }
  .flex-col-sm-offset-0 {
    margin-left: 0;
  }
  .flex-col-sm-offset-1 {
    margin-left: 8.333%;
  }
  .flex-col-sm-offset-2 {
    margin-left: 16.667%;
  }
  .flex-col-sm-offset-3 {
    margin-left: 25%;
  }
  .flex-col-sm-offset-4 {
    margin-left: 33.333%;
  }
  .flex-col-sm-offset-5 {
    margin-left: 41.667%;
  }
  .flex-col-sm-offset-6 {
    margin-left: 50%;
  }
  .flex-col-sm-offset-7 {
    margin-left: 58.333%;
  }
  .flex-col-sm-offset-8 {
    margin-left: 66.667%;
  }
  .flex-col-sm-offset-9 {
    margin-left: 75%;
  }
  .flex-col-sm-offset-10 {
    margin-left: 83.333%;
  }
  .flex-col-sm-offset-11 {
    margin-left: 91.667%;
  }
  .start-sm {
    -webkit-justify-content: flex-start;
    -ms-flex-pack: start;
    -webkit-box-pack: start;
    justify-content: flex-start;
    text-align: start;
  }
  .center-sm {
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    -webkit-box-pack: center;
    justify-content: center;
    text-align: center;
  }
  .end-sm {
    -webkit-justify-content: flex-end;
    -ms-flex-pack: end;
    -webkit-box-pack: end;
    justify-content: flex-end;
    text-align: end;
  }
  .top-sm {
    -webkit-align-items: flex-start;
    -ms-flex-align: start;
    -webkit-box-align: start;
    align-items: flex-start;
  }
  .middle-sm {
    -webkit-align-items: center;
    -ms-flex-align: center;
    -webkit-box-align: center;
    align-items: center;
  }
  .bottom-sm {
    -webkit-align-items: flex-end;
    -ms-flex-align: end;
    -webkit-box-align: end;
    align-items: flex-end;
  }
  .around-sm {
    -webkit-justify-content: space-around;
    -ms-flex-pack: distribute;
    justify-content: space-around;
  }
  .between-sm {
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    -webkit-box-pack: justify;
    justify-content: space-between;
  }
  .first-sm {
    -webkit-order: -1;
    -ms-flex-order: -1;
    -webkit-box-ordinal-group: 0;
    order: -1;
  }
  .last-sm {
    -webkit-order: 1;
    -ms-flex-order: 1;
    -webkit-box-ordinal-group: 2;
    order: 1;
  }
}
@media only screen and (min-width: 1024px) {
  .flex-container {
    width: 970px;
  }
  .flex-col-md,
  .flex-col-md-1,
  .flex-col-md-2,
  .flex-col-md-3,
  .flex-col-md-4,
  .flex-col-md-5,
  .flex-col-md-6,
  .flex-col-md-7,
  .flex-col-md-8,
  .flex-col-md-9,
  .flex-col-md-10,
  .flex-col-md-11,
  .flex-col-md-12 {
    box-sizing: border-box;
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    -webkit-box-flex: 0;
    flex: 0 0 auto;
    padding-right: 1rem;
    padding-left: 1rem;
  }
  .flex-col-md {
    -webkit-flex-grow: 1;
    -ms-flex-positive: 1;
    -webkit-box-flex: 1;
    flex-grow: 1;
    -ms-flex-preferred-size: 0;
    -webkit-flex-basis: 0;
    flex-basis: 0;
    max-width: 100%;
  }
  .flex-col-md-1 {
    -ms-flex-preferred-size: 8.333%;
    -webkit-flex-basis: 8.333%;
    flex-basis: 8.333%;
    max-width: 8.333%;
  }
  .flex-col-md-2 {
    -ms-flex-preferred-size: 16.667%;
    -webkit-flex-basis: 16.667%;
    flex-basis: 16.667%;
    max-width: 16.667%;
  }
  .flex-col-md-3 {
    -ms-flex-preferred-size: 25%;
    -webkit-flex-basis: 25%;
    flex-basis: 25%;
    max-width: 25%;
  }
  .flex-col-md-4 {
    -ms-flex-preferred-size: 33.333%;
    -webkit-flex-basis: 33.333%;
    flex-basis: 33.333%;
    max-width: 33.333%;
  }
  .flex-col-md-5 {
    -ms-flex-preferred-size: 41.667%;
    -webkit-flex-basis: 41.667%;
    flex-basis: 41.667%;
    max-width: 41.667%;
  }
  .flex-col-md-6 {
    -ms-flex-preferred-size: 50%;
    -webkit-flex-basis: 50%;
    flex-basis: 50%;
    max-width: 50%;
  }
  .flex-col-md-7 {
    -ms-flex-preferred-size: 58.333%;
    -webkit-flex-basis: 58.333%;
    flex-basis: 58.333%;
    max-width: 58.333%;
  }
  .flex-col-md-8 {
    -ms-flex-preferred-size: 66.667%;
    -webkit-flex-basis: 66.667%;
    flex-basis: 66.667%;
    max-width: 66.667%;
  }
  .flex-col-md-9 {
    -ms-flex-preferred-size: 75%;
    -webkit-flex-basis: 75%;
    flex-basis: 75%;
    max-width: 75%;
  }
  .flex-col-md-10 {
    -ms-flex-preferred-size: 83.333%;
    -webkit-flex-basis: 83.333%;
    flex-basis: 83.333%;
    max-width: 83.333%;
  }
  .flex-col-md-11 {
    -ms-flex-preferred-size: 91.667%;
    -webkit-flex-basis: 91.667%;
    flex-basis: 91.667%;
    max-width: 91.667%;
  }
  .flex-col-md-12 {
    -ms-flex-preferred-size: 100%;
    -webkit-flex-basis: 100%;
    flex-basis: 100%;
    max-width: 100%;
  }
  .flex-col-md-offset-0 {
    margin-left: 0;
  }
  .flex-col-md-offset-1 {
    margin-left: 8.333%;
  }
  .flex-col-md-offset-2 {
    margin-left: 16.667%;
  }
  .flex-col-md-offset-3 {
    margin-left: 25%;
  }
  .flex-col-md-offset-4 {
    margin-left: 33.333%;
  }
  .flex-col-md-offset-5 {
    margin-left: 41.667%;
  }
  .flex-col-md-offset-6 {
    margin-left: 50%;
  }
  .flex-col-md-offset-7 {
    margin-left: 58.333%;
  }
  .flex-col-md-offset-8 {
    margin-left: 66.667%;
  }
  .flex-col-md-offset-9 {
    margin-left: 75%;
  }
  .flex-col-md-offset-10 {
    margin-left: 83.333%;
  }
  .flex-col-md-offset-11 {
    margin-left: 91.667%;
  }
  .start-md {
    -webkit-justify-content: flex-start;
    -ms-flex-pack: start;
    -webkit-box-pack: start;
    justify-content: flex-start;
    text-align: start;
  }
  .center-md {
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    -webkit-box-pack: center;
    justify-content: center;
    text-align: center;
  }
  .end-md {
    -webkit-justify-content: flex-end;
    -ms-flex-pack: end;
    -webkit-box-pack: end;
    justify-content: flex-end;
    text-align: end;
  }
  .top-md {
    -webkit-align-items: flex-start;
    -ms-flex-align: start;
    -webkit-box-align: start;
    align-items: flex-start;
  }
  .middle-md {
    -webkit-align-items: center;
    -ms-flex-align: center;
    -webkit-box-align: center;
    align-items: center;
  }
  .bottom-md {
    -webkit-align-items: flex-end;
    -ms-flex-align: end;
    -webkit-box-align: end;
    align-items: flex-end;
  }
  .around-md {
    -webkit-justify-content: space-around;
    -ms-flex-pack: distribute;
    justify-content: space-around;
  }
  .between-md {
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    -webkit-box-pack: justify;
    justify-content: space-between;
  }
  .first-md {
    -webkit-order: -1;
    -ms-flex-order: -1;
    -webkit-box-ordinal-group: 0;
    order: -1;
  }
  .last-md {
    -webkit-order: 1;
    -ms-flex-order: 1;
    -webkit-box-ordinal-group: 2;
    order: 1;
  }
}
@media only screen and (min-width: 1440px) {
  .flex-container {
    width: 1240px;
  }
  .flex-col-lg,
  .flex-col-lg-1,
  .flex-col-lg-2,
  .flex-col-lg-3,
  .flex-col-lg-4,
  .flex-col-lg-5,
  .flex-col-lg-6,
  .flex-col-lg-7,
  .flex-col-lg-8,
  .flex-col-lg-9,
  .flex-col-lg-10,
  .flex-col-lg-11,
  .flex-col-lg-12 {
    box-sizing: border-box;
    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    -webkit-box-flex: 0;
    flex: 0 0 auto;
    padding-right: 1rem;
    padding-left: 1rem;
  }
  .flex-col-lg {
    -webkit-flex-grow: 1;
    -ms-flex-positive: 1;
    -webkit-box-flex: 1;
    flex-grow: 1;
    -ms-flex-preferred-size: 0;
    -webkit-flex-basis: 0;
    flex-basis: 0;
    max-width: 100%;
  }
  .flex-col-lg-1 {
    -ms-flex-preferred-size: 8.333%;
    -webkit-flex-basis: 8.333%;
    flex-basis: 8.333%;
    max-width: 8.333%;
  }
  .flex-col-lg-2 {
    -ms-flex-preferred-size: 16.667%;
    -webkit-flex-basis: 16.667%;
    flex-basis: 16.667%;
    max-width: 16.667%;
  }
  .flex-col-lg-3 {
    -ms-flex-preferred-size: 25%;
    -webkit-flex-basis: 25%;
    flex-basis: 25%;
    max-width: 25%;
  }
  .flex-col-lg-4 {
    -ms-flex-preferred-size: 33.333%;
    -webkit-flex-basis: 33.333%;
    flex-basis: 33.333%;
    max-width: 33.333%;
  }
  .flex-col-lg-5 {
    -ms-flex-preferred-size: 41.667%;
    -webkit-flex-basis: 41.667%;
    flex-basis: 41.667%;
    max-width: 41.667%;
  }
  .flex-col-lg-6 {
    -ms-flex-preferred-size: 50%;
    -webkit-flex-basis: 50%;
    flex-basis: 50%;
    max-width: 50%;
  }
  .flex-col-lg-7 {
    -ms-flex-preferred-size: 58.333%;
    -webkit-flex-basis: 58.333%;
    flex-basis: 58.333%;
    max-width: 58.333%;
  }
  .flex-col-lg-8 {
    -ms-flex-preferred-size: 66.667%;
    -webkit-flex-basis: 66.667%;
    flex-basis: 66.667%;
    max-width: 66.667%;
  }
  .flex-col-lg-9 {
    -ms-flex-preferred-size: 75%;
    -webkit-flex-basis: 75%;
    flex-basis: 75%;
    max-width: 75%;
  }
  .flex-col-lg-10 {
    -ms-flex-preferred-size: 83.333%;
    -webkit-flex-basis: 83.333%;
    flex-basis: 83.333%;
    max-width: 83.333%;
  }
  .flex-col-lg-11 {
    -ms-flex-preferred-size: 91.667%;
    -webkit-flex-basis: 91.667%;
    flex-basis: 91.667%;
    max-width: 91.667%;
  }
  .flex-col-lg-12 {
    -ms-flex-preferred-size: 100%;
    -webkit-flex-basis: 100%;
    flex-basis: 100%;
    max-width: 100%;
  }
  .flex-col-lg-offset-0 {
    margin-left: 0;
  }
  .flex-col-lg-offset-1 {
    margin-left: 8.333%;
  }
  .flex-col-lg-offset-2 {
    margin-left: 16.667%;
  }
  .flex-col-lg-offset-3 {
    margin-left: 25%;
  }
  .flex-col-lg-offset-4 {
    margin-left: 33.333%;
  }
  .flex-col-lg-offset-5 {
    margin-left: 41.667%;
  }
  .flex-col-lg-offset-6 {
    margin-left: 50%;
  }
  .flex-col-lg-offset-7 {
    margin-left: 58.333%;
  }
  .flex-col-lg-offset-8 {
    margin-left: 66.667%;
  }
  .flex-col-lg-offset-9 {
    margin-left: 75%;
  }
  .flex-col-lg-offset-10 {
    margin-left: 83.333%;
  }
  .flex-col-lg-offset-11 {
    margin-left: 91.667%;
  }
  .start-lg {
    -webkit-justify-content: flex-start;
    -ms-flex-pack: start;
    -webkit-box-pack: start;
    justify-content: flex-start;
    text-align: start;
  }
  .center-lg {
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    -webkit-box-pack: center;
    justify-content: center;
    text-align: center;
  }
  .end-lg {
    -webkit-justify-content: flex-end;
    -ms-flex-pack: end;
    -webkit-box-pack: end;
    justify-content: flex-end;
    text-align: end;
  }
  .top-lg {
    -webkit-align-items: flex-start;
    -ms-flex-align: start;
    -webkit-box-align: start;
    align-items: flex-start;
  }
  .middle-lg {
    -webkit-align-items: center;
    -ms-flex-align: center;
    -webkit-box-align: center;
    align-items: center;
  }
  .bottom-lg {
    -webkit-align-items: flex-end;
    -ms-flex-align: end;
    -webkit-box-align: end;
    align-items: flex-end;
  }
  .around-lg {
    -webkit-justify-content: space-around;
    -ms-flex-pack: distribute;
    justify-content: space-around;
  }
  .between-lg {
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    -webkit-box-pack: justify;
    justify-content: space-between;
  }
  .first-lg {
    -webkit-order: -1;
    -ms-flex-order: -1;
    -webkit-box-ordinal-group: 0;
    order: -1;
  }
  .last-lg {
    -webkit-order: 1;
    -ms-flex-order: 1;
    -webkit-box-ordinal-group: 2;
    order: 1;
  }
}
.tns-outer {
  padding: 0 !important;
}

.tns-outer [hidden] {
  display: none !important;
}

.tns-outer [aria-controls], .tns-outer [data-action] {
  cursor: pointer;
}

.tns-slider {
  -webkit-transition: all 0s;
  -moz-transition: all 0s;
  transition: all 0s;
}

.tns-slider > .tns-item {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.tns-horizontal.tns-subpixel {
  white-space: nowrap;
}

.tns-horizontal.tns-subpixel > .tns-item {
  display: inline-block;
  vertical-align: top;
  white-space: normal;
}

.tns-horizontal.tns-no-subpixel:after {
  content: "";
  display: table;
  clear: both;
}

.tns-horizontal.tns-no-subpixel > .tns-item {
  float: left;
}

.tns-horizontal.tns-carousel.tns-no-subpixel > .tns-item {
  margin-right: -100%;
}

.tns-no-calc {
  position: relative;
  left: 0;
}

.tns-gallery {
  position: relative;
  left: 0;
  min-height: 1px;
}

.tns-gallery > .tns-item {
  position: absolute;
  left: -100%;
  -webkit-transition: transform 0s, opacity 0s;
  -moz-transition: transform 0s, opacity 0s;
  transition: transform 0s, opacity 0s;
}

.tns-gallery > .tns-slide-active {
  position: relative;
  left: auto !important;
}

.tns-gallery > .tns-moving {
  -webkit-transition: all 0.25s;
  -moz-transition: all 0.25s;
  transition: all 0.25s;
}

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

.tns-lazy-img {
  -webkit-transition: opacity 0.6s;
  -moz-transition: opacity 0.6s;
  transition: opacity 0.6s;
  opacity: 0.6;
}

.tns-lazy-img.tns-complete {
  opacity: 1;
}

.tns-ah {
  -webkit-transition: height 0s;
  -moz-transition: height 0s;
  transition: height 0s;
}

.tns-ovh {
  overflow: hidden;
}

.tns-visually-hidden {
  position: absolute;
  left: -10000em;
}

.tns-transparent {
  opacity: 0;
  visibility: hidden;
}

.tns-fadeIn {
  opacity: 1;
  filter: alpha(opacity=100);
  z-index: 0;
}

.tns-normal, .tns-fadeOut {
  opacity: 0;
  filter: alpha(opacity=0);
  z-index: -1;
}

.tns-vpfix {
  white-space: nowrap;
}

.tns-vpfix > div, .tns-vpfix > li {
  display: inline-block;
}

.tns-t-subp2 {
  margin: 0 auto;
  width: 310px;
  position: relative;
  height: 10px;
  overflow: hidden;
}

.tns-t-ct {
  width: 2333.3333333%;
  width: -webkit-calc(100% * 70 / 3);
  width: -moz-calc(100% * 70 / 3);
  width: 2333.3333333333%;
  position: absolute;
  right: 0;
}

.tns-t-ct:after {
  content: "";
  display: table;
  clear: both;
}

.tns-t-ct > div {
  width: 1.4285714%;
  width: -webkit-calc(100% / 70);
  width: -moz-calc(100% / 70);
  width: 1.4285714286%;
  height: 10px;
  float: left;
}


/* ============ BASE ============ */
/* _variables.scss */
/* ============ Colors ============ */
/* ============ Fonts ============ */
/* ============ Breakpoints ============ */
/*
.example {
  width: 100%;

  @include bp-sm {
    width: 50%;
  }
}
*/
/* _reset.scss */
html {
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
  font-size: 62.5%;
}

body {
  margin: 0;
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

body.locked {
  overflow: hidden;
}

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

audio, canvas, progress, video {
  display: inline-block;
  vertical-align: baseline;
}

img {
  max-width: 100%;
}

*::selection {
  background-color: #1B3765;
  color: white;
}

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

.clearfix::before, .clearfix::after {
  content: "";
  display: table;
}

.clearfix::after {
  clear: both;
}

*:target::before {
  content: "";
  display: block;
  height: 90px;
  margin: -90px 0 0;
}

*:target::before:focus {
  outline: none;
}

*:target:focus {
  outline: none;
}

hr {
  border: 2px solid #ededed;
  padding: 0;
  width: 100%;
}

a, a:visited, a:hover, a:focus, input, input:hover {
  transition: all 0.33s ease;
  text-decoration: none;
}

.assistive-text {
  clip: rect(1px 1px 1px 1px); /* IE6, IE7 */
  clip: rect(1px, 1px, 1px, 1px);
  position: absolute !important;
  top: -999999px;
}

img {
  width: 100%;
}

.tc {
  text-align: center;
}

iframe {
  width: 100%;
}

.extend-full-width {
  max-width: 100% !important;
  padding: 0 !important;
}

#search-toggle {
  align-items: flex-start;
  background: none;
  border: none;
  cursor: pointer;
  display: none;
  position: relative;
  z-index: 2;
}
@media screen and (min-width: 960px) {
  #search-toggle {
    display: flex;
  }
}
#search-toggle svg {
  top: 2px;
}
#search-toggle svg path {
  fill: #1B3765;
}

#search-modal {
  background: #1B3765;
  color: white;
  display: none;
  height: 117px;
  justify-content: center;
  padding: 30px 25px;
  position: fixed;
  top: -117px;
  transition: 0.3s;
  transition-delay: 0s;
  width: 100%;
  z-index: 4;
}
@media screen and (min-width: 960px) {
  #search-modal {
    display: flex;
  }
}
#search-modal.active {
  top: 100px;
  transition-delay: 0.156s;
}
#search-modal #searchform {
  display: flex;
  justify-content: space-between;
  max-width: 1000px;
  width: 100%;
}
#search-modal #searchform .form-row:nth-of-type(1) {
  width: 100%;
}
#search-modal input[type=text] {
  background: #ededed;
  border: none;
  color: #1B3765;
  font: 500 18px/18px "Lato", sans-serif;
  height: 50px;
  text-align: center;
  width: 100%;
}
#search-modal input[type=text]::placeholder {
  color: #1B3765;
  font: 500 18px/18px "Kdam Thmor Pro", sans-serif;
  font-style: italic;
}

#searchsubmit {
  background: #226231;
  border: none;
  cursor: pointer;
  height: 50px;
  width: 50px;
}
#searchsubmit svg path {
  fill: #1B3765;
  stroke: #1B3765;
}

#close-button {
  align-items: center;
  background: white;
  border: none;
  cursor: pointer;
  display: flex;
  justify-content: center;
  padding: 25px;
  position: absolute;
  left: 0;
  top: 0;
}
#close-button svg {
  height: 15px;
  width: 15px;
}
#close-button svg path {
  stroke: #1B3765;
}

/* _typography.scss */
/* ============ FONTS ============ */
/* ============ TAGS ============ */
body,
button,
input,
select,
textarea,
p,
li {
  color: #1B3765;
  font-family: "Lato", sans-serif;
  font-size: 1.8rem;
  line-height: 2.9rem;
  font-weight: 400;
}

h1, h2, h3, h4, h5, h6 {
  font-family: "Kdam Thmor Pro", sans-serif;
  font-weight: 100;
  clear: both;
  overflow-wrap: normal;
  margin: 0 0 20px;
  vertical-align: top;
}

h1 {
  font-size: 54px;
  line-height: 54px;
}
@media only screen and (min-width: 768px) {
  h1 {
    font-size: 80px;
    line-height: 80px;
  }
}

h2 {
  color: #1B3765;
  font-size: 36px;
  line-height: 46px;
}
@media only screen and (min-width: 768px) {
  h2 {
    font-size: 50px;
    line-height: 60px;
  }
}

h3 {
  color: #1B3765;
  font-size: 28px;
  line-height: 28px;
}
@media only screen and (min-width: 768px) {
  h3 {
    font-size: 36px;
    line-height: 36px;
  }
}

h4 {
  color: #1B3765;
  font-size: 24px;
  line-height: 24px;
}
@media only screen and (min-width: 768px) {
  h4 {
    font-size: 28px;
    line-height: 28px;
  }
}

h5 {
  color: #1B3765;
  font-size: 18px;
  line-height: 18px;
}
@media only screen and (min-width: 768px) {
  h5 {
    font-size: 24px;
    line-height: 24px;
  }
}

p {
  margin: 0 0 1rem 0;
}

ul, ol {
  padding: 0 0 0 18px;
}

.text-block ul li, .CalendarEvent__description ul li {
  list-style-image: url(/wp-content/themes/source/assets/icons/ui/list-icon.svg);
  padding-inline-start: 1ch;
}
.text-block a, .CalendarEvent__description a {
  color: #4B8038;
  font-weight: 600;
  text-decoration: underline;
  text-underline-offset: 4px;
  transition: 0.3s;
}
.text-block a:hover, .CalendarEvent__description a:hover {
  text-underline-offset: 7px;
}
.text-block a.button, .text-block .dcc-image-row a, .dcc-image-row .text-block a, .CalendarEvent__description a.button, .CalendarEvent__description .dcc-image-row a, .dcc-image-row .CalendarEvent__description a {
  color: #1B3765;
  margin: 0 0 0 15px;
  text-decoration: none;
}
.text-block a.button:first-of-type, .text-block .dcc-image-row a:first-of-type, .dcc-image-row .text-block a:first-of-type, .CalendarEvent__description a.button:first-of-type, .CalendarEvent__description .dcc-image-row a:first-of-type, .dcc-image-row .CalendarEvent__description a:first-of-type {
  margin: 0;
}
.text-block a.button:hover, .text-block .dcc-image-row a:hover, .dcc-image-row .text-block a:hover, .CalendarEvent__description a.button:hover, .CalendarEvent__description .dcc-image-row a:hover, .dcc-image-row .CalendarEvent__description a:hover {
  color: white;
}

a {
  color: #1B3765;
  transition: all 0.3s ease 0s;
}
a:hover {
  color: #1B3765;
}

blockquote {
  background: white;
  box-shadow: 0 0 10px rgba(27, 55, 101, 0.3);
  border-radius: 10px;
  display: flex;
  flex-direction: column;
  align-items: center;
  margin: 50px auto;
  padding: 80px 50px 30px;
  width: calc(100% - 20px);
}
blockquote:before {
  background-image: url("/wp-content/themes/source/assets/icons/ui/quote-symbol.svg");
  background-repeat: no-repeat;
  background-size: contain;
  content: "";
  height: 95px;
  position: absolute;
  top: 10px;
  width: 95px;
}

/* _buttons.scss */
.button, .dcc-image-row a, .wpcf7 .wpcf7-form input[type=submit] {
  background-color: transparent;
  background-image: linear-gradient(90deg, #055593, #50BAE8, #57AE47, #226231);
  background-size: 0 100%;
  background-repeat: no-repeat;
  padding: 10px 40px 10px 10px;
  position: relative;
  display: flex;
  height: fit-content;
  font-family: "Kdam Thmor Pro", sans-serif;
  font-size: 20px;
  line-height: 20px;
  margin: 0 0 20px;
  font-weight: 400;
  color: #1B3765;
  text-decoration: none;
  white-space: nowrap;
  text-align: center;
  border: 2px solid #1B3765;
  transition: all 0.3s ease 0s;
  overflow: hidden;
  vertical-align: top;
  cursor: pointer;
  width: fit-content;
  z-index: 0;
}
.button.center, .dcc-image-row a.center, .wpcf7 .wpcf7-form input.center[type=submit] {
  margin: 0 auto 20px;
}
.button.right, .dcc-image-row a.right, .wpcf7 .wpcf7-form input.right[type=submit] {
  margin: 0 0 20px auto;
}
.button:hover, .dcc-image-row a:hover, .wpcf7 .wpcf7-form input[type=submit]:hover {
  background-size: 100% 100%;
  border: 2px solid transparent;
  color: white;
}
.button.mobile, .dcc-image-row a.mobile, .wpcf7 .wpcf7-form input.mobile[type=submit] {
  display: inline-block;
}
@media only screen and (min-width: 768px) {
  .button.mobile, .dcc-image-row a.mobile, .wpcf7 .wpcf7-form input.mobile[type=submit] {
    display: none;
  }
}
.button.desktop, .dcc-image-row a.desktop, .wpcf7 .wpcf7-form input.desktop[type=submit] {
  display: none;
}
@media only screen and (min-width: 768px) {
  .button.desktop, .dcc-image-row a.desktop, .wpcf7 .wpcf7-form input.desktop[type=submit] {
    display: inline-block;
  }
}

.button-white, .wave-content-vertical__content a, .wave-content-green__content a, .page-alert a {
  background-image: linear-gradient(90deg, #055593, #50BAE8, #57AE47, #226231);
  background-size: 0 100%;
  background-repeat: no-repeat;
  padding: 10px 40px 10px 10px;
  position: relative;
  display: inline-block;
  font-family: "Kdam Thmor Pro", sans-serif;
  font-size: 20px;
  line-height: 20px;
  height: fit-content;
  margin: 0 0 20px;
  font-weight: 400;
  color: white;
  text-decoration: none;
  white-space: nowrap;
  text-align: center;
  border: 2px solid white;
  transition: all 0.3s ease 0s;
  overflow: hidden;
  vertical-align: top;
  cursor: pointer;
  width: fit-content;
  z-index: 1;
}
.button-white:hover, .wave-content-vertical__content a:hover, .wave-content-green__content a:hover, .page-alert a:hover {
  background-size: 100% 100%;
  border: 2px solid transparent;
  color: white;
}
.button-white.mobile, .wave-content-vertical__content a.mobile, .wave-content-green__content a.mobile, .page-alert a.mobile {
  display: inline-block;
}
@media only screen and (min-width: 768px) {
  .button-white.mobile, .wave-content-vertical__content a.mobile, .wave-content-green__content a.mobile, .page-alert a.mobile {
    display: none;
  }
}
.button-white.desktop, .wave-content-vertical__content a.desktop, .wave-content-green__content a.desktop, .page-alert a.desktop {
  display: none;
}
@media only screen and (min-width: 768px) {
  .button-white.desktop, .wave-content-vertical__content a.desktop, .wave-content-green__content a.desktop, .page-alert a.desktop {
    display: inline-block;
  }
}

.button-green {
  background-image: linear-gradient(90deg, #055593, #50BAE8, #57AE47, #226231);
  background-size: 0 100%;
  background-repeat: no-repeat;
  padding: 10px 40px 10px 10px;
  position: relative;
  display: inline-block;
  font-family: "Kdam Thmor Pro", sans-serif;
  font-size: 20px;
  line-height: 20px;
  margin: 0 0 20px;
  font-weight: 400;
  color: #0F4C26;
  text-decoration: none;
  white-space: nowrap;
  text-align: center;
  border: 2px solid #0F4C26;
  transition: all 0.3s ease 0s;
  overflow: hidden;
  vertical-align: top;
  cursor: pointer;
  width: auto;
  z-index: 1;
}
.button-green:hover {
  background-size: 100% 100%;
  border: 2px solid transparent;
  color: white;
}

.button-outline {
  background-color: transparent;
  background-image: linear-gradient(90deg, #055593, #50BAE8, #57AE47, #226231);
  background-size: 0 100%;
  background-repeat: no-repeat;
  padding: 10px 40px 10px 10px;
  position: relative;
  display: flex;
  height: fit-content;
  font-family: "Kdam Thmor Pro", sans-serif;
  font-size: 20px;
  line-height: 20px;
  margin: 0 0 20px;
  font-weight: 400;
  color: #1B3765;
  text-decoration: none;
  white-space: nowrap;
  text-align: center;
  border: 2px solid #1B3765;
  transition: all 0.3s ease 0s;
  overflow: hidden;
  vertical-align: top;
  cursor: pointer;
  width: fit-content;
  z-index: 0;
}
.button-outline.center {
  margin: 0 auto 20px;
}
.button-outline.right {
  margin: 0 0 20px auto;
}
.button-outline:hover {
  background-size: 100% 100%;
  border: 2px solid transparent;
  color: white;
}
.button-outline.mobile {
  display: inline-block;
}
@media only screen and (min-width: 768px) {
  .button-outline.mobile {
    display: none;
  }
}
.button-outline.desktop {
  display: none;
}
@media only screen and (min-width: 768px) {
  .button-outline.desktop {
    display: inline-block;
  }
}

/* Content
----------------------------------------------------------------- */
.speak-socials td {
  font-size: 0;
  line-height: 0;
}

.row {
  column-gap: 20px;
  width: 100%;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-between;
  margin: 0;
  padding: 0;
  position: relative;
  row-gap: 0;
}
.row.vertical-center {
  justify-content: center;
}
.row.mark-right-dark:before {
  background-image: url(/wp-content/themes/source/assets/layout/marks-1.svg);
  background-size: 140%;
  background-position: center;
  background-repeat: no-repeat;
  content: "";
  height: 840px;
  left: 0;
  position: absolute;
  bottom: -40%;
  width: 100%;
  z-index: -1;
}
@media only screen and (min-width: 768px) {
  .row.mark-right-dark:before {
    background-position: left;
    background-size: 200%;
    height: 1200px;
    left: auto;
    right: -120px;
    top: 50%;
    transform: translate(0, -50%);
    width: 60%;
  }
}
.row.mark-right-light:before {
  background-image: url(/wp-content/themes/source/assets/layout/marks-2.svg);
  background-size: 120%;
  background-position: center;
  background-repeat: no-repeat;
  left: 0;
  content: "";
  height: 700px;
  position: absolute;
  bottom: -30%;
  width: 100%;
  z-index: -1;
}
@media only screen and (min-width: 768px) {
  .row.mark-right-light:before {
    background-position: left;
    background-size: 200%;
    bottom: auto;
    height: 1200px;
    left: auto;
    right: -120px;
    top: 50%;
    transform: translate(0, -50%);
    width: 60%;
  }
}

.column {
  display: inline-block;
}

.span-1 {
  width: calc(50% - 20px);
}
@media (min-width: 480px) {
  .span-1 {
    width: calc(33.333334% - 20px);
  }
}
@media (min-width: 840px) {
  .span-1 {
    width: calc(25% - 20px);
  }
}
@media (min-width: 1080px) {
  .span-1 {
    width: calc(16.666667% - 20px);
  }
}
@media (min-width: 1280px) {
  .span-1 {
    width: 8.333334%;
  }
}

.span-2 {
  width: 100%;
}
@media (min-width: 840px) {
  .span-2 {
    width: calc(33.333334% - 20px);
  }
}
@media (min-width: 1280px) {
  .span-2 {
    width: calc(16.666667% - 20px);
  }
}

.span-2_4 {
  width: 100%;
}
@media (min-width: 600px) {
  .span-2_4 {
    width: calc(50% - 20px);
  }
}
@media (min-width: 960px) {
  .span-2_4 {
    width: calc(33.333334% - 20px);
  }
}
@media (min-width: 1280px) {
  .span-2_4 {
    width: calc(20% - 20px);
  }
}

.span-3 {
  width: 100%;
}
@media (min-width: 840px) {
  .span-3 {
    width: calc(50% - 20px);
  }
}
@media (min-width: 1080px) {
  .span-3 {
    width: calc(33.333334% - 20px);
  }
}
@media (min-width: 1280px) {
  .span-3 {
    width: calc(25% - 20px);
  }
}

.span-4 {
  width: 100%;
}
@media (min-width: 840px) {
  .span-4 {
    width: calc(50% - 20px);
  }
}
@media (min-width: 1080px) {
  .span-4 {
    width: calc(33.333334% - 20px);
  }
}

.span-6 {
  width: 100%;
}
@media (min-width: 1000px) {
  .span-6 {
    width: calc(50% - 20px);
  }
}

.page-template-default .span-6 {
  width: 100%;
}
@media (min-width: 1300px) {
  .page-template-default .span-6 {
    width: calc(50% - 20px);
  }
}

.span-8 {
  width: 100%;
}
@media (min-width: 840px) {
  .span-8 {
    width: calc(50% - 20px);
  }
}
@media (min-width: 1080px) {
  .span-8 {
    width: calc(66.666667% - 20px);
  }
}

.span-9 {
  width: 100%;
}
@media (min-width: 840px) {
  .span-9 {
    width: calc(50% - 20px);
  }
}
@media (min-width: 1080px) {
  .span-9 {
    width: calc(66.666667% - 20px);
  }
}
@media (min-width: 1280px) {
  .span-9 {
    width: calc(75% - 20px);
  }
}

.span-10 {
  width: 100%;
}
@media (min-width: 840px) {
  .span-10 {
    width: calc(66.666667% - 20px);
  }
}
@media (min-width: 1280px) {
  .span-10 {
    width: calc(83.333334% - 20px);
  }
}

.span-12 {
  width: 100%;
}

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

#BambooHR img {
  width: 100px;
}

/* ============ COMPONENTS ============ */
.banner {
  clip-path: url(#clipPath);
  display: flex;
  flex-direction: column;
  overflow: hidden;
  justify-content: center;
  position: relative;
}
@media only screen and (min-width: 768px) {
  .banner {
    flex-direction: row;
    height: 400px;
  }
}
.banner.green .banner__image:before {
  background-color: #0F4C26;
  background-image: none;
}
.banner.homepage {
  clip-path: url(#svgPathMobile);
  height: 560px;
  overflow: hidden;
}
@media only screen and (min-width: 768px) {
  .banner.homepage {
    height: 800px;
  }
}
@media only screen and (min-width: 1024px) {
  .banner.homepage {
    clip-path: url(#svgPath);
    height: 990px;
  }
}
.banner.homepage .banner__video {
  align-items: center;
  display: flex;
  height: 100%;
  justify-content: center;
  overflow: hidden;
  position: absolute;
  width: 135%;
}
@media only screen and (min-width: 768px) {
  .banner.homepage .banner__video {
    width: 200%;
  }
}
@media only screen and (min-width: 1024px) {
  .banner.homepage .banner__video {
    width: 195%;
  }
}
.banner.homepage .banner__video:before {
  background-color: #1B3765;
  content: "";
  display: flex;
  height: 100%;
  left: 0;
  opacity: 0.7;
  position: absolute;
  top: 0;
  width: 100%;
  z-index: 1;
}
.banner.homepage iframe {
  flex-grow: 1;
  height: 205%;
  justify-content: center;
  position: absolute;
  width: 205%;
  z-index: 0;
}
@media only screen and (min-width: 768px) {
  .banner.homepage iframe {
    height: 200%;
    position: relative;
    width: 200%;
  }
}
.banner.homepage .banner__content {
  height: 100%;
  justify-content: flex-start;
}
@media only screen and (min-width: 768px) {
  .banner.homepage .banner__content {
    height: calc(100% - 250px);
    padding: 0 100px;
  }
}
@media only screen and (min-width: 1024px) {
  .banner.homepage .banner__content {
    height: calc(100% - 360px);
  }
}
.banner.homepage .banner__content header {
  color: white;
  font-size: 22px;
}
.banner.homepage .banner__content header h1 {
  margin: 0 0 10px;
}
.banner.discovery-center-default .banner__image {
  height: 100%;
}
.banner.discovery-center-default .banner__image:before {
  background-image: none;
  background-color: #055593;
}
.banner.discovery-center-home {
  clip-path: url(#svgPathMobile);
  height: 560px;
  overflow: hidden;
}
@media only screen and (min-width: 768px) {
  .banner.discovery-center-home {
    height: 1000px;
  }
}
@media only screen and (min-width: 1024px) {
  .banner.discovery-center-home {
    clip-path: url(#dccPath);
  }
}
.banner.discovery-center-home .banner__image {
  height: 100%;
}
.banner.discovery-center-home .banner__image:before {
  background-image: none;
  background-color: #055593;
}
.banner.discovery-center-home .banner__video {
  align-items: center;
  display: flex;
  height: 100%;
  justify-content: center;
  overflow: hidden;
  position: absolute;
  width: 135%;
}
@media only screen and (min-width: 768px) {
  .banner.discovery-center-home .banner__video {
    width: 200%;
  }
}
@media only screen and (min-width: 1024px) {
  .banner.discovery-center-home .banner__video {
    width: 175%;
  }
}
.banner.discovery-center-home .banner__video:before {
  background-color: #055593;
  content: "";
  display: flex;
  height: 100%;
  left: 0;
  opacity: 0.7;
  position: absolute;
  top: 0;
  width: 100%;
  z-index: 1;
}
.banner.discovery-center-home iframe {
  flex-grow: 1;
  height: 205%;
  justify-content: center;
  position: absolute;
  width: 205%;
  z-index: 0;
}
@media only screen and (min-width: 768px) {
  .banner.discovery-center-home iframe {
    height: 200%;
    position: relative;
    width: 200%;
  }
}
.banner.discovery-center-home .banner__content {
  height: 100%;
}
@media only screen and (min-width: 768px) {
  .banner.discovery-center-home .banner__content {
    height: calc(100% - 80px);
  }
}
.banner.discovery-center-home .banner__content header {
  color: white;
  text-align: center;
}
.banner.discovery-center-home .banner__content header h1 {
  margin: 0 0 20px;
  max-width: 750px;
  text-align: center;
}
.banner.wildcat-bluff-default .banner__image {
  height: 100%;
}
.banner.wildcat-bluff-default .banner__image:before {
  background-image: none;
  background-color: #0F4C26;
}
.banner.wildcat-bluff-home {
  clip-path: url(#svgPathMobile);
  height: 560px;
  overflow: hidden;
}
@media only screen and (min-width: 768px) {
  .banner.wildcat-bluff-home {
    height: 1000px;
  }
}
@media only screen and (min-width: 1024px) {
  .banner.wildcat-bluff-home {
    clip-path: url(#dccPath);
  }
}
.banner.wildcat-bluff-home .banner__image {
  height: 100%;
}
.banner.wildcat-bluff-home .banner__image:before {
  background-image: none;
  background-color: #0F4C26;
}
.banner.wildcat-bluff-home .banner__video {
  align-items: center;
  display: flex;
  height: 100%;
  justify-content: center;
  overflow: hidden;
  position: absolute;
  width: 135%;
}
@media only screen and (min-width: 768px) {
  .banner.wildcat-bluff-home .banner__video {
    width: 200%;
  }
}
@media only screen and (min-width: 1024px) {
  .banner.wildcat-bluff-home .banner__video {
    width: 175%;
  }
}
.banner.wildcat-bluff-home .banner__video:before {
  background-color: #0F4C26;
  content: "";
  display: flex;
  height: 100%;
  left: 0;
  opacity: 0.7;
  position: absolute;
  top: 0;
  width: 100%;
  z-index: 1;
}
.banner.wildcat-bluff-home iframe {
  flex-grow: 1;
  height: 205%;
  justify-content: center;
  position: absolute;
  width: 205%;
  z-index: 0;
}
@media only screen and (min-width: 768px) {
  .banner.wildcat-bluff-home iframe {
    height: 200%;
    position: relative;
    width: 200%;
  }
}
.banner.wildcat-bluff-home .banner__meta {
  background: #0F4C26;
}
.banner.wildcat-bluff-home .banner__meta h4, .banner.wildcat-bluff-home .banner__meta p {
  color: white;
}
.banner.wildcat-bluff-home .banner__content {
  height: 100%;
}
@media only screen and (min-width: 768px) {
  .banner.wildcat-bluff-home .banner__content {
    height: calc(100% - 80px);
  }
}
.banner.wildcat-bluff-home .banner__content header {
  color: white;
  text-align: center;
}
.banner.wildcat-bluff-home .banner__content header h1 {
  margin: 0 0 20px;
  text-align: center;
}
.banner__content {
  align-items: center;
  display: flex;
  height: 100%;
  justify-content: center;
  padding: 0 30px;
  position: absolute;
  width: 100%;
  z-index: 1;
}
@media only screen and (min-width: 768px) {
  .banner__content {
    padding: 0 80px;
  }
}
.banner__content h1 {
  color: white;
  margin: 0;
  text-align: left;
}
.banner__meta {
  aspect-ratio: 1;
  background: #50BAE8;
  bottom: 110px;
  display: none;
  gap: 15px;
  flex-direction: column;
  justify-content: center;
  left: -70px;
  padding: 30px 30px 30px 100px;
  position: absolute;
  width: 330px;
  border-radius: 50%;
}
@media only screen and (min-width: 768px) {
  .banner__meta {
    display: flex;
  }
}
.banner__meta h4 {
  margin: 0 0 10px;
}
@keyframes float {
  0% {
    transform: translate(0, 0);
  }
  50% {
    transform: translate(0, -10px);
  }
  100% {
    transform: translate(0, 0);
  }
}
.banner__meta--bubbles .bubble {
  animation: float 3s forwards infinite;
  border-radius: 50%;
  position: absolute;
  transition: 0.3s;
  transform: translate(0, 0);
}
.banner__meta--bubbles .bubble:nth-of-type(1) {
  animation-delay: 0.5s;
  border: 2px solid white;
  height: 45px;
  top: -60px;
  right: 80px;
  width: 45px;
}
.banner__meta--bubbles .bubble:nth-of-type(2) {
  animation-delay: 1s;
  background: #1B3765;
  height: 85px;
  top: -20px;
  right: -20px;
  width: 85px;
}
.banner__meta--bubbles .bubble:nth-of-type(3) {
  animation-delay: 1.2s;
  border: 2px solid #57AE47;
  height: 85px;
  bottom: -100px;
  right: calc(50% - 20px);
  transform: translate(-50%);
  width: 85px;
}
@keyframes draw {
  0% {
    stroke-dashoffset: 200;
  }
  30% {
    stroke-dashoffset: 0;
  }
  100% {
    stroke-dashoffset: 0;
  }
}
@keyframes appear {
  0% {
    opacity: 0;
  }
  20% {
    opacity: 0;
  }
  25% {
    opacity: 1;
  }
  100% {
    opacity: 1;
  }
}
.banner__scroller {
  bottom: 430px;
  display: none;
  position: absolute;
  right: 30px;
  z-index: 1;
}
@media only screen and (min-width: 1024px) {
  .banner__scroller {
    display: flex;
  }
}
.banner__scroller-line {
  animation: draw 7s forwards infinite;
  stroke-dasharray: 200;
  stroke-dashoffset: 0;
  overflow: hidden;
  transition: 0.3s;
}
.banner__scroller-arrow {
  animation: appear 7s infinite;
  opacity: 0;
  transition: 0.3s;
}
.banner__image {
  background-color: #1B3765;
  height: 360px;
  left: 0;
  overflow: hidden;
  position: relative;
  top: 0;
  width: 100%;
  z-index: 0;
}
@media only screen and (min-width: 768px) {
  .banner__image {
    height: 500px;
  }
}
.banner__image:before {
  background-image: linear-gradient(#0F4C26, #589341, #4EA8DE, #055593);
  background-size: 100%;
  content: "";
  height: 100%;
  left: 0;
  opacity: 0.75;
  position: absolute;
  top: 0;
  width: 100%;
  z-index: 1;
}
.banner__image img {
  height: 100%;
  object-fit: cover;
  opacity: 1;
  width: 100%;
}
.banner.post {
  align-items: flex-start;
  column-gap: 50px;
  display: flex;
  height: auto;
  flex-wrap: wrap;
}
@media only screen and (min-width: 1024px) {
  .banner.post {
    align-items: center;
  }
}
.banner__post-allposts {
  display: flex;
  margin: 30px 0 30px 50px;
}
.banner__post-allposts a {
  align-items: center;
  background: transparent;
  color: red;
  column-gap: 10px;
  display: flex;
  font: 700 20px/20px "Kdam Thmor Pro", sans-serif;
  position: relative;
}
.banner__post-allposts a:before {
  background-image: url(/wp-content/themes/source/assets/icons/ui/arrow-back.svg);
  background-repeat: no-repeat;
  content: "";
  height: 14px;
  left: 0;
  position: relative;
  transition: 0.3s;
  width: 30px;
}
.banner__post-allposts a:hover:before {
  left: -5px;
}
.banner__post-image {
  border-radius: 0 0 60px 0;
  height: 450px;
  overflow: hidden;
}
.banner__post-image img {
  height: 100%;
  object-fit: cover;
  width: 100%;
}
.banner__post-meta {
  display: flex;
  margin: 50px 0 0;
  width: 100%;
}
.banner__post-meta.desktop {
  display: none;
  flex-direction: row;
  justify-content: space-evenly;
}
@media only screen and (min-width: 1024px) {
  .banner__post-meta.desktop {
    display: flex;
  }
}
.banner__post-meta.mobile {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  row-gap: 30px;
}
@media only screen and (min-width: 1024px) {
  .banner__post-meta.mobile {
    display: none;
  }
}
.banner__post-left {
  width: calc(100% - 50px);
}
@media only screen and (min-width: 1024px) {
  .banner__post-left {
    width: calc(60% - 25px);
  }
}
.banner__post-right {
  margin: 0 auto;
  max-width: 900px;
  padding: 40px 40px 0;
  width: 100%;
}
@media only screen and (min-width: 1024px) {
  .banner__post-right {
    padding: 40px;
    width: calc(40% - 25px);
  }
}
.banner__post-right h1 {
  font: 300 48px/48px "Lato", sans-serif;
}

#content {
  padding: 0;
}
@media only screen and (min-width: 1024px) {
  #content {
    padding: 0 0 50px 80px;
  }
}

#default {
  column-gap: 50px;
  display: flex;
  justify-content: center;
  margin: 0 auto;
  max-width: 1560px;
  padding: 30px;
  position: relative;
  width: 100%;
}
@media only screen and (min-width: 768px) {
  #default {
    padding: 50px;
  }
}
#default #sidebar {
  display: none;
  height: 100%;
  padding: 0;
  position: sticky;
  top: 70px;
}
@media only screen and (min-width: 1024px) {
  #default #sidebar {
    display: inline-block;
  }
}
#default #sidebar .sidebar_inner {
  background: #1B3765;
  border-radius: 10px;
  padding: 30px;
  width: 300px;
}
#default #sidebar .sidebar_inner h4 {
  color: white;
  font: 700 33px/33px "Lato", sans-serif;
  margin: 0;
  overflow: visible;
  padding: 0 0 15px 5px;
  position: relative;
}
#default #sidebar .submenu ul {
  list-style-type: none;
  margin: 10px 0 0 0;
  padding: 0 0 0 30px;
}
#default #sidebar .submenu ul li {
  line-height: 27px;
  margin: 0 0 25px;
  position: relative;
}
#default #sidebar .submenu ul li.current_page_item {
  cursor: pointer;
  margin: 0 0 30px;
}
#default #sidebar .submenu ul li.current_page_item a {
  color: #57AE47;
  font-weight: 700;
}
#default #sidebar .submenu ul li.current_page_item a:hover:after {
  margin: 0;
  width: calc(100% - 50px);
}
#default #sidebar .submenu ul li a {
  align-items: center;
  color: white;
  display: flex;
  font: 400 20px/20px "Lato", sans-serif;
  padding: 0 20px 0 0;
  position: relative;
}
#default #sidebar .submenu ul li a.expand {
  background-image: url(/wp-content/themes/source/assets/icons/ui/arrow-right-white.svg);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  cursor: pointer;
  height: 20px;
  position: absolute;
  padding: 0;
  transition: 0.3s;
  right: 0;
  rotate: 0deg;
  width: 20px;
  top: 0;
}
#default #sidebar .submenu ul li a.expand.active {
  rotate: 90deg;
}
#default #sidebar .submenu ul li ul.children {
  display: none;
  padding: 15px 0 0 20px;
}
#default #sidebar .submenu ul li ul.children.active {
  display: inline-block;
}
#default #sidebar .submenu ul li ul.children li:last-of-type {
  margin: 0;
}
#default #default-main {
  width: 100%;
}
@media only screen and (min-width: 1024px) {
  #default #default-main {
    width: calc(100% - 300px);
  }
}

/* _header.scss */
header#navigation {
  background: white;
  align-items: center;
  display: flex;
  justify-content: space-between;
  padding: 0 10px 0 0;
  position: fixed;
  top: 0;
  transition: 0.4s;
  width: 100%;
  z-index: 125;
}
@media only screen and (min-width: 1024px) {
  header#navigation {
    background: transparent;
    padding: 20px 30px 20px 80px;
  }
}
header#navigation.header-hide {
  top: -135px;
}
header#navigation.header-hide .mainnav {
  background: #1B3765;
}
header#navigation.header-hide #sidecar .mainnav {
  background: none;
}
header#navigation.header-show {
  top: 0;
}
@media only screen and (min-width: 1024px) {
  header#navigation.header-show {
    background: #1B3765;
  }
}
header#navigation.active .logo-wrap .logo-link {
  background-image: url(/wp-content/themes/source/assets/logos/dcc_logo_color_large.svg);
}
header#navigation.active nav.flex-nav #menu-utility-navigation > li > a {
  background-image: linear-gradient(0deg, rgba(0, 0, 0, 0) 50%, #1B3765 0%);
  color: #1B3765;
}

.logo-wrap {
  align-items: center;
  background-color: white;
  display: flex;
  justify-content: center;
  padding: 20px;
  position: relative;
  transition: 0.2s;
}
@media only screen and (min-width: 1024px) {
  .logo-wrap {
    background-color: transparent;
    left: 40px;
    padding: 0;
  }
}
.logo-wrap .logo-link {
  background-image: url(/wp-content/themes/source/assets/logos/dcc_logo_color.svg);
  background-repeat: no-repeat;
  display: flex;
  padding: 0 0 14%;
  width: 208px;
}
@media only screen and (min-width: 1024px) {
  .logo-wrap .logo-link {
    background-image: url(/wp-content/themes/source/assets/logos/dcc_logo_white.svg);
    background-repeat: no-repeat;
    padding: 0 0 14%;
    width: 400px;
  }
}
.logo-wrap .logo-link img {
  height: auto;
  width: 100%;
}

nav.flex-nav {
  display: none;
}
@media only screen and (min-width: 1024px) {
  nav.flex-nav {
    display: inline-block;
  }
}
nav.flex-nav #menu-utility-navigation {
  column-gap: 50px;
  display: flex;
  list-style-type: none;
  margin: 0;
  justify-content: flex-end;
}
nav.flex-nav #menu-utility-navigation > li {
  font-size: 18px;
  position: relative;
}
nav.flex-nav #menu-utility-navigation > li:last-of-type .sub-menu {
  left: -150px;
  transform: translate(0, 0);
}
nav.flex-nav #menu-utility-navigation > li > a {
  align-items: center;
  background-image: linear-gradient(0deg, rgba(0, 0, 0, 0) 50%, white 0%);
  background-position: -3px 35px;
  background-repeat: no-repeat;
  background-size: 0% 3px;
  color: white;
  display: flex;
  font-family: "Kdam Thmor Pro", sans-serif;
  gap: 10px;
  overflow: visible;
  padding: 0 0 15px 0;
}
nav.flex-nav #menu-utility-navigation > li > a:hover {
  background-size: 100% 3px;
  text-decoration: none;
}
nav.flex-nav #menu-utility-navigation > li > a span {
  position: relative;
  top: 4px;
}
nav.flex-nav #menu-utility-navigation > li img {
  max-height: 23px;
}
nav.flex-nav #menu-utility-navigation > li:hover .sub-menu {
  display: inline-block;
}

.utilitynav {
  display: flex;
  justify-content: flex-end;
  column-gap: 50px;
}

.header-contact {
  align-items: center;
  display: flex;
  flex-direction: column;
  gap: 50px;
  justify-content: center;
  padding: 0;
  width: 100%;
}
.header-contact__left, .header-contact__right {
  align-items: center;
  display: flex;
  flex-direction: column;
  gap: 25px;
  justify-content: center;
  width: 100%;
}
.header-contact__left a, .header-contact__right a {
  font-weight: 600;
  text-align: center;
}
.header-contact__left-socials, .header-contact__right-socials {
  display: flex;
  gap: 10px;
}
@media only screen and (min-width: 1024px) {
  .header-contact__left, .header-contact__right {
    width: calc(50% - 20px);
  }
}
.header-contact__right a {
  color: #0F4C26;
}

.quick-buttons {
  background: white;
  bottom: 0;
  display: flex;
  padding: 0;
  position: fixed;
  width: 100%;
  z-index: 100;
}
@media only screen and (min-width: 1024px) {
  .quick-buttons {
    display: none;
  }
}
.quick-buttons #menu-utility-navigation-1 {
  display: flex;
  list-style-type: none;
  justify-content: space-around;
  margin: 18px auto;
  max-width: 600px;
  padding: 0;
  width: 100%;
}
.quick-buttons #menu-utility-navigation-1 li {
  list-style-image: none;
}
.quick-buttons #menu-utility-navigation-1 li a {
  align-items: center;
  display: flex;
  flex-direction: column;
  font-family: "Kdam Thmor Pro", sans-serif;
}
@media screen and (min-width: 600px) {
  .quick-buttons #menu-utility-navigation-1 li a {
    flex-direction: row;
    gap: 5px;
  }
}
.quick-buttons #menu-utility-navigation-1 li a span {
  position: relative;
  top: 2px;
}

/* _footer.scss */
footer {
  display: flex;
  justify-content: flex-end;
  padding: 20px 20px 80px;
  position: relative;
}
@media only screen and (min-width: 1024px) {
  footer {
    padding: 0 30px 0 115px;
  }
}

.footer-wrap {
  background-color: rgba(255, 255, 255, 0.75);
  border-radius: 10px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  padding: 30px;
  width: 100%;
}
@media only screen and (min-width: 1024px) {
  .footer-wrap {
    flex-direction: row;
    padding: 50px;
  }
}

.footer-newsletter {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  width: 100%;
}
@media only screen and (min-width: 1024px) {
  .footer-newsletter {
    border-right: 2px solid #1B3765;
    padding: 0 20px 0 0;
    width: 40%;
  }
}
.footer-newsletter #mc_embed_signup form {
  margin: 0 0 20px 0;
}
.footer-newsletter #mc_embed_signup form .mc-heading {
  color: #1B3765;
  font-weight: normal;
  margin: 0 auto 1.5rem auto;
}
.footer-newsletter #mc_embed_signup form label {
  font-size: 1.6rem;
}
.footer-newsletter #mc_embed_signup form input[type=text], .footer-newsletter #mc_embed_signup form input[type=email] {
  background-color: rgba(27, 55, 101, 0.2);
  border-radius: 4px 4px 0 0;
  border-bottom: 2px solid #1B3765;
  font-weight: bold;
  outline: none;
  border-right: none;
  border-top: none;
  border-left: none;
  color: #1B3765;
  font-style: italic;
  padding: 1rem;
  width: 100%;
}
.footer-newsletter #mc_embed_signup form input[type=text]::placeholder, .footer-newsletter #mc_embed_signup form input[type=email]::placeholder {
  color: #1B3765;
  opacity: 0.4; /* Firefox */
}
.footer-newsletter #mc_embed_signup form input[type=text]::-ms-input-placeholder, .footer-newsletter #mc_embed_signup form input[type=email]::-ms-input-placeholder { /* Edge 12 -18 */
  color: #1B3765;
}
.footer-newsletter #mc_embed_signup form .button-wrap {
  display: flex;
  align-items: center;
  gap: 12px;
  margin: 2rem 0 0 0;
  width: 100%;
  justify-content: flex-end;
}
.footer-newsletter #mc_embed_signup form .button-wrap input[type=submit] {
  background: none;
  border: none;
  text-transform: uppercase;
  color: #1B3765;
  letter-spacing: 1px;
  position: relative;
  padding: 0;
  margin: 0;
}
.footer-newsletter #mc_embed_signup form .button-wrap img {
  max-width: 6px;
}

.footer-meta {
  color: #1B3765;
  flex-direction: column;
  text-align: center;
}
@media only screen and (min-width: 1024px) {
  .footer-meta {
    flex-direction: row;
    text-align: left;
  }
}
.footer-meta.desktop {
  display: none;
}
@media only screen and (min-width: 1024px) {
  .footer-meta.desktop {
    display: flex;
  }
}
.footer-meta.mobile {
  display: flex;
}
@media only screen and (min-width: 1024px) {
  .footer-meta.mobile {
    display: none;
  }
}
.footer-meta a {
  color: #1B3765;
  font-weight: 600;
  background-image: linear-gradient(0deg, rgba(0, 0, 0, 0) 50%, white 0%);
  background-position: -3px 24px;
  background-repeat: no-repeat;
  background-size: 0% 3px;
  overflow: visible;
  padding: 0 0 12px 0;
}
.footer-meta a:hover {
  background-size: 100% 3px;
  text-decoration: none;
}
@media only screen and (min-width: 1024px) {
  .footer-meta a {
    background-image: linear-gradient(0deg, rgba(0, 0, 0, 0) 50%, #1B3765 0%);
  }
}

.footer-contact {
  display: flex;
  flex-direction: column;
  gap: 40px;
  justify-content: center;
  padding: 40px;
  width: 100%;
}
@media only screen and (min-width: 1024px) {
  .footer-contact {
    flex-direction: row;
    gap: 0px;
    justify-content: space-between;
    width: 60%;
  }
}
.footer-contact__left, .footer-contact__right {
  align-items: center;
  display: flex;
  flex-direction: column;
  gap: 25px;
  justify-content: center;
  width: 100%;
}
.footer-contact__left a, .footer-contact__right a {
  color: #1B3765;
  font-weight: 600;
  text-align: center;
}
.footer-contact__left-socials, .footer-contact__right-socials {
  display: flex;
  gap: 10px;
}
.footer-contact__left-socials img, .footer-contact__right-socials img {
  max-height: 35px;
}
.footer-contact__left-logo.desktop, .footer-contact__right-logo.desktop {
  display: none;
}
@media only screen and (min-width: 1024px) {
  .footer-contact__left-logo.desktop, .footer-contact__right-logo.desktop {
    display: flex;
  }
}
.footer-contact__left-logo.mobile, .footer-contact__right-logo.mobile {
  display: flex;
}
@media only screen and (min-width: 1024px) {
  .footer-contact__left-logo.mobile, .footer-contact__right-logo.mobile {
    display: none;
  }
}
@media only screen and (min-width: 1024px) {
  .footer-contact__left, .footer-contact__right {
    width: calc(50% - 20px);
  }
}
.footer-contact__right a {
  color: #4B8038;
}

.wpcf7 .wpcf7-form {
  display: flex;
  flex-direction: column;
  gap: 30px;
}
.wpcf7 .wpcf7-form label {
  display: flex;
  flex-direction: column;
  font: 600 16px/16px "Lato", sans-serif;
  gap: 15px;
  white-space: nowrap;
  width: 100%;
}
.wpcf7 .wpcf7-form label .wpcf7-form-control-wrap {
  width: 100%;
}
.wpcf7 .wpcf7-form label.message {
  flex-direction: column;
}
.wpcf7 .wpcf7-form input[type=email], .wpcf7 .wpcf7-form input[type=text], .wpcf7 .wpcf7-form input[type=tel], .wpcf7 .wpcf7-form .wpcf7-select, .wpcf7 .wpcf7-form textarea {
  border: 1px solid #1B3765;
  border-radius: 10px;
  padding: 5px 10px;
  width: 100%;
}
.wpcf7 .wpcf7-form input[type=email].wpcf7-not-valid, .wpcf7 .wpcf7-form input[type=text].wpcf7-not-valid, .wpcf7 .wpcf7-form input[type=tel].wpcf7-not-valid, .wpcf7 .wpcf7-form .wpcf7-select.wpcf7-not-valid, .wpcf7 .wpcf7-form textarea.wpcf7-not-valid {
  border: 1px solid #dc3232;
}
.wpcf7 .wpcf7-form label.text, .wpcf7 .wpcf7-form label.email, .wpcf7 .wpcf7-form label.phone, .wpcf7 .wpcf7-form label.select {
  align-items: center;
}
.wpcf7 .wpcf7-form .wpcf7-select {
  background-image: url("/wp-content/themes/source/assets/icons/ui/select-down-arrow.svg");
  background-size: 20px;
  background-position: calc(100% - 20px);
  background-repeat: no-repeat;
  -webkit-appearance: none;
}
.wpcf7 .wpcf7-form input[type=submit] {
  padding: 10px 10px 10px 10px;
  width: fit-content;
}
.wpcf7 .wpcf7-spinner {
  bottom: 50px;
  left: 50%;
  margin: 0;
  position: absolute;
  transform: translate(-50%, 0);
}
.wpcf7 .wpcf7-not-valid-tip {
  margin: 10px;
}

.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.unaccepted .wpcf7-response-output,
.wpcf7 form.payment-required .wpcf7-response-output {
  border-color: #dc3232;
  border-radius: 30px;
  padding: 10px 20px;
  text-align: center;
  color: #dc3232;
}

/* _gdpr.scss */
#gdpr-bar {
  background: black;
  color: white;
  position: fixed;
  bottom: 0;
  left: 0;
  transform: translateX(-100%);
  transition: transform 0.25s ease;
  width: 100vw;
  z-index: 101;
}
#gdpr-bar.active {
  transform: translate(0, 0);
}
#gdpr-bar p, #gdpr-bar a {
  color: white;
}
/* _flex-nav.scss */
.lightbox {
  position: fixed;
  width: 100%;
  height: 100%;
  display: block;
  top: 0;
  left: 0;
  margin: 0;
  padding: 0;
  transition: visibilty 0s ease 0.6s, opacity 0.6s ease 0s;
  visibility: hidden;
  opacity: 0;
  z-index: 99;
}
.lightbox.open {
  transition: visibilty 0s ease 0s, opacity 0.3s ease 0s;
  visibility: visible;
  opacity: 1;
}
.lightbox-content {
  position: relative;
  width: 85.714285%;
  height: calc(100% - 120px);
  display: block;
  margin: 60px auto;
  padding: 0;
  z-index: 1;
}
.lightbox-content > img, .lightbox-content > .video-wrapper, .lightbox-content > audio {
  position: absolute;
  max-width: 100%;
  max-height: 100%;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.lightbox .gallery-list {
  position: relative;
  width: 85.714285%;
  height: calc(100% - 120px);
  display: block;
  margin: 60px auto;
  padding: 0;
  white-space: nowrap;
  overflow: hidden;
  z-index: 1;
}
.lightbox .gallery-list__item {
  position: relative;
  width: 100%;
  height: 100%;
  display: inline-block;
  margin: 0;
  padding: 0;
  white-space: normal;
  vertical-align: top;
}
.lightbox .gallery-list__item > img, .lightbox .gallery-list__item > .video-wrapper, .lightbox .gallery-list__item > audio {
  position: absolute;
  max-width: 100%;
  max-height: 100%;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.lightbox .carousel-controls {
  position: absolute;
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  justify-content: space-between;
  top: 0;
  left: 0;
  margin: 0;
  padding: 0;
  z-index: 0;
}
.lightbox .carousel-controls span {
  width: 7.142857%;
  height: 100%;
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  align-items: center;
  justify-content: center;
  margin: 0;
  padding: 0;
  font-size: 30px;
  line-height: 30px;
  color: white;
  text-align: center;
  transition: all 0.3s ease 0s;
  opacity: 1;
  cursor: pointer;
  vertical-align: top;
}
.lightbox .carousel-controls span:hover {
  opacity: 0.5;
}

.overlay {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  display: block;
  margin: 0;
  padding: 0;
  background: rgba(0, 0, 0, 0.33);
  mix-blend-mode: multiply;
  z-index: 0;
}

.close-lightbox {
  position: absolute;
  width: 30px;
  display: block;
  top: 20px;
  right: 20px;
  margin: 0;
  padding: 0;
  font-size: 30px;
  line-height: 30px;
  color: white;
  transition: all 0.3s ease 0s;
  opacity: 1;
  cursor: pointer;
  z-index: 99;
}

#mega-menu-toggle {
  align-items: center;
  background-image: linear-gradient(#226231, #4B8038, #50BAE8, #1B3765);
  color: white;
  font-family: "Kdam Thmor Pro", sans-serif;
  cursor: pointer;
  display: none;
  height: 100%;
  left: 0;
  justify-content: center;
  position: fixed;
  top: 0;
  width: 80px;
  z-index: 100;
}
@media only screen and (min-width: 1024px) {
  #mega-menu-toggle {
    display: flex;
  }
}
#mega-menu-toggle.active span {
  opacity: 0;
}
#mega-menu-toggle.active div:before {
  top: 15px;
  transform: translate(0, -50%) rotate(45deg);
}
#mega-menu-toggle.active div:after {
  bottom: 9px;
  transform: translate(0, -50%) rotate(-45deg);
}
#mega-menu-toggle div {
  position: relative;
}
#mega-menu-toggle div:before {
  background: white;
  content: "";
  height: 5px;
  left: 0;
  position: absolute;
  top: -9px;
  transition: 0.2s;
  width: 100%;
}
#mega-menu-toggle div:after {
  background: white;
  bottom: -9px;
  content: "";
  height: 5px;
  left: 0;
  position: absolute;
  transition: 0.2s;
  width: 100%;
}
#mega-menu-toggle span {
  text-transform: uppercase;
  position: relative;
}

.mega-menu {
  display: none;
}
.mega-menu.active {
  background: white;
  display: flex;
  padding: 50px 100px;
  position: fixed;
  height: 100vh;
  top: 0;
  width: 100%;
}
.mega-menu__navigation {
  width: 50%;
}
.mega-menu__locations {
  width: 50%;
}
.mega-menu .expand {
  align-items: center;
  cursor: pointer;
  display: flex;
  height: 10px;
  justify-content: center;
  padding: 10px;
  position: absolute;
  right: 0;
  width: 10px;
}
.mega-menu .expand:before {
  background: #1B3765;
  content: "";
  height: 3px;
  position: absolute;
  width: 100%;
}
.mega-menu .expand:after {
  background: #1B3765;
  content: "";
  height: 100%;
  position: absolute;
  width: 3px;
}
.mega-menu .expand.active:after {
  display: none;
}

#menu-main-navigation-1 {
  display: inline-block;
  columns: 2;
  list-style-type: none;
  margin: 0 0 13px;
  justify-content: space-between;
  padding: 0;
}
#menu-main-navigation-1 > li {
  break-inside: avoid;
  page-break-inside: avoid;
  margin: 0 0 30px;
  position: relative;
}
#menu-main-navigation-1 > li:last-of-type {
  margin: 0;
}
#menu-main-navigation-1 > li > a {
  color: #1B3765;
  overflow: visible;
  margin: 0 0 15px;
  font: 500 30px/30px "Kdam Thmor Pro", sans-serif;
}
#menu-main-navigation-1 > li > .expand {
  display: none;
}
#menu-main-navigation-1 > li .sub-menu {
  left: 0;
  flex-direction: column;
  gap: 5px;
  list-style: none;
  position: relative;
  padding: 0 0 0 20px;
  margin: 20px 0 0 0;
  width: 100%;
}
#menu-main-navigation-1 > li .sub-menu li {
  width: 100%;
}
#menu-main-navigation-1 > li .sub-menu a {
  color: #1B3765;
  font: 100 25px/25px "Lato", sans-serif;
}
#menu-main-navigation-1 > li .sub-menu .sub-menu {
  display: none;
}
#menu-main-navigation-1 > li .sub-menu .sub-menu.active {
  display: inline-block;
}

/* _sidecar.scss */
#siteWrapper {
  background-color: black;
  min-height: 100vh;
  position: relative;
}

.body-overlay {
  background: black;
  cursor: col-resize;
  display: block;
  height: 0;
  left: 0;
  opacity: 0;
  position: absolute;
  top: 0;
  transition-delay: 0.44s !important;
  transition: opacity 0.55s ease;
  visibility: hidden;
  width: 0;
  z-index: -100;
}
.body-overlay.active {
  height: 100%;
  opacity: 0.6;
  transition-delay: 0.2s !important;
  transition: opacity 0.55s ease;
  visibility: visible;
  width: 100%;
  z-index: 100;
}

#sidecar-toggle {
  align-items: center;
  background: white;
  border: none;
  color: #1B3765;
  cursor: pointer;
  display: flex;
  font: 100 14px/14px "Kdam Thmor Pro", sans-serif;
  justify-content: center;
  margin: 0 0 0 20px;
  padding: 20px 10px;
  position: relative;
  text-transform: uppercase;
}
@media only screen and (min-width: 1024px) {
  #sidecar-toggle {
    display: none;
  }
}
#sidecar-toggle span {
  position: relative;
}
#sidecar-toggle span:before {
  background: #1B3765;
  content: "";
  height: 3px;
  left: 0;
  position: absolute;
  top: -8px;
  transition: 0.2s;
  width: 100%;
}
#sidecar-toggle span:after {
  background: #1B3765;
  bottom: -8px;
  content: "";
  height: 3px;
  left: 0;
  position: absolute;
  transition: 0.2s;
  width: 100%;
}
#sidecar-toggle.active span {
  color: white;
}
#sidecar-toggle.active span:before {
  top: 7px;
  transform: translate(0, -50%) rotate(45deg);
}
#sidecar-toggle.active span:after {
  bottom: 3px;
  transform: translate(0, -50%) rotate(-45deg);
}

/* ============ Sidecar Drawer ============ */
#sidecar {
  background-image: linear-gradient(#226231, #4B8038, #50BAE8, #1B3765);
  height: 100%;
  overflow-x: hidden;
  overflow-y: scroll;
  position: fixed;
  right: -100%;
  text-align: left;
  top: 70px;
  transition: right 0.44s ease;
  width: 100%;
  z-index: 10;
}
#sidecar ul#mainnav {
  right: 0px;
}

#sidecar.slide-right {
  left: inherit;
  opacity: 1;
  right: 100%;
  transition: transform 0.44s ease-in-out, left 0.44s ease-in-out, right 0.44s ease-in-out;
}
#sidecar.slide-right.active {
  opacity: 1;
  right: 0;
  transition: all 0.44s ease;
}
#sidecar.slide-right.active ul#mainnav li a {
  margin-left: 0px;
  opacity: 1;
}

/* ============ Sidecar Menu ============ */
nav#sidecar ul#menu-main-navigation,
nav#sidecar ul#menu-discovery-center-menu,
ul#menu-wildcat-bluff-menu {
  -webkit-padding-start: 0px;
  background: transparent;
  display: flex;
  flex-wrap: wrap;
  height: auto;
  margin: 150px auto 200px;
  max-width: 300px;
  position: relative;
  width: 100%;
}
nav#sidecar ul#menu-main-navigation #mn-home,
nav#sidecar ul#menu-discovery-center-menu #mn-home,
ul#menu-wildcat-bluff-menu #mn-home {
  display: none;
}
nav#sidecar ul#menu-main-navigation .sub-menu,
nav#sidecar ul#menu-discovery-center-menu .sub-menu,
ul#menu-wildcat-bluff-menu .sub-menu {
  display: none;
}
nav#sidecar ul#menu-main-navigation .sub-menu.active,
nav#sidecar ul#menu-discovery-center-menu .sub-menu.active,
ul#menu-wildcat-bluff-menu .sub-menu.active {
  display: inline-block;
}
nav#sidecar ul#menu-main-navigation li,
nav#sidecar ul#menu-discovery-center-menu li,
ul#menu-wildcat-bluff-menu li {
  background: transparent;
  display: block;
  float: none;
  height: auto;
  margin: 0;
  padding: 0;
  position: relative;
  text-align: left;
  width: 100%;
}
nav#sidecar ul#menu-main-navigation li ul,
nav#sidecar ul#menu-discovery-center-menu li ul,
ul#menu-wildcat-bluff-menu li ul {
  display: block;
  padding: 0 0 0 30px;
  position: relative;
}
nav#sidecar ul#menu-main-navigation li ul li a,
nav#sidecar ul#menu-discovery-center-menu li ul li a,
ul#menu-wildcat-bluff-menu li ul li a {
  border: none;
  font: normal 2.2rem "Lato", sans-serif;
  padding: 8px 0px 8px 16px;
}
nav#sidecar ul#menu-main-navigation li a,
nav#sidecar ul#menu-discovery-center-menu li a,
ul#menu-wildcat-bluff-menu li a {
  color: white;
  display: inline-block;
  font: normal 2.7rem "Kdam Thmor Pro", sans-serif;
  height: auto;
  padding: 8px 16px;
  position: relative;
  transition: all 0.44s ease;
  width: 100%;
}
nav#sidecar ul#menu-main-navigation li a.expand,
nav#sidecar ul#menu-discovery-center-menu li a.expand,
ul#menu-wildcat-bluff-menu li a.expand {
  align-items: center;
  cursor: pointer;
  display: flex;
  height: 10px;
  justify-content: center;
  padding: 10px;
  position: absolute;
  right: 0;
  top: 18px;
  width: 10px;
}
nav#sidecar ul#menu-main-navigation li a.expand:before,
nav#sidecar ul#menu-discovery-center-menu li a.expand:before,
ul#menu-wildcat-bluff-menu li a.expand:before {
  background: white;
  content: "";
  height: 3px;
  position: absolute;
  width: 100%;
}
nav#sidecar ul#menu-main-navigation li a.expand:after,
nav#sidecar ul#menu-discovery-center-menu li a.expand:after,
ul#menu-wildcat-bluff-menu li a.expand:after {
  background: white;
  content: "";
  height: 100%;
  position: absolute;
  width: 3px;
}
nav#sidecar ul#menu-main-navigation li a.expand.active,
nav#sidecar ul#menu-discovery-center-menu li a.expand.active,
ul#menu-wildcat-bluff-menu li a.expand.active {
  transform: rotate(180deg);
}
nav#sidecar ul#menu-main-navigation li a.expand.active:after,
nav#sidecar ul#menu-discovery-center-menu li a.expand.active:after,
ul#menu-wildcat-bluff-menu li a.expand.active:after {
  display: none;
}

/* _alert.scss */
.page-alert {
  align-items: center;
  background: rgba(255, 255, 255, 0.37);
  box-shadow: 0 4px 30px rgba(0, 0, 0, 0.1);
  backdrop-filter: blur(5px);
  -webkit-backdrop-filter: blur(5px);
  display: none;
  overflow: hidden;
  justify-content: center;
  padding: 3rem;
  position: fixed;
  z-index: -100;
  top: 0;
  height: 100%;
  width: 100%;
}
.page-alert--active {
  display: flex;
  flex-direction: column;
  opacity: 1;
  z-index: 100000000000;
}
.page-alert__wrap {
  background-image: linear-gradient(#1B3765, #055593);
  border-radius: 20px;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  max-width: 800px;
  position: relative;
}
@media only screen and (min-width: 768px) {
  .page-alert__wrap {
    flex-direction: row;
    min-width: 680px;
  }
}
.page-alert__image {
  aspect-ratio: 16/9;
  clip-path: url(#page-alert-mobile-mask);
  position: relative;
  width: 100%;
}
@media only screen and (min-width: 768px) {
  .page-alert__image {
    aspect-ratio: 1;
    clip-path: url(#page-alert-desktop-mask);
    width: 50%;
  }
}
.page-alert__image img {
  height: 100%;
  object-fit: cover;
  position: absolute;
  width: 100%;
}
.page-alert__message {
  color: white;
  line-height: 1.5;
  display: flex;
  flex: 1 auto;
  flex-direction: column;
  gap: 20px;
  justify-content: center;
  padding: 50px;
  position: relative;
  width: 100%;
}
.page-alert__message h2, .page-alert__message h3, .page-alert__message h4, .page-alert__message h5, .page-alert__message h6, .page-alert__message p {
  color: white;
  margin-bottom: 0;
}
.page-alert__message h2:first-of-type, .page-alert__message h3:first-of-type, .page-alert__message h4:first-of-type, .page-alert__message h5:first-of-type, .page-alert__message h6:first-of-type, .page-alert__message p:first-of-type {
  margin-top: 0;
}
@media only screen and (min-width: 768px) {
  .page-alert__message {
    width: 50%;
  }
}
.page-alert__dismiss {
  cursor: pointer;
  display: flex;
  margin: 0;
  position: absolute;
  right: 0px;
  top: 0px;
  z-index: 1;
  background: #56AE46;
  padding: 1rem;
}
@media only screen and (min-width: 768px) {
  .page-alert__dismiss {
    background: transparent;
    margin: 0 0 10px;
    right: 20px;
    padding: 0;
    top: 20px;
  }
}
.page-alert__dismiss svg path {
  fill: white;
}
.page-alert a {
  margin: 25px 0 0;
}

/* ============ HELPERS ============ */
/* _mixins.scss */
/* ============ Pseudo Element Overlay ============ */
.shade {
  position: relative;
}
.shade::before {
  background: black;
  content: "";
  height: 100%;
  left: 0;
  opacity: 0.5;
  position: absolute;
  top: 0;
  transition: opacity 0.25s ease;
  width: 100%;
  z-index: 0;
}

/* ============ BG Images ============ */
.bg-image,
.bg-image-js {
  background-attachment: scroll;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}

/* ============ Paddding Adjustments ============ */
.no-border {
  border: 0;
}

.no-padding {
  padding: 0;
}

.no-margin {
  margin: 0;
}

.cushion-sm {
  padding: 2%;
}

.cushion-md {
  padding: 5%;
}

.cushion-lg {
  padding: 10%;
}

.cushion-v-sm {
  padding: 2% 0;
}

.cushion-v-md {
  padding: 5% 0;
}

.cushion-v-lg {
  padding: 10% 0;
}

.cushion-h-sm {
  padding: 0 2%;
}

.cushion-h-md {
  padding: 0 5%;
}

.cushion-h-lg {
  padding: 0 10%;
}

.white {
  color: white !important;
}

/* ============ Alignment ============ */
.center {
  text-align: center;
}

.centered {
  left: 50%;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
}

.v-centered {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}

.h-centered {
  left: 50%;
  position: absolute;
  transform: translateX(-50%);
}

.flex-center {
  align-items: center;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.flex-spread {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

/* ============ Transitions ============ */
.transition-cubic {
  transition: all 0.55s cubic-bezier(0.645, 0.045, 0.355, 1);
}

.transition-fast {
  transition: all 0.2s ease;
}

.transition {
  transition: all 0.5s ease;
}

.transition-slow {
  transition: all 1s ease;
}

.transition-bounce {
  transition: all 0.3s cubic-bezier(0.33, 2, 0.8, 1);
}

.easeInOutBack {
  transition: all 0.6s cubic-bezier(0.68, -0.55, 0.265, 1.55);
}

/* ============ Animation delays ============ */
.delay-1 {
  animation-delay: 0.1s;
}

.delay-2 {
  animation-delay: 0.2s;
}

.delay-3 {
  animation-delay: 0.3s;
}

.delay-4 {
  animation-delay: 0.4s;
}

.delay-5 {
  animation-delay: 0.5s;
}

.delay-6 {
  animation-delay: 0.6s;
}

/* _helpers.scss */
/* ============ Responsive Embed Wrapper ============ */
.embed-container {
  height: 0;
  max-width: 100%;
  overflow: hidden;
  padding-bottom: 56.25%;
  position: relative;
}
.embed-container iframe,
.embed-container object,
.embed-container embed {
  border: none;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
}

/* ============ Better Browser Alert ============ */
iframe.get-a-better-browser {
  background: white;
  height: 100vh;
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  z-index: 1000;
}

/* _animate.scss */
.animated {
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
}

.animated.infinite {
  -webkit-animation-iteration-count: infinite;
  animation-iteration-count: infinite;
}

.animated.hinge {
  -webkit-animation-duration: 2s;
  animation-duration: 2s;
}

.animated.flipOutX,
.animated.flipOutY,
.animated.bounceIn,
.animated.bounceOut {
  -webkit-animation-duration: 0.75s;
  animation-duration: 0.75s;
}

@-webkit-keyframes bounce {
  from, 20%, 53%, 80%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  40%, 43% {
    -webkit-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    -webkit-transform: translate3d(0, -30px, 0);
    transform: translate3d(0, -30px, 0);
  }
  70% {
    -webkit-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    -webkit-transform: translate3d(0, -15px, 0);
    transform: translate3d(0, -15px, 0);
  }
  90% {
    -webkit-transform: translate3d(0, -4px, 0);
    transform: translate3d(0, -4px, 0);
  }
}
@keyframes bounce {
  from, 20%, 53%, 80%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  40%, 43% {
    -webkit-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    -webkit-transform: translate3d(0, -30px, 0);
    transform: translate3d(0, -30px, 0);
  }
  70% {
    -webkit-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    -webkit-transform: translate3d(0, -15px, 0);
    transform: translate3d(0, -15px, 0);
  }
  90% {
    -webkit-transform: translate3d(0, -4px, 0);
    transform: translate3d(0, -4px, 0);
  }
}
.bounce {
  -webkit-animation-name: bounce;
  animation-name: bounce;
  -webkit-transform-origin: center bottom;
  transform-origin: center bottom;
}

@-webkit-keyframes flash {
  from, 50%, to {
    opacity: 1;
  }
  25%, 75% {
    opacity: 0;
  }
}
@keyframes flash {
  from, 50%, to {
    opacity: 1;
  }
  25%, 75% {
    opacity: 0;
  }
}
.flash {
  -webkit-animation-name: flash;
  animation-name: flash;
}

/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */
@-webkit-keyframes pulse {
  from {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
  50% {
    -webkit-transform: scale3d(1.05, 1.05, 1.05);
    transform: scale3d(1.05, 1.05, 1.05);
  }
  to {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
}
@keyframes pulse {
  from {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
  50% {
    -webkit-transform: scale3d(1.05, 1.05, 1.05);
    transform: scale3d(1.05, 1.05, 1.05);
  }
  to {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
}
.pulse {
  -webkit-animation-name: pulse;
  animation-name: pulse;
}

@-webkit-keyframes rubberBand {
  from {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
  30% {
    -webkit-transform: scale3d(1.25, 0.75, 1);
    transform: scale3d(1.25, 0.75, 1);
  }
  40% {
    -webkit-transform: scale3d(0.75, 1.25, 1);
    transform: scale3d(0.75, 1.25, 1);
  }
  50% {
    -webkit-transform: scale3d(1.15, 0.85, 1);
    transform: scale3d(1.15, 0.85, 1);
  }
  65% {
    -webkit-transform: scale3d(0.95, 1.05, 1);
    transform: scale3d(0.95, 1.05, 1);
  }
  75% {
    -webkit-transform: scale3d(1.05, 0.95, 1);
    transform: scale3d(1.05, 0.95, 1);
  }
  to {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
}
@keyframes rubberBand {
  from {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
  30% {
    -webkit-transform: scale3d(1.25, 0.75, 1);
    transform: scale3d(1.25, 0.75, 1);
  }
  40% {
    -webkit-transform: scale3d(0.75, 1.25, 1);
    transform: scale3d(0.75, 1.25, 1);
  }
  50% {
    -webkit-transform: scale3d(1.15, 0.85, 1);
    transform: scale3d(1.15, 0.85, 1);
  }
  65% {
    -webkit-transform: scale3d(0.95, 1.05, 1);
    transform: scale3d(0.95, 1.05, 1);
  }
  75% {
    -webkit-transform: scale3d(1.05, 0.95, 1);
    transform: scale3d(1.05, 0.95, 1);
  }
  to {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
}
.rubberBand {
  -webkit-animation-name: rubberBand;
  animation-name: rubberBand;
}

@-webkit-keyframes shake {
  from, to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  10%, 30%, 50%, 70%, 90% {
    -webkit-transform: translate3d(-10px, 0, 0);
    transform: translate3d(-10px, 0, 0);
  }
  20%, 40%, 60%, 80% {
    -webkit-transform: translate3d(10px, 0, 0);
    transform: translate3d(10px, 0, 0);
  }
}
@keyframes shake {
  from, to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  10%, 30%, 50%, 70%, 90% {
    -webkit-transform: translate3d(-10px, 0, 0);
    transform: translate3d(-10px, 0, 0);
  }
  20%, 40%, 60%, 80% {
    -webkit-transform: translate3d(10px, 0, 0);
    transform: translate3d(10px, 0, 0);
  }
}
.shake {
  -webkit-animation-name: shake;
  animation-name: shake;
}

@-webkit-keyframes headShake {
  0% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
  6.5% {
    -webkit-transform: translateX(-6px) rotateY(-9deg);
    transform: translateX(-6px) rotateY(-9deg);
  }
  18.5% {
    -webkit-transform: translateX(5px) rotateY(7deg);
    transform: translateX(5px) rotateY(7deg);
  }
  31.5% {
    -webkit-transform: translateX(-3px) rotateY(-5deg);
    transform: translateX(-3px) rotateY(-5deg);
  }
  43.5% {
    -webkit-transform: translateX(2px) rotateY(3deg);
    transform: translateX(2px) rotateY(3deg);
  }
  50% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
}
@keyframes headShake {
  0% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
  6.5% {
    -webkit-transform: translateX(-6px) rotateY(-9deg);
    transform: translateX(-6px) rotateY(-9deg);
  }
  18.5% {
    -webkit-transform: translateX(5px) rotateY(7deg);
    transform: translateX(5px) rotateY(7deg);
  }
  31.5% {
    -webkit-transform: translateX(-3px) rotateY(-5deg);
    transform: translateX(-3px) rotateY(-5deg);
  }
  43.5% {
    -webkit-transform: translateX(2px) rotateY(3deg);
    transform: translateX(2px) rotateY(3deg);
  }
  50% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
}
.headShake {
  -webkit-animation-timing-function: ease-in-out;
  animation-timing-function: ease-in-out;
  -webkit-animation-name: headShake;
  animation-name: headShake;
}

@-webkit-keyframes swing {
  20% {
    -webkit-transform: rotate3d(0, 0, 1, 15deg);
    transform: rotate3d(0, 0, 1, 15deg);
  }
  40% {
    -webkit-transform: rotate3d(0, 0, 1, -10deg);
    transform: rotate3d(0, 0, 1, -10deg);
  }
  60% {
    -webkit-transform: rotate3d(0, 0, 1, 5deg);
    transform: rotate3d(0, 0, 1, 5deg);
  }
  80% {
    -webkit-transform: rotate3d(0, 0, 1, -5deg);
    transform: rotate3d(0, 0, 1, -5deg);
  }
  to {
    -webkit-transform: rotate3d(0, 0, 1, 0deg);
    transform: rotate3d(0, 0, 1, 0deg);
  }
}
@keyframes swing {
  20% {
    -webkit-transform: rotate3d(0, 0, 1, 15deg);
    transform: rotate3d(0, 0, 1, 15deg);
  }
  40% {
    -webkit-transform: rotate3d(0, 0, 1, -10deg);
    transform: rotate3d(0, 0, 1, -10deg);
  }
  60% {
    -webkit-transform: rotate3d(0, 0, 1, 5deg);
    transform: rotate3d(0, 0, 1, 5deg);
  }
  80% {
    -webkit-transform: rotate3d(0, 0, 1, -5deg);
    transform: rotate3d(0, 0, 1, -5deg);
  }
  to {
    -webkit-transform: rotate3d(0, 0, 1, 0deg);
    transform: rotate3d(0, 0, 1, 0deg);
  }
}
.swing {
  -webkit-transform-origin: top center;
  transform-origin: top center;
  -webkit-animation-name: swing;
  animation-name: swing;
}

@-webkit-keyframes tada {
  from {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
  10%, 20% {
    -webkit-transform: scale3d(0.9, 0.9, 0.9) rotate3d(0, 0, 1, -3deg);
    transform: scale3d(0.9, 0.9, 0.9) rotate3d(0, 0, 1, -3deg);
  }
  30%, 50%, 70%, 90% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
    transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
  }
  40%, 60%, 80% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
    transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
  }
  to {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
}
@keyframes tada {
  from {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
  10%, 20% {
    -webkit-transform: scale3d(0.9, 0.9, 0.9) rotate3d(0, 0, 1, -3deg);
    transform: scale3d(0.9, 0.9, 0.9) rotate3d(0, 0, 1, -3deg);
  }
  30%, 50%, 70%, 90% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
    transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
  }
  40%, 60%, 80% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
    transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
  }
  to {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
}
.tada {
  -webkit-animation-name: tada;
  animation-name: tada;
}

/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */
@-webkit-keyframes wobble {
  from {
    -webkit-transform: none;
    transform: none;
  }
  15% {
    -webkit-transform: translate3d(-25%, 0, 0) rotate3d(0, 0, 1, -5deg);
    transform: translate3d(-25%, 0, 0) rotate3d(0, 0, 1, -5deg);
  }
  30% {
    -webkit-transform: translate3d(20%, 0, 0) rotate3d(0, 0, 1, 3deg);
    transform: translate3d(20%, 0, 0) rotate3d(0, 0, 1, 3deg);
  }
  45% {
    -webkit-transform: translate3d(-15%, 0, 0) rotate3d(0, 0, 1, -3deg);
    transform: translate3d(-15%, 0, 0) rotate3d(0, 0, 1, -3deg);
  }
  60% {
    -webkit-transform: translate3d(10%, 0, 0) rotate3d(0, 0, 1, 2deg);
    transform: translate3d(10%, 0, 0) rotate3d(0, 0, 1, 2deg);
  }
  75% {
    -webkit-transform: translate3d(-5%, 0, 0) rotate3d(0, 0, 1, -1deg);
    transform: translate3d(-5%, 0, 0) rotate3d(0, 0, 1, -1deg);
  }
  to {
    -webkit-transform: none;
    transform: none;
  }
}
@keyframes wobble {
  from {
    -webkit-transform: none;
    transform: none;
  }
  15% {
    -webkit-transform: translate3d(-25%, 0, 0) rotate3d(0, 0, 1, -5deg);
    transform: translate3d(-25%, 0, 0) rotate3d(0, 0, 1, -5deg);
  }
  30% {
    -webkit-transform: translate3d(20%, 0, 0) rotate3d(0, 0, 1, 3deg);
    transform: translate3d(20%, 0, 0) rotate3d(0, 0, 1, 3deg);
  }
  45% {
    -webkit-transform: translate3d(-15%, 0, 0) rotate3d(0, 0, 1, -3deg);
    transform: translate3d(-15%, 0, 0) rotate3d(0, 0, 1, -3deg);
  }
  60% {
    -webkit-transform: translate3d(10%, 0, 0) rotate3d(0, 0, 1, 2deg);
    transform: translate3d(10%, 0, 0) rotate3d(0, 0, 1, 2deg);
  }
  75% {
    -webkit-transform: translate3d(-5%, 0, 0) rotate3d(0, 0, 1, -1deg);
    transform: translate3d(-5%, 0, 0) rotate3d(0, 0, 1, -1deg);
  }
  to {
    -webkit-transform: none;
    transform: none;
  }
}
.wobble {
  -webkit-animation-name: wobble;
  animation-name: wobble;
}

@-webkit-keyframes jello {
  from, 11.1%, to {
    -webkit-transform: none;
    transform: none;
  }
  22.2% {
    -webkit-transform: skewX(-12.5deg) skewY(-12.5deg);
    transform: skewX(-12.5deg) skewY(-12.5deg);
  }
  33.3% {
    -webkit-transform: skewX(6.25deg) skewY(6.25deg);
    transform: skewX(6.25deg) skewY(6.25deg);
  }
  44.4% {
    -webkit-transform: skewX(-3.125deg) skewY(-3.125deg);
    transform: skewX(-3.125deg) skewY(-3.125deg);
  }
  55.5% {
    -webkit-transform: skewX(1.5625deg) skewY(1.5625deg);
    transform: skewX(1.5625deg) skewY(1.5625deg);
  }
  66.6% {
    -webkit-transform: skewX(-0.78125deg) skewY(-0.78125deg);
    transform: skewX(-0.78125deg) skewY(-0.78125deg);
  }
  77.7% {
    -webkit-transform: skewX(0.390625deg) skewY(0.390625deg);
    transform: skewX(0.390625deg) skewY(0.390625deg);
  }
  88.8% {
    -webkit-transform: skewX(-0.1953125deg) skewY(-0.1953125deg);
    transform: skewX(-0.1953125deg) skewY(-0.1953125deg);
  }
}
@keyframes jello {
  from, 11.1%, to {
    -webkit-transform: none;
    transform: none;
  }
  22.2% {
    -webkit-transform: skewX(-12.5deg) skewY(-12.5deg);
    transform: skewX(-12.5deg) skewY(-12.5deg);
  }
  33.3% {
    -webkit-transform: skewX(6.25deg) skewY(6.25deg);
    transform: skewX(6.25deg) skewY(6.25deg);
  }
  44.4% {
    -webkit-transform: skewX(-3.125deg) skewY(-3.125deg);
    transform: skewX(-3.125deg) skewY(-3.125deg);
  }
  55.5% {
    -webkit-transform: skewX(1.5625deg) skewY(1.5625deg);
    transform: skewX(1.5625deg) skewY(1.5625deg);
  }
  66.6% {
    -webkit-transform: skewX(-0.78125deg) skewY(-0.78125deg);
    transform: skewX(-0.78125deg) skewY(-0.78125deg);
  }
  77.7% {
    -webkit-transform: skewX(0.390625deg) skewY(0.390625deg);
    transform: skewX(0.390625deg) skewY(0.390625deg);
  }
  88.8% {
    -webkit-transform: skewX(-0.1953125deg) skewY(-0.1953125deg);
    transform: skewX(-0.1953125deg) skewY(-0.1953125deg);
  }
}
.jello {
  -webkit-animation-name: jello;
  animation-name: jello;
  -webkit-transform-origin: center;
  transform-origin: center;
}

@-webkit-keyframes bounceIn {
  from, 20%, 40%, 60%, 80%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }
  0% {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3);
  }
  20% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1);
    transform: scale3d(1.1, 1.1, 1.1);
  }
  40% {
    -webkit-transform: scale3d(0.9, 0.9, 0.9);
    transform: scale3d(0.9, 0.9, 0.9);
  }
  60% {
    opacity: 1;
    -webkit-transform: scale3d(1.03, 1.03, 1.03);
    transform: scale3d(1.03, 1.03, 1.03);
  }
  80% {
    -webkit-transform: scale3d(0.97, 0.97, 0.97);
    transform: scale3d(0.97, 0.97, 0.97);
  }
  to {
    opacity: 1;
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
}
@keyframes bounceIn {
  from, 20%, 40%, 60%, 80%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }
  0% {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3);
  }
  20% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1);
    transform: scale3d(1.1, 1.1, 1.1);
  }
  40% {
    -webkit-transform: scale3d(0.9, 0.9, 0.9);
    transform: scale3d(0.9, 0.9, 0.9);
  }
  60% {
    opacity: 1;
    -webkit-transform: scale3d(1.03, 1.03, 1.03);
    transform: scale3d(1.03, 1.03, 1.03);
  }
  80% {
    -webkit-transform: scale3d(0.97, 0.97, 0.97);
    transform: scale3d(0.97, 0.97, 0.97);
  }
  to {
    opacity: 1;
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
}
.bounceIn {
  -webkit-animation-name: bounceIn;
  animation-name: bounceIn;
}

@-webkit-keyframes bounceInDown {
  from, 60%, 75%, 90%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }
  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, -3000px, 0);
    transform: translate3d(0, -3000px, 0);
  }
  60% {
    opacity: 1;
    -webkit-transform: translate3d(0, 25px, 0);
    transform: translate3d(0, 25px, 0);
  }
  75% {
    -webkit-transform: translate3d(0, -10px, 0);
    transform: translate3d(0, -10px, 0);
  }
  90% {
    -webkit-transform: translate3d(0, 5px, 0);
    transform: translate3d(0, 5px, 0);
  }
  to {
    -webkit-transform: none;
    transform: none;
  }
}
@keyframes bounceInDown {
  from, 60%, 75%, 90%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }
  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, -3000px, 0);
    transform: translate3d(0, -3000px, 0);
  }
  60% {
    opacity: 1;
    -webkit-transform: translate3d(0, 25px, 0);
    transform: translate3d(0, 25px, 0);
  }
  75% {
    -webkit-transform: translate3d(0, -10px, 0);
    transform: translate3d(0, -10px, 0);
  }
  90% {
    -webkit-transform: translate3d(0, 5px, 0);
    transform: translate3d(0, 5px, 0);
  }
  to {
    -webkit-transform: none;
    transform: none;
  }
}
.bounceInDown {
  -webkit-animation-name: bounceInDown;
  animation-name: bounceInDown;
}

@-webkit-keyframes bounceInLeft {
  from, 60%, 75%, 90%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }
  0% {
    opacity: 0;
    -webkit-transform: translate3d(-3000px, 0, 0);
    transform: translate3d(-3000px, 0, 0);
  }
  60% {
    opacity: 1;
    -webkit-transform: translate3d(25px, 0, 0);
    transform: translate3d(25px, 0, 0);
  }
  75% {
    -webkit-transform: translate3d(-10px, 0, 0);
    transform: translate3d(-10px, 0, 0);
  }
  90% {
    -webkit-transform: translate3d(5px, 0, 0);
    transform: translate3d(5px, 0, 0);
  }
  to {
    -webkit-transform: none;
    transform: none;
  }
}
@keyframes bounceInLeft {
  from, 60%, 75%, 90%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }
  0% {
    opacity: 0;
    -webkit-transform: translate3d(-3000px, 0, 0);
    transform: translate3d(-3000px, 0, 0);
  }
  60% {
    opacity: 1;
    -webkit-transform: translate3d(25px, 0, 0);
    transform: translate3d(25px, 0, 0);
  }
  75% {
    -webkit-transform: translate3d(-10px, 0, 0);
    transform: translate3d(-10px, 0, 0);
  }
  90% {
    -webkit-transform: translate3d(5px, 0, 0);
    transform: translate3d(5px, 0, 0);
  }
  to {
    -webkit-transform: none;
    transform: none;
  }
}
.bounceInLeft {
  -webkit-animation-name: bounceInLeft;
  animation-name: bounceInLeft;
}

@-webkit-keyframes bounceInRight {
  from, 60%, 75%, 90%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }
  from {
    opacity: 0;
    -webkit-transform: translate3d(3000px, 0, 0);
    transform: translate3d(3000px, 0, 0);
  }
  60% {
    opacity: 1;
    -webkit-transform: translate3d(-25px, 0, 0);
    transform: translate3d(-25px, 0, 0);
  }
  75% {
    -webkit-transform: translate3d(10px, 0, 0);
    transform: translate3d(10px, 0, 0);
  }
  90% {
    -webkit-transform: translate3d(-5px, 0, 0);
    transform: translate3d(-5px, 0, 0);
  }
  to {
    -webkit-transform: none;
    transform: none;
  }
}
@keyframes bounceInRight {
  from, 60%, 75%, 90%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }
  from {
    opacity: 0;
    -webkit-transform: translate3d(3000px, 0, 0);
    transform: translate3d(3000px, 0, 0);
  }
  60% {
    opacity: 1;
    -webkit-transform: translate3d(-25px, 0, 0);
    transform: translate3d(-25px, 0, 0);
  }
  75% {
    -webkit-transform: translate3d(10px, 0, 0);
    transform: translate3d(10px, 0, 0);
  }
  90% {
    -webkit-transform: translate3d(-5px, 0, 0);
    transform: translate3d(-5px, 0, 0);
  }
  to {
    -webkit-transform: none;
    transform: none;
  }
}
.bounceInRight {
  -webkit-animation-name: bounceInRight;
  animation-name: bounceInRight;
}

@-webkit-keyframes bounceInUp {
  from, 60%, 75%, 90%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 3000px, 0);
    transform: translate3d(0, 3000px, 0);
  }
  60% {
    opacity: 1;
    -webkit-transform: translate3d(0, -20px, 0);
    transform: translate3d(0, -20px, 0);
  }
  75% {
    -webkit-transform: translate3d(0, 10px, 0);
    transform: translate3d(0, 10px, 0);
  }
  90% {
    -webkit-transform: translate3d(0, -5px, 0);
    transform: translate3d(0, -5px, 0);
  }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
@keyframes bounceInUp {
  from, 60%, 75%, 90%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 3000px, 0);
    transform: translate3d(0, 3000px, 0);
  }
  60% {
    opacity: 1;
    -webkit-transform: translate3d(0, -20px, 0);
    transform: translate3d(0, -20px, 0);
  }
  75% {
    -webkit-transform: translate3d(0, 10px, 0);
    transform: translate3d(0, 10px, 0);
  }
  90% {
    -webkit-transform: translate3d(0, -5px, 0);
    transform: translate3d(0, -5px, 0);
  }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
.bounceInUp {
  -webkit-animation-name: bounceInUp;
  animation-name: bounceInUp;
}

@-webkit-keyframes bounceOut {
  20% {
    -webkit-transform: scale3d(0.9, 0.9, 0.9);
    transform: scale3d(0.9, 0.9, 0.9);
  }
  50%, 55% {
    opacity: 1;
    -webkit-transform: scale3d(1.1, 1.1, 1.1);
    transform: scale3d(1.1, 1.1, 1.1);
  }
  to {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3);
  }
}
@keyframes bounceOut {
  20% {
    -webkit-transform: scale3d(0.9, 0.9, 0.9);
    transform: scale3d(0.9, 0.9, 0.9);
  }
  50%, 55% {
    opacity: 1;
    -webkit-transform: scale3d(1.1, 1.1, 1.1);
    transform: scale3d(1.1, 1.1, 1.1);
  }
  to {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3);
  }
}
.bounceOut {
  -webkit-animation-name: bounceOut;
  animation-name: bounceOut;
}

@-webkit-keyframes bounceOutDown {
  20% {
    -webkit-transform: translate3d(0, 10px, 0);
    transform: translate3d(0, 10px, 0);
  }
  40%, 45% {
    opacity: 1;
    -webkit-transform: translate3d(0, -20px, 0);
    transform: translate3d(0, -20px, 0);
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0, 2000px, 0);
    transform: translate3d(0, 2000px, 0);
  }
}
@keyframes bounceOutDown {
  20% {
    -webkit-transform: translate3d(0, 10px, 0);
    transform: translate3d(0, 10px, 0);
  }
  40%, 45% {
    opacity: 1;
    -webkit-transform: translate3d(0, -20px, 0);
    transform: translate3d(0, -20px, 0);
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0, 2000px, 0);
    transform: translate3d(0, 2000px, 0);
  }
}
.bounceOutDown {
  -webkit-animation-name: bounceOutDown;
  animation-name: bounceOutDown;
}

@-webkit-keyframes bounceOutLeft {
  20% {
    opacity: 1;
    -webkit-transform: translate3d(20px, 0, 0);
    transform: translate3d(20px, 0, 0);
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(-2000px, 0, 0);
    transform: translate3d(-2000px, 0, 0);
  }
}
@keyframes bounceOutLeft {
  20% {
    opacity: 1;
    -webkit-transform: translate3d(20px, 0, 0);
    transform: translate3d(20px, 0, 0);
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(-2000px, 0, 0);
    transform: translate3d(-2000px, 0, 0);
  }
}
.bounceOutLeft {
  -webkit-animation-name: bounceOutLeft;
  animation-name: bounceOutLeft;
}

@-webkit-keyframes bounceOutRight {
  20% {
    opacity: 1;
    -webkit-transform: translate3d(-20px, 0, 0);
    transform: translate3d(-20px, 0, 0);
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(2000px, 0, 0);
    transform: translate3d(2000px, 0, 0);
  }
}
@keyframes bounceOutRight {
  20% {
    opacity: 1;
    -webkit-transform: translate3d(-20px, 0, 0);
    transform: translate3d(-20px, 0, 0);
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(2000px, 0, 0);
    transform: translate3d(2000px, 0, 0);
  }
}
.bounceOutRight {
  -webkit-animation-name: bounceOutRight;
  animation-name: bounceOutRight;
}

@-webkit-keyframes bounceOutUp {
  20% {
    -webkit-transform: translate3d(0, -10px, 0);
    transform: translate3d(0, -10px, 0);
  }
  40%, 45% {
    opacity: 1;
    -webkit-transform: translate3d(0, 20px, 0);
    transform: translate3d(0, 20px, 0);
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0, -2000px, 0);
    transform: translate3d(0, -2000px, 0);
  }
}
@keyframes bounceOutUp {
  20% {
    -webkit-transform: translate3d(0, -10px, 0);
    transform: translate3d(0, -10px, 0);
  }
  40%, 45% {
    opacity: 1;
    -webkit-transform: translate3d(0, 20px, 0);
    transform: translate3d(0, 20px, 0);
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0, -2000px, 0);
    transform: translate3d(0, -2000px, 0);
  }
}
.bounceOutUp {
  -webkit-animation-name: bounceOutUp;
  animation-name: bounceOutUp;
}

@-webkit-keyframes fadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes fadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
.fadeIn {
  -webkit-animation-name: fadeIn;
  animation-name: fadeIn;
}

@-webkit-keyframes fadeInDown {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}
@keyframes fadeInDown {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}
.fadeInDown {
  -webkit-animation-name: fadeInDown;
  animation-name: fadeInDown;
}

@-webkit-keyframes fadeInDownBig {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, -2000px, 0);
    transform: translate3d(0, -2000px, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}
@keyframes fadeInDownBig {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, -2000px, 0);
    transform: translate3d(0, -2000px, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}
.fadeInDownBig {
  -webkit-animation-name: fadeInDownBig;
  animation-name: fadeInDownBig;
}

@-webkit-keyframes fadeInLeft {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}
@keyframes fadeInLeft {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}
.fadeInLeft {
  -webkit-animation-name: fadeInLeft;
  animation-name: fadeInLeft;
}

@-webkit-keyframes fadeInLeftBig {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-2000px, 0, 0);
    transform: translate3d(-2000px, 0, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}
@keyframes fadeInLeftBig {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-2000px, 0, 0);
    transform: translate3d(-2000px, 0, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}
.fadeInLeftBig {
  -webkit-animation-name: fadeInLeftBig;
  animation-name: fadeInLeftBig;
}

@-webkit-keyframes fadeInRight {
  from {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}
@keyframes fadeInRight {
  from {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}
.fadeInRight {
  -webkit-animation-name: fadeInRight;
  animation-name: fadeInRight;
}

@-webkit-keyframes fadeInRightBig {
  from {
    opacity: 0;
    -webkit-transform: translate3d(2000px, 0, 0);
    transform: translate3d(2000px, 0, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}
@keyframes fadeInRightBig {
  from {
    opacity: 0;
    -webkit-transform: translate3d(2000px, 0, 0);
    transform: translate3d(2000px, 0, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}
.fadeInRightBig {
  -webkit-animation-name: fadeInRightBig;
  animation-name: fadeInRightBig;
}

@-webkit-keyframes fadeInUp {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}
@keyframes fadeInUp {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}
.fadeInUp {
  -webkit-animation-name: fadeInUp;
  animation-name: fadeInUp;
}

@-webkit-keyframes fadeInUpBig {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 2000px, 0);
    transform: translate3d(0, 2000px, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}
@keyframes fadeInUpBig {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 2000px, 0);
    transform: translate3d(0, 2000px, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}
.fadeInUpBig {
  -webkit-animation-name: fadeInUpBig;
  animation-name: fadeInUpBig;
}

@-webkit-keyframes fadeOut {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}
@keyframes fadeOut {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}
.fadeOut {
  -webkit-animation-name: fadeOut;
  animation-name: fadeOut;
}

@-webkit-keyframes fadeOutDown {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
  }
}
@keyframes fadeOutDown {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
  }
}
.fadeOutDown {
  -webkit-animation-name: fadeOutDown;
  animation-name: fadeOutDown;
}

@-webkit-keyframes fadeOutDownBig {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0, 2000px, 0);
    transform: translate3d(0, 2000px, 0);
  }
}
@keyframes fadeOutDownBig {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0, 2000px, 0);
    transform: translate3d(0, 2000px, 0);
  }
}
.fadeOutDownBig {
  -webkit-animation-name: fadeOutDownBig;
  animation-name: fadeOutDownBig;
}

@-webkit-keyframes fadeOutLeft {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
  }
}
@keyframes fadeOutLeft {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
  }
}
.fadeOutLeft {
  -webkit-animation-name: fadeOutLeft;
  animation-name: fadeOutLeft;
}

@-webkit-keyframes fadeOutLeftBig {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(-2000px, 0, 0);
    transform: translate3d(-2000px, 0, 0);
  }
}
@keyframes fadeOutLeftBig {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(-2000px, 0, 0);
    transform: translate3d(-2000px, 0, 0);
  }
}
.fadeOutLeftBig {
  -webkit-animation-name: fadeOutLeftBig;
  animation-name: fadeOutLeftBig;
}

@-webkit-keyframes fadeOutRight {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
  }
}
@keyframes fadeOutRight {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
  }
}
.fadeOutRight {
  -webkit-animation-name: fadeOutRight;
  animation-name: fadeOutRight;
}

@-webkit-keyframes fadeOutRightBig {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(2000px, 0, 0);
    transform: translate3d(2000px, 0, 0);
  }
}
@keyframes fadeOutRightBig {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(2000px, 0, 0);
    transform: translate3d(2000px, 0, 0);
  }
}
.fadeOutRightBig {
  -webkit-animation-name: fadeOutRightBig;
  animation-name: fadeOutRightBig;
}

@-webkit-keyframes fadeOutUp {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
  }
}
@keyframes fadeOutUp {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
  }
}
.fadeOutUp {
  -webkit-animation-name: fadeOutUp;
  animation-name: fadeOutUp;
}

@-webkit-keyframes fadeOutUpBig {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0, -2000px, 0);
    transform: translate3d(0, -2000px, 0);
  }
}
@keyframes fadeOutUpBig {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0, -2000px, 0);
    transform: translate3d(0, -2000px, 0);
  }
}
.fadeOutUpBig {
  -webkit-animation-name: fadeOutUpBig;
  animation-name: fadeOutUpBig;
}

@-webkit-keyframes flip {
  from {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -360deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -360deg);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
  }
  40% {
    -webkit-transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -190deg);
    transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -190deg);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
  }
  50% {
    -webkit-transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -170deg);
    transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -170deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }
  80% {
    -webkit-transform: perspective(400px) scale3d(0.95, 0.95, 0.95);
    transform: perspective(400px) scale3d(0.95, 0.95, 0.95);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }
  to {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }
}
@keyframes flip {
  from {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -360deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -360deg);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
  }
  40% {
    -webkit-transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -190deg);
    transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -190deg);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
  }
  50% {
    -webkit-transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -170deg);
    transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -170deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }
  80% {
    -webkit-transform: perspective(400px) scale3d(0.95, 0.95, 0.95);
    transform: perspective(400px) scale3d(0.95, 0.95, 0.95);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }
  to {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }
}
.animated.flip {
  -webkit-backface-visibility: visible;
  backface-visibility: visible;
  -webkit-animation-name: flip;
  animation-name: flip;
}

@-webkit-keyframes flipInX {
  from {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
    opacity: 0;
  }
  40% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }
  60% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 10deg);
    transform: perspective(400px) rotate3d(1, 0, 0, 10deg);
    opacity: 1;
  }
  80% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -5deg);
    transform: perspective(400px) rotate3d(1, 0, 0, -5deg);
  }
  to {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
  }
}
@keyframes flipInX {
  from {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
    opacity: 0;
  }
  40% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }
  60% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 10deg);
    transform: perspective(400px) rotate3d(1, 0, 0, 10deg);
    opacity: 1;
  }
  80% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -5deg);
    transform: perspective(400px) rotate3d(1, 0, 0, -5deg);
  }
  to {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
  }
}
.flipInX {
  -webkit-backface-visibility: visible !important;
  backface-visibility: visible !important;
  -webkit-animation-name: flipInX;
  animation-name: flipInX;
}

@-webkit-keyframes flipInY {
  from {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
    opacity: 0;
  }
  40% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -20deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -20deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }
  60% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 10deg);
    transform: perspective(400px) rotate3d(0, 1, 0, 10deg);
    opacity: 1;
  }
  80% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -5deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -5deg);
  }
  to {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
  }
}
@keyframes flipInY {
  from {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
    opacity: 0;
  }
  40% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -20deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -20deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }
  60% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 10deg);
    transform: perspective(400px) rotate3d(0, 1, 0, 10deg);
    opacity: 1;
  }
  80% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -5deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -5deg);
  }
  to {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
  }
}
.flipInY {
  -webkit-backface-visibility: visible !important;
  backface-visibility: visible !important;
  -webkit-animation-name: flipInY;
  animation-name: flipInY;
}

@-webkit-keyframes flipOutX {
  from {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
  }
  30% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    opacity: 1;
  }
  to {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    opacity: 0;
  }
}
@keyframes flipOutX {
  from {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
  }
  30% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    opacity: 1;
  }
  to {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    opacity: 0;
  }
}
.flipOutX {
  -webkit-animation-name: flipOutX;
  animation-name: flipOutX;
  -webkit-backface-visibility: visible !important;
  backface-visibility: visible !important;
}

@-webkit-keyframes flipOutY {
  from {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
  }
  30% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -15deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -15deg);
    opacity: 1;
  }
  to {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    opacity: 0;
  }
}
@keyframes flipOutY {
  from {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
  }
  30% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -15deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -15deg);
    opacity: 1;
  }
  to {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    opacity: 0;
  }
}
.flipOutY {
  -webkit-backface-visibility: visible !important;
  backface-visibility: visible !important;
  -webkit-animation-name: flipOutY;
  animation-name: flipOutY;
}

@-webkit-keyframes lightSpeedIn {
  from {
    -webkit-transform: translate3d(100%, 0, 0) skewX(-30deg);
    transform: translate3d(100%, 0, 0) skewX(-30deg);
    opacity: 0;
  }
  60% {
    -webkit-transform: skewX(20deg);
    transform: skewX(20deg);
    opacity: 1;
  }
  80% {
    -webkit-transform: skewX(-5deg);
    transform: skewX(-5deg);
    opacity: 1;
  }
  to {
    -webkit-transform: none;
    transform: none;
    opacity: 1;
  }
}
@keyframes lightSpeedIn {
  from {
    -webkit-transform: translate3d(100%, 0, 0) skewX(-30deg);
    transform: translate3d(100%, 0, 0) skewX(-30deg);
    opacity: 0;
  }
  60% {
    -webkit-transform: skewX(20deg);
    transform: skewX(20deg);
    opacity: 1;
  }
  80% {
    -webkit-transform: skewX(-5deg);
    transform: skewX(-5deg);
    opacity: 1;
  }
  to {
    -webkit-transform: none;
    transform: none;
    opacity: 1;
  }
}
.lightSpeedIn {
  -webkit-animation-name: lightSpeedIn;
  animation-name: lightSpeedIn;
  -webkit-animation-timing-function: ease-out;
  animation-timing-function: ease-out;
}

@-webkit-keyframes lightSpeedOut {
  from {
    opacity: 1;
  }
  to {
    -webkit-transform: translate3d(100%, 0, 0) skewX(30deg);
    transform: translate3d(100%, 0, 0) skewX(30deg);
    opacity: 0;
  }
}
@keyframes lightSpeedOut {
  from {
    opacity: 1;
  }
  to {
    -webkit-transform: translate3d(100%, 0, 0) skewX(30deg);
    transform: translate3d(100%, 0, 0) skewX(30deg);
    opacity: 0;
  }
}
.lightSpeedOut {
  -webkit-animation-name: lightSpeedOut;
  animation-name: lightSpeedOut;
  -webkit-animation-timing-function: ease-in;
  animation-timing-function: ease-in;
}

@-webkit-keyframes rotateIn {
  from {
    -webkit-transform-origin: center;
    transform-origin: center;
    -webkit-transform: rotate3d(0, 0, 1, -200deg);
    transform: rotate3d(0, 0, 1, -200deg);
    opacity: 0;
  }
  to {
    -webkit-transform-origin: center;
    transform-origin: center;
    -webkit-transform: none;
    transform: none;
    opacity: 1;
  }
}
@keyframes rotateIn {
  from {
    -webkit-transform-origin: center;
    transform-origin: center;
    -webkit-transform: rotate3d(0, 0, 1, -200deg);
    transform: rotate3d(0, 0, 1, -200deg);
    opacity: 0;
  }
  to {
    -webkit-transform-origin: center;
    transform-origin: center;
    -webkit-transform: none;
    transform: none;
    opacity: 1;
  }
}
.rotateIn {
  -webkit-animation-name: rotateIn;
  animation-name: rotateIn;
}

@-webkit-keyframes rotateInDownLeft {
  from {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate3d(0, 0, 1, -45deg);
    transform: rotate3d(0, 0, 1, -45deg);
    opacity: 0;
  }
  to {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: none;
    transform: none;
    opacity: 1;
  }
}
@keyframes rotateInDownLeft {
  from {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate3d(0, 0, 1, -45deg);
    transform: rotate3d(0, 0, 1, -45deg);
    opacity: 0;
  }
  to {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: none;
    transform: none;
    opacity: 1;
  }
}
.rotateInDownLeft {
  -webkit-animation-name: rotateInDownLeft;
  animation-name: rotateInDownLeft;
}

@-webkit-keyframes rotateInDownRight {
  from {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate3d(0, 0, 1, 45deg);
    transform: rotate3d(0, 0, 1, 45deg);
    opacity: 0;
  }
  to {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: none;
    transform: none;
    opacity: 1;
  }
}
@keyframes rotateInDownRight {
  from {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate3d(0, 0, 1, 45deg);
    transform: rotate3d(0, 0, 1, 45deg);
    opacity: 0;
  }
  to {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: none;
    transform: none;
    opacity: 1;
  }
}
.rotateInDownRight {
  -webkit-animation-name: rotateInDownRight;
  animation-name: rotateInDownRight;
}

@-webkit-keyframes rotateInUpLeft {
  from {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate3d(0, 0, 1, 45deg);
    transform: rotate3d(0, 0, 1, 45deg);
    opacity: 0;
  }
  to {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: none;
    transform: none;
    opacity: 1;
  }
}
@keyframes rotateInUpLeft {
  from {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate3d(0, 0, 1, 45deg);
    transform: rotate3d(0, 0, 1, 45deg);
    opacity: 0;
  }
  to {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: none;
    transform: none;
    opacity: 1;
  }
}
.rotateInUpLeft {
  -webkit-animation-name: rotateInUpLeft;
  animation-name: rotateInUpLeft;
}

@-webkit-keyframes rotateInUpRight {
  from {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate3d(0, 0, 1, -90deg);
    transform: rotate3d(0, 0, 1, -90deg);
    opacity: 0;
  }
  to {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: none;
    transform: none;
    opacity: 1;
  }
}
@keyframes rotateInUpRight {
  from {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate3d(0, 0, 1, -90deg);
    transform: rotate3d(0, 0, 1, -90deg);
    opacity: 0;
  }
  to {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: none;
    transform: none;
    opacity: 1;
  }
}
.rotateInUpRight {
  -webkit-animation-name: rotateInUpRight;
  animation-name: rotateInUpRight;
}

@-webkit-keyframes rotateOut {
  from {
    -webkit-transform-origin: center;
    transform-origin: center;
    opacity: 1;
  }
  to {
    -webkit-transform-origin: center;
    transform-origin: center;
    -webkit-transform: rotate3d(0, 0, 1, 200deg);
    transform: rotate3d(0, 0, 1, 200deg);
    opacity: 0;
  }
}
@keyframes rotateOut {
  from {
    -webkit-transform-origin: center;
    transform-origin: center;
    opacity: 1;
  }
  to {
    -webkit-transform-origin: center;
    transform-origin: center;
    -webkit-transform: rotate3d(0, 0, 1, 200deg);
    transform: rotate3d(0, 0, 1, 200deg);
    opacity: 0;
  }
}
.rotateOut {
  -webkit-animation-name: rotateOut;
  animation-name: rotateOut;
}

@-webkit-keyframes rotateOutDownLeft {
  from {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    opacity: 1;
  }
  to {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate3d(0, 0, 1, 45deg);
    transform: rotate3d(0, 0, 1, 45deg);
    opacity: 0;
  }
}
@keyframes rotateOutDownLeft {
  from {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    opacity: 1;
  }
  to {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate3d(0, 0, 1, 45deg);
    transform: rotate3d(0, 0, 1, 45deg);
    opacity: 0;
  }
}
.rotateOutDownLeft {
  -webkit-animation-name: rotateOutDownLeft;
  animation-name: rotateOutDownLeft;
}

@-webkit-keyframes rotateOutDownRight {
  from {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    opacity: 1;
  }
  to {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate3d(0, 0, 1, -45deg);
    transform: rotate3d(0, 0, 1, -45deg);
    opacity: 0;
  }
}
@keyframes rotateOutDownRight {
  from {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    opacity: 1;
  }
  to {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate3d(0, 0, 1, -45deg);
    transform: rotate3d(0, 0, 1, -45deg);
    opacity: 0;
  }
}
.rotateOutDownRight {
  -webkit-animation-name: rotateOutDownRight;
  animation-name: rotateOutDownRight;
}

@-webkit-keyframes rotateOutUpLeft {
  from {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    opacity: 1;
  }
  to {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate3d(0, 0, 1, -45deg);
    transform: rotate3d(0, 0, 1, -45deg);
    opacity: 0;
  }
}
@keyframes rotateOutUpLeft {
  from {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    opacity: 1;
  }
  to {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate3d(0, 0, 1, -45deg);
    transform: rotate3d(0, 0, 1, -45deg);
    opacity: 0;
  }
}
.rotateOutUpLeft {
  -webkit-animation-name: rotateOutUpLeft;
  animation-name: rotateOutUpLeft;
}

@-webkit-keyframes rotateOutUpRight {
  from {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    opacity: 1;
  }
  to {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate3d(0, 0, 1, 90deg);
    transform: rotate3d(0, 0, 1, 90deg);
    opacity: 0;
  }
}
@keyframes rotateOutUpRight {
  from {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    opacity: 1;
  }
  to {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate3d(0, 0, 1, 90deg);
    transform: rotate3d(0, 0, 1, 90deg);
    opacity: 0;
  }
}
.rotateOutUpRight {
  -webkit-animation-name: rotateOutUpRight;
  animation-name: rotateOutUpRight;
}

@-webkit-keyframes hinge {
  0% {
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
  }
  20%, 60% {
    -webkit-transform: rotate3d(0, 0, 1, 80deg);
    transform: rotate3d(0, 0, 1, 80deg);
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
  }
  40%, 80% {
    -webkit-transform: rotate3d(0, 0, 1, 60deg);
    transform: rotate3d(0, 0, 1, 60deg);
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
    opacity: 1;
  }
  to {
    -webkit-transform: translate3d(0, 700px, 0);
    transform: translate3d(0, 700px, 0);
    opacity: 0;
  }
}
@keyframes hinge {
  0% {
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
  }
  20%, 60% {
    -webkit-transform: rotate3d(0, 0, 1, 80deg);
    transform: rotate3d(0, 0, 1, 80deg);
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
  }
  40%, 80% {
    -webkit-transform: rotate3d(0, 0, 1, 60deg);
    transform: rotate3d(0, 0, 1, 60deg);
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
    opacity: 1;
  }
  to {
    -webkit-transform: translate3d(0, 700px, 0);
    transform: translate3d(0, 700px, 0);
    opacity: 0;
  }
}
.hinge {
  -webkit-animation-name: hinge;
  animation-name: hinge;
}

/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */
@-webkit-keyframes rollIn {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0) rotate3d(0, 0, 1, -120deg);
    transform: translate3d(-100%, 0, 0) rotate3d(0, 0, 1, -120deg);
  }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}
@keyframes rollIn {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0) rotate3d(0, 0, 1, -120deg);
    transform: translate3d(-100%, 0, 0) rotate3d(0, 0, 1, -120deg);
  }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}
.rollIn {
  -webkit-animation-name: rollIn;
  animation-name: rollIn;
}

/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */
@-webkit-keyframes rollOut {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0) rotate3d(0, 0, 1, 120deg);
    transform: translate3d(100%, 0, 0) rotate3d(0, 0, 1, 120deg);
  }
}
@keyframes rollOut {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0) rotate3d(0, 0, 1, 120deg);
    transform: translate3d(100%, 0, 0) rotate3d(0, 0, 1, 120deg);
  }
}
.rollOut {
  -webkit-animation-name: rollOut;
  animation-name: rollOut;
}

@-webkit-keyframes zoomIn {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3);
  }
  50% {
    opacity: 1;
  }
}
@keyframes zoomIn {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3);
  }
  50% {
    opacity: 1;
  }
}
.zoomIn {
  -webkit-animation-name: zoomIn;
  animation-name: zoomIn;
}

@-webkit-keyframes zoomInDown {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }
  60% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}
@keyframes zoomInDown {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }
  60% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}
.zoomInDown {
  -webkit-animation-name: zoomInDown;
  animation-name: zoomInDown;
}

@-webkit-keyframes zoomInLeft {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }
  60% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}
@keyframes zoomInLeft {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }
  60% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}
.zoomInLeft {
  -webkit-animation-name: zoomInLeft;
  animation-name: zoomInLeft;
}

@-webkit-keyframes zoomInRight {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }
  60% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}
@keyframes zoomInRight {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }
  60% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}
.zoomInRight {
  -webkit-animation-name: zoomInRight;
  animation-name: zoomInRight;
}

@-webkit-keyframes zoomInUp {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }
  60% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}
@keyframes zoomInUp {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }
  60% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}
.zoomInUp {
  -webkit-animation-name: zoomInUp;
  animation-name: zoomInUp;
}

@-webkit-keyframes zoomOut {
  from {
    opacity: 1;
  }
  50% {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3);
  }
  to {
    opacity: 0;
  }
}
@keyframes zoomOut {
  from {
    opacity: 1;
  }
  50% {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3);
  }
  to {
    opacity: 0;
  }
}
.zoomOut {
  -webkit-animation-name: zoomOut;
  animation-name: zoomOut;
}

@-webkit-keyframes zoomOutDown {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }
  to {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 2000px, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 2000px, 0);
    -webkit-transform-origin: center bottom;
    transform-origin: center bottom;
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}
@keyframes zoomOutDown {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }
  to {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 2000px, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 2000px, 0);
    -webkit-transform-origin: center bottom;
    transform-origin: center bottom;
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}
.zoomOutDown {
  -webkit-animation-name: zoomOutDown;
  animation-name: zoomOutDown;
}

@-webkit-keyframes zoomOutLeft {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0);
  }
  to {
    opacity: 0;
    -webkit-transform: scale(0.1) translate3d(-2000px, 0, 0);
    transform: scale(0.1) translate3d(-2000px, 0, 0);
    -webkit-transform-origin: left center;
    transform-origin: left center;
  }
}
@keyframes zoomOutLeft {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0);
  }
  to {
    opacity: 0;
    -webkit-transform: scale(0.1) translate3d(-2000px, 0, 0);
    transform: scale(0.1) translate3d(-2000px, 0, 0);
    -webkit-transform-origin: left center;
    transform-origin: left center;
  }
}
.zoomOutLeft {
  -webkit-animation-name: zoomOutLeft;
  animation-name: zoomOutLeft;
}

@-webkit-keyframes zoomOutRight {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0);
  }
  to {
    opacity: 0;
    -webkit-transform: scale(0.1) translate3d(2000px, 0, 0);
    transform: scale(0.1) translate3d(2000px, 0, 0);
    -webkit-transform-origin: right center;
    transform-origin: right center;
  }
}
@keyframes zoomOutRight {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0);
  }
  to {
    opacity: 0;
    -webkit-transform: scale(0.1) translate3d(2000px, 0, 0);
    transform: scale(0.1) translate3d(2000px, 0, 0);
    -webkit-transform-origin: right center;
    transform-origin: right center;
  }
}
.zoomOutRight {
  -webkit-animation-name: zoomOutRight;
  animation-name: zoomOutRight;
}

@-webkit-keyframes zoomOutUp {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }
  to {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -2000px, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -2000px, 0);
    -webkit-transform-origin: center bottom;
    transform-origin: center bottom;
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}
@keyframes zoomOutUp {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }
  to {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -2000px, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -2000px, 0);
    -webkit-transform-origin: center bottom;
    transform-origin: center bottom;
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}
.zoomOutUp {
  -webkit-animation-name: zoomOutUp;
  animation-name: zoomOutUp;
}

@-webkit-keyframes slideInDown {
  from {
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
    visibility: visible;
  }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
@keyframes slideInDown {
  from {
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
    visibility: visible;
  }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
.slideInDown {
  -webkit-animation-name: slideInDown;
  animation-name: slideInDown;
}

@-webkit-keyframes slideInLeft {
  from {
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
    visibility: visible;
  }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
@keyframes slideInLeft {
  from {
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
    visibility: visible;
  }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
.slideInLeft {
  -webkit-animation-name: slideInLeft;
  animation-name: slideInLeft;
}

@-webkit-keyframes slideInRight {
  from {
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
    visibility: visible;
  }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
@keyframes slideInRight {
  from {
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
    visibility: visible;
  }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
.slideInRight {
  -webkit-animation-name: slideInRight;
  animation-name: slideInRight;
}

@-webkit-keyframes slideInUp {
  from {
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
    visibility: visible;
  }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
@keyframes slideInUp {
  from {
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
    visibility: visible;
  }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
.slideInUp {
  -webkit-animation-name: slideInUp;
  animation-name: slideInUp;
}

@-webkit-keyframes slideOutDown {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  to {
    visibility: hidden;
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
  }
}
@keyframes slideOutDown {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  to {
    visibility: hidden;
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
  }
}
.slideOutDown {
  -webkit-animation-name: slideOutDown;
  animation-name: slideOutDown;
}

@-webkit-keyframes slideOutLeft {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  to {
    visibility: hidden;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
  }
}
@keyframes slideOutLeft {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  to {
    visibility: hidden;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
  }
}
.slideOutLeft {
  -webkit-animation-name: slideOutLeft;
  animation-name: slideOutLeft;
}

@-webkit-keyframes slideOutRight {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  to {
    visibility: hidden;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
  }
}
@keyframes slideOutRight {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  to {
    visibility: hidden;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
  }
}
.slideOutRight {
  -webkit-animation-name: slideOutRight;
  animation-name: slideOutRight;
}

@-webkit-keyframes slideOutUp {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  to {
    visibility: hidden;
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
  }
}
@keyframes slideOutUp {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  to {
    visibility: hidden;
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
  }
}
.slideOutUp {
  -webkit-animation-name: slideOutUp;
  animation-name: slideOutUp;
}

/* ============ ELEMENTS ============ */
.accordions {
  width: 100%;
  display: block;
  margin: 0 0 40px;
  padding: 0;
}
.accordions__tab {
  border: 0.1rem solid #1B3765;
  background: white;
  width: 100%;
  display: block;
  margin: 0 0 20px 0;
  padding: 0;
}
.accordions__tab-toggle {
  position: relative;
  width: 100%;
  display: block;
  margin: 0;
  padding: 20px 50px 20px 20px;
  font-size: 20px;
  line-height: 20px;
  font-weight: 900;
  cursor: pointer;
}
.accordions__tab-toggle i {
  color: #1B3765;
  position: absolute;
  width: auto;
  display: block;
  top: calc(50% - 10px);
  right: 20px;
  font-size: 20px;
  line-height: 20px;
  transition: all 0.3s ease 0s;
}
.accordions__tab-content {
  display: none;
  margin: 0;
  padding: 0 20px;
  overflow: hidden;
  width: 100%;
}
.accordions__tab-content p {
  font-weight: 500;
  margin: 0 0 2rem;
}
.accordions__tab.active .accordions__tab-toggle i {
  transform: rotate(180deg);
}

.comparison-slider {
  width: 100%;
  display: block;
  margin: 0 0 20px 0;
  padding: 0;
}
.comparison-slider__header {
  width: 100%;
  display: block;
  margin: 0;
  padding: 0;
}
.comparison-slider__slider {
  position: relative;
  width: 100%;
  display: block;
  margin: 0;
  padding: 0;
  z-index: 0;
}
.comparison-slider__slider > img {
  position: relative;
  z-index: 0;
}
.comparison-slider__slider-after {
  position: absolute;
  width: 50%;
  height: 100%;
  display: block;
  top: 0;
  right: 0;
  overflow: hidden;
  z-index: 1;
}
.comparison-slider__slider-after img {
  max-width: initial;
  position: absolute;
  top: 0;
  right: 0;
}
.comparison-slider .divider {
  position: absolute;
  width: 2px;
  height: 100%;
  top: 0;
  left: calc(50% - 1px);
  background: white;
  user-select: none;
  z-index: 2;
}
.comparison-slider .divider:after {
  content: "";
  position: absolute;
  width: 20px;
  height: 20px;
  top: calc(50% - 10px);
  left: -9px;
  background: white;
  transform: rotate(45deg);
  cursor: pointer;
}

@media only screen and (min-width: 768px) {
  .swCalEvents {
    padding: 50px 100px;
  }
}

.CalendarEventsDetail__eventCalendarFront {
  display: flex !important;
  flex-direction: column;
  flex-wrap: wrap;
  margin: 0 auto 30px !important;
  max-width: 500px;
  gap: 20px;
}
@media only screen and (min-width: 1024px) {
  .CalendarEventsDetail__eventCalendarFront {
    flex-direction: row;
    max-width: 1200px;
    padding: 50px 50px 0;
  }
}

.CalendarMonthFilter__button:hover {
  background: #50BAE8 !important;
}

.CalendarMenuCenter {
  border: 2px solid #1B3765;
  display: flex !important;
  margin: 0 auto;
  max-width: 500px;
  width: 100%;
}
.CalendarMenuCenter > *:first-child {
  border-bottom-right-radius: 0;
  border-top-right-radius: 0;
  margin: 0 !important;
  padding: 10px !important;
  width: 50%;
}
.CalendarMenuCenter > *:last-child {
  border-bottom-left-radius: 0;
  border-top-left-radius: 0;
  margin: 0 !important;
  padding: 10px !important;
  width: 50%;
}
.CalendarMenuCenter a {
  border: 0;
  color: #1B3765 !important;
  font-size: 1.2rem;
  font-weight: 600;
  padding: 5px 20px;
  text-decoration: none;
  transition: color 0.3s;
  width: auto;
}
@media only screen and (min-width: 1024px) {
  .CalendarMenuCenter a {
    font-size: 1.6rem;
    min-width: 15rem;
  }
}
.CalendarMenuCenter a:hover {
  text-decoration: none;
}
.CalendarMenuCenter a.CalendarMenu__currentItem {
  background-color: #1B3765;
  border: none !important;
  color: #fff !important;
  cursor: default;
  text-decoration: none;
}
.CalendarMenuCenter a.CalendarMenu__currentItem:hover {
  color: white !important;
}

.CalendarEventsDetail__eventCalendarFront {
  position: relative !important;
}

.CalendarMenu {
  flex: none !important;
  margin: 0 !important;
}

.CalendarMonthFilter {
  flex: 1;
  flex-direction: row !important;
  gap: 0px;
  padding: 0 !important;
}
.CalendarMonthFilter__dateRange {
  display: none !important;
}

.CalendarEventsDetail__eventCalendarFront input[type=text] {
  background-color: white !important;
  border-top: transparent !important;
  border-left: transparent !important;
  border-right: transparent !important;
  border-bottom: 0.1rem solid #1B3765 !important;
  border-radius: 0px !important;
  color: #1B3765 !important;
  font-size: 1.4rem !important;
  font-family: "Kdam Thmor Pro", sans-serif !important;
  height: 44px !important;
  line-height: 30px !important;
  padding: 0 10px !important;
}
@media only screen and (min-width: 1024px) {
  .CalendarEventsDetail__eventCalendarFront input[type=text] {
    font-size: 1.6rem !important;
  }
}
.CalendarEventsDetail__eventCalendarFront input[type=text]::placeholder {
  color: #1B3765 !important;
  opacity: 1 !important;
}
.CalendarEventsDetail__eventCalendarFront input[type=text]:focus::placeholder {
  color: #1B3765 !important;
  opacity: 0.5 !important;
}
.CalendarEventsDetail__eventCalendarFront input[type=text]:focus, .CalendarEventsDetail__eventCalendarFront input[type=text]:active, .CalendarEventsDetail__eventCalendarFront input[type=text]:hover {
  border-color: #1B3765 !important;
  box-shadow: none !important;
  outline: none !important;
}

.event-module .CalendarMonthFilter .react-selectize-control,
.form-control {
  background-color: #EDEFF3 !important;
  border: 0.1rem solid transparent !important;
  border-radius: 0px !important;
  color: #1B3765 !important;
  font-size: 1.4rem !important;
  font-family: "Kdam Thmor Pro", sans-serif !important;
  height: 44px !important;
  line-height: 30px !important;
  padding: 0 10px !important;
}
@media only screen and (min-width: 1024px) {
  .event-module .CalendarMonthFilter .react-selectize-control,
  .form-control {
    font-size: 1.6rem !important;
  }
}
.event-module .CalendarMonthFilter .react-selectize-control::placeholder,
.form-control::placeholder {
  color: #1B3765 !important;
  opacity: 1 !important;
}
.event-module .CalendarMonthFilter .react-selectize-control:focus::placeholder,
.form-control:focus::placeholder {
  color: #1B3765 !important;
  opacity: 0.5 !important;
}
.event-module .CalendarMonthFilter .react-selectize-control:focus, .event-module .CalendarMonthFilter .react-selectize-control:active, .event-module .CalendarMonthFilter .react-selectize-control:hover,
.form-control:focus,
.form-control:active,
.form-control:hover {
  border-color: #1B3765 !important;
  box-shadow: none !important;
  outline: none !important;
}

.CalendarMonthFilter__date {
  margin-right: 10px !important;
}

@media only screen and (min-width: 1024px) {
  div[class^=CalendarMonthFilter__endDate],
  div[class*=" CalendarMonthFilter__endDate"] {
    margin-right: 20px !important;
  }
}
@media only screen and (min-width: 1440px) {
  div[class^=CalendarMonthFilter__endDate],
  div[class*=" CalendarMonthFilter__endDate"] {
    margin-right: var(--gap) !important;
  }
}

.CalendarMonthFilter > .site-tags-editor {
  display: none !important;
}

.react-selectize-toggle-button-container {
  height: 30px !important;
  padding-right: 0 !important;
  width: auto !important;
}

.CalendarMonthFilter__dateSeparator {
  align-items: center !important;
  display: flex !important;
  justify-content: center !important;
  line-height: 1.2 !important;
  margin-left: 2rem;
  white-space: nowrap !important;
}

.CalendarMonthFilter > input.CalendarMonthFilter__search {
  background: #EDEFF3 !important;
  border-bottom: 1px solid #1B3765 !important;
  border-radius: 10px 0 0 0 !important;
  font-family: "Lato", sans-serif;
  font-weight: 100;
  font-style: italic;
  height: 100% !important;
  min-height: 50px !important;
  overflow: hidden;
  padding: 0 20px !important;
}

.CalendarEventsDetail__eventCalendarFront input[type=text]:focus,
.CalendarEventsDetail__eventCalendarFront input[type=text]:active,
.CalendarEventsDetail__eventCalendarFront input[type=text]:hover {
  border-color: #1B3765 !important;
}

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

.CalendarMonthFilter__button {
  background-color: #1B3765 !important;
  border: 0 !important;
  border-radius: 0 10px 10px 0 !important;
  color: #fff !important;
  flex: unset !important;
  font-size: 1.8rem !important;
  font-weight: 600 !important;
  letter-spacing: 0 !important;
  max-width: 100px;
  height: 50px !important;
  line-height: 30px !important;
  padding: 0 15px !important;
  text-transform: capitalize !important;
  transition: background-color 0.3s !important;
  white-space: nowrap !important;
}
@media only screen and (min-width: 1024px) {
  .CalendarMonthFilter__button {
    height: 100% !important;
  }
}
.CalendarMonthFilter__button:hover {
  background-color: #1B3765 !important;
}

@media only screen and (min-width: 1024px) {
  .CalendarMonthFilter__dateRange input[type=date] {
    max-width: 16rem !important;
    width: 100% !important;
  }
}

.CalendarMonthFilter__dateRange input[type=date]::-webkit-inner-spin-button,
.CalendarMonthFilter__dateRange input[type=date]::-webkit-calendar-picker-indicator {
  appearance: none;
  display: none;
}

.CalendarMonthFilter > .site-tags-editor,
.CalendarMonthFilter__date,
.CalendarMonthFilter > input,
.CalendarMonthFilter > input.CalendarMonthFilter__search {
  margin: 0 !important;
}

.event-cards {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
  gap: 40px;
  flex-wrap: wrap;
}
.event-cards .event-card {
  padding-right: 0;
  width: 100%;
}
.event-cards .event-card__wrapper {
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.075);
  border-radius: 0 0 10px 10px;
  overflow: hidden;
}
.event-cards .event-card__content {
  background: white;
  padding: 40px;
}
.event-cards .event-card h4 {
  margin: 0 0 10px;
}
.event-cards .event-card__image {
  aspect-ratio: 16/9;
  display: flex;
}
.event-cards .event-card__text h4 {
  margin: 0 0 13px;
}
.event-cards .event-card__tags {
  margin: 10px 0 0 0;
}
.event-cards .event-card__tags a {
  font-weight: 600;
  text-transform: uppercase;
}
.event-cards .event-card__info__header {
  background: white;
}
.event-cards .event-card__info__header h3 {
  margin: 0 0 10px;
  font-size: 28px;
}
.event-cards .event-card__photo {
  aspect-ratio: 16/9;
}
.event-cards .event-card__photo img {
  height: 100%;
  object-fit: cover;
  width: 100%;
}
.event-cards .event-card__text {
  padding: 30px;
}

.tns-visually-hidden {
  display: none;
}

.events-slider {
  overflow: hidden;
  margin: 0;
  padding: 30px 0;
}
@media only screen and (min-width: 768px) {
  .events-slider {
    margin: 30px 0;
    padding: 0;
  }
}
.events-slider .tns-inner {
  overflow: visible;
}
.events-slider .tns-ovh {
  overflow: visible;
}
.events-slider .tns-outer {
  border-radius: 10px;
  overflow: hidden;
}
@media only screen and (min-width: 768px) {
  .events-slider .tns-outer {
    border-radius: 0;
    overflow: visible;
    max-width: 500px;
  }
}
@media screen and (min-width: 2000px) {
  .events-slider .tns-outer {
    max-width: 720px;
  }
}
.events-slider .event-cards {
  display: flex;
  flex-wrap: nowrap;
  gap: 5px;
}
@media only screen and (min-width: 768px) {
  .events-slider .event-cards {
    gap: 10px;
  }
}
.events-slider .event-cards .event-card {
  max-width: 100%;
}
@media only screen and (min-width: 768px) {
  .events-slider .event-cards .event-card {
    scale: 0.95;
    transition: 0.3s;
  }
}
@media only screen and (min-width: 768px) {
  .events-slider .event-cards .event-card__excerpt {
    display: none;
  }
}
.events-slider .event-cards .event-card__wrapper {
  border-radius: 10px;
  overflow: hidden;
}
@media only screen and (min-width: 768px) {
  .events-slider .event-cards .tns-slide-active {
    scale: 1;
    transition: 0.3s;
  }
  .events-slider .event-cards .tns-slide-active .event-card__excerpt {
    display: inline-block;
  }
}
.events-slider #tns1-iw {
  margin: 0;
}
.events-slider.home-page h2 {
  color: white;
}
.events-slider.home-page .tns-controls svg path, .events-slider.home-page .tns-controls svg circle, .events-slider.home-page .tns-controls svg ellipse {
  stroke: white;
}
.events-slider > header {
  align-items: center;
  display: flex;
  justify-content: space-between;
  margin: 0 0 20px;
  padding: 30px 0 0 0;
}
@media only screen and (min-width: 768px) {
  .events-slider > header {
    padding: 30px 50px 0 50px;
  }
}
.events-slider .eventsSliderControls {
  display: flex;
  gap: 10px;
  justify-content: flex-start;
  margin: 0 0 0 0;
}
@media only screen and (min-width: 768px) {
  .events-slider .eventsSliderControls {
    gap: 20px;
    justify-content: flex-end;
    padding: 0 50px 0 0;
    width: 100%;
  }
}
.events-slider .eventsSliderControls button {
  background: none;
  border: none;
  cursor: pointer;
}
.events-slider .eventsSliderControls button svg {
  width: 45px;
}
@media only screen and (min-width: 768px) {
  .events-slider .eventsSliderControls button svg {
    width: 60px;
  }
}

.events-slider-footer {
  align-items: center;
  display: flex;
  justify-content: space-between;
  margin: 30px 0 0 0;
}
@media only screen and (min-width: 768px) {
  .events-slider-footer {
    position: absolute;
    bottom: 40px;
    right: 0;
  }
}
@media only screen and (min-width: 1024px) {
  .events-slider-footer {
    bottom: 0;
  }
}
.events-slider-footer a.button, .events-slider-footer .dcc-image-row a, .dcc-image-row .events-slider-footer a {
  margin: 0;
}

.CalendarMonth__header_label {
  background-color: #1B3765 !important;
  font-weight: 500 !important;
  font-family: "Kdam Thmor Pro", sans-serif;
  font-size: 1.55rem !important;
}
.CalendarMonth .CalendarGridDay--current-month > .CalendarGridDay__header {
  background-color: white !important;
  border-bottom: none !important;
  color: #0F4C26 !important;
  font-size: 16px;
  padding: 1rem 1.5rem;
  text-align: right;
}

.CalendarMonthNavigation__action {
  color: #0F4C26 !important;
  font-weight: 600;
  font-size: 2rem;
}
.CalendarMonthNavigation__header h2 {
  color: #0F4C26;
  font-size: 3rem !important;
  font-family: "Kdam Thmor Pro", sans-serif;
}

.CalendarGridDay__header {
  font-size: 16px;
  padding: 1rem 1.5rem !important;
  text-align: right;
}

.CalendarGridDayEvent a {
  color: #4B8038;
  font-size: 17px;
  line-height: 1.4;
}

.popover {
  padding: 10px !important;
}

.CalendarGridDayEventPopover h3 {
  font-size: 2rem !important;
  line-height: 25px !important;
}
.CalendarGridDayEventPopover__time {
  font-size: 1.5rem !important;
  line-height: 1.3 !important;
}
.CalendarGridDayEventPopover__content--text {
  display: none;
}
.CalendarGridDayEventPopover__content--image {
  aspect-ratio: 16/9;
  height: auto !important;
  flex: auto !important;
  max-height: 100% !important;
  max-width: 100% !important;
  width: 100% !important;
}
.CalendarGridDayEventPopover__content--image img {
  height: 100%;
  max-height: 100% !important;
  max-width: 100% !important;
  object-fit: cover;
  width: 100%;
}

#exhibits-toggle {
  border-bottom: 1px solid #1B3765;
  display: flex;
  justify-content: space-around;
  margin: 40px 0;
}
#exhibits-toggle > div {
  cursor: pointer;
  font: 500 24px/24px "Kdam Thmor Pro", sans-serif;
  padding: 0 0 20px;
  position: relative;
  text-align: center;
}
@media only screen and (min-width: 768px) {
  #exhibits-toggle > div {
    font: 500 36px/36px "Kdam Thmor Pro", sans-serif;
  }
}
#exhibits-toggle > div.active:before {
  background: #50BAE8;
  content: "";
  bottom: -4px;
  height: 8px;
  left: 50%;
  position: absolute;
  transform: translate(-50%, 0);
  width: 100%;
}

.exhibits-list {
  display: flex;
  flex-wrap: wrap;
  padding: 0px;
  margin: 0 auto;
  max-width: 1500px;
}
@media only screen and (min-width: 768px) {
  .exhibits-list {
    padding: 0 100px;
  }
}
.exhibits-list > div {
  column-gap: 50px;
  display: none;
  flex-wrap: wrap;
  position: relative;
  width: 100%;
}
.exhibits-list > div.active {
  display: flex;
}
.exhibits-list__item {
  display: flex;
  justify-content: flex-start;
  width: calc(100% - 25px);
}
@media screen and (max-width: 768px) {
  .exhibits-list__item:nth-of-type(2n + 2) .exhibits-list__item-wrapper {
    clip-path: url(#exhibit-clip-reverse);
  }
  .exhibits-list__item:nth-of-type(1n + 2) {
    margin: -12% 0 0 0;
  }
  .exhibits-list__item:nth-of-type(odd) img {
    left: -25px;
  }
  .exhibits-list__item:nth-of-type(even) img {
    right: -25px;
  }
}
@media only screen and (min-width: 768px) {
  .exhibits-list__item {
    width: calc(50% - 25px);
  }
  .exhibits-list__item:nth-of-type(4n + 3), .exhibits-list__item:nth-of-type(4n + 4) {
    justify-content: flex-end;
  }
  .exhibits-list__item:nth-of-type(4n + 3) .exhibits-list__item-wrapper, .exhibits-list__item:nth-of-type(4n + 4) .exhibits-list__item-wrapper {
    clip-path: url(#exhibit-clip-reverse);
  }
  .exhibits-list__item:nth-of-type(4n + 1) .exhibits-list__item-wrapper {
    left: -50px;
  }
  .exhibits-list__item:nth-of-type(4n + 1) .exhibits-list__item-wrapper img {
    left: -25px;
  }
  .exhibits-list__item:nth-of-type(4n + 2) img {
    left: -25px;
  }
  .exhibits-list__item:nth-of-type(4n + 4) .exhibits-list__item-wrapper {
    right: -50px;
  }
  .exhibits-list__item:nth-of-type(4n + 4) .exhibits-list__item-wrapper img {
    right: -25px;
  }
  .exhibits-list__item:nth-of-type(4n + 3) img {
    left: auto;
    right: -25px;
  }
  .exhibits-list__item:nth-of-type(1n + 3) {
    margin: -14% 0 0 0;
  }
}
.exhibits-list__item-wrapper {
  clip-path: url(#exhibit-clip);
  height: 0;
  overflow: hidden;
  padding: 0 0 100%;
  position: relative;
  top: 0;
  transition: 0.3s;
  widtH: 100%;
}
@media only screen and (min-width: 768px) {
  .exhibits-list__item-wrapper {
    padding: 0 0 70%;
    width: 70%;
  }
}
.exhibits-list__item-wrapper:hover {
  cursor: pointer;
}
.exhibits-list__item-wrapper:hover img {
  scale: 1.4;
}
.exhibits-list__item-wrapper img {
  position: relative;
  scale: 1.2;
  transition: 0.3s;
}

.slide-container {
  clip-path: url(#exhibits-slide-clip);
  display: none;
  width: 100%;
  align-items: stretch;
  margin: 0 0 100px;
  padding: 0px;
  position: relative;
  justify-content: center;
  z-index: 1;
}
@media only screen and (min-width: 768px) {
  .slide-container {
    margin: 0;
  }
}
.slide-container.active {
  display: flex;
}
.slide-container__slides-content {
  justify-content: center;
  display: flex;
  flex-direction: column;
  order: 1;
}
@media only screen and (min-width: 768px) {
  .slide-container__slides-content {
    order: 0;
  }
}
.slide-container__images {
  order: 0;
}
@media only screen and (min-width: 768px) {
  .slide-container__images {
    order: 1;
  }
}
.slide-container__slides-item {
  background-image: linear-gradient(#1B3765, #055593);
  display: none;
  flex-direction: column;
  gap: 40px;
  padding: 60px 30px 60px;
  position: relative;
}
@media only screen and (min-width: 768px) {
  .slide-container__slides-item {
    justify-content: center;
  }
}
.slide-container__slides-item.active {
  display: flex;
}
.slide-container__slides-item .close-slides {
  cursor: pointer;
  position: absolute;
  right: 20px;
  top: 20px;
}
.slide-container__slides-container {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
}
@media only screen and (min-width: 768px) {
  .slide-container__slides-container {
    flex-wrap: nowrap;
  }
}
.slide-container__slides-container i {
  color: white;
}
.slide-container__slides-container .image-carousel.themed .carousel-controls .carousel-indices .carousel-index {
  border: 0 solid #50BAE8;
}
.slide-container__slides-container > div {
  flex: 1 1 auto;
  width: 100%;
}
@media only screen and (min-width: 768px) {
  .slide-container__slides-container > div {
    width: 50%;
  }
}
.slide-container h1, .slide-container h2, .slide-container h3, .slide-container h4, .slide-container h5, .slide-container h6, .slide-container p {
  color: white;
}
.slide-container__footer {
  align-items: center;
  color: white;
  display: flex;
  justify-content: space-between;
  margin: 0;
  width: 100%;
}
@media only screen and (min-width: 768px) {
  .slide-container__footer {
    margin: 30px 0 0 0;
  }
}
.slide-container__footer > div {
  align-items: center;
  cursor: pointer;
  display: flex;
  gap: 10px;
  width: 100%;
}
.slide-container__footer .next-toggle {
  justify-content: flex-end;
}

.exhibits-slider {
  position: relative;
  overflow: hidden;
}
.exhibits-slider header {
  align-items: center;
  display: flex;
  justify-content: center;
  padding: 50px 30px;
  position: relative;
  z-index: 1;
}
.exhibits-slider header h2 {
  color: white;
  text-align: center;
}
.exhibits-slider__background {
  background: #1B3765;
  clip-path: url(#exhibit-section-clip);
  height: calc(100% - 150px);
  position: absolute;
  top: 0;
  width: 100%;
  z-index: 0;
}
.exhibits-slider__wrapper {
  display: flex;
  z-index: 1;
}
.exhibits-slider__wrapper h4 {
  margin: 30px 0 0 0;
  text-align: center;
}
.exhibits-slider__wrapper img {
  position: relative;
  scale: 1.2;
  transition: 0.3s;
  width: 100%;
}
.exhibits-slider .tns-inner {
  margin: 0 auto !important;
  max-width: 500px;
}
@media only screen and (min-width: 768px) {
  .exhibits-slider .tns-inner {
    max-width: 768px;
  }
}
@media only screen and (min-width: 1024px) {
  .exhibits-slider .tns-inner {
    max-width: 950px;
  }
}
@media only screen and (min-width: 1440px) {
  .exhibits-slider .tns-inner {
    max-width: 1200px;
  }
}
.exhibits-slider .tns-outer {
  padding: 0 30px;
  position: relative;
  z-index: 1;
}
@media only screen and (min-width: 768px) {
  .exhibits-slider .tns-outer {
    padding: 0 100px;
  }
}
.exhibits-slider__item:nth-of-type(even) .exhibits-slider__item-wrapper {
  clip-path: url(#exhibit-slider-clip);
  display: flex;
}
.exhibits-slider__item:nth-of-type(even) .exhibits-slider__item-wrapper img {
  top: -25px;
}
.exhibits-slider__item:nth-of-type(odd) .exhibits-slider__item-wrapper {
  clip-path: url(#exhibit-slider-clip-reverse);
  display: flex;
}
.exhibits-slider__item:nth-of-type(odd) .exhibits-slider__item-wrapper img {
  bottom: -25px;
}
.exhibits-slider__item:hover img {
  scale: 1.4;
}
.exhibits-slider .tns-controls {
  display: flex;
  justify-content: space-between;
  position: absolute;
  top: 50%;
  transform: translate(0, -50%);
  width: calc(100% - 30px);
}
@media only screen and (min-width: 500px) {
  .exhibits-slider .tns-controls {
    width: 450px;
  }
}
@media only screen and (min-width: 768px) {
  .exhibits-slider .tns-controls {
    width: calc(100% - 100px);
  }
}
.exhibits-slider .tns-controls button {
  background: none;
  border: none;
  cursor: pointer;
}
.exhibits-slider .tns-controls button svg {
  height: 42px;
  width: 42px;
}
@media only screen and (min-width: 768px) {
  .exhibits-slider .tns-controls button svg {
    height: 62px;
    width: 62px;
  }
}
.exhibits-slider .tns-controls button svg path, .exhibits-slider .tns-controls button svg circle {
  stroke: white;
}

.image-carousel {
  overflow: hidden;
  position: relative;
  width: 100%;
  display: block;
  margin: 0 0 20px 0;
  padding: 0;
}
.image-carousel__slides {
  width: 100%;
  display: block;
  margin: 0 0 20px 0;
  padding: 0;
  white-space: nowrap;
  overflow: hidden;
}
.image-carousel__slides-item {
  width: 100%;
  display: inline-block;
  margin: 0;
  padding: 66.666667% 0 0 0;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  vertical-align: top;
}
.image-carousel .carousel-controls {
  width: 100%;
  display: flex;
  margin: 0;
  padding: 0;
}
.image-carousel .carousel-controls .carousel-indices {
  width: 100%;
  display: flex;
  margin: 0;
  padding: 0;
  text-align: center;
  vertical-align: top;
}
.image-carousel .carousel-controls .carousel-indices .carousel-index {
  aspect-ratio: 1;
  max-width: 100px;
  width: 100%;
  display: inline-block;
  margin: 0 5px;
  padding: 0;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  transition: all 0.3s ease 0s;
  cursor: pointer;
  position: relative;
}
.image-carousel .carousel-controls .carousel-indices .carousel-index:after {
  background: #57AE47;
  height: 100%;
  content: "";
  opacity: 0;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
  z-index: 1;
}
.image-carousel .carousel-controls .carousel-indices .carousel-index.active:after {
  opacity: 0.7;
}

.image-gallery {
  width: calc(100% + 20px);
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  margin: 0 -10px;
  padding: 0;
}
.image-gallery__item {
  width: calc(100% - 20px);
  display: inline-block;
  flex: 0 1 auto;
  margin: 0 10px 20px 10px;
  padding: calc((100% - 20px) * 0.666667) 0 0 0;
  transition: all 0.3s ease 0s;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  vertical-align: top;
  cursor: pointer;
}
@media (min-width: 840px) {
  .image-gallery.col-span-6 .image-gallery__item {
    width: calc(50% - 20px);
    padding-top: calc((50% - 20px) * 0.666667);
  }
}
@media (min-width: 840px) {
  .image-gallery.col-span-4 .image-gallery__item {
    width: calc(50% - 20px);
    padding-top: calc((50% - 20px) * 0.666667);
  }
}
@media (min-width: 1280px) {
  .image-gallery.col-span-4 .image-gallery__item {
    width: calc(33.333334% - 20px);
    padding-top: calc((33.333334% - 20px) * 0.666667);
  }
}
@media (min-width: 840px) {
  .image-gallery.col-span-3 .image-gallery__item {
    width: calc(50% - 20px);
    padding-top: calc((50% - 20px) * 0.666667);
  }
}
@media (min-width: 1280px) {
  .image-gallery.col-span-3 .image-gallery__item {
    width: calc(25% - 20px);
    padding-top: calc((25% - 20px) * 0.666667);
  }
}
@media (min-width: 840px) {
  .image-gallery.col-span-2 .image-gallery__item {
    width: calc(50% - 20px);
    padding-top: calc((50% - 20px) * 0.666667);
  }
}
@media (min-width: 1280px) {
  .image-gallery.col-span-2 .image-gallery__item {
    width: calc(25% - 20px);
    padding-top: calc((25% - 20px) * 0.666667);
  }
}
@media (min-width: 1440px) {
  .image-gallery.col-span-2 .image-gallery__item {
    width: calc(16.666667% - 20px);
    padding-top: calc((16.666667% - 20px) * 0.666667);
  }
}

.info-cards {
  position: relative;
}
@media only screen and (min-width: 1024px) {
  .info-cards {
    padding: 30px;
  }
}
.info-cards.info-cards-slider .info-cards__wrapper {
  display: flex;
}
.info-cards.info-cards-slider .info-cards__item {
  padding-right: 0 !important;
}
.info-cards.info-cards-slider .info-cards__item-content {
  height: 100%;
  justify-content: center;
  width: 100%;
}
.info-cards__wrapper {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(min(200px, 100%), 1fr));
  width: 100%;
  gap: 40px;
}
.info-cards__item {
  color: white;
  position: relative;
  display: inline-block;
  margin: 0;
  vertical-align: top;
  background: #1B3765;
  border-radius: 10px;
  display: flex;
  justify-content: center;
  aspect-ratio: 1/1;
  align-items: center;
}
.info-cards__item.invert {
  background: #f4f6f8;
  color: #1B3765;
}
.info-cards__item.invert h4, .info-cards__item.invert p {
  color: #1B3765;
}
.info-cards__item-content {
  position: relative;
  width: calc(100% - 15px);
  height: auto;
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  padding: 40px 20px;
  text-align: center;
  z-index: 2;
}
@media only screen and (min-width: 1024px) {
  .info-cards__item-content {
    bottom: 0;
    margin: 0;
  }
}
.info-cards__item-content h4 {
  color: white;
  margin: 0 0 10px;
  padding: 0 20px;
}
.info-cards__item-content p {
  color: white;
  padding: 0 20px;
  overflow: hidden;
  margin: 0;
}
.info-cards .tns-ovh {
  overflow: visible;
}

.infoCardsSliderControls {
  margin: 30px 0 0 0;
  padding: 0 20px;
  position: relative;
  display: flex;
  justify-content: flex-end;
  width: 100%;
}
@media only screen and (min-width: 768px) {
  .infoCardsSliderControls {
    gap: 20px;
    padding: 0;
  }
}
.infoCardsSliderControls button {
  background: none;
  border: none;
  cursor: pointer;
}
.infoCardsSliderControls svg path, .infoCardsSliderControls svg circle {
  stroke: #1B3765;
}
@media only screen and (min-width: 768px) {
  .infoCardsSliderControls svg {
    height: 62px;
    width: 62px;
  }
  .infoCardsSliderControls svg path, .infoCardsSliderControls svg circle {
    stroke-width: 1.3;
  }
}

.page-template-wb-default .info-cards__item, .page-template-wb-home .info-cards__item,
.page-template-wb-full-width .info-cards__item {
  color: white;
  position: relative;
  display: inline-block;
  margin: 0;
  vertical-align: top;
  background: #0F4C26;
  border-radius: 10px;
  display: flex;
  justify-content: center;
  aspect-ratio: 1/1;
  align-items: center;
}
.page-template-wb-default .info-cards__item h4, .page-template-wb-default .info-cards__item p, .page-template-wb-home .info-cards__item h4, .page-template-wb-home .info-cards__item p,
.page-template-wb-full-width .info-cards__item h4,
.page-template-wb-full-width .info-cards__item p {
  color: white;
}
.page-template-wb-default .info-cards__item.invert, .page-template-wb-home .info-cards__item.invert,
.page-template-wb-full-width .info-cards__item.invert {
  background: #f4f6f8;
  color: #0F4C26;
}
.page-template-wb-default .info-cards__item.invert h4, .page-template-wb-default .info-cards__item.invert p, .page-template-wb-home .info-cards__item.invert h4, .page-template-wb-home .info-cards__item.invert p,
.page-template-wb-full-width .info-cards__item.invert h4,
.page-template-wb-full-width .info-cards__item.invert p {
  color: #0F4C26;
}

.location-finder {
  width: 100%;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-between;
  margin: 0 0 20px 0;
  padding: 0;
}
.location-finder__header {
  width: 100%;
  display: block;
  margin: 0;
  padding: 0;
}
.location-finder__content {
  width: 100%;
  display: inline-block;
  margin: 0 0 20px 0;
  padding: 0;
  vertical-align: top;
}
@media (min-width: 840px) {
  .location-finder__content {
    width: calc(50% - 10px);
  }
}
.location-finder__content-search {
  width: 100%;
  display: block;
  margin: 0 0 20px 0;
  padding: 0;
}
.location-finder__content-search h3 {
  margin: 0 0 10px 0;
}
.location-finder__content-search input {
  width: 100%;
}
.location-finder__content-list {
  width: 100%;
  display: block;
  margin: 0;
  padding: 0;
}
.location-finder__content-list__item {
  width: 100%;
  display: block;
  margin: 0 0 20px 0;
  padding: 0 0 19px 0;
  border-bottom: 1px solid #ededed;
  cursor: pointer;
}
.location-finder__content-list__item.hidden {
  display: none;
}
.location-finder__content-list__item h4 {
  margin: 0 0 10px 0;
}
.location-finder__content-list__item p {
  margin: 0;
}
.location-finder__map {
  position: relative;
  width: 100%;
  aspect-ratio: 1/1;
  display: inline-block;
  margin: 0 0 20px 0;
  padding: 0;
  vertical-align: top;
}
@media (min-width: 840px) {
  .location-finder__map {
    width: calc(50% - 10px);
  }
}
.location-finder__map-canvas {
  position: absolute;
  width: 100%;
  height: 100%;
  display: block;
  top: 0;
  left: 0;
  margin: 0;
  padding: 0;
}

.media-gallery {
  width: calc(100% + 20px);
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  margin: 0 -10px;
  padding: 0;
}
.media-gallery__item {
  width: calc(100% - 20px);
  display: inline-block;
  flex: 0 1 auto;
  margin: 0 10px 20px 10px;
  padding: calc((100% - 20px) * 0.666667) 0 0 0;
  transition: all 0.3s ease 0s;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  vertical-align: top;
  cursor: pointer;
}
@media (min-width: 840px) {
  .media-gallery.col-span-6 .media-gallery__item {
    width: calc(50% - 20px);
    padding-top: calc((50% - 20px) * 0.666667);
  }
}
@media (min-width: 840px) {
  .media-gallery.col-span-4 .media-gallery__item {
    width: calc(50% - 20px);
    padding-top: calc((50% - 20px) * 0.666667);
  }
}
@media (min-width: 1280px) {
  .media-gallery.col-span-4 .media-gallery__item {
    width: calc(33.333334% - 20px);
    padding-top: calc((33.333334% - 20px) * 0.666667);
  }
}
@media (min-width: 840px) {
  .media-gallery.col-span-3 .media-gallery__item {
    width: calc(50% - 20px);
    padding-top: calc((50% - 20px) * 0.666667);
  }
}
@media (min-width: 1280px) {
  .media-gallery.col-span-3 .media-gallery__item {
    width: calc(25% - 20px);
    padding-top: calc((25% - 20px) * 0.666667);
  }
}
@media (min-width: 840px) {
  .media-gallery.col-span-2 .media-gallery__item {
    width: calc(50% - 20px);
    padding-top: calc((50% - 20px) * 0.666667);
  }
}
@media (min-width: 1280px) {
  .media-gallery.col-span-2 .media-gallery__item {
    width: calc(25% - 20px);
    padding-top: calc((25% - 20px) * 0.666667);
  }
}
@media (min-width: 1440px) {
  .media-gallery.col-span-2 .media-gallery__item {
    width: calc(16.666667% - 20px);
    padding-top: calc((16.666667% - 20px) * 0.666667);
  }
}

.page-portals {
  position: relative;
}
@media only screen and (min-width: 768px) {
  .page-portals {
    padding: 30px;
  }
}
.page-portals.page-portals-slider .page-portals__wrapper {
  gap: 0px;
}
@media only screen and (min-width: 1024px) {
  .page-portals.page-portals-slider .page-portals__wrapper {
    flex-wrap: nowrap;
    gap: 50px;
  }
}
@media only screen and (min-width: 768px) {
  .page-portals.page-portals-slider .pagePortalsSliderControls {
    display: flex;
    justify-content: flex-end;
  }
}
.page-portals h2 {
  padding: 0 0 10px 15px;
}
.page-portals__wrapper {
  gap: 40px;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  width: 100%;
}
.page-portals .tns-outer {
  overflow: hidden;
  padding: 0 10px !important;
}
@media only screen and (min-width: 768px) {
  .page-portals .tns-outer {
    padding: 0 !important;
  }
}
.page-portals__item {
  position: relative;
  width: calc(100% - 40px);
  display: inline-block;
  flex: 1 auto;
  margin: 0;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  vertical-align: top;
}
@media only screen and (min-width: 768px) {
  .page-portals__item {
    width: calc(50% - 40px);
  }
}
@media only screen and (min-width: 1024px) {
  .page-portals__item {
    width: calc(33.33% - 40px);
  }
}
@keyframes AnimationName {
  0% {
    background-position: 81% 0%;
  }
  50% {
    background-position: 20% 100%;
  }
  100% {
    background-position: 81% 0%;
  }
}
@media only screen and (min-width: 1024px) {
  .page-portals__item:hover .page-portals__item-hidden {
    max-height: 1000px;
  }
}
.page-portals__item:hover .page-portals__item-image:before {
  opacity: 0.75;
}
.page-portals__item-image {
  margin: 0 0 0 15px;
  padding-top: 200px;
  position: relative;
  z-index: 0;
}
.page-portals__item-image:before {
  content: "";
  background: linear-gradient(34deg, #226231, #4b8038, #50bae8, #1b3765);
  background-size: 800% 800%;
  backdrop-filter: blur(10px);
  animation: AnimationName 20s infinite;
  height: 100%;
  opacity: 0;
  position: absolute;
  width: 100%;
  top: 0;
  transition: 0.3s;
  z-index: 1;
}
@media only screen and (min-width: 1024px) {
  .page-portals__item-image {
    margin: 0 0 35px;
    padding-left: 20px;
    padding-top: calc(100% - 40px);
  }
}
.page-portals__item-image img {
  height: 100%;
  object-fit: cover;
  position: absolute;
  top: 0;
  width: 100%;
}
.page-portals__item-content {
  background: #1B3765;
  border-radius: 10px;
  position: relative;
  width: calc(100% - 15px);
  height: auto;
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  margin: -40px 0 0 0;
  padding: 40px 0;
  z-index: 2;
}
@media only screen and (min-width: 1024px) {
  .page-portals__item-content {
    bottom: 0;
    margin: 0;
    position: absolute;
    width: calc(100% - 20px);
  }
}
.page-portals__item-content h3 {
  color: white;
  margin: 0 0 10px;
  padding: 0 40px;
}
.page-portals__item-content p {
  color: white;
  margin: 0 0 20px;
  padding: 0 40px;
  overflow: hidden;
}
.page-portals__item-content span {
  align-items: center;
  background: white;
  color: #055593;
  cursor: pointer;
  display: flex;
  font-weight: 600;
  margin: 0 0 20px;
  padding: 10px 20px;
  position: relative;
  text-transform: uppercase;
  width: fit-content;
}
@media only screen and (min-width: 1024px) {
  .page-portals__item-content span {
    margin: 0;
  }
}
.page-portals__item-content span:hover:after {
  right: -15px;
}
.page-portals__item-content span:after {
  background-image: url("/wp-content/themes/source/assets/icons/ui/arrow-right-white.svg");
  background-repeat: no-repeat;
  background-size: contain;
  content: "";
  height: 15px;
  right: -10px;
  position: relative;
  transition: 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275);
  width: 15px;
}
.page-portals__item-hidden {
  align-items: flex-end;
  display: flex;
  flex-direction: column;
  height: auto;
  overflow: hidden;
  position: relative;
  transition: 0.2s;
}
@media only screen and (min-width: 1024px) {
  .page-portals__item-hidden {
    max-height: 0;
  }
}
.page-portals .pagePortalsSliderControls {
  margin: 30px auto 30px;
  padding: 0 20px;
  position: relative;
  display: flex;
  justify-content: space-between;
  width: 160px;
}
@media only screen and (min-width: 768px) {
  .page-portals .pagePortalsSliderControls {
    gap: 20px;
    margin: 30px 0 0 0;
    padding: 0;
    width: 100%;
  }
}
.page-portals .pagePortalsSliderControls button {
  background: none;
  border: none;
  cursor: pointer;
}
.page-portals .pagePortalsSliderControls svg path, .page-portals .pagePortalsSliderControls svg circle {
  stroke: #1B3765;
}
@media only screen and (min-width: 768px) {
  .page-portals .pagePortalsSliderControls svg {
    height: 62px;
    width: 62px;
  }
  .page-portals .pagePortalsSliderControls svg path, .page-portals .pagePortalsSliderControls svg circle {
    stroke-width: 1.3;
  }
}
@media only screen and (min-width: 1024px) {
  .page-portals .pagePortalsSliderControls {
    display: none;
  }
}

.page-template-home .page-portals__item-content {
  background: white;
}
.page-template-home .page-portals__item-content h3, .page-template-home .page-portals__item-content p {
  color: #1B3765;
}
.page-template-home .page-portals__item-content span {
  background: #055593;
  color: white;
}
.page-template-home .pagePortalsSliderControls circle, .page-template-home .pagePortalsSliderControls path, .page-template-home .pagePortalsSliderControls ellipse {
  stroke: white !important;
}

.page-portals-simple {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
  gap: 40px;
  margin: 0 0 40px;
}
.page-portals-simple__item {
  display: flex;
  flex-direction: column;
  position: relative;
}
.page-portals-simple__item-content {
  text-align: center;
}
.page-portals-simple__item-content h3 {
  font-size: 28px;
  margin: 20px 0 0 0;
}
.page-portals-simple__item-content h4 {
  font-family: "Lato", sans-serif;
  font-size: 18px;
  font-weight: 400;
  line-height: 1;
  font-style: italic;
  margin: 10px 0 0;
}
.page-portals-simple__item:hover .page-portals-simple__image {
  opacity: 1;
  transition: 1s cubic-bezier(0.175, 0.885, 0.32, 1.275);
}
.page-portals-simple__item:hover .page-portals-simple__image:before {
  height: 120%;
  width: 110%;
  rotate: 0deg;
}
.page-portals-simple__image {
  align-items: center;
  aspect-ratio: 1;
  border-radius: 10px;
  display: flex;
  justify-content: center;
  opacity: 0.9;
  margin: 0 0 15px;
  position: relative;
  transition: 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275);
}
.page-portals-simple__image:before {
  background-image: url("/wp-content/themes/source/assets/icons/ui/list-icon.svg");
  background-size: contain;
  background-repeat: no-repeat;
  content: "";
  height: 0%;
  left: 0px;
  rotate: -30deg;
  position: absolute;
  transition: 0.3s;
  width: 0%;
  z-index: -1;
}
.page-portals-simple__image img {
  height: 100%;
  object-fit: cover;
  position: absolute;
  width: 100%;
}

.posts-list {
  width: 100%;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  margin: 0;
  padding: 0;
}
.posts-list__wrapper {
  width: 100%;
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  margin: 0;
  padding: 0;
}
.posts-list__header {
  align-items: center;
  display: flex;
  justify-content: space-between;
  margin: 0;
  padding: 0;
  width: 100%;
}
.posts-list__meta {
  font-weight: 600;
  margin: 0 0 10px;
}
.posts-list__categories {
  margin: 0 0 10px;
}
.posts-list__categories a {
  color: #4B8038;
  font-weight: 600;
}
.posts-list__item {
  position: relative;
  width: 100%;
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  flex: 1 1 auto;
  margin: 0 10px 0 10px;
  padding: 0;
  vertical-align: top;
}
@media (min-width: 840px) {
  .posts-list__item {
    width: calc(50% - 20px);
  }
}
@media (min-width: 1080px) {
  .posts-list__item {
    width: calc(33.333334% - 20px);
  }
}
.posts-list__item-thumb {
  width: 100%;
  display: block;
  flex: 0 1 auto;
  margin: 0;
  padding: 33.33% 0 0 0;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
}
@media only screen and (min-width: 768px) {
  .posts-list__item-thumb {
    padding: 66.666667% 0 0 0;
  }
}
.posts-list__item-content {
  width: 100%;
  display: block;
  flex: 1 0 auto;
  margin: 20px 0 0 0;
  padding: 0;
}
.posts-list__item-content h3 {
  color: #1B3765;
  font-size: 32px;
  margin: 0 0 10px;
}

.postsSliderControls {
  display: flex;
  gap: 20px;
  width: 100%;
}
@media only screen and (min-width: 1024px) {
  .postsSliderControls {
    display: none;
  }
}
.postsSliderControls button {
  background: none;
  border: none;
}

.posts-slider {
  margin: 0 0 30px;
}
.posts-slider .tns-outer {
  overflow: hidden;
}

.posts-list-footer {
  display: flex;
  margin: 20px 0 0 0;
  justify-content: space-between;
  width: 100%;
}

.recent-posts {
  width: calc(100% + 20px);
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  margin: 0 -10px 20px -10px;
  padding: 0;
}
.recent-posts__header {
  width: 100%;
  display: block;
  margin: 0 0 20px 0;
  padding: 0 10px;
}
.recent-posts__item {
  position: relative;
  width: calc(100% - 20px);
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  flex: 1 1 auto;
  margin: 0 10px 20px 10px;
  padding: 0;
  vertical-align: top;
}
@media (min-width: 840px) {
  .recent-posts__item {
    width: calc(50% - 20px);
  }
}
@media (min-width: 1080px) {
  .recent-posts__item {
    width: calc(33.333334% - 20px);
  }
}
.recent-posts__item-thumb {
  width: 100%;
  display: block;
  flex: 0 1 auto;
  margin: 0;
  padding: 66.666667% 0 0 0;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
}
.recent-posts__item-content {
  width: 100%;
  display: block;
  flex: 1 0 auto;
  margin: 0;
  padding: 0;
}

.image-block {
  display: flex;
  height: fit-content;
  margin: 0 0 40px 0;
  position: relative;
  width: 100%;
  overflow: hidden;
  padding: 0;
}
.image-block.rounded {
  border-radius: 10px;
}
.image-block a {
  width: 100%;
  display: block;
  margin: 0;
  padding: 0;
  text-align: inherit;
}
.image-block .image-crop {
  width: 100%;
  display: block;
  margin: 0;
  padding: 0;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
}
.image-block.has-lightbox {
  cursor: pointer;
}

.stat {
  width: 100%;
  font-size: 0;
  line-height: 0;
}
.stat__before, .stat__value, .stat__after {
  width: auto;
  display: inline-block;
  margin: 0;
  padding: 0;
  font-weight: bold;
  color: #1B3765;
  vertical-align: top;
}
.stat__after {
  font-size: 40px;
  line-height: 40px;
  padding: 16px 0 0 0;
}
.stat__before, .stat__value {
  font-size: 60px;
  line-height: 60px;
}
.stat h4 {
  font-size: 16px;
  line-height: 20px;
  font-weight: bold;
  margin: 0;
}
.stat p {
  font-size: 14px;
  line-height: 20px;
}

table {
  overflow: scroll;
}
table tr {
  height: auto;
}
table tr:nth-of-type(odd) {
  background: #eef1f7;
}
table tr:first-of-type {
  background: #1B3765;
}
table tr:first-of-type th, table tr:first-of-type td {
  color: white;
  padding: 10px 20px;
}
table td {
  padding: 10px;
}

.page-template-wb-default table tr:nth-of-type(odd) {
  background: #e3ebe0;
}
.page-template-wb-default table tr:first-of-type {
  background: #4B8038;
}
.page-template-wb-default table td {
  color: #0F4C26;
}

.testimonials {
  align-items: center;
  display: flex;
  flex-direction: column;
  justify-content: center;
  margin: 0 auto 50px;
  width: 100%;
}
@media only screen and (min-width: 768px) {
  .testimonials {
    width: calc(100% - 200px);
  }
}
@media only screen and (min-width: 1024px) {
  .testimonials {
    width: calc(100% - 500px);
  }
}
@media only screen and (min-width: 1440px) {
  .testimonials {
    width: calc(100% - 750px);
  }
}
.testimonials .tns-outer {
  overflow: hidden;
  width: 100%;
}
@media only screen and (min-width: 1024px) {
  .testimonials .tns-outer {
    overflow: visible;
  }
}
.testimonials .tns-ovh {
  overflow: visible;
}
.testimonials .tns-inner {
  overflow: visible;
}
.testimonials__wrapper {
  display: flex;
}
.testimonials__item {
  background: white;
  box-shadow: 0 0 10px rgba(27, 55, 101, 0.3);
  border-radius: 10px;
  display: flex !important;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  margin: 50px 0 20px;
  opacity: 0.5;
  padding: 80px 50px 30px;
  scale: 0.8;
  text-align: center;
  width: 100%;
}
.testimonials__item:before {
  background-image: url("/wp-content/themes/source/assets/icons/ui/quote-symbol.svg");
  background-repeat: no-repeat;
  background-size: contain;
  content: "";
  height: 95px;
  position: absolute;
  top: -40px;
  width: 95px;
}
.testimonials__item p:last-of-type {
  margin: 20px 0 0;
}
.testimonials .tns-slide-active {
  opacity: 1;
  scale: 1;
  z-index: 1;
}
.testimonials .testimonialsControls {
  position: relative;
  display: flex;
  justify-content: space-between;
  width: calc(100% - 100px);
}
@media only screen and (min-width: 768px) {
  .testimonials .testimonialsControls {
    position: absolute;
  }
}
.testimonials .testimonialsControls button {
  background: none;
  border: none;
  cursor: pointer;
}
.testimonials .testimonialsControls button svg {
  height: 42px;
  width: 42px;
}
@media only screen and (min-width: 768px) {
  .testimonials .testimonialsControls button svg {
    height: 62px;
    width: 62px;
  }
}

.text-block {
  width: 100%;
  display: block;
  margin: 0 0 20px 0;
  padding: 30px 20px;
}
@media only screen and (min-width: 768px) {
  .text-block {
    padding: 30px 0 0;
  }
}
.text-block p {
  margin: 0 0 3rem;
}
.text-block.background-blue, .text-block.background-green {
  padding: 30px !important;
}
.text-block.background-blue h1, .text-block.background-blue h2, .text-block.background-blue h3, .text-block.background-blue h4,
.text-block.background-blue h5, .text-block.background-blue h6, .text-block.background-blue p, .text-block.background-blue li, .text-block.background-green h1, .text-block.background-green h2, .text-block.background-green h3, .text-block.background-green h4,
.text-block.background-green h5, .text-block.background-green h6, .text-block.background-green p, .text-block.background-green li {
  color: white;
}
.text-block.background-blue p:last-of-type, .text-block.background-green p:last-of-type {
  margin: 0;
}
.text-block.background-blue {
  background: #1B3765;
}
.text-block.background-green {
  background: #0F4C26;
}

.page-template-dcc-default .text-block, .page-template-wb-default .text-block,
.page-template-default .text-block {
  margin: 0;
  padding: 0 0 30px;
}

.timeline {
  position: relative;
  width: 100%;
  margin: 0 0 20px 0;
}
.timeline:before {
  content: "";
  position: absolute;
  width: 2px;
  height: 100%;
  top: 0;
  left: 3px;
  background: #1B3765;
}
@media only screen and (min-width: 1024px) {
  .timeline:before {
    left: calc(50% - 1px);
  }
}
.timeline__date {
  position: relative;
  width: 100%;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-between;
  margin: 0 0 40px 0;
  padding: 0 0 0 20px;
}
@media only screen and (min-width: 1024px) {
  .timeline__date {
    padding: 0;
  }
}
.timeline__date:before {
  content: "";
  position: absolute;
  width: 8px;
  height: 8px;
  top: 0;
  left: 0;
  border-radius: 50%;
  background: #1B3765;
}
@media only screen and (min-width: 1024px) {
  .timeline__date:before {
    left: calc(50% - 4px);
  }
}
.timeline__date-thumb {
  width: 100%;
  display: inline-block;
  margin: 0 0 20px 0;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  vertical-align: top;
}
@media (max-width: 1079px) {
  .timeline__date-thumb {
    aspect-ratio: 3/2;
  }
}
@media only screen and (min-width: 1024px) {
  .timeline__date-thumb {
    width: calc(50% - 20px);
    min-height: calc((50vw - 20px) * 0.666667);
  }
}
.timeline__date .text-block {
  display: inline-block;
  vertical-align: top;
}
@media only screen and (min-width: 1024px) {
  .timeline__date .text-block {
    width: calc(50% - 20px);
    margin: 0 0 0 auto;
  }
}
.timeline__date-date {
  margin: 0 0 5px 0;
}
.timeline__date-title {
  margin: 0 0 20px 0;
}

.trails-list {
  display: flex;
  flex-wrap: wrap;
  padding: 0 30px;
  margin: 0 auto;
  max-width: 1500px;
}
@media only screen and (min-width: 768px) {
  .trails-list {
    padding: 0 100px;
  }
}
.trails-list > div {
  column-gap: 50px;
  display: flex;
  flex-wrap: wrap;
  position: relative;
  width: 100%;
}
.trails-list > div.active {
  display: flex;
}
.trails-list__item {
  display: flex;
  justify-content: flex-start;
  width: calc(100% - 25px);
}
@media screen and (max-width: 768px) {
  .trails-list__item:nth-of-type(2n + 2) .trails-list__item-wrapper {
    clip-path: url(#trail-clip-reverse);
  }
  .trails-list__item:nth-of-type(1n + 2) {
    margin: -12% 0 0 0;
  }
}
@media only screen and (min-width: 768px) {
  .trails-list__item {
    width: calc(50% - 25px);
  }
  .trails-list__item:nth-of-type(4n + 3), .trails-list__item:nth-of-type(4n + 4) {
    justify-content: flex-end;
  }
  .trails-list__item:nth-of-type(4n + 3) .trails-list__item-wrapper, .trails-list__item:nth-of-type(4n + 4) .trails-list__item-wrapper {
    clip-path: url(#trail-clip-reverse);
  }
  .trails-list__item:nth-of-type(4n + 1) .trails-list__item-wrapper {
    left: -50px;
  }
  .trails-list__item:nth-of-type(4n + 1) .trails-list__item-wrapper h3 {
    left: calc(50% - 25px);
  }
  .trails-list__item:nth-of-type(4n + 2) .trails-list__item-wrapper h3 {
    left: calc(50% - 25px);
  }
  .trails-list__item:nth-of-type(4n + 3) .trails-list__item-wrapper h3 {
    left: calc(50% + 25px);
  }
  .trails-list__item:nth-of-type(4n + 4) .trails-list__item-wrapper {
    right: -50px;
  }
  .trails-list__item:nth-of-type(4n + 4) .trails-list__item-wrapper h3 {
    left: calc(50% + 25px);
  }
  .trails-list__item:nth-of-type(1n + 3) {
    margin: -14% 0 0 0;
  }
}
.trails-list__item-wrapper {
  background-image: linear-gradient(#226231, #0F4C26);
  clip-path: url(#trail-clip);
  height: 0;
  overflow: hidden;
  padding: 0 0 100%;
  position: relative;
  top: 0;
  transition: 0.3s;
  widtH: 100%;
}
@media only screen and (min-width: 768px) {
  .trails-list__item-wrapper {
    padding: 0 0 70%;
    widtH: 70%;
  }
}
.trails-list__item-wrapper:hover {
  cursor: pointer;
}
.trails-list__item-wrapper:hover img {
  scale: 1.2;
}
.trails-list__item-wrapper h3 {
  color: white !important;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
  left: 50%;
  text-align: center;
}
.trails-list__item-wrapper img {
  object-fit: cover;
  height: 100%;
  width: 100%;
  position: absolute;
  transition: 0.3s;
  scale: 1;
}

.upcoming-events {
  width: calc(100% + 20px);
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  margin: 0 -10px 20px -10px;
  padding: 0;
}
.upcoming-events__header {
  width: 100%;
  display: block;
  margin: 0 0 20px 0;
  padding: 0 10px;
}
.upcoming-events__item {
  position: relative;
  width: 100%;
  display: inline-block;
  flex: 1 1 auto;
  margin: 0 10px 20px 10px;
  padding: 0;
  vertical-align: top;
}
@media (min-width: 840px) {
  .upcoming-events__item {
    width: calc(50% - 20px);
  }
}
@media (min-width: 1080px) {
  .upcoming-events__item {
    width: calc(33.333334% - 20px);
  }
}
.upcoming-events__item-thumb {
  width: 100%;
  display: block;
  margin: 0;
  padding: 66.666667% 0 0 0;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
}
.upcoming-events__item-content {
  width: 100%;
  display: block;
  margin: 0;
  padding: 0;
}

.wave-content {
  align-items: center;
  display: flex;
  flex-direction: column;
  left: -20px;
  overflow: hidden;
  position: relative;
  width: calc(100% + 40px);
}
@media screen and (min-width: 850px) {
  .wave-content {
    flex-direction: row;
    justify-content: flex-end;
  }
}
@media only screen and (min-width: 1024px) {
  .wave-content {
    left: 0;
    width: 100%;
  }
}
@media only screen and (min-width: 1440px) {
  .wave-content {
    aspect-ratio: 66/32;
  }
}
.wave-content .wave-content__image {
  clip-path: url(#wave-content-mask-1);
}
.wave-content .wave-content__content {
  background: #1B3765;
  color: white;
}
@media screen and (min-width: 850px) {
  .wave-content .wave-content__content {
    right: 40px;
  }
}
.wave-content .wave-content__content h1, .wave-content .wave-content__content h2, .wave-content .wave-content__content h3, .wave-content .wave-content__content h4, .wave-content .wave-content__content h5, .wave-content .wave-content__content h6, .wave-content .wave-content__content p, .wave-content .wave-content__content li {
  color: white;
}
.wave-content .wave-content__content p {
  margin: 0 0 20px;
}
.wave-content .wave-content__content a {
  background-image: linear-gradient(90deg, #055593, #50BAE8, #57AE47, #226231);
  background-size: 0 100%;
  background-repeat: no-repeat;
  padding: 10px 40px 10px 10px;
  position: relative;
  display: inline-block;
  font-family: "Kdam Thmor Pro", sans-serif;
  font-size: 20px;
  line-height: 20px;
  height: fit-content;
  margin: 0 0 20px;
  font-weight: 400;
  color: white;
  text-decoration: none;
  white-space: nowrap;
  text-align: center;
  border: 2px solid white;
  transition: all 0.3s ease 0s;
  overflow: hidden;
  vertical-align: top;
  cursor: pointer;
  width: fit-content;
  z-index: 1;
}
.wave-content .wave-content__content a:hover {
  background-size: 100% 100%;
  border: 2px solid transparent;
  color: white;
}
.wave-content .wave-content__content a.mobile {
  display: inline-block;
}
@media only screen and (min-width: 768px) {
  .wave-content .wave-content__content a.mobile {
    display: none;
  }
}
.wave-content .wave-content__content a.desktop {
  display: none;
}
@media only screen and (min-width: 768px) {
  .wave-content .wave-content__content a.desktop {
    display: inline-block;
  }
}
.wave-content .wave-content__content li {
  list-style-image: url("/wp-content/themes/source/assets/icons/ui/list-icon-white.svg");
}
@media screen and (min-width: 850px) {
  .wave-content.type-2 {
    flex-direction: row;
    justify-content: flex-start;
  }
}
.wave-content.type-2 .wave-content__image {
  clip-path: url(#wave-content-mask-2);
}
.wave-content.type-2 .wave-content__content {
  background: white;
  box-shadow: 0 0 20px rgba(0, 0, 0, 0.1);
  padding: 35px;
  width: calc(100% - 100px);
}
@media screen and (min-width: 850px) {
  .wave-content.type-2 .wave-content__content {
    width: 60%;
    left: 40px;
  }
}
@media only screen and (min-width: 1440px) {
  .wave-content.type-2 .wave-content__content {
    padding: 60px;
    width: 40%;
  }
}
.wave-content.type-2 .wave-content__content h1, .wave-content.type-2 .wave-content__content h2, .wave-content.type-2 .wave-content__content h3, .wave-content.type-2 .wave-content__content h4, .wave-content.type-2 .wave-content__content h5, .wave-content.type-2 .wave-content__content h6, .wave-content.type-2 .wave-content__content p, .wave-content.type-2 .wave-content__content li {
  color: #1B3765;
}
.wave-content.type-2 .wave-content__content a {
  background-color: transparent;
  background-image: linear-gradient(90deg, #055593, #50BAE8, #57AE47, #226231);
  background-size: 0 100%;
  background-repeat: no-repeat;
  padding: 10px 40px 10px 10px;
  position: relative;
  display: flex;
  height: fit-content;
  font-family: "Kdam Thmor Pro", sans-serif;
  font-size: 20px;
  line-height: 20px;
  margin: 0 0 20px;
  font-weight: 400;
  color: #1B3765;
  text-decoration: none;
  white-space: nowrap;
  text-align: center;
  border: 2px solid #1B3765;
  transition: all 0.3s ease 0s;
  overflow: hidden;
  vertical-align: top;
  cursor: pointer;
  width: fit-content;
  z-index: 0;
}
.wave-content.type-2 .wave-content__content a.center {
  margin: 0 auto 20px;
}
.wave-content.type-2 .wave-content__content a.right {
  margin: 0 0 20px auto;
}
.wave-content.type-2 .wave-content__content a:hover {
  background-size: 100% 100%;
  border: 2px solid transparent;
  color: white;
}
.wave-content.type-2 .wave-content__content a.mobile {
  display: inline-block;
}
@media only screen and (min-width: 768px) {
  .wave-content.type-2 .wave-content__content a.mobile {
    display: none;
  }
}
.wave-content.type-2 .wave-content__content a.desktop {
  display: none;
}
@media only screen and (min-width: 768px) {
  .wave-content.type-2 .wave-content__content a.desktop {
    display: inline-block;
  }
}
.wave-content.type-2 .wave-content__content li {
  list-style-image: url("/wp-content/themes/source/assets/icons/ui/list-icon.svg");
}
.wave-content__image {
  aspect-ratio: 45/32;
  height: 100%;
  position: relative;
  width: calc(100% + 60px);
}
@media only screen and (min-width: 768px) {
  .wave-content__image {
    aspect-ratio: 66/32;
    width: 100%;
  }
}
@media screen and (min-width: 850px) {
  .wave-content__image {
    position: absolute;
  }
}
.wave-content img {
  height: 100%;
  object-fit: cover;
  position: absolute;
  width: 100%;
}
.wave-content__content {
  border-radius: 10px;
  margin: -100px 0 0 0;
  padding: 30px;
  position: relative;
  width: calc(100% - 50px);
}
@media screen and (min-width: 850px) {
  .wave-content__content {
    margin: 0 0 0 0;
    width: 50%;
  }
}
.wave-content__content li {
  padding-inline-start: 1ch;
}

.wave-content-green {
  display: flex;
  margin: 0 auto;
  position: relative;
  width: calc(100% - 20px);
}
@media only screen and (min-width: 768px) {
  .wave-content-green {
    width: calc(100% - 100px);
  }
}
.wave-content-green__background {
  background: linear-gradient(#226231, #0F4C26);
  clip-path: url(#wave-content-green-mask-1);
  height: 100%;
  position: absolute;
  right: 0;
  width: 100%;
  z-index: -1;
}
@media only screen and (min-width: 768px) {
  .wave-content-green__background {
    width: 100%;
  }
}
.wave-content-green__wrapper {
  align-items: center;
  display: flex;
  padding: 30px;
  flex-wrap: wrap;
}
.wave-content-green__image {
  flex: 1;
}
@media screen and (max-width: 767px) {
  .wave-content-green__image {
    flex: 100%;
  }
}
.wave-content-green__content {
  flex: 2;
}
@media only screen and (min-width: 768px) {
  .wave-content-green__content {
    padding: 50px;
  }
}
.wave-content-green__content h2, .wave-content-green__content h3, .wave-content-green__content h4, .wave-content-green__content h5, .wave-content-green__content h6, .wave-content-green__content p, .wave-content-green__content li {
  color: white !important;
}
.wave-content-green__content ul li {
  list-style-image: url(/wp-content/themes/source/assets/icons/ui/list-icon-white.svg) !important;
}
.wave-content-vertical-section {
  margin: 0 0 50px;
}
.wave-content-vertical-section .image-carousel {
  padding: 50px;
  z-index: 1;
}
.wave-content-vertical-section .wave-content-vertical {
  margin: -320px 0 0 0;
  padding: 250px 30px 50px;
  z-index: 0;
}
@media only screen and (min-width: 768px) {
  .wave-content-vertical-section .wave-content-vertical {
    padding: 250px 50px 50px;
  }
}

.wave-content-vertical {
  background-image: linear-gradient(#1B3765, #055593);
  clip-path: url(#wave-content-vertical-mask);
  margin: 0 0 50px;
  padding: 30px 30px 50px;
  position: relative;
}
.wave-content-vertical h1, .wave-content-vertical h2, .wave-content-vertical h3, .wave-content-vertical h4, .wave-content-vertical h5, .wave-content-vertical h6, .wave-content-vertical p, .wave-content-vertical li {
  color: white;
}
.video-block {
  align-items: center;
  cursor: pointer;
  display: flex;
  justify-content: center;
  margin: 0 0 30px 0;
  padding: 0;
  position: relative;
  width: 100%;
}
@media only screen and (min-width: 768px) {
  .video-block {
    margin: 0 0 50px 0;
  }
}
.video-block__image {
  height: 100%;
  left: 0;
  object-fit: cover;
  position: absolute;
  top: 0;
  width: 100%;
  z-index: 1;
}
.video-block:after {
  background: #1B3765;
  content: "";
  height: 100%;
  left: 0;
  opacity: 0.7;
  position: absolute;
  top: 0;
  transition: 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275);
  width: 100%;
  z-index: 2;
}
.video-block.clicked:after {
  display: none;
}
.video-block:hover {
  cursor: pointer;
}
.video-block:hover .video-block__play {
  transform: rotate(120deg) scale(1.2);
}
.video-block:hover:after {
  opacity: 0.9;
}
.video-block__play {
  align-items: center;
  display: flex;
  height: 90px;
  justify-content: center;
  position: absolute;
  transform: rotate(0deg) scale(1);
  transition: 0.7s cubic-bezier(0.175, 0.885, 0.32, 1.275);
  width: 70px;
  z-index: 4;
}
.video-block__play svg {
  padding: 0;
  height: 90px;
  transition: 0.7s cubic-bezier(0.175, 0.885, 0.32, 1.275);
  width: 70px;
}

.video-embed {
  position: relative;
  width: 100%;
  display: block;
  margin: 0;
  padding: 56.25% 0 0 0;
}
.video-embed iframe, .video-embed video {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  display: block;
  margin: 0;
}
.video-embed .wp-video {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.image-carousel.themed {
  margin: 0 0 4rem 0;
}
.image-carousel.themed .image-carousel__slides {
  border-radius: 10px;
  margin: 0 0 2rem 0;
}
.image-carousel.themed .carousel-controls span {
  color: #1B3765;
  transition: all 0.3s ease 0s;
}
.image-carousel.themed .carousel-controls span:hover {
  color: black;
}

.image-gallery.themed, .media-gallery.themed {
  width: calc(100% + 2rem);
  margin: 0 -1rem 4rem -1rem;
}
.image-gallery.themed .image-gallery__item, .image-gallery.themed .media-gallery__item, .media-gallery.themed .image-gallery__item, .media-gallery.themed .media-gallery__item {
  transition: all 0.3s ease 0s;
  opacity: 1;
}
.image-gallery.themed .image-gallery__item:hover, .image-gallery.themed .media-gallery__item:hover, .media-gallery.themed .image-gallery__item:hover, .media-gallery.themed .media-gallery__item:hover {
  opacity: 0.5;
}

.image-block.has-lightbox.themed {
  transition: all 0.3s ease 0s;
}
.image-block.has-lightbox.themed:hover {
  opacity: 0.5;
}

.tabbed-content.themed {
  margin: 0 0 4rem 0;
}
.tabbed-content.themed .tabbed-content__toggles {
  border-bottom: 0.1rem solid #ededed;
}
.tabbed-content.themed .tabbed-content__toggles-item {
  margin: 0 2rem 0 0;
  padding: 0 0 0.2rem 0;
  color: grey;
  border-bottom: 0.3rem solid transparent;
  transition: all 0.3s ease 0s;
}
.tabbed-content.themed .tabbed-content__toggles-item.active {
  color: black;
  border-bottom-color: #1B3765;
}
.tabbed-content.themed .tabbed-content__tab {
  padding: 2rem 0 0 0;
}

/* ============ PAGES ============ */
#post-filters {
  margin: 0 auto;
  max-width: 1200px;
  padding: 40px;
  width: 100%;
}
#post-filters form {
  gap: 10px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  margin: 0 auto;
}
@media only screen and (min-width: 768px) {
  #post-filters form {
    flex-direction: row;
    justify-content: space-between;
    padding: 30px 0 0;
  }
}
#post-filters .categories-container {
  align-items: center;
  display: flex;
  gap: 10px;
  margin: 20px 0 0 0;
  position: relative;
  width: 100%;
}
@media only screen and (min-width: 768px) {
  #post-filters .categories-container {
    margin: 0 0 0 0;
    width: 30%;
  }
}
#post-filters #active-category-text {
  text-transform: capitalize;
}
#post-filters .text-input-container {
  align-items: center;
  display: flex;
  margin: 10px 0 0 0;
}
@media only screen and (min-width: 768px) {
  #post-filters .text-input-container {
    margin: 0;
    width: calc(70% - 20px);
  }
}
#post-filters .text-input-container #text-filter-submit {
  align-items: center;
  background: #1B3765;
  border: none;
  cursor: pointer;
  display: flex;
  height: 50px;
  margin: 0;
  justify-content: center;
  padding: 0px 10px;
}
#post-filters .text-input-container #text-filter-submit svg {
  width: 20px;
}
#post-filters .text-input-container #text-filter-submit svg path {
  stroke: white;
}
#post-filters #keyword {
  background: transparent;
  border-left: none;
  border-top: none;
  border-right: none;
  border-bottom: 2px solid #1B3765;
  color: #1B3765;
  font-family: "Lato", sans-serif;
  height: 50px;
  padding: 10px 15px;
  width: 100%;
}
@media only screen and (min-width: 768px) {
  #post-filters #keyword {
    padding: 5px 15px;
  }
}
#post-filters #keyword::placeholder {
  color: #1B3765;
  font-family: "Lato", sans-serif;
}
#post-filters #active-category {
  background: white;
  color: #1B3765;
  cursor: pointer;
  display: flex;
  font-weight: 800;
  justify-content: space-between;
  padding: 5px 15px;
}
#post-filters #cat-list {
  background-color: white;
  background-image: url("/wp-content/themes/source/assets/icons/ui/arrow-down-blue.svg");
  background-repeat: no-repeat;
  background-size: 20px;
  background-position: calc(100% - 12px);
  border-left: none;
  border-top: none;
  border-right: none;
  border-bottom: 2px solid #1B3765;
  color: #1B3765;
  cursor: pointer;
  display: flex;
  font: 500 17px/17px "Lato", sans-serif;
  height: 50px;
  justify-content: space-between;
  line-height: 1.4;
  padding: 5px 15px;
  list-style-type: none;
  position: relative;
  -webkit-appearance: none;
  width: 100%;
}
#post-filters #active-category-arrow svg {
  transform: rotate(0deg);
  transition: 0.2s cubic-bezier(0.175, 0.885, 0.32, 1.275);
}
#post-filters #active-category-arrow.active svg {
  transform: rotate(180deg);
}

#default-blog {
  padding: 20px;
}
#default-blog.posts-list {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin: 0 auto;
  max-width: 1450px;
  position: relative;
  width: 100%;
}
@media only screen and (min-width: 1024px) {
  #default-blog.posts-list {
    flex-direction: row;
  }
}

.blog-archive {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  padding: 0;
  justify-content: center;
  width: 100%;
}
.blog-archive .button.desktop, .blog-archive .dcc-image-row a.desktop, .dcc-image-row .blog-archive a.desktop, .blog-archive .wpcf7 .wpcf7-form input.desktop[type=submit], .wpcf7 .wpcf7-form .blog-archive input.desktop[type=submit] {
  display: none;
}
@media only screen and (min-width: 500px) {
  .blog-archive .button.desktop, .blog-archive .dcc-image-row a.desktop, .dcc-image-row .blog-archive a.desktop, .blog-archive .wpcf7 .wpcf7-form input.desktop[type=submit], .wpcf7 .wpcf7-form .blog-archive input.desktop[type=submit] {
    display: flex;
  }
}
.blog-archive .button.mobile, .blog-archive .dcc-image-row a.mobile, .dcc-image-row .blog-archive a.mobile, .blog-archive .wpcf7 .wpcf7-form input.mobile[type=submit], .wpcf7 .wpcf7-form .blog-archive input.mobile[type=submit] {
  display: flex;
  margin: 20px 0 0 0;
}
@media only screen and (min-width: 500px) {
  .blog-archive .button.mobile, .blog-archive .dcc-image-row a.mobile, .dcc-image-row .blog-archive a.mobile, .blog-archive .wpcf7 .wpcf7-form input.mobile[type=submit], .wpcf7 .wpcf7-form .blog-archive input.mobile[type=submit] {
    display: none;
  }
}
.blog-archive__header {
  display: flex;
  margin: 0 0 20px 0;
  padding: 0 10px;
  justify-content: space-between;
  width: 100%;
}
.blog-archive__header h2 {
  font: 100 36px/36px "Lato", sans-serif;
  margin: 0;
}
.blog-archive__categories {
  display: flex;
  margin: 0 0 20px;
}
.blog-archive__categories a {
  color: #1B3765;
  font: 300 14px/14px "Lato", sans-serif;
  letter-spacing: 0.1em;
}
.blog-archive__item {
  position: relative;
  width: 100%;
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  flex: 1 1 auto;
  margin: 10px;
  padding: 0;
  vertical-align: top;
}
@media (min-width: 840px) {
  .blog-archive__item {
    width: calc(50% - 2rem);
  }
}
@media (min-width: 1080px) {
  .blog-archive__item {
    width: calc(33.333334% - 2rem);
  }
}
.blog-archive__item-thumb {
  width: 100%;
  display: block;
  flex: 0 1 auto;
  margin: 0;
  padding: 66.666667% 0 0 0;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
}
.blog-archive__item-image {
  border-radius: 10px;
  height: 250px;
  overflow: hidden;
  width: 100%;
}
@media only screen and (min-width: 768px) {
  .blog-archive__item-image {
    width: 100%;
  }
}
.blog-archive__item-image img {
  height: 100%;
  object-fit: cover;
  width: 100%;
}
.blog-archive__item-content {
  display: block;
  flex: 1 0 auto;
  margin: 0;
  transition: 0.3s;
  width: 100%;
}
.blog-archive__item-content h3 {
  color: #1B3765;
  font: 700 28px/28px "Lato", sans-serif;
  margin: 0 0 20px;
}
.blog-archive__item-content p {
  color: #1B3765;
  font: 300 18px/18px "Lato", sans-serif;
  margin: 20px 0;
}

#post-main {
  margin: 50px auto;
  max-width: 1200px;
}

.post__image {
  aspect-ratio: 16/8;
}
.post__image img {
  height: 100%;
  object-fit: cover;
  width: 100%;
}

@media only screen and (min-width: 768px) {
  .swCalEvents {
    padding: 50px 100px;
  }
}

.CalendarEvent__meta img {
  width: 15px;
}
.CalendarEvent__box h3 {
  font-size: 21px;
}

.swwpc_calendar .post__image {
  display: none;
}

.CalendarListEvent__tags {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}
.CalendarListEvent__tag {
  border: 1px solid #1c3665;
}

/* _home.scss */
.home #default-main, .page-template-page-landing-page #default-main {
  overflow: hidden;
  padding: 0 20px;
}
@media only screen and (min-width: 1024px) {
  .home #default-main, .page-template-page-landing-page #default-main {
    padding: 0;
  }
}
@media only screen and (min-width: 768px) {
  .home .text-block, .page-template-page-landing-page .text-block {
    padding: 0 30px;
  }
}
.home:before, .page-template-page-landing-page:before {
  background-image: linear-gradient(#226231, #4B8038, #50BAE8, #1B3765);
  content: "";
  display: flex;
  height: 100%;
  left: 0;
  opacity: 1;
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 0;
}
.home h2, .page-template-page-landing-page h2 {
  color: white;
}

#home-contact {
  padding: 0 20px;
  position: relative;
}
#home-contact .home-contact {
  display: flex;
  flex-direction: column;
  gap: 30px;
  justify-content: center;
  margin: -70px 0 0 0;
  max-width: 750px;
  width: 100%;
}
@media only screen and (min-width: 768px) {
  #home-contact .home-contact {
    margin: -300px auto 0;
    max-width: 100%;
  }
}
@media only screen and (min-width: 1024px) {
  #home-contact .home-contact {
    flex-direction: row;
    margin: -400px 0 0 0;
  }
}
#home-contact .home-contact h3 {
  font-size: 30px;
}
#home-contact .home-contact > div {
  background: rgba(255, 255, 255, 0.7);
  border-radius: 10px 10px 0 0;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  overflow: hidden;
  width: 100%;
}
@media only screen and (min-width: 1024px) {
  #home-contact .home-contact > div {
    width: calc(50% - 100px);
  }
}
#home-contact .home-contact__left--info, #home-contact .home-contact__right--info {
  display: flex;
  flex-wrap: wrap;
  padding: 30px;
}
@media only screen and (min-width: 768px) {
  #home-contact .home-contact__left--info, #home-contact .home-contact__right--info {
    padding: 50px;
  }
}
#home-contact .home-contact__left--header, #home-contact .home-contact__right--header {
  width: 100%;
}
#home-contact .home-contact__left--contact, #home-contact .home-contact__left--hours, #home-contact .home-contact__right--contact, #home-contact .home-contact__right--hours {
  padding: 10px;
  width: 50%;
}
#home-contact .home-contact__left--contact, #home-contact .home-contact__right--contact {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
#home-contact .home-contact__left--logo, #home-contact .home-contact__right--logo {
  align-items: center;
  clip-path: url(#addressPath);
  display: flex;
  justify-content: center;
  overflow: hidden;
  padding: 100px 30px;
  position: relative;
  width: 100%;
}
#home-contact .home-contact__left--logo:before, #home-contact .home-contact__right--logo:before {
  content: "";
  height: 100%;
  left: 0;
  opacity: 0.7;
  position: absolute;
  top: 0;
  transition: 0.3s;
  width: 100%;
  z-index: 1;
}
#home-contact .home-contact__left--logo:hover:before, #home-contact .home-contact__right--logo:hover:before {
  opacity: 0.9;
}
#home-contact .home-contact__left--logo:hover .home-contact__left--background-image, #home-contact .home-contact__left--logo:hover .home-contact__right--background-image, #home-contact .home-contact__right--logo:hover .home-contact__left--background-image, #home-contact .home-contact__right--logo:hover .home-contact__right--background-image {
  transform: scale(1.4);
}
#home-contact .home-contact__left--background-image, #home-contact .home-contact__right--background-image {
  height: 100%;
  object-fit: cover;
  position: absolute;
  width: 100%;
  transform: scale(1);
  transition: 0.3s;
  z-index: 0;
}
#home-contact .home-contact__left--logo-image, #home-contact .home-contact__right--logo-image {
  max-width: 400px;
  z-index: 2;
}
#home-contact .home-contact__left--logo:before {
  background-color: #1B3765;
}
#home-contact .home-contact__left h2 {
  color: #1B3765;
}
#home-contact .home-contact__right h1, #home-contact .home-contact__right h2, #home-contact .home-contact__right h3, #home-contact .home-contact__right h4, #home-contact .home-contact__right h5, #home-contact .home-contact__right h6, #home-contact .home-contact__right p {
  color: #0F4C26;
}
#home-contact .home-contact__right--contact a, #home-contact .home-contact__right--hours a {
  color: #0F4C26;
}
#home-contact .home-contact__right--logo:before {
  background-color: #0F4C26;
}
#home-contact .home-contact .bubble {
  position: absolute;
  width: 20px;
  height: 20px;
  border: 2px solid white;
  border-radius: 50%;
  bottom: 0;
  opacity: 0;
}

@media screen and (min-width: 1024px) {
  #home-page .events-slider {
    margin: 0;
  }
  #home-page .events-slider > header {
    margin: 0 auto 20px auto;
    padding: 50px 50px 0 0;
  }
  #home-page .text-block {
    width: calc(100% - 170px);
    margin: 0 auto 20px auto;
  }
}
/* _default.scss */
#page {
  display: block;
  padding: 0 0 50px;
  width: 100%;
}

.page-template-default #default,
.page-template-dcc-default #default,
.page-template-wb-default #default {
  padding: 30px;
}
@media only screen and (min-width: 768px) {
  .page-template-default #default,
  .page-template-dcc-default #default,
  .page-template-wb-default #default {
    padding: 50px;
  }
}
.page-template-default .info-cards-slider,
.page-template-dcc-default .info-cards-slider,
.page-template-wb-default .info-cards-slider {
  overflow: hidden;
}
.page-template-default .wave-content,
.page-template-dcc-default .wave-content,
.page-template-wb-default .wave-content {
  margin: 40px 0 0 0;
}
@media only screen and (min-width: 768px) {
  .page-template-default .wave-content,
  .page-template-dcc-default .wave-content,
  .page-template-wb-default .wave-content {
    width: calc(100% + 50px);
  }
}
@media only screen and (min-width: 1024px) {
  .page-template-default .wave-content,
  .page-template-dcc-default .wave-content,
  .page-template-wb-default .wave-content {
    aspect-ratio: unset;
    align-items: center;
    display: flex;
    flex-direction: column;
    overflow: hidden;
  }
}
@media only screen and (min-width: 1440px) {
  .page-template-default .wave-content,
  .page-template-dcc-default .wave-content,
  .page-template-wb-default .wave-content {
    aspect-ratio: 56/32;
    flex-direction: row;
  }
}
.page-template-default .wave-content__image,
.page-template-dcc-default .wave-content__image,
.page-template-wb-default .wave-content__image {
  width: calc(100% + 50px);
}
@media only screen and (min-width: 1024px) {
  .page-template-default .wave-content__image,
  .page-template-dcc-default .wave-content__image,
  .page-template-wb-default .wave-content__image {
    aspect-ratio: 45/32;
    height: 100%;
    position: relative;
    width: 100%;
  }
}
@media only screen and (min-width: 1440px) {
  .page-template-default .wave-content__image,
  .page-template-dcc-default .wave-content__image,
  .page-template-wb-default .wave-content__image {
    aspect-ratio: unset;
    position: absolute;
  }
}
@media only screen and (min-width: 1024px) {
  .page-template-default .wave-content__content,
  .page-template-dcc-default .wave-content__content,
  .page-template-wb-default .wave-content__content {
    border-radius: 10px;
    margin: -180px 0 0 0;
    padding: 30px;
    position: relative;
    width: calc(100% - 30px);
    right: 0;
  }
}
@media only screen and (min-width: 1440px) {
  .page-template-default .wave-content__content,
  .page-template-dcc-default .wave-content__content,
  .page-template-wb-default .wave-content__content {
    margin: 0 0 0 0;
    position: absolute;
    width: 50%;
    right: 40px;
  }
}
.page-template-default .events-slider,
.page-template-dcc-default .events-slider,
.page-template-wb-default .events-slider {
  padding: 0;
}
@media only screen and (min-width: 768px) {
  .page-template-default .events-slider,
  .page-template-dcc-default .events-slider,
  .page-template-wb-default .events-slider {
    width: calc(100% + 50px);
  }
  .page-template-default .events-slider > header,
  .page-template-dcc-default .events-slider > header,
  .page-template-wb-default .events-slider > header {
    padding: 30px 50px;
  }
  .page-template-default .events-slider .eventsSliderControls,
  .page-template-dcc-default .events-slider .eventsSliderControls,
  .page-template-wb-default .events-slider .eventsSliderControls {
    padding: 0 50px 0 0;
  }
}
@media only screen and (min-width: 768px) {
  .page-template-default .events-slider .tns-outer,
  .page-template-dcc-default .events-slider .tns-outer,
  .page-template-wb-default .events-slider .tns-outer {
    max-width: 260px;
  }
}
.page-template-default .events-slider .event-cards .event-card,
.page-template-dcc-default .events-slider .event-cards .event-card,
.page-template-wb-default .events-slider .event-cards .event-card {
  padding: 5px;
  scale: 1;
}
.page-template-default .events-slider .event-cards .event-card__excerpt,
.page-template-dcc-default .events-slider .event-cards .event-card__excerpt,
.page-template-wb-default .events-slider .event-cards .event-card__excerpt {
  display: none;
}
.page-template-default .events-slider .event-cards .event-card h4,
.page-template-dcc-default .events-slider .event-cards .event-card h4,
.page-template-wb-default .events-slider .event-cards .event-card h4 {
  margin: 0 0 10px;
}
.page-template-default .events-slider .event-cards .event-card__wrapper,
.page-template-dcc-default .events-slider .event-cards .event-card__wrapper,
.page-template-wb-default .events-slider .event-cards .event-card__wrapper {
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
}
.page-template-default .events-slider .event-cards .event-card__content,
.page-template-dcc-default .events-slider .event-cards .event-card__content,
.page-template-wb-default .events-slider .event-cards .event-card__content {
  padding: 20px;
}
.page-template-default #mega-menu-toggle,
.page-template-dcc-default #mega-menu-toggle,
.page-template-wb-default #mega-menu-toggle {
  background-image: linear-gradient(#226231, #4B8038, #50BAE8, #1B3765);
}
.page-template-default .page-portals__item-content span:after,
.page-template-dcc-default .page-portals__item-content span:after,
.page-template-wb-default .page-portals__item-content span:after {
  background-image: url("/wp-content/themes/source/assets/icons/ui/arrow-right-light-blue.svg");
}
.page-template-default .pagePortalsSliderControls svg circle,
.page-template-dcc-default .pagePortalsSliderControls svg circle,
.page-template-wb-default .pagePortalsSliderControls svg circle {
  stroke: #1B3765;
}
.page-template-default .pagePortalsSliderControls svg path,
.page-template-dcc-default .pagePortalsSliderControls svg path,
.page-template-wb-default .pagePortalsSliderControls svg path {
  stroke: #1B3765;
}

.page-template-dcc-full-width #content, .page-template-dcc-default #content {
  padding: 0;
}
.page-template-dcc-full-width footer, .page-template-dcc-default footer {
  padding: 0 30px 80px;
}
@media only screen and (min-width: 1024px) {
  .page-template-dcc-full-width footer, .page-template-dcc-default footer {
    padding: 0 30px;
  }
}
.page-template-dcc-full-width footer .footer-wrap, .page-template-dcc-default footer .footer-wrap {
  background-color: rgba(27, 55, 101, 0.1);
}
.page-template-dcc-full-width #sidecar, .page-template-dcc-default #sidecar {
  background-image: linear-gradient(90deg, #055593, #1B3765);
}
@media only screen and (min-width: 1024px) {
  .page-template-dcc-full-width #sidecar, .page-template-dcc-default #sidecar {
    top: 0;
  }
}
@media only screen and (min-width: 1024px) {
  .page-template-dcc-full-width nav#sidecar ul#menu-discovery-center-menu, .page-template-dcc-default nav#sidecar ul#menu-discovery-center-menu {
    margin: 150px auto 200px;
  }
}
@media only screen and (min-width: 1024px) {
  .page-template-dcc-full-width #sidecar-toggle, .page-template-dcc-default #sidecar-toggle {
    background: transparent;
    color: white;
    display: flex;
  }
  .page-template-dcc-full-width #sidecar-toggle.active span, .page-template-dcc-default #sidecar-toggle.active span {
    color: #1A3A68;
  }
  .page-template-dcc-full-width #sidecar-toggle span:before, .page-template-dcc-default #sidecar-toggle span:before {
    background: white;
  }
  .page-template-dcc-full-width #sidecar-toggle span:after, .page-template-dcc-default #sidecar-toggle span:after {
    background: white;
  }
}
.page-template-dcc-full-width .banner__image:before, .page-template-dcc-default .banner__image:before {
  background-color: #055593;
  background-image: none;
  opacity: 0.8;
}
.page-template-dcc-full-width .logo-link, .page-template-dcc-default .logo-link {
  background-image: url("/wp-content/themes/source/assets/logos/DC_logo.svg");
  background-size: contain;
  padding: 0 0 20%;
}
@media only screen and (min-width: 1024px) {
  .page-template-dcc-full-width .logo-link, .page-template-dcc-default .logo-link {
    background-image: url("/wp-content/themes/source/assets/logos/dhdc_logo_white.svg");
  }
}

.home-icon {
  display: none;
}
@media only screen and (min-width: 1024px) {
  .home-icon {
    display: flex;
  }
}

.page-template-dcc-home .page-portals__item-content, .page-template-dcc-default .page-portals__item-content {
  background: #055593;
}
.page-template-dcc-home .footer-wrap, .page-template-dcc-default .footer-wrap {
  background-color: rgba(27, 55, 101, 0.1);
}
.page-template-dcc-home #content, .page-template-dcc-default #content {
  padding: 0;
}
.page-template-dcc-home .logo-link, .page-template-dcc-default .logo-link {
  background-image: url("/wp-content/themes/source/assets/logos/DC_logo.svg");
  background-size: contain;
  padding: 0 0 20%;
}
@media only screen and (min-width: 1024px) {
  .page-template-dcc-home .logo-link, .page-template-dcc-default .logo-link {
    background-image: url("/wp-content/themes/source/assets/logos/dhdc_logo_white.svg");
  }
}
@media only screen and (min-width: 1024px) {
  .page-template-dcc-home #sidecar-toggle, .page-template-dcc-default #sidecar-toggle {
    background: transparent;
    color: white;
    display: flex;
  }
  .page-template-dcc-home #sidecar-toggle.active span, .page-template-dcc-default #sidecar-toggle.active span {
    color: #1A3A68;
  }
  .page-template-dcc-home #sidecar-toggle span:before, .page-template-dcc-default #sidecar-toggle span:before {
    background: white;
  }
  .page-template-dcc-home #sidecar-toggle span:after, .page-template-dcc-default #sidecar-toggle span:after {
    background: white;
  }
}
@media only screen and (min-width: 1024px) {
  .page-template-dcc-home nav#sidecar ul#menu-discovery-center-menu, .page-template-dcc-default nav#sidecar ul#menu-discovery-center-menu {
    margin: 150px auto 200px;
  }
}
.page-template-dcc-home #sidecar, .page-template-dcc-default #sidecar {
  background-image: linear-gradient(90deg, #055593, #1B3765);
}
@media only screen and (min-width: 1024px) {
  .page-template-dcc-home #sidecar, .page-template-dcc-default #sidecar {
    top: 0;
  }
}
.page-template-dcc-home footer, .page-template-dcc-default footer {
  padding: 0 30px 80px;
}
@media only screen and (min-width: 1024px) {
  .page-template-dcc-home footer, .page-template-dcc-default footer {
    padding: 0 30px;
  }
}

.dcc-image-row {
  gap: 30px;
  padding: 0 30px;
}
@media only screen and (min-width: 768px) {
  .dcc-image-row {
    padding: 0 100px;
  }
}
@media only screen and (min-width: 768px) {
  .dcc-image-row > div:nth-of-type(2) {
    padding: 0 100px 0 0;
  }
}
.dcc-image-row .dcc_home_image {
  aspect-ratio: 1;
  display: flex;
  position: relative;
  margin: 0 0 0 0;
}
@media only screen and (min-width: 768px) {
  .dcc-image-row .dcc_home_image {
    margin: -200px 0 0 0;
  }
}
.dcc-image-row .dcc_home_image img {
  height: 100%;
  object-fit: cover;
  width: 100%;
}
.dcc-image-row .dcc_home_image__clip {
  aspect-ratio: 1;
  clip-path: url(#dccImageMask);
}
.dcc-image-row .dcc_home_image_bubbles .bubble {
  animation: float 3s forwards infinite;
  border-radius: 50%;
  position: absolute;
  transform: translate(0, 0);
}
.dcc-image-row .dcc_home_image_bubbles .bubble:nth-of-type(1) {
  background: #57AE47;
  height: 45px;
  top: -30px;
  right: 160px;
  width: 45px;
}
.dcc-image-row .dcc_home_image_bubbles .bubble:nth-of-type(2) {
  animation-delay: 0.3s;
  background: #055593;
  height: 125px;
  bottom: 40px;
  right: 110px;
  width: 125px;
  z-index: -1;
}
.dcc-image-row .dcc_home_image_bubbles .bubble:nth-of-type(3) {
  animation-delay: 0.8s;
  border: 2px solid #50BAE8;
  height: 75px;
  bottom: 70px;
  right: 70px;
  width: 75px;
}

.dcc_home_section_bubbles .bubble {
  animation: float 3s forwards infinite;
  border-radius: 50%;
  position: absolute;
  transform: translate(0, 0);
}
.dcc_home_section_bubbles .bubble:nth-of-type(1) {
  animation-delay: 0.1s;
  background: #57AE47;
  bottom: 10px;
  height: 25px;
  left: 10px;
  width: 25px;
}
@media only screen and (min-width: 768px) {
  .dcc_home_section_bubbles .bubble:nth-of-type(1) {
    bottom: 150px;
    height: 35px;
    left: auto;
    right: 30px;
    width: 35px;
  }
}
.dcc_home_section_bubbles .bubble:nth-of-type(2) {
  animation-delay: 0.4s;
  background: #50BAE8;
  bottom: 50px;
  display: none;
  height: 65px;
  right: 90px;
  width: 65px;
}
@media only screen and (min-width: 768px) {
  .dcc_home_section_bubbles .bubble:nth-of-type(2) {
    display: block;
  }
}
.dcc_home_section_bubbles .bubble:nth-of-type(3) {
  animation-delay: 0.9s;
  background: #50BAE8;
  height: 55px;
  bottom: -60px;
  left: 20px;
  width: 55px;
}
@media only screen and (min-width: 768px) {
  .dcc_home_section_bubbles .bubble:nth-of-type(3) {
    background: transparent;
    border: 2px solid #50BAE8;
    height: 135px;
    bottom: -30px;
    left: auto;
    right: 0;
    width: 135px;
  }
}

.dcc-wave-section:before {
  background-image: url("/wp-content/themes/source/assets/layout/dcc-wave-background.svg");
  content: "";
  height: 900px;
  left: 0;
  position: absolute;
  top: 50px;
  background-size: cover;
  width: 100%;
  z-index: -1;
}
@media only screen and (min-width: 768px) {
  .dcc-wave-section:before {
    height: 1100px;
    left: 0;
    position: absolute;
    top: -150px;
    background-size: cover;
    width: 100%;
    z-index: -1;
  }
}
@media only screen and (min-width: 1440px) {
  .dcc-wave-section:before {
    height: 1300px;
  }
}

.dhdc-events {
  padding: 30px;
}
@media only screen and (min-width: 768px) {
  .dhdc-events {
    padding: 50px;
  }
}
.dhdc-events svg circle, .dhdc-events svg path, .dhdc-events svg ellipse {
  stroke: #1B3765;
}

.page-template-dcc-home {
  position: relative;
}
.page-template-dcc-home #page {
  overflow: hidden;
}
.page-template-dcc-home .text-block {
  padding: 30px;
}
@media only screen and (min-width: 1024px) {
  .page-template-dcc-home .text-block {
    padding: 50px;
  }
}
@media only screen and (min-width: 1024px) {
  .page-template-dcc-home .quick-buttons {
    display: flex;
  }
}

#full-width {
  overflow: hidden;
  padding: 50px 0;
  position: relative;
}
#full-width .row {
  margin: 0 auto;
  max-width: 1500px;
  padding: 0 30px;
}
@media only screen and (min-width: 768px) {
  #full-width .row {
    padding: 30px 50px;
  }
}

/* _home.scss */
.page-template-page-landing-page .banner__image {
  height: 100%;
}
.page-template-page-landing-page .banner.homepage {
  height: 970px;
}
.page-template-page-landing-page .banner.homepage .banner__content {
  height: 100%;
}
.page-template-page-landing-page .banner.homepage .banner__content header {
  display: flex;
  flex-direction: column;
  gap: 50px;
}
@media only screen and (min-width: 1440px) {
  .page-template-page-landing-page .banner.homepage .banner__content header {
    flex-direction: row;
  }
}
.page-template-page-landing-page .banner.homepage .banner__content h1 {
  text-align: center;
  width: 100%;
}
@media only screen and (min-width: 1440px) {
  .page-template-page-landing-page .banner.homepage .banner__content h1 {
    text-align: left;
    width: calc(50% - 20px);
  }
}
.page-template-page-landing-page .banner.homepage .banner__content--area {
  background: rgba(255, 255, 255, 0.7);
  border-radius: 10px;
  padding: 50px;
  width: 100%;
}
@media only screen and (min-width: 1440px) {
  .page-template-page-landing-page .banner.homepage .banner__content--area {
    width: calc(50% - 20px);
  }
}
.page-template-page-landing-page .banner.homepage .banner__content--area p {
  color: #1B3765;
}
.page-template-page-landing-page .white-wave-section {
  background: rgba(255, 255, 255, 0.7);
  margin: 0 0 30px;
  padding: 30px 0 30px;
  position: relative;
}
@media only screen and (min-width: 768px) {
  .page-template-page-landing-page .white-wave-section {
    background: transparent;
    margin: 0;
    padding: 160px 40px 40px;
  }
  .page-template-page-landing-page .white-wave-section:before {
    background: rgba(255, 255, 255, 0.7);
    content: "";
    clip-path: url(#wave-content-mask-1);
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%;
  }
}
.page-template-page-landing-page .white-wave-section .row {
  padding: 0 30px;
}
@media only screen and (min-width: 768px) {
  .page-template-page-landing-page .white-wave-section .row {
    padding: 0 50px;
  }
}
@media only screen and (min-width: 1024px) {
  .page-template-page-landing-page .white-wave-section .row {
    padding: 0 80px;
  }
}
.page-template-page-landing-page .white-wave-section .text-block {
  padding: 0;
}
@media only screen and (min-width: 768px) {
  .page-template-page-landing-page .white-wave-section .text-block {
    padding: 30px 20px;
  }
}
.page-template-page-landing-page .white-wave-section .text-block h1, .page-template-page-landing-page .white-wave-section .text-block h2, .page-template-page-landing-page .white-wave-section .text-block h3, .page-template-page-landing-page .white-wave-section .text-block h4, .page-template-page-landing-page .white-wave-section .text-block h5, .page-template-page-landing-page .white-wave-section .text-block h6, .page-template-page-landing-page .white-wave-section .text-block p {
  color: #1B3765;
}
.page-template-page-landing-page .white-wave-section .info-cards {
  padding: 0;
}
.page-template-page-landing-page .testimonials__item p {
  color: #1B3765;
}
.page-template-page-landing-page #default-main {
  overflow: hidden;
  padding: 0 20px;
}
@media only screen and (min-width: 1024px) {
  .page-template-page-landing-page #default-main {
    padding: 0;
  }
}
@media only screen and (min-width: 768px) {
  .page-template-page-landing-page .text-block {
    padding: 0 30px;
  }
}
.page-template-page-landing-page:before {
  background-image: linear-gradient(#226231, #4B8038, #50BAE8, #1B3765);
  content: "";
  display: flex;
  height: 100%;
  left: 0;
  opacity: 1;
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 0;
}
.page-template-page-landing-page h2, .page-template-page-landing-page p {
  color: white;
}

.search-results #default, .category #default {
  padding: 50px;
}
.search-results #main, .category #main {
  max-width: 1000px;
}
.search-results h2, .category h2 {
  color: #1B3765;
}
.search-results h3, .category h3 {
  margin: 0;
}
.search-results h3 a, .category h3 a {
  color: #1B3765;
}
.search-results .text-muted, .category .text-muted {
  border: 1px solid #1B3765;
  display: flex;
  margin: 30px 0 0;
  width: fit-content;
}
.search-results .post__date, .category .post__date {
  border-right: 1px solid #1B3765;
  padding: 10px 20px;
}
.search-results .post__author, .category .post__author {
  padding: 10px 20px;
}
.search-results .byline, .category .byline {
  margin: 0 0 0 10px;
}
.search-results #main, .category #main {
  margin: 0 auto;
  max-width: 900px;
}
.search-results #main header, .category #main header {
  width: 100%;
}
.search-results #main article, .category #main article {
  border-bottom: 1px solid #1B3765;
  margin: 0 0 50px 0;
  padding: 0 0 50px;
  width: 100%;
}
.search-results #main article:last-of-type, .category #main article:last-of-type {
  border-bottom: none;
  margin: 0 0 0 0;
  padding: 0 0 0;
}
.search-results #main article h2, .category #main article h2 {
  margin: 0;
}
.search-results #main article .search-article-content p, .category #main article .search-article-content p {
  margin: 20px 0;
}
.search-results #main article .search-article-content a, .category #main article .search-article-content a {
  margin: 0 0 0 0;
}

/* _sitemap.scss */
.sitemap ul {
  list-style: none;
  margin: 0;
  padding: 0;
}
.sitemap ul li {
  display: block;
}
.sitemap ul > li {
  font: bold 2.4rem serif;
  margin-top: 12px;
}
.sitemap ul > li > ul {
  padding-left: 16px;
}
.sitemap ul > li > ul > li {
  font: bold 2rem sans-serif;
  margin-top: 8px;
}
.sitemap ul > li > ul > li > ul {
  padding-left: 16px;
}
.sitemap ul > li > ul > li > ul > li {
  font: normal 1.6rem sans-serif;
  margin-top: 4px;
}

/* _404.scss */
.search .error-404 {
  padding: 0;
}

.error-404 {
  align-items: center;
  display: flex;
  margin: 0 auto;
  max-width: 800px;
  justify-content: center;
  padding: 0;
  text-align: center;
}
@media only screen and (min-width: 1024px) {
  .error-404 {
    max-width: 1000px;
    padding: 100px 80px 150px;
  }
}
.error-404 h2 {
  margin: 0 0 10px;
}
.error-404 p {
  margin: 0 0 30px;
}
.error-404 #searchform {
  display: flex;
  justify-content: space-between;
  width: 100%;
}
.error-404 #searchform .form-row:nth-of-type(1) {
  width: 100%;
}
.error-404 #searchform input[type=text] {
  border: none;
  border-bottom: 1px solid #1B3765;
  height: 40px;
  text-align: center;
  width: 100%;
}
.error-404 #searchform input[type=text]:focus {
  border-bottom: 1px solid #1B3765;
}
.error-404 #searchform button {
  background-color: #1B3765;
  background-image: linear-gradient(90deg, #055593, #50BAE8, #57AE47, #226231);
  background-size: 0 100%;
  background-repeat: no-repeat;
  border: none;
  cursor: pointer;
  height: 40px;
  overflow: hidden;
  padding: 0 20px;
  transition: 0.3s;
}
.error-404 #searchform button:hover {
  background-size: 100% 100%;
}
.error-404 #searchform button svg path {
  fill: white;
  stroke: white;
}

/* _styleguide.scss */
body.styleguide hr {
  margin: 50px 0 20px;
}

.swatch {
  background: var(--color);
  border-radius: 10px;
  display: inline-block;
  height: 80px;
  margin: 0 8px 8px 0;
  text-align: center;
  width: 80px;
}
.swatch::after {
  content: attr(color);
  display: block;
  font: normal 16px monospace;
  margin-bottom: 16px;
  position: relative;
  top: calc(100% + 4px);
}

.page-template-wb-full-width .page-alert__wrap,
.page-template-wb-default .page-alert__wrap {
  background: linear-gradient(#226231, #0F4C26);
}
.page-template-wb-full-width #content,
.page-template-wb-default #content {
  padding: 0;
}
@media only screen and (min-width: 1024px) {
  .page-template-wb-full-width header#navigation.header-show,
  .page-template-wb-default header#navigation.header-show {
    background: #0F4C26;
  }
}
.page-template-wb-full-width .quick-buttons a,
.page-template-wb-default .quick-buttons a {
  color: #0F4C26;
}
.page-template-wb-full-width .text-block h2, .page-template-wb-full-width .text-block h3, .page-template-wb-full-width .text-block h4, .page-template-wb-full-width .text-block h5, .page-template-wb-full-width .text-block h6, .page-template-wb-full-width .text-block p, .page-template-wb-full-width .text-block li, .page-template-wb-full-width .text-block a, .page-template-wb-full-width .text-block span, .page-template-wb-full-width .text-block i,
.page-template-wb-default .text-block h2,
.page-template-wb-default .text-block h3,
.page-template-wb-default .text-block h4,
.page-template-wb-default .text-block h5,
.page-template-wb-default .text-block h6,
.page-template-wb-default .text-block p,
.page-template-wb-default .text-block li,
.page-template-wb-default .text-block a,
.page-template-wb-default .text-block span,
.page-template-wb-default .text-block i {
  color: #0F4C26;
}
.page-template-wb-full-width .text-block ul li,
.page-template-wb-default .text-block ul li {
  list-style-image: url(/wp-content/themes/source/assets/icons/ui/list-icon-green.svg);
}
.page-template-wb-full-width h2, .page-template-wb-full-width h3, .page-template-wb-full-width h4, .page-template-wb-full-width h5, .page-template-wb-full-width h6, .page-template-wb-full-width p, .page-template-wb-full-width li, .page-template-wb-full-width a, .page-template-wb-full-width span, .page-template-wb-full-width i,
.page-template-wb-default h2,
.page-template-wb-default h3,
.page-template-wb-default h4,
.page-template-wb-default h5,
.page-template-wb-default h6,
.page-template-wb-default p,
.page-template-wb-default li,
.page-template-wb-default a,
.page-template-wb-default span,
.page-template-wb-default i {
  color: #0F4C26;
}
.page-template-wb-full-width .footer-contact__left a,
.page-template-wb-default .footer-contact__left a {
  color: #1B3765;
}
.page-template-wb-full-width a.button, .page-template-wb-full-width .dcc-image-row a, .dcc-image-row .page-template-wb-full-width a,
.page-template-wb-default a.button,
.page-template-wb-default .dcc-image-row a,
.dcc-image-row .page-template-wb-default a {
  border: 2px solid #0F4C26;
  color: #0F4C26;
}
.page-template-wb-full-width a.button:hover, .page-template-wb-full-width .dcc-image-row a:hover, .dcc-image-row .page-template-wb-full-width a:hover,
.page-template-wb-default a.button:hover,
.page-template-wb-default .dcc-image-row a:hover,
.dcc-image-row .page-template-wb-default a:hover {
  color: white;
  border: 2px solid transparent;
}
.page-template-wb-full-width .wave-content .wave-content__content a,
.page-template-wb-default .wave-content .wave-content__content a {
  border: 2px solid white;
  color: white;
}
.page-template-wb-full-width .wave-content .wave-content__content a:hover,
.page-template-wb-default .wave-content .wave-content__content a:hover {
  border: 2px solid transparent;
}
.page-template-wb-full-width .tns-controls svg path, .page-template-wb-full-width .tns-controls svg circle, .page-template-wb-full-width .tns-controls svg ellipse,
.page-template-wb-default .tns-controls svg path,
.page-template-wb-default .tns-controls svg circle,
.page-template-wb-default .tns-controls svg ellipse {
  stroke: #0F4C26;
}
.page-template-wb-full-width .page-portals__item-content,
.page-template-wb-default .page-portals__item-content {
  background: #4B8038;
}
.page-template-wb-full-width .page-portals__item-content h3, .page-template-wb-full-width .page-portals__item-content p,
.page-template-wb-default .page-portals__item-content h3,
.page-template-wb-default .page-portals__item-content p {
  color: white;
}
.page-template-wb-full-width .page-portals__item-content span,
.page-template-wb-default .page-portals__item-content span {
  color: #4B8038;
}
.page-template-wb-full-width .page-portals__item-content span:after,
.page-template-wb-default .page-portals__item-content span:after {
  background-image: url("/wp-content/themes/source/assets/icons/ui/arrow-right-green.svg");
}
.page-template-wb-full-width .wave-content .wave-content__content,
.page-template-wb-default .wave-content .wave-content__content {
  background: #0F4C26;
}
.page-template-wb-full-width .event-card__date-text,
.page-template-wb-default .event-card__date-text {
  color: #0F4C26;
}
.page-template-wb-full-width blockquote:before,
.page-template-wb-default blockquote:before {
  background-image: url("/wp-content/themes/source/assets/icons/ui/quote-symbol-green.svg");
}
.page-template-wb-full-width .accordions__tab,
.page-template-wb-default .accordions__tab {
  border: 0.1rem solid #0F4C26;
}
.page-template-wb-full-width .video-block:after,
.page-template-wb-default .video-block:after {
  background: #0F4C26;
}
.page-template-wb-full-width .wave-content-vertical,
.page-template-wb-default .wave-content-vertical {
  background-image: linear-gradient(#226231, #0F4C26);
}
.page-template-wb-full-width .wave-content-vertical h2, .page-template-wb-full-width .wave-content-vertical h3, .page-template-wb-full-width .wave-content-vertical h4, .page-template-wb-full-width .wave-content-vertical h5, .page-template-wb-full-width .wave-content-vertical h6, .page-template-wb-full-width .wave-content-vertical p, .page-template-wb-full-width .wave-content-vertical li, .page-template-wb-full-width .wave-content-vertical a, .page-template-wb-full-width .wave-content-vertical span, .page-template-wb-full-width .wave-content-vertical i,
.page-template-wb-default .wave-content-vertical h2,
.page-template-wb-default .wave-content-vertical h3,
.page-template-wb-default .wave-content-vertical h4,
.page-template-wb-default .wave-content-vertical h5,
.page-template-wb-default .wave-content-vertical h6,
.page-template-wb-default .wave-content-vertical p,
.page-template-wb-default .wave-content-vertical li,
.page-template-wb-default .wave-content-vertical a,
.page-template-wb-default .wave-content-vertical span,
.page-template-wb-default .wave-content-vertical i {
  color: white;
}
.page-template-wb-full-width #sidecar,
.page-template-wb-default #sidecar {
  background-image: linear-gradient(90deg, #4B8038, #0F4C26);
}
@media only screen and (min-width: 1024px) {
  .page-template-wb-full-width #sidecar,
  .page-template-wb-default #sidecar {
    top: 0;
  }
}
@media only screen and (min-width: 1024px) {
  .page-template-wb-full-width nav#sidecar ul#menu-wildcat-bluff-menu,
  .page-template-wb-default nav#sidecar ul#menu-wildcat-bluff-menu {
    margin: 150px auto 200px;
  }
}
.page-template-wb-full-width #default #sidebar .sidebar_inner,
.page-template-wb-default #default #sidebar .sidebar_inner {
  background: #0F4C26;
}
.page-template-wb-full-width #sidecar-toggle span:before,
.page-template-wb-default #sidecar-toggle span:before {
  background: #0F4C26;
}
.page-template-wb-full-width #sidecar-toggle span:after,
.page-template-wb-default #sidecar-toggle span:after {
  background: #0F4C26;
}
@media only screen and (min-width: 1024px) {
  .page-template-wb-full-width #sidecar-toggle,
  .page-template-wb-default #sidecar-toggle {
    background: transparent;
    color: white;
    display: flex;
  }
  .page-template-wb-full-width #sidecar-toggle span,
  .page-template-wb-default #sidecar-toggle span {
    color: white;
  }
  .page-template-wb-full-width #sidecar-toggle.active span,
  .page-template-wb-default #sidecar-toggle.active span {
    color: #1A3A68;
  }
  .page-template-wb-full-width #sidecar-toggle span:before,
  .page-template-wb-default #sidecar-toggle span:before {
    background: white;
  }
  .page-template-wb-full-width #sidecar-toggle span:after,
  .page-template-wb-default #sidecar-toggle span:after {
    background: white;
  }
}
.page-template-wb-full-width .banner__image:before,
.page-template-wb-default .banner__image:before {
  background-color: #0F4C26;
  background-image: none;
  opacity: 0.8;
}
.page-template-wb-full-width .logo-link,
.page-template-wb-default .logo-link {
  background-image: url("/wp-content/themes/source/assets/logos/wcb_logo.svg");
  background-size: contain;
  padding: 0 0 20%;
}
@media only screen and (min-width: 1024px) {
  .page-template-wb-full-width .logo-link,
  .page-template-wb-default .logo-link {
    background-image: url("/wp-content/themes/source/assets/logos/wcb_logo_white.svg");
  }
}
.page-template-wb-full-width footer,
.page-template-wb-default footer {
  padding: 0 30px;
}
.page-template-wb-full-width footer .footer-wrap,
.page-template-wb-default footer .footer-wrap {
  background: #E9EFEB;
}
.page-template-wb-full-width footer .footer-newsletter #mc_embed_signup form input[type=text],
.page-template-wb-full-width footer .footer-newsletter #mc_embed_signup form input[type=email],
.page-template-wb-default footer .footer-newsletter #mc_embed_signup form input[type=text],
.page-template-wb-default footer .footer-newsletter #mc_embed_signup form input[type=email] {
  background: #d0dccc;
}
.page-template-wb-full-width footer .footer-newsletter #mc_embed_signup form input[type=text]::placeholder,
.page-template-wb-full-width footer .footer-newsletter #mc_embed_signup form input[type=email]::placeholder,
.page-template-wb-default footer .footer-newsletter #mc_embed_signup form input[type=text]::placeholder,
.page-template-wb-default footer .footer-newsletter #mc_embed_signup form input[type=email]::placeholder {
  color: #0F4C26;
  opacity: 0.4; /* Firefox */
}
.page-template-wb-full-width footer .footer-newsletter #mc_embed_signup form input[type=text]::-ms-input-placeholder,
.page-template-wb-full-width footer .footer-newsletter #mc_embed_signup form input[type=email]::-ms-input-placeholder,
.page-template-wb-default footer .footer-newsletter #mc_embed_signup form input[type=text]::-ms-input-placeholder,
.page-template-wb-default footer .footer-newsletter #mc_embed_signup form input[type=email]::-ms-input-placeholder { /* Edge 12 -18 */
  color: #0F4C26;
}
.page-template-wb-full-width footer .footer-newsletter #mc_embed_signup form .mc-heading,
.page-template-wb-default footer .footer-newsletter #mc_embed_signup form .mc-heading {
  color: #0F4C26;
}
.page-template-wb-full-width footer .footer-newsletter #mc_embed_signup form .button-wrap input[type=submit],
.page-template-wb-default footer .footer-newsletter #mc_embed_signup form .button-wrap input[type=submit] {
  color: #0F4C26;
}
.page-template-wb-full-width footer h3, .page-template-wb-full-width footer .footer-meta span,
.page-template-wb-default footer h3,
.page-template-wb-default footer .footer-meta span {
  color: #0F4C26;
}
.page-template-wb-full-width footer .footer-meta a,
.page-template-wb-default footer .footer-meta a {
  background-image: linear-gradient(0deg, rgba(0, 0, 0, 0) 50%, #0F4C26 0%);
  color: #0F4C26;
}
.page-template-wb-full-width .slide-container,
.page-template-wb-default .slide-container {
  display: none;
  width: 100%;
  align-items: stretch;
  height: calc(100% - 100px);
  padding: 0px 20px;
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  justify-content: center;
  z-index: 10000000000;
}
@media only screen and (min-width: 768px) {
  .page-template-wb-full-width .slide-container,
  .page-template-wb-default .slide-container {
    padding: 0px 60px;
  }
}
.page-template-wb-full-width .slide-container.active,
.page-template-wb-default .slide-container.active {
  display: flex;
}
.page-template-wb-full-width .slide-container__slides-content,
.page-template-wb-default .slide-container__slides-content {
  justify-content: center;
  display: flex;
  flex-direction: column;
}
.page-template-wb-full-width .slide-container__slides-item,
.page-template-wb-default .slide-container__slides-item {
  background-image: linear-gradient(#226231, #0F4C26);
  clip-path: url(#trails-slide-clip);
  display: none;
  flex-direction: column;
  justify-content: center;
  padding: 30px;
  position: relative;
}
@media only screen and (min-width: 768px) {
  .page-template-wb-full-width .slide-container__slides-item,
  .page-template-wb-default .slide-container__slides-item {
    padding: 60px;
  }
}
.page-template-wb-full-width .slide-container__slides-item.active,
.page-template-wb-default .slide-container__slides-item.active {
  display: flex;
}
.page-template-wb-full-width .slide-container__slides-item .close-slides,
.page-template-wb-default .slide-container__slides-item .close-slides {
  cursor: pointer;
  position: absolute;
  right: 20px;
  top: 20px;
}
.page-template-wb-full-width .slide-container__slides-container,
.page-template-wb-default .slide-container__slides-container {
  display: flex;
  gap: 20px;
}
.page-template-wb-full-width .slide-container__slides-container i,
.page-template-wb-default .slide-container__slides-container i {
  color: white;
}
.page-template-wb-full-width .slide-container__slides-container .image-carousel.themed .carousel-controls .carousel-indices .carousel-index,
.page-template-wb-default .slide-container__slides-container .image-carousel.themed .carousel-controls .carousel-indices .carousel-index {
  border: 0 solid #50BAE8;
}
.page-template-wb-full-width .slide-container__slides-container > div,
.page-template-wb-default .slide-container__slides-container > div {
  flex: 1 1 auto;
  width: 100%;
}
@media only screen and (min-width: 768px) {
  .page-template-wb-full-width .slide-container__slides-container > div,
  .page-template-wb-default .slide-container__slides-container > div {
    width: 50%;
  }
}
.page-template-wb-full-width .slide-container h1, .page-template-wb-full-width .slide-container h2, .page-template-wb-full-width .slide-container h3, .page-template-wb-full-width .slide-container h4, .page-template-wb-full-width .slide-container h5, .page-template-wb-full-width .slide-container h6, .page-template-wb-full-width .slide-container p,
.page-template-wb-default .slide-container h1,
.page-template-wb-default .slide-container h2,
.page-template-wb-default .slide-container h3,
.page-template-wb-default .slide-container h4,
.page-template-wb-default .slide-container h5,
.page-template-wb-default .slide-container h6,
.page-template-wb-default .slide-container p {
  color: white;
}
.page-template-wb-full-width .slide-container__footer,
.page-template-wb-default .slide-container__footer {
  align-items: center;
  color: white;
  display: flex;
  justify-content: space-between;
  width: 100%;
}
.page-template-wb-full-width .slide-container__footer > div,
.page-template-wb-default .slide-container__footer > div {
  align-items: center;
  cursor: pointer;
  display: flex;
  gap: 10px;
  width: 100%;
}
.page-template-wb-full-width .slide-container__footer .next-toggle,
.page-template-wb-default .slide-container__footer .next-toggle {
  justify-content: flex-end;
}

.home-icon {
  display: none;
}
@media only screen and (min-width: 1024px) {
  .home-icon {
    display: flex;
  }
}

.page-template-wb-home h2, .page-template-wb-home h3, .page-template-wb-home h4, .page-template-wb-home h5, .page-template-wb-home h6, .page-template-wb-home p, .page-template-wb-home li {
  color: #0F4C26;
}
.page-template-wb-home ul li {
  list-style-image: url(/wp-content/themes/source/assets/icons/ui/list-icon-green.svg);
}
@media only screen and (min-width: 1024px) {
  .page-template-wb-home header#navigation.header-show {
    background: #0F4C26;
  }
}
.page-template-wb-home .quick-buttons a {
  color: #0F4C26;
}
@media only screen and (min-width: 1024px) {
  .page-template-wb-home .quick-buttons {
    display: flex;
  }
}
.page-template-wb-home #sidecar-toggle {
  color: #0F4C26;
}
.page-template-wb-home #sidecar-toggle span:before {
  background: #0F4C26;
}
.page-template-wb-home #sidecar-toggle span:after {
  background: #0F4C26;
}
@media only screen and (min-width: 1024px) {
  .page-template-wb-home #sidecar-toggle {
    background: transparent;
    color: white;
    display: flex;
  }
  .page-template-wb-home #sidecar-toggle span {
    color: white;
  }
  .page-template-wb-home #sidecar-toggle.active span {
    color: #0F4C26;
  }
  .page-template-wb-home #sidecar-toggle span:before {
    background: white;
  }
  .page-template-wb-home #sidecar-toggle span:after {
    background: white;
  }
}
.page-template-wb-home .footer-newsletter #mc_embed_signup form input[type=text],
.page-template-wb-home .footer-newsletter #mc_embed_signup form input[type=email] {
  background: #d0dccc;
}
.page-template-wb-home .footer-newsletter #mc_embed_signup form input[type=text]::placeholder,
.page-template-wb-home .footer-newsletter #mc_embed_signup form input[type=email]::placeholder {
  color: #0F4C26;
  opacity: 0.4; /* Firefox */
}
.page-template-wb-home .footer-newsletter #mc_embed_signup form input[type=text]::-ms-input-placeholder,
.page-template-wb-home .footer-newsletter #mc_embed_signup form input[type=email]::-ms-input-placeholder { /* Edge 12 -18 */
  color: #0F4C26;
}
.page-template-wb-home .footer-newsletter #mc_embed_signup form .mc-heading {
  color: #0F4C26;
}
.page-template-wb-home .footer-newsletter #mc_embed_signup form .button-wrap input[type=submit] {
  color: #0F4C26;
}
.page-template-wb-home h3, .page-template-wb-home .footer-meta span {
  color: #0F4C26;
}
.page-template-wb-home .footer-meta a {
  background-image: linear-gradient(0deg, rgba(0, 0, 0, 0) 50%, #0F4C26 0%);
  color: #0F4C26;
}
.page-template-wb-home .wave-content__content h2, .page-template-wb-home .wave-content__content h3, .page-template-wb-home .wave-content__content h4, .page-template-wb-home .wave-content__content h5, .page-template-wb-home .wave-content__content h6, .page-template-wb-home .wave-content__content p, .page-template-wb-home .wave-content__content li {
  color: #0F4C26 !important;
}
.page-template-wb-home .wave-content__content a {
  border: 2px solid #0F4C26 !important;
  color: #0F4C26 !important;
}
.page-template-wb-home .wave-content__content ul li {
  list-style-image: url(/wp-content/themes/source/assets/icons/ui/list-icon-green.svg) !important;
}
.page-template-wb-home .events-slider header {
  gap: 50px;
  justify-content: flex-start;
}
.page-template-wb-home .events-slider a.button, .page-template-wb-home .events-slider .dcc-image-row a, .dcc-image-row .page-template-wb-home .events-slider a {
  border: 2px solid #0F4C26;
  color: #0F4C26;
}
.page-template-wb-home .events-slider a.button:hover, .page-template-wb-home .events-slider .dcc-image-row a:hover, .dcc-image-row .page-template-wb-home .events-slider a:hover {
  border: 2px solid #EEF2EF;
  color: white;
}
.page-template-wb-home .event-cards .event-card h4 a, .page-template-wb-home .event-cards .event-card__date-text, .page-template-wb-home .event-cards .event-card__tags a {
  color: #0F4C26;
}
.page-template-wb-home .eventsSliderControls svg path, .page-template-wb-home .eventsSliderControls svg circle, .page-template-wb-home .eventsSliderControls svg ellipse, .page-template-wb-home .pagePortalsSliderControls svg path, .page-template-wb-home .pagePortalsSliderControls svg circle, .page-template-wb-home .pagePortalsSliderControls svg ellipse {
  stroke: #0F4C26;
}
.page-template-wb-home .text-block h1, .page-template-wb-home .text-block h2, .page-template-wb-home .text-block h3, .page-template-wb-home .text-block h4, .page-template-wb-home .text-block h5, .page-template-wb-home .text-block h6, .page-template-wb-home .text-block p, .page-template-wb-home .text-block li {
  color: #0F4C26;
}
.page-template-wb-home .text-block ul li {
  list-style-image: url(/wp-content/themes/source/assets/icons/ui/list-icon-green.svg);
}
.page-template-wb-home .page-portals__item-content {
  background: #4B8038;
}
.page-template-wb-home .page-portals__item-content h3 {
  color: white;
}
.page-template-wb-home .page-portals__item-content span {
  color: #0F4C26;
}
.page-template-wb-home #content {
  overflow: hidden;
  padding: 0;
}
.page-template-wb-home .logo-link {
  background-image: url("/wp-content/themes/source/assets/logos/wcb_logo.svg");
  background-size: contain;
  padding: 0 0 20%;
}
@media only screen and (min-width: 1024px) {
  .page-template-wb-home .logo-link {
    background-image: url("/wp-content/themes/source/assets/logos/wcb_logo_white.svg");
  }
}
@media only screen and (min-width: 1024px) {
  .page-template-wb-home #sidecar-toggle {
    background: transparent;
    color: white;
    display: flex;
  }
  .page-template-wb-home #sidecar-toggle.active span {
    color: #0F4C26;
  }
  .page-template-wb-home #sidecar-toggle span:before {
    background: white;
  }
  .page-template-wb-home #sidecar-toggle span:after {
    background: white;
  }
}
@media only screen and (min-width: 1024px) {
  .page-template-wb-home nav#sidecar ul#menu-discovery-center-menu {
    margin: 150px auto 200px;
  }
}
.page-template-wb-home #sidecar {
  background-image: linear-gradient(90deg, #4B8038, #0F4C26);
}
@media only screen and (min-width: 1024px) {
  .page-template-wb-home #sidecar {
    top: 0;
  }
}
.page-template-wb-home footer {
  padding: 0 30px;
}
@media only screen and (min-width: 1024px) {
  .page-template-wb-home footer {
    padding: 0 30px;
  }
}

.wb-image-row {
  gap: 30px;
  padding: 0 30px;
}
@media only screen and (min-width: 768px) {
  .wb-image-row {
    padding: 0 100px;
  }
}
@media only screen and (min-width: 768px) {
  .wb-image-row > div:nth-of-type(2) {
    padding: 0 100px 0 0;
  }
}
.wb-image-row .wb_home_image {
  aspect-ratio: 1;
  display: flex;
  position: relative;
  margin: 0 0 0 0;
}
@media only screen and (min-width: 768px) {
  .wb-image-row .wb_home_image {
    margin: -200px 0 0 0;
  }
}
.wb-image-row .wb_home_image img {
  height: 100%;
  object-fit: cover;
  width: 100%;
}
.wb-image-row .wb_home_image__clip {
  aspect-ratio: 1;
  clip-path: url(#wbImageMask);
}
@keyframes step {
  0% {
    opacity: 0;
  }
  20% {
    opacity: 1;
  }
  90% {
    opacity: 1;
  }
  95% {
    opacity: 0;
  }
  100% {
    opacity: 0;
  }
}
.wb-image-row .wb_home_image_paws .paw {
  animation: step 10s forwards infinite;
  opacity: 0;
  position: absolute;
}
.wb-image-row .wb_home_image_paws .paw:nth-of-type(1) {
  animation-delay: 0.3s;
  bottom: 50px;
  left: -85px;
}
.wb-image-row .wb_home_image_paws .paw:nth-of-type(2) {
  animation-delay: 0.6s;
  top: -80px;
  left: 250px;
}
.wb-image-row .wb_home_image_paws .paw:nth-of-type(3) {
  animation-delay: 0.9s;
  top: -120px;
  left: 430px;
}

.wb_home_section_paws .paw {
  animation: step 10s forwards infinite;
  opacity: 0;
  position: absolute;
}
.wb_home_section_paws .paw svg {
  width: 50px;
}
@media only screen and (min-width: 768px) {
  .wb_home_section_paws .paw {
    width: auto;
  }
}
.wb_home_section_paws .paw:nth-of-type(1) {
  animation-delay: 2.2s;
  bottom: 130px;
  right: -25px;
}
@media only screen and (min-width: 768px) {
  .wb_home_section_paws .paw:nth-of-type(1) {
    bottom: 170px;
    right: 15px;
  }
}
.wb_home_section_paws .paw:nth-of-type(2) {
  animation-delay: 2.4s;
  bottom: 30px;
  right: -15px;
}
@media only screen and (min-width: 768px) {
  .wb_home_section_paws .paw:nth-of-type(2) {
    bottom: 50px;
    right: -35px;
  }
}
.wb_home_section_paws .paw:nth-of-type(3) {
  animation-delay: 2.6s;
  bottom: -10px;
  right: 65px;
}
@media only screen and (min-width: 768px) {
  .wb_home_section_paws .paw:nth-of-type(3) {
    bottom: 20px;
    right: 85px;
  }
}
.wb_home_section_paws .paw:nth-of-type(4) {
  animation-delay: 2.8s;
  bottom: -90px;
  right: 25px;
}
@media only screen and (min-width: 768px) {
  .wb_home_section_paws .paw:nth-of-type(4) {
    bottom: -100px;
    right: 45px;
  }
}
.wb_home_section_paws .paw:nth-of-type(5) {
  animation-delay: 3s;
  bottom: -90px;
  display: none;
  right: 180px;
}
@media only screen and (min-width: 768px) {
  .wb_home_section_paws .paw:nth-of-type(5) {
    display: block;
  }
}

.wb-wave-section:before {
  background-image: url("/wp-content/themes/source/assets/layout/wb-wave-background.svg");
  content: "";
  height: 900px;
  left: 0;
  position: absolute;
  top: 50px;
  background-size: cover;
  width: 100%;
  z-index: -1;
}
@media only screen and (min-width: 768px) {
  .wb-wave-section:before {
    height: 980px;
    left: 0;
    position: absolute;
    top: -150px;
    background-size: cover;
    width: 100%;
    z-index: -1;
  }
}
@media only screen and (min-width: 1440px) {
  .wb-wave-section:before {
    height: 1280px;
  }
}

.page-template-wb-home .page-portals__item-content p {
  color: #FFF;
}

.wcb-events {
  padding: 30px;
}
@media only screen and (min-width: 768px) {
  .wcb-events {
    padding: 50px;
  }
}
