/* styles.css */
html {
    scroll-behavior: smooth;
}

@font-face {
    font-family: 'SapientFont';
    src: url('./fonts/1b3f9cb78376a36884f3908f37a42c91.woff2') format('woff2'),
         url('./fonts/1b3f9cb78376a36884f3908f37a42c91.woff') format('woff'),
         url('./fonts/1b3f9cb78376a36884f3908f37a42c91.ttf') format('truetype');
    font-weight: normal;
    font-style: normal;
}

body {
    font-family: 'SapientFont', sans-serif;
}

/* Neural Network Animation */
.neural-container {
    position: relative;
    width: 100%;
    height: 100%;
    overflow: hidden;
}

.neural-logo {
    width: 100%;
    height: 100%;
    object-fit: contain;
    animation: neuralbeat 6s infinite;
}

.neural-shine {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(
        45deg,
        transparent 0%,
        rgba(255, 255, 255, 0.4) 50%,
        transparent 100%
    );
    animation: shine 6s infinite;
    transform: translateX(-100%) skewX(-25deg);
    z-index: 2;
}

@keyframes neuralbeat {
    /* First quick beat */
    0% {
        transform: scale(1);
    }
    5% {
        transform: scale(1.01);
    }
    10% {
        transform: scale(1);
    }
    /* Pause */
    30% {
        transform: scale(1);
    }
    /* Quick double beat */
    35% {
        transform: scale(1.01);
    }
    37% {
        transform: scale(1);
    }
    39% {
        transform: scale(1.01);
    }
    41% {
        transform: scale(1);
    }
    /* Rest and shine happens after */
    100% {
        transform: scale(1);
    }
}

@keyframes shine {
    /* Wait for beats to finish */
    0%, 60% {
        transform: translateX(-100%) skewX(-25deg);
    }
    /* Shine effect */
    70% {
        transform: translateX(100%) skewX(-25deg);
    }
    /* Hold until end */
    71%, 100% {
        transform: translateX(100%) skewX(-25deg);
    }
}


/* Hero Section Styles */
.text-content h1 {
    margin-bottom: 1rem; /* Reduced from 1.5rem (mb-6) */
}

/* Adjust subheading spacing */
.text-content p:first-of-type {
    padding-top: 0.75rem; /* Reduced from pt-12 */
}

/* Adjust tagline spacing */
.text-content p:last-of-type {
    padding-top: 0.75rem; /* Reduced from pt-24 */
    margin-bottom: 1.5rem; /* Reduced from mb-8 */
}

/* Add back larger spacing for desktop */
@media (min-width: 768px) {
    .text-content h1 {
        margin-bottom: 1.5rem;
    }
    
    .text-content p:first-of-type {
        padding-top: 3rem;
    }
    
    .text-content p:last-of-type {
        padding-top: 6rem;
        margin-bottom: 2rem;
    }

}