/****************
 * Fonts
 ****************/
/****************
 * Colors
 ****************/
/****************
 * Grid Settings
 ****************/
/**************
 * Buttons
 **************/
/****************
 * Blocks
 ****************/
.block-program-overview {
  position: relative;
  background: #edeef7;
  overflow: hidden;
}
.block-program-overview + section.block-background-image-content {
  margin-top: -5rem;
}
.block-program-overview .slick-slider .slick-track {
  display: flex;
}
.block-program-overview .slick-slider .slick-track .slick-slide {
  height: auto;
}
.block-program-overview .slick-slider .slick-arrow {
  width: 1.875rem;
  height: 1.875rem;
  top: unset;
  bottom: -0.1875rem;
  background: #b7db00;
}
@media (min-width: 768px) {
  .block-program-overview .slick-slider .slick-arrow {
    bottom: 0;
  }
}
.block-program-overview .slick-slider .slick-arrow.slick-next {
  right: calc(50% - 5.625rem);
  transform: translateX(-50%);
}
.block-program-overview .slick-slider .slick-arrow.slick-next:after {
  font-size: 1.5rem;
}
.block-program-overview .slick-slider .slick-arrow.slick-prev {
  left: calc(50% - 3.75rem);
  transform: translateX(-50%);
}
.block-program-overview .slick-slider .slick-arrow.slick-prev:after {
  font-size: 1.5rem;
}

.program-overview__left {
  padding-top: 5rem;
  padding-bottom: 3.9375rem;
}
@media (min-width: 992px) {
  .program-overview__left {
    padding: 6.875rem 0.625rem 5rem 0.9375rem;
  }
}
@media (min-width: 1320px) {
  .program-overview__left {
    padding: 10rem 7.1875rem 13.5rem 0.9375rem;
  }
}
@media (min-width: 992px) {
  .program-overview__title {
    margin-bottom: 1.75rem;
  }
}
.program-overview__desc {
  margin-bottom: 1.25rem;
}
@media (min-width: 992px) {
  .program-overview__desc {
    margin-bottom: 1.5625rem;
  }
}
.program-overview__right {
  padding: 0;
  padding-bottom: 8.25rem;
}
@media (min-width: 992px) {
  .program-overview__right {
    width: 100%;
    height: 100%;
    padding: 0;
    position: absolute;
    top: 0;
    right: 0;
  }
}
.program-overview__tabs-head {
  display: none;
}
@media (min-width: 992px) {
  .program-overview__tabs-head {
    display: block;
    padding: 0 3.125rem 0 3.75rem;
    position: relative;
    z-index: 0;
    margin: 0;
    margin-top: 3.75rem;
    list-style: none;
  }
}
@media (min-width: 1320px) {
  .program-overview__tabs-head {
    padding-left: 6.25rem;
    margin-top: 4.9375rem;
  }
}
.program-overview__tabs-link {
  margin-bottom: 0.5rem;
}
.program-overview__tabs-link.active {
  position: relative;
  color: #3c6600;
}
.program-overview__tabs-link.active:hover {
  color: #2c2a70;
}
.program-overview__tabs-link.active::before {
  content: "";
  width: 624.9375rem;
  height: 100%;
  position: absolute;
  z-index: -1;
  top: 0;
  right: 0;
  border-top-right-radius: 0.3125rem;
  border-bottom-right-radius: 0.3125rem;
  background: #b7db00;
}
.program-overview__tabs-link-inner {
  display: block;
  padding: 0.75rem 0.9375rem 0.75rem 0.75rem;
  font-family: "magistral", sans-serif;
  font-weight: 500;
  color: #303132;
  font-size: 1.625rem;
  line-height: 1.2307692308;
}
.program-overview__tabs-link-inner:hover {
  color: #2c2a70;
}
.program-overview__tabs-link-inner:focus {
  color: #303132;
}

@media (min-width: 992px) {
  .program-overview-tabs {
    height: 100%;
  }
}
.program-overview-tabs__content {
  display: none;
}
@media (min-width: 992px) {
  .program-overview-tabs__content {
    height: 100%;
  }
  .program-overview-tabs__content.active {
    display: flex;
    align-items: flex-end;
  }
}
.program-overview-tabs__col-content {
  position: relative;
  color: #303132;
}
@media (min-width: 992px) {
  .program-overview-tabs__col-content {
    max-width: 31.25rem;
    margin: 0 0 6.25rem -5rem;
  }
}
@media (min-width: 1200px) {
  .program-overview-tabs__col-content {
    margin-left: -6.875rem;
  }
}
@media (min-width: 1320px) {
  .program-overview-tabs__col-content {
    max-width: 32.25rem;
    margin: 0 0 10rem -12.8125rem;
  }
}
.program-overview-tabs__col-content--link:focus, .program-overview-tabs__col-content--link:hover {
  color: #303132;
}
.program-overview-tabs__col-content--link:focus .program-overview-tabs__col-title i, .program-overview-tabs__col-content--link:hover .program-overview-tabs__col-title i {
  border-color: #3c6600;
  background: #3c6600;
}
.program-overview-tabs__col-content--link:focus .program-overview-tabs__col-title i::before, .program-overview-tabs__col-content--link:hover .program-overview-tabs__col-title i::before {
  color: #fff;
}
.program-overview-tabs__col-content--link:focus .program-overview-tabs__content-block-title, .program-overview-tabs__col-content--link:hover .program-overview-tabs__content-block-title {
  color: #3c6600;
}
@media (min-width: 992px) {
  .program-overview-tabs__col-content-image {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    right: 0;
  }
}
.program-overview-tabs__content-image {
  width: 100%;
  height: 0;
  padding-top: 90.5%;
  position: relative;
}
@media (min-width: 992px) {
  .program-overview-tabs__content-image {
    height: 100%;
    padding-top: 0;
  }
}
.program-overview-tabs__content-image img {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  object-fit: cover;
}
@media (min-width: 992px) {
  .program-overview-tabs__content-image img {
    position: static;
  }
}
.program-overview-tabs__content-block {
  padding: 1.3125rem 1.25rem 1.4375rem 1.25rem;
  margin: 0 1.25rem;
  margin-top: -8.125rem;
  border-radius: 0.75rem;
  background: #fff;
}
@media (min-width: 576px) {
  .program-overview-tabs__content-block {
    margin-top: -4.375rem;
  }
}
@media (min-width: 992px) {
  .program-overview-tabs__content-block {
    min-height: 15.5rem;
    padding: 2.5rem 3rem 2.8125rem 3rem;
    margin: 0;
  }
}
.program-overview-tabs__col-title {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 0.75rem;
}
@media (min-width: 992px) {
  .program-overview-tabs__col-title {
    margin-bottom: 1.1875rem;
  }
}
.program-overview-tabs__col-title i {
  display: inline-flex;
  padding: 0.375rem;
  line-height: 0;
  border: 0.125rem solid #b7db00;
  border-radius: 50%;
  background: #b7db00;
  transition: background-color 0.2s, border-color 0.2s;
}
@media (min-width: 992px) {
  .program-overview-tabs__col-title i {
    padding: 0.625rem;
  }
}
.program-overview-tabs__col-title i:before {
  font-size: 1.5rem;
  color: #3c6600;
  transition: color 0.2s;
}
.program-overview-tabs__content-block-title {
  margin-bottom: 0;
}