.nihao-top-promo{position:relative; width:100%; overflow:hidden; display:block; transform:translateY(-20px); opacity:0; animation:nihao-promo-in .6s cubic-bezier(.2,.9,.2,1) forwards}
.nihao-top-promo__inner{max-width:1200px;margin:0 auto; padding:0 16px; display:flex; align-items:center; justify-content:center;}
.nihao-top-promo__text{font-weight:700;letter-spacing:0.2px}
.nihao-top-promo__carousel{display:block;position:relative;width:100%;height:100%;}
.nihao-top-promo__slide{position:absolute;left:0;top:0;width:100%;height:100%;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .6s ease, transform .6s ease}
.nihao-top-promo__slide img{max-height:100%;max-width:100%;object-fit:cover}
.nihao-top-promo__slide.is-active{opacity:1;transform:none;z-index:2}
.nihao-top-promo__close{position:absolute;right:8px;top:50%;transform:translateY(-50%);background:rgba(0,0,0,0.18);color:#fff;border:0;border-radius:50%;width:28px;height:28px;cursor:pointer}

/* Effects */
.nihao-top-promo--effect-fade .nihao-top-promo__slide{transform:translateY(0)}
.nihao-top-promo--effect-slide .nihao-top-promo__slide{transform:translateX(10%)}
.nihao-top-promo--effect-slide .nihao-top-promo__slide.is-active{transform:translateX(0)}
.nihao-top-promo--effect-zoom .nihao-top-promo__slide img{transition:transform 8s ease; transform:scale(1)}
.nihao-top-promo--effect-zoom .nihao-top-promo__slide.is-active img{transform:scale(1.08)}
.nihao-top-promo--effect-marquee .nihao-top-promo__carousel{display:flex;align-items:center;gap:40px;white-space:nowrap;animation:nihao-marquee 12s linear infinite}

@keyframes nihao-promo-in{from{transform:translateY(-18px);opacity:0}to{transform:none;opacity:1}}
@keyframes nihao-promo-out{from{transform:none;opacity:1}to{transform:translateY(-18px);opacity:0}}
@keyframes nihao-marquee{0%{transform:translateX(0)}100%{transform:translateX(-50%)}}

/* close with animation */
.nihao-top-promo.is-closing{animation:nihao-promo-out .45s ease forwards}

@media (max-width:767px){ .nihao-top-promo__inner{padding:0 8px} .nihao-top-promo__text{font-size:14px} }
