@keyframes fadeInUp {
    from {
        opacity: 0;
        transform: translateY(30px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}
.hero-bg {
    background: linear-gradient(135deg, rgba(255,107,53,0.9) 0%, rgba(26,26,26,0.8) 100%),
    url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><defs><pattern id="gym" patternUnits="userSpaceOnUse" width="20" height="20"><circle cx="10" cy="10" r="1" fill="rgba(255,255,255,0.1)"/></pattern></defs><rect width="100" height="100" fill="url(%23gym)"/></svg>');
}
.glass-effect {
    background: rgba(255, 255, 255, 0.1);
    backdrop-filter: blur(10px);
    border: 1px solid rgba(255, 255, 255, 0.2);
}
.testimonial-card {
    background: linear-gradient(145deg, #ffffff 0%, #f8fafc 100%);
    box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04);
}
.result-card {
    background: linear-gradient(145deg, #1f2937 0%, #111827 100%);
}
.loaded {
    opacity: 1;
}
.hero-bg h1,
.hero-bg h2,
.hero-bg button {
    opacity: 0;
    transform: translateY(30px);
    transition: all 0.8s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}
::-webkit-scrollbar {
    width: 8px;
}
::-webkit-scrollbar-track {
    background: #1a1a1a;
}
::-webkit-scrollbar-thumb {
    background: #ff6b35;
    border-radius: 4px;
}
::-webkit-scrollbar-thumb:hover {
    background: #ff5722;
}
* {
    transition: color 0.3s ease, background-color 0.3s ease;
}
button {
    position: relative;
    overflow: hidden;
}
button::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255,255,255,0.2), transparent);
    transition: left 0.5s;
}
button:hover::before {
    left: 100%;
}

/* Animation delays for footer dots */
.footer-dot-delay-05 {
    animation-delay: 0.5s;
}

.footer-dot-delay-1 {
    animation-delay: 1s;
}

/* Hidden elements */
.hidden-text {
    display: none;
}

/* Small tag icon */
.tag-icon-small {
    font-size: 8px;
}
