@import url("https://fonts.googleapis.com/css2?family=Poppins:wght@100;200;300;400;500;600;700&display=swap");

*,
*::before,
*::after {
    padding: 0;
    margin: 0;
    box-sizing: border-box;
}

html {
    font-size: 62.5%;
    scroll-behavior: smooth;
    /*background-color: #2A425A !important;*/
}

body {
    font-family: 'Poppins', sans-serif;
    font-size: 1.8rem;
    color: #212529;
    background-color: #0d0d0d !important;
    font-weight: 400;
    line-height: 1.7;
    box-sizing: border-box;
    -webkit-box-sizing: border-box;
    user-select: none;
    overflow: hidden;
}

html, body {
    overflow-x: hidden;
    margin: 0;
    padding: 0;
    position: relative;
}

.body-lock {
    overflow: hidden !important;
    height: 100vh;
}

.blob-wrapper {
    position: absolute;
    inset: 0; 
    width: 100%;
    height: 100%;
    overflow: hidden;
    z-index: -1;
    /*pointer-events: none;*/
    transform: translateZ(0);
}

.blob {
    position: absolute;
    border-radius: 50%;
    filter: blur(100px);
    opacity: 0.6;
    animation: float 10s infinite alternate;
    will-change: transform;
}

.blob:nth-child(1) {
    width: 300px;
    height: 300px;
    background: rgba(255, 0, 150, 0.5);
    top: 10%;
    left: 20%;
    animation-duration: 12s;
}

.blob:nth-child(2) {
    width: 400px;
    height: 400px;
    background: rgba(0, 200, 255, 0.5);
    top: 50%;
    left: 70%;
    animation-duration: 15s;
}

.blob:nth-child(3) {
    width: 200px;
    height: 200px;
    background: rgba(255, 255, 0, 0.5);
    top: 70%;
    left: 30%;
    animation-duration: 18s;
}

@keyframes float {
    0% { transform: translate(0, 0); }
    50% { transform: translate(30px, -50px); }
    100% { transform: translate(0, 0); }
}

.sticky {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 999;
}

.bg-dark {
    /*background-color: #E1901C !important;*/
    background-color: #0d0d0d !important;
}

.navbar-nav .nav-link {
    color: rgba(255, 255, 255, 0.75) !important;
    padding-left: 2rem !important;
}

a,
a.nav-link,
a.imp-link {
    transition: all .3s;
}

a.imp-link {
    display: inline;
    color: #DDDDDD;
    /*color: #212529;*/
}

a.imp-link:hover {
    color: rgb(221 221 221 / 70%);
}

/*a.imp-link.light-text {*/
/*    color: rgba(33, 37, 41, 0.7);*/
/*}*/

/*a.imp-link.light-text:hover {*/
/*    color: #212529;*/
/*}*/

header,
footer {
    z-index: 999;
}

.content {
    z-index: 99;
}

#our-services {
    z-index: 199;
}

#industries-served {
    z-index: 299;
}

#feedback {
    z-index: 399;
}

#faq {
    z-index: 499;
}

#header a.nav-link:hover, 
.logo:hover, 
.footer-logo img:hover {
    transform: translateY(-2px) !important;
}

#header {
    box-shadow: 0 0.02rem 1rem rgb(255 255 255 / 15%);
    /*box-shadow: 0 1px rgb(255 255 255 / 15%);*/
}

#header .navbar-nav .nav-link:hover, 
#header .navbar-nav .nav-link.active, 
#secondary-header .nav-link:hover, 
#secondary-header .nav-link.active,
footer a.active {
    color: rgba(255, 255, 255, 0.9) !important;
    font-weight: 500;
}

#mobile-header, 
.offcanvas-header {
    background-color: #0d0d0d;
    box-shadow: 0 1px rgb(255 255 255 / 15%);
    /*box-shadow: 0 0.2rem 0.4rem rgba(0, 0, 0, 0.7);*/
}

.navbar-toggler-icon {
    --bs-navbar-toggler-icon-bg: url(data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.5%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e) !important;
    width: 2.5rem;
    transition: transform 0.3s ease-in-out;
}

img.logo {
    height: auto;
}

img.logo,
.footer-logo a img {
    transition: all .3s;
}

.dropdown-menu {
    position: absolute;
    top: 100%;
    left: 0;
    width: 29rem;
    font-size: 1.7rem;
    background-color: #0d0d0d !important;
    border-radius: 0.5rem;
    padding: 0 1rem !important;
    box-shadow: 0px 1px 4px rgba(255 255 255 / 15%);
    opacity: 0;
    visibility: hidden;
    transform: translateY(20px);
    display: block;
    pointer-events: none;
    will-change: transform, opacity;
    transition: all 0.3s ease;
    z-index: 1;
}

.nav-item.dropdown:hover > .dropdown-menu {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
    pointer-events: auto;
}

.dropdown-item-wrapper {
    position: relative;
    padding: 0 1rem;
}

.dropdown-item-wrapper:not(:last-child) {
    border-bottom: 1px solid rgba(255, 255, 255, 0.2);
}

.dropdown-item {
    color: rgba(255, 255, 255, 0.75);
    background-color: transparent !important;
    padding: 1rem 0;
    /*font-weight: 500;*/
    transition: transform 0.2s ease, color 0.2s ease;
}

.dropdown-item:hover {
    color: rgba(255, 255, 255, 0.9);
    transform: translateX(2px);
}

.nav-item.dropdown:hover .dropdown-menu {
    display: block;
    min-width: 25rem;
    margin-top: 0;
}

.dropdown-toggle::after {
    display: none;
}

.nav-link .arrow-icon {
    display: inline-block;
    position: relative;
    margin-left: 6px;
}

.nav-link .arrow-icon svg {
    fill: #c2c2c2;
    /*fill: rgba(255, 255, 255, 0.75);*/
}

.nav-item.dropdown .arrow-icon svg {
    display: inline-block;
    transition: transform 0.3s ease;
    transform-origin: center;
}

.nav-item.dropdown:hover .arrow-icon svg {
    transform: rotate(-180deg);
}


/*.grid-bg {*/
/*    position: absolute;*/
/*    inset: 0;*/
/*    z-index: -2;*/
    /*background-image:*/
    /*    linear-gradient(45deg, rgba(255,255,255,0.1) 25%, transparent 25%),*/
    /*    linear-gradient(-45deg, rgba(255,255,255,0.1) 25%, transparent 25%),*/
    /*    linear-gradient(45deg, transparent 75%, rgba(255,255,255,0.1) 75%),*/
    /*    linear-gradient(-45deg, transparent 75%, rgba(255,255,255,0.1) 75%);*/
/*    background-size: 10rem 10rem;*/
/*    background-position: 0 0, 0 5rem, 5rem -5rem, -5rem 0;*/
/*    opacity: 0.6;*/
/*}*/

/*.grid-bg::before {*/
/*    content: "";*/
/*    position: absolute;*/
/*    inset: 0;*/
/*    background: linear-gradient(135deg, #2A425A, #E1901C);*/
/*    opacity: 0.85;*/
/*    z-index: -1;*/
/*    pointer-events: none;*/
/*}*/

a {
    text-decoration: none;
}

/*.main-btn {*/
/*    display: inline-block;*/
/*    position: relative;*/
/*    font-size: 1.4rem;*/
/*    color: #fff;*/
/*    font-weight: 500;*/
/*    letter-spacing: 2px;*/
/*    border-radius: 1rem;*/
/*    text-transform: uppercase;*/
/*    transition: all .3s ease-out 0s;*/
/*}*/

main {
    padding-top: 5rem;
}

@keyframes moveRight {
    0% {
        opacity: 0;
        -o-transform: translateX(-15rem);
        -moz-transform: translateX(-15rem);
        -webkit-transform: translateX(-15rem);
        transform: translateX(-15rem);
        visibility: hidden;
    }

    100% {
        opacity: 1;
        -o-transform: translateY(0);
        -moz-transform: translateY(0);
        -webkit-transform: translateY(0);
        transform: translateY(0);
        visibility: visible;
    }
}

.content .text-block {
    -o-animation: moveRight .9s ease-out forwards;
    -moz-animation: moveRight .9s ease-out forwards;
    -webkit-animation: moveRight .9s ease-out forwards;
    animation: moveRight .9s ease-out forwards;
    transition: opacity 0.5s ease-out;
}

/*@keyframes moveLeft {*/
/*    0% {*/
/*        opacity: 0;*/
/*        -o-transform: translateX(15rem);*/
/*        -moz-transform: translateX(15rem);*/
/*        -webkit-transform: translateX(15rem);*/
/*        transform: translateX(15rem);*/
/*        visibility: hidden;*/
/*    }*/

/*    100% {*/
/*        opacity: 1;*/
/*        -o-transform: translateX(0);*/
/*        -moz-transform: translateX(0);*/
/*        -webkit-transform: translateX(0);*/
/*        transform: translateX(0);*/
/*        visibility: visible;*/
/*    }*/
/*}*/

/*.content .right-image {*/
/*    width: 60rem;*/
/*    height: auto;*/
/*    object-fit: contain;*/
/*    -o-animation: moveLeft .9s ease-out .1s;*/
/*    -moz-animation: moveLeft .9s ease-out .1s;*/
/*    -webkit-animation: moveLeft .9s ease-out .1s;*/
/*    animation: moveLeft .9s ease-out .1s;*/
/*    transition: transform 0.1s ease-out, opacity 0.5s ease-out;*/
/*    will-change: transform;*/
/*}*/

/*.hide-mobile-image img.right-image {*/
/*    max-width: 500px;*/
/*    width: 100%;*/
/*    height: auto;*/
/*    animation: drift 8s ease-in-out infinite alternate;*/
/*    transition: transform 0.3s ease;*/
/*}*/

/* small drift */
/*@keyframes drift {*/
/*    0% { transform: translate(0px, 0px); }*/
/*    25% { transform: translate(7px, -7px); }*/
/*    50% { transform: translate(-7px, 7px); }*/
/*    75% { transform: translate(7px, 7px); }*/
/*    100% { transform: translate(0px, -7px); }*/
/*}*/

.content .right-image {
    width: 60rem;
    max-width: 500px;
    height: auto;
    object-fit: contain;
    will-change: transform;
    transition: transform 0.3s ease, opacity 0.5s ease;

    /* Entrance animation */
    animation: moveLeft 0.9s ease-out 0.1s forwards;
}

/*.hide-mobile-image img.right-image {*/
/*    animation: moveLeft 0.9s ease-out 0.1s forwards, drift 8s ease-in-out 1s infinite alternate;*/
/*}*/

/* Initial entrance animation */
@keyframes moveLeft {
    0% {
        opacity: 0;
        transform: translateX(15rem);
        visibility: hidden;
    }
    100% {
        opacity: 1;
        transform: translateX(0);
        visibility: visible;
    }
}

/* Continuous subtle drift */
@keyframes drift {
    0%   { transform: translate(0px, 0px); }
    25%  { transform: translate(7px, -7px); }
    50%  { transform: translate(-7px, 7px); }
    75%  { transform: translate(7px, 7px); }
    100% { transform: translate(0px, -7px); }
}


.offcanvas {
    /*background-color: #2c2c2c;*/
    background-color: rgb(44 44 44 / 95%);
}

.offcanvas-body .nav-item.has-submenu {
    position: relative;
    list-style: none;
}

.offcanvas-body .nav-link.submenu-toggle {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    /*padding: 12px 16px;*/
    color: #fff;
    text-decoration: none;
    width: 100%;
}

/* Center only the text */
.offcanvas-body .submenu-text {
    flex: 1;
    /*text-align: center;*/
}

/* Arrow stays on right side */
.offcanvas-body .arrow-icon {
    position: absolute;
    right: 1.6rem;
    top: 50%;
    transform: translateY(-50%);
    transition: transform 0.3s ease;
}

/* Rotate arrow on active */
.offcanvas-body .arrow-icon.arrow-rotate {
    transform: translateY(-50%) rotate(-180deg);
}

/* Submenu styles */
.offcanvas-body .submenu {
    display: none;
    flex-direction: column;
    /*background-color: rgba(0, 0, 0, 0.04);*/
    background-color: #3c3c3c;
    border-radius: 10px;
    margin: 0;
    padding: 0;
}

.offcanvas-body .submenu li a {
    display: block;
    font-size: 1.6rem;
    padding: 0 2rem 1rem;
    color: #fff;
    text-decoration: none;
    transition: background 0.3s ease;
}

.offcanvas-body .submenu li a:hover {
    /*background: rgba(255, 255, 255, 0.1);*/
    background: transparent;
}

.offcanvas-body .submenu li:first-child a {
    padding-top: 2rem;
}

.offcanvas-body .submenu li:last-child a {
    padding-bottom: 2rem;
}

.navbar-toggler {
    border: none !important;
    outline: none !important;
    box-shadow: none !important;
}

.navbar-toggler:focus,
.navbar-toggler:active {
    outline: none !important;
    box-shadow: none !important;
}

.offcanvas-body .navbar-nav {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    height: auto;
}

.offcanvas-body li.nav-item {
    width: 100%;
    line-height: 2;
    /*border-bottom: 1px solid rgb(194 194 194 / 30%);*/
    /*text-align: center;*/
}

.offcanvas-header .btn-close {
    filter: invert(1);
    opacity: 0.55;
    margin-right: 1rem;
}

.offcanvas .offcanvas-header {
    display: flex;
    flex-wrap: inherit;
    align-items: center;
    justify-content: space-between;
}

.offcanvas-body .nav-link {
    color: #c2c2c2 !important;
}

.offcanvas-body .nav-link:hover, 
.offcanvas-body .nav-link.active {
    color: rgba(255, 255, 255, 1) !important;
}

@media (max-width: 991.98px) {
    #header {
        display: none !important;
    }
    
    .navbar-brand, 
    .navbar-toggler {
        padding: 0 0 0 1.5rem !important;
    }
    
    .content .container .row {
        margin-top: 0 !important;
    }
    
    .content .right-image {
        width: 30rem !important;
        height: auto !important;
        object-fit: contain;
        float: unset !important;
    }
    
    .content .text-block {
        text-align: center;
    }
    
    .footer-column {
        margin-top: 3rem;
    }
    
    footer {
        padding: 0 1.5rem;
    }
}

.main-btn {
    margin-top: 25px;
    position: relative;
    font-size: 1.6rem;
    background: #2E7ED8;
    border: 1px solid #2E7ED8;
    color: #fff;
    padding: 1rem 2rem;
    display: inline-block;
    vertical-align: middle;
    text-transform: capitalize;
    letter-spacing: 1px;
    border-radius: 1rem;
    font-weight: 500;
    cursor: pointer;
    text-align: center;
    overflow: hidden;
    border: none;
    box-shadow: var(--box-shadow);
    transition: all 0.3s ease-out 0s;
    z-index: 1;
}

.main-btn:hover {
    color: #fff !important;
    transform: translateY(-1px);
}

.main-btn:hover::before {
    transform: translateY(-50%) translateX(-50%) scale(1);
}

.main-btn::before {
    content: "";
    height: 30rem;
    width: 30rem;
    background: #fd5c5c;
    border-radius: 50%;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateY(-50%) translateX(-50%) scale(0);
    transition: 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    z-index: -1;
}

.red-btn {
    padding: 1.4rem 3.8rem;
    background-color: #f53d3d;
}

.content {
    max-width: 100%;
    position: relative;
    display: flex;
    align-items: center;
    font-family: 'Poppins', sans-serif;
    font-size: 4rem;
    color: rgba(255, 255, 255, 0.8);
    background-color: #0d0d0d;
    background-position: center;
    background-size: cover;
    perspective: 1000px;
    z-index: 0;
}

.content {
    height: 100vh;
}

.content .title p.hero-sub,
.content .title h1,
.content .subtitle {
    color: #DDDDDD;
    text-shadow: 1px 1px 1px #000;
}

.content .title h1 {
    font-size: 2rem;
}

.content .title #cyberWords {
    display: inline-block;
    /*color: #FFD166;*/
    color: #f53d3d;
    white-space: nowrap;
}

.content .subtitle {
    font-size: 2rem;
}

.content .title p.hero-sub {
    display: block;
    font-size: 4.2rem;
    /*font-size: 5.5rem;*/
    font-weight: 700;
    text-transform: uppercase;
    line-height: 1.3;
}

.show-mobile-image,
.show-mobile {
    display: none;
}

@media (max-width: 991.98px) {
    .content .title span {
        font-size: 3rem !important;
    }
    
    .show-mobile-image,
    .show-mobile {
        display: block;
        text-align: center;
    }

    .hide-mobile-image,
    .hide-mobile {
        display: none;
    }
}

@media (max-width: 767.98px) {
    .content .title span {
        font-size: 2.5rem !important;
        line-height: 1;
    }
    
    .content .subtitle {
        font-size: 1.8rem;
    }
    
    #our-services h3 {
        font-size: 2.4rem !important;
        font-weight: 500;
    }
    
    .show-mobile {
        display: block;
        text-align: center;
    }
    
    img.logo {
        width: 10rem;
    }
}

/* Services, Industries Overview */
section#our-services,
section#industries-served,
section#feedback,
section#faq,
section#our-mission,
section#our-vision {
    padding: 10rem 2rem;
}

section#about-hero,
section#who-we-are,
section#get-in-touch,
section#services,
section#industries,
section#privacy-policy,
section#terms {
    padding: 12rem 2rem 10rem;
}

section#get-in-touch {
    color: #c1c1c1 !important;
    background-color: rgb(45 45 45 / 75%) !important;
}

section#our-services .top-anim,
section#industries-served .top-anim,
section#feedback .top-anim,
section#faq .top-anim {
    opacity: 0;
}

section#our-services .animate__fadeInUp,
section#industries-served .animate__fadeInUp,
section#feedback .animate__fadeInUp,
section#faq .animate__fadeInUp {
    opacity: 1 !important;
}

section#our-services,
section#feedback,
section#about-hero,
section#who-we-are,
section#our-mission,
section#our-vision,
section#industries-served,
section#get-in-touch,
section#services,
section#industries,
section#privacy-policy,
section#terms,
section#faq {
    color: #c1c1c1 !important;
    font-weight: 300;
    background-color: transparent !important;
    border-top: 1px solid rgba(255, 255, 255, 0.05);
}

section#who-we-are .container,
section#our-mission .container,
section#our-vision .container {
    padding: 4rem;
}

section#who-we-are .container,
section#our-mission .container,
section#our-vision .container,
section#services .container,
section#industries .container,
section#privacy-policy .container,
section#terms .container {
    border-radius: 1rem;
    font-weight: 300;
    background-color: transparent;
}

@media (max-width: 767.98px) {
    section#who-we-are .container,
    section#our-mission .container,
    section#our-vision .container,
    section#services .container,
    section#industries .container,
    section#privacy-policy .container,
    section#terms .container {
        padding: 0;
        border-radius: 0;
        background-color: transparent;
    }
}

section#faq {
    color: #DDDDDD;
    background-color: rgb(45 45 45 / 75%) !important;
    /*border-top: 1px solid #e9e9e9;*/
    /*border-bottom: 1px solid #e9e9e9;*/
}

section#get-in-touch p {
    color: #DDDDDD;
}

section#get-in-touch .card {
    color: #DDDDDD;
    background-color: transparent;
}

section#industries-served .card {
    --bs-card-border-width: 0;
}

svg.bi.bi-person-circle path.text-muted {
    color: rgba(255, 255, 255, 0.75) !important;
}

.swiper h3 {
    color: rgba(255, 255, 255, 0.9) !important;
}

section#our-services h2,
section#feedback h2,
section#faq h2,
section#about-hero h1,
section#who-we-are h2,
section#our-mission h2,
section#our-vision h2,
section#get-in-touch h1,
section#services h1,
section#industries h1,
section#privacy-policy h1,
section#terms h1 {
    display: block;
    font-size: 4.6rem;
    font-weight: 700;
    color: rgba(255, 255, 255, 0.75) !important;
    text-transform: uppercase;
    text-align: center;
    line-height: 1.1;
}

section#services .row,
section#industries .row,
section#privacy-policy .row,
section#terms .row {
    padding: 5rem 3rem 3rem;
    border-radius: 2rem; 
    background-color: rgba(0, 0, 0, 0.5);
    box-shadow: 0 0.02rem 1rem rgb(11 229 255 / 15%);   
}

section#services h3,
section#industries h3,
section#privacy-policy h3,
section#terms h3 {
    font-size: 2.2rem;
    margin-bottom: 1rem;
}
    
section#services ul li {
    margin-left: 1.6rem;
}

section#industries-served h2 {
    display: block;
    font-size: 4.6rem;
    font-weight: 700;
    color: rgba(255, 255, 255, 0.9) !important;
    text-transform: uppercase;
    text-align: center;
    line-height: 1.1;
}

.content img {
    border-radius: 1rem;
    box-shadow: 0 0.02rem 1rem rgb(11 229 255 / 15%);
}

section#who-we-are img,
section#our-mission img, 
section#our-vision img {
    width: auto;
    max-width: 100%;
    border-radius: 1rem;
    box-shadow: 0 0 0 0.2rem rgb(11 229 255 / 15%);
    /*box-shadow: 0 0.02rem 1rem rgb(11 229 255 / 15%);*/
}

@media (max-width: 991.98px) {
    .content .title p.hero-sub {
        font-size: 3.5rem;
        line-height: 1.1;
    }
    
    section h2.section-header,
    section#get-in-touch h1,
    section#services h2,
    section#industries h1,
    section#privacy-policy h2,
    section#terms h2 {
        font-size: 3.4rem !important;
    }
    
    section#our-services>h2,
    section#industries-served>h2,
    section#feedback>h2,
    section#faq>h2,
    section#about-hero>h1,
    section#who-we-are>h2,
    section#our-mission>h2,
    section#our-vision>h2,
    section#get-in-touch>h1 {
        font-size: 3rem;
        margin-bottom: 2rem;
    }
    
    /*section#our-services h3.service-heading {*/
    /*    font-size: 2.4rem !important;*/
    /*    width: 100% !important;*/
    /*    margin-bottom: 2rem !important;*/
    /*}*/
    
    /*section#our-services .card-title {*/
    /*    font-size: 2.2rem;*/
    /*}*/
    
    section#our-services, 
    section#industries-served, 
    section#feedback,
    section#faq,
    section#get-in-touch {
        padding: 6rem 1rem;
    }
    
    section#about-hero,
    section#who-we-are,
    section#our-mission,
    section#our-vision {
        padding: 6rem 0 !important;
    }
    
    section#services,
    section#industries,
    section#privacy-policy,
    section#terms {
        padding: 6rem 2rem !important;
    }

    section#who-we-are img,
    section#our-mission img,
    section#our-vision img {
        width: 100%;
        height: auto;
        max-width: 100%;
        border-radius: 1rem;
        box-shadow: 0 0 0 0.2rem rgb(11 229 255 / 15%);
    }
    
    .about-img-container {
        padding: 0 !important;
    }
   
    section#who-we-are p,
    section#our-mission p,
    section#our-vision p {
        padding: 0 2rem;
    }
    
    hr.divider {
        margin-top: 2rem !important;
        margin-bottom: 3rem !important;
    }
    
    .vert-space-1 {
        margin-top: 1.5rem !important;
        margin-bottom: 1.5rem !important;
    }
    
    section#industries-served .swiper-button-next,
    section#industries-served .swiper-button-prev,
    section#feedback .swiper-button-next,
    section#feedback .swiper-button-prev {
        display: none;
    }
    
    /*#our-services .card::before {*/
    /*    display: none;*/
    /*}*/
}

@media (max-width: 767px) {
    .animate__animated {
        animation: none !important;
        opacity: 1 !important;
    }
}

.vert-space-1 {
    color: transparent;
    padding-top: 2rem;
    margin-top: 3.5rem;
    margin-bottom: 3.5rem;
}

/* Industries Bg */
/* Section relative wrapper */
.blob-section {
    position: relative;
    overflow: hidden;
}

/* Blob container */
.bg-blobs {
    position: absolute;
    inset: 0;
    z-index: -1;
    overflow: hidden;
}

/* Base blob */
.bg-blobs .blob {
    position: absolute;
    width: 600px;
    height: 600px;
    background: linear-gradient(135deg, #00e0c7 0%, #0057ff 100%);
    filter: blur(180px);
    opacity: 0.25;
    border-radius: 50%;
    animation: blobFloat 15s infinite alternate ease-in-out;
}

/* Individual blob positions */
.bg-blobs .b1 {
    top: -150px;
    left: -150px;
}

.bg-blobs .b2 {
    bottom: -200px;
    right: -150px;
    animation-duration: 18s;
    animation-delay: -3s;
}

.bg-blobs .b3 {
    top: 200px;
    right: -250px;
    animation-duration: 20s;
    animation-delay: -6s;
}

/* Animation */
@keyframes blobFloat {
    0% {
        transform: translate(0px, 0px) scale(1);
    }
    100% {
        transform: translate(80px, -60px) scale(1.1);
    }
}


/*section#our-services h3.service-heading {*/
    /*position: relative;*/
/*    color: #fff;*/
/*    background-color: #2A425A;*/
/*    font-size: 3rem;*/
/*    font-weight: 600;*/
/*    text-transform: uppercase;*/
/*    letter-spacing: 1px;*/
/*    margin: 0 auto 3.6rem;*/
/*    border: none;*/
/*    border-radius: 2px;*/
/*    padding: 1rem 2rem;*/
/*    width: fit-content; */
/*    text-align: center;*/
/*}*/

/*section#our-services h3.service-heading::before {*/
/*    content: "";*/
/*    position: absolute;*/
/*    inset: 0;*/
/*    border-radius: 0;*/
/*    padding: 2px;*/
/*    background:*/
/*        repeating-linear-gradient(90deg, #2A425A 0 8px, transparent 8px 12px),*/
/*        repeating-linear-gradient(180deg, #2A425A 0 8px, transparent 8px 12px),*/
/*        repeating-linear-gradient(270deg, #2A425A 0 8px, transparent 8px 12px),*/
/*        repeating-linear-gradient(0deg, #2A425A 0 8px, transparent 8px 12px);*/
/*    background-repeat: no-repeat;*/
/*    background-size: 100% 2px, 2px 100%, 100% 2px, 2px 100%;*/
/*    background-position: top left, top right, bottom left, top left;*/
/*    pointer-events: none;*/
/*    z-index: 1;*/
/*}*/

hr.divider {
    color: rgba(255, 255, 255, 0.5);
    margin-top: 8rem;
    margin-bottom: 4rem;
}

/*#our-services .card {*/
/*    position: relative;*/
/*    display: flex;*/
/*    align-items: center;*/
/*    padding: 3.2rem 3rem;*/
/*    margin-bottom: 1.6rem;*/
/*    border: none;*/
/*    background-color: #f9fafb;*/
/*    overflow: hidden;*/
    /*transition: transform 0.3s ease-in-out !important;*/
/*}*/

/*#our-services .card::before {*/
/*    content: "";*/
/*    position: absolute;*/
/*    inset: 0;*/
/*    pointer-events: none;*/
/*    opacity: 0;*/
    /*z-index: 1;*/
/*    padding: 2px;*/
/*    background:*/
/*        repeating-linear-gradient(90deg, #2A425A 0 8px, transparent 8px 12px),*/
/*        repeating-linear-gradient(180deg, #2A425A 0 8px, transparent 8px 12px),*/
/*        repeating-linear-gradient(270deg, #2A425A 0 8px, transparent 8px 12px),*/
/*        repeating-linear-gradient(0deg, #2A425A 0 8px, transparent 8px 12px);*/
/*    background-repeat: no-repeat;*/
/*    background-size: 100% 2px, 2px 100%, 100% 2px, 2px 100%;*/
/*    background-position: top left, top right, bottom left, top left;*/
/*    transition: opacity 0.3s ease-in-out;*/
/*}*/

/*#our-services .card:hover::before {*/
/*    opacity: 1;*/
/*}*/

/*#our-services .card:hover {*/
/*    transform: translateY(-2px);*/
/*}*/

/*#our-services .card-body {*/
/*    height: 17rem;*/
/*    display: flex;*/
/*    flex-direction: column;*/
/*    justify-content: center;*/
/*}*/

/*#our-services .card-img-top {*/
/*    width: auto;*/
    /*max-width: 8rem;*/
/*}*/

/*#our-services .card-title {*/
/*    font-size: 2.4rem;*/
/*    margin-bottom: 1.2rem;*/
/*}*/

/*#our-services .card-text {*/
/*    opacity: 0.8;*/
/*    line-height: 1.4;*/
/*}*/

/* Services */
/*.vertical-tabs-wrapper {*/
/*            background: #fff;*/
/*            padding: 2rem;*/
/*            border-radius: 12px;*/
/*            box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);*/
/*        }*/

/*#our-services div#v-pills-tab {*/
/*    box-shadow: rgba(0, 0, 0, 0.05) 0px 6px 24px 0px, rgba(0, 0, 0, 0.08) 0px 0px 0px 1px;*/
/*}*/

/*#our-services button.nav-link {*/
/*    font-size: 1.7rem;*/
/*}*/

/*#our-services ion-icon { */
/*    color: #0d0d0d; */
/*    font-size: 2.4rem;*/
/*}*/

/*#our-services .nav-pills .nav-link.active ion-icon { */
/*    color: #fff; */
/*}*/

/*#our-services .nav-pills .nav-link {*/
/*    border-radius: 3px;*/
/*    color: #0d0d0d;*/
/*    padding: 1rem;*/
/*    margin-bottom: 0;*/
/*    font-weight: 500;*/
/*    display: flex;*/
/*    align-items: center;*/
/*    gap: 0.5rem;*/
/*}*/

/*#our-services .nav-pills .nav-link.active {*/
/*    background-color: #0d0d0d;*/
/*    color: #fff;*/
/*    line-height: 1.7;*/
/*}*/

/*#our-services .accordion-button {  */
/*    font-size: 1.7rem;*/
/*    font-weight: 500;*/
/*    line-height: 1.7;*/
/*}*/

/*#our-services .accordion-button:not(.collapsed) {    */
/*    font-size: 1.7rem;*/
/*    color: #fff;*/
/*    font-weight: 500;*/
/*    background-color: #0d0d0d;*/
/*}*/

/*#our-services .accordion-button::after {*/
/*    font-size: 1.5rem;*/
/*}*/

/*#our-services .accordion-button:not(.collapsed)::after {*/
/*    background: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23fff'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");*/
/*}*/

#our-services h2.accordion-header {
    font-size: 3rem;
}

#our-services .accordion-body {
    font-size: 1.6rem;
    background-color: #f9fafb;
    padding: 2.6rem;
}

#our-services .accordion-button:focus {
    border-color: transparent;
    box-shadow: none;
}

#our-services h3 {
    font-size: 2.6rem;
    text-transform: uppercase;
    margin-bottom: 1rem;
}

.expertise-container {
    max-width: 1200px;
    margin: auto;
}

.expertise-row {
    display: flex;
    flex-wrap: wrap;
    gap: 30px;
    justify-content: center;
}

.expertise-col {
    flex: 1 1 calc(50% - 30px);
    max-width: calc(50% - 30px);
    min-width: 280px;
}

.expertise-card {
    position: relative;
    display: flex;
    align-items: center;
    flex-direction: column;
    min-height: 15rem !important;
    padding: 30px 25px 30px;
    color: rgba(255, 255, 255, 0.8);
    background: transparent;
    backdrop-filter: blur(35px);
    border-radius: 2rem;
    box-shadow: 0 0.02rem 1rem rgb(11 229 255 / 15%);
    text-align: center;
    cursor: pointer;
    overflow: hidden;
    transition: transform 0.3s ease-out, box-shadow 0.3s ease-out;
}

.expertise-card:hover {
    transform: translateY(-2px);
    box-shadow: 0 0.04rem 1rem rgb(11 229 255 / 45%);
}

/**/

/* /Services, Industries Overview */

/* Industries */
/*.swiper {*/
/*    width: 124rem !important;*/
/*    height: 30rem;*/
/*}*/

#industries-served .card {
    position: relative;
    overflow: hidden;
    text-align: center;
    background: transparent;
    border: 1px solid #333;
    height: 100%;
}

#industries-served .card img {
    width: 100%;
    transition: transform 0.4s ease;
}

#industries-served .card:hover img {
    transform: scale(1.1);
}

#industries-served .card-title {
    font-size: 1.7rem !important;
    font-weight: 400;
    margin-bottom: 0;
    text-transform: uppercase;
    letter-spacing: 0.4rem;
}

#industries-served .card-body {
    position: absolute;
    color: rgba(255, 255, 255, 0.9);
    background-color: rgba(0, 0, 0, 0.6);
    top: auto;
    bottom: 10%;
    left: 0;
    right: 0;
    /*border-top: 1px solid rgba(255, 255, 255, 0.7);*/
    /*border-bottom: 1px solid rgba(255, 255, 255, 0.7);*/
    margin: auto;
    text-shadow: 1px 1px 1px #000;
    -webkit-transition: all ease 0.3s;
    transition: all ease 0.3s;
}

#industries-served .swiper-button-next, 
#industries-served .swiper-button-prev,
#feedback .swiper-button-next,
#feedback .swiper-button-prev {
    transition: all .3s ease-in-out;
}

#industries-served .swiper-button-next:hover, 
#industries-served .swiper-button-prev:hover {
    color: rgba(255, 255, 255, 1) !important;
}

#industries-served .swiper-button-next:hover {
    transform: translateX(4px) scale(1.1);
}
 
#industries-served .swiper-button-prev:hover {
    transform: translateX(-4px) scale(1.1);
}

#feedback .swiper-button-next:hover {
    transform: translateX(4px) scale(1.1);
}

#feedback .swiper-button-prev:hover {
    transform: translateX(-4px) scale(1.1);
}

#industries-served .swiper-button-next, 
#industries-served .swiper-button-prev {
    color: rgba(255, 255, 255, 0.8);
    font-weight: 900;
    text-shadow: 1px 1px 1px #000;
}

#feedback .swiper-button-next,
#feedback .swiper-button-prev {
    color: rgba(255, 255, 255, 0.7);
    font-weight: 900;
    text-shadow: 1px 1px 1px #fff;
}

#feedback .swiper-button-next:hover,
#feedback .swiper-button-prev:hover {
    color: rgba(255, 255, 255, 1);
}

#feedback .swiper-button-next {
    right: -4px;
}

#feedback .swiper-button-prev {
    left: -4px;
}

#industries-served .swiper-button-next .swiper-navigation-icon, 
#industries-served .swiper-button-prev .swiper-navigation-icon {
    width: 4rem !important;
    height: 4rem !important;
}

#feedback .swiper-button-next .swiper-navigation-icon, 
#feedback .swiper-button-prev .swiper-navigation-icon {
    width: 2.6rem !important;
    height: 2.6rem !important;
}

#industries-served .swiper-button-next:focus-visible,
#industries-served .swiper-button-prev:focus-visible,
#feedback .swiper-button-next:focus-visible,
#feedback .swiper-button-prev:focus-visible {
    outline: none;
}

#feedback .feedback-swiper .swiper-slide {
    background-color: rgb(249 250 251 / 9%);
    padding: 2rem;
    border-radius: 8px;
}

#feedback .feedback-swiper blockquote {
    font-size: 1.5rem;
    color: rgba(255, 255, 255, 0.75) !important;
    font-style: italic;
    text-align: center;
    line-height: 1.5;
    padding: 1rem 2.5rem;
}

#feedback .client-city {
    font-size: 1.3rem;
    color: #aeaeae !important;
    margin-bottom: 0;
}

/*#feedback blockquote::before {*/
/*    content: "“";*/
/*    font-family: Georgia, serif;*/
/*    font-size: 7rem;*/
/*    color: #2A425A;*/
/*    position: absolute;*/
/*    top: 2px;*/
/*    left: 10px;*/
/*}*/

#review-us {
    display: flex !important;
    justify-content: center !important;
    margin-top: 2rem;
    margin-left: 0 !important;
}

#review-us a {
    display: flex;
    gap: 4px;
    align-items: center;
    justify-content: center;
    padding: 1rem 1.8rem;
    font-size: 1.5rem;
    font-weight: 500;
    text-decoration: none;
    letter-spacing: 1px;
    color: #fff;
    background-color: #2e7ed8;
    /*border: 1px solid #2e7ed8;*/
    border-radius: 1rem;
    box-shadow: rgba(0, 0, 0, .16) 0 1px 4px;
    -webkit-transition: .3s;
    -ms-transition: .3s;
    transition: all .3s ease;
}

#review-us a:hover {
    transform: translateY(-2px) !important;
    box-shadow: rgba(0, 0, 0, .24) 0 3px 8px;
}

#review-us a>svg {
    background-color: #fff;
    border-radius: 5rem;
    padding: 2px;
}

/* FAQs */
#faq .accordion-item:not(:last-child) {
    margin-bottom: 1rem;
}

#faq .accordion-item:first-child, #faq .accordion-item:last-child {
    border-radius: .6rem;
}

#faq .accordion-item {
    border-radius: .6rem;
    overflow: hidden;
    margin-bottom: 1rem;
    border: 1px solid #e1e1e1;
}

#faq .accordion-button {
    font-size: 1.7rem;
    font-weight: 500;
    padding: 2rem;
    line-height: 1.4;
}


@media (max-width: 991.98px) {
    #faq .accordion-button {
        padding: 1.4rem 2rem;
    }
}

#faq .accordion-button:not(.collapsed) {
    background-color: #212529;
    color: #fff;
}

#faq .accordion-button.collapsed::after {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='rgba(35, 31, 32, 0.7)' stroke-linecap='round' stroke-linejoin='round' stroke-width='3'%3e%3cpath d='M2 5L8 11L14 5'/%3e%3c/svg%3e");
}

#faq .accordion-button:not(.collapsed)::after {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3'%3e%3cpath d='M2 5L8 11L14 5'/%3e%3c/svg%3e");
}

#faq .accordion-body {
    font-size: 1.7rem;
    color: rgba(33, 37, 41, 0.7);
    padding: 2rem;
    line-height: 1.5;
    text-align: justify;
}

#faq .accordion-button {
    box-shadow: none;
}

/* Shortcut Buttons */
@media (max-width: 991.98px) {
    .shortcut-btns {
        bottom: 1rem !important;
        right: 1rem !important;
    }
    
    .shortcut-btns #btnPhone, 
    .shortcut-btns #btnScrollTop {
        display: none !important;
    }
}

.shortcut-btns #btnWhatsApp {
    display: block;
    width: 5rem;
    height: 5rem;
    border-radius: 50%;
    outline: none;
    cursor: pointer;
    font-size: 2.8rem;
    color: #fff;
    background-color: #25D366;
    border: 2px solid #25D366;
    transform: rotate(-90deg);
    transition: all .5s ease-in-out !important;
}

.shortcut-btns #btnWhatsApp:hover {
    transform: rotate(270deg) scale(1.03) !important;
}

.shortcut-btns {
  position: fixed;
  bottom: 6rem;
  right: 2rem;
  z-index: 999;
  display: flex;
  flex-direction: column;
  gap: 15px;
  align-items: flex-end;
}

.phone-button,
.scrolltop-button {
  display: inline-flex;
  align-items: center;
  height: 50px;
  position: relative;
  overflow: hidden;
  border: none;
  border-radius: 25px;
  background-color: transparent;
  text-decoration: none;
}

.phone-button:focus-visible, 
.scrolltop-button:focus-visible {
    outline: none !important;
}

.phone-button .icon,
.scrolltop-button .icon {
  width: 50px;
  height: 50px;
  color: #fff;
  background-color: #f53d3d;
  border: 2px solid #fff;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 20px;
  z-index: 2;
  position: relative;
  transition: transform 0.4s ease;
}

.phone-button .label-wrapper,
.scrolltop-button .label-wrapper {
  display: flex;
  align-items: center;
  background-color: #f53d3d;
  border: 2px solid #fff;
  height: 50px;
  padding: 0 40px 0 20px;
  border-top-left-radius: 25px;
  border-bottom-left-radius: 25px;
  margin-right: -30px;
  transform: translateX(100%);
  opacity: 0;
  transition: transform 0.4s ease, opacity 0.4s ease;
  white-space: nowrap;
  position: relative;
  z-index: 1;
}

.phone-button .label,
.scrolltop-button .label {
  color: #fff;
  font-weight: 600;
  font-size: 14px;
  letter-spacing: 1px;
  text-transform: uppercase;
  transform: translateX(-20px);
  opacity: 0;
  transition: transform 0.5s ease, opacity 0.5s ease;
  transition-delay: 0.1s;
}

.phone-button .icon {
    transform: rotate(-90deg);
}

.phone-button:hover .icon {
  transform: rotate(270deg) !important;
}

.scrolltop-button:hover .icon {
  transform: rotate(360deg) !important;
}

.phone-button:hover .label-wrapper,
.scrolltop-button:hover .label-wrapper {
  transform: translateX(0);
  opacity: 1;
}

.phone-button:hover .label,
.scrolltop-button:hover .label {
  transform: translateX(0);
  opacity: 1;
  line-height: 1;
}

#get-in-touch a,
#get-in-touch .card-body span,
#get-in-touch .form-label,
#get-in-touch .form-check-label {
    font-size: 1.7rem;
}

#get-in-touch a {
    color: #dddddd;
    transition: color 0.3s ease;
}

#get-in-touch a:hover {
    color: rgba(255, 255, 255, 1) !important;
}

.form-control, 
.form-select {
    font-size: 1.6rem;
    color: #dddddd;
    background-color: transparent;
    padding: 0.5rem 1rem;
}

.form-select option {
    color: #dddddd;
    background-color: #333;
}

.form-control:focus, 
.form-select:focus {
    color: #dddddd;
    background-color: transparent;
    border-color: rgba(255, 255, 255, 0.9) !important;
    box-shadow: none;
}

::placeholder {
    color: #dddddd !important;
    opacity: 1; /* Required for Firefox */
}

.form-check-input {
    background-color: transparent;
    border-color: #dddddd;
}

.form-check-input:focus {
    border-color: #dddddd;
    outline: 0;
    box-shadow: none;
}

.form-check-input:checked {
    background-color: transparent;
    border-color: #dddddd;
}

.terms {
    margin-left: .5rem;
}

button#contact-btn:disabled,
#contact-btn[disabled] {
    pointer-events: none;
    opacity: 0.5;
    cursor: not-allowed;
}

.form-control,
.form-select {
    border-color: #dddddd;
    box-shadow: none;
}

.was-validated .form-control:invalid,
.was-validated .form-select:invalid {
    border-color: #dc3545;
    box-shadow: none;
}

.was-validated .form-control:valid,
.was-validated .form-select:valid {
    border-color: #dddddd;
    box-shadow: none;
}


section#privacy-policy .sm-text, 
section#terms .sm-text {
    font-size: 1.5rem;
}

/* Breadcrumb wrapper */
.breadcrumb-container {
    font-size: 1.7rem;
    color: #6c757d;
    margin-top: 4rem;
    margin-bottom: 4rem;
    padding: 2rem 3rem;
    border-radius: 2rem;
    background-color: rgba(0, 0, 0, 0.5);
    box-shadow: 0 0.02rem 1rem rgb(11 229 255 / 15%);
}

.breadcrumb {
    margin: 0;
    padding: 0;
    list-style: none;
    display: flex;
    flex-wrap: wrap;
}

.breadcrumb-container {
    color: #6c757d;
}

.breadcrumb-container a {
    text-decoration: none;
    color: #6c757d;
}

.breadcrumb-container a:hover {
    color: #c1c1c1;
}


/* Footer */
footer {
    /*background-color: #0d0d0d;*/
    border-top: 1px solid rgba(255, 255, 255, 0.05);
}

footer .footer-container {
    margin-top: 5rem;
}

footer a, 
footer p, 
footer span {
    font-weight: 300;
    color: rgba(255, 255, 255, 0.75);
}

footer a {
    text-decoration: none; 
    transition: color .3s ease-in-out !important;
}

footer a:hover {
    color: rgba(255, 255, 255, 0.9);
}

.footer-widget h3 {
    font-size: 2.1rem !important;
}

footer ul.social-links {
    display: flex;
    gap: 1rem;
    list-style: none;
    padding-left: 0;
}

footer ul.social-links li a {
    display: flex;
    color: #efefef;
    border: 1px solid rgba(255, 255, 255, 0.75);
    justify-content: center;
    align-items: center;
    width: 4rem;
    height: 4rem;
    border-radius: 50%;
    outline: none;
    cursor: pointer;
    text-decoration: none;
    transition: all 0.3s ease-in-out !important;
}

footer ul.social-links li i:before {
    color: rgba(255, 255, 255, 0.75);
    transition: all 0.3s ease-in-out !important;
}

footer ul.social-links li a:hover {
    border-color: #fff;
}

footer ul.social-links li:hover i:before {
    color: #fff;
}

.copyright {
    font-size: 1.6rem;
    padding: 1rem 2rem;
    margin-top: 5rem;
    border-radius: 1rem;
    background-color: rgba(255, 255, 255, 0.05);
}





