/* One calm arrival language across editorial content and footer groups.
   Content is visible by default; only a ready observer enables hidden states. */
.reveal-ready .reveal-item[data-reveal] {
    opacity: 0;
    transform: translateY(20px);
    transition: opacity 700ms cubic-bezier(0.16, 1, 0.3, 1),
        transform 700ms cubic-bezier(0.16, 1, 0.3, 1);
    transition-delay: var(--reveal-delay, 0ms);
}

.reveal-ready .reveal-item[data-reveal].is-visible {
    opacity: 1;
    transform: none;
}

/* These are neutral word wrappers, not the authored heading line/accent spans.
   The main landmark scope takes precedence over legacy hero span formatting. */
#main [data-reveal="words"] .reveal-word {
    display: inline-block;
    max-width: 100%;
    margin: 0;
    padding: 0;
    color: inherit;
    font: inherit;
    letter-spacing: inherit;
    text-indent: 0;
    vertical-align: baseline;
}

#main [data-reveal="words"] .reveal-word::after {
    content: none;
}

.reveal-ready .reveal-item[data-reveal="words"] {
    opacity: 1;
    transform: none;
    transition: none;
}

.reveal-ready .reveal-words .reveal-word {
    opacity: 0;
    filter: blur(10px);
    transform: translateY(0.55em);
    transition: opacity 650ms cubic-bezier(0.16, 1, 0.3, 1),
        filter 650ms cubic-bezier(0.16, 1, 0.3, 1),
        transform 650ms cubic-bezier(0.16, 1, 0.3, 1);
    transition-delay: calc(var(--reveal-delay, 0ms) + var(--word-delay, 0ms));
}

.reveal-ready .reveal-words.is-visible .reveal-word {
    opacity: 1;
    filter: none;
    transform: none;
}

/* The image frame already reveals. Suppress the older second image entrance. */
.reveal-ready .ccm-page--service-detail .ccm-editorial-hero .ccm-why-hero__visual.reveal-item.is-visible .ccm-why-hero__image,
.reveal-ready .ccm-editorial-hero--about .ccm-why-hero__visual.reveal-item.is-visible .ccm-why-hero__image,
.reveal-ready .ccm-editorial-hero--reviews .ccm-reviews-editorial-hero__visual.reveal-item.is-visible .ccm-reviews-editorial-hero__image {
    animation: none;
}

/* Focus reveals its complete group immediately, including mobile footer toggles. */
.reveal-ready .reveal-item[data-reveal].reveal-instant,
.reveal-ready .reveal-item[data-reveal]:focus-within,
.reveal-ready .reveal-words.reveal-instant .reveal-word,
.reveal-ready .reveal-words:focus-within .reveal-word {
    opacity: 1;
    filter: none;
    transform: none;
    transition: none;
}

@media (prefers-reduced-motion: reduce) {
    .reveal-ready .reveal-item[data-reveal],
    .reveal-ready .reveal-words .reveal-word {
        opacity: 1;
        filter: none;
        transform: none;
        transition: none;
    }
}

@media print {
    .reveal-ready .reveal-item[data-reveal],
    .reveal-ready .reveal-words .reveal-word {
        opacity: 1;
        filter: none;
        transform: none;
        transition: none;
    }
}
