/* ===================================================
   GLOBAL TYPOGRAPHY & CARD DESIGN SYSTEM FOR CA FINANCE PAGE
   Exact parity with Accomation, Finora AI, and Obligo AI pages:
   - Section Titles (h2 / titles): 30px (24px mobile), font-weight: 600, color: #000000, line-height: 1.15
   - Subheadings / Card Titles: font-weight: 600, color: #000000, line-height: 1.25
   - All Non-Headings (Body text, p, lists, cards): 16px, font-weight: 500, color: #000000, line-height: 1.6
   - Section Padding: 30px 0 10px (desktop) / 25px 0 (mobile)
   - Cards: Signature style with border-top: 4px solid #16398f, border: 1px solid #e1e8f5,
            border-radius: 16px, box-shadow: 0 8px 20px rgba(16, 57, 143, 0.05)
=================================================== */

/* ===================================================
   1. SECTION TITLES & MAIN HEADINGS
=================================================== */
h2,
.main_title,
.section-heading h2,
.section-heading1 h2,
.wf-header-title,
.title-science,
.lux-cta-title,
.ca-section-title {
    font-size: 30px !important;
    font-weight: 600 !important;
    color: #000000 !important;
    line-height: 1.15 !important;
    letter-spacing: -0.50px !important;
    font-family: 'Montserrat', sans-serif !important;
    margin-bottom: 0 !important;
}

/* White Hero Title on Dark Particle Background */
.main_title {
    color: #ffffff !important;
}

.animate-border {
    margin-top: 10px !important;
    margin-bottom: 20px !important;
    width: 60px !important;
    height: 3px !important;
    background: #16398f !important;
    display: block !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

.section-heading p {
    font-size: 16px !important;
    font-weight: 500 !important;
    color: #000000 !important;
    line-height: 1.6 !important;
    font-family: 'Montserrat', sans-serif !important;
    margin-top: 0 !important;
}

/* ===================================================
   2. SUBHEADINGS & CARD HEADINGS (h3, h4, h5, titles)
=================================================== */
.hero-slider-content h5,
.kf-deck-title,
.reg-wide-title,
.hiw-cell-title,
.impact-title,
.card-title,
.quote-text h3 {
    font-weight: 600 !important;
    color: #000000 !important;
    line-height: 1.15 !important;
    font-family: 'Montserrat', sans-serif !important;
}

.hero-slider-content h5 {
    color: #ffffff !important;
    font-size: 20px !important;
    margin-bottom: 12px !important;
}


.reg-wide-title {
    font-size: 20px !important;
    margin-bottom: 4px !important;
}

.hiw-cell-title {
    font-size: 20px !important;
    margin-bottom: 10px !important;
    text-align: center !important;
}

.impact-title {
    font-size: 20px !important;
    text-align: center !important;
    margin: 0 !important;
}

.quote-text h3 {
    font-size: 20px !important;
    margin-bottom: 0 !important;
}

/* ===================================================
   3. ALL NON-HEADINGS (Body Text, Paragraphs, Lists, Cards)
   font-size: 16px, font-weight: 500, color: #000000, line-height: 1.6
=================================================== */
p,
.text-body,
.wf-header-desc,
.wf-header-desc p,
.para-science,
.impact-hero-text,
.quote-text p {
    font-size: 16px !important;
    font-weight: 500 !important;
    color: #000000 !important;
    line-height: 1.6 !important;
    font-family: 'Montserrat', sans-serif !important;
}

/* Dark Hero Section */
.custom-hero-section {
    padding-bottom: 40px !important;
    position: relative !important;
    overflow: hidden !important;
}

.custom-hero-section p,
.hero-slider-content p {
    font-size: 16px !important;
    font-weight: 500 !important;
    line-height: 1.6 !important;
    color: #ffffff !important;
    font-family: 'Montserrat', sans-serif !important;
}

.custom-hero-section .image-wrap {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    position: relative !important;
    width: 100% !important;
    text-align: center !important;
}

.custom-hero-section .image-wrap img,
.custom-hero-section img.hideMobile {
    position: relative !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    display: block !important;
    border-radius: 14px !important;
    object-fit: contain !important;
    margin: 0 auto !important;
    transition: transform 0.3s ease, box-shadow 0.3s ease !important;
}

/* Hero & General Buttons */
.btn-custom {
    background-color: #2352a7 !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    color: #ffffff !important;
    border: 0.5px solid #fff !important;
    border-radius: 0.25rem !important;
    padding: 0.375rem 0.75rem !important;
    display: inline-block !important;
    transition: all 0.2s ease-in-out !important;
    box-shadow: none !important;
    transform: none !important;
    font-family: inherit !important;
    line-height: 1.5 !important;
    text-decoration: none !important;
}

.btn-custom:hover {
    background-color: #3b6cc5 !important;
    color: #ffffff !important;
    border-color: #3b6cc5 !important;
    transform: none !important;
    box-shadow: none !important;
    text-decoration: none !important;
}

.btn_pdf {
    background-color: #ffffff !important;
    font-size: 17px !important;
    font-weight: 700 !important;
    color: #000000 !important;
    border: 1px solid #ffffff !important;
    border-radius: 0.25rem !important;
    padding: 0.375rem 0.75rem !important;
    display: inline-block !important;
    transition: all 0.2s ease-in-out !important;
    box-shadow: none !important;
    transform: none !important;
    text-decoration: none !important;
    font-family: inherit !important;
    line-height: 1.5 !important;
}

.btn_pdf:hover {
    background-color: #f8f9fa !important;
    color: #000000 !important;
    border-color: #f8f9fa !important;
    transform: none !important;
    box-shadow: none !important;
    text-decoration: none !important;
}

.hero-btn-group,
.quote-btn-group {
    display: inline-flex !important;
    flex-direction: row !important;
    align-items: center !important;
    gap: 12px !important;
    flex-wrap: nowrap !important;
}

/* ===================================================
   4. SECTION PADDING & ALTERNATING BACKGROUNDS
   Uniform 30px 0 10px vertical padding matching Accomation / Finora / Obligo
=================================================== */
.ca-intro-section,
.kf-deck-section,
.wf-diagram-section,
.ca-why-section,
.reg-wide-section,
.impact-section,
.hiw-grid-section,
.ca-case-study-section,
.ca-quote-section {
    padding: 30px 0 10px !important;
}

/* Alternating Section Colors */
.ca-intro-section {
    background: #ffffff !important;
}

.kf-deck-section {
    background: #f8fbff !important;
    border-top: 1px solid #e1e8f5 !important;
    border-bottom: 1px solid #e1e8f5 !important;
    position: relative !important;
}

.wf-diagram-section {
    background: #ffffff !important;
    position: relative !important;
}


.reg-wide-section {
    background: #ffffff !important;
    position: relative !important;
}

.impact-section {
    background: #f8fbff !important;
    border-top: 1px solid #e1e8f5 !important;
    border-bottom: 1px solid #e1e8f5 !important;
    position: relative !important;
}

.hiw-grid-section {
    background: #ffffff !important;
    position: relative !important;
}

.ca-quote-section {
    background: #ffffff !important;
    padding: 20px 0 10px 0 !important;
}

/* ===================================================
   5. SIGNATURE CARD SYSTEMS (ACCOMATION / FINORA AI)
=================================================== */

/* A. Key Features Deck Cards (10 Cards) */
.kf-deck-card {
    background: #ffffff !important;
    border-radius: 16px !important;
    padding: 22px 18px 20px 18px !important;
    max-height: 100% !important;
    text-align: center !important;
    border: 1px solid #e1e8f5 !important;
    border-top: 4px solid #16398f !important;
    box-shadow: 0 8px 20px rgba(16, 57, 143, 0.05) !important;
    transition: all 0.35s cubic-bezier(0.165, 0.84, 0.44, 1) !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    position: relative !important;
 
}

.kf-deck-card:hover {
    transform: translateY(-6px) !important;
    box-shadow: 0 16px 32px rgba(16, 57, 143, 0.12) !important;
    border-color: #cbd5e1 !important;
    border-top-color: #1f4ab8 !important;
}

.kf-top-num-tag {
    background: #eff6ff !important;
    color: #16398f !important;
    font-size: 0.72rem !important;
    font-weight: 700 !important;
    letter-spacing: 0.5px !important;
    padding: 3px 12px !important;
    border-radius: 20px !important;
    margin-bottom: 10px !important;
    display: inline-block !important;
    border: 1px solid #dbeafe !important;
}

.kf-ring-icon-outer {
    width: 58px !important;
    height: 58px !important;
    border-radius: 50% !important;
    border: 2px dashed #16398f !important;
    padding: 3px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin: 0 auto 10px auto !important;
    transition: all 0.35s ease !important;
}

.kf-ring-icon-inner {
    width: 100% !important;
    height: 100% !important;
    border-radius: 50% !important;
    background: linear-gradient(135deg, #1f4ab8 0%, #16398f 100%) !important;
    color: #ffffff !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 1.35rem !important;
    box-shadow: 0 6px 16px rgba(16, 57, 143, 0.2) !important;
}

.kf-deck-card:hover .kf-ring-icon-outer {
    transform: scale(1.06) !important;
    border-color: #1f4ab8 !important;
}

.kf-deck-title {
    font-size: 20px !important;
    font-weight: 600 !important;
    color: #000000 !important;
    line-height: 1.15 !important;
    min-height: 42px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
    margin: 10px 0 6px 0 !important;
    font-family: 'Montserrat', sans-serif !important;
}

.kf-deck-desc {
    font-size: 16px !important;
    font-weight: 500 !important;
    color: #000000 !important;
    line-height: 1.6 !important;
    min-height: 58px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
    font-family: 'Montserrat', sans-serif !important;
}

.kf-deck-list {
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
    text-align: left !important;
    width: 100% !important;
    flex-grow: 1 !important;
}

.kf-deck-list li {
    font-size:16px !important;
    font-weight: 500 !important;
    color: #000000 !important;
    margin-bottom: 5px !important;
    line-height: 1.6 !important;
    text-align: left !important;
    display: flex !important;
    align-items: flex-start !important;
    font-family: 'Montserrat', sans-serif !important;
}

.kf-deck-list li i {
    color: #16398f !important;
    margin-right: 7px !important;
    margin-top: 5px !important;
    font-size: 16px !important;
    flex-shrink: 0 !important;
}

/* Feature 10 Sleek Horizontal Banner */
.kf-deck-banner {
    background: #ffffff !important;
    border-radius: 16px !important;
    padding: 20px 28px !important;
    border: 1px solid #e1e8f5 !important;
    border-top: 4px solid #16398f !important;
    box-shadow: 0 8px 20px rgba(16, 57, 143, 0.05) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 30px !important;
    transition: all 0.35s ease !important;
}

.kf-deck-banner:hover {
    transform: translateY(-4px) !important;
    box-shadow: 0 16px 32px rgba(16, 57, 143, 0.12) !important;
    border-color: #cbd5e1 !important;
    border-top-color: #1f4ab8 !important;
}

.kf-banner-left {
    flex: 0 0 46% !important;
}

.kf-banner-right {
    flex: 1 !important;
}

@media (max-width: 991px) {
    .kf-deck-banner {
        flex-direction: column !important;
        align-items: flex-start !important;
        padding: 20px 18px !important;
        gap: 16px !important;
    }
    .kf-banner-left,
    .kf-banner-right {
        width: 100% !important;
        flex: 1 1 100% !important;
    }
}



.wf-box-container {
    position: relative !important;
    background: #f8fbff !important;
    border: 1px solid #e1e8f5 !important;
    border-radius: 20px !important;
    padding: 38px 7px 24px 7px !important;
    margin-bottom: 20px !important;
    box-shadow: 0 6px 20px rgba(16, 57, 143, 0.04) !important;
}

.wf-box-badge {
    position: absolute !important;
    top: -16px !important;
    left: 28px !important;
    padding: 6px 22px !important;
    border-radius: 20px !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    letter-spacing: 0.3px !important;
    background: #16398f !important;
    color: #ffffff !important;
    box-shadow: 0 4px 12px rgba(22, 57, 143, 0.2) !important;
}

/* Simple Flex Row of Steps with strictly equal heights */
.wf-steps-flex {
    display: flex !important;
    align-items: stretch !important; /* CRITICAL: ensures all cards in row have identical height */
    justify-content: space-between !important;
    flex-wrap: nowrap !important;
    width: 100% !important;
    gap: 8px !important;
}

/* Simple Step Card: Just Icon & Title */
.wf-step-card {
    flex: 1 1 0px !important;
    min-width: 0 !important;
    /* background: #ffffff !important; */
    /* border: 1px solid #e1e8f5 !important; */
    /* border-radius: 14px !important; */
    /* padding: 18px 8px 14px 8px !important; */
    min-height: 125px !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
    /* box-shadow: 0 4px 12px rgba(16, 57, 143, 0.03) !important; */
    transition: all 0.25s ease !important;
}

.wf-step-card:hover {
    transform: translateY(-3px) !important;
    /* border-color: #16398f !important; */
    /* box-shadow: 0 8px 20px rgba(16, 57, 143, 0.08) !important; */
}

/* Simple Icon Box */
.wf-icon-box {
    width: 48px !important;
    height: 48px !important;
    border-radius: 12px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 20px !important;
    margin-bottom: 12px !important;
    flex-shrink: 0 !important;
    color: #16398f !important;
    background: #eff6ff !important;
    transition: transform 0.2s ease !important;
}

.wf-step-card:hover .wf-icon-box {
    transform: scale(1.06) !important;
}

/* Simple Title Label */
.wf-step-label {
    font-size: 16px !important;
    font-weight: 500 !important;
    color: #000000 !important;
    line-height: 1.6 !important;
    text-align: center !important;
    font-family: 'Montserrat', sans-serif !important;
    min-height: 38px !important; /* Perfectly balances 1-line and 2-line titles */
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    word-break: normal !important;
}

/* Simple Connector Arrow */
.wf-step-arrow {
    color: #16398f !important;
    font-size: 14px !important;
    flex-shrink: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin: 0 2px !important;
    align-self: center !important;
}

.why-card {
    background: #ffffff !important;
    border: 1px solid #e1e8f5 !important;
    border-top: 4px solid #16398f !important;
    border-radius: 16px !important;
    padding: 26px 20px 24px 20px !important;
    width: 100% !important;
    height: 100% !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: space-between !important;
    box-shadow: 0 8px 20px rgba(16, 57, 143, 0.05) !important;
    transition: all 0.35s cubic-bezier(0.165, 0.84, 0.44, 1) !important;
    position: relative !important;
}

.why-card:hover {
    transform: translateY(-5px) !important;
    border-color: #cbd5e1 !important;
    border-top-color: #1f4ab8 !important;
    box-shadow: 0 14px 30px rgba(16, 57, 143, 0.12) !important;
}

.why-card-header {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin-bottom: 14px !important;
    text-align: center !important;
    width: 100% !important;
}

.why-card-title {
    font-size: 20px !important;
    font-weight: 600 !important;
    color: #000000 !important;
    line-height: 1.3 !important;
    font-family: 'Montserrat', sans-serif !important;
    margin: 0 !important;
    min-height: 48px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
    width: 100% !important;
}

.why-card-icon-wrap {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin: 10px 0 18px 0 !important;
}

.why-card-icon {
    width: 76px !important;
    height: 76px !important;
    border-radius: 18px !important;
    background: linear-gradient(135deg, #eff6ff 0%, #dbeafe 100%) !important;
    border: 1px solid #bfdbfe !important;
    color: #16398f !important;
    font-size: 32px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    box-shadow: 0 6px 16px rgba(37, 99, 235, 0.1) !important;
    transition: transform 0.3s ease, box-shadow 0.3s ease !important;
}

.why-card:hover .why-card-icon {
    transform: scale(1.08) rotate(-2deg) !important;
    box-shadow: 0 10px 22px rgba(37, 99, 235, 0.18) !important;
}

.why-card-desc,
.why-card p {
    font-size: 16px !important;
    font-weight: 500 !important;
    color: #000000 !important;
    line-height: 1.6 !important;
    font-family: 'Montserrat', sans-serif !important;
    margin: 0 !important;
    text-align: center !important;
    min-height: 52px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

@media (max-width: 576px) {
    .why-card {
        padding: 20px 16px !important;
    }
    .why-card-title {
        font-size: 18px !important;
        min-height: auto !important;
    }
    .why-card-icon {
        width: 64px !important;
        height: 64px !important;
        font-size: 26px !important;
    }
    .why-card-desc,
    .why-card p {
        min-height: auto !important;
        font-size: 15px !important;
    }
}

/* C. Regulatory & Financial Workflows (4 Wide Cards) */
.reg-wide-card {
    background: #ffffff !important;
    border: 1px solid #e1e8f5 !important;
    border-top: 4px solid #16398f !important;
    border-radius: 16px !important;
    padding: 28px 26px !important;
    height: 100% !important;
    box-shadow: 0 8px 20px rgba(16, 57, 143, 0.05) !important;
    transition: all 0.35s cubic-bezier(0.165, 0.84, 0.44, 1) !important;
    position: relative !important;
}

.reg-wide-card:hover {
    transform: translateY(-6px) !important;
    border-color: #cbd5e1 !important;
    border-top-color: #1f4ab8 !important;
    box-shadow: 0 16px 32px rgba(16, 57, 143, 0.12) !important;
}

.reg-wide-header {
    display: flex !important;
    align-items: center !important;
    gap: 16px !important;
    margin-bottom: 20px !important;
    padding-bottom: 16px !important;
    border-bottom: 1px solid #f1f5f9 !important;
}

.reg-wide-orb {
    width: 52px !important;
    height: 52px !important;
    border-radius: 14px !important;
    background: linear-gradient(135deg, #1f4ab8 0%, #16398f 100%) !important;
    color: #ffffff !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 1.45rem !important;
    flex-shrink: 0 !important;
    box-shadow: 0 6px 16px rgba(16, 57, 143, 0.2) !important;
}

.reg-wide-subtitle {
    font-size: 16px !important;
    font-weight: 600 !important;
    color: #000000 !important;
    letter-spacing: 1.6px !important;
    text-transform:capitalize;
}

.reg-tag-grid {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 10px !important;
}

.reg-chip {
    background: #eff6ff !important;
    border: 1px solid #bfdbfe !important;
    border-radius: 30px !important;
    padding: 7px 16px !important;
    font-size: 16px !important;
    font-weight: 500 !important;
    color: #16398f !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    transition: all 0.25s ease !important;
    font-family: 'Montserrat', sans-serif !important;
}

.reg-chip i {
    color: #16398f !important;
    font-size: 0.8rem !important;
    transition: color 0.25s ease !important;
}

.reg-chip:hover {
    background: #16398f !important;
    border-color: #16398f !important;
    color: #ffffff !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 4px 12px rgba(22, 57, 143, 0.2) !important;
}

.reg-chip:hover i {
    color: #ffffff !important;
}

/* D. The Business Impact Cards (5 Cards) */
@media (min-width: 992px) {
    .col-lg-2-4 {
        flex: 0 0 20% !important;
        max-width: 20% !important;
    }
}

.impact-card {
    background: #ffffff !important;
    border: 1px solid #e1e8f5 !important;
    border-top: 4px solid #16398f !important;
    border-radius: 16px !important;
    padding: 24px 16px !important;
    height: 100% !important;
    text-align: center !important;
    box-shadow: 0 8px 20px rgba(16, 57, 143, 0.05) !important;
    transition: all 0.35s cubic-bezier(0.165, 0.84, 0.44, 1) !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
}

.impact-card:hover {
    transform: translateY(-6px) !important;
    border-color: #cbd5e1 !important;
    border-top-color: #1f4ab8 !important;
    box-shadow: 0 16px 32px rgba(16, 57, 143, 0.12) !important;
}

.impact-icon {
    width: 52px !important;
    height: 52px !important;
    border-radius: 14px !important;
    background: #eff6ff !important;
    border: 1px solid #dbeafe !important;
    color: #16398f !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 1.45rem !important;
    margin-bottom: 14px !important;
    transition: all 0.3s ease !important;
}

.impact-card:hover .impact-icon {
    background: #16398f !important;
    border-color: #16398f !important;
    color: #ffffff !important;
    transform: scale(1.08) !important;
}

.impact-hero-box {
    background: #ffffff !important;
    border: 1px solid #e1e8f5 !important;
    border-radius: 16px !important;
    padding: 30px 36px !important;
    position: relative !important;
    overflow: hidden !important;
    box-shadow: 0 8px 20px rgba(16, 57, 143, 0.04) !important;
    text-align: center !important;
}

.impact-hero-text {
    font-size: 16px !important;
    font-weight: 500 !important;
    color: #000000 !important;
    line-height: 1.65 !important;
    margin: 0 !important;
    font-family: 'Montserrat', sans-serif !important;
}

.impact-hero-icon {
    position: absolute !important;
    right: 20px !important;
    bottom: 10px !important;
    font-size: 4rem !important;
    color: rgba(16, 57, 143, 0.05) !important;
    pointer-events: none !important;
}

/* E. How it Works (8 Grid Cells) */
.hiw-grid-container {
    border: 1px solid #e1e8f5 !important;
    border-radius: 16px !important;
    overflow: hidden !important;
    background: #ffffff !important;
    box-shadow: 0 8px 20px rgba(16, 57, 143, 0.04) !important;
}

.hiw-grid-row {
    display: flex !important;
    flex-wrap: wrap !important;
    margin: 0 !important;
}

.hiw-grid-cell {
    border-right: 1px solid #e1e8f5 !important;
    border-bottom: 1px solid #e1e8f5 !important;
    padding: 32px 24px !important;
    background: #ffffff !important;
    transition: background-color 0.25s ease !important;
    text-align: center !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
}

.hiw-grid-cell:hover {
    background: #f8fbff !important;
}

@media (min-width: 992px) {
    .hiw-grid-cell:nth-child(4n) {
        border-right: none !important;
    }
    .hiw-grid-cell:nth-child(n+5) {
        border-bottom: none !important;
    }
}

@media (max-width: 991px) and (min-width: 576px) {
    .hiw-grid-cell:nth-child(2n) {
        border-right: none !important;
    }
}

@media (max-width: 575px) {
    .hiw-grid-cell {
        border-right: none !important;
    }
}

.hiw-cell-icon {
    width: 52px !important;
    height: 52px !important;
    border-radius: 14px !important;
    background: #eff6ff !important;
    border: 1px solid #dbeafe !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 1.5rem !important;
    color: #16398f !important;
    margin-bottom: 18px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    transition: all 0.3s ease !important;
}
  .custmP{
    font-size: 16px !important;
    font-weight: 500 !important;
    color: #000000 !important;
    line-height: 1.6 !important;
    margin: 0px;
}
.hiw-grid-cell:hover .hiw-cell-icon {
    background: #16398f !important;
    border-color: #16398f !important;
    color: #ffffff !important;
    transform: scale(1.08) !important;
}
.block-tb2{
    padding-top:30px;
}
.hiw-cell-desc {
    font-size: 16px !important;
    color: #000000 !important;
    line-height: 1.6 !important;
    margin: 0 !important;
    font-weight: 500 !important;
    font-family: 'Montserrat', sans-serif !important;
}

.block-science4 {
    width: 70%!important;
    margin: auto;
    text-align: center;
    position: relative;
}

/* F. Quote / CTA Section (Accomation / Obligo Style) */
.quote-section {
    background: #ffffff !important;
    border-radius: 20px !important;
    border: 1px solid #e1e8f5 !important;
    box-shadow: 0 10px 30px rgba(16, 57, 143, 0.06) !important;
    padding: 35px 40px !important;
    display: flex !important;
    align-items: center !important;
    gap: 30px !important;
}

.quote-image {
    max-width: 200px !important;
    border-radius: 16px !important;
}

.quote-content {
    flex: 1 !important;
}

.quote-text {
    font-size: 16px !important;
    font-weight: 500 !important;
    color: #000000 !important;
    line-height: 1.6 !important;
    margin-bottom: 16px !important;
    font-family: 'Montserrat', sans-serif !important;
}

.quote-btn {
    background-color: #2352a7 !important;
    color: #ffffff !important;
    border: 0.5px solid #2352a7 !important;
    border-radius: 0.25rem !important;
    padding: 0.375rem 0.75rem !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    font-family: inherit !important;
    transition: all 0.2s ease-in-out !important;
    cursor: pointer !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    text-decoration: none !important;
    margin: 0 !important;
    box-shadow: none !important;
    transform: none !important;
}

.quote-btn:hover {
    background-color: #3b6cc5 !important;
    color: #ffffff !important;
    border-color: #3b6cc5 !important;
    transform: none !important;
    box-shadow: none !important;
    text-decoration: none !important;
}

/* ===================================================
   6. RESPONSIVE BREAKPOINTS
=================================================== */
@media (max-width: 991px) {
    .custom-hero-section .hero-slider-content {
        margin-top: 0 !important;
        text-align: center !important;
    }

    .custom-hero-section .hero-slider-content p {
        text-align: center !important;
    }

    .custom-hero-section .image-wrap {
        margin-top: 25px !important;
    }

    .quote-section {
        flex-direction: column !important;
        text-align: center !important;
        padding: 30px 24px !important;
    }

    .wf-box-container {
        padding: 36px 16px 20px 16px !important;
    }

    .wf-steps-flex {
        flex-wrap: wrap !important;
        justify-content: center !important;
        gap: 12px !important;
    }

    .wf-step-card {
        flex: 0 0 calc(25% - 12px) !important;
        min-width: 110px !important;
        min-height: 120px !important;
    }

    .wf-step-arrow {
        display: none !important;
    }
}

@media (max-width: 576px) {
    .wf-step-card {
        flex: 0 0 calc(50% - 8px) !important;
        min-width: 0 !important;
        padding: 14px 6px !important;
    }

    .wf-box-container {
        padding: 24px 12px 18px 12px !important;
    }

    .wf-step-label {
        font-size: 13px !important;
    }
}

@media (max-width: 767px) {
    /* 1. Typography Centering */
    h2,
    .main_title,
    .section-heading h2,
    .section-heading1 h2,
    .wf-header-title,
    .title-science,
    .lux-cta-title,
    .ca-section-title {
        font-size: 24px !important;
        text-align: center !important;
    }

    /* 2. Section Padding */
    .ca-intro-section,
    .kf-deck-section,
    .wf-diagram-section,
    .ca-why-section,
    .reg-wide-section,
    .impact-section,
    .hiw-grid-section,
    .ca-case-study-section,
    .ca-quote-section {
        padding: 25px 0 !important;
    }

    /* 3. Hero Section */
    .custom-hero-section {
        padding-top: 110px !important;
        padding-bottom: 30px !important;
        text-align: center !important;
    }

    .hero-slider-content {
        text-align: center !important;
        margin-top: 0 !important;
        padding-top: 0 !important;
    }

    .hero-slider-content h1,
    .hero-slider-content .main_title {
        text-align: center !important;
        font-size: 26px !important;
        margin-bottom: 8px !important;
    }

    .custom-hero-section p,
    .hero-slider-content p,
    .custom-hero-section .text-left {
        text-align: center !important;
        font-size: 15px !important;
        line-height: 1.55 !important;
        margin-bottom: 20px !important;
    }

    .hero-btn-group {
        display: flex !important;
        flex-direction: row !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 8px !important;
        flex-wrap: nowrap !important;
        width: 100% !important;
        max-width: 380px !important;
        margin: 0 auto !important;
    }

    .hero-btn-group .btn,
    .hero-slider-content .btn {
        flex: 1 1 0px !important;
        padding: 8px 12px !important;
        font-size: clamp(12px, 3.6vw, 14px) !important;
        white-space: nowrap !important;
        text-align: center !important;
        letter-spacing: -0.2px !important;
        border-radius: 0.25rem !important;
        margin: 0 !important;
    }

    /* 4. Quote / CTA Section */
    .quote-section {
        padding: 24px 14px !important;
        text-align: center !important;
        gap: 16px !important;
    }

    .quote-image {
        max-width: 150px !important;
        margin: 0 auto !important;
    }

    .quote-content {
        width: 100% !important;
        text-align: center !important;
    }

    .quote-text,
    .quote-text h3 {
        text-align: center !important;
        font-size: 18px !important;
        line-height: 1.35 !important;
        margin-bottom: 16px !important;
    }

    .quote-btn-group {
        display: flex !important;
        flex-direction: row !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 8px !important;
        flex-wrap: nowrap !important;
        width: 100% !important;
        max-width: 380px !important;
        margin: 0 auto !important;
    }

    .quote-btn {
        flex: 1 1 0px !important;
        padding: 8px 12px !important;
        font-size: clamp(12px, 3.6vw, 14px) !important;
        white-space: nowrap !important;
        text-align: center !important;
        letter-spacing: -0.2px !important;
        border-radius: 0.25rem !important;
        margin: 0 !important;
    }

    /* 5. Section Headings */
    .section-heading {
        text-align: center !important;
    }

    .section-heading .animate-border {
        margin: 8px auto 14px auto !important;
    }

    .section-heading p {
        text-align: center !important;
        font-size: 15px !important;
    }
}
