/* =========================================================
   25. IMPRESARIAT / ZENEKAR - DESIGN PREMIUM
   ========================================================= */
.zm-music-page{background:#fff;}
.zm-music-hero{
  position:relative;
  overflow:hidden;
  min-height:0;
  border-bottom:1px solid #edf1f8;
  background:
    linear-gradient(160deg,rgba(248,251,255,.98) 0%,rgba(248,251,255,.94) 20%,rgba(248,251,255,.55) 54%,rgba(18,41,90,.10) 100%),
    url('../images/impresariat/impresariat.webp') center center/cover no-repeat;
}
.zm-music-hero-inner{display:flex;align-items:center;width:min(1280px,calc(100% - 40px));min-height:285px;margin:0 auto;padding:34px 0 30px;}
.zm-music-hero-copy{max-width:700px;}
.zm-music-kicker,.zm-music-eyebrow{display:inline-flex;align-items:center;gap:8px;color:var(--zh-blue);font-size:.86rem;font-weight:800;letter-spacing:.07em;text-transform:uppercase;}
.zm-music-kicker{margin-bottom:12px;}
.zm-music-hero h1{margin:0 0 14px;color:#10295c;font-size:clamp(2.55rem,4.25vw,4.1rem);font-weight:800;line-height:1.02;letter-spacing:-.035em;}
.zm-music-hero p{max-width:680px;margin:0 0 23px;color:#20375f;font-size:1.06rem;font-weight:500;line-height:1.65;text-shadow:0 1px 2px rgba(255,255,255,.94);}
.zm-music-highlights{padding:18px 0 12px;background:#fff;}
.zm-music-highlight-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;}
.zm-music-highlight-grid article{display:flex;gap:13px;align-items:flex-start;padding:18px;border:1px solid #e3ebf7;border-radius:14px;background:#fff;box-shadow:0 8px 24px rgba(16,35,74,.055);}
.zm-music-highlight-grid article>i{display:grid;place-items:center;flex:0 0 46px;width:46px;height:46px;border-radius:13px;background:#edf5ff;color:var(--zh-blue);font-size:1.25rem;}
.zm-music-highlight-grid h3{margin:0 0 5px;color:#17315d;font-size:1rem;font-weight:800;}.zm-music-highlight-grid p{margin:0;color:#61718a;font-size:.9rem;line-height:1.5;}
.zm-music-section{padding:58px 0;}.zm-music-section.first{padding-top:42px;}.zm-music-section.alt{background:linear-gradient(180deg,#f8fbff 0%,#f3f7fd 100%);}
.zm-music-intro{display:grid;grid-template-columns:.94fr 1.06fr;gap:42px;align-items:center;}.zm-music-intro-image{overflow:hidden;border-radius:18px;box-shadow:0 18px 42px rgba(20,54,108,.12);}.zm-music-intro-image img{width:100%;height:330px;object-fit:cover;}
.zm-music-copy h2,.zm-music-program-main h2{margin:8px 0 14px;color:#10295c;font-size:clamp(1.8rem,2.8vw,2.55rem);font-weight:800;letter-spacing:-.025em;}.zm-music-copy p{margin:0 0 13px;color:#596b84;line-height:1.78;}
.zm-music-band-card{display:grid;grid-template-columns:360px 1fr;gap:34px;align-items:stretch;margin-top:28px;padding:24px;border:1px solid #dce6f3;border-radius:18px;background:#fff;box-shadow:0 12px 30px rgba(16,35,74,.07);}.zm-music-band-image{overflow:hidden;border-radius:14px;}.zm-music-band-image img{width:100%;height:100%;min-height:330px;object-fit:cover;}.zm-music-band-copy p{margin:0 0 13px;color:#586a82;line-height:1.73;}
.zm-music-video-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-top:28px;}.zm-music-video-card{overflow:hidden;border:1px solid #dfe7f2;border-radius:16px;background:#fff;box-shadow:0 8px 24px rgba(16,35,74,.06);transition:.22s ease;}.zm-music-video-card:hover{transform:translateY(-5px);box-shadow:0 15px 34px rgba(16,35,74,.12);}.zm-music-video-card .media{position:relative;height:185px;overflow:hidden;}.zm-music-video-card .media img{width:100%;height:100%;object-fit:cover;transition:transform .35s ease;}.zm-music-video-card:hover .media img{transform:scale(1.035);}.zm-music-video-card .media span{position:absolute;inset:0;display:grid;place-items:center;margin:auto;width:58px;height:58px;border-radius:50%;background:rgba(23,99,230,.92);color:#fff;font-size:1.65rem;box-shadow:0 8px 20px rgba(23,99,230,.28);}.zm-music-video-card .content{padding:17px 18px 19px;}.zm-music-video-card h3{margin:0 0 6px;color:#17315d;font-size:1rem;font-weight:800;}.zm-music-video-card p{margin:0;color:#687890;font-size:.9rem;line-height:1.5;}
.zm-music-gallery{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-top:28px;}.zm-music-gallery a{display:flex;flex-direction:column;overflow:hidden;border:1px solid #dfe7f2;border-radius:16px;background:#fff;color:#425575!important;box-shadow:0 8px 22px rgba(16,35,74,.055);transition:.22s ease;}.zm-music-gallery a:hover{transform:translateY(-5px);box-shadow:0 15px 32px rgba(16,35,74,.11);}.zm-music-gallery img{width:100%;height:190px;object-fit:cover;}.zm-music-gallery span{padding:15px 16px 17px;font-size:.91rem;line-height:1.55;}
.zm-music-program-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:30px;align-items:start;}.zm-music-program-list{display:grid;gap:10px;margin-top:20px;}.zm-music-program-list>div{display:flex;gap:11px;align-items:flex-start;padding:12px 14px;border:1px solid #e2eaf5;border-radius:11px;background:#fff;color:#4e627e;line-height:1.55;}.zm-music-program-list i{margin-top:2px;color:var(--zh-blue);font-size:1.1rem;}.zm-music-representative{padding:26px;border:1px solid #d8e5f7;border-radius:18px;background:linear-gradient(145deg,#eef6ff,#fff);box-shadow:0 10px 28px rgba(16,35,74,.07);}.zm-music-representative>i{display:grid;place-items:center;width:54px;height:54px;margin-bottom:15px;border-radius:15px;background:var(--zh-blue);color:#fff;font-size:1.35rem;}.zm-music-representative h3{margin:0 0 10px;color:#17315d;font-size:1.2rem;font-weight:800;}.zm-music-representative p{color:#60728a;line-height:1.65;}.zm-music-representative .zm-link{display:block;margin-top:11px;}
.zm-music-zia{display:flex;align-items:center;gap:20px;width:min(1180px,calc(100% - 40px));margin:6px auto 32px;padding:22px 26px;border:1px solid #dbe8fb;border-radius:16px;background:linear-gradient(90deg,#f1f7ff,#fff);}.zm-music-zia img{width:72px;height:72px;border-radius:50%;object-fit:cover;}.zm-music-zia h2{margin:0 0 5px;color:#17315d;font-size:1.2rem;font-weight:800;}.zm-music-zia p{margin:0;color:#60728a;}.zm-music-zia .zm-btn{margin-left:auto;white-space:nowrap;}
.zm-music-contact{display:grid;grid-template-columns:.9fr 1.1fr;gap:28px;align-items:stretch;}.zm-music-contact-card,.zm-music-form-card{padding:30px;border:1px solid #dfe8f4;border-radius:18px;background:#fff;box-shadow:0 10px 30px rgba(16,35,74,.06);}.zm-music-contact-card h2,.zm-music-form-card h2{margin:7px 0 12px;color:#17315d;font-size:1.55rem;font-weight:800;}.zm-music-contact-card>p{color:#61728a;line-height:1.7;}.zm-music-form-card .form-control{border-color:#dbe5f1;border-radius:8px;}.zm-music-form-card .form-control:focus{border-color:var(--zh-blue);box-shadow:0 0 0 .2rem rgba(23,99,230,.10);}
@media(max-width:1100px){.zm-music-highlight-grid,.zm-music-video-grid,.zm-music-gallery{grid-template-columns:repeat(2,minmax(0,1fr));}.zm-music-band-card{grid-template-columns:300px 1fr;}}
@media(max-width:900px){.zm-music-intro,.zm-music-program-grid,.zm-music-contact{grid-template-columns:1fr;}.zm-music-band-card{grid-template-columns:1fr;}.zm-music-band-image img{min-height:280px;height:340px;}.zm-music-zia{flex-wrap:wrap;align-items:flex-start;}.zm-music-zia .zm-btn{margin-left:92px;}}
@media(max-width:768px){.zm-music-hero{background-position:68% center;}.zm-music-hero::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(248,251,255,.97) 0%,rgba(248,251,255,.94) 65%,rgba(248,251,255,.78) 100%);}.zm-music-hero-inner{position:relative;z-index:1;width:min(100% - 28px,1280px);min-height:300px;padding:30px 0 28px;}.zm-music-hero h1{font-size:clamp(2.15rem,10vw,3rem);}.zm-music-highlight-grid,.zm-music-video-grid,.zm-music-gallery{grid-template-columns:1fr;}.zm-music-section,.zm-music-section.first{padding:46px 0;}.zm-music-intro-image img{height:270px;}}
@media(max-width:520px){.zm-music-zia .zm-btn{width:100%;margin-left:0;}.zm-music-contact-card,.zm-music-form-card{padding:22px;}}

/* =========================================================
   IMPRESARIAT / ZENEKAR - VIDEO LOCAL MP4
   ========================================================= */
html.zm-music-video-open,
body.zm-music-video-open {
  overflow: hidden;
}

.zm-music-video-modal {
  position: fixed;
  inset: 0;
  z-index: 1000000;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 24px;
  background: rgba(0,0,0,.82);
}

.zm-music-video-dialog {
  position: relative;
  width: min(960px, 92vw);
}

.zm-music-video-player {
  display: block;
  width: 100%;
  aspect-ratio: 16 / 9;
  height: auto;
  max-height: 78vh;
  object-fit: contain;
  background: #000;
  border-radius: 12px;
  box-shadow: 0 18px 60px rgba(0,0,0,.45);
}

.zm-music-video-close {
  position: absolute;
  top: -50px;
  right: 0;
  width: 42px;
  height: 42px;
  border: 0;
  border-radius: 50%;
  background: rgba(255,255,255,.12);
  color: #fff;
  font-size: 34px;
  line-height: 42px;
  text-align: center;
  cursor: pointer;
  transition: background .2s ease, transform .2s ease;
}

.zm-music-video-close:hover {
  background: rgba(255,255,255,.22);
  transform: scale(1.05);
}

@media (max-width: 768px) {
  .zm-music-video-modal {
    padding: 16px;
  }

  .zm-music-video-dialog {
    width: min(94vw, 760px);
  }

  .zm-music-video-player {
    max-height: 72vh;
  }

  .zm-music-video-close {
    top: -46px;
    width: 38px;
    height: 38px;
    font-size: 30px;
    line-height: 38px;
  }
}

@media (max-width: 480px) {
  .zm-music-video-modal {
    padding: 10px;
  }

  .zm-music-video-dialog {
    width: 96vw;
  }

  .zm-music-video-player {
    border-radius: 8px;
    max-height: 68vh;
  }
}

