.page__blog {
  --purple: #50519e;
  padding-bottom: 7rem;
}
.page__blog.page__blog--second {
  padding-bottom: 0;
}
@media (max-width: 834px) {
  .page__blog {
    padding-bottom: 5rem;
  }
}
.page__blog .page__head {
  position: relative;
  display: flex;
  flex-direction: column;
  color: var(--white);
}
.page__blog .page__head .head__image {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.page__blog .page__head .head__container {
  margin-top: auto;
  position: relative;
  max-width: 82rem;
  width: 100%;
  padding-block: 19.5rem 1.5rem;
}
.page__blog .page__head .head__container > .page__title {
  font-size: clamp(3rem, 8.7vw, 8rem);
  font-weight: 300;
  line-height: 1;
}
@media (max-width: 650px) {
  .page__blog .page__head .head__container {
    padding-block: 8.5rem 5rem;
  }
}
.page__blog .page__recommended {
  padding-block: 3.5rem 7rem;
}
.page__blog .page__recommended > .recommended__container {
  display: flex;
  align-items: center;
  gap: 1rem;
  padding-bottom: 2.4rem;
}
.page__blog .page__recommended > .recommended__container > svg {
  flex: 0 0 auto;
}
.page__blog .page__recommended > .recommended__container > .tt {
  flex: 1;
  font-size: clamp(2rem, 3.5vw, 3rem);
}
.page__blog .page__recommended > .swiper {
  padding: 0 0 0 2.5rem;
}
.page__blog .page__recommended > .swiper .swiper-wrapper {
  transition-timing-function: linear;
}
.page__blog .page__recommended > .swiper .swiper-wrapper .swiper-slide {
  --width: 77%;
  width: var(--width);
}
.page__blog
  .page__recommended
  > .swiper
  .swiper-wrapper
  .swiper-slide
  .blog-post
  .entry-title {
  font-weight: 700;
}
@media (min-width: 651px) {
  .page__blog .page__recommended > .swiper .swiper-wrapper .swiper-slide {
    --width: 31.25%;
  }
  .page__blog
    .page__recommended
    > .swiper
    .swiper-wrapper
    .swiper-slide.featured {
    width: calc(var(--width) * 2) !important;
  }
}
@media (min-width: 835px) {
  .page__blog .page__recommended > .swiper .swiper-wrapper .swiper-slide {
    --width: 26.32%;
  }
}
@media (min-width: 1201px) {
  .page__blog .page__recommended > .swiper .swiper-wrapper .swiper-slide {
    --width: 25%;
  }
}
.page__blog .page__recommended .blog-post > .entry-content > .f {
  padding-right: 1rem;
}
@media (min-width: 651px) {
  .page__blog
    .page__recommended
    > .recommended__container
    > .slider-controls:not(.show-navigation) {
    display: none;
  }
}
@media (max-width: 650px) {
  .page__blog .page__recommended {
    padding-block: 2rem;
  }
  .page__blog .page__recommended > .recommended__container {
    padding-bottom: 2rem;
  }
  .page__blog .page__recommended > .recommended__container > svg {
    display: none;
  }
}
@media (max-width: 29.9988em) {
  .page__blog .page__recommended > .swiper {
    padding: 0 0 0 1.25rem;
  }
}
.page__blog .blog-post > .img {
  position: relative;
  margin-bottom: 1.5rem;
}
.page__blog .blog-post > .img > .post-categories {
  position: absolute;
  top: 0;
  left: 0;
  padding: 1rem;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 0.5rem 1rem;
}
.page__blog .blog-post > .img > .post-categories a {
  display: block;
  border: 1px solid #000;
  background-color: rgba(255, 255, 255, 0.8);
  padding: 0.5rem 1rem;
  border-radius: 10rem;
  font-size: 1rem;
  transition: background-color 0.3s ease;
  color: var(--black);
}
.page__blog .blog-post > .img > .post-categories a:hover {
  background-color: #e8c6f5;
}
.page__blog .blog-post > .img > .entry-thumbnail {
  display: block;
  position: relative;
  height: 0;
  padding-bottom: 99%;
  border-radius: clamp(1.25rem, 2vw, 1.875rem);
  overflow: hidden;
}
@media (min-width: 651px) {
  .page__blog .swiper-slide.featured .blog-post > .img > .entry-thumbnail {
    padding-bottom: 49.5%;
  }
}
.page__blog .blog-post > .img > .entry-thumbnail > img {
  display: block;
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 1s ease;
}
.page__blog .blog-post:hover > .img > .entry-thumbnail > img {
  transform: scale(1.1);
}
.page__blog .blog-post > .entry-content > .f {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 1rem;
}
.page__blog .blog-post > .entry-content > .f > .l {
  flex: 1;
}
.page__blog .blog-post > .entry-content > .f > .r {
  flex: 0 0 auto;
}
.page__blog .blog-post > .entry-content > .f > .r > a,
.page__blog .blog-post > .entry-content > .f > .r > a > svg {
  display: block;
}
.page__blog .blog-post > .entry-content > .f > .r > a > svg {
  transition: rotate 0.3s ease;
  rotate: 45deg;
}
.page__blog .blog-post:hover > .entry-content > .f > .r > a > svg {
  rotate: 0deg;
}
.page__blog .blog-post > .entry-content > .f > .r > a > svg > circle {
  transition: opacity 0.3s ease;
  opacity: 0;
}
.page__blog .blog-post:hover > .entry-content > .f > .r > a > svg > circle {
  opacity: 1;
}
.page__blog .blog-post .entry-title {
  font-size: clamp(1.125rem, 1.5vw, 1.3125rem);
  line-height: 1.15;
  margin-bottom: 0.5rem;
}
.page__blog .blog-post .entry-meta {
  font-size: 1rem;
  color: #828282;
}
.page__blog .blog-post .entry-meta .bsf-rt-display-label {
  display: none;
}
.page__blog .page__content {
  padding-bottom: 7rem;
  position: relative;
}
.page__blog .page__content > .page__container {
  display: flex;
  flex-direction: column;
  gap: 30px;
  padding-bottom: 8.2rem;
}
.page__blog .page__content > .loading {
  position: absolute;
  width: 100%;
  height: 100%;
  inset: 0;
  background-color: rgba(255, 255, 255, 0.8);
}
.page__blog .page__content > .loading > .ajax-loader-svg {
  position: absolute;
  top: 50px;
  left: 50%;
  translate: -50% -50%;
  width: 30px;
  height: 30px;
  margin: 0 auto;
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 92.5 92.5' xmlns='http://www.w3.org/2000/svg'%3E%3Ccircle fill='%23999999' cx='46.2' cy='46.2' r='45.7'/%3E%3Ccircle fill='%23ffffff' cx='46.2' cy='24.9' r='12.5'/%3E%3C/svg%3E");
  background-position: center;
  animation: spin 1s ease-in-out infinite;
}
@keyframes spin {
  100% {
    transform: rotate(360deg);
  }
}
@media (min-width: 651px) {
  .page__blog .page__content > .page__container {
    flex-direction: row;
    gap: 122px 30px;
    flex-wrap: wrap;
    max-width: 81.5rem;
  }
  .page__blog .page__content > .page__container > .blog-post {
    flex: 0 0 calc(50% - 15px);
  }
  .page__blog
    .page__content
    > .page__container
    > .blog-post
    > .img
    > .entry-thumbnail {
    padding-bottom: 105.4%;
  }
  .page__blog
    .page__content
    > .page__container
    > .blog-post:nth-child(1)
    > .img
    > .entry-thumbnail,
  .page__blog
    .page__content
    > .page__container
    > .blog-post:nth-child(4)
    > .img
    > .entry-thumbnail,
  .page__blog
    .page__content
    > .page__container
    > .blog-post:nth-child(5)
    > .img
    > .entry-thumbnail {
    padding-bottom: 55%;
  }
  .page__blog .page__content > .page__container > .blog-post:nth-child(3) {
    margin-top: -24.5%;
  }
  .page__blog .page__content > .page__container > .blog-post .entry-title {
    padding-right: 3rem;
    margin-bottom: 0.5rem;
  }
  .page__blog .page__content > .page__container > .blog-post > .entry-content {
    position: relative;
  }
  .page__blog
    .page__content
    > .page__container
    > .blog-post
    > .entry-content
    > .f
    > .r {
    position: absolute;
    top: 0;
    right: 0;
  }
}
@media (max-width: 834px) {
  .page__blog .page__content {
    padding-bottom: 5rem;
  }
  .page__blog .page__content > .page__container {
    gap: 50px 30px;
    padding-bottom: 5rem;
  }
}
@media (max-width: 650px) {
  .page__blog .page__content > .page__container {
    padding-bottom: 2.5rem;
  }
}
.page__blog .page__pagination {
  text-align: center;
  font-size: 1rem;
  letter-spacing: 0.005em;
  color: var(--purple);
}
.page__blog .page__pagination .nav {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 5px;
}
.page__blog .page__pagination .page-numbers:not(.next):not(.prev):not(.dots) {
  width: 27px;
  height: 27px;
  display: grid;
  place-items: center;
  border-radius: 100%;
  transition: all 0.3s ease;
}
.page__blog
  .page__pagination
  .page-numbers:not(.next):not(.prev):not(.dots):hover,
.page__blog .page__pagination .page-numbers.current {
  background-color: var(--purple);
  color: var(--white);
}
body.blog .programs__top {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 2.4rem;
}
body.blog .programs__top .programs__title-wrapper {
  display: flex;
  align-items: center;
  gap: 1rem;
}
body.blog .programs__top .programs__title-wrapper > svg {
  flex: 0 0 auto;
  fill: currentColor;
}
body.blog .programs__top .programs__title-wrapper > .programs__title {
  flex: 1;
  font-size: clamp(2rem, 3.5vw, 3rem);
}
body.blog .programs__top .programs__navigate {
  position: relative;
  top: auto;
  right: auto;
  transform: none;
}
@media (max-width: 650px) {
  body.blog .programs__top {
    margin-bottom: 2rem;
  }
  body.blog .programs__top .programs__title-wrapper > svg {
    display: none;
  }
}
.page__filters .filters__container {
  display: flex;
  padding-block: 3rem 7rem;
  gap: 4rem;
}
.page__filters .filters__title {
  flex: 0 0 auto;
}
.page__filters .filters__title .tt {
  font-size: 2.25rem;
  line-height: 1;
  letter-spacing: 0.005em;
}
.page__filters .filters__search {
  flex: 1;
}
.page__filters .filters__search > .s {
  display: flex;
  align-items: center;
  padding: 0.5rem 1rem;
  gap: 0.5rem;
  border: 1px solid rgba(80, 81, 158, 0.5);
  border-radius: 10rem;
  margin-bottom: 1rem;
}
.page__filters .filters__search > .s > svg {
  flex: 0 0 auto;
}
.page__filters .filters__search > .s > input {
  flex: 1;
}
.page__filters .filters__search > .s input {
  font-size: 1.125rem;
  color: rgba(80, 81, 158, 0.67);
  font-style: italic;
}
.page__filters .filters__search > .terms {
  display: flex;
  align-items: center;
  gap: 0.5rem 1rem;
  flex-wrap: wrap;
}
.page__filters .filters__search > .terms > .term {
}
.page__filters .filters__search > .terms > .term > input {
  display: none;
}
.page__filters .filters__search > .terms > .term > label {
  cursor: pointer;
  display: block;
  border: 1px solid var(--purple);
  color: var(--purple);
  padding: 0.5rem 1rem;
  border-radius: 10rem;
  font-size: 1rem;
  transition: all 0.3s ease;
}
.page__filters .filters__search > .terms > .term > input:hover + label,
.page__filters .filters__search > .terms > .term > input:checked + label {
  background-color: var(--purple);
  color: #fff;
}
@media (max-width: 834px) {
  .page__filters .filters__container {
    flex-direction: column;
    gap: 30px;
  }
}
@media (max-width: 650px) {
  .page__filters .filters__container {
    padding-block: 0 40px;
  }
  .page__filters .filters__title .tt {
    font-size: 2rem;
  }
}
