/* PRATINIUM v84 — Value Motion Layer
   Parallaxe légère, mouvements orbitaux, animations différées,
   micro-interactions et éclairages dynamiques. Non destructif, surcouche v83. */

body#index .pf-hero,
body#index section.pf-hero{
  --pf84-mx: 0px;
  --pf84-my: 0px;
  --pf84-light-x: 52%;
  --pf84-light-y: 38%;
}

/* Halo dynamique guidé par la souris, avec fallback centré */
body#index .pf-hero .pf84-dynamic-light{
  position:absolute!important;
  inset:-20%!important;
  z-index:4!important;
  pointer-events:none!important;
  opacity:.55!important;
  background:
    radial-gradient(circle at var(--pf84-light-x) var(--pf84-light-y), rgba(255,232,166,.30), transparent 18%),
    radial-gradient(circle at calc(var(--pf84-light-x) + 12%) calc(var(--pf84-light-y) + 8%), rgba(94,231,255,.18), transparent 24%),
    linear-gradient(112deg, transparent 12%, rgba(255,255,255,.06) 46%, transparent 68%)!important;
  filter:blur(10px) saturate(1.2)!important;
  mix-blend-mode:screen!important;
  transform:translate3d(calc(var(--pf84-mx) * -0.28), calc(var(--pf84-my) * -0.28), 0)!important;
  transition:opacity .45s ease!important;
  animation:pf84LightPulse 8s ease-in-out infinite alternate!important;
}

/* Orbites institutionnelles autour de la zone hero */
body#index .pf-hero .pf84-orbits{
  position:absolute!important;
  width:clamp(280px,34vw,560px)!important;
  aspect-ratio:1!important;
  right:clamp(-70px,2vw,50px)!important;
  top:clamp(54px,8vw,118px)!important;
  z-index:5!important;
  pointer-events:none!important;
  opacity:.45!important;
  transform:translate3d(calc(var(--pf84-mx) * -0.16), calc(var(--pf84-my) * -0.12), 0)!important;
}
body#index .pf-hero .pf84-orbits::before,
body#index .pf-hero .pf84-orbits::after{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  border-radius:999px!important;
  border:1px solid rgba(158,226,255,.22)!important;
  box-shadow:0 0 36px rgba(94,231,255,.12), inset 0 0 30px rgba(255,216,126,.05)!important;
  transform:rotateX(62deg) rotateZ(0deg)!important;
  animation:pf84OrbitSpin 34s linear infinite!important;
}
body#index .pf-hero .pf84-orbits::after{
  inset:12%!important;
  border-color:rgba(255,219,139,.22)!important;
  animation-duration:46s!important;
  animation-direction:reverse!important;
}
body#index .pf-hero .pf84-node{
  position:absolute!important;
  width:8px!important;
  height:8px!important;
  border-radius:999px!important;
  background:#ffe099!important;
  box-shadow:0 0 18px rgba(255,224,153,.9),0 0 32px rgba(94,231,255,.28)!important;
  left:50%!important;
  top:0!important;
  transform-origin:0 clamp(140px,17vw,280px)!important;
  animation:pf84NodeOrbit 18s linear infinite!important;
}
body#index .pf-hero .pf84-node:nth-child(2){animation-duration:25s!important;animation-delay:-7s!important;background:#7de9ff!important;top:14%!important;}
body#index .pf-hero .pf84-node:nth-child(3){animation-duration:31s!important;animation-delay:-13s!important;top:28%!important;opacity:.8!important;}

/* Parallaxe très légère des couches principales : valeur, pas gadget */
body#index .pf-hero .pf-strategic-layers{
  transform:translate3d(calc(var(--pf84-mx) * .18), calc(var(--pf84-my) * .12), 0)!important;
  will-change:transform!important;
}
body#index .pf-hero .pf-strategic-orb{
  transform:translate3d(calc(var(--pf84-mx) * -.22), calc(var(--pf84-my) * -.14), 0)!important;
  will-change:transform!important;
}
body#index .pf-hero__copy{
  transform:translate3d(calc(var(--pf84-mx) * .035), calc(var(--pf84-my) * .025), 0)!important;
  will-change:transform!important;
}
body#index .pf-hero-journey{
  transform:translate3d(calc(var(--pf84-mx) * -.045), calc(var(--pf84-my) * -.035), 0)!important;
  will-change:transform!important;
}

/* Entrées différées : montée premium, progressive */
body#index .pf-hero__badge,
body#index .pf-hero__title,
body#index .pf-hero__subtitle,
body#index .pf-hero__actions,
body#index .pf-hero-journey,
body#index .pf-stats,
body#index .pf-trust-bar,
body#index .pf-partners,
body#index .pf-projects,
body#index .pf-legal{
  animation-name:pf84ValueReveal!important;
  animation-duration:.92s!important;
  animation-fill-mode:both!important;
  animation-timing-function:cubic-bezier(.2,.75,.2,1)!important;
}
body#index .pf-hero__badge{animation-delay:.05s!important;}
body#index .pf-hero__title{animation-delay:.14s!important;}
body#index .pf-hero__subtitle{animation-delay:.26s!important;}
body#index .pf-hero__actions{animation-delay:.38s!important;}
body#index .pf-hero-journey{animation-delay:.50s!important;}
body#index .pf-stats{animation-delay:.12s!important;}
body#index .pf-trust-bar{animation-delay:.18s!important;}
body#index .pf-partners{animation-delay:.24s!important;}
body#index .pf-projects{animation-delay:.30s!important;}
body#index .pf-legal{animation-delay:.36s!important;}

/* Micro-interactions : boutons, cartes, onglets, blocs confiance */
body#index .pf-btn,
body#index .pf-hero-login-cta,
body#index .pf-tab,
body#index .pf-project-card,
body#index .pf-legal__item,
body#index .pf-partners__panel,
body#index .pf-stat,
#header .pf-header-ctas .pf-btn{
  transition:transform .28s cubic-bezier(.2,.75,.2,1), box-shadow .28s ease, border-color .28s ease, filter .28s ease!important;
}
body#index .pf-btn:hover,
body#index .pf-hero-login-cta:hover,
#header .pf-header-ctas .pf-btn:hover{
  transform:translateY(-3px) scale(1.012)!important;
  filter:saturate(1.08) brightness(1.03)!important;
  box-shadow:0 22px 58px rgba(255,195,66,.34),0 8px 24px rgba(94,231,255,.12), inset 0 1px 0 rgba(255,255,255,.7)!important;
}
body#index .pf-project-card:hover,
body#index .pf-legal__item:hover,
body#index .pf-partners__panel:hover,
body#index .pf-stat:hover{
  transform:translateY(-5px)!important;
  border-color:rgba(255,226,153,.38)!important;
  box-shadow:0 34px 92px rgba(0,0,0,.34),0 0 36px rgba(94,231,255,.10), inset 0 1px 0 rgba(255,255,255,.24)!important;
}
body#index .pf-tab:hover{
  transform:translateY(-2px)!important;
  border-color:rgba(126,231,255,.42)!important;
}

/* Reflet mobile sur cartes au survol / focus */
body#index .pf-project-card::after,
body#index .pf-legal__item::after,
body#index .pf-partners__panel::after,
body#index .pf-hero-journey::after{
  content:""!important;
  position:absolute!important;
  inset:-1px!important;
  border-radius:inherit!important;
  pointer-events:none!important;
  opacity:0!important;
  background:linear-gradient(112deg, transparent 8%, rgba(255,255,255,.24) 42%, transparent 58%)!important;
  transform:translateX(-46%) skewX(-14deg)!important;
  transition:opacity .25s ease, transform .65s ease!important;
  mix-blend-mode:screen!important;
}
body#index .pf-project-card:hover::after,
body#index .pf-legal__item:hover::after,
body#index .pf-partners__panel:hover::after,
body#index .pf-hero-journey:hover::after{
  opacity:.56!important;
  transform:translateX(46%) skewX(-14deg)!important;
}

@keyframes pf84ValueReveal{
  0%{opacity:0;transform:translate3d(0,18px,0) scale(.985);filter:blur(6px);}
  100%{opacity:1;transform:translate3d(0,0,0) scale(1);filter:blur(0);}
}
@keyframes pf84LightPulse{
  0%{opacity:.38;filter:blur(13px) saturate(1.08);}
  100%{opacity:.66;filter:blur(8px) saturate(1.28);}
}
@keyframes pf84OrbitSpin{to{transform:rotateX(62deg) rotateZ(360deg);}}
@keyframes pf84NodeOrbit{to{transform:rotate(360deg);}}

@media(max-width:991px){
  body#index .pf-hero .pf84-orbits{right:-140px;top:70px;opacity:.26;}
  body#index .pf-hero .pf84-dynamic-light{opacity:.42;}
}
@media(max-width:767px){
  body#index .pf-hero .pf84-orbits{width:310px;right:-170px;top:92px;opacity:.20;}
  body#index .pf-hero .pf84-node{width:6px!important;height:6px!important;}
  body#index .pf-project-card:hover,
  body#index .pf-legal__item:hover,
  body#index .pf-partners__panel:hover,
  body#index .pf-stat:hover{transform:translateY(-3px)!important;}
}
@media(prefers-reduced-motion:reduce){
  body#index .pf-hero .pf84-dynamic-light,
  body#index .pf-hero .pf84-orbits::before,
  body#index .pf-hero .pf84-orbits::after,
  body#index .pf-hero .pf84-node,
  body#index .pf-hero__badge,
  body#index .pf-hero__title,
  body#index .pf-hero__subtitle,
  body#index .pf-hero__actions,
  body#index .pf-hero-journey,
  body#index .pf-stats,
  body#index .pf-trust-bar,
  body#index .pf-partners,
  body#index .pf-projects,
  body#index .pf-legal{animation:none!important;}
  body#index .pf-hero,
  body#index section.pf-hero{--pf84-mx:0px!important;--pf84-my:0px!important;}
}