#visul { position: relative; background: #fff; clear: both; z-index: 3; }
.hero-slide .b-de { position: relative; color: #fff; background-repeat: no-repeat; background-position: 50% 50%; background-size: cover; }
.banner-txt { position: absolute; width: 100%; text-shadow: 0 0 3px #1c1c1c; top: 15%; left: 0; z-index: 11; }
.banner-txt h2 { padding-bottom: 40px; text-align: center; line-height: 120%; font-size: 52px; -webkit-text-fill-color: #fff; text-fill-color: #fff; -webkit-text-stroke: 1px #2b2828; text-stroke: 1px #2b2828; }
.banner-txt p { text-align: center; line-height: 120%; }
.banner-txt p a {display: inline-block;width: 100%;text-align: center; color: #fff; line-height: 120%; font-size: 23px; text-shadow: -1px -1px 0 #343333, 1px -1px 0 #343333, -1px 1px 0 #343333, 1px 1px 0 #343333; }
.hero-slide .b-de >img { width: 100%; height: 100vh; }

#banner .item { position: relative; overflow: hidden; text-align: right; }
#banner .item video ,
#banner .item iframe { position: absolute; width: 100%; left: 0; top: 0; }

#visul .slick-dots { bottom: 10px; }
#visul .slick-dots li button:before { color: #808080; opacity: 1; }
#visul .slick-dots li.slick-active button:before { color: #fff; }

#visul .slick-slider { margin-bottom: 0; }

@media screen and (max-width:1440px) {
	.banner-txt h2 { font-size: 36px; }
	.banner-txt p a { font-size: 18px; }
}
@media screen and (max-width:1280px) {
	.banner-txt h2 { padding-bottom: 20px; }
}
@media screen and (max-width:980px) {
	#banner .item video { width: auto; height:100%; }
	#banner .item iframe { height:100%; }
}
@media screen and (max-width:640px) {
	.banner-txt { top: 25%; left: 10%; width: 80%; }
	.hero-slide .b-de >img { padding: 30px 0; }
}
@media screen and (max-width:480px) {
	.banner-txt { top: 20%; }
}