/* main.css */
:root {
    --container: 1200px;
    --accent: #ff6b3d;
    --muted: #6b7280;
    --dark: #0b2040;
    --bg: #fff8f6;
    --radius: 12px;
}

/* Reset & base */
* {
    box-sizing: border-box;
    margin: 0;
    padding: 0
}

html,
body {
    height: 100%;
    overflow-x: hidden !important;
}

body {
    font-family: "DM Sans", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial;
    color: var(--dark);
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    line-height: 1.45;
}

/* Heading Underline */

.heading-underline {
    position: relative;
    display: inline-block;
    padding-bottom: 8px;
}

.heading-underline::after {
    content: "";
    position: absolute;
    left: 50%;
    bottom: 0;
    transform: translateX(-50%);
    width: 90%;
    height: 2px;
    background: linear-gradient(90deg,
            #00000000,
            #EC6930,
            #00000000);
}

/* Container */
.container {
    max-width: var(--container);
    margin: 0 auto;
    padding: 0 20px;
}

/* Typography sizes */
h1 {
    font-size: 40px;
    line-height: 1.05;
    font-weight: 700
}

h2 {
    font-size: 30px;
    line-height: 1.2;
    font-weight: 700;
    color: #012970;
}

h3 {
    font-size: 20px;
    line-height: 1.25;
    font-weight: 600
}

p {
    font-size: 16px;
    line-height: 1.6;
    font-weight: 400;
    color: var(--muted)
}

span {
    font-size: 17px
}

/* ===============================
   COOKIE CONSENT - SITE MATCH
================================ */

/* Main popup */
.cc-window {
    background: linear-gradient(135deg, #0b1b32, #0f2a4a) !important;
    border-radius: 16px !important;
    padding: 22px !important;
    max-width: 420px !important;
}

/* Text */
.cc-message {
    font-size: 14px !important;
    line-height: 1.7 !important;
    color: #e5e7eb !important;
    margin-bottom: 18px !important;
}

/* Privacy link */
.cc-link {
    color: #fb923c !important;
    font-weight: 500 !important;
    text-decoration: underline !important;
}

/* Buttons container */
.cc-compliance {
    display: flex !important;
    gap: 12px !important;
}

/* Reject button */
.cc-deny {
    background: transparent !important;
    border: 1px solid #94a3b8 !important;
    color: #ffffff !important;
    border-radius: 10px !important;
    padding: 10px 18px !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    transition: all 0.3s ease !important;
}

.cc-deny:hover {
    background: rgba(255, 255, 255, 0.08) !important;
}

/* Accept button */
.cc-allow {
    background: #EC6930 !important;
    border-radius: 10px !important;
    padding: 10px 20px !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    color: #ffffff !important;
    transition: all 0.3s ease !important;
}

.cc-allow:hover {
    background: linear-gradient(135deg, #ea580c, #f97316) !important;
    transform: translateY(-1px) !important;
}

@media (max-width: 480px) {

    .cc-revoke,
    .cc-revoke.cc-bottom,
    .cc-revoke.cc-right {
        display: none !important;
    }

    .cc-window {
        margin-inline: 10px;
    }
}

/* NAVBAR */
.navbar {
    width: 100%;
    height: 90px;
    background: #fff;
    padding: 12px 0;
    top: 0;
    z-index: 1000;
    border-bottom: 0;
    position: sticky;
    display: flex;
    justify-content: center;
    align-items: center;
}

.navbar::after {
    content: "";
    position: absolute;
    left: 50%;
    bottom: 0;
    transform: translateX(-50%);
    width: 90%;
    max-width: 1600px;
    height: 1.5px;
    background: linear-gradient(90deg, #00000000, #EC6930, #00000000);
}

.nav-container {
    width: 100%;
    max-width: 1600px;
    margin: 0 auto;
    padding: 0 5%;
    display: flex;
    justify-content: space-between;
    align-items: center;
    position: relative;
}

.nav-left {
    display: flex;
    align-items: center;
    gap: 0px;
    z-index: 1001;
    flex-shrink: 0;
    text-decoration: none;
}

.nav-logo {
    height: 58px;
    flex-shrink: 0;
}

.company-name {
    font-weight: 700;
    font-size: 26px;
    color: #012970;
    white-space: nowrap;
    margin-left: 5px;
    letter-spacing: 0.5px;
}

/* MOBILE MENU BUTTON */
.mobile-menu-btn {
    display: none;
    flex-direction: column;
    justify-content: space-between;
    width: 30px;
    height: 21px;
    background: transparent;
    border: none;
    cursor: pointer;
    padding: 0;
    z-index: 1002;
    flex-shrink: 0;
}

.mobile-menu-btn span {
    display: block;
    height: 3px;
    width: 100%;
    background: #012970;
    border-radius: 3px;
    transition: all 0.3s ease;
}

.mobile-menu-btn.active span:nth-child(1) {
    transform: translateY(9px) rotate(45deg);
}

.mobile-menu-btn.active span:nth-child(2) {
    opacity: 0;
}

.mobile-menu-btn.active span:nth-child(3) {
    transform: translateY(-9px) rotate(-45deg);
}

/* DESKTOP NAV MENU */
.nav-menu {
    display: flex;
    gap: 35px;
    list-style: none;
    align-items: center;
    margin: 0;
    padding: 0;
    flex-wrap: nowrap;
}

.nav-item {
    position: relative;
    flex-shrink: 0;
}

.nav-link {
    font-size: 16px;
    font-weight: 600;
    color: #012970;
    cursor: pointer;
    display: flex;
    align-items: center;
    white-space: nowrap;
    position: relative;
    transition: all 0.3s ease;
    text-decoration: none;
    border: none;
    padding: 5px 0;
}

/* Active/Current Page Styles - Desktop */
.nav-item.active>.nav-link {
    background: linear-gradient(90deg, #EC6930, #012970);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.nav-item.active>.nav-link::after {
    width: 100%;
}

.nav-item.active>.nav-link .dropdown-arrow {
    color: #012970;
    -webkit-text-fill-color: #012970;
}

.nav-link:hover {
    background: linear-gradient(90deg, #EC6930, #012970);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    text-decoration: none;
}

.nav-link::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 0%;
    height: 2px;
    background: linear-gradient(90deg, #EC6930, #012970);
    transition: width 0.3s ease;
}

.nav-link:hover::after {
    width: 100%;
}

.nav-link .dropdown-arrow {
    color: #012970;
    -webkit-text-fill-color: initial;
}

.nav-link:hover .dropdown-arrow {
    color: #012970;
    -webkit-text-fill-color: #012970;
}

.dropdown-arrow {
    font-size: 12px;
    margin-left: 6px;
    transition: transform 0.3s ease;
}

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

/* MEGA MENU - DESKTOP */
.mega-menu {
    position: absolute;
    left: 100%;
    transform: translateX(-50%) translateY(10px);
    top: 100%;
    margin-top: 10px;
    background: #DBF3FE;
    padding: 30px 35px;
    display: flex;
    gap: 0;
    border-radius: 12px;
    border: 1px solid #012970;
    opacity: 0;
    visibility: hidden;
    transition: 0.25s ease;
    min-width: 800px;
    white-space: normal;
    z-index: 999;
    box-shadow: 0 10px 30px rgba(1, 41, 112, 0.15);
    width: max-content;
    max-width: 1000px;
}

.nav-item:hover .mega-menu {
    opacity: 1;
    visibility: visible;
    /* transform: translateX(-50%) translateY(0); */
}

.mega-column-wrapper {
    display: flex;
    align-items: stretch;
    gap: 0;
    flex: 1 1 auto;
    min-width: 0;
}

.mega-column {
    display: flex;
    flex-direction: column;
    gap: 10px;
    flex: 1 1 0;
    min-width: 180px;
    max-width: 250px;
    padding: 0 25px;
    white-space: normal;
}

.mega-column:first-child {
    padding-left: 0;
}

.mega-column:last-child {
    padding-right: 0;
}

.mega-heading {
    font-size: 13px;
    font-weight: 700;
    color: #012970;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-bottom: 8px;
    padding-bottom: 8px;
    white-space: nowrap;
    overflow: visible;
    line-height: 1.3;
    display: flex;
    align-items: center;
}

.mega-items {
    display: flex;
    flex-direction: column;
    color: #012970;
    gap: 8px;
    width: 100%;
}

.mega-item {
    display: flex;
    align-items: center;
    gap: 1px;
    padding: 6px 0;
    color: #0c2c55;
    text-decoration: none;
    transition: all 0.2s ease;
    white-space: nowrap;
    line-height: 1.4;
}

.mega-item:hover {
    color: #ff7b2c;
}

/* Active dropdown item - Desktop */
.mega-item.active {
    color: #EC6930;
    font-weight: 600;
}

.mega-item.active .arrow {
    color: #EC6930;
}

.item-text {
    font-size: 14px;
    font-weight: 500;
    white-space: nowrap;
    line-height: 1.5;
    flex: 1;
}

.arrow {
    font-size: 14px;
    color: #1d4774;
    flex-shrink: 0;
    min-width: 12px;
    text-align: center;
}

.mega-item:hover .arrow {
    color: #ff7b2c;
    transform: translateX(2px);
}

/* DIVIDER - CENTERED */
.mega-divider {
    width: 1px;
    align-self: stretch;
    background: linear-gradient(to bottom,
            rgba(1, 41, 112, 0),
            rgba(1, 41, 112, 0.25) 20%,
            rgba(1, 41, 112, 0.25) 80%,
            rgba(1, 41, 112, 0));
    opacity: 0.8;
    flex-shrink: 0;
    margin: 0 20px 0 20px;
}

.hero-btn {
    background: #EC6930;
    padding: 10px 18px;
    border-radius: 6px;
    color: #fff;
    font-weight: 600;
    transition: 0.2s ease;
    white-space: nowrap;
    text-decoration: none;
    border: none;
    z-index: 1;
    display: inline-block;
    cursor: pointer;
}

.hero-btn:hover {
    opacity: 0.85;
    text-decoration: none;
    background-color: #012970;
}

/* Dropdown Icon Image Styles */
.dropdown-icon-img {
    width: 20px;
    height: 20px;
    object-fit: contain;
    margin-right: 10px;
    flex-shrink: 0;
    transition: all 0.2s ease;
}

.mega-heading .dropdown-icon-img {
    width: 22px;
    height: 22px;
    margin-right: 12px;
    vertical-align: middle;
}

.mega-item .dropdown-icon-img {
    align-self: flex-start;
    margin-top: 0px;
}

.mega-item:hover .dropdown-icon-img {
    transform: translateX(2px);
    opacity: 0.8;
}

.mega-item.active .dropdown-icon-img {
    opacity: 1;
}

/* Hide sidebar menu by default, show desktop menu */
.sidebar-menu {
    display: none !important;
}

.desktop-menu {
    display: flex !important;
}

.mobile-menu-header {
    display: none;
}

.mobile-menu-overlay {
    display: none;
}

/* RESPONSIVE STYLES */

/* Extra Large Screens */
@media (min-width: 2560px) {
    .nav-container {
        max-width: 1593px;
    }

    .nav-menu {
        gap: 40px;
    }
}

/* Large Desktop */
@media (max-width: 1600px) {
    .nav-container {
        max-width: 1400px;
    }
}

@media (max-width: 1400px) {
    .nav-menu {
        gap: 34px;
        margin-left: 40px;
    }

    .mega-menu {
        min-width: 750px;
        max-width: 950px;
        padding: 28px 32px;
    }

    .mega-column {
        min-width: 170px;
        max-width: 230px;
    }
}

/* Standard Desktop */
@media (max-width: 1200px) {
    .nav-container {
        max-width: 1100px;
    }

    .nav-menu {
        gap: 20px;
    }

    .nav-link {
        font-size: 15px;
    }

    .mega-menu {
        min-width: 700px;
        max-width: 900px;
        padding: 25px 30px;
    }

    .mega-column {
        min-width: 160px;
        max-width: 210px;
        padding: 0 22px;
    }
}

/* Small Laptop */
@media (max-width: 1040px) {
    .nav-container {
        max-width: 95%;
        padding: 0 2.5%;
    }

    .nav-menu {
        gap: 18px;
        margin-left: 35px;
    }

    .nav-link {
        font-size: 14px;
    }

    .company-name {
        font-size: 20px;
    }

    .hero-btn {
        padding: 8px 15px;
        font-size: 14px;
    }

    .mega-menu {
        min-width: 650px;
        max-width: 800px;
        padding: 22px 28px;
    }

    .mega-column {
        min-width: 150px;
        max-width: 190px;
        gap: 9px;
        padding: 0 20px;
    }

    .mega-heading {
        font-size: 12px;
        margin-bottom: 6px;
    }

    .item-text {
        font-size: 13px;
    }
}

/* Below 990px - SIDEBAR MENU ACTIVATED */
@media (max-width: 989px) {
    .nav-link:hover {
        background: none;
        -webkit-background-clip: border-box;
        -webkit-text-fill-color: initial;
        color: inherit;
        /* original color maintain karega */
    }

    /* Hide desktop menu */
    .desktop-menu {
        display: none !important;
    }

    /* Show hamburger button */
    .mobile-menu-btn {
        display: flex;
    }

    /* Sidebar Menu Styles */
    .sidebar-menu {
        display: flex !important;
        position: fixed;
        top: 0;
        right: -100%;
        width: 100%;
        max-width: 100vw;
        height: 100vh;
        background: #fff;
        flex-direction: column;
        align-items: stretch;
        padding: 0;
        gap: 0;
        overflow-x: hidden;
        overflow-y: auto;
        -webkit-overflow-scrolling: touch;
        box-shadow: -5px 0 20px rgba(0, 0, 0, 0.15);
        transition: right 0.3s ease-in-out;
        z-index: 1001;
        margin: 0;
        list-style: none;
    }

    .sidebar-menu.active {
        right: 0;
    }

    /* Mobile Menu Header */
    .mobile-menu-header {
        display: block;
        width: 100%;
        padding: 0;
        border-bottom: 2px solid #EC6930;
        margin-bottom: 10px;
        position: sticky;
        top: 0;
        background: white;
        z-index: 10;
    }

    .mobile-header-content {
        display: flex;
        align-items: center;
        gap: 8px;
        padding: 20px 20px;
        text-decoration: none;
        justify-content: flex-start;
    }

    .mobile-header-logo {
        height: 45px;
        flex-shrink: 0;
    }

    .mobile-header-company-name {
        font-weight: 700;
        font-size: 22px;
        color: #012970;
        white-space: nowrap;
        letter-spacing: 0.5px;
    }

    .sidebar-menu.active .mobile-header-company-name::after {
        content: " Technologies";
        font-weight: 700;
        font-size: 22px;
        color: #012970;
        white-space: nowrap;
        letter-spacing: 0.5px;
    }

    /* Sidebar Navigation Items */
    .sidebar-menu .nav-item {
        width: 100%;
        padding: 0;
        border-bottom: 1px solid #f0f0f0;
        flex-shrink: 0;
        position: relative;
    }

    .sidebar-menu .nav-item:last-child {
        border-bottom: none;
    }

    .sidebar-menu .nav-link {
        font-size: 16px;
        width: 100%;
        justify-content: space-between;
        padding: 18px 25px;
        font-weight: 600;
        color: #012970 !important;
        background: transparent;
        transition: all 0.3s ease;
        display: flex;
        align-items: center;
    }

    .sidebar-menu .nav-link::after {
        display: none;
    }

    .sidebar-menu .nav-item.active>.nav-link {
        background: linear-gradient(90deg, #EC6930, #012970);
        /* -webkit-background-clip: text;
        -webkit-text-fill-color: transparent; */
        font-weight: 700;
    }

    .sidebar-menu .nav-item.active {
        background: linear-gradient(to right, rgba(236, 105, 48, 0.05), transparent);
        border-left: 3px solid #EC6930;
    }

    .sidebar-menu .nav-item.active>.nav-link .dropdown-arrow {
        color: #EC6930;
        -webkit-text-fill-color: #EC6930;
    }

    /* .sidebar-menu .nav-link:hover {
        background: transparent;
        color: #000;
        /* -webkit-background-clip: text;
        -webkit-text-fill-color: transparent; 
        text-decoration: none;
   } */

    .sidebar-menu .nav-item.has-dropdown .nav-link {
        pointer-events: auto;
        cursor: pointer;
    }

    .sidebar-menu .dropdown-arrow {
        pointer-events: none;
        font-size: 14px;
        transition: transform 0.3s ease;
        color: #012970;
    }

    /* Sidebar Mega Menu */
    .sidebar-menu .mega-menu {
        position: static;
        min-width: 100%;
        max-width: 100%;
        flex-direction: column;
        gap: 0;
        white-space: normal;
        padding: 0;
        border: none;
        background: #f8f9fa;
        border-radius: 0;
        opacity: 1;
        visibility: visible;
        transform: none;
        display: none;
        margin: 0;
        box-shadow: none;
        max-height: 0;
        overflow: hidden;
        transition: max-height 0.3s ease-in-out;
    }

    .sidebar-menu .mega-menu.active {
        display: block;
        max-height: 2000px;
        padding: 15px 0;
    }

    .sidebar-menu .nav-item.has-dropdown:hover .mega-menu {
        display: none;
    }

    .sidebar-menu .nav-item.has-dropdown .mega-menu.active {
        display: block;
    }

    .sidebar-menu .mega-column-wrapper {
        flex-direction: column;
        gap: 0;
        width: 100%;
    }

    .sidebar-menu .mega-column {
        min-width: 100%;
        max-width: 100%;
        white-space: normal;
        width: 100%;
        gap: 0;
        padding: 0 25px;
    }

    .sidebar-menu .mega-column:first-child {
        padding-inline: 25px;
    }

    .sidebar-menu .mega-column:last-child {
        padding-inline: 25px;
    }

    .sidebar-menu .mega-heading {
        font-size: 12px;
        font-weight: 700;
        color: #EC6930;
        margin-top: 15px;
        margin-bottom: 10px;
        padding-left: 0;
        padding-bottom: 0;
        text-transform: uppercase;
        letter-spacing: 0.8px;
        line-height: 1.4;
        white-space: normal;
        display: flex;
        align-items: center;
    }

    .sidebar-menu .mega-heading:first-child {
        margin-top: 8px;
    }

    .sidebar-menu .mega-items {
        gap: 0;
        width: 100%;
    }

    .sidebar-menu .mega-item {
        padding: 14px 15px;
        background: #ffffff;
        border-radius: 8px;
        margin: 0 0 8px 0;
        white-space: normal;
        border: 1px solid #e5e5e5;
        width: 100%;
        box-sizing: border-box;
        transition: all 0.2s ease;
        display: flex;
        align-items: center;
        gap: 10px;
        word-wrap: break-word;
        line-height: 1.5;
    }

    .sidebar-menu .mega-item:last-child {
        margin-bottom: 10px;
    }

    .sidebar-menu .mega-item:hover {
        background: #f0f7ff;
        border-color: #EC6930;
        transform: translateX(3px);
    }

    .sidebar-menu .mega-item.active {
        background: linear-gradient(to right, #DBF3FE, #f0f7ff);
        border-color: #EC6930;
        border-left: 3px solid #EC6930;
        color: #EC6930;
        font-weight: 600;
    }

    .sidebar-menu .mega-item.active .arrow {
        color: #EC6930;
    }

    .sidebar-menu .mega-item.active .item-text {
        color: #EC6930;
        font-weight: 600;
    }

    .sidebar-menu .mega-item.active .dropdown-icon-img {
        opacity: 1;
    }

    .sidebar-menu .item-text {
        white-space: normal;
        word-wrap: break-word;
        line-height: 1.6;
        color: #012970;
        font-size: 14px;
    }

    .sidebar-menu .arrow {
        align-self: flex-start;
        margin-top: 3px;
        font-size: 16px;
        color: #1d4774;
    }

    .sidebar-menu .mega-item:hover .arrow {
        color: #EC6930;
    }

    .sidebar-menu .mega-divider {
        display: none;
    }

    .sidebar-menu .hero-btn {
        margin: 12px 5%;
        width: 90%;
        text-align: center;
    }

    /* Dropdown icon images in sidebar */
    .sidebar-menu .dropdown-icon-img {
        width: 22px;
        height: 22px;
        margin-right: 12px;
    }

    .sidebar-menu .mega-heading .dropdown-icon-img {
        width: 20px;
        height: 20px;
        margin-right: 10px;
    }

    .sidebar-menu .mega-item .dropdown-icon-img {
        width: 22px;
        height: 22px;
        margin-top: 1px;
    }

    .sidebar-menu .mega-item:hover .dropdown-icon-img {
        transform: translateX(2px);
        opacity: 0.8;
    }

    /* Mobile Menu Overlay */
    .mobile-menu-overlay {
        display: block;
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background: rgba(0, 0, 0, 0.6);
        opacity: 0;
        visibility: hidden;
        transition: all 0.3s ease;
        z-index: 999;
    }

    .mobile-menu-overlay.active {
        opacity: 1;
        visibility: visible;
    }

    /* Navbar adjustments */
    .navbar {
        height: 70px;
    }

    .nav-container {
        padding: 0 4%;
    }

    .company-name {
        font-size: 22px;
    }

    .company-name::after {
        content: " Technologies";
        font-weight: 700;
        font-size: 22px;
        color: #012970;
    }

    .nav-logo {
        height: 48px;
    }

}

/* Small Mobile Devices */
@media (max-width: 480px) {
    .mobile-header-logo {
        height: 40px;
    }

    .mobile-header-company-name {
        font-size: 20px;
    }

    .mobile-header-content {
        padding: 18px 20px;
    }

    .navbar {
        height: 65px;
        padding: 10px 0;
    }

    .nav-container {
        padding: 0 3%;
    }

    .company-name {
        font-size: 20px;
    }

    .company-name::after {
        font-size: 20px;
    }

    .nav-logo {
        height: 43px;
    }

    .nav-left {
        gap: 2px;
    }

    .mobile-menu-btn {
        width: 26px;
        height: 18px;
    }

    .mobile-menu-btn span {
        height: 2.5px;
    }

    .sidebar-menu .nav-link {
        font-size: 15px;
        padding: 16px 20px;
    }

    .sidebar-menu .mega-menu.active {
        padding: 12px 0;
    }

    .sidebar-menu .mega-column {
        padding: 0 20px;
    }

    .sidebar-menu .mega-heading {
        font-size: 11px;
        margin-top: 12px;
        margin-bottom: 8px;
    }

    .sidebar-menu .mega-item {
        padding: 12px 12px;
        font-size: 14px;
        margin-bottom: 6px;
    }

    .sidebar-menu .item-text {
        font-size: 13px;
    }

    .sidebar-menu .arrow {
        font-size: 14px;
    }

    .sidebar-menu .dropdown-icon-img {
        width: 20px;
        height: 20px;
        margin-right: 10px;
    }

    .sidebar-menu .mega-heading .dropdown-icon-img {
        width: 18px;
        height: 18px;
        margin-right: 8px;
    }

    .sidebar-menu .mega-item .dropdown-icon-img {
        width: 20px;
        height: 20px;
    }
}

/* Very Small Mobile Devices */
@media (max-width: 360px) {
    .mobile-header-logo {
        height: 35px;
    }

    .mobile-header-company-name {
        font-size: 18px;
    }

    .sidebar-menu.active .mobile-header-company-name::after {
        font-size: 18px;
    }

    .mobile-header-content {
        padding: 15px 18px;
    }

    .navbar {
        height: 60px;
    }

    .company-name {
        font-size: 17px;
    }

    .company-name::after {
        font-size: 17px;
    }

    .nav-logo {
        height: 40px;
    }

    .sidebar-menu .nav-link {
        padding: 14px 18px;
        font-size: 14px;
    }

    .sidebar-menu .mega-menu.active {
        padding: 10px 0;
    }

    .sidebar-menu .mega-column {
        padding: 0 18px;
    }

    .sidebar-menu .mega-heading {
        font-size: 10px;
        margin-top: 10px;
        margin-bottom: 7px;
    }

    .sidebar-menu .mega-item {
        padding: 11px 10px;
        font-size: 13px;
        margin-bottom: 5px;
    }

    .sidebar-menu .item-text {
        font-size: 12px;
    }

    .sidebar-menu .arrow {
        font-size: 13px;
    }

    .sidebar-menu .dropdown-icon-img {
        width: 18px;
        height: 18px;
        margin-right: 8px;
    }

    .sidebar-menu .mega-heading .dropdown-icon-img {
        width: 16px;
        height: 16px;
        margin-right: 7px;
    }

    .sidebar-menu .mega-item .dropdown-icon-img {
        width: 18px;
        height: 18px;
    }
}

/* Dropdown Icon Image Styles */
.dropdown-icon-img {
    width: 20px;
    height: 20px;
    object-fit: contain;
    margin-right: 10px;
    flex-shrink: 0;
    transition: all 0.2s ease;
}

/* Icon in mega heading */
.mega-heading .dropdown-icon-img {
    width: 22px;
    height: 22px;
    margin-right: 3px;
    vertical-align: middle;
}

/* Icon in mega item */
.mega-item .dropdown-icon-img {
    align-self: flex-start;
    margin-top: 2px;
}

.mega-item:hover .dropdown-icon-img {
    transform: translateX(2px);
    opacity: 0.8;
}

/* Active item icon */
.mega-item.active .dropdown-icon-img {
    opacity: 1;
}

/* Mobile Responsive */
@media (max-width: 768px) {
    .dropdown-icon-img {
        width: 22px;
        height: 22px;
        margin-right: 12px;
    }

    .mega-heading .dropdown-icon-img {
        width: 20px;
        height: 20px;
        margin-right: 10px;
    }

    .mega-item .dropdown-icon-img {
        width: 22px;
        height: 22px;
        margin-top: 1px;
    }
}

@media (max-width: 480px) {
    .dropdown-icon-img {
        width: 20px;
        height: 20px;
        margin-right: 10px;
    }

    .mega-heading .dropdown-icon-img {
        width: 18px;
        height: 18px;
        margin-right: 8px;
    }

    .mega-item .dropdown-icon-img {
        width: 20px;
        height: 20px;
    }
}

@media (max-width: 360px) {
    .dropdown-icon-img {
        width: 18px;
        height: 18px;
        margin-right: 8px;
    }

    .mega-heading .dropdown-icon-img {
        width: 16px;
        height: 16px;
        margin-right: 7px;
    }

    .mega-item .dropdown-icon-img {
        width: 18px;
        height: 18px;
    }
}

@media (max-width: 768px) {
    .mobile-menu-header {
        display: block;
        width: 100%;
        padding: 0;
        border-bottom: 2px solid #EC6930;
        margin-bottom: 10px;
    }

    .mobile-header-content {
        display: flex;
        align-items: center;
        gap: 8px;
        padding: 20px 25px;
        text-decoration: none;
        justify-content: start;
    }

    .mobile-header-logo {
        height: 45px;
        flex-shrink: 0;
    }

    .mobile-header-company-name {
        font-weight: 700;
        font-size: 22px;
        color: #012970;
        white-space: nowrap;
        letter-spacing: 0.5px;
    }
}

@media (max-width: 480px) {
    .mobile-header-logo {
        height: 40px;
    }

    .mobile-header-company-name {
        font-size: 20px;
    }

    .mobile-header-content {
        padding: 18px 20px;
    }
}

@media (max-width: 360px) {
    .mobile-header-logo {
        height: 35px;
    }

    .mobile-header-company-name {
        font-size: 18px;
    }

    .mobile-header-content {
        padding: 15px 18px;
    }
}

/* --------------------------------------
Hero Section 
-----------------------------------------*/
.hero {
    position: relative;
    min-height: 400px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 80px 20px;
    overflow-x: hidden;
    overflow-y: visible;
    text-align: center;
}


/* Video container */
.hero-video {
    position: absolute;
    top: 51%;
    left: 50%;
    max-width: 100%;
    height: 100%;
    object-fit: cover;
    transform: translate(-50%, -50%);
    z-index: 1;
    pointer-events: none;
}

/* Dark overlay for text readability */
.hero-overlay {
    position: absolute;
    inset: 0;
    z-index: 2;
}

.grad-text {
    position: relative;
    z-index: 99;
    display: inline-block;

    font-size: 64px;
    font-weight: 800;
    cursor: pointer;

    color: transparent;

    --x: 50%;
    --y: 50%;

    background:
        radial-gradient(circle 90px at var(--x) var(--y),
            #EC6930 0%,
            #EC6930 40%,
            rgba(255, 255, 255, 0.1) 81%),
        linear-gradient(90deg,
            rgb(236, 105, 48),
            rgb(1, 41, 112),
            rgb(236, 105, 48));

    background-repeat: no-repeat;
    background-size: 180px 180px, 200% 100%;
    background-position: var(--x) var(--y), right 0;

    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;

    transition: background-position 0.1s ease, --x 0.1s linear, --y 0.1s linear;
}

.hero .container {
    position: relative;
    z-index: 10;
    max-width: 800px;
    max-height: 278px;
    margin: 0 auto;
}

.hero h1 {
    font-weight: 700;
    font-size: 46px;
    color: #1e2a4a;
    line-height: 1.3;
    margin-bottom: 20px;
    z-index: 90;
}

.hero-subheading {
    margin-block: 15px;
    font-size: 19px;
    z-index: 99;
}

.hero h1 .text-highlight {
    color: #e87957;
}

.hero .btn-primary {
    display: inline-block;
    background-color: #EC6930;
    color: #ffffff;
    padding: 14px 32px;
    border-radius: 8px;
    font-size: 1rem;
    font-weight: 500;
    text-decoration: none;
    transition: all 0.3s ease;
    box-shadow: 0 4px 15px rgba(232, 121, 87, 0.3);
}

/* HERO CIRCLE */
.hero {
    position: relative;
    overflow: hidden;
}

.circle.ring {
    width: 450px;
    height: 450px;
    display: block;
    position: relative;
    left: -300px;
    top: -290px;
    z-index: -1;
    pointer-events: none;
}

.union-img {
    position: absolute;
    top: 100%;
    left: -22%;
    transform: translate(-100%, -100%);
    width: 12%;
    height: auto;
    z-index: 0;
    pointer-events: none;
}

.right-circle-ring {
    width: 450px;
    height: 450px;
    display: block;
    position: relative;
    left: 600px;
    top: -800px;
    z-index: -1;
    pointer-events: none;
}

.right-union-img {
    position: absolute;
    top: 40%;
    left: 133%;
    transform: translate(-100%, -100%) rotate(180deg);
    width: 13%;
    height: auto;
    z-index: 0;
    pointer-events: none;
}

.btn {
    display: inline-block;
    padding: 10px 18px;
    border-radius: 10px;
    text-decoration: none;
    font-weight: 600
}

.btn.primary {
    background: var(--accent);
    color: #fff
}

.btn.outline {
    border: 1.5px solid var(--accent);
    color: var(--accent);
    background: transparent
}

@media (max-width: 1900px) {
    .circle.ring {
        width: 450px;
        height: 450px;
        display: block;
        position: relative;
        left: -570px;
        top: -290px;
        z-index: -1;
        pointer-events: none;
    }

    .union-img {
        position: absolute;
        top: 100%;
        left: -56%;
        transform: translate(-100%, -100%);
        width: 12%;
        height: auto;
        z-index: 0;
        pointer-events: none;
    }

    .right-circle-ring {
        width: 450px;
        height: 450px;
        display: block;
        position: relative;
        left: 882px;
        top: -800px;
        z-index: -1;
        pointer-events: none;
    }

    .right-union-img {
        position: absolute;
        top: 40%;
        left: 168%;
        transform: translate(-100%, -100%) rotate(180deg);
        width: 13%;
        height: auto;
        z-index: 0;
        pointer-events: none;
    }
}

@media (max-width: 1630px) {
    .circle.ring {
        width: 450px;
        height: 450px;
        display: block;
        position: relative;
        left: -417px;
        top: -290px;
        z-index: -1;
        pointer-events: none;
    }

    .union-img {
        position: absolute;
        top: 100%;
        left: -37%;
        transform: translate(-100%, -100%);
        width: 12%;
        height: auto;
        z-index: 0;
        pointer-events: none;
    }

    .right-circle-ring {
        width: 450px;
        height: 450px;
        display: block;
        position: relative;
        left: 731px;
        top: -800px;
        z-index: -1;
        pointer-events: none;
    }

    .right-union-img {
        position: absolute;
        top: 40%;
        left: 148%;
        transform: translate(-100%, -100%) rotate(180deg);
        width: 13%;
        height: auto;
        z-index: 0;
        pointer-events: none;
    }
}

@media (max-width: 1530px) {
    .circle.ring {
        width: 450px;
        height: 450px;
        display: block;
        position: relative;
        left: -380px;
        top: -290px;
        z-index: -1;
        pointer-events: none;
    }

    .union-img {
        position: absolute;
        top: 100%;
        left: -32%;
        transform: translate(-100%, -100%);
        width: 12%;
        height: auto;
        z-index: 0;
        pointer-events: none;
    }

    .right-circle-ring {
        width: 450px;
        height: 450px;
        display: block;
        position: relative;
        left: 691px;
        top: -800px;
        z-index: -1;
        pointer-events: none;
    }

    .right-union-img {
        position: absolute;
        top: 40%;
        left: 144%;
        transform: translate(-100%, -100%) rotate(180deg);
        width: 13%;
        height: auto;
        z-index: 0;
        pointer-events: none;
    }
}

@media (max-width: 1444px) {

    .circle.ring {
        width: 450px;
        height: 450px;
        display: block;
        position: relative;
        left: -300px;
        top: -290px;
        z-index: -1;
        pointer-events: none;
    }

    .union-img {
        position: absolute;
        top: 100%;
        left: -22%;
        transform: translate(-100%, -100%);
        width: 12%;
        height: auto;
        z-index: 0;
        pointer-events: none;
    }

    .right-circle-ring {
        width: 450px;
        height: 450px;
        display: block;
        position: relative;
        left: 600px;
        top: -800px;
        z-index: -1;
        pointer-events: none;
    }

    .right-union-img {
        position: absolute;
        top: 40%;
        left: 133%;
        transform: translate(-100%, -100%) rotate(180deg);
        width: 13%;
        height: auto;
        z-index: 0;
        pointer-events: none;
    }
}

@media (max-width: 375px) {
    .hero {
        padding: 30px 12px;
    }

    .hero h1 {
        font-size: 23px;
        padding: 0 2px;
    }

    .hero-subheading {
        font-size: 15px;
        padding: 0 5px;
    }

    .hero .btn-primary {
        padding: 12px 20px;
        font-size: 0.95rem;
        min-width: 130px;
    }

    .circle.ring,
    .right-circle-ring {
        width: 220px;
        height: 220px;
    }

    .right-circle-ring {
        display: none;
    }
}

/* Fix for landscape mode */
@media (max-width: 767px) {
    .hero {
        min-height: 300px;
        padding: 30px 20px;
    }

    .hero h1 {
        font-size: 26px;
        padding: -1 36px;
    }

    .hero-subheading {
        font-size: 15px;
        padding: 0 36px;
    }

    .hero-video {
        height: 100%;
        width: auto;
        /* ✅ Prevents zoom crop on mobile */
        min-width: 100%;
    }
}

/* ============================================
   SERVICES SECTION
============================================ */
.services {
    padding-block: 0px 60px;
    background-color: #ffffff;
    position: relative;
}

.container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 20px;
}

.service-section-bg {
    position: absolute;
    top: 223px;
    left: 95px;
    width: 57%;
    max-width: none;
    z-index: 0;
    pointer-events: none;
}

/* RIGHT CIRCLE IMAGE */
.service-section-bg-2 {
    position: absolute;
    top: 550px;
    right: -140px;
    /* width: 450px; */
    max-width: none;
    z-index: 0;
    pointer-events: none;
}

.services .container {
    position: relative;
    z-index: 1;
}

.section-title {
    font-size: 32px;
    font-weight: 700;
    text-align: center;
    color: #012970;
    display: table;
    margin: 0 auto;
    margin-bottom: 27px;
}

/* ============================================
   SERVICE GRID LAYOUT
============================================ */
.service-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(350px, 1fr));
    gap: 30px;
    justify-content: center;
}

/* ============================================
   INDIVIDUAL CARD STYLES
============================================ */

@property --angle {
    syntax: "<angle>";
    initial-value: 0deg;
    inherits: false;
}

.mobile-card {
    background-color: #ffffff;
    border-radius: 13px;
    overflow: hidden;
    height: 100%;
    display: flex;
    z-index: 1;
    flex-direction: column;
    border: 1px solid rgba(1, 41, 112, 0.2);
    animation: gradientBorder 1s linear infinite;
    background: linear-gradient(to right, #ffffff, #ffffff) content-box,
        conic-gradient(from var(--angle),
            #062A6F 0deg,
            #EC6930 53.3deg,
            #062A6F 90.46deg,
            #EC6930 126.24deg,
            #062A6F 178.82deg,
            #EC6930 360deg) border-box;
}

@keyframes gradientBorder {
    from {
        --angle: 0deg;
    }

    to {
        --angle: 360deg;
    }
}


/* ============================================
   CARD HEADER WITH ICON
============================================ */
.card-header {
    padding: 20px;
    display: flex;
    align-items: center;
    gap: 15px;
    min-height: 120px;
    position: relative;
}

.card-header::after {
    content: "";
    position: absolute;
    left: 50%;
    bottom: 0;
    transform: translateX(-50%);
    width: 90%;
    height: 1.5px;

    background: linear-gradient(90deg,
            #00000000,
            #EC6930,
            #00000000);
}

.card-header img {
    width: 70px;
    height: 70px;
    object-fit: contain;
    padding: 8px;
    flex-shrink: 0;
    background-color: #DBF3FE;
    border: 1px solid rgba(1, 41, 112, 0.2);
    border-radius: 14px;
}

.card-title {
    color: #012970;
    font-size: 24px;
    font-weight: 700;
    line-height: 1.3;
    margin: 0;
}

.card-title::after {
    content: "";
    position: absolute;
    left: 50%;
    bottom: 0;
    transform: translateX(-50%);
    width: 90%;
    height: 1.5px;

    background: linear-gradient(90deg,
            #00000000,
            #EC6930,
            #00000000);
}

/* ============================================
   CARD BODY
============================================ */
.card-body {
    padding: 28px 20px 20px;
    flex-grow: 1;
}

.card-description {
    color: black;
    font-size: 15px;
    text-align: center;
    line-height: 1.6;
    margin-bottom: 16px;
    font-weight: 400;
}

.card-description:last-of-type {
    margin-bottom: 0;
}

/* ============================================
   CARD FOOTER WITH READ MORE BUTTON
============================================ */
.card-footer {
    padding: 0 20px 24px;
    padding-top: 20px;
    margin-top: auto;
    text-align: center;
}

.read-more-btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: white;
    text-decoration: none;
    font-weight: bolder;
    font-size: 15px;
    padding: 5px 5px 5px 15px;
    border-radius: 20px;
    transition: all 0.2s ease;
    background-color: #012970;
}

.card-footer-arrow {
    background-color: white;
    color: #012972;
    padding: 4px 9px;
    border-radius: 50%;
    transition: transform 0.3s ease;
    transform: rotate(-45deg);
}

.read-more-btn:hover {
    background-color: #EC6930;
}


.read-more-btn:hover .card-footer-arrow {
    transform: rotate(0deg);
}

/* Tablet */
@media (max-width: 992px) {
    .service-grid {
        grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
        gap: 25px;
    }

    .services {
        padding: 0px 0;
    }

    .section-title {
        font-size: 28px;
        margin-bottom: 40px;
    }

    .hero .container {
        margin: 0px auto 0;
    }
}

/* Mobile Landscape */
@media (max-width: 768px) {
    .service-grid {
        grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
        gap: 20px;
    }

    .card-header {
        padding: 16px;
        min-height: 110px;
    }

    .card-title {
        font-size: 22px;
    }

    .card-header img {
        width: 45px;
        height: 45px;
    }

    .card-body {
        padding: 24px 16px 16px;
    }

    .card-footer {
        padding: 0 16px 20px;
        padding-top: 16px;
    }
}

/* Mobile Portrait */
@media (max-width: 576px) {
    .service-grid {
        grid-template-columns: 1fr;
        max-width: 400px;
        margin: 0 auto;
    }

    .services {
        padding: 0px 0 0px;
    }

    .section-title {
        font-size: 24px;
        margin-bottom: 30px;
    }

    .section-title::after {
        width: 50px;
        height: 2px;
        bottom: -12px;
    }

    .card-header {
        flex-direction: row;
        align-items: center;
        min-height: 100px;
        gap: 12px;
    }

    .card-title {
        font-size: 20px;
    }

    .card-header img {
        width: 40px;
        height: 40px;
    }

    .card-description {
        font-size: 14px;
    }

    .hero .container {
        margin: 15px auto 0;
    }

    .services .service-section-bg {
        display: none;
    }
}

/* Small Mobile */
@media (max-width: 380px) {
    .card-header {
        padding: 14px;
        min-height: 90px;
    }

    .card-title {
        font-size: 18px;
    }

    .card-header img {
        width: 35px;
        height: 35px;
    }

    .card-body {
        padding: 20px 14px 14px;
    }

    .card-footer {
        padding: 0 14px 16px;
        padding-top: 16px;
    }

    .read-more-btn {
        font-size: 14px;
        padding: 8px 14px;
    }

    .hero .container {
        margin: 0px 0;
        padding: 0;
    }
}

/* ============================================
   DESIGNATION SECTION
============================================ */
.designation-section {
    background-color: #F9F7F3;
    padding-block: 20px;
}

.designation-content-wrapper {
    text-align: center;
    max-width: 800px;
    margin: 0 auto;
}

.designation-icon {
    width: 70px;
    height: 70px;
    object-fit: contain;
    padding: 8px;
    flex-shrink: 0;
    background-color: #DBF3FE;
    border: 1px solid rgba(1, 41, 112, 0.2);
    border-radius: 14px;
}

.designation-heading {
    color: #012970;
    font-size: 24px;
    font-weight: 700;
    line-height: 1.3;
    margin: 0;
}

.designation-description {
    color: #333333;
    font-size: 16px;
    text-align: center;
    line-height: 1.6;
    margin-bottom: 16px;
    font-weight: 400;
}

@media (max-width: 992px) {
    .designation-content-wrapper {
        max-width: 90%;
    }

    .designation-icon {
        width: 60px;
        height: 60px;
        padding: 6px;
        border-radius: 12px;
    }

    .designation-heading {
        font-size: 22px;
    }

    .designation-description {
        font-size: 15px;
    }

    .designation-section {
        margin: 60px 0 50px;
    }
}

/* ✅ MOBILE RESPONSIVE */
@media (max-width: 576px) {
    .designation-content-wrapper {
        max-width: 100%;
        padding: 0 14px;
    }

    .designation-icon {
        width: 52px;
        height: 52px;
        padding: 6px;
        border-radius: 10px;
    }

    .designation-heading {
        font-size: 20px;
        line-height: 1.25;
    }

    .designation-description {
        font-size: 14.5px;
        line-height: 1.55;
        margin-bottom: 12px;
    }
}

/* --------------------------------- 
 ACHIEVEMENTS SECTION
 ----------------------------------*/
.achievements-section {
    padding: 55px 0;
    background-color: #FFF5F0;
    margin-top: 16px;
}

.achievements-header {
    text-align: center;
    margin-bottom: 33px;
}

.achievements-title {
    font-size: 32px;
    font-weight: 700;
    text-align: center;
    color: #012970;
    padding-bottom: 12px;
    position: relative;
    display: table;
    margin: 0 auto;
}

.achievements-title::after {
    content: "";
    position: absolute;
    left: 50%;
    bottom: 0;
    transform: translateX(-50%);
    width: 90%;
    height: 1.5px;

    background: linear-gradient(90deg,
            #00000000,
            #EC6930,
            #00000000);
}


/* GRID */
.achievement-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 30px;
}

/* CARD */
.achievement-card {
    display: flex;
    align-items: center;
    gap: 15px;
}

/* ICON */
.achievement-icon-wrapper {
    width: 80px;
    height: 80px;
    border-radius: 50%;
    background-color: white;
    border: 1px solid #012970;
    display: flex;
    align-items: center;
    justify-content: center;
}

.achievement-icon {
    width: 42px;
    height: 42px;
    object-fit: contain;
}

/* VALUE */
.achievement-value {
    font-size: 32px;
    font-weight: 800;
    color: #EC6930;
    transition: all 0.3s ease;
}

.achievement-value::after {
    content: "+";
    margin-left: 4px;
}

/* CAPTION */
.achievement-caption {
    font-size: 16px;
    color: black;
    line-height: 1.6;
}

/* RESPONSIVE */
@media (max-width: 991px) {
    .achievement-grid {
        grid-template-columns: repeat(2, 1fr);
        padding-inline: 100px;
    }
}

@media (max-width: 575px) {
    .achievement-card {
        display: block;
        text-align: center;
    }

    .achievement-icon-wrapper {
        display: inline-flex;
    }

    .achievement-grid {
        grid-template-columns: repeat(1, 1fr);
    }

    .achievements-title {
        font-size: 28px;
    }
}

/* ---------------------------
 CLIENTS SECTION
 ---------------------------- */
.clients {
    padding: 50px 0;
    background: #fff;
    text-align: center;
}

.clientHeading {
    text-align: center;
    font-size: 32px;
    font-weight: 700;
    margin-bottom: 40px;
    color: #012970;
}

.clientHeading::after {
    content: "";
    position: absolute;
    left: 50%;
    bottom: 0;
    transform: translateX(-50%);
    width: 90%;
    height: 1.5px;
    background: linear-gradient(90deg,
            #00000000,
            #EC6930,
            #00000000);
}

.client-carousel-wrapper {
    position: relative;
    overflow: hidden;
    width: 100%;
}

.client-carousel-track {
    display: flex;
    gap: 24px;
    transition: transform 0.5s ease-in-out;
}

.client-slide {
    min-width: 220px;
    flex-shrink: 0;
}

.client-logo {
    width: 100%;
    height: 100px;
    object-fit: contain;
    padding: 15px;
    background: #F9F7F3;
    border-radius: 12px;
    border: 1px solid rgba(1, 41, 112, 0.2);
    transition: 0.3s ease;
}

.client-dots {
    text-align: center;
    margin-top: 25px;
}

.client-dots span {
    display: inline-block;
    width: 8px;
    height: 8px;
    margin: 0 5px;
    background: #ddd;
    border-radius: 50%;
    cursor: pointer;
    transition: 0.3s;
}

.client-dots span.active {
    background: #ff7a00;
    width: 16px;
    border-radius: 10px;
}

@media (max-width: 768px) {
    .client-slide {
        min-width: 160px;
    }

    .client-logo {
        height: 80px;
    }
}

/* Responsive */
@media (max-width: 1024px) {
    .hero-inner {
        flex-direction: column;
        align-items: flex-start
    }

    .hero-content {
        max-width: 100%
    }

    .services-grid {
        grid-template-columns: repeat(2, 1fr)
    }

    .achievements-row {
        flex-direction: row;
        flex-wrap: wrap
    }

    .achievement-item {
        flex: 1 1 calc(50% - 12px)
    }
}

@media (max-width: 700px) {
    h1 {
        font-size: 28px
    }

    .hero-heading {
        font-size: 28px
    }

    .hero-media img {
        max-width: 100%
    }

    .main-nav {
        display: none
    }

    .services-grid {
        grid-template-columns: 1fr;
        gap: 14px
    }

    .designation-inner {
        flex-direction: column;
        align-items: flex-start
    }

    .achievement-item {
        flex: 1 1 100%
    }

    .clients-carousel {
        padding: 8px 2px
    }

    .client-item {
        min-width: 110px
    }
}

/* ------------------------------
   BREADCRUMB
------------------------------ */
.breadcrumb {
    display: flex;
    align-items: center;
    font-size: 16px;
    color: #EC6930;
    background-color: #FFF5F0;
    padding: 10px 0;
    flex-wrap: wrap;
    max-width: 1500px;
    margin: 10px auto 0;
}

.breadcrumb a {
    color: #EC6930;
    text-decoration: none;
    font-weight: 500;
    font-size: 16px;
    margin-left: 85px;
}


.breadcrumb span:not(:last-child) {
    margin: 0 8px;
}

.breadcrumb span:last-child {
    color: #EC6930;
    font-weight: 500;
}

@media (max-width: 568px) {
    .breadcrumb a {
        margin-left: 20px;
    }
}

/* ----------------------------------------------------
Who We Are
------------------------------------------------ */
/* ------------------------------
   HEADER SECTION
------------------------------ */
.who-header {
    padding: 40px 0 60px;
}

/* Desktop Layout */
.who-header-wrapper {
    display: flex;
    gap: 40px;
    align-items: center;
    justify-content: space-between;
}

.who-header-left,
.who-header-right {
    width: 50%;
}

.hero-heading {
    color: #012970;
}


.hero-description {
    margin-top: 15px;
    font-size: 17px;
    color: black;
}

.who-header-img {
    width: 100%;
    height: auto;
    border-radius: 10px;
    object-fit: cover;
}

/* ✅ Mobile Responsive Fix */
@media (max-width: 900px) {

    .who-header-wrapper {
        display: flex;
        flex-direction: column;
        /* STACK columns */
        text-align: center;
    }

    .who-header-left,
    .who-header-right {
        width: 100%;
    }

    /* Image on top */
    .who-header-right {
        order: 1;
    }

    /* Text below */
    .who-header-left {
        order: 2;
        margin-top: 20px;
    }

    .hero-heading {
        font-size: 28px;
    }

    .hero-description {
        font-size: 16px;
    }
}

/* ------------------------------
   SERVICE SECTION
------------------------------ */
.services-section {
    background: #eaf4ff;
    padding: 30px 0;
}

.services-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 60px;
}

.who-service-card {
    display: flex;
    align-items: center;
    gap: 12px;
}

.service-outer-border {
    background: #012970;
    border-radius: 50%;
    width: 65px;
    height: 65px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.service-border {
    background-color: #012970;
    border-radius: 50%;
    width: 60px;
    height: 60px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 2px solid white;
}

.service-border img {
    height: 30px;
}

@media (max-width: 1024px) {
    .services-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 40px;
    }
}



/* -----------------------------
   MOBILE (max 768px)
------------------------------*/
@media (max-width: 768px) {
    .services-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 30px;
    }

    .service-outer-border {
        width: 55px;
        height: 55px;
    }

    .service-border {
        width: 50px;
        height: 50px;
    }

    .service-border img {
        height: 24px;
    }

    .who-service-card {
        gap: 10px;
    }
}



/* -----------------------------
   SMALL MOBILE (max 480px)
------------------------------*/
@media (max-width: 480px) {
    .services-grid {
        grid-template-columns: repeat(1, 1fr);
        gap: 25px;
    }

    .who-service-card {
        justify-content: flex-start;
    }
}

/* ===== Company Section ===== */
.company-section {
    padding: 47px 0 77px;
    background: #ffffff;
    overflow: hidden;
}

.company-wrapper {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 60px;
}

/* ===== Left Content ===== */
.company-content {
    max-width: 520px;
}

.company-small {
    margin-bottom: 10px;
    position: relative;
    padding-left: 40px;
}

.company-small::before {
    content: "";
    position: absolute;
    left: 0;
    top: 50%;
    width: 30px;
    height: 2px;
    background: #ff7a18;
    transform: translateY(-50%);
}

.company-main {
    color: #012970;
    margin-bottom: 20px;
}

.company-desc {
    font-size: 16px;
    line-height: 1.7;
    color: black;
    margin-bottom: 18px;
}

/* ===== Right Image Section ===== */
.company-right {
    position: relative;
    width: 480px;
    height: 420px;
}

/* Main Image */
.company-img {
    object-fit: cover;
}

.company-img-1 {
    width: 89%;
    height: 100%;
}

/* Decorative Elements */
.company-right::before {
    content: "";
    position: absolute;
    right: -30px;
    top: 40px;
    width: 120px;
    height: 120px;
    background: #ffefe3;
    border-radius: 20px;
    z-index: -1;
}

.company-right::after {
    content: "";
    position: absolute;
    left: -20px;
    bottom: 40px;
    width: 80px;
    height: 80px;
    background: #e9f2ff;
    border-radius: 50%;
    z-index: -1;
}

/* ===== Tablet View ===== */
@media (max-width: 991px) {
    .company-wrapper {
        flex-direction: column-reverse;
        text-align: center;
        gap: 40px;
    }

    .company-content {
        max-width: 100%;
    }

    .company-small {
        padding-left: 0;
    }

    .company-small::before {
        display: none;
    }

    .company-right {
        width: 100%;
        max-width: 420px;
        height: 360px;
    }
}

/* ===== Mobile View ===== */
@media (max-width: 575px) {
    .company-section {
        padding: 60px 0;
    }

    .company-main {
        font-size: 28px;
    }

    .company-desc {
        font-size: 15px;
    }

    .company-right {
        height: 300px;
    }

    .company-right::before,
    .company-right::after {
        display: none;
    }
}

/* -----------------------------
Mission Section
-------------------------------- */
.mission-wrapper {
    text-align: center;
    background: #FFF5F0;
    border: 1px solid #EC6930;
    padding: 23px;
    border-radius: 20px;
    margin-bottom: 30px;
}

.mission-title {
    color: #012970;
    margin-bottom: 30px;
}

.mission-desc {
    color: black;
    margin-bottom: 20px;
    max-width: 750px;
    margin-left: auto;
    margin-right: auto;
    line-height: 1.6;
}

/* -----------------------------
Responsive
-------------------------------- */

/* Tablet (max-width: 900px) */
@media (max-width: 900px) {
    .mission-wrapper {
        padding: 20px;
        margin-bottom: 25px;
        margin-inline: 30px;
    }

    .mission-title {
        font-size: 26px;
    }

    .mission-desc {
        font-size: 13px;
        max-width: 100%;
    }
}

/* Mobile (max-width: 600px) */
@media (max-width: 600px) {
    .mission-wrapper {
        padding: 18px;
        border-radius: 15px;
        margin-inline: 30px;
    }

    .mission-title {
        font-size: 22px;
        margin-bottom: 20px;
    }

    .mission-title::after {
        width: 70%;
    }

    .mission-desc {
        font-size: 14px;
        margin-bottom: 15px;
    }

    .mission-btn {
        width: 100%;
        text-align: center;
        display: inline-block;
        padding: 12px 0;
    }
}

/* ----------------------------------------------
Technology Section
----------------------------------------------- */
.technology-section {
    padding: 37px 0 60px;
    position: relative;
}

/* Existing Layout Styles */
.technology-wrapper {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 50px;
}

/* LEFT SIDE 4 IMAGES GRID */
.tech-images {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 18px;
    position: relative;
}

.tech-img-1 {
    width: 41%;
    height: 100%;
}

/* RIGHT SIDE CONTENT */
.tech-content {
    max-width: 550px;
}

/* TEXT STYLES */
.tech-small {
    font-size: 15px;
    color: #A5A5A5;
    margin-bottom: 8px;
    position: relative;
}

.tech-small::before {
    content: "";
    width: 70px;
    height: 2px;
    background: #EC6930;
    display: inline-block;
    margin-right: 12px;
    vertical-align: baseline;
}

.tech-main {
    font-size: 32px;
    color: #012970;
    margin-bottom: 15px;
}

.tech-desc {
    color: #444;
    line-height: 1.7;
    margin-bottom: 20px;
}

.tech-btn {
    background: #EC6930;
    padding: 12px 26px;
    border-radius: 6px;
    color: #fff;
    display: inline-block;
}

/* -------------------
   RESPONSIVE
---------------------- */
@media (max-width: 900px) {
    .technology-wrapper {
        flex-direction: column;
        text-align: center;
        gap: 35px;
        margin-block: 50px 15px;
    }

    .tech-img {
        width: 160px;
        height: 160px;
    }

    .tech-img-1 {
        width: 48%;
        height: 100%;
    }
}

@media (max-width: 600px) {
    .technology-section {
        padding: 0px 0 23px 0;
    }

    .tech-img {
        width: 140px;
        height: 140px;
    }

    .tech-main {
        font-size: 26px;
    }

    .tech-small::before {
        width: 50px;
    }

    .tech-img-1 {
        width: 80%;
        height: 100%;
    }
}

/* <!-- -------------------------------------------------------------------
   WHY PRINTF TECHNOLOGIES
-------------------------------------------------------------------- --> */

/* Main Section */
.why-section {
    background: #E4F3FF;
    padding: 30px 0;
}

/* Heading */
.why-title {
    text-align: center;
    font-size: 32px;
    color: #012970;
    font-weight: 700;
    margin-bottom: 10px;
    position: relative;
    padding-bottom: 10px;
}

.why-title::after {
    content: "";
    position: absolute;
    left: 50%;
    bottom: 0;
    transform: translateX(-50%);
    width: 30%;
    height: 2px;
    background: linear-gradient(90deg,
            #00000000,
            #EC6930,
            #00000000);
}

/* Sub Heading */
.why-subtitle {
    text-align: center;
    font-size: 16px;
    color: #6d7893;
    margin-bottom: 40px;
}

/* Grid Layout */
.why-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 21px 65px;
}

/* Each Item */
.why-item {
    display: flex;
    align-items: center;
    gap: 12px;
}

/* Icon Style */
.check-icon {
    width: 28px;
    height: 28px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 16px;
    color: #0056A6;
    border: 2px solid #0056A6;
    border-radius: 50%;
    margin-top: 4px;
}

/* Text Part */
.why-item p {
    font-size: 16px;
    line-height: 1.6;
    color: black;
    margin: 0;
}

/* Responsive */
@media (max-width: 768px) {
    .why-grid {
        grid-template-columns: 1fr;
        gap: 20px;
    }

    .why-title {
        font-size: 26px;
    }
}

/* ----------- Process Section ----------- */
.process-section {
    padding: 60px 0;
    background: #ffffff;
    text-align: center;
}

.process-title {
    font-size: 30px;
    font-weight: 700;
    margin-top: 40px;
    color: #012970;
}


.process-img {
    width: 100%;
    max-width: 1100px;
    display: block;
    margin: 0 auto;
}

/* ----------- Trusted Section ----------- */
.trusted-section {
    padding: 30px 0;
    text-align: center;
    background: #fff7f2;
}

.trusted-title {
    font-size: 28px;
    font-weight: 700;
    color: #012970;
    margin-bottom: 35px;
}


.trusted-img {
    width: 100%;
    max-width: 820px;
    display: block;
    margin: 0 auto;
}

/* ----------- Responsive ----------- */
@media (max-width: 768px) {

    .process-title,
    .trusted-title {
        font-size: 24px;
    }

    .process-img,
    .trusted-img {
        max-width: 100%;
    }
}

/* <!-- ---------------------------------------------------
        HOW WE WORKS Page
    ----------------------------------------------------- --> */
/* SECTION WRAPPER */
.works-section {
    padding: 60px 0 30px;
}

/* GRID LAYOUT (LEFT TEXT — RIGHT IMAGE) */
.works-container {
    display: grid;
    grid-template-columns: 2fr 1fr;
    align-items: center;
    gap: 40px;
}

/* HEADING */
.works-heading {
    font-size: 34px;
    font-weight: 700;
    color: #012970;
    margin-bottom: 30px;
}

/* LEFT SIDE BLOCKLIST GRID */
.works-items-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 25px 11px;
}

/* SINGLE ITEM */
.works-item {
    display: flex;
    align-items: center;
    font-size: 16px;
    color: #1c1c1c;
    font-weight: 500;
    gap: 10px;
}

/* ICON BOX */
.icon-box {
    background: #DBF3FE;
    width: 65px;
    height: 65px;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid gray;
}

.icon-box img {
    width: 36px;
    height: 36px;
    object-fit: contain;
}

/* MAIN RIGHT IMAGE */
.works-main-img {
    width: 100%;
    height: auto;
}

.works-item p {
    color: black;
    font-weight: 500;
}



/* --------------------------------
      RESPONSIVE CHANGES
--------------------------------- */

/* Tablet – IMAGE FIRST (works-right) & works-left BELOW */
@media (max-width: 991px) {

    /* reverse order */
    .works-container {
        grid-template-columns: 1fr;
        text-align: center;
    }

    .works-right {
        order: -1;
        /* image first */
    }

    .works-left {
        order: 2;
        /* text below */
    }

    .works-items-grid {
        grid-template-columns: repeat(2, 1fr);
        margin-inline: 80px;
        /* more balanced */
    }

    .works-main-img {
        width: 70%;
        margin: 0 auto;
        display: block;
    }
}

/* Mobile */
@media (max-width: 576px) {
    .works-heading {
        font-size: 20px;
    }

    .works-items-grid {
        grid-template-columns: 1fr !important;
        margin-inline: 0;
    }

    .icon-box {
        margin: 0 auto 2px;
    }

    .works-item {
        text-align: center;
        justify-content: center;
        flex-direction: column;
    }
}

/* <!-- ----------------------------------
         Printf Work Tabs
-------------------------------------- --> */
.printf-container {
    display: flex;
    margin-block: 60px;
    gap: 40px;
    align-items: center;
    justify-content: center;
}

.printf-tab-buttons {
    display: flex;
    gap: 15px;
    margin-block: 17px;
}

.printf-heading {
    color: #012970;
}

.tab-btn {
    background: none;
    border: none;
    font-weight: 700;
    font-size: 16px;
}

.tab-description {
    color: black;
}

.tab-title {
    color: #012970;
}

.tab-btn.active {
    background: #003f8c;
    color: #EC6930;
    border-color: #003f8c;
    padding: 10px 25px;
    border-radius: 8px;
    border: 1px solid #ddd;
    background: #012970;
    font-size: 16px;
    font-weight: 600;
    cursor: pointer;
    transition: 0.25s;
}

.printf-tab-contents .tab-content {
    display: none;
    animation: fadeIn 0.3s ease;
}

.printf-tab-contents .tab-content.active {
    display: block;
}

.tab-desc p {
    margin: 10px 0;
    line-height: 1.6;
}

.tab-desc h4 {
    margin-top: 15px;
    font-size: 18px;
    font-weight: 600;
}

@keyframes fadeIn {
    from {
        opacity: 0;
        transform: translateY(8px);
    }

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

/* ------------ RESPONSIVE ------------- */
@media (max-width: 768px) {
    .printf-container {
        display: block;
        margin-block: 50px;
    }

    .printf-left {
        display: flex;
        align-items: center;
        justify-content: center;
        margin-bottom: 30px;
        width: 90%;
    }

    .printf-img {
        width: 100%;
    }

    .printf-right {
        text-align: center;
    }

    .tab-desc {
        text-align: left;
    }

    .printf-heading {
        text-align: center;
        font-size: 24px;
    }

    .printf-tab-buttons {
        flex-wrap: wrap;
    }

    .tab-btn {
        flex: 1;
        text-align: center;
    }
}

.howwe-section {
    padding: 14px 0 70px;
    text-align: center;
}

.howwe-title {
    text-align: center;
    font-size: 32px;
    font-weight: 700;
    color: #003366;
    position: relative;
    margin-bottom: 40px;
}

.howwe-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 25px;
}

.howwe-card {
    border: 1px solid #d7d7d7;
    border-radius: 12px;
    overflow: hidden;
    background: #FFF5F0;
}

.howwe-card-header {
    background: #002d72;
    padding: 20px;
    text-align: center;
    border-radius: 12px 12px 0 0;
}

.howwe-card-header h4 {
    color: #fff;
    margin: 0;
    font-size: 18px;
    font-weight: 700;
}

.howwe-card-body {
    padding: 22px;
    text-align: center;
}

.howwe-card-body p {
    color: black;
    font-size: 17px;
}


/* Large Tablets & Small Laptops (max 1200px) */
@media (max-width: 1200px) {
    .howwe-grid {
        grid-template-columns: repeat(3, 1fr);
    }
}

/* Tablets (max 992px) */
@media (max-width: 992px) {
    .howwe-title {
        font-size: 28px;
    }

    .howwe-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 20px;
    }
}

/* Mobile (max 768px) */
@media (max-width: 768px) {
    .howwe-section {
        padding: 40px 0 70px;
    }

    .howwe-title {
        font-size: 26px;
        margin-bottom: 30px;
    }

    .howwe-grid {
        grid-template-columns: repeat(1, 1fr);
        gap: 18px;
    }

    .howwe-card-header h4 {
        font-size: 17px;
    }

    .howwe-card-body p {
        font-size: 16px;
    }
}

/* Small Mobile (max 480px) */
@media (max-width: 480px) {
    .howwe-title {
        font-size: 24px;
    }

    .howwe-card-body {
        padding: 18px;
    }

    .howwe-card-body p {
        font-size: 15px;
    }
}

/* ----------------------------------------------------
    Career
------------------------------------------------------- */
.openings-wrapper {
    text-align: center;
    margin-block: 30px
}

.opening-box {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 40px;
    margin-block: 30px 70px;
}

.opening-info {
    width: 90%;
    text-align: left;
    margin-top: 20px;
}

.opening-topic {
    margin-block: 10px;
    font-weight: 700;
    color: #012970;
    font-size: 24px;
}

.openings-Number {
    color: #EC6930;
    font-size: 30px;
    font-weight: 700;
}

.openings-Qualification {
    color: #012970;
    font-weight: 700;
    font-size: 17px;
}

.openings-Skills {
    margin-block: 10px;
    color: black;
}

.opening-description {
    color: black;
}

.opening-image {
    width: 80%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.opening-image img {
    width: 62%;
    height: 70%;
    object-fit: cover;
}

.openings-small::before {
    content: "";
    width: 70px;
    height: 2px;
    background: #EC6930;
    display: inline-block;
    margin-right: 12px;
    vertical-align: baseline;
}

/* Responsive Layout */
@media (max-width: 900px) {
    .opening-box {
        display: flex;
        flex-direction: column-reverse;
        align-items: center;
        text-align: center;
        gap: 0px;
    }

    .opening-info {
        width: 100%;
        text-align: center;
        margin-top: 20px;
    }

    .opening-image img {
        width: 80%;
        margin-bottom: 20px;
    }
}

/* Internship */
.internship-section {
    padding: 44px 0 70px;
    ;
}

.internship-wrapper {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 60px;
}

/* LEFT image */
.internship-left {
    width: 50%;
}

.internship-image {
    width: 100%;
    max-width: 450px;
    display: block;
}

/* RIGHT side content */
.internship-right {
    width: 50%;
}

.internship-small {
    color: #6c6c6c;
    font-size: 15px;
    font-weight: 500;
    display: inline-block;
    margin-bottom: 10px;
    position: relative;
}

.internship-small::before {
    content: "";
    width: 70px;
    height: 2px;
    background: #EC6930;
    display: inline-block;
    vertical-align: baseline;
    margin-right: 12px;
}

.internship-title {
    color: #003366;
    font-weight: 700;
    font-size: 28px;
    margin-bottom: 20px;
}

.internship-description {
    color: #444;
    font-size: 16px;
    margin-bottom: 25px;
    line-height: 1.7;
    max-width: 520px;
}

.internship-btn {
    background: #EC6930;
    color: #fff;
    padding: 12px 28px;
    border-radius: 6px;
    font-weight: 600;
    text-decoration: none;
    display: inline-block;
}

@media (max-width: 900px) {
    .internship-wrapper {
        flex-direction: column;
        /* STACK TOP TO BOTTOM */
        text-align: center;
        gap: 30px;
    }

    .internship-left,
    .internship-right {
        width: 100%;
    }

    .internship-image {
        width: 85%;
        margin: 0 auto;
        display: block;
    }

    .internship-description {
        margin: 0 auto 20px;
        max-width: 95%;
    }

    .internship-btn {
        margin-top: 10px;
    }

    .internship-title {
        display: block;
    }
}

/* For Interns */
.interns-wrapper {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 50px;
    padding: 40px 0 80px;
}

.interns-small {
    font-weight: 400;
    font-size: 17px;
}

.interns-title {
    padding-block: 26px;
}

.interns-small::before {
    content: "";
    width: 70px;
    height: 2px;
    background: #EC6930;
    display: inline-block;
    margin-right: 12px;
    vertical-align: baseline;
}

.interns-section {
    background-color: #DBF3FE;
}

.interns-left {
    width: 55%;
}

.interns-right {
    width: 45%;
    position: relative;
}

.interns-right img {
    width: 75%;
    border-radius: 12px;
}

.img1 {
    position: relative;
    z-index: 1;
}

.img2 {
    z-index: 2;
    position: absolute;
    width: 65%;
    right: 0;
    bottom: -40px;
    border-radius: 12px;
}

/* TOPIC + BAR */
.interns-topic-item {
    margin-bottom: 28px;
}

.interns-topic-item label {
    font-size: 16px;
    font-weight: 600;
    display: block;
    margin-bottom: 5px;
    color: #333;
}

.progress-bar {
    position: relative;
    height: 6px;
    background: #d3d3d3;
    border-radius: 10px;
    overflow: hidden;
}

.progress-fill {
    height: 100%;
    border-radius: 10px;
}

.progress-circle {
    width: 18px;
    height: 18px;
    background: #fff;
    /* inner white circle */
    border-radius: 50%;
    position: absolute;
    top: -6px;

    border: 4px solid var(--ring);
    /* main color ring */

    /* outer glow ring */
    box-shadow: 0 0 0 4px var(--ring-light);
}

.bar1 .progress-fill {
    width: 95%;
    /* circle sudden end */
    background: linear-gradient(to right, #7b4397, #dc46ff);
}

.bar1 .progress-circle {
    right: 25px;
    border: 3px solid #dc46ff;
}

.bar2 .progress-fill {
    width: 50%;
    background: linear-gradient(to right, #d35400, #f5b041);
}

.bar2 .progress-circle {
    left: 48%;
    border: 3px solid #d35400;
}

.bar3 .progress-fill {
    width: 80%;
    background: linear-gradient(to right, #e84393, #00cec9);
}

.bar3 .progress-circle {
    left: 78%;
    border: 3px solid #00cec9;
}

.progress-circle {
    width: 16px;
    height: 16px;
    background: #fff;
    border-radius: 50%;
    position: absolute;
    top: -5px;
}

/* RESPONSIVE */
@media (max-width: 900px) {
    .interns-wrapper {
        flex-direction: column;
        text-align: center;
        gap: 10px;
        padding: 40px 0 0px;
    }

    interns-topic-item span {
        margin-inline: 30px;
    }

    .progress-bar {
        margin-inline: 0px;
    }

    .interns-left,
    .interns-right {
        width: 150%0%;
    }

    .interns-right img {
        width: 90%;
        margin: 0 auto;
    }

    .img2 {
        position: relative;
        right: -52px;
        bottom: 43px;
        margin-top: 20px;
    }

    .interns-topic-item label {
        text-align: left;
        margin-left: 10px;
    }
}

@media (max-width: 425px) {
    .interns-right {
        width: 270px;
        margin-right: 47px;
    }

    .interns-title {
        font-size: 19px;
    }

    .bar1 .progress-circle {
        right: 13px;
    }
}

/* Guide */
.guide-section {
    padding: 70px 0;
}

.guide-wrapper {
    display: flex;
    align-items: center;
    gap: 40px;
}

.guide-left {
    flex: 1;
}

.guide-icon {
    margin-top: -4px;
}

.guide-left img.guideImage {
    width: 100%;
    max-width: 500px;
    border-radius: 15px;
    display: block;
}

.guide-right {
    flex: 1.2;
}

.guide-small {
    font-size: 15px;
    color: #999;
}

.guide-small::before {
    content: "";
    width: 70px;
    height: 2px;
    background: #EC6930;
    display: inline-block;
    margin-right: 12px;
    vertical-align: baseline;
}

.guide-title {
    font-size: 28px;
    font-weight: 700;
    color: #003366;
    margin: 10px 0 25px;
    position: relative;
}

.guide-list {
    margin-bottom: 9px;
    color: black;
}

.guide-list ul {
    padding-left: 20px;
}

.guide-list li {
    margin-bottom: 10px;
    list-style-type: disc;
}

/* ---------------------
   RESPONSIVE DESIGN
--------------------- */

@media (max-width: 992px) {
    .guide-wrapper {
        flex-direction: column;
        text-align: center;
    }

    .guide-left img {
        max-width: 80%;
        margin: 0 auto;
    }

    .guide-right {
        text-align: left;
    }

    .guide-list ul {
        text-align: left;
        margin: 0 auto;
        max-width: 350px;
    }
}

@media (max-width: 516px) {
    .guide-title {
        font-size: 22px;
    }

    .guide-btn {
        padding: 10px 20px;
    }

    .guide-left img {
        max-width: 100%;
    }
}

/* ------------------------------------
    FAQ
--------------------------------------- */
.faq-section {
    padding: 20px 0;
    text-align: center;
}

.faq-wrapper {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 40px;
}

/* LEFT IMAGE */
.faq-left img {
    width: 100%;
    max-width: 420px;
}

/* RIGHT SIDE */
.faq-right {
    width: 100%;
    max-width: 580px;
    text-align: left;
}

.faq-title {
    font-size: 32px;
    font-weight: 700;
    margin-bottom: 50px;
    color: #012970;
}

/* FAQ ITEM */
.faq-item {
    border-bottom: 2px solid #e5e5e5;
    padding: 18px 0;
}

.faq-question {
    font-size: 17px;
    font-weight: 600;
    width: 100%;
    background: none;
    border: none;
    text-align: left;
    cursor: pointer;
    padding: 0;
    position: relative;
    color: #012970;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.faq-question .icon {
    font-size: 22px;
    font-weight: bold;
    transition: 0.3s ease;
}

/* ANSWER BOX */
.faq-answer {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.30s ease;
    margin-top: 5px;
}

.faq-answer p {
    font-size: 16px;
    line-height: 1.6;
    margin: 0;
    color: black;
}

/* ACTIVE STATE */
.faq-item.active .faq-answer {
    max-height: 300px;
}

.faq-item.active .faq-question .icon {
    transform: rotate(180deg);
}

/* RESPONSIVE */
@media (max-width: 992px) {
    .faq-wrapper {
        flex-direction: column;
        align-items: center;
        text-align: center;
    }

    .faq-right {
        max-width: 100%;
    }

    .faq-left img {
        max-width: 320px;
    }

    .faq-question {
        text-align: left;
    }
}

/* --------------------------------------
        Application Development
=----------------------------------------- */
.appdev-section {
    padding: 63px 0 60px;
}

.appdev-wrapper .content-section-box {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 40px;
    flex-wrap: wrap;
}

/* LEFT CONTENT */
.left-content {
    flex: 1;
    min-width: 280px;
}

.left-content h2 {
    font-size: 32px;
    font-weight: 700;
    color: #002b5b;
    margin-bottom: 15px;
}

.left-content p {
    font-size: 16px;
    line-height: 1.7;
    color: black;
    margin-bottom: 20px;
}

.btn {
    padding: 10px 25px;
    background: #ff6b41;
    color: #fff;
    border-radius: 8px;
    display: inline-block;
    font-size: 16px;
}

/* RIGHT IMAGE GRID */
.right-images {
    display: grid;
    grid-template-columns: 1fr 150px;
    grid-template-rows: auto auto;
    gap: 18px;
    min-width: 320px;
}

.big-image {
    grid-row: span 2;
    border-radius: 16px;
    overflow: hidden;
}

.big-image img {
    width: 100%;
    height: 90%;
    object-fit: cover;
    border-radius: 16px;
}

/* SMALL IMAGES */
.small-images {
    display: flex;
    flex-direction: column;
    gap: 18px;
}

.small-images img {
    width: 150px;
    height: 150px;
    object-fit: cover;
    border-radius: 14px;
}

/* ===================== */
/* TABLET FIX            */
/* ===================== */
@media (max-width: 992px) {
    .appdev-wrapper .content-section-box {
        flex-direction: column-reverse;
        text-align: left;
        gap: 10px;
    }

    .right-images {
        grid-template-columns: 1fr 140px;
    }

    .small-images img {
        width: 140px;
        height: 140px;
    }
}

/* ===================== */
/* MOBILE FIX (Looks EXACT same design) */
/* ===================== */
@media (max-width: 600px) {

    /* keep SAME GRID LAYOUT */
    .right-images {
        grid-template-columns: 1fr 120px;
        gap: 12px;
        margin-left: -18px;
    }

    .small-images {
        gap: 12px;
    }

    .small-images img {
        width: 104px;
        height: 117px;
    }

    .big-image img {
        height: 81%;
    }

    .left-content h2 {
        font-size: 25px;
    }

    .left-content p {
        margin-bottom: 10px;
    }

    .corporate-image img {
        width: 88%;
    }
}

.corporate-section {
    margin-block: 80px;
}

.corporate-container {
    display: flex;
    align-items: center;
    gap: 30px;
}

.corporateHeading {
    color: #012970;
    font-weight: 800;
    margin-bottom: 20px;
}

.corporateDesc {
    color: black;
    font-size: 18px;
    margin-bottom: 10px;
}

.corporateSmallDesc {
    font-size: 17px;
}

.corporateSmallDesc::before {
    content: "";
    width: 70px;
    height: 2px;
    background: #EC6930;
    display: inline-block;
    margin-right: 12px;
    vertical-align: baseline;
}

.commonBoxHeading {
    margin-block: 21px
}

.commonBoxDescription {
    color: black;
    font-size: 19px;
    margin-bottom: 20px;
}

@media (max-width: 992px) {

    .corporate-container {
        flex-direction: column;
        text-align: center;
        gap: 20px;
    }

    .corporate-left,
    .corporate-right {
        width: 100%;
    }

    .corporateSmallDesc::before {
        margin: 0 auto 10px auto;
        display: block;
    }

    .corporate-box-wrapper {
        margin-top: 20px;
    }

    .corporate-box {
        text-align: center;
    }
}

/* ===============================
   MOBILE RESPONSIVE
   (max-width: 576px)
================================ */
@media (max-width: 576px) {

    .corporateHeading {
        font-size: 24px;
        line-height: 32px;
    }

    .corporateDesc {
        font-size: 16px;
    }

    .corporateSmallDesc {
        font-size: 15px;
        display: block;
        margin-top: 10px;
    }

    .corporate-container {
        gap: 15px;
        padding: 0 10px;
        flex-direction: column;
    }

    .corporate-box {
        padding: 0px 0;
    }

    .commonBoxHeading {
        font-size: 20px;
        margin-block: 15px;
    }

    .commonBoxDescription {
        font-size: 16px;
        margin-bottom: 15px;
    }


}


/* TESTING SECTION */
/* MAIN SECTION */
.app-testing-section {
    padding: 40px 0;
    background: #e8f4ff;
    /* light blue like reference image */
}

.app-testing-wrapper {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 50px;
    flex-wrap: wrap;
}

/* LEFT SIDE TEXT */
.app-testing-left {
    flex: 1;
    min-width: 300px;
}

.app-testing-title {
    color: #012970;
    font-size: 32px;
    font-weight: 800;
    margin-bottom: 20px;
}

.app-testing-para {
    color: #333;
    font-size: 18px;
    line-height: 1.6;
    margin-bottom: 15px;
}

/* RIGHT SIDE IMAGE */
.app-testing-right {
    flex: 1;
    min-width: 300px;
    display: flex;
    justify-content: center;
}

.app-testing-image img {
    width: 100%;
    max-width: 500px;
    height: auto;
    display: block;
}

/* ------------------------------
   RESPONSIVE DESIGN
--------------------------------*/

/* Tablet */
@media (max-width: 992px) {
    .app-testing-wrapper {
        gap: 30px;
    }

    .app-testing-title {
        font-size: 28px;
    }

    .app-testing-para {
        font-size: 17px;
    }
}

/* Mobile */
@media (max-width: 768px) {
    .app-testing-wrapper {
        flex-direction: column-reverse;
        text-align: left;
    }

    .app-testing-title {
        font-size: 26px;
        text-align: center;
    }

    .app-testing-left p {
        text-align: center;
    }

    .app-testing-right {
        justify-content: center;
    }

    .app-testing-image img {
        max-width: 320px;
    }
}

/* Small Mobile */
@media (max-width: 480px) {
    .app-testing-title {
        font-size: 22px;
    }

    .app-testing-para {
        font-size: 16px;
    }

    .app-testing-image img {
        max-width: 280px;
    }
}

/* Google Review  */
/* ================= GOOGLE REVIEW SECTION ================= */

.google-review-section {
    background: #f8fafc;
}

.google-review-wrap {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 40px;
    flex-wrap: wrap;
    text-align: center;
}

.google-review-img img {
    max-width: 160px;
    width: 100%;
    height: auto;
}

.google-review-content h3 {
    font-size: 28px;
    font-weight: 700;
    color: #0f172a;
    margin-bottom: 10px;
}

.google-rating {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    margin-bottom: 18px;
}

.rating-value {
    font-size: 22px;
    font-weight: 700;
    color: #0f172a;
}

.stars {
    color: #fbbf24;
    /* Golden stars */
    font-size: 22px;
    letter-spacing: 2px;
}

.google-review-btn {
    display: inline-block;
    padding: 12px 28px;
    background: #22c55e;
    color: #ffffff;
    font-weight: 600;
    border-radius: 30px;
    text-decoration: none;
    transition: all 0.3s ease;
}

.google-review-btn:hover {
    background: #16a34a;
    transform: translateY(-2px);
}

/* ================= RESPONSIVE ================= */

@media (max-width: 768px) {
    .google-review-content h3 {
        font-size: 22px;
    }

    .google-review-img img {
        max-width: 120px;
    }
}


/* ===============================
   FOOTER 
=============================== */
.main-footer {
    background: #012970;
    color: #ffffff;
    padding: 50px 0 0 0;
}

.footer-grid {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 40px;
    margin-bottom: 33px;
}

.footer-col h4 {
    font-size: 20px;
    font-weight: 700;
    margin-bottom: 20px;
    color: #fff;
    position: relative;
    display: inline-block;
    /* underline width fit karto */
}

.footer-col h4::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0px;
    height: 2px;
    background: #EC6930;
}

/* ===============================
   FOOTER
=============================== */
.main-footer {
    background: #012970;
    color: #ffffff;
    padding: 50px 0 0 0;
}

.footer-grid {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 40px;
}

.footer-col h4 {
    font-size: 20px;
    font-weight: 700;
    margin-bottom: 20px;
    color: #fff;
    position: relative;
    display: inline-block;
}

.footer-col h4::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0px;
    height: 2px;
    background: #EC6930;
}

/* ===============================
   FOOTER LINKS
=============================== */
.footer-col ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

.footer-col ul li {
    margin-bottom: 12px;
}

.footer-link-icon {
    margin-right: 6px;
    margin-bottom: 0;
}

.footer-col ul li a {
    color: #ffffff;
    text-decoration: none;
    font-size: 15px;
    display: flex;
    align-items: center;
    transition: 0.3s;
}

.footer-col ul li a:hover {
    color: #EC6930;
}

.footer-dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #FBA92C;
    display: inline-block;
    margin-right: 10px;
}

/* ===============================
   CONTACT SECTION
=============================== */

/* Footer address & contact group links unified */
.footer-address-link,
.footer-contact-group a,
.contact-line a,
.footer-mail {
    color: #ffffff;
    text-decoration: none;
    font-size: 15px;
    display: flex;
    align-items: center;
    transition: 0.3s;
}

.footer-address-link:hover,
.footer-contact-group a:hover,
.contact-line a:hover,
.footer-mail:hover {
    color: #EC6930;
}

/* Footer icons next to text */
.footer-address i,
.footer-contact-group i,
.footer-mail i {
    color: #EC6930;
    margin-right: 10px;
}

/* Footer headings */
.footer-heading {
    display: flex;
    align-items: center;
    margin-bottom: 4px;
    font-size: 16px;
    font-weight: 700;
    color: #fff;
}

/* Contact line spacing */
.contact-line {
    display: flex;
    align-items: center;
    margin-left: 24px;
    margin-bottom: 3px;
}

/* Footer mail link spacing */
.footer-mail {
    margin-left: 24px;
    display: flex;
    align-items: center;
}

.footer-address,
.footer-contact-group {
    margin-bottom: 12px;
}

/* Footer bottom */
.footer-bottom {
    background-color: #FFF5F0;
    color: black;
    padding-block: 20px;
    text-align: center;
}

.footer-bottom p {
    margin: 0;
    font-size: 17px;
    color: black;
    font-weight: 400;
}

.footer-addresses {
    display: flex;
    gap: 12px;
    align-items: baseline;
    margin-bottom: 5px;
}

.footer-addresses i {
    color: #EC6930;
    font-size: 17px;
}

.footer-bottom a {
    font-weight: 800;
    color: #EC6930;
    text-decoration: none;
}

/* ===============================
   RESPONSIVE (TABLET)
=============================== */
@media (max-width: 992px) {
    .footer-grid {
        grid-template-columns: repeat(2, 1fr);
        text-align: center;
        justify-items: center;
    }

    .footer-contact i,
    .footer-address i {
        margin-right: 8px;
    }

    .footer-heading {
        justify-content: center;
    }

    .contact-line,
    .footer-mail,
    .footer-address-link {
        margin-left: 0;
        justify-content: center;
        text-align: justify;
    }

    .footer-address {
        text-align: center;
        justify-content: center;
    }

    .footer-addresses {
        gap: 0px;
    }
}

/* ===============================
   RESPONSIVE (MOBILE)
=============================== */
@media (max-width: 576px) {
    .footer-grid {
        grid-template-columns: 1fr;
        gap: 30px;
        text-align: left;
        justify-items: left;
        padding: 0 20px;
    }

    .footer-col h4 {
        font-size: 18px;
    }

    .footer-col ul li a,
    .footer-address-link,
    .contact-line a,
    .footer-mail {
        font-size: 14px;
    }

    .footer-contact p {
        font-size: 14px;
    }

    .footer-bottom p {
        font-size: 13px;
    }

    .footer-heading {
        justify-content: left;
    }

    .contact-line,
    .footer-mail {
        margin-left: 24px;
        justify-content: left;
    }
}

/* ============================================
   WEB COMPANY SECTION (Section 1 - Hero)
   Matching the exact design layout
   ============================================ */

.web-company-section {
    padding: 40px 0 80px;
    background: #FFFFFF;
}

.web-company-content {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 80px;
    align-items: flex-start;
}

.web-company-image-one {
    grid-column: 1 / 2;
    grid-row: 1 / 3;
    border-radius: 16px;
    overflow: hidden;
}

.web-company-image-one img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    min-height: 420px;
}

.web-company-image-grid {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.web-company-image-small {
    border-radius: 16px;
    overflow: hidden;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.12);
    height: 200px;
}

.web-company-image-small img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

/* Right Side - Text Content */
.web-company-text {
    padding-left: 20px;
}

.web-company-heading {
    font-size: 30px;
    font-weight: 700;
    color: #012970;
    line-height: 1.3;
    margin-bottom: 8px;
}

.web-company-desc {
    font-size: 17px;
    color: black;
    line-height: 1.7;
    margin-bottom: 18px;
}

.web-company-desc p {
    margin-bottom: 10px;
}

/* Blocklist Content Styles */
.web-company-small-heading {
    display: block;
    font-size: 16px;
    color: #718096;
    margin-bottom: 6px;
    padding-bottom: 10px;
}

.web-company-small-heading::before {
    content: "";
    width: 70px;
    height: 2px;
    background: #EC6930;
    display: inline-block;
    margin-right: 12px;
    vertical-align: baseline;
}

.web-company-main-heading {
    font-size: 29px;
    font-weight: 700;
    color: #012970;
    margin-bottom: 11px;
    margin-top: 0;
    line-height: 1.3;
}

.web-company-block-desc {
    font-size: 16px;
    color: black;
    line-height: 1.8;
    margin-bottom: 20px;
}

.web-company-block-desc p {
    margin-bottom: 12px;
}

/* ============================================
   WEB SOLUTION SECTION (Section 2 - CTA)
   ============================================ */

.web-solution-banner {
    padding: 18px 0;
    background: #0A2540;
    background: #021B42;
    position: relative;
    overflow: hidden;
}

.web-solution-content {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 80px;
    align-items: center;
    max-width: 100%;
    margin: 0;
}

/* Left Side - Icon Pattern */
.web-solution-icon-pattern {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
}

.web-solution-icon-pattern img {
    width: 100%;
    height: auto;
    filter: brightness(1.1);
}

/* Right Side - Text Content */
.web-solution-text {
    padding-left: 40px;
}

.web-solution-heading {
    color: #EC6930;
    margin-bottom: 9px;
    line-height: 1.3;
}

.web-solution-heading span {
    color: #FF6B35;
}

.web-solution-desc {
    font-size: 17px;
    color: white;
    margin-bottom: 20px;
}

.web-solution-desc p {
    margin-bottom: 10px;
}

/* ============================================
   RESPONSIVE - WEB SOLUTION SECTION
   ============================================ */

/* Tablets (max-width: 992px) */
@media (max-width: 992px) {

    /* Convert image to background */
    .web-solution-icon-pattern {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        overflow: hidden;
        z-index: 1;
    }

    .web-solution-icon-pattern img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        /* Make image fully cover */
        opacity: 0.25;
        /* dim background for text */
    }

    /* Text on top */
    .web-solution-text {
        position: relative;
        z-index: 2;
        text-align: center;
        padding: 0px 20px;
    }

    /* Remove 2-column layout */
    .web-solution-content {
        grid-template-columns: 1fr;
        position: relative;
        padding: 40px 0 0;
    }
}

/* Mobile (max-width: 768px) */
@media (max-width: 768px) {

    .web-solution-heading {
        font-size: 28px;
        margin-bottom: 16px;
    }

    .web-solution-desc {
        font-size: 15px;
        margin-bottom: 25px;
    }

    .web-solution-icon-pattern {
        padding: 20px;
        max-width: 350px;
    }

    .web-solution-btn {
        width: 100%;
        max-width: 280px;
    }
}

/* Small Mobile (max-width: 576px) */
@media (max-width: 576px) {

    .web-solution-heading {
        font-size: 24px;
    }

    .web-solution-desc {
        font-size: 14px;
    }

    .web-solution-icon-pattern {
        max-width: 300px;
        padding: 15px;
    }

    .web-solution-icon-pattern img {
        max-width: 100%;
    }

    .web-solution-btn {
        width: 100%;
        max-width: none;
        padding: 13px 30px;
        font-size: 15px;
    }
}

/* Extra Small Mobile (max-width: 400px) */
@media (max-width: 400px) {
    .web-solution-heading {
        font-size: 22px;
    }

    .web-solution-desc {
        font-size: 13px;
    }

    .web-solution-icon-pattern {
        max-width: 250px;
    }
}


/* ============================================
   CUSTOM WEBSITE & ECOMMERCE SECTION (Section 3)
   ============================================ */

.custom-ecommerce-section {
    padding: 80px 0;
    background: #FFFFFF;
}

/* Custom Website Blocklist */
.custom-website-item {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 60px;
    align-items: center;
    margin-bottom: 80px;
}

.custom-website-text {
    padding: 0 20px;
    order: 2;
}

.custom-website-label {
    display: inline-block;
    font-size: 15px;
    color: #8B95A1;
    letter-spacing: 1px;
    margin-bottom: 12px;
}

.custom-website-label::before {
    content: "";
    width: 70px;
    height: 2px;
    background: #EC6930;
    display: inline-block;
    margin-right: 12px;
    vertical-align: baseline;
}

.custom-website-heading {
    color: #012970;
    margin-bottom: 11px;
    line-height: 1.3;
}

.custom-website-description {
    font-size: 16px;
    color: black;
    line-height: 1.8;
    margin-bottom: 25px;
}

.custom-website-description p {
    margin-bottom: 12px;
}

.custom-website-images {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 15px;
}

.custom-website-image {
    border-radius: 15px;
    overflow: hidden;
    height: 342px;
}

.custom-website-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

/* E-Commerce Blocklist */
.ecommerce-item {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 60px;
    align-items: center;
    margin-bottom: 0;
}

.ecommerce-item-reverse {
    direction: rtl;
}

.ecommerce-item-reverse>* {
    direction: ltr;
}

.ecommerce-text {
    padding: 0 20px;
}

.ecommerce-label {
    display: inline-block;
    font-size: 15px;
    color: #8B95A1;
    letter-spacing: 1px;
    margin-bottom: 12px;
}

.ecommerce-label::before {
    content: "";
    width: 70px;
    height: 2px;
    background: #EC6930;
    display: inline-block;
    margin-right: 12px;
    vertical-align: baseline;
}

.ecommerce-heading {
    color: #012970;
    margin-bottom: 11px;
    line-height: 1.3;
    position: relative;
}

.ecommerce-heading::after {
    content: "";
    position: absolute;
    left: 20%;
    bottom: 0;
    transform: translateX(-50%);
    width: 60%;
    height: 2px;
    background: linear-gradient(90deg,
            #00000000,
            #EC6930,
            #00000000);
}

.ecommerce-description {
    font-size: 16px;
    color: black;
    line-height: 1.6;
    margin-bottom: 25px;
}

.ecommerce-description p {
    margin-bottom: 12px;
}

.ecommerce-btn {
    display: inline-block;
    padding: 12px 30px;
    font-size: 15px;
    font-weight: 600;
    text-decoration: none;
    border-radius: 6px;
    transition: all 0.3s ease;
    background: #FF6B35;
    color: #FFFFFF;
}

.ecommerce-btn:hover {
    background: #e55a28;
    transform: translateY(-2px);
}

.ecommerce-images {
    display: grid;
    grid-template-columns: 1fr;
    gap: 15px;
}

.ecommerce-image-large {
    border-radius: 8px;
    overflow: hidden;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
    height: 300px;
}

.ecommerce-image-large img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

/* ============================================
   WEB SERVICE SECTION (Section 4 - Points)
   ============================================ */
/* SECTION */
.web-service-section {
    padding: 30px 0;
    background: #FFF5F0;
}

/* HEADING */
.web-service-header {
    text-align: center;
    padding-block: 38px
}

.web-service-heading {
    color: #012970;
    margin-bottom: 10px;
}

.web-service-desc {
    font-size: 16px;
    color: #6B7A8B;
    max-width: 700px;
    margin: 0 auto;
}

/* GRID – same as design (2 columns x 3 rows) */
.web-service-points-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 35px 70px;
    max-width: 1000px;
    margin: 0 auto;
}

/* EACH ITEM LIKE THE IMAGE */
.web-service-point-item {
    display: flex;
    align-items: flex-start;
    gap: 15px;
}

/* ICON CIRCLE */
.web-service-point-icon {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
}

/* ICON COLORS */
.icon-blue {
    background: #E3F2FD;
    color: #007AFF;
}

.icon-orange {
    background: #FFE9D6;
    color: #FF6A2A;
}

.icon-yellow {
    background: #FFF7D6;
    color: #FFB400;
}

.icon-green {
    background: #E7F8F1;
    color: #00A881;
}

.web-service-point-content {
    display: flex;
    align-items: flex-start;
    gap: 7px;
}

.web-service-point-content img {
    height: 30px;
    width: 30px;
}

/* TEXT */
.web-service-point-content h3 {
    font-size: 16px;
    font-weight: 600;
    color: #0A2540;
    margin-bottom: 6px;
}

.web-service-point-content p {
    font-size: 18px;
    color: black;
    line-height: 1.5;
}

/* RESPONSIVE (Mobile) */
@media (max-width: 768px) {
    .web-service-points-grid {
        grid-template-columns: 1fr;
        gap: 25px;
    }
}

/* ============================================
   WEB WORK SECTION (Section 5 - Technologies)
   ============================================ */

.web-work-section {
    padding: 50px 0 70px;
    background: #FFFFFF;
}

.web-work-header {
    text-align: center;
    margin-bottom: 40px;
}

.web-work-heading {
    color: #012970;
    margin-bottom: 9px;
}

.web-work-desc {
    font-size: 16px;
    color: #5A6C7D;
    margin: 0 auto;
    line-height: 1.7;
}

.web-work-image-wrapper {
    max-width: 910px;
    margin: 0 auto;
    text-align: center;
}

.web-work-image-wrapper img {
    width: 100%;
    height: auto;
    display: block;
}

/* ============================================
   RESPONSIVE DESIGN
   ============================================ */

/* Tablets (max-width: 992px) */
@media (max-width: 992px) {

    .web-company-content,
    .custom-website-item,
    .ecommerce-item {
        grid-template-columns: 1fr;
        gap: 15px;
    }

    /* Web Company Section Responsive */
    .web-company-images {
        order: 1;
        padding-right: 0;
        max-width: 600px;
        margin: 0 auto;
    }

    .web-company-text {
        order: 2;
        padding-left: 0;
    }

    .web-company-heading {
        font-size: 30px;
    }

    .web-company-main-heading {
        font-size: 24px;
    }

    .ecommerce-item-reverse {
        direction: ltr;
    }

    .custom-website-heading,
    .ecommerce-heading {
        font-size: 28px;
        display: block;
    }

    .ecommerce-heading::after {
        content: "";
        position: absolute;
        left: 50%;
        bottom: 0;
        transform: translateX(-50%);
        width: 90%;
        height: 2px;
        background: linear-gradient(90deg,
                #00000000,
                #EC6930,
                #00000000);
    }

    .web-solution-heading {
        font-size: 28px;
    }

    .web-service-heading,
    .web-work-heading {
        font-size: 28px;
    }

    .web-service-points-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 25px;
    }

    .custom-website-text,
    .ecommerce-text {
        padding: 0;
        text-align: center;
    }
}

/* Mobile (max-width: 768px) */
@media (max-width: 768px) {

    .web-company-section,
    .web-solution-banner,
    .web-service-section,
    .web-work-section {
        padding: 0px 0 50px;
    }

    .custom-ecommerce-section {
        padding: 60px 0;
    }

    .web-company-heading {
        font-size: 26px;
        margin-bottom: 7px;
    }

    .web-company-main-heading {
        font-size: 22px;
        margin-top: 0px;
    }

    .web-company-desc,
    .web-company-block-desc {
        font-size: 14px;
    }

    .web-company-images {
        max-width: 500px;
        gap: 15px;
    }

    .web-company-image-one img {
        min-height: 350px;
    }

    .web-company-image-small {
        height: 170px;
    }

    .custom-website-heading,
    .ecommerce-heading {
        font-size: 24px;
    }

    .web-solution-heading {
        font-size: 24px;
    }

    .web-service-heading,
    .web-work-heading {
        font-size: 24px;
    }

    .custom-website-description,
    .ecommerce-description,
    .web-solution-desc,
    .web-service-desc,
    .web-work-desc {
        font-size: 15px;
    }

    .web-company-btn,
    .custom-website-btn,
    .ecommerce-btn {
        width: 100%;
        max-width: 300px;
    }

    .web-solution-btn {
        width: 100%;
        max-width: 350px;
    }

    .custom-website-item {
        margin-bottom: 60px;
    }

    .web-service-points-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 20px;
    }

    .web-service-point-icon {
        width: 60px;
        height: 60px;
    }

    .web-service-point-icon svg {
        width: 28px;
        height: 28px;
    }
}

/* Small Mobile (max-width: 576px) */
@media (max-width: 576px) {

    .web-company-heading {
        font-size: 20px;
    }

    .web-company-main-heading {
        font-size: 20px;
    }

    .custom-website-heading,
    .ecommerce-heading {
        font-size: 22px;
    }

    .web-solution-heading {
        font-size: 22px;
    }

    .web-service-heading,
    .web-work-heading {
        font-size: 22px;
    }

    .web-company-section,
    .web-solution-banner,
    .web-service-section,
    .web-work-section {
        padding: 0px 0 20px;
        margin-top: 40px;
    }

    .custom-ecommerce-section {
        padding: 50px 0 20px;
    }

    .web-company-images {
        grid-template-columns: 1fr;
    }

    .web-company-image-one {
        grid-column: 1;
        grid-row: 1;
    }

    .web-company-image-one img {
        min-height: 280px;
    }

    .web-company-image-grid {
        flex-direction: row;
        gap: 15px;
    }

    .web-company-image-small {
        height: 160px;
        flex: 1;
    }

    .custom-website-image {
        width: 100%;
        max-height: 250px;
        overflow: hidden;
        display: flex;
        justify-content: center;
        align-items: center;
    }

    .custom-website-images {
        display: grid;
        gap: 15px;
    }

    .custom-website-image img {
        width: 100%;
        height: auto;
        max-height: 250px;
        object-fit: contain;
        display: block;
    }

    .ecommerce-image-large {
        height: 250px;
    }

    .web-service-points-grid {
        grid-template-columns: 1fr;
        max-width: 300px;
    }

    .web-company-btn,
    .custom-website-btn,
    .ecommerce-btn {
        width: 100%;
        padding: 12px 20px;
        font-size: 14px;
        max-width: none;
    }

    .web-solution-btn {
        padding: 14px 30px;
        font-size: 15px;
        width: 100%;
    }

    .web-company-small-heading {
        font-size: 13px;
    }
}


/* Extra Small Mobile (max-width: 400px) */
@media (max-width: 400px) {
    .web-company-heading {
        font-size: 22px;
    }

    .web-company-main-heading {
        font-size: 19px;
    }

    .custom-website-heading,
    .ecommerce-heading,
    .web-solution-heading,
    .web-service-heading,
    .web-work-heading {
        font-size: 20px;
    }

    .web-company-desc,
    .web-company-block-desc {
        font-size: 13px;
    }

    .web-company-image-one img {
        min-height: 240px;
    }

    .web-company-image-grid {
        flex-direction: column;
    }

    .web-company-image-small {
        height: 140px;
    }

    .custom-website-label,
    .ecommerce-label {
        font-size: 12px;
    }

    .web-service-point-content h3 {
        font-size: 13px;
    }
}

/* ============================================
   ANIMATIONS
   ============================================ */

@keyframes fadeInUp {
    from {
        opacity: 0;
        transform: translateY(20px);
    }

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

.fade-in-animation {
    animation: fadeInUp 0.6s ease-out;
}

/* -------------------------------------------------
    DevOps Section
---------------------------------------------------- */

/* Header Section */
/* ==============================
   DEVOPS HEADER SECTION
================================ */
.devops-header-section {
    position: relative;
    width: 100%;
    min-height: 260px;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
}

.life-header-section {
    position: relative;
    width: 100%;
    min-height: 600px;
    /* height vadhari */
    background-size: cover;
    background-position: top center;
    /* image no upar no part visible */
    background-repeat: no-repeat;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
}

/* Full black overlay on entire image */
.life-header-section::before {
    content: "";
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, 0.45);
    /* overlay darkness */
    z-index: 1;
}

/* Content upar rahe */
.life-header-section>* {
    position: relative;
    z-index: 2;
}


/* Container */
.devops-header-container {
    position: relative;
    z-index: 2;
    max-width: 1200px;
    padding: 0 20px;
    text-align: center;
}

/* Content Wrapper */
.devops-header-text-wrapper {
    max-width: 850px;
    margin: 0 auto;
}

/* Heading */
.devops-header-box-heading {
    color: #ffffff;
    margin-bottom: 16px;
    line-height: 1.2;
}

/* Description */
.devops-header-box-description {
    font-size: 16px;
    font-weight: 400;
    color: #d0d8e6;
    line-height: 1.6;
}

/* Optional: spacing between multiple blocks */
.devops-header-text-wrapper+.devops-header-text-wrapper {
    margin-top: 30px;
}

/* ==============================
   RESPONSIVE BREAKPOINTS
================================ */

/* Tablets */
@media (max-width: 992px) {
    .devops-header-section {
        min-height: 320px;
    }

    .devops-header-box-heading {
        font-size: 36px;
    }

    .devops-header-box-description {
        font-size: 15px;
    }
}

/* Mobile */
@media (max-width: 576px) {
    .devops-header-section {
        min-height: 260px;
        padding: 40px 0 30px;
    }

    .devops-header-box-heading {
        font-size: 26px;
    }

    .devops-header-box-description {
        font-size: 14px;
        line-height: 1.5;
    }
}

/* ==============================
   DEVOPS PLANNING SECTION
================================ */
.devops-planning-section {
    padding-top: 45px;
    background: #ffffff;
}

.devops-planning-container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 20px;
}

/* TOP HEADING */
.devops-planning-heading-wrapper {
    text-align: center;
    margin-bottom: 60px;
}

.devops-planning-main-heading-cover {
    text-align: center;
}

.devops-planning-main-heading {
    color: #012970;
    margin-bottom: 30px;
    text-align: center;
}

/* Bullet Points */
.devops-planning-points {
    margin-top: 5px;
}

.devops-planning-point {
    font-size: 15px;
    color: #555;
    display: flex;
    align-items: center;
    gap: 8px;
}

/* ==============================
   CONTENT BLOCK
================================ */
.devops-planning-content-block {
    display: grid;
    grid-template-columns: 1.1fr 0.9fr;
    gap: 60px;
    align-items: center;
    margin-bottom: 65px;
}

/* LEFT TEXT */
.devops-planning-small-heading {
    color: #676766;
    font-size: 15px;
}

.devops-planning-small-heading::before {
    content: "";
    width: 70px;
    height: 2px;
    background: #EC6930;
    display: inline-block;
    margin-right: 12px;
    vertical-align: baseline;
}

.devops-planning-content-heading {
    font-size: 30px;
    font-weight: 700;
    color: #0b2c5d;
    margin-bottom: 16px;
}

.devops-planning-description {
    font-size: 18px;
    color: black;
    line-height: 1.7;
}

.devops-planning-description ul {
    margin-top: 15px;
    padding-left: 18px;
}

.devops-planning-description li {
    margin-bottom: 8px;
}

/* RIGHT IMAGE */
.devops-planning-image-content {
    text-align: center;
}

.devops-planning-img {
    max-width: 100%;
    height: auto;
    object-fit: contain;
}

/* ==============================
   RESPONSIVE BREAKPOINTS
================================ */

/* Tablets */
@media (max-width: 992px) {
    .devops-planning-content-block {
        grid-template-columns: 1fr;
        gap: 40px;
    }

    .devops-planning-content-heading {
        font-size: 26px;
    }

    .devops-planning-description {
        font-size: 15px;
    }
}

/* Mobile */
@media (max-width: 576px) {
    .devops-planning-section {
        padding: 50px 0 0;
    }

    .devops-planning-main-heading {
        font-size: 26px;
    }

    .devops-planning-content-heading {
        font-size: 22px;
    }

    .devops-planning-description {
        font-size: 14px;
        line-height: 1.6;
    }

    .devops-planning-points {
        gap: 12px;
    }
}

.devops-workflow-image-wrapper {
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    margin-top: 65px;
}

.devops-workflow-main-image {
    max-width: 100%;
    height: auto;
    object-fit: contain;
    display: block;
}

@media (max-width: 576px) {
    .devops-workflow-image-wrapper {
        padding: 10px;
    }

    .devops-workflow-main-image {
        width: 100%;
        height: auto;
        max-height: 416px;
        object-fit: contain;
    }
}

/* ===== Wrapper ===== */
.devops-integration-block {
    max-width: 1200px;
    margin: 75px auto;
    padding: 0 20px;
    display: flex;
    align-items: center;
    gap: 50px;
}

/* ===== Text Section ===== */
.devops-integration-text {
    width: 50%;
}

.devops-integration-small-heading {
    font-size: 15px;
    color: #676766;
    font-weight: 500;
    display: flex;
    align-items: center;
    gap: 12px;
}

.devops-integration-small-heading::before {
    content: "";
    width: 60px;
    height: 2px;
    background: #EC6930;
    display: inline-block;
}

.devops-integration-main-heading {
    color: #012970;
    font-size: 32px;
    font-weight: 700;
    margin: 12px 0;
}

.devops-integration-description {
    color: #333;
    font-size: 17px;
    line-height: 1.7;
    margin-bottom: 22px;
}

/* ===== Image Section ===== */
.devops-integration-images {
    width: 50%;
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
}

/* Overlay Circular Image */
.devops-integration-image-2 {
    position: absolute;
    bottom: -20px;
    right: 0;
    width: 45%;
}

/* ===== Responsive ===== */

/* Tablet */
@media (max-width: 991px) {
    .devops-integration-block {
        flex-direction: column-reverse;
        text-align: center;
    }

    .devops-integration-text,
    .devops-integration-images {
        width: 100%;
    }

    .devops-integration-small-heading {
        justify-content: center;
    }

    .devops-integration-image-2 {
        right: 20px;
        width: 40%;
    }
}

/* Mobile */
@media (max-width: 576px) {
    .devops-integration-main-heading {
        font-size: 26px;
    }

    .devops-integration-description {
        font-size: 16px;
    }

    .devops-integration-image-1 {
        width: 100%;
    }
}

.devops-mission-wrapper {
    background-color: #DBF3FE;
    border: 1px solid #012970;
    padding: 37px 18px;
}

.devops-mission-wrapper span {
    color: black;
}

.devops-Engage {
    margin-block: 60px;
}

/* ===============================
   Software Development Section
================================ */

.software-dev-section {
    padding: 40px 0 55px;
    background: #ffffff;
    overflow: hidden;
}

.software-dev-section .container {
    max-width: 1240px;
    margin: 0 auto;
    padding: 0 24px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 60px;
}

.software-left-content {
    max-width: 560px;
}

.software-left-content .small-heading {
    color: #676766;
}

.software-left-content .small-heading::before {
    content: "";
    width: 70px;
    height: 2px;
    background: #EC6930;
    display: inline-block;
    margin-right: 12px;
    vertical-align: baseline;
}

.software-left-content .main-heading {
    color: #012970;
    margin-block: 20px;
}

.software-left-content .description {
    line-height: 1.75;
    color: black;
    margin-bottom: 20px;
}

.software-right-content {
    flex-shrink: 0;
    max-width: 620px;
}

.software-right-content .content-image {
    width: 100%;
    height: auto;
    display: block;
}

.software-custom-heading {
    font-size: 24px;
    font-weight: bolder;
}


/* Tablet View */

@media (max-width: 991px) {
    .software-dev-section {
        padding: 47px 0 60px;
    }

    .software-dev-section .container {
        flex-direction: column-reverse;
        text-align: center;
        gap: 20px;
    }

    .software-left-content {
        max-width: 100%;
    }

    .software-left-content .description {
        max-width: 600px;
        margin-left: auto;
        margin-right: auto;
    }

    .software-right-content {
        max-width: 520px;
    }
}

/* ===============================
   Mobile View
================================ */

@media (max-width: 576px) {
    .software-dev-section {
        padding: 50px 0;
    }

    .software-left-content .main-heading {
        font-size: 23px;
    }

    .software-left-content .description {
        font-size: 14px;
    }

    .software-right-content {
        max-width: 100%;
    }

    .software-custom-heading {
        font-size: 16px;
        font-weight: bolder;
    }
}

/* ================================
   Software Services Section
================================ */
.software-services-section {
    padding: 38px 0;
    position: relative;
}

.services-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 22px;
}

.software-services-section .container {
    position: relative;
    z-index: 2;
}

.sotware-service-bg {
    position: absolute;
    top: 80px;
    left: 5px;
    width: 50%;
    max-width: none;
    z-index: 0;
    pointer-events: none;
}

/* RIGHT BACKGROUND CIRCLE */
.sotware-service-bg-2 {
    position: absolute;
    top: 211px;
    right: 121px;
    width: 460px;
    max-width: none;
    z-index: 0;
    pointer-events: none;
}

.service-item {
    background: #DBF3FE;
    border: 1px solid #012970;
    border-radius: 14px;
    padding: 45px 25px;
    text-align: center;
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.service-icon {
    width: 70px;
    height: 70px;
    object-fit: contain;
    margin-bottom: 20px;
}

.service-heading {
    display: inline-block;
    background: #EC6930;
    color: #fff;
    font-size: 15px;
    font-weight: 600;
    padding: 8px 18px;
    border-radius: 8px;
    margin-bottom: 15px;
    line-height: 1.2;
}

.service-desc {
    font-size: 14px;
    color: black;
    line-height: 1.7;
    margin: 0;
}

/* ================================
   Responsive Styles
================================ */

/* Tablet */
@media (max-width: 991px) {
    .services-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 25px;
    }

    .service-item {
        padding: 30px 20px 35px;
    }
}

/* Mobile */
@media (max-width: 575px) {
    .services-grid {
        grid-template-columns: 1fr;
    }

    .service-item {
        padding: 28px 18px 32px;
    }

    .service-icon {
        width: 50px;
        height: 50px;
    }

    .service-heading {
        font-size: 14px;
        padding: 7px 16px;
    }

    .service-desc {
        font-size: 13.5px;
    }
}

/* ===============================
   Software Process Section
================================= */
.software-process-section {
    padding: 35px 0 80px;
    background-color: #ffffff;
    text-align: center;
}

.software-process-section .container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 20px;
}

.process-heading {
    color: #012970;
    margin-bottom: 15px;
    display: block;
}

.process-desc {
    max-width: 750px;
    margin: 0 auto 50px auto;
    font-size: 19px;
    color: black;
}

.process-image {
    width: 100%;
    max-width: 1100px;
    height: auto;
    margin: 0 auto;
    display: block;
    padding-top: 45px;
}

/* ===============================
   Tablet View (<= 992px)
================================= */
@media (max-width: 992px) {
    .software-process-section {
        padding: 60px 0;
    }

    .process-heading {
        font-size: 28px;
    }

    .process-desc {
        font-size: 15px;
        margin-bottom: 40px;
    }

    .process-image {
        max-width: 900px;
    }
}

/* ===============================
   Mobile View (<= 768px)
================================= */
@media (max-width: 768px) {
    .software-process-section {
        padding: 20px 0 58px;
    }

    .process-heading {
        font-size: 24px;
    }

    .process-desc {
        font-size: 14px;
        margin-bottom: 30px;
    }

    .process-image {
        max-width: 100%;
    }
}

/* ===============================
   Small Mobile (<= 480px)
================================= */
@media (max-width: 480px) {
    .process-heading {
        font-size: 22px;
    }

    .process-desc {
        font-size: 13.5px;
        line-height: 1.6;
    }
}

/* ===============================
   MARKETING BANNER BASE STYLE
================================ */
.marketing-banner {
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    box-sizing: border-box;
    overflow: hidden;
}

.marketing-banner img {
    max-width: 1200px;
    width: 100%;
    height: auto;
    object-fit: contain;
    display: block;
}

/* ===============================
   LARGE SCREENS (1200px+)
================================ */
@media (min-width: 1200px) {
    .marketing-banner img {
        max-width: 1300px;
    }
}

/* ===============================
   TABLETS (768px – 1199px)
================================ */
@media (max-width: 1199px) {
    .marketing-banner img {
        max-width: 100%;
    }
}

/* ===============================
   MOBILE (Below 768px)
================================ */
@media (max-width: 767px) {
    .marketing-banner img {
        width: 100%;
        max-width: 100%;
    }
}

/* Marketing Cards Section */
.marketing-cards-section {
    padding: 60px 0px;
}

.marketing-cards-heading {
    text-align: center;
    margin-bottom: 60px;
    max-width: 1000px;
    margin: 0px auto 35px;
    color: #012970;
}

.marketing-cards-heading h2 {
    /* font-size: 42px; */
    font-weight: 700;
    color: #1a3b5d;
    line-height: 1.3;
    margin: 0;
    max-width: 900px;
    margin-left: auto;
    margin-right: auto;
}

.digital-marketing-cards {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 30px;
    max-width: 1200px;
    margin: 0 auto;
}

.digital-service-card {
    border-radius: 20px;
    padding: 0;
    display: flex;
    flex-direction: column;
    border: 0.5px solid gray;
    overflow: hidden;
    align-items: flex-start;
    background-color: #FFF5F0;
}

.digital-marketing-service-icon {
    width: 100%;
    height: 200px;
    overflow: hidden;
    position: relative;
}

.digital-marketing-service-icon img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.digital-service-card h3 {
    font-size: 18px;
    font-weight: 800;
    background: #012970;
    padding: 7px 25px;
    border-radius: 20px;
    display: inline-block;
    margin: 15px 25px 15px 25px;
    color: #EC6930;
}

.digital-service-card p {
    font-size: 16px;
    font-weight: 400;
    color: black;
    line-height: 1.6;
    margin: 0;
    padding: 0 25px 30px 25px;
}

/* Tablet Styles */
@media (max-width: 1024px) {
    .marketing-cards-section {
        padding: 60px 20px;
    }

    .marketing-cards-heading {
        margin-bottom: 50px;
    }

    .marketing-cards-heading h2 {
        font-size: 36px;
    }

    .digital-marketing-cards {
        grid-template-columns: repeat(2, 1fr);
        gap: 25px;
        max-width: 800px;
    }

    .digital-service-card h3 {
        font-size: 17px;
        padding: 11px 22px;
        margin: 22px 22px 12px 22px;
    }

    .digital-service-card p {
        font-size: 14px;
        padding: 0 22px 28px 22px;
    }
}

/* Mobile Styles */
@media (max-width: 768px) {
    .marketing-cards-section {
        padding: 50px 15px;
    }

    .marketing-cards-heading {
        margin-bottom: 40px;
        font-size: 19px
    }

    .marketing-cards-heading h2 {
        font-size: 28px;
        padding: 0 10px;
    }

    .digital-marketing-cards {
        grid-template-columns: 1fr;
        gap: 20px;
        max-width: 500px;
    }

    .digital-marketing-service-icon {
        height: 180px;
    }

    .digital-service-card h3 {
        font-size: 16px;
        padding: 10px 20px;
        margin: 20px 20px 12px 20px;
    }

    .digital-service-card p {
        font-size: 14px;
        padding: 0 20px 25px 20px;
    }
}

/* Small Mobile Styles */
@media (max-width: 480px) {
    .marketing-cards-section {
        padding: 40px 15px;
    }

    .marketing-cards-heading h2 {
        font-size: 24px;
    }

    .digital-marketing-service-icon {
        height: 160px;
    }

    .digital-service-card h3 {
        font-size: 15px;
        padding: 9px 18px;
        margin: 18px 18px 10px 18px;
    }

    .digital-service-card p {
        font-size: 13px;
        padding: 0 18px 22px 18px;
        line-height: 1.5;
    }
}

.marketing-info-one {
    padding: 0px 20px 60px;
    background: #ffffff;
}

.marketing-info-one .content-section {
    max-width: 1200px;
    margin: 0 auto;
    display: flex;
    align-items: center;
    gap: 60px;
}

/* ===== Image Side ===== */
.marketing-info-one .content-image {
    flex: 1;
}

.marketing-info-one .content-image img {
    width: 100%;
    height: auto;
    border-radius: 140px 40px 140px 40px;
    /* organic shape */
    object-fit: cover;
}

/* ===== Text Side ===== */
.marketing-info-one .content-text {
    flex: 1;
    margin-inline: 20px;
}

.marketing-info-one .small-heading {
    color: #6b7280;
    position: relative;
}

.marketing-info-one .small-heading::before {
    content: "";
    width: 70px;
    height: 2px;
    background: #EC6930;
    display: inline-block;
    margin-right: 12px;
    vertical-align: baseline;
}

.marketing-info-one h2 {
    color: #012970;
    margin-block: 14px;
    line-height: 1.3;
}

.marketing-info-one .description {
    line-height: 1.5;
    color: black;
    margin-bottom: 18px;
}

.digital-marketing-success {
    background-color: #DBF3FE;
    border: 1px solid #012970;
}

/* ===== Responsive ===== */
@media (max-width: 992px) {
    .marketing-info-one .content-section {
        flex-direction: column;
        gap: 10px;
        text-align: center;
    }

    .marketing-info-one h2 {
        font-size: 30px;
        display: block;
    }
}

@media (max-width: 576px) {
    .marketing-info-one {
        padding: 20px 15px 40px;
    }

    .marketing-info-one h2 {
        font-size: 19px;
    }

    .marketing-info-one .description {
        font-size: 15px;
    }

    .marketing-info-one .btn {
        padding: 12px 26px;
        font-size: 14px;
    }
}

/* ===== Marketing Info Two Section ===== */
.marketing-info-two {
    padding: 53px 20px 70px;
    background: #ffffff;
}

.marketing-info-two .content-section {
    max-width: 1200px;
    margin: 0 auto;
    display: flex;
    align-items: center;
    gap: 60px;
}

/* ===== Left Content ===== */
.marketing-info-two .content-text {
    flex: 1;
}

.marketing-info-two .small-heading {
    display: inline-block;
    font-size: 14px;
    font-weight: 500;
    color: #6b6b6b;
    margin-bottom: 10px;
    position: relative;
    padding-left: 30px;
}

.marketing-info-two .small-heading::before {
    content: "";
    width: 70px;
    height: 2px;
    background: #EC6930;
    display: inline-block;
    margin-right: 12px;
    vertical-align: baseline;
}

.marketing-info-two h2 {
    color: #0b2c6f;
    margin-bottom: 20px;
}

.marketing-info-two .description {
    font-size: 16px;
    line-height: 1.8;
    /* color: #555555; */
    max-width: 520px;
}

/* ===== Right Image with Background Shape ===== */
.marketing-info-two .content-image {
    flex: 1;
    position: relative;
    display: flex;
    justify-content: center;
}

/* Background rectangle */
.marketing-info-two .content-image::before {
    content: "";
    position: absolute;
    right: -30px;
    top: -30px;
    width: 100%;
    height: 100%;
    z-index: 0;
}

.marketing-info-two .content-image img {
    max-width: 100%;
    position: relative;
    z-index: 1;
    border-radius: 30px;
}

.marketing-info-one .Ai-service-img img {
    width: 80%;
}

.ai-btn {
    margin-top: 15px;
}

/* ===== Tablet ===== */
@media (max-width: 991px) {
    .marketing-info-two .content-section {
        flex-direction: column;
        gap: 10px;
        text-align: center;
    }

    .marketing-info-two .description {
        max-width: 100%;
        margin: 0 auto;
    }

    .marketing-info-two .content-image::before {
        right: 0;
        top: -20px;
    }
}

/* ===== Mobile ===== */
@media (max-width: 576px) {
    .marketing-info-two {
        padding: 45px 15px;
    }

    .marketing-info-two h2 {
        font-size: 21px;
    }

    .marketing-info-two .small-heading {
        font-size: 13px;
        padding-left: 1px;
    }

    .marketing-info-two .content-image::before {
        display: none;
        /* cleaner mobile look */
    }
}

/* ===========================================
        Data Designation Section 
 ============================================= */
.banner-section {
    width: 100%;
    padding: 0;
}

.banner-section .container {
    max-width: 1400px;
    margin: 0 auto;
    padding: 0;
}

.banner-image {
    width: 100%;
    height: 320px;
    object-fit: cover;
    object-position: center;
    display: block;
}

.Data-Digitization-Manage {
    margin-block: 60px;
    background-color: #DBF3FE;
    border: 1px solid #012970;
}

.designation-SubDesc {
    color: #676766;
    font-size: 20px;
    margin-bottom: 20px;
}

.data-process-image {
    max-width: 90%;
    height: auto;
    display: block;
    margin: 30px auto 0;
    border-radius: 12px;
}

/* Tablets */
@media (max-width: 992px) {
    .banner-image {
        height: 200px;
    }
}

/* Mobile */
@media (max-width: 576px) {

    .Data-Digitization-Manage {
        margin-block: 40px;
    }

    .banner-image {
        height: 100px;
    }
}

.designation-content-section {
    display: flex;
    align-items: center;
    gap: 40px;
    margin-bottom: 80px;
}

/* Text & Image width */
.designation-benifit-text,
.designation-benifit-img {
    flex: 1;
}

/* Even row ma layout reverse */
.designation-content-section:nth-child(even) {
    flex-direction: row-reverse;
}

/* Image styling */
.designation-benifit-img img {
    width: 88%;
    height: auto;
}

.designation-description {
    color: black;
    margin-block: 16px;
    font-size: 18px;
    text-align: left;
}

.designation-small-heading {
    display: block;
    margin-block: 12px;
}


@media (max-width: 768px) {

    .designation-content-section,
    .designation-content-section:nth-child(even) {
        flex-direction: column-reverse;
        text-align: center;
        margin-bottom: 20px;
    }

    .designation-benifit-text {
        order: 1;
    }

    .designation-benifit-img {
        order: 2;
    }
}

/* ================================
   DIGITIZATION CONTROL IMAGE
================================ */

.control-image-section {
    padding: 10px 0 80px;
    background-color: #ffffff;
}

.control-image-section .container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 20px;
    display: flex;
    justify-content: center;
    align-items: center;
}

.control-image {
    max-width: 100%;
    height: auto;
    object-fit: contain;
    display: block;
    border-radius: 12px;
    transition: transform 0.4s ease, box-shadow 0.4s ease;
    padding: 20px 0 0px
}

.designatioin-heading {
    font-size: 10px;
}

.designation-desc {
    color: black;
    margin-block: 10px;
}

/* ================================
   TABLET RESPONSIVE
================================ */

@media (max-width: 992px) {
    .control-image-section {
        padding: 60px 0;
    }

    .control-image {
        max-width: 95%;
    }
}

/* ================================
   MOBILE RESPONSIVE
================================ */

@media (max-width: 768px) {
    .control-image-section {
        padding: 40px 0;
    }

    .control-image {
        max-width: 100%;
    }
}

/* ================================
   SMALL MOBILE
================================ */

@media (max-width: 480px) {
    .control-image-section {
        padding: 30px 0;
    }

    .control-image {
        border-radius: 8px;
        padding: 0;
    }
}

.document-section {
    padding: 15px 0 0;
    text-align: center;
}

.document-section h2 {
    text-align: center;
}

.section-heading {
    margin-bottom: 45px;
}

.document-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    /* ONLY 2 PER ROW */
    gap: 26px;
}

.service-box {
    display: flex;
    align-items: flex-start;
    gap: 20px;
    padding: 26px 30px;
    border-radius: 16px;
    border: 1px solid rgba(0, 0, 0, 0.04);
}

.service-icon {
    width: 80px;
    height: 80px;
    padding: 11px;
    border-radius: 50%;
    background: #ffffff;
    border: 1px solid #ffb9b9;
    flex-shrink: 0;
}

.service-content h4 {
    font-size: 17px;
    margin-bottom: 6px;
    color: #012970
}

.service-content p {
    font-size: 17px;
    line-height: 1.6;
    margin: 0;
    color: black;
    ;
}

.service-box:nth-child(1) {
    background: #E5FFEB;
    text-align: left;
}

.service-box:nth-child(2) {
    background: #FFE8EB;
    text-align: left;
}

.service-box:nth-child(3) {
    background: #DDEEFF;
    text-align: left;
}

.service-box:nth-child(4) {
    background: #FFF4D5;
    text-align: left;
}

.service-box:nth-child(5) {
    background: #FFF5F0;
    text-align: left;
}

.service-box:nth-child(6) {
    background: #CCEFFF;
    text-align: left;
}

/* =========================
   RESPONSIVE
========================= */

/* Tablet */
@media (max-width: 991px) {
    .section-heading {
        font-size: 28px;
    }

    .document-grid {
        grid-template-columns: 1fr;
    }
}

/* Mobile */
@media (max-width: 575px) {
    .section-heading {
        font-size: 24px;
        margin-bottom: 40px;
    }

    .service-box {
        padding: 22px;
        gap: 16px;
    }

    .service-icon {
        width: 50px;
        height: 50px;
    }
}

/* =========================
   SCANNING SECTION
========================= */
.scanning-section {
    padding: 70px 0;
    background: #ffffff;
    text-align: center;
}

.scanning-section-heading {
    font-size: 32px;
    font-weight: 700;
    color: #0b2a6f;
    margin-bottom: 20px;
    line-height: 1.3;
}

.scanning-section-description {
    font-size: 16px;
    color: #333333;
    max-width: 800px;
    margin: 0 auto 10px;
    line-height: 1.6;
}

.scanning-scanning-point {
    font-size: 16px;
    font-weight: 600;
    color: #ff6a00;
    margin-bottom: 60px;
}

.scanning-section .row {
    display: flex;
    justify-content: center;
    gap: 30px;
    flex-wrap: wrap;
    margin: 0 -15px;
}

.scanning-section .col-md-3 {
    flex: 0 0 auto;
    width: calc(33.333% - 30px);
    max-width: 320px;
    padding: 0;
}

.designation-service-card {
    position: relative;
    background: #fff4ed;
    border-radius: 20px;
    padding: 80px 30px 40px;
    text-align: center;
    min-height: 250px;
    transition: all 0.3s ease;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05);
    overflow: visible;
}

.designation-service-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 12px 30px rgba(0, 0, 0, 0.12);
}

.scanning-service-icon {
    position: absolute;
    top: -40px;
    left: 50%;
    transform: translateX(-50%);
    width: 80px;
    height: 80px;
    padding: 18px;
    background: #ffffff;
    border-radius: 50%;
    border: 3px solid #ff6a00;
    box-shadow: 0 6px 20px rgba(0, 0, 0, 0.1);
    object-fit: contain;
}

/* Inner ring effect */
.designation-service-card::before {
    content: '';
    position: absolute;
    top: -37px;
    left: 50%;
    transform: translateX(-50%);
    width: 74px;
    height: 74px;
    border-radius: 50%;
    border: 2px solid #0b2a6f;
    pointer-events: none;
}

.designation-service-card h4 {
    font-size: 28px;
    font-weight: 800;
    color: #012970;
    line-height: 1.4;
    margin: 0;
    letter-spacing: -0.3px;
}


/* Large Desktop */
@media (min-width: 1200px) {
    .scanning-section .col-md-3 {
        width: calc(33.333% - 30px);
    }
}

/* Tablet – 2 cards */
@media (max-width: 991px) {
    .scanning-section {
        padding: 60px 0;
    }

    .scanning-section-heading {
        font-size: 28px;
    }

    .scanning-scanning-point {
        margin-bottom: 50px;
    }

    .scanning-section .row {
        gap: 50px;
    }

    .scanning-section .col-md-3 {
        width: calc(50% - 25px);
        max-width: 100%;
    }
}

/* Small Tablet */
@media (max-width: 767px) {
    .scanning-section {
        padding: 50px 0;
    }

    .scanning-section-heading {
        font-size: 24px;
        margin-bottom: 15px;
    }

    .scanning-section-description {
        font-size: 14px;
    }

    .scanning-scanning-point {
        font-size: 14px;
        margin-bottom: 40px;
    }

    .scanning-section .row {
        gap: 20px;
        margin-inline: 0px;
    }

    .scanning-section .col-md-3 {
        width: 100%;
        max-width: 400px;
        margin: 0 auto;
    }

    .designation-service-card {
        padding: 70px 25px 35px;
        border-radius: 16px;
    }

    .scanning-service-icon {
        width: 70px;
        height: 70px;
        top: -35px;
        padding: 16px;
    }

    .designation-service-card::before {
        top: -32px;
        width: 64px;
        height: 64px;
    }

    .designation-service-card h4 {
        font-size: 30px;
    }
}

/* Mobile – Single column */
@media (max-width: 576px) {
    .scanning-section-heading {
        font-size: 22px;
    }

    .designation-service-card {
        padding: 65px 20px 30px;
    }

    .scanning-service-icon {
        width: 65px;
        height: 65px;
        top: -32px;
        padding: 14px;
    }

    .designation-service-card::before {
        top: -29px;
        width: 59px;
        height: 59px;
    }

    .designation-service-card h4 {
        font-size: 30px;
    }
}

/* =========================
   PROCESS SECTION
========================= */
.process-section {
    padding: 0px 0 60px;
    background: #ffffff;
    text-align: center;
    overflow: hidden;
    position: relative;

}

.process-section .container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 15px;
}

.process-section .section-heading {
    font-size: 32px;
    font-weight: 700;
    color: #0b2a6f;
    margin-bottom: 15px;
    line-height: 1.3;
}

.process-section .section-description {
    font-size: 16px;
    color: #666666;
    margin-bottom: 0px;
    line-height: 1.6;
}

/* =========================
   PROCESS IMAGE
========================= */
.process-image {
    max-width: 85%;
    height: auto;
    display: block;
    margin: 0 auto;
    border-radius: 12px;
}

.dasignation-right-bg,
.dasignation-right-bg-1,
.dasignation-left-bg,
.dasignation-left-bg-1 {
    position: absolute;
    z-index: -1;
    pointer-events: none;
    /* ensures they don’t block clicks */
}

.dasignation-right-bg {
    top: 85px;
    right: -50px;
    width: 25%;
}

.dasignation-right-bg-1 {
    top: 481px;
    right: -55px;
}

.dasignation-left-bg {
    top: 450px;
    left: -40px;
    width: 23%;
}

.dasignation-left-bg-1 {
    top: 183px;
    left: -40px;
}

/* Ensure content appears above background images */
.process-section .container {
    position: relative;
    z-index: 1;
}

/* =========================
   RESPONSIVE DESIGN
========================= */

/* Large Desktop */
@media (min-width: 1400px) {
    .process-section .container {
        max-width: 1320px;
    }

    .process-image {
        max-width: 90%;
    }
}

/* Desktop */
@media (min-width: 1200px) and (max-width: 1399px) {
    .process-section .container {
        max-width: 1254px;
    }
}

/* Tablet Large */
@media (max-width: 1199px) {
    .process-section {
        padding: 70px 0;
    }

    .process-section .section-heading {
        font-size: 28px;
    }

    .process-section .section-description {
        font-size: 15px;
        margin-bottom: 40px;
    }
}

/* Tablet */
@media (max-width: 991px) {
    .process-section {
        padding: 60px 0;
    }

    .process-section .section-heading {
        font-size: 26px;
        margin-bottom: 12px;
    }

    .process-section .section-description {
        font-size: 14px;
        margin-bottom: 35px;
        padding: 0 20px;
    }

    .process-image {
        max-width: 95%;
    }
}

/* Mobile Large */
@media (max-width: 767px) {
    .process-section {
        padding: 50px 0;
    }

    .process-section .section-heading {
        font-size: 24px;
        margin-bottom: 10px;
        padding: 0 10px;
    }

    .process-section .section-description {
        font-size: 14px;
        margin-bottom: 30px;
        padding: 0 15px;
    }

    .process-image {
        max-width: 100%;
        border-radius: 8px;
    }
}

/* Mobile Medium */
@media (max-width: 576px) {
    .process-section {
        padding: 40px 0;
    }

    .process-section .section-heading {
        font-size: 22px;
        line-height: 1.4;
    }

    .process-section .section-description {
        font-size: 13px;
        margin-bottom: 25px;
    }

    .process-image {
        border-radius: 6px;
    }
}

/* Mobile Small */
@media (max-width: 480px) {
    .process-section {
        padding: 8px 0 35px;
    }

    .process-section .section-heading {
        font-size: 20px;
    }

    .process-section .section-description {
        font-size: 13px;
        margin-bottom: 20px;
        padding: 0 10px;
    }
}

/* =========================
   OPTIONAL: IMAGE LOADING STATE
========================= */
.process-image {
    opacity: 0;
    animation: fadeIn 0.5s ease-in forwards;
}

@keyframes fadeIn {
    from {
        opacity: 0;
        transform: translateY(20px);
    }

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

/* =========================
   OPTIONAL: PRINT STYLES
========================= */
@media print {
    .process-section {
        padding: 30px 0;
        page-break-inside: avoid;
    }

    .process-image {
        max-width: 100%;
        page-break-inside: avoid;
    }
}

/* ---------------------------------------------------
   SECTION 2: GOVERNMENT WORK
----------------------------------------------------- */
.government-work {
    padding: 50px 0 60px;
}

.government-work .container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 15px;
}

.government-work .row {
    display: flex;
    align-items: center;
    gap: 60px;
}

.government-work .col-lg-6 {
    flex: 1;
    min-width: 0;
}

/* Left Column - Image */
.government-work .col-lg-6:first-child {
    display: flex;
    justify-content: center;
    align-items: center;
}

.government-work .image-wrapper {
    width: 100%;
    max-width: 400px;
}

.government-work .section-image {
    width: 100%;
    height: auto;
    display: block;
}

/* Right Column - Content */
.government-work .col-lg-6:last-child {
    padding-left: 20px;
}

.government-work .section-heading {
    color: #1a2b5c;
    margin-bottom: 23px;
    line-height: 1.3;
}

.government-work .description {
    color: black;
    line-height: 1.8;
    margin-bottom: 9px;
}

.government-work .description:last-of-type {
    margin-bottom: 20px;
}

/* Highlighted Text */
.government-work .description strong,
.government-work .description b {
    color: #1a2b5c;
    font-weight: 600;
}

/* SECTION SPACING */
.government-solution {
    padding: 0px 0 70px;
    width: 100%;
}

/* MAIN FLEX LAYOUT */
.gov-solution {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 50px;
}

/* COLUMNS */
.gov-solution>div {
    flex: 0 0 50%;
    max-width: 50%;
}

/* HEADING */
.government-heading {
    margin-bottom: 20px;
    line-height: 1.2;
}

/* DESCRIPTION */
.government-description {
    font-size: 16px;
    line-height: 1.7;
    margin-bottom: 15px;
    color: black;
}

/* IMAGE WRAPPER */
.government-image-wrapper {
    width: 100%;
    overflow: hidden;
    border-radius: 12px;
}

/* IMAGE */
.government-section-image {
    width: 100%;
    height: auto;
    display: block;
    object-fit: cover;
}

.government-solution-images {
    padding: 0px 0 80px;
    width: 100%;
}

/* FLEX ROW */
.government-solution-row {
    display: flex;
    gap: 30px;
    align-items: stretch;
}

/* COLUMN */
.government-solution-row .col-lg-6 {
    flex: 0 0 50%;
    max-width: 50%;
}

/* IMAGE CARD */
.government-solution-image-wrapper {
    width: 100%;
    height: 100%;
    border-radius: 18px;
    overflow: hidden;
    background: #fff;
}

/* IMAGE */
.government-solution-section-image {
    width: 100%;
    height: 100%;
    min-height: 320px;
    object-fit: cover;
    display: block;
}

/* Responsive Design */
@media (max-width: 991px) {
    .government-work {
        padding: 60px 0;
    }

    .government-work .row {
        flex-direction: column;
        gap: 40px;
    }

    .government-work .col-lg-6:last-child {
        padding-left: 0;
    }

    .government-work .section-heading {
        font-size: 28px;
        margin-bottom: 25px;
    }

    .government-work .image-wrapper {
        max-width: 350px;
    }

    .gov-solution {
        flex-direction: column-reverse;
        gap: 40px;
    }

    .gov-solution>div {
        flex: 0 0 100%;
        max-width: 100%;
        order: unset;
    }

    .government-heading {
        font-size: 30px;
        text-align: center;
    }

    .government-description {
        text-align: center;
    }

    .government-solution-row {
        flex-direction: column;
        gap: 25px;
    }

    .government-solution-row .col-lg-6 {
        max-width: 100%;
        flex: 0 0 100%;
    }

    .government-solution-section-image {
        min-height: 280px;
    }
}

@media (max-width: 768px) {
    .government-work {
        padding: 50px 0;
    }

    .government-work .row {
        gap: 35px;
    }

    .government-work .section-heading {
        font-size: 26px;
        margin-bottom: 20px;
    }

    .government-work .description {
        font-size: 15px;
        margin-bottom: 18px;
    }

    .government-work .description:last-of-type {
        margin-bottom: 0px;
    }

    .government-work .image-wrapper {
        max-width: 300px;
    }
}

@media (max-width: 576px) {
    .government-work {
        padding: 40px 0;
    }

    .government-work .container {
        padding: 0 20px;
    }

    .government-work .row {
        gap: 30px;
    }

    .government-work .section-heading {
        font-size: 24px;
        margin-bottom: 18px;
    }

    .government-work .description {
        font-size: 14px;
        line-height: 1.7;
        margin-bottom: 16px;
    }

    .government-work .description:last-of-type {
        margin-bottom: 8px;
    }

    .government-work .image-wrapper {
        max-width: 250px;
    }

    .government-solution {
        padding: 15px 0 50px;
    }

    .government-heading {
        font-size: 21px;
        text-align: left;
    }

    .government-description {
        font-size: 15px;
        text-align: left;
    }

    .government-image-wrapper {
        border-radius: 8px;
    }

    .government-solution-images {
        padding: 0px 0 50px;
    }

    .government-solution-image-wrapper {
        border-radius: 12px;
    }

    .government-solution-section-image {
        min-height: 220px;
    }
}

@media (max-width: 400px) {
    .government-work .section-heading {
        font-size: 22px;
    }

    .government-work .description {
        font-size: 13px;
    }
}

/* SECTION CONTAINER */
.government-ecommerce {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    padding: 0px 0px 28px;
    gap: 30px;
}

/* LEFT COLUMN - TEXT */
.government-ecommerce .col-lg-6:first-child {
    flex: 1 1 500px;
}

.government-ecommerce-heading {
    font-size: 28px;
    font-weight: 700;
    color: #0a2f5b;
    /* Dark Blue */
    margin-bottom: 20px;
}

.government-ecommerce-description {
    line-height: 1.7;
    margin-bottom: 15px;
    color: black;
}

/* RIGHT COLUMN - IMAGE */
.government-ecommerce .col-lg-6:last-child {
    flex: 1 1 500px;
    position: relative;
}

.government-ecommerce-image-wrapper {
    position: relative;
    width: 100%;
    max-width: 500px;
}

.government-ecommerce-section-image {
    width: 80%;
}

/* Decorative elements */
.government-ecommerce-image-wrapper::before {
    content: "";
    position: absolute;
    width: 70px;
    height: 70px;
    border: 3px solid #f37021;
    border-radius: 50%;
    top: -20px;
    left: -20px;
}

/* RESPONSIVE */
@media (max-width: 991px) {
    .government-ecommerce {
        flex-direction: column;
        text-align: center;
    }

    .government-ecommerce .col-lg-6:first-child,
    .government-ecommerce .col-lg-6:last-child {
        flex: 1 1 100%;
    }

    .government-ecommerce-image-wrapper::before,
    .government-ecommerce-image-wrapper::after {
        display: none;
    }
}

/* ========================================== 
        Education Page
 ===========================================*/
/* Education Header Section */
.education-header {
    position: relative;
    min-height: 250px;
    display: flex;
    align-items: center;
    justify-content: center;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    overflow: hidden;
}

.education-header .container {
    position: relative;
    z-index: 2;
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 20px;
}

.education-header-content {
    text-align: center;
    padding: 80px 20px;
}

.education-header-content h1 {
    color: white;
    font-weight: 800;
    font-size: 35px;
    text-align: center;
}

/* Responsive Design */

/* Tablets and smaller laptops */
@media (max-width: 1024px) {
    .education-header {
        min-height: 100px;
    }

    .education-header-content {
        padding: 60px 20px;
    }

    .education-header-content h1 {
        font-size: 42px;
    }
}

/* Tablets portrait */
@media (max-width: 768px) {
    .education-header {
        min-height: 200px;
    }

    .education-header-content {
        padding: 50px 15px;
    }

    .education-header-content h1 {
        font-size: 28px;
        letter-spacing: 0.5px;
    }
}

/* Mobile devices */
@media (max-width: 576px) {
    .education-header {
        min-height: 100px;
    }

    .education-header-content {
        padding: 40px 10px;
    }

    .education-header-content h1 {
        font-size: 28px;
        letter-spacing: 0.5px;
    }
}

/* Small mobile devices */
@media (max-width: 375px) {
    .education-header {
        min-height: 100px;
    }

    .education-header-content h1 {
        font-size: 15px;
    }
}

/* ==============================
   OUR EXPERTISE SECTION
================================ */
.education-expertise {
    padding: 50px 0;
    background: #ffffff;
}

.education-expertise .container {
    max-width: 1180px;
    margin: auto;
    padding: 0 20px;
}

/* ==============================
   HEADER
================================ */
.expertise-header {
    max-width: 880px;
    margin: 0 auto 55px;
    text-align: center;
}

.expertise-header p {
    line-height: 1.8;
    color: #333;
    margin-top: 17px;
}

/* ==============================
   GRID
================================ */
.expertise-cards {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 32px;
}

/* ==============================
   CARD
================================ */
.expertise-card {
    border: 1.6px solid #012970;
    border-radius: 18px;
    background: #fff;
    overflow: hidden;
    text-align: center;
    height: 92%;
}

/* ==============================
   ICON AREA
================================ */
.expertise-card-icon {
    height: 185px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.expertise-card-icon img {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
}

/* ==============================
   TITLE STRIP (BOTTOM)
================================ */
.expertise-heading {
    background: #fff4ec;
    border-top: 1px solid #e2e2e2;
    padding: 45px 4px;
    border-bottom-left-radius: 18px;
    border-bottom-right-radius: 18px;
}

.expertise-heading h3 {
    font-size: 19.5px;
    font-weight: 700;
    color: #012970;
    line-height: 1.4;
    margin: 0;
}

/* ==============================
   RESPONSIVE
================================ */

/* Tablet */
@media (max-width: 992px) {
    .expertise-cards {
        grid-template-columns: repeat(2, 1fr);
        gap: 26px;
    }

    .expertise-header h2 {
        font-size: 30px;
    }

    .expertise-card-icon {
        height: 165px;
    }
}

/* Mobile */
@media (max-width: 576px) {
    .education-expertise {
        padding: 45px 0 70px;
    }

    .expertise-cards {
        grid-template-columns: 1fr;
        gap: 22px;
    }

    .expertise-header {
        text-align: left;
    }

    .expertise-header h2 {
        font-size: 19px;
    }

    .expertise-header p {
        font-size: 14px;
    }

    .expertise-card-icon {
        height: 150px;
    }

    .expertise-heading h3 {
        font-size: 15px;
    }
}

/* Large Screens */
@media (min-width: 1400px) {
    .education-expertise .container {
        max-width: 1320px;
    }

    .expertise-card-icon {
        height: 200px;
    }
}

/* ===============================
   Finance Page
================================ */
.solutions-cards {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
    margin-top: -25px;
}

.solution-card {
    background: #ffffff;
    border-radius: 14px;
    border: 1px solid #012970;
    overflow: hidden;
    height: 100%;
    display: flex;
    flex-direction: column;
    transition: all 0.3s ease;
}

.solution-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 12px 30px rgba(0, 0, 0, 0.08);
}

.solution-card-icon {
    width: 100%;
    height: 180px;
    overflow: hidden;
}

.solution-card-icon img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.solution-text {
    background-color: #FFF5F0;
    padding: 18px;
    flex-grow: 1;
    text-align: center;
}

.solution-text h3 {
    font-size: 18px;
    color: #EC6930;
    margin-bottom: 10px;
}

.solution-text p {
    font-size: 14px;
    line-height: 1.6;
    color: #000;
    margin: 0;
}

/* Tablet */
@media (max-width: 991px) {
    .solutions-cards {
        grid-template-columns: repeat(2, 1fr);
    }

    .solution-card-icon {
        height: 170px;
    }
}

/* Mobile */
@media (max-width: 576px) {
    .on-demand-expertise {
        padding: 50px 0 50px;
    }

    .solutions-cards {
        grid-template-columns: 1fr;
    }

    .solution-card {
        border-radius: 12px;
    }

    .solution-card-icon {
        height: 160px;
    }

    .solution-text {
        padding: 16px;
    }

    .solution-text h3 {
        font-size: 17px;
    }

    .solution-text p {
        font-size: 13.5px;
    }
}

/* ===============================
   Finance Solution Two Section
================================= */

.finance-solution-two {
    padding: 30px 0 80px;
    background-color: #ffffff;
}

.finance-solution-two-wrapper {
    display: flex;
    align-items: center;
    gap: 60px;
}

/* ===============================
   CONTENT (RIGHT SIDE)
================================= */

.finance-solution-two-content {
    flex: 1;
}

.finance-solution-two-content h2 {
    color: #012970;
    margin-bottom: 12px;
}

.finance-solution-item {
    margin-bottom: 20px;
}

.finance-solution-item h3 {
    font-size: 18px;
    font-weight: 600;
    color: #0b2a4a;
    margin-bottom: 6px;
}

.finance-solution-item p {
    font-size: 15px;
    line-height: 1.6;
    color: black;
}

/* Button */
.finance-solution-button {
    margin-top: 30px;
}

/* ===============================
   IMAGE SECTION (LEFT SIDE)
================================= */

.finance-solution-two-image {
    flex: 1;
    position: relative;
    max-width: 520px;
}

.finance-solution-two-image img {
    width: 87%;
    height: auto;
    border-radius: 14px;
    object-fit: cover;
    display: block;
}

/* Orange vertical accent pill */
.finance-solution-two-image::before {
    content: "";
    position: absolute;
    left: -22px;
    top: 50%;
    transform: translateY(-50%);
    width: 14px;
    height: 120px;
    background-color: #f26522;
    border-radius: 10px;
}

/* Floating mini card effect */
.finance-solution-two-image::after {
    content: "";
    position: absolute;
    bottom: -30px;
    right: -30px;
    width: 180px;
    height: 120px;
    background-image: inherit;
    background-size: cover;
    border-radius: 12px;
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.15);
    opacity: 0.15;
}

/* ===============================
   RESPONSIVE DESIGN
================================= */

@media (max-width: 992px) {
    .finance-solution-two-wrapper {
        flex-direction: column;
        gap: 40px;
    }

    .finance-solution-two-content h2 {
        font-size: 28px;
    }

    .finance-solution-two-image {
        max-width: 100%;
    }

    .finance-solution-two-image::before {
        left: -12px;
        height: 90px;
    }
}

@media (max-width: 576px) {
    .finance-solution-two {
        padding: 0px 0 58px;
    }

    .finance-solution-two-content h2 {
        font-size: 24px;
    }

    .finance-solution-item h3 {
        font-size: 16px;
    }

    .finance-solution-item p {
        font-size: 14px;
    }

    .finance-solution-two-image::before {
        display: none;
    }
}

/* ===============================
   Finance Data Section
================================= */

.finance-data {
    padding: 80px 0;
    background-color: #ffffff;
}

.finance-data-wrapper {
    display: flex;
    align-items: flex-start;
    gap: 60px;
}

/* ===============================
   CONTENT (LEFT)
================================= */

.finance-data-content {
    flex: 1;
}

.finance-data-content h2 {
    font-size: 32px;
    font-weight: 700;
    color: #0b2a4a;
    margin-bottom: 24px;
}

.finance-data-item {
    margin-bottom: 18px;
}

.finance-data-item h3 {
    font-size: 17px;
    font-weight: 600;
    color: #0b2a4a;
    margin-bottom: 6px;
}

.finance-data-item p {
    font-size: 15px;
    line-height: 1.6;
    color: #5b6b7c;
    max-width: 520px;
}

/* ===============================
   IMAGE STACK (RIGHT)
================================= */

.finance-data-image {
    flex: 1;
    position: relative;
    max-width: 460px;
}

.finance-data-image img {
    width: 100%;
    border-radius: 14px;
    object-fit: cover;
    display: block;
}

/* Top floating image */
.finance-data-image::before {
    content: "";
    position: absolute;
    top: -30px;
    right: -30px;
    width: 180px;
    height: 120px;
    background-image: inherit;
    background-size: cover;
    background-position: center;
    border-radius: 12px;
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.15);
}

/* Bottom floating image */
.finance-data-image::after {
    content: "";
    position: absolute;
    bottom: -30px;
    left: -30px;
    width: 200px;
    height: 140px;
    background-image: inherit;
    background-size: cover;
    background-position: center;
    border-radius: 12px;
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.15);
}

/* ===============================
   RESPONSIVE DESIGN
================================= */

@media (max-width: 992px) {
    .finance-data-wrapper {
        flex-direction: column;
        gap: 40px;
    }

    .finance-data-content h2 {
        font-size: 28px;
    }

    .finance-data-image {
        max-width: 100%;
    }

    .finance-data-image::before,
    .finance-data-image::after {
        display: none;
    }
}

@media (max-width: 576px) {
    .finance-data {
        padding: 60px 0;
    }

    .finance-data-content h2 {
        font-size: 24px;
    }

    .finance-data-item h3 {
        font-size: 16px;
    }

    .finance-data-item p {
        font-size: 14px;
    }
}

/* ===============================
   Finance Data Section
================================ */

.finance-data {
    padding: 80px 0;
    background-color: #ffffff;
}

.finance-data-wrapper {
    display: flex;
    gap: 60px;
}

/* ===============================
   CONTENT (ALWAYS LEFT)
================================ */

.finance-data-content {
    flex: 1;
}

.finance-data-content h2 {
    color: #012970;
}

.finance-solution-two-image {
    flex: 1;
    position: relative;
    max-width: 460px;
}

.finance-solution-two-image img {
    width: 100%;
    display: block;
    border-radius: 14px;
    object-fit: cover;
}

/* ===============================
   RESPONSIVE – ONLY IMAGE CENTER
================================ */

@media (max-width: 992px) {
    .finance-data-wrapper {
        flex-direction: column-reverse;
        flex-wrap: wrap;
    }

    .finance-data-content {
        flex: 1 1 100%;
        max-width: 100%;
    }

    .finance-solution-two-image {
        flex: 1 1 100%;
        max-width: 520px;
        margin: 30px auto 0;
    }

    .finance-solution-two-image img {
        margin: 0 auto;
    }
}

@media (max-width: 576px) {
    .finance-data {
        padding: 60px 0;
    }

    .finance-data-content h2 {
        font-size: 24px;
    }

    .finance-solution-two-image {
        max-width: 100%;
    }
}

/* ------------------------------------------
        Healthcare Page
--------------------------------------------- */
.healthcare-expertise {
    padding: 40px 0;
    text-align: center;
}

/* CONTAINER */
.healthcare-expertise .container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 20px;
}

/* SECTION HEADING */
.healthcare-expertise .section-heading {
    margin-bottom: 60px;
}

/* CONTENT WRAPPER */
.expertise-content {
    display: flex;
    flex-direction: column;
    gap: 80px;
}

/* EACH BLOCK */
.content-block {
    display: flex;
    align-items: center;
    gap: 60px;
}

/* IMAGE LEFT, TEXT RIGHT */
.content-image {
    flex: 1;
    display: flex;
    justify-content: center;
}

.content-image img {
    max-width: 100%;
    height: auto;
    border-radius: 8px;
}

/* TEXT AREA */
.content-text {
    flex: 1;
    text-align: left;
}

.content-text h2 {
    margin-bottom: 20px;
}

.content-text .description {
    line-height: 1.8;
    color: black;
    margin-bottom: 15px;
}

/* TABLET */
@media (max-width: 991px) {
    .healthcare-expertise {
        padding: 60px 0;
    }

    .content-block {
        gap: 40px;
    }

    .content-text h3 {
        font-size: 24px;
    }
}

/* MOBILE */
@media (max-width: 767px) {
    .healthcare-expertise {
        padding: 50px 0;
    }

    .healthcare-expertise .section-heading {
        font-size: 23px;
        margin-bottom: 40px;
    }

    .content-block {
        flex-direction: column;
        text-align: center;
    }

    .content-text {
        order: 2;
    }

    .content-image {
        order: 1;
        margin-bottom: 30px;
    }

    .content-text h3 {
        font-size: 22px;
    }

    .content-text .description {
        font-size: 15px;
    }
}

/* SECTION */
.healthcare-services {
    padding: 10px 0 60px;
    text-align: center;
}

/* CONTAINER */
.healthcare-services .container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 20px;
}

/* HEADING */
.healthcare-services .section-heading {
    color: #0a2b6b;
    margin-bottom: 45px;
}

/* GRID */
.services-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 30px;
}

/* CARD */
.service-card {
    background-color: #e9f6ff;
    border: 1px solid #8cb7e8;
    border-radius: 16px;
    padding: 22px 22px;
    display: flex;
    align-items: flex-start;
    gap: 20px;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

/* HOVER */
.service-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 10px 30px rgba(0, 60, 120, 0.12);
}

.service-card-text {
    text-align: left;
}

/* ICON */
.healthcare-services .service-icon {
    border-radius: 50%;
    background-color: #ffffff;
    border: 1px solid #8cb7e8;
    display: flex;
    align-items: center;
    justify-content: center;
}

.healthcare-services .service-icon img {
    width: 36px;
    height: 36px;
    object-fit: contain;
}

/* TEXT */
.healthcare-services .service-card h3 {
    font-size: 18px;
    font-weight: 700;
    color: #012970;
    margin-bottom: 8px;
}

.healthcare-services .service-card p {
    color: black;
}

@media (max-width: 991px) {
    .services-grid {
        grid-template-columns: 1fr;
        gap: 24px;
    }

    .healthcare-services {
        padding: 20px 0 60px;
    }

    .healthcare-services .section-heading {
        font-size: 30px;
        margin-bottom: 40px;
    }

    .healthcare-container {
        display: flex;
        flex-direction: column-reverse;
    }
}

@media (max-width: 575px) {
    .service-card {
        flex-direction: column;
        align-items: center;
        text-align: center;
        padding: 24px;
        gap: 0px;
    }

    .service-card-text {
        text-align: center;
    }

    .service-icon {
        margin-bottom: 12px;
    }

    .service-card h3 {
        font-size: 17px;
    }

    .service-card p {
        font-size: 14px;
    }
}

/* ===============================
   Healthcare Future Section
================================ */
.healthcare-future {
    background-color: #FFF5F0;
    padding: 40px 20px;
    margin: 10px 0;
}

.healthcare-future .container {
    max-width: 1100px;
    margin: 0 auto;
    text-align: center;
}

/* Heading */
.healthcare-future .section-heading {
    margin-bottom: 17px;
}

/* Content wrapper */
.healthcare-future .future-content {
    max-width: 900px;
    margin: 0 auto;
}

/* Paragraphs */
.healthcare-future .description {
    line-height: 1.7;
    color: black;
    margin-bottom: 18px;
}

/* Button */
.healthcare-future .btn-primary {
    display: inline-block;
    margin-top: 24px;
    padding: 12px 28px;
    background-color: #f36a2d;
    /* orange button */
    color: #fff;
    font-size: 15px;
    font-weight: 600;
    border-radius: 6px;
    text-decoration: none;
    transition: all 0.3s ease;
}

.healthcare-future .btn-primary:hover {
    background-color: #e85d21;
    transform: translateY(-2px);
}

/* ===============================
   Responsive Styles
================================ */

/* Tablet */
@media (max-width: 992px) {
    .healthcare-future {
        padding: 60px 16px;
    }

    .healthcare-future .section-heading {
        font-size: 28px;
    }

    .healthcare-future .description {
        font-size: 15px;
    }
}

/* Mobile */
@media (max-width: 576px) {
    .healthcare-future {
        padding: 50px 14px;
    }

    .healthcare-future .section-heading {
        font-size: 24px;
        margin-bottom: 20px;
    }

    .healthcare-future .description {
        font-size: 14.5px;
        line-height: 1.6;
    }

    .healthcare-future .btn-primary {
        padding: 10px 22px;
        font-size: 14px;
    }
}

/* ===============================
   Retail POS Section
================================ */
.retail-pos-section {
    background-color: #ffffff;
    padding: 70px 20px;
}

.retail-pos-container {
    max-width: 1200px;
    margin: 0 auto;
    display: flex;
    align-items: center;
    gap: 60px;
}

/* ===============================
   Image Wrapper
================================ */
.retail-pos-img-wrapper {
    flex: 1;
    border-radius: 14px;
}

.retail-pos-img {
    width: 100%;
    height: auto;
    border-radius: 10px;
    display: block;
    object-fit: cover;
}

/* ===============================
   Content Wrapper
================================ */
.retail-pos-content-wrapper {
    flex: 1;
}

.retail-pos-title {
    margin-bottom: 18px;
}

.retail-pos-description {
    line-height: 1.7;
    color: black;
    margin-bottom: 21px;
}

/* ===============================
   Button
================================ */
.retail-pos-cta-button {
    display: inline-block;
    padding: 12px 26px;
    background-color: #f36a2d;
    color: #ffffff;
    font-size: 14.5px;
    font-weight: 600;
    border-radius: 6px;
    text-decoration: none;
    transition: all 0.3s ease;
}

.retail-pos-cta-button:hover {
    background-color: #e85d21;
    transform: translateY(-2px);
}

/* ===============================
   Responsive Styles
================================ */

/* Tablet */
@media (max-width: 992px) {
    .retail-pos-container {
        gap: 40px;
    }

    .retail-pos-title {
        font-size: 26px;
    }

    .retail-pos-description {
        font-size: 15px;
    }
}

/* Mobile */
@media (max-width: 768px) {
    .retail-pos-container {
        flex-direction: column;
        text-align: center;
    }

    .retail-pos-img-wrapper {
        max-width: 100%;
        display: flex;
        align-items: center;
        justify-content: center;
    }

    .retail-pos-title {
        font-size: 24px;
    }

    .retail-pos-description {
        font-size: 14.5px;
    }

    .retail-pos-cta-button {
        padding: 10px 22px;
        font-size: 14px;
    }
}

/* Small Mobile */
@media (max-width: 480px) {
    .retail-pos-section {
        padding: 60px 14px;
    }

    .retail-pos-title {
        font-size: 22px;
    }
}

/* ===============================
   Ecommerce Background Banner
================================ */
.retail-ecommerce-section {
    position: relative;
    background-size: cover;
    background-position: right center;
    background-repeat: no-repeat;
    padding: 80px 20px;
    min-height: 260px;
    display: flex;
    align-items: center;
}

/* Content */
.retail-ecommerce-container {
    position: relative;
    z-index: 2;
    max-width: 1200px;
    margin: 0 auto;
}

/* Text */
.retail-ecommerce-title {
    color: #ffffff;
    font-size: 28px;
    font-weight: 600;
    line-height: 1.4;
    max-width: 700px;
    padding-left: 18px;
    position: relative;
}

/* Accent vertical line */
.retail-ecommerce-title::before {
    content: "";
    position: absolute;
    left: 0;
    top: 6px;
    width: 4px;
    height: 80%;
    background: linear-gradient(to bottom, #3ba9ff, #00e0ff);
    border-radius: 2px;
}

.retail-pos-section {
    background-color: #DBF3FE;
}

.manufacturing-data-subtitle {
    font-size: 17px;
    color: black;
    font-weight: 600;
}

.manufature-data.retail-pos-section {
    background-color: white;
}

.logistics-content-image {
    display: flex;
    justify-content: center;
}

.logistics-content-image img {
    max-width: 90%;
    height: auto;
    border-radius: 8px;
}

.logistics-software-container {
    text-align: center;
    padding: 45px 0;
}

.logistics-software-main-title {
    text-align: center;
    margin-left: auto;
    margin-right: auto;
}

.logistics-software-main-description {
    text-align: center;
    margin: 14px auto 45px;
    color: black;
    max-width: var(--container);
}

.logistics-solution-box-item {
    text-align: center;
    padding: 50px 0;
}

.logistics-solution-box-title {
    color: white;
}

.logistics-solution-box-description {
    color: white;
    margin-block: 20px;
}

.logistics-solution-box-button {
    padding: 7px 17px;
    background-color: white;
    color: #EC6930;
    border-radius: 8px;
    transition: all ease-in 0.2s;
    font-weight: 600;
    text-decoration: none;
}

.logistics-solution-box-button:hover {
    background-color: #012970;
}

.logistic-manage {
    padding: 70px 0;
}

.transport-manage {
    padding: 70px 0;
    background-color: #DBF3FE;
}

.logistic-benefits {
    text-align: center;
    margin-block: 60px 20px
}

.logistic-points {
    margin: 40px 30px;
    text-align: left;
}

.logistic-container {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 32px 0 7px;
}

.logistic-GPS {
    padding: 70px 0 20px;
}

.construction-industry-point-text {
    margin-top: 15px;
}

.construction-technology {
    background-color: #FFF5F0;
    padding: 25px 0;
}

.on-demand-solution {
    padding: 30px 0px;
}

.on-demand-solution .retail-pos-img {
    width: 80%;
    height: auto;
    border-radius: 10px;
    display: block;
    object-fit: cover;
}

.on-demand-best .retail-pos-img {
    width: 70%;
    height: auto;
    border-radius: 10px;
    display: block;
    object-fit: cover;
}

.on-demand-expertise {
    padding: 50px 0 70px;
}

/* Tablet */
@media (max-width: 992px) {
    .retail-ecommerce-title {
        font-size: 24px;
        max-width: 100%;
    }
}

/* Mobile */
@media (max-width: 768px) {
    .retail-ecommerce-section {
        padding: 60px 16px;
        background-position: center;
    }

    .retail-ecommerce-title {
        font-size: 22px;
        padding-left: 0;
        text-align: center;
    }

    .retail-ecommerce-title::before {
        display: none;
    }

    .retail-expertise-container {
        display: flex;
        flex-direction: column-reverse;
    }

    .manufature-data .retail-pos-container {
        flex-direction: column-reverse;
    }
}

/* Small Mobile */
@media (max-width: 480px) {
    .logistics-software-main-description {
        margin: 14px 3px 45px;
    }

    .logistic-GPS {
        padding: 70px 0 0px;
    }

    .retail-ecommerce-title {
        font-size: 20px;
        line-height: 1.5;
    }

    .logistics-software-main-title {
        font-size: 20px;
    }

    .logistics-software-main-description {
        font-size: 15px;
    }

    .logistics-solution-box-title {
        font-size: 20px;
    }
}

/* =========================
   GENERAL STYLING
========================= */
.contact-heading-section {
    text-align: center;
    margin-block: 40px;
}

/* =========================
   CONTACT SECTION GRID
========================= */
.contact-form-info-section {
    padding: 15px 20px 60px;
    background-color: #fff;
}

.contact-container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 15px;
}

.contact-form-info-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 30px;
    align-items: stretch;
}

/* =========================
   FORM COLUMN
========================= */
.contact-form-column {
    background-color: #FFF5F0;
    padding: 30px;
    border-radius: 8px;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.05);
    border: 1px solid rgba(17, 51, 34, 0.35);
    order: 1;
}

.contact-form-group {
    margin-bottom: 20px;
}

.contact-form-label {
    display: block;
    margin-bottom: 6px;
    color: #676767;
    font-size: 14px;
}

.contact-form-input,
.contact-form-textarea {
    width: 100%;
    padding: 10px 15px;
    border: 1px solid #d1d5db;
    border-radius: 6px;
    font-size: 14px;
    outline: none;
    box-sizing: border-box;
}

.contact-form-input:focus,
.contact-form-textarea:focus {
    border-color: #db8f56;
    box-shadow: 0 0 5px rgba(219, 143, 86, 0.3);
}

/* TWO COLUMN FORM */
.contact-form-row {
    display: flex;
    gap: 20px;
}

.contact-form-half {
    flex: 1;
}

/* CAPTCHA & SUBMIT */
.contact-form-captcha-row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 20px;
    flex-wrap: wrap;
    margin-top: 20px;
}

.contact-form-captcha {
    flex: 0 0 auto;
}

.contact-form-submit-wrapper {
    flex: 0 0 auto;
}

.contact-form-submit-btn {
    background-color: #f36b2c;
    color: #fff;
    padding: 10px 25px;
    border: none;
    border-radius: 6px;
    cursor: pointer;
    font-weight: 600;
    transition: all 0.3s ease;
}

.contact-form-submit-btn:hover {
    background-color: #e55b1d;
}

/* =========================
   CONTACT INFO COLUMN
========================= */
.contact-info-column {
    display: flex;
    flex-direction: column;
    gap: 20px;
    order: 2;
}

.contact-info-address-block {
    padding: 20px;
    border-radius: 8px;
    background-color: #FFF5F0;
    border: 1px solid rgba(17, 51, 34, 0.35);
    display: flex;
    gap: 15px;
    align-items: flex-start;
}

.contact-info-icon img {
    width: 40px;
    height: 40px;
    object-fit: contain;
}

.contact-info-content {
    flex: 1;
}

.contact-info-address-heading {
    color: #012970;
    margin: 0 0 10px 0;
    font-size: 18px;
}

.contact-info-address-text {
    font-size: 14px;
    color: #000;
    line-height: 1.6;
    margin: 0;
}

/* DETAILS BLOCKS */
.contact-info-details-block {
    padding: 20px;
    border: 1px solid rgba(1, 41, 112, 0.4);
    background-color: #DBF3FE;
    border-radius: 8px;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.05);
}

.contact-info-details-heading {
    font-size: 16px;
    font-weight: 600;
    color: #0B2545;
    margin: 0 0 10px 0;
}

.contact-info-details-list {
    display: flex;
    flex-direction: column;
    gap: 5px;
}

.contact-info-details-item {
    color: black;
    text-decoration: none;
    font-size: 14px;
    word-break: break-word;
}

.contact-info-details-item:hover {
    text-decoration: underline;
}

/* =========================
   INFO GRID BELOW FORM
========================= */
.contact-info-section {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 30px;
    width: 100%;
    margin-block: 10px 40px;
}

/* =========================
   MAP
========================= */
.contact-map-wrapper {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 0 15px;
}

.contact-map-wrapper iframe {
    width: 89%;
    max-width: 100%;
    height: 350px;
    border-radius: 10px;
    border: 0;
    margin-bottom: 60px;
}

/* Button Styles */
.contact-hero-btn {
    background: #EC6930;
    font-family: 'DM Sans';
    padding: 12px 24px;
    border-radius: 6px;
    color: #fff;
    font-weight: 600;
    transition: 0.2s ease;
    white-space: nowrap;
    text-decoration: none;
    border: none;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 150px;
}

.contact-hero-btn:hover {
    opacity: 0.85;
    text-decoration: none;
    background-color: #012970;
}

.contact-hero-btn:disabled {
    opacity: 0.7;
    cursor: not-allowed;
}

/* Error and Success Messages */
.error-message,
.sent-message {
    text-align: center;
    margin-top: 15px;
    font-weight: 500;
    padding: 12px 15px;
    border-radius: 5px;
    display: none;
}

.error-message {
    background-color: #f8d7da;
    color: #721c24;
    border: 1px solid #f5c6cb;
}

.sent-message {
    background-color: #d4edda;
    color: #155724;
    border: 1px solid #c3e6cb;
}

/* Spinner */
.spinner {
    border: 2px solid #f3f3f3;
    border-top: 2px solid #fff;
    border-radius: 50%;
    width: 14px;
    height: 14px;
    display: inline-block;
    animation: spin 0.8s linear infinite;
    margin-right: 8px;
}

@keyframes spin {
    0% {
        transform: rotate(0deg);
    }

    100% {
        transform: rotate(360deg);
    }
}

/* =========================
   RESPONSIVE BREAKPOINTS
========================= */

/* -------- TABLET (991px and below) -------- */
@media (max-width: 991px) {
    .contact-form-info-grid {
        grid-template-columns: 1fr;
        gap: 25px;
    }

    /* INFO FIRST, FORM BELOW */
    .contact-info-column {
        order: 1;
    }

    .contact-form-column {
        order: 2;
    }

    .contact-form-row {
        flex-direction: column;
        gap: 0;
    }

    .contact-info-section {
        grid-template-columns: repeat(2, 1fr);
        gap: 20px;
    }

    .contact-container {
        padding: 0 20px;
    }
}

/* -------- MOBILE (768px and below) -------- */
@media (max-width: 768px) {
    .contact-heading-section {
        margin-block: 30px;
    }

    .contact-form-info-section {
        padding: 15px 10px 40px;
    }

    .contact-container {
        padding: 0 10px;
    }

    .contact-form-column {
        padding: 20px 15px;
    }

    .contact-info-address-block,
    .contact-info-details-block {
        padding: 15px;
    }

    .contact-info-section {
        grid-template-columns: 1fr;
        gap: 15px;
        margin-block: 10px 30px;
    }

    .contact-form-captcha-row {
        flex-direction: column;
        align-items: stretch;
        gap: 15px;
    }

    .contact-form-captcha {
        width: 100%;
        display: flex;
        justify-content: center;
    }

    .g-recaptcha {
        transform: scale(0.9);
        transform-origin: center;
    }

    .contact-form-submit-wrapper {
        width: 100%;
    }

    .contact-hero-btn {
        width: 100%;
        justify-content: center;
    }

    .contact-map-wrapper {
        padding: 0 10px;
    }

    .contact-map-wrapper iframe {
        width: 100%;
        height: 280px;
        margin-bottom: 40px;
    }

    .contact-info-address-block {
        flex-direction: column;
        text-align: center;
        align-items: center;
    }

    .contact-info-icon img {
        width: 35px;
        height: 35px;
    }
}

/* -------- SMALL MOBILE (480px and below) -------- */
@media (max-width: 480px) {
    .contact-heading-section {
        margin-block: 20px;
        padding: 0 10px;
    }

    .contact-heading-section h2 {
        font-size: 24px;
    }

    .contact-form-info-section {
        padding: 10px 5px 30px;
    }

    .contact-container {
        padding: 0 5px;
    }

    .contact-form-column {
        padding: 15px;
    }

    .contact-form-label {
        font-size: 13px;
    }

    .contact-form-input,
    .contact-form-textarea {
        padding: 8px 12px;
        font-size: 13px;
    }

    .contact-form-captcha-row {
        gap: 12px;
    }

    /* Scale down reCAPTCHA on very small screens */
    .g-recaptcha {
        transform: scale(0.85);
        transform-origin: center;
    }

    .contact-hero-btn {
        padding: 12px 20px;
        font-size: 14px;
        width: 100%;
    }

    .contact-info-details-block {
        padding: 12px;
    }

    .contact-info-details-heading {
        font-size: 15px;
    }

    .contact-info-details-item {
        font-size: 13px;
    }

    .contact-map-wrapper iframe {
        height: 240px;
        margin-bottom: 30px;
    }

    .error-message,
    .sent-message {
        font-size: 13px;
        padding: 10px;
    }
}

/* -------- EXTRA SMALL MOBILE (360px and below) -------- */
@media (max-width: 360px) {

    .contact-form-column,
    .contact-info-column {
        width: 100%;
    }

    .contact-form-column {
        padding: 12px;
    }

    .contact-heading-section h2 {
        font-size: 20px;
    }

    /* Further scale down reCAPTCHA */
    .g-recaptcha {
        transform: scale(0.77);
        transform-origin: center;
    }

    .contact-form-input,
    .contact-form-textarea {
        font-size: 12px;
    }

    .contact-hero-btn {
        font-size: 13px;
        padding: 10px 16px;
    }

    .contact-map-wrapper iframe {
        height: 220px;
    }
}

/* ------------------------
   REVIEWS SECTION
-------------------------*/
.reviews-section {
    margin-block: 60px;
}

.reviews-header {
    display: flex;
    gap: 40px;
    align-items: center;
}

/* ------------------------
   LEFT SIDE
-------------------------*/
.review-left {
    width: 45%;
}

.reviews-header-img {
    border-radius: 18px;
    overflow: hidden;
}

.reviews-header-img img {
    width: 90%;
    height: auto;
    display: block;
}

/* SOCIAL ICONS */
.reviews-social-icons {
    display: flex;
    gap: 12px;
    margin-top: 20px;
}

.social-icon img {
    width: 60px;
    height: 60px;
}

.social-icon {
    transition:
        transform 0.6s ease,
        box-shadow 0.3s ease;
}

.social-icon:hover {
    transform: translateY(-3px) rotate(360deg);
}

/* ------------------------
   RIGHT SIDE CONTENT
-------------------------*/
.review-content {
    width: 55%;
}

.reviews-title {
    color: #012970;
    margin-bottom: 12px;
}

.reviews-desc {
    line-height: 1.7;
    color: black;
    margin-bottom: 25px;
    position: relative;
    padding-left: 25px;
}

.reviews-desc::before {
    content: "“";
    font-size: 36px;
    color: #ff6a00;
    position: absolute;
    left: 8px;
    top: -13px;
}

.reviews-desc::after {
    content: "“";
    font-size: 36px;
    color: #ff6a00;
    position: absolute;
    left: 304px;
    top: -2px;
    rotate: 180deg;
}

/* ------------------------
   REVIEW IMAGES GRID
-------------------------*/
.reviews-images-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 18px;
}

.review-img-item {
    perspective: 1000px;
}

.review-img-item img {
    max-width: 90%;
    height: auto;
    transition: transform 0.6s ease;
}

.review-img-item:hover img {
    transform: scale(1.08) rotateZ(-2deg);
}

.erp-do-section {
    padding: 55px 0 0;
    background: #ffffff;
}

.erp-do-wrapper {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 160px;
}

/* ==========================
   LEFT CONTENT
========================== */

.erp-do-content {
    flex: 1;
    max-width: 560px;
}

.erp-do-heading {
    margin-bottom: 14px;
}

.erp-do-desc {
    color: black;
    margin-bottom: 18px;
}

.erp-do-sub {
    font-size: 17px;
    font-weight: 700;
    color: black;
    margin-bottom: 14px;
}

/* ==========================
   LIST STYLING
========================== */

.erp-do-list {
    list-style: none;
    padding: 0;
    margin: 0 0 26px;
}

.erp-do-point {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    color: black;
    margin-bottom: 8px;
}

.erp-do-icon {
    width: 16px;
    height: 16px;
    margin-top: 3px;
}

/* ==========================
   RIGHT IMAGE
========================== */

.erp-do-image {
    flex: 1;
    text-align: right;
}

.erp-do-image img {
    max-width: 86%;
    height: auto;
}

.erp-work-grid {
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
}

/* ------------------------
   RESPONSIVE
-------------------------*/
@media (max-width: 1100px) {
    .reviews-desc::after {
        content: "“";
        font-size: 38px;
        color: #ff6a00;
        position: absolute;
        left: 317px;
        top: -6px;
        rotate: 180deg;
    }
}

@media (max-width: 1082px) {
    .reviews-desc::after {
        content: "“";
        font-size: 38px;
        color: #ff6a00;
        position: absolute;
        left: 387px;
        top: -6px;
        rotate: 180deg;
    }
}

@media (max-width: 992px) {
    .reviews-header {
        flex-direction: column;
        gap: 30px;
    }

    .reviews-social-icons {
        justify-content: center;
    }

    .reviews-desc::after {
        display: none;
    }

    .reviews-header-img {
        display: flex;
        align-items: center;
        justify-content: center;
    }

    .social-icon img {
        width: 50px;
        height: 50px;
    }

    .review-left,
    .review-content {
        width: 100%;
    }

    .reviews-images-grid {
        grid-template-columns: repeat(3, 1fr);
    }

    .erp-do-wrapper {
        flex-direction: column;
        gap: 40px;
    }

    .erp-do-image {
        text-align: center;
    }

    .erp-do-content {
        max-width: 100%;
    }

    .erp-do-list {
        text-align: left;
        margin: 0 auto 26px;
    }

    .erp-work-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 576px) {
    .reviews-title {
        font-size: 22px;
    }

    .social-icon img {
        width: 40px;
        height: 40px;
    }

    .reviews-desc {
        font-size: 14px;
    }

    .reviews-images-grid {
        grid-template-columns: 1fr;
        text-align: center;
    }

    .reviews-social-icons {
        justify-content: center;
    }

    .erp-do-section {
        padding: 50px 0 0;
    }

    .erp-do-heading {
        font-size: 21px;
    }

    .work-sub {
        font-size: 16px;
    }

    .erp-do-desc {
        font-size: 14px;
    }

    .erp-do-point {
        font-size: 13px;
    }

    .erp-do-btn {
        padding: 10px 22px;
        font-size: 13px;
    }

    .erp-work-grid {
        grid-template-columns: repeat(1, 1fr);
    }
}

/* ==========================
   ERP SOLUTION HERO SECTION
========================== */

.erp-solution-section {
    position: relative;
    width: 100%;
    min-height: 260px;
    display: flex;
    align-items: center;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    padding: 40px 0;
}

/* Light overlay for text readability */
.erp-solution-section::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 1;
}

.erp-solution-section .container {
    position: relative;
    z-index: 2;
}

/* ==========================
   CONTENT
========================== */

.erp-solution-content {
    max-width: 900px;
    margin: 0 auto;
    text-align: center;
}

/* Heading */
.erp-solution-heading {
    color: #021B42;
    margin-bottom: 16px;
    line-height: 1.3;
}

/* Description */
.erp-solution-desc {
    color: black;
    line-height: 1.7;
    max-width: 780px;
    margin: 0 auto;
}

.erp-flexibility-item {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 13px;
}

.erp-flexibility-point {
    color: black;
}

.erp-experience-section {
    padding: 15px 0 10px;
}

.erp-flexibility-section {
    padding: 15px 0 50px;
}

.erp-experience-wrapper {
    gap: 30px;
}

.devops-banner-desc {
    color: white;
}

.life-do-list {
    display: flex;
    gap: 15px;
    align-items: flex-start;
}

/* Left side single image */
.life-do-list>img {
    width: 16px;
    margin-top: 6px;
}

/* Right side list */
.life-do-list>div {
    display: flex;
    flex-direction: column;
    gap: 14px;
}

/* List style remove */
.life-do-list li {
    list-style: none;
    position: relative;
    font-size: 16px;
    line-height: 1.6;
}

.life-do-point {
    font-weight: 600;
    color: black;
}

.life-grow-card h3 {
    font-size: 17px;
    font-weight: 800;
    background: #012970;
    padding: 7px 17px;
    border-radius: 20px;
    display: inline-block;
    margin: 15px 15px 15px 15px;
    color: #EC6930;
}

.life-join-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    margin-top: 34px;
}

.join-point {
    display: flex;
    align-items: center;
    gap: 6px;
}


/* ==========================
   RESPONSIVE
========================== */

/* Tablets */
@media (max-width: 991px) {
    .erp-solution-section {
        padding: 50px 0;
    }

    .erp-experience-wrapper {
        display: flex;
        flex-direction: column-reverse;
    }

    .erp-solution-heading {
        font-size: 28px;
    }

    .erp-solution-desc {
        font-size: 15px;
    }

    .life-join-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .life-do-list>img {
        margin-top: 3px;
    }
}

/* Mobile */
@media (max-width: 575px) {
    .erp-solution-section {
        padding: 40px 0;
    }

    .erp-solution-heading {
        font-size: 22px;
    }

    .erp-solution-desc {
        font-size: 14px;
        line-height: 1.6;
    }

    .life-join-grid {
        grid-template-columns: repeat(1, 1fr);
    }
}

/* 
    Clients
 */

/* Clients Do Section */
.clients-do {
    max-width: 900px;
    margin: 0 auto;
    padding: 55px 0px;
    text-align: center;
}

/* Heading */
.do-heading {
    margin-bottom: 16px;
}

/* Description */
.do-desc {
    color: black;
    max-width: 720px;
    margin: 0 auto;
    line-height: 1.8;
}

.clients-work-section {
    padding: 20px 0;
    margin: 0 0 40px 0;
    background-color: #DBF3FE;
}

.clients-work-img {
    width: 88%;
    height: 100%;
}

.clients-work-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.clients-points {
    padding: 20px 0;
    background: #ffffff;
}

.client-work-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    column-gap: 50px;
    row-gap: 40px;
}

/* =========================
   Clients CARD
========================= */

.clients-work-card {
    display: flex;
    align-items: flex-start;
    gap: 20px;
}

.clients-card-heading {
    color: #012970;
    margin-bottom: 8px;
}

.clients-card-desc {
    font-size: 15px;
    color: black;
}

.clients-card-icon {
    width: 86px;
    height: 86px;
}

.client-why-sub {
    font-weight: 700;
    color: black;
}

.client-why-sub-desc {
    color: black;
    margin-top: 4px;
}

.clients-experience-wrapper {
    gap: 80px;
}

/* Responsive */
@media (max-width: 768px) {
    .life-do-list li {
        font-size: 14px;
    }

    .clients-card-heading {
        font-size: 18px;
        font-weight: 700;
    }

    .clients-card-desc {
        font-size: 14px;
    }

    .client-why-sub-desc {
        font-size: 13px;
    }

    .clients-experience-wrapper {
        gap: 40px;
    }

    .clients-work-img {
        height: auto;
    }

    .clients-work-img img {
        height: auto;
    }

    .do-heading {
        font-size: 17px;
    }

    .do-desc {
        font-size: 13.5px;
    }

    .client-work-grid {
        grid-template-columns: repeat(1, 1fr);
    }

    .clients-card-icon {
        width: 60px;
        height: 60px;
    }

    .clients-points {
        padding: 30px 0;
    }
}

@media (max-width: 322px) {
    .life-do-list li {
        font-size: 13px;
    }
}

/* ASP DotNet */
.aspnet-main {
    padding: 60px 0 80px;
}

/* Container */
.aspnet-main .container {
    max-width: 1200px;
    margin: auto;
    padding: 0 20px;
}

/* Content + Image Layout */
.aspnet-content-wrapper {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 50px;
}

/* Text Area */
.aspnet-content-text {
    flex: 1;
    max-width: 520px;
}

.aspnet-content-heading {
    margin-bottom: 20px;
}

.aspnet-content-desc {
    line-height: 1.7;
    color: black;
}

/* Image Card */
.aspnet-content-image {
    flex: 1;
    display: flex;
    justify-content: center;
    position: relative;
}

.aspnet-content-image img {
    max-width: 100%;
}

/* Bottom Main Diagram Image */
.aspnet-main-image {
    display: flex;
    justify-content: center;
    margin-top: 40px;
}

.aspnet-main-image img {
    max-width: 80%;
}


.aspnet-cards {
    padding: 0px 0 60px;
    background-color: #ffffff;
}

/* GRID */
.aspnet-cards-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 30px;
}

/* CARD */
.aspnet-card {
    border: 1.5px solid #6c7fd8;
    border-radius: 18px;
    text-align: center;
    background-color: #fff;
    transition: all 0.3s ease;
}

.aspnet-card:hover {
    transform: translateY(-6px);
}

.card-content {
    border-bottom: 1px solid #6c7fd8;
    padding: 18px;
    min-height: 200px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

/* ICON */

.aspnet-card-icon img {
    height: 78px;
    object-fit: contain;
}

/* HEADING */
.aspnet-card-heading {
    font-size: 20px;
    font-weight: 700;
    color: #012970;
    margin-block: 10px;
    line-height: 1.4;
}

/* POINTS */
.aspnet-card-points {
    list-style: none;
    margin: 0;
    text-align: left;
    padding: 23px;
}

.aspnet-card-points li {
    position: relative;
    padding-left: 18px;
    margin-bottom: 14px;
    font-size: 15px;
    color: black;
    line-height: 1.6;
}

/* ORANGE DOT */
.aspnet-card-points li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 9px;
    width: 7px;
    height: 7px;
    background-color: #f26a21;
    border-radius: 50%;
}



/* ==========================
   Responsive Design
========================== */

@media (max-width: 992px) {
    .aspnet-content-wrapper {
        flex-direction: column;
        text-align: center;
    }

    .aspnet-content-text {
        max-width: 100%;
    }

    .aspnet-content-heading {
        font-size: 28px;
    }

    .aspnet-cards-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 576px) {
    .aspnet-main {
        padding: 50px 0;
    }

    .aspnet-content-heading {
        font-size: 24px;
    }

    .aspnet-content-desc {
        font-size: 15px;
    }

    .aspnet-cards-grid {
        grid-template-columns: 1fr;
    }

}

/* ===================================
   OUR WORK PAGE STYLES
   =================================== */

:root {
    --primary-orange: #FF6B35;
    --accent-orange: #FF8C5F;
    --dark-gray: #2C3338;
    --medium-gray: #5F6368;
    --light-gray: #E8E8E8;
    --white: #FFFFFF;
    --text-dark: #1A1A1A;
    --text-light: #6B7280;
    --border-color: #DCDCDC;
    --shadow-sm: 0 2px 8px rgba(0, 0, 0, 0.08);
    --shadow-md: 0 4px 16px rgba(0, 0, 0, 0.12);
    --shadow-lg: 0 8px 32px rgba(0, 0, 0, 0.16);
    --transition-smooth: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}


/* Our Work Section */
.our-work-section {
    padding: 80px 0;
}

/* Heading */
.work-heading-cover {
    text-align: center;
}

.work-heading {
    margin: 0 0 60px 0;
    letter-spacing: -0.02em;
    line-height: 1.2;
    animation: fadeInUp 0.6s ease-out;
    color: #012970;
}

@keyframes fadeInUp {
    from {
        opacity: 0;
        transform: translateY(30px);
    }

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

@media (max-width: 768px) {
    .work-heading {
        font-size: 36px;
        margin-bottom: 40px;
    }
}

/* Tabs Navigation */
.work-tabs {
    display: flex;
    gap: 12px;
    justify-content: center;
    flex-wrap: wrap;
    margin-bottom: 60px;
    animation: fadeInUp 0.6s ease-out 0.2s both;
}

.tab-button {
    font-size: 17px;
    font-weight: 400;
    padding: 12px 28px;
    border: 0.5px solid #EC6930;
    background: #FFF5F0;
    color: black;
    border-radius: 6px;
    cursor: pointer;
    transition: var(--transition-smooth);
    position: relative;
    overflow: hidden;
    letter-spacing: 0.01em;
    width: 160px;
}

.tab-button::before {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    width: 0;
    height: 0;
    border-radius: 50%;
    background: var(--primary-orange);
    transform: translate(-50%, -50%);
    transition: width 0.4s ease, height 0.4s ease;
    z-index: -1;
}

.tab-button:hover {
    background: #EC6930;
    border-color: #EC6930;
    color: white;
}

.tab-button.active {
    background: #EC6930;
    border-color: #EC6930;
    color: white;
}

.tab-button.active::before {
    width: 100%;
    height: 100%;
}

@media (max-width: 768px) {
    .work-tabs {
        gap: 8px;
        margin-bottom: 40px;
    }

    .tab-button {
        padding: 10px 20px;
        font-size: 14px;
    }
}

/* Project Card Wrapper */
.project-content {
    border: 1px solid #EC6930;
    border-radius: 31px;
    overflow: hidden;
    margin-bottom: 40px;
    background: #fff;
}

.project-image {
    width: 100%;
    margin-top: 0px;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #fff;
}

/* Image */
.project-image img {
    width: 100%;
    height: auto;
    max-height: 100%;
    object-fit: contain;
    display: block;
}

/* Sidebar Content */
.project-sidebar {
    padding: 23px 28px;
}

/* Title */
.project-title {
    font-size: 23px;
    font-weight: 600;
}

/* Description */
.project-description {
    color: #000;
    margin: 10px 0;
}

/* Buttons Wrapper */
.project-buttons {
    display: flex;
    justify-content: flex-end;
    gap: 20px;
}

/* Buttons */
.btn-case-study,
.btn-talk {
    background-color: #EC6930;
    color: #fff;
    padding: 10px 20px;
    border-radius: 6px;
    font-weight: 600;
    transition: all 0.2s ease-in;
}

.btn-case-study:hover,
.btn-talk:hover {
    background-color: #012970;
}

/* Tablet */
@media (max-width: 768px) {
    .project-image {
        aspect-ratio: 16 / 6;
        padding: 10px;
    }

    .project-image img {
        max-width: 100%;
        max-height: 100%;
        height: auto;
        object-fit: contain;
    }

    .project-sidebar {
        padding: 18px 20px;
    }
}

/* Mobile */
@media (max-width: 480px) {
    .project-title {
        font-size: 15px;
    }

    .project-description {
        font-size: 14px;
    }

    .project-content {
        border-radius: 10px;
    }

    .project-image {
        aspect-ratio: 16 / 7;
        padding: 0px;
    }

    .project-image img {
        max-width: 100%;
        max-height: 100%;
        height: auto;
        object-fit: contain;
    }

    .project-sidebar {
        padding: 12px 14px;
    }

    .btn-case-study,
    .btn-talk {
        padding: 7px 14px;
        font-size: 14px;
    }

    .project-buttons {
        justify-content: center;
    }

    .work-heading {
        font-size: 25px;
    }

    .our-work-section {
        padding: 40px 0 10px;
    }
}

/* ===== SECTION 2: WinForms Section 2 ===== */
.winforms-section-2 {
    padding: 60px 0;
    background-color: #DBF3FE;
}



.winforms-section-2 .winforms-content-wrapper {
    display: flex;
    align-items: center;
    gap: 40px;
    flex-wrap: wrap;
}

.winforms-section-2 .winforms-content-text {
    flex: 1;
    min-width: 300px;
}

.winforms-section-2 .winforms-content-heading {
    /* font-size: 2.2rem;
    font-weight: 600;
    color: #2563eb; */
    margin-bottom: 20px;
    line-height: 1.3;
}

.winforms-section-2 .winforms-content-desc {
    font-size: 1rem;
    line-height: 1.6;
    color: black;
    margin-bottom: 18px;
}

.winforms-section-2 .winforms-content-desc:last-child {
    margin-bottom: 0;
}

.winforms-section-2 .winforms-content-image {
    flex: 1;
    min-width: 300px;
    text-align: center;
}

.winforms-section-2 .winforms-content-image img {
    max-width: 100%;
    height: auto;
    border-radius: 10px;
}

/* ===== SECTION 4: WinForms Section 4 ===== */
.winforms-section-4 {
    padding: 60px 0;
    background-color: #FFF5F0;
    margin-bottom: 30px;
}



.winforms-section-4 .winforms-content-wrapper {
    display: flex;
    align-items: center;
    gap: 40px;
    flex-wrap: wrap;
}

.winforms-section-4 .winforms-content-text {
    flex: 1;
    min-width: 300px;
}

.winforms-section-4 .winforms-content-heading {

    margin-bottom: 20px;
    line-height: 1.3;
}

.winforms-section-4 .winforms-content-desc {
    font-size: 1rem;
    line-height: 1.6;
    margin-bottom: 18px;
    color: black;
}

.winforms-section-4 .winforms-content-desc:last-child {
    margin-bottom: 0;
}

.winforms-section-4 .winforms-content-image {
    flex: 1;
    min-width: 300px;
    text-align: center;
}

.winforms-section-4 .winforms-content-image img {
    max-width: 100%;
    height: auto;
    border-radius: 10px;

}

.winform-3 {
    background: #DBF3FE;
    text-align: center;
    border: 1px solid #012970;
    padding: 23px;
    border-radius: 20px;
    margin-bottom: 30px;
}

/* ===== RESPONSIVE DESIGN FOR SECTIONS 2 & 4 ===== */
@media (max-width: 768px) {

    .winforms-section-2 .winforms-content-wrapper,
    .winforms-section-4 .winforms-content-wrapper {
        flex-direction: column-reverse;
        text-align: center;
        gap: 30px;
    }

    .winforms-section-2 .winforms-content-heading,
    .winforms-section-4 .winforms-content-heading {
        font-size: 1.8rem;
    }

    .winforms-section-2,
    .winforms-section-4 {
        padding: 40px 0;
    }

    .winforms-section-2 .winforms-content-text,
    .winforms-section-4 .winforms-content-text {
        min-width: auto;
    }

    .winforms-section-2 .winforms-content-image,
    .winforms-section-4 .winforms-content-image {
        min-width: auto;
    }

}

@media (max-width: 480px) {

    .winforms-section-2 .winforms-content-heading,
    .winforms-section-4 .winforms-content-heading {
        font-size: 1.6rem;
        margin-bottom: 15px;
    }

    .winforms-section-2 .winforms-content-desc,
    .winforms-section-4 .winforms-content-desc {
        font-size: 0.95rem;
        margin-bottom: 15px;
    }

    .winforms-section-2,
    .winforms-section-4 {
        padding: 30px 0;
    }

    .winforms-section-2 .winforms-content-wrapper,
    .winforms-section-4 .winforms-content-wrapper {
        gap: 25px;
    }
}

/* ===== ADDITIONAL STYLES FOR BETTER PRESENTATION ===== */
.winforms-section-2 .winforms-content-image img:hover,
.winforms-section-4 .winforms-content-image img:hover {
    transform: translateY(-2px);
    transition: transform 0.3s ease;
}


/* Focus styles for accessibility */
.winforms-section-2 .winforms-content-image img:focus,
.winforms-section-4 .winforms-content-image img:focus {
    outline: 2px solid #2563eb;
    outline-offset: 2px;
}

/* .NET Core 9 Image Section Styles */
.dotnet-core9-section {
    padding: 30px 0 30px 0;
}

.dotnet-core9-image-wrapper {
    text-align: center;
    max-width: 100%;
    margin: 0 auto;
}

.dotnet-core9-image {
    max-width: 100%;
    height: auto;
    border-radius: 12px;
    transition: transform 0.3s ease;
}




/* Responsive Design */
@media (max-width: 1024px) {
    .dotnet-core9-section {
        padding: 30px 0 50px;
    }
}

@media (max-width: 768px) {
    .dotnet-core9-section {
        padding: 30px 0 30px;
    }

    .dotnet-core9-image {
        border-radius: 8px;
    }

    .Nop-commerce-image {
        width: 100%;

    }
}

@media (max-width: 480px) {
    .dotnet-core9-section {
        padding: 20px 0 20px;
    }

    .dotnet-core9-image {
        border-radius: 6px;
    }

    .Nop-commerce-image {
        width: 100%;
    }
}

/* Umbraco CMS 2 Section Styles */
.umbraco-cms2-section {
    padding: 60px 0;
    background: #DBF3FE;
}

.umbraco-cms2-grid {
    display: flex;
    flex-wrap: wrap;
    gap: 30px;
    max-width: 1200px;
    margin: 0 auto;
    justify-content: center;
}

.umbraco-cms2-card {
    background: #ffffff;
    border-radius: 20px;
    overflow: hidden;
    transition: all 0.3s ease;
    display: flex;
    flex-direction: column;
    min-height: 350px;
    border: 1px solid #012970;
    flex: 1 1 calc(33.333% - 20px);
    max-width: calc(33.333% - 20px);
}

.umbraco-cms2-card:hover {
    transform: translateY(-5px);
}

.umbraco-cms2-header {
    background: #012970;
    text-align: center;
    min-height: 100px;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 0px 10px;
}

.umbraco-cms2-title {
    color: #ffffff;
    font-size: 1.2rem;
    font-weight: 600;
    margin: 0;
    line-height: 1.4;
}

.umbraco-cms2-content {
    padding: 25px;
    flex-grow: 1;
    display: flex;
    align-items: center;
    background-color: #FFF5F0;
}

.umbraco-cms2-description {
    color: #000000;
    font-size: 0.95rem;
    line-height: 1.6;
    margin: 0;
    text-align: center;
}

/* Responsive Design */
@media (max-width: 1024px) {
    .umbraco-cms2-section {
        padding: 50px 0;
    }

    .umbraco-cms2-grid {
        gap: 25px;
    }

    .umbraco-cms2-card {
        min-height: 260px;
    }

    .umbraco-cms2-title {
        font-size: 1.1rem;
    }

    .umbraco-cms2-description {
        font-size: 0.9rem;
    }

    .Nop-commerce-image {
        width: 100%;
    }
}

/* Tablet View - 2 cards per row */
@media (max-width: 768px) {
    .umbraco-cms2-section {
        padding: 40px 0;
    }

    .umbraco-cms2-grid {
        gap: 20px;
    }

    .umbraco-cms2-card {
        flex: 1 1 calc(50% - 10px);
        max-width: calc(50% - 10px);
        min-height: 240px;
    }

    .umbraco-cms2-header {
        padding: 18px 20px;
    }

    .umbraco-cms2-title {
        font-size: 1.05rem;
    }

    .umbraco-cms2-content {
        padding: 20px;
    }

    .umbraco-cms2-description {
        font-size: 0.9rem;
        line-height: 1.5;
    }
}

/* Mobile View - 1 card per row */
@media (max-width: 480px) {
    .umbraco-cms2-section {
        padding: 30px 0;
    }

    .umbraco-cms2-grid {
        gap: 15px;
    }

    .umbraco-cms2-card {
        flex: 1 1 100%;
        max-width: 100%;
        min-height: 220px;
    }

    .umbraco-cms2-header {
        padding: 15px 18px;
    }

    .umbraco-cms2-title {
        font-size: 1rem;
    }

    .umbraco-cms2-content {
        padding: 18px;
    }

    .umbraco-cms2-description {
        font-size: 0.85rem;
    }
}

.flutter-section-2 {
    margin-bottom: 60px;
}

.mssql-arrow {
    width: 15px;
    margin-right: 10px;
}

.mssql-li {
    list-style: none;
    display: flex;
    align-items: center;
}

.li-bold {
    font-weight: 600;
    margin-bottom: 8px;
}

/* ========================================
   BLOG DETAIL PAGE STYLES - UPDATED DESIGN
   ======================================== */

/* Blog Detail Wrapper */
.blog-detail-wrapper {
    padding: 30px 0 80px;
    background: #ffffff;
}

.blog-detail-container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 20px;

}

.blog-heading-section {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    text-align: center;
}

/* Main Heading */
.blog-detail-main-heading {
    font-size: 30px;
    font-weight: 700;
    line-height: 1.3;
    color: #012970;
    letter-spacing: -1.0px;
    max-width: 800px;
}

/* Meta Information (Date & Author) */
.blog-detail-meta {
    display: flex;
    align-items: center;
    gap: 4px;
    margin-bottom: 40px;
}

.blog-detail-date {
    font-size: 14px;
    font-weight: 400;
    color: #64748b;
}

.blog-detail-separator {
    color: #cbd5e1;
    font-size: 14px;
}

.blog-detail-author {
    font-size: 16px;
    font-weight: 600;
    color: #676766;
}

/* Featured Image & Intro Content Wrapper */
.blog-detail-top-section {
    display: grid;
    grid-template-columns: 560px 1fr;
    gap: 40px;
    margin-bottom: 50px;
    align-items: start;
}

/* Featured Image */
.blog-detail-featured-image {
    border-radius: 12px;
    overflow: hidden;
    position: sticky;
    top: 20px;
}

.blog-detail-img {
    width: 100%;
    height: auto;
    display: block;
    object-fit: cover;
}

/* Introduction Content */
.blog-detail-intro-content {
    padding-top: 0;
}

.blog-detail-intro-content {
    font-size: 18px;
    font-weight: 400;
    line-height: 1.6;
    margin: 0 0 18px 0;
}

.blog-detail-intro-content p:last-child {
    margin-bottom: 0;
}

/* Content Sections */
.blog-detail-content-sections {
    margin-top: 50px;
    counter-reset: section-counter;
}

.blog-detail-section {
    margin-bottom: 40px;
    position: relative;
}

.blog-detail-section:last-child {
    margin-bottom: 0;
}

/* Section Heading with Numbered Icon */
.blog-detail-section-heading {
    font-size: 26px;
    font-weight: 700;
    line-height: 1.4;
    color: #012970;
    margin: 0 0 12px 0;
    display: flex;
    align-items: center;
    gap: 14px;
    counter-increment: section-counter;
}

.blog-detail-heading-icon {
    width: 28px;
    height: 28px;
    /* background: #012970; */
    background: radial-gradient(#EC6930, #012970);
    color: #ffffff;
    font-size: 14px;
    font-weight: 700;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    margin-top: 0;
}

/* .blog-detail-section::before {
    content: '';
    width: 2px;
    height: 20px;
    background-color: #012970;
    display: block;
    position: absolute;
    top: 10px;
    left: 10px;
} */

/* Section Content */
.blog-detail-section-content {
    padding-left: 42px;
}

.blog-detail-section-content {
    font-size: 16px;
    font-weight: 400;
    line-height: 1.75;
    color: #000000;
    margin: 0 0 14px 0;
}

.blog-detail-section-content p:last-child {
    margin-bottom: 0;
}

/* Lists in content */
.blog-detail-section-content ul,
.blog-detail-intro-content ul {
    list-style: none;
    padding: 0;
    margin: 16px 0;
}

.blog-detail-section-content ul li,
.blog-detail-intro-content ul li {
    font-size: 15px;
    font-weight: 400;
    line-height: 1.75;
    color: #475569;
    margin-bottom: 10px;
    padding-left: 0;
    position: relative;
}

.blog-detail-section-content ul li:last-child,
.blog-detail-intro-content ul li:last-child {
    margin-bottom: 0;
}

.blog-detail-section-content ol,
.blog-detail-intro-content ol {
    padding-left: 24px;
    margin: 16px 0;
}

.blog-detail-section-content ol li,
.blog-detail-intro-content ol li {
    font-size: 15px;
    font-weight: 400;
    line-height: 1.75;
    color: #475569;
    margin-bottom: 10px;
}

/* Strong/Bold text in content */
.blog-detail-section-content strong,
.blog-detail-intro-content strong,
.blog-detail-section-content b,
.blog-detail-intro-content b {
    font-weight: 600;
    color: #1e293b;
}

/* Links in content */
.blog-detail-section-content a,
.blog-detail-intro-content a {
    color: #3b82f6;
    text-decoration: none;
    transition: color 0.2s ease;
}

.blog-detail-section-content a:hover,
.blog-detail-intro-content a:hover {
    color: #2563eb;
    text-decoration: underline;
}

/* Code blocks */
.blog-detail-section-content code,
.blog-detail-intro-content code {
    background-color: #f1f5f9;
    padding: 2px 6px;
    border-radius: 4px;
    font-size: 14px;
    color: #334155;
}

.blog-detail-section-content pre,
.blog-detail-intro-content pre {
    background-color: #f1f5f9;
    padding: 16px;
    border-radius: 8px;
    overflow-x: auto;
    margin: 16px 0;
}

.blog-detail-section-content pre code,
.blog-detail-intro-content pre code {
    background: none;
    padding: 0;
}

/* Blockquotes */
.blog-detail-section-content blockquote,
.blog-detail-intro-content blockquote {
    border-left: 4px solid #3b82f6;
    padding-left: 20px;
    margin: 20px 0;
    font-style: italic;
    color: #64748b;
}

/* ========================================
   RESPONSIVE STYLES
   ======================================== */

@media screen and (max-width: 1024px) {
    .blog-detail-top-section {
        grid-template-columns: 320px 1fr;
        gap: 30px;
    }
}

@media screen and (max-width: 768px) {
    .blog-detail-wrapper {
        padding: 40px 0 60px;
    }

    .blog-detail-top-section {
        grid-template-columns: 1fr;
        gap: 30px;
        margin-bottom: 40px;
    }

    .blog-detail-featured-image {
        position: static;
        max-width: 100%;
    }

    .blog-detail-main-heading {
        font-size: 28px;
        margin-bottom: 16px;
    }

    .blog-detail-meta {
        flex-direction: row;
        align-items: flex-start;
        gap: 6px;
        margin-bottom: 30px;
    }

    .blog-detail-separator {
        display: none;
    }

    .blog-detail-intro-content p {
        font-size: 15px;
        line-height: 1.7;
    }

    .blog-detail-section {
        margin-bottom: 32px;
    }

    .blog-detail-section-heading {
        font-size: 17px;
        gap: 12px;
        margin-bottom: 10px;
    }

    .blog-detail-heading-icon {
        width: 26px;
        height: 26px;
        font-size: 13px;
    }

    .blog-detail-section-content {
        padding-left: 38px;
    }

    .blog-detail-section-content p {
        font-size: 14px;
        line-height: 1.7;
    }
}

@media screen and (max-width: 480px) {
    .blog-detail-wrapper {
        padding: 30px 0 50px;
    }

    .blog-detail-container {
        padding: 0 16px;
    }

    .blog-detail-main-heading {
        font-size: 24px;
        line-height: 1.3;
    }

    .blog-detail-label {
        font-size: 11px;
    }

    .blog-detail-date,
    .blog-detail-author {
        font-size: 13px;
    }

    .blog-detail-top-section {
        gap: 25px;
        margin-bottom: 35px;
    }

    .blog-detail-featured-image {
        border-radius: 8px;
    }

    .blog-detail-section {
        margin-bottom: 28px;
    }

    .blog-detail-section-heading {
        font-size: 16px;
        gap: 10px;
    }

    .blog-detail-heading-icon {
        width: 24px;
        height: 24px;
        font-size: 12px;
    }

    .blog-detail-section-content {
        padding-left: 34px;
    }

    .blog-detail-section-content p,
    .blog-detail-intro-content p {
        font-size: 14px;
    }
}

/* ========================================
   ADDITIONAL UTILITY CLASSES
   ======================================== */

/* If you want to add custom styling for specific content */
.blog-detail-highlight {
    background-color: #fef3c7;
    padding: 2px 6px;
    border-radius: 3px;
}

.blog-detail-warning {
    background-color: #fee2e2;
    padding: 16px;
    border-radius: 8px;
    border-left: 4px solid #ef4444;
    margin: 20px 0;
}

.blog-detail-info {
    background-color: #dbeafe;
    padding: 16px;
    border-radius: 8px;
    border-left: 4px solid #3b82f6;
    margin: 20px 0;
}

.blog-detail-success {
    background-color: #dcfce7;
    padding: 16px;
    border-radius: 8px;
    border-left: 4px solid #22c55e;
    margin: 20px 0;
}

/* ========================================
   SIMPLE PAGE STYLES
   ======================================== */

.simple-page-section {
    padding: 60px 0;
    background: #ffffff;
}

.simple-page-wrapper {
    text-align: center;
}

.simple-page-title {
    font-size: 48px;
    font-weight: 700;
    color: #1e293b;
    margin: 0;
    line-height: 1.2;
}

/* ========================================
   RESPONSIVE STYLES
   ======================================== */

@media screen and (max-width: 768px) {
    .simple-page-section {
        padding: 40px 0;
    }

    .simple-page-title {
        font-size: 36px;
    }
}

@media screen and (max-width: 480px) {
    .simple-page-section {
        padding: 30px 0;
    }

    .simple-page-title {
        font-size: 28px;
    }
}

/* ========================================
   BLOG LISTING PAGE STYLES
   ======================================== */

/* Simple Page Section (Title Section) */
.simple-page-section {
    padding: 40px 0;
    background: #f8fafc;
    border-bottom: 1px solid #e2e8f0;
}

.simple-page-wrapper {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 20px;
}

.simple-page-title {
    font-size: 36px;
    font-weight: 700;
    color: #1e293b;
    margin: 0;
    letter-spacing: -0.5px;
}

/* Blog Listing Wrapper */
.blog-listing-wrapper {
    padding: 60px 0 80px;
    background: #ffffff;
}

.blog-listing-container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 20px;
    display: grid;
    grid-template-columns: 1fr 320px;
    gap: 40px;
    align-items: start;
}

/* ========================================
   LEFT SECTION: BLOG POSTS
   ======================================== */

.blog-posts-section {
    width: 100%;
}

.blog-posts-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 30px;
}

/* Blog Card */
.blog-card {
    background: #ffffff;
    border-radius: 12px;
    overflow: hidden;
    transition: all 0.3s ease;
    border: 1px solid #EC6930;
}

.blog-card:hover {
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.12);
    transform: translateY(-4px);
}

/* Blog Card Image */
.blog-card-image {
    width: 100%;
    height: 280px;
    overflow: hidden;
    position: relative;
}

.blog-card-image a {
    display: block;
    width: 100%;
    height: 100%;
}

.blog-card-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.4s ease;
}

.blog-card:hover .blog-card-image img {
    transform: scale(1.05);
}

/* Blog Card Content */
.blog-card-content {
    padding: 20px;
}

/* Blog Card Meta */
.blog-card-meta {
    display: flex;
    align-items: center;
    gap: 16px;
    margin-bottom: 14px;
    flex-wrap: wrap;
}

.blog-card-author,
.blog-card-date {
    font-size: 16px;
    font-weight: 500;
    color: #676766;
    display: flex;
    align-items: center;
    gap: 6px;
}

.blog-card-author i,
.blog-card-date i {
    font-size: 12px;
    color: #012970;
}

/* Blog Card Title */
.blog-card-title {
    font-size: 22px;
    font-weight: 700;
    line-height: 1.3;
    margin: 0 0 12px 0;
    color: #012970;
}

.blog-card-title a {
    color: #012970;
    text-decoration: none;
    transition: color 0.3s ease;
}

.blog-card-title a:hover {
    color: #3b82f6;
}

/* Blog Card Description */
.blog-card-description {
    font-size: 16px;
    font-weight: 400;
    line-height: 1.7;
    color: #000000;
    margin-bottom: 5px;
}

.blog-card-btn-div {
    display: flex;
    justify-content: end;
}

/* Blog Card Button */
.blog-card-btn {
    display: inline-block;
    padding: 10px 24px;
    background: #ff6b35;
    color: #ffffff;
    font-size: 14px;
    font-weight: 600;
    text-decoration: none;
    border-radius: 6px;
    transition: all 0.3s ease;
    border: none;
    cursor: pointer;
}

.blog-card-btn:hover {
    background: #e55a2b;
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(255, 107, 53, 0.3);
}

/* No Results Message */
.no-results {
    text-align: center;
    padding: 60px 20px;
    background: #f8fafc;
    border-radius: 12px;
    border: 2px dashed #cbd5e1;
}

.no-results i {
    font-size: 48px;
    color: #cbd5e1;
    margin-bottom: 16px;
}

.no-results p {
    font-size: 16px;
    color: #64748b;
    margin: 0;
}

/* No Posts Message */
.no-posts-message {
    text-align: center;
    padding: 80px 20px;
    background: #f8fafc;
    border-radius: 12px;
}

.no-posts-message i {
    font-size: 64px;
    color: #cbd5e1;
    margin-bottom: 20px;
}

.no-posts-message p {
    font-size: 18px;
    color: #64748b;
    margin: 0;
}

/* ========================================
   RIGHT SECTION: SIDEBAR
   ======================================== */

.blog-sidebar {
    position: sticky;
    top: 20px;
}

/* Sidebar Search */
.sidebar-search {
    margin-bottom: 30px;
}

.search-input-wrapper {
    position: relative;
    display: flex;
    align-items: center;
}

.search-input {
    width: 100%;
    padding: 12px 10px 12px 56px;
    font-size: 15px;
    font-weight: 400;
    background-color: #FFF5F0;
    color: #000000;
    border: 1px solid #EC6930;
    border-radius: 8px;
    outline: none;
    transition: all 0.3s ease;
}

.search-input::placeholder {
    color: #94a3b8;
}

.search-input:focus {
    box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.1);
}

.search-btn {
    position: absolute;
    left: 4px;
    top: 50%;
    transform: translateY(-50%);
    width: 34px;
    height: 34px;
    background: #ff6b35;
    color: #ffffff;
    border: none;
    border-radius: 4px;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.3s ease;
}

.search-btn:hover {
    background: #e55a2b;
    transform: translateY(-50%) scale(1.05);
}

.search-btn i {
    font-size: 14px;
}

/* Sidebar Widget */
.sidebar-widget {
    padding: 24px;
    border-radius: 12px;
}

.widget-title {
    font-size: 18px;
    font-weight: 700;
    color: #ffffff;
    background-color: #012970;
    margin: 0 0 20px 0;
    padding: 12px;
    border: 2px solid #334155;
    border-radius: 10px;
}

/* Recent Posts List */
.recent-posts-list {
    list-style: none;
    padding: 0;
    margin: 0;
}

.recent-post-item {
    margin-bottom: 20px;
    padding-bottom: 20px;
    border-bottom: 1px solid #EC6930;
}

.recent-post-item:last-child {
    margin-bottom: 0;
    padding-bottom: 0;
    border-bottom: none;
}

.recent-post-link {
    text-decoration: none;
    display: block;
    transition: all 0.3s ease;
    color: #818181;
}

.recent-post-link:hover .recent-post-title {
    color: #ff6b35;
}

.recent-post-title {
    font-size: 15px;
    font-weight: 600;
    line-height: 1.4;
    color: #818181;
    margin: 0 0 8px 0;
    transition: color 0.3s ease;
}

.recent-post-date {
    font-size: 16px;
    font-weight: 400;
    color: #818181;
    display: block;
}

/* ========================================
   RESPONSIVE STYLES
   ======================================== */

@media screen and (max-width: 1024px) {
    .blog-listing-container {
        grid-template-columns: 1fr 280px;
        gap: 30px;
    }

    .blog-card-image {
        height: 240px;
    }
}

@media screen and (max-width: 768px) {
    .simple-page-section {
        padding: 30px 0;
    }

    .simple-page-title {
        font-size: 28px;
    }

    .blog-listing-wrapper {
        padding: 40px 0 60px;
    }

    .blog-listing-container {
        grid-template-columns: 1fr;
        gap: 40px;
    }

    .blog-sidebar {
        position: static;
        order: -1;
        /* Move sidebar above blog posts on mobile */
    }

    .blog-card-image {
        height: 220px;
    }

    .blog-card-content {
        padding: 20px;
    }

    .blog-card-title {
        font-size: 20px;
    }

    .blog-card-meta {
        gap: 12px;
    }

    .widget-title {
        font-size: 17px;
    }
}

@media screen and (max-width: 480px) {
    .simple-page-wrapper {
        padding: 0 16px;
    }

    .simple-page-title {
        font-size: 24px;
    }

    .blog-listing-wrapper {
        padding: 30px 0 50px;
    }

    .blog-listing-container {
        padding: 0 16px;
    }

    .blog-posts-grid {
        gap: 24px;
    }

    .blog-card-image {
        height: 200px;
    }

    .blog-card-content {
        padding: 18px;
    }

    .blog-card-title {
        font-size: 18px;
    }

    .blog-card-description {
        font-size: 14px;
    }

    .blog-card-meta {
        flex-direction: column;
        align-items: flex-start;
        gap: 8px;
    }

    .search-input {
        padding: 12px 46px 12px 46px;
        font-size: 14px;
    }

    .search-btn {
        width: 34px;
        height: 34px;
    }

    .sidebar-widget {
        padding: 20px;
    }

    .recent-post-title {
        font-size: 14px;
    }

    .recent-post-date {
        font-size: 12px;
    }
}

/* ========================================
   ANIMATIONS
   ======================================== */

@keyframes fadeIn {
    from {
        opacity: 0;
        transform: translateY(20px);
    }

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

.blog-card {
    animation: fadeIn 0.6s ease forwards;
}

.blog-card:nth-child(1) {
    animation-delay: 0.1s;
}

.blog-card:nth-child(2) {
    animation-delay: 0.2s;
}

.blog-card:nth-child(3) {
    animation-delay: 0.3s;
}

.blog-card:nth-child(4) {
    animation-delay: 0.4s;
}

.blog-card:nth-child(5) {
    animation-delay: 0.5s;
}

/* ========================================
   PRINT STYLES (Optional)
   ======================================== */

@media print {

    .blog-sidebar,
    .search-input-wrapper,
    .blog-card-btn {
        display: none;
    }

    .blog-listing-container {
        grid-template-columns: 1fr;
    }

    .blog-card {
        page-break-inside: avoid;
        box-shadow: none;
        border: 1px solid #e2e8f0;
    }
}

.aspnet-main {
    padding: 60px 0 60px;
}

/* Default: Desktop */
.desktop-only {
    display: block;
}

.mobile-only {
    display: none;
}


/* Mobile View */
@media (max-width: 768px) {
    .desktop-only {
        display: none;
    }

    .mobile-only {
        display: block;
    }

    .aspnet-main {
        padding: 30px 0 30px;
    }
}

@media(max-width: 480px) {
    .aspnet-main {
        padding: 30px 0 30px;
    }
}

.winform-dotnet-9 {
    padding-top: 0;
}

/* ========================================
   SSDLC Section Styles
   ======================================== */

.ssdlc-section {
    padding: 70px 0 50px;
    background-color: #ffffff;
}

.ssdlc-wrapper {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 60px;
    align-items: center;
}

/* Left Side - Image */
.ssdlc-image {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
}

.ssdlc-image img {
    width: 100%;
    max-width: 500px;
    height: auto;
    display: block;
}

/* Right Side - Content */
.ssdlc-content {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.ssdlc-heading {

    font-weight: 700;
    line-height: 1.2;
    margin: 0;
}

.ssdlc-description {
    font-size: 18px;
    line-height: 1.6;
    color: #000000;
    margin: 0;
}

.ssdlc-description p {
    margin: 0 0 12px 0;
}

.ssdlc-description p:last-child {
    margin-bottom: 0;
}

/* Cards Grid */
.ssdlc-cards {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 0px;
}

.ssdlc-card {
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 12px;
    background: #ffffff;
    transition: all 0.3s ease;
}



.ssdlc-card-icon {
    flex-shrink: 0;
    width: 60px;
    height: 60px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 10px;
}

.ssdlc-card-icon img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.ssdlc-card-title {
    font-size: 18px;
    font-weight: 600;
    line-height: 1.4;
    color: #000000;
    margin: 0;
}

/* ========================================
   Responsive Styles
   ======================================== */

/* Tablet Landscape (1024px and below) */
@media (max-width: 1024px) {
    .ssdlc-section {
        padding: 50px 0 30px;
    }

    .ssdlc-wrapper {
        gap: 40px;
    }

    .ssdlc-heading {
        font-size: 32px;
    }
}

/* Tablet Portrait (768px and below) */
@media (max-width: 768px) {
    .ssdlc-section {
        padding: 40px 0 20px;
    }

    .ssdlc-wrapper {
        grid-template-columns: 1fr;
        gap: 40px;
    }

    .ssdlc-image {
        order: 1;
    }

    .ssdlc-content {
        order: 2;
    }

    .ssdlc-heading {
        font-size: 28px;
    }

    .ssdlc-description {
        font-size: 15px;
    }

    .ssdlc-cards {
        gap: 16px;
    }
}

/* Mobile (576px and below) */
@media (max-width: 576px) {
    .ssdlc-section {
        padding: 30px 0 10px;
    }

    .ssdlc-wrapper {
        gap: 30px;
    }

    .ssdlc-heading {
        font-size: 24px;
    }

    .ssdlc-description {
        font-size: 14px;
    }

    .ssdlc-cards {
        grid-template-columns: 1fr;
        gap: 12px;
    }

    .ssdlc-card {
        padding: 4px;
        gap: 12px;
    }

    .ssdlc-card-icon {
        width: 60px;
        height: 60px;
    }

    .ssdlc-card-icon img {
        width: 50px;
        height: 50px;
    }

    .ssdlc-card-title {
        font-size: 16px;
    }
}

/* Small Mobile (400px and below) */
@media (max-width: 400px) {
    .ssdlc-section {
        padding: 30px 0 10px;
    }

    .ssdlc-heading {
        font-size: 22px;
    }

    .ssdlc-card {
        padding: 4px;
    }

    .ssdlc-card-title {
        font-size: 14px;
    }
}

/* ===================================
   CLIENT LOGOS SECTION
   =================================== */

.clients-logos-section {
    padding: 60px 0;
    position: relative;
    overflow: hidden;
}



.clients-logos-header {
    text-align: center;
    margin-bottom: 40px;
}

.clients-logos-heading {

    margin-bottom: 15px;
    display: inline-block;
}

.clients-logos-subheading {
    font-size: 18px;
    color: #666;
    margin: 0;
    font-weight: 400;
}

/* Grid Layout */
.clients-logos-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 40px;
    align-items: center;
    justify-items: center;
}

.client-logo-item {
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
}

.client-logo-wrapper {
    width: 100%;
    max-width: 200px;
    height: 120px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 10px;
    background: #F9F7F3;
    border-radius: 12px;
    transition: all 0.3s ease;
    position: relative;
    overflow: hidden;

}

.client-logo-wrapper::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    border: 1px solid #012970;
    border-radius: 12px;
    transition: all 0.3s ease;

}

.client-logo-wrapper:hover {
    transform: translateY(-5px);
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.12);
}

.client-logo-wrapper:hover::before {
    border-color: #007bff;
}

.client-logo-img {
    max-width: 100%;
    max-height: 100%;
    width: auto;
    height: auto;
    object-fit: contain;
    transition: all 0.3s ease;
}


/* ===================================
   RESPONSIVE DESIGN
   =================================== */

/* Large Desktop */
@media (min-width: 1400px) {
    .clients-logos-grid {
        grid-template-columns: repeat(6, 1fr);
        gap: 50px;
    }
}

/* Desktop */
@media (min-width: 1200px) and (max-width: 1399px) {
    .clients-logos-grid {
        grid-template-columns: repeat(5, 1fr);
    }
}

/* Tablet Landscape */
@media (min-width: 992px) and (max-width: 1199px) {
    .clients-logos-section {
        padding: 60px 0;
    }

    .clients-logos-grid {
        grid-template-columns: repeat(4, 1fr);
        gap: 35px;
    }

    .clients-logos-heading {
        font-size: 32px;
    }
}

/* Tablet Portrait */
@media (min-width: 768px) and (max-width: 991px) {
    .clients-logos-section {
        padding: 50px 0;
    }

    .clients-logos-header {
        margin-bottom: 25px;
    }

    .clients-logos-heading {
        font-size: 28px;
    }

    .clients-logos-subheading {
        font-size: 16px;
    }

    .clients-logos-grid {
        grid-template-columns: repeat(3, 1fr);
        gap: 30px;
    }

    .client-logo-wrapper {
        max-width: 180px;
        height: 100px;
        padding: 15px;
    }
}

/* Mobile Landscape */
@media (min-width: 576px) and (max-width: 767px) {
    .clients-logos-section {
        padding: 40px 0;
    }

    .clients-logos-header {
        margin-bottom: 20px;
    }

    .clients-logos-heading {
        font-size: 26px;
    }

    .clients-logos-subheading {
        font-size: 15px;
    }

    .clients-logos-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 25px;
    }

    .client-logo-wrapper {
        max-width: 160px;
        height: 90px;
    }
}

/* Mobile Portrait */
@media (max-width: 575px) {
    .clients-logos-section {
        padding: 40px 0;
    }

    .clients-logos-header {
        margin-bottom: 20px;
    }

    .clients-logos-heading {
        font-size: 24px;
    }

    .clients-logos-subheading {
        font-size: 14px;
    }

    .clients-logos-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 20px;
    }

    .client-logo-wrapper {
        max-width: 140px;
        height: 80px;
        padding: 12px;
        border-radius: 8px;
    }
}

/* Extra Small Mobile */
@media (max-width: 375px) {
    .clients-logos-grid {
        grid-template-columns: 1fr;
        gap: 15px;
    }

    .client-logo-wrapper {
        max-width: 180px;
    }
}

/* Case Study */

.case-study-section {
    padding: 0 0;
    background-color: #ffffff;
}

.case-study-container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 15px;
}

.case-study-wrapper {
    align-items: flex-start;
    background: #fff;
    border-radius: 12px;
    padding: 40px;
}

/* Left Side - Topics List */
.case-study-left {
    flex: 1;
    background: #fff;
}

.casestudy-topics-list {
    display: flex;
    flex-direction: column;
    gap: 15px;
}

.casestudy-topic-item {
    padding-bottom: 25px;
}

.casestudy-topic-item:last-child {
    border-bottom: none;
    padding-bottom: 0;
}

.topic-heading {
    margin: 0 0 15px 0;
    padding-left: 25px;
    position: relative;
    line-height: 1.4;
}

.topic-heading::before {
    content: "";
    position: absolute;
    left: -18px;
    top: 7px;
    width: 27px;
    height: 27px;
    background-image: url("/media/casestudy-icon.png");
    background-size: contain;
    background-repeat: no-repeat;
}

.casestudy-topic-content {
    padding-left: 0;
}

.casestudy-topic-content p {
    line-height: 1.7;
    margin: 0 0 10px 26px;
    text-align: justify;
    color: black;
}

.casestudy-topic-content p:last-child {
    margin-bottom: 0;
}

.casestudy-topic-content ul {
    margin: 8px 0 15px 26px;
    padding-left: 20px;
    list-style: none;
}

.casestudy-topic-content li {
    line-height: 1.7;
    margin-bottom: 6px;
    padding-left: 15px;
    position: relative;
    color: black;
}

.casestudy-topic-content li::before {
    content: "•";
    position: absolute;
    left: 0;
    color: #666;
    font-weight: bold;
}

.casestudy-topic-content li:last-child {
    margin-bottom: 0;
}

/* Right Side - Image and Heading */
.case-study-right {
    flex: 0 0 500px;
    display: flex;
    flex-direction: column;
    gap: 30px;
}

.case-study-image {
    background: #fff;
    padding: 0;
    border-radius: 8px;
    overflow: hidden;
    margin-block: 0 30px;
}

.case-study-image img {
    max-width: 100%;
    width: 100%;
    height: auto;
    display: block;
}

.case-study-heading {
    padding: 25px 30px;
    text-align: center;
}

.case-study-heading h1 {
    margin: 0;
    color: #333;
    font-size: 20px;
    font-weight: 700;
    line-height: 1.4;
}

/* Tablet Landscape (1024px and below) */
@media (max-width: 1024px) {
    .topic-heading::before {
        left: -15px;
        top: -2px;
        width: 24px;
        height: 24px;
    }

    .case-study-wrapper {
        padding: 30px;
        gap: 35px;
    }

    .case-study-right {
        flex: 0 0 400px;
    }

    .topic-heading {
        font-size: 17px;
    }

    .casestudy-topic-content p,
    .casestudy-topic-content li {
        font-size: 14px;
    }
}

/* Tablet Portrait (768px and below) */
@media (max-width: 768px) {
    .case-study-wrapper {
        flex-direction: column;
        padding: 30px 20px;
        gap: 40px;
    }

    .case-study-left,
    .case-study-right {
        width: 100%;
        flex: 1 1 auto;
    }

    .case-study-right {
        order: -1;
        /* Move image and heading to top */
    }

    .casestudy-topics-list {
        gap: 30px;
    }

    .topic-heading {
        font-size: 16px;
        padding-left: 40px;
    }

    .topic-heading::before {
        left: 2px;
        top: -2px;
        width: 24px;
        height: 24px;
    }

    .casestudy-topic-content p {
        margin-left: 40px;
        font-size: 14px;
    }

    .casestudy-topic-content ul {
        margin-left: 40px;
    }

    .case-study-heading h1 {
        font-size: 19px;
    }
}

/* Mobile (576px and below) */
@media (max-width: 576px) {
    .case-study-section {
        padding: 20px 0;
    }

    .container {
        padding: 0 10px;
    }

    .case-study-wrapper {
        padding: 20px 15px;
        gap: 30px;
        border-radius: 8px;
    }

    .casestudy-topics-list {
        gap: 25px;
    }

    .casestudy-topic-item {
        padding-bottom: 20px;
    }

    .topic-heading {
        font-size: 15px;
        padding-left: 35px;
        margin-bottom: 12px;
    }

    .topic-heading::before {
        left: 4px;
        width: 21px;
        height: 21px;
        top: -2px;
    }

    .casestudy-topic-content p {
        margin: 0 0 10px 35px;
        font-size: 13px;
        line-height: 1.6;
        text-align: left;
    }

    .casestudy-topic-content ul {
        margin: 8px 0 15px 35px;
        padding-left: 15px;
    }

    .casestudy-topic-content li {
        font-size: 13px;
        line-height: 1.6;
        margin-bottom: 8px;
        padding-left: 12px;
    }

    .case-study-image {
        margin-block: 0 20px;
        border-radius: 6px;
    }

    .case-study-heading {
        padding: 20px 15px;
    }

    .case-study-heading h2 {
        font-size: 20px;
        line-height: 1.3;
    }
}

/* Extra Small Mobile (380px and below) */
@media (max-width: 380px) {
    .case-study-wrapper {
        padding: 15px 10px;
    }

    .topic-heading {
        font-size: 14px;
        padding-left: 32px;
    }

    .topic-heading::before {
        width: 22px;
        height: 22px;
        left: -1px;
    }

    .casestudy-topic-content p {
        margin-left: 32px;
        font-size: 12px;
    }

    .casestudy-topic-content ul {
        margin-left: 32px;
        padding-left: 12px;
    }

    .casestudy-topic-content li {
        font-size: 12px;
        padding-left: 10px;
    }

    .case-study-heading {
        padding: 15px 10px;
    }

    .case-study-heading h2 {
        font-size: 19px;
    }
}