/* Site youmusikme.fr — fond blanc en majorité, bleu du logo #3F87D1, angles droits, Poppins */
:root{--b:#3F87D1;--b2:#2E6FB4;--n:#0A1A33;--t:#33435C;--g:#55647A;--l:#F3F7FC;--ln:#E3EAF3}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:#fff;color:var(--n);font-family:Poppins,Arial,sans-serif;font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased}
img{max-width:100%;height:auto;display:block}
a{color:var(--b)}a:hover{color:var(--b2)}
h1,h2,h3,h4{margin:0;line-height:1.15;font-weight:800;color:var(--n)}
p{margin:0}
.m{color:var(--b)}
.wrap{max-width:1240px;margin:0 auto;padding:0 24px}
.sec{padding:96px 0}.sec.l{background:var(--l)}
.sur{font-size:14px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--b);margin-bottom:14px}
.h2{font-size:42px}
.lead{font-size:18px;color:var(--t);line-height:1.7}
.txt{color:var(--t);line-height:1.75}.txt p+p{margin-top:14px}
/* boutons */
.btn{display:inline-block;padding:15px 26px;font:600 16px/1.2 Poppins,Arial,sans-serif;text-decoration:none;border:2px solid var(--b);background:var(--b);color:#fff;cursor:pointer;border-radius:0;transition:transform .2s,background .2s,color .2s;text-align:center}
.btn:hover{transform:translateY(-2px);background:var(--b2);border-color:var(--b2);color:#fff}
.btn.o{background:#fff;color:var(--n)}.btn.o:hover{background:var(--b);color:#fff;border-color:var(--b)}
.btns{display:flex;gap:14px;flex-wrap:wrap}
.pulse{animation:pl 2.4s ease-out infinite}
@keyframes pl{0%{box-shadow:0 0 0 0 rgba(63,135,209,.5)}70%{box-shadow:0 0 0 16px rgba(63,135,209,0)}100%{box-shadow:0 0 0 0 rgba(63,135,209,0)}}
/* en-tête */
.yh{position:sticky;top:0;z-index:50;background:#fff;border-bottom:1px solid var(--ln)}
.yh .in{max-width:1240px;margin:0 auto;padding:10px 24px;display:flex;align-items:center;gap:24px}
.yh .lg img{height:54px;width:auto}
.yh nav{display:flex;gap:26px;flex:1;justify-content:center}
.yh nav a{color:var(--n);text-decoration:none;font-weight:500;font-size:15px;padding:6px 0;border-bottom:2px solid transparent}
.yh nav a:hover,.yh nav a.on{border-bottom-color:var(--b)}
.yh .tel{color:var(--n);font-weight:600;text-decoration:none;font-size:15px;white-space:nowrap}
.yh .btn{padding:11px 18px;font-size:14px;white-space:nowrap}
.yh .bm{display:none;background:#fff;border:2px solid var(--n);padding:8px 12px;font:600 14px Poppins,Arial,sans-serif;cursor:pointer;color:var(--n);border-radius:0}
/* équaliseur */
.eq{display:flex;align-items:flex-end;gap:8px}
.eq i{display:block;width:16px;background:var(--b);transform-origin:bottom;animation:eqb 1.1s ease-in-out infinite}
.eq i:nth-child(2n){animation-duration:.85s;animation-delay:-.3s}.eq i:nth-child(3n){animation-duration:1.3s;animation-delay:-.6s}.eq i:nth-child(4n){animation-duration:.95s;animation-delay:-.15s}.eq i:nth-child(5n){animation-duration:1.2s;animation-delay:-.45s}
.eq.off i{animation-play-state:paused}
@keyframes eqb{0%,100%{transform:scaleY(.25)}50%{transform:scaleY(1)}}
.float{animation:fl 4s ease-in-out infinite}@keyframes fl{0%,100%{transform:translateY(0)}50%{transform:translateY(-14px)}}
.note{position:absolute;color:var(--b);font-size:34px;font-weight:700;animation:nt 5s ease-in-out infinite;opacity:0;pointer-events:none}
@keyframes nt{0%{opacity:0;transform:translateY(20px) rotate(-10deg)}20%{opacity:1}80%{opacity:.9}100%{opacity:0;transform:translateY(-80px) rotate(15deg)}}
/* apparition au défilement */
.rv{opacity:0;transform:translateY(26px);transition:opacity .7s ease,transform .7s ease}.rv.vu{opacity:1;transform:none}
/* héros accueil */
.hero{background:#fff;position:relative;overflow:hidden}
.hero .in{display:flex;flex-wrap:wrap;gap:40px;align-items:flex-end;padding-top:64px}
.hero .t{flex:1 1 520px;min-width:0;padding-bottom:72px}
.hero .acc{font-weight:600;letter-spacing:.04em;margin-bottom:18px}
.hero h1{font-size:60px;line-height:1.08}
.hero .lead{margin:24px 0 34px;max-width:560px}
.stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:52px;border-top:1px solid var(--ln)}
.stats>div{padding:20px 16px 0}.stats>div+div{border-left:1px solid var(--ln)}.stats>div:first-child{padding-left:0}
.stats b{display:block;font-size:44px;font-weight:800;color:var(--b);line-height:1}
.stats>div>span{display:block;font-size:13px;color:var(--g);margin-top:8px}
.hero .v{flex:1 1 400px;min-width:0;position:relative;display:flex;justify-content:center;align-items:flex-end;min-height:520px}
.hero .v .eq{position:absolute;left:0;right:0;bottom:0;height:380px;justify-content:center;gap:10px;opacity:.2}
.hero .v .eq i{width:36px}
.hero .v img.mas{position:relative;width:380px;max-width:90%;border:6px solid var(--b);margin-bottom:60px}
/* en-tête des pages intérieures */
.ph{position:relative;overflow:hidden;background:#fff}
.ph .in{display:flex;flex-wrap:wrap;gap:48px;align-items:center;padding-top:64px;padding-bottom:72px}
.ph .t{flex:1 1 480px;min-width:0}
.ph h1{font-size:64px;line-height:1.05;margin-bottom:20px}
.ph .i{flex:1 1 420px;min-width:0;position:relative}
.ph .i img.p{width:100%;height:420px;object-fit:cover}
.ph .i img.mini{position:absolute;left:-30px;bottom:-30px;width:170px;height:auto;border:5px solid #fff;box-shadow:0 12px 30px rgba(10,26,51,.2)}
.ph .eq{position:absolute;right:24px;top:24px;height:60px;opacity:.9}
/* radio (accueil) */
.radio{display:flex;flex-wrap:wrap;background:var(--l)}
.radio .ph2{flex:1 1 420px;min-height:320px;background-size:cover;background-position:center}
.radio .c{flex:1 1 460px;min-width:0;padding:44px 40px;display:flex;flex-direction:column;gap:20px;justify-content:center}
.live{display:flex;align-items:center;gap:10px;font-size:13px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--b)}
.live:before{content:"";width:10px;height:10px;background:#E5484D;animation:lv 1.2s ease-in-out infinite}
@keyframes lv{50%{opacity:.25}}
.play{width:64px;height:64px;border:0;border-radius:0;background:var(--b);cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.play:hover{background:var(--b2)}
.play svg{width:22px;height:22px;fill:#fff}
.play .pa{display:none}.play.on .pa{display:block}.play.on .pl{display:none}
.lect{display:flex;align-items:center;gap:20px;flex-wrap:wrap}
.lect .nm small{display:block;font-size:13px;color:var(--g)}.lect .nm b{font-size:24px}
.lect .eq{height:56px;margin-left:auto}
/* cartes */
.cards2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.card{background:#fff;padding:26px;border-top:4px solid var(--b);transition:transform .25s,box-shadow .25s}
.card:hover{transform:translateY(-6px);box-shadow:0 18px 40px rgba(10,26,51,.12)}
.card h3{font-size:20px;color:var(--b);margin-bottom:10px}.card p{color:var(--t);font-size:15px}
.split{display:flex;flex-wrap:wrap;gap:56px;align-items:center}
.split>.a{flex:1 1 520px;min-width:0;display:flex;flex-direction:column;gap:22px}
.split>.b{flex:1 1 380px;min-width:0;position:relative}
.split .b img.mini{position:absolute;left:-36px;bottom:-36px;width:170px;border:5px solid #fff;box-shadow:0 12px 30px rgba(10,26,51,.25)}
.q{font-size:22px;font-weight:700}
/* offres */
.offres{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:24px}
.of{padding:34px;display:flex;flex-direction:column;gap:14px;border:2px solid var(--b);background:#fff;position:relative;transition:transform .25s,box-shadow .25s}
.of:hover{transform:translateY(-8px);box-shadow:0 18px 40px rgba(10,26,51,.14)}
.of .big{font-size:64px;font-weight:800;color:var(--b);line-height:1}
.of .sm{font-size:14px;color:var(--g)}
.of h3{font-size:24px;margin-top:6px}
.of p{font-size:15px;color:var(--t)}
.of.bl{background:var(--b);color:#fff}.of.bl .big,.of.bl h3,.of.bl p,.of.bl .sm{color:#fff}.of.bl h3 .m{color:var(--n)}
.of.pt{background:var(--l);border-style:dashed}
.badge{position:absolute;top:18px;right:18px;background:var(--n);color:#fff;font-size:12px;font-weight:700;padding:6px 10px;letter-spacing:.06em;text-transform:uppercase}
.bar{margin-top:auto;height:8px;background:var(--ln)}.bar i{display:block;height:100%;background:var(--b);transform-origin:left;transform:scaleX(0);transition:transform 1.6s ease-out}.rv.vu .bar i,.vu .bar i{transform:scaleX(1)}
.of.bl .bar{background:var(--b2)}.of.bl .bar i{background:#fff}
/* bandeau défilant */
.mq{background:var(--b);padding:22px 0;overflow:hidden}
.mq .r{display:flex;gap:48px;width:max-content;font-size:34px;font-weight:800;color:#fff;white-space:nowrap;animation:mq 24s linear infinite}
.mq .r em{font-style:normal;color:var(--n)}
@keyframes mq{from{transform:translateX(0)}to{transform:translateX(-50%)}}
/* simulateur */
.sim{display:flex;flex-wrap:wrap;gap:48px;align-items:stretch}
.sim .a{flex:1 1 400px;min-width:0;display:flex;flex-direction:column;gap:20px}
.ex{background:#fff;border:2px solid var(--b);padding:24px;display:flex;gap:20px;align-items:center}
.ex img{width:120px;height:120px;object-fit:cover;flex-shrink:0}
.ex small{font-size:12px;font-weight:700;letter-spacing:.1em;color:var(--b)}
.ex b.g{font-size:22px;color:var(--b)}
.sim form{flex:1 1 480px;min-width:0;background:#fff;padding:36px;display:flex;flex-direction:column;gap:22px;box-shadow:0 20px 50px rgba(10,26,51,.1)}
.fl{font-weight:700}
.mt{display:flex;border:2px solid var(--b)}.mt input{flex:1;min-width:0;border:0;padding:16px;font:600 22px Poppins,Arial,sans-serif;color:var(--n);border-radius:0}
.mt span{display:flex;align-items:center;padding:0 16px;background:var(--b);color:#fff;font-weight:600}
.hint{font-size:13px;color:var(--g)}
.seg{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border:2px solid var(--b)}
.seg button,.pills button{font:15px Poppins,Arial,sans-serif;cursor:pointer;border-radius:0;background:#fff;color:var(--n)}
.seg button{border:0;padding:16px 10px;display:flex;flex-direction:column;align-items:center;gap:2px}
.seg button b{font-size:22px}
.seg button.on,.pills button.on{background:var(--b);color:#fff}
.res{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.res>div{padding:20px;border:2px solid var(--b)}.res>div:first-child{background:var(--b);color:#fff}.res>div:last-child{background:var(--l)}
.res small{font-size:13px;font-weight:600}.res b{display:block;font-size:30px;font-weight:800;margin-top:6px;line-height:1.1}.res b small{font-size:14px}
.pills{display:flex;gap:10px;flex-wrap:wrap}.pills button{padding:12px 20px;font-weight:600;border:2px solid var(--b)}
.who{border:2px solid var(--b);padding:14px 16px;font:16px Poppins,Arial,sans-serif;border-radius:0;color:var(--n);width:100%}
.note2{font-size:14px;color:var(--t)}
.msg{font-size:15px;font-weight:600;color:#1C7C46}.msg.err{color:#C0362C}.msg:empty{display:none}
input:focus,textarea:focus,button:focus-visible,a:focus-visible{outline:3px solid var(--b);outline-offset:2px}
/* appel final */
.fin{background:var(--l)}
.fin .in{display:flex;flex-wrap:wrap;gap:40px;align-items:center}
.fin img{width:230px;max-width:60%;height:auto;flex-shrink:0;align-self:center;border:5px solid var(--b)}
.fin .t{flex:1 1 480px;min-width:0;display:flex;flex-direction:column;gap:22px}
.fin h2{font-size:44px;line-height:1.12}
/* études */
.chif{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.chif>div{border:2px solid var(--b);padding:28px;background:#fff}
.chif b{display:block;font-size:52px;font-weight:800;color:var(--b);line-height:1}
.chif>div>span{display:block;margin-top:10px;font-weight:600}.chif em{display:block;font-style:normal;color:var(--g);font-size:14px;margin-top:4px}
.tabs{display:grid;grid-template-columns:340px 1fr;gap:28px;align-items:start}
.tabs .l{display:flex;flex-direction:column;border:2px solid var(--b)}
.tabs .l button{display:flex;justify-content:space-between;gap:12px;align-items:center;text-align:left;padding:16px 18px;border:0;border-bottom:1px solid var(--ln);background:#fff;font:600 15px Poppins,Arial,sans-serif;color:var(--n);cursor:pointer;border-radius:0}
.tabs .l button:last-child{border-bottom:0}
.tabs .l button b{color:var(--b);white-space:nowrap}
.tabs .l button.on{background:var(--b);color:#fff}.tabs .l button.on b{color:#fff}
.pan{background:#fff;border:2px solid var(--b);padding:34px;display:none}.pan.on{display:block;animation:ap .4s ease}
@keyframes ap{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
.pan .src{font-size:13px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--g)}
.pan h3{font-size:30px;margin:8px 0 6px}
.pan .fg{font-size:48px;font-weight:800;color:var(--b);line-height:1.1}.pan .fs{color:var(--g);margin-bottom:18px}
.pan .grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:22px}
.pan .grid>div{background:var(--l);padding:18px}.pan .grid h4{font-size:15px;color:var(--b);margin-bottom:6px}
.lev{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:34px}
.lev>div{border-top:4px solid var(--b);padding:22px;background:#fff}.lev .n{font-size:40px;font-weight:800;color:var(--b);line-height:1}
.lev h3{font-size:19px;margin:10px 0}.lev p{color:var(--t);font-size:15px}
.concl{border-left:0;background:var(--b);color:#fff;padding:48px}.concl h2{color:#fff;font-size:32px}.concl p{margin-top:18px;color:#fff;font-size:17px}.concl .sur{color:#fff}
/* musiks */
.player{display:grid;grid-template-columns:1.1fr .9fr;gap:0;border:2px solid var(--b)}.player>*{min-width:0}
.player .scr{position:relative;min-height:420px;background-size:cover;background-position:center;display:flex;align-items:flex-end}
.player .scr .ov{width:100%;background:linear-gradient(transparent,rgba(10,26,51,.85));padding:28px;color:#fff;display:flex;align-items:center;gap:20px}
.player .scr .ov .nm small{color:#cfe0f3}.player .scr .ov .nm b{color:#fff}
.player .scr .eq{height:60px;margin-left:auto}.player .scr .eq i{background:#fff}
.pr{height:6px;background:rgba(255,255,255,.3);margin:0 28px 0;position:absolute;left:0;right:0;bottom:0}
.pr i{display:block;height:100%;width:0;background:#fff}
.liste{display:flex;flex-direction:column}
.liste button{display:flex;align-items:center;gap:16px;padding:20px 22px;border:0;border-bottom:1px solid var(--ln);background:#fff;text-align:left;cursor:pointer;font:16px Poppins,Arial,sans-serif;color:var(--n);border-radius:0}
.liste button:last-child{border-bottom:0}
.liste button .ic{width:44px;height:44px;background:var(--l);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.liste button .ic svg{width:18px;height:18px;fill:var(--b)}
.liste button b{display:block}.liste button small{color:var(--g)}
.liste button.on{background:var(--b);color:#fff}.liste button.on small{color:#e4f0fb}.liste button.on .ic{background:#fff}
.vol{display:flex;align-items:center;gap:12px;padding:16px 22px;border-top:1px solid var(--ln)}
.vol input{flex:1;accent-color:var(--b)}
/* business */
.bz{display:flex;flex-wrap:wrap;gap:48px;align-items:center}
.bz .a{flex:1 1 480px;min-width:0}.bz .b{flex:1 1 380px;min-width:0}
.num{font-size:15px;font-weight:800;color:var(--b);letter-spacing:.1em}
.gros{font-size:72px;font-weight:800;color:var(--b);line-height:1}
/* contact */
.cf{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;background:#fff;padding:36px;box-shadow:0 20px 50px rgba(10,26,51,.1)}
.cf .w{grid-column:1/-1}
.cf label{display:block;font-weight:600;margin-bottom:6px}
.cf input,.cf textarea{width:100%;border:2px solid var(--b);padding:14px;font:16px Poppins,Arial,sans-serif;color:var(--n);border-radius:0}
.cf textarea{min-height:160px;resize:vertical}
.cf .pg{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.coord{display:flex;flex-direction:column;gap:14px}
.coord a{display:flex;align-items:center;gap:14px;text-decoration:none;color:var(--n);font-weight:600}
.coord a span{width:48px;height:48px;background:var(--b);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.coord svg{width:22px;height:22px;stroke:#fff;fill:none;stroke-width:2}
/* pages légales */
.leg{display:grid;grid-template-columns:260px 1fr;gap:48px;align-items:start}
.leg nav{position:sticky;top:100px;border:2px solid var(--b);padding:20px}
.leg nav b{display:block;margin-bottom:10px}.leg nav a{display:block;color:var(--n);text-decoration:none;font-size:14px;padding:5px 0}.leg nav a:hover{color:var(--b)}
.leg .c h2{font-size:24px;margin:40px 0 12px;scroll-margin-top:100px}.leg .c h2:first-child{margin-top:0}
.leg .c h4{font-size:17px;margin:18px 0 8px}
.leg .c p,.leg .c li{color:var(--t)}.leg .c p+p{margin-top:10px}.leg .c ul{margin:10px 0;padding-left:22px}
/* pied de page */
.yf{background:#fff;border-top:4px solid var(--b);color:var(--t)}
.yf .in{max-width:1240px;margin:0 auto;padding:48px 24px 28px}
.yf .hd{display:flex;justify-content:space-between;gap:28px;flex-wrap:wrap;align-items:center}
.yf .hd img{height:52px;width:auto}
.yf nav{display:flex;gap:22px;flex-wrap:wrap}.yf nav a{color:var(--n);text-decoration:none;font-size:14px}.yf nav a:hover{color:var(--b)}
.so{display:flex;gap:10px}.so a{width:44px;height:44px;display:flex;align-items:center;justify-content:center;background:var(--b)}.so a:hover{background:var(--b2)}
.so svg{width:20px;height:20px;stroke:#fff;fill:none;stroke-width:2}
.yf .bt{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;font-size:13px;border-top:1px solid var(--ln);padding-top:20px;margin-top:28px}
.yf .bt div{display:flex;gap:18px;flex-wrap:wrap}.yf .bt a{color:var(--t)}
/* téléphone */
@media(max-width:1060px){
 .yh nav{display:none;position:absolute;top:100%;left:0;right:0;background:#fff;flex-direction:column;gap:0;padding:8px 24px 20px;border-bottom:1px solid var(--ln)}
 .yh.ouv nav{display:flex}.yh nav a{padding:12px 0;border-bottom:1px solid var(--ln)}
 .yh .bm{display:block;margin-left:auto}.yh .tel{display:none}
}
@media(max-width:760px){
 .sec{padding:64px 0}.h2{font-size:32px}
 .hero h1,.ph h1{font-size:40px}.hero .in{padding-top:36px}.hero .v{min-height:380px}.hero .v .eq{height:260px}.hero .v .eq i{width:20px}
 .stats b{font-size:30px}.stats>div{padding:16px 8px 0}
 .yh .btn{display:none}.yh .lg img{height:44px}
 .cards2,.res,.chif,.lev,.pan .grid,.cf,.tabs,.player,.leg{grid-template-columns:1fr}
 .mq .r{font-size:24px}
 .fin h2{font-size:32px}
 .ex{flex-direction:column;align-items:flex-start}
 .split .b img.mini,.ph .i img.mini{left:8px;bottom:-24px;width:120px}
 .ph .i img.p{height:280px}
 .sim form,.cf,.pan{padding:22px}
 .leg nav{position:static}
 .player .scr{min-height:300px}.player .scr .eq{display:none}.player .scr .ov{padding:20px}
 .gros{font-size:56px}
 .concl{padding:28px}
}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}.rv{opacity:1;transform:none}.note{opacity:.8}}
/* FAQ */
.fq{background:#fff;border:2px solid var(--b);margin-bottom:12px}
.fq summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:16px;padding:20px 22px;font-weight:700;font-size:18px}
.fq summary::-webkit-details-marker{display:none}
.fq summary i{width:16px;height:16px;position:relative;flex-shrink:0}
.fq summary i:before,.fq summary i:after{content:"";position:absolute;left:0;top:7px;width:16px;height:2px;background:var(--b);transition:transform .25s}
.fq summary i:after{transform:rotate(90deg)}.fq[open] summary i:after{transform:rotate(0)}
.fq[open] summary{color:var(--b)}
.fq .rp{padding:0 22px 22px;color:var(--t);line-height:1.75}
.fq.av .rp{background:#FFF8D6}
