/*! normalize.css v3.0.2 | MIT License | git.io/normalize */
html {
	font-family: sans-serif;
	-ms-text-size-adjust: 100%;
	-webkit-text-size-adjust: 100%
}

body {
	margin: 0;
	width: 100%
}

article,
aside,
footer,
header,
nav,
section {
	display: block
}

[hidden] {
	display: none
}

a {
	background-color: transparent;
	text-decoration: none;
	color: #333
}

a:active,
a:hover {
	outline: 0
}

b,
strong {
	font-weight: bold
}

img {
	border: 0
}

svg:not(:root) {
	overflow: hidden
}

button,
input,
select,
textarea {
	color: inherit;
	font: inherit;
	margin: 0
}

button {
	overflow: visible
}

button,
select {
	text-transform: none
}

button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
	-webkit-appearance: button;
	cursor: pointer
}

button[disabled],
html input[disabled] {
	cursor: default
}

button::-moz-focus-inner,
input::-moz-focus-inner {
	border: 0;
	padding: 0
}

input {
	line-height: normal
}

textarea {
	overflow: auto
}

@font-face {
	font-family: "PFDinTextProRegular";
	src: url("fonts/PFDinTextProRegular.eot");
	src: url("fonts/PFDinTextProRegular.eot?#iefix")format("embedded-opentype"), url("fonts/PFDinTextProRegular.woff") format("woff"), url("fonts/PFDinTextProRegular.ttf") format("truetype");
	font-style: normal;
	font-weight: normal
}

@font-face {
	font-family: "PFDinTextProBold";
	src: url("fonts/PFDinTextProBold.eot");
	src: url("fonts/PFDinTextProBold.eot?#iefix")format("embedded-opentype"), url("fonts/PFDinTextProBold.woff") format("woff"), url("fonts/PFDinTextProBold.ttf") format("truetype");
	font-style: normal;
	font-weight: normal
}

body {
	font: 14px PFDinTextProRegular, sans-serif;
	color: #333;
	background: #f3ebed
}

input.invalid,
select.invalid,
textarea.invalid {
	border: 1px solid #e1778d !important;
	background-color: #f8dbdd
}

input.valid,
select.valid,
textarea.valid {
	border: 1px solid #859b75 !important;
	background-color: #e0efd8
}

.inner {
	width: 1160px;
	margin: 0 auto
}

.content {
	width: 1200px;
	margin: 0 auto;
	background: #fff;
	overflow: hidden;
	box-sizing: border-box;
	padding: 10px 15px 60px 15px;
}

iframe .content {
	display: none;
}

div[id^=TSWid] .content {
	display: none;
}

h1 {
	font-size: 30px;
	text-align: center
}

h2,
h1.h2 {
	color: #5a0001;
	font-size: 18px;
	text-align: center;
	background: url(../template/img/line-2.png) repeat-x left center
}

h2 span,
h1.h2 span {
	background: #fff;
	padding: 0 50px
}

h3.red {
	border-top: 5px solid #ab1f21;
	font-size: 24px;
	text-align: center;
	margin: 10px -15px 20px -15px;
	padding: 15px 0;
	background: linear-gradient(to bottom, #eee3e6, #fff)
}

h3 .align-sectors {
	text-align: left;
	margin-left: 495px
}

h3 .align-map {
	float: left;
	width: 440px
}

header {
	min-height: 185px;
	min-width: 1200px;
	border-top: 9px solid #c70304;
	border-bottom: 7px solid #a30709;
	box-sizing: border-box;
	padding-top: 25px;
	position: relative;
	background: #fff
}

header .logo {
	display: block;
	width: 398px;
	position: absolute;
	top: 27px;
	left: 50%;
	margin-left: -199px
}

header .logo img {
	width: 398px;
	height: 69px
}

header .menu {
	display: inline-flex;
	height: 30px;
	margin-top: 20px;
	list-style: none;
	padding: 0;
	border-radius: 15px
}

header .menu>li {
	display: inline-block;
	margin: 0;
	padding: 0;
	border-right: 1px solid #5e1015;
	vertical-align: bottom
}

header .menu>li:last-child {
	border: 0
}

header .menu>li>a,
header .menu>li>span {
	color: #fff;
	display: block;
	padding: 8.5px 11px 0 11px;
	height: 30px;
	box-sizing: border-box;
	text-transform: uppercase;
	background: #a1090c;
	font-size: 12px;
	position: relative
}

header .menu.right>li:first-child>a {
	border-radius: 0
}

header .menu a:hover {
	background-color: #a64745
}

header .menu>li:first-child>a {
	border-radius: 15px 0 0 15px;
	padding-left: 20px
}

header .menu>li>a.cart {
	border-radius: 0 15px 15px 0;
	padding-right: 10px;
	background: #a1090c url(../template/img/sprite.png) no-repeat 115px 0
}

header .menu>li>a.cart:hover {
	background-color: #a64745
}

header .menu.right {
	float: right
}

header .menu.right>li>a {
	padding-right: 35px;
	width: 108px;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis
}

header .menu>li.str>a {
	padding-right: 35px;
	white-space: nowrap;
}

header .menu.right>li>a:after,
header .menu>li.str>a:after {
	content: '';
	display: block;
	width: 10px;
	height: 6px;
	background: url(../template/img/sprite.png) no-repeat -12px -44px;
	position: absolute;
	top: 14px;
	right: 10px
}

header .menu button.find {
	border-radius: 0 15px 15px 0;
	padding: 10px 25px 0 13px;
	background: #a1090c url(../template/img/sprite.png) no-repeat -57px 1px;
	display: block;
	height: 30px;
	box-sizing: border-box;
	border: 0;
	outline: 0;
	margin: 0
}

header .menu button.find:hover {
	background-color: #a64745
}

header .genres {
	position: relative
}

header .genres ul {
	padding: 0;
	list-style: none;
	position: absolute;
	left: 0;
	top: 30px;
	display: none;
	border-right: 1px solid #5e1015;
	min-width: 93px;
	z-index: 2
}

header .genres li {
	display: block;
	margin: 0;
	padding: 0
}

header .genres ul a {
	color: #fff;
	display: block;
	padding: 7px 15px 4px 15px;
	background: #a1090b
}

#search {
	position: relative;
	width: 50%;
}

#search input {
	width: 100%;
	outline: 0;
	height: 30px;
	border: 1px solid #dececf;
	box-shadow: inset 0 0 10px 0 rgba(163, 7, 9, .5);
	border-radius: 15px;
	box-sizing: border-box;
	padding: 2px 20px 2px 40px;
	color: #b18787;
	font-size: 15px
}

#search:before {
	content: '';
	display: block;
	position: absolute;
	width: 13px;
	height: 13px;
	background: url(../template/img/sprite.png) no-repeat -67px -40px;
	top: 9px;
	left: 16px;
	opacity: .5
}

#search input::-webkit-input-placeholder {
	color: #c8a5a5
}

#search input::-moz-placeholder {
	color: #c8a5a5
}

#search input:-moz-placeholder {
	color: #c8a5a5
}

#search input:-ms-input-placeholder {
	color: #c8a5a5
}

#search-var {
	position: absolute;
	box-shadow: 0 0 8px 0 rgba(0, 0, 0, .2);
	background: #fff;
	width: 640px;
	z-index: 2;
	top: 40px;
	left: 15px
}

#search-var a {
	display: block;
	border-bottom: 1px solid #eee;
	padding: 10px 0;
	margin: 0 10px;
	color: #999;
	overflow: hidden;
	white-space: nowrap;
	text-overflow: ellipsis
}

#search-var a:hover {
	opacity: .6
}

#search-var a:last-child {
	border: 0
}

#search-var a span {
	color: #333
}

header .phone {
	position: relative;
	width: 20%;
	text-align: right;
	position: relative;
	width: 20%;
	text-align: right;
	font: 30px/30px PFDinTextProBold;
	color: #a1090c;
}

header .phone span {
	font-size: 12px;
	vertical-align: top;
	line-height: 18px
}

header .city {
	position: relative;
	padding: 2px 0 0 30px;
	height: 24px;
	box-sizing: border-box;
	width: 20%;
}

header .city>a:after {
	position: absolute;
	width: 100%;
	height: 1px;
	background: #a1090c;
	content: '';
	top: 100%;
	left: 0;
}

header .city:before {
	content: '';
	display: block;
	width: 17px;
	height: 24px;
	background: url(../template/img/sprite.png) no-repeat -122px -3px;
	position: absolute;
	top: 0;
	left: 0
}

header .city a {
	color: #a1090b;
	font-size: 18px;
	text-decoration: underline;
	outline: 0;
	position: relative;
	font-weight: bold;
}

header .city a:hover {
	text-decoration: none
}

header .city>a {
	text-decoration: none
}

header .city .select {
	display: none;
	border-radius: 2px;
	background: #a64745;
	position: absolute;
	margin: 20px 0 0 0;
	z-index: 20;
	padding: 10px;
	box-shadow: 0 0 5px rgba(0, 0, 0, .1);
	top: 20px;
	left: 8px
}

header .city .select li {
	display: block;
	margin: 0;
	padding: 10px 25px;
	white-space: nowrap
}

header .city .select a {
	color: #fff
}

header .city .select:before {
	content: '';
	position: absolute;
	left: 10px;
	top: -10px;
	width: 0;
	height: 0;
	border-left: 15px solid transparent;
	border-right: 15px solid transparent;
	border-bottom: 15px solid #a64745
}

header .city .select:hover,
header .city>a:focus~.select,
header .city>a:active~.select {
	display: block
}

footer>.inner {
	background: #ca7171;
	background: linear-gradient(to top, #ca7171, #fff);
	padding: 30px 60px 40px 60px;
	box-sizing: border-box;
	width: 1200px;
	overflow: hidden
}

footer .menu {
	display: inline-block;
	padding: 0 60px 0 10px;
	margin: 0;
	list-style: none;
	vertical-align: top
}

footer .menu li {
	display: block;
	padding: 0 0 5px 0
}

footer .menu .title {
	text-transform: uppercase;
	font-family: PFDinTextProBold, serif
}

footer .menu a:hover {
	text-decoration: underline
}

footer .payments {
	float: right;
	width: 135px;
	position: relative
}

footer .payments:after {
	content: '';
	width: 135px;
	height: 25px;
	left: 0;
	top: 30px;
	position: absolute;
	display: block;
	background: url(../template/img/sprite.png) no-repeat -358px -16px
}

footer .social {
	float: right;
	padding: 5px 30px 0 0
}

footer .social a {
	display: inline-block;
	width: 44px;
	height: 44px;
	margin-left: 12px
}

footer .social a:hover {
	opacity: .7
}

footer .social .in {
	background: url(../template/img/sprite.png) no-repeat -340px -67px
}

footer .social .tw {
	background: url(../template/img/sprite.png) no-repeat -395px -67px
}

footer .social .vk {
	background: url(../template/img/sprite.png) no-repeat -448px -67px
}

footer .rules {
	background: #9f0707;
	color: #000;
	height: 45px;
	box-sizing: border-box;
	text-transform: uppercase;
	padding-top: 12px;
	font-size: 16px;
	min-width: 1200px
}

footer .rules .inner {
	box-sizing: border-box;
	padding: 0 20px
}

footer .rules a {
	color: #000
}

footer .rules a:hover {
	opacity: .5
}

#slider {
	height: 390px
}

#slider .rotate {
	height: 390px;
	width: 1180px;
	overflow: hidden
}

#slider .box {
	opacity: 0;
	display: none;
	position: absolute;
	height: 390px;
	width: 1180px
}

#slider .box:first-child {
	opacity: 1;
	display: block
}

#slider .box img {
	height: 390px;
	width: 925px
}

#slider .view {
	float: right;
	width: 240px;
	margin-left: 10px;
	position: relative;
	height: 390px;
	background: #f6f6f6;
	background: linear-gradient(to bottom, #f6f6f6, #fff);
	box-sizing: border-box;
	padding: 23px 12px 0 12px;
	text-transform: uppercase
}

#slider .venue {
	font: 14px PFDinTextProBold
}

#slider .title {
	font: 22px PFDinTextProBold;
	margin-top: 10px
}

#slider .date {
	font: 14px PFDinTextProBold;
	margin-top: 5px
}

#slider .note {
	margin-top: 15px
}

#slider .buy {
	height: 50px;
	box-sizing: border-box;
	border: 1px solid #aa2f30;
	background: #d22c32;
	background: linear-gradient(to bottom, #d22c32, #9d0709);
	border-radius: 5px;
	display: block;
	color: #fff;
	font-size: 18px;
	text-align: center;
	padding-top: 15px;
	margin-top: 30px
}

#slider .buy:hover {
	opacity: .6
}

#slider .navigation-dots {
	text-align: center;
	margin-top: 5px
}

#slider .navigation-dots .dot {
	display: inline-block;
	width: 6px;
	height: 6px;
	background: #666;
	cursor: pointer;
	border-radius: 16px;
	margin: 0 20px;
	border: 1px solid #666
}

#slider .navigation-dots .active {
	background: #fff
}

.sections {
	padding-bottom: 30px;
	padding-top: 20px
}

.section h2 {
	margin-top: 30px
}

.sections .section:first-child h2 {
	color: #0c54ad;
	background-image: url(../template/img/line-1.png)
}

.events {
	margin-top: 30px
}

.events .event {
	width: 218px;
	margin: 0 15px 40px 0;
	display: inline-block;
	text-align: center
}

.events .event:nth-child(5n) {
	margin-right: 0
}

.events .date {
	border: 1px solid #bc8e8f;
	border-radius: 15px 15px 0 0;
	color: #5d0a04;
	text-transform: uppercase;
	height: 24px;
	padding-top: 11px;
	font-size: 16px
}

.events .venue {
	text-transform: uppercase;
	font-size: 16px;
	padding: 11px 0 6px 0;
	width: 218px;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	display: block
}

.events .venue:hover {
	opacity: .5
}

.events .box {
	border: 1px solid #bc8e8f;
	padding: 3px
}

.events .image {
	display: block;
	width: 210px;
	height: 210px;
	overflow: hidden
}

.events img {
	width: 210px;
	height: 210px;
	-moz-transition: all .5s;
	-webkit-transition: all .5s;
	transition: all .5s
}

.events img:hover {
	-moz-transform: scale(1.03);
	-webkit-transform: scale(1.03);
	transform: scale(1.03)
}

.events .title {
	text-transform: uppercase;
	font: 16px PFDinTextProBold;
	padding: 10px 0 9px 0;
	/*width:218px;*/
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis
}

.events .price {
	height: 47px;
	line-height: 47px;
	font-size: 18px
}

.events .price span {
	font: 18px PFDinTextProBold;
	color: #bb040d
}

.events .eticket {
	width: 58px;
	height: 47px;
	background: url(../template/img/sprite.png) no-repeat -17px -72px;
	display: inline-block;
	float: left
}

.events .buy {
	display: block;
	margin-top: 10px;
	border: 1px solid #bc8e8f;
	border-radius: 0 0 15px 15px;
	color: #c0151d;
	height: 27px;
	padding-top: 8px;
	font-size: 18px
}

.events .buy:hover {
	opacity: .5
}

.events .buy span {
	position: relative;
	padding-left: 30px
}

.events .buy span:before {
	content: '';
	display: block;
	background: url(../template/img/sprite.png) no-repeat -119px -43px;
	width: 19px;
	height: 14px;
	position: absolute;
	top: 2px;
	left: 0
}

.events .all {
	padding: 20px 0;
	text-align: center
}

.events .all a {
	color: #fff;
	font-size: 16px;
	padding: 11px 40px 8px 40px;
	background: #c40009;
	display: inline-block;
	border-radius: 2px
}

.events .all a:hover {
	opacity: .8
}

#up {
	background: url(../template/img/sprite.png) no-repeat -458px -465px;
	width: 50px;
	cursor: pointer;
	display: none;
	position: fixed;
	bottom: 90px;
	left: 50%;
	margin-left: -670px;
	z-index: 100;
	text-transform: uppercase;
	text-align: center;
	padding-top: 40px;
	opacity: .7
}

.pager {
	padding: 20px 0;
	text-align: center
}

.pager * {
	margin: 0 3px;
	display: inline-block
}

.pager b {
	width: 25px;
	height: 20px;
	padding-top: 5px;
	background: #9f0707;
	border-radius: 2px;
	color: #fff;
	font-weight: normal
}

.pager a {
	width: 23px;
	height: 19px;
	padding-top: 5px;
	border: 1px solid #9f0707;
	border-radius: 2px;
	color: #8d1d4b
}

.pager a:hover {
	font-weight: bold
}

.pager span {
	color: #9f0707
}

.empty {
	background: url(../template/img/empty.png) no-repeat center 58px;
	max-width: 430px;
	padding: 200px 0 100px 0;
	text-align: center;
	font-size: 16px;
	color: #949494;
	line-height: 21px;
	margin: auto
}

#activity,
#festival,
#event {
	overflow: hidden;
	padding-bottom: 20px;
	margin-top: 100px;
}

#share {
	text-align: center;
	padding-top: 10px
}

#share a {
	display: inline-block;
	margin: 6px 3px;
	height: 24px;
	width: 24px;
	background: url(../template/img/sprite.png) no-repeat;
	opacity: .5
}

#share a:hover {
	opacity: 1
}

#grid .left {
	float: left;
	width: 250px;
	margin-right: 30px;
}

#grid .left .photo {
	width: 100%
}

#grid .left .photos {
	padding-top: 20px
}

#grid .center {
	margin-left: 270px;
	width: 590px
}

#grid .block {
	margin-left: 270px
}

#grid .right {
	float: right;
	width: 280px
}

#grid .right .shadow {
	box-shadow: 0 0 8px 0 rgba(0, 0, 0, .1);
	border: 1px solid #be0400
}

#grid .info {
	padding: 15px;
	margin: 0;
	list-style: none
}

#grid .info li {
	padding: 8px 10px 8px 30px;
	font-size: 12px
}

#grid .info li:before {
	content: '';
	background: url(../template/img/sprite.png) no-repeat;
	display: inline-block;
	margin-left: -25px;
	position: absolute;
	height: 16px
}

#grid .info li.dte {
	font: 16px PFDinTextProBold
}

#grid .info li.dte:before {
	background-position: -182px -6px;
	width: 15px;
	margin-top: 3px
}

#grid .info li.vne a {
	font: 13px PFDinTextProBold
}

#grid .info li.vne a:hover {
	text-decoration: underline
}

#grid .info li.vne:before {
	background-position: -184px -41px;
	width: 12px
}

#grid .info li.prs:before {
	background-position: -240px -9px;
	width: 15px
}

#grid .age {
	border-top: 1px solid #be0400;
	padding: 7px 15px
}

#grid .age li:before {
	background-position: -240px -40px;
	width: 16px;
	margin-top: -2px
}

#grid .close {
	text-align: center;
	border-top: 1px solid #be0400;
	padding: 20px 0;
	color: #be0400;
	font-size: 18px;
	text-decoration: underline
}

#grid .close ul {
	padding: 0;
	list-style: none
}

#grid .close li {
	float: left;
	width: 70px;
	display: inline-block
}

#grid .time {
	overflow: hidden;
	margin: 10px 0 0 16px
}

#grid .time li {
	border: 1px solid #be0400;
	border-right: 0;
	font-size: 20px;
	color: #be0400;
	padding: 7px 5px 3px 5px
}

#grid .time li:last-child {
	border-right: 1px solid #be0400
}

#grid .sign {
	height: 20px;
	margin: 0 0 0 16px
}

#grid .sign li {
	padding: 2px 5px;
	color: #cb7272;
	font-size: 12px
}

#grid .genres {
	padding: 15px;
	border-top: 1px solid #be0400;
	overflow: hidden
}

#grid .genres a {
	color: #be0400;
	font-size: 18px;
	margin-right: 10px;
	text-transform: lowercase
}

#grid .genres a:hover {
	opacity: .6
}

#grid .credit {
	border-top: 1px solid #be0400
}

#grid .credit li:before {
	background-position: -322px -140px;
	width: 21px;
	height: 26px;
	margin: -8px 0 0 -28px
}

#grid .credit .rules {
	font-size: 10px;
	margin: -7px 0 10px 9px;
	width: 128px;
	display: inline-block;
	box-sizing: border-box
}

#event .buy {
	text-align: center;
	padding-bottom: 20px
}

#event .buy button {
	color: #fff;
	background: #be0400;
	padding: 8px 20px;
	border: 0;
	border-radius: 2px
}

#event .buy button:hover {
	opacity: .8
}

#event .eticket {
	height: 47px;
	padding-left: 80px;
	position: relative;
	margin-top: 20px;
	color: #c40009;
	font-size: 18px
}

#event .eticket:before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 58px;
	height: 47px;
	background: url(../template/img/sprite.png) no-repeat -17px -72px;
	display: block
}

#event .nofee {
	color: #c40009;
	font-size: 16px;
	margin-top: 25px;
	text-transform: uppercase
}

#request {
	padding-bottom: 150px
}

#request form {
	width: 575px;
	border: 1px solid #be0400;
	box-shadow: 0 0 8px 0 rgba(0, 0, 0, .1);
	padding: 15px;
	text-align: center;
	min-height: 220px
}

#request input {
	border: 1px solid #be0400;
	padding: 7px 15px;
	margin: 8px 6px;
	width: 238px;
	border-radius: 2px
}

#request textarea {
	border: 1px solid #be0400;
	padding: 7px 15px;
	margin: 8px 6px;
	width: 525px;
	border-radius: 2px;
	height: 40px
}

#request .send {
	text-align: left;
	padding: 5px 9px
}

#request .send button {
	background: #be0400;
	color: #fff;
	padding: 8px 20px;
	border: 0;
	border-radius: 2px
}

#request .note {
	float: right;
	border: #f4f4f4;
	box-shadow: 0 0 8px 0 rgba(0, 0, 0, .1);
	width: 520px
}

#request .title {
	text-align: center;
	padding: 20px;
	font: 18px PFDinTextProBold;
	border-bottom: 1px solid #eaeaea
}

#request li {
	padding: 5px;
	color: #666;
	font-size: 12px
}

#request .confirm {
	padding: 20px;
	display: none
}

#request .confirm div {
	padding: 10px;
	font: 18px PFDinTextProBold
}

#description {
	cursor: text;
	overflow: hidden;
	margin-bottom: 20px
}

#description p {
	margin: 0 0 20px 0
}

#description .text {
	position: relative
}

.tickets .ticket {
	margin: 0 0 10px 0;
	padding: 10px 15px;
	list-style: none;
	background: #f7f6fb;
	display: table;
	width: 100%;
	position: relative;
	box-sizing: border-box
}

.tickets li {
	display: table-cell;
	vertical-align: top
}

.tickets .photo {
	width: 95px
}

.tickets .photo img {
	width: 100%
}

.tickets .info {
	padding-left: 25px;
	width: 570px
}

.tickets .title {
	margin: 0 0 7px 0;
	font-size: 22px
}

.tickets .venue {
	/*    margin-bottom: 5px;*/
	margin-bottom: 0;
	color: #999
}

.tickets .date {
	margin-bottom: 5px;
	/*margin-bottom: 10px*/
}

.tickets .place span {
	color: #333;
	font-size: 16px;
	margin-right: 20px
}

.tickets .place {
	color: #999
}

.tickets .price {
	width: 190px;
	border-left: 2px solid #fff;
	padding-left: 20px;
	position: absolute;
	right: 20px;
	top: 20px;
	bottom: 20px
}

.tickets .cost {
	font-size: 24px;
	margin-top: 35px
}

.tickets .cost b {
	font-size: 24px
}

.tickets .fee {
	color: #666
}

.tickets .remove {
	position: absolute;
	display: block;
	background: url(../template/img/sprite.png) no-repeat -294px -9px;
	width: 13px;
	height: 13px;
	top: 0;
	right: 0
}

.venues .venue {
	height: 145px;
	width: 374px;
	box-shadow: 0 0 6px 0 rgba(0, 0, 0, .1);
	margin: 0 15px 15px 0;
	display: inline-block;
	padding: 1px;
	overflow: hidden
}

.venues .venue:nth-child(3n) {
	margin-right: 0
}

.venues .venue img {
	float: left;
	width: 155px;
	height: 145px
}

.venues .venue .info {
	float: right;
	width: 200px;
	margin-right: 10px;
	position: relative;
	height: 145px
}

.venues .venue .title {
	display: block;
	padding: 10px 0 0 21px;
	font-size: 16px;
	height: 36px;
	overflow: hidden
}

.venues .venue .title:hover {
	opacity: .7
}

.venues .venue .address {
	padding: 15px 0 0 20px;
	color: #777
}

.venues .venue .address:before {
	content: '';
	background: url(../template/img/sprite.png) no-repeat -184px -41px;
	display: inline-block;
	height: 16px;
	width: 13px;
	position: absolute;
	margin-left: -20px;
	opacity: .7
}

#venue {
	overflow: hidden;
	padding-bottom: 60px
}

#venue .right {
	border: 1px solid #c40009;
	box-shadow: 0 0 8px 0 rgba(0, 0, 0, .1)
}

#venue .right .address {
	padding: 20px 20px 20px 45px
}

#venue .right .address:before {
	content: '';
	background: url(../template/img/sprite.png) no-repeat -184px -41px;
	display: inline-block;
	height: 16px;
	width: 13px;
	position: absolute;
	margin: 5px 0 0 -25px
}

#venue .right .map {
	border-top: 1px solid #c40009;
	height: 310px
}

.notickets {
	min-height: 300px
}

.notickets h3.red {
	color: #5a0001;
	font-size: 18px;
	margin-bottom: 5px
}

.notickets-notice {
	text-align: center
}

#map {
	min-height: 200px;
	padding-top: 20px
}

#map .load {
	padding: 40px;
	text-align: center;
	line-height: 20px;
	display: none
}

#map .legend {
	text-align: center;
	font-size: 12px;
	padding: 30px 0 20px 0
}

#map .legend span {
	display: inline-block;
	width: 14px;
	height: 14px;
	position: relative;
	top: 3px;
	border: 1px solid #bbb;
	margin: 0 5px 0 15px;
	border-radius: 2px
}

#map .places {
	position: relative;
	-moz-user-select: none;
	-webkit-user-select: none
}

#map .places b {
	position: absolute;
	font-weight: normal;
	color: #666;
	text-align: center
}

#map .places .place {
	width: 16px;
	height: 16px;
	border: 1px solid #bbb;
	border-radius: 2px;
	background: #f6f6f6
}

#map .places .ticket {
	cursor: pointer;
	font: 8px PFDinTextProRegular, sans-serif;
	line-height: 18px;
	color: #333
}

#map .places .ticket img {
	width: 16px;
	height: 16px
}

#map .places .selected {
	background-color: #991413 !important;
	border: 1px solid #8d1d4b
}

#map .places span {
	display: none;
	position: absolute;
	z-index: 10;
	background: #000;
	padding: 8px 10px 10px 10px;
	color: #fff;
	opacity: .8;
	font-size: 12px;
	border-radius: 4px;
	white-space: nowrap;
	text-align: left
}

#map .places span strong {
	font: 14px PFDinTextProBold;
	font-weight: normal;
	display: block
}

#map .places span div {
	font-size: 10px
}

#map .places span:after {
	content: '';
	position: absolute;
	width: 0;
	height: 0
}

#map .places span.tr {
	bottom: 33px;
	left: -16px
}

#map .places span.tr:after {
	left: 10px;
	bottom: -10px;
	border-left: 15px solid transparent;
	border-right: 15px solid transparent;
	border-top: 15px solid #000
}

#map .places span.tl {
	bottom: 33px;
	right: -16px
}

#map .places span.tl:after {
	right: 10px;
	bottom: -10px;
	border-left: 15px solid transparent;
	border-right: 15px solid transparent;
	border-top: 15px solid #000
}

#map .places span.br {
	top: -16px;
	left: 43px
}

#map .places span.br:after {
	left: -10px;
	top: 10px;
	border-top: 15px solid transparent;
	border-bottom: 15px solid transparent;
	border-right: 15px solid #000
}

#map .places span.bl {
	top: -16px;
	right: 43px
}

#map .places span.bl:after {
	right: -10px;
	top: 10px;
	border-top: 15px solid transparent;
	border-bottom: 15px solid transparent;
	border-left: 15px solid #000
}

#map .admission {
	padding-top: 20px;
	text-align: center;
	width: 930px;
	margin: 0 auto
}

#map .admission .header {
	overflow: hidden;
	border-left: 1px solid #c40009
}

#map .admission .header div {
	border: 1px solid #c40009;
	border-left: 0;
	padding: 15px;
	float: left
}

#map .admission .name {
	width: 350px
}

#map .admission .price {
	width: 150px
}

#map .admission .count {
	width: 150px
}

#map .admission .cart {
	width: 150px
}

#map .admission .sector {
	border-left: 1px solid #ddd;
	overflow: hidden;
	color: #666
}

#map .admission .sector div {
	border-right: 1px solid #ddd;
	border-bottom: 1px solid #ddd;
	padding: 15px 15px 0 15px;
	height: 33px;
	float: left
}

#map .admission .sector .name {
	padding: 0 15px;
	height: 48px;
	display: table
}

#map .admission .sector .name span {
	display: table-cell;
	vertical-align: middle
}

#map .admission select {
	border: 1px solid #c40009;
	padding: 5px 15px;
	margin-top: -6px;
	width: 75px;
	border-radius: 2px
}

#map .admission button {
	border: 0;
	padding: 7px 15px 4px 15px;
	margin-top: -6px;
	background: #c40009;
	color: #fff;
	border-radius: 2px
}

#map .admission button:hover {
	opacity: .8
}

#map .admission .cart span {
	display: none
}

#map .to-cart {
	text-align: center;
	padding: 40px 0 80px 0
}

#map .to-cart a {
	display: inline-block;
	padding: 12px 20px 9px 20px;
	background: #c40009;
	color: #fff;
	border-radius: 2px
}

#map .to-cart a:hover {
	opacity: .8
}

#sectors {
	width: 765px;
	margin: 45px auto;
	/*margin-left:475px*/
}

#sectors .head {
	background: #c50208;
	overflow: hidden;
	border-radius: 3px 3px 0 0;
}

#sectors .head div {
	float: left;
	padding: 13px 10px 13px 20px;
	color: #fff;
	font-weight: bold;
	box-sizing: border-box;
}

#sectors .name {
	width: 370px;
}

#sectors .price {
	width: 190px;
}

#sectors .sector {
	overflow: hidden;
	color: #666
}

#sectors .sector div {
	float: left;
	padding: 13px 10px 13px 20px;
	box-sizing: border-box;
}

#event {
	margin-top: 155px;
}

.links-menu {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	width: 100%;
	margin-top: 15px;
}

.cart-link {
	margin-left: 20px;
	background: #c50208;
	color: #fff;
	text-align: center;
	padding: 12px 10px;
	font-weight: bold;
}

.backward {
	display: flex;
}

.backward-btn {
	background: #c50208;
	color: #fff;
	text-align: center;
	padding: 12px 30px;
	font-weight: bold;
}

.menu-cart {
	margin-left: auto;
}


#sectors .sector {
	background: #fff
}

#sectors .sector:nth-child(2n) {
	background: #f9f5f6
}

#sectors a {
	color: #000;
	text-decoration: underline;
}

#sectors .price {
	color: #000;
	font-weight: bold;
}

#sectors .place a {
	font-weight: bold;
}

#sectors .name a:hover,
#sectors .place a {
	color: #c50208
}

#sectors .place a:hover {
	text-decoration: none
}

.event-sectors {
	overflow: hidden
}

#svg {
	/*float:left;*/
	margin-right: 30px;
	max-width: 720px;
	position: relative;
}

#svg svg {
	width: 100%;
	height: 100%
}

#svg path {
	stroke: #ddd;
	fill: #fff;
	stroke-width: 1px
}

#svg path.last-visited {
	stroke-width: 4px !important;
	stroke: #0000c0 !important;
}



#svg path.active {
	fill: #dfb427;
	stroke: #dfb427;
	cursor: pointer
}

#svg path.active:hover {
	opacity: .8
}

#svg text {
	font-size: 10px;
	pointer-events: none
}

#svg div {
	background: #000;
	padding: 10px;
	position: absolute;
	opacity: .9;
	color: #fff;
	border-radius: 5px;
	width: 200px;
	font-size: 12px;
	line-height: 18px
}

#svg div:after {
	content: '';
	position: absolute;
	left: -10px;
	top: 10px;
	width: 0;
	height: 0;
	border-top: 15px solid transparent;
	border-right: 15px solid #000;
	border-bottom: 15px solid transparent
}

#svg div strong {
	font: 14px PFDinTextProBold;
	font-weight: normal;
	display: block
}

#svg div span {
	color: #bbb;
	display: block
}

.hall-scheme {
	float: left;
	margin-right: 30px;
	width: 400px;
	text-align: center
}

.hall-scheme img {
	border: 1px solid #ddd;
	cursor: pointer;
	width: 200px
}

#text {
	min-height: 500px;
	margin-bottom: 150px
}

#text h2,
#text h3 {
	background: transparent;
	font-size: 24px;
	margin: 20px 0;
	padding: 0;
	color: #000
}

#text h3 {
	font-size: 20px
}

#text a {
	color: #8d1d4b;
	text-decoration: underline
}

#text a:hover {
	text-decoration: none
}

#cart {
	min-height: 500px
}

#cart .empty {
	padding-bottom: 250px
}

#total {
	background: #f7f6fb;
	border-radius: 5px;
	padding: 20px;
	margin-left: 60%
}

#total .cost {
	font: 22px PFDinTextProBold, sans-serif;
}

#total .fee {
	display: none
}

#total .fee span {
	color: #999;
	margin-right: 10px
}

#total .discount {
	display: none;
	padding-bottom: 2px
}

#total .discount span {
	color: #999;
	margin-right: 10px
}

#promocode {
	float: left;
	text-align: left;
	padding-top: 25px;
	max-width: 680px
}

#promocode input {
	width: 120px;
	border: 1px solid #d4d4d5;
	padding: 5px 10px;
	border-radius: 3px
}

#promocode button {
	background: #c40009;
	color: #fff;
	padding: 6px 20px;
	border-radius: 2px;
	border: 0;
}

#promocode .description {
	padding: 5px 0 0 5px;
	font-size: 12px;
	color: #999
}


#promocode .promocode-success,
#promocode .promocode-fail {
	display: none;
	text-align: center;
	margin-top: 15px;
}

#promocode .promocode-fail {
	color: #c40009;
}

#promocode .promocode-success {
	color: green;
}

#order-form .steps {
	list-style: none;
	padding: 30px 0 80px 0;
	display: table;
	width: 100%
}

#order-form .steps li {
	display: table-cell;
	width: 360px;
	padding-right: 40px
}

#order-form .steps li:last-child {
	padding: 0;
	width: 380px
}

#order-form .steps .title {
	font: 18px PFDinTextProBold;
	padding: 5px 0;
	border-bottom: 1px solid #eee;
	margin-bottom: 20px
}

#order-form .params input {
	float: left;
	margin-top: 2px;
	width: auto !important;
	position: relative;
}

#order-form .params label {
	display: block;
	margin: 0 0 15px 30px
}

#order-form .params input:disabled {
	display: none;
}

#order-form .params input:disabled+label {
	opacity: .3;
	position: relative;
}

#order-form .params input:disabled+label:before {
	content: '';
	position: absolute;
	top: 2px;
	left: -30px;
	border-radius: 50%;
	width: 10px;
	height: 10px;
	border: 1px solid #666666;
	box-shadow: 0 0 1px;
	background-color: rgb(235, 235, 228);
}

#order-form .form .delivery {
	display: none
}

#order-form .form input,
#order-form .form textarea {
	width: 380px;
	border: 1px solid #c40009;
	padding: 5px 10px;
	border-radius: 3px;
	margin-bottom: 10px
}

#order-form .form textarea {
	height: 40px
}

#order-form .form i {
	display: block;
	margin-bottom: 20px
}

#order-form .form a {
	color: #c40009;
	border-bottom: 1px dashed #c40009
}

#order-form .form a:hover {
	border: 0
}

#order-form .form select {
	width: 260px;
	border: 1px solid #c40009;
	padding: 5px 10px;
	border-radius: 3px;
	margin-bottom: 10px;
	float: right
}

#order-form .form .date {
	line-height: 30px
}

#order-form button {
	background: #c40009;
	color: #fff;
	padding: 10px 20px;
	border-radius: 2px;
	border: 0
}

#order-form button:hover {
	opacity: .7
}

#order-form .no-delivery {
	box-shadow: 0 0 6px 0 rgba(0, 0, 0, .2);
	padding: 20px;
	margin-bottom: 20px
}

#order-form .retail,
#order-form .eticket,
#order-form .banned {
	box-shadow: 0 0 6px 0 rgba(0, 0, 0, .2);
	padding: 20px;
	margin-top: 50px
}

#order-form .retail .topic,
#order-form .eticket .topic,
#order-form .banned .topic {
	font: 18px PFDinTextProBold;
	color: #c40009;
	padding-bottom: 20px
}

#order-form .banned a {
	color: #c40009;
	border-bottom: 1px dashed #c40009
}

#order-form .banned a:hover {
	border-bottom: transparent
}

#order-form .retail,
#order-form .eticket {
	display: none
}

#order-form .retail-link {
	display: none
}

#order-form .retail-link a {
	border-bottom: 1px dashed #c40009;
	color: #c40009;
	opacity: .5
}

#order-form .retail-link a:hover {
	border-bottom: 1px dashed #fff
}

#order-form .params input:checked+label .retail-link {
	display: block
}

.pay-form {
	box-shadow: 0 0 6px 0 rgba(0, 0, 0, .2);
	padding: 50px;
	text-align: center;
	max-width: 500px;
	margin: 50px auto 40px auto;
	color: #999
}

#centerButtom {
	background: #c40009;
	color: #fff;
	padding: 11px 20px 8px 20px;
	border-radius: 2px;
	border: 0;
	margin-bottom: 20px;
	display: inline-block
}

#centerButtom:hover {
	opacity: .7
}

.pay-ssl,
.pay-mail {
	width: 500px;
	margin: 0 auto;
	padding: 15px 40px
}

.pay-ssl:before,
.pay-mail:before {
	content: '';
	background: url(../template/img/sprite.png) no-repeat;
	display: inline-block;
	width: 20px;
	height: 20px;
	position: absolute;
	margin: 0 0 0 -35px
}

.pay-ssl:before {
	background-position: -255px -143px
}

.pay-mail:before {
	background-position: -275px -143px
}

#cart .confirm {
	padding: 20px 0 50px 0;
	text-align: center
}

#cart .confirm .title {
	color: #999;
	padding-bottom: 30px
}

#cart .confirm .order {
	font: 18px PFDinTextProBold;
	padding-bottom: 10px
}

#cart .confirm .number {
	font: 24px PFDinTextProBold
}

#cart .details {
	border-top: 1px solid #ddd;
	width: 600px;
	margin: 0 auto;
	padding: 10px 0 250px 0
}

#cart .details div {
	padding: 15px 40px
}

#cart .details div:before {
	content: '';
	background: url(../template/img/sprite.png) no-repeat;
	display: inline-block;
	width: 20px;
	height: 20px;
	position: absolute;
	margin: 0 0 0 -35px
}

#cart .details .date:before {
	background-position: -235px -143px
}

#cart .details .coast:before {
	background-position: -255px -143px
}

#cart .details .mail:before {
	background-position: -275px -143px
}

#overlay {
	z-index: 10;
	position: fixed;
	background-color: #000;
	opacity: .8;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	cursor: pointer;
	display: none
}

#modal {
	width: 380px;
	padding: 20px;
	border: 1px solid #c40009;
	outline: 1px solid #fff;
	background: #fff;
	position: fixed;
	top: 35%;
	left: 50%;
	margin-left: -210px;
	z-index: 15;
	opacity: 0
}

#modal .title {
	font-size: 25px;
	text-align: center;
	padding-bottom: 20px
}

#modal input {
	width: 360px;
	border: 1px solid #c40009;
	padding: 5px 10px;
	border-radius: 3px;
	margin-bottom: 15px
}

#modal .params {
	padding-top: 10px
}

#modal .params input {
	width: auto;
	margin-right: 15px
}

#modal a {
	color: #c40009;
	border-bottom: 1px dashed #c40009
}

#modal a:hover {
	border: 0
}

#modal .error {
	font-size: 12px;
	color: red;
	text-align: center;
	margin-bottom: 15px;
	display: none
}

#modal button {
	background: #c40009;
	color: #fff;
	padding: 11px 25px 8px 25px;
	border-radius: 2px;
	border: 0;
	margin-top: 15px
}

#modal button:hover {
	opacity: .7
}

#modal .center {
	text-align: center
}

#modal .network {
	text-align: center;
	margin-top: 20px;
	border-top: 1px solid #c40009;
	padding: 10px;
	color: #999
}

#modal #uLogin {
	margin-top: 10px
}

#modal .question {
	padding-bottom: 20px
}

#modal .close {
	width: 20px;
	height: 20px;
	position: absolute;
	top: -10px;
	right: -50px;
	cursor: pointer;
	display: block;
	background: url(../template/img/sprite.png) no-repeat -109px -85px
}

#modal.reg {
	height: 480px;
	margin-top: -260px
}

#modal.auth {
	height: 380px;
	margin-top: -180px
}

#modal.forgot {
	height: 240px;
	margin-top: -110px
}

#modal.password .center,
#modal.forgot .center {
	padding-top: 15px
}

#modal.password .question,
#modal.forgot .question {
	font-size: 13px
}

#modal.password {
	height: 220px;
	margin-top: -100px
}

#account {
	min-height: 500px
}

#account .menu {
	float: left;
	border: 1px solid #c40009;
	box-shadow: 0 0 8px 0 rgba(0, 0, 0, .1);
	width: 180px;
	list-style: none;
	padding: 8px 0;
	margin: 0
}

#account .menu li {
	padding: 8px 20px
}

#account .menu a {
	display: block
}

#account .menu a:hover {
	color: #c40009;
	text-shadow: 0 0 2px rgba(0, 0, 0, .4)
}

#account .page {
	margin-left: 210px
}

#account .title {
	font-size: 18px;
	padding-bottom: 5px;
	border-bottom: 1px solid #eee;
	margin-bottom: 20px
}

#account .note {
	padding-bottom: 20px
}

#account .form {
	width: 380px
}

#account .form input {
	width: 300px;
	border: 1px solid #c40009;
	padding: 5px 10px;
	border-radius: 3px;
	margin-bottom: 10px
}

#account .params {
	padding-top: 10px
}

#account .params input {
	width: auto;
	margin-right: 15px
}

#account button {
	background: #c40009;
	color: #fff;
	padding: 11px 30px 8px 30px;
	border-radius: 2px;
	border: 0;
	margin-top: 25px
}

#account button:hover {
	opacity: .7
}

#account .error {
	font-size: 12px;
	color: red;
	padding: 10px 0;
	display: none
}

#account .pay-form,
#account .pay-ssl,
#account .pay-mail {
	margin: 0
}

#account .order {
	list-style: none;
	box-shadow: 0 0 6px 0 rgba(0, 0, 0, .2);
	height: 70px;
	margin: 0 0 15px 0;
	padding: 0;
	width: 100%;
	max-width: 850px;
	overflow: hidden;
	display: table
}

#account .order li {
	border-right: 1px solid #eee;
	display: table-cell;
	vertical-align: middle;
	height: 70px;
	padding-left: 20px
}

#account .order li:last-child {
	border: 0;
	font-size: 12px
}

#account .order .number {
	width: 160px;
	font: 18px PFDinTextProBold
}

#account .order .info {
	width: 410px;
	color: #666
}

#account .order a {
	text-decoration: underline
}

#account .order a.red {
	color: #c40009
}

#account .order a.fade {
	color: #c40009;
	font: 14px PFDinTextProBold
}

#account .order a.grey {
	color: #999
}

#account .order a:hover {
	text-decoration: none
}

#account .form .fee {
	margin: -15px 0 15px 70px;
	font-size: 12px;
	color: #999
}

#account .form .fee span {
	margin-left: 5px;
	color: #666
}

#error-404 {
	min-height: 500px
}

#error-404 .title {
	font: 154px PFDinTextProBold;
	text-align: center;
	padding: 50px 0 30px 0
}

#error-404 .note {
	width: 500px;
	margin: 0 auto;
	color: #666;
	text-align: center
}

#error-404 a {
	color: #c40009;
	border-bottom: 1px dashed #c40009
}

#error-404 a:hover {
	border-bottom: 1px dashed #fff
}

#payments {
	min-height: 500px
}

#payments .result {
	box-shadow: 0 0 6px 0 rgba(0, 0, 0, .2);
	padding: 20px;
	text-align: center;
	max-width: 600px;
	margin: 50px auto 40px auto
}

#payments .note {
	color: #999;
	padding-top: 30px
}

#retail {
	padding-bottom: 100px
}

#retail .map {
	height: 380px;
	display: none
}

#retail ul {
	list-style: none;
	width: 100%;
	margin: 0;
	padding: 0
}

#retail li {
	width: 270px;
	display: inline-block;
	padding: 8px 0;
	margin-left: 20px
}

#retail ul li:first-child {
	margin-left: 0
}

#retail .title {
	padding-top: 30px
}

#retail .title li {
	border-bottom: 1px solid #c40009;
	font-size: 16px
}

#retail .office {
	border-bottom: 1px solid #eaeaea;
	padding: 15px 0;
	min-height: 50px;
	color: #666;
	display: table
}

#retail .office li {
	display: table-cell;
	vertical-align: top;
	padding-left: 20px
}

#retail .office li:first-child {
	padding-left: 0
}

#retail .address {
	padding-left: 25px;
	color: #8e1d4b;
	line-height: 16px
}

#retail .address:before {
	content: '';
	background: url(../template/img/sprite.png) no-repeat -184px -41px;
	display: inline-block;
	height: 16px;
	width: 12px;
	position: absolute;
	margin-left: -25px
}

#retail .district {
	color: #666
}

#retail .photo {
	float: right;
	display: block;
	margin-top: 2px;
	width: 16px;
	height: 16px;
	background: url(../template/img/sprite.png) no-repeat -294px -44px
}

.gmap_marker {
	margin: 0 5px
}

#scroller {
	width: 100%;
	overflow: hidden;
	/*overflow-x: auto;*/
	position: relative
}

#map .places {
	position: absolute;
	z-index: 1;
	-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
	-webkit-transform: translateZ(0);
	-moz-transform: translateZ(0);
	-ms-transform: translateZ(0);
	-o-transform: translateZ(0);
	transform: translateZ(0);
	/* -webkit-touch-callout: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none; */
	min-width: 100%;
	box-sizing: border-box;
	padding: 20px
}

.banner-side {
	position: fixed;
	top: 0;
	width: calc(50% - 600px);
	height: 100%;
	display: block;
	background-repeat: no-repeat;
	z-index: 0
}

#banner-left {
	background-position: right top;
	left: 0
}

#banner-right {
	background-position: left top;
	right: 0
}

@media all and (max-width:1100px) {
	#banner-left {
		display: none
	}

	#banner-right {
		display: none
	}
}

.main-banner1 {
	text-align: center;
	height: 140px
}

.main-banner1 img {
	width: 1100px;
	height: 90px
}

.main-banner3 {
	text-align: center;
	height: 200px
}

.main-banner3 img {
	width: 350px;
	height: 150px;
	margin: 0 15px
}



.flex {
	display: flex;
	justify-content: space-between;
	margin-top: 30px;
}

.wrapper {
	width: 1200px;
	margin: 0 auto;
}

.block-twomenu .two-menu {
	margin: 15px auto 10px;
	align-items: center;
	justify-content: center;
	width: 100%;
}

header .menu.two-menu>li>a {
	padding: 8.5px 16px 0 16px;
}

header .menu.two-menu>li.str>a {
	padding: 8.5px 25px 0 16px;
}

header .menu>li:last-child>a {
	border-radius: 0 15px 15px 0;
	padding-right: 20px;
}

header .menu.right>li:first-child>a,
header .menu.right>li:first-child>span {
	border-radius: 15px 0 0 15px;
	padding-left: 20px;
}

header .menu.two-menu>li:first-child>a {
	padding-left: 20px;
}

header .menu.two-menu>li:last-child>a {
	padding-right: 20px;
}

.widget-sector #scroller {
	height: 400px;
}

#scroller {
	touch-action: none;
}

/*begin block banner left/right*/
body {
	overflow-x: hidden;
}

.content {
	position: relative;
	z-index: 2;
}

.main-bg {
	display: block;
	height: 800px;
	position: absolute;
	top: 220px;
	width: 100%;
	z-index: 1;
}

.main-bg .main-bg__promo-area {
	display: block;
	height: 800px;
	position: absolute;
	top: 0;
	width: calc(50vw - 610px);
}

.main-bg .main-bg__promo-area-right {
	right: 0;
}

.main-bg .main-bg__promo-area-left {
	left: calc(50vw - 860px);
}

/*end block banner left/right*/



.full-width {
	width: calc(100% - 250px);
	margin-left: 270px;
}



/*begin tabs adaptiv*/
.container-tab {
	/* margin:auto; */
	max-width: 100%;
	flex-grow: 1;
	/*min-height: 400px;*/
}

/* TABS */
.accordion-tabs {
	*zoom: 1;
	/*width: 100%;*/
	border: 1px solid #9f0707;
	border-radius: 0.1875em;
	margin-bottom: 1.5em;
	margin-left: 0;
	padding-left: 0;
}

.accordion-tabs:before,
.accordion-tabs:after {
	content: " ";
	display: table;
}

.accordion-tabs:after {
	clear: both;
}

.accordion-tabs li {
	margin-right: 5px;
	list-style: none;
}

.accordion-tabs li.tab-head-cont:first-child .tab-link {
	border-top-left-radius: 0.1875em;
	border-top-right-radius: 0.1875em;
	border-top: 0;
}

.accordion-tabs li.tab-head-cont:last-child .tab-link {
	border-bottom-left-radius: 0.1875em;
	border-bottom-right-radius: 0.1875em;
}

.accordion-tabs li.tab-head-cont .tab-link {
	text-decoration: none;
	border-top: 1px solid #9f0707;
	color: #fff;
	display: block;
	padding: 0.75em 2em;
	background: #c50208;
	font-weight: bold;
	font-size: 15px;
}

.accordion-tabs li.tab-head-cont .tab-link:hover {
	opacity: 0.8;
}

.accordion-tabs li.tab-head-cont .tab-link.is-active:hover {
	opacity: 1;
}

.accordion-tabs li.tab-head-cont .tab-link:focus {
	outline: none;
}

.accordion-tabs li.tab-head-cont .tab-link.is-active {
	background-color: #fff;
	border-bottom: 0;
	color: #9f0707;
}

.accordion-tabs li.tab-head-cont section {
	padding: .5em 1em;
	background: #ffffff;
	display: none;
	overflow: hidden;
	width: 100%;
}

/* RESPONSIVE */
@media screen and (min-width: 40em) {}

.accordion-tabs {
	border: none;
	position: relative;
}

.accordion-tabs li.tab-head-cont {
	display: inline;
}

.accordion-tabs li.tab-head-cont:last-child .tab-link {
	border-bottom-left-radius: 0;
	border-bottom-right-radius: 0;
}

.accordion-tabs li.tab-head-cont .tab-link {
	display: inline-block;
	vertical-align: baseline;
	zoom: 1;
	* display: inline;
	* vertical-align: auto;
	border: 1px solid #c50208;
	border-top-right-radius: 0.1875em;
	border-top-left-radius: 0.1875em;
}

.accordion-tabs li.tab-head-cont .tab-link.is-active {
	background-color: #ffffff;
	border: 1px solid #a1090c;
	border-bottom: 2px solid #ffffff;
	margin-bottom: -1px;
}

.accordion-tabs li.tab-head-cont section {
	border-bottom-left-radius: 0.1875em;
	border-bottom-right-radius: 0.1875em;
	border: 1px solid #9f0707;
	float: left;
	left: 0;
	padding: 0.75em 0.809em;
	box-sizing: border-box;
}

/*End tabs adaptiv*/
.map_block {
	text-align: center;
	margin: 45px auto;
}

.title_shema {
	background: #f9f5f6;
	color: #000;
	padding: 15px;
	/* margin: 0 -15px; */
	text-align: center;
	font-size: 26px;
}

.block_shema_mest {
	text-align: center;
	margin: 35px auto;
}

.block_zoom {
	font-size: 31px;
	color: #a1090b;
	/* margin-right: 15px; */
	line-height: 33px;
	font-weight: bold;
	justify-content: space-between;
}

.block_zoom+.backward {
	display: flex;
	align-items: center;
	justify-content: center;
	border: 1px solid #a1090b;
	text-align: center;
	color: #a1090b;
}

.block_zoom+.backward a {
	padding: 0 5px;
	font-size: 20px;
	color: #a1090b;
}


.block_zoom>a {

	/*width: 32px;
    border: 1px solid #a1090b;
    color: #a1090b;*/
	border: 0;
	text-align: center;
	color: #ffffff;
	font-weight: bold;
	background-color: #cc0000;
	width: 50px;
	height: 50px;
	border-radius: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 20px;
	opacity: 0.6;
}

.block_shema {
	position: relative;
}

.block_shema .control-elems {
	position: absolute;
	display: flex;
	flex-direction: row;
	right: 10%;
	top: 110px;
	text-align: center;
	z-index: 10;
}

.block_shema .control-elems .block_zoom {
	display: flex;
	/*flex-direction: row;*/
	flex-direction: column;
}

.block_zoom>a {
	margin-bottom: 8px;
	/*margin-right: 8px;/*
    /*background-color: #ffffff;*/
}

.block_zoom .back {
	box-sizing: border-box;
	padding: 8px 11px;
}

.block_zoom .back div {
	width: 15px;
	height: 15px;
	border: 2px solid #8d1d4b;
	transform: rotate(45deg);
	border-top: none;
	border-right: none;
	margin: 0;
}

.popup_change_place p {
	font-size: 19px;
	font-weight: bold;
}

.popup_change_place p span {
	font-size: 11px;
	display: block;
	font-weight: normal;
	margin-top: 3px;
}

.popup_change_place {
	position: absolute;
	max-width: 290px;
	width: 100%;
	box-sizing: border-box;
	/*top: 30px;*/
	bottom: 30px;
	/*right: -15px;*/
	right: 1px;
	display: none;
	border: 1px solid #c50208;
	border-right: 0;
	padding: 25px;
	background: #fff;
	border-radius: 3px 3px 0 0;
	z-index: 1;
}

.popup_change_place.open {
	display: block;
}

.popup_change_place.open li {
	list-style: none;
}

p.title_pop_change {
	text-align: center;
	font-size: 22px;
	line-height: 20px;
	margin: 0 0 20px;
}

.accordion-tabs .popup_change_place li {
	margin-right: -1px;
}

.popup_change_place ul {
	margin: 0;
	padding: 0;
	display: flex;
	/* align-items: flex-start;*/
	justify-content: center;
	color: #c50208;
	text-align: center;
	font-size: 12px;
	margin-bottom: 5px;
}

.popup_change_place ul span {
	display: inline-flex;
	border: 1px solid #c50208;
	font-size: 20px;
	font-weight: bold;
	padding: 2px 20px;
	min-width: 70px;
	box-sizing: border-box;
	margin: 3px 0 0;
	height: 100%;
	justify-content: center;
	align-items: center;
	/*white-space: nowrap;*/
}

.btn_basket {
	background: #9f0707;
	color: #fff;
	padding: 10px 5px;
	display: block;
	text-align: center;
	font-size: 13px;
	font-weight: bold;
	margin-bottom: 15px;
}

.btn_back {
	display: block;
	text-align: center;
	color: #9f0707;
	font-weight: bold;
}

.btn_back:hover {
	text-decoration: underline;
}

.btn_basket:hover {
	opacity: 0.8;
}



/*begin breadcrump*/
.breadcrumb {
	background-color: transparent;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	padding: 0 5px;
	margin: 5px 0 1.5rem;
	list-style: none;
}

.breadcrumb a {
	color: #cc0426;
}

.breadcrumb a:hover {
	font-weight: bold;
}

.breadcrumb-item+.breadcrumb-item::before {
	display: inline-block;
	padding-right: .5rem;
	color: #cc0426;
	content: "/";
}

.breadcrumb-item.active {
	color: #cc0426;
}

.breadcrumb-item+.breadcrumb-item {
	padding-left: .5rem;
}

.breadcrumb *,
.breadcrumb ::after,
.breadcrumb ::before {
	box-sizing: border-box;
}

/*end breadcrump*/



/*begin spoiler*/


.spoiler {
	max-height: 250px;
	overflow: hidden;
	transition: 0.35s ease-out;
	position: relative;
	margin-bottom: 20px;
}

.desc_full.spoiler:after {
	position: absolute;
	content: '';
	/* background-image: linear-gradient(180deg,transparent 10%,transparent 60%,rgb(248, 248, 248) 100%);*/
	background: rgb(255, 255, 255);
	background: -moz-linear-gradient(top, rgba(255, 255, 255, 0.1) 0%, rgba(255, 255, 255, 0.1) 80%, rgb(255, 255, 255) 99%);
	background: -webkit-linear-gradient(top, rgba(255, 255, 255, 0.1) 0%, rgba(255, 255, 255, 0.1) 80%, rgb(255, 255, 255) 99%);
	background: linear-gradient(to bottom, rgba(255, 255, 255, 0.1) 0%, rgba(255, 255, 255, 0.1) 80%, rgb(255, 255, 255) 99%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffff', endColorstr='#f8f8f8', GradientType=0);
	bottom: 0;
	width: 100%;
	height: 100%;
}

.block-open.spoiler:after {
	display: none;
}

.block-open {
	max-height: 9999px;
	overflow-y: auto;
	transition: max-height 0.45s ease-in;
}

.desc_full.spoiler.block-open {
	overflow: unset;
}

.block-open::-webkit-scrollbar {
	width: 0;
}

.show-hide {
	background: #c50208;
	color: #fff;
	line-height: 40px;
	text-align: center;
	padding: 12px 30px;
	font-weight: bold;
}

.dop_txt {
	border-top: 1px solid #e5e5e5;
	padding: 40px 0 0;
	margin-top: 40px;
}

#order {
	padding: 50px 20px 0;
	margin: 20px -15px 0;
	background: linear-gradient(to bottom, #f1e6ea 1%, #fff 5.8%, #fff 100%);
}

html,
body {
	height: 100%;
	min-height: 400px;
}

body {
	display: flex;
	flex-direction: column;
	height: 100%;
	-webkit-overflow-scrolling: touch;
}

header {
	flex: 0 0 auto;
}

.content {
	flex: 1 0 auto;
}

.content {
	padding-top: 135px;
	-webkit-overflow-scrolling: touch;
	height: auto;
	overflow-y: auto;
}

footer {
	flex: 0 0 auto;
}

.desc_full a,
a[href^="tel:"],
a[href^="mailto:"] {
	color: #8d1d4b;
	text-decoration: underline;
}

.count-group {
	display: flex;
	align-items: center;
	font-size: 16px;
}

.count-tickets {
	margin-right: 10px;
}

section#order {
	display: flex;
	flex-direction: column;
	position: absolute;
	left: 0;
	right: 0;
	/*top: 125px;*/
	top: 145px;
	bottom: 0;
	height: auto;
	overflow-y: auto;
	width: 100%;
	max-width: 100%;
	margin: 0;
	padding: 0;
	padding-bottom: 60px;
}

section#cart {
	position: absolute;
	left: 0;
	right: 0;
	top: 150px;
	bottom: 0;
	height: auto;
	overflow-y: auto;
	width: 100%;
	max-width: 100%;
	margin: 0;
	padding: 0 15px 60px;
	background-color: #fff;
	box-sizing: border-box;
}

@media (min-width: 1025px) {
	section#cart {
		overflow-y: unset;
		position: relative;
		top: 0;
	}
}

.content {
	width: 100%;
	max-width: 100%;
}

body>* {
	width: 100%;
	max-width: 100%;
}

.event-header__info {
	max-width: calc(100% - 85px);
}

.event-header__title {
	margin-bottom: 5px;
}

a.btn.btn-ordermake {
	display: none;
	border: 2px solid #b80a0e;
	background-color: #b10608;
	color: #fff;
	border-radius: 0;
	font-size: 30px;
	white-space: unset;
	padding: .7rem .75rem;
	align-items: center;
	justify-content: center;
	line-height: 35px;
	font-weight: bold;
}

.row {
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	margin-right: 15px;
	margin-left: 15px;
}

.d-flex {
	display: flex;
}

.block_orderbuy {
	flex-shrink: 0;
	margin-top: 20px;
	/* border-top: 5px solid #a1090b; */
	padding-top: 10px;
	padding-bottom: 60px;
}

.flex-column {
	flex-direction: column;
}

.block_total_ticket_item {
	border: 2px solid #b80a0e;
	background-color: #ffffff;
	padding: 15px 10px;
	font-size: 20px;
	text-transform: uppercase
}

.block_total_ticket_title {
	width: 100%;
	font-weight: bold;
	margin-bottom: 10px;
	text-align: center;
}

.block_total_ticket .block_total span {
	/* justify-content: flex-end;
    border: 2px solid #a1090b;
    padding-left: 30px; */
	font-size: 20px;
}

a.del {
	color: #a1090b;
	font-weight: bold;
	margin-left: 5px;
}

.del:active {
	opacity: 0.8
}

.block_total_ticket_item .d-flex {
	flex-wrap: nowrap;
}

.block_total_ticket_item .d-flex>div {
	flex: 1 2 auto;

}

.block_total {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-top: 10px;
	padding-top: 10px;
	border-top: 1px solid#b80a0e;
	/* margin-bottom: 10px;
    padding-bottom: 10px;  */
}

.block_total_ticket_item .d-flex>div:last-child {
	text-align: right;
	white-space: nowrap;
}

.mess-error {
	font-size: 25px;
	color: #b10608;
	font-weight: bold;
	text-align: center;
	border-bottom: 2px solid #a1090b;
	margin: 0 -15px 15px;
	line-height: 30px;
	padding: 15px 5px;
}

.col-4 {
	-ms-flex: 0 0 33.333333%;
	flex: 0 0 33.333333%;
	max-width: 33.333333%;
}

.col-8 {
	-ms-flex: 0 0 66.666667%;
	flex: 0 0 66.666667%;
	max-width: 66.666667%;
}

.event-header {
	display: flex;
	flex-wrap: wrap;
	min-height: auto;
	min-width: 1px;
	align-items: center;
	position: fixed;
	top: 0px;
	left: 0;
	right: 0;
	z-index: 11;
	background: #fff;
	box-shadow: 0 0 10px #bbb;
	overflow: hidden;
	padding: 10px 30px;
	border: none;
}

.event-header__info-list {
	display: flex;
	flex-wrap: wrap;
	margin: 0 -15px;
	padding: 0;
	list-style: none;
}

.event-header__info {
	margin-left: 30px;
}

.event-header__info-item {
	padding: 0 15px;
}

.event-header__title {
	margin-top: 0;
	background: transparent;
	text-align: left;
}

.event-header__book-btn {
	margin-left: auto;
	border: 2px solid #b80a0e;
	background-color: #b10608;
	color: #fff;
	border-radius: 0;
	font-size: 22px;
	white-space: unset;
	padding: 10px;
	align-items: center;
	justify-content: center;
	line-height: 1.15;
	font-weight: bold;
}

.event-footer {
	display: flex;
	align-items: center;
	justify-content: space-between;
	position: fixed;
	/*min-height: 45px;*/
	top: auto;
	bottom: 0;
	left: 0;
	right: 0;
	z-index: 7010;
	background: #fff;
	box-shadow: 0 0 10px #bbb;
	padding: 15px 30px;
	/*margin: 0 -15px;
    top: 100%;
    position: sticky;*/
}

.event-footer__link {
	color: #a1090b;
	font-weight: 700;
}

.block_total_ticket {
	width: 100%;
}

.event-footer__text {
	margin: 0;
	max-width: 45%;
	font-size: 16px;
	z-index: 2;
}

.event-footer__text p {
	margin: 0;
}

.d-flex.block_total_ticket_item {
	/* align-items: flex-start; */
	max-width: 700px;
	margin-left: auto;
	margin-right: auto;
}

.block_total_ticket_item a.btn.btn-ordermake {
	padding: 10px;
	font-size: 15px;
	line-height: 1.15;
}

#preloader {
	position: fixed;
	display: none;
	top: 0;
	left: 0;
	z-index: 2;
	width: 100%;
	height: 100%;
	background: rgba(46, 47, 47, .7);
	background-image: url(/web/images/loader-widget.svg);
	background-repeat: no-repeat;
	background-position-y: calc(50vh - 32px);
	background-position-x: calc(50vw - 32px);
}

.mob-nav {
	display: none;
}

#map2 {
	min-height: 200px;
}

@media (min-width: 768px) {
	#map2 .legend.mobile {
		display: none
	}
}

/*@media (max-width: 576px) {*/
@media (max-width:374px) and (min-width: 320px) {
	#cart {
		min-height: 280px;
	}
}

@media (max-width:414px) and (min-width: 375px) {
	#cart {
		min-height: 410px;
	}
}

@media (max-width:767px) and (min-width: 415px) {
	#cart {
		min-height: 600px;
	}
}

@media (max-width: 767px) {

	section#cart {
		top: 105px;
	}

	#sectors .head>div,
	#sectors .sector>div {
		width: 33%;
	}

	#order-form .steps {
		padding-bottom: 0;
	}

	h1 {
		font-size: 26px;
	}

	.content {
		padding-top: 105px;
	}

	section#order {
		padding-bottom: 100px;
	}

	#sectors .sector div.name {
		padding-bottom: 0;
	}

	#map2 .legend,
	.block_orderbuy {
		/*display: none !important;*/
	}

	#map2 .legend.mobile {
		display: block
	}

	#map2 .legend.mobile span {
		width: auto;
		height: auto;
		margin: 0 5px 6px;
		display: inline-block;
		padding: 2px 4px;
	}

	.title_shema {
		display: none !important;
	}

	#map2 .legend {
		padding-top: 10px !important;
	}

	.event-footer {
		padding: 50px 15px 15px;
	}

	.event-footer {
		padding-top: 50px;
	}

	.mob-nav {
		display: flex;
		justify-content: space-between;
		align-items: center;
		width: 100%;
		position: absolute;
		left: 0;
		right: 0;
		top: 5px;
		z-index: 1;
		padding: 10px;
		box-sizing: border-box;
		background: #ffffff;
	}

	.mob-nav__back {
		width: 20px;
		height: 20px;
		border: 2px solid #8d1d4b;
		transform: rotate(45deg);
		border-top: none;
		border-right: none;
	}

	.count-group {
		max-width: 80px;
		align-items: flex-end;
	}

	.mob-nav__order {
		width: 30px;
		height: 30px;
		background: red;
		background: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGZpbGw9IiNjNTAyMDgiIHZpZXdCb3g9IjAgMCAxOS4yNSAxOS4yNSI+PGc+PHBhdGggZD0iTTE5LjAwNiAyLjk3YTEuMDAzIDEuMDAzIDAgMCAwLS43NTYtLjM0NUg0LjQzMWwtLjE5NS0xLjE2NEExIDEgMCAwIDAgMy4yNS42MjVIMWExIDEgMCAxIDAgMCAyaDEuNDAzbDEuODYgMTEuMTY0Yy4wMDguMDQ1LjAzMS4wODIuMDQ1LjEyNC4wMTYuMDUzLjAyOS4xMDMuMDU0LjE1MWEuOTgyLjk4MiAwIDAgMCAuMTIuMTc5Yy4wMzEuMDM5LjA1OS4wNzguMDk1LjExMmEuOTYuOTYgMCAwIDAgLjE5My4xM2MuMDM4LjAyMS4wNzEuMDQ5LjExMi4wNjVhLjk3Ljk3IDAgMCAwIC4zNjcuMDc1SDE2LjI1YTEgMSAwIDEgMCAwLTJINi4wOTdsLS4xNjYtMUgxNy4yNWExIDEgMCAwIDAgLjk5LS44NThsMS03YTEuMDAyIDEuMDAyIDAgMCAwLS4yMzQtLjc5N3ptLTEuOTA5IDEuNjU1bC0uMjg1IDJIMTMuMjV2LTJoMy44NDd6bS00Ljg0NyAwdjJoLTN2LTJoM3ptMCAzdjJoLTN2LTJoM3ptLTQtM3YyaC0zYS40ODEuNDgxIDAgMCAwLS4xNDguMDNsLS4zMzgtMi4wM0g4LjI1em0tMi45ODYgM0g4LjI1djJINS41OTdsLS4zMzMtMnptNy45ODYgMnYtMmgzLjQxOGwtLjI4NSAySDEzLjI1eiIvPjxjaXJjbGUgY3g9IjYuNzUiIGN5PSIxNy4xMjUiIHI9IjEuNSIvPjxjaXJjbGUgY3g9IjE1Ljc1IiBjeT0iMTcuMTI1IiByPSIxLjUiLz48L2c+PC9zdmc+') no-repeat center;
	}

	.block_shema .control-elems {
		right: 10px;
		top: 40px;
	}

	.block_zoom .back {
		height: 30px;
	}

	.event-header {
		align-items: flex-start;
		padding-left: 10px;
		padding-right: 10px;
	}

	.event-footer {
		flex-wrap: wrap;
		padding-left: 10px;
		padding-right: 10px;
		/*padding: 15px 45px;*/
		padding: 25px 45px;
		box-sizing: border-box;
	}

	.mob-nav {
		background: unset;
	}

	#svg {
		touch-action: none;
		overflow: hidden;
	}

	.block_total_ticket_item {
		padding-top: 10px;
		padding-bottom: 10px;
	}

	.block_total_ticket_title {
		font-size: 18px;
	}

	.accordion-tabs {
		margin-top: 0;
		margin-bottom: 0;
		border: none;
	}

	section#order {
		top: 105px;
	}

	.event-header>img {
		display: none;
	}

	.event-header__info-list {
		display: block;
		margin-left: 0;
		margin-right: 0;
	}

	.count-tickets span,
	.count-sum span {
		font-size: 0;
	}

	.count-sum {
		white-space: nowrap;
		text-overflow: ellipsis;
		overflow: hidden;
		max-width: 100%;
	}

	.block_zoom .back {
		padding: 0
	}

	.block_zoom>a {
		/*	    width: 28px;
	    display: flex;
	    align-items: center;
	    justify-content: center;
	    font-size: 20px;*/

	}

	.block_zoom .back div {
		width: 10px;
		height: 10px;
		margin: 0 -3px 0 0;
	}

	.block_shema .control-elems .block_zoom {
		font-size: unset;
		line-height: normal;
	}

	.count-tickets {
		display: flex;
		align-items: center;
		margin-right: 0;
		padding-left: 40px;
		white-space: nowrap;
		text-overflow: ellipsis;
		max-width: 100%;
		overflow: hidden;
		background: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGZpbGw9IiNjNTAyMDgiIHZpZXdCb3g9IjAgMCA1MTIuMDA1IDUxMi4wMDUiPjxwYXRoIGQ9Ik01MTEuNTEzIDIyMy45MDRMNDUyLjUwOCA0Mi4zMjZjLTEuNzA4LTUuMjUxLTcuMzQ4LTguMTI1LTEyLjYwMi02LjQyTDYuOTEyIDE3Ni42MTJjLTUuMjUyIDEuNzA3LTguMTI2IDcuMzQ5LTYuNDIgMTIuNjAybDI3LjkzIDg1Ljk0OWMtLjAwOC4xNjgtLjAyNS4zMzMtLjAyNS41MDN2MTkwLjkyNWMwIDUuNTIyIDQuNDc4IDEwIDEwIDEwSDQ5My42OGM1LjUyMiAwIDEwLTQuNDc4IDEwLTEwVjI3NS42NjZjMC01LjUyMi00LjQ3OC0xMC0xMC0xMGgtNzguMzJsODkuNzM0LTI5LjE2YzUuMjUxLTEuNzA3IDguMTI1LTcuMzQ5IDYuNDE5LTEyLjYwMnptLTI3LjgzNCA2MS43NjJ2MTcwLjkyNUg0OC4zOTZWMjg1LjY2Nmg1NS4zOTJ2MTExLjQwOGMwIDUuNTIyIDQuNDc4IDEwIDEwIDEwczEwLTQuNDc4IDEwLTEwVjI4NS42NjZINDgzLjY3OXptLTEzMy4wMzQtMjBINDYuMzY1bC0yMy43NjItNzMuMTIzIDUyLjcxMS0xNy4xMjkgMjAuMTYyIDYxLjI3NmMxLjM4NSA0LjIwOCA1LjI5NiA2Ljg3NyA5LjQ5NyA2Ljg3NyAxLjAzNiAwIDIuMDktLjE2MiAzLjEyOC0uNTA0IDUuMjQ2LTEuNzI3IDguMS03LjM3OCA2LjM3My0xMi42MjVsLTIwLjEzOS02MS4yMDZMNDM2LjU3NyA1OC4wMTdsNTIuODI1IDE2Mi41NTgtMTM4Ljc1NyA0NS4wOTF6Ii8+PHBhdGggZD0iTTQyMS40MDUgMTAxLjg0OWMtMS43MDgtNS4yNTEtNy4zNDktOC4xMjQtMTIuNjAyLTYuNDJsLTI2MC43MjggODQuNzI3Yy01LjI1MiAxLjcwNy04LjEyNiA3LjM0OS02LjQyIDEyLjYwMmExMC4wMDUgMTAuMDA1IDAgMCAwIDkuNTA5IDYuOTEyYzEuMDI0IDAgMi4wNjYtLjE1OSAzLjA5My0uNDkybDI2MC43MjgtODQuNzI3YzUuMjUyLTEuNzA3IDguMTI3LTcuMzQ5IDYuNDItMTIuNjAyek0zNzcuNDM0IDE2Ni44MDRsNDkuMzUyLTE2LjAzN2M1LjI1Mi0xLjcwNyA4LjEyNi03LjM0OSA2LjQyLTEyLjYwMi0xLjcwOC01LjI1Mi03LjM0OS04LjEyNS0xMi42MDItNi40MmwtNDkuMzUyIDE2LjAzN2MtNS4yNTIgMS43MDctOC4xMjYgNy4zNDktNi40MiAxMi42MDJhMTAuMDA1IDEwLjAwNSAwIDAgMCA5LjUwOSA2LjkxMmMxLjAyNCAwIDIuMDY3LS4xNTkgMy4wOTMtLjQ5MnpNNDE5LjE0MyAyMTIuNzQxYTEwLjAwNSAxMC4wMDUgMCAwIDAgOS41MDkgNi45MTIgMTAuMDIgMTAuMDIgMCAwIDAgMy4wOTMtLjQ5MmwxNS42MTctNS4wNzVjNS4yNTItMS43MDcgOC4xMjctNy4zNDkgNi40Mi0xMi42MDItMS43MDgtNS4yNTItNy4zNDgtOC4xMjYtMTIuNjAyLTYuNDJsLTE1LjYxNyA1LjA3NWMtNS4yNTIgMS43MDctOC4xMjcgNy4zNDktNi40MiAxMi42MDJ6TTM5MC42ODUgMjExLjQ3M2wtMTUuNjE4IDUuMDc1Yy01LjI1MiAxLjcwNy04LjEyNyA3LjM0OS02LjQyIDEyLjYwMiAxLjM3MyA0LjIyNiA1LjI5MyA2LjkxMiA5LjUwOSA2LjkxMiAxLjAyMyAwIDIuMDY1LS4xNTkgMy4wOTMtLjQ5MmwxNS42MTgtNS4wNzVjNS4yNTItMS43MDcgOC4xMjYtNy4zNDkgNi40Mi0xMi42MDItMS43MDYtNS4yNTItNy4zNDMtOC4xMjUtMTIuNjAyLTYuNDJ6TTI1MS4xMzIgMTg2LjgxN2wtOTEuMjU1IDI5LjY1NGMtNS4yNTIgMS43MDctOC4xMjcgNy4zNDktNi40MiAxMi42MDJhMTAuMDA1IDEwLjAwNSAwIDAgMCA5LjUwOSA2LjkxMiAxMC4wMiAxMC4wMiAwIDAgMCAzLjA5My0uNDkybDkxLjI1NS0yOS42NTRjNS4yNTItMS43MDcgOC4xMjYtNy4zNDkgNi40Mi0xMi42MDItMS43MDktNS4yNTItNy4zNS04LjEyNS0xMi42MDItNi40MnpNMTEzLjc4OCA0MjAuMzY0Yy01LjUyMiAwLTEwIDQuNDc4LTEwIDEwdjMuOTE2YzAgNS41MjIgNC40NzggMTAgMTAgMTBzMTAtNC40NzggMTAtMTB2LTMuOTE2YzAtNS41MjItNC40NzgtMTAtMTAtMTB6TTE2MS41NTQgMzIyLjY2M2MwIDUuNTIyIDQuNDc4IDEwIDEwIDEwaDI3NC4xNDhjNS41MjIgMCAxMC00LjQ3OCAxMC0xMHMtNC40NzgtMTAtMTAtMTBIMTcxLjU1NGMtNS41MjIgMC0xMCA0LjQ3Ny0xMCAxMHpNNDQ1LjcwMyAzNTAuODQ3SDM5My44MWMtNS41MjIgMC0xMCA0LjQ3OC0xMCAxMHM0LjQ3OCAxMCAxMCAxMGg1MS44OTNjNS41MjIgMCAxMC00LjQ3OCAxMC0xMHMtNC40NzgtMTAtMTAtMTB6TTQ0NS43MDMgNDE3LjQyN2gtMTYuNDIyYy01LjUyMiAwLTEwIDQuNDc4LTEwIDEwczQuNDc4IDEwIDEwIDEwaDE2LjQyMmM1LjUyMiAwIDEwLTQuNDc4IDEwLTEwcy00LjQ3OC0xMC0xMC0xMHpNMzkyLjYwOCA0MTcuNDI3aC0xNi40MjFjLTUuNTIyIDAtMTAgNC40NzgtMTAgMTBzNC40NzggMTAgMTAgMTBoMTYuNDIxYzUuNTIyIDAgMTAtNC40NzggMTAtMTBzLTQuNDc3LTEwLTEwLTEwek0yNjcuNTA3IDM1MC44NDdoLTk1Ljk1MmMtNS41MjIgMC0xMCA0LjQ3OC0xMCAxMHM0LjQ3OCAxMCAxMCAxMGg5NS45NTJjNS41MjIgMCAxMC00LjQ3OCAxMC0xMHMtNC40NzgtMTAtMTAtMTB6Ii8+PC9zdmc+') no-repeat 0 center / 25px 25px;
		font-size: 16px;
		line-height: 25px;
	}

	.event-header__info-item {
		padding: 0;
		font-size: 14px;
		text-overflow: ellipsis;
		overflow: hidden;
		white-space: nowrap;
	}

	.event-header .cart-link,
	.event-header .backward {
		display: none;
	}

	.event-footer__text:last-child {
		font-size: 10px;
	}

	.event-header__title {
		font-size: 16px;
		margin-bottom: 5px;
		text-overflow: ellipsis;
		overflow: hidden;
		white-space: nowrap;
	}

	.event-header__info {
		/* margin-left: 15px; 
        width: calc(100% - 111px);*/
		margin-left: 0;
		width: 100%;
	}

	.event-footer .event-footer__text,
	.event-header .menu-cart,
	.event-header__info-item.event-header__info-item--price

	/*, .mob-nav__order */
		{
		display: none;
	}

	.event-footer {
		min-height: 25px;
	}

	.mob-nav {
		top: 0;
	}

	.count-group {
		flex-direction: row;
		max-width: 100%;
		align-items: center;
		justify-content: space-between;
	}

	.menu-cart {
		margin-left: 15px;
		max-width: 100%;
		width: calc(100% - 50px);
		margin-right: 15px;
	}

	.links-menu {
		margin-top: 10px;
		max-width: 90px;
		position: absolute;
		right: 15px;
		top: 30px;
	}

	/*    .count-group {
        flex-direction: column
    }*/

	#cart .details {
		width: 100%;
	}




}

.accordion-tabs li.tab-head-cont .tab-link {
	padding: 0.65rem 0.7rem;
	min-width: 102px;
	box-sizing: border-box;
	text-align: center;
}

.accordion-tabs li.tab-head-cont span {
	margin: 0 10px;
}

/*.block_zoom .min,.block_zoom .max{*/
/*display: none;*/
/*} */

.block_zoom .back>div {
	display: none
}

.block_zoom .back {
	width: 50px;
	height: 50px;
	border-radius: 100%;
	background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACsAAAArCAYAAADhXXHAAAAACXBIWXMAAAsTAAALEwEAmpwYAAAFwmlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS42LWMxNDIgNzkuMTYwOTI0LCAyMDE3LzA3LzEzLTAxOjA2OjM5ICAgICAgICAiPiA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtbG5zOnhtcE1NPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvbW0vIiB4bWxuczpzdEV2dD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL3NUeXBlL1Jlc291cmNlRXZlbnQjIiB4bWxuczpkYz0iaHR0cDovL3B1cmwub3JnL2RjL2VsZW1lbnRzLzEuMS8iIHhtbG5zOnBob3Rvc2hvcD0iaHR0cDovL25zLmFkb2JlLmNvbS9waG90b3Nob3AvMS4wLyIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ0MgKFdpbmRvd3MpIiB4bXA6Q3JlYXRlRGF0ZT0iMjAxOC0xMi0xOFQxNToxNToxMiswMzowMCIgeG1wOk1ldGFkYXRhRGF0ZT0iMjAxOC0xMi0xOFQxNToxNToxMiswMzowMCIgeG1wOk1vZGlmeURhdGU9IjIwMTgtMTItMThUMTU6MTU6MTIrMDM6MDAiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6MWMwOTQyM2YtZDdlOS0zMTQyLTgzZjItYjIyOTNhNTUzMDdkIiB4bXBNTTpEb2N1bWVudElEPSJhZG9iZTpkb2NpZDpwaG90b3Nob3A6MzdmNzE3ZTItZWYwMC03YTRjLTkyODgtZjQzZTI3MmJjMzhiIiB4bXBNTTpPcmlnaW5hbERvY3VtZW50SUQ9InhtcC5kaWQ6Zjk1YzI1OTgtMTllOS0zMzRiLTg2NzUtZjZjYjhmYTgzYWYyIiBkYzpmb3JtYXQ9ImltYWdlL3BuZyIgcGhvdG9zaG9wOkNvbG9yTW9kZT0iMyI+IDx4bXBNTTpIaXN0b3J5PiA8cmRmOlNlcT4gPHJkZjpsaSBzdEV2dDphY3Rpb249ImNyZWF0ZWQiIHN0RXZ0Omluc3RhbmNlSUQ9InhtcC5paWQ6Zjk1YzI1OTgtMTllOS0zMzRiLTg2NzUtZjZjYjhmYTgzYWYyIiBzdEV2dDp3aGVuPSIyMDE4LTEyLTE4VDE1OjE1OjEyKzAzOjAwIiBzdEV2dDpzb2Z0d2FyZUFnZW50PSJBZG9iZSBQaG90b3Nob3AgQ0MgKFdpbmRvd3MpIi8+IDxyZGY6bGkgc3RFdnQ6YWN0aW9uPSJzYXZlZCIgc3RFdnQ6aW5zdGFuY2VJRD0ieG1wLmlpZDoxYzA5NDIzZi1kN2U5LTMxNDItODNmMi1iMjI5M2E1NTMwN2QiIHN0RXZ0OndoZW49IjIwMTgtMTItMThUMTU6MTU6MTIrMDM6MDAiIHN0RXZ0OnNvZnR3YXJlQWdlbnQ9IkFkb2JlIFBob3Rvc2hvcCBDQyAoV2luZG93cykiIHN0RXZ0OmNoYW5nZWQ9Ii8iLz4gPC9yZGY6U2VxPiA8L3htcE1NOkhpc3Rvcnk+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+zVOzuQAAAd9JREFUWIXtmDFPwkAYht8TMCRKhIU0IREmg3FhhI1N3NhwU/8BbLg5uqmTbOpWJtnEDScZTMANBw0MGiQmEEVppFIHESgByd1RqKHP1uS+fk+ub++uJTeAgn/C3LQFaDBktcKQ1QpDVisMWa0wZLVi1mTdcJ7nsHK8zn+rEXDKuuG8yMIV9sEW3ByP0R9wyLZFQ8LEsmRmKxsgarXDEYmoRn0Vkni95fJTQegP37QzKkEuF9FIJ/C0d4R6icGyDaUs76Mvo364jbvYJVM1Xc+tBASujApYjKawdsK2ckx4Zn8p4CW4itIVXRVlzxIqG348psto0RX24cVSPDJ6WB8Mq8GPMPpnuJjCQ1zsGeeBLeyDRfBhweeFxa6+i8UTApDUWnaIsFRDNaluXu1cuuE4ELEc9XcbCh44AVQounJEjyYSJVRjAdyfFrjiw7n5tIVTebxlxJGj6zsJvNfaF5KEJmU3hk2BD9d1A4LfilZ2H7nALlUtY2bZaUoSAOAjQycKTOs8K+VRo3edjmwzk8AzQ103BoQoUBQyPqXB1MQ4WukzptrOC0bM5k9FlufHajZmOjFQZNkEQnT9r7Z3NTBB0bXrzH3dTgxFj7JDs6hH2WHLJ9Gj7FAMWa0wZLXiGx2Xk/4os201AAAAAElFTkSuQmCC) center;
	background-size: 50px;
	border: 0;
	opacity: 0.6;
}

.act-events span {
	font-weight: bold;
	font-size: 18px;
	color: #5a0001;
	margin-bottom: 15px;
	display: block;
}


.block_event_full {
	display: flex;
	flex-wrap: wrap;
	/*justify-content: space-between;*/
}

.block_event_full>div,
.block_event_full>a {
	margin: 0 8px 15px 8px;
	padding: 10px;
	box-shadow: 0 0 15px rgba(51, 51, 51, 0.3);
	position: relative;
	/*width: calc(17.4% - 10px);*/
	min-width: 190px;
	text-align: center;
}

@media (max-width: 767px) {

	.block_event_full>div,
	.block_event_full>a {
		width: calc(30% - 10px);
		margin: 0 0 15px;
		min-width: unset;
	}

	.block_event_full {
		padding: 0 15px;
		justify-content: space-between;
	}

	.block_event_full:after {
		content: '';
		width: calc(30% - 10px);
		min-width: unset;
		margin: 0 0 15px;
	}

	.tickets .place span {
		display: block;
	}
}

@media (max-width: 550px) {
	.block_event_full>div {
		width: calc(45% - 10px);
	}

	.block_event_full:after {
		width: calc(45% - 10px);
	}
}

@media (max-width: 360px) {
	.event-footer {
		flex-direction: column;
		align-items: flex-start;
	}

	.event-footer__text {
		max-width: 100%;
	}

	.block_event_full>div {
		width: 100%;
	}

	.block_event_full:after {
		width: 100%;
	}
}

@media (max-width: 500px) {
	.widget-spec__background .widget-spec__popup {
		width: 100% !important;
		left: 0 !important;
	}
}

.event-prices {
	position: absolute;
	-webkit-transition: .3s ease;
	-moz-transition: .3s ease;
	transition: .3s ease;
	-webkit-transform: translateX(-50%);
	-moz-transform: translateX(-50%);
	transform: translateX(-50%);
	visibility: hidden;
	opacity: 0;
	bottom: 100%;
	left: 50%;
	pointer-events: none;
	background: #c50208;
	color: #fff;
	border-radius: 5px;
	line-height: 33px;
	white-space: nowrap;
	font-size: 13px;
	margin-bottom: 21px;
	padding: 5px 10px;
	box-shadow: 0 0 15px rgba(51, 51, 51, 0.3);
}

.event-prices:after {
	content: '';
	width: 0;
	height: 0;
	border-left: 12px solid transparent;
	border-right: 12px solid transparent;
	border-top: 10px solid #c50208;
	margin-bottom: 14px;
	position: absolute;
	bottom: -24px;
	left: 50%;
	-webkit-transform: translateX(-50%);
	-moz-transform: translateX(-50%);
	transform: translateX(-50%);
}

.event-name:hover+.event-prices {
	visibility: visible;
	opacity: 1;
}

#map2 .places {
	min-width: 0 !important;
}

@media(max-width: 1024px) {
	h1.order-title {
		display: none;
	}

	.fancybox img {
		max-width: 100%;
	}

	section#order {
		padding-bottom: 60px;
	}

	.tickets .info {
		max-width: calc(100% - 310px);
		width: 100%;
		padding: 0 10px;
	}

	.tickets .photo {
		width: 95px;
		min-width: 95px;
	}

}

@media(max-width: 1024px) and (min-width:768px) {
	#cart {
		min-height: calc(100vh - 220px)
	}
}

.inner {
	width: 100%;
	max-width: 1200px;
	margin: 0 auto;
	padding-bottom: 30px;
}

#event {
	margin-top: 50px;
}

@media(max-width: 767px) {
	.tickets .remove {
		top: 5px;
		right: 5px;
	}

	.tickets .price {
		position: unset;
		min-width: 130px;

	}

	#grid .left {
		float: unset;
		margin: 0 auto 30px;
	}

	#event {
		margin-top: 15px;
	}

	.accordion-tabs li {
		margin-right: 0;
	}

	.accordion-tabs li.tab-head-cont section {
		padding: .5em 0;
	}

	#sectors .head {
		background: #7c7c7c !important;
	}

	#sectors .sector div,
	#sectors .head div {
		padding: 5px 10px;
	}

	#sectors {
		margin: 0 auto 15px !important;
	}
}

@media (max-width: 800px) {

	.pay-ssl,
	.pay-mail {
		width: 100% !important;
		box-sizing: border-box;
	}

	.inner {
		overflow: auto;
	}

	.tickets .info {
		/* max-width: calc(100% - 310px);*/
		max-width: calc(100% - 20px);
		display: block;
	}

	.event-header {
		padding: 10px 15px;
	}

	#order-form .steps {
		display: flex;
		width: 100%;
		flex-wrap: wrap;
		justify-content: space-between;
	}

	#order-form .steps li {
		max-width: 40%;
		width: 100%;
		display: block;
		margin-bottom: 20px;
	}
}

#map2 .admission .header,
#map2 .admission .sector {
	display: flex;
}

#map2 .admission .sector div,
#map2 .admission .header div {
	box-sizing: border-box;
	float: unset !important;
	height: auto !important;
	padding: 5px 15px !important;
	min-height: 48px;
	align-items: center;
	justify-content: center;
	display: flex !important;
}

#total {

	display: flex;
	flex-direction: column;
}

@media (max-width: 600px) {
	#map2 .admission .header {
		display: none
	}

	#map2 .admission .sector>div:first-child {
		border-top: 1px solid #ddd;
	}

	#map2 .admission .sector div {
		float: unset;
		width: 100%;
		border: 0;
		border-bottom: 1px solid #ddd;
		box-sizing: border-box;
		padding: 15px !important;
		height: auto !important;
	}

	#map2 .admission .sector {
		display: flex;
		flex-direction: column;
		margin-bottom: 10px;
		border-left: 0 !important;
	}

	#map2 .admission .sector .cart {
		border-bottom: 5px solid #c40009 !important;
	}

	#promocode {
		float: unset;
		margin-bottom: 20px;
	}

	#total {
		align-items: flex-end;
		margin-left: 0;
		text-align: left;
		justify-content: flex-end;
	}

	.tickets .ticket {
		display: flex;
		flex-wrap: wrap;
	}

	.tickets .info {
		max-width: calc(100% - 115px);
	}

	.tickets .cost {
		margin-top: 10px;
	}

	.tickets .price {
		width: 100%;
		border-top: 2px solid #fff;
		border-left: 0;
		padding-left: 0;
		margin-top: 10px;
		display: flex;
		flex-direction: column;
		align-items: flex-end;
	}

	#order-form .steps li {
		max-width: 100%;
		padding-right: 0;
	}

	#promocode input {
		width: 100%;
		max-width: calc(100% - 175px);
		box-sizing: border-box;
	}

	#order-form .form input,
	#order-form .form textarea {
		box-sizing: border-box;
		max-width: 100%;
	}

}

#order {
	background: unset;
}

.title_shema {
	padding: 5px 15px;
	font-size: 22px;
}

.widget-spec__background {
	display: none;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: rgba(0, 0, 0, .5);
	z-index: 99999;
}

.widget-spec__background .widget-spec__popup {
	position: absolute;
	width: 500px;
	min-height: 130px;
	font: 14px PFDinTextProRegular, sans-serif;
	color: #000;
	text-align: left;
	background-color: #ffffff;
	top: calc(50vh - 100px);
	left: calc(50vw - 250px);
	box-sizing: border-box;
	padding: 20px 30px;
}

.widget-spec__popup .buttons {
	margin-top: 30px;
	text-align: center;
}

.widget-spec__popup .buttons .spec-confirm {
	background: #c40009;
	color: #fff !important;
	padding: 11px 25px 8px 25px;
	border-radius: 2px;
	border: 0;
}

.widget-spec__popup a {
	color: #c40009 !important;
}

.spec-text {
	text-align: center;
	padding-top: 25px;
}

.spec-text a {
	color: #c40009 !important;
}

#map2 .admission {
	width: 100% !important;
	max-width: 800px;
}


#promocode input,
#promocode button {
	margin-bottom: 10px;
}

.promocode-fail {
	color: #c40009;
}

/*.promocode-success {*/
/*color: ;*/
/*}*/

@media (max-width: 991px) {
	.block_zoom .back {
		background-size: 40px;
		width: 40px;
		height: 40px;
	}

	.block_zoom>a {
		width: 40px;
		height: 40px;
	}

}

#order #map2 .admission .header,
#order #map2 .admission .sector {
	max-width: 100%;
	width: 100%;
}

.order-error {
	display: none;
	color: red;
}