/* ss-motion-2810 : animations légères (reveal au scroll + hovers discrets) — Achille 28/10 (v GO : reveal plus fluide, stagger cartes, hovers cartes/boutons) */
@media (prefers-reduced-motion:no-preference){
 html.ssm .ssm-rv{opacity:0;transform:translate3d(0,22px,0);transition:opacity .75s cubic-bezier(.16,.84,.3,1),transform .75s cubic-bezier(.16,.84,.3,1);transition-delay:var(--ssm-d,0ms);will-change:opacity,transform}
 html.ssm .ssm-rv.ssm-in{opacity:1;transform:none}
 html.ssm .ss-card.ssm-rv,html.ssm .mat.ssm-rv,html.ssm .oi.ssm-rv{transform:translate3d(0,26px,0) scale(.985)}
 html.ssm .ss-card.ssm-rv.ssm-in,html.ssm .mat.ssm-rv.ssm-in,html.ssm .oi.ssm-rv.ssm-in{transform:none}
 /* hero : entrée douce, jamais masquée (opacité de départ .001 évitée : on anime seulement le déplacement) */
 .ss-home .hero>div:first-child>*{animation:ssm-up .7s cubic-bezier(.16,.84,.3,1) both}
 .ss-home .hero>div:first-child>*:nth-child(2){animation-delay:60ms}
 .ss-home .hero>div:first-child>*:nth-child(3){animation-delay:120ms}
 .ss-home .hero>div:first-child>*:nth-child(4){animation-delay:180ms}
 .ss-home .hero>div:first-child>*:nth-child(5){animation-delay:240ms}
 .ss-home .hero-visual img{animation:ssm-zoom 1.1s cubic-bezier(.16,.84,.3,1) both}
 @keyframes ssm-up{from{transform:translate3d(0,10px,0)}to{transform:none}}
 @keyframes ssm-zoom{from{transform:scale(1.03)}to{transform:none}}
 /* cartes */
 .ss-card{transition:transform .3s cubic-bezier(.2,.7,.2,1),box-shadow .3s cubic-bezier(.2,.7,.2,1)}
 .ss-card:hover,.ss-card:focus-visible{transform:translateY(-4px);box-shadow:0 14px 30px rgba(0,34,68,.10)}
 .ss-card .ss-thumb{overflow:hidden}
 .ss-card .ss-thumb img{transition:transform .6s cubic-bezier(.2,.7,.2,1)}
 .ss-card:hover .ss-thumb img{transform:scale(1.045)}
 .ss-card .go{display:inline-block;transition:transform .25s ease}
 .ss-card:hover .go{transform:translateX(5px)}
 /* boutons */
 .btn{transition:background .2s ease,color .2s ease,border-color .2s ease,transform .2s cubic-bezier(.2,.7,.2,1),box-shadow .2s ease}
 .btn:hover{transform:translateY(-2px)}
 .btn:active{transform:translateY(0) scale(.98)}
 .btn-primary:hover{box-shadow:0 8px 20px rgba(0,51,102,.18)}
 .btn-outline:hover{box-shadow:0 6px 16px rgba(0,51,102,.10)}
 .ed-fig{overflow:hidden}
 .ed-fig img{transition:transform .6s cubic-bezier(.2,.7,.2,1)}
 .ed-fig:hover img{transform:scale(1.025)}
 .mat,.oi{transition:transform .25s ease,box-shadow .25s ease}
 .mat:hover,.oi:hover{transform:translateY(-3px)}
 /* menu mobile : glissement d'entrée */
 .mnav.open{animation:ssm-mnav .28s cubic-bezier(.2,.7,.2,1) both}
 .mnav.open .mnav-nav>*{animation:ssm-up .4s cubic-bezier(.2,.7,.2,1) both}
 .mnav.open .mnav-nav>*:nth-child(2){animation-delay:30ms}.mnav.open .mnav-nav>*:nth-child(3){animation-delay:60ms}
 .mnav.open .mnav-nav>*:nth-child(4){animation-delay:90ms}.mnav.open .mnav-nav>*:nth-child(5){animation-delay:120ms}
 @keyframes ssm-mnav{from{opacity:0;transform:translate3d(0,-8px,0)}to{opacity:1;transform:none}}
}
/* footer Sites CBS Groupe : Protection et expédition sur son propre rang */
.cbs-foot #sites-cbs-group .gsec-prot{flex-basis:100%}
