/* Vertical dividers only for large screens */
@media (min-width: 1024px) {
    #testimonial-grid > div:not(:first-child) {
        border-left: 1px solid #e5e7eb; /* gray-200 */
        padding-left: 1.5rem;
    }
}

#testimonial-grid > div {
    transition: opacity 0.8s ease;
}

/* Hero Headline Animation */
.ex-animate {
    opacity: 0;
    transform: translateX(-100%);
    transition: transform 0.5s cubic-bezier(0.68, -0.55, 0.27, 1.55), opacity 0.5s ease; 
}

.main-text {
    display: inline-block;
    transition: transform 0.5s cubic-bezier(0.68, -0.55, 0.27, 1.55);
}

.main-text .first-letter {
    display: inline-block;
    transition: all 0.3s ease;
}

/* Image Gallery Grid */
.gallery img {
    width: 100%;
    aspect-ratio: 1 / 1;
    object-fit: cover;
    border-radius: 0.5rem;
    transition: opacity 0.8s ease, transform 0.3s ease;
    opacity: 1;
}

.gallery img:hover {
    transform: scale(1.2); 
    z-index: 10;
}

/* Ensure the answer area transitions smoothly without snapping */
.faq-answer {
    /* Ensure no background color is set here that conflicts with the card */
    background: transparent; 
}

.faq-content-inner {
    /* If you want a tiny bit of space after the question without a line: */
    padding-top: 1rem; 
    padding-bottom: 1rem; 
}

.faq-item.active .faq-answer {
    opacity: 1;
}

/* Adjust the search bar to ensure the icon and text are perfectly centered */
#faq-search {
    line-height: normal;
    display: flex;
    align-items: center;
}

html {
    scroll-behavior: smooth;
}

/* Ensure the button doesn't block content on mobile */
@media (max-width: 640px) {
    #backToTop {
        bottom: 1.5rem;
        right: 1.5rem;
        transform: scale(0.8);
    }
}