html {
    overflow: hidden;
    overflow-y: hidden;
    overflow-x: hidden;
    scroll-behavior: smooth;
    /* Prevent text selection and copy interactions */
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    /* Prevent touch callouts on mobile */
    -webkit-touch-callout: none;
    /* Prevent tap highlighting */
    -webkit-tap-highlight-color: transparent;
}

@keyframes growVertical {
    0% {
        transform: scaleY(0);
    }
    100% {
        transform: scaleY(1);
    }
}

@keyframes growHorizontal {
    0% {
        transform: scaleX(0);
    }
    100% {
        transform: scaleX(1);
    }
}

@keyframes fadeOut {
    0% {
        opacity: 1;
    }
    100% {
        opacity: 0;
        visibility: hidden;
    }
}

@keyframes fadeIn {
    0% {
        opacity: 0;
    }
    100% {
        opacity: 1;
    }
}

.vertical-grow {
    animation: growVertical 1s ease-in-out forwards;
    transform-origin: top;
    height: 100vh;
}

.horizontal-grow {
    animation: growHorizontal 1s ease-in-out forwards;
    transform-origin: left;
    width: 100vw;
    z-index: 10; /* Above the vertical grow */
}

.fade-out {
    animation: fadeOut 1s ease-in-out forwards;
}

.fade-in {
    animation: fadeIn 1s ease-in-out forwards;
}

#mesh-section {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    z-index: -1; /* Behind other content */
    background: #ffffff; 
}

#components-section {
    position: absolute;
    top: 0;
    left: 0;
    pointer-events: none; /* Disable interactions */
    z-index: -1; /* Behind other content */
    background: #ffffff; 
}

#text-section {
    top: 0;
    left: 0;
    pointer-events: none; /* Disable interactions */
    display: none;
}

#animation-section { /* infront of mesh-section */
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    background: #ffffff; 
    overflow: hidden;
}

.pixelated {
    image-rendering: pixelated;
}


@media (max-width: 768px) {
    #mouse-canvas {
        display: none;
    }
    #mouse-text {
        display: none !important;
    }
}