/* Anima Musica - complements pour les fiches artistes.
   Tout le reste vient de style-index.css, v10-overrides.css et v11-carousel-home.css. */

/* --- Hero : la photo remplace la video de l'accueil --- */
.am-hero{min-height:78vh}
.am-hero .hero-video{object-fit:cover}
.am-hero .hero-overlay{background:linear-gradient(180deg,rgba(0,0,0,.55) 0%,rgba(0,0,0,.42) 40%,rgba(0,0,0,.72) 100%)}
.am-hero h1{font-size:clamp(2.2rem,5.2vw,3.9rem);line-height:1.04;letter-spacing:-.035em}
.am-hero h1 .light{color:var(--primary);font-size:.42em;font-weight:700;letter-spacing:.14em;text-transform:uppercase;display:inline-block;margin-top:14px}
.am-hero .subtitle{max-width:640px;margin-left:auto;margin-right:auto}
@media(max-width:768px){.am-hero{min-height:0;padding:120px 0 64px}}

/* --- Pastilles de styles musicaux --- */
.am-styles{grid-template-columns:repeat(3,minmax(0,1fr))}
.am-styles .v11-pill{justify-content:center;text-align:center}
.am-styles .v11-pill strong{font-size:.86rem;font-weight:700;color:#172026}
@media(max-width:900px){.am-styles{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* --- Liste de formats --- */
.am-formats{margin-top:40px;border-top:1px solid #e3ecf1}
.am-formats .v11-fmt:hover{background:#f6fbfe}
.am-formats .v11-fmt h3{margin:0;font-size:1.12rem;font-weight:800;letter-spacing:-.015em;color:#111418;display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.am-formats .v11-fmt p{margin:0;font-size:.96rem;line-height:1.65;color:#60707a;display:flex;justify-content:space-between;gap:24px;align-items:baseline}
.am-formats .v11-fmt p span{flex-shrink:0;font-weight:700;color:#1789b5;font-size:.86rem}
@media(max-width:768px){.am-formats .v11-fmt{grid-template-columns:1fr;gap:8px}.am-formats .v11-fmt p{flex-direction:column;gap:6px}}

/* --- Galerie --- */
.am-gallery{padding:96px 0;background:#fff;font-family:Montserrat,sans-serif}
.am-gallery.cream{background:var(--v11-cream,#f7f3ea)}
.am-shots{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin-top:42px}
.am-shots .am-shot{padding:0;border:1px solid #e5e1d9;background:#0e1113;border-radius:22px;overflow:hidden;aspect-ratio:4/3;cursor:pointer;transition:transform .25s ease,box-shadow .25s ease}
.am-shots .am-shot img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s cubic-bezier(.22,.9,.28,1)}
.am-shots .am-shot:hover{transform:translateY(-4px);box-shadow:0 22px 48px rgba(20,42,53,.16)}
.am-shots .am-shot:hover img{transform:scale(1.04)}
.am-shots .am-shot:focus-visible{outline:3px solid rgba(117,196,231,.75);outline-offset:3px}
.am-note{margin:22px 0 0;font-size:.9rem;line-height:1.6;color:#60707a}
@media(max-width:900px){.am-shots{grid-template-columns:1fr 1fr;gap:14px}.am-gallery{padding:64px 0}}

/* --- Visionneuse --- */
.am-lightbox{position:fixed;inset:0;background:rgba(8,13,18,.95);display:none;align-items:center;justify-content:center;z-index:2000;padding:24px}
.am-lightbox.on{display:flex}
.am-lightbox img{max-width:92vw;max-height:86vh;border-radius:18px;box-shadow:0 30px 80px rgba(0,0,0,.6)}
.am-lightbox button{position:absolute;background:rgba(255,255,255,.12);border:0;color:#fff;border-radius:50%;cursor:pointer}
.am-lb-close{top:18px;right:20px;font-size:1.7rem;width:48px;height:48px}
.am-lb-nav{top:50%;transform:translateY(-50%);font-size:1.9rem;width:54px;height:54px}
.am-lb-prev{left:18px}.am-lb-next{right:18px}

/* --- Video mise en avant --- */
.am-video{padding:96px 0;background:#fff;font-family:Montserrat,sans-serif}
.am-player{position:relative;margin-top:42px;border-radius:30px;overflow:hidden;background:#111;box-shadow:0 30px 70px rgba(0,0,0,.18)}
.am-player-btn{display:block;width:100%;padding:0;border:0;background:none;cursor:pointer;position:relative;aspect-ratio:16/9}
.am-player-btn img{width:100%;height:100%;object-fit:cover;display:block}
.am-player-btn::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(6,12,18,.12) 0%,rgba(6,12,18,.58) 100%);transition:background .3s ease}
.am-player-btn:hover::after{background:linear-gradient(180deg,rgba(6,12,18,.02) 0%,rgba(6,12,18,.46) 100%)}
.am-play{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:2;display:inline-flex;align-items:center;gap:12px;background:var(--primary,#75C4E7);color:#fff;border-radius:30px;padding:16px 30px 16px 24px;font:600 1rem/1 Montserrat,sans-serif;box-shadow:0 12px 34px rgba(8,17,26,.5);transition:transform .3s ease}
.am-play svg{width:20px;height:20px}
.am-player-btn:hover .am-play{transform:translate(-50%,-50%) scale(1.05)}
.am-player-btn:focus-visible{outline:3px solid rgba(117,196,231,.8);outline-offset:-4px}
.am-player-cap{position:absolute;left:0;right:0;bottom:0;z-index:2;padding:26px 30px;color:#fff;font:700 1.08rem/1.35 Montserrat,sans-serif;text-align:left;pointer-events:none}
.am-player-cap small{display:block;font:500 .85rem/1.4 Montserrat,sans-serif;color:rgba(255,255,255,.72);margin-top:5px}
.am-player video{width:100%;display:block;aspect-ratio:16/9;background:#111}
@media(max-width:768px){.am-video{padding:64px 0}.am-player{border-radius:20px}.am-player-cap{padding:16px 18px;font-size:.95rem}.am-play{padding:13px 22px 13px 18px;font-size:.88rem}}

/* --- Compositions (YouTube) --- */
.am-tracks{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin-top:42px}
.am-tracks figure{margin:0;background:#141a1e;border:1px solid rgba(255,255,255,.1);border-radius:20px;overflow:hidden}
.am-tracks iframe{width:100%;aspect-ratio:16/9;display:block;border:0;background:#111}
.am-tracks figcaption{padding:18px 20px;font:700 .98rem/1.35 Montserrat,sans-serif;color:#fff}
.am-tracks figcaption small{display:block;font:500 .82rem/1.4 Montserrat,sans-serif;color:rgba(255,255,255,.6);margin-top:5px}
@media(max-width:900px){.am-tracks{grid-template-columns:1fr}}

/* --- Blocs de raisons sur fond sombre --- */
.am-reasons,.am-join-reasons{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px;margin-top:44px}
.am-reasons>div,.am-join-reasons>div{display:flex;gap:14px;align-items:flex-start}
.am-reasons i,.am-join-reasons i{color:var(--primary,#75C4E7);flex-shrink:0;line-height:0;margin-top:2px}
.am-reasons p,.am-join-reasons p{margin:0}
.am-reasons strong,.am-join-reasons strong{display:block;font:800 1.02rem/1.35 Montserrat,sans-serif;color:#fff;margin-bottom:6px}
.am-reasons span,.am-join-reasons span{font:500 .93rem/1.65 Montserrat,sans-serif;color:rgba(255,255,255,.7)}
@media(max-width:900px){.am-reasons,.am-join-reasons{grid-template-columns:1fr;gap:20px}}

/* --- Bandeau rejoindre le roster --- */
.am-join{background:linear-gradient(140deg,#0b0f12 0%,#0f2430 58%,#123b4e 100%)}
.am-join-actions{justify-content:flex-start;margin-top:44px}
.am-phone-light{color:#9edcf4}

/* --- Fiches du roster --- */
.am-roster .v11-audience img{aspect-ratio:4/3;object-fit:cover;width:100%;display:block}

/* --- Lien de nav actif --- */
.nav-link.is-current::after{width:100%}
