@charset "UTF-8";
/* Compile all imports */
/* Global Variables */
@font-face {
  font-family: "Sucrose-Bold";
  src: url("/wp-content/themes/speak/fonts/Sucrose-Bold.woff") format("woff");
  src: url("/wp-content/themes/speak/fonts/Sucrose-Bold.woff2") format("woff2");
  src: url("/wp-content/themes/speak/fonts/Sucrose-Bold.ttf") format("truetype");
  font-weight: 700;
  font-style: normal;
}
/* Global Mixins */
/* Animations */
@-webkit-keyframes up-out-in {
  0% {
    transform: translateY(0);
    opacity: 1;
  }
  48% {
    transform: translateY(-100%);
    opacity: 1;
  }
  49% {
    transform: translateY(-100%);
    opacity: 0;
  }
  51% {
    transform: translateY(100%);
    opacity: 0;
  }
  52% {
    transform: translateY(100%);
    opacity: 1;
  }
  100% {
    transform: translateY(0);
    opacity: 1;
  }
}
@-moz-keyframes up-out-in {
  0% {
    transform: translateY(0);
    opacity: 1;
  }
  48% {
    transform: translateY(-100%);
    opacity: 1;
  }
  49% {
    transform: translateY(-100%);
    opacity: 0;
  }
  51% {
    transform: translateY(100%);
    opacity: 0;
  }
  52% {
    transform: translateY(100%);
    opacity: 1;
  }
  100% {
    transform: translateY(0);
    opacity: 1;
  }
}
@keyframes up-out-in {
  0% {
    transform: translateY(0);
    opacity: 1;
  }
  48% {
    transform: translateY(-100%);
    opacity: 1;
  }
  49% {
    transform: translateY(-100%);
    opacity: 0;
  }
  51% {
    transform: translateY(100%);
    opacity: 0;
  }
  52% {
    transform: translateY(100%);
    opacity: 1;
  }
  100% {
    transform: translateY(0);
    opacity: 1;
  }
}
@-webkit-keyframes scroll-loop {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-50%);
  }
}
@-moz-keyframes scroll-loop {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-50%);
  }
}
@keyframes scroll-loop {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-50%);
  }
}
@keyframes ticketDance {
  0%, 10%, 20%, 100% {
    right: -120px;
  }
  5%, 15% {
    right: -115px;
  }
}
@keyframes ticketDisplay {
  0% {
    right: -120px;
  }
  100% {
    right: 0;
  }
}
/* Reset
----------------------------------------------------------------- */
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, font, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td {
  border: 0;
  font-family: inherit;
  font-style: inherit;
  font-weight: inherit;
  margin: 0;
  padding: 0;
  vertical-align: top;
}

html {
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
}

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

ol, ul {
  list-style: none;
}

table { /* tables still need 'cellspacing="0"' in the markup */
  border-collapse: separate;
  border-spacing: 0;
}

caption, th, td {
  font-weight: normal;
  text-align: left;
}

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

blockquote, q {
  quotes: "" "";
}

body:not(.touch-device) a:hover {
  outline: 0;
}

a img {
  border: 0;
}

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

html {
  position: relative;
  width: 100%;
  height: 100%;
  display: block;
  margin: 0;
  padding: 0;
  background: white;
  font-size: 62.5%;
  overflow-x: hidden;
  overflow-y: scroll;
  -webkit-overflow-scrolling: auto;
  scroll-behavior: smooth;
  overscroll-behavior: none;
  z-index: 0;
}
html.unscrollable {
  overflow: hidden;
}

body {
  position: relative;
  width: 100%;
  display: block;
  margin: 0;
  padding: 0;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  overflow: hidden;
  z-index: 0;
}

body,
button,
input,
select,
textarea,
p,
li {
  font-family: "Open Sans", sans-serif;
  font-size: 2rem;
  letter-spacing: 0.36px;
  line-height: 2.5rem;
  font-weight: 300;
  color: #000000;
}

img {
  max-width: 100%;
  border: 0;
  vertical-align: top;
}

.standard-button {
  border: 2px solid black;
  height: 100%;
  min-height: 47px;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 7px;
  background: rgba(179, 224, 83, 0.25);
  position: relative;
  overflow: hidden;
  margin: 0 auto;
  width: 100%;
  max-width: 300px;
  margin-top: 48px;
}
@media only screen and (min-width: 1080px) {
  .standard-button {
    width: fit-content;
    margin-top: 48px;
  }
}
.standard-button.left {
  margin-left: 5%;
}
.standard-button.right {
  margin-right: 5%;
}
.standard-button:before {
  content: "";
  position: absolute;
  height: 100px;
  width: 100px;
  background: #b3e053;
  border-radius: 50%;
  bottom: -100px;
  transition: all 0.33s ease-in-out;
}
.standard-button:hover:before {
  width: 400px;
  height: 400px;
  bottom: -125px;
}
@media only screen and (min-width: 1080px) {
  .standard-button:hover:before {
    width: 250px;
    height: 250px;
  }
}
.standard-button:hover a {
  color: black !important;
}
.standard-button a {
  font-size: 15px !important;
  line-height: 20px !important;
  text-align: center;
  position: relative !important;
  z-index: 1 !important;
  letter-spacing: 0.3px;
  font-weight: 500 !important;
  text-transform: uppercase;
  padding: 13px 44px;
}

#gdpr-bar {
  background: #765ca7;
  width: 100%;
  position: fixed;
  bottom: 0px;
  left: 0px;
  display: none;
  z-index: 999999999;
  padding: 20px;
  text-align: center;
  padding-bottom: 30px;
}
#gdpr-bar.hide-gdpr {
  display: none;
}
#gdpr-bar .flex-col-xs-12 {
  display: flex !important;
  justify-content: center;
  align-items: center;
  flex-direction: column-reverse !important;
}
#gdpr-bar #gdpr-accept {
  background: #b3e053 !important;
  font-size: 16px;
  font-weight: 500;
  padding: 10px 30px;
  border-radius: 10px;
  position: relative;
  height: 40px;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 150px;
  margin: 0 auto;
  margin-top: 20px;
  cursor: pointer;
  transition: all 0.33s ease-in-out;
}
#gdpr-bar #gdpr-accept:hover {
  background: white !important;
}
#gdpr-bar p {
  margin: 0;
  font-weight: 500;
  font-size: 16px;
  line-height: 22px;
  color: white;
}
#gdpr-bar p a {
  color: white;
}
#gdpr-bar p a:hover {
  color: #f79e32;
}

.home #gdpr-bar {
  display: none;
}

.page-pop-up {
  width: 90%;
  max-width: 700px;
  margin: 0 auto;
  background-color: white;
  background-image: url("/wp-content/themes/speak/assets/images/leaf-background.svg");
  background-repeat: no-repeat;
  background-size: 250%;
  background-position: center;
  height: 70vh;
  overflow: hidden auto;
  border: 2px solid black;
  border-radius: 30px;
  box-shadow: rgba(100, 100, 111, 0.2) 0px 7px 29px 0px;
  position: fixed;
  top: 100px;
  left: 50%;
  transform: translate(-50%, 0%);
  padding: 30px;
  display: block;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}
@media only screen and (min-width: 1080px) {
  .page-pop-up {
    height: auto;
    overflow: auto;
    display: flex;
    top: 50vh;
    transform: translate(-50%, -50%);
  }
}
.page-pop-up:before {
  content: "";
  display: none;
  position: absolute;
  height: 100%;
  width: 100%;
  bottom: 0px;
  opacity: 0.65;
  background: linear-gradient(#b3e053, #f79e32);
  border-radius: 30px;
}
@media only screen and (min-width: 1080px) {
  .page-pop-up:before {
    display: flex;
  }
}
.page-pop-up__container {
  display: flex;
  flex-direction: column;
}
@media only screen and (min-width: 1080px) {
  .page-pop-up__container {
    flex-direction: row;
  }
}
.page-pop-up__image-container {
  display: flex;
  margin-bottom: 10px;
}
@media only screen and (min-width: 1080px) {
  .page-pop-up__image-container {
    width: 50%;
  }
}
.page-pop-up__image-container img {
  position: relative;
  width: 350px;
  margin: 0 auto;
}
@media only screen and (min-width: 1080px) {
  .page-pop-up__image-container img {
    width: 100%;
  }
}
@media only screen and (min-width: 1080px) {
  .page-pop-up__content-container {
    width: 50%;
  }
}
.page-pop-up__title {
  text-align: center;
  position: relative;
  margin: 0 auto;
  margin-bottom: 20px;
  max-width: 500px;
}
.page-pop-up__message {
  font-weight: 500;
  position: relative;
  font-family: "Open Sans", sans-serif;
  text-align: center;
}
@media only screen and (min-width: 1080px) {
  .page-pop-up__message {
    text-align: left;
  }
}
.page-pop-up__submessage {
  font-size: 14px;
  font-style: italic;
  font-weight: 500;
  position: relative;
  font-family: "Open Sans", sans-serif;
  text-align: center;
}
@media only screen and (min-width: 1080px) {
  .page-pop-up__submessage {
    text-align: left;
  }
}
.page-pop-up__button {
  margin-top: 20px;
  background: #765ca7;
  font-size: 18px;
  text-decoration: none;
  font-weight: 500;
  color: white;
  margin: 0 auto;
  font-family: "Open Sans", sans-serif;
  position: relative;
  height: 50px;
  width: 200px;
  padding: 20px;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 14px;
  transition: all 0.33s ease-in-out;
  border: 2px solid #000000;
}
@media only screen and (min-width: 1080px) {
  .page-pop-up__button {
    margin-top: 20px;
  }
}
.page-pop-up__button:hover {
  background: #f79e32;
  color: black;
}
.page-pop-up__dismiss {
  height: 30px;
  width: 30px;
  border-radius: 50%;
  padding: 20px;
  border: 2px solid #b3e053;
  background-color: white;
  opacity: 0.75;
  background-size: 50%;
  background-position: center;
  background-repeat: no-repeat;
  background-image: url("/wp-content/themes/speak/assets/icons/ui/x-black.svg");
  position: absolute;
  top: 10px;
  transition: all 0.33s ease-in-out;
  cursor: pointer;
  right: 10px;
}
.page-pop-up__dismiss:hover {
  transform: scale(1.1);
  opacity: 1;
}

.wpcf7-form.sent > label, .wpcf7-form.sent > input {
  display: none;
}
.wpcf7-form.sent > div:not(.wpcf7-response-output) {
  display: none;
}
.wpcf7-form.sent .wpcf7-response-output {
  display: block;
  padding: 0;
}
.wpcf7-form.sent .wpcf7-response-output::before {
  display: none;
}

#blackbaud-donation-form_91035394-542d-40d9-a0ed-c808b8bc8515 iframe {
  width: 100%;
  margin: 0 auto !important;
  display: block;
}

/* Links */
a:not([class*=button]) {
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
  font-weight: 700;
  color: #000000;
  text-decoration: none;
  opacity: 1;
}
body:not(.touch-device) a:not([class*=button]):hover {
  color: #1279a8;
}
.reverse a:not([class*=button]) {
  color: #ffffff;
}
body:not(.touch-device) .reverse a:not([class*=button]):hover {
  color: rgba(255, 255, 255, 0.5);
}
#content a:not([class*=button]), #colophon a:not([class*=button]) {
  transition: all 0.3s ease 0s;
}
nav a:not([class*=button]) {
  color: inherit;
  font-weight: inherit;
}
body:not(.touch-device) nav a:not([class*=button]):hover {
  color: inherit;
}

a:not([class*=button]):visited, a:not([class*=button]):active, a:not([class*=button]):focus {
  text-decoration: none;
}

.entry-content h1 a:not([class*=button]), .entry-content h2 a:not([class*=button]), .entry-content h3 a:not([class*=button]), .entry-content h4 a:not([class*=button]), .entry-content h5 a:not([class*=button]), .entry-content h6 a:not([class*=button]), .entry-content p a:not([class*=button]), .entry-content li a:not([class*=button]) {
  max-width: 100%;
  white-space: pre-wrap;
  word-wrap: break-word;
}

/* Main Navigation */
.main-navigation {
  position: relative;
  width: auto;
  display: none;
  margin: 0;
  padding: 0;
  transition: all 0.3s ease 0s;
  opacity: 1;
  z-index: 1;
}
@media only screen and (min-width: 1080px) {
  .main-navigation {
    display: block;
  }
}
.main-navigation .menu {
  width: auto;
  display: inline-block;
  margin: 0;
  padding: 0 1rem;
  vertical-align: top;
}
.main-navigation .sub-menu {
  position: absolute;
  width: auto;
  top: 100%;
  right: -2rem;
  margin: 0;
  padding: 2rem 0 1rem;
  background: #ffffff;
  transition: all 0.3s ease 0s, visibility 0s ease 0.3s;
  visibility: hidden;
  opacity: 0;
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
}
.main-navigation li {
  position: relative;
  width: fit-content;
  display: inline-block;
  margin: 0 1rem;
  padding: 0;
  font-size: 2rem;
  line-height: 4rem;
  font-weight: 300;
  color: #000000;
  vertical-align: top;
}
.main-navigation li:before, .main-navigation li:after {
  content: "";
  position: absolute;
  height: 0.1rem;
  display: block;
  bottom: 0.5rem;
  right: 0;
  margin: 0;
  padding: 0;
}
.main-navigation li:after {
  width: 0;
  background: #1279a8;
  transition: width 0.3s ease 0s;
}
.main-navigation li.current-menu-item:before {
  width: 100%;
  background: #cac9c8;
}
body:not(.touch-device) .main-navigation li:hover:after {
  width: 100%;
  right: initial;
  left: 0;
}
body:not(.touch-device) .main-navigation li:hover > .sub-menu, .main-navigation li[aria-expanded=true] > .sub-menu {
  transition: all 0.3s ease 0s, visibility 0s ease 0s;
  visibility: visible;
  opacity: 1;
}
.main-navigation li li {
  width: auto;
  margin: 0 2rem 1rem 2rem;
  line-height: 2rem;
  color: #000000;
}
.main-navigation li li:before, .main-navigation li li:after {
  bottom: 0;
}
.main-navigation li li.menu-item-has-children .sub-menu-toggle {
  line-height: 1.8rem;
}
.main-navigation li a {
  width: auto;
  display: inline-block;
  margin: 0;
  padding: 0;
  white-space: nowrap;
  vertical-align: top;
}

.mobile-navigation {
  width: 100%;
  display: block;
  margin: 0;
  padding: 0 2rem;
}
.mobile-navigation .menu {
  width: 100%;
  display: block;
  margin: 0;
  padding: 0;
}
.mobile-navigation .sub-menu {
  width: 100%;
  max-height: 0;
  display: block;
  flex: 1, 0, auto;
  margin: 0;
  padding: 0;
  transition: all 0.6s ease 0s;
  overflow: hidden;
}
.mobile-navigation li {
  position: relative;
  width: 100%;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  margin: 0 0 1.5rem 0;
  padding: 0;
  font-family: "Sucrose-Bold";
  font-size: clamp(3.5rem, 5vw, 4.5rem);
  line-height: clamp(3.5rem, 5vw, 4.5rem);
  color: #000000;
}
.mobile-navigation li.current-menu-itema a:before {
  width: 100%;
  background: #cac9c8;
}
body:not(.touch-device) .mobile-navigation li:hover a:after {
  width: 100%;
  right: initial;
  left: 0;
}
.mobile-navigation li.menu-item-has-children .sub-menu-toggle {
  width: auto;
  display: inline-block;
  margin: 0 0 0 0.5rem;
  padding: 0;
  font-size: 2rem;
  line-height: 3rem;
  transition: all 0.3s ease 0s;
  vertical-align: top;
  cursor: pointer;
}
.mobile-navigation li.menu-item-has-children.open .sub-menu-toggle {
  transform: rotate(135deg);
}
.mobile-navigation li.open .sub-menu, .mobile-navigation li[aria-expanded=true] .sub-menu {
  transition: all 1.8s ease 0s;
  max-height: 999px;
}
.mobile-navigation li.open .sub-menu-toggle, .mobile-navigation li[aria-expanded=true] .sub-menu-toggle {
  transform: rotate(135deg);
}
.mobile-navigation li li {
  margin: 1rem 0 0 0;
  font-size: 1.6rem;
  line-height: 2rem;
}
.mobile-navigation a {
  position: relative;
  width: auto;
  display: inline-block;
  margin: 0;
  padding: 0 0 0.5rem 0;
  white-space: nowrap;
  vertical-align: top;
}
.mobile-navigation a:before, .mobile-navigation a:after {
  content: "";
  position: absolute;
  height: 0.1rem;
  display: block;
  bottom: 0;
  right: 0;
  margin: 0;
  padding: 0;
}
.mobile-navigation a:after {
  width: 0;
  background: #1279a8;
  transition: width 0.3s ease 0s;
}

.social-navigation {
  width: auto;
  display: inline-block;
  padding: 2rem 0 0 0;
  vertical-align: top;
}
.social-navigation .menu {
  width: 100%;
  display: block;
  margin: 0;
  padding: 0 1rem;
}
.social-navigation .menu li {
  width: auto;
  display: inline-block;
  margin: 0 1rem;
  padding: 0;
  vertical-align: top;
}
.social-navigation .menu li a {
  width: 100%;
  display: block;
  margin: 0;
  padding: 0.6rem;
  border: 0.1rem solid #ffffff;
  border-radius: 2rem;
}
.social-navigation .menu li a svg {
  width: 1.6rem;
  height: 1.6rem;
  display: block;
  margin: 0;
  padding: 0;
  fill: #ffffff;
  transition: all 0.3s ease 0s;
  opacity: 1;
}
.social-navigation .menu li a:hover {
  opacity: 0.5;
}

.footer-navigation {
  width: 100%;
  display: block;
}
.footer-navigation .menu {
  width: 100%;
  display: block;
  margin: 0;
  padding: 0;
}
.footer-navigation .menu > li {
  width: 100%;
  display: inline-block;
  margin: 0 0 4rem 0;
  padding: 0 2rem;
  font-size: 1.8rem;
  line-height: 2.5rem;
  font-weight: 700;
  vertical-align: top;
}
@media (min-width: 480px) {
  .footer-navigation .menu > li {
    width: 50%;
  }
}
@media (min-width: 840px) {
  .footer-navigation .menu > li {
    width: 33.333334%;
  }
}
@media (min-width: 1280px) {
  .footer-navigation .menu > li {
    width: 20%;
  }
}
.footer-navigation .sub-menu {
  width: 100%;
  display: block;
  margin: 0;
  padding: 0;
}
.footer-navigation li {
  width: 100%;
  display: block;
  margin: 0.5rem 0 0 0;
  padding: 0;
  font-size: 1.5rem;
  line-height: 2rem;
  font-weight: 300;
}
.footer-navigation a {
  width: auto;
  display: inline-block;
  margin: 0;
  padding: 0;
  vertical-align: top;
}

/* Headings */
h1,
h2,
h3,
h4,
h5,
h6 {
  clear: both;
  color: #000000;
  font-weight: 300;
  padding: 0 2rem;
  vertical-align: top;
}
h1.anim,
h2.anim,
h3.anim,
h4.anim,
h5.anim,
h6.anim {
  opacity: 0;
  transform: translateY(8rem);
  transition: all 0.9s ease 0s;
}
h1.anim.in-view,
h2.anim.in-view,
h3.anim.in-view,
h4.anim.in-view,
h5.anim.in-view,
h6.anim.in-view {
  opacity: 1;
  transform: translateY(0);
}

h1 {
  font-size: clamp(7rem, 10vw, 15rem);
  line-height: clamp(7rem, 10vw, 15rem);
  letter-spacing: -0.07em;
  margin: 0 0 2rem -0.4rem;
  font-family: "Sucrose-Bold";
}
@media only screen and (min-width: 1080px) {
  h1 {
    margin: 0 0 2rem -0.5vw;
  }
}
body.page:not(.home) h1:not(.small) {
  font-size: clamp(7rem, 15vw, 20rem);
  line-height: clamp(7rem, 15vw, 20rem);
}

h2 {
  font-size: 55px;
  line-height: 58px;
  letter-spacing: 0;
  font-weight: 700;
  font-family: "Sucrose-Bold";
  font-weight: 800;
  margin: 0 0 45px 0;
}
@media only screen and (min-width: 1080px) {
  h2 {
    font-size: 85px;
    line-height: 85px;
  }
}

h3 {
  font-size: 21px;
  line-height: 32px;
  letter-spacing: 0.5px;
  font-family: "Comfortaa", sans-serif;
  margin: 0 0 28px 0;
  color: #1279a8;
  font-weight: 800;
}
@media only screen and (min-width: 1080px) {
  h3 {
    font-size: 25px;
    line-height: 35px;
  }
}

h4 {
  font-size: 30px;
  line-height: 38px;
  font-family: "Rock Salt", cursive !important;
  letter-spacing: 0;
  margin: 0 0 0.5rem 0;
  color: #1279a8;
  font-family: "Comfortaa", sans-serif;
}
h4.entry-date [class*=material-] {
  font-size: 1.6rem;
  line-height: 1.6rem;
  margin: 0 0 0 0.4rem;
  color: #1279a8;
}
@media only screen and (min-width: 1080px) {
  h4 {
    font-size: 59px;
    line-height: 62px;
  }
}

h5 {
  font-weight: 700;
  margin: 0 0 2rem 0;
  font-family: "Sucrose-Bold";
  font-size: 30px;
  line-height: 35px;
}

h6 {
  font-size: 1.6rem;
  line-height: 22px;
  margin: 0 0 20px 0;
  font-weight: 600;
}
h6.copyright {
  margin: 0;
}

/* Body elements */
p {
  font-size: 18px;
  line-height: 2.5rem;
  font-weight: 300;
  margin: 0 0 2rem 0;
  padding: 0 2rem;
  color: #000000;
}
p.event-meta {
  margin: 0;
}
p.anim {
  opacity: 0;
  transform: translateY(6rem);
  transition: all 0.6s ease 0s;
}
p.anim.in-view {
  opacity: 1;
  transform: translateY(0);
}

strong, b {
  color: #000000;
  font-weight: 700;
}

ul, ol {
  width: 100%;
  margin: 0 0 2rem 0;
  padding: 0 0 0 2rem;
}
ul li, ol li {
  width: auto;
  display: block;
  margin: 0 0 1rem 0;
  padding: 0 2rem;
}
ul li.anim, ol li.anim {
  opacity: 0;
  transform: translateY(6rem);
  transition: all 0.6s ease 0s;
}
ul li.anim.in-view, ol li.anim.in-view {
  opacity: 1;
  transform: translateY(0);
}

ul {
  list-style: disc;
}

ol {
  list-style: decimal;
}

.text-block ul ol, .text-block ul ul, .text-block ol ul, .text-block ol ol,
.text-content ul ol,
.text-content ul ul,
.text-content ol ul,
.text-content ol ol {
  padding: 0;
  margin-top: 0.5rem;
}
.text-block li:last-child,
.text-content li:last-child {
  margin-bottom: 0;
}
.text-block ul > li:before,
.text-content ul > li:before {
  content: "●";
  width: 2rem;
  display: inline-block;
  margin: 0 0 0 -2rem;
  padding: 0;
  color: #000000;
  vertical-align: top;
}
.text-block ol,
.text-content ol {
  counter-reset: number;
}
.text-block ol > li,
.text-content ol > li {
  counter-increment: number1;
}
.text-block ol > li:before,
.text-content ol > li:before {
  content: counter(number) ".";
  width: 3.5rem;
  display: inline-block;
  margin: 0 0 0 -4rem;
  padding: 0 0.5rem 0 0;
  color: #000000;
  text-align: right;
  vertical-align: top;
}

li.anim {
  opacity: 0;
  transform: translateY(6rem);
  transition: all 0.6s ease 0s;
}
li.anim.in-view {
  opacity: 1;
  transform: translateY(0);
}

dt {
  font-weight: 700;
}

dd {
  margin: 0 2rem 2rem 0;
}

dfn, cite, em, i {
  font-style: italic;
}

blockquote {
  position: relative;
  width: 100%;
  transition: all 0.9s ease 0s;
}
blockquote:before {
  content: "\e244";
  position: absolute;
  top: clamp(-2rem, -2vw, -1rem);
  right: calc(100% - 2rem);
  font-family: "Material Symbols Outlined";
  font-size: clamp(3rem, 5vw, 6rem);
  line-height: clamp(3rem, 5vw, 6rem);
  color: #1279a8;
  rotate: 180deg;
}
blockquote p {
  font-size: clamp(5rem, 7vw, 7rem);
  line-height: clamp(5rem, 7vw, 7rem);
}
blockquote h4 {
  position: relative;
}
blockquote h4:before {
  content: "";
  position: absolute;
  width: 2rem;
  height: 0.2rem;
  top: calc(50% - 0.1rem);
  left: 2rem;
  background: #1279a8;
}
blockquote h4, blockquote h6 {
  padding: 0 2rem 0 5rem;
}
blockquote.anim:not(.in-view) {
  transform: translateY(6rem);
  opacity: 0;
}

address {
  margin: 0 0 2rem 0;
}

pre {
  background: #eee;
  font-family: "Courier 10 Pitch", Courier, monospace;
  font-size: 1.6rem;
  line-height: 2rem;
  margin-bottom: 2em;
  padding: 2em;
  overflow: auto;
  max-width: 100%;
}

code, kbd, tt, var {
  font: 15px Monaco, Consolas, "Andale Mono", "DejaVu Sans Mono", monospace;
}

abbr, acronym {
  border-bottom: 1px dotted #666;
  cursor: help;
}

mark, ins {
  background: #fff9c0;
  text-decoration: none;
}

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

sup {
  bottom: 1ex;
}

sub {
  top: 0.5ex;
}

small {
  font-size: 75%;
}

big {
  font-size: 125%;
}

figure {
  margin: 0;
}

table {
  width: calc(100% - 3.9rem);
  margin: 0 1.9rem 2rem 2rem;
  padding: 0;
}
table thead,
table tbody,
table tr {
  width: 100%;
  margin: 0;
  padding: 0;
}
table td, table th {
  margin: 0;
  padding: 2rem 2rem 1.9rem 1.9rem;
  font-size: 1.8rem;
  line-height: 2.5rem;
  border-width: 0 0.1rem 0.1rem 0;
  border-style: solid;
  border-color: #ffffff;
}
table th {
  font-weight: 700;
  color: #ffffff;
  background-color: #000000;
}
table td {
  font-weight: 300;
  color: #000000;
  background-color: #eae9e8;
}

hr {
  background-color: #cac9c8;
  border: 0;
  height: 1px;
  margin-bottom: 2rem;
}

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

i, [class*=material-] {
  display: inline-block;
  font-size: inherit;
  line-height: inherit;
  color: inherit;
  vertical-align: top;
}

.uppercase {
  text-transform: uppercase;
}

.image-caption {
  position: absolute;
  width: 100%;
  bottom: 0;
  left: 0;
  padding: 1rem 2rem;
  font-size: 1.4rem;
  line-height: 2rem;
  font-weight: 300;
  background-image: linear-gradient(0deg, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0) 100%);
}

form {
  width: 100%;
  display: block;
  margin: 0;
  padding: 0;
  text-align: left;
}

button,
input,
select,
textarea {
  color: #000000;
  font-size: 100%; /* Corrects font size not being inherited in all browsers */
  margin: 0; /* Addresses margins set differently in IE6/7, F3/4, S5, Chrome */
  vertical-align: top; /* Improves appearance and consistency in all browsers */
  *vertical-align: middle; /* Improves appearance and consistency in all browsers */
  border: none;
  border-radius: 0;
  box-shadow: none;
  background: none;
  padding: 0;
  max-width: 100%;
}

input {
  height: 4rem;
}

input {
  line-height: normal; /* Addresses FF3/4 setting line-height using !important in the UA stylesheet */
  *overflow: visible; /* Corrects inner spacing displayed oddly in IE6/7 */
}

input[type=checkbox],
input[type=radio] {
  box-sizing: border-box; /* Addresses box sizing set to content-box in IE8/9 */
  padding: 0; /* Addresses excess padding in IE8/9 */
}

input[type=search] {
  -webkit-appearance: textfield; /* Addresses appearance set to searchfield in S5, Chrome */
  -moz-box-sizing: content-box;
  -webkit-box-sizing: content-box; /* Addresses box sizing set to border-box in S5, Chrome (include -moz to future-proof) */
  box-sizing: content-box;
}

input[type=search]::-webkit-search-decoration {
  /* Corrects inner padding displayed oddly in S5, Chrome on OSX */
  -webkit-appearance: none;
}

button::-moz-focus-inner,
input::-moz-focus-inner {
  /* Corrects inner padding and border displayed oddly in FF3/4 www.sitepen.com/blog/2008/05/14/the-devils-in-the-details-fixing-dojos-toolbar-buttons/ */
  border: 0;
  padding: 0;
}

label {
  display: inline-block;
  font-size: 2rem;
  line-height: 2rem;
  font-weight: 700;
  margin: 0 0 1rem 0;
  padding: 0 2rem;
  vertical-align: top;
}

input,
textarea,
select {
  font-size: 1.6rem !important;
  font-weight: 300;
  transition: all 0.3s ease 0s;
}
input.invisible,
textarea.invisible,
select.invisible {
  display: none;
}

input:not([type=checkbox]):not([type=radio]):not([type=select]):not([type=file]):not([type=submit]):not([type=button]),
textarea,
select {
  width: 100%;
  min-height: initial !important;
  display: block;
  margin: 0;
  color: #1279a8;
  border: 0.1rem solid #cac9c8;
  border-radius: 1rem;
  transition: all 0.3s ease 0s;
}
input:not([type=checkbox]):not([type=radio]):not([type=select]):not([type=file]):not([type=submit]):not([type=button]):hover, input:not([type=checkbox]):not([type=radio]):not([type=select]):not([type=file]):not([type=submit]):not([type=button]):focus,
textarea:hover,
textarea:focus,
select:hover,
select:focus {
  border-color: #1279a8;
}

input:not([type=checkbox]):not([type=radio]):not([type=select]):not([type=file]):not([type=submit]):not([type=button]),
select {
  height: 4rem;
  line-height: 3.8rem !important;
  padding: 0 0.9rem;
}

textarea {
  max-width: 100%;
  padding: 0.9rem;
  line-height: 2rem !important;
  overflow: hidden; /* Removes default vertical scrollbar in IE6/7/8/9 */
  vertical-align: top; /* Improves readability and alignment in all browsers */
  resize: none;
}

select {
  appearance: none;
  cursor: pointer;
}

input[type=file] {
  width: auto;
  display: block;
  margin: 0.5rem 0 0 0;
  padding: 0 2rem;
  font-size: 1.4rem;
  line-height: 2rem;
}

input[type=submit] {
  width: auto;
  display: inline-block;
  margin: 0;
  padding: 1rem 2rem;
  font-size: 1.4rem;
  font-weight: 300;
  text-align: center;
  color: #ffffff;
  background-color: #1279a8;
  border-radius: 0.5rem;
  transition: all 0.3s ease 0s;
  vertical-align: top;
}

input.invisible {
  display: none;
}

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

input::placeholder {
  color: rgba(0, 0, 0, 0.5);
  transition: all 0.3s ease 0s;
}

input:hover::placeholder,
input:focus::placeholder {
  color: black;
}

input::-webkit-input-placeholder {
  color: rgba(0, 0, 0, 0.5);
  transition: all 0.3s ease 0s;
}

input:hover::-webkit-input-placeholder,
input:focus::-webkit-input-placeholder {
  color: black;
}

input:-moz-placeholder {
  color: rgba(0, 0, 0, 0.5);
  transition: all 0.3s ease 0s;
}

input:hover:-moz-placeholder,
input:focus:-moz-placeholder {
  color: black;
}

input::-moz-placeholder {
  color: rgba(0, 0, 0, 0.5);
  transition: all 0.3s ease 0s;
}

input:hover::-moz-placeholder,
input:focus::-moz-placeholder {
  color: black;
}

input:-ms-input-placeholder {
  color: rgba(0, 0, 0, 0.5);
  transition: all 0.3s ease 0s;
}

input:hover:-ms-input-placeholder,
input:focus:-ms-input-placeholder {
  color: black;
}

input::-ms-input-placeholder {
  color: rgba(0, 0, 0, 0.5);
  transition: all 0.3s ease 0s;
}

input:hover::-ms-input-placeholder,
input:focus::-ms-input-placeholder {
  color: black;
}

textarea::placeholder {
  color: rgba(0, 0, 0, 0.5);
  transition: all 0.3s ease 0s;
}

textarea:hover::placeholder,
textarea:focus::placeholder {
  color: black;
}

textarea::-webkit-input-placeholder {
  color: rgba(0, 0, 0, 0.5);
  transition: all 0.3s ease 0s;
}

textarea:hover::-webkit-input-placeholder,
textarea:focus::-webkit-input-placeholder {
  color: black;
}

textarea:-moz-placeholder {
  color: rgba(0, 0, 0, 0.5);
  transition: all 0.3s ease 0s;
}

textarea:hover:-moz-placeholder,
textarea:focus:-moz-placeholder {
  color: black;
}

textarea::-moz-placeholder {
  color: rgba(0, 0, 0, 0.5);
  transition: all 0.3s ease 0s;
}

textarea:hover::-moz-placeholder,
textarea:focus::-moz-placeholder {
  color: black;
}

textarea:-ms-input-placeholder {
  color: rgba(0, 0, 0, 0.5);
  transition: all 0.3s ease 0s;
}

textarea:hover:-ms-input-placeholder,
textarea:focus:-ms-input-placeholder {
  color: black;
}

textarea::-ms-input-placeholder {
  color: rgba(0, 0, 0, 0.5);
  transition: all 0.3s ease 0s;
}

textarea:hover::-ms-input-placeholder,
textarea:focus::-ms-input-placeholder {
  color: black;
}

select::placeholder {
  color: rgba(0, 0, 0, 0.5);
  transition: all 0.3s ease 0s;
}

select:hover::placeholder,
select:focus::placeholder {
  color: black;
}

select::-webkit-input-placeholder {
  color: rgba(0, 0, 0, 0.5);
  transition: all 0.3s ease 0s;
}

select:hover::-webkit-input-placeholder,
select:focus::-webkit-input-placeholder {
  color: black;
}

select:-moz-placeholder {
  color: rgba(0, 0, 0, 0.5);
  transition: all 0.3s ease 0s;
}

select:hover:-moz-placeholder,
select:focus:-moz-placeholder {
  color: black;
}

select::-moz-placeholder {
  color: rgba(0, 0, 0, 0.5);
  transition: all 0.3s ease 0s;
}

select:hover::-moz-placeholder,
select:focus::-moz-placeholder {
  color: black;
}

select:-ms-input-placeholder {
  color: rgba(0, 0, 0, 0.5);
  transition: all 0.3s ease 0s;
}

select:hover:-ms-input-placeholder,
select:focus:-ms-input-placeholder {
  color: black;
}

select::-ms-input-placeholder {
  color: rgba(0, 0, 0, 0.5);
  transition: all 0.3s ease 0s;
}

select:hover::-ms-input-placeholder,
select:focus::-ms-input-placeholder {
  color: black;
}

.reverse input::placeholder {
  color: rgba(255, 255, 255, 0.5);
}

.reverse input:hover::placeholder,
.reverse input:focus::placeholder {
  color: white;
}

.reverse input::-webkit-input-placeholder {
  color: rgba(255, 255, 255, 0.5);
}

.reverse input:hover::-webkit-input-placeholder,
.reverse input:focus::-webkit-input-placeholder {
  color: white;
}

.reverse input:-moz-placeholder {
  color: rgba(255, 255, 255, 0.5);
}

.reverse input:hover:-moz-placeholder,
.reverse input:focus:-moz-placeholder {
  color: white;
}

.reverse input::-moz-placeholder {
  color: rgba(255, 255, 255, 0.5);
}

.reverse input:hover::-moz-placeholder,
.reverse input:focus::-moz-placeholder {
  color: white;
}

.reverse input:-ms-input-placeholder {
  color: rgba(255, 255, 255, 0.5);
}

.reverse input:hover:-ms-input-placeholder,
.reverse input:focus:-ms-input-placeholder {
  color: white;
}

.reverse input::-ms-input-placeholder {
  color: rgba(255, 255, 255, 0.5);
}

.reverse input:hover::-ms-input-placeholder,
.reverse input:focus::-ms-input-placeholder {
  color: white;
}

.reverse textarea::placeholder {
  color: rgba(255, 255, 255, 0.5);
}

.reverse textarea:hover::placeholder,
.reverse textarea:focus::placeholder {
  color: white;
}

.reverse textarea::-webkit-input-placeholder {
  color: rgba(255, 255, 255, 0.5);
}

.reverse textarea:hover::-webkit-input-placeholder,
.reverse textarea:focus::-webkit-input-placeholder {
  color: white;
}

.reverse textarea:-moz-placeholder {
  color: rgba(255, 255, 255, 0.5);
}

.reverse textarea:hover:-moz-placeholder,
.reverse textarea:focus:-moz-placeholder {
  color: white;
}

.reverse textarea::-moz-placeholder {
  color: rgba(255, 255, 255, 0.5);
}

.reverse textarea:hover::-moz-placeholder,
.reverse textarea:focus::-moz-placeholder {
  color: white;
}

.reverse textarea:-ms-input-placeholder {
  color: rgba(255, 255, 255, 0.5);
}

.reverse textarea:hover:-ms-input-placeholder,
.reverse textarea:focus:-ms-input-placeholder {
  color: white;
}

.reverse textarea::-ms-input-placeholder {
  color: rgba(255, 255, 255, 0.5);
}

.reverse textarea:hover::-ms-input-placeholder,
.reverse textarea:focus::-ms-input-placeholder {
  color: white;
}

.reverse select::placeholder {
  color: rgba(255, 255, 255, 0.5);
}

.reverse select:hover::placeholder,
.reverse select:focus::placeholder {
  color: white;
}

.reverse select::-webkit-input-placeholder {
  color: rgba(255, 255, 255, 0.5);
}

.reverse select:hover::-webkit-input-placeholder,
.reverse select:focus::-webkit-input-placeholder {
  color: white;
}

.reverse select:-moz-placeholder {
  color: rgba(255, 255, 255, 0.5);
}

.reverse select:hover:-moz-placeholder,
.reverse select:focus:-moz-placeholder {
  color: white;
}

.reverse select::-moz-placeholder {
  color: rgba(255, 255, 255, 0.5);
}

.reverse select:hover::-moz-placeholder,
.reverse select:focus::-moz-placeholder {
  color: white;
}

.reverse select:-ms-input-placeholder {
  color: rgba(255, 255, 255, 0.5);
}

.reverse select:hover:-ms-input-placeholder,
.reverse select:focus:-ms-input-placeholder {
  color: white;
}

.reverse select::-ms-input-placeholder {
  color: rgba(255, 255, 255, 0.5);
}

.reverse select:hover::-ms-input-placeholder,
.reverse select:focus::-ms-input-placeholder {
  color: white;
}

.leaf-background {
  background-image: url("/wp-content/themes/speak/assets/images/leaf-background.svg");
  background-repeat: no-repeat;
  background-size: 110%;
  background-position: center;
  padding: 100px 0;
  min-height: 400px;
  position: relative;
}
@media only screen and (min-width: 840px) {
  .leaf-background {
    min-height: 600px;
  }
}
@media only screen and (min-width: 1080px) {
  .leaf-background {
    min-height: 800px;
  }
}
@media only screen and (min-width: 1440px) {
  .leaf-background {
    min-height: 900px;
  }
}
@media only screen and (min-width: 1600px) {
  .leaf-background {
    min-height: 1100px;
  }
}

.emphasis-font {
  font-family: "Rock Salt", cursive;
  color: #1279a8;
  font-size: 42px;
  font-weight: 500;
}
@media only screen and (min-width: 1080px) {
  .emphasis-font {
    font-size: 59px;
  }
}

.zoo-address {
  margin-left: 60px;
  position: relative;
}
.zoo-address:before {
  content: "";
  position: absolute;
  left: -50px;
  top: 0px;
  background-image: url("/wp-content/themes/speak/assets/icons/ui/icon__pin-blue.svg");
  background-repeat: no-repeat;
  background-size: contain;
  width: 50px;
  height: 51px;
  z-index: 1;
}
@media only screen and (min-width: 1080px) {
  .zoo-address:before {
    width: 50px;
    height: 65px;
  }
}
.green-crosshatch {
  background: url("/wp-content/themes/speak/assets/images/green-crosshatch.svg");
  background-repeat: repeat-y !important;
  background-size: 200% !important;
  background-position: -250px -300px !important;
  padding-top: 200px;
  position: relative;
}

.rainbow-crosshatch {
  background: url("/wp-content/themes/speak/assets/images/rainbow-crosshatch.svg");
  background-repeat: repeat-y !important;
  background-size: 300% !important;
  background-position: -400px 0px !important;
  position: relative;
}
@media only screen and (min-width: 840px) {
  .rainbow-crosshatch {
    padding-top: 200px;
    background-position: -300px -300px !important;
  }
}
@media only screen and (min-width: 1080px) {
  .rainbow-crosshatch {
    background-position: -450px -500px !important;
  }
}
@media only screen and (min-width: 1440px) {
  .rainbow-crosshatch {
    background-position: -500px -600px !important;
  }
}

.flag-background {
  background: url("/wp-content/themes/speak/assets/images/flag-banner.svg");
  background-repeat: no-repeat !important;
  background-size: 150% !important;
  position: relative;
  z-index: 9000;
  background-position: -90px -25px !important;
  padding-top: 100px;
}
@media only screen and (min-width: 1080px) {
  .flag-background {
    background-position: -150px -85px !important;
    padding-top: 250px;
  }
}
@media only screen and (min-width: 1440px) {
  .flag-background {
    padding-top: 350px;
    background-position: -150px -110px !important;
  }
}
@media only screen and (min-width: 3000px) {
  .flag-background {
    background-position: 100% !important;
    padding-top: 700px;
  }
}

.wpcf7-form {
  width: 90%;
  margin: 0 auto;
  padding: 0 2rem;
}
.wpcf7-form label {
  font-size: 18px;
  font-weight: 400;
  text-transform: uppercase;
  line-height: 34px;
  padding: 0;
  margin-bottom: 10px;
  width: 100%;
}
.wpcf7-form label span input,
.wpcf7-form label span textarea {
  border-radius: 25px !important;
  border: 1px solid #707070 !important;
  color: black !important;
  font-weight: 500;
  padding-left: 15px !important;
}
.wpcf7-form label span input:hover,
.wpcf7-form label span textarea:hover {
  border: 1px solid #707070 !important;
}
.wpcf7-form .wpcf7-submit {
  display: block;
  background: #b3e053 !important;
  margin-top: 20px;
  width: 100%;
  color: black;
  text-transform: uppercase;
  font-weight: 500;
  cursor: pointer;
  border-radius: 7px;
}
.wpcf7-form .wpcf7-submit:hover {
  background: #f79e32 !important;
}

/* Buttons
----------------------------------------------------------------- */
.skip-link a {
  width: 100%;
  display: block;
  margin: 0;
  padding: 0;
  font-size: 0;
  line-height: 0;
  font-weight: 700;
  text-transform: uppercase;
  color: #000000;
  transition: all 0.3s ease 0s;
}
.skip-link a:focus {
  font-size: 1.4rem;
  line-height: 2rem;
}

#searchsubmit,
#header-searchsubmit,
#sidebar-searchsubmit {
  position: relative;
  width: 4rem;
  display: block;
  margin: 0;
  padding: 1rem;
  font-size: 2rem;
  line-height: 2rem;
  color: #000000;
  cursor: pointer;
}
#searchsubmit svg,
#header-searchsubmit svg,
#sidebar-searchsubmit svg {
  position: absolute;
  width: 100%;
  height: 100%;
  display: block;
  top: 50%;
  left: 50%;
  margin: 0;
  padding: 0;
  transform: translate(-50%, -50%);
}
#searchsubmit svg circle,
#header-searchsubmit svg circle,
#sidebar-searchsubmit svg circle {
  fill: transparent;
  stroke-dasharray: 120;
  stroke-dashoffset: 120;
  stroke: #1279a8;
  stroke-width: 0.1rem;
  transform-origin: center center;
  transform: rotate(-270deg);
  transition: all 0.8s ease 0s;
}
#searchsubmit:hover svg circle,
#header-searchsubmit:hover svg circle,
#sidebar-searchsubmit:hover svg circle {
  stroke-dashoffset: 0;
  transform: rotate(-90deg);
}
#masthead:not(.fixed) .header-content #searchsubmit,
#masthead:not(.fixed) .header-content #header-searchsubmit,
#masthead:not(.fixed) .header-content #sidebar-searchsubmit {
  color: #ffffff;
}
#masthead:not(.fixed) .header-content #searchsubmit svg circle,
#masthead:not(.fixed) .header-content #header-searchsubmit svg circle,
#masthead:not(.fixed) .header-content #sidebar-searchsubmit svg circle {
  stroke: #ffffff;
}

#sidebar-open {
  position: absolute;
  margin: 0;
  padding: 0;
  vertical-align: top;
  cursor: pointer;
  z-index: 9;
  height: 40px;
  width: 40px;
  background: #b3e053;
  top: 7px;
  border-radius: 0px;
  display: flex;
  justify-content: center;
  align-items: center;
  right: 15px;
}
@media only screen and (min-width: 1080px) {
  #sidebar-open {
    display: none;
  }
}
#sidebar-open .sidebar-toggle-button {
  position: relative;
  height: 22px;
  padding: 0;
  transition: all 0.3s ease 0s;
  display: flex;
  margin: 0;
  top: 0%;
  left: 0%;
  width: 22px;
}
#sidebar-open .sidebar-toggle-button .bar {
  position: absolute;
  display: block;
  left: 0;
  margin: 0;
  padding: 0;
  transition: all 0.3s ease 0s;
  width: 22px;
  background: black;
  border-radius: 3px;
  height: 2px;
}
#sidebar-open .sidebar-toggle-button .bar.top {
  top: 0px;
}
#sidebar-open .sidebar-toggle-button .bar.top:before, #sidebar-open .sidebar-toggle-button .bar.top:after {
  bottom: 0;
}
#sidebar-open .sidebar-toggle-button .bar.middle {
  top: 10px;
}
#sidebar-open .sidebar-toggle-button .bar.bottom {
  top: 20px;
}
#sidebar-open .sidebar-toggle-button .bar.bottom:before, #sidebar-open .sidebar-toggle-button .bar.bottom:after {
  top: 0;
}
#masthead.menu-open #sidebar-open .sidebar-toggle-button {
  transform: rotate(45deg);
  top: -3px;
  left: -5px;
}
#masthead.menu-open #sidebar-open .sidebar-toggle-button .bar.middle,
#masthead.menu-open #sidebar-open .sidebar-toggle-button .bar.bottom {
  top: 8px;
  left: 6px;
}
#masthead.menu-open #sidebar-open .sidebar-toggle-button .bar.top {
  display: none;
}
#masthead.menu-open #sidebar-open .sidebar-toggle-button .bar.bottom {
  transform: rotate(90deg);
}

.button,
a.button {
  position: relative;
  width: auto;
  display: inline-block;
  margin: 0 2rem 2rem 2rem;
  padding: 0 0 0 4rem;
  font-size: 2rem;
  line-height: 3rem;
  font-weight: 300;
  color: #000000;
  text-decoration: none;
  white-space: normal;
  transition: all 0.3s ease 0s;
  vertical-align: top;
  cursor: pointer;
  overflow: hidden;
  z-index: 1;
}
p .button,
p a.button {
  margin: 0 0 2rem 0;
}
.button [class*=material-],
a.button [class*=material-] {
  font-size: 2rem;
  margin: 0 0.5rem 0 0;
}
.button > span,
a.button > span {
  display: inline-block;
  vertical-align: top;
}
.button:before,
a.button:before {
  content: "";
  position: absolute;
  width: 3rem;
  height: 0.2rem;
  top: calc(50% - 0.1rem);
  left: 0;
  background: #1279a8;
  transition: all 0.3s ease 0s;
}
.button:hover,
a.button:hover {
  padding: 0 4rem 0 0;
}
.button:hover > span:nth-child(1),
a.button:hover > span:nth-child(1) {
  animation: up-out-in 0.6s cubic-bezier(0.45, 0.1, 0.55, 0.9) 0.008s;
}
.button:hover > span:nth-child(2),
a.button:hover > span:nth-child(2) {
  animation: up-out-in 0.6s cubic-bezier(0.45, 0.1, 0.55, 0.9) 0.016s;
}
.button:hover > span:nth-child(3),
a.button:hover > span:nth-child(3) {
  animation: up-out-in 0.6s cubic-bezier(0.45, 0.1, 0.55, 0.9) 0.024s;
}
.button:hover > span:nth-child(4),
a.button:hover > span:nth-child(4) {
  animation: up-out-in 0.6s cubic-bezier(0.45, 0.1, 0.55, 0.9) 0.032s;
}
.button:hover > span:nth-child(5),
a.button:hover > span:nth-child(5) {
  animation: up-out-in 0.6s cubic-bezier(0.45, 0.1, 0.55, 0.9) 0.04s;
}
.button:hover > span:nth-child(6),
a.button:hover > span:nth-child(6) {
  animation: up-out-in 0.6s cubic-bezier(0.45, 0.1, 0.55, 0.9) 0.048s;
}
.button:hover > span:nth-child(7),
a.button:hover > span:nth-child(7) {
  animation: up-out-in 0.6s cubic-bezier(0.45, 0.1, 0.55, 0.9) 0.056s;
}
.button:hover > span:nth-child(8),
a.button:hover > span:nth-child(8) {
  animation: up-out-in 0.6s cubic-bezier(0.45, 0.1, 0.55, 0.9) 0.064s;
}
.button:hover > span:nth-child(9),
a.button:hover > span:nth-child(9) {
  animation: up-out-in 0.6s cubic-bezier(0.45, 0.1, 0.55, 0.9) 0.072s;
}
.button:hover > span:nth-child(10),
a.button:hover > span:nth-child(10) {
  animation: up-out-in 0.6s cubic-bezier(0.45, 0.1, 0.55, 0.9) 0.08s;
}
.button:hover > span:nth-child(11),
a.button:hover > span:nth-child(11) {
  animation: up-out-in 0.6s cubic-bezier(0.45, 0.1, 0.55, 0.9) 0.088s;
}
.button:hover > span:nth-child(12),
a.button:hover > span:nth-child(12) {
  animation: up-out-in 0.6s cubic-bezier(0.45, 0.1, 0.55, 0.9) 0.096s;
}
.button:hover > span:nth-child(13),
a.button:hover > span:nth-child(13) {
  animation: up-out-in 0.6s cubic-bezier(0.45, 0.1, 0.55, 0.9) 0.104s;
}
.button:hover > span:nth-child(14),
a.button:hover > span:nth-child(14) {
  animation: up-out-in 0.6s cubic-bezier(0.45, 0.1, 0.55, 0.9) 0.112s;
}
.button:hover > span:nth-child(15),
a.button:hover > span:nth-child(15) {
  animation: up-out-in 0.6s cubic-bezier(0.45, 0.1, 0.55, 0.9) 0.12s;
}
.button:hover > span:nth-child(16),
a.button:hover > span:nth-child(16) {
  animation: up-out-in 0.6s cubic-bezier(0.45, 0.1, 0.55, 0.9) 0.128s;
}
.button:hover > span:nth-child(17),
a.button:hover > span:nth-child(17) {
  animation: up-out-in 0.6s cubic-bezier(0.45, 0.1, 0.55, 0.9) 0.136s;
}
.button:hover > span:nth-child(18),
a.button:hover > span:nth-child(18) {
  animation: up-out-in 0.6s cubic-bezier(0.45, 0.1, 0.55, 0.9) 0.144s;
}
.button:hover > span:nth-child(19),
a.button:hover > span:nth-child(19) {
  animation: up-out-in 0.6s cubic-bezier(0.45, 0.1, 0.55, 0.9) 0.152s;
}
.button:hover > span:nth-child(20),
a.button:hover > span:nth-child(20) {
  animation: up-out-in 0.6s cubic-bezier(0.45, 0.1, 0.55, 0.9) 0.16s;
}
.button:hover:before,
a.button:hover:before {
  width: 0;
}

.close-modal,
.close-lightbox {
  position: absolute;
  width: 3rem;
  display: block;
  top: 2rem;
  right: 2rem;
  margin: 0;
  padding: 0;
  font-size: 3rem;
  line-height: 3rem;
  color: #ffffff;
  transition: all 0.3s ease 0s;
  opacity: 1;
  cursor: pointer;
  z-index: 99;
}
body:not(.touch-device) .close-modal:hover,
body:not(.touch-device) .close-lightbox:hover {
  rotate: 180deg;
}

/* Form Elements */
#searchform {
  width: calc(100% - 4rem);
  margin: 0 2rem;
  padding: 0;
  font-size: 0;
  vertical-align: top;
}
#searchform .input-column {
  width: calc(100% - 6rem);
  display: inline-block;
  margin: 0 2rem 0 0;
  padding: 0;
  vertical-align: top;
}
#searchform .input-column .input-wrap {
  width: 100%;
  margin: 0;
}
#searchform .submit-column {
  width: 4rem;
  display: inline-block;
  margin: 0;
  padding: 0;
  vertical-align: top;
}

.form-section {
  width: 100%;
  display: block;
  margin: 0;
  padding: 18rem 14%%;
}

.form-row,
.radio-group,
.toggle-group {
  width: 100%;
  display: block;
  margin: 0 0 2rem 0;
  padding: 0 2rem;
  text-align: left;
}
.form-row .button,
.form-row input[type=submit],
.radio-group .button,
.radio-group input[type=submit],
.toggle-group .button,
.toggle-group input[type=submit] {
  margin: 0;
}
.form-row.anim,
.radio-group.anim,
.toggle-group.anim {
  opacity: 0;
  transform: translateY(6rem);
  transition: all 0.9s ease 0s;
}
.form-row.anim.in-view,
.radio-group.anim.in-view,
.toggle-group.anim.in-view {
  opacity: 1;
  transform: translateY(0);
}

.form-col {
  display: inline-block;
  margin: 0 0 2rem 0;
  padding: 0;
  vertical-align: top;
}
.form-col .button {
  margin: 0 2rem;
}
.form-col.anim {
  opacity: 0;
  transform: translateY(6rem);
  transition: all 0.9s ease 0s;
}
.form-col.anim.in-view {
  opacity: 1;
  transform: translateY(0);
}

.input-row {
  width: auto;
  display: inline-block;
  margin: 0 1rem 0 2rem;
  padding: 0;
  vertical-align: top;
}

.input-required {
  position: absolute;
  width: 0.4rem;
  height: 0.4rem;
  display: block;
  top: 0;
  right: 0;
  margin: 0;
  padding: 0;
  border-radius: 0.2rem;
  background: #d81b09;
}

.inline-field {
  width: auto;
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  align-items: center;
  gap: 1rem;
  margin: 0 2rem 2rem 2rem;
}
.inline-field label {
  width: auto;
  margin: 0;
  padding: 0;
}
.inline-field div {
  width: auto;
  padding: 0;
  margin: 0;
}

.input-wrap {
  position: relative;
  width: calc(100% - 4rem);
  display: block;
  margin: 0 2rem;
  padding: 0;
  z-index: 0;
}
.input-wrap input:hover + .input-active:after,
.input-wrap input:focus + .input-active:after,
.input-wrap input:focus-visible + .input-active:after,
.input-wrap textarea:hover + .input-active:after,
.input-wrap textarea:focus + .input-active:after,
.input-wrap textarea:focus-visible + .input-active:after {
  width: 100%;
}

.check-wrap {
  width: 100%;
  display: block;
  margin: 0;
  padding: 0;
}
.check-wrap label {
  position: relative;
  width: calc(100% - 4rem);
  display: block;
  margin: 0 2rem;
  padding: 0;
  cursor: pointer;
  z-index: 0;
}
body:not(.touch-device) .check-wrap label:hover .checkbox {
  background: rgba(0, 0, 0, 0.5);
}
.check-wrap .checkbox {
  width: 1.6rem;
  height: 1.6rem;
  display: inline-block;
  margin: 0 0.4rem 0 0;
  padding: 0;
  background: transparent;
  border: 0.2rem solid #000000;
  border-radius: 0.8rem;
  transition: all 0.3s ease 0s;
  vertical-align: top;
}
.check-wrap input {
  position: absolute;
  display: block;
  top: 0;
  left: 0;
  margin: 0;
  padding: 0;
  opacity: 0;
  z-index: -1;
}
.check-wrap input:checked + .checkbox {
  background: #000000 !important;
}

.checks-group {
  width: 100%;
  display: block;
  margin: 0;
  padding: 0 2rem;
}
.checks-group legend,
.checks-group label {
  margin: 0 0 0.5rem 0;
}

.wpcf7-checkbox {
  width: 100%;
  display: block;
  margin: 0;
  padding: 0;
}
.wpcf7-checkbox > label {
  width: 100%;
  display: block;
  margin: 0 0 1rem 0;
  padding: 0;
  font-size: 0;
  line-height: 0;
}
.wpcf7-checkbox .wpcf7-list-item {
  position: relative;
  width: 100%;
  display: block;
  margin: 0;
  padding: 0;
  z-index: 0;
}
.wpcf7-checkbox .wpcf7-list-item .wpcf7-list-item-label {
  position: relative;
  width: 100%;
  display: block;
  margin: 0;
  padding: 0 0 0 2.5rem;
  font-size: 1.6rem;
  line-height: 2rem;
  font-weight: 300;
  color: #000000;
  cursor: pointer;
}
.wpcf7-checkbox .wpcf7-list-item .wpcf7-list-item-label:before, .wpcf7-checkbox .wpcf7-list-item .wpcf7-list-item-label:after {
  content: "";
  position: absolute;
  display: block;
  top: 0.8rem;
  left: 1rem;
  margin: 0;
  padding: 0;
  transition: all 0.3s ease 0s;
  transform: translate(-50%, -50%);
}
.wpcf7-checkbox .wpcf7-list-item .wpcf7-list-item-label:before {
  content: "";
  width: 0.3rem;
  height: 0.3rem;
  border: 0.1rem solid #1279a8;
  background: #1279a8;
  border-radius: 50%;
}
.wpcf7-checkbox .wpcf7-list-item .wpcf7-list-item-label:after {
  content: "\e5ca";
  font-family: "Material Icons Outlined";
  font-size: 1.4rem;
  line-height: 1.4rem;
  color: #1279a8;
  opacity: 0;
}
body:not(.touch-device) .wpcf7-checkbox .wpcf7-list-item .wpcf7-list-item-label:hover:before {
  width: 1.8rem;
  height: 1.8rem;
  background: transparent;
}
body:not(.touch-device) .wpcf7-checkbox .wpcf7-list-item .wpcf7-list-item-label:hover:after {
  opacity: 1;
}
.wpcf7-checkbox .wpcf7-list-item input {
  position: absolute;
  display: block;
  top: 0;
  left: 0;
  margin: 0;
  padding: 0;
  opacity: 0;
  z-index: -1;
}
.wpcf7-checkbox .wpcf7-list-item input:checked + .wpcf7-list-item-label:before {
  width: 1.8rem;
  height: 1.8rem;
  background: transparent;
}
.wpcf7-checkbox .wpcf7-list-item input:checked + .wpcf7-list-item-label:after {
  opacity: 1;
}

.radio-wrap {
  width: 100%;
  display: block;
  margin: 0;
  padding: 0 2rem;
}
.radio-wrap.inline {
  width: 8rem;
  display: inline-block;
  margin: 0 2rem 1rem 2rem;
  padding: 0;
  vertical-align: top;
}
.radio-wrap.inline label {
  margin: 0;
  padding: 0.5rem 0 1rem 0;
}
.radio-wrap label {
  position: relative;
  padding: 0;
  cursor: pointer;
  z-index: 0;
}
body:not(.touch-device) .radio-wrap label:hover .underline {
  stroke-dashoffset: 151;
  transition: all 0.3s ease 0s;
}
body:not(.touch-device) .radio-wrap label:hover .circle {
  stroke-dashoffset: 0;
  transition: all 0.5s ease 0.3s;
}
.radio-wrap input {
  position: absolute;
  display: block;
  top: 0;
  left: 0;
  margin: 0;
  padding: 0;
  opacity: 0;
  z-index: -1;
}
.radio-wrap input:checked + .underline {
  stroke-dashoffset: 151;
  transition: all 0.3s ease 0s;
}
.radio-wrap input:checked ~ .circle {
  stroke-dashoffset: 0;
  transition: all 0.5s ease 0.3s;
}
.radio-wrap .underline {
  fill: none;
  stroke: #000000;
  stroke-width: 4;
  stroke-miterlimit: 10;
  stroke-dasharray: 151;
  stroke-dashoffset: 0;
  stroke-linecap: round;
  position: absolute;
  width: 8rem;
  display: block;
  bottom: 0;
  left: 50%;
  margin: 0;
  padding: 0;
  transition: all 0.3s ease 0.5s;
  transform: translateX(-50%);
  overflow: visible;
  z-index: -1;
}
.radio-wrap .circle {
  fill: none;
  stroke: #000000;
  stroke-width: 4;
  stroke-miterlimit: 10;
  stroke-dasharray: 484;
  stroke-dashoffset: 484;
  stroke-linecap: round;
  position: absolute;
  width: 100%;
  display: block;
  top: 50%;
  left: 50%;
  margin: 0;
  padding: 0;
  transition: all 0.5s ease 0s;
  transform: translate(-50%, -50%);
  overflow: visible;
  z-index: -1;
}

.wpcf7-radio {
  width: 100%;
  display: block;
  margin: 0;
  padding: 0;
}
.wpcf7-radio .wpcf7-list-item {
  position: relative;
  width: 100%;
  display: block;
  margin: 0;
  padding: 0;
  z-index: 0;
}
.wpcf7-radio .wpcf7-list-item .wpcf7-list-item-label:before, .wpcf7-radio .wpcf7-list-item .wpcf7-list-item-label:after {
  content: "";
  position: absolute;
  display: block;
  top: 0.8rem;
  left: 1rem;
  margin: 0;
  padding: 0;
  transition: all 0.3s ease 0s;
  transform: translate(-50%, -50%);
}
.wpcf7-radio .wpcf7-list-item .wpcf7-list-item-label:before {
  content: "";
  width: 0.3rem;
  height: 0.3rem;
  border: 0.1rem solid #1279a8;
  background: #1279a8;
  border-radius: 50%;
}
.wpcf7-radio .wpcf7-list-item .wpcf7-list-item-label:after {
  content: "\e5ca";
  width: 1rem;
  height: 1rem;
  background: #1279a8;
  border-radius: 50%;
  opacity: 0;
}
body:not(.touch-device) .wpcf7-radio .wpcf7-list-item .wpcf7-list-item-label:hover:before {
  width: 1.8rem;
  height: 1.8rem;
  background: transparent;
}
body:not(.touch-device) .wpcf7-radio .wpcf7-list-item .wpcf7-list-item-label:hover:after {
  opacity: 1;
}
.wpcf7-radio .wpcf7-list-item input {
  position: absolute;
  display: block;
  top: 0;
  left: 0;
  margin: 0;
  padding: 0;
  opacity: 0;
  z-index: -1;
}
.wpcf7-radio .wpcf7-list-item input:checked + .wpcf7-list-item-label:before {
  width: 1.8rem;
  height: 1.8rem;
  background: transparent;
}
.wpcf7-radio .wpcf7-list-item input:checked + .wpcf7-list-item-label:after {
  opacity: 1;
}

.select-wrap {
  position: relative;
  width: calc(100% - 4rem);
  display: block;
  margin: 0 2rem;
  padding: 0;
  transition: all 0.3s ease 0s;
  cursor: pointer;
  z-index: 0;
}
.select-wrap select {
  position: relative;
  z-index: 1;
}
body:not(.touch-device) .select-wrap:hover select, body:not(.touch-device) .select-wrap:hover:after {
  color: #1279a8;
}
.select-wrap:after {
  content: "\e5d7";
  position: absolute;
  top: 1rem;
  right: 1rem;
  font-family: "Material Symbols Outlined";
  font-size: 2rem;
  line-height: 2rem;
  color: #000000;
  display: block;
  margin: 0;
  padding: 0;
  transition: all 0.3s ease 0s;
  z-index: -1;
}
.select-wrap + .sub-label {
  padding: 0 2rem;
}

.file-wrap {
  width: 100%;
  display: block;
  margin: 0;
  padding: 0;
}
.file-wrap input[type=file] {
  padding: 0;
  margin: 0;
  font-size: 1.3rem;
  line-height: 2rem;
}

.wpcf7-form-control-wrap {
  position: initial;
  width: 100%;
  display: block;
  margin: 0;
  padding: 0;
}

.wpcf7-recaptcha {
  width: 100%;
  display: block;
  margin: 0;
  padding: 0 2rem;
}

.rc-anchor-light {
  width: auto;
  height: auto;
  background: none;
  color: #000000;
  border: none !important;
}

span.wpcf7-not-valid-tip,
.use-floating-validation-tip span.wpcf7-not-valid-tip {
  width: 100%;
  display: block;
  margin: 0.5rem 0 0 0;
  padding: 0;
  font-size: 1.3rem;
  line-height: 2rem;
  font-weight: 700;
  color: #d81b09;
}

div.wpcf7 .ajax-loader {
  width: 2rem;
  height: 4rem;
  display: none;
  margin: 0 0 0 1rem;
  padding: 0;
  background-size: contain;
  background-position: center center;
  background-repeat: no-repeat;
  vertical-align: top;
}
div.wpcf7 .ajax-loader.is-active {
  display: block;
}

.wpcf7 form .wpcf7-response-output {
  width: auto;
  display: block;
  margin: 2rem 0 0 0;
  padding: 0 2rem;
  font-size: 1.6rem;
  line-height: 2rem;
  font-weight: 700;
  background: none !important;
  border: none !important;
}
.wpcf7 form .wpcf7-response-output:before {
  content: "";
  display: inline-block;
  margin: 0 0.4rem 0 0;
  padding: 0;
  font-family: "Material Icons Outlined";
  font-size: 1.6rem;
  line-height: 1.6rem;
  vertical-align: top;
  font-feature: "liga" 1;
}
.wpcf7 form.init .wpcf7-response-output, .wpcf7 form.resetting .wpcf7-response-output, .wpcf7 form.submitting .wpcf7-response-output {
  display: none;
}
.wpcf7 form.sent .wpcf7-response-output {
  color: #82c657;
}
.wpcf7 form.sent .wpcf7-response-output:before {
  content: "check";
}
.wpcf7 form.failed .wpcf7-response-output, .wpcf7 form.aborted .wpcf7-response-output {
  color: #d81b09;
}
.wpcf7 form.failed .wpcf7-response-output:before, .wpcf7 form.aborted .wpcf7-response-output:before {
  content: "block";
}
.wpcf7 form.spam .wpcf7-response-output, .wpcf7 form.invalid .wpcf7-response-output, .wpcf7 form.unaccepted .wpcf7-response-output {
  color: #f79e32;
}
.wpcf7 form.spam .wpcf7-response-output:before, .wpcf7 form.invalid .wpcf7-response-output:before, .wpcf7 form.unaccepted .wpcf7-response-output:before {
  content: "error_outline";
}

/* Header
----------------------------------------------------------------- */
.site-header {
  position: fixed;
  width: 100%;
  display: block;
  top: 0px;
  left: 0;
  z-index: 8;
}
@media only screen and (min-width: 1080px) {
  .site-header {
    top: 20px;
  }
}
.site-header__content {
  position: relative;
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  align-items: center;
  justify-content: flex-end;
  z-index: 1;
  padding: 20px;
  width: 100%;
  margin-top: 0px;
  height: 54px;
  background: white;
  box-shadow: 0px 0px 6px rgba(0, 0, 0, 0.1607843137);
}
@media only screen and (min-width: 1080px) {
  .site-header__content {
    height: 70px;
    width: calc(100% - 40px);
    margin-left: 20px;
    border-radius: 35px;
  }
}
.site-header__content .site-identity {
  display: flex;
  gap: 1rem;
  align-items: center;
  position: absolute;
  left: 0px;
  transition: all 0.33s ease-in-out;
}
.site-header__content .site-identity:hover {
  transform: scale(1.05);
}
.site-header__content .site-identity > a img {
  width: 100%;
}
.site-header__content .site-identity > a:nth-child(1) img {
  max-width: 200px;
}
.site-header__content .site-identity > a:nth-child(1) img {
  max-width: 75px;
}
.site-header__content .site-navigation ul li a {
  font-size: 15px;
  font-family: "Open Sans";
  letter-spacing: 0.3px;
  font-weight: 500;
  color: #262728;
}
.site-header__content-buttons {
  display: flex;
  align-items: center;
  background: white;
  display: flex;
  position: fixed;
  bottom: 0px;
  justify-content: space-evenly;
  left: 0;
  width: 100%;
  height: 68px;
  box-shadow: 0px 0px 6px rgba(0, 0, 0, 0.168627451);
}
@media (min-width: 1550px) {
  .site-header__content-buttons {
    height: 40px;
    border-left: 1px solid rgb(15, 15, 15);
    justify-content: center;
    width: unset;
    position: relative;
    margin-right: 10px;
    box-shadow: none;
  }
}
.site-header__content-buttons a {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  padding-top: 8px;
  transition: all 0.33s ease-in-out;
  border-right: 1px solid #ededeb;
  width: 20%;
  height: 100%;
}
.site-header__content-buttons a:last-child {
  border-right: none;
}
@media (min-width: 1550px) {
  .site-header__content-buttons a {
    padding-left: 20px;
    width: unset;
    height: unset;
    border-right: none;
  }
}
.site-header__content-buttons a img {
  height: 20px;
  object-fit: contain;
  object-position: center;
}
.site-header__content-buttons a p {
  font-size: 9px;
  margin: 0;
  padding: 0;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.18px;
}
.site-header__content-buttons a:hover {
  transform: translateY(-4px);
}
.site-header__right {
  position: relative;
  width: auto;
  display: none;
  margin: 0 0 0 auto;
  vertical-align: top;
}
@media (min-width: 640px) {
  .site-header__right {
    display: inline-block;
  }
}
.site-header__right.search .main-navigation {
  opacity: 0;
  z-index: 0;
  transform: translateY(-100%);
}
.site-header__right.search .site-header__search {
  top: 0;
  opacity: 1;
  z-index: 1;
}
.site-header__search {
  position: absolute;
  width: 100%;
  display: block;
  top: -4rem;
  left: 0;
  margin: 0;
  padding: 0 2rem;
  transition: all 0.3s ease 0s;
  opacity: 0;
  z-index: -1;
}
.site-header__search-form {
  position: relative;
  width: calc(100% - 6rem);
  display: inline-block;
  margin: 0 2rem 0 0;
  padding: 0 0 0 2rem;
  vertical-align: top;
}
.site-header__search-field {
  padding: 1rem 8rem 1rem 1rem;
}
.site-header__search-submit {
  position: absolute;
  width: 7.7rem;
  top: 0.3rem;
  right: 0.3rem;
  padding: 0.7rem 1rem;
  font-size: 1.6rem;
  line-height: 2rem;
  font-weight: 700;
  text-align: center;
  color: #ffffff;
  border-radius: 0.7rem;
  background: #1279a8;
  transition: all 0.3s ease 0s;
  cursor: pointer;
}
.site-header__search-submit:hover {
  background: #000000;
}

.header-identity {
  width: 100%;
  max-width: calc(100% - 40px);
  display: inline-block;
  margin: 0;
  padding: 0 2rem;
  vertical-align: top;
}
.header-identity a {
  position: relative;
  width: auto;
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  align-items: center;
  text-decoration: none;
  color: #000000;
}
.header-identity a:hover .header-identity__mark-top,
.header-identity a:hover .header-identity__mark-right,
.header-identity a:hover .header-identity__mark-left {
  transition: all 0.3s ease 0s;
}
.header-identity a:hover .header-identity__mark-top {
  transform: translate3d(32.6672990732%, 42.025927771%, 0);
}
.header-identity a:hover .header-identity__mark-right {
  transform: translate3d(-52.7291832223%, 7.2778215138%, 0);
}
.header-identity a:hover .header-identity__mark-left {
  transform: translate3d(20.0618841491%, -49.3036960112%, 0);
}
.header-identity__mark {
  width: 3.94317rem;
  height: 4rem;
  fill: #1279a8;
}
.header-identity__name {
  font-size: 2.3rem;
  line-height: 4rem;
  letter-spacing: -0.07rem;
  margin: 0 0 0 1rem;
}
.header-identity__name span {
  font-weight: 700;
}

.site-sidebar {
  position: absolute;
  width: 100%;
  height: 100vh;
  display: block;
  top: 0;
  right: -100%;
  margin: 0;
  padding: 8rem 0 0 0;
  background: #eae9e8;
  transition: all 0.3s ease 0s;
  z-index: -1;
}
@media only screen and (min-width: 1080px) {
  .site-sidebar {
    display: none;
  }
}
.site-sidebar.open, .site-sidebar[aria-expanded=true] {
  right: 0;
}
.site-sidebar__content {
  position: relative;
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  align-items: flex-start;
  justify-content: flex-start;
  margin: 0;
  padding: 20vw 14%vw 0 14%vw;
  overflow: hidden;
}
.site-sidebar__elements {
  display: none;
}

#sidebar-searchform {
  width: 100%;
  display: block;
  margin: auto 0 0 0;
  padding: 0;
  font-size: 0;
}
#sidebar-searchform .submit-column {
  width: 4rem;
  display: inline-block;
  margin: 0 1rem 0 0;
  padding: 0;
  vertical-align: top;
}
#sidebar-searchform .input-column {
  width: calc(100% - 5rem);
  display: inline-block;
  margin: 0;
  padding: 0;
  vertical-align: top;
}
#sidebar-searchform .input-column .input-wrap {
  width: 100%;
  margin: 0;
}

.inh-button img {
  max-width: 200px;
}

.cta__buy-tickets {
  position: fixed;
  z-index: 10000000;
  top: 50vh;
  right: 0px;
  transition: all 0.33s ease-in-out;
  display: flex;
}
.cta__buy-tickets a {
  text-transform: uppercase;
  font-size: 15px;
  font-weight: 600;
  line-height: 30px;
  background: #f79e32;
  padding: 18px 20px 18px 70px;
  border-radius: 11px 0px 0px 11px;
  z-index: 1;
  transition: all 0.33s ease-in-out;
  position: relative;
}
.cta__buy-tickets a:before {
  content: "";
  height: 20px;
  width: 35px;
  position: absolute;
  background: url("/wp-content/themes/speak/assets/icons/ui/icon__ticket-black.svg");
  background-repeat: no-repeat;
  background-size: contain;
  left: 20px;
  top: 23px;
  z-index: 4;
}
.cta__buy-tickets a:hover {
  background: #b3e053;
  color: #000000 !important;
}

.cta__buy-tickets {
  box-shadow: 0 5px 10px -3px rgba(0, 0, 0, 0.3);
}
html.unscrollable .cta__buy-tickets {
  right: -250px !important;
  pointer-events: none;
}

#cta__zoo-hours {
  background: #f79e32;
  display: flex;
  justify-content: center;
  align-items: center;
  height: 24px;
}
@media only screen and (min-width: 1080px) {
  #cta__zoo-hours {
    position: absolute;
    right: 0px;
    top: 112px;
    border-radius: 21px 0px 0px 21px;
    height: 42px;
    background: transparent;
  }
  #cta__zoo-hours:before {
    position: absolute;
    content: "";
    background: white;
    background: linear-gradient(90deg, #eddfd1, #f79e32);
    height: 100%;
    width: 100%;
    z-index: 0;
    left: 0px;
    top: 0px;
    border-radius: 21px 0px 0px 21px;
    opacity: 1;
    backdrop-filter: blur(5px);
  }
}
#cta__zoo-hours p {
  margin: 0;
  z-index: 1;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 1.35px;
  font-size: 15px;
  position: relative;
  padding-left: 40px;
}
#cta__zoo-hours p:before {
  content: "";
  position: absolute;
  height: 15px;
  width: 15px;
  left: 15px;
  top: 50%;
  transform: translate(0%, -50%);
  background-image: url("/wp-content/themes/speak/assets/icons/ui/icon__clock.svg");
  background-repeat: no-repeat;
  background-size: contain;
}
@media only screen and (min-width: 1080px) {
  #cta__zoo-hours p:before {
    height: 20px;
    width: 20px;
    left: 10px;
  }
}
@media only screen and (min-width: 1080px) {
  #cta__zoo-hours p {
    font-size: 18px;
    letter-spacing: 1.62px;
  }
}

#search-drawer {
  display: flex;
  position: fixed;
  z-index: 1000;
  align-items: center;
  background: #82c657;
  bottom: 100%;
  gap: 2.4rem;
  padding: 2rem 4rem 2rem 6.4rem;
  transition: transform 0.3s ease 0s;
  width: 100%;
}
#search-drawer.open {
  transform: translateY(100%);
}
#search-drawer .form-row {
  margin: 0;
  padding: 0;
}
#search-drawer #searchform {
  display: grid;
  grid-template-columns: auto 120px;
}
#search-drawer #s {
  background-color: white;
  border-radius: 40px;
  color: black;
}
#search-drawer #searchsubmit {
  background-color: #1279a8;
  border-radius: 40px;
  color: white;
  font-size: 2.4rem;
  font-weight: bold;
  width: 100%;
}
#search-drawer #search-dismiss {
  color: white;
  cursor: pointer;
  font-size: 2.4rem;
}

/* Content
----------------------------------------------------------------- */
#page {
  position: relative;
  width: 100%;
  height: 100%;
  display: block;
  margin: 0;
  padding: 0;
  z-index: 0;
  font-size: 0;
  line-height: 0;
}

#alerts-bar {
  position: relative;
  width: 100%;
  display: block;
  margin: 0;
  padding: 2rem;
  background: #000000;
  text-align: center;
}
#alerts-bar .widget:not(:first-child) {
  display: none;
}
#alerts-bar #close-alerts {
  position: absolute;
  top: calc(50% - 2rem);
  right: 2rem;
  font-size: 4rem;
  line-height: 4rem;
  color: #ffffff;
  transition: all 0.3s ease 0s;
  cursor: pointer;
}
body:not(.touch-device) #alerts-bar #close-alerts:hover {
  color: rgba(255, 255, 255, 0.5);
}

.site-main {
  position: relative;
  width: 100%;
  display: block;
  margin: 0;
  padding: 0;
  transition: all 360ms cubic-bezier(0.23, 1, 0.32, 1) 0s;
  will-change: transform;
}

.site-content {
  width: 100%;
  display: block;
  margin: 0;
  padding: 0 0 6rem 0;
}
.site-content.default {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
}

.hentry {
  width: 100%;
  display: block;
  margin: 0;
  padding: 0;
}

.entry-content {
  width: 100%;
  display: block;
  margin: 0;
  padding: 0;
}
.entry-content.anim {
  transition: all 0.9s ease 0s;
  transform: translateY(6rem);
  opacity: 0;
}
.entry-content.anim.in-view {
  transform: translateY(0);
  opacity: 1;
}

#breadcrumb-list {
  width: 100%;
  display: block;
  margin: 0;
  padding: 4rem calc(14%vw + 1.5rem);
  text-align: left;
}
#breadcrumb-list li {
  width: auto;
  display: inline-block;
  margin: 0;
  padding: 0 0.5rem;
  font-size: 1.8rem;
  line-height: 4rem;
  font-weight: 700;
  color: #eae9e8;
  vertical-align: top;
}
#breadcrumb-list li.separator {
  font-size: 4rem;
}
#breadcrumb-list a {
  width: auto;
  display: block;
  margin: 0;
  padding: 0;
  color: #1279a8;
  transition: all 0.3s ease 0s;
}
body:not(.touch-device) #breadcrumb-list a:hover {
  color: #000000;
}
body:not(.touch-device) #breadcrumb-list.reverse a:hover {
  color: rgba(255, 255, 255, 0.5);
}
#breadcrumb-list.anim {
  transition: all 0.9s ease 0s;
  transform: translateY(6rem);
  opacity: 0;
}
#breadcrumb-list.anim.in-view {
  transform: translateY(0);
  opacity: 1;
}

#secondary {
  width: 100%;
  display: inline-block;
  margin: 0;
  padding: 0 2rem;
  vertical-align: top;
}
@media (min-width: 840px) {
  #secondary {
    width: 33.333334%;
  }
}
@media (min-width: 1280px) {
  #secondary {
    width: 25%;
  }
}

#primary {
  width: 100%;
  display: inline-block;
  margin: 0;
  padding: 0;
  vertical-align: top;
}
@media (min-width: 840px) {
  #primary {
    width: 66.666667%;
  }
}
@media (min-width: 1280px) {
  #primary {
    width: 75%;
  }
}

.container {
  width: 100%;
  display: block;
  margin: 0;
  padding: 0 14%%;
}

.row {
  width: 100%;
  display: block;
  margin: 0;
  margin-bottom: 125px;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  text-align: left;
}
body.single .row {
  padding: 0 14%vw 4rem 14%vw;
}
body.single .row:last-child {
  padding: 0 14%vw 8rem 14%vw;
}
.row.full-width {
  padding-left: 0;
  padding-right: 0;
}
.row.equal-height {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
}
.row.equal-height .column {
  flex: 1 1 auto;
}
.row.space-between {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: space-between;
}
.row.space-between .column {
  flex: 0 1 auto;
}
.row.vertical-top {
  align-items: flex-start;
}
.row.vertical-center {
  align-items: center;
}
.row.vertical-bottom {
  align-items: flex-end;
}
.row.section-row {
  position: relative;
  overflow: hidden;
  z-index: 1;
}
.row.search-result h2 {
  margin: 0 0 1rem 0;
}
.row.search-result .button {
  margin: 0 2rem 2rem 2rem;
}
.row.has-bg {
  position: relative;
  z-index: 0;
}
.row.has-bg:before {
  content: "";
  position: absolute;
  width: 168%vw;
  height: 100%;
  top: 0;
  left: 0;
  background: rgba(18, 121, 168, 0.05);
  z-index: -1;
}

.inner-row {
  width: 100%;
  display: block;
  margin: 0;
  padding: 0;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
}
.inner-row.section-row {
  position: relative;
  z-index: 1;
}
.inner-row.equal-height {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
}
.inner-row.equal-height .column {
  flex: 1 1 auto;
}
.inner-row + .inner-row {
  padding-top: 2rem;
}

.column {
  display: inline-block;
  margin: 0;
  padding: 0;
  transition: all 0.9s ease 0s;
  vertical-align: top;
}
.column.pull-left {
  margin-left: -14%vw;
  margin-right: 14%vw;
}
@media (min-width: 840px) {
  .column.pull-left {
    margin-right: 14%vw;
  }
}
.column.pull-right {
  margin-left: 14%vw;
  margin-right: -14%vw;
}
@media (min-width: 840px) {
  .column.pull-right {
    margin-left: 14%vw;
  }
}
.column.vertical-center {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  align-items: center;
  align-content: center;
}
.column.as-block {
  display: block;
}
.column.boxed {
  margin: 0 0 4rem 0;
  padding: 0 2rem;
}
.column.boxed .column-content {
  width: 100%;
  height: 100%;
  display: block;
  margin: 0;
  padding: 4rem 2rem 3rem 2rem;
}
@media (max-width: 839px) {
  .column.boxed {
    width: 100vw;
    padding: 0;
  }
  .row:not(.full-width) .column.boxed {
    margin: 0 -14%vw 4rem -14%vw;
  }
}
.column.anim:not(.in-view) {
  transform: translateY(6rem);
  opacity: 0;
}

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

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

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

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

.span-4, .recent-posts__posts-item {
  width: 100%;
}
@media (min-width: 840px) {
  .span-4, .recent-posts__posts-item {
    width: 50%;
  }
}
@media (min-width: 1280px) {
  .span-4, .recent-posts__posts-item {
    width: 33.333334%;
  }
}

.span-5 {
  width: 100%;
}
@media (min-width: 840px) {
  .span-5 {
    width: 50%;
  }
}
.span-6 {
  width: 100%;
}
@media (min-width: 840px) {
  .span-6 {
    width: 50%;
  }
}

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

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

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

.span-12 {
  width: 100%;
}

.wp-block-columns {
  width: 100%;
  margin: 4rem 0;
  margin-bottom: 4rem;
}

.wp-block-column:not(:first-child) {
  margin-left: 0 !important;
}
.wp-block-column.anim {
  transition: all 0.9s ease 0s;
  transform: translateY(6rem);
  opacity: 0;
}
.wp-block-column.anim.in-view {
  transform: translateY(0);
  opacity: 1;
}

.widget {
  width: 100%;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  align-items: center;
  align-content: center;
  margin: 0;
  padding: 0;
  text-align: left;
}
.widget .notification-content {
  width: 100%;
  display: inline-block;
  margin: 0;
  padding: 0;
  vertical-align: top;
}
.widget p {
  margin: 0;
}
@media (min-width: 840px) {
  .widget {
    flex-wrap: nowrap;
  }
  .widget .notification-content {
    width: auto;
  }
}

#comments {
  width: 100%;
  display: block;
  margin: 0 auto;
  padding: 0 14%% 8rem 14%%;
}
#comments .divider-line {
  margin: 0 2rem 7.8rem 2rem;
}
#comments .comment-count {
  width: calc(100% - 4rem);
  display: block;
  margin: 0 2rem 2rem 2rem;
  padding: 0;
  font-size: 1.8rem;
  line-height: 2.5rem;
  font-weight: 700;
  color: #000000;
}
#comments .comment-count.anim {
  opacity: 0;
  transform: translateY(6rem);
  transition: all 0.9s ease 0s;
}
#comments .comment-count.anim.in-view {
  opacity: 1;
  transform: translateY(0);
}
#comments .comments-list {
  width: 100%;
  display: block;
  margin: 0;
  padding: 0;
}
#comments .comment {
  width: 100%;
  display: block;
  margin: 0 0 4rem 0;
  padding: 0;
}
#comments .comment .comment {
  margin: 0;
}
#comments .comment footer {
  width: 100%;
  display: block;
  margin: 0;
  padding: 0 2rem;
  font-size: 1.4rem;
  line-height: 2rem;
}
#comments .comment footer .comment-meta {
  width: 100%;
  display: block;
  margin: 0;
  padding: 0;
}
#comments .comment-content {
  width: 100%;
  display: block;
  margin: 0;
  padding: 0;
}
#comments .comment-content p {
  margin: 0 0 1rem 0;
}
#comments .comment-form {
  width: 100%;
  display: block;
  margin: 0;
  padding: 0;
}
#comments .comment-form.anim {
  opacity: 0;
  transform: translateY(6rem);
  transition: all 0.9s ease 0s;
}
#comments .comment-form.anim.in-view {
  opacity: 1;
  transform: translateY(0);
}
#comments .reply {
  width: 100%;
  display: block;
  margin: 0 0 2rem 0;
  padding: 0 2rem;
}

#respond {
  width: 100%;
  display: block;
  margin: 0;
  padding: 0;
  font-size: 0;
}
#respond small {
  width: auto;
  display: block;
  margin: 0 0 1rem 0;
  padding: 0 2rem;
  font-size: 1.4rem;
}

.hidden {
  display: none !important;
}

.get-a-better-browser {
  position: fixed;
  width: 100%;
  height: 100%;
  display: block;
  top: 0;
  left: 0;
  margin: 0;
  padding: 0;
}
.get-a-better-browser iframe {
  position: relative;
  width: 100%;
  height: 100%;
  display: block;
  margin: 0;
  padding: 0;
}

.hide-all {
  display: none !important;
}

@media (max-width: 839px) {
  .hide-mobile {
    display: none !important;
  }
}
@media (min-width: 840px) and (max-width: 1279px) {
  .hide-tablet {
    display: none !important;
  }
}
@media (min-width: 1280px) {
  .hide-desktop {
    display: none !important;
  }
}
/* Alignments */
.alignleft {
  display: inline-block;
  float: left;
  margin-right: 1.5em;
}

.alignright {
  display: inline-block;
  float: right;
  margin-left: 1.5em;
}

.aligncenter {
  clear: both;
  display: block;
  margin-left: auto;
  margin-right: auto;
}

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

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

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

/* Spacing */
*.pt-24 {
  padding-top: -24rem !important;
}

*.pb-24 {
  padding-bottom: -24rem !important;
}

*.pa-24 {
  padding: -24rem !important;
}

*.mt-24 {
  margin-top: -24rem !important;
}

*.mb-24 {
  margin-bottom: -24rem !important;
}

*.ma-24 {
  padding: -24rem !important;
}

*.pt-23 {
  padding-top: -23rem !important;
}

*.pb-23 {
  padding-bottom: -23rem !important;
}

*.pa-23 {
  padding: -23rem !important;
}

*.mt-23 {
  margin-top: -23rem !important;
}

*.mb-23 {
  margin-bottom: -23rem !important;
}

*.ma-23 {
  padding: -23rem !important;
}

*.pt-22 {
  padding-top: -22rem !important;
}

*.pb-22 {
  padding-bottom: -22rem !important;
}

*.pa-22 {
  padding: -22rem !important;
}

*.mt-22 {
  margin-top: -22rem !important;
}

*.mb-22 {
  margin-bottom: -22rem !important;
}

*.ma-22 {
  padding: -22rem !important;
}

*.pt-21 {
  padding-top: -21rem !important;
}

*.pb-21 {
  padding-bottom: -21rem !important;
}

*.pa-21 {
  padding: -21rem !important;
}

*.mt-21 {
  margin-top: -21rem !important;
}

*.mb-21 {
  margin-bottom: -21rem !important;
}

*.ma-21 {
  padding: -21rem !important;
}

*.pt-20 {
  padding-top: -20rem !important;
}

*.pb-20 {
  padding-bottom: -20rem !important;
}

*.pa-20 {
  padding: -20rem !important;
}

*.mt-20 {
  margin-top: -20rem !important;
}

*.mb-20 {
  margin-bottom: -20rem !important;
}

*.ma-20 {
  padding: -20rem !important;
}

*.pt-19 {
  padding-top: -19rem !important;
}

*.pb-19 {
  padding-bottom: -19rem !important;
}

*.pa-19 {
  padding: -19rem !important;
}

*.mt-19 {
  margin-top: -19rem !important;
}

*.mb-19 {
  margin-bottom: -19rem !important;
}

*.ma-19 {
  padding: -19rem !important;
}

*.pt-18 {
  padding-top: -18rem !important;
}

*.pb-18 {
  padding-bottom: -18rem !important;
}

*.pa-18 {
  padding: -18rem !important;
}

*.mt-18 {
  margin-top: -18rem !important;
}

*.mb-18 {
  margin-bottom: -18rem !important;
}

*.ma-18 {
  padding: -18rem !important;
}

*.pt-17 {
  padding-top: -17rem !important;
}

*.pb-17 {
  padding-bottom: -17rem !important;
}

*.pa-17 {
  padding: -17rem !important;
}

*.mt-17 {
  margin-top: -17rem !important;
}

*.mb-17 {
  margin-bottom: -17rem !important;
}

*.ma-17 {
  padding: -17rem !important;
}

*.pt-16 {
  padding-top: -16rem !important;
}

*.pb-16 {
  padding-bottom: -16rem !important;
}

*.pa-16 {
  padding: -16rem !important;
}

*.mt-16 {
  margin-top: -16rem !important;
}

*.mb-16 {
  margin-bottom: -16rem !important;
}

*.ma-16 {
  padding: -16rem !important;
}

*.pt-15 {
  padding-top: -15rem !important;
}

*.pb-15 {
  padding-bottom: -15rem !important;
}

*.pa-15 {
  padding: -15rem !important;
}

*.mt-15 {
  margin-top: -15rem !important;
}

*.mb-15 {
  margin-bottom: -15rem !important;
}

*.ma-15 {
  padding: -15rem !important;
}

*.pt-14 {
  padding-top: -14rem !important;
}

*.pb-14 {
  padding-bottom: -14rem !important;
}

*.pa-14 {
  padding: -14rem !important;
}

*.mt-14 {
  margin-top: -14rem !important;
}

*.mb-14 {
  margin-bottom: -14rem !important;
}

*.ma-14 {
  padding: -14rem !important;
}

*.pt-13 {
  padding-top: -13rem !important;
}

*.pb-13 {
  padding-bottom: -13rem !important;
}

*.pa-13 {
  padding: -13rem !important;
}

*.mt-13 {
  margin-top: -13rem !important;
}

*.mb-13 {
  margin-bottom: -13rem !important;
}

*.ma-13 {
  padding: -13rem !important;
}

*.pt-12 {
  padding-top: -12rem !important;
}

*.pb-12 {
  padding-bottom: -12rem !important;
}

*.pa-12 {
  padding: -12rem !important;
}

*.mt-12 {
  margin-top: -12rem !important;
}

*.mb-12 {
  margin-bottom: -12rem !important;
}

*.ma-12 {
  padding: -12rem !important;
}

*.pt-11 {
  padding-top: -11rem !important;
}

*.pb-11 {
  padding-bottom: -11rem !important;
}

*.pa-11 {
  padding: -11rem !important;
}

*.mt-11 {
  margin-top: -11rem !important;
}

*.mb-11 {
  margin-bottom: -11rem !important;
}

*.ma-11 {
  padding: -11rem !important;
}

*.pt-10 {
  padding-top: -10rem !important;
}

*.pb-10 {
  padding-bottom: -10rem !important;
}

*.pa-10 {
  padding: -10rem !important;
}

*.mt-10 {
  margin-top: -10rem !important;
}

*.mb-10 {
  margin-bottom: -10rem !important;
}

*.ma-10 {
  padding: -10rem !important;
}

*.pt-9 {
  padding-top: -9rem !important;
}

*.pb-9 {
  padding-bottom: -9rem !important;
}

*.pa-9 {
  padding: -9rem !important;
}

*.mt-9 {
  margin-top: -9rem !important;
}

*.mb-9 {
  margin-bottom: -9rem !important;
}

*.ma-9 {
  padding: -9rem !important;
}

*.pt-8 {
  padding-top: -8rem !important;
}

*.pb-8 {
  padding-bottom: -8rem !important;
}

*.pa-8 {
  padding: -8rem !important;
}

*.mt-8 {
  margin-top: -8rem !important;
}

*.mb-8 {
  margin-bottom: -8rem !important;
}

*.ma-8 {
  padding: -8rem !important;
}

*.pt-7 {
  padding-top: -7rem !important;
}

*.pb-7 {
  padding-bottom: -7rem !important;
}

*.pa-7 {
  padding: -7rem !important;
}

*.mt-7 {
  margin-top: -7rem !important;
}

*.mb-7 {
  margin-bottom: -7rem !important;
}

*.ma-7 {
  padding: -7rem !important;
}

*.pt-6 {
  padding-top: -6rem !important;
}

*.pb-6 {
  padding-bottom: -6rem !important;
}

*.pa-6 {
  padding: -6rem !important;
}

*.mt-6 {
  margin-top: -6rem !important;
}

*.mb-6 {
  margin-bottom: -6rem !important;
}

*.ma-6 {
  padding: -6rem !important;
}

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

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

*.pa-5 {
  padding: -5rem !important;
}

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

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

*.ma-5 {
  padding: -5rem !important;
}

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

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

*.pa-4 {
  padding: -4rem !important;
}

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

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

*.ma-4 {
  padding: -4rem !important;
}

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

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

*.pa-3 {
  padding: -3rem !important;
}

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

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

*.ma-3 {
  padding: -3rem !important;
}

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

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

*.pa-2 {
  padding: -2rem !important;
}

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

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

*.ma-2 {
  padding: -2rem !important;
}

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

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

*.pa-1 {
  padding: -1rem !important;
}

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

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

*.ma-1 {
  padding: -1rem !important;
}

*.pt0 {
  padding-top: 0 !important;
}

*.pb0 {
  padding-bottom: 0 !important;
}

*.pa0 {
  padding: 0 !important;
}

*.mt0 {
  margin-top: 0 !important;
}

*.mb0 {
  margin-bottom: 0 !important;
}

*.ma0 {
  padding: 0 !important;
}

*.pt1 {
  padding-top: 1rem !important;
}

*.pb1 {
  padding-bottom: 1rem !important;
}

*.pa1 {
  padding: 1rem !important;
}

*.mt1 {
  margin-top: 1rem !important;
}

*.mb1 {
  margin-bottom: 1rem !important;
}

*.ma1 {
  padding: 1rem !important;
}

*.pt2 {
  padding-top: 2rem !important;
}

*.pb2 {
  padding-bottom: 2rem !important;
}

*.pa2 {
  padding: 2rem !important;
}

*.mt2 {
  margin-top: 2rem !important;
}

*.mb2 {
  margin-bottom: 2rem !important;
}

*.ma2 {
  padding: 2rem !important;
}

*.pt3 {
  padding-top: 3rem !important;
}

*.pb3 {
  padding-bottom: 3rem !important;
}

*.pa3 {
  padding: 3rem !important;
}

*.mt3 {
  margin-top: 3rem !important;
}

*.mb3 {
  margin-bottom: 3rem !important;
}

*.ma3 {
  padding: 3rem !important;
}

*.pt4 {
  padding-top: 4rem !important;
}

*.pb4 {
  padding-bottom: 4rem !important;
}

*.pa4 {
  padding: 4rem !important;
}

*.mt4 {
  margin-top: 4rem !important;
}

*.mb4 {
  margin-bottom: 4rem !important;
}

*.ma4 {
  padding: 4rem !important;
}

*.pt5 {
  padding-top: 5rem !important;
}

*.pb5 {
  padding-bottom: 5rem !important;
}

*.pa5 {
  padding: 5rem !important;
}

*.mt5 {
  margin-top: 5rem !important;
}

*.mb5 {
  margin-bottom: 5rem !important;
}

*.ma5 {
  padding: 5rem !important;
}

*.pt6 {
  padding-top: 6rem !important;
}

*.pb6 {
  padding-bottom: 6rem !important;
}

*.pa6 {
  padding: 6rem !important;
}

*.mt6 {
  margin-top: 6rem !important;
}

*.mb6 {
  margin-bottom: 6rem !important;
}

*.ma6 {
  padding: 6rem !important;
}

*.pt7 {
  padding-top: 7rem !important;
}

*.pb7 {
  padding-bottom: 7rem !important;
}

*.pa7 {
  padding: 7rem !important;
}

*.mt7 {
  margin-top: 7rem !important;
}

*.mb7 {
  margin-bottom: 7rem !important;
}

*.ma7 {
  padding: 7rem !important;
}

*.pt8 {
  padding-top: 8rem !important;
}

*.pb8 {
  padding-bottom: 8rem !important;
}

*.pa8 {
  padding: 8rem !important;
}

*.mt8 {
  margin-top: 8rem !important;
}

*.mb8 {
  margin-bottom: 8rem !important;
}

*.ma8 {
  padding: 8rem !important;
}

*.pt9 {
  padding-top: 9rem !important;
}

*.pb9 {
  padding-bottom: 9rem !important;
}

*.pa9 {
  padding: 9rem !important;
}

*.mt9 {
  margin-top: 9rem !important;
}

*.mb9 {
  margin-bottom: 9rem !important;
}

*.ma9 {
  padding: 9rem !important;
}

*.pt10 {
  padding-top: 10rem !important;
}

*.pb10 {
  padding-bottom: 10rem !important;
}

*.pa10 {
  padding: 10rem !important;
}

*.mt10 {
  margin-top: 10rem !important;
}

*.mb10 {
  margin-bottom: 10rem !important;
}

*.ma10 {
  padding: 10rem !important;
}

*.pt11 {
  padding-top: 11rem !important;
}

*.pb11 {
  padding-bottom: 11rem !important;
}

*.pa11 {
  padding: 11rem !important;
}

*.mt11 {
  margin-top: 11rem !important;
}

*.mb11 {
  margin-bottom: 11rem !important;
}

*.ma11 {
  padding: 11rem !important;
}

*.pt12 {
  padding-top: 12rem !important;
}

*.pb12 {
  padding-bottom: 12rem !important;
}

*.pa12 {
  padding: 12rem !important;
}

*.mt12 {
  margin-top: 12rem !important;
}

*.mb12 {
  margin-bottom: 12rem !important;
}

*.ma12 {
  padding: 12rem !important;
}

*.pt13 {
  padding-top: 13rem !important;
}

*.pb13 {
  padding-bottom: 13rem !important;
}

*.pa13 {
  padding: 13rem !important;
}

*.mt13 {
  margin-top: 13rem !important;
}

*.mb13 {
  margin-bottom: 13rem !important;
}

*.ma13 {
  padding: 13rem !important;
}

*.pt14 {
  padding-top: 14rem !important;
}

*.pb14 {
  padding-bottom: 14rem !important;
}

*.pa14 {
  padding: 14rem !important;
}

*.mt14 {
  margin-top: 14rem !important;
}

*.mb14 {
  margin-bottom: 14rem !important;
}

*.ma14 {
  padding: 14rem !important;
}

*.pt15 {
  padding-top: 15rem !important;
}

*.pb15 {
  padding-bottom: 15rem !important;
}

*.pa15 {
  padding: 15rem !important;
}

*.mt15 {
  margin-top: 15rem !important;
}

*.mb15 {
  margin-bottom: 15rem !important;
}

*.ma15 {
  padding: 15rem !important;
}

*.pt16 {
  padding-top: 16rem !important;
}

*.pb16 {
  padding-bottom: 16rem !important;
}

*.pa16 {
  padding: 16rem !important;
}

*.mt16 {
  margin-top: 16rem !important;
}

*.mb16 {
  margin-bottom: 16rem !important;
}

*.ma16 {
  padding: 16rem !important;
}

*.pt17 {
  padding-top: 17rem !important;
}

*.pb17 {
  padding-bottom: 17rem !important;
}

*.pa17 {
  padding: 17rem !important;
}

*.mt17 {
  margin-top: 17rem !important;
}

*.mb17 {
  margin-bottom: 17rem !important;
}

*.ma17 {
  padding: 17rem !important;
}

*.pt18 {
  padding-top: 18rem !important;
}

*.pb18 {
  padding-bottom: 18rem !important;
}

*.pa18 {
  padding: 18rem !important;
}

*.mt18 {
  margin-top: 18rem !important;
}

*.mb18 {
  margin-bottom: 18rem !important;
}

*.ma18 {
  padding: 18rem !important;
}

*.pt19 {
  padding-top: 19rem !important;
}

*.pb19 {
  padding-bottom: 19rem !important;
}

*.pa19 {
  padding: 19rem !important;
}

*.mt19 {
  margin-top: 19rem !important;
}

*.mb19 {
  margin-bottom: 19rem !important;
}

*.ma19 {
  padding: 19rem !important;
}

*.pt20 {
  padding-top: 20rem !important;
}

*.pb20 {
  padding-bottom: 20rem !important;
}

*.pa20 {
  padding: 20rem !important;
}

*.mt20 {
  margin-top: 20rem !important;
}

*.mb20 {
  margin-bottom: 20rem !important;
}

*.ma20 {
  padding: 20rem !important;
}

*.pt21 {
  padding-top: 21rem !important;
}

*.pb21 {
  padding-bottom: 21rem !important;
}

*.pa21 {
  padding: 21rem !important;
}

*.mt21 {
  margin-top: 21rem !important;
}

*.mb21 {
  margin-bottom: 21rem !important;
}

*.ma21 {
  padding: 21rem !important;
}

*.pt22 {
  padding-top: 22rem !important;
}

*.pb22 {
  padding-bottom: 22rem !important;
}

*.pa22 {
  padding: 22rem !important;
}

*.mt22 {
  margin-top: 22rem !important;
}

*.mb22 {
  margin-bottom: 22rem !important;
}

*.ma22 {
  padding: 22rem !important;
}

*.pt23 {
  padding-top: 23rem !important;
}

*.pb23 {
  padding-bottom: 23rem !important;
}

*.pa23 {
  padding: 23rem !important;
}

*.mt23 {
  margin-top: 23rem !important;
}

*.mb23 {
  margin-bottom: 23rem !important;
}

*.ma23 {
  padding: 23rem !important;
}

*.pt24 {
  padding-top: 24rem !important;
}

*.pb24 {
  padding-bottom: 24rem !important;
}

*.pa24 {
  padding: 24rem !important;
}

*.mt24 {
  margin-top: 24rem !important;
}

*.mb24 {
  margin-bottom: 24rem !important;
}

*.ma24 {
  padding: 24rem !important;
}

/* Footer
----------------------------------------------------------------- */
.site-footer {
  position: relative;
  width: 100%;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-between;
  margin: 0;
  padding: 2rem 14%vw;
  z-index: -1;
  margin-bottom: 0;
}
.site-footer .footer-container {
  background: white;
  flex-direction: column;
  margin: 0 auto;
  padding: 50px 28px;
  border-radius: 35px;
  position: relative;
  width: calc(100% - 48px);
}
@media only screen and (min-width: 1080px) {
  .site-footer .footer-container {
    padding: 56px 56px 0 56px;
  }
}
.site-footer .footer-container:before {
  content: "";
  position: absolute;
  height: 100%;
  width: 100%;
  background: transparent linear-gradient(180deg, #b3e053 0%, #f79e32 100%) 0% 0% no-repeat padding-box;
  left: 0px;
  top: 0px;
  opacity: 0.33;
  z-index: 1;
  border-radius: 35px;
}
.site-footer .footer-container__top {
  display: flex;
  flex-direction: row;
  position: relative;
  z-index: 2;
}
.site-footer .footer__contact {
  width: 100%;
}
@media only screen and (min-width: 1080px) {
  .site-footer .footer__contact {
    width: 25%;
  }
}
.site-footer .footer__contact-hours h5 {
  font-weight: bold;
  font-size: 21px;
  line-height: 26px;
  padding: 0;
  letter-spacing: 0.42px;
  text-align: center;
  font-family: "Comfortaa", sans-serif;
}
@media only screen and (min-width: 1080px) {
  .site-footer .footer__contact-hours h5 {
    text-align: left;
  }
}
.site-footer .footer__contact-hours p {
  font-size: 15px;
  letter-spacing: 0.3px;
  line-height: 24px;
  font-weight: 500;
  padding: 0;
  text-align: center;
}
@media only screen and (min-width: 1080px) {
  .site-footer .footer__contact-hours p {
    text-align: left;
  }
}
.site-footer .footer__contact-info {
  display: flex;
  flex-direction: column;
  width: fit-content;
  margin: 0 auto;
  margin-top: 55px;
  padding-left: 28px;
}
@media only screen and (min-width: 1080px) {
  .site-footer .footer__contact-info {
    margin: 0;
    margin-top: 55px;
    padding-left: 28px;
  }
}
.site-footer .footer__contact-info a {
  font-size: 15px;
  letter-spacing: 0.3px;
  font-weight: 500;
  line-height: 24px;
}
.site-footer .footer__contact-info-address {
  margin-bottom: 28px;
  position: relative;
}
.site-footer .footer__contact-info-address:before {
  content: "";
  background-image: url("/wp-content/themes/speak/assets/icons/ui/icon__pin-green.svg");
  background-repeat: no-repeat;
  background-size: contain;
  height: 21px;
  width: 16px;
  position: absolute;
  left: -28px;
  top: 5px;
}
.site-footer .footer__contact-info-phone {
  position: relative;
}
.site-footer .footer__contact-info-phone:before {
  content: "";
  background-image: url("/wp-content/themes/speak/assets/icons/ui/icon__phone-green.svg");
  background-repeat: no-repeat;
  background-size: contain;
  height: 16px;
  width: 16px;
  position: absolute;
  left: -28px;
  top: 5px;
}
.site-footer .footer__contact-info-email {
  position: relative;
}
.site-footer .footer__contact-info-email:before {
  content: "";
  background-image: url("/wp-content/themes/speak/assets/icons/ui/icon__email-green.svg");
  background-repeat: no-repeat;
  background-size: contain;
  height: 16px;
  width: 16px;
  position: absolute;
  left: -28px;
  top: 5px;
}
.site-footer .footer__contact-button {
  border: 2px solid black;
  height: 47px;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 7px;
  background: rgba(179, 224, 83, 0.25);
  position: relative;
  overflow: hidden;
  width: 100%;
  max-width: 321px;
  margin: 0 auto;
  margin-top: 48px;
}
@media only screen and (min-width: 1080px) {
  .site-footer .footer__contact-button {
    width: 183px;
    margin: 0;
    margin-top: 48px;
  }
}
.site-footer .footer__contact-button:before {
  content: "";
  position: absolute;
  height: 100px;
  width: 100px;
  background: #b3e053;
  border-radius: 50%;
  bottom: -100px;
  transition: all 0.33s ease-in-out;
}
.site-footer .footer__contact-button:hover:before {
  width: 400px;
  height: 400px;
  bottom: -125px;
}
@media only screen and (min-width: 1080px) {
  .site-footer .footer__contact-button:hover:before {
    width: 250px;
    height: 250px;
  }
}
.site-footer .footer__contact-button:hover a {
  color: black !important;
  height: 100%;
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
}
.site-footer .footer__contact-button a {
  font-size: 15px;
  position: relative;
  z-index: 1;
  letter-spacing: 0.3px;
  font-weight: 500;
  text-transform: uppercase;
}
.site-footer .footer__nav {
  margin-left: 75px;
  width: 75%;
  display: none;
}
@media only screen and (min-width: 1080px) {
  .site-footer .footer__nav {
    display: flex;
  }
}
.site-footer .footer__nav ul {
  display: flex;
  justify-content: space-between;
  position: relative;
  padding: 0;
  width: 100%;
}
.site-footer .footer__nav ul:before {
  content: "";
  position: absolute;
  height: 1px;
  width: 100%;
  background: #262728;
  top: 38px;
  left: 0px;
  border-radius: 30px;
}
.site-footer .footer__nav ul li {
  padding: 0;
}
@media only screen and (min-width: 1280px) {
  .site-footer .footer__nav ul li {
    min-width: 112px;
  }
}
.site-footer .footer__nav ul li:before {
  display: none;
}
.site-footer .footer__nav ul li a {
  font-size: 15px;
  font-weight: 500;
  letter-spacing: 0.3px;
  text-transform: uppercase;
}
.site-footer .footer__nav ul li ul {
  display: flex;
  flex-direction: column;
  padding-top: 26.5px;
  margin: 0;
  max-width: 75px;
}
@media only screen and (min-width: 1280px) {
  .site-footer .footer__nav ul li ul {
    max-width: 112px;
  }
}
.site-footer .footer__nav ul li ul:before {
  display: none;
}
.site-footer .footer__nav ul li ul li {
  padding: 0;
  line-height: 18px;
  padding-bottom: 12px;
}
.site-footer .footer__nav ul li ul li a {
  font-size: 13px;
  line-height: 18px;
  text-transform: capitalize;
}
.site-footer .footer-container__middle {
  align-items: center;
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  margin-top: 68px;
  flex-direction: column;
  position: relative;
  z-index: 2;
}
@media only screen and (min-width: 1080px) {
  .site-footer .footer-container__middle {
    flex-direction: row;
  }
}
.site-footer .footer-container__bottom {
  position: relative;
  z-index: 2;
}
.site-footer .footer__socials {
  display: flex;
  flex-direction: column;
  width: 100%;
}
@media only screen and (min-width: 1080px) {
  .site-footer .footer__socials {
    width: unset;
  }
}
.site-footer .footer__socials h5 {
  margin: 0;
  margin-bottom: 17px;
  padding: 0;
  font-size: 21px;
  letter-spacing: 0.42px;
  line-height: 26px;
  text-align: center;
  font-family: "Comfortaa", sans-serif;
}
@media only screen and (min-width: 1080px) {
  .site-footer .footer__socials h5 {
    text-align: left;
  }
}
.site-footer .footer__socials ul {
  display: flex;
  padding: 0;
  margin: 0;
  justify-content: center;
}
@media only screen and (min-width: 1080px) {
  .site-footer .footer__socials ul {
    justify-content: flex-start;
  }
}
.site-footer .footer__socials ul li {
  padding: 0;
  padding-right: 21px;
  transition: all 0.33s ease-in-out;
}
.site-footer .footer__socials ul li:before {
  display: none;
}
.site-footer .footer__socials ul li a img {
  height: 40px;
  width: 40px;
}
.site-footer .footer__socials ul li:hover {
  transform: translatey(-5px);
}
.site-footer .footer__affiliates {
  margin: 20px auto -50px;
}
@media only screen and (min-width: 1080px) {
  .site-footer .footer__affiliates {
    margin: 0 auto;
    position: relative;
    top: -10px;
  }
}
.site-footer .footer__affiliates img {
  height: 50px;
}
.site-footer .footer__certifications {
  width: 100%;
  display: flex;
  justify-content: center;
  margin-top: 68px;
  margin-bottom: 10px;
}
@media only screen and (min-width: 1080px) {
  .site-footer .footer__certifications {
    width: unset;
    justify-content: flex-end;
    margin: 0;
  }
}
.site-footer .footer__utility {
  margin-top: 23px;
}
.site-footer .footer__utility ul {
  padding: 20px 0;
  margin: 0;
  display: flex;
  justify-content: space-between;
  border-top: 1px solid black;
  flex-direction: column;
  padding-left: 40px;
  padding-bottom: 23px;
}
@media only screen and (min-width: 1080px) {
  .site-footer .footer__utility ul {
    flex-direction: row;
    padding: 20px 0;
  }
}
.site-footer .footer__utility ul li {
  padding: 0;
}
.site-footer .footer__utility ul li:before {
  display: none;
}
.site-footer .footer__utility ul li a {
  font-size: 15px;
  letter-spacing: 0.3px;
  font-weight: 500;
  text-transform: uppercase;
}
.site-footer .footer__utility ul li ul {
  display: none;
}
.site-footer .footer__copyright {
  display: flex;
  justify-content: space-between;
  width: 100%;
  align-items: center;
  padding: 18px 56px;
  flex-direction: column;
  text-align: center;
}
@media only screen and (min-width: 1080px) {
  .site-footer .footer__copyright {
    flex-direction: row;
    text-align: left;
  }
}
.site-footer .footer__copyright p {
  font-size: 14px;
  letter-spacing: 0.46px;
  line-height: 22px;
  font-weight: 500;
  margin: 0;
}
.site-footer .footer__copyright a {
  font-size: 14px;
  letter-spacing: 0.46px;
  line-height: 22px;
  font-weight: 500;
}
.site-footer .footer__copyright a:hover {
  color: #ee3424 !important;
}

/* Content Elements */
.modal, .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;
}
.modal.open, .lightbox.open {
  transition: visibilty 0s ease 0s, opacity 0.3s ease 0s;
  visibility: visible;
  opacity: 1;
}
.modal-content, .lightbox-content {
  position: relative;
  width: 85.714285%;
  height: calc(100% - 12rem);
  display: block;
  margin: 6rem auto;
  padding: 0;
  z-index: 1;
}
.modal-content > img,
.modal-content > .video-block,
.modal-content > audio, .lightbox-content > img,
.lightbox-content > .video-block,
.lightbox-content > audio {
  position: absolute;
  max-width: 100%;
  max-height: 100%;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.modal .gallery-list, .lightbox .gallery-list {
  position: relative;
  width: calc(168%vw - 4rem);
  height: calc(100% - 12rem);
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  margin: 6rem auto;
  padding: 0;
  overflow: hidden;
  z-index: 1;
}
.modal .gallery-list__item, .lightbox .gallery-list__item {
  position: relative;
  width: 100%;
  height: 100%;
  display: inline-block;
  flex: 1 0 auto;
  margin: 0;
  padding: 0;
  white-space: normal;
  vertical-align: top;
}
.modal .gallery-list__item > img,
.modal .gallery-list__item > .video-block,
.modal .gallery-list__item > audio, .lightbox .gallery-list__item > img,
.lightbox .gallery-list__item > .video-block,
.lightbox .gallery-list__item > audio {
  position: absolute;
  max-width: 100%;
  max-height: 100%;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.modal-controls,
.lightbox-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;
}
.modal-controls span,
.lightbox-controls span {
  width: 14%%;
  height: 100%;
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  align-items: center;
  justify-content: center;
  margin: 0;
  padding: 0;
  font-size: 3rem;
  line-height: 3rem;
  color: #ffffff;
  text-align: center;
  transition: all 0.3s ease 0s;
  opacity: 1;
  cursor: pointer;
  vertical-align: top;
}
body:not(.touch-device) .modal-controls span:hover,
body:not(.touch-device) .lightbox-controls span:hover {
  opacity: 0.5;
}

.image-carousel .carousel-controls,
.recent-posts .carousel-controls {
  width: 100%;
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  padding: 2rem 14%vw 0 14%vw;
}
.image-carousel .carousel-controls > span,
.recent-posts .carousel-controls > span {
  position: relative;
  width: 3rem;
  height: 3rem;
  display: inline-block;
  margin: 0 2rem 0 0;
  border-radius: 50%;
  vertical-align: top;
  cursor: pointer;
  overflow: hidden;
}
.image-carousel .carousel-controls > span:before, .image-carousel .carousel-controls > span:after,
.recent-posts .carousel-controls > span:before,
.recent-posts .carousel-controls > span:after {
  content: "\e941";
  position: absolute;
  top: 0;
  font-family: "Material Symbols Outlined";
  font-size: 3rem;
  line-height: 3rem;
  color: #1279a8;
  transition: all 0.3s ease 0s;
}
.image-carousel .carousel-controls > span:before,
.recent-posts .carousel-controls > span:before {
  left: -3rem;
}
.image-carousel .carousel-controls > span:after,
.recent-posts .carousel-controls > span:after {
  right: 0;
}
.image-carousel .carousel-controls > span:hover:before,
.recent-posts .carousel-controls > span:hover:before {
  left: 0;
}
.image-carousel .carousel-controls > span:hover:after,
.recent-posts .carousel-controls > span:hover:after {
  right: -3rem;
}
.image-carousel .carousel-controls > span.prev-slide,
.recent-posts .carousel-controls > span.prev-slide {
  rotate: 180deg;
}
.image-carousel .carousel-indices,
.recent-posts .carousel-indices {
  width: auto;
  display: inline-block;
  margin: 0 auto 0 0;
  padding: 0 1.5rem;
  vertical-align: top;
}
.image-carousel .carousel-indices .carousel-index,
.recent-posts .carousel-indices .carousel-index {
  position: relative;
  width: 2rem;
  height: 3rem;
  display: inline-block;
  margin: 0;
  padding: 0;
  vertical-align: top;
  cursor: pointer;
}
.image-carousel .carousel-indices .carousel-index:before,
.recent-posts .carousel-indices .carousel-index:before {
  content: "";
  position: absolute;
  width: 1rem;
  height: 1rem;
  top: 1rem;
  left: 0.5rem;
  border-radius: 50%;
  border: 0.1rem solid #1279a8;
  transition: all 0.3s ease 0s;
}
.image-carousel .carousel-indices .carousel-index.active:before,
.recent-posts .carousel-indices .carousel-index.active:before {
  background: #1279a8;
}

.raw-html {
  width: 100%;
  display: block;
  margin: 0;
  padding: 0;
  min-height: 100px;
}

.google-map {
  position: relative;
  width: 100%;
  height: calc(100% + 12rem);
  min-height: 30rem;
  display: block;
  margin: 0;
  padding: 0;
}
.column:not(.pull-left):not(.pull-right) > .google-map {
  width: calc(100% - 4rem);
  margin-left: 2rem;
  margin-right: 2rem;
}
.equal-height .google-map {
  margin-top: -6rem;
  margin-bottom: -6rem;
}
@media (min-width: 480px) {
  .google-map:not(.has-height) {
    padding: 50% 0 0 0;
  }
}
@media (min-width: 1024px) {
  .google-map:not(.has-height) {
    padding: 33.333334% 0 0 0;
  }
}
@media (min-width: 1600px) {
  .google-map:not(.has-height) {
    padding: 25% 0 0 0;
  }
}
.google-map > div {
  background-color: transparent !important;
}

.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;
}

.color-swatches {
  width: 100%;
  display: block;
  margin: 0 0 2rem 0;
  padding: 0 2rem;
}
.color-swatches .color-swatch {
  width: 13rem;
  display: inline-block;
  margin: 0;
  padding: 1rem 2rem;
  font-size: 1.4rem;
  line-height: 2rem;
  font-weight: 700;
  color: #000000;
  text-transform: uppercase;
}
.color-swatches .color-swatch.reverse {
  color: #ffffff;
}

.grid-block {
  width: calc(100% - 4rem);
  display: block;
  margin: 0 2rem 2rem 2rem;
  padding: 1rem;
  background: #000000;
  font-size: 1.4rem;
  line-height: 2rem;
  font-weight: 300;
  color: #ffffff;
}

/* Events Elements */
#tribe-events-pg-template,
.events-archive .entry-content,
.events-archive .entry-header {
  width: 100% !important;
}

#tribe-events-pg-template {
  max-width: initial;
  display: block;
  margin: 0;
  padding: 0;
}

#tribe-events {
  width: 100%;
  display: block;
  margin: 0;
  padding: 0;
}
body.events-list #tribe-events .feed-filters {
  margin-bottom: 2rem;
}
#tribe-events table th {
  border: 0.1rem solid #000000;
}

.calendar-views {
  position: relative;
  width: 100%;
  display: block;
  margin: 0;
  padding: 0;
}
.calendar-views a {
  width: 50%;
  display: inline-block;
  margin: 0;
  font-size: 1.4rem;
  line-height: 2rem;
  color: #eae9e8;
  text-transform: uppercase;
  text-align: center;
  background: #ffffff;
  border-style: solid;
  border-color: #eae9e8;
  transition: all 0.3s ease 0s;
}
.calendar-views a.month-view-toggle {
  padding: 0.8rem 2rem 0.8rem 1.8rem;
  border-width: 0.2rem 0 0.2rem 0.2rem;
}
.calendar-views a.list-view-toggle {
  padding: 0.8rem 1.8rem 0.8rem 2rem;
  border-width: 0.2rem 0.2rem 0.2rem 0;
}
.calendar-views a.active {
  background: #eae9e8;
  color: #ffffff;
}
body:not(.touch-device) .calendar-views.month:hover .month-view-toggle {
  color: #eae9e8;
  background: #ffffff;
}
body:not(.touch-device) .calendar-views.month:hover .list-view-toggle {
  color: #ffffff;
  background: #eae9e8;
}
body:not(.touch-device) .calendar-views.list:hover .month-view-toggle {
  color: #ffffff;
  background: #eae9e8;
}
body:not(.touch-device) .calendar-views.list:hover .list-view-toggle {
  color: #eae9e8;
  background: #ffffff;
}
.calendar-views.anim {
  transition: all 0.9s ease 0s;
  transform: translateY(6rem);
  opacity: 0;
}
.calendar-views.anim.in-view {
  transform: translateY(0);
  opacity: 1;
}

#tribe-events-content {
  margin: 0 !important;
  padding: 0 0 6rem 0 !important;
}
#tribe-events-content table.tribe-events-calendar {
  border: none;
  border-bottom: none;
}

.events-loop {
  position: relative;
  width: 100%;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  margin: 0;
  padding: 0;
}
.events-loop .column {
  flex: 0 1 auto;
  margin: 0 0 4rem 0;
}

.tribe-events-calendar {
  width: calc(100% - 4rem) !important;
  margin: 0 2rem !important;
}
.tribe-events-calendar.anim {
  transition: all 0.9s ease 0s;
  transform: translateY(6rem);
  opacity: 0;
}
.tribe-events-calendar.anim.in-view {
  transform: translateY(0);
  opacity: 1;
}

.events-notices {
  width: 100%;
  display: block;
  margin: 2rem 0;
  padding: 0 2rem;
}
.events-notices li {
  width: 100%;
  display: block;
  margin: 0 0 2rem 0;
  padding: 0.8rem 1.8rem;
  font-size: 1.8rem;
  line-height: 2.5rem;
  font-weight: 300;
  color: #000000;
  border: 0.2rem solid #000000;
}

.events-month-header {
  display: block;
  margin: 0;
  padding: 4rem 0;
  text-align: center;
}
.events-month-header:nth-child(2) {
  padding: 2rem 0 4rem 0;
}
.events-month-header h3 {
  margin: 0;
}

.single-tribe_events .tribe-events-event-image {
  width: 100%;
  display: block;
  margin: 2rem 0;
  padding: 0 2rem;
}

.event-meta-group {
  margin: 2rem 0 0 0;
}

#tribe-events-header {
  width: 100%;
  display: block;
  margin: 0;
  padding: 0;
}

#tribe-events-footer {
  width: 100%;
  display: block;
  margin: 0 !important;
  padding: 0;
  border-top: none !important;
}

#tribe-events-footer:before,
#tribe-events-header:before {
  display: none !important;
}

.event-venue {
  width: 100%;
  display: block;
  margin: 0;
  padding: 0;
  font-size: 1.6rem;
  line-height: 2rem;
  font-weight: 400;
}

.tribe-events-nav-pagination {
  width: 100%;
  display: block;
  margin: 2rem 0;
  padding: 0;
}
.tribe-events-nav-pagination .tribe-events-sub-nav {
  width: 100%;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  margin: 0;
  padding: 0;
}
.tribe-events-nav-pagination .tribe-events-sub-nav li {
  width: 50%;
  display: inline-block;
  margin: 0;
  padding: 0 2rem;
  font-size: 1.6rem;
  line-height: 2rem;
  font-weight: 700;
  color: #1279a8;
  text-transform: uppercase;
  vertical-align: top;
}
.tribe-events-nav-pagination .tribe-events-sub-nav li.tribe-events-nav-previous {
  text-align: left;
}
.tribe-events-nav-pagination .tribe-events-sub-nav li.tribe-events-nav-next {
  text-align: right;
}
body:not(.touch-device) .tribe-events-nav-pagination .tribe-events-sub-nav li:hover {
  color: #000000;
}

#tribe-events-nav-pagination {
  width: 100%;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  align-items: flex-end;
  justify-content: center;
  margin: 2rem 0;
  padding: 0;
}
#tribe-events-nav-pagination span {
  display: inline-block;
  flex: 0 1 auto;
  margin: 0;
  padding: 0 2rem;
  font-size: 1.4rem;
  line-height: 2rem;
  font-weight: 700;
  color: #1279a8;
  text-transform: uppercase;
  vertical-align: top;
}
#tribe-events-nav-pagination span.tribe-events-nav-previous {
  text-align: left;
}
#tribe-events-nav-pagination span.tribe-events-nav-previous a:before {
  content: "«";
  display: inline-block;
  margin: -0.2rem 0.5rem 0 0;
  padding: 0;
  font-size: 3rem;
  line-height: 2rem;
  vertical-align: top;
}
#tribe-events-nav-pagination span.tribe-events-nav-next {
  text-align: right;
}
#tribe-events-nav-pagination span.tribe-events-nav-next a:after {
  content: "»";
  display: inline-block;
  margin: -0.2rem 0 0 0.5rem;
  padding: 0;
  font-size: 3rem;
  line-height: 2rem;
  vertical-align: top;
}
#tribe-events-nav-pagination span.tribe-events-nav-previous, #tribe-events-nav-pagination span.tribe-events-nav-next {
  width: 50%;
}
@media (min-width: 720px) {
  #tribe-events-nav-pagination span.tribe-events-nav-previous, #tribe-events-nav-pagination span.tribe-events-nav-next {
    width: 33.333334%;
  }
}
body:not(.touch-device) #tribe-events-nav-pagination span.tribe-events-nav-previous:hover, body:not(.touch-device) #tribe-events-nav-pagination span.tribe-events-nav-next:hover {
  color: #000000;
}
#tribe-events-nav-pagination .current-month-header {
  width: 33.333334%;
  margin: 0;
  font-family: "Open Sans", sans-serif;
  font-size: 4rem;
  line-height: 4rem;
  text-align: center;
  text-transform: uppercase;
  letter-spacing: -0.125rem;
  color: #1279a8;
}
@media (max-width: 719px) {
  #tribe-events-nav-pagination .current-month-header {
    width: 100%;
    order: 0;
  }
}
#tribe-events-nav-pagination.anim {
  transition: all 0.9s ease 0s;
  transform: translateY(6rem);
  opacity: 0;
}
#tribe-events-nav-pagination.anim.in-view {
  transform: translateY(0);
  opacity: 1;
}

.tribe-events-calendar {
  font-size: 1.2rem;
}
.tribe-events-calendar th {
  height: initial;
  padding: 0.9rem 0.4rem !important;
  font-size: 1.2rem;
  line-height: 2rem;
  font-weight: 700;
  background-color: #000000 !important;
}
#tribe-events-content .tribe-events-calendar td {
  padding: 0 0 1rem 0;
  border: 0.1rem solid #000000;
  background: #ffffff;
}
#tribe-events-content .tribe-events-calendar div[id*=tribe-events-event-] h3.tribe-events-month-event-title {
  padding: 0;
  font-family: "Open Sans", sans-serif;
  font-size: 1.2rem;
  line-height: 1.5rem;
  letter-spacing: 0;
}
.tribe-events-calendar td div[id*=tribe-events-daynum-] {
  width: 100%;
  display: block;
  margin: 0 0 0.5rem 0;
  padding: 0.5rem 1rem;
  font-size: 1.4rem;
  line-height: 2rem;
  font-weight: 700;
  color: #000000;
  background: none;
  text-align: right;
}
.tribe-events-calendar td div[id*=tribe-events-daynum-] a {
  width: 100%;
  display: block;
  margin: 0;
  padding: 0;
  background: none !important;
}
.tribe-events-calendar td.tribe-events-present div[id*=tribe-events-daynum-] {
  background: #000000;
}
.tribe-events-calendar td.tribe-events-present div[id*=tribe-events-daynum-],
.tribe-events-calendar td.tribe-events-present div[id*=tribe-events-daynum-] > a {
  color: #ffffff;
}
.tribe-events-calendar td.tribe-events-past div[id*=tribe-events-daynum-], .tribe-events-calendar td.tribe-events-future div[id*=tribe-events-daynum-] {
  background: none;
  color: #000000 !important;
}
.tribe-events-calendar td .tribe-events-viewmore a {
  font-size: 1rem;
  line-height: 1.5rem;
  text-transform: uppercase;
}
.tribe-events-calendar td.tribe-events-othermonth {
  background: none !important;
}
.tribe-events-calendar td.tribe-events-othermonth div[id*=tribe-events-daynum-],
.tribe-events-calendar td.tribe-events-othermonth div[id*=tribe-events-daynum-] > a {
  background: none !important;
}
.tribe-events-calendar .tribe-events-present,
.tribe-events-calendar .tribe-events-present.mobile-active div[id*=tribe-events-daynum-],
.tribe-events-calendar .tribe-events-present.mobile-active div[id*=tribe-events-daynum-] a,
.tribe-events-calendar td.tribe-events-present.mobile-active {
  background: none;
}

.tribe-events-othermonth .tribe-events-month-event-title,
.tribe-events-othermonth div[id*=tribe-events-daynum-] {
  opacity: 0.33;
}

.events-archive.events-gridview #tribe-events-content table .type-tribe_events {
  width: calc(100% - 1rem);
  margin: 0 1rem 0.5rem 0;
  padding: 0;
  border-bottom: none;
  background: #eae9e8;
  font-weight: 700;
}
.events-archive.events-gridview #tribe-events-content table .type-tribe_events a {
  display: block;
  padding: 0.5rem 0.5rem 0.5rem 1rem;
  font-weight: 700;
  color: #ffffff;
}
.events-archive.events-gridview #tribe-events-content table .type-tribe_events a:hover {
  color: rgba(255, 255, 255, 0.5);
}
.events-archive.events-gridview #tribe-events-content table .type-tribe_events.cat_view-details {
  background: #000000;
}
.events-archive.events-gridview #tribe-events-content table .type-tribe_events.cat_create-caer-app {
  background: #1279a8;
}
.events-archive.events-gridview #tribe-events-content table .type-tribe_events.cat_cancelled-postponed {
  background: #eae9e8;
}
.events-archive.events-gridview #tribe-events-content table .type-tribe_events.cat_cancelled-postponed a {
  color: #000000;
}
.events-archive.events-gridview #tribe-events-content table .type-tribe_events.cat_cancelled-postponed a:hover {
  color: #1279a8;
}
.events-archive.events-gridview #tribe-events-content table .type-tribe_events.hidden {
  display: none;
}

.tribe-events-viewmore {
  width: 100%;
  display: block;
  margin: 0;
  padding: 1rem 1rem 0 1rem;
  border-top: none;
}

.recurring-info-tooltip,
.tribe-events-calendar .tribe-events-tooltip,
.tribe-events-shortcode.view-week .tribe-events-tooltip,
.tribe-events-week .tribe-events-tooltip {
  padding: 2rem;
  background: #ffffff;
  border: none !important;
  box-shadow: 0 1rem 2rem rgba(0, 0, 0, 0.33);
}
.recurring-info-tooltip h3,
.tribe-events-calendar .tribe-events-tooltip h3,
.tribe-events-shortcode.view-week .tribe-events-tooltip h3,
.tribe-events-week .tribe-events-tooltip h3 {
  padding: 0;
}

.tribe-events-tooltip:not(.tribe-event-featured) .tribe-events-event-thumb {
  padding: 1rem 1rem 0 0;
}
.tribe-events-tooltip .tribe-events-event-body {
  width: 100%;
  display: block;
  margin: 0;
  padding: 0;
  font-size: 1.4rem;
  line-height: 2rem;
  font-weight: 300;
  color: #000000;
}
.tribe-events-tooltip .tribe-event-duration,
.tribe-events-tooltip .tribe-event-description {
  width: 100%;
  display: block;
  margin: 1rem 0 0 0;
  padding: 0;
}
.tribe-events-tooltip .tribe-event-duration p,
.tribe-events-tooltip .tribe-event-description p {
  font-size: 1.4rem;
  line-height: 2rem;
}
.tribe-events-tooltip .tribe-events-arrow {
  background-image: none !important;
}

#tribe-events .tribe-events-button,
.tribe-events-button {
  width: auto;
  height: auto !important;
  display: inline-block !important;
  float: none !important;
  margin: 2rem !important;
  padding: 0 !important;
  font-size: 1.4rem !important;
  line-height: 2rem !important;
  font-weight: 700 !important;
  color: #1279a8;
  text-transform: uppercase;
  border-radius: 0 !important;
  background-color: transparent !important;
  vertical-align: top;
}
body:not(.touch-device) #tribe-events .tribe-events-button:hover,
body:not(.touch-device) .tribe-events-button:hover {
  color: #000000;
}
#tribe-events-footer + #tribe-events .tribe-events-button,
#tribe-events-footer + .tribe-events-button {
  float: right !important;
}

.single-tribe_events .tribe-events-cal-links {
  width: 100%;
  display: block;
  margin: 0;
  padding: 0;
}

.swCalEvents {
  gap: 20px 40px;
}

.CalendarListEvent__header {
  aspect-ratio: 3/2;
  height: unset !important;
}
.CalendarListEvent__header_date {
  background-color: #82c657 !important;
  line-height: 1.5;
}
.CalendarListEvent__content {
  line-height: 1.5;
}

.CalendarListFooter {
  line-height: 1.5;
  width: 100%;
  height: 70px !important;
  flex-direction: column !important;
  justify-content: center !important;
}
.CalendarListFooter .CalendarListSummary {
  padding-bottom: 24px;
}

.CalendarEvent {
  width: 80% !important;
  margin: 0 auto;
  padding-bottom: 100px;
  max-width: 1000px;
}
.CalendarEvent__title {
  padding: 0;
  text-align: center;
}
.CalendarEvent__featuredImageBox {
  display: flex;
  justify-content: center;
  padding-bottom: 50px;
  max-height: unset !important;
}
.CalendarEvent__box {
  display: flex;
  flex-direction: column !important;
}
.CalendarEvent__details {
  width: 100% !important;
  padding: 0 !important;
}
.CalendarEvent__meta {
  margin-top: 20px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 100%;
  margin: 0 auto;
  margin-top: 50px;
}
.CalendarEvent__meta h3 {
  padding: 0;
  font-size: 20px;
}
.CalendarEvent .CalendarEvent__meta h3:nth-of-type(2) {
  display: none;
}
.CalendarEvent .CalendarEvent__meta h3:nth-of-type(3) {
  display: none;
}
.CalendarEvent__date_time {
  font-size: 18px;
  line-height: 26px;
  text-align: center;
  font-weight: 500;
  padding-top: 20px;
}
.CalendarEvent__tag {
  display: none;
}

.render-calendar {
  margin: 0 auto;
  width: 90%;
}
.render-calendar table {
  margin: 0;
}
.render-calendar .fc-toolbar {
  background: #b3e053;
  border-top-left-radius: 10px;
  border-top-right-radius: 10px;
  margin-bottom: 10px;
}
@media only screen and (min-width: 1080px) {
  .render-calendar .fc-toolbar .fc-left {
    padding-left: 20px;
  }
}
.render-calendar .fc-toolbar .fc-left button {
  background-color: #82c657 !important;
  font-size: 16px;
  color: black;
  font-family: "Sucrose-Bold";
}
@media only screen and (min-width: 1080px) {
  .render-calendar .fc-toolbar .fc-right {
    padding-right: 20px;
  }
}
.render-calendar .fc-toolbar .fc-right button {
  background: #82c657 !important;
  font-size: 16px;
  color: black !important;
  font-family: "Sucrose-Bold";
}
.render-calendar .fc-toolbar .fc-center h2 {
  font-size: 36px;
}
.render-calendar .fc-row,
.render-calendar .fc-head-container {
  border: none;
  border-radius: 10px !important;
}
.render-calendar .fc-day-header {
  background: #f79e32;
  color: black;
  font-family: "Sucrose-Bold";
  padding: 10px;
}
.render-calendar .fc-day-grid td {
  padding: 8px;
  background: white;
  font-family: "Sucrose-Bold";
  font-size: 20px;
}
.render-calendar .fc-day-grid td .fc-content {
  background: #b3e053;
  padding: 10px;
  border: 1px solid #82c657;
}
.render-calendar .fc-day-grid td .fc-title {
  font-size: 16px;
}
.render-calendar .fc-day-grid td .fc-title:hover {
  color: black !important;
}

/* Colors for backgrounds and text */
.fill-blue {
  fill: #1279a8;
}

.fill-white {
  fill: #ffffff;
}

.reverse {
  color: #ffffff;
}
.reverse *:not(i):not([class*=button]):not(.text-button) {
  color: #ffffff;
}

.accordions {
  width: 100%;
  display: block;
  margin: 0;
  padding: 0;
  margin-top: 80px;
}
.accordions:last-child {
  border-bottom: 2px solid #f79e32;
}
.accordions__tab {
  position: relative;
  width: 100%;
  display: block;
  transition: all 0.9s ease 0s;
  border-top: 2px solid #f79e32;
  padding: 30px 20px;
}
@media only screen and (min-width: 1080px) {
  .accordions__tab {
    padding: 38px 13%;
  }
}
.accordions__tab:first-child:before {
  content: "";
  position: absolute;
  height: 44px;
  width: calc(100% + 40px);
  background: url("/wp-content/themes/speak/assets/icons/ui/purple-trim.svg");
  background-size: cover;
  background-repeat: no-repeat;
  left: -20px;
  top: -46px;
}
.accordions__tab:last-child:before {
  content: "";
  position: absolute;
  height: 44px;
  width: calc(100% + 40px);
  background: url("/wp-content/themes/speak/assets/icons/ui/green-trim.svg");
  background-size: cover;
  background-repeat: no-repeat;
  left: -20px;
  bottom: -46px;
  transform: scaley(-1);
}
.accordions__tab-toggle {
  position: relative;
  margin: 0;
  padding: 0;
  vertical-align: top;
  font-size: 21px;
  line-height: 30px;
  font-weight: 900;
  font-family: "Comfortaa", sans-serif;
  color: #1279a8;
  letter-spacing: 0.1px;
  width: 100%;
  display: flex;
  justify-content: space-between;
  cursor: pointer;
}
@media only screen and (min-width: 1080px) {
  .accordions__tab-toggle {
    padding: 0 6rem 0 2rem;
    font-size: 24px;
  }
}
.accordions__tab-toggle [class*=material-] {
  width: auto;
  font-size: 3rem;
  line-height: 3rem;
  transition: all 0.3s ease 0s;
  vertical-align: top;
  color: #000000;
  display: flex;
  justify-content: center;
  align-items: center;
}
.accordions__tab-content {
  width: 100%;
  display: none;
  margin: 0;
  padding: 1rem 0 0 0;
  overflow: hidden;
}
.accordions__tab-content *:last-child {
  margin: 0;
}
.accordions__tab-content ul li {
  position: relative;
  font-size: 16px;
}
.accordions__tab-content ul li:before {
  content: "";
  position: absolute;
  height: 4px;
  width: 4px;
  background: #82c657;
  left: 0;
  top: 10px;
}
.accordions__tab.active .accordions__tab-toggle i {
  transform: rotate(135deg);
}
.accordions__tab.anim:not(.in-view) {
  transform: translateY(6rem);
  opacity: 0;
}

.comparison-slider {
  width: 100vw;
  display: block;
  margin: 0 -14%vw;
  padding: 2rem 0;
  transition: all 0.9s ease 0s;
  overflow: hidden;
}
.comparison-slider > img {
  transition: all 0.9s ease 0s;
}
.comparison-slider__slider {
  position: relative;
  width: 100%;
  display: block;
  margin: 0;
  padding: 0;
  z-index: 0;
}
.comparison-slider__slider > img {
  position: relative;
  pointer-events: none;
  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;
  transition: all 0.9s ease 0s;
  pointer-events: none;
}
.comparison-slider .divider {
  position: absolute;
  width: 0.2rem;
  height: 100%;
  top: 0;
  left: calc(50% - 0.1rem);
  background: #eae9e8;
  user-select: none;
  z-index: 2;
}
.comparison-slider .divider__handle {
  position: absolute;
  width: 4rem;
  height: 4rem;
  top: calc(50% - 2rem);
  left: -1.9rem;
  padding: 0.5rem;
  border-radius: 50%;
  background: #eae9e8;
  cursor: col-resize;
}
.comparison-slider .divider__handle:before {
  content: "\e5d7";
  display: inline-block;
  font-family: "Material Symbols Outlined";
  font-size: 3rem;
  line-height: 3rem;
  font-weight: 300;
  color: #1279a8;
  rotate: 90deg;
  vertical-align: top;
}
.comparison-slider.anim:not(.in-view) {
  transform: translateY(6rem);
  opacity: 0;
}
.comparison-slider.anim:not(.in-view) > img,
.comparison-slider.anim:not(.in-view) .comparison-slider__slider-after img {
  scale: 1.1;
}

.image-carousel {
  position: relative;
  display: block;
  transition: all 0.9s ease 0s;
  margin: 0 auto;
  background: url("/wp-content/themes/speak/assets/images/image-carousel-background.svg");
  background-size: 160%;
  background-repeat: no-repeat;
  background-position: -75px -220px;
  width: 100%;
  padding: 50px 5%;
}
@media only screen and (min-width: 1440px) {
  .image-carousel {
    background-position: -75px -270px;
  }
}
.image-carousel__slides {
  width: 100%;
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  margin: 0;
  padding: 0 14%vw;
  overflow: hidden;
}
.image-carousel__slides-item {
  width: 100%;
  display: inline-block;
  flex: 1 0 auto;
  margin: 0;
  padding: 0 2rem;
  vertical-align: top;
}
.image-carousel__slides-item__image {
  width: 100%;
  aspect-ratio: 3/2;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  border-radius: 11px;
  position: relative;
}
.image-carousel__slides-item__image .image-carousel__caption {
  background: #b3e053;
  color: black;
  font-weight: 500;
  font-size: 15px;
  z-index: 1000;
  position: absolute;
  padding: 29px;
  width: 100%;
  bottom: 0;
  left: 0px;
  border-bottom-left-radius: 11px;
  border-bottom-right-radius: 11px;
}
.image-carousel__slides-item__image .image-carousel__caption:empty {
  display: none;
}
.image-carousel.anim:not(.in-view) {
  transform: translateY(6rem);
  opacity: 0;
}

.image-carousel__navs .prev-slide,
.image-carousel__navs .next-slide {
  display: none !important;
}
.image-carousel__navs .image-carousel__indices {
  margin-top: 17px !important;
  margin-left: 17px !important;
}
.image-carousel__navs .image-carousel__indices li {
  height: 100px !important;
  width: 100px !important;
  margin: 6px !important;
  position: relative;
  transition: all 0.33s ease-in-out;
}
.image-carousel__navs .image-carousel__indices li:before {
  display: none;
}
.image-carousel__navs .image-carousel__indices li img {
  height: 100px;
  width: 100px;
  object-fit: cover;
  border-radius: 5px;
}
.image-carousel__navs .image-carousel__indices li.active:after {
  content: "";
  position: absolute;
  height: 100%;
  width: 100%;
  background: white;
  opacity: 0.61;
  top: 0px;
  left: 0px;
}
.image-carousel__navs .image-carousel__indices li:hover {
  transform: translatey(-5px);
}

.image-gallery {
  width: 100%;
  display: block;
  column-gap: 4rem;
  padding: 2rem;
}
@media only screen and (min-width: 840px) {
  .image-gallery.span-6, .image-gallery.span-4, .image-gallery.recent-posts__posts-item, .image-gallery.span-3, .image-gallery.span-2 {
    columns: 2;
  }
}
@media only screen and (min-width: 1280px) {
  .image-gallery.span-4, .image-gallery.recent-posts__posts-item {
    columns: 3;
  }
  .image-gallery.span-3, .image-gallery.span-2 {
    columns: 4;
  }
}
@media only screen and (min-width: 1440px) {
  .image-gallery.span-2 {
    columns: 6;
  }
}
.image-gallery__item {
  position: relative;
  display: inline-block;
  margin: 0 0 4rem 0;
  border-radius: 1rem;
  transition: all 0.6s ease 0s;
  vertical-align: top;
  overflow: hidden;
  cursor: pointer;
}
.image-gallery__item > img {
  backface-visibility: hidden;
  transition: all 0.9s ease 0s;
}
.image-gallery__item:hover > img {
  scale: 1.1;
}
.image-gallery__item.anim:not(.in-view) {
  transform: translateY(6rem);
  opacity: 0;
}
.image-gallery__item.anim:not(.in-view) > img {
  scale: 1.1;
}

.location-finder {
  width: 100vw;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  margin: 0 -14%vw 2rem -14%vw;
  padding: 0;
}
.location-finder__content {
  width: 100%;
  display: inline-block;
  margin: 0;
  padding: 0 14%vw 4rem 14%vw;
  transition: all 0.9s ease 0s;
  vertical-align: top;
}
@media only screen and (min-width: 840px) {
  .location-finder__content {
    width: 112%vw;
    padding: 0 14%vw;
  }
}
.location-finder__content-search {
  width: 100%;
}
.location-finder__content-search input:not([type=checkbox]):not([type=radio]):not([type=select]):not([type=file]):not([type=submit]):not([type=button]) {
  width: calc(100% - 4rem);
  margin: 0 2rem;
}
.location-finder__content-list {
  width: 100%;
  display: block;
  margin: 0;
  padding: 0;
}
.location-finder__content-list__item {
  position: relative;
  width: 100%;
  display: block;
  margin: 2rem 0 0 0;
  padding: 2rem 0 0 0;
  cursor: pointer;
}
.location-finder__content-list__item:not(:first-child):before {
  content: "";
  position: absolute;
  width: calc(100% - 4rem);
  height: 0.1rem;
  top: 0;
  left: 2rem;
  background: #cac9c8;
}
.location-finder__content-list__item.hidden {
  display: none;
}
.location-finder__content-list__item h4 {
  margin: 0 0 1rem 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;
  transition: all 0.9s ease 0.1s;
  vertical-align: top;
}
@media only screen and (min-width: 840px) {
  .location-finder__map {
    width: 84%vw;
  }
}
.location-finder__map-canvas {
  position: absolute;
  width: 100%;
  height: 100%;
  display: block;
  top: 0;
  left: 0;
  margin: 0;
  padding: 0;
}
.location-finder.anim:not(.in-view) .location-finder__content,
.location-finder.anim:not(.in-view) .location-finder__map {
  transform: translateY(6rem);
  opacity: 0;
}

.media-gallery {
  width: 100%;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  padding: 2rem 0 0 0;
}
.media-gallery__item {
  position: relative;
  width: calc(100% - 4rem);
  aspect-ratio: 3/2;
  display: inline-block;
  margin: 0 2rem 4rem 2rem;
  border-radius: 1rem;
  transition: all 0.9s ease 0s;
  overflow: hidden;
  vertical-align: top;
  cursor: pointer;
}
.media-gallery__item:after {
  position: absolute;
  width: 6rem;
  height: 6rem;
  top: calc(50% - 3rem);
  left: calc(50% - 3rem);
  padding: 1.5rem;
  font-family: "Material Symbols Outlined";
  font-size: 3rem;
  line-height: 3rem;
  font-weight: 300;
  color: #1279a8;
  background: #eae9e8;
  border-radius: 50%;
}
.media-gallery__item.image:after {
  content: "\e3f4";
}
.media-gallery__item.video:after {
  content: "\e04b";
}
.media-gallery__item.audio:after {
  content: "\e405";
}
.media-gallery__item-thumb {
  width: 100%;
  aspect-ratio: 3/2;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  transition: all 0.9s ease 0s;
}
.media-gallery__item:hover .media-gallery__item-thumb {
  scale: 1.1;
}
.media-gallery__item.anim:not(.in-view) {
  transform: translateY(6rem);
  opacity: 0;
}
.media-gallery__item.anim:not(.in-view) .media-gallery__item-thumb {
  scale: 1.1;
}
@media only screen and (min-width: 840px) {
  .media-gallery.span-6 .media-gallery__item, .media-gallery.span-4 .media-gallery__item, .media-gallery.recent-posts__posts-item .media-gallery__item, .media-gallery.span-3 .media-gallery__item, .media-gallery.span-2 .media-gallery__item {
    width: calc(50% - 4rem);
  }
}
@media only screen and (min-width: 1280px) {
  .media-gallery.span-4 .media-gallery__item, .media-gallery.recent-posts__posts-item .media-gallery__item {
    width: calc(33.333334% - 4rem);
  }
  .media-gallery.span-3 .media-gallery__item, .media-gallery.span-2 .media-gallery__item {
    width: calc(25% - 4rem);
  }
}
@media only screen and (min-width: 1440px) {
  .media-gallery.span-2 .media-gallery__item {
    width: calc(16.666667% - 4rem);
  }
}

.page-portals {
  position: relative;
  width: 90%;
  margin: 0 auto;
  margin-top: 54px;
  display: flex !important;
  grid-gap: 12px;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
}
.page-portals__item {
  position: relative;
  width: 47%;
  aspect-ratio: 2/3;
  display: flex;
  flex-direction: column-reverse;
  padding: 0;
  border-radius: 1rem;
  transition: all 0.33s ease 0s;
  vertical-align: top;
  text-decoration: none;
}
@media only screen and (min-width: 840px) {
  .page-portals__item {
    width: 30%;
    margin-bottom: 30px;
  }
}
@media only screen and (min-width: 1080px) {
  .page-portals__item {
    margin-bottom: 0;
    width: 18%;
  }
  .page-portals__item:nth-child(even) {
    margin-top: 50px;
  }
  .page-portals__item:nth-child(odd) {
    margin-top: -50px;
  }
}
.page-portals__item:nth-child(1) .page-portals__item-content {
  background: transparent linear-gradient(180deg, rgba(78, 180, 227, 0) 0%, #82c657 60%) 0% 0% no-repeat padding-box;
}
.page-portals__item:nth-child(2) .page-portals__item-content {
  background: transparent linear-gradient(180deg, rgba(78, 180, 227, 0) 0%, #ee3424 60%) 0% 0% no-repeat padding-box;
}
.page-portals__item:nth-child(3) .page-portals__item-content {
  background: transparent linear-gradient(180deg, rgba(78, 180, 227, 0) 0%, #f79e32 60%) 0% 0% no-repeat padding-box;
}
.page-portals__item:nth-child(4) .page-portals__item-content {
  background: transparent linear-gradient(180deg, rgba(78, 180, 227, 0) 0%, #1279a8 60%) 0% 0% no-repeat padding-box;
}
.page-portals__item:nth-child(5) .page-portals__item-content {
  background: transparent linear-gradient(180deg, rgba(78, 180, 227, 0) 0%, #765ca7 60%) 0% 0% no-repeat padding-box;
}
.page-portals__item:nth-child(5) .page-portals__item-content h3 {
  color: white !important;
}
.page-portals__item:nth-child(6) .page-portals__item-content {
  background: transparent linear-gradient(180deg, rgba(78, 180, 227, 0) 0%, #82c657 60%) 0% 0% no-repeat padding-box;
}
.page-portals__item:nth-child(7) .page-portals__item-content {
  background: transparent linear-gradient(180deg, rgba(78, 180, 227, 0) 0%, #ee3424 60%) 0% 0% no-repeat padding-box;
}
.page-portals__item:nth-child(8) .page-portals__item-content {
  background: transparent linear-gradient(180deg, rgba(78, 180, 227, 0) 0%, #f79e32 60%) 0% 0% no-repeat padding-box;
}
.page-portals__item:nth-child(9) .page-portals__item-content {
  background: transparent linear-gradient(180deg, rgba(78, 180, 227, 0) 0%, #1279a8 60%) 0% 0% no-repeat padding-box;
}
.page-portals__item:nth-child(10) .page-portals__item-content {
  background: transparent linear-gradient(180deg, rgba(78, 180, 227, 0) 0%, #765ca7 60%) 0% 0% no-repeat padding-box;
}
.page-portals__item:nth-child(10) .page-portals__item-content h3 {
  color: white !important;
}
.page-portals__item:nth-child(11) {
  margin-top: 50px;
}
.page-portals__item:nth-child(11) .page-portals__item-content {
  background: transparent linear-gradient(180deg, rgba(78, 180, 227, 0) 0%, #82c657 60%) 0% 0% no-repeat padding-box;
}
.page-portals__item:nth-child(12) .page-portals__item-content {
  background: transparent linear-gradient(180deg, rgba(78, 180, 227, 0) 0%, #ee3424 60%) 0% 0% no-repeat padding-box;
}
.page-portals__item:nth-child(13) .page-portals__item-content {
  background: transparent linear-gradient(180deg, rgba(78, 180, 227, 0) 0%, #f79e32 60%) 0% 0% no-repeat padding-box;
}
.page-portals__item:nth-child(14) .page-portals__item-content {
  background: transparent linear-gradient(180deg, rgba(78, 180, 227, 0) 0%, #1279a8 60%) 0% 0% no-repeat padding-box;
}
.page-portals__item:nth-child(15) .page-portals__item-content {
  background: transparent linear-gradient(180deg, rgba(78, 180, 227, 0) 0%, #765ca7 60%) 0% 0% no-repeat padding-box;
}
.page-portals__item:nth-child(15) .page-portals__item-content h3 {
  color: white !important;
}
.page-portals__item-underlay {
  position: relative;
  width: 100%;
  height: 100%;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  transition: all 0.33s ease 0s;
  z-index: 0;
  border-radius: 11px;
}
.page-portals__item-content {
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: flex-end;
  margin: 0 auto;
  z-index: 2;
  height: 156px;
  position: absolute;
  bottom: 0;
  border-radius: 11px;
}
.page-portals__item-content h3 {
  font-family: "Sucrose-Bold";
  color: black !important;
  text-align: center;
  font-size: 25px;
  line-height: 30px;
  margin-bottom: 15px;
}
@media only screen and (min-width: 1440px) {
  .page-portals__item-content h3 {
    font-size: 30px;
    line-height: 35px;
  }
}
.page-portals__item:hover {
  transform: translateY(-10px);
}
.page-portals__item.anim:not(.in-view) {
  transform: translateY(6rem);
  opacity: 0;
}
.page-portals__item.anim:not(.in-view) .page-portals__item-underlay {
  scale: 1.1;
}

.home-portals {
  z-index: 100000;
  position: relative;
  margin-bottom: 225px;
}
@media only screen and (min-width: 840px) {
  .home-portals {
    position: absolute;
    display: flex;
    margin-top: -725px;
    margin-bottom: unset;
  }
}
@media only screen and (min-width: 1080px) {
  .home-portals {
    margin-top: -625px;
  }
}
@media only screen and (min-width: 1280px) {
  .home-portals {
    margin-top: -755px;
  }
}
@media only screen and (min-width: 1440px) {
  .home-portals {
    margin-top: -685px;
  }
}
@media only screen and (min-width: 1600px) {
  .home-portals {
    margin-top: -825px;
  }
}
@media only screen and (min-width: 2000px) {
  .home-portals {
    margin-top: -1150px;
  }
}
@media only screen and (min-width: 3000px) {
  .home-portals {
    margin-top: -1450px;
  }
}
.home-portals:before {
  content: "";
  position: absolute;
  background: url("/wp-content/themes/speak/assets/images/giraffe-head.png");
  background-size: contain;
  background-repeat: no-repeat;
  transform: scale(-1, 1);
  bottom: -225px;
  width: 360px;
  height: 270px;
  left: -60px;
}
@media only screen and (min-width: 840px) {
  .home-portals:before {
    bottom: unset;
    height: 591px;
    width: 786px;
    left: -300px;
    top: 200px;
  }
}
@media only screen and (min-width: 1080px) {
  .home-portals:before {
    left: -125px;
    top: 150px;
  }
}
@media only screen and (min-width: 1280px) {
  .home-portals:before {
    top: 175px;
  }
}
@media only screen and (min-width: 1440px) {
  .home-portals:before {
    left: -65px;
    top: 200px;
  }
}
@media only screen and (min-width: 1600px) {
  .home-portals:before {
    height: 1000px;
    width: 1000px;
  }
}
@media only screen and (min-width: 2000px) {
  .home-portals:before {
    height: 1500px;
    width: 1500px;
  }
}
@media only screen and (min-width: 3000px) {
  .home-portals:before {
    height: 1900px;
    width: 1900px;
    top: 800px;
  }
}
.home-portals:after {
  content: "";
  position: absolute;
  background: url("/wp-content/themes/speak/assets/gif/BlueButterflyNoWiggle-transparent.gif");
  background-size: contain;
  background-repeat: no-repeat;
  z-index: 9;
  height: 120px;
  width: 120px;
  bottom: -200px;
  right: 20px;
}
@media only screen and (min-width: 840px) {
  .home-portals:after {
    height: 250px;
    width: 250px;
    left: 25%;
    bottom: 50px;
  }
}
@media only screen and (min-width: 1080px) {
  .home-portals:after {
    left: 30%;
    bottom: 50px;
  }
}
@media only screen and (min-width: 1280px) {
  .home-portals:after {
    left: 33%;
    bottom: 150px;
  }
}
@media only screen and (min-width: 1440px) {
  .home-portals:after {
    bottom: 250px;
  }
}
@media only screen and (min-width: 1600px) {
  .home-portals:after {
    height: 400px;
    width: 400px;
  }
}
@media only screen and (min-width: 2000px) {
  .home-portals:after {
    height: 500px;
    width: 500px;
  }
}
@media only screen and (min-width: 3000px) {
  .home-portals:after {
    height: 700px;
    width: 700px;
  }
}
.home-portals .page-portals {
  display: grid !important;
  grid-template-columns: 1fr 1fr;
}
.home-portals .page-portals__item {
  width: 100%;
  position: relative;
  border-radius: 11px;
  border: 3px solid #1279a8;
}
.home-portals .page-portals__item-underlay {
  border-radius: 8px;
}
.home-portals .page-portals__item-content {
  position: absolute;
  bottom: 0px;
  border-radius: 8px;
  height: 300px;
  display: flex;
  transition: all 0.33s ease-in-out;
  align-items: flex-end;
  justify-content: flex-start;
  background: transparent linear-gradient(180deg, rgba(78, 180, 227, 0) 0%, #4eb4e3 100%) 0% 0% no-repeat padding-box;
}
.home-portals .page-portals__item-content:after {
  content: "";
  position: absolute;
  background-image: url("/wp-content/themes/speak/assets/icons/ui/black-arrow.svg");
  background-repeat: no-repeat;
  background-size: contain;
  height: 14px;
  width: 33px;
  right: 35px;
  bottom: 35px;
  transition: all 0.33s ease-in-out;
}
.home-portals .page-portals__item-content h3 {
  font-family: "Comfortaa", sans-serif;
  font-size: 21px;
  text-align: left;
  letter-spacing: 0.43px;
  width: 75%;
  line-height: 26px;
  font-weight: 900;
  position: relative;
}
.home-portals .page-portals__item:nth-child(1) {
  border: 3px solid #4eb4e3;
}
.home-portals .page-portals__item:nth-child(1) .page-portals__item-content {
  background: transparent linear-gradient(180deg, rgba(247, 158, 50, 0) 0%, #4eb4e3 100%) 0% 0% no-repeat padding-box;
}
.home-portals .page-portals__item:nth-child(2) {
  margin-top: 86px;
  border: 3px solid #f79e32;
}
.home-portals .page-portals__item:nth-child(2) .page-portals__item-content {
  background: transparent linear-gradient(180deg, rgba(247, 158, 50, 0) 0%, #f79e32 100%) 0% 0% no-repeat padding-box;
}
.home-portals .page-portals__item:nth-child(3) {
  margin-top: -85px;
  border: 3px solid #82c657;
}
@media only screen and (min-width: 1080px) {
  .home-portals .page-portals__item:nth-child(3) {
    margin-top: -135px;
  }
}
.home-portals .page-portals__item:nth-child(3) .page-portals__item-content {
  background: transparent linear-gradient(180deg, rgba(130, 198, 87, 0) 0%, #82c657 100%) 0% 0% no-repeat padding-box;
}
.home-portals .page-portals__item:nth-child(4) {
  margin-top: 0px;
  border: 3px solid #ee3424;
}
.home-portals .page-portals__item:nth-child(4) .page-portals__item-content {
  background: transparent linear-gradient(180deg, rgba(238, 52, 36, 0) 0%, #ee3424 100%) 0% 0% no-repeat padding-box;
}
.home-portals .page-portals__item:hover {
  transform: none;
}
.home-portals .page-portals__item:hover .page-portals__item-content {
  height: 400px;
}
.home-portals .page-portals__item:hover .page-portals__item-content:after {
  right: 20px;
}

.posts-list {
  width: calc(100% + 20px);
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  margin: 0 -10px 20px -10px;
  padding: 0;
}
.posts-list__header {
  width: 100%;
  display: block;
  margin: 0 0 20px 0;
  padding: 0 10px;
}
.posts-list__item {
  position: relative;
  width: 100%;
  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) {
  .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: 66.666667% 0 0 0;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
}
.posts-list__item-content {
  width: 100%;
  display: block;
  flex: 1 0 auto;
  margin: 0;
  padding: 0;
}

.recent-posts {
  width: 100vw;
  margin: 2rem -14%vw 0 -14%vw;
}
.recent-posts__posts {
  position: relative;
  width: 100%;
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  margin: 0;
  padding: 0 14%vw;
  overflow: hidden;
}
.recent-posts__posts-item {
  display: inline-block;
  flex: 1 0 auto;
  margin: 0;
  padding: 0;
  vertical-align: top;
}
.recent-posts__posts-item .excerpt-post {
  background: #f79e32;
  border-radius: 11px;
  margin: 10px;
  width: calc(100% - 20px);
  padding-top: 20px;
}
.recent-posts__posts-item .excerpt-post__thumb-image {
  aspect-ratio: 3/2;
}
.recent-posts__posts-item .excerpt-post__content h6 {
  margin-bottom: 20px !important;
  font-family: "Comfortaa", sans-serif;
}
.recent-posts__posts-item .excerpt-post__content h3 {
  color: black;
}
.recent-posts__posts-item .excerpt-post__content a {
  text-transform: uppercase;
  font-size: 18px;
  font-weight: 600;
  font-family: "Comfortaa", sans-serif;
}
.recent-posts__posts-item .excerpt-post__content a:before {
  background: black;
}
.recent-posts__posts-item:nth-child(even) .excerpt-post {
  background: #765ca7;
}
.recent-posts__posts-item:nth-child(even) .excerpt-post h3,
.recent-posts__posts-item:nth-child(even) .excerpt-post h6,
.recent-posts__posts-item:nth-child(even) .excerpt-post span {
  color: white;
}
.recent-posts__posts-item:nth-child(even) .excerpt-post a {
  text-transform: uppercase;
  font-size: 18px;
  font-weight: 600;
  font-family: "Comfortaa", sans-serif;
}
.recent-posts__posts-item:nth-child(even) .excerpt-post a:before {
  background: white;
}

.page-template-page-blog-php .post-feed__filters {
  padding: 0 6%;
}
.page-template-page-blog-php .post-feed__filters .inline-field {
  margin: 0;
}
.page-template-page-blog-php .post-feed__filters .inline-field label {
  font-family: "Comfortaa", sans-serif;
}
.page-template-page-blog-php .post-feed__filters .inline-field .select-wrap select {
  border: 2px solid #1279a8;
}
.page-template-page-blog-php .post-feed__list {
  padding: 50px 6%;
  display: grid;
  grid-gap: 16px;
}
@media only screen and (min-width: 840px) {
  .page-template-page-blog-php .post-feed__list {
    grid-template-columns: 1fr 1fr 1fr;
  }
}
@media only screen and (min-width: 1080px) {
  .page-template-page-blog-php .post-feed__list {
    grid-template-columns: 1fr 1fr 1fr;
  }
}
.page-template-page-blog-php .post-feed__list .column {
  width: 100%;
}
.page-template-page-blog-php .post-feed__list .column:nth-child(odd) .excerpt-post {
  background: linear-gradient(#1279a8, #82c657);
}
.page-template-page-blog-php .post-feed__list .column:nth-child(even) .excerpt-post {
  background: linear-gradient(#765ca7, #f79e32);
}
.page-template-page-blog-php .post-feed__list .excerpt-post {
  padding-top: 2rem;
  border-radius: 14px;
}
.page-template-page-blog-php .post-feed__list .excerpt-post__content h6 {
  margin-bottom: 10px;
  font-weight: 700;
  letter-spacing: 1px;
  font-family: "Comfortaa", sans-serif;
}
.page-template-page-blog-php .post-feed__list .excerpt-post__content h3 {
  margin-bottom: 10px;
  font-size: 18px;
  color: black;
  line-height: 28px;
}
@media only screen and (min-width: 1080px) {
  .page-template-page-blog-php .post-feed__list .excerpt-post__content h3 {
    font-size: 22px;
    line-height: 32px;
  }
}
.page-template-page-blog-php .post-feed__list .excerpt-post__content a:before {
  background: #000000;
}
.page-template-page-blog-php .post-feed__list .excerpt-post__content a span {
  font-size: 16px;
  text-transform: uppercase;
  font-weight: 700;
  font-family: "Comfortaa", sans-serif;
}

@media only screen and (min-width: 1080px) {
  .type-post .hero-default {
    height: 600px !important;
  }
  .type-post .hero-default .hero-default__media:before {
    height: 600px;
  }
  .type-post .hero-default__background-image {
    height: 600px !important;
  }
}
.type-post .hero-default h5 {
  position: relative;
  color: white;
  text-align: center;
}
@media only screen and (min-width: 1080px) {
  .type-post .hero-default h5 {
    text-align: left;
  }
}
.type-post .hero-default h6 {
  display: none;
}

.image-block {
  position: relative;
  width: calc(100% - 60px);
  margin: 0 30px 30px 30px;
  border-radius: 11px;
  transition: all 0.9s ease 0s;
  overflow: hidden;
  margin-top: 50px;
}
@media only screen and (min-width: 1080px) {
  .image-block {
    margin-top: 0;
  }
}
.image-block img {
  width: 100%;
  object-fit: cover;
}
.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;
}
.image-block img {
  transition: all 0.9s ease 0s;
}
.image-block.anim:not(.in-view) {
  transform: translateY(6rem);
  opacity: 0;
}
.image-block.anim:not(.in-view) img {
  scale: 1.1;
}

.fill-image {
  position: relative;
  width: calc(100% - 4rem);
  height: calc(100% - 2rem);
  display: block;
  margin: 0 2rem 2rem 2rem;
  padding: 66.666667% 0 0 0;
  background-size: contain;
  background-position: center center;
  background-repeat: no-repeat;
}
@media only screen and (min-width: 840px) {
  .fill-image {
    padding: 50% 0 0 0;
  }
}

.stat {
  width: 100%;
  padding: 0 2rem;
  font-size: 0;
  line-height: 0;
  transition: all 0.9s ease 0s;
}
.stat__before, .stat__value, .stat__after {
  width: auto;
  display: inline-block;
  margin: 0;
  padding: 0;
  letter-spacing: -0.04em;
  vertical-align: top;
}
.stat__after {
  font-size: clamp(5rem, 7vw, 7rem);
  line-height: clamp(5rem, 7vw, 7rem);
  padding: 0 0 0.1em 0;
  vertical-align: bottom;
}
@media only screen and (min-width: 840px) {
  .stat__after {
    padding: 0 0 0.2em 0;
  }
}
.stat__before, .stat__value {
  font-size: clamp(7rem, 10vw, 15rem);
  line-height: clamp(7rem, 10vw, 15rem);
}
.stat h4, .stat p {
  padding: 0;
}
.stat.anim:not(.in-view) {
  transform: translateY(6rem);
  opacity: 0;
}

.tabs {
  position: relative;
  transition: all 0.6s ease 0s;
  z-index: 0;
  width: 75%;
  margin: 0 auto;
  margin-top: 68px;
}
@media only screen and (min-width: 1080px) {
  .tabs:before {
    content: "";
    position: absolute;
    height: 700px;
    width: 350px;
    background: url("/wp-content/themes/speak/assets/images/layered-flowers.svg");
    background-repeat: no-repeat;
    background-size: contain;
    left: calc(-25% - 85px);
    top: -150px;
  }
  .tabs:after {
    content: "";
    position: absolute;
    height: 700px;
    width: 350px;
    background: url("/wp-content/themes/speak/assets/images/layered-flowers__blue.svg");
    background-repeat: no-repeat;
    background-size: contain;
    right: calc(-25% - 85px);
    top: 0px;
  }
}
.tabs__scrollable {
  position: relative;
  width: 100%;
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  overflow: hidden;
  z-index: 2;
  padding-bottom: 35px;
}
.tabs__scrollable span {
  user-select: none;
}
.tabs__toggles {
  width: auto;
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  flex: 1 0 auto;
  justify-content: space-around;
  position: relative;
}
.tabs__toggles:before {
  content: "";
  position: absolute;
  height: 30px;
  width: 100%;
  background: transparent linear-gradient(90deg, #82c657 0%, #ee3424 29%, #f79e32 70%, #4eb4e3 100%) 0% 0% no-repeat padding-box;
  border-radius: 30px;
  bottom: -35px;
  left: 0px;
}
.tabs__toggles-active {
  position: absolute;
  width: 100%;
  height: 22px;
  top: 44px;
  left: 0;
  background: transparent;
  border-radius: 30px;
  transition: all 0.3s ease 0s;
  z-index: 10;
}
.tabs__toggles-active:before {
  display: none;
}
@media only screen and (min-width: 1080px) {
  .tabs__toggles-active:before {
    display: block;
    content: "";
    background: white;
    bottom: -65px;
    height: 22px;
    width: 100px;
    z-index: 33;
    position: absolute;
    border-radius: 30px;
    left: 50%;
    transform: translate(-50%, 0);
  }
}
.tabs__toggles-item {
  position: relative;
  width: auto;
  display: inline-block;
  margin: 0 2rem;
  padding: 0 0 0.5rem 0;
  font-weight: 700;
  white-space: nowrap;
  vertical-align: top;
  font-family: "Rock Salt", cursive;
  font-size: 18px;
  line-height: 30px;
  font-weight: 500;
  cursor: pointer;
}
@media only screen and (min-width: 1080px) {
  .tabs__toggles-item {
    white-space: normal;
    max-width: 100px;
    height: 100px;
    display: flex;
    justify-content: center;
    align-items: flex-end;
    text-align: center;
  }
}
.tabs__toggles-item:nth-child(1) {
  transition: all 0.3s ease 0s, opacity 0.6s ease 0.1s;
}
.tabs__toggles-item:nth-child(2) {
  transition: all 0.3s ease 0s, opacity 0.6s ease 0.2s;
}
.tabs__toggles-item:nth-child(3) {
  transition: all 0.3s ease 0s, opacity 0.6s ease 0.3s;
}
.tabs__toggles-item:nth-child(4) {
  transition: all 0.3s ease 0s, opacity 0.6s ease 0.4s;
}
.tabs__toggles-item:nth-child(5) {
  transition: all 0.3s ease 0s, opacity 0.6s ease 0.5s;
}
.tabs__toggles-item:nth-child(6) {
  transition: all 0.3s ease 0s, opacity 0.6s ease 0.6s;
}
.tabs__toggles-item:nth-child(7) {
  transition: all 0.3s ease 0s, opacity 0.6s ease 0.7s;
}
.tabs__toggles-item:nth-child(8) {
  transition: all 0.3s ease 0s, opacity 0.6s ease 0.8s;
}
.tabs__toggles-item:nth-child(9) {
  transition: all 0.3s ease 0s, opacity 0.6s ease 0.9s;
}
.tabs__toggles-item:nth-child(10) {
  transition: all 0.3s ease 0s, opacity 0.6s ease 1s;
}
.tabs__toggles-item:nth-child(11) {
  transition: all 0.3s ease 0s, opacity 0.6s ease 1.1s;
}
.tabs__toggles-item:nth-child(12) {
  transition: all 0.3s ease 0s, opacity 0.6s ease 1.2s;
}
.tabs__toggles-item:nth-child(13) {
  transition: all 0.3s ease 0s, opacity 0.6s ease 1.3s;
}
.tabs__toggles-item:nth-child(14) {
  transition: all 0.3s ease 0s, opacity 0.6s ease 1.4s;
}
.tabs__toggles-item:nth-child(15) {
  transition: all 0.3s ease 0s, opacity 0.6s ease 1.5s;
}
.tabs__toggles-item:nth-child(16) {
  transition: all 0.3s ease 0s, opacity 0.6s ease 1.6s;
}
.tabs__toggles-item:nth-child(17) {
  transition: all 0.3s ease 0s, opacity 0.6s ease 1.7s;
}
.tabs__toggles-item:nth-child(18) {
  transition: all 0.3s ease 0s, opacity 0.6s ease 1.8s;
}
.tabs__toggles-item:nth-child(19) {
  transition: all 0.3s ease 0s, opacity 0.6s ease 1.9s;
}
.tabs__toggles-item:nth-child(20) {
  transition: all 0.3s ease 0s, opacity 0.6s ease 2s;
}
.tabs__toggles-item:last-child {
  margin: 0;
}
.tabs__item {
  position: relative;
  width: 100%;
  display: none;
  margin: 2rem 0 0 0;
  transition: 0.6s ease 0.3s;
  overflow: hidden;
  z-index: 1;
}
.tabs.anim:not(.in-view) .tabs__scrollable:before {
  width: 0;
}
.tabs.anim:not(.in-view) .tabs__toggles-item,
.tabs.anim:not(.in-view) .tabs__item {
  opacity: 0;
}

.home-tabs {
  padding-left: 5%;
}
@media only screen and (min-width: 1080px) {
  .home-tabs {
    padding: 0 5%;
    padding-top: 100px;
    padding-bottom: 200px;
    margin: 0;
  }
}
@media only screen and (min-width: 3000px) {
  .home-tabs {
    max-width: 2000px;
    margin: 0 auto;
  }
}
.home-tabs .text-block {
  margin: 0;
  width: 100%;
}
.home-tabs__orange {
  background-image: url("/wp-content/themes/speak/assets/images/blue-leaves.svg");
  background-size: cover;
  background-repeat: no-repeat;
  background-position: 100px 0;
  position: relative;
}
@media only screen and (min-width: 1080px) {
  .home-tabs__orange {
    background-size: contain;
    background-position: 600px 0;
  }
}
.home-tabs__orange .standard-button {
  width: 90%;
}
.home-tabs__orange .tabs__toggles:before {
  background: #f79e32;
}
.home-tabs__orange .image-block {
  position: absolute;
  right: calc(-60% + 20px);
  top: 200px;
}
@media only screen and (min-width: 840px) {
  .home-tabs__orange .image-block {
    top: 0px;
    right: calc(-45% - 50px);
  }
}
@media only screen and (min-width: 1080px) {
  .home-tabs__orange .image-block {
    right: calc(-60% - 50px);
  }
}
.home-tabs__orange .image-block img {
  width: 185px;
  height: 185px;
  border-radius: 50%;
  object-fit: cover;
  max-width: 650px;
}
@media only screen and (min-width: 840px) {
  .home-tabs__orange .image-block img {
    width: 550px;
    height: 550px;
  }
}
.home-tabs__green {
  background-image: url("/wp-content/themes/speak/assets/images/red-crosshatch.svg");
  background-position: -600px -50px;
  background-repeat: no-repeat;
  background-size: 850px;
  position: relative;
}
@media only screen and (min-width: 840px) {
  .home-tabs__green {
    background-size: 1200px;
    background-position: -600px -250px;
  }
}
@media only screen and (min-width: 1080px) {
  .home-tabs__green {
    background-size: 1250px;
    background-position: -550px -260px;
  }
}
.home-tabs__green .standard-button {
  width: 90%;
}
.home-tabs__green .tabs__item {
  margin-left: auto !important;
}
.home-tabs__green .image-block {
  position: absolute;
  top: 200px;
  right: 50px;
}
@media only screen and (min-width: 840px) {
  .home-tabs__green .image-block {
    left: -150px;
    top: 0px;
  }
}
@media only screen and (min-width: 1440px) {
  .home-tabs__green .image-block {
    left: -50px;
  }
}
.home-tabs__green .image-block img {
  height: 185px;
  width: 185px;
  border-radius: 50%;
  object-fit: cover;
  max-width: unset;
}
@media only screen and (min-width: 840px) {
  .home-tabs__green .image-block img {
    width: 550px;
    height: 550px;
  }
}
.home-tabs__green .tabs__toggles:before {
  background: #b3e053;
}
.home-tabs__green .tabs__toggles-item.active {
  border: 2px solid #b3e053 !important;
}
.home-tabs .tabs {
  width: 100%;
  max-width: 816px;
  margin-top: 35px;
}
.home-tabs .tabs:before {
  display: none;
}
.home-tabs .tabs:after {
  display: none;
}
.home-tabs .tabs__toggles {
  padding: 0;
  justify-content: space-between;
}
.home-tabs .tabs__toggles:before {
  bottom: unset;
  top: 0px;
  height: 68px;
  border-radius: 47px;
}
.home-tabs .tabs__toggles-item {
  font-size: 18px;
  font-family: "Open Sans", sans-serif;
  font-weight: 600;
  z-index: 20;
  position: relative;
  text-align: center;
  margin: 0;
  padding: 0 51px;
  height: 68px;
  display: flex;
  justify-content: center;
  align-items: center;
  max-width: unset;
}
.home-tabs .tabs__toggles-item.active {
  background: white;
  border: 2px solid #f79e32;
  border-radius: 47px;
}
.home-tabs .tabs__toggles-active {
  background: transparent;
  height: 68px;
  top: 0px;
  display: none;
}
.home-tabs .tabs__toggles-active:before {
  display: none;
  background: white;
  height: 100%;
  width: 100%;
  z-index: -2;
  border: 2px solid #f79e32;
}
.home-tabs .tabs__toggles span {
  user-select: none;
}
.home-tabs .tabs__item {
  margin: 0;
  width: 65%;
}
@media only screen and (min-width: 840px) {
  .home-tabs .tabs__item {
    width: 100%;
  }
}
@media only screen and (min-width: 1080px) {
  .home-tabs .tabs__item {
    width: 100%;
  }
}
.home-tabs .tabs__item h3 {
  color: black;
}

.text-block {
  width: 90%;
  display: block;
  padding: 0;
  transition: all 0.9s ease 0s;
  margin: 0 auto;
}
.text-block.anim:not(.in-view) {
  transform: translateY(6rem);
  opacity: 0;
}

.timeline {
  position: relative;
  width: 100vw;
  min-height: 100vh;
  margin: 2rem -14%vw;
  padding: 8rem 14%vw 12rem 14%vw;
  transition: all 0.9s ease 0s;
  z-index: 0;
}
.timeline__thumbs {
  position: absolute;
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  top: 0;
  left: 0;
  margin: 0;
  padding: 0;
  overflow: hidden;
  z-index: -1;
}
.timeline__thumbs-item {
  position: relative;
  width: 100%;
  height: 100%;
  display: inline-block;
  flex: 1 0 auto;
  margin: 0;
  padding: 0;
  vertical-align: top;
}
.timeline__thumbs-item__image {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  transition: all 0.9s ease 0s;
}
.timeline__thumbs-item__image:before {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background: rgba(0, 0, 0, 0.5);
}
.timeline__thumbs-item.anim:not(.in-view) .timeline__thumbs-item__image {
  scale: 1.1;
}
.timeline__contents {
  position: relative;
  width: 100%;
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  margin: 0;
  padding: 0;
  overflow: hidden;
}
@media only screen and (min-width: 840px) {
  .timeline__contents {
    width: 66.666667%;
  }
}
@media only screen and (min-width: 1080px) {
  .timeline__contents {
    width: 50%;
  }
}
@media only screen and (min-width: 1280px) {
  .timeline__contents {
    width: 33.333334%;
  }
}
.timeline__contents-item {
  width: 100%;
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  flex: 1 0 auto;
  margin: 0;
  padding: 0;
  vertical-align: top;
}
.timeline__contents-item h6 {
  margin: 0;
}
.timeline__nav {
  position: absolute;
  width: 100%;
  bottom: 0;
  left: 0;
  padding: 0 14%vw;
}
.timeline__indices {
  width: 100%;
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  gap: 4rem;
  margin: 0;
  padding: 0 2rem;
}
.timeline__indices-item {
  position: relative;
  margin: 0;
  padding: 3rem 0 2rem 0;
  font-size: 2rem;
  line-height: 2rem;
  writing-mode: vertical-lr;
  text-orientation: mixed;
  transform: rotate(180deg);
  transition: all 0.3s ease 0s;
  cursor: pointer;
}
.timeline__indices-item:before {
  content: "";
  position: absolute;
  width: 0.2rem;
  height: 2rem;
  top: 0;
  left: 0.9rem;
  background: #eae9e8;
  transition: all 0.3s ease 0s;
}
.timeline__indices-item.active {
  padding: 5rem 0 0 0;
}
.timeline__indices-item.active:before {
  height: 4rem;
}
.timeline.anim:not(.in-view) {
  transform: translateY(6rem);
  opacity: 0;
}

.home-events {
  margin-top: 0;
}
@media only screen and (min-width: 1080px) {
  .home-events {
    margin-top: 200px;
  }
}
@media only screen and (min-width: 1280px) {
  .home-events {
    margin-top: 100px;
  }
}
@media only screen and (min-width: 1440px) {
  .home-events {
    margin-top: 200px;
    padding-top: 250px;
  }
}
@media only screen and (min-width: 1600px) {
  .home-events {
    margin-top: 300px;
  }
}
@media only screen and (min-width: 2000px) {
  .home-events {
    margin-top: 700px;
  }
}
@media only screen and (min-width: 3000px) {
  .home-events {
    margin-top: 1200px;
  }
}

.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;
}

.video-block {
  position: relative;
  width: 100%;
  display: block;
  margin: 0 0 2rem 0;
  padding: 0 2rem;
  transition: all 0.9s ease 0s;
}
.video-block.anim:not(.in-view) {
  transform: translateY(6rem);
  opacity: 0;
}

.video-embed {
  position: relative;
  width: 100%;
  aspect-ratio: 16/9;
}
.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%);
}

.vertical-accordions {
  width: 100%;
  display: flex;
  flex-direction: column;
  margin: 0;
  padding: 0;
  margin-top: 80px;
}
@media only screen and (min-width: 1080px) {
  .vertical-accordions {
    flex-direction: row;
  }
}
@media only screen and (min-width: 3000px) {
  .vertical-accordions {
    max-width: 2000px;
    margin: 0 auto;
  }
}
.vertical-accordions:last-child {
  border-bottom: 0;
}
.vertical-accordions .tab-content__images {
  padding: 0 2rem;
  position: relative;
}
@media only screen and (min-width: 1080px) {
  .vertical-accordions .tab-content__images {
    position: absolute;
    right: 0px;
    top: 0px;
    width: 45%;
    margin-top: 40px;
  }
}
.vertical-accordions .tab-content__images img {
  border-radius: 11px;
}
@media only screen and (min-width: 1080px) {
  .vertical-accordions .tab-content__images .image_one {
    width: 100%;
  }
}
.vertical-accordions .tab-content__images .image_one img {
  width: 100%;
  max-height: 500px;
  object-fit: cover;
}
.vertical-accordions .tab-content__images .image_two {
  display: none;
  position: relative;
}
@media only screen and (min-width: 1080px) {
  .vertical-accordions .tab-content__images .image_two {
    display: block;
    width: 50%;
    margin-left: auto;
    margin-right: 0;
    margin-top: 24px;
  }
  .vertical-accordions .tab-content__images .image_two:before {
    content: "";
    position: absolute;
    background-image: url("/wp-content/themes/speak/assets/images/corner-decor.svg");
    background-repeat: no-repeat;
    background-size: contain;
    height: 60px;
    width: 60px;
    left: -82px;
    top: 0px;
    z-index: 10;
  }
}
.vertical-accordions__tab {
  position: relative;
  width: 100%;
  display: flex;
  height: auto;
  transition: all 0.9s ease 0s;
  padding: 0;
  transition: all 0.33s ease-in-out;
  border: none;
  flex-direction: column;
  margin: 0;
}
@media only screen and (min-width: 1080px) {
  .vertical-accordions__tab {
    margin: 5px;
    width: 90px;
    flex-direction: row;
    height: 800px;
  }
}
.vertical-accordions__tab:hover {
  transform: translateY(-6px);
}
.vertical-accordions__tab:before {
  content: "";
  background-repeat: no-repeat;
  background-size: contain;
  height: 60px;
  width: 60px;
  top: 21px;
  left: 19.5px;
  position: absolute;
  z-index: 1000;
}
@media only screen and (min-width: 1080px) {
  .vertical-accordions__tab:before {
    top: 11px;
    left: 15px;
  }
}
.vertical-accordions__tab:after {
  content: "";
  background-repeat: no-repeat;
  background-size: contain;
  height: 60px;
  width: 60px;
  top: 22px;
  right: 15px;
  position: absolute;
  z-index: 1000;
}
@media only screen and (min-width: 1080px) {
  .vertical-accordions__tab:after {
    top: 94px;
    right: unset;
    left: 15px;
  }
}
.vertical-accordions__tab:first-child:before {
  background-image: url("/wp-content/themes/speak/assets/icons/ui/pattern__fan-white.svg");
}
.vertical-accordions__tab:first-child:after {
  background-image: url("/wp-content/themes/speak/assets/icons/ui/icon__gorilla.svg");
}
.vertical-accordions__tab:first-child .vertical-accordions__tab-toggle {
  background: #b3e053;
}
@media only screen and (min-width: 1080px) {
  .vertical-accordions__tab:first-child {
    margin-left: 10px;
  }
}
.vertical-accordions__tab:nth-child(2):before {
  background-image: url("/wp-content/themes/speak/assets/icons/ui/icon__flower.svg");
}
.vertical-accordions__tab:nth-child(2):after {
  background-image: url("/wp-content/themes/speak/assets/icons/ui/icon__butterfly.svg");
  background-position: center;
}
@media only screen and (min-width: 1080px) {
  .vertical-accordions__tab:nth-child(2):after {
    top: 105px;
  }
}
.vertical-accordions__tab:nth-child(2) .vertical-accordions__tab-toggle {
  background: #ee3424;
}
.vertical-accordions__tab:nth-child(3):before {
  background-image: url("/wp-content/themes/speak/assets/icons/ui/pattern__fan-white.svg");
}
.vertical-accordions__tab:nth-child(3):after {
  background-image: url("/wp-content/themes/speak/assets/icons/ui/icon__giraffe.svg");
}
@media only screen and (min-width: 1080px) {
  .vertical-accordions__tab:nth-child(3):after {
    left: 15px;
  }
}
.vertical-accordions__tab:nth-child(3) .vertical-accordions__tab-toggle {
  background: #f79e32;
}
.vertical-accordions__tab:nth-child(4) {
  margin-right: 10px;
}
.vertical-accordions__tab:nth-child(4):before {
  background-image: url("/wp-content/themes/speak/assets/icons/ui/icon__flower.svg");
}
.vertical-accordions__tab:nth-child(4):after {
  background-image: url("/wp-content/themes/speak/assets/icons/ui/icon__zoo-logo.svg");
}
@media only screen and (min-width: 1080px) {
  .vertical-accordions__tab:nth-child(4):after {
    left: 21px;
  }
}
.vertical-accordions__tab:nth-child(4) .vertical-accordions__tab-toggle {
  background: #4eb4e3;
}
.vertical-accordions__tab:last-child {
  border-bottom: 0;
}
.vertical-accordions__tab-toggle {
  position: relative;
  transition: all 0.33s ease-in-out;
  padding: 0;
  line-height: 35px;
  border-radius: 24px;
  font-size: 30px;
  font-family: "Sucrose-Bold";
  letter-spacing: 0px;
  cursor: pointer;
  display: flex;
  justify-content: center;
  align-items: center;
  height: 74px;
  margin: 0 auto;
  margin-top: 15px;
  width: 95%;
}
@media only screen and (min-width: 1080px) {
  .vertical-accordions__tab-toggle {
    height: unset;
    align-items: flex-end;
    margin: 0;
    margin-bottom: 0;
    width: 88px;
  }
}
.vertical-accordions__tab-toggle [class*=material-] {
  display: none;
}
@media only screen and (min-width: 1080px) {
  .vertical-accordions__tab-toggle [class*=material-] {
    width: auto;
    font-size: 3rem;
    line-height: 3rem;
    transition: all 0.3s ease 0s;
    vertical-align: middle !important;
    color: #000000;
    border-radius: 50%;
    border: 1px solid black;
    height: 52px;
    width: 52px;
    margin-bottom: 15px;
    display: flex;
    justify-content: center;
    align-items: center;
  }
}
.vertical-accordions__tab-toggle .tab-title {
  text-align: center;
  width: 100%;
  max-width: 240px;
  font-size: 23px;
  line-height: 28px;
}
@media only screen and (min-width: 1080px) {
  .vertical-accordions__tab-toggle .tab-title {
    position: absolute;
    z-index: 100;
    top: 50%;
    left: -175%;
    width: 400px;
    transform: rotate(-90deg);
    font-size: 30px;
    font-family: "Sucrose-Bold";
    letter-spacing: 0px;
    max-width: unset;
  }
}
.vertical-accordions__tab-content {
  width: 100%;
  margin: 0;
  padding: 1rem 0 0 0;
  overflow: hidden;
  display: none !important;
  position: relative;
  padding-top: 50px;
}
@media only screen and (min-width: 1080px) {
  .vertical-accordions__tab-content p,
  .vertical-accordions__tab-content h1,
  .vertical-accordions__tab-content h2,
  .vertical-accordions__tab-content h3,
  .vertical-accordions__tab-content h4,
  .vertical-accordions__tab-content h5,
  .vertical-accordions__tab-content h6,
  .vertical-accordions__tab-content a {
    width: 50%;
  }
}
.vertical-accordions__tab-content:before {
  content: "";
  position: absolute;
  background-image: url("/wp-content/themes/speak/assets/images/curve-decor.svg");
  background-repeat: no-repeat;
  background-size: contain;
  height: 38px;
  width: 214px;
  left: 10px;
  top: 25px;
  z-index: 10;
}
@media only screen and (min-width: 1080px) {
  .vertical-accordions__tab-content:before {
    top: 0px;
  }
}
.vertical-accordions__tab-content:last-child {
  border-bottom: 0;
}
.vertical-accordions__tab-content *:last-child {
  margin: 0;
}
.vertical-accordions__tab.active {
  width: 100%;
  background: white;
}
.vertical-accordions__tab.active .vertical-accordions__tab-toggle {
  border-radius: 24px;
}
@media only screen and (min-width: 1080px) {
  .vertical-accordions__tab.active .vertical-accordions__tab-toggle {
    width: 90px;
    height: 800px;
  }
}
.vertical-accordions__tab.active .vertical-accordions__tab-toggle .vertical-accordions__tab-content {
  display: block;
}
.vertical-accordions__tab.active .vertical-accordions__tab-toggle .tab-title {
  left: -225%;
}
@media only screen and (min-width: 1080px) {
  .vertical-accordions__tab.active .vertical-accordions__tab-toggle .tab-title {
    left: -190%;
  }
}
@media only screen and (min-width: 1080px) {
  .vertical-accordions__tab.active {
    width: calc(100% - 320px);
  }
}
.vertical-accordions__tab.anim:not(.in-view) {
  transform: translateY(6rem);
  opacity: 0;
}

.vertical-accordions__tab.active .vertical-accordions__tab-content {
  display: block !important;
}
.vertical-accordions__tab.active:hover {
  transform: none !important;
}

.descriptive-cta {
  border-radius: 11px;
  width: 90%;
  margin: 0 auto;
  z-index: 2;
  position: relative;
  display: flex;
  flex-direction: column-reverse;
}
@media only screen and (min-width: 1080px) {
  .descriptive-cta {
    margin-top: 100px;
    margin-bottom: 100px;
    flex-direction: row;
  }
}
@media only screen and (min-width: 1440px) {
  .descriptive-cta {
    margin-top: 100px;
    margin-bottom: 250px;
  }
}
.descriptive-cta:before {
  content: "";
  position: absolute;
  background-image: url("/wp-content/themes/speak/assets/images/descriptive-cta-background.svg");
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  max-width: 1500px;
  width: 400%;
  height: calc(100% + 200px);
  left: -150%;
  top: -100px;
  transform: translate(0, 0%);
  z-index: -3;
}
@media only screen and (min-width: 1080px) {
  .descriptive-cta:before {
    width: 110%;
    height: 725px;
    left: -5%;
    top: 50%;
    transform: translate(0, -50%);
  }
}
@media only screen and (min-width: 1600px) {
  .descriptive-cta:before {
    height: 1000px;
  }
}
.descriptive-cta__content {
  padding: 30px;
  position: relative;
  z-index: 1;
  background: #82c657;
  min-height: 400px;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  width: 100%;
  border-bottom-left-radius: 11px;
  border-bottom-right-radius: 11px;
}
@media only screen and (min-width: 1080px) {
  .descriptive-cta__content {
    width: 50%;
    border-top-left-radius: 11px;
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
  }
}
@media only screen and (min-width: 1080px) {
  .descriptive-cta__content-description {
    margin-left: 75px;
  }
}
.descriptive-cta__content-description h2 {
  margin-bottom: 20px;
}
@media only screen and (min-width: 1080px) {
  .descriptive-cta__content-description h2 {
    margin-bottom: unset;
  }
}
.descriptive-cta__content-description p {
  font-weight: 500;
}
.descriptive-cta__image {
  background: #82c657;
  border-top-right-radius: 11px;
  border-top-left-radius: 11px;
  position: relative;
  width: 100%;
  display: flex;
  flex-direction: row-reverse;
}
@media only screen and (min-width: 1080px) {
  .descriptive-cta__image {
    width: 50%;
    display: block;
    border-top-left-radius: 0px;
    border-bottom-right-radius: 11px;
  }
}
.descriptive-cta__image img {
  border-radius: 50%;
}
.descriptive-cta__image-large {
  position: relative;
  z-index: 2;
  height: 180px;
  width: 180px;
  margin-right: 50px;
}
@media only screen and (min-width: 1080px) {
  .descriptive-cta__image-large {
    height: 393px;
    width: 393px;
    margin-left: auto;
    margin-right: -30px;
  }
}
.descriptive-cta__image-large:after {
  content: "";
  position: absolute;
  background-image: url("/wp-content/themes/speak/assets/images/giraffe-head.png");
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  z-index: 1;
  height: 156px;
  width: 206px;
  right: 100px;
  top: -85px;
}
@media only screen and (min-width: 1080px) {
  .descriptive-cta__image-large:after {
    right: 300px;
    top: -100px;
    height: 325px;
    width: 433px;
  }
}
.descriptive-cta__image-large img {
  object-fit: cover;
  position: absolute;
  top: -30px;
  right: -30px;
  z-index: 2;
  width: 180px;
  height: 180px;
}
@media only screen and (min-width: 1080px) {
  .descriptive-cta__image-large img {
    height: 393px;
    width: 393px;
  }
}
.descriptive-cta__image-small {
  position: relative;
}
.descriptive-cta__image-small img {
  object-fit: cover;
  position: absolute;
  z-index: 1;
  right: -70px;
  bottom: -60px;
  z-index: 10000;
  position: relative;
  height: 136px;
  width: 136px;
}
@media only screen and (min-width: 1080px) {
  .descriptive-cta__image-small img {
    bottom: 100px;
    width: 196px;
    height: 196px;
    right: -300px;
    z-index: 1;
  }
}

.animals {
  display: flex;
  flex-wrap: wrap;
  width: 90%;
  padding-bottom: 200px;
  max-width: 718px;
  margin: 0 auto;
  position: relative;
}
.animals:after {
  content: "";
  position: absolute;
  height: 1000px;
  width: 1400px;
  background-image: url("/wp-content/themes/speak/assets/images/hippo-with-grass.png");
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  right: -400px;
  bottom: -600px;
  display: none;
}
@media only screen and (min-width: 840px) {
  .animals:after {
    display: flex;
    z-index: 1;
  }
}
@media only screen and (min-width: 1080px) {
  .animals {
    margin-top: -200px;
    z-index: 9999;
    position: relative;
  }
}
.animals__item {
  height: auto;
  aspect-ratio: 3/2;
  width: 100%;
  display: flex;
  justify-content: flex-end;
  align-items: flex-end;
  overflow: hidden;
  border-radius: 11px;
  cursor: pointer;
  margin: 8px;
  position: relative;
}
@media only screen and (min-width: 840px) {
  .animals__item {
    width: calc(50% - 16px);
    height: 250px;
  }
}
@media only screen and (min-width: 1080px) {
  .animals__item {
    aspect-ratio: unset;
  }
  .animals__item:nth-child(1) {
    height: 282px;
    width: calc(40% - 16px);
    margin-top: 84px;
  }
  .animals__item:nth-child(2) {
    height: 358px;
    width: calc(60% - 16px);
  }
  .animals__item:nth-child(3) {
    height: 282px;
    width: 100%;
  }
  .animals__item:nth-child(4) {
    height: 282px;
    width: calc(60% - 16px);
  }
  .animals__item:nth-child(5) {
    height: 358px;
    width: calc(40% - 16px);
    margin-top: 8px;
  }
  .animals__item:nth-child(6) {
    margin-top: -66px;
    height: 358px;
    width: calc(60% - 16px);
  }
  .animals__item:nth-child(7) {
    height: 282px;
    width: calc(40% - 16px);
    margin-top: 8px;
  }
  .animals__item:nth-child(8) {
    height: 282px;
    width: 100%;
  }
  .animals__item:nth-child(9) {
    height: 282px;
    width: calc(60% - 16px);
  }
  .animals__item:nth-child(10) {
    height: 358px;
    width: calc(40% - 16px);
    margin-top: 8px;
  }
  .animals__item:nth-child(11) {
    margin-top: -66px;
    height: 358px;
    width: calc(60% - 16px);
  }
  .animals__item:nth-child(12) {
    height: 282px;
    width: calc(40% - 16px);
    margin-top: 8px;
  }
  .animals__item:nth-child(13) {
    height: 282px;
    width: 100%;
  }
  .animals__item:nth-child(14) {
    height: 282px;
    width: calc(60% - 16px);
  }
  .animals__item:nth-child(15) {
    height: 358px;
    width: calc(40% - 16px);
    margin-top: 8px;
  }
  .animals__item:nth-child(16) {
    margin-top: -66px;
    height: 358px;
    width: calc(60% - 16px);
  }
  .animals__item:nth-child(17) {
    height: 282px;
    width: calc(40% - 16px);
    margin-top: 8px;
  }
}
.animals__item-underlay {
  position: relative;
  width: 100%;
  height: 100%;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  transition: all 0.33s ease 0s;
  z-index: 0;
  border-radius: 11px;
}
.animals__item-underlay:before {
  content: "";
  background: transparent linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, #000000 100%) 0% 0% no-repeat padding-box;
  height: 54px;
  width: 100%;
  position: absolute;
  left: 0px;
  bottom: 0px;
  transition: all 0.33s ease-in-out;
  border-radius: 11px;
}
@media only screen and (min-width: 1080px) {
  .animals__item-underlay:before {
    height: 150px;
  }
}
.animals__item-underlay img {
  height: 100%;
  width: 100%;
}
.animals__item-content {
  position: absolute;
  z-index: 10;
}
.animals__item-content:after {
  content: "";
  position: absolute;
  background-image: url("/wp-content/themes/speak/assets/icons/ui/green-arrow.svg");
  background-repeat: no-repeat;
  background-size: contain;
  height: 14px;
  width: 33px;
  right: 20px;
  bottom: 20px;
  transition: all 0.33s ease-in-out;
}
.animals__item-content h3 {
  color: #f79e32 !important;
  font-family: "Sucrose-Bold";
  font-size: 18px;
  margin-bottom: 13px;
  margin-right: 90px;
  line-height: 24px;
  text-align: right;
  width: 100%;
  max-width: 160px;
}
.animals__item-active {
  display: none;
  position: absolute;
  left: 0px;
  top: 0px;
  background: rgba(0, 0, 0, 0.7);
  height: 100%;
  width: 100%;
  padding: 43px;
}
@media (max-width: 600px) {
  .animals__item-active {
    padding: 20px;
  }
}
.animals__item-active_top {
  display: flex;
  justify-content: space-between;
  flex-direction: column;
}
@media only screen and (min-width: 1080px) {
  .animals__item-active_top {
    flex-direction: row;
  }
}
.animals__item-active_bottom h5 {
  color: #f79e32;
  font-family: "Comfortaa", sans-serif;
}
.animals__item-active_title h3 {
  font-size: 29px;
  letter-spacing: 0.53px;
  line-height: 36px;
  color: #f79e32;
  font-family: "Sucrose-Bold";
  margin-bottom: 16px;
}
.animals__item-active_title p {
  color: white;
  font-size: 18px;
  font-weight: 500;
}
.animals__item-active_buttons {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: space-around;
  margin-bottom: 20px;
  gap: 10px;
}
@media (max-width: 600px) {
  .animals__item-active_buttons {
    flex-direction: column;
  }
}
@media only screen and (min-width: 1080px) {
  .animals__item-active_buttons {
    flex-direction: column;
  }
}
.animals__item-active_buttons .animal-button {
  width: 140px;
  height: 120px;
  font-size: 18px;
  border: 3px solid;
  border-radius: 11px;
  display: flex;
  justify-content: center;
  align-items: flex-end;
  color: white;
  font-size: 15px;
  font-weight: 600;
  text-decoration: none;
  text-transform: uppercase;
  text-align: center;
  padding: 14px;
  line-height: 20px;
  position: relative;
  transition: all 0.33s ease-in-out;
}
.animals__item-active_buttons .animal-button:hover {
  transform: scale(1.03);
}
.animals__item-active_buttons .animal-button:before {
  content: "";
  position: absolute;
  height: 40px;
  width: 50px;
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  top: 14px;
}
@media (max-width: 600px) {
  .animals__item-active_buttons .animal-button:before {
    height: 30px;
    left: 10px;
    top: 8px;
    width: 40px;
  }
}
@media (max-width: 600px) {
  .animals__item-active_buttons .animal-button {
    height: auto;
    justify-content: left;
    padding-left: 60px;
    width: 100%;
  }
  .animals__item-active_buttons .animal-button br {
    content: "";
  }
  .animals__item-active_buttons .animal-button br::before {
    content: " ";
    display: inline-block;
    width: 5px;
  }
}
.animals__item-active_buttons .animal-button--visit {
  border-color: #b3e053;
}
.animals__item-active_buttons .animal-button--visit::before {
  background-image: url("/wp-content/themes/speak/assets/images/plan-your-visit.svg");
}
.animals__item-active_buttons .animal-button--map {
  border-color: #4eb4e3;
}
.animals__item-active_buttons .animal-button--map::before {
  background-image: url("/wp-content/themes/speak/assets/images/view-zoo-map.svg");
}
.animals__item-active_buttons .animal-button--tickets {
  border-color: #f79e32;
}
.animals__item-active_buttons .animal-button--tickets::before {
  background-image: url("/wp-content/themes/speak/assets/icons/ui/icon__ticket.svg");
}
.animals__item.active {
  width: 100%;
  height: 582px;
  z-index: 10;
}
.animals__item.active .animals__item-active {
  display: block;
}
.animals__item:hover .animals__item-underlay {
  transform: scale(1.05);
}
.animals__item:hover .animals__item-content:after {
  transform: translatex(5px);
}

.page-template-page-animals {
  position: relative;
}
.page-template-page-animals:before {
  content: "";
  position: absolute;
  height: 100%;
  width: 100%;
  opacity: 0.4;
  background: linear-gradient(#f79e32, #765ca7, white);
}
.page-template-page-animals footer {
  z-index: 999999;
}

.plan-your-adventure {
  padding: 0 5%;
  margin: 0 auto;
  position: relative;
  background-image: url("/wp-content/themes/speak/assets/images/leaf-background.svg");
  background-repeat: no-repeat;
  background-size: 110%;
  background-position: bottom;
}
@media only screen and (min-width: 1080px) {
  .plan-your-adventure {
    margin-top: 50px;
  }
}
@media only screen and (min-width: 1600px) {
  .plan-your-adventure {
    margin-top: 100px;
  }
}
@media only screen and (min-width: 3000px) {
  .plan-your-adventure {
    max-width: 2000px;
    margin: 0 auto;
    margin-top: 100px;
    background-size: 100% !important;
  }
}
.plan-your-adventure:after {
  content: "";
  position: absolute;
  height: 1211px;
  width: 583px;
  background: url("/wp-content/themes/speak/assets/images/flamingo-with-grass.png");
  background-repeat: no-repeat;
  background-size: contain;
  bottom: -500px;
  right: -250px;
  transform: scalex(-1);
  z-index: 0;
  display: none;
}
@media only screen and (min-width: 1080px) {
  .plan-your-adventure:after {
    display: flex;
  }
}
@media only screen and (min-width: 1080px) {
  .plan-your-adventure-cta__content {
    width: 100%;
    margin-left: auto;
    margin-right: 0%;
  }
}
.plan-your-adventure-cta__content h2 {
  padding: 0;
}
@media only screen and (min-width: 1080px) {
  .plan-your-adventure-cta__content h2 {
    padding-left: 30px;
    width: calc(100% - 400px);
    margin-left: auto;
    margin-right: 0;
  }
}
.plan-your-adventure-cta__content h4 {
  padding: 0;
}
@media only screen and (min-width: 1080px) {
  .plan-your-adventure-cta__content h4 {
    width: calc(100% - 400px);
    margin-left: auto;
    margin-right: 0;
  }
}
.plan-your-adventure-cta__content .plan-your-adventure__content-description {
  position: relative;
  z-index: 1000;
}
@media only screen and (min-width: 1080px) {
  .plan-your-adventure-cta__content .plan-your-adventure__content-description {
    width: calc(100% - 650px);
    margin-left: auto;
    margin-right: 0;
  }
}
.plan-your-adventure-cta__content .plan-your-adventure__content-description p {
  padding: 0;
}
.plan-your-adventure-cta__content .plan-your-adventure__content-button {
  border: 2px solid black;
  height: 47px;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 7px;
  background: #b3e053;
  transition: all 0.33s ease-in-out;
  position: relative;
  overflow: hidden;
  width: 321px;
  margin: 0 auto;
  margin-top: 48px;
  margin-bottom: 50px;
}
@media only screen and (min-width: 1080px) {
  .plan-your-adventure-cta__content .plan-your-adventure__content-button {
    margin-left: 0;
  }
}
.plan-your-adventure-cta__content .plan-your-adventure__content-button:hover {
  background: #f79e32 !important;
}
.plan-your-adventure-cta__content .plan-your-adventure__content-button:hover a {
  color: black !important;
}
.plan-your-adventure-cta__content .plan-your-adventure__content-button a {
  font-size: 15px;
  position: relative;
  z-index: 1;
  letter-spacing: 0.3px;
  font-weight: 500;
  text-transform: uppercase;
}
.plan-your-adventure__portals {
  z-index: 1;
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}
@media only screen and (min-width: 1080px) {
  .plan-your-adventure__portals {
    flex-direction: row;
    justify-content: flex-start;
    align-items: flex-end;
    margin-top: -270px;
  }
}
.plan-your-adventure__portals a {
  width: 320px;
  background: #4eb4e3;
  display: flex;
  flex-direction: column;
  border-radius: 11px;
  margin-bottom: 40px;
  transition: all 0.33s ease-in-out;
  border: 3px solid #4eb4e3;
}
.plan-your-adventure__portals a:hover {
  transform: rotate(-4deg);
}
.plan-your-adventure__portals a img {
  height: 200px;
  width: 100%;
  object-fit: cover;
  object-position: center;
  border-radius: 11px 11px 0 0;
}
.plan-your-adventure__portals .plan-your-adventure__portal-content {
  padding: 23px;
}
.plan-your-adventure__portals .plan-your-adventure__portal-content h5 {
  font-size: 40px;
  line-height: 43px;
  padding: 0;
}
.plan-your-adventure__portals .plan-your-adventure__portal-content p {
  padding: 0;
  font-weight: 600;
  font-size: 15px;
  text-transform: uppercase;
  margin: 0;
}
.plan-your-adventure__portals .plan-your-adventure__portal-large {
  transform: rotate(-4deg);
}
@media only screen and (min-width: 1080px) {
  .plan-your-adventure__portals .plan-your-adventure__portal-large img {
    height: 500px;
  }
}
@media only screen and (min-width: 1080px) {
  .plan-your-adventure__portals .plan-your-adventure__portal-large {
    transform: unset;
    width: 600px;
    margin-right: 50px;
  }
}
.plan-your-adventure__portals .plan-your-adventure__portal-large:before {
  display: none;
}
@media only screen and (min-width: 1080px) {
  .plan-your-adventure__portals .plan-your-adventure__portal-large:before {
    content: "";
    position: absolute;
    height: 350px;
    width: 400px;
    background: url("/wp-content/themes/speak/assets/images/chameleon.png");
    top: -320px;
    left: -50px;
    z-index: -1;
    display: flex;
    background-size: contain;
    background-repeat: no-repeat;
  }
}
.plan-your-adventure__portals .plan-your-adventure__portal-small {
  transform: rotate(4deg);
}
@media only screen and (min-width: 1080px) {
  .plan-your-adventure__portals .plan-your-adventure__portal-small img {
    height: 250px;
  }
}
@media only screen and (min-width: 1080px) {
  .plan-your-adventure__portals .plan-your-adventure__portal-small {
    transform: unset;
    width: 400px;
  }
}
.plan-your-adventure__images {
  display: flex;
  flex-direction: column;
}
@media only screen and (min-width: 1080px) {
  .plan-your-adventure__images {
    flex-direction: row;
    width: fit-content;
    margin-left: auto;
    margin-right: 0;
    justify-content: center;
    align-items: center;
  }
}
@media only screen and (min-width: 1080px) {
  .plan-your-adventure__images .image-one {
    width: 480px;
    height: 285px;
    object-fit: cover;
    border-radius: 11px;
  }
}
.plan-your-adventure__images .image-two {
  display: none;
}
@media only screen and (min-width: 1080px) {
  .plan-your-adventure__images .image-two {
    display: block;
    width: 250px;
    height: 100%;
    object-fit: cover;
    border-radius: 11px;
    margin-left: 30px;
  }
}

.tickets {
  background: linear-gradient(#eaf5cd, #fce3c4);
  border: 3px solid #b3e053;
  padding: 35px 40px;
  border-radius: 11px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-direction: column;
  width: 90%;
  margin: 0 auto;
  margin-top: 20px;
}
@media only screen and (min-width: 1280px) {
  .tickets {
    flex-direction: row;
    margin-top: 0;
  }
}
.tickets-cta__content {
  width: 100%;
}
@media only screen and (min-width: 1280px) {
  .tickets-cta__content {
    width: 35%;
  }
}
.tickets__content-subtitle {
  font-size: 15px;
  font-family: "Open Sans", sans-serif !important;
  color: black;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 1px;
  line-height: 20px;
  padding: 0;
  text-align: center;
}
.tickets__content-title {
  font-size: 40px;
  line-height: 44px;
  padding: 0;
  margin: 0;
  margin-bottom: 20px;
  text-align: center;
}
.tickets__content-description p {
  margin: 0;
  padding: 0;
  text-align: center;
  font-weight: 500;
  font-size: 16px;
}
.tickets__content-button {
  border: 2px solid black;
  height: 47px;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 7px;
  background: #4eb4e3;
  position: relative;
  overflow: hidden;
  width: 100%;
  max-width: 381px;
  margin: 0 auto;
  margin-top: 28px;
}
@media only screen and (min-width: 1080px) {
  .tickets__content-button {
    background: rgba(78, 180, 227, 0.33);
    width: 183px;
    margin-top: 28px;
  }
}
.tickets__content-button:before {
  content: "";
  position: absolute;
  height: 100px;
  width: 100px;
  background: #4eb4e3;
  border-radius: 50%;
  bottom: -100px;
  transition: all 0.33s ease-in-out;
}
.tickets__content-button:hover:before {
  width: 400px;
  height: 400px;
  bottom: -125px;
}
@media only screen and (min-width: 1080px) {
  .tickets__content-button:hover:before {
    width: 250px;
    height: 250px;
  }
}
.tickets__content-button:hover a {
  color: black !important;
}
.tickets__content-button a {
  font-size: 15px;
  position: relative;
  z-index: 1;
  letter-spacing: 0.3px;
  font-weight: 500;
  text-transform: uppercase;
  transition: all 0.33s ease-in-out;
}
.tickets__pricing {
  width: 100%;
  margin-top: 20px;
}
@media only screen and (min-width: 1280px) {
  .tickets__pricing {
    margin-top: 0;
    width: 55%;
  }
}
.tickets__pricing-group {
  display: flex;
  justify-content: space-between;
  align-items: center;
  border-bottom: 1px solid black;
  height: 60px;
}
.tickets__pricing-group:first-child {
  border-top: 1px solid black;
}
.tickets__pricing-group h6 {
  text-transform: uppercase;
  line-height: 22px;
  padding: 0;
  margin: 0;
  letter-spacing: 1.75px;
}
.tickets__pricing-group-cost p {
  margin: 0;
  padding: 0;
}
.tickets__pricing-group-subheader {
  font-size: 13px;
  text-align: center;
}
.tickets__pricing-group-price {
  font-weight: 600;
  letter-spacing: 1.5px;
  text-align: center;
}

.feedings {
  width: 90%;
  margin: 0 auto;
  margin-bottom: 50px;
}
.feedings__content-description p {
  padding: 0;
  position: relative;
  z-index: 12;
}
.feedings__content-button {
  border: 2px solid black;
  height: 47px;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 7px;
  background: #f79e32;
  position: relative;
  overflow: hidden;
  width: 100%;
  margin: 0 auto;
  margin-top: 28px;
  position: relative;
  z-index: 11;
}
@media only screen and (min-width: 840px) {
  .feedings__content-button {
    width: 321px;
  }
}
@media only screen and (min-width: 1080px) {
  .feedings__content-button {
    background: rgba(247, 158, 50, 0.25);
    width: 183px;
    margin-top: 28px;
    margin-right: 0;
  }
}
.feedings__content-button:before {
  content: "";
  position: absolute;
  height: 100px;
  width: 100px;
  background: #f79e32;
  border-radius: 50%;
  bottom: -100px;
  transition: all 0.33s ease-in-out;
}
.feedings__content-button:hover:before {
  width: 400px;
  height: 400px;
  bottom: -125px;
}
@media only screen and (min-width: 1080px) {
  .feedings__content-button:hover:before {
    width: 250px;
    height: 250px;
  }
}
.feedings__content-button:hover a {
  color: black !important;
}
.feedings__content-button a {
  font-size: 15px;
  position: relative;
  z-index: 1;
  height: 100%;
  width: 100%;
  text-align: center;
  line-height: 2.8;
  letter-spacing: 0.3px;
  font-weight: 500;
  text-transform: uppercase;
  transition: all 0.33s ease-in-out;
}
.feedings__group-item {
  display: flex;
  justify-content: space-between;
  align-items: center;
  border-bottom: 1px solid black;
  min-height: 50px;
}
.feedings__group-item:first-child {
  border-top: 1px solid black;
}
.feedings__group-item h6,
.feedings__group-item p {
  font-size: 15px;
  line-height: 20px;
  text-transform: uppercase;
  letter-spacing: 1.95px;
  margin: 0;
  width: 50%;
  padding: 10px 0;
}
.feedings__group-item h6 {
  width: 44%;
}
.feedings__group-item p {
  color: #1279a8;
  font-weight: 600;
  text-align: right;
  width: 56%;
}

.staff {
  background: url("/wp-content/themes/speak/assets/images/green-crosshatch.svg");
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-gap: 16px;
  padding: 0 10%;
}
@media only screen and (min-width: 1080px) {
  .staff {
    grid-template-columns: 1fr 1fr 1fr;
    grid-gap: 70px;
    background-size: 120%;
  }
}
.staff__item-underlay {
  border-radius: 20px;
}
.staff__item img {
  aspect-ratio: 1/1;
  width: 100%;
  height: 100%;
  border-radius: 20px;
}
.staff__item h5 {
  font-family: "Rock Salt", cursive;
  text-align: center;
  font-size: 18px;
  line-height: 27px;
  margin-bottom: 10px;
  margin-top: 20px;
  font-weight: 400;
}
@media only screen and (min-width: 1080px) {
  .staff__item h5 {
    font-size: 21px;
  }
}
.staff__item p {
  font-size: 12px;
  line-height: 18px;
  text-transform: uppercase;
  font-weight: 600;
  text-align: center;
  letter-spacing: 0.24px;
  margin: 0;
}

.testimonials {
  display: grid;
  grid-template-columns: 1fr;
  padding: 0 10%;
  grid-gap: 16px;
  background: url("/wp-content/themes/speak/assets/images/orange-leaves.svg");
}
@media only screen and (min-width: 840px) {
  .testimonials {
    grid-template-columns: 1fr 1fr;
  }
}
@media only screen and (min-width: 1280px) {
  .testimonials {
    grid-template-columns: 1fr 1fr 1fr 1fr;
  }
}
.testimonials__item {
  background: white;
  border-radius: 20px;
  padding: 80px 16px 16px 16px;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: center;
  position: relative;
}
.testimonials__item:before {
  content: "";
  height: 206px;
  width: 85px;
  position: absolute;
  top: -30px;
  left: -28px;
}
.testimonials__item:after {
  content: "";
  height: 22px;
  width: 134px;
  position: absolute;
  top: 31px;
  left: calc(50% - 67px);
  opacity: 0.8;
  background: url("/wp-content/themes/speak/assets/images/five-stars.svg");
  background-repeat: no-repeat;
  background-size: contain;
}
.testimonials__item:nth-child(1) {
  border: 10px solid #b3e053;
}
.testimonials__item:nth-child(1):before {
  background: url("/wp-content/themes/speak/assets/icons/ui/blue-quotes.svg");
  background-repeat: no-repeat;
  background-size: contain;
}
.testimonials__item:nth-child(2) {
  border: 10px solid #ee3424;
}
.testimonials__item:nth-child(2):before {
  background: url("/wp-content/themes/speak/assets/icons/ui/purple-quotes.svg");
  background-repeat: no-repeat;
  background-size: contain;
}
.testimonials__item:nth-child(3) {
  border: 10px solid #765ca7;
}
.testimonials__item:nth-child(3):before {
  background: url("/wp-content/themes/speak/assets/icons/ui/red-quotes.svg");
  background-repeat: no-repeat;
  background-size: contain;
}
.testimonials__item:nth-child(4) {
  border: 10px solid #4eb4e3;
}
.testimonials__item:nth-child(4):before {
  background: url("/wp-content/themes/speak/assets/icons/ui/green-quotes.svg");
  background-repeat: no-repeat;
  background-size: contain;
}
.testimonials__item p {
  font-weight: 300;
  padding: 0;
  text-align: center;
}
.testimonials__item h5 {
  font-family: "Rock Salt", cursive;
  text-align: center;
  font-weight: 400;
  font-size: 18px;
  line-height: 30px;
}

.descriptive-portals {
  position: relative;
  width: 90%;
  margin: 0 auto;
  margin-top: 54px;
  display: flex !important;
  grid-gap: 12px;
  justify-content: center;
  align-items: center;
  padding-left: 10%;
}
.descriptive-portals__item {
  position: relative;
  width: 100%;
  aspect-ratio: 2/3;
  display: flex;
  flex-direction: column-reverse;
  padding: 0;
  border-radius: 1rem;
  transition: all 0.33s ease 0s;
  vertical-align: top;
  text-decoration: none;
  margin-bottom: 30px;
  margin-bottom: 0;
  width: 18%;
}
.descriptive-portals__item:after {
  content: "";
  height: 50px;
  width: 50px;
  background: url("/wp-content/themes/speak/assets/icons/ui/black-arrow.svg");
  background-repeat: no-repeat;
  position: absolute;
  bottom: 0px;
  z-index: 1999900;
  right: 0px;
  transition: all 0.53s ease-in-out;
}
@media only screen and (min-width: 840px) {
  .descriptive-portals__item {
    width: 40%;
  }
}
.descriptive-portals__item:nth-child(even) {
  margin-top: 50px;
}
.descriptive-portals__item:nth-child(odd) {
  margin-top: -50px;
}
.descriptive-portals__item:nth-child(1) .descriptive-portals__item-content {
  background: transparent linear-gradient(180deg, rgba(78, 180, 227, 0) 0%, #82c657 60%) 0% 0% no-repeat padding-box;
}
.descriptive-portals__item:nth-child(2) .descriptive-portals__item-content {
  background: transparent linear-gradient(180deg, rgba(78, 180, 227, 0) 0%, #ee3424 60%) 0% 0% no-repeat padding-box;
}
.descriptive-portals__item:nth-child(3) .descriptive-portals__item-content {
  background: transparent linear-gradient(180deg, rgba(78, 180, 227, 0) 0%, #f79e32 60%) 0% 0% no-repeat padding-box;
}
.descriptive-portals__item:nth-child(4) .descriptive-portals__item-content {
  background: transparent linear-gradient(180deg, rgba(78, 180, 227, 0) 0%, #1279a8 60%) 0% 0% no-repeat padding-box;
}
.descriptive-portals__item:nth-child(5) .descriptive-portals__item-content {
  background: transparent linear-gradient(180deg, rgba(78, 180, 227, 0) 0%, #765ca7 60%) 0% 0% no-repeat padding-box;
}
.descriptive-portals__item:nth-child(5) .descriptive-portals__item-content h3 {
  color: white !important;
}
.descriptive-portals__item:nth-child(6) .descriptive-portals__item-content {
  background: transparent linear-gradient(180deg, rgba(78, 180, 227, 0) 0%, #82c657 60%) 0% 0% no-repeat padding-box;
}
.descriptive-portals__item:nth-child(7) .descriptive-portals__item-content {
  background: transparent linear-gradient(180deg, rgba(78, 180, 227, 0) 0%, #ee3424 60%) 0% 0% no-repeat padding-box;
}
.descriptive-portals__item:nth-child(8) .descriptive-portals__item-content {
  background: transparent linear-gradient(180deg, rgba(78, 180, 227, 0) 0%, #f79e32 60%) 0% 0% no-repeat padding-box;
}
.descriptive-portals__item:nth-child(9) .descriptive-portals__item-content {
  background: transparent linear-gradient(180deg, rgba(78, 180, 227, 0) 0%, #1279a8 60%) 0% 0% no-repeat padding-box;
}
.descriptive-portals__item:nth-child(10) .descriptive-portals__item-content {
  background: transparent linear-gradient(180deg, rgba(78, 180, 227, 0) 0%, #765ca7 60%) 0% 0% no-repeat padding-box;
}
.descriptive-portals__item:nth-child(10) .descriptive-portals__item-content h3 {
  color: white !important;
}
.descriptive-portals__item:nth-child(11) {
  margin-top: 50px;
}
.descriptive-portals__item:nth-child(11) .descriptive-portals__item-content {
  background: transparent linear-gradient(180deg, rgba(78, 180, 227, 0) 0%, #82c657 60%) 0% 0% no-repeat padding-box;
}
.descriptive-portals__item:nth-child(12) .descriptive-portals__item-content {
  background: transparent linear-gradient(180deg, rgba(78, 180, 227, 0) 0%, #ee3424 60%) 0% 0% no-repeat padding-box;
}
.descriptive-portals__item:nth-child(13) .descriptive-portals__item-content {
  background: transparent linear-gradient(180deg, rgba(78, 180, 227, 0) 0%, #f79e32 60%) 0% 0% no-repeat padding-box;
}
.descriptive-portals__item:nth-child(14) .descriptive-portals__item-content {
  background: transparent linear-gradient(180deg, rgba(78, 180, 227, 0) 0%, #1279a8 60%) 0% 0% no-repeat padding-box;
}
.descriptive-portals__item:nth-child(15) .descriptive-portals__item-content {
  background: transparent linear-gradient(180deg, rgba(78, 180, 227, 0) 0%, #765ca7 60%) 0% 0% no-repeat padding-box;
}
.descriptive-portals__item:nth-child(15) .descriptive-portals__item-content h3 {
  color: white !important;
}
.descriptive-portals__item-underlay {
  position: relative;
  width: 100%;
  height: 100%;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  transition: all 0.33s ease 0s;
  z-index: 0;
  border-radius: 11px;
}
.descriptive-portals__item-content {
  width: 100%;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  align-items: flex-start;
  margin: 0 auto;
  z-index: 2;
  height: 156px;
  position: absolute;
  padding: 24px;
  bottom: 0;
  border-radius: 11px;
  transition: all 0.33s ease-in-out;
}
.descriptive-portals__item-content h3 {
  font-family: "Sucrose-Bold";
  color: black !important;
  text-align: center;
  font-size: 25px;
  text-align: left;
  line-height: 30px;
  padding: 0;
  margin: 0;
  margin-top: 20px;
  margin-bottom: 0px;
  width: calc(100% - 50px);
}
@media only screen and (min-width: 1440px) {
  .descriptive-portals__item-content h3 {
    font-size: 30px;
    line-height: 35px;
  }
}
.descriptive-portals__item-content p {
  display: none;
  padding: 0;
  margin: 0;
  text-align: left;
  font-weight: 500;
  font-size: 18px;
  line-height: 30px;
}
.descriptive-portals__item:hover:after {
  background: url("/wp-content/themes/speak/assets/icons/ui/white-arrow.svg");
  background-repeat: no-repeat;
}
.descriptive-portals__item:hover .descriptive-portals__item-content {
  height: 100%;
  justify-content: flex-start;
  background: transparent linear-gradient(180deg, transparent 0%, black 70%) 0% 0% no-repeat padding-box;
}
.descriptive-portals__item:hover .descriptive-portals__item-content h3 {
  color: white !important;
}
.descriptive-portals__item:hover .descriptive-portals__item-content p {
  display: block;
  margin-top: 20px;
}
.descriptive-portals__item.anim:not(.in-view) {
  transform: translateY(6rem);
  opacity: 0;
}
.descriptive-portals__item.anim:not(.in-view) .descriptive-portals__item-underlay {
  scale: 1.1;
}

.tns-controls {
  width: 100px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-top: 25px;
}
.tns-controls button {
  height: 40px;
  width: 40px;
  background: #b3e053;
  border-radius: 50%;
  background-image: url("/wp-content/themes/speak/assets/icons/ui/arrow-dark.svg");
  background-repeat: no-repeat;
  background-size: contain;
  transform: rotate(-90deg);
  transition: all 0.33s ease-in-out;
  cursor: pointer;
}
.tns-controls button:first-child {
  transform: rotate(90deg);
}
.tns-controls button:hover {
  background-color: #f79e32;
}

.membership-grid {
  display: grid;
  grid-template-columns: 1fr;
  grid-gap: 23px;
  padding: 0 20px;
  background-image: url("/wp-content/themes/speak/assets/images/leaf-background.svg");
  background-repeat: no-repeat;
  background-size: 110%;
  background-position: top;
}
@media only screen and (min-width: 840px) {
  .membership-grid {
    grid-template-columns: 1fr 1fr;
    padding: 0 85px 0px 85px;
  }
}
@media only screen and (min-width: 1280px) {
  .membership-grid {
    grid-template-columns: 1fr 1fr 1fr 1fr;
  }
}
.membership-grid__item {
  border-radius: 11px;
  padding: 13px;
  position: relative;
  border: 3px solid #f79e32;
}
.membership-grid__item:before {
  content: "";
  position: absolute;
  background: linear-gradient(90deg, #fbc7c1, #fde2c3);
  height: 100%;
  width: 100%;
  opacity: 1;
  border-radius: 8px;
  top: 0px;
  left: 0px;
}
.membership-grid__item:nth-child(2):before {
  background: linear-gradient(90deg, #fde2c3, #dceece);
}
.membership-grid__item:nth-child(3):before {
  background: linear-gradient(90deg, #dceece, #fde2c3);
}
.membership-grid__item:nth-child(4):before {
  background: linear-gradient(90deg, #fde2c3, #fbc7c1);
}
.membership-grid__item h4 {
  color: black;
  position: relative;
  text-align: center;
  font-family: "Sucrose-Bold" !important;
  font-size: 30px;
  line-height: 35px;
  letter-spacing: 0px;
  margin-top: 20px;
}
.membership-grid__item-cost {
  text-align: center;
  color: #1279a8;
  font-weight: 500;
  font-family: "Comfortaa", sans-serif !important;
  position: relative;
  font-size: 35px;
  line-height: 36px;
  letter-spacing: 0.7px;
  display: flex;
  flex-direction: column;
}
.membership-grid__item-cost span {
  text-align: center;
  color: #1279a8;
  font-weight: 500;
  font-family: "Comfortaa", sans-serif;
  position: relative;
  margin: 0;
  font-size: 15px;
  text-transform: lowercase;
}
.membership-grid .membership-grid__list {
  margin-top: 35px;
  position: relative;
  z-index: 100;
  padding: 0;
}
.membership-grid .membership-grid__list-summary {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  padding: 0;
  margin-bottom: 20px;
}
.membership-grid .membership-grid__list-summary__icons {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
}
.membership-grid .membership-grid__list-summary__icons img {
  height: 40px;
  width: 40px;
  margin: 6px;
}
.membership-grid .membership-grid__list-summary__text {
  padding-left: 10px;
  font-size: 15px;
  color: black;
  z-index: 199;
  position: relative;
  letter-spacing: 0.33px;
  font-weight: 500;
  text-align: center;
  line-height: 20px;
}
.membership-grid .membership-grid__list-item {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  padding: 0;
  margin-bottom: 15px;
}
@media only screen and (min-width: 1280px) {
  .membership-grid .membership-grid__list-item {
    align-items: flex-start;
  }
}
.membership-grid .membership-grid__list-item__icon {
  position: relative;
  height: 40px;
  width: 40px;
}
.membership-grid .membership-grid__list-item__icon img {
  height: 40px;
  width: 40px;
}
.membership-grid .membership-grid__list-item__icons {
  position: relative;
  width: 100%;
}
.membership-grid .membership-grid__list-item__icons img {
  height: 40px;
  width: 40px;
}
.membership-grid .membership-grid__list-item__text {
  padding-left: 10px;
  font-size: 15px;
  color: black;
  line-height: 20px;
  z-index: 199;
  position: relative;
  letter-spacing: 0.33px;
  font-weight: 500;
  width: calc(100% - 50px);
}
.membership-grid .standard-button {
  height: auto;
}

.double-image {
  position: relative;
  max-width: 400px;
  margin: 0 auto;
  margin-bottom: 50px;
}
@media only screen and (min-width: 1280px) {
  .double-image {
    padding-top: 100px;
  }
}
.double-image:before {
  content: "";
  height: 54px;
  width: 146px;
  position: absolute;
  background: url("/wp-content/themes/speak/assets/images/grassy-patch.svg");
  background-size: contain;
  background-repeat: no-repeat;
  left: 0px;
  bottom: -20px;
  z-index: 9;
}
@media only screen and (min-width: 1280px) {
  .double-image:before {
    height: 113px;
    width: 370px;
    bottom: -10px;
    z-index: 9999999;
    left: -100px;
  }
}
.double-image:after {
  content: "";
  height: 120px;
  width: 120px;
  position: absolute;
  background: url("/wp-content/themes/speak/assets/gif/BlueButterflyNoWiggle-transparent.gif");
  background-size: contain;
  background-repeat: no-repeat;
  right: 60px;
  top: 35px;
  z-index: 9;
}
@media only screen and (min-width: 1280px) {
  .double-image:after {
    height: 220px;
    width: 220px;
    z-index: 9999999;
    top: -75px;
    right: unset;
    left: 150px;
  }
}
.double-image__large {
  height: 250px;
  width: 250px;
  border-radius: 50%;
  z-index: 2;
  position: relative;
}
@media only screen and (min-width: 1280px) {
  .double-image__large {
    height: 550px;
    width: 550px;
    z-index: 9910000;
  }
}
.double-image__large img {
  height: 250px;
  width: 250px;
  border-radius: 50%;
  object-fit: cover;
}
@media only screen and (min-width: 1280px) {
  .double-image__large img {
    height: 550px;
    width: 550px;
  }
}
.double-image__small {
  height: 125px;
  width: 125px;
  border-radius: 50%;
  position: absolute;
  bottom: 0px;
  right: 50px;
  z-index: 0;
}
@media only screen and (min-width: 1280px) {
  .double-image__small {
    height: 275px;
    width: 275px;
    bottom: unset;
    top: -100px;
    right: unset;
    left: -75px;
    z-index: 99100;
  }
}
.double-image__small img {
  height: 125px;
  width: 125px;
  border-radius: 50%;
  object-fit: cover;
}
@media only screen and (min-width: 1280px) {
  .double-image__small img {
    height: 275px;
    width: 275px;
  }
}

.content404 {
  margin: 90px 0 0 0;
}
.content404 .row {
  display: flex;
  flex-direction: column;
  justify-content: center;
  text-align: center;
}
.content404 .row h3 {
  margin: 0 0 20px 0;
}
.content404 .row .form-row {
  text-align: center;
}
.content404 .row .form-row input {
  text-align: center;
}
.content404 .row .form-row input.submit {
  margin: 5px 0 0 0;
}

.error404 {
  margin-top: 150px;
  position: relative;
}
.error404:before {
  content: "";
  height: 100%;
  width: 30%;
  position: absolute;
  background-image: url("/wp-content/themes/speak/assets/images/giraffe-head.png");
  background-size: contain;
  background-repeat: no-repeat;
  right: -10px;
  top: 100px;
  display: none;
}
@media only screen and (min-width: 840px) {
  .error404:before {
    display: flex;
  }
}
.error404 h1 {
  font-size: 60px;
  line-height: 70px;
}
.error404 h2 {
  font-size: 50px;
  line-height: 60px;
  margin-bottom: 20px;
}
.error404 form {
  width: 100% !important;
  display: flex;
  flex-direction: row;
}
.error404 form .form-row {
  padding: 0;
}
.error404 form .form-row .input-wrap {
  margin: 0;
}
.error404 form .submit {
  width: 100px !important;
  background: #b3e053;
}
.error404 form .submit:hover {
  background: #82c657;
}
.error404 .widget {
  flex-direction: column;
  align-items: flex-start;
  margin: 50px 20px;
}
.error404 .widget_tag_cloud {
  display: none;
}
.error404 .widget_archive {
  display: none;
}

.archive .entry-content .column:first-of-type,
.search .entry-content .column:first-of-type {
  display: grid;
  gap: 4rem;
  grid-template-columns: repeat(auto-fill, minmax(min(32rem, 100%), 1fr));
  padding: 0 40px;
}
.archive__link:hover .archive__title,
.search__link:hover .archive__title {
  color: #1279a8;
}
.archive__link img,
.search__link img {
  height: 100%;
  object-fit: cover;
  width: 100%;
}
.archive__thumbnail,
.search__thumbnail {
  aspect-ratio: 3/2;
  background: #eae9e8 url("../assets/images/saz-logo__long-green.svg") center/80% no-repeat;
  margin-bottom: 1.5rem;
}
.archive__title,
.search__title {
  margin: 0;
  padding: 0;
}

/* Home
----------------------------------------------------------------- */
.hero-default {
  position: relative;
  width: 100%;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  align-items: center;
  padding: 175px 8%;
  margin-bottom: 52px;
  clip-path: polygon(100% 0px, 100% calc(100% - 70px), 0px calc(100% - 2px), 0px 0px);
  height: 515px;
  z-index: 9999;
  background: linear-gradient(252deg, #b3e053, #1279a8);
}
.hero-default:before {
  content: "";
  height: 210px;
  width: 210px;
  top: 50px;
  left: -50px;
  position: absolute;
  z-index: 10090;
  background-image: url("/wp-content/themes/speak/assets/gif/ButterflySanAntonio-Wiggle-unscreen.gif");
  background-repeat: no-repeat;
  background-size: contain;
}
.hero-default .entry-title {
  z-index: 1000;
  position: relative;
  color: white;
  font-size: 58px !important;
  line-height: 48px !important;
  text-shadow: 0px 0px 9px rgba(0, 0, 0, 0.1607843137);
  text-align: center;
  margin-top: 0px;
}
@media only screen and (min-width: 1080px) {
  .hero-default .entry-title {
    font-size: 120px !important;
    line-height: 103px !important;
    text-align: left;
  }
}
.hero-default__content {
  width: 100%;
  padding: 8rem 14%vw 6rem 14%vw;
}
@media only screen and (min-width: 1080px) {
  .hero-default__content {
    width: 140%vw;
  }
}
.hero-default__content h4:first-child,
.hero-default__content h5 {
  transition: all 0.6s ease 0s;
}
.hero-default__content h1 {
  transition: all 0.6s ease 0.1s;
}
.hero-default__content h4,
.hero-default__content h6 {
  transition: all 0.6s ease 0.2s;
}
.hero-default__background-image {
  width: 100vw;
  left: -8%;
  top: 0px;
  opacity: 1;
  height: 525px !important;
  z-index: 50;
  display: block;
  position: absolute !important;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
}
.hero-default__media {
  width: 100%;
  height: 500px;
  display: block;
  margin: 0;
  top: 0px;
  position: absolute;
}
.hero-default__media:before {
  content: "";
  position: absolute;
  height: 525px;
  mix-blend-mode: color;
  width: 100%;
  background: linear-gradient(252deg, #b3e053, #1279a8);
  z-index: 10000;
  left: -8%;
  top: 0px;
  opacity: 1;
}
.hero-default__thumb {
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  mask-size: 100% 100%;
  z-index: -1;
}
.hero-default__thumb.right {
  position: relative;
  width: 100%;
  aspect-ratio: 4/5;
  mask-image: url("../assets/images/block-clipped.svg");
  transition: all 0.9s ease 0.3s;
}
.hero-default__thumb.left {
  position: absolute;
  width: calc(100% - 2rem);
  aspect-ratio: 200/214.4930316;
  top: calc(30% + 1rem);
  left: calc(-50% + 1rem);
  mask-image: url("../assets/images/block.svg");
  transition: all 0.9s ease 0.4s;
}
.hero-default__block {
  position: absolute;
  width: 100%;
  top: 30%;
  left: -50%;
  stroke: #1279a8;
  stroke-width: 0.1rem;
  stroke-dasharray: 659;
  stroke-dashoffset: 0;
  fill: transparent;
  transition: all 0.9s ease 0.6s;
  overflow: visible;
  z-index: -1;
}
.hero-default.anim:not(.in-view) h1,
.hero-default.anim:not(.in-view) h4,
.hero-default.anim:not(.in-view) h5,
.hero-default.anim:not(.in-view) h6,
.hero-default.anim:not(.in-view) .hero-default__thumb {
  transform: translateY(6rem);
  opacity: 0;
}
.hero-default.anim:not(.in-view) .hero-default__block {
  stroke-dashoffset: 659;
}

.page-template-default .site-main:before {
  content: "";
  height: 650px;
  width: 100%;
  position: absolute;
  background: url("/wp-content/themes/speak/assets/images/blue-leaves.svg");
  background-size: cover;
  background-position: top;
  background-repeat: no-repeat;
  left: 0%;
  top: 0px;
  z-index: 9;
}
.page-template-default .site-main .entry-content {
  padding-top: 50px;
}

.page-template-page-alternate .hero-default__media:before {
  background: linear-gradient(252deg, #f79e32, #765ca7);
}

.swCalEvents {
  width: 100%;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  margin: 0;
  padding: 0;
}

body.page-template-page-calendar [class*=sw-cal-grid] {
  width: 100%;
  padding: 0 14%vw 8rem 14%vw;
}
body.page-template-page-calendar [class*=sw-cal-grid] [class*=css][class*=control] {
  background: none !important;
  border: 0.1rem solid #cac9c8 !important;
  border-radius: 1rem !important;
}
body.page-template-page-calendar [class*=sw-cal-grid] [class*=css][class*=control] input:not([type=image]):not([type=checkbox]):not([type=radio]):not([type=select]):not([type=file]):not([type=submit]):not([type=button]) {
  height: 2rem !important;
  padding: 0 !important;
  color: #000000 !important;
}
body.page-template-page-calendar [class*=sw-cal-grid] [class*=css][class*=control] > [class*=css]:first-child {
  padding: 0 0.9rem !important;
}
body.page-template-page-calendar [class*=sw-cal-grid] [class*=css][class*=control] > [class*=css]:nth-child(2) {
  padding: 0 !important;
}
body.page-template-page-calendar [class*=sw-cal-grid] [class*=css][class*=Separator] {
  display: none;
}
body.page-template-page-calendar [class*=sw-cal-grid] .site-tags-editor {
  position: relative;
  font-size: 1.6rem;
  line-height: 2rem;
}
body.page-template-page-calendar [class*=sw-cal-grid] .site-tags-editor input:not([type=image]):not([type=checkbox]):not([type=radio]):not([type=select]):not([type=file]):not([type=submit]):not([type=button]) {
  padding: 0 0.9rem !important;
}
body.page-template-page-calendar [class*=sw-cal-grid] .site-tags-editor .css-1wa3eu0-placeholder {
  left: 1rem;
}
body.page-template-page-calendar [class*=sw-cal-grid] .site-tags-editor .react-selectize.bootstrap3.root-node .react-selectize-control .react-selectize-search-field-and-selected-values {
  padding-left: 0;
}
body.page-template-page-calendar [class*=sw-cal-grid] .site-tags-editor .react-selectize.root-node .react-selectize-control .react-selectize-toggle-button-container {
  position: absolute;
  top: calc(50% - 15px);
  right: 0;
}
body.page-template-page-calendar [class*=sw-cal-grid] .CalendarEventsDetail__eventCalendarFront {
  width: 100%;
  display: block;
  margin: 0;
  padding: 0;
}
body.page-template-page-calendar [class*=sw-cal-grid] .CalendarEventsDetail__eventCalendarFront .form-control {
  background-color: transparent !important;
  box-shadow: none !important;
}
body.page-template-page-calendar [class*=sw-cal-grid] .CalendarEventsDetail__eventCalendarFront .btn {
  position: relative;
  min-height: initial !important;
  display: inline-block;
  flex: 0 0 auto !important;
  margin: 0 0 0 2rem;
  font-family: "Open Sans", sans-serif;
  font-size: 2rem;
  line-height: 3rem;
  text-decoration: none;
  white-space: nowrap;
  text-align: center;
  border: none !important;
  background-color: #b3e053 !important;
  transition: all 0.3s ease 0s;
  overflow: hidden;
  vertical-align: top;
  cursor: pointer;
  z-index: 1;
  width: 50px;
  font-size: 0px;
  background-image: url("/wp-content/themes/speak/assets/icons/ui/black-arrow.svg") !important;
  background-repeat: no-repeat !important;
  background-position: center;
  color: white !important;
  background-size: 55%;
  border-radius: 50% !important;
  height: 50px !important;
  transition: all 0.33s ease-in-out;
}
body.page-template-page-calendar [class*=sw-cal-grid] .CalendarEventsDetail__eventCalendarFront .btn > span {
  display: inline-block;
  vertical-align: top;
}
body.page-template-page-calendar [class*=sw-cal-grid] .CalendarEventsDetail__eventCalendarFront .btn:hover {
  transform: scale(1.1);
}
body.page-template-page-calendar [class*=sw-cal-grid] .css-1rhbuit-multiValue {
  background: #cac9c8;
}
body.page-template-page-calendar [class*=sw-cal-grid] .row {
  width: 100vw;
  margin: 0 -14%vw;
}

body:not(.page-template-page-calendar) [class*=sw-cal-grid] {
  width: 100%;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  margin: 0;
  padding: 2rem 0 0 0;
}

.CalendarEventsDetail__eventCalendarFront {
  width: 100%;
}

.CalendarMenu {
  margin: 0 0 2rem 0 !important;
  padding: 0 1rem;
}
.CalendarMenu .CalendarMenuCenter {
  width: auto;
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
}
.CalendarMenu a {
  position: relative;
  width: auto !important;
  display: inline-block;
  margin: 0 1rem !important;
  padding: 0 !important;
  font-size: 2rem !important;
  line-height: 3rem !important;
  font-weight: 700 !important;
  color: #000000 !important;
  text-decoration: none !important;
  white-space: nowrap;
  border: none !important;
  transition: all 0.3s ease 0s;
  vertical-align: top !important;
}
.CalendarMenu a:before, .CalendarMenu a:after {
  content: "";
  position: absolute;
  width: 0;
  height: 0.1rem;
  bottom: 0;
  right: 0;
  transition: width 0.3s ease 0s;
}
.CalendarMenu a:before {
  background: #cac9c8;
}
.CalendarMenu a:after {
  background: #1279a8;
}
.CalendarMenu a.CalendarMenu__currentItem:before {
  width: 100%;
}
.CalendarMenu a:hover:after {
  width: 100%;
  right: initial;
  left: 0;
}

.CalendarMonthNavigation__header h2 {
  font-size: clamp(3.5rem, 5vw, 4.5rem) !important;
  line-height: clamp(4rem, 5.5vw, 5rem) !important;
  letter-spacing: -0.05em;
}
.CalendarMonthNavigation__header h2 > svg {
  display: inline-block;
  margin-top: clamp(1.1rem, 2.25vw - 0.9rem, 1.6rem) !important;
  vertical-align: top;
}

.CalendarMonthFilter {
  width: 100%;
  padding: 0 2rem !important;
  margin: 0 0 4rem 0;
  align-items: center;
}
.CalendarMonthFilter .SWSiteTagsEditor__tagsSelect .css-1d8n9bt {
  margin: 0;
  padding: 0 5px;
}
.CalendarMonthFilter .SWSiteTagsEditor__tagsSelect .css-ackcql {
  margin: 0;
  padding: 0;
}
.CalendarMonthFilter .SWSiteTagsEditor__tagsSelect [class$=control] {
  height: 40px;
}
.CalendarMonthFilter .SWSiteTagsEditor__tagsSelect input[role=combobox] {
  height: auto !important;
  line-height: 1 !important;
  grid-area: 1/-1 !important;
}
.CalendarMonthFilter .CalendarMonthFilter__dateSeparator {
  font-size: 1.4rem;
  line-height: 4rem;
  font-weight: 700;
  padding: 0;
  margin-left: 1rem;
  margin-right: 1rem;
}
@media (max-width: 1024px) {
  .CalendarMonthFilter > .site-tags-editor {
    width: 100%;
  }
}
.CalendarMonthFilter__dateRange {
  margin: 0 2rem 0 0;
}
@media (max-width: 1024px) {
  .CalendarMonthFilter__dateRange {
    width: 100%;
    margin: 0;
  }
}
.CalendarMonthFilter__date {
  margin-right: 0 !important;
}
.CalendarMonthFilter__search {
  text-transform: none !important;
}
.CalendarMonthFilter .CalendarMonthFilter__button {
  background-color: #82c657 !important;
  border-radius: 40px !important;
  font-weight: bold !important;
  height: 40px !important;
  margin-left: 10px !important;
}
.CalendarMonthFilter .CalendarMonthFilter__button:hover {
  border-color: #82c657 !important;
}

.CalendarMonthNavigation {
  width: 100%;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-end;
  padding: 0 14%vw 4rem 14%vw !important;
  font-size: 2rem;
  line-height: 3rem;
}
@media (max-width: 619px) {
  .CalendarMonthNavigation__header {
    width: 100%;
    flex: 1 0 auto !important;
  }
  .CalendarMonthNavigation__action {
    order: 2;
  }
}
.CalendarMonthNavigation__action {
  margin: 1rem 0;
  padding: 0 2rem;
  color: #000000 !important;
  transition: all 0.3s ease 0s;
}
.CalendarMonthNavigation__action:hover {
  color: #1279a8 !important;
  text-decoration: none !important;
}

.CalendarMonth {
  width: 100vw !important;
  margin: 0 -14%vw;
}
.CalendarMonth__header {
  border-bottom: 0.1rem solid #cac9c8;
}
.CalendarMonth__header_label {
  padding: 0 2rem 1rem 2rem !important;
  background-color: transparent !important;
  font-size: 0 !important;
  line-height: 2rem;
  font-weight: 700;
  color: #000000 !important;
  text-transform: none !important;
  text-align: initial !important;
}
@media only screen and (min-width: 840px) {
  .CalendarMonth__header_label {
    font-size: 1.6rem !important;
  }
}
.CalendarMonth__header_label:before {
  display: inline-block;
  font-size: 1.4rem;
  line-height: 2rem;
  color: #000000;
  vertical-align: top;
}
@media only screen and (min-width: 840px) {
  .CalendarMonth__header_label:before {
    display: none;
  }
}
.CalendarMonth__header_label:first-child:before {
  content: "SUN";
}
.CalendarMonth__header_label:nth-child(2):before {
  content: "MON";
}
.CalendarMonth__header_label:nth-child(3):before {
  content: "TUE";
}
.CalendarMonth__header_label:nth-child(4):before {
  content: "WED";
}
.CalendarMonth__header_label:nth-child(5):before {
  content: "THU";
}
.CalendarMonth__header_label:nth-child(6):before {
  content: "FRI";
}
.CalendarMonth__header_label:last-child:before {
  content: "SAT";
}
.CalendarMonth__row {
  border-color: #cac9c8 !important;
}

.CalendarGridDay {
  border-color: #cac9c8 !important;
}
.CalendarGridDay__header {
  padding: 2rem 2rem 0 2rem !important;
  font-size: 1.6rem;
  line-height: 2rem;
  color: #cac9c8 !important;
  background-color: transparent !important;
  border-bottom: none !important;
}
.CalendarGridDay.CalendarGridDay--current-month .CalendarGridDay__header {
  color: #000000 !important;
}
.CalendarGridDay__content {
  padding: 0 2rem 2rem 2rem !important;
}
.CalendarGridDay.CalendarGridDay--current-day {
  background: #1279a8;
}
.CalendarGridDay.CalendarGridDay--current-day > .CalendarGridDay__header {
  color: #ffffff !important;
}
.CalendarGridDay.CalendarGridDay--current-day .CalendarGridDayEvent a {
  color: #ffffff !important;
}
.CalendarGridDay.CalendarGridDay--current-day .CalendarGridDayEvent a:hover {
  color: rgba(255, 255, 255, 0.5) !important;
}

.CalendarGridDayEvent {
  font-size: 1.6rem !important;
  line-height: 2rem !important;
  border-top: none !important;
  margin: 1rem 0 0 0 !important;
  padding: 0 !important;
}
.CalendarGridDayEvent a {
  color: #000000 !important;
  transition: all 0.3s ease 0s;
}
.CalendarGridDayEvent a:hover {
  text-decoration: none !important;
  color: #1279a8 !important;
}

.CalendarMonth__content + .CalendarMonthNavigation {
  display: none;
}

.hero-event {
  position: relative;
  width: 100vw;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  margin: 0 -14%vw;
  padding: 0 0 8rem 0;
}
.hero-event__content {
  width: 100%;
  padding: 8rem 14%vw 6rem 14%vw;
}
@media only screen and (min-width: 1080px) {
  .hero-event__content {
    width: 140%vw;
  }
}
.hero-event__content h4:first-child,
.hero-event__content h5 {
  transition: all 0.6s ease 0s;
}
.hero-event__content h1 {
  transition: all 0.6s ease 0.1s;
}
.hero-event__content h4,
.hero-event__content h6 {
  transition: all 0.6s ease 0.2s;
}
.hero-event__media {
  position: relative;
  width: 140%vw;
  margin: 0 0 0 56%vw;
}
@media only screen and (min-width: 1080px) {
  .hero-event__media {
    width: 56%vw;
    margin: 0;
  }
}
.hero-event__thumb {
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  mask-size: 100% 100%;
  z-index: -1;
}
.hero-event__thumb.right {
  position: relative;
  width: 100%;
  aspect-ratio: 4/5;
  mask-image: url("../assets/images/block-clipped.svg");
  transition: all 0.9s ease 0.3s;
}
.hero-event__thumb.left {
  position: absolute;
  width: calc(100% - 2rem);
  aspect-ratio: 200/214.4930316;
  top: calc(30% + 1rem);
  left: calc(-50% + 1rem);
  mask-image: url("../assets/images/block.svg");
  transition: all 0.9s ease 0.4s;
}
.hero-event__block {
  position: absolute;
  width: 100%;
  top: 30%;
  left: -50%;
  stroke: #1279a8;
  stroke-width: 0.1rem;
  stroke-dasharray: 659;
  stroke-dashoffset: 0;
  fill: transparent;
  transition: all 0.9s ease 0.6s;
  overflow: visible;
  z-index: -1;
}
.hero-event.anim:not(.in-view) h1,
.hero-event.anim:not(.in-view) h4,
.hero-event.anim:not(.in-view) h5,
.hero-event.anim:not(.in-view) h6,
.hero-event.anim:not(.in-view) .hero-event__thumb {
  transform: translateY(6rem);
  opacity: 0;
}
.hero-event.anim:not(.in-view) .hero-event__block {
  stroke-dashoffset: 659;
}

.event-excerpt {
  position: relative;
  width: calc(100% - 4rem);
  aspect-ratio: 1/1;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  align-items: flex-end;
  margin: 0 2rem 4rem 2rem;
  padding: 4rem 2rem 2rem 2rem;
  border-radius: 1rem;
  transition: all 0.9s ease 0s;
  overflow: hidden;
  z-index: 0;
}
@media only screen and (min-width: 840px) {
  .event-excerpt {
    width: calc(50% - 4rem);
  }
}
@media only screen and (min-width: 1080px) {
  .event-excerpt {
    width: calc(33.333334% - 4rem);
  }
}
.event-excerpt__thumb {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  vertical-align: top;
  transition: all 0.9s ease 0s;
  z-index: -1;
}
.event-excerpt__thumb:before {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background: rgba(0, 0, 0, 0.5);
}
.event-excerpt__content {
  width: 100%;
  display: inline-block;
  vertical-align: top;
}
.event-excerpt__content h5 {
  margin: 0;
}
.event-excerpt:hover .event-excerpt__thumb {
  scale: 1.1;
}
.event-excerpt.anim:not(.in-view) {
  transform: translateY(6rem);
  opacity: 0;
}
.event-excerpt.anim:not(.in-view) .event-excerpt__thumb {
  scale: 1.1;
}

.event-list-footer {
  width: 100%;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-between;
  margin: 0;
  padding: 0;
}
.event-list-footer .event-list-index {
  width: auto;
  display: inline-block;
  flex: 0 1 auto;
  margin: 0 0 2rem 0;
  padding: 0;
  vertical-align: top;
}
.event-list-footer .event-list-pagination {
  width: auto;
  display: inline-block;
  flex: 0 1 auto;
  margin: 0 0 2rem 0;
  padding: 0;
  vertical-align: top;
}
.event-list-footer .event-list-pagination a,
.event-list-footer .event-list-pagination span {
  display: inline-block;
  margin: 0 1rem;
  font-size: 1.6rem;
  line-height: 2rem;
  vertical-align: top;
}

.upcoming-events {
  position: relative;
  z-index: 100;
  width: 90%;
  margin: 0 auto;
  display: grid;
  grid-gap: 16px;
  grid-template-columns: 1fr;
}
@media only screen and (min-width: 1080px) {
  .upcoming-events {
    grid-template-columns: 1fr 1fr 1fr;
  }
}
.upcoming-events:after {
  content: "";
  position: absolute;
  background: #b3e053;
  height: 400px;
  width: 120%;
  left: -10%;
  z-index: -1;
  bottom: -100px;
  opacity: 0.8;
}
.upcoming-events .event-excerpt-item {
  position: relative;
  width: 100%;
  height: auto;
  max-width: 500px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: flex-start;
  margin: 0 auto;
  padding: 0 !important;
  border-radius: 1rem;
  transition: all 0.9s ease 0s;
  z-index: 0;
}
@media only screen and (min-width: 1080px) {
  .upcoming-events .event-excerpt-item {
    max-width: unset;
    margin: 0;
  }
}
.upcoming-events .event-excerpt-item:nth-child(even) .event-excerpt__image-container,
.upcoming-events .event-excerpt-item:nth-child(even) .event-excerpt__content-container,
.upcoming-events .event-excerpt-item:nth-child(even) .excerpt-title,
.upcoming-events .event-excerpt-item:nth-child(even) .excerpt-date,
.upcoming-events .event-excerpt-item:nth-child(even) p {
  background: #f79e32;
  color: black !important;
}
.upcoming-events .event-excerpt-item:nth-child(even) .event-excerpt__content-container:before {
  background-image: url("/wp-content/themes/speak/assets/icons/ui/black-arrow.svg");
}
.upcoming-events .event-excerpt-item .event-excerpt__image-container {
  background: #765ca7;
  border-radius: 11px;
  width: 100%;
}
.upcoming-events .event-excerpt-item .event-excerpt__image-container img {
  margin: 16px;
  padding: 8px;
  aspect-ratio: 3/2;
  border-radius: 11px;
  object-fit: contain;
  width: calc(100% - 32px);
  background: white;
}
.upcoming-events .event-excerpt-item .event-excerpt__content-container {
  width: 100%;
  display: flex;
  flex-direction: column;
  background: #765ca7;
  border-radius: 11px;
  padding: 20px;
  position: relative;
  flex-grow: 1;
}
.upcoming-events .event-excerpt-item .event-excerpt__content-container:before {
  transition: all 0.33s ease-in-out;
  content: "";
  height: 14px;
  width: 33px;
  position: absolute;
  right: 20px;
  bottom: 20px;
  background-image: url("/wp-content/themes/speak/assets/icons/ui/white-arrow.svg");
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
}
.upcoming-events .event-excerpt-item .event-excerpt__content-container .excerpt-date {
  margin: 0;
  padding: 0 !important;
  font-family: "Open Sans", sans-serif;
  text-transform: uppercase;
  margin-bottom: 28px !important;
  font-size: 15px !important;
  letter-spacing: 0.3px;
  line-height: 20px !important;
  color: #ffffff;
}
.upcoming-events .event-excerpt-item .event-excerpt__content-container .excerpt-title {
  font-size: 21px !important;
  line-height: 26px !important;
  color: #ffffff;
  margin: 0 !important;
  padding: 0;
}
.upcoming-events .event-excerpt-item .event-excerpt__content-container .excerpt-description {
  max-width: 80%;
}
.upcoming-events .event-excerpt-item .event-excerpt__content-container .excerpt-description h1,
.upcoming-events .event-excerpt-item .event-excerpt__content-container .excerpt-description h2,
.upcoming-events .event-excerpt-item .event-excerpt__content-container .excerpt-description h3,
.upcoming-events .event-excerpt-item .event-excerpt__content-container .excerpt-description h4,
.upcoming-events .event-excerpt-item .event-excerpt__content-container .excerpt-description h5,
.upcoming-events .event-excerpt-item .event-excerpt__content-container .excerpt-description h6 {
  margin: 0;
  font-family: "Open Sans", sans-serif;
  padding: 0;
  font-size: 15px;
  line-height: 20px;
  margin-top: 14px;
  font-weight: 500;
  text-transform: initial !important;
}
.upcoming-events .event-excerpt-item .event-excerpt__content-container .excerpt-description p {
  margin: 0;
  padding: 0;
  font-size: 15px;
  line-height: 20px;
  margin-top: 14px;
  font-weight: 500;
}
.upcoming-events .event-excerpt-item:hover {
  transform: translateY(-5px);
}
.upcoming-events .event-excerpt-item:hover .event-excerpt__content-container:before {
  transform: translateX(5px);
}
.upcoming-events .event-excerpt-item.anim:not(.in-view) {
  transform: translateY(6rem);
  opacity: 0;
}

.featured-event {
  width: 95%;
  margin: 0 auto;
  position: relative;
}
.featured-event h2 {
  font-size: 60px;
  line-height: 68px;
  padding: 0;
  margin-bottom: 20px;
  position: relative;
  z-index: 12;
}
.featured-event:before {
  content: "";
  position: absolute;
  height: 100%;
  width: 60%;
  top: 50px;
  left: -150px;
  z-index: 10;
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  opacity: 0.5;
  background-image: url("/wp-content/themes/speak/assets/images/green-crosshatch.png");
}
.featured-event .excerpt-description h1,
.featured-event .excerpt-description h2,
.featured-event .excerpt-description h3,
.featured-event .excerpt-description h4,
.featured-event .excerpt-description h5,
.featured-event .excerpt-description h6 {
  margin: 0;
  padding: 0;
  font-size: 15px;
  line-height: 20px;
  margin-top: 14px;
  font-weight: 500;
  text-transform: initial !important;
}
.featured-event .upcoming-events {
  grid-template-columns: 1fr;
  background-size: cover;
  margin-bottom: 50px;
}
@media only screen and (min-width: 1080px) {
  .featured-event .upcoming-events {
    width: 416px;
    margin-left: 10%;
  }
}
.featured-event .upcoming-events:after {
  display: none;
}

.swCalEvents {
  width: 90%;
  margin: 0 auto;
}
.swCalEvents .event-item {
  width: 100%;
  display: flex;
  margin-bottom: 60px;
  flex-direction: column;
  transition: all 0.33s ease-in-out;
}
@media only screen and (min-width: 1080px) {
  .swCalEvents .event-item {
    flex-direction: row;
    height: 228px;
  }
}
.swCalEvents .event-item:hover .learn-more {
  color: #1279a8 !important;
}
.swCalEvents .event-item:hover img {
  transform: scale(1.1);
}
.swCalEvents .event-item__image {
  width: 100%;
  border-radius: 11px;
  aspect-ratio: 4.435/2;
  height: fit-content;
  overflow: hidden;
  position: relative;
}
@media only screen and (min-width: 1080px) {
  .swCalEvents .event-item__image {
    width: 30%;
  }
}
@media only screen and (min-width: 1440px) {
  .swCalEvents .event-item__image {
    width: 25%;
  }
}
.swCalEvents .event-item__image img {
  width: 100%;
  object-fit: cover;
  border-radius: 11px;
  transition: all 0.33s ease-in-out;
}
.swCalEvents .event-item__image .excerpt__header_date {
  background: #f79e32 !important;
  height: 72px;
  width: 72px;
  position: absolute;
  z-index: 100;
  top: 10px;
  left: 10px;
  border-radius: 11px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}
.swCalEvents .event-item__image .excerpt__header_date-month {
  color: black !important;
  font-family: "Open Sans", sans-serif;
  font-size: 19px;
  margin-bottom: 12px;
  text-transform: uppercase;
  letter-spacing: 0.38px;
}
.swCalEvents .event-item__image .excerpt__header_date-date {
  color: black !important;
  font-family: "Open Sans", sans-serif;
  font-size: 25px;
  letter-spacing: 0.5px;
  margin-top: 12px;
}
.swCalEvents .event-item__content {
  width: 100%;
}
@media only screen and (min-width: 1080px) {
  .swCalEvents .event-item__content {
    width: 70%;
    padding-left: 45px;
  }
}
@media only screen and (min-width: 1440px) {
  .swCalEvents .event-item__content {
    width: 75%;
  }
}
.swCalEvents .event-item__content h3,
.swCalEvents .event-item__content h5,
.swCalEvents .event-item__content p {
  padding: 0;
}
.swCalEvents .event-item__content .excerpt-title {
  color: #1279a8 !important;
  margin-bottom: 15px;
  margin-top: 15px;
}
@media only screen and (min-width: 1080px) {
  .swCalEvents .event-item__content .excerpt-title {
    margin-top: 0;
  }
}
.swCalEvents .event-item__content .excerpt-date {
  color: black !important;
  font-size: 15px;
  font-family: "Open Sans", sans-serif;
  text-transform: uppercase;
}
.swCalEvents .event-item__content p {
  color: black !important;
  font-family: "Open Sans", sans-serif;
  font-weight: 500;
  margin-bottom: 45px !important;
}
.swCalEvents .event-item__content .learn-more {
  transition: all 0.33s ease-in-out;
  color: black !important;
  font-size: 15px;
  text-transform: uppercase;
}

.CalendarMonthFilter {
  width: 90%;
  margin: 0 auto;
  padding: 0 !important;
  margin-bottom: 60px;
}
.CalendarMonthFilter .form-group div {
  border-radius: 47px !important;
}
.CalendarMonthFilter input {
  border-radius: 47px !important;
  font-size: 18px !important;
  color: black !important;
  font-family: "Open Sans", sans-serif !important;
  text-transform: uppercase;
  font-weight: 500;
}
.CalendarMonthFilter input::placeholder {
  color: black !important;
}
.CalendarMonthFilter .CalendarMonthFilter__dateSeparator {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 40px;
  font-weight: 400;
  text-transform: uppercase;
}
.CalendarMonthFilter .CalendarMonthFilter__button {
  padding: 0 !important;
}
.CalendarMonthFilter .CalendarMonthFilter__button:before {
  display: none !important;
  background: #b3e053 !important;
}
.CalendarMonth {
  width: 90% !important;
  margin: 0 auto;
}

.CalendarMenuCenter {
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 0 auto;
  text-align: center;
  width: fit-content;
  background: #f79e32;
  border-radius: 47px;
  border-bottom: none !important;
  margin-bottom: 45px;
}
.CalendarMenuCenter a {
  font-size: 18px !important;
  font-weight: 600 !important;
  padding: 21px 48px !important;
  margin: 0 !important;
  width: 50% !important;
}
.CalendarMenuCenter a:after, .CalendarMenuCenter a:before {
  display: none !important;
}
.CalendarMenuCenter .CalendarMenu__currentItem {
  background: white !important;
  border-radius: 47px;
  border: 3px solid #f79e32 !important;
}

.swCalEvents {
  width: 90%;
  margin: 0 auto;
}
.swCalEvents .CalendarListEvent {
  width: 100%;
  display: flex;
  margin-bottom: 60px;
  flex-direction: column;
  transition: all 0.33s ease-in-out;
}
@media only screen and (min-width: 1080px) {
  .swCalEvents .CalendarListEvent {
    flex-direction: row;
    height: 228px;
  }
}
.swCalEvents .CalendarListEvent:hover .learn-more {
  color: #1279a8 !important;
}
.swCalEvents .CalendarListEvent:hover img {
  transform: scale(1.1);
}
.swCalEvents .CalendarListEvent__header {
  width: 100%;
  aspect-ratio: 16/9;
  height: fit-content;
  background: white;
  position: relative;
  align-items: flex-start;
}
@media only screen and (min-width: 1080px) {
  .swCalEvents .CalendarListEvent__header {
    width: 30%;
  }
}
@media only screen and (min-width: 1440px) {
  .swCalEvents .CalendarListEvent__header {
    width: 25%;
  }
}
.swCalEvents .CalendarListEvent__header img {
  width: 100%;
  padding: 0px;
  max-width: unset;
  object-fit: cover;
  aspect-ratio: 16/9;
  transition: all 0.33s ease-in-out;
}
.swCalEvents .CalendarListEvent__header .CalendarListEvent__header_date {
  background: #f79e32 !important;
  height: 72px;
  width: 72px;
  position: absolute;
  z-index: 100;
  top: 10px;
  left: 10px;
  border-radius: 11px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  display: none;
}
.swCalEvents .CalendarListEvent__header .CalendarListEvent__header_date-month {
  color: black !important;
  font-family: "Open Sans", sans-serif;
  font-size: 19px;
  margin-bottom: 12px;
  text-transform: uppercase;
  letter-spacing: 0.38px;
  font-weight: 600;
  line-height: 26px;
}
.swCalEvents .CalendarListEvent__header .CalendarListEvent__header_date-date {
  color: black !important;
  font-family: "Open Sans", sans-serif;
  font-size: 25px;
  letter-spacing: 0.5px;
  margin-top: 12px;
  line-height: 26px;
  font-weight: 600;
}
.swCalEvents .CalendarListEvent .CalendarListEvent__content {
  width: 100%;
  margin: 0;
  margin-top: 10px;
}
@media only screen and (min-width: 1080px) {
  .swCalEvents .CalendarListEvent .CalendarListEvent__content {
    width: 70%;
    padding-left: 45px;
  }
}
@media only screen and (min-width: 1440px) {
  .swCalEvents .CalendarListEvent .CalendarListEvent__content {
    width: 75%;
  }
}
.swCalEvents .CalendarListEvent .CalendarListEvent__content .CalendarListEvent__title {
  color: #1279a8 !important;
  margin-bottom: 15px;
  margin-top: 15px;
  font-size: 21px;
  font-family: "Comfortaa", sans-serif;
  font-weight: 800;
  letter-spacing: 0.42px;
  line-height: 28px;
}
@media only screen and (min-width: 1080px) {
  .swCalEvents .CalendarListEvent .CalendarListEvent__content .CalendarListEvent__title {
    margin-top: 0;
  }
}
.swCalEvents .CalendarListEvent .CalendarListEvent__content .CalendarListEvent__date-time {
  color: black !important;
  font-size: 15px;
  line-height: 22px !important;
  padding-bottom: 10px;
  font-family: "Open Sans", sans-serif;
  font-size: 15px;
  text-transform: uppercase;
  font-weight: bold;
  line-height: 22px;
  padding-bottom: 20px !important;
  text-transform: uppercase !important;
}
.swCalEvents .CalendarListEvent .CalendarListEvent__content .CalendarListEvent__description {
  color: black !important;
  font-family: "Open Sans", sans-serif;
  font-size: 15px;
  line-height: 22px;
  max-width: 600px;
  font-weight: 500;
  margin-bottom: 45px !important;
}
.swCalEvents .CalendarListEvent .CalendarListEvent__content .CalendarListEvent__description a {
  transition: all 0.33s ease-in-out;
  color: black !important;
  font-size: 15px;
  text-transform: uppercase;
  display: block;
  margin-top: 20px;
}
.swCalEvents .CalendarListEvent .CalendarListEvent__content .CalendarListEvent__description a:hover {
  color: #f79e32 !important;
}

.CalendarListPagination {
  display: flex !important;
  height: 30px !important;
}
.CalendarListPagination a {
  display: none;
}
.CalendarListPagination .CalendarListPager__arrow {
  display: block;
  background: #b3e053;
  height: 30px;
  width: 30px;
  position: relative;
  border-radius: 50%;
  transition: all 0.33s ease-in-out;
}
.CalendarListPagination .CalendarListPager__arrow:hover {
  background: #f79e32;
}
.CalendarListPagination .CalendarListPager__arrow:first-child {
  display: block;
}
.CalendarListPagination .CalendarListPager__arrow:first-child:before {
  content: "";
  position: absolute;
  background: url("/wp-content/themes/speak/assets/icons/ui/arrow-dark.svg");
  height: 30px;
  width: 30px;
  background-position: center;
  transform: rotate(90deg);
  background-repeat: no-repeat;
  background-size: contain;
}
.CalendarListPagination .CalendarListPager__arrow:last-child {
  display: block;
}
.CalendarListPagination .CalendarListPager__arrow:last-child:before {
  content: "";
  position: absolute;
  background: url("/wp-content/themes/speak/assets/icons/ui/arrow-dark.svg");
  height: 30px;
  width: 30px;
  background-position: center;
  transform: rotate(-90deg);
  background-repeat: no-repeat;
  background-size: contain;
}

.CalendarMonthFilter {
  width: 90%;
  margin: 0 auto;
  padding: 0 !important;
  margin-bottom: 60px;
}
.CalendarMonthFilter .form-group div {
  border-radius: 47px !important;
}
.CalendarMonthFilter input {
  border-radius: 47px !important;
  font-size: 18px !important;
  color: black !important;
  font-family: "Open Sans", sans-serif !important;
  text-transform: uppercase;
  font-weight: 500;
}
.CalendarMonthFilter input::placeholder {
  color: black !important;
}
.CalendarMonthFilter .CalendarMonthFilter__dateSeparator {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 40px;
  font-weight: 400;
  text-transform: uppercase;
}
.CalendarMonthFilter .CalendarMonthFilter__button {
  padding: 0 !important;
}
.CalendarMonthFilter .CalendarMonthFilter__button:before {
  display: none !important;
  background: #b3e053 !important;
}

.CalendarMonth {
  width: 90% !important;
  margin: 0 auto;
}

.CalendarMenuCenter {
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 0 auto;
  text-align: center;
  width: fit-content;
  background: #f79e32;
  border-radius: 47px;
  border-bottom: none !important;
  margin-bottom: 45px;
}
.CalendarMenuCenter a {
  font-size: 18px !important;
  font-weight: 600 !important;
  padding: 21px 48px !important;
  margin: 0 !important;
  width: 50% !important;
}
.CalendarMenuCenter a:after, .CalendarMenuCenter a:before {
  display: none !important;
}
.CalendarMenuCenter .CalendarMenu__currentItem {
  background: white !important;
  border-radius: 47px;
  border: 3px solid #f79e32 !important;
}

/* Home
----------------------------------------------------------------- */
.home .site-main:before {
  display: none;
}

.hero-home {
  position: relative;
  width: 100%;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  align-items: flex-end;
  margin: 0;
  padding: 0 0 100vw 0;
  height: 500px;
}
@media only screen and (min-width: 1080px) {
  .hero-home {
    height: 100vh;
    min-height: 75vw;
    padding: 0;
    overflow: hidden;
  }
}
@media only screen and (min-width: 1280px) {
  .hero-home {
    min-height: 66.666667vw;
    height: 1200px;
  }
}
@media only screen and (min-width: 1600px) {
  .hero-home {
    min-height: 100vh;
    padding: 0;
    height: 1600px;
  }
}
@media only screen and (min-width: 2000px) {
  .hero-home {
    height: 2200px;
  }
}
@media only screen and (min-width: 3000px) {
  .hero-home {
    height: 3000px;
  }
}
.hero-home:after {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  bottom: -469px;
  z-index: 400;
  left: 0px;
  background-image: url("/wp-content/themes/speak/assets/images/gate-background.svg");
  background-repeat: no-repeat;
  background-size: contain;
}
@media only screen and (min-width: 1280px) {
  .hero-home:after {
    bottom: -600px;
  }
}
@media only screen and (min-width: 1440px) {
  .hero-home:after {
    bottom: -669px;
  }
}
@media only screen and (min-width: 1600px) {
  .hero-home:after {
    bottom: -925px;
  }
}
@media only screen and (min-width: 2000px) {
  .hero-home:after {
    bottom: -1200px;
  }
}
@media only screen and (min-width: 3000px) {
  .hero-home:after {
    height: 1600px;
    bottom: -300px;
  }
}
.hero-home__content {
  width: 100%;
  display: inline-block;
  padding: 8rem 14%vw 2rem 14%vw;
  transition: all 0.9s ease 0s;
  vertical-align: top;
  z-index: 100;
  position: absolute;
  left: 0;
  padding: 0 10%;
  top: 250px;
}
@media only screen and (min-width: 1080px) {
  .hero-home__content {
    left: 80px;
    top: 150px;
    padding: 0;
  }
}
@media only screen and (min-width: 1280px) {
  .hero-home__content {
    top: 25vh;
  }
}
@media only screen and (min-width: 3000px) {
  .hero-home__content {
    top: 25vh;
  }
}
.hero-home__content .entry-title {
  font-family: "Rock Salt";
  color: white;
  padding: 0;
  text-shadow: 0px 0px 9px rgba(0, 0, 0, 0.6392156863);
  text-align: center;
  font-size: 30px;
  line-height: 25px;
  text-align: left;
}
@media only screen and (min-width: 1080px) {
  .hero-home__content .entry-title {
    font-size: 69px;
    line-height: 58px;
  }
}
@media only screen and (min-width: 3000px) {
  .hero-home__content .entry-title {
    font-size: 100px;
  }
}
.hero-home__content .entry-description {
  position: absolute;
  display: block;
  padding: 0;
  color: white;
  font-family: "Sucrose-Bold";
  text-shadow: 0px 0px 9px rgba(0, 0, 0, 0.6392156863);
  text-align: center;
  font-size: 53px;
  line-height: 43px;
}
@media only screen and (min-width: 1080px) {
  .hero-home__content .entry-description {
    text-align: left;
    font-size: 120px;
    line-height: 103px;
  }
}
@media only screen and (min-width: 3000px) {
  .hero-home__content .entry-description {
    font-size: 100px;
  }
}
.hero-home__content .fancy-button {
  border: 2px solid white;
  height: 47px;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 7px;
  background: #82c657;
  position: relative;
  overflow: hidden;
  width: 321px;
  margin-left: 0;
  transition: all 0.33s ease-in-out;
  margin-top: 100px;
}
@media only screen and (min-width: 1080px) {
  .hero-home__content .fancy-button {
    margin: unset;
    width: 271px;
    margin-top: 148px;
  }
}
@media only screen and (min-width: 3000px) {
  .hero-home__content .fancy-button {
    margin-top: 300px;
  }
}
.hero-home__content .fancy-button:hover {
  background: #b3e053;
}
.hero-home__content .fancy-button:hover a {
  color: black !important;
}
.hero-home__content .fancy-button a {
  font-size: 15px;
  position: relative;
  z-index: 1;
  letter-spacing: 0.3px;
  font-weight: 500;
  text-transform: uppercase;
}
.hero-home__media {
  position: absolute;
  aspect-ratio: 1/1;
  right: calc((14%vw + 2rem) * -1);
  background: #000000;
  transition: all 0.9s ease 0.2s;
  transform: rotate(180deg);
  pointer-events: none;
  height: 630px;
  overflow: visible;
  top: 0px;
}
@media only screen and (min-width: 1080px) {
  .hero-home {
    overflow: hidden;
    height: clamp(76rem, 126%vw, 100vh);
  }
}
.hero-home .video-embed {
  top: 0px;
  height: 750px;
  width: calc(100% + 500px);
  transform: rotate(-180deg);
  left: 17% !important;
}
@media only screen and (min-width: 1080px) {
  .hero-home .video-embed {
    position: absolute;
    top: 50%;
    height: unset;
    width: calc(100% + 1500px);
    transform: rotate(-180deg) translate(50%, 50%);
    left: 5% !important;
  }
}
@media only screen and (min-width: 1280px) {
  .hero-home .video-embed {
    height: 1600px;
    width: calc(100% + 2000px);
    left: -6% !important;
  }
}
@media only screen and (min-width: 1440px) {
  .hero-home .video-embed {
    left: -9% !important;
  }
}
@media only screen and (min-width: 1600px) {
  .hero-home .video-embed {
    width: calc(100% + 5000px);
    height: 2200px;
  }
}
@media only screen and (min-width: 2000px) {
  .hero-home .video-embed {
    width: calc(100% + 8000px);
    height: 3000px;
  }
}
@media only screen and (min-width: 3000px) {
  .hero-home .video-embed {
    width: calc(100% + 7600px);
    height: 5000px;
  }
}
.hero-home.anim:not(.in-view) .hero-home__content {
  opacity: 0;
}
.hero-home.anim:not(.in-view) .entry-description {
  transform: translateY(6rem);
  opacity: 0;
}
.hero-home.anim:not(.in-view) .hero-home__media {
  transform: rotate(180deg) translateY(-6rem);
  opacity: 0;
}

.eapps-instagram-feed {
  padding: 0 5% !important;
}
.eapps-instagram-feed .eapps-instagram-feed-posts-inner {
  width: 100% !important;
}
.eapps-instagram-feed .eapps-instagram-feed-posts-inner .eapps-instagram-feed-posts-item-image-wrapper,
.eapps-instagram-feed .eapps-instagram-feed-posts-inner .eapps-instagram-feed-posts-item-overlay {
  border-radius: 20px;
}
.eapps-instagram-feed .eapps-instagram-feed-posts-grid-load-more-container .eapps-instagram-feed-posts-grid-load-more-text {
  background: #b3e053;
  color: #000000;
  font-family: "Open Sans", sans-serif;
  text-transform: uppercase;
  font-weight: 500;
  transition: all 0.33s ease-in-out;
}
.eapps-instagram-feed .eapps-instagram-feed-posts-grid-load-more-container .eapps-instagram-feed-posts-grid-load-more-text:hover {
  background: #f79e32 !important;
}

@media (min-width: 1080px) {
  body.home .home-tabs__green .tabs__scrollable {
    display: block;
    overflow: visible;
  }
}
@media (min-width: 1080px) and (max-width: 1350px) {
  body.home .home-tabs__green .tabs__toggles:before {
    height: 100%;
  }
  body.home .home-tabs__green .tabs__toggles span {
    height: inherit;
  }
}

/* Post
----------------------------------------------------------------- */
.post-feed {
  width: 100%;
  padding: 0 14%vw 8rem 14%vw;
}
.post-feed__filters {
  width: 100%;
  padding: 0 0 2rem 0;
}
.post-feed__list {
  width: 100%;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
}
@media only screen and (min-width: 840px) {
  .post-feed__list {
    padding: 14%vw 0;
  }
  .post-feed__list .column:nth-child(odd) {
    margin: -14%vw 0 0 0;
  }
  .post-feed__list .column:nth-child(even) {
    margin: 14%vw 0 -14%vw 0;
  }
}
@media only screen and (min-width: 1080px) {
  .post-feed__list {
    padding: 0;
  }
  .post-feed__list .column:nth-child(1) {
    margin: 28%vw 0 0 0;
  }
  .post-feed__list .column:nth-child(2) {
    margin: 0 0 0 auto;
  }
  .post-feed__list .column:nth-child(3) {
    margin: -14%vw 0 0 84%vw;
  }
  .post-feed__list .column:nth-child(4) {
    margin: -28%vw 0 0 0;
  }
  .post-feed__list .column:nth-child(5) {
    margin: 28%vw 0 0 auto;
  }
  .post-feed__list .column:nth-child(6) {
    margin: -28%vw 0 0 14%vw;
  }
}
.post-feed__load-more {
  width: 100%;
  padding: 4rem 0 0 0;
  text-align: center;
}

.excerpt-post {
  width: 100%;
  margin: 0 0 2rem 0;
  transition: all 0.9s ease 0s;
}
.excerpt-post__thumb {
  width: calc(100% - 4rem);
  margin: 0 2rem 2rem 2rem;
  border-radius: 1rem;
  overflow: hidden;
}
.excerpt-post__thumb-image {
  width: 100%;
  aspect-ratio: 1/1;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  transition: all 0.9s ease 0s;
}
.excerpt-post h6 {
  margin: 0;
}
.excerpt-post:hover .excerpt-post__thumb-image {
  scale: 1.1;
}
.excerpt-post.anim:not(.in-view) {
  transform: translateY(6rem);
  opacity: 0;
}
.excerpt-post.anim:not(.in-view) .excerpt-post__thumb-image {
  scale: 1.1;
}

.page-template-page-campaign #hero-banner {
  margin-top: -400px;
}
.page-template-page-campaign #hero-banner:before {
  top: unset;
  bottom: -40px;
}
.page-template-page-campaign .site-main {
  background: url("/wp-content/themes/speak/assets/images/rainbow-crosshatch.svg");
  background-size: cover;
  background-repeat: no-repeat;
  background-position: -200px 700px;
}
@media only screen and (min-width: 1080px) {
  .page-template-page-campaign .site-main {
    background-position: 200% 200px;
    background-size: 140%;
  }
}
.page-template-page-campaign .site-main:before {
  content: "";
  height: 650px;
  width: 100%;
  position: absolute;
  background: url("/wp-content/themes/speak/assets/images/blue-leaves.svg");
  background-size: cover;
  background-position: top;
  background-repeat: no-repeat;
  left: 0%;
  top: 0px;
  z-index: 9;
}
