/* ============================================================
     ▼▼▼ LOGO ANIMÉ v4 — glyphes vectoriels du PDF (alignement officiel)
     ============================================================ */
  .yps-logo-anim {
    --yps-logo-pink:   #FF7BAC;
    --yps-logo-yellow: #FFED00;
    --yps-logo-white:  #FFFFFF;
    --yps-logo-takeoff-period: 9s;
    --yps-logo-takeoff-delay:  1.2s;
    display: inline-block;
    line-height: 0;
    vertical-align: middle;
  }
  .yps-logo-anim svg { width: 100%; height: auto; display: block; overflow: visible; }
  .yps-logo-anim .logo-shape { fill: var(--yps-logo-pink); }
  .yps-logo-anim .t-yellow   { fill: var(--yps-logo-yellow); }
  .yps-logo-anim .t-white    { fill: var(--yps-logo-white); }

  /* L3 · TAKEOFF */
  .yps-logo-anim .logo-body {
    transform-origin: 50% 100%;
    animation: yps-takeoff var(--yps-logo-takeoff-period) infinite;
    animation-delay: var(--yps-logo-takeoff-delay);
  }
  @keyframes yps-takeoff {
    0%      { transform: translateY(0); animation-timing-function: ease-out; }
    2.5%    { transform: translateY(10px); animation-timing-function: cubic-bezier(0.34, 1.4, 0.64, 1); }
    9%      { transform: translateY(-70px); animation-timing-function: cubic-bezier(0.4, 0, 0.2, 1); }
    14%     { transform: translateY(0); animation-timing-function: ease-in-out; }
    15.5%   { transform: translateY(-5px); }
    17%     { transform: translateY(0); }
    100%    { transform: translateY(0); }
  }

  /* L2 · TEXT FLOAT */
  .yps-logo-anim .logo-text {
    animation: yps-text-float 3s ease-in-out infinite alternate;
  }
  @keyframes yps-text-float {
    0%   { transform: translateY(0); }
    100% { transform: translateY(-3px); }
  }

  @media (prefers-reduced-motion: reduce) {
    .yps-logo-anim .logo-body,
    .yps-logo-anim .logo-text { animation: none !important; transform: none !important; }
    .yps-logo-anim svg animate { display: none; }
  }
  /* ▲▲▲ */
