.section,
.bg-cover,
.zentacode-section-padding,
.cta-bg3 {
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}

.wishlist_icon svg path {
    stroke: #000;
    /* default outline color */
    fill: transparent;
    transition: all 0.3s ease;
}

.wishlist_icon:hover svg path {
    fill: #ff4d4d;
    /* hover fill color */
    stroke: #ff4d4d;
}

.wishlist_icon.active svg path {
    fill: #ff4d4d;
    /* active state fill color */
    stroke: #ff4d4d;
}

.zentacode-hero-slider-item::before {
    content: "";
    left: 0;
    top: 0;
    z-index: -1;
    width: 100%;
    height: 100%;
    position: absolute;
    background-size: cover;
    background-image: url('../img/hero/overlay.webp') !important;
}

.zentacode-service-contact {
    background-image: url('../img/service/bg.webp');
}

.zentacode-footer-cta-wrap {
    background-image: url('../img/cta/cta.webp');
}

.zentacode-counter-wrap {
    background-image: url('../img/v2/counter-bg.webp');
}

.zentacode-hero-section {
    background-image: url('../img/hero/bg1.webp');
}

.custom_image {
    background-image: url('../img/cta/cta-bg2.webp');
}

.zentacode-hero-section4 {
    background-image: url('../img/hero/bg3.webp');
}

.tech-agency-img {
    background-image: url('../img/hero/bg2.webp');
}

.zentacode-hero-section8 {
    background-image: url('../img/hero/bg4.webp');
}

.custom-image-two {
    background-image: url('../img/cta/cta-bg3.webp');
}

.custom-image-two-home {
    background-image: url('../img/cta/cta-bg2.webp') !important;
}

.cookie_consent_modal {
    width: 350px;
    padding: 30px;
    background-color: var(--white-color);
    position: fixed;
    bottom: 30px;
    left: 30px;
    z-index: 9999;
    border: 1px solid #e4e4e4;
    box-shadow: 2px 3px 4px 0 rgba(0, 0, 0, 0.05);
    border-radius: 4px;
}

.cookie_consent_modal .btn-close {
    position: absolute;
    top: 15px;
    right: 15px;
    opacity: 1;
}

.cookie_consent_modal h5 {
    font-size: 22px;
    font-weight: 500;
}

.cookie_consent_modal p {
    font-size: 16px;
    line-height: 27px;
    margin-top: 10px;
}

.cookie_consent_modal .thm-btn-two {
    margin-top: 20px;
}

.shop_sidebar_item_box_main.fst {
    min-height: 240px !important;
    height: 0px !important;
}

.dashbord_sidebar {
    border-radius: 0px !important;
    border-right: 1px solid #e3e3ec;
}

.dashbord_bg {
    background: #fff !important;
    box-shadow: 0 12px 40px 4px rgba(10, 22, 94, 0.0784313725) !important;
}

.dashbord_item {
    padding: 0 !important;
    flex-direction: row !important;
    text-align: start !important;
}

.dashbord_item_icon {
    width: 54px !important;
    height: 54px !important;
}

.dashbord_item_text .d-item-label {
    font-size: 14px !important;
    font-weight: 400 !important;
}

.dashbord_table_main .table thead tr th {
    background: #EEF1FF !important;
    white-space: nowrap !important;
}

.d_review_box_head {
    background: #EEF1FF !important;
}

.dashbord_table_main .table tbody tr td {
    min-width: 150px !important;
}

/* Header navigation text colors - Desktop */
@media (min-width: 992px) {
    .site-menu-main.light-color .nav-link-item,
    .light-color .site-menu-main .nav-link-item,
    .zentacode-header-two .site-menu-main .nav-link-item {
        color: #ffffff !important;
    }

    .site-menu-main.light-color .nav-link-item:hover,
    .light-color .site-menu-main .nav-link-item:hover,
    .zentacode-header-two .site-menu-main .nav-link-item:hover {
        color: var(--primary-color) !important;
    }

    /* Ensure sub-menu dropdown items always have dark text inside white card */
    .site-menu-main .sub-menu .sub-menu--item a,
    .site-menu-main .sub-menu .sub-menu--item a span,
    .site-menu-main.light-color .sub-menu .sub-menu--item a,
    .site-menu-main.light-color .sub-menu .sub-menu--item a span,
    .light-color .site-menu-main .sub-menu .sub-menu--item a,
    .light-color .site-menu-main .sub-menu .sub-menu--item a span {
        color: var(--heading-color, #0c1437) !important;
    }

    .site-menu-main .sub-menu .sub-menu--item a:hover,
    .site-menu-main .sub-menu .sub-menu--item a:hover span {
        color: var(--primary-color) !important;
    }
}

/* Mobile navigation text colors (Mobile Slide-out Menu has white background) */
@media (max-width: 991px) {
    .site-header .menu-block,
    .menu-block {
        background-color: #ffffff !important;
    }

    .site-header .menu-block .site-menu-main .nav-link-item,
    .site-header .menu-block .site-menu-main .nav-link-item span,
    .site-header .menu-block .site-menu-main .nav-link-item .menu-item-text,
    .site-header .menu-block .site-menu-main .nav-link-item i,
    .menu-block .site-menu-main.light-color .nav-link-item,
    .menu-block .site-menu-main.light-color .nav-link-item span,
    .menu-block .site-menu-main.light-color .nav-link-item .menu-item-text,
    .menu-block .site-menu-main.light-color .nav-link-item i,
    .light-color .menu-block .site-menu-main .nav-link-item,
    .light-color .menu-block .site-menu-main .nav-link-item span,
    .light-color .menu-block .site-menu-main .nav-link-item .menu-item-text,
    .light-color .menu-block .site-menu-main .nav-link-item i,
    .zentacode-header-two .menu-block .site-menu-main .nav-link-item,
    .zentacode-header-two .menu-block .site-menu-main .nav-link-item span,
    .zentacode-header-two .menu-block .site-menu-main .nav-link-item .menu-item-text,
    .zentacode-header-two .menu-block .site-menu-main .nav-link-item i,
    .site-header .menu-block .site-menu-main > li > a {
        color: #0c1437 !important;
    }

    .site-header .menu-block .site-menu-main .nav-link-item:hover,
    .site-header .menu-block .site-menu-main .nav-link-item:hover span,
    .site-header .menu-block .site-menu-main .nav-link-item:hover .menu-item-text,
    .site-header .menu-block .site-menu-main .nav-link-item:hover i,
    .menu-block .site-menu-main.light-color .nav-link-item:hover,
    .menu-block .site-menu-main.light-color .nav-link-item:hover span,
    .menu-block .site-menu-main.light-color .nav-link-item:hover .menu-item-text,
    .menu-block .site-menu-main.light-color .nav-link-item:hover i {
        color: var(--primary-color, #2b4dff) !important;
    }

    .site-header .menu-block .sub-menu,
    .site-header .menu-block .sub-menu.mega-menu {
        background-color: #ffffff !important;
    }

    .site-header .menu-block .sub-menu .sub-menu--item a,
    .site-header .menu-block .sub-menu .sub-menu--item a span,
    .site-header .menu-block .sub-menu .sub-menu--item a .menu-item-text {
        color: #0c1437 !important;
    }

    .site-header .menu-block .sub-menu .sub-menu--item a:hover,
    .site-header .menu-block .sub-menu .sub-menu--item a:hover span,
    .site-header .menu-block .sub-menu .sub-menu--item a:hover .menu-item-text {
        color: var(--primary-color, #2b4dff) !important;
    }

    .site-header .menu-block .mobile-menu-head .current-menu-title,
    .site-header .menu-block .mobile-menu-head .go-back,
    .site-header .menu-block .mobile-menu-head .mobile-menu-close {
        color: #0c1437 !important;
    }
}

/* Accessibility & Color Contrast Helpers */
.zentacode-footer-title h4,
.zentacode-footer-title h5 {
    color: #ffffff !important;
    font-size: 20px;
    font-weight: 700;
    margin-bottom: 25px;
    letter-spacing: -0.02em;
}

.zentacode-footer-section.dark-bg .zentacode-footer-menu ul li a {
    color: #cbd5e1 !important;
}

.zentacode-footer-section.dark-bg .zentacode-footer-menu ul li a:hover {
    color: #38bdf8 !important;
}

.visually-hidden {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    white-space: nowrap !important;
    border: 0 !important;
}

/* Contact Information Column Side-by-Side Layout */
.zentacode-contact-info-column {
    display: grid !important;
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 30px !important;
    align-items: start !important;
    margin-top: 40px !important;
    padding-bottom: 25px !important;
    margin-bottom: 20px !important;
    border-bottom: 1px solid var(--light-color1) !important;
}

@media (max-width: 575px) {
    .zentacode-contact-info-column {
        grid-template-columns: 1fr !important;
        gap: 24px !important;
    }
}

.zentacode-contact-info-column .zentacode-contact-info {
    margin-bottom: 0 !important;
    min-width: 0 !important;
}

.zentacode-contact-info-column .zentacode-contact-info p,
.zentacode-contact-info-column .zentacode-contact-info a {
    word-break: break-word !important;
    overflow-wrap: anywhere !important;
    white-space: normal !important;
    line-height: 1.6 !important;
}

.zentacode-iconbox-icon2 i,
.zentacode-iconbox-icon2 i.fas,
.zentacode-iconbox-icon2 i.fa-solid,
.zentacode-iconbox-icon2 i.far,
.zentacode-iconbox-icon2 i.fab {
    font-family: 'Font Awesome 5 Free' !important;
    font-weight: 900 !important;
    font-size: 36px !important;
    color: #2b4dff !important;
    display: inline-block !important;
}

/* ══════════════════════════════════════════════════════════════
   CASE STUDY MODERN CARD & DETAIL UI
   ══════════════════════════════════════════════════════════════ */
.case-study-card {
    background: #ffffff !important;
    border-radius: 16px !important;
    border: 1px solid #e2e8f0 !important;
    overflow: hidden !important;
    display: flex !important;
    flex-direction: column !important;
    height: 100% !important;
    transition: transform 0.3s ease, box-shadow 0.3s ease, border-color 0.3s ease !important;
    box-shadow: 0 4px 20px rgba(15, 23, 42, 0.04) !important;
    text-decoration: none !important;
}

.case-study-card:hover {
    transform: translateY(-6px) !important;
    box-shadow: 0 20px 35px rgba(15, 23, 42, 0.1) !important;
    border-color: #cbd5e1 !important;
}

.case-study-card-thumb {
    position: relative !important;
    width: 100% !important;
    height: 220px !important;
    background: #f1f5f9 !important;
    overflow: hidden !important;
}

.case-study-card-thumb img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    transition: transform 0.6s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

.case-study-card:hover .case-study-card-thumb img {
    transform: scale(1.06) !important;
}

.case-study-badge-industry {
    position: absolute !important;
    top: 14px !important;
    left: 14px !important;
    background: rgba(15, 23, 42, 0.85) !important;
    backdrop-filter: blur(8px) !important;
    color: #ffffff !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    letter-spacing: 0.6px !important;
    text-transform: uppercase !important;
    padding: 5px 12px !important;
    border-radius: 20px !important;
    z-index: 2 !important;
}

.case-study-card-body {
    padding: 24px !important;
    display: flex !important;
    flex-direction: column !important;
    flex-grow: 1 !important;
    justify-content: space-between !important;
}

.case-study-client-header {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    margin-bottom: 10px !important;
}

.case-study-client-name {
    font-size: 12px !important;
    font-weight: 700 !important;
    color: #64748b !important;
    text-transform: uppercase !important;
    letter-spacing: 0.8px !important;
}

.case-study-client-logo {
    max-height: 24px !important;
    max-width: 80px !important;
    object-fit: contain !important;
}

.case-study-card-title {
    font-size: 19px !important;
    font-weight: 700 !important;
    line-height: 1.4 !important;
    color: #0f172a !important;
    margin-bottom: 12px !important;
    transition: color 0.2s ease !important;
}

.case-study-card:hover .case-study-card-title {
    color: #2b4dff !important;
}

.case-study-card-summary {
    font-size: 14px !important;
    line-height: 1.65 !important;
    color: #64748b !important;
    margin-bottom: 18px !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 3 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
}

.case-study-metric-highlight {
    background: #f0f7ff !important;
    border: 1px solid #bfdbfe !important;
    border-radius: 8px !important;
    padding: 10px 14px !important;
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    margin-bottom: 18px !important;
}

.case-study-metric-highlight-value {
    font-size: 18px !important;
    font-weight: 800 !important;
    color: #1d4ed8 !important;
    line-height: 1 !important;
    white-space: nowrap !important;
}

.case-study-metric-highlight-label {
    font-size: 12px !important;
    font-weight: 600 !important;
    color: #334155 !important;
    line-height: 1.3 !important;
}

.case-study-card-footer {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    border-top: 1px solid #f1f5f9 !important;
    padding-top: 14px !important;
}

.case-study-duration {
    font-size: 13px !important;
    font-weight: 500 !important;
    color: #94a3b8 !important;
    display: flex !important;
    align-items: center !important;
    gap: 5px !important;
}

.case-study-read-btn {
    font-size: 14px !important;
    font-weight: 700 !important;
    color: #2b4dff !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    transition: gap 0.2s ease, color 0.2s ease !important;
}

.case-study-card:hover .case-study-read-btn {
    gap: 10px !important;
    color: #1d4ed8 !important;
}