@font-face{font-family:"Cormorant";src:url("fonts/cormorant.woff2") format("woff2");font-weight:300 700;font-style:normal;font-display:swap}
@font-face{font-family:"Cormorant";src:url("fonts/cormorant-italic.woff2") format("woff2");font-weight:300 700;font-style:italic;font-display:swap}
@font-face{font-family:"Inter";src:url("fonts/inter.woff2") format("woff2");font-weight:300 800;font-style:normal;font-display:swap}
:root{--night:#1B1E3A;--night2:#13152B;--gold:#E8A65A;--rose:#E7B6A2;--hib:#C24B6E;--lagoon:#2F6B6A;--paper:#F7F2E9;--ink:#24263F;--mute:#6B6A78;--line:#E3D9C6;--moon:#F2E3C6;
--serif:"Cormorant","Cormorant Garamond",Georgia,serif;--sans:"Inter",system-ui,-apple-system,"Segoe UI",sans-serif;--pad:clamp(1.1rem,4vw,3rem);--r:18px}
*{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;scroll-padding-top:64px}
body{margin:0;font:400 1rem/1.65 var(--sans);color:var(--ink);background:var(--paper);overflow-x:hidden}
img,video,iframe{max-width:100%;display:block}
a{color:inherit}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--gold);outline-offset:3px;border-radius:6px}
h1,h2,h3{font-family:var(--serif);font-weight:500;line-height:1.08;margin:.2em 0 .45em;letter-spacing:-.01em}
h1{font-size:clamp(2.6rem,8vw,5.4rem)}h2{font-size:clamp(2.1rem,5.6vw,3.6rem)}h3{font-size:clamp(1.7rem,4vw,2.4rem)}
h1 em,h2 em,h3 em{font-style:italic;color:var(--gold)}
h4{font:600 .98rem/1.35 var(--sans);margin:0 0 .35em}
.kicker{font:600 .72rem/1 var(--sans);letter-spacing:.22em;text-transform:uppercase;color:var(--hib);margin:0 0 .6rem}
.lead{font-size:1.12rem;color:var(--mute);max-width:46rem}
.skip{position:absolute;left:-999px;top:0;background:var(--gold);color:var(--night2);padding:.6rem 1rem;z-index:99}.skip:focus{left:8px;top:8px}
/* nav */
.nav{position:sticky;top:0;z-index:50;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.65rem var(--pad);background:rgba(19,21,43,.82);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);color:var(--paper);border-bottom:1px solid rgba(232,166,90,.18)}
.brand{font:500 1.35rem/1 var(--serif);text-decoration:none;display:flex;align-items:center;gap:.55rem;white-space:nowrap}.brand em{color:var(--rose)}
.moon{width:18px;height:18px;border-radius:50%;background:var(--moon);box-shadow:inset -6px -2px 0 0 var(--night2),0 0 14px rgba(242,227,198,.5);display:inline-block}
.nav ul{list-style:none;margin:0;padding:0;display:flex;gap:1.2rem;align-items:center}
.nav ul a{text-decoration:none;font-size:.88rem;opacity:.85}.nav ul a:hover{opacity:1;color:var(--gold)}
.burger{display:none;background:none;border:0;padding:10px;cursor:pointer}.burger span{display:block;width:22px;height:2px;background:var(--paper);margin:5px 0;transition:.3s}
@media (max-width:1100px){.burger{display:block}.nav ul{position:fixed;inset:56px 0 auto 0;flex-direction:column;align-items:stretch;gap:0;background:var(--night2);padding:.5rem var(--pad) 1.2rem;transform:translateY(-120%);transition:transform .35s;max-height:calc(100vh - 56px);overflow:auto}
.nav ul.open{transform:none}.nav ul li a{display:block;padding:.85rem 0;border-bottom:1px solid rgba(255,255,255,.07);font-size:1rem}.nav ul li a.btn{margin-top:.8rem;text-align:center;border:0}
.burger[aria-expanded=true] span:first-child{transform:translateY(3.5px) rotate(45deg)}.burger[aria-expanded=true] span:last-child{transform:translateY(-3.5px) rotate(-45deg)}}
.btn{display:inline-block;background:linear-gradient(135deg,var(--gold),#d98a6c);color:var(--night2);font:600 .92rem/1 var(--sans);padding:.95rem 1.4rem;border-radius:999px;text-decoration:none;box-shadow:0 8px 24px rgba(232,166,90,.25);transition:transform .2s}
.btn:hover{transform:translateY(-2px)}.btn.sm{padding:.6rem 1rem;font-size:.84rem;opacity:1!important;color:var(--night2)!important}
.btn.ghost{background:transparent;color:var(--paper);border:1px solid rgba(242,227,198,.5);box-shadow:none}
/* hero */
.hero{position:relative;color:var(--paper);background:var(--night2);overflow:hidden;padding:clamp(2.5rem,8vw,6rem) var(--pad) clamp(3rem,7vw,5rem)}
.hero-bg{position:absolute;inset:0;background-size:cover;background-position:center;opacity:.35;filter:saturate(1.1)}
.hero:after{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 75% 15%,rgba(242,227,198,.18),transparent 45%),linear-gradient(180deg,rgba(19,21,43,.2),var(--night2) 96%)}
.hero-in{position:relative;z-index:1;max-width:1240px;margin:auto;display:grid;gap:2.2rem;align-items:center}
@media(min-width:960px){.hero-in{grid-template-columns:.9fr 1.1fr}}
.hero h1 em{display:block}.hero .lead{color:#cfc8dc}.cta{display:flex;flex-wrap:wrap;gap:.8rem;margin-top:1.6rem}
.hero-vid video{width:100%;border-radius:var(--r);box-shadow:0 30px 80px rgba(0,0,0,.55),0 0 0 1px rgba(232,166,90,.25);background:#000;aspect-ratio:16/9}
.hero-vid video.v{aspect-ratio:9/16;max-height:78vh;margin:auto;width:auto}
.cap{font-size:.78rem;color:#a9a4c2;margin:.7rem 0 0}
/* sections */
.sec{padding:clamp(3.5rem,9vw,7rem) var(--pad);max-width:1240px;margin:auto}
.sec.dark{max-width:none;background:var(--night);color:var(--paper);background-image:radial-gradient(ellipse at 90% 0,rgba(194,75,110,.14),transparent 40%),radial-gradient(ellipse at 0 100%,rgba(47,107,106,.18),transparent 45%)}
.sec.dark>*{max-width:1240px;margin-left:auto;margin-right:auto}
.sec.dark .lead,.sec.dark .pnote,.sec.dark small,.sec.dark figcaption{color:#b9b3cc}.sec.dark .kicker{color:var(--rose)}
.sh{margin-bottom:2.2rem}
.quote{font:italic 400 clamp(1.6rem,4.2vw,2.6rem)/1.25 var(--serif);margin:0 0 2rem;padding-left:1.2rem;border-left:2px solid var(--gold);color:var(--moon)}
.quote cite{display:block;font:500 .85rem var(--sans);color:var(--gold);margin-top:.8rem;font-style:normal}
.cols2,.cols3{display:grid;gap:0 2.2rem}@media(min-width:800px){.cols2{grid-template-columns:1fr 1fr}.cols3{grid-template-columns:repeat(3,1fr)}}
.grid2,.grid3,.grid4{display:grid;gap:1rem;margin:1.6rem 0}
@media(min-width:700px){.grid2,.grid4{grid-template-columns:1fr 1fr}.grid3{grid-template-columns:repeat(3,1fr)}}@media(min-width:1050px){.grid4{grid-template-columns:repeat(4,1fr)}}
.card{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:1.3rem 1.3rem 1.1rem}
.sec.dark .card{background:rgba(255,255,255,.045);border-color:rgba(232,166,90,.18)}
.card p{margin:.2rem 0;font-size:.94rem}.card h4{color:var(--hib)}.sec.dark .card h4{color:var(--gold)}
.price{display:block;font:500 1.6rem var(--serif);color:var(--gold);margin-top:.6rem}
/* status pills */
.status{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;margin:.2rem 0 1rem}
.pill{--c:#888;display:inline-block;font:600 .68rem/1 var(--sans);letter-spacing:.1em;text-transform:uppercase;padding:.45rem .7rem;border-radius:999px;color:#fff;background:var(--c);white-space:nowrap}
.pnote{font-size:.85rem;color:var(--mute)}
/* bio */
.bio{display:grid;gap:2rem;align-items:center}@media(min-width:860px){.bio{grid-template-columns:.85fr 1.15fr}}
.bio-img img{border-radius:var(--r);aspect-ratio:4/5;object-fit:cover;width:100%}
dl.facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:.8rem;margin:1.4rem 0 0}
dl.facts div{border-top:1px solid var(--line);padding-top:.6rem}.sec.dark dl.facts div{border-color:rgba(232,166,90,.22)}
dl.facts dt{font:600 .68rem/1.3 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--mute)}.sec.dark dl.facts dt{color:#9d97b5}
dl.facts dd{margin:.25rem 0 0;font:500 1.12rem/1.3 var(--serif)}
figure{margin:0}figcaption{font-size:.78rem;color:var(--mute);margin-top:.45rem}
/* ecosystem */
.eco{display:grid;gap:1rem;text-align:center;margin-bottom:2rem}
.eco-c{margin:auto;width:min(230px,62vw);aspect-ratio:1;border-radius:50%;display:flex;flex-direction:column;justify-content:center;background:radial-gradient(circle at 35% 30%,var(--moon),#d9b98a 60%,#b98b5d);color:var(--night2);box-shadow:0 0 60px rgba(232,166,90,.45)}
.eco-c span{font:600 2rem var(--serif)}.eco-c small{font-size:.8rem;padding:0 1rem}
.eco-p,.eco-o{display:grid;gap:.8rem}@media(min-width:700px){.eco-p{grid-template-columns:repeat(3,1fr)}.eco-o{grid-template-columns:repeat(4,1fr)}}
.porte{background:var(--night);color:var(--paper);border-radius:var(--r);padding:1.1rem}.porte b{font:600 .7rem var(--sans);letter-spacing:.2em;text-transform:uppercase;color:var(--gold)}.porte small{color:#b9b3cc}
.eco-o div{border:1px dashed var(--line);border-radius:var(--r);padding:.9rem}.eco-o small{color:var(--mute)}
.tablewrap{overflow-x:auto;-webkit-overflow-scrolling:touch;margin:1.5rem 0}
table{border-collapse:collapse;width:100%;font-size:.9rem}caption{text-align:left;font:600 .72rem var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--mute);padding-bottom:.6rem}
th,td{text-align:left;padding:.7rem .6rem;border-bottom:1px solid var(--line);vertical-align:top}.sec.dark th,.sec.dark td{border-color:rgba(232,166,90,.16)}
.eco-t{min-width:720px}.eco-t th[scope=row]{font:600 1.08rem var(--serif)}.eco-t .status{margin:0}
/* works */
.chips{display:flex;gap:.5rem;overflow-x:auto;padding-bottom:.6rem;margin-bottom:2rem;scrollbar-width:none}
.chips a{flex:none;text-decoration:none;font-size:.82rem;border:1px solid rgba(232,166,90,.35);padding:.5rem .9rem;border-radius:999px;color:var(--moon)}.chips a:hover{background:rgba(232,166,90,.15)}
.work{display:grid;gap:1.6rem;padding:2.2rem 0;border-top:1px solid rgba(232,166,90,.18)}
@media(min-width:960px){.work{grid-template-columns:1.1fr .9fr;gap:3rem}.work:nth-of-type(even) .wmedia{order:2}}
.wmedia{display:grid;gap:.9rem;grid-template-columns:1fr 1fr;align-content:start}.wmedia>*{grid-column:1/-1}
.wmedia .tall{grid-column:auto/span 1;max-width:300px}.wmedia img,.wmedia video{border-radius:14px;width:100%;background:#0c0d1c}
.wmedia .hero img{aspect-ratio:16/10;object-fit:cover}
.wmedia video{aspect-ratio:16/9;object-fit:cover}.wmedia .tall video{aspect-ratio:9/16}
.gal{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:.6rem;margin:1rem 0}.gal img{border-radius:10px;aspect-ratio:4/3;object-fit:cover;width:100%}.gal figcaption{font-size:.7rem}
details{margin:.4rem 0 1rem}summary{cursor:pointer;color:var(--gold);font-weight:600;font-size:.9rem;list-style:none}summary::-webkit-details-marker{display:none}summary:before{content:"＋ "}details[open] summary:before{content:"− "}
details p{font-size:.95rem;color:#d6d1e3}
.tracks{columns:2;font:500 1.15rem/1.6 var(--serif);padding-left:1.4rem;color:var(--moon)}
.lt{font:600 .74rem var(--sans);letter-spacing:.18em;text-transform:uppercase;color:var(--hib);margin:1.6rem 0 .6rem}.sec.dark .lt{color:var(--rose)}
.split{border-left:2px solid var(--hib);padding-left:1rem;margin:1rem 0}.split h4{font:500 1.35rem var(--serif)}.split p{font-size:.94rem;color:#d6d1e3}
.rights{font-size:.85rem;border:1px solid rgba(194,75,110,.5);background:rgba(194,75,110,.08);padding:.8rem 1rem;border-radius:12px}
/* films */
.films{display:grid;gap:1.2rem;margin:2rem 0}@media(min-width:700px){.films{grid-template-columns:1fr 1fr}}@media(min-width:1100px){.films{grid-template-columns:repeat(3,1fr)}}
.film video{width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:14px;background:#000}
.film figcaption{display:flex;flex-direction:column;gap:.1rem}.film strong{font:600 1.15rem var(--serif);color:var(--ink)}.film em{font-family:var(--serif);font-size:1rem;color:var(--ink)}
.note{font-size:.88rem;color:var(--mute)}
/* youtube */
.yts{display:grid;gap:1.4rem}@media(min-width:760px){.yts{grid-template-columns:1fr 1fr}.yts .yt:first-child{grid-column:1/-1}}
.ytf{position:relative;aspect-ratio:16/9;border-radius:14px;overflow:hidden;background:#0c0d1c url("img/cover-maison-lune.webp") center/cover}
.ytf:before{content:"YouTube · connexion requise";position:absolute;inset:auto 0 0 0;padding:.6rem;font-size:.72rem;color:#cfc8dc;background:linear-gradient(transparent,rgba(0,0,0,.7))}
.ytf iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.yt figcaption{display:flex;flex-wrap:wrap;gap:.2rem .7rem;align-items:baseline}.yt strong{font:600 1.2rem var(--serif);color:var(--paper)}.yt a{color:var(--gold);font-size:.8rem}
.center{text-align:center;margin-top:2.2rem}
/* audience */
.kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1rem;margin:1rem 0 2rem}
.kpi{border-radius:var(--r);padding:1.2rem;background:#fff;border:1px solid var(--line);display:flex;flex-direction:column;gap:.15rem}
.kpi b{font:500 clamp(2rem,5vw,2.8rem)/1 var(--serif);color:var(--hib)}.kpi span{font-weight:600;font-size:.9rem}.kpi small{color:var(--mute);font-size:.78rem}
.sec.dark .kpi{background:rgba(255,255,255,.04);border:1px dashed rgba(200,200,200,.35)}.sec.dark .kpi b{color:var(--moon)}.kpi .pill{align-self:flex-start;margin-bottom:.4rem}
.aud2{display:grid;gap:2rem}@media(min-width:860px){.aud2{grid-template-columns:1fr 1fr}}
.top{padding-left:1.3rem;margin:0}.top li{padding:.45rem 0;border-bottom:1px solid var(--line)}.top li span{display:inline-block;max-width:75%}.top li b{float:right;font-family:var(--serif);font-size:1.15rem;color:var(--hib)}
.warn{border:1px solid rgba(232,166,90,.5);background:rgba(232,166,90,.1);padding:1rem 1.2rem;border-radius:14px;font-size:.92rem}.warn b{color:var(--gold)}
.rules{padding-left:1.2rem}.rules li{margin:.35rem 0}
/* timeline */
.timeline{list-style:none;padding:0;margin:0;position:relative}.timeline:before{content:"";position:absolute;left:7px;top:6px;bottom:6px;width:2px;background:linear-gradient(var(--gold),var(--hib),var(--lagoon))}
.timeline>li{position:relative;padding:0 0 1.8rem 2.2rem}.timeline>li:before{content:"";position:absolute;left:0;top:5px;width:16px;height:16px;border-radius:50%;background:var(--paper);border:3px solid var(--gold)}
.timeline time{font:600 .74rem var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--hib)}.timeline h4{font:500 1.5rem var(--serif);margin:.2rem 0}.timeline ul{margin:.2rem 0;padding-left:1.1rem;color:var(--mute);font-size:.95rem}
@media(min-width:900px){.timeline{display:grid;grid-template-columns:1fr 1fr;gap:0 3rem}.timeline:before{display:none}.timeline>li{border-left:2px solid var(--line)}.timeline>li:before{left:-9px}}
.contact{margin-top:2.5rem;border:1px solid rgba(232,166,90,.3);border-radius:var(--r);padding:1.6rem}
.todo{background:rgba(232,166,90,.18);color:#b06a1f;padding:0 .3em;border-radius:4px;font-family:var(--sans);font-size:.85em;font-weight:600}.sec.dark .todo{color:var(--gold)}
/* donation */
.don{display:grid;gap:2rem;align-items:center;background:linear-gradient(135deg,var(--night),#2a2050);color:var(--paper);border-radius:28px;padding:clamp(1.6rem,5vw,3.4rem);box-shadow:0 30px 70px rgba(27,30,58,.25)}
@media(min-width:800px){.don{grid-template-columns:1.2fr .8fr}}.don .lead{color:#cfc8dc}.don .kicker{color:var(--rose)}.don .small{font-size:.85rem;color:#b9b3cc;border-top:1px solid rgba(255,255,255,.12);padding-top:.9rem}
.qrpay{background:var(--paper);border-radius:22px;padding:1rem;justify-self:center;width:min(300px,100%);text-align:center}.qrpay img{width:100%;height:auto;border-radius:12px}.qrpay figcaption{color:var(--ink);font-weight:600}
/* footer */
.foot{background:var(--night2);color:#cfc8dc;padding:3rem var(--pad);display:grid;gap:2rem;justify-items:center;text-align:center}
@media(min-width:800px){.foot{grid-template-columns:auto 1fr;justify-items:start;text-align:left;padding-left:max(var(--pad),calc((100vw - 1240px)/2));padding-right:max(var(--pad),calc((100vw - 1240px)/2))}}
.fq img{background:#fff;padding:10px;border-radius:14px;width:180px;height:auto}.fq p{margin:.5rem 0 0;text-align:center}.fq a{color:var(--gold)}
.foot .brand{font-size:1.6rem;color:var(--paper)}.links{list-style:none;padding:0;display:flex;flex-wrap:wrap;gap:.6rem 1.4rem;justify-content:inherit}.links a{color:var(--gold)}
.credits{font-size:.75rem;color:#8d88a6;max-width:52rem}
/* reveal */
.reveal{opacity:0;transform:translateY(18px);transition:opacity .8s ease,transform .8s ease}.reveal.in{opacity:1;transform:none}
.no-js .reveal{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}.btn{transition:none}}
.rib{margin:1.4rem 0;display:grid;gap:.9rem}.rib dt{font:600 .68rem var(--sans);letter-spacing:.16em;text-transform:uppercase;color:#9d97b5}
.rib dd{margin:.2rem 0 0;font-size:1.05rem}.rib code{font:600 1.02rem/1.5 ui-monospace,SFMono-Regular,Menlo,monospace;color:var(--moon);letter-spacing:.02em;word-spacing:.15em}
.copy{margin:.5rem .4rem 0 0;font:600 .82rem var(--sans);background:transparent;color:var(--gold);border:1px solid var(--gold);border-radius:999px;padding:.5rem .9rem;cursor:pointer}.copy:hover{background:rgba(232,166,90,.15)}
.copied{font-size:.8rem;color:#9fd3b8}.qrpay figcaption small{font-weight:400;color:var(--mute)}
#iban{display:block}
/* v3 — boutons Découvrir / Jouer */
.acts{display:flex;flex-wrap:wrap;gap:.5rem;margin:.1rem 0 1rem}
.btn.sm.act-go{background:transparent;color:var(--paper)!important;border:1px solid rgba(242,227,198,.5);box-shadow:none}
.btn.sm.act-play{background:linear-gradient(135deg,#7fd08a,#e8a65a)}
.btn.sm.act-soon{background:rgba(255,255,255,.06);color:rgba(242,227,198,.75)!important;border:1px dashed rgba(242,227,198,.35);box-shadow:none;cursor:not-allowed}
.btn.sm.act-soon:hover{transform:none}
.btn:focus-visible{outline:2px solid var(--gold);outline-offset:3px}
.vh{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
