/* LCx FeedPlan - Custom Styles */

/* Smooth scrolling */
html {
    scroll-behavior: smooth;
}

/* Active navigation link */
.nav-active {
    color: #1a2744;
    font-weight: 600;
}

/* Hero background */
.hero-gradient {
    background: #1a2744;
}

/* Subtle grain texture */
.grain-texture {
    position: relative;
}
.grain-texture::after {
    content: '';
    position: absolute;
    inset: 0;
    opacity: 0.03;
    background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)'/%3E%3C/svg%3E");
    pointer-events: none;
}

/* Accordion transitions */
.accordion-content {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.3s ease-out, padding 0.3s ease-out;
}
.accordion-content.open {
    max-height: 500px;
    transition: max-height 0.5s ease-in;
}

/* Accordion chevron rotation */
.accordion-chevron {
    transition: transform 0.3s ease;
}
.accordion-chevron.open {
    transform: rotate(180deg);
}

/* Card hover effect */
.card-hover {
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}
.card-hover:hover {
    transform: translateY(-4px);
    box-shadow: 0 12px 40px rgba(26, 39, 68, 0.12);
}

/* Step connector line */
.step-connector {
    position: relative;
}
.step-connector::after {
    content: '';
    position: absolute;
    top: 50%;
    right: -2rem;
    width: 2rem;
    height: 2px;
    background-color: #d1d5db;
}
.step-connector:last-child::after {
    display: none;
}

/* Form input focus */
input:focus, textarea:focus, select:focus {
    outline: none;
    border-color: #2d8a4e;
    box-shadow: 0 0 0 3px rgba(45, 138, 78, 0.1);
}

/* Fade in animation */
@keyframes fadeInUp {
    from {
        opacity: 0;
        transform: translateY(20px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}
.animate-fade-in-up {
    animation: fadeInUp 0.6s ease-out forwards;
}
