@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=IBM+Plex+Sans+Arabic:wght@100;200;300;400;500;600;700&display=swap");
#header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  padding: 0 50px;
  height: 80px;
  z-index: 3;
  transition: 0.2s;
  display: flex;
  justify-content: center;
  align-items: center;
}
#header .contact-btn {
  padding: 4px 24px;
  color: #fff;
  border-radius: 8px;
  border: 1px solid rgba(255, 255, 255, 0.4784313725);
  transition: 0.2s;
}
#header .contact-btn:hover {
  background-color: rgba(255, 255, 255, 0.1725490196);
}
#header .header-content {
  position: relative;
  width: 100%;
  height: 100%;
  display: flex;
  padding: 10px 0;
  justify-content: space-between;
  align-items: center;
  max-width: 1400px;
}
#header .header-content::before {
  content: "";
  position: absolute;
  background-color: rgba(221, 221, 221, 0.5254901961);
  width: 100%;
  height: 1px;
  left: 0;
  top: 100%;
  transition: 0.2s;
}
#header.scrolled {
  background-color: #215a65;
  box-shadow: 0 5px 10px rgba(0, 0, 0, 0.1764705882);
}
#header.scrolled .header-content::before {
  background-color: transparent;
}
#header .logo {
  display: flex;
  align-items: center;
  width: 180px;
  aspect-ratio: 2.5/1;
}
#header .logo img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
#header .nav ul {
  display: flex;
  align-items: center;
  gap: 25px;
}
#header .nav ul li {
  position: relative;
}
#header .nav ul li.show-in-mobile {
  display: none;
}
#header .nav ul li a {
  font-weight: 400;
  color: #fff;
  position: relative;
}
#header .nav ul li a:hover, #header .nav ul li a.active {
  color: #44acb9;
  text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.4745098039);
}
#header .nav ul li a i {
  font-size: 10px;
  transition: 0.2s;
}
#header .nav ul li a.dropdown-toggle.active i {
  rotate: 180deg;
}
#header .nav ul li .dropdown {
  position: absolute;
  top: calc(100% + 35px);
  left: 0;
  padding: 0;
  width: fit-content;
  min-width: 200px;
  overflow: hidden;
  background-color: transparent;
  opacity: 0;
  display: none;
  transition: 0.2s;
}
#header .nav ul li .dropdown.show {
  display: block;
  opacity: 1;
}
#header .nav ul li .dropdown ul {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0;
}
#header .nav ul li .dropdown ul li {
  width: 100%;
}
#header .nav ul li .dropdown ul li a {
  width: fit-content;
  padding: 5px 10px;
  white-space: nowrap;
  text-align: start;
  background-color: #133c44;
  width: 100%;
}
#header .nav ul li .dropdown ul li a:hover, #header .nav ul li .dropdown ul li a.active {
  background-color: #388594;
  color: #fff;
}
#header .nav ul li .dropdown ul li:not(:last-child) a {
  border-bottom: 1px solid rgba(221, 221, 221, 0.1843137255);
}
#header .end {
  display: flex;
  align-items: center;
  gap: 10px;
}
#header .end .language-box {
  position: relative;
}
#header .end .language-box .language-btn {
  padding: 6px 10px;
  border-radius: 8px;
  border-color: rgba(221, 221, 221, 0.5137254902);
}
#header .end .language-box .language-btn .image {
  width: 20px;
  height: 20px;
  border-radius: 50%;
  overflow: hidden;
}
#header .end .language-box .language-btn .image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
#header .end .language-box .language-btn i {
  color: #fff;
  transition: 0.2s;
}
#header .end .language-box .language-btn.active {
  background-color: #fff;
}
#header .end .language-box .language-btn.active i {
  color: #000;
  rotate: 180deg;
}
#header .end .language-box .language-btn:not(.active):hover {
  background-color: rgba(255, 255, 255, 0.2941176471);
}
#header .end .language-box .language-dropdown {
  top: calc(100% + 35px);
  opacity: 0;
  transition: 0.2s;
  display: none;
  padding: 0;
  overflow: hidden;
  background-color: transparent;
}
#header .end .language-box .language-dropdown.show {
  display: block;
  opacity: 1;
}
#header .end .language-box .language-dropdown ul li a {
  min-width: 150px;
  padding: 5px 10px;
  color: #fff;
  background-color: #133c44;
}
#header .end .language-box .language-dropdown ul li a.active {
  background-color: #388594;
}
#header .end .language-box .language-dropdown ul li a img {
  width: 20px;
  height: 20px;
  border-radius: 50%;
}
#header .end .language-box .language-dropdown ul li a:hover {
  background-color: #388594;
}
#header .end .menu-btn {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 35px;
  height: 35px;
  border-color: transparent;
  border-radius: 4px;
  display: none;
  gap: 5px;
}
#header .end .menu-btn .bar {
  transition: 0.2s;
  width: 25px;
  height: 3px;
  border-radius: 30px;
  background-color: #fff;
}

#rtl #header .language-box .language-dropdown {
  right: unset;
  left: 0;
}
#rtl #header .nav ul li a::before {
  left: unset;
  right: 0;
}

@media (max-width: 1200px) {
  #header {
    width: 100vw;
    left: 0;
    padding: 0 10px;
  }
  #header .logo {
    width: 140px;
  }
}
@media (max-width: 1000px) {
  #header .contact-btn {
    display: none;
  }
  #header .nav {
    position: absolute;
    overflow: hidden;
    width: calc(100% - 20px);
    left: 50%;
    translate: -50%;
    top: calc(100% + 10px);
    border-radius: 4px;
    max-width: 500px;
    display: none;
    animation: showupNav 0.3s forwards;
  }
  @keyframes showupNav {
    0% {
      opacity: 0;
      translate: -50% 10px;
    }
    100% {
      opacity: 1;
      translate: -50% 0;
    }
  }
  #header .nav.active {
    display: block;
  }
  #header .nav ul {
    display: flex;
    flex-direction: column;
    gap: 0;
  }
  #header .nav ul li {
    width: 100%;
  }
  #header .nav ul li.show-in-mobile {
    display: block;
  }
  #header .nav ul li a {
    padding: 5px 10px;
    background-color: #133c44;
  }
  #header .nav ul li a:hover {
    background-color: #388594;
  }
  #header .nav ul li:not(:last-of-type) a {
    border-bottom: 1px solid rgba(221, 221, 221, 0.1843137255);
  }
  #header .nav ul li.dropdown-group > a {
    justify-content: space-between;
  }
  #header .nav ul li.dropdown-group .dropdown {
    width: 100%;
    position: static;
    border-radius: 0;
    animation: none;
  }
  #header .end .menu-btn {
    display: flex;
    transition: 0.7s;
  }
  #header .end .menu-btn.active {
    transform: rotate(360deg);
  }
  #header .end .menu-btn.active .bar {
    width: 0;
  }
  #header .end .menu-btn.active .bar:first-child {
    width: 25px;
    rotate: 45deg;
    translate: 0 8px;
  }
  #header .end .menu-btn.active .bar:last-child {
    width: 25px;
    rotate: -45deg;
    translate: 0 -8px;
  }
}
@media (max-width: 480px) {
  #header {
    height: 60px;
  }
  #header .header-content {
    padding: 0;
  }
}
#footer {
  background-color: #215a65;
  color: #fff;
  padding: 50px;
  padding-bottom: 20px;
  z-index: 2;
  position: relative;
  overflow: hidden;
}
#footer .footer-bg {
  opacity: 0.1;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  z-index: -1;
  display: flex;
  justify-content: center;
  align-items: center;
}
#footer .footer-bg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
#footer .footer-side-title {
  font-size: 18px;
  margin-bottom: 16px;
  font-weight: 600;
}
#footer .footer-content {
  max-width: 1400px;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  gap: 30px;
}
#footer a {
  color: #fff;
}
#footer .start-side {
  display: flex;
  flex-direction: column;
  gap: 20px;
  flex: 2;
}
#footer .start-side .logo {
  display: flex;
  align-items: center;
  justify-content: center;
  aspect-ratio: 2.5/1;
  max-width: 350px;
}
#footer .start-side .logo img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
#footer .start-side .description {
  font-weight: 500;
  max-width: 400px;
}
#footer .start-side .social-media-title {
  font-size: 18px;
  margin-bottom: 5px;
  font-weight: 600;
}
#footer .start-side .social-media-list {
  display: flex;
  align-items: center;
  gap: 16px;
}
#footer .start-side .social-media-list .social-media-icon {
  width: 18px;
  height: 18px;
  display: flex;
  justify-content: center;
  align-items: center;
}
#footer .start-side .social-media-list .social-media-icon i {
  font-size: 20px;
}
#footer .start-side .social-media-list .social-media-icon:hover {
  scale: 1.2;
}
#footer .top {
  display: flex;
  gap: 50px;
}
#footer .top .quick-links {
  flex: 1;
}
#footer .top .quick-links ul {
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  max-height: 200px;
}
#footer .top .quick-links ul li a {
  padding: 5px 0;
  font-size: 14px;
}
#footer .top .quick-links ul li a:hover {
  translate: -5px 0;
}
#footer .top .contact-side {
  flex: 1;
  display: flex;
  flex-direction: column;
}
#footer .top .contact-side .contact-item {
  position: relative;
  margin-bottom: 16px;
  min-width: 150px;
  flex-shrink: 0;
}
#footer .top .contact-side .contact-item .title {
  font-size: 18px;
  margin-bottom: 5px;
  display: flex;
  align-items: center;
  gap: 7px;
  font-weight: 700;
}
#footer .top .contact-side .contact-item .title i {
  font-size: 14px;
}
#footer .top .contact-side .contact-item .value {
  font-size: 13px;
  white-space: nowrap;
}
#footer .top .contact-side .contact-item .value a:hover {
  color: #44acb9;
}
#footer .top .map-side {
  flex: 1.5;
}
#footer .top .map-side .map-box {
  width: 100%;
  aspect-ratio: 2/1.3;
}
#footer .top .map-side .map-box iframe {
  width: 100%;
  height: 100%;
  border-radius: 6px;
  overflow: hidden;
}
#footer .bottom {
  display: flex;
  justify-content: center;
  align-items: center;
  border-top: 1px solid rgba(221, 221, 221, 0.3960784314);
  padding-top: 20px;
}
#footer .bottom .copyright {
  text-align: center;
}

#rtl #footer .top .quick-links ul li a i {
  rotate: 180deg;
}

@media (max-width: 1000px) {
  #footer .top {
    flex-direction: column;
    gap: 20px;
  }
}
@media (max-width: 480px) {
  #footer {
    padding: 20px;
  }
  #footer .top aside:not(:last-child) {
    margin-bottom: 22px;
  }
  #footer .top .start-side {
    padding: 0 !important;
    display: flex;
    flex-direction: column;
    padding-bottom: 20px !important;
  }
  #footer .top .quick-links ul li {
    width: 50%;
  }
  #footer .top .contact-side {
    flex-direction: column;
  }
  #footer .top .contact-side .contact-item {
    display: flex;
    flex-direction: column;
  }
  #footer .top .contact-side .contact-item::before {
    width: 50%;
    left: 50%;
    translate: -50% 0;
  }
}
.slider {
  position: relative;
  width: 100%; /* ياخد 90% من عرض الصفحة أو الكونتينر */
  overflow: hidden;
  border-radius: 4px;
  height: 500px;
}

.slides {
  display: flex;
  height: 100%;
  transition: transform 0.8s ease-in-out;
}

.slides img {
  width: 100%; /* كل صورة تاخد 100% من عرض السلايدر */
  height: 100%;
  object-fit: cover;
  flex-shrink: 0; /* متضغطش */
}

.dots {
  position: absolute;
  bottom: 15px;
  left: 50%;
  transform: translateX(-50%);
  display: flex;
  gap: 8px;
}

.dots button {
  width: 15px;
  aspect-ratio: 1/1;
  border-radius: 50%;
  border: none;
  background: #bbb;
  cursor: pointer;
  transition: background 0.3s;
}

.dots button.active {
  background: #388594;
}

.home-page {
  position: relative;
}
.home-page .page-content {
  position: relative;
  z-index: 2;
}
.home-page .section .section-header {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  margin-bottom: 40px;
}
.home-page .section .section-header .space-between {
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 100%;
}
.home-page .section .section-header .section-title {
  font-size: 32px;
  color: #215a65;
  font-weight: 700;
}
.home-page .section .section-header .section-description {
  text-align: start;
  margin: 0;
}
.home-page .section .section-title {
  text-align: center;
  font-size: 32px;
  margin-bottom: 15px;
  color: #215a65;
}
.home-page .section .section-description {
  max-width: 800px;
  margin: 0 auto 50px;
  color: #666;
}
.home-page .section .all-link {
  font-size: 16px;
  font-weight: 600;
  color: #44acb9;
}
.home-page .section .all-link i {
  margin-right: 8px;
}
.home-page #home-slider {
  width: 100%;
  height: 100vh;
  overflow: hidden;
  position: relative;
  background-color: #215a65;
  padding: 50px;
}
.home-page #home-slider .slider-content {
  width: 100%;
  height: 100%;
  margin: 0 auto;
  max-width: 1400px;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.home-page #home-slider .slider-content .side {
  display: flex;
  align-items: center;
}
.home-page #home-slider .slide {
  width: 100%;
  height: 100vh;
  overflow: hidden;
  transition: 0.2s;
  display: none;
  align-items: center;
  padding: 0 100px;
}
.home-page #home-slider .slide .bg {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  transition: 0.3s linear;
  align-items: center;
  animation: showBg 1s forwards;
}
@keyframes showBg {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 0.4;
  }
}
.home-page #home-slider .slide .bg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: 0.3s;
  scale: 1.1;
  filter: brightness(0.7);
}
.home-page #home-slider .slide .content {
  transition: 0.4s;
  z-index: 2;
  color: #fff;
}
.home-page #home-slider .slide .content .title {
  max-width: 500px;
  font-size: 50px;
  line-height: 70px;
  font-weight: 700;
  margin-bottom: 50px;
  transition: 0.3s;
  opacity: 0;
}
.home-page #home-slider .slide .content .description {
  max-width: 500px;
  transition: 0.3s;
  opacity: 0;
}
.home-page #home-slider .slide.active {
  display: flex;
}
.home-page #home-slider .slide.active .bg img {
  animation: animateSlideImage 5s alternate forwards;
}
@keyframes animateSlideImage {
  0% {
    scale: 1;
  }
  100% {
    scale: 1.1;
  }
}
.home-page #home-slider .slide.active .content .title {
  opacity: 0;
  transform: translateY(40px);
  animation: fadeUp 1s 0.3s ease forwards;
}
.home-page #home-slider .slide.active .content .description {
  opacity: 0;
  transform: translateY(40px);
  animation: fadeUp 1s 0.6s ease forwards;
}
@keyframes zoomIn {
  from {
    transform: scale(1.1);
  }
  to {
    transform: scale(1);
  }
}
@keyframes fadeUp {
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.home-page #home-slider .slide.slide-end .bg {
  filter: brightness(0);
}
.home-page #home-slider .slide.slide-end .content {
  opacity: 0;
  scale: 0.9;
}
.home-page #home-slider .nav-list .nav-item {
  text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.4235294118);
}
.home-page #home-slider .nav-list .nav-item:not(.active) {
  color: #fff;
}
.home-page #home-slider .social-media {
  z-index: 2;
  display: flex;
  flex-direction: column;
  gap: 30px;
}
.home-page #home-slider .social-media .social-media-icon {
  position: relative;
  font-size: 20px;
  color: #fff;
  text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.4235294118);
  display: flex;
  justify-content: center;
  align-items: center;
}
.home-page #home-slider .social-media .social-media-icon::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  translate: -50% -50%;
  width: 30px;
  aspect-ratio: 1/1;
  border: 2px solid #388594;
  transform: rotate(45deg);
  border-radius: 4px;
  scale: 0;
  transition: 0.3s;
}
.home-page #home-slider .social-media .social-media-icon:hover {
  color: #388594;
}
.home-page #home-slider .social-media .social-media-icon:hover::before {
  rotate: 360deg;
  scale: 1;
}
.home-page #home-slider .highlighted-info-list {
  position: absolute;
  bottom: 0;
  right: 0;
  background-color: #eee;
  display: flex;
  gap: 1px;
  z-index: 2;
}
.home-page #home-slider .highlighted-info-list .highlighted-info-item {
  padding: 20px;
  background-color: #fff;
  min-width: 220px;
  cursor: pointer;
}
.home-page #home-slider .highlighted-info-list .highlighted-info-item .title {
  margin-bottom: 10px;
  font-weight: 600;
}
.home-page #home-slider .highlighted-info-list .highlighted-info-item .value {
  margin-bottom: 10px;
  font-weight: 700;
}
.home-page #home-slider .highlighted-info-list .highlighted-info-item.active .title {
  color: #388594;
}
.home-page .about-section {
  background-color: #215a65;
  color: #fff;
  position: relative;
}
.home-page .about-section .logo-bg {
  position: absolute;
  top: 80%;
  left: 0;
  width: 60px;
  aspect-ratio: 1/2;
}
.home-page .about-section .logo-bg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.home-page .about-section .logo-bg.left {
  top: 40%;
  right: 0;
}
.home-page .about-section .section-content .about-content {
  display: flex;
  gap: 40px;
  flex: 2;
}
.home-page .about-section .section-content .about-content .section-title {
  font-size: 32px;
  color: #fff;
  font-weight: 700;
  min-width: 250px;
  margin: 0;
  text-align: start;
}
.home-page .about-section .section-content .about-content .section-description {
  max-width: unset;
  font-size: 16px;
  line-height: 1.8;
  font-weight: 400;
  color: #fff;
  margin: 0;
  text-align: start;
}
.home-page .stats-section {
  background-color: #215a65;
  padding-top: 0;
  padding-bottom: 50px;
}
.home-page .stats-section .section-content {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 20px;
}
.home-page .stats-section .section-content .stat-item {
  display: flex;
  flex-direction: column;
  gap: 10px;
  color: #fff;
  min-width: 150px;
}
.home-page .stats-section .section-content .stat-item .stat-number {
  font-size: 40px;
  font-weight: 700;
  direction: ltr;
  width: fit-content;
}
.home-page .stats-section .section-content .stat-item .stat-title {
  font-size: 15px;
  opacity: 0.8;
}
.home-page .fields-section {
  background-color: #f4f4f4;
}
.home-page .fields-section .fields-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 20px;
}
.home-page .fields-section .fields-grid .field-item {
  background-color: #fff;
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.05);
  transition: transform 0.3s;
  position: relative;
}
.home-page .fields-section .fields-grid .field-item:hover {
  transform: translateY(-10px);
}
.home-page .fields-section .fields-grid .field-item .number {
  position: absolute;
  top: 0;
  left: 15px;
  translate: 0 -50%;
  font-size: 60px;
  font-weight: 700;
  color: #fff;
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.5);
  z-index: 2;
}
.home-page .fields-section .fields-grid .field-item .image {
  height: 350px;
  filter: saturate(0);
}
.home-page .fields-section .fields-grid .field-item .image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.home-page .fields-section .fields-grid .field-item .details {
  padding: 10px;
  position: absolute;
  bottom: 15px;
  background-color: #44acb9;
  color: #fff;
  font-size: 16px;
  text-align: center;
  left: 50%;
  translate: -50%;
  width: calc(100% - 30px);
  min-height: 70px;
  display: flex;
  align-items: center;
}
.home-page .services-section .services-container {
  display: flex;
  background-color: #18444d;
  border-radius: 6px;
  overflow: hidden;
}
.home-page .services-section .services-container .services-grid {
  background-color: rgba(255, 255, 255, 0.4941176471);
  flex: 1;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-template-rows: repeat(3, 1fr);
  max-width: 550px;
  gap: 1px;
}
.home-page .services-section .services-container .services-grid .service-card {
  background-color: #215a65;
  padding: 30px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 20px;
  transition: 0.3s;
  cursor: pointer;
}
.home-page .services-section .services-container .services-grid .service-card .icon {
  width: 40px;
  aspect-ratio: 1/1;
  filter: brightness(10);
}
.home-page .services-section .services-container .services-grid .service-card .icon img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.home-page .services-section .services-container .services-grid .service-card p {
  font-size: 15px;
  font-weight: 700;
  color: #fff;
}
.home-page .services-section .services-container .services-grid .service-card.active {
  background-color: #44acb9;
  color: #fff;
}
.home-page .services-section .services-container .services-grid .service-card.active i {
  color: #fff;
}
.home-page .services-section .services-container .services-grid .service-card.active p {
  color: #fff;
}
.home-page .services-section .services-container .services-grid .service-card:hover {
  background-color: #388594;
}
.home-page .services-section .services-container .service-featured {
  flex: 1;
  position: relative;
  border-radius: 12px;
  overflow: hidden;
}
.home-page .services-section .services-container .service-featured .service-item {
  width: 100%;
  height: 100%;
  display: none;
}
.home-page .services-section .services-container .service-featured .service-item.active {
  display: block;
}
.home-page .services-section .services-container .service-featured .service-item .image {
  width: 100%;
  height: 100%;
}
.home-page .services-section .services-container .service-featured .service-item .image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.home-page .services-section .services-container .service-featured .service-item .overlay {
  position: absolute;
  bottom: 0;
  left: 0;
  height: 100%;
  width: 100%;
  background: rgba(24, 42, 46, 0.589);
  color: #fff;
  padding: 40px;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
}
.home-page .services-section .services-container .service-featured .service-item .overlay .icon {
  width: 40px;
  aspect-ratio: 1/1;
}
.home-page .services-section .services-container .service-featured .service-item .overlay .icon img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.home-page .services-section .services-container .service-featured .service-item .overlay h3 {
  font-size: 24px;
  margin-bottom: 10px;
}
.home-page .services-section .services-container .service-featured .service-item .overlay p {
  font-size: 15px;
  line-height: 1.6;
  opacity: 0.9;
}
.home-page .projects-section {
  background-color: #fff;
}
.home-page .projects-section .section-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 40px;
}
.home-page .projects-section .section-header .section-title {
  font-size: 32px;
  color: #215a65;
}
.home-page .projects-section .projects-grid {
  display: flex;
  flex-wrap: wrap;
  gap: 30px;
}
.home-page .projects-section .projects-grid .project-card {
  position: relative;
  height: 450px;
  border-radius: 12px;
  overflow: hidden;
  cursor: pointer;
  min-width: 500px;
  flex: 1;
  background-color: #215a65;
}
.home-page .projects-section .projects-grid .project-card.wider {
  flex: 1.5;
}
.home-page .projects-section .projects-grid .project-card img {
  opacity: 0.7;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: 0.5s;
}
.home-page .projects-section .projects-grid .project-card .overlay {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  padding: 30px;
  background: linear-gradient(transparent, rgba(0, 0, 0, 0.8));
  color: #fff;
}
.home-page .projects-section .projects-grid .project-card .overlay h3 {
  font-size: 18px;
  font-weight: 700;
  line-height: 1.4;
}
.home-page .projects-section .projects-grid .project-card:hover img {
  opacity: 1;
  transform: scale(1.02);
}
.home-page .partners-section {
  position: relative;
}
.home-page .partners-section .section-bg {
  position: absolute;
  top: -40%;
  left: 0;
  width: 100%;
  height: 160%;
}
.home-page .partners-section .section-bg img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.home-page .partners-section .partners-grid {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  gap: 40px;
  margin-top: 40px;
}
.home-page .partners-section .partners-grid img {
  max-width: 180px;
  max-height: 80px;
  object-fit: contain;
  transition: 0.2s;
}
.home-page .partners-section .partners-grid img:hover {
  opacity: 0.6;
}
.home-page .home-contact-section {
  position: relative;
  z-index: 2;
  background-color: #215a65;
}
.home-page .home-contact-section .bg {
  position: absolute;
  top: 50%;
  left: 50%;
  translate: -50% -50%;
  width: 50%;
  height: 90%;
  z-index: -1;
}
.home-page .home-contact-section .bg img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.home-page .home-contact-section .contact-container {
  display: flex;
  gap: 60px;
  align-items: flex-start;
  color: #fff;
}
.home-page .home-contact-section .contact-container .form-side {
  flex: 1;
  background-color: #fff;
  padding: 40px;
  border-radius: 12px;
  box-shadow: 0 10px 40px rgba(0, 0, 0, 0.1);
}
.home-page .home-contact-section .contact-container .form-side .form-title {
  font-size: 24px;
  color: #215a65;
  margin-bottom: 30px;
  font-weight: 700;
}
.home-page .home-contact-section .contact-container .form-side .input-box {
  margin-bottom: 20px;
}
.home-page .home-contact-section .contact-container .form-side .input-box input,
.home-page .home-contact-section .contact-container .form-side .input-box textarea {
  width: 100%;
  border: none;
  border-bottom: 1px solid #ddd;
  padding: 12px 0;
  font-size: 15px;
  outline: none;
  transition: border-color 0.3s;
}
.home-page .home-contact-section .contact-container .form-side .input-box input:focus,
.home-page .home-contact-section .contact-container .form-side .input-box textarea:focus {
  border-bottom-color: #388594;
}
.home-page .home-contact-section .contact-container .form-side .input-box textarea {
  height: 100px;
  resize: none;
}
.home-page .home-contact-section .contact-container .form-side .submit-btn {
  width: 100%;
  height: 50px;
  background-color: #44acb9;
  color: #fff;
  border: none;
  border-radius: 4px;
  font-size: 18px;
  font-weight: 600;
  cursor: pointer;
}
.home-page .home-contact-section .contact-container .form-side .submit-btn:hover {
  filter: brightness(1.1);
}
.home-page .home-contact-section .contact-container .info-side {
  flex: 1;
  padding-top: 20px;
}
.home-page .home-contact-section .contact-container .info-side .title {
  font-size: 32px;
  margin-bottom: 20px;
  font-weight: 700;
}
.home-page .home-contact-section .contact-container .info-side .description {
  font-size: 16px;
  margin-bottom: 40px;
}
.home-page .home-contact-section .contact-container .info-side .contact-details {
  display: flex;
  flex-direction: column;
  gap: 30px;
}
.home-page .home-contact-section .contact-container .info-side .contact-details .item {
  display: flex;
  align-items: center;
  gap: 20px;
}
.home-page .home-contact-section .contact-container .info-side .contact-details .item i {
  font-size: 20px;
}
.home-page .home-contact-section .contact-container .info-side .contact-details .item div h4 {
  font-size: 16px;
  margin-bottom: 5px;
}
.home-page .home-contact-section .contact-container .info-side .contact-details .item div p {
  font-size: 15px;
}

@media (max-width: 1200px) {
  .home-page .fields-section .fields-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (max-width: 1024px) {
  .home-page .about-section .section-content .about-content {
    flex-direction: column;
  }
  .home-page .stats-section .section-content {
    justify-content: flex-start;
  }
  .home-page .services-section .services-container {
    flex-direction: column;
  }
  .home-page .services-section .services-container .services-grid {
    max-width: unset;
  }
  .home-page .projects-section .projects-grid {
    grid-template-columns: 1fr;
  }
  .home-page .home-contact-section .contact-container {
    flex-direction: column-reverse;
  }
}
@media (max-width: 768px) {
  .home-page #home-slider .slide .content .title {
    font-size: 36px;
  }
  .home-page .section-header {
    flex-direction: column;
    align-items: flex-start !important;
  }
  .home-page .section-header .section-title {
    text-align: start;
  }
  .home-page .services-section .services-container {
    border-radius: 4px !important;
  }
  .home-page .services-section .services-container .service-featured {
    aspect-ratio: 2/1.5;
  }
  .home-page .services-section .services-container .service-featured .overlay {
    padding: 20px !important;
    justify-content: flex-start !important;
  }
  .home-page .services-section .services-container .services-grid .service-card {
    padding: 15px;
  }
  .home-page .projects-section .projects-grid {
    flex-direction: column;
    gap: 20px;
  }
  .home-page .projects-section .projects-grid .project-card {
    min-width: unset !important;
  }
  .home-page .fields-section .fields-grid {
    grid-template-columns: 1fr;
  }
}
#rtl .home-page #home-slider .social-media {
  right: unset;
  left: 100px;
}
#rtl .home-page #home-slider .highlighted-info-list {
  right: unset;
  left: 0;
}
#rtl .home-page .about-section .section-content .sides .image-side .logo {
  right: unset;
  left: 100%;
  translate: -80% -80%;
}
#rtl .home-page .about-section .section-content .sides .text-side .section-title::after {
  right: unset;
  left: 0;
}
#rtl .home-page .about-section .section-content .sides .text-side .link-btn i {
  rotate: 180deg;
}
#rtl .home-page .projects-section .section-content .text-side a i {
  rotate: 180deg;
}
#rtl .home-page .projects-section .section-content .slides-side .arrows {
  flex-direction: row-reverse;
}
#rtl .home-page .partners-section .section-content .link-btn i {
  rotate: 180deg;
}

@media (max-width: 800px) {
  .home-page #home-slider {
    padding: 20px;
  }
  .home-page #home-slider .slider-content .side {
    flex-direction: row-reverse;
    justify-content: space-between;
    width: 100%;
    gap: 30px;
  }
  .home-page #home-slider .slider-content .side .slide {
    padding: 0;
  }
  .home-page #home-slider .slider-content .side .slide .content .title {
    margin-bottom: 20px;
    font-size: 35px;
    line-height: 50px;
  }
  .home-page #home-slider .slider-content .social-media-side {
    display: none;
  }
}
@media (max-width: 480px) {
  .home-page .section {
    padding-top: 50px;
    padding-bottom: 50px;
  }
  .home-page .section .section-content {
    gap: 20px;
    flex-direction: row-reverse;
    align-items: flex-start;
  }
  .home-page .section .section-header {
    margin-bottom: 20px;
  }
  .home-page .about-section .section-content .sides {
    gap: 50px;
  }
  .home-page .about-section .section-content .sides .image-side .logo {
    display: none;
  }
  .home-page .services-section .section-content .slides-side .slide {
    gap: 20px;
  }
  .home-page .services-section .section-content .slides-side .slide .service-item:nth-child(2)::before {
    top: unset;
    bottom: -10%;
  }
  .home-page .projects-section .section-content .sides .text-side a {
    margin-top: 20px;
  }
  .home-page .projects-section .section-content .sides .slides-side {
    gap: 20px;
  }
  .home-page .projects-section .section-content .sides .slides-side .arrows {
    justify-content: flex-end;
    gap: 15px;
  }
  .home-page .projects-section .section-content .sides .slides-side .arrows .arrow-btn {
    width: 35px;
  }
  .home-page .projects-section .section-content .sides .slides-side .arrows .arrow-btn i {
    font-size: 15px;
  }
  .home-page .partners-section {
    padding: 20px !important;
  }
  .home-page .partners-section .partners-grid {
    gap: 20px;
  }
}
.partners-page .partners-list {
  display: grid;
  gap: 20px;
  max-width: 1200px;
  margin: 0 auto;
  grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
}
.partners-page .partners-list .partner-item {
  display: flex;
  flex-direction: column;
  align-items: center;
}
.partners-page .partners-list .partner-item .image {
  position: relative;
  width: 100%;
  aspect-ratio: 2/1;
  border: 1px solid transparent;
  overflow: hidden;
  border-radius: 10px;
  padding: 10px;
  margin-bottom: 20px;
}
.partners-page .partners-list .partner-item .image:hover {
  box-shadow: 0 5px 10px rgba(0, 0, 0, 0.137254902);
  border-color: #ddd;
}
.partners-page .partners-list .partner-item .image img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.partners-page .partners-list .partner-item .partner-name {
  text-align: center;
}

@media (max-width: 480px) {
  .partners-page .partners-list {
    grid-template-columns: repeat(auto-fill, minmax(140px, 1fr));
  }
  .partners-page .partners-list .partner-item .image {
    margin-bottom: 10px;
  }
  .partners-page .partners-list .partner-item .partner-name {
    font-size: 12px;
  }
}
.about-page .about-section {
  background-color: #215a65;
  position: relative;
}
.about-page .about-section .logo-bg {
  position: absolute;
  top: 80%;
  left: 0;
  width: 60px;
  aspect-ratio: 1/2;
}
.about-page .about-section .logo-bg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.about-page .about-section .logo-bg.left {
  top: 40%;
  right: 0;
}
.about-page .about-section .section-content {
  display: flex;
  align-items: flex-start;
  gap: 100px;
  color: #fff;
}
.about-page .about-section .section-content .section-title {
  min-width: 250px;
  color: #fff;
}
.about-page .stats-section {
  background-color: #215a65;
  padding-top: 0;
  padding-bottom: 50px;
}
.about-page .stats-section .section-content {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 20px;
}
.about-page .stats-section .section-content .stat-item {
  display: flex;
  flex-direction: column;
  gap: 10px;
  color: #fff;
  min-width: 150px;
}
.about-page .stats-section .section-content .stat-item .stat-number {
  font-size: 40px;
  font-weight: 700;
  direction: ltr;
  width: fit-content;
}
.about-page .stats-section .section-content .stat-item .stat-title {
  font-size: 15px;
  opacity: 0.8;
}
.about-page .directors-section .directors-list {
  display: flex;
  gap: 50px;
  margin-top: 50px;
}
.about-page .directors-section .directors-list .director-card {
  border-radius: 8px;
  overflow: hidden;
  flex: 1;
}
.about-page .directors-section .directors-list .director-card .image {
  background-color: #e9e9e9;
  width: 100%;
  aspect-ratio: 1/1.1;
  overflow: hidden;
  display: flex;
  justify-content: center;
  align-items: flex-end;
}
.about-page .directors-section .directors-list .director-card .image img {
  height: 100%;
  object-fit: contain;
}
.about-page .directors-section .directors-list .director-card .details {
  background-color: #215a65;
  padding: 20px;
  color: #fff;
  height: 100%;
}
.about-page .directors-section .directors-list .director-card .details .job-title {
  margin-bottom: 6px;
  font-weight: 400;
}
.about-page .directors-section .directors-list .director-card .details .title {
  position: relative;
  font-size: 20px;
  margin-bottom: 16px;
  font-weight: 700;
}
.about-page .directors-section .directors-list .director-card .details .description {
  font-size: 14px;
  margin-top: 4px;
  font-weight: 400;
}
.about-page .organizational-structure-section {
  border-top: 1px solid #ddd;
}
.about-page .organizational-structure-section img {
  width: 100%;
}

#rtl .about-page .directors-section .directors-list .director-card .title::before {
  left: unset;
  right: 0;
}

@media (max-width: 800px) {
  .about-page .about-section .section-content {
    flex-direction: column;
  }
  .about-page .about-section .section-content .section-title {
    margin-bottom: 10px;
  }
  .about-page .about-section .section-content {
    gap: 20px;
  }
  .about-page .stats-section .section-content {
    justify-content: flex-start;
  }
  .about-page .directors-section .directors-list {
    margin-top: 20px;
    flex-direction: column;
  }
}
@media (max-width: 480px) {
  .about-page .directors-section .directors-list {
    gap: 20px;
  }
}
.certificates-page .certificates-section .certificates-box {
  display: flex;
  flex-direction: column;
  gap: 80px;
  margin-top: 50px;
  max-width: 1200px;
  margin: 0 auto;
}
.certificates-page .certificates-section .certificates-box .certificates-btns-list {
  background-color: #e9e9e9;
  padding: 16px 36px;
  border-radius: 8px;
  display: flex;
  justify-content: space-between;
  gap: 20px;
}
.certificates-page .certificates-section .certificates-box .certificates-btns-list .certificate-item {
  border: none;
  font-size: 26px;
  border-bottom: 2px solid transparent;
  font-weight: 500;
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: transparent;
  color: #8f8f8f;
  padding: 5px 10px;
}
.certificates-page .certificates-section .certificates-box .certificates-btns-list .certificate-item.active, .certificates-page .certificates-section .certificates-box .certificates-btns-list .certificate-item:hover {
  color: #215a65;
  border-bottom-color: #215a65;
}
.certificates-page .certificates-section .certificates-box .certificate-preview {
  overflow: hidden;
  margin: 0 auto;
}
.certificates-page .certificates-section .certificates-box .certificate-preview .certificates-group {
  width: 100%;
  display: none;
  align-items: center;
  overflow: hidden;
  gap: 60px;
}
.certificates-page .certificates-section .certificates-box .certificate-preview .certificates-group.show {
  display: flex;
}
.certificates-page .certificates-section .certificates-box .certificate-preview .certificates-group .image {
  flex: 1;
  border: 2px solid #215a65;
  border-radius: 11px;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
}
.certificates-page .certificates-section .certificates-box .certificate-preview .certificates-group .image img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

@media (max-width: 850px) {
  .certificates-page .certificates-section .certificates-box {
    gap: 20px;
  }
  .certificates-page .certificates-section .certificates-box .certificates-btns-list {
    gap: 10px;
    padding: 8px;
  }
  .certificates-page .certificates-section .certificates-box .certificates-btns-list .certificate-item {
    width: fit-content;
    padding: 3px 7px;
    font-size: 14px;
    border-width: 1px;
  }
  .certificates-page .certificates-section .certificates-box .certificate-preview .certificates-group {
    flex-direction: column;
    gap: 20px;
  }
}
.fields-page .fields-section {
  position: relative;
}
.fields-page .fields-section .section-content .fields-list {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(350px, 1fr));
  gap: 20px;
  margin-top: 50px;
  position: relative;
  z-index: 2;
}
.fields-page .fields-section .section-content .fields-list .field-card {
  min-height: 400px;
  background-color: #fff;
}
.fields-page .fields-section .section-content .fields-list .field-card .image {
  aspect-ratio: 2/1.6;
  overflow: hidden;
  display: flex;
  justify-content: center;
  align-items: center;
}
.fields-page .fields-section .section-content .fields-list .field-card .image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.fields-page .fields-section .section-content .fields-list .field-card .details {
  color: #fff;
  padding: 20px;
  background-color: #44acb9;
}
.fields-page .fields-section .section-content .fields-list .field-card .details .title {
  font-size: 22px;
  font-weight: 600;
  margin-bottom: 8px;
}
.fields-page .fields-section .section-content .fields-list .field-card .details .description {
  font-size: 16px;
}

.services-page .services-section .section-content .services-list {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(350px, 1fr));
  gap: 20px;
  margin-top: 50px;
  position: relative;
  z-index: 2;
}
.services-page .services-section .section-content .services-list .service-card {
  min-height: 400px;
  border-radius: 8px;
  background-color: #e9e9e9;
  padding: 30px;
}
.services-page .services-section .section-content .services-list .service-card .icon {
  width: 60px;
  aspect-ratio: 1/1;
  overflow: hidden;
  display: flex;
  justify-content: center;
  align-items: center;
  margin-bottom: 22px;
}
.services-page .services-section .section-content .services-list .service-card .icon img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.services-page .services-section .section-content .services-list .service-card .title {
  display: flex;
  gap: 10px;
  font-weight: 600;
  font-size: 30px;
  margin-bottom: 12px;
}
.services-page .services-section .section-content .services-list .service-card .description {
  font-weight: 400;
  font-size: 18px;
}

.projects-page .projects-section .projects-filters {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 20px;
  margin-bottom: 50px;
  position: relative;
  z-index: 2;
}
.projects-page .projects-section .projects-filters .filter-item {
  position: relative;
}
.projects-page .projects-section .projects-filters .filter-item .dropdown-toggle {
  padding: 10px 30px;
  background-color: #f3f3f3;
  border: none;
  border-radius: 4px;
  font-size: 16px;
  font-weight: 500;
  min-width: 150px;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.projects-page .projects-section .projects-filters .filter-item .dropdown-toggle i {
  font-size: 13px;
}
.projects-page .projects-section .projects-filters .filter-item .dropdown-toggle.active {
  box-shadow: 0 0 0 1px #388594;
}
.projects-page .projects-section .projects-filters .filter-item .dropdown {
  display: none;
  width: 100%;
  z-index: 10;
  top: 120%;
}
.projects-page .projects-section .projects-filters .filter-item .dropdown.show {
  display: block;
}
.projects-page .projects-section .projects-list {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(500px, 1fr));
  gap: 30px;
}
@media (max-width: 767px) {
  .projects-page .projects-section .projects-list {
    display: flex !important;
    flex-direction: column;
    gap: 20px;
  }
}
.projects-page .projects-section .projects-list .project-item {
  position: relative;
  aspect-ratio: 16/9;
  overflow: hidden;
  border-radius: 6px;
  display: block;
}
.projects-page .projects-section .projects-list .project-item:hover img {
  scale: 1.03;
  filter: brightness(0.4);
}
.projects-page .projects-section .projects-list .project-item img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: 0.5s;
  filter: brightness(0.6);
}
.projects-page .projects-section .projects-list .project-item .details {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  padding: 20px;
  background: linear-gradient(to top, rgba(0, 0, 0, 0.9), transparent);
  color: #fff;
  z-index: 2;
}
.projects-page .projects-section .projects-list .project-item .details .title {
  font-size: 18px;
  font-weight: 600;
  line-height: 1.4;
}

.project-page .project-details-section .project-details-grid {
  display: flex;
  gap: 50px;
  align-items: flex-start;
  margin-bottom: 50px;
}
.project-page .project-details-section .project-details-grid .project-specs {
  flex: 1;
}
.project-page .project-details-section .project-details-grid .project-specs .spec-item {
  padding: 15px 0;
  border-bottom: 1px solid #eee;
}
.project-page .project-details-section .project-details-grid .project-specs .spec-item .label {
  font-size: 16px;
  font-weight: 700;
  color: #215a65;
  margin-bottom: 5px;
}
.project-page .project-details-section .project-details-grid .project-specs .spec-item .value {
  font-size: 14px;
  color: #555;
}
.project-page .project-details-section .project-details-grid .project-slider-wrapper {
  flex: 1;
  position: relative;
}
.project-page .project-details-section .project-details-grid .project-slider-wrapper .slider {
  width: 100%;
  border-radius: 8px;
  overflow: hidden;
  position: relative;
}
.project-page .project-details-section .project-details-grid .project-slider-wrapper .slider .slides img {
  width: 100%;
  aspect-ratio: 4/3;
  object-fit: cover;
}
.project-page .project-details-section .project-details-grid .project-slider-wrapper .project-slider-wrapper {
  overflow: visible !important;
}
.project-page .project-details-section .project-details-grid .project-slider-wrapper .dots-list {
  position: absolute;
  bottom: -50px;
  left: 50%;
  translate: -50% 0;
  z-index: 5;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 15px;
}
.project-page .project-details-section .project-details-grid .project-slider-wrapper .dots-list button {
  width: 15px;
  aspect-ratio: 1/1;
  border-radius: 50%;
  border: none;
  background-color: #ddd;
  padding: 0;
  cursor: pointer;
  transition: 0.3s;
}
.project-page .project-details-section .project-details-grid .project-slider-wrapper .dots-list button.active {
  background-color: #215a65;
}

@media (max-width: 1000px) {
  .project-page .project-details-section .project-details-grid {
    flex-direction: column;
    gap: 30px;
    margin-bottom: 0;
  }
  .project-page .project-details-section .project-details-grid .project-specs {
    width: 100%;
    margin-top: 30px;
  }
}
@media (max-width: 480px) {
  .project-page .project-details-section .project-details-grid {
    gap: 20px;
  }
  .project-page .project-details-section .project-details-grid .project-slider-wrapper .dots-list {
    bottom: -40px;
  }
}
.contact-page .contact-page-section {
  padding-top: 50px;
  padding-bottom: 50px;
}
.contact-page .contact-page-section .section-content {
  display: flex;
  gap: 60px;
  align-items: flex-start;
}
.contact-page .contact-page-section .section-content .side {
  flex: 1;
}
.contact-page .contact-page-section .section-content .info-side .title {
  font-size: 36px;
  line-height: 1.3;
  color: #215a65;
  margin-bottom: 20px;
  font-weight: 700;
}
.contact-page .contact-page-section .section-content .info-side .description {
  font-size: 16px;
  color: #666;
  margin-bottom: 40px;
  line-height: 1.6;
}
.contact-page .contact-page-section .section-content .info-side .info-list {
  display: flex;
  flex-direction: column;
  gap: 25px;
}
.contact-page .contact-page-section .section-content .info-side .info-list .info-item {
  display: flex;
  align-items: center;
  gap: 20px;
}
.contact-page .contact-page-section .section-content .info-side .info-list .info-item .icon {
  width: 50px;
  aspect-ratio: 1/1;
  background-color: #215a65;
  color: #fff;
  border-radius: 8px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 20px;
  flex-shrink: 0;
}
.contact-page .contact-page-section .section-content .info-side .info-list .info-item .details .label {
  font-size: 18px;
  font-weight: 700;
  color: #215a65;
  margin-bottom: 4px;
}
.contact-page .contact-page-section .section-content .info-side .info-list .info-item .details .value {
  font-size: 15px;
  color: #555;
}
.contact-page .contact-page-section .section-content .form-side {
  background-color: #215a65;
  padding: 40px;
  border-radius: 12px;
  color: #fff;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
}
.contact-page .contact-page-section .section-content .form-side #contact-form .form-title {
  font-size: 28px;
  font-weight: 700;
  margin-bottom: 30px;
  text-align: center;
}
.contact-page .contact-page-section .section-content .form-side #contact-form .input-box {
  margin-bottom: 20px;
}
.contact-page .contact-page-section .section-content .form-side #contact-form .input-box label {
  display: block;
  margin-bottom: 8px;
  font-size: 15px;
  font-weight: 500;
}
.contact-page .contact-page-section .section-content .form-side #contact-form .input-box input,
.contact-page .contact-page-section .section-content .form-side #contact-form .input-box textarea {
  width: 100%;
  background-color: transparent;
  border: none;
  border-bottom: 1px solid rgba(255, 255, 255, 0.4);
  padding: 10px 0;
  color: #fff;
  font-size: 15px;
  outline: none;
  transition: border-color 0.3s;
}
.contact-page .contact-page-section .section-content .form-side #contact-form .input-box input::placeholder,
.contact-page .contact-page-section .section-content .form-side #contact-form .input-box textarea::placeholder {
  color: rgba(255, 255, 255, 0.6);
}
.contact-page .contact-page-section .section-content .form-side #contact-form .input-box input:focus,
.contact-page .contact-page-section .section-content .form-side #contact-form .input-box textarea:focus {
  border-bottom-color: #fff;
}
.contact-page .contact-page-section .section-content .form-side #contact-form .input-box textarea {
  height: 100px;
  resize: none;
}
.contact-page .contact-page-section .section-content .form-side #contact-form .input-box .input-message {
  margin-top: 5px;
  font-size: 12px;
  color: #ff9999;
}
.contact-page .contact-page-section .section-content .form-side #contact-form .submit-btn {
  width: 100%;
  height: 50px;
  background-color: #44acb9;
  color: #fff;
  border: none;
  border-radius: 6px;
  font-size: 18px;
  font-weight: 600;
  cursor: pointer;
  transition: 0.3s;
  margin-top: 10px;
}
.contact-page .contact-page-section .section-content .form-side #contact-form .submit-btn:hover {
  filter: brightness(1.1);
  transform: translateY(-2px);
}
.contact-page .map-section {
  padding-top: 0;
}
.contact-page .map-section .map-box {
  width: 100%;
  border-radius: 20px;
  overflow: hidden;
  box-shadow: 0 5px 15px rgba(0, 0, 0, 0.05);
}
.contact-page .map-section .map-box iframe {
  display: block;
}

@media (max-width: 1024px) {
  .contact-page .contact-page-section .section-content {
    flex-direction: column-reverse;
    gap: 40px;
  }
  .contact-page .contact-page-section .section-content .side {
    width: 100%;
  }
}
@media (max-width: 768px) {
  .contact-page .contact-page-section .section-content .info-side .title {
    font-size: 28px;
  }
  .contact-page .contact-page-section .section-content .form-side {
    padding: 30px 20px;
  }
  .contact-page .contact-page-section .section-content .form-side .form-title {
    font-size: 24px;
  }
}
.contact-section {
  background-color: #215a65;
  color: #fff;
  position: relative;
  z-index: 2;
}
.contact-section .bg {
  position: absolute;
  top: 50%;
  left: 50%;
  translate: -50% -50%;
  width: 50%;
  height: 90%;
  z-index: -1;
}
.contact-section .bg img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.contact-section .contact-grid {
  display: flex;
  gap: 50px;
}
.contact-section .contact-grid .start {
  flex: 1;
}
.contact-section .contact-grid .start .title {
  font-size: 28px;
  line-height: 1.4;
  margin-bottom: 20px;
  font-weight: 700;
}
.contact-section .contact-grid .start .description {
  font-size: 16px;
  opacity: 0.8;
  margin-bottom: 40px;
}
.contact-section .contact-grid .start .contact-info {
  display: flex;
  flex-direction: column;
  gap: 25px;
}
.contact-section .contact-grid .start .contact-info .item {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.contact-section .contact-grid .start .contact-info .item div {
  display: flex;
  align-items: center;
  gap: 8px;
}
.contact-section .contact-grid .start .contact-info .item i {
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 20px;
  color: #fff;
}
.contact-section .contact-grid .start .contact-info .item h3 {
  font-size: 16px;
  font-weight: 700;
}
.contact-section .contact-grid .start .contact-info .item p {
  font-size: 14px;
  opacity: 0.7;
}
.contact-section .contact-grid .start .contact-info .item p a {
  color: #fff;
  text-decoration: none;
  transition: 0.3s;
}
.contact-section .contact-grid .start .contact-info .item p a:hover {
  text-decoration: underline;
}
.contact-section .contact-grid .end {
  flex: 1;
  display: flex;
  justify-content: flex-end;
}
.contact-section .contact-grid .end .form-title {
  font-size: 24px;
  font-weight: 700;
  margin-bottom: 20px;
  color: #215a65;
}
.contact-section .contact-grid .end .project-contact-form {
  background-color: #fff;
  padding: 20px;
  border-radius: 12px;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
  width: 100%;
  max-width: 400px;
}
.contact-section .contact-grid .end .project-contact-form .input-box {
  margin-bottom: 20px;
}
.contact-section .contact-grid .end .project-contact-form .input-box .input {
  border: none;
  border-bottom: 1px solid #e0e0e0;
  border-radius: 0;
  transition: 0.3s;
}
.contact-section .contact-grid .end .project-contact-form .input-box .input:focus-within {
  border-radius: 4px;
  border-color: #388594;
  box-shadow: 0 0 0 3px rgba(56, 133, 148, 0.1);
}
.contact-section .contact-grid .end .project-contact-form .input-box .input input,
.contact-section .contact-grid .end .project-contact-form .input-box .input textarea {
  color: #333;
  background-color: transparent;
  padding: 12px;
}
.contact-section .contact-grid .end .project-contact-form .input-box .input input::placeholder,
.contact-section .contact-grid .end .project-contact-form .input-box .input textarea::placeholder {
  color: #aaa;
  font-size: 14px;
}
.contact-section .contact-grid .end .project-contact-form .submit-btn {
  width: 100%;
  padding: 10px 16px;
  font-weight: 700;
  background-color: #44acb9;
  color: #fff;
  border: none;
  border-radius: 6px;
  cursor: pointer;
  transition: 0.3s;
}
.contact-section .contact-grid .end .project-contact-form .submit-btn:hover {
  filter: brightness(1.1);
  translate: 0 -2px;
}

@media (max-width: 1000px) {
  .contact-section .contact-grid {
    flex-direction: column;
    gap: 40px;
  }
  .contact-section .contact-grid .end .project-contact-form {
    max-width: unset;
  }
}
@media (max-width: 480px) {
  .contact-section {
    padding: 40px 20px;
  }
  .contact-section .contact-grid .start .title {
    font-size: 24px;
  }
  .contact-section .contact-grid .end .project-contact-form {
    padding: 30px 20px;
  }
}
@font-face {
  font-family: "Janna Bold";
  src: url("assets/fonts/Janna LT Bold.ttf") format("truetype");
  font-weight: 600;
  font-style: normal;
}
@font-face {
  font-family: "Janna LT";
  src: url("assets/fonts/Janna LT Regular.ttf") format("truetype");
  font-weight: 400;
  font-style: normal;
}
body {
  display: flex;
  flex-direction: column;
  min-height: 100vh;
}

* {
  font-family: "IBM Plex Sans Arabic", Arial, sans-serif;
  margin: 0;
  padding: 0;
  scroll-behavior: smooth;
  box-sizing: border-box;
}

button {
  background-color: transparent;
  padding: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 8px;
  outline: none;
  border: 1px solid #ddd;
  cursor: pointer;
  transition: 0.2s;
}

.modern-spinner-box {
  display: flex;
  justify-content: center;
  align-items: center;
  width: fit-content;
  height: fit-content;
  padding: 5px;
}
.modern-spinner-box .modern-spinner {
  position: relative;
  width: 20px;
  height: 20px;
  overflow: visible;
  animation: rotateModernSpinner 1.2s linear infinite;
}
@keyframes rotateModernSpinner {
  0% {
    rotate: 0deg;
  }
  100% {
    rotate: 360deg;
  }
}
.modern-spinner-box .modern-spinner circle {
  width: 100%;
  height: 100%;
  fill: none;
  stroke-width: 3;
  stroke: #18444d;
  stroke-linecap: round;
  stroke-dasharray: 59px;
  stroke-dashoffset: 59px;
  animation: animateCircle 3s linear infinite;
}
@keyframes animateCircle {
  0%, 100% {
    stroke-dashoffset: 59px;
  }
  50% {
    stroke-dashoffset: 0;
  }
  50.1% {
    stroke-dashoffset: 118px;
  }
}

#main {
  flex: 1;
}
#main .page-top {
  height: 500px;
  display: flex;
  justify-content: center;
  align-items: center;
  padding-top: 80px;
  background-color: #215a65;
  position: relative;
  overflow: hidden;
  z-index: 2;
}
#main .page-top .nav {
  display: flex;
  align-items: center;
  gap: 7px;
  justify-content: center;
}
#main .page-top .nav a {
  color: #fff;
}
#main .page-top .nav i {
  font-size: 14px;
}
#main .page-top .bg {
  opacity: 0.2;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  z-index: -1;
  display: flex;
  justify-content: center;
  align-items: center;
}
#main .page-top .bg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
@keyframes showPageTopBg {
  0% {
    scale: 1;
  }
  100% {
    scale: 1.06;
  }
}
#main .page-top .content {
  z-index: 2;
  text-align: center;
}
#main .page-top .content .nav {
  color: #fff;
  font-weight: 400;
}
#main .page-top .content .nav a {
  font-weight: 400;
}
#main .page-top .content .nav p {
  font-weight: 400;
}
#main .page-top .content .page-title {
  color: #fff;
  font-size: 40px;
  max-width: 700px;
  padding: 0 20px;
  font-weight: 700;
}
#main .page-content {
  background-color: #fff;
  overflow: hidden;
}

ul {
  list-style: none;
  padding: 0;
  margin: 0;
}

a {
  display: flex;
  align-items: center;
  gap: 8px;
  text-decoration: none;
  color: #388594;
  transition: 0.2s;
  cursor: pointer;
}

.two-lines {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
  text-overflow: ellipsis;
  line-height: 1.4;
  max-height: 2.8em;
  word-break: break-word;
}

.dropdown {
  background-color: #fff;
  border-radius: 4px;
  padding: 10px;
  position: absolute;
  top: 100%;
  right: 0;
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
}

.hide {
  display: none;
}

.scroll-to-top-btn {
  position: fixed;
  bottom: 20px;
  right: 20px;
  width: 40px;
  aspect-ratio: 1/1;
  background-color: #133c44;
  border-radius: 50%;
  border: none;
  color: #fff;
  border: 1px solid rgba(221, 221, 221, 0.5254901961);
  opacity: 0;
  scale: 0;
  box-shadow: 0 3px 5px rgba(0, 0, 0, 0.1294117647);
  transition: 0.2s;
  z-index: 2;
}
.scroll-to-top-btn i {
  font-size: 20px;
}
.scroll-to-top-btn:hover {
  background-color: #215a65;
}
.scroll-to-top-btn.scrolled {
  opacity: 1;
  scale: 1;
}

*::-webkit-scrollbar {
  width: 7px;
  height: 7px;
}

*::-webkit-scrollbar-track {
  background: rgba(136, 136, 136, 0.1921568627);
  border-radius: 10px;
}

*::-webkit-scrollbar-thumb {
  background: #388594;
  border-radius: 10px;
}

*::-webkit-scrollbar-thumb:hover {
  background: #555;
}

.input-box {
  margin-bottom: 20px;
}
.input-box .input {
  display: flex;
  border: 1px solid #d7d7d7;
  border-radius: 4px;
}
.input-box .input .icon {
  width: 40px;
  height: 40px;
  font-size: 16px;
  display: flex;
  justify-content: center;
  align-items: center;
  color: #d7d7d7;
}
.input-box .input input,
.input-box .input textarea {
  border: none;
  outline: none;
  flex: 1;
  padding: 6px;
  border-radius: 4px;
}
.input-box .input input::placeholder,
.input-box .input textarea::placeholder {
  color: #d7d7d7;
}
.input-box .input input {
  height: 40px;
}
.input-box .input textarea {
  height: 150px;
  resize: vertical;
  max-height: 250px;
  min-height: 40px;
}

.input-message {
  color: rgb(255, 79, 79);
  font-size: 13px;
}

.hr {
  opacity: 0.4;
  margin: 20px 0;
}

/* Chrome, Safari, Edge */
input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

/* Firefox */
input[type=number] {
  -moz-appearance: textfield;
}

.showup {
  opacity: 0;
  animation: showup 0.3s forwards;
}
@keyframes showup {
  0% {
    opacity: 0;
    translate: 0 10px;
  }
  100% {
    opacity: 1;
    translate: 0 0;
  }
}

.pagination-box {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: 50px;
}
.pagination-box .pagination-btns-list {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 8px;
}
.pagination-box .pagination-btns-list .pagination-btn {
  width: 35px;
  aspect-ratio: 1/1;
  flex-shrink: 0;
  font-weight: 700;
  border-radius: 4px;
  display: flex;
  justify-content: center;
  align-items: center;
  color: #000;
  font-size: 16px;
  border: 1px solid transparent;
}
.pagination-box .pagination-btns-list .pagination-btn:not(.gap-btn):not(.active):hover {
  background-color: #ececec;
}
.pagination-box .pagination-btns-list .pagination-btn.active {
  border-color: #388594;
}

.nav-list {
  z-index: 2;
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.nav-list .nav-item {
  position: relative;
  color: #000;
  border: none;
  font-size: 18px;
  font-weight: 500;
  transition: 0.5s;
  height: 25px;
}
.nav-list .nav-item::before {
  position: absolute;
  content: "";
  left: 50%;
  top: calc(100% + 5px);
  height: 0;
  width: 2px;
  translate: -50% 0;
  transition: 0.5s;
  border-radius: 20px;
  background-color: #ddd;
}
.nav-list .nav-item.active {
  color: #388594;
  margin-bottom: 80px;
  font-weight: 700;
}
.nav-list .nav-item.active::before {
  height: 80px;
}
.nav-list .nav-item:hover {
  color: #388594;
}

#loader {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  background-color: #133c44;
  z-index: 3;
  display: flex;
  justify-content: center;
  align-items: center;
}
#loader .center {
  position: relative;
  width: 200px;
  aspect-ratio: 1/1;
}
#loader .center img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: contain;
}
#loader .center .spinner {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 5px solid #ddd;
  border-radius: 50%;
  border-top-color: transparent;
  border-bottom-color: transparent;
  animation: rotateLoader 0.7s linear infinite;
}
@keyframes rotateLoader {
  0% {
    rotate: 0deg;
  }
  100% {
    rotate: 360deg;
  }
}

.report-item,
.file-item {
  width: 100%;
}
.report-item .report-box,
.report-item .file-box,
.file-item .report-box,
.file-item .file-box {
  background-color: #f6f6f6;
  display: flex;
  align-items: center;
  justify-content: space-between;
  border-radius: 10px;
  padding: 20px;
}
.report-item .report-box .start,
.report-item .file-box .start,
.file-item .report-box .start,
.file-item .file-box .start {
  display: flex;
  align-items: center;
  gap: 10px;
}
.report-item .report-box .start a,
.report-item .file-box .start a,
.file-item .report-box .start a,
.file-item .file-box .start a {
  color: #000;
  text-decoration: underline;
  font-weight: 600;
}
.report-item .report-box .start a:hover,
.report-item .file-box .start a:hover,
.file-item .report-box .start a:hover,
.file-item .file-box .start a:hover {
  color: #215a65;
}
.report-item .report-box .start img,
.report-item .file-box .start img,
.file-item .report-box .start img,
.file-item .file-box .start img {
  width: 40px;
}
.report-item .report-box .end .download-btn,
.report-item .file-box .end .download-btn,
.file-item .report-box .end .download-btn,
.file-item .file-box .end .download-btn {
  background-color: #215a65;
  color: #fff;
  border-radius: 4px;
  padding: 3px 10px;
  font-weight: 500;
}
.report-item .report-box .end .download-btn i,
.report-item .file-box .end .download-btn i,
.file-item .report-box .end .download-btn i,
.file-item .file-box .end .download-btn i {
  transition: 0.2s;
}
.report-item .report-box .end .download-btn:hover,
.report-item .file-box .end .download-btn:hover,
.file-item .report-box .end .download-btn:hover,
.file-item .file-box .end .download-btn:hover {
  filter: brightness(1.2);
}

pre {
  white-space: pre-wrap;
  word-wrap: break-word;
  max-width: 100%;
}

.section {
  padding: 100px 50px;
  scroll-margin-top: 80px;
}
.section .section-content {
  position: relative;
  margin: 0 auto;
  max-width: 1400px;
  z-index: 2;
}
.section .section-content .section-title {
  color: #215a65;
  font-size: 35px;
}
.section .section-content .section-description {
  color: #215a65;
  font-size: 18px;
  font-weight: 500;
}
.section .top {
  display: flex;
  justify-content: space-between;
  gap: 20px;
}
.section .top .dots-list {
  height: 65px;
  display: flex;
  align-items: center;
  gap: 10px;
}
.section .top .dots-list .dot {
  display: flex;
  width: 20px;
  aspect-ratio: 1/1;
  border-radius: 50%;
  background-color: #eee;
  cursor: pointer;
  transition: 0.3s;
}
.section .top .dots-list .dot:hover {
  background-color: #ccc;
}
.section .top .dots-list .dot.active {
  background-color: #388594;
}

.section-small-title {
  font-size: 14px;
  color: #388594;
}

.link-btn {
  padding: 5px 15px;
  background-color: #388594;
  color: #fff;
  border-radius: 4px;
  width: fit-content;
}
.link-btn:hover {
  filter: brightness(1.1);
}

.section-title {
  font-size: 35px;
  line-height: 50px;
  margin-bottom: 22px;
  font-weight: 600;
}

.show-on-scroll {
  opacity: 0;
  transform: translateY(30px);
  transition: opacity 0.6s ease, transform 0.6s ease;
}
.show-on-scroll.visible {
  opacity: 1;
  transform: translateY(0);
}

.in-development-box {
  text-align: center;
  padding: 20px;
  font-size: 30px;
  font-weight: 500;
}

#rtl {
  direction: rtl;
}
#rtl #main .page-top .content .nav i {
  rotate: 180deg;
}
#rtl .input-box input {
  direction: rtl;
}
#rtl .section-title::before {
  left: unset;
  right: 0;
}

@media (max-width: 800px) {
  .section::before, .section::after {
    display: none;
  }
}
@media (max-width: 480px) {
  .section {
    padding: 20px;
    scroll-margin-top: 60px;
  }
  .section .top {
    flex-direction: column;
    gap: 0;
  }
  .section .top .dots-list {
    height: fit-content;
    margin-bottom: 20px;
  }
  .section .section-title {
    font-size: 20px;
    margin-bottom: 30px;
  }
  .section .section-title::before {
    bottom: -10px;
  }
  .section .section-description {
    font-size: 14px;
  }
  .pagination-box {
    margin-top: 20px;
  }
  .report-item .report-box {
    padding: 20px;
    flex-direction: column;
    gap: 20px;
  }
  .report-item .report-box .start {
    gap: 8px;
  }
  .report-item .report-box .start img {
    width: 30px;
  }
  #main .page-top {
    padding-top: 60px;
    height: 300px;
  }
  #main .page-top .bg {
    height: 300px;
  }
  #main .page-top .content .page-title {
    font-size: 22px;
  }
}

/*# sourceMappingURL=main.css.map */
