/* ------------- HEADER STYLES START --------------- */
.header-container .custom-links-container {
  display: inline-block;
  text-transform: uppercase;
  margin-right: 25px;
}

.header-container .custom-links-container+#schoolsbutton {
  display: inline-block;
}

.header-container .custom-links-container .dynamicLink {
  color: var(--nav-color);
  text-decoration: none;
}

/* ------------- HEADER STYLES END --------------- */
/* ------------- GENERAL STYLES START --------------- */
.custom-section {
  padding: 40px 32px;
}

@media only screen and (max-width: 599px) {
  .custom-section {
    padding: 40px 20px;
  }
}

.has-parallax-bg {
  position: relative;
}

.has-parallax-bg:after,
.has-parallax-bg:before {
  content: "";
  display: block;
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: -1;
}

.has-parallax-bg:before {
  background-image: var(--current-section-bg-image);
  background-position: center;
  background-attachment: fixed;
  background-size: cover;
  background-repeat: no-repeat;
}

.has-parallax-bg:after {
  background-color: var(--current-section-bg-color);
  opacity: var(--bg-opacity);
}

#home .only-in-cms {
  display: none !important;
}

.custom-section.hide-as-default {
  display: none;
}

.custom-section.is-not-in-cms {
  display: block;
}

.custom-section.style-light,
.custom-section.style-sydney {

  .see-all-button,
  .see-all-button-custom a {
    border-radius: 4px;
    min-width: 116px;
    padding: 12px;
    text-align: center;
    cursor: pointer;
    text-decoration: none;
    display: inline-block;
    background-color: var(--buttonBgColor, var(--primary-color));
    color: var(--buttonTextColor, #fff);
  }
}

/* ------------- GENERAL STYLES END --------------- */
/* ------------- STYLE LIGHT START --------------- */
.style-light,
.style-sydney {
  .see-all-top {
    display: flex;
    align-items: start;
    justify-content: space-between;
    width: 100%;
  }
}

@media only screen and (max-width: 600px) {

  .style-light,
  .style-sydney {

    .see-all-button,
    .see-all-button-custom a {
      display: none;
    }
  }
}

.style-light,
.style-sydney {
  .header-slot-container {
    text-transform: uppercase;
    font-weight: 400;
    font-size: 32px;
    margin-bottom: 1em;
    display: inline-flex;
    align-items: center;

    &.center-title {
      margin-inline: auto;

      &::after {
        display: none;
      }
    }
  }
}

.style-light {
  .header-slot-container::after {
    content: "";
    display: inline-block;
    width: 56px;
    height: 2px;
    background-color: var(--header-accent-color, var(--section-text-color, currentColor));
    margin: 0 24px;
  }
}

.style-light,
.style-sydney {

  .header-slot-container h1,
  .header-slot-container h2,
  .header-slot-container h3,
  .header-slot-container h4,
  .header-slot-container h5,
  .header-slot-container h6 {
    display: inline-block;
    font-size: 1em;
    font-weight: inherit;
    text-align: left;
  }

  .see-all-bottom {
    display: none;
    margin-top: 1.5em;
    text-align: center;
    justify-content: center;
  }
}


@media only screen and (max-width: 600px) {

  .style-light,
  .style-sydney {
    .see-all-bottom {
      display: block;
    }
  }
}

.style-sydney {
  .header-slot-container {
    font-family: Playfair Display, serif;
    font-size: 42px;
    text-transform: inherit;
  }
}

/* ------------- STYLE LIGHT END --------------- */
/* ------------- STYLE MONTERREY START --------------- */
.style-monterrey .see-all-top {
  display: flex;
  align-items: start;
  justify-content: space-between;
  width: 100%;
}

.style-monterrey .see-all-top .see-all-button,
.style-monterrey .see-all-top .see-all-button-custom a {
  margin-left: auto;
}

@media only screen and (max-width: 600px) {

  .style-monterrey .see-all-top .see-all-button,
  .style-monterrey .see-all-top .see-all-button-custom a {
    display: none;
  }
}

.style-monterrey .see-all-button,
.style-monterrey .see-all-button-custom a {
  display: inline-block;
  color: currentColor;
  text-decoration: none;
  font-size: 18px;
  font-weight: 700;
  padding: 14px 56px;
  border: 2px solid currentColor;
}

.style-monterrey .header-slot-container {
  text-transform: uppercase;
  font-weight: 400;
  font-size: 48px;
  margin-bottom: 1em;
  display: inline-flex;
  align-items: center;
  flex-shrink: 1;

  &.center-title {
    margin-inline: auto;

    &::before,
    &::after {
      display: none;
    }
  }
}

@media only screen and (max-width: 960px) {
  .style-monterrey .header-slot-container {
    overflow: hidden;
    font-size: 32px;
  }
}

.style-monterrey .header-slot-container:before {
  content: "";
  width: 48px;
  height: 2px;
  background-color: currentColor;
  transform: translate(-32px);
}

@media only screen and (max-width: 960px) {
  .style-monterrey .header-slot-container:before {
    display: none;
  }
}

.style-monterrey .header-slot-container:after {
  content: "";
  width: 149px;
  height: 2px;
  background-color: currentColor;
  transform: translate(32px);
}

@media only screen and (max-width: 767px) {
  .style-monterrey .header-slot-container:after {
    width: 100px;
  }
}

.style-monterrey .header-slot-container h1,
.style-monterrey .header-slot-container h2,
.style-monterrey .header-slot-container h3,
.style-monterrey .header-slot-container h4,
.style-monterrey .header-slot-container h5,
.style-monterrey .header-slot-container h6 {
  display: inline-block;
  font-size: 1em;
  font-weight: 900;
}

.style-monterrey .header-slot-container h1 .header-top,
.style-monterrey .header-slot-container h2 .header-top,
.style-monterrey .header-slot-container h3 .header-top,
.style-monterrey .header-slot-container h4 .header-top,
.style-monterrey .header-slot-container h5 .header-top,
.style-monterrey .header-slot-container h6 .header-top {
  font-size: 0.5em;
  display: block;
}

.style-monterrey .header-slot-container h1 .header-bottom,
.style-monterrey .header-slot-container h2 .header-bottom,
.style-monterrey .header-slot-container h3 .header-bottom,
.style-monterrey .header-slot-container h4 .header-bottom,
.style-monterrey .header-slot-container h5 .header-bottom,
.style-monterrey .header-slot-container h6 .header-bottom {
  display: block;
}

.style-monterrey .see-all-bottom {
  display: none;
  margin-top: 1.5em;
  text-align: center;
  justify-content: center;
}

@media only screen and (max-width: 600px) {
  .style-monterrey .see-all-bottom {
    display: block;
  }
}

/* ------------- STYLE MONTERREY END --------------- */
/* ------------- STYLE BOLD START --------------- */
.style-bold .custom-header-slot-container {
  text-transform: uppercase;
  font-weight: 900;
  font-size: 32px;
  margin-bottom: 1em;
}

.style-bold .custom-header-slot-container h1,
.style-bold .custom-header-slot-container h2,
.style-bold .custom-header-slot-container h3,
.style-bold .custom-header-slot-container h4,
.style-bold .custom-header-slot-container h5,
.style-bold .custom-header-slot-container h6 {
  font-size: 1em;
  font-weight: inherit;
}

.style-bold .header-slot-container {
  font-size: 32px;
  line-height: 1.25;
  border-right: 4px solid currentColor;
  padding-right: 24px;
  text-transform: uppercase;
  z-index: 1;
  position: relative;
  font-weight: 900;

  &.center-title {
    margin-inline: auto;
    padding-right: 0;
    border-right: none;
  }
}

@media only screen and (max-width: 767px) {
  .style-bold .header-slot-container {
    width: 100%;
    border-right: none;
  }
}

.style-bold .header-slot-container h1,
.style-bold .header-slot-container h2,
.style-bold .header-slot-container h3,
.style-bold .header-slot-container h4,
.style-bold .header-slot-container h5,
.style-bold .header-slot-container h6 {
  font-size: 1em;
  font-weight: inherit;
}

.style-bold .see-all-top {
  display: flex;
  align-items: center;
  margin-bottom: 32px;
}

@media only screen and (max-width: 767px) {
  .style-bold .see-all-top {
    flex-wrap: wrap;
  }
}

.style-bold .see-all-top .see-all-button {
  margin-left: 1.5em;
  text-decoration: none;
  color: inherit;
  font-weight: 500;
  margin-top: 0;
}

.style-bold .see-all-bottom {
  display: none;
  margin-top: 1.5em;
  text-align: center;
  justify-content: center;

  .see-all-button {
    text-decoration: none;
    color: inherit;
    font-weight: 500;
    margin-top: 0;
  }
}

@media only screen and (max-width: 767px) {
  .style-bold .see-all-bottom {
    display: block;
  }

  .style-bold:has(.see-all-bottom) .see-all-top .see-all-button {
    display: none;
  }
}

/* ------------- STYLE BOLD END --------------- */
/* ------------- STYLE PURPLE START --------------- */
.style-purple .header-slot-container {
  font-size: 112px;
  text-transform: uppercase;
  line-height: 1.13;
  font-weight: 900;
  margin-bottom: 0.25em;
  display: flex;
  align-items: flex-end;

  &.center-title {
    &::after {
      display: none;
    }

    h2 {
      padding-right: 0;
      margin-inline: auto;
    }
  }
}

@media only screen and (max-width: 960px) {
  .style-purple .header-slot-container {
    font-size: 64px;
  }
}

@media only screen and (max-width: 600px) {
  .style-purple .header-slot-container {
    font-size: 32px;
  }
}

.style-purple .header-slot-container h1,
.style-purple .header-slot-container h2,
.style-purple .header-slot-container h3,
.style-purple .header-slot-container h4,
.style-purple .header-slot-container h5,
.style-purple .header-slot-container h6 {
  font-size: 1em;
  font-weight: inherit;
  flex-shrink: 0;
  padding-right: 30px;
}

.style-purple .header-slot-container:after {
  content: "";
  display: block;
  width: 100%;
  height: 25px;
  right: 0;
  bottom: 0;
  background-image: radial-gradient(circle, var(--dots-color, var(--primary-color)) 1px, transparent 1px);
  background-size: 8px 8px;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  margin-bottom: 20px;
}

@media only screen and (max-width: 960px) {
  .style-purple .header-slot-container:after {
    margin-bottom: 13px;
  }
}

@media only screen and (max-width: 600px) {
  .style-purple .header-slot-container:after {
    margin-bottom: 2px;
  }
}

.style-purple .see-all-top {
  /* the button should only be in the bottom  for style purple*/
}

.style-purple .see-all-top .see-all-button {
  display: none;
}

.style-purple .see-all-bottom {
  text-align: right;
}

.style-purple .see-all-bottom .see-all-button,
.style-purple .see-all-bottom .see-all-button-custom a {
  display: inline-block;
  font-weight: 700;
  font-size: 12px;
  line-height: 1.2;
  padding: 16px 36px;
  border-radius: 50px;
  min-width: 120px;
  text-align: center;
  text-transform: uppercase;
  text-decoration: none;
  cursor: pointer;
  color: var(--button-text-color, #fff);
  background-color: var(--button-bg-color, var(--primary-color));
  margin-left: auto;
  margin-top: 1em;
}

/* ------------- STYLE PURPLE END --------------- */
/* ------------- SWIPER DEFAULTS START --------------- */
.custom-slider-element {
  position: relative;
  box-sizing: border-box;
}

.custom-swiper-controls {
  display: none;
  position: relative;
  z-index: 2;
  justify-content: space-between;
  margin-top: 2em;
}

@media only screen and (max-width: 600px) {
  .custom-swiper-controls {
    flex-wrap: wrap;
  }
}

.swiper-initialized~.custom-swiper-controls {
  display: flex;
}

.custom-swiper-pagination {
  display: inline-flex;
  justify-content: flex-end;
}

@media only screen and (max-width: 600px) {
  .custom-swiper-pagination {
    width: 100%;
    justify-content: center;
    order: 0;
  }
}

.custom-swiper-pagination .swiper-pagination-bullet {
  padding: 0;
  border: none;
  background-color: transparent;
  min-width: 35px;
  height: 30px;
  margin-right: 4px;
  opacity: 0.2;
  display: inline-flex;
  align-items: flex-end;
}

@media only screen and (max-width: 600px) {
  .custom-swiper-pagination .swiper-pagination-bullet {
    min-width: 22px;
    align-items: flex-start;
  }
}

.custom-swiper-pagination .swiper-pagination-bullet:after {
  content: "";
  display: block;
  width: 100%;
  height: 2px;
  background-color: currentColor;
  margin-bottom: 10px;
}

.custom-swiper-pagination .swiper-pagination-bullet-active {
  opacity: 1;
}

.custom-swiper-navigation {
  display: flex;

  &:has(.custom-swiper-prev.swiper-button-disabled):has(.custom-swiper-next.swiper-button-disabled) {
    display: none !important;
  }
}

@media only screen and (max-width: 600px) {
  .custom-swiper-navigation {
    order: 1;
    margin-top: 1.5em;
    width: 100%;
    text-align: center;
    justify-content: center;
  }
}

.custom-swiper-navigation .custom-swiper-prev,
.custom-swiper-navigation .custom-swiper-next {
  cursor: pointer;
  width: 40px;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 6px;
  margin-left: 5px;
  margin-right: 5px;
}

.custom-swiper-navigation button.custom-swiper-prev,
.custom-swiper-navigation button.custom-swiper-next {
  background-color: transparent;
  color: inherit;
  border: none;
  box-shadow: none;
}

.custom-swiper-navigation .custom-swiper-prev.swiper-button-disabled,
.custom-swiper-navigation .custom-swiper-next.swiper-button-disabled {
  opacity: 0.25;
  pointer-events: none;
  cursor: default;
}

.custom-swiper-navigation .custom-swiper-prev:after,
.custom-swiper-navigation .custom-swiper-next:after {
  content: "";
  width: 1em;
  height: 1em;
  border: solid currentColor;
  border-width: 0 3px 3px 0;
  display: inline-block;
  padding: 1em;
  z-index: 2;
}

.custom-swiper-navigation .custom-swiper-prev:after {
  transform: rotate(135deg);
  -webkit-transform: rotate(135deg);
}

.custom-swiper-navigation .custom-swiper-next:after {
  transform: rotate(-45deg);
  -webkit-transform: rotate(-45deg);
}

.custom-swiper-navigation .custom-swiper-prev-2,
.custom-swiper-navigation .custom-swiper-next-2 {
  cursor: pointer;
  display: block;
  width: 30px;
  height: 30px;
  background-color: currentColor;
  -webkit-mask-size: 60%;
  mask-repeat: no-repeat;
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg clip-rule='evenodd' fill-rule='evenodd' stroke-linejoin='round' stroke-miterlimit='2' viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='m9.474 5.209s-4.501 4.505-6.254 6.259c-.147.146-.22.338-.22.53s.073.384.22.53c1.752 1.754 6.252 6.257 6.252 6.257.145.145.336.217.527.217.191-.001.383-.074.53-.221.293-.293.294-.766.004-1.057l-4.976-4.976h14.692c.414 0 .75-.336.75-.75s-.336-.75-.75-.75h-14.692l4.978-4.979c.289-.289.287-.761-.006-1.054-.147-.147-.339-.221-.53-.221-.191-.001-.38.071-.525.215z' fill-rule='nonzero'/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg clip-rule='evenodd' fill-rule='evenodd' stroke-linejoin='round' stroke-miterlimit='2' viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='m9.474 5.209s-4.501 4.505-6.254 6.259c-.147.146-.22.338-.22.53s.073.384.22.53c1.752 1.754 6.252 6.257 6.252 6.257.145.145.336.217.527.217.191-.001.383-.074.53-.221.293-.293.294-.766.004-1.057l-4.976-4.976h14.692c.414 0 .75-.336.75-.75s-.336-.75-.75-.75h-14.692l4.978-4.979c.289-.289.287-.761-.006-1.054-.147-.147-.339-.221-.53-.221-.191-.001-.38.071-.525.215z' fill-rule='nonzero'/%3E%3C/svg%3E");
  mask-size: 80%;
  mask-position: center;
}

.custom-swiper-navigation .custom-swiper-next-2 {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg clip-rule='evenodd' fill-rule='evenodd' stroke-linejoin='round' stroke-miterlimit='2' viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='m14.523 18.787s4.501-4.505 6.255-6.26c.146-.146.219-.338.219-.53s-.073-.383-.219-.53c-1.753-1.754-6.255-6.258-6.255-6.258-.144-.145-.334-.217-.524-.217-.193 0-.385.074-.532.221-.293.292-.295.766-.004 1.056l4.978 4.978h-14.692c-.414 0-.75.336-.75.75s.336.75.75.75h14.692l-4.979 4.979c-.289.289-.286.762.006 1.054.148.148.341.222.533.222.19 0 .378-.072.522-.215z' fill-rule='nonzero'/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg clip-rule='evenodd' fill-rule='evenodd' stroke-linejoin='round' stroke-miterlimit='2' viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='m14.523 18.787s4.501-4.505 6.255-6.26c.146-.146.219-.338.219-.53s-.073-.383-.219-.53c-1.753-1.754-6.255-6.258-6.255-6.258-.144-.145-.334-.217-.524-.217-.193 0-.385.074-.532.221-.293.292-.295.766-.004 1.056l4.978 4.978h-14.692c-.414 0-.75.336-.75.75s.336.75.75.75h14.692l-4.979 4.979c-.289.289-.286.762.006 1.054.148.148.341.222.533.222.19 0 .378-.072.522-.215z' fill-rule='nonzero'/%3E%3C/svg%3E");
  margin-left: 5px;
}

.custom-swiper-navigation .custom-swiper-prev-3,
.custom-swiper-navigation .custom-swiper-next-3 {
  cursor: pointer;
  display: block;
  width: 36px;
  height: 36px;
  background-color: currentColor;
  -webkit-mask-size: contain;
  mask-size: contain;
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg width='24' height='24' xmlns='http://www.w3.org/2000/svg' fill-rule='evenodd' clip-rule='evenodd'%3E%3Cpath d='M12 0c6.623 0 12 5.377 12 12s-5.377 12-12 12-12-5.377-12-12 5.377-12 12-12zm0 1c6.071 0 11 4.929 11 11s-4.929 11-11 11-11-4.929-11-11 4.929-11 11-11zm-4.828 11.5l4.608 3.763-.679.737-6.101-5 6.112-5 .666.753-4.604 3.747h11.826v1h-11.828z'/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg width='24' height='24' xmlns='http://www.w3.org/2000/svg' fill-rule='evenodd' clip-rule='evenodd'%3E%3Cpath d='M12 0c6.623 0 12 5.377 12 12s-5.377 12-12 12-12-5.377-12-12 5.377-12 12-12zm0 1c6.071 0 11 4.929 11 11s-4.929 11-11 11-11-4.929-11-11 4.929-11 11-11zm-4.828 11.5l4.608 3.763-.679.737-6.101-5 6.112-5 .666.753-4.604 3.747h11.826v1h-11.828z'/%3E%3C/svg%3E");
  mask-size: 75%;
  mask-position: center;
  mask-repeat: no-repeat;
}

.custom-swiper-navigation .custom-swiper-next-3 {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg width='24' height='24' xmlns='http://www.w3.org/2000/svg' fill-rule='evenodd' clip-rule='evenodd'%3E%3Cpath d='M12 0c-6.623 0-12 5.377-12 12s5.377 12 12 12 12-5.377 12-12-5.377-12-12-12zm0 1c-6.071 0-11 4.929-11 11s4.929 11 11 11 11-4.929 11-11-4.929-11-11-11zm4.828 11.5l-4.608 3.763.679.737 6.101-5-6.112-5-.666.753 4.604 3.747h-11.826v1h11.828z'/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg width='24' height='24' xmlns='http://www.w3.org/2000/svg' fill-rule='evenodd' clip-rule='evenodd'%3E%3Cpath d='M12 0c-6.623 0-12 5.377-12 12s5.377 12 12 12 12-5.377 12-12-5.377-12-12-12zm0 1c-6.071 0-11 4.929-11 11s4.929 11 11 11 11-4.929 11-11-4.929-11-11-11zm4.828 11.5l-4.608 3.763.679.737 6.101-5-6.112-5-.666.753 4.604 3.747h-11.826v1h11.828z'/%3E%3C/svg%3E");
  margin-left: 5px;
}

.custom-swiper-navigation .custom-swiper-prev-4,
.custom-swiper-navigation .custom-swiper-next-4 {
  cursor: pointer;
  display: block;
  width: 36px;
  height: 36px;
  background-color: currentColor;
  -webkit-mask-size: contain;
  mask-size: contain;
  -webkit-mask-image: url('data:image/svg+xml,<svg width="24" height="24" xmlns="http://www.w3.org/2000/svg" fill-rule="evenodd" clip-rule="evenodd"><path d="M12 0c6.623 0 12 5.377 12 12s-5.377 12-12 12-12-5.377-12-12 5.377-12 12-12zm0 1c6.071 0 11 4.929 11 11s-4.929 11-11 11-11-4.929-11-11 4.929-11 11-11zm3 5.753l-6.44 5.247 6.44 5.263-.678.737-7.322-6 7.335-6 .665.753z"/></svg>');
  mask-image: url('data:image/svg+xml,<svg width="24" height="24" xmlns="http://www.w3.org/2000/svg" fill-rule="evenodd" clip-rule="evenodd"><path d="M12 0c6.623 0 12 5.377 12 12s-5.377 12-12 12-12-5.377-12-12 5.377-12 12-12zm0 1c6.071 0 11 4.929 11 11s-4.929 11-11 11-11-4.929-11-11 4.929-11 11-11zm3 5.753l-6.44 5.247 6.44 5.263-.678.737-7.322-6 7.335-6 .665.753z"/></svg>');
  mask-size: 75%;
  mask-position: center;
  mask-repeat: no-repeat;
}

.custom-swiper-navigation .custom-swiper-next-4 {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg width='24' height='24' xmlns='http://www.w3.org/2000/svg' fill-rule='evenodd' clip-rule='evenodd'%3E%3Cpath d='M12 0c6.623 0 12 5.377 12 12s-5.377 12-12 12-12-5.377-12-12 5.377-12 12-12zm0 1c6.071 0 11 4.929 11 11s-4.929 11-11 11-11-4.929-11-11 4.929-11 11-11zm-3 5.753l6.44 5.247-6.44 5.263.678.737 7.322-6-7.335-6-.665.753z'/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg width='24' height='24' xmlns='http://www.w3.org/2000/svg' fill-rule='evenodd' clip-rule='evenodd'%3E%3Cpath d='M12 0c6.623 0 12 5.377 12 12s-5.377 12-12 12-12-5.377-12-12 5.377-12 12-12zm0 1c6.071 0 11 4.929 11 11s-4.929 11-11 11-11-4.929-11-11 4.929-11 11-11zm-3 5.753l6.44 5.247-6.44 5.263.678.737 7.322-6-7.335-6-.665.753z'/%3E%3C/svg%3E");
}

.custom-swiper-navigation .custom-swiper-prev-5,
.custom-swiper-navigation .custom-swiper-next-5 {
  width: 40px;
  height: 40px;
  font-size: 4px;
  cursor: pointer;
  background-color: transparent;
  padding: 0;
  border: 0;
  margin: 0;
  color: var(--arrow-style-5-color, #fff);
  background-color: var(--arrow-style-5-bg-color, #000);
  border: 1px solid var(--arrow-style-5-border-color, var(--arrow-style-5-bg-color, #000));
  border-radius: 0;
  transition: all 0.35s ease-in-out;
}

.custom-swiper-navigation .custom-swiper-prev-5:after,
.custom-swiper-navigation .custom-swiper-next-5:after {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background-color: currentColor;
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg data-v-766a4ad9='' width='15' height='12' viewBox='0 0 15 12' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath data-v-766a4ad9='' d='M1 6L14 6M1 6L5.78947 11M1 6L5.78947 0.999999' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round'%3E%3C/path%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg data-v-766a4ad9='' width='15' height='12' viewBox='0 0 15 12' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath data-v-766a4ad9='' d='M1 6L14 6M1 6L5.78947 11M1 6L5.78947 0.999999' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round'%3E%3C/path%3E%3C/svg%3E");
  -webkit-mask-repeat: no-repeat no-repeat;
  mask-repeat: no-repeat no-repeat;
  -webkit-mask-position: center center;
  mask-position: center center;
  -webkit-mask-size: 42%;
  mask-size: 42%;
  transform: none;
  transition: background-color 0.35s ease-in-out;
}

.custom-swiper-navigation .custom-swiper-next-5:after {
  transform: rotate(180deg);
}

.custom-swiper-play-pause-btn {
  font-size: var(--control-buttons-size, 52px);
  background-color: var(--control-button-bg-color, transparent);
  width: 1em;
  height: 1em;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: inherit;
  border: none;
}

.custom-swiper-play-pause-btn .play-pause {
  font-size: inherit;
  color: inherit;
  border: 0;
  background: transparent;
  box-sizing: border-box;
  width: 0;
  height: 0.4em;
  border-color: transparent transparent transparent currentColor;
  transition: 400ms all ease;
  cursor: pointer;
  border-style: solid;
  border-width: 0.2em 0 0.2em 0.4em;
  position: relative;
  right: -0.05em;
}

.custom-swiper-play-pause-btn.is-playing .play-pause {
  border-style: double;
  border-width: 0px 0 0px 0.3em;
  right: -0.01em;
}

.custom-swiper-play-pause-btn .play-pause:hover {
  border-color: transparent transparent transparent currentColor;
}

/* ------------- SWIPER DEFAULTS END --------------- */
/* ------------- ACCORDION START --------------- */
.accordion-item {
  border-bottom: 1px solid #efefef;
}

.accordion-trigger {
  font-size: 1.1em;
  display: flex;
  justify-content: space-between;
  width: 100%;
  background-color: unset;
  border: unset;
  font-weight: 500;
  padding-left: 0;
  padding-right: 0;
  padding-top: 0.85em;
  padding-bottom: 0.85em;
  cursor: pointer;
}

.accordion-trigger:after {
  content: "";
  display: block;
  width: 0.85em;
  height: 0.85em;
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg width='24' height='24' xmlns='http://www.w3.org/2000/svg' fill-rule='evenodd' clip-rule='evenodd'%3E%3Cpath d='M11 11v-11h1v11h11v1h-11v11h-1v-11h-11v-1h11z'/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg width='24' height='24' xmlns='http://www.w3.org/2000/svg' fill-rule='evenodd' clip-rule='evenodd'%3E%3Cpath d='M11 11v-11h1v11h11v1h-11v11h-1v-11h-11v-1h11z'/%3E%3C/svg%3E");
  -webkit-mask-size: contain;
  mask-size: contain;
  background-color: currentColor;
  transition: all 0.25s linear;
}

.accordion-trigger[aria-expanded=true]:after {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg width='24' height='24' xmlns='http://www.w3.org/2000/svg' fill-rule='evenodd' clip-rule='evenodd'%3E%3Cpath d='M0 12v1h23v-1h-23z'/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg width='24' height='24' xmlns='http://www.w3.org/2000/svg' fill-rule='evenodd' clip-rule='evenodd'%3E%3Cpath d='M0 12v1h23v-1h-23z'/%3E%3C/svg%3E");
}

/* ------------- ACCORDION END --------------- */
#cms-footer {
  position: relative;
  isolation: isolate;
}

#cms-footer::after {
  position: absolute;
  inset: 0;
  z-index: -1;
  background-image: var(--footer-background-image);
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  content: no-close-quote;
  opacity: var(--footer-image-opacity);
}

/* ------------- Custom Buttons in Events page  --------------- */
.eventsCustomButtons {
  box-sizing: border-box;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  padding: 15px 20px;
  margin-top: 10px;
  gap: 6px;
  flex-wrap: wrap;

  a {
    box-sizing: border-box;
    font-size: 16px;
    line-height: 1.3;
    background-color: var(--custom-event-button-bg-color, #F2F2F2);
    color: var(--custom-event-button-link-color, var(--primary-color));
    text-decoration: none;
    border: 1px solid var(--custom-event-button-border-color, var(--custom-event-button-link-color, var(--primary-color)));
    padding: .2em 1.25em;
    min-height: 44px;
    border-radius: 1.5em;
    transition: all .35s ease-in-out;
    text-align: center;
    display: inline-flex;
    align-items: center;
    justify-content: center;

    &:hover {
      background-color: var(--custom-event-button-hover-bg-color, var(--primary-color));
      color: var(--custom-event-button-hover-link-color, var(--primary-color-contrast));
    }

    &.custom-button-size-large {
      font-weight: 700;
      font-size: 18px;
    }
  }
}

/* END */
/* -------------  Hide images on CMS pages based on screen resolution   --------------- */
@media only screen and (max-width: 1024px) {

  #page .block:has(img[alt~="only-desktop"]),
  #page .image-container:has(img[alt~="only-desktop"]),
  #page .panel-content-image:has(img[alt~="only-desktop"]) {
    display: none;
  }
}

@media only screen and (min-width: 1025px) {

  #page .block:has(img[alt~="only-tablet-mobile"]),
  #page .block:has(img[alt~="only-tablet"]),
  #page .image-container:has(img[alt~="only-tablet-mobile"]),
  #page .image-container:has(img[alt~="only-tablet"]),
  #page .panel-content-image:has(img[alt~="only-tablet-mobile"]),
  #page .panel-content-image:has(img[alt~="only-tablet"]) {
    display: none;
  }
}

@media only screen and (min-width: 601px) {

  #page .block:has(img[alt~="only-mobile"]),
  #page .image-container:has(img[alt~="only-mobile"]),
  #page .panel-content-image:has(img[alt~="only-mobile"]) {
    display: none;
  }
}

@media only screen and (max-width: 600px) {

  #page .block:has(img[alt~="only-tablet"]),
  #page .block:has(img[alt~="only-desktop-tablet"]),
  #page .image-container:has(img[alt~="only-tablet"]),
  #page .image-container:has(img[alt~="only-desktop-tablet"]),
  #page .panel-content-image:has(img[alt~="only-tablet"]),
  #page .panel-content-image:has(img[alt~="only-desktop-tablet"]) {
    display: none;
  }
}

/* END */

/* START Alert banner - The image will pick up the same alignment as the text */
#app .cms-alert-modal:has(.body-content p[style="text-align: center"]) {
  .image {
    justify-content: center;
  }
}

#app .cms-alert-modal:has(.body-content p[style="text-align: left"]) {
  .image {
    justify-content: flex-start;
  }
}

#app .cms-alert-modal:has(.body-content p[style="text-align: right"]) {
  .image {
    justify-content: flex-end;
  }
}

/* END Alert banner - The image will pick up the same alignment as the text */


/* START - Styling the District Button that is added in the header via JS */

.custom-header-btn {
  text-transform: uppercase;
  color: inherit;
  text-decoration: none;
  letter-spacing: 1px;
  margin-right: 1em;
  margin-left: .5em;
  color: var(--nav-color);
  display: inline-flex;
  align-items: center;
}

/* HEADER V1 */
#cms-header #h1:has(.custom-header-btn) {
  .right-left-menu {
    align-items: center;

    .custom-header-btn {
      text-transform: uppercase;

      @media screen and (max-width: 599px) {
        margin-bottom: 0.5em;
      }
    }
  }
}

/* HEADER V2 */
#cms-header #h2:has(.custom-header-btn) {
  .right-mobile {

    .right-right-menu {
      .custom-header-btn {
        margin-right: unset;
      }
    }
  }
}

/* HEADER V3 */
#cms-header #h3:has(.custom-header-btn) {
  .custom-header-btn {
    text-transform: unset;
    letter-spacing: .5px;
    color: var(--utility-link-color);
  }

  .mobile-header {
    padding-top: 10px;
    padding-bottom: 10px;

    .logo {
      margin-bottom: 0;
    }

    .school-info {
      padding-bottom: 0;
    }

    .right-icon {
      display: flex;
      align-items: center;
    }
  }
}

/* HEADER V4 */
#cms-header .h4:has(.custom-header-btn) {
  .top-header {
    .menu {
      .custom-header-btn {
        font-size: 14px;
        text-transform: unset;
        letter-spacing: .5px;
        color: var(--menu-heading-line-color);
      }
    }
  }

  .mobile-header {
    padding-top: 10px;
    padding-bottom: 10px;

    .logo {
      margin-bottom: 0;
    }

    .school-info {
      padding-bottom: 0;
    }

    .right-icon {
      display: flex;
      align-items: center;
    }
  }
}

/* HEADER V5 */
#cms-header .h5:has(.custom-header-btn) {

  .right-right-menu {
    align-items: center;

    .custom-header-btn {
      text-transform: unset;
      color: var(--nav-color);
    }
  }

  .mobile-header {
    padding-top: 0;

    .logo,
    .school-info {
      margin-bottom: 0;
      padding-bottom: 0;
    }

    .school-info {
      margin-left: 5px;
    }

    .main-content {
      width: 100%;
      display: flex;
      flex-direction: row;
      justify-content: space-between;
      padding: 15px 20px;
      box-sizing: border-box;

      a.mobile {
        margin-right: auto;
      }
    }

    .custom-header-btn {
      display: block;
      padding-top: 0.5em;
      padding-bottom: .5em;
      margin-left: auto;
      text-transform: unset;
      margin-right: unset;
    }
  }
}

/* HEADER V6 */
#cms-header .h6:has(.custom-header-btn) {
  .header-nav-wrapper {
    .custom-header-btn {
      font-size: 14px;
      margin-right: unset;
    }
  }

  .mobile-header-top {
    .org-banner-wrapper {
      justify-content: space-between;
      padding: 15px 20px;

      .school-info {
        margin-right: auto;

        .name {
          text-align: left;
        }
      }

      .custom-header-btn {
        margin-right: unset;
        text-transform: unset;
        letter-spacing: unset;
      }
    }
  }
}

/* HEADER V7 */
#cms-header .h7:has(.custom-header-btn) {

  .custom-header-btn {
    padding-right: .5em;
  }

  .mobile-header {
    .custom-header-btn {
      margin-right: unset;
      padding-right: unset;
    }
  }
}

/* HEADER V8 */
#cms-header .h8:has(.custom-header-btn) {

  .custom-header-btn {
    padding-right: .5em;
  }

  .mobile-header {
    .custom-header-btn {
      margin-right: unset;
      padding-right: unset;
    }
  }
}

/* END - Styling the District Button that is added in the header via JS */