:root{--bg:#12091f;--bg2:#1c1030;--card:#241640;--ink:#f7f2ff;--mute:#b7a9d6;--pink:#ff2e88;--cyan:#22d3ee;--gold:#ffc94a;--line:#3a2860;
--disp:'Bungee','Impact','Arial Black',sans-serif;--body:'Outfit','Segoe UI',system-ui,sans-serif;
box-sizing:border-box;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px)}
*,*::before,*::after{box-sizing:inherit}
html{scroll-padding-top:env(safe-area-inset-top,0px);color-scheme:dark}
body{margin:0;background:var(--bg);color:var(--ink);font:400 16px/1.55 var(--body);-webkit-font-smoothing:antialiased}
a{color:inherit}
:focus-visible{outline:3px solid var(--gold);outline-offset:2px}
.app{max-width:760px;margin:0 auto;padding:0 18px 96px}
header.top{display:flex;align-items:center;gap:12px;padding:16px 0}
.logo{font:400 26px/1 var(--disp);letter-spacing:.04em;background:linear-gradient(90deg,var(--pink),var(--gold));-webkit-background-clip:text;background-clip:text;color:transparent}
.top small{color:var(--mute);font-size:13px}
section.page{display:none}
section.page.on{display:block}
h1,h2{font-family:var(--disp);font-weight:400;line-height:1.05;margin:0}
h2{font-size:28px;margin:8px 0 6px}
.lead{color:var(--mute);margin:0 0 20px;max-width:56ch}

/* Hero : écran LED */
.hero{position:relative;overflow:hidden;border-radius:22px;padding:44px 22px 34px;margin-top:4px;background:#0a0514;border:1px solid var(--line);isolation:isolate}
.hero::before{content:"";position:absolute;inset:0;z-index:-2;background:
radial-gradient(circle,rgba(255,255,255,.16) 1.4px,transparent 1.8px) 0 0/10px 10px,
linear-gradient(120deg,rgba(255,46,136,.55),rgba(34,211,238,.35) 60%,rgba(255,201,74,.35))}
.hero::after{content:"";position:absolute;top:0;bottom:0;width:38%;left:-40%;z-index:-1;background:linear-gradient(90deg,transparent,rgba(255,255,255,.28),transparent);transform:skewX(-18deg);animation:scan 4.5s ease-in-out 1s infinite}
@keyframes scan{to{left:120%}}
.hero h1{font-size:clamp(40px,12vw,76px);text-shadow:0 0 24px rgba(255,46,136,.8)}
.hero p{margin:14px 0 22px;font-size:18px;max-width:34ch}
.since{display:inline-block;background:var(--gold);color:#22103a;font:400 14px var(--disp);padding:5px 12px;border-radius:99px;margin-bottom:16px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;border-radius:14px;padding:13px 20px;font:700 16px var(--body);text-decoration:none;cursor:pointer;color:#fff;background:var(--pink);box-shadow:0 6px 22px rgba(255,46,136,.4)}
.btn.alt{background:transparent;border:2px solid var(--cyan);color:var(--cyan);box-shadow:none}
.row{display:flex;gap:10px;flex-wrap:wrap}

/* Chiffres */
.stats{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:22px 0}
.stat{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:18px 16px}
.stat b{display:block;font:400 42px/1 var(--disp);color:var(--cyan)}
.stat:nth-child(2) b{color:var(--pink)}.stat:nth-child(3) b{color:var(--gold)}.stat:nth-child(4) b{color:var(--ink)}
.stat span{display:block;margin-top:8px;color:var(--mute);font-size:14px}
.about{background:var(--bg2);border-radius:18px;padding:18px;border-left:4px solid var(--pink)}
.about p{margin:0 0 10px}.about p:last-child{margin:0}

/* Spectacle */
.video{display:block;text-decoration:none;position:relative;border-radius:22px;overflow:hidden;min-height:260px;padding:20px;background:
radial-gradient(circle,rgba(255,255,255,.12) 1.4px,transparent 1.8px) 0 0/10px 10px,linear-gradient(160deg,#4b1a7a,#ff2e88 55%,#ffc94a);display:flex;flex-direction:column;justify-content:flex-end;border:1px solid var(--line)}
.play{position:absolute;top:50%;left:50%;width:84px;height:84px;margin:-52px 0 0 -42px;border-radius:50%;background:#fff;display:grid;place-items:center;box-shadow:0 0 0 12px rgba(255,255,255,.25)}
.play::after{content:"";margin-left:6px;border-left:26px solid var(--pink);border-top:16px solid transparent;border-bottom:16px solid transparent}
.video strong{font:400 22px/1.15 var(--disp);text-shadow:0 2px 10px rgba(0,0,0,.5)}
.video em{font-style:normal;font-size:14px;opacity:.9}
.note{color:var(--mute);font-size:14px;margin:10px 2px 22px}
.feat{list-style:none;padding:0;margin:0;display:grid;gap:10px}
.feat li{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:14px 16px}
.feat b{color:var(--gold)}


.player{width:100%;max-width:360px;margin:0 auto;aspect-ratio:9/16;border-radius:22px;overflow:hidden;background:#000;border:1px solid var(--line);box-shadow:0 0 40px rgba(255,46,136,.3)}
.player iframe{width:100%;height:100%;border:0;display:block}
.video[hidden]{display:none}
.brand{width:42px;height:42px;border-radius:11px;flex:none;box-shadow:0 0 14px rgba(255,201,74,.45)}
#splash{position:fixed;inset:0;z-index:99;display:grid;place-items:center;background:#0a0514;transition:opacity .6s ease,visibility .6s}
#splash.off{opacity:0;visibility:hidden}
#splash img{width:min(72vw,300px);border-radius:28%;box-shadow:0 0 60px rgba(255,201,74,.35);animation:pop 1s ease-out both}
@keyframes pop{from{transform:scale(.8);opacity:0}to{transform:none;opacity:1}}
@media (prefers-reduced-motion:reduce){#splash img{animation:none}}
/* Pressbook */
.press{position:relative;display:flex;align-items:center;gap:16px;margin:22px 0 4px;padding:18px;border-radius:20px;background:linear-gradient(135deg,#3b1670,#7a1f6b 60%,#a3204f);border:1px solid var(--line);overflow:hidden}
.press::before{content:"";position:absolute;inset:0;background:radial-gradient(circle,rgba(255,255,255,.1) 1.4px,transparent 1.8px) 0 0/10px 10px;pointer-events:none}
.doc{position:relative;flex:none;width:58px;height:74px;border-radius:8px;background:#fff;color:#c2185b;font:400 15px/74px var(--disp);text-align:center;transform:rotate(-6deg);box-shadow:0 8px 18px rgba(0,0,0,.4)}
.doc::after{content:"";position:absolute;top:0;right:0;border-left:16px solid #e9d9f5;border-bottom:16px solid transparent;border-top-right-radius:8px}
.press div.t{position:relative;flex:1;min-width:0}
.press strong{display:block;font:400 19px/1.15 var(--disp)}
.press span.s{display:block;font-size:13px;opacity:.85;margin:4px 0 12px}
.dl{position:relative;display:inline-flex;align-items:center;gap:8px;border:0;border-radius:99px;padding:12px 20px;font:700 15px var(--body);color:#2a0f45;background:linear-gradient(90deg,var(--gold),#ffe28a);cursor:pointer;box-shadow:0 0 0 0 rgba(255,201,74,.6),0 6px 18px rgba(0,0,0,.35);transition:transform .15s}
.dl:hover{transform:translateY(-2px)}.dl:active{transform:scale(.97)}
.dl svg{width:18px;height:18px}
.dlmsg{position:relative;min-height:18px;margin:8px 0 0;font-size:13px;color:#fff}

/* Avis */
.avis{display:grid;gap:14px}
.rev{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:18px}
.stars{color:var(--gold);letter-spacing:3px;font-size:18px}
.rev p{margin:8px 0 10px}
.rev small{color:var(--mute)}

/* Contact */
form{display:grid;gap:14px;background:var(--card);border:1px solid var(--line);border-radius:20px;padding:18px;margin-bottom:20px}
label{display:grid;gap:6px;font-weight:500;font-size:15px}
input,textarea{width:100%;font:inherit;color:var(--ink);background:var(--bg);border:2px solid var(--line);border-radius:12px;padding:12px}
input:focus,textarea:focus{border-color:var(--cyan);outline:none}
textarea{min-height:130px;resize:vertical}
.msg{min-height:22px;color:var(--cyan);font-size:14px;margin:0}
.info{display:grid;gap:10px}
.info a{display:flex;flex-direction:column;background:var(--bg2);border-radius:14px;padding:12px 16px;text-decoration:none;border:1px solid var(--line)}
.info small{color:var(--mute)}
.chips{display:flex;flex-wrap:wrap;gap:8px;list-style:none;padding:0;margin:0 0 6px}
.chips li{background:var(--card);border:1px solid var(--pink);color:var(--ink);border-radius:99px;padding:7px 15px;font-weight:500;font-size:14px}
h3{font:400 18px/1.2 var(--disp);margin:26px 0 12px}

/* Social links */
.social-links{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:22px 0}
.social-btn{display:flex;align-items:center;justify-content:center;gap:8px;background:var(--card);border:1px solid var(--line);border-radius:16px;padding:12px 10px;text-decoration:none;color:var(--ink);font-weight:500;font-size:14px;transition:transform .15s,border-color .15s}
.social-btn:hover{transform:translateY(-2px);border-color:var(--cyan)}
.social-btn svg{width:20px;height:20px;flex:none}
.social-btn.instagram svg{color:#e1306c}
.social-btn.tiktok svg{color:#ff0050}
.social-btn.facebook svg{color:#1877f2}
@media(max-width:480px){.social-links{grid-template-columns:1fr}}
footer{margin:34px 0 0;text-align:center;color:var(--mute);font-size:13px}

nav.bar{position:fixed;left:0;right:0;bottom:0;z-index:9;display:flex;justify-content:center;background:rgba(18,9,31,.94);backdrop-filter:blur(10px);border-top:1px solid var(--line);padding:6px 8px calc(6px + env(safe-area-inset-bottom,0px))}
nav.bar div{display:flex;width:100%;max-width:760px}
nav.bar button{flex:1;background:none;border:0;color:var(--mute);font:500 12px var(--body);padding:6px 2px;cursor:pointer;display:grid;gap:2px;justify-items:center;border-radius:12px}
nav.bar button span{font-size:22px;line-height:1}
nav.bar button[aria-current=page]{color:var(--gold);background:rgba(255,201,74,.1)}
@media (prefers-reduced-motion:reduce){.hero::after{animation:none}}

#f{margin-top:18px}
.row.center{justify-content:center;margin:14px 0 22px}
