/* ########################################################################################################################################################
Default Style 
######################################################################################################################################################## */
@font-face {
  font-family: 'FontAwesome';
  src: url('../fonts/fontawesome-webfont.eot?v=4.0.3');
  src: url('../fonts/fontawesome-webfont.eot?#iefix&v=4.0.3') format('embedded-opentype'), url('../fonts/fontawesome-webfont.woff?v=4.0.3') format('woff'), url('../fonts/fontawesome-webfont.ttf?v=4.0.3') format('truetype'), url('../fonts/fontawesome-webfont.svg?v=4.0.3#fontawesomeregular') format('svg');
  font-weight: normal;
  font-style: normal;
}

/* ########################################################################################################################################################
Default Style 
######################################################################################################################################################## */
html, body {
	margin: 0;
	padding: 0;
	height: 100%;
	/*background-color: rgba(30,30,30,1);*/
	background-color: #ffffff;
}

body {
	font-family: 'Source Sans Pro', sans-serif;
	font-weight: 300;
	font-size: 100%;
	color: #000000;
	-webkit-overflow-scrolling: touch;
	height: 100%;
}

header ,nav ,section ,article ,aside ,footer ,hgroup {
	display: block;
}

body ul {
	margin: 0;
}

h1, h2 {
	margin: 0;
	color: #000000;
}

i {
	font-style: italic;
}

article, aside, details, figcaption, figure, footer, header, hgroup, nav, section {
	display: block;
}

audio[controls], canvas, video {
	display: inline-block;
	*display: inline;
	*zoom: 1;
}

.iframe-wrapper{
	position: relative;
	width: 100%;
	height: 0;
	padding-bottom: 56%;
}

.iframe-wrapper iframe{
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	border: 0;
	margin: 0;
	padding: 0;
}

header {
	padding: 80px 0 84px 0;
}

.menu {
	margin: 0;
	padding: 0;
	list-style: none outside none;
}

.boxshadow {
	-moz-box-shadow:    0 0px 10px 0 rgba(0,0,0,0.1);
	-webkit-box-shadow: 0 0px 10px 0 rgba(0,0,0,0.1); 	/* Android 2.3+, iOS 4.0.2-4.2, Safari 3-4 */
	box-shadow: 		0 0px 10px 0 rgba(0,0,0,0.1); 	/* Chrome 6+, Firefox 4+, IE 9+, iOS 5+, Opera 10.50+ */
}

.sticky {
	position: fixed;
	top: 0;
	z-index: 20;
}

.fixed {
	background-attachment: fixed;
	background-size: 100%;		/* if cover is not supported */
	background-size: cover;
	background-position: center top;
	background-repeat: no-repeat;
	overflow: hidden;
}

#container {
	width: 100%;
	position: relative;
}

.content {
	position: relative;
	z-index: 2;
	/*overflow: hidden;*/
}

.content > .main {
	background-color: #ffffff;
	border-top: 1px solid #ffffff;
	border-bottom: 1px solid #ffffff;
}

.bg {
	position: fixed;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 100%;
	overflow: hidden;
	z-index: -1;
	visibility: hidden;
}

.bg > div {
	height: 100%;
	background-attachment: fixed;
	background-position: center top;
	background-size: cover;
}

.highlight {
	color: rgb(144, 65, 69);
}

a,
a:visited,
a:focus,
a:active {
	color: #000000;
	text-decoration: none;
}

a:hover {
	color: rgb(163, 76, 80);
	
	-webkit-transition: color 0.4s ease;
	-moz-transition: color 0.4s ease;
	-ms-transition: color 0.4s ease;
	-o-transition: color 0.4s ease;
	transition: color 0.4s ease;
}

h1 {
	font-weight: 600;
	font-family: 'Crimson Text', serif;
	font-size: 3.1em; /*2.2em;*/
	text-align: center;
}

h1 a,
h1 a:focus,
h1 a:active,
h1 a:visited,
h1 a:hover {
	color: #000000;
	text-decoration: none;
}

.delimiter2 + nav,
.delimiter2 + div {
	/*background-image: url('../images/delimiter.png');*/
	background-repeat: no-repeat;
	background-position: center top;
	background-size: 92px 1px;
	text-align: center;
}

h1 + .delimiter2 {
	height: 1px;
	background-color: #9c4549;
	display: block;
	width: 92px;
	margin: 2em auto 2.3em auto;
}

h2 {
	font-weight: 300;
	font-size: 1.5em;
	display: inline;
}

h3 {
	font-size: 1.2em;
	margin: 0 0 2em 0;
	font-weight: 700;
	/*text-align: center;*/
}

article p {
	margin: 2em 0;
}

article p:first-child {
	margin-top: 0;
}


/* Language Menu */
#languagemenu {
	font-size: 0.9em;
	position: absolute;
	left: 0; 
	top: 0;
	z-index: 10;
	width: 140px;
	font-size: 14px;
	line-height: 1;
}

#languagemenu li {
	margin: 0;
	float: left;
	width: 70px;
}

#languagemenu li a {
	color: #a5a5a5;
	background-color: rgba(30,30,30,1);

	display: block;
	padding: 26px 0 30px 0;
	width: 70px;
	height: 14px;
	overflow: hidden;
	text-align: center;
	text-transform: uppercase;
	text-decoration: none;
	
	-webkit-transition: all 0.4s ease;
	-moz-transition: all 0.4s ease;
	-ms-transition: all 0.4s ease;
	-o-transition: all 0.4s ease;
	transition: all 0.4s ease;
}

#languagemenu li a:hover,
#languagemenu li a.active {
	/*background-color: rgba(255, 255, 255, 1);*/
	background-color: #9c4549;
}

.ym-gbox {
	margin-left: 0;
	margin-right: 0;
	padding-left: 10px;
	padding-right: 10px;
	padding-bottom: 20px;
	padding: 0 10px 20px 10px !important;
}

/* Menus and Loader */
#mainmenu {
	opacity: 1;
	width: 100%;
}

#mainmenu-helper {
	position: relative;
}

#mainmenu-inner {
	position: relative; /* for the active menu marker */
	height: 70px;
	width: 100%;
	background-color: #1e1e1e;
}

#mainmenu #responsive-menu {
	display: none;
	padding: 23px 0 0 0;
	height: 47px;
}

#mainmenu #responsive-menu .foldout a {
	padding: 0;
	cursor: pointer;
}

#mainmenu #responsive-menu ul {
	text-align: right;
}

#mainmenu #responsive-menu ul li {
	display: inline;
	margin: 0;
	position: relative;
}

#mainmenu #responsive-menu a {
	direction: ltr;
    margin: 0;
    
    /*background-image: url('../images/symbols.png');
    background-position: -15px -257px;*/
    border-bottom: 0px;
    background-repeat: no-repeat;
}

#mainmenu #responsive-menu .foldout a:before {
	content: "\f0c9";
	padding-right: 10px;
	font-family: FontAwesome;
}

#mainmenu #responsive-menu a:hover {
	background-position: -15px -310px;
	
	-webkit-transition: none;
	-moz-transition: none;
	-ms-transition: none;
	-o-transition: all 0 ease;
	transition: none;
}

#mainmenu .ym-wbox > ul.visible{
	display: block !important;
}

#mainmenu .ym-wbox > ul {
	text-align: center;
	display: block;
	padding-top: 23px;
	height: 47px;
	/*overflow: hidden;*/	/* problems in chrome */
}

#mainmenu .ym-wbox > ul li {
	display: inline;
	margin: 0;
	position: relative;
}

#mainmenu a {
	padding: 24px 20px;
	color: #a5a5a5;
	text-decoration: none;
	text-transform: uppercase;
	font-size: 0.9em;
	letter-spacing: 1px;
}

#mainmenu a:hover,
#mainmenu a.active {
	/*color: rgb(163, 76, 80);*/
	color: #ffffff;
	-webkit-transition: color 0.4s ease;
	-moz-transition: color 0.4s ease;
	-ms-transition: color 0.4s ease;
	-o-transition: color 0.4s ease;
	transition: color 0.4s ease;
}

header ul > li {
	display: inline-block;
	margin: 0 8px;
}

header ul > li a {
	padding: 0px 5px;
	color: #000000;
	text-decoration: none;
	cursor: pointer;
}

header ul > li a:hover {
	color: rgb(163, 76, 80);
	-webkit-transition: color 0.4s ease;
	-moz-transition: color 0.4s ease;
	-ms-transition: color 0.4s ease;
	-o-transition: color 0.4s ease;
	transition: color 0.4s ease;	
}

header ul > li.flex-active a {
	font-weight: 700;
}

/* Font Icons */
.fa {
	display: table-cell;
	font-family: FontAwesome;
	font-style: normal;
	font-weight: normal;
	line-height: 1;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	vertical-align: middle;
	text-align: center;
}

.fa-angle-left:before {
  content: "\f104";
}

.fa-angle-right:before {
  content: "\f105";
}

.fa-angle-up:before {
  content: "\f106";
}

.fa-angle-down:before {
  content: "\f107";
}

.fa-close:before {
  content: "×";
}

.fa-youtube:before {
  content: "\f16A";
}

/* Home Content */
#home {
	padding: 0;
	z-index: 3;
}

#homegallery {
	background-image: url('../images/bg_homegallery.jpg');
	background-color: rgb(255, 255, 255);
	background-position: center center;
}

#moveup {
	height: 67px;
	position: absolute;
	top: -100px;
	width: 100%;
}

#moveup > div {
	margin: 0 auto;
	width: 67px;
}

#moveup a {
	height: 63px;
	width: 63px;
	padding: 0;
	direction: ltr;
	color: #ffffff;
	font-size: 21px;
	text-align: center;

    border-radius: 50px 50px 50px 50px;
    border: 2px solid #ffffff;
    
    -webkit-transition: all 0.4s ease;
	-moz-transition: all 0.4s ease;
	-ms-transition: all 0.4s ease;
	-o-transition: all 0.4s ease;
	transition: all 0.4s ease;
}

#moveup a:hover {
	color: #9c4549;
	border: 2px solid #9c4549;
}

.animated{
	-webkit-animation-fill-mode: both;
	-moz-animation-fill-mode: both;
	-ms-animation-fill-mode:both;
	-o-animation-fill-mode:both;
	animation-fill-mode:both;
	-webkit-animation-duration:3s;
	-moz-animation-duration:3s;
	-ms-animation-duration:3s;
	-o-animation-duration:3s;
	animation-duration:3s;

	animation-iteration-count: infinite;
	-webkit-animation-iteration-count: infinite;

	animation-delay: 2s;
	-webkit-animation-delay: 2s;
}

.animated.hinge{
	-webkit-animation-duration:3s;
	-moz-animation-duration:3s;
	-ms-animation-duration:3s;
	-o-animation-duration:3s;
	animation-duration:3s;
}
@-webkit-keyframes bounce {
	0%, 6%, 16%, 26%, 100% {-webkit-transform: translateY(0);}	
	13% {-webkit-transform: translateY(-20px);}
	20% {-webkit-transform: translateY(-10px);}
}

@-moz-keyframes bounce {
	0%, 6%, 16%, 26%, 100% {-moz-transform: translateY(0);}
	13% {-moz-transform: translateY(-20px);}
	20% {-moz-transform: translateY(-10px);}
}

@-o-keyframes bounce {
	0%, 6%, 16%, 26%, 100% {-o-transform: translateY(0);}
	13% {-o-transform: translateY(-20px);}
	20% {-o-transform: translateY(-10px);}
}
@keyframes bounce {
	0%, 6%, 16%, 26%, 100% {transform: translateY(0);}
	13% {transform: translateY(-20px);}
	20% {transform: translateY(-10px);}
}

.bounce {
	-webkit-animation-name: bounce;
	-moz-animation-name: bounce;
	-o-animation-name: bounce;
	animation-name: bounce;
}

#logo {
	text-align: center;
	height: 300px;
	background-color: rgb(255, 255, 255);
}

#logo a {
	display: block;
	width: 300px;
	margin: 0 auto;
}

#logo img {
	display: block;
	height: 187px;
	width: 300px; 
}

.pattern {
	/*background-image: url('../images/pattern.png');*/
	background-repeat: repeat;
}

.pattern-dark {
	/*background-image: url('../images/pattern-dark.png');*/
	background-repeat: repeat;
}

.text {
	line-height: 1.7em !important;
}

/* Vita Content */
#vitagallery {
	background-image: url('../images/bg_vitagallery.jpg');
}

#vita article .text {
	margin-bottom: 90px;
	text-align: justify;
	
	-moz-column-count: 2; 		/* Firefox */
	-webkit-column-count: 2; 	/* Safari and Chrome */
	column-count: 2;
	
	-moz-column-gap: 40px; 		/* Firefox */
	-webkit-column-gap: 40px; 	/* Safari and Chrome */
	column-gap: 40px;
	
	-moz-hyphens: auto;
	-o-hyphens: auto;
	-webkit-hyphens: auto;
	-ms-hyphens: auto;
	hyphens: auto;
}

/* Repertoire Content */
#repertoiregallery {
	background-image: url('../images/bg_repertoiregallery.jpg');
}

#repertoire .swipe-wrap > div {
	background-color: white;
}

#repertoire .entries {
	width: 100%;
	border: 0px;
	margin-bottom: 84px;
}

#repertoire .entry > div {
	float: left;
}

#repertoire .entry > div > div {
	padding: 0 4em 0.7em 0;
	/*text-align: center;*/
}

#repertoire .composer { width: 19%; }
#repertoire .role { width: 23%; }
#repertoire .play { width: 25%; }
#repertoire .location { width: 32%; }

#repertoire .entry > div:last-child div {
	padding: 0 0 0.7em 0;
}

#repertoire .entries > div {
	margin: 0 auto;
}

#repertoire #entries-3 .composer,
#repertoire #entries-4 .composer { width: 28%; }
#repertoire #entries-3 .role,
#repertoire #entries-4 .role { width: auto; }

/* entries-2 */
/*#repertoire .entries > #entries-2 {
	width: 67%;
}

#repertoire .entries > #entries-2 .composer {
	width: 28.358%;
}

#repertoire .entries > #entries-2 .role {
	width: 34.328%;
}

#repertoire .entries > #entries-2 .play {
	width: 27.313%;
}*/

/* Events Content */
#eventsgallery {
	background-image: url('../images/bg_eventsgallery.jpg');
}

#events h3 {
	margin: 0 0 0 0;
	line-height: 1.7em !important;
}

#events p {
	margin: 1em 0 0 0;
	line-height: 1.7em !important;
}

#events .ym-gbox {
	padding: 0 10px 90px 10px !important;
}

.event-items {
	margin: 0 auto !important;
}

.event-items .item {
	width: 300px;
	text-align: center;
}

.past {
	color: #888888;
}

/* Gallery Content */
#gallery .main {
	background-color: #f7f7f7;
}

#gallery .swipe-wrap > div {
	background-color: #f9f5f5;
}

#gallery-list {
	padding-bottom: 98px;
}

.gallery-images {
	margin: 0 auto !important;
}

.gallery-images .item {
	width: 300px;
}

.gallery-images .image {
	position: relative;
	overflow: hidden;
	display: block;
	cursor: pointer;
}

.gallery-images .image .preloader {
	margin: 15px auto;
	width: auto;
	position: relative;
}

.gallery-images .image .preloader div {
	width: 20px;
	height: 7px;
}

.gallery-images .image .preloader span {
	height: 6px;
	width: 6px;
	background: rgb(255, 255, 255);
}

.gallery-images .image .preloader div :nth-child(1) { margin: 0 1px 0 0; }
.gallery-images .image .preloader div :nth-child(2) { margin: 0 1px 0 0; }
.gallery-images .image .preloader div :nth-child(3) { margin: 0 }

.gallery-images .image img {
	display: block;
	width: 100%;
}

.gallery-images .image canvas {
	display: block;
	width: 100% !important;	
	height: 100% !important;
}

.gallery-images .image .border {
	padding: 8px;
	height: 100%;
	width: 100%;
	
	box-sizing: border-box;
	-moz-box-sizing: border-box; /* Firefox */
	
	-webkit-transition: all 0.4s ease;
	-moz-transition: all 0.4s ease;
	-ms-transition: all 0.4s ease;
	-o-transition: all 0.4s ease;
	transition: all 0.4s ease;	
}

.gallery-images .image .border span {
	/*border: 2px solid #ffffff;*/
	display: block;
	height: 100%;
	width: 100%;
	
	box-sizing: border-box;
	-moz-box-sizing: border-box; /* Firefox */
}

.gallery-images .image .description {
	color: rgb(255, 255, 255);
	text-align: center;
	font-weight: 600;
	text-transform: uppercase;
	position: absolute;
	top: 10%;
	width: 100%;
	
	-webkit-transition: all 0.45s ease;
	-moz-transition: all 0.45s ease;
	-ms-transition: all 0.45s ease;
	-o-transition: all 0.45s ease;
	transition: all 0.45s ease;	
}

.gallery-images .image .description .delimiter {
	border-bottom: 1px solid #ffffff;
	display: block;
	margin: 0 auto 36px auto;
	width: 50px;
	
	-webkit-transition: all 0.45s ease;
	-moz-transition: all 0.45s ease;
	-ms-transition: all 0.45s ease;
	-o-transition: all 0.45s ease;
	transition: all 0.45s ease;	
}

.gallery-images .image .description div {
		padding: 0px 20px;
}

.gallery-images canvas {
	position: absolute;
	top: 0;
	left: 0;
	opacity: 0;
	
	-webkit-transition: all 0.4s ease;
	-moz-transition: all 0.4s ease;
	-ms-transition: all 0.4s ease;
	-o-transition: all 0.4s ease;
	transition: all 0.4s ease;	
}

.gallery-images .overlay {
	background-color: rgba(142, 53, 57, 0.85);
    
    opacity: 0;
	position: absolute;
	top: 0;
	width: 100%;
	height: 100%;
	
	-webkit-transition: all 0.4s ease;
	-moz-transition: all 0.4s ease;
	-ms-transition: all 0.4s ease;
	-o-transition: all 0.4s ease;
	transition: all 0.4s ease;
}

/* Hover effects */
.gallery-images .image:hover .zoom,
.gallery-images .image.active .zoom {
	top: 15%;
	opacity: 0;	
}

.gallery-images .image:hover .border,
.gallery-images .image.active .border {
	padding: 8px;
}

.gallery-images .image:hover .description,
.gallery-images .image.active .description {
	top: 0px;
	top: 33%;
	opacity: 1;
}

.gallery-images .image:hover .description .delimiter,
.gallery-images .image.active .description .delimiter {
	margin: 0 auto 18px auto;
}

.gallery-images .image:hover canvas,
.gallery-images .image.active canvas {
	opacity: 1;
}

.gallery-images .image:hover .overlay,
.gallery-images .image.active .overlay {
	opacity: 1;
}

/* Audio Content */
#audiogallery {
	background-image: url('../images/bg_audiogallery.jpg');
}

#audio article .text {
	margin: 0 auto 90px auto;
}

#audio .item .control {
	padding: 9px 0 9px 0;
}

#audio .item .control > * {
	float: left;
	margin: 0 40px 0 0;
}

#audio .item .control > p {
	padding: 3px 0 3px 0;
	height: 26px;
	overflow: hidden;
}

#audio .item .control > p:first-child {
	height: auto;
	padding: 0;
	overflow: auto;
}

#audio .item .time {
	float: right;
	margin: 0;
}

#audio .item .time .active {
	color: rgb(163, 76, 80);
}

#audio .seekbar {
    width: 100%;
    height: 20px;
    position: relative;
    cursor: pointer;
}

#audio .seekbar .track {
	height: 2px;
	width: 100%;
	background-color: #dadada;
	position: absolute;
	z-index: 1;
	left: 0;
	top: 9px;
}

#audio .seekbar .trackProgress {
    width: 0px;
    height: 2px;
    background-color: rgb(163, 76, 80);
	position: absolute;
	z-index: 2;
	left: 0;
	top: 9px;
}

#audio .playpause {
	display: block;
	width: 21px;
	height: 21px;
	margin: 0 40px 0 20px;
	color: #dadada;
    cursor: pointer;
    direction: ltr;
    font-size: 21px;
    padding: 4px 3px 5px 6px;
    
    text-align: center;

    border-radius: 50px 50px 50px 50px;
    border: 2px solid #dadada;
    
   	-ms-transition: none;
	-o-transition: color 0.3s ease, border 0.3s ease;
	-webkit-transition: color 0.3s ease, border 0.3s ease;
	-moz-transition: color 0.3s ease, border 0.3s ease;
	transition: color 0.3s ease, border 0.3s ease;
}

#audio .playpause:hover {
	color: #9c4549;
	border: 2px solid #9c4549;
}

#audio .play:before {
	content: "\f105";
}

#audio .play.youtube:before {
	content: "\f16a";
}

#audio .pause {
	font-size: 15px;
	height: 15px;
	width: 15px;
	padding: 8px 7px 7px 8px;
	letter-spacing: 1px;
	color: #9c4549;
	border: 2px solid #9c4549;
}

#audio .pause:before {
	content: "II";
}

/* Contact Content */
#footer {
	position: relative;
	/*bottom: 0;*/
	z-index: 1;
	width: 100%;
	/*visibility: hidden;*/
}

#imprint {
	display: none;
	height: 100%;
}

#imprint .text {
	padding: 90px 0;
}

#imprint .close {
	top: 10px;
	color: #000000;
}

#imprint .close:hover {
	color: rgb(163, 76, 80);	
}

#contact h3 {
	margin: 0 0 0 0;
	line-height: 1.7em !important;
}

#contact p {
	margin: 1em 0 0 0;
	line-height: 1.7em !important;
}

#contactspacer {
	height: 300px;	/* fallback */
}

#contact .ym-gbox {
	padding: 0 10px 90px 0 !important;
	text-align: center;
}

#contact .main {
	background-color: #f7f7f7;
}

/* ########################################################################################################################################################
Resize
######################################################################################################################################################## */
#holder {
	position: fixed;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
}

#overlay {
	background-color: #ffffff; 
	width: 100%; 
	height: 100%; 
	position: fixed; 
	left: 0; 
	top: 0; 
	display: none;
	z-index: 200;
	overflow: hidden;
}

#overlay .preloader {
	z-index: -1;
}

#close {
	position: absolute;
	z-index: 18;
	top: 0px;
	left: 0;
	width: 100%;
    overflow: hidden;
    padding: 25px 0;
	background-color: #1E1E1E;
}

#close .ym-wbox {
	padding: 0 60px 0 10px;
}

#close p {
	color: #a5a5a5;
	font-size: 0.9em;
}

#close p a{
	color: #a5a5a5;
	text-decoration: underline;
}

#close p a:hover{
	color: white;
}

.close {
	position: absolute;
	z-index: 18;
	right: 10px;
	top: -53px;
	display: block;
	padding: 20px;
	font-size: 21px;
	color: #ffffff;

    cursor: pointer;
    
	-ms-transition: none;
	-o-transition: all 0.3s ease;
	-webkit-transition: all 0.3s ease; 
	-moz-transition: all 0.3s ease; 
	transition: all 0.3s ease;
}

.flexslider:hover .close {
	top: 2px;
}

/* ########################################################################################################################################################
Masonry
######################################################################################################################################################## */

.masonry,
.masonry .masonry-brick {
  -webkit-transition-duration: 0.7s;
     -moz-transition-duration: 0.7s;
      -ms-transition-duration: 0.7s;
       -o-transition-duration: 0.7s;
          transition-duration: 0.7s;
}

.masonry {
  -webkit-transition-property: height, width;
     -moz-transition-property: height, width;
      -ms-transition-property: height, width;
       -o-transition-property: height, width;
          transition-property: height, width;
}

.masonry .masonry-brick {
  -webkit-transition-property: left, right, top;
     -moz-transition-property: left, right, top;
      -ms-transition-property: left, right, top;
       -o-transition-property: left, right, top;
          transition-property: left, right, top;
}

/* ########################################################################################################################################################
Flexslider
######################################################################################################################################################## */

/*********************************
Swipe
*********************************/ 
.swipe .slides > li {
	background-image: none !important;
}

.swipe {
  overflow: hidden;
  position: relative;
}

.swipe-wrap {
  overflow: hidden;
  position: relative;
}

.swipe .slides > li { 
	margin: 0;
	display: none;
	-webkit-backface-visibility: hidden; 
	min-height: 200px;
	position: relative;
} /* Hide the slides before the JS is loaded. Avoids image jumping */

/* Clearfix for the .slides element */
.swipe .slides:after {content: "."; display: block; clear: both; visibility: hidden; line-height: 0 !important; height: 0;} 
html[xmlns] .swipe .slides {display: block;}
* html .swipe .slides {height: 1%;}

/* No JavaScript Fallback */
/* If you are not using another script, such as Modernizr, make sure you
 * include js that eliminates this class on page load */
.no-js .swipe .slides > li:first-child {display: block;}

.swipe .flex-viewport {
	-ms-transition: none;
	-o-transition: all 1s ease;
	-webkit-transition: all 1s ease; 
	-moz-transition: all 1s ease; 
	transition: all 1s ease;
}

.swipe .loading .flex-viewport { max-height: 300px; }

/*********************************
Gallery Flexslider
*********************************/ 
.flexslider { padding: 0; margin: 0; position: relative; }

.flexslider .slides {
	height: 100%;
	padding: 90px 0 50px 0;
	box-sizing: border-box;
	-moz-box-sizing: border-box; /* Firefox */
}

.flexslider .slides > li { 
	margin: 0;
	-webkit-backface-visibility: hidden;
	height: 100%;
	position: relative;
	display: none;
	text-align: center;
	overflow: hidden;
} /* Hide the slides before the JS is loaded. Avoids image jumping */

.flexslider .slides img { 
	display: inline-block; 
	max-width: 100%;
	max-height: 100%;
	vertical-align: middle;
	height: auto;
	display: none;
}
.flexslider .flex-pauseplay span { text-transform: capitalize; }

/* Clearfix for the .slides element */
.flexslider .slides:after {content: "."; display: block; clear: both; visibility: hidden; line-height: 0 !important; height: 0;} 
html[xmlns] .flexslider .slides {display: block;}
* html .flexslider .slides {height: 1%;}

/* No JavaScript Fallback */
/* If you are not using another script, such as Modernizr, make sure you
 * include js that eliminates this class on page load */
.no-js .flexslider .slides > li:first-child {display: block;}

.flexslider .flex-viewport {
	position: absolute !important;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
	margin: 90px 0 50px 0;
	
	-ms-transition: none;
	-o-transition: all 1.5s ease;
	-webkit-transition: all 1.5s ease; 
	-moz-transition: all 1.5s ease; 
	transition: all 1.5s ease;
}

.flexslider .loading .flex-viewport {
	max-height: 300px;
}

.flexslider .carousel li {
	margin-right: 5px
}

/* Direction Nav */
.flexslider .flex-direction-nav {
	*height: 0;
	list-style: none;
}
.flexslider .flex-direction-nav a {
	height: 21px;
	width: 21px;
	padding: 22px 22px 24px 24px;
	margin: -20px 0 0;
	font-size: 21px;
	border-radius: 50px 50px 50px 50px;
	background-color: rgba(30, 30, 30, 0.9);
	
	position: absolute; 
	top: 50%; 
	z-index: 10; 
	cursor: pointer; 
	opacity: 0; 

	-ms-transition: none;
	-o-transition: all 0.4s ease;
	-webkit-transition: all 0.4s ease; 
	-moz-transition: all 0.4s ease; 
	transition: all 0.4s ease;
	
	display: table-cell;
	font-family: FontAwesome;
	font-style: normal;
	font-weight: normal;
	line-height: 1;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	vertical-align: middle;
	text-align: center;
}

.flexslider .flex-direction-nav .flex-next {
	/*background-position: 0 -53px;*/
	right: -173px;
	color: white;
}

.flexslider .flex-direction-nav .flex-next:before {
  content: "\f105";
}

.flexslider .flex-direction-nav .flex-prev {
	left: -173px;
	padding: 22px 23px 24px 23px;
	color: white;
}

.flexslider .flex-direction-nav .flex-prev:before {
  content: "\f104";
}

.flexslider:hover .flex-next {
	opacity: 1; right: 20px;
}

.flexslider:hover .flex-prev {
	opacity: 1; left: 20px;
}

.flexslider:hover .flex-next:hover, .flexslider:hover .flex-prev:hover {
	background-color: rgba(156,69,73,0.9)
}

.flexslider .flex-direction-nav .flex-disabled {
	opacity: .3!important; 
	filter:alpha(opacity=30); 
	cursor: default;
}
.flexslider .flex-direction-nav .flex-disabled:hover { 
	background-color: rgba(30, 30, 30, 0.9) !important; 
}

/* Control Nav */
.flexslider .flex-control-nav {
	width: 100%; 
	position: absolute; 
	bottom: 10px; 
	text-align: center;
	margin: 0;
}

.flexslider .flex-control-nav li {
	margin: 0 6px; 
	display: inline-block; 
	zoom: 1; 
	*display: inline;
}

.flexslider .flex-control-paging li a {
	width: 14px; 
	height: 14px; 
	display: block; 
	background: rgba(0,0,0,0.3); 
	cursor: pointer; 
	text-indent: -9999px; 
	-webkit-border-radius: 50px; 
	-moz-border-radius: 50px; 
	-o-border-radius: 50px; 
	border-radius: 50px;
}
.flexslider .flex-control-paging li a:hover { 
	background-color: rgba(156,69,73,0.9) 
}

.flexslider .flex-control-paging li a.flex-active { 
	background: rgba(30, 30, 30, 0.9); cursor: default; 
}

.flexslider .flex-control-thumbs {
	margin: 5px 0 0; 
	position: static; 
	overflow: hidden;
}

.flexslider .flex-control-thumbs li {
	width: 25%; 
	float: left; 
	margin: 0;
}

.flexslider .flex-control-thumbs img {
	width: 100%; 
	display: block; 
	opacity: .7; 
	cursor: pointer;
}

.flexslider .flex-control-thumbs img:hover {
	opacity: 1;
}

.flexslider .flex-control-thumbs .flex-active {
	opacity: 1; cursor: default;
}

/*@media screen and (max-width: 740px) {
	.flexslider .flex-direction-nav .flex-prev {
		opacity: 1; left: 20px;
	}
  
	.flexslider .flex-direction-nav .flex-next {
		opacity: 1; right: -20px;
	}
}

@media screen and (max-width: 480px) {
	.flexslider .flex-direction-nav .flex-prev {
  		opacity: 0;
  		display: none;
  	}
  
  	.flexslider .flex-direction-nav .flex-next {
	  	opacity: 0;
	  	display: none;
	}
}*/

.flexslider .flex-caption {
	display: none;
	margin: 0;
}

/* END required styles */

#pageloader {
	/*display: none;*/
	position: fixed;
	background-color: #ffffff;
	top: 0;
	left: 0;
	z-index: 999;
	height: 100%;
	width: 100%;
}

@keyframes fadeOut {
  0% { opacity: 1; }
  100% { opacity: .1; }
}

@-webkit-keyframes fadeOut {
  0% { opacity: 1; }
  100% { opacity: .1; }
}

.preloader {
	position: absolute;
	overflow: hidden;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	text-indent: -999em;
}

.preloader div {
	width: 77px;
	height: 21px;
	margin: 0 auto;
	position: relative;
	text-indent: 0;
	line-height: 1px !important;
}

.preloader span {
	width: 21px;
	height: 21px;
	display: inline-block;
	background: rgb(0,0,0);
	-webkit-border-radius: 50px;
	-moz-border-radius: 50px;
	border-radius: 50px;
	opacity: .1;
	animation: fadeOut 2.6s linear infinite;
	-webkit-animation: fadeOut 2.6s linear infinite;
}	
  
.preloader div :nth-child(1) {
	margin: 0 7px 0 0;
	animation-delay: 0s;
	-webkit-animation-delay: 0s;
}

.preloader div :nth-child(2) {
	margin: 0 7px 0 0;
	animation-delay: .600s;
	-webkit-animation-delay: .600s;
}

.preloader div :nth-child(3) {
	margin: 0;
	animation-delay: 1.2s;
	-webkit-animation-delay: 1.2s;
}

#pageloader .preloader {
	display: none;
}