/* ===============================

   Full height layout

================================ */

html,

body {

    height: 100%;

    margin: 0;

    scroll-behavior: smooth;

}



section {

    position: relative;

}



/* ===============================

   Page flex structure

================================ */

/* body {

    display: flex;

    flex-direction: column;

    min-height: 100vh;

    font-family: Arial, sans-serif;

    background: #f4f4f4;

    overflow-x: hidden;

} */



body {

    display: flex;

    flex-direction: column;

    min-height: 100vh;

    font-family: Arial, sans-serif;

    background: #f4f4f4;

    overflow-x: hidden;



    overflow-y: scroll;



    /* Firefox */

    scrollbar-width: thin;

    scrollbar-color: transparent transparent;

}



/* Chrome, Edge, Safari */

body::-webkit-scrollbar {

    width: 6px;

    /* MUST NOT BE 0 */

}



/* Hide by default */

body::-webkit-scrollbar-thumb {

    background: transparent;

}



/* Show only when scrolling */

body.scrolling::-webkit-scrollbar-thumb {

    background: linear-gradient(180deg, #073763, #2563eb);

    border-radius: 10px;

}



/* Firefox active */

body.scrolling {

    scrollbar-color: #073763 transparent;

}



/* ===============================

   Global Fixes

================================ */

/* img {

    max-width: 100%;

    height: auto;

} */



.container {

    width: 100%;

    max-width: 1200px;

    margin: 0 auto;

    padding-left: 15px;

    padding-right: 15px;

}



/* ===============================

   Header Page

================================ */

/* Default header (top of page) */

.site-header {

    background: transparent;

    color: #073763;

    width: 100%;

    transition: all 0.3s ease;

}



/* When scrolling */

.site-header.sticky {

    position: fixed;

    top: 0;

    left: 0;

    width: 100%;

    z-index: 1000;



    background: #ffffff;

    box-shadow: 0 6px 18px rgba(0, 0, 0, 0.08);

}



/* Header shrink effect */

.site-header.sticky .brand-logo {

    height: 32px;

    margin-right: 10px;



}



.site-header.sticky .brand-text {

    font-size: 20px;

}



/* Slide animation */

@keyframes slideDown {

    from {

        transform: translateY(-100%);

        opacity: 0;

    }



    to {

        transform: translateY(0);

        opacity: 1;

    }

}



.site-header .container {

    display: flex;

    align-items: center;

    justify-content: space-between;

    padding: 10px;

}



/* Hamburger Menu */

.menu-toggle {

    display: none;

    font-size: 28px;

    cursor: pointer;

    user-select: none;

    margin-left: auto;

}





/* Brand (Logo + Company Name) */

.brand {

    display: flex;

    align-items: center;

    max-width: 50%;

    text-decoration: none;

    color: #073763;

}



.brand-logo {

    height: 32px;

    margin-right: 10px;

}



.brand-text {

    font-size: 20px;

    font-weight: 600;

}



/* Navigation */



.main-nav {

    display: flex;

    align-items: center;

    gap: 20px;

}



.main-nav a {

    position: relative;

    color: #073763;

    text-decoration: none;

    font-size: 16px;

    font-weight: 500;

}



/* Hover underline animation */

.main-nav a::after {

    content: "";

    position: absolute;

    left: 0;

    bottom: -6px;

    width: 0;

    height: 2px;

    background: #f96903;

    transition: width 0.3s ease;

}



.main-nav a:hover::after {

    width: 100%;

}



/* ===============================

   Main content

================================ */

main {

    flex: 1 0 auto;

    background: #ffffff;

    padding: 0 0;

}



/* ===============================

   Footer Page

================================ */

.site-footer {

    background: #e6e6e6;

    color: #073763;

    text-align: center;

    /* padding: 10px; */

    font-size: 60%;

    margin-top: auto;

}



/* ===============================

   Index page

================================ */



/* Subtitle & heading */

.services-container h1 {

    font-size: 42px;

    margin-bottom: 10px;

}



.services-container .subtitle {

    font-size: 16px;

    line-height: 1.5;

    text-align: center;

}











/* Default desktop size */

.services-list li strong {

    font-size: 17px;

    /* desktop font size */

}



.hero-multi-content {

    display: flex;

    gap: 30px;

}



.hero-item {

    flex: 1;

}



.index-title::after {

    content: "";

    width: 60px;

    height: 3px;

    background: #f96903;

    display: block;

    margin: 5px auto;

}





/* ==================================

   HERO SLIDER

================================== */



.hero-section {

    background-color: #f8fbff;

    position: relative;

    overflow: hidden;

    height: 321.6px;
    padding: 10px 0;

    display: flex;

    align-items: center;

    border: 1px solid #f8fbff;

    border-radius: 12px;

    box-shadow: 0 6px 15px rgba(7, 55, 99, 0.05);

}


.hero-slide-container {

    display: flex;

    height: 100%;

    transition: transform .9s cubic-bezier(.25, .8, .25, 1);

}



.hero-slide {

    min-width: 100%;

    height: 100%;

    position: relative;

}



.hero-wrapper {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 40px;
    min-height: 310px;
}



.hero-flex-slide {

    display: flex;

    align-items: center;

    justify-content: space-between;

    gap: 40px;

}



.hero-slide img {

    width: 100%;

    height: 100%;

    object-fit: cover;

    /* animation: zoom 5s infinite alternate; */

}



/* @keyframes zoom {

  0% { transform: scale(9); }

  100% { transform: scale(0.2); }

} */



/* overlay */



.hero-slide::before {

    content: "";

    position: absolute;

    inset: 0;

    /* background: rgba(0, 0, 0, .2); */

    z-index: 1;

}



/* hero text */



.hero-content {

    position: relative;

    color: #073763;

    text-align: center;

     padding: 25px 30px; 

    border-radius: 12px;

    max-width: 850px;

    margin: 0 auto;

    z-index: 2;

    transform: none;

    left: auto;

    top: auto;
    flex: 1;

}



.hero-content h1 {
    font-size: 30px;
    margin-bottom: 10px;
    font-weight: 700;
}



.hero-content h1::after {

    content: "";

    width: 15%;

    height: 3px;

    background: #f96903;

    display: block;

    margin: 1% 0% 0% 42%;

    font-size: 30px;

    margin-bottom: 10px;

}



.hero-content p {

    font-size: 100%;

    line-height: 1.6;

}





/* ==================================

   SLIDER ARROWS

================================== */



.slider-arrow {

    position: absolute;

    top: 50%;

    transform: translateY(-50%);

    font-size: 40px;

    color: #111214;

    cursor: pointer;

    z-index: 10;

    opacity: .4;

    transition: .3s;

}



.slider-arrow:hover {

    opacity: 1;

    transform: translateY(-50%) scale(1.1);

}



.slider-arrow.left {

    left: 20px;

}



.slider-arrow.right {

    right: 20px;

}





/* ==================================

   SLIDER DOTS

================================== */



.slider-dots {

    position: absolute;

    bottom: 20px;

    left: 50%;

    transform: translateX(-50%);

    display: flex;

    gap: 10px;

}



.slider-dots span {

    width: 10px;

    height: 10px;

    background: #ccc;

    border-radius: 50%;

    cursor: pointer;

}



.slider-dots span.active {

    background: #073763;

}



/* ==================================

   SERVICES SECTION

================================== */



.row,

.g-4 {

    color: #073763;

}



.services {

    /* background: linear-gradient(135deg, #eef2ff, #f8fafc); */

    padding: 20px 0;

}



.service-card {

    background: rgba(255, 255, 255, .7);

    backdrop-filter: blur(10px);

    border-radius: 14px;

    padding: 35px;

    box-shadow: 0 10px 25px rgba(0, 0, 0, .08);

    transition: .3s;

    height: 100%;

}



.service-card:hover {

    transform: translateY(-10px);

    box-shadow: 0 18px 40px rgba(0, 0, 0, .12);

}



.service-icon {

    display: flex;

    justify-content: center;

    /* Horizontally center */

    align-items: center;

    /* Vertically center if needed */

    font-size: 38px;

    color: #2563eb;

    margin-bottom: 12px;

    align-items: center;

}



.service-card h5 {

    font-size: 18px;

    font-weight: 600;

    text-align: center;

}



/* ==================================

   TECH EXPERTISE CARDS

================================== */



/* .tech-card {

    border-radius: 12px;

    transition: .3s;

    color: #073763;

} */



.tech-card {

    height: 100%;

    min-height: 320px; /* adjust as needed */

    display: flex;

    flex-direction: column;

    justify-content: flex-start;

    border-radius: 18px;

    transition: all 0.3s ease;

}





.tech-card h5 {

    font-size: 18px;

    font-weight: 600;

    color: #073763;

    min-height: 50px; /* keeps heading area same */

}



.tech-card p {

    text-align: left;

    flex-grow: 1;

    margin-bottom: 0;

    color: #073763;

}



.tech-card:hover {

    transform: translateY(-8px);

    box-shadow: 0 15px 35px rgba(0, 0, 0, .15);

}



.tech-icon i {

    font-size: 40px;

    color: #2563eb;

}



/* .tech-link {

    text-decoration: none;

    color: inherit;

    display: block;

} */



.tech-link {

    display: block;

    height: 100%;

    text-decoration: none;

    color: inherit;

}



.col-md-4 {

    display: flex;

}



.tech-link:hover {

    text-decoration: none;

}



/* ==================================

   TRUSTED LOGOS

================================== */



.trusted-logos {

    display: flex;

    justify-content: center;

    gap: 60px;

    flex-wrap: wrap;

    margin-top: 40px;

}



.trusted-logos img {

    height: 50px;

    opacity: .7;

    transition: .3s;

}



.trusted-logos img:hover {

    opacity: 1;

    transform: scale(1.1);

}



/* ==================================

   PARTNERS SECTION

================================== */

.partners-section {

    background: #ffffff;

    width: 100%;

    padding-top: 20px;

}



.index-title {

    text-align: center;

    font-size: 26px;

    font-weight: 700;

    margin: 15px;

    color: #073763;

}



/* slider */

.partners-slider {

    overflow: hidden;

    width: 100%;

    display: flex;

    justify-content: center;

}



/* .partners-track {

    display: flex;

    align-items: center;

    gap: 60px;

    animation: scroll 20s linear infinite;

    width: max-content;

} */



.partners-track img {

    width: 150px;

    object-fit: contain;

}



/* animation */

@keyframes scroll {

    0% {

        transform: translateX(0);

    }



    100% {

        transform: translateX(-50%);

    }

}



/* ==================================

   WHY-US SECTION

================================== */

.grid-4 {

    display: grid;

    grid-template-columns: repeat(4, 1fr);

    gap: 25px;

    color: #073763;

    padding-top: 15px;

}



.grid-4 h5 {

    font-size: 18px;

    font-weight: 600;

}



.why-us {



    padding: 20px 0;

}



/* ===============================

   ABOUT COMPANY SECTION

================================ */

.about-company {

    background: #ffffff;

    padding: 40px 0px 0px 0px;

}



.about-img {

    width: 100%;

    max-width: 450px;

    border-radius: 12px;

    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.1);

}



/* TEXT */

.about-text {

    font-size: 15px;

    line-height: 1.7;

    color: #073763;

    text-align: justify;

}





/* ==================================

  OUR APPROACH SECTION

================================== */

.process-section {

    /* background: #f8fafc; */

    padding: 40px 0;

}



.process-subtitle {

    max-width: 700px;

    margin: 0 auto 40px;

    color: #073763;

    text-align: center;
    font-size: 16px;

}



/* ===============================

   TIMELINE CONTAINER

================================ */

.process-timeline {

    display: flex;

    justify-content: space-between;

    align-items: flex-start;

    position: relative;

    margin-top: 40px;

}



/* CENTER LINE */

.process-timeline::before {

    content: "";

    position: absolute;

    top: 15px;

    /* center of 30px circle */

    left: 5%;

    width: 90%;

    height: 3px;

    background: #dbeafe;

    z-index: 0;

}



/* ===============================

   EACH STEP

================================ */

.process-step {

    width: 22%;

    text-align: center;

    position: relative;

    z-index: 1;

    display: flex;

    flex-direction: column;

    align-items: center;

}



/* ===============================

   CIRCLE

================================ */

.process-circle {

    width: 30px;

    height: 30px;

    background: #073763;

    color: #fff;

    border-radius: 50%;

    display: flex;

    align-items: center;

    justify-content: center;

    margin: 0 auto 12px;

    font-weight: bold;

    font-size: 12px;

    box-shadow: 0 5px 15px rgba(37, 99, 235, 0.3);

    transition: all 0.3s ease;

    position: relative;

    z-index: 2;

}



/* OPTIONAL PREMIUM BORDER EFFECT */

.process-circle {

    border: 3px solid #fff;

}



/* ===============================

   HOVER EFFECT

================================ */

.process-step:hover .process-circle {

    transform: scale(1.2);

    background: #1e40af;

}



/* ===============================

   TEXT

================================ */

.process-step h5 {

    font-size: 18px;

    font-weight: 600;

    color: #073763;

    margin-bottom: 6px;

}



.process-step p {

    font-size: 14px;

    color: #073763;

    line-height: 1.5;

}



/* ==================================

   CTA SECTION

================================== */



.cta-section {

    background: linear-gradient(135deg, #eef2ff, #f8fafc);

    color: #073763;

    text-align: center;

    padding: 30px 20px;

}



.btn-consult {

    background: #073763;

    color: #fff;

    padding: 10px;

    border-radius: 6px;

    text-decoration: none;

    font-weight: 600;

    display: inline-block;

    transition: .3s;

}



.btn-consult:hover {

    transform: translateY(-3px);

    box-shadow: 0 10px 20px rgba(0, 0, 0, .2);

    background-color: #073763;

}



/* ===============================

   Service pages

================================ */

.section-title-service {

    font-weight: 800;

    margin: 0px 0px 40px 0px;

    font-size: 40px;

    color: #073763;

    text-align: center;

}



.service-heading-can {

    font-weight: 700;

    margin: 25px 0;

    color: #073763;

    font-size: 28px;

}



.service-heading-cli {

    font-weight: 700;

    margin: 25px 0;

    color: #073763;

    font-size: 28px;

}



.service-text {

    font-size: 16px;

    line-height: 1.6;

    color: #495057;

}



.service-img {

    width: 100%;

    max-width: 70%;

    height: auto;

    border-radius: 6px;

    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);

}



/* ===============================

   Contact Page Layout

================================ */

.contact-section {

    background: #fff;

    align-items: center;

}



.row {

    display: flex;

    flex-wrap: wrap;

    justify-content: space-between;

}



/* ===============================

   Contact Hero Banner

================================ */

.contact-hero {

    background-size: cover;

    background-position: center;

    background-repeat: no-repeat;

    padding: 80px 0;

    position: relative;

}



.contact-hero::before {

    content: "";

    position: absolute;

    top: 0;

    left: 0;

    width: 100%;

    height: 100%;

    background: rgba(0, 0, 0, 0.65);

}



.contact-hero .container {

    height: 100%;

    position: relative;

    z-index: 2;

}



.hero-main-title {

    font-size: 30px;

    font-weight: 500;

    color: #073763;

    padding-right: 20px;

}



.hero-main-title span {

    font-weight: 700;

}



.hero-right {

    border-left: 3px dashed #f96903;

    padding-left: 30px;

}



.hero-right p {

    color: #073763;

    font-size: 100%;

    line-height: 1.7;

}



/* ===============================

   Contact Cards

================================ */

.contact-card {

    background: #ffffff;

    padding: 20px;

    color: #073763;

    transition: all 0.35s ease;

    transform: scale(1);

}



.contact-form input::placeholder,

.contact-form textarea::placeholder {

    font-size: 100%;

    /* adjust as needed */

}



.contact-card-hours {

    background: #ffffff;

    color: #073763;

    width: 50%;

    padding-top: 30px;

}



@media (hover: hover) and (pointer: fine) {

    .contact-card:hover {

        transform: scale(1.03);

    }

}



.query-title {

    font-size: 26px;

    font-weight: 700;

    margin-bottom: 20px;



}



.query-title-career {

    font-size: 26px;

    font-weight: 700;

    margin-bottom: 20px;

    text-align: center;

    color: #073763;



}



.query-title-career::after {

    content: "";

    width: 60px;

    height: 3px;

    background: #f96903;

    display: block;

    margin: 5px auto;

}



.query-title-career h1::after {

    content: "";

    width: 60px;

    height: 3px;

    background: #f96903;

    display: block;

    margin: 5px auto;

}



.query-title-connect {

    font-size: 26px;

    font-weight: 700;

}



.contact-form-col {

    width: 50%;

    padding: 10px;

}



/* ===============================

   Form

================================ */

.form-control {

    height: 50px;

    border-radius: 6px;

    border: 1px solid #e0e0e0;

    padding: 12px 16px;

    background: #f4f8fb;

}



textarea.form-control {

    height: 150px;

    resize: none;

}



.form-control:focus {

    border-color: #073763;

    box-shadow: 0 0 0 2px rgba(7, 55, 99, 0.08);

}

/* ===============================
   conatact page form validation
================================ */

.error-msg {
    display: none;
    color: red;
    font-size: 14px;
}

.show-error {
    display: block;
}

/* 🔴 Red border */
.input-error {
    border: 2px solid red !important;
}

/* 🟢 Green border */
.input-success {
    border: 2px solid green !important;
}


.btn-wrapper {
    display: flex;
    align-items: center;
    gap: 25px; /* space between button and message */
}

#formMessage {
    white-space: nowrap; /* 🚨 prevents line break */
}
/* ===============================
   Button
================================ */

.whatsapp-btn {

    background-color: #073763;

    color: #fff;

    padding: 10px 20px;

    border-radius: 7px;

    text-decoration: none;

}



.whatsapp-btn:hover {

    background-color: #0a3970;

    color: #fff;

}



/* ===============================

   Business Hours

================================ */

.hours-card {

    width: 50%;

}



.hours-box {

    margin-top: 10px;

    width: 90%;

    color: #073763;

}



.hours-list {

    list-style: none;

    margin: 0;



}



ul.hours-list {

    padding-left: 0px;

}



.hours-list li {

    display: flex;

    justify-content: space-between;

    padding: 6px 0;

    border-bottom: 1px solid #eee;

}



.current-day {

    background-color: #ffd6b3;

    font-weight: 700;

    border-left: 4px solid #f96903;

    padding-left: 8px;

}



.text-danger {

    color: #e63946;

}



/* ===============================

   Address Section

================================ */

.address-card {

    color: #073763;

    border-radius: 8px;

}



.info-item {

    margin-bottom: 10px;

}



.info-text h4 {

    font-size: 18px;

    font-weight: 600;

    margin-bottom: 5px;

    color: #073763;

}



.info-text p {

    margin: 0;

    color: #073763;

    line-height: 1.6;

}



.info-text a {

    color: #08a4f2;

    text-decoration: none;

}



.address-card,

.contact-map {

    width: 50%;

}



/* ===============================

   Google Map

================================ */

.contact-map {

    padding: 10px;

    margin-top: -120px;

    /* move map upward */

    position: relative;

    z-index: 1;

}



.contact-map iframe {

    width: 90%;

    height: 355px;

    border: 0;

    border-radius: 8px;

}



.div.contact-map {

    padding-left: 10px;

}



/* ===============================

   About page

================================ */



.about-hero {

    /* background: linear-gradient(135deg, #f8fbff, #eef2ff); */

    background-color: #f8fbff;
    
    padding: 10px 0;

    min-height: 310px;

    display: flex;

    align-items: center;

    position: relative;

    overflow: hidden;

    border: 1px solid #f8fbff;

    /* subtle border */

    border-radius: 12px;

    /* rounded corners */

    box-shadow: 0 6px 15px rgba(7, 55, 99, 0.05);

}





/* FLEX */

.hero-flex {

    display: flex;

    align-items: center;

    justify-content: space-between;

    gap: 20px;

}



/* IMAGE */
/* .hero-image {
    flex: 1;
    text-align: center;
} */


.hero-image img {
    width: 100%;
    max-width: 450px;
    height: auto;
    object-fit: contain;
    display: block;
    margin: auto;
}


/* TEXT */

.hero-text {

    flex: 1;

}



/* TEXT */

.hero-textt {

    flex: 1;

}



/* HEADING */

.hero-text h1 {

    text-align: center;

    font-size: 30px;

    font-weight: 700;

    margin: 15px;

    color: #073763;

}



/* HEADING */

.hero-textt h1 {

    text-align: center;

    font-size: 30px;

    font-weight: 700;

    margin: 15px;

    color: #073763;

}



.hero-text h1::after {

    content: "";

    width: 15%;

    height: 3px;

    background: #f96903;

    display: block;

    margin: 1% 0% 0% 39%;



    /* centers underline on desktop */

}



/* PARAGRAPH */

.hero-text p {

    font-size: 100%;

    color: #073763;

    margin-top: 10px;

    line-height: 1.6;

    text-align: center;

}



/* PARAGRAPH */

.hero-textt p {

    font-size: 100%;

    color: #073763;

    margin-top: 10px;

    line-height: 1.6;

    text-align: center;

}



/* STATS */

.stats {

    background: linear-gradient(135deg, #eef2ff, #f8fafc);

    border-top: 1px solid #eee;

    border-bottom: 1px solid #eee;

}



.stat-box {

    text-align: center;

    padding: 20px;

}



.stat-box h4 {

    color: #073763;

    font-weight: 700;

    font-size: 26px;

}



.stat-box p {

    color: #073763;

    margin: 0;

    font-size: 100%;

}



/* ABOUT SECTION */

.about-section {

    padding: 20px 0;

}





.section-title,

.index-title {

    font-weight: 700;

    color: #073763;

    margin-bottom: 15px;

}



/* TEXT */

.about-section p {

    color: #073763;



}



.feature-list li {

    margin-bottom: 10px;

    font-size: 100%;

    padding-left: 20px;

}



.feature-list i {

    color: #073763;

    margin-right: 8px;

}



/* MISSION / VISION */

.mv-box {

    padding: 25px;

    border-radius: 12px;

    background: #fbfafa;

    height: 100%;

}



/* WHY */

.why-box {

    text-align: center;

    padding: 20px;

}



.why-box h5 {

    font-size: 18px;

    font-weight: 700;

    color: #073763;

}





.why-box i {

    font-size: 28px;

    color: #073763;

    margin-bottom: 10px;

}



/* MOBILE */

@media (max-width: 768px) {

    .hero-flex {

        flex-direction: column;

        text-align: center;

    }


    .hero-text h1 {

        font-size: 24px;

        text-align: center;

    }


    .hero-textt h1 {

        font-size: 24px;

        text-align: center;

    }



    .hero-text h1::after {

        margin: 5px 0px 0px 110px;

        /* centers underline on mobile */

        width: 75px;

    }



    .about-hero {

        text-align: center;

    }

}


/* ===============================

   MOBILE RESPONSIVE

================================ */

@media (max-width:768px) {



    .site-header .container {

        flex-wrap: wrap;

        justify-content: space-between;

        align-items: center;

    }



    .brand {

        max-width: 100%;

    }



    .brand-text {

        font-size: 20px;

    }



    .menu-toggle {

        display: block;

    }



    .main-nav {

        display: none;

        flex-direction: column;

        width: 100%;

        margin-top: 10px;

    }



    .main-nav.active {

        display: flex;

    }



    .main-nav a {

        padding: 12px 0;

        width: 100%;

        border-top: 1px solid #ccc;

    }



    .index-title,

    .section-title,

    .contact-title {

        font-size: 28px;

        margin: 10px 0px 0px 0px;

    }



    .service-heading-can,

    .service-heading-cli {

        font-size: 22px;

    }



    .hero-section {

        height: auto;

        min-height: 300px;

    }



    .hero-content {

        width: 100%; 

    }





    .slider-arrow {

        font-size: 22px;

        padding: 8px 12px;

    }



    .hero-content h1 {

        font-size: 30px;
	font-weight: 700;
        line-height: 1.3;

    }



    .hero-content p {

        font-size: 13px;

    }



    .service-img {

        max-width: 100%;

    }



    .cover-background.ipad-top-space-margin {

        margin-top: 10px !important;

        padding-top: 10px !important;

    }



    .border-start {

        border-left: 2px solid #073763 !important;

        padding-left: 10px !important;

    }



    /* ===============================

    Contact Banner Mobile Fix

    ================================ */

    .contact-hero {

        padding: 50px 20px;

        text-align: center;

    }



    .hero-main-title {

        font-size: 24px;

        color: #073763;

        text-align: center;

    }



    .hero-right {

        border-left: none;

        padding-left: 0;

    }



    .hero-right p {

        font-size: 14px;

    }



    .hours-box {

        width: 100%;

    }



    .contact-map {

        width: 100%;

        margin-top: 20px;

    }



    .contact-map iframe {

        width: 100%;

        height: 300px;

    }



    .contact-form-col,

    .contact-card-hours {

        width: 100%;

    }



    .contact-card,

    .contact-form,

    .form-control {

        width: 100%;

    }



    /* .partners-track {

        animation: scroll 10s linear infinite;

        gap: 30px;

    } */



    .partners-track img {

        width: 90px;

    }



    /* Address / Location */

    .address-card {

        width: 100%;

        padding: 20px 10px;

        text-align: left;

    }



    .tech-card {

        padding: 20px;

    }



    .container {

        padding-left: 15px;

        padding-right: 15px;

    }



    .hero-slide-container {

        display: flex;

        width: 100%;

        transition: transform 0.8s ease;

        will-change: transform;

        touch-action: pan-y;

    }



    .hero-slide {

        min-width: 100%;

        height: 100%;

    }



    /* .hero-slide img {

        width: 100%;

        height: 320px;


    } */



    .service-card {

        text-align: center;

    }



    .service-icon {

        font-size: 28px;

    }



    .service-card h5 {

        font-size: 16px;

    }



    .service-card p {

        font-size: 13px;

    }



    /* TECH CARDS */

    .tech-icon i {

        font-size: 30px;

    }



    .tech-card h5 {

        font-size: 16px;

    }



    .tech-card p {

        font-size: 13px;

    }



    /* CTA */

    .cta-section h2 {

        font-size: 22px;

    }



    .cta-section p {

        font-size: 13px;

    }



    .btn-consult {

        padding: 10px 22px;

        font-size: 14px;

    }



    .hero-multi-content {

        flex-direction: row;

        gap: 5px;

        padding: 0 0px 0px 0px;



    }



    /* Headings */

    .services-container h1 {

        font-size: 22px;

        /* smaller font on mobile */

        margin-bottom: 5px;

    }



    /* Subtitle */

    .services-container .subtitle,

    .hero-content p {

        font-size: 14px;

        /* smaller for readability */

        line-height: 1.4;

        text-align: center;

    }



    /* List items */

    .services-list li {

        font-size: 11px;

        margin-bottom: 5px;

        text-align: left;

        /* optional: keep left-aligned for readability */

    }



    .services-list li strong {

        font-size: 12px;

        /* smaller font for mobile */

    }



    .grid-4 {

        grid-template-columns: 1fr;

    }





    /* ===============================

    WHY US (MOBILE)

    ================================ */

    .grid-4 h5 {

        font-size: 16px;

        font-weight: 600;

        color: #073763;

        margin-bottom: 6px;

    }



    .grid-4 p {

        font-size: 13px;

        line-height: 1.5;

        color: #073763;

    }



    /* ===============================

    ABOUT COMPANY (MOBILE)

    ================================ */

    .about-company .row {

        flex-direction: column;

        text-align: center;

    }



    .about-img {

        margin-bottom: 20px;

    }



    .about-text {

        text-align: center;

    }





    /* ===============================

    OUR APPROACH (MOBILE)

    ================================ */

    /* STACK VERTICALLY */

    .process-timeline {

        flex-direction: column;

        gap: 25px;

        align-items: center;

    }



    /* REMOVE LINE */

    .process-timeline::before {

        display: none;

    }



    /* CARD STYLE */

    .process-step {

        width: 100%;

        max-width: 320px;

        background: #ffffff;

        padding: 15px;



    }



    /* TEXT SIZE MOBILE */

    .process-step h5 {

        font-size: 16px;

    }



    .process-step p {

        font-size: 13px;

    }



    /* CIRCLE SMALL ADJUST */

    .process-circle {

        width: 28px;

        height: 28px;

        font-size: 11px;

    }



    .hero-wrapper,

    .hero-flex-slide {

        flex-direction: column;

        justify-content: center;

        text-align: center;

        gap: 20px;

        padding: 20px 10px;

    }





}