/*
 * Zentrale Eintrittsanimationen fuer bestehende Content-Sections.
 * Sichtbar ist der Grundzustand immer. Versteckt wird nur kurzzeitig, wenn
 * JavaScript das Element bewusst als "pending" registriert hat.
 *
 * Die individuellen CSS-Properties translate/scale sind absichtlich additiv:
 * vorhandene transform-/Hover-/Clip-Path-Regeln bleiben unangetastet.
 */

html.entrance-motion-ready .entrance-item {
    --entrance-delay: 0ms;
    --entrance-duration: 620ms;
    --entrance-from-x: 0px;
    --entrance-from-y: 18px;
    --entrance-from-scale: 1;
    --entrance-ease: cubic-bezier(.22, .72, .2, 1);
    transition:
        opacity var(--entrance-duration) var(--entrance-ease) var(--entrance-delay),
        translate var(--entrance-duration) var(--entrance-ease) var(--entrance-delay),
        scale var(--entrance-duration) var(--entrance-ease) var(--entrance-delay);
}

html.entrance-motion-ready .entrance-item[data-entrance-state="pending"] {
    opacity: 0;
    translate: var(--entrance-from-x) var(--entrance-from-y);
    scale: var(--entrance-from-scale);
    will-change: opacity, translate, scale;
}

html.entrance-motion-ready .entrance-item[data-entrance-state="revealed"] {
    opacity: 1;
    translate: 0 0;
    scale: 1;
}

html.entrance-motion-ready .entrance-item[data-entrance-profile="eyebrow"],
html.entrance-motion-ready .entrance-item[data-entrance-profile="heading"],
html.entrance-motion-ready .entrance-item[data-entrance-profile="signal"] {
    --entrance-duration: 680ms;
    --entrance-from-y: 20px;
}

html.entrance-motion-ready .entrance-item[data-entrance-profile="copy"] {
    --entrance-duration: 620ms;
    --entrance-from-y: 16px;
}

html.entrance-motion-ready .entrance-item[data-entrance-profile="card"],
html.entrance-motion-ready .entrance-item[data-entrance-profile="card-group"] {
    --entrance-duration: 570ms;
    --entrance-from-y: 15px;
    --entrance-from-scale: .988;
}

html.entrance-motion-ready .entrance-item[data-entrance-profile="process-group"] {
    --entrance-duration: 640ms;
    --entrance-from-x: 10px;
    --entrance-from-y: 10px;
    --entrance-from-scale: .995;
}

html.entrance-motion-ready .entrance-item[data-entrance-profile="media-left"],
html.entrance-motion-ready .entrance-item[data-entrance-profile="media-right"] {
    --entrance-duration: 760ms;
    --entrance-from-y: 6px;
    --entrance-from-scale: .992;
}

html.entrance-motion-ready .entrance-item[data-entrance-profile="media-left"] {
    --entrance-from-x: -24px;
}

html.entrance-motion-ready .entrance-item[data-entrance-profile="media-right"] {
    --entrance-from-x: 24px;
}

html.entrance-motion-ready .entrance-item[data-entrance-profile="summary-right"] {
    --entrance-duration: 660ms;
    --entrance-from-x: 20px;
    --entrance-from-y: 8px;
    --entrance-from-scale: .992;
}

html.entrance-motion-ready .entrance-item[data-entrance-profile="rail-shell"] {
    --entrance-duration: 660ms;
    --entrance-from-y: 14px;
}

html.entrance-motion-ready .entrance-item[data-entrance-profile="cta"] {
    --entrance-duration: 600ms;
    --entrance-from-y: 13px;
    --entrance-from-scale: .995;
}

html.entrance-motion-ready .entrance-item[data-entrance-profile="form-panel"] {
    --entrance-duration: 690ms;
    --entrance-from-y: 16px;
    --entrance-from-scale: .994;
}

@media (max-width: 680px) {
    html.entrance-motion-ready .entrance-item {
        --entrance-duration: 500ms;
        --entrance-from-y: 12px;
    }

    html.entrance-motion-ready .entrance-item[data-entrance-profile="eyebrow"],
    html.entrance-motion-ready .entrance-item[data-entrance-profile="heading"],
    html.entrance-motion-ready .entrance-item[data-entrance-profile="signal"] {
        --entrance-duration: 540ms;
        --entrance-from-y: 14px;
    }

    html.entrance-motion-ready .entrance-item[data-entrance-profile="media-left"],
    html.entrance-motion-ready .entrance-item[data-entrance-profile="media-right"],
    html.entrance-motion-ready .entrance-item[data-entrance-profile="summary-right"] {
        --entrance-duration: 570ms;
        --entrance-from-x: 10px;
        --entrance-from-y: 8px;
    }

    html.entrance-motion-ready .entrance-item[data-entrance-profile="media-left"] {
        --entrance-from-x: -10px;
    }

    html.entrance-motion-ready .entrance-item[data-entrance-profile="process-group"] {
        --entrance-from-x: 6px;
        --entrance-from-y: 9px;
    }
}

@media (prefers-reduced-motion: reduce) {
    html.entrance-motion-ready .entrance-item,
    html.entrance-motion-ready .entrance-item[data-entrance-state="pending"],
    html.entrance-motion-ready .entrance-item[data-entrance-state="revealed"] {
        opacity: 1 !important;
        translate: none !important;
        scale: none !important;
        transition: none !important;
        will-change: auto !important;
    }
}
