/* 동북아저널 상단 광고 롤링 배너 */
.neo-top-ads{
  position:relative;
  width:1200px;
  max-width:calc(100% - 40px);
  margin:22px auto 34px;
  overflow:hidden;
  border-radius:8px;
  background:#f7f7f7;
}

.neo-top-ads__viewport{
  position:relative;
  width:100%;
  overflow:hidden;
}

.neo-top-ads__track{
  display:flex;
  width:100%;
  transition:transform .45s ease;
  will-change:transform;
}

.neo-top-ads__slide{
  flex:0 0 100%;
  min-width:0;
  aspect-ratio:2048 / 744;
  background:#fff;
}

.neo-top-ads__slide a,
.neo-top-ads__slide picture{
  display:block;
  width:100%;
}

.neo-top-ads__slide img{
  display:block;
  width:100%;
  height:100%;
  object-fit:contain;
  border:0;
}
.neo-top-ads__slide a,
.neo-top-ads__slide picture{height:100%}

.neo-top-ads__button{
  position:absolute;
  z-index:3;
  top:50%;
  width:38px;
  height:38px;
  margin-top:-19px;
  padding:0;
  border:0;
  border-radius:50%;
  background:rgba(0,0,0,.42);
  color:#fff;
  font-size:27px;
  line-height:36px;
  text-align:center;
  cursor:pointer;
}

.neo-top-ads__prev{left:12px}
.neo-top-ads__next{right:12px}

.neo-top-ads__dots{
  position:absolute;
  z-index:3;
  left:50%;
  bottom:10px;
  display:flex;
  gap:7px;
  transform:translateX(-50%);
}

.neo-top-ads__dot{
  width:9px;
  height:9px;
  padding:0;
  border:1px solid rgba(255,255,255,.9);
  border-radius:50%;
  background:rgba(0,0,0,.35);
  box-shadow:0 1px 2px rgba(0,0,0,.18);
  cursor:pointer;
}

.neo-top-ads__dot.is-active{background:#8b1f32}
.neo-top-ads__button:focus-visible,
.neo-top-ads__dot:focus-visible{outline:3px solid #fff;outline-offset:2px}
.neo-top-ads.is-single .neo-top-ads__button,
.neo-top-ads.is-single .neo-top-ads__dots{display:none}

@media (prefers-reduced-motion:reduce){
  .neo-top-ads__track{transition:none}
}

@media (max-width:640px){
  .neo-top-ads{
    width:auto;
    max-width:none;
    margin:14px 24px 26px;
    border-radius:6px;
  }
  .neo-top-ads__button{
    width:32px;
    height:32px;
    margin-top:-16px;
    font-size:23px;
    line-height:30px;
  }
  .neo-top-ads__prev{left:7px}
  .neo-top-ads__next{right:7px}
  .neo-top-ads__dots{bottom:7px;gap:6px}
  .neo-top-ads__dot{width:8px;height:8px}
}
