/* ===== Casting Closing — couche d'animations (aperçu) ===== */
#accueil{position:relative;overflow:hidden;min-height:min(92vh,860px);display:flex;align-items:center}
#accueil>.cc-w{position:relative;z-index:2;width:100%}
#cc-fx{position:absolute;inset:0;width:100%;height:100%;z-index:1;pointer-events:none}
.cc-aurora{position:absolute;inset:-20%;z-index:0;pointer-events:none;filter:blur(60px);opacity:.9}
.cc-aurora i{position:absolute;border-radius:50%;mix-blend-mode:screen;will-change:transform}
.cc-aurora i:nth-child(1){width:55vw;height:55vw;left:-10%;top:-20%;background:radial-gradient(circle,rgba(182,127,66,.55),transparent 65%);animation:ccA1 18s ease-in-out infinite alternate}
.cc-aurora i:nth-child(2){width:45vw;height:45vw;right:-8%;top:10%;background:radial-gradient(circle,rgba(230,197,149,.32),transparent 65%);animation:ccA2 22s ease-in-out infinite alternate}
.cc-aurora i:nth-child(3){width:40vw;height:40vw;left:30%;bottom:-25%;background:radial-gradient(circle,rgba(238,106,92,.6),transparent 65%);animation:ccA3 26s ease-in-out infinite alternate}
@keyframes ccA1{to{transform:translate3d(18vw,10vh,0) scale(1.15)}}
@keyframes ccA2{to{transform:translate3d(-16vw,14vh,0) scale(.9)}}
@keyframes ccA3{to{transform:translate3d(-12vw,-12vh,0) scale(1.2)}}
.cc-grid-fx{position:absolute;inset:0;z-index:0;pointer-events:none;opacity:.35;background-image:linear-gradient(rgba(230,197,149,.09) 1px,transparent 1px),linear-gradient(90deg,rgba(230,197,149,.09) 1px,transparent 1px);background-size:64px 64px;-webkit-mask-image:radial-gradient(ellipse 70% 60% at 50% 40%,#000,transparent 75%);mask-image:radial-gradient(ellipse 70% 60% at 50% 40%,#000,transparent 75%);animation:ccGrid 30s linear infinite}
@keyframes ccGrid{to{background-position:64px 64px,64px 64px}}
/* titres : scintillement bronze */
.dark em.br{background-size:220% 100%;animation:ccShine 7s ease-in-out infinite alternate}
@keyframes ccShine{from{background-position:0 0}to{background-position:100% 0}}
/* apparition au défilement */
.cc-rv{opacity:0;transform:translate3d(0,34px,0);transition:opacity .9s cubic-bezier(.2,.7,.2,1),transform .9s cubic-bezier(.2,.7,.2,1);transition-delay:var(--d,0ms);will-change:opacity,transform}
.cc-rv.in{opacity:1;transform:none}
/* cartes : inclinaison 3D + reflet */
.cc-card,.cc-stat{transform-style:preserve-3d;transition:transform .35s ease,box-shadow .35s ease}
.cc-tilt{will-change:transform}
.cc-card::after{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;background:radial-gradient(420px circle at var(--mx,50%) var(--my,0%),rgba(230,197,149,.16),transparent 45%);opacity:0;transition:opacity .3s}
.cc-card{position:relative}
.cc-card:hover::after{opacity:1}
/* boutons : halo vivant */
.cc-btn:not(.ghost){position:relative;overflow:hidden}
.cc-btn:not(.ghost)::before{content:"";position:absolute;top:0;left:-60%;width:40%;height:100%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.38),transparent);transform:skewX(-20deg);animation:ccSweep 5s ease-in-out infinite}
@keyframes ccSweep{0%,60%{left:-60%}100%{left:130%}}
/* images : léger flottement + parallaxe */
.cc-photo{will-change:transform}
.cc-photo img{will-change:transform;transition:transform .2s linear}
/* chiffres */
.cc-stat strong{display:inline-block;font-variant-numeric:tabular-nums}
/* barre de progression */
#cc-prog{position:fixed;top:0;left:0;height:3px;width:100%;transform-origin:0 50%;transform:scaleX(0);background:linear-gradient(90deg,#7C4A1C,#E6C595);z-index:100}
/* accessibilité : on coupe tout si demandé */
@media (prefers-reduced-motion:reduce){
 .cc-aurora i,.cc-grid-fx,.dark em.br,.cc-btn::before{animation:none!important}
 .cc-rv{opacity:1!important;transform:none!important;transition:none!important}
 #cc-fx{display:none}
}
@media(max-width:760px){.cc-aurora{filter:blur(40px)}#accueil{min-height:0;padding-top:30px}}
.dark .cc-badge{background:rgba(255,255,255,.06);border:1px solid rgba(230,197,149,.4);color:#EADFCF;box-shadow:none}
.dark .cc-badge b{color:#E6C595}
.dark .cc-badge{background:rgba(255,255,255,.06);border:1px solid rgba(230,197,149,.4);color:#EADFCF;box-shadow:none}
.dark .cc-badge b{color:#E6C595}
