
/* NABDM LIGHT REFRESH
   Keeps the software demos/CTA/footer grounded while making the overall site
   brighter, more open and less charcoal-heavy. */

/* ---------- LIGHT NAVIGATION ---------- */
.header_absolute .page_header,
.page_header.ds {
    background: rgba(255,255,255,.96) !important;
    border-bottom: 1px solid #e5e9ed !important;
    box-shadow: 0 8px 28px rgba(31,42,55,.06);
    -webkit-backdrop-filter: blur(10px);
    backdrop-filter: blur(10px);
}

.page_header .sf-menu > li > a {
    color: #29313d !important;
}
.page_header .sf-menu > li.active > a,
.page_header .sf-menu > li > a:hover {
    color: #ff497c !important;
}
.nab-language,
.nab-language a {
    color: #4f5863 !important;
}
.page_header .toggle_menu span,
.page_header .toggle_menu span:before,
.page_header .toggle_menu span:after {
    background: #29313d !important;
}

/* ---------- BRIGHT HERO / OLD-SITE IMAGE FEEL ---------- */
.nab-hero,
.systems-hero,
.industries-hero,
.portfolio-hero,
.how-hero,
.demo-hero,
.lead-hero {
    background:
        radial-gradient(circle at 12% 18%, rgba(255,73,124,.13), transparent 27%),
        radial-gradient(circle at 88% 70%, rgba(0,190,163,.11), transparent 30%),
        linear-gradient(rgba(255,255,255,.86), rgba(255,255,255,.93)),
        url("../img/parallax/light-abstract.jpg") center center / cover no-repeat !important;
}

.nab-hero:after,
.systems-hero:after,
.industries-hero:after,
.portfolio-hero:after,
.how-hero:after,
.demo-hero:after,
.lead-hero:after {
    background-image:
        linear-gradient(rgba(32,41,54,.035) 1px, transparent 1px),
        linear-gradient(90deg, rgba(32,41,54,.035) 1px, transparent 1px) !important;
}

.nab-hero h1,
.systems-hero h1,
.industries-hero h1,
.portfolio-hero h1,
.how-hero h1,
.demo-hero h1,
.lead-hero h1 {
    color: #202936 !important;
    text-shadow: none !important;
}

.nab-hero .lead,
.systems-hero .lead,
.industries-hero .lead,
.portfolio-hero .lead,
.how-hero .lead,
.demo-hero .lead,
.lead-hero .lead {
    color: #5d6671 !important;
}

.nab-hero .nab-eyebrow,
.systems-hero .nab-eyebrow,
.industries-hero .nab-eyebrow,
.portfolio-hero .nab-eyebrow,
.how-hero .nab-eyebrow,
.demo-hero .eyebrow,
.lead-hero .lead-kicker {
    color: #ff497c !important;
    opacity: 1 !important;
}

.nab-hero .btn-outline-maincolor,
.systems-hero .btn-outline-maincolor,
.industries-hero .btn-outline-maincolor,
.portfolio-hero .btn-outline-maincolor,
.how-hero .btn-outline-maincolor,
.demo-hero .btn-outline-maincolor,
.lead-hero .btn-outline-maincolor {
    color: #202936 !important;
    background: rgba(255,255,255,.72) !important;
    border-color: #ff497c !important;
}
.nab-hero .btn-outline-maincolor:hover,
.systems-hero .btn-outline-maincolor:hover,
.industries-hero .btn-outline-maincolor:hover,
.portfolio-hero .btn-outline-maincolor:hover,
.how-hero .btn-outline-maincolor:hover,
.demo-hero .btn-outline-maincolor:hover,
.lead-hero .btn-outline-maincolor:hover {
    color: #fff !important;
    background: #ff497c !important;
}

/* hero capability chips */
.nab-hero .nab-proof-line span,
.systems-hero .proof-strip span {
    color: #4f5863 !important;
    background: rgba(255,255,255,.78) !important;
    border-color: #dce2e7 !important;
    box-shadow: 0 4px 15px rgba(31,42,55,.035);
}

/* ---------- LIGHTEN LARGE DARK BANDS ---------- */
.replace-section,
.fit-strip,
section.proof-strip,
.private-section,
.core-message,
.migration-section,
.after-demo {
    background: #eef3f6 !important;
    color: #29313d !important;
}

/* Systems before/after section */
.replace-section .section-head h2,
.replace-section .replace-card h4 {
    color: #202936 !important;
}
.replace-section .section-head p,
.replace-section .replace-card li {
    color: #68717b !important;
}
.replace-section .replace-card {
    background: #fff !important;
    border-color: #dfe5e9 !important;
    box-shadow: 0 14px 38px rgba(31,42,55,.04);
}
.replace-section .replace-card li {
    border-bottom-color: #edf0f2 !important;
}
.replace-section .replace-result {
    background: #f6faef !important;
    border-color: #d8e9bd !important;
}

/* Industries mid-page band */
.fit-strip .fit-inner h3,
.fit-strip .fit-point strong {
    color: #202936 !important;
}
.fit-strip .fit-point {
    background: #fff !important;
    border-color: #dfe5e9 !important;
    color: #68717b !important;
    box-shadow: 0 10px 30px rgba(31,42,55,.04);
}

/* Portfolio proof strip */
section.proof-strip .proof-item {
    border-right-color: #d9e0e5 !important;
}
section.proof-strip .proof-item strong {
    color: #202936 !important;
}
section.proof-strip .proof-item span {
    color: #68717b !important;
}

/* Portfolio confidentiality section */
.private-section .section-head h2,
.private-section .private-main h3,
.private-section .private-side h3,
.private-section .confidential-item strong {
    color: #202936 !important;
}
.private-section .section-head p,
.private-section .private-main p,
.private-section .private-side p,
.private-section .confidential-item span {
    color: #69727c !important;
}
.private-section .private-main,
.private-section .private-side,
.private-section .confidential-item {
    background: #fff !important;
    border-color: #dfe5e9 !important;
}
.private-section .lock {
    background: #eef2f5 !important;
    color: #ff497c !important;
}

/* How-it-works intro and migration sections */
.core-message .core-grid h2,
.core-message .core-grid strong,
.migration-section .section-head h2,
.migration-section .migration-card h3 {
    color: #202936 !important;
}
.core-message .core-grid p,
.migration-section .section-head p,
.migration-section .migration-card p,
.migration-section .migration-list li {
    color: #68717b !important;
}
.migration-section .migration-card {
    background: #fff !important;
    border-color: #dfe5e9 !important;
}
.migration-section .migration-list li {
    border-top-color: #edf0f2 !important;
}
.migration-section .migration-list li i {
    color: #00a98f !important;
}
.migration-section .cost-box {
    background: #f7f9fb !important;
    border: 1px solid #e2e7eb;
}
.migration-section .cost-line {
    color: #727b85 !important;
    border-bottom-color: #e6eaed !important;
}
.migration-section .cost-line strong {
    color: #202936 !important;
}
.migration-section .data-note {
    background: #fff !important;
    color: #68717b !important;
}

/* Demo page: keep actual app dark, lighten surrounding content */
.sector-switch {
    background: rgba(255,255,255,.97) !important;
    color: #202936 !important;
    border-top: 1px solid #e5e9ed;
    border-bottom: 1px solid #e5e9ed;
    box-shadow: 0 8px 24px rgba(31,42,55,.05) !important;
}
.sector-buttons button {
    color: #56606b !important;
    border-color: #d8dfe4 !important;
    background: #fff !important;
}
.sector-buttons button:hover,
.sector-buttons button.active {
    background: #ff497c !important;
    border-color: #ff497c !important;
    color: #fff !important;
}
.after-demo .after-card {
    background: #fff !important;
    border-color: #dfe5e9 !important;
}
.after-demo .after-card h3 {
    color: #202936 !important;
}
.after-demo .after-card p,
.after-demo .after-card li {
    color: #68717b !important;
}
.after-demo .after-card i {
    color: #00a98f !important;
}

/* Lead page hero card becomes a bright information card */
.lead-hero .next-card {
    background: rgba(255,255,255,.87) !important;
    border-color: #dce3e8 !important;
    color: #202936 !important;
    box-shadow: 0 20px 55px rgba(31,42,55,.08);
}
.lead-hero .next-card h3,
.lead-hero .next-item strong {
    color: #202936 !important;
}
.lead-hero .next-item p {
    color: #68717b !important;
}
.lead-hero .next-item {
    border-top-color: #e4e9ed !important;
}
.side-box {
    background: #fff !important;
    color: #202936 !important;
    border: 1px solid #dfe5e9 !important;
    box-shadow: 0 12px 34px rgba(31,42,55,.045);
}
.side-box h4 {
    color: #202936 !important;
}
.side-box p {
    color: #68717b !important;
}
.side-box .direct-link {
    color: #29313d !important;
    border-color: #dfe5e9 !important;
    background: #f8fafb !important;
}
.side-box .direct-link:hover {
    border-color: #ff497c !important;
    background: #fff7fa !important;
}

/* Keep purposeful contrast only at conversion points and footer. */
.systems-cta,
.industries-cta,
.portfolio-cta,
.how-cta,
.demo-cta,
.page_footer {
    box-shadow: inset 0 1px 0 rgba(255,255,255,.035);
}

/* Slightly airier cards across the site */
.module-card,
.industry-card,
.work-card,
.path-card,
.connect-card,
.principle-card,
.detail-card,
.form-card {
    box-shadow: 0 10px 30px rgba(31,42,55,.035);
}

/* Mobile: nav stays bright */
@media (max-width: 991px) {
    .page_header,
    .header_absolute .page_header {
        background: rgba(255,255,255,.98) !important;
    }
}


/* ==========================================================
   MOBILE NAV FIX — v2
   Internal pages create their own header stacking context.
   Keep the mobile navigation above all ordinary page content.
   ========================================================== */
@media (max-width: 1199px) {
    .header_absolute {
        z-index: 3000 !important;
    }

    .header_absolute .page_header,
    .page_header {
        z-index: 3001 !important;
    }

    .page_header .top-nav {
        position: fixed !important;
        inset: 0 !important;
        width: 100vw !important;
        height: 100vh !important;
        z-index: 3002 !important;
        pointer-events: none;
    }

    .page_header.mobile-active .top-nav {
        opacity: 1 !important;
        visibility: visible !important;
        pointer-events: auto !important;
        background: rgba(32, 41, 54, .28) !important;
    }

    .page_header .sf-menu {
        position: fixed !important;
        top: 0 !important;
        bottom: 0 !important;
        left: 0 !important;
        right: 100% !important;
        width: 100vw !important;
        max-width: 100vw !important;
        min-height: 100vh !important;
        margin: 0 !important;
        padding: 88px 28px 35px !important;
        border-top: 0 !important;
        background: #ffffff !important;
        opacity: 0 !important;
        overflow-y: auto !important;
        -webkit-overflow-scrolling: touch;
        z-index: 3003 !important;
        box-sizing: border-box !important;
    }

    .page_header.mobile-active .sf-menu {
        right: 0 !important;
        opacity: 1 !important;
    }

    .page_header .sf-menu > li {
        display: block !important;
        width: 100% !important;
        border-bottom: 1px solid #edf0f2;
    }

    .page_header .sf-menu > li > a,
    .page_header .top-nav .sf-menu a {
        display: block !important;
        width: 100% !important;
        margin: 0 !important;
        padding: 16px 4px !important;
        color: #27313d !important;
        font-size: 15px !important;
        line-height: 1.35 !important;
        letter-spacing: .11em !important;
        text-align: left !important;
    }

    .page_header .sf-menu > li.active > a,
    .page_header .sf-menu > li > a:hover {
        color: #ff497c !important;
    }

    .page_header .toggle_menu {
        z-index: 3005 !important;
    }

    .page_header.mobile-active .toggle_menu {
        position: fixed !important;
        top: 30px !important;
        right: 0 !important;
        margin-top: -30px !important;
    }

    /* Prevent the page behind the open menu from visually competing. */
    .page_header.mobile-active {
        opacity: 1 !important;
    }
}

@media (max-width: 575px) {
    .page_header .sf-menu {
        padding-left: 22px !important;
        padding-right: 22px !important;
    }
}
