/* ===== Athlète Apex 1.9.3 : finitions « fait main » et animations ===== */
/* Retrait des effets les plus génériques : quadrillage, reflets, dégradés animés, halos qui suivent la souris */
.hero::before,.sweep{display:none!important}
.hero{background:#0d0d0d}
.stats b{background:none;-webkit-background-clip:border-box;background-clip:border-box;color:var(--gold);animation:none;font-weight:800}
.plan::after{background:var(--card)!important}
.plan.top::before{display:none}
.plan.top{border:2px solid var(--gold);padding:28px 26px 30px}
.plan.top::after{inset:0;border-radius:4px}
.card::before{display:none}
#joueurs::before,#services::before,.sec-j::before{display:none}
.btn.gold::after{display:none}
.btn{transition:transform .2s,box-shadow .2s,background .2s,color .2s}
.btn.gold:hover{transform:translateY(-2px);box-shadow:0 5px 0 #7d6220}
.btn.gold:active{transform:translateY(1px);box-shadow:0 1px 0 #7d6220}
.btn.ghost:hover{background:var(--text);color:var(--bg);border-color:var(--text)}
.hero .btn.ghost:hover{background:#eeeae2;color:#111}
.q footer{background:none;padding:0;color:inherit;display:flex;flex-direction:column;gap:2px}
/* grain fin sur tout le site : donne de la matière au noir, comme un tirage */
body::after{content:"";position:fixed;inset:0;z-index:90;pointer-events:none;opacity:.07;mix-blend-mode:overlay;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='160' height='160'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 .9 0'/></filter><rect width='160' height='160' filter='url(%23n)'/></svg>")}
/* repères : un filet or se trace sous chaque titre de section */
h2.reveal{position:relative;padding-bottom:.42em}
h2.reveal::after{content:"";position:absolute;left:0;bottom:0;width:64px;height:4px;background:var(--gold);transform:scaleX(0);transform-origin:left;transition:transform .8s .25s cubic-bezier(.6,0,.2,1)}
h2.reveal.on::after{transform:scaleX(1)}
.hero h1.reveal::after,.ph h1::after{display:none}
.js .reveal{transform:translate3d(0,10px,0)}
.js .reveal.on{transform:none}
/* trois arguments : le filet du haut se trace */
.trio>div{border-top:0;position:relative}
.trio>div::before{content:"";position:absolute;left:0;right:0;top:0;height:2px;background:var(--text);transform:scaleX(0);transform-origin:left;transition:transform .9s cubic-bezier(.6,0,.2,1)}
.trio>div.on::before{transform:scaleX(1)}
.avis.trio>div::before{display:none}
.avis .q{border-radius:3px}
/* bandeau plus sobre */
.marq span{font-size:clamp(1.05rem,2.2vw,1.45rem);padding:15px 0}
.marq .track{animation-duration:48s}
.marq:hover .track{animation-play-state:paused}
/* étapes : le fil or descend au fil du défilement */
.stp{position:relative;margin:34px 0 36px}
.stp li{position:relative;border-top:0;padding:0 0 38px;grid-template-columns:68px 1fr;gap:0 18px}
.stp li:last-child{padding-bottom:6px}
.stp::before{content:"";position:absolute;left:21px;top:8px;bottom:14px;width:2px;background:#2d2c28}
.stp::after{content:"";position:absolute;left:21px;top:8px;width:2px;height:calc((100% - 22px)*var(--p,0));background:var(--gold)}
.pn{position:relative;z-index:1;width:44px;height:44px;border-radius:50%;border:2px solid #3a382f;background:#0d0d0d;display:grid;place-items:center;font-size:1.05rem;color:#8c887d;transition:background .4s,color .4s,border-color .4s,transform .4s}
.stp li.hit .pn{background:var(--gold);border-color:var(--gold);color:#16120a;transform:scale(1.1)}
.stp li h3{transition:color .4s}
/* clubs : les trois points glissent depuis la droite */
.js .list li.reveal{transform:translate3d(28px,0,0)}
.js .list li.reveal.on{transform:none}
/* ===== carte d'exemple de profil (accueil) ===== */
.pcard{position:absolute;right:24px;top:50%;width:330px;margin-top:-170px;background:#161613;border:1px solid #34322b;border-radius:6px;padding:22px 22px 20px;box-shadow:0 30px 60px -20px rgba(0,0,0,.7);opacity:0;transform:translate3d(40px,24px,0) rotate(2.5deg);animation:pin 1s 2.4s cubic-bezier(.2,.8,.2,1) forwards;z-index:3}
@keyframes pin{to{opacity:1;transform:rotate(-1.5deg)}}
.pcard .pc-top{display:flex;gap:14px;align-items:center;margin-bottom:20px}
.pcard .pc-av{width:52px;height:52px;border-radius:50%;background:var(--gold);color:#16120a;display:grid;place-items:center;font:800 1.05rem Sora,sans-serif}
.pcard b{display:block;font:800 1.05rem Sora,sans-serif;letter-spacing:-.02em}
.pcard .pc-top span{font-size:.85rem;color:#a39f93}
.pcard .pc-tag{position:absolute;top:-11px;right:16px;background:#eeeae2;color:#111;font-size:.72rem;font-weight:700;padding:3px 9px;border-radius:2px}
.pcard dl{margin:0;display:grid;gap:13px}
.pcard dl div{display:grid;grid-template-columns:76px 1fr 28px;gap:10px;align-items:center;font-size:.84rem;color:#bdb9ad}
.pcard dd{margin:0;height:6px;background:#2a2924;border-radius:3px;overflow:hidden}
.pcard dd i{display:block;height:100%;width:0;background:var(--gold);border-radius:3px;transition:width 1.4s cubic-bezier(.3,.7,.2,1)}
.pcard.go dd i{width:var(--w)}
.pcard dl em{font-style:normal;font-weight:700;color:#eeeae2;text-align:right}
.pcard .pc-note{margin:20px 0 0;padding:12px 14px;border-radius:4px;background:#0d0d0d;border:1px solid #34322b;display:flex;gap:10px;align-items:center;font-size:.84rem;color:#d8d4c8;opacity:0;transform:translateY(10px);transition:opacity .5s,transform .5s}
.pcard.go .pc-note{opacity:1;transform:none;transition-delay:1.9s}
.pcard .pc-dot{width:9px;height:9px;border-radius:50%;background:#58c27d;flex:none;box-shadow:0 0 0 0 rgba(88,194,125,.6);animation:ping 2s 4.4s infinite}
@keyframes ping{70%{box-shadow:0 0 0 9px rgba(88,194,125,0)}to{box-shadow:0 0 0 0 rgba(88,194,125,0)}}
.hero .mark{opacity:.26}
@media(max-width:1120px){.pcard{display:none}}
@media(prefers-reduced-motion:reduce){.pcard{opacity:1;transform:rotate(-1.5deg);animation:none}.pcard dd i{width:var(--w);transition:none}.pcard .pc-note{opacity:1;transform:none}.stp li .pn{background:var(--gold);border-color:var(--gold);color:#16120a}.stp::after{height:calc(100% - 22px)}.trio>div::before,h2.reveal::after{transform:none;transition:none}}
