.ohslider { position: relative; overflow: hidden; border-radius: 12px; }
.ohslider-track { display:flex; width:100%; transition: transform 350ms ease; }
.ohslider-slide { flex: 0 0 100%; }
.ohslider-slide-inner { position: relative; }
.ohslider-img { width:100%; height:auto; display:block; }
.ohslider-iframe { width:100%; height: 420px; border:0; display:block; }
.ohslider-h-16x9 .ohslider-iframe { height: min(56.25vw, 640px); }
.ohslider-h-4x3 .ohslider-iframe { height: min(75vw, 640px); }
.ohslider-h-fixed .ohslider-iframe { height: var(--ohslider-fixed, 420px); }

.ohslider-text {
  position:absolute; left: 14px; bottom: 14px;
  max-width: 80%;
  padding: 10px 12px;
  background: rgba(0,0,0,0.45);
  color: #fff;
  border-radius: 10px;
  backdrop-filter: blur(6px);
}
.ohslider-headline { font-size: 1.2rem; font-weight: 700; }
.ohslider-subhead { opacity: 0.9; margin-top: 4px; }
.ohslider-caption { opacity: 0.85; margin-top: 6px; font-size: 0.95rem; }

.ohslider-prev, .ohslider-next {
  position:absolute; top: 50%; transform: translateY(-50%);
  width: 44px; height: 44px;
  border: 0; border-radius: 999px;
  background: rgba(0,0,0,0.55);
  color:#fff; font-size: 26px;
  cursor:pointer;
}
.ohslider-prev { left: 10px; }
.ohslider-next { right: 10px; }

.ohslider-dots { position:absolute; left: 50%; transform: translateX(-50%); bottom: 10px; display:flex; gap: 8px; }
.ohslider-dot { width: 10px; height: 10px; border-radius: 999px; border: 0; cursor:pointer; opacity:0.6; }
.ohslider-dot[aria-selected="true"] { opacity: 1; transform: scale(1.15); }