/* =========== GOOGLE FONTS ========= */
@import url("https://fonts.googleapis.com/css2?family=Fira+Sans:wght@300;400;500;600;700;800;900&family=Heebo:wght@300;400;500;600;700;800;900&display=swap");
/* ============================= 
    COMMON CSS
================================ */
html {
  scroll-behavior: smooth;
}

body {
  font-family: "Heebo", sans-serif;
  color: #585978;
}

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

a {
  text-decoration: none;
  transition: all 0.3s ease-out 0s;
}

a:hover {
  text-decoration: none;
}

button {
  transition: all 0.3s ease-out 0s;
}

@media (max-width: 767px) {
  .container {
    padding: 0 30px;
  }
}

/* ============ scroll-top =============== */
.scroll-top {
  width: 45px;
  height: 45px;
  background: #2F80ED;
  display: none;
  justify-content: center;
  align-items: center;
  font-size: 18px;
  color: #ffffff;
  border-radius: 5px;
  position: fixed;
  bottom: 30px;
  right: 30px;
  z-index: 9;
  cursor: pointer;
  transition: all 0.3s ease-out 0s;
}

.scroll-top:hover {
  color: #ffffff;
  background: rgba(47, 128, 237, 0.8);
}

/* ============================= 
    PRELOADER CSS
================================ */
.preloader {
  /* Body Overlay */
  position: fixed;
  top: 0;
  left: 0;
  display: table;
  height: 100%;
  width: 100%;
  /* Change Background Color */
  background: #ffffff;
  z-index: 99999;
}

.preloader .loader {
  display: table-cell;
  vertical-align: middle;
  text-align: center;
}

.preloader .loader .spinner {
  position: absolute;
  left: 50%;
  top: 50%;
  width: 64px;
  margin-left: -32px;
  z-index: 18;
  pointer-events: none;
}

.preloader .loader .spinner .spinner-container {
  pointer-events: none;
  position: absolute;
  width: 100%;
  padding-bottom: 100%;
  top: 50%;
  left: 50%;
  margin-top: -50%;
  margin-left: -50%;
  animation: spinner-linspin 1568.2353ms linear infinite;
}

.preloader .loader .spinner .spinner-container .spinner-rotator {
  position: absolute;
  width: 100%;
  height: 100%;
  animation: spinner-easespin 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both;
}

.preloader .loader .spinner .spinner-container .spinner-rotator .spinner-left {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  overflow: hidden;
  right: 50%;
}

.preloader .loader .spinner .spinner-container .spinner-rotator .spinner-right {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  overflow: hidden;
  left: 50%;
}

.preloader .loader .spinner-circle {
  box-sizing: border-box;
  position: absolute;
  width: 200%;
  height: 100%;
  border-style: solid;
  /* Spinner Color */
  border-color: #2F80ED #2F80ED #E9E9E9;
  border-radius: 50%;
  border-width: 6px;
}

.preloader .loader .spinner-left .spinner-circle {
  left: 0;
  right: -100%;
  border-right-color: #E9E9E9;
  animation: spinner-left-spin 1333ms cubic-bezier(0.4, 0, 0.2, 1) infinite both;
}

.preloader .loader .spinner-right .spinner-circle {
  left: -100%;
  right: 0;
  border-left-color: #E9E9E9;
  animation: right-spin 1333ms cubic-bezier(0.4, 0, 0.2, 1) infinite both;
}

/* Preloader Animations */

@keyframes spinner-linspin {
  to {
    transform: rotate(360deg);
  }
}

@keyframes spinner-easespin {
  12.5% {
    transform: rotate(135deg);
  }
  25% {
    transform: rotate(270deg);
  }
  37.5% {
    transform: rotate(405deg);
  }
  50% {
    transform: rotate(540deg);
  }
  62.5% {
    transform: rotate(675deg);
  }
  75% {
    transform: rotate(810deg);
  }
  87.5% {
    transform: rotate(945deg);
  }
  to {
    transform: rotate(1080deg);
  }
}

@keyframes spinner-left-spin {
  0% {
    transform: rotate(130deg);
  }
  50% {
    transform: rotate(-5deg);
  }
  to {
    transform: rotate(130deg);
  }
}

@keyframes right-spin {
  0% {
    transform: rotate(-130deg);
  }
  50% {
    transform: rotate(5deg);
  }
  to {
    transform: rotate(-130deg);
  }
}

/* ============================= 
    TYPOGRAPHY CSS
================================ */
h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6 {
  font-weight: 700;
  color: #323450;
  margin-bottom: 0;
  font-family: "Fira Sans", sans-serif;
}

h1, .h1 {
  font-size: 80px;
  letter-spacing: .7px;
}

h2, .h2 {
  font-size: 60px;
  letter-spacing: .7px;
}

h3, .h3 {
  font-size: 40px;
  letter-spacing: .4px;
}

h4, .h4 {
  font-size: 30px;
  letter-spacing: .35px;
}

h5, .h5 {
  font-size: 24px;
}

h6, .h6 {
  font-size: 20px;
}

.font-weight-bold {
  font-weight: 700;
}

.font-weight-semi-bold {
  font-weight: 600;
}

.font-weight-medium {
  font-weight: 500;
}

.font-weight-regular {
  font-weight: 400;
}

.font-weight-light {
  font-weight: 300;
}

.body-font-size {
  font-size: 16px;
}

.font-size-sm {
  font-size: 14px;
}

.font-size-xs {
  font-size: 12px;
}

.caption-font-size {
  font-size: 14px;
}

p {
  font-size: 16px;
  line-height: 24px;
  margin-bottom: 0px;
}

/* ============================= 
    BUTTONS CSS
================================ */
.button {
  height: 44px;
  font-size: 18px;
  font-weight: 500;
  box-sizing: border-box;
  line-height: 1;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  background: #2F80ED;
  color: #ffffff;
  border: 1px solid transparent;
  position: relative;
  z-index: 1;
  padding: 0 25px;
  overflow: hidden;
}

.button i {
  padding-left: 20px;
}

.button::before {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  width: 0;
  height: 0;
  padding: 50%;
  border-radius: 50%;
  margin: auto;
  background: rgba(0, 0, 0, 0.1);
  z-index: -1;
  transition: all .4s linear;
  transform: translate3d(-50%, -50%, 0) scale(0);
}

.button:hover {
  color: #ffffff;
}

.button:hover::before {
  transform: translate3d(-50%, -50%, 0) scale(1.5);
}

.button.border-button {
  background: transparent;
  color: #2F80ED;
  border-color: #2F80ED;
}

.button.border-button::before {
  background: rgba(47, 128, 237, 0.16);
}

.button-lg {
  height: 64px;
}

.button-sm {
  height: 34px;
  font-size: 16px;
  font-weight: 400;
}


/* =========================================================
   IT SOLUTIONS — ABOUT BREADCRUMB
========================================================= */

.it-about-breadcrumb {
  position: relative;
  width: 100%;
  min-height: 390px;
  display: flex;
  align-items: center;
  overflow: hidden;
  background: transparent !important;
  /* background: #07111f; */
}

.it-about-breadcrumb-bg {
  /* position: absolute;
  inset: 0;
  background-image: url("assets/img/breadcrumb/about-breadcrumb.jpg");
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  transform: scale(1.02); */

  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 0;
  background-image: url("../img/breadcrumb/about-breadcrumb.jpg");
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  transform: scale(1.02);
}

.it-about-breadcrumb-overlay {
  /* position: absolute;
  inset: 0;
  background:
    linear-gradient(
      90deg,
      rgba(4, 13, 27, 0.94) 0%,
      rgba(5, 17, 34, 0.78) 45%,
      rgba(4, 13, 27, 0.70) 100%
    ); */

    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
    background: linear-gradient(
      90deg,
      rgba(4, 13, 27, 0.88) 0%,
      rgba(5, 17, 34, 0.60) 50%,
      rgba(4, 13, 27, 0.45) 100%
    );
}

.it-about-breadcrumb .container {
  position: relative;
  z-index: 2;
}

.it-about-breadcrumb-content {
  /* position: relative;
  z-index: 2;
  text-align: center;
  padding: 90px 0 80px; */

  position: relative;
  z-index: 3;
  text-align: center;
  padding: 90px 0 80px;
}

.it-about-breadcrumb-label {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 16px;
  color: #4f9cff;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 2.5px;
  text-transform: uppercase;
}

.it-about-breadcrumb-label::before,
.it-about-breadcrumb-label::after {
  content: "";
  width: 28px;
  height: 1px;
  background: #4f9cff;
}

.it-about-breadcrumb-content h1 {
  margin: 0 0 20px;
  color: #ffffff;
  font-size: 58px;
  line-height: 1.1;
  font-weight: 700;
  letter-spacing: -1px;
}

.it-about-breadcrumb-nav {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  color: rgba(255, 255, 255, 0.65);
  font-size: 15px;
}

.it-about-breadcrumb-nav a {
  color: #ffffff;
  text-decoration: none;
  transition: 0.3s ease;
}

.it-about-breadcrumb-nav a:hover {
  color: #4f9cff;
}

.it-about-breadcrumb-nav i {
  color: #4f9cff;
  font-size: 13px;
}

.it-about-breadcrumb-nav span {
  color: rgba(255, 255, 255, 0.65);
}


/* =========================================================
   RESPONSIVE
========================================================= */

@media (max-width: 991px) {

  .it-about-breadcrumb {
    min-height: 340px;
  }

  .it-about-breadcrumb-content {
    padding: 75px 0 65px;
  }

  .it-about-breadcrumb-content h1 {
    font-size: 48px;
  }
}

@media (max-width: 767px) {

  .it-about-breadcrumb {
    min-height: 300px;
  }

  .it-about-breadcrumb-content {
    padding: 65px 0 55px;
  }

  .it-about-breadcrumb-content h1 {
    font-size: 40px;
  }

  .it-about-breadcrumb-label {
    font-size: 11px;
    letter-spacing: 2px;
  }

  .it-about-breadcrumb-nav {
    font-size: 14px;
  }
}

@media (max-width: 480px) {

  .it-about-breadcrumb {
    min-height: 270px;
  }

  .it-about-breadcrumb-content {
    padding: 55px 0 45px;
  }

  .it-about-breadcrumb-content h1 {
    font-size: 34px;
  }
}


/* ============================= 
    HEADER-6 CSS
================================ */
.header {
  background: #ffffff;
}

/* @media only screen and (min-width: 768px) and (max-width: 991px) {
  .header.header-6 .header-action {
    position: absolute;
    right: 60px;
  }
}

@media (max-width: 767px) {
  .header.header-6 .header-action {
    position: absolute;
    right: 60px;
  }
}

.header.header-6 .header-action a {
  font-size: 16px;
  color: #585978;
  padding: 12px;
}

.header.header-6 .navbar {
  padding: 20px 0;
  border-radius: 0px;
  position: relative;
  transition: all 0.3s ease-out 0s;
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
  .header.header-6 .navbar {
    padding: 17px 0;
  }
}

@media (max-width: 767px) {
  .header.header-6 .navbar {
    padding: 17px 0;
  }
}

.header.header-6 .navbar-brand {
  padding: 0;
}

.header.header-6 .navbar-brand img {
  max-width: 180px;
}

.header.header-6 .navbar-toggler {
  padding: 0;
}

.header.header-6 .navbar-toggler:focus {
  outline: none;
  box-shadow: none;
}

.header.header-6 .navbar-toggler .toggler-icon {
  width: 30px;
  height: 2px;
  background-color: #323450;
  display: block;
  margin: 5px 0;
  position: relative;
  transition: all 0.3s ease-out 0s;
}

.header.header-6 .navbar-toggler.active .toggler-icon:nth-of-type(1) {
  transform: rotate(45deg);
  top: 7px;
}

.header.header-6 .navbar-toggler.active .toggler-icon:nth-of-type(2) {
  opacity: 0;
}

.header.header-6 .navbar-toggler.active .toggler-icon:nth-of-type(3) {
  transform: rotate(135deg);
  top: -7px;
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
  .header.header-6 .navbar-collapse {
    position: absolute;
    top: 100%;
    left: 0;
    width: 100%;
    background-color: #ffffff;
    z-index: 9;
    box-shadow: 0px 15px 20px 0px rgba(0, 0, 0, 0.1);
    padding: 5px 12px;
  }
}

@media (max-width: 767px) {
  .header.header-6 .navbar-collapse {
    position: absolute;
    top: 100%;
    left: 0;
    width: 100%;
    background-color: #ffffff;
    z-index: 9;
    box-shadow: 0px 15px 20px 0px rgba(50, 52, 80, 0.1);
    padding: 5px 12px;
  }
}

.header.header-6 .navbar-nav .nav-item {
  position: relative;
}

.header.header-6 .navbar-nav .nav-item a {
  font-size: 16px;
  font-weight: 500;
  color: #585978;
  transition: all 0.3s ease-out 0s;
  padding: 7px 15px;
  margin: 0 3px;
  position: relative;
  display: inline-block;
  z-index: 1;
  border: 1px solid transparent;
  border-radius: 30px;
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
  .header.header-6 .navbar-nav .nav-item a {
    display: inline-block;
    padding: 6px 20px;
    color: #323450;
  }
}

@media (max-width: 767px) {
  .header.header-6 .navbar-nav .nav-item a {
    display: inline-block;
    padding: 6px 20px;
    color: #323450;
  }
}

.header.header-6 .navbar-nav .nav-item a:hover, .header.header-6 .navbar-nav .nav-item a.active {
  color: #2F80ED;
  border-color: #2F80ED;
}

.header.header-6 .navbar-nav .nav-item:hover .sub-menu {
  top: 100%;
  opacity: 1;
  visibility: visible;
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
  .header.header-6 .navbar-nav .nav-item:hover .sub-menu {
    top: 0;
  }
}

@media (max-width: 767px) {
  .header.header-6 .navbar-nav .nav-item:hover .sub-menu {
    top: 0;
  }
}

.header.header-6 .navbar-nav .nav-item .sub-menu {
  width: 200px;
  background-color: #ffffff;
  box-shadow: 0px 0px 20px 0px rgba(0, 0, 0, 0.1);
  position: absolute;
  top: 110%;
  left: 0;
  opacity: 0;
  visibility: hidden;
  transition: all 0.3s ease-out 0s;
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
  .header.header-6 .navbar-nav .nav-item .sub-menu {
    position: relative;
    width: 100%;
    top: 0;
    display: none;
    opacity: 1;
    visibility: visible;
  }
}

@media (max-width: 767px) {
  .header.header-6 .navbar-nav .nav-item .sub-menu {
    position: relative;
    width: 100%;
    top: 0;
    display: none;
    opacity: 1;
    visibility: visible;
  }
}

.header.header-6 .navbar-nav .nav-item .sub-menu li {
  display: block;
}

.header.header-6 .navbar-nav .nav-item .sub-menu li a {
  display: block;
  padding: 8px 20px;
  color: #000000;
}

.header.header-6 .navbar-nav .nav-item .sub-menu li a.active, .header.header-6 .navbar-nav .nav-item .sub-menu li a:hover {
  padding-left: 25px;
  color: #2F80ED;
}

.header.header-6 .navbar-nav .sub-nav-toggler {
  display: none;
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
  .header.header-6 .navbar-nav .sub-nav-toggler {
    display: block;
    position: absolute;
    right: 0;
    top: 0;
    background: none;
    color: #000000;
    font-size: 18px;
    border: 0;
    width: 30px;
    height: 30px;
  }
}

@media (max-width: 767px) {
  .header.header-6 .navbar-nav .sub-nav-toggler {
    display: block;
    position: absolute;
    right: 0;
    top: 0;
    background: none;
    color: #000000;
    font-size: 18px;
    border: 0;
    width: 30px;
    height: 30px;
  }
}

.header.header-6 .navbar-nav .sub-nav-toggler span {
  width: 8px;
  height: 8px;
  border-left: 1px solid #000000;
  border-bottom: 1px solid #000000;
  transform: rotate(-45deg);
  position: relative;
  top: -5px;
}

/* ============================= 
    HERO-5 CSS
================================
.hero-section-wrapper-5 {
  background: #ffffff;
  position: relative;
}

.hero-section-wrapper-5 .header {
  position: absolute;
  width: 100%;
  top: 0;
  left: 0;
  z-index: 2;
  background: transparent;
}

.hero-section-wrapper-5 .header.sticky {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 2;
  background: #ffffff;
  box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.1);
}

.hero-section-wrapper-5 .hero-style-5 {
  position: relative;
  z-index: 1;
  padding: 270px 0 140px;
}

@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .hero-section-wrapper-5 .hero-style-5 {
    padding: 120px 0 50px;
  }
}

@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .hero-section-wrapper-5 .hero-style-5 {
    padding: 120px 0 50px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
  .hero-section-wrapper-5 .hero-style-5 {
    padding: 70px 0 30px;
  }
}

@media (max-width: 767px) {
  .hero-section-wrapper-5 .hero-style-5 {
    padding: 50px 0 0px;
  }
}

.hero-section-wrapper-5 .hero-style-5 .hero-content-wrapper {
  padding: 100px 0;
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
  .hero-section-wrapper-5 .hero-style-5 .hero-content-wrapper {
    padding-bottom: 50px;
  }
}

@media (max-width: 767px) {
  .hero-section-wrapper-5 .hero-style-5 .hero-content-wrapper {
    padding-bottom: 50px;
  }
}

.hero-section-wrapper-5 .hero-style-5 .hero-content-wrapper h2 {
  margin-bottom: 30px;
}

@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .hero-section-wrapper-5 .hero-style-5 .hero-content-wrapper h2 {
    font-size: 55px;
    line-height: 65px;
  }
}

@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .hero-section-wrapper-5 .hero-style-5 .hero-content-wrapper h2 {
    font-size: 47px;
    line-height: 58px;
  }
}

@media (max-width: 767px) {
  .hero-section-wrapper-5 .hero-style-5 .hero-content-wrapper h2 {
    font-size: 40px;
    line-height: 50px;
  }
}

@media only screen and (min-width: 575px) and (max-width: 767px) {
  .hero-section-wrapper-5 .hero-style-5 .hero-content-wrapper h2 {
    font-size: 47px;
    line-height: 58px;
  }
}

@media only screen and (min-width: 1400px) {
  .hero-section-wrapper-5 .hero-style-5 .hero-content-wrapper p {
    padding-right: 100px;
  }
}

@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .hero-section-wrapper-5 .hero-style-5 .hero-content-wrapper p {
    padding-right: 100px;
  }
}

@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .hero-section-wrapper-5 .hero-style-5 .hero-content-wrapper p {
    padding-right: 30px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
  .hero-section-wrapper-5 .hero-style-5 .hero-content-wrapper p {
    padding-right: 100px;
  }
}

.hero-section-wrapper-5 .hero-style-5 .hero-image {
  margin-bottom: 100px;
  position: relative;
}

.hero-section-wrapper-5 .hero-style-5 .hero-image img {
  width: 100%;
}

.hero-section-wrapper-5 .hero-style-5 .shapes .shape {
  position: absolute;
  z-index: -1;
}

.hero-section-wrapper-5 .hero-style-5 .shapes .shape.shape-1 {
  top: 0;
  right: 0;
}

.hero-section-wrapper-5 .hero-style-5 .shapes .shape.shape-2 {
  top: 25%;
  left: 10%;
}

.hero-section-wrapper-5 .hero-style-5 .shapes .shape.shape-3 {
  left: 0;
  bottom: 0;
} */


/* ================================
   IT SOLUTIONS HEADER
================================ */

.header-6 .navbar-area {
  background: #ffffff;
  padding: 12px 0;
  box-shadow: 0 2px 15px rgba(0, 0, 0, 0.06);
}

.header-6 .navbar {
  display: flex;
  align-items: center;
}

/* LOGO */
.header-6 .navbar-brand {
  margin-right: 30px;
}

.header-6 .navbar-brand img {
  max-width: 180px;
  height: 45px;
  object-fit: contain;
}

/* CENTER NAVIGATION */
.header-6 .navbar-collapse {
  display: flex;
  align-items: center;
}

.header-6 .navbar-nav {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
}

.header-6 .navbar-nav .nav-item {
  position: relative;
}

.header-6 .navbar-nav .nav-item > a {
  color: #172033;
  font-size: 15px;
  font-weight: 600;
  padding: 12px 15px;
  text-decoration: none;
  transition: all 0.3s ease;
}

.header-6 .navbar-nav .nav-item > a:hover,
.header-6 .navbar-nav .nav-item > a.active {
  color: #2563eb;
}

/* ACTIVE NAVBAR LINE */
.header-6 .navbar-nav .nav-item > a.active::after {
  content: "";
  position: absolute;
  left: 15px;
  right: 15px;
  bottom: 2px;
  height: 2px;
  background: #2563eb;
  border-radius: 10px;
}

/* GET STARTED BUTTON */
.header-6 .header-btn {
  margin-left: 20px;
}

.header-6 .main-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: #2563eb;
  color: #ffffff !important;
  font-size: 14px;
  font-weight: 600;
  padding: 12px 24px;
  border-radius: 7px;
  text-decoration: none;
  border: 1px solid #2563eb;
  transition: all 0.3s ease;
}

.header-6 .main-btn:hover {
  background: #1d4ed8;
  border-color: #1d4ed8;
  transform: translateY(-2px);
  box-shadow: 0 8px 20px rgba(37, 99, 235, 0.25);
}

/* MOBILE MENU */
@media (max-width: 991px) {

  .header-6 .navbar-collapse {
    display: block;
    margin-top: 15px;
    padding: 15px 0;
  }

  .header-6 .navbar-nav {
    display: block;
    text-align: center;
  }

  .header-6 .navbar-nav .nav-item > a {
    display: block;
    padding: 12px 15px;
  }

  .header-6 .navbar-nav .nav-item > a.active::after {
    display: none;
  }

  .header-6 .header-btn {
    margin: 15px 0 0;
    text-align: center;
  }

  .header-6 .main-btn {
    width: 100%;
    max-width: 180px;
  }

  .header-6 .navbar-brand img {
    height: 40px;
  }
}

/* ============================= 
    FEATURE-5 CSS
================================ */
/* .feature-style-5 {
  background: #ffffff;
  padding: 100px 0 50px;
}

.feature-style-5 .single-feature {
  padding: 60px 35px;
  border-radius: 30px;
  margin-bottom: 50px;
  box-shadow: 0px 5px 25px rgba(218, 211, 211, 0.3);
  text-align: center;
  border-bottom: 5px solid #585978;
  transition: all 0.3s ease-out 0s;
}

.feature-style-5 .single-feature:hover {
  border-color: #2F80ED;
  box-shadow: 0px 8px 25px rgba(47, 128, 237, 0.35);
}

.feature-style-5 .single-feature .icon {
  color: #2F80ED;
  font-size: 45px;
  display: flex;
  justify-content: center;
  align-items: center;
  margin: auto;
  margin-bottom: 20px;
  position: relative;
  width: 110px;
  height: 100px;
  z-index: 1;
}

.feature-style-5 .single-feature .icon svg {
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
}

.feature-style-5 .single-feature .content h5 {
  font-weight: 600;
  margin-bottom: 25px;
} */



/* ============================= 
    PRICING-4 CSS
===============================
.pricing-style-4 {
  padding: 100px 0;
  background: #F3F3F3;
}

.pricing-style-4 .pricing-active-wrapper {
  position: relative;
}

.pricing-style-4 .pricing-active-wrapper .tns-controls {
  position: absolute;
  z-index: 1;
  display: flex;
  align-items: center;
  bottom: 40px;
  left: -250px;
}

.pricing-style-4 .pricing-active-wrapper .tns-controls:focus {
  outline: none;
}

@media only screen and (min-width: 768px) and (max-width: 991px), (max-width: 767px) {
  .pricing-style-4 .pricing-active-wrapper .tns-controls {
    left: 0;
    width: 100%;
    justify-content: center;
    bottom: 0;
  }
}

.pricing-style-4 .pricing-active-wrapper .tns-controls button {
  width: 64px;
  height: 64px;
  border-radius: 50%;
  background: #ffffff;
  color: #323450;
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 0 10px;
  border: none;
}

.pricing-style-4 .pricing-active-wrapper .tns-controls button:hover {
  background: #2F80ED;
  color: #ffffff;
}

.pricing-style-4 .pricing-active .single-pricing {
  background: #ffffff;
  border-radius: 5px;
  margin: 30px  15px;
  padding: 45px 40px;
  border: 1px solid transparent;
  transition: all 0.3s ease-out 0s;
  position: relative;
  text-align: center;
  box-shadow: 0px 0px 30px rgba(218, 211, 211, 0.42);
}

.pricing-style-4 .pricing-active .single-pricing.active {
  transform: scale(1.15);
  z-index: 9;
}

@media only screen and (min-width: 768px) and (max-width: 991px), (max-width: 767px) {
  .pricing-style-4 .pricing-active .single-pricing {
    padding: 40px 25px;
    margin-bottom: 100px;
  }
}

.pricing-style-4 .pricing-active .single-pricing h6 {
  color: #585978;
  margin-bottom: 15px;
}

@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .pricing-style-4 .pricing-active .single-pricing h6 {
    font-size: 16px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
  .pricing-style-4 .pricing-active .single-pricing h6 {
    font-size: 16px;
  }
}

.pricing-style-4 .pricing-active .single-pricing h4 {
  margin-bottom: 20px;
  font-weight: 500;
}

@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .pricing-style-4 .pricing-active .single-pricing h4 {
    font-size: 24px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
  .pricing-style-4 .pricing-active .single-pricing h4 {
    font-size: 24px;
  }
}

.pricing-style-4 .pricing-active .single-pricing h3 {
  margin-bottom: 18px;
  color: #2F80ED;
}

.pricing-style-4 .pricing-active .single-pricing ul {
  margin-bottom: 30px;
}

.pricing-style-4 .pricing-active .single-pricing ul li {
  font-size: 16px;
  line-height: 34px;
  margin-bottom: 12px;
} */

/* ============================= 
    ABOUT-4 CSS
================================ */
/* .about-style-4 {
  background: #F3F3F3;
  padding: 100px 0 50px;
  position: relative;
  z-index: 1;
}

.about-style-4 .about-content-wrapper ul {
  padding-bottom: 25px;
}

.about-style-4 .about-content-wrapper ul li {
  display: flex;
  align-items: flex-start;
  margin-bottom: 15px;
}

.about-style-4 .about-content-wrapper ul li i {
  width: 16px;
  height: 16px;
  margin-right: 15px;
  margin-top: 4px;
  font-weight: 700;
}

.about-style-4 .about-image {
  margin-top: 30px;
}

@media only screen and (min-width: 992px) and (max-width: 1199px), (max-width: 767px) {
  .about-style-4 .about-image img {
    width: 100%;
  }
} */

.it-about-section {
  position: relative;
  overflow: hidden;
  padding: 105px 0;
  background: #f7faff;
}

.it-about-bg-shape {
  position: absolute;
  width: 520px;
  height: 520px;
  right: -220px;
  top: -190px;
  border-radius: 50%;
  background: #e8f2ff;
  pointer-events: none;
}

.it-about-bg-shape::after {
  content: "";
  position: absolute;
  width: 240px;
  height: 240px;
  left: -100px;
  bottom: -80px;
  border-radius: 50%;
  background: #edf6ff;
}

/* =====================================
  CONTENT
===================================== */
.it-about-content {
  position: relative;
  z-index: 2;
  padding-right: 45px;
}

.it-about-label {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 20px;
  color: #1167ed;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: 2.5px;
}

.it-about-label span {
  width: 38px;
  height: 3px;
  display: inline-block;
  border-radius: 5px;
  background: #1167ed;
}

.it-about-content h2 {
  max-width: 650px;
  margin: 0 0 22px;
  color: #122d5d;
  font-size: clamp(38px, 4vw, 55px);
  line-height: 1.08;
  font-weight: 700;
  letter-spacing: -1.5px;
}

.it-about-content h2 strong {
  display: block;
  color: #1167ed;
  font-weight: 700;
}

.it-about-intro {
  max-width: 600px;
  margin-bottom: 35px;
  color: #627795;
  font-size: 17px;
  line-height: 1.75;
}

/* =====================================
   FEATURES
===================================== */
.it-about-features {
  display: flex;
  flex-direction: column;
  gap: 18px;
  margin-bottom: 35px;
}

.it-feature-item {
  display: flex;
  align-items: center;
  gap: 18px;
  padding: 16px 20px;
  border: 1px solid #e3ebf5;
  border-radius: 14px;
  background: rgba(255,255,255,0.8);
  transition: all 0.3s ease;
}

.it-feature-item:hover {
  transform: translateX(7px);
  border-color: #c9dcfa;
  background: #fff;
  box-shadow: 0 12px 35px rgba(31,82,145,0.08);
}

.it-feature-icon {
  flex: 0 0 52px;
  width: 52px;
  height: 52px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 12px;
  background: #eaf3ff;
  color: #1167ed;
  font-size: 23px;
}

.it-feature-item h4 {
  margin: 0 0 5px;
  color: #183765;
  font-size: 17px;
  font-weight: 700;
}

.it-feature-item p {
  margin: 0;
  color: #70829d;
  font-size: 13px;
  line-height: 1.5;
}

/* =====================================
   BUTTON
===================================== */

.it-about-btn {
  display: inline-flex;
  align-items: center;
  gap: 20px;
  padding: 16px 25px;
  border-radius: 9px;
  background: #1167ed;
  color: #fff;
  text-decoration: none;
  font-size: 15px;
  font-weight: 700;
  box-shadow: 0 12px 25px rgba(17,103,237,0.18);
  transition: all 0.3s ease;
}

.it-about-btn span {
  font-size: 23px;
  line-height: 0;
  transition: transform 0.3s ease;
}

.it-about-btn:hover {
  color: #fff;
  background: #0b55ca;
  transform: translateY(-3px);
}

.it-about-btn:hover span {
  transform: translateX(5px);
}

/* =====================================
  RIGHT IMAGE ONLY
===================================== */
.it-about-visual {
  position: relative;
  min-height: 560px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.it-about-image {
  position: relative;
  width: 100%;
  height: 540px;
  overflow: hidden;
  border-radius: 28px;
  box-shadow: 0 30px 70px rgba(22,54,96,0.16);
}

.it-about-image::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, rgba(247,250,255,0.08) 0%, rgba(247,250,255,0) 35%);
  pointer-events: none;
}

.it-about-image img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  object-position: center;
}

/* =====================================
   RESPONSIVE
===================================== */
@media (max-width: 1199px) {
  .it-about-content {
    padding-right: 10px;
  }

  .it-about-image {
    height: 500px;
  }
}

@media (max-width: 991px) {
  .it-about-section {
    padding: 80px 0;
  }

  .it-about-content {
    padding-right: 0;
  }

  .it-about-content h2 {
    max-width: 700px;
  }

  .it-about-intro {
    max-width: 700px;
  }

  .it-about-visual {
    min-height: 530px;
    margin-top: 25px;
  }

  .it-about-image {
    width: 100%;
    height: 530px;
  }
}

@media (max-width: 767px) {
  .it-about-section {
    padding: 65px 0;
  }

  .it-about-content h2 {
    font-size: 39px;
    letter-spacing: -1px;
  }

  .it-about-intro {
    font-size: 15px;
  }

  .it-feature-item {
    padding: 14px;
  }

  .it-feature-icon {
    flex: 0 0 45px;
    width: 45px;
    height: 45px;
    font-size: 19px;
  }

  .it-feature-item h4 {
    font-size: 15px;
  }

  .it-feature-item p {
    font-size: 12px;
  }

  .it-about-visual {
    min-height: 450px;
  }

  .it-about-image {
    width: 100%;
    height: 450px;
    border-radius: 22px;
  }
}

@media (max-width: 480px) {
  .it-about-content h2 {
    font-size: 34px;
  }

  .it-about-label {
    font-size: 10px;
  }

  .it-about-visual {
    min-height: 360px;
  }

  .it-about-image {
    height: 360px;
    border-radius: 18px;
  }
}


/* ============================= 
    CONTACT-3 CSS
================================ */
/* .contact-style-3 {
  background: #F3F3F3;
  padding: 100px 0 70px;
  position: relative;
  z-index: 1;
  overflow: hidden;
}

.contact-style-3 .contact-form-wrapper form .single-input {
  position: relative;
  margin-bottom: 20px;
}

.contact-style-3 .contact-form-wrapper form .single-input label {
  display: block;
  width: 100%;
  margin-bottom: 10px;
}

.contact-style-3 .contact-form-wrapper form .single-input textarea,
.contact-style-3 .contact-form-wrapper form .single-input input {
  background: #ffffff;
  border-radius: 5px;
  position: relative;
  padding-right: 20px;
  padding-left: 50px;
  width: 100%;
  border: 1px solid transparent;
  box-shadow: 0px 5px 25px rgba(218, 211, 211, 0.3);
  transition: all 0.3s ease-out 0s;
}

.contact-style-3 .contact-form-wrapper form .single-input textarea::placeholder,
.contact-style-3 .contact-form-wrapper form .single-input input::placeholder {
  font-weight: 300;
  opacity: 1;
  color: 585978;
}

.contact-style-3 .contact-form-wrapper form .single-input textarea:focus,
.contact-style-3 .contact-form-wrapper form .single-input input:focus {
  border-color: #2F80ED;
}

.contact-style-3 .contact-form-wrapper form .single-input input {
  height: 56px;
}

.contact-style-3 .contact-form-wrapper form .single-input textarea {
  padding: 15px 20px;
  padding-left: 50px;
  resize: none;
}

.contact-style-3 .contact-form-wrapper form .single-input i {
  position: absolute;
  left: 21px;
  top: 20px;
}

.contact-style-3 .contact-form-wrapper form .form-button {
  padding-top: 10px;
}

.contact-style-3 .contact-form-wrapper form .form-button button {
  height: 56px;
  border-radius: 5px;
}

.contact-style-3 .contact-form-wrapper form .form-button button i {
  padding-left: 0;
  padding-right: 20px;
}

@media only screen and (min-width: 1400px) {
  .contact-style-3 .left-wrapper {
    margin-left: 60px;
  }
}

@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .contact-style-3 .left-wrapper {
    margin-left: 40px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 991px), (max-width: 767px) {
  .contact-style-3 .left-wrapper {
    margin-top: 50px;
  }
}

.contact-style-3 .left-wrapper .single-item {
  padding: 25px 20px;
  border-radius: 5px;
  background: #ffffff;
  box-shadow: 0px 5px 25px rgba(218, 211, 211, 0.3);
  margin-bottom: 30px;
  display: flex;
  align-items: center;
  transition: all 0.3s ease-out 0s;
}

.contact-style-3 .left-wrapper .single-item:hover {
  box-shadow: 0px 5px 25px rgba(47, 128, 237, 0.3);
}

.contact-style-3 .left-wrapper .single-item .icon {
  max-width: 54px;
  width: 100%;
  height: 54px;
  border-radius: 50%;
  background: #2F80ED;
  color: #ffffff;
  margin-right: 20px;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 24px;
} */

.it-contact-section {
  position: relative;
  overflow: hidden;
  padding: 115px 0 120px;
  background: #f7faff;
}


/* =========================================
   SECTION HEADER
========================================= */
.it-contact-heading {
  max-width: 760px;
  margin: 0 auto 65px;
  text-align: center;
}

.it-contact-eyebrow {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 11px;
  margin-bottom: 18px;
  color: #1167ed;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 3px;
}

.it-contact-eyebrow span {
  width: 32px;
  height: 3px;
  display: inline-block;
  border-radius: 20px;
  background: #1167ed;
}

.it-contact-heading h2 {
  margin: 0 0 20px;
  color: #102d5d;
  font-size: clamp(38px, 4.5vw, 58px);
  line-height: 1.08;
  font-weight: 700;
  letter-spacing: -2px;
}

.it-contact-heading h2 strong {
  color: #1167ed;
  font-weight: 700;
}

.it-contact-heading p {
  max-width: 650px;
  margin: 0 auto;
  color: #74859b;
  font-size: 15px;
  line-height: 1.8;
}


/* =========================================
   MAIN CONTACT WRAPPER
========================================= */
.it-contact-wrapper {
  display: grid;
  grid-template-columns: 1fr 1fr;
  min-height: 690px;
  border-radius: 26px;
  overflow: hidden;
  background: #ffffff;
  box-shadow: 0 25px 70px rgba(25,65,110,.09);
}


/* =========================================
   MAP
========================================= */
.it-contact-map {
  position: relative;
  min-height: 690px;
  padding: 14px;
  background: #102d5d;
}

.it-map-frame {
  position: relative;
  width: 100%;
  height: 100%;
  min-height: 660px;
  overflow: hidden;
  border-radius: 17px;
}

.it-map-frame iframe {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  border: 0;
  filter: grayscale(.15) contrast(.95);
}


/* =========================================
   MAP CARD
========================================= */
.it-map-card {
  position: absolute;
  left: 30px;
  bottom: 30px;
  display: flex;
  align-items: center;
  gap: 15px;
  min-width: 260px;
  padding: 17px 20px;
  border-radius: 14px;
  background: rgba(255,255,255,.96);
  box-shadow: 0 15px 35px rgba(0,0,0,.16);
}

.it-map-pin {
  width: 45px;
  height: 45px;
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 12px;
  background: #1167ed;
  color: #ffffff;
  font-size: 19px;
}

.it-map-card span {
  display: block;
  margin-bottom: 3px;
  color: #1167ed;
  font-size: 9px;
  font-weight: 800;
  letter-spacing: 1.8px;
}

.it-map-card h4 {
  margin: 0;
  color: #173664;
  font-size: 15px;
  font-weight: 700;
}

.it-map-card p {
  margin: 2px 0 0;
  color: #7d8da1;
  font-size: 11px;
}


/* =========================================
   FORM AREA
========================================= */
.it-contact-form-area {
  position: relative;
  padding: 55px 55px 50px;
  background: #ffffff;
}

.it-form-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 20px;
}

.it-form-top > span {
  color: #1167ed;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 2px;
}

.it-form-number {
  color: #d8e4f1;
  font-size: 45px;
  line-height: 1;
  font-weight: 800;
}


/* =========================================
   FORM TITLE
========================================= */
.it-contact-form-area h3 {
  margin: 0 0 15px;
  color: #102d5d;
  font-size: 35px;
  line-height: 1.12;
  font-weight: 700;
  letter-spacing: -1px;
}

.it-contact-form-area h3 strong {
  color: #1167ed;
}

.it-form-description {
  max-width: 450px;
  margin: 0 0 35px;
  color: #8290a4;
  font-size: 13px;
  line-height: 1.7;
}


/* =========================================
   FORM
========================================= */
.it-contact-form {
  width: 100%;
}

.it-form-field {
  margin-bottom: 20px;
}

.it-form-field label {
  display: block;
  margin-bottom: 8px;
  color: #536a86;
  font-size: 9px;
  font-weight: 800;
  letter-spacing: 1.7px;
}

.it-input-box {
  position: relative;
}

.it-input-box i {
  position: absolute;
  left: 17px;
  top: 50%;
  z-index: 2;
  color: #8ba0b8;
  font-size: 16px;
  transform: translateY(-50%);
  transition: color .3s ease;
}

.it-input-box input,
.it-input-box textarea {
  width: 100%;
  border: 1px solid #e0e8f2;
  outline: none;
  border-radius: 10px;
  background: #f8fafd;
  color: #173664;
  font-family: inherit;
  font-size: 13px;
  transition: all .3s ease;
}

.it-input-box input {
  height: 52px;
  padding: 0 17px 0 47px;
}

.it-input-box textarea {
  min-height: 125px;
  resize: vertical;
  padding: 16px 17px 16px 47px;
  line-height: 1.6;
}

.it-input-box input::placeholder,
.it-input-box textarea::placeholder {
  color: #a6b3c2;
}

.it-input-box input:focus,
.it-input-box textarea:focus {
  border-color: #1167ed;
  background: #ffffff;
  box-shadow: 0 0 0 4px rgba(17,103,237,.06);
}

.it-input-box:focus-within i {
  color: #1167ed;
}


/* =========================================
   TWO COLUMNS
========================================= */
.it-form-two-column {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
}


/* =========================================
   FORM BOTTOM
========================================= */
.it-form-bottom {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  margin-top: 7px;
}

.it-contact-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 18px;
  min-width: 170px;
  height: 52px;
  padding: 0 12px 0 22px;
  border: 0;
  border-radius: 9px;
  background: #1167ed;
  color: #ffffff;
  cursor: pointer;
  font-family: inherit;
  font-size: 12px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .7px;
  transition: all .35s ease;
}

.it-contact-button i {
  width: 34px;
  height: 34px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 7px;
  background: rgba(255,255,255,.15);
  font-size: 15px;
  transition: transform .35s ease;
}

.it-contact-button:hover {
  background: #102d5d;
  transform: translateY(-3px);
  box-shadow: 0 12px 28px rgba(17,103,237,.2);
}

.it-contact-button:hover i {
  transform: translate(3px,-3px);
}

.it-form-note {
  display: flex;
  align-items: center;
  gap: 7px;
  color: #9aa8b8;
  font-size: 9px;
  line-height: 1.4;
}

.it-form-note i {
  color: #1167ed;
  font-size: 13px;
}


/* =========================================
   CONTACT INFO STRIP
========================================= */
.it-contact-info-strip {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  margin-top: 18px;
  border: 1px solid #e0e8f2;
  border-radius: 18px;
  background: #ffffff;
  overflow: hidden;
}

.it-contact-info {
  display: flex;
  align-items: center;
  gap: 15px;
  min-height: 100px;
  padding: 20px 25px;
  border-right: 1px solid #e5ebf3;
}

.it-contact-info:last-child {
  border-right: 0;
}

.it-info-icon {
  width: 45px;
  height: 45px;
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 11px;
  background: #f0f6ff;
  color: #1167ed;
  font-size: 17px;
}

.it-contact-info span {
  display: block;
  margin-bottom: 5px;
  color: #99a7b8;
  font-size: 8px;
  font-weight: 800;
  letter-spacing: 1.7px;
}

.it-contact-info a,
.it-contact-info p {
  margin: 0;
  color: #173664;
  font-size: 12px;
  font-weight: 700;
  text-decoration: none;
}

.it-contact-info a:hover {
  color: #1167ed;
}


/* =========================================
   DECORATIVE BACKGROUND
========================================= */
.it-contact-section::before {
  content: "";
  position: absolute;
  width: 480px;
  height: 480px;
  top: -260px;
  right: -210px;
  border: 75px solid rgba(17,103,237,.035);
  border-radius: 50%;
  pointer-events: none;
}

.it-contact-section::after {
  content: "";
  position: absolute;
  width: 300px;
  height: 300px;
  bottom: -190px;
  left: -150px;
  border: 55px solid rgba(17,103,237,.035);
  border-radius: 50%;
  pointer-events: none;
}


/* =========================================
   TABLET
========================================= */
@media (max-width: 991px) {
  .it-contact-section {
    padding: 90px 0 100px;
  }

  .it-contact-heading {
    margin-bottom: 50px;
  }

  .it-contact-wrapper {
    grid-template-columns: 1fr;
  }

  .it-contact-map {
    min-height: 450px;
  }

  .it-map-frame {
    min-height: 420px;
  }

  .it-contact-form-area {
    padding: 50px;
  }

  .it-contact-info-strip {
    grid-template-columns: 1fr;
  }

  .it-contact-info {
    border-right: 0;
    border-bottom: 1px solid #e5ebf3;
  }

    .it-contact-info:last-child {
    border-bottom: 0;
  }
}


/* =========================================
   MOBILE
========================================= */
@media (max-width: 767px) {
  .it-contact-section {
    padding: 70px 0 80px;
  }

  .it-contact-heading {
    margin-bottom: 40px;
  }

  .it-contact-eyebrow {
    font-size: 9px;
    letter-spacing: 2.2px;
  }

  .it-contact-eyebrow span {
    width: 25px;
    height: 2px;
  }

  .it-contact-heading h2 {
    font-size: 37px;
    letter-spacing: -1.2px;
  }

  .it-contact-heading p {
    font-size: 13px;
  }

  .it-contact-wrapper {
    border-radius: 18px;
  }

  .it-contact-map {
    min-height: 370px;
    padding: 10px;
  }

  .it-map-frame {
    min-height: 350px;
    border-radius: 12px;
  }

  .it-map-card {
    left: 20px;
    bottom: 20px;
    min-width: auto;
    right: 20px;
    padding: 13px 15px;
  }

    .it-map-pin {
    width: 40px;
    height: 40px;
  }

  .it-contact-form-area {
    padding: 35px 25px 35px;
  }

  .it-contact-form-area h3 {
    font-size: 28px;
  }

  .it-form-description {
    margin-bottom: 28px;
    font-size: 12px;
  }

  .it-form-two-column {
    grid-template-columns: 1fr;
    gap: 0;
  }

  .it-form-bottom {
    align-items: flex-start;
    flex-direction: column;
  }

  .it-form-note {
    font-size: 9px;
  }
}

/* =========================================
   SMALL MOBILE
========================================= */
@media (max-width: 480px) {
  .it-contact-section {
    padding: 60px 0 70px;
  }

  .it-contact-heading h2 {
    font-size: 31px;
  }

  .it-contact-heading p {
    font-size: 12px;
    line-height: 1.7;
  }

  .it-contact-map {
    min-height: 330px;
  }

  .it-map-frame {
    min-height: 310px;
  }

  .it-map-card {
    gap: 10px;
  }

  .it-map-card h4 {
    font-size: 13px;
  }

  .it-map-card p {
    font-size: 10px;
  }

  .it-contact-form-area {
    padding: 30px 18px;
  }

  .it-form-number {
    font-size: 35px;
  }

  .it-contact-form-area h3 {
    font-size: 25px;
  }

  .it-input-box input {
    height: 49px;
    font-size: 12px;
  }

  .it-input-box textarea {
    font-size: 12px;
  }

  .it-contact-button {
    width: 100%;
  }

  .it-contact-info {
    padding: 18px;
  }
}

/* ============================= 
    FOOTER-4 CSS
================================ */
/* .footer-style-4 {
  background: #F3F3F3;
  padding-top: 80px;
}

.footer-style-4 .widget-wrapper .footer-widget {
  margin-bottom: 50px;
}

.footer-style-4 .widget-wrapper .footer-widget .logo {
  margin-bottom: 30px;
}

.footer-style-4 .widget-wrapper .footer-widget p.desc {
  margin-bottom: 30px;
}

.footer-style-4 .widget-wrapper .footer-widget .socials {
  justify-content: flex-start;
}

.footer-style-4 .widget-wrapper .footer-widget .socials li a {
  background: rgba(47, 128, 237, 0.4);
  margin: 0;
  margin-right: 10px;
  width: 44px;
  height: 44px;
  font-size: 20px;
}

.footer-style-4 .widget-wrapper .footer-widget .socials li a:hover {
  background: #2F80ED;
}

.footer-style-4 .widget-wrapper .footer-widget h6 {
  font-weight: 600;
  color: #585978;
  margin-bottom: 35px;
  margin-top: 10px;
}

.footer-style-4 .widget-wrapper .footer-widget .links li a {
  font-size: 16px;
  line-height: 32px;
  color: #585978;
}

.footer-style-4 .widget-wrapper .footer-widget .links li a:hover {
  color: #2F80ED;
}

.footer-style-4 .widget-wrapper .footer-widget .download-app li a {
  display: inline-flex;
  align-items: center;
  padding: 12px 18px;
  border-radius: 5px;
  background: #ffffff;
  max-width: 200px;
  width: 100%;
  margin-bottom: 12px;
}

.footer-style-4 .widget-wrapper .footer-widget .download-app li a .icon {
  font-size: 35px;
  color: #323450;
  margin-right: 12px;
}

.footer-style-4 .widget-wrapper .footer-widget .download-app li a .text {
  font-size: 14px;
  font-weight: 500;
  color: #585978;
}

.footer-style-4 .widget-wrapper .footer-widget .download-app li a .text b {
  display: block;
  font-size: 20px;
  font-weight: 700;
  font-family: "Fira Sans", sans-serif;
  color: #323450;
}

.footer-style-4 .copyright-wrapper {
  border-top: 1px solid rgba(88, 89, 120, 0.4);
  padding: 20px 0;
}

.footer-style-4 .copyright-wrapper p {
  font-size: 14px;
  font-weight: 500;
  text-align: center;
  color: rgba(88, 89, 120, 0.6);
}

.footer-style-4 .copyright-wrapper p a {
  color: inherit;
}

.footer-style-4 .copyright-wrapper p a:hover {
  color: #2F80ED;
}

.footer-style-4.footer-dark {
  background: #323450;
}

.footer-style-4.footer-dark .widget-wrapper .footer-widget p {
  color: #ffffff;
}

.footer-style-4.footer-dark .widget-wrapper .footer-widget h6 {
  color: #ffffff;
}

.footer-style-4.footer-dark .widget-wrapper .footer-widget .socials li a {
  background: rgba(255, 255, 255, 0.1);
}

.footer-style-4.footer-dark .widget-wrapper .footer-widget .socials li a:hover {
  background: #2F80ED;
}

.footer-style-4.footer-dark .widget-wrapper .footer-widget .links li a {
  color: #ffffff;
}

.footer-style-4.footer-dark .widget-wrapper .footer-widget .links li a:hover {
  color: #2F80ED;
}

.footer-style-4.footer-dark .copyright-wrapper p {
  color: rgba(255, 255, 255, 0.8);
} */


.it-footer {
  position: relative;
  background: #081a35;
  color: #fff;
  overflow: hidden;
  padding-top: 80px;
}

/* Decorative background */
.it-footer::before {
  content: "";
  position: absolute;
  width: 420px;
  height: 420px;
  border: 1px solid rgba(255,255,255,0.05);
  border-radius: 50%;
  top: -180px;
  right: -100px;
}

.it-footer::after {
  content: "";
  position: absolute;
  width: 260px;
  height: 260px;
  border: 1px solid rgba(17,103,237,0.15);
  border-radius: 50%;
  bottom: -140px;
  left: -100px;
}

.it-footer .container {
  position: relative;
  z-index: 2;
}


/* =========================
   CTA
========================= */
.it-footer-cta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 40px;
  padding: 42px 48px;
  margin-bottom: 70px;
  border: 1px solid rgba(255,255,255,0.09);
  border-radius: 24px;
  background: linear-gradient(135deg, rgba(17,103,237,0.18), rgba(255,255,255,0.035));
  position: relative;
  overflow: hidden;
}

.it-footer-cta::after {
  content: "";
  position: absolute;
  width: 170px;
  height: 170px;
  border: 1px solid rgba(255,255,255,0.07);
  border-radius: 50%;
  right: 18%;
  top: -110px;
}

.it-footer-cta-content {
  max-width: 720px;
  position: relative;
  z-index: 2;
}

.it-footer-label {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  color: #5da1ff;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 2.5px;
  margin-bottom: 13px;
}

.it-footer-label::before {
  content: "";
  width: 28px;
  height: 2px;
  background: #1167ed;
}

.it-footer-cta h2 {
  margin: 0 0 12px;
  font-size: 34px;
  line-height: 1.25;
  font-weight: 600;
  color: #fff;
}

.it-footer-cta h2 strong {
  color: #5da1ff;
  font-weight: 700;
}

.it-footer-cta p {
  margin: 0;
  max-width: 650px;
  color: #aebdd2;
  font-size: 14px;
  line-height: 1.8;
}

.it-footer-cta-btn {
  flex-shrink: 0;
  display: inline-flex;
  align-items: center;
  gap: 13px;
  padding: 15px 23px;
  background: #1167ed;
  color: #fff !important;
  border-radius: 9px;
  font-size: 14px;
  font-weight: 700;
  text-decoration: none;
  transition: all 0.3s ease;
  position: relative;
  z-index: 2;
}

.it-footer-cta-btn i {
  font-size: 17px;
  transition: transform 0.3s ease;
}

.it-footer-cta-btn:hover {
  background: #fff;
  color: #1167ed !important;
  transform: translateY(-3px);
}

.it-footer-cta-btn:hover i {
  transform: translate(3px, -3px);
}


/* =========================
   MAIN FOOTER
========================= */
.it-footer-main {
  display: grid;
  grid-template-columns: 1.45fr 0.8fr 1fr 1.25fr;
  gap: 55px;
  padding-bottom: 65px;
}


/* BRAND */
.it-footer-logo {
  display: inline-block;
  margin-bottom: 20px;
}

.it-footer-logo img {
  max-width: 155px;
  max-height: 58px;
  object-fit: contain;
}

.it-footer-brand p {
  max-width: 340px;
  margin: 0 0 25px;
  color: #94a6bd;
  font-size: 13px;
  line-height: 1.9;
}


/* SOCIAL */
.it-footer-social {
  display: flex;
  gap: 9px;
}

.it-footer-social a {
  width: 38px;
  height: 38px;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(255,255,255,0.12);
  border-radius: 50%;
  color: #b7c5d8;
  text-decoration: none;
  transition: all 0.3s ease;
}

.it-footer-social a:hover {
  background: #1167ed;
  border-color: #1167ed;
  color: #fff;
  transform: translateY(-4px);
}


/* COLUMNS */
.it-footer-column {
  padding-top: 7px;
}

.it-footer-heading {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 25px;
}

.it-footer-heading span {
  color: #4f91ed;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 1px;
}

.it-footer-heading h6 {
  margin: 0;
  color: #fff;
  font-size: 15px;
  font-weight: 700;
}

.it-footer-column ul {
  padding: 0;
  margin: 0;
  list-style: none;
}

.it-footer-column ul li {
  margin-bottom: 13px;
}

.it-footer-column ul li a {
  color: #93a5bd;
  font-size: 13px;
  text-decoration: none;
  transition: all 0.25s ease;
  display: inline-block;
}

.it-footer-column ul li a::before {
  content: "→";
  opacity: 0;
  margin-right: -12px;
  color: #4f91ed;
  transition: all 0.25s ease;
}

.it-footer-column ul li a:hover {
  color: #fff;
  transform: translateX(5px);
}

.it-footer-column ul li a:hover::before {
  opacity: 1;
  margin-right: 6px;
}


/* =========================
   CONTACT
========================= */
.it-footer-contact-item {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 18px;
  text-decoration: none;
}

.it-footer-contact-icon {
  width: 39px;
  height: 39px;
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 8px;
  background: rgba(17,103,237,0.12);
  color: #5da1ff;
  font-size: 16px;
}

.it-footer-contact-item small {
  display: block;
  margin-bottom: 3px;
  color: #71869f;
  font-size: 10px;
  text-transform: uppercase;
  letter-spacing: 1px;
}

.it-footer-contact-item strong {
  display: block;
  color: #d8e1ec;
  font-size: 12px;
  font-weight: 500;
  line-height: 1.5;
}


/* =========================
   BOTTOM
========================= */
.it-footer-bottom {
  min-height: 75px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  border-top: 1px solid rgba(255,255,255,0.08);
  position: relative;
}

.it-footer-bottom p {
  margin: 0;
  color: #71859e;
  /* font-size: 11px; */
}

.it-footer-bottom p strong {
  color: #aebed2;
}

.it-footer-bottom-links {
  display: flex;
  align-items: center;
  gap: 15px;
}

.it-footer-bottom-links a {
  color: #71859e;
  /* font-size: 11px; */
  text-decoration: none;
  transition: color 0.25s ease;
}

.it-footer-bottom-links a:hover {
  color: #fff;
}

.it-footer-bottom-links span {
  width: 3px;
  height: 3px;
  border-radius: 50%;
  background: #3c506a;
}

.it-footer-top {
  width: 39px;
  height: 39px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #1167ed;
  color: #fff !important;
  border-radius: 8px;
  text-decoration: none;
  transition: all 0.3s ease;
}

.it-footer-top:hover {
  background: #fff;
  color: #1167ed !important;
  transform: translateY(-3px);
}


/* =========================
   RESPONSIVE
========================= */
@media (max-width: 1199px) {
  .it-footer-main {
    grid-template-columns: 1.4fr 1fr 1fr;
    gap: 45px;
  }

    .it-footer-contact {
    grid-column: span 3;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
  }

  .it-footer-contact .it-footer-heading {
    grid-column: span 3;
  }

  .it-footer-contact-item {
    margin-bottom: 0;
  }
}

@media (max-width: 991px) {
  .it-footer {
    padding-top: 60px;
  }

  .it-footer-cta {
    padding: 35px;
    margin-bottom: 55px;
  }

  .it-footer-cta h2 {
    font-size: 29px;
  }

  .it-footer-main {
    grid-template-columns: 1fr 1fr;
  }

  .it-footer-brand {
    grid-column: span 2;
  }

  .it-footer-contact {
    grid-column: span 2;
    grid-template-columns: 1fr 1fr;
  }

  .it-footer-contact .it-footer-heading {
    grid-column: span 2;
  }
}

@media (max-width: 767px) {
  .it-footer {
    padding-top: 50px;
  }

  .it-footer-cta {
    flex-direction: column;
    align-items: flex-start;
    padding: 28px 25px;
    border-radius: 18px;
  }

  .it-footer-cta h2 {
    font-size: 26px;
  }

  .it-footer-cta p {
    font-size: 13px;
  }

  .it-footer-main {
    grid-template-columns: 1fr;
    gap: 35px;
    padding-bottom: 40px;
  }

  .it-footer-brand,
  .it-footer-contact {
    grid-column: span 1;
  }

  .it-footer-contact {
    display: block;
  }

  .it-footer-contact .it-footer-heading {
    display: flex;
  }

  .it-footer-contact-item {
    margin-bottom: 16px;
  }

  .it-footer-bottom {
    padding: 20px 0;
    flex-wrap: wrap;
  }

  .it-footer-bottom-links {
    order: 3;
    width: 100%;
    justify-content: flex-start;
  }

  .it-footer-top {
    margin-left: auto;
  }
}

@media (max-width: 480px) {
  .it-footer-cta {
    padding: 25px 20px;
  }

  .it-footer-cta h2 {
    font-size: 23px;
  }

  .it-footer-cta-btn {
    width: 100%;
    justify-content: center;
  }

  .it-footer-logo img {
    max-width: 135px;
  }

  .it-footer-bottom-links {
    gap: 9px;
  }
}


/* ============================= 
    DEFAULT CSS
================================ */
.img-bg {
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
}

.socials {
  display: flex;
  justify-content: center;
  align-items: center;
}

.socials li a {
  width: 32px;
  height: 32px;
  border-radius: 50%;
  background: #2F80ED;
  color: #ffffff;
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 3px 8px;
}

input, textarea, button {
  transition: all 0.3s ease-out 0s;
}

input:focus, textarea:focus, button:focus {
  outline: none;
  box-shadow: none;
}

.radius-3 {
  border-radius: 3px;
}

.radius-10 {
  border-radius: 10px;
}

.radius-30 {
  border-radius: 30px;
}

.radius-50 {
  border-radius: 50px;
}

.radius-full {
  border-radius: 50%;
}

.radius-10-0 {
  border-radius: 10px 0px;
}

/* ====== MARGIN PADDING ======= */
.mt-6 {
  margin-top: 6px;
}

.mt-5 {
  margin-top: 5px;
}

.mt-10 {
  margin-top: 10px;
}

.mt-15 {
  margin-top: 15px;
}

.mt-20 {
  margin-top: 20px;
}

.mt-25 {
  margin-top: 25px;
}

.mt-30 {
  margin-top: 30px;
}

.mt-35 {
  margin-top: 35px;
}

.mt-40 {
  margin-top: 40px;
}

.mt-45 {
  margin-top: 45px;
}

.mt-50 {
  margin-top: 50px;
}

.mt-55 {
  margin-top: 55px;
}

.mt-60 {
  margin-top: 60px;
}

.mt-65 {
  margin-top: 65px;
}

.mt-70 {
  margin-top: 70px;
}

.mt-75 {
  margin-top: 75px;
}

.mt-80 {
  margin-top: 80px;
}

.mt-85 {
  margin-top: 85px;
}

.mt-90 {
  margin-top: 90px;
}

.mt-95 {
  margin-top: 95px;
}

.mt-100 {
  margin-top: 100px;
}

.mt-105 {
  margin-top: 105px;
}

.mt-110 {
  margin-top: 110px;
}

.mt-115 {
  margin-top: 115px;
}

.mt-120 {
  margin-top: 120px;
}

.mt-125 {
  margin-top: 125px;
}

.mt-130 {
  margin-top: 130px;
}

.mt-135 {
  margin-top: 135px;
}

.mt-140 {
  margin-top: 140px;
}

.mt-145 {
  margin-top: 145px;
}

.mt-150 {
  margin-top: 150px;
}

.mt-155 {
  margin-top: 155px;
}

.mt-160 {
  margin-top: 160px;
}

.mt-165 {
  margin-top: 165px;
}

.mt-170 {
  margin-top: 170px;
}

.mt-175 {
  margin-top: 175px;
}

.mt-180 {
  margin-top: 180px;
}

.mt-185 {
  margin-top: 185px;
}

.mt-190 {
  margin-top: 190px;
}

.mt-195 {
  margin-top: 195px;
}

.mt-200 {
  margin-top: 200px;
}

.mt-205 {
  margin-top: 205px;
}

.mt-210 {
  margin-top: 210px;
}

.mt-215 {
  margin-top: 215px;
}

.mt-220 {
  margin-top: 220px;
}

.mt-225 {
  margin-top: 225px;
}

.mb-6 {
  margin-bottom: 6px;
}

.mb-5 {
  margin-bottom: 5px;
}

.mb-10 {
  margin-bottom: 10px;
}

.mb-15 {
  margin-bottom: 15px;
}

.mb-20 {
  margin-bottom: 20px;
}

.mb-25 {
  margin-bottom: 25px;
}

.mb-30 {
  margin-bottom: 30px;
}

.mb-35 {
  margin-bottom: 35px;
}

.mb-40 {
  margin-bottom: 40px;
}

.mb-45 {
  margin-bottom: 45px;
}

.mb-50 {
  margin-bottom: 50px;
}

.mb-55 {
  margin-bottom: 55px;
}

.mb-60 {
  margin-bottom: 60px;
}

.mb-65 {
  margin-bottom: 65px;
}

.mb-70 {
  margin-bottom: 70px;
}

.mb-75 {
  margin-bottom: 75px;
}

.mb-80 {
  margin-bottom: 80px;
}

.mb-85 {
  margin-bottom: 85px;
}

.mb-90 {
  margin-bottom: 90px;
}

.mb-95 {
  margin-bottom: 95px;
}

.mb-100 {
  margin-bottom: 100px;
}

.mb-105 {
  margin-bottom: 105px;
}

.mb-110 {
  margin-bottom: 110px;
}

.mb-115 {
  margin-bottom: 115px;
}

.mb-120 {
  margin-bottom: 120px;
}

.mb-125 {
  margin-bottom: 125px;
}

.mb-130 {
  margin-bottom: 130px;
}

.mb-135 {
  margin-bottom: 135px;
}

.mb-140 {
  margin-bottom: 140px;
}

.mb-145 {
  margin-bottom: 145px;
}

.mb-150 {
  margin-bottom: 150px;
}

.mb-155 {
  margin-bottom: 155px;
}

.mb-160 {
  margin-bottom: 160px;
}

.mb-165 {
  margin-bottom: 165px;
}

.mb-170 {
  margin-bottom: 170px;
}

.mb-175 {
  margin-bottom: 175px;
}

.mb-180 {
  margin-bottom: 180px;
}

.mb-185 {
  margin-bottom: 185px;
}

.mb-190 {
  margin-bottom: 190px;
}

.mb-195 {
  margin-bottom: 195px;
}

.mb-200 {
  margin-bottom: 200px;
}

.mb-205 {
  margin-bottom: 205px;
}

.mb-210 {
  margin-bottom: 210px;
}

.mb-215 {
  margin-bottom: 215px;
}

.mb-220 {
  margin-bottom: 220px;
}

.mb-225 {
  margin-bottom: 225px;
}

.ml-6 {
  margin-left: 6px;
}

.ml-5 {
  margin-left: 5px;
}

.ml-10 {
  margin-left: 10px;
}

.ml-15 {
  margin-left: 15px;
}

.ml-20 {
  margin-left: 20px;
}

.ml-25 {
  margin-left: 25px;
}

.ml-30 {
  margin-left: 30px;
}

.ml-35 {
  margin-left: 35px;
}

.ml-40 {
  margin-left: 40px;
}

.ml-45 {
  margin-left: 45px;
}

.ml-50 {
  margin-left: 50px;
}

.ml-55 {
  margin-left: 55px;
}

.ml-60 {
  margin-left: 60px;
}

.ml-65 {
  margin-left: 65px;
}

.ml-70 {
  margin-left: 70px;
}

.ml-75 {
  margin-left: 75px;
}

.ml-80 {
  margin-left: 80px;
}

.ml-85 {
  margin-left: 85px;
}

.ml-90 {
  margin-left: 90px;
}

.ml-95 {
  margin-left: 95px;
}

.ml-100 {
  margin-left: 100px;
}

.mr-6 {
  margin-right: 6px;
}

.mr-5 {
  margin-right: 5px;
}

.mr-10 {
  margin-right: 10px;
}

.mr-15 {
  margin-right: 15px;
}

.mr-20 {
  margin-right: 20px;
}

.mr-25 {
  margin-right: 25px;
}

.mr-30 {
  margin-right: 30px;
}

.mr-35 {
  margin-right: 35px;
}

.mr-40 {
  margin-right: 40px;
}

.mr-45 {
  margin-right: 45px;
}

.mr-50 {
  margin-right: 50px;
}

.mr-55 {
  margin-right: 55px;
}

.mr-60 {
  margin-right: 60px;
}

.mr-65 {
  margin-right: 65px;
}

.mr-70 {
  margin-right: 70px;
}

.mr-75 {
  margin-right: 75px;
}

.mr-80 {
  margin-right: 80px;
}

.mr-85 {
  margin-right: 85px;
}

.mr-90 {
  margin-right: 90px;
}

.mr-95 {
  margin-right: 95px;
}

.mr-100 {
  margin-right: 100px;
}

.pt-6 {
  padding-top: 6px;
}

.pt-5 {
  padding-top: 5px;
}

.pt-10 {
  padding-top: 10px;
}

.pt-15 {
  padding-top: 15px;
}

.pt-20 {
  padding-top: 20px;
}

.pt-25 {
  padding-top: 25px;
}

.pt-30 {
  padding-top: 30px;
}

.pt-35 {
  padding-top: 35px;
}

.pt-40 {
  padding-top: 40px;
}

.pt-45 {
  padding-top: 45px;
}

.pt-50 {
  padding-top: 50px;
}

.pt-55 {
  padding-top: 55px;
}

.pt-60 {
  padding-top: 60px;
}

.pt-65 {
  padding-top: 65px;
}

.pt-70 {
  padding-top: 70px;
}

.pt-75 {
  padding-top: 75px;
}

.pt-80 {
  padding-top: 80px;
}

.pt-85 {
  padding-top: 85px;
}

.pt-90 {
  padding-top: 90px;
}

.pt-95 {
  padding-top: 95px;
}

.pt-100 {
  padding-top: 100px;
}

.pt-105 {
  padding-top: 105px;
}

.pt-110 {
  padding-top: 110px;
}

.pt-115 {
  padding-top: 115px;
}

.pt-120 {
  padding-top: 120px;
}

.pt-125 {
  padding-top: 125px;
}

.pt-130 {
  padding-top: 130px;
}

.pt-135 {
  padding-top: 135px;
}

.pt-140 {
  padding-top: 140px;
}

.pt-145 {
  padding-top: 145px;
}

.pt-150 {
  padding-top: 150px;
}

.pt-155 {
  padding-top: 155px;
}

.pt-160 {
  padding-top: 160px;
}

.pt-165 {
  padding-top: 165px;
}

.pt-170 {
  padding-top: 170px;
}

.pt-175 {
  padding-top: 175px;
}

.pt-180 {
  padding-top: 180px;
}

.pt-185 {
  padding-top: 185px;
}

.pt-190 {
  padding-top: 190px;
}

.pt-195 {
  padding-top: 195px;
}

.pt-200 {
  padding-top: 200px;
}

.pt-205 {
  padding-top: 205px;
}

.pt-210 {
  padding-top: 210px;
}

.pt-215 {
  padding-top: 215px;
}

.pt-220 {
  padding-top: 220px;
}

.pt-225 {
  padding-top: 225px;
}

.pb-6 {
  padding-bottom: 6px;
}

.pb-5 {
  padding-bottom: 5px;
}

.pb-10 {
  padding-bottom: 10px;
}

.pb-15 {
  padding-bottom: 15px;
}

.pb-20 {
  padding-bottom: 20px;
}

.pb-25 {
  padding-bottom: 25px;
}

.pb-30 {
  padding-bottom: 30px;
}

.pb-35 {
  padding-bottom: 35px;
}

.pb-40 {
  padding-bottom: 40px;
}

.pb-45 {
  padding-bottom: 45px;
}

.pb-50 {
  padding-bottom: 50px;
}

.pb-55 {
  padding-bottom: 55px;
}

.pb-60 {
  padding-bottom: 60px;
}

.pb-65 {
  padding-bottom: 65px;
}

.pb-70 {
  padding-bottom: 70px;
}

.pb-75 {
  padding-bottom: 75px;
}

.pb-80 {
  padding-bottom: 80px;
}

.pb-85 {
  padding-bottom: 85px;
}

.pb-90 {
  padding-bottom: 90px;
}

.pb-95 {
  padding-bottom: 95px;
}

.pb-100 {
  padding-bottom: 100px;
}

.pb-105 {
  padding-bottom: 105px;
}

.pb-110 {
  padding-bottom: 110px;
}

.pb-115 {
  padding-bottom: 115px;
}

.pb-120 {
  padding-bottom: 120px;
}

.pb-125 {
  padding-bottom: 125px;
}

.pb-130 {
  padding-bottom: 130px;
}

.pb-135 {
  padding-bottom: 135px;
}

.pb-140 {
  padding-bottom: 140px;
}

.pb-145 {
  padding-bottom: 145px;
}

.pb-150 {
  padding-bottom: 150px;
}

.pb-155 {
  padding-bottom: 155px;
}

.pb-160 {
  padding-bottom: 160px;
}

.pb-165 {
  padding-bottom: 165px;
}

.pb-170 {
  padding-bottom: 170px;
}

.pb-175 {
  padding-bottom: 175px;
}

.pb-180 {
  padding-bottom: 180px;
}

.pb-185 {
  padding-bottom: 185px;
}

.pb-190 {
  padding-bottom: 190px;
}

.pb-195 {
  padding-bottom: 195px;
}

.pb-200 {
  padding-bottom: 200px;
}

.pb-205 {
  padding-bottom: 205px;
}

.pb-210 {
  padding-bottom: 210px;
}

.pb-215 {
  padding-bottom: 215px;
}

.pb-220 {
  padding-bottom: 220px;
}

.pb-225 {
  padding-bottom: 225px;
}

.pl-6 {
  padding-left: 6px;
}

.pl-5 {
  padding-left: 5px;
}

.pl-10 {
  padding-left: 10px;
}

.pl-15 {
  padding-left: 15px;
}

.pl-20 {
  padding-left: 20px;
}

.pl-25 {
  padding-left: 25px;
}

.pl-30 {
  padding-left: 30px;
}

.pl-35 {
  padding-left: 35px;
}

.pl-40 {
  padding-left: 40px;
}

.pl-45 {
  padding-left: 45px;
}

.pl-50 {
  padding-left: 50px;
}

.pl-55 {
  padding-left: 55px;
}

.pl-60 {
  padding-left: 60px;
}

.pl-65 {
  padding-left: 65px;
}

.pl-70 {
  padding-left: 70px;
}

.pl-75 {
  padding-left: 75px;
}

.pl-80 {
  padding-left: 80px;
}

.pl-85 {
  padding-left: 85px;
}

.pl-90 {
  padding-left: 90px;
}

.pl-95 {
  padding-left: 95px;
}

.pl-100 {
  padding-left: 100px;
}

.pr-6 {
  padding-right: 6px;
}

.pr-5 {
  padding-right: 5px;
}

.pr-10 {
  padding-right: 10px;
}

.pr-15 {
  padding-right: 15px;
}

.pr-20 {
  padding-right: 20px;
}

.pr-25 {
  padding-right: 25px;
}

.pr-30 {
  padding-right: 30px;
}

.pr-35 {
  padding-right: 35px;
}

.pr-40 {
  padding-right: 40px;
}

.pr-45 {
  padding-right: 45px;
}

.pr-50 {
  padding-right: 50px;
}

.pr-55 {
  padding-right: 55px;
}

.pr-60 {
  padding-right: 60px;
}

.pr-65 {
  padding-right: 65px;
}

.pr-70 {
  padding-right: 70px;
}

.pr-75 {
  padding-right: 75px;
}

.pr-80 {
  padding-right: 80px;
}

.pr-85 {
  padding-right: 85px;
}

.pr-90 {
  padding-right: 90px;
}

.pr-95 {
  padding-right: 95px;
}

.pr-100 {
  padding-right: 100px;
}


/*** Hero slider ***/
.hero-slider {
  width: 100%;
  overflow: hidden;
  position: relative;
}

.slider-track {
  display: flex;
  width: 200%;
  transition: transform 0.7s ease-in-out;
}

.hero-slide {
  width: 50%;
  min-height: 530px;
  position: relative;
  overflow: hidden;
  display: flex;
  align-items: center;
  background: linear-gradient(90deg, #ffffff 0%, #f8fbff 45%, #eaf5ff 100%);
}

.hero-slide::before {
  content: "";
  position: absolute;
  width: 260px;
  height: 260px;
  left: -150px;
  bottom: -90px;
  border-radius: 50%;
  background: rgba(220, 239, 255, 0.7);
}

.hero-content {
  width: 48%;
  padding-left: 10.5%;
  position: relative;
  z-index: 3;
}

.small-title {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 18px;
  color: #075de9;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 3px;
  text-transform: uppercase;
}

.small-title::before {
  content: "";
  width: 35px;
  height: 3px;
  background: #0965f5;
  display: block;
}

.hero-content h1 {
  color: #102b61;
  font-size: clamp(38px, 3vw, 57px);
  line-height: 1.04;
  font-weight: 700;
  margin-bottom: 20px;
}

.hero-content h1 span {
  color: #0968f5;
}

.hero-content p {
  color: #536b91;
  font-size: 18px;
  line-height: 1.55;
  max-width: 590px;
  margin-bottom: 28px;
}

.hero-btn {
  display: inline-flex;
  align-items: center;
  gap: 18px;
  padding: 15px 27px;
  border-radius: 35px;
  background: #0968f5;
  color: #fff;
  text-decoration: none;
  font-size: 16px;
  font-weight: 600;
  box-shadow: 0 8px 20px rgba(9, 104, 245, 0.18);
}

.hero-btn span {
  font-size: 25px;
  line-height: 0;
}

.hero-image {
  position: absolute;
  right: 0;
  top: 0;
  width: 52%;
  height: 100%;
  z-index: 1;
}

.hero-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  display: block;
}

.hero-image::before {
  content: "";
  position: absolute;
  left: -100px;
  top: 0;
  width: 200px;
  height: 100%;
  z-index: 2;
  background: linear-gradient(90deg, #f8fbff 0%, rgba(248, 251, 255, 0.8) 35%, transparent 100%);
}

.slider-arrow {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 53px;
  height: 53px;
  border: none;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.95);
  color: #102b61;
  font-size: 34px;
  line-height: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  z-index: 10;
  box-shadow: 0 5px 18px rgba(20, 50, 90, 0.08);
  transition: 0.3s;
}

.slider-arrow:hover {
  background: #0968f5;
  color: #fff;
}

.slider-prev {
  left: 22px;
}

.slider-next {
  right: 22px;
}

.slider-dots {
  position: absolute;
  bottom: 23px;
  left: 50%;
  transform: translateX(-50%);
  display: flex;
  gap: 10px;
  z-index: 20;
}

.slider-dot {
  width: 12px;
  height: 12px;
  border-radius: 50%;
  border: none;
  background: #cbd7e8;
  cursor: pointer;
}

.slider-dot.active {
  background: #0968f5;
}

/* Second Slide */
.slide-two {
  background: linear-gradient(90deg, #ffffff 0%, #edf6ff 60%, #dcefff 100%);
}

.slide-two .hero-content {
  width: 50%;
}

.slide-two .hero-image {
  width: 50%;
}

.tech-list {
  position: absolute;
  left: 51%;
  top: 50%;
  transform: translateY(-50%);
  z-index: 5;
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.tech-item {
  width: 145px;
  height: 58px;
  background: rgba(255, 255, 255, 0.96);
  border-radius: 12px;
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 0 16px;
  box-shadow: 0 4px 14px rgba(20, 60, 100, 0.06);
  color: #183568;
  font-size: 14px;
  font-weight: 600;
}

.tech-icon {
  width: 30px;
  height: 30px;
  border-radius: 7px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 18px;
  font-weight: 700;
}

.react {
  color: #00a8e8;
}

.node {
  color: #28a745;
}

.python {
  color: #e8a400;
}

.laravel {
  color: #f23c3c;
}

@media (max-width: 991px) {
  .hero-slide {
    min-height: 620px;
  }

  .hero-content,
  .slide-two .hero-content {
    width: 100%;
    padding: 60px 8% 250px;
  }

  .hero-image,
  .slide-two .hero-image {
    width: 100%;
    height: 260px;
    top: auto;
    bottom: 0;
  }

  .hero-image::before {
    left: 0;
    top: -80px;
    width: 100%;
    height: 150px;
    background: linear-gradient(180deg, #f8fbff 0%, transparent 100%);
  }

  .tech-list {
    left: auto;
    right: 8%;
    top: auto;
    bottom: 45px;
    transform: none;
    flex-direction: row;
  }

  .tech-item {
    width: 105px;
    height: 45px;
    font-size: 12px;
    padding: 0 9px;
  }

  .tech-icon {
    width: 22px;
    height: 22px;
    font-size: 14px;
  }
}

@media (max-width: 600px) {
  .hero-slide {
    min-height: 650px;
  }

  .hero-content {
    padding: 50px 7% 280px !important;
  }

  .hero-content h1 {
    font-size: 38px;
  }

  .hero-content p {
    font-size: 15px;
  }

  .hero-image {
    height: 280px !important;
  }

  .slider-arrow {
    width: 42px;
    height: 42px;
    font-size: 27px;
  }

  .slider-prev {
    left: 10px;
  }

  .slider-next {
    right: 10px;
  }

  .tech-list {
    left: 7%;
    right: 7%;
    bottom: 30px;
    justify-content: center;
  }

  .tech-item {
    width: 75px;
    height: 40px;
    justify-content: center;
    padding: 0 5px;
  }

  .tech-item span:last-child {
    display: none;
  }

  .slider-dots {
    bottom: 12px;
  }
}


/*** Services ***/
.it-services-section {
  position: relative;
  overflow: hidden;
  padding: 105px 0 115px;
  background: #ffffff;
}


/* =====================================
   BACKGROUND SHAPES
===================================== */
.it-services-bg-circle {
  position: absolute;
  border-radius: 50%;
  pointer-events: none;
}

.it-services-circle-one {
  width: 430px;
  height: 430px;
  top: -230px;
  left: -170px;
  background: #edf5ff;
}

.it-services-circle-two {
  width: 330px;
  height: 330px;
  right: -170px;
  bottom: -170px;
  background: #f1f7ff;
}


/* =====================================
   SECTION HEADER
===================================== */
.it-services-header {
  position: relative;
  z-index: 2;
  margin-bottom: 65px;
}

.it-services-label {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 18px;
  color: #1167ed;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 2.8px;
}

.it-services-label span {
  width: 28px;
  height: 2px;
  border-radius: 5px;
  background: #1167ed;
}

.it-services-header h2 {
  margin: 0 0 18px;
  color: #122d5d;
  font-size: clamp(36px, 4vw, 52px);
  line-height: 1.12;
  font-weight: 700;
  letter-spacing: -1.5px;
}

.it-services-header h2 strong {
  display: block;
  color: #1167ed;
  font-weight: 700;
}

.it-services-header p {
  max-width: 700px;
  margin: 0 auto;
  color: #6d7f99;
  font-size: 16px;
  line-height: 1.75;
}

/* =====================================
   SERVICE CARD
===================================== */
.it-service-card {
  position: relative;
  z-index: 2;
  min-height: 335px;
  padding: 35px 32px 30px;
  overflow: hidden;
  border: 1px solid #e6edf6;
  border-radius: 22px;
  background: #ffffff;
  box-shadow: 0 10px 35px rgba(28,68,115,0.045);
  transition: all 0.35s ease;
}

.it-service-card::before {
  content: "";
  position: absolute;
  width: 150px;
  height: 150px;
  right: -75px;
  top: -75px;
  border-radius: 50%;
  background: #edf5ff;
  transition: all 0.35s ease;
}

.it-service-card::after {
  content: "";
  position: absolute;
  width: 4px;
  height: 0;
  left: 0;
  top: 0;
  border-radius: 0 0 5px 5px;
  background: #1167ed;
  transition: height 0.35s ease;
}

.it-service-card:hover {
  transform: translateY(-9px);
  border-color: #cfe0f8;
  box-shadow: 0 25px 55px rgba(24,70,125,0.12);
}

.it-service-card:hover::before {
  width: 190px;
  height: 190px;
  right: -85px;
  top: -85px;
}

.it-service-card:hover::after {
  height: 100%;
}


/* =====================================
   NUMBER
===================================== */
.it-service-number {
  position: absolute;
  right: 27px;
  top: 27px;
  color: #dce8f7;
  font-size: 38px;
  line-height: 1;
  font-weight: 800;
  transition: all 0.3s ease;
}

.it-service-card:hover .it-service-number {
  color: #cbdcf3;
  transform: translateY(-3px);
}


/* =====================================
   ICON
===================================== */
.it-service-icon {
  position: relative;
  z-index: 2;
  width: 65px;
  height: 65px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 27px;
  border-radius: 17px;
  background: #edf5ff;
  color: #1167ed;
  font-size: 27px;
  transition: all 0.35s ease;
}

.it-service-card:hover .it-service-icon {
  background: #1167ed;
  color: #ffffff;
  transform: rotate(-5deg);
  box-shadow: 0 12px 25px rgba(17,103,237,0.2);
}


/* =====================================
   CONTENT
===================================== */
.it-service-content {
  position: relative;
  z-index: 2;
}

.it-service-content h4 {
  margin: 0 0 12px;
  color: #173664;
  font-size: 20px;
  line-height: 1.3;
  font-weight: 700;
}

.it-service-content p {
  min-height: 68px;
  margin: 0 0 20px;
  color: #71829a;
  font-size: 14px;
  line-height: 1.65;
}


/* =====================================
   LINK
===================================== */
.it-service-link {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  color: #1167ed;
  text-decoration: none;
  font-size: 13px;
  font-weight: 700;
  transition: all 0.3s ease;
}

.it-service-link span {
  font-size: 19px;
  line-height: 1;
  transition: transform 0.3s ease;
}

.it-service-link:hover {
  color: #0b55ca;
}

.it-service-link:hover span {
  transform: translateX(5px);
}


/* =====================================
   RESPONSIVE
===================================== */
@media (max-width: 1199px) {
  .it-service-card {
    min-height: 350px;
    padding: 30px 27px;
  }

  .it-service-content h4 {
    font-size: 19px;
  }
}


@media (max-width: 991px) {
  .it-features-section {
    padding: 85px 0 95px;
  }

  .it-features-header {
    margin-bottom: 50px;
  }

  .it-service-card {
    min-height: 325px;
  }
}


@media (max-width: 767px) {
  .it-features-section {
    padding: 70px 0 80px;
  }

  .it-features-header {
    margin-bottom: 40px;
  }

  .it-features-label {
    font-size: 10px;
    letter-spacing: 2px;
  }

  .it-features-header h2 {
    font-size: 36px;
    letter-spacing: -1px;
  }

  .it-features-header p {
    font-size: 14px;
  }

  .it-service-card {
    min-height: auto;
    padding: 28px 25px;
  }

  .it-service-content p {
    min-height: auto;
  }
}

@media (max-width: 480px) {
  .it-features-section {
    padding: 60px 0 70px;
  }

  .it-features-header h2 {
    font-size: 31px;
  }

  .it-features-label {
    gap: 8px;
    font-size: 9px;
  }

  .it-features-label span {
    width: 20px;
  }

  .it-service-card {
    border-radius: 18px;
    padding: 25px 22px;
  }

  .it-service-icon {
    width: 58px;
    height: 58px;
    font-size: 24px;
  }

  .it-service-number {
    right: 20px;
    top: 20px;
    font-size: 31px;
  }

  .it-service-content h4 {
    font-size: 18px;
  }

  .it-service-content p {
    font-size: 13px;
  }
}


/** Why choose us **/
.it-why-section {
  position: relative;
  overflow: hidden;
  padding: 115px 0 105px;
  background: #f7faff;
  color: #101828;
}


/* =========================================================
   BACKGROUND
========================================================= */
.it-why-grid {
  position: absolute;
  inset: 0;
  pointer-events: none;
  opacity: .5;
  background-image: linear-gradient(rgba(23, 105, 209, .035) 1px, transparent 1px), linear-gradient(90deg, rgba(23, 105, 209, .035) 1px, transparent 1px);
  background-size: 55px 55px;
  mask-image: linear-gradient(to bottom, transparent, black 15%, black 85%, transparent);
}


.it-why-orb {
  position: absolute;
  border-radius: 50%;
  pointer-events: none;
  filter: blur(3px);
}


.it-why-orb-one {
  width: 360px;
  height: 360px;
  top: -190px;
  right: -130px;
  background: rgba(23, 105, 209, .07);
}

.it-why-orb-two {
  width: 280px;
  height: 280px;
  bottom: -150px;
  left: -130px;
  background: rgba(23, 105, 209, .05);
}


/* =========================================================
   SECTION HEADING
========================================================= */
.it-why-heading {
  position: relative;
  max-width: 820px;
  margin: 0 auto 65px;
  text-align: center;
}


.it-why-eyebrow {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  margin-bottom: 18px;
  color: #1769d1;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 3px;
}


.it-why-eyebrow span {
  display: block;
  width: 28px;
  height: 2px;
  border-radius: 5px;
  background: #1769d1;
}


.it-why-heading h2 {
  margin: 0 0 18px;
  color: #111827;
  font-size: 48px;
  line-height: 1.12;
  font-weight: 700;
  letter-spacing: -1.5px;
}


.it-why-heading h2 strong {
  display: block;
  color: #1769d1;
  font-weight: 800;
}


.it-why-heading p {
  max-width: 680px;
  margin: 0 auto;
  color: #667085;
  font-size: 16px;
  line-height: 1.85;
}


/* =========================================================
   MAIN LAYOUT
========================================================= */
.it-why-main {
  position: relative;
  display: grid;
  grid-template-columns: 44% 56%;
  gap: 0;
  align-items: stretch;
}


/* =========================================================
   IMAGE AREA
========================================================= */
.it-why-image-area {
  position: relative;
  padding-right: 30px;
}


.it-why-image {
  position: relative;
  height: 100%;
  min-height: 570px;
  overflow: hidden;
  background: #111827;
  box-shadow: 0 25px 60px rgba(16, 24, 40, .12);
}


.it-why-image img {
  width: 100%;
  height: 100%;
  min-height: 570px;
  display: block;
  object-fit: cover;
  transition: transform .7s ease;
}


.it-why-image:hover img {
  transform: scale(1.04);
}


/* image overlay */
.it-why-image-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(7, 21, 42, .05) 20%, rgba(7, 21, 42, .15) 50%, rgba(7, 21, 42, .88) 100%);
}


/* =========================================================
   IMAGE BADGE
========================================================= */
.it-why-image-badge {
  position: absolute;
  left: 30px;
  right: 30px;
  bottom: 30px;
  display: flex;
  align-items: center;
  gap: 15px;
  padding: 17px 20px;
  background: rgba(255,255,255,.96);
  backdrop-filter: blur(10px);
  box-shadow: 0 15px 40px rgba(0,0,0,.12);
}


.it-why-badge-icon {
  width: 48px;
  height: 48px;
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #1769d1;
  color: #fff;
  font-size: 19px;
}


.it-why-image-badge span {
  display: block;
  margin-bottom: 3px;
  color: #98a2b3;
  font-size: 8px;
  font-weight: 800;
  letter-spacing: 2px;
}


.it-why-image-badge strong {
  display: block;
  color: #111827;
  font-size: 14px;
  font-weight: 800;
}


/* =========================================================
   IMAGE CORNERS
========================================================= */
.it-why-image-corner {
  position: absolute;
  top: 22px;
  right: 22px;
  display: grid;
  grid-template-columns: repeat(2, 10px);
  gap: 7px;
}


.it-why-image-corner span {
  width: 10px;
  height: 10px;
  border: 1px solid rgba(255,255,255,.75);
}


/* =========================================================
   2 x 2 CARDS
========================================================= */
.it-why-items {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 0;
  border-top: 1px solid #dce5ef;
  border-left: 1px solid #dce5ef;
}


/* =========================================================
   CARD
========================================================= */
.it-why-card {
  position: relative;
  min-height: 285px;
  padding: 28px 28px 25px;
  background: rgba(255,255,255,.65);
  border-right: 1px solid #dce5ef;
  border-bottom: 1px solid #dce5ef;
  transition:
    background .35s ease,
    transform .35s ease,
    box-shadow .35s ease;
}


.it-why-card:hover {
  z-index: 2;
  background: #fff;
  transform: translateY(-5px);
  box-shadow:
    0 20px 45px rgba(22, 72, 130, .09);
}


/* =========================================================
   CARD TOP
========================================================= */
.it-why-card-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 30px;
}


.it-why-card-number {
  color: #1769d1;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 1px;
}


.it-why-card-icon {
  width: 50px;
  height: 50px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #edf5ff;
  color: #1769d1;
  font-size: 20px;
  transition: all .35s ease;
}


.it-why-card:hover .it-why-card-icon {
  background: #1769d1;
  color: #fff;
  transform: rotate(-6deg);
}


/* =========================================================
   CARD CONTENT
========================================================= */
.it-why-card-label {
  display: block;
  margin-bottom: 7px;
  color: #98a2b3;
  font-size: 8px;
  font-weight: 800;
  letter-spacing: 2px;
}


.it-why-card-content h3 {
  margin: 0 0 10px;
  color: #111827;
  font-size: 20px;
  line-height: 1.25;
  font-weight: 750;
}


.it-why-card-content p {
  margin: 0;
  color: #667085;
  font-size: 12px;
  line-height: 1.75;
}


/* =========================================================
   CARD ARROW
========================================================= */
.it-why-card-arrow {
  position: absolute;
  right: 25px;
  bottom: 22px;
  color: #b4c0cf;
  font-size: 16px;
  transition: all .3s ease;
}


.it-why-card:hover .it-why-card-arrow {
  color: #1769d1;
  transform: translate(3px, -3px);
}


/* =========================================================
   BOTTOM STRIP
========================================================= */
.it-why-bottom {
  position: relative;
  display: flex;
  align-items: center;
  margin-top: 65px;
  border-top: 1px solid #dce5ef;
  border-bottom: 1px solid #dce5ef;
}


.it-why-bottom-item {
  flex: 1;
  min-height: 82px;
  display: flex;
  align-items: center;
  gap: 15px;
  padding: 12px 20px;
}


.it-why-bottom-item:first-child {
  padding-left: 0;
}


.it-why-bottom-item strong {
  color: #1769d1;
  font-size: 24px;
  font-weight: 800;
}


.it-why-bottom-item span {
  color: #667085;
  font-size: 8px;
  font-weight: 800;
  line-height: 1.5;
  letter-spacing: 1.5px;
}


.it-why-bottom-line {
  width: 1px;
  height: 35px;
  background: #dce5ef;
}


/* =========================================================
   RESPONSIVE
========================================================= */
@media (max-width: 1199px) {

  .it-why-heading h2 {
    font-size: 44px;
  }

  .it-why-main {
    grid-template-columns: 42% 58%;
  }

  .it-why-image-area {
    padding-right: 20px;
  }

  .it-why-card {
    padding: 23px;
    min-height: 270px;
  }

}


@media (max-width: 991px) {

  .it-why-section {
    padding: 90px 0;
  }

  .it-why-heading {
    margin-bottom: 50px;
  }

  .it-why-heading h2 {
    font-size: 42px;
  }

  .it-why-main {
    grid-template-columns: 1fr;
  }

  .it-why-image-area {
    padding-right: 0;

    margin-bottom: 25px;
  }

  .it-why-image {
    min-height: 480px;
  }

  .it-why-image img {
    min-height: 480px;
  }

  .it-why-items {
    border-top: 1px solid #dce5ef;
  }

}


@media (max-width: 767px) {

  .it-why-section {
    padding: 75px 0;
  }

  .it-why-heading {
    margin-bottom: 40px;
  }

  .it-why-eyebrow {
    font-size: 9px;
    letter-spacing: 2px;
  }

  .it-why-heading h2 {
    font-size: 35px;
    letter-spacing: -1px;
  }

  .it-why-heading p {
    font-size: 13px;
    line-height: 1.75;
  }

  .it-why-image {
    min-height: 390px;
  }

  .it-why-image img {
    min-height: 390px;
  }

  .it-why-image-badge {
    left: 18px;
    right: 18px;
    bottom: 18px;

    padding: 13px 15px;
  }

  .it-why-badge-icon {
    width: 42px;
    height: 42px;
  }

  .it-why-image-badge strong {
    font-size: 12px;
  }

  .it-why-items {
    grid-template-columns: 1fr;
  }

  .it-why-card {
    min-height: auto;
    padding: 25px;
  }

  .it-why-card-top {
    margin-bottom: 22px;
  }

  .it-why-card-content p {
    max-width: 500px;
    font-size: 12px;
  }

  .it-why-bottom {
    display: grid;

    grid-template-columns: repeat(2, 1fr);
  }

  .it-why-bottom-item {
    min-height: 70px;
  }

  .it-why-bottom-line {
    display: none;
  }

  .it-why-bottom-item:first-child {
    padding-left: 15px;
  }

}


@media (max-width: 480px) {

  .it-why-heading h2 {
    font-size: 31px;
  }

  .it-why-eyebrow i {
    width: 20px;
  }

  .it-why-image {
    min-height: 330px;
  }

  .it-why-image img {
    min-height: 330px;
  }

  .it-why-card {
    padding: 22px;
  }

  .it-why-card-icon {
    width: 45px;
    height: 45px;
  }

  .it-why-card-content h3 {
    font-size: 18px;
  }

  .it-why-bottom-item {
    padding: 12px;
    gap: 10px;
  }

  .it-why-bottom-item strong {
    font-size: 19px;
  }

  .it-why-bottom-item span {
    font-size: 7px;
  }

}


/* =========================================================
   IT SOLUTIONS — DIGITAL TRANSFORMATION PROCESS
========================================================= */
.it-process-section {
  position: relative;
  overflow: hidden;
  padding: 120px 0 125px;
  background: #071426;
  font-family: "Heebo", sans-serif;
  isolation: isolate;
}

/* =========================================================
   BACKGROUND
========================================================= */
.it-process-grid-bg {
  position: absolute;
  inset: 0;
  z-index: -3;
  pointer-events: none;
  opacity: .35;
  background-image: linear-gradient(rgba(255,255,255,.035) 1px, transparent 1px),
  linear-gradient(90deg, rgba(255,255,255,.035) 1px, transparent 1px);
  background-size: 55px 55px;
}

.it-process-glow {
  position: absolute;
  border-radius: 50%;
  pointer-events: none;
  z-index: -2;
  filter: blur(10px);
}

.it-process-glow-one {
  width: 520px;
  height: 520px;
  top: -300px;
  right: -180px;
  background: rgba(23,105,255,.13);
}

.it-process-glow-two {
  width: 420px;
  height: 420px;
  left: -250px;
  bottom: -250px;
  background: rgba(23,105,255,.09);
}

/* =========================================================
   SECTION HEADING
========================================================= */
.it-process-heading {
  max-width: 800px;
  margin: 0 auto 70px;
  text-align: center;
}

.it-process-eyebrow {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  margin-bottom: 20px;
  color: #5c9cff;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 3px;
}

.it-process-eyebrow i {
  display: block;
  width: 34px;
  height: 1px;
  background: #1769ff;
}

.it-process-heading h2 {
  margin: 0;
  color: #ffffff;
  font-size: 50px;
  line-height: 1.12;
  font-weight: 700;
  letter-spacing: -1.8px;
}

.it-process-heading h2 span {
  color: #4f91ff;
}

.it-process-heading p {
  max-width: 680px;
  margin: 22px auto 0;
  color: #91a1b8;
  font-size: 17px;
  line-height: 1.8;
}

/* =========================================================
   MAIN PANEL
========================================================= */
.it-process-panel {
  position: relative;
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.09);
  background: linear-gradient( 145deg, rgba(255,255,255,.045), rgba(255,255,255,.018));
  box-shadow: 0 35px 90px rgba(0,0,0,.28);
  border-radius: 6px;
}

/* =========================================================
   PANEL TOP
========================================================= */
.it-process-panel-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-height: 68px;
  padding: 0 30px;
  border-bottom: 1px solid rgba(255,255,255,.08);
}

.it-process-panel-label {
  display: flex;
  align-items: center;
  gap: 10px;
  color: #9aabc0;
  font-size: 9px;
  font-weight: 800;
  letter-spacing: 2px;
}

.it-process-status-dot {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #1769ff;
  box-shadow: 0 0 0 5px rgba(23,105,255,.08), 0 0 18px rgba(23,105,255,.7);
}

.it-process-panel-count {
  display: flex;
  align-items: center;
  gap: 9px;
  color: #607087;
  font-size: 8px;
  font-weight: 800;
  letter-spacing: 1.5px;
}

.it-process-panel-count span {
  color: #4f91ff;
  font-size: 15px;
}

/* =========================================================
   PROCESS JOURNEY
========================================================= */
.it-process-journey {
  display: grid;
  grid-template-columns: 1fr 30px 1fr 30px 1fr 30px 1fr;
  align-items: stretch;
  padding: 30px;
}

/* =========================================================
   PROCESS CARD
========================================================= */
.it-process-card {
  position: relative;
  display: flex;
  flex-direction: column;
  min-height: 355px;
  padding: 28px;
  border: 1px solid rgba(255,255,255,.08);
  background: rgba(255,255,255,.025);
  transition: transform .35s ease, background .35s ease, border-color .35s ease, box-shadow .35s ease;
}

.it-process-card:hover,
.it-process-card.active {
  transform: translateY(-7px);
  background: linear-gradient(145deg, rgba(23,105,255,.16), rgba(255,255,255,.035));
  border-color: rgba(66,139,255,.4);
  box-shadow: 0 25px 55px rgba(0,0,0,.22), inset 0 1px 0 rgba(255,255,255,.05);
}

/* =========================================================
   CARD TOP
========================================================= */
.it-process-card-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 55px;
}

.it-process-number {
  color: #4f91ff;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: 1px;
}

.it-process-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 46px;
  height: 46px;
  border: 1px solid rgba(255,255,255,.1);
  border-radius: 50%;
  color: #ffffff;
  font-size: 17px;
  background: rgba(255,255,255,.035);
  transition: background .3s ease, border-color .3s ease, transform .3s ease;
}

.it-process-card:hover .it-process-icon,
.it-process-card.active .it-process-icon {
  background: #1769ff;
  border-color: #1769ff;
  transform: rotate(8deg);
}

/* =========================================================
   CARD CONTENT
========================================================= */
.it-process-card-content {
  flex: 1;
}

.it-process-tag {
  display: block;
  margin-bottom: 10px;
  color: #667991;
  font-size: 8px;
  font-weight: 800;
  letter-spacing: 2px;
}

.it-process-card h3 {
  margin: 0 0 17px;
  color: #ffffff;
  font-size: 22px;
  line-height: 1.25;
  font-weight: 700;
  letter-spacing: -.5px;
}

.it-process-card p {
  margin: 0;
  color: #8292a9;
  font-size: 13px;
  line-height: 1.75;
}


/* =========================================================
   CARD FOOTER
========================================================= */
.it-process-card-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-top: 28px;
  padding-top: 18px;
  border-top: 1px solid rgba(255,255,255,.07);
  color: #52637a;
  font-size: 8px;
  font-weight: 800;
  letter-spacing: 1.5px;
}

.it-process-card-footer i {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  border: 1px solid rgba(255,255,255,.1);
  border-radius: 50%;
  color: #8191a7;
  font-size: 12px;
  transition: background .3s ease, color .3s ease, transform .3s ease;
}

.it-process-card:hover .it-process-card-footer i,
.it-process-card.active .it-process-card-footer i {
  background: #1769ff;
  border-color: #1769ff;
  color: #ffffff;
  transform: rotate(45deg);
}


/* =========================================================
   CONNECTOR
========================================================= */
.it-process-connector {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
}

.it-process-connector::before {
  content: "";
  width: 100%;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(70,137,255,.5), transparent);
}

.it-process-connector span {
  position: absolute;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #1769ff;
  box-shadow:0 0 15px rgba(23,105,255,.8);
}


/* =========================================================
   PANEL BOTTOM
========================================================= */
.it-process-panel-bottom {
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-height: 76px;
  padding: 0 30px;
  border-top: 1px solid rgba(255,255,255,.08);
  background: rgba(0,0,0,.12);
}

.it-process-bottom-left {
  display: flex;
  align-items: center;
  gap: 12px;
  color: #667890;
  font-size: 8px;
  font-weight: 800;
  line-height: 1.5;
  letter-spacing: 1.5px;
}

.it-process-bottom-left strong {
  color: #9caabd;
}


.it-process-bottom-line {
  width: 25px;
  height: 1px;
  background: #1769ff;
}

.it-process-bottom-right {
  display: flex;
  align-items: center;
  gap: 28px;
}

.it-process-bottom-right span {
  color: #596b82;
  font-size: 8px;
  font-weight: 800;
  letter-spacing: 1.5px;
}

.it-process-bottom-right span:first-child {
  color: #4f91ff;
}


/* =========================================================
   LARGE TABLET
========================================================= */
@media (max-width: 1199px) {
  .it-process-heading h2 {
    font-size: 45px;
  }

  .it-process-journey {
    padding: 22px;
    grid-template-columns:1fr 20px 1fr 20px 1fr 20px 1fr;
  }

  .it-process-card {
    padding: 22px;
    min-height: 365px;
  }

  .it-process-card h3 {
    font-size: 19px;
  }

  .it-process-card p {
    font-size: 12px;
  }

  .it-process-bottom-right {
    gap: 15px;
  }
}

/* =========================================================
   TABLET
========================================================= */
@media (max-width: 991px) {
  .it-process-section {
    padding: 90px 0;
  }

  .it-process-heading {
    margin-bottom: 50px;
  }

  .it-process-heading h2 {
    font-size: 40px;
  }

  .it-process-journey {
    grid-template-columns: 1fr 1fr;
    gap: 18px;
    padding: 20px;
  }

  .it-process-connector {
    display: none;
  }

  .it-process-card {
    min-height: 330px;
  }

  .it-process-panel-bottom {
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
    gap: 15px;
    padding: 20px 25px;
  }
}

/* =========================================================
   MOBILE
========================================================= */
@media (max-width: 767px) {
  .it-process-section {
    padding: 75px 0;
  }

  .it-process-heading {
    margin-bottom: 40px;
  }

  .it-process-eyebrow {
    font-size: 9px;
    letter-spacing: 2px;
  }

  .it-process-heading h2 {
    font-size: 34px;
    letter-spacing: -1px;
  }

  .it-process-heading p {
    font-size: 13px;
  }

  .it-process-panel-top {
    min-height: 60px;
    padding: 0 18px;
  }

  .it-process-panel-label {
    font-size: 8px;
  }

  .it-process-journey {
    grid-template-columns: 1fr;
    gap: 14px;
    padding: 14px;
  }

  .it-process-card {
    min-height: auto;
    padding: 24px;
  }

  .it-process-card-top {
    margin-bottom: 40px;
  }

  .it-process-card h3 {
    font-size: 20px;
  }

  .it-process-card p {
    font-size: 13px;
  }

  .it-process-panel-bottom {
    padding: 18px;
  }

  .it-process-bottom-right {
    flex-wrap: wrap;
    gap: 10px 18px;
  }
}


/* =========================================================
   SMALL MOBILE
========================================================= */
@media (max-width: 480px) {
  .it-process-heading h2 {
    font-size: 30px;
  }

  .it-process-heading p {
    font-size: 12px;
  }

  .it-process-card {
    padding: 20px;
  }

  .it-process-card-top {
    margin-bottom: 35px;
  }

  .it-process-icon {
    width: 42px;
    height: 42px;
    font-size: 15px;
  }

  .it-process-card h3 {
    font-size: 19px;
  }

  .it-process-card p {
    font-size: 12px;
  }

  .it-process-panel-count {
    display: none;
  }
}

/*** Gallery ***/
/* =========================================================
   IT SOLUTIONS — OUR GALLERY
   LARGE + 4 MEDIUM IMAGE GALLERY
========================================================= */

.it-gallery-section {
  position: relative;
  overflow: hidden;

  padding: 115px 0 65px;

  background: #f8fbff;
}


/* =========================================================
   BACKGROUND
========================================================= */

.it-gallery-bg {
  position: absolute;
  inset: 0;

  pointer-events: none;

  background-image:
    linear-gradient(
      rgba(36, 107, 253, .035) 1px,
      transparent 1px
    ),
    linear-gradient(
      90deg,
      rgba(36, 107, 253, .035) 1px,
      transparent 1px
    );

  background-size: 55px 55px;

  opacity: .75;
}


/* =========================================================
   GLOWS
========================================================= */

.it-gallery-glow {
  position: absolute;

  border-radius: 50%;

  pointer-events: none;

  filter: blur(100px);
}


.it-gallery-glow-one {
  width: 330px;
  height: 330px;

  top: 5%;
  left: -190px;

  background: rgba(36, 107, 253, .08);
}


.it-gallery-glow-two {
  width: 380px;
  height: 380px;

  right: -200px;
  bottom: 5%;

  background: rgba(83, 67, 255, .07);
}


/* =========================================================
   HEADER
========================================================= */

.it-gallery-header {
  position: relative;
  z-index: 2;

  max-width: 720px;

  margin: 0 auto 60px;

  text-align: center;
}


.it-gallery-label {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 18px;
  color: #1167ed;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 2.8px;
}

.it-gallery-label span {
  width: 28px;
  height: 2px;
  border-radius: 5px;
  background: #1167ed;
}


.it-gallery-header h2 {
  margin: 21px 0 17px;

  color: #111827;

  font-size: 55px;
  line-height: 1.08;

  font-weight: 700;

  letter-spacing: -2.5px;
}


.it-gallery-header h2 strong {
  color: #246bfd;

  font-weight: 800;
}


.it-gallery-header p {
  max-width: 620px;

  margin: 0 auto;

  color: #6b7a8f;

  font-size: 16px;

  line-height: 1.85;
}


/* =========================================================
   GALLERY LAYOUT
========================================================= */

.it-gallery-layout {
  position: relative;
  z-index: 2;

  display: grid;

  grid-template-columns: 1.35fr 1fr 1fr;

  grid-template-rows: 255px 255px;

  gap: 16px;
}


/* =========================================================
   LARGE IMAGE
========================================================= */

.it-gallery-large {
  grid-column: 1;

  grid-row: 1 / 3;
}


/* =========================================================
   MEDIUM IMAGES
========================================================= */

.it-gallery-medium {
  min-width: 0;
}


/* =========================================================
   CARD
========================================================= */

.it-gallery-card {
  position: relative;

  width: 100%;
  height: 100%;

  overflow: hidden;

  background: #dce6f3;

  border: 1px solid rgba(218, 227, 239, .9);

  box-shadow:
    0 10px 30px rgba(25, 55, 95, .05);

  transition:
    transform .45s cubic-bezier(.2, .8, .2, 1),
    box-shadow .45s ease;
}


.it-gallery-card:hover {
  transform: translateY(-5px);

  box-shadow:
    0 22px 50px rgba(25, 55, 95, .15);
}


/* =========================================================
   IMAGE
========================================================= */

.it-gallery-card img {
  width: 100%;
  height: 100%;

  display: block;

  object-fit: cover;

  transition:
    transform .8s cubic-bezier(.2, .8, .2, 1),
    filter .5s ease;
}


.it-gallery-card:hover img {
  transform: scale(1.07);

  filter: saturate(1.08);
}


/* =========================================================
   OVERLAY
========================================================= */

.it-gallery-card-overlay {
  position: absolute;
  inset: 0;

  background:
    linear-gradient(
      180deg,
      rgba(4, 16, 38, .03) 0%,
      rgba(4, 16, 38, .08) 38%,
      rgba(4, 16, 38, .88) 100%
    );

  transition: .45s ease;
}


.it-gallery-card:hover
.it-gallery-card-overlay {
  background:
    linear-gradient(
      180deg,
      rgba(4, 20, 50, .08) 0%,
      rgba(4, 20, 50, .14) 35%,
      rgba(4, 20, 50, .94) 100%
    );
}


/* =========================================================
   NUMBER
========================================================= */

.it-gallery-number {
  position: absolute;

  top: 18px;
  left: 18px;

  z-index: 3;

  display: flex;

  align-items: center;
  justify-content: center;

  width: 38px;
  height: 38px;

  border: 1px solid rgba(255, 255, 255, .35);

  background: rgba(5, 20, 42, .35);

  backdrop-filter: blur(10px);

  color: #ffffff;

  font-size: 10px;

  font-weight: 800;

  letter-spacing: 1px;
}


/* =========================================================
   CONTENT
========================================================= */

.it-gallery-card-content {
  position: absolute;

  left: 22px;
  right: 22px;
  bottom: 21px;

  z-index: 4;

  display: flex;

  align-items: flex-end;
  justify-content: space-between;

  gap: 15px;
}


.it-gallery-card-content > div {
  min-width: 0;
}


.it-gallery-card-content span {
  display: block;

  margin-bottom: 7px;

  color: #a9c9ff;

  font-size: 8px;

  font-weight: 800;

  letter-spacing: 1.5px;
}


.it-gallery-card-content h3 {
  margin: 0;

  max-width: 270px;

  color: #ffffff;

  font-size: 16px;

  line-height: 1.12;

  font-weight: 300;

  letter-spacing: -.3px;
}


.it-gallery-card-content h3 strong {
  display: block;

  font-weight: 800;
}


/* =========================================================
   LARGE CARD TYPOGRAPHY
========================================================= */

.it-gallery-large
.it-gallery-card-content {
  left: 28px;
  right: 28px;
  bottom: 28px;
}


.it-gallery-large
.it-gallery-card-content h3 {
  max-width: 360px;

  /* font-size: 32px; */

  line-height: 1.05;
}


.it-gallery-large
.it-gallery-number {
  top: 22px;
  left: 22px;

  width: 43px;
  height: 43px;
}


/* =========================================================
   ARROW
========================================================= */

.it-gallery-card-content a {
  flex: 0 0 auto;

  display: flex;

  align-items: center;
  justify-content: center;

  width: 42px;
  height: 42px;

  border-radius: 50%;

  background: #ffffff;

  color: #246bfd;

  text-decoration: none;

  opacity: 0;

  transform: translateY(10px) scale(.8);

  transition:
    opacity .3s ease,
    transform .35s ease,
    background .3s ease,
    color .3s ease;
}


.it-gallery-card:hover
.it-gallery-card-content a {
  opacity: 1;

  transform: translateY(0) scale(1);
}


.it-gallery-card-content a:hover {
  background: #246bfd;

  color: #ffffff;
}


.it-gallery-card-content a i {
  font-size: 16px;

  transition: transform .3s ease;
}


.it-gallery-card-content a:hover i {
  transform: rotate(45deg);
}


/* =========================================================
   FOOTER
========================================================= */

.it-gallery-footer {
  position: relative;
  z-index: 2;

  display: flex;

  align-items: center;
  justify-content: space-between;

  gap: 25px;

  margin-top: 30px;

  padding-top: 23px;

  border-top: 1px solid #dce5f0;
}


/* LEFT */

.it-gallery-footer-line {
  display: flex;

  align-items: center;

  gap: 10px;
}


.it-gallery-footer-line span {
  width: 30px;
  height: 2px;

  background: #246bfd;
}


.it-gallery-footer-line p {
  margin: 0;

  color: #7d8ba0;

  font-size: 9px;

  font-weight: 800;

  letter-spacing: 1.6px;
}


/* COUNT */

.it-gallery-footer-count {
  display: flex;

  align-items: center;

  gap: 10px;
}


.it-gallery-footer-count strong {
  color: #246bfd;

  font-size: 30px;

  line-height: 1;

  font-weight: 800;
}


.it-gallery-footer-count span {
  color: #8492a5;

  font-size: 8px;

  font-weight: 800;

  line-height: 1.35;

  letter-spacing: 1.2px;
}


/* CTA */

.it-gallery-footer-btn {
  display: inline-flex;

  align-items: center;

  gap: 12px;

  color: #18263b;

  text-decoration: none;

  font-size: 9px;

  font-weight: 800;

  letter-spacing: 1.5px;

  transition: .3s ease;
}


.it-gallery-footer-btn i {
  display: flex;

  align-items: center;
  justify-content: center;

  width: 38px;
  height: 38px;

  border-radius: 50%;

  background: #246bfd;

  color: #ffffff;

  font-size: 15px;

  transition: transform .35s ease;
}


.it-gallery-footer-btn:hover {
  color: #246bfd;
}


.it-gallery-footer-btn:hover i {
  transform: rotate(45deg);
}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 991px) {

  .it-gallery-section {
    padding: 95px 0 85px;
  }


  .it-gallery-header h2 {
    font-size: 46px;
  }


  .it-gallery-layout {
    grid-template-columns: 1fr 1fr;

    grid-template-rows:
      360px
      250px
      250px;
  }


  /* LARGE */

  .it-gallery-large {
    grid-column: 1 / 3;

    grid-row: 1;
  }


  /* MEDIUM 01 */

  .it-gallery-medium:nth-child(2) {
    grid-column: 1;

    grid-row: 2;
  }


  /* MEDIUM 02 */

  .it-gallery-medium:nth-child(3) {
    grid-column: 2;

    grid-row: 2;
  }


  /* MEDIUM 03 */

  .it-gallery-medium:nth-child(4) {
    grid-column: 1;

    grid-row: 3;
  }


  /* MEDIUM 04 */

  .it-gallery-medium:nth-child(5) {
    grid-column: 2;

    grid-row: 3;
  }


  .it-gallery-card-content a {
    opacity: 1;

    transform: none;
  }

}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767px) {

  .it-gallery-section {
    padding: 75px 0 70px;
  }


  .it-gallery-header {
    margin-bottom: 40px;
  }


  .it-gallery-label {
    font-size: 9px;

    letter-spacing: 2px;
  }


  .it-gallery-header h2 {
    margin-top: 18px;

    font-size: 37px;

    letter-spacing: -1.5px;
  }


  .it-gallery-header p {
    font-size: 12px;

    line-height: 1.75;
  }


  /* STACK */

  .it-gallery-layout {
    display: flex;

    flex-direction: column;

    gap: 13px;
  }


  /* LARGE */

  .it-gallery-large {
    width: 100%;

    height: 350px;
  }


  /* MEDIUM */

  .it-gallery-medium {
    width: 100%;

    height: 285px;
  }


  .it-gallery-card-content {
    left: 18px;
    right: 18px;
    bottom: 18px;
  }


  .it-gallery-card-content h3 {
    font-size: 20px;
  }


  .it-gallery-large
  .it-gallery-card-content {
    left: 20px;
    right: 20px;
    bottom: 20px;
  }


  .it-gallery-large
  .it-gallery-card-content h3 {
    font-size: 27px;
  }


  .it-gallery-number,
  .it-gallery-large
  .it-gallery-number {
    top: 16px;
    left: 16px;

    width: 37px;
    height: 37px;
  }


  /* FOOTER */

  .it-gallery-footer {
    align-items: flex-start;

    flex-direction: column;

    gap: 18px;

    margin-top: 25px;
  }


  .it-gallery-footer-count {
    display: none;
  }


  .it-gallery-footer-btn {
    width: 100%;

    justify-content: space-between;
  }
}

/* =========================================================
   SMALL MOBILE
========================================================= */

@media (max-width: 480px) {

  .it-gallery-header h2 {
    font-size: 33px;
  }

  .it-gallery-large {
    height: 320px;
  }

  .it-gallery-medium {
    height: 260px;
  }

  .it-gallery-large
  .it-gallery-card-content h3 {
    font-size: 24px;
  }
}

/** Quote Section **/
.it-quote-section {
  position: relative;
  overflow: hidden;
  padding: 130px 0;
  background: #07111f;
  font-family: "Heebo", sans-serif;
  color: #ffffff;
  isolation: isolate;
}


/* =========================================================
   BACKGROUND
========================================================= */

.it-quote-grid {
  position: absolute;
  inset: 0;
  z-index: -3;
  opacity: .28;

  background-image:
    linear-gradient(rgba(255,255,255,.035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.035) 1px, transparent 1px);

  background-size: 60px 60px;

  mask-image: linear-gradient(
    to bottom,
    transparent,
    black 20%,
    black 80%,
    transparent
  );
}


.it-quote-glow {
  position: absolute;
  border-radius: 50%;
  filter: blur(100px);
  pointer-events: none;
  z-index: -2;
}


.it-quote-glow-one {
  width: 420px;
  height: 420px;
  background: rgba(35, 125, 255, .15);
  left: -180px;
  top: 10%;
}


.it-quote-glow-two {
  width: 350px;
  height: 350px;
  background: rgba(0, 190, 255, .12);
  right: -150px;
  bottom: 5%;
}


/* =========================================================
   MAIN WRAPPER
========================================================= */

.it-quote-wrapper {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 80px;
  align-items: center;
}


/* =========================================================
   LEFT CONTENT
========================================================= */

.it-quote-content {
  position: relative;
  max-width: 620px;
}


.it-quote-label {
  display: flex;
  align-items: center;
  gap: 12px;

  margin-bottom: 28px;

  font-size: 11px;
  font-weight: 700;
  letter-spacing: 3px;
  color: #5fa7ff;
}


.it-quote-label span {
  width: 28px;
  height: 1px;
  background: #398cff;
}


.it-quote-mark {
  position: absolute;
  left: -5px;
  top: 35px;

  font-family: Georgia, serif;
  font-size: 170px;
  line-height: 1;

  color: rgba(60, 145, 255, .08);

  pointer-events: none;
}


.it-quote-content h2 {
  position: relative;
  z-index: 1;

  margin: 0 0 28px;

  font-size: clamp(42px, 4vw, 70px);
  line-height: 1.02;
  font-weight: 400;
  letter-spacing: -2px;
}


.it-quote-content h2 strong {
  display: block;
  color: #4c9aff;
  font-weight: 700;
}


.it-quote-description {
  max-width: 560px;
  margin: 0 0 35px;

  color: #9caec3;
  font-size: 16px;
  line-height: 1.9;
}


/* =========================================================
   CTA BUTTON
========================================================= */

.it-quote-main-btn {
  display: inline-flex;
  align-items: center;
  gap: 25px;
  padding: 16px 18px 16px 25px;
  color: #ffffff;
  background: #1677ff;
  border: 1px solid #3d96ff;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: .8px;
  text-decoration: none;
  transition: all .35s ease; 
}


.it-quote-main-btn i {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 42px;
  height: 42px;
  background: rgba(255,255,255,.14);
  font-size: 17px;
  transition: transform .35s ease;  
}


.it-quote-main-btn:hover {
  color: #ffffff;
  background: #0d67e5;
  transform: translateY(-3px);
}


.it-quote-main-btn:hover i {
  transform: rotate(45deg); 
}


/* =========================================================
   RIGHT PROJECT PANEL
========================================================= */

.it-quote-panel {
  position: relative;

  padding: 28px;

  background:
    linear-gradient(
      145deg,
      rgba(22, 119, 255, .09),
      rgba(255,255,255,.025)
    );

  border: 1px solid rgba(112, 165, 230, .18);

  box-shadow:
    0 30px 80px rgba(0,0,0,.35);

  backdrop-filter: blur(15px);
}


/* Corner Decorations */

.it-quote-panel::before,
.it-quote-panel::after {
  content: "";
  position: absolute;

  width: 45px;
  height: 45px;

  pointer-events: none;
}


.it-quote-panel::before {
  top: -1px;
  left: -1px;

  border-top: 2px solid #398cff;
  border-left: 2px solid #398cff;
}


.it-quote-panel::after {
  right: -1px;
  bottom: -1px;

  border-right: 2px solid #398cff;
  border-bottom: 2px solid #398cff;
}


/* =========================================================
   PANEL HEADER
========================================================= */

.it-quote-panel-header {
  display: flex;
  align-items: center;
  justify-content: space-between;

  padding-bottom: 22px;

  border-bottom: 1px solid rgba(255,255,255,.08);
}


.it-quote-panel-status {
  display: flex;
  align-items: center;
  gap: 10px;

  color: #8fa7c0;

  font-size: 10px;
  font-weight: 700;
  letter-spacing: 2px;
}


.it-quote-status-dot {
  width: 7px;
  height: 7px;

  border-radius: 50%;
  background: #3cffaa;

  box-shadow: 0 0 12px rgba(60,255,170,.7);

  animation: itQuotePulse 2s infinite;
}


@keyframes itQuotePulse {

  0%,
  100% {
    opacity: 1;
    transform: scale(1);
  }

  50% {
    opacity: .4;
    transform: scale(.7);
  }

}


.it-quote-panel-id {
  color: #4b92f7;

  font-size: 10px;
  font-weight: 700;
  letter-spacing: 1px;
}


/* =========================================================
   PROJECT VISUAL
========================================================= */

.it-quote-visual {
  margin-top: 25px;
  padding: 25px;

  background: #091827;

  border: 1px solid rgba(255,255,255,.06);
}


.it-quote-visual-top {
  display: flex;
  align-items: center;
  justify-content: space-between;

  margin-bottom: 30px;

  color: #607a96;

  font-size: 10px;
  font-weight: 700;
  letter-spacing: 2px;
}


.it-quote-visual-top i {
  font-size: 17px;
  color: #3f8ef7;
}


/* =========================================================
   CODE / PROJECT STEPS
========================================================= */

.it-quote-code {
  display: flex;
  flex-direction: column;
  gap: 17px;
}


.it-quote-code > div {
  display: flex;
  align-items: center;
  gap: 18px;
}


.it-code-number {
  min-width: 25px;

  color: #31577e;

  font-size: 10px;
  font-weight: 700;
}


.it-code-text {
  color: #718aa4;

  font-size: 11px;
  font-weight: 600;
  letter-spacing: 1.2px;
}


.it-code-text strong {
  color: #e7f1ff;
  font-weight: 600;
}


/* =========================================================
   PROGRESS
========================================================= */

.it-quote-progress {
  margin-top: 32px;
  padding-top: 22px;

  border-top: 1px solid rgba(255,255,255,.06);
}


.it-progress-info {
  display: flex;
  justify-content: space-between;
  align-items: center;

  margin-bottom: 10px;

  color: #607b98;

  font-size: 9px;
  font-weight: 700;
  letter-spacing: 1.5px;
}


.it-progress-info strong {
  color: #4d9aff;
}


.it-progress-bar {
  width: 100%;
  height: 3px;

  background: #14283d;
}


.it-progress-bar span {
  display: block;

  width: 100%;
  height: 100%;

  background: #398cff;

  box-shadow: 0 0 12px rgba(57,140,255,.7);
}


/* =========================================================
   INFO ITEMS
========================================================= */

.it-quote-info {
  display: grid;
  grid-template-columns: repeat(3, 1fr);

  margin-top: 25px;

  border-top: 1px solid rgba(255,255,255,.07);
  border-bottom: 1px solid rgba(255,255,255,.07);
}


.it-quote-info-item {
  padding: 22px 15px;

  border-right: 1px solid rgba(255,255,255,.07);
}


.it-quote-info-item:last-child {
  border-right: 0;
}


.it-quote-info-item span {
  display: block;

  margin-bottom: 8px;

  color: #315579;

  font-size: 9px;
  font-weight: 700;
}


.it-quote-info-item strong {
  display: block;

  margin-bottom: 3px;

  color: #e5f0ff;

  font-size: 12px;
  letter-spacing: 1px;
}


.it-quote-info-item small {
  color: #58718b;

  font-size: 8px;
  letter-spacing: 1px;
}


/* =========================================================
   PANEL FOOTER
========================================================= */

.it-quote-panel-footer {
  display: flex;
  justify-content: space-between;
  gap: 20px;

  padding-top: 22px;
}


.it-quote-panel-footer div {
  display: flex;
  align-items: center;
  gap: 9px;

  color: #5f7893;

  font-size: 8px;
  font-weight: 700;
  letter-spacing: 1.2px;
}


.it-quote-panel-footer i {
  color: #398cff;
  font-size: 14px;
}


/* =========================================================
   BOTTOM STATEMENT
========================================================= */

.it-quote-bottom {
  display: flex;
  align-items: center;
  gap: 25px;

  margin-top: 85px;
}


.it-quote-bottom-line {
  flex: 1;
  height: 1px;

  background: rgba(255,255,255,.1);
}


.it-quote-bottom p {
  margin: 0;

  color: #627b95;

  font-size: 10px;
  font-weight: 700;
  letter-spacing: 2px;
  white-space: nowrap;
}


.it-quote-bottom p strong {
  color: #4d99ff;
}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 991px) {

  .it-quote-section {
    padding: 100px 0;
  }

  .it-quote-wrapper {
    grid-template-columns: 1fr;
    gap: 60px;
  }

  .it-quote-content {
    max-width: 700px;
  }

  .it-quote-content h2 {
    font-size: 58px;
  }

  .it-quote-panel {
    max-width: 700px;
  }

}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767px) {

  .it-quote-section {
    padding: 80px 0;
  }

  .it-quote-wrapper {
    gap: 45px;
  }

  .it-quote-label {
    font-size: 9px;
    letter-spacing: 2px;
  }

  .it-quote-content h2 {
    font-size: 43px;
    letter-spacing: -1px;
  }

  .it-quote-description {
    font-size: 14px;
    line-height: 1.8;
  }

  .it-quote-mark {
    font-size: 120px;
  }

  .it-quote-panel {
    padding: 18px;
  }

  .it-quote-visual {
    padding: 18px;
  }

  .it-quote-info-item {
    padding: 18px 10px;
  }

  .it-quote-info-item strong {
    font-size: 10px;
  }

  .it-quote-info-item small {
    font-size: 7px;
  }

  .it-quote-panel-footer {
    flex-direction: column;
    gap: 12px;
  }

  .it-quote-bottom {
    margin-top: 55px;
    gap: 12px;
  }

  .it-quote-bottom p {
    font-size: 7px;
    letter-spacing: 1px;
    text-align: center;
  }

}


@media (max-width: 480px) {

  .it-quote-content h2 {
    font-size: 36px;
  }

  .it-quote-main-btn {
    width: 100%;
    justify-content: space-between;
  }

  .it-quote-info {
    grid-template-columns: 1fr;
  }

  .it-quote-info-item {
    border-right: 0;
    border-bottom: 1px solid rgba(255,255,255,.07);
  }

  .it-quote-info-item:last-child {
    border-bottom: 0;
  }

  .it-quote-bottom-line {
    display: none;
  }

}

/** Testimonial **/
.it-client-voices{
    position:relative;
    width:100%;
    min-height:100vh;
    padding:35px 40px 46px;
    overflow:hidden;
    font-family: "Heebo", sans-serif;
    background:
        linear-gradient(
            135deg,
            #f6fbff 0%,
            #ffffff 48%,
            #f7fcff 100%
        );
}


/* =========================================================
   BACKGROUND GRID
========================================================= */

.it-client-voices::before{
    content:"";
    position:absolute;
    inset:0;

    background-image:
        linear-gradient(
            rgba(55,145,224,.075) 1px,
            transparent 1px
        ),
        linear-gradient(
            90deg,
            rgba(55,145,224,.075) 1px,
            transparent 1px
        );

    background-size:48px 48px;

    pointer-events:none;
}


/* =========================================================
   BACKGROUND CIRCLES
========================================================= */

.it-bg-circle{
    position:absolute;
    border-radius:50%;
    pointer-events:none;
}

.it-bg-circle-left{
    width:265px;
    height:265px;

    left:-48px;
    top:-85px;

    background:rgba(185,222,249,.65);
}

.it-bg-circle-right{
    width:215px;
    height:215px;

    right:-105px;
    top:150px;

    background:rgba(217,238,255,.72);
}

.it-bg-small{
    width:75px;
    height:75px;

    left:48%;
    bottom:15px;

    background:rgba(222,241,255,.48);
}


/* =========================================================
   MAIN CONTAINER
========================================================= */

.it-client-container{
    position:relative;
    z-index:2;

    width:100%;
    max-width:1458px;

    margin:0 auto;
}


/* =========================================================
   SECTION HEADER
========================================================= */

.it-client-header{
    width:100%;
    text-align:center;

    margin-bottom:17px;
}


/* Eyebrow */

.it-client-eyebrow{
    display:flex;
    align-items:center;
    justify-content:center;

    gap:22px;

    margin-bottom:7px;

    color:#096be5;

    font-size:11px;
    font-weight:700;

    letter-spacing:3px;
    text-transform:uppercase;
}

.it-client-eyebrow::before,
.it-client-eyebrow::after{
    content:"";

    width:43px;
    height:1.5px;

    background:#096be5;
}


/* Heading */

.it-client-header h1{
    margin:0;

    color:#132d6b;

    /* font-family:"Plus Jakarta Sans",sans-serif; */
    font-family: "Heebo", sans-serif;

    font-size:48px;
    font-weight:500;

    line-height:1.08;

    letter-spacing:-2px;
}

.it-client-header h1 strong{
    display:block;

    color:#0871ea;

    font-weight:800;
}


/* Description */

.it-client-header p{
    max-width:730px;

    margin:15px auto 0;

    color:#5573a7;

    font-size:17px;
    font-weight:400;

    line-height:1.35;

    text-align:center;
}


/* =========================================================
   MAIN TESTIMONIAL CARD
========================================================= */

.it-testimonial-wrapper{
    display:grid;

    grid-template-columns:400px minmax(0,1fr);

    width:100%;

    min-height:559px;

    overflow:hidden;

    border:1px solid #cbe5fa;
    border-radius:12px;

    background:rgba(255,255,255,.92);
}


/* =========================================================
   LEFT CLIENT SIDEBAR
========================================================= */

.it-client-sidebar{
    position:relative;

    padding:23px 23px 18px;

    border-right:1px solid #cbe3f7;
}


/* Sidebar heading */

.it-sidebar-heading{
    display:flex;
    align-items:center;

    width:100%;
    height:30px;

    margin-bottom:12px;
}

.it-sidebar-title{
    display:flex;
    align-items:center;

    gap:13px;

    color:#183e7a;

    font-size:13px;
    font-weight:700;

    letter-spacing:2px;
    text-transform:uppercase;
}

.it-sidebar-title::before{
    content:"";

    width:13px;
    height:13px;

    flex:none;

    border-radius:50%;

    background:#29c45c;
}

.it-sidebar-count{
    display:flex;
    align-items:center;

    gap:22px;

    margin-left:auto;

    color:#163a78;

    font-size:16px;
    font-weight:700;
}

.it-sidebar-count::before{
    content:"";

    width:97px;
    height:1px;

    background:#c8ddec;
}


/* =========================================================
   CLIENT ITEM
========================================================= */

.it-client-item{
    position:relative;

    display:flex;
    align-items:center;

    min-height:99px;

    padding:11px 20px;

    border-bottom:1px solid #d5e6f4;

    cursor:pointer;

    transition:
        background .3s ease,
        transform .3s ease;
}

.it-client-item:hover{
    background:#f5fbff;
}


/* Active item */

.it-client-item.active{
    background:
        linear-gradient(
            90deg,
            #e8f5ff 0%,
            #dff1ff 100%
        );

    border-bottom-color:transparent;

    border-radius:8px;
}

.it-client-item.active::before{
    content:"";

    position:absolute;

    left:0;
    top:0;
    bottom:0;

    width:5px;

    background:#0874ee;

    border-radius:5px 0 0 5px;
}


/* =========================================================
   CLIENT AVATAR
========================================================= */

.it-client-avatar{
    width:72px;
    height:72px;

    min-width:72px;

    overflow:hidden;

    border-radius:50%;

    border:4px solid #edf7ff;

    background:#e3f2fc;

    box-shadow:
        0 2px 8px rgba(25,95,145,.08);
}

.it-client-avatar img{
    display:block;

    width:100%;
    height:100%;

    object-fit:cover;
}


/* =========================================================
   CLIENT INFORMATION
========================================================= */

.it-client-info{
    padding-left:20px;

    text-align:left;
}

.it-client-info h3{
    margin:0 0 4px;

    color:#102f6d;

    font-family:"Plus Jakarta Sans",sans-serif;

    font-size:17px;
    font-weight:700;

    line-height:1.25;
}

.it-client-role{
    color:#0871ea;

    font-size:14px;

    line-height:1.45;
}

.it-client-company{
    color:#5873a5;

    font-size:14px;

    line-height:1.45;
}


/* =========================================================
   CLIENT CONTROLS
========================================================= */

.it-client-controls{
    display:flex;
    align-items:center;

    gap:20px;

    padding:18px 16px 0;
}


/* Arrows */

.it-client-arrow{
    display:flex;
    align-items:center;
    justify-content:center;

    width:39px;
    height:39px;

    flex:none;

    border:1px solid #acd4f4;
    border-radius:50%;

    background:#fff;

    color:#0a4097;

    font-size:26px;
    line-height:1;

    cursor:pointer;

    transition:.25s ease;
}

.it-client-arrow:hover{
    color:#fff;
    background:#0872ed;
    border-color:#0872ed;
}


/* Progress */

.it-client-progress{
    flex:1;

    height:7px;

    overflow:hidden;

    border-radius:20px;

    background:#dcecf9;
}

.it-client-progress span{
    display:block;

    width:25%;
    height:100%;

    border-radius:20px;

    background:#0873ed;

    transition:width .3s ease;
}


/* =========================================================
   RIGHT TESTIMONIAL AREA
========================================================= */

.it-testimonial-content{
    position:relative;

    display:grid;

    grid-template-columns:minmax(0,1fr) 320px;

    column-gap:52px;

    padding:47px 43px 30px;
}


/* =========================================================
   LEFT TESTIMONIAL CONTENT
========================================================= */

.it-testimonial-left{
    position:relative;
    z-index:2;

    min-width:0;
}


/* =========================================================
   RATING
========================================================= */

.it-rating{
    display:flex;
    align-items:center;

    gap:17px;

    margin-bottom:33px;
}

.it-stars{
    display:flex;
    align-items:center;

    gap:3px;

    color:#f8b51b;

    font-size:27px;
    line-height:1;
}

.it-rating-label{
    color:#35588e;

    font-size:12px;
    font-weight:700;

    letter-spacing:2px;

    text-transform:uppercase;
}


/* =========================================================
   LARGE QUOTE MARK
========================================================= */

.it-large-quote{
    position:absolute;

    top:-1px;
    right:-55px;

    color:#d8eafb;

    font-family:Georgia,serif;

    font-size:145px;
    font-weight:700;

    line-height:.7;

    pointer-events:none;
}


/* =========================================================
   TESTIMONIAL TEXT
========================================================= */

.it-testimonial-text{
    position:relative;
    z-index:2;

    width:100%;
    max-width:670px;

    color:#102d70;

    /* font-family:"Plus Jakarta Sans",sans-serif; */
    font-family: "Heebo", sans-serif;

    font-size:17px;
    font-weight:500;

    line-height:1.47;

    letter-spacing:-1px;

    text-align:left;
}


/* =========================================================
   PROJECT / RESULT
========================================================= */

.it-project-result{
    display:grid;

    grid-template-columns:1fr 1px 1fr;

    width:100%;
    max-width:670px;

    margin-top:38px;

    padding-top:29px;

    border-top:1px solid #d3e3f0;
}

.it-project-divider{
    width:1px;

    background:#92c7f3;
}

.it-project-column{
    text-align:left;
}

.it-project-column:nth-child(3){
    padding-left:54px;
}

.it-project-label{
    margin-bottom:7px;

    color:#2c5088;

    font-size:13px;
    font-weight:700;

    letter-spacing:1.7px;

    text-transform:uppercase;
}

.it-project-value{
    color:#112f70;

    font-family:"Plus Jakarta Sans",sans-serif;

    font-size:13px;
    font-weight:700;

    line-height:1.3;
}


/* =========================================================
   CLIENT PORTRAIT
========================================================= */

.it-featured-client{
    position:relative;
    z-index:3;

    display:flex;
    flex-direction:column;
    align-items:center;

    padding-top:0;

    text-align:center;
}

.it-featured-image{
    width:314px;
    height:330px;

    overflow:hidden;

    border-radius:12px;

    background:#deedf7;

    box-shadow:
        0 10px 25px rgba(27,93,142,.07);
}

.it-featured-image img{
    display:block;

    width:100%;
    height:100%;

    object-fit:cover;
}


/* =========================================================
   SIGNATURE
========================================================= */

.it-signature{
    margin-top:12px;

    color:#0873ed;

    font-family:"Caveat",cursive;

    font-size:46px;
    font-weight:600;

    line-height:1;

    transform:rotate(-3deg);

    white-space:nowrap;
}


/* =========================================================
   FEATURED ROLE
========================================================= */

.it-featured-role{
    margin-top:8px;

    color:#1b4789;

    font-size:12px;
    font-weight:700;

    letter-spacing:2px;

    text-transform:uppercase;

    text-align:center;
}

.it-featured-company{
    margin-top:5px;

    color:#5572a4;

    font-size:12px;

    letter-spacing:1.7px;

    text-transform:uppercase;

    text-align:center;
}


/* =========================================================
   BUILT ON TRUST
========================================================= */

.it-built-trust{
    position:absolute;

    left:43px;
    right:43px;
    bottom:27px;

    display:flex;
    align-items:center;

    gap:20px;

    color:#0872ed;

    font-size:13px;
    font-weight:700;

    letter-spacing:3px;

    text-transform:uppercase;
}

.it-built-trust::before,
.it-built-trust::after{
    content:"";

    flex:1;

    height:1px;

    background:#8fc4f1;
}

.it-built-trust span{
    white-space:nowrap;
}


/* =========================================================
   BOTTOM VALUES
========================================================= */

.it-values{
    display:grid;

    grid-template-columns:repeat(4,1fr);

    width:100%;

    min-height:138px;

    margin-top:10px;

    overflow:hidden;

    border:1px solid #cce5f8;
    border-radius:10px;

    background:rgba(255,255,255,.92);
}


/* =========================================================
   VALUE ITEM
========================================================= */

.it-value-item{
    position:relative;

    display:flex;
    align-items:center;

    gap:27px;

    padding:20px 38px;
}

.it-value-item:not(:last-child)::after{
    content:"";

    position:absolute;

    top:30px;
    right:0;

    width:1px;
    height:81px;

    background:#b8dcf8;
}


/* =========================================================
   VALUE ICON
========================================================= */

.it-value-icon{
    display:flex;
    align-items:center;
    justify-content:center;

    width:78px;
    height:78px;

    min-width:78px;

    border-radius:50%;

    background:#e0f1ff;

    color:#0873ed;
}

.it-value-icon svg{
    width:42px;
    height:42px;

    fill:none;

    stroke:currentColor;

    stroke-width:1.8;

    stroke-linecap:round;
    stroke-linejoin:round;
}


/* =========================================================
   VALUE TEXT
========================================================= */

.it-value-number{
    margin-bottom:8px;

    color:#0873ed;

    font-family:"Plus Jakarta Sans",sans-serif;

    font-size:31px;
    font-weight:500;

    line-height:1;
}

.it-value-title{
    color:#183c7a;

    font-size:14px;

    font-weight:500;

    line-height:1.65;

    letter-spacing:2px;

    text-transform:uppercase;

    text-align:left;
}


/* =========================================================
   RESPONSIVE — 1250px
========================================================= */

@media(max-width:1250px){

    .it-client-voices{
        padding-left:25px;
        padding-right:25px;
    }

    .it-testimonial-wrapper{
        grid-template-columns:330px minmax(0,1fr);
    }

    .it-testimonial-content{
        grid-template-columns:minmax(0,1fr) 270px;

        column-gap:25px;

        padding-left:30px;
        padding-right:30px;
    }

    .it-featured-image{
        width:260px;
        height:300px;
    }

    .it-testimonial-text{
        font-size:27px;
    }

    .it-value-item{
        gap:16px;
        padding:20px;
    }

    .it-value-icon{
        width:65px;
        height:65px;
        min-width:65px;
    }

    .it-value-title{
        font-size:12px;
    }
}


/* =========================================================
   RESPONSIVE — 1000px
========================================================= */

@media(max-width:1000px){

    .it-client-header h1{
        font-size:43px;
    }

    .it-client-header p{
        font-size:19px;
    }

    .it-testimonial-wrapper{
        grid-template-columns:1fr;
    }

    .it-client-sidebar{
        border-right:0;
        border-bottom:1px solid #cbe3f7;
    }

    .it-client-item{
        display:none;
    }

    .it-client-item.active{
        display:flex;
    }

    .it-client-controls{
        display:none;
    }

    .it-testimonial-content{
        min-height:600px;

        grid-template-columns:minmax(0,1fr) 280px;
    }

    .it-values{
        grid-template-columns:repeat(2,1fr);
    }

    .it-value-item:nth-child(2)::after{
        display:none;
    }
}


/* =========================================================
   RESPONSIVE — 760px
========================================================= */

@media(max-width:760px){

    .it-client-voices{
        padding:30px 15px;
    }

    .it-client-header h1{
        font-size:35px;
        letter-spacing:-1px;
    }

    .it-client-header p{
        font-size:17px;
    }

    .it-client-eyebrow{
        font-size:13px;
        gap:12px;
    }

    .it-client-eyebrow::before,
    .it-client-eyebrow::after{
        width:28px;
    }

    .it-testimonial-content{
        display:block;

        min-height:auto;

        padding:30px 25px 35px;
    }

    .it-testimonial-text{
        max-width:100%;

        font-size:24px;

        line-height:1.45;
    }

    .it-large-quote{
        font-size:110px;
    }

    .it-project-result{
        grid-template-columns:1fr;

        gap:20px;
    }

    .it-project-divider{
        display:none;
    }

    .it-project-column:nth-child(3){
        padding-left:0;
    }

    .it-featured-client{
        margin-top:35px;
    }

    .it-featured-image{
        width:100%;
        max-width:330px;

        height:310px;
    }

    .it-built-trust{
        position:relative;

        left:auto;
        right:auto;
        bottom:auto;

        margin-top:35px;
    }

    .it-values{
        grid-template-columns:1fr;
    }

    .it-value-item{
        min-height:105px;

        padding:18px 25px;
    }

    .it-value-item:not(:last-child)::after{
        top:auto;
        right:25px;
        bottom:0;

        width:calc(100% - 50px);
        height:1px;
    }

    .it-value-icon{
        width:60px;
        height:60px;

        min-width:60px;
    }

    .it-value-icon svg{
        width:34px;
        height:34px;
    }
}


/* =========================================================
   RESPONSIVE — 480px
========================================================= */

@media(max-width:480px){

    .it-client-header h1{
        font-size:29px;
    }

    .it-client-header p{
        font-size:15px;
    }

    .it-client-sidebar{
        padding:18px 15px;
    }

    .it-sidebar-count::before{
        width:40px;
    }

    .it-client-avatar{
        width:60px;
        height:60px;

        min-width:60px;
    }

    .it-client-info{
        padding-left:14px;
    }

    .it-client-info h3{
        font-size:15px;
    }

    .it-client-role,
    .it-client-company{
        font-size:12px;
    }

    .it-rating{
        gap:12px;
    }

    .it-stars{
        font-size:22px;
    }

    .it-rating-label{
        font-size:9px;
    }

    .it-testimonial-text{
        font-size:21px;
    }

    .it-built-trust{
        font-size:10px;
        letter-spacing:2px;
    }

    .it-value-number{
        font-size:27px;
    }
}


/** Features ***/
/* =========================================================
   IT SOLUTIONS — MODERN FEATURES SECTION
========================================================= */

.it-feature-section {
    position: relative;
    width: 100%;
    padding: 110px 0 95px;
    font-family: "Heebo", sans-serif;
    overflow: hidden;
    background: #ffffff;
}


/* =========================================================
   BACKGROUND SHAPES
========================================================= */

.it-feature-section::before {
    content: "";
    position: absolute;
    width: 520px;
    height: 520px;
    top: -260px;
    right: -160px;
    border-radius: 50%;
    background: rgba(35, 102, 245, 0.08);
    pointer-events: none;
}

.it-feature-section::after {
    content: "";
    position: absolute;
    width: 450px;
    height: 450px;
    bottom: -250px;
    left: -180px;
    border-radius: 50%;
    background: rgba(91, 112, 255, 0.07);
    pointer-events: none;
}


/* Decorative curved shapes */

.it-feature-shape {
    position: absolute;
    pointer-events: none;
    z-index: 0;
}

.it-feature-shape-top {
    width: 350px;
    height: 180px;
    right: -100px;
    top: -55px;
    border-radius: 0 0 0 180px;
    border-bottom: 1px solid rgba(35, 102, 245, 0.35);
    border-left: 1px solid rgba(35, 102, 245, 0.35);
}

.it-feature-shape-bottom {
    width: 330px;
    height: 180px;
    left: -120px;
    bottom: -70px;
    border-radius: 180px 180px 0 0;
    border-top: 1px solid rgba(35, 102, 245, 0.25);
    border-right: 1px solid rgba(35, 102, 245, 0.25);
}


/* =========================================================
   MAIN WRAPPER
========================================================= */

.it-feature-wrapper {
    position: relative;
    z-index: 2;

    display: grid;
    grid-template-columns: minmax(0, 1.15fr) minmax(400px, 0.85fr);
    gap: 45px;

    align-items: center;
}


/* =========================================================
   LEFT CONTENT
========================================================= */

.it-feature-left {
    position: relative;
    z-index: 3;
}


/* =========================================================
   EYEBROW
========================================================= */

.it-feature-eyebrow {
    display: flex;
    align-items: center;
    gap: 15px;

    margin-bottom: 20px;

    font-size: 14px;
    font-weight: 700;
    letter-spacing: 4px;
    color: #125be8;
    text-transform: uppercase;
}

.it-feature-eyebrow span {
    width: 42px;
    height: 2px;
    display: block;
    background: #125be8;
}


/* =========================================================
   HEADING
========================================================= */

.it-feature-title {
    max-width: 650px;
    margin: 0 0 20px;

    font-size: 57px;
    line-height: 1.08;
    font-weight: 800;
    letter-spacing: -2px;

    color: #101e43;
}

.it-feature-title strong {
    display: block;

    color: #1465ed;
    font-weight: 800;
}


/* =========================================================
   DESCRIPTION
========================================================= */

.it-feature-description {
    max-width: 680px;

    margin: 0 0 30px;

    font-size: 17px;
    line-height: 1.65;

    color: #52688e;
}


/* =========================================================
   FEATURES GRID
========================================================= */

.it-feature-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 18px;
    width: calc(100% + 60px);
}


/* =========================================================
   FEATURE CARD
========================================================= */

.it-feature-card {
    position: relative;

    /* min-height: 280px; */
    height: 235px;
    min-height: 0;

    padding: 20px 24px 18px;

    border: 1px solid rgba(46, 104, 221, 0.10);
    border-radius: 16px;

    background: rgba(255, 255, 255, 0.92);

    box-shadow:
        0 10px 35px rgba(37, 87, 170, 0.08);

    overflow: hidden;

    transition:
        transform 0.35s ease,
        box-shadow 0.35s ease,
        border-color 0.35s ease;
}


/* Corner circle */

.it-feature-card::after {
    content: "";

    position: absolute;

    width: 105px;
    height: 105px;

    top: -45px;
    right: -45px;

    border-radius: 50%;

    background: rgba(74, 119, 245, 0.09);
}


.it-feature-card:hover {
    transform: translateY(-7px);

    border-color: rgba(38, 102, 235, 0.20);

    box-shadow:
        0 18px 45px rgba(37, 87, 170, 0.13);
}


/* =========================================================
   CARD ICON
========================================================= */

.it-feature-icon {
    position: relative;
    z-index: 2;

    width: 68px;
    height: 64px;

    display: flex;
    align-items: center;
    justify-content: center;

    margin-bottom: 18px;

    border-radius: 17px;

    font-size: 29px;
}


/* Blue */

.card-blue .it-feature-icon {
    color: #1465ed;
    background: #cfe0ff;
}

.card-blue::after {
    background: rgba(55, 109, 240, 0.11);
}


/* Green */

.card-green .it-feature-icon {
    color: #16a47b;
    background: #c7f0e5;
}

.card-green::after {
    background: rgba(40, 179, 139, 0.10);
}


/* Purple */

.card-purple .it-feature-icon {
    color: #7250ed;
    background: #ded7ff;
}

.card-purple::after {
    background: rgba(114, 80, 237, 0.10);
}


/* Coral */

.card-coral .it-feature-icon {
    color: #ff6655;
    background: #ffd9d3;
}

.card-coral::after {
    background: rgba(255, 102, 85, 0.10);
}


/* Sky */

.card-sky .it-feature-icon {
    color: #1465ed;
    background: #cce0ff;
}


/* Violet */

.card-violet .it-feature-icon {
    color: #5e43e9;
    background: #dcd7ff;
}


/* =========================================================
   CARD TITLE
========================================================= */

.it-feature-card h3 {
    position: relative;
    z-index: 2;

    margin: 0 0 10px;

    font-size: 20px;
    line-height: 1.25;

    font-weight: 800;

    color: #101d43;
}


/* =========================================================
   CARD DESCRIPTION
========================================================= */

.it-feature-card p {
    position: relative;
    z-index: 2;

    margin: 0;

    max-width: 230px;

    font-size: 15.5px;
    line-height: 1.5;

    color: #52698f;
    
}


/* =========================================================
   CARD ARROW
========================================================= */

.it-feature-arrow {
    position: absolute;
    z-index: 4;

    left: 24px;
    bottom: 17px;

    width: 40px;
    height: 40px;

    display: flex;
    align-items: center;
    justify-content: center;

    border-radius: 50%;

    color: #ffffff !important;

    font-size: 17px;

    text-decoration: none;

    transition:
        transform 0.3s ease,
        box-shadow 0.3s ease;
}


/* Arrow colors */

.card-blue .it-feature-arrow {
    background: #1768ed;
}

.card-green .it-feature-arrow {
    background: #30b18b;
}

.card-purple .it-feature-arrow {
    background: #754bed;
}

.card-coral .it-feature-arrow {
    background: #ff6855;
}

.card-sky .it-feature-arrow {
    background: #2687ed;
}

.card-violet .it-feature-arrow {
    background: #714ce8;
}


.it-feature-arrow:hover {
    color: #ffffff !important;
    transform: translateX(5px);

    box-shadow:
        0 8px 20px rgba(20, 101, 237, 0.25);
}


/* =========================================================
   RIGHT VISUAL
========================================================= */

.it-feature-right {
    position: relative;

    min-height: 650px;

    display: flex;
    align-items: center;
    justify-content: center;
}


/* =========================================================
   IMAGE AREA
========================================================= */

.it-feature-image-wrap {
    position: relative;

    width: 100%;
    max-width: 620px;

    display: flex;
    align-items: center;
    justify-content: center;
}


/* Glow */

.it-feature-glow {
    position: absolute;

    width: 480px;
    height: 480px;

    border-radius: 50%;

    background:
        radial-gradient(
            circle,
            rgba(55, 119, 255, 0.18) 0%,
            rgba(55, 119, 255, 0.08) 40%,
            transparent 72%
        );

    filter: blur(12px);
}


/* Main image */

.it-feature-main-image {
    position: relative;
    z-index: 2;

    display: block;

    width: 100%;
    max-width: 600px;
    height: auto;

    object-fit: contain;

    filter:
        drop-shadow(0 25px 35px rgba(31, 78, 155, 0.16));

    animation: itFeatureFloat 5s ease-in-out infinite;
}


@keyframes itFeatureFloat {

    0% {
        transform: translateY(0);
    }

    50% {
        transform: translateY(-10px);
    }

    100% {
        transform: translateY(0);
    }

}


/* =========================================================
   TOP HANDWRITTEN NOTE
========================================================= */

.it-feature-note {
    position: absolute;
    z-index: 5;

    color: #0f57dc;

    font-family: "Comic Sans MS", "Segoe Print", cursive;

    transform: rotate(-7deg);
}


.note-top {
    top: 15px;
    left: 55px;

    font-size: 23px;
    line-height: 1.1;
}


.note-top span,
.note-top strong {
    display: block;
    font-weight: 400;
}


.note-arrow {
    margin-top: 5px;

    margin-left: 90px;

    font-size: 42px;

    transform: rotate(12deg);
}


/* =========================================================
   BOTTOM HANDWRITTEN NOTE
========================================================= */

.note-bottom {
    right: 15px;
    bottom: 0;

    color: #10215b;

    font-size: 27px;

    text-align: center;

    transform: rotate(-7deg);
}


.note-bottom span,
.note-bottom strong {
    display: block;
    font-weight: 400;
}


.note-line {
    width: 125px;
    height: 3px;

    margin: 8px auto 0;

    border-radius: 50%;

    background: #1768ed;

    transform: rotate(-7deg);
}


/* =========================================================
   RESPONSIVE — TABLET
========================================================= */

@media (max-width: 1199px) {

    .it-feature-wrapper {
        grid-template-columns: 1fr;
        gap: 60px;
    }

    .it-feature-left {
        max-width: 900px;
        margin: 0 auto;
    }

    .it-feature-title {
        max-width: 700px;
    }

    .it-feature-description {
        max-width: 720px;
    }

    .it-feature-right {
        min-height: 560px;
        max-width: 700px;
        width: 100%;
        margin: 0 auto;
    }

}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 991px) {

    .it-feature-section {
        padding: 80px 0;
    }

    .it-feature-title {
        font-size: 48px;
    }

    .it-feature-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .it-feature-right {
        min-height: 500px;
    }

    .note-top {
        left: 30px;
    }

    .note-bottom {
        right: 0;
    }

}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767px) {

    .it-feature-section {
        padding: 65px 0;
    }

    .it-feature-title {
        font-size: 39px;
        line-height: 1.12;
        letter-spacing: -1px;
    }

    .it-feature-description {
        font-size: 16px;
        line-height: 1.6;
    }

    .it-feature-eyebrow {
        font-size: 12px;
        letter-spacing: 3px;
    }

    .it-feature-grid {
        grid-template-columns: 1fr;
        gap: 16px;
    }

    .it-feature-card {
        min-height: 260px;
    }

    .it-feature-right {
        min-height: 430px;
    }

    .it-feature-main-image {
        max-width: 100%;
    }

    .note-top {
        top: 5px;
        left: 0;
        font-size: 17px;
    }

    .note-arrow {
        font-size: 32px;
        margin-left: 65px;
    }

    .note-bottom {
        right: 0;
        bottom: 0;
        font-size: 20px;
    }

}


/* =========================================================
   SMALL MOBILE
========================================================= */

@media (max-width: 480px) {

    .it-feature-title {
        font-size: 34px;
    }

    .it-feature-card {
        padding: 19px;
    }

    .it-feature-icon {
        width: 60px;
        height: 58px;
        font-size: 25px;
    }

    .it-feature-card h3 {
        font-size: 19px;
    }

    .it-feature-card p {
        font-size: 14.5px;
    }

    .it-feature-right {
        min-height: 360px;
    }
}