.elementor-invisible:not(.animated) {
  opacity: 0
}

.animated {
  animation-duration: 1.25s;
}

.fadeInRightSmall {
  animation-name: fadeInRightSmall;
}

@keyframes fadeInRightSmall {
  from {
    opacity: 0;
    transform: translate3d(50px, 0, 0)
  }

  to {
    opacity: 1;
    transform: none
  }
}

/* header background */
:root {
  --e-global-color-pollock_accent: #4F77FF;
  --e-global-color-pollock_accent_2: #886CFF;
  --e-global-color-pollock_primary: #2D3958;
  --e-global-color-pollock_text: #7B88A8;
  --border-color: rgba(97, 119, 152, 0.2);
  --light-background: #F8FAFC;
}

.pollockHeaderBackgroundAnimationAnimation {
  height: 100vh;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #F7F5F1;
}

/* ----------------------------------------
Gallery Stack
---------------------------------------- */
.elementor-widget-mae-gallery-stack {
  z-index: 0;
}

.master-gallery-stack {
  position: relative;
  display: flex;
}

.master-gallery-stack div:not(:first-child) {
  position: absolute;
}

.image-width-full .master-gallery-stack {
  width: 100%;
  display: block;
}

.image-width-fit .master-gallery-stack,
.image-width-fit .master-gallery-stack .master-fancy-image:first-child {
  width: fit-content;
  width: -moz-fit-content;
}

.image-width-auto,
.image-width-auto .master-gallery-stack {
  position: absolute;
  display: block;
  width: 100%;
  height: 100%;
}

.elementor-widget-empty {
  background-color: transparent;
}

.image-width-auto .master-gallery-stack div:first-child {
  position: absolute;
}

.align-center .master-gallery-stack {
  justify-content: center;
}

.align-right .master-gallery-stack {
  justify-content: flex-end;
}

@media (max-width: 1024px) {
  .align--tabletleft .master-gallery-stack {
    justify-content: flex-start;
  }

  .align--tabletcenter .master-gallery-stack {
    justify-content: center;
  }

  .align--tabletright .master-gallery-stack {
    justify-content: flex-end;
  }
}

@media (max-width: 767px) {
  .align--mobileleft .master-gallery-stack {
    justify-content: flex-start;
  }

  .align--mobilecenter .master-gallery-stack {
    justify-content: center;
  }

  .align--mobileright .master-gallery-stack {
    justify-content: flex-end;
  }
}

/* ----------------------------------------
Shape
---------------------------------------- */
.master-shape {
  width: 100px;
  height: 100px;
  background: var(--e-global-color-pollock_accent);
}

/* ----------------------------------------
Text
---------------------------------------- */
.master-text.m90deg {
  text-orientation: mixed;
  writing-mode: vertical-lr;
}

.master-text.m90deg .inner {
  transform: rotate(180deg);
}

.master-text.r90deg {
  text-orientation: mixed;
  writing-mode: vertical-lr;
}


/* ----------------------------------------
	Fancy Image
---------------------------------------- */
.elementor-absolute .master-fancy-image {
  display: block;
}

.master-fancy-image {
  position: relative;
  display: flex;
  align-items: flex-start;
  width: auto;
}

.master-fancy-image .image-wrap {
  display: flex;
  align-items: flex-start;
  position: relative;
  width: 100%;
  height: auto;
  z-index: 0;
  transition: 0.3s;
}

.master-fancy-image .image-wrap img {
  width: 100%;
  transition: box-shadow 0.3s;
}

.master-fancy-image .master-video-icon {
  position: absolute;
  left: 50%;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  z-index: 1;
}

.align-center .master-fancy-image {
  justify-content: center;
}

.align-right .master-fancy-image {
  justify-content: flex-end;
}

@media (max-width: 1024px) {
  .align--tabletleft .master-fancy-image {
    justify-content: flex-start;
  }

  .align--tabletcenter .master-fancy-image {
    justify-content: center;
  }

  .align--tabletright .master-fancy-image {
    justify-content: flex-end;
  }
}

@media (max-width: 767px) {
  .align--mobileleft .master-fancy-image {
    justify-content: flex-start;
  }

  .align--mobilecenter .master-fancy-image {
    justify-content: center;
  }

  .align--mobileright .master-fancy-image {
    justify-content: flex-end;
  }
}


/* ----------------------------------------
	Shape
---------------------------------------- */
.master-shape {
  width: 100px;
  height: 100px;
  background: var(--e-global-color-pollock_accent);
}


.elementor-element-060e31e {
  --spacer-size: 155px;
}

.elementor-repeater-item-1.master-fancy-image {
  width: 7.2%;
  max-width: 7.2%;
  visibility: visible;
  right: 8%;
  left: unset;
  top: 31.5%;
}

.elementor-repeater-item-2.master-fancy-image {
  width: 3.2%;
  max-width: 3.2%;
  visibility: visible;
  right: 55%;
  left: unset;
  top: 17%;
}

.elementor-repeater-item-3.master-fancy-image {
  width: 5.2%;
  max-width: 5.2%;
  visibility: visible;
  left: 53%;
  top: 66%;
}

.elementor-repeater-item-1.master-shape {
  background-color: #F9C45C;
  width: 30px;
  height: 30px;
  border-radius: 50% 50% 50% 50%;
  overflow: hidden;
  visibility: visible;
  left: 10.2%;
  top: 150px;
}

.elementor-repeater-item-2.master-shape {
  background-color: #FF6D43;
  width: 15px;
  height: 15px;
  border-radius: 50% 50% 50% 50%;
  overflow: hidden;
  visibility: visible;
  right: 9%;
  left: unset;
  top: 14.5%;
}

.elementor-repeater-item-3.master-shape {
  background-color: #61DCDF;
  width: 15px;
  height: 15px;
  border-radius: 50% 50% 50% 50%;
  overflow: hidden;
  visibility: visible;
  right: 14%;
  left: unset;
  bottom: 30%;
}

.elementor-repeater-item-4.master-shape {
  background-color: #FF9513;
  width: 15px;
  height: 15px;
  border-radius: 50% 50% 50% 50%;
  overflow: hidden;
  visibility: visible;
  left: 34%;
  bottom: 11.5%;
}

.elementor-repeater-item-5.master-shape {
  background-color: #FFC0EC;
  width: 48px;
  height: 48px;
  border-radius: 50% 50% 50% 50%;
  overflow: hidden;
  visibility: visible;
  right: 8%;
  left: unset;
  top: 42%;
}

.elementor-repeater-item-6.master-shape {
  background-color: #FFC0EC;
  width: 15px;
  height: 15px;
  border-radius: 50% 50% 50% 50%;
  overflow: hidden;
  visibility: visible;
  left: 14.42%;
  top: 56.5%;
}



.inview .rotate-small>div {
  animation: 2s ease-in-out 30 alternate rotateSmall;
  transform-origin: 50% 50%
}

.inview .rotate-small2>div {
  animation: 2.2s ease-in-out 30 alternate rotateSmall;
  transform-origin: 50% 50%
}

.inview .rotate-small3>div {
  animation: 2.5s ease-in-out 30 alternate rotateSmallReverse;
  transform-origin: 50% 50%
}

@keyframes rotateSmall {
  to {
    transform: rotate(20deg) translateX(20px)
  }
}

@keyframes rotateSmallReverse {
  to {
    transform: rotate(-15deg) translateX(10px)
  }
}

.inview .rotate {
  animation: 20s linear 10 rotate
}

@keyframes rotate {
  to {
    transform: rotate(360deg)
  }
}

/* Hover Follow Animation */
.hoverFollowAnimationAnimation {
  height: 70vh;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #F7F5F1;
}

/* ----------------------------------------
	Parallax
---------------------------------------- */
.parallax-hover {
  transition: 0.3s ease;
}

/* How It Work Animation */
.shrinkButtonAnimation {
  height: 70vh;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #F7F5F1;
}

@keyframes shrink-button-animation-pulse-shrink {
  to {
    transform: scale(0.9)
  }
}


@keyframes shrink-button-animation-pulse-shrink-slightly {
  to {
    transform: scale(0.97)
  }
}

.shrink-button-animation-pulse-shrink:active,
.shrink-button-animation-pulse-shrink:focus,
.shrink-button-animation-pulse-shrink:hover {
  animation-name: shrink-button-animation-pulse-shrink;
  animation-duration: .3s;
  animation-timing-function: linear;
  animation-iteration-count: infinite;
  animation-direction: alternate
}

.click-here.shrink-button-animation-pulse-shrink:active,
.click-here.shrink-button-animation-pulse-shrink:focus,
.click-here.shrink-button-animation-pulse-shrink:hover {
  animation-name: shrink-button-animation-pulse-shrink-slightly;
}


@keyframes scroll-down-animation-pulse {
  25% {
    transform: scale(1.1);
  }

  75% {
    transform: scale(0.9);
  }
}

.scroll-down-animation-pulse:active,
.scroll-down-animation-pulse:focus,
.scroll-down-animation-pulse:hover {
  animation-name: scroll-down-animation-pulse;
  animation-duration: 1s;
  animation-timing-function: linear;
  animation-iteration-count: infinite;
}

.master-video-icon {
  text-align: center;
}

.master-video-icon a {
  margin: 20px auto;
}

.master-video-icon .popup-video {
  width: 100px;
  height: 100px;
  display: block;
  line-height: 100px;
  font-size: 14px;
  background: #FFFFFF;
  box-shadow: 0px 0px 20px 5px rgba(18, 2, 47, 0.15);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
}

.master-video-icon .scroll-down {
  width: 100px;
  height: 100px;
  display: block;
  line-height: 100px;
  font-size: 14px;
  background: #CA306C;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
}

.master-video-icon .popup-video .ci-play-button {
  display: block;
  width: 0px;
  height: 0px;
  border-right: 0px;
  border-top: 15px solid transparent;
  border-left: 25px solid #4F77FF;
  border-bottom: 15px solid transparent;
  margin-left: 8px;
}

.master-video-icon .click-here {
  display: block;
  font-size: 20px;
  line-height: 26px;
  font-weight: 700;
  padding: 10px 15px;
  color: #FFFFFF;
  border-radius: 40px;
  background-color: #CA306C;
}

/* Boxes Animation */
.boxesAnimation {
  height: 70vh;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  background-color: #F7F5F1;
}

.box-list-wrapper .box-list {
  display: flex;
  align-items: stretch;
  justify-content: flex-start;
  max-width: 1200px;
  margin: 0 auto;
}

.box-list-wrapper .box-list .box-item {
  width: calc(100% / 3);
}

.box-list-wrapper .box-list .box-item .box-item-border {
  padding: 0px 15px;
  height: 100%;
}

.box-list-wrapper .box-list .box-item .box-item-inner {
  border-radius: 20px 20px 20px 20px;
  overflow: hidden;
  padding: 50px 35px 32px 35px;
  position: relative;
  height: 100%;
  cursor: pointer;
  transition: .3s;
}

.box-list-wrapper .box-list .box-item .box-item-inner:hover {
  box-shadow: 0px 0px 50px 20px rgba(79, 119, 255, 0.2);
}


.box-list-wrapper .box-list .box-item .box-item-inner:hover .bg-static {
  border-style: solid;
  border-color: #FFFFFF;
}

.box-list-wrapper .box-list .box-item .box-item-inner .inner {
  flex-direction: column;
  display: flex;
  align-items: center;
  position: relative;
  z-index: 1;
  text-align: center;
}

.box-list-wrapper .box-list .box-item .box-item-inner .inner .inner-image {
  width: 100%;
  max-width: 80px;
}

.box-list-wrapper .box-list .box-item .box-item-inner .inner .headline-2 {
  font-size: 22px;
  line-height: 1.455;
  font-weight: 400;
  letter-spacing: -1px;
  transition: color .3s;
  color: #2D3958;
}

.box-list-wrapper .box-list .box-item .box-item-inner .inner .desc {
  font-size: 16px;
  line-height: 1.625;
  color: #7B88A8;
}

.box-list-wrapper .box-list .box-item .box-item-inner .bg-static {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  transition: .3s;
  z-index: 0;
  border-radius: 20px 20px 20px 20px;

  background-color: #FFFFFF;
  border-style: solid;
  border-width: 1px 1px 1px 1px;
  border-color: #61779832;
}

/* Master Button */

.pollockButtonAnimation {
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #FFFFFF;
}

.master-button-wrapper button {
  position: relative;
  display: inline-flex;
  line-height: 24px;
  font-weight: 400;
  border-radius: 5px;
  transition: .3s;
  background-color: #4f77ff;
  overflow: hidden;
  cursor: pointer;
  text-transform: uppercase;
  box-shadow: none;
  font-size: 14px;
  padding: 11px 35px;
  text-decoration: none;
  border: 0px;
  outline: none;
  color: #ffffff;
  font-weight: 700;
}

.master-button-wrapper .master-button.btn-hover-2 .button-inner {
  z-index: 1;
}

.master-button-wrapper .master-button.btn-hover-2 .bg-hover {
  position: absolute;
  top: 0px;
  left: 0px;
  display: block;
  width: 0;
  height: 0;
  transform: translate(-50%, -50%);
  transition: .5s ease-in-out;
  z-index: 0;
  border-radius: 100%;
  opacity: .3;
  background-color: #2D3958;
  transition: width .7s, padding-top .7s, opacity .7s, top, left;
}

.master-button-wrapper .master-button.btn-hover-2:hover .bg-hover {
  width: calc(100% * 2.25);
  padding-top: calc(100% * 2.25);
  opacity: 1;
}

/* Zoom In */

@keyframes zoomIn {
  from {
    opacity: 0;
    transform: scale3d(.3, .3, .3);
  }

  50% {
    opacity: 1;
  }
}

.zoomIn:not(.animated) {
  opacity: 0;
}

.animated.zoomIn {
  animation-name: zoomIn;
  animation-duration: .75s;
}

/* Paralax Animation */
.paralaxScrollAnimation {
  height: 200vh;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #F7F5F1;
}

.paralaxScrollAnimation .bg-grad-1.master-shape {
  background-image: url("https://simulate-themes.verticaldev.org/wp-content/uploads/2022/07/bg-grad-1.webp");
  width: 100%;
  height: 720px;
  border-radius: 20px 20px 20px 20px;
  overflow: hidden;
  visibility: visible;
  z-index: 0;
  left: 25px;
  top: 0px;
}


.paralaxScrollAnimation .animation-item-small-box.master-fancy-image {
  width: 242px;
  max-width: 242px;
  visibility: visible;
  z-index: 1;
  left: 0px;
  top: 100px;
}

.paralaxScrollAnimation .animation-item-small-box.master-fancy-image .image-wrap {
  border-radius: 20px 20px 20px 20px;
  overflow: hidden;
  box-shadow: 0px 21px 82px 0px rgba(79, 119, 255, 0.2);
}

.paralaxScrollAnimation .animation-item-large-box.master-fancy-image {
  width: 301px;
  max-width: 301px;
  visibility: visible;
  z-index: 1;
  right: -55px;
  left: unset;
  top: 300px;
}

.paralaxScrollAnimation .animation-item-large-box.master-fancy-image .image-wrap {
  border-radius: 20px 20px 20px 20px;
  overflow: hidden;
}

.paralaxScrollAnimation .paralax-animation-list {
  display: flex;
  align-items: stretch;
  justify-content: flex-start;
  max-width: 1200px;
  margin: 0 auto;
}

.paralaxScrollAnimation .paralax-animation-list .paralax-animation-item {
  width: 50%;
}

.paralaxScrollAnimation .paralax-animation-list .paralax-animation-item:first-child {
  /* margin-right: 100px; */
}

.paralaxScrollAnimation .paralax-animation-list .paralax-animation-item:first-child .paralax-animation-item-inner {
  max-width: 400px;
}

.paralaxScrollAnimation .paralax-animation-list .paralax-animation-item .paralax-animation-item-header .main-heading {
  font-size: 36px;
  line-height: 46px;
  margin: 0px 0px 10px;
  color: #2D3958;
}

.paralaxScrollAnimation .paralax-animation-list .paralax-animation-item .paralax-animation-item-header .sub-heading {
  font-size: 18px;
  line-height: 1.556;
  color: #7B88A8;
}

.paralaxScrollAnimation .paralax-animation-list .paralax-animation-item .paralax-animation-item-body {
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  margin-top: 50px;
}

.paralaxScrollAnimation .paralax-animation-list .paralax-animation-item .paralax-animation-item-body .icon-wrap {
  padding-right: 20px;
}

.paralaxScrollAnimation .paralax-animation-list .paralax-animation-item .paralax-animation-item-body .headline-2 {
  margin: 0px 0px 10px;
  font-size: 18px;
  font-weight: 500;
  line-height: 28px;
  letter-spacing: 0.4px;
  color: #2D3958;
}

.paralaxScrollAnimation .paralax-animation-list .paralax-animation-item .paralax-animation-item-body .desc {
  font-size: 16px;
  line-height: 1.625;
  margin: 0px 0px 23px;
  color: #7B88A8;
}

.paralaxScrollAnimation .elementor-repeater-item-3.rotate-small3.master-fancy-image {
  width: 34%;
  max-width: 34%;
  visibility: visible;
  z-index: 2;
  right: -150px;
  left: unset;
  top: 70px;
}

/* floatCursorButtonAnimation */
.floatCursorButtonAnimation {
  min-height: 70vh;
  display: flex;
  align-items: center;
  justify-content: center;
}

/* Custom Cursor
-------------------------------------------------------------- */
.pollock-cursor {
  position: fixed;
  left: 0;
  top: 0;
  pointer-events: none;
  z-index: 11000;
  transform: translate(-50%, -50%);
}

.pollock-cursor .inner {
  position: relative;
  display: flex;
  width: 100px;
  height: 100px;
  line-height: 100px;
  transform: scale(0.5);
  opacity: 0;
  border-radius: 50%;
  justify-content: center;
  transition: all 0.5s ease;
}

.pollock-cursor .inner .arrow {
  display: none;
  width: 10px;
  height: auto;
  fill: #fff;
  margin: 0 8px;
}

.pollock-cursor .inner .text {
  display: inline-block;
  text-align: center;
  font-family: 'Outfit';
  font-size: 16px;
  font-weight: 500;
  color: #fff;
}

.pollock-cursor.active .inner {
  opacity: 1;
  transform: scale(1);
  background-color: rgba(0, 0, 0, 0.7);
  backdrop-filter: blur(5px);
}