/* EventCentralOps v0.9.279 — expressive but intentional homepage motion.
 * Progressive enhancement only: content remains visible without JS.
 * Scope: public marketing homepage, never tenant, staff, or operator pages.
 */
@media (prefers-reduced-motion: no-preference) {
  /* A more deliberate editorial entrance rather than a barely perceptible fade. */
  .eco-home-modern.eco-motion-279 .eco-modern-hero-copy > h1 {
    animation: eco279-copy-in 1s cubic-bezier(.16,1,.3,1) .07s both;
  }
  .eco-home-modern.eco-motion-279 .eco-modern-hero-copy > .eco-modern-hero-checks {
    animation: eco279-copy-in .9s cubic-bezier(.16,1,.3,1) .23s both;
  }
  .eco-home-modern.eco-motion-279 .eco-modern-hero-copy > .eco-modern-actions,
  .eco-home-modern.eco-motion-279 .eco-modern-hero-copy > .eco-modern-hero-note,
  .eco-home-modern.eco-motion-279 .eco-modern-hero-copy > p {
    animation: eco279-copy-in .82s cubic-bezier(.16,1,.3,1) .42s both;
  }
  @keyframes eco279-copy-in {
    from { opacity: 0; transform: translate3d(0, 50px, 0); }
    to { opacity: 1; transform: translate3d(0, 0, 0); }
  }

  /* A visible staged preview entrance. Once complete the original hover and
   * design-selection behavior remains in control of the browser preview. */
  .eco-home-modern.eco-motion-279 .eco-modern-hero-browser {
    animation: eco279-browser-in 1.2s cubic-bezier(.18,.88,.22,1) .26s both;
    transition: transform .65s cubic-bezier(.2,1,.2,1), box-shadow .5s ease;
  }
  @keyframes eco279-browser-in {
    from { opacity: 0; transform: translate3d(78px,42px,0) rotate(4deg) scale(.88); }
    to { opacity: 1; transform: rotate(-2deg) scale(1); }
  }
  .eco-home-modern.eco-motion-279 .eco-hero-audience {
    animation: eco279-copy-in .7s cubic-bezier(.16,1,.3,1) .82s both;
  }
  .eco-home-modern.eco-motion-279 .eco-modern-hero-checks > li {
    animation: eco279-list-in .7s cubic-bezier(.16,1,.3,1) both;
  }
  .eco-home-modern.eco-motion-279 .eco-modern-hero-checks > li:nth-child(1) { animation-delay: .28s; }
  .eco-home-modern.eco-motion-279 .eco-modern-hero-checks > li:nth-child(2) { animation-delay: .36s; }
  .eco-home-modern.eco-motion-279 .eco-modern-hero-checks > li:nth-child(3) { animation-delay: .44s; }
  .eco-home-modern.eco-motion-279 .eco-modern-hero-checks > li:nth-child(4) { animation-delay: .52s; }
  @keyframes eco279-list-in {
    from { opacity: 0; transform: translate3d(-20px,16px,0); }
    to { opacity: 1; transform: translate3d(0,0,0); }
  }

  /* Ambient lighting and a soft glass sheen communicate that the preview is live.
   * No autoplaying event-category switches, video, or content movement. */
  .eco-home-modern.eco-motion-279 .eco-modern-hero-light-a {
    animation: eco279-glow-a 12s ease-in-out infinite alternate;
  }
  .eco-home-modern.eco-motion-279 .eco-modern-hero-light-b {
    animation: eco279-glow-b 15s ease-in-out infinite alternate;
  }
  @keyframes eco279-glow-a {
    from { transform: translate3d(-14px,8px,0) scale(.94); opacity: .65; }
    to { transform: translate3d(30px,-24px,0) scale(1.18); opacity: 1; }
  }
  @keyframes eco279-glow-b {
    from { transform: translate3d(8px,0,0) scale(.9); opacity: .55; }
    to { transform: translate3d(-24px,20px,0) scale(1.17); opacity: .96; }
  }
  .eco-home-modern.eco-motion-279 .eco-modern-hero-browser::before {
    content: ''; position: absolute; z-index: 3; inset: 0;
    background: radial-gradient(ellipse 60% 65% at var(--eco279-x,50%) var(--eco279-y,34%), rgba(255,255,255,.20), transparent 76%);
    mix-blend-mode: screen; pointer-events: none;
  }
  .eco-home-modern.eco-motion-279 .eco-modern-hero-browser::after {
    content: ''; position: absolute; z-index: 3; top: -10%; bottom: -10%; left: -45%; width: 38%;
    background: linear-gradient(95deg, transparent, rgba(255,255,255,.10), transparent);
    transform: translateX(-130%) skewX(-16deg); pointer-events: none;
    animation: eco279-sheen 9s ease-in-out 2.3s infinite;
  }
  @keyframes eco279-sheen {
    0%, 23% { transform: translateX(-130%) skewX(-16deg); opacity: 0; }
    29% { opacity: .8; }
    44% { transform: translateX(460%) skewX(-16deg); opacity: 0; }
    100% { transform: translateX(460%) skewX(-16deg); opacity: 0; }
  }
  /* Refresh the preview photo and title only when a visitor selects a category. */
  .eco-home-modern.eco-motion-279 .eco-modern-hero-photo img.eco279-preview-switch {
    animation: eco279-preview-change .62s cubic-bezier(.16,1,.3,1) both;
  }
  .eco-home-modern.eco-motion-279 [data-eco-audience-heading].eco279-preview-switch {
    animation: eco279-label-change .55s cubic-bezier(.16,1,.3,1) both;
  }
  @keyframes eco279-preview-change {
    from { opacity: .38; transform: scale(1.08); }
    to { opacity: 1; transform: scale(1); }
  }
  @keyframes eco279-label-change {
    from { opacity: .15; transform: translate3d(0,13px,0); }
    to { opacity: 1; transform: translate3d(0,0,0); }
  }

  /* Clearly perceptible one-time entry for the existing scroll reveals. */
  .eco-home-modern.eco-motion-279.eco-modern-animate .eco-rise:not(.eco-rise-visible) {
    opacity: 0; transform: translate3d(0,47px,0) scale(.975);
  }
  .eco-home-modern.eco-motion-279.eco-modern-animate .eco-rise {
    transition: opacity .88s cubic-bezier(.16,1,.3,1), transform .88s cubic-bezier(.16,1,.3,1);
  }
  .eco-home-modern.eco-motion-279 .eco-modern-feature-tiles > .eco-rise:nth-child(2),
  .eco-home-modern.eco-motion-279 .eco-modern-feature-tiles > .eco-rise:nth-child(5) { transition-delay: 100ms; }
  .eco-home-modern.eco-motion-279 .eco-modern-feature-tiles > .eco-rise:nth-child(3),
  .eco-home-modern.eco-motion-279 .eco-modern-feature-tiles > .eco-rise:nth-child(6) { transition-delay: 200ms; }
  .eco-home-modern.eco-motion-279 .eco-modern-steps.eco279-played > li,
  .eco-home-modern.eco-motion-279 .eco-home-solutions-grid.eco279-played > a,
  .eco-home-modern.eco-motion-279 .eco-modern-pricing-grid.eco279-played > article {
    animation: eco279-section-in .88s cubic-bezier(.16,1,.3,1) both;
  }
  .eco-home-modern.eco-motion-279 .eco279-played > :nth-child(2) { animation-delay: 105ms; }
  .eco-home-modern.eco-motion-279 .eco279-played > :nth-child(3) { animation-delay: 210ms; }
  .eco-home-modern.eco-motion-279 .eco279-played > :nth-child(4) { animation-delay: 315ms; }
  .eco-home-modern.eco-motion-279 .eco279-played > :nth-child(5) { animation-delay: 420ms; }
  .eco-home-modern.eco-motion-279 .eco279-played > :nth-child(n+6) { animation-delay: 510ms; }
  @keyframes eco279-section-in {
    from { opacity: 0; transform: translate3d(0,40px,0) scale(.955); }
    to { opacity: 1; transform: translate3d(0,0,0) scale(1); }
  }

  /* Site scroll indicator: meaningful progress, no text and no layout shift. */
  .eco279-page-progress {
    position: fixed; top: 0; left: 0; z-index: 99999; height: 3px; width: 100%;
    background: linear-gradient(90deg, #eab06a, #e67649 55%, #d04c38);
    transform: scaleX(0); transform-origin: left center;
    pointer-events: none; opacity: .95;
  }
}
@media (prefers-reduced-motion: no-preference) and (hover: hover) and (pointer: fine) {
  .eco-home-modern.eco-motion-279 .eco-modern-btn,
  .eco-home-modern.eco-motion-279 .eco-modern-feature-card,
  .eco-home-modern.eco-motion-279 .eco-modern-pricing-grid article,
  .eco-home-modern.eco-motion-279 .eco-home-solutions-grid a {
    transition: transform .35s cubic-bezier(.16,1,.3,1), box-shadow .35s ease, border-color .35s ease;
  }
  .eco-home-modern.eco-motion-279 .eco-modern-btn:hover,
  .eco-home-modern.eco-motion-279 .eco-modern-btn:focus-visible { transform: translateY(-5px); }
  .eco-home-modern.eco-motion-279 .eco-modern-btn:hover > span[aria-hidden],
  .eco-home-modern.eco-motion-279 .eco-modern-btn:focus-visible > span[aria-hidden] { transform: translate3d(4px,-3px,0); }
  .eco-home-modern.eco-motion-279 .eco-modern-btn > span[aria-hidden] { transition: transform .3s ease; }
  .eco-home-modern.eco-motion-279 .eco-modern-feature-card:hover,
  .eco-home-modern.eco-motion-279 .eco-modern-feature-card:focus-within,
  .eco-home-modern.eco-motion-279 .eco-modern-pricing-grid article:hover,
  .eco-home-modern.eco-motion-279 .eco-modern-pricing-grid article:focus-within,
  .eco-home-modern.eco-motion-279 .eco-home-solutions-grid a:hover,
  .eco-home-modern.eco-motion-279 .eco-home-solutions-grid a:focus-visible {
    transform: translateY(-9px) scale(1.015);
    box-shadow: 0 24px 48px rgba(15, 25, 38, .17);
  }
}
/* Mobile motion is clear but shorter, and never creates a sideways page shift. */
@media (max-width: 760px) and (prefers-reduced-motion: no-preference) {
  .eco-home-modern.eco-motion-279 .eco-modern-hero-browser { animation-name: eco279-browser-in-mobile; }
  @keyframes eco279-browser-in-mobile {
    from { opacity: 0; transform: translate3d(0,34px,0) scale(.95); }
    to { opacity: 1; transform: none; }
  }
  .eco-home-modern.eco-motion-279 .eco-modern-hero-light-a,
  .eco-home-modern.eco-motion-279 .eco-modern-hero-light-b,
  .eco-home-modern.eco-motion-279 .eco-modern-hero-browser::after { animation: none !important; }
  .eco-home-modern.eco-motion-279 .eco-modern-hero-browser::before { display: none; }
  .eco-home-modern.eco-motion-279.eco-modern-animate .eco-rise:not(.eco-rise-visible) { transform: translate3d(0,29px,0); }
}
@media (prefers-reduced-motion: reduce) {
  .eco-home-modern.eco-motion-279 *,
  .eco-home-modern.eco-motion-279 *::before,
  .eco-home-modern.eco-motion-279 *::after { animation: none !important; transition: none !important; }
  .eco279-page-progress { display: none !important; }
}
