
/**----------------------------------------
START: Theme Default CSS
----------------------------------------*/
:root {
  /**
     @Font-weight Declaration
   */
  --mx-fw-thin: 100;
  --mx-fw-elight: 200;
  --mx-fw-light: 300;
  --mx-fw-regular: 400;
  --mx-fw-medium: 500;
  --mx-fw-sbold: 600;
  --mx-fw-bold: 700;
  --mx-fw-ebold: 800;
  --mx-fw-black: 900;
  /**
     @Font-Size Declaration
   */
  --mx-fs-body: 16px;
  --mx-fs-h1: 90px;
  --mx-fs-h2: 72px;
  --mx-fs-h3: 48px;
  --mx-fs-h4: 32px;
  --mx-fs-h5: 28px;
  --mx-fs-h6: 20px;
  /**
     @Color Declaration
   */
  --mx-color-common-white: #ffffff;
  --mx-color-common-black: #000000;
  --mx-color-heading-primary: #0c0c0c;
  --mx-color-text-body: #333333;
  --mx-color-text-body-2: #707070;
  --mx-color-theme-primary: #de1a39;
  --mx-color-theme-bg: #ffffff;
  --mx-color-theme-bg-2: #f1f1f1;
  --mx-color-theme-bg-3: rgba(12, 12, 12, 0.6);
  --mx-color-theme-bg-dark: #0c0c0c;
  --mx-color-theme-bg-dark-2: #333333;
  --mx-color-theme-bg-dark-3: #707070;
  --mx-color-theme-bg-dark-4: rgba(12, 12, 12, 0.2509803922);
  --mx-color-theme-bg-dark-5: rgba(51, 51, 51, 0.5490196078);
  --mx-color-theme-bg-dark-6: #161515;
  --mx-color-light-1: #fcf8f0;
  --mx-color-light-2: #bdb9b3;
  --mx-color-light-3: #999691;
  --mx-color-light-4: rgba(252, 245, 234, 0.5019607843);
  --mx-color-light-5: rgba(252, 248, 240, 0.8);
  --mx-color-grey-1: #c5c5c5;
  --mx-color-border-1: #e0dad1;
  --mx-color-border-2: #dbd5cc;
  --mx-color-border-3: #292826;
  --mx-color-border-4: rgba(252, 248, 240, 0.1215686275);
  --mx-color-border-5: rgba(224, 218, 209, 0.1019607843);
  --mx-color-gradient-1: linear-gradient(rgba(12, 12, 12, 0) 0%, rgb(12, 12, 12) 100%);
  --mx-color-gradient-2: linear-gradient(rgba(12, 12, 12, 0) 50%, rgb(12, 12, 12) 80%);
}

* {
  margin: 0;
  padding: 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

p {
  margin-bottom: 5px;
}

.elem h1,
.mx-fz-h1,
.elem h2,
.mx-fz-h2,
.elem h3,
.mx-fz-h3,
.elem h4,
.mx-fz-h4,
.elem h5,
.mx-fz-h5,
.elem h6,
.mx-fz-h6 {
  color: var(--mx-color-heading-primary);
  font-weight: var(--mx-fw-sbold);
  line-height: 1.1;
  margin-top: 0px;
  margin-bottom: 15px;
}

.elem h1,
.mx-fz-h1 {
  font-size: var(--mx-fs-h1);
  line-height: 1;
}
@media only screen and (min-width: 1400px) and (max-width: 1599px) {
  .elem h1,
  .mx-fz-h1 {
    font-size: 76px;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .elem h1,
  .mx-fz-h1 {
    font-size: 70px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .elem h1,
  .mx-fz-h1 {
    font-size: 68px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .elem h1,
  .mx-fz-h1 {
    font-size: 62px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .elem h1,
  .mx-fz-h1 {
    font-size: 52px;
  }
}
@media (max-width: 575px) {
  .elem h1,
  .mx-fz-h1 {
    font-size: 41px;
  }
}

.elem h2,
.mx-fz-h2 {
  font-size: var(--mx-fs-h2);
  line-height: 1.11;
  letter-spacing: -0.02em;
}
@media only screen and (min-width: 1400px) and (max-width: 1599px) {
  .elem h2,
  .mx-fz-h2 {
    font-size: 60px;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .elem h2,
  .mx-fz-h2 {
    font-size: 58px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .elem h2,
  .mx-fz-h2 {
    font-size: 56px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .elem h2,
  .mx-fz-h2 {
    font-size: 56px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .elem h2,
  .mx-fz-h2 {
    font-size: 42px;
  }
}
@media (max-width: 575px) {
  .elem h2,
  .mx-fz-h2 {
    font-size: 34px;
  }
}

.elem h3,
.mx-fz-h3 {
  font-size: var(--mx-fs-h3);
  line-height: 1;
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .elem h3,
  .mx-fz-h3 {
    font-size: 40px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .elem h3,
  .mx-fz-h3 {
    font-size: 36px;
  }
}
@media (max-width: 575px) {
  .elem h3,
  .mx-fz-h3 {
    font-size: 28px;
  }
}

.elem h4,
.mx-fz-h4 {
  font-size: var(--mx-fs-h4);
  line-height: 1.25;
  letter-spacing: -0.015em;
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .elem h4,
  .mx-fz-h4 {
    font-size: 26px;
  }
}
@media (max-width: 575px) {
  .elem h4,
  .mx-fz-h4 {
    font-size: 24px;
  }
}

.elem h5,
.mx-fz-h5 {
  font-size: var(--mx-fs-h5);
  line-height: 1.27;
  letter-spacing: -0.015em;
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .elem h5,
  .mx-fz-h5 {
    font-size: 24px;
  }
}
@media (max-width: 575px) {
  .elem h5,
  .mx-fz-h5 {
    font-size: 22px;
  }
}

.elem h6,
.mx-fz-h6 {
  font-size: var(--mx-fs-h6);
  line-height: 1.2;
}
@media (max-width: 575px) {
  .elem h6,
  .mx-fz-h6 {
    font-size: 18px;
  }
}

h1 a,
h2 a,
h3 a,
h4 a,
h5 a,
h6 a {
  font-size: inherit;
  color: inherit;
  font-weight: inherit;
  line-height: inherit;
  display: inline-block;
}

h1:hover a,
h2:hover a,
h3:hover a,
h4:hover a,
h5:hover a,
h6:hover a {
  font-size: inherit;
  color: inherit;
  font-weight: inherit;
}

ul,
ol {
  margin: 0px;
  padding-left: 20px;
}
ul ul,
ul ol,
ol ul,
ol ol {
  margin-top: 5px;
}

a,
button,
input[type=submit],
button[type=submit] {
  -webkit-transition: all 0.4s ease-in-out 0s;
  transition: all 0.4s ease-in-out 0s;
}

img {
  max-width: 100%;
}

select,
.nice-select,
input[type=search],
input[type=tel],
input[type=text],
input[type=email],
input[type=url],
textarea {
  outline: none;
  background-color: transparent;
  width: 100%;
  height: auto;
  min-height: 44px;
  font-size: var(--mx-fs-body);
  border: 1px solid var(--mx-color-border-1);
  color: var(--mx-color-text-body);
  padding: 10px 20px;
  -webkit-box-shadow: 0 0 0;
          box-shadow: 0 0 0;
  border-radius: 0;
}
select:focus,
.nice-select:focus,
input[type=search]:focus,
input[type=tel]:focus,
input[type=text]:focus,
input[type=email]:focus,
input[type=url]:focus,
textarea:focus {
  border-color: var(--mx-color-theme-primary);
}

input[type=search]::-webkit-search-decoration,
input[type=search]::-webkit-search-cancel-button,
input[type=search]::-webkit-search-results-button,
input[type=search]::-webkit-search-results-decoration {
  -webkit-appearance: none;
}

.nice-select:hover {
  border-color: var(--mx-color-border-1);
}
.nice-select.open {
  border-color: var(--mx-color-theme-primary);
}

*::-webkit-input-placeholder {
  color: var(--mx-color-text-body);
  font-size: var(--mx-fs-body);
  opacity: 1;
}
*::-moz-placeholder {
  color: var(--mx-color-text-body);
  font-size: var(--mx-fs-body);
  opacity: 1;
}
*:-ms-input-placeholder {
  color: var(--mx-color-text-body);
  font-size: var(--mx-fs-body);
  opacity: 1;
}
*::-ms-input-placeholder {
  color: var(--mx-color-text-body);
  font-size: var(--mx-fs-body);
  opacity: 1;
}
*::placeholder {
  color: var(--mx-color-text-body);
  font-size: var(--mx-fs-body);
  opacity: 1;
}

.w-img img {
  width: 100%;
}

.m-img img {
  max-width: 100%;
}

.uppercase {
  text-transform: uppercase;
}

.capitalize {
  text-transform: capitalize;
}

.fix {
  overflow: hidden;
}

.container,
.container-fluid,
.container-lg,
.container-md,
.container-sm,
.container-xl,
.container-xxl,
.row {
  --bs-gutter-x: 30px;
}

.section-padding {
  padding-top: 120px;
  padding-bottom: 120px;
}

.container-space {
  padding: 0 45px;
}
@media only screen and (min-width: 1400px) and (max-width: 1599px) {
  .container-space {
    padding: 0 25px;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px), only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px) {
  .container-space {
    padding: 0 15px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .container-space {
    padding: 0 5px;
  }
}
@media (max-width: 575px) {
  .container-space {
    padding: 0;
  }
}

.gap-30 {
  gap: 30px;
}

.mt-60 {
  margin-top: 60px;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .mt-60 {
    margin-top: 40px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px), (max-width: 575px) {
  .mt-60 {
    margin-top: 30px;
  }
}

.row-gap-30 {
  row-gap: 30px;
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 575px) {
  .row-gap-30 {
    row-gap: 20px;
  }
}

.ff-heading {
  color: var(--mx-color-heading-primary);
}
.ff-heading a {
  color: inherit;
}

.ff-body {
  font-family: var(--mx-ff-text-body);
}

.fs-18 {
  font-size: 18px;
  line-height: 1.5;
  letter-spacing: 0.01em;
}
.fs-18 span {
  color: var(--mx-color-theme-primary);
  text-decoration: underline;
}

.fs-20 {
  font-size: 20px;
  line-height: 1.2;
  letter-spacing: -0.015em;
}
@media (max-width: 575px) {
  .fs-20 {
    font-size: 18px;
  }
}

.fs-22 {
  font-size: 22px;
  line-height: 1.3;
  letter-spacing: -0.015em;
}
.fs-22 span {
  color: var(--mx-color-theme-primary);
  text-decoration: underline;
}

.fs-24 {
  font-size: 24px;
  line-height: 1;
  letter-spacing: -0.02em;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px), only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px) {
  .fs-24 {
    font-size: 22px;
  }
}
@media (max-width: 575px) {
  .fs-24 {
    font-size: 20px;
  }
}

.fs-28 {
  font-size: 28px;
  line-height: 1.27;
  letter-spacing: -0.015em;
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .fs-28 {
    font-size: 24px;
  }
}
@media (max-width: 575px) {
  .fs-28 {
    font-size: 22px;
  }
}

.fs-32 {
  font-size: 32px;
  line-height: 1.25;
  letter-spacing: -0.015em;
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .fs-32 {
    font-size: 26px;
  }
}
@media (max-width: 575px) {
  .fs-32 {
    font-size: 24px;
  }
}

.fs-48 {
  font-size: 48px;
  line-height: 1;
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .fs-48 {
    font-size: 40px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .fs-48 {
    font-size: 36px;
  }
}
@media (max-width: 575px) {
  .fs-48 {
    font-size: 28px;
  }
}

.fs-120 {
  font-size: 120px;
  line-height: 1;
  letter-spacing: -0.02em;
}
.fs-120 i,
.fs-120 svg {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  line-height: 1;
  position: relative;
  font-size: 125%;
  margin-right: -20px;
  margin-top: -40px;
  bottom: -23px;
}
@media only screen and (min-width: 1600px) and (max-width: 1700px) {
  .fs-120 {
    font-size: 110px;
  }
}
@media only screen and (min-width: 1400px) and (max-width: 1599px) {
  .fs-120 {
    font-size: 100px;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .fs-120 {
    font-size: 80px;
  }
  .fs-120 i,
  .fs-120 svg {
    bottom: -17px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px) {
  .fs-120 {
    font-size: 72px;
  }
  .fs-120 i,
  .fs-120 svg {
    bottom: -13px;
    margin-right: -15px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .fs-120 {
    font-size: 48px;
  }
  .fs-120 i,
  .fs-120 svg {
    bottom: -11px;
    margin-right: -12px;
  }
}
@media (max-width: 575px) {
  .fs-120 {
    font-size: 42px;
  }
  .fs-120 i,
  .fs-120 svg {
    bottom: -8px;
    margin-right: -10px;
  }
}

.fs-230 {
  font-size: 230px;
  letter-spacing: -0.04em;
  line-height: 0.8;
}
@media only screen and (min-width: 1600px) and (max-width: 1700px) {
  .fs-230 {
    font-size: 200px;
  }
}
@media only screen and (min-width: 1400px) and (max-width: 1599px) {
  .fs-230 {
    font-size: 180px;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .fs-230 {
    font-size: 160px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .fs-230 {
    font-size: 130px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .fs-230 {
    font-size: 100px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 575px) {
  .fs-230 {
    font-size: 60px;
  }
}

.fw-regular {
  font-weight: var(--mx-fw-regular);
}

.fw-sbold {
  font-weight: var(--mx-fw-sbold);
}

.title-highlight .line,
.title-highlight .line-2,
.title-highlight-2 .line,
.title-highlight-2 .line-2 {
  position: relative;
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
  --highlight-offset: 0%;
  background-image: -webkit-gradient(linear, left top, right top, from(var(--mx-color-heading-primary)), to(var(--mx-color-border-2)));
  background-image: linear-gradient(90deg, var(--mx-color-heading-primary) var(--highlight-offset), var(--mx-color-border-2) var(--highlight-offset));
}

.mx-chars-up .line {
  overflow: hidden;
}

.mx-chars-up .line,
.mx-chars-up .char {
  display: inline-block;
}

.mx-line-up {
  position: relative;
  overflow: hidden;
}
.mx-line-up > div {
  position: relative;
  margin: 0;
}
.mx-line-up .line {
  overflow: hidden;
}
.mx-line-up .line-inner {
  display: inline-block;
}

.whitespace-nowrap {
  white-space: nowrap;
}

.inline-block {
  display: inline-block;
}

.relative {
  position: relative;
}

.char-wrap {
  -webkit-transform-style: preserve-3d;
          transform-style: preserve-3d;
  -webkit-perspective: 10000px;
          perspective: 10000px;
  width: auto;
}
.char-wrap > span:first-child {
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-transform-origin: 50% 25%;
      -ms-transform-origin: 50% 25%;
          transform-origin: 50% 25%;
}
.char-wrap > span:nth-child(2) {
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-transform-origin: 50% 100%;
      -ms-transform-origin: 50% 100%;
          transform-origin: 50% 100%;
}

.invisible {
  visibility: hidden;
}

.absolute,
.split-flip-text {
  position: absolute;
}

.split-flip-text {
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border-width: 0;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
}

.mx-theme-primary {
  background-color: var(--mx-color-theme-primary);
}

.mx-theme-dark {
  background-color: var(--mx-color-theme-bg-dark);
}

.mx-theme-dark-2 {
  background-color: var(--mx-color-theme-bg-dark-2);
}

.mx-theme-dark-3 {
  background-color: var(--mx-color-theme-bg-dark-3);
}

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

.mx-theme-bg-2 {
  background-color: var(--mx-color-theme-bg-2);
}

.mx-text-primary {
  color: var(--mx-color-theme-primary);
}

.mx-text-body {
  color: var(--mx-color-text-body);
}

.mx-text-body-2 {
  color: var(--mx-color-text-body-2);
}

.mx-text-dark {
  color: var(--mx-color-heading-primary);
}

.mx-text-black {
  color: var(--mx-color-common-black);
}

.mx-text-white {
  color: var(--mx-color-common-white);
}

.mx-text-light-1 {
  color: var(--mx-color-light-1);
}

.mx-text-light-2 {
  color: var(--mx-color-light-2);
}

.mx-text-light-3 {
  color: var(--mx-color-light-3);
}

.mx-bg-image {
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
}
.mx-bg-image-absolute {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: -1;
}

.mx-image-distortion {
  overflow: hidden;
}
.mx-image-distortion canvas {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: -1;
}

.mx-split-text {
  opacity: 0;
}
.mx-split-text:has(.char) {
  opacity: 1;
}

.inner_top_gap {
  padding-top: 218px;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .inner_top_gap {
    padding-top: 198px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .inner_top_gap {
    padding-top: 178px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 575px) {
  .inner_top_gap {
    padding-top: 110px;
  }
}

.mx-fade {
  opacity: 0;
}

.mx-border-top {
  border-top: 1px solid var(--mx-color-border-1);
}

/**
  Animation keyframes
*/
.mx-text-gardient {
  animation: textGradient 4s linear infinite reverse;
}

.mx-spinner {
  -webkit-animation: rotateImg 6s infinite linear;
          animation: rotateImg 6s infinite linear;
}

@-webkit-keyframes scroll {
  from {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
  to {
    -webkit-transform: translateX(calc(-100% - var(--gap)));
            transform: translateX(calc(-100% - var(--gap)));
  }
}

@keyframes scroll {
  from {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
  to {
    -webkit-transform: translateX(calc(-100% - var(--gap)));
            transform: translateX(calc(-100% - var(--gap)));
  }
}
@-webkit-keyframes scroll-rtl {
  from {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
  to {
    -webkit-transform: translateX(calc(100% + var(--gap)));
            transform: translateX(calc(100% + var(--gap)));
  }
}
@keyframes scroll-rtl {
  from {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
  to {
    -webkit-transform: translateX(calc(100% + var(--gap)));
            transform: translateX(calc(100% + var(--gap)));
  }
}
@-webkit-keyframes lineHover {
  0% {
    width: 100%;
  }
  50% {
    width: 0;
    right: 0;
  }
  100% {
    width: 100%;
    left: 0;
  }
}
@keyframes lineHover {
  0% {
    width: 100%;
  }
  50% {
    width: 0;
    right: 0;
  }
  100% {
    width: 100%;
    left: 0;
  }
}
@-webkit-keyframes inOut {
  0% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
  50% {
    -webkit-transform: scale(0);
            transform: scale(0);
  }
  100% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}
@keyframes inOut {
  0% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
  50% {
    -webkit-transform: scale(0);
            transform: scale(0);
  }
  100% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}
@-webkit-keyframes bounce {
  0%, 20%, 50%, 80%, 100% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
  40% {
    -webkit-transform: translateY(-10px);
            transform: translateY(-10px);
  }
  60% {
    -webkit-transform: translateY(-5px);
            transform: translateY(-5px);
  }
}
@keyframes bounce {
  0%, 20%, 50%, 80%, 100% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
  40% {
    -webkit-transform: translateY(-10px);
            transform: translateY(-10px);
  }
  60% {
    -webkit-transform: translateY(-5px);
            transform: translateY(-5px);
  }
}
@-webkit-keyframes inOut2 {
  0% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
  50% {
    -webkit-transform: scale(0);
            transform: scale(0);
  }
  100% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}
@keyframes inOut2 {
  0% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
  50% {
    -webkit-transform: scale(0);
            transform: scale(0);
  }
  100% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}
@-webkit-keyframes rotateImg {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg);
  }
}
@keyframes rotateImg {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg);
  }
}
@-webkit-keyframes rotateImg2 {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(-360deg);
            transform: rotate(-360deg);
  }
}
@keyframes rotateImg2 {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(-360deg);
            transform: rotate(-360deg);
  }
}
@-webkit-keyframes textGradient {
  0% {
    background-position: 0% 50%;
  }
  100% {
    background-position: 200% 50%;
  }
}
@keyframes textGradient {
  0% {
    background-position: 0% 50%;
  }
  100% {
    background-position: 200% 50%;
  }
}
@-webkit-keyframes animate-blocks-svg {
  0% {
    fill: transparent;
  }
  100% {
    fill: currentColor;
  }
}
@keyframes animate-blocks-svg {
  0% {
    fill: transparent;
  }
  100% {
    fill: currentColor;
  }
}
.svg-elem-1 {
  -webkit-animation: animate-blocks-svg 0.7s cubic-bezier(0.25, 0.46, 0.45, 0.94) 0.8s both;
          animation: animate-blocks-svg 0.7s cubic-bezier(0.25, 0.46, 0.45, 0.94) 0.8s both;
}

.svg-elem-2 {
  -webkit-animation: animate-blocks-svg 0.7s cubic-bezier(0.25, 0.46, 0.45, 0.94) 0.9s both;
          animation: animate-blocks-svg 0.7s cubic-bezier(0.25, 0.46, 0.45, 0.94) 0.9s both;
}

.svg-elem-3 {
  -webkit-animation: animate-blocks-svg 0.7s cubic-bezier(0.25, 0.46, 0.45, 0.94) 1s both;
          animation: animate-blocks-svg 0.7s cubic-bezier(0.25, 0.46, 0.45, 0.94) 1s both;
}

.svg-elem-4 {
  -webkit-animation: animate-blocks-svg 0.7s cubic-bezier(0.25, 0.46, 0.45, 0.94) 1.1s both;
          animation: animate-blocks-svg 0.7s cubic-bezier(0.25, 0.46, 0.45, 0.94) 1.1s both;
}

.svg-elem-5 {
  -webkit-animation: animate-blocks-svg 0.7s cubic-bezier(0.25, 0.46, 0.45, 0.94) 1.2s both;
          animation: animate-blocks-svg 0.7s cubic-bezier(0.25, 0.46, 0.45, 0.94) 1.2s both;
}

.svg-elem-6 {
  -webkit-animation: animate-blocks-svg 0.7s cubic-bezier(0.25, 0.46, 0.45, 0.94) 1.3s both;
          animation: animate-blocks-svg 0.7s cubic-bezier(0.25, 0.46, 0.45, 0.94) 1.3s both;
}

.svg-elem-7 {
  -webkit-animation: animate-blocks-svg 0.7s cubic-bezier(0.25, 0.46, 0.45, 0.94) 1.4s both;
          animation: animate-blocks-svg 0.7s cubic-bezier(0.25, 0.46, 0.45, 0.94) 1.4s both;
}

.svg-elem-8 {
  -webkit-animation: animate-blocks-svg 0.7s cubic-bezier(0.25, 0.46, 0.45, 0.94) 1.5s both;
          animation: animate-blocks-svg 0.7s cubic-bezier(0.25, 0.46, 0.45, 0.94) 1.5s both;
}

.svg-elem-9 {
  -webkit-animation: animate-blocks-svg 0.7s cubic-bezier(0.25, 0.46, 0.45, 0.94) 1.6s both;
          animation: animate-blocks-svg 0.7s cubic-bezier(0.25, 0.46, 0.45, 0.94) 1.6s both;
}

.svg-elem-10 {
  -webkit-animation: animate-blocks-svg 0.7s cubic-bezier(0.25, 0.46, 0.45, 0.94) 1.7s both;
          animation: animate-blocks-svg 0.7s cubic-bezier(0.25, 0.46, 0.45, 0.94) 1.7s both;
}

.svg-elem-11 {
  -webkit-animation: animate-blocks-svg 0.7s cubic-bezier(0.25, 0.46, 0.45, 0.94) 1.8s both;
          animation: animate-blocks-svg 0.7s cubic-bezier(0.25, 0.46, 0.45, 0.94) 1.8s both;
}

.svg-elem-12 {
  -webkit-animation: animate-blocks-svg 0.7s cubic-bezier(0.25, 0.46, 0.45, 0.94) 1.9s both;
          animation: animate-blocks-svg 0.7s cubic-bezier(0.25, 0.46, 0.45, 0.94) 1.9s both;
}

.svg-elem-13 {
  -webkit-animation: animate-blocks-svg 0.7s cubic-bezier(0.25, 0.46, 0.45, 0.94) 2s both;
          animation: animate-blocks-svg 0.7s cubic-bezier(0.25, 0.46, 0.45, 0.94) 2s both;
}

.svg-elem-14 {
  -webkit-animation: animate-blocks-svg 0.7s cubic-bezier(0.25, 0.46, 0.45, 0.94) 2.1s both;
          animation: animate-blocks-svg 0.7s cubic-bezier(0.25, 0.46, 0.45, 0.94) 2.1s both;
}

.svg-elem-15 {
  -webkit-animation: animate-blocks-svg 0.7s cubic-bezier(0.25, 0.46, 0.45, 0.94) 2.2s both;
          animation: animate-blocks-svg 0.7s cubic-bezier(0.25, 0.46, 0.45, 0.94) 2.2s both;
}

.svg-elem-16 {
  -webkit-animation: animate-blocks-svg 0.7s cubic-bezier(0.25, 0.46, 0.45, 0.94) 2.3s both;
          animation: animate-blocks-svg 0.7s cubic-bezier(0.25, 0.46, 0.45, 0.94) 2.3s both;
}

@-webkit-keyframes pulse {
  0% {
    -webkit-box-shadow: 0 0 0 0px rgb(255, 255, 255);
            box-shadow: 0 0 0 0px rgb(255, 255, 255);
  }
  100% {
    -webkit-box-shadow: 0 0 0 20px rgba(0, 0, 0, 0);
            box-shadow: 0 0 0 20px rgba(0, 0, 0, 0);
  }
}
@keyframes pulse {
  0% {
    -webkit-box-shadow: 0 0 0 0px rgb(255, 255, 255);
            box-shadow: 0 0 0 0px rgb(255, 255, 255);
  }
  100% {
    -webkit-box-shadow: 0 0 0 20px rgba(0, 0, 0, 0);
            box-shadow: 0 0 0 20px rgba(0, 0, 0, 0);
  }
}
@-webkit-keyframes gelatine {
  from, to {
    -webkit-transform: scale(1, 1);
            transform: scale(1, 1);
  }
  25% {
    -webkit-transform: scale(0.7, 1.1);
            transform: scale(0.7, 1.1);
  }
  50% {
    -webkit-transform: scale(1.1, 0.7);
            transform: scale(1.1, 0.7);
  }
  75% {
    -webkit-transform: scale(0.95, 1.05);
            transform: scale(0.95, 1.05);
  }
}
@keyframes gelatine {
  from, to {
    -webkit-transform: scale(1, 1);
            transform: scale(1, 1);
  }
  25% {
    -webkit-transform: scale(0.7, 1.1);
            transform: scale(0.7, 1.1);
  }
  50% {
    -webkit-transform: scale(1.1, 0.7);
            transform: scale(1.1, 0.7);
  }
  75% {
    -webkit-transform: scale(0.95, 1.05);
            transform: scale(0.95, 1.05);
  }
}
@-webkit-keyframes linehover {
  0% {
    width: 100%;
  }
  50% {
    width: 0;
    inset-inline-end: 0;
  }
  100% {
    width: 100%;
    inset-inline-start: 0;
  }
}
@keyframes linehover {
  0% {
    width: 100%;
  }
  50% {
    width: 0;
    inset-inline-end: 0;
  }
  100% {
    width: 100%;
    inset-inline-start: 0;
  }
}
@-webkit-keyframes shake {
  0% {
    -webkit-transform: rotate(0);
            transform: rotate(0);
  }
  10% {
    -webkit-transform: rotate(7deg);
            transform: rotate(7deg);
  }
  20% {
    -webkit-transform: rotate(-7deg);
            transform: rotate(-7deg);
  }
  30% {
    -webkit-transform: rotate(5deg);
            transform: rotate(5deg);
  }
  40% {
    -webkit-transform: rotate(-5deg);
            transform: rotate(-5deg);
  }
  50% {
    -webkit-transform: rotate(2deg);
            transform: rotate(2deg);
  }
  60% {
    -webkit-transform: rotate(-2deg);
            transform: rotate(-2deg);
  }
  70% {
    -webkit-transform: rotate(1deg);
            transform: rotate(1deg);
  }
  80%, 90%, 100% {
    -webkit-transform: rotate(0);
            transform: rotate(0);
  }
}
@keyframes shake {
  0% {
    -webkit-transform: rotate(0);
            transform: rotate(0);
  }
  10% {
    -webkit-transform: rotate(7deg);
            transform: rotate(7deg);
  }
  20% {
    -webkit-transform: rotate(-7deg);
            transform: rotate(-7deg);
  }
  30% {
    -webkit-transform: rotate(5deg);
            transform: rotate(5deg);
  }
  40% {
    -webkit-transform: rotate(-5deg);
            transform: rotate(-5deg);
  }
  50% {
    -webkit-transform: rotate(2deg);
            transform: rotate(2deg);
  }
  60% {
    -webkit-transform: rotate(-2deg);
            transform: rotate(-2deg);
  }
  70% {
    -webkit-transform: rotate(1deg);
            transform: rotate(1deg);
  }
  80%, 90%, 100% {
    -webkit-transform: rotate(0);
            transform: rotate(0);
  }
}
/**
  Buttons CSS
*/
.mx_btn, .mx_bordered_btn {
  position: relative;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  background-color: var(--mx-color-theme-primary);
  padding: 14px 24px;
  font-size: 16px;
  line-height: 1.25;
  font-weight: var(--mx-fw-sbold);
  color: var(--mx-color-light-1);
  z-index: 1;
}
.mx_btn::before, .mx_bordered_btn::before {
  content: "";
  background-color: var(--mx-color-heading-primary);
  width: 100%;
  height: 0;
  bottom: 0;
  position: absolute;
  z-index: -1;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
}
.mx_btn .flip-text, .mx_bordered_btn .flip-text {
  overflow: hidden;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  position: relative;
}
.mx_btn .flip-text .front, .mx_bordered_btn .flip-text .front {
  display: block;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
}
.mx_btn .flip-text .back, .mx_bordered_btn .flip-text .back {
  position: absolute;
  top: 100%;
  display: block;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
}
.mx_btn:hover, .mx_btn:focus, .mx_bordered_btn:hover, .mx_bordered_btn:focus {
  background-color: var(--mx-color-theme-primary);
  color: var(--mx-color-light-1);
}
.mx_btn:hover::before, .mx_btn:focus::before, .mx_bordered_btn:hover::before, .mx_bordered_btn:focus::before {
  height: 100%;
}
.mx_btn:hover .flip-text .front, .mx_btn:focus .flip-text .front, .mx_bordered_btn:hover .flip-text .front, .mx_bordered_btn:focus .flip-text .front {
  -webkit-transform: translateY(-150%);
      -ms-transform: translateY(-150%);
          transform: translateY(-150%);
}
.mx_btn:hover .flip-text .back, .mx_btn:focus .flip-text .back, .mx_bordered_btn:hover .flip-text .back, .mx_bordered_btn:focus .flip-text .back {
  top: 50%;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
}
.mx_bordered_btn {
  background-color: transparent;
  border: 1px solid var(--mx-color-heading-primary);
  padding: 13px 23px;
  color: var(--mx-color-heading-primary);
}
.mx_bordered_btn:hover, .mx_bordered_btn:focus {
  background-color: transparent;
  border-color: var(--mx-color-heading-primary);
  color: var(--mx-color-light-1);
}
.mx_icon_btn {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  gap: 12px;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  border: 1px solid var(--mx-color-heading-primary);
  background-color: transparent;
  padding: 9px 23px 9px 9px;
  font-family: var(--);
  font-size: 16px;
  line-height: 1.25;
  font-weight: var(--mx-fw-sbold);
  color: var(--mx-color-heading-primary);
}
.mx_icon_btn .icon_btn {
  position: relative;
  background-color: var(--mx-color-heading-primary);
  color: var(--mx-color-light-1);
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
  z-index: 1;
}
.mx_icon_btn .icon_btn.hover-bg i,
.mx_icon_btn .icon_btn.hover-bg svg {
  -webkit-transform: rotate(-45deg);
      -ms-transform: rotate(-45deg);
          transform: rotate(-45deg);
  -webkit-transition: all 0.4s;
  transition: all 0.4s;
}
.mx_icon_btn .icon_btn.hover-bg::before {
  content: "";
  background-color: var(--mx-color-theme-primary);
  width: 100%;
  height: 0;
  bottom: 0;
  position: absolute;
  z-index: -1;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
}
.mx_icon_btn .flip-text {
  overflow: hidden;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  position: relative;
}
.mx_icon_btn .flip-text .front {
  display: block;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
}
.mx_icon_btn .flip-text .back {
  position: absolute;
  top: 100%;
  display: block;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
}
.mx_icon_btn:hover, .mx_icon_btn:focus {
  background-color: transparent;
  color: var(--mx-color-heading-primary);
}
.mx_icon_btn:hover .icon_btn > span i:first-child,
.mx_icon_btn:hover .icon_btn > span svg:first-child, .mx_icon_btn:focus .icon_btn > span i:first-child,
.mx_icon_btn:focus .icon_btn > span svg:first-child {
  -webkit-transform: translateX(150%);
      -ms-transform: translateX(150%);
          transform: translateX(150%);
}
.mx_icon_btn:hover .icon_btn > span i:last-child,
.mx_icon_btn:hover .icon_btn > span svg:last-child, .mx_icon_btn:focus .icon_btn > span i:last-child,
.mx_icon_btn:focus .icon_btn > span svg:last-child {
  -webkit-transform: translateX(0);
      -ms-transform: translateX(0);
          transform: translateX(0);
}
.mx_icon_btn:hover .icon_btn.scale, .mx_icon_btn:focus .icon_btn.scale {
  -webkit-transform: scale(0.9);
      -ms-transform: scale(0.9);
          transform: scale(0.9);
}
.mx_icon_btn:hover .icon_btn.hover-bg i,
.mx_icon_btn:hover .icon_btn.hover-bg svg, .mx_icon_btn:focus .icon_btn.hover-bg i,
.mx_icon_btn:focus .icon_btn.hover-bg svg {
  -webkit-transform: rotate(0);
      -ms-transform: rotate(0);
          transform: rotate(0);
}
.mx_icon_btn:hover .icon_btn.hover-bg::before, .mx_icon_btn:focus .icon_btn.hover-bg::before {
  height: 100%;
}
.mx_icon_btn:hover .flip-text .front, .mx_icon_btn:focus .flip-text .front {
  -webkit-transform: translateY(-150%);
      -ms-transform: translateY(-150%);
          transform: translateY(-150%);
}
.mx_icon_btn:hover .flip-text .back, .mx_icon_btn:focus .flip-text .back {
  top: 50%;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
}
.mx_icon_btn.text-underline-btn, .mx_icon_btn.no-border {
  border: 0;
  padding: 0;
  line-height: 1.1;
  gap: 8px;
}
.mx_icon_btn.text-underline-btn .icon_btn, .mx_icon_btn.no-border .icon_btn {
  width: 24px;
  height: 24px;
  font-size: 16px;
}
.mx_icon_btn.text-underline-btn {
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
}
.mx_icon_btn.text-underline-btn .icon_btn {
  overflow: hidden;
}
.mx_icon_btn.text-underline-btn .icon_btn > span {
  overflow: visible;
}
.mx_icon_btn.text-underline-btn .icon_btn > span i,
.mx_icon_btn.text-underline-btn .icon_btn > span svg {
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
}
.mx_icon_btn.text-underline-btn .underline-text {
  position: relative;
  z-index: 1;
}
.mx_icon_btn.text-underline-btn .underline-text::before {
  content: "";
  height: 1px;
  width: 100%;
  background-color: currentColor;
  position: absolute;
  right: 0;
  bottom: 0;
}
.mx_icon_btn.text-underline-btn:focus .icon_btn, .mx_icon_btn.text-underline-btn:hover .icon_btn {
  background-color: var(--mx-color-theme-primary);
}
.mx_icon_btn.text-underline-btn:focus .underline-text::before, .mx_icon_btn.text-underline-btn:hover .underline-text::before {
  -webkit-animation: lineHover 0.4s linear;
          animation: lineHover 0.4s linear;
}
.mx_icon_btn.text-underline-btn.light-btn {
  color: var(--mx-color-light-1);
}
.mx_icon_btn.text-underline-btn.light-btn .icon_btn {
  background-color: var(--mx-color-light-1);
  color: var(--mx-color-heading-primary);
}
.mx_icon_btn.text-underline-btn.light-btn .icon_btn > span i,
.mx_icon_btn.text-underline-btn.light-btn .icon_btn > span svg {
  color: var(--mx-color-heading-primary);
}
.mx_icon_btn.text-underline-btn.light-btn:hover .icon_btn {
  background-color: var(--mx-color-theme-primary);
}
.mx_icon_btn.text-underline-btn.light-btn:hover .icon_btn > span i {
  color: var(--mx-color-light-1);
}
.mx_icon_btn.rounded_icon {
  gap: 7px;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.mx_icon_btn.rounded_icon .icon_btn {
  border-radius: 50%;
  overflow: hidden;
}
.mx_icon_btn.rounded_icon .icon_btn.hover-bg::before {
  display: none;
}
.mx_icon_btn.rounded_icon .flip-text {
  position: relative;
}
.mx_icon_btn.rounded_icon .flip-text .back {
  display: none;
}
.mx_icon_btn.rounded_icon .flip-text::after {
  content: "";
  width: 100%;
  height: 1px;
  background-color: var(--mx-color-heading-primary);
  position: absolute;
  inset-inline-end: 0;
  bottom: 1px;
}
.mx_icon_btn.rounded_icon:hover .flip-text .front {
  -webkit-transform: none;
      -ms-transform: none;
          transform: none;
}
.mx_icon_btn.rounded_icon:hover .flip-text::after {
  -webkit-animation: linehover 0.5s linear;
          animation: linehover 0.5s linear;
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 575px) {
  .mx_icon_btn {
    padding: 7px 20px 7px 7px;
  }
}
.mx_marquee_btn {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  color: var(--mx-color-heading-primary);
  font-weight: var(--mx-fw-sbold);
}
.mx_marquee_btn .text_btn {
  --gap: 30px;
  line-height: 1.25;
  border: 1px solid var(--mx-color-heading-primary);
  padding: 17px 0;
  border-radius: 100px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: var(--gap);
  max-width: 160px;
  width: 100%;
  overflow: hidden;
}
.mx_marquee_btn .text_btn span {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
}
.mx_marquee_btn .icon_btn {
  width: 56px;
  height: 56px;
  background-color: transparent;
  border-radius: 50%;
  border: 1px solid var(--mx-color-heading-primary);
  color: var(--mx-color-heading-primary);
}
.mx_marquee_btn .icon_btn i {
  -webkit-transform: rotate(-45deg);
      -ms-transform: rotate(-45deg);
          transform: rotate(-45deg);
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
.mx_marquee_btn:hover .text_btn span {
  -webkit-animation: scroll 3s linear infinite;
          animation: scroll 3s linear infinite;
}
.mx_marquee_btn:hover .icon_btn {
  -webkit-transform: translateX(3px);
      -ms-transform: translateX(3px);
          transform: translateX(3px);
}
.mx_marquee_btn:hover .icon_btn i {
  -webkit-transform: rotate(0);
      -ms-transform: rotate(0);
          transform: rotate(0);
}
.mx_marquee_btn.light-btn {
  color: var(--mx-color-light-1);
}
.mx_marquee_btn.light-btn .text_btn {
  border-color: var(--mx-color-light-1);
}
.mx_marquee_btn.light-btn .icon_btn {
  border-color: var(--mx-color-light-1);
  color: var(--mx-color-light-1);
}
.mx_text_btn {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 4px;
  position: relative;
  z-index: 1;
  font-weight: var(--mx-fw-sbold);
  font-size: 16px;
  line-height: 1.25;
  color: var(--mx-color-heading-primary);
}
.mx_text_btn i,
.mx_text_btn svg {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  font-size: 105%;
  line-height: 1;
  -webkit-transform: rotate(-45deg);
      -ms-transform: rotate(-45deg);
          transform: rotate(-45deg);
  -webkit-transition: all 0.4s ease-in-out 0s;
  transition: all 0.4s ease-in-out 0s;
}
.mx_text_btn::before {
  content: "";
  height: 1px;
  width: 96%;
  background-color: currentColor;
  position: absolute;
  right: 4px;
  bottom: 2px;
  -webkit-transition: -webkit-transform 0.3s ease-in-out;
  transition: -webkit-transform 0.3s ease-in-out;
  transition: transform 0.3s ease-in-out;
  transition: transform 0.3s ease-in-out, -webkit-transform 0.3s ease-in-out;
}
.mx_text_btn:focus, .mx_text_btn:hover {
  color: var(--mx-color-heading-primary);
}
.mx_text_btn:focus i,
.mx_text_btn:focus svg, .mx_text_btn:hover i,
.mx_text_btn:hover svg {
  -webkit-transform: rotate(0);
      -ms-transform: rotate(0);
          transform: rotate(0);
}
.mx_text_btn:focus::before, .mx_text_btn:hover::before {
  -webkit-animation: lineHover 0.5s linear;
          animation: lineHover 0.5s linear;
}
.mx_swiper_nav {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 48px;
  height: 48px;
  font-size: 20px;
  line-height: 1;
  background-color: var(--mx-color-heading-primary);
  color: var(--mx-color-light-1);
  -webkit-transition: all 0.4s;
  transition: all 0.4s;
}
.mx_swiper_nav > span {
  position: relative;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  overflow: hidden;
}
.mx_swiper_nav > span i,
.mx_swiper_nav > span svg {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  line-height: 1;
  position: relative;
  top: 0;
  color: var(--mx-color-light-1);
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.mx_swiper_nav > span i:last-child,
.mx_swiper_nav > span svg:last-child {
  position: absolute;
  -webkit-transform: translateX(-150%);
      -ms-transform: translateX(-150%);
          transform: translateX(-150%);
  color: var(--mx-color-light-1);
}
.mx_swiper_nav.prev > span i:last-child,
.mx_swiper_nav.prev > span svg:last-child {
  -webkit-transform: translateX(150%);
      -ms-transform: translateX(150%);
          transform: translateX(150%);
}
.mx_swiper_nav:hover {
  background-color: var(--mx-color-theme-primary);
}
.mx_swiper_nav:hover > span i:first-child,
.mx_swiper_nav:hover > span svg:first-child {
  -webkit-transform: translateX(150%);
      -ms-transform: translateX(150%);
          transform: translateX(150%);
}
.mx_swiper_nav:hover > span i:last-child,
.mx_swiper_nav:hover > span svg:last-child {
  -webkit-transform: translateX(0);
      -ms-transform: translateX(0);
          transform: translateX(0);
}
.mx_swiper_nav:hover.prev > span i:first-child,
.mx_swiper_nav:hover.prev > span svg:first-child {
  -webkit-transform: translateX(-150%);
      -ms-transform: translateX(-150%);
          transform: translateX(-150%);
}
@media (max-width: 575px) {
  .mx_swiper_nav {
    width: 40px;
    height: 40px;
    font-size: 16px;
  }
}
.mx_btn_2 {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 10px 10px 10px 30px;
  gap: 12px;
  border-radius: 50px;
  font-size: var(--mx-fs-btn);
  background-color: var(--mx-color-theme-bg-dark);
  color: var(--mx-color-light-1);
  position: relative;
  white-space: nowrap;
  font-weight: var(--mx-fw-sbold);
  line-height: 1;
  overflow: hidden;
  z-index: 0;
}
.mx_btn_2 .mx_btn_icon {
  will-change: transform;
  width: 44px;
  height: 44px;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  line-height: 1;
  background-color: var(--mx-color-theme-primary);
  color: var(--mx-color-light-1);
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
  border-radius: 50%;
}
.mx_btn_2 .mx_btn_icon:first-child {
  -webkit-transform: scale3d(0, 0, 1);
          transform: scale3d(0, 0, 1);
  -webkit-margin-end: -50px;
          margin-inline-end: -50px;
  opacity: 0;
}
.mx_btn_2 .mx_btn_icon:last-child {
  -webkit-transform: scale3d(1, 1, 1);
          transform: scale3d(1, 1, 1);
  -webkit-margin-start: 0;
          margin-inline-start: 0;
  opacity: 1;
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 575px) {
  .mx_btn_2 {
    padding: 7px 7px 7px 20px;
  }
  .mx_btn_2 .mx_btn_icon {
    width: 40px;
    height: 40px;
  }
}
.mx_btn_2:hover {
  color: var(--mx-color-light-1);
  padding: 10px 30px 10px 10px;
}
.mx_btn_2:hover .mx_btn_icon:first-child {
  -webkit-transform: scale3d(1, 1, 1);
          transform: scale3d(1, 1, 1);
  -webkit-margin-end: 0;
          margin-inline-end: 0;
  opacity: 1;
}
.mx_btn_2:hover .mx_btn_icon:last-child {
  -webkit-transform: scale3d(0, 0, 1);
          transform: scale3d(0, 0, 1);
  -webkit-margin-start: -50px;
          margin-inline-start: -50px;
  opacity: 0;
}

.icon_btn {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 32px;
  height: 32px;
  font-size: 16px;
  line-height: 1;
  background-color: var(--mx-color-theme-primary);
  color: var(--mx-color-light-1);
  -webkit-transition: all 0.4s;
  transition: all 0.4s;
}
.icon_btn > span {
  position: relative;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  overflow: hidden;
  -webkit-transform: rotate(-45deg);
      -ms-transform: rotate(-45deg);
          transform: rotate(-45deg);
}
.icon_btn > span i,
.icon_btn > span svg {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  line-height: 1;
  position: relative;
  top: 0;
  color: var(--mx-color-light-1);
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.icon_btn > span i:last-child,
.icon_btn > span svg:last-child {
  position: absolute;
  -webkit-transform: translateX(-150%);
      -ms-transform: translateX(-150%);
          transform: translateX(-150%);
  color: var(--mx-color-light-1);
}
.icon_btn_rounded {
  border-radius: 100%;
  width: 56px;
  height: 56px;
}
.icon_btn_rounded:hover > span i:first-child,
.icon_btn_rounded:hover > span svg:first-child {
  -webkit-transform: translateX(150%);
      -ms-transform: translateX(150%);
          transform: translateX(150%);
}
.icon_btn_rounded:hover > span i:last-child,
.icon_btn_rounded:hover > span svg:last-child {
  -webkit-transform: translateX(0);
      -ms-transform: translateX(0);
          transform: translateX(0);
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 575px) {
  .icon_btn {
    width: 38px;
    height: 38px;
  }
}

.flip-text-wrap .flip-text {
  overflow: hidden;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  position: relative;
}
.flip-text-wrap .flip-text .front {
  display: block;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
}
.flip-text-wrap .flip-text .back {
  position: absolute;
  top: 100%;
  display: block;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
}

.reveal-hover-text .reveal-line {
  overflow: hidden;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  position: relative;
}
.reveal-hover-text .reveal-line .front {
  display: block;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
}
.reveal-hover-text .reveal-line .back {
  position: absolute;
  top: 100%;
  display: block;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
}
.process_top:hover .reveal-line .front {
  -webkit-transform: translateY(-150%);
      -ms-transform: translateY(-150%);
          transform: translateY(-150%);
}
.process_top:hover .reveal-line .back {
  top: 50%;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
}
/**----------------------------------------
START: Section Heading CSS
----------------------------------------*/
.section_heading .sec_title {
  margin-top: 16px;
}
.section_heading_center {
  text-align: center;
}
.section_heading_inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.sec_subtitle {
  display: block;
  font-weight: var(--mx-fw-medium);
  font-size: 15px;
  line-height: 1.7;
  text-transform: uppercase;
  color: var(--mx-color-theme-primary);
  margin: 0;
}
.sec_subtitle > span {
  color: var(--mx-color-heading-primary);
}
.sec_title {
  text-transform: uppercase;
  margin: 0;
}

.section-divider {
  border-top: 1px solid var(--mx-color-border-1);
}

.h1HeroAnimation .hero_title,
.h1HeroAnimation .h1_hero_shape_animation,
.h1HeroAnimation .bottom_left_content,
.h1HeroAnimation .h1_hero_video,
.h1HeroAnimation .mx_scroll_down {
  opacity: 0;
}
.h1HeroAnimation.activeAnimation .hero_title,
.h1HeroAnimation.activeAnimation .h1_hero_shape_animation,
.h1HeroAnimation.activeAnimation .bottom_left_content,
.h1HeroAnimation.activeAnimation .h1_hero_video,
.h1HeroAnimation.activeAnimation .mx_scroll_down {
  opacity: 1;
}

.content__img {
  max-width: 280px;
  width: 100%;
  aspect-ratio: 280/320;
  position: absolute;
  top: 200px;
  left: 0;
  opacity: 0;
  overflow: hidden;
  will-change: transform, opacity;
  pointer-events: none;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px), only screen and (min-width: 992px) and (max-width: 1199px) {
  .content__img {
    max-width: 200px;
  }
}
.content__img-inner {
  background-position: 50% 50%;
  width: 100%;
  height: 100%;
  background-size: cover;
  position: absolute;
  top: -10px;
  left: -10px;
}

.h3-hero-section {
  background-color: var(--mx-color-theme-bg-dark-2);
}
@media only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px), (max-width: 575px) {
  .h3-hero-section {
    position: relative;
    width: inherit;
  }
}
.h3-hero-section .mx-bg-image-absolute {
  background-color: var(--mx-color-theme-bg-dark-4);
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .h3-hero-section .mx-bg-image-absolute {
    background-position: 92%;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .h3-hero-section .mx-bg-image-absolute {
    background-position: 33%;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 575px) {
  .h3-hero-section .mx-bg-image-absolute {
    background-position: 48.5%;
  }
}
.h3-hero-section .mx-fade {
  opacity: 0;
}
.h3-hero-section .hero_title {
  font-size: 128px;
  letter-spacing: -0.03em;
  line-height: 0.953;
  text-transform: uppercase;
  color: var(--mx-color-light-1);
  -webkit-margin-start: -8px;
          margin-inline-start: -8px;
}
@media only screen and (min-width: 1400px) and (max-width: 1599px) {
  .h3-hero-section .hero_title {
    font-size: 100px;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .h3-hero-section .hero_title {
    font-size: 90px;
    -webkit-margin-start: -4px;
            margin-inline-start: -4px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px) {
  .h3-hero-section .hero_title {
    font-size: 70px;
    -webkit-margin-start: -4px;
            margin-inline-start: -4px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px), (max-width: 575px) {
  .h3-hero-section .hero_title {
    margin-bottom: 0;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 575px) {
  .h3-hero-section .hero_title {
    font-size: 50px;
    -webkit-margin-start: -2px;
            margin-inline-start: -2px;
  }
}
.h3-hero-section .category-wrap {
  max-width: 267px;
}
@media only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px), (max-width: 575px) {
  .h3-hero-section .category-wrap {
    margin-top: 100px;
  }
}
.h3-hero-section .category {
  color: var(--mx-color-light-1);
  border-color: var(--mx-color-light-1);
  font-weight: var(--mx-fw-regular);
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.h3-hero-section .category:has(i) {
  width: 32px;
  height: 32px;
  padding: 0;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.h3-hero-section .category:has(i):hover i {
  -webkit-animation-play-state: paused;
          animation-play-state: paused;
}
.h3-hero-section .category .flip-text {
  overflow: hidden;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  position: relative;
}
.h3-hero-section .category .flip-text .front {
  display: block;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
}
.h3-hero-section .category .flip-text .back {
  position: absolute;
  top: 100%;
  display: block;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
}
.h3-hero-section .category:hover {
  background-color: transparent;
  border-color: var(--mx-color-light-1);
}
.h3-hero-section .category:hover .flip-text .front {
  -webkit-transform: translateY(-150%);
      -ms-transform: translateY(-150%);
          transform: translateY(-150%);
}
.h3-hero-section .category:hover .flip-text .back {
  top: 50%;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
}
.h3-hero-section .desc {
  max-width: 344px;
  margin-top: 11px;
  font-size: 20px;
  letter-spacing: 0.02em;
  color: var(--mx-color-light-1);
  margin-bottom: 22px;
}
@media only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px), (max-width: 575px) {
  .h3-hero-section .desc {
    margin-top: 0;
  }
}
.h3-hero-section .mx_icon_btn.rounded_icon {
  color: var(--mx-color-light-1);
}
.h3-hero-section .mx_icon_btn.rounded_icon .icon_btn {
  background-color: var(--mx-color-light-1);
  color: var(--mx-color-heading-primary);
}
.h3-hero-section .mx_icon_btn.rounded_icon .flip-text::after {
  background-color: var(--mx-color-light-1);
}
.h3-hero-section .trusted_features {
  max-width: 347px;
  -webkit-margin-start: auto;
          margin-inline-start: auto;
  text-align: end;
  margin-top: 50px;
}
@media only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px), (max-width: 575px) {
  .h3-hero-section .trusted_features {
    max-width: 347px;
    margin-top: 100px;
  }
}
.h3-hero-section .mx_users_list {
  margin-bottom: 22px;
}
.h3-hero-section .mx_users_list li {
  width: 64px;
  height: 64px;
  padding: 2px;
}
.h3-hero-section .trusted_text {
  color: var(--mx-color-light-1);
  letter-spacing: -0.02em;
}
.h3-hero-section .trusted_text span {
  color: var(--mx-color-light-1);
}
@media (max-width: 575px) {
  .h3-hero-section .trusted_text {
    font-size: 24px;
  }
}
.h3-hero-section .hero_content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  min-height: 100vh;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.h3-hero-section .hero_content_default {
  padding-top: 141px;
  padding-bottom: 60px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.h3-hero-section .hero_content_left {
  width: 64.2%;
}
.h3-hero-section .hero_content_right {
  width: 35.8%;
  backdrop-filter: blur(40px);
  background: var(--mx-color-theme-bg-3);
  margin-right: -15px;
  overflow: hidden;
}
.h3-hero-section .hero_content_right.container-space {
  -webkit-padding-start: 60px;
          padding-inline-start: 60px;
  -webkit-padding-end: 60px;
          padding-inline-end: 60px;
}
@media only screen and (min-width: 1400px) and (max-width: 1599px) {
  .h3-hero-section .hero_content_right.container-space {
    -webkit-padding-start: 40px;
            padding-inline-start: 40px;
    -webkit-padding-end: 40px;
            padding-inline-end: 40px;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px), only screen and (min-width: 992px) and (max-width: 1199px) {
  .h3-hero-section .hero_content_right.container-space {
    -webkit-padding-start: 30px;
            padding-inline-start: 30px;
    -webkit-padding-end: 30px;
            padding-inline-end: 30px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .h3-hero-section .hero_content_right.container-space {
    -webkit-padding-start: 15px;
            padding-inline-start: 15px;
    -webkit-padding-end: 15px;
            padding-inline-end: 15px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .h3-hero-section .hero_content_right.container-space {
    -webkit-padding-start: 5px;
            padding-inline-start: 5px;
    -webkit-padding-end: 5px;
            padding-inline-end: 5px;
  }
}
@media (max-width: 575px) {
  .h3-hero-section .hero_content_right.container-space {
    -webkit-padding-start: 0;
            padding-inline-start: 0;
    -webkit-padding-end: 0;
            padding-inline-end: 0;
  }
}
@media only screen and (min-width: 1400px) and (max-width: 1599px), only screen and (min-width: 1200px) and (max-width: 1399px) {
  .h3-hero-section .hero_content_left {
    width: 60%;
  }
  .h3-hero-section .hero_content_right {
    width: 40%;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .h3-hero-section .hero_content_left {
    width: 55%;
  }
  .h3-hero-section .hero_content_right {
    width: 45%;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px), (max-width: 575px) {
  .h3-hero-section .hero_content {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .h3-hero-section .hero_content_left {
    width: 100%;
    padding-top: 170px;
    padding-bottom: 16px;
  }
  .h3-hero-section .hero_content_right {
    width: 100%;
    background: transparent;
    margin-right: 0;
    backdrop-filter: inherit;
    padding-top: 0;
    padding-bottom: 30px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 575px) {
  .h3-hero-section .hero_content_left {
    padding-top: 150px;
  }
  .h3-hero-section .hero_content_right {
    width: 100%;
    background: transparent;
    margin-right: 0;
    backdrop-filter: inherit;
    padding-top: 0;
    padding-bottom: 26px;
    -webkit-padding-start: 0;
            padding-inline-start: 0;
    -webkit-padding-end: 0;
            padding-inline-end: 0;
  }
}

/* !END: Hero CSS */


/**----------------------------------------
START: Feature CSS
----------------------------------------*/
.h1-features-section {
  position: relative;
  background-color: var(--mx-color-theme-bg);
  z-index: 2;
  padding: 20px;
}

.h1_features_wrap {
  display: grid;
  gap: 30px;
  grid-template-columns: 1fr 1fr 1fr 1fr;
}
@media only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px) {
  .h1_features_wrap {
    grid-template-columns: 1fr 1fr;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 575px) {
  .h1_features_wrap {
    grid-template-columns: auto;
  }
}

/**----------------------------------------
START: Process CSS
----------------------------------------*/
.h1-process-section {
  position: relative;
  background-color: var(--mx-color-theme-bg);
  z-index: 2;
  padding-top: 70px;
  padding-bottom: 70px;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .h1-process-section {
    padding-top: 80px;
    padding-bottom: 80px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .h1-process-section {
    padding-top: 90px;
    padding-bottom: 90px;
  }
  .h1-process-section .mobile_button {
    margin-top: 50px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 575px) {
  .h1-process-section {
    padding-top: 70px;
    padding-bottom: 70px;
  }
  .h1-process-section .mobile_button {
    margin-top: 40px;
  }
}
.h1_process_wrapper .section_heading .sec_title {
  max-width: 655px;
  width: 100%;
}
.h1_process_wrapper .section_heading_inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 30px;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media only screen and (min-width: 1400px) and (max-width: 1599px) {
  .h1_process_wrapper .section_heading .sec_title {
    max-width: 590px;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .h1_process_wrapper .section_heading .sec_title {
    max-width: 550px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .h1_process_wrapper .section_heading .sec_title {
    max-width: 520px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .h1_process_wrapper .section_heading {
    margin-bottom: 50px;
  }
  .h1_process_wrapper .section_heading .sec_title {
    max-width: 510px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 575px) {
  .h1_process_wrapper .section_heading {
    margin-bottom: 40px;
  }
  .h1_process_wrapper .section_heading .sec_title {
    max-width: 400px;
  }
}
.h1_process_wrap {
  position: relative;
  min-height: 100vh;
  padding-top: 20px;
  padding-bottom: 20px;
  display: grid;
  -ms-flex-line-pack: center;
      align-content: center;
  gap: 30px;
  grid-template-columns: 1fr 35.9% 580px;
  z-index: 1;
}
.h1_process_wrap .process_section_left {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: 30px;
}
.h1_process_wrap .h1_process_images {
  grid-column: 2;
}
.h1_process_wrap .h1_process_items {
  grid-column: 3;
  position: relative;
  z-index: 1;
  overflow: hidden;
}
.h1_process_no {
  font-weight: var(--mx-fw-sbold);
  font-size: 120px;
  line-height: 1;
  height: 120px;
  letter-spacing: -0.02em;
  text-transform: uppercase;
  color: var(--mx-color-heading-primary);
  z-index: 1;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  position: relative;
  overflow: hidden;
  margin-bottom: -20px;
}
.h1_process_images {
  position: relative;
  height: 85vh;
  width: 100%;
  overflow: hidden;
}
.h1_process_images .mx_process_img {
  width: 100%;
  height: 100%;
}
.h1_process_images .mx_process_img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
@media only screen and (min-width: 1400px) and (max-width: 1599px) {
  .h1_process_wrap {
    grid-template-columns: 1fr 520px 500px;
  }
  .h1_process_no {
    font-size: 100px;
    height: 100px;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .h1_process_wrap {
    grid-template-columns: 1fr 359px 450px;
  }
  .h1_process_no {
    font-size: 80px;
    height: 80px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .h1_process_wrap {
    grid-template-columns: 1fr 1fr;
  }
  .h1_process_wrap .h1_process_images {
    grid-column: 1/2;
  }
  .h1_process_wrap .h1_process_items {
    grid-column: 2/3;
  }
  .h1_process_no {
    display: none;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px), (max-width: 575px) {
  .h1_process_wrap {
    grid-template-columns: unset;
    min-height: auto;
    gap: 0;
    padding-top: 0;
    padding-bottom: 0;
  }
  .h1_process_wrap .h1_process_no,
  .h1_process_wrap .h1_process_images {
    display: none;
    grid-column: unset;
  }
  .h1_process_wrap .h1_process_items {
    grid-column: unset;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 30px;
  }
}

.mx_process_item {
  position: relative;
  background-color: var(--mx-color-theme-bg-2);
  z-index: 1;
  overflow: hidden;
}
.mx_process_item .bg_image {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  z-index: -1;
  -o-object-fit: cover;
     object-fit: cover;
}
.mx_process_item.video {
  background-color: #bc001e;
}
.mx_process_item.video .bg_image {
  mix-blend-mode: multiply;
  -webkit-transform: scale(1.1);
      -ms-transform: scale(1.1);
          transform: scale(1.1);
}
.mx_process_item.video .process_title, .mx_process_item.video .process_desc {
  color: var(--mx-color-light-1);
}
.mx_process_item.video .process_bottom {
  border-color: var(--mx-color-border-3);
}
.mx_process_item.video .step_count {
  color: var(--mx-color-light-1);
}
.mx_process_item.video .step_tag {
  color: var(--mx-color-light-2);
}
.mx_process_item.video .step_tag {
  border-color: var(--mx-color-border-3);
}
.mx_process_item.video .sec_subtitle span {
  color: var(--mx-color-light-1);
}
.mx_process_item .process_title {
  font-weight: var(--mx-fw-sbold);
  line-height: 1.05;
  letter-spacing: -0.02em;
  text-transform: uppercase;
  color: var(--mx-color-heading-primary);
  margin: 0;
}
.mx_process_item .process_desc {
  margin-top: 15px;
  margin-bottom: 0;
  font-size: 18px;
  line-height: 1.55;
  letter-spacing: 0.01em;
}
.mx_process_item .process_top {
  padding: 60px 40px 70px 40px;
}
.mx_process_item .process_bottom {
  border-top: 1px solid var(--mx-color-border-2);
  padding: 60px 40px 60px 40px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 10px;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.mx_process_item .process_bottom .step_tags {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: start;
  gap: 6px;
  padding-top: 15px;
}
.mx_process_item .process_bottom .step_tags .sec_subtitle {
  margin-bottom: 16px;
}
.mx_process_item .step_count {
  display: inline-flexv;
  font-weight: var(--mx-fw-sbold);
  line-height: 1;
  letter-spacing: -0.02em;
}
.mx_process_item .step_tag {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  font-weight: var(--mx-fw-regular);
  font-size: 16px;
  line-height: 1;
  letter-spacing: 0.01em;
  background-color: transparent;
  color: var(--mx-color-text-body);
  border: 1px solid var(--mx-color-border-2);
  border-radius: 50px;
  padding: 3px 9px;
}
.mx_process_item .step_taga:hover {
  border-color: var(--mx-color-theme-primary);
  background-color: var(--mx-color-theme-primary);
  color: var(--mx-color-common-white);
}
.mx_process_item_2 {
  background-color: var(--mx-color-theme-bg-2);
}
.mx_process_item_2 .process_wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-bottom: 30px;
}
.mx_process_item_2 .process_no {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  font-weight: var(--mx-fw-sbold);
  font-size: 60px;
  line-height: 1;
  letter-spacing: -0.02em;
  text-transform: uppercase;
  color: var(--mx-color-heading-primary);
  z-index: 1;
}
.mx_process_item_2 .process_img {
  max-width: 240px;
  width: 100%;
}
.mx_process_item_2 .process_title {
  font-weight: var(--mx-fw-sbold);
  line-height: 40px;
  letter-spacing: -0.015em;
  color: var(--mx-color-heading-primary);
  margin: 0;
}
.mx_process_item_2 .process_desc {
  margin-top: 23px;
  margin-bottom: 0;
  font-size: 18px;
  line-height: 1.55;
  letter-spacing: 0.01em;
}
.mx_process_item_2 .process_top {
  padding: 20px 30px;
}
.mx_process_item_2 .process_bottom {
  border-top: 1px solid var(--mx-color-border-2);
  padding: 33px 40px 30px 40px;
}
.mx_process_item_2 .process_bottom .step_tags {
  width: 100%;
}
.mx_process_item_2 .process_bottom .step_tags .sec_subtitle {
  margin-bottom: 22px;
}
.mx_process_item_2 .process_bottom .step_tags .tags {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 10px;
  padding-bottom: 20px;
}
.tags:before {
 display: none
}
.mx_process_item_2 .process_bottom .step_tags .tags .category {
  background-color: var(--mx-color-theme-bg);
  border-color: var(--mx-color-theme-bg);
  color: var(--mx-color-heading-primary);
  cursor: pointer;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .mx_process_item_2 .process_desc {
    margin-top: 15px;
  }
  .mx_process_item_2 .process_top {
    padding: 20px 20px;
  }
  .mx_process_item_2 .process_bottom {
    padding: 30px 20px;
  }
  .mx_process_item_2 .process_bottom .step_tags .sec_subtitle {
    margin-bottom: 15px;
  }
}
@media (max-width: 575px) {
  .mx_process_item_2 .process_wrap {
    margin-bottom: 20px;
  }
  .mx_process_item_2 .process_no {
    font-size: 40px;
  }
  .mx_process_item_2 .process_img {
    max-width: 180px;
  }
  .mx_process_item_2 .process_desc {
    margin-top: 15px;
  }
  .mx_process_item_2 .process_top {
    padding: 20px 20px;
  }
  .mx_process_item_2 .process_bottom {
    padding: 30px 20px;
  }
  .mx_process_item_2 .process_bottom .step_tags .sec_subtitle {
    margin-bottom: 15px;
  }
}

/* !END: Process CSS */
/**----------------------------------------
START: Projects CSS
----------------------------------------*/
.h1-project-section {
  border-top: 1px solid var(--mx-color-border-1);
  padding-top: 115px;
  padding-bottom: 130px;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .h1-project-section {
    padding-top: 100px;
    padding-bottom: 100px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .h1-project-section {
    padding-top: 90px;
    padding-bottom: 90px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 575px) {
  .h1-project-section {
    padding-top: 70px;
    padding-bottom: 70px;
  }
}
.h1_projects_wrapper .section_heading {
  margin-bottom: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: start;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: 30px;
}
.h1_projects_wrapper .section_heading .sec_title {
  max-width: 1200px;
  width: 100%;
  font-size: 120px;
  line-height: 1;
  margin-top: 0;
}
.h1_projects_wrapper .section_heading .sec_title .space {
  display: inline-block;
  padding-left: 155px;
}
@media only screen and (min-width: 1400px) and (max-width: 1599px) {
  .h1_projects_wrapper .section_heading .sec_title {
    max-width: 1000px;
    font-size: 100px;
  }
  .h1_projects_wrapper .section_heading .sec_title .space {
    padding-left: 128px;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .h1_projects_wrapper .section_heading .sec_title {
    max-width: 800px;
    font-size: 80px;
  }
  .h1_projects_wrapper .section_heading .sec_title .space {
    padding-left: 100px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .h1_projects_wrapper .section_heading .sec_title {
    max-width: 600px;
    font-size: 60px;
  }
  .h1_projects_wrapper .section_heading .sec_title .space {
    padding-left: 75px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .h1_projects_wrapper .section_heading {
    margin-bottom: 50px;
    gap: 0;
  }
  .h1_projects_wrapper .section_heading .sec_title {
    max-width: 550px;
    font-size: 52px;
    margin-top: 16px;
    line-height: 1.11;
  }
  .h1_projects_wrapper .section_heading .sec_title .space {
    padding-left: 0;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 575px) {
  .h1_projects_wrapper .section_heading {
    margin-bottom: 40px;
    gap: 0;
  }
  .h1_projects_wrapper .section_heading .sec_title {
    max-width: 450px;
    font-size: 42px;
    margin-top: 16px;
    line-height: 1.11;
  }
  .h1_projects_wrapper .section_heading .sec_title .space {
    padding-left: 0;
  }
}
@media (max-width: 575px) {
  .h1_projects_wrapper .section_heading .sec_title {
    max-width: 450px;
    font-size: 36px;
  }
}
.h1_projects_wrap {
  padding-top: 40px;
  padding-bottom: 40px;
  min-height: 100vh;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.h1_projects_wrap .projects-progress {
  position: relative;
  width: 100%;
  height: 1px;
  background-color: var(--mx-color-border-1);
  margin-top: 60px;
}
.h1_projects_wrap .projects-progress > span {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  -webkit-transform: scaleX(0);
      -ms-transform: scaleX(0);
          transform: scaleX(0);
  -webkit-transform-origin: left;
      -ms-transform-origin: left;
          transform-origin: left;
  will-change: transform;
  background-color: var(--mx-color-heading-primary);
}
.h1_projects_wrap .projects_more_button {
  margin-top: 30px;
}
@media only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px), (max-width: 575px) {
  .h1_projects_wrap {
    min-height: auto;
    padding-top: 0;
    padding-bottom: 0;
  }
  .h1_projects_wrap .projects-progress {
    display: none;
  }
  .h1_projects_wrap .projects_more_button {
    margin-top: 50px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 575px) {
  .h1_projects_wrap .projects_more_button {
    margin-top: 40px;
  }
}
.h1_projects_items {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
  gap: 30px;
}
.h1_projects_items .mx_project_item {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 calc(50% - 15px);
          flex: 0 0 calc(50% - 15px);
  max-width: calc(50% - 15px);
  width: 100%;
}
.h1_projects_items .mx_project_item .project_year {
  margin-top: 5px;
}
@media only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px), (max-width: 575px) {
  .h1_projects_items {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .h1_projects_items .mx_project_item {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 100%;
            flex: 0 0 100%;
    max-width: 100%;
  }
}

.mx_project_item {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: start;
}
.mx_project_item .project_image .category {
  position: absolute;
  left: 30px;
  top: 30px;
  z-index: 2;
  font-weight: var(--mx-fw-bold);
  color: var(--mx-color-light-1);
  background-color: var(--mx-color-theme-bg-dark);
  border-color: var(--mx-color-theme-bg-dark);
}
.mx_project_item .project_image .author {
  position: absolute;
  right: 30px;
  top: 30px;
  z-index: 2;
  font-weight: var(--mx-fw-bold);
  color: var(--mx-color-light-1);
  background-color: var(--mx-color-theme-bg-dark);
  border-color: var(--mx-color-theme-bg-dark);
}
.mx_project_item .project_content {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: start;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-top: 21px;
}
.mx_project_item .project_content .project_title {
  max-width: calc(100% - 70px);
  width: 100%;
  margin: 0;
  letter-spacing: -0.015em;
}
.mx_project_item .project_content .project_title a {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.mx_project_item .project_content .project_title a:hover .reveal-line .front, .counter_label:hover .reveal-line .front {
  -webkit-transform: translateY(-150%);
      -ms-transform: translateY(-150%);
          transform: translateY(-150%);
}
.mx_project_item .project_content .project_title a:hover .reveal-line .back, .counter_label:hover .reveal-line .back {
  top: 50%;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
}
.mx_project_item .project_content .project_title .text {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-transform: translateX(-24px);
      -ms-transform: translateX(-24px);
          transform: translateX(-24px);
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
.mx_project_item .project_content .project_title .icon_btn {
  width: 24px;
  height: 24px;
  font-size: 16px;
  position: relative;
  top: -1px;
  background-color: var(--mx-color-theme-primary);
  -webkit-transform: scale(0);
      -ms-transform: scale(0);
          transform: scale(0);
  -webkit-transform-origin: center;
      -ms-transform-origin: center;
          transform-origin: center;
}
.mx_project_item .project_content .project_title a:hover {
  color: var(--mx-color-text-body-2);
}
.mx_project_item .project_content .project_title a:hover .text {
  -webkit-transform: translateX(8px);
      -ms-transform: translateX(8px);
          transform: translateX(8px);
}
.mx_project_item .project_content .project_title a:hover .icon_btn {
  -webkit-transform: scale(1);
      -ms-transform: scale(1);
          transform: scale(1);
}
@media only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px), (max-width: 575px) {
  .mx_project_item .project_content {
    margin-top: 15px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 575px) {
  .mx_project_item .project_image .category {
    left: 20px;
    top: 20px;
  }
}

.mx--hover-item .mx--hover-img {
  overflow: hidden;
  position: relative;
}
.mx--hover-item .mx--hover-img canvas {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}

.project_image {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  width: 100%;
  position: relative;
  z-index: 1;
}
.project_image img {
  width: 100%;
  height: auto;
}
.project_image a:not(.category) {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  width: 100%;
}

.category, .author {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: 16px;
  line-height: 1;
  letter-spacing: 0.01em;
  font-weight: var(--mx-fw-medium);
  color: var(--mx-color-heading-primary);
  background-color: transparent;
  border: 1px solid var(--mx-color-theme-bg-dark);
  border-radius: 50px;
  padding: 5px 10px;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
.category i,
.category svg {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  line-height: 1;
  font-size: 12px;
}
.category svg {
  max-width: 12px;
  height: auto;
}
.category:hover, .author:hover {
  background-color: var(--mx-color-theme-bg-dark-2);
  border-color: var(--mx-color-theme-bg-dark-2);
  color: var(--mx-color-light-1);
}
.category:hover .flip-text .front, .author:hover .flip-text .front {
  -webkit-transform: translateY(-150%);
      -ms-transform: translateY(-150%);
          transform: translateY(-150%);
}
.category:hover .flip-text .back, .author:hover .flip-text .back {
  top: 50%;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
}
.category.fill, .author.fill {
  background-color: var(--mx-color-theme-bg-dark-2);
  border-color: var(--mx-color-theme-bg-dark-2);
}

.category-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

.project_year {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  gap: 5px;
  font-weight: var(--mx-fw-bold);
  font-size: 17px;
  line-height: 1.5;
  color: var(--mx-color-theme-primary);
}
.project_year > span {
  color: var(--mx-color-heading-primary);
}

.h2-project-section {
  position: relative;
  z-index: 1;
  padding-top: 180px;
  padding-bottom: 140px;
}
.h2-project-section .blocks-shape {
  top: -1px;
  right: -1px;
  background-color: transparent;
  -webkit-transform: scaleY(-1);
      -ms-transform: scaleY(-1);
          transform: scaleY(-1);
  color: var(--mx-color-theme-bg);
}
.h2-project-section .blocks-shape svg {
  width: 100%;
}
.h2-project-section .blocks-shape svg path {
  -webkit-animation-play-state: paused;
          animation-play-state: paused;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .h2-project-section .blocks-shape {
    max-width: 350px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .h2-project-section .blocks-shape {
    max-width: 300px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .h2-project-section .blocks-shape {
    max-width: 210px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 575px) {
  .h2-project-section .blocks-shape {
    max-width: 160px;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px), only screen and (min-width: 992px) and (max-width: 1199px) {
  .h2-project-section {
    padding-top: 140px;
    padding-bottom: 100px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .h2-project-section {
    padding-top: 90px;
    padding-bottom: 90px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 575px) {
  .h2-project-section {
    padding-top: 70px;
    padding-bottom: 70px;
  }
}
.h2_projects_header {
  padding: 0 60px;
  margin-bottom: 105px;
}
.h2_projects_header .section_heading .sec_subtitle span {
  color: var(--mx-color-light-1);
}
@media only screen and (min-width: 1400px) and (max-width: 1599px) {
  .h2_projects_header {
    padding: 0 40px;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px), only screen and (min-width: 992px) and (max-width: 1199px) {
  .h2_projects_header {
    padding: 0 30px;
    margin-bottom: 80px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .h2_projects_header {
    padding: 0 20px;
    margin-bottom: 50px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 575px) {
  .h2_projects_header {
    padding: 0 15px;
    margin-bottom: 40px;
  }
}
.h2_projects_item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: 30px;
  border-top: 1px solid var(--mx-color-border-3);
  padding: 30px 60px;
  position: relative;
  z-index: 1;
  overflow: hidden;
  background-color: var(--mx-color-theme-bg-dark);
}
.h2_projects_item:last-child {
  border-bottom: 1px solid var(--mx-color-border-3);
}
.h2_projects_item.active .project_sl {
  color: var(--mx-color-theme-primary);
}
.h2_projects_item.active .project_title {
  font-size: 48px;
  opacity: 1;
}
@media only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px) {
  .h2_projects_item.active .project_title {
    font-size: 40px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 575px) {
  .h2_projects_item.active .project_title {
    font-size: 34px;
  }
}
.h2_projects_item.active .project_btn_wrap,
.h2_projects_item.active .project_content,
.h2_projects_item.active .project_year {
  opacity: 1;
  height: auto;
}
.h2_projects_item.active .project_image {
  height: 380px;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .h2_projects_item.active .project_image {
    height: 300px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .h2_projects_item.active .project_image {
    height: 240px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .h2_projects_item.active .project_image {
    height: 380px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .h2_projects_item.active .project_image {
    height: 350px;
  }
}
@media (max-width: 575px) {
  .h2_projects_item.active .project_image {
    height: 260px;
  }
}
.h2_projects_item.active .project_image:hover img {
  -webkit-transform: scale(1.1);
      -ms-transform: scale(1.1);
          transform: scale(1.1);
}
.h2_projects_item .project_sl {
  color: var(--mx-color-light-3);
}
.h2_projects_item .project_title_wrap {
  max-width: 320px;
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px), only screen and (min-width: 768px) and (max-width: 991px) {
  .h2_projects_item .project_title_wrap {
    max-width: 290px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .h2_projects_item .project_title_wrap {
    max-width: 235px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 575px) {
  .h2_projects_item .project_title_wrap {
    max-width: 100%;
  }
}
.h2_projects_item .project_title {
  color: var(--mx-color-light-1);
  font-size: 40px;
  opacity: 0.2;
  margin-bottom: 25px;
}
.h2_projects_item .project_title .char-wrap > span:nth-child(2) {
  -webkit-transform-origin: 50% 80%;
      -ms-transform-origin: 50% 80%;
          transform-origin: 50% 80%;
}
@media only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px) {
  .h2_projects_item .project_title {
    font-size: 36px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 575px) {
  .h2_projects_item .project_title {
    font-size: 34px;
    opacity: 1;
  }
}
.h2_projects_item .project_year {
  font-size: 17px;
  font-weight: var(--mx-fw-medium);
  opacity: 0;
  -webkit-transition: all 0.4s;
  transition: all 0.4s;
}
.h2_projects_item .project_year > span {
  color: var(--mx-color-light-1);
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 575px) {
  .h2_projects_item .project_year {
    opacity: 1;
  }
}
.h2_projects_item .project_content {
  max-width: 350px;
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  opacity: 0.3;
  -webkit-transition: opacity 0.4s ease;
  transition: opacity 0.4s ease;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .h2_projects_item .project_content {
    max-width: 330px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .h2_projects_item .project_content {
    max-width: 280px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 575px) {
  .h2_projects_item .project_content {
    max-width: 100%;
    opacity: 1;
  }
}
.h2_projects_item .project_desc {
  color: var(--mx-color-light-2);
  letter-spacing: 0.01em;
  margin-bottom: 25px;
}
.h2_projects_item .project_btn_wrap {
  opacity: 0;
  height: 0;
  -webkit-transition: all 0.4s;
  transition: all 0.4s;
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 575px) {
  .h2_projects_item .project_btn_wrap {
    opacity: 1;
  }
}
.h2_projects_item .mx_marquee_btn .text_btn {
  max-width: 148px;
}
.h2_projects_item .project_image {
  max-width: 524px;
  height: 195px;
  -webkit-transition: height 0.4s ease-in-out;
  transition: height 0.4s ease-in-out;
}
.h2_projects_item .project_image > a {
  overflow: hidden;
}
.h2_projects_item .project_image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: top;
     object-position: top;
  -webkit-transition: -webkit-transform 0.8s cubic-bezier(0.785, 0.135, 0.15, 0.86);
  transition: -webkit-transform 0.8s cubic-bezier(0.785, 0.135, 0.15, 0.86);
  transition: transform 0.8s cubic-bezier(0.785, 0.135, 0.15, 0.86);
  transition: transform 0.8s cubic-bezier(0.785, 0.135, 0.15, 0.86), -webkit-transform 0.8s cubic-bezier(0.785, 0.135, 0.15, 0.86);
}
@media only screen and (min-width: 1400px) and (max-width: 1599px) {
  .h2_projects_item .project_image {
    max-width: 450px;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .h2_projects_item .project_image {
    max-width: 380px;
    height: 170px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .h2_projects_item .project_image {
    max-width: 300px;
    height: 150px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px), (max-width: 575px) {
  .h2_projects_item .project_image {
    max-width: 100%;
  }
}
@media only screen and (min-width: 1400px) and (max-width: 1599px) {
  .h2_projects_item {
    padding: 30px 40px;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px), only screen and (min-width: 992px) and (max-width: 1199px) {
  .h2_projects_item {
    padding: 30px 30px;
    gap: 15px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .h2_projects_item {
    padding: 30px 20px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 575px) {
  .h2_projects_item {
    padding: 20px 15px;
  }
}

.h3-project-section {
  padding-bottom: 150px;
}
.h3-project-section .section_heading {
  padding: 40px 0 38px;
}
@media only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px), (max-width: 575px) {
  .h3-project-section .section_heading {
    padding: 0;
    padding-bottom: 38px;
  }
  .h3-project-section .section_heading_inner {
    gap: 5px 20px;
  }
  .h3-project-section .section_heading .mx_icon_btn {
    margin-top: 10px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .h3-project-section {
    padding-bottom: 120px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .h3-project-section {
    padding-top: 90px;
    padding-bottom: 90px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 575px) {
  .h3-project-section {
    padding-top: 70px;
    padding-bottom: 70px;
  }
}
.h3_projects_link {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
.h3_projects_items {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 30px;
}
.h3_projects_items .mx_project_item {
  width: calc(50% - 15px);
}
.h3_projects_items .mx_project_item-inner {
  position: relative;
  z-index: 0;
  overflow: hidden;
  height: 100%;
}
.h3_projects_items .mx_project_item-inner,
.h3_projects_items .mx_project_item-inner .project_image,
.h3_projects_items .mx_project_item-inner a,
.h3_projects_items .mx_project_item-inner img {
  height: 100%;
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.h3_projects_items .mx_project_item:first-child {
  width: 100%;
  aspect-ratio: 1800/851;
}
.h3_projects_items .mx_project_item:not(:first-child) {
  aspect-ratio: 885/658;
}
@media only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px), (max-width: 575px) {
  .h3_projects_items .mx_project_item {
    width: 100%;
  }
  .h3_projects_items .mx_project_item:first-child, .h3_projects_items .mx_project_item:not(:first-child) {
    aspect-ratio: 1800/1110;
  }
}
.h3_projects_items .mx_project_item .project_content {
  position: absolute;
  inset-inline-start: 30px;
  bottom: 30px;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  z-index: 1;
  overflow: hidden;
  opacity: 0;
  -webkit-transition: all 0.3s ease-in-out 0s;
  transition: all 0.3s ease-in-out 0s;
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 575px) {
  .h3_projects_items .mx_project_item .project_content {
    inset-inline-start: 20px;
    bottom: 20px;
  }
}
.h3_projects_items .mx_project_item .project_title {
  padding: 6px 15px 0;
  background-color: var(--mx-color-light-1);
  display: inline-block;
  max-width: inherit;
  width: auto;
  -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
          transform: translateX(-50%);
  -webkit-transition: all 0.3s ease-in-out 0s;
  transition: all 0.3s ease-in-out 0s;
}
.h3_projects_items .mx_project_item .project_year {
  font-size: 15px;
  font-weight: var(--mx-fw-medium);
  line-height: 1;
  padding: 14px 15px 16px;
  background-color: var(--mx-color-light-1);
  display: inline-block;
  -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
          transform: translateX(-50%);
  -webkit-transition: all 0.3s ease-in-out 0.1s;
  transition: all 0.3s ease-in-out 0.1s;
}
.h3_projects_items .mx_project_item:hover .project_content {
  opacity: 1;
  -webkit-transform: translateY(0);
      -ms-transform: translateY(0);
          transform: translateY(0);
}
.h3_projects_items .mx_project_item:hover .project_title {
  -webkit-transform: translateX(0);
      -ms-transform: translateX(0);
          transform: translateX(0);
}
.h3_projects_items .mx_project_item:hover .project_year {
  -webkit-transform: translateX(0);
      -ms-transform: translateX(0);
          transform: translateX(0);
}

.project-filter-section {
  padding-top: 90px;
  padding-bottom: 100px;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .project-filter-section {
    padding-bottom: 70px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .project-filter-section {
    padding-top: 60px;
    padding-bottom: 60px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 575px) {
  .project-filter-section {
    padding-top: 40px;
    padding-bottom: 30px;
  }
}

.mx-w-25 {
  width: 25%;
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 575px) {
  .mx-w-25 {
    width: 100%;
  }
}

.mx-w-34 {
  width: 34%;
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 575px) {
  .mx-w-34 {
    width: 100%;
  }
}

.mx-w-50 {
  width: 50%;
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 575px) {
  .mx-w-50 {
    width: 100%;
  }
}

.mx-w-66 {
  width: 66%;
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 575px) {
  .mx-w-66 {
    width: 100%;
  }
}

.mx-w-100 {
  width: 100%;
}

/* !END: Projects CSS */

/**----------------------------------------
START: glitch CSS
----------------------------------------*/


.mx-glitch {
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  position: absolute;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  overflow: hidden;
}
.mx-glitch .mx-glitch-item {
  background-repeat: no-repeat;
  background-position: 50% 50%;
  background-size: cover;
  height: 100%;
  width: 100%;
  top: 0;
  left: 0;
  position: absolute;
}
.mx-glitch .mx-glitch-item:nth-child(n+2) {
  opacity: 0;
  -webkit-animation-delay: 2s;
          animation-delay: 2s;
  -webkit-animation-timing-function: linear;
          animation-timing-function: linear;
  -webkit-animation-iteration-count: infinite;
          animation-iteration-count: infinite;
}
.mx-glitch .mx-glitch-item:nth-child(2) {
  background-color: transparent;
  background-blend-mode: none;
  -webkit-animation-name: mx-glitch-2;
          animation-name: mx-glitch-2;
}
.mx-glitch .mx-glitch-item:nth-child(3) {
  background-color: transparent;
  background-blend-mode: none;
  -webkit-animation-name: mx-glitch-3;
          animation-name: mx-glitch-3;
  display: none;
}
.mx-glitch .mx-glitch-item:nth-child(4) {
  background-color: #af4949;
  background-blend-mode: overlay;
  -webkit-animation-name: mx-glitch-flash;
          animation-name: mx-glitch-flash;
}
.mx-glitch-hover {
  position: relative;
  overflow: hidden;
}
.mx-glitch-anim {
  position: relative;
  overflow: hidden;
}
.mx-glitch-anim .mx-glitch .mx-glitch-item:nth-child(n+2) {
  -webkit-animation-duration: 4s;
          animation-duration: 4s;
}

@-webkit-keyframes mx-glitch-flash {
  0%, 5% {
    opacity: 0.2;
  }
  5.5%, 100% {
    opacity: 0;
  }
}

@keyframes mx-glitch-flash {
  0%, 5% {
    opacity: 0.2;
  }
  5.5%, 100% {
    opacity: 0;
  }
}
@-webkit-keyframes mx-glitch-2 {
  0% {
    opacity: 1;
    -webkit-transform: translate3d(10px, 0, 0);
            transform: translate3d(10px, 0, 0);
    clip-path: polygon(0 2%, 100% 2%, 100% 5%, 0 5%);
  }
  2% {
    clip-path: polygon(0 15%, 100% 15%, 100% 15%, 0 15%);
  }
  4% {
    clip-path: polygon(0 10%, 100% 10%, 100% 20%, 0 20%);
  }
  6% {
    clip-path: polygon(0 1%, 100% 1%, 100% 2%, 0 2%);
  }
  8% {
    clip-path: polygon(0 33%, 100% 33%, 100% 33%, 0 33%);
  }
  10% {
    clip-path: polygon(0 44%, 100% 44%, 100% 44%, 0 44%);
  }
  12% {
    clip-path: polygon(0 50%, 100% 50%, 100% 20%, 0 20%);
  }
  14% {
    clip-path: polygon(0 70%, 100% 70%, 100% 70%, 0 70%);
  }
  16% {
    clip-path: polygon(0 80%, 100% 80%, 100% 80%, 0 80%);
  }
  18% {
    clip-path: polygon(0 50%, 100% 50%, 100% 55%, 0 55%);
  }
  20% {
    clip-path: polygon(0 70%, 100% 70%, 100% 80%, 0 80%);
  }
  21.9% {
    opacity: 1;
    -webkit-transform: translate3d(10px, 0, 0);
            transform: translate3d(10px, 0, 0);
  }
  22%, 100% {
    opacity: 0;
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
    clip-path: polygon(0 0, 0 0, 0 0, 0 0);
  }
}
@keyframes mx-glitch-2 {
  0% {
    opacity: 1;
    -webkit-transform: translate3d(10px, 0, 0);
            transform: translate3d(10px, 0, 0);
    clip-path: polygon(0 2%, 100% 2%, 100% 5%, 0 5%);
  }
  2% {
    clip-path: polygon(0 15%, 100% 15%, 100% 15%, 0 15%);
  }
  4% {
    clip-path: polygon(0 10%, 100% 10%, 100% 20%, 0 20%);
  }
  6% {
    clip-path: polygon(0 1%, 100% 1%, 100% 2%, 0 2%);
  }
  8% {
    clip-path: polygon(0 33%, 100% 33%, 100% 33%, 0 33%);
  }
  10% {
    clip-path: polygon(0 44%, 100% 44%, 100% 44%, 0 44%);
  }
  12% {
    clip-path: polygon(0 50%, 100% 50%, 100% 20%, 0 20%);
  }
  14% {
    clip-path: polygon(0 70%, 100% 70%, 100% 70%, 0 70%);
  }
  16% {
    clip-path: polygon(0 80%, 100% 80%, 100% 80%, 0 80%);
  }
  18% {
    clip-path: polygon(0 50%, 100% 50%, 100% 55%, 0 55%);
  }
  20% {
    clip-path: polygon(0 70%, 100% 70%, 100% 80%, 0 80%);
  }
  21.9% {
    opacity: 1;
    -webkit-transform: translate3d(10px, 0, 0);
            transform: translate3d(10px, 0, 0);
  }
  22%, 100% {
    opacity: 0;
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
    clip-path: polygon(0 0, 0 0, 0 0, 0 0);
  }
}
@-webkit-keyframes mx-glitch-3 {
  0% {
    opacity: 1;
    -webkit-transform: translate3d(0, -5px, 0) scale3d(-1, -1, 1);
            transform: translate3d(0, -5px, 0) scale3d(-1, -1, 1);
    clip-path: polygon(0 1%, 100% 1%, 100% 3%, 0 3%);
  }
  1.5% {
    clip-path: polygon(0 10%, 100% 10%, 100% 9%, 0 9%);
  }
  2% {
    clip-path: polygon(0 5%, 100% 5%, 100% 6%, 0 6%);
  }
  2.5% {
    clip-path: polygon(0 20%, 100% 20%, 100% 20%, 0 20%);
  }
  3% {
    clip-path: polygon(0 10%, 100% 10%, 100% 10%, 0 10%);
  }
  5% {
    clip-path: polygon(0 30%, 100% 30%, 100% 25%, 0 25%);
  }
  5.5% {
    clip-path: polygon(0 15%, 100% 15%, 100% 16%, 0 16%);
  }
  7% {
    clip-path: polygon(0 40%, 100% 40%, 100% 39%, 0 39%);
  }
  8% {
    clip-path: polygon(0 20%, 100% 20%, 100% 21%, 0 21%);
  }
  9% {
    clip-path: polygon(0 60%, 100% 60%, 100% 55%, 0 55%);
  }
  10.5% {
    clip-path: polygon(0 30%, 100% 30%, 100% 31%, 0 31%);
  }
  11% {
    clip-path: polygon(0 70%, 100% 70%, 100% 69%, 0 69%);
  }
  13% {
    clip-path: polygon(0 40%, 100% 40%, 100% 41%, 0 41%);
  }
  14% {
    clip-path: polygon(0 80%, 100% 80%, 100% 75%, 0 75%);
  }
  14.5% {
    clip-path: polygon(0 50%, 100% 50%, 100% 51%, 0 51%);
  }
  15% {
    clip-path: polygon(0 90%, 100% 90%, 100% 90%, 0 90%);
  }
  16% {
    clip-path: polygon(0 60%, 100% 60%, 100% 60%, 0 60%);
  }
  18% {
    clip-path: polygon(0 100%, 100% 100%, 100% 99%, 0 99%);
  }
  20% {
    clip-path: polygon(0 70%, 100% 70%, 100% 71%, 0 71%);
  }
  21.9% {
    opacity: 1;
    -webkit-transform: translate3d(0, -5px, 0) scale3d(-1, -1, 1);
            transform: translate3d(0, -5px, 0) scale3d(-1, -1, 1);
  }
  22%, 100% {
    opacity: 0;
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
    clip-path: polygon(0 0, 0 0, 0 0, 0 0);
  }
}
@keyframes mx-glitch-3 {
  0% {
    opacity: 1;
    -webkit-transform: translate3d(0, -5px, 0) scale3d(-1, -1, 1);
            transform: translate3d(0, -5px, 0) scale3d(-1, -1, 1);
    clip-path: polygon(0 1%, 100% 1%, 100% 3%, 0 3%);
  }
  1.5% {
    clip-path: polygon(0 10%, 100% 10%, 100% 9%, 0 9%);
  }
  2% {
    clip-path: polygon(0 5%, 100% 5%, 100% 6%, 0 6%);
  }
  2.5% {
    clip-path: polygon(0 20%, 100% 20%, 100% 20%, 0 20%);
  }
  3% {
    clip-path: polygon(0 10%, 100% 10%, 100% 10%, 0 10%);
  }
  5% {
    clip-path: polygon(0 30%, 100% 30%, 100% 25%, 0 25%);
  }
  5.5% {
    clip-path: polygon(0 15%, 100% 15%, 100% 16%, 0 16%);
  }
  7% {
    clip-path: polygon(0 40%, 100% 40%, 100% 39%, 0 39%);
  }
  8% {
    clip-path: polygon(0 20%, 100% 20%, 100% 21%, 0 21%);
  }
  9% {
    clip-path: polygon(0 60%, 100% 60%, 100% 55%, 0 55%);
  }
  10.5% {
    clip-path: polygon(0 30%, 100% 30%, 100% 31%, 0 31%);
  }
  11% {
    clip-path: polygon(0 70%, 100% 70%, 100% 69%, 0 69%);
  }
  13% {
    clip-path: polygon(0 40%, 100% 40%, 100% 41%, 0 41%);
  }
  14% {
    clip-path: polygon(0 80%, 100% 80%, 100% 75%, 0 75%);
  }
  14.5% {
    clip-path: polygon(0 50%, 100% 50%, 100% 51%, 0 51%);
  }
  15% {
    clip-path: polygon(0 90%, 100% 90%, 100% 90%, 0 90%);
  }
  16% {
    clip-path: polygon(0 60%, 100% 60%, 100% 60%, 0 60%);
  }
  18% {
    clip-path: polygon(0 100%, 100% 100%, 100% 99%, 0 99%);
  }
  20% {
    clip-path: polygon(0 70%, 100% 70%, 100% 71%, 0 71%);
  }
  21.9% {
    opacity: 1;
    -webkit-transform: translate3d(0, -5px, 0) scale3d(-1, -1, 1);
            transform: translate3d(0, -5px, 0) scale3d(-1, -1, 1);
  }
  22%, 100% {
    opacity: 0;
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
    clip-path: polygon(0 0, 0 0, 0 0, 0 0);
  }
}
.process_wrap:hover .process_img .mx-glitch-item:nth-child(n+2), .h1_process_images:hover .mx_process_img .mx-glitch-item:nth-child(n+2) {
  -webkit-animation-duration: 1.5s;
          animation-duration: 1.5s;
}
/* !END: glitch CSS */

/**----------------------------------------
START: Window Shape CSS
----------------------------------------*/
.window-shape-wrapper {
  height: 100vh;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  overflow: hidden;
}
.window-shape-img {
  display: block;
  z-index: 2;
  position: relative;
}
@media only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px), (max-width: 575px) {
  .window-shape-img {
    display: none;
  }
}
.window-shape-img img {
  -webkit-transform: scale(0) rotate(0);
      -ms-transform: scale(0) rotate(0);
          transform: scale(0) rotate(0);
  z-index: -1;
  position: relative;
}
@media only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px), (max-width: 575px) {
  .window-shape-wrapper {
    height: inherit;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    opacity: 1 !important;
  }
  .window-shape-img img {
    display: none;
  }
}
.window-shape-screen {
  position: absolute;
  inset: 0;
}
.window-shape-screen-1 {
  z-index: 0;
}
.window-shape-screen-2 {
  z-index: 3;
  pointer-events: none;
}
@media only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px), (max-width: 575px) {
  .window-shape-screen {
    position: relative;
  }
}

/* !END: Window Shape CSS */

/**----------------------------------------
START: Skew showcase CSS
----------------------------------------*/
.skew-showcase-section {
  position: relative;
}
@media only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px), (max-width: 575px) {
  .skew-showcase-section {
    padding-top: 100px;
  }
}

.skew-project-area {
  -webkit-perspective: 7000px;
          perspective: 7000px;
  -webkit-transform-style: preserve-3d;
          transform-style: preserve-3d;
  -webkit-transition: -webkit-transform 0.6s ease-out;
  transition: -webkit-transform 0.6s ease-out;
  transition: transform 0.6s ease-out;
  transition: transform 0.6s ease-out, -webkit-transform 0.6s ease-out;
}
.skew-project-area-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  height: 100vh;
}
@media only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px), (max-width: 575px) {
  .skew-project-area-wrapper {
    height: auto;
  }
}

.skew-project-wrap {
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
      -ms-flex-flow: column-reverse;
          flex-flow: column-reverse;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-perspective: none;
          perspective: none;
  -webkit-transform-style: preserve-3d;
          transform-style: preserve-3d;
  -webkit-transform: rotateX(70deg) rotateY(0) rotate(40deg);
          transform: rotateX(70deg) rotateY(0) rotate(40deg);
  -webkit-transition: -webkit-transform 0.6s ease-out;
  transition: -webkit-transform 0.6s ease-out;
  transition: transform 0.6s ease-out;
  transition: transform 0.6s ease-out, -webkit-transform 0.6s ease-out;
  will-change: transform;
}
.skew-project-wrap .skew-project-item {
  height: 28vh;
  margin-top: -8vh;
  margin-bottom: -8vh;
  -webkit-transform-style: preserve-3d;
          transform-style: preserve-3d;
  -webkit-transform: rotateX(-90deg) rotateY(0) rotate(0);
          transform: rotateX(-90deg) rotateY(0) rotate(0);
  aspect-ratio: 16/9;
  position: relative;
}
.skew-project-wrap .skew-project-item a {
  display: inline-block;
  width: 100%;
  height: 100%;
  -webkit-transform: translate3d(0px, 0%, 0px) scale3d(1, 1, 1);
          transform: translate3d(0px, 0%, 0px) scale3d(1, 1, 1);
  -webkit-transform-style: preserve-3d;
          transform-style: preserve-3d;
  will-change: transform;
}
.skew-project-wrap .skew-project-item img {
  width: 100%;
  height: 100%;
}
.skew-project-wrap .skew-project-item .title {
  font-size: 28px;
  position: relative;
  top: -115%;
  margin: 0;
  opacity: 0;
  -webkit-transition: all 0.4s ease-in-out;
  transition: all 0.4s ease-in-out;
  pointer-events: none;
}
@media only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px), (max-width: 575px) {
  .skew-project-wrap .skew-project-item .title {
    font-size: 26px;
    top: 0;
    opacity: 1;
    margin-top: 10px;
    pointer-events: auto;
  }
}
@media (max-width: 575px) {
  .skew-project-wrap .skew-project-item .title {
    font-size: 24px;
  }
}
.skew-project-wrap .skew-project-item:hover a {
  -webkit-transform: translate3d(0px, -50%, 0px) scale3d(1.1, 1.1, 1);
          transform: translate3d(0px, -50%, 0px) scale3d(1.1, 1.1, 1);
  -webkit-transform-style: preserve-3d;
          transform-style: preserve-3d;
}
@media only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px), (max-width: 575px) {
  .skew-project-wrap .skew-project-item:hover a {
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
  }
}
.skew-project-wrap .skew-project-item:hover .title {
  opacity: 1;
  top: -165%;
}
@media only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px), (max-width: 575px) {
  .skew-project-wrap .skew-project-item:hover .title {
    top: 0;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px), (max-width: 575px) {
  .skew-project-wrap .skew-project-item {
    margin: 15px 0;
    height: auto;
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
    aspect-ratio: auto;
  }
  .skew-project-wrap .skew-project-item img {
    -o-object-fit: cover;
       object-fit: cover;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px), (max-width: 575px) {
  .skew-project-wrap {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-flow: column;
            flex-flow: column;
    height: auto;
    -webkit-transform: none !important;
        -ms-transform: none !important;
            transform: none !important;
  }
}

.skew-footer {
  position: absolute;
  width: 100%;
  bottom: 0;
  padding-top: 20px;
  padding-bottom: 50px;
}
.skew-footer .mx_copyright {
  color: var(--mx-color-text-body);
}
.skew-footer .mx_copyright a {
  color: var(--mx-color-heading-primary);
}
.skew-footer .mx_copyright a:hover {
  color: var(--mx-color-theme-primary);
}
@media only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px), (max-width: 575px) {
  .skew-footer {
    position: relative;
    padding-bottom: 20px;
  }
}

/* !END: Skew showcase CSS */
/**----------------------------------------
START: Gallery showcase CSS
----------------------------------------*/
:root {
  --gallery-gap-x: 80px;
  --gallery-gap-y: 80px;
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  :root {
    --gallery-gap-x: 50px;
    --gallery-gap-y: 50px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 575px) {
  :root {
    --gallery-gap-x: 30px;
    --gallery-gap-y: 30px;
  }
}

.gallery-showcase-section {
  height: 100vh;
  overflow: hidden;
  position: relative;
}
.gallery-showcase-section::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(12, 12, 12, 0.12);
  z-index: 1;
  pointer-events: none;
}

.gallery-showcase-wrapper {
  --gap: 80px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -ms-flex-line-pack: center;
      align-content: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: var(--gap);
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate3d(-50%, -50%, 0);
          transform: translate3d(-50%, -50%, 0);
  will-change: transform;
  width: 100%;
  height: 100%;
  -webkit-mask-image: -webkit-gradient(linear, left bottom, left top, from(rgba(0, 0, 0, 0)), color-stop(20%, rgb(0, 0, 0)), color-stop(80%, rgb(0, 0, 0)), to(rgba(0, 0, 0, 0)));
  -webkit-mask-image: linear-gradient(0deg, rgba(0, 0, 0, 0) 0%, rgb(0, 0, 0) 20%, rgb(0, 0, 0) 80%, rgba(0, 0, 0, 0) 100%);
          mask-image: -webkit-gradient(linear, left bottom, left top, from(rgba(0, 0, 0, 0)), color-stop(20%, rgb(0, 0, 0)), color-stop(80%, rgb(0, 0, 0)), to(rgba(0, 0, 0, 0)));
          mask-image: linear-gradient(0deg, rgba(0, 0, 0, 0) 0%, rgb(0, 0, 0) 20%, rgb(0, 0, 0) 80%, rgba(0, 0, 0, 0) 100%);
  cursor: -webkit-grab;
  cursor: grab;
}
.gallery-showcase-wrapper ::-moz-selection {
  background: transparent;
  color: transparent;
  text-shadow: none;
}
.gallery-showcase-wrapper ::selection {
  background: transparent;
  color: transparent;
  text-shadow: none;
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .gallery-showcase-wrapper {
    --gap: 50px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 575px) {
  .gallery-showcase-wrapper {
    --gap: 30px;
  }
}

.gallery-showcase-wrapper:active {
  cursor: -webkit-grabbing;
  cursor: grabbing;
}

.gallery-project-wrap {
  display: grid;
  grid-template-columns: repeat(8, 1fr);
  gap: var(--gap);
  will-change: transform;
}
.gallery-project-wrap .gallery-project-item {
  width: 312px;
  height: 332px;
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  -webkit-filter: grayscale(1);
          filter: grayscale(1);
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
  -webkit-transform-origin: center;
      -ms-transform-origin: center;
          transform-origin: center;
}
.gallery-project-wrap .gallery-project-item img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  pointer-events: none;
}
.gallery-project-wrap .gallery-project-item:hover {
  -webkit-filter: none;
          filter: none;
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .gallery-project-wrap .gallery-project-item {
    width: 210px;
    height: 220px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 575px) {
  .gallery-project-wrap .gallery-project-item {
    width: 150px;
    height: 160px;
  }
}
.gallery-project-wrap .gallery-project-item .title {
  display: none;
}

.showcase-title {
  font-size: 72px;
  color: var(--mx-color-light-1) !important;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  z-index: 3;
  pointer-events: none;
  text-transform: uppercase;
  margin: 0;
}
.showcase-title sup {
  top: -1.3em;
  font-size: 0.4em;
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .showcase-title {
    font-size: 60px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 575px) {
  .showcase-title {
    font-size: 50px;
  }
}

/* !END: Gallery showcase CSS */
/**----------------------------------------
START: Perspective showcase CSS
----------------------------------------*/

.perspective-showcase-section {
  position: relative;
  background-color: var(--mx-color-theme-bg);
}
@media only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px), (max-width: 575px) {
  .perspective-showcase-section {
    padding-top: 120px;
  }
}
.perspective-showcase-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: 30px;
  height: 100vh;
  overflow: hidden;
}
@media only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px), (max-width: 575px) {
  .perspective-showcase-wrap {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    height: auto;
  }
}
.perspective-showcase-no-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  height: 100vh;
  max-width: 250px;
  width: 100%;
}
@media only screen and (min-width: 1400px) and (max-width: 1599px) {
  .perspective-showcase-no-wrap {
    max-width: 200px;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .perspective-showcase-no-wrap {
    max-width: 150px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px), (max-width: 575px) {
  .perspective-showcase-no-wrap {
    height: auto;
  }
}
.perspective-showcase-no {
  font-size: 28px;
  line-height: 1;
  font-weight: var(--mx-fw-sbold);
  color: var(--mx-color-heading-primary);
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: end;
  gap: 10px;
  max-width: 210px;
  width: 100%;
}
.perspective-showcase-no .total-item-no {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
}
.perspective-showcase-no .current-item-no {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  font-size: 128px;
  line-height: 0.7;
  letter-spacing: -0.03em;
  font-weight: var(--mx-fw-regular);
}
@media only screen and (min-width: 1400px) and (max-width: 1599px) {
  .perspective-showcase-no .current-item-no {
    font-size: 110px;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .perspective-showcase-no .current-item-no {
    font-size: 80px;
  }
}
.perspective-showcase-subtitle {
  width: 15%;
  height: 100vh;
  position: relative;
}
.perspective-showcase-subtitle:after {
  content: "";
  height: 100vh;
  aspect-ratio: 64/1000;
  position: absolute;
  top: 0;
  left: calc(100% + 30px);
  z-index: 10;
  background-image: url("../images/perspective-shape.svg");
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  -webkit-transform: translateX(-50%) scaleX(-1);
      -ms-transform: translateX(-50%) scaleX(-1);
          transform: translateX(-50%) scaleX(-1);
}
@media only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px), (max-width: 575px) {
  .perspective-showcase-subtitle:after {
    display: none;
  }
}
.perspective-showcase-subtitle .sec_subtitle {
  position: absolute;
  top: 50%;
  right: 10px;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
  opacity: 0;
}
.perspective-showcase-subtitle .sec_subtitle.active {
  opacity: 1;
}
@media only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px), (max-width: 575px) {
  .perspective-showcase-subtitle {
    height: auto;
  }
}
.perspective-showcase-year {
  width: 15%;
  height: 100vh;
  position: relative;
}
.perspective-showcase-year .sec_subtitle {
  position: absolute;
  top: 50%;
  left: 10px;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
  opacity: 0;
}
.perspective-showcase-year .sec_subtitle.active {
  opacity: 1;
}
.perspective-showcase-year:after {
  content: "";
  height: 100vh;
  aspect-ratio: 64/1000;
  position: absolute;
  top: 0;
  right: calc(100% + 30px);
  z-index: 10;
  background-image: url("../images/perspective-shape.svg");
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  -webkit-transform: translateX(50%);
      -ms-transform: translateX(50%);
          transform: translateX(50%);
}
@media only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px), (max-width: 575px) {
  .perspective-showcase-year:after {
    display: none;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .perspective-showcase-year {
    width: 13%;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px), (max-width: 575px) {
  .perspective-showcase-year {
    height: auto;
  }
}
.perspective-showcase-images {
  position: relative;
  height: 460px;
  will-change: transform;
}
@media only screen and (min-width: 1400px) and (max-width: 1599px) {
  .perspective-showcase-images {
    height: 380px;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .perspective-showcase-images {
    height: 330px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px), (max-width: 575px) {
  .perspective-showcase-images {
    height: auto;
  }
}
.perspective-showcase-item .perspective-showcase-img {
  overflow: hidden;
  opacity: 0.1;
  -webkit-transition: opacity 0.4s ease-in-out, -webkit-transform 0.4s ease-in-out;
  transition: opacity 0.4s ease-in-out, -webkit-transform 0.4s ease-in-out;
  transition: opacity 0.4s ease-in-out, transform 0.4s ease-in-out;
  transition: opacity 0.4s ease-in-out, transform 0.4s ease-in-out, -webkit-transform 0.4s ease-in-out;
  -webkit-transform-style: preserve-3d;
          transform-style: preserve-3d;
}
.perspective-showcase-item .perspective-showcase-img:not(:last-child) {
  margin-bottom: 30px;
}
.perspective-showcase-item .perspective-showcase-img a {
  pointer-events: none;
}
@media only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px), (max-width: 575px) {
  .perspective-showcase-item .perspective-showcase-img a {
    pointer-events: all;
  }
}
.perspective-showcase-item .perspective-showcase-img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
@media only screen and (min-width: 1400px) {
  .perspective-showcase-item .perspective-showcase-img {
    min-width: 900px;
  }
}
@media only screen and (min-width: 1400px) and (max-width: 1599px) {
  .perspective-showcase-item .perspective-showcase-img {
    width: 500px;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .perspective-showcase-item .perspective-showcase-img {
    width: 460px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px), (max-width: 575px) {
  .perspective-showcase-item .perspective-showcase-img {
    opacity: 1;
    width: 100%;
    height: auto;
    aspect-ratio: 600/380;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 575px) {
  .perspective-showcase-item .perspective-showcase-img {
    aspect-ratio: 620/460;
  }
}
.perspective-showcase-item .title {
  color: var(--mx-color-heading-primary);
  font-size: 24px;
  line-height: 1;
  letter-spacing: -0.02em;
  text-transform: uppercase;
  margin-bottom: 10px;
}
@media (max-width: 575px) {
  .perspective-showcase-item .title {
    font-size: 22px;
  }
}
.perspective-showcase-item:not(:last-child) {
  margin-bottom: 30px;
}
.perspective-showcase-item.active .perspective-showcase-img {
  opacity: 1;
  z-index: 2;
}
.perspective-showcase-item.active .perspective-showcase-img a {
  pointer-events: all;
}
@media only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px), (max-width: 575px) {
  .perspective-showcase-item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-perspective: none;
            perspective: none;
    -webkit-transform-style: inherit;
            transform-style: inherit;
  }
  .perspective-showcase-item.active .perspective-showcase-img {
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
  }
  .perspective-showcase-item.active + .perspective-showcase-item .perspective-showcase-img {
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
  }
  .perspective-showcase-item:has(+ .active) .perspective-showcase-img {
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
  }
}
.perspective-showcase-title-wrap {
  max-width: 270px;
  width: 100%;
  height: 100vh;
  position: relative;
  overflow: hidden;
  z-index: 2;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: end;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  padding-top: 135px;
  padding-bottom: 50px;
}
.perspective-showcase-title-wrap .perspective-title-wrap {
  -webkit-margin-start: auto;
          margin-inline-start: auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: end;
  position: relative;
  width: 100%;
}
.perspective-showcase-title-wrap .perspective-title {
  color: var(--mx-color-heading-primary);
  font-size: 24px;
  line-height: 1;
  letter-spacing: -0.02em;
  text-transform: uppercase;
  opacity: 0.2;
  margin-bottom: 10px;
  -webkit-transition: all 0.4s;
  transition: all 0.4s;
  width: 100%;
}
.perspective-showcase-title-wrap .perspective-title a {
  pointer-events: none;
}
@media only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px), (max-width: 575px) {
  .perspective-showcase-title-wrap .perspective-title a {
    pointer-events: all;
  }
}
.perspective-showcase-title-wrap .perspective-title.active {
  opacity: 1;
}
.perspective-showcase-title-wrap .perspective-title.active a {
  pointer-events: all;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .perspective-showcase-title-wrap .perspective-title {
    font-size: 22px;
  }
}
@media only screen and (min-width: 1400px) and (max-width: 1599px) {
  .perspective-showcase-title-wrap {
    max-width: 218px;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .perspective-showcase-title-wrap {
    max-width: 190px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px), (max-width: 575px) {
  .perspective-showcase-title-wrap {
    height: auto;
  }
}

.perspective-footer {
  position: absolute;
  width: 100%;
  bottom: 0;
  padding-top: 20px;
  padding-bottom: 50px;
}
.perspective-footer .mx_copyright {
  color: var(--mx-color-text-body);
}
.perspective-footer .mx_copyright a {
  color: var(--mx-color-heading-primary);
}
.perspective-footer .mx_copyright a:hover {
  color: var(--mx-color-theme-primary);
}
@media only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px), (max-width: 575px) {
  .perspective-footer {
    position: relative;
    padding-top: 50px;
    padding-bottom: 30px;
  }
}








/**----------------------------------------
START: Purpose CSS
----------------------------------------*/
.purpose {
  margin-top: -1px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .purpose {
    padding-top: 90px;
    padding-bottom: 90px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px), (max-width: 575px) {
  .purpose {
    padding-top: 70px;
    padding-bottom: 70px;
  }
}
.purpose-wrapper {
  overflow: hidden;
}
.purpose .sec_subtitle,
.purpose .sec_title,
.purpose .purpose-cta,
.purpose .purpose-video video,
.purpose .purpose-video-title,
.purpose .mx-progress-item {
  opacity: 0;
}
@media only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px), (max-width: 575px) {
  .purpose .sec_subtitle,
  .purpose .sec_title,
  .purpose .purpose-cta,
  .purpose .purpose-video video,
  .purpose .purpose-video-title,
  .purpose .mx-progress-item {
    opacity: 1;
  }
}
.purpose .section_heading {
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  min-height: 74.7vh;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .purpose .section_heading {
    min-height: 60.7vh;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .purpose .section_heading {
    min-height: 60.7vh;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px), (max-width: 575px) {
  .purpose .section_heading {
    min-height: auto;
  }
}
@media only screen and (min-width: 1400px) and (max-width: 1599px), only screen and (min-width: 1200px) and (max-width: 1399px) {
  .purpose .section_heading .sec_title {
    font-size: 50px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .purpose .section_heading .sec_title {
    font-size: 44px;
  }
}
.purpose .section_heading .mx_btn_2 {
  margin-top: 23px;
  margin-bottom: 42px;
}
.purpose-video {
  max-width: 266px;
  margin-top: 50px;
  margin-top: auto;
}
.purpose-video video {
  width: 100%;
  display: block;
  aspect-ratio: 16/9;
}
.purpose-video-title {
  font-weight: var(--mx-fw-sbold);
  color: var(--mx-color-heading-primary);
  max-width: 190px;
  margin-top: 20px;
  margin-bottom: -6px;
}
.purpose-mockup-wrapper {
  width: 130vw;
  height: 130vw;
  position: absolute;
  inset-inline-start: 50%;
  top: 50%;
  clip-path: polygon(49.9996% 49.9996%, 50.0004% 49.9996%, 50.0004% 50.0004%, 49.9996% 50.0004%);
  background-color: var(--mx-color-theme-bg);
  z-index: -1;
}
@media only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px), (max-width: 575px) {
  .purpose-mockup-wrapper {
    display: none;
  }
}
.purpose-mockup-wrapper img {
  -webkit-transition: none;
  transition: none;
}
.purpose-mockup {
  position: absolute;
  width: 30.209vw;
  aspect-ratio: 580/680;
  inset-inline-start: 50%;
  top: 50%;
  -webkit-transform: translate(-50%, -50%) scale(1.5);
      -ms-transform: translate(-50%, -50%) scale(1.5);
          transform: translate(-50%, -50%) scale(1.5);
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .purpose-mockup {
    aspect-ratio: 580/802;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .purpose-mockup {
    width: 33.209vw;
    aspect-ratio: 580/845;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px), (max-width: 575px) {
  .purpose-mockup {
    position: relative;
    inset-inline-start: 0;
    top: 0;
    -webkit-transform: translate(0 !important, 0 !important) scale(1.5);
        -ms-transform: translate(0 !important, 0 !important) scale(1.5);
            transform: translate(0 !important, 0 !important) scale(1.5);
  }
}
.purpose-mockup-items {
  position: absolute;
  inset: 0;
  overflow: hidden;
}
.purpose-mockup-item {
  width: 100%;
  height: 100%;
  position: absolute;
  -o-object-fit: cover;
     object-fit: cover;
  inset: 0;
  z-index: 1;
}
.purpose-mockup-item:not(:first-child) {
  -webkit-transform-origin: top;
      -ms-transform-origin: top;
          transform-origin: top;
  will-change: transform;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .purpose-mockup-item {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
}
.purpose-img {
  width: 100%;
  margin-bottom: 25px;
}
.purpose-img img {
  width: 100%;
}
.purpose-title {
  font-weight: var(--mx-fw-sbold);
  color: var(--mx-color-heading-primary);
}
.purpose-sln {
  color: var(--mx-color-light-2);
  -webkit-transition: all 0.4s ease-in-out 0s;
  transition: all 0.4s ease-in-out 0s;
}
.purpose-desc {
  max-width: 305px;
  height: 0;
  overflow: hidden;
  -webkit-transition: all 0.4s ease-in-out 0s;
  transition: all 0.4s ease-in-out 0s;
}
.purpose-desc .desc {
  margin-bottom: 25px;
}
@media only screen and (min-width: 1400px) and (max-width: 1599px) {
  .purpose-desc {
    max-width: 265px;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .purpose-desc {
    max-width: 236px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .purpose-desc {
    max-width: 100%;
  }
  .purpose-desc .desc {
    padding-top: 20px;
  }
}
.purpose-item-wrapper {
  min-height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}
@media only screen and (min-width: 1200px) and (max-width: 1399px), only screen and (min-width: 992px) and (max-width: 1199px) {
  .purpose-item-wrapper {
    max-width: 369px;
    -webkit-margin-start: auto;
            margin-inline-start: auto;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .purpose-item-wrapper {
    max-width: 292px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px), (max-width: 575px) {
  .purpose-item-wrapper {
    padding-top: 30px;
  }
}
.purpose-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding: 32px 0;
  position: relative;
  border-color: var(--mx-color-border-1);
  border-style: solid;
  border-width: 0;
  border-bottom-width: 1px;
  z-index: 0;
}
.purpose-item:first-child {
  border-top-width: 1px;
}
@media only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px), (max-width: 575px) {
  .purpose-item {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px), (max-width: 575px) {
  .purpose-item {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .purpose-item:first-child {
    border-top: 0;
    padding-top: 0;
  }
  .purpose-item:last-child {
    border-bottom: 0;
    padding-bottom: 0;
  }
  .purpose-item::after {
    display: none;
  }
  .purpose-item .purpose-sln {
    color: var(--mx-color-heading-primary);
  }
  .purpose-item .purpose-desc {
    height: auto;
  }
}
.purpose-item.active::after {
  opacity: 0;
}
.purpose-item.active .purpose-sln {
  color: var(--mx-color-heading-primary);
}
.purpose-item.active .purpose-desc {
  height: 171px;
}
@media only screen and (min-width: 1400px) and (max-width: 1599px) {
  .purpose-item.active .purpose-desc {
    height: 195px;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px) {
  .purpose-item.active .purpose-desc {
    height: 219px;
  }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .purpose-item.active .purpose-desc {
    height: 215px;
  }
}

.mx_users_list {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin: 0;
  padding: 0;
  list-style: none;
}
.mx_users_list li {
  width: 66px;
  height: 66px;
  background-color: var(--mx-color-theme-bg);
  border-radius: 50%;
  padding: 3px;
  overflow: hidden;
}
.mx_users_list li:not(:first-child) {
  margin-left: -25px;
}
.mx_users_list li img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: 50%;
}

/**----------------------------------------
START: counter CSS
----------------------------------------*/
.mx_counter .counter_number,
.mx_counter .counter_number .suffix > span {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: end;
  font-family: var(--mx-ff-heading);
  font-weight: var(--mx-fw-sbold);
  font-size: 120px;
  line-height: 1;
  letter-spacing: -0.02em;
}
.mx_counter .counter_number span,
.mx_counter .counter_number .suffix > span span {
  font-family: inherit;
  font-weight: inherit;
  font-size: inherit;
  line-height: inherit;
  letter-spacing: inherit;
}
.mx_counter .counter_number span.suffix,
.mx_counter .counter_number .suffix > span span.suffix {
  font-weight: var(--mx-fw-light);
  font-size: 64px;
  line-height: 1.3;
}
.mx_counter .counter_label {
  font-size: 20px;
  line-height: 1.5;
  letter-spacing: 0.01em;
  margin-top: 2px;
}
@media only screen and (min-width: 1400px) and (max-width: 1599px) {
  .mx_counter .counter_number,
  .mx_counter .counter_number .suffix > span {
    font-size: 100px;
  }
  .mx_counter .counter_number span.suffix,
  .mx_counter .counter_number .suffix > span span.suffix {
    font-size: 56px;
  }
}
@media only screen and (min-width: 1200px) and (max-width: 1399px), only screen and (min-width: 992px) and (max-width: 1199px), only screen and (min-width: 768px) and (max-width: 991px), only screen and (min-width: 576px) and (max-width: 767px), (max-width: 575px) {
  .mx_counter .counter_number,
  .mx_counter .counter_number .suffix > span {
    font-size: 80px;
  }
  .mx_counter .counter_number span.suffix,
  .mx_counter .counter_number .suffix > span span.suffix {
    font-size: 46px;
  }
}

.mx_feature_item {
  position: relative;
  width: 100%;
  background-color: var(--mx-color-theme-bg-2);
  padding: 36px 35px 56px 35px;
  min-height: 400px;
  max-height: 565px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 30px;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  z-index: 1;
  overflow: hidden;
}
.mx_feature_item .bg_image {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  z-index: -1;
  -o-object-fit: cover;
     object-fit: cover;
}