/* =========================================================
   FULL-WIDTH BACKGROUND FIX
   Parent layout ka .container (Bootstrap) in sections ki bg ko
   viewport se chhota kar raha tha. Ye rule sections ko container
   se bahar nikaal ke 100vw tak stretch karta hai — sirf background
   full spread hota hai, andar ka content apni original max-width/
   centering me hi rehta hai, kuch bhi tootega nahi.
   ========================================================= */
#accounting-pro-section,
.data-security-section,
#benefits-section,
.premium-6card-process,
.provide-section-premium,
#industries-section,
.why-choose-accounting-section,
.testimonial-grid-section,
.software-expertise-section,
.faq-contact-section,
.custom-hero-banner {
    width: 100vw;
    max-width: 100vw;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
    box-sizing: border-box;
}

/* 100vw trick se kabhi-kabhi chhoti horizontal scrollbar aa jaati hai,
   isko rokne ke liye ye safety rule */
html,
body {
    overflow-x: hidden;
}

/* ===================== FIX BLOCK END ===================== */


/* start here account pro section */
#accounting-pro-section {
    background: linear-gradient(135deg, #f7f8ff, #eef1ff);
    padding: 30px 0;
    position: relative;
    overflow: hidden;
    font-family: 'Inter', sans-serif;
}

#accounting-pro-section .aps-shape {
    position: absolute;
    border-radius: 50%;
    filter: blur(110px);
    opacity: .6;
}

.aps-shape-1 {
    width: 250px;
    height: 250px;
    background: #dfe4ff;
    top: -100px;
    left: -100px;
}

.aps-shape-2 {
    width: 220px;
    height: 220px;
    background: #cfd6ff;
    bottom: -100px;
    right: -80px;
}

#accounting-pro-section .aps-container {
    max-width: 1200px;
    margin: auto;
    display: flex;
    align-items: stretch;
    justify-content: space-between;
    gap: 40px;
    padding: 0 20px;
    position: relative;
    z-index: 2;
}

#accounting-pro-section .aps-left {
    flex: 1.1;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
}

#accounting-pro-section h2 {
    color: #0082a4;
    font-size: 1.85rem;
    margin: 0 0 24px 0;
    padding: 0;
    line-height: 1.3;
    font-weight: 700;
    text-align: left;
}

#accounting-pro-section p.main-contet-video,
#accounting-pro-section .main-contet-video {
    color: #000000;
    font-size: 0.87rem;
    font-weight: 400;
    line-height: 1.6;
    margin: 0 0 16px 0;
    padding: 0;
    text-align: left;
    width: 100%;
}

#accounting-pro-section p.main-contet-video:last-child,
#accounting-pro-section .main-contet-video:last-child {
    margin-bottom: 0;
}

#accounting-pro-section .aps-right {
    flex: 1;
    display: flex;
    justify-content: center;
    align-items: stretch;
    width: 100%;
    position: relative;
    margin-top: 72px;
}

#accounting-pro-section .aps-video {
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    overflow: hidden;
    border-radius: 12px;
}

#accounting-pro-section .aps-video img,
#accounting-pro-section .aps-video video,
#accounting-pro-section lottie-player {
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
    display: block;
}

@media (max-width: 991px) {
    #accounting-pro-section .aps-container {
        gap: 30px;
    }

    #accounting-pro-section h2 {
        font-size: 1.65rem;
    }

    #accounting-pro-section .aps-right {
        margin-top: 88px;
    }
}

@media (max-width: 768px) {
    #accounting-pro-section {
        padding: 50px 0;
    }

    #accounting-pro-section .aps-container {
        flex-direction: column;
        gap: 35px;
        align-items: center;
    }

    #accounting-pro-section h2 {
        font-size: 1.5rem;
        text-align: left;
    }

    #accounting-pro-section p.main-contet-video,
    #accounting-pro-section .main-contet-video {
        text-align: left;
        font-size: 14px;
        margin-bottom: 12px;
    }

    #accounting-pro-section .aps-right {
        margin-top: 0 !important;
    }

    #accounting-pro-section .aps-video img,
    #accounting-pro-section .aps-video video,
    #accounting-pro-section lottie-player {
        height: auto !important;
        max-height: 450px !important;
        object-fit: contain !important;
    }
}



/* Custom Hero Banner Container */

.custom-hero-banner {
    position: relative;
    width: 100%;
    min-height: 500px;
    /* Increased height by 120px (was 380px) */
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    display: flex;
    align-items: center;
    padding: 60px 0;
    color: #ffffff;
}

/* Breadcrumb Styling */
.custom-hero-breadcrumb {
    font-size: 14px;
    font-weight: 500;
}

.custom-hero-breadcrumb a {
    color: rgba(255, 255, 255, 0.8);
    text-decoration: none;
    transition: color 0.3s ease;
}

.custom-hero-breadcrumb a:hover {
    color: #ffffff;
    text-decoration: underline;
}

.custom-hero-breadcrumb .separator {
    margin: 0 8px;
    color: rgba(255, 255, 255, 0.6);
}

.custom-hero-breadcrumb .current {
    color: #ffffff;
    font-weight: 600;
}

/* Dynamic Heading (Font Size Controlled) */
.custom-hero-heading {
    font-size: 1.95rem !important;
    font-family: 'Inter';
    font-weight: 700;
    line-height: 1.30;
    color: #00c2cb;
    margin-bottom: 12px;
}

/* Paragraph Text */
.custom-hero-paragraph {
    font-size: 16px !important;
    font-weight: 400;
    line-height: 1.6;
    color: rgba(255, 255, 255, 0.9);
    max-width: 650px;
    margin-bottom: 0;
}

/* Action Buttons */
.custom-hero-btn-primary {
    background-color: #02469f;
    color: #ffffff !important;
    border: 1px solid #ffffff;
    padding: 10px 24px;
    font-size: 15px;
    font-weight: 600;
    border-radius: 6px;
    text-decoration: none;
    transition: all 0.3s ease;
}

.custom-hero-btn-primary:hover {
    background-color: #0b5ed7;
    border-color: #0a58ca;
}

.custom-hero-btn-secondary {
    background-color: transparent;
    color: #ffffff !important;
    border: 1px solid #ffffff;
    padding: 10px 24px;
    font-size: 15px;
    font-weight: 600;
    border-radius: 6px;
    text-decoration: none;
    transition: all 0.3s ease;
}

.custom-hero-btn-secondary:hover {
    background-color: #ffffff;
    color: #000000 !important;
}

/* Hero section positioning */
.hero-section {
    position: relative;
}

/* Main Overlapping Marquee Container (Height reduced) */
.marquee-overlap-container {
    width: 90%;
    max-width: 1200px;
    margin: -40px auto 0 auto;
    background: #ffffff;
    border: 2px solid #00c2cb;
    border-radius: 12px;
    /* Curved ends matching design */
    padding: 8px 0;
    /* Padding reduced to lower marquee height */
    box-shadow: 0px 10px 30px rgba(0, 0, 0, 0.1);
    overflow: hidden;
    position: relative;
    z-index: 10;
    display: flex;
    align-items: center;
}

/* Marquee Track */
.marquee-content {
    display: flex;
    align-items: center;
    white-space: nowrap;
    animation: marquee-scroll 25s linear infinite;
}

.marquee-overlap-container:hover .marquee-content {
    animation-play-state: paused;
}

/* Individual Item Styling */
.marquee-item {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 0 35px;
    text-align: center;
    font-family: sans-serif;
    min-width: 160px;
}

.marquee-item strong {
    font-size: 1.1rem;
    color: #0a2540;
    font-weight: 700;
    line-height: 1.2;
}

.marquee-item span {
    font-size: 0.82rem;
    color: #6b7280;
    font-weight: 500;
    margin-top: 2px;
}

/* Vertical Dividers (Reduced height) */
.marquee-divider {
    height: 24px;
    width: 1px;
    background-color: #e2e8f0;
    flex-shrink: 0;
}

/* Animation Keyframes */
@keyframes marquee-scroll {
    0% {
        transform: translateX(0%);
    }

    100% {
        transform: translateX(-50%);
    }
}

/* Responsive Fixes for Mobile */
@media (max-width: 768px) {
    .custom-hero-banner {
        min-height: 380px;
        padding: 40px 0;
    }

    .custom-hero-heading {
        font-size: 26px !important;
    }

    .custom-hero-paragraph {
        font-size: 14px !important;
    }

    .marquee-overlap-container {
        margin: -25px auto 0 auto;
        padding: 6px 0;
    }
}






/* --- Data Security Section --- */
.data-security-section {
    background-color: #f7f6f0;
    /* Off-white warm background matching image */
    padding: 60px 0 80px 0;
    font-family: 'Inter';
    overflow: hidden;
}

.section-header {
    margin-bottom: 50px;
    text-align: center;
    max-width: 950px;
    margin-left: auto;
    margin-right: auto;
}

.data-security-section .sub-heading {
    font-size: 13px;
    letter-spacing: 2px;
    color: #10b981;
    /* Premium Emerald green text */
    font-weight: 700;
    display: inline-block;
}

.data-security-section .main-heading {
    font-family: 'Inter';
    font-size: 2.2rem;
    font-weight: 700;
    color: #02469F;
    /* Royal Deep Navy */
    line-height: 1.3;
    letter-spacing: -0.5px;
}

.data-security-section .section-desc {
    color: #4b5563;
    font-size: 0.95rem;
    line-height: 1.6;
    font-weight: 400;
    text-align: center;
}

/* --- Grid & Cards Style --- */
.custom-security-grid {
    max-width: 1140px;
    margin: 0 auto;
}

.security-feature-card {
    background: #ffffff;
    border-radius: 8px;
    padding: 28px 24px;
    border: 1px solid rgba(0, 0, 0, 0.05);
    height: 100%;
    display: flex;
    flex-direction: column;
    text-align: left;
    align-items: flex-start;
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.05), 0 2px 4px -1px rgba(0, 0, 0, 0.03);
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.security-feature-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 10px 20px rgba(0, 0, 0, 0.08);
}

.card-icon-wrapper {
    font-size: 28px;
    color: #047857;
    /* Custom teal-greenish tone for icons */
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: 40px;
}

.card-feature-title {
    font-size: 17px;
    font-weight: 700;
    color: #02469F;
    font-family: 'Inter';
    line-height: 1.4;
    margin-bottom: 12px;
    letter-spacing: -0.2px;
}

.card-feature-text {
    font-size: 0.85rem !;
    font-family: 'Inter';
    line-height: 1.5;
    font-weight: 400;
    color: #010203;
}

/* --- Responsive Media Queries --- */
@media (max-width: 991px) {
    .data-security-section .main-heading {
        font-size: 1.85rem;
    }

    .security-feature-card {
        padding: 22px 18px;
    }
}

@media (max-width: 575px) {
    .data-security-section {
        padding: 40px 0;
    }

    .data-security-section .main-heading {
        font-size: 1.5rem;
    }

    .security-feature-card {
        padding: 20px 16px;
    }
}



#benefits-section {
    background-color: #eef6f8 !important; /* Section ka halka light background */
    padding: 70px 0;
    font-family: 'Inter', system-ui, -apple-system, sans-serif;
}

.benefits-container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 24px;
}

.benefits-title {
    text-align: center;
    color: #032b5b !important;
    font-size: 32px;
    font-weight: 800;
    margin-bottom: 15px;
    letter-spacing: -0.5px;
}

.benefits-top-desc {
    font-size: 16px;
    color: #475569 !important;
    max-width: 700px;
    margin: 0 auto 40px auto;
}

/* 3-Column Grid Layout */
.benefits-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
}

.benefit-box {
    background-color: #0b1d35 !important; /* Card ka Dark Navy Blue Background */
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 12px;
    padding: 35px 28px;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    text-align: left;
    box-shadow: 0 10px 30px rgba(11, 29, 53, 0.12);
    transition: all 0.3s cubic-bezier(0.25, 0.8, 0.25, 1);
}

/* --- Hover Effect --- */
.benefit-box:hover {
    transform: translateY(-8px);
    border-color: rgba(255, 255, 255, 0.3);
    box-shadow: 0 15px 35px rgba(11, 29, 53, 0.2);
}

.benefit-icon-wrapper {
    height: 60px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 20px;
}

.benefit-img-icon {
    width: 50px;
    height: 50px;
    object-fit: contain;
    filter: brightness(0) invert(1); /* Icons ko pure white karne ke liye */
}

.benefit-box h3 {
    color: #ffffff !important; /* Card Heading White */
    font-size: 19px;
    font-weight: 700;
    margin: 0 0 12px 0;
    line-height: 1.3;
}

.benefit-box p {
    color: #f1f5f9 !important; /* Card Paragraph White / Light Off-White */
    font-size: 14px;
    font-weight: 400;
    line-height: 1.6;
    margin: 0;
    text-align: left;
}

/* --- Footer CTA Area --- */
.benefits-footer {
    text-align: center;
    margin-top: 50px;
}

.benefits-footer .footer-desc {
    font-size: 16px;
    font-weight: 600;
    color: #1e293b !important;
    margin-bottom: 20px;
}

.btn-consult {
    background-color: #032b5b !important;
    color: #ffffff !important;
    padding: 14px 36px;
    border-radius: 6px;
    text-decoration: none;
    font-weight: 700;
    font-size: 15px;
    display: inline-block;
    transition: background-color 0.2s ease;
    box-shadow: 0 4px 12px rgba(3, 43, 91, 0.2);
}

.btn-consult:hover {
    background-color: #0c437a !important;
}

/* --- Responsive Media Queries --- */
@media (max-width: 991px) {
    .benefits-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 20px;
    }

    .benefits-title {
        font-size: 28px;
    }
}

@media (max-width: 768px) {
    #benefits-section {
        padding: 40px 0;
    }

    .benefits-grid {
        grid-template-columns: 1fr;
    }

    .benefit-box {
        padding: 24px 20px;
    }
}


@import url('https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@400;500;600;700;800&display=swap');

.premium-6card-process {
    --brand-blue: #0052ff;
    --brand-gradient: linear-gradient(135deg, #0052ff, #2563eb);
    --initial-border: #0052ff;
    --text-dark: #0f172a;
    --text-muted: #64748b;
    background-color: #f8fafc;
    font-family: 'Plus Jakarta Sans', sans-serif;
    padding: 70px 24px;
    display: flex;
    flex-direction: column;
    align-items: center;
}

/* Compact Header */
.compact-header {
    text-align: center;
    margin-bottom: 45px;
}

.compact-badge {
    font-size: 0.65rem;
    text-transform: uppercase;
    letter-spacing: 2px;
    color: var(--brand-blue);
    font-weight: 800;
    background: rgba(0, 82, 255, 0.08);
    padding: 5px 12px;
    border-radius: 50px;
    display: inline-block;
    margin-bottom: 12px;
}

.compact-header h2 {
    font-size: 1.98rem;
    font-family: 'Inter';
    font-weight: 800;
    color: #278d36;
    margin: 0 0 10px 0;
    letter-spacing: -1px;
}

.compact-header p {
    font-size: 1rem;
    color: var(--text-muted);
    margin: 0;
}

/* 3+3 Balanced Grid Container (Small Cards) */
.grid-6cards-container {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    /* 3 Cards Per Row */
    gap: 20px;
    /* कम गैप ताकि साइज छोटा रहे */
    width: 100%;
    max-width: 1140px;
}

/* Small & Compact Card Structure */
.process-step-card {
    background: #ffffff;
    border: 1.5px solid var(--initial-border);
    /* पहले से विजिबल ब्लू बॉर्डर */
    border-radius: 8px;
    padding: 20px;
    /* कॉम्पैक्ट पैडिंग */
    display: flex;
    flex-direction: column;
    gap: 12px;
    box-shadow: 0 4px 12px rgba(0, 82, 255, 0.02);
    transition: all 0.35s cubic-bezier(0.16, 1, 0.3, 1);
    position: relative;
    overflow: hidden;
    cursor: pointer;
    box-sizing: border-box;
    height: 100%;
}

/* Top Bar */
.card-top-bar {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
}

.step-title-flex {
    display: flex;
    align-items: center;
    gap: 10px;
}

.step-title-flex .mini-icon {
    width: 34px;
    height: 34px;
    background: rgba(0, 82, 255, 0.06);
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    transition: all 0.3s ease;
}

.step-title-flex .mini-icon svg {
    width: 16px;
    height: 16px;
    fill: none;
    stroke: var(--brand-blue);
    stroke-width: 2.2;
    transition: stroke 0.3s ease;
}

.step-title-flex h3 {
    font-size: 1.25rem;
    font-family: 'Inter';
    font-weight: 700;
    color: #02469f;
    margin: 0;
    line-height: 1.3;
}

/* Index Number */
.step-index {
    font-size: 1.2rem;
    font-weight: 800;
    color: rgba(0, 82, 255, 0.25);
    font-feature-settings: "tnum";
    transition: color 0.3s ease;
}

/* Smaller Description Content */
.step-description {
    font-size: 0.88rem;
    /* कॉम्पैक्ट और पठनीय फॉन्ट */
    line-height: 1.55;
    color: var(--text-muted);
    margin: 0;
    transition: color 0.3s ease;
}

/* Compact Footer Action */
.card-bottom-bar {
    display: flex;
    justify-content: flex-end;
    margin-top: auto;
    padding-top: 4px;
}

.step-action {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    border-radius: 50%;
    background: #f1f5f9;
    transition: all 0.3s ease;
}

.step-action svg {
    width: 12px;
    height: 12px;
    fill: none;
    stroke: var(--text-muted);
    stroke-width: 2.5;
    transition: all 0.3s ease;
}

/* --- HOVER GLOW EFFECTS --- */
.process-step-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 15px 30px rgba(0, 82, 255, 0.1);
}

.process-step-card:hover .step-index {
    color: var(--brand-blue);
}

.process-step-card:hover .mini-icon {
    background: var(--brand-gradient);
}

.process-step-card:hover .mini-icon svg {
    stroke: #ffffff;
}

.process-step-card:hover .step-description {
    color: var(--text-dark);
}

.process-step-card:hover .step-action {
    background: var(--brand-gradient);
    transform: rotate(-45deg);
}

.process-step-card:hover .step-action svg {
    stroke: #ffffff;
}

/* Responsive Breakpoints */
@media (max-width: 992px) {
    .grid-6cards-container {
        grid-template-columns: repeat(2, 1fr);
        /* टैबलेट्स पर 2 की रो */
    }
}

@media (max-width: 650px) {
    .grid-6cards-container {
        grid-template-columns: 1fr;
        /* मोबाइल पर क्लीन सिंगल कॉलम */
    }

    .compact-header h2 {
        font-size: 2rem;
    }
}




/* --- What We Provide Section --- */
.provide-section-premium {
    background-color: #f6f4ee !important;
    /* Exact light cream canvas backdrop */
    padding: 60px 0 80px 0;
    font-family: 'Inter', system-ui, sans-serif;
}

.provide-section-premium .section-main-title {
    color: #278d36;
    font-family: 'Inter';
    /* Professional corporate midnight tone */
    font-weight: 800;
    font-size: 32px;
    margin-bottom: 40px;
    text-align: center;
}

/* Grid Layout Definition */
.provide-grid-wrapper {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
    max-width: 1240px;
    margin: 0 auto;
}

.premium-service-card {
    background: #ffffff;
    border-radius: 12px;
    /* Perfect curved edges as shown in image */
    overflow: hidden;
    display: flex;
    flex-direction: column;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.03);
    border: none;
    height: 100%;
}

/* Card Top Dark Blue Block */
.premium-service-card .card-top-header {
    background-color: #062d60 !important;
    /* Rich Dark Blue Header background */
    padding: 24px;
    color: #ffffff;
    min-height: 175px;
    /* Ensures consistent aligned heights */
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
}

.premium-service-card .card-top-header .title-flex-row {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    margin-bottom: 12px;
}

.premium-service-card .card-top-header .step-number-badge {
    color: #10b981;
    /* Perfect emerald green for numbering */
    font-weight: 800;
    font-size: 1.4rem;
    line-height: 1.1;
}

.premium-service-card .card-top-header .step-main-title {
    color: #ffffff;
    font-weight: 700;
    font-size: 1.15rem;
    line-height: 1.3;
    margin: 0;
}

.premium-service-card .card-top-header .step-short-desc p {
    color: #e2e8f0 !important;
    font-size: 0.85rem;
    font-weight: 400;
    line-height: 1.45;
    margin: 0;
    text-align: left;
}

/* Card Bottom Features Block */
.premium-service-card .card-bottom-body {
    padding: 24px;
    flex-grow: 1;
    background: #ffffff;
}

.premium-service-card .bullets-dual-column {
    display: flex;
    flex-direction: column;
    gap: 14px;
    list-style: none;
    padding: 0;
    margin: 0;
}

.premium-service-card .bullet-feature-item {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    font-size: 0.88rem;
    line-height: 1.4;
}

.premium-service-card .bullet-feature-item .feature-text {
    color: #334155;
    /* Slate gray item texts */
    font-weight: 400;
}

.premium-service-card .bullet-feature-item .checkmark-icon {
    color: #10b981 !important;
    /* Emerald green checkmarks to match design */
    font-weight: 900;
    font-size: 0.95rem;
    flex-shrink: 0;
}

/* Responsive Rules */
@media (max-width: 1024px) {
    .provide-grid-wrapper {
        grid-template-columns: repeat(2, 1fr);
        gap: 20px;
    }
}

@media (max-width: 768px) {
    .provide-grid-wrapper {
        grid-template-columns: 1fr;
    }

    .provide-section-premium .section-main-title {
        font-size: 26px;
    }

    .premium-service-card .card-top-header {
        min-height: auto;
    }
}






/* Section Main Wrapper with Background Texture */
#industries-section {
    background-color: #f2f7f6 !important;
    background-image: url('../assets/policy/texture.png');
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    padding: 60px 0;
    font-family: 'Inter', sans-serif;
    overflow: hidden;
    /* Taki marquee screens se bahar na bheege */
}

.container-fluid-custom {
    width: 100%;
    max-width: 1400px;
    margin: 0 auto;
    padding: 0 20px;
}

.row-custom {
    display: flex;
    flex-direction: column;
    align-items: center;
}

.col-12-custom {
    width: 100%;
}

.text-center-custom {
    text-align: center;
    margin-bottom: 40px;
}

/* Typography elements */
.industry-main-title {
    font-size: 2.2rem;
    font-weight: 700;
    letter-spacing: 1px;
    color: #062d60;
    margin-bottom: 12px;
}

.industry-subtitle {
    font-weight: 700;
    line-height: 1.3;
    font-size: 1.4rem;
    background: radial-gradient(circle at center, #0082a4 0%, #062d60 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    display: inline-block;
    margin-bottom: 20px;
}

.industry-description {
    max-width: 800px;
    color: #333333 !important;
    font-size: 0.92rem;
    font-weight: 400;
    line-height: 1.6;
    margin: 0 auto;
}

/* ─── MARQUEE LAYOUT SYSTEM ─── */
.industry-marquee-wrapper {
    width: 100%;
    overflow: hidden;
    margin-bottom: 25px;
    /* Dono rows ke beech ka gap */
    display: flex;
}

.industry-marquee-track {
    display: flex;
    gap: 20px;
    /* Cards ke beech ki spacing */
    white-space: nowrap;
}

/* Row 1: Left Animation */
.track-left {
    animation: marquee-to-left 30s linear infinite;
}

/* Row 2: Right Animation */
.track-right {
    animation: marquee-to-right 30s linear infinite;
}

/* Hover karne par scroll rukne ke liye (Optional) */
.industry-marquee-wrapper:hover .industry-marquee-track {
    animation-play-state: paused;
}

/* Custom Cards Styling (Exact original design) */
.industry-custom-card-4 {
    background: #ffffff;
    border: 1.5px solid #062d60;
    /* Dark blue sleek border */
    border-radius: 8px;
    padding: 18px 20px;
    display: flex;
    align-items: center;
    min-width: 280px;
    /* Card ki continuous standard width */
    flex-shrink: 0;
    /* Marquee me card squeeze na ho */
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.industry-custom-card-4:hover {
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(6, 45, 96, 0.08);
}

.industry-icon-box {
    margin-right: 15px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.industry-icon-box img {
    height: 32px;
    width: 32px;
    object-fit: contain;
}

.industry-card-name {
    font-weight: 700;
    color: #062d60;
    font-size: 0.95rem;
    letter-spacing: 0.2px;
    line-height: 1.3;
    margin: 0;
}

/* ─── KEYFRAMES FOR SMOOTH LOOP ─── */
@keyframes marquee-to-left {
    0% {
        transform: translateX(0);
    }

    100% {
        transform: translateX(calc(-50% - 10px));
        /* Half cards cross hote hi continuous jump */
    }
}

@keyframes marquee-to-right {
    0% {
        transform: translateX(calc(-50% - 10px));
    }

    100% {
        transform: translateX(0);
    }
}

/* Responsive Breakpoints */
@media (max-width: 991px) {
    .industry-main-title {
        font-size: 1.8rem;
    }

    .industry-subtitle {
        font-size: 1.2rem;
    }
}

@media (max-width: 576px) {
    #industries-section {
        padding: 40px 0;
    }

    .industry-custom-card-4 {
        min-width: 240px;
        /* Mobile me thoda compact text adjustment */
        padding: 14px 16px;
    }
}



/* --- Why Choose Accounting Section --- */
.why-choose-accounting-section {
    background-color: #ffffff;
    padding: 50px 0;
    /* Reduced from 80px for a tighter layout */
    font-family: 'Inter', system-ui, -apple-system, sans-serif;
}

/* Header Text Layout */
.section-top-main-title {
    color: #10b981;
    font-size: 30px;
    font-weight: 700;
    line-height: 1.3;
    margin-bottom: 8px;
    /* Slightly tighter gap */
    letter-spacing: -0.5px;
}

.section-top-subtitle {
    color: #02469f;
    font-size: 22px;
    font-weight: 700;
    margin-bottom: 8px;
    letter-spacing: -0.3px;
}

.section-top-mini-desc {
    color: #010203;
    font-size: 0.95rem;
    font-family: 'Inter', sans-serif;
    font-weight: 400;
    display: block;
    margin-bottom: 15px;
    /* Compact bottom space */
}

/* Row Spacing blocks (Crucial Fix) */
.why-choose-row-item {
    margin-top: 35px;
    /* Reduced from 70px */
    margin-bottom: 35px;
    /* Reduced from 70px */
    align-items: center;
    /* Keeps image & text vertically centered */
}

.why-choose-row-item:last-child {
    margin-bottom: 0;
}

/* Illustration Wrappers */
.why-choose-image-container {
    padding: 0;
    display: flex;
    justify-content: center;
    align-items: center;
}

.why-choose-main-img {
    max-width: 100%;
    height: auto;
    object-fit: contain;
}

/* Text Block Typography */
.why-choose-content-wrapper {
    margin-top: 0;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.content-text-block .content-block-title {
    color: #02469f;
    font-size: 1.65rem;
    font-weight: 700;
    font-family: 'Inter', sans-serif;
    line-height: 1.3;
    margin-bottom: 10px;
    letter-spacing: -0.2px;
}

.content-text-block .content-block-desc {
    color: #010203;
    font-size: 0.95rem;
    font-family: 'Inter', sans-serif;
    line-height: 1.5;
    font-weight: 400;
    text-align: left;
    margin-bottom: 0;
}

/* --- Mobile & Tablet Responsive Fixes --- */
@media (max-width: 991px) {
    .why-choose-accounting-section {
        padding: 40px 0;
    }

    .why-choose-content-wrapper {
        margin-top: 15px;
    }

    .section-top-main-title {
        font-size: 24px;
    }

    .section-top-subtitle {
        font-size: 19px;
    }

    .content-text-block .content-block-title {
        font-size: 18px;
    }

    .why-choose-row-item {
        margin-top: 30px;
        margin-bottom: 30px;
    }
}

@media (max-width: 575px) {
    .why-choose-accounting-section {
        padding: 30px 0;
    }

    .section-top-main-title {
        font-size: 20px;
    }

    .section-top-subtitle {
        font-size: 16px;
    }

    .why-choose-row-item {
        margin-top: 25px;
        margin-bottom: 25px;
    }
}

/* --- Testimonial Section Custom CSS --- */

.testimonial-grid-section {
    background-color: #f8fafd;
    color: #0f2942;
    font-family: 'Inter', sans-serif;
}

.testimonial-main-heading {
    font-weight: 700;
    font-size: 2.2rem;
    color: #1947ad;
    letter-spacing: -0.5px;
}

/* Card Framing - exact border color matching your UI */
.testimonial-card {
    background: #ffffff;
    border-radius: 12px;
    border: 1.5px solid rgb(6, 45, 96);
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.02);
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    padding: 25px 24px;
    height: 100%;
}

/* Stars styling matching image_18aafd.png color palette */
.rating-stars {
    font-size: 0.82rem;
    color: rgb(0, 130, 164);
    letter-spacing: 2px;
}

.testimonial-quote-box {
    position: relative;
}

/* Light blue double quotes design trick */
.testimonial-open-quote {
    font-size: 2rem;
    color: #b2f1ff;
    line-height: 0;
    display: inline-block;
    transform: translateY(8px);
    font-family: Georgia, serif;
    margin-right: 2px;
}

.testimonial-text {
    font-size: 0.88rem;
    line-height: 1.55;
    color: #4a5568;
    font-style: italic;
    display: inline;
    margin-bottom: 0;
}

/* Client Info Footer Rule divider */
.testimonial-client-footer {
    border-top: 1px solid #f0f4f8;
}

.testimonial-avatar {
    width: 44px;
    height: 44px;
    object-fit: cover;
    border: 1px solid #e1e8ed;
    min-width: 44px;
}

.client-name {
    margin-bottom: 2px;
    font-weight: 700;
    font-size: 0.95rem;
    color: #0a192f;
}

.client-designation {
    margin-bottom: 0;
    text-muted: true;
    color: #718096;
    font-size: 0.78rem;
    line-height: 1.3;
}

/* --- Balanced Software Expertise Section --- */
.software-expertise-section {
    background-color: #d3e6fa;
    padding: 50px 0;
    font-family: 'Inter', system-ui, -apple-system, sans-serif;
    overflow: hidden;
}

/* Header Typography */
.software-expertise-section .software-main-title {
    color: #032b5b;
    font-size: 26px;
    font-weight: 800;
    margin-bottom: 6px;
    text-align: center;
}

.software-expertise-section .software-subtitle {
    color: #1e293b;
    font-size: 16px;
    font-weight: 700;
    margin-bottom: 8px;
    text-align: center;
}

.software-expertise-section .software-desc {
    color: #475569;
    font-size: 14px;
    line-height: 1.5;
    max-width: 800px;
    margin: 0 auto;
    text-align: center;
}

/* --- Marquee Layout Base --- */
.software-expertise-section .marquee-wrapper {
    width: 100%;
    overflow: hidden;
    white-space: nowrap;
    position: relative;
    padding: 6px 0;
}

/* Side Gradients - Matched to #d3e6fa */
.software-expertise-section .marquee-wrapper::before,
.software-expertise-section .marquee-wrapper::after {
    content: "";
    height: 100%;
    width: 120px;
    position: absolute;
    top: 0;
    z-index: 2;
    pointer-events: none;
}

.software-expertise-section .marquee-wrapper::before {
    left: 0;
    background: linear-gradient(to right, #d3e6fa 0%, rgba(211, 230, 250, 0) 100%);
}

.software-expertise-section .marquee-wrapper::after {
    right: 0;
    background: linear-gradient(to left, #d3e6fa 0%, rgba(211, 230, 250, 0) 100%);
}

.software-expertise-section .marquee-track {
    display: flex;
    width: max-content;
    gap: 20px;
}

/* Card Item */
.software-expertise-section .marquee-item {
    background: #ffffff;
    border: 1.5px solid #1c7a13;
    border-radius: 10px;
    width: 180px;
    height: 80px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 12px 20px;
    flex-shrink: 0;
    box-shadow: 0 3px 10px rgba(3, 43, 91, 0.04);
    transition: transform 0.2s ease, border-color 0.2s ease;
}

.software-expertise-section .marquee-item:hover {
    transform: translateY(-3px);
    border-color: #032b5b;
}

.software-expertise-section .marquee-item img {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
    pointer-events: none;
}

/* --- Twin Row Animations & Directions --- */
.software-expertise-section .marquee-left-dir .marquee-track {
    animation: softwareScrollLeft 28s linear infinite;
}

.software-expertise-section .marquee-right-dir .marquee-track {
    animation: softwareScrollRight 28s linear infinite;
}

@keyframes softwareScrollLeft {
    0% {
        transform: translateX(0);
    }

    100% {
        transform: translateX(calc(-50% - 10px));
    }
}

@keyframes softwareScrollRight {
    0% {
        transform: translateX(calc(-50% - 10px));
    }

    100% {
        transform: translateX(0);
    }
}

.software-expertise-section .marquee-wrapper:hover .marquee-track {
    animation-play-state: paused;
}

/* --- Mobile Responsive Fixes --- */
@media (max-width: 768px) {
    .software-expertise-section {
        padding: 35px 0;
    }

    .software-expertise-section .software-main-title {
        font-size: 22px;
        padding: 0 15px;
    }

    .software-expertise-section .software-subtitle {
        font-size: 15px;
        padding: 0 15px;
    }

    .software-expertise-section .software-desc {
        font-size: 13px;
        padding: 0 15px;
    }

    .software-expertise-section .marquee-track {
        gap: 12px;
    }

    .software-expertise-section .marquee-item {
        width: 130px;
        height: 60px;
        padding: 8px 12px;
        border-radius: 8px;
    }

    .software-expertise-section .marquee-wrapper::before,
    .software-expertise-section .marquee-wrapper::after {
        width: 40px;
    }
}

@media (max-width: 575px) {
    .software-expertise-section {
        padding: 25px 0;
    }

    .software-expertise-section .software-main-title {
        font-size: 20px;
    }

    .software-expertise-section .software-subtitle {
        font-size: 14px;
    }

    .software-expertise-section .marquee-item {
        width: 115px;
        height: 52px;
        padding: 6px 10px;
    }

    .software-expertise-section .marquee-wrapper::before,
    .software-expertise-section .marquee-wrapper::after {
        width: 25px;
    }
}

/* =========================================================
   FAQ + Contact Form Section
   Matches classes used in the Blade template exactly.
   Requires Bootstrap CSS to be loaded on the page
   (uses .row, .col-md-*, .form-control, .form-select, .btn)
   ========================================================= */



/* ---------- Section Settings (Reduced Height) ---------- */
.faq-contact-section {
    padding: 45px 0;
    background: #f4f6f9;
    width: 100%;
}

.faq-contact-section .container {
    max-width: 1140px;
}

/* ---------- Outer Border Box ---------- */
.faq-content {
    background: #ffffff;
    border: 1.5px solid #00d4bd;
    /* Logo Cyan Border on all 4 sides */
    border-radius: 12px;
    padding: 28px 32px;
    box-shadow: 0 4px 15px rgba(6, 45, 96, 0.05);
}

/* ---------- Typography & Accent Colors ---------- */
.faq-content .faq-tag {
    display: inline-block;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: #00d4bd;
    /* Logo Cyan Accent */
    margin-bottom: 6px;
}

.faq-content h2 {
    font-size: 28px;
    font-weight: 800;
    color: #062d60;
    /* Logo Dark Blue */
    line-height: 1.2;
    margin-bottom: 20px;
}

/* ---------- FAQ Items & Borders ---------- */
.faq-wrapper {
    border-top: 1px solid #e2e8f0;
}

.faq-item {
    border-bottom: 1px solid #e2e8f0;
    position: relative;
}

/* Hidden Checkbox Controller */
.faq-input {
    position: absolute;
    opacity: 0;
    width: 0;
    height: 0;
    pointer-events: none;
}

/* Question Label Styling */
.faq-label {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    width: 100%;
    padding: 14px 30px 14px 4px;
    margin: 0;
    cursor: pointer;
    font-size: 15.5px;
    font-weight: 600;
    color: #062d60;
    /* Logo Dark Blue */
    position: relative;
    user-select: none;
    transition: color 0.2s ease;
}

.faq-label:hover {
    color: #0082a4;
}

/* Chevron Icon */
.faq-label::after {
    content: "";
    position: absolute;
    right: 4px;
    top: 50%;
    width: 8px;
    height: 8px;
    border-right: 2px solid #00d4bd;
    border-bottom: 2px solid #00d4bd;
    transform: translateY(-70%) rotate(45deg);
    transition: transform 0.25s ease;
    flex-shrink: 0;
}

/* Active State (When Clicked) */
.faq-input:checked~.faq-label::after {
    transform: translateY(-30%) rotate(-135deg);
}

.faq-input:checked~.faq-label {
    color: #0082a4;
}

/* Answer Slide Toggle */
.faq-answer {
    max-height: 0;
    overflow: hidden;
    padding: 0 30px 0 4px;
    font-size: 0.85rem;
    font-family: 'Inter';
    font-weight: 400;
    line-height: 1.25;
    color: #010302 !important;
    transition: max-height 0.3s ease, padding 0.3s ease;
}

.faq-input:checked~.faq-answer {
    max-height: 1000px;
    padding: 0 30px 14px 4px;
}

/* ---------- Contact form card (right) ---------- */

.contact-form-card {
    background: #0e7c96;
    border-radius: 18px;
    padding: 40px 32px;
    color: #ffffff;
    box-shadow: 0 20px 45px rgba(14, 124, 150, 0.28);
}

.form-header h2 {
    font-size: 26px;
    font-weight: 800;
    color: #ffffff;
    margin-bottom: 10px;
}

.form-header p {
    font-size: 14px;
    color: #d9f0f4;
    margin-bottom: 24px;
    line-height: 1.5;
}

.contact-form-card .form-label-custom {
    display: block;
    font-size: 13px;
    font-weight: 700;
    color: #ffffff;
    margin-bottom: 6px;
    margin-top: 2px;
}

/* Bootstrap form control overrides so inputs look white on the teal card */
.contact-form-card .form-control,
.contact-form-card .form-select {
    background-color: #ffffff;
    border: none;
    border-radius: 8px;
    color: #0d1b3e;
    padding: 10px 14px;
    font-size: 14px;
    box-shadow: none;
}

.contact-form-card .form-control::placeholder {
    color: #8b93a7;
}

.contact-form-card .form-control:focus,
.contact-form-card .form-select:focus {
    box-shadow: 0 0 0 3px rgba(255, 255, 255, 0.35);
    border: none;
}

.contact-form-card .form-select {
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%230d1b3e' stroke-width='2'><path d='M6 9l6 6 6-6'/></svg>");
    background-repeat: no-repeat;
    background-position: right 12px center;
    background-size: 12px;
}

.contact-form-card .input-group .form-select {
    max-width: 100px;
    flex: 0 0 auto;
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
}

.contact-form-card .input-group .form-control {
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
}

.contact-form-card textarea.form-control {
    resize: vertical;
    min-height: 90px;
}

.contact-form-card .small-error {
    display: block;
    font-size: 12px;
    margin-top: 4px;
}

.contact-form-card .btn-primary {
    background: #0d2b52;
    border: none;
    border-radius: 999px;
    padding: 13px 24px;
    font-size: 15px;
    font-weight: 700;
    letter-spacing: 0.02em;
    width: 100%;
}

.contact-form-card .btn-primary:hover,
.contact-form-card .btn-primary:focus {
    background: #123a6d;
}

/* row/col gutters already handled by bootstrap's g-2, this just tightens vertical rhythm */
.contact-form-card .row.g-2>* {
    margin-bottom: 14px;
}

/* ---------- Responsive ---------- */

@media (max-width: 1024px) {
    .faq-grid {
        gap: 36px;
    }

    .faq-content h2 {
        font-size: 30px;
    }
}

@media (max-width: 860px) {
    .faq-contact-section {
        padding: 56px 0;
    }

    .faq-grid {
        grid-template-columns: 1fr;
        gap: 44px;
    }

    .contact-form-card {
        max-width: 480px;
        margin: 0 auto;
    }
}

@media (max-width: 560px) {
    .faq-contact-section {
        padding: 44px 0;
    }

    .faq-content .faq-tag {
        font-size: 12px;
    }

    .faq-content h2 {
        font-size: 24px;
        margin-bottom: 22px;
    }

    .faq-label {
        font-size: 14.5px;
        padding: 16px 30px 16px 2px;
    }

    .faq-answer {
        font-size: 13.5px;
        padding-right: 0;
    }

    .faq-input:checked~.faq-answer {
        padding: 0 0 16px 2px;
    }

    .contact-form-card {
        padding: 26px 18px;
        border-radius: 14px;
    }

    .form-header h2 {
        font-size: 22px;
    }

    .form-header p {
        font-size: 13px;
        margin-bottom: 20px;
    }

    .contact-form-card .input-group .form-select {
        max-width: 84px;
    }
}

/* blog css */



/* ==========================================================================
   Compact 4-Column Blog Section
   ========================================================================== */

/* write code here */

/* --- Meet Our Professionals Section (Deep Navy Theme) --- */
.meet-professionals-section {
    background-color: #031b33;
    /* Deep Navy Background */
    padding: 50px 0;
    font-family: 'Inter', system-ui, -apple-system, sans-serif;
}

/* Header Styling */
.meet-professionals-section .prof-main-title {
    color: #ffffff;
    /* Crisp white for deep navy contrast */
    font-size: 28px;
    font-weight: 800;
    margin-bottom: 6px;
    letter-spacing: -0.3px;
}

.meet-professionals-section .prof-subtitle {
    color: #94a3b8;
    /* Muted light slate */
    font-size: 15px;
    margin-bottom: 0;
    line-height: 1.4;
}

/* Card Styling with Prominent Permanent Border */
.prof-card {
    background: #072544;
    /* Darker navy card body */
    border: 1.5px solid #233a54;
    /* Permanent visible border */
    border-radius: 12px;
    padding: 24px 16px;
    text-align: center;
    transition: all 0.3s ease;
    height: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.prof-card:hover {
    transform: translateY(-5px);
    border-color: #10b981;
    /* Emerald border glow on hover */
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.35);
    background: #0a2d52;
}

/* Perfect Circle Image Box */
.prof-img-wrapper {
    width: 120px;
    height: 120px;
    margin: 0 auto 16px auto;
    border-radius: 50%;
    padding: 4px;
    background: #031b33;
    border: 2px solid #10b981;
    /* Emerald ring around circle */
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2);
    flex-shrink: 0;
}

.prof-circle-img {
    width: 100%;
    height: 100%;
    border-radius: 50%;
    object-fit: cover;
    display: block;
}

/* Content Details */
.prof-info {
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 100%;
}

.prof-name {
    color: #ffffff;
    font-size: 17px;
    font-weight: 700;
    margin-bottom: 4px;
}

.prof-designation {
    color: #cbd5e1;
    font-size: 13.5px;
    font-weight: 500;
    margin-bottom: 14px;
}

/* LinkedIn Profile Button */
.prof-linkedin-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    color: #38bdf8;
    /* Light sky blue */
    background: rgba(56, 189, 248, 0.1);
    border: 1px solid #38bdf8;
    padding: 6px 14px;
    border-radius: 20px;
    font-size: 12.5px;
    font-weight: 600;
    text-decoration: none;
    transition: all 0.2s ease;
}

.prof-linkedin-link:hover {
    color: #031b33;
    background: #38bdf8;
    transform: scale(1.03);
}

.prof-linkedin-link svg {
    flex-shrink: 0;
}

/* --- Responsive Adaptations --- */
@media (max-width: 991px) {
    .meet-professionals-section {
        padding: 40px 0;
    }

    .prof-card {
        padding: 20px 12px;
    }

    .prof-img-wrapper {
        width: 105px;
        height: 105px;
    }
}

@media (max-width: 575px) {
    .meet-professionals-section {
        padding: 30px 0;
    }

    .meet-professionals-section .prof-main-title {
        font-size: 22px;
    }

    .meet-professionals-section .prof-subtitle {
        font-size: 13.5px;
    }

    .prof-img-wrapper {
        width: 95px;
        height: 95px;
    }

    .prof-name {
        font-size: 15.5px;
    }

    .prof-designation {
        font-size: 12.5px;
    }
}