/* Defaults Override */
#inner-page-wrapper>.custom-container {
	max-width: 100%;
	padding: 0;
}

.ip-container .breadcrumbs-holder {
	display: none;
}

.ip-services section:not(.ip-services-banner) {
  position: relative;
  z-index: 10;
}

.global-title.alt h2 {
	color: #fff;
}

.global-title.alt h2 span {
    color: #cadff3;
}

/* Section 1 */
.ip-services-banner {
  position: fixed;
  min-height: clamp(800px,90vh,986px);
  left: 0;
  top: 0;
  width: 100%;
  z-index: 1;
}

.ip-services-banner-title h1 {
    font-size: 37px;
}

.ip-services-banner-title h1 em {
    font-size: 94px;
    font-style: normal;
    font-weight: 700;
    display: block;
    color: var(--secondary);
}

.ip-services-banner-title span {
    display: block;
    font-size: 27px;
    max-width: 470px;
    width: 100%;
    margin: 20px 0 0;
    line-height: 1.4;
}

.ip-services-banner-btn {
    margin: 50px 0 0;
}

.ip-services-main {
	overflow: hidden;
	background: rgb(255, 255, 255);
	background: linear-gradient(45deg, rgba(255, 255, 255, 0) 46%, rgb(134 193 255) 100%);
}

.ip-services-banner .bg-canvas {
	/* content: '';
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	background-image: url(/wp-content/uploads/2024/07/marketing3new.jpg);
	background-size: cover;
	background-repeat: no-repeat;
	background-attachment: fixed;
	filter: grayscale(1); */
	opacity: 0.2;
}

.ip-services-main::after {
	content: '';
	position: absolute;
	left: 0;
	bottom: 0;
	width: 100%;
	height: 50%;
	background: rgb(255, 255, 255);
	background: linear-gradient(0deg, rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 0) 100%);
	z-index: 2;
}


.ip-services-banner-content {
	position: relative;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
	/* text-align: center; */
	z-index: 20;
	padding: 300px 15px;
	min-height: 100vh;
}

.bubble {
	background-color: rgba(255, 255, 255, 0.4);
	display: inline-block;
	width: 40px;
	height: 40px;
	border-radius: 50%;
	position: absolute;
}

.bubble span {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translateX(-50%) translateY(-50%);
    display: block;
	color: #fff;
}

.bubble-1 {
	opacity: 0.42;
	left: 91vw;
	top: 87vh;
	animation: move-1 30.02s infinite;
	transform: translate(0, 0) scale(0.72);
}

.bubble-2 {
	opacity: 0.98;
	left: 77vw;
	top: 30vh;
	animation: move-2 30.04s infinite;
	transform: translate(0, 0) scale(1.54);
}

.bubble-3 {
	opacity: 0.65;
	left: 50vw;
	top: 10vh;
	animation: move-3 30.06s infinite;
	transform: translate(0, 0) scale(1.25);
}

.bubble-4 {
    opacity: 0.30;
    left: 66vw;
    top: 75vh;
    animation: move-4 30.08s infinite;
    transform: translate(0, 0) scale(0.90);
    background: #40cdf3;
}

.bubble-5 {
	opacity: 0.75;
	left: 20vw;
	top: 20vh;
	animation: move-5 30.10s infinite;
	transform: translate(0, 0) scale(1.40);
}

.bubble-6 {
	opacity: 0.50;
    left: 35vw;
    top: 85vh;
    animation: move-6 30.12s infinite;
    transform: translate(0, 0) scale(2);
    background: #5c99ac;
}

.bubble-7 {
	opacity: 0.85;
	left: 95vw;
	top: 50vh;
	animation: move-7 30.14s infinite;
	transform: translate(0, 0) scale(1.60);
}

.bubble-8 {
	opacity: 0.55;
	left: 65vw;
	top: 40vh;
	animation: move-8 30.16s infinite;
	transform: translate(0, 0) scale(1.10);
}

.bubble-9 {
	opacity: 0.80;
	left: 30vw;
	top: 15vh;
	animation: move-9 30.18s infinite;
	transform: translate(0, 0) scale(1.45);
}

.bubble-10 {
	opacity: 0.40;
    left: 70vw;
    top: 75vh;
    animation: move-10 30.20s infinite;
    transform: translate(0, 0) scale(0.85);
    background: #446fa3;
}

.bubble-11 {
	opacity: 0.60;
	left: 10vw;
	top: 25vh;
	animation: move-11 30.22s infinite;
	transform: translate(0, 0) scale(1.20);
}

.bubble-12 {
    opacity: 0.70;
    left: 45vw;
    top: 95vh;
    animation: move-12 30.24s infinite;
    transform: translate(0, 0) scale(1.70);
    background: #34b9a5;
}

.bubble-13 {
	opacity: 0.35;
	left: 60vw;
	top: 35vh;
	animation: move-13 30.26s infinite;
	transform: translate(0, 0) scale(0.95);
}

.bubble-14 {
	opacity: 0.65;
	left: 85vw;
	top: 5vh;
	animation: move-14 30.28s infinite;
	transform: translate(0, 0) scale(1.35);
}

.bubble-15 {
	opacity: 0.50;
	left: 25vw;
	top: 80vh;
	animation: move-15 30.30s infinite;
	transform: translate(0, 0) scale(1.00);
	background: #419f90;
}

.bubble-16 {
    opacity: 0.75;
    left: 40vw;
    top: 55vh;
    animation: move-16 30.32s infinite;
    transform: translate(0, 0) scale(1.70);
    background: #3e5571;
}

.bubble-17 {
    opacity: 0.45;
    left: 63vw;
    top: 100vh;
    animation: move-17 30.34s infinite;
    transform: translate(0, 0) scale(0.90);
    background: #19c3db;
}

.bubble-18 {
	opacity: 0.70;
	left: 55vw;
	top: 20vh;
	animation: move-18 30.36s infinite;
	transform: translate(0, 0) scale(1.30);
}

.bubble-19 {
	opacity: 0.55;
	left: 90vw;
	top: 45vh;
	animation: move-19 30.38s infinite;
	transform: translate(0, 0) scale(1.10);
}

.bubble-20 {
	opacity: 0.80;
	left: 15vw;
	top: 30vh;
	animation: move-20 30.40s infinite;
	transform: translate(0, 0) scale(1.60);
}

.bubble-21 {
    opacity: 0.40;
    left: 50vw;
    top: 70vh;
    animation: move-21 30.42s infinite;
    transform: translate(0, 0) scale(3);
    background-color: #569dab;
}

.bubble-22 {
	opacity: 0.60;
	left: 20vw;
	top: 40vh;
	animation: move-22 30.44s infinite;
	transform: translate(0, 0) scale(1.20);
}

.bubble-23 {
	opacity: 0.95;
	left: 75vw;
	top: 10vh;
	animation: move-23 30.46s infinite;
	transform: translate(0, 0) scale(1.80);
}

.bubble-24 {
	opacity: 0.50;
	left: 5vw;
	top: 65vh;
	animation: move-24 30.48s infinite;
	transform: translate(0, 0) scale(1.00);
}

.bubble-25 {
	opacity: 0.70;
	left: 35vw;
	top: 15vh;
	animation: move-25 30.50s infinite;
	transform: translate(0, 0) scale(1.40);
}

.bubble-26 {
    opacity: 0.45;
    left: 63vw;
    top: 73vh;
    animation: move-26 30.52s infinite;
    transform: translate(0, 0) scale(0.95);
    background: #6bbbe9;
}

.bubble-27 {
    opacity: 0.80;
    left: 34vw;
    top: 71vh;
    animation: move-27 30.54s infinite;
    transform: translate(0, 0) scale(1.60);
    background: #52a7b5;
}

.bubble-28 {
	opacity: 0.55;
    left: 65vw;
    top: 90vh;
    animation: move-28 30.56s infinite;
    transform: translate(0, 0) scale(1.70);
    background-color: #38b7a7;
}

.bubble-29 {
	opacity: 0.65;
	left: 10vw;
	top: 55vh;
	animation: move-29 30.58s infinite;
	transform: translate(0, 0) scale(1.30);
}

.bubble-30 {
	opacity: 0.90;
	left: 40vw;
	top: 25vh;
	animation: move-30 30.60s infinite;
	transform: translate(0, 0) scale(1.80);
}

.bubble-6 span {
    font-size: 8px;
}

.bubble-10 span {
    font-size: 16px;
}

.bubble-12 span {
    font-size: 9px;
}

.bubble-15 span {
    font-size: 6px;
}

.bubble-16 span {
    font-size: 10px;
}

.bubble-17 span {
    font-size: 10px;
}

.bubble-21 span {
    font-size: 6px;
}

.bubble-27 span {
    font-size: 7px;
}

.bubble-28 span {
    font-size: 11px;
}

.credits {
	position: fixed;
	left: 0;
	bottom: 0;
	padding: 2px 15px;
	background-color: rgba(0, 0, 0, 0.6);
	width: 100%;
	z-index: 111;
}

.credits a {
	color: #fff;
	font-size: 11px;
	text-decoration: none;
	letter-spacing: 0.05em;
}

@keyframes move-1 {
	60% {
		transform: translate(-38vw, -30vh) scale(4.1);
	}
}

@keyframes move-2 {
	53% {
		transform: translate(35vw, -60vh) scale(3.8);
	}
}

@keyframes move-3 {
	45% {
		transform: translate(20vw, -50vh) scale(2.5);
	}
}

@keyframes move-4 {
	40% {
		transform: translate(10vw, -40vh) scale(3.0);
	}
}

@keyframes move-5 {
	50% {
		transform: translate(25vw, -30vh) scale(3.5);
	}
}

@keyframes move-6 {
	55% {
		transform: translate(30vw, -50vh) scale(2.8);
	}
}

@keyframes move-7 {
	65% {
		transform: translate(15vw, -20vh) scale(4.0);
	}
}

@keyframes move-8 {
	48% {
		transform: translate(45vw, -60vh) scale(2.2);
	}
}

@keyframes move-9 {
	52% {
		transform: translate(35vw, -35vh) scale(3.6);
	}
}

@keyframes move-10 {
	44% {
		transform: translate(20vw, -50vh) scale(2.4);
	}
}

@keyframes move-11 {
	50% {
		transform: translate(25vw, -25vh) scale(3.3);
	}
}

@keyframes move-12 {
	56% {
		transform: translate(30vw, -40vh) scale(4.0);
	}
}

@keyframes move-13 {
	48% {
		transform: translate(45vw, -60vh) scale(2.1);
	}
}

@keyframes move-14 {
	60% {
		transform: translate(15vw, -50vh) scale(3.5);
	}
}

@keyframes move-15 {
	55% {
		transform: translate(30vw, -30vh) scale(3.2);
	}
}

@keyframes move-16 {
	45% {
		transform: translate(40vw, -45vh) scale(2.5);
	}
}

@keyframes move-17 {
	50% {
		transform: translate(25vw, -55vh) scale(3.4);
	}
}

@keyframes move-18 {
	60% {
		transform: translate(35vw, -35vh) scale(4.0);
	}
}

@keyframes move-19 {
	48% {
		transform: translate(20vw, -50vh) scale(2.2);
	}
}

@keyframes move-20 {
	52% {
		transform: translate(45vw, -25vh) scale(3.8);
	}
}

@keyframes move-21 {
	44% {
		transform: translate(30vw, -40vh) scale(2.5);
	}
}

@keyframes move-22 {
	50% {
		transform: translate(15vw, -30vh) scale(3.3);
	}
}

@keyframes move-23 {
	56% {
		transform: translate(35vw, -50vh) scale(4.2);
	}
}

@keyframes move-24 {
	48% {
		transform: translate(25vw, -20vh) scale(2.0);
	}
}

@keyframes move-25 {
	60% {
		transform: translate(10vw, -55vh) scale(3.7);
	}
}

@keyframes move-26 {
	55% {
		transform: translate(20vw, -35vh) scale(2.9);
	}
}

@keyframes move-27 {
	45% {
		transform: translate(40vw, -45vh) scale(2.8);
	}
}

@keyframes move-28 {
	50% {
		transform: translate(35vw, -30vh) scale(3.6);
	}
}

@keyframes move-29 {
	60% {
		transform: translate(15vw, -50vh) scale(4.1);
	}
}

@keyframes move-30 {
	48% {
		transform: translate(20vw, -40vh) scale(2.4);
		-webkit-transform: translate(20vw, -40vh) scale(2.4);
		-moz-transform: translate(20vw, -40vh) scale(2.4);
		-ms-transform: translate(20vw, -40vh) scale(2.4);
		-o-transform: translate(20vw, -40vh) scale(2.4);
  }
}

/* Section 2 */
.ip-services-wc {
  position: relative;
  /* padding: 100px 0 70px; */
  display: flex;
  margin-top: clamp(800px,90vh,986px);;
  background: #fff;
  border-radius: 60px 60px 0 0;
  background: rgb(62, 85, 113);
  background: linear-gradient(2deg, rgba(62, 85, 113, 1) 0%, rgb(33 159 175) 100%);
  overflow: hidden;
}

.ip-services-wc .bg-canvas {
  /* opacity: 0.2;
  width: 50%;
  left: auto;
  right: 0;
  transform: rotateY(180deg); */
  /* border-radius: 0 75% 0 0; */
  pointer-events: none;
  -webkit-transform-origin: 100% 0%;
  -moz-transform-origin: 100% 0%;
  -ms-transform-origin: 100% 0%;
  -o-transform-origin: 100% 0%;
  transform-origin: 100% 0%;
  -webkit-animation: click_zoomInOut 25s linear 0s infinite alternate;
  -moz-animation: click_zoomInOut 25s linear 0s infinite alternate;
  -o-animation: click_zoomInOut 25s linear 0s infinite alternate;
  -ms-animation: click_zoomInOut 25s linear 0s infinite alternate;
  animation: click_zoomInOut 25s linear 0s infinite alternate;
  opacity: 0.2;
}

/* .ip-services-wc::after {
  content: '';
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 30%;
  background: var(--primary);
  background: rgb(111, 137, 174);
  background: linear-gradient(135deg, rgba(111, 137, 174, 1) 0%, rgba(52, 187, 167, 1) 100%);
  z-index: 0;
} */

.ip-services-wc .ip-s-col {
  width: 50%;
}

.ip-s-container {
  /* max-width: 1440px;
  width: 100%;
  margin: auto;
  padding: 0 15px; */
  width: 100%;
}

.ip-services-wc-txt {
  font-size: clamp(15px,1.042vw,20px);
  padding: 50px;
  max-width: 590px;
  width: 100%;
  /* background: #fff;
  border-radius: 30px; */
  color: #fff;
}

.ip-s-col.content {
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 15px;
}

.ip-s-col.img .img-wrapper {
	opacity: 0.2;
}

.ip-s-col.img .img-wrapper img {
	pointer-events: none;
	-webkit-transform-origin: 100% 0%;
	-moz-transform-origin: 100% 0%;
	-ms-transform-origin: 100% 0%;
	-o-transform-origin: 100% 0%;
	transform-origin: 100% 0%;
	-webkit-animation: click_zoomInOut 25s linear 0s infinite alternate;
	-moz-animation: click_zoomInOut 25s linear 0s infinite alternate;
	-o-animation: click_zoomInOut 25s linear 0s infinite alternate;
	-ms-animation: click_zoomInOut 25s linear 0s infinite alternate;
	animation: click_zoomInOut 25s linear 0s infinite alternate;
	
}

.ip-services-wc-txt .global-title {
  margin: 0 0 35px;
}

.ip-services-wc-txt a {
  margin: 30px 0 0;
}

/* Section 3 */
.ip-services-offer {
	background: #eff7fd;
	padding: 150px 15px;
	overflow: hidden;
}

.ip-services-offer-txt {
	font-size: clamp(15px,1.042vw,20px);
    margin: 50px auto;
    max-width: 800px;
    width: 100%;
}

.ip-services-offer-list {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    max-width: 1440px;
    width: 100%;
    margin: auto;
}

.ip-services-offer-list-item {
    width: 50%;
    padding: 30px 15px;
}

.ip-services-offer-list-item-inner {
    padding: clamp(30px,2.604vw,50px);
    border-radius: 20px;
    color: #fff;
    min-height: 270px;
	display: flex;
	flex-direction: column;
	position: relative;
}

.ip-services-offer-list-item-inner * {
	position: relative;
	z-index: 10;
}

.ip-services-offer-list-item-inner::before {
	content: '';
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	background: linear-gradient(135deg, rgba(111, 137, 174, 1) 0%, rgba(52, 187, 167, 1) 100%);
	z-index: 1;
	transition: var(--default-transition);
	opacity: 0;
	border-radius: 20px;
}

.ip-services-offer-list-item-inner:hover::before {
	opacity: 1;
}

.ip-services-offer-list-item:nth-child(1) .ip-services-offer-list-item-inner {
    background: #34bba7;
}

.ip-services-offer-list-item:nth-child(3) .ip-services-offer-list-item-inner {
    background: #3e5571;
}

.ip-services-offer-list-item:nth-child(5) .ip-services-offer-list-item-inner {
    background: #6f89ae;
}

.ip-services-offer-list-item:nth-child(7) .ip-services-offer-list-item-inner {
    background: #b9d4ed;
}

.ip-services-offer-list-item:nth-child(8) .ip-services-offer-list-item-inner {
    background: #34bba7;
}

.ip-services-offer-list-item:nth-child(6) .ip-services-offer-list-item-inner {
    background: #3e5571;
}

.ip-services-offer-list-item:nth-child(4) .ip-services-offer-list-item-inner {
    background: #6f89ae;
}

.ip-services-offer-list-item:nth-child(2) .ip-services-offer-list-item-inner {
    background: #b9d4ed;
}

.ip-services-offer-list-item:nth-child(9) .ip-services-offer-list-item-inner {
	background: #3e5571;
}

.ip-services-offer-list-item p {
    font-size: 17px;
}

.ip-services-offer-list-item h3 {
    font-weight: 700;
    margin: 0 0 20px;
	font-size: clamp(19px,1.25vw,24px);
}

.ip-services-offer-list-item a {
    color: #fff;
    font-size: clamp(15px,0.885vw,17px);
    /* text-transform: lowercase; */
	display: flex;
    align-items: center;
}

.ip-services-offer-list-item a i {
    margin: 0 0 0 10px;
}

.ip-services-offer-btn {
	margin: auto 0 0;
}

/*---------- ANIMATION ----------*/
@-webkit-keyframes click_zoomInOut {
    0% {
      -webkit-transform: scale(1);
    }
    100% {
      -webkit-transform: scale(1.2);
    }
  }
  @-moz-keyframes click_zoomInOut {
    0% {
      -moz-transform: scale(1);
    }
    100% {
      -moz-transform: scale(1.2);
    }
  }
  @-ms-keyframes click_zoomInOut {
    0% {
      -ms-transform: scale(1);
    }
    100% {
      -ms-transform: scale(1.2);
    }
  }
  
  @-o-keyframes click_zoomInOut {
    0% {
      -o-transform: scale(1);
    }
    100% {
      -o-transform: scale(1.2);
    }
  }
  @keyframes click_zoomInOut {
    0% {
      transform: scale(1);
    }
    100% {
      transform: scale(1.2);
    }
  }

/* Section 3 */
.ip-services-offer .bg-canvas {
    height: 1200px;
    width: 1200px;
    right: -32%;
	left: auto;
    top: -5%;
    opacity: 0.3;
    -webkit-animation: slowRotate 180s linear infinite;
    -moz-animation: slowRotate 180s linear infinite;
    -o-animation: slowRotate 180s linear infinite;
    animation: slowRotate 180s linear infinite;
    transition: var(--default-transition);
}


/* Section 4 */
.ip-services-connect {
	background: #fff;
	padding: 200px 15px;
	text-align: center;
}

.ip-services-connect-container {
    max-width: 1170px;
    width: 100%;
    margin: auto;
}

.ip-services-connect-main h2 {
    font-size: 50px;
    margin: 0;
    color: var(--primary);
}

.ip-services-connect-main h3 {
    margin: 50px 0 0;
    font-size: 25px;
    font-weight: 400;
    color: var(--primary);
}

.ip-services-connect-main h3 a {
    color: var(--secondary);
    font-weight: 700;
}

/* Section 5 */
.ip-services-contact {
	padding: 0 15px;
}


@media only screen and (max-width: 991px) {
	.ip-services-banner {
		position: relative;
		min-height: auto;
		text-align: center;
		overflow: hidden;
	}

	.ip-services-banner-title span {
		margin: 20px auto 0;
		font-size: 20px;
	}

	.ip-services-banner-btn a {
		margin: auto;
	}

	.ip-services-banner-content {
		padding: 100px 15px;
		min-height: auto;
	}

	.ip-services-banner-title h1 em {
		font-size: 55px;
	}

	.ip-services-wc {
		margin: 0;
	}

	.bubble {
		opacity: 0.2 !important;
	}

	.ip-services-wc .ip-s-col {
		width: 100%;
	}

	.ip-s-col.img.rel.overflow.bw {
		position: absolute;
		left: 0;
		top: 0;
		width: 100%;
		height: 100%;
	}

	.ip-services-wc-txt {
		font-size: clamp(16px, 1.042vw, 20px);
		padding: 30px 0;
		color: #fff;
		line-height: 1.5;
		text-align: center;
	}

	.ip-services-wc-txt a {
		margin: 30px auto 0;
	}

	.ip-services-wc .bg-canvas {
		opacity: 0.1;
	}

	.ip-services-offer-list-item {
		width: 100%;
		text-align: center;
	}

	.ip-services-offer-btn {
		justify-content: center;
		display: flex;
	}

	.ip-services-connect-main h2 {
		font-size: 30px;
	}

	.ip-services-connect-main h3 {
		font-size: 19px;
	}

	.ip-services-connect {
		padding: 100px 15px;
	}

	.ip-services-offer {
		padding: 50px 15px;
	}

	


}