@import url(https://fonts.googleapis.com/css2?family=Inter:ital,opsz,wght@0,14..32,100..900;1,14..32,100..900&family=Poppins:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap);

.button:focus,
a {
    text-decoration: none
}

.tp-ff-body,
body,
p {
    font-family: var(--tp-ff-body)
}

.nice-select,
.scrollToTop,
.tp-postbox-details-remember .tp-checkbox:hover,
button:hover,
input[type=color] {
    cursor: pointer
}

.body-overlay.apply,
.tp-offcanvas.opened,
.tp-service-item:hover .tp-service-item-bg,
.tp-service-sa-item:hover .tp-service-sa-item-text {
    visibility: visible;
    opacity: 1
}

*,
.nice-select,
.nice-select .list {
    box-sizing: border-box
}

@keyframes wave-front {
    to {
        transform: translateX(-50%)
    }
}

@keyframes wave-back {
    to {
        transform: translateX(50%)
    }
}

@keyframes headerSlideDown {
    0% {
        margin-top: -150px
    }

    to {
        margin-top: 0
    }
}

@keyframes bar_anim {

    0%,
    to {
        -webkit-clip-path: inset(-2px 0);
        clip-path: inset(-2px 0)
    }

    42% {
        -webkit-clip-path: inset(-2px 0-2px 100%);
        clip-path: inset(-2px 0-2px 100%)
    }

    43% {
        -webkit-clip-path: inset(-2px 100% -2px 0);
        clip-path: inset(-2px 100% -2px 0)
    }
}

@keyframes dash-2 {
    to {
        stroke-dashoffset: 0;
        stroke-dasharray: 3000
    }
}

@-webkit-keyframes tpSwing {
    0% {
        -webkit-transform: rotate(6deg);
        -moz-transform: rotate(6deg);
        -ms-transform: rotate(6deg);
        -o-transform: rotate(6deg);
        transform: rotate(6deg)
    }

    to {
        -webkit-transform: rotate(-6deg);
        -moz-transform: rotate(-6deg);
        -ms-transform: rotate(-6deg);
        -o-transform: rotate(-6deg);
        transform: rotate(-6deg)
    }
}

@-moz-keyframes tpSwing {
    0% {
        -webkit-transform: rotate(6deg);
        -moz-transform: rotate(6deg);
        -ms-transform: rotate(6deg);
        -o-transform: rotate(6deg);
        transform: rotate(6deg)
    }

    to {
        -webkit-transform: rotate(-6deg);
        -moz-transform: rotate(-6deg);
        -ms-transform: rotate(-6deg);
        -o-transform: rotate(-6deg);
        transform: rotate(-6deg)
    }
}

@-ms-keyframes tpSwing {
    0% {
        -webkit-transform: rotate(6deg);
        -moz-transform: rotate(6deg);
        -ms-transform: rotate(6deg);
        -o-transform: rotate(6deg);
        transform: rotate(6deg)
    }

    to {
        -webkit-transform: rotate(-6deg);
        -moz-transform: rotate(-6deg);
        -ms-transform: rotate(-6deg);
        -o-transform: rotate(-6deg);
        transform: rotate(-6deg)
    }
}

@keyframes tpSwing {
    0% {
        -webkit-transform: rotate(6deg);
        -moz-transform: rotate(6deg);
        -ms-transform: rotate(6deg);
        -o-transform: rotate(6deg);
        transform: rotate(6deg)
    }

    to {
        -webkit-transform: rotate(-6deg);
        -moz-transform: rotate(-6deg);
        -ms-transform: rotate(-6deg);
        -o-transform: rotate(-6deg);
        transform: rotate(-6deg)
    }
}

@keyframes tp_animation_spin {
    0% {
        transform: rotate(0)
    }

    to {
        transform: rotate(360deg)
    }
}

@keyframes tdfadeUp {
    0% {
        opacity: 0;
        -webkit-transform: translateY(50px);
        -ms-transform: translateY(50px);
        transform: translateY(50px)
    }

    to {
        opacity: 1;
        -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
        transform: translateY(0)
    }
}

@keyframes mymove {

    0%,
    to {
        transform: scale(.9)
    }

    50% {
        transform: scale(1)
    }
}

@keyframes levitate-lg {

    0%,
    to {
        -webkit-transform: translateY(0) scale(1);
        transform: translateY(0) scale(1)
    }

    50% {
        -webkit-transform: translateY(30px) scale(1.01);
        transform: translateY(30px) scale(1.01)
    }
}

@keyframes popups {

    0%,
    to {
        -webkit-transform: scale(1);
        transform: scale(1)
    }

    50% {
        -webkit-transform: scale(1.4);
        transform: scale(1.4)
    }
}

@keyframes color-change {

    0%,
    to {
        opacity: .7
    }

    50% {
        opacity: 1
    }
}

@-webkit-keyframes sliderTitle3 {
    0% {
        background-position: 0
    }

    to {
        background-position: 100%
    }
}

@-moz-keyframes sliderTitle3 {
    0% {
        background-position: 0
    }

    to {
        background-position: 100%
    }
}

@-ms-keyframes sliderTitle3 {
    0% {
        background-position: 0
    }

    to {
        background-position: 100%
    }
}

@keyframes sliderTitle3 {
    0% {
        background-position: 0
    }

    to {
        background-position: 100%
    }
}

@-webkit-keyframes tpshake {
    10% {
        transform: translateY(-10px)
    }

    50% {
        transform: skew(15deg)
    }

    80% {
        transform: rotate(10deg)
    }

    to {
        transform: translate(0)
    }
}

@-moz-keyframes tpshake {
    10% {
        transform: translateY(-10px)
    }

    50% {
        transform: skew(15deg)
    }

    80% {
        transform: rotate(10deg)
    }

    to {
        transform: translate(0)
    }
}

@-ms-keyframes tpshake {
    10% {
        transform: translateY(-10px)
    }

    50% {
        transform: skew(15deg)
    }

    80% {
        transform: rotate(10deg)
    }

    to {
        transform: translate(0)
    }
}

@keyframes tpshake {
    10% {
        transform: translateY(-10px)
    }

    50% {
        transform: skew(15deg)
    }

    80% {
        transform: rotate(10deg)
    }

    to {
        transform: translate(0)
    }
}

@-webkit-keyframes ripple-red {
    0% {
        -webkit-box-shadow: 0 0 0 0 rgb(255 255 255/.3), 0 0 0 10px rgb(255 255 255/.3), 0 0 0 20px rgb(255 255 255/.3);
        box-shadow: 0 0 0 0 rgb(255 255 255/.3), 0 0 0 10px rgb(255 255 255/.3), 0 0 0 20px rgb(255 255 255/.3)
    }

    to {
        -webkit-box-shadow: 0 0 0 10px rgb(255 255 255/.3), 0 0 0 20px rgb(255 255 255/.3), 0 0 0 30px #fff0;
        box-shadow: 0 0 0 10px rgb(255 255 255/.3), 0 0 0 20px rgb(255 255 255/.3), 0 0 0 30px #fff0
    }
}

@keyframes upslide {

    0%,
    20%,
    50%,
    80%,
    to {
        transform: translateY(0)
    }

    40% {
        transform: translateY(-20px)
    }

    60% {
        transform: translateY(-10px)
    }
}

@keyframes upslide-1 {

    0%,
    20%,
    50%,
    80%,
    to {
        transform: translateY(0)
    }

    40% {
        transform: translateY(-8px)
    }

    60% {
        transform: translateY(-4px)
    }
}

@keyframes arrowLineRotation {
    to {
        transform: rotate(180deg)
    }
}

@keyframes arrowLineRotationRev {
    to {
        transform: rotate(-180deg)
    }
}

@keyframes dash {
    0% {
        stroke-dashoffset: 1000
    }

    to {
        stroke-dashoffset: 0
    }
}

@-webkit-keyframes loading {
    0% {
        opacity: 1
    }

    to {
        opacity: 0
    }
}

@keyframes loading {
    0% {
        opacity: 1
    }

    to {
        opacity: 0
    }
}

@keyframes anim-top-bottom {
    0% {
        transform: translateY(-20px)
    }

    to {
        transform: translateY(0)
    }
}

@keyframes anim-left-right {
    0% {
        transform: translateX(-50px)
    }

    to {
        transform: translateX(0)
    }
}

@keyframes animate-pulse {
    0% {
        box-shadow: 0 0 0 0 rgb(255 255 255/.8), 0 0 0 0 rgb(255 255 255/.8)
    }

    40% {
        box-shadow: 0 0 0 50px #fff0, 0 0 0 0 rgb(255 255 255/.8)
    }

    80% {
        box-shadow: 0 0 0 50px #fff0, 0 0 0 30px #fff0
    }

    to {
        box-shadow: 0 0 0 0#fff0, 0 0 0 30px #fff0
    }
}

@keyframes fadeInRight {
    0% {
        opacity: 0;
        -webkit-transform: translateX(20px);
        -ms-transform: translateX(20px);
        transform: translateX(20px)
    }

    to {
        opacity: 1;
        -webkit-transform: translateX(0);
        -ms-transform: translateX(0);
        transform: translateX(0)
    }
}

@keyframes fadeInUp {
    0% {
        opacity: 0;
        -webkit-transform: translateY(20px);
        -ms-transform: translateY(20px);
        transform: translateY(20px)
    }

    to {
        opacity: 1;
        -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
        transform: translateY(0)
    }
}

@keyframes shaking {

    0%,
    to {
        transform: scale(1, 1)
    }

    25% {
        transform: scale(.7, 1.1)
    }

    50% {
        transform: scale(1.1, .7)
    }

    75% {
        transform: scale(.95, 1.05)
    }
}

.transition-3,
a,
button,
input,
li,
p,
select,
textarea {
    -webkit-transition: .3s ease-out;
    -moz-transition: .3s ease-out;
    -ms-transition: .3s ease-out;
    -o-transition: .3s ease-out;
    transition: .3s ease-out
}

.tp-offcanvas-social ul li a svg,
.tp-product-details-views>span svg {
    -webkit-transform: translateY(-1px);
    -moz-transform: translateY(-1px);
    -ms-transform: translateY(-1px);
    -o-transform: translateY(-1px);
    transform: translateY(-1px)
}

.tp-perspective-social-info span svg,
.tp-product-details-action-sm-btn svg,
.tp-product-details-wishlist-btn svg {
    -webkit-transform: translateY(-2px);
    -moz-transform: translateY(-2px);
    -ms-transform: translateY(-2px);
    -o-transform: translateY(-2px);
    transform: translateY(-2px)
}

.al-banner-shop-thumb,
.tp-faq-hero-thumb,
.tp-hero-2-video-container {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%
}

:root {
    --tp-ff-body: 'Inter', sans-serif;
    --tp-ff-heading: 'Poppins', sans-serif;
    --tp-ff-p: 'Inter', sans-serif;
    --tp-ff-inter: 'Inter', sans-serif;
    --tp-ff-poppins: 'Poppins', sans-serif;
    --tp-ff-fontawesome: "Font Awesome 6 Pro";
    --tp-common-white: #fff;
    --tp-common-white-2: #f0f0f0;
    --tp-common-black: #030303;
    --tp-common-black-1: #464646;
    --tp-common-black-2: #0d0d0d;
    --tp-common-black-3: #000;
    --tp-common-black-4: #405955;
    --tp-common-black-5: #111112;
    --tp-common-black-6: #333333;
    --tp-common-black-7: #121314;
    --tp-common-yellow: #fff112;
    --tp-common-yellow-2: #FFD500;
    --tp-common-green: #00dd80;
    --tp-common-green-2: #b4e717;
    --tp-common-green-3: #d5ffdd;
    --tp-common-blue: #5956e9;
    --tp-common-nights: #7D5DFF;
    --tp-common-meteor: #E62415;
    --tp-common-angry: #f14f44;
    --tp-common-sugar: #FFFBF5;
    --tp-common-cream: #b7ab98;
    --tp-common-pink: #eb5939;
    --tp-grey-1: #525252;
    --tp-grey-2: #999;
    --tp-grey-3: #f8f8f8;
    --tp-grey-4: #aaa;
    --tp-grey-5: #f3f1f2;
    --tp-grey-6: #AFB7B6;
    --tp-grey-7: #5c5c5c;
    --tp-grey-8: #464646;
    --tp-theme-primary-dark: #121B4A;
    --tp-theme-primary: #4A24E8;
    --tp-theme-secondary: #ff8000;
    --tp-theme-1: #0752c5;
    --tp-border-1: #eee;
    --tp-border-2: rgba(51, 51, 51, 0.8);
    --tp-border-3: rgba(255, 255, 255, 0.1);
    --numOfSlides: 5;
    --slidingAT: 1.3s;
    --controlSize: 60px
}

body,
p {
    font-size: 14px;
    font-weight: 400;
    color: var(--tp-common-black);
    line-height: 24px
}

.tp-btn-vp-group .tp-btn-2,
.tp-footer-it-widget ul li a,
.tp-footer-it-widget ul li span,
p {
    font-family: var(--tp-ff-inter)
}

p {
    color: var(--tp-grey-1);
    line-height: 22px;
    margin-bottom: 12px
}

h1,
h2,
h3,
h4,
h5,
h6 {
    font-family: var(--tp-ff-poppins);
    color: var(--tp-grey-8);
    margin-top: 0;
    font-weight: 700;
    letter-spacing: -.02em;
    line-height: 1.1;
    -webkit-transition: color .3s ease-out;
    -moz-transition: color .3s ease-out;
    -ms-transition: color .3s ease-out;
    -o-transition: color .3s ease-out;
    transition: color .3s ease-out
}

.fs-70,
h1 {
    font-size: 70px
}

.fs-50,
h2 {
    font-size: 50px
}

.fs-36,
h3 {
    font-size: 36px
}

.fs-26,
h4 {
    font-size: 26px
}

.fs-20,
.tp-header-pb-social ul li a,
h5 {
    font-size: 20px
}

.fs-16,
h6 {
    font-size: 16px
}

*,
ul {
    margin: 0;
    padding: 0
}

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

a:focus,
a:hover,
a:not([href]):not([class]),
a:not([href]):not([class]):hover {
    color: inherit;
    text-decoration: none
}

.tp-blog-top-title,
.tp-cta-it-trams a {
    text-decoration: underline
}

.button:focus,
a:focus,
button:focus {
    outline: 0
}

a,
button {
    color: inherit;
    outline: 0;
    border: 0;
    background: #fff0
}

::-moz-selection {
    background: var(--tp-theme-primary-dark);
    color: var(--tp-common-white);
    text-shadow: none
}

::selection {
    background: var(--tp-theme-primary-dark);
    color: var(--tp-common-white);
    text-shadow: none
}

::-moz-placeholder {
    color: var(--tp-theme-primary-1);
    font-size: 14px;
    opacity: 1
}

::placeholder {
    color: var(--tp-theme-primary-1);
    font-size: 14px;
    opacity: 1
}

.z-index,
.z-index-1 {
    z-index: 1
}

.gx-10 {
    --bs-gutter-x: 10px
}

.gx-12 {
    --bs-gutter-x: 12px
}

.gx-15 {
    --bs-gutter-x: 15px
}

.gx-20 {
    --bs-gutter-x: 20px
}

.gx-23 {
    --bs-gutter-x: 23px
}

.gx-25 {
    --bs-gutter-x: 25px
}

.gx-30 {
    --bs-gutter-x: 30px
}

.gx-35 {
    --bs-gutter-x: 35px
}

.gx-40 {
    --bs-gutter-x: 40px
}

.gx-45 {
    --bs-gutter-x: 45px
}

.gx-50 {
    --bs-gutter-x: 50px
}

.gx-60 {
    --bs-gutter-x: 60px
}

.gx-90 {
    --bs-gutter-x: 90px
}

.al-blog-shop-thumb img,
.al-copyright-pg-right-menu a:hover::after,
.nice-select.wide,
.tp-about-md-shape img,
.tp-about-md-shape-2 img,
.tp-about-pp-border svg,
.tp-about-process-2-border svg,
.tp-brand-inner-item img,
.tp-hero-2-bottom-shape img,
.tp-hero-bottom-border svg,
.tp-hero-right-content .svg,
.tp-hero-sa-shape-3 svg,
.tp-hero-wd-bottom-border svg,
.tp-portfolio-details-line svg,
.tp-service-sa-border,
.tp-service-sa-border svg,
.w-img img {
    width: 100%
}

.hover-text-white:hover,
.tp-text-common-white {
    color: var(--tp-common-white) !important
}

.hover-text-black:hover,
.offcanvas-black-bg .tp-offcanvas-menu ul li.active>.tp-menu-close i,
.tp-btn-white,
.tp-btn-white:hover,
.tp-footer-bottom-white .tp-footer-menu ul li a:hover,
.tp-footer-btn a:hover,
.tp-offcanvas-contact ul li a:hover,
.tp-offcanvas-menu ul li.active>a,
.tp-sidebar-widget-content ul li a:hover,
.tp-sidebar-widget-title,
.tp-text-common-black {
    color: var(--tp-common-black)
}

.hover-text-primary:hover,
.tp-footer-menu ul li a:hover,
.tp-footer-social ul li a:hover,
.tp-text-theme-primary {
    color: var(--tp-theme-primary)
}

.hover-text-grey:hover,
.offcanvas-black-bg .tp-offcanvas-menu ul li.active>a,
.tp-footer-sa-widget .tp-footer-wd-desk:hover,
.tp-footer-sa-widget ul li a,
.tp-text-grey-2 {
    color: var(--tp-grey-2)
}

.section-m-spacing {
    margin-top: -1px
}

.text-italic {
    font-style: italic
}

.fix,
.tp-portfolio-2-thumb,
.tp-skill-pb-border,
.tp-testimonial-thumb {
    overflow: hidden
}

.clear {
    clear: both
}

.z-index-2 {
    z-index: 2
}

.z-index-3 {
    z-index: 3
}

.z-index-4 {
    z-index: 4
}

.z-index-5 {
    z-index: 5
}

.z-index-6 {
    z-index: 6
}

.z-index-7 {
    z-index: 7
}

.z-index-8 {
    z-index: 8
}

.z-index-9 {
    z-index: 9
}

.z-index-10 {
    z-index: 10
}

.al-banner-shop-thumb,
.tp-service-item-bg,
.z-index-m-1 {
    z-index: -1
}

.overflow-y-visible {
    overflow-x: hidden;
    overflow-y: visible
}

.p-relative,
.tp-footer-cst-menu ul li,
.tp-header-pb-helpline,
.tp-main-menu nav ul li,
.tp-offcanvas-menu ul li .tp-submenu .homemenu,
.tp-offcanvas-menu ul li .tp-submenu .homemenu.comeing-soon .homemenu-thumb,
.tp-sidebar-search-input {
    position: relative
}

.p-absolute {
    position: absolute
}

.p-inherit {
    position: inherit !important
}

.bg-position {
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat
}

.tp-transfrom {
    transform: translateY(-1px) !important
}

.tp-header-pb-social ul li a svg,
.tp-hero-2-customer-btn svg,
.tp-pagination ul li a svg,
.tp-pagination ul li span svg,
.tp-transfrom-2 {
    transform: translateY(-2px)
}

.tp-header-md-social ul li a svg,
.tp-transfrom-3 {
    transform: translateY(-3px)
}

.tp-transfrom-4 {
    transform: translateY(-4px)
}

.tp-round-4 {
    border-radius: 4px
}

.tp-contact-us-wrap .tp-postbox-details-input input,
.tp-contact-us-wrap .tp-postbox-details-input textarea,
.tp-round-8 {
    border-radius: 8px
}

.tp-round-10 {
    border-radius: 10px
}

.header-sticky.tp-header-ai-wrap .tp-header-ai-bg::after,
.tp-about-cst-thumb img,
.tp-round-20 {
    border-radius: 20px
}

.tp-round-24,
.tp-service-ai-wrap {
    border-radius: 24px
}

.tp-round-26 {
    border-radius: 26px
}

.tp-round-32 {
    border-radius: 32px
}

.tp-round-36 {
    border-radius: 36px
}

.lh-0,
.tp-contact-map-box,
.tp-hero-video-btn span {
    line-height: 0
}

.lh-22 {
    line-height: 22px
}

.lh-24 {
    line-height: 24px
}

.lh-28 {
    line-height: 28px
}

.lh-30 {
    line-height: 30px
}

.lh-32 {
    line-height: 32px
}

.lh-34 {
    line-height: 34px
}

.lh-36 {
    line-height: 36px
}

.lh-38 {
    line-height: 38px
}

.lh-110-per {
    line-height: 1.1
}

.lh-120-per {
    line-height: 1.2
}

.lh-130-per {
    line-height: 1.3
}

.lh-140-per {
    line-height: 1.4
}

.lh-150-per {
    line-height: 1.5
}

.lh-160-per {
    line-height: 1.6
}

.lh-180-per {
    line-height: 1.8
}

.ls-0 {
    letter-spacing: 0
}

.ls-1 {
    letter-spacing: .01em
}

.ls-m-1 {
    letter-spacing: -.01em
}

.ls-m-2 {
    letter-spacing: -.02em
}

.ls-m-3 {
    letter-spacing: -.03em
}

.ls-m-4 {
    letter-spacing: -.04em
}

.ls-m-5 {
    letter-spacing: -.05em
}

.ls-m-6 {
    letter-spacing: -.06em
}

.opacity-8,
.tp-cta-it-trams,
.tp-footer-it-dec,
.tp-postbox-2-wrapper .postbox__comment-text p {
    opacity: .8
}

.hover-opacity-1:hover,
.tp-about-ai-text .has-scale-image:hover .hidden-image,
.tp-brand-item a:hover,
.tp-footer-it-widget ul li a:hover,
.tp-reveal-item.active:hover .tp-reveal-bg {
    opacity: 1
}

.underline-black,
.underline-black:hover,
.underline-white,
.underline-white:hover {
    background-image: linear-gradient(currentColor, currentColor), linear-gradient(currentColor, currentColor);
    background-size: 0 1px, 0 1px;
    background-position: 100% 100%, 0 100%;
    background-repeat: no-repeat
}

.tp-breadcrumb-list ul li a:hover,
.tp-footer-cst-menu ul li a:hover,
.tp-footer-wd-widget ul li a:hover,
.tp-service-item ul li a:hover,
.underline-black:hover,
.underline-white:hover {
    background-size: 0 1px, 100% 1px
}

.tp-transparent {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    width: 100%;
    z-index: 3
}

.slide-transtion {
    -webkit-transition-timing-function: linear;
    transition-timing-function: linear
}

.img-cover,
.tp-hero-2-video-container video,
.tp-video-md-bg,
.tp-video-vp-img-inner-2 video {
    width: 100%;
    height: 100%;
    object-fit: cover
}

.counter-row {
    counter-reset: count
}

@media (min-width:1400px) {
    .container-1800 {
        max-width: 1800px
    }

    .container-1524 {
        max-width: 1524px
    }

    .container-1646 {
        max-width: 1646px
    }

    .container-1824 {
        max-width: 1824px
    }

    .container-1750 {
        max-width: 1750px
    }

    .container-1380 {
        max-width: 1380px
    }

    .container-1230 {
        max-width: 1230px
    }

    .container-1320 {
        max-width: 1320px
    }
}

.fw-100 {
    font-weight: 100
}

.fw-200 {
    font-weight: 200
}

.fw-300 {
    font-weight: 300
}

.fw-400 {
    font-weight: 400
}

.fw-500 {
    font-weight: 500
}

.fw-600 {
    font-weight: 600
}

.fw-700,
.sticky-white-bg .tp-megamenu-list ul li a span,
.tp-about-cst-tab ul li a {
    font-weight: 700
}

.fw-800 {
    font-weight: 800
}

.fw-900 {
    font-weight: 900
}

.fs-12,
.mega-dropdown-menu p {
    font-size: 12px
}

.fs-14,
.scrollToTop .arrowUp i {
    font-size: 14px
}

.fs-15 {
    font-size: 15px
}

.fs-17 {
    font-size: 17px
}

.fs-18,
.tp-contact-form .tp-postbox-details-input input,
.tp-contact-form .tp-postbox-details-input textarea {
    font-size: 18px
}

.fs-19 {
    font-size: 19px
}

.fs-21 {
    font-size: 21px
}

.fs-22 {
    font-size: 22px
}

.al-hero-archi-social ul li a,
.fs-23 {
    font-size: 23px
}

.fs-24 {
    font-size: 24px
}

.fs-25 {
    font-size: 25px
}

.fs-27 {
    font-size: 27px
}

.fs-28 {
    font-size: 28px
}

.fs-29 {
    font-size: 29px
}

.fs-30 {
    font-size: 30px
}

.fs-31 {
    font-size: 31px
}

.fs-32 {
    font-size: 32px
}

.fs-33 {
    font-size: 33px
}

.fs-34 {
    font-size: 34px
}

.fs-35 {
    font-size: 35px
}

.fs-37 {
    font-size: 37px
}

.fs-38 {
    font-size: 38px
}

.fs-39 {
    font-size: 39px
}

.fs-40 {
    font-size: 40px
}

.fs-41 {
    font-size: 41px
}

.fs-42 {
    font-size: 42px
}

.fs-43 {
    font-size: 43px
}

.fs-44 {
    font-size: 44px
}

.fs-45 {
    font-size: 45px
}

.fs-46 {
    font-size: 46px
}

.fs-47 {
    font-size: 47px
}

.fs-48 {
    font-size: 48px
}

.fs-49 {
    font-size: 49px
}

.fs-51 {
    font-size: 51px
}

.fs-52,
.tp-hero-title.fs-52 {
    font-size: 52px
}

.fs-53 {
    font-size: 53px
}

.fs-54 {
    font-size: 54px
}

.fs-55 {
    font-size: 55px
}

.fs-56 {
    font-size: 56px
}

.fs-57 {
    font-size: 57px
}

.fs-58 {
    font-size: 58px
}

.fs-59 {
    font-size: 59px
}

.fs-60 {
    font-size: 60px
}

.fs-61 {
    font-size: 61px
}

.fs-62 {
    font-size: 62px
}

.fs-63 {
    font-size: 63px
}

.fs-64 {
    font-size: 64px
}

.fs-65 {
    font-size: 65px
}

.fs-66 {
    font-size: 66px
}

.fs-67 {
    font-size: 67px
}

.fs-68 {
    font-size: 68px
}

.fs-69 {
    font-size: 69px
}

.fs-71 {
    font-size: 71px
}

.fs-72 {
    font-size: 72px
}

.fs-73 {
    font-size: 73px
}

.fs-74 {
    font-size: 74px
}

.fs-75 {
    font-size: 75px
}

.fs-76 {
    font-size: 76px
}

.fs-77 {
    font-size: 77px
}

.fs-78 {
    font-size: 78px
}

.fs-79 {
    font-size: 79px
}

.fs-80 {
    font-size: 80px
}

.fs-81 {
    font-size: 81px
}

.fs-82 {
    font-size: 82px
}

.fs-83 {
    font-size: 83px
}

.fs-84 {
    font-size: 84px
}

.fs-85 {
    font-size: 85px
}

.fs-86 {
    font-size: 86px
}

.fs-87 {
    font-size: 87px
}

.fs-88 {
    font-size: 88px
}

.fs-89 {
    font-size: 89px
}

.fs-90 {
    font-size: 90px
}

.fs-91 {
    font-size: 91px
}

.fs-92 {
    font-size: 92px
}

.fs-93 {
    font-size: 93px
}

.fs-94 {
    font-size: 94px
}

.fs-95 {
    font-size: 95px
}

.fs-96 {
    font-size: 96px
}

.fs-97 {
    font-size: 97px
}

.fs-98 {
    font-size: 98px
}

.fs-99 {
    font-size: 99px
}

.fs-100 {
    font-size: 100px
}

@media (max-width:1399.98px) {
    .fs-xl-12 {
        font-size: 12px
    }

    .fs-xl-13 {
        font-size: 13px
    }

    .fs-xl-14 {
        font-size: 14px
    }

    .fs-xl-15 {
        font-size: 15px
    }

    .fs-xl-16 {
        font-size: 16px
    }

    .fs-xl-17 {
        font-size: 17px
    }

    .fs-xl-18 {
        font-size: 18px
    }

    .fs-xl-19 {
        font-size: 19px
    }

    .fs-xl-20 {
        font-size: 20px
    }

    .fs-xl-21 {
        font-size: 21px
    }

    .fs-xl-22 {
        font-size: 22px
    }

    .fs-xl-23 {
        font-size: 23px
    }

    .fs-xl-24 {
        font-size: 24px
    }

    .fs-xl-25 {
        font-size: 25px
    }

    .fs-xl-26 {
        font-size: 26px
    }

    .fs-xl-27 {
        font-size: 27px
    }

    .fs-xl-28 {
        font-size: 28px
    }

    .fs-xl-29 {
        font-size: 29px
    }

    .fs-xl-30 {
        font-size: 30px
    }

    .fs-xl-31 {
        font-size: 31px
    }

    .fs-xl-32 {
        font-size: 32px
    }

    .fs-xl-33 {
        font-size: 33px
    }

    .fs-xl-34 {
        font-size: 34px
    }

    .fs-xl-35 {
        font-size: 35px
    }

    .fs-xl-36 {
        font-size: 36px
    }

    .fs-xl-37 {
        font-size: 37px
    }

    .fs-xl-38 {
        font-size: 38px
    }

    .fs-xl-39 {
        font-size: 39px
    }

    .fs-xl-40 {
        font-size: 40px
    }

    .fs-xl-41 {
        font-size: 41px
    }

    .fs-xl-42 {
        font-size: 42px
    }

    .fs-xl-43 {
        font-size: 43px
    }

    .fs-xl-44 {
        font-size: 44px
    }

    .fs-xl-45 {
        font-size: 45px
    }

    .fs-xl-46 {
        font-size: 46px
    }

    .fs-xl-47 {
        font-size: 47px
    }

    .fs-xl-48 {
        font-size: 48px
    }

    .fs-xl-49 {
        font-size: 49px
    }

    .fs-xl-50 {
        font-size: 50px
    }

    .fs-xl-51 {
        font-size: 51px
    }

    .fs-xl-52 {
        font-size: 52px
    }

    .fs-xl-53 {
        font-size: 53px
    }

    .fs-xl-54 {
        font-size: 54px
    }

    .fs-xl-55 {
        font-size: 55px
    }

    .fs-xl-56 {
        font-size: 56px
    }

    .fs-xl-57 {
        font-size: 57px
    }

    .fs-xl-58 {
        font-size: 58px
    }

    .fs-xl-59 {
        font-size: 59px
    }

    .fs-xl-60 {
        font-size: 60px
    }

    .fs-xl-61 {
        font-size: 61px
    }

    .fs-xl-62 {
        font-size: 62px
    }

    .fs-xl-63 {
        font-size: 63px
    }

    .fs-xl-64 {
        font-size: 64px
    }

    .fs-xl-65 {
        font-size: 65px
    }

    .fs-xl-66 {
        font-size: 66px
    }

    .fs-xl-67 {
        font-size: 67px
    }

    .fs-xl-68 {
        font-size: 68px
    }

    .fs-xl-69 {
        font-size: 69px
    }

    .fs-xl-70 {
        font-size: 70px
    }

    .fs-xl-71 {
        font-size: 71px
    }

    .fs-xl-72 {
        font-size: 72px
    }

    .fs-xl-73 {
        font-size: 73px
    }

    .fs-xl-74 {
        font-size: 74px
    }

    .fs-xl-75 {
        font-size: 75px
    }

    .fs-xl-76 {
        font-size: 76px
    }

    .fs-xl-77 {
        font-size: 77px
    }

    .fs-xl-78 {
        font-size: 78px
    }

    .fs-xl-79 {
        font-size: 79px
    }

    .fs-xl-80 {
        font-size: 80px
    }

    .fs-xl-81 {
        font-size: 81px
    }

    .fs-xl-82 {
        font-size: 82px
    }

    .fs-xl-83 {
        font-size: 83px
    }

    .fs-xl-84 {
        font-size: 84px
    }

    .fs-xl-85 {
        font-size: 85px
    }

    .fs-xl-86 {
        font-size: 86px
    }

    .fs-xl-87 {
        font-size: 87px
    }

    .fs-xl-88 {
        font-size: 88px
    }

    .fs-xl-89 {
        font-size: 89px
    }

    .fs-xl-90 {
        font-size: 90px
    }

    .fs-xl-91 {
        font-size: 91px
    }

    .fs-xl-92 {
        font-size: 92px
    }

    .fs-xl-93 {
        font-size: 93px
    }

    .fs-xl-94 {
        font-size: 94px
    }

    .fs-xl-95 {
        font-size: 95px
    }

    .fs-xl-96 {
        font-size: 96px
    }

    .fs-xl-97 {
        font-size: 97px
    }

    .fs-xl-98 {
        font-size: 98px
    }

    .fs-xl-99 {
        font-size: 99px
    }

    .fs-xl-100 {
        font-size: 100px
    }
}

@media (max-width:1199.98px) {
    .fs-lg-12 {
        font-size: 12px
    }

    .fs-lg-13 {
        font-size: 13px
    }

    .fs-lg-14 {
        font-size: 14px
    }

    .fs-lg-15 {
        font-size: 15px
    }

    .fs-lg-16 {
        font-size: 16px
    }

    .fs-lg-17 {
        font-size: 17px
    }

    .fs-lg-18 {
        font-size: 18px
    }

    .fs-lg-19 {
        font-size: 19px
    }

    .fs-lg-20 {
        font-size: 20px
    }

    .fs-lg-21 {
        font-size: 21px
    }

    .fs-lg-22 {
        font-size: 22px
    }

    .fs-lg-23 {
        font-size: 23px
    }

    .fs-lg-24 {
        font-size: 24px
    }

    .fs-lg-25 {
        font-size: 25px
    }

    .fs-lg-26 {
        font-size: 26px
    }

    .fs-lg-27 {
        font-size: 27px
    }

    .fs-lg-28 {
        font-size: 28px
    }

    .fs-lg-29 {
        font-size: 29px
    }

    .fs-lg-30 {
        font-size: 30px
    }

    .fs-lg-31 {
        font-size: 31px
    }

    .fs-lg-32 {
        font-size: 32px
    }

    .fs-lg-33 {
        font-size: 33px
    }

    .fs-lg-34 {
        font-size: 34px
    }

    .fs-lg-35 {
        font-size: 35px
    }

    .fs-lg-36 {
        font-size: 36px
    }

    .fs-lg-37 {
        font-size: 37px
    }

    .fs-lg-38 {
        font-size: 38px
    }

    .fs-lg-39 {
        font-size: 39px
    }

    .fs-lg-40 {
        font-size: 40px
    }

    .fs-lg-41 {
        font-size: 41px
    }

    .fs-lg-42 {
        font-size: 42px
    }

    .fs-lg-43 {
        font-size: 43px
    }

    .fs-lg-44 {
        font-size: 44px
    }

    .fs-lg-45 {
        font-size: 45px
    }

    .fs-lg-46 {
        font-size: 46px
    }

    .fs-lg-47 {
        font-size: 47px
    }

    .fs-lg-48 {
        font-size: 48px
    }

    .fs-lg-49 {
        font-size: 49px
    }

    .fs-lg-50 {
        font-size: 50px
    }

    .fs-lg-51 {
        font-size: 51px
    }

    .fs-lg-52 {
        font-size: 52px
    }

    .fs-lg-53 {
        font-size: 53px
    }

    .fs-lg-54 {
        font-size: 54px
    }

    .fs-lg-55 {
        font-size: 55px
    }

    .fs-lg-56 {
        font-size: 56px
    }

    .fs-lg-57 {
        font-size: 57px
    }

    .fs-lg-58 {
        font-size: 58px
    }

    .fs-lg-59 {
        font-size: 59px
    }

    .fs-lg-60 {
        font-size: 60px
    }

    .fs-lg-61 {
        font-size: 61px
    }

    .fs-lg-62 {
        font-size: 62px
    }

    .fs-lg-63 {
        font-size: 63px
    }

    .fs-lg-64 {
        font-size: 64px
    }

    .fs-lg-65 {
        font-size: 65px
    }

    .fs-lg-66 {
        font-size: 66px
    }

    .fs-lg-67 {
        font-size: 67px
    }

    .fs-lg-68 {
        font-size: 68px
    }

    .fs-lg-69 {
        font-size: 69px
    }

    .fs-lg-70 {
        font-size: 70px
    }

    .fs-lg-71 {
        font-size: 71px
    }

    .fs-lg-72 {
        font-size: 72px
    }

    .fs-lg-73 {
        font-size: 73px
    }

    .fs-lg-74 {
        font-size: 74px
    }

    .fs-lg-75 {
        font-size: 75px
    }

    .fs-lg-76 {
        font-size: 76px
    }

    .fs-lg-77 {
        font-size: 77px
    }

    .fs-lg-78 {
        font-size: 78px
    }

    .fs-lg-79 {
        font-size: 79px
    }

    .fs-lg-80 {
        font-size: 80px
    }

    .fs-lg-81 {
        font-size: 81px
    }

    .fs-lg-82 {
        font-size: 82px
    }

    .fs-lg-83 {
        font-size: 83px
    }

    .fs-lg-84 {
        font-size: 84px
    }

    .fs-lg-85 {
        font-size: 85px
    }

    .fs-lg-86 {
        font-size: 86px
    }

    .fs-lg-87 {
        font-size: 87px
    }

    .fs-lg-88 {
        font-size: 88px
    }

    .fs-lg-89 {
        font-size: 89px
    }

    .fs-lg-90 {
        font-size: 90px
    }

    .fs-lg-91 {
        font-size: 91px
    }

    .fs-lg-92 {
        font-size: 92px
    }

    .fs-lg-93 {
        font-size: 93px
    }

    .fs-lg-94 {
        font-size: 94px
    }

    .fs-lg-95 {
        font-size: 95px
    }

    .fs-lg-96 {
        font-size: 96px
    }

    .fs-lg-97 {
        font-size: 97px
    }

    .fs-lg-98 {
        font-size: 98px
    }

    .fs-lg-99 {
        font-size: 99px
    }

    .fs-lg-100 {
        font-size: 100px
    }
}

@media (max-width:991.98px) {
    .fs-md-12 {
        font-size: 12px
    }

    .fs-md-13 {
        font-size: 13px
    }

    .fs-md-14 {
        font-size: 14px
    }

    .fs-md-15 {
        font-size: 15px
    }

    .fs-md-16 {
        font-size: 16px
    }

    .fs-md-17 {
        font-size: 17px
    }

    .fs-md-18 {
        font-size: 18px
    }

    .fs-md-19 {
        font-size: 19px
    }

    .fs-md-20 {
        font-size: 20px
    }

    .fs-md-21 {
        font-size: 21px
    }

    .fs-md-22 {
        font-size: 22px
    }

    .fs-md-23 {
        font-size: 23px
    }

    .fs-md-24 {
        font-size: 24px
    }

    .fs-md-25 {
        font-size: 25px
    }

    .fs-md-26 {
        font-size: 26px
    }

    .fs-md-27 {
        font-size: 27px
    }

    .fs-md-28 {
        font-size: 28px
    }

    .fs-md-29 {
        font-size: 29px
    }

    .fs-md-30 {
        font-size: 30px
    }

    .fs-md-31 {
        font-size: 31px
    }

    .fs-md-32 {
        font-size: 32px
    }

    .fs-md-33 {
        font-size: 33px
    }

    .fs-md-34 {
        font-size: 34px
    }

    .fs-md-35 {
        font-size: 35px
    }

    .fs-md-36 {
        font-size: 36px
    }

    .fs-md-37 {
        font-size: 37px
    }

    .fs-md-38 {
        font-size: 38px
    }

    .fs-md-39 {
        font-size: 39px
    }

    .fs-md-40 {
        font-size: 40px
    }

    .fs-md-41 {
        font-size: 41px
    }

    .fs-md-42 {
        font-size: 42px
    }

    .fs-md-43 {
        font-size: 43px
    }

    .fs-md-44 {
        font-size: 44px
    }

    .fs-md-45 {
        font-size: 45px
    }

    .fs-md-46 {
        font-size: 46px
    }

    .fs-md-47 {
        font-size: 47px
    }

    .fs-md-48 {
        font-size: 48px
    }

    .fs-md-49 {
        font-size: 49px
    }

    .fs-md-50 {
        font-size: 50px
    }

    .fs-md-51 {
        font-size: 51px
    }

    .fs-md-52 {
        font-size: 52px
    }

    .fs-md-53 {
        font-size: 53px
    }

    .fs-md-54 {
        font-size: 54px
    }

    .fs-md-55 {
        font-size: 55px
    }

    .fs-md-56 {
        font-size: 56px
    }

    .fs-md-57 {
        font-size: 57px
    }

    .fs-md-58 {
        font-size: 58px
    }

    .fs-md-59 {
        font-size: 59px
    }

    .fs-md-60 {
        font-size: 60px
    }

    .fs-md-61 {
        font-size: 61px
    }

    .fs-md-62 {
        font-size: 62px
    }

    .fs-md-63 {
        font-size: 63px
    }

    .fs-md-64 {
        font-size: 64px
    }

    .fs-md-65 {
        font-size: 65px
    }

    .fs-md-66 {
        font-size: 66px
    }

    .fs-md-67 {
        font-size: 67px
    }

    .fs-md-68 {
        font-size: 68px
    }

    .fs-md-69 {
        font-size: 69px
    }

    .fs-md-70 {
        font-size: 70px
    }

    .fs-md-71 {
        font-size: 71px
    }

    .fs-md-72 {
        font-size: 72px
    }

    .fs-md-73 {
        font-size: 73px
    }

    .fs-md-74 {
        font-size: 74px
    }

    .fs-md-75 {
        font-size: 75px
    }

    .fs-md-76 {
        font-size: 76px
    }

    .fs-md-77 {
        font-size: 77px
    }

    .fs-md-78 {
        font-size: 78px
    }

    .fs-md-79 {
        font-size: 79px
    }

    .fs-md-80 {
        font-size: 80px
    }

    .fs-md-81 {
        font-size: 81px
    }

    .fs-md-82 {
        font-size: 82px
    }

    .fs-md-83 {
        font-size: 83px
    }

    .fs-md-84 {
        font-size: 84px
    }

    .fs-md-85 {
        font-size: 85px
    }

    .fs-md-86 {
        font-size: 86px
    }

    .fs-md-87 {
        font-size: 87px
    }

    .fs-md-88 {
        font-size: 88px
    }

    .fs-md-89 {
        font-size: 89px
    }

    .fs-md-90 {
        font-size: 90px
    }

    .fs-md-91 {
        font-size: 91px
    }

    .fs-md-92 {
        font-size: 92px
    }

    .fs-md-93 {
        font-size: 93px
    }

    .fs-md-94 {
        font-size: 94px
    }

    .fs-md-95 {
        font-size: 95px
    }

    .fs-md-96 {
        font-size: 96px
    }

    .fs-md-97 {
        font-size: 97px
    }

    .fs-md-98 {
        font-size: 98px
    }

    .fs-md-99 {
        font-size: 99px
    }

    .fs-md-100 {
        font-size: 100px
    }
}

@media (max-width:767.98px) {
    .fs-sm-12 {
        font-size: 12px
    }

    .fs-sm-13 {
        font-size: 13px
    }

    .fs-sm-14 {
        font-size: 14px
    }

    .fs-sm-15 {
        font-size: 15px
    }

    .fs-sm-16 {
        font-size: 16px
    }

    .fs-sm-17 {
        font-size: 17px
    }

    .fs-sm-18 {
        font-size: 18px
    }

    .fs-sm-19 {
        font-size: 19px
    }

    .fs-sm-20 {
        font-size: 20px
    }

    .fs-sm-21 {
        font-size: 21px
    }

    .fs-sm-22 {
        font-size: 22px
    }

    .fs-sm-23 {
        font-size: 23px
    }

    .fs-sm-24 {
        font-size: 24px
    }

    .fs-sm-25 {
        font-size: 25px
    }

    .fs-sm-26 {
        font-size: 26px
    }

    .fs-sm-27 {
        font-size: 27px
    }

    .fs-sm-28 {
        font-size: 28px
    }

    .fs-sm-29 {
        font-size: 29px
    }

    .fs-sm-30 {
        font-size: 30px
    }

    .fs-sm-31 {
        font-size: 31px
    }

    .fs-sm-32 {
        font-size: 32px
    }

    .fs-sm-33 {
        font-size: 33px
    }

    .fs-sm-34 {
        font-size: 34px
    }

    .fs-sm-35 {
        font-size: 35px
    }

    .fs-sm-36 {
        font-size: 36px
    }

    .fs-sm-37 {
        font-size: 37px
    }

    .fs-sm-38 {
        font-size: 38px
    }

    .fs-sm-39 {
        font-size: 39px
    }

    .fs-sm-40 {
        font-size: 40px
    }

    .fs-sm-41 {
        font-size: 41px
    }

    .fs-sm-42 {
        font-size: 42px
    }

    .fs-sm-43 {
        font-size: 43px
    }

    .fs-sm-44 {
        font-size: 44px
    }

    .fs-sm-45 {
        font-size: 45px
    }

    .fs-sm-46 {
        font-size: 46px
    }

    .fs-sm-47 {
        font-size: 47px
    }

    .fs-sm-48 {
        font-size: 48px
    }

    .fs-sm-49 {
        font-size: 49px
    }

    .fs-sm-50 {
        font-size: 50px
    }

    .fs-sm-51 {
        font-size: 51px
    }

    .fs-sm-52 {
        font-size: 52px
    }

    .fs-sm-53 {
        font-size: 53px
    }

    .fs-sm-54 {
        font-size: 54px
    }

    .fs-sm-55 {
        font-size: 55px
    }

    .fs-sm-56 {
        font-size: 56px
    }

    .fs-sm-57 {
        font-size: 57px
    }

    .fs-sm-58 {
        font-size: 58px
    }

    .fs-sm-59 {
        font-size: 59px
    }

    .fs-sm-60 {
        font-size: 60px
    }

    .fs-sm-61 {
        font-size: 61px
    }

    .fs-sm-62 {
        font-size: 62px
    }

    .fs-sm-63 {
        font-size: 63px
    }

    .fs-sm-64 {
        font-size: 64px
    }

    .fs-sm-65 {
        font-size: 65px
    }

    .fs-sm-66 {
        font-size: 66px
    }

    .fs-sm-67 {
        font-size: 67px
    }

    .fs-sm-68 {
        font-size: 68px
    }

    .fs-sm-69 {
        font-size: 69px
    }

    .fs-sm-70 {
        font-size: 70px
    }

    .fs-sm-71 {
        font-size: 71px
    }

    .fs-sm-72 {
        font-size: 72px
    }

    .fs-sm-73 {
        font-size: 73px
    }

    .fs-sm-74 {
        font-size: 74px
    }

    .fs-sm-75 {
        font-size: 75px
    }

    .fs-sm-76 {
        font-size: 76px
    }

    .fs-sm-77 {
        font-size: 77px
    }

    .fs-sm-78 {
        font-size: 78px
    }

    .fs-sm-79 {
        font-size: 79px
    }

    .fs-sm-80 {
        font-size: 80px
    }

    .fs-sm-81 {
        font-size: 81px
    }

    .fs-sm-82 {
        font-size: 82px
    }

    .fs-sm-83 {
        font-size: 83px
    }

    .fs-sm-84 {
        font-size: 84px
    }

    .fs-sm-85 {
        font-size: 85px
    }

    .fs-sm-86 {
        font-size: 86px
    }

    .fs-sm-87 {
        font-size: 87px
    }

    .fs-sm-88 {
        font-size: 88px
    }

    .fs-sm-89 {
        font-size: 89px
    }

    .fs-sm-90 {
        font-size: 90px
    }

    .fs-sm-91 {
        font-size: 91px
    }

    .fs-sm-92 {
        font-size: 92px
    }

    .fs-sm-93 {
        font-size: 93px
    }

    .fs-sm-94 {
        font-size: 94px
    }

    .fs-sm-95 {
        font-size: 95px
    }

    .fs-sm-96 {
        font-size: 96px
    }

    .fs-sm-97 {
        font-size: 97px
    }

    .fs-sm-98 {
        font-size: 98px
    }

    .fs-sm-99 {
        font-size: 99px
    }

    .fs-sm-100 {
        font-size: 100px
    }
}

@media (max-width:575.98px) {
    .fs-xs-12 {
        font-size: 12px
    }

    .fs-xs-13 {
        font-size: 13px
    }

    .fs-xs-14 {
        font-size: 14px
    }

    .fs-xs-15 {
        font-size: 15px
    }

    .fs-xs-16 {
        font-size: 16px
    }

    .fs-xs-17 {
        font-size: 17px
    }

    .fs-xs-18 {
        font-size: 18px
    }

    .fs-xs-19 {
        font-size: 19px
    }

    .fs-xs-20 {
        font-size: 20px
    }

    .fs-xs-21 {
        font-size: 21px
    }

    .fs-xs-22 {
        font-size: 22px
    }

    .fs-xs-23 {
        font-size: 23px
    }

    .fs-xs-24 {
        font-size: 24px
    }

    .fs-xs-25 {
        font-size: 25px
    }

    .fs-xs-26 {
        font-size: 26px
    }

    .fs-xs-27 {
        font-size: 27px
    }

    .fs-xs-28 {
        font-size: 28px
    }

    .fs-xs-29 {
        font-size: 29px
    }

    .fs-xs-30 {
        font-size: 30px
    }

    .fs-xs-31 {
        font-size: 31px
    }

    .fs-xs-32 {
        font-size: 32px
    }

    .fs-xs-33 {
        font-size: 33px
    }

    .fs-xs-34 {
        font-size: 34px
    }

    .fs-xs-35 {
        font-size: 35px
    }

    .fs-xs-36 {
        font-size: 36px
    }

    .fs-xs-37 {
        font-size: 37px
    }

    .fs-xs-38 {
        font-size: 38px
    }

    .fs-xs-39 {
        font-size: 39px
    }

    .fs-xs-40 {
        font-size: 40px
    }

    .fs-xs-41 {
        font-size: 41px
    }

    .fs-xs-42 {
        font-size: 42px
    }

    .fs-xs-43 {
        font-size: 43px
    }

    .fs-xs-44 {
        font-size: 44px
    }

    .fs-xs-45 {
        font-size: 45px
    }

    .fs-xs-46 {
        font-size: 46px
    }

    .fs-xs-47 {
        font-size: 47px
    }

    .fs-xs-48 {
        font-size: 48px
    }

    .fs-xs-49 {
        font-size: 49px
    }

    .fs-xs-50 {
        font-size: 50px
    }

    .fs-xs-51 {
        font-size: 51px
    }

    .fs-xs-52 {
        font-size: 52px
    }

    .fs-xs-53 {
        font-size: 53px
    }

    .fs-xs-54 {
        font-size: 54px
    }

    .fs-xs-55 {
        font-size: 55px
    }

    .fs-xs-56 {
        font-size: 56px
    }

    .fs-xs-57 {
        font-size: 57px
    }

    .fs-xs-58 {
        font-size: 58px
    }

    .fs-xs-59 {
        font-size: 59px
    }

    .fs-xs-60 {
        font-size: 60px
    }

    .fs-xs-61 {
        font-size: 61px
    }

    .fs-xs-62 {
        font-size: 62px
    }

    .fs-xs-63 {
        font-size: 63px
    }

    .fs-xs-64 {
        font-size: 64px
    }

    .fs-xs-65 {
        font-size: 65px
    }

    .fs-xs-66 {
        font-size: 66px
    }

    .fs-xs-67 {
        font-size: 67px
    }

    .fs-xs-68 {
        font-size: 68px
    }

    .fs-xs-69 {
        font-size: 69px
    }

    .fs-xs-70 {
        font-size: 70px
    }

    .fs-xs-71 {
        font-size: 71px
    }

    .fs-xs-72 {
        font-size: 72px
    }

    .fs-xs-73 {
        font-size: 73px
    }

    .fs-xs-74 {
        font-size: 74px
    }

    .fs-xs-75 {
        font-size: 75px
    }

    .fs-xs-76 {
        font-size: 76px
    }

    .fs-xs-77 {
        font-size: 77px
    }

    .fs-xs-78 {
        font-size: 78px
    }

    .fs-xs-79 {
        font-size: 79px
    }

    .fs-xs-80 {
        font-size: 80px
    }

    .fs-xs-81 {
        font-size: 81px
    }

    .fs-xs-82 {
        font-size: 82px
    }

    .fs-xs-83 {
        font-size: 83px
    }

    .fs-xs-84 {
        font-size: 84px
    }

    .fs-xs-85 {
        font-size: 85px
    }

    .fs-xs-86 {
        font-size: 86px
    }

    .fs-xs-87 {
        font-size: 87px
    }

    .fs-xs-88 {
        font-size: 88px
    }

    .fs-xs-89 {
        font-size: 89px
    }

    .fs-xs-90 {
        font-size: 90px
    }

    .fs-xs-91 {
        font-size: 91px
    }

    .fs-xs-92 {
        font-size: 92px
    }

    .fs-xs-93 {
        font-size: 93px
    }

    .fs-xs-94 {
        font-size: 94px
    }

    .fs-xs-95 {
        font-size: 95px
    }

    .fs-xs-96 {
        font-size: 96px
    }

    .fs-xs-97 {
        font-size: 97px
    }

    .fs-xs-98 {
        font-size: 98px
    }

    .fs-xs-99 {
        font-size: 99px
    }

    .fs-xs-100 {
        font-size: 100px
    }
}

.offcanvas-black-bg .tp-offcanvas-contact ul li a::after,
.tp-bg-common-white,
.tp-btn-white,
.tp-faq-ai-tab-content .tp-faq-btn .accordion-btn::after,
.tp-faq-ai-tab-content .tp-faq-btn .accordion-btn::before,
.tp-faq-ai-tab-content .tp-faq-btn:not(.collapsed) .accordion-btn::after,
.tp-section-subtitle-white .borders {
    background: var(--tp-common-white)
}

.tp-text-common-white-2 {
    color: var(--tp-common-white-2)
}

.tp-about-pp-skill-white-wrap .tp-about-pp-skill-icon,
.tp-bg-common-white-2,
.tp-blog-pagenation ul li a,
.tp-service-2-btn .tp-btn-2,
.tp-service-2-btn .tp-btn-group .tp-btn-circle,
.tp-sidebar-details-wrap {
    background: var(--tp-common-white-2)
}

.tp-bg-common-black,
.tp-header-pp-menu-btn span {
    background: var(--tp-common-black)
}

.al-brand-seo-box a:hover,
.al-project-seo-btn a:hover,
.tp-faq-cst-tab-content-2 .tp-faq-btn,
.tp-text-common-black-1 {
    color: var(--tp-common-black-1)
}

.tp-bg-common-black-1,
.tp-faq-cst-tab-content-2 .tp-faq-btn .accordion-btn::after,
.tp-faq-cst-tab-content-2 .tp-faq-btn .accordion-btn::before,
.tp-faq-cst-tab-content-2 .tp-faq-btn:not(.collapsed) .accordion-btn::after,
.tp-header-cst-menu-btn span,
.tp-header-it-menu-btn span,
.tp-section-subtitle-cst .borders {
    background: var(--tp-common-black-1)
}

.tp-text-common-black-2 {
    color: var(--tp-common-black-2)
}

.tp-bg-common-black-2 {
    background: var(--tp-common-black-2)
}

.tp-text-common-black-3 {
    color: var(--tp-common-black-3)
}

.tp-bg-common-black-3 {
    background: var(--tp-common-black-3)
}

.tp-text-common-black-4 {
    color: var(--tp-common-black-4)
}

.tp-bg-common-black-4 {
    background: var(--tp-common-black-4)
}

.tp-breadcrumb-2-list ul li a,
.tp-service-cst-2-info .tp-service-cst-info-list ul li,
.tp-text-common-black-5 {
    color: var(--tp-common-black-5)
}

.tp-bg-common-black-5,
.tp-skill-pb-border-2 .tp-skill-pb-circale.circale-1 {
    background: var(--tp-common-black-5)
}

.tp-text-common-black-6 {
    color: var(--tp-common-black-6)
}

.tp-bg-common-black-6,
.tp-header-ai-menu-btn span,
.tp-main-menu-ai>nav>ul>li:hover>a {
    background: var(--tp-common-black-6)
}

.tp-bg-common-black-7 {
    background: var(--tp-common-black-7)
}

.tp-footer-2-social ul li a:hover,
.tp-text-common-yellow {
    color: var(--tp-common-yellow)
}

.tp-bg-common-yellow {
    background: var(--tp-common-yellow)
}

.tp-text-common-yellow-2 {
    color: var(--tp-common-yellow-2)
}

.tp-bg-common-yellow-2 {
    background: var(--tp-common-yellow-2)
}

.tp-text-common-green {
    color: var(--tp-common-green)
}

.tp-bg-common-green {
    background: var(--tp-common-green)
}

.tp-text-common-green-2 {
    color: var(--tp-common-green-2)
}

.tp-bg-common-green-2,
.tp-blog-cst-item:hover,
.tp-footer-cst-widget .tp-footer-wd-desk span,
.tp-service-cst-item:hover .tp-service-cst-content,
.tp-service-it-pagenation span.swiper-pagination-bullet-active {
    background: var(--tp-common-green-2)
}

.tp-text-common-green-3 {
    color: var(--tp-common-green-3)
}

.tp-bg-common-green-3 {
    background: var(--tp-common-green-3)
}

.tp-text-common-blue {
    color: var(--tp-common-blue)
}

.tp-bg-common-blue {
    background: var(--tp-common-blue)
}

.tp-service-sa-item:hover .tp-service-sa-item-icon svg,
.tp-text-common-nights {
    color: var(--tp-common-nights)
}

.tp-bg-common-nights {
    background: var(--tp-common-nights)
}

.tp-text-common-meteor {
    color: var(--tp-common-meteor)
}

.tp-bg-common-meteor {
    background: var(--tp-common-meteor)
}

.tp-text-common-angry {
    color: var(--tp-common-angry)
}

.tp-bg-common-angry {
    background: var(--tp-common-angry)
}

.tp-text-common-sugar {
    color: var(--tp-common-sugar)
}

.tp-bg-common-sugar {
    background: var(--tp-common-sugar)
}

.tp-text-common-cream {
    color: var(--tp-common-cream)
}

.tp-bg-common-cream {
    background: var(--tp-common-cream)
}

.tp-text-common-pink {
    color: var(--tp-common-pink)
}

.tp-bg-common-pink {
    background: var(--tp-common-pink)
}

.tp-blog-details-dates span,
.tp-blog-meta span,
.tp-blog-wd-title a:hover,
.tp-contact-email:hover,
.tp-cta-wd-email:hover,
.tp-footer-bottom-white .tp-footer-menu ul li a,
.tp-header-pp-email:hover,
.tp-hero-pp-social a,
.tp-product-price,
.tp-text-grey-1 {
    color: var(--tp-grey-1)
}

.tp-bg-grey-1 {
    background: var(--tp-grey-1)
}

.tp-bg-grey-2 {
    background: var(--tp-grey-2)
}

.tp-text-grey-3 {
    color: var(--tp-grey-3)
}

.tp-bg-grey-3 {
    background: var(--tp-grey-3)
}

.tp-text-grey-4 {
    color: var(--tp-grey-4)
}

.tp-bg-grey-4 {
    background: var(--tp-grey-4)
}

.tp-breadcrumb-3-white ul li,
.tp-breadcrumb-3-white ul li a,
.tp-text-grey-5,
.tp-video-cst-title:hover {
    color: var(--tp-grey-5)
}

.tp-bg-grey-5,
.tp-breadcrumb-3-white ul li span,
.tp-header-ai-menu-btn,
.tp-header-cst-menu-btn {
    background: var(--tp-grey-5)
}

.tp-text-grey-6 {
    color: var(--tp-grey-6)
}

.tp-bg-grey-6 {
    background: var(--tp-grey-6)
}

.tp-faq-md-tab-content .tp-faq-details-para p,
.tp-text-grey-7 {
    color: var(--tp-grey-7)
}

.tp-bg-grey-7 {
    background: var(--tp-grey-7)
}

.tp-text-grey-8 {
    color: var(--tp-grey-8)
}

.tp-bg-grey-8 {
    background: var(--tp-grey-8)
}

.tp-bg-theme-primary-dark,
.tp-btn-ai-black::before {
    background: var(--tp-theme-primary-dark)
}

.scrollToTop .water,
.tp-bg-common-black-1.bg-hover-theme-1:hover,
.tp-bg-theme-primary,
.tp-btn-vp-group-primary .tp-btn-2,
.tp-btn-vp-group-primary .tp-btn-circle,
.tp-footer-btn .tp-btn-circle-dot,
.tp-hero-bottom-line,
.tp-hero-title-sm,
.tp-hero-video-btn,
.tp-service-2-btn .tp-btn-group:hover>:first-child {
    background: var(--tp-theme-primary)
}

.tp-text-theme-secondary {
    color: var(--tp-theme-secondary) !important
}

.cursor-bg-red #ball,
.tp-bg-theme-secondary {
    background: var(--tp-theme-secondary) !important
}

.tp-funfact-green-wrap.yellow-style .tp-funfact-number span,
.tp-header-md-contact ul li a:hover,
.tp-header-md-social ul li a:hover,
.tp-text-theme-1 {
    color: var(--tp-theme-1)
}

.tp-bg-theme-1 {
    background: var(--tp-theme-1)
}

.tp-text-border-1 {
    color: var(--tp-border-1)
}

.tp-bg-border-1 {
    background: var(--tp-border-1)
}

.tp-text-border-2 {
    color: var(--tp-border-2)
}

.tp-bg-border-2 {
    background: var(--tp-border-2)
}

.tp-text-border-3 {
    color: var(--tp-border-3)
}

.tp-bg-border-3 {
    background: var(--tp-border-3)
}

.tp-ff-heading,
.tp-main-menu nav>ul>li>a,
.tp-rounded-btn-wrap a {
    font-family: var(--tp-ff-heading)
}

.tp-ff-p {
    font-family: var(--tp-ff-p)
}

.tp-ff-poppins {
    font-family: var(--tp-ff-poppins)
}

.nice-select::after,
.tp-ff-fontawesome {
    font-family: var(--tp-ff-fontawesome)
}

.scrollToTop {
    display: none !important;
    height: 45px;
    width: 45px;
    position: fixed;
    bottom: 20px;
    right: 20px;
    border-radius: 50%;
    overflow: hidden;
    z-index: 999;
    transition: .5s;
    background: #cbc6c6
}

.scrollToTop.active-progress {
    display: block !important
}

.scrollToTop:hover {
    transform: translateY(-15%)
}

.scrollToTop .arrowUp,
.scrollToTop .water {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%
}

.scrollToTop .arrowUp {
    z-index: 3;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--tp-common-black);
    font-size: 24px
}

.scrollToTop .water {
    z-index: 2;
    transform: translateY(100%);
    transition: .3s;
    border: 1px solid var(--tp-theme-primary)
}

.scrollToTop .water svg use {
    margin-bottom: -1px;
    position: relative;
    bottom: -1px;
    fill: var(--tp-theme-primary) !important
}

.scrollToTop-4 .water {
    border: 1px solid var(--tp-theme-1);
    background: var(--tp-theme-1)
}

.offcanvas-black-bg .tp-offcanvas-close-btn button,
.offcanvas-black-bg .tp-offcanvas-contact ul li a:hover,
.offcanvas-black-bg .tp-offcanvas-menu ul li>a,
.offcanvas-black-bg .tp-offcanvas-title,
.offcanvas-black-bg .tp-offcanvas-title.sm,
.scrollToTop-4 .arrowUp,
.tp-btn-border:hover {
    color: var(--tp-common-white)
}

.scrollToTop-4 .water svg use {
    fill: var(--tp-theme-1) !important
}

.scrollToTop .water_wave {
    width: 200%;
    position: absolute;
    bottom: 100%
}

.scrollToTop .water_wave_back {
    right: 0;
    fill: var(--tp-theme-primary);
    animation: 1.4s linear infinite wave-back
}

.scrollToTop .water_wave_front {
    left: 0;
    fill: #7a259ee0;
    margin-bottom: -1px;
    animation: .7s linear infinite wave-front
}

.tp-btn-lg {
    padding: 19px 27px
}

.tp-btn-xl {
    padding: 23px 28px
}

.tp-btn-sm {
    padding: 15px 36px
}

.tp-btn-cst {
    padding: 18px 30px
}

.tp-btn-switch-2-animation,
.tp-btn-switch-animation {
    -webkit-transition: .3s ease-in-out;
    transition: .3s ease-in-out
}

.tp-btn-switch-animation .btn-text {
    margin-right: -23px;
    position: relative;
    z-index: 3;
    transition: transform .6s cubic-bezier(.1, .75, .25, 1) 125ms
}

.tp-btn-switch-animation .btn-icon {
    margin-right: 6px;
    position: relative;
    transition: opacity .4s cubic-bezier(.1, .75, .25, 1) .25s, transform .6s cubic-bezier(.1, .75, .25, 1) .25s;
    line-height: 0;
    z-index: 3;
    opacity: 0;
    transform: translateX(0)
}

.tp-btn-switch-animation .btn-icon+.btn-icon {
    order: -2;
    opacity: 1;
    margin-left: 0
}

.tp-btn-switch-animation:hover .btn-text {
    transition-delay: .05s;
    transform: translateX(-23px)
}

.tp-btn-switch-animation:hover .btn-icon {
    transition-delay: 0.2s;
    opacity: 1;
    -webkit-transform: translateX(5px);
    transform: translateX(5px)
}

.tp-btn-switch-animation:hover .btn-icon+.btn-icon {
    opacity: 0;
    transition-delay: 0s
}

.tp-btn-switch-2-animation-text>span,
.tp-btn-switch-text>span {
    display: inline-flex;
    align-items: center;
    position: relative;
    overflow: hidden
}

.tp-btn-switch-2-animation-text.btn-lg>span,
.tp-btn-switch-text.btn-lg>span {
    padding: 15px 31px
}

.tp-btn-switch-2-animation-text .btn-double-text,
.tp-btn-switch-text .btn-double-text {
    transition: opacity .65s, transform .85s;
    transition-timing-function: cubic-bezier(.15, .85, .31, 1);
    position: relative
}

.tp-btn-switch-2-animation-text .btn-double-text::before,
.tp-btn-switch-text .btn-double-text::before {
    content: attr(data-text);
    display: inline-block;
    position: absolute;
    white-space: nowrap;
    top: 50%;
    opacity: 0;
    left: 50%;
    transform: translate(-50%, 100%);
    transition: opacity .5s, transform .8s;
    transition-timing-function: cubic-bezier(.15, .85, .31, 1)
}

.tp-btn-switch-text:hover.bg-hover-black {
    background: var(--tp-common-black-4)
}

.tp-btn-switch-text:hover.bg-hover-theme-1 {
    background: var(--tp-theme-1)
}

.tp-btn-switch-2-animation-text:hover .btn-double-text,
.tp-btn-switch-text:hover .btn-double-text {
    transform: translateY(-200%)
}

.tp-btn-switch-2-animation-text:hover .btn-double-text::before,
.tp-btn-switch-text:hover .btn-double-text::before {
    transform: translate(-50%, 150%);
    opacity: 1
}

.tp-btn-switch-2-animation .btn-text {
    margin-left: -18px;
    position: relative;
    z-index: 3;
    transition: transform .6s cubic-bezier(.1, .75, .25, 1) 125ms
}

.tp-btn-switch-2-animation .btn-icon {
    margin-left: 6px;
    position: relative;
    transition: opacity .4s cubic-bezier(.1, .75, .25, 1) .25s, transform .6s cubic-bezier(.1, .75, .25, 1) .25s;
    line-height: 0;
    z-index: 3
}

.tp-btn-switch-2-animation .btn-icon+.btn-icon {
    order: -2;
    opacity: 0;
    transition-delay: 0s;
    margin-left: 0;
    -webkit-transform: translateX(-10px);
    transform: translateX(-10px)
}

.tp-btn-switch-2-animation:hover .btn-text {
    transition-delay: .1s;
    transform: translateX(23px)
}

.tp-btn-switch-2-animation:hover .btn-icon {
    transition-delay: 0s;
    transform: translateX(10px);
    opacity: 0
}

.tp-btn-switch-2-animation:hover .btn-icon+.btn-icon {
    opacity: 1;
    transform: translateX(0);
    transition-delay: 225ms
}

.tp-btn-switch-2-animation-text:hover.bg-hover-black {
    background: var(--tp-common-black-4)
}

.tp-btn-switch-2-animation-text:hover.bg-hover-theme-1 {
    background: var(--tp-theme-1)
}

.tp-btn-2 {
    color: var(--tp-common-black);
    border-radius: 30px;
    padding: 16px 24px;
    line-height: 1;
    background: var(--tp-common-white);
    position: relative;
    z-index: 1;
    font-weight: 500;
    font-size: 15px
}

.tp-btn-border {
    border: 1px solid var(--tp-border-1)
}

.tp-btn-border-white {
    border: 1px solid #252525
}

.tp-btn-border-white:hover,
.tp-btn-border:hover {
    background: var(--tp-theme-primary);
    border-color: var(--tp-theme-primary)
}

.tp-btn-gradian {
    backdrop-filter: blur(80px);
    background: radial-gradient(170.08% 129.04%at 0 10.42%, #10302a 0, rgb(16 48 42/.1) 62.47%, rgb(180 231 23/.1) 100%)
}

.tp-btn-it-lg {
    padding: 17px 31px
}

.tp-btn-it-lg .btn-icon {
    margin-right: 9px
}

.tp-btn-it-lg:hover .btn-icon {
    -webkit-transform: translateX(10px);
    transform: translateX(10px)
}

.tp-btn-it-xl {
    padding: 22px 57px
}

.tp-btn-it-xl:hover {
    background: var(--tp-common-green-2);
    box-shadow: inset 0 4px 16px 1px var(--tp-common-green-2);
    color: var(--tp-common-black-1)
}

.tp-btn-pb-spacing {
    padding: 15px 31px 17px
}

.tp-btn-md-border,
.tp-btn-vp-group .tp-btn-circle,
.tp-section-it-subtitle-white,
.tp-section-pp-subtitle,
.tp-section-subtitle-white {
    border: 1px solid
}

.tp-btn-ai {
    padding: 14px 32px;
    z-index: 1
}

.tp-btn-ai::after {
    content: "";
    position: absolute;
    top: -2px;
    bottom: -2px;
    left: -2px;
    right: -2px;
    z-index: -2;
    border-radius: 101px;
    background-image: linear-gradient(90deg, #3627de 0, #f96501 50%, #3627de 100%);
    -moz-animation: 2s ease-in-out 1s infinite alternate forwards sliderTitle3;
    -webkit-animation: 2s ease-in-out 1s infinite alternate forwards sliderTitle3;
    animation: 2s ease-in-out 1s infinite alternate forwards sliderTitle3;
    background-size: 150% 150%
}

.tp-btn-ai,
.tp-btn-ai::before {
    border-radius: 100px;
    transition: .4s
}

.tp-btn-ai::before {
    position: absolute;
    content: "";
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: var(--tp-common-white);
    z-index: -1
}

.tp-btn-ai-transparent::before {
    background: #ebe1b3
}

.tp-btn-ai-transparent-2::before,
.tp-btn-ai:hover,
.tp-btn-ai:hover::before,
.tp-header-seo-bg,
.tp-sidebar-search-input input:focus {
    background: #fff0
}

.tp-btn-ai-xl {
    padding: 17px 20px
}

.tp-btn-ai-xxl {
    padding: 32px 41px;
    border-radius: 50px
}

.tp-btn-circle-dot {
    position: absolute;
    bottom: 0;
    left: 32px;
    width: 0;
    height: 0;
    -webkit-transition: .6s ease-out;
    -moz-transition: .6s ease-out;
    -ms-transition: .6s ease-out;
    -o-transition: .6s ease-out;
    transition: .6s ease-out;
    line-height: 20px;
    border-radius: 50%;
    -webkit-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    -o-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    border: 1px solid #fff0;
    z-index: -1;
    background: var(--tp-theme-primary)
}

.tp-btn-rounded {
    position: relative;
    z-index: 1;
    overflow: hidden
}

.tp-btn-rounded:hover .tp-btn-circle-dot {
    width: 420px;
    height: 420px
}

.tp-btn-group {
    display: flex;
    width: fit-content
}

.tp-btn-group>:first-child {
    transform: scale3d(.5, .5, 1);
    margin-inline-end: -52px
}

.tp-btn-group>:nth-child(2) {
    transform: scale3d(1, 1, 1)
}

.tp-btn-group>:nth-child(3) {
    transform: scale3d(1, 1, 1);
    margin-inline-start: 0
}

.tp-btn-group:hover>:first-child {
    margin-inline-end: 0
}

.tp-btn-group:hover>:first-child,
.tp-btn-group:hover>:nth-child(2),
.tp-btn-group:hover>:nth-child(3) {
    transform: scale3d(1, 1, 1);
    background: var(--tp-theme-primary)
}

.tp-btn-group:hover>:nth-child(3) {
    transform: scale3d(.5, .5, 1);
    margin-inline-start: -52px
}

.tp-btn-group .tp-btn-circle {
    text-align: center;
    width: 48px;
    height: 48px;
    font-weight: 500;
    font-size: 16px;
    line-height: 1.5;
    border-radius: 100%;
    display: flex;
    gap: 10px;
    align-items: center;
    justify-content: center;
    color: var(--tp-common-black);
    background: var(--tp-common-white)
}

.tp-btn-group .tp-btn-circle i {
    transform: rotate(-45deg)
}

.tp-btn-md {
    padding: 22px 33px;
    border-radius: 100px;
    z-index: 1;
    transition: .4s
}

.tp-btn-md-header {
    padding: 12px 16px
}

.tp-btn-vp-group .tp-btn-circle {
    background: #fff0;
    width: 60px;
    height: 60px;
    line-height: 60px
}

.tp-btn-vp-group .tp-btn-2 {
    background: #e9e9e9;
    font-weight: 700;
    font-size: 16px;
    color: var(--tp-common-black-5);
    border: 1px solid;
    padding: 21px 29px
}

.header-sticky .tp-btn-vp-group:hover>:nth-child(2),
.tp-btn-vp-group:hover>:first-child,
.tp-btn-vp-group:hover>:nth-child(2),
.tp-btn-vp-group:hover>:nth-child(3) {
    background: var(--tp-common-black-5);
    color: var(--tp-common-white)
}

.tp-btn-vp-group-primary:hover>:first-child,
.tp-btn-vp-group-primary:hover>:nth-child(2),
.tp-btn-vp-group-primary:hover>:nth-child(3) {
    background: var(--tp-common-white);
    color: var(--tp-common-black-5)
}

.tp-arrow-angle {
    --qode-hover-move-x: 110%;
    --qode-hover-move-y: 100%
}

.tp-arrow-angle path {
    transition: transform .38s cubic-bezier(.37, .08, .02, .93), opacity .18s ease-out
}

.tp-arrow-angle path:first-of-type,
.tp-left-right:hover .tp-arrow-angle path:nth-of-type(2) {
    transform: translateX(0) translateY(0);
    opacity: 1;
    transition-delay: .15s, .15s
}

.tp-arrow-angle path:nth-of-type(2) {
    transform: translateX(calc(-1*var(--qode-hover-move-x))) translateY(var(--qode-hover-move-y));
    opacity: .5;
    transition-delay: 0s, 0s
}

.tp-arrow-angle-pb path:nth-of-type(2) {
    transform: translateX(calc(1*var(--qode-hover-move-x))) translateY(var(--qode-hover-move-y))
}

.tp-arrow-svg-top-right {
    fill: currentColor;
    stroke: none
}

.tp-left-right .td-text {
    transform: translateY(1px)
}

.tp-left-right:hover .tp-arrow-angle path:first-of-type {
    transform: translateX(var(--qode-hover-move-x)) translateY(calc(-1*var(--qode-hover-move-y)));
    opacity: 0;
    transition-delay: 0s, 0s
}

.tp-left-right-pb:hover .tp-arrow-angle-pb path:nth-of-type(2) {
    transform: translateY(0) translateX(0)
}

.tp-left-right-pb:hover .tp-arrow-angle-pb path:first-of-type {
    transform: translateX(var(--qode-hover-move-x)) translateY(calc(1*var(--qode-hover-move-y)))
}

.tp-rounded-btn-wrap a {
    width: 160px;
    height: 160px;
    font-weight: 500;
    font-size: 18px;
    color: var(--tp-common-black);
    border: 1px solid var(--tp-border-1);
    background: var(--tp-common-white);
    border-radius: 50%;
    display: inline-block;
    text-align: center;
    line-height: 20px;
    padding-top: 40px
}

.tp-rounded-btn-wd a {
    font-family: var(--tp-ff-body);
    font-size: 15px
}

.loader-wrap svg,
.uncover {
    position: absolute;
    top: 0;
    width: 100%
}

.uncover {
    display: flex;
    flex-direction: row;
    left: 0;
    height: 100%
}

.uncover_slice {
    height: 100%;
    flex-grow: 1;
    background: #fff
}

.box {
    position: relative;
    overflow: hidden
}

.line-1,
.line-2 {
    stroke-dasharray: 1300;
    stroke-dashoffset: 2500;
    animation: 5s linear infinite forwards dash
}

.line-2 {
    stroke-dasharray: 1000;
    stroke-dashoffset: 2000
}

.tpswing {
    animation: 2s linear infinite alternate tpSwing
}

.tp-live-anim-spin {
    animation: 6s linear infinite tp_animation_spin
}

.title-slide-gradient {
    background-image: linear-gradient(90deg, #ff8000 0, #ff6cb2 50%, #9968ff 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: #fff0;
    background-clip: text;
    text-fill-color: #fff0;
    -moz-animation: 2s ease-in-out 1s infinite alternate forwards sliderTitle3;
    -webkit-animation: 2s ease-in-out 1s infinite alternate forwards sliderTitle3;
    animation: 2s ease-in-out 1s infinite alternate forwards sliderTitle3;
    background-size: 150% 150%
}

.tp-portfolio-2-thumb img,
.tp-service-md-icon svg,
.tp-service-sa-item-icon svg,
.tp-testimonial-thumb img,
.tp-testimonial-thumb-2 img,
.tpshake {
    transition: .4s
}

.tpshake-wrap:hover .tpshake {
    animation-name: tpshake;
    animation-timing-function: ease-in-out;
    animation-duration: .4s;
    animation-iteration-count: 1
}

.video-animetion {
    -webkit-transition: .5s;
    animation: 1s linear infinite ripple-red
}

.upslide {
    animation: 4s linear infinite alternate forwards upslide
}

.upslide-1 {
    animation: 4s linear infinite alternate forwards upslide-1
}

.containers {
    position: inherit
}

.tp-bg-grey {
    background: #f8f9f9
}

.tp-bg-grey-2 {
    background: #fbfbfb
}

.plumbing-bg {
    background: #fffbf5
}

.video-production-bg {
    background: #e9e9e9
}

.pricing-bg {
    background: #edefef
}

.nice-select {
    -webkit-tap-highlight-color: #fff0;
    clear: both;
    display: block;
    outline: 0;
    position: relative;
    -webkit-transition: .2s ease-in-out;
    transition: .2s ease-in-out;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    border: 1px solid #fff0;
    user-select: none;
    white-space: nowrap;
    width: auto;
    color: #999 !important;
    padding-left: 25px;
    padding-right: 25px;
    font-weight: 400;
    font-size: 16px;
    line-height: 56px
}

.nice-select:hover {
    border-color: ar(--tp-theme-primary)
}

.nice-select::after {
    position: absolute;
    content: "";
    top: 50%;
    right: 25px;
    color: var(--tp-grey-2);
    font-weight: 500;
    pointer-events: none;
    font-size: 18px;
    -webkit-transition: .15s ease-in-out;
    transition: .15s ease-in-out;
    margin-top: 0;
    transform-origin: center;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -o-transform: translateY(-50%);
    transform: translateY(-50%)
}

.nice-select.open::after {
    -webkit-transform: translateY(-50%) rotate(-180deg);
    -moz-transform: translateY(-50%) rotate(-180deg);
    -ms-transform: translateY(-50%) rotate(-180deg);
    -o-transform: translateY(-50%) rotate(-180deg);
    transform: translateY(-50%) rotate(-180deg)
}

.nice-select.open .list {
    opacity: 1;
    pointer-events: auto;
    -webkit-transform: scale(1) translateY(0);
    -ms-transform: scale(1) translateY(0);
    transform: scale(1) translateY(0)
}

.nice-select.disabled {
    border-color: #ededed;
    color: #999;
    pointer-events: none
}

.nice-select.disabled::after {
    border-color: #ccc
}

.nice-select.wide .list {
    left: 0 !important;
    right: 0 !important
}

.fraction-wrapper #paginations span:last-child,
.nice-select.right {
    float: right
}

.nice-select.right .list {
    left: auto;
    right: 0
}

.nice-select.small {
    font-size: 12px;
    height: 36px;
    line-height: 34px
}

.nice-select.small::after {
    height: 4px;
    width: 4px
}

.nice-select.small .option {
    line-height: 34px;
    min-height: 34px
}

.nice-select .list {
    width: 100%;
    border-radius: 5px;
    box-shadow: 0 0 0 1px rgb(68 68 68/.11);
    margin-top: 4px;
    opacity: 0;
    overflow: hidden;
    padding: 10px;
    pointer-events: none;
    position: absolute;
    top: 100%;
    left: 0;
    -webkit-transform-origin: 50%0;
    -ms-transform-origin: 50%0;
    transform-origin: 50%0;
    -webkit-transform: scale(.75) translateY(-21px);
    -ms-transform: scale(.75) translateY(-21px);
    transform: scale(.75) translateY(-21px);
    -webkit-transition: .2s cubic-bezier(.5, 0, 0, 1.25), opacity .15s ease-out;
    transition: .2s cubic-bezier(.5, 0, 0, 1.25), opacity .15s ease-out;
    z-index: 9;
    background: #fff
}

.nice-select .option {
    cursor: pointer;
    font-weight: 400;
    line-height: 40px;
    list-style: none;
    min-height: 40px;
    outline: 0;
    padding-left: 18px;
    padding-right: 29px;
    text-align: left;
    -webkit-transition: .2s;
    transition: .2s;
    border-radius: 12px
}

.dropdown-white-bg nav ul li .tp-submenu li:hover>a,
.nice-select .option:hover,
.tp-offcanvas-menu .tp-submenu li a:hover {
    color: var(--tp-common-black);
    background: #f8f8fb
}

.nice-select .option.disabled {
    color: #999;
    cursor: default;
    background: #fff0
}

.no-csspointerevents .nice-select .list,
.tp-footer-md-apoinment-form .tp-remember-input input[type=checkbox],
.tp-footer-md-apoinment-form .tp-remember-input input[type=radio],
.tp-offcanvas-menu ul li .tp-submenu {
    display: none
}

.no-csspointerevents .nice-select.open .list,
body.tp-magic-cursor #magic-cursor {
    display: block
}

.body-overlay,
.tp-offcanvas {
    position: fixed;
    top: 0;
    opacity: 0;
    visibility: hidden;
    transition: .45s ease-in-out
}

.body-overlay {
    left: 0;
    z-index: 995;
    width: 100%;
    height: 100%;
    background: rgb(24 24 24/.5)
}

.tp-offcanvas {
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
    right: -100%;
    width: 450px;
    bottom: 0;
    box-shadow: 0 16px -32px 0 rgb(0 0 0/.8);
    background-color: var(--tp-common-white);
    z-index: 997;
    padding: 50px;
    scrollbar-width: none;
    overflow-y: scroll
}

@media (max-width:574.98px) {
    .tp-offcanvas {
        width: 100%;
        padding: 40px 35px
    }
}

.tp-offcanvas.opened {
    right: 0;
    -webkit-transition: .4s cubic-bezier(.785, .135, .15, .86);
    -moz-transition: .4s cubic-bezier(.785, .135, .15, .86);
    transition: .4s cubic-bezier(.785, .135, .15, .86);
    transition-duration: .6s
}

.tp-offcanvas-menu,
.tp-offcanvas-top {
    margin-bottom: 40px
}

.tp-offcanvas-close-btn button {
    color: #000
}

.tp-offcanvas-close-btn button:hover {
    opacity: 1;
    -webkit-transform: rotate(90deg);
    -moz-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
    -o-transform: rotate(90deg);
    transform: rotate(90deg)
}

.tp-offcanvas-menu ul li .tp-submenu .homemenu.comeing-soon .homemenu-thumb::before {
    position: absolute;
    z-index: 22;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    content: "";
    backdrop-filter: blur(6px);
    border-radius: 6px;
    background: rgb(0 0 0/.2)
}

.tp-offcanvas-menu ul li .tp-submenu .homemenu:hover .homemenu-btn {
    opacity: 1;
    visibility: visible;
    top: 50%
}

.tp-offcanvas-menu ul li .tp-submenu .homemenu-btn {
    position: absolute;
    top: 55%;
    transform: translateY(-50%);
    left: 0;
    right: 0;
    text-align: center;
    opacity: 0;
    visibility: hidden;
    transition: .4s
}

.tp-offcanvas-social {
    margin-top: 30px
}

.tp-header-pb-contact ul,
.tp-hero-wd-customer,
.tp-offcanvas-social ul,
.tp-text-cst-title,
.tp-text-slider-item {
    display: flex;
    align-items: center
}

.list-none-check.serve-main-list,
.tp-blog-details-2-social ul li,
.tp-blog-details-social ul li,
.tp-blog-details-tag ul li,
.tp-blog-pagenation ul li,
.tp-footer-pp-widget ul li,
.tp-header-dropdown nav ul li,
.tp-header-md-social ul li,
.tp-header-pb-social ul li,
.tp-offcanvas-contact ul li,
.tp-offcanvas-menu ul,
.tp-offcanvas-social ul li,
.tp-service-item ul li,
.tp-sidebar-rc-tag ul li {
    list-style: none
}

.tp-header-md-contact ul li svg,
.tp-offcanvas-social ul li:not(:last-child) {
    margin-right: 8px
}

.tp-offcanvas-social ul li a {
    display: inline-block;
    text-align: center;
    width: 40px;
    height: 40px;
    line-height: 38px;
    border-radius: 40px;
    transition: .3s;
    color: var(--tp-common-black);
    border: 1px solid
}

.tp-offcanvas-social ul li a:hover {
    border-color: var(--tp-theme-primary);
    color: var(--tp-common-white);
    background: var(--tp-theme-primary)
}

.tp-offcanvas-title,
.tp-offcanvas-title.sm {
    margin-bottom: 15px;
    color: var(--tp-common-black)
}

.tp-offcanvas-title {
    font-size: 40px;
    line-height: 1;
    letter-spacing: -.8px;
    font-weight: 700
}

.tp-offcanvas-title.sm {
    font-size: 18px;
    font-weight: 500
}

.tp-error-wrapper img,
.tp-offcanvas-contact {
    margin-bottom: 55px
}

.tp-faq-details-para ul li:not(:last-child),
.tp-offcanvas-contact ul li:not(:last-child) {
    margin-bottom: 2px
}

.tp-offcanvas-contact ul li a,
.tp-offcanvas-content p {
    font-size: 16px;
    color: #414144;
    font-family: var(--tp-ff-inter)
}

.tp-offcanvas-contact ul li a {
    display: inline-block;
    position: relative
}

.tp-offcanvas-contact ul li a::after {
    position: absolute;
    bottom: 2px;
    right: 0;
    width: 0;
    height: 1px;
    content: "";
    transition: .4s;
    background: #1e1e1e
}

.tp-offcanvas-contact ul li a:hover::after {
    width: 100%;
    right: auto;
    left: 0
}

.tp-offcanvas-gallery {
    margin-bottom: 65px
}

.tp-offcanvas-gallery-img img {
    transition: .9s
}

.tp-offcanvas-gallery-img:hover img {
    transform: scale(1.2) rotate(-2deg)
}

.tp-offcanvas-content {
    margin-bottom: 45px
}

.tp-offcanvas-content p {
    font-weight: 400;
    line-height: 24px
}

.postbox__comment-reply a:hover,
.tp-offcanvas-menu ul li.active>.tp-menu-close {
    color: var(--tp-common-white);
    border-color: var(--tp-common-black);
    background: var(--tp-common-black)
}

.header-sticky .tp-header-md-top,
.header-sticky .tp-header-pb-top {
    display: none !important
}

.offcanvas-black-bg {
    background: #1c1d20
}

.offcanvas-black-bg .tp-offcanvas-menu .tp-submenu li a:hover,
.tp-main-menu nav>ul>li .submenu li:hover>a,
.tp-megamenu-list ul li a:hover {
    color: var(--tp-common-white);
    background: #2c2b2e
}

.offcanvas-black-bg .tp-menu-close {
    border-color: var(--tp-border-3);
    color: var(--tp-common-white)
}

.offcanvas-black-bg .tp-megamenu-wrapper.megamenu-black-bg {
    backdrop-filter: initial;
    background: #fff0;
    box-shadow: none
}

.offcanvas-black-bg .tp-offcanvas-contact ul li a,
.offcanvas-black-bg .tp-offcanvas-content p {
    color: rgb(255 255 255/.8)
}

.offcanvas-black-bg .tp-offcanvas-social ul li a {
    color: var(--tp-common-white);
    border: 1px solid
}

.offcanvas-black-bg .tp-offcanvas-menu ul li.active>.tp-menu-close,
.offcanvas-black-bg .tp-offcanvas-social ul li a:hover {
    color: var(--tp-common-black);
    background: var(--tp-common-white);
    border-color: var(--tp-border-3)
}

.offcanvas-black-bg .tp-offcanvas-social ul li a:hover {
    border-color: var(--tp-common-white)
}

.tp-breadcrumb-wrap,
.tp-header-2-spacing,
.tp-header-slider-wrapper {
    padding: 18px 0
}

.tp-about-2-btn,
.tp-about-it-rating-wrap,
.tp-breadcrumb-list ul,
.tp-funfact-panel-wrap,
.tp-pagination ul,
.tp-postbox-details-remember {
    display: flex
}

.tp-breadcrumb-list ul li {
    font-weight: 500;
    font-size: 13px;
    color: var(--tp-common-black-3);
    list-style: none
}

.tp-breadcrumb-list ul li span {
    width: 6px;
    height: 6px;
    display: inline-block;
    background: var(--tp-theme-primary);
    border-radius: 40px;
    margin: 0 10px
}

.tp-breadcrumb-list ul li a,
.tp-breadcrumb-list ul li a:hover,
.tp-footer-cst-menu ul li a,
.tp-footer-cst-menu ul li a:hover,
.tp-footer-wd-widget ul li a,
.tp-footer-wd-widget ul li a:hover,
.tp-service-item ul li a,
.tp-service-item ul li a:hover {
    background-image: linear-gradient(currentColor, currentColor), linear-gradient(currentColor, currentColor);
    background-position: 100% 100%, 0 100%;
    background-repeat: no-repeat
}

.tp-breadcrumb-list ul li a {
    color: var(--tp-grey-1);
    background-size: 0 1px, 0 1px
}

.tp-breadcrumb-2-spacing,
.tp-faq-hero-spacing {
    padding-top: 96px
}

.tp-breadcrumb-2-list ul li,
.tp-postbox-2-wrapper .postbox__comment-reply a {
    font-family: var(--tp-ff-dm);
    color: var(--tp-common-black-5)
}

.tp-breadcrumb-banner-list span svg {
    transform: translateY(6px);
    margin-right: 8px
}

.tp-breadcrumb-banner-content {
    padding: 26px 0 16px
}

.tp-breadcrumb-banner-spacing {
    padding-top: 540px
}

.tp-breadcrumb-banner-2-spacing {
    padding-top: 460px;
    padding-bottom: 42px
}

.tp-breadcrumb-3-border,
.tp-breadcrumb-3-white,
.tp-footer-it-bottom,
.tp-footer-main {
    border-top: 1px solid
}

.tp-breadcrumb-4-spacing {
    padding-top: 225px;
    padding-bottom: 510px
}

@media only screen and (min-width:1400px) and (max-width:1599px),
only screen and (min-width:1200px) and (max-width:1399px),
only screen and (min-width:992px) and (max-width:1199px) {
    .tp-breadcrumb-4-spacing {
        padding-bottom: 310px
    }
}

.tp-breadcrumb-4-spacing .tp-breadcrumb-3-white {
    border-top: none;
    padding-top: 0
}

.tp-breadcrumb-4-shape {
    padding-left: 255px
}

.tp-section-subtitle {
    border: 1px solid var(--tp-border-1);
    border-radius: 50px;
    padding: 6px 18px;
    display: inline-block
}

.tp-section-subtitle .borders {
    width: 8px;
    height: 8px;
    background: var(--tp-theme-secondary);
    border-radius: 30px;
    margin-right: 6px
}

.tp-section-pp-subtitle {
    border-radius: 100px;
    background: #0d0d0d;
    padding: 5px 24px
}

.tp-section-pp-white-subtitle {
    border: 1px solid #eee;
    background: #fff0
}

.tp-section-cst-subtitle {
    border: 0;
    padding: 0
}

.tp-section-it-subtitle {
    border: 1px solid #e4eae7;
    border-radius: 50px;
    padding: 2px 32px
}

.tp-header-sidebar-btn span {
    height: 2px;
    width: 25px;
    display: block;
    margin: 6px auto
}

.tp-header-sidebar-btn:hover span {
    animation: .8s cubic-bezier(.44, 1.1, .53, .99) forwards bar_anim
}

.tp-header-sidebar-btn:hover span:nth-child(2) {
    animation-delay: .1s
}

.tp-header-2-country {
    margin-left: 190px
}

.tp-header-2-menu-btn {
    border-radius: 100%;
    background: rgb(255 255 255/.1);
    border: 1px solid;
    backdrop-filter: blur(104px);
    width: 48px;
    height: 48px;
    padding-right: 14px
}

.tp-header-2-menu-btn span {
    background: var(--tp-theme-primary);
    width: 11px;
    margin: 4px 0 4px auto;
    border-radius: 10px;
    height: 2px
}

.tp-header-2-menu-btn span:nth-child(2) {
    width: 20px
}

.tp-header-wd-wrap {
    z-index: 99;
    position: relative
}

.tp-header-sa-search-btn,
.tp-hero-sa-social a {
    border: 1px solid #00000024
}

.tp-header-pp-menu-btn {
    border: 1px solid #ebebeb;
    background: var(--tp-common-white)
}

.tp-header-pp-email {
    border: 1px solid var(--tp-border-1);
    border-radius: 100px;
    display: inline-block;
    padding: 4px 18px;
    margin-left: 125px
}

.tp-blog-it-qoute-wrap,
.tp-header-cst-wrap {
    border-bottom: 1px solid
}

.tp-header-it-bg {
    border-radius: 60px;
    border: 1px solid;
    background: #fcfffc;
    padding: 0 40px;
    margin-top: 20px
}

.tp-header-it-btn {
    padding: 12px 26px;
    box-shadow: inset 0 4px 16px 1px #0c211b
}

.tp-header-it-btn:hover {
    background: var(--tp-common-green-2);
    box-shadow: inset 0 4px 16px 1px var(--tp-common-green-2)
}

.tp-header-it-menu-btn {
    background: 0 0;
    padding: 0;
    width: auto;
    border: 0
}

.tp-header-it-menu-btn span {
    margin: 4px auto 4px 0;
    border-radius: 30px
}

.tp-header-it-menu-btn span:first-child {
    width: 15px
}

.tp-header-pb-contact ul li {
    font-family: var(--tp-ff-inter);
    letter-spacing: -.04em;
    text-transform: capitalize;
    color: var(--tp-common-black-1);
    list-style: none;
    opacity: .8
}

.tp-header-pb-contact ul li:first-child {
    margin-right: 40px;
    padding-right: 40px;
    position: relative
}

.tp-header-pb-contact ul li:first-child::before {
    position: absolute;
    content: "";
    right: 0;
    top: 0;
    background: var(--tp-common-black-1);
    opacity: .1;
    width: 1px;
    height: 27px
}

.tp-header-pb-social ul {
    display: flex;
    align-items: center;
    justify-content: end;
    gap: 12px
}

.tp-header-pb-social ul li a:hover {
    color: var(--tp-theme-secondary)
}

.header-sticky .tp-main-menu-md>nav>ul>li,
.tp-header-pb-top {
    padding: 15px 0
}

.tp-header-pb-logobg {
    position: absolute;
    top: 0;
    left: 0;
    width: 285px;
    height: 100%;
    background: var(--tp-theme-secondary);
    clip-path: polygon(0 0, 87%0, 100% 100%, 0 100%);
    z-index: -1
}

.tp-header-pb-bottom {
    border-top: 1px solid #e7e7e1;
    border-bottom: 1px solid #e7e7e1
}

.tp-header-pb-helpline::before {
    position: absolute;
    content: "";
    height: 76px;
    width: 1px;
    background: #e7e7e1;
    top: -18px;
    left: 0
}

.tp-header-pb-helpline-icon {
    border-radius: 100%;
    background: var(--tp-theme-secondary);
    box-shadow: -2px -4px 6px -5px rgb(255 109 0/.5);
    width: 40px;
    height: 40px;
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative
}

.tp-header-pb-cart-count,
.tp-header-pb-helpline-icon::before {
    background: var(--tp-theme-secondary);
    border-radius: 50%;
    position: absolute
}

.tp-header-pb-helpline-icon::before {
    content: "";
    width: 48px;
    height: 48px;
    z-index: -1;
    opacity: .2
}

.tp-header-pb-cart-count {
    width: 22px;
    height: 22px;
    display: flex;
    justify-content: center;
    align-items: center;
    top: -7px;
    right: -12px
}

.tp-header-pb-sidebar {
    width: 76px;
    height: 76px;
    background: var(--tp-theme-secondary);
    margin-right: -12px
}

.tp-header-pb-sidebar span {
    background: var(--tp-grey-5);
    border-radius: 10px;
    height: 2px;
    width: 30px;
    margin: 5px auto 5px 24px
}

.tp-header-pb-sidebar span:first-child {
    width: 22px
}

.tp-header-pb-sidebar span:nth-child(3) {
    width: 16px
}

.tp-header-ai-bg {
    margin-top: 21px;
    border-radius: 20px;
    box-shadow: 0 4px 59px 2px rgb(0 0 0/.05);
    background: var(--tp-common-white);
    padding: 0 32px
}

.tp-header-md-social ul {
    display: flex;
    align-items: center;
    gap: 16px
}

.tp-header-md-social ul li a {
    font-size: 18px;
    color: var(--tp-common-white)
}

.tp-main-menu nav>ul>li .submenu li a,
.tp-megamenu-list ul li a {
    font-size: 16px;
    color: #bfbfc0;
    letter-spacing: -.01em;
    text-align: start
}

.tp-header-md-contact ul {
    display: flex;
    justify-content: end;
    gap: 20px
}

.tp-header-md-contact ul li {
    list-style: none;
    font-family: var(--tp-ff-dm);
    font-weight: 500;
    font-size: 14px;
    color: var(--tp-grey-5);
    display: flex;
    align-items: center
}

.tp-header-md-top {
    padding: 7px 0
}

.tp-header-md-search-btn {
    width: 40px;
    height: 40px;
    border: 2px solid;
    color: var(--tp-common-black-5)
}

.tp-header-vp-spacing {
    padding: 14px 0
}

.tp-header-slider-bar {
    transition: .3s;
    padding: 8px 17px;
    border-radius: 24px;
    display: inline-block;
    border: 1px solid;
    color: var(--tp-common-white)
}

.tp-header-slider-bar:hover {
    color: var(--tp-common-black);
    background: var(--tp-common-white);
    border-color: var(--tp-common-white)
}

.tp-header-slider-bar span svg {
    margin-right: 7px
}

.tp-header-slider-info a {
    font-size: 15px;
    font-weight: 600;
    font-family: var(--tp-ff-inter)
}

.tp-header-slider-right.right-white .tp-header-slider-bar {
    border: 1px solid;
    color: var(--tp-common-black)
}

.tp-header-slider-right.right-white .tp-header-slider-bar:hover,
.tp-portfolio-details-shedule-btn:hover {
    background: var(--tp-common-black);
    color: var(--tp-common-white)
}

.header-transparent {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    z-index: 9;
    width: 100%
}

.header-fixed,
.header-sticky {
    position: fixed;
    top: 0;
    right: 0;
    left: 0
}

.header-fixed {
    z-index: 55
}

.tp-main-menu nav>ul>li {
    list-style: none;
    display: inline-block;
    margin: 0 25px;
    position: relative
}

@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),
(max-width:574.98px) {
    .tp-main-menu nav>ul>li {
        margin: 0 18px
    }
}

.tp-main-menu nav>ul>li>a {
    font-weight: 700;
    font-size: 14px;
    color: var(--tp-common-black);
    display: inline-block;
    padding: 28px 0
}

.tp-main-menu nav>ul>li>a>span,
.tp-main-menu-ai>nav>ul>li>a>span {
    color: var(--tp-grey-2);
    display: inline-block;
    margin-left: 2px;
    transition: .4s
}

.tp-main-menu-ai>nav>ul>li>a>span {
    margin-left: 4px;
    transform: translateY(-1px);
    color: var(--tp-common-black)
}

.tp-main-menu nav>ul>li .submenu {
    position: absolute;
    top: 100%;
    left: 0;
    width: 260px;
    z-index: 99;
    opacity: 0;
    padding: 12px 0;
    transition: .5s;
    text-align: start;
    visibility: hidden;
    border-radius: 14px;
    transform-origin: 0 0;
    transform: scale(1, 0);
    backdrop-filter: blur(40px);
    background: rgb(38 37 40/.9);
    box-shadow: 0 20px 30px -8px rgb(19 19 22/.1)
}

.tp-main-menu nav>ul>li .submenu li {
    width: 100%;
    padding: 0 12px;
    border-radius: 8px;
    margin: 0
}

.tp-main-menu nav>ul>li .submenu li a {
    position: relative;
    border-radius: 8px;
    font-weight: 500;
    line-height: 1;
    padding: 12px 18px;
    display: inline-block;
    width: 100%;
    font-family: var(--tp-ff-inter)
}

.tp-main-menu nav>ul>li .submenu li .submenu {
    top: 0;
    left: 100%
}

.tp-main-menu nav ul li:hover>.submenu {
    visibility: visible;
    opacity: 1;
    transform: scale(1)
}

.tp-main-menu-wd>nav>ul>li>a {
    font-family: var(--tp-ff-p);
    font-weight: 500;
    font-size: 14px
}

.tp-main-menu-cst>nav>ul>li>a {
    font-family: var(--tp-ff-dm);
    color: var(--tp-common-black-1);
    padding: 35px 0
}

.tp-main-menu-it>nav>ul>li>a,
.tp-main-menu-pb>nav>ul>li>a {
    font-family: var(--tp-ff-inter);
    color: var(--tp-common-black-1);
    padding: 27px 0
}

.tp-main-menu-pb>nav>ul>li>a {
    font-family: var(--tp-ff-sora);
    padding: 25px 0
}

.tp-main-menu-ai>nav>ul>li {
    margin: 0;
    padding: 25px 0
}

.tp-header-slider-info a,
.tp-main-menu-ai>nav>ul>li:hover.has-dropdown>a>span,
.tp-main-menu-ai>nav>ul>li:hover>a {
    color: var(--tp-common-white)
}

.tp-main-menu-ai>nav>ul>li>a {
    font-family: var(--tp-ff-dm);
    color: var(--tp-common-black-5);
    padding: 7px 25px;
    border-radius: 50px
}

.tp-main-menu-md {
    margin-left: -23px
}

.tp-main-menu-md>nav>ul>li {
    padding: 29px 0
}

.tp-main-menu-vp>nav>ul>li>a {
    font-family: var(--tp-ff-sora);
    letter-spacing: -.02em;
    color: var(--tp-common-black-5)
}

.header-sticky {
    opacity: 1;
    width: 100%;
    z-index: 10;
    visibility: visible;
    background: rgb(255 255 255/.9);
    box-shadow: 0 2px 6px 0 rgb(19 19 22/.08);
    animation: .95s forwards headerSlideDown;
    -webkit-animation: .95s forwards headerSlideDown
}

.header-sticky .tp-header-menu>nav>ul>li>a {
    padding: 22px 0
}

.header-sticky.sticky-black-bg {
    background: rgb(38 37 40/.9)
}

.header-sticky.tp-header-ai-wrap .tp-header-ai-bg::after,
.header-sticky.tp-header-blur::after {
    position: absolute;
    content: "";
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    backdrop-filter: blur(40px);
    z-index: -1
}

.header-sticky.tp-header-ai-wrap {
    background: 0 0;
    box-shadow: none
}

.header-sticky.tp-header-ai-wrap .tp-header-ai-bg {
    position: relative;
    background: rgb(255 255 255/.9);
    border-radius: 20px
}

.header-sticky.tp-header-vp-spacing,
.tp-offcanvas-menu .tp-megamenu-list ul li {
    padding: 0
}

.header-sticky .tp-btn-vp-group .tp-btn-2 {
    background: #fff
}

.header-sticky .tp-main-menu-cst>nav>ul>li>a,
.header-sticky .tp-main-menu-it>nav>ul>li>a {
    padding: 21px 0
}

.header-sticky.tp-header-cst-wrap {
    border-bottom: none
}

.header-sticky .tp-header-it-bg {
    border-radius: 0;
    border: 0;
    background: 0 0;
    padding: 0;
    margin-top: 0
}

.header-sticky .tp-header-pb-bottom {
    border-top: none;
    border-bottom: none
}

.tp-header-dropdown nav ul li:hover>.tp-megamenu-wrapper {
    visibility: visible;
    opacity: 1;
    transition-duration: .2s;
    -webkit-transform: perspective(300px) rotateX(0);
    -moz-transform: perspective(300px) rotateX(0);
    -ms-transform: perspective(300px) rotateX(0);
    -o-transform: perspective(300px) rotateX(0);
    transform: perspective(300px) rotateX(0)
}

.sticky-white-bg .tp-megamenu-list ul li a span.new {
    color: #b64ade;
    background: rgb(182 74 222/.08)
}

.sticky-white-bg .tp-megamenu-list ul li a span.pop {
    color: #0db50e;
    background: rgb(13 181 14/.08)
}

.tp-megamenu-wrapper {
    position: absolute;
    transition: .1s;
    opacity: 0;
    visibility: hidden;
    padding-top: 25px;
    top: 100%;
    left: 0;
    right: 0;
    max-width: 1760px;
    margin: 0 auto;
    border-radius: 14px;
    transform-origin: top;
    -webkit-transform: perspective(300px) rotateX(-18deg);
    -moz-transform: perspective(300px) rotateX(-18deg);
    -ms-transform: perspective(300px) rotateX(-18deg);
    -o-transform: perspective(300px) rotateX(-18deg);
    transform: perspective(300px) rotateX(-18deg)
}

.tp-megamenu-wrapper.megamenu-black-bg {
    backdrop-filter: blur(40px);
    background: var(--tp-theme-primary-dark);
    box-shadow: 0 20px 30px -8px rgb(19 19 22/.1)
}

.tp-megamenu-wrapper.megamenu-white-bg {
    backdrop-filter: blur(40px);
    background: rgb(255 255 255/.9);
    box-shadow: 0 2px 6px 0 rgb(19 19 22/.12)
}

.tp-megamenu-wrapper.megamenu-white-bg .tp-megamenu-title {
    color: #111013;
    border-bottom: 1px solid #f3f3f6
}

.tp-megamenu-wrapper.megamenu-white-bg .tp-megamenu-list ul::after {
    background: #f3f3f6
}

.tp-megamenu-wrapper.megamenu-white-bg .tp-megamenu-list ul li a:hover {
    font-weight: inherit !important
}

.tp-megamenu-title {
    font-weight: 600;
    font-size: 13px;
    line-height: 1;
    margin-bottom: 0;
    padding-left: 40px;
    padding-bottom: 25px;
    text-align: start;
    color: var(--tp-common-white);
    border-bottom: 1px solid;
    font-family: var(--tp-ff-inter)
}

.tp-faq-cst-tag,
.tp-megamenu-list {
    height: 100%
}

.tp-megamenu-list ul {
    position: relative;
    height: 100%;
    padding-top: 18px;
    padding-bottom: 50px
}

.tp-megamenu-list ul::after {
    position: absolute;
    content: "";
    top: 0;
    left: 0;
    width: 1px;
    height: 100%;
    background: rgb(255 255 255/.06)
}

.tp-megamenu-list ul li {
    padding: 0 20px
}

.tp-megamenu-list ul li:not(:last-child) {
    margin-bottom: 10px
}

.tp-megamenu-list ul li a,
.tp-megamenu-list ul li a span {
    line-height: 1;
    display: inline-block;
    font-family: var(--tp-ff-inter)
}

.tp-megamenu-list ul li a {
    position: relative;
    width: 100%;
    font-weight: 600;
    padding: 12px 18px;
    border-radius: 8px
}

.tp-megamenu-list ul li a span {
    font-size: 13px;
    font-weight: 800;
    padding: 6px 8px;
    border-radius: 20px;
    margin-left: 3px;
    text-transform: capitalize;
    letter-spacing: .7px
}

.tp-megamenu-list ul li a span.hot {
    color: #ff535b;
    background: rgb(255 83 91/.08)
}

.tp-megamenu-list ul li a span.new {
    color: #fff669;
    background: rgb(255 246 105/.08)
}

.tp-megamenu-list ul li a span.pop {
    color: #19e41a;
    background: rgb(25 228 26/.08)
}

.tp-megamenu-thumb {
    height: 100%;
    position: absolute;
    top: 0;
    right: 0;
    width: 17%
}

.tp-megamenu-thumb img {
    height: 100%;
    object-fit: cover;
    width: 100%;
    overflow: hidden
}

.dropdown-white-bg nav ul li .tp-submenu {
    background: rgb(255 255 255/.9)
}

.dropdown-white-bg nav ul li .tp-submenu li a,
.dropdown-white-bg nav ul li .tp-submenu li.menu-item-has-children>a::after {
    color: #636368
}

.tp-offcanvas-menu ul li {
    position: relative !important
}

.tp-offcanvas-menu ul li>a {
    padding: 8px 0;
    display: block;
    font-size: 16px;
    font-weight: 500;
    font-family: var(--tp-ff-p)
}

.tp-offcanvas-menu ul li.active>.tp-menu-close i {
    -webkit-transform: rotate(90deg);
    -moz-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
    -o-transform: rotate(90deg);
    transform: rotate(90deg);
    color: var(--tp-common-white)
}

.tp-offcanvas-menu ul li .tp-submenu.submenu {
    padding-left: 10px
}

.tp-offcanvas-menu .tp-megamenu-wrapper.megamenu-white-bg {
    backdrop-filter: none;
    background: #fff0;
    box-shadow: none
}

.tp-offcanvas-menu .mega-menu {
    width: auto;
    opacity: 1;
    visibility: visible;
    transition: none;
    position: static;
    display: none;
    -webkit-transform: perspective(0) rotateX(0);
    -moz-transform: perspective(0) rotateX(0);
    -ms-transform: perspective(0) rotateX(0);
    -o-transform: perspective(0) rotateX(0);
    transform: perspective(0) rotateX(0)
}

.tp-offcanvas-menu .tp-megamenu-list ul li a {
    padding: 8px 10px;
    font-size: 17px
}

.tp-offcanvas-menu .tp-submenu li a {
    padding: 8px 10px;
    border-radius: 10px;
    font-size: 15px
}

.tp-menu-close {
    position: absolute;
    right: 0;
    top: 6px;
    height: 30px;
    width: 30px;
    font-size: 12px;
    line-height: 29px;
    text-align: center;
    border: 1px solid
}

.tp-menu-close i {
    transition: .3s
}

.tp-postbox-title {
    font-size: 35px;
    line-height: 129%
}

.tp-postbox-text {
    font-size: 18px;
    line-height: 144%;
    color: var(--tp-grey-1)
}

.tp-postbox-slider-arrow-wrap button {
    height: 50px;
    width: 50px;
    line-height: 50px;
    text-align: center;
    font-size: 18px;
    border-radius: 50%;
    color: var(--tp-common-white);
    border: 1px solid var(--tp-common-white);
    transition: .3s
}

.tp-postbox-slider-arrow-wrap button:hover {
    color: var(--tp-common-black);
    background: var(--tp-common-white)
}

.tp-postbox-slider-arrow-wrap .tp-postbox-arrow-prev {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    left: 30px;
    z-index: 9
}

.tp-postbox-slider-arrow-wrap .tp-postbox-arrow-next {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: 30px;
    z-index: 9
}

.tp-postbox-video-btn {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    left: 0;
    right: 0;
    margin: 0 auto
}

.tp-postbox-details-form {
    background: var(--tp-common-white-2);
    padding: 55px 50px 60px
}

.tp-postbox-details-input .tp-input,
.tp-postbox-details-input .tp-select {
    height: 46px
}

.tp-postbox-details-input .tp-input,
.tp-postbox-details-input .tp-select,
.tp-postbox-details-input .tp-textarea {
    width: 100%;
    font-family: var(--tp-ff-p);
    font-weight: 400;
    font-size: 14px;
    color: var(--tp-common-black);
    border-radius: 0;
    background: var(--tp-common-white)
}

.tp-postbox-details-input .tp-input::placeholder,
.tp-postbox-details-input .tp-select::placeholder,
.tp-postbox-details-input .tp-textarea::placeholder {
    color: #999;
    font-weight: 400;
    font-size: 14px
}

.tp-postbox-details-input .tp-input:focus,
.tp-postbox-details-input .tp-select:focus,
.tp-postbox-details-input .tp-textarea:focus {
    background: #fff0;
    border-color: var(--tp-common-black)
}

.tp-postbox-details-input .tp-textarea {
    height: 100px
}

.tp-postbox-details-remember label {
    font-family: var(--tp-ff-p);
    font-weight: 300;
    font-size: 16px;
    color: var(--tp-grey-1);
    cursor: pointer
}

.tp-postbox-details-remember .tp-checkbox {
    appearance: none;
    -moz-appearance: none;
    display: block;
    width: 18px;
    height: 18px;
    outline: 0;
    flex: 0 0 auto;
    background: var(--tp-common-white);
    -webkit-transform: translateY(-2.5px);
    -moz-transform: translateY(-2.5px);
    -ms-transform: translateY(-2.5px);
    -o-transform: translateY(-2.5px);
    padding: 0;
    margin: 0 10px 0 0;
    transform: translateY(4px);
    border-radius: 0
}

.tp-postbox-details-remember .tp-checkbox:checked {
    position: relative;
    border-color: #fff0;
    background: var(--tp-theme-primary)
}

.tp-postbox-details-remember .tp-checkbox:checked::after {
    box-sizing: border-box;
    position: absolute;
    content: "";
    font-weight: 700;
    font-family: var(--tp-ff-fontawesome);
    font-size: 14px;
    color: var(--tp-common-black);
    top: 49%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    -o-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%)
}

.tp-postbox-2-wrapper .tp-service-details-content ul li p {
    font-weight: 400;
    font-family: var(--tp-ff-dm)
}

.tp-postbox-2-wrapper .tp-service-details-content ul li,
.tp-service-3-item ul li:not(:last-child) {
    margin-bottom: 22px
}

.tp-postbox-2-wrapper .tp-blog-details-tag ul li a {
    font-family: var(--tp-ff-dm);
    color: var(--tp-common-black)
}

.tp-postbox-2-wrapper .postbox__comment-name span,
.tp-postbox-2-wrapper .postbox__comment-text p {
    color: var(--tp-common-black-5);
    font-family: var(--tp-ff-dm)
}

.tp-postbox-2-wrapper .tp-postbox-details-input .tp-input::-webkit-input-placeholder,
.tp-postbox-2-wrapper .tp-postbox-details-input .tp-select::-webkit-input-placeholder,
.tp-postbox-2-wrapper .tp-postbox-details-input .tp-textarea::-webkit-input-placeholder {
    font-family: var(--tp-ff-dm)
}

.tp-postbox-2-wrapper .tp-postbox-details-input .tp-input::-moz-placeholder,
.tp-postbox-2-wrapper .tp-postbox-details-input .tp-select::-moz-placeholder,
.tp-postbox-2-wrapper .tp-postbox-details-input .tp-textarea::-moz-placeholder {
    font-family: var(--tp-ff-dm)
}

.tp-postbox-2-wrapper .tp-postbox-details-input .tp-input:-moz-placeholder,
.tp-postbox-2-wrapper .tp-postbox-details-input .tp-select:-moz-placeholder,
.tp-postbox-2-wrapper .tp-postbox-details-input .tp-textarea:-moz-placeholder {
    font-family: var(--tp-ff-dm)
}

.tp-postbox-2-wrapper .tp-postbox-details-input .tp-input:-ms-input-placeholder,
.tp-postbox-2-wrapper .tp-postbox-details-input .tp-select:-ms-input-placeholder,
.tp-postbox-2-wrapper .tp-postbox-details-input .tp-textarea:-ms-input-placeholder {
    font-family: var(--tp-ff-dm)
}

.tp-postbox-2-wrapper .tp-postbox-details-input .tp-input::placeholder,
.tp-postbox-2-wrapper .tp-postbox-details-input .tp-select::placeholder,
.tp-postbox-2-wrapper .tp-postbox-details-input .tp-textarea::placeholder {
    font-family: var(--tp-ff-dm)
}

.postbox__comment ul li {
    margin-bottom: 45px;
    list-style: none
}

.postbox__comment ul li.children {
    margin-left: 65px
}

.postbox__comment-box {
    padding-top: 20px
}

.postbox__comment-info,
.tp-feature-md-icon img,
.tp-hero-2-impact-wrap .shape {
    flex: 0 0 auto
}

.postbox__comment-avater img {
    width: 90px;
    height: 90px;
    border-radius: 50%
}

.postbox__comment-name,
.tp-service-item ul li:not(:last-child) {
    margin-bottom: 17px
}

.postbox__comment-name h5 {
    font-size: 20px;
    font-weight: 700;
    line-height: 1;
    letter-spacing: -.4px;
    color: var(--tp-common-black);
    margin-bottom: 0
}

.postbox__comment-name span,
.postbox__comment-reply a {
    color: #414144;
    font-size: 17px;
    font-weight: 400;
    line-height: 1
}

.postbox__comment-reply a {
    color: #19191a;
    font-size: 15px;
    padding: 5px 20px;
    border: 1px solid #e0e2e3;
    border-radius: 30px
}

.postbox__comment-text p {
    color: #5d5d63;
    font-size: 17px;
    line-height: 26px
}

.tp-sidebar-search-input input {
    width: 100%;
    height: 60px;
    font-family: var(--tp-ff-heading);
    line-height: 70px;
    outline: 0;
    font-size: 16px;
    padding: 0 50px 0 25px;
    background: var(--tp-common-white-2);
    color: var(--tp-common-black);
    border: 1px solid #fff0;
    border-radius: 0
}

.tp-sidebar-search-input input::-webkit-input-placeholder {
    color: var(--tp-grey-1);
    font-size: 16px;
    font-weight: 400;
    border-color: #d9d9d9
}

.tp-sidebar-search-input input::-moz-placeholder {
    color: var(--tp-grey-1);
    font-size: 16px;
    font-weight: 400;
    border-color: #d9d9d9
}

.tp-sidebar-search-input input:-moz-placeholder {
    color: var(--tp-grey-1);
    font-size: 16px;
    font-weight: 400;
    border-color: #d9d9d9
}

.tp-sidebar-search-input input:-ms-input-placeholder {
    color: var(--tp-grey-1);
    font-size: 16px;
    font-weight: 400;
    border-color: #d9d9d9
}

.tp-sidebar-search-input input::placeholder {
    color: var(--tp-grey-1);
    font-size: 16px;
    font-weight: 400;
    border-color: #d9d9d9
}

.tp-sidebar-search-input button {
    position: absolute;
    top: 0;
    right: 25px;
    height: 100%;
    line-height: 60px;
    color: var(--tp-common-black)
}

.tp-sidebar-widget {
    border: 1px solid var(--tp-border-1);
    padding: 45px 30px 5px
}

.tp-sidebar-widget-title {
    font-family: var(--tp-ff-heading);
    font-weight: 700;
    font-size: 25px
}

.tp-sidebar-widget-content ul li {
    list-style: none;
    margin-bottom: 17px
}

.tp-sidebar-widget-content ul li a {
    font-family: var(--tp-ff-heading);
    font-weight: 500;
    font-size: 18px;
    color: var(--tp-grey-1);
    display: flex;
    justify-content: space-between
}

.tp-sidebar-widget-content ul li a span {
    display: inline-block;
    margin-left: 10px
}

.tp-sidebar-rc-post-tag,
.tp-sidebar-rc-tag ul li a {
    color: var(--tp-grey-1);
    border-radius: 100px;
    line-height: 1
}

.tp-sidebar-rc-post-tag {
    font-family: var(--tp-ff-p);
    font-weight: 400;
    font-size: 14px;
    border: 1px solid var(--tp-border-1);
    display: inline-block;
    padding: 5px 16px
}

.tp-blog-details-link a:hover,
.tp-hero-social a:hover,
.tp-portfolio-showcase-nav span:hover,
.tp-service-inner-item .tp-service-pp-category span:hover,
.tp-sidebar-rc-post-tag:hover {
    background: var(--tp-common-black);
    color: var(--tp-common-white);
    border-color: var(--tp-common-black)
}

.tp-sidebar-rc-post-title {
    font-size: 18px;
    line-height: 111%;
    color: var(--tp-common-black)
}

.tp-sidebar-rc-post-dates {
    font-weight: 400;
    font-size: 14px;
    color: var(--tp-grey-1)
}

.tp-sidebar-rc-tag ul {
    display: flex;
    gap: 15px;
    flex-wrap: wrap
}

.tp-sidebar-rc-tag ul li a {
    font-family: var(--tp-ff-heading);
    font-weight: 500;
    font-size: 16px;
    background: var(--tp-common-white-2);
    padding: 2px 14px
}

@media only screen and (min-width:1200px) and (max-width:1399px),
(max-width:574.98px) {
    .tp-sidebar-rc-tag ul li a {
        padding: 2px 6px
    }
}

.tp-blog-pagenation ul li a.active,
.tp-blog-pagenation ul li a:hover,
.tp-sidebar-rc-tag ul li a:hover {
    background: var(--tp-theme-primary);
    color: var(--tp-common-black)
}

.tp-sidebar-banner {
    padding: 50px 30px
}

.tp-blog-title-wrap .tp-section-title {
    margin-left: 205px
}

.tp-blog-meta {
    border: 1px solid #eee;
    border-radius: 100px;
    display: inline-block;
    padding: 1px 12px
}

.tp-blog-details-dates span.borders,
.tp-blog-meta span.borders {
    width: 8px;
    height: 8px;
    background: var(--tp-grey-2);
    display: inline-block;
    border-radius: 20px
}

.tp-blog-meta span.borders {
    margin: 0 4px
}

.tp-blog-2-item .tp-blog-meta span.borders {
    background: #fff0;
    border: 1px solid var(--tp-grey-1)
}

.tp-blog-wd-shape {
    align-items: center !important
}

.tp-blog-wd-tag {
    border: 1px solid #eee;
    border-radius: 100px;
    padding: 1px 15px
}

.tp-about-bottom,
.tp-blog-sa-border,
.tp-footer-bottom-white {
    border-top: 1px solid var(--tp-border-1)
}

.tp-blog-pp-item {
    border: 1px solid var(--tp-border-1);
    padding-bottom: 14px
}

.tp-blog-pagenation ul {
    display: flex;
    gap: 20px
}

.tp-blog-pagenation ul li a {
    font-weight: 500;
    font-size: 16px;
    color: var(--tp-grey-1);
    width: 40px;
    height: 40px;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 50%
}

.tp-blog-details-link a,
.tp-blog-pagenation-nav {
    border: 1px solid var(--tp-border-1);
    display: flex;
    align-items: center
}

.tp-blog-pagenation-nav {
    font-family: var(--tp-ff-heading);
    font-weight: 500;
    font-size: 15px;
    color: var(--tp-common-black);
    border-radius: 100px;
    padding: 6px 17px;
    transition: .4s
}

.tp-blog-details-social ul li a:hover,
.tp-blog-details-tag ul li a:hover,
.tp-blog-pagenation-nav:hover {
    background: var(--tp-theme-primary);
    color: var(--tp-common-black);
    border-color: var(--tp-theme-primary)
}

.tp-blog-pagenation-wrap {
    display: flex;
    justify-content: space-between;
    gap: 20px;
    flex-wrap: wrap
}

.tp-blog-top-content {
    padding: 70px 230px 100px;
    background: var(--tp-common-white);
    margin-top: -180px;
    position: relative;
    z-index: 2
}

.tp-blog-top-title {
    text-underline-offset: 4px
}

.tp-blog-details-dates span.borders {
    margin: 0 10px;
    transform: translateY(-2px)
}

.tp-blog-details-link {
    display: flex;
    gap: 15px
}

.tp-blog-details-link a {
    width: 30px;
    height: 30px;
    justify-content: center;
    border-radius: 50%
}

.tp-blog-details-link-wrap {
    border: 1px solid var(--tp-border-1);
    border-radius: 10px;
    padding: 15px 25px 5px
}

.tp-blog-details-tag ul {
    display: flex;
    gap: 10px;
    flex-wrap: wrap
}

.tp-blog-details-tag ul li a {
    color: var(--tp-grey-1);
    border: 1px solid #eee;
    border-radius: 100px;
    display: inline-block;
    padding: 11px 17px;
    line-height: 1
}

.tp-blog-details-link-wrap,
.tp-blog-details-tag-wrap {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap
}

.tp-blog-details-social ul {
    display: flex;
    gap: 10px
}

.tp-blog-details-social ul li a {
    border: 1px solid var(--tp-border-1);
    width: 40px;
    height: 40px;
    color: var(--tp-grey-1);
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center
}

.dgm-about-thumb,
.tp-blog-cst-para {
    margin-left: 100px
}

.tp-blog-cst-thumb {
    overflow: hidden;
    border-radius: 12px
}

.tp-blog-cst-thumb img {
    border-radius: 12px;
    transition: .6s
}

.tp-blog-cst-item {
    padding: 30px;
    border-radius: 20px;
    background: var(--tp-common-white);
    transition: .4s
}

.tp-blog-cst-item:hover .tp-blog-cst-thumb img,
.tp-contact-us-content:hover .tp-contact-us-thumb img,
.tp-footer-cst-btp:hover,
.tp-portfolio-2-item:hover .tp-portfolio-2-thumb img,
.tp-portfolio-pb-item:hover .tp-portfolio-pb-thumb img,
.tp-process-pp-video-inner:hover .tp-process-pp-video-img,
.tp-service-cst-item:hover .tp-service-cst-thumb img,
.tp-testimonial-thumb-2:hover img,
.tp-testimonial-thumb:hover img {
    transform: scale(1.1)
}

.tp-blog-cst-content {
    padding: 30px 6px 0
}

@media only screen and (min-width:992px) and (max-width:1199px),
only screen and (min-width:576px) and (max-width:767px),
(max-width:574.98px) {
    .tp-blog-cst-dates {
        margin-right: 20px
    }
}

.tp-footer-top-title,
.tp-portfolio-sa-title {
    font-size: 145px
}

.tp-about-cst-tab ul,
.tp-footer-social ul {
    display: flex;
    flex-wrap: wrap
}

.tp-footer-social ul li {
    margin-right: 20px;
    margin-bottom: 10px;
    list-style: none
}

.tp-footer-social ul li a {
    font-family: var(--tp-ff-heading);
    font-weight: 500;
    font-size: 16px;
    color: var(--tp-grey-2);
    background: #1a1a1ad4;
    display: inline-block;
    padding: 5px 20px;
    border-radius: 100px
}

.tp-footer-social ul li a i {
    margin-right: 5px
}

.tp-footer-btn a {
    background: #1a1a1ad4;
    border-color: #0d0d0d;
    color: var(--tp-common-white)
}

.tp-footer-widget-form .tp-input {
    background: #1a1a1ad4;
    border-radius: 10px;
    width: 100%;
    height: 70px;
    border: 1px solid #fff0;
    font-weight: 500;
    font-size: 16px;
    color: var(--tp-common-white);
    padding: 5px 80px 5px 30px
}

.tp-footer-widget-form .tp-input::placeholder {
    font-weight: 500;
    font-size: 16px;
    color: var(--tp-grey-2)
}

.tp-footer-widget-form .tp-button {
    position: absolute;
    right: 30px;
    top: 50%;
    transform: translateY(-50%)
}

.tp-footer-copyright p span {
    transform: translateY(-2px);
    display: inline-block
}

.tp-footer-bottom {
    border-top: 1px solid;
    padding: 22px 0 20px
}

.tp-about-sa-shape3,
.tp-footer-shape {
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: -1
}

.tp-footer-menu ul {
    display: flex;
    align-items: center;
    justify-content: end
}

.tp-footer-menu ul li {
    margin-left: 50px;
    margin-bottom: 5px;
    list-style: none
}

.tp-footer-menu ul li a {
    font-weight: 500;
    font-size: 15px;
    color: var(--tp-common-white)
}

.tp-footer-2-btn a {
    font-size: 15px;
    font-family: var(--tp-ff-p);
    width: 200px;
    height: 200px;
    padding-top: 60px
}

.tp-footer-wd-desk {
    border: 1px solid;
    border-radius: 10px;
    padding: 14px 20px;
    display: flex;
    align-items: center
}

.tp-footer-wd-desk span {
    width: 40px;
    height: 40px;
    background: var(--tp-common-blue);
    border-radius: 50px;
    text-align: center;
    line-height: 37px;
    display: inline-block;
    margin-right: 10px;
    flex: 0 0 auto
}

.tp-footer-wd-widget ul li {
    list-style: none;
    margin-bottom: 6px
}

.tp-footer-wd-widget ul li span {
    font-weight: 500;
    font-size: 10px;
    color: var(--tp-common-white);
    background: var(--tp-theme-primary);
    display: inline-block;
    padding: 2px 8px;
    border-radius: 100px;
    line-height: 1;
    margin-left: 5px
}

.tp-footer-wd-widget ul li a {
    font-weight: 400;
    font-size: 14px;
    color: var(--tp-grey-1);
    display: inline-block;
    background-size: 0 1px, 0 1px
}

.tp-footer-wd-widget-form .tp-input {
    background: #fff0;
    border: 1px solid;
    color: var(--tp-common-black);
    font-weight: 400
}

.tp-footer-wd-widget-form .tp-input::placeholder {
    font-weight: 400;
    font-size: 16px;
    line-height: 162%;
    color: var(--tp-grey-2)
}

.tp-footer-wd-social a {
    width: 36px;
    height: 36px;
    display: inline-block;
    border: 1px solid;
    border-radius: 100px;
    text-align: center;
    line-height: 36px;
    color: var(--tp-grey-1);
    margin-right: 9px;
    flex: 0 0 auto
}

.tp-footer-cst-btp,
.tp-footer-pp-social ul {
    justify-content: center
}

.tp-footer-wd-social a:hover {
    color: var(--tp-common-black);
    background: var(--tp-theme-primary);
    border-color: var(--tp-theme-primary)
}

.tp-footer-wd-bottom {
    border-color: var(--tp-border-1)
}

.tp-footer-sa-widget .tp-footer-wd-social a:hover,
.tp-footer-sa-widget ul li span {
    background: var(--tp-common-nights);
    color: var(--tp-common-white)
}

.al-copyright-seo-middle a:hover,
.al-copyright-seo-right ul li a:hover,
.tp-contact-us-text a:hover p,
.tp-footer-pp-link a:hover,
.tp-footer-pp-widget ul li a:hover,
.tp-footer-sa-widget ul li a:hover,
.tp-funfact-green-wrap.pink-style .tp-funfact-number span,
.tp-service-md-item:hover .tp-service-md-btn,
.tp-service-md-item:hover .tp-service-md-text,
.tp-service-md-item:hover .tp-service-md-title {
    color: var(--tp-common-white)
}

.tp-footer-sa-widget .tp-input {
    background: #0d0d0d;
    border: #fff0;
    color: var(--tp-common-white)
}

.tp-footer-sa-widget .tp-footer-wd-social a {
    border: 1px solid;
    color: #525252
}

.tp-footer-sa-widget .tp-footer-wd-desk {
    background: #0d0d0d;
    border-color: #0d0d0d
}

.tp-footer-sa-bottom {
    border-color: rgb(153 153 153/.1)
}

.tp-footer-pp-link a,
.tp-footer-pp-widget ul li a {
    font-weight: 500;
    color: var(--tp-grey-2);
    display: inline-block
}

.tp-footer-pp-link a {
    font-size: 25px;
    background: #1a1a1ad4;
    border-radius: 100px;
    padding: 15px 41px;
    margin-bottom: 10px
}

.tp-footer-pp-widget ul li a {
    font-size: 18px;
    padding: 6px 0
}

.tp-footer-pp-shape {
    position: absolute;
    top: 0;
    right: 0;
    width: 20%
}

.tp-footer-pp-shape-2 {
    position: absolute;
    top: 0;
    left: 0;
    width: 20%
}

.tp-footer-cst-dec {
    color: #c6caca
}

.tp-footer-cst-widget ul li a {
    font-family: var(--tp-ff-dm);
    color: #c6caca
}

.tp-footer-cst-widget ul li span {
    font-family: var(--tp-ff-dm);
    font-size: 12px;
    color: var(--tp-common-black-1)
}

.tp-footer-cst-widget .tp-footer-wd-desk {
    border: 1px solid #27433e;
    padding: 9px 38px 9px 20px;
    display: inline-block
}

.tp-about-md-expreance-content,
.tp-footer-cst-widget-form {
    margin-left: -30px
}

.tp-footer-cst-widget-form .tp-input {
    height: 60px;
    border: 1px solid #27433e;
    font-family: var(--tp-ff-dm);
    color: var(--tp-grey-5)
}

.tp-footer-cst-widget-form .tp-input::placeholder {
    color: #c6caca;
    font-family: var(--tp-ff-dm)
}

.tp-footer-cst-widget-form .tp-footer-wd-social a {
    width: 40px;
    height: 40px;
    border: 1px solid #27433e;
    line-height: 40px;
    color: var(--tp-grey-5)
}

.tp-footer-cst-widget-form .tp-footer-wd-social a:hover {
    color: var(--tp-common-black-1);
    background: var(--tp-common-green-2);
    border-color: var(--tp-common-green-2)
}

.tp-footer-cst-menu-wrap {
    padding: 36px 0
}

.tp-footer-cst-menu ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: center
}

.tp-footer-cst-menu ul li {
    list-style: none;
    margin: 0 12px;
    padding: 5px 0
}

.tp-footer-cst-menu ul li a {
    font-family: var(--tp-ff-dm);
    font-weight: 400;
    font-size: 13px;
    color: var(--tp-common-black-1);
    display: inline-block;
    background-size: 0 1px, 0 1px
}

.tp-footer-cst-bottom {
    padding-top: 26px;
    padding-bottom: 14px
}

.tp-footer-cst-btp {
    width: 80px;
    height: 80px;
    display: flex;
    align-items: center;
    background: var(--tp-common-green-2);
    border-radius: 50%
}

.tp-footer-cst-banner {
    padding: 110px 0 90px
}

.tp-footer-cst-banner-shape {
    position: absolute;
    bottom: 5px;
    left: 0;
    width: 100%;
    z-index: -1
}

.tp-footer-it-widget ul li a {
    color: var(--tp-grey-5);
    opacity: .8
}

.tp-hero-pp-social span,
.tp-hero-social span {
    font-family: var(--tp-ff-heading);
    font-size: 18px
}

.tp-footer-it-widget-form {
    width: 344px;
    margin-left: 0
}

.tp-footer-it-widget-form .tp-input {
    border: 1px solid;
    background: #fff0;
    font-family: var(--tp-ff-inter)
}

.tp-footer-it-widget-form .tp-input::placeholder {
    font-family: var(--tp-ff-inter);
    opacity: .8;
    color: var(--tp-grey-5)
}

.tp-footer-it-copyright,
.tp-footer-md-widget p {
    color: rgb(243 241 242/.8)
}

.tp-footer-it-copyright a {
    color: #f3f1f2
}

.tp-footer-it-bigtext {
    font-size: 600px;
    line-height: .68;
    color: #999;
    margin-bottom: -10px;
    margin-top: 25px;
    letter-spacing: 0
}

.text-scale-anim {
    white-space: pre-wrap;
    transform-origin: top left
}

.al-step-icon,
.al-step-item,
.al-step-number,
.otp-content .otp-timer-conatiner,
.tp-contact-us-text a,
.tp-letter-span,
.tp-pagination ul li,
.tp-portfolio-cst-img-wrapper .hover-image,
.tp-word-span {
    display: inline-block
}

.tp-hero-spacing {
    padding-top: 170px
}

.tp-hero-title {
    font-weight: 600;
    font-size: 60px;
    line-height: 107%
}

@media only screen and (min-width:1400px) and (max-width:1599px) {
    .tp-section-md-title {
        font-size: 55px
    }

    .tp-main-menu-pb>nav>ul>li {
        margin: 0 20px
    }

    .tp-megamenu-title {
        padding-left: 23px
    }

    .tp-megamenu-list ul li a {
        font-size: 14px;
        padding: 12px
    }

    .tp-megamenu-list ul li a span {
        font-size: 8px;
        padding: 5px 6px
    }

    .tp-footer-it-bigtext {
        font-size: 500px
    }

    .tp-hero-title {
        font-size: 66px
    }

    .tp-hero-2-title {
        font-size: 87px
    }
}

.tp-hero-title-sm {
    font-weight: 700;
    padding: 11px 39px;
    font-size: 25px;
    line-height: 70%;
    border-radius: 100px;
    width: 151px;
    height: 65px;
    text-align: center;
    transform: translateY(-13px)
}

.tp-hero-title-sm span {
    display: block;
    line-height: 1
}

.tp-hero-bottom-content {
    margin-top: -35px
}

.tp-hero-bottom-shape {
    position: absolute;
    top: 0;
    left: 0
}

.tp-hero-bottom-border,
.tp-hero-wd-bottom-border {
    width: 100%;
    display: block
}

.tp-hero-bottom-box {
    padding: 70px 60px 50px
}

@media only screen and (min-width:1200px) and (max-width:1399px) {
    .gx-90 {
        --bs-gutter-x: 50px
    }

    .tp-megamenu-title {
        padding-left: 20px
    }

    .tp-megamenu-list ul li a {
        font-size: 14px;
        padding: 12px 8px
    }

    .tp-postbox-wrapper {
        margin-right: 40px
    }

    .tp-blog-top-content {
        padding: 70px 120px 100px
    }

    .tp-footer-it-widget {
        margin-left: 40px
    }

    .tp-footer-it-bigtext {
        font-size: 400px
    }

    .tp-hero-title {
        font-size: 56px
    }

    .tp-hero-bottom-box {
        padding: 40px 60px
    }
}

.tp-hero-bottom-line {
    width: 100%;
    height: 10px
}

@media only screen and (min-width:1400px) and (max-width:1599px),
only screen and (min-width:1200px) and (max-width:1399px),
only screen and (min-width:768px) and (max-width:991px),
(max-width:574.98px) {
    .tp-hero-bottom-line {
        margin-top: 30px
    }
}

.tp-hero-bottom-right {
    margin-left: -40px
}

.tp-hero-bottom-height {
    height: 548px;
    width: 100%
}

.serve-main-list ul li,
.tp-hero-social a,
.tp-hero-video-btn {
    display: flex;
    justify-content: center;
    align-items: center
}

.tp-hero-video-btn {
    width: 50px;
    height: 50px;
    display: inline-block;
    text-align: center;
    border-radius: 50px;
    color: var(--tp-common-white)
}

.tp-hero-video-btn:hover {
    background: var(--tp-theme-secondary);
    color: var(--tp-common-white)
}

.tp-hero-customer-text {
    margin-left: 20px;
    margin-right: 58px
}

.tp-awards-bg-shape,
.tp-banner-2-bg,
.tp-banner-2-thumb,
.tp-banner-bg,
.tp-faq-ai-noise,
.tp-hero-customer-shape,
.tp-hero-wd-bottom-bg,
.tp-image-distortion canvas,
.tp-reveal-bg,
.tp-video-thumb {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: -1
}

.tp-hero-right-shape .shape-1 {
    transform: translateY(-7px);
    display: inline-block
}

.tp-hero-pp-title img,
.tp-hero-wd-title .shape {
    transform: translateY(-10px)
}

.tp-hero-social {
    writing-mode: vertical-rl;
    gap: 15px
}

.tp-hero-social span {
    font-weight: 700;
    color: var(--tp-common-black)
}

.tp-hero-social a {
    width: 36px;
    height: 36px;
    border: 1px solid #eee;
    border-radius: 100px;
    transition: .4s
}

.tp-hero-2-left {
    padding-left: 225px
}

@media only screen and (min-width:1600px) and (max-width:1700px),
only screen and (min-width:1400px) and (max-width:1599px) {
    .tp-hero-2-left {
        padding-left: 125px
    }
}

.tp-hero-2-title .tp-hero-video-btn {
    margin-left: 46px
}

.tp-hero-2-impact-wrap {
    margin-left: -85px
}

.tp-hero-2-impact-text span,
.tp-video-cst-main {
    line-height: 1
}

.tp-hero-2-impact-text .tp-lines {
    width: 100%;
    display: inline-block
}

.tp-hero-2-spacing {
    padding-top: 190px;
    padding-bottom: 90px
}

.tp-hero-2-author {
    margin-top: 355px
}

.tp-hero-2-bottom-shape {
    position: absolute;
    bottom: -1px;
    left: 0;
    width: 100%
}

.tp-hero-2-bottom-scrool,
.tp-process-it-video,
.tp-process-pp-video {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    left: 0;
    right: 0;
    margin: 0 auto;
    text-align: center
}

.tp-hero-2-shape {
    margin-top: 255px;
    margin-left: 75px
}

.tp-hero-2-shape-two {
    position: absolute;
    left: 0;
    bottom: 135px;
    width: 5%
}

.tp-hero-wd-spacing {
    padding-top: 227px;
    padding-bottom: 73px
}

.tp-hero-wd-title {
    font-family: var(--tp-ff-teko);
    font-size: 100px;
    line-height: 105%
}

.tp-hero-cst-btp a,
.tp-hero-wd-btp {
    line-height: 75px;
    background: var(--tp-common-white)
}

.tp-hero-wd-title-wrap {
    margin-left: 40px
}

.tp-hero-wd-title .shape {
    margin-left: 101px
}

.tp-hero-wd-title .icons {
    width: 101px;
    height: 65px;
    border-radius: 50px;
    background: var(--tp-theme-primary);
    text-align: center;
    line-height: 70px;
    transform: translateY(-5px)
}

.tp-hero-wd-title .title-space {
    margin-left: 95px
}

.tp-hero-wd-text {
    margin-left: 105px;
    margin-top: 77px;
    margin-right: -122px
}

.tp-hero-wd-shape {
    display: flex;
    flex-direction: column;
    align-items: end;
    position: absolute;
    top: -93px;
    right: 78px
}

.tp-hero-wd-right {
    background: var(--tp-grey-3);
    border-radius: 20px;
    padding: 50px 45px;
    margin-left: 145px
}

@media only screen and (min-width:1400px) and (max-width:1599px) {
    .tp-hero-wd-right {
        margin-left: 45px
    }
}

.tp-hero-wd-btp {
    border: 1px solid var(--tp-border-1);
    border-radius: 100px;
    width: 50px;
    opacity: .9;
    height: 75px;
    text-align: center;
    position: absolute;
    left: 70px;
    bottom: 147px;
    z-index: 1
}

.tp-hero-wd-bottom-info {
    padding: 28px 30px 35px;
    margin-top: 280px
}

@media only screen and (min-width:1400px) and (max-width:1599px),
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:574.98px) {
    .tp-header-pb-logo {
        padding-left: 0
    }

    .tp-footer-pp-shape,
    .tp-footer-pp-shape-2 {
        width: 10%;
        height: 10%
    }

    .tp-hero-content,
    .tp-hero-wd-title-wrap {
        margin-left: 0
    }

    .tp-hero-customer-text {
        margin-right: 0;
        margin-left: 0
    }

    .tp-hero-2-title .tp-hero-video-btn {
        margin-left: 10px
    }

    .tp-hero-wd-text {
        margin-left: 0;
        margin-right: -52px
    }

    .tp-hero-wd-bottom-info {
        margin-top: 180px
    }

    .tp-about-ai-para br {
        display: none
    }
}

.tp-hero-wd-bottom-info .tp-footer-social ul {
    gap: 20px
}

.tp-hero-wd-bottom-info .tp-footer-social ul li {
    margin-right: 0;
    margin-bottom: 0
}

.tp-hero-wd-bottom-info .tp-footer-social ul li a {
    background: var(--tp-common-black-2);
    font-size: 14px;
    padding: 3px 14px
}

.tp-hero-sa-thumb {
    margin-left: -25px
}

.tp-hero-sa-thumb img {
    border-radius: 100%
}

.tp-hero-sa-spacing {
    padding-top: 96px;
    padding-bottom: 95px
}

.tp-hero-sa-subtitle {
    display: flex;
    justify-content: end
}

.tp-hero-sa-subtitle-inner {
    text-align: left
}

.tp-hero-sa-shape-2 {
    display: flex;
    flex-direction: column;
    align-items: end;
    position: absolute;
    left: -115px;
    top: 37%;
    transform: translateY(-50%)
}

.tp-hero-sa-shape-3 {
    position: absolute;
    bottom: 0;
    right: 0;
    width: 23%
}

.tp-hero-sa-btn-wrap {
    flex-wrap: wrap
}

@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:768px) and (max-width:991px),
only screen and (min-width:576px) and (max-width:767px),
(max-width:574.98px) {
    .tp-hero-sa-btn {
        margin-right: 10px
    }

    .tp-hero-sa-customer-text {
        margin-left: 10px
    }
}

.tp-hero-pp-spacing {
    padding-top: 150px;
    padding-bottom: 60px
}

.tp-hero-pp-para {
    margin-left: 200px
}

@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:574.98px) {

    .br br,
    .tp-megamenu-list ul li a span,
    .tp-section-3-para br,
    .tp-section-ai-para br,
    .tp-section-ai-title br,
    .tp-section-it-para br {
        display: none
    }

    .pt-170 {
        padding-top: 115px
    }

    .pt-165 {
        padding-top: 110px
    }

    .pt-140,
    .pt-145,
    .pt-150,
    .pt-155,
    .pt-160 {
        padding-top: 100px
    }

    .pt-135 {
        padding-top: 95px
    }

    .pt-130 {
        padding-top: 90px
    }

    .pt-125 {
        padding-top: 85px
    }

    .pt-120 {
        padding-top: 80px
    }

    .pt-115 {
        padding-top: 75px
    }

    .pt-110 {
        padding-top: 70px
    }

    .pt-105 {
        padding-top: 65px
    }

    .pt-100 {
        padding-top: 60px
    }

    .pb-140,
    .pb-145,
    .pb-150,
    .pb-155,
    .pb-160,
    .pb-165,
    .pb-170 {
        padding-bottom: 100px
    }

    .pb-135 {
        padding-bottom: 95px
    }

    .pb-130 {
        padding-bottom: 90px
    }

    .pb-125 {
        padding-bottom: 85px
    }

    .pb-120 {
        padding-bottom: 80px
    }

    .pb-115 {
        padding-bottom: 75px
    }

    .pb-110 {
        padding-bottom: 70px
    }

    .pb-105 {
        padding-bottom: 65px
    }

    .pb-100 {
        padding-bottom: 60px
    }

    .pb-95 {
        padding-bottom: 55px
    }

    .pb-90 {
        padding-bottom: 50px
    }

    .tp-header-2-country {
        margin-left: 70px
    }

    .tp-header-pb-sidebar {
        margin-left: 20px
    }

    .tp-footer-pp-link a,
    .tp-header-ai-bg {
        padding: 10px 20px
    }

    .tp-footer-pp-widget,
    .tp-main-menu-pb {
        margin-left: 0
    }

    .tp-main-menu-pb>nav>ul>li {
        margin: 0 14px
    }

    .tp-postbox-2-wrapper .tp-blog-comment-form,
    .tp-postbox-2-wrapper .tp-blog-details-content {
        margin-left: 0;
        margin-right: 0
    }

    .tp-sidebar-rc-tag ul {
        gap: 10px
    }

    .tp-blog-wd-title {
        margin-bottom: 50px
    }

    .tp-hero-title-sm {
        font-size: 20px
    }

    .tp-hero-2-title,
    .tp-hero-wd-title {
        font-size: 80px
    }

    .tp-hero-2-author {
        margin-top: 255px;
        margin-left: -100px
    }

    .tp-hero-wd-text {
        margin-top: 40px;
        margin-right: -90px
    }

    .tp-hero-wd-customer .tp-hero-customer {
        margin-right: 30px
    }

    .tp-hero-wd-right {
        margin-left: 0;
        padding: 40px 35px 30px
    }

    .tp-hero-wd-right img {
        margin-bottom: 70px
    }

    .tp-hero-pp-para {
        margin-left: 100px
    }
}

.tp-hero-pp-social {
    writing-mode: inherit;
    gap: 10px
}

.tp-hero-pp-social span {
    font-weight: 500;
    color: var(--tp-common-black);
    display: block;
    margin-bottom: 10px
}

.tp-hero-pp-social span.borders {
    font-size: 16px;
    font-weight: 700;
    padding: 4px 17px
}

.tp-hero-pp-social a:hover {
    background: var(--tp-theme-primary);
    border-color: var(--tp-theme-primary);
    color: var(--tp-common-black)
}

.tp-hero-pp-thumb {
    display: flex;
    align-items: end;
    justify-content: end;
    height: 100%
}

.tp-hero-pp-shape {
    position: absolute;
    bottom: 100px;
    right: 0
}

.tp-hero-pp-shape-wrap {
    position: absolute;
    left: 0;
    top: 49%
}

.tp-hero-cst-spacing {
    padding-top: 163px;
    padding-bottom: 25px
}

.tp-hero-cst-content {
    display: flex;
    align-items: end;
    gap: 90px
}

.tp-hero-cst-content p {
    opacity: .7
}

.tp-hero-cst-btp a,
.tp-hero-pp-social span.borders {
    border: 1px solid var(--tp-border-1);
    border-radius: 100px;
    display: inline-block
}

.tp-hero-cst-btp a {
    width: 50px;
    opacity: .9;
    height: 75px;
    text-align: center;
    position: relative;
    z-index: 2
}

.tp-hero-cst-impact-wrap .shape {
    width: 50px;
    height: 50px;
    flex: 0 0 auto
}

.tp-hero-cst-impact-border {
    border-bottom: 1px solid;
    display: block;
    margin-bottom: 5px;
    padding-bottom: 5px
}

.tp-hero-cst-bottom-content {
    position: relative;
    z-index: 1;
    padding-top: 450px
}

.tp-hero-cst-bottom-border {
    padding: 21px 120px;
    border-top: 1px solid
}

.tp-hero-cst-bottom-shape {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1
}

.tp-hero-cst-bottom-shape .line-1,
.tp-hero-it-shape .line-1 {
    stroke-dasharray: 2300;
    stroke-dashoffset: 4000;
    animation: 9s linear infinite forwards dash-2
}

.tp-hero-cst-bottom-btn ul {
    display: flex;
    flex-wrap: wrap;
    gap: 40px
}

.tp-hero-cst-bottom-btn ul li.active::before,
.tp-hero-cst-bottom-btn ul li:hover::before,
.tp-portfolio-cst-item.active::before,
.tp-portfolio-cst-item:hover::before {
    width: 100%;
    left: 0;
    right: auto
}

.tp-hero-cst-bottom-btn ul li::before {
    position: absolute;
    content: "";
    width: 0;
    height: 1px;
    background: var(--tp-common-white);
    bottom: 0;
    right: 0;
    transition: .4s
}

.tp-hero-cst-bottom-right a {
    text-decoration: underline;
    text-underline-offset: 3px
}

.tp-hero-it-social {
    margin-left: 35px;
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    z-index: 2
}

.tp-hero-it-social span {
    font-family: var(--tp-ff-poppins);
    font-size: 15px;
    color: var(--tp-common-black-1)
}

.tp-hero-it-social a {
    background: 0 0;
    border: 0
}

.tp-hero-it-spacing {
    padding-top: 215px;
    padding-bottom: 45px
}

.tp-hero-it-counter .subtitle {
    color: #4c6a61
}

.tp-hero-it-counter-wrap {
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 14px;
    border-top: 1px solid #cdead5;
    padding-top: 17px
}

.tp-hero-it-bigtitle {
    font-size: 266px;
    text-align: center
}

.tp-hero-it-shape {
    position: absolute;
    bottom: -170px;
    left: 0;
    width: 100%;
    z-index: -1
}

@media only screen and (min-width:1600px) and (max-width:1700px),
only screen and (min-width:1400px) and (max-width:1599px),
only screen and (min-width:1200px) and (max-width:1399px) {
    .tp-main-menu nav>ul>li .submenu li a {
        font-size: 14px
    }

    .tp-megamenu-wrapper {
        max-width: calc(90% - 80px)
    }

    .tp-megamenu-list ul li {
        padding: 0 10px
    }

    .tp-hero-it-content {
        margin-left: 100px
    }
}

.tp-hero-pb-spacing {
    padding-top: 208px
}

.tp-hero-pb-input .tp-input {
    font-family: var(--tp-ff-inter);
    font-weight: 400;
    font-size: 14px;
    letter-spacing: -.02em;
    color: #111112;
    background: #fff0;
    border: 0;
    border-radius: 0;
    height: 44px;
    border-bottom: 1px solid #e7e7e1;
    padding-left: 10px;
    padding-right: 10px;
    width: 100%;
    line-height: 44px
}

.tp-hero-pb-input .tp-input::-webkit-input-placeholder {
    font-family: var(--tp-ff-inter);
    font-weight: 400;
    font-size: 14px;
    letter-spacing: -.02em;
    color: rgb(17 17 18/.6)
}

.tp-hero-pb-input .tp-input::-moz-placeholder {
    font-family: var(--tp-ff-inter);
    font-weight: 400;
    font-size: 14px;
    letter-spacing: -.02em;
    color: rgb(17 17 18/.6)
}

.tp-hero-pb-input .tp-input:-moz-placeholder {
    font-family: var(--tp-ff-inter);
    font-weight: 400;
    font-size: 14px;
    letter-spacing: -.02em;
    color: rgb(17 17 18/.6)
}

.tp-hero-pb-input .tp-input:-ms-input-placeholder {
    font-family: var(--tp-ff-inter);
    font-weight: 400;
    font-size: 14px;
    letter-spacing: -.02em;
    color: rgb(17 17 18/.6)
}

.tp-hero-pb-input .tp-input::placeholder {
    font-family: var(--tp-ff-inter);
    font-weight: 400;
    font-size: 14px;
    letter-spacing: -.02em;
    color: rgb(17 17 18/.6)
}

.tp-hero-pb-input .tp-input:focus {
    border-color: var(--tp-theme-secondary)
}

.tp-hero-pb-input .nice-select::after {
    right: 10px
}

.tp-hero-pb-bigtitle {
    font-family: var(--tp-ff-inter);
    font-weight: 800;
    font-size: 400px;
    line-height: 77%;
    letter-spacing: -.04em;
    background: linear-gradient(180deg, rgb(235 235 235/.58)0, rgb(248 244 238/.09) 100%);
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: #fff0;
    position: absolute;
    bottom: 80px;
    left: 0;
    right: 0;
    z-index: -1;
    margin: 0 auto 0-20px
}

@media only screen and (min-width:1700px) and (max-width:1800px) {
    .tp-hero-pb-bigtitle {
        font-size: 260px
    }
}

@media only screen and (min-width:1600px) and (max-width:1700px) {
    .tp-hero-pb-bigtitle {
        font-size: 260px
    }
}

@media only screen and (min-width:1400px) and (max-width:1599px) {
    .tp-hero-cst-bottom-border {
        padding: 21px 20px
    }

    .tp-hero-it-bigtitle {
        font-size: 210px
    }

    .tp-hero-pb-bigtitle {
        font-size: 260px
    }

    .tp-about-top-title {
        font-size: 60px
    }
}

.tp-hero-pb-shape,
.tp-hero-pb-shape-2 {
    position: absolute;
    z-index: -1;
    -webkit-animation: 4s ease-in-out 1s infinite levitate-lg;
    animation: 4s ease-in-out 1s infinite levitate-lg
}

.tp-hero-pb-shape {
    right: 0;
    top: 228px;
    width: 13%
}

.tp-hero-pb-shape-2 {
    left: 242px;
    top: 177px
}

.tp-hero-pb-shape-3 {
    position: absolute;
    left: 0;
    right: 0;
    margin: 0 auto;
    top: -30px;
    z-index: -1
}

.tp-image-distortion {
    overflow: hidden;
    height: 100%;
    position: relative
}

.content__img {
    width: 250px;
    aspect-ratio: 1.1;
    border-radius: 10px;
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0;
    overflow: hidden;
    will-change: transform, filter
}

.content__img-inner {
    background-position: 50% 50%;
    width: calc(100% + 20px);
    height: calc(100% + 20px);
    background-size: cover;
    position: absolute;
    top: -10px;
    left: -10px
}

.tp-about-title span {
    display: inline-block;
    width: 88px
}

.tp-about-para,
.tp-service-para {
    line-height: 35px
}

.tp-about-expreance .plus {
    position: absolute;
    top: 12px;
    right: -23px
}

.tp-about-thumb-height {
    height: 209px;
    width: 100%
}

.tp-about-thumb-height-2 {
    height: 400px;
    width: 100%
}

.tp-about-2-title .space {
    display: inline-block;
    width: 80px
}

.tp-about-2-border {
    height: 1px;
    width: 100%;
    background: var(--tp-border-1)
}

.tp-about-wd-title img,
.tp-video-2-main {
    transform: translateY(-7px)
}

.tp-about-wd-shape {
    display: flex;
    flex-direction: column;
    align-items: end;
    margin-right: 30px;
    margin-top: 20px
}

.tp-about-wd-expreance {
    margin-top: -57px
}

.tp-about-wd-expreance .plus {
    top: 10px;
    font-weight: 400;
    font-size: 30px
}

.tp-about-wd-expreance span {
    transform: translateY(-6px)
}

.tp-about-wd-thumb3 {
    position: absolute;
    top: -122px;
    right: 0;
    border: 10px solid var(--tp-common-white);
    border-top: 0;
    border-right: 0
}

.tp-about-wd-thumb4 {
    margin-top: 80px;
    margin-right: 80px
}

.tp-about-wd-shape-2 {
    position: absolute;
    bottom: 0;
    right: 0;
    z-index: -1
}

.tp-about-sa-shape {
    flex-direction: row;
    margin-right: 0;
    justify-content: end;
    margin-top: 80px
}

.tp-about-sa-btn a {
    font-family: var(--tp-ff-heading);
    font-weight: 500;
    font-size: 15px;
    color: var(--tp-common-black)
}

.tp-about-sa-thumb2 .tp-about-wd-thumb3 {
    top: -36px;
    border: 0
}

.tp-about-sa-thumb2 .tp-about-wd-thumb4 {
    margin-top: 0;
    padding-top: 125px;
    margin-left: -53px
}

.tp-about-pp-skill-wrap {
    background: var(--tp-common-black-2);
    border-radius: 100px;
    padding: 30px 25px
}

.tp-about-pp-skill-icon {
    width: 90px;
    height: 90px;
    display: inline-block;
    border-radius: 100%;
    border: 1px solid;
    background: var(--tp-common-black-2);
    text-align: center;
    line-height: 90px;
    flex: 0 0 auto
}

@media only screen and (min-width:1200px) and (max-width:1399px),
only screen and (min-width:768px) and (max-width:991px),
only screen and (min-width:576px) and (max-width:767px),
(max-width:574.98px) {
    .tp-blog-it-item .img-box {
        height: 305px
    }

    .tp-hero-2-shape {
        margin-left: 0
    }

    .tp-about-pp-skill-icon {
        width: 70px;
        height: 70px;
        line-height: 64px;
        margin-right: 10px
    }

    .tp-about-pp-skill-icon svg {
        width: 30px
    }
}

.tp-about-pp-skill-white-wrap {
    background: var(--tp-common-white);
    border: 1px solid var(--tp-border-1)
}

@media only screen and (min-width:1200px) and (max-width:1399px),
only screen and (min-width:768px) and (max-width:991px) {
    .tp-about-top-title {
        font-size: 50px
    }
}

@media only screen and (min-width:992px) and (max-width:1199px),
only screen and (min-width:576px) and (max-width:767px) {
    .tp-about-top-title {
        font-size: 40px
    }
}

.tp-about-top-title span {
    width: 120px;
    display: inline-block
}

@media only screen and (min-width:1700px) and (max-width:1800px),
only screen and (min-width:1600px) and (max-width:1700px),
only screen and (min-width:1400px) and (max-width:1599px),
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:574.98px) {

    .tp-about-top-title-wrap,
    .tp-hero-right-content {
        margin-left: 0
    }
}

.tp-about-top-spacing {
    padding-top: 235px
}

.tp-about-bottom-video,
.tp-video-md-wrap {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    left: 0;
    right: 0;
    display: flex;
    justify-content: center
}

.tp-about-bottom-video .popup-video {
    background: 0 0;
    border: 1px solid var(--tp-common-black);
    color: var(--tp-common-black)
}

.tp-about-process-item {
    padding: 45px 40px 25px;
    border: 1px solid #fff0;
    transition: .4s
}

.tp-about-process-item:hover {
    border-color: var(--tp-border-1);
    background: #fff0
}

.tp-about-me-shape {
    position: absolute;
    bottom: 50px;
    right: 320px
}

.tp-about-me-email {
    display: block;
    text-align: right
}

.tp-about-me-banner {
    overflow: hidden;
    height: 780px
}

.tp-about-process-2-item ul li {
    list-style: none;
    font-weight: 400;
    font-size: 18px;
    color: var(--tp-common-black)
}

.tp-about-process-2-item ul li:not(:last-child) {
    margin-bottom: 6px
}

.tp-about-cst-thumb {
    border-bottom: 1px solid #e7eaea;
    margin-bottom: 37px;
    padding-right: 30px
}

.tp-about-cst-thumb-wrap {
    border-right: 1px solid #e7eaea;
    margin-right: 20px;
    padding-bottom: 5px
}

.tp-about-cst-thumb-wrap .tp-about-expreance .plus {
    top: 8px;
    right: -13px
}

.tp-about-cst-tab ul li {
    list-style: none;
    margin-right: 42px
}

.tp-about-cst-list ul li,
.tp-about-cst-tab ul li a {
    font-family: var(--tp-ff-dm);
    color: var(--tp-common-black-1)
}

.tp-about-cst-list ul li {
    font-weight: 500;
    font-size: 14px;
    display: flex
}

.tp-about-cst-tab ul li a.active {
    border-bottom: 1px solid currentColor
}

.tp-about-cst-tab-wrap .tab-pane {
    display: block;
    pointer-events: none;
    opacity: 0;
    visibility: hidden;
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0;
    right: 0;
    -webkit-transform: translateY(30px);
    -ms-transform: translateY(30px);
    transform: translateY(30px);
    transition-timing-function: ease-in;
    transition-duration: .2s
}

.tp-about-cst-tab-wrap .tab-pane.active {
    pointer-events: auto;
    opacity: 1;
    visibility: visible;
    position: relative;
    z-index: 2;
    -webkit-transform: none;
    -ms-transform: none;
    transform: none;
    transition-timing-function: ease-out;
    transition-duration: .3s;
    transition-delay: .3s
}

.tp-about-cst-list {
    position: absolute;
    bottom: -30px;
    left: 0
}

.tp-about-cst-list ul {
    margin-bottom: 20px
}

.tp-about-cst-list ul li span {
    margin-right: 8px;
    transform: translateY(-1px)
}

.tp-about-cst-list-btn {
    border-radius: 8px;
    padding: 3px 20px;
    transition: .4s
}

.tp-about-cst-list-btn:hover {
    background: var(--tp-common-white);
    color: var(--tp-common-black-1)
}

.tp-about-cst-list-inner {
    padding: 0 24px 24px;
    margin-top: -20px
}

.tp-about-it-rating .rating {
    display: flex;
    gap: 5px
}

.tp-about-it-rating .rating i {
    width: 22px;
    height: 22px;
    display: flex;
    text-align: center;
    justify-content: center;
    align-items: center;
    border-radius: 4px;
    background: var(--tp-common-black-1);
    color: var(--tp-grey-5);
    font-size: 12px
}

.tp-about-it-total-rating {
    line-height: .9;
    border-right: 1px solid var(--tp-common-black-1);
    margin-right: 24px;
    padding-right: 24px
}

.tp-about-it-content {
    margin-right: 75px;
    margin-left: 17px
}

.tp-about-it-expreance {
    font-size: 392px
}

.tp-about-it-feature span,
.tp-about-pb-feature-list ul li a {
    font-family: var(--tp-ff-inter);
    letter-spacing: -.03em;
    display: inline-block
}

.tp-about-it-feature span {
    font-weight: 400;
    font-size: 20px;
    color: var(--tp-common-black-1);
    background: var(--tp-common-green-3);
    border-radius: 20px;
    padding: 8px 25px;
    position: absolute;
    top: 33%;
    -webkit-animation: 1s infinite mymove;
    animation: 1s infinite mymove
}

.tp-about-it-feature span.feature-1 {
    left: 37%
}

.tp-about-it-feature span.feature-2 {
    left: 2%;
    top: 47%;
    -webkit-animation: 1.1s infinite mymove;
    animation: 1.1s infinite mymove;
    background: #ff6d00;
    color: var(--tp-common-white)
}

.tp-about-it-feature span.feature-3 {
    left: 33%;
    top: 61%;
    -webkit-animation: 1.2s infinite mymove;
    animation: 1.2s infinite mymove;
    background: #b4e717
}

.tp-about-ai-ring,
.tp-service-ai-ring {
    animation: 9s linear infinite tp_animation_spin
}

.tp-about-it-blur {
    position: absolute;
    top: -80px;
    right: 0;
    width: 400px;
    height: 400px;
    border-radius: 50%;
    filter: blur(180px);
    z-index: -1;
    background: #d5ffdd
}

.tp-about-pb-para p {
    line-height: 178%
}

.tp-about-pb-shape {
    margin-top: -30px
}

.tp-about-pb-feature-list ul li {
    list-style: none;
    margin-bottom: 16px
}

.tp-about-pb-feature-list ul li a {
    font-weight: 500;
    font-size: 16px;
    text-transform: capitalize;
    color: var(--tp-common-black-5);
    border: 1px solid;
    border-radius: 50px;
    padding: 4px 16px
}

.tp-about-pb-feature-list ul li a:hover {
    background: var(--tp-theme-secondary);
    color: var(--tp-common-white);
    border-color: var(--tp-theme-secondary)
}

.tp-about-pb-feature-icon {
    border-radius: 60px;
    border: 1px solid;
    text-align: center;
    width: 50px;
    height: 50px;
    display: flex;
    justify-content: center;
    align-items: center
}

.tp-about-pb-feature-wrap {
    margin-top: -220px;
    position: relative;
    z-index: 1
}

.tp-about-ai-text .has-scale-image {
    position: relative;
    display: inline-block;
    width: 60px;
    height: 60px;
    line-height: inherit;
    border-radius: 6px;
    cursor: pointer;
    overflow: hidden;
    opacity: 0;
    transform: scale(.5);
    -webkit-transform: scale(.5);
    margin-bottom: -9px;
    background: currentColor
}

.tp-about-ai-text .hidden-image {
    position: absolute;
    width: 100%;
    height: 100%;
    background-size: cover;
    opacity: 0;
    transition: .4s ease-out;
    -webkit-transition: .4s ease-out
}

.tp-about-ai-title {
    font-size: 132px
}

.tp-about-ai-ring {
    bottom: 77px;
    left: -348px;
    z-index: -1;
    width: 33%
}

.tp-about-md-title {
    font-size: 190px
}

.tp-about-md-expreance-count h2 {
    font-size: 180px;
    line-height: .8;
    margin-top: -100px
}

.tp-about-md-bigtext {
    font-size: 190px;
    color: rgb(0 0 0/.05);
    position: absolute;
    top: 38%;
    left: -25px;
    z-index: -2
}

.tp-about-md-shape {
    position: absolute;
    top: 170px;
    left: 0;
    z-index: -1;
    width: 28%
}

.tp-about-md-shape-2 {
    position: absolute;
    bottom: 235px;
    right: 0;
    width: 9%
}

.tp-about-feature-info {
    padding: 145px 100px 100px 160px
}

.tp-about-feature-thumb img {
    height: 100%;
    object-fit: cover
}

.tp-brand-spacing {
    padding: 100px 0;
    border-top: 1px solid #03030324;
    border-bottom: 1px solid #03030324
}

.tp-brand-item a {
    opacity: .5
}

.tp-brand-slide-active .swiper-slide {
    display: inline-block;
    width: auto;
    margin: 0 80px
}

.tp-brand-customer {
    border: 1px solid #03030324;
    border-radius: 100px;
    padding: 6px 35px;
    display: inline-block;
    background: var(--tp-common-white)
}

.tp-brand-customer-wrap {
    position: absolute;
    top: -20px;
    left: 0;
    right: 0;
    text-align: center
}

.tp-brand-bottom-border {
    width: 97%;
    height: 20px;
    background: #fff0;
    bottom: -20px;
    left: 0;
    right: 0;
    margin: 0 auto;
    display: inline-block;
    position: absolute;
    border: 1px solid #03030324;
    z-index: -1;
    border-top: 0
}

.tp-brand-cst-spacing {
    padding: 160px 0
}

.tp-service-shape {
    flex: 0 0 auto;
    margin-top: 8px
}

.tp-service-item {
    border: 1px solid var(--tp-border-1);
    padding: 25px 25px 50px 60px
}

.tp-service-item-title {
    font-weight: 500;
    font-size: 35px;
    line-height: 129%;
    margin-bottom: 25px
}

.tp-service-item-bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    visibility: hidden;
    transition: .4s
}

.tp-service-item ul li a {
    font-family: var(--tp-ff-heading);
    font-weight: 500;
    font-size: 22px;
    line-height: 140%;
    padding-left: 15px;
    position: relative;
    background-size: 0 1px, 0 1px
}

.tp-service-item ul li a::before {
    position: absolute;
    content: "";
    top: 50%;
    transform: translateY(-50%);
    left: 0;
    width: 6px;
    height: 6px;
    background: var(--tp-common-black);
    border-radius: 40px
}

.tp-service-2-title span {
    width: 120px
}

.tp-service-2-para {
    margin-bottom: 115px
}

.tp-service-2-para p {
    margin-left: 644px;
    padding-left: 24px;
    position: relative
}

@media only screen and (min-width:1200px) and (max-width:1399px) {
    .tp-hero-it-bigtitle {
        font-size: 180px
    }

    .tp-hero-pb-bigtitle {
        font-size: 250px
    }

    .tp-service-2-para p {
        margin-left: 521px
    }
}

@media only screen and (min-width:992px) and (max-width:1199px) {
    .tp-footer-it-bigtext {
        font-size: 375px
    }

    .tp-hero-it-bigtitle {
        font-size: 150px
    }

    .tp-hero-pb-bigtitle {
        font-size: 200px
    }

    .tp-service-2-para p {
        margin-left: 321px
    }
}

.tp-service-2-para p::before {
    position: absolute;
    content: "";
    width: 1px;
    height: 180px;
    background: #eee;
    left: 0;
    top: -50px
}

.tp-service-2-item {
    padding: 50px 40px 80px;
    border: 1px solid #fff0;
    transition: .4s
}

.tp-service-2-item:hover {
    border: 1px solid var(--tp-border-1);
    background: #fff0
}

.tp-service-2-btn {
    border: 1px solid #eee;
    border-radius: 100px;
    text-align: left;
    padding: 28px 30px
}

.tp-service-3-item {
    border: 1px solid #eee;
    border-radius: 16px;
    padding: 50px 25px 50px 60px
}

.tp-service-3-item ul li a {
    font-family: var(--tp-ff-dm);
    font-weight: 400;
    font-size: 25px;
    line-height: 140%;
    padding-left: 15px;
    letter-spacing: -.02em;
    color: var(--tp-common-black-5)
}

.tp-service-wd-content ul li {
    font-weight: 500;
    font-size: 14px;
    color: var(--tp-common-black);
    list-style: none;
    margin-bottom: 6px
}

.tp-service-wd-item {
    border-top: 1px solid var(--tp-border-1);
    padding-top: 45px;
    padding-bottom: 40px
}

.tp-service-sa-item {
    padding: 45px 35px 38px
}

.tp-service-sa-item-text {
    opacity: 0;
    visibility: hidden;
    transition: .4s
}

.otp-content,
.tp-service-it-pagenation,
.tp-service-sa-pagenation,
.tp-video-cst-mask img {
    text-align: center
}

.tp-service-sa-pagenation .swiper-pagination-bullet {
    width: 10px;
    height: 10px;
    background: #fff0;
    border: 1px solid var(--tp-grey-2);
    opacity: 1
}

.tp-service-sa-pagenation .swiper-pagination-bullet-active {
    background: var(--tp-common-nights);
    border-color: var(--tp-common-nights)
}

.tp-service-pp-category span {
    font-weight: 500;
    font-size: 14px;
    border: 1px solid;
    border-radius: 100px;
    background: #0d0d0d;
    padding: 3px 24px;
    transition: .4s;
    display: inline-block;
    margin-right: 5px;
    margin-bottom: 8px;
    color: var(--tp-common-white);
    font-family: var(--tp-ff-heading)
}

.tp-service-pp-category span:hover {
    border-color: #252526;
    background: #252526
}

.tp-service-pp-item {
    padding: 40px;
    border-top: 1px dashed #8d838373
}

.tp-service-pp-item:last-child {
    border-bottom: 1px dashed #8d838373
}

.tp-service-pp-number {
    padding-left: 180px
}

.tp-service-pp-title-box {
    padding: 0 220px 30px
}

.tp-service-hero-spacing {
    padding-top: 220px
}

.tp-service-hero-shape {
    position: absolute;
    bottom: -40px;
    right: 145px
}

.tp-service-hero-shape-2 {
    right: 0;
    bottom: 0;
    width: 21%;
    z-index: -1
}

.tp-service-inner-item {
    border-top: 1px dashed var(--tp-border-1);
    background: var(--tp-common-white)
}

.tp-service-inner-item .tp-service-pp-category span {
    background: #fff0;
    border: 1px solid var(--tp-border-1);
    color: var(--tp-common-black)
}

.tp-service-details-icon {
    position: absolute;
    top: -52px;
    left: -69px;
    z-index: -1
}

.tp-service-details-content ul li {
    list-style: none;
    display: flex;
    margin-bottom: 13px;
    align-items: center;
}

.tp-service-details-content ul li i {
    font-size: 12px;
    margin-right: 8px;
    /* margin-top: 4px */
}

.tp-service-details-content ul li p {
    font-size: 14px;
    line-height: 144%;
    margin-bottom: 0
}

.tp-service-details-content ul li b {
    font-weight: 700;
    font-family: var(--tp-ff-heading);
    color: var(--tp-common-black)
}

.tp-service-details-content-2 ul li i {
    color: var(--tp-common-black-5);
    margin-top: 2px;
    margin-right: 16px
}

.tp-service-details-content-2 ul li p {
    color: rgb(17 17 18/.8);
    font-weight: 400;
    font-family: var(--tp-ff-dm)
}

.tp-service-details-content-2 ul li b {
    font-weight: 700;
    color: var(--tp-common-black-5);
    font-family: var(--tp-ff-dm)
}

.tp-service-cst-content {
    backdrop-filter: blur(100px);
    border-radius: 24px;
    padding: 55px 40px 52px;
    position: absolute;
    margin: 32px 60px 32px 32px;
    bottom: 0;
    left: 0;
    right: 0;
    transition: .4s
}

.tp-service-cst-item {
    border-right: 1px solid #26433e;
    padding-right: 27px
}

.tp-service-cst-item-border {
    border-bottom: 1px solid #dbe1dd;
    padding-bottom: 24px;
    margin-bottom: 20px
}

.tp-service-cst-item:hover .tp-service-cst-item-border {
    border-color: #a4d519
}

.tp-service-cst-thumb {
    overflow: hidden;
    border-radius: 16px
}

.tp-service-cst-thumb img {
    border-radius: 16px;
    transition: .6s
}

.tp-service-cst-slider {
    margin-right: -490px
}

.tp-service-cst-slider-wrap {
    border-top: 1px solid #26433e;
    padding-top: 60px
}

.tp-service-cst-info-list ul li {
    font-family: var(--tp-ff-dm);
    font-weight: 500;
    font-size: 18px;
    list-style: none;
    color: var(--tp-grey-5);
    display: flex
}

.tp-service-cst-info-list ul li:not(:last-child) {
    margin-bottom: 13px
}

.tp-service-cst-info-list ul li span {
    margin-right: 10px;
    transform: translateY(-2px)
}

.tp-service-cst-2-wrap {
    border-top: 1px solid #e1e5e4
}

.tp-service-cst-2-wrap .tp-service-cst-item {
    border-right: 1px solid #e1e5e4
}

.tp-service-cst-3-wrap .tp-service-cst-item {
    border-right: 0;
    padding-right: 0
}

.tp-service-it-shape {
    position: absolute;
    top: -100px;
    right: 90px
}

.tp-service-it-item {
    background: #121212;
    padding: 56px 60px 105px;
    border-radius: 16px
}

.tp-service-it-item:hover .tp-service-it-circale {
    filter: saturate(1)
}

.tp-service-it-icon {
    border-radius: 60px;
    border: 1px solid;
    width: 50px;
    height: 50px;
    display: flex;
    justify-content: center;
    align-items: center
}

.tp-service-it-para {
    color: #c6c4c5;
    line-height: 162%
}

.tp-service-it-btn {
    border-bottom: 1px solid #252525;
    padding-bottom: 32px;
    margin-bottom: 24px
}

.tp-service-it-tag a {
    font-family: var(--tp-ff-inter);
    font-weight: 500;
    font-size: 14px;
    display: inline-block;
    letter-spacing: -.03em;
    color: #c6c4c5;
    border: 1px solid;
    border-radius: 50px;
    padding: 4px 9px;
    line-height: 1;
    margin-right: 8px;
    margin-bottom: 13px
}

.tp-service-it-tag a:hover {
    background: var(--tp-common-green-2);
    color: var(--tp-common-black);
    border-color: var(--tp-common-green-2)
}

.tp-service-it-circale {
    position: absolute;
    bottom: -60px;
    right: -40px;
    z-index: -1;
    filter: saturate(0);
    transition: .2s
}

.tp-service-it-pagenation span {
    width: 10px;
    height: 10px;
    background: #252525;
    opacity: 1
}

.tp-service-ai-ring {
    bottom: 480px;
    right: -315px;
    z-index: -1;
    width: 32%
}

.tp-service-ai-thumb,
.tp-service-ai-thumb img {
    transition: transform .65s cubic-bezier(.23, 1, .32, 1)
}

.tp-service-ai-thumb {
    position: relative;
    transform: scale3d(1, 1, 1)
}

.tp-service-ai-thumb::after {
    position: absolute;
    content: "";
    background: linear-gradient(180deg, #fff0 12.5%, #111112 100%);
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    border-radius: 12px
}

.tp-service-ai-thumb img {
    border-radius: 12px;
    transform: scale(1.2);
    width: 100%
}

.tp-service-ai-content-2 {
    position: absolute;
    top: 50%;
    transform: translateY(-45%);
    left: 0;
    right: 0;
    text-align: center;
    opacity: 0;
    transition: .4s
}

.tp-service-ai-box {
    transform: scale3d(1, 1, 1);
    transition: transform .65s cubic-bezier(.23, 1, .32, 1);
    border-radius: 24px
}

.image-wrapper,
.slider--fg {
    transform: translate(-50%, -50%)
}

.tp-service-ai-box:hover .tp-service-ai-thumb img {
    transform: scale(1)
}

.tp-service-ai-box:hover .tp-service-ai-content-2 {
    transform: translateY(-50%);
    opacity: 1
}

.tp-service-ai-main {
    border-radius: 24px;
    -webkit-transition: .3s ease-out;
    -moz-transition: .3s ease-out;
    -ms-transition: .3s ease-out;
    -o-transition: .3s ease-out;
    transition: .3s ease-out
}

.tp-service-ai-box:hover,
.tp-service-ai-main:hover .tp-service-ai-thumb {
    transform: scale3d(1.09, 1.09, 1)
}

.tp-service-md-item {
    box-shadow: -15px 1px 24px 38px rgb(0 0 0/.01);
    border-radius: 16px;
    padding: 60px 100px 60px 60px;
    transition: .4s
}

@media only screen and (min-width:1600px) and (max-width:1700px),
only screen and (min-width:1400px) and (max-width:1599px),
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:574.98px) {
    .tp-header-pb-logobg {
        clip-path: polygon(0 0, 82%0, 100% 100%, 0 100%);
        width: 220px
    }

    .tp-about-feature-info {
        padding: 100px 50px 50px 100px
    }

    .tp-about-feature-info p br {
        display: none
    }

    .tp-service-md-item {
        padding: 40px
    }
}

.tp-service-md-item:hover {
    background: var(--tp-theme-1);
    transform: scaleY(1.04)
}

.tp-service-md-icon {
    width: 70px;
    height: 70px
}

.tp-service-vp-bigtitle {
    font-size: 660px;
    color: #dadada;
    font-weight: 800;
    line-height: 73%
}

@media only screen and (min-width:1700px) and (max-width:1800px),
only screen and (min-width:1600px) and (max-width:1700px) {
    .tp-megamenu-list ul li a {
        font-size: 14px
    }

    .tp-service-vp-bigtitle {
        font-size: 600px
    }
}

.tp-service-vp-para {
    color: rgb(17 17 18/.8)
}

.tp-service-vp-btn {
    border: 1px solid;
    width: 60px;
    height: 60px;
    transition: .6s;
    flex: 0 0 auto
}

.tp-service-vp-item {
    position: relative;
    width: 73%;
    margin: 0 auto;
    padding-left: 33px;
    padding-right: 33px;
    padding-bottom: 44px;
    transition-duration: .3s;
    transition-property: opacity;
    transition-timing-function: cubic-bezier(.4, 0, 1, 1);
    border-bottom: 1px solid
}

.tp-service-vp-item:hover {
    border-color: var(--tp-common-black)
}

.tp-service-vp-item:hover .tp-service-vp-btn {
    transform: rotate(360deg);
    background: var(--tp-common-black);
    color: var(--tp-common-white)
}

.tp-service-vp-item .tp-reveal-bg {
    width: 220px;
    height: 220px;
    border-radius: 100%
}

.tp-portfolio-showcase-pagenation,
.tp-service-vp-wrap .row [class*=col]:not(:first-child) .tp-service-vp-item {
    padding-top: 50px
}

.image-wrapper {
    width: 330px;
    height: 330px;
    opacity: 0;
    position: absolute;
    overflow: hidden;
    top: 0;
    left: 0;
    pointer-events: none;
    z-index: 3
}

.image-wrapper .image-slider {
    display: flex;
    flex-direction: column
}

.image-wrapper img {
    width: 330px;
    height: 330px;
    object-fit: cover;
    object-position: center
}

.tp_text_invert>div {
    background-image: linear-gradient(to right, #fff 50%, #999 50%);
    background-size: 200% 100%;
    background-position: 100%;
    color: #fff0;
    background-clip: text;
    -webkit-background-clip: text
}

.tp_text_invert.invert-black>div {
    background-image: linear-gradient(to right, #030303 50%, #525252 50%)
}

.tp_text_invert.invert-black-2>div {
    background-image: linear-gradient(to right, #030303 50%, #aaa 50%)
}

.tp_text_invert.invert-primary>div {
    background-image: linear-gradient(to right, #c4ee18 50%, #fff 50%)
}

.tp_text_invert.invert-white>div {
    background-image: linear-gradient(to right, #f3f1f2 50%, #afb7b6 50%)
}

.tp_text_invert.invert-black-3>div {
    background-image: linear-gradient(to right, #10302a 50%, #a0a8a6 50%)
}

.tp_text_invert.invert-black-5>div {
    background-image: linear-gradient(to right, #111112 50%, #707071 50%)
}

.tp_text_invert.invert-black-6>div {
    background-image: linear-gradient(to right, #111112 50%, #dadada 50%)
}

.tp_text_invert.invert-red-3 {
    background-image: linear-gradient(to right, red 50%, #aaa 50%) !important
}

.tp-video-content {
    padding: 40px 40px 47px
}

.tp-video-spacing {
    padding-top: 150px
}

.tp-video-main .popup-video {
    background: var(--tp-theme-primary);
    width: 50px;
    height: 50px;
    color: var(--tp-common-black)
}

.tp-video-cst-title {
    line-height: 116%;
    color: #395953
}

.tp-video-cst-main video {
    width: 100%;
    line-height: 1;
    height: 475px;
    object-fit: cover;
    margin-bottom: -2px
}

.tp-video-cst-mask {
    position: absolute;
    bottom: 0;
    left: -1px;
    width: 101%;
    z-index: 2;
    right: -1px;
    height: 480px
}

.tp-video-cst-2-content {
    padding-top: 50px;
    padding-bottom: 350px
}

.tp-video-cst-2-content .tp-video-content {
    padding: 40px 50px 47px
}

.tp-video-md-spacing {
    height: 860px;
    width: 100%;
    overflow: hidden
}

.tp-video-md-wrap .tp-video-md-btn {
    width: 150px;
    height: 150px;
    background: var(--tp-theme-1);
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 50%
}

.tp-video-vp-img-inner-2 {
    height: 820px
}

@media only screen and (min-width:1400px) and (max-width:1599px) {
    .tp-about-ai-ring {
        width: 37%
    }

    .tp-service-pp-number {
        padding-left: 60px
    }

    .tp-service-pp-title-box {
        padding: 0 100px 30px !important
    }

    .tp-service-cst-title-wrap {
        margin-right: 80px
    }

    .tp-service-md-title {
        font-size: 38px
    }

    .tp-service-vp-bigtitle {
        font-size: 480px
    }

    .tp-video-spacing {
        padding-top: 150px
    }

    .tp-video-cst-main video {
        height: 429px
    }

    .tp-video-cst-mask {
        height: 430px
    }

    .tp-video-vp-img-inner-2 {
        height: 800px
    }
}

.tp-video-vp-img-inner-2 video {
    margin: 0 auto;
    background-position: center center;
    background-size: cover
}

.tp-portfolio-para {
    margin-bottom: -54px;
    z-index: 1;
    position: relative
}

.tp-portfolio-thumb.thumb-1 {
    height: 604px;
    width: 100%;
    overflow: hidden
}

.tp-portfolio-thumb.thumb-2 {
    height: 470px;
    width: 100%;
    overflow: hidden
}

.tp-portfolio-2-para .tp-portfolio-tag span {
    font-weight: 500;
    font-family: var(--tp-ff-p)
}

.tp-portfolio-2-content .tp-portfolio-tag span {
    margin-right: 0;
    font-weight: 500;
    font-family: var(--tp-ff-p)
}

.tp-portfolio-2-shape {
    position: absolute;
    bottom: -345px;
    right: 0;
    z-index: -1;
    width: 20%
}

.tp-portfolio-sa-shape {
    position: absolute;
    top: 0;
    right: 0;
    z-index: -1;
    width: 9%
}

.tp-portfolio-sa-item-tag {
    padding: 2px 16px;
    border-radius: 30px
}

.tp-portfolio-pp-border {
    margin-right: 110px
}

.al-brand-active .swiper-slide,
.al-brands-archi-slider .swiper-slide,
.tp-portfolio-pp-border svg,
.tp-text-ai-slider-active .swiper-slide,
.tp-text-cst-slide-active .swiper-slide,
.tp-text-it-slider-active .swiper-slide,
.tp-text-md-slider-active .swiper-slide,
.tp-text-slider-active .swiper-slide {
    width: auto
}

.tp-portfolio-pp-content .positions {
    background: var(--tp-common-white-2);
    display: inline-block;
    border-radius: 100px
}

.tp-portfolio-masonary-spacing {
    padding-top: 210px
}

.tp-portfolio-showcase-spacing {
    padding-top: 180px
}

.tp-portfolio-showcase-nav {
    display: flex;
    justify-content: space-between
}

.tp-portfolio-details-shedule ul li,
.tp-portfolio-showcase-nav span {
    font-family: var(--tp-ff-heading);
    font-weight: 500;
    color: var(--tp-common-black);
    display: flex
}

.tp-portfolio-showcase-nav span {
    font-size: 15px;
    text-transform: uppercase;
    align-items: center;
    border: 1px solid var(--tp-border-1);
    border-radius: 100px;
    padding: 6px 17px;
    transition: .4s
}

.tp-portfolio-showcase-slide-active .tp-portfolio-2-content {
    opacity: 0;
    visibility: hidden
}

.tp-portfolio-showcase-slide-active .swiper-slide.swiper-slide-active .tp-portfolio-2-content {
    -webkit-animation: 1s .3s forwards tdfadeUp;
    animation: 1s .3s both tdfadeUp;
    opacity: 1;
    visibility: visible
}

.tp-portfolio-showcase-full-subtitle {
    font-weight: 400;
    font-size: 46px;
    line-height: .87;
    margin-bottom: 40px;
    letter-spacing: .01em;
    color: var(--tp-common-white-2);
    font-family: var(--tp-ff-morganite-semibold);
    display: inline-block
}

.tp-portfolio-showcase-full-bg {
    padding: 207px 30px 220px
}

.tp-portfolio-outcome-bost {
    display: flex;
    gap: 22px;
    flex-wrap: wrap
}

.tp-portfolio-outcome-bost span {
    border: 1px solid var(--tp-border-1);
    border-radius: 100px;
    display: inline-block;
    padding: 22px 40px 17px;
    width: 312px;
    margin-bottom: 10px
}

.tp-portfolio-navigation-btn img {
    flex: 0 0 auto;
    width: 100px
}

.tp-portfolio-navigation-wrap {
    border: 1px solid var(--tp-border-1);
    padding: 35px 40px 10px
}

.tp-portfolio-navigation-grid a {
    color: var(--tp-grey-1);
    opacity: .3
}

.tp-portfolio-navigation-grid a:hover {
    color: var(--tp-common-black);
    opacity: 1
}

.tp-portfolio-cst-subtitle-wrap {
    border-bottom: 1px solid #e1e5e4
}

.tp-portfolio-cst-tag {
    border-radius: 100px;
    padding: 1px 20px
}

.tp-portfolio-cst-btn {
    border-radius: 50px;
    border: 1px solid;
    width: 50px;
    height: 50px;
    display: flex;
    justify-content: center;
    align-items: center;
    flex: 0 0 auto
}

.tp-portfolio-cst-item {
    border-bottom: 1px solid #e1e5e4;
    position: relative;
    margin-bottom: 32px
}

.tp-portfolio-cst-item::before {
    position: absolute;
    content: "";
    width: 0;
    height: 1px;
    background: var(--tp-common-black-1);
    bottom: 0;
    left: auto;
    right: 0;
    transition: .4s
}

.tp-portfolio-cst-item.active .tp-portfolio-cst-btn,
.tp-portfolio-cst-item:hover .tp-portfolio-cst-btn {
    background: var(--tp-common-green-2);
    border-color: var(--tp-common-green-2);
    transform: rotate(-45deg)
}

.tp-portfolio-cst-img-wrapper .hover-image .thumb {
    object-fit: cover;
    opacity: 0;
    position: absolute;
    top: 0;
    left: -150px;
    visibility: hidden;
    transition: .6s;
    border-radius: 20px
}

.tp-portfolio-cst-img-wrapper .hover-image.active .thumb {
    opacity: 1;
    left: 0;
    visibility: visible
}

.tp-portfolio-details-shedule {
    background: var(--tp-common-white);
    border: 1px solid var(--tp-border-1);
    padding: 43px 40px 50px
}

.tp-portfolio-details-shedule ul {
    margin-bottom: 47px
}

.tp-portfolio-details-shedule ul li {
    font-size: 18px;
    list-style: none;
    padding-bottom: 15px
}

.tp-portfolio-details-shedule ul li span {
    width: 180px;
    flex: 0 0 auto;
    display: inline-block
}

.tp-portfolio-details-shedule-btn {
    background: var(--tp-common-white-2);
    padding: 15px 20px;
    display: block;
    text-align: center
}

.tp-portfolio-details-shedule-spacing {
    margin-top: -247px;
    position: relative;
    z-index: 2
}

.tp-portfolio-details-line {
    line-height: 1;
    margin-top: -10px
}

.tp--hover-img canvas,
.tp-portfolio-mix-slider {
    height: 100%;
    width: 100%
}

.tp-portfolio-colum-spacing {
    padding-top: 200px;
    padding-bottom: 100px
}

.tp--hover-img canvas {
    position: absolute;
    top: 0;
    left: 0
}

.char-wrap {
    display: inline-flex;
    position: relative;
    overflow: hidden
}

.slider--fg {
    position: absolute;
    width: 20vw;
    min-width: 200px;
    aspect-ratio: .75;
    height: auto;
    z-index: 2;
    top: 50%;
    left: 50%
}

.tp-reveal-bg {
    width: 120px;
    height: 156px;
    opacity: 0;
    margin: -150px 0 0-150px;
    overflow: hidden;
    pointer-events: none;
    z-index: 99;
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
    -webkit-transition: opacity .3s, transform .5s cubic-bezier(.215, .61, .355, 1), -webkit-transform .5s cubic-bezier(.215, .61, .355, 1);
    -moz-transition: opacity .3s, transform .5s cubic-bezier(.215, .61, .355, 1), -webkit-transform .5s cubic-bezier(.215, .61, .355, 1);
    -ms-transition: opacity .3s, transform .5s cubic-bezier(.215, .61, .355, 1), -webkit-transform .5s cubic-bezier(.215, .61, .355, 1);
    -o-transition: opacity .3s, transform .5s cubic-bezier(.215, .61, .355, 1), -webkit-transform .5s cubic-bezier(.215, .61, .355, 1);
    transition: opacity .3s, transform .5s cubic-bezier(.215, .61, .355, 1), -webkit-transform .5s cubic-bezier(.215, .61, .355, 1)
}

.tp-text-slider-item span {
    font-family: var(--tp-ff-heading);
    font-weight: 700;
    font-size: 22px;
    color: var(--tp-common-black)
}

.tp-text-slider-item span.icons {
    padding: 0 60px;
    display: inline-block;
    transform: translateY(-2px)
}

.tp-text-slider-item span.borders {
    display: inline-block;
    width: 12px;
    height: 12px;
    background: var(--tp-common-black);
    border-radius: 30px;
    margin: 0 60px
}

.tp-text-cst-title {
    font-size: 180px
}

.tp-text-cst-title span {
    border-radius: 120px;
    width: 138px;
    height: 138px;
    background: var(--tp-common-black-1);
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 0 36px
}

.tp-text-it-item span,
.tp-text-it-slider-item span {
    text-transform: capitalize;
    display: inline-block;
    font-family: var(--tp-ff-inter)
}

.tp-text-it-slider-item span {
    font-weight: 600;
    font-size: 16px;
    letter-spacing: -.03em;
    color: var(--tp-common-black-1);
    border: 1px solid;
    border-radius: 50px;
    padding: 10px 32px;
    transition: .4s
}

.tp-text-it-slider-item span:hover {
    background: var(--tp-common-green-2);
    border-color: var(--tp-common-green-2)
}

.tp-text-it-item span {
    font-weight: 700;
    font-size: 132px;
    line-height: 1.2;
    letter-spacing: -.04em;
    color: #fff0;
    transition: background-size .6s cubic-bezier(.32, .55, .58, .76), -webkit-clip-path .6s cubic-bezier(.32, .55, .58, .76);
    cursor: pointer;
    white-space: nowrap;
    background-size: 0 100%;
    padding-right: 30px;
    background-repeat: no-repeat;
    -webkit-background-clip: text;
    -webkit-text-fill-color: #fff0;
    -webkit-text-stroke: 2px #b0d5ba;
    background-image: linear-gradient(90deg, #b0d5ba 0, #b0d5ba 50%, transparent 50.1%)
}

.tp-text-it-item span:hover {
    background-size: 200% 100%
}

.tp-text-pb-slider {
    padding: 20px 0
}

.tp-text-pb-slider .tp-text-slider-item span {
    font-family: var(--tp-ff-inter);
    font-weight: 500;
    font-size: 22px;
    text-transform: capitalize;
    color: var(--tp-grey-5)
}

.tp-text-pb-slider .tp-text-slider-item span.icons {
    padding: 0 10px 0 42px
}

.tp-text-pb-item span {
    font-weight: 600;
    font-size: 82px;
    color: var(--tp-common-black-5);
    padding-right: 20px;
    -webkit-text-fill-color: var(--tp-common-black-5);
    -webkit-text-stroke-color: var(--tp-common-black-5);
    -webkit-text-stroke-width: 0
}

.tp-text-pb-moving-bottom .tp-text-pb-item span {
    opacity: .08
}

.tp-text-ai-slider-content {
    padding: 52px 0
}

.tp-text-ai-slider-single {
    transform: rotate(3deg)
}

.tp-text-ai-slider-single-2 {
    transform: rotate(-3deg)
}

.tp-text-md-title {
    font-size: 160px;
    opacity: .05
}

.tp-testimonial-thumb-2 {
    position: absolute;
    bottom: 60px;
    right: 0;
    z-index: 2;
    overflow: hidden
}

.tp-testimonial-video {
    position: absolute;
    top: 20px;
    right: 20px
}

.tp-testimonial-video .popup-video {
    width: 36px;
    height: 36px
}

.tp-testimonial-2-content-wrap .fraction-wrapper {
    position: inherit;
    bottom: auto;
    left: auto;
    right: auto;
    margin: 96px auto 0
}

.tp-testimonial-2-shape {
    position: absolute;
    bottom: 50px;
    left: -112px
}

.fraction-wrapper {
    position: absolute;
    bottom: 110px;
    left: 0;
    width: 270px;
    z-index: 1;
    height: 12px
}

.fraction-wrapper #paginations span {
    font-size: 500;
    color: var(--tp-common-black)
}

#paginations {
    position: absolute;
    bottom: -7px;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    -o-transform: translateX(-50%);
    transform: translateX(-50%);
    z-index: 1
}

.shop-slider-progress-bar {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 200px;
    height: 1px;
    z-index: 11;
    -webkit-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    -o-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    background: var(--tp-border-1)
}

.shop-slider-progress-bar span {
    position: absolute;
    left: 0;
    top: -1px;
    height: 1px;
    width: 100%;
    transform: scaleX(1);
    transform-origin: left;
    background: var(--tp-common-black)
}

.tp-banner-thumb {
    height: 680px;
    width: 100%;
    overflow: hidden
}

.tp-banner-2-spacing {
    padding-top: 283px
}

.tp-banner-2-content {
    padding: 70px 40px 55px 60px
}

.tp-banner-pb-thumb {
    height: 950px;
    width: 100%;
    overflow: hidden
}

.tp-banner-ai-thumb {
    height: 820px;
    width: 100%;
    overflow: hidden
}

.tp-skill-wd-icon {
    border-radius: 100%;
    border: 1px solid;
    width: 80px;
    height: 80px;
    text-align: center;
    line-height: 80px;
    display: inline-block
}

.tp-skill-wd-border {
    position: absolute;
    top: 0;
    right: 0
}

.tp-skill-wd-border.borders-2 {
    right: -30px
}

.tp-skill-wd-para {
    border: 1px solid;
    border-radius: 100px;
    background: #0d0d0d;
    display: inline-block;
    padding: 8px 10px 8px 30px
}

.tp-skill-pb-title {
    font-size: 170px;
    line-height: 1
}

.tp-skill-pb-top-text {
    display: flex;
    align-items: start;
    white-space: nowrap
}

.tp-skill-pb-slider-active .swiper-slide {
    display: inline-block;
    width: auto
}

.tp-skill-pb-numbar {
    width: 60px;
    height: 60px;
    display: flex;
    justify-content: center;
    align-items: center
}

.tp-skill-pb-numbar.tp-border {
    border: 1px solid #291a10
}

.tp-skill-pb-doted {
    position: absolute;
    top: 50%;
    transform: translateY(-50%)
}

.tp-skill-pb-circale-wrap {
    gap: 32px;
    margin-top: -90px
}

.tp-skill-pb-circale.circale-1 {
    width: 678px;
    height: 678px;
    background: var(--tp-theme-secondary);
    border-radius: 100%;
    display: flex;
    justify-content: center;
    align-items: center
}

.tp-skill-pb-circale.circale-2 {
    width: 484px;
    height: 484px
}

@media only screen and (min-width:1400px) and (max-width:1599px),
only screen and (min-width:1200px) and (max-width:1399px) {

    .tp-about-me-banner,
    .tp-banner-ai-thumb {
        height: 600px
    }

    .tp-banner-pb-thumb {
        height: 750px
    }

    .tp-skill-pb-circale.circale-1 {
        width: 478px;
        height: 478px
    }

    .tp-skill-pb-circale.circale-2 {
        width: 378px;
        height: 378px
    }
}

.tp-skill-pb-circale.circale-3 {
    width: 218px;
    height: 218px
}

.tp-skill-pb-circale-content {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    left: 0;
    right: 0;
    text-align: center
}

.tp-skill-pb-border-2 .tp-skill-pb-numbar.tp-border {
    border: 1px solid #dcdbdc
}

.tp-funfact-panel,
.tp-skill-pb-panel {
    width: 100%;
    height: 100%;
    will-change: transform;
    opacity: 1 !important
}

.tp-skill-pb-panel-wrap {
    width: 100%;
    height: 100%;
    display: flex;
    -ms-flex-wrap: no-wrap;
    flex-wrap: no-wrap
}

.tp-cta-wd-shape {
    position: absolute;
    bottom: -16px;
    right: 0;
    width: 36%
}

.tp-cta-wd-email {
    border: 1px solid;
    border-radius: 100px;
    padding: 21px 35px;
    background: var(--tp-common-black)
}

.tp-cta-sa-btn,
.tp-funfact-shape-1 {
    position: absolute;
    bottom: 0;
    right: 0
}

.tp-cta-it-form .cta-it-input {
    font-family: var(--tp-ff-inter);
    font-weight: 400;
    font-size: 18px;
    letter-spacing: -.04em;
    color: var(--tp-common-black);
    opacity: .8;
    border: 1px solid;
    border-radius: 10px;
    width: 518px;
    height: 70px;
    background: #fff0
}

.tp-cta-it-form .cta-it-input:focus {
    border-color: var(--tp-common-black-1)
}

.tp-cta-it-form .cta-it-input::placeholder {
    font-family: var(--tp-ff-inter);
    font-weight: 400;
    font-size: 18px;
    letter-spacing: -.04em;
    color: var(--tp-common-black-1)
}

.tp-cta-it-scale {
    position: absolute;
    width: 100%;
    left: 0;
    top: 0;
    z-index: -1
}

.tp-cta-it-shape,
.tp-cta-it-shape-2 {
    position: absolute;
    -webkit-animation: 4s ease-in-out 1s infinite levitate-lg;
    animation: 4s ease-in-out 1s infinite levitate-lg
}

.tp-cta-it-shape {
    bottom: 0;
    left: 0;
    width: 36%
}

.tp-cta-it-shape-2 {
    top: 0;
    right: 0;
    width: 35%
}

.tp-cta-pb-wrap {
    padding: 77px 0 55px;
    flex-wrap: wrap
}

.tp-cta-ai-bg {
    padding: 87px 0 80px
}

.tp-process-sa-item-count {
    position: absolute;
    top: 0;
    left: 0;
    width: 70px;
    height: 70px;
    display: inline-block;
    text-align: center;
    line-height: 70px
}

.tp-process-sa-list ul li {
    font-weight: 500;
    color: var(--tp-common-white);
    list-style: none;
    margin-bottom: 10px
}

.tp-process-sa-shape {
    position: absolute;
    bottom: 0;
    right: 0;
    z-index: -1;
    width: 9%
}

.tp-process-pp-video-inner {
    overflow: hidden;
    border-radius: 50%;
    flex: 0 0 auto
}

.tp-process-pp-video .popup-video {
    width: 40px;
    height: 40px;
    line-height: 38px;
    background: var(--tp-common-white);
    display: inline-block
}

.tp-process-pp-video-img {
    border-radius: 50%;
    transition: .4s
}

.tp-process-pp-count {
    width: 40px;
    height: 40px;
    line-height: 40px;
    border-radius: 50%
}

.tp-process-pp-border {
    transform: translateY(32px)
}

.tp-process-it-bg {
    background: linear-gradient(180deg, #d5ffdd 0, #fff0 100%)
}

.tp-process-it-video .tp-hero-video-btn {
    display: inline-block;
    line-height: 47px
}

.tp-process-it-item {
    border: 1px solid #e0eae4;
    border-radius: 20px;
    padding: 55px 30px 27px
}

.tp-process-it-item-2,
.tp-process-it-para-3 {
    border-color: rgb(16 48 42/.1)
}

.tp-process-it-para-2 {
    background: 0 0;
    border: 1px solid #e0eae4;
    padding: 8px 32px 8px 30px
}

.tp-process-it-shape {
    position: absolute;
    top: -40px;
    right: 0;
    width: 15%;
    z-index: -1
}

.tp-team-sa-title {
    font-weight: 700;
    font-size: 145px
}

.tp-team-sa-shape {
    justify-content: flex-start;
    margin-left: 112px;
    margin-top: 146px
}

.tp-team-sa-item .tp-techonolgy-para p::before,
.tp-team-sa-para p::before {
    top: -21px
}

.tp-team-value-item.borders {
    border-bottom: 1px solid #eee;
    margin-bottom: 30px;
    padding-bottom: 15px
}

.tp-team-value-title svg {
    margin-top: 3px
}

.tp-team-carear-title {
    font-size: 25px;
    line-height: 104%
}

.tp-process-sa-list ul li,
.tp-team-carear-content p {
    font-size: 18px;
    line-height: 144%
}

.tp-team-it-big-title {
    margin-left: -100px;
    margin-bottom: -180px
}

@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:574.98px) {
    .tp-hero-cst-content {
        gap: 50px
    }

    .tp-hero-cst-bottom-border {
        padding: 21px 0
    }

    .tp-about-2-title br,
    .tp-about-cst-content p br,
    .tp-about-md-content p br,
    .tp-about-pb-feature-para br,
    .tp-faq-cst-tab-content .tp-faq-details-para p br,
    .tp-portfolio-cst-content p br,
    .tp-service-cst-item-border br,
    .tp-service-details-content p br {
        display: none
    }

    .tp-about-me-shape {
        right: 100px
    }

    .tp-about-cst-tab-wrap,
    .tp-service-md-item-wrap,
    .tp-team-it-item-right {
        margin-left: 0
    }

    .tp-about-cst-list-thumb {
        margin-left: 60px
    }

    .tp-about-it-content,
    .tp-about-md-content,
    .tp-about-pb-para p,
    .tp-faq-cst-left,
    .tp-portfolio-outcome-content,
    .tp-portfolio-pp-border,
    .tp-service-cst-title-wrap,
    .tp-service-details-content {
        margin-right: 0
    }

    .tp-about-ai-ring {
        left: -250px
    }

    .tp-brand-cst-spacing {
        padding: 100px 0
    }

    .tp-service-item {
        padding: 25px
    }

    .tp-service-pp-number {
        padding: 0
    }

    .tp-service-it-item {
        padding: 46px 30px 75px
    }

    .tp-service-md-title {
        font-size: 35px
    }

    .tp-video-cst-2-content .tp-video-content {
        padding: 30px 30px 37px;
        margin-right: 0
    }

    .tp-portfolio-outcome-bost span {
        width: 300px
    }

    .tp-portfolio-details-shedule-spacing {
        margin-top: 50px
    }

    .tp-banner-2-spacing {
        padding-top: 200px
    }

    .tp-skill-pb-circale-wrap {
        margin-top: 0
    }

    .tp-team-it-big-title {
        margin-left: -30px;
        margin-bottom: -100px
    }
}

.tp-team-it-big-title h2 {
    font-size: 300px;
    background: linear-gradient(180deg, rgb(16 48 42/.1)0, #fff0 100%);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: #fff0;
    color: #fff0
}

@media only screen and (min-width:1200px) and (max-width:1399px) {
    .tp-service-pp-title-box {
        padding: 0 50px 30px !important
    }

    .tp-service-vp-bigtitle {
        font-size: 440px
    }

    .tp-video-spacing {
        padding-top: 120px
    }

    .tp-video-vp-img-inner-2 {
        height: 780px
    }

    .tp-portfolio-details-content {
        margin-right: 50px
    }

    .tp-team-it-big-title h2 {
        font-size: 250px
    }
}

@media only screen and (min-width:992px) and (max-width:1199px) {
    .tp-service-vp-bigtitle {
        font-size: 360px
    }

    .tp-video-vp-img-inner-2 {
        height: 500px;
        margin-top: 120px
    }

    .tp-portfolio-sa-title {
        font-size: 110px
    }

    .tp-portfolio-navigation-title br {
        display: none
    }

    .tp-team-it-big-title h2 {
        font-size: 185px
    }
}

.tp-team-it-item {
    border: 1px solid #e7eaea;
    border-radius: 14px
}

.tp-team-it-item:hover .tp-team-it-socials-icon {
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0)
}

.tp-team-it-item-single {
    margin-right: -67px;
    margin-left: 37px;
    margin-top: 153px
}

@media only screen and (min-width:1200px) and (max-width:1399px),
only screen and (min-width:992px) and (max-width:1199px) {
    .tp-blog-title-wrap .tp-section-title {
        margin-left: 120px
    }

    .tp-hero-2-left {
        padding-left: 50px
    }

    .tp-hero-wd-bottom-info {
        padding: 38px 50px 35px
    }

    .tp-about-md-title {
        font-size: 150px
    }

    .tp-video-cst-main video {
        height: 370px
    }

    .tp-video-cst-mask {
        height: 380px
    }

    .tp-portfolio-showcase-spacing {
        padding-top: 130px
    }

    .tp-team-it-item-single {
        margin-right: 0;
        margin-left: -50px
    }
}

.tp-team-it-thumb {
    background: var(--tp-grey-5);
    display: block;
    border-radius: 20px;
    position: relative
}

.tp-team-it-thumb::before {
    position: absolute;
    content: "";
    height: 100%;
    background: linear-gradient(180deg, #fff0 55.57%, #b4e717 100%);
    bottom: 0;
    left: 0;
    opacity: 0;
    visibility: hidden;
    transition: .4s
}

.tp-team-it-thumb img,
.tp-team-it-thumb::before {
    border-radius: 20px;
    width: 100%
}

.tp-team-it-content {
    padding: 20px
}

.tp-faq-wrap .tp-faq-btn {
    font-weight: 700;
    font-size: 18px;
    color: var(--tp-common-black);
    background: 0 0;
    border-color: #fff0;
    display: flex;
    justify-content: space-between;
    padding: 17px 30px
}

.tp-faq-wrap .tp-faq-btn:focus {
    outline: inherit;
    box-shadow: none;
    border-color: none
}

.tp-faq-wrap .tp-faq-btn:not(.collapsed) {
    box-shadow: none;
    background: #fff0
}

.tp-faq-wrap .accordion-item:not(:first-of-type) {
    border: 1px solid #eee
}

.tp-faq-wrap .accordion-item:first-of-type,
.tp-faq-wrap .accordion-item:first-of-type .accordion-button,
.tp-faq-wrap .accordion-item:last-of-type {
    border-radius: 0
}

.tp-faq-wrap .tp-faq-active {
    border: #fff0;
    background: var(--tp-common-white-2)
}

.tp-faq-wrap .tp-faq-active .accordion-btn {
    color: var(--tp-common-black);
    padding-left: 30px
}

.al-feature-shop-border-2 .row [class*=col-]:last-child .al-feature-shop-item-2::after,
.al-tab-hide,
.tp-faq-wrap .accordion-button::after,
.tp-footer-cst-menu ul li:last-child::after {
    display: none
}

.tp-faq-wrap .accordion-btn {
    color: #d9d9d9
}

.tp-faq-wrap .accordion-body {
    padding: 0 30px 18px
}

.tp-faq-details-para p {
    font-size: 14px;
    line-height: 144%
}

.tp-faq-details-para ul {
    margin-left: 10px
}

.tp-faq-details-para ul li {
    list-style: disc;
    font-weight: 400;
    font-size: 14px;
    color: rgb(16 48 42/.8)
}

.tp-faq-list-title {
    font-size: 18px;
    color: var(--tp-grey-1);
    display: inline-block
}

.tp-faq-spacing {
    padding-top: 230px
}

.tp-faq-cst-tag .cst-btn {
    font-family: var(--tp-ff-dm);
    font-weight: 400;
    font-size: 20px;
    color: var(--tp-grey-5);
    border-radius: 50px;
    padding: 8px 21px;
    background: var(--tp-common-black-1);
    display: inline-block;
    position: absolute;
    z-index: 1;
    top: 100px;
    -webkit-animation: 1s infinite mymove;
    animation: 1s infinite mymove
}

.tp-faq-cst-tag .cst-btn-1 {
    left: 277px
}

.tp-faq-cst-tag .cst-btn-2 {
    background: #bdffc5;
    color: var(--tp-common-black);
    left: 28px;
    top: 45%;
    -webkit-animation: 1.1s infinite mymove;
    animation: 1.1s infinite mymove
}

.tp-faq-cst-tag .cst-btn-3 {
    background: #ff6d00;
    color: var(--tp-common-white);
    right: 42%;
    top: 56%;
    -webkit-animation: .9s infinite mymove;
    animation: .9s infinite mymove
}

.tp-faq-cst-tag .cst-btn-4 {
    right: 0;
    top: 54%;
    -webkit-animation: 1.2s infinite mymove;
    animation: 1.2s infinite mymove
}

.tp-faq-cst-tag .cst-btn-5 {
    background: #b4e717;
    color: var(--tp-common-black);
    left: 25%;
    top: auto;
    bottom: 7%;
    -webkit-animation: 1.3s infinite mymove;
    animation: 1.3s infinite mymove
}

.tp-faq-cst-tab-content .tp-faq-btn {
    font-weight: 600;
    font-size: 20px;
    color: var(--tp-common-black-1);
    padding: 27px 30px 27px 0
}

.tp-faq-cst-tab-content .tp-faq-btn .accordion-btn {
    position: absolute;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
    display: inline-block;
    width: 12px;
    height: 12px
}

.tp-faq-cst-tab-content .tp-faq-btn .accordion-btn::after {
    position: absolute;
    content: "";
    width: 100%;
    height: 2px;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    border-radius: 2px;
    transition: .4s;
    background: #000
}

.tp-faq-cst-tab-content .tp-faq-btn .accordion-btn::before {
    position: absolute;
    content: "";
    width: 2px;
    height: 100%;
    left: 50%;
    top: 0;
    transform: translateX(-50%);
    border-radius: 2px;
    transition: .4s;
    background: #000
}

.tp-faq-cst-tab-content .tp-faq-btn .accordion-button:not(.collapsed) {
    color: var(--tp-common-black);
    background: 0 0;
    box-shadow: none
}

.tp-faq-cst-tab-content .tp-faq-btn:not(.collapsed) .accordion-btn::before {
    transform: translateX(-50%) rotate(90deg);
    background: var(--tp-common-black);
    opacity: 1
}

.tp-faq-cst-tab-content .tp-faq-btn:not(.collapsed) .accordion-btn::after {
    background: var(--tp-common-black);
    opacity: 1
}

.tp-faq-cst-tab-content .accordion-item:not(:first-of-type) {
    border: 0;
    border-bottom: 1px solid #e1e5e4
}

.tp-faq-cst-tab-content .accordion-item {
    border: 0;
    border-bottom: 1px solid #e1e5e4;
    background: #fff0
}

.tp-faq-cst-tab-content .accordion-body {
    padding: 0 30px 18px 0
}

.tp-faq-cst-tab-content .tp-faq-details-para p {
    color: rgb(16 48 42/.8);
    margin-bottom: 7px
}

.tp-faq-pb-tab-content .tp-faq-btn {
    font-family: var(--tp-ff-inter);
    font-weight: 500;
    font-size: 18px;
    color: var(--tp-common-black-5);
    padding: 32px 30px 32px 0;
    text-align: left
}

.tp-faq-pb-tab-content .tp-faq-details-para p {
    font-family: var(--tp-ff-inter);
    color: #66666c;
    line-height: 162%;
    margin-bottom: 18px
}

.tp-faq-ai-tab-content .tp-faq-btn {
    color: var(--tp-grey-5);
    font-weight: 600;
    font-size: 18px;
    letter-spacing: -.04em;
    padding: 13px 20px 13px 0;
    text-align: left
}

.tp-faq-ai-tab-content .tp-faq-btn .accordion-btn {
    width: 14px;
    height: 14px
}

.tp-faq-ai-tab-content .tp-faq-details-para p {
    color: var(--tp-grey-5);
    opacity: .8;
    font-weight: 400;
    font-size: 14px;
    line-height: 156%;
    letter-spacing: -.03em;
    padding-left: 53px
}

.tp-faq-ai-tab-content .accordion-item {
    border-color: rgb(255 255 255/.1);
    padding: 12px 16px
}

.tp-faq-ai-tab-content .accordion-item:not(:first-of-type) {
    border-color: rgb(255 255 255/.1)
}

.tp-faq-ai-count {
    padding-right: 30px
}

.tp-faq-md-tab-content .tp-faq-btn {
    font-family: var(--tp-ff-familjen);
    letter-spacing: -.03em;
    color: var(--tp-common-black-5);
    text-align: left
}

.tp-faq-md-tab-content .accordion-body {
    padding: 0 80px 18px 0
}

.tp-faq-md-thumb {
    margin-right: -90px
}

.tp-faq-md-shape {
    position: absolute;
    top: 110px;
    right: -32px
}

.tp-faq-cst-tab-content-2 .tp-faq-details-para p {
    color: rgb(16 48 42/.8)
}

.tp-faq-cst-tab-content-2 .accordion-item,
.tp-faq-cst-tab-content-2 .accordion-item:not(:first-of-type) {
    border-color: rgb(17 17 18/.1)
}

.tp-faq-hero-title-wrap {
    padding-top: 138px;
    padding-bottom: 140px
}

.tp-contact-spacing {
    padding-top: 218px
}

.tp-contact-number {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    padding: 20px 40px 5px;
    border: 1px solid var(--tp-border-1)
}

.tp-contact-icon {
    width: 30px;
    height: 30px;
    background: var(--tp-theme-primary-dark);
    color: var(--tp-common-black);
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center
}

.tp-contact-email {
    font-weight: 400;
    font-size: 18px;
    color: var(--tp-common-black)
}

.tp-contact-form {
    padding: 40px
}

.tp-contact-form .tp-postbox-details-input input::placeholder,
.tp-contact-form .tp-postbox-details-input textarea::placeholder {
    font-size: 18px
}

.tp-contact-form .tp-postbox-details-input .tp-textarea {
    height: 180px
}

.tp-contact-shape {
    position: absolute;
    bottom: 0;
    right: 0;
    z-index: -1;
    width: 30%
}

.tp-contact-map-box iframe {
    height: 680px;
    width: 100%;
    line-height: 1;
    filter: saturate(0)
}

.tp-contact-us-text p {
    font-size: 18px;
    font-weight: 400;
    color: rgb(245 247 245/.5)
}

.tp-contact-us-form-wrapper {
    padding: 10px;
    border-radius: 14px;
    background: #f6f6f9
}

.tp-contact-us-map,
.tp-contact-us-map iframe {
    width: 100%;
    height: 100%;
    border-radius: 8px
}

.tp-contact-us-title {
    font-size: 30px;
    font-weight: 600;
    letter-spacing: -.6px;
    color: var(--tp-common-black)
}

.tp-contact-us-wrap {
    padding: 110px
}

@media only screen and (min-width:1400px) and (max-width:1599px) {
    .tp-contact-us-wrap {
        padding: 50px
    }
}

@media only screen and (min-width:1200px) and (max-width:1399px) {
    .tp-contact-us-wrap {
        padding: 40px
    }
}

@media only screen and (min-width:992px) and (max-width:1199px),
only screen and (min-width:768px) and (max-width:991px) {
    .tp-footer-top-title {
        font-size: 120px
    }

    .tp-hero-title {
        font-size: 46px
    }

    .tp-hero-pb-shape-2 {
        left: 42px
    }

    .tp-testimonial-thumb-2 {
        bottom: 0
    }

    .tp-faq-hero-title-wrap {
        padding-top: 108px;
        padding-bottom: 110px
    }

    .tp-contact-us-wrap {
        padding: 30px
    }
}

.tp-contact-us-thumb {
    overflow: hidden;
    border-radius: 10px;
    margin-top: 20px;
    margin-bottom: 20px
}

.tp-contact-us-thumb i,
.tp-contact-us-thumb img {
    width: 100%;
    transition: .9s;
    border-radius: 10px
}

.tp-contact-us-content {
    padding: 15px;
    border-radius: 14px;
    background: #f6f6f9
}

.al-hero-seo-bg,
.cn-contactform-support-bg {
    background-size: cover;
    background-repeat: no-repeat
}

.tp-contact-us-info-title {
    font-size: 24px;
    font-weight: 600;
    color: var(--tp-common-black);
    letter-spacing: -.52px;
    margin-bottom: 25px;
    padding-bottom: 20px;
    border-bottom: 1px solid
}

.tp-contact-us-info-details {
    margin-bottom: 0
}

.tp-contact-us-info-details a {
    font-size: 20px;
    font-weight: 400;
    display: block;
    margin-bottom: 15px
}

.tp-contact-us-bottom {
    padding: 0 22px 28px
}

.cn-contactform-support-bg {
    object-fit: cover;
    height: 385px
}

.cn-contactform-support-text span {
    font-size: 44px;
    font-weight: 500;
    line-height: 52px;
    max-width: 755px;
    margin: 0 auto;
    display: inline-block;
    letter-spacing: -.88px;
    color: var(--tp-common-black)
}

@media only screen and (max-width:1024px) {
    .showcase-gallery .clapat-slider {
        padding: 0 10vw
    }

    .showcase-gallery .clapat-slide {
        width: 80vw;
        padding: 0 2vw
    }

    .slide-effects {
        height: 50dvh
    }

    .slider-zoom-wrapper .trigger-item {
        width: 70vw
    }

    .slider-thumbs-wrapper {
        width: 240px;
        height: 60px;
        bottom: 20px
    }
}

@media only screen and (max-width:767px) {
    .tp-snap-slider-thumbs-wrapper {
        width: 40vw;
        height: 40vw
    }

    .external-categories .slide-cat {
        font-size: 18px
    }

    .slide-effects {
        height: 50dvh
    }

    .slider-zoom-wrapper .trigger-item {
        width: 70vw
    }

    .slider-thumbs-wrapper {
        width: 220px;
        height: 50px;
        bottom: 15px
    }
}

@media only screen and (max-width:479px) {
    .slide-effects {
        height: 40vh;
        height: 40dvh
    }

    .slider-zoom-wrapper .trigger-item {
        width: 80vw
    }

    .slider-thumbs-wrapper {
        width: 220px;
        height: 50px;
        bottom: 15px
    }
}

.tp-feature-md-btn {
    border: 1px solid;
    padding: 18px 33px;
    transition: .4s;
    overflow: hidden;
    display: flex
}

.tp-feature-md-btn:hover {
    background: var(--tp-theme-1);
    color: var(--tp-grey-5);
    width: auto
}

.tp-feature-md-btn:hover span {
    opacity: 1;
    visibility: visible;
    margin-left: 0
}

.tp-feature-md-btn span {
    opacity: 0;
    visibility: hidden;
    transition: .4s;
    margin-left: -92px
}

.tp-feature-md-item {
    border-radius: 16px;
    padding: 40px 42px
}

.tp-funfact-yellow-shape,
.tp-funfact-yellow-shape-2,
.tp-funfact-yellow-shape-3,
.tp-funfact-yellow-shape-4 {
    z-index: -1;
    border-radius: 100px;
    position: absolute
}

.tp-feature-md-icon {
    flex: 0 0 auto;
    margin-top: 10px
}

@media only screen and (min-width:1700px) and (max-width:1800px),
only screen and (min-width:1600px) and (max-width:1700px),
only screen and (min-width:1400px) and (max-width:1599px),
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:574.98px) {
    .tp-feature-md-icon {
        margin-right: 15px
    }
}

@media only screen and (min-width:1400px) and (max-width:1599px),
(max-width:574.98px) {
    .tp-feature-md-item {
        flex-direction: column
    }

    .tp-feature-md-icon {
        margin-bottom: 20px
    }
}

@media only screen and (min-width:1400px) and (max-width:1599px),
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:574.98px) {
    .tp-feature-md-item {
        padding: 40px 30px
    }

    .tp-feature-md-icon img {
        width: 40px
    }
}

.tp-funfact-img img {
    height: 146px;
    width: 146px;
    border-radius: 50%;
    object-fit: contain;
    transition: .4s
}

.tp-funfact-img img:hover {
    box-shadow: 0 4px 4px 0 rgb(0 0 0/.09)
}

.tp-funfact-green-wrap {
    padding-top: 130px;
    padding-bottom: 70px;
    border-right: 10px solid #fff
}

.tp-funfact-title {
    line-height: 98%
}

.tp-funfact-number {
    margin-left: -20px
}

.tp-funfact-number span,
.tp-funfact-number span i {
    color: var(--tp-common-black-5);
    display: inline-block
}

.tp-funfact-number span {
    font-family: var(--tp-ff-familjen);
    font-size: 350px;
    font-weight: 700;
    line-height: 1;
    letter-spacing: -.1em
}

@media only screen and (min-width:1200px) and (max-width:1399px) {
    .tp-funfact-number span {
        font-size: 330px
    }
}

@media only screen and (min-width:992px) and (max-width:1199px) {
    .tp-funfact-img img {
        height: 100px;
        width: 100px;
        object-fit: contain
    }

    .tp-funfact-number span {
        font-size: 250px
    }
}

@media only screen and (min-width:768px) and (max-width:991px),
only screen and (min-width:576px) and (max-width:767px) {
    .tp-breadcrumb-4-spacing {
        padding-bottom: 210px
    }

    .tp-hero-bottom-border svg {
        width: auto
    }

    .tp-brand-slide-active .swiper-slide {
        margin: 0 50px
    }

    .tp-portfolio-cst-img-wrapper {
        height: 440px
    }

    .tp-skill-pb-title {
        font-size: 100px
    }

    .tp-contact-map-box iframe {
        height: 400px
    }

    .tp-funfact-number span {
        font-size: 200px
    }

    .al-hero-shop-thumb img {
        max-width: inherit
    }
}

.tp-funfact-number span i {
    -webkit-text-stroke: 6px #f8f8fb;
    margin-left: -15px;
    font-style: normal
}

.tp-funfact-number span em {
    margin-right: 45px
}

.tp-funfact-green-wrap.pink-style .tp-funfact-number span i {
    color: var(--tp-common-white);
    -webkit-text-stroke: 6px #121a26
}

.tp-funfact-green-wrap.yellow-style {
    padding-top: 200px
}

.tp-funfact-green-wrap.yellow-style .tp-funfact-subtitle,
.tp-funfact-green-wrap.yellow-style .tp-funfact-title {
    color: var(--tp-theme-yellow)
}

.tp-funfact-panel-wrap {
    width: 300%;
    height: 100%;
    -ms-flex-wrap: no-wrap;
    flex-wrap: no-wrap
}

@media only screen and (min-width:768px) and (max-width:991px),
(max-width:574.98px) {
    .tp-funfact-big-img img {
        width: 100px
    }
}

.tp-funfact-yellow-shape {
    left: 180px;
    top: -45px
}

.tp-funfact-yellow-shape-2 {
    right: 280px;
    top: -85px
}

.tp-funfact-yellow-shape-3 {
    left: 0;
    bottom: -40px
}

.tp-funfact-yellow-shape-4 {
    right: 0;
    bottom: 30px
}

@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:574.98px) {
    .gx-50 {
        --bs-gutter-x: 15px
    }

    .gx-60,
    .gx-90 {
        --bs-gutter-x: 30px
    }

    .pt-180 {
        padding-top: 100px
    }

    .pt-190 {
        padding-top: 110px
    }

    .al-section-title br,
    .tp-about-top-content p br,
    .tp-blog-pp-title-wrap p br,
    .tp-blog-top-title br,
    .tp-hero-pp-para br,
    .tp-megamenu-list ul::after,
    .tp-megamenu-thumb,
    .tp-offcanvas-menu ul li.has-dropdown span,
    .tp-process-pp-video-wrap p br,
    .tp-service-cst-top-content p br,
    .tp-service-hero-right p br,
    .tp-service-it-shape,
    .tp-skill-pb-para br {
        display: none
    }

    .tp-breadcrumb-2-spacing,
    .tp-faq-hero-spacing {
        padding-top: 80px
    }

    .tp-header-it-bg {
        margin-top: 0;
        padding: 10px 33px
    }

    .header-sticky.tp-header-vp-spacing,
    .tp-header-md-main {
        padding: 15px 0
    }

    .tp-megamenu-wrapper {
        padding-top: 25px
    }

    .tp-megamenu-title {
        padding-left: 20px
    }

    .tp-about-wd-thumb4,
    .tp-portfolio-details-content,
    .tp-postbox-wrapper {
        margin-right: 0
    }

    .tp-blog-top-content {
        padding: 40px 50px
    }

    .tp-blog-it-item {
        margin-top: 0
    }

    .tp-about-pb-feature-right,
    .tp-about-pb-para,
    .tp-faq-cst-tab-content,
    .tp-footer-it-widget,
    .tp-footer-wd-widget,
    .tp-hero-it-content,
    .tp-skill-pb-para {
        margin-left: 0
    }

    .tp-footer-it-widget-form {
        width: 100%
    }

    .tp-hero-title-sm {
        height: 55px;
        transform: translateY(-1px)
    }

    .tp-hero-bottom-box,
    .tp-team-it-content {
        padding: 20px
    }

    .tp-hero-2-title {
        font-size: 64px
    }

    .tp-hero-2-bottom-shape img {
        height: 44px
    }

    .tp-hero-2-shape {
        margin-left: -40px
    }

    .tp-hero-pp-title img {
        transform: translateY(-6px);
        width: 150px
    }

    .tp-hero-pp-para {
        margin-left: 50px
    }

    .tp-hero-cst-bottom-content {
        padding-top: 300px
    }

    .tp-hero-cst-bottom-right {
        margin-top: 5px
    }

    .tp-hero-it-social {
        display: none !important
    }

    .tp-hero-it-bigtitle-wrap {
        padding-top: 40px
    }

    .tp-about-wd-thumb3 {
        top: -150px
    }

    .tp-about-top-spacing {
        padding-top: 130px
    }

    .tp-about-me-banner,
    .tp-banner-ai-thumb,
    .tp-banner-thumb {
        height: 400px
    }

    .tp-about-feature-info {
        padding: 60px 30px 40px
    }

    .tp-service-3-item ul li a,
    .tp-service-item ul li a {
        font-size: 20px
    }

    .tp-service-2-icon {
        margin-bottom: 100px
    }

    .tp-service-3-item {
        padding: 25px
    }

    .tp-service-wd-item-title span {
        margin-right: 20px
    }

    .tp-service-pp-title-box {
        padding: 0 15px 30px !important
    }

    .tp-service-hero-spacing,
    .tp-video-spacing {
        padding-top: 150px
    }

    .tp-service-hero-shape {
        right: 0
    }

    .tp-service-cst-info {
        margin-left: 12px;
        margin-right: 12px
    }

    .tp-video-cst-mask img {
        height: 100%
    }

    .tp-portfolio-item {
        margin-left: 0;
        margin-right: 0
    }

    .tp-portfolio-showcase-slide-active .tp-portfolio-2-content {
        padding: 0 12px
    }

    .tp-portfolio-showcase-full-bg {
        padding: 160px 30px 150px
    }

    .tp-text-md-title {
        font-size: 120px
    }

    .fraction-wrapper {
        position: inherit;
        margin-top: 30px;
        bottom: auto
    }

    .tp-banner-pb-thumb {
        height: 650px
    }

    .tp-skill-wd-border {
        right: -25px
    }

    .tp-skill-pb-circale.circale-1 {
        width: 400px;
        height: 400px
    }

    .tp-skill-pb-circale.circale-2 {
        width: 280px;
        height: 280px
    }

    .tp-skill-pb-panel-wrap {
        flex-wrap: wrap
    }

    .tp-cta-ai-bg {
        padding: 50px 0 60px
    }

    .tp-faq-spacing {
        padding-top: 170px
    }

    .tp-funfact-green-wrap {
        border-right: 0;
        border-bottom: 10px solid #fff
    }

    .tp-funfact-green-wrap.yellow-style {
        padding-top: 100px;
        padding-bottom: 100px
    }

    .tp-funfact-panel-wrap {
        width: 100%;
        height: 100%;
        flex-wrap: wrap
    }

    .tp-funfact-yellow-shape {
        width: 100px;
        left: 50px
    }

    .tp-funfact-yellow-shape-2 {
        width: 100px;
        right: 80px;
        top: 0
    }

    .tp-funfact-yellow-shape-3,
    .tp-funfact-yellow-shape-4 {
        width: 100px
    }
}

.ar-funfact-item h4,
.ar-funfact-item span {
    line-height: .8;
    font-size: 100px;
    letter-spacing: -.04em;
    color: var(--tp-common-black);
    font-family: var(--tp-ff-clash-regular)
}

.ar-funfact-item span {
    font-weight: 500;
    font-size: 16px;
    line-height: 1;
    letter-spacing: 1px;
    font-family: var(--tp-ff-clash-medium)
}

.ar-funfact-item h4 i {
    font-style: normal
}

.ar-funfact-bg {
    padding: 45px 0 0
}

.custom-select {
    position: relative;
    width: 200px;
    border: 1px solid #ccc;
    cursor: pointer
}

.custom-select .selected {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 10px;
    background: #fff
}

.custom-select .selected.open .arrow {
    transform: rotate(-135deg)
}

.custom-select .selected.open+.options {
    max-height: 500px;
    opacity: 1
}

.custom-select .selected .arrow {
    display: inline-block;
    width: 8px;
    height: 8px;
    border: solid #333;
    border-width: 0 1px 1px 0;
    transform: rotate(45deg);
    transition: transform .3s
}

.custom-select .options {
    position: absolute;
    top: 100%;
    left: 0;
    width: 100%;
    background: #fff;
    border: 1px solid #ccc;
    max-height: 0;
    overflow: hidden;
    opacity: 0;
    z-index: 100;
    transition: max-height .3s, opacity .3s
}

.custom-select .options li {
    padding: 10px;
    cursor: pointer;
    list-style: none;
    transition: background .2s
}

.custom-select .options li:hover {
    background: #f0f0f0
}

.tp-pagination ul {
    display: -webkit-flex;
    justify-content: center
}

.tp-pagination ul li:not(:last-child) {
    margin-right: 6px
}

.tp-pagination ul li a,
.tp-pagination ul li span {
    display: inline-block;
    width: 40px;
    height: 40px;
    line-height: 38px;
    text-align: center;
    border: 1px solid;
    font-size: 16px;
    font-weight: 500
}

.tp-pagination ul li a.current,
.tp-pagination ul li a:hover,
.tp-pagination ul li span.current,
.tp-pagination ul li span:hover {
    background: var(--tp-theme-color);
    border-color: var(--tp-theme-color);
    color: var(--tp-white)
}

.tp-error-title {
    font-weight: 700;
    font-size: 64px;
    margin-bottom: 50px;
    color: var(--tp-common-black)
}

.tp-error-title-sm {
    font-weight: 600;
    font-size: 26px;
    line-height: 1;
    color: var(--tp-common-black)
}

.tp-error-content p {
    font-weight: 400;
    font-size: 18px;
    color: #57575a;
    margin-bottom: 30px
}

.tp-error-content .tp-btn {
    height: 60px;
    line-height: 55px;
    border-radius: 40px;
    padding: 0 18px 0 24px;
    font-weight: 500;
    font-size: 18px;
    letter-spacing: .03em;
    z-index: 9;
    overflow: hidden;
    display: inline-block;
    text-transform: capitalize;
    position: relative;
    transition: .3s;
    color: var(--tp-common-white);
    border: 2px solid #fff0;
    background: var(--tp-common-black)
}

.tp-error-content .tp-btn:hover {
    color: var(--tp-common-black);
    border-color: var(--tp-common-black);
    background: #fff0
}

.al-hero-seo-bg {
    padding-top: 260px;
    background-position: center
}

@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) {
    .tp-section-md-title {
        font-size: 50px
    }

    .al-hero-seo-bg {
        padding-top: 200px
    }
}

@media only screen and (min-width:768px) and (max-width:991px) {
    .tp-footer-it-bigtext {
        font-size: 275px
    }

    .tp-hero-it-bigtitle {
        font-size: 125px
    }

    .tp-hero-pb-bigtitle {
        font-size: 160px
    }

    .tp-about-md-title {
        font-size: 110px
    }

    .tp-service-vp-bigtitle {
        font-size: 270px
    }

    .tp-service-vp-item {
        width: 690px
    }

    .tp-video-cst-main video {
        height: 290px
    }

    .tp-video-cst-mask {
        height: 300px
    }

    .tp-video-vp-img-inner-2 {
        height: 400px;
        margin-top: 170px
    }

    .tp-portfolio-sa-title {
        font-size: 90px
    }

    .tp-text-cst-title {
        font-size: 130px
    }

    .tp-contact-us-map {
        height: 500px;
        margin-bottom: 30px
    }
}

.al-hero-archi-title a,
.al-hero-seo-playbtn span {
    display: inline-block;
    background: var(--tp-common-white)
}

.al-hero-seo-playbtn span {
    height: 46px;
    width: 46px;
    line-height: 44px;
    border-radius: 50%;
    text-align: center;
    margin-right: 10px;
    color: var(--tp-common-black-1);
    animation: 3s linear infinite animate-pulse
}

.al-hero-seo-playbtn span svg {
    margin-left: 2px
}

.al-hero-seo-playbtn i {
    font-weight: 600;
    font-size: 22px;
    display: inline-block;
    transform: translateY(3px);
    color: var(--tp-common-black-1);
    font-family: var(--tp-ff-playfair)
}

.al-hero-seo-dashboard::after {
    position: absolute;
    content: "";
    bottom: 0;
    left: 0;
    height: 220px;
    width: 100%;
    background: linear-gradient(180deg, #fff0 0, #fff 85.94%)
}

.al-hero-seo-shape-1 {
    position: absolute;
    bottom: 180px;
    left: -90px;
    z-index: 2
}

.al-hero-archi-title {
    font-size: 120px;
    letter-spacing: 2px;
    line-height: 1
}

@media only screen and (min-width:1200px) and (max-width:1399px) {
    .al-hero-archi-title {
        font-size: 90px
    }
}

@media only screen and (min-width:768px) and (max-width:991px),
only screen and (min-width:576px) and (max-width:767px),
(max-width:574.98px) {
    .scrollToTop {
        height: 40px;
        width: 40px
    }

    .tp-about-ai-ring,
    .tp-header-2-country,
    .tp-hero-2-shape,
    .tp-hero-it-title br,
    .tp-service-ai-ring,
    .tp-service-details-icon,
    .tp-service-vp-para br,
    .tp-skill-wd-border,
    .tp-testimonial-2-content h5 br {
        display: none
    }

    .tp-header-pb-bottom {
        border-top: none
    }

    .tp-about-cst-list-wrap,
    .tp-about-md-content,
    .tp-about-md-expreance-content,
    .tp-about-sa-thumb2 .tp-about-wd-thumb4,
    .tp-blog-cst-para,
    .tp-blog-title-wrap .tp-section-title,
    .tp-footer-cst-widget-form,
    .tp-hero-2-impact-wrap,
    .tp-hero-bottom-right,
    .tp-hero-pp-para,
    .tp-portfolio-cst-list-wrap,
    .tp-service-cst-title-wrap,
    .tp-skill-wd-item,
    .tp-team-sa-shape {
        margin-left: 0
    }

    .tp-footer-menu ul {
        justify-content: flex-start;
        margin-top: 10px
    }

    .tp-footer-menu ul li {
        margin-left: 0;
        margin-right: 30px
    }

    .tp-hero-spacing {
        padding-top: 100px
    }

    .tp-hero-bottom-content {
        margin-top: 20px
    }

    .tp-hero-2-author,
    .tp-hero-sa-thumb {
        margin-left: 0;
        margin-top: 0
    }

    .tp-hero-bottom-thumb,
    .tp-hero-wd-text,
    .tp-service-cst-slider {
        margin-right: 0
    }

    .tp-hero-right-shape {
        padding-top: 0
    }

    .tp-funfact-title,
    .tp-hero-2-left {
        padding-left: 0
    }

    .tp-hero-2-spacing {
        padding-top: 90px
    }

    .tp-hero-wd-spacing {
        padding-top: 125px
    }

    .tp-hero-pp-thumb {
        justify-content: flex-start
    }

    .tp-hero-it-spacing {
        padding-bottom: 0
    }

    .tp-hero-it-counter-wrap {
        justify-content: left;
        gap: 50px
    }

    .tp-about-wd-shape {
        align-items: start;
        margin-right: 0;
        margin-top: 0;
        margin-bottom: 30px
    }

    .tp-about-wd-expreance,
    .tp-contact-us-content,
    .tp-portfolio-item,
    .tp-service-hero-right {
        margin-top: 0
    }

    .tp-about-wd-para-wrap {
        margin-bottom: 0
    }

    .tp-about-sa-thumb2 .tp-about-wd-thumb3 {
        top: 0
    }

    .tp-about-me-email {
        text-align: left
    }

    .tp-about-it-subtitle,
    .tp-about-md-title-wrap,
    .tp-about-me-title,
    .tp-portfolio-title-wrap,
    .tp-service-it-subtitle {
        margin-bottom: 20px
    }

    .tp-about-cst-thumb-wrap {
        margin-right: 0;
        padding-right: 0;
        border: 0
    }

    .tp-about-pb-para,
    .tp-portfolio-para,
    .tp-service-2-para,
    .tp-service-2-title {
        margin-bottom: 40px
    }

    .tp-about-ai-text .has-scale-image {
        width: 48px;
        height: 48px
    }

    .tp-service-2-para p {
        margin-left: 50px
    }

    .tp-service-2-para p::before {
        height: 100%;
        top: 0
    }

    .tp-service-cst-content {
        margin-right: 32px
    }

    .tp-service-cst-item {
        padding-right: 0;
        border: 0
    }

    .tp-video-cst-wrap {
        margin-top: 100px
    }

    .tp-portfolio-2-para {
        padding-top: 30px
    }

    .tp-portfolio-2-slider-active {
        width: 300px !important
    }

    .tp-portfolio-sa-title-wrap>span {
        margin-left: 0;
        margin-bottom: 10px;
        margin-right: 0
    }

    .tp-portfolio-masonary-spacing {
        padding-top: 140px
    }

    .tp-portfolio-showcase-spacing {
        padding-top: 120px
    }

    .tp-portfolio-navigation-btn {
        justify-content: center
    }

    .tp-portfolio-cst-content,
    .tp-portfolio-cst-img-wrapper .hover-image {
        height: 100%
    }

    .tp-text-cst-title span {
        width: 90px;
        height: 90px
    }

    .tp-text-ai-slider-content {
        padding: 32px 0
    }

    .tp-skill-pb-circale-wrap {
        flex-wrap: wrap;
        justify-content: center !important
    }

    .tp-team-sa-title-wrap {
        margin-bottom: 100px
    }

    .tp-team-it-big-title {
        margin-bottom: -30px
    }

    .tp-team-it-big-title h2 {
        font-size: 135px
    }

    .tp-team-it-item-single {
        margin-top: 0;
        margin-left: 0
    }

    .tp-faq-ai-tab-content .accordion-item {
        padding: 10px 0
    }

    .tp-contact-us-title,
    .tp-faq-ai-title-wrap {
        margin-bottom: 30px
    }

    .tp-contact-us-info-area {
        padding-bottom: 90px
    }

    .cn-contactform-support-area {
        margin-bottom: 80px
    }

    .tp-funfact-img img {
        height: 100%;
        width: 100%
    }

    .tp-funfact-green-wrap {
        padding-top: 70px
    }

    .tp-funfact-content-wrap {
        padding-left: 0;
        margin-left: 0
    }
}

@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) {
    .tp-about-pb-feature-wrap {
        margin-top: -120px
    }

    .tp-video-md-spacing {
        height: 660px
    }
}

.al-btn-blue,
.al-btn-pg-price {
    font-weight: 500;
    display: inline-block
}

.al-btn-blue {
    font-size: 16px;
    transition: .3s;
    border-radius: 30px;
    padding: 10px 30px;
    letter-spacing: -.02em;
    font-family: var(--tp-ff-inter)
}

.al-btn-pg-price,
.al-btn-pg-subscribe {
    line-height: 48px;
    font-family: var(--tp-ff-poppins)
}

.al-btn-blue:hover {
    background: var(--tp-common-black-1);
    color: var(--tp-common-white)
}

.al-btn-blue.sky-bg {
    color: var(--tp-common-black-3);
    background: #a1ecea
}

.al-btn-blue,
.al-btn-blue.sky-bg:hover,
.tp-btn-seo-border:hover {
    color: var(--tp-common-white);
    background: var(--tp-common-blue)
}

.tp-btn-seo-border:hover {
    border-color: var(--tp-common-blue)
}

.al-btn-pg-price {
    height: 50px;
    border-radius: 100px;
    padding: 0 60px;
    font-size: 18px;
    text-align: center;
    text-transform: capitalize;
    overflow: hidden;
    color: var(--tp-common-black-7);
    border: 1px solid;
    transition: .3s
}

.al-btn-pg-price:hover {
    color: var(--tp-common-white);
    border-color: var(--tp-common-black-7);
    background: var(--tp-common-black-7)
}

.al-btn-pg-subscribe,
.al-shop-btn {
    display: inline-block;
    font-size: 16px
}

.al-btn-pg-subscribe {
    height: 48px;
    border-radius: 30px;
    padding: 0 30px;
    font-weight: 500;
    color: var(--tp-common-cream);
    background: var(--tp-common-black-7);
    border: 1px solid
}

.al-shop-btn {
    font-family: var(--tp-ff-dm);
    font-weight: 400;
    padding: 9px 26px;
    color: var(--tp-common-white);
    border: 1px solid var(--tp-common-black);
    background: var(--tp-common-black)
}

.al-shop-btn:hover {
    background: var(--tp-theme-secondary);
    border-color: var(--tp-theme-secondary);
    color: var(--tp-common-white)
}

.al-step-title-sm {
    font-weight: 500;
    color: var(--tp-common-black-1);
    font-family: var(--tp-ff-inter)
}

.al-step-title-box {
    margin: 0 60px 40px
}

.al-step-title-sm {
    font-size: 18px;
    line-height: 1.33;
    margin-bottom: 0;
    text-align: center;
    letter-spacing: -.02em
}

.al-service-seo-icon,
.al-step-icon {
    margin-bottom: 25px
}

.al-step-icon>span {
    height: 100px;
    width: 100px;
    line-height: 95px;
    color: var(--tp-common-blue);
    border: 2px solid var(--tp-common-blue);
    transition: .3s;
    position: relative
}

.al-step-icon>span::after,
.al-step-number::after {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    content: "";
    border-radius: 50%;
    transform: scale(1.2)
}

.al-step-icon>span::after {
    opacity: 0;
    visibility: hidden;
    transition: .3s;
    border: 1px dashed var(--tp-common-blue)
}

.al-step-item.active .al-step-icon>span,
.al-step-item:hover .al-step-icon>span {
    color: var(--tp-common-white);
    border-color: var(--tp-common-blue);
    background: var(--tp-common-blue)
}

.al-step-number {
    position: absolute;
    top: 3px;
    right: 1px;
    z-index: 3;
    height: 30px;
    width: 30px;
    line-height: 29px;
    border-radius: 50%;
    font-style: normal;
    color: var(--tp-common-white);
    font-family: var(--tp-ff-inter);
    background: var(--tp-common-blue)
}

.al-step-number::after {
    border: 4px solid var(--tp-common-white)
}

.al-step-shape-1 {
    position: absolute;
    top: 26%;
    left: 0
}

.al-step-shape-1 img {
    animation: 1s linear infinite alternate anim-top-bottom
}

.al-step-shape-2 {
    position: absolute;
    top: 42%;
    right: 0;
    animation: 4s linear infinite alternate anim-left-right
}

.al-step-arrow-shape-1 {
    position: absolute;
    top: 21%;
    right: 0
}

.al-step-arrow-shape-2 {
    position: absolute;
    top: 21%;
    left: 0
}

.al-section-subtitle.fs-12,
.al-section-title {
    color: var(--tp-common-black-1);
    font-family: var(--tp-ff-inter)
}

.al-section-title {
    font-weight: 700;
    font-size: 47px;
    line-height: 1.1;
    letter-spacing: -.02em
}

.al-section-subtitle.fs-12 {
    font-weight: 600;
    font-size: 12px;
    border-radius: 20px;
    letter-spacing: .1em;
    text-transform: uppercase;
    padding: 2px 23px;
    display: inline-block;
    background: #eef3f6
}

.al-section-subtitle.fs-12.sky-bg {
    background: #cae1ec
}

@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) {

    .tp-breadcrumb-banner-2-spacing,
    .tp-breadcrumb-banner-spacing {
        padding-top: 400px
    }

    .tp-header-lg-spacing {
        padding: 15px 0
    }

    .tp-about-it-expreance {
        font-size: 320px
    }

    .tp-video-cst-2-content {
        padding-bottom: 250px
    }

    .tp-text-it-item span {
        font-size: 100px
    }
}

.al-project-seo-info h5,
.al-project-seo-info span,
.al-project-seo-title {
    letter-spacing: -.02em;
    font-family: var(--tp-ff-inter)
}

.tp_text_invert.invert-black-7>div {
    background-image: linear-gradient(to right, var(--tp-common-black-7) 50%, var(--tp-common-cream) 50%)
}

.al-step-icon>span {
    text-align: center;
    border-radius: 50%;
    display: inline-block
}

.al-project-seo-item {
    background: #1d2660;
    border-radius: 10px;
    border: 1px solid;
    box-shadow: 0 20px 30px 0 rgb(3 14 18/.1);
    padding: 24px 30px;
    transition: .3s ease-out
}

.al-project-seo-title {
    font-size: 22px;
    font-weight: 600;
    line-height: 1.33;
    margin-bottom: 0;
    color: var(--tp-common-white)
}

.al-project-seo-title-box .al-section-subtitle.fs-12 {
    color: var(--tp-common-white);
    background: #1c286a
}

.al-project-seo-info h5 {
    font-weight: 600;
    font-size: 16px;
    margin-bottom: 10px;
    color: var(--tp-common-white)
}

.al-project-seo-info span {
    font-weight: 500;
    font-size: 14px;
    line-height: 1;
    color: rgb(255 255 255/.8)
}

.al-project-seo-content {
    padding-left: 50px;
    margin-left: 50px;
    position: relative
}

.al-project-seo-content::after {
    top: 0;
    left: 0;
    width: 1px;
    height: 80px;
    content: "";
    position: absolute;
    background: rgb(255 255 255/.14);
    bottom: 0;
    margin: auto
}

.al-project-seo-item:hover {
    background: #001288
}

.al-project-seo-btn a {
    line-height: 55px;
    display: inline-block;
    color: var(--tp-common-white);
    border: 1px solid
}

@media only screen and (min-width:992px) and (max-width:1199px) {
    .ar-funfact-item span {
        font-size: 15px
    }

    .al-hero-archi-title {
        font-size: 80px
    }
}

@media only screen and (min-width:768px) and (max-width:991px) {
    .al-brand-seo-box a:not(:last-child) {
        margin-right: 35px
    }

    .al-section-pg-title {
        font-size: 100px
    }

    .al-project-seo-title {
        margin-bottom: 35px
    }
}

.footer-col-1 {
    padding-right: 95px
}

.tp-megamenu-list ul li a span.update {
    color: var(--tp-common-white);
    background: #f70510
}

@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:574.98px) {
    .footer-col-1 {
        padding-right: 0
    }
}

@media only screen and (min-width:1400px) and (max-width:1599px),
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:574.98px) {
    .tp-about-md-bigtext {
        font-size: 155px
    }

    .tp-service-pp-content p br {
        display: none
    }

    .tp-service-ai-ring {
        width: 40%
    }

    .tp-faq-md-thumb {
        margin-right: 0
    }
}

.otp-resend .resend-button {
    border: 0
}

@media only screen and (min-width:576px) and (max-width:767px),
(max-width:574.98px) {
    .tp-btn-ai-xxl {
        padding: 20px 35px
    }

    .tp-offcanvas-menu ul li .tp-submenu .homemenu-btn .tp-btn-lg {
        padding: 12px 17px;
        font-size: 14px
    }

    .tp-service-pp-thumb img,
    .tp-service-wd-border svg {
        width: 100%
    }

    .header-sticky.tp-header-ai-wrap .tp-header-ai-bg {
        margin-top: 5px
    }

    .al-project-seo-title br,
    .tp-about-title span,
    .tp-blog-wd-title br,
    .tp-contact-wrap p br,
    .tp-footer-widget a br,
    .tp-footer-widget p br,
    .tp-funfact-big-img,
    .tp-service-cst-info p br {
        display: none
    }

    .tp-blog-wd-content {
        padding: 30px 20px
    }

    .tp-blog-sa-btn,
    .tp-funfact-number {
        margin-left: 0
    }

    .tp-footer-cst-banner {
        padding: 60px 0 50px
    }

    .tp-hero-title {
        font-size: 36px
    }

    .tp-hero-bottom-height {
        height: 348px
    }

    .tp-hero-wd-title {
        font-size: 75px;
        line-height: .9
    }

    .tp-hero-wd-customer {
        flex-wrap: wrap
    }

    .tp-hero-sa-spacing {
        padding-top: 120px
    }

    .tp-hero-sa-subtitle {
        justify-content: start
    }

    .tp-hero-cst-bottom-btn ul {
        gap: 5px
    }

    .tp-hero-cst-bottom-btn ul li {
        margin-right: 20px
    }

    .tp-hero-it-spacing {
        padding-top: 150px
    }

    .tp-contact-spacing,
    .tp-hero-pb-spacing {
        padding-top: 160px
    }

    .tp-hero-pb-input-btn {
        margin-top: 20px
    }

    .tp-hero-pb-shape-2 {
        left: 0
    }

    .tp-about-wd-btn,
    .tp-team-it-item {
        margin-top: 0
    }

    .tp-about-sa-shape {
        margin-top: 20px;
        justify-content: flex-start
    }

    .tp-cta-sa-btn,
    .tp-process-sa-link,
    .tp-service-pp-thumb {
        margin-top: 30px
    }

    .tp-service-vp-item {
        width: 100%;
        padding-left: 0;
        padding-right: 0;
        padding-bottom: 24px
    }

    .tp-service-vp-wrap .row [class*=col]:not(:first-child) .tp-service-vp-item {
        padding-top: 20px
    }

    .tp-video-md-spacing {
        height: 460px
    }

    .tp-video-md-wrap .tp-video-md-btn {
        width: 100px;
        height: 100px
    }

    .tp-video-vp-img-inner-2 {
        height: 350px
    }

    .tp-portfolio-thumb.thumb-1 {
        height: 404px
    }

    .al-video-height,
    .tp-portfolio-thumb.thumb-2 {
        height: 300px
    }

    .tp-portfolio-sa-title {
        font-size: 85px;
        padding: 17px 0
    }

    .tp-team-sa-title,
    .tp-text-cst-title {
        font-size: 100px
    }

    .tp-testimonial-thumb-2 {
        position: inherit;
        bottom: auto;
        margin-top: 30px;
        display: inline-block
    }

    .tp-cta-sa-btn {
        position: inherit
    }

    .tp-team-it-item-single {
        margin-right: 0
    }

    .tp-faq-ai-tab-content .tp-faq-btn {
        font-size: 16px
    }

    .tp-faq-ai-tab-content .tp-faq-details-para p {
        padding-left: 55px
    }

    .tp-faq-ai-count {
        padding-right: 30px
    }

    .tp-faq-hero-title-wrap {
        padding-top: 90px;
        padding-bottom: 90px
    }

    .tp-contact-us-form-ptb {
        padding-top: 30px
    }

    .tp-contact-us-map {
        height: 450px;
        margin-bottom: 30px
    }

    .tp-contact-us-wrap {
        padding: 20px
    }

    .cn-contactform-support-text span {
        font-size: 40px
    }

    .tp-funfact-title {
        margin-bottom: 40px
    }

    .al-brand-seo-title {
        margin-bottom: 30px;
        display: inline-block
    }

    .al-brand-seo-box a:not(:last-child) {
        margin-right: 25px
    }

    .al-step-title-box {
        margin: 0 0 40px
    }

    .al-section-pg-title {
        font-size: 70px
    }

    .al-video-img img {
        height: 400px;
        object-fit: cover
    }

    .al-video-inner-style .tp-video-img img {
        margin-top: -50px
    }

    .al-project-seo-item {
        padding: 24px 30px
    }

    .al-project-seo-title {
        font-size: 20px;
        margin-bottom: 35px
    }
}

@media only screen and (min-width:576px) and (max-width:767px) {
    .tp-offcanvas {
        width: 400px;
        padding: 40px
    }

    .tp-about-md-title,
    .tp-footer-top-title {
        font-size: 80px
    }

    .tp-footer-cst-menu ul li {
        margin: 0 14px
    }

    .tp-footer-it-bigtext,
    .tp-service-vp-bigtitle {
        font-size: 200px
    }

    .tp-hero-wd-title .icons {
        height: 65px;
        line-height: 65px;
        transform: translateY(-8px)
    }

    .tp-hero-it-bigtitle {
        font-size: 90px
    }

    .tp-hero-pb-bigtitle {
        font-size: 120px
    }

    .tp-about-top-title span {
        width: 60px
    }

    .tp-about-pb-feature-wrap {
        margin-top: -70px
    }

    .tp-video-cst-main video {
        height: 230px
    }

    .tp-video-cst-mask {
        height: 240px
    }

    .al-category-shop-slider .al-swiper-shop-scrollbar {
        width: calc(100% - 100px)
    }

    .tp-about-process-item {
        padding: 25px 20px
    }
}

.tp-main-menu nav ul li:hover.has-dropdown>a>span,
.tp-main-menu nav ul li:hover>a,
.tp-main-menu nav ul li>a.active,
.tp-main-menu nav ul li>a.active>span {
    color: var(--tp-theme-secondary)
}

@media (max-width:574.98px) {

    .tp-blog-cst-dates,
    .tp-hero-title-sm {
        margin-bottom: 10px
    }

    .tp-about-top-title {
        font-size: 30px
    }

    .tp-cta-it-form .cta-it-input,
    .tp-testimonial-thumb img {
        width: 100%
    }

    .tp-breadcrumb-banner-2-spacing,
    .tp-breadcrumb-banner-spacing {
        padding-top: 250px
    }

    .tp-breadcrumb-4-spacing {
        padding-bottom: 170px;
        padding-top: 150px
    }

    .tp-section-md-title {
        font-size: 40px
    }

    .tp-header-lg-spacing {
        padding: 8px 0
    }

    .tp-about-top-title span,
    .tp-about-wd-title br,
    .tp-blog-2-para br,
    .tp-header-2-right .tp-btn-group,
    .tp-hero-sa-customer-text br,
    .tp-hero-wd-shape,
    .tp-service-2-btn p br,
    .tp-service-2-para p::before,
    .tp-service-para br,
    .tp-service-wd-title-wrap p br {
        display: none
    }

    .tp-about-cst-thumb img,
    .tp-header-sa-logo,
    .tp-hero-wd-customer .tp-hero-customer,
    .tp-service-2-btn p {
        margin-right: 0
    }

    .tp-header-it-bg {
        padding: 0;
        border: 0
    }

    .tp-header-it-bg .tp-menu-bar {
        padding-right: 0;
        width: auto
    }

    .tp-postbox-title {
        font-size: 25px
    }

    .tp-postbox-details-form {
        padding: 25px 20px 20px
    }

    .postbox__comment ul li.children,
    .tp-about-cst-list-thumb,
    .tp-about-it-content,
    .tp-funfact-number span i,
    .tp-hero-2-title .tp-hero-video-btn,
    .tp-hero-sa-customer-text,
    .tp-hero-wd-title .title-space,
    .tp-service-wd-title-wrap p {
        margin-left: 0
    }

    .postbox__comment-box {
        flex-wrap: wrap
    }

    .postbox__comment-avater img {
        margin-bottom: 30px
    }

    .tp-blog-top-content {
        margin-top: 70px;
        padding: 40px 20px
    }

    .tp-blog-cst-content {
        flex-direction: column
    }

    .tp-blog-cst-dates {
        margin-right: 0;
        display: flex;
        align-items: center
    }

    .tp-blog-cst-dates h2,
    .tp-funfact-number span em {
        margin-right: 20px
    }

    .tp-blog-it-qoute {
        padding: 20px 20px 14px
    }

    .tp-about-md-title,
    .tp-footer-top-title,
    .tp-skill-pb-title {
        font-size: 60px
    }

    .tp-footer-cst-menu ul {
        justify-content: flex-start
    }

    .tp-about-ai-title,
    .tp-footer-it-bigtext {
        font-size: 100px
    }

    .tp-hero-2-title {
        font-size: 42px
    }

    .tp-hero-wd-title {
        font-size: 45px
    }

    .tp-hero-wd-title .shape {
        margin-left: 35px
    }

    .tp-hero-wd-title .icons {
        height: 34px;
        line-height: 34px;
        transform: translateY(-5px)
    }

    .tp-hero-wd-bottom-title {
        margin-bottom: 50px
    }

    .tp-hero-pp-title img {
        transform: translateY(-3px);
        width: 95px
    }

    .tp-hero-cst-bottom-content {
        padding-top: 200px
    }

    .tp-hero-it-counter-wrap {
        gap: 30px
    }

    .tp-hero-it-bigtitle {
        font-size: 56px
    }

    .tp-hero-pb-bigtitle,
    .tp-team-it-big-title h2 {
        font-size: 75px
    }

    .tp-about-wd-title img {
        transform: translateY(-4px);
        width: 84px
    }

    .tp-about-wd-thumb4 {
        margin-top: 126px
    }

    .tp-about-cst-list,
    .tp-about-sa-thumb2 .tp-about-wd-thumb3 {
        position: inherit
    }

    .tp-about-sa-thumb2 .tp-about-wd-thumb4 {
        padding-top: 30px
    }

    .tp-about-bottom-video .popup-video {
        width: 38px;
        height: 37px;
        line-height: 29px
    }

    .tp-about-cst-thumb {
        padding-right: 0
    }

    .tp-about-it-expreance {
        font-size: 216px
    }

    .tp-about-it-feature span.feature-1 {
        left: 55%;
        top: 20%
    }

    .tp-about-it-feature span.feature-2 {
        top: 35%
    }

    .tp-about-pb-feature-wrap {
        margin-top: -40px
    }

    .tp-brand-spacing {
        padding: 70px 0
    }

    .tp-brand-slide-active .swiper-slide {
        margin: 0 30px
    }

    .tp-portfolio-outcome-title,
    .tp-service-shape,
    .tp-service-title-wrap .tp-section-subtitle {
        margin-bottom: 20px
    }

    .tp-service-2-para p {
        margin-left: 0;
        padding-left: 0
    }

    .tp-service-wd-item-title span {
        margin-bottom: 3px
    }

    .tp-service-pp-item {
        padding: 40px 15px
    }

    .tp-service-cst-content {
        padding: 25px 10px 22px 20px;
        position: inherit;
        margin: -93px 10px 10px
    }

    .tp-service-ai-count {
        margin-right: 10px
    }

    .tp-service-vp-bigtitle {
        font-size: 120px
    }

    .tp-video-2-main {
        margin-top: 15px
    }

    .tp-video-cst-main video {
        height: 170px
    }

    .tp-video-cst-mask {
        height: 180px
    }

    .tp-video-cst-2-content {
        padding-bottom: 180px
    }

    .tp-portfolio-navigation-btn img {
        width: 70px;
        margin-right: 15px
    }

    .tp-portfolio-navigation-wrap {
        padding: 25px 20px 10px
    }

    .tp-contact-map-box iframe,
    .tp-portfolio-cst-img-wrapper {
        height: 300px
    }

    .tp-portfolio-details-shedule {
        padding: 33px 20px 40px
    }

    .tp-portfolio-details-shedule ul li span {
        width: 130px
    }

    .tp-reveal-bg {
        width: 170px;
        height: 170px
    }

    .tp-text-it-item span {
        font-size: 50px
    }

    .tp-text-pb-item span {
        font-size: 55px
    }

    .tp-testimonial-thumb {
        margin-left: 0;
        width: 100%
    }

    .tp-skill-pb-title span {
        margin-top: 0
    }

    .tp-skill-pb-circale.circale-1 {
        width: 325px;
        height: 325px
    }

    .tp-cta-wd-email {
        padding: 15px 21px
    }

    .tp-faq-cst-tag .cst-btn-1 {
        left: 0;
        top: 130px
    }

    .tp-faq-cst-tag .cst-btn-2,
    .tp-faq-cst-tag .cst-btn-4 {
        top: 20%
    }

    .tp-faq-cst-tag .cst-btn-3 {
        right: 0
    }

    .tp-faq-pb-tab-content .tp-faq-details-para p {
        font-size: 16px
    }

    .tp-faq-md-tab-content .accordion-body {
        padding: 0 20px 18px 0
    }

    .tp-faq-md-shape {
        top: 0;
        right: 0;
        width: 25%
    }

    .tp-contact-number {
        padding: 20px 20px 5px
    }

    .tp-contact-form {
        padding: 20px
    }

    .tp-contact-us-heading .tp-career-title {
        padding-bottom: 20px
    }

    .tp-funfact-number span {
        font-size: 112px
    }

    .tp-funfact-content-wrap {
        padding-left: 0;
        margin-bottom: 30px
    }

    .al-section-title {
        font-size: 35px
    }

    .bg-position-md-left {
        background-position: left
    }

    .al-product-tab .nav-tabs .nav-link {
        font-size: 15px
    }

    .tp-about-process-item,
    .tp-service-sa-item {
        padding: 25px 20px
    }

    .tp-about-process-item.crm1-box {
        padding: 20px !important
    }

    .tp-about-process-item.crm1-box p {
        margin-bottom: 0
    }
}

.tp-footer-cst-menu ul li::after {
    position: absolute;
    content: "";
    right: -12px;
    top: 40%;
    width: 1px;
    height: 10px;
    background: #b3bac0
}

.hero-section-img-center,
.hero-section-img-right {
    background-repeat: no-repeat;
    background-size: contain
}

.hero-section-img-right {
    background-position: right bottom
}

.hero-section-img-center {
    background-position: center bottom
}

.serve-main-list li i {
    margin-right: 5px;
    font-size: 12px
}

.list-none-check.serve-main-list li {
    list-style: none;
    margin-bottom: 5px
}

.overlay-black::after {
    background: rgb(24 24 24/.5);
    content: "";
    position: absolute;
    height: 100%;
    width: 100%;
    left: 0;
    top: 0
}

.termspolicy p {
    text-align: justify
}

.otpDialogSell .otpDialoagMain {
    display: flex;
    align-items: center;
    padding: 0;
    gap: 10px;
    max-width: 100%
}

.otpDialogSell .otpDialoagMain .bannerContiner {
    box-shadow: 1px 0 20px -12px rgb(0 0 0/.75);
    overflow: hidden
}

.otpDialogSell .otpDialoagMain .bannerContiner img {
    width: 100%;
    border-radius: 10px
}

.otp-content .otp-close {
    text-align: right;
    margin: 0;
    font-size: 18px;
    cursor: pointer;
    position: absolute;
    right: 15px;
    top: 15px;
    color: #777
}

.otp-content .otp-title {
    font-size: 22px;
    color: #222;
    margin-bottom: 10px
}

.otp-content .otp-help {
    color: #222;
    max-width: 275px;
    margin: 0 auto;
    font-weight: 400;
    line-height: 1.7
}

.otp-content .edit-icon {
    width: 18px;
    height: 15px;
    margin-left: 5px;
    cursor: pointer
}

.otp-input {
    justify-content: center;
    margin-top: 20px
}

.otp-input .otp-input-box:not(:last-child) {
    margin-right: 10px !important
}

.otp-input .otp-input-box {
    border: 1px solid;
    width: 40px;
    height: 40px;
    font-size: 18px;
    text-align: center;
    border-radius: 4px;
    background: #fff
}

.otp-input .otp-input-box:focus {
    box-shadow: 0 3px 5px 0 rgb(0 0 0/.15);
    border: 1px solid;
    outline: 0;
    background: #fff
}

.otp-resend {
    display: flex;
    justify-content: center
}

.otp-content .otp-verify,
.otp-resend .resend-button {
    margin-top: 15px;
    color: #222;
    background: #fff
}

.otp-content .otp-verify {
    border-radius: 30px;
    border: 1px solid #ffbf1c;
    padding: 10px 20px;
    display: block;
    margin-left: auto;
    margin-right: auto;
    background: #ffbf1c
}

.tp-bg-theme-primary-dark2 {
    background: #243279
}

.tp-header-dropdown nav ul li a {
    position: relative;
    transition: .5s
}

.tp-main-menu nav>ul>li:hover.has-dropdown.p-inherit>a::after,
.tp-main-menu nav>ul>li:hover.has-dropdown>a::after {
    content: "";
    border-bottom: 12px solid #121b4a;
    border-right: 12px solid #fff0;
    border-left: 12px solid #fff0;
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: 10;
    margin: 0 auto 0 20px;
    opacity: 1
}

.tp-main-menu nav>ul>li:hover.has-dropdown>a::after {
    border-bottom: 12px solid #e2e2e2
}

.mega-dropdown-menu .nav-icon {
    border-radius: 3px;
    flex: none;
    justify-content: center;
    align-items: center;
    width: 4rem;
    height: 4rem;
    display: flex;
    transition: .5s;
    background: #142479
}

.mega-dropdown-menu .col-sm-4 a:hover .nav-icon {
    box-shadow: none;
    background: var(--tp-theme-primary) !important
}

.mega-dropdown-menu a {
    text-decoration: none;
    color: #fff
}

.mega-dropdown-menu a:hover h5 {
    text-decoration: none;
    color: var(--tp-theme-secondary) !important
}

.mega-dropdown-menu a .d-flex {
    transition: .5s
}

.mega-dropdown-menu .col-sm-4 a:hover .d-flex {
    border-radius: 3px;
    background: #16215b
}

.tp-brand-item img {
    filter: opacity(.76)
}

.tp-process-sa-list.tp-service-details-content p {
    color: #fff
}

.tp-process-sa-list.tp-service-details-content.darkul i,
.tp-process-sa-list.tp-service-details-content.darkul p {
    color: var(--tp-common-black-1) !important
}

.tp-about-process-item.crm1-box {
    border: 1px solid var(--tp-border-1) !important;
    background: 0 0 !important;
    padding: 25px
}

.tp-responsive-big-circle {
    position: absolute;
    bottom: -660px;
    left: 50%;
    transform: translateX(-50%)
}

.tp-responsive-big-circle span {
    height: 1300px;
    width: 1300px;
    border-radius: 50%;
    background: #f5f5f5;
    display: inline-block
}

@media only screen and (min-width:1200px) and (max-width:1399px) {
    .tp-responsive-big-circle span {
        height: 1000px;
        width: 1000px
    }
}

.tp-responsive-img-1 {
    position: absolute;
    top: 70px;
    left: 100px
}

.tp-responsive-img-2 {
    position: absolute;
    bottom: 30px;
    right: 100px
}

@media only screen and (min-width:992px) and (max-width:1199px) {
    .tp-responsive-img-1 {
        left: 10px
    }

    .tp-responsive-img-2 {
        right: 20px
    }
}

@media only screen and (min-width:768px) and (max-width:991px) {
    .tp-responsive-img-1 {
        left: 0
    }

    .tp-responsive-img-2 {
        right: 0
    }
}

.captcha-box {
    font-size: 22px;
    padding: 8px 14px;
    margin-right: 10px;
    border-radius: 4px;
    display: inline-block;
    text-align: center;
    letter-spacing: 0;
    color: #000;
    font-weight: 600;
    border: 1px solid #ced4da;
    background: #fff
}

.tp-megamenu-wrapper.container-1000 {
    max-width: 1000px;
    padding: 25px 15px 5px 7px
}

.tp--hover-img {
    overflow: hidden;
    border-radius: 6px
}

.tp-blog-item .tp--hover-img img {
    transition: .6s
}

.tp-blog-item:hover .tp--hover-img img {
    transform: scale(1.1)
}

.header-line-limit-2 {
    -webkit-line-clamp: 2;
    overflow: hidden;
    display: -webkit-box !important;
    -webkit-box-orient: vertical;
    padding-bottom: 4px
}

.atbs-pagination .atbs-pagination__item.atbs-pagination-active__item,
.atbs-pagination .atbs-pagination__item:hover {
    color: #fff !important;
    background: var(--tp-theme-primary)
}

.atbs-pagination .atbs-pagination__item {
    border-radius: 30px;
    width: 40px;
    height: 40px;
    display: flex;
    justify-content: center;
    align-items: center;
    font-weight: 600;
    font-size: 16px;
    letter-spacing: -.02em;
    text-align: center
}

.site-content .atbs-block .atbs-pagination {
    padding-bottom: 50px !important;
    gap: 6px !important
}

.atbs-block .atbs-pagination .atbs-pagination__item-next:hover,
.atbs-block .atbs-pagination .atbs-pagination__item-prev:hover {
    background: var(--tp-grey-5) !important
}

.post__meta.post__meta-normal.flex-box {
    justify-content: space-between
}

.post__meta.post__meta-normal.flex-box .post-author__name,
.post__meta.post__meta-normal.flex-box .time {
    font-size: 12px !important
}

.tp-hero-thumb-wrapper .tp-hero-thumb-1 {
    height: 180px;
    width: 309px;
    overflow: hidden;
    margin-left: 20px;
    border-radius: 100px;
    transform: rotate(22deg) translateY(33px);
    transform-origin: right bottom
}

.tp-hero-thumb-wrapper .tp-hero-thumb-1 img {
    max-width: inherit;
    transform: translate(-12%, -7%) rotate(-14deg)
}

.tp-hero-thumb-wrapper .tp-hero-thumb-2 {
    height: 160px;
    width: 370px;
    overflow: hidden;
    border-radius: 990px;
    background-position: bottom
}

.dgm-about-info-wrap {
    padding-left: 30px
}

.dgm-about-thumb-shape {
    position: absolute;
    bottom: -12%;
    right: 0
}

.dgm-about-info-item {
    position: absolute;
    z-index: 1;
    margin-right: 70px;
    top: 180px;
    padding: 30px 20px 35px;
    border: 5px solid var(--tp-grey-2);
    width: 240px;
    background: var(--tp-common-white)
}

.dgm-about-info-item.rightsec {
    margin-left: 50px;
    margin-right: inherit;
    right: -60px;
    width: 210px;
    top: 200px
}

.dgm-about-info-icon {
    margin-bottom: 35px;
    display: inline-block
}

.dgm-about-info-item p {
    font-weight: 400;
    line-height: 1.6
}

.entries-brand-active .tp-brand-item img {
    filter: opacity(.9);
    transition: .5s;
    height: 56px
}

.bookdemo-btn-hide .tp-header-right {
    display: none !important
}

.tp-benefit-item.tp-benefit-borber-bottom {
    border-bottom: 1px solid #f1f1f4
}

.tp-benefit-box .row [class*=col]:nth-child(4n) .tp-benefit-item {
    border-right: none
}

.tp-benefit-item {
    padding: 30px;
    border-right: 1px solid #f1f1f4
}

.tp-benefit-item-icon {
    height: 64px
}

.tp-benefit-item-title {
    font-size: 20px;
    font-weight: 600;
    line-height: 1.3;
    letter-spacing: -.4px
}

.bnc-service-item {
    display: flex;
    border-radius: 20px;
    background: #f8f8f8;
    flex-direction: column;
    transition: .3s ease-in-out;
    border: 1px solid #fff0;
    justify-content: space-between
}

.bnc-service-item:hover {
    border-color: rgb(1 1 3/.1);
    background: #fff0
}

.bnc-service-item:hover .tp-service-sa-item-icon {
    animation: .6s shaking
}

.bnc-video-item {
    padding: 50px 40px;
    fill: rgb(1 1 3/.3);
    backdrop-filter: blur(10px);
    clip-path: polygon(0 0, 74%0, 100% 26%, 100% 100%, 0 100%, 0 50%)
}

@media (max-width:767px) {
    .bnc-video-item {
        width: 100%;
        margin-top: 30px;
        position: static;
        fill: #000;
        background: var(--tp-common-black)
    }

    .img-contain {
        width: 100%;
        height: 100%;
        object-fit: cover
    }

    .posts-list .list-item {
        width: 100%
    }

    .tp-portfolio-inner-tab-wrap nav .nav-tabs .nav-link {
        margin-bottom: 10px
    }
}

#header .header-frame .navbar-default .navbar-collapse .navbar-nav>li>a::after {
    background: #0e1a27 !important
}

#header .header-frame .navbar-default .navbar-collapse .navbar-nav>li>a:after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 3px;
    background: #fff
}


/* owl carousel */

.tp-brand-wrap {
    overflow: hidden;
    -webkit-mask-image: linear-gradient(90deg, #0000 0%, #000 10% 90%, #0000 100%);
    mask-image: linear-gradient(90deg, #0000 0%, #000 10% 90%, #0000 100%);
}

.tp-brand-item {
    display: flex;
    align-items: center;
    justify-content: center;
}

.slide-transtion {
    -webkit-transition-timing-function: linear;
    transition-timing-function: linear
}

.owl-carousel .owl-stage {
    display: flex;
    align-items: center;
}

.tp-brand-item img {
    width: 100%;
    max-height: 50px;
    object-fit: contain;
}

/* owl carousel */

/* Force linear transition for the carousel stage */
.entries-brand-carousel .owl-stage {
    -webkit-transition-timing-function: linear !important;
    -o-transition-timing-function: linear !important;
    transition-timing-function: linear !important;
}

.section-brand {
    background: linear-gradient(135deg, #f0f5ff 0%, #fff8e8 100%);
    position: relative;
    overflow: hidden;
}

.section-brand::before {
    content: '';
    position: absolute;
    width: 700px;
    height: 700px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(13, 110, 253, 0.06) 0%, transparent 70%);
    top: -200px;
    left: -200px;
    pointer-events: none;
}

.section-brand::after {
    content: '';
    position: absolute;
    width: 500px;
    height: 500px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(255, 198, 28, 0.1) 0%, transparent 70%);
    bottom: -100px;
    right: 5%;
    pointer-events: none;
}



/* Default state of the icon */
[data-move="true"] {
    transition: transform 0.3s ease;
}

/* Move icon 4px to the right when button is hovered */
[data-hover-target="true"]:hover [data-move="true"] {
    transform: translateX(4px);
}

/* Return icon to its original position when hover ends */
[data-hover-target="true"] {
    transition: transform 0.3s ease;
}

[data-hover-target="true"]:hover {}

@keyframes featuresMarqueeToLeft {
    from {
        transform: translateX(0);
    }

    to {
        transform: translateX(calc(-100% - 1rem));
    }
}

@keyframes featuresMarqueeToRight {
    from {
        transform: translateX(calc(-100% - 1rem));
    }

    to {
        transform: translateX(0);
    }
}