/* Animations de démonstration — chaque effet s'active via le panneau "Animations" */
.fx-kenburns .hero-photos img.on{animation:kb 14s ease-out forwards}
@keyframes kb{from{transform:scale(1)}to{transform:scale(1.12)}}
.fx-reveal [data-rv]{opacity:0;transform:translateY(28px);transition:opacity .8s ease,transform .8s cubic-bezier(.2,.7,.2,1);transition-delay:var(--d,0s)}
.fx-reveal [data-rv].in{opacity:1;transform:none}
.fx-hero .hero h1,.fx-hero .hero .lead{animation:rise 1s cubic-bezier(.2,.7,.2,1) both}
.fx-hero .hero .lead{animation-delay:.18s}
.fx-hero .pass{animation:rise 1s .35s cubic-bezier(.2,.7,.2,1) both}
@keyframes rise{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:none}}
.fx-lift .dest{transition:transform .35s cubic-bezier(.2,.7,.2,1),box-shadow .35s,opacity .4s,filter .4s}
.fx-lift .dest:hover{transform:translateY(-8px) rotate(-.4deg);box-shadow:0 26px 40px -18px rgba(4,26,34,.55)}
.fx-lift .dest:hover .ph{transform:scale(1.09)}
.fx-lift .dest .iata{transition:transform .35s}
.fx-lift .dest:hover .iata{transform:rotate(-2deg) scale(1.08)}
.fx-plane .hero::before{content:"✈";position:absolute;left:-60px;top:22%;font-size:34px;color:#fff;opacity:.85;z-index:1;animation:fly 16s linear infinite;pointer-events:none}
@keyframes fly{0%{transform:translate(0,0) rotate(-8deg)}100%{transform:translate(calc(100vw + 120px),-90px) rotate(-8deg)}}
.fx-btn .btn{transition:transform .2s,box-shadow .2s}
.fx-btn .btn:hover{transform:translateY(-2px) scale(1.03);box-shadow:0 10px 20px -8px rgba(201,61,30,.6)}
@media(prefers-reduced-motion:reduce){[class*="fx-"] *{animation:none!important}.fx-reveal [data-rv]{opacity:1;transform:none}}
#fxp{position:fixed;right:14px;bottom:14px;z-index:99;font:600 14px Figtree,sans-serif}
#fxp button.t{background:#0A2F3A;color:#fff;border:0;border-radius:999px;padding:10px 18px;cursor:pointer;box-shadow:0 8px 20px -6px rgba(0,0,0,.5)}
#fxp .box{display:none;background:#fff;color:#0A2F3A;border-radius:16px;padding:14px 16px;margin-bottom:10px;box-shadow:0 16px 36px -10px rgba(0,0,0,.45);min-width:230px}
#fxp.open .box{display:block}
#fxp label{display:flex;gap:10px;align-items:center;padding:6px 0;cursor:pointer}
#fxp .all{margin-top:6px;font-size:13px;color:#138A9B;cursor:pointer;background:none;border:0;padding:0;text-decoration:underline}
