body,
html {
	overflow-x: hidden;
}

#content {
	margin-top: .5em
}

header .logo {
	background-position: center center
}

@media (min-width:768px) {
	#content {
		margin-top: 1em
	}

	header .logo {
		background-position: center right
	}

	.navbar-wrapper .container.app {
		border-top: none
	}
}

header a.app-name,
header a.app-name:hover,
header a.app-name:visited {
	color: #4B545A;
	display: block;
	font-family: Roboto;
	font-size: 1.5rem;
	line-height: 1.2em;
	margin: 0 0 .3em;
	text-align: center;
	text-decoration: none
}

@media (min-width:768px) {

	header a.app-name,
	header a.app-name:hover,
	header a.app-name:visited {
		font-size: 1.85rem;
		margin-top: 28px;
		text-align: left
	}
}

/* Interior page header */
header .logo.interior {
	height: 65px;
	background-size: 137px;
}

#interior.program-header .navbar-light .navbar-nav>li>a {
	padding: 5px 15px;
}

@media (min-width: 768px) {
	.banner-logo {
		min-height: 75px;
	}
}

#route_map {
	height: 300px;
	margin-top: 30px;
	margin-bottom: 30px;
}

/* Search */
.site-searchbar-toggle {
	border: 1px solid #5e6a71;
	border-radius: 5px;
	color: #5e6a71;
	margin: 15px;
	padding: 8px 6px 8px 6px;
	position: absolute;
	right: 0;
	top: 0;
}

.site-searchbar-toggle.int {
	margin: 0;
}

.site-navbar-toggler {
	display: inline-block;
}

.application .navbar-light .site-navbar-toggler,
.program-header .navbar-light .side-navbar-toggler {
	border: none;
}

.site-navbar-toggler {
	font-size: 1.25rem;
	line-height: 1;
	background-color: transparent;
}

.site-search-bar {
	margin: 0;
}

.site-searchbar-form {
	font-family: Roboto, "Helvetica Neue", Helvetica, sans-serif;
	padding-top: 7px;
	padding-bottom: 7px;
	background-color: transparent;
}

.site-searchbar-form .form-control {
	display: inline-block;
	width: 200px;
	vertical-align: middle;
	box-shadow: none;
	height: 40px;
}

@media (max-width: 350px) {
	.site-searchbar-form .form-control {
		width: 160px;
	}
}

.site-searchbar-form .form-group {
	margin-bottom: 0;
}

#searchbar-collapse-mobile button {
	background-color: #D1D5D8;
	border-color: #D1D5D8;
	color: #333;
	line-height: 1.7;
}

@media (min-width: 576px) {
	#searchbar-collapse-mobile button {
		margin-left: 3px;
	}
}

/* Medium devices (tablets, 768px and up) The navbar toggle appears at this breakpoint */
@media (min-width: 768px) {
	.site-searchbar-toggle {
		position: relative;
	}

	.site-searchbar-form {
		float: right;
	}

	.site-search-bar {
		background-color: #e3e3e3;
	}
}

/* Central track area */
#train-track {
	width: 100%;
	height: 41px;
	overflow: hidden;
	position: relative;
}

#train-wrapper {
	display: flex;
	/* align-items: center; */
	position: absolute;
	right: -300px;
	top: 0px;
}

#train-wrapper.animate {
	animation: moveTrain 20s linear infinite;
}

/* Train cars */
.train-car {
	font-size: 2rem;
	margin-right: 5px;
}

@keyframes moveTrain {
	from {
		right: -300px;
	}

	to {
		right: 100%;
	}
}