/**
 * DevBasit Core Functional Visual Matrix Stylesheet
 */

/* Core Component Entry Motion Setup */
.reveal-on-scroll, .reveal-delay-1, .reveal-delay-2 {
    opacity: 0;
    transform: translateY(24px);
    transition: opacity 0.8s cubic-bezier(0.16, 1, 0.3, 1), transform 0.8s cubic-bezier(0.16, 1, 0.3, 1);
    will-change: transform, opacity;
}

img.logo-wrapper {
    width: 100% !important;
    max-width: 260px;
}

.animated-reveal {
    opacity: 1 !important;
    transform: translateY(0) !important;
}

/* Fluid Moving Background Accents */
.dynamic-blob {
    animation: blobMove 22s infinite alternate ease-in-out;
}
.dynamic-blob-delayed {
    animation: blobMove 28s infinite alternate-reverse ease-in-out;
}

@keyframes blobMove {
    0% { transform: translate(0px, 0px) scale(1); }
    50% { transform: translate(40px, -60px) scale(1.15); }
    100% { transform: translate(-20px, 30px) scale(0.95); }
}

/* Interactive Card Tracking Border Effects */
.tech-card::before {
    content: '';
    absolute: inset 0;
    position: absolute;
    inset: 0;
    background: radial-gradient(300px circle at var(--mouse-x, 0px) var(--mouse-y, 0px), rgba(34, 211, 238, 0.12), transparent 80%);
    opacity: 0;
    transition: opacity 0.3s;
    pointer-events: none;
}
.tech-card:hover::before {
    opacity: 1;
}

#testimonial-slider {
    transition: opacity 0.3s ease, transform 0.3s ease;
    will-change: transform, opacity;
}

/* Expertise Section */
button#form-submit-btn {
    padding: 16px 10px !important;
}
/* Accessibility Parameters Override Control */
@media (prefers-reduced-motion: reduce) {
    html { scroll-behavior: auto !important; }
    * { animation: none !important; transition: none !important; transform: none !important; }
    .reveal-on-scroll { opacity: 1 !important; transform: none !important; }
}