/* Custom styles for animations and aesthetic */
body {
    font-family: 'Inter', sans-serif;
}

/* Animation for elements fading in on scroll */
.animate-on-scroll {
    opacity: 0;
    transform: translateY(30px);
    transition: opacity 0.6s ease-out, transform 0.6s ease-out;
}

.animate-on-scroll.visible {
    opacity: 1;
    transform: translateY(0);
}

/* Custom gradient text */
.gradient-text {
    background: linear-gradient(90deg, #c4b5fd, #8b5cf6);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

/* Styling for the hero canvas background */
#hero-canvas {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 0;
    opacity: 0.15;
}

/* FAQ Accordion styles */
.accordion-content {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.5s ease-in-out;
}
.accordion-header.active .accordion-icon {
    transform: rotate(180deg);
}

/* Roadmap vertical line */
.timeline::before {
    content: '';
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    top: 0;
    width: 3px;
    height: 100%;
    background-color: #374151; /* gray-700 */
}

/* Styling for the roadmap items */
.timeline-item-dot::after {
    content: '';
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    width: 20px;
    height: 20px;
    background-color: #374151; /* gray-700 */
    border: 4px solid #1f2937; /* gray-800 */
    border-radius: 50%;
    transition: background-color 0.5s ease;
}

.timeline-item.visible .timeline-item-dot::after {
    background-color: #8b5cf6; /* violet-500 */
}

/* Tokenomics Donut Chart */
.token-donut {
    width: 100%;
    padding-top: 100%; /* 1:1 Aspect Ratio */
    position: relative;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    background: conic-gradient(
        var(--color) 0deg calc(var(--value) * 3.6deg),
        #374151 calc(var(--value) * 3.6deg) 360deg
    );
    transition: background 0.5s ease-in-out;
}
.token-donut-hole {
    position: absolute;
    top: 12.5%;
    left: 12.5%;
    width: 75%;
    height: 75%;
    background-color: #1f2937; /* gray-800 */
    border-radius: 50%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    font-size: 1.1rem;
    color: #9ca3af; /* gray-400 */
}
.token-donut-segment {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border-radius: 50%;
    clip-path: polygon(50% 0%, 100% 0%, 100% 100%, 50% 100%); /* Hides the left half */
    transform: rotate(calc(var(--offset) * 3.6deg));
}