@font-face {
  font-family: "archia-regular";
  src: url(../fonts/Archia-Regular.otf);
}
@font-face {
  font-family: "cairo-regular";
  src: url(../fonts/Cairo-Regular.ttf);
}

/* public */
html,body {
  overflow-x: hidden;
}

body {
  font-family: "archia-regular";
  font-weight: 400;
}

.custom-btn {
  background-color: #74DBEF;
  color: #ffffff;
  font-size: 22px;
  padding: 20px 25px;
  border-radius: 50px;
}

.custom-btn:hover {
  color: #ffffff;
}

.custom-btn:active,
.custom-btn:focus {
  outline: none;
  box-shadow: none;
}

.custom-btn img {
  margin-left: 15px;
}

.title-x-subtitle {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.title-x-subtitle h4 {
  font-size: 40px;
  line-height: 45px;
}
.title-x-subtitle p {
  width: 388px;
  font-size: 20px;
  line-height: 35px;
  text-align: right;
}

/* navbar */
.navbar .container-fluid {
  justify-content: flex-end;
}

.navbar .container-fluid .navbar-brand {
  flex-grow: 1;
}

#navbar {
  padding: 58px 0 50px;
}
#navbar .navbar .navbar-nav {
  margin-left: 168px;
}
#navbar .navbar .navbar-nav li {
  margin-right: 63px;
}
#navbar .navbar .navbar-nav li a {
  color: #222426;
}

#navbar .navbar .navbar-nav li:last-child {
  font-family: "cairo-regular";
}

#navbar .navbar button {
  background: transparent;
  border: none;
}

/* header */
header {
  background-image: url(../img/svg/circle-ornament-orange.svg), url(../img/svg/Ellipse.svg), url(../img/svg/circle-ornament-blue.svg);
  background-repeat: no-repeat;
  background-position: -5% 6%, 150% top, 105% bottom;
  padding: 50px 0 190px;
}
header .sub {
  margin-bottom: 66px;
}
header .header-title h1 {
  font-size: 80px;
  padding-bottom: 35px;
  line-height: 100px;
}
header .sub-title p {
  font-size: 20px;
  line-height: 30px;
  color: #222426;
  opacity: 0.9;
  width: 57%;
}

header .header-img img {
  height: 477px;
  width: 100%;
  margin-bottom: 10px;
}
header .custom-btn {
  float: right;
}
/* about */
#about-us {
  padding-bottom: 200px;
  background: url(../img/svg/Ellipse.svg) no-repeat -60% top;
}
#about-us .row {
  align-items: center;
  margin-top: 40px;
}
#about-us .about-us-details {
  margin-bottom: 40px;
}
#about-us .about-us-details h2 {
  font-size: 70px;
  line-height: 80px;
  width: 80%;
  margin-bottom: 20px;
}

/* our vision */
#our-vision {
  background: url(../img/svg/vision-bg-icon.svg) no-repeat 6% 3%;
  background-color: #060606;
  padding: 80px 0;
}
#our-vision .img-content {
  display: flex;
  justify-content: center;
  margin-bottom: 30px;
}
#our-vision .img-content img {
  width: 90%;
}
#our-vision .vision-details {
  width: 75%;
  color: #ffffff;
}
#our-vision .vision-details h3 {
  opacity: 0.9;
  font-size: 40px;
  line-height: 45px;
  margin-bottom: 50px;
}
#our-vision .vision-details .para h5 {
  font-size: 30px;
  margin-bottom: 15px;
  opacity: 0.8;
}
#our-vision .vision-details .para p {
  font-size: 18px;
  line-height: 30px;
  opacity: 0.7;
  margin-bottom: 45px;
}

/* our principles */
#our-principles {
  padding: 200px 0;
}
#our-principles .principle-content {
  margin-top: 66px;
}
#our-principles .principle-content .row .col-lg-3 {
  justify-content: center;
  display: flex;
}
#our-principles .principle-content .principle-box {
  width: 260px;
  height: 300px;
  color: #ffffff;
  padding: 30px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  margin-bottom: 20px;
}
#our-principles .principle-content .principle-box img {
  margin-bottom: 22px;
}
#our-principles .principle-content .principle-box h6 {
  font-size: 24px;
  line-height: 35px;
  opacity: 0.9;
}
#our-principles .principle-content .principle-box p {
  font-size: 12px;
  line-height: 20px;
  opacity: 0.8;
}

/* our services */
#our-services {
  background-image: url(../img/svg/sq-ornament-orange.svg), url(../img/svg/sq-ornament-blue.svg);
  background-repeat: no-repeat;
  background-position: 107% 0, -7% 56%, 107% 0;
  padding-bottom: 130px;
}
#our-services .services-content {
  margin-top: 66px;
}
#our-services .services-content .row:last-child {
  align-items: flex-end;
  margin-top: -75px;
}

#our-services .services-content .service .img-1 {
  width: 100%;
  height: 507px;
}
#our-services .services-content .service .img-2 {
  width: 100%;
  height: 329px;
}
#our-services .services-content .service h4 {
  font-size: 30px;
  line-height: 32px;
  opacity: 0.9;
  margin: 30px 0 10px;
}
#our-services .services-content .service p {
  font-size: 18px;
  line-height: 30px;
  opacity: 0.8;
  width: 80%;
}

/* footer */
footer {
  background-image: url(../img/footer-bg.webp);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}
footer .overlay {
  background-image: url(../img/svg/footer-bg-icon.svg), url(../img/svg/footer-bg-icon.svg);
  background-repeat: no-repeat;
  background-position: -2% 28%, 57% bottom;
  color: #ffffff;
  padding: 130px 0 140px;
  background-color: #060606;
  opacity: 0.95;
}
footer .overlay .title {
  align-items: center;
}
footer .overlay .footer-title {
  display: flex;
  align-items: center;
}
footer .overlay .footer-title span {
  font-size: 70px;
  opacity: 0.8;
  margin-right: 50px;
  margin-bottom: 0;
}
footer .overlay .footer-title:last-child span {
  opacity: 1;
}
footer .overlay .footer-logo {
  display: flex;
  justify-content: center;
  opacity: 0.9;
}
footer .overlay .contact {
  margin-top: 100px;
}
footer .overlay .contact .info {
  margin-bottom: 30px;
}
footer .overlay .contact .info h6 {
  opacity: 0.9;
  font-size: 24px;
  margin-bottom: 10px;
}
footer .overlay .contact .info span {
  opacity: 0.8;
  font-size: 17px;
}
footer .overlay .contact .info ul li {
  opacity: 0.8;
  margin-top: 7px;
}

@media (max-width: 1200px) {
  header .sub-title p {
    width: 67%;
  }
  #navbar .navbar .navbar-nav {
    margin-left: auto;
  }

  #about-us .about-us-details h2 {
    font-size: 50px;
    line-height: 62px;
  }

  #our-vision .img-content img {
    width: 100%;
  }

  footer .overlay .footer-title span {
    font-size: 50px;
  }
}

@media(max-width: 1199px) and (min-width: 992px) {
  #our-vision .img-content {
    height: 100%;
  }
}

@media (max-width: 991px) {
  .navbar .navbar-nav {
    margin-top: 15px;
    border-top: 1px solid #060606;
  }
  #about-us {
    padding-bottom: 100px;
  }
  #our-principles {
    padding-top: 100px;
    padding-bottom: 100px;
  }
  #our-services {
    padding-bottom: 50px;
  }
  #our-services .services-content {
    margin-top: 30px;
  }
  #our-services .services-content .row:last-child {
    margin-top: 0;
  }
  #our-services .services-content .service .img-2 {
    height: auto;
  }
  #our-services .services-content .service {
    margin-bottom: 50px;
  }
  #our-services .services-content .service h4 {
    font-size: 27px;
    margin-top: 10px;
  }
  #our-services .services-content .service p {
    font-size: 14px;
    line-height: 22px;
  }
}
@media (max-width: 860px) {
  #our-services {
    background-position: 120% 0, -20% 60%;
  }
}
@media (max-width: 767px) {
  header {
    background-position: 110% 3%, 150% top, 105% bottom;
  }
  header .header-title h1 {
    font-size: 80px;
    padding-bottom: 35px;
    line-height: 100px;
  }
  header .header-title h1 {
    font-size: 60px;
    padding-bottom: 35px;
    line-height: 70px;
  }

  header .header-img img {
    height: auto;
  }

  header .sub .custom-btn {
    float: left;
    margin-top: 15px;
  }

  .title-x-subtitle {
    flex-direction: column;
    align-items: flex-start;
  }
  .title-x-subtitle h4 {
    margin-bottom: 25px;
  }
  .title-x-subtitle p {
    width: 75%;
    text-align: left;
    line-height: 30px;
  }
  #about-us .about-us-details h2 {
    font-size: 45px;
    line-height: 62px;
  }
  footer .overlay .footer-title span {
    font-size: 45px;
  }
}
@media (max-width: 567px) {
  .custom-btn {
    font-size: 15px;
    padding: 14px 17px;
  }

  header .header-title h1 {
    font-size: 57px;
    line-height: 63px;
  }

  header .sub-title p {
    width: auto;
  }

  #our-vision .vision-details {
    width: 100%;
  }

  footer .contact {
    padding: 0 30px;
  }

  footer .overlay .footer-title {
    padding: 5px 20px;
  }
  footer .overlay .footer-logo {
    margin-top: 35px;
  }
  footer .overlay .footer-title span {
    font-size: 38px;
    margin-right: 0;
  }
}
@media (max-width: 470px) {
  #about-us .about-us-details h2 {
    width: auto;
  }
}

@media (max-width: 400px) {
  /* global */
  header {
    background-position: 160% 3%, 125% top, 130% bottom;
  }
  header .header-title h1 {
    font-size: 42px;
    line-height: 50px;
  }
  #about-us .about-us-details h2 {
      font-size: 37px;
      line-height: 55px;
  }
  #our-vision .vision-details h3 {
      font-size: 32px;
  }
  #our-services {
    background-position: 145% 200px, -20% 60%;
  }
  #our-services .title-x-subtitle p {
      width: 100% !important;
  }
  footer .overlay .footer-logo {
    margin-top: 35px;
    padding-top: 70px;
  }
  footer .overlay .footer-title span {
    font-size: 34px;
    margin-right: 0;
  }
}

/* animation */
.fade-in-right,
.fade-in-left,
.fade-in-bottom,
.fade-in-top {
  position: relative;
  opacity: 0;
}
.fade-in-right {
  right: 60px;
}

.fade-in-left {
  left: 60px;
}

.fade-in-bottom {
  bottom: 60px;
}

.fade-in-top {
  top: 60px;
}