/* resources/css/home-styles.css */

/* Floating animation */
@keyframes float {
    0%, 100% {
        transform: translateY(0);
    }
    50% {
        transform: translateY(-15px);
    }
}
.animate-float {
    animation: float 3s ease-in-out infinite;
}

/* Line expansion animation */
@keyframes lineExpand {
    0% {
        width: 0;
    }
    100% {
        width: 200px;
    }
}
.animate-line-expand {
    animation: lineExpand 1.5s ease-out forwards;
    animation-delay: 0.8s;
}

/* Gradient text animation */
@keyframes gradientMove {
    0% {
        background-position: 0% 50%;
    }
    50% {
        background-position: 100% 50%;
    }
    100% {
        background-position: 0% 50%;
    }
}
.animated-gradient-text {
    background: linear-gradient(
        90deg,
        #081B31 0%,
        #AA8338 25%,
        #081B31 50%,
        #AA8338 75%,
        #081B31 100%
    );
    background-size: 300% 300%;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    animation: gradientMove 8s ease infinite;
    display: inline-block;
}

/* Carousel animation */
@keyframes carousel {
    0% {
        transform: translateX(0);
    }
    100% {
        transform: translateX(calc(-50% - 1rem));
    }
}
.animate-carousel {
    animation: carousel 30s linear infinite;
}
.client-carousel:hover .animate-carousel {
    animation-play-state: paused;
}

/* Fade in up animation */
@keyframes fadeInUp {
    from {
        opacity: 0;
        transform: translateY(20px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}
.animate-fade-in-up {
    animation: fadeInUp 1s ease-out forwards;
    opacity: 0;
    animation-delay: 0.6s;
}

/* Pulse gold animation for button */
@keyframes pulseGold {
    0%, 100% {
        box-shadow: 0 20px 25px -5px rgba(170, 131, 56, 0.1), 0 10px 10px -5px rgba(170, 131, 56, 0.04);
    }
    50% {
        box-shadow: 0 20px 25px -5px rgba(170, 131, 56, 0.3), 0 10px 10px -5px rgba(170, 131, 56, 0.2);
    }
}
.animate-pulse-gold {
    animation: pulseGold 2s ease-in-out infinite;
}

/* Particle animation */
.particle {
    position: absolute;
    background: linear-gradient(90deg, #081B31, #AA8338);
    border-radius: 50%;
    opacity: 0.1;
}
.particle:nth-child(1) {
    width: 40px;
    height: 40px;
    top: 20%;
    left: 10%;
    animation: floatParticle 20s infinite linear;
}
.particle:nth-child(2) {
    width: 25px;
    height: 25px;
    top: 60%;
    left: 5%;
    animation: floatParticle 25s infinite linear;
    animation-delay: 1s;
}
.particle:nth-child(3) {
    width: 30px;
    height: 30px;
    top: 30%;
    right: 15%;
    animation: floatParticle 22s infinite linear;
    animation-delay: 2s;
}
.particle:nth-child(4) {
    width: 35px;
    height: 35px;
    bottom: 20%;
    right: 10%;
    animation: floatParticle 18s infinite linear;
    animation-delay: 3s;
}
.particle:nth-child(5) {
    width: 20px;
    height: 20px;
    top: 70%;
    right: 20%;
    animation: floatParticle 30s infinite linear;
    animation-delay: 4s;
}
.particle:nth-child(6) {
    width: 28px;
    height: 28px;
    top: 40%;
    left: 20%;
    animation: floatParticle 24s infinite linear;
    animation-delay: 5s;
}
.particle:nth-child(7) {
    width: 32px;
    height: 32px;
    bottom: 30%;
    left: 15%;
    animation: floatParticle 21s infinite linear;
    animation-delay: 6s;
}
.particle:nth-child(8) {
    width: 22px;
    height: 22px;
    top: 15%;
    right: 5%;
    animation: floatParticle 27s infinite linear;
    animation-delay: 7s;
}
.particle:nth-child(9) {
    width: 38px;
    height: 38px;
    bottom: 10%;
    left: 25%;
    animation: floatParticle 19s infinite linear;
    animation-delay: 8s;
}
.particle:nth-child(10) {
    width: 26px;
    height: 26px;
    top: 50%;
    right: 25%;
    animation: floatParticle 26s infinite linear;
    animation-delay: 9s;
}

@keyframes floatParticle {
    0% {
        transform: translateY(0) translateX(0) rotate(0deg);
        opacity: 0.1;
    }
    25% {
        transform: translateY(-100px) translateX(100px) rotate(90deg);
        opacity: 0.2;
    }
    50% {
        transform: translateY(0) translateX(200px) rotate(180deg);
        opacity: 0.1;
    }
    75% {
        transform: translateY(100px) translateX(100px) rotate(270deg);
        opacity: 0.2;
    }
    100% {
        transform: translateY(0) translateX(0) rotate(360deg);
        opacity: 0.1;
    }
}

/* Stats Card Border Animation */
.stat-border-animation {
    position: absolute;
    top: -2px;
    left: -2px;
    right: -2px;
    bottom: -2px;
    border-radius: 24px;
    background: linear-gradient(45deg, 
        #081B31, 
        #AA8338, 
        #081B31, 
        #AA8338, 
        #081B31);
    background-size: 400% 400%;
    z-index: 1;
    opacity: 1; /* Changed from 0 to 1 for always visible */
    transition: opacity 0.3s ease;
    animation: borderGlow 8s ease infinite;
}

/* .stat-card > div {
    overflow: hidden;
    position: relative;
}

Optional: Add a subtle hover effect for the card content
.stat-card:hover > div {
    transform: translateY(-4px);
    box-shadow: 0 20px 40px -10px rgba(8, 27, 49, 0.2);
} */

/* Removed hover effect since animation is always visible */
.stat-card .stat-border-animation {
    opacity: 1;
}

/* No hover state needed since animation is always on */
.stat-card:hover .stat-border-animation {
    opacity: 1; /* Keep it at 1 since it's always visible */
}

/* Stats Card Number Responsive Sizing */
.stat-number {
    font-size: clamp(2.5rem, 5vw, 4rem);
    line-height: 1;
}

/* Responsive adjustments for mobile */
@media (max-width: 768px) {
    .stat-card > div {
        padding: 1.5rem;
    }
    
    .stat-card .counter,
    .stat-card .text-4xl {
        font-size: 2.25rem !important;
        margin-bottom: 1rem;
    }
    
    .stat-card .text-xl {
        font-size: 1rem !important;
        margin-bottom: 0.5rem;
    }
    
}

/* For very small screens */
@media (max-width: 640px) {
    .stat-card .counter,
    .stat-card .text-4xl {
        font-size: 2rem !important;
    }
}

/* For large screens */
@media (min-width: 1536px) {
    .stat-card .counter,
    .stat-card .text-4xl {
        font-size: 3.5rem !important;
    }
}

@keyframes borderGlow {
    0%, 100% {
        background-position: 0% 50%;
    }
    50% {
        background-position: 100% 50%;
    }
}

/* Hover lift effect */
.hover-lift {
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}
.hover-lift:hover {
    transform: translateY(-5px);
}
.min-h-screen {
    min-height: 100vh;
}

/* Floating finance icons - random movement */
@keyframes float-random-1 {
  0% { transform: translate(0, 0); }
  20% { transform: translate(30px, -40px); }
  40% { transform: translate(-20px, 30px); }
  60% { transform: translate(40px, 20px); }
  80% { transform: translate(-30px, -20px); }
  100% { transform: translate(0, 0); }
}
@keyframes float-random-2 {
  0% { transform: translate(0, 0); }
  25% { transform: translate(-25px, 35px); }
  50% { transform: translate(35px, -25px); }
  75% { transform: translate(-15px, 20px); }
  100% { transform: translate(0, 0); }
}
@keyframes float-random-3 {
  0% { transform: translate(0, 0); }
  30% { transform: translate(20px, 30px); }
  60% { transform: translate(-30px, -20px); }
  90% { transform: translate(25px, -30px); }
  100% { transform: translate(0, 0); }
}
@keyframes float-random-4 {
  0% { transform: translate(0, 0); }
  20% { transform: translate(-40px, 20px); }
  50% { transform: translate(30px, -30px); }
  80% { transform: translate(-20px, 40px); }
  100% { transform: translate(0, 0); }
}
@keyframes float-random-5 {
  0% { transform: translate(0, 0); }
  35% { transform: translate(25px, -25px); }
  70% { transform: translate(-25px, 25px); }
  100% { transform: translate(0, 0); }
}
@keyframes float-random-6 {
  0% { transform: translate(0, 0); }
  40% { transform: translate(-30px, 30px); }
  80% { transform: translate(30px, -30px); }
  100% { transform: translate(0, 0); }
}
@keyframes float-random-7 {
  0% { transform: translate(0, 0); }
  50% { transform: translate(40px, 10px); }
  100% { transform: translate(0, 0); }
}
@keyframes float-random-8 {
  0% { transform: translate(0, 0); }
  60% { transform: translate(-20px, -40px); }
  100% { transform: translate(0, 0); }
}
@keyframes float-random-9 {
  0% { transform: translate(0, 0); }
  30% { transform: translate(30px, 30px); }
  60% { transform: translate(-30px, -30px); }
  100% { transform: translate(0, 0); }
}
@keyframes float-random-10 {
  0% { transform: translate(0, 0); }
  50% { transform: translate(-40px, 20px); }
  100% { transform: translate(0, 0); }
}

.hero-finance-icon {
  position: absolute;
  pointer-events: none;
  opacity: 0.85;
  z-index: 1;
}
.hero-finance-icon svg {
  width: 100%;
  height: 100%;
  display: block;
}
.hero-finance-icon-1 { animation: float-random-1 14s ease-in-out infinite; }
.hero-finance-icon-2 { animation: float-random-2 13s ease-in-out infinite; }
.hero-finance-icon-3 { animation: float-random-3 15s ease-in-out infinite; }
.hero-finance-icon-4 { animation: float-random-4 16s ease-in-out infinite; }
.hero-finance-icon-5 { animation: float-random-5 12s ease-in-out infinite; }
.hero-finance-icon-6 { animation: float-random-6 17s ease-in-out infinite; }
.hero-finance-icon-7 { animation: float-random-7 13s ease-in-out infinite; }
.hero-finance-icon-8 { animation: float-random-8 15s ease-in-out infinite; }
.hero-finance-icon-9 { animation: float-random-9 14s ease-in-out infinite; }
.hero-finance-icon-10 { animation: float-random-10 16s ease-in-out infinite; }