:root{--bg:#07070b;--panel:#101018;--panel2:#151522;--text:#f7f7fb;--muted:#a6a5b5;--line:#252535;--p:#9b5cff;--pink:#ff4fa3;--cyan:#6cf7ff;--radius:22px;--shadow:0 18px 60px rgba(0,0,0,.35)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:radial-gradient(circle at 80% 0,#24103d 0,transparent 30%),var(--bg);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.55}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button{cursor:pointer}.wrap{width:min(1160px,calc(100% - 32px));margin:auto}.site-header{position:sticky;top:0;z-index:50;background:rgba(7,7,11,.82);backdrop-filter:blur(18px);border-bottom:1px solid rgba(255,255,255,.06)}.nav{height:76px;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{display:flex;align-items:center;gap:10px;font-weight:900;letter-spacing:-.03em}.brand-mark{width:38px;height:38px;border-radius:12px;background:linear-gradient(135deg,var(--p),var(--pink));box-shadow:0 0 30px rgba(155,92,255,.35);display:grid;place-items:center;font-size:18px}.nav-links{display:flex;align-items:center;gap:22px;color:#d7d6e1;font-size:14px}.nav-links a:hover,.nav-links a.active{color:#fff}.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:48px;padding:0 18px;border:1px solid var(--line);border-radius:14px;font-weight:800;transition:.22s ease}.btn-primary{border:0;background:linear-gradient(135deg,var(--p),var(--pink));box-shadow:0 10px 35px rgba(155,92,255,.25)}.btn:hover{transform:translateY(-2px);box-shadow:0 12px 35px rgba(0,0,0,.25)}.menu-btn{display:none;width:46px;height:46px;border-radius:14px;background:#11111a;border:1px solid var(--line);color:#fff}.menu-btn span,.menu-btn:before,.menu-btn:after{content:"";display:block;width:19px;height:2px;background:#fff;margin:4px auto;transition:.2s}.mobile-dock{display:none}.hero{padding:80px 0 55px;min-height:650px;display:grid;grid-template-columns:1.05fr .95fr;align-items:center;gap:40px}.eyebrow{display:inline-flex;align-items:center;gap:8px;color:#d8c8ff;background:rgba(155,92,255,.1);border:1px solid rgba(155,92,255,.28);padding:8px 12px;border-radius:999px;font-size:12px;font-weight:800}.eyebrow i{width:7px;height:7px;border-radius:50%;background:var(--cyan);box-shadow:0 0 12px var(--cyan)}h1{font-size:clamp(44px,7vw,82px);line-height:.95;letter-spacing:-.065em;margin:20px 0}.gradient{background:linear-gradient(90deg,#fff,var(--p),var(--pink));-webkit-background-clip:text;background-clip:text;color:transparent}.lead{font-size:19px;color:#c0bfcb;max-width:650px}.actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:26px}.hero-art{min-height:440px;border:1px solid var(--line);border-radius:32px;background:linear-gradient(145deg,#12111c,#09090e);position:relative;overflow:hidden;box-shadow:var(--shadow)}.hero-art:before{content:"";position:absolute;width:330px;height:330px;border-radius:50%;background:radial-gradient(circle,rgba(155,92,255,.5),transparent 65%);filter:blur(15px);left:18%;top:18%}.orb{position:absolute;left:50%;top:50%;width:190px;height:190px;transform:translate(-50%,-50%);border-radius:50%;background:radial-gradient(circle at 35% 25%,#fff, #a46cff 12%,#471a76 40%,#0c0912 72%);box-shadow:0 0 70px rgba(155,92,255,.45);animation:float 6s ease-in-out infinite}.ring{position:absolute;inset:14%;border:1px solid rgba(255,255,255,.12);border-radius:50%;transform:rotate(20deg)}.ring.r2{inset:25%;transform:rotate(-35deg);border-color:rgba(255,79,163,.25)}.signal{position:absolute;bottom:24px;left:24px;right:24px;display:flex;justify-content:space-between;gap:10px}.signal span{font-size:11px;color:#c9c7d4;background:rgba(255,255,255,.06);border:1px solid var(--line);padding:8px 10px;border-radius:10px}.section{padding:70px 0}.section-head{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:26px}.section h2{font-size:clamp(32px,5vw,54px);line-height:1;letter-spacing:-.05em;margin:0}.section-intro{color:var(--muted);max-width:580px}.grid{display:grid;gap:16px}.grid-3{grid-template-columns:repeat(3,1fr)}.grid-2{grid-template-columns:repeat(2,1fr)}.card{background:linear-gradient(145deg,rgba(255,255,255,.055),rgba(255,255,255,.02));border:1px solid var(--line);border-radius:var(--radius);padding:24px;transition:.25s;position:relative;overflow:hidden}.card:hover{transform:translateY(-4px);border-color:#40305a}.icon{width:52px;height:52px;border-radius:16px;background:linear-gradient(135deg,rgba(155,92,255,.22),rgba(255,79,163,.12));display:grid;place-items:center;margin-bottom:20px}.icon svg{width:27px;height:27px;stroke:#fff}.card h3{margin:0 0 9px;font-size:20px}.card p{margin:0;color:var(--muted)}.tag{display:inline-block;margin-top:18px;font-size:11px;color:#d9caff;border:1px solid #3a2c50;border-radius:999px;padding:6px 9px}.band{border-block:1px solid var(--line);background:#0b0b11}.metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line)}.metric{padding:28px;background:var(--bg)}.metric strong{font-size:28px}.metric span{display:block;color:var(--muted);font-size:13px}.story{display:grid;grid-template-columns:.8fr 1.2fr;gap:20px}.founder-art{min-height:420px;border-radius:28px;border:1px solid var(--line);background:radial-gradient(circle at 50% 25%,rgba(155,92,255,.32),transparent 32%),linear-gradient(160deg,#171321,#09090d);display:grid;place-items:center;position:relative;overflow:hidden}.founder-photo{width:100%;height:100%;min-height:420px;object-fit:cover;object-position:center;border-radius:28px;display:block}.founder-art:has(.founder-photo:not([hidden])) .founder-label{background:linear-gradient(180deg,transparent,rgba(0,0,0,.72));border:0;color:#fff;bottom:0;border-radius:0;padding-top:55px}.founder-photo[hidden] + .silhouette{display:block}.founder-photo:not([hidden]) + .silhouette{display:none}.silhouette{width:145px;height:210px;border-radius:70px 70px 35px 35px;background:linear-gradient(180deg,#282435,#0e0d13);box-shadow:0 0 80px rgba(155,92,255,.22)}.founder-label{position:absolute;bottom:18px;left:18px;right:18px;padding:12px;border:1px dashed #514265;border-radius:13px;color:#c9c1d8;font-size:12px;background:rgba(0,0,0,.25)}.portfolio-art{height:190px;border-radius:16px;margin-bottom:18px;border:1px solid var(--line);background:linear-gradient(135deg,#161222,#09090d);position:relative;overflow:hidden}.portfolio-art:before{content:"";position:absolute;width:130px;height:130px;border-radius:30px;background:linear-gradient(135deg,var(--p),var(--pink));filter:blur(4px);right:-25px;top:-30px;transform:rotate(25deg)}.portfolio-art:after{content:"CONCEPT";position:absolute;left:15px;bottom:15px;font-size:10px;letter-spacing:.2em;color:#fff;background:rgba(0,0,0,.5);padding:7px 9px;border-radius:7px}.cta{padding:45px;border-radius:30px;border:1px solid #38264d;background:radial-gradient(circle at 80% 20%,rgba(255,79,163,.18),transparent 35%),linear-gradient(135deg,#14101d,#0b0a0f);text-align:center}.cta h2{margin:0 auto 12px;max-width:760px}.form{display:grid;gap:13px}.field{display:grid;gap:7px}.field label{font-size:13px;color:#cbc9d4}.field input,.field textarea,.field select{width:100%;background:#0c0c12;color:#fff;border:1px solid var(--line);border-radius:13px;padding:14px;outline:0}.field input:focus,.field textarea:focus,.field select:focus{border-color:#7350a0;box-shadow:0 0 0 3px rgba(155,92,255,.1)}.field textarea{min-height:150px;resize:vertical}.footer{padding:55px 0 100px;border-top:1px solid var(--line);color:var(--muted)}.footer-grid{display:grid;grid-template-columns:1.5fr repeat(3,1fr);gap:30px}.footer h4{color:#fff;margin:0 0 12px}.footer a{display:block;margin:7px 0}.service-hero{padding:70px 0 40px}.service-hero .mini-art{height:280px;border:1px solid var(--line);border-radius:28px;background:radial-gradient(circle at 50% 50%,rgba(155,92,255,.32),transparent 45%),#0d0c12;display:grid;place-items:center}.mini-art svg{width:180px;height:180px}.crumb{font-size:12px;color:var(--muted);margin-bottom:15px}.touch-glow{position:fixed;pointer-events:none;width:90px;height:90px;border-radius:50%;background:radial-gradient(circle,rgba(108,247,255,.18),transparent 65%);transform:translate(-50%,-50%);z-index:100;opacity:0;transition:opacity .2s}.reveal{opacity:0;transform:translateY(16px);transition:.6s ease}.reveal.visible{opacity:1;transform:none}@keyframes float{50%{transform:translate(-50%,-56%)}}@media(max-width:900px){.nav-links,.nav>.btn{display:none}.menu-btn{display:block}.hero{grid-template-columns:1fr;padding-top:55px}.hero-art{min-height:340px}.grid-3{grid-template-columns:1fr 1fr}.story{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr 1fr}.mobile-dock{position:fixed;display:grid;grid-template-columns:repeat(4,1fr);bottom:10px;left:10px;right:10px;z-index:60;background:rgba(16,16,24,.9);backdrop-filter:blur(18px);border:1px solid var(--line);border-radius:18px;padding:7px}.mobile-dock a{font-size:10px;color:#aaa;text-align:center;padding:7px 3px}.mobile-dock a strong{display:block;color:#fff;font-size:11px}.mobile-menu{position:fixed;inset:76px 12px auto 12px;background:#101018;border:1px solid var(--line);border-radius:22px;padding:10px;display:none;box-shadow:var(--shadow);z-index:49}.mobile-menu.open{display:block}.mobile-menu a{display:block;padding:15px;border-radius:13px;color:#ddd}.mobile-menu a:hover{background:#181823}.metrics{grid-template-columns:1fr 1fr}}@media(max-width:560px){.wrap{width:min(100% - 22px,1160px)}.hero{padding-top:38px;min-height:auto}.hero-art{min-height:290px}.orb{width:135px;height:135px}.section{padding:52px 0}.grid-3,.grid-2{grid-template-columns:1fr}.section-head{display:block}.section-head .btn{margin-top:15px}.card{padding:20px}.footer-grid{grid-template-columns:1fr}.cta{padding:30px 18px}h1{font-size:clamp(43px,15vw,68px)}.lead{font-size:16px}.actions .btn{width:100%}.metrics{grid-template-columns:1fr 1fr}.metric{padding:20px}.metric strong{font-size:23px}.nav{height:68px}.mobile-menu{inset:68px 10px auto 10px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}}


/* Official logo slot + music showcase */
.brand{display:inline-flex;align-items:center;gap:10px}
.brand-logo{width:42px;height:42px;object-fit:contain;border-radius:10px}
.home-logo{display:flex;justify-content:center;padding-top:26px;padding-bottom:4px}
.home-logo a{display:flex;align-items:center;justify-content:center;min-height:74px;padding:10px 18px;border:1px solid rgba(255,255,255,.10);border-radius:22px;background:rgba(255,255,255,.025);box-shadow:0 0 35px rgba(164,72,255,.10)}
.home-logo img{display:block;max-width:230px;max-height:74px;width:auto;height:auto;object-fit:contain}
.logo-fallback{display:none;font-size:36px;font-weight:900}
.music-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.music-card{display:grid;grid-template-columns:auto 1fr;gap:18px;align-items:start}
.music-number{font-size:34px;font-weight:900;line-height:1;background:linear-gradient(135deg,#fff,#a66bff);-webkit-background-clip:text;background-clip:text;color:transparent}
.music-card audio{width:100%;margin-top:16px;filter:sepia(.1) saturate(.7) brightness(.85)}
.music-card audio::-webkit-media-controls-download-button{display:none}
@media(max-width:760px){.music-grid{grid-template-columns:1fr}.home-logo{padding-top:18px}.home-logo img{max-width:190px;max-height:62px}.brand-logo{width:36px;height:36px}}

/* Remplace uniquement l'ancien bloc .portfolio-art... par ce bloc. */
.portfolio-art{height:285px;border-radius:18px;margin-bottom:18px;border:1px solid rgba(255,255,255,.10);background:radial-gradient(circle at 50% 45%,rgba(155,92,255,.10),transparent 42%),linear-gradient(145deg,#151122,#07070b 72%);position:relative;overflow:hidden;isolation:isolate;box-shadow:inset 0 0 55px rgba(155,92,255,.07),0 12px 35px rgba(0,0,0,.22)}
.portfolio-art:before{content:"";position:absolute;inset:-28%;background:conic-gradient(from 130deg,transparent 0 25%,rgba(155,92,255,.13) 34%,transparent 44% 58%,rgba(255,79,163,.10) 68%,transparent 78% 100%);filter:blur(14px);animation:portfolioSpin 18s linear infinite;z-index:-1}
.portfolio-art:after{content:"";position:absolute;left:14px;bottom:14px;font-size:9px;letter-spacing:.22em;color:#fff;background:rgba(0,0,0,.48);border:1px solid rgba(255,255,255,.10);padding:7px 9px;border-radius:8px;backdrop-filter:blur(10px);z-index:8}
.art-caption{position:absolute;right:14px;bottom:14px;font-size:9px;letter-spacing:.22em;color:#cfc9df;z-index:8;opacity:.72}
.portfolio-brand-art:after{content:"CONCEPT"}
.portfolio-campaign-art:after{content:"CAMPAIGN"}
.portfolio-web-art:after{content:"WEB"}
.art-star{position:absolute;width:3px;height:3px;border-radius:50%;background:#fff;box-shadow:0 0 10px 2px rgba(108,247,255,.7);opacity:.72;animation:starPulse 3.4s ease-in-out infinite}
.star-1{top:18%;left:18%}.star-2{top:29%;right:16%;animation-delay:-1s}.star-3{bottom:30%;left:31%;width:2px;height:2px}.star-4{top:52%;right:28%;width:2px;height:2px;animation-delay:-2s}
.brand-core{position:absolute;left:50%;top:50%;width:94px;height:94px;transform:translate(-50%,-50%);border-radius:50%;background:radial-gradient(circle at 38% 33%,#fff 0 5%,#c28bff 12%,#8f50f6 25%,#2f1557 48%,#09090f 72%);box-shadow:0 0 24px rgba(155,92,255,.65),0 0 75px rgba(155,92,255,.32),inset 0 0 22px rgba(255,255,255,.15);animation:coreFloat 5s ease-in-out infinite}
.brand-orbit{position:absolute;left:50%;top:50%;width:215px;height:76px;transform:translate(-50%,-50%) rotate(-18deg);border:1px solid rgba(255,255,255,.20);border-radius:50%;box-shadow:0 0 24px rgba(155,92,255,.08)}
.orbit-b{width:175px;height:58px;transform:translate(-50%,-50%) rotate(28deg);border-color:rgba(255,79,163,.28);box-shadow:0 0 22px rgba(255,79,163,.10)}
.brand-glyph{position:absolute;border:1px solid rgba(108,247,255,.26);background:linear-gradient(135deg,rgba(108,247,255,.12),rgba(155,92,255,.08));box-shadow:0 0 18px rgba(108,247,255,.10);transform:rotate(28deg)}
.glyph-a{width:30px;height:30px;left:19%;top:34%;border-radius:8px}.glyph-b{width:18px;height:18px;right:20%;top:22%;border-radius:50%;transform:none}
.brand-grid{position:absolute;inset:12%;background:linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px);background-size:22px 22px;mask-image:radial-gradient(circle,black 0 38%,transparent 75%);opacity:.5}
.portfolio-campaign-art{background:radial-gradient(circle at 50% 50%,rgba(108,247,255,.12),transparent 36%),linear-gradient(145deg,#111521,#07070b 72%)}
.campaign-core{position:absolute;left:50%;top:50%;width:54px;height:54px;transform:translate(-50%,-50%);border-radius:50%;background:radial-gradient(circle,#fff 0 6%,#6cf7ff 18%,#226c80 40%,#0a1116 74%);box-shadow:0 0 20px rgba(108,247,255,.65),0 0 65px rgba(108,247,255,.22);z-index:4}
.signal-ring{position:absolute;left:50%;top:50%;border:1px solid rgba(108,247,255,.22);border-radius:50%;transform:translate(-50%,-50%) scale(.35);animation:signalExpand 4.5s ease-out infinite}
.ring-one{width:86px;height:86px}.ring-two{width:150px;height:150px;animation-delay:1.4s}.ring-three{width:220px;height:220px;animation-delay:2.8s;border-color:rgba(155,92,255,.17)}
.node{position:absolute;width:7px;height:7px;border-radius:50%;background:#fff;box-shadow:0 0 14px rgba(108,247,255,.85);z-index:5;animation:nodePulse 2.4s ease-in-out infinite}
.node-a{left:18%;top:25%}.node-b{right:18%;top:34%;animation-delay:-.6s}.node-c{left:27%;bottom:25%;animation-delay:-1.1s}.node-d{right:25%;bottom:20%;animation-delay:-1.7s}
.beam{position:absolute;height:1px;transform-origin:left center;background:linear-gradient(90deg,rgba(108,247,255,0),rgba(108,247,255,.45),rgba(155,92,255,0));filter:blur(.1px);z-index:2}
.beam-a{width:45%;left:20%;top:27%;transform:rotate(18deg)}.beam-b{width:42%;left:28%;top:72%;transform:rotate(-24deg)}.beam-c{width:40%;left:50%;top:48%;transform:rotate(38deg)}
.portfolio-web-art{background:radial-gradient(circle at 52% 52%,rgba(255,79,163,.12),transparent 38%),linear-gradient(145deg,#15121e,#07070b 75%)}
.web-planet{position:absolute;left:50%;top:51%;width:106px;height:106px;transform:translate(-50%,-50%);border-radius:50%;background:radial-gradient(circle at 36% 28%,#fff 0 4%,#e08fff 13%,#7035a5 30%,#241235 52%,#09090f 74%);box-shadow:0 0 22px rgba(255,79,163,.42),0 0 80px rgba(155,92,255,.20);animation:coreFloat 6s ease-in-out infinite reverse}
.web-orbit{position:absolute;left:50%;top:51%;width:225px;height:78px;transform:translate(-50%,-50%) rotate(-23deg);border:1px solid rgba(255,79,163,.22);border-radius:50%}
.web-orbit-b{width:180px;height:60px;transform:translate(-50%,-50%) rotate(31deg);border-color:rgba(108,247,255,.18)}
.web-window{position:absolute;left:50%;top:50%;width:198px;height:122px;transform:translate(-50%,-50%) perspective(700px) rotateX(12deg) rotateY(-18deg);border:1px solid rgba(255,255,255,.20);border-radius:12px;background:linear-gradient(145deg,rgba(25,25,38,.76),rgba(9,9,15,.58));box-shadow:0 14px 28px rgba(0,0,0,.35),0 0 24px rgba(155,92,255,.10);backdrop-filter:blur(8px);z-index:6;overflow:hidden}
.web-dot{display:inline-block;width:5px;height:5px;border-radius:50%;margin:11px 0 0 8px;background:#fff;opacity:.7}.web-line{position:absolute;left:13px;width:72px;height:5px;border-radius:5px;background:linear-gradient(90deg,rgba(255,255,255,.46),rgba(155,92,255,.05));opacity:.6}.line-wide{top:40px;width:120px}.web-line:not(.line-wide):nth-of-type(6){top:56px}.web-line:not(.line-wide):nth-of-type(7){top:68px;width:88px}
.web-card-mini{position:absolute;right:12px;width:40px;border:1px solid rgba(255,255,255,.10);border-radius:7px;background:linear-gradient(135deg,rgba(155,92,255,.22),rgba(255,79,163,.06))}.mini-one{top:42px;height:28px}.mini-two{top:76px;height:19px}
@keyframes portfolioSpin{to{transform:rotate(360deg)}}
@keyframes coreFloat{50%{transform:translate(-50%,-56%) scale(1.035)}}
@keyframes starPulse{50%{opacity:1;transform:scale(1.5)}}
@keyframes signalExpand{0%{opacity:0;transform:translate(-50%,-50%) scale(.35)}20%{opacity:.9}78%{opacity:.22}100%{opacity:0;transform:translate(-50%,-50%) scale(1.15)}}
@keyframes nodePulse{50%{transform:scale(1.35);box-shadow:0 0 20px rgba(108,247,255,1)}}
@media(max-width:900px){.portfolio-art{height:260px}}
@media(max-width:560px){.portfolio-art{height:300px}}
@media(prefers-reduced-motion:reduce){.portfolio-art:before,.brand-core,.web-planet,.art-star,.signal-ring,.node{animation:none!important}}
