#countdown-container {
    background: #f1f1f1 url(../images/countdown-background.jpg) no-repeat center center;
    border-bottom: 1px solid #ddd;
    padding: 15px;
}

#countdown-container h4 {
    margin: 0 0 15px 0;
    color: #444;
    color: #FFF;
    text-shadow: 5px 5px 12px #000;
    font-size: 20px;
}

#countdown {
	border: 1px solid #ccc;
	border-radius: 5px;
	box-shadow: 0px 10px 15px -10px rgba(0,0,0,0.5);
	overflow: hidden;
}

#countdown > div {
	border-right: 1px solid #ccc;
	padding-top: 10px;
	padding-bottom: 40px;
	background: #FFF;
	background: rgba(255,255,255,1);
	-webkit-transition: background 0.25s;
	-moz-transition: background 0.25s;
	-ms-transition: background 0.25s;
	-o-transition: background 0.25s;
	transition: background 0.25s;
}

#countdown > div p.lbl {
	display: block;
	position: absolute;
	background: #f1f1f1;
	left: 0;
	right: 0;
	bottom: 0;
	height: 30px;
	line-height: 30px;
	border-top: 1px solid #ccc;
	margin: 0;
	-webkit-transition: background 0.25s;
	-moz-transition: background 0.25s;
	-ms-transition: background 0.25s;
	-o-transition: background 0.25s;
	transition: background 0.25s;
	text-shadow: 1px 1px 1px #FFF;
}

#countdown > div:hover p.lbl {
	background: #ddd;
}

#countdown > div:hover {
	background: #FFF;
	background: rgba(255,255,255,0.9);
}

#countdown > div:last-of-type {
	border-right: none;
}

#countdown-container .row-btn {
	margin-top: 20px;
}

body.booking #countdown-container .row-btn a.btn {
	display: none;
}

#countdown .digit {
	font-size: 30px;
	font-weight: bold;
	text-shadow: 2px 2px 5px rgba(0,0,0,0.20);
	margin: 0;
}

#sponsors h4,
.sponsors-large h4 {
	text-align: center;
	position: relative;
	margin-bottom: 30px;
}

#sponsors h4:before,
.sponsors-large h4:before {
	background: #ccc;
	position: absolute;
	top: 50%;
	left: 0;
	right: 0;
	height: 1px;
	content: ' ';
	display: block;
	z-index: 1;
}

#sponsors h4 span,
.sponsors-large h4 span {
	padding: 0 10px;
	background: #FFFFFF;
	position: relative;
	display: inline-block;
	z-index: 2;
}

#sponsors .sponsor-item,
.sponsors-large .sponsor-item {
	margin-bottom: 30px;
}

.sponsors-large .sponsor-item {
	float:none;
	display: inline-block;
	vertical-align: top;
}

#sponsors .sponsor-item img,
.sponsors-large .sponsor-item img {
	margin: auto;
	-webkit-transition: -webkit-transform 0.5s;
	-moz-transition: -moz-transform 0.5s;
	-o-transition: -o-transform 0.5s;
	transition: transform 0.5s;
}

#sponsors .sponsor-item img:hover {
	-webkit-transform: scale(1.1);
	-moz-transform: scale(1.1);
	-o-transform: scale(1.1);
	transform: scale(1.1);
}

#sponsors .sponsor-group {
	margin-bottom: 30px;
}

#page-content img.pull-left,
.editable img.pull-left {
	margin: 0 15px 15px 0;
}

#page-content img.pull-right,
.editable img.pull-right {
	margin: 0 0 15px 15px;
}

#homepage-banner {
	margin-bottom: 30px;
	position: relative;
	box-shadow: 0px 10px 15px -10px rgba(0,0,0,0.4);
	overflow: hidden;
}

#homepage-banner .caption,
#homepage-banner .timestamp {
	position: absolute;
	-webkit-transition: left 0.5s, right 0.5s;
	-moz-transition: left 0.5s, right 0.5s;
	-0-transition: left 0.5s, right 0.5s;
	transition: left 0.5s, right 0.5s;
}

#homepage-banner.top-left .caption,
#homepage-banner.bottom-right .timestamp {
	top: 15px;
	left: -100%;
	text-align: left;
}

#error-page-container span.icon {
	font-size:364px; 
	color:#ddd;
	-webkit-transition: color 0.25s;
	-moz-transition: color 0.25s;
	-ms-transition: color 0.25s;
	-o-transition: color 0.25s;
	transition: color 0.25s;
}

#error-page-container span.icon:hover {
	-webkit-transition: color 30s;
	-moz-transition: color 30s;
	-ms-transition: color 30s;
	-o-transition: color 30s;
	transition: color 30s;
	color:#ef8700;
}

body.window-loaded #homepage-banner.top-left .caption,
body.window-loaded #homepage-banner.bottom-right .timestamp {
	left: 0;
}

#homepage-banner.top-right .caption,
#homepage-banner.bottom-left .timestamp {
	top: 15px;
	right: -100%;
	text-align: right;
}

body.window-loaded #homepage-banner.top-right .caption,
body.window-loaded #homepage-banner.bottom-left .timestamp {
	right: 0;
}

#homepage-banner.bottom-left .caption,
#homepage-banner.top-right .timestamp {
	bottom: 15px;
	left: -100%;
	text-align: left;
}

body.window-loaded #homepage-banner.bottom-left .caption,
body.window-loaded #homepage-banner.top-right .timestamp {
	left: 0;
}

#homepage-banner.bottom-right .caption,
#homepage-banner.top-left .timestamp {
	bottom: 15px;
	right: -100%;
	text-align: right;
}

body.window-loaded #homepage-banner.bottom-right .caption,
body.window-loaded #homepage-banner.top-left .timestamp {
	right: 0;
}

#homepage-banner .caption > span,
#homepage-banner .timestamp {
	background: rgba(0,0,0,0.5);
	padding: 10px;
	font-size:25px;
	line-height: 25px;
	color: #FFFFFF;
	display: inline-block;
}

#homepage-banner img {
	display: block;
	width: 100%;
	height: auto;
}

.btn-contact-social {
	text-align: left;
}

.btn-contact-social .fa {
	padding-right: 8px;
	border-right: 1px solid #ccc;
	line-height: 22px;
	margin-right: 8px;
}

body.home #venue-container {
	position: relative;
	margin-bottom: 15px;
}

body.home #homepage-cta-buttons {
	padding: 15px 0;
}

body.home #google-map-container {
	position: absolute;
	right: 0;
	top: 0px;
	bottom: 0px;
}

body.home #google-map {
	position: absolute;
	border: 1px solid #ddd;
	right: 0px;
	top: 0;
	bottom: 0;
	left: 15px;
}

body.booking .ticket-tracks {
	position: relative;
}

body.booking .ticket-tracks.disabled {
	opacity: 0.5;
}

body.booking .ticket-tracks.disabled .cover {
	z-index:1;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
}

#event-schedule {
	margin-bottom: 30px;
}

#event-schedule > .row {
	border-bottom: 1px solid #ccc;
	padding-bottom: 15px;
	padding-top: 15px;
}

#event-schedule > .row.generic {
	background: #ef8700;
	color: #FFF;
	border-bottom: 1px solid #AA6B1A;
}

#event-schedule .row.speaker .description h4 {
	border-top: 1px solid #ccc;
	padding-top: 10px;
	margin-top: 10px;
	margin-bottom: 10px;
}

#event-accommodations {
	margin-bottom: 30px;
}
#event-accommodations > .row {
	position: relative;
	padding-left: 75px;
	padding-top: 15px;
	padding-bottom: 15px;
	border-bottom: 1px solid #ccc;
}

#event-accommodations > .row .address address {
	margin-bottom: 0;
}

#event-accommodations > .row .map-marker {
	position: absolute;
	left: 15px;
	top: 15px;
}

body.accommodation #google-map {
	height: 400px;
	margin-bottom: 15px;
	border: 1px solid #ddd;
	box-shadow: 0px 10px 15px -10px rgba(0,0,0,0.4);
}

#accomodation-map-info-window {
	margin: 0;
	min-width: 500px;
}

#ticket-counter {
	width: 130px;
}

#ticket-counter input[type=text] {
	text-align: center;
}

#tickets-container .ticket .panel-heading {
	overflow:hidden;
	position: relative;
}

#tickets-container .ticket {
	overflow: hidden;
}

.ticket .btn-remove-prompt {
	position: absolute;
	top: 8px;
	right: 15px;
	-webkit-transition: opacity 0.5s;
	-moz-transition: opacity 0.5s;
	-0-transition: opacity 0.5s;
	transition: opacity 0.5s;
}

.ticket .remove-prompt {
	position: absolute;
	top: 0;
	right: -260px;
	bottom: 0;
	width: 255px;
	border-left: 1px solid #ddd;
	box-shadow: inset 6px 5px 15px -5px rgba(0,0,0,0.5);
	background: #888888;
	background: -moz-linear-gradient(top, #888888 0%, #b5b5b5 100%);
	background: -webkit-linear-gradient(top, #888888 0%,#b5b5b5 100%);
	background: linear-gradient(to bottom, #888888 0%,#b5b5b5 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#888888', endColorstr='#b5b5b5',GradientType=0 );
	-webkit-transition: right 0.5s;
	-moz-transition: right 0.5s;
	-0-transition: right 0.5s;
	transition: right 0.5s;
	overflow: hidden;
}

.ticket .remove-prompt > span {
	line-height: 40px;
	padding: 0 0 0 15px;
	color: #fff;
	font-weight: bold;
	font-size: 12px;
	text-shadow: 2px 2px 2px rgba(0,0,0,0.3);
	min-width: 110px;
	display: inline-block;
	opacity:0;
	-webkit-transition: opacity 1s;
	-moz-transition: opacity 1s;
	-0-transition: opacity 1s;
	transition: opacity 1s;
}

.ticket .remove-prompt .btn {
	padding-left:20px;
	padding-right:20px;
	opacity:0;
	-webkit-transition: opacity 1s;
	-moz-transition: opacity 1s;
	-0-transition: opacity 1s;
	transition: opacity 1s;
}

.ticket .remove-prompt .btn span.pc {
display: inline;
}

.ticket .remove-prompt .btn span.mob {
display: none;
}

.ticket.ticket-remove .remove-prompt > span,
.ticket.ticket-remove .remove-prompt .btn {
	opacity:1;
}

.ticket.ticket-remove .btn-remove-prompt {
	opacity: 0;
}

.ticket.ticket-remove .remove-prompt {
	right: 0px;
}

#tickets-container.ticket-remove-disabled .ticket .btn-remove-prompt {
	opacity: 0;
	right: -200px;
}

#header #main-nav-mobile-backdrop {
	display: none;
	opacity: 0;
}

/*==================================================
=            Bootstrap 3 Media Queries             =
==================================================*/

/*==========  Mobile First Method  ==========*/

/* Custom, iPhone Retina */ 
@media only screen and (min-width : 320px) {

}

/* Extra Small Devices, Phones */ 
@media only screen and (min-width : 480px) {

}

/* Small Devices, Tablets */
@media only screen and (min-width : 768px) {

}

/* Medium Devices, Desktops */
@media only screen and (min-width : 992px) {

}

/* Large Devices, Wide Screens */
@media only screen and (min-width : 1200px) {

}

/*==========  Non-Mobile First Method  ==========*/

/* Medium Devices, Desktops */
@media only screen and (max-width : 1400px) {
	#countdown-container {
	    background: #f1f1f1 url(../images/countdown-background-md-lg.jpg) no-repeat center center;
	}

}

/* Large Devices, Wide Screens */
@media only screen and (max-width : 1200px) {
	#header #main-nav a {
		padding: 0 12px;
	}
	#event-accommodations abbr {
		display: none;
	}
	#countdown-container {
	    background: #f1f1f1 url(../images/countdown-background-md.jpg) no-repeat center center;
	}
}

/* Medium Devices, Desktops */
@media only screen and (max-width : 992px) {
	#countdown-container {
	    background: #f1f1f1 url(../images/countdown-background-sm.jpg) no-repeat center center;
	}
	#event-accommodations abbr {
		display: none;
	}

	#header #main-nav a {
		padding: 0 15px;
	}

	#header .btn.toggle-mobile-nav {
		width: 50px;
		height: 50px;
		margin-top: 10px;
		line-height: 45px;
		background: transparent;
		border: 1px solid #f1f1f1;
		color: #f1f1f1;
	}

	#header .btn.toggle-mobile-nav span {
		font-size: 160%;
	}

	#header #main-nav {
		display: block;
		position: fixed;
		top: 71px;
		background: #f1f1f1;
		border-left: 1px solid #ccc;
		right: 0;
		bottom: 0;
		width: 40%;
		overflow-y:auto;
		overflow-x:hidden;
		z-index: 2;
		margin-right: -41%;
	}

	#header #main-nav > a {
		display: block;
		border-bottom: 1px solid #ccc;
		color: #326690;
	}

	#header #main-nav > a:hover {
		background: #ddd;
		color: #326690;
	}

	#header #main-nav > a.active,
	#header #main-nav > a.active:hover {
		background: #326690;
		color: #FFF;
	}

	body.show-mobile-nav {

	}

	body.show-mobile-nav #header #main-nav-mobile-backdrop {
		display: block;
		top: 71px;
		left: 0;
		right: 0;
		bottom: 0;
		background: rgba(0,0,0,0.3);
		position: fixed;
		z-index: 1;
		cursor: pointer;
		opacity: 1;
	}

	body.show-mobile-nav #header #main-nav { 
		margin-right: 0;
	}

}

/* Small Devices, Tablets */
@media only screen and (max-width : 768px) {

	body.home #google-map-container {
		position: relative;
		height: 325px;
		margin-top: 15px;
		top: auto;
		left: auto;
		right: auto;
		bottom: auto;
	}

	body.home #google-map {
		right: 15px;
	}

	#header #main-nav {
		width: 70%;
		margin-right: -71%;
	}

	#accomodation-map-info-window {
		min-width: 1px;
	}

	#event-accommodations abbr {
		display: inline;
	}

}

/* Extra Small Devices, Phones */ 
@media only screen and (max-width : 480px) {
	#event-accommodations abbr {
		display: none;
	}
	#event-accommodations > .row {
  		position: relative;
  		padding-left: 0px;
	}
	#event-accommodations > .row .map-marker {
		position: absolute;
		left: auto;
		top: 15px;
		right: 15px;
		display: block;
		z-index: 1;
	}
	#event-accommodations > .row .title,
	#event-accommodations > .row .address {
		padding-right: 60px;
	}
}

/* Custom, iPhone Retina */ 
@media only screen and (max-width : 320px) {
	#event-accommodations abbr {
		display: inline;
	}
	.ticket .remove-prompt {
		right: -101%;
		width: 100%;
	}
	.ticket .remove-prompt > span {
		margin-left: -105px;
	}
	.ticket .remove-prompt .btn {
	  padding-left: 0;
	  padding-right: 0;
	  width: 44%;
	}
	.ticket .panel-heading .tooltip {
		display: none !important;
	}
	.ticket .remove-prompt .btn span.pc {
		display: none;
	}

	.ticket .remove-prompt .btn span.mob {
		display: inline;
	}
}

#tickets-container .ticket .available-bookings {
	
	
    text-align: right;
}

#tickets-container .ticket .available-bookings .desktop {
	position: absolute;
	top:0;
	right:0;
	width:20px;
	
    
}

#tickets-container .ticket .available-bookings .mobile {
	    text-align: left;
    padding-left: 5px;
    font-style: italic;
    font-size: 12px;
}

#tickets-container .ticket .available-bookings .icon {
	color:#EF8700;
}

#tickets-container .ticket .subunit-day.checkbox,
#tickets-container .ticket .ticket-tracks.subunit-day {
	margin-left:25px;
}

.input-group.input-group-email .input-group-addon.input-group-addon-spinner .icon {
	-webkit-animation-name: spin;
    -webkit-animation-duration: 2000ms;
    -webkit-animation-iteration-count: infinite;
    -webkit-animation-timing-function: linear;
    -moz-animation-name: spin;
    -moz-animation-duration: 2000ms;
    -moz-animation-iteration-count: infinite;
    -moz-animation-timing-function: linear;
    -ms-animation-name: spin;
    -ms-animation-duration: 2000ms;
    -ms-animation-iteration-count: infinite;
    -ms-animation-timing-function: linear;
    
    animation-name: spin;
    animation-duration: 2000ms;
    animation-iteration-count: infinite;
    animation-timing-function: linear;
}

@-moz-keyframes spin {
    from { -moz-transform: rotate(0deg); }
    to { -moz-transform: rotate(360deg); }
}
@-webkit-keyframes spin {
    from { -webkit-transform: rotate(0deg); }
    to { -webkit-transform: rotate(360deg); }
}
@keyframes spin {
    from {transform:rotate(0deg);}
    to {transform:rotate(360deg);}
}