@import url("https://fonts.googleapis.com/css2?family=Nunito:wght@300;400;500;600;700&family=Bubblegum+Sans&display=swap");

:root {
  --primary-color: #ed145b;
  --secondary-color: #224794;
  --lightgreen-color: #94c740;
  --orange-color: #f19927;
  --body-color: #6b6b84;
  --modal-color: #FFEFE4;
  --facebook: #4267B2;
  --twitter: #00acee;
  --linkedin: #0e76a8;
  --youtube: #FF0000;
  --whatsapp: #25D366;
  --instagram: #c92bb7;
  --cursive: "Bubblegum Sans", cursive;
}

body {
  color: var(--body-color);
  font: 400 16px/1.5 "Nunito", sans-serif;
  overflow-x: hidden;
}
ul {
  padding-left: 0;
  margin-bottom: 0;
}

a,
a:hover {
  text-decoration: none;
}

img {
  width: 100%;
  display: block;
}

.gap-row{
  row-gap: 30px;
}
.gap-form-row{
  row-gap: 10px;
}

.object-cover{
  object-fit: cover;
}

.container-fluid.px-100{
  padding-left: 100px;
  padding-right: 100px;
}

@media(min-width: 1400px){
  .container{
    max-width: 1320px;
  }
  .col-xxl-3{
    -ms-flex: 0 0 25%;
    flex: 0 0 25%;
    max-width: 25%;
  }
  .col-xxl-11{
    -ms-flex: 0 0 91.666667%;
    flex: 0 0 91.666667%;
    max-width: 91.666667%;
  }
  .col-xxl-12 {
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    max-width: 100%;
  }
}
@media(min-width: 1600px){
  .container{
    max-width: 1440px;
  }
}

.wrapper{
  width: 100%;
  background: #fff;
}

/*header*/
.header {
  width: 100%;
  position: fixed;
  top: 0;
  left: 0;
  transition: all 300ms ease-in-out;
  z-index: 9;
}
.header.fixed {
  top: -42px;
  border-bottom: 1px solid rgb(0 0 0 / 10%);
}
 
.top-header {
  background-color: var(--primary-color);
  transition: all 300ms ease-in-out;
}

.top-header .container{
  display: flex;
  justify-content: flex-end;
  align-items: center;
  gap: 10px 2rem;
}

.top-header ul {
  display: flex;
  gap: 7px;
  margin: 7px 0;
}
.top-header .top-menu {
  gap: 10px 2rem;
}

.top-menu a{
  color: #fff;
}

.top-menu a:hover{
  color: rgb(255 255 255 / 50%);
}

.top-header .top-social li a {
  font-size: 12px;
}

.top-header .top-social li a:hover {
  color: var(--secondary-color);
}

.top-header .top-social li a i {
  width: 30px;
  height: 30px;
  border-radius: 50%;
  background-color: #fff;
  color: var(--primary-color);
  display: flex;
  align-items: center;
  justify-content: center;
}

.main-header {
  background-color: #fff;
}

.main-header .container{
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.header .logo {
  width: 170px;
  margin-top: -50px;
  padding: 5px 0;
  position: relative;
  z-index: 1;
  transition: all 300ms ease-in-out;
}

.header.fixed .logo {
  width: 90px;
  margin-top: -20px;
}

.header .navi {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  gap: 20px;
  flex: 1 0 calc(100% - 200px);
  max-width: calc(100% - 200px);
}

.header .main-header .menu > ul {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 0 2rem;
}

.header .main-header ul li {
  display: block;
}

.header .main-header ul li a {
  display: block;
  color: #000;
  padding: 20px 0;
  font-weight: 600;
  font-size: 16px;
  position: relative;
  z-index: 1;
  transition: all 300ms ease-in-out;
}

.header.fixed .main-header ul li a{
  padding: 14px 0;
}

.header .main-header ul li a::before {
  content: "";
  position: absolute;
  bottom: 5px;
  left: 0;
  width: 100%;
  height: 2px;
  z-index: -1;
  transition: all 300ms ease-in-out;
}


.header .main-header ul li.active > a,
.header .main-header ul li:hover > a {
  color: var(--primary-color) !important;
}

.menu ul li.haschild a sup {
  font-size: 120%;
  top: -6px;
  left: 3px;
  color: var(--primary-color);
  display: inline-block;
  transition: all 300ms ease-in-out;
}

.menu ul li.haschild:hover > a sup {
  transform: rotate(45deg);
}

.menu ul li.haschild .dropdown {
  width: 250px;
  position: absolute;
  background-color: #fff;
  box-shadow: 0 10px 30px rgb(0 0 0 / 10%);
  visibility: hidden;
  opacity: 0;
  transform: translateY(10px);
  pointer-events: none;
  transition: all 300ms ease-in-out;
}

.menu ul li.haschild:hover .dropdown {
  visibility: visible;
  opacity: 1;
  transform: translateY(0px);
  pointer-events: auto;
}

.dropdown ul {
  padding: 0 15px;
}

.header .main-header .dropdown ul li a {
  padding: 10px 0;
  border-bottom: 1px solid rgb(0 0 0 / 10%);
}

.dropdown ul li:last-child a {
  border-bottom: none;
}

.menu ul li.haschild .dropdown ul li a::before {
  bottom: 0;
}

.dropdown ul li:last-child a {
  border-bottom: none;
}

.header.fixed .readmore .button{
  padding: 5px 15px;
  min-width: 110px;
}

.menuBtn{
  padding: 0;
  background-color: transparent;
  border: 0;
	width:30px;
	height:30px;
	cursor:pointer;
	overflow:hidden;
  row-gap: 6px;
	display: flex;
  align-items: center;
	justify-content:center;
  flex-direction: column;
	transition:all 300ms ease-in-out;
}

.menuBtn span{
	width:100%;
	height:2px;
	background:var(--primary-color);
	position:relative;
	right:0;
	-webkit-transition:400ms ease-in-out all;
	transition:400ms ease-in-out all;
}

.menuBtn span#menuLine2{
	background:var(--orange-color);
}
.menuBtn span#menuLine3{
	background:var(--secondary-color);
}

.menuBtn.closeMenuBtn{
  row-gap: 0;
}

.menuBtn.closeMenuBtn span#menuLine1{
	-webkit-transform:rotate(225deg) translate(0, 0);
	transform:rotate(225deg) translate(0, 0);
}

.menuBtn.closeMenuBtn span#menuLine3{
	-webkit-transform:rotate(-225deg) translate(-1px, 1px);
	transform:rotate(-225deg) translate(-1px, 1px);
}

.menuBtn.closeMenuBtn span#menuLine2{
  transform: rotate(180deg) translateX(100%);
  height: 0;
}

.mbMenuContainer{
	position:fixed;
	left:0;
	right:0;
	top:0;
	bottom:0;
	z-index:11;
	background: rgb(0 0 0 / 90%);
  backdrop-filter: blur(10px);
	display:none;
  overflow: hidden;
}

.mbMenuContainer .inner{
	position:relative;
	height:100%;
	width:320px;
	padding:0 24px 24px;
  background-color: #fff;
  margin-left: auto;
	margin-right:-1px;
	overflow:auto;
	display:flex;
  flex-direction: column;
	opacity:0;
	transform:translateX(100%);
	transition:all 0.5s cubic-bezier(0,1.06,.39,1.32) 500ms;
}

.mbMenuContainer.active .inner{
	opacity:1;
	transform:translateX(0%);
}

.mbMenuHeader{
  padding: 5px 0;
  border-bottom: 1px solid rgb(0 0 0 / 10%);
}

.mbMenuHeader .top-social{
  gap: 10px;
  line-height: 1;
}

.top-social .fa-facebook-f{
  color: var(--facebook);
}
.top-social .fa-instagram{
  color: var(--instagram);
}
.top-social .fa-youtube{
  color: var(--youtube);
}
.mbMenuContainer .mbMenu{
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  flex-grow: 1; 
}

.mbMenuContainer .mbMenu ul{
	margin:10px 0 0;
  display: flex;
  flex-direction: column;
}

.mbMenuContainer .mbMenu ul li a{
  display: block;
  padding: 10px 0;
  border-bottom: 1px dashed rgb(0 0 0 / 10%);
	color:var(--body-color);
  font-weight: 700;
	transition:all 300ms ease-in-out;
}

.mbMenuContainer .mbMenu ul li:last-of-type a{
  border-bottom: 0;
}

.mbMenuContainer .mbMenu ul li.active a,
.mbMenuContainer .mbMenu ul li:hover > a,
.mbMenuContainer .mbMenu ul li a:focus{
    color: var(--primary-color);
}

.mbMenuContainer .mbMenu ul li.hasChild a i{
	font-size: 15px;
    margin-left: 18px;
    width: 30px;
    height: 30px;
    line-height: 30px;
    border: 1px solid #fff;
    text-align: center;
}

.mbMenuContainer .mbMenu ul .dropdown{
	display:none;
}

.mbMenuContainer .mbMenu ul .dropdown ul{
	padding:20px 50px 20px 10px;
}

.mbMenuContainer .mbMenu ul .dropdown ul li{
	padding:0;
	display:block;
}

.mbMenuContainer .mbMenu ul .dropdown ul li a{
	font: 300 22px/1.5 'Montserrat', sans-serif;
	padding:8px 0;
	letter-spacing: 3px;
	display:block;
}

.mbMenuContainer .mbMenu ul .dropdown ul li a:hover{
	text-decoration:underline;
	color:#fff;
}
/*header*/

.filter-white {
  -ms-filter: grayscale(1) brightness(70);
  filter: grayscale(1) brightness(70);
}

.filter-dark {
  -ms-filter: grayscale(1) brightness(0.5);
  filter: grayscale(1) brightness(0.5);
}

p {
  line-height: 1.5;
}

.padding {
  padding-top: 5rem;
  padding-bottom: 5rem;
}

.container-fluid {
  padding-left: 4vw;
  padding-right: 4vw;
}

/* Home Banner */
#banner, .insideBanner{
  height: calc(100vh - 129px);
  margin-top: 129px;
	position:relative;
	background:#fff;
	z-index:1;
}

#banner .banner-video{
	height:100%;
	width:100%;
	position:absolute;
	left:0;
	top:0;
	object-fit:cover;
	z-index:1;
}

#banner .carousel-inner, #banner .carousel-inner .carousel-item{
	position:relative;
	height:100%;
}

#banner .carousel-inner .carousel-item{
	z-index:1;
}

#banner .carousel-inner .carousel-item::before,
.insideBanner::before{
	content: "";
  position: absolute;
  width: 100%;
  height: 85px;
  left: 0;
  bottom: -2px;
  mask-image: url(../images/bread-cum-overlay.png);
  mask-repeat: repeat;
  mask-size: auto;
  mask-position: center;
  -webkit-mask-image: url(../images/bread-cum-overlay.png);
  -webkit-mask-repeat: repeat;
  -webkit-mask-size: auto;
  -webkit-mask-position: center;
  z-index: 1;
  background-color: #fff;
  animation: movement 400s linear infinite;
  -webkit-animation: movement 400s linear infinite;
}

@keyframes movement{
  0% {
    -webkit-mask-position:0px 0px;
  }
  100%{
    -webkit-mask-position:20000px 0px;
  }
}
@-webkit-keyframes movement{
  0% {
    -webkit-mask-position:0px 0px;
  }
  100%{
    -webkit-mask-position:20000px 0px;
  }
}

.bannerText{
  width: 100%;
  max-width: 820px;
	margin-top:10%;
	text-align:center;
	z-index:9;
	color:#fff;
}

.bannerText > p, .bannerText.insidebannerText h1{
		font:700 14px 'Montserrat', sans-serif;
    font-weight: 700;
    letter-spacing: 3px;
    margin-bottom: 20px;
    text-transform: uppercase;
}

.bannerText h1,
.bannerText h2{
	font:40px/1.1 'DM Serif Display', serif;
	letter-spacing:2px;
	display:flex;
	justify-content:center;
	align-items:center;
	margin-bottom:20px;
}

/* about boxes */
.about-box{
  padding: 30px;
}

.about-box .inner{
  padding: 30px;
  margin-bottom: 30px;
  position: relative;
  z-index: 0;
  text-align: center;
  color: #fff;
}

.about-box .inner::before{
  content: "";
  position: absolute;
  inset: 0;
  background-color: var(--secondary-color);
  -webkit-mask-image: url(../images/custom-shape-bg-layer1.png);
  -webkit-mask-position: center;
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-size: 100% 100%;
  mask-image: url(../images/custom-shape-bg-layer1.png);
  mask-position: center;
  mask-repeat: no-repeat;
  mask-size: 100% 100%;
  transition: all 0.3s linear;
  z-index: -1;
}

.about-box .inner:hover::before{
  background-color: var(--primary-color);
}

.about-box .inner .img-fluid{
  margin-bottom: 20px;
}

.about-box .inner .img-fluid img{
  -webkit-mask-image: url(../images/mask_image_imagebox.png);
  -webkit-mask-size: cover;
  -webkit-mask-position: center;
  -webkit-mask-repeat: no-repeat;
  mask-image: url(../images/mask_image_imagebox.png);
  mask-size: cover;
  mask-position: center;
  mask-repeat: no-repeat;
}

.box-head{
  position: relative;
  padding-bottom: 12px;
}

.box-head::after{
  content: "";
  position: absolute;
  -webkit-mask-image: url(../images/line.svg);
  -webkit-mask-repeat: repeat-x;
  mask-image: url(../images/line.svg);
  mask-repeat: repeat;
  mask-size: auto;
  -webkit-mask-size: contain;
  background-color: #fff;
  width: 50%;
  height: 5px;
  margin: auto;
  bottom: 0px;
  left: 50%;
  transform: translateX(-50%);
  overflow: hidden;
  /* -webkit-transform: unset; */
  opacity: 1;
}

.box-head:hover::after{
  animation: movezz 6s infinite linear;
}

@keyframes movezz {
  0% {
    -webkit-mask-position-x: 0;
  }

  100% {
    -webkit-mask-position-x: 180px;
  }
}

.box-head h4{
  font-weight: 700;
}

.box-content{
  padding: 15px 2px 0px 2px;
  margin-bottom: 20px;
}

.box-footer{
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  transform: translateY(50%);
}

.box-icon{
  position: absolute;
  bottom: 0;
  left: 0;
  transform: translate(-25%, 0);
  color: var(--lightgreen-color);
  transition: all 0.3s linear;
}

.about-box .inner:hover .box-icon{
  transform: translate(60%, -30%);
  opacity: 0.15;
  color: #000;
}

.box-icon i{
  display: block;
  width: 80px;
}
/* about boxes */

/* team work */
.teamwork .inner{
  position: relative;
  z-index: 1;
  isolation: isolate;
  padding: 40px 25% 40px 0;
  font-size: 18px;
}

.element-icon.rocket{
  width: 110px;
  right: 10%;
  top: 15%;
  animation: updown 0.8s alternate ease-in-out infinite;
  z-index: 0;
}

@keyframes updown{
  100%{
    transform: translateY(15px);
  }
}

.element-icon.cloud1{
  width: 140px;
  top: 15%;
  right: 43%;
  color: #eb4b78;
}

.element-icon.cloud2{
  display: none;
  width: 220px;
  top: 0%;
  right: 0%;
  color: #eb4b78;
}

.element-icon.bicycle{
  width: 100px;
  bottom: 0%;
  right: 52%;
  transform: rotateY(180deg);
}

@media (min-width: 1400px){
  .element-icon.rocket{
    right: 30%;
    top: 15%;
  }
  .element-icon.cloud2{
    display: block;
  }
  .element-icon.bicycle{
    width: 120px;
  }
}

.elementor-image{
  width: 40%;
  position: absolute;
  bottom: 0;
  left: 0;
}
.elementor-image img{
  object-position: 0 5px;
}

.teamvideo img{
  height: calc(100% + 100px);
  object-fit: cover;
  border-radius: 20px;
  transform: translateY(-50px);
}

.playBtn{
  width: 100px;
  height: 100px;
  position: absolute;
  inset: 50% auto auto 50%;
  transform: translate(-50%,-50%);
  border-radius: 50%;
  z-index: 1;
  cursor: pointer;
}

.playBtn::before, .playBtn::after{
  content: "";
  position: absolute;
  right: 0;
  display: block;
  border-radius: 100%;
  background-color: #fff;
  z-index: -1;
  transform: translateX(-50%) translateY(-50%);
}
.playBtn::before{
  opacity: 0.6;
  width: 100%;
  height: 100%;
  top: 50%;
  left: 50%;
}

.playBtn::after{
  animation: video-icon-anim 1.8s linear 0s infinite;
  -webkit-animation: video-icon-anim 1.8s linear 0s infinite;
  left: 0;
  top: 0;
  margin: 0 auto;
  width: 100%;
  height: 100%;
}

@keyframes video-icon-anim {
  0%{
      transform: scale(1,1);
      opacity: 1;
  }
  100%{
      transform: scale(1.5,1.5);
      opacity: 0;
  } 
}

@-webkit-keyframes video-icon-anim {
  0%{
      transform: scale(1,1);
      opacity: 1;
  }
  100%{
      transform: scale(1.5,1.5);
      opacity: 0;
  } 
}

.element-icon .svg-nested{
  width: 60%;
  position: absolute;
  left: 50%;
  top: 50%;
  transform: rotate(-30deg) translate(-22%,-50%);
  transform-origin: left;
}

.element-screen-only{
  position: absolute;
    top: -10000em;
    width: 1px;
    height: 1px;
    margin: -1px;
    padding: 0;
    overflow: hidden;
    clip: rect(0,0,0,0);
    border: 0;
}
/* team work */

/* gallery */
.galleryBox{
  border-radius: 30px;
  overflow: hidden;
  display: block;
  position: relative;
  outline: 4px solid transparent;
  z-index: 1;
  transition: all 300ms ease-in-out;
}
.galleryBox:hover{
  outline: 4px solid #f7941e;
}
.galleryBox::before{
  content: '';
  position: absolute;
  inset: 0px;
  border-radius: 30px;
  background: url(../images/eyes.svg) center / 30% no-repeat rgba(247, 149, 30, 0.7);
  z-index: 1;
  opacity: 0;
  transition: all 300ms ease-in-out;
}
.galleryBox:hover::before{
  opacity: 1;
  inset: 15px;
}
/* gallery */

/* Testimonails */
.testimonialWrapper{
  padding: 10px;
  position: relative;
  isolation: isolate;
  z-index: 1;
}
.testimonialWrapper::before{
  content: '';
  position: absolute;
  inset: 0;
  background: var(--primary-color);
  -webkit-mask-image: url(../images/testimonial-mask.svg);
  -webkit-mask-position: center;
  -webkit-mask-size: 100% 100%;
  -webkit-mask-repeat: no-repeat;
  mask-image: url(../images/testimonial-mask.svg);
  mask-position: center;
  mask-size: 100% 100%;
  mask-repeat: no-repeat;
}
.testimonialWrapper::after{
  content: '';
  position: absolute;
  width: 428px;
  height: 82px;
  background: url(../images/test-bg-sub-1-1.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  top: 10px;
  right: 18%;
  z-index: -1;
}

.testimBox .inner{
  padding: 80px 50px 65px 100px;
}

.testimBox .img-fluid{
  width: 120px;
  border-radius: 50%;
  border: 10px solid var(--orange-color);
  margin-top: -50px;
}

.testimBox .img-fluid img{
  border-radius: 50%;
}

.testimText{
  padding: 20px 40px 20px 20px;
  color: #fff;
}

.testimDescription{
  margin-bottom: 2rem;
}

.testimFooter{
  text-align: right;
}
/* Testimonails */

/*Footer*/
.footer-area {
  color: #fff;
  position: relative;
  bottom: 0;
  left: 0;
  padding-top: 300px;
  z-index: 1;
}

.footerBg{
  position: absolute;
  inset: 30px 0 0;
  background-color: var(--secondary-color);
  -webkit-mask-image: url(../images/footer-mask-dark-png.png);
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-position: top left;
  -webkit-mask-size: cover;
}
.footerBg .inner{
  position: absolute;
  inset: 30px 0 0;
  background-color: var(--secondary-color);
  -webkit-mask-image: url(../images/footer-bg-1.png);
  -webkit-mask-size: cover;
  -webkit-mask-position: top center;
}

.footerBgLite{
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 10px 0 0;
  z-index: -1;
  background-color: #b5b5b5;
  -webkit-mask-image: url(../images/footer-bg-lite.png);
  -webkit-mask-size: cover;
  -webkit-mask-position: top center;
}

.footer-area a{
  display: inline-block;
  color: #fff;
  padding: 5px 0;
}
.footer-area a:hover{
  color: var(--lightgreen-color);
}

.foot-links{
  position: relative;
  z-index: 1;
}

.footer-title{
  font: 400 1.5rem var(--cursive);
}

.socialBtn{
  gap: 10px 2rem;
}

.foot-menu.socialBox a{
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  row-gap: 7px;
}

.footer-bottom{
  padding: 10px 0;
  border-top: 1px solid rgb(255 255 255 / 15%);
}

.footer-bottom > div{
  display: flex;
  justify-content: space-between;
}

.footer-logo img{
  width: 200px;
}

.copyrights{
  position: relative;
  z-index: 1;
  display: flex;
  justify-content: center;
  padding: 2rem 0;
}

.copyrights p{
  display: flex;
  align-items: center;
  margin-bottom: 0;
}

.copyrights p img{
  width: 30px;
  margin-left: 5px;
}

.button-top {
  background: var(--lightgreen-color);
  position: fixed;
  cursor: pointer;
  right: 20px;
  bottom: 20px;
  color: #ffffff;
  font-size: 13px;
  opacity: 0;
  width: 40px;
  height: 40px;
  line-height: 40px;
  border-radius: 50%;
  text-align: center;
  transition: all 500ms ease;
  z-index: 9;
}

.button-top:hover {
  background: var(--primary-color);
}
/*Footer*/

/* inside page */
.insideBanner{
  height: 440px;
}

.insideBanner::after{
  content: "";
  height: 100% !important;
  overflow: hidden;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 0;
  pointer-events: none;
  background-image: linear-gradient(180deg,rgba(247,148,30, 0.1) 0%, rgba(247,148,30, 0.1) 100%);
}

.pageTitle{
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%,-50%);
  z-index: 2;
  text-align: center;
  color: #fff;
}

.pageTitle .h1{
  font-size: 3rem;
  font-weight: 700;
}

.breadcrumb{
  background-color: transparent;
  border: 0;
  border-radius: 0;
  margin-bottom: 0;
  padding: 0;
  justify-content: center;
  color: #fff;
}
.breadcrumb-item a,
.breadcrumb-item.active,
.breadcrumb-item+.breadcrumb-item::before{
  color: #fff;
}
.breadcrumb-item a:hover{
  text-decoration: underline;
}

.sideImg{
  padding-top: 2rem;
}
.props_img_bg{
  position: absolute;
  left: 50%;
  top: 0;
  width: 50%;
  transform: translateX(-50%);
  z-index: -1;
}

.props_img_bg.fa-spin{
  animation-duration: 10s;
}

.img-blob img{
  -webkit-mask-image: url(../images/image_mask.png);
  -webkit-mask-size: 90%;
  -webkit-mask-position: center center;
  -webkit-mask-repeat: no-repeat;
}

.img-blob .element-icon{
  width: 90%;
  margin: -35px 0;
  color: var(--primary-color);
}

svg g path.img_path_one {
  -webkit-animation: morph 6s linear infinite;
  animation: morph 6s linear infinite;
}

svg g ellipse.img_path_two {
  -webkit-animation: morph_tp 6s linear infinite;
  animation: morph_tp 6s linear infinite;
  -webkit-animation-delay: 2s;
  animation-delay: 2s;
}

svg g ellipse.img_path_three {
  -webkit-animation: morph_tr 6s linear infinite;
  animation: morph_tr 6s linear infinite;
  -webkit-animation-delay: 3s;
  animation-delay: 3s;
}

.updown{
  -webkit-animation: morph 6s linear infinite;
  animation: morph 6s linear infinite;
}

@-webkit-keyframes morph {
  0% {
    transform: translateY(0px);
  }
  30% {
    transform: translateY(10px);
  }
  50% {
    transform: translateY(0px);
  }
  70% {
    transform: translateY(-10px);
  }
  100% {
    transform: translateY(0px);
  }
}
@keyframes morph {
  0% {
    transform: translateY(0px);
  }
  30% {
    transform: translateY(10px);
  }
  50% {
    transform: translateY(0px);
  }
  70% {
    transform: translateY(-10px);
  }
  100% {
    transform: translateY(0px);
  }
}

@-webkit-keyframes morph_tp {
  0% {
    transform: translateY(0px);
  }
  30% {
    transform: translateY(60px);
  }
  50% {
    transform: translateY(0px);
  }
  70% {
    transform: translateY(-10px);
  }
  100% {
    transform: translateY(0px);
  }
}
@keyframes morph_tp {
  0% {
    transform: translateY(0px);
  }
  30% {
    transform: translateY(60px);
  }
  50% {
    transform: translateY(0px);
  }
  70% {
    transform: translateY(-10px);
  }
  100% {
    transform: translateY(0px);
  }
}

@-webkit-keyframes morph_tr {
  0% {
    transform: translateX(0px);
  }
  30% {
    transform: translateX(50px);
  }
  50% {
    transform: translateX(0px);
  }
  70% {
    transform: translateX(-80px);
  }
  100% {
    transform: translateX(0px);
  }
}
@keyframes morph_tr {
  0% {
    transform: translateX(0px);
  }
  30% {
    transform: translateX(50px);
  }
  50% {
    transform: translateX(0px);
  }
  70% {
    transform: translateX(-80px);
  }
  100% {
    transform: translateX(0px);
  }
}

.moreText {
    display: none;
}

.scroller{
	overflow:auto;
	padding-right:10px;
}
/* Custom Scroll */
.scroller {
  height: 300px;
  overflow: auto;
}

.scroller::-webkit-scrollbar {
  width: 5px;
  height: 5px;
}

/* Track */
.scroller::-webkit-scrollbar-track {
  box-shadow: inset 0 0 5px #292929;
  border-radius: 10px;
}

/* Handle */
.scroller::-webkit-scrollbar-thumb {
  background: var(--secondary-color);
  border-radius: 10px;
}

/* Handle on hover */
.scroller::-webkit-scrollbar-thumb:hover {
  background: var(--primary-color);
}
/* Custom Scroll */

/* icons */
.iconBox .inner{
  display: flex;
  align-items: center;
  gap: 1rem;
}
.iconBox .img-fluid{
  max-width: 80px;
  flex: 0 0 80px;
  padding: 15px;
  border-radius: 55% 45% 62% 38% / 42% 40% 60% 58%;
  background-color: var(--primary-color);
  color: #fff;
  transition: all 300ms ease-in-out;
}
.iconBox .inner:hover .img-fluid{
  background-color: var(--secondary-color);
  border-radius: 42% 58% 43% 57% / 42% 40% 60% 58%;
}

.iconBox p{
  font-weight: 700;
}
/* icons */

.inside-teampage-wrapper .teamvideo img{
  transform: none;
  height: 100%;
}
.inside-teampage-wrapper .elementor-image{
  left: auto;
  right: 0;
}
.inside-teampage-wrapper .element-icon.bicycle{
  right: 15%;
  transform: none;
}

.separator div[class^="bg-"]{
  -webkit-mask-image: url(../images/line.png);
  -webkit-mask-size: contain;
  -webkit-mask-position: center center;
  -webkit-mask-repeat: no-repeat;
}
/* inside page */

.bounceIn{
  animation-name:bounceIn;
  animation-duration: .75s;
}
@keyframes bounceIn{
  20%,40%,60%,80%,from,to{
      animation-timing-function:cubic-bezier(.215,.61,.355,1)
  }
  0%{
      opacity:0;
      transform:scale3d(.3,.3,.3)
  }
  20%{
      transform:scale3d(1.1,1.1,1.1)
  }
  40%{
      transform:scale3d(.9,.9,.9)
  }
  60%{
      opacity:1;
      transform:scale3d(1.03,1.03,1.03)
  }
  80%{
      transform:scale3d(.97,.97,.97)
  }
  to{
      opacity:1;
      transform:scale3d(1,1,1)
  }
}

.socialBtn i{
  display: flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  font-size: 14px;
  color: #fff;
  box-shadow: 0 10px 20px rgb(0 0 0 / 10%);
  border-radius: 50%;
  transition: all 300ms ease-in-out;
}

.socialBtn i.fa-facebook-f{
  background-color: var(--facebook);
}
.socialBtn i.fa-twitter{
  background-color: var(--twitter);
}
.socialBtn i.fa-linkedin-in{
  background-color: var(--linkedin);
}
.socialBtn i.fa-instagram{
  background-color: var(--instagram);
}
.socialBtn i.fa-youtube{
  background-color: var(--youtube);
}
.socialBtn i.fa-phone{
  background-color: var(--primary-color);
  animation: breathe 1s alternate linear infinite;
}
.socialBtn i.fa-tty{
  background-color: var(--youtube);
  animation: breathe 1s alternate linear infinite 500ms;
}
.socialBtn i.fa-envelope{
  background-color: var(--yellow);
  animation: breathe 1s alternate linear infinite 1s;
}

/* stroke */
i.stroke.fa-facebook-f{
  background-color: transparent;
  border: 1px solid rgb(255 255 255 / 15%);
}
i.stroke.fa-twitter{
  background-color: transparent;
  border: 1px solid rgb(255 255 255 / 15%);
}
i.stroke.fa-linkedin-in{
  background-color: transparent;
  border: 1px solid rgb(255 255 255 / 15%);
}
i.stroke.fa-instagram{
  background-color: transparent;
  border: 1px solid rgb(255 255 255 / 15%);
}
i.stroke.fa-youtube{
  background-color: transparent;
  border: 1px solid rgb(255 255 255 / 15%);
}
i.stroke.fa-phone{
  color: var(--primary-color);
  background-color: transparent;
  border: 1px solid var(--primary-color);
}
i.stroke.fa-tty{
  color: var(--youtube);
  background-color: transparent;
  border: 1px solid var(--youtube);
}
i.stroke.fa-envelope{
  color: var(--yellow);
  background-color: transparent;
  border: 1px solid var(--yellow);
}

i.stroke:hover{
  color: #fff;
}
i.stroke.fa-facebook-f:hover{
  background-color: var(--facebook);
}
i.stroke.fa-twitter:hover{
  background-color: var(--twitter);
}
i.stroke.fa-linkedin-in:hover{
  background-color: var(--linkedin);
}
i.stroke.fa-instagram:hover{
  background-color: var(--instagram);
}
i.stroke.fa-youtube:hover{
  background-color: var(--youtube);
}
i.stroke.fa-phone:hover{
  background-color: var(--primary-color);
}
i.stroke.fa-tty:hover{
  background-color: var(--youtube);
}
i.stroke.fa-envelope:hover{
  background-color: var(--yellow);
}

@keyframes breathe{
  0%{
    transform: scale(1);
  }
  100%{
    filter: hue-rotate(135deg);
    transform: scale(1.2);
  }
}

.position-relative {
  z-index: 1;
  isolation: isolate;
}

/* customize swiper */
.swiper-button-next,
.swiper-button-prev {
  color: #fff;
  background: rgb(0 0 0 / 50%);
  width: 40px;
  height: 40px;
  border-radius: 55% 45% 62% 38% / 42% 40% 60% 58%;
  transition: all 300ms ease-in-out;
}
.swiper-button-next:hover,
.swiper-button-prev:hover {
  background: var(--secondary-color);
  border: 1px solid rgb(0 0 0 / 20%);
  filter: drop-shadow(5px 5px 15px rgb(0 0 0 / 25%));
  border-radius: 42% 58% 43% 57% / 42% 40% 60% 58%;
}
.swiper-button-next:after,
.swiper-button-prev:after {
  font-size: 16px;
}

.bottomControls{
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
}

.bottomControls{
  margin-top: 20px;
}

.bottomControls div[class^="swiper-"]{
  position: static;
  margin: 0 !important;
}

.bottomControls .swiper-pagination{
  width: 40px;
}
/* customize swiper */

/* Customize modal */
.modal-backdrop{
  background-color: rgb(0 0 0 / 90%);
  backdrop-filter: blur(5px);
}
.modal-backdrop.show{
  opacity: 1;
}

button.close{
  width: 50px;
  height: 50px;
  padding-bottom: 4px;
  border-radius: 50%;
  background-color: var(--primary-color);
  font-weight: 300;
  font-size: 3rem;
  color: #fff;
  position: absolute;
  top: 15px;
  right: 15px;
  opacity: 1;
  box-shadow: none;
}

button.close:hover{
  background-color: var(--secondary-color);
  color: #fff;
  opacity: 1 !important;
}
button.close span{
  display: block;
  line-height: 30px;
}

.modal-content{
  background-color: var(--modal-color);
  border-radius: 2rem;
  border: 0;
}

.modal-content::before{
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  background-image: url(../images/before-image.png);
  background-size: contain;
  background-repeat: no-repeat;
  width: 35%;
  height: 35%;
  transform: translate(-28%, -28%) rotate(20deg);
  z-index: 1;
  pointer-events: none;
}

.form-control{
  border-radius: 30px;
  padding: 15px 25px;
  height: auto;
  border: 2px solid #ffefe4;
  color: #212121;
}

.form-control:focus{
  border-color: #ffefe4;
  box-shadow: 0px 10px 24px 0px rgb(255 226 203);
}
/* Customize modal */

.listContainer ul li {
  position: relative;
  font-size: 16px;
  margin: 20px 0;
  padding-left: 30px;
  line-height: 1.5;
  color: #626262;
}

.listContainer ul li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0px;
  width: 20px;
  height: 20px;
  background: url(../images/bullet.png) center no-repeat;
  background-size: contain;
}

.listContainer ul li:first-child{
  margin-top: 0;
}

.listContainer ul li:last-child{
  margin-bottom: 0;
}

.listContainer ul li a{
  color: inherit;
}
.listContainer.text-white ul li a{
  color: #fff;
}

.listContainer ul li a:hover{
  color: var(--primary-color);
}

.heading {
  display: table;
  position: relative;
  margin-bottom: 30px;
  z-index: 1;
}

.heading > i{
  width: 48px;
  display: block;
  margin: 0 auto;
  color: #B5B5B5;
}
svg:not([fill]) {
  fill: currentColor;
}
.heading h2 {
  font-weight: 700;
  color: #000;
  text-transform: capitalize;
}

.heading h3 {
  font-weight: 300;
  font-size: 2.25rem;
}

.heading p {
  display: block;
  width: 70%;
  margin: 20px auto 0;
}

.heading.hasline::after {
  content: "";
  width: 70px;
  display: block;
  height: 2px;
  background: var(--darkgray);
}

.smallHeading{
  font-weight: 600;
  color: var(--darkgreen);
}

.element-icon {
  position: absolute;
  width: 200px;
  pointer-events: none;
  left: calc(var(--left) * 10%);
  top: calc(var(--top) * 10%);
  z-index: -1;
}
.element-icon.sm {
  width: 160px;
}
.element-icon.xs {
  width: 120px;
  z-index: 1;
}
.element-icon.xxs {
  width: 90px;
}

.element-icon.elem-bl {
  left: 0;
  bottom: 0;
}
.element-icon.elem-r {
  left: auto;
  right: calc(var(--right) * 10%);
}
.element-icon.elem-br img {
  object-position: 50px 50px;
}

.text-cursive {
  font-family: var(--cursive);
}

.text-primary {
  color: var(--primary-color) !important;
}
.text-secondary {
  color: var(--secondary-color) !important;
}
.text-green {
  color: var(--lightgreen-color) !important;
}
.bg-lightgreen {
  background-color: var(--lightgreen-color);
}
.bg-secondary {
  background-color: var(--secondary-color) !important;
}
.bg-primary {
  background-color: var(--primary-color) !important;
  color: #fff;
}
.bg-primary p{
  color: #fff;
}

.bg-orange{
  background-color: var(--orange-color);
}

.readmore {
  width: 100%;
  margin-top: 30px;
}

.readmore .button {
  position: relative;
  z-index: 1;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 12px 20px;
  min-width: 140px;
  width: max-content;
  overflow: hidden;
  color: #fff;
  background-color: var(--primary-color);
  font-size: 16px;
  font-weight: 400;
  border-radius: 40px;
  text-align: center;
  border: 1px solid rgb(0 0 0 / 10%);
  transition: all ease-in-out 0.2s;
}

.readmore .button:hover {
  color: #fff;
  background-color: var(--secondary-color);
}

.readmore.white .button {
  color: var(--primary-color);
  background-color: #fff;
}

.readmore.white .button:hover {
  color: #fff;
  background-color: var(--lightgreen-color);
}

.viewmore .button.circular{
  width: 24px;
  height: 24px;
  font-size: 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background-color: var(--primary-color);
  color: #fff;
}

.viewmore .button.circular:hover{
  background-color: var(--yellow);
}


/*transformation Animation*/

.leftTranslate {
  -webkit-transform: translate(-200px, 0);
  transform: translate(-200px, 0);
  opacity: 0;
  -webkit-transition: all 1000ms;
  transition: all 1000ms;
}

.rightTranslate {
  -webkit-transform: translate(200px, 0);
  transform: translate(200px, 0);
  opacity: 0;
  -webkit-transition: all 1000ms;
  transition: all 1000ms;
}

.topTranslate {
  -webkit-transform: translate(0, -200px);
  transform: translate(0, -200px);
  opacity: 0;
  -webkit-transition: all 1000ms;
  transition: all 1000ms;
}

.bottomTranslate {
  -webkit-transform: translate(0, 200px);
  transform: translate(0, 200px);
  opacity: 0;
  -webkit-transition: all 1000ms;
  transition: all 1000ms;
}

.doneTranslate {
  -webkit-transform: translate(0, 0);
  transform: translate(0, 0);
  opacity: 1;
}

.scaleAnime {
  transform: scale(0);
  opacity: 0;
  transition: all 1000ms ease-in-out;
}

.doneScale {
  transform: translate(0) scale(1, 1) !important;
  opacity: 1;
}
/*transformation Animation*/


