.elementor-kit-6{--e-global-color-primary:#1A1A1A;--e-global-color-secondary:#1F1F1F;--e-global-color-text:#6B7573;--e-global-color-accent:#00D6BE;--e-global-color-a3af5ce:#000000;--e-global-color-4e67924:#12181D;--e-global-color-e279132:#0B1C2C;--e-global-color-47f78ef:#FFFFFF;--e-global-color-c04a55f:#018076;--e-global-color-fc4e6cf:#00D6BE;--e-global-color-389ed9e:#004146;--e-global-color-bdaa9c7:#F6F7F7;--e-global-color-8f007f5:#E4E7E8;--e-global-color-8eb8f3f:#6B7573;--e-global-color-6d060ae:#3A4342;--e-global-typography-primary-font-family:"Inter";--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-family:"Inter";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Inter";--e-global-typography-text-font-size:18px;--e-global-typography-text-font-weight:400;--e-global-typography-text-line-height:1.75;--e-global-typography-accent-font-family:"Inter";--e-global-typography-accent-font-weight:500;--e-global-typography-9050818-font-family:"Inter";--e-global-typography-9050818-font-size:88px;--e-global-typography-9050818-font-weight:700;--e-global-typography-9050818-line-height:1.75;--e-global-typography-11bf8db-font-family:"Inter";--e-global-typography-11bf8db-font-size:42px;--e-global-typography-11bf8db-font-weight:700;--e-global-typography-11bf8db-line-height:1.75;--e-global-typography-1c7573a-font-family:"Inter";--e-global-typography-1c7573a-font-size:18px;--e-global-typography-1c7573a-font-weight:400;--e-global-typography-1c7573a-line-height:1.75;--e-global-typography-cb42d0d-font-family:"Inter";--e-global-typography-cb42d0d-font-size:40px;--e-global-typography-cb42d0d-font-weight:600;--e-global-typography-cb42d0d-line-height:1.75;color:var( --e-global-color-text );font-family:"Inter", Sans-serif;font-size:18px;font-weight:400;line-height:1.75;}.elementor-kit-6 button,.elementor-kit-6 input[type="button"],.elementor-kit-6 input[type="submit"],.elementor-kit-6 .elementor-button{background-color:var( --e-global-color-c04a55f );font-family:"Inter", Sans-serif;font-size:16px;font-weight:600;text-transform:uppercase;letter-spacing:0.5px;color:var( --e-global-color-47f78ef );border-radius:999px 999px 999px 999px;padding:18px 42px 18px 42px;}.elementor-kit-6 button:hover,.elementor-kit-6 button:focus,.elementor-kit-6 input[type="button"]:hover,.elementor-kit-6 input[type="button"]:focus,.elementor-kit-6 input[type="submit"]:hover,.elementor-kit-6 input[type="submit"]:focus,.elementor-kit-6 .elementor-button:hover,.elementor-kit-6 .elementor-button:focus{background-color:var( --e-global-color-389ed9e );color:var( --e-global-color-47f78ef );}.elementor-kit-6 e-page-transition{background-color:#FFBC7D;}.elementor-kit-6 a{color:var( --e-global-color-accent );}.elementor-kit-6 a:hover{color:var( --e-global-color-accent );font-family:"Inter", Sans-serif;}.elementor-kit-6 h1{color:var( --e-global-color-primary );font-family:"Inter", Sans-serif;font-size:42px;font-weight:500;line-height:1.75;}.elementor-kit-6 h2{color:var( --e-global-color-primary );font-family:"Inter", Sans-serif;font-size:42px;line-height:1.75;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1320px;}.e-con{--container-max-width:1320px;--container-default-padding-top:0px;--container-default-padding-right:20px;--container-default-padding-bottom:0px;--container-default-padding-left:20px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-kit-6{--e-global-typography-primary-font-size:38px;--e-global-typography-9050818-font-size:60px;--e-global-typography-9050818-line-height:1.75;--e-global-typography-11bf8db-font-size:38px;--e-global-typography-11bf8db-line-height:1.75;--e-global-typography-1c7573a-line-height:1.75;--e-global-typography-cb42d0d-font-size:32px;--e-global-typography-cb42d0d-line-height:1.75;line-height:1.35;}.elementor-kit-6 h1{font-size:40px;line-height:1.35;}.elementor-kit-6 h2{font-size:38px;line-height:1.35;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;--container-default-padding-top:0px;--container-default-padding-right:20px;--container-default-padding-bottom:0px;--container-default-padding-left:20px;}}@media(max-width:767px){.elementor-kit-6{--e-global-typography-text-font-size:18px;--e-global-typography-text-line-height:1.35;--e-global-typography-9050818-font-size:40px;--e-global-typography-9050818-line-height:1.35;--e-global-typography-11bf8db-font-size:32px;--e-global-typography-11bf8db-line-height:1.35;--e-global-typography-1c7573a-line-height:1.75;--e-global-typography-cb42d0d-font-size:30px;--e-global-typography-cb42d0d-line-height:1.35;}.elementor-kit-6 h1{font-size:32px;line-height:1.35;}.elementor-kit-6 h2{font-size:28px;line-height:1.35;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;--container-default-padding-top:0px;--container-default-padding-right:15px;--container-default-padding-bottom:0px;--container-default-padding-left:15px;}}
/* Start custom CSS *//* ============================================
   PORTFOLIO BUTTONS
   ============================================ */

.dual-btn .btn {
    font-family: Inter, sans-serif;
    font-size: 16px;
    font-weight: 600;
    text-transform: uppercase;
    padding: 13px 42px;
    border: 1px solid var(--e-global-color-c04a55f);
    border-radius: 999px;
}

.dual-btn {
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    column-gap: 20px;
    margin-top: 30px;
}

.dark-btn.btn {
    color: var(--e-global-color-47f78ef);
    background-color: var(--e-global-color-c04a55f);
}

.dark-btn.btn:hover {
    color: var(--e-global-color-c04a55f);
    background-color: var(--e-global-color-47f78ef);
}

.lgt-btn.btn {
    color: var(--e-global-color-fc4e6cf);
    background: transparent;
    border-color: var(--e-global-color-fc4e6cf);
}

.lgt-btn.btn:hover {
    color: var(--e-global-color-c04a55f);
    background-color: #fff;
    border-color: #fff;
}


/* ============================================
   WORK ROW IMAGES
   ============================================ */

.work-row img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transform: scale(1);
    transition: transform .5s ease;
}

.work-row .elementor-widget-image a {
    display: block;
}


/* ============================================
   FULL-WIDTH FIXED HEADER
   ============================================ */

.site-header {
    --width: 100% !important;
    --max-width: 100% !important;

    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: auto !important;

    width: 100vw !important;
    min-width: 100vw !important;
    max-width: 100vw !important;

    height: auto !important;
    min-height: 78px !important;
    max-height: none !important;

    flex: 0 0 auto !important;
    align-self: stretch !important;

    display: flex !important;
    flex-direction: row !important;
    align-items: stretch !important;
    justify-content: center !important;

    padding: 0 !important;
    margin: 0 !important;

    background: rgba(8, 8, 9, 0.94);

    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);

    border: none !important;
    border-bottom: 1px solid rgba(255, 255, 255, .06) !important;
    border-radius: 0 !important;

    box-shadow: 0 8px 24px rgba(0, 0, 0, .3);

    overflow: visible !important;
    box-sizing: border-box !important;
    pointer-events: auto !important;

    z-index: 500;
}


/* ============================================
   CENTERED INNER HEADER CONTAINER
   ============================================ */

.site-header .container_2 {
    --width: 100% !important;
    --max-width: 1320px !important;

    position: relative;

    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: space-between !important;

    width: 100% !important;
    min-width: 0 !important;
    max-width: 1320px !important;

    height: auto !important;
    min-height: 78px !important;
    max-height: none !important;

    flex: 1 1 auto !important;
    align-self: stretch !important;

    gap: 40px;

    margin: 0 auto !important;
    padding: 14px 24px !important;

    background: transparent !important;
    border: none !important;
    border-radius: 0 !important;
    box-shadow: none !important;

    overflow: visible !important;
    box-sizing: border-box !important;
    pointer-events: auto !important;
}


/* Elementor may add an extra inner wrapper */

.site-header .container_2 > .e-con-inner {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: space-between !important;

    width: 100% !important;
    min-width: 0 !important;
    max-width: 1320px !important;

    height: auto !important;
    flex: 1 1 auto !important;

    margin: 0 auto !important;

    overflow: visible !important;
    pointer-events: auto !important;
}


/* ============================================
   LOGO CONTAINER
   ============================================ */

.site-header .container_2 > .e-con:first-child {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;

    align-self: center !important;
    flex: 0 0 auto !important;

    width: auto !important;
    min-width: 215px !important;
    max-width: none !important;

    height: auto !important;

    margin: 0 !important;
    padding: 0 !important;

    overflow: visible !important;
}

.site-header .container_2 > .e-con:first-child .elementor-widget-image {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;

    width: auto !important;
    margin: 0 !important;
}

.site-header .container_2 > .e-con:first-child .elementor-widget-container {
    display: flex !important;
    align-items: center !important;

    margin: 0 !important;
    padding: 0 !important;
}

.site-header .container_2 > .e-con:first-child a {
    display: flex !important;
    align-items: center !important;
    margin: 0 !important;
}

.site-header .container_2 > .e-con:first-child img {
    display: block !important;

    width: 214px !important;
    min-width: 214px !important;
    max-width: 214px !important;

    height: auto !important;
    margin: 0 !important;
}


/* ============================================
   NAVIGATION CONTAINER
   ============================================ */

.site-header .container_2 > .e-con:last-child {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;

    align-self: center !important;
    flex: 0 0 auto !important;

    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;

    height: auto !important;

    margin: 0 !important;
    padding: 0 !important;

    overflow: visible !important;
}


/* ============================================
   WORDPRESS MENU WIDGET
   ============================================ */

.site-header .site-nav {
    position: relative;

    width: auto !important;
    max-width: none !important;
    flex: 0 0 auto !important;

    margin: 0 !important;

    overflow: visible !important;
    pointer-events: auto !important;
}

.site-header .site-nav > .elementor-widget-container {
    position: relative;

    width: auto !important;
    max-width: none !important;

    margin: 0 !important;

    overflow: visible !important;
    pointer-events: auto !important;
}

.site-header .site-nav .elementor-nav-menu--main,
.site-header .site-nav .elementor-nav-menu--dropdown {
    overflow: visible;
    pointer-events: auto;
}


/* ============================================
   GENERAL SITE STYLES
   ============================================ */

.comments-area a,
.page-content a {
    text-decoration: none !important;
}

h1.ekit-heading--title.elementskit-section-title span {
    background: linear-gradient(360deg, #018076, #00b4a1);
    background: -webkit-linear-gradient(360deg, #018076, #00b4a1);

    -webkit-background-clip: text;
    background-clip: text;

    -webkit-text-fill-color: transparent;
    color: transparent;
}

.ekit-wid-con .elementskit-single-testimonial-slider {
    box-shadow: none;
}

.pro-bx .elementor-image-box-content {
    padding: 0 20px 10px;
}

.pro-bx figure.elementor-image-box-img img {
    border-top-left-radius: 20px;
    border-top-right-radius: 20px;
}

.grad-sec {
    background: linear-gradient(
        160deg,
        rgb(246, 247, 247),
        rgb(238, 247, 246) 60%,
        rgb(246, 247, 247)
    );
}

.images-grd .elementor-gallery-item__content {
    position: relative !important;

    width: auto !important;
    height: auto !important;

    margin-top: 12px;
}

.images-grd .elementor-gallery-item__title {
    opacity: 1 !important;
}

.ic-vt .elementor-icon-box-icon {
    margin-top: 13px;
}

.n {
    display: inline-block;

    width: 30px;
    height: 30px;

    padding: 5px;
    margin-right: 7px;

    font-size: 12px;
    text-align: center;

    color: #fff;
    background-color: #018076;

    border-radius: 50%;
}

.md-bx .n {
    color: #000;
    background: #00d6be;
}


/* ============================================
   DESKTOP
   ============================================ */

@media (min-width: 1025px) {

    .work-row {
        overflow: hidden;
        cursor: pointer;
    }

    .work-row:hover img {
        transform: scale(1.08);
    }

    .work-row:hover .elementor-flip-box__back {
        opacity: 1;
    }

    .wrk-img {
        overflow: hidden;
    }


    /* Keep the top-level menu on one row */

    .site-header
    .site-nav
    .elementor-nav-menu--main
    > .elementor-nav-menu {
        display: flex !important;
        align-items: center !important;
        justify-content: flex-end !important;
        flex-wrap: nowrap !important;

        width: max-content !important;
        min-width: max-content !important;

        overflow: visible !important;
    }


    /* Natural-width top-level menu items */

    .site-header
    .site-nav
    .elementor-nav-menu--main
    > .elementor-nav-menu
    > li {
        position: relative !important;

        display: flex !important;
        align-items: center !important;

        width: auto !important;
        min-width: 0 !important;
        flex: 0 0 auto !important;

        overflow: visible !important;
    }


    /* Centered top-level dividers */

    .site-header
    .site-nav
    .elementor-nav-menu--main
    > .elementor-nav-menu
    > li:not(:last-child)::after {
        content: "" !important;

        display: block !important;
        position: static !important;

        flex: 0 0 1px !important;
        align-self: center !important;

        width: 1px !important;
        min-width: 1px !important;
        height: 24px !important;
        min-height: 24px !important;

        margin: 0 20px !important;

        background: rgba(255, 255, 255, .75) !important;

        border: none !important;
        border-radius: 0 !important;

        transform: none !important;
    }
}


/* ============================================
   DESKTOP SUBMENU POSITIONING AND ANIMATION
   ============================================ */

@media (min-width: 1025px) {

    /*
     * The submenu uses two content-width columns.
     * Change 48px below to adjust the gap between
     * the left and right columns.
     */

    .site-header
    .site-nav
    .elementor-nav-menu--main
    > .elementor-nav-menu
    > li.menu-item-has-children
    > .sub-menu {
        display: grid !important;

        position: absolute !important;

        top: calc(100% + 18px) !important;
        left: 50% !important;
        right: auto !important;
        bottom: auto !important;

        grid-template-columns: repeat(2, max-content) !important;
        column-gap: 38px !important;
        row-gap: 4px;

        width: max-content !important;
        min-width: 0 !important;
        max-width: none !important;

        padding: 14px 18px 26px !important;
        margin: 0 !important;

        box-sizing: border-box !important;

        opacity: 0 !important;
        visibility: hidden !important;
        pointer-events: none !important;

        transform: translateX(-50%) !important;

        clip-path: inset(0 0 100% 0);
        -webkit-clip-path: inset(0 0 100% 0);

        will-change: clip-path, opacity;

        transition:
            clip-path .34s cubic-bezier(.22, 1, .36, 1) 1s,
            -webkit-clip-path .34s cubic-bezier(.22, 1, .36, 1) 1s,
            opacity .16s ease 1s,
            visibility 0s linear 1.34s,
            pointer-events 0s linear 1.34s !important;

        z-index: 9999 !important;
    }


    /* Non-overlapping hover corridor */

    .site-header
    .site-nav
    .elementor-nav-menu--main
    > .elementor-nav-menu
    > li.menu-item-has-children::before {
        content: "";

        display: block !important;
        position: absolute !important;

        top: 100% !important;
        left: 50% !important;

        width: calc(100% + 16px) !important;
        height: 20px !important;

        transform: translateX(-50%) !important;

        background: transparent !important;
        pointer-events: auto !important;

        z-index: 9998 !important;
    }


    /* Open submenu immediately */

    .site-header
    .site-nav
    .elementor-nav-menu--main
    > .elementor-nav-menu
    > li.menu-item-has-children:hover
    > .sub-menu,

    .site-header
    .site-nav
    .elementor-nav-menu--main
    > .elementor-nav-menu
    > li.menu-item-has-children:focus-within
    > .sub-menu {
        opacity: 1 !important;
        visibility: visible !important;
        pointer-events: auto !important;

        transform: translateX(-50%) !important;

        clip-path: inset(0 0 0 0);
        -webkit-clip-path: inset(0 0 0 0);

        transition:
            clip-path .34s cubic-bezier(.22, 1, .36, 1),
            -webkit-clip-path .34s cubic-bezier(.22, 1, .36, 1),
            opacity .16s ease,
            visibility 0s linear 0s,
            pointer-events 0s linear 0s !important;
    }


    /*
     * Close the previously open submenu immediately
     * when another top-level item is hovered.
     */

    .site-header
    .site-nav
    .elementor-nav-menu--main
    > .elementor-nav-menu:has(> li:hover)
    > li.menu-item-has-children:not(:hover)
    > .sub-menu {
        opacity: 0 !important;
        visibility: hidden !important;
        pointer-events: none !important;

        clip-path: inset(0 0 100% 0);
        -webkit-clip-path: inset(0 0 100% 0);

        transition:
            clip-path .2s ease,
            -webkit-clip-path .2s ease,
            opacity .12s ease,
            visibility 0s linear .2s,
            pointer-events 0s linear .2s !important;
    }


    /* Natural-width submenu cells */

    .site-header .site-nav .sub-menu > li {
        display: block !important;

        width: max-content !important;
        min-width: 0 !important;
        max-width: none !important;

        margin: 0 !important;
        padding: 0 !important;
    }


    /* Submenu links */

    .site-header .site-nav .sub-menu > li > a {
        display: flex !important;
        align-items: center !important;

        gap: 10px;

        width: max-content !important;
        min-width: 0 !important;
        max-width: none !important;

        padding: 8px 10px !important;
        margin: 0 !important;

        border-radius: 2px;
        box-sizing: border-box !important;
    }


    /* Arrow beside every submenu item */

    .site-header .site-nav .sub-menu > li > a::before {
        content: "➞";

        display: inline-block;
        flex: 0 0 auto;

        font-size: 16px;
        line-height: 1;

        color: #00d6be;

        transform: translateY(-1px);

        transition:
            transform .2s ease,
            color .2s ease;
    }


    /* Arrow movement on hover */

    .site-header .site-nav .sub-menu > li > a:hover::before {
        transform: translateX(4px) translateY(-1px);
    }
}


/* ============================================
   TABLET AND MOBILE
   ============================================ */

@media (max-width: 1024px) {

    .flp-box .elementor-flip-box__front,
    .flp-box .elementor-flip-box__back {
        border-radius: 0 0 15px 15px;
    }

    .desc-cnt {
        display: -webkit-box;

        overflow: hidden;
        text-overflow: ellipsis;

        -webkit-line-clamp: 3;
        -webkit-box-orient: vertical;
    }


    /* Full-width centered responsive header */

    .site-header {
        min-height: 76px !important;
        flex-direction: row !important;
        justify-content: center !important;
    }

    .site-header .container_2 {
        width: 100% !important;
        min-width: 0 !important;
        max-width: 1320px !important;

        height: auto !important;
        min-height: 76px !important;
        max-height: none !important;

        flex: 1 1 auto !important;

        padding: 12px 24px !important;
        margin: 0 auto !important;

        overflow: visible !important;
        box-sizing: border-box !important;
    }


    /* Release desktop logo sizing */

    .site-header .container_2 > .e-con:first-child {
        min-width: 0 !important;
    }

    .site-header .container_2 > .e-con:first-child img {
        width: auto !important;
        min-width: 0 !important;
        max-width: 100% !important;
    }


    /* Mobile submenu arrows */

    .site-header .site-nav .sub-menu > li > a {
        display: flex !important;
        align-items: center !important;
        gap: 8px;
    }

    .site-header .site-nav .sub-menu > li > a::before {
        content: "➞";

        display: inline-block;
        flex: 0 0 auto;

        color: #00d6be;

        font-size: 15px;
        line-height: 1;
    }
}


/* ============================================
   MOBILE ONLY
   ============================================ */

@media (max-width: 767px) {

    .dual-btn {
        flex-direction: column;
        row-gap: 12px;
    }

    .site-header {
        min-height: 70px !important;
    }

    .site-header .container_2 {
        width: 100% !important;
        max-width: 1320px !important;
        min-height: 70px !important;

        padding: 10px 18px !important;
        margin: 0 auto !important;
    }
}
/* ============================================
   TABLET/MOBILE LOGO VISIBILITY FIX
   ============================================ */

@media (max-width: 1024px) {

    .site-header .site-logo {
        display: block !important;
        visibility: visible !important;
        opacity: 1 !important;

        width: 180px !important;
        min-width: 180px !important;
        max-width: 180px !important;

        flex: 0 0 180px !important;
        position: relative !important;
        z-index: 502 !important;
    }

    .site-header .site-logo,
    .site-header .site-logo .elementor-widget-container,
    .site-header .site-logo a {
        overflow: visible !important;
    }

    .site-header .site-logo a {
        display: block !important;
        width: 100% !important;
    }

    .site-header .site-logo img {
        display: block !important;
        visibility: visible !important;
        opacity: 1 !important;

        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
        height: auto !important;

        object-fit: contain !important;
    }
}

@media (max-width: 767px) {

    .site-header .site-logo {
        width: 155px !important;
        min-width: 155px !important;
        max-width: 155px !important;
        flex-basis: 155px !important;
    }
}/* End custom CSS */