:root {
    --primary-blue: #0047AB; /* Deep Blue */
    --primary-black: #000000; /* Black */
    --accent-light: #D6E0F5; /* Light Lavender/Blue */
    --white: #ffffff;
    --gray-light: #f9f9f9;
    --gray-border: #e0e0e0;
    --text-color: #4a4a4a;
    --text-dark: #222222;
}

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
}

body {
    line-height: 1.6;
    color: var(--text-color);
    background-color: #f4f7fc;
    overflow-x: hidden; /* Prevent horizontal scroll from shapes */
    position: relative;
}

/* Global Animated Backdrop */
body::before {
    content: '';
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
    background: 
        radial-gradient(circle at 10% 20%, rgba(0, 71, 171, 0.05) 0%, transparent 40%),
        radial-gradient(circle at 90% 80%, rgba(214, 224, 245, 0.4) 0%, transparent 40%),
        radial-gradient(circle at 50% 50%, rgba(0, 71, 171, 0.02) 0%, transparent 60%);
    animation: bg-drift 20s ease-in-out infinite alternate;
}

@keyframes bg-drift {
    0% { transform: scale(1); }
    100% { transform: scale(1.1); }
}

.container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 20px;
    position: relative; /* Ensure content sits above background shapes */
    z-index: 2;
}
