/* ==========================================================================
   Whiz Software - Main Stylesheet
   ========================================================================== */

/* Base Styles */
body { 
    font-family: 'Inter', sans-serif; 
    background-color: #ffffff; 
    color: #000000; 
    overflow-x: hidden; 
}

::selection { 
    background-color: #000000; 
    color: #ffffff; 
}

/* Accessibility Focus States */
a:focus-visible, 
button:focus-visible {
    outline: 2px solid #000;
    outline-offset: 4px;
}

/* Custom Components */
.sketch-logo-hover .underline-bar {
    width: 0;
    transition: width 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.sketch-logo-hover:hover .underline-bar {
    width: 100%;
}

#mobile-drawer {
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}

/* Background Blueprint Grid */
.bg-grid {
    background-size: 40px 40px;
    background-image: 
        linear-gradient(to right, rgba(0, 0, 0, 0.03) 1px, transparent 1px),
        linear-gradient(to bottom, rgba(0, 0, 0, 0.03) 1px, transparent 1px);
    animation: panGrid 20s linear infinite;
}

@keyframes panGrid {
    0% { background-position: 0 0; }
    100% { background-position: 40px 40px; }
}

/* Scroll Reveal Animations */
.reveal {
    opacity: 0;
    transform: translateY(30px);
    transition: all 0.8s cubic-bezier(0.5, 0, 0, 1);
}

.reveal.active {
    opacity: 1;
    transform: translateY(0);
}

/* Animation Delays for Grids */
.delay-100 { transition-delay: 100ms; }
.delay-200 { transition-delay: 200ms; }
.delay-300 { transition-delay: 300ms; }