/********** Template CSS **********/
:root {
    --primary: #54c5d0;
    --secondary: #E93C05;
    --tertiary: #555555;
    --light: #DFE4FD;
    --dark: #011A41;
}

.back-to-top {
    position: fixed;
    display: none;
    right: 30px;
    bottom: 30px;
    z-index: 99;
}

h1,
.h1,
h2,
.h2,
.fw-bold {
    font-weight: 700 !important;
}

h3,
.h3,
h4,
.h4,
.fw-medium {
    font-weight: 600 !important;
}

h5,
.h5,
h6,
.h6,
.fw-semi-bold {
    font-weight: 500 !important;
}

p{
    text-align: justify !important;
}

/*** Spinner ***/
#spinner {
    opacity: 0;
    visibility: hidden;
    transition: opacity .5s ease-out, visibility 0s linear .5s;
    z-index: 99999;
}

#spinner.show {
    transition: opacity .5s ease-out, visibility 0s linear 0s;
    visibility: visible;
    opacity: 1;
}


/*** Button ***/
.btn {
    transition: .5s;
    font-weight: 500;
}

.btn-primary,
.btn-outline-primary:hover {
    color: var(--light);
}

.btn-square {
    width: 38px;
    height: 38px;
}

.btn-sm-square {
    width: 32px;
    height: 32px;
}

.btn-lg-square {
    width: 48px;
    height: 48px;
}

.btn-square,
.btn-sm-square,
.btn-lg-square {
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: normal;
}


/*** Navbar ***/
.fixed-top {
    transition: .5s;
    background: white !important;

}
.fixed-top{
    background-color: white !important;
    top: 0 !important;
}
.top-bar {
    height: 45px;
    border-bottom: 1px solid rgba(53, 94, 252, .07);
    display: none !important;
}

.navbar .dropdown-toggle::after {
    border: none;
    content: "\f107";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    vertical-align: middle;
    margin-left: 8px;
}

.navbar .navbar-nav .nav-link {
    padding: 25px 15px;
    color:black;
    font-weight: 500;
    outline: none;
}

.navbar .navbar-nav .nav-link:hover,
.navbar .navbar-nav .nav-link.active {
    color: var(--primary);
}

@media (max-width: 991.98px) {
    .navbar .navbar-nav {
        margin-top: 10px;
        border-top: 1px solid rgba(0, 0, 0, .07);
        background: #FFFFFF;
    }

    .navbar .navbar-nav .nav-link {
        padding: 10px 0;
    }
}

@media (min-width: 992px) {
    .navbar .nav-item .dropdown-menu {
        display: block;
        visibility: hidden;
        top: 100%;
        transform: rotateX(-75deg);
        transform-origin: 0% 0%;
        transition: .5s;
        opacity: 0;
    }

    .navbar .nav-item:hover .dropdown-menu {
        transform: rotateX(0deg);
        visibility: visible;
        transition: .5s;
        opacity: 1;
    }
}


/*** Header ***/
.carousel-caption {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    display: flex;
    flex-direction: column;
    align-items: center;      /* horizontal center */
    justify-content: center;/* vertical center */
    text-align: center;
    z-index: 2;
    padding: 15px;
}


.carousel-control-prev,
.carousel-control-next {
    width: 3rem;
}

.carousel-control-prev-icon,
.carousel-control-next-icon {
    width: 3rem;
    height: 3rem;
    background-color: var(--primary);
    border: 10px solid var(--primary);
}

.carousel-control-prev-icon {
    border-radius: 0 3rem 3rem 0;
}

.carousel-control-next-icon {
    border-radius: 3rem 0 0 3rem;
}

@media (max-width: 768px) {
    #header-carousel .carousel-item {
        position: relative;
        min-height: 450px;
    }
    
    #header-carousel .carousel-item img {
        position: absolute;
        width: 100%;
        height: 100%;
        object-fit: cover;
    }
}

.page-header {
    padding-top: 12rem;
    padding-bottom: 6rem;
    background: url(../img/h.png) top left no-repeat;
    background-size: cover;
}

.page-header .breadcrumb-item,
.page-header .breadcrumb-item a {
    font-weight: 500;
}

.page-header .breadcrumb-item+.breadcrumb-item::before {
    color: var(--tertiary);
}


/*** Service ***/
.service .nav .nav-link {
    transition: .5s;
}

.service .nav .nav-link.active {
    border-color: var(--primary) !important;
    background: var(--primary);
}

.service .nav .nav-link.active h5 {
    color: #FFFFFF !important;
}

.service .nav .nav-link.active h5 i {
    color: #FFFFFF !important;
}
.service-text{
    text-align: justify;
}

/*** Project ***/
.project-item,
.project-item .project-img {
    position: relative;
}

.project-item .project-img a {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background: rgba(255, 255, 255, .5);
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 8px;
    opacity: 0;
    transition: .5s;
}

.project-item:hover .project-img a {
    opacity: 1;
}

.project-item .project-title {
    position: absolute;
    top: 3rem;
    right: 0;
    bottom: 0;
    left: 3rem;
    border: 1px solid var(--light);
    border-radius: 8px;
    display: flex;
    align-items: flex-end;
    padding: 18px;
    z-index: -1;
    transition: .5s;
}

.project-item:hover .project-title {
    background: var(--primary);
    border-color: var(--primary);
}

.project-item .project-title h4 {
    transition: .5s;
}

.project-item:hover .project-title h4 {
    color: #FFFFFF;
}

.project-carousel .owl-nav {
    margin-top: 25px;
    display: flex;
    justify-content: center;
}

.project-carousel .owl-nav .owl-prev,
.project-carousel .owl-nav .owl-next {
    margin: 0 12px;
    width: 45px;
    height: 45px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--primary);
    background: var(--light);
    border-radius: 45px;
    font-size: 22px;
    transition: .5s;
}

.project-carousel .owl-nav .owl-prev:hover,
.project-carousel .owl-nav .owl-next:hover {
    background: var(--primary);
    color: var(--light);
}


/*** Footer ***/
.footer .btn.btn-link {
    display: block;
    margin-bottom: 5px;
    padding: 0;
    text-align: left;
    color: var(--light);
    font-weight: normal;
    text-transform: capitalize;
    transition: .3s;
}

.footer .btn.btn-link::before {
    position: relative;
    content: "\f105";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    margin-right: 10px;
}

.footer .btn.btn-link:hover {
    color: var(--primary);
    letter-spacing: 1px;
    box-shadow: none;
}

.copyright {
    color: var(--light);
    background: #000B1C;
}

.copyright a {
    color: var(--light);
}

.copyright a:hover {
    color: var(--primary);
}

/* ========================= */
/* MEGA MENU FULL WIDTH */
/* ========================= */
.mega-dark {
    width: 100%;
    left: 0;
    right: 0;
    background: #54c5d0 !important;
/* background: linear-gradient(135deg, #6a8cff, #54c5d0); */
    border: none;
    color: #fff;
    padding: 40px;
    max-height: 85vh;
    overflow-y: auto;
    overflow-x: hidden;
    z-index: 9999;
}

/* ========================= */
/* SCROLLBAR DESIGN */
/* ========================= */
.mega-dark::-webkit-scrollbar {
    width: 8px;
}
.mega-dark::-webkit-scrollbar-track {
    background: rgba(255,255,255,0.15);
    border-radius: 10px;
}
.mega-dark::-webkit-scrollbar-thumb {
    background: #ffffff;
    border-radius: 10px;
}
.mega-dark::-webkit-scrollbar-thumb:hover {
    background: #e5e5e5;
}

/* ========================= */
/* LEFT SIDE CONTENT */
/* ========================= */
.mega-left {
    border-right: 1px solid rgba(255,255,255,0.2);
    padding-right: 30px;
}

.small-text {
    font-size: 12px;
    color: #fff;
    letter-spacing: 1px;
    text-transform: uppercase;
}

.mega-left h4 {
    margin-top: 10px;
    font-size: 24px;
    line-height: 1.4;
    font-weight: 600;
    color: #fff;
}

.mega-left p {
    color: #fff;
    font-size: 14px;
    margin-top: 10px;
    text-align: justify;
}

.demo-link {
    display: inline-block;
    margin-top: 20px;
    color: #fff;
    font-weight: 500;
    text-decoration: none;
    transition: 0.3s;
}

.demo-link:hover {
    text-decoration: underline;
}

/* ========================= */
/* SERVICES GRID */
/* ========================= */
.mega-services {
    display: grid;
    grid-template-columns: repeat(4,1fr);
    gap: 20px;
    margin-top: 10px;
}

/* ========================= */
/* PRODUCT CARD */
/* ========================= */
.product-card {
    background: #ffffff;
    padding: 20px;
    border-radius: 12px;
    transition: 0.35s;
    height: auto; /* auto height to show all headings */
    box-shadow: 0 8px 20px rgba(0,0,0,0.08);
    overflow: visible;
}

.product-card:hover {
    background: #54c5d0;
    transform: translateY(-6px);
    color: #fff;
    box-shadow: 0 14px 30px rgba(0,0,0,0.18);
}

.product-card h6 {
    font-size: 16px;
    font-weight: 600;
    margin-bottom: 12px;
    display: flex;
    align-items: center;
}

.product-card h6 i {
    margin-right: 8px;
    color: #54c5d0;
    font-size: 16px;
}

.product-card:hover h6 i {
    color: #fff;
}

/* ========================= */
/* LIST STYLE */
/* ========================= */
.mega-list {
    list-style: none;
    padding: 0;
    margin: 0;
}

.mega-list li {
    margin-bottom: 4px;
}

.mega-list li a {
    display: block;
    padding: 6px 0;
    color: #333;
    text-decoration: none;
    font-size: 14px;
    transition: 0.3s;
}

.mega-list li a i {
    margin-right: 8px;
    color: #54c5d0;
    font-size: 13px;
}

.product-card:hover .mega-list li a {
    color: #fff;
}

.product-card:hover .mega-list li a i {
    color: #fff;
}

.mega-list li a:hover {
    padding-left: 6px;
}

/* ========================= */
/* RESPONSIVE */
/* ========================= */

/* Desktop large: 4 columns already set */

/* Large tablet: 3 columns */
@media (max-width:1199px){
    .mega-services {
        grid-template-columns: repeat(3,1fr);
    }
}

/* Tablet: 2 columns */
@media(max-width:991px){
    .mega-left {
        border: none;
        margin-bottom: 25px;
        padding-right: 0;
    }
    .mega-services {
        grid-template-columns: repeat(2,1fr);
        gap: 15px;
    }
    .mega-dark {
        padding: 25px;
    }
}

/* Mobile: 1 column, normal dropdown (no blue sidebar) */
@media(max-width:575px){
    .mega-dark {
        background: #54c5d0; /* optional: or remove gradient */
        padding: 15px;
    }
    .mega-left {
        display: none; /* hide left intro on mobile */
    }
    .mega-services {
        grid-template-columns: 1fr;
        gap: 12px;
    }
    .product-card {
        padding: 15px;
    }
    .mega-left h4 {
        font-size: 20px;
    }
    .mega-left p {
        font-size: 13px;
    }
}

/* ========================= */
/* RIGHT SIDE SCROLL IF LONG CONTENT */
/* ========================= */
.mega-dark .col-lg-9 {
    max-height: 75vh;
    overflow-y: auto;
    padding-right: 10px;
}
.mega-dark .col-lg-9::-webkit-scrollbar {
    width:6px;
}
.mega-dark .col-lg-9::-webkit-scrollbar-thumb {
    background:#ffffff;
    border-radius:10px;
}
.mega-dark .col-lg-9::-webkit-scrollbar-thumb:hover {
    background:#e5e5e5;
}

.rotate-icon {
    display: inline-block; /* Needed for transform to work */
    animation: iconRing 1s infinite;
}

@keyframes iconRing {
    0% { transform: rotate(0deg); }
    20% { transform: rotate(15deg); }
    40% { transform: rotate(-15deg); }
    60% { transform: rotate(10deg); }
    80% { transform: rotate(-10deg); }
    100% { transform: rotate(0deg); }
}
/* =============================== */
/* BACK TO TOP BUTTON */
/* =============================== */

.back-to-top{
    position:fixed;
    right:30px;
    bottom:30px;
    z-index:999;
    width:50px;
    height:50px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:50%;
    background:#54c5d0;
    color:#fff;
    text-decoration:none;
    font-size:18px;
    box-shadow:0 6px 20px rgba(0,0,0,0.25);
    transition:all .4s ease;

    /* animation */
    animation:floatButton 3s ease-in-out infinite,
              pulseGlow 2.5s infinite;
}


/* Floating animation */

@keyframes floatButton{
    0%{
        transform:translateY(0);
    }
    50%{
        transform:translateY(-8px);
    }
    100%{
        transform:translateY(0);
    }
}


/* Glow pulse animation */

@keyframes pulseGlow{
    0%{
        box-shadow:0 0 0 0 rgba(53,94,252,0.6);
    }
    70%{
        box-shadow:0 0 0 14px rgba(53,94,252,0);
    }
    100%{
        box-shadow:0 0 0 0 rgba(53,94,252,0);
    }
}


/* Arrow icon animation */

.back-to-top i{
    transition:transform .3s ease;
}


/* Hover effect */

.back-to-top:hover{
    transform:scale(1.15);
    background:#2749d8;
}


/* Arrow jump on hover */

.back-to-top:hover i{
    transform:translateY(-6px);
}
/* =============================== */
/* COPYRIGHT SECTION ANIMATION */
/* =============================== */

.copyright{
    background:#000B1C;
    color:#ffffff;
    font-size:14px;
    position:relative;
    animation:fadeUp 1s ease forwards;
}

/* Fade animation */

@keyframes fadeUp{
    from{
        opacity:0;
        transform:translateY(30px);
    }
    to{
        opacity:1;
        transform:translateY(0);
    }
}


/* Links styling */

.copyright a{
    color:#ffffff;
    text-decoration:none;
    position:relative;
    transition:0.3s;
}


/* underline animation */

.copyright a::after{
    content:'';
    position:absolute;
    width:0;
    height:2px;
    left:0;
    bottom:-3px;
    background:#54c5d0;
    transition:0.4s;
}


/* hover effect */

.copyright a:hover::after{
    width:100%;
}


/* hover color */

.copyright a:hover{
    color:#54c5d0;
}


/* column hover lift */

.copyright .col-md-6{
    transition:0.3s;
}

.copyright .col-md-6:hover{
    transform:translateY(-3px);
}
/* =============================== */
/* FOOTER ANIMATION */
/* =============================== */

.footer{
background:#0a0f2c;
position:relative;
overflow:hidden;
}

/* Fade up animation */

.footer .col-lg-3{
animation:footerFadeUp 1s ease forwards;
opacity:0;
}

.footer .col-lg-3:nth-child(1){animation-delay:.2s;}
.footer .col-lg-3:nth-child(2){animation-delay:.4s;}
.footer .col-lg-3:nth-child(3){animation-delay:.6s;}
.footer .col-lg-3:nth-child(4){animation-delay:.8s;}

@keyframes footerFadeUp{
from{
opacity:0;
transform:translateY(40px);
}
to{
opacity:1;
transform:translateY(0);
}
}


/* =============================== */
/* FOOTER LINKS */
/* =============================== */

.footer .btn.btn-link{
display:block;
color:#cfd3ff;
padding:6px 0;
text-decoration:none;
transition:.3s;
position:relative;
}

/* slide animation */

.footer .btn.btn-link:hover{
color:#ffffff;
padding-left:10px;
}


/* underline animation */

.footer .btn.btn-link::after{
content:"";
position:absolute;
left:0;
bottom:0;
width:0;
height:2px;
background:#54c5d0;
transition:.4s;
}

.footer .btn.btn-link:hover::after{
width:40%;
}


/* =============================== */
/* SOCIAL ICON ANIMATION */
/* =============================== */

.footer .btn-square{
width:40px;
height:40px;
display:flex;
align-items:center;
justify-content:center;
transition:.4s;
}

/* hover */

.footer .btn-square:hover{
background:#54c5d0;
border-color:#54c5d0;
transform:translateY(-6px) rotate(360deg);
box-shadow:0 10px 25px rgba(0,0,0,0.4);
}


/* =============================== */
/* FOOTER HEADING */
/* =============================== */

.footer h4{
position:relative;
padding-bottom:10px;
margin-bottom:20px;
}

.footer h4::after{
content:"";
position:absolute;
left:0;
bottom:0;
width:40px;
height:3px;
background:#54c5d0;
border-radius:2px;
}


/* =============================== */
/* ADDRESS ICON ANIMATION */
/* =============================== */

.footer i{
transition:.3s;
}

.footer p:hover i{
transform:scale(1.2);
color:#54c5d0;
}


/* =============================== */
/* FOOTER GLOW LINE */
/* =============================== */

.footer::before{
content:"";
position:absolute;
top:0;
left:0;
width:100%;
height:2px;
background:linear-gradient(90deg,#54c5d0,#6a8cff,#54c5d0);
animation:footerGlow 5s linear infinite;
}

@keyframes footerGlow{
0%{background-position:0%}
100%{background-position:200%}
}
/* ===============================
GLOBAL SMOOTH ANIMATION
=================================*/
*{
    transition: all 0.3s ease;
}

/* ===============================
CONTACT SECTION ANIMATION
=================================*/

.container-xxl{
    animation: fadeUp 1s ease;
}

@keyframes fadeUp{
    from{
        opacity:0;
        transform:translateY(40px);
    }
    to{
        opacity:1;
        transform:translateY(0);
    }
}

/* ===============================
FORM INPUT ANIMATION
=================================*/

.form-control{
    border-radius:8px;
    border:1px solid #ddd;
    transition:0.4s;
}

.form-control:focus{
    border-color:#EB3300;
    box-shadow:0 0 10px rgba(235,51,0,0.3);
    transform:scale(1.02);
}

/* floating label highlight */

.form-floating label{
    transition:0.3s;
}

.form-control:focus + label{
    color:#EB3300;
}

/* ===============================
FORM BUTTON ANIMATION
=================================*/

.btn-primary{
    background:#EB3300;
    border:none;
    position:relative;
    overflow:hidden;
}

.btn-primary:hover{
    background:#c62800;
    transform:translateY(-3px);
    box-shadow:0 10px 20px rgba(0,0,0,0.2);
}

/* button shine effect */

.btn-primary::before{
    content:'';
    position:absolute;
    top:0;
    left:-100%;
    width:100%;
    height:100%;
    background:linear-gradient(
        120deg,
        transparent,
        rgba(255,255,255,0.4),
        transparent
    );
}

.btn-primary:hover::before{
    left:100%;
    transition:0.7s;
}

/* ===============================
MAP HOVER EFFECT
=================================*/

iframe{
    transition:0.5s;
}

.position-relative:hover iframe{
    transform:scale(1.05);
}

/* ===============================
FOOTER ANIMATION
=================================*/

.footer{
    position:relative;
}

.footer h4{
    position:relative;
    padding-bottom:10px;
}

.footer h4::after{
    content:'';
    position:absolute;
    left:0;
    bottom:0;
    width:40px;
    height:3px;
    background:#EB3300;
}

/* footer links hover */

.footer .btn-link{
    display:block;
    color:#ccc;
    text-decoration:none;
    margin-bottom:8px;
}

.footer .btn-link:hover{
    color:#EB3300;
    transform:translateX(5px);
}

/* ===============================
SOCIAL ICON ANIMATION
=================================*/

.footer .btn-square{
    transition:0.4s;
}

.footer .btn-square:hover{
    background:#EB3300;
    border-color:#EB3300;
    transform:translateY(-5px) rotate(10deg);
}

/* ===============================
COPYRIGHT SECTION
=================================*/

.copyright{
    background:#000;
}

.copyright a{
    color:#EB3300;
}

.copyright a:hover{
    color:#fff;
}

/* ===============================
BACK TO TOP BUTTON
=================================*/

.back-to-top{
    position:fixed;
    right:30px;
    bottom:30px;
    display:flex;
    align-items:center;
    justify-content:center;
    z-index:99;

    animation:floatBtn 2s infinite ease-in-out;
}

@keyframes floatBtn{
    0%{
        transform:translateY(0);
    }
    50%{
        transform:translateY(-8px);
    }
    100%{
        transform:translateY(0);
    }
}

/* hover rotate */

.back-to-top:hover{
    transform:rotate(360deg) scale(1.1);
    transition:0.6s;
}

/* ===============================
SECTION TITLE EFFECT
=================================*/

.display-5{
    position:relative;
}

.display-5::after{
    content:'';
    width:60px;
    height:3px;
    background:#EB3300;
    display:block;
    margin-top:10px;
}
/* ===============================
INDUSTRIES SECTION
=================================*/

.project-item{
    background:#fff;
    border-radius:10px;
    overflow:hidden;
    transition:all 0.4s ease;
    position:relative;
}

/* card hover lift */

.project-item:hover{
    transform:translateY(-12px);
    box-shadow:0 15px 35px rgba(0,0,0,0.15);
}

/* ===============================
IMAGE ANIMATION
=================================*/

.project-img{
    overflow:hidden;
    border-radius:10px;
}

.project-img img{
    transition:transform 0.6s ease;
}

/* zoom effect */

.project-item:hover img{
    transform:scale(1.1);
}
.text-gradient{
    color: black !important;
    
}
/* ===============================
TITLE STYLE
=================================*/

.project-title{
    padding:10px 5px;
}

.project-title h4{
    font-weight:600;
    position:relative;
    display:inline-block;
}

/* underline animation */

.project-title h4::after{
    content:'';
    position:absolute;
    left:0;
    bottom:-5px;
    width:0;
    height:3px;
    background:#EB3300;
    transition:0.4s;
}

.project-item:hover h4::after{
    width:100%;
}

/* ===============================
OVERLAY EFFECT
=================================*/

.project-img::before{
    content:'';
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:100%;
    background:linear-gradient(to top, rgba(0,0,0,0.5), transparent);
    opacity:0;
    transition:0.4s;
}

.project-item:hover .project-img::before{
    opacity:1;
}

/* ===============================
OWL CAROUSEL DOTS
=================================*/

.project-carousel .owl-dot span{
    width:12px;
    height:12px;
    background:#ccc;
    display:block;
    border-radius:50%;
    margin:5px;
    transition:0.3s;
}

.project-carousel .owl-dot.active span{
    background:#EB3300;
    transform:scale(1.3);
}

/* ===============================
SECTION TITLE ANIMATION
=================================*/

.display-5{
    position:relative;
}

.display-5::after{
    content:'';
    width:60px;
    height:3px;
    background:#EB3300;
    display:block;
    margin:10px auto 0;
}
/* ===============================
ABOUT IMAGE HOVER
================================*/

.container-xxl img{
    transition:0.6s;
}

.container-xxl img:hover{
    transform:scale(1.05);
}

/* ===============================
ABOUT TAB ANIMATION
================================*/

.tab-pane{
    animation:aboutFade 0.6s ease;
}

@keyframes aboutFade{
    from{
        opacity:0;
        transform:translateY(20px);
    }
    to{
        opacity:1;
        transform:translateY(0);
    }
}

/* ===============================
ABOUT TABS STYLE
================================*/

.nav-tabs .nav-link{
    transition:0.3s;
    border-radius:6px;
}

.nav-tabs .nav-link:hover{
    background:#EB3300;
    color:#fff;
}

.nav-tabs .nav-link.active{
    background:#EB3300;
    color:#fff;
}

/* ===============================
FEATURE BOX HOVER
================================*/

.border.rounded.p-4 .col-lg-4{
    transition:0.4s;
}

.border.rounded.p-4 .col-lg-4:hover{
    transform:translateY(-8px);
}

/* ===============================
ICON ANIMATION
================================*/

.btn-lg-square{
    transition:0.4s;
}

.col-lg-4:hover .btn-lg-square{
    transform:rotate(360deg) scale(1.1);
    background:#EB3300;
}

/* ===============================
TEXT ICON ANIMATION
================================*/

.fa{
    transition:0.3s;
}

.col-lg-4:hover .fa{
    transform:scale(1.2);
}

/* ===============================
HEADING UNDERLINE EFFECT
================================*/

.display-5{
    position:relative;
}

.display-5::after{
    content:'';
    width:70px;
    height:3px;
    background:#EB3300;
    display:block;
    margin-top:10px;
}

/* ===============================
CAROUSEL IMAGE ZOOM ANIMATION
================================*/

#header-carousel .carousel-item img{
    animation: zoomCarousel 12s ease-in-out infinite;
    transform: scale(1);
   
}
#header-carousel .carousel-item::before {
    background: linear-gradient(
        to right,
        rgba(84, 197, 208, 0.7),
        rgba(0, 0, 0, 0.4)
    );
}

/* Zoom animation */

@keyframes zoomCarousel{
    0%{
        transform: scale(1);
    }
    50%{
        transform: scale(1.08);
    }
    100%{
        transform: scale(1);
    }
}



/* ===============================
CAROUSEL TEXT ANIMATION
================================*/

.carousel-caption h1{
    animation: slideText 1.2s ease;
}

.carousel-caption p{
    animation: slideText 1s ease;
    color: black !important;
    /* border-color: whi !important; */
}

.carousel-caption .btn{
    animation: slideBtn 1.4s ease;
}

/* Text slide animation */

@keyframes slideText{
    from{
        opacity:0;
        transform:translateY(40px);
    }
    to{
        opacity:1;
        transform:translateY(0);
    }
}

/* Button animation */

@keyframes slideBtn{
    from{
        opacity:0;
        transform:translateY(60px);
    }
    to{
        opacity:1;
        transform:translateY(0);
    }
}


/* ===============================
CAROUSEL IMAGE OVERLAY
================================*/

#header-carousel .carousel-item::before{
    content:'';
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:100%;
   background: linear-gradient(
    to right,
    rgba(84, 197, 208, 0.7)
);
    z-index:1;
}

.carousel-caption{
    z-index:2;
}
/* SOCIAL ICON BUTTON STYLE */
.btn-sm-square{
    width:38px;
    height:38px;
    display:flex;
    align-items:center;
    justify-content:center;
    background:#ffffff;
    border-radius:50%;
    transition:all 0.4s ease;
    box-shadow:0 2px 8px rgba(0,0,0,0.1);
}

/* ICON STYLE */
.btn-sm-square small{
    font-size:14px;
    transition:all 0.4s ease;
}

/* HOVER EFFECT */
.btn-sm-square:hover{
    transform:translateY(-6px);
    box-shadow:0 10px 20px rgba(0,0,0,0.2);
    background:#EB3300;
}

/* ICON ROTATION */
.btn-sm-square:hover small{
    transform:rotate(360deg) scale(1.2);
    color:#ffffff !important;
}

/* OPTIONAL SMOOTH SPACING */
.btn-sm-square + .btn-sm-square{
    margin-left:8px;
}
/* Why Choose Section */

.choose-card{
background:#fff;
border-radius:12px;
box-shadow:0 5px 20px rgba(0,0,0,0.08);
transition:all 0.35s ease;
height:100%;
}

.choose-card:hover{
transform:translateY(-10px);
box-shadow:0 15px 40px rgba(0,0,0,0.15);
}

/* Icon Box */

.icon-box{
width:70px;
height:70px;
margin:auto;
display:flex;
align-items:center;
justify-content:center;
border-radius:50%;
background:#54c5d0;
color:#fff;
font-size:26px;
transition:0.3s;
}

.choose-card:hover .icon-box{
transform:rotate(10deg) scale(1.1);
background:#011A41;
}

.choose-card h5{
margin-top:10px;
font-weight:600;
}

.choose-card p{
font-size:15px;
color:#555;
text-align: justify !important;
}
/* Industry Cards */

.industry-card{
background:#fff;
border-radius:12px;
box-shadow:0 5px 20px rgba(0,0,0,0.08);
transition:all 0.35s ease;
height:100%;
}

.industry-card:hover{
transform:translateY(-10px);
box-shadow:0 15px 40px rgba(0,0,0,0.15);
}

/* Icon */

.industry-icon{
width:70px;
height:70px;
margin:auto;
margin-bottom:15px;
display:flex;
align-items:center;
justify-content:center;
border-radius:50%;
background:#54c5d0;
color:#fff;
font-size:28px;
transition:0.3s;
}

.industry-card:hover .industry-icon{
transform:scale(1.15) rotate(10deg);
background:#011A41;
}

.industry-card h5{
font-weight:600;
margin-top:10px;
}
/* Stats Section */

.stat-card{
background:#fff;
border-radius:12px;
box-shadow:0 5px 20px rgba(0,0,0,0.08);
transition:all 0.35s ease;
}

.stat-card:hover{
transform:translateY(-10px);
box-shadow:0 15px 40px rgba(0,0,0,0.15);
}

/* Icon */

.stat-icon{
width:65px;
height:65px;
margin:auto;
margin-bottom:15px;
display:flex;
align-items:center;
justify-content:center;
border-radius:50%;
background:#54c5d0;
color:#fff;
font-size:26px;
transition:0.3s;
}

.stat-card:hover .stat-icon{
transform:scale(1.15) rotate(10deg);
background:#011A41;
}

.stat-card h1{
font-size:42px;
font-weight:700;
}

.stat-card p{
font-size:16px;
color:black;
text-align: center !important;
}
/* Service Section */
.service-section{
background:#f8f9fa;
}

/* Service Card */
.service-item{
transition:all 0.4s ease;
border-radius:12px;
position:relative;
overflow:hidden;
}

/* Hover Lift */
.service-item:hover{
transform:translateY(-12px);
box-shadow:0 20px 40px rgba(0,0,0,0.1);
}

/* Icon Styling */
.service-icon{
font-size:40px;
color:#54c5d0;
margin-bottom:20px;
transition:all 0.4s ease;
}

/* Icon Animation */
.service-item:hover .service-icon{
transform:scale(1.2) rotate(10deg);
color:#011A41;
}

/* Card Glow Effect */
.service-item::before{
content:"";
position:absolute;
top:0;
left:-100%;
width:100%;
height:100%;
background:linear-gradient(120deg,transparent,rgba(13,110,253,0.15),transparent);
transition:0.6s;
}

.service-item:hover::before{
left:100%;
}
/* ============================= */
/* PAGE HEADER */
/* ============================= */

.page-header{
position:relative;
padding-top:14rem;
padding-bottom:14rem;
overflow:hidden;
min-height:450px;
display:flex;
align-items:center;
}

/* Background layer */

.header-bg{
position:absolute;
top:0;
left:0;
width:100%;
height:100%;
background:url("../img/h.png") no-repeat center center;
background-size:cover;
z-index:0;
animation:headerZoom 20s ease-in-out infinite alternate;
}

/* Overlay */

.page-header::before{
content:"";
position:absolute;
top:0;
left:0;
width:100%;
height:100%;
background:rgba(0,0,0,0.15);
z-index:1;
}

/* Content */

.page-header .container{
position:relative;
z-index:2;
color:#fff;
}

/* ============================= */
/* TITLE */
/* ============================= */

.header-title{
font-weight:700;
letter-spacing:2px;
animation:titleFade 1.2s ease;
color: white !important;
}
.display-3.header-title{
    color: white !important;
}

/* Title animation */

@keyframes titleFade{
0%{
opacity:0;
transform:translateY(40px);
}
100%{
opacity:1;
transform:translateY(0);
}
}

/* ============================= */
/* BACKGROUND ANIMATION */
/* ============================= */

@keyframes headerZoom{
0%{
transform:scale(1);
}
100%{
transform:scale(1.05);
}
}

/* ============================= */
/* BREADCRUMB */
/* ============================= */

.breadcrumb{
background:transparent;
}

.breadcrumb a{
color:#fff;
text-decoration:none;
position:relative;
}

/* Hover underline */

.breadcrumb a::after{
content:"";
position:absolute;
width:0;
height:2px;
background:#fff;
left:0;
bottom:-4px;
transition:0.4s;
}

.breadcrumb a:hover::after{
width:100%;
}

/* ============================= */
/* TABLET RESPONSIVE */
/* ============================= */

@media (max-width:991px){

.page-header{
padding-top:10rem;
padding-bottom:8rem;
min-height:380px;
}

.header-title{
font-size:2.2rem;
letter-spacing:1px;
}

}

/* ============================= */
/* MOBILE RESPONSIVE */
/* ============================= */

@media (max-width:576px){

.page-header{
padding-top:6rem;
padding-bottom:5rem;
min-height:300px;
text-align:center;
}

.breadcrumb{
justify-content:center !important;
}

}
/* ========================= */
/* CONTACT FORM STYLING */
/* ========================= */

.container-xxl.py-5 {
    background: #f8f9fa; /* Light background for the contact section */
}

h1.display-5 {
    font-weight: 700;
    color: #212529;
}

h4.mb-4 {
    font-weight: 400;
    color: #495057;
}

/* Form Wrapper */
form[name="static_form"] {
    background: #fff;
    padding: 30px;
    border-radius: 12px;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);
}

/* Labels */
form[name="static_form"] label {
    font-weight: 500;
    margin-bottom: 6px;
    display: block;
}

/* Input Fields */
form[name="static_form"] input.form-control,
form[name="static_form"] select.form-select,
form[name="static_form"] textarea.form-control {
    border-radius: 6px;
    border: 1px solid #ced4da;
    padding: 10px 12px;
    transition: 0.3s all;
}

form[name="static_form"] input.form-control:focus,
form[name="static_form"] select.form-select:focus,
form[name="static_form"] textarea.form-control:focus {
    border-color: #54c5d0;
    box-shadow: 0 0 0 0.2rem rgba(53, 94, 252, 0.25);
}

/* Placeholder Styling */
form[name="static_form"] input::placeholder,
form[name="static_form"] textarea::placeholder {
    color: #6c757d;
    opacity: 1;
}

/* File Input */
form[name="static_form"] input[type="file"] {
    padding: 5px 3px;
}

/* Buttons */
form[name="static_form"] .btn-primary {
    background-color: #54c5d0;
    border-color: #54c5d0;
    border-radius: 6px;
    padding: 10px 25px;
    font-weight: 500;
    transition: 0.3s all;
}

form[name="static_form"] .btn-primary:hover {
    background-color: #2a49c6;
    border-color: #2a49c6;
}

form[name="static_form"] .btn-secondary {
    background-color: #6c757d;
    border-color: #6c757d;
    border-radius: 6px;
    padding: 10px 25px;
    font-weight: 500;
    transition: 0.3s all;
}

form[name="static_form"] .btn-secondary:hover {
    background-color: #5a6268;
    border-color: #5a6268;
}

/* Required field asterisk */
form[name="static_form"] .text-danger {
    font-weight: 700;
}

/* Company Name conditional field */
#comp_name {
    transition: 0.3s all;
}

/* Responsive spacing for inputs on smaller devices */
@media (max-width: 767px) {
    form[name="static_form"] {
        padding: 20px;
    }
}
.tab-content p{
    text-align: justify;
    max-width: 900px;
    margin: auto;
}

/* Wrapper */
.contact-float-wrapper {
    position: fixed;
    bottom: 120px;
    right: 20px;
    display: flex;
    flex-direction: column;
    gap: 15px;
    z-index: 9999;
}

/* Common button style */
.contact-float {
    width: 55px;
    height: 55px;
    border-radius: 50%;
    background-color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 4px 12px rgba(0,0,0,0.15);
    color: #fff;
    font-size: 24px;
    transition: all 0.3s ease;
    text-decoration: none;
}

/* Individual colors */
.whatsapp-float { background-color: #25d366; color: #fff; }
.phone-float    { background-color: #54c5d0; color: #fff; }
.email-float    { background-color: #ff5722; color: #fff; }
.location-float { background-color: #f50057; color: #fff; }

/* Hover effects */
.contact-float:hover {
    transform: translateY(-5px);
    box-shadow: 0 6px 18px rgba(0,0,0,0.25);
}
