/* Player VSL HM2 — tudo prefixado em .hm2-vsl */
.hm2-vsl{--hv-blue:#0078D4;position:relative;width:100%;max-width:960px;margin:0 auto;aspect-ratio:16/9;background:#000;border-radius:14px;overflow:hidden;box-shadow:0 12px 36px rgba(0,0,0,.28),0 2px 8px rgba(0,0,0,.18);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;color:#fff;-webkit-tap-highlight-color:transparent;user-select:none;line-height:1.2}
@supports not (aspect-ratio:16/9){.hm2-vsl{height:0;padding-top:56.25%}}
.hm2-vsl *,.hm2-vsl *::before,.hm2-vsl *::after{box-sizing:border-box}
.hm2-vsl video,.hm2-vsl .hv-poster{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;background:#000;border:0;margin:0}
.hm2-vsl .hv-poster{object-fit:cover;z-index:2}
.hm2-vsl .hv-layer{position:absolute;inset:0;display:none;align-items:center;justify-content:center;flex-direction:column;gap:14px;cursor:pointer;z-index:3;text-align:center;padding:16px}
.hm2-vsl .hv-layer.on{display:flex}
.hm2-vsl .hv-start{background:rgba(0,0,0,.28)}
.hm2-vsl .hv-label{font-size:clamp(15px,2.6vw,22px);font-weight:700;text-shadow:0 2px 8px rgba(0,0,0,.6);background:rgba(0,0,0,.45);padding:8px 16px;border-radius:999px}
.hm2-vsl .hv-big{width:clamp(64px,13vw,104px);height:clamp(64px,13vw,104px);border-radius:50%;background:var(--hv-blue);display:flex;align-items:center;justify-content:center;box-shadow:0 0 0 0 rgba(0,120,212,.6);animation:hv-pulse 1.8s infinite;border:0;cursor:pointer;padding:0}
.hm2-vsl .hv-big svg{width:42%;height:42%;fill:#fff;margin-left:8%}
@keyframes hv-pulse{0%{box-shadow:0 0 0 0 rgba(0,120,212,.6);transform:scale(1)}70%{box-shadow:0 0 0 22px rgba(0,120,212,0);transform:scale(1.04)}100%{box-shadow:0 0 0 0 rgba(0,120,212,0);transform:scale(1)}}
.hm2-vsl .hv-muted{background:rgba(0,0,0,.18)}
.hm2-vsl .hv-card{background:var(--hv-blue);border-radius:14px;padding:16px 22px;display:flex;flex-direction:column;align-items:center;gap:8px;box-shadow:0 8px 24px rgba(0,0,0,.35);animation:hv-pulse 1.8s infinite;max-width:90%}
.hm2-vsl .hv-card b{font-size:clamp(14px,2.4vw,20px)}
.hm2-vsl .hv-card span{font-size:clamp(13px,2vw,17px)}
.hm2-vsl .hv-card svg{width:clamp(30px,5vw,46px);height:auto;fill:#fff}
.hm2-vsl .hv-pause{background:rgba(0,0,0,.35)}
.hm2-vsl .hv-pause .hv-big{animation:none;background:rgba(0,120,212,.92)}
.hm2-vsl .hv-resume,.hm2-vsl .hv-end{background:rgba(0,0,0,.72);cursor:default}
.hm2-vsl .hv-q{font-size:clamp(16px,2.8vw,24px);font-weight:700}
.hm2-vsl .hv-row{display:flex;gap:10px;flex-wrap:wrap;justify-content:center}
.hm2-vsl .hv-btn{font:inherit;font-weight:700;font-size:clamp(14px,2.2vw,18px);border:0;border-radius:10px;padding:12px 20px;cursor:pointer;background:var(--hv-blue);color:#fff;text-decoration:none;display:inline-block}
.hm2-vsl .hv-btn.ghost{background:rgba(255,255,255,.16)}
.hm2-vsl .hv-btn:hover{filter:brightness(1.1)}
.hm2-vsl .hv-cta{font-size:clamp(17px,3.2vw,28px);padding:16px 34px;border-radius:12px;animation:hv-pulse 1.8s infinite;letter-spacing:.3px}
.hm2-vsl .hv-replay{background:none;border:0;color:#ddd;font:inherit;font-size:14px;cursor:pointer;text-decoration:underline}
.hm2-vsl .hv-ctrl{position:absolute;right:10px;bottom:14px;display:none;gap:6px;z-index:4;opacity:0;transition:opacity .25s}
.hm2-vsl.playing .hv-ctrl,.hm2-vsl.paused .hv-ctrl{display:flex}
.hm2-vsl:hover .hv-ctrl,.hm2-vsl.paused .hv-ctrl,.hm2-vsl.touch .hv-ctrl{opacity:1}
.hm2-vsl .hv-ctrl button{width:38px;height:38px;border-radius:50%;border:0;background:rgba(0,0,0,.55);display:flex;align-items:center;justify-content:center;cursor:pointer;padding:0}
.hm2-vsl .hv-ctrl svg{width:20px;height:20px;fill:#fff}
.hm2-vsl .hv-bar{position:absolute;left:0;right:0;bottom:0;height:5px;background:rgba(160,160,160,.55);z-index:4;display:none;pointer-events:none}
.hm2-vsl.playing .hv-bar,.hm2-vsl.paused .hv-bar{display:block}
.hm2-vsl .hv-fill{height:100%;width:0;background:var(--hv-blue);transition:width .3s linear}
.hm2-vsl:fullscreen{max-width:none;border-radius:0;aspect-ratio:auto;width:100%;height:100%}
.hm2-vsl:-webkit-full-screen{max-width:none;border-radius:0;width:100%;height:100%}
@media (max-width:600px){.hm2-vsl{border-radius:10px}}
/* capa da home: play embaixo à esquerda, abaixo do título da thumbnail (data-play="esq") */
.hm2-vsl[data-play="esq"] .hv-start{flex-direction:row-reverse;justify-content:flex-end;align-items:flex-end;padding:0 0 4.5% 6%;gap:16px}
.hm2-vsl[data-play="esq"] .hv-start .hv-label{font-size:clamp(14px,2.3vw,24px);margin-bottom:clamp(14px,2.6vw,34px);text-shadow:0 2px 8px rgba(0,0,0,.5)}
/* celular: play pequeno no canto, sem rótulo, para não cobrir o título nem o selo da capa */
@media (max-width:600px){.hm2-vsl[data-play="esq"] .hv-start{padding:0 0 3% 3.5%}.hm2-vsl[data-play="esq"] .hv-start .hv-label{display:none}.hm2-vsl[data-play="esq"] .hv-start .hv-big{width:46px;height:46px}}
