        /* =========================================================
           Patrick Select DS v2 Styles (Merged with index1 Layout)
           ========================================================= */
        :root {
            --ps-primary: #0f172a;
            --ps-secondary: #1e293b;
            --ps-accent: #22c55e;
            /* Green */
            --ps-accent2: #16a34a;
            /* Darker Green */
            --ps-bg: #ffffff;
            --ps-surface: #f8fafc;
            --ps-muted: #64748b;
        }

        body {
            font-family: 'Inter', sans-serif;
            background: linear-gradient(135deg, #ffffff 0%, #f8fafc 55%, #ffffff 100%);
            color: var(--ps-primary);
            overflow-x: hidden;
            margin: 0;
            padding: 0;
        }

        /* 3. Integração Visual - Noise Background (Preserved from index1) */
        .bg-noise {
            position: fixed;
            inset: 0;
            z-index: -1;
            background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noiseFilter'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noiseFilter)' opacity='0.04'/%3E%3C/svg%3E");
            pointer-events: none;
        }

        /* TEXT UTILS - High Readability (Updated to v2) */
        .text-reveal-wrapper {
            overflow: hidden;
            display: inline-block;
        }

        .text-reveal-content {
            transform: translateY(110%);
            opacity: 0;
            transition: transform 1.2s cubic-bezier(0.16, 1, 0.3, 1), opacity 1.2s ease;
            display: block;
        }

        .reveal-active .text-reveal-content {
            transform: translateY(0);
            opacity: 1;
        }

        /* TEXT EFFECT: V2 Transparent Stroke */
        .text-transparent-stroke {
            color: transparent;
            -webkit-text-stroke: 2px rgba(15, 23, 42, 0.25);
            transition: all .55s cubic-bezier(0.16, 1, 0.3, 1);
        }

        .text-transparent-stroke:hover {
            color: var(--ps-primary);
            -webkit-text-stroke: 0;
        }

        /* Map old class to new style for compatibility if needed */
        .text-transparent {
            color: transparent;
            -webkit-text-stroke: 2px rgba(15, 23, 42, 0.20);
            transition: all .55s cubic-bezier(0.16, 1, 0.3, 1);
        }

        .text-transparent:hover {
            color: var(--ps-primary);
            -webkit-text-stroke: 0;
        }


        /* Animation Delays */
        .delay-100 {
            transition-delay: 0.10s;
        }

        .delay-200 {
            transition-delay: 0.20s;
        }

        .delay-300 {
            transition-delay: 0.30s;
        }

        .delay-500 {
            transition-delay: 0.50s;
        }

        .delay-700 {
            transition-delay: 0.70s;
        }

        /* GLOW & BEAM (V2 Styles - Green) */
        .glow-accent {
            box-shadow:
                0 0 28px rgba(34, 197, 94, 0.22),
                0 0 60px rgba(34, 197, 94, 0.10);
        }

        .glow-accent-strong {
            box-shadow:
                0 0 38px rgba(34, 197, 94, 0.36),
                0 0 90px rgba(34, 197, 94, 0.16);
        }

        @keyframes spin {
            to {
                transform: rotate(360deg);
            }
        }

        .btn-beam {
            position: relative;
            overflow: hidden;
            border-radius: 9999px;
            isolation: isolate;
        }

        .btn-beam::before {
            content: "";
            position: absolute;
            inset: -2px;
            background: conic-gradient(from 90deg,
                    transparent 0%,
                    rgba(34, 197, 94, 1) 45%,
                    transparent 100%);
            animation: spin 3s linear infinite;
            opacity: 0;
            transition: opacity 0.25s ease;
            z-index: 0;
        }

        .btn-beam:hover::before {
            opacity: 1;
        }

        /* HERO VIDEO STYLES (Preserved from index1) */
        .hero-container {
            position: relative;
            width: 100%;
            overflow-x: hidden;
            /* Update background to match v2 aesthetics slightly better, lighter/cleaner */
            background: linear-gradient(90deg, #FFFFFF 40%, #f8fafc 100%);
        }



        .video-background-layer {
            position: absolute;
            inset: 0;
            width: 100%;
            height: 100%;
            z-index: 0;
            object-fit: cover;
            filter: saturate(90%) contrast(100%);
            transition: all 0.5s ease;
        }

        .hero-overlay {
            position: absolute;
            inset: 0;
            z-index: 1;
            background: rgba(255, 255, 255, 0.4);
            pointer-events: none;
        }

        .content-wrapper {
            position: relative;
            z-index: 10;
            height: 100%;
            display: flex;
            flex-direction: column;
            justify-content: center;
            padding-top: 100px;
        }

        /* MOBILE ADJUSTMENTS */
        @media (max-width: 768px) {
            .hero-container {
                background: #FFFFFF;
                display: flex;
                flex-direction: column;
            }

            .content-wrapper {
                padding-top: 120px;
                padding-bottom: 60px;
            }

            .video-background-layer {
                filter: saturate(90%) contrast(100%);
            }

            .hero-overlay {
                background: rgba(255, 255, 255, 0.45);
            }
        }

        /* SCROLLBAR */
        ::-webkit-scrollbar {
            width: 8px;
        }

        ::-webkit-scrollbar-track {
            background: #f1f1f1;
        }

        ::-webkit-scrollbar-thumb {
            background: #cbd5e1;
            border-radius: 4px;
        }

        ::-webkit-scrollbar-thumb:hover {
            background: #94a3b8;
        }

        /* PRELOADER */
        #preloader {
            position: fixed;
            inset: 0;
            background: #ffffff;
            z-index: 9999;
            display: flex;
            align-items: center;
            justify-content: center;
            transition: all 0.8s ease;
        }

        .loader-bar {
            width: 120px;
            height: 3px;
            background: #e2e8f0;
            border-radius: 99px;
            overflow: hidden;
            position: relative;
        }

        .loader-progress {
            position: absolute;
            left: 0;
            top: 0;
            height: 100%;
            width: 0%;
            background: #0f172a;
            transition: width 0.3s ease-out;
        }

        /* Marquee Animation */
        @keyframes marquee {
            0% {
                transform: translateX(0);
            }

            100% {
                transform: translateX(-50%);
            }
        }

        .animate-marquee {
            animation: marquee 28s linear infinite;
        }

        /* Flashlight hover */
        .flashlight-card {
            position: relative;
            overflow: hidden;
        }

        .flashlight-card::before {
            content: "";
            position: absolute;
            inset: 0;
            background: radial-gradient(650px circle at var(--mouse-x, 50%) var(--mouse-y, 50%),
                    rgba(34, 197, 94, 0.14),
                    transparent 52%);
            opacity: 0;
            transition: opacity .45s ease;
            pointer-events: none;
            z-index: 10;
        }

        .flashlight-card:hover::before {
            opacity: 1;
        }

        /* TEXT REVEAL ANIMATION */
        .text-reveal-wrapper {
            overflow: hidden;
            display: inline-block;
            vertical-align: bottom;
            /* Fix alignment issues */
        }

        .text-reveal-content {
            transform: translateY(110%);
            opacity: 1;
            /* Opacity handled by transform usually, but ensure visible */
            transition: transform 1.2s cubic-bezier(0.16, 1, 0.3, 1), opacity 1.2s ease;
            display: inline-block;
        }

        .reveal-active .text-reveal-content {
            transform: translateY(0);
            opacity: 1;
        }

        /* Stagger delays for text reveal */
        .delay-200 {
            transition-delay: 0.2s;
        }

        .delay-300 {
            transition-delay: 0.3s;
        }

        /* Prevent CSS transitions from fighting GSAP & force hardware acceleration */
        .reveal-item,
        .reveal-on-scroll {
            will-change: transform, opacity;
            transition-property: background-color, border-color, color, fill, stroke, box-shadow, filter, backdrop-filter !important;
        }

        .text-reveal-content {
            will-change: transform, opacity;
        }
        
        /* Legal Content Typography */
        .legal-content h2 {
            font-family: 'Space Grotesk', sans-serif;
            font-weight: 600;
            font-size: 1.875rem;
            color: #0f172a;
            margin-top: 3.5rem;
            margin-bottom: 1.25rem;
            letter-spacing: -0.01em;
            position: relative;
        }

        .legal-content h2::before {
            content: "";
            position: absolute;
            left: -1.5rem;
            top: 50%;
            transform: translateY(-50%);
            width: 4px;
            height: 16px;
            background: #22c55e;
            border-radius: 4px;
            opacity: 0;
            transition: opacity 0.3s;
        }

        @media (min-width: 768px) {
            .legal-content h2 {
                font-size: 2.25rem;
            }

            .legal-content h2:hover::before {
                opacity: 1;
            }
        }

        .legal-content p {
            font-family: 'Inter', sans-serif;
            font-size: 1.125rem;
            line-height: 1.8;
            color: #475569;
            margin-bottom: 1.5rem;
        }

        .legal-content ul {
            font-family: 'Inter', sans-serif;
            font-size: 1.125rem;
            line-height: 1.8;
            color: #475569;
            margin-bottom: 2rem;
            padding-left: 1.5rem;
            list-style-type: none;
        }

        .legal-content li {
            margin-bottom: 0.75rem;
            position: relative;
        }

        .legal-content li::before {
            content: "•";
            color: #22c55e;
            font-weight: bold;
            position: absolute;
            left: -1.25rem;
        }

        .legal-content strong {
            color: #0f172a;
            font-weight: 600;
        }
