.mg-vp-wrap{line-height:0}.mg-vp-btn{appearance:none;-webkit-appearance:none;border:0;background:transparent;padding:0;margin:0;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:14px;line-height:1;-webkit-tap-highlight-color:transparent}.mg-vp-play{position:relative;display:inline-flex;align-items:center;justify-content:center;width:76px;height:76px;border-radius:999px;background:#3B82F6;box-shadow:0 16px 40px rgba(59,130,246,.35), inset 0 1px 0 rgba(255,255,255,.35);transition:transform .22s ease,box-shadow .22s ease}.mg-vp-play:before{content:"";position:absolute;inset:-8px;border-radius:inherit;border:1px solid rgba(255,255,255,.25);opacity:.9}.mg-vp-play:after{content:"";position:absolute;inset:-16px;border-radius:inherit;background:rgba(59,130,246,.18);animation:mgVpPulse 1.8s infinite}.mg-vp-triangle{position:relative;z-index:2;margin-left:5px;width:0;height:0;border-top:12px solid transparent;border-bottom:12px solid transparent;border-left:18px solid #fff}.mg-vp-label{font-size:16px;font-weight:800;color:#fff;letter-spacing:.01em}.mg-vp-btn:not(.mg-vp-clean):hover .mg-vp-play{transform:scale(1.05);box-shadow:0 18px 46px rgba(59,130,246,.5), inset 0 1px 0 rgba(255,255,255,.4)}.mg-vp-btn:focus{outline:none}.mg-vp-pill{padding:13px 20px 13px 14px;border:1px solid rgba(59,130,246,.7);background:rgba(0,0,0,.45);backdrop-filter:blur(10px);border-radius:16px;box-shadow:0 16px 40px rgba(0,0,0,.25)}.mg-vp-pill .mg-vp-play{width:46px!important;height:46px!important}.mg-vp-pill .mg-vp-triangle{border-top-width:8px;border-bottom-width:8px;border-left-width:12px;margin-left:3px}.mg-vp-glass{padding:14px 18px;border:1px solid rgba(255,255,255,.25);background:rgba(255,255,255,.08);backdrop-filter:blur(12px);border-radius:999px}.mg-vp-glass .mg-vp-play{background:rgba(59,130,246,.9)}.mg-vp-modal{position:fixed;inset:0;z-index:999999;display:none;align-items:center;justify-content:center;padding:22px;background:rgba(0,0,0,.82);backdrop-filter:blur(6px)}.mg-vp-modal.is-open{display:flex}.mg-vp-modal-inner{position:relative;width:min(100%,980px);aspect-ratio:16/9;background:#000;border-radius:18px;overflow:hidden;box-shadow:0 30px 90px rgba(0,0,0,.65)}.mg-vp-modal iframe,.mg-vp-modal video{width:100%;height:100%;display:block;border:0;background:#000}.mg-vp-close{position:absolute;right:18px;top:18px;z-index:2;width:42px;height:42px;border:1px solid rgba(255,255,255,.25);border-radius:999px;background:rgba(0,0,0,.65);color:#fff;font-size:26px;line-height:38px;cursor:pointer}.mg-vp-close:hover{background:#111}@keyframes mgVpPulse{0%{transform:scale(.9);opacity:.55}70%{transform:scale(1.18);opacity:0}100%{transform:scale(1.18);opacity:0}}@media(max-width:767px){.mg-vp-modal{padding:14px}.mg-vp-modal-inner{border-radius:14px}.mg-vp-label{font-size:14px}.mg-vp-play{width:64px;height:64px}.mg-vp-close{right:12px;top:12px}}

/* ── Neutralizar hover global de Astra ── */
.mg-vp-btn:hover,
.mg-vp-btn:focus {
  background: transparent !important;
  color: inherit !important;
  border-color: transparent !important;
  box-shadow: none !important;
  outline: none !important;
}

/* ── Play Premium: anillo fino, fondo transparente ── */
.mg-vp-clean {
  background: transparent !important;
  border: 0 !important;
  gap: 0;
}
.mg-vp-clean .mg-vp-play {
  background: transparent !important;
  width: 140px;
  height: 140px;
  border: 3px solid rgba(255,255,255,0.92);
  box-shadow: none;
  transition: transform .22s ease, border-color .22s ease;
}
.mg-vp-clean .mg-vp-play:before,
.mg-vp-clean .mg-vp-play:after {
  display: none;
}
.mg-vp-clean .mg-vp-triangle {
  border-top: 20px solid transparent;
  border-bottom: 20px solid transparent;
  border-left: 30px solid rgba(255,255,255,0.92);
  margin-left: 8px;
  transition: border-left-color .22s ease;
}
.mg-vp-clean .mg-vp-label { display: none; }

/* hover: los colores los sobreescriben los selectores de Elementor, estas son las reglas de transición */
.mg-vp-clean .mg-vp-btn:hover .mg-vp-play,
.mg-vp-clean:hover .mg-vp-play {
  transform: scale(1.06);
}

@media(max-width:767px){
  .mg-vp-clean .mg-vp-play {
    width: 100px;
    height: 100px;
    border-width: 2px;
  }
  .mg-vp-clean .mg-vp-triangle {
    border-top-width: 14px;
    border-bottom-width: 14px;
    border-left-width: 22px;
  }
}
