/* 
 * Geometric Patterns for Psychedelic Header
 * Creates a set of shapes and patterns for the header background
 */

.geometric-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
    pointer-events: none;
}

/* Circles pattern */
.circle-pattern {
    position: absolute;
    width: 30%;
    height: 30%;
    border: 2px solid rgba(178, 0, 145, 0.4);
    border-radius: 50%;
    opacity: 0.25;
    animation: rotatePattern 20s linear infinite;
}

.circle-pattern:nth-child(1) {
    top: 10%;
    left: 15%;
    width: 25%;
    height: 25%;
}

.circle-pattern:nth-child(2) {
    top: 35%;
    right: 10%;
    width: 15%;
    height: 15%;
    animation-duration: 25s;
    animation-direction: reverse;
}

.circle-pattern:nth-child(3) {
    bottom: 10%;
    left: 30%;
    width: 20%;
    height: 20%;
    animation-duration: 30s;
}

/* Hexagon pattern */
.hexagon-pattern {
    position: absolute;
    width: 120px;
    height: 70px;
    background: rgba(178, 0, 145, 0.15);
    clip-path: polygon(25% 0%, 75% 0%, 100% 50%, 75% 100%, 25% 100%, 0% 50%);
    opacity: 0.3;
}

.hexagon-pattern:nth-child(4) {
    top: 20%;
    right: 25%;
    transform: rotate(25deg);
}

.hexagon-pattern:nth-child(5) {
    bottom: 25%;
    left: 10%;
    transform: rotate(-15deg);
    animation: floatPattern 10s ease-in-out infinite alternate;
}

/* Triangle pattern */
.triangle-pattern {
    position: absolute;
    width: 0;
    height: 0;
    border-left: 50px solid transparent;
    border-right: 50px solid transparent;
    border-bottom: 85px solid rgba(178, 0, 145, 0.2);
    opacity: 0.35;
}

.triangle-pattern:nth-child(6) {
    top: 15%;
    right: 10%;
    transform: rotate(15deg);
    animation: pulsePattern 8s ease-in-out infinite;
}

.triangle-pattern:nth-child(7) {
    bottom: 20%;
    right: 15%;
    transform: rotate(45deg);
    animation: pulsePattern 12s ease-in-out infinite reverse;
}

/* Square pattern */
.square-pattern {
    position: absolute;
    width: 80px;
    height: 80px;
    background: rgba(178, 0, 145, 0.15);
    transform: rotate(45deg);
    opacity: 0.3;
}

.square-pattern:nth-child(8) {
    top: 40%;
    left: 15%;
    animation: rotatePattern 15s linear infinite;
}

.square-pattern:nth-child(9) {
    bottom: 30%;
    right: 25%;
    width: 60px;
    height: 60px;
    animation: rotatePattern 20s linear infinite reverse;
}

/* Animation keyframes */
@keyframes rotatePattern {
    0% {
        transform: rotate(0deg);
    }
    100% {
        transform: rotate(360deg);
    }
}

@keyframes floatPattern {
    0% {
        transform: translateY(0) rotate(-15deg);
    }
    100% {
        transform: translateY(-15px) rotate(-5deg);
    }
}

@keyframes pulsePattern {
    0% {
        opacity: 0.2;
        transform: scale(0.95) rotate(15deg);
    }
    50% {
        opacity: 0.4;
        transform: scale(1.05) rotate(20deg);
    }
    100% {
        opacity: 0.2;
        transform: scale(0.95) rotate(15deg);
    }
}