.hero{isolation:isolate;touch-action:pan-y;background:#efedf3;height:100svh;min-height:640px;position:relative;overflow:hidden}@media (pointer:fine){.hero{cursor:none}}.relief{opacity:.6;position:absolute;inset:0;transform:translateZ(0)}.relief svg{width:100%;height:100%;display:block}.grain-fixe{opacity:.08;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='200' height='200'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");position:absolute;inset:0}.spot{width:var(--D,600px);height:var(--D,600px);pointer-events:none;z-index:1;will-change:transform;contain:strict;border-radius:50%;position:absolute;top:0;left:0;overflow:hidden;-webkit-mask-image:radial-gradient(circle closest-side,#000 0%,#000d 30%,#0006 60%,#0000 100%);mask-image:radial-gradient(circle closest-side,#000 0%,#000d 30%,#0006 60%,#0000 100%)}.spot-inner{width:var(--W,100vw);height:var(--H,100vh);will-change:transform;position:absolute;top:0;left:0}.prisme{opacity:.72;position:absolute;inset:0;overflow:hidden}.prisme>div{will-change:transform;background:repeating-linear-gradient(115deg,#7ef0ff 0,#b9a6ff 120px,#ff9ad5 240px,#ffd29a 360px,#d6ff7a 480px,#7ef0ff 600px);width:calc(100% + 700px);height:100%;animation:16s linear infinite glisse;position:absolute;top:0;left:0}@keyframes glisse{to{transform:translate(-662.3px)}}.halo{opacity:.75;will-change:transform;border-radius:50%;width:46vmax;height:46vmax;animation:22s ease-in-out infinite alternate derive;position:absolute}.halo.c1{background:radial-gradient(circle,#7ef0ff 0%,#0000 68%);top:5%;left:0}.halo.c2{background:radial-gradient(circle,#ff9ad5 0%,#0000 68%);animation-duration:26s;animation-delay:-6s;top:-10%;right:-10%}.halo.c3{background:radial-gradient(circle,#d6ff7a 0%,#0000 68%);animation-duration:30s;animation-delay:-12s;bottom:-20%;left:30%}.halo.c4{background:radial-gradient(circle,#b9a6ff 0%,#0000 68%);animation-duration:24s;animation-delay:-3s;bottom:0;right:15%}@keyframes derive{0%{transform:translate(0,0)scale(1)}50%{transform:translate(8vw,-6vh)scale(1.15)}to{transform:translate(-6vw,8vh)scale(.9)}}.spot canvas{position:absolute;top:0;left:0}.tresor{width:clamp(64px,8vw,110px);transform:rotate(var(--rot,0deg));position:absolute}.tresor svg{width:100%;display:block}.hero.pause *{animation-play-state:paused!important}.ring{pointer-events:none;z-index:4;will-change:transform;background:conic-gradient(#7ef0ff,#b9a6ff,#ff9ad5,#ffd29a,#d6ff7a,#7ef0ff);border-radius:50%;width:26px;height:26px;position:absolute;top:0;left:0;transform:translate(-100px,-100px);-webkit-mask:radial-gradient(circle,#0000 7px,#000 8px);mask:radial-gradient(circle,#0000 7px,#000 8px)}@media (pointer:coarse){.ring{display:none}}.hero-ui{text-align:center;z-index:3;pointer-events:none;place-items:center;padding:20px;display:grid;position:absolute;inset:0}.hero-ui .mark{width:84px;height:84px;color:var(--graphite);margin:0 auto 18px;display:block}.hero h1{font:700 clamp(3rem, 10vw, 8.6rem)/.86 var(--display);letter-spacing:-.06em;margin:16px 0 20px}.hero h1 span{display:block}.hero h1 .foil-text{filter:saturate(1.6)brightness(.82);background-size:100% 100%;animation:none}.hero .sub{color:#3a3742;max-width:40ch;margin:0 auto;font-size:clamp(1rem,2vw,1.2rem)}.hero .ctas{pointer-events:auto;flex-wrap:wrap;justify-content:center;gap:12px;margin-top:28px;display:flex}.btn.plein:after{background:var(--graphite)}.btn.plein{color:var(--nacre)}.hint{z-index:3;font:500 .66rem var(--display);letter-spacing:.14em;text-transform:uppercase;color:var(--gris);white-space:nowrap;position:absolute;bottom:24px;left:50%;transform:translate(-50%)}.recit{text-align:center;padding:110px 0 70px}.recit blockquote{font:400 clamp(2rem, 5vw, 3.8rem)/1.08 var(--logo);max-width:22ch;margin:18px auto}.recit blockquote i{background:var(--holo);color:#0000;filter:saturate(1.5)brightness(.85);background-size:300% 100%;-webkit-background-clip:text;background-clip:text;animation:8s linear infinite foil}.recit p{color:var(--gris);max-width:52ch;margin:0 auto 22px}.rail{scroll-snap-type:x mandatory;scrollbar-width:none;grid-auto-columns:minmax(250px,22%);grid-auto-flow:column;gap:16px;margin:0 -20px;padding:6px 20px 26px;display:grid;overflow-x:auto}.rail::-webkit-scrollbar{display:none}.rail .card{scroll-snap-align:start}.rail-nav{gap:8px;display:flex}.rail-nav button{cursor:pointer;background:#fffa;border:1px solid #16151a22;border-radius:50%;width:46px;height:46px;font-size:1.1rem}.salles{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.route{grid-template-columns:1fr 1.6fr;align-items:center;gap:30px;display:grid}.route ul{gap:8px;padding:0;list-style:none;display:grid}.insta-band{text-align:center;border-radius:32px;padding:60px 40px;position:relative;overflow:hidden}.insta-band .blobs{opacity:.6}.insta-band>*{position:relative}.insta-band img{border-radius:50%;width:96px;height:96px;box-shadow:0 10px 30px -10px #7a6aff88}.insta-band h2{margin:14px 0 10px}.moment{grid-template-columns:1fr 1fr;gap:12px;display:grid}.moment .visuel{background:linear-gradient(160deg, #fff, var(--nacre-2));border-radius:32px;place-items:center;min-height:420px;display:grid}.moment .visuel svg{width:58%}.moment .infos{border-radius:32px;flex-direction:column;justify-content:center;padding:36px;display:flex}.moment h3{font:700 clamp(1.8rem, 3.4vw, 2.6rem)/1 var(--display);letter-spacing:-.045em;margin:14px 0 16px}.moment dl{grid-template-columns:auto 1fr;gap:8px 22px;margin:10px 0 26px;display:grid}.moment dt{font:500 .66rem/2 var(--display);letter-spacing:.1em;text-transform:uppercase;color:var(--gris)}.moment .ctas{justify-content:flex-start;margin-top:0}@media (width<=900px){.moment{grid-template-columns:1fr}.moment .visuel{min-height:280px}.rail{grid-auto-columns:70%}.salles,.route{grid-template-columns:1fr}}@media (width<=640px){.hint{white-space:normal;text-align:center;width:calc(100% - 40px);bottom:76px}}.route ul a{color:inherit;border-radius:16px;align-items:center;gap:12px;padding:10px 14px;font-size:.92rem;text-decoration:none;display:flex}.route ul a svg{flex:none;width:44px;height:44px}.route ul a span{color:var(--gris);white-space:nowrap;margin-left:auto;font-size:.8rem}
