/* 
Theme Name: Go Viral
Theme URI: https://github.com/elementor/hello-theme-child/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author: Elementor Team
Author URI: https://elementor.com/
Template: hello-elementor
Version: 2.0.0
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/
html {
    scroll-behavior: smooth;
}
body {
    cursor: url(./assets/img/cursor.svg), auto;
    scroll-behavior: smooth;
}
*:hover {
    cursor: url(./assets/img/cursor.svg), auto;
}
#page {
    position: relative;
    width: 100%;
    overflow: hidden;
    scroll-behavior: smooth;
}
.home #page::before {
    position: absolute;
    content: '';
    width: 1344px;
    height: 1344px;
    left: calc(50% - 1344px/2 + 841px);
    top: -956px;
    background: radial-gradient(50% 50% at 50% 50%, #F76F4D 0%, #0B1F28 100%);
    filter: blur(147px);
    z-index: -1;
}
.home #page::after {
    position: absolute;
    content: '';
    width: 100%;
    height: 1100px;
    left: 0;
    top: 0px;
    z-index: -3;
    background: url(./assets/img/grid-bg.svg) repeat bottom -160px left;
}
#page .elementor-location-header {
    z-index: 6;
}
#page .elementor-location-header nav li.elementor-button{
    display: none;
    padding: 0;
    text-align: center;
    margin: 20px auto 40px;
    min-width: 150px;
    width: auto !important;
}
#page .elementor-location-header nav li.elementor-button a{
    margin: 0 auto;
    padding: 8px 20px;
}
/* noise-ellipse */

.noise-ellipse {
    position: absolute;
    width: 1842px !important;
    height: 1842px !important;
    left: 50%;
    transform: translate(-50%, 0);
    top: -847px;
    overflow: hidden;
    z-index: -2;
    mix-blend-mode: lighten;
    opacity: 0.4;
}
.noise-ellipse.right {
    width: 1996px !important;
    height: 1996px !important;
    left: 712px !important;
    top: 0px !important;
    transform: none;
}
.noise-ellipse.left {
    position: absolute;
    width: 1996px !important;
    height: 1996px !important;
    left: -563px;
    top: 0;
    transform: none;
}
.noise-ellipse::before {
    content: '';
    position: absolute;
    width: 1344px;
    height: 1344px;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    background: linear-gradient(180deg, #91B4C1 0%, #0B1F28 100%);
    filter: blur(147px);
    z-index: 1;
}

.noise-ellipse::after {
    content: '';
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    background: url(./assets/img/noise.png) repeat-y center;
    mix-blend-mode: overlay;
    opacity: 1;
    z-index: 2;
    transform: rotate(180deg);
}
.marque {
    position: relative;
    background: #0B1F28;
}
.marque::before,
.marque::after{
    position: absolute;
    content: '';
    width: 50%;
    height: 100%;
    left:0px;
    top: 0px;
    z-index: 3;
    background: linear-gradient(90deg, #0B1F28 0%, rgba(11, 31, 40, 0) 100%);
}
.marque::after {
    transform: scale(-1);
    left:auto;
    right: 0;
}
.marque .swiper-wrapper {
    transition-timing-function: linear !important; 
}
.marque .swiper-slide {
    height: 60px;
    background: #172D36;
    border-radius: 25px;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
}
.marque .swiper-slide figure{
    height: 100%;
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    padding: 8px 10px;
}
.marque .swiper-slide img{
    max-height: 100%;
    max-width: 100%;
}
#animated-text h1{
    opacity: 0;
}
.word {
    opacity: 0;
    display: inline-block;
    margin-right: 4px;
    animation: fadeIn 0.5s forwards;
}
@keyframes fadeIn {
    to {
      opacity: 1;
    }
}
.globe-h {
    position: absolute;
    width: 570px;
    height: 570px;
    top: 130px;
    transform: rotate(25deg) translate(-50%, 0);
    left: -50px;
}
.globe {
    position: absolute;
    width: 100%;
    height: 100%;
    border-radius: 50%;
    animation: rotate 20s linear infinite;
    transform-style: preserve-3d;
}

.line {
    position: absolute;
    width: 100%;
    height: 100%;
    border-radius: 50%;
    border: 2px solid #f8f8f8;
    opacity: 0.2;
}
.elementor-button-link {
    min-width: 160px;
    text-align: center;
}

.line:nth-child(1)  { transform: rotateY(0deg); opacity: 0.2;}
.line:nth-child(2)  { transform: rotateY(15deg); opacity: 0 !important;}
.line:nth-child(3)  { transform: rotateY(30deg); }
.line:nth-child(4)  { transform: rotateY(45deg); opacity: 0 !important;}
.line:nth-child(5)  { transform: rotateY(60deg); }
.line:nth-child(6)  { transform: rotateY(75deg); opacity: 0 !important;}
.line:nth-child(7)  { transform: rotateY(90deg); }
.line:nth-child(8)  { transform: rotateY(105deg);opacity: 0 !important; }
.line:nth-child(9)  { transform: rotateY(120deg); }
.line:nth-child(10) { transform: rotateY(135deg); opacity: 0 !important;}
.line:nth-child(11) { transform: rotateY(150deg); }
.line:nth-child(12) { transform: rotateY(165deg); opacity: 0 !important;}

.line:nth-child(13) { transform: rotateX(15deg); }
.line:nth-child(14) { transform: rotateX(40deg); }
.line:nth-child(15) { transform: rotateX(65deg); }
.line:nth-child(16) { transform: rotateX(75deg); }
.line:nth-child(17) { transform: rotateX(105deg); }

@keyframes rotate {
    from { transform: rotateY(0deg); }
    to { transform: rotateY(360deg); }
}


.hex {
    position: absolute;
    width: 325px;
    height: 325px;
    background: url(assets/img/hex.svg) no-repeat center;
    background-size: auto 100%;
    top: 281px;
    right: -230px;
}
.hex.small {
    position: absolute;
    width: 216px;
    height: 216px;
    top: 8px;
    right: 31px;
}


.social-fixed {
    position: relative;
    z-index: 10;
   
}
.social-fixed:before,
.social-fixed:after {
    position: absolute;
    content: '';
    top: 100%;
    margin-top: 40px;
    left: 50%;
    width: 3px;
    transform: translate(-50%, 0);
    background: url(assets/img/social-ine.svg) no-repeat top center;
    height: 50vh;
}
.social-fixed:before {
    top: auto;
    bottom: 100%;
    margin: 0 0 40px;
    background-position: bottom center;
}
span.orange {
    color: #F43F12;
}
span.gray {
    color: #80A9B9;
}
.add-noise {
    position: relative;
}
.image-overflow {
    background: linear-gradient(281.74deg, #212B3A 30.51%, #092B3B 100%);
    position: relative;
    border-radius: 25px;
}
.image-overflow .elementor-column{
    width: 100% !important;
}
.image-overflow.elementor-section .elementor-container {
    display: block !important;
}

.image-overflow .heading{
    width: 276px !important;
    max-width: 276px !important;
}
.image-overflow .text{
    width: calc(100% - 460px) !important;
    padding: 0 5px 0 27px !important;
    margin-left: 23px;
    border-left: 1px solid #FFFFFF;
}
.image-overflow .text div {
    margin-bottom: 0 !important;
}
.image-overflow .text p:last-child{
    margin-bottom: 0 !important;
}
.image-overflow .button{
    width: 160px !important;
    align-self: flex-end;
}
.video-side-paralax .elementor-column {
    position: relative;
    z-index: 2;
}
.video-side-paralax .double-image,
.video-side-paralax .bg-image {
    z-index: 1;
}
.video-side-paralax .elementor-widget-heading {
    position: relative;
    z-index: 4;
}
.video-side-paralax .double-image img.bg,
.video-side-paralax .bg-image img {
    position: absolute;
    z-index: -6;
    width: 139%;
    max-width: 139% !important;
    opacity: 0.4;
    filter: blur(11.4198px);
    border-radius: 33.5878px;
    bottom: -30px;
    right: 20px;
    height: auto;
}

.video-side-paralax .elementor-widget-video .elementor-wrapper iframe, .video-side-paralax .elementor-widget-video .elementor-wrapper video {
    border-radius: 30px;
}
.video-side-paralax .bg-image .elementor-motion-effects-element {
    overflow: visible;
}
.video-side-paralax .double-image .elementor-element,
.video-side-paralax .bg-image .elementor-element {
    position: relative;
    z-index: 2;
}
.video-side-paralax .double-image .elementor-element:nth-child(2),
.video-side-paralax .bg-image .elementor-element:nth-child(2) {
    position: relative;
    z-index: 1;
}
.video-side-paralax .double-image .elementor-element:nth-child(2) img.bg,
.video-side-paralax .bg-image .elementor-element:nth-child(2) img {
    right: 50%;
    transform: translate(50%,0);
    top: -30px;
    bottom: 0;
}
.video-side-paralax .double-image .elementor-element:nth-child(3) img.bg,
.video-side-paralax .bg-image .elementor-element:nth-child(3) img {
    right: auto;
    left: 20px;
}
.calendly {
    position: relative;
}
#calendly .e-child {
    overflow: visible;
}
#calendly .e-child .elementor-widget-container{
    overflow: hidden;   
}
#calendly .e-child .elementor-widget-container:after {
    content: '';
    position: absolute;
    width: 100%;
    height: 100%;
    top: 50%;
    left: 46%;
    transform: translate(-50%,-50%);
    background: linear-gradient(124.55deg, #F43F12 -0.73%, rgba(244, 63, 18, 0) 59.85%);
    filter: blur(37px);
    border-radius: 25px;
    z-index: -1;
    opacity: 0.6;
}
#calendly .e-child .elementor-widget-container:before {
    content: '';
    position: absolute;
    width: 100%;
    height: 80%;
    top: 55%;
    left: 56%;
    background: linear-gradient(124.55deg, #FFFFFF -0.73%, rgba(255, 255, 255, 0) 59.85%);
    filter: blur(37px);
    border-radius: 25px;
    transform: translate(-50%,-50%) rotate(-180deg);
    opacity: 0.6;
    z-index: -1;
}
#calendly .e-child .calendly .elementor-widget-container:after {
    max-width: 1023px;
}
#calendly .e-child .calendly .elementor-widget-container:before {
    max-width: 1023px;
}
.video-side-paralax:after {
    content: '';
    position: absolute;
    width: 589px;
    height: 589px;
    left: -295px;
    bottom: -294px;
    background: radial-gradient(50% 50% at 50% 50%, #F76F4D 0%, rgba(247, 111, 77, 0.1) 100%);
    filter: blur(147px);
    z-index: 1;
}
.globe-big {
    position: relative;
    z-index: 2;
    overflow: hidden !important;
}
.globe-big .globe-h {
    width: 1218px;
    height: 1218px;
    top: 54px;
    transform: rotate(25deg);
    transform-origin: top;
    left: -56px;
}
.globe-big .globe-h .line{
    opacity: .5;
}
.graphic-block {
    position: relative;
}
.graphic-block::before,
.graphic-block::after{
    position: absolute;
    content: '';
    width: 1440px;
    height: 240px;
    left: 50%;
    transform: translate(-50%,0);
    top: 0px;
    background: radial-gradient(50% 70.99% at 50% 0%, rgba(128, 169, 185, 0.2) 0%, rgba(128, 169, 185, 0) 100%);
}
.graphic-block::after{
    top: auto;
    bottom: 0;
    transform: translate(-50%,0) scaleY(-1);
}

.tabs-inner {
    position: relative;
    overflow: hidden !important;
}
.tabs-inner .noise-ellipse {
    width: 1996px !important;
    height: 1996px !important;
    left: calc(50% - 1996px/2);
}
.tabs-inner:before {
    content: '';
    position: absolute;
    width: 1440px;
    height: 2px;
    left: 50%;
    transform: translate(-50%,0);
    top: 0px;
    background: linear-gradient(90deg, rgba(128, 169, 185, 0) 0%, #80A9B9 49%, rgba(128, 169, 185, 0) 100%);
}
.tabs-inner:first-child:before {
    display: none;
}
.tabs-inner iframe,
.tabs-inner video {
    border-radius: 25px;
}
.elementor-counter-number-wrapper {
    overflow: hidden;
    height: 64px !important;
    flex: initial !important;
}
.add-noise.noise-bottom .noise-ellipse {
    width: 1996px !important;
    height: 1996px !important;
    top: 0;
}
.testimonials .elementor-testimonial-meta-inner {
    margin-left: -2px;
}
.testimonials .elementor-testimonial-content {
    font-size: 14px !important;
    line-height: 22px  !important;
}
.testimonials .hex{
    right: -166px;
}
.testimonials .hex.small{
    right: -105px;
}
.testimonials .elementor-testimonial-details:after {
    content: '';
    display: block;
    width: 100px;
    background: url(assets/img/star.svg) repeat-x left;
    margin-top: 5px;
    height: 12px;
    background-size: 20px 100%;
    position: relative;
    left: -3px;
}
#calendly button.e-n-tab-title[aria-selected="true"]{
    display: none;
}

.image-text {
    position: relative;
    overflow: hidden;
}
.image-text:before {
    content: '';
    position: absolute;
    width: 700px;
    height: 700px;
    left: 175px;
    bottom: 180px;
    
    background: radial-gradient(50% 50% at 50% 50%, rgba(247, 111, 77, 0.3) 0%, rgba(11, 31, 40, 0.25) 100%);
    filter: blur(173.411px);

}
.image-text-2 {
    background: linear-gradient(281.74deg, #212B3A 30.51%, #092B3B 100%);
    position: relative;
    border-radius: 25px;
}
.image-text-2:before {
    position: absolute;
    width: 700.77px;
    height: 700.77px;
    left: 891.13px;
    bottom: -366.45px;
    content: '';
    background: radial-gradient(50% 50% at 50% 50%, #80A9B9 0%, #0B1F28 100%);
    filter: blur(174.896px);
}
.counter-h::after {
    position: absolute;
    content: '';
    width: 100%;
    height: 100%;
    left: 15px;
    z-index: -1;
    bottom: 25px;
    border-radius: 25px;
    background: linear-gradient(124.55deg, #FFFFFF -0.73%, rgba(255, 255, 255, 0) 59.85%);
    filter: blur(37px);
    border-radius: 25px;
    transform: rotate(90deg);
}

@media screen and (max-width: 1024px) {
    .elementor-location-header .elementor-hidden-tablet {
        display: none !important;
    }
    .elementor-nav-menu--dropdown {
        padding: 0 20px !important;
        background: transparent !important;
    }
    .elementor-location-header .elementor-column {
        z-index: 1;
    }
    .elementor-location-header .elementor-column:first-child {
        z-index: 2;
    }
    .elementor-nav-menu--dropdown {
        z-index: -1 !important;
    }
    .elementor-nav-menu--dropdown ul{
        background: #21404E;
        border: 1px solid #80A9B9;
        backdrop-filter: blur(2px);
        border-radius: 25px;
        padding-top: 50px;
        overflow: hidden;
        text-align: center;

    }
    .elementor-nav-menu--dropdown ul::before{
        content: '';
        position: absolute;
        width: 710px;
        height: 710px;
        right: -407px;
        bottom: -471px;

        background: radial-gradient(50% 50% at 50% 50%, rgba(247, 111, 77, 0.45) 0%, rgba(9, 43, 59, 0.81) 100%);
        filter: blur(52.0625px);
    }
    .globe-big .globe-h {
        left: 144px;
        top: 20px;
    }
    .video-side-paralax:after {
        display: none;
    }

    .globe-h {
        width: 370px;
        height: 370px;
        left: 83px;
    }
    .hex {
        width: 150px;
        height: 150px;
        left: 100%;
        margin-left: -80px;
        top: 150px !important;
        bottom: auto !important;
    }
    .hex:not(.small) {
        display: none;
    }
    .noise-ellipse.right {
        left: 20% !important;
    }
    .noise-ellipse.left {
        left: auto !important;
        right: 20% !important;
    }
    
    #page .elementor-location-header nav li.elementor-button{
        display: inline-block;
    }
}
@media screen and (max-width: 767px) {
    .elementor-button-link {
        min-width: 150px;
    }
    .marque .swiper-slide {
        height: 35px;
        border-radius:20px;
    }
    .marque .swiper-slide figure {
        padding: 5px 10px;
    }
    .globe-h {
        width: 325px;
        height: 325px;
        left: 50px;
        top: 150px;
    }
    .hex {
        width: 150px;
        height: 150px;
        left: 100%;
        margin-left: -40px;
        top: 150px !important;
        bottom: auto !important;
    }
    #cases + section .marque .elementor-image-carousel{
        margin-left: 40px;
    }
    .home #page::before,
    .home #page::after {
        display: none;
    }
    .image-text::before {
        display: none;
    }
    .image-text-h:before {
        content: '';
        position: absolute;
        width: 589px;
        height: 589px;
        right: 53px;
        left: auto;
        bottom: auto;
        top: -225px;
        background: radial-gradient(50% 50% at 50% 50%, rgba(247, 111, 77, 0.5) 0%, rgba(11, 31, 40, 0.5) 100%);
        filter: blur(147px);

    }
    .image-text-h {
        position: relative;
        overflow: hidden;
        border-radius: 25px;
    }
    .image-text-h:after {
        content: '';
        position: absolute;
        width: 589px;
        height: 589px;
        right: -269px;
        top: 463px;
        background: radial-gradient(50% 50% at 50% 50%, rgba(247, 111, 77, 0.5) 0%, rgba(11, 31, 40, 0.5) 100%);
        filter: blur(147px);
        z-index: -1;
    }
    .image-text-2 {
        background: transparent;
        position: relative;
    }
    .image-text-2::after {
        content: '';
        position: absolute;
        width: 589px;
        height: 589px;
        right: -269px;
        top: -225px;
        left: auto;
        bottom: auto;
        background: radial-gradient(50% 50% at 50% 50%, rgba(247, 111, 77, 0.5) 0%, rgba(11, 31, 40, 0.5) 100%);
        filter: blur(147px);
        z-index: -1;
    }
    .image-text-2:before {
        content: '';
        position: absolute;
        width: 589px;
        height: 589px;
        right: 80px;
        top: 236px;
        left: auto;
        z-index: -1;
        background: radial-gradient(50% 50% at 50% 50%, rgba(247, 111, 77, 0.5) 0%, rgba(11, 31, 40, 0.5) 100%);
        filter: blur(147px);

    }
    .image-overflow {
        background: transparent;
        overflow: hidden;
    }
    .image-overflow::after {
        content: '';
        position: absolute;
        width: 589px;
        height: 589px;
        right: 53px;
        z-index: -1;
        top: -225px;
        background: radial-gradient(50% 50% at 50% 50%, rgba(247, 111, 77, 0.5) 0%, rgba(11, 31, 40, 0.5) 100%);
        filter: blur(147px);
        
    }
    .image-overflow:before {
        content: '';
        position: absolute;
        width: 589px;
        height: 589px;
        right: -269px;
        top: 463px;
        z-index: -1;
        background: radial-gradient(50% 50% at 50% 50%, rgba(247, 111, 77, 0.5) 0%, rgba(11, 31, 40, 0.5) 100%);
        filter: blur(147px);
    }
 
    
    .image-overflow .heading{
        width: 100% !important;
        margin-bottom: 30px !important;
        max-width: 100% !important;
    }
    .image-overflow .text{
        width:100% !important;
        padding: 0 !important;
        margin-left: 0;
        border-left: none;
        margin-bottom: 25px !important;
    }
    .image-overflow .text div {
        margin-bottom: 0 !important;
    }
    .image-overflow .text p:last-child{
        margin-bottom: 0 !important;
    }
    .image-overflow .button{
        width: 160px !important;
        align-self: middle;
    }
    .globe-big .globe-h {
        left: -180px;
        top: -5px;
        width: 770px;
        height: 770px;
    }
    #calendly .elementor-element-10aa3b5 {
        display: none;
    }
}