/* MaTri animated logo — ported from Angular matri-logo.component.ts.
   Navy letters #0b4358 + lime leaves #bdd63a. Staggered entrance, leaf
   unfurl + idle sway, hover bounce, prefers-reduced-motion opt-out. */

.matri-logo { display: inline-block; line-height: 0; }
.matri-logo svg { height: 40px; width: auto; }

@keyframes matri-logo-letter-enter {
  0%   { opacity: 0; transform: translateY(8px); }
  100% { opacity: 1; transform: translateY(0); }
}
.matri-logo__letter {
  transform-box: fill-box;
  transform-origin: center;
  opacity: 0;
  animation: matri-logo-letter-enter 500ms ease-out forwards;
}
.matri-logo__letter--m { animation-delay: 0ms; }
.matri-logo__letter--a { animation-delay: 80ms; }
.matri-logo__letter--t { animation-delay: 160ms; }
.matri-logo__letter--r { animation-delay: 240ms; }
.matri-logo__letter--i { animation-delay: 320ms; }

@keyframes matri-logo-leaf-unfurl-a {
  0%   { opacity: 0; transform: scale(0) rotate(-25deg); }
  60%  { opacity: 1; transform: scale(1.15) rotate(8deg); }
  100% { opacity: 1; transform: scale(1) rotate(0deg); }
}
@keyframes matri-logo-leaf-unfurl-i {
  0%   { opacity: 0; transform: scale(0) rotate(35deg); }
  60%  { opacity: 1; transform: scale(1.2) rotate(-12deg); }
  100% { opacity: 1; transform: scale(1) rotate(0deg); }
}
@keyframes matri-logo-leaf-a-sway {
  0%, 100% { transform: scale(1) rotate(-10deg); }
  50%      { transform: scale(1.18) rotate(12deg); }
}
@keyframes matri-logo-leaf-i-sway {
  0%, 100% { transform: scale(1.18) rotate(14deg); }
  50%      { transform: scale(1) rotate(-12deg); }
}
.matri-logo__leaf {
  transform-box: fill-box;
  transform-origin: center;
  opacity: 0;
}
.matri-logo__leaf--a {
  animation:
    matri-logo-leaf-unfurl-a 900ms cubic-bezier(0.34, 1.56, 0.64, 1) 700ms forwards,
    matri-logo-leaf-a-sway 4.5s ease-in-out 1700ms infinite;
}
.matri-logo__leaf--i {
  animation:
    matri-logo-leaf-unfurl-i 900ms cubic-bezier(0.34, 1.56, 0.64, 1) 1000ms forwards,
    matri-logo-leaf-i-sway 4.5s ease-in-out 2000ms infinite;
}

@keyframes matri-logo-letter-bounce {
  0%, 100% { transform: translateY(0); }
  40%      { transform: translateY(-4px); }
}
.matri-logo:hover .matri-logo__letter--m { animation: matri-logo-letter-bounce 500ms ease-out 0ms; }
.matri-logo:hover .matri-logo__letter--a { animation: matri-logo-letter-bounce 500ms ease-out 60ms; }
.matri-logo:hover .matri-logo__letter--t { animation: matri-logo-letter-bounce 500ms ease-out 120ms; }
.matri-logo:hover .matri-logo__letter--r { animation: matri-logo-letter-bounce 500ms ease-out 180ms; }
.matri-logo:hover .matri-logo__letter--i { animation: matri-logo-letter-bounce 500ms ease-out 240ms; }

@media (prefers-reduced-motion: reduce) {
  .matri-logo__letter,
  .matri-logo__leaf {
    animation: none !important;
    opacity: 1 !important;
  }
}
