﻿body {
            background-color: #faf8ff;
            color: #191b23;
            -webkit-font-smoothing: antialiased;
            scroll-behavior: smooth;
        }

        .text-glow {
            text-shadow: 0 2px 20px rgba(0,0,0,0.6);
        }

        @keyframes ken-burns {
            0% { transform: scale(1); }
            100% { transform: scale(1.1); }
        }

        .ken-burns-bg {
            animation: ken-burns 20s ease-out infinite alternate;
        }

        

        /* Floating elements keys */
        @keyframes float-shape-1 {
            0%, 100% { transform: translateY(0px) rotate(0deg); }
            50% { transform: translateY(-15px) rotate(3deg); }
        }
        @keyframes float-shape-2 {
            0%, 100% { transform: translateY(0px) rotate(0deg); }
            50% { transform: translateY(-10px) rotate(-3deg); }
        }

        .floating-element-1 {
            animation: float-shape-1 7s ease-in-out infinite;
        }
        .floating-element-2 {
            animation: float-shape-2 9s ease-in-out infinite alternate;
        }

        /* Legal cards styles */
        .clause-hover {
            border: 1px solid transparent;
            transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
        }
        .clause-hover:hover {
            transform: translateY(-2px);
            border-color: rgba(0, 86, 210, 0.15);
            box-shadow: 0 10px 30px -10px rgba(0, 86, 210, 0.08);
            background-color: rgba(255, 255, 255, 0.7);
        }
        .dark .clause-hover:hover {
            border-color: rgba(255, 255, 255, 0.1);
            background-color: rgba(17, 24, 39, 0.5);
            box-shadow: 0 10px 30px -10px rgba(0, 0, 0, 0.5);
        }

        /* Scroll reveal class setup */
        .legal-section {
            opacity: 0;
            transform: translateY(20px);
            transition: opacity 0.6s ease-out, transform 0.6s ease-out;
        }
        .legal-section.visible {
            opacity: 1;
            transform: translateY(0);
        }

        /* Sidebar scroll active item highlight */
        .active-spy {
            color: #0040a1 !important;
            border-left-color: #0040a1 !important;
            font-weight: 700;
            padding-left: 1.25rem !important;
        }
        .dark .active-spy {
            color: #b2c5ff !important;
            border-left-color: #b2c5ff !important;
        }

        /* Pulse highlights */
        .badge-pulse {
            box-shadow: 0 0 0 0 rgba(0, 86, 210, 0.4);
            animation: pulse-ring 2s infinite;
        }
        @keyframes pulse-ring {
            0% { box-shadow: 0 0 0 0 rgba(0, 86, 210, 0.4); }
            70% { box-shadow: 0 0 0 8px rgba(0, 86, 210, 0); }
            100% { box-shadow: 0 0 0 0 rgba(0, 86, 210, 0); }
        }

        /* Dark Mode Overrides */
        .dark body {
            background-color: #0b0f19;
            color: #f1f5f9;
        }
        .dark .bg-white, 
        .dark .bg-surface-container-lowest {
            background-color: #111827 !important;
        }
        .dark .bg-surface-container-low {
            background-color: #0f172a !important;
        }
        .dark .bg-surface-container-high {
            background-color: #1e293b !important;
        }
        .dark .text-navy-elite {
            color: #f1f5f9 !important;
        }
        .dark .text-on-surface-variant {
            color: #94a3b8 !important;
        }
        .dark .border-outline-variant\/30, 
        .dark .border-border-subtle,
        .dark .border-outline-variant {
            border-color: rgba(255, 255, 255, 0.1) !important;
        }
        .dark 
        .dark .bg-on-primary-fixed {
            background-color: #111827 !important;
        }

        @media (prefers-reduced-motion: reduce) {
            .legal-section {
                opacity: 1 !important;
                transform: none !important;
                transition: none !important;
            }
            .floating-element-1, .floating-element-2, .ken-burns-bg {
                animation: none !important;
            }
        }
/* Standard Glass Nav Styling */
.glass-nav {
    box-shadow: 0 2px 20px rgba(0,0,0,0.08) !important;
    backdrop-filter: blur(12px) !important;
    -webkit-backdrop-filter: blur(12px) !important;
    background-color: rgba(255, 255, 255, 1) !important;
}
.dark .glass-nav {
    box-shadow: 0 2px 20px rgba(0,0,0,0.08) !important;
    background-color: rgba(15, 23, 42, 0.98) !important;
    border-bottom-color: rgba(255, 255, 255, 0.1) !important;
}
