        body {
            font-family: 'Inter', sans-serif;
            background: #000;
            color: #fff;
            overflow-x: hidden;
        }

        .gradient-text {
            text-shadow: none !important;
        }

        /* ─── PAGE HEADER ─── */
        .page-header {
            min-height: 100vh;
            display: flex;
            flex-direction: column;
            align-items: center;
            justify-content: center;
            text-align: center;
            padding: 84px 2rem 2rem;
            position: relative;
        }

        .page-header::before {
            content: '';
            position: absolute;
            inset: 0;
            background: radial-gradient(ellipse 58% 44% at 50% 56%,
                rgba(0,0,0,0.95) 0%,
                rgba(0,0,0,0.85) 28%,
                rgba(0,0,0,0.60) 58%,
                rgba(0,0,0,0.25) 80%,
                transparent 100%);
            pointer-events: none;
            z-index: 0;
        }

        .page-header h1,
        .page-header p {
            position: relative;
            z-index: 1;
        }

        .page-header h1 {
            font-family: 'Orbitron', sans-serif;
            font-size: clamp(2.5rem, 6vw, 4.5rem);
            font-weight: 700;
            letter-spacing: 2px;
            margin-bottom: 1.2rem;
            color: #ffffff;
            animation: glow 3s ease-in-out infinite;
        }


        .page-header p {
            font-size: 1.15rem;
            color: rgba(255, 255, 255, 0.85);
            text-shadow: 0 2px 8px rgba(0,0,0,0.9), 0 4px 16px rgba(0,0,0,0.7);
            max-width: 580px;
            margin: 0 auto;
            line-height: 1.7;
        }

        /* ─── CARDS HOUSING ─── */
        .cards-housing {
            width: 100%;
            margin: 0;
            padding: 0;
            position: relative;
        }

        /* Full-page force field — fixed behind everything, always visible */
        .ff-container {
            position: fixed;
            inset: 0;
            z-index: 0;
            pointer-events: none;
        }

        .content-wrapper {
            position: relative;
            z-index: 1;
        }

        /* ─── STACKING CARDS ─── */

        /*
         * .stacking-section  — tall scroll container; height set by JS
         * .cards-viewport     — sticky panel pinned below the nav; clips cards flying in from below
         * .stacking-card      — absolute inside viewport; JS drives translateY + scale
         */

        .stacking-section {
            /* height injected by JS: N × vpH */
        }

        .cards-viewport {
            position: sticky;
            top: 84px;
            height: calc(100vh - 84px);
            overflow: hidden; /* clips cards that are below the viewport */
        }

        .stacking-card {
            position: absolute;
            top: 1.5rem;
            left: 1.5rem;
            right: 1.5rem;
            max-width: 980px;
            margin: 0 auto;
            border-radius: 24px;
            overflow: hidden;
            transform-origin: top center;
            will-change: transform, filter;
        }

        /* Per-card colour themes */
        .card--va  { background: #000000; border: 1px solid rgba(20,184,166,0.25); z-index: 1; }
        .card--ai  { background: #000000; border: 1px solid rgba(255,215,0,0.25);  z-index: 2; }
        .card--sys { background: #000000; border: 1px solid rgba(0,255,255,0.28);  z-index: 3; }

        /* Accent top bar */
        .sc-accent-bar { height: 4px; width: 100%; }
        .card--va  .sc-accent-bar { background: linear-gradient(90deg, #14B8A6, #00FFFF); }
        .card--ai  .sc-accent-bar { background: linear-gradient(90deg, #FFD700, #FFFF00); }
        .card--sys .sc-accent-bar { background: linear-gradient(90deg, #14B8A6, #00FFFF, #FFFF00); }

        .sc-inner { padding: 2.2rem 2.8rem 2.5rem; }

        /* Header row */
        .sc-header {
            display: flex;
            align-items: flex-start;
            justify-content: space-between;
            margin-bottom: 1.8rem;
            padding-bottom: 1.4rem;
            border-bottom: 1px solid rgba(255,255,255,0.06);
        }

        .sc-meta { flex: 1; }

        .sc-badge {
            display: inline-block;
            font-size: 0.68rem;
            font-weight: 700;
            letter-spacing: 2.5px;
            text-transform: uppercase;
            border-radius: 20px;
            padding: 0.2rem 0.85rem;
            margin-bottom: 0.55rem;
        }
        .card--va  .sc-badge { color: #14B8A6; background: rgba(20,184,166,0.12); border: 1px solid rgba(20,184,166,0.3); }
        .card--ai  .sc-badge { color: #FFD700;  background: rgba(255,215,0,0.10);  border: 1px solid rgba(255,215,0,0.3);  }
        .card--sys .sc-badge { color: #00FFFF;  background: rgba(0,255,255,0.10);  border: 1px solid rgba(0,255,255,0.3);  }

        .sc-header h2 {
            font-family: 'Orbitron', sans-serif;
            font-size: 1.5rem;
            font-weight: 700;
            letter-spacing: 1px;
            line-height: 1.2;
        }
        .card--va  .sc-header h2 { color: #ffffff; text-shadow: 0 2px 8px rgba(0,0,0,0.9), 0 4px 16px rgba(0,0,0,0.7); }
        .card--ai  .sc-header h2 { color: #ffffff; text-shadow: 0 2px 8px rgba(0,0,0,0.9), 0 4px 16px rgba(0,0,0,0.7); }
        .card--sys .sc-header h2 { color: #ffffff; text-shadow: 0 2px 8px rgba(0,0,0,0.9), 0 4px 16px rgba(0,0,0,0.7); }

        .sc-number {
            font-family: 'Orbitron', sans-serif;
            font-size: 4rem;
            font-weight: 900;
            line-height: 1;
            flex-shrink: 0;
            user-select: none;
        }
        .card--va  .sc-number { color: rgba(20,184,166,0.10); }
        .card--ai  .sc-number { color: rgba(255,215,0,0.10);  }
        .card--sys .sc-number { color: rgba(0,255,255,0.10);  }

        /* Body: two columns */
        .sc-body {
            display: grid;
            grid-template-columns: 2fr 3fr;
            gap: 2.5rem;
            align-items: start;
        }

        /* Left: description + highlights */
        .sc-description {
            background: rgba(255,255,255,0.04);
            border-radius: 12px;
            padding: 1.1rem 1.3rem 1.1rem 1.5rem;
            color: rgba(255,255,255,0.82);
            font-size: 0.93rem;
            line-height: 1.75;
            margin-bottom: 1.2rem;
            position: relative;
        }
        .sc-description::before {
            content: '"';
            position: absolute;
            top: -0.25rem;
            left: 0.85rem;
            font-size: 2.2rem;
            font-family: Georgia, serif;
            line-height: 1;
            opacity: 0.22;
        }
        .card--va  .sc-description { border-left: 2px solid rgba(20,184,166,0.5); }
        .card--ai  .sc-description { border-left: 2px solid rgba(255,215,0,0.5);  }
        .card--sys .sc-description { border-left: 2px solid rgba(0,255,255,0.5);  }
        .card--va  .sc-description::before { color: #14B8A6; }
        .card--ai  .sc-description::before { color: #FFD700;  }
        .card--sys .sc-description::before { color: #00FFFF;  }

        .sc-highlights {
            border-radius: 12px;
            padding: 1.1rem 1.3rem;
        }
        .card--va  .sc-highlights { background: rgba(20,184,166,0.05);  border: 1px solid rgba(20,184,166,0.18); }
        .card--ai  .sc-highlights { background: rgba(255,215,0,0.04);   border: 1px solid rgba(255,215,0,0.18);  }
        .card--sys .sc-highlights { background: rgba(0,255,255,0.04);   border: 1px solid rgba(0,255,255,0.18);  }

        .sc-highlights-title {
            font-size: 0.7rem;
            font-weight: 700;
            text-transform: uppercase;
            letter-spacing: 2px;
            margin-bottom: 0.8rem;
            display: flex;
            align-items: center;
            gap: 0.4rem;
        }
        .sc-highlights-title::before { content: '★'; color: #FFD700; font-size: 0.62rem; }
        .card--va  .sc-highlights-title { color: #14B8A6; }
        .card--ai  .sc-highlights-title { color: #FFD700;  }
        .card--sys .sc-highlights-title { color: #00FFFF;  }

        .sc-highlights ul {
            list-style: none;
            display: grid;
            grid-template-columns: 1fr 1fr;
            gap: 0.18rem 0.5rem;
        }
        .sc-highlights li {
            color: rgba(255,255,255,0.7);
            font-size: 0.83rem;
            padding: 0.22rem 0 0.22rem 1.15rem;
            position: relative;
            line-height: 1.4;
        }
        .sc-highlights li::before {
            content: '✓';
            position: absolute;
            left: 0;
            top: 0.22rem;
            font-size: 0.7rem;
        }
        .card--va  .sc-highlights li::before { color: #14B8A6; }
        .card--ai  .sc-highlights li::before { color: #FFD700;  }
        .card--sys .sc-highlights li::before { color: #00FFFF;  }

        .sc-land-expand {
            background: linear-gradient(135deg, rgba(255,215,0,0.06), rgba(20,184,166,0.04));
            border: 1px solid rgba(255,215,0,0.22);
            border-radius: 12px;
            padding: 1.1rem 1.3rem;
            margin-top: 1.2rem;
            color: rgba(255,255,255,0.8);
            font-size: 0.88rem;
            line-height: 1.75;
        }
        .sc-land-expand strong { color: #FFD700; }

        /* Right: feature list */
        .sc-list-title {
            font-family: 'Orbitron', sans-serif;
            font-size: 0.7rem;
            font-weight: 700;
            text-transform: uppercase;
            letter-spacing: 2px;
            margin-bottom: 0.95rem;
            display: flex;
            align-items: center;
            gap: 0.5rem;
        }
        .sc-list-title::after { content: ''; flex: 1; height: 1px; }
        .card--va  .sc-list-title { color: #14B8A6; }
        .card--va  .sc-list-title::after { background: linear-gradient(90deg, rgba(20,184,166,0.4), transparent); }
        .card--ai  .sc-list-title { color: #FFD700;  }
        .card--ai  .sc-list-title::after { background: linear-gradient(90deg, rgba(255,215,0,0.4),  transparent); }
        .card--sys .sc-list-title { color: #00FFFF;  }
        .card--sys .sc-list-title::after { background: linear-gradient(90deg, rgba(0,255,255,0.4),  transparent); }

        .sc-list {
            list-style: none;
            display: grid;
            grid-template-columns: 1fr 1fr;
            gap: 0.12rem 0.75rem;
        }
        .sc-list li {
            color: rgba(255,255,255,0.85);
            font-size: 0.865rem;
            padding: 0.28rem 0 0.28rem 1.35rem;
            position: relative;
            line-height: 1.4;
        }
        .sc-list li::before {
            content: '▸';
            position: absolute;
            left: 0;
            top: 0.28rem;
            font-size: 0.72rem;
        }
        .card--va  .sc-list li::before { color: #14B8A6; }
        .card--ai  .sc-list li::before { color: #FFD700;  }
        .card--sys .sc-list li::before { color: #00FFFF;  }

        /* Pricing button — secondary (cards 1 & 2) */
        .sc-pricing-btn {
            display: block;
            width: fit-content;
            margin: 3rem auto 0;
            padding: 0.7rem 1.6rem;
            font-family: 'Orbitron', sans-serif;
            font-size: 0.7rem;
            font-weight: 700;
            letter-spacing: 2px;
            text-transform: uppercase;
            text-decoration: none;
            border-radius: 8px;
            border: 0.5px solid rgba(0, 255, 255, 0.6);
            color: #00FFFF;
            background: transparent;
            transition: all 0.3s ease;
        }
        .sc-pricing-btn:hover {
            background: rgba(0, 255, 255, 0.06);
            box-shadow: 0 0 20px rgba(0, 255, 255, 0.3);
            transform: translateY(-3px);
        }

        /* Pricing button — yellow (card 2) */
        .card--ai .sc-pricing-btn {
            border-color: #FFD700;
            color: #FFD700;
        }
        .card--ai .sc-pricing-btn:hover {
            background: rgba(255, 215, 0, 0.06);
            box-shadow: 0 0 20px rgba(255, 215, 0, 0.3);
        }

        /* Pricing button — primary (card 3) */
        .sc-pricing-btn--primary {
            border: none;
            color: #000000;
            background: linear-gradient(135deg, #FFFF00, #00FFFF);
            box-shadow: 0 0 15px rgba(0, 255, 255, 0.2);
        }
        .sc-pricing-btn--primary:hover {
            background: linear-gradient(135deg, #FFFF00, #00FFFF);
            box-shadow: 0 0 25px rgba(0, 255, 255, 0.5), 0 0 50px rgba(255, 255, 0, 0.2);
        }

        /* ─── FAQ TRANSITION ─── */
        /* Extend the overlay above and below the FAQ so it blends with the dots background */
        .faq .img-overlay {
            top: -12rem;
            bottom: -8rem;
            background: linear-gradient(
                to bottom,
                transparent 0%,
                rgba(0, 0, 0, 0.4) 10%,
                rgba(0, 0, 0, 0.6) 20%,
                rgba(0, 0, 0, 0.6) 80%,
                rgba(0, 0, 0, 0.4) 90%,
                transparent 100%
            );
        }

        /* Footer fix */
        .site-footer { margin-top: 0 !important; }

        /* ─── RESPONSIVE ─── */
        @media (max-width: 768px) {
            .page-header { min-height: auto; justify-content: flex-start; padding: 100px 1rem 2.5rem; }
            .cards-housing { width: calc(100% - 1rem); border-radius: 20px; }
            .sc-body { grid-template-columns: 1fr; gap: 1.4rem; }
            .sc-inner { padding: 1.4rem; }
            .sc-header h2 { font-size: 1.2rem; }
            .sc-number { font-size: 2.6rem; }

            /* ── Uniform section spacing ── */
            .section-title { font-size: 1.6rem; margin-bottom: 2rem; padding-left: 1rem; padding-right: 1rem; }
        }
        @media (max-width: 480px) {
            .sc-list,
            .sc-highlights ul { grid-template-columns: 1fr; }
            .cards-viewport { top: 72px; height: calc(100vh - 72px); }
            .stacking-card { left: 0.75rem; right: 0.75rem; }
        }

        .section-title { text-align: center; font-family: 'Orbitron', sans-serif; font-size: 2.8rem; font-weight: 700; margin-bottom: 5rem; color: #ffffff; position: relative; z-index: 2; animation: glow 3s ease-in-out infinite; }
        .faq { padding: 8rem 0 15rem; }
        .faq-container { max-width: 900px; margin: 0 auto; }
        .faq-item { --pointer-x: 50%; --pointer-y: 50%; --pointer-deg: 45deg; --proximity: 0; --glow-color: #e040fb; position: relative; cursor: pointer; border-radius: 12px; margin-bottom: 1.5rem; }
        .faq-item:nth-child(1) { --glow-color: #e040fb; }
        .faq-item:nth-child(2) { --glow-color: #00e5ff; }
        .faq-item:nth-child(3) { --glow-color: #76ff03; }
        .faq-item:nth-child(4) { --glow-color: #ff3d00; }
        .faq-item:nth-child(5) { --glow-color: #FFD700; }
        .faq-item:nth-child(6) { --glow-color: #ff6d00; }
        .faq-item-inner { position: relative; z-index: 2; background: #000000; border: 0.5px solid rgba(255, 255, 255, 0.15); border-radius: inherit; margin: 1px; overflow: hidden; transition: border-color 0.3s ease; }
        .faq-question { padding: 2rem; background: transparent; cursor: pointer; transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1); display: flex; justify-content: space-between; align-items: center; }
        .faq-question:hover { background: rgba(255, 255, 255, 0.02); }
        .faq-question h3 { font-family: 'Orbitron', sans-serif; font-size: 1.1rem; font-weight: 600; margin: 0; background: linear-gradient(135deg, #ffffff, #00ffff); -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; }
        .faq-toggle { font-size: 1.5rem; color: #14B8A6; transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1); }
        .faq-toggle.active { transform: rotate(180deg); }
        .faq-answer { max-height: 0; overflow: hidden; transition: max-height 0.3s cubic-bezier(0.4, 0, 0.2, 1); }
        .faq-answer.active { max-height: 500px; }
        .faq-answer p { padding: 2rem; color: rgba(255, 255, 255, 0.82); line-height: 1.8; }

        .cta { --pointer-x: 50%; --pointer-y: 50%; --pointer-deg: 45deg; --proximity: 0; --glow-color: #00ffff; position: relative; cursor: pointer; border-radius: 12px; max-width: 900px; margin: 0 auto 10rem; }
        .cta-inner { position: relative; z-index: 2; background: #000000; border: 1px solid rgba(255, 255, 255, 0.08); border-radius: inherit; padding: 5rem 3rem; text-align: center; margin: 1px; }
        .cta h2 { font-family: 'Orbitron', sans-serif; font-size: 2.5rem; font-weight: 700; margin-bottom: 1rem; color: #ffffff; animation: glow 3s ease-in-out infinite; }
        .cta p { color: rgba(255, 255, 255, 0.75); font-size: 1.1rem; line-height: 1.8; margin-bottom: 2rem; text-shadow: 0 2px 8px rgba(0,0,0,0.9), 0 4px 16px rgba(0,0,0,0.7); }
        .cta .btn-primary { display: inline-block; padding: 1.1rem 3rem; border-radius: 8px; font-weight: 700; font-size: 1rem; cursor: pointer; transition: all 0.3s ease; border: none; text-decoration: none; background: linear-gradient(135deg, #FFFF00, #00FFFF); color: #000000; box-shadow: 0 0 15px rgba(0, 255, 255, 0.2); }
        .cta .btn-primary:hover { transform: translateY(-3px); box-shadow: 0 0 25px rgba(0, 255, 255, 0.5), 0 0 50px rgba(255, 255, 0, 0.2); }

        /* ── Mobile FAQ/CTA overrides (MUST come after desktop styles) ── */
        @media (max-width: 768px) {
            .section-title { font-size: 1.6rem; margin-bottom: 2rem; padding-left: 1rem; padding-right: 1rem; }
            .faq { padding: 2.5rem 0; }
            .faq-item { margin-bottom: 0.4rem; }
            .faq-question { padding: 0.75rem 1rem; }
            .faq-question h3 { font-size: 0.85rem; padding-right: 1.5rem; }
            .faq-answer p { padding: 0.5rem 0.75rem; font-size: 0.9rem; }
            .cta { margin-bottom: 2.5rem; }
            .cta-inner { padding: 2.5rem 1rem; }
            .cta h2 { font-size: 1.6rem; }
            .cta p { font-size: 0.95rem; }
        }
