.needpopup-opened,.needpopup-opened body{overflow:hidden}
.needpopup-opened.needpopup-scrolled,.needpopup-opened.needpopup-scrolled body{height:auto}
.needpopup-opened.needpopup-scrolled body{position:fixed;width:100%}
.needpopup_wrapper{position:fixed;z-index:999;top:0;left:0;visibility:hidden;overflow:auto;-webkit-box-sizing:border-box;box-sizing:border-box;width:100%;height:100%;
padding:40px 0;-webkit-transition:opacity .3s ease;transition:opacity .3s ease;opacity:0;background:#000;background:rgba(0,0,0,.8)}
.needpopup-opened .needpopup_wrapper{visibility:visible;opacity:1}
.needpopup-overflow .needpopup_wrapper{padding:10px}
.needpopup{position:relative;z-index:9999;top:50%;left:40%;display:none;-webkit-box-sizing:border-box;box-sizing:border-box;width:100%;max-width:1000px;
margin-left:-275px;padding:30px;-webkit-transform:scale(.1,.1);-ms-transform:scale(.1,.1);transform:scale(.1,.1);opacity:0;background:#fff}
.needpopup.opened{-webkit-transition:opacity .5s ease,-webkit-transform .5s ease;transition:opacity .5s ease,transform .5s ease;-webkit-transform:scale(1,1);
-ms-transform:scale(1,1);transform:scale(1,1);opacity:1}
.needpopup.stacked{top:0!important;margin-top:0!important}
.needpopup-overflow .needpopup{left:0;width:auto;margin-left:0}
.needpopup_remover{position:fixed;z-index:9999;top:30px;right:30px;font-size:40px;line-height:.5;color:#fff;text-decoration:none}
.needpopup_remover:hover{color:#ccc}.needpopup_remover:before{content:'×'}
.needpopup .needpopup_remover{top:10px;right:10px;font-size:20px;line-height:.5;color:#000}
.needpopup .needpopup_remover:hover{color:#ccc}