@charset "iso-8859-2";

/* altalanos szabalyok */

* {
	margin: 0;
	padding: 0;
}

body {
	color: #595959;
   font-family: 'Open Sans', sans-serif;
	font-size: 14px;
	background: url('images/body_bg_1.jpg') no-repeat;
	background-position: center;
	background-size: cover;
	position: relative;
}

p {
	margin-bottom: 15px;
}

a {
	color: #2f77d0;
}

a:hover {
	text-decoration: none;
}

a span {
	cursor: pointer;
}

img {
	border: 0;
}

strong {
	font-weight: bold;
}

strong.big {
	font-size: 16px;
}

em {
	color: #2f77d0;
	font-weight: bold;
	font-style: normal;
}

label {
	font-size: 11px;
}

textarea {
	overflow: auto;
}

form p {
	margin-bottom: 0;
}

ul, ol {
	margin:  0 0 15px 25px;
}

dl {
	margin: 0 0 15px 0;
}

dl dt {
	clear: left;
	float: left;
	font-weight: bold;
}

dl dd {
	float: left;
}

table {
	margin: 0 0 15px 0;
}

h1 span, h2 span, h3 span, h4 span, h5 span, h6 span {
	display: none;
}

#header h1 {
	width: 925px;
	height: 192px;
	margin: 16px 0 0 12px;
}

#header h1 a {
	display: block;
	width: 925px;
	height: 192px;
	color: transparent;
}

#content h2 {
	margin: 0 0 145px 0;
	color: #fff;
	text-align: center;
	font-size: 24px;
	font-weight: bold;
	text-transform: uppercase;
	background-color: #d2232a;
}

#content .top-events-title-mobile {
	margin: 0 0 145px 0;
	color: #fff;
	text-align: center;
	font-size: 24px;
	font-weight: bold;
	text-transform: uppercase;
	background-color: #d2232a;
	border: none;
	width: 100%;
}

#content h2.musician {
	margin-bottom: 5px;
}

#content h2 span {
	display: inline;
	font-size: 16px;
	font-weight: bold;
}

#content h2 span span {
	font-size: 10px;
}

#content h3.black {
	font-size: 16px;
	text-transform: uppercase;
	text-align: center;
	position: relative;
	z-index: 1;
	flex: 1;
	width: 50%;
	font-weight: 600;
}

#content h3.black div {
	color: #fff;
	font-size: 16px;
	margin: 0 auto;
	display: inline;
}

@media screen and (min-width: 768px) {
	#content h3.black div {
		display: block;
		font-size: 41px;
		font-weight: bold;
	}

	#content h3.black span {
		display: block;
		height: 60px;
		width: 60px;
		z-index: -1;

		position: absolute;
		top: 50%;
		left: 50%;
		-webkit-transform: translate(-50%, -50%);
		-moz-transform: translate(-50%, -50%);
		transform: translate(-50%, -50%);
	}
}

.events-short-info > div {
}

.events-short-info div span {
	font-size: 16px;
	font-weight: 600;
}

.events-short-info div span img {
	display: none;
	margin: 0 auto;
}

@media screen and (min-width: 768px) {
	.events-short-info > div {
		width: 50%;
		text-align: center;
		flex: 1;
		border-left: 1px solid #000;
		position: relative;
	}

	.events-short-info div span {
		font-size: 18px;
		position: absolute;
		top: 50%;
		left: 50%;
		-webkit-transform: translate(-50%, -50%);
		-moz-transform: translate(-50%, -50%);
		transform: translate(-50%, -50%);
	}

	.events-short-info div span img {
		display: block;
	}
}

#content .musicians_places h3 {
	margin: 0 0 10px 0;
	color: #2f77d0;
	font-size: 16px;
	font-weight: normal;
	text-transform: uppercase;
	font-weight: 600;
}

#content .musicians_places h3 a {
	text-decoration: none;
	font-weight: 600;
}

#content .musicians_places h3 span {
	display: inline;
	font-size: 10px;
}

#content .musician h3 {
	margin: 0 0 5px 0;
	padding: 75px 0 0 0;
	color: #2f77d0;
	font-size: 24px;
	font-weight: bold;
}

.fix {
	display: block;
	float: none !important;
	clear: both !important;
	height: 1px;
	overflow: hidden;
}

/* specifikus szabalyok */

#header_holder {
	width: 100%;
	height: 100%;
}

@media screen and (min-width: 768px) {
	#header_holder {
		padding-top: 55px;
	}
}

#header {
	width: 100%;
	height: 100%;
}

#header_inner {
	margin: 0 auto;
	text-align: center;
	position: relative;
}
#header_inner .header-logo {
	display: inline-block;
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
}

#header_inner ul.menu-list {
	list-style: none;
	text-align: left;
	margin: 0;
}

#header_inner ul.menu-list li {
	display: block;
	padding-left: 50px;
	border-bottom: 1px solid #484C4F;
}

#header_inner ul.menu-list li a {
	display: block;
	width: 100%;
	height: 50px;
	color: #fff;
	font-size: 16px;
	font-weight: 400;
	text-transform: uppercase;
	text-align: left;
	text-decoration: none;
	line-height: 48px;
}

.owl-carousel {
	height: 200px;
	margin: 0;
	position: absolute !important;
	top: 0;
	width: 100%;
	height: 100%;
	z-index: -1 !important;
}

.owl-carousel .owl-stage-outer {
	height: 100%;
}

.owl-carousel .owl-stage {
	height: 100%;
}

.owl-carousel.owl-drag .owl-item {
	height: 100%;
}

.owl-carousel li.item {
	height: 100%;
	list-style: none;
	background-position: center center;
}

@media screen and (min-width: 768px) {
	.owl-carousel {
		height: 250px;
	}

	#header_inner ul.menu-list {
		display: flex;
		background: rgba(0, 0, 0, 0.5);
		text-align: center;
		height: 50px;
		padding: 0 20px;
	}

	#header_inner ul.menu-list li {
		flex: 1;
		display: inline-block;
		padding: 0;
		border: none;
	}

	#header_inner ul.menu-list li a {
		text-align: center;
	}
}

#header_inner ul.menu-list li a.menu_dbl {
	width: 202px;
	background: url('images/menu_dbl.jpg') no-repeat top;
}

#header_inner ul.menu-list li a:hover, #header_inner ul.menu-list li.active a, #header_inner ul.menu-list li.active a:hover {
	color: #d2232a;
}

#site_holder {
	width: 100%;
}

#site {
	width: 100%;
}

#content {
	min-height: 500px;
	margin: 0 auto;
	padding: 0 15px;
	background-color: #E4E5E6
}

@media screen and (min-width: 768px) {
	#content {
		padding: 0 25px;
		background-color: #fff;
	}
}

#content p {
	text-align: justify;
}

#header ul#lang {
	overflow: hidden;
	margin: 0 auto;
	padding: 5px 0;
	text-align: right;
	list-style: none;
	background-color: #fff;
}

@media screen and (max-width: 768px) {
	#header ul#lang {
		padding: 5px 0 0 0;
		background-color: #E4E5E6;
	}
}

#header ul#lang li {
	display: inline-block;
}

#header ul#lang li a {
	display: block;
	width: 34px;
	height: 22px;
	margin: 0 10px 0 0;
}

#header ul#lang li a span {
	display: none;
}

#header ul#lang li#lang_en a {
	background: url('images/flag_en.jpg') no-repeat;
}

#header ul#lang li#lang_hu a {
	background: url('images/flag_hu.jpg') no-repeat;
}

#header ul#lang li#lang_fr a {
	background: url('images/flag_fr.jpg') no-repeat;
}

#header ul#lang li#lang_en a:hover, #header ul#lang li#lang_hu a:hover, #header ul#lang li#lang_fr a:hover {
	background-position: center;
}

#header ul#lang li#lang_en.active a, #header ul#lang li#lang_hu.active a, #header ul#lang li#lang_fr.active a, #header ul#lang li#lang_en.active a:hover, #header ul#lang li#lang_hu.active a:hover, #header ul#lang li#lang_fr.active a:hover {
	background-position: bottom;
}

div.calendar {
	width: 100%;
}

@media screen and (min-width: 768px) {
	div.calendar {
		float: left;
		width: 30%;
	}
}

table.calendar {
	width: 202px;
	background: #e2e3e4;
}

table.calendar caption {
	padding: 5px 0;
	background: #322f31;
	color: #fffefe;
	font-weight: bold;
	text-align: center;
	font-size: 18px;
}

table.calendar caption a {
	color: #000;
	font-size: 16px;
	text-decoration: none;
}

table.calendar th {
	width: 25px;
	height: 30px;
	color: #000;
	font-size: 12px;
	text-align: center;
	text-transform: uppercase;
}

table.calendar td {
	width: 25px;
	height: 25px;
	background: #e2e3e4;
	font-size: 12px;
	font-weight: 400;
	text-align: center;
	line-height: 18px;
	border: 1px solid #f1f1f2;
}

table.calendar td a {
	display: block;
	color: #000;
	text-decoration: none;
	font-weight: 400;
	height: 25px;
}

table.calendar td a span {
	height: 25px;
	line-height: 25px;
}

.calendar_right {
	width: 100%;
}

.calendar_right > div {
	padding: 0;
}

.bordered-text {
	font-style: italic;
	font-size: 12px;
	position: relative;
	max-width: 450px;
	margin: 0 auto 10px auto;
}

.bordered-text::before {
	position: absolute;
	content: "";
	width: 6%;
	left: 0;
	top: 8px;
	height: 1px;
	background: #000;
}

.bordered-text::after {
	position: absolute;
	content: "";
	width: 7%;
	right: 0;
	top: 8px;
	height: 1px;
	background: #000;
}

@media screen and (min-width: 500px) {
	.bordered-text::before {
		width: 17%;
	}

	.bordered-text::after {
		width: 17%;
	}
}

@media screen and (min-width: 768px) {
	.bordered-text::before {
		width: 16%;
	}

	.bordered-text::after {
		width: 16%;
	}

	.calendar_right > div {
		padding: 10px 15px 15px 15px;
	}

	.calendar_right {
		float: right;
		width: calc(70% - 30px);
		background-image: url("/images/program-bg.jpg");
		background-repeat: no-repeat;
		background-position: center;
		background-size: cover;
	}
}

@media screen and (min-width: 992px) {
	.bordered-text::before {
		width: 15%;
	}

	.bordered-text::after {
		width: 15%;
	}
}

@media screen and (min-width: 1200px) {
	.bordered-text::before {
		width: 18%;
	}

	.bordered-text::after {
		width: 18%;
	}
}

.calendar_right dl dt {
	font-size: 16px;
}

.calendar_right dl dd {
	line-height: 20px;
}

.calendar_right table {
	border: 0;
	width: 100% !important;
}

.calendar_right table td {
	padding: 1px 5px;
	border: 0;
}

.marginbottom {
	margin-bottom: 15px;
}

.bigmarginbottom {
	margin-bottom: 30px;
}

.musicians_places {
	width: 50%;
	font-size: 12px;
	text-align: center;
	float: left;
}

.musicians_places a {
	text-decoration: none;
}

.musicians_places img {
	max-width: 100px;
}

@media screen and (min-width: 768px) {
	.musicians_places {
		float: left;
		width: 33.3333%;
		margin: 0 5px;
		font-size: 12px;
		text-align: center;
	}

	.musicians_places img {
		max-width: 100%;
	}
}

.musicians_places.left {
	margin-left: 110px;
}

.musicians_places p {
	margin-bottom: 10px;
}

.musicians_places img {
	margin: 0 0 5px 0;
}

.musician {
	margin: 20px 0 0 20px;
}

.musician img {
	float: left;
	margin: 0 25px 0 0;
}

.musician p {
	padding: 0 0 0 130px;
	font-weight: bold;
}

.musician p img {
	margin: 0 5px 0 0;
}

.musician p a {
	color: #595959;
	text-decoration: none;
}

.musician p a:hover {
	text-decoration: underline;
}

.text {
	width: 100%;
	font-size: 12px;
}

.text p {
	line-height: 17px;
}

.imgleft {
	float: left;
	margin: 0 10px 10px 0;
}

.imgright {
	float: right;
	margin: 0 0 10px 10px;
}

form#add_program_form label {
	clear: left;
	float: left;
	display: block;
	width: 50px;
	margin: 0 0 5px 0;
	line-height: 16px;
}

form#add_program_form input#add_program_name {
	float: left;
	width: 100px;
	margin: 0 0 5px 0;
	border: 1px solid #d3d3d3;
}

form#add_program_form input#add_program_color {
	float: left;
	width: 78px;
	margin: 0 0 5px 0;
	border: 1px solid #d3d3d3;
}

form#add_program_form img {
	float: left;
	margin: 0 0 5px 5px;
}

form#add_program_form input#add_program_submit {
	margin: 10px 0 0 0;
	border: 1px solid #d3d3d3;
	cursor: pointer;
}

form#edit_page_form input#edit_page_submit {
	margin: 10px 0 0 0;
	border: 1px solid #d3d3d3;
	cursor: pointer;
}

form#add_event_form label {
	clear: left;
	float: left;
	display: block;
	width: 50px;
	margin: 0 0 5px 0;
	line-height: 16px;
}

form#add_event_form input {
	float: left;
	width: 60px;
	margin: 0 0 5px 0;
	border: 1px solid #d3d3d3;
}

form#add_event_form input#add_event_submit {
	width: 80px;
	cursor: pointer;
}

form#add_event_form select {
	float: left;
	width: 130px;
	margin: 0 0 5px 0;
	border: 1px solid #d3d3d3;
}

form#add_event_form img {
	float: left;
	margin: 1px 0 5px 5px;
}

.col3 {
	float: left;
	width: 250px;
}

form#add_event_form ul {
	margin: 0;
	list-style: none;
}

form#add_event_form ul li {
	clear: left;
	height: 15px;
	margin: 0 0 5px 0;
	padding: 0 0 0 2px;
	border-left: 3px solid #fff;
}

form#add_event_form ul li span {
	float: left;
	display: block;
	width: 15px;
	height: 15px;
	margin: 0 5px 0 0;
}

form#add_event_form ul li a {
	float: left;
}

p#contact_phone {
	padding: 25px 0 0 65px;
	background: url('images/mobile-icon.png') no-repeat left;
	font-size: 14px;
	font-weight: normal;
	background-size: 50px;
	height: 50px;
	overflow: hidden;
	margin-right: 45px;
	color: #000;
}

p#contact_email {
	height: 50px;
	padding: 25px 0 0 65px;
	background: url('images/email-icon.png') no-repeat left;
	font-size: 14px;
	font-weight: normal;
	background-size: 50px;
	overflow: hidden;
	color: #000;
}

@media screen and (min-width: 768px) {
	p#contact_phone {
		font-size: 20px;
		background-size: 70px;
		height: 70px;
		float: left;
		padding: 35px 0 0 80px;
		margin-right: 60px;
	}

	p#contact_email {
		padding: 35px 0 0 80px;
		font-size: 20px;
		background-size: 70px;
		height: 70px;
	}
}

@media screen and (min-width: 1200px) {
	p#contact_phone {
		margin-right: 100px;
	}
}

p#contact_email a {
	color: #000;
	text-decoration: none;
}

p#contact_email a:hover {
	text-decoration: underline;
}

div.gallery {
	float: left;
	width: calc(33.3333% - 6px);;
	height: 100px;
	margin: 0 3px 3px 3px;
}

@media screen and (min-width: 768px) {
	div.gallery {
		height: 200px;
	}
}

p.gallery {
	width: 100%;
	height: 100%;
	margin: 0;
	text-align: center;
}

p.gallery a {
	display: block;
	height: 100%;
	margin: 0 auto;
	text-align: center;
}

p.gallery a img {
	width: 100%;
	object-fit: cover;
	height: 100%;
}

div.gallery span {
	display: none;
	width: 250px;
	text-align: center;
}

form#login_form label {
	clear: left;
	float: left;
	display: block;
	width: 40px;
	margin: 0 0 5px 0;
	line-height: 16px;
}

form#login_form input {
	float: left;
	width: 100px;
	margin: 0 0 5px 0;
	border: 1px solid #d3d3d3;
}

form#login_form input#login_submit {
	clear: left;
	width: 50px;
	cursor: pointer;
}

p.pdf {
	margin-bottom: 2px;
}

p.last {
	margin-bottom: 15px;
}

p#sidebar {
	float: right;
	margin: 112px 0 0 0;
	font-weight: bold;
	line-height: 20px;
}

.hidden {
	display: none;
}

.twocol {
	float: left;
	width: 280px;
	margin: 0 30px;
}

.threecol {
	float: left;
	width: 185px;
	margin: 0 20px;
}

#content .center {
	text-align: center;
}

.buyticket {
	width: 100%;
	margin: 0 0 10px 0;
	background: #d4d4d4;
	color: #000;
}

.buyticket h3 {
	margin: 0 0 10px 0;
	color: #000;
	font-size: 14px;
}

.buyticket h4 {
	margin: 0;
	background-color: #322f31;
	padding: 5px 0;
	font-weight: 400;
	color: #ef9200;
	font-size: 18px;
	text-align: center;
}

.buyticket label {
	font-size: 12px;
	text-align: left;
	display: block;
	font-weight: 600;
}

select#ticket_date {
	width: 100%;
	margin-bottom: 5px;
}

.buyticket select {
	margin: 0 0 2px 0;
	padding: 1px;
	font-size: 12px;
	border: none;
	background-color: #fff;
	border-radius: 0;
}

#ticket_category {
	min-width: 80px;
}

table.cart {
	margin: 0 auto 15px auto;
}

table.cart th {
	background: #d4d4d4;
	padding: 2px 5px;
	text-align: left;
}

table.cart td {
	padding: 2px 5px;
}

table.cart tfoot td {
	padding: 2px 5px;
	background: #d4d4d4;
	color: #000;
	font-weight: bold;
	text-align: center;
}

table.confirm_list {
	width: 100%;
	margin: 0 0 15px 0;
}

table.confirm_list th {
	padding: 5px;
	background: #d4d4d4;
}

table.confirm_list td {
	padding: 2px 5px;
	text-align: center;
}

.error {
	color: #f00;
	font-weight: bold;
}

ul.tabs {
	width: 100%;
	height: 21px;
	margin: 0;
	padding-left: 10px;
	border-bottom: 1px solid #777;
	list-style: none;
}

ul.tabs li {
	float: left;
	margin: 0 10px 0 0;
}

ul.tabs li a {
	display: block;
	height: 17px;
	padding: 3px 10px 0 10px;
	background: #ccc;
	border-top: 1px solid #fff;
	border-right: 0px solid #777;
	border-bottom: 1px solid #777;
	border-left: 0px solid #777;
	text-decoration: none;
	outline: none;
}

ul.tabs li.active a, ul.tabs li a:hover {
	background: #fff;
}

ul.tabs span {
	float: left;
	display: block;
	width: 15px;
	height: 16px;
	margin: 0 5px 0 0;
}

span.not-default-time {
	position: relative;
}

span.not-default-time:after {
	content: '.';
	position: absolute;
	top: -16px;
	left: -2px;
	display: block;
	color: #000;
	font-size: 30px;
}

.calendar-iframe {
	background-color: #fff;
	width: 100%;
	height: 240px;
}

.event-content td strong {
	text-transform: uppercase;
}

table.calendar {
	margin: 0;
	width: 100%;
}

.music-places-links p {
	color: #000;
	font-size: 15px;
	font-weight: 600;
	font-style: italic;
}

.music-places-links p a {
	text-decoration: none;
	color: #000;
	font-weight: normal;
	font-style: normal;
}

@media screen and (min-width: 768px) {
	.events-short-info {
		overflow: hidden;
		position: absolute;
		left: 25px;
		top: 135px;
		display: flex;
		width: calc(30% - 15px);
	}
}

#header_inner {
	height: 200px;
}

@media screen and (min-width: 768px) {
	#header_inner {
		height: 250px;
	}
}

.lang-container {
	overflow: hidden;
}

.sidebar-top-img {
	text-align: center;
	margin-bottom: 10px;
	display: none;
}

@media screen and (min-width: 768px) {
	.sidebar-top-img {
		display: block;
	}
}

.calendar-prev a,
.calendar-next a {
	height: 15px;
	width: 20px;
	display: inline-block;
	vertical-align: middle;
}

.calendar-prev img,
.calendar-next img {
	display: none;
}

.calendar-prev a {
	background-image: url("/images/calendar-arrow-left.png");
	background-position: center center;
	background-repeat: no-repeat;
}

.calendar-next a {
	background-image: url("/images/calendar-arrow-right.png");
	background-position: center center;
	background-repeat: no-repeat;
}

.cart-icon {
	background-image: url("/images/cart-icon.png");
	background-position: center center;
	background-repeat: no-repeat;
	background-size: 20px;
	display: inline-block;
	vertical-align: middle;
	height: 20px;
	width: 20px;
	margin-right: 6px;
	margin-top: 3px;
}

.date-box {
	background-color: #ef9200;
	color: #322f31;
	font-size: 18px;
	padding: 0 5px;
}

.ticket-box {
	background-color: #f6d875;
	color: #322f31;
	padding: 0 5px;
	overflow: hidden;
}

.buyticket label {
	background-image: url("/images/arrow.png");
	background-position: left 5px center;
	background-repeat: no-repeat;
	background-size: 4px;
	padding: 5px 0 5px 15px;
}

.price {
	background-image: url("/images/arrow.png");
	background-position: left 5px center;
	background-repeat: no-repeat;
	background-size: 4px;
	font-size: 12px;
	text-transform: uppercase;
}

.buy-btn {
	display: flex;
	margin-bottom: 5px;
}

#ticket_submit {
	width: 100%;
	border: none;
	background-color: #fff;
	text-transform: uppercase;
	cursor: pointer;
	border-radius: 0;
}

.price-box {
	background-color: #ef9200;
	padding: 0 5px;
	overflow: hidden;
}

.calendar_right p:first-child strong span {
	display: block;
	color: #a2c539;
	font-size: 32px !important;
	font-weight: 600;
	text-align: left;
}

@media screen and (min-width: 768px) {
	.calendar_right p:first-child strong span {
		color: #fff;
		margin: 0 -15px;
		font-size: 21px !important;
		padding: 2px 0;
		text-align: center;
	}
}

.calendar_right p span strong.letter-spacing-text {
	text-transform: uppercase;
	font-weight: 100;
	letter-spacing: 25px;
	font-size: 20px;
	border-bottom: 1px solid #000;
	display: block;
}

.noprint {
	text-align: center !important;
}

.page-title {
	background-color: #6a406c;
	overflow: hidden;
	margin: 0 -15px 10px -15px;
}

.page-title.contact-title {
	background-color: #23408f;
}

.page-title.gallery-title {
	background-color: #ca9428;
}

.page-title.venues-title {
	background-color: #00aeef;
}

.page-title h2 {
	display: inline-block;
	margin: 0 !important;
	padding: 0 30px;
}

.members > div {
	font-weight: bold;
	text-align: center;
	color: #343434;
}

.members p {
	font-weight: bold;
	color: #343434;
}

.members p a {
	color: #00657a;
	font-weight: normal;
}

.download-program {
	margin-top: 20px;
	margin-bottom: 20px;
}

.download-program a {
	border-top: 2px solid #231f20;
	border-bottom: 2px solid #231f20;
	font-weight: lighter;
	color: #343434;
	padding: 5px 0;
	text-decoration: none;
}

.prices-box {
	text-align: center;
	font-size: 12px;
}

.prices-box p:first-child {
	display: block;
	margin-bottom: 5px;
}

.prices-box p {
	color: #030000;
	display: inline;
}

.prices-box p strong {
	color: #d2232a;
}

.prices-box p:last-child {
	display: block;
}


@media screen and (min-width: 768px) {
	.page-title {
		margin: 10px 0;
	}
}

#content .musicians_places h3 {
	padding-left: 40px;
	text-align: left;
	padding-top: 5px;
	padding-bottom: 5px;
	text-transform: uppercase;
}

#content .musicians_places h3,
#content .musicians_places h3 a {
	color: #d2232a !important;
	font-size: 12px !important;
}

@media screen and (min-width: 768px) {
	#content .musicians_places h3 {
		border-bottom: 2px solid #999999;
		min-height: 50px;
	}

	#content .musicians_places h3,
	#content .musicians_places h3 a {
		font-size: 16px !important;
	}
}

.music-places {
	overflow: hidden;
	display: flex;
}

.music-places > .musicians_places:first-child h3 {
	background-image: url("/images/gray-bg-1.png");
	background-position: left top 8px;
	background-repeat: no-repeat;
	background-size: 31px;
	padding-left: 40px;
}

.music-places > .musicians_places:nth-child(2n) h3 {
	background-image: url("/images/gray-bg-2.png");
	background-position: left top 8px;
	background-repeat: no-repeat;
	background-size: 31px;
	padding-left: 40px;
}

.music-places > .musicians_places:nth-child(3n) h3 {
	background-image: url("/images/gray-bg-3.png");
	background-position: left top 8px;
	background-repeat: no-repeat;
	background-size: 31px;
	padding-left: 40px;
}

.top-header-text {
	display: none;
}

#footer {
	width: 100%;
	margin: 0 auto;
	padding: 15px 0;
	background: #fff;
	text-align: right;
}

@media screen and (min-width: 768px) {
	.top-header-text {
		text-align: right;
		display: block;
	}

	.top-header-text img {
		margin-bottom: 10px;
	}

	.container {
		width: 750px;
		margin: 0 auto;
	}

	#footer {
		width: 750px;
		margin: 0 auto;
	}

	#content {
		width: 700px;
		position: relative;
	}

	#header_inner {
		height: 250px;
	}
}

@media screen and (min-width: 1200px) {
	.container {
		width: 915px;
	}

	#footer {
		width: 915px;
	}

	#content {
		width: 865px;
	}
}

.nav-mobile #menu-toggle {
  display: none;
}

#sidenav-toggle,
#calendar-toggle,
.close {
	background: none;
	border: none;
}

.mobile-header {
	background-color: #fff;
	text-align: center;
	padding: 20px 0;
}

@media screen and (min-width: 768px) {
	.mobile-header {
		display: none;
	}

	.close {
		display: none;
	}
}

.mobile-logo {
	max-width: 70px;
	vertical-align: middle;
}

.mobile-text {
	max-width: 155px;
	vertical-align: middle;
	margin: 0 15px;
}

#sidenav-toggle img {
	max-width: 26px;
	vertical-align: middle;
	padding: 1px 2px;
}

#calendar-toggle img {
	max-width: 26px;
	vertical-align: middle;
	padding: 1px 2px;
}

.mobile-cart img {
	max-width: 26px;
	vertical-align: middle;
}

.mobile-concert-place {
	font-size: 24px;
	text-transform: uppercase;
	color: #000;
	text-transform: uppercase;
}

@media screen and (min-width: 768px) {
	.top-events-title-mobile {
		display: none;
	}

	.mobile-concert-place {
		font-size: 21px;
		color: #000;
		text-align: center;
		margin-bottom: 5px;
		letter-spacing: 3px;
	}

	.ct-calendar {
		display: none;
	}

	.mobile-calendar {
		display: none;
	}
}

.ct-sidenav .close img,
.ct-calendar .close img {
	max-width: 30px;
}

#content .musicians_places p {
	color: #000;
	font-style: italic;
	font-weight: 600;
	font-size: 14px;
}

#content .musicians_places p a {
	color: #000;
	text-decoration: none;
	font-weight: normal;
}

.contact-page {
	position: relative;
	padding-top: 30px;
	padding-bottom: 30px;
	text-align: center;
}

.contact-info-box {
	border-top: 2px solid #000;
	padding-top: 10px;
	font-size: 16px;
}

.contact-info-box span {
	border-right: 2px solid #D22D34;
	padding-right: 10px;
	margin-right: 10px;
}

.contact-info-box span:last-child {
	border: none;
	padding-right: 0;
}

.contact-page #sidebar {
	margin: 0;
	float: none;
	position: absolute;
	bottom: -130px;
	width: 100%;
}

.map {
	background-image: url("/images/map-img.png");
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
	height: 70px;
	width: 70px;
	display: block;
	text-align: center;
	margin: 0 auto;
}

.venues-img img {
	float: none;
	margin: 0 0 10px 0;
	max-width: 100%;
	height: auto;
}

.venues-img {
	text-align: center;
}

.venues-column strong.big {
	color: #d2232a;
	font-size: 13px;
	text-transform: uppercase;
}

.address-text {
	color: #000;
	font-style: italic;
	font-weight: bold;
}

.address-text strong {
	color: #000;
}

@media screen and (min-width: 768px) {
	.venues-box {
		margin: 0 -15px;
	}

	.venues-box .text {
		overflow: hidden;
		display: flex;
	}

	.venues-column {
		margin: 15px 0 15px 0;
		padding: 0 15px;
		flex: 1;
	}

	.venues-img {
		text-align: left;
	}

	.venues-img img {
		margin: 0 0 10px 0;
	}

	.map {
		margin: 0;
	}
}

#imageData #caption {
	color: #d2232a;
	font-size: 16px;
	display: block;
	margin-bottom: 15px;
}

#imageData #numberDisplay {
	font-size: 13px;
	color: #343434;
}

.event-content p {
	text-align: center !important;
}

body #overlay {
	height: 100% !important;
}

@media screen and (max-width: 768px) {
	div.gallery:first-child {
		float: none;
		width: 100%;
		height: 300px;
	}

	div.gallery {
		width: calc(50% - 6px);
		height: 200px;
	}

	.contact-info-box span {
		display: block;
		text-align: left;
		border-right: none;
		margin-bottom: 5px;
		padding-left: 5px;
		border-left: 2px solid #D22D34;
	}

	.contact-info-box span:last-child {
		border-left: 2px solid #D22D34;
	}

	.contact-info-box {
		border-top: none;
	}

	.venues-column {
		margin-bottom: 20px;
		position: relative;
	}

	.venues-column::before {
		content: "";
		position: absolute;
		left: -15px;
		bottom: 0;
		height: 4px;
		width: 100px;
		background-color: #d2232a;
		z-index: 2;
	}

	.venues-column::after {
		content: "";
		position: absolute;
		left: -15px;
		bottom: 0;
		height: 4px;
		width: 800px;
		background-color: #00aeef;
	}

	.venues-column:last-child::after,
	.venues-column:last-child::before {
		display: none;
	}

	#content {
		overflow: hidden;
	}

	.calendar_right p:first-child strong span {
		background: none !important;
	}

	#imageDataContainer {
		width: 100% !important;
	}

	#outerImageContainer {
		width: 100% !important;
	}

	body #lightbox img {
		width: 100% !important;
		object-fit: cover;
		height: 340px;
	}

	body #outerImageContainer {
		max-height: 370px;
	}

	#lightbox a img {
		height: auto;
	}

	.hide-xs {
		display: none;
	}

	#content .musicians_places p {
		font-size: 12px;
		text-align: center;
	}

	#header_inner .header-logo img {
		max-height: 150px;
	}

	#header_inner::before {
		position: absolute;
		content: "";
		height: 20px;
		width: 100%;
		left: 0;
		top: 0;
		background: rgba(0, 0, 0, 0.5);
	}

	#header_inner::after {
		position: absolute;
		content: "";
		height: 4px;
		width: 100%;
		left: 0;
		top: 0;
		background: #D2232A;
	}

	body .calendar_right table {
		color: #000;
		margin: 0;
		border-bottom: 1px solid #000;
		padding-bottom: 10px;
		margin-bottom: 10px;
		width: 100% !important;
	}

	.desktop-calendar {
		display: none;
	}

	.events-short-info > div {
		color: #fff;
		background-color: #a2c539;
		display: table-cell;
		text-align: left;
		font-size: 16px;
		max-width: 70px;
		font-weight: 600;
	}

	.events-short-info {
		display: table;
		width: 100%;
		width: calc(100% + 30px);
		left: -15px;
		position: relative;
	}

	.top-events-title-mobile,
	#content h3.black {
		display: table-cell;
		color: #fff;
		text-transform: none;
		font-weight: 600;
	}

	#content h3.black {
		background-color: #a2c539;
	}
	#program_28 h3.black {
		background-color: #faee05;
	}

	#program_28 .events-short-info > div {
		background-color: #faee05;
	}
	.calendar_right #program_28  p:first-child strong span {
		color: #faee05;
	}

	.event-mobile-box {
		display: flex;
		flex-direction: column;
	}

	#event-start {
		order: 2;
	}

	.calendar_right {
		order: 1;
	}

	.top-events-title-mobile {
		margin-bottom: 0 !important;
		font-size: 16px !important;
		font-weight: 600 !important;
		padding: 5px 0;
	}

	.top-events-title {
		display: none;
	}

	.ct-sidenav.open {
	  right: 0;
	}

	.ct-sidenav {
	  width: 343px;
	  height: 100%;
	  position: fixed;
	  z-index: 9990;
	  top: 0;
	  right: -34.3rem;
	  background: #58595B;
	  padding: 75px 0 20px;
	  overflow-x: hidden;
	  overflow-y: auto;
	  -webkit-transition: right 0.25s ease-in-out;
	  transition: right 0.25s ease-in-out;
	  color: #b7b6b6;
	}

	.ct-sidenav .close {
	  position: absolute;
	  top: 25px;
	  right: 25px;
	  text-shadow: none;
	  color: #fff;
	  -webkit-transition: color 0.2s ease-in-out;
	  transition: color 0.2s ease-in-out;
	  opacity: 1;
	  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=100);
	  font-weight: lighter;
	}

	.ct-calendar.open {
	  right: 0;
	}

	.ct-calendar {
	  width: 343px;
	  height: auto;
	  position: fixed;
	  z-index: 9990;
	  top: 80px;
	  right: -34.3rem;
	  background: #58595B;
	  padding: 0 0 45px;
	  overflow-x: hidden;
	  overflow-y: auto;
	  -webkit-transition: right 0.25s ease-in-out;
	  transition: right 0.25s ease-in-out;
	  color: #b7b6b6;
	}

	.ct-calendar .close {
	  position: absolute;
	  top: 25px;
	  right: 25px;
	  text-shadow: none;
	  color: #fff;
	  -webkit-transition: color 0.2s ease-in-out;
	  transition: color 0.2s ease-in-out;
	  opacity: 1;
	  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=100);
	  font-weight: lighter;
	}

	.ct-calendar .calendar-iframe {
		width: 240px;
		height: 240px;
		top: 0;
	}

	.ct-calendar h3 {
		width: 240px;
		background-color: #F04F47;
		text-transform: uppercase;
		text-align: center;
		font-weight: normal;
		color: #fff;
		padding: 5px 0;
	}
}

#webshop_order button[type="submit"] {
	width: 200px;
	padding: 15px 0;
}