/* Start of Banner */
.banner-slider .slide-item {
  height: calc(90vh - 86px - 56px);
  position: relative;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
}
.banner-slider .slide-item::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 100%;
  width: 100%;
  background-color: rgba(0, 0, 0, 0.5);
  z-index: 4;
}
.banner-slider .slide-item .slide-item-img {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.banner-slider .slide-item .slide-item-info {
  position: relative;
  z-index: 5;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}
.banner-slider .slide-item .slide-item-info .slide-item-title {
  font-size: calc(3rem + 2vw);
  font-weight: 600;
  color: var(--light);
  margin-bottom: 0.5rem;
}
.banner-slider .swiper-pagination {
  bottom: 1.5rem !important;
}
.banner-slider .swiper-pagination-bullet {
  width: 60px;
  height: 60px;
  border: 2px solid transparent;
}
.banner-slider .swiper-pagination-bullet-active {
  border-color: var(--main-color);
  opacity: 1;
  -webkit-transform: scale(1.1);
  -moz-transform: scale(1.1);
  transform: scale(1.1);
}
.banner-slider .progress {
  border-radius: 0;
  position: absolute;
  top: 0;
  z-index: 5;
  left: 0;
  right: 0;
  background-color: rgba(192, 192, 192, 0.5);
  height: 6px;
}
.banner-slider .swiper-btn-next,
.banner-slider .swiper-btn-prev {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -moz-transform: translateY(-50%);
  transform: translateY(-50%);
  z-index: 5;
  width: 40px;
  height: 40px;
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: var(--light);
  box-shadow: var(--bs-box-shadow-sm);
}
.banner-slider .swiper-btn-next:hover,
.banner-slider .swiper-btn-next:focus,
.banner-slider .swiper-btn-prev:hover,
.banner-slider .swiper-btn-prev:focus {
  color: var(--light);
  background-color: var(--main-color);
  box-shadow: var(--bs-box-shadow);
}
.banner-slider .swiper-btn-next {
  right: 1rem;
}
.banner-slider .swiper-btn-prev {
  left: 1rem;
}
@media screen and (max-width: 767px) {
  .banner-slider .swiper-btn-next,
  .banner-slider .swiper-btn-prev {
    display: none;
  }
}
/* End of Banner */

/* Start of About Content */
/* About Section */
.about {
  background-image: url(../images/about-bg2.webp);
  background-size: cover;
}
.about .about-images .big-img {
  border-radius: var(--radius);
  width: 100%;
}
.about .about-images .small-img {
  border-radius: var(--radius);
  position: absolute;
  bottom: 0;
}
[dir="rtl"] .about .about-images .small-img {
  right: -2.5rem;
}
[dir="ltr"] .about .about-images .small-img {
  left: -2.5rem;
}
@media screen and (max-width: 767px) {
  .about .about-images .small-img {
    max-width: 250px;
    bottom: -1.5rem;
  }
  [dir="rtl"] .about .about-images .small-img {
    right: 2rem;
  }
  [dir="ltr"] .about .about-images .small-img {
    left: 2rem;
  }
}
/* Ambious Section */
.ambious {
  background-image: var(--gradient);
  background-size: cover;
}
.ambious .ambious-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
  gap: 1.25rem;
}
.ambious .ambious-item {
  position: relative;
  z-index: 3;
  border-radius: var(--radius);
  height: 100%;
  text-align: center;
}
.ambious .ambious-item img {
  width: 100px;
  height: 100px;
  display: block;
  margin-bottom: 0.25rem;
}
.ambious .ambious-item .label {
  font-weight: 600;
  flex-grow: 1;
}
.ambious .ambious-item:hover .label {
  color: var(--main-color);
}
/* Why Us Section */
.why-us {
  background-color: transparent;
  overflow: hidden;
  padding-top: 80px;
}
[dir="rtl"] .why-us {
  background-image: linear-gradient(270deg, #25293d 77%, var(--main-color) 0%);
}
[dir="ltr"] .why-us {
  background-image: linear-gradient(90deg, #25293d 77%, var(--main-color) 0%);
}
.why-us .why-us-overlay {
  background-image: url(../images/why-us-bg.webp);
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  opacity: 0.15;
  mix-blend-mode: luminosity;
  height: 100%;
  width: 100%;
  top: 0;
  left: 0;
  position: absolute;
}
.why-us .why-us-item i {
  -webkit-animation: animate-rotate 4s 3s linear infinite forwards;
  -moz-animation: animate-rotate 4s 3s linear infinite forwards;
  animation: animate-rotate 4s 3s linear infinite forwards;
}
/* Start of Merits */
.merits img {
  border-radius: var(--radius);
}
/* End of About content */

/* Start of Services Section */
.services .service-item {
  background-color: var(--main-light);
  border-radius: var(--radius);
  overflow: hidden;
  padding: 1rem;
  box-shadow: var(--bs-box-shadow-sm);
  height: 100%;
  display: flex;
  width: 100%;
  flex-direction: column;
}
.services .service-item:hover {
  box-shadow: var(--bs-box-shadow);
}
.services .service-item .service-item-img {
  width: 100%;
  aspect-ratio: 1;
  border-radius: 50%;
  object-fit: cover;
  border: 4px solid var(--light);
  overflow: hidden;
  position: relative;
  margin-bottom: 1rem;
}
.services .service-item .service-item-img img {
  object-fit: cover;
  position: absolute;
  left: 0;
  right: 0;
  width: 100%;
  top: 0;
  height: 100%;
}
.services .service-item:hover .service-item-img img {
  -webkit-transform: scale(1.1);
  -moz-transform: scale(1.1);
  transform: scale(1.1);
}
.services .service-item .service-item-info {
  background-color: var(--light);
  padding: 1rem;
  border-radius: var(--radius);
  flex-grow: 1;
}
.services .service-item:hover .service-item-title {
  color: var(--main-color);
}
/* End of Services Section */

/* Start of Products Section */
.products {
  background-color: rgba(192, 192, 192, 0.5);
  background-image: url(../images/products-bg.webp);
  background-size: cover;
  background-position: 50% 50%;
  background-attachment: fixed;
}
.products .products-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
  gap: 1.25rem;
}
.products .products-grid .product-item {
  position: relative;
  height: 100%;
  overflow: hidden;
  border-radius: var(--radius);
  aspect-ratio: 3/2;
  box-shadow: var(--bs-box-shadow-sm);
}
.products .products-grid .product-item:hover {
  box-shadow: var(--bs-box-shadow);
}
.products .products-grid .product-item:hover img {
  -webkit-transform: scale(1.1);
  -moz-transform: scale(1.1);
  transform: scale(1.1);
}
.products .products-grid .product-item img {
  object-fit: cover;
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
.products .products-grid .product-item::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.5);
  color: var(--light);
  -webkit-transition: var(--smooth);
  -moz-transition: var(--smooth);
  transition: var(--smooth);
  border-radius: var(--radius);
}
.products .product-item .product-action {
  display: flex;
  justify-content: flex-end;
  position: absolute;
  z-index: 2;
  bottom: 20px;
  color: var(--light);
  box-shadow: 1px 1px 1px rgba(0, 0, 0, 0.1),
    -12px 0 10px -3px rgba(0, 0, 0, 0.3), inset 0 0 5px rgba(0, 0, 0, 0.04);
  background-image: url(../images/classy_fabric.webp);
  width: 110%;
  padding: 0.5rem 1rem;
  text-transform: capitalize;
}
[dir="rtl"] .products .product-item .product-action {
  left: 10%;
  -webkit-transform: skewX(-20deg);
  -moz-transform: skewX(-20deg);
  transform: skewX(-20deg);
}
[dir="ltr"] .products .product-item .product-action {
  right: 10%;
  -webkit-transform: skewX(20deg);
  -moz-transform: skewX(20deg);
  transform: skewX(20deg);
  font-size: 0.9rem;
}
@media screen and (min-width: 768px) {
  .products .products-grid .product-item::after {
    -webkit-transform: scale(0);
    -moz-transform: scale(0);
    transform: scale(0);
  }
  .products .products-grid .product-item:hover::after {
    -webkit-transform: scale(1);
    -moz-transform: scale(1);
    transform: scale(1);
  }
  [dir="rtl"] .products .product-item .product-action {
    left: 110%;
  }
  [dir="ltr"] .products .product-item .product-action {
    right: 110%;
  }
  [dir="rtl"] .products .product-item:hover .product-action {
    left: 10%;
  }
  [dir="ltr"] .products .product-item:hover .product-action {
    right: 10%;
  }
}
/* End of Products Section */

/* Start of Programs Section */
.programs .programs-img {
  position: relative;
  z-index: 3;
  width: 450px;
  max-width: 100%;
  aspect-ratio: 1;
  overflow: hidden;
  border-radius: 50%;
  border: 4px solid var(--light);
}
.programs .programs-img > img {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.programs .program-info {
  max-width: 500px;
  border-radius: var(--radius);
  background-image: var(--gradient);
  position: relative;
  z-index: 3;
}
/* End of Programs Section */

/* Start of Contact Section */
.contact {
  background-image: url(../images/contact.webp);
  background-size: cover;
  background-position: 50% 50%;
  background-attachment: fixed;
}
.contact .contact-info {
  background-color: rgba(52, 169, 187, 0.87);
  border-top-left-radius: var(--radius);
  border-top-right-radius: var(--radius);
}
.contact .contact-info .icon {
  width: 50px;
  height: 50px;
  background-image: var(--gradient);
}
.contact .contact-form {
  border-bottom-left-radius: var(--radius);
  border-bottom-right-radius: var(--radius);
  background-color: rgba(255, 255, 255, 0.87);
}
@media screen and (min-width: 768px) {
  .contact .contact-form {
    border-radius: var(--radius) 0 0 var(--radius);
  }
  .contact .contact-info {
    border-radius: 0 var(--radius) var(--radius) 0;
  }
  .contact .contact-form,
  .contact .contact-info {
    flex-basis: 50%;
  }
}
/* End of Contact Section */
