/*! ============== Top/Home Page CSS Styles ================== */
.masthead {
  height: calc(100vh - 85px);
  position: relative;
  overflow: hidden;
}
.masthead::after {
  position: absolute;
  content: "";
  width: 100%;
  height: 100%;
  background: rgba(45, 156, 219, 0.15);
  z-index: 1;
  top: 0;
}
.masthead__caption {
  position: absolute;
  top: 0;
  z-index: 1;
  top: 50%;
  transform: translateY(-50%);
  left: 2%;
  padding: 15px 10px;
  z-index: 2;
}
.masthead__title {
  text-shadow: 2px 4px 10px rgba(33, 37, 41, 0.2509803922);
}
.masthead__subtitle {
  text-shadow: 2px 4px 10px rgba(33, 37, 41, 0.2509803922);
  line-height: 1.7;
  font-weight: 500;
}
.masthead__icons {
  display: flex;
  flex-wrap: nowrap;
  flex-direction: column;
}
.masthead__icons li {
  display: flex;
  align-items: center;
  margin: 0 0 6px 0;
}
.masthead__icons li span {
  text-shadow: 2px 4px 10px rgba(33, 37, 41, 0.2509803922);
  font-size: 16px;
}
.masthead__icons .icon svg {
  width: 24px;
  height: 24px;
}
.masthead__icons .icon--circle {
  background: rgba(222, 224, 225, 0.21);
  width: 50px;
  height: 50px;
  padding: 20px;
  border-radius: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  transform: scale(0.85);
}
.masthead__icons .icon--circle svg {
  display: flex;
  justify-content: center;
  align-items: center;
  align-content: center;
  flex-direction: column;
}
@media screen and (max-width: 575.98px) {
  .masthead__title {
    font-size: 26px !important;
    line-height: 1.6;
  }
  .masthead__subtitle {
    font-size: 16px !important;
  }
  .masthead__icons li span {
    font-size: 14px !important;
  }
}
@media screen and (max-width: 340px) {
  .masthead__title {
    font-size: 24px !important;
  }
  .masthead__subtitle {
    font-size: 14px !important;
  }
  .masthead__icons li span {
    font-size: 12px !important;
  }
}
@media screen and (min-width: 576px) {
  .masthead__caption {
    padding: 0 20px;
  }
}
@media screen and (min-width: 768px) {
  .masthead__icons {
    flex-direction: row;
  }
  .masthead__icons li {
    margin: 0 10px 0 0;
  }
  .masthead__icons .icon svg {
    width: 28px;
    height: 28px;
  }
}
@media screen and (min-width: 992px) {
  .masthead__icons li {
    margin: 0 25px 0 0;
  }
  .masthead__icons li span {
    font-size: 16px;
  }
  .masthead .icon--circle {
    transform: scale(1);
  }
}
@media screen and (min-width: 1200px) {
  .masthead__caption {
    left: 5%;
  }
  .masthead__subtitle {
    font-size: 22px;
  }
  .masthead__icons {
    flex-direction: row;
  }
  .masthead__icons li {
    margin: 0 25px 0 0;
  }
  .masthead__icons li:nth-child(2) .icon svg {
    width: 30px;
    height: 30px;
  }
  .masthead__icons li .icon svg {
    width: 28px;
    height: 28px;
  }
}

.swiper--container {
  width: 100%;
  height: 100%;
}
.swiper-slide {
  display: flex;
  justify-content: center;
  align-items: center;
  background: #ffffff;
  width: 100%;
  height: 100vh;
}
.swiper-slide img {
  display: block;
  width: 100%;
  height: 100vh;
  object-fit: cover;
}
.swiper-cover {
  width: 100%;
}
.swiper--scale-effect img {
  -webkit-animation: infinite 30s zoom;
  -moz-animation: infinite 30s zoom;
  animation: infinite 30s zoom;
}
.swiper-pagination {
  bottom: 20px !important;
  z-index: 2;
  transition: ease-in-out 0.4s;
}
.swiper-pagination-bullet {
  transform: scale(1.2);
  background: #ffffff;
  opacity: 0.5;
}
.swiper-pagination-bullet-active {
  transform: scale(1.8);
  opacity: 1;
}

.news .news__wrap, .news .news__item {
  display: flex;
  flex-direction: column;
}
.news .news__date {
  display: flex;
  align-items: center;
}
.news__inner {
  width: 95%;
  border-radius: 13px;
  padding: 40px 30px;
}
.news__item {
  border-bottom: 1px solid #f0f0f8;
}
.news__item:last-child {
  border-bottom: 0;
}
.news__date {
  color: rgba(75, 85, 99, 0.9) !important;
}
.news__date i {
  transform: scale(0.7);
}
.news__date i path, .news__date i svg {
  stroke: rgba(75, 85, 99, 0.7) !important;
}
.news__wrap {
  display: flex;
  justify-content: space-between;
  width: 100%;
  padding: 20px 0;
}
.news__content {
  display: inline-block;
}
.news__text {
  font-size: 16px;
  background: linear-gradient(#111827, #111827) 100% 100%/0 1px no-repeat;
  color: #111827;
  border-top: 1px solid transparent;
  border-bottom: 1px solid transparent;
  transition: background-size 0.4s cubic-bezier(0.23, 1, 0.32, 1) 0s;
}
.news a.text__link::after {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1;
  content: "";
}
.news__wrap {
  position: relative;
}
.news__wrap--arrow {
  margin-top: 10px;
  color: #2D9CDB;
}
.news__wrap::after {
  transition: ease-in-out 0.6s;
  position: absolute;
  content: "";
  width: 105%;
  height: 90%;
  background: #E6F4FB;
  z-index: -1;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  border-radius: 5px;
  opacity: 0;
}
.news__wrap:hover {
  transform: none;
}
.news__wrap:hover::after {
  opacity: 1;
}
@media screen and (max-width: 767.98px) {
  .news__text {
    margin-top: 5px;
  }
}
@media screen and (min-width: 768px) {
  .news .news__wrap, .news .news__content, .news .news__item {
    flex-direction: row;
  }
  .news__inner {
    width: 900px;
  }
  .news__item {
    justify-content: space-between;
    align-items: center;
  }
  .news__content {
    display: flex;
  }
  .news__text {
    font-size: 18px;
  }
  .news__wrap--arrow {
    margin-top: 0;
  }
}
@media screen and (min-width: 1200px) {
  .news__inner {
    padding: 40px 45px;
  }
}
@media screen and (min-width: 1400px) {
  .news__inner {
    width: 850px;
  }
}

body:not(.-is-touchDevice) .news a:hover .news__text {
  background-position: 0 100%;
  background-size: 100% 1px;
}

.card__icon-svg,
.card__icon--partial,
.card__icon--partial::after {
  transition: ease-in-out 0.6s;
}

.bg--img-blue {
  background-color: #2D9CDB;
  position: relative;
  overflow: hidden;
}
.bg--img-blue::after {
  position: absolute;
  content: "";
  background-image: url(../../../assets/media/images/common/service.jpeg);
  background-color: rgba(255, 255, 255, 0.6);
  background-blend-mode: overlay;
  background-size: cover;
  background-position: center;
  width: 100%;
  height: 100%;
  opacity: 0.1;
  z-index: 1;
}

.about__col .card {
  background-color: #E6F4FB;
  border-radius: 12px;
  padding: 15px 15px;
  text-align: center;
}
.about__col .card__title {
  color: #2D9CDB;
}
@media screen and (max-width: 991.98px) {
  .about .rounded-left {
    border-radius: 16px !important;
  }
  .about .col__text {
    text-align: center;
    align-items: center;
  }
  .about .col__image {
    height: 350px;
  }
}
@media screen and (max-width: 767.98px) {
  .about .rounded-left {
    border-radius: 16px !important;
  }
  .about__col .col__text {
    text-align: left;
    align-items: flex-start;
  }
  .about .col__image {
    height: 300px;
  }
}

.animate-pulse-slow {
  animation: pulse-slow 3s infinite;
}

@keyframes pulse-slow {
  0%, 100% {
    opacity: 1;
  }
  50% {
    opacity: 0.8;
  }
}
.circle {
  position: absolute;
  right: 4%;
  top: 46%;
  width: 230px;
  height: 230px;
  display: inline-block;
  border: 4px solid #ffffff;
  border-radius: 50%;
}
.circle--one {
  border: 3px solid rgba(255, 255, 255, 0.4);
  top: 120px;
  right: 140px;
  width: 130px;
  height: 130px;
  animation: bounce-light 2s ease-in-out infinite;
  -webkit-animation: bounce-light 2s ease-in-out infinite;
}
@media screen and (min-width: 992px) {
  .circle {
    width: 270px;
    height: 270px;
  }
  .circle--one {
    top: 109px;
    right: 166px;
    width: 160px;
    height: 160px;
  }
}
