/* Dark Professional Background Images CSS */

/* Dark theme with moving materials */
.hero-bg-1 {
    background: linear-gradient(135deg, #0f0f23 0%, #1a1a2e 50%, #16213e 100%);
    position: relative;
    overflow: hidden;
}

.hero-bg-1::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: 
        radial-gradient(circle at 20% 50%, rgba(79, 172, 254, 0.1) 0%, transparent 50%),
        radial-gradient(circle at 80% 20%, rgba(255, 255, 255, 0.05) 0%, transparent 50%),
        radial-gradient(circle at 40% 80%, rgba(142, 45, 226, 0.08) 0%, transparent 50%);
    animation: floatBackground 20s ease-in-out infinite;
}

.hero-bg-1::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-image: 
        radial-gradient(2px 2px at 20% 30%, rgba(255, 255, 255, 0.2), transparent),
        radial-gradient(2px 2px at 40% 70%, rgba(79, 172, 254, 0.3), transparent),
        radial-gradient(1px 1px at 90% 40%, rgba(255, 255, 255, 0.3), transparent),
        radial-gradient(1px 1px at 50% 60%, rgba(142, 45, 226, 0.2), transparent),
        radial-gradient(2px 2px at 70% 10%, rgba(255, 255, 255, 0.2), transparent);
    background-size: 200px 200px, 300px 300px, 150px 150px, 250px 250px, 180px 180px;
    animation: moveStars 25s linear infinite;
}

.hero-bg-2 {
    background: linear-gradient(45deg, #0d1b2a 0%, #1b263b 50%, #2d3748 100%);
    position: relative;
    overflow: hidden;
}

.hero-bg-2::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: 
        linear-gradient(45deg, transparent 40%, rgba(79, 172, 254, 0.08) 50%, transparent 60%),
        radial-gradient(circle at 30% 70%, rgba(142, 45, 226, 0.1) 0%, transparent 50%),
        radial-gradient(circle at 70% 30%, rgba(255, 255, 255, 0.03) 0%, transparent 50%);
    animation: floatBackground 15s ease-in-out infinite reverse;
}

.hero-bg-2::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-image: 
        radial-gradient(1px 1px at 25% 20%, rgba(255, 255, 255, 0.3), transparent),
        radial-gradient(2px 2px at 60% 80%, rgba(79, 172, 254, 0.4), transparent),
        radial-gradient(1px 1px at 80% 50%, rgba(255, 255, 255, 0.2), transparent),
        radial-gradient(2px 2px at 10% 70%, rgba(142, 45, 226, 0.3), transparent),
        radial-gradient(1px 1px at 90% 20%, rgba(255, 255, 255, 0.4), transparent);
    background-size: 180px 180px, 220px 220px, 160px 160px, 200px 200px, 140px 140px;
    animation: moveStars 30s linear infinite reverse;
}

/* Keyframe animations for moving materials */
@keyframes floatBackground {
    0%, 100% { transform: translate(0, 0) rotate(0deg); }
    25% { transform: translate(-20px, -10px) rotate(1deg); }
    50% { transform: translate(10px, -20px) rotate(-1deg); }
    75% { transform: translate(-10px, 10px) rotate(0.5deg); }
}

@keyframes moveStars {
    0% { transform: translate(0, 0); }
    100% { transform: translate(-200px, -200px); }
}

.about-bg {
    background: linear-gradient(135deg, #f5f7fa 0%, #c3cfe2 100%);
    position: relative;
}

.about-bg::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: 
        repeating-linear-gradient(
            45deg,
            transparent,
            transparent 2px,
            rgba(44, 90, 160, 0.03) 2px,
            rgba(44, 90, 160, 0.03) 4px
        );
}

/* Professional geometric patterns */
.pattern-bg {
    background-color: #f8fafc;
    background-image: 
        linear-gradient(45deg, rgba(44, 90, 160, 0.1) 25%, transparent 25%), 
        linear-gradient(-45deg, rgba(44, 90, 160, 0.1) 25%, transparent 25%), 
        linear-gradient(45deg, transparent 75%, rgba(44, 90, 160, 0.1) 75%), 
        linear-gradient(-45deg, transparent 75%, rgba(44, 90, 160, 0.1) 75%);
    background-size: 20px 20px;
    background-position: 0 0, 0 10px, 10px -10px, -10px 0px;
}