a { color: #e20078; }

body { font-family: 'Open Sans', sans-serif; color: #444 }

h1, h2, h3, h4 { font-family: 'Roboto Slab', serif; color: #e20078 }

.lazy { filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=0); opacity: 0; -moz-transition: opacity 1s; -o-transition: opacity 1s; -webkit-transition: opacity 1s; transition: opacity 1s; }
.lazy.displayed { filter: progid:DXImageTransform.Microsoft.Alpha(enabled=false); opacity: 1; }

.img-responsive { display: block; margin: 0 auto; }

.my-btn { display: inline-block; font-weight: bold; color: #e20078; border: 2px solid #e20078; border-radius: 3px; padding: 10px 20px; text-transform: uppercase; background-color: transparent }

.btn1, .btn2 { display: inline-block; height: 40px; line-height: 40px; word-wrap: none; padding: 0 25px; color: #fff; font-size: 1.125em; font-family: 'Roboto Slab', serif; font-style: italic; -moz-border-radius: 5px; -webkit-border-radius: 5px; border-radius: 5px; border: 1px outset; background-image: url(/images/btn_overlay.png); }
.btn1:hover, .btn2:hover { color: #fff; }
.btn1 { text-shadow: #88290e 1px 1px 0; background-color: #e0501f; border-color: #88290e; }

.form-control { background-color: #f4f4f4; border: none; -moz-border-radius: 0; -webkit-border-radius: 0; border-radius: 0; -moz-box-shadow: none; -webkit-box-shadow: none; box-shadow: none; height: 42px; line-height: 1.42857; padding: 6px 12px; }

.resp-photo { margin: 0px auto; display: block }
.resp-photo .inner { position: relative }
.resp-photo img, .resp-photo .lazy { position: absolute; width: 100%; height: 100%; background-size: contain; background-position: center; background-repeat: no-repeat }

.zig-zag .photo { margin-top: 40px }
.zig-zag .odd .text { text-align: right }
.zig-zag .resp-photo { margin: 0px auto !important }
.zig-zag .resp-photo .inner:before {
	content: '';
	position: absolute;
	bottom: 0px;
	left: 30px;
	width: 0;
	height: 0;
	border-left: 10px solid transparent;
	border-right: 10px solid transparent; 
	border-bottom: 10px solid white;
	z-index: 1
}
.zig-zag .odd .resp-photo .inner:before {
	left: auto;
	right: 30px
}

#main-navbar { background-color: #890650; margin-bottom: 0px }
#main-navbar a { color: #fef2f8; }
#main-navbar .navbar-toggle { border-color: #ccc; }
#main-navbar .navbar-toggle span { background-color: #ccc; }
#main-navbar .navbar-brand img { height: 30px; margin-top: -5px }
#main-navbar .navbar-collapse .nav:first-child .social a { background-image: url(/images/sprites.png); background-repeat: no-repeat; display: inline-block; margin: 0px 0px 0px 15px; vertical-align: middle; padding: 0px }
#main-navbar .navbar-collapse .nav:first-child .social .facebook { width: 8px; height: 17px }
#main-navbar .navbar-collapse .nav:first-child .social .twitter { width: 19px; height: 17px; background-position: -8px 0px }
#main-navbar .navbar-collapse .nav:first-child .social .google-plus { width: 20px; height: 18px; background-position: -27px 0px }
#main-navbar .navbar-collapse .nav:first-child .social .you-tube { width: 23px; height: 21px; background-position: -47px 0px }
#main-navbar .active a { color: #e20078 !important }

#footer { background-color: #e20078; padding: 38px 0px; margin-top: 60px }
#footer .links a { margin-right: 15px; color: #fff; font-size: 0.875em }
#footer .text { margin-right: 15px; margin-top: 15px; color: #fce5f1; font-size: 0.8em }


#carousel .photo { height: 650px; background-size: cover; background-position: center; background-repeat: no-repeat; position: relative }
#carousel.inner .photo { height: 300px }

#home .venue { color: #fff; position: relative }
#home .venue h1 { color: #fff; margin: 10px 0px }
#home .venue a { color: #fff; border-color: #fff }
#home .venue .price { font-size: 1.8em; margin: 15px 0px 10px 0px }
#home .venue .photo { background-repeat: no-repeat; background-position: center; background-size: cover; position: absolute; width: 100%; height: 100% }
#home .venue .content { position: relative; padding: 35px 15px }

#home .top-studios .resp-photo { margin: 40px auto 0px auto; max-width: 600px }
#home .top-studios .resp-photo .inner { padding-bottom: 66.57% }
#home .top-studios h2 { font-size: 1em; font-family: 'Open Sans', sans-serif; color: #444; font-weight: bold; margin: 20px 0px 0px 0px }
#home .misc .video { position: relative; padding-bottom: 56.26%; margin: 25px 0px; text-align: left }
#home .misc .resp-photo { margin: 25px auto; text-align: left; max-width: 359px }
#home .misc .resp-photo .inner { padding-bottom: 56.26% }
#home .misc h3 { margin-top: 40px }
#home .misc .text { font-size: 0.9375em }
#home .sponsors { background-color: #fef2f8; padding: 30px 0px; margin-bottom: -60px }
#home .sponsors a { margin: 0px 15px }

#contact .social { margin-top: 40px }
#contact .social a { display: inline-block; width: 59px; height: 59px; background: url(/images/sprites.png) top left no-repeat; margin-right: 12px }
#contact .social .facebook { background-position: 0px -21px }
#contact .social .twitter { background-position: -59px -21px }
#contact .social .google-plus { background-position: -118px -21px }
#contact .social .you-tube { background-position: -177px -21px }
#contact form label { font-weight: normal }
#contact form label span { color: #e20078 }

#congress .resp-photo { margin: 5px 0px; max-width: 800px }
#congress .resp-photo .inner { padding-bottom: 66.57% }
#congress misc .video { position: relative; padding-bottom: 100%; margin: 25px 0px; text-align: left  }

#congress .video { position: relative; padding-bottom: 56.26%; cursor: pointer }
#congress .video iframe { position: absolute; display: block; width: 100%; height: 100% }
#congress .video .lazy { position: absolute; width: 100%; height: 100%; background-size: cover; background-position: center; background-repeat: no-repeat }
#congress .video .lazy:before { content: ''; display: block; height: 100%; background: url(/images/youtube_play.png) center no-repeat; background-color: rgba(0, 0, 0, .5) }

#about .resp-photo { margin: 20px 0px; max-width: 600px }
#about .resp-photo .inner { padding-bottom: 100% }

#previous-events .resp-photo { margin: 20px 0px; max-width: 600px }
#previous-events .resp-photo .inner { padding-bottom: 66.57% }
#previous-events .video { position: relative; padding-bottom: 56.26%; cursor: pointer }
#previous-events .video iframe { position: absolute; display: block; width: 100%; height: 100% }
#previous-events .video .lazy { position: absolute; width: 100%; height: 100%; background-size: cover; background-position: center; background-repeat: no-repeat }
#previous-events .video .lazy:before { content: ''; display: block; height: 100%; background: url(/images/youtube_play.png) center no-repeat; background-color: rgba(0, 0, 0, .5) }

#officials .resp-photo { margin: 20px 0px; max-width: 600px }
#officials .resp-photo .inner { padding-bottom: 100% }
#officials .text-left { text-align: left; padding-left:15px; }

@media (min-width: 768px) {
	body: { padding-top: 35px }
	
	.zig-zag .resp-photo { margin: 0px !important }
	.zig-zag .row { position: relative  }
	.zig-zag .photo { padding-right: 0px; margin-top: 0px }
	.zig-zag .text { padding-left: 30px; position: absolute; top: 50%; -ms-transform: translateY(-50%); -webkit-transform: translateY(-50%); transform: translateY(-50%); right: 0px }
	.zig-zag .odd .photo { float: right; padding-right: 15px; padding-left: 0px }
	.zig-zag .odd .text { padding-left: 15px; padding-right: 30px; right: auto }
	.zig-zag .resp-photo .inner:before {
		left: auto;
		right: 0px;
		top: 50%;
		-ms-transform: translateY(-50%); -webkit-transform: translateY(-50%); transform: translateY(-50%);
		border-top: 10px solid transparent;
		border-bottom: 10px solid transparent; 
		border-right: 10px solid white;
		border-left: none;
	}
	.zig-zag .odd .resp-photo .inner:before {
		left: 0px;
		right: auto;
		border-left: 10px solid white;
		border-right: none;
	}

	#main-navbar { border-radius: 0px; height: 35px; min-height: 35px; z-index: 1; position: absolute; width: 100% }
	#main-navbar .navbar-brand { position: absolute; top: 50px; padding: 0px 0px 0px 15px }
	#main-navbar .navbar-brand img { height: 40px; margin: 0px }
	#main-navbar .navbar-collapse .nav:first-child .social a { margin-left: 10px }

	#main-navbar .navbar-collapse .nav:first-child { margin: 7px 0px 0px 0px }
	#main-navbar .navbar-collapse .nav:first-child a { padding: 0px; margin: 0px 5px; font-size: 0.8125em }
	#main-navbar .navbar-collapse .nav:first-child .social { margin-top: -3px }
	
	#main-navbar .navbar-collapse .nav:last-child { margin-top: 58px }
	#main-navbar .navbar-collapse .nav:last-child a { padding: 0px; margin: 0px 6px; color: #fff; font-family: 'Roboto Slab', serif }
	#main-navbar .navbar-collapse .nav:last-child .imp { padding: 12px; background-color: #e20078; margin: -12px 0px 0px 12px; border-radius: 3px; color: #fff !important }

	#main-navbar a:hover { background-color: transparent; color: #e20078 !important }
	
	#carousel { margin-bottom: 50px }
	#carousel.inner .photo { height: 415px }
	#carousel .photo:before { content: ''; background: url(/images/carousel_overlay.png) top repeat-x; position: absolute; width: 100%; height: 100% }
	#carousel .carousel-caption { bottom: 60px }
	#carousel .carousel-caption h3 { font-size: 3em; font-weight: bold; margin-bottom: 0px; color: #fff }
	#carousel .carousel-caption p { font-size: 3em; margin-bottom: 30px }
	#carousel .carousel-caption a { color: #fff }
}

@media (min-width: 992px) {
	#main-navbar .navbar-brand { top: 73px }
	#main-navbar .navbar-brand img { height: 55px }
	#main-navbar .navbar-collapse .nav:last-child a { font-size: 1.1em }
}

@media (min-width: 1200px) {
	body { font-size: 16px; }

	#main-navbar .navbar-brand img { height: auto; }
	#main-navbar .navbar-collapse .nav:first-child a { margin: 0px 10px }
	#main-navbar .navbar-collapse .nav:last-child a { margin: 0px 12px; font-size: 1.125em }
}
