/* ==============================================
   INDEX.CSS — Landing Page
   ============================================== */

/* Hero gradient overlay */
.hero-gradient {
    background: linear-gradient(135deg, rgba(0, 19, 96, 0.05) 0%, rgba(0, 19, 96, 0.0) 100%);
}

/* Dot pattern background */
.dot-pattern {
    background-image: radial-gradient(#001360 1px, transparent 1px);
    background-size: 24px 24px;
}

/* Carousel */
#hero-carousel {
    display: flex;
    transition: transform 0.7s ease-in-out;
}

.carousel-dot {
    width: 8px;
    height: 8px;
    border-radius: 9999px;
    background: white;
    border: none;
    cursor: pointer;
    transition: opacity 0.3s;
}
.carousel-dot.active  { opacity: 1; }
.carousel-dot.inactive { opacity: 0.5; }

/* Partners logo strip */
.partners-strip {
    opacity: 1;
    filter: none;
}

/* Zoom logos sans agrandir la section */
.partner-logo-wrap {
    width: 100px;
    height: 56px;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
}
.partner-logo-wrap img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    transform: scale(1.08);
    transition: transform 0.3s ease;
}
.partner-logo-wrap:hover img {
    transform: scale(1.2);
}

/* Landing Page SVG Chart Animation */
.landing-chart-line {
    stroke-dasharray: 1000;
    stroke-dashoffset: 1000;
    animation: dash 3s ease-out forwards;
}
.landing-chart-line-suspect {
    stroke-dasharray: 1000;
    stroke-dashoffset: 1000;
    animation: dash 3s ease-out forwards;
    animation-delay: 0.5s;
}
@keyframes dash {
    to { stroke-dashoffset: 0; }
}

/* Animated CTA button: alternates blue and green */
@keyframes color-shift {
    0%, 100% {
        background-color: #001360;
        box-shadow: 0 4px 14px rgba(0, 19, 96, 0.35);
        transform: scale(1);
    }
    50% {
        background-color: #16a34a;
        box-shadow: 0 8px 20px rgba(22, 163, 74, 0.4);
        transform: scale(1.04);
    }
}
.animate-color-btn {
    animation: color-shift 2.4s infinite ease-in-out;
    border-radius: 4px;
}
