/* Custom cursor */
.cursor-dot {
    width: 5px;
    height: 5px;
    background: #0066ff;
    border-radius: 50%;
    position: fixed;
    pointer-events: none;
    z-index: 9999;
    transition: transform 0.1s ease;
}

/* Smooth scroll */
html {
    scroll-behavior: smooth;
}

/* Code window animation */
@keyframes slideIn {
    from { 
        opacity: 0; 
        transform: translateY(20px); 
    }
    to { 
        opacity: 1; 
        transform: translateY(0); 
    }
}

.code-window {
    animation: slideIn 0.8s ease-out;
}

/* Service card hover line */
.service-card::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 3px;
    height: 0;
    background: #0066ff;
    transition: height 0.3s ease;
}

.service-card:hover::before {
    height: 100%;
}

/* Float elements parallax will be handled by JS */
.float-element {
    transition: transform 0.1s ease-out;
}
