/* nc-hero-force-visible */
.nc-hero-parallax-bg,.nc-hero-parallax-bg *,.nc-hero-cols,.nc-hero-cols *{opacity:1!important;visibility:visible!important;filter:none!important;transform:none!important;}
/* nc-hero-booster-css */
/* Hero Immediate Visibility & Zero Blank Screen */
    .nc-hero-parallax-bg,
    .nc-hero-parallax-bg *,
    .nc-hero-cols,
    .nc-hero-cols *,
    .nc-hero-col-left,
    .nc-hero-col-left *,
    .nc-hero-col-right,
    .nc-hero-col-right * {
        opacity: 1 !important;
        visibility: visible !important;
        filter: none !important;
    }
    
    /* Hero Container & Responsive Spacing */
    .nc-hero-parallax-bg {
        min-height: 85vh !important;
        display: flex !important;
        align-items: center !important;
        position: relative !important;
        background: linear-gradient(135deg, #0d1e30 0%, #152e4d 50%, #1a365d 100%) !important;
        padding: 90px 0 70px !important;
    }
    
    /* Premium Glowing Button */
    .nc-hero-btn-primary {
        background: linear-gradient(135deg, #48BB78 0%, #38A169 100%) !important;
        color: #081422 !important;
        font-weight: 800 !important;
        font-size: 16px !important;
        padding: 16px 36px !important;
        border-radius: 9999px !important;
        text-decoration: none !important;
        box-shadow: 0 10px 25px rgba(72, 187, 120, 0.45) !important;
        transition: transform 0.2s cubic-bezier(0.16, 1, 0.3, 1), box-shadow 0.2s ease !important;
        display: inline-flex !important;
        align-items: center !important;
        gap: 10px !important;
    }
    .nc-hero-btn-primary:hover {
        transform: translateY(-2px) scale(1.02) !important;
        box-shadow: 0 14px 30px rgba(72, 187, 120, 0.6) !important;
        color: #081422 !important;
    }

    /* Secondary Call Button */
    .nc-hero-btn-secondary {
        background: rgba(255, 255, 255, 0.12) !important;
        color: #FFFFFF !important;
        font-weight: 700 !important;
        font-size: 15px !important;
        padding: 16px 28px !important;
        border-radius: 9999px !important;
        text-decoration: none !important;
        border: 1px solid rgba(255, 255, 255, 0.25) !important;
        backdrop-filter: blur(10px) !important;
        display: inline-flex !important;
        align-items: center !important;
        gap: 8px !important;
        transition: all 0.2s ease !important;
    }
    .nc-hero-btn-secondary:hover {
        background: rgba(255, 255, 255, 0.22) !important;
        border-color: #48BB78 !important;
        color: #FFFFFF !important;
        transform: translateY(-2px) !important;
    }

    /* Review Card Polish */
    .nc-hero-review-box {
        background: rgba(13, 30, 48, 0.85) !important;
        border: 1.5px solid rgba(255, 255, 255, 0.18) !important;
        border-radius: 24px !important;
        padding: 32px 28px !important;
        backdrop-filter: blur(20px) !important;
        -webkit-backdrop-filter: blur(20px) !important;
        box-shadow: 0 20px 50px rgba(0, 0, 0, 0.5) !important;
        text-align: center !important;
    }

    @media (max-width: 991px) {
        .nc-hero-parallax-bg {
            padding: 120px 20px 60px !important;
            min-height: auto !important;
        }
    }
/* nc-unified-global-tokens */
:root {
        /* ══════════════════════════════════════════════════════════
           1. DIE EINZIGEN VERBINDLICHEN FARBEN (KEINE ABWEICHUNGEN)
           ══════════════════════════════════════════════════════════ */
        /* EINHEITLICHES GRÜN */
        --brand-accent: #48BB78;
        --brand-accent-hover: #38A169;
        --brand-accent-dark: #2F855A;
        --brand-accent-light: #68D391;
        --brand-accent-bg: rgba(72, 187, 120, 0.12);
        --brand-accent-glow: rgba(72, 187, 120, 0.35);
        --nc-teal: #48BB78;
        --nc-teal-light: #68D391;
        --nc-teal-dark: #38A169;

        /* EINHEITLICHES DEEP NAVY / BLAU */
        --brand-primary: #1A365D;
        --brand-primary-dark: #10263D;
        --brand-primary-light: #2A4365;
        --brand-primary-surface: #1E3A5F;
        --nc-navy: #1A365D;
        --nc-navy-dark: #10263D;
        --nc-navy-light: #2A4365;

        /* KADENCE PALETTE HARMONISIERUNG */
        --global-palette1: #48BB78 !important; /* Primärfarbe: Grün */
        --global-palette2: #38A169 !important; /* Hover-Grün */
        --global-palette3: #1A365D !important; /* Deep Navy */
        --global-palette4: #10263D !important; /* Dark Navy */
        --global-palette5: #475569 !important; /* Muted Slate */
        --global-palette6: #E2E8F0 !important; /* Border */
        --global-palette7: #F7FAFC !important; /* Background */
        --global-palette8: #FFFFFF !important;
        --global-palette9: #FFFFFF !important;

        /* TYPOGRAFIE & BORDER RADIUS */
        --nc-bg: #F7FAFC;
        --nc-surface: #FFFFFF;
        --nc-border: #E2E8F0;
        --nc-radius-btn: 9999px;
    }

    /* ══════════════════════════════════════════════════════════
       2. GLOBALE TYPOGRAFIE (PLUS JAKARTA SANS & INTER)
       ══════════════════════════════════════════════════════════ */
    body, p, li, input, textarea, select {
        font-family: 'Plus Jakarta Sans', 'Inter', -apple-system, BlinkMacSystemFont, sans-serif !important;
        font-weight: 400;
        color: #334155;
        line-height: 1.7;
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale;
    }

    h1, h2, h3, h4, h5, h6,
    .nc-hero-title, .nc-trust-title, .nc-service-card-title, .nc-benefit-card-title,
    .ncb-cardtitle, .nc-section-title, .kt-adv-heading, .wp-block-heading,
    .font-heading {
        font-family: 'Plus Jakarta Sans', -apple-system, BlinkMacSystemFont, sans-serif !important;
        letter-spacing: -0.025em !important;
        line-height: 1.2 !important;
        color: #1A365D;
    }

    h1, .nc-hero-title {
        font-weight: 800 !important;
        letter-spacing: -0.03em !important;
    }

    h2, .nc-section-title {
        font-weight: 800 !important;
        letter-spacing: -0.025em !important;
    }

    h3, .nc-service-card-title, .ncb-cardtitle {
        font-weight: 700 !important;
    }

    /* ══════════════════════════════════════════════════════════
       3. GLOBALE BUTTON-HARMONISIERUNG (100% KONSISTENT)
       ══════════════════════════════════════════════════════════ */
    
    /* ALLE PRIMÄREN BUTTONS -> #48BB78 PILL */
    .wp-block-button__link,
    .nc-button,
    .ncb-btn--p,
    .nc-btn-primary,
    .nc-target-btn-cta,
    .kt-button,
    .kb-button,
    .button,
    .btn-primary,
    input[type="submit"],
    button[type="submit"],
    a.nc-btn-primary,
    a.nc-hero-btn-primary,
    .wp-block-button:not(.is-style-outline) > a {
        font-family: 'Plus Jakarta Sans', sans-serif !important;
        font-weight: 700 !important;
        font-size: 15.5px !important;
        letter-spacing: -0.01em !important;
        background: #48BB78 !important;
        color: #FFFFFF !important;
        padding: 15px 34px !important;
        border-radius: 9999px !important;
        border: none !important;
        text-decoration: none !important;
        box-shadow: 0 10px 24px rgba(72, 187, 120, 0.35) !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 8px !important;
        cursor: pointer !important;
        transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1) !important;
        box-sizing: border-box !important;
    }

    .wp-block-button__link:hover,
    .nc-button:hover,
    .ncb-btn--p:hover,
    .nc-btn-primary:hover,
    .nc-target-btn-cta:hover,
    .kt-button:hover,
    .kb-button:hover,
    input[type="submit"]:hover,
    button[type="submit"]:hover,
    a.nc-btn-primary:hover,
    a.nc-hero-btn-primary:hover,
    .wp-block-button:not(.is-style-outline) > a:hover {
        background: #38A169 !important;
        color: #FFFFFF !important;
        transform: translateY(-2px) !important;
        box-shadow: 0 14px 30px rgba(72, 187, 120, 0.45) !important;
    }

    /* HEADER CTA BUTTON -> #1A365D PILL */
    .header-cta-btn,
    .header-html a.kt-button,
    .header-button a {
        font-family: 'Plus Jakarta Sans', sans-serif !important;
        font-weight: 700 !important;
        font-size: 14.5px !important;
        background: #1A365D !important;
        color: #FFFFFF !important;
        padding: 12px 26px !important;
        border-radius: 9999px !important;
        border: none !important;
        text-decoration: none !important;
        box-shadow: 0 6px 18px rgba(26, 54, 93, 0.25) !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 8px !important;
        transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1) !important;
    }
    .header-cta-btn:hover,
    .header-html a.kt-button:hover,
    .header-button a:hover {
        background: #2A4365 !important;
        color: #FFFFFF !important;
        transform: translateY(-2px) !important;
    }

    /* ALLE SEKUNDÄREN / OUTLINE / GLASS BUTTONS */
    .ncb-btn--g,
    .nc-button-sec,
    .nc-btn-secondary,
    .nc-target-btn-secondary,
    a.nc-hero-btn-secondary,
    .wp-block-button.is-style-outline > a {
        font-family: 'Plus Jakarta Sans', sans-serif !important;
        font-weight: 700 !important;
        font-size: 15.5px !important;
        border-radius: 9999px !important;
        padding: 15px 30px !important;
        text-decoration: none !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 8px !important;
        transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1) !important;
        box-sizing: border-box !important;
    }

    /* Auf dunklen Sektionen */
    .nc-hero .nc-hero-btn-secondary,
    .nc-hero-parallax-bg a.nc-hero-btn-secondary,
    .ncb-hero .ncb-btn--g,
    .nc-dark-section .nc-btn-secondary {
        background: rgba(255, 255, 255, 0.10) !important;
        border: 1px solid rgba(255, 255, 255, 0.25) !important;
        color: #FFFFFF !important;
        backdrop-filter: blur(8px) !important;
    }
    .nc-hero .nc-hero-btn-secondary:hover,
    .nc-hero-parallax-bg a.nc-hero-btn-secondary:hover,
    .ncb-hero .ncb-btn--g:hover,
    .nc-dark-section .nc-btn-secondary:hover {
        background: rgba(255, 255, 255, 0.20) !important;
        border-color: rgba(255, 255, 255, 0.50) !important;
        color: #FFFFFF !important;
        transform: translateY(-2px) !important;
    }

    /* Auf hellen Sektionen */
    .nc-btn-secondary,
    .wp-block-button.is-style-outline > a {
        background: #FFFFFF !important;
        border: 1.5px solid #E2E8F0 !important;
        color: #1A365D !important;
    }
    .nc-btn-secondary:hover,
    .wp-block-button.is-style-outline > a:hover {
        border-color: #48BB78 !important;
        color: #38A169 !important;
        transform: translateY(-2px) !important;
    }

    
    /* FORCE HEADER CTA BUTTON -> #1A365D PILL */
    .site-header-item .header-button a,
    .site-header-item .button,
    .header-button .button,
    .site-header-main-section-right a.button,
    .header-html a.kt-button,
    .header-cta-btn {
        background: #1A365D !important;
        color: #FFFFFF !important;
        border-radius: 9999px !important;
        font-family: 'Plus Jakarta Sans', sans-serif !important;
        font-weight: 700 !important;
        font-size: 14.5px !important;
        padding: 12px 26px !important;
        border: none !important;
        box-shadow: 0 4px 14px rgba(26, 54, 93, 0.25) !important;
    }
    .site-header-item .header-button a:hover,
    .site-header-item .button:hover,
    .header-button .button:hover,
    .site-header-main-section-right a.button:hover,
    .header-html a.kt-button:hover,
    .header-cta-btn:hover {
        background: #2A4365 !important;
        color: #FFFFFF !important;
        transform: translateY(-2px) !important;
    }

    /* FORCE ALL PRIMARY BUTTON TEXT COLOR TO PURE WHITE */
    .wp-block-button:not(.is-style-outline) > a,
    .wp-block-button__link,
    .nc-button,
    .ncb-btn--p,
    .nc-btn-primary,
    .nc-target-btn-cta,
    .kt-button,
    .kb-button,
    .button:not(.header-button a):not(.is-style-outline a),
    .btn-primary,
    input[type="submit"],
    button[type="submit"],
    a.nc-btn-primary,
    a.nc-hero-btn-primary {
        color: #FFFFFF !important;
        background: #48BB78 !important;
    }
    .wp-block-button:not(.is-style-outline) > a *,
    .wp-block-button__link * {
        color: #FFFFFF !important;
    }
    
    /* SCROLL TO TOP BUTTON -> #48BB78 */
    #nc-top,
    button#nc-top,
    .is-on#nc-top,
    #kt-scroll-up,
    .scroll-up,
    .kadence-scroll-to-top,
    #kadence-scroll-to-top {
        background-color: #48BB78 !important;
        color: #FFFFFF !important;
        border-radius: 50% !important;
        box-shadow: 0 8px 20px rgba(72, 187, 120, 0.40) !important;
        transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1) !important;
    }
    #kt-scroll-up:hover,
    .scroll-up:hover,
    .kadence-scroll-to-top:hover,
    #kadence-scroll-to-top:hover {
        background-color: #38A169 !important;
        transform: translateY(-3px) scale(1.05) !important;
        box-shadow: 0 12px 28px rgba(72, 187, 120, 0.55) !important;
    }
    /* ══════════════════════════════════════════════════════════
       4. SEKTIONEN, BADGES & ICONS HARMONISIERUNG
       ══════════════════════════════════════════════════════════ */
    
    /* ══════════════════════════════════════════════════════════════════
       HERO IMMEDIATE VISIBILITY & ZERO DELAY AT FIRST PAINT
       ══════════════════════════════════════════════════════════════════ */
    .nc-hero-parallax-bg,
    .nc-hero-parallax-bg *,
    .nc-hero-cols,
    .nc-hero-cols *,
    .nc-hero-col-left,
    .nc-hero-col-left *,
    .nc-hero-col-right,
    .nc-hero-col-right * {
        opacity: 1 !important;
        visibility: visible !important;
        filter: none !important;
    }

    /* Dunkle Sektionen & Hero */
    .nc-hero-parallax-bg,
    .ncb-hero,
    .nc-dark-section {
        background: linear-gradient(180deg, #10263D 0%, #1A365D 100%) !important;
    }

    /* Micro-Badges & Eyebrows */
    .nc-section-badge,
    .nc-eyebrow,
    .ncb-eyebrow,
    .nc-geo-hero-badge {
        background: rgba(72, 187, 120, 0.12) !important;
        color: #48BB78 !important;
        border: 1px solid rgba(72, 187, 120, 0.25) !important;
        border-radius: 9999px !important;
    }

    /* Icon-Container & Akzente */
    .nc-tib-icon-box,
    .nc-card-icon,
    .ncb-icon,
    .nc-district-badge {
        background: rgba(72, 187, 120, 0.12) !important;
        color: #48BB78 !important;
        border-color: rgba(72, 187, 120, 0.25) !important;
    }

    /* Navigation Links Hover */
    .wp-block-navigation-item__content:hover,
    .primary-menu > li > a:hover,
    a.nc-mega-link:hover {
        color: #48BB78 !important;
    }
    a.nc-mega-link:hover {
        border-left-color: #48BB78 !important;
        background: rgba(72, 187, 120, 0.12) !important;
    }

    /* Bento & Service Cards Hover */
    .nc-bento-card:hover,
    .nc-district-card:hover,
    .ncb-card:hover {
        border-color: #48BB78 !important;
        box-shadow: 0 14px 34px rgba(72, 187, 120, 0.14) !important;
    }

    /* Footer Trust Bar */
    .nc-trust-insurance-bar {
        background: #F8FAFC !important;
        border-color: rgba(226, 232, 240, 0.8) !important;
    }
    
    
    /* ══════════════════════════════════════════════════════════════════
       PERFECT PIXEL-PRECISION HERO LAYOUT & BACKGROUND FIX
       ══════════════════════════════════════════════════════════════════ */
    .nc-hero-parallax-bg {
        position: relative !important;
        min-height: calc(100vh - 88px) !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        background: #10263D !important;
        overflow: hidden !important;
        padding: 30px 0 !important;
        box-sizing: border-box !important;
    }
    .nc-hero-parallax-bg > .wp-block-group__inner-container {
        position: relative !important;
        z-index: 10 !important;
        width: 100% !important;
        max-width: 1240px !important;
        margin: 0 auto !important;
        padding: 20px 24px !important;
    }
    /* Full height background image & seamless gradient cover */
    .nc-hero-background-media,
    .nc-hero-background-media img,
    .nc-hero-parallax-bg img.nc-hero-still,
    .nc-hero-background-media > img {
        position: absolute !important;
        top: 0 !important;
        left: 0 !important;
        width: 100% !important;
        height: 100% !important;
        min-height: 100% !important;
        max-height: 100% !important;
        object-fit: cover !important;
        object-position: center top !important;
        z-index: 1 !important;
        pointer-events: none !important;
        opacity: 0.35 !important;
    }
    .nc-hero-background-media > div,
    .nc-hero-background-media > div[style*="background"] {
        position: absolute !important;
        top: 0 !important;
        left: 0 !important;
        right: 0 !important;
        bottom: 0 !important;
        width: 100% !important;
        height: 100% !important;
        background: linear-gradient(90deg, rgba(16,38,61,0.96) 0%, rgba(26,54,93,0.88) 55%, rgba(16,38,61,0.75) 100%) !important;
        z-index: 2 !important;
        pointer-events: none !important;
    }
    .nc-hero-cols {
        position: relative !important;
        z-index: 20 !important;
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
        width: 100% !important;
        gap: 32px !important;
    }
    .nc-hero-col-left {
        position: relative !important;
        z-index: 25 !important;
        flex: 1 1 66% !important;
        max-width: 740px !important;
    }
    .nc-hero-col-right {
        position: relative !important;
        z-index: 25 !important;
        flex: 0 0 34% !important;
        max-width: 320px !important;
        display: flex !important;
        justify-content: center !important;
    }
    /* Typography & Spacing tuning for single-screen above-the-fold fit */
    .nc-hero-col-left h1 {
        font-size: clamp(30px, 4.2vw, 54px) !important;
        line-height: 1.14 !important;
        margin: 0 0 16px !important;
        color: #FFFFFF !important;
        text-shadow: 0 2px 12px rgba(0,0,0,0.5) !important;
    }
    .nc-hero-col-left p[style*="font-size"] {
        font-size: clamp(15px, 1.4vw, 17.5px) !important;
        line-height: 1.55 !important;
        margin: 0 0 24px !important;
        color: #E2E8F0 !important;
    }
    .nc-hero-col-left .wp-block-button,
    .nc-hero-col-left div[style*="margin:0 0 36px"],
    .nc-hero-col-left div[style*="margin: 0 0 36px"] {
        margin: 0 0 22px !important;
    }
    /* Google rating card word break & star row fix */
    .nc-hero-col-right > div {
        background: rgba(16,38,61,0.85) !important;
        border: 1.5px solid rgba(255,255,255,0.20) !important;
        border-radius: 22px !important;
        padding: 26px 22px !important;
        backdrop-filter: blur(20px) !important;
        -webkit-backdrop-filter: blur(20px) !important;
        box-shadow: 0 20px 50px rgba(0,0,0,0.45) !important;
        width: 100% !important;
        max-width: 300px !important;
        text-align: center !important;
    }
    .nc-hero-col-right div,
    .nc-hero-col-right span {
        white-space: nowrap !important;
        word-break: keep-all !important;
        hyphens: none !important;
    }

    
/* ════════════════════════════════════════════════════════════════════════════
   HIGH-END AGENCY VISUAL DESIGN SYSTEM (HIGH-END-VISUAL-DESIGN SKILL)
   ════════════════════════════════════════════════════════════════════════════ */

/* 1. BUTTON-IN-BUTTON & ISLAND CTA ARCHITECTURE */
.nc-hero-btn-primary,
.nc-btn-primary,
.nc-lh-cta-btn,
.wp-block-button:not(.is-style-outline) > a {
    position: relative !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 12px !important;
    background: #48BB78 !important;
    color: #FFFFFF !important;
    font-family: 'Plus Jakarta Sans', sans-serif !important;
    font-weight: 700 !important;
    font-size: 15.5px !important;
    letter-spacing: -0.015em !important;
    padding: 14px 28px !important;
    border-radius: 9999px !important;
    border: none !important;
    text-decoration: none !important;
    box-shadow: 0 10px 24px rgba(72, 187, 120, 0.32), 0 2px 6px rgba(0,0,0,0.06) !important;
    transition: all 0.35s cubic-bezier(0.32, 0.72, 0, 1) !important;
    cursor: pointer !important;
}
.nc-hero-btn-primary:hover,
.nc-btn-primary:hover,
.nc-lh-cta-btn:hover,
.wp-block-button:not(.is-style-outline) > a:hover {
    background: #38A169 !important;
    color: #FFFFFF !important;
    transform: translateY(-2.5px) scale(1.01) !important;
    box-shadow: 0 16px 36px rgba(72, 187, 120, 0.45), 0 4px 12px rgba(0,0,0,0.08) !important;
}

/* Secondary Button with Glass Depth */
.nc-hero-btn-secondary,
.nc-btn-secondary,
.wp-block-button.is-style-outline > a {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 10px !important;
    border-radius: 9999px !important;
    font-family: 'Plus Jakarta Sans', sans-serif !important;
    font-weight: 700 !important;
    font-size: 15px !important;
    padding: 14px 26px !important;
    text-decoration: none !important;
    transition: all 0.35s cubic-bezier(0.32, 0.72, 0, 1) !important;
}

/* 2. DOUBLE-BEZEL (DOPPELRAND) NESTED ARCHITECTURE FOR CARDS */
.nc-bento-card,
.nc-lh-card,
.nc-service-card,
.nc-district-card,
.nc-feature-card {
    background: #FFFFFF !important;
    border: 1px solid #E2E8F0 !important;
    border-radius: 20px !important;
    box-shadow: 0 4px 16px rgba(10, 38, 71, 0.04), 0 1px 2px rgba(0, 0, 0, 0.02) !important;
    transition: all 0.35s cubic-bezier(0.32, 0.72, 0, 1) !important;
    position: relative !important;
    overflow: hidden !important;
}
.nc-bento-card:hover,
.nc-lh-card:hover,
.nc-service-card:hover,
.nc-district-card:hover,
.nc-feature-card:hover {
    transform: translateY(-4px) !important;
    border-color: #48BB78 !important;
    box-shadow: 0 20px 40px rgba(32, 127, 114, 0.12), 0 4px 12px rgba(10, 38, 71, 0.04) !important;
}

/* 3. MICRO-EYEBROW PILL BADGES */
.nc-eyebrow,
.nc-section-badge,
.ncb-eyebrow,
.nc-lh-badge,
.nc-geo-hero-badge {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    background: rgba(72, 187, 120, 0.10) !important;
    border: 1px solid rgba(72, 187, 120, 0.28) !important;
    color: #2F855A !important;
    padding: 6px 16px !important;
    border-radius: 9999px !important;
    font-size: 11.5px !important;
    font-weight: 800 !important;
    letter-spacing: 0.08em !important;
    text-transform: uppercase !important;
    margin-bottom: 16px !important;
}

/* 4. PRE-FOOTER TRUST BAR ELEGANCE */
.nc-trust-insurance-bar {
    background: #F8FAFC !important;
    border-top: 1px solid rgba(226, 232, 240, 0.8) !important;
    padding: 28px 20px 32px !important;
}
.nc-tib-item {
    background: #FFFFFF !important;
    border: 1px solid #E2E8F0 !important;
    border-radius: 14px !important;
    padding: 11px 16px !important;
    box-shadow: 0 2px 8px rgba(10, 38, 71, 0.03) !important;
    transition: all 0.3s cubic-bezier(0.32, 0.72, 0, 1) !important;
}
.nc-tib-item:hover {
    border-color: #48BB78 !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 8px 20px rgba(72, 187, 120, 0.14) !important;
}

/* 5. SMOOTH SCROLL & SELECTION */
html {
    scroll-behavior: smooth;
}
::selection {
    background: rgba(72, 187, 120, 0.25);
    color: #1A365D;
}
/* nc-cookie-banner-optimizer */
#cmplz-cookiebanner, .cmplz-cookiebanner, #cmplz-cookiebanner-container, .cmplz-cookiebanner-container {
        display: none !important;
    }
    body.cmplz-user-interacted #cmplz-cookiebanner,
    body.cmplz-user-interacted .cmplz-cookiebanner,
    body.cmplz-user-interacted #cmplz-cookiebanner-container,
    body.cmplz-user-interacted .cmplz-cookiebanner-container {
        display: block !important;
    }
    #cmplz-cookiebanner.cmplz-dismissed,
    .cmplz-cookiebanner.cmplz-dismissed,
    #cmplz-cookiebanner-container.cmplz-dismissed,
    .cmplz-cookiebanner-container.cmplz-dismissed,
    body.cmplz-user-interacted #cmplz-cookiebanner.cmplz-dismissed,
    body.cmplz-user-interacted .cmplz-cookiebanner.cmplz-dismissed,
    body.cmplz-user-interacted #cmplz-cookiebanner-container.cmplz-dismissed,
    body.cmplz-user-interacted .cmplz-cookiebanner-container.cmplz-dismissed {
        display: none !important;
    }
    .cmplz-cookiebanner .cmplz-close {
        min-width: 44px !important;
        min-height: 44px !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        cursor: pointer !important;
        padding: 12px !important;
        margin: -10px -10px 0 0 !important;
        box-sizing: border-box !important;
        z-index: 10 !important;
    }
    .cmplz-cookiebanner .cmplz-close svg {
        width: 16px !important;
        height: 16px !important;
        pointer-events: none !important;
    }

    @media (max-width: 767px) {
        body.home .entry-content .wp-block-group:not(.nc-hero-parallax-bg):has(.ncx-reveal) .alignwide {
            display: grid !important;
            grid-template-columns: repeat(2, 1fr) !important;
            grid-template-rows: auto !important;
            gap: 14px !important;
        }
        @media (max-width: 480px) {
            body.home .entry-content .wp-block-group:not(.nc-hero-parallax-bg):has(.ncx-reveal) .alignwide {
                grid-template-columns: 1fr !important;
            }
        }
        body.home .entry-content a.ncx-reveal[class] {
            grid-column: span 1 !important;
            grid-row: span 1 !important;
            aspect-ratio: 1.35 / 1 !important;
            min-height: 180px !important;
            border-radius: 18px !important;
        }
        body.home .entry-content a.ncx-reveal > div[style*="position:absolute"] {
            padding: 18px !important;
        }
        body.home .entry-content a.ncx-reveal h3 {
            font-size: 15px !important;
            line-height: 1.35 !important;
            margin: 6px 0 4px !important;
        }
        body.home .entry-content a.ncx-reveal p {
            display: none !important;
        }
        body.home .entry-content a.ncx-reveal span[style*="font-size:12px"] {
            font-size: 10px !important;
            padding: 4px 10px !important;
        }
        body.home .entry-content a.ncx-reveal span[style*="font-weight:700"] {
            font-size: 11.5px !important;
        }
    }
    /* Critical Header and Layout Stability rules to eliminate CLS (Cumulative Layout Shift) */
    .site-header-wrap,
    #masthead,
    .site-header,
    header#masthead {
        height: 88px !important;
        min-height: 88px !important;
        max-height: 88px !important;
    }
    @media (max-width: 1024px) {
        .site-header-wrap,
        #masthead,
        .site-header,
        header#masthead {
            height: 76px !important;
            min-height: 76px !important;
            max-height: 76px !important;
        }
    }
    .content-wrap {
        position: relative !important;
    }
    /* ── HERO IMMEDIATE ZERO-DELAY VISIBILITY ── */
    .nc-hero-parallax-bg,
    .nc-hero-parallax-bg *,
    .nc-hero-cols,
    .nc-hero-cols *,
    .nc-hero-col-left,
    .nc-hero-col-left *,
    .nc-hero-col-right,
    .nc-hero-col-right * {
        opacity: 1 !important;
        visibility: visible !important;
        filter: none !important;
    }

    /* Critical Hero Layout stability rules for CLS optimization */
    .nc-hero-parallax-bg {
        min-height: calc(100vh - 116px) !important;
        position: relative !important;
        display: flex !important;
        align-items: center !important;
        overflow: hidden !important;
    }
    .nc-hero-parallax-bg > .wp-block-group__inner-container {
        min-height: calc(100vh - 116px) !important;
        height: 100% !important;
        width: 100% !important;
        position: relative !important;
        display: flex !important;
        flex-direction: column !important;
        justify-content: center !important;
    }
    .nc-hero-background-media {
        position: absolute !important;
        top: 0 !important;
        left: 0 !important;
        /* wp-custom.min.css setzt hier left:50% mit transform:translateX(-50%) fuer Full-Bleed.
           Da wir left auf 0 zuruecksetzen, muss der Versatz mit zurueckgenommen werden,
           sonst rutscht das Hero-Bild um die halbe Breite nach links. */
        transform: none !important;
        width: 100% !important;
        height: 100% !important;
        z-index: 1 !important;
        pointer-events: none !important;
        overflow: hidden !important;
    }
    .nc-mobile-hero-poster, .nc-mobile-hero-img {
        position: absolute !important;
        top: 0 !important;
        left: 0 !important;
        width: 100% !important;
        height: 100% !important;
        object-fit: cover !important;
        aspect-ratio: 1688 / 1125 !important;
    }
    /* Disable Parallax effect on mobile viewports to eliminate CLS layout shifts completely */
    @media (max-width: 767px) {
        .nc-hero-parallax-bg,
        .nc-hero-parallax-bg > .wp-block-group__inner-container {
            height: auto !important;
            min-height: calc(100vh - 76px) !important;
            max-height: none !important;
            overflow: visible !important;
        }
        .nc-hero-parallax-bg > .wp-block-group__inner-container > .nc-hero-background-media > div,
        .nc-hero-parallax-bg > .wp-block-group__inner-container > .nc-hero-background-media > div.nc-mobile-hero-fallback,
        .nc-hero-parallax-bg > .wp-block-group__inner-container > .nc-hero-background-media > img,
        .nc-hero-parallax-bg > .wp-block-group__inner-container > .nc-hero-background-media > video {
            transform: none !important;
            top: 0 !important;
            left: 0 !important;
            width: 100% !important;
            height: 100% !important;
            position: absolute !important;
        }
    }
    
    /* Hero Columns responsive wrapping */
    .nc-hero-cols {
        display: flex !important;
        flex-wrap: wrap !important;
        flex-direction: row !important;
    }
    .nc-hero-col-left {
        flex: 0 0 60% !important;
        max-width: 60% !important;
    }
    .nc-hero-col-right {
        flex: 0 0 40% !important;
        max-width: 40% !important;
        display: flex !important;
        justify-content: center !important;
        align-items: center !important;
    }
    
    @media (max-width: 991px) {
        .nc-hero-cols {
            flex-direction: column !important;
            align-items: center !important;
            gap: 40px !important;
        }
        .nc-hero-col-left, .nc-hero-col-right {
            flex: 0 0 100% !important;
            max-width: 100% !important;
            width: 100% !important;
        }
        .nc-hero-col-left {
            text-align: center !important;
        }
        .nc-hero-col-left p[style*="display:inline-flex"],
        .nc-hero-col-left p[style*="display: inline-flex"] {
            display: inline-flex !important;
        }
        .nc-hero-col-left div[style*="display:flex"],
        .nc-hero-col-left div[style*="display: flex"] {
            justify-content: center !important;
        }
        .nc-hero-col-left .wp-block-buttons {
            justify-content: center !important;
        }
        .nc-hero-col-left div[style*="margin-top:16px"],
        .nc-hero-col-left div[style*="margin-top: 16px"] {
            justify-content: center !important;
        }
    }
    
    @media (max-width: 767px) {
        .nc-hero-parallax-bg {
            padding-top: 140px !important; /* Clears fixed header on mobile */
            padding-bottom: 60px !important;
        }
        .nc-hero-col-left h1 {
            font-size: clamp(28px, 8vw, 42px) !important;
            line-height: 1.1 !important;
        }
        .nc-hero-col-left p {
            font-size: 16px !important;
        }
        .nc-hero-col-left .wp-block-button a {
            padding: 14px 24px !important;
            font-size: 15px !important;
            width: 100% !important;
            text-align: center !important;
        }
        .nc-hero-col-left .wp-block-button.is-style-outline a {
            padding: 14px 24px !important;
            font-size: 15px !important;
            width: 100% !important;
            text-align: center !important;
        }
    }
/* nc-global-contrast-override */
/* ============================================================
   GLOBAL HIGH CONTRAST & LEGIBILITY ENGINE (WCAG AAA)
   ============================================================ */

/* 1. TOP TRUST BAR: Ultra-Crisp White & Emerald Accents */
.nc-top-trust-bar,
div[class*="nc-top-trust-bar"] {
  background: #081422 !important;
  color: #FFFFFF !important;
}
.nc-top-trust-bar .nc-trust-badge-item,
div[class*="nc-top-trust-bar"] li {
  color: #FFFFFF !important;
  font-weight: 600 !important;
  opacity: 1 !important;
}
.nc-top-trust-bar .nc-trust-badge-item .dot,
div[class*="nc-top-trust-bar"] span.dot {
  color: #34D399 !important;
  font-weight: 800 !important;
}
.nc-top-trust-bar .nc-top-phone-link,
div[class*="nc-top-trust-bar"] a {
  color: #FFFFFF !important;
  font-weight: 800 !important;
  text-shadow: 0 1px 4px rgba(0,0,0,0.5);
}

/* 2. DARK HERO SECTIONS (.ncb-hero, .ncu-hero, etc.) */
.ncb-hero,
.ncu-hero,
.nc-hero-dark,
section[class*="-hero"] {
  color: #FFFFFF !important;
}
.ncb-hero h1,
.ncb-hero h1 span,
.ncu-hero h1,
.ncu-hero h1 span,
.nc-hero-dark h1 {
  color: #FFFFFF !important;
  font-weight: 800 !important;
  text-shadow: 0 2px 8px rgba(0, 0, 0, 0.4) !important;
}
.ncb-hero h1 span,
.ncu-hero h1 span {
  color: #34D399 !important;
}
.ncb-hero .ncb-hero-sub,
.ncu-hero .ncu-hero-sub,
.ncb-hero p,
.ncu-hero p {
  color: #F8FAFC !important;
  font-weight: 500 !important;
  text-shadow: 0 1px 3px rgba(0, 0, 0, 0.3) !important;
}
.ncb-hero-badge,
.ncu-hero-badge {
  background: rgba(16, 185, 129, 0.2) !important;
  border: 1px solid rgba(52, 211, 153, 0.5) !important;
  color: #34D399 !important;
  font-weight: 800 !important;
}

/* 3. SERVICEGEBIET & WIEN DISTRICTS DARK MAP SECTION */
.wp-block-group[style*="#1A365D"],
.wp-block-group[style*="background-color: #1A365D"],
.wp-block-group[style*="background-color: rgb(26, 54, 93)"] {
  color: #FFFFFF !important;
}
.wp-block-group[style*="#1A365D"] h2,
.wp-block-group[style*="#1A365D"] h3,
.wp-block-group[style*="background-color: #1A365D"] h2,
.wp-block-group[style*="background-color: #1A365D"] h3 {
  color: #FFFFFF !important;
  font-weight: 800 !important;
  text-shadow: 0 2px 6px rgba(0,0,0,0.4) !important;
}
.wp-block-group[style*="#1A365D"] p,
.wp-block-group[style*="#1A365D"] li,
.wp-block-group[style*="background-color: #1A365D"] p,
.wp-block-group[style*="background-color: #1A365D"] li {
  color: #F1F5F9 !important;
  font-weight: 500 !important;
}
.wp-block-group[style*="#1A365D"] p[style*="#48BB78"],
.wp-block-group[style*="#1A365D"] span[style*="#48BB78"] {
  color: #34D399 !important;
  font-weight: 800 !important;
  letter-spacing: 0.12em !important;
  text-shadow: 0 1px 3px rgba(0,0,0,0.3) !important;
}

/* 4. LEISTUNGEN OVERVIEW CTA BANNER (.nc-lh-cta-box) */
.nc-lh-cta-box {
  background: linear-gradient(135deg, #0A192F 0%, #112240 60%, #1A365D 100%) !important;
  border: 1px solid rgba(255, 255, 255, 0.15) !important;
  box-shadow: 0 12px 32px rgba(8, 20, 34, 0.25) !important;
}
.nc-lh-cta-box h3 {
  color: #FFFFFF !important;
  font-weight: 800 !important;
  text-shadow: 0 2px 6px rgba(0,0,0,0.4) !important;
}
.nc-lh-cta-box p {
  color: #F1F5F9 !important;
  font-weight: 500 !important;
}

/* 5. FAQ SECTION ON SERVICE PAGES (.ncb-faq-section) */
.ncb-faq-section {
  background: linear-gradient(180deg, #0A192F 0%, #0D213A 100%) !important;
  color: #FFFFFF !important;
}
.ncb-faq-badge {
  color: #34D399 !important;
  font-weight: 800 !important;
  letter-spacing: 0.15em !important;
  text-transform: uppercase !important;
}
.ncb-faq-title {
  color: #FFFFFF !important;
  font-weight: 800 !important;
  text-shadow: 0 2px 6px rgba(0,0,0,0.4) !important;
}
.ncb-faq-desc {
  color: #E2E8F0 !important;
  font-weight: 500 !important;
}
.ncb-faq-q {
  color: #FFFFFF !important;
  font-weight: 700 !important;
}
.ncb-faq-q span {
  color: #FFFFFF !important;
}
.ncb-faq-a {
  color: #F1F5F9 !important;
  font-weight: 450 !important;
  line-height: 1.7 !important;
}

/* 6. GENERAL DARK BLOCKS (#10263D, #0B2338, #081B2B, #0A192F) */
.wp-block-group[style*="#10263D"],
.wp-block-group[style*="#0B2338"],
.wp-block-group[style*="#081B2B"],
.wp-block-group[style*="#0A192F"],
.wp-block-group[style*="background-color: #10263D"],
.wp-block-group[style*="background-color: rgb(16, 38, 61)"],
.nc-bento-3-grid,
.nc-bento-3-grid * {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.wp-block-group[style*="#10263D"] h1,
.wp-block-group[style*="#10263D"] h2,
.wp-block-group[style*="#10263D"] h3,
.wp-block-group[style*="#0B2338"] h1,
.wp-block-group[style*="#0B2338"] h2,
.wp-block-group[style*="#0B2338"] h3,
.wp-block-group[style*="#0A192F"] h1,
.wp-block-group[style*="#0A192F"] h2,
.wp-block-group[style*="#0A192F"] h3,
.nc-bento-3-grid h2,
.nc-bento-3-grid h3 {
  color: #FFFFFF !important;
  font-weight: 700 !important;
  text-shadow: 0 1px 2px rgba(0,0,0,0.4) !important;
  letter-spacing: -0.02em !important;
}

.wp-block-group[style*="#10263D"] p,
.wp-block-group[style*="#10263D"] li,
.wp-block-group[style*="#0B2338"] p,
.wp-block-group[style*="#0B2338"] li,
.wp-block-group[style*="#0A192F"] p,
.wp-block-group[style*="#0A192F"] li,
.nc-bento-3-grid p,
.nc-bento-3-grid li {
  color: #F8FAFC !important;
  font-weight: 450 !important;
  line-height: 1.65 !important;
  opacity: 1 !important;
}

.wp-block-group[style*="#10263D"] .ncx-reveal,
.nc-bento-3-grid .ncx-reveal {
  background: rgba(255, 255, 255, 0.08) !important;
  border: 1px solid rgba(255, 255, 255, 0.20) !important;
  box-shadow: 0 8px 32px -4px rgba(0, 0, 0, 0.3) !important;
  backdrop-filter: blur(16px) !important;
  -webkit-backdrop-filter: blur(16px) !important;
}

.nc-bento-3-grid svg,
.wp-block-group[style*="#10263D"] svg {
  color: #34D399 !important;
  filter: drop-shadow(0 2px 4px rgba(0, 0, 0, 0.3));
}
/* nc-cls-navigation */
.nc-mega-menu{position:absolute;visibility:hidden;opacity:0;pointer-events:none}.nc-mobile-drawer{display:none}@media(max-width:1024px){.nc-top-trust-bar{display:none}.nc-nav-menu{display:none}.nc-main-navbar{height:76px}.nc-original-logo-img{height:48px;width:auto}}
/* nc-cls-header */
.wp-block-navigation__responsive-container-close{position:absolute!important}
/* nc-cta-trust-fix */
.nc-core-cta-trust{flex-basis:100% !important;width:100% !important;order:99 !important}
/* nc-hero-immediate-visible */
.nc-hero-parallax-bg .ncx-reveal,
    .nc-hero-parallax-bg .nc-reveal,
    .nc-hero-parallax-bg [data-nc-reveal],
    .nc-hero-cols .ncx-reveal,
    .nc-hero-cols .nc-hero-col-left *,
    .nc-hero-cols .nc-hero-col-right * {
        opacity: 1 !important;
        transform: none !important;
        filter: none !important;
        visibility: visible !important;
    }
/* nc-mobil */
@media (max-width:781px){.entry-content .alignwide[style*="grid-auto-rows"]{grid-template-rows:auto!important;grid-auto-rows:auto!important}.entry-content .alignwide[style*="grid-auto-rows"]>a{grid-column:auto!important;grid-row:auto!important}.nc-hero-background-media::after{background-image:linear-gradient(180deg,rgba(8,20,36,.42) 0%,rgba(8,20,36,.60) 42%,rgba(8,20,36,.74) 100%)!important}.nc-hero-col-left>p:first-child{font-size:14px!important;letter-spacing:.3px!important}.nc-footer-social-link{min-width:44px!important;min-height:44px!important}img[style*="min-height:380px"]{min-height:220px!important}.nca-eyebrow{letter-spacing:.4px!important}#nc-top{width:44px!important;height:44px!important}}
/* nc-kontrast-buttons */
body .wp-block-button:not(.is-style-outline) > a.wp-block-button__link,body .wp-block-button:not(.is-style-outline) > a.wp-block-button__link *,body a.nc-hero-btn-primary,body a.nc-hero-btn-primary *{color:#081422 !important}body .nc-footer-btn-primary{background:#00705F !important;color:#FFFFFF !important}body .nc-footer-btn-primary:hover,body .nc-footer-btn-primary:focus-visible{background:#005447 !important;color:#FFFFFF !important}body .nc-container p[style*="187, 120"],body .nc-container p[style*="#48BB78"],body .wp-block-group__inner-container p[style*="187, 120"],body .nc-blog-3-grid span[style*="187, 120"],body .nc-blog-3-grid span[style*="#48BB78"]{color:#1F7A52 !important}body .ncx-map-label [style*="#48BB78"],body .ncx-map-label [style*="187, 120"]{color:#6FCB9B !important}
/* nc-head-base-fixes */
/* Ensure Header Dropdowns are closed by default */
.kt-layout-id_header-1 .wp-block-navigation__submenu-container,
.wp-block-navigation-submenu .wp-block-navigation__submenu-container {
  display: none !important;
}
.kt-layout-id_header-1 .wp-block-navigation-item:hover > .wp-block-navigation__submenu-container,
.kt-layout-id_header-1 .wp-block-navigation-item:focus-within > .wp-block-navigation__submenu-container {
  display: block !important;
}
@media (min-width: 1025px) {
  .wp-block-navigation__responsive-container-open {
    display: none !important;
  }
}
/* nc-interactions-inline-css */
.ncx-reveal { opacity: 0; transform: translateY(28px); transition: opacity .8s ease, transform .8s ease; }
.ncx-reveal.is-in { opacity: 1; transform: translateY(0); }
.ncx-audience-panel[hidden] { display: none !important; }
.ncx-accordion-panel { max-height: 0; overflow: hidden; transition: max-height .35s ease, padding .35s ease; padding-top: 0 !important; padding-bottom: 0 !important; }
.ncx-accordion-item.is-open .ncx-accordion-panel { max-height: 1200px !important; padding-bottom: 24px !important; }
.ncx-accordion-item.is-open .ncx-accordion-vline { display: none; }
.ncx-slider-slide { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; opacity: 0; transition: opacity 1.1s ease; }
@keyframes ncKenBurns {
  0% { transform: scale(1); }
  100% { transform: scale(1.08); }
}
.ncx-slider-slide.is-active { opacity: 1; animation: ncKenBurns 4.8s ease-out forwards; }

/* E5: clip-path image reveal */
.ncx-image-reveal { position: relative; overflow: hidden; }
.ncx-image-reveal img { 
  clip-path: inset(100% 0px 0px 0px); 
  transition: clip-path 1.4s cubic-bezier(0.16, 1, 0.3, 1); 
}
.ncx-image-reveal.is-in img { 
  clip-path: inset(0% 0px 0px 0px); 
}

/* E6: word-blur headline (disabled) */
.ncx-word-blur { display: inline; }

/* E8: Bezirkskarte styling & pulse */
/* Puls ueber ein Pseudoelement mit transform+opacity statt box-shadow.
   box-shadow laesst sich nicht auf die GPU auslagern - die alte Fassung lief
   mit 2s infinite auf 23 Kartenpunkten dauerhaft auf dem Hauptthread und
   erzwang bei jedem Frame ein Neuzeichnen. */
@keyframes ncxPulseGpu {
  0% { opacity: 0.4; transform: scale(1); }
  70% { opacity: 0; transform: scale(2.6); }
  100% { opacity: 0; transform: scale(2.6); }
}
.ncx-map-dot { position: relative; }
.ncx-map-dot::after {
  content: ""; position: absolute; inset: 0; border-radius: inherit;
  background: rgba(14, 169, 155, 0.4);
  transform-origin: center; will-change: transform, opacity;
  animation: ncxPulseGpu 2s infinite;
  pointer-events: none; z-index: -1;
}
.ncx-map-dot:hover::after { animation: none; opacity: 0; }
@media (prefers-reduced-motion: reduce) {
  .ncx-map-dot::after { animation: none; opacity: 0; }
}

/* E8: Bezirkskarte SVG Hotspots (alternative template) */
.nc-district-map-wrapper { position: relative; width: 100%; max-width: 800px; margin: 0 auto; }
.nc-district-hotspot { fill: #2FB8A6; fill-opacity: 0; stroke: #2FB8A6; stroke-width: 1.5; stroke-opacity: 0; cursor: pointer; transition: fill-opacity 0.25s, stroke-opacity 0.25s; }
.nc-district-hotspot:hover { fill-opacity: 0.18; stroke-opacity: 0.85; }
.nc-map-tooltip { position: absolute; display: none; background: #12324A; color: #fff; padding: 6px 12px; border-radius: 100px; font-size: 12.5px; font-weight: 700; pointer-events: none; z-index: 10; border: 1px solid #2FB8A6; box-shadow: 0 4px 12px rgba(18,35,63,.18); transform: translate(-50%, -100%); margin-top: -12px; white-space: nowrap; }

/* E11: Scroll-driven checkmark animation */
.ncx-reveal svg[stroke] polyline,
.ncx-reveal svg[stroke] path {
  stroke-dasharray: 40;
  stroke-dashoffset: 40;
  transition: stroke-dashoffset 0.85s cubic-bezier(0.4, 0, 0.2, 1) 0.1s;
}
.ncx-reveal.is-in svg[stroke] polyline,
.ncx-reveal.is-in svg[stroke] path {
  stroke-dashoffset: 0;
}

/* E10: Before/After Drag Slider */
.ncx-before-after { position: relative; width: 100%; aspect-ratio: 4/3; border-radius: 20px; overflow: hidden; box-shadow: 0 20px 44px rgba(18,35,63,.12); user-select: none; }
.ncx-ba-after-img { width: 100%; height: 100%; object-fit: cover; display: block; }
.ncx-ba-before { position: absolute; inset: 0 auto 0 0; width: 50%; overflow: hidden; z-index: 2; }
.ncx-ba-before-img { width: 100%; height: 100%; object-fit: cover; display: block; }
.ncx-before-after .ncx-ba-before-img { width: 100%; max-width: none; }
.ncx-ba-handle { position: absolute; top: 0; bottom: 0; left: 50%; width: 4px; background: #2FB8A6; cursor: ew-resize; z-index: 3; transform: translateX(-50%); box-shadow: 0 0 10px rgba(0,0,0,0.3); }
.ncx-ba-handle-button { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); width: 40px; height: 40px; border-radius: 50%; background: #2FB8A6; border: 3px solid #fff; display: flex; align-items: center; justify-content: center; color: #fff; box-shadow: 0 4px 10px rgba(0,0,0,0.25); pointer-events: none; }
.ncx-ba-handle-button::before { content: "↔"; font-weight: 800; font-size: 18px; }


/* --- Universal B2B Motion Engine: Styles & Micro-interactions --- */
.motion-hover-lift,
.motion-hover-zoom img,
.motion-button-pulse,
.ncx-accordion-trigger svg,
.ncx-accordion-vline {
  transition: all 0.5s cubic-bezier(0.25, 1, 0.5, 1);
}

/* E1 & E2: Micro-interactions - Lift & Zoom */
@media (hover: hover) {
  .motion-hover-lift {
    transition: transform 0.5s cubic-bezier(0.25, 1, 0.5, 1), box-shadow 0.5s cubic-bezier(0.25, 1, 0.5, 1) !important;
  }
  .motion-hover-lift:hover {
    transform: translateY(-5px) !important;
    box-shadow: 0 20px 40px rgba(18, 35, 63, 0.12) !important;
  }
  .motion-hover-zoom {
    overflow: hidden;
  }
  .motion-hover-zoom img {
    transition: transform 0.5s cubic-bezier(0.25, 1, 0.5, 1) !important;
  }
  .motion-hover-zoom:hover img {
    transform: scale(1.03) !important;
  }
}

/* E3: CTA Button Pulse & Shine Effect */
.motion-button-pulse {
  position: relative;
  overflow: hidden;
  min-width: 48px;
  min-height: 48px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
@keyframes ncxBtnPulse {
  0% { transform: scale(1); }
  50% { transform: scale(1.03); }
  100% { transform: scale(1); }
}
@media (hover: hover) {
  .motion-button-pulse:hover {
    animation: ncxBtnPulse 1.2s infinite ease-in-out !important;
  }
  .motion-button-pulse::before {
    content: '';
    position: absolute;
    top: 0;
    left: -150%;
    width: 50%;
    height: 100%;
    background: linear-gradient(
      90deg,
      transparent,
      rgba(255, 255, 255, 0.25),
      transparent
    );
    transform: skewX(-25deg);
    transition: none;
  }
  .motion-button-pulse:hover::before {
    left: 150%;
    transition: left 0.8s ease-in-out !important;
  }
}

/* Staggered Delay classes for Scroll-Reveal Grids */
.motion-stagger-1 { transition-delay: 100ms !important; }
.motion-stagger-2 { transition-delay: 200ms !important; }
.motion-stagger-3 { transition-delay: 300ms !important; }

/* Parallax Background Utility */
.motion-parallax-bg {
  background-attachment: fixed;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}

/* Accordion trigger sizing and transition rotation */
.ncx-accordion-trigger {
  min-height: 48px;
  display: flex;
  align-items: center;
  cursor: pointer;
}
.ncx-accordion-trigger svg {
  transition: transform 0.5s cubic-bezier(0.25, 1, 0.5, 1) !important;
}
.ncx-accordion-item.is-open .ncx-accordion-trigger svg {
  transform: rotate(180deg) !important;
}

@media (prefers-reduced-motion: reduce) {
  .ncx-reveal, .ncx-accordion-panel, .ncx-slider-slide { transition-duration: .001ms !important; }
  .ncx-reveal { opacity: 1 !important; transform: none !important; }
  .ncx-slider-slide.is-active { animation: none !important; opacity: 1 !important; }
  .ncx-image-reveal img { clip-path: none !important; }
  .ncx-word-blur .nc-word { opacity: 1 !important; filter: none !important; }
  .ncx-map-dot { animation: none !important; }
  .ncx-reveal svg[stroke] polyline,
  .ncx-reveal svg[stroke] path { stroke-dashoffset: 0 !important; transition: none !important; }
  .ncx-ba-before { width: 50% !important; }
  .ncx-ba-handle { left: 50% !important; display: none !important; }
  .motion-hover-lift, .motion-hover-zoom img, .motion-button-pulse {
    transition: none !important;
    transform: none !important;
    animation: none !important;
  }
}
/*# sourceURL=nc-interactions-inline-css */
/* nc-graetzl-cards */
/* Trust-Leiste: stand mit #1F2933 auf dunklem Navy - rund 1,2:1, praktisch unlesbar.
   Jetzt eigenes Navy-Band mit Teal-Akzentlinie, hellen Texten und Karten statt loser Zeilen. */
.nc-trust-bar-container{position:relative;background:linear-gradient(160deg,#0E293C 0%,#12324A 100%);
 padding:26px 20px;border-top:2px solid #2FB8A6;overflow:hidden}
.nc-trust-bar-container::before{content:"";position:absolute;width:420px;height:420px;top:-220px;right:-120px;
 background:radial-gradient(circle,rgba(47,184,166,.16),transparent 70%);pointer-events:none}
.nc-trust-bar{position:relative;display:flex;flex-wrap:wrap;gap:14px;justify-content:center;
 max-width:1100px;margin:0 auto}
.nc-trust-item{display:flex;align-items:center;gap:12px;padding:14px 20px;border-radius:14px;
 background:rgba(255,255,255,.05);border:1px solid rgba(94,234,212,.16);
 transition:transform .22s ease,border-color .22s ease,background .22s ease}
.nc-trust-item:hover{transform:translateY(-3px);border-color:rgba(94,234,212,.45);background:rgba(255,255,255,.09)}
.nc-google-item{cursor:pointer}
.nc-trust-icon{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;
 width:38px;height:38px;border-radius:11px;background:rgba(255,255,255,.94)}
.nc-trust-icon svg{width:22px;height:22px}
body .nc-trust-title{color:#FFFFFF !important;font-weight:700;font-size:15px;line-height:1.25}
body .nc-trust-subtitle{color:#AEB9C9 !important;font-size:13px;line-height:1.4;margin-top:2px}
.nc-trust-item > div:last-child{min-width:0}
@media(max-width:700px){
 .nc-trust-bar{gap:10px}
 .nc-trust-item{padding:12px 14px;width:100%}
 .nc-trust-bar-container{padding:20px 16px}
}
@media (prefers-reduced-motion:reduce){.nc-trust-item{transition:none}.nc-trust-item:hover{transform:none}}
/* nc-critical-atf */
/* Layout foundation — replaces blocked kadence global/header CSS for first paint */
    *,*::before,*::after{box-sizing:border-box}
    html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
    body{margin:0;padding:0;font-family:system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;background:#fff;color:#12324a}
    img,video{max-width:100%;height:auto;display:block}
    a{color:inherit;text-decoration:none}
    /* Header skeleton — prevents CLS from masthead paint */
    #masthead,.site-header,header#masthead{display:flex;align-items:center;min-height:84px;width:100%;position:sticky;top:0;z-index:9000;background:rgba(10,38,71,0.72)}
    @media(max-width:1024px){#masthead,.site-header{min-height:74px}}
    /* Hero Immediate Visibility & Zero Blank Screen */
    .nc-hero-parallax-bg,
    .nc-hero-parallax-bg *,
    .nc-hero-cols,
    .nc-hero-cols *,
    .nc-hero-col-left,
    .nc-hero-col-left *,
    .nc-hero-col-right,
    .nc-hero-col-right * {
        opacity: 1 !important;
        visibility: visible !important;
        filter: none !important;
    }
    .nc-hero-parallax-bg { min-height: 85vh !important; display: flex !important; align-items: center !important; }
    
    /* Hero skeleton — prevents 0.9 CLS from absolute background child */
    .nc-hero-parallax-bg,.nc-hero-background-media{position:relative;min-height:600px;overflow:hidden}
    @media(max-width:767px){.nc-hero-parallax-bg,.nc-hero-background-media{min-height:420px}}
    .nc-hero-parallax-bg > *[style*="position: absolute"],.nc-hero-background-media > *[style*="position: absolute"]{position:absolute!important;inset:0!important;width:100%!important;height:100%!important}
/* nc-premium-v5 */
/* ── CRITICAL ZERO-CLS RULES & LAYOUT STABILIZATION ── */
    #masthead,
    .site-header,
    header#masthead,
    .wizard-header,
    .kt-layout-id_header-1,
    div.wp-block-kadence-rowlayout:has(#kt-layout-id_header-1),
    div.wp-block-kadence-rowlayout:has(.wp-block-navigation) {
      min-height: 84px !important;
      contain: layout style;
    }
    @media (max-width: 1024px) {
      #masthead,
      .site-header,
      header#masthead,
      .wizard-header,
      .kt-layout-id_header-1,
      div.wp-block-kadence-rowlayout:has(#kt-layout-id_header-1),
      div.wp-block-kadence-rowlayout:has(.wp-block-navigation) {
        min-height: 74px !important;
      }
    }

    /* ── CRITICAL CLS FIX: Hero Section Height Reservation ── */
    /* Root cause: position:absolute background-media child has no parent height → layout shift 0.90 */
    .nc-hero-parallax-bg,
    .nc-hero-background-media,
    .nc-hero-img-wrap,
    .ncu-hero-img-wrap,
    .ncb-hero-img-wrap,
    .hero-img-wrap,
    .wp-block-group:has(.nc-hero-parallax-bg) {
      position: relative !important;
      min-height: 600px !important;
    }
    @media (max-width: 767px) {
      .nc-hero-parallax-bg,
      .nc-hero-background-media,
      .nc-hero-img-wrap,
      .ncu-hero-img-wrap,
      .ncb-hero-img-wrap,
      .hero-img-wrap,
      .wp-block-group:has(.nc-hero-parallax-bg) {
        min-height: 420px !important;
      }
    }

    /* Contain and fully size the absolute-positioned background div */
    .nc-hero-parallax-bg > div[style*="position: absolute"],
    .nc-hero-background-media > div[style*="position: absolute"],
    .wp-block-group__inner-container > div[style*="position: absolute"][style*="width: 100%"][style*="height: 100%"] {
      position: absolute !important;
      inset: 0 !important;
      width: 100% !important;
      height: 100% !important;
      contain: layout paint;
    }
    .nc-hero-img-wrap img,
    .ncu-hero-img-wrap img,
    .ncb-hero-img-wrap img,
    .hero-img-wrap img {
      width: 100% !important;
      height: 100% !important;
      object-fit: cover !important;
    }


    /* Logo Tickers & Marquees Layout Shift Prevention */
    .nc-marquee-track,
    .nc-logo-slider,
    .nc-logo-track,
    .nc-refs-section {
      min-height: 52px !important;
      contain: layout;
    }

    /* Smooth Font Rendering */
    body, button, input, select, textarea {
      text-rendering: optimizeLegibility;
      -webkit-font-smoothing: antialiased;
      -moz-osx-font-smoothing: grayscale;
    }

    /* ── TOKENS ── */
:root {
  --nc-navy: #12324a;
  --nc-navy-deep: #0a2647;
  --nc-teal: #00a88f;
  --nc-teal-dark: #008f79;
  --nc-teal-light: #2dd4bf;
  --nc-amber: #f59e0b;
  --nc-white: #ffffff;
  --nc-slate: #64748b;
  --nc-slate-light: #94a3b8;
  --nc-transition: 0.22s cubic-bezier(0.25, 0.8, 0.25, 1);
  --nc-radius-pill: 9999px;
  --nc-shadow-lg: 0 32px 80px -12px rgba(10,38,71,0.22), 0 0 0 1px rgba(10,38,71,0.06);
  --nc-shadow-sm: 0 4px 16px rgba(10,38,71,0.12);
  --nc-radius: 22px;
  --nc-radius-sm: 14px;
}

/* ── HEADER OVERRIDE & TRANSPARENCY ── */
#masthead,
.site-header,
header#masthead,
.wizard-header,
div.wp-block-kadence-rowlayout:has(.wp-block-navigation),
div.wp-block-kadence-rowlayout:has(#kt-layout-id_header-1) {
  background: rgba(10, 38, 71, 0.72) !important;
  backdrop-filter: blur(12px) !important;
  -webkit-backdrop-filter: blur(12px) !important;
  border-bottom: 1px solid rgba(255, 255, 255, 0.08) !important;
  box-shadow: 0 4px 30px rgba(0, 0, 0, 0.15) !important;
  position: sticky !important;
  top: 0 !important;
  z-index: 9000 !important;
  transition: background 0.3s ease !important;
}

html.has-modal-open #masthead,
html.has-modal-open .site-header,
html.has-modal-open header#masthead,
html.has-modal-open .wizard-header,
html.has-modal-open div.wp-block-kadence-rowlayout:has(.wp-block-navigation),
html.has-modal-open div.wp-block-kadence-rowlayout:has(#kt-layout-id_header-1) {
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}
@media (min-width: 1025px) {
  /* Force middle column navigation space and prevent wrapping */
  .kt-layout-id_header-1 > .kt-row-column-wrap {
    grid-template-columns: 18% 58% 24% !important;
  }
  .wp-block-navigation__container {
    flex-wrap: nowrap !important;
  }
}

/* Hide Branchen from main navigation */
.menu-item-19900,
#menu-item-19900,
li.menu-item a[href*="/branchen/"] {
  display: none !important;
}

/* ── GLOBAL SUPPRESSION OF SEARCH BUTTONS & FLOATING SEARCH TOGGLES ── */
.search-toggle-open,
.search-toggle-btn,
.search-toggle,
.site-search-toggle,
.kadence-search-button,
.kadence-search-icon,
.header-search,
.mobile-search,
.header-search-wrap,
.wp-block-search__button,
.wp-block-search__inside-wrapper button,
.search-form-submit,
.search-submit,
#search-modal-trigger,
#kadence-search-modal,
.kadence-search-modal,
.admin-bar-search,
#wp-admin-bar-search,
#wp-admin-bar-novamira-search,
.novamira-search-btn,
.novamira-search-trigger,
.nc-search-btn,
.floating-search-btn,
[data-toggle="search"],
button.search-btn,
a.search-btn,
.wp-element-button.search-button,
a[href*="#search"],
button[aria-label*="Suchen" i],
button[aria-label*="Search" i],
input[type="submit"][value*="Suchen" i],
#wpadminbar #wp-admin-bar-search,
#wpadminbar .search-button,
.search-open-btn,
.kadence-search {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
  width: 0 !important;
  height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  position: absolute !important;
  clip: rect(0, 0, 0, 0) !important;
}
.site-header-wrap,
.site-header-inner-wrap,
.site-header-upper-wrap,
.site-header-upper-inner-wrap {
  background: transparent !important;
}
#masthead .site-header-row-container-inner,
.site-header .site-header-row-container-inner {
  background: transparent !important;
  padding-top: 8px !important;
  padding-bottom: 8px !important;
}

/* Centering Layout */
.site-main-header-inner-wrap {
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
}
.site-header-main-section-left {
  flex: 0 0 auto !important;
}
.site-header-main-section-right {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  flex: 1 1 auto !important;
  margin-left: 40px !important;
  padding-right: 40px !important;
}
.main-navigation ul.menu,
.primary-navigation ul.menu {
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
}

/* Logo white filter & height restriction (max. 56px) */
.site-branding img,
.brand img,
.site-logo img,
.custom-logo-link img {
  max-height: 52px !important;
  height: 52px !important;
  width: auto !important;
  object-fit: contain !important;
  filter: brightness(0) invert(1) !important;
  transition: opacity var(--nc-transition) !important;
}
.site-branding img:hover,
.brand img:hover {
  opacity: 0.85 !important;
}

/* Hide chevrons on logo/home links, home menu link, and CTA buttons */
.site-branding .nc-chevron,
.brand .nc-chevron,
.kadence-column_hcol1 .nc-chevron,
a:has(img) .nc-chevron,
.header-cta-btn .nc-chevron,
.header-cta-btn a .nc-chevron,
.wp-block-navigation-item.header-cta-btn .nc-chevron,
.wp-block-navigation__responsive-container.is-menu-open a[href="https://www.nobleclean.at/"] .nc-chevron,
.wp-block-navigation__responsive-container.is-menu-open a[href="/"] .nc-chevron,
#kt-layout-id_header-1 a[href="/"] .nc-chevron {
  display: none !important;
}

/* Nav links white */
.main-navigation a,
.site-navigation a,
.primary-menu a,
.primary-navigation a,
#site-navigation a,
.nav-primary a,
nav ul li a,
.site-header-main-nav a {
  color: var(--nc-white) !important;
  font-family: 'Plus Jakarta Sans', -apple-system, BlinkMacSystemFont, sans-serif !important;
  font-weight: 700 !important;
  font-size: 15px !important;
  letter-spacing: 0.02em !important;
  padding: 8px 14px !important;
  border-radius: 8px !important;
  transition: color var(--nc-transition), background var(--nc-transition) !important;
}
.main-navigation a:hover,
.primary-navigation a:hover,
nav ul li a:hover {
  color: var(--nc-teal) !important;
  background: var(--nc-teal-pale) !important;
}

/* Hide default sub-menus on desktop – we handle them via portal */
@media (min-width: 1025px) {
  .main-navigation .sub-menu,
  .primary-navigation .sub-menu,
  nav .sub-menu,
  .kadence-navigation .sub-menu,
  .wp-block-navigation__submenu-container {
    display: none !important;
  }
}

/* CTA button in header */
.header-cta-btn,
a.header-cta-btn {
  background: var(--nc-teal) !important;
  color: var(--nc-navy) !important;
  font-weight: 800 !important;
  padding: 10px 22px !important;
  border-radius: var(--nc-radius-pill) !important;
  font-size: 13.5px !important;
  white-space: nowrap !important;
  transition: all var(--nc-transition) !important;
  box-shadow: 0 4px 14px rgba(45,212,191,0.35) !important;
  text-decoration: none !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
}
.header-cta-btn:hover {
  background: var(--nc-teal-dark) !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 8px 24px rgba(45,212,191,0.45) !important;
}

/* ── PORTAL DROPDOWN BASE ── */
.nc-portal {
  position: fixed;
  z-index: 999999;
  pointer-events: auto;
  font-family: 'Plus Jakarta Sans', -apple-system, BlinkMacSystemFont, sans-serif;
  opacity: 0;
  transform: translateY(12px) scale(0.98);
  transition: opacity 0.24s cubic-bezier(0.22,1,0.36,1),
              transform 0.24s cubic-bezier(0.22,1,0.36,1);
  will-change: opacity, transform;
}
.nc-portal.nc-portal--visible {
  opacity: 1;
  transform: translateY(0) scale(1);
}

/* ── MEGA MENU PORTAL ── */
.nc-portal--mega {
  background: rgba(255, 255, 255, 0.98);
  backdrop-filter: blur(24px) saturate(180%);
  -webkit-backdrop-filter: blur(24px) saturate(180%);
  border: 1px solid rgba(10, 38, 71, 0.08);
  border-top: 4px solid var(--nc-teal) !important; /* Premium color accent line */
  border-radius: var(--nc-radius);
  box-shadow: var(--nc-shadow-lg);
  padding: 44px 56px;
  width: 1380px;
  max-width: calc(100vw - 32px);
}
@media (max-width: 1420px) {
  .nc-portal--mega {
    width: calc(100vw - 32px) !important;
    left: 16px !important;
    padding: 32px 24px;
  }
}

/* ── STANDARD DROPDOWN ── */
.nc-portal--std {
  background: rgba(255,255,255,0.97);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
  border-radius: var(--nc-radius-sm);
  box-shadow: var(--nc-shadow-lg);
  padding: 10px;
  min-width: 260px;
}

/* ── MEGA: HEADER LINE ── */
.nc-mega-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 24px;
  padding-bottom: 16px;
  border-bottom: 1px solid rgba(10,38,71,0.08);
}
.nc-mega-label {
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--nc-teal-dark);
}
.nc-mega-all-link {
  font-size: 12px;
  font-weight: 700;
  color: var(--nc-slate);
  text-decoration: none;
  display: flex;
  align-items: center;
  gap: 4px;
  transition: color var(--nc-transition);
}
.nc-mega-all-link:hover { color: var(--nc-teal); }
.nc-mega-all-link svg { transition: transform var(--nc-transition); }
.nc-mega-all-link:hover svg { transform: translateX(3px); }

/* ── MEGA: GRID ── */
.nc-mega-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 6px 12px;
}

/* ── MEGA: ITEM ── */
.nc-mega-item {
  display: flex;
  align-items: center;
  gap: 16px;
  padding: 14px 18px;
  border-radius: var(--nc-radius-sm);
  text-decoration: none;
  color: var(--nc-text);
  background: transparent;
  border: 1px solid transparent;
  transition: background var(--nc-transition), border-color var(--nc-transition), transform var(--nc-transition), box-shadow var(--nc-transition);
  position: relative;
  overflow: hidden;
  cursor: pointer;
  opacity: 0;
  transform: translateY(8px);
}
.nc-mega-item.nc-anim-in {
  opacity: 1;
  transform: translateY(0);
}
.nc-mega-item:hover {
  background: rgba(45, 212, 191, 0.06);
  border-color: rgba(45, 212, 191, 0.2);
  transform: translateY(-2px);
  box-shadow: 0 8px 24px rgba(10, 38, 71, 0.05), 0 2px 6px rgba(45, 212, 191, 0.1);
}

/* Icon pill */
.nc-mega-icon {
  width: 46px;
  height: 46px;
  min-width: 46px;
  border-radius: 14px;
  background: rgba(45, 212, 191, 0.10);
  color: var(--nc-navy-mid);
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all var(--nc-transition);
  position: relative;
  z-index: 1;
}
.nc-mega-icon svg {
  transition: transform 0.3s cubic-bezier(0.34, 1.56, 0.64, 1);
}
.nc-mega-icon-small svg {
  transition: transform 0.3s cubic-bezier(0.34, 1.56, 0.64, 1);
}
.nc-mega-icon .lottie-icon {
  width: 26px;
  height: 26px;
}
.nc-mega-item:hover .nc-mega-icon {
  background: linear-gradient(135deg, var(--nc-teal) 0%, var(--nc-teal-dark) 100%); /* Modern gradient accent */
  color: var(--nc-navy);
  transform: scale(1.08) rotate(-4deg);
}
.nc-mega-item:hover .nc-mega-icon svg {
  transform: scale(1.15) rotate(-6deg);
}
.nc-mega-item-small:hover .nc-mega-icon-small svg {
  transform: scale(1.15) rotate(6deg);
}

.nc-mega-text {
  position: relative;
  z-index: 1;
}
.nc-mega-text strong {
  display: block;
  font-size: 14.5px;
  font-weight: 700;
  color: var(--nc-text);
  line-height: 1.3;
}
.nc-mega-text span {
  display: block;
  font-size: 12.5px;
  color: var(--nc-slate);
  font-weight: 500;
  margin-top: 2px;
  line-height: 1.3;
}

/* ── CTA BANNER ── */
.nc-mega-cta {
  grid-column: 1 / -1;
  margin-top: 12px;
  background: linear-gradient(135deg, var(--nc-navy) 0%, #1a3f5c 100%);
  border-radius: 16px;
  padding: 20px 24px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  text-decoration: none;
  transition: all var(--nc-transition);
  position: relative;
  overflow: hidden;
}
.nc-mega-cta::after {
  content: '';
  position: absolute;
  top: -50%;
  right: -10%;
  width: 200px;
  height: 200px;
  background: radial-gradient(circle, rgba(45,212,191,0.15) 0%, transparent 70%);
  pointer-events: none;
}
.nc-mega-cta:hover {
  transform: translateY(-2px);
  box-shadow: 0 12px 32px rgba(10,38,71,0.35);
}
.nc-mega-cta .nc-cta-lottie {
  width: 48px;
  height: 48px;
  flex-shrink: 0;
}
.nc-mega-cta-text strong {
  display: block;
  color: var(--nc-white);
  font-size: 15px;
  font-weight: 800;
}
.nc-mega-cta-text span {
  color: rgba(255,255,255,0.65);
  font-size: 12.5px;
  font-weight: 500;
}
.nc-mega-cta-btn {
  background: var(--nc-teal);
  color: var(--nc-navy);
  padding: 11px 24px;
  border-radius: var(--nc-radius-pill);
  font-weight: 900;
  font-size: 13px;
  white-space: nowrap;
  transition: all var(--nc-transition);
  flex-shrink: 0;
}
.nc-mega-cta:hover .nc-mega-cta-btn {
  background: var(--nc-teal-dark);
  transform: translateX(3px);
}

/* ── STD DROPDOWN ITEMS ── */
.nc-std-item {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 10px 14px;
  border-radius: 10px;
  text-decoration: none;
  color: var(--nc-text);
  font-size: 13.5px;
  font-weight: 600;
  transition: all var(--nc-transition);
  opacity: 0;
  transform: translateX(-6px);
}
.nc-std-item.nc-anim-in {
  opacity: 1;
  transform: translateX(0);
  transition: opacity 0.25s ease, transform 0.25s ease, background var(--nc-transition);
}
.nc-std-item:hover {
  background: var(--nc-teal-pale);
  color: var(--nc-navy);
  transform: translateX(4px);
}
.nc-std-icon {
  width: 34px;
  height: 34px;
  border-radius: 8px;
  background: rgba(45,212,191,0.1);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  transition: background var(--nc-transition);
}
.nc-std-item:hover .nc-std-icon { background: var(--nc-teal); }

/* ── ACTIVE INDICATOR on nav trigger ── */
.nc-nav-active > a,
.nc-nav-active > .wp-block-navigation-item__content,
a.nc-nav-active {
  color: var(--nc-teal) !important;
}

/* ── MASTER MEGA MENU GRID & COLS ── */
.nc-mega-master-container {
  display: grid;
  grid-template-columns: 3.4fr 1.0fr 1.1fr 1.5fr; /* Widened services column */
  gap: 32px; /* Optimized column gap */
  width: 100%;
  align-items: start;
}
@media (max-width: 1420px) {
  .nc-mega-master-container {
    gap: 20px;
  }
}
.nc-mega-services-subgrid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px 16px;
}
.nc-mega-vertical-list {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.nc-mega-col-title {
  font-family: 'Plus Jakarta Sans', -apple-system, BlinkMacSystemFont, sans-serif;
  font-size: 11px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 1.5px;
  color: var(--nc-navy-light);
  margin-bottom: 16px;
  display: flex;
  align-items: center;
  gap: 8px;
  border-bottom: 1px solid rgba(10,38,71,0.08);
  padding-bottom: 8px;
}
.nc-mega-col-icon {
  display: inline-flex;
  align-items: center;
  color: var(--nc-teal-dark);
}
.nc-mega-item-small {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 10px 14px;
  border-radius: 12px;
  text-decoration: none !important;
  color: var(--nc-navy) !important;
  border: 1px solid transparent;
  opacity: 0;
  transform: translateY(8px);
  transition: opacity 0.3s ease, transform 0.3s ease, background var(--nc-transition), border-color var(--nc-transition);
}
.nc-mega-item-small.nc-anim-in {
  opacity: 1;
  transform: translateY(0);
}
.nc-mega-item-small:hover {
  background: var(--nc-teal-pale);
  border-color: rgba(45,212,191,0.2);
  transform: translateY(-1px) translateX(2px);
}
.nc-mega-icon-small {
  width: 34px;
  height: 34px;
  border-radius: 10px;
  background: rgba(10,38,71,0.04);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  transition: var(--nc-transition);
  color: var(--nc-navy);
}
.nc-mega-item-small:hover .nc-mega-icon-small {
  background: var(--nc-teal);
  color: var(--nc-navy);
  transform: scale(1.05);
}
.nc-mega-text-small {
  line-height: 1.25;
}
.nc-mega-text-small strong {
  display: block;
  font-size: 14px;
  font-weight: 700;
  color: var(--nc-navy);
}
.nc-mega-text-small span {
  display: block;
  font-size: 12px;
  color: var(--nc-slate-light);
}

/* CTA Card inside megamenu */
.nc-mega-cta-card {
  background: linear-gradient(135deg, #0A2647 0%, #12324A 100%);
  border: 1px solid rgba(45, 212, 191, 0.35); /* Premium colored border accent */
  border-radius: var(--nc-radius-sm);
  padding: 24px 20px;
  color: var(--nc-white);
  text-align: center;
  box-shadow: 0 20px 40px rgba(10, 38, 71, 0.3), 0 0 25px rgba(45, 212, 191, 0.05), inset 0 1px 0 rgba(255, 255, 255, 0.1);
  transition: transform var(--nc-transition), box-shadow var(--nc-transition), border-color var(--nc-transition);
}
.nc-mega-cta-card:hover {
  transform: translateY(-4px);
  border-color: var(--nc-teal); /* Glowing border on hover */
  box-shadow: 0 24px 48px rgba(10, 38, 71, 0.4), 0 0 30px rgba(45, 212, 191, 0.2), inset 0 1px 0 rgba(255, 255, 255, 0.15);
}
.nc-mega-cta-card strong {
  display: block;
  font-size: 16.5px;
  font-weight: 800;
  margin-bottom: 4px;
}
.nc-mega-cta-card p {
  font-size: 12.5px;
  color: rgba(255, 255, 255, 0.9) !important; /* Force high contrast on dark background */
  margin: 0 0 14px 0 !important;
  font-weight: 500;
}

/* Trust logos container styling */
.nc-mega-trust-logos {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 12px;
  margin-top: 10px;
}
.nc-mega-trust-logos a {
  display: flex !important;
  align-items: center;
  justify-content: center;
}
.nc-mega-trust-logos img {
  height: 50px;
  width: auto;
  object-fit: contain;
  transition: transform var(--nc-transition), filter var(--nc-transition) !important;
  filter: contrast(100%) brightness(100%);
}
.nc-mega-trust-logos img:hover {
  transform: scale(1.08);
}
.nc-mega-trust-logos img.nc-google-logo {
  height: 68px !important;
}
.nc-mega-cta-card-btn {
  display: block;
  background: var(--nc-teal);
  color: var(--nc-navy) !important;
  font-size: 12.5px;
  font-weight: 800;
  padding: 11px;
  border-radius: 8px;
  text-decoration: none !important;
  transition: var(--nc-transition);
  margin-bottom: 10px;
  box-shadow: 0 4px 12px rgba(45, 212, 191, 0.25);
}
.nc-mega-cta-card-btn:hover {
  background: var(--nc-teal-dark);
  transform: translateY(-1px);
  box-shadow: 0 6px 16px rgba(45, 212, 191, 0.35);
}
.nc-mega-cta-card-phone {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 13.5px;
  font-weight: 700;
  color: var(--nc-teal) !important;
  text-decoration: none !important;
  transition: color var(--nc-transition), transform var(--nc-transition);
}
.nc-mega-cta-card-phone:hover {
  color: var(--nc-white) !important;
  transform: scale(1.02);
}
.nc-mega-cta-footer-links {
  margin-top: 14px;
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding-left: 4px;
}
.nc-mega-cta-footer-links a {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 12px;
  font-weight: 600;
  color: var(--nc-navy-light) !important;
  text-decoration: none !important;
  transition: var(--nc-transition);
}
.nc-mega-cta-footer-links a:hover {
  color: var(--nc-teal-dark) !important;
  transform: translateX(2px);
}

/* ═══════════════════════════════════════════════════════════════════
   PREMIUM FOOTER
   ═══════════════════════════════════════════════════════════════════ */
#nc-premium-footer {
  display: none;
  background: var(--nc-navy);
  color: var(--nc-white);
  font-family: 'Plus Jakarta Sans', -apple-system, BlinkMacSystemFont, sans-serif;
  margin-top: 0;
  padding: 0;
  position: relative;
  overflow: hidden;
}
#nc-premium-footer.nc-footer-ready {
  display: block !important;
}

/* Background subtle pattern */
#nc-premium-footer::before {
  content: '';
  position: absolute;
  inset: 0;
  background:
    radial-gradient(ellipse 60% 40% at 20% 60%, rgba(45,212,191,0.06) 0%, transparent 60%),
    radial-gradient(ellipse 40% 60% at 80% 30%, rgba(26,63,92,0.5) 0%, transparent 60%);
  pointer-events: none;
}

/* Top wave divider */
.nc-footer-wave {
  display: block;
  width: 100%;
  height: 60px;
  overflow: hidden;
  line-height: 0;
  margin-bottom: -2px;
}
.nc-footer-wave svg {
  width: 100%;
  height: 100%;
}

/* Main content */
.nc-footer-body {
  position: relative;
  z-index: 1;
  max-width: 1200px;
  margin: 0 auto;
  padding: 64px 24px 48px;
  display: grid;
  grid-template-columns: 2fr 1fr 1fr 1fr;
  gap: 48px 40px;
}

/* Brand column */
.nc-footer-brand {}
.nc-footer-logo {
  height: 44px;
  width: auto;
  filter: brightness(0) invert(1);
  opacity: 0.95;
  margin-bottom: 20px;
  display: block;
  transition: opacity var(--nc-transition);
}
.nc-footer-logo:hover { opacity: 1; }
.nc-footer-tagline {
  font-size: 14px !important;
  color: rgba(255,255,255,0.65) !important;
  line-height: 1.7 !important;
  margin-bottom: 24px !important;
  font-weight: 500 !important;
}
.nc-footer-badges {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 24px;
}
.nc-footer-badge {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  background: rgba(45,212,191,0.1);
  border: 1px solid rgba(45,212,191,0.25);
  color: var(--nc-teal);
  padding: 6px 12px;
  border-radius: var(--nc-radius-pill);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.01em;
}
.nc-footer-badge svg { width: 13px; height: 13px; }

.nc-footer-social {
  display: flex;
  gap: 10px;
}
.nc-footer-social-link {
  width: 38px;
  height: 38px;
  border-radius: 10px;
  background: rgba(255,255,255,0.08);
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--nc-white);
  text-decoration: none;
  transition: all var(--nc-transition);
  border: 1px solid rgba(255,255,255,0.1);
}
.nc-footer-social-link:hover {
  background: var(--nc-teal);
  color: var(--nc-navy);
  border-color: var(--nc-teal);
  transform: translateY(-3px);
  box-shadow: 0 6px 16px rgba(45,212,191,0.35);
}

/* Link columns */
.nc-footer-col {}
.nc-footer-col-title {
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--nc-teal);
  margin-bottom: 20px;
  padding-bottom: 12px;
  border-bottom: 1px solid rgba(45,212,191,0.2);
  display: flex;
  align-items: center;
  gap: 8px;
}
.nc-footer-col-title .lottie-title-icon {
  width: 20px;
  height: 20px;
}

.nc-footer-links {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.nc-footer-links li { list-style: none !important; }
.nc-footer-link {
  display: flex;
  align-items: center;
  gap: 8px;
  color: rgba(255,255,255,0.65);
  text-decoration: none;
  font-size: 13.5px;
  font-weight: 500;
  padding: 6px 0;
  transition: all var(--nc-transition);
  position: relative;
  border-radius: 6px;
}
.nc-footer-link::before {
  content: '';
  position: absolute;
  left: -8px;
  width: 3px;
  height: 0;
  background: var(--nc-teal);
  border-radius: 2px;
  transition: height var(--nc-transition), top var(--nc-transition);
  top: 50%;
}
.nc-footer-link:hover {
  color: var(--nc-white);
  padding-left: 8px;
}
.nc-footer-link:hover::before {
  height: 70%;
  top: 15%;
}
.nc-footer-link-dot {
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: rgba(45,212,191,0.4);
  flex-shrink: 0;
  transition: background var(--nc-transition), transform var(--nc-transition);
}
.nc-footer-link:hover .nc-footer-link-dot {
  background: var(--nc-teal);
  transform: scale(1.4);
}

/* CTA block in footer */
.nc-footer-cta-block {
  grid-column: 1 / -1;
  background: linear-gradient(135deg, rgba(45,212,191,0.12) 0%, rgba(45,212,191,0.05) 100%);
  border: 1px solid rgba(45,212,191,0.2);
  border-radius: 20px;
  padding: 32px 40px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  position: relative;
  overflow: hidden;
}
.nc-footer-cta-block::after {
  content: '';
  position: absolute;
  right: -40px;
  top: -40px;
  width: 200px;
  height: 200px;
  background: radial-gradient(circle, rgba(45,212,191,0.1) 0%, transparent 70%);
  pointer-events: none;
}
.nc-footer-cta-text strong {
  display: block;
  font-size: 20px;
  font-weight: 800;
  margin-bottom: 6px;
}
.nc-footer-cta-text p {
  color: rgba(255,255,255,0.65) !important;
  font-size: 14px !important;
  margin: 0 !important;
}
.nc-footer-cta-actions {
  display: flex;
  gap: 12px;
  flex-shrink: 0;
}
.nc-footer-btn-primary {
  background: var(--nc-teal);
  color: var(--nc-navy);
  padding: 13px 28px;
  border-radius: var(--nc-radius-pill);
  font-weight: 900;
  font-size: 14px;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  transition: all var(--nc-transition);
  box-shadow: 0 4px 16px rgba(45,212,191,0.3);
}
.nc-footer-btn-primary:hover {
  background: var(--nc-teal-dark);
  transform: translateY(-2px);
  box-shadow: 0 8px 24px rgba(45,212,191,0.45);
}
.nc-footer-btn-secondary {
  background: rgba(255,255,255,0.08);
  color: var(--nc-white);
  padding: 13px 24px;
  border-radius: var(--nc-radius-pill);
  font-weight: 700;
  font-size: 14px;
  text-decoration: none;
  border: 1px solid rgba(255,255,255,0.15);
  transition: all var(--nc-transition);
}
.nc-footer-btn-secondary:hover {
  background: rgba(255,255,255,0.15);
  border-color: rgba(255,255,255,0.3);
}

/* Bottom bar */
.nc-footer-bottom {
  position: relative;
  z-index: 1;
  border-top: 1px solid rgba(255,255,255,0.08);
  max-width: 1200px;
  margin: 0 auto;
  padding: 20px 24px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  flex-wrap: wrap;
}
.nc-footer-copyright {
  color: rgba(255,255,255,0.45);
  font-size: 12.5px;
  font-weight: 500;
}
.nc-footer-legal {
  display: flex;
  gap: 20px;
}
.nc-footer-legal a {
  color: rgba(255,255,255,0.45);
  text-decoration: none;
  font-size: 12.5px;
  font-weight: 500;
  transition: color var(--nc-transition);
}
.nc-footer-legal a:hover { color: var(--nc-teal); }

/* Scroll-reveal */
.nc-reveal {
  opacity: 0;
  transform: translateY(20px);
  transition: opacity 0.55s cubic-bezier(0.22,1,0.36,1), transform 0.55s cubic-bezier(0.22,1,0.36,1);
}
.nc-reveal.nc-visible {
  opacity: 1;
  transform: translateY(0);
}

/* ── RESPONSIVE ── */
@media (max-width: 1024px) {
  /* Mobile header full-width layout: remove container side padding to stretch background */
  .ncx-header-target,
  div.wp-block-kadence-rowlayout:has(#kt-layout-id_header-1),
  div.wp-block-kadence-rowlayout:has(.wp-block-navigation) {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  .nc-footer-body {
    grid-template-columns: repeat(3, 1fr);
    gap: 40px 24px;
  }
  .nc-footer-brand {
    grid-column: 1 / -1;
  }
  .nc-footer-cta-block {
    flex-direction: column;
    text-align: center;
    padding: 24px;
  }
  .nc-footer-cta-actions {
    justify-content: center;
    width: 100%;
  }
  .nc-portal--mega { width: calc(100vw - 32px); padding: 20px; }
  .nc-mega-grid { grid-template-columns: repeat(2, 1fr); }

  /* Mobile menu submenu text color override */
  .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container a.wp-block-navigation-item__content,
  .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item__content {
    color: rgba(255, 255, 255, 0.85) !important;
    font-weight: 600 !important;
    font-size: 14px !important;
  }
  .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container a.wp-block-navigation-item__content:hover,
  .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container a.wp-block-navigation-item__content:focus,
  .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item__content:hover {
    color: var(--nc-teal) !important;
    background: rgba(255, 255, 255, 0.03) !important;
  }

  /* Force navy background and enable scrolling on mobile menu overlay */
  .wp-block-navigation__responsive-container.is-menu-open,
  .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-close,
  .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-dialog,
  .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content {
    background-color: var(--nc-navy) !important;
    background: var(--nc-navy) !important;
    color: var(--nc-white) !important;
  }

  .wp-block-navigation__responsive-container.is-menu-open {
    overflow-y: auto !important;
    max-height: 100vh !important;
    -webkit-overflow-scrolling: touch !important;
  }

  .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-dialog {
    height: auto !important;
    min-height: 100% !important;
    overflow: visible !important;
  }

  .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content {
    height: auto !important;
    overflow: visible !important;
    padding-bottom: 80px !important;
  }

  /* Submenu toggles (chevrons) on mobile */
  .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-icon.wp-block-navigation-submenu__toggle {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    color: var(--nc-white) !important;
    background: transparent !important;
    border: none !important;
    width: 44px !important;
    height: 44px !important;
    cursor: pointer !important;
    position: absolute !important;
    right: 15px !important;
    top: 8px !important;
    z-index: 10 !important;
    transition: transform 0.25s ease !important;
  }

  /* Rotate chevron when open */
  .wp-block-navigation-submenu.is-open > .wp-block-navigation-submenu__toggle svg {
    transform: rotate(180deg) !important;
  }

  /* Hide submenus by default on mobile, show when is-open */
  .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    height: 0 !important;
    overflow: hidden !important;
  }
  
  .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-submenu.is-open > .wp-block-navigation__submenu-container {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    height: auto !important;
    position: static !important;
    padding-left: 1.5rem !important;
    padding-right: 1rem !important;
    background: rgba(255, 255, 255, 0.03) !important;
    border-radius: 8px !important;
    margin-top: 5px !important;
    margin-bottom: 5px !important;
  }
}

@media (max-width: 767px) {
  .nc-footer-body {
    grid-template-columns: 1fr;
    gap: 36px;
    padding: 48px 20px 32px;
  }
  .nc-footer-brand {
    text-align: center;
  }
  .nc-footer-logo {
    margin: 0 auto 20px;
  }
  .nc-footer-badges {
    justify-content: center;
  }
  .nc-footer-social {
    justify-content: center;
  }
  .nc-footer-col {
    text-align: center;
  }
  .nc-footer-col-title {
    justify-content: center;
    border-bottom: 1px solid rgba(45,212,191,0.15);
  }
  .nc-footer-link {
    justify-content: center;
    padding: 8px 0;
  }
  .nc-footer-link::before {
    display: none;
  }
  .nc-footer-tags-wrap {
    justify-content: center;
  }
  .nc-footer-cta-block {
    padding: 24px 20px;
    gap: 20px;
  }
  .nc-footer-cta-actions {
    flex-direction: column;
    width: 100%;
    gap: 12px;
  }
  .nc-footer-btn-primary,
  .nc-footer-btn-secondary {
    width: 100%;
    justify-content: center;
    box-sizing: border-box;
  }
  .nc-footer-bottom {
    flex-direction: column;
    text-align: center;
    gap: 12px;
  }
  .nc-footer-legal {
    justify-content: center;
    flex-wrap: wrap;
    gap: 12px 20px;
  }
}

@media (max-width: 640px) {
  .nc-mega-grid { grid-template-columns: 1fr; }
}

/* ── TRUST INSURANCE BAR (SINGLE LINE 5 COLS + UNIFIED BG) ── */
.nc-trust-insurance-bar {
  background: #F8FAFC !important;
  border: none !important;
  border-top: 1px solid rgba(226, 232, 240, 0.8) !important;
  padding: 28px 20px 32px !important;
  font-family: 'Plus Jakarta Sans', -apple-system, BlinkMacSystemFont, sans-serif !important;
  position: relative !important;
  z-index: 10 !important;
  width: 100% !important;
}
.nc-tib-container {
  max-width: 1320px !important;
  margin: 0 auto !important;
  display: grid !important;
  grid-template-columns: repeat(5, 1fr) !important;
  gap: 12px !important;
  align-items: stretch !important;
}
.nc-tib-item {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 10px !important;
  padding: 10px 14px !important;
  border-radius: 12px !important;
  background: #FFFFFF !important;
  border: 1px solid #E2E8F0 !important;
  box-shadow: 0 2px 6px rgba(10, 38, 71, 0.03) !important;
  transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1) !important;
  cursor: default !important;
}
.nc-tib-item:hover {
  background: #FFFFFF !important;
  transform: translateY(-2px) !important;
  border-color: #48BB78 !important;
  box-shadow: 0 6px 16px rgba(72, 187, 120, 0.12) !important;
}
.nc-tib-icon {
  width: 28px !important;
  height: 28px !important;
  border-radius: 8px !important;
  background-color: rgba(72, 187, 120, 0.12) !important;
  color: #48BB78 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex-shrink: 0 !important;
  transition: all 0.25s ease !important;
}
.nc-tib-item:hover .nc-tib-icon {
  background-color: #48BB78 !important;
  color: #FFFFFF !important;
}
.nc-tib-text {
  color: #1E293B !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  line-height: 1.25 !important;
  letter-spacing: -0.01em !important;
  white-space: nowrap !important;
}
@media (max-width: 1200px) {
  .nc-tib-container {
    grid-template-columns: repeat(3, 1fr) !important;
    gap: 10px !important;
  }
}
@media (max-width: 768px) {
  .nc-trust-insurance-bar {
    padding: 20px 16px !important;
  }
  .nc-tib-container {
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 10px !important;
  }
  .nc-tib-item {
    padding: 8px 12px !important;
  }
}
@media (max-width: 480px) {
  .nc-tib-container {
    grid-template-columns: 1fr !important;
  }
}

/* Standout-Button für "Was uns wichtig ist" */
.nc-mega-wichtig-btn {
  display: flex !important;
  align-items: center;
  justify-content: space-between;
  margin-top: 18px;
  padding: 12px 16px;
  background: linear-gradient(135deg, rgba(45, 212, 191, 0.08) 0%, rgba(10, 38, 71, 0.03) 100%);
  border: 1.5px solid rgba(45, 212, 191, 0.45);
  border-radius: 12px;
  text-decoration: none !important;
  color: var(--nc-navy) !important;
  font-family: 'Plus Jakarta Sans', -apple-system, BlinkMacSystemFont, sans-serif;
  position: relative;
  overflow: hidden;
  opacity: 0;
  transform: translateY(8px);
  transition: all 0.3s cubic-bezier(0.25, 0.8, 0.25, 1), opacity 0.3s ease, transform 0.3s ease;
  box-shadow: 0 4px 15px rgba(45, 212, 191, 0.08), 0 2px 4px rgba(10, 38, 71, 0.02);
  cursor: pointer;
}

.nc-mega-wichtig-btn.nc-anim-in {
  opacity: 1;
  transform: translateY(0);
}

.nc-mega-wichtig-btn:hover {
  background: linear-gradient(135deg, var(--nc-navy) 0%, var(--nc-navy-mid) 100%);
  border-color: var(--nc-teal);
  color: var(--nc-white) !important;
  transform: translateY(-2px);
  box-shadow: 0 12px 28px rgba(10, 38, 71, 0.25), 0 0 20px rgba(45, 212, 191, 0.35);
}

.nc-wichtig-icon-wrap {
  width: 32px;
  height: 32px;
  border-radius: 8px;
  background: rgba(45, 212, 191, 0.16);
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.3s ease;
  color: var(--nc-teal-dark);
  flex-shrink: 0;
}

.nc-mega-wichtig-btn:hover .nc-wichtig-icon-wrap {
  background: rgba(45, 212, 191, 0.2);
  color: var(--nc-teal);
  transform: scale(1.08) rotate(-5deg);
}

.nc-mega-wichtig-btn .btn-text-wrap {
  display: flex;
  flex-direction: column;
  gap: 1px;
  flex-grow: 1;
  margin-left: 12px;
  text-align: left;
}

.nc-mega-wichtig-btn .btn-title {
  font-size: 13px;
  font-weight: 800;
  transition: color 0.3s ease;
}

.nc-mega-wichtig-btn:hover .btn-title {
  color: var(--nc-white);
}

.nc-mega-wichtig-btn .btn-subtitle {
  font-size: 9px;
  color: var(--nc-teal-dark);
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  transition: color 0.3s ease;
}

.nc-mega-wichtig-btn:hover .btn-subtitle {
  color: var(--nc-teal);
}

.nc-mega-wichtig-btn .btn-arrow {
  font-size: 15px;
  color: var(--nc-teal-dark);
  font-weight: 800;
  transition: all 0.3s ease;
}

.nc-mega-wichtig-btn:hover .btn-arrow {
  transform: translateX(5px) scale(1.15);
  color: var(--nc-teal);
}

.nc-mega-wichtig-btn::before {
  content: '';
  position: absolute;
  top: 0;
  left: -150%;
  width: 100%;
  height: 100%;
  background: linear-gradient(
    90deg,
    transparent,
    rgba(255, 255, 255, 0.15),
    transparent
  );
  transition: all 0.6s ease;
}

.nc-mega-wichtig-btn:hover::before {
  left: 150%;
}

/* Was uns wichtig ist – Mobile Menü Touch-Fix */
.menu-item a[href*="was-uns-wichtig-ist"],
.mobile-navigation a[href*="was-uns-wichtig-ist"],
nav a[href*="was-uns-wichtig-ist"] {
  pointer-events: auto !important;
  touch-action: manipulation !important;
  -webkit-tap-highlight-color: rgba(0,143,143,0.12) !important;
  cursor: pointer !important;
}

/* Weitere Spezialdienste - Tag Links */
.nc-footer-tag-link {
  display: inline-block;
  font-size: 12.5px;
  font-weight: 600;
  color: rgba(255, 255, 255, 0.65) !important;
  background: rgba(255, 255, 255, 0.03);
  border: 1px solid rgba(255, 255, 255, 0.08);
  padding: 6px 14px;
  border-radius: 8px;
  text-decoration: none !important;
  transition: all var(--nc-transition);
}
.nc-footer-tag-link:hover {
  background: var(--nc-teal-pale) !important;
  border-color: var(--nc-teal) !important;
  color: var(--nc-teal) !important;
  transform: translateY(-1px);
}
/* nc-service-pages-polish-css */
/* 1. Full-Width Premium Modernized CTA Box */
    .nc-faq-cta,
    .nc-cta-box,
    .ncb-cta-band,
    .nc-final-cta-wrap {
        width: 100% !important;
        max-width: 100% !important;
        margin: 60px 0 0 0 !important;
        padding: 56px 32px !important;
        background: linear-gradient(135deg, #10263D 0%, #1A365D 60%, #0d2238 100%) !important;
        border: 1px solid rgba(255, 255, 255, 0.12) !important;
        border-radius: 24px !important;
        box-shadow: 0 20px 50px rgba(10, 30, 50, 0.35) !important;
        box-sizing: border-box !important;
        text-align: center !important;
        position: relative !important;
        overflow: hidden !important;
    }
    
    .nc-faq-cta::before,
    .nc-cta-box::before {
        content: "" !important;
        position: absolute !important;
        top: -50% !important;
        right: -20% !important;
        width: 400px !important;
        height: 400px !important;
        background: radial-gradient(circle, rgba(72, 187, 120, 0.15) 0%, transparent 70%) !important;
        pointer-events: none !important;
    }

    .nc-faq-cta h3,
    .nc-cta-box h3 {
        color: #FFFFFF !important;
        font-size: clamp(24px, 3.2vw, 36px) !important;
        font-weight: 800 !important;
        letter-spacing: -0.02em !important;
        margin: 0 0 16px 0 !important;
        font-family: 'Plus Jakarta Sans', sans-serif !important;
    }

    .nc-faq-cta p,
    .nc-cta-box p {
        color: #E2E8F0 !important;
        font-size: 16px !important;
        max-width: 680px !important;
        margin: 0 auto 32px auto !important;
        line-height: 1.65 !important;
    }

    .nc-faq-cta-btns,
    .nc-cta-btns {
        display: inline-flex !important;
        flex-wrap: wrap !important;
        gap: 16px !important;
        justify-content: center !important;
        align-items: center !important;
    }

    .nc-faq-cta .nc-btn-main,
    .nc-cta-box .nc-btn-main {
        background: #48BB78 !important;
        color: #081422 !important;
        font-weight: 800 !important;
        font-size: 15.5px !important;
        padding: 16px 36px !important;
        border-radius: 9999px !important;
        box-shadow: 0 8px 24px rgba(72, 187, 120, 0.35) !important;
        transition: all 0.25s ease !important;
        display: inline-flex !important;
        align-items: center !important;
        gap: 10px !important;
        text-decoration: none !important;
    }

    .nc-faq-cta .nc-btn-main:hover,
    .nc-cta-box .nc-btn-main:hover {
        transform: translateY(-3px) scale(1.02) !important;
        box-shadow: 0 14px 32px rgba(72, 187, 120, 0.45) !important;
        background: #38A169 !important;
    }

    .nc-faq-cta .nc-btn-tel,
    .nc-cta-box .nc-btn-tel {
        background: rgba(255, 255, 255, 0.08) !important;
        color: #FFFFFF !important;
        font-weight: 700 !important;
        font-size: 15.5px !important;
        padding: 16px 32px !important;
        border-radius: 9999px !important;
        border: 1px solid rgba(255, 255, 255, 0.2) !important;
        backdrop-filter: blur(8px) !important;
        transition: all 0.25s ease !important;
        display: inline-flex !important;
        align-items: center !important;
        gap: 10px !important;
        text-decoration: none !important;
    }

    .nc-faq-cta .nc-btn-tel:hover,
    .nc-cta-box .nc-btn-tel:hover {
        background: rgba(255, 255, 255, 0.15) !important;
        border-color: #48BB78 !important;
        color: #48BB78 !important;
    }

    /* 2. Kompakteres, moderneres FAQ Accordion */
    #nc-srv-faq,
    .nc-faq-section,
    .nc-faq-container {
        padding: 70px 24px !important;
    }

    .nc-faq-list {
        max-width: 960px !important;
        margin: 32px auto 0 auto !important;
        display: flex !important;
        flex-direction: column !important;
        gap: 12px !important;
    }

    .nc-faq-item {
        background: #FFFFFF !important;
        border: 1px solid #E2E8F0 !important;
        border-radius: 14px !important;
        overflow: hidden !important;
        transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1) !important;
        box-shadow: 0 2px 6px rgba(0, 0, 0, 0.02) !important;
    }

    .nc-faq-item.open,
    .nc-faq-item:hover {
        border-color: #CBD5E1 !important;
        box-shadow: 0 6px 18px rgba(26, 54, 93, 0.06) !important;
    }

    .nc-faq-item.open {
        border-color: rgba(72, 187, 120, 0.4) !important;
    }

    .nc-faq-question {
        padding: 18px 24px !important;
        font-size: 16px !important;
        font-weight: 700 !important;
        color: #1A365D !important;
        display: flex !important;
        justify-content: space-between !important;
        align-items: center !important;
        width: 100% !important;
        background: transparent !important;
        border: none !important;
        cursor: pointer !important;
        text-align: left !important;
        line-height: 1.4 !important;
    }

    .nc-faq-answer {
        padding: 0 24px 18px 24px !important;
        color: #475569 !important;
        font-size: 15px !important;
        line-height: 1.65 !important;
    }

    .nc-faq-chevron {
        width: 20px !important;
        height: 20px !important;
        color: #48BB78 !important;
        transition: transform 0.3s cubic-bezier(0.16, 1, 0.3, 1) !important;
        flex-shrink: 0 !important;
        margin-left: 16px !important;
    }

    .nc-faq-item.open .nc-faq-chevron {
        transform: rotate(180deg) !important;
    }
/* nc-master-design-system-v9 */
/* ================================================================
   GLOBAL OVERRIDE v2: SQUARE CORNERS (TARGETED) + CONTRAST SAFE
   ================================================================ */

/* Square corners — only on NC component classes, NOT globally */
.ncb-card, .nc-bento-card, .nc-freq-card, .nc-pricing-card,
.nc-lh-card, .nc-asp-bezel-card, .nc-rd-card, .nc-service-card,
.nc-feature-card, .nc-district-card, .ncx-reveal, .ncb-card-icon,
.nc-form-container, .nc-post-cta-card, .nc-post-eeat-box,
.nc-hero-container, .nc-trust-insurance-bar,
.nc-qw-wizard, .nc-qw-step-card, .nc-qw-option-btn,
.nc-qw-estimate-box, .nc-estimate-box,
.nc-hero-badge, .nc-btn-accent, .nc-btn-phone,
.kb-btn, .button, input[type="submit"], input[type="button"], button,
.wp-block-button .wp-block-button__link,
.ncb-sec-badge, .nc-badge, .nc-tag {
  border-radius: 0 !important;
}

/* Hero: ensure flat bottom */
.nc-hero-container {
  border-radius: 0 !important;
}

/* Remove gray stripe sections (only the specific NC system ones) */
.ncb-system-section,
section.ncb-system-section {
  border-top: none !important;
  border-bottom: none !important;
  background: #FFFFFF !important;
}

/* Trust Insurance Bar — white bg, centered, clean */
.nc-trust-insurance-bar {
  background: #FFFFFF !important;
  border-top: 2px solid #E2E8F0 !important;
  border-bottom: 2px solid #E2E8F0 !important;
  padding: 0 !important;
  margin: 0 !important;
  display: block !important;
}
.nc-tib-container {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 48px !important;
  max-width: 1200px !important;
  margin: 0 auto !important;
  padding: 20px 24px !important;
  flex-wrap: wrap !important;
}
.nc-tib-item {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  color: #1A365D !important;
  white-space: nowrap !important;
}
.nc-tib-icon {
  color: #10B981 !important;
  flex-shrink: 0 !important;
}
.nc-tib-text {
  color: #1A365D !important;
  font-weight: 700 !important;
}

/* Remove footer wave SVG */
.nc-footer-wave {
  display: none !important;
}

/* Fix angebot dark card text contrast */
.nc-qw-estimate-box,
.nc-estimate-box {
  background: #0A192F !important;
}
.nc-qw-estimate-stat,
.nc-estimate-stat,
.nc-estimate-stat-val,
.nc-estimate-stat-label {
  color: #FFFFFF !important;
  opacity: 1 !important;
}
.nc-qw-estimate-stat h3,
.nc-qw-estimate-stat p,
.nc-estimate-stat h3,
.nc-estimate-stat p {
  color: #FFFFFF !important;
  opacity: 1 !important;
}

/* Dark section heading contrast — ensure white text on dark navy sections */
[style*="background: #0B192C"] h1,
[style*="background: #0B192C"] h2,
[style*="background: #0B192C"] h3,
[style*="background: #1A365D"] h1,
[style*="background: #1A365D"] h2,
[style*="background: #1A365D"] h3,
[style*="background: linear-gradient"] h1,
[style*="background: linear-gradient"] h2,
[style*="background: linear-gradient"] h3 {
  color: #FFFFFF !important;
}

/* Specifically fix .nc-ueber-uns sections and similar dark sections */
.nc-dark-section h1,
.nc-dark-section h2,
.nc-dark-section h3,
.nc-dark-section p {
  color: #FFFFFF !important;
}

/* Contact/address box inside dark sections - ensure visible */
[style*="background: #"] a,
[style*="background: rgb(11"] a,
[style*="background: rgb(26"] a {
  color: #34D399 !important;
}

/* Wizard option buttons - high contrast */
.nc-qw-option-btn {
  border: 2px solid #CBD5E1 !important;
  color: #0B192C !important;
  background: #FFFFFF !important;
}
.nc-qw-option-btn.active,
.nc-qw-option-btn[data-selected="true"] {
  border-color: #10B981 !important;
  background: #F0FDF4 !important;
  color: #064E3B !important;
}

@media (max-width: 768px) {
  .nc-tib-container {
    gap: 16px !important;
    justify-content: flex-start !important;
  }
}


/* ================================================================
   NC MOTION SYSTEM v1 - Emil Kowalski Principles
   GPU-only: transform + opacity. Never height/width/margin.
   ================================================================ */
:root {
  --ease-out:    cubic-bezier(0.23, 1, 0.32, 1);
  --ease-in-out: cubic-bezier(0.77, 0, 0.175, 1);
  --ease-drawer: cubic-bezier(0.32, 0.72, 0, 1);
  --ease-spring: cubic-bezier(0.34, 1.56, 0.64, 1);
  --dur-fast:   160ms;
  --dur-normal: 220ms;
  --dur-slow:   380ms;
  --dur-reveal: 560ms;
}
@media (hover: hover) and (pointer: fine) {
  .kb-btn, button, .wp-block-button__link, .nc-btn-accent, .nc-qw-submit-btn {
    transition: transform var(--dur-fast) var(--ease-out), box-shadow var(--dur-fast) var(--ease-out), background-color var(--dur-fast) var(--ease-out);
  }
}
.kb-btn:active, button:active, .wp-block-button__link:active, .nc-btn-accent:active, .nc-qw-submit-btn:active { transform: scale(0.97) !important; }
.nc-reveal { opacity: 0; transform: translateY(14px); transition: opacity var(--dur-reveal) var(--ease-out), transform var(--dur-reveal) var(--ease-out); will-change: opacity, transform; }
.nc-reveal.is-visible { opacity: 1; transform: translateY(0); }
.nc-reveal-left { opacity: 0; transform: translateX(-20px); transition: opacity var(--dur-reveal) var(--ease-out), transform var(--dur-reveal) var(--ease-out); }
.nc-reveal-left.is-visible { opacity: 1; transform: translateX(0); }
.nc-stagger .nc-reveal:nth-child(1) { transition-delay: 0ms; }
.nc-stagger .nc-reveal:nth-child(2) { transition-delay: 55ms; }
.nc-stagger .nc-reveal:nth-child(3) { transition-delay: 110ms; }
.nc-stagger .nc-reveal:nth-child(4) { transition-delay: 165ms; }
.nc-stagger .nc-reveal:nth-child(5) { transition-delay: 220ms; }
.nc-stagger .nc-reveal:nth-child(6) { transition-delay: 275ms; }
.nc-underline-reveal { position: relative; display: inline; }
.nc-underline-reveal::after { content: ''; position: absolute; bottom: -3px; left: 0; width: 100%; height: 3px; background: #10B981; clip-path: inset(0 100% 0 0); transition: clip-path 0.65s var(--ease-out) 0.25s; }
.nc-underline-reveal.is-visible::after { clip-path: inset(0 0% 0 0); }
.ncb-card, .nc-bento-card, .nc-freq-card, .nc-pricing-card, .nc-service-card, .nc-feature-card, .nc-lh-card, .nc-district-card { transition: transform var(--dur-normal) var(--ease-out), box-shadow var(--dur-normal) var(--ease-out), border-color var(--dur-fast) var(--ease-out); will-change: transform; }
@media (hover: hover) and (pointer: fine) {
  .ncb-card:hover, .nc-bento-card:hover, .nc-freq-card:hover, .nc-service-card:hover, .nc-feature-card:hover, .nc-lh-card:hover, .nc-district-card:hover, .nc-pricing-card:hover { transform: translateY(-4px); box-shadow: 0 20px 40px rgba(15,23,42,0.10) !important; border-color: #CBD5E1 !important; }
}
.ncb-card-icon, .nc-service-icon, .nc-feature-icon { transition: transform var(--dur-normal) var(--ease-spring); }
@media (hover: hover) and (pointer: fine) { .ncb-card:hover .ncb-card-icon, .nc-service-card:hover .nc-service-icon { transform: rotate(10deg) scale(1.1); } }
@keyframes nc-pulse { 0%, 85%, 100% { box-shadow: 0 0 0 0 rgba(16,185,129,0.4); } 70% { box-shadow: 0 0 0 14px rgba(16,185,129,0); } }
.nc-cta-primary { animation: nc-pulse 4s ease-out infinite; }
@keyframes nc-slide-up { from { opacity:0; transform:translateY(8px); } to { opacity:1; transform:translateY(0); } }
.nc-tib-item { animation: nc-slide-up 0.45s var(--ease-out) both; }
.nc-tib-item:nth-child(1) { animation-delay: 0.08s; }
.nc-tib-item:nth-child(2) { animation-delay: 0.14s; }
.nc-tib-item:nth-child(3) { animation-delay: 0.20s; }
.nc-tib-item:nth-child(4) { animation-delay: 0.26s; }
.nc-tib-item:nth-child(5) { animation-delay: 0.32s; }
.site-header, #masthead, .kb-theme-header { transition: background-color var(--dur-normal) var(--ease-out), box-shadow var(--dur-normal) var(--ease-out); }
.site-header.nc-scrolled, #masthead.nc-scrolled, .kb-theme-header.nc-scrolled { background-color: rgba(255,255,255,0.92) !important; backdrop-filter: blur(20px) saturate(180%); -webkit-backdrop-filter: blur(20px) saturate(180%); box-shadow: 0 1px 0 rgba(15,23,42,0.08) !important; }
@media (hover: hover) and (pointer: fine) {
  .main-navigation a, .kb-nav--link, .kb-navigation-link { position: relative; }
  .main-navigation a::after, .kb-nav--link::after, .kb-navigation-link::after { content: ''; position: absolute; bottom: -2px; left: 0; width: 100%; height: 2px; background: #10B981; clip-path: inset(0 100% 0 0); transition: clip-path 0.2s var(--ease-out); }
  .main-navigation a:hover::after, .kb-nav--link:hover::after, .kb-navigation-link:hover::after { clip-path: inset(0 0% 0 0); }
}
.nc-faq-body { display: grid; grid-template-rows: 0fr; transition: grid-template-rows var(--dur-slow) var(--ease-out); overflow: hidden; }
.nc-faq-body > div { min-height: 0; }
.nc-faq-item.is-open .nc-faq-body { grid-template-rows: 1fr; }
.nc-faq-trigger { cursor: pointer; display: flex; align-items: center; justify-content: space-between; padding: 16px 0; border-bottom: 1px solid #E2E8F0; font-weight: 700; color: #1A365D; }
.nc-faq-trigger::after { content: '+'; font-size: 22px; font-weight: 300; color: #10B981; transition: transform var(--dur-normal) var(--ease-spring); flex-shrink: 0; }
.nc-faq-item.is-open .nc-faq-trigger::after { transform: rotate(45deg); }
@media (hover: hover) and (pointer: fine) {
  .nc-district-pill, .nc-bezirk-pill { transition: background-color var(--dur-fast) var(--ease-out), color var(--dur-fast) var(--ease-out), transform var(--dur-fast) var(--ease-out); }
  .nc-district-pill:hover, .nc-bezirk-pill:hover { background-color: #10B981 !important; color: #fff !important; transform: translateY(-1px); }
}
.nc-team-card img { transition: filter var(--dur-normal) var(--ease-out); filter: grayscale(0.25); }
@media (hover: hover) and (pointer: fine) { .nc-team-card:hover img { filter: grayscale(0); } }
@media (prefers-reduced-motion: reduce) {
  .nc-reveal, .nc-reveal-left { opacity: 1; transform: none; transition: none; }
  .nc-underline-reveal::after { clip-path: inset(0 0% 0 0); transition: none; }
  .nc-tib-item { animation: none; opacity: 1; }
  .nc-cta-primary { animation: none; }
  .ncb-card:hover, .nc-service-card:hover, .nc-feature-card:hover { transform: none; }
  button:active, .kb-btn:active { transform: none !important; }
}
/* nc-mobile-header-fixes-v3 */
/* ── Fix Mobile Header ── */
@media (max-width: 1024px) {
  /* Ensure logo is visible */
  .site-branding .site-title,
  .site-branding img,
  .custom-logo {
    width: auto !important;
    max-width: 180px !important;
    min-width: 120px !important;
    height: auto !important;
    display: block !important;
  }
  .site-branding .site-title a,
  .site-branding a {
    display: flex !important;
    align-items: center !important;
  }

  /* Fix hamburger menu position */
  .menu-toggle-open,
  .kadence-menu-toggle-open,
  .mobile-toggle-open,
  .mobile-navigation-toggle,
  [class*="menu-toggle"] {
    position: relative !important;
    left: auto !important;
    right: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
  }

  /* Header row layout fix */
  .site-header-row-container-inner,
  .site-header-inner-wrap {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    width: 100% !important;
    padding: 0 16px !important;
  }

  /* Mobile header background */
  .site-header {
    background: #1A365D !important;
  }

  /* Kadence-specific mobile header fix */
  .kadence-header-wrap .site-header-row .site-header-row-container-inner {
    max-width: 100% !important;
  }

  /* Mobile nav drawer */
  .mobile-navigation,
  .kadence-mobile-navigation {
    background: #1A365D !important;
  }
  .mobile-navigation a,
  .kadence-mobile-navigation a {
    color: #fff !important;
    font-weight: 700 !important;
    padding: 12px 20px !important;
    border-bottom: 1px solid rgba(255,255,255,.06) !important;
  }
  .mobile-navigation a:hover,
  .kadence-mobile-navigation a:hover {
    color: #48BB78 !important;
  }
}

/* ── Hide Kadence default scroll-to-top (keep ours) ── */
#kt-scroll-up,
.kadence-scroll-to-top,
.scroll-up-wrap,
[id*="scroll-up"]:not(#nc-scroll-top) {
  display: none !important;
}

/* ── Footer hero collision fix ── */
.nc-footer-cta {
  margin-top: 0 !important;
}
.nc-footer {
  padding-top: 40px;
}

/* ── Trust Bar mobile fix ── */
@media (max-width: 767px) {
  .nc-trust-bar {
    flex-direction: column !important;
    gap: 12px !important;
    text-align: center !important;
  }
  /* CTA button spacing */
  .nc-footer-cta-btn {
    width: 100% !important;
    justify-content: center !important;
    padding: 16px 24px !important;
  }
}
/* nc-mobile-hotfix-v4 */
/* Mobile Header: Navy BG + white text/icons */
@media (max-width: 1024px) {
  .site-header,
  .site-header-wrap,
  .site-header .site-header-row,
  .site-header .site-header-row-container-inner {
    background: #1A365D !important;
  }
  .site-header .site-branding .site-title {
    color: #fff !important;
    font-size: 20px !important;
    font-weight: 900 !important;
    display: block !important;
    visibility: visible !important;
  }
  .site-header .site-branding .site-title a {
    color: #fff !important;
  }
  /* Hamburger icon white */
  .menu-toggle-open,
  .kadence-menu-toggle-open,
  [class*="menu-toggle"] {
    color: #fff !important;
  }
  .menu-toggle-open .menu-toggle-icon,
  .menu-toggle-open svg,
  [class*="menu-toggle"] svg {
    color: #fff !important;
    fill: #fff !important;
    stroke: #fff !important;
  }
  /* Phone header widget */
  .header-mobile-html,
  .header-mobile-html a {
    color: #fff !important;
  }
}

/* Footer CTA: prevent overflow on mobile */
.nc-footer-cta {
  max-width: 1200px !important;
  box-sizing: border-box !important;
}
@media (max-width: 767px) {
  .nc-footer {
    padding-top: 20px !important;
  }
  .nc-footer-cta {
    margin: 0 12px !important;
    max-width: calc(100% - 24px) !important;
    padding: 28px 20px !important;
    flex-direction: column !important;
    text-align: center !important;
    border-radius: 1.5rem !important;
    gap: 20px !important;
  }
  .nc-footer-cta-btn {
    width: 100% !important;
    justify-content: center !important;
    box-sizing: border-box !important;
  }
  .nc-footer-grid {
    padding: 40px 20px 24px !important;
  }
  .nc-footer-districts {
    padding: 0 20px 24px !important;
  }
  .nc-footer-bottom {
    padding: 20px !important;
  }
}
/* nc-leistung-motion */
/* Service page sticky CTA */
.nc-sticky-cta {
  position: sticky;
  top: 100px;
}

/* Pricing table row hover */
.nc-price-row {
  transition: background 0.15s cubic-bezier(0.23,1,0.32,1),
              border-left-color 0.15s cubic-bezier(0.23,1,0.32,1);
  border-left: 3px solid transparent;
}
.nc-price-row:hover {
  background: #F0FDF4 !important;
  border-left-color: #10B981 !important;
}

/* Review stars animation */
@keyframes nc-star-pop {
  0%   { transform: scale(0.5); opacity: 0; }
  60%  { transform: scale(1.2); }
  100% { transform: scale(1);   opacity: 1; }
}
.nc-review-star {
  animation: nc-star-pop 0.35s cubic-bezier(0.34,1.56,0.64,1) both;
}
.nc-review-star:nth-child(1) { animation-delay: 0ms; }
.nc-review-star:nth-child(2) { animation-delay: 60ms; }
.nc-review-star:nth-child(3) { animation-delay: 120ms; }
.nc-review-star:nth-child(4) { animation-delay: 180ms; }
.nc-review-star:nth-child(5) { animation-delay: 240ms; }

/* Checklist items stagger */
.nc-check-list li {
  opacity: 0;
  transform: translateX(-12px);
  transition: opacity 0.4s cubic-bezier(0.23,1,0.32,1),
              transform 0.4s cubic-bezier(0.23,1,0.32,1);
}
.nc-check-list.is-visible li { opacity: 1; transform: translateX(0); }
.nc-check-list.is-visible li:nth-child(1) { transition-delay: 0ms; }
.nc-check-list.is-visible li:nth-child(2) { transition-delay: 60ms; }
.nc-check-list.is-visible li:nth-child(3) { transition-delay: 120ms; }
.nc-check-list.is-visible li:nth-child(4) { transition-delay: 180ms; }
.nc-check-list.is-visible li:nth-child(5) { transition-delay: 240ms; }
.nc-check-list.is-visible li:nth-child(6) { transition-delay: 300ms; }
.nc-check-list.is-visible li:nth-child(7) { transition-delay: 360ms; }
.nc-check-list.is-visible li:nth-child(8) { transition-delay: 420ms; }
/* nc-district-alternating-schema */
/* ==========================================================================
   NOBLECLEAN 25 DISTRICT PAGES ALTERNATING LIGHT / DARK SCHEMA
   ========================================================================== */

/* 1. DISTRICT HERO -> DARK OBSIDIAN */
.nc-glass-hero {
  border-radius: 0 !important;
}
.nc-glass-badge-card {
  border-radius: 0 !important;
}

/* 2. DISTRICT SERVICES BENTO GRID -> LIGHT (Crisp White #FFFFFF) */
.ncb-sec {
  background: #FFFFFF !important;
  border-top: 1px solid #E2E8F0 !important;
  border-bottom: 1px solid #E2E8F0 !important;
  padding: 85px 20px !important;
}
.nc-service-bento-grid {
  border-radius: 0 !important;
}
.nc-service-bento-grid a {
  border-radius: 0 !important;
  background: #F8FAFC !important;
  border: 1px solid #E2E8F0 !important;
  box-shadow: 0 4px 16px rgba(15,23,42,0.03) !important;
  transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease !important;
}
.nc-service-bento-grid a:hover {
  transform: translateY(-4px) !important;
  box-shadow: 0 16px 36px rgba(15,23,42,0.08) !important;
  border-color: #CBD5E1 !important;
}
.nc-service-bento-grid h3 {
  color: #0F172A !important;
}
.nc-service-bento-grid p {
  color: #475569 !important;
}

/* 3. DISTRICT PORTRAIT & LOCAL HOTSPOTS -> DARK (Deep Slate Navy #0B192C) */
.ncb-portrait {
  background: #0B192C !important;
  border-top: 1px solid rgba(255,255,255,0.08) !important;
  border-bottom: 1px solid rgba(255,255,255,0.08) !important;
  color: #FFFFFF !important;
  padding: 90px 20px !important;
}
.ncb-portrait h2, .ncb-portrait h3, .ncb-portrait h4 {
  color: #FFFFFF !important;
}
.ncb-portrait p {
  color: #CBD5E1 !important;
}
.ncb-eyebrow {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  background: rgba(16,185,129,0.14) !important;
  border: 1px solid rgba(52,211,153,0.35) !important;
  color: #34D399 !important;
  font-size: 12px !important;
  font-weight: 800 !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
  padding: 6px 14px !important;
  border-radius: 0 !important;
  margin-bottom: 16px !important;
}
.ncb-hotspot-pill {
  background: rgba(255, 255, 255, 0.06) !important;
  border: 1px solid rgba(255, 255, 255, 0.15) !important;
  color: #F8FAFC !important;
  border-radius: 0 !important;
  font-weight: 700 !important;
  font-size: 13.5px !important;
  padding: 8px 16px !important;
  transition: all 0.2s ease !important;
}
.ncb-hotspot-pill:hover {
  background: #10B981 !important;
  color: #081422 !important;
  border-color: #10B981 !important;
}
.ncb-port-card {
  background: rgba(255, 255, 255, 0.04) !important;
  border: 1px solid rgba(255, 255, 255, 0.12) !important;
  border-radius: 0 !important;
  color: #FFFFFF !important;
  padding: 32px 28px !important;
}
.ncb-port-card h4 {
  color: #FFFFFF !important;
}
.ncb-port-card p {
  color: #CBD5E1 !important;
}

/* 4. DISTRICT FACTS & NUMBERS -> LIGHT (Slate Clean #F8FAFC) */
.ncb-facts {
  background: #F8FAFC !important;
  border-top: 1px solid #E2E8F0 !important;
  border-bottom: 1px solid #E2E8F0 !important;
  color: #1E293B !important;
  padding: 85px 20px !important;
}
.ncb-facts h2, .ncb-facts h3 {
  color: #0F172A !important;
}
.ncb-facts p {
  color: #334155 !important;
}

/* 5. DISTRICT BEDARF -> DARK (Obsidian Blue #07121E) */
.ncb-bedarf {
  background: #07121E !important;
  border-top: 1px solid rgba(255,255,255,0.08) !important;
  border-bottom: 1px solid rgba(255,255,255,0.08) !important;
  color: #FFFFFF !important;
  padding: 90px 20px !important;
}
.ncb-bedarf h2, .ncb-bedarf h3 {
  color: #FFFFFF !important;
}
.ncb-bedarf p, .ncb-bedarf-fuss {
  color: #CBD5E1 !important;
}
.ncb-bedarf-karte {
  background: rgba(255, 255, 255, 0.04) !important;
  border: 1px solid rgba(255, 255, 255, 0.12) !important;
  border-radius: 0 !important;
  padding: 26px !important;
  transition: transform 0.25s ease, border-color 0.25s ease !important;
}
.ncb-bedarf-karte:hover {
  transform: translateY(-4px) !important;
  border-color: rgba(52, 211, 153, 0.4) !important;
}
.ncb-bedarf-karte h3 {
  color: #FFFFFF !important;
}
.ncb-bedarf-karte p {
  color: #CBD5E1 !important;
}
.ncb-bedarf-karte .ncb-bedarf-folge {
  color: #34D399 !important;
  font-weight: 800 !important;
}

/* 6. DISTRICT FAQ -> LIGHT (Crisp White #FFFFFF) */
.ncb-faq {
  background: #FFFFFF !important;
  border-top: 1px solid #E2E8F0 !important;
  border-bottom: 1px solid #E2E8F0 !important;
  color: #1E293B !important;
  padding: 85px 20px !important;
}
.ncb-faq h2, .ncb-faq h3 {
  color: #0F172A !important;
}
.ncb-faq-item {
  background: #F8FAFC !important;
  border: 1px solid #E2E8F0 !important;
  border-radius: 0 !important;
  padding: 22px 26px !important;
}
.ncb-faq-item h3 {
  color: #0F172A !important;
}
.ncb-faq-item p {
  color: #475569 !important;
}

/* 7. DISTRICT BAND / CTA -> DARK (Deep Slate Navy #0B192C) */
.ncb-band {
  background: linear-gradient(135deg, #0B192C 0%, #07121E 100%) !important;
  border-top: 1px solid rgba(255,255,255,0.08) !important;
  color: #FFFFFF !important;
  padding: 80px 20px !important;
  border-radius: 0 !important;
}
.ncb-band h2, .ncb-band h3 { color: #FFFFFF !important; }
.ncb-band p { color: #E2E8F0 !important; }
/* nc-hero-premium-polish-css */
/* ─── HERO BACKGROUND & CONTAINER ─── */
    .nc-hero-parallax-bg {
        min-height: calc(100vh - 90px) !important;
        padding-top: 100px !important;
        padding-bottom: 90px !important;
        display: flex !important;
        align-items: center !important;
        background: linear-gradient(135deg, #09192C 0%, #10263D 50%, #1A365D 100%) !important;
        position: relative !important;
        overflow: hidden !important;
    }

    /* Ambient Glow & Grid Pattern im Hintergrund */
    .nc-hero-parallax-bg::after {
        content: "" !important;
        position: absolute !important;
        top: 20% !important;
        left: -10% !important;
        width: 600px !important;
        height: 600px !important;
        background: radial-gradient(circle, rgba(72, 187, 120, 0.12) 0%, transparent 70%) !important;
        pointer-events: none !important;
        z-index: 1 !important;
    }

    .nc-hero-background-media {
        opacity: 0.38 !important;
        mix-blend-mode: luminosity !important;
    }

    /* ─── HERO COLUMNS & SPACING ─── */
    .nc-hero-cols {
        display: grid !important;
        grid-template-columns: 1.25fr 0.75fr !important;
        gap: 56px !important;
        align-items: center !important;
        max-width: 1240px !important;
        margin: 0 auto !important;
        position: relative !important;
        z-index: 5 !important;
        width: 100% !important;
        box-sizing: border-box !important;
    }

    /* ─── TYPOGRAFIE & HEADLINE ─── */
    .nc-hero-col-left h1 {
        font-family: 'Plus Jakarta Sans', sans-serif !important;
        font-size: clamp(34px, 4.4vw, 58px) !important;
        font-weight: 800 !important;
        line-height: 1.14 !important;
        letter-spacing: -0.03em !important;
        color: #FFFFFF !important;
        margin: 0 0 24px 0 !important;
        text-shadow: 0 2px 20px rgba(0,0,0,0.4) !important;
    }

    .nc-hero-col-left h1 span {
        color: #48BB78 !important;
        background: linear-gradient(135deg, #48BB78 0%, #38A169 100%) !important;
        -webkit-background-clip: text !important;
        -webkit-text-fill-color: transparent !important;
        display: inline-block !important;
    }

    .nc-hero-col-left p.sub {
        font-size: clamp(16px, 1.6vw, 18.5px) !important;
        line-height: 1.65 !important;
        color: #E2E8F0 !important;
        margin: 0 0 36px 0 !important;
        max-width: 620px !important;
        text-shadow: 0 1px 8px rgba(0,0,0,0.3) !important;
    }

    /* ─── BADGES & TRUST PILLS ─── */
    .nc-hero-col-left p[style*="display:inline-flex"],
    .nc-hero-eyebrow {
        background: rgba(255, 255, 255, 0.08) !important;
        border: 1px solid rgba(255, 255, 255, 0.2) !important;
        backdrop-filter: blur(12px) !important;
        -webkit-backdrop-filter: blur(12px) !important;
        color: #48BB78 !important;
        padding: 8px 20px !important;
        border-radius: 9999px !important;
        font-size: 13px !important;
        font-weight: 800 !important;
        letter-spacing: 0.08em !important;
        margin-bottom: 24px !important;
        box-shadow: 0 4px 16px rgba(0,0,0,0.2) !important;
    }

    /* ─── CTA BUTTONS ─── */
    .nc-hero-btn-primary {
        display: inline-flex !important;
        align-items: center !important;
        gap: 12px !important;
        background: linear-gradient(135deg, #48BB78 0%, #38A169 100%) !important;
        color: #081422 !important;
        font-weight: 800 !important;
        font-size: 16px !important;
        padding: 18px 38px !important;
        border-radius: 9999px !important;
        text-decoration: none !important;
        box-shadow: 0 10px 30px rgba(72, 187, 120, 0.4), inset 0 1px 0 rgba(255, 255, 255, 0.4) !important;
        transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1) !important;
        position: relative !important;
        overflow: hidden !important;
    }

    .nc-hero-btn-primary:hover {
        transform: translateY(-3px) scale(1.02) !important;
        box-shadow: 0 16px 40px rgba(72, 187, 120, 0.55), 0 0 0 2px rgba(72, 187, 120, 0.35) !important;
        background: linear-gradient(135deg, #58D68D 0%, #48BB78 100%) !important;
        color: #081422 !important;
    }

    /* ─── TRUST-PILLS UNTER DEM BUTTON ─── */
    .nc-hero-trust-pills {
        display: flex !important;
        flex-wrap: wrap !important;
        gap: 22px !important;
        margin-top: 32px !important;
        font-size: 13.5px !important;
        color: #CBD5E1 !important;
    }

    .nc-hero-trust-pills span {
        display: inline-flex !important;
        align-items: center !important;
        gap: 8px !important;
        font-weight: 600 !important;
    }

    /* ─── RIGHT GLASS TRUST CARD ─── */
    .nc-hero-col-right > div {
        background: rgba(16, 38, 61, 0.82) !important;
        border: 1.5px solid rgba(255, 255, 255, 0.18) !important;
        border-radius: 28px !important;
        padding: 38px 32px !important;
        backdrop-filter: blur(20px) !important;
        -webkit-backdrop-filter: blur(20px) !important;
        box-shadow: 0 30px 70px rgba(0, 0, 0, 0.5), inset 0 1px 0 rgba(255, 255, 255, 0.2) !important;
        max-width: 360px !important;
        width: 100% !important;
        box-sizing: border-box !important;
        transition: transform 0.35s ease, box-shadow 0.35s ease !important;
    }

    .nc-hero-col-right > div:hover {
        transform: translateY(-4px) !important;
        box-shadow: 0 36px 80px rgba(0, 0, 0, 0.6) !important;
        border-color: rgba(72, 187, 120, 0.4) !important;
    }

    /* ─── RESPONSIVE OPTIMIERUNG ─── */
    @media (max-width: 991px) {
        .nc-hero-cols {
            grid-template-columns: 1fr !important;
            gap: 48px !important;
            text-align: center !important;
        }
        .nc-hero-col-left {
            display: flex !important;
            flex-direction: column !important;
            align-items: center !important;
        }
        .nc-hero-col-left p.sub {
            margin-left: auto !important;
            margin-right: auto !important;
        }
        .nc-hero-trust-pills {
            justify-content: center !important;
        }
        .nc-hero-col-right {
            display: flex !important;
            justify-content: center !important;
            width: 100% !important;
        }
    }

    @media (max-width: 768px) {
        .nc-hero-parallax-bg {
            padding-top: 130px !important;
            padding-bottom: 60px !important;
            min-height: auto !important;
        }
        .nc-hero-col-left h1 {
            font-size: clamp(28px, 7.5vw, 40px) !important;
        }
        .nc-hero-btn-primary {
            width: 100% !important;
            justify-content: center !important;
            padding: 16px 28px !important;
        }
    }
/* nc-global-spacing-layout-master */
/* ─── 1. GLOBAL CONTAINER & SECTION HARMONY ─── */
    .nc-sec,
    .ncb-sec,
    .nc-bento-section,
    .nc-dark-section,
    .nc-pricing-section,
    .wp-block-group.alignfull:not(.nc-hero-parallax-bg) {
        padding-top: 80px !important;
        padding-bottom: 80px !important;
        box-sizing: border-box !important;
    }

    @media (max-width: 768px) {
        .nc-sec,
        .ncb-sec,
        .nc-bento-section,
        .nc-dark-section,
        .nc-pricing-section,
        .wp-block-group.alignfull:not(.nc-hero-parallax-bg) {
            padding-top: 50px !important;
            padding-bottom: 50px !important;
        }
    }

    /* ─── 2. TYPOGRAPHY & HEADLINE REPAIR ─── */
    h1, h2, h3, h4,
    .nc-srv-h1,
    .nc-pain-headline,
    .nc-bento-headline,
    .nc-seo-intro h2 {
        line-height: 1.25 !important;
        letter-spacing: -0.02em !important;
        font-family: 'Plus Jakarta Sans', sans-serif !important;
        word-break: normal !important;
        overflow-wrap: break-word !important;
    }

    h2 {
        font-size: clamp(26px, 3.2vw, 38px) !important;
        margin-top: 0 !important;
        margin-bottom: 18px !important;
    }

    h3 {
        font-size: clamp(20px, 2.4vw, 28px) !important;
        margin-top: 0 !important;
        margin-bottom: 14px !important;
    }

    /* Eyebrow & Badges Spacing */
    .nc-eyebrow,
    .nc-pain-eyebrow,
    .nc-bento-eyebrow,
    .nc-hero-pill,
    .nc-pricing-badge,
    span[style*="letter-spacing"] {
        display: inline-flex !important;
        align-items: center !important;
        margin-bottom: 14px !important;
        line-height: 1.3 !important;
    }

    /* Section Subtitles / Intros */
    .nc-seo-intro p,
    .nc-sec p.sub,
    p[style*="font-size:17px"],
    p[style*="font-size: 17px"],
    p[style*="font-size:16.5px"] {
        line-height: 1.65 !important;
        margin-bottom: 36px !important;
        max-width: 720px !important;
        margin-left: auto !important;
        margin-right: auto !important;
    }

    /* ─── 3. FOTOGALERIE / BILDER-RASTER REPAIR ─── */
    /* Verhindert verzerrte oder ungleiche Bildkollagen */
    .nc-gallery-grid,
    .nc-mosaic-grid,
    div:has(> .nc-hero-still),
    div:has(> img[src*="Nobleclean-Team"]) {
        display: grid !important;
        grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)) !important;
        gap: 20px !important;
        max-width: 1200px !important;
        margin: 30px auto !important;
    }

    .nc-gallery-grid img,
    .nc-mosaic-grid img,
    .nc-zz-img img {
        border-radius: 16px !important;
        object-fit: cover !important;
        width: 100% !important;
        height: 100% !important;
        box-shadow: 0 4px 16px rgba(0, 0, 0, 0.06) !important;
        transition: transform 0.3s ease, box-shadow 0.3s ease !important;
    }

    .nc-gallery-grid img:hover,
    .nc-mosaic-grid img:hover {
        transform: translateY(-4px) !important;
        box-shadow: 0 12px 28px rgba(0, 0, 0, 0.12) !important;
    }

    /* ─── 4. CARDS, GRIDS & BEZIRKSKARTE HARMONY ─── */
    .nc-card,
    .ncb-card,
    .nc-bento-card,
    .nc-district-card,
    .nc-data-tile,
    .nc-review-card {
        border-radius: 18px !important;
        box-sizing: border-box !important;
    }

    /* Trust-Bar & Logo Marquee */
    .nc-marquee-track-left,
    .nc-marquee-track-right,
    .nc-logo-track {
        padding: 10px 0 !important;
    }

    /* Bezirkskarte & Text-Wrap */
    .nc-district-map-wrap {
        display: flex !important;
        gap: 40px !important;
        align-items: center !important;
        max-width: 1200px !important;
        margin: 0 auto !important;
    }

    @media (max-width: 900px) {
        .nc-district-map-wrap {
            flex-direction: column !important;
        }
    }
/* nc-header-cta-and-4box-slider-css */
/* ══════════════════════════════════════════════════════════════════════════
       1. MODERNISIERTER HEADER CTA BUTTON
       ══════════════════════════════════════════════════════════════════════════ */
    .nc-btn-header-cta,
    #masthead .nc-btn-header-cta,
    .site-header a[href*="/angebot/"] {
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 8px !important;
        padding: 12px 26px !important;
        background: linear-gradient(135deg, #48BB78 0%, #38A169 100%) !important;
        color: #081422 !important;
        font-family: 'Plus Jakarta Sans', sans-serif !important;
        font-size: 14.5px !important;
        font-weight: 800 !important;
        letter-spacing: -0.01em !important;
        border-radius: 9999px !important;
        text-decoration: none !important;
        border: 1px solid rgba(255, 255, 255, 0.4) !important;
        box-shadow: 0 4px 14px rgba(72, 187, 120, 0.35), inset 0 1px 0 rgba(255, 255, 255, 0.4) !important;
        transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1) !important;
        position: relative !important;
        overflow: hidden !important;
        cursor: pointer !important;
    }

    /* Glanz / Shimmer Reflexion */
    .nc-btn-header-cta::after {
        content: "" !important;
        position: absolute !important;
        top: -50% !important;
        left: -60% !important;
        width: 40% !important;
        height: 200% !important;
        background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.4), transparent) !important;
        transform: rotate(25deg) !important;
        transition: left 0.6s ease !important;
    }

    .nc-btn-header-cta:hover::after {
        left: 130% !important;
    }

    .nc-btn-header-cta:hover {
        background: linear-gradient(135deg, #58D68D 0%, #48BB78 100%) !important;
        color: #081422 !important;
        transform: translateY(-2px) scale(1.02) !important;
        box-shadow: 0 8px 24px rgba(72, 187, 120, 0.5), 0 0 0 2px rgba(72, 187, 120, 0.3) !important;
    }

    .nc-btn-header-cta:active {
        transform: translateY(0) scale(0.98) !important;
    }

    /* ══════════════════════════════════════════════════════════════════════════
       2. 4 BOXEN NEBENEINANDER MIT SCHNELLEM HOVER-BILDERSLIDER
       ══════════════════════════════════════════════════════════════════════════ */
    div:has(> .nc-einblick-slide) {
        display: grid !important;
        grid-template-columns: repeat(4, 1fr) !important;
        gap: 20px !important;
        max-width: 1240px !important;
        margin: 32px auto 0 auto !important;
    }

    .nc-einblick-slide {
        position: relative !important;
        height: 380px !important;
        border-radius: 20px !important;
        overflow: hidden !important;
        background: #10263D !important;
        box-shadow: 0 10px 30px rgba(16, 38, 61, 0.12) !important;
        border: 1.5px solid #E2E8F0 !important;
        cursor: pointer !important;
        transition: transform 0.35s cubic-bezier(0.16, 1, 0.3, 1), box-shadow 0.35s ease, border-color 0.3s ease !important;
    }

    .nc-einblick-slide:hover {
        transform: translateY(-8px) scale(1.02) !important;
        box-shadow: 0 22px 45px rgba(26, 54, 93, 0.22) !important;
        border-color: #48BB78 !important;
    }

    /* Bild-Stapel innerhalb jeder Box */
    .nc-einblick-slide img.s {
        position: absolute !important;
        inset: 0 !important;
        width: 100% !important;
        height: 100% !important;
        object-fit: cover !important;
        opacity: 0 !important;
        transform: scale(1) !important;
        transition: opacity 0.3s ease, transform 0.4s ease !important;
        z-index: 1 !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    /* Erstes Bild standardmäßig sichtbar */
    .nc-einblick-slide img.s:first-of-type {
        opacity: 1 !important;
        z-index: 2 !important;
    }

    /* Aktives Bild beim Hover-Slide */
    .nc-einblick-slide img.s.active-slide {
        opacity: 1 !important;
        z-index: 3 !important;
        transform: scale(1.05) !important;
    }

    /* Modernes Glassmorphism Label unten */
    .nc-einblick-label {
        position: absolute !important;
        bottom: 16px !important;
        left: 16px !important;
        right: 16px !important;
        z-index: 10 !important;
        background: rgba(16, 38, 61, 0.75) !important;
        backdrop-filter: blur(12px) !important;
        -webkit-backdrop-filter: blur(12px) !important;
        border: 1px solid rgba(255, 255, 255, 0.2) !important;
        color: #FFFFFF !important;
        font-family: 'Plus Jakarta Sans', sans-serif !important;
        font-size: 14px !important;
        font-weight: 800 !important;
        letter-spacing: 0.04em !important;
        padding: 10px 18px !important;
        border-radius: 12px !important;
        text-align: center !important;
        box-shadow: 0 4px 16px rgba(0,0,0,0.3) !important;
        transition: background 0.3s ease, border-color 0.3s ease !important;
    }

    .nc-einblick-slide:hover .nc-einblick-label {
        background: rgba(72, 187, 120, 0.9) !important;
        color: #081422 !important;
        border-color: #48BB78 !important;
    }

    /* Responsive Anpassung für Tablets und Smartphones */
    @media (max-width: 1024px) {
        div:has(> .nc-einblick-slide) {
            grid-template-columns: repeat(2, 1fr) !important;
            gap: 16px !important;
        }
        .nc-einblick-slide {
            height: 320px !important;
        }
    }

    @media (max-width: 600px) {
        div:has(> .nc-einblick-slide) {
            grid-template-columns: 1fr !important;
            gap: 16px !important;
        }
        .nc-einblick-slide {
            height: 280px !important;
        }
    }
/* nc-global-alternating-schema */
/* ==========================================================================
   NOBLECLEAN GLOBAL ALTERNATING LIGHT / DARK SCHEMA (ALL PAGES)
   ========================================================================== */

/* ── 1. GLOBAL BASE & SQUARE EDGES ── */
*, *::before, *::after {
  box-sizing: border-box;
}

/* Force square corners across all components, cards, buttons, badges */
.nc-glass-hero, .ncb-hero, .nc-hero-container, .nc-about-hero,
.ncb-system-card, .ncb-turnus-card, .ncb-vs-pain, .ncb-vs-sol, .ncb-step-card,
.ncb-faq-item, .ncb-cta-banner, .nc-sector-card, .nc-leader-card, .nc-pillar-card,
.nc-timeline-card, .nc-district-pill, .nc-bezirk-pill, .ncb-bedarf-karte,
.ncb-port-card, .nc-glass-badge-card, .nc-glass-eyebrow, .nc-badge, .ncb-hero-badge,
.nc-btn-accent, .nc-glass-btn-primary, .nc-glass-btn-tel, .ncb-btn-primary, .ncb-btn-tel,
.ncb-btn-gold, .nc-btn-phone, .button, .wp-block-button__link, input, select, textarea {
  border-radius: 0 !important;
}

/* ── 2. SERVICE PAGES (ncb-*) ALTERNATING RHYTHM ── */

/* Section 1: Hero -> DARK OBSIDIAN */
.ncb-hero, .nc-glass-hero {
  background: radial-gradient(circle at 85% 15%, rgba(45, 212, 191, 0.15) 0%, transparent 45%),
              linear-gradient(135deg, #07121E 0%, #0F2338 55%, #1A365D 100%) !important;
  color: #FFFFFF !important;
  border-radius: 0 !important;
}

/* Section 2: System / Kernleistungen -> LIGHT (Crisp White) */
.ncb-system-section {
  background: #FFFFFF !important;
  border-top: 1px solid #E2E8F0 !important;
  border-bottom: 1px solid #E2E8F0 !important;
  color: #1E293B !important;
}
.ncb-system-card {
  background: #F8FAFC !important;
  border: 1px solid #E2E8F0 !important;
  color: #1E293B !important;
}
.ncb-system-card h3 {
  color: #0F172A !important;
}
.ncb-system-card p {
  color: #334155 !important;
}

/* Section 3: Turnus & Intervalle -> DARK (Deep Slate Navy) */
.ncb-turnus-section {
  background: #0B192C !important;
  border-top: 1px solid rgba(255,255,255,0.08) !important;
  border-bottom: 1px solid rgba(255,255,255,0.08) !important;
  color: #FFFFFF !important;
}
.ncb-turnus-section h2, .ncb-turnus-section h3 {
  color: #FFFFFF !important;
}
.ncb-turnus-section p, .ncb-turnus-section span:not(.ncb-turnus-badge) {
  color: #CBD5E1 !important;
}
.ncb-turnus-card {
  background: rgba(255, 255, 255, 0.04) !important;
  border: 1px solid rgba(255, 255, 255, 0.12) !important;
  color: #FFFFFF !important;
}
.ncb-turnus-card h3 {
  color: #FFFFFF !important;
}
.ncb-turnus-card p {
  color: #CBD5E1 !important;
}
.ncb-turnus-badge {
  border-radius: 0 !important;
  background: #10B981 !important;
  color: #081422 !important;
  font-weight: 800 !important;
}

/* Section 4: Vorher / Nachher & Vergleich -> LIGHT (Crisp White) */
.ncb-vs-section {
  background: #FFFFFF !important;
  border-top: 1px solid #E2E8F0 !important;
  border-bottom: 1px solid #E2E8F0 !important;
  color: #1E293B !important;
}
.ncb-vs-section h2, .ncb-vs-section h3 {
  color: #0F172A !important;
}
.ncb-vs-pain {
  background: #FFF5F5 !important;
  border: 1px solid #FECACA !important;
  color: #991B1B !important;
}
.ncb-vs-pain h3 { color: #991B1B !important; }
.ncb-vs-pain p, .ncb-vs-pain li { color: #7F1D1D !important; }
.ncb-vs-sol {
  background: #F0FDF4 !important;
  border: 1px solid #BBF7D0 !important;
  color: #166534 !important;
}
.ncb-vs-sol h3 { color: #166534 !important; }
.ncb-vs-sol p, .ncb-vs-sol li { color: #14532D !important; }

/* Section 5: Schritte / Ablauf -> LIGHT (Slate Clean) */
.ncb-step-section {
  background: #F8FAFC !important;
  border-top: 1px solid #E2E8F0 !important;
  border-bottom: 1px solid #E2E8F0 !important;
  color: #1E293B !important;
}
.ncb-step-section h2, .ncb-step-section h3 {
  color: #0F172A !important;
}
.ncb-step-section p {
  color: #334155 !important;
}
.ncb-step-card {
  background: #FFFFFF !important;
  border: 1px solid #E2E8F0 !important;
}
.ncb-step-card h3 { color: #0F172A !important; }
.ncb-step-card p { color: #475569 !important; }
.ncb-step-num {
  border-radius: 0 !important;
  background: #10B981 !important;
  color: #081422 !important;
}

/* Section 6: FAQs -> DARK (Obsidian Blue) */
.ncb-faq-section {
  background: #07121E !important;
  border-top: 1px solid rgba(255,255,255,0.08) !important;
  border-bottom: 1px solid rgba(255,255,255,0.08) !important;
  color: #FFFFFF !important;
}
.ncb-faq-section h2, .ncb-faq-section h3 {
  color: #FFFFFF !important;
}
.ncb-faq-item {
  background: rgba(255, 255, 255, 0.04) !important;
  border: 1px solid rgba(255, 255, 255, 0.12) !important;
}
.ncb-faq-q {
  color: #FFFFFF !important;
}
.ncb-faq-a, .ncb-faq-item p {
  color: #CBD5E1 !important;
}

/* Section 7: Abschluss-CTA -> LIGHT Wrapper mit DARK Banner */
.ncb-cta-section {
  background: #FFFFFF !important;
  border-top: 1px solid #E2E8F0 !important;
}
.ncb-cta-banner {
  background: linear-gradient(135deg, #0B192C 0%, #07121E 100%) !important;
  border: 1px solid rgba(45, 212, 191, 0.3) !important;
  color: #FFFFFF !important;
}
.ncb-cta-banner h2, .ncb-cta-banner h3 { color: #FFFFFF !important; }
.ncb-cta-banner p { color: #E2E8F0 !important; }

/* ── 3. DISTRICT PAGES (.ncb-district / .ncb-port / .ncb-bedarf) ALTERNATING RHYTHM ── */

/* District Hero -> DARK (Done above) */

/* District Bento Services -> LIGHT (Crisp White) */
.ncb-sec {
  background: #FFFFFF !important;
  border-top: 1px solid #E2E8F0 !important;
  border-bottom: 1px solid #E2E8F0 !important;
}
.nc-service-bento-grid .ncb-card,
.nc-service-bento-grid a {
  background: #F8FAFC !important;
  border: 1px solid #E2E8F0 !important;
}
.nc-service-bento-grid h3 {
  color: #0F172A !important;
}
.nc-service-bento-grid p {
  color: #475569 !important;
}

/* District Portrait & Hotspots -> DARK (Deep Navy #0B192C) */
.ncb-portrait {
  background: #0B192C !important;
  border-top: 1px solid rgba(255,255,255,0.08) !important;
  border-bottom: 1px solid rgba(255,255,255,0.08) !important;
  color: #FFFFFF !important;
  padding: 85px 20px !important;
}
.ncb-portrait h2, .ncb-portrait h3, .ncb-portrait h4 {
  color: #FFFFFF !important;
}
.ncb-portrait p {
  color: #CBD5E1 !important;
}
.ncb-port-card {
  background: rgba(255, 255, 255, 0.04) !important;
  border: 1px solid rgba(255, 255, 255, 0.12) !important;
  color: #FFFFFF !important;
}
.ncb-port-card h4 {
  color: #FFFFFF !important;
}
.ncb-port-card p {
  color: #CBD5E1 !important;
}
.ncb-hotspot-pill {
  background: rgba(255, 255, 255, 0.08) !important;
  border: 1px solid rgba(255, 255, 255, 0.16) !important;
  color: #F8FAFC !important;
  border-radius: 0 !important;
}

/* District Facts -> LIGHT (Crisp White #FFFFFF) */
.ncb-facts {
  background: #FFFFFF !important;
  border-top: 1px solid #E2E8F0 !important;
  border-bottom: 1px solid #E2E8F0 !important;
  color: #1E293B !important;
  padding: 80px 20px !important;
}
.ncb-facts h2, .ncb-facts h3 {
  color: #0F172A !important;
}
.ncb-facts p {
  color: #334155 !important;
}
.ncb-fact-card {
  background: #F8FAFC !important;
  border: 1px solid #E2E8F0 !important;
  border-radius: 0 !important;
}

/* District Bedarf -> DARK (Obsidian Blue #07121E) */
.ncb-bedarf {
  background: #07121E !important;
  border-top: 1px solid rgba(255,255,255,0.08) !important;
  border-bottom: 1px solid rgba(255,255,255,0.08) !important;
  color: #FFFFFF !important;
}
.ncb-bedarf h2, .ncb-bedarf h3 {
  color: #FFFFFF !important;
}
.ncb-bedarf p, .ncb-bedarf-fuss {
  color: #CBD5E1 !important;
}
.ncb-bedarf-karte {
  background: rgba(255, 255, 255, 0.04) !important;
  border: 1px solid rgba(255, 255, 255, 0.12) !important;
  border-radius: 0 !important;
}
.ncb-bedarf-karte h3 {
  color: #FFFFFF !important;
}
.ncb-bedarf-karte p {
  color: #CBD5E1 !important;
}
.ncb-bedarf-karte .ncb-bedarf-folge {
  color: #34D399 !important;
}

/* District FAQ -> LIGHT (Crisp White #FFFFFF) */
.ncb-faq {
  background: #FFFFFF !important;
  border-top: 1px solid #E2E8F0 !important;
  border-bottom: 1px solid #E2E8F0 !important;
  color: #1E293B !important;
}
.ncb-faq h2, .ncb-faq h3 {
  color: #0F172A !important;
}
.ncb-faq-item {
  background: #F8FAFC !important;
  border: 1px solid #E2E8F0 !important;
  border-radius: 0 !important;
}
.ncb-faq-item h3 {
  color: #0F172A !important;
}
.ncb-faq-item p {
  color: #475569 !important;
}

/* District Band / CTA -> DARK (Deep Navy #0B192C) */
.ncb-band {
  background: #0B192C !important;
  border-top: 1px solid rgba(255,255,255,0.08) !important;
  color: #FFFFFF !important;
  padding: 80px 20px !important;
}
.ncb-band h2, .ncb-band h3 { color: #FFFFFF !important; }
.ncb-band p { color: #E2E8F0 !important; }

/* ── 4. UEBER UNS & TRUST PAGES ALTERNATING RHYTHM ── */
.nc-about-wrap {
  background: #FFFFFF !important;
}
.nc-story-section, .nc-story-grid {
  background: #FFFFFF !important;
}
.nc-pillars-section {
  background: #0B192C !important;
  color: #FFFFFF !important;
  border-top: 1px solid rgba(255,255,255,0.08) !important;
  border-bottom: 1px solid rgba(255,255,255,0.08) !important;
}
.nc-pillars-section h2, .nc-pillars-section h3 {
  color: #FFFFFF !important;
}
.nc-pillars-section p {
  color: #CBD5E1 !important;
}
.nc-pillar-card {
  background: rgba(255, 255, 255, 0.04) !important;
  border: 1px solid rgba(255, 255, 255, 0.12) !important;
  border-radius: 0 !important;
}
.nc-pillar-card h3 {
  color: #FFFFFF !important;
}
.nc-pillar-card p {
  color: #CBD5E1 !important;
}

.nc-timeline-section {
  background: #F8FAFC !important;
  border-top: 1px solid #E2E8F0 !important;
  border-bottom: 1px solid #E2E8F0 !important;
}
.nc-timeline-card {
  background: #FFFFFF !important;
  border: 1px solid #E2E8F0 !important;
  border-radius: 0 !important;
}
.nc-timeline-card h3, .nc-timeline-card h4 {
  color: #0F172A !important;
}
.nc-timeline-card p {
  color: #475569 !important;
}

.nc-districts-section {
  background: #07121E !important;
  border-top: 1px solid rgba(255,255,255,0.08) !important;
  border-bottom: 1px solid rgba(255,255,255,0.08) !important;
}

/* ── 5. WIZARD / ANGEBOT & KONTAKT ── */
.nc-wizard-section, .nc-contact-section {
  background: #FFFFFF !important;
}
.nc-qw-wizard {
  border-radius: 0 !important;
}
.nc-qw-step-card {
  border-radius: 0 !important;
  border: 1px solid #E2E8F0 !important;
}
.nc-qw-estimate-box, .nc-estimate-box {
  background: #07121E !important;
  border: 1px solid rgba(45, 212, 191, 0.3) !important;
  border-radius: 0 !important;
  color: #FFFFFF !important;
}
.nc-qw-estimate-box h3, .nc-estimate-box h3 { color: #FFFFFF !important; }
.nc-qw-estimate-box p, .nc-estimate-box p { color: #E2E8F0 !important; }

/* ── 6. RATGEBER & BLOG ── */
.nc-article-hero {
  background: #07121E !important;
  color: #FFFFFF !important;
}
.nc-article-content {
  background: #FFFFFF !important;
}
.nc-blog-grid-section {
  background: #F8FAFC !important;
}
.nc-blog-card {
  background: #FFFFFF !important;
  border: 1px solid #E2E8F0 !important;
  border-radius: 0 !important;
}




/* ==========================================================================
   NOBLECLEAN GLOBAL SPACING & SEAMLESS SECTION HARMONY
   ========================================================================== */

/* 1. SEAMLESS HERO TO CONTENT FLOW */
.nc-hero-container, .ncb-hero, .nc-glass-hero {
  margin-bottom: 0 !important;
}
.nc-hero-stats-bar {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  padding: 22px 20px !important;
}
.nc-hero-stats-bar + * {
  margin-top: 0 !important;
}

/* 2. REMOVE REDUNDANT FLOATING TRUST BARS / GAPS BEFORE FOOTER */
.nc-trust-insurance-bar,
.nc-trust-insurance-bar-outer,
div[class*="trust-insurance"] {
  display: none !important;
  margin: 0 !important;
  padding: 0 !important;
  height: 0 !important;
}

/* 3. STANDARDIZE ALL SECTION VERTICAL PADDINGS (NO MORE GIANT GAPS) */
.nc-sectors-section,
.nc-about-master-section,
.nc-about-hero,
.ncb-system-section,
.ncb-turnus-section,
.ncb-vs-section,
.ncb-step-section,
.ncb-faq-section,
.ncb-cta-section,
.ncb-sec,
.ncb-portrait,
.ncb-facts,
.ncb-bedarf,
.ncb-faq,
.ncb-band,
.nc-story-section,
.nc-pillars-section,
.nc-timeline-section,
.nc-districts-section {
  padding-top: clamp(52px, 6vw, 84px) !important;
  padding-bottom: clamp(52px, 6vw, 84px) !important;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

/* 4. CLEAN SECTION WRAPPERS & REMOVE INNER PARAGRAPH MARGIN SPILLS */
.entry-content > .wp-block-group,
.entry-content > div[class*="section"],
.entry-content > section {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}
.entry-content > p:empty,
.entry-content > br {
  display: none !important;
}

/* 5. SECTOR & BENTO CARDS SPACING PERFECTION */
.nc-sector-card {
  padding: 28px !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: space-between !important;
}
.nc-sector-card h3 {
  margin-top: 14px !important;
  margin-bottom: 12px !important;
}
.nc-sector-card p {
  margin-bottom: 18px !important;
  line-height: 1.6 !important;
}



/* 6. ZERO GAP TRANSITION TO FOOTER */
.nc-final-cta-block,
.wp-block-group.alignfull:last-of-type,
.entry-content > .wp-block-group:last-child {
  margin-bottom: 0 !important;
  padding-bottom: clamp(60px, 7vw, 90px) !important;
  background: #0B192C !important;
}
.entry-content,
#inner-wrap,
.content-container,
.site-main,
#primary {
  padding-bottom: 0 !important;
  margin-bottom: 0 !important;
}
#nc-premium-footer {
  margin-top: 0 !important;
  border-top: 1px solid rgba(255,255,255,0.08) !important;
}


/* ==========================================================================
   STRICT SEAMLESS FOOTER TRANSITION (NO WHITE GAP)
   ========================================================================== */
.entry-content > .wp-block-group:last-child,
.entry-content > .wp-block-group:last-of-type,
.entry-content > div:last-child,
.entry-content > div:last-of-type {
  padding-bottom: 0 !important;
  margin-bottom: 0 !important;
}

.entry-content > .wp-block-group:last-child > .wp-block-group__inner-container > div:last-child,
.nc-final-cta-block,
div[class*="nc-final-cta"] {
  margin-bottom: 0 !important;
  padding-bottom: clamp(70px, 8vw, 100px) !important;
}

#inner-wrap, .content-container, .site-main, .entry-content, #primary, #main {
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}

#nc-premium-footer {
  margin-top: 0 !important;
  border-top: 1px solid rgba(255,255,255,0.08) !important;
}
/* nc-150k-agency-styles */
/* ══════════════════════════════════════════════════════════════════════════
       150.000€ AGENCY EXPERIENCE: SCROLL REVEAL & INTERACTION DYNAMICS
       ══════════════════════════════════════════════════════════════════════════ */

    /* SCROLL REVEAL BASE STYLES */
    .nc-scroll-reveal {
        opacity: 0;
        transform: translateY(28px);
        filter: blur(4px);
        transition: opacity 0.7s cubic-bezier(0.16, 1, 0.3, 1),
                    transform 0.7s cubic-bezier(0.16, 1, 0.3, 1),
                    filter 0.7s cubic-bezier(0.16, 1, 0.3, 1) !important;
        will-change: opacity, transform, filter;
    }

    .nc-scroll-reveal.nc-in-view {
        opacity: 1 !important;
        transform: translateY(0) !important;
        filter: blur(0) !important;
    }

    /* STAGGERED REVEAL DELAYS */
    .nc-scroll-reveal:nth-child(1) { transition-delay: 0.04s; }
    .nc-scroll-reveal:nth-child(2) { transition-delay: 0.10s; }
    .nc-scroll-reveal:nth-child(3) { transition-delay: 0.16s; }
    .nc-scroll-reveal:nth-child(4) { transition-delay: 0.22s; }
    .nc-scroll-reveal:nth-child(5) { transition-delay: 0.28s; }
    .nc-scroll-reveal:nth-child(6) { transition-delay: 0.34s; }

    /* SHIMMER BADGE ANIMATION */
    @keyframes ncShimmer {
        0% { background-position: -200% 0; }
        100% { background-position: 200% 0; }
    }
    .nc-eyebrow, .nc-section-badge, .ncb-badge, .nc-asp-badge, .nc-lh-badge {
        background: linear-gradient(90deg, rgba(72,187,120,0.12) 0%, rgba(72,187,120,0.32) 50%, rgba(72,187,120,0.12) 100%) !important;
        background-size: 200% 100% !important;
        animation: ncShimmer 5s infinite linear !important;
    }

    /* WCAG AAA TEXT CONTRAST & TYPOGRAPHIC EXCELLENCE */
    body, p, li, td {
        color: #1E293B !important;
    }
    h1, h2, h3, h4, h5, h6 {
        color: #0A192F !important;
        letter-spacing: -0.025em !important;
    }

    /* KINETIC BUTTON-IN-BUTTON HOVER ARROW */
    .nc-hero-btn-primary span,
    .nc-btn-primary span,
    .nc-lh-cta-btn span,
    .ncb-btn-p span {
        display: inline-flex;
        align-items: center;
        gap: 8px;
        transition: transform 0.3s cubic-bezier(0.16, 1, 0.3, 1);
    }
    .nc-hero-btn-primary:hover span,
    .nc-btn-primary:hover span,
    .nc-lh-cta-btn:hover span,
    .ncb-btn-p:hover span {
        transform: translateX(4px);
    }

    /* FLOATING HEADER MORPH ON SCROLL */
    .site-header, #masthead, .nc-main-header, header {
        transition: all 0.4s cubic-bezier(0.16, 1, 0.3, 1) !important;
    }
    .site-header.is-scrolled, #masthead.is-scrolled, .nc-main-header.is-scrolled {
        background: rgba(255, 255, 255, 0.94) !important;
        backdrop-filter: blur(20px) !important;
        -webkit-backdrop-filter: blur(20px) !important;
        box-shadow: 0 10px 30px rgba(10, 38, 71, 0.08) !important;
        border-bottom: 1px solid rgba(226, 232, 240, 0.8) !important;
    }

    /* ENHANCED MEGA-MENU HOVER & DROP TRANSITIONS */
    .nc-mega-menu, .nc-menu-dropdown {
        transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1) !important;
        border-radius: 20px !important;
        box-shadow: 0 25px 60px rgba(10, 38, 71, 0.15), 0 4px 16px rgba(0,0,0,0.04) !important;
    }
/* nc-beitrag-feinschliff */
.nc-abschluss-cta h2{color:#FAF9F5 !important;}.nc-abschluss-cta p{color:#E1E7EC !important;}.entry-related{display:none !important;}[id^="kt-layout-id_inline-cta"]{display:none !important;}.wp-block-kadence-rowlayout:has([id^="kt-layout-id_inline-cta"]){display:none !important;}.ncb-autor-aktionen{display:none !important;}.nc-wizard-section-headline,.nc-pain-headline,.nc-faq-headline,.nc-bento-headline,body .nc-seo-intro h2,body .nc-pricing-left h2,body .nc-refs-section h2{font-size:clamp(28px,3.4vw,42px) !important;}.nc-pain-section,.nc-seo-section,.nc-faq-section,.nc-pricing-section,.nc-ratgeber-section{padding:96px 32px !important;}body .nc-bento-section{padding:96px 32px !important;}@media(max-width:768px){.nc-pain-section,.nc-seo-section,.nc-faq-section,.nc-pricing-section,.nc-bento-section,.nc-ratgeber-section{padding:64px 20px !important;}}.nc-sec--hero .wrap{max-width:1200px;margin:0 auto;padding:0 20px;}.nc-sec--hero p,.nc-sec--hero li,.nc-sec--hero ul,.nc-sec--hero ol{color:#E1E7EC !important;}.nc-sec--hero h2,.nc-sec--hero h3{color:#FAF9F5 !important;}.nc-sec--hero form,.nc-sec--hero form *,.nc-sec--hero .wp-block-column form *{color:#1F2933 !important;}.nc-sec--hero form label,.nc-sec--hero form legend{color:#1A365D !important;}.nc-sec--hero .grid-hero{display:grid;grid-template-columns:1.1fr .9fr;gap:52px;align-items:center;}@media(max-width:960px){.nc-sec--hero .grid-hero{grid-template-columns:1fr !important;gap:32px !important;}}.nc-sec--hero .nc-eyebrow{display:inline-block;font-family:Manrope,sans-serif;font-size:13px;font-weight:800;letter-spacing:.12em;color:#48BB78;margin-bottom:14px;}.nc-faq-nav-inner{display:grid !important;grid-template-columns:repeat(auto-fit,minmax(240px,1fr)) !important;gap:14px !important;max-width:1100px;margin:0 auto;overflow:visible !important;flex-wrap:wrap !important;}.nc-faq-nav-btn{display:flex !important;align-items:center;justify-content:flex-start;gap:12px;background:#FFFFFF !important;border:1px solid #E7E3DA !important;border-radius:16px !important;padding:20px 22px !important;font-family:Manrope,sans-serif !important;font-size:16px !important;font-weight:800 !important;color:#1A365D !important;text-align:left !important;white-space:normal !important;box-shadow:0 2px 10px rgba(18,50,74,.05);transition:transform .18s,box-shadow .18s,border-color .18s;}.nc-faq-nav-btn:hover{transform:translateY(-3px);box-shadow:0 14px 28px rgba(18,50,74,.10);border-color:#0B6157 !important;color:#0B6157 !important;}@media(max-width:600px){.nc-faq-nav-inner{grid-template-columns:1fr !important;}.nc-faq-nav-btn{padding:16px 18px !important;font-size:15px !important;}}.nc-pain-list li,.nc-solution-list li{display:block !important;position:relative !important;padding-left:30px !important;gap:0 !important;}.nc-pain-list li::before,.nc-solution-list li::before{position:absolute !important;left:0 !important;top:0 !important;}.nc-pain-list li strong,.nc-solution-list li strong{display:inline !important;white-space:normal !important;}.nc-geo-hero,.nobleclean-hero-section,.nc-bento-hero,.nc-eco-hero,.nc-srv-hero-wrap{padding:56px 32px 88px !important;}.nc-bento-hero h1,.nc-eco-hero h1,.nc-srv-hero-wrap h1{font-size:clamp(30px,3.8vw,44px) !important;font-weight:800 !important;line-height:1.12 !important;letter-spacing:-.02em !important;color:#FAF9F5 !important;}.nc-bento-hero p,.nc-eco-hero p,.nc-srv-hero-wrap p{color:#E1E7EC !important;}.nc-geo-hero h1,.nobleclean-hero-section h1{font-size:clamp(30px,3.8vw,44px) !important;font-weight:800 !important;line-height:1.12 !important;letter-spacing:-.02em !important;color:#FAF9F5 !important;}.nc-geo-hero p,.nobleclean-hero-section p{color:#E1E7EC !important;}/* Footer: Markenspalte plus drei Linkspalten (Silo-Struktur seit 08/2026: drei Linkspalten plus Bezirksliste ueber volle Breite). */.nc-footer-body,.nc-footer-grid{grid-template-columns:minmax(240px,1.1fr) repeat(3,minmax(150px,1fr)) !important;}@media(max-width:1100px){.nc-footer-body,.nc-footer-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr)) !important;}}@media(max-width:640px){.nc-footer-body,.nc-footer-grid{grid-template-columns:1fr !important;}}/* Inhaltsbreite: Textbloecke zentriert begrenzen */.nc-zz-content{max-width:760px !important;margin-left:auto !important;margin-right:auto !important;padding-left:20px;padding-right:20px;box-sizing:border-box;}.nc-zz-content h2,.nc-zz-content h3{max-width:100% !important;margin-left:0 !important;margin-right:0 !important;}.nc-zz-content p,.nc-zz-content li{max-width:100% !important;margin-left:0 !important;margin-right:0 !important;}/* Lesbare Zeilenlaenge im Fliesstext */.nc-seo-inner p,.nc-seo-inner li,.nc-zz-content p,.nc-zz-content li{max-width:700px;margin-left:auto;margin-right:auto;}.nc-seo-inner h2,.nc-seo-inner h3,.nc-zz-content h3{max-width:820px;margin-left:auto;margin-right:auto;}.nc-seo-inner ul,.nc-seo-inner ol{max-width:700px;margin-left:auto;margin-right:auto;}/* Zickzack: Bloecke ohne Textspalte nicht halbleer stehen lassen */.nc-zz-block{grid-template-columns:1fr !important;gap:0 !important;margin-bottom:40px !important;}.nc-zz-block > .nc-zz-img{max-width:720px;margin:0 auto;width:100%;}/* CTA-Links lesbar */.nc-faq-cta a{color:#0B6157 !important;font-weight:800 !important;}.nc-faq-cta a:hover{color:#1A365D !important;}/* Zielgruppen-Block dunkel absetzen */.nc-gr-ziel,.lv-ziel{background:#1A365D !important;border-color:rgba(94,234,212,.22) !important;}.nc-gr-ziel h3,.lv-ziel h3{color:#48BB78 !important;}.nc-gr-ziel p,.lv-ziel p,.lv-ziel .lvp{color:#E1E7EC !important;}/* Vergleichsblock moderner */.nc-pain-card{background:#FFFFFF !important;border:1px solid #E7E3DA !important;border-radius:22px !important;box-shadow:0 10px 30px rgba(18,50,74,.06) !important;}.nc-solution-card{background:#1A365D !important;border:0 !important;border-radius:22px !important;box-shadow:0 18px 44px rgba(18,50,74,.20) !important;}.nc-solution-card,.nc-solution-card li,.nc-solution-card p,.nc-solution-card span,.nc-solution-card strong{color:#FAF9F5 !important;}.nc-solution-card .nc-solution-card-title{color:#48BB78 !important;}.nc-solution-list li::before{color:#48BB78 !important;}.nc-system-badge{background:rgba(94,234,212,.12) !important;border:1px solid rgba(94,234,212,.28) !important;color:#48BB78 !important;border-radius:12px !important;}.nc-pain-card-title{color:#B4442F !important;}.nc-pain-list li::before{color:#C2410C !important;}/* Bezirksraster kompakter */div[style*="minmax(200px"]{grid-template-columns:repeat(auto-fill,minmax(148px,1fr)) !important;gap:10px !important;}div[style*="minmax(200px"] > a{padding:11px 12px !important;font-size:14px !important;border-radius:10px !important;}@media(max-width:520px){div[style*="minmax(200px"]{grid-template-columns:repeat(auto-fill,minmax(130px,1fr)) !important;}}/* nc-rhythmus: Abschnittswechsel wie Referenz */body .nc-pain-section{background:#F2F0EA !important;}body .nc-seo-section{background:#FAF9F5 !important;}body .nc-bento-section{background:#1A365D !important;}body .nc-bento-section,body .nc-bento-section h2,body .nc-bento-section h3,body .nc-bento-section p,body .nc-bento-section li,body .nc-bento-section span{color:#FAF9F5 !important;}body .nc-bento-section .nc-bento-card{background:#FFFFFF !important;border-color:rgba(18,50,74,.10) !important;}body .nc-bento-section .nc-bento-card,body .nc-bento-section .nc-bento-card h2,body .nc-bento-section .nc-bento-card h3,body .nc-bento-section .nc-bento-card p,body .nc-bento-section .nc-bento-card li,body .nc-bento-section .nc-bento-card span{color:#1F2933 !important;}body .nc-bento-section .nc-bento-card h3{color:#1A365D !important;}body .nc-bento-section .nc-bento-badge-inline{background:rgba(47,184,166,.16) !important;color:#0B2E28 !important;}body .nc-pricing-section{background:#FAF9F5 !important;}body .nc-refs-section{background:#F2F0EA !important;}body .nc-ratgeber-section{background:#FAF9F5 !important;}.nc-trust-insurance-bar{background:#FFFFFF !important;border-bottom:0 !important;}.entry-content.single-content > p, .entry-content.single-content > ul, .entry-content.single-content > ol, .entry-content.single-content > h2, .entry-content.single-content > h3, .entry-content.single-content > h4, .entry-content.single-content > blockquote, .entry-content.single-content > .wp-block-paragraph, .entry-content.single-content > .wp-block-list, .entry-content.single-content > .wp-block-heading, .entry-content.single-content > .wp-block-quote{max-width:700px !important;margin-left:auto !important;margin-right:auto !important;}body.single-post .entry-content.single-content > p, body.single-post .entry-content.single-content > ul, body.single-post .entry-content.single-content > ol, body.single-post .entry-content.single-content > h2, body.single-post .entry-content.single-content > h3, body.single-post .entry-content.single-content > h4, body.single-post .entry-content.single-content > blockquote, body.single-post .entry-content.single-content > .wp-block-paragraph, body.single-post .entry-content.single-content > .wp-block-list, body.single-post .entry-content.single-content > .wp-block-heading, body.single-post .entry-content.single-content > .wp-block-quote{max-width:700px !important;margin-left:auto !important;margin-right:auto !important;}.entry-content.single-content > figure, .entry-content.single-content > table, .entry-content.single-content > .wp-block-table, .entry-content.single-content > .wp-block-image, .entry-content.single-content > .wp-block-embed{max-width:820px !important;margin-left:auto !important;margin-right:auto !important;}body.single-post .entry-content.single-content > figure, body.single-post .entry-content.single-content > table, body.single-post .entry-content.single-content > .wp-block-table, body.single-post .entry-content.single-content > .wp-block-image, body.single-post .entry-content.single-content > .wp-block-embed{max-width:820px !important;margin-left:auto !important;margin-right:auto !important;}.ncx-accordion-panel > p{max-width:760px !important;}.nc-seo-expansion-section .wp-block-group__inner-container{max-width:760px !important;margin-left:auto !important;margin-right:auto !important;}.nc-sec .wrap > p{max-width:720px !important;margin-left:auto !important;margin-right:auto !important;}.nc-core-faqs details p,.nc-accordion-wrap details p{max-width:720px !important;}.ncx-accordion-panel p{max-width:720px !important;}.nc-portal--mega a[href*="was-uns-wichtig-ist"],.nc-portal--mega a[href*="/karriere"]{position:relative;border:1px solid rgba(47,184,166,.42) !important;border-radius:12px !important;background:linear-gradient(135deg,rgba(47,184,166,.14) 0%,rgba(47,184,166,.04) 100%) !important;padding:10px 12px !important;transition:border-color .2s ease,background .2s ease,transform .2s ease;}.nc-portal--mega a[href*="was-uns-wichtig-ist"]:hover,.nc-portal--mega a[href*="/karriere"]:hover{border-color:rgba(94,234,212,.85) !important;background:linear-gradient(135deg,rgba(47,184,166,.24) 0%,rgba(47,184,166,.08) 100%) !important;transform:translateY(-2px);}.nc-portal--mega a[href*="was-uns-wichtig-ist"] strong,.nc-portal--mega a[href*="/karriere"] strong{color:#48BB78 !important;}@media (prefers-reduced-motion:reduce){.nc-portal--mega a[href*="was-uns-wichtig-ist"],.nc-portal--mega a[href*="/karriere"]{transition:none;}.nc-portal--mega a[href*="was-uns-wichtig-ist"]:hover,.nc-portal--mega a[href*="/karriere"]:hover{transform:none;}}.nc-faq-cta{background:#F2FAF8 !important;border:1.5px solid rgba(47,184,166,.45) !important;}.nc-faq-cta h2,.nc-faq-cta h3{color:#1A365D !important;}.nc-faq-cta p,.nc-faq-cta span{color:#3C4A5A !important;}.nc-faq-cta a{color:#0B6157 !important;font-weight:800 !important;}.nc-faq-cta a:hover{color:#1A365D !important;}span.nc-footer-badge{color:#48BB78 !important;}span.nc-footer-badge svg{stroke:#48BB78 !important;color:#48BB78 !important;}a.btn-teal{color:#1A365D !important;}.ba-after{background:#0B6157 !important;color:#FFFFFF !important;}
/* nc-district-faq-polish */
/* 4-Column Mega Menu Styling for Desktop */
    @media (min-width: 1024px) {
        .wp-block-navigation .wp-block-navigation-item:first-child > .wp-block-navigation__submenu-container,
        .primary-menu > li:first-child > .sub-menu {
            display: grid !important;
            grid-template-columns: repeat(4, minmax(210px, 1fr)) !important;
            gap: 24px 20px !important;
            min-width: 900px !important;
            left: 50% !important;
            transform: translateX(-50%) translateY(10px) !important;
            padding: 30px 28px !important;
            background: #FFFFFF !important;
            border-radius: 20px !important;
            box-shadow: 0 20px 50px rgba(18, 35, 63, 0.14) !important;
            border: 1px solid #E2E8F0 !important;
            box-sizing: border-box !important;
            transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1) !important;
            opacity: 0;
            visibility: hidden;
            pointer-events: none;
        }

        .wp-block-navigation .wp-block-navigation-item:first-child:hover > .wp-block-navigation__submenu-container,
        .wp-block-navigation .wp-block-navigation-item:first-child:focus-within > .wp-block-navigation__submenu-container,
        .primary-menu > li:first-child:hover > .sub-menu {
            opacity: 1 !important;
            visibility: visible !important;
            pointer-events: auto !important;
            transform: translateX(-50%) translateY(0) !important;
        }

        /* 4 Main Pillar Columns */
        .wp-block-navigation .wp-block-navigation-item:first-child > .wp-block-navigation__submenu-container > .wp-block-navigation-item,
        .primary-menu > li:first-child > .sub-menu > li {
            display: flex !important;
            flex-direction: column !important;
            gap: 8px !important;
            background: #F8FAFC !important;
            border: 1px solid #E2E8F0 !important;
            border-radius: 14px !important;
            padding: 16px 14px !important;
            box-sizing: border-box !important;
        }

        /* Pillar Column Header */
        .wp-block-navigation .wp-block-navigation-item:first-child > .wp-block-navigation__submenu-container > .wp-block-navigation-item > .wp-block-navigation-item__content,
        .primary-menu > li:first-child > .sub-menu > li > a {
            font-family: 'Plus Jakarta Sans', sans-serif !important;
            font-weight: 800 !important;
            font-size: 15px !important;
            color: #1A365D !important;
            border-bottom: 2px solid #48BB78 !important;
            padding-bottom: 6px !important;
            margin-bottom: 4px !important;
            text-decoration: none !important;
        }

        /* Sub-items in each Pillar Column */
        .wp-block-navigation .wp-block-navigation-item:first-child > .wp-block-navigation__submenu-container > .wp-block-navigation-item .wp-block-navigation__submenu-container,
        .primary-menu > li:first-child > .sub-menu > li > .sub-menu {
            display: flex !important;
            flex-direction: column !important;
            position: static !important;
            box-shadow: none !important;
            border: none !important;
            background: transparent !important;
            padding: 0 !important;
            margin: 0 !important;
            gap: 4px !important;
            opacity: 1 !important;
            visibility: visible !important;
            pointer-events: auto !important;
            transform: none !important;
        }

        .wp-block-navigation .wp-block-navigation-item:first-child > .wp-block-navigation__submenu-container > .wp-block-navigation-item .wp-block-navigation-item__content,
        .primary-menu > li:first-child > .sub-menu > li > .sub-menu a {
            font-size: 13.5px !important;
            font-weight: 600 !important;
            color: #334155 !important;
            padding: 4px 6px !important;
            border-radius: 6px !important;
            transition: all 0.15s ease !important;
            text-decoration: none !important;
        }

        .wp-block-navigation .wp-block-navigation-item:first-child > .wp-block-navigation__submenu-container > .wp-block-navigation-item .wp-block-navigation-item__content:hover,
        .primary-menu > li:first-child > .sub-menu > li > .sub-menu a:hover {
            color: #48BB78 !important;
            background: #FFFFFF !important;
            padding-left: 10px !important;
        }
    }

    /* District FAQ Accordion Fix */
    .nc-faq-list {
        max-width: 920px !important;
        margin: 0 auto 50px !important;
        display: flex !important;
        flex-direction: column !important;
        gap: 14px !important;
    }
    .nc-faq-item {
        background: #FFFFFF !important;
        border: 1px solid #E2E8F0 !important;
        border-radius: 16px !important;
        overflow: hidden !important;
        box-shadow: 0 4px 16px rgba(18, 35, 63, 0.04) !important;
        transition: all 0.25s ease !important;
    }
    .nc-faq-item:hover {
        border-color: #48BB78 !important;
        box-shadow: 0 10px 28px rgba(14, 169, 155, 0.12) !important;
    }
    .nc-faq-question {
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
        width: 100% !important;
        padding: 20px 24px !important;
        background: #FFFFFF !important;
        border: none !important;
        font-family: 'Plus Jakarta Sans', sans-serif !important;
        font-weight: 700 !important;
        font-size: 16.5px !important;
        color: #1A365D !important;
        text-align: left !important;
        cursor: pointer !important;
        gap: 20px !important;
        box-sizing: border-box !important;
    }
    .nc-faq-question:hover {
        background: #F8FAFC !important;
    }
    .nc-faq-question span {
        flex: 1 1 auto !important;
        color: #1A365D !important;
        line-height: 1.45 !important;
    }
    .nc-faq-chevron,
    svg.nc-faq-chevron {
        width: 22px !important;
        height: 22px !important;
        min-width: 22px !important;
        max-width: 22px !important;
        max-height: 22px !important;
        flex: 0 0 22px !important;
        stroke: #48BB78 !important;
        display: block !important;
        transition: transform 0.25s cubic-bezier(0.16, 1, 0.3, 1) !important;
    }
    .nc-faq-question[aria-expanded="true"] .nc-faq-chevron {
        transform: rotate(180deg) !important;
    }
    .nc-faq-answer {
        display: none;
        padding: 0 24px 22px !important;
        color: #475569 !important;
        font-size: 15.5px !important;
        line-height: 1.7 !important;
    }
    .nc-faq-question[aria-expanded="true"] + .nc-faq-answer {
        display: block !important;
    }

    /* Mobile Footer Layout */
    @media (max-width: 768px) {
        .nc-footer-body {
            grid-template-columns: 1fr 1fr !important;
            gap: 32px 18px !important;
            padding: 36px 16px 28px !important;
        }
        .nc-footer-brand {
            grid-column: span 2 !important;
            text-align: center !important;
        }
        .nc-footer-brand .nc-footer-badges,
        .nc-footer-brand .nc-footer-social {
            justify-content: center !important;
        }
        .nc-footer-col-title {
            font-size: 15px !important;
            margin-bottom: 12px !important;
            color: #FFFFFF !important;
        }
        .nc-footer-links li a {
            font-size: 13px !important;
            padding: 5px 0 !important;
            color: #E2E8F0 !important;
        }
    }
/* nc-global-contrast-engine */
/* ==========================================================================
   NOBLECLEAN GLOBAL CONTRAST ENGINE - 100% WCAG AAA COMPLIANT
   ========================================================================== */

/* ── 1. LIGHT SECTIONS (#FFFFFF / #F8FAFC) -> CRISP DARK HEADINGS & SLATE TEXT ── */
.nc-silos-grid h2, .nc-silos-grid h3, .nc-silos-grid h4,
.nc-bento-card h2, .nc-bento-card h3, .nc-bento-card h4,
.nc-bento-3-grid h2, .nc-bento-3-grid h3, .nc-bento-3-grid h4,
.ncb-system-section h2, .ncb-system-section h3, .ncb-system-section h4,
.ncb-system-card h2, .ncb-system-card h3, .ncb-system-card h4,
.ncb-vs-section h2, .ncb-vs-section h3, .ncb-vs-section h4,
.ncb-step-section h2, .ncb-step-section h3, .ncb-step-section h4,
.ncb-step-card h2, .ncb-step-card h3, .ncb-step-card h4,
.ncb-facts h2, .ncb-facts h3, .ncb-facts h4,
.ncb-fact-card h2, .ncb-fact-card h3, .ncb-fact-card h4,
.ncb-faq h2, .ncb-faq h3, .ncb-faq h4,
.ncb-faq-item h2, .ncb-faq-item h3, .ncb-faq-item h4,
.nc-faq-section h2, .nc-faq-section h3, .nc-faq-section h4,
.nc-faq-container h2, .nc-faq-container h3, .nc-faq-container h4,
.ncx-accordion h2, .ncx-accordion h3, .ncx-accordion h4,
.nc-story-section h2, .nc-story-section h3, .nc-story-section h4,
.nc-timeline-section h2, .nc-timeline-section h3, .nc-timeline-section h4,
.nc-timeline-card h2, .nc-timeline-card h3, .nc-timeline-card h4,
.nc-blog-card h2, .nc-blog-card h3, .nc-blog-card h4,
.nc-blog-grid-section h2, .nc-blog-grid-section h3, .nc-blog-grid-section h4,
.nc-service-bento-grid h2, .nc-service-bento-grid h3, .nc-service-bento-grid h4,
.nc-testimonials-section h2, .nc-testimonials-section h3,
div[style*="background:#FFFFFF"] h2, div[style*="background:#FFFFFF"] h3, div[style*="background:#FFFFFF"] h4,
div[style*="background:#F8FAFC"] h2, div[style*="background:#F8FAFC"] h3, div[style*="background:#F8FAFC"] h4,
div[style*="background: #FFFFFF"] h2, div[style*="background: #FFFFFF"] h3, div[style*="background: #FFFFFF"] h4,
div[style*="background: #F8FAFC"] h2, div[style*="background: #F8FAFC"] h3, div[style*="background: #F8FAFC"] h4,
section[style*="background:#FFFFFF"] h2, section[style*="background:#FFFFFF"] h3,
section[style*="background:#F8FAFC"] h2, section[style*="background:#F8FAFC"] h3 {
  color: #0F172A !important;
}

.nc-silos-grid p, .nc-bento-card p, .nc-bento-3-grid p,
.ncb-system-section p, .ncb-step-section p, .ncb-facts p,
.ncb-faq p, .nc-faq-section p,
.nc-story-section p, .nc-timeline-section p, .nc-blog-card p,
div[style*="background:#FFFFFF"] p, div[style*="background:#F8FAFC"] p,
div[style*="background: #FFFFFF"] p, div[style*="background: #F8FAFC"] p {
  color: #334155 !important;
}

/* ── 2. DARK SECTIONS (#07121E / #0B192C / #081422) -> PURE WHITE HEADINGS & SLATE 300 ── */
.nc-sectors-section, .nc-sectors-section h2, .nc-sectors-section h3, .nc-sectors-section h4,
.nc-about-master-section, .nc-about-master-section h2, .nc-about-master-section h3, .nc-about-master-section h4,
.nc-hero-container, .nc-hero-container h1, .nc-hero-container h2, .nc-hero-container h3,
.nc-glass-hero, .nc-glass-hero h1, .nc-glass-hero h2, .nc-glass-hero h3,
.ncb-hero, .ncb-hero h1, .ncb-hero h2, .ncb-hero h3,
.ncb-turnus-section, .ncb-turnus-section h2, .ncb-turnus-section h3,
.ncb-portrait, .ncb-portrait h2, .ncb-portrait h3, .ncb-portrait h4,
.ncb-bedarf, .ncb-bedarf h2, .ncb-bedarf h3,
.ncb-band, .ncb-band h2, .ncb-band h3,
.nc-final-cta-block, .nc-final-cta-block h2, .nc-final-cta-block h3,
.nc-pillars-section, .nc-pillars-section h2, .nc-pillars-section h3,
.nc-districts-section, .nc-districts-section h2, .nc-districts-section h3,
.nc-article-hero, .nc-article-hero h1, .nc-article-hero h2,
.nc-sector-card h3, .nc-sector-card h4,
.nc-pillar-card h3, .ncb-turnus-card h3, .ncb-port-card h3, .ncb-port-card h4, .ncb-bedarf-karte h3,
.ncb-faq-section, .ncb-faq-section h2, .ncb-faq-section h3, .ncb-faq-section h4,
div[style*="background:#07121E"] h2, div[style*="background:#07121E"] h3,
div[style*="background:#0B192C"] h2, div[style*="background:#0B192C"] h3,
div[style*="background:#081422"] h2, div[style*="background:#081422"] h3,
div[style*="background: #07121E"] h2, div[style*="background: #07121E"] h3,
div[style*="background: #0B192C"] h2, div[style*="background: #0B192C"] h3,
div[style*="background: #081422"] h2, div[style*="background: #081422"] h3 {
  color: #FFFFFF !important;
}

.nc-sectors-section p, .nc-about-master-section p, .nc-hero-container p, .nc-glass-hero p,
.ncb-hero p, .ncb-turnus-section p, .ncb-portrait p, .ncb-bedarf p, .ncb-band p,
.nc-final-cta-block p, .nc-pillars-section p, .nc-districts-section p,
.nc-sector-card p, .nc-pillar-card p, .ncb-turnus-card p, .ncb-port-card p, .ncb-bedarf-karte p,
.ncb-faq-section .ncb-faq-desc,
div[style*="background:#07121E"] p, div[style*="background:#0B192C"] p, div[style*="background:#081422"] p {
  color: #CBD5E1 !important;
}

/* ── 3. FAQ CARDS INSIDE DARK FAQ SECTIONS (.ncb-faq-item) ── */
.ncb-faq-section .ncb-faq-item .ncb-faq-q,
.ncb-faq-section .ncb-faq-item .ncb-faq-q span {
  color: #1A365D !important;
}
.ncb-faq-section .ncb-faq-item .ncb-faq-q:hover,
.ncb-faq-section .ncb-faq-item .ncb-faq-q:hover span {
  color: #0A7A54 !important;
}
.ncb-faq-section .ncb-faq-item .ncb-faq-a,
.ncb-faq-section .ncb-faq-item .ncb-faq-a p,
.ncb-faq-section .ncb-faq-item .ncb-faq-a span {
  color: #334155 !important;
}
.ncb-faq-section .ncb-faq-item .ncb-faq-a strong {
  color: #0F172A !important;
}

/* FAQ Accordion trigger buttons (homepage & general) */
.ncx-accordion-trigger span,
.nc-faq-trigger {
  color: #1A365D !important;
}
.ncx-accordion-trigger:hover span,
.nc-faq-trigger:hover {
  color: #0A7A54 !important;
}
/* nc-skyline-band */
.nc-sec--hero,.nc-sec--cta,.nc-abschluss-cta,.nc-geo-hero,.nobleclean-hero-section,.nc-bento-hero,.nc-eco-hero,.nc-srv-hero-wrap{position:relative !important;overflow:hidden !important;}.nc-sec--hero::after,.nc-sec--cta::after,.nc-abschluss-cta::after,.nc-geo-hero::after,.nobleclean-hero-section::after,.nc-bento-hero::after,.nc-eco-hero::after,.nc-srv-hero-wrap::after{content:"";position:absolute;left:0;bottom:0;width:100%;height:160px;background:url("data:image/svg+xml,%3Csvg%20viewBox%3D%270%200%201200%20160%27%20preserveAspectRatio%3D%27xMidYMax%20slice%27%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20aria-hidden%3D%27true%27%3E%20%3Cg%20fill%3D%27none%27%20stroke%3D%27%232FB8A6%27%20stroke-width%3D%272%27%20opacity%3D%27.22%27%3E%20%3Ccircle%20cx%3D%2778%27%20cy%3D%2792%27%20r%3D%2734%27%2F%3E%3Ccircle%20cx%3D%2778%27%20cy%3D%2792%27%20r%3D%274%27%2F%3E%20%3Cline%20x1%3D%2778%27%20y1%3D%2758%27%20x2%3D%2778%27%20y2%3D%27126%27%2F%3E%3Cline%20x1%3D%2744%27%20y1%3D%2792%27%20x2%3D%27112%27%20y2%3D%2792%27%2F%3E%20%3Cline%20x1%3D%2754%27%20y1%3D%2768%27%20x2%3D%27102%27%20y2%3D%27116%27%2F%3E%3Cline%20x1%3D%2754%27%20y1%3D%27116%27%20x2%3D%27102%27%20y2%3D%2768%27%2F%3E%20%3Cline%20x1%3D%2756%27%20y1%3D%27160%27%20x2%3D%2778%27%20y2%3D%2792%27%2F%3E%3Cline%20x1%3D%27100%27%20y1%3D%27160%27%20x2%3D%2778%27%20y2%3D%2792%27%2F%3E%20%3C%2Fg%3E%20%3Cg%20fill%3D%27%232FB8A6%27%20opacity%3D%27.2%27%3E%20%3Cpolygon%20points%3D%27196%2C160%20196%2C34%20246%2C22%20246%2C160%27%2F%3E%3Crect%20x%3D%27218%27%20y%3D%2710%27%20width%3D%274%27%20height%3D%2712%27%2F%3E%20%3Crect%20x%3D%27286%27%20y%3D%2750%27%20width%3D%2744%27%20height%3D%27110%27%2F%3E%3Crect%20x%3D%27292%27%20y%3D%2734%27%20width%3D%2713%27%20height%3D%2716%27%2F%3E%3Crect%20x%3D%27311%27%20y%3D%2734%27%20width%3D%2713%27%20height%3D%2716%27%2F%3E%3Crect%20x%3D%27306%27%20y%3D%2716%27%20width%3D%274%27%20height%3D%2718%27%2F%3E%20%3Cpolygon%20points%3D%27398%2C160%20398%2C64%20428%2C56%20428%2C160%27%2F%3E%3Cpolygon%20points%3D%27444%2C160%20444%2C58%20474%2C66%20474%2C160%27%2F%3E%3Crect%20x%3D%27428%27%20y%3D%2782%27%20width%3D%2716%27%20height%3D%274%27%2F%3E%3Crect%20x%3D%27428%27%20y%3D%27108%27%20width%3D%2716%27%20height%3D%274%27%2F%3E%20%3Crect%20x%3D%27520%27%20y%3D%2774%27%20width%3D%2742%27%20height%3D%2786%27%2F%3E%3Cellipse%20cx%3D%27541%27%20cy%3D%2774%27%20rx%3D%2721%27%20ry%3D%2713%27%2F%3E%20%3Crect%20x%3D%27612%27%20y%3D%2778%27%20width%3D%2726%27%20height%3D%2782%27%2F%3E%3Cpolygon%20points%3D%27612%2C78%20625%2C54%20638%2C78%27%2F%3E%3Cpolygon%20points%3D%27619%2C54%20623%2C28%20625%2C12%20627%2C28%20631%2C54%27%2F%3E%3Crect%20x%3D%27623%27%20y%3D%274%27%20width%3D%274%27%20height%3D%279%27%2F%3E%3Crect%20x%3D%27619%27%20y%3D%277%27%20width%3D%2712%27%20height%3D%273%27%2F%3E%20%3Cpolygon%20points%3D%27690%2C160%20690%2C44%20740%2C32%20740%2C160%27%2F%3E%3Crect%20x%3D%27712%27%20y%3D%2716%27%20width%3D%274%27%20height%3D%2716%27%2F%3E%20%3Crect%20x%3D%27760%27%20y%3D%2784%27%20width%3D%2742%27%20height%3D%2776%27%2F%3E%20%3Crect%20x%3D%27820%27%20y%3D%2758%27%20width%3D%2752%27%20height%3D%27102%27%2F%3E%3Crect%20x%3D%27832%27%20y%3D%2744%27%20width%3D%2712%27%20height%3D%2714%27%2F%3E%3Crect%20x%3D%27848%27%20y%3D%2744%27%20width%3D%2712%27%20height%3D%2714%27%2F%3E%20%3Crect%20x%3D%27892%27%20y%3D%2796%27%20width%3D%2742%27%20height%3D%2764%27%2F%3E%20%3Cpolygon%20points%3D%27956%2C160%20956%2C50%201012%2C38%201012%2C160%27%2F%3E%3Crect%20x%3D%27982%27%20y%3D%2722%27%20width%3D%274%27%20height%3D%2716%27%2F%3E%20%3Crect%20x%3D%271034%27%20y%3D%2790%27%20width%3D%2746%27%20height%3D%2770%27%2F%3E%20%3Crect%20x%3D%271100%27%20y%3D%2764%27%20width%3D%2754%27%20height%3D%2796%27%2F%3E%3Crect%20x%3D%271118%27%20y%3D%2750%27%20width%3D%2718%27%20height%3D%2714%27%2F%3E%20%3Crect%20x%3D%271168%27%20y%3D%27104%27%20width%3D%2734%27%20height%3D%2756%27%2F%3E%20%3C%2Fg%3E%20%3C%2Fsvg%3E") no-repeat center bottom;background-size:cover;pointer-events:none;z-index:0;}.nc-sec--hero > *,.nc-sec--cta > *,.nc-abschluss-cta > *,.nc-geo-hero > *,.nobleclean-hero-section > *,.nc-bento-hero > *,.nc-eco-hero > *,.nc-srv-hero-wrap > *{position:relative;z-index:1;}.nc-mega-grafik{position:relative;display:flex;flex-direction:column;justify-content:flex-end;min-height:200px;border-radius:16px;background:rgba(255,255,255,.03);border:1px solid rgba(94,234,212,.14);overflow:hidden;padding:22px 20px;}.nc-mega-grafik::after{content:"";position:absolute;left:0;bottom:0;width:100%;height:120px;background:url("data:image/svg+xml,%3Csvg%20viewBox%3D%270%200%201200%20160%27%20preserveAspectRatio%3D%27xMidYMax%20slice%27%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20aria-hidden%3D%27true%27%3E%20%3Cg%20fill%3D%27none%27%20stroke%3D%27%232FB8A6%27%20stroke-width%3D%272%27%20opacity%3D%27.22%27%3E%20%3Ccircle%20cx%3D%2778%27%20cy%3D%2792%27%20r%3D%2734%27%2F%3E%3Ccircle%20cx%3D%2778%27%20cy%3D%2792%27%20r%3D%274%27%2F%3E%20%3Cline%20x1%3D%2778%27%20y1%3D%2758%27%20x2%3D%2778%27%20y2%3D%27126%27%2F%3E%3Cline%20x1%3D%2744%27%20y1%3D%2792%27%20x2%3D%27112%27%20y2%3D%2792%27%2F%3E%20%3Cline%20x1%3D%2754%27%20y1%3D%2768%27%20x2%3D%27102%27%20y2%3D%27116%27%2F%3E%3Cline%20x1%3D%2754%27%20y1%3D%27116%27%20x2%3D%27102%27%20y2%3D%2768%27%2F%3E%20%3Cline%20x1%3D%2756%27%20y1%3D%27160%27%20x2%3D%2778%27%20y2%3D%2792%27%2F%3E%3Cline%20x1%3D%27100%27%20y1%3D%27160%27%20x2%3D%2778%27%20y2%3D%2792%27%2F%3E%20%3C%2Fg%3E%20%3Cg%20fill%3D%27%232FB8A6%27%20opacity%3D%27.2%27%3E%20%3Cpolygon%20points%3D%27196%2C160%20196%2C34%20246%2C22%20246%2C160%27%2F%3E%3Crect%20x%3D%27218%27%20y%3D%2710%27%20width%3D%274%27%20height%3D%2712%27%2F%3E%20%3Crect%20x%3D%27286%27%20y%3D%2750%27%20width%3D%2744%27%20height%3D%27110%27%2F%3E%3Crect%20x%3D%27292%27%20y%3D%2734%27%20width%3D%2713%27%20height%3D%2716%27%2F%3E%3Crect%20x%3D%27311%27%20y%3D%2734%27%20width%3D%2713%27%20height%3D%2716%27%2F%3E%3Crect%20x%3D%27306%27%20y%3D%2716%27%20width%3D%274%27%20height%3D%2718%27%2F%3E%20%3Cpolygon%20points%3D%27398%2C160%20398%2C64%20428%2C56%20428%2C160%27%2F%3E%3Cpolygon%20points%3D%27444%2C160%20444%2C58%20474%2C66%20474%2C160%27%2F%3E%3Crect%20x%3D%27428%27%20y%3D%2782%27%20width%3D%2716%27%20height%3D%274%27%2F%3E%3Crect%20x%3D%27428%27%20y%3D%27108%27%20width%3D%2716%27%20height%3D%274%27%2F%3E%20%3Crect%20x%3D%27520%27%20y%3D%2774%27%20width%3D%2742%27%20height%3D%2786%27%2F%3E%3Cellipse%20cx%3D%27541%27%20cy%3D%2774%27%20rx%3D%2721%27%20ry%3D%2713%27%2F%3E%20%3Crect%20x%3D%27612%27%20y%3D%2778%27%20width%3D%2726%27%20height%3D%2782%27%2F%3E%3Cpolygon%20points%3D%27612%2C78%20625%2C54%20638%2C78%27%2F%3E%3Cpolygon%20points%3D%27619%2C54%20623%2C28%20625%2C12%20627%2C28%20631%2C54%27%2F%3E%3Crect%20x%3D%27623%27%20y%3D%274%27%20width%3D%274%27%20height%3D%279%27%2F%3E%3Crect%20x%3D%27619%27%20y%3D%277%27%20width%3D%2712%27%20height%3D%273%27%2F%3E%20%3Cpolygon%20points%3D%27690%2C160%20690%2C44%20740%2C32%20740%2C160%27%2F%3E%3Crect%20x%3D%27712%27%20y%3D%2716%27%20width%3D%274%27%20height%3D%2716%27%2F%3E%20%3Crect%20x%3D%27760%27%20y%3D%2784%27%20width%3D%2742%27%20height%3D%2776%27%2F%3E%20%3Crect%20x%3D%27820%27%20y%3D%2758%27%20width%3D%2752%27%20height%3D%27102%27%2F%3E%3Crect%20x%3D%27832%27%20y%3D%2744%27%20width%3D%2712%27%20height%3D%2714%27%2F%3E%3Crect%20x%3D%27848%27%20y%3D%2744%27%20width%3D%2712%27%20height%3D%2714%27%2F%3E%20%3Crect%20x%3D%27892%27%20y%3D%2796%27%20width%3D%2742%27%20height%3D%2764%27%2F%3E%20%3Cpolygon%20points%3D%27956%2C160%20956%2C50%201012%2C38%201012%2C160%27%2F%3E%3Crect%20x%3D%27982%27%20y%3D%2722%27%20width%3D%274%27%20height%3D%2716%27%2F%3E%20%3Crect%20x%3D%271034%27%20y%3D%2790%27%20width%3D%2746%27%20height%3D%2770%27%2F%3E%20%3Crect%20x%3D%271100%27%20y%3D%2764%27%20width%3D%2754%27%20height%3D%2796%27%2F%3E%3Crect%20x%3D%271118%27%20y%3D%2750%27%20width%3D%2718%27%20height%3D%2714%27%2F%3E%20%3Crect%20x%3D%271168%27%20y%3D%27104%27%20width%3D%2734%27%20height%3D%2756%27%2F%3E%20%3C%2Fg%3E%20%3C%2Fsvg%3E") no-repeat center bottom;background-size:cover;opacity:.9;pointer-events:none;}.nc-mega-grafik-t{position:relative;z-index:1;font-family:Manrope,sans-serif;font-size:15px;font-weight:800;color:#FAF9F5;margin:0 0 6px;}.nc-mega-grafik-d{position:relative;z-index:1;font-family:Karla,sans-serif;font-size:13px;line-height:1.5;color:rgba(255,255,255,.72);margin:0;}@media(max-width:700px){.nc-sec--hero::after,.nc-sec--cta::after,.nc-abschluss-cta::after{height:110px;}}
/* nc-toc-kontrast */
body .nc-toc, body .nc-toc-inline, body .kb-table-of-content-nav {background: #FFFFFF !important;border: 1.5px solid #E2E8F0 !important;border-radius: 18px !important;padding: 24px 28px !important;margin: 32px 0 40px !important;box-shadow: 0 10px 32px rgba(8,20,34,0.04) !important;position: relative !important;overflow: hidden !important;display: block !important;}body .nc-toc::before {content: "" !important;position: absolute !important;top: 0 !important; left: 0 !important;width: 100% !important; height: 3.5px !important;background: linear-gradient(90deg, #48BB78, #38A169, #1A365D) !important;}body .nc-toc .nc-toc-title {font-family: "Plus Jakarta Sans", sans-serif !important;font-size: 11.5px !important; font-weight: 800 !important;letter-spacing: 0.15em !important; text-transform: uppercase !important;color: #1A365D !important; margin: 0 0 16px !important;display: flex !important; align-items: center !important; gap: 8px !important;}body .nc-toc ol {list-style: none !important; margin: 0 !important; padding: 0 !important;display: grid !important; grid-template-columns: 1fr 1fr !important; gap: 6px 24px !important;}@media (max-width: 768px) {body .nc-toc ol { grid-template-columns: 1fr !important; }}body .nc-toc li { margin: 0 !important; padding: 0 !important; }body .nc-toc a {display: flex !important; align-items: center !important;padding: 8px 12px 8px 14px !important;border-left: 2.5px solid #E2E8F0 !important;border-radius: 0 8px 8px 0 !important;font-size: 13.5px !important; font-weight: 600 !important; line-height: 1.4 !important;color: #475569 !important; text-decoration: none !important;background: transparent !important;transition: all 0.2s ease !important;}body .nc-toc a:hover {color: #081422 !important; border-left-color: #48BB78 !important;background: rgba(72,187,120,0.06) !important;transform: translateX(4px) !important;}body .nc-toc a.is-active {color: #081422 !important; font-weight: 700 !important;border-left-color: #48BB78 !important;background: rgba(72,187,120,0.08) !important;}
/* nc-hero-instant-master-css */
/* 1. Unconditional Display & Opacity for all Hero Elements */
    .nc-hero-parallax-bg,
    .nc-hero-parallax-bg .wp-block-group__inner-container,
    .nc-hero-cols,
    .nc-hero-col-left,
    .nc-hero-col-right,
    .nc-hero-col-left *,
    .nc-hero-col-right *,
    .nc-hero-parallax-bg .ncx-reveal,
    .nc-hero-parallax-bg .nc-reveal,
    .nc-hero-parallax-bg [data-nc-reveal] {
        opacity: 1 !important;
        visibility: visible !important;
        transform: none !important;
        filter: none !important;
        transition: none !important;
        display: flex;
    }

    /* 2. Proper Flow & Sizing */
    .nc-hero-parallax-bg {
        display: flex !important;
        min-height: calc(100vh - 90px) !important;
        padding-top: 100px !important;
        padding-bottom: 90px !important;
        align-items: center !important;
        position: relative !important;
        overflow: hidden !important;
        background: linear-gradient(135deg, #0A192F 0%, #10263D 50%, #1A365D 100%) !important;
        box-sizing: border-box !important;
    }

    .nc-hero-cols {
        display: grid !important;
        grid-template-columns: 1.3fr 0.7fr !important;
        gap: 50px !important;
        align-items: center !important;
        max-width: 1240px !important;
        width: 100% !important;
        margin: 0 auto !important;
        padding: 0 24px !important;
        position: relative !important;
        z-index: 10 !important;
        box-sizing: border-box !important;
    }

    .nc-hero-col-left {
        display: flex !important;
        flex-direction: column !important;
        align-items: flex-start !important;
        max-width: 760px !important;
    }

    /* 3. Headline & Subline Styling */
    .nc-hero-col-left h1 {
        display: block !important;
        font-family: 'Plus Jakarta Sans', sans-serif !important;
        font-size: clamp(34px, 4.4vw, 56px) !important;
        font-weight: 800 !important;
        line-height: 1.15 !important;
        letter-spacing: -0.025em !important;
        color: #FFFFFF !important;
        margin: 0 0 22px 0 !important;
    }

    .nc-hero-col-left h1 span {
        color: #48BB78 !important;
        display: inline-block !important;
    }

    .nc-hero-col-left p {
        display: block !important;
        font-size: clamp(16px, 1.6vw, 18.5px) !important;
        line-height: 1.65 !important;
        color: #E2E8F0 !important;
        margin: 0 0 32px 0 !important;
    }

    /* 4. CTA Button & Trust Badges */
    .nc-hero-btn-primary {
        display: inline-flex !important;
        align-items: center !important;
        gap: 12px !important;
        background: #48BB78 !important;
        color: #081422 !important;
        font-family: 'Plus Jakarta Sans', sans-serif !important;
        font-weight: 800 !important;
        font-size: 16px !important;
        padding: 18px 36px !important;
        border-radius: 9999px !important;
        text-decoration: none !important;
        box-shadow: 0 10px 28px rgba(72, 187, 120, 0.45) !important;
        transition: all 0.25s ease !important;
    }

    .nc-hero-btn-primary:hover {
        background: #38A169 !important;
        transform: translateY(-2px) !important;
        box-shadow: 0 14px 36px rgba(72, 187, 120, 0.55) !important;
    }

    /* 5. Right Column Glass Card */
    .nc-hero-col-right {
        display: flex !important;
        justify-content: center !important;
        align-items: center !important;
    }

    .nc-hero-col-right > div {
        display: block !important;
        background: rgba(16, 38, 61, 0.85) !important;
        border: 1.5px solid rgba(255, 255, 255, 0.2) !important;
        border-radius: 24px !important;
        padding: 36px 30px !important;
        backdrop-filter: blur(16px) !important;
        -webkit-backdrop-filter: blur(16px) !important;
        box-shadow: 0 24px 60px rgba(0, 0, 0, 0.45) !important;
        width: 100% !important;
        max-width: 340px !important;
        color: #FFFFFF !important;
        text-align: center !important;
    }

    @media (max-width: 991px) {
        .nc-hero-cols {
            grid-template-columns: 1fr !important;
            gap: 40px !important;
            text-align: center !important;
        }
        .nc-hero-col-left {
            align-items: center !important;
        }
        .nc-hero-btn-primary {
            width: 100% !important;
            justify-content: center !important;
        }
    }
