/**
 * Site-wide scroll reveals + button hover shimmer.
 * Used across index, contact, join, history, privacy, staff, terminate, apply.
 */

/* —— Apple-style scroll reveal —— */
[data-home-reveal] {
    opacity: 0;
    transform: translate3d(0, 36px, 0) scale(0.985);
    filter: blur(8px);
    transition:
        opacity 1.05s cubic-bezier(0.22, 1, 0.36, 1),
        transform 1.05s cubic-bezier(0.22, 1, 0.36, 1),
        filter 1.05s cubic-bezier(0.22, 1, 0.36, 1);
    will-change: opacity, transform, filter;
}
[data-home-reveal].is-revealed {
    opacity: 1;
    transform: translate3d(0, 0, 0) scale(1);
    filter: blur(0);
}
.home-va-card[data-home-reveal],
.home-why__item[data-home-reveal],
.contact-highlight[data-home-reveal],
.contact-form-card[data-home-reveal],
.join-req-card[data-home-reveal],
.staff-job-card[data-home-reveal],
.privacy-block[data-home-reveal],
.terminate-highlight[data-home-reveal],
.terminate-form-card[data-home-reveal],
.history-card[data-home-reveal],
.privacy-intro-card[data-home-reveal] {
    transform: translate3d(0, 48px, 0) scale(0.97);
}
.home-va-card[data-home-reveal].is-revealed,
.home-why__item[data-home-reveal].is-revealed,
.contact-highlight[data-home-reveal].is-revealed,
.contact-form-card[data-home-reveal].is-revealed,
.join-req-card[data-home-reveal].is-revealed,
.staff-job-card[data-home-reveal].is-revealed,
.privacy-block[data-home-reveal].is-revealed,
.terminate-highlight[data-home-reveal].is-revealed,
.terminate-form-card[data-home-reveal].is-revealed,
.history-card[data-home-reveal].is-revealed,
.privacy-intro-card[data-home-reveal].is-revealed {
    transform: translate3d(0, 0, 0) scale(1);
}
.home-va-card[data-home-reveal].is-revealed:hover,
.home-why__item[data-home-reveal].is-revealed:hover,
.join-req-card[data-home-reveal].is-revealed:hover,
.staff-job-card[data-home-reveal].is-revealed:hover {
    transform: translate3d(0, -4px, 0) scale(1);
}
.home-cta-band[data-home-reveal],
.history-cta[data-home-reveal] {
    transform: translate3d(0, 28px, 0) scale(0.99);
}
@media (prefers-reduced-motion: reduce) {
    [data-home-reveal] {
        opacity: 1;
        transform: none;
        filter: none;
        transition: none;
    }
}

/* —— Button shimmer (shared CTAs) —— */
.home-btn,
.contact-submit,
.terminate-submit,
.amx-shimmer,
button.home-btn,
a.home-btn {
    position: relative;
    overflow: hidden;
    z-index: 1;
}
.home-btn > *,
.contact-submit > *,
.terminate-submit > *,
.amx-shimmer > * {
    position: relative;
    z-index: 1;
}
.home-btn::before,
.contact-submit::before,
.terminate-submit::before,
.amx-shimmer::before {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(45deg, transparent, rgba(255, 255, 255, 0.3), transparent);
    transform: translateX(-100%);
    transition: transform 0.6s;
    z-index: 0;
    pointer-events: none;
}
.home-btn:hover::before,
.contact-submit:hover::before,
.terminate-submit:hover::before,
.amx-shimmer:hover::before {
    transform: translateX(100%);
}
