/* Recent Blog Posts */
.cms-recent-blog-post-wrap { padding: 4rem 0; position: relative; z-index: 1; }
.cms-recent-blog-post-wrap .title-wrap { display: flex; flex-direction: column; align-items: center; }
.cms-recent-blog-post-wrap .recent-blog-post { width: 100%; aspect-ratio: 1; position: relative; display: block; background-color: hsl(var(--black)); border-radius: var(--borderRadius); overflow: hidden; }
.cms-recent-blog-post-wrap .recent-blog-post-img { width: 100%; height: 100%; object-fit: cover; position: absolute; inset: 0; transition: all 0.4s ease-in-out; }
.cms-recent-blog-post-wrap .recent-blog-post:hover .recent-blog-post-img { opacity: 0.75; }
.cms-recent-blog-post-wrap .recent-blog-post-content { width: 100%; height: 100%; padding: 1rem; position: absolute; inset: 0; display: flex; flex-direction: column; justify-content: flex-end; align-items: flex-start; background: linear-gradient(transparent, hsla(var(--black), 15%), hsla(var(--black), 65%)); text-decoration: none !important; transition: all 0.4s ease-in-out; }
.cms-recent-blog-post-wrap .recent-blog-post-title { font-family: var(--siteFont); font-weight: var(--wLight); line-height: 1.2; color: hsl(var(--white)); }
.cms-recent-blog-post-wrap .recent-blog-post-cta { padding-bottom: 0.25rem; border-bottom: 0.0625rem transparent solid; color: hsl(var(--siteColor6)); transition: all 0.4s ease-in-out; }
.cms-recent-blog-post-wrap .recent-blog-post:hover .recent-blog-post-cta { border-bottom-color: hsl(var(--white)); }
@media(min-width: 1025px) {
  .cms-recent-blog-post-wrap { padding: 6rem 0; }
}

.recent-blog-post-swiper .swiper-slide { --marginRight: 1.25rem; --columns: 1; margin-right: var(--marginRight); width: calc(calc(100% / var(--columns)) - var(--marginRight) + calc(var(--marginRight) / var(--columns))); }
.recent-blog-post-controls { width: 100%; max-width: 11.25rem; margin: 2rem auto 0; display: flex; flex-wrap: wrap; justify-content: space-between; position: relative; z-index: 1; }
.recent-blog-post-controls:has(.swiper-button-lock) { margin: 0 auto; }
.recent-blog-post-controls .recent-blog-post-btn-prev,
.recent-blog-post-controls .recent-blog-post-btn-next { width: 3rem; height: 3rem; margin: 0; position: relative; top: auto; right: auto; left: auto; background-color: transparent; border-radius: var(--borderRadiusCircle); border: 0.0625rem solid hsl(var(--siteColor1)); box-shadow: none; color: hsl(var(--siteColor1)); transition: all 0.4s ease-in-out; }
.recent-blog-post-controls .recent-blog-post-btn-prev:hover,
.recent-blog-post-controls .recent-blog-post-btn-next:hover,
.recent-blog-post-controls .recent-blog-post-btn-prev:focus,
.recent-blog-post-controls .recent-blog-post-btn-next:focus { outline: none; box-shadow: var(--focusShadow); }
.recent-blog-post-controls .recent-blog-post-btn-prev:after,
.recent-blog-post-controls .recent-blog-post-btn-next:after { display: none; }
.recent-blog-post-controls .recent-blog-post-btn-prev .icon,
.recent-blog-post-controls .recent-blog-post-btn-next .icon { width: 1.75rem; height: 1.75rem; }
@media (min-width: 667px) {
  .recent-blog-post-swiper .swiper-slide { --columns: 2; }
}
@media (min-width: 992px) {
  .recent-blog-post-swiper .swiper-slide { --columns: 3; }
}