@charset "UTF-8";
:root{color-scheme:dark;--bg:#090b0a;--fg:#f1f3e9;--muted:#aaaFA8;--acid:#c8ff42}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--bg);color:var(--fg);font-family:Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}a,button{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:3px solid var(--acid);outline-offset:6px}button{background:transparent;border:1px solid #58604e;padding:10px 14px;border-radius:30px}header{height:96px;display:flex;align-items:center;justify-content:space-between;padding:0 5%;border-bottom:1px solid #ffffff18;position:relative;z-index:5}.logo{font-size:29px;font-weight:900;letter-spacing:-2px}.logo span{color:var(--acid)}.logo small{display:block;font-size:7px;letter-spacing:2px;margin-top:6px}nav{display:flex;gap:30px;font-size:13px}nav a:hover,.text-link:hover{color:var(--acid)}#effects{font-size:11px}.hero{position:relative;min-height:730px;height:calc(100svh - 96px);max-height:1000px;overflow:hidden;isolation:isolate}.hero-content{padding:85px 7%;position:relative;z-index:2}.eyebrow{font-size:11px;letter-spacing:2.3px;font-weight:700;display:flex;align-items:center;gap:12px}.dot{width:7px;height:7px;background:var(--acid);border-radius:50%;box-shadow:0 0 15px var(--acid)}h1{font-size:clamp(76px,10.8vw,170px);line-height:.88;letter-spacing:-.075em;margin:35px 0 27px;font-weight:900}em{font-style:normal;color:var(--acid)}.intro{font-size:18px;line-height:1.6;color:#d5d8ce}.actions{display:flex;gap:30px;align-items:center;flex-wrap:wrap;margin-top:30px}.button{background:var(--acid);color:#11170a;padding:19px 24px;display:inline-flex;gap:35px;align-items:center;font-size:13px;font-weight:700;border-radius:3px}.button:hover{background:#dcff8b;transform:translateY(-2px)}.text-link{font-size:13px}.stage{position:absolute;inset:0;z-index:-1;background:radial-gradient(ellipse at 76% 55%,#24351b66,transparent 50%),linear-gradient(90deg,#090b0a 10%,#090b0a22)}.orb{position:absolute;right:8%;top:16%;width:35vw;height:35vw;border:2px solid #c8ff4277;border-radius:50%;box-shadow:0 0 35px #b4ff3933,inset 0 0 55px #c8ff4211;transform:rotate(-25deg);background:repeating-radial-gradient(ellipse at center,transparent 0 25px,#c8ff4212 26px 27px,transparent 28px 45px)}.orb:after{content:'X';font-size:29vw;font-weight:900;color:#c8ff42;line-height:1;position:absolute;left:14%;top:4%;text-shadow:0 0 70px #b4ff3944;opacity:.8}.beam{position:absolute;top:-15%;left:65%;width:12%;height:125%;background:linear-gradient(#d6ff9444,transparent);clip-path:polygon(46% 0,54% 0,100% 100%,0 100%);transform-origin:50% 0;filter:blur(3px);animation:sweep 13s ease-in-out infinite alternate}.b2{left:90%;animation-delay:-5s;background:linear-gradient(#5b9cff55,transparent)}.b3{left:40%;animation-delay:-9s;width:6%;opacity:.5}.haze{position:absolute;inset:30% -20% -20%;background:radial-gradient(ellipse at 60% 80%,#b3d7ad24,transparent 40%),radial-gradient(ellipse at 80% 50%,#9cb7b61a,transparent 40%);filter:blur(25px);animation:drift 20s ease-in-out infinite alternate}.floor{position:absolute;bottom:-20%;right:-10%;width:80%;height:45%;background:repeating-linear-gradient(90deg,transparent 0 79px,#c8ff4211 80px),repeating-linear-gradient(0deg,transparent 0 39px,#c8ff4211 40px);transform:perspective(300px) rotateX(50deg);mask-image:linear-gradient(transparent,#000)}.hero-bottom{position:absolute;bottom:28px;left:5%;right:5%;display:flex;justify-content:space-between;font-size:9px;letter-spacing:2px;color:#b2b9a9}.ticker{border-block:1px solid #ffffff22;padding:23px 0;text-align:center;white-space:nowrap;overflow:hidden;font-size:18px;font-weight:700;letter-spacing:2px}.ticker span{color:var(--acid);margin:0 35px}.section{padding:95px 7%;scroll-margin-top:20px}.section-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:35px}.section-head>p{font-size:14px;line-height:1.7;color:var(--muted)}h2{font-size:clamp(36px,4.5vw,66px);line-height:1.05;letter-spacing:-2.5px;margin:20px 0 30px}.releases{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.cover{aspect-ratio:1;position:relative;overflow:hidden;background:#272419}.cover span{position:absolute;top:20px;left:20px;font-size:10px;letter-spacing:4px;z-index:1}.cover i{position:absolute;width:60%;height:60%;border-radius:50%;left:20%;top:20%;border:1px solid #f4edc488;box-shadow:0 0 0 15px #f4edc411,0 0 0 30px #f4edc411,0 0 0 45px #f4edc411}.earth{background:radial-gradient(ellipse at 50% 70%,#ed6f2b,transparent 30%),linear-gradient(30deg,#3c110c,#94753a)}.earth i{border-radius:40% 60% 20% 70%;transform:rotate(35deg);background:linear-gradient(45deg,#341c10,#ddaa5e44)}.echo{background:radial-gradient(ellipse at 50% 100%,#8174bf,#131122 65%)}.echo i{transform:rotateX(55deg);box-shadow:0 0 0 20px #b9b0ff22,0 0 0 40px #b9b0ff22,0 0 0 60px #b9b0ff11}.ritual{background:linear-gradient(140deg,#041b1a,#368b73)}.ritual i{border-radius:0;transform:rotate(45deg);background:repeating-linear-gradient(45deg,transparent 0 14px,#d9eb9d44 15px 16px)}.release{display:block}.release:hover .cover{filter:brightness(1.18)}.release small{display:block;color:var(--muted);font-size:10px;letter-spacing:2px;margin-top:23px}.release h3{font-size:23px;letter-spacing:-.6px;margin:10px 0}.release p{font-size:12px;color:var(--acid)}.caption{font-size:11px;color:var(--muted);line-height:1.6;margin:24px 0}.universe{display:grid;grid-template-columns:1fr 1fr;gap:9%;background:#11140f;border-block:1px solid #ffffff12;align-items:center}.art{aspect-ratio:1;position:relative;overflow:hidden;border:1px solid #59653a;background:repeating-linear-gradient(45deg,transparent 0 40px,#c8ff420b 41px 42px)}.art strong{font-size:350px;position:absolute;left:50%;top:50%;transform:translate(-50%,-55%);color:var(--acid);font-weight:900}.ring{position:absolute;inset:12%;border:2px solid var(--acid);border-radius:50%}.art span{position:absolute;bottom:25px;left:25px;letter-spacing:3px;font-size:9px;line-height:1.8}.body-copy{font-size:16px;color:var(--muted);line-height:1.85;max-width:580px}.tags{display:flex;gap:12px;margin-top:30px}.tags span{border:1px solid #52603b;border-radius:30px;padding:10px 16px;font-size:10px;letter-spacing:1px}.platforms{display:grid;grid-template-columns:repeat(3,1fr);margin-top:38px;border-top:1px solid #ffffff25}.platforms>a,.platforms>div{padding:28px 15px 28px 0;border-bottom:1px solid #ffffff25;display:flex;justify-content:space-between;margin-right:30px;font-size:20px}.pending small{font-size:10px;color:var(--muted);align-self:center}.contact{background:var(--acid);color:#10150b}.contact h2{font-size:clamp(55px,8vw,110px);letter-spacing:-.065em}.contact em{color:#10150b;-webkit-text-stroke:1px #10150b;color:transparent}.contact p{line-height:1.7}.contact .button{background:#10150b;color:var(--fg)}footer{display:flex;gap:25px;align-items:center;justify-content:space-between;padding:35px 5%;font-size:11px;color:var(--muted)}footer button{border:0;padding:0;font-size:11px}dialog{background:#151a12;color:var(--fg);border:1px solid #657149;max-width:650px;padding:35px;line-height:1.8}dialog::backdrop{background:#000b}dialog h2{font-size:28px}dialog button{float:right}.skip{position:fixed;top:-100px;left:15px;background:var(--acid);color:black;padding:14px;z-index:10}.skip:focus{top:10px}[hidden]{display:none!important}.still *,.paused *{animation-play-state:paused!important}@keyframes sweep{from{transform:rotate(-32deg)}to{transform:rotate(28deg)}}@keyframes drift{to{transform:translate(-8%,8%)}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}@media(max-width:800px){header{height:auto;min-height:95px;flex-wrap:wrap;gap:20px;padding:20px 6%}nav{order:3;width:100%;justify-content:space-between;gap:12px;font-size:12px}.hero{min-height:700px;height:auto}.hero-content{padding:70px 6% 140px}h1{font-size:clamp(75px,15vw,120px)}.orb{width:65vw;height:65vw;right:-22%;top:27%;opacity:.45}.orb:after{font-size:54vw}.hero-bottom span:last-child{display:none}.hero-bottom{font-size:8px;letter-spacing:1px}.section{padding:65px 6%}.section-head{display:block}.releases{gap:18px;grid-template-columns:1fr 1fr}.release:last-child{grid-column:1/-1;max-width:70%}.universe{grid-template-columns:1fr;gap:40px}.art{max-width:430px}.platforms{grid-template-columns:1fr 1fr}.platforms>a,.platforms>div{font-size:16px;margin-right:16px}.pending{gap:10px;flex-wrap:wrap}footer{flex-wrap:wrap;justify-content:flex-start;gap:22px}.ticker{font-size:13px}.ticker span{margin:0 14px}}@media(max-width:450px){.releases{grid-template-columns:1fr}.release:last-child{max-width:none}.cover{aspect-ratio:1.1}.actions{gap:22px}.platforms{grid-template-columns:1fr}.platforms>a,.platforms>div{margin-right:0}.intro{font-size:16px}.art strong{font-size:280px}}

/* Identité issue des affiches DJNetX fournies par l’artiste. */
:root{--bg:#080711;--fg:#fff6ff;--muted:#beb6ca;--acid:#22e6ff}
body{background:radial-gradient(ellipse at 100% 45%,#26102b 0,transparent 45%),#080711}
.logo span{color:#ff40cf;text-shadow:0 0 18px #ff40cf88}header{background:#080711;border-bottom-color:#ff40cf35}
.hero{height:auto;min-height:0;padding-top:42.85%;padding-bottom:55px;background:#080711}
.poster{position:absolute;inset:0 0 auto;width:100%;display:block}.poster img{display:block;width:100%;height:auto}
.hero:after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(0deg,#080711 0,transparent 42%);z-index:0}
.hero-content{position:relative;padding:5px 7% 25px;z-index:2;text-align:center}.hero-content .eyebrow{justify-content:center;color:#ffb456}
h1{font-size:clamp(36px,4.5vw,66px);line-height:1.06;letter-spacing:-2px;margin:15px 0 25px}h1 br{display:none}h1 em{color:#ff56d3}.hero-content .actions{justify-content:center;margin:0}.hero-bottom{z-index:2;color:#c0aeca}
.stage{z-index:1;pointer-events:none;background:none}.beam{opacity:.32;background:linear-gradient(#22e6ff55,transparent);height:78%;width:9%}.b2{background:linear-gradient(#ff25c955,transparent)}.haze{opacity:.4;background:radial-gradient(ellipse at 12% 70%,#00ddff55,transparent 35%),radial-gradient(ellipse at 90% 65%,#ff16c755,transparent 35%)}
.button{background:linear-gradient(110deg,#23e8ff,#9d9aff);color:#080711;box-shadow:0 0 24px #00d9ff22;border:1px solid #a8f6ff}.button:hover{background:#75efff}.ticker{color:#f3d4f0;border-color:#ff40cf33;background:#140c1b}.ticker span{color:#ff50ce}
.cover{border-radius:8px}.release p{color:#22e6ff}.release:hover .cover{box-shadow:0 0 35px #ff24bc33}.universe{background:linear-gradient(130deg,#100c1c,#190a21);border-color:#ff40cf22}.art{border:1px solid #fa49ca66;border-radius:12px;background:none;box-shadow:0 0 60px #c923aa18}.art img{display:block;width:100%;height:auto}.tags{flex-wrap:wrap}.tags span{border-color:#c24ebf;color:#f7c6ed}.platforms>a,.platforms>div{border-color:#b763c636}.contact{background:radial-gradient(ellipse at 100% 0,#75234e66,transparent 65%),linear-gradient(110deg,#0a2031,#230d2f);color:#fff6ff;border-top:1px solid #f34dbe77}.contact em{color:#ff54ca;-webkit-text-stroke:0;text-shadow:0 0 35px #ff30bf44}.contact .button{background:linear-gradient(110deg,#ff45cc,#ffb15d);color:#170919;border-color:#ff9cdd}dialog{background:#170d22;border-color:#f653c8}
@media(min-width:1400px){.hero{padding-bottom:55px}}
@media(max-width:800px){.hero{min-height:0}.hero-content{padding:5px 6% 45px}h1{font-size:40px}.hero-content .actions{gap:24px}.hero-bottom{font-size:8px}}
@media(max-width:650px){.hero{padding-top:100%;padding-bottom:50px}.hero-content{padding:8px 6% 35px}.hero-content .eyebrow{font-size:9px;letter-spacing:1.8px}h1{font-size:37px}h1 br{display:block}.hero:after{background:linear-gradient(0deg,#080711 0,transparent 40%)}.hero-bottom span:nth-child(2){display:none}.hero-bottom{justify-content:center}.actions{gap:18px}}

/* Pochettes fournies : affichage intégral sans recadrage. */
.cover{aspect-ratio:1;background:#080711;overflow:hidden}
.cover img{display:block;width:100%;height:100%;object-fit:contain}
.release-listen{display:inline-block;color:var(--acid);font-size:12px;margin-top:6px;padding:10px 0}
.release-listen:hover{text-decoration:underline}
@media(max-width:800px){.release:last-child{grid-column:auto;max-width:none}}
@media(max-width:450px){.cover{aspect-ratio:1}}

/* Pochettes fournies : affichage intégral sans recadrage. */
.cover{aspect-ratio:1;background:#080711;overflow:hidden}
.cover img{display:block;width:100%;height:100%;object-fit:contain}
.release-listen{display:inline-block;color:var(--acid);font-size:12px;margin-top:6px;padding:10px 0}
.release-listen:hover{text-decoration:underline}
@media(max-width:800px){.release:last-child{grid-column:auto;max-width:none}}
@media(max-width:450px){.cover{aspect-ratio:1}}

/* Scène lumineuse : mouvements continus sans flash. */
.hero .stage{z-index:1;overflow:hidden;isolation:isolate;contain:paint}
.hero .beam{top:-8%;left:18%;width:23%;height:110%;opacity:.7;filter:none;mix-blend-mode:screen;clip-path:polygon(47% 0,53% 0,100% 100%,0 100%);background:linear-gradient(180deg,#55f2ffbb 0%,#13dfff55 45%,transparent 90%);animation:stage-sweep 10s ease-in-out infinite alternate;will-change:transform}
.hero .b2{left:72%;width:26%;background:linear-gradient(180deg,#ff71e3cc,#ff24bb55 45%,transparent 90%);animation-delay:-6s;animation-duration:13s}
.hero .b3{left:40%;width:12%;opacity:.6;background:linear-gradient(180deg,#ffc470bb,#ff8c2833,transparent 85%);animation-delay:-4s;animation-duration:15s}
.hero .b4{left:91%;width:14%;opacity:.55;background:linear-gradient(180deg,#abb0ffbb,#588bff44,transparent 90%);animation-delay:-10s;animation-duration:11s}
.hero .haze{inset:10% -15% 4%;opacity:.65;filter:none;background:radial-gradient(ellipse at 12% 65%,#00ddff55,transparent 36%),radial-gradient(ellipse at 88% 60%,#ff16c766,transparent 37%);animation:stage-mist 17s ease-in-out infinite alternate;mix-blend-mode:screen}
.glow{position:absolute;width:40%;height:45%;border-radius:50%;opacity:.5;mix-blend-mode:screen;pointer-events:none;animation:glow-float 12s ease-in-out infinite alternate;background:radial-gradient(ellipse,#00cfff66,transparent 68%)}
.glow-cyan{left:-18%;top:22%}.glow-pink{right:-18%;top:12%;background:radial-gradient(ellipse,#ff20c888,transparent 68%);animation-delay:-7s}
.sparkles{position:absolute;inset:0;overflow:hidden;pointer-events:none}
.particle{position:absolute;left:var(--x);bottom:8%;width:3px;height:3px;border-radius:50%;background:#a5f7ff;box-shadow:0 0 9px 3px #19dfff88;opacity:0;animation:ember-rise var(--duration) linear infinite;animation-delay:var(--delay)}
.particle:nth-child(even){background:#ffabeb;box-shadow:0 0 10px 3px #ff29bb88}
.hero-content{z-index:3}.hero-content h1{text-shadow:0 2px 20px #080711,0 0 40px #080711}.hero-content .eyebrow,.hero-content .text-link{text-shadow:0 2px 8px #000}
.button{transition:box-shadow .25s,transform .25s}.button:hover{box-shadow:0 0 35px #21ddff66}
.release .cover{transition:box-shadow .4s,transform .4s}.release:hover .cover{box-shadow:0 0 24px #ff24bc55,0 0 45px #22dfff22;transform:translateY(-4px)}
@keyframes stage-sweep{0%{transform:rotate(-36deg)}100%{transform:rotate(30deg)}}
@keyframes stage-mist{0%{transform:translate(-3%,4%) scale(1)}100%{transform:translate(5%,-3%) scale(1.1)}}
@keyframes glow-float{from{transform:translateY(12%) scale(.9)}to{transform:translateY(-12%) scale(1.2)}}
@keyframes ember-rise{0%{opacity:0;transform:translate3d(0,0,0)}15%{opacity:.7}75%{opacity:.6}100%{opacity:0;transform:translate3d(35px,-540px,0)}}
@media(max-width:650px){.hero .beam{opacity:.55;width:30%}.hero .b3,.hero .b4{display:none}.particle:nth-child(n+9){display:none}.glow{width:65%}.hero .haze{opacity:.5}}
@media(prefers-reduced-motion:reduce){.hero .beam,.hero .haze,.glow,.particle{animation:none!important;will-change:auto}.particle{display:none}.hero .beam{opacity:.3}.release:hover .cover{transform:none}}
.p0{--x:4%;--duration:10s;--delay:-0.0s}
.p1{--x:41%;--duration:11s;--delay:-1.7s}
.p2{--x:78%;--duration:12s;--delay:-3.4s}
.p3{--x:23%;--duration:13s;--delay:-5.1s}
.p4{--x:60%;--duration:14s;--delay:-6.8s}
.p5{--x:5%;--duration:15s;--delay:-8.5s}
.p6{--x:42%;--duration:16s;--delay:-10.2s}
.p7{--x:79%;--duration:10s;--delay:-11.9s}
.p8{--x:24%;--duration:11s;--delay:-13.6s}
.p9{--x:61%;--duration:12s;--delay:-15.3s}
.p10{--x:6%;--duration:13s;--delay:-17.0s}
.p11{--x:43%;--duration:14s;--delay:-18.7s}
.p12{--x:80%;--duration:15s;--delay:-20.4s}
.p13{--x:25%;--duration:16s;--delay:-22.1s}
.p14{--x:62%;--duration:10s;--delay:-23.8s}
.p15{--x:7%;--duration:11s;--delay:-25.5s}

.still .particle{opacity:0!important}.still .hero .beam{opacity:.3;will-change:auto}

.featured{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:8%;background:radial-gradient(ellipse at 5% 65%,#9c572b2b,transparent 65%),#100b13;border-bottom:1px solid #ffb65733}
.featured-art{border:1px solid #e4a25377;border-radius:12px;box-shadow:0 0 55px #d389281c;overflow:hidden}
.featured-art img{display:block;width:100%;height:auto}.featured-copy h2{font-size:clamp(64px,8vw,118px);line-height:.9;letter-spacing:-.06em}.featured-copy h2 em{color:#ffc367;text-shadow:0 0 35px #ffa72d33}.featured-copy .eyebrow{color:#ffd08c}.featured-tagline{font-size:22px;line-height:1.5;color:#ffe6bc}.featured-copy .text-link{display:inline-block;margin-top:15px}.featured-copy .actions:empty{display:none}.featured-copy .button{background:linear-gradient(110deg,#ffcf7c,#ff9e73);border-color:#ffdca3}
.artist-portrait{box-shadow:-12px 0 45px #13d9ff1c,12px 0 45px #ff22b92b;border-color:#a85cce}.artist-portrait img{height:100%;object-fit:contain}
@media(max-width:800px){.featured{grid-template-columns:1fr;gap:35px}.featured-art{max-width:520px}.featured-copy h2{font-size:76px}}

.featured-copy .actions{gap:12px;margin-bottom:15px}.featured-copy .button{padding:16px 20px;gap:12px}

/* Bandeau continu : deux copies identiques pour une boucle sans saut. */
.ticker{padding:0;overflow:hidden;text-align:left}
.ticker-track{display:flex;width:max-content;animation:ticker-scroll 26s linear infinite;will-change:transform}
.ticker-copy{display:flex;align-items:center;flex-shrink:0;white-space:nowrap;padding:23px 0}
.ticker-copy span{display:inline-block;margin:0 35px;color:#ff50ce;font-weight:900}
.ticker:hover .ticker-track{animation-play-state:paused}
@keyframes ticker-scroll{to{transform:translateX(-50%)}}
.still .ticker-track{animation:none!important;transform:none;width:100%;will-change:auto}
.still .ticker-copy{white-space:normal;flex-wrap:wrap;justify-content:center;gap:8px;line-height:1.8;width:100%;padding:18px 15px}
.still .ticker-copy span{margin:0 10px}.still .ticker-copy:nth-child(2){display:none}
@media(max-width:650px){.ticker-track{animation-duration:22s}.ticker-copy span{margin:0 24px}}
@media(prefers-reduced-motion:reduce){.ticker-track{animation:none!important;transform:none;width:100%;will-change:auto}.ticker-copy{white-space:normal;flex-wrap:wrap;justify-content:center;gap:8px;line-height:1.8;width:100%;padding:18px 15px}.ticker-copy span{margin:0 10px}.ticker-copy:nth-child(2){display:none}}
