:root{--bg:#050505;--surface:#0d0d0f;--surface2:#111114;--violet:#440099;--violet2:#7728d6;--text:#fff;--muted:#b7b7bd;--soft:#767a7d;--line:rgba(255,255,255,.10);--line2:rgba(255,255,255,.06);--radius:28px;--shell:min(1380px,calc(100vw - 64px));}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:"Outfit",system-ui,sans-serif;line-height:1.45;overflow-x:hidden}a{color:inherit;text-decoration:none}button{font:inherit}.shell{width:var(--shell);margin-inline:auto}.ambient{position:fixed;z-index:-3;border-radius:999px;filter:blur(120px);opacity:.18;pointer-events:none}.ambient-a{width:560px;height:560px;background:#440099;right:-150px;top:80px}.ambient-b{width:520px;height:520px;background:#211044;left:-220px;top:900px;opacity:.12}body:before{content:"";position:fixed;inset:0;z-index:-2;pointer-events:none;background-image:linear-gradient(rgba(255,255,255,.018) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px);background-size:80px 80px;mask-image:linear-gradient(to bottom,#000,transparent 70%)}
.site-header{position:fixed;z-index:50;top:0;left:0;right:0;padding:18px 0;transition:.35s}.site-header.scrolled{background:rgba(5,5,5,.72);backdrop-filter:blur(22px);border-bottom:1px solid var(--line2);padding:10px 0}.nav-shell{display:flex;align-items:center;gap:28px}.brand{display:flex;align-items:center;gap:12px;min-width:max-content}.brand-mark{width:40px;height:40px;border:1px solid var(--line);border-radius:13px;display:grid;place-items:center;font-weight:900;letter-spacing:-.08em;background:linear-gradient(145deg,rgba(255,255,255,.08),rgba(255,255,255,.015));box-shadow:inset 0 1px rgba(255,255,255,.12)}.brand-mark span,.stage-symbol span{color:#9860dc}.brand-name{font-size:18px;font-weight:700;letter-spacing:-.025em}.main-nav{display:flex;gap:26px;margin:auto}.main-nav a{font-size:14px;color:#d1d1d5;transition:.25s}.main-nav a:hover{color:#fff}.nav-actions{display:flex;align-items:center;gap:14px}.socials{display:flex;gap:7px}.socials a{width:32px;height:32px;border:1px solid var(--line);border-radius:50%;display:grid;place-items:center;font-size:10px;font-weight:700;color:var(--muted);transition:.25s}.socials a:hover{color:#fff;border-color:rgba(119,40,214,.6);background:rgba(68,0,153,.18)}.button{min-height:52px;padding:0 22px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;font-weight:600;font-size:15px;transition:.25s;border:1px solid transparent;cursor:pointer}.button-small{min-height:40px;padding:0 17px;font-size:13px}.button-primary{background:linear-gradient(135deg,#4c00a9,#6d1bc9);box-shadow:0 12px 34px rgba(68,0,153,.28),inset 0 1px rgba(255,255,255,.18)}.button-primary:hover{transform:translateY(-2px);box-shadow:0 16px 42px rgba(68,0,153,.40),inset 0 1px rgba(255,255,255,.18)}.button-ghost{border-color:var(--line);background:rgba(255,255,255,.025);color:#ddd}.button-ghost:hover{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.18)}.menu-toggle{display:none;background:none;border:1px solid var(--line);color:#fff;width:40px;height:40px;border-radius:13px;font-size:19px}
.hero{min-height:820px;padding-top:165px;display:grid;grid-template-columns:1.05fr .95fr;gap:70px;align-items:center}.eyebrow{font-size:11px;letter-spacing:.16em;font-weight:700;color:#a9a9b0}.eyebrow span{color:#8c45dd}.hero h1{font-size:clamp(66px,7vw,112px);line-height:.88;letter-spacing:-.065em;margin:22px 0 30px;font-weight:900;max-width:830px}.hero h1 span{background:linear-gradient(100deg,#fff 3%,#a56be8 52%,#4e0d9c 100%);-webkit-background-clip:text;background-clip:text;color:transparent}.hero-text{font-size:21px;color:var(--muted);max-width:630px;font-weight:350;margin:0 0 32px}.hero-actions{display:flex;gap:12px}.hero-proof{display:flex;flex-wrap:wrap;gap:20px;margin-top:34px;color:#85858d;font-size:13px}.hero-proof span{display:flex;align-items:center;gap:8px}.hero-proof i{width:5px;height:5px;background:#7d30d2;border-radius:50%;box-shadow:0 0 12px #7d30d2}.hero-stage{height:570px;border:1px solid var(--line);border-radius:38px;position:relative;overflow:hidden;background:radial-gradient(circle at 70% 25%,rgba(95,18,185,.24),transparent 32%),linear-gradient(145deg,rgba(255,255,255,.055),rgba(255,255,255,.012));box-shadow:inset 0 1px rgba(255,255,255,.10),0 40px 100px rgba(0,0,0,.35)}.stage-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:42px 42px;mask-image:radial-gradient(circle at center,#000,transparent 74%)}.stage-orbit{position:absolute;border:1px solid rgba(145,78,222,.19);border-radius:50%;left:50%;top:49%;transform:translate(-50%,-50%)}.orbit-a{width:410px;height:410px}.orbit-b{width:290px;height:290px}.stage-card{position:absolute;border:1px solid var(--line);background:rgba(10,10,12,.70);backdrop-filter:blur(18px);box-shadow:inset 0 1px rgba(255,255,255,.08),0 22px 50px rgba(0,0,0,.28)}.stage-card-main{width:290px;height:290px;border-radius:42px;left:50%;top:49%;transform:translate(-50%,-50%) rotate(-3deg);display:flex;flex-direction:column;justify-content:flex-end;padding:30px}.stage-kicker{font-size:9px;letter-spacing:.18em;color:#8b8b93}.stage-symbol{font-size:82px;line-height:.8;font-weight:900;letter-spacing:-.09em;margin:18px 0}.stage-card-main p{font-size:13px;color:var(--muted);margin:0}.stage-chip{padding:14px 17px;border-radius:16px;font-size:10px;letter-spacing:.1em;color:#c5c5ca}.stage-chip span{color:#8150bd;margin-right:7px}.stage-chip-a{left:7%;top:16%;transform:rotate(-6deg)}.stage-chip-b{right:5%;top:29%;transform:rotate(5deg)}.stage-chip-c{left:13%;bottom:11%;transform:rotate(3deg)}
.stats-wrap{margin-top:-15px}.stats{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--line);border-radius:22px;background:rgba(255,255,255,.018);overflow:hidden}.stat{padding:27px 32px;display:flex;justify-content:space-between;align-items:center;gap:18px}.stat:not(:last-child){border-right:1px solid var(--line)}.stat strong{font-size:28px;letter-spacing:-.04em}.stat span{font-size:12px;color:var(--soft);text-transform:uppercase;letter-spacing:.09em}.section{padding-top:138px}.section-heading{display:grid;grid-template-columns:1.4fr .6fr;gap:40px;align-items:end;margin-bottom:42px}.section-heading.compact{margin-bottom:32px}.section-heading h2,.about-panel h2,.contact-panel h2{font-size:clamp(40px,5vw,68px);line-height:.98;letter-spacing:-.045em;margin:12px 0 0;font-weight:760}.section-heading p{color:var(--soft);max-width:480px;margin:0 0 5px;font-size:15px}
.featured-card{display:grid;grid-template-columns:1.45fr .75fr;min-height:560px;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:var(--surface)}.featured-media{position:relative;min-height:560px;border-right:1px solid var(--line)}.placeholder-media{background-image:var(--card-image,radial-gradient(circle at 68% 34%,rgba(113,42,201,.35),transparent 23%),linear-gradient(135deg,#141017,#09090a 62%,#12081e));background-size:cover;background-position:center;overflow:hidden}.placeholder-media[data-has-image="true"]{background-image:linear-gradient(to top,rgba(0,0,0,.32),transparent 55%),var(--card-image)}.media-noise{position:absolute;inset:0;opacity:.12;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.4'/%3E%3C/svg%3E")}.media-code{position:absolute;left:24px;top:22px;font-size:9px;letter-spacing:.16em;color:#85858e}.play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:82px;height:82px;border-radius:50%;background:rgba(255,255,255,.92);display:grid;place-items:center;box-shadow:0 20px 50px rgba(0,0,0,.25);transition:.25s}.play i{display:block;width:0;height:0;border-top:8px solid transparent;border-bottom:8px solid transparent;border-left:13px solid #16051f;margin-left:4px}.featured-media:hover .play{transform:translate(-50%,-50%) scale(1.08);box-shadow:0 20px 70px rgba(81,12,161,.40)}.featured-copy{padding:45px;display:flex;flex-direction:column;justify-content:center}.featured-copy h3{font-size:38px;line-height:1.02;letter-spacing:-.04em;margin:15px 0}.featured-copy p{color:var(--muted);font-size:16px}.featured-bottom{margin-top:auto;padding-top:35px;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;color:var(--soft);font-size:12px}.featured-bottom a{color:#fff}.featured-bottom b,.gear-link b{color:#a668eb;margin-left:4px}
.universe-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.universe-card{border:1px solid var(--line);background:linear-gradient(145deg,rgba(255,255,255,.035),rgba(255,255,255,.012));border-radius:26px;padding:24px;min-height:490px;display:flex;flex-direction:column;transition:.3s}.universe-card:hover{transform:translateY(-5px);border-color:rgba(136,69,214,.34);box-shadow:0 30px 60px rgba(0,0,0,.25)}.universe-top{display:flex;justify-content:space-between;font-size:11px;color:var(--soft)}.universe-top i{font-style:normal;color:#8d54ca}.universe-art{height:205px;margin:24px 0 30px;border-radius:19px;border:1px solid var(--line2);position:relative;overflow:hidden;background:#09090b}.universe-art:before,.universe-art:after,.universe-art div{content:"";position:absolute;border:1px solid rgba(137,67,220,.28);border-radius:50%}.art-1:before{width:180px;height:180px;left:50%;top:50%;transform:translate(-50%,-50%)}.art-1:after{width:90px;height:90px;left:50%;top:50%;transform:translate(-50%,-50%);box-shadow:0 0 55px rgba(85,20,163,.45)}.art-1 div{width:230px;height:26px;border-radius:99px;left:50%;top:50%;transform:translate(-50%,-50%) rotate(-22deg)}.art-2:before{width:210px;height:95px;border-radius:22px;left:50%;top:50%;transform:translate(-50%,-50%) rotate(-6deg);box-shadow:0 0 55px rgba(85,20,163,.32)}.art-2:after{width:70px;height:70px;left:56%;top:49%;transform:translate(-50%,-50%)}.art-2 div{width:15px;height:120px;border-radius:99px;left:28%;top:50%;transform:translate(-50%,-50%) rotate(32deg)}.art-3:before{width:170px;height:112px;border-radius:26px;left:50%;top:50%;transform:translate(-50%,-50%);box-shadow:0 0 55px rgba(85,20,163,.32)}.art-3:after{width:110px;height:70px;border-radius:15px;left:50%;top:50%;transform:translate(-50%,-50%)}.art-3 div{width:210px;height:1px;left:50%;top:50%;transform:translate(-50%,-50%) rotate(35deg)}.universe-card h3{font-size:28px;letter-spacing:-.035em;margin:0 0 10px;text-transform:capitalize}.universe-card p{color:var(--muted);margin:0}.tags{display:flex;gap:7px;flex-wrap:wrap;margin-top:auto;padding-top:24px}.tags span{border:1px solid var(--line);border-radius:99px;padding:7px 10px;color:var(--soft);font-size:10px}
.filters{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:25px}.filter{border:1px solid var(--line);background:transparent;color:#9e9ea6;border-radius:99px;padding:10px 15px;cursor:pointer;transition:.25s;font-size:12px}.filter:hover,.filter.active{color:#fff;background:rgba(81,13,160,.22);border-color:rgba(133,67,211,.45)}.video-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.video-card{min-width:0}.video-media{aspect-ratio:16/9;border:1px solid var(--line);border-radius:21px;position:relative;transition:.3s;background-size:cover}.video-card:hover .video-media{transform:translateY(-4px);border-color:rgba(140,70,222,.45);box-shadow:0 25px 55px rgba(45,0,95,.20)}.video-index{position:absolute;right:15px;top:14px;font-size:10px;color:#666}.badge{position:absolute;left:14px;top:14px;font-size:9px;letter-spacing:.11em;padding:7px 9px;border-radius:99px;background:rgba(5,5,5,.65);border:1px solid var(--line);backdrop-filter:blur(8px)}.play-small{width:50px;height:50px;opacity:0;transform:translate(-50%,-42%) scale(.9)}.video-card:hover .play-small{opacity:1;transform:translate(-50%,-50%) scale(1)}.play-small i{border-top-width:6px;border-bottom-width:6px;border-left-width:9px}.video-copy{padding:16px 5px 5px}.video-copy span{font-size:10px;color:var(--soft);letter-spacing:.08em;text-transform:uppercase}.video-copy h3{font-size:18px;line-height:1.18;margin:8px 0 0;font-weight:600;letter-spacing:-.02em}.empty{color:var(--soft)}
.project-bento{display:grid;grid-template-columns:1.25fr .75fr;grid-template-rows:repeat(2,320px);gap:16px}.project-card{position:relative;border:1px solid var(--line);border-radius:28px;overflow:hidden;background:var(--surface);min-height:0}.project-large{grid-row:1/3}.project-bg{position:absolute;inset:0;transition:.35s}.project-card:hover .project-bg{transform:scale(1.025)}.project-bg:after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(3,3,4,.94),rgba(3,3,4,.08) 70%)}.project-code{position:absolute;right:20px;top:18px;font-size:9px;letter-spacing:.16em;color:#6d6d76}.project-copy{position:absolute;z-index:2;left:32px;right:32px;bottom:30px}.project-large .project-copy{max-width:560px}.project-copy h3{font-size:34px;letter-spacing:-.04em;margin:9px 0}.project-large .project-copy h3{font-size:52px}.project-copy p{color:#a9a9b1;max-width:570px;margin:0 0 18px}.project-meta{font-size:10px;color:#707078;text-transform:uppercase;letter-spacing:.09em}.project-arrow{position:absolute;z-index:3;right:26px;bottom:26px;width:42px;height:42px;border:1px solid var(--line);background:rgba(255,255,255,.04);border-radius:50%;display:grid;place-items:center;color:#a66de7;transition:.25s}.project-card:hover .project-arrow{background:#fff;color:#16051f;transform:rotate(5deg)}
.gear-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.gear-card{border:1px solid var(--line);border-radius:22px;padding:23px;min-height:310px;background:rgba(255,255,255,.015);display:flex;flex-direction:column;transition:.25s}.gear-card:hover{background:rgba(255,255,255,.035);border-color:rgba(130,65,207,.34);transform:translateY(-4px)}.gear-icon{height:80px;width:80px;border-radius:20px;border:1px solid var(--line);background:radial-gradient(circle at 65% 30%,rgba(114,41,202,.3),transparent 45%),#0a0a0c;display:grid;place-items:center;margin-bottom:28px}.gear-icon span{font-size:12px;color:#8250bd}.gear-card h3{font-size:22px;margin:9px 0;letter-spacing:-.025em}.gear-card p{color:var(--soft);font-size:14px;margin:0}.gear-link{margin-top:auto;padding-top:22px;font-size:12px;color:#c7c7cd}
.about-panel{display:grid;grid-template-columns:1fr 1fr;gap:90px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:80px 0}.about-panel p{font-size:20px;color:var(--muted);max-width:620px;margin:4px 0 30px}.about-values{display:flex;flex-wrap:wrap;gap:9px}.about-values span{border:1px solid var(--line);border-radius:99px;padding:10px 13px;font-size:11px;color:#b8b8be}.contact-panel{border:1px solid rgba(139,72,216,.28);border-radius:32px;padding:60px;background:radial-gradient(circle at 90% 10%,rgba(100,26,186,.22),transparent 30%),linear-gradient(145deg,rgba(255,255,255,.04),rgba(255,255,255,.015));display:grid;grid-template-columns:1.1fr .9fr;gap:60px;align-items:center}.contact-panel p{color:var(--muted);max-width:650px;font-size:16px}.contact-actions{display:flex;flex-direction:column;align-items:flex-start;gap:14px}.contact-note{font-size:12px;color:var(--soft);padding-left:6px}.site-footer{padding:95px 0 38px}.footer-grid{border-top:1px solid var(--line);padding-top:35px;display:grid;grid-template-columns:1fr 1fr;gap:30px}.brand-footer{margin-bottom:10px}.footer-grid p{color:var(--soft);font-size:13px}.footer-links{display:flex;justify-content:flex-end;gap:20px;flex-wrap:wrap}.footer-links a{font-size:12px;color:#9999a1}.footer-meta{grid-column:1/3;display:flex;justify-content:space-between;color:#5f5f67;font-size:10px;padding-top:28px}
.reveal{opacity:0;transform:translateY(22px);transition:opacity .7s ease,transform .7s ease}.reveal.visible{opacity:1;transform:none}
@media (max-width:1100px){:root{--shell:min(100% - 40px,1000px)}.main-nav{display:none}.menu-toggle{display:block}.nav-actions .socials{display:none}.hero{grid-template-columns:1fr;gap:45px;padding-top:145px}.hero-stage{height:470px}.hero h1{max-width:900px}.section-heading{grid-template-columns:1fr}.featured-card{grid-template-columns:1fr}.featured-media{min-height:auto;aspect-ratio:16/9;border-right:0;border-bottom:1px solid var(--line)}.universe-grid{grid-template-columns:1fr 1fr}.video-grid{grid-template-columns:1fr 1fr}.gear-grid{grid-template-columns:1fr 1fr}.about-panel{gap:45px}.menu-open .main-nav{display:flex;position:fixed;left:20px;right:20px;top:74px;padding:22px;border:1px solid var(--line);border-radius:20px;background:rgba(8,8,9,.96);backdrop-filter:blur(22px);flex-direction:column;gap:12px}.menu-open .main-nav a{padding:8px 4px}}
@media (max-width:700px){:root{--shell:calc(100% - 28px);--radius:22px}.site-header{padding:10px 0}.brand-name{font-size:15px}.nav-actions .button{display:none}.hero{min-height:auto;padding-top:125px}.hero h1{font-size:58px;margin-top:16px}.hero-text{font-size:18px}.hero-actions{flex-direction:column;align-items:stretch}.hero-stage{height:390px}.stage-card-main{width:220px;height:220px;border-radius:32px;padding:22px}.stage-symbol{font-size:62px}.orbit-a{width:330px;height:330px}.orbit-b{width:250px;height:250px}.stage-chip-b{right:1%}.stats{grid-template-columns:1fr}.stat:not(:last-child){border-right:0;border-bottom:1px solid var(--line)}.section{padding-top:100px}.section-heading h2,.about-panel h2,.contact-panel h2{font-size:42px}.section-heading{gap:16px;margin-bottom:28px}.featured-copy{padding:28px}.featured-copy h3{font-size:31px}.universe-grid,.video-grid,.gear-grid{grid-template-columns:1fr}.universe-card{min-height:430px}.project-bento{display:flex;flex-direction:column}.project-card{min-height:430px}.project-large .project-copy h3{font-size:39px}.project-copy{left:24px;right:24px;bottom:24px}.about-panel{grid-template-columns:1fr;gap:25px;padding:55px 0}.contact-panel{grid-template-columns:1fr;padding:32px;gap:30px}.footer-grid{grid-template-columns:1fr}.footer-links{justify-content:flex-start}.footer-meta{grid-column:1;flex-direction:column;gap:8px}.socials{display:none}}
@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}.reveal{opacity:1;transform:none}}

/* V0.1.1 — lecteur YouTube lazy + légal */
button.video-card, button.featured-media, .text-link{font:inherit;color:inherit;text-align:inherit}
button.video-card, button.featured-media{border:0;padding:0;width:100%;cursor:pointer}
.text-link{border:0;background:none;padding:0;cursor:pointer;color:inherit}
.youtube-modal{position:fixed;inset:0;z-index:9999;background:rgba(0,0,0,.82);backdrop-filter:blur(14px);display:grid;place-items:center;padding:24px}
.youtube-modal[hidden]{display:none}.youtube-dialog{width:min(1180px,100%);background:#080809;border:1px solid rgba(255,255,255,.12);border-radius:20px;overflow:hidden;box-shadow:0 30px 100px rgba(0,0,0,.55)}
.youtube-head{height:58px;display:flex;align-items:center;justify-content:space-between;padding:0 18px 0 22px;border-bottom:1px solid rgba(255,255,255,.08);gap:20px}.youtube-head strong{font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.youtube-head button{width:36px;height:36px;border:1px solid rgba(255,255,255,.12);border-radius:50%;background:#111114;color:#fff;font-size:23px;cursor:pointer}
.youtube-frame-wrap{aspect-ratio:16/9;background:#000}.youtube-frame-wrap iframe{width:100%;height:100%;border:0;display:block}.modal-open{overflow:hidden}.legal-links{display:flex;flex-wrap:wrap;gap:12px 18px;margin-top:8px}.legal-links a{color:#767a7d;font-size:12px;text-decoration:none}.legal-links a:hover{color:#fff}
