/* Grid Overlay for Layout */
.grid-background {
    position: relative;
    overflow: hidden;
}

.grid-background::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-image: linear-gradient(rgba(150, 150, 150, 0.2) 1px, transparent 1px),
                      linear-gradient(90deg, rgba(150, 150, 150, 0.2) 1px, transparent 1px);
    background-attachment: local;
    background-size: 40px 40px;
    pointer-events: none;
    z-index: 1;
    opacity: 0.1;
    transition: opacity 1.5s ease-in-out;
}

.grid-background:hover::before {
    background-image: 
        linear-gradient(rgba(200, 200, 200, 0.2) 1px, transparent 1px),
        linear-gradient(90deg, rgba(200, 200, 200, 0.2) 1px, transparent 1px),
        linear-gradient(0deg, rgba(200, 200, 200, 0.1) 1px, transparent 1px);
    box-shadow: 0 0 30px rgba(255, 255, 255, 0.2);
    opacity: 0.15;
    transition-delay: 0.1s;
}

.grid-background > * {
    position: relative;
    z-index: 2;
}
