/* SinagTech Labs — hero video rotator */
.hero-video{
  position: relative;
  width: min(1040px, 100%);
  margin: clamp(32px, 5vw, 52px) auto 8px;
  border-radius: 20px;
  overflow: hidden;
  background: var(--ink, #0f1330);
  border: 1px solid var(--line, rgba(246,240,228,.14));
  box-shadow: 0 30px 80px -30px rgba(0,0,0,.7), 0 0 90px -20px rgba(242,197,114,.25);
  isolation: isolate;
}
.hv-stage{ position: relative; aspect-ratio: 16 / 9; background: #0b0e24; }
.hv-layer{
  position: absolute; inset: 0; width: 100%; height: 100%;
  object-fit: cover; opacity: 0; transition: opacity .9s ease;
  pointer-events: none;
}
.hv-layer.is-active{ opacity: 1; }
.hv-shade{
  position: absolute; inset: auto 0 0 0; height: 38%;
  background: linear-gradient(to top, rgba(8,10,28,.78), rgba(8,10,28,0));
  pointer-events: none; z-index: 1;
}
.hv-controls{
  position: absolute; left: 0; right: 0; bottom: 0; z-index: 2;
  display: flex; align-items: center; gap: 14px;
  padding: 14px clamp(14px, 2.4vw, 24px) clamp(12px, 2vw, 20px);
}
.hv-label{
  font-family: var(--sans, system-ui, sans-serif); font-size: 13px; letter-spacing: .02em;
  color: var(--capiz, #f6f0e4); opacity: .92; min-width: 0;
  white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}
.hv-dots{ display: flex; gap: 8px; margin-left: auto; align-items: center; }
.hv-dot{
  position: relative; width: 30px; height: 4px; border: 0; padding: 0; cursor: pointer;
  border-radius: 4px; background: rgba(246,240,228,.32); overflow: hidden;
}
.hv-dot::before{ content:""; position:absolute; inset:-10px 0; } /* bigger tap target */
.hv-dot i{
  position: absolute; inset: 0; width: 0%; background: var(--gold-soft, #f2c572);
  border-radius: inherit;
}
.hv-dot.is-active{ background: rgba(246,240,228,.22); }
.hv-btn{
  appearance: none; border: 1px solid rgba(246,240,228,.3); cursor: pointer;
  background: rgba(15,19,48,.55); color: var(--capiz, #f6f0e4);
  -webkit-backdrop-filter: blur(8px); backdrop-filter: blur(8px);
  font-family: var(--sans, system-ui, sans-serif); font-size: 13px; font-weight: 500;
  height: 38px; border-radius: 999px; padding: 0 16px;
  display: inline-flex; align-items: center; gap: 8px;
  transition: background .2s, border-color .2s, transform .2s;
}
.hv-btn:hover{ background: rgba(242,197,114,.2); border-color: var(--gold-soft, #f2c572); }
.hv-btn:active{ transform: scale(.97); }
.hv-btn:focus-visible, .hv-dot:focus-visible{ outline: 2px solid var(--gold-soft, #f2c572); outline-offset: 3px; }
.hv-btn svg{ width: 14px; height: 14px; fill: currentColor; }
.hv-playpause{ width: 38px; padding: 0; justify-content: center; }
.hv-playpause .ico-play{ display: none; }
.hero-video.is-paused .hv-playpause .ico-play{ display: block; }
.hero-video.is-paused .hv-playpause .ico-pause{ display: none; }
@media (max-width: 560px){
  .hero-video{ border-radius: 14px; }
  .hv-label{ display: none; }
  .hv-dots{ margin-left: 0; margin-right: auto; }
  .hv-dot{ width: 22px; }
  .hv-btn{ height: 36px; padding: 0 14px; }
  .hv-playpause{ width: 36px; padding: 0; }
}
@media (prefers-reduced-motion: reduce){
  .hv-layer{ transition: none; }
}
