/* INSTAFOOD HOME MOTION V11.48.203 — compositor-only, contrat maison cubic-bezier(.16,1,.3,1) */
@media (prefers-reduced-motion: no-preference){
  /* 1. Reveal des sections : montee douce + cascade des enfants directs */
  .ifh-sec{opacity:0;transform:translate3d(0,26px,0);transition:opacity .62s cubic-bezier(.16,1,.3,1),transform .8s cubic-bezier(.16,1,.3,1)}
  .ifh-sec.ifh-on{opacity:1;transform:none}
  .ifh-stag>*{opacity:0;transform:translate3d(0,18px,0);transition:opacity .5s cubic-bezier(.16,1,.3,1) var(--ifh-d,0ms),transform .62s cubic-bezier(.16,1,.3,1) var(--ifh-d,0ms)}
  .ifh-stag.ifh-on>*{opacity:1;transform:none}
  /* 2. Entree du hero : surtitre, accroche, actions — jamais le media (LCP intact) */
  .ifh-enter{opacity:0;transform:translate3d(0,14px,0)}
  .ifh-ready .ifh-enter{opacity:1;transform:none;transition:opacity .52s cubic-bezier(.16,1,.3,1) var(--ifh-d,0ms),transform .62s cubic-bezier(.16,1,.3,1) var(--ifh-d,0ms)}
  /* 3. Barre de progression de lecture — CSS natif scroll-driven, aucun JS */
  .ifh-prog{position:fixed;top:0;left:0;right:0;height:3px;z-index:9999;pointer-events:none;background:transparent}
  .ifh-prog>i{display:block;height:100%;transform-origin:0 50%;transform:scaleX(0);
    background:linear-gradient(90deg,#d6b158,#F5A623 55%,#F5D08A)}
  @supports (animation-timeline: scroll()){
    .ifh-prog>i{animation:ifhProg linear both;animation-timeline:scroll(root block)}
    @keyframes ifhProg{from{transform:scaleX(0)}to{transform:scaleX(1)}}
  }
  @supports not (animation-timeline: scroll()){.ifh-prog{display:none}}
  /* 4. CTA magnetique (pointeur fin uniquement, pilote par le module) */
  .ifh-mag{transition:transform .18s cubic-bezier(.16,1,.3,1)}
  /* 5. Reels : cadre qui respire quand la video joue */
  [data-if-reel]{transition:transform .6s cubic-bezier(.16,1,.3,1)}
  .ifh-reel-on [data-if-reel]{transform:scale(1.012)}
}
@media (prefers-reduced-motion: reduce){.ifh-sec,.ifh-stag>*,.ifh-enter{opacity:1;transform:none}.ifh-prog{display:none}}
