/* ====================== [ Custom Preview Styles  ] ====================== */
.valign {
  min-height: 640px;
  height: 100vh;
  padding-top: 80px;
  overflow: hidden;
  position: relative; }
  .valign:before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    background: -webkit-linear-gradient(350deg, #bce8f7, #5593fd, #9d8cff, #fda2df, #87d28c, #f38a8a);
    background: -o-linear-gradient(350deg, #bce8f7, #5593fd, #9d8cff, #fda2df, #87d28c, #f38a8a);
    background: linear-gradient(100deg, #bce8f7, #5593fd, #9d8cff, #fda2df, #87d28c, #f38a8a);
    background: linear-gradient(100deg, #bce8f7, #5593fd, #9d8cff, #fda2df, #87d28c, #f38a8a);
    opacity: .22;
    background-size: 600% 600%;
    -webkit-animation: gradient 15s ease infinite alternate;
    animation: gradient 15s ease infinite alternate; 
  }
  .valign:after {
    content: '';
    width: 500px;
    height: 500px;
    border-radius: 50%;
    position: absolute;
    left: 50%;
    top: calc(50% + 50px);
    -webkit-transform: translateX(-50%) translateY(-50%);
    -ms-transform: translateX(-50%) translateY(-50%);
    transform: translateX(-50%) translateY(-50%);
    background: -webkit-linear-gradient(340deg, #fff, transparent);
    background: -o-linear-gradient(340deg, #fff, transparent);
    background: linear-gradient(110deg, #fff, transparent);
    opacity: .5; }
  .valign .circle-img {
    position: absolute;
    left: 30px;
    top: 50px;
    height: auto;
    width: 140px;
    z-index: 1;
    opacity: .3; }
  .valign .container {
    position: relative;
    z-index: 7; }
  .valign .cont {
    position: relative;
    z-index: 2;
    margin: 50px 0; }
    .valign .cont h1 {
      font-size: 50px;
      font-weight: 700; }
    .valign .cont .butn {
      -webkit-box-shadow: 0px 4px 20px -10px rgba(8, 12, 40, 0.07);
      box-shadow: 0px 4px 20px -10px rgba(8, 12, 40, 0.07); }
    .valign .cont .coming {
      margin-bottom: 40px; }
      .valign .cont .coming h6 {
        margin-bottom: 15px;
        font-weight: 500; }
      .valign .cont .coming .clockdiv > div {
        display: inline-block;
        margin: 0 30px; }
        .valign .cont .coming .clockdiv > div h4 {
          display: inline-block;
          font-size: 40px; }
        .valign .cont .coming .clockdiv > div span {
          font-size: 14px;
          display: block; }
  .valign .mag-img {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translateX(-50%) translateY(-50%);
    -ms-transform: translateX(-50%) translateY(-50%);
    transform: translateX(-50%) translateY(-50%);
    height: 100%;
    max-height: 1000px;
    width: 100%;
    max-width: 1600px;
    z-index: 5; }
    .valign .mag-img .imgs {
      position: absolute;
      width: 400px;
      height: 245px; }
      .valign .mag-img .imgs img {
        width: 100%;
        height: 100%;
        -o-object-fit: cover;
        object-fit: cover;
        -o-object-position: center center;
        object-position: center center; }
      .valign .mag-img .imgs .top {
        border-radius: 5px;
        overflow: hidden; }
      .valign .mag-img .imgs .bottm {
        position: absolute;
        width: 100%;
        height: 100%;
        border-radius: 5px;
        overflow: hidden;
        -webkit-filter: blur(0.4px);
        filter: blur(0.4px); }
        .valign .mag-img .imgs .bottm.btm1 {
          top: 10px !important;
          left: -10px !important;
          opacity: .3;
          z-index: -1; }
          .valign .mag-img .imgs .bottm.btm1.vers {
            left: auto !important;
            right: -10px !important; }
        .valign .mag-img .imgs .bottm.btm2 {
          top: 20px !important;
          left: -20px !important;
          opacity: .1;
          z-index: -2; }
          .valign .mag-img .imgs .bottm.btm2.vers {
            left: auto !important;
            right: -20px !important; }
    .valign .mag-img .one {
      top: 60px;
      left: 280px; }
    .valign .mag-img .two {
      top: 260px;
      left: -180px; }
    .valign .mag-img .three {
      bottom: -80px;
      left: -80px; }
    .valign .mag-img .four {
      top: 100px;
      right: -180px; }
    .valign .mag-img .five {
      bottom: 50px;
      right: 0px; }
    .valign .mag-img .mob {
      position: absolute;
      top: 60px;
      right: 400px; }
    .valign .mag-img .mob .layer {
      width: 120px; }
    .valign h1{
      font-size: 40px;
      font-weight: 700;
      line-height: 1.4;
    }
    .valign .btn{
      margin: 40px 10px 0;
      padding: calc(.815rem + 1px) calc(3rem + 1px)!important;
    }
  .valign #js-scene,
  .valign #js-scene2 {
    opacity: 1;
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%; }
.valign {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center; }
@-webkit-keyframes gradient {
  0% {
    background-position: 0 0; }
  25% {
    background-position: 50% 0; }
  50% {
    background-position: 90% 0; }
  60% {
    background-position: 60%; }
  75% {
    background-position: 40%; }
  100% {
    background-position: 0 0; } }

@keyframes gradient {
  0% {
    background-position: 0 0; }
  25% {
    background-position: 50% 0; }
  50% {
    background-position: 90% 0; }
  60% {
    background-position: 60%; }
  75% {
    background-position: 40%; }
  100% {
    background-position: 0 0; } }
@media screen and (max-width: 991px) {
  .valign {
    padding-top: 120px; }
    .valign .cont {
      text-align: center; }
  .valign .main-marq {
    margin-top: 80px;
    margin-right: 0;
    height: calc(50vh - 50px); }
}
@media (max-width: 767px) {
  .valign .cont h1{
    font-size: 40px;
  }
  .valign #js-scene,
  .valign #js-scene2 {
    opacity: 0.3;
  }
}
@media screen and (max-width: 767px) {
  .valign .cont {
    background: #ffffffbc;
    padding: 20px; } }
    .all-feat {
      background: #15171f;
      padding: 100px 0;
      position: relative;
      overflow: hidden; }
      .all-feat:after {
        content: '';
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background: -webkit-linear-gradient(bottom, #15171f, rgba(255, 255, 255, 0) 220px, rgba(255, 255, 255, 0) calc(100% - 220px), #15171f);
        background: -o-linear-gradient(bottom, #15171f, rgba(255, 255, 255, 0) 220px, rgba(255, 255, 255, 0) calc(100% - 220px), #15171f);
        background: linear-gradient(to top, #15171f, rgba(255, 255, 255, 0) 220px, rgba(255, 255, 255, 0) calc(100% - 220px), #15171f);
        pointer-events: none; }
      .all-feat .main-marq {
        position: relative;
        padding: 0; }
        .all-feat .main-marq .slide-har {
          display: -webkit-box;
          display: -ms-flexbox;
          display: flex; }
        .all-feat .main-marq .box {
          display: -webkit-box;
          display: -ms-flexbox;
          display: flex; }
          .all-feat .main-marq .box .item {
            padding: 25px 40px;
            background: rgba(255, 255, 255, 0.01);
            color: #fff;
            margin: 15px;
            border-radius: 5px; }
            .all-feat .main-marq .box .item h6 {
              font-size: 14px;
              font-weight: 400;
              white-space: nowrap;
              margin-left: 15px; }
    
    .slide-har {
      position: relative; }
      .slide-har.st1 .box {
        position: relative;
        -webkit-animation: slide-har 50s linear infinite;
        animation: slide-har 50s linear infinite; }
      .slide-har.st2 .box {
        position: relative;
        -webkit-animation: slide-har-revers 50s linear infinite;
        animation: slide-har-revers 50s linear infinite; }
    
    @-webkit-keyframes slide-har {
      0% {
        -webkit-transform: translateX(0%);
        transform: translateX(0%); }
      100% {
        -webkit-transform: translateX(-100%);
        transform: translateX(-100%); } }
    
    @keyframes slide-har {
      0% {
        -webkit-transform: translateX(0%);
        transform: translateX(0%); }
      100% {
        -webkit-transform: translateX(-100%);
        transform: translateX(-100%); } }
    
    @-webkit-keyframes slide-har-revers {
      100% {
        -webkit-transform: translateX(0%);
        transform: translateX(0%); }
      0% {
        -webkit-transform: translateX(-100%);
        transform: translateX(-100%); } }
    
    @keyframes slide-har-revers {
      100% {
        -webkit-transform: translateX(0%);
        transform: translateX(0%); }
      0% {
        -webkit-transform: translateX(-100%);
        transform: translateX(-100%); } }
        .portfolio-blocks {
          padding: 80px 0;
          overflow: hidden;
          background: #fbfbfd; }
          .portfolio-blocks .sec-head .num .gr {
            font-size: 15vw;
            font-weight: 900;
            line-height: 1;
            background-image: -webkit-gradient(linear, left top, left bottom, from(#c7d7f4), to(transparent));
            background-image: -webkit-linear-gradient(top, #c7d7f4, transparent);
            background-image: -o-linear-gradient(top, #c7d7f4, transparent);
            background-image: linear-gradient(180deg, #c7d7f4, transparent);
            -webkit-background-clip: text;
            -webkit-text-fill-color: transparent; }
          .portfolio-blocks .sec-head .num .thin {
            font-weight: 500;
            font-size: 80px; }
          .portfolio-blocks .sec-head h3 {
            margin-top: -50px; }
          .portfolio-blocks .main-marq {
            position: relative;
            padding: 0; }
            .portfolio-blocks .main-marq .slide-har {
              display: -webkit-box;
              display: -ms-flexbox;
              display: flex;
              margin: 30px 0; }
            .portfolio-blocks .main-marq .box {
              display: -webkit-box;
              display: -ms-flexbox;
              display: flex; }
              .portfolio-blocks .main-marq .box .item {
                width: 440px;
                padding: 0 15px; }
                .portfolio-blocks .main-marq .box .item img {
                  height: 280px;
                  width: 100%;
                  border-radius: 5px;
                  -o-object-fit: cover;
                  object-fit: cover; }
          .portfolio-blocks .swiper-container {
            width: 120%;
            margin-left: -10%; }
          .portfolio-blocks .swiper-slide {
            padding: 50px 0; }
            .portfolio-blocks .swiper-slide img {
              -webkit-box-shadow: 0px 15px 50px rgba(8, 12, 40, 0.1);
              box-shadow: 0px 15px 50px rgba(8, 12, 40, 0.1);
              border-radius: 10px; }    