body {
margin: 0;
padding: 0;
font-size:12pt;
line-height:16pt;
font-family: 'Open Sans', sans-serif;
}
a{
color:#20409a;
}
a:hover{
color:#16317e;
}
h2{
font-weight:normal;
color:#666;
}
h3{
font-weight:normal;
color:#6699cc;
}
.codes{
display:block;
margin-bottom:5px;
}
.codes span{
margin:2px 4px 2px 0px;
display:inline-block;
padding:2px 5px;
color:#666;
-webkit-border-radius: 5px;
border-radius: 5px;
background:#FFF;
border:1px solid #CCC;
font-weight:bold;
}

#header{
padding:0px 0px;
background:#EFEFEF;
}
#header .container{
width:100%;
}
#header .container .logo{
width:100px;
float:left;
padding:10px 0px 10px 20px;
}
#header .container .logo img{
width:100%;
}
#header .container .site-name{
width:450px;
float:left;
padding:15px 0px 60px 10px;
font-size:18pt;
line-height:20pt;
font-weight:bold;
}
#header .container .site-name span.tagline{
font-size:12pt;
line-height:14pt;
display:block;
font-weight:400;
}
#header .container .header-contact{
width:370px;
float:right;
text-align:right;
padding:15px 20px 60px 0px;
}
#header .container .header-contact .header-phone{
font-size:16pt;
line-height:18pt;
padding-bottom:10px;
}
#header .container .header-contact .header-phone a,
#header .container .header-contact .header-phone a:hover{
color:#333;
}
#header .container .header-contact .header-contact-description{
font-size:12pt;
line-height:14pt;
}
#header .container .navigation{
width:765px;
position:absolute;
bottom:20px;
right:20px;
padding:5px 0px 0px 0px;
}
ul.main-nav{
display:block;
text-align:right;
list-style:none;
padding:0;
margin:0;
overflow: hidden;
}
#header .container .navigation ul li a:hover{
background:rgba(0,0,0,0.1);
}
ul.main-nav li{
border-left:1px solid #CCC;
display:inline-block;
margin:0 0 0 -4px;
padding:0;
}
ul.main-nav li:first-child{
border-left:none;
margin-left:0px;
}
ul.main-nav li a{
font-weight:400;
display:inline-block;
font-size:14pt;
line-height:16pt;
padding:5px 10px;
transition: 0.3s;
}

ul.main-nav li.icon {display: none; border:none;}

@media screen and (max-width: 980px) {

	#header .container,
	.container{
	width:auto;
	padding:0px 20px;
	}

	#header .container .logo{
		width:20%;
		float:left;
		padding:10px 0px 10px 20px;
	}

	#header .container .site-name{
		width:70%;
		float:right;
		padding:20px 10px 10px 0px;
		font-size:18pt;
		line-height:20pt;
		font-weight:bold;
	}
	#header .container .header-contact{
		width:70%;
		float:right;
		text-align:left;
		padding:10px 10px 10px 0px;
	}

	#header .container .navigation{
	width:100%;
	position:relative;
	bottom:auto;
	right:auto;
	margin:5px 0px;
	float:left;
	padding:5px 0px 5px 0px;
	}
	#header .container .navigation ul{
	text-align:left;
	}
	#header .container .navigation ul li{
	margin:0;
	}
}

@media screen and (max-width: 700px) {


	#header .container .logo{
	width:25%;
	float:left;
	padding:5px;
	}
	#header .container .site-name{
	width:65%;
	float:right;
	font-size:14pt;
	line-height:16pt;
	padding:5px;
	}
	#header .container .site-name span{
	font-size:10pt;
	line-height:12pt;
	}
	#header .container .header-contact{
	width:65%;
	float:right;
	text-align:left;
	padding:0;
	margin:5px 0px;
	}
	#header .container .header-contact .header-phone a{
	font-size:12pt;
	line-height:14pt;
	display:inline-block;
	padding:10px 10px;
	text-align:left;
	background:rgba(0,0,0,0.5);
	color:#FFF;
	-webkit-border-radius: 5px;
	border-radius: 5px;
	}
	#header .container .header-contact .header-phone a:hover{
	background:rgba(0,0,0,0.75);
	color:#FFF;
	}
	#header .container .header-contact .header-contact-description{
	display:none;
	}
	ul.main-nav{
	text-align:left;
	background:rgba(32,64,154,0.8);
	-webkit-border-radius: 5px;
	border-radius: 5px;
	}
	ul.main-nav li{
	float:left;
	margin:0;
	display:block;
	}
	ul.main-nav li a{
    color:#FFF;
    padding:10px;
	}
	ul.main-nav li a:hover{
	color:#FFF;
	background:rgba(32,64,154,1);
	}



	ul.main-nav li:not(:first-child) {display: none;}
	ul.main-nav li.icon {
	float: right;
	display: inline-block;
	}

	ul.main-nav.responsive {position: relative; text-align:left;}
	ul.main-nav.responsive li.icon {
	  position: absolute;
	  right: 0;
	  top: 0;
	}
	ul.main-nav.responsive li {
	  float: none;
	  display: block;
	  border-bottom:1px solid #0d5196;
	}
	ul.main-nav.responsive li:last-child {
	border-bottom:none;
	}
	ul.main-nav.responsive li a {
	  display: block;
	  text-align: left;
	}
}

@media screen and (max-width: 400px) {
	#header .container .header-contact{
	width:100%;
	float:left;
	padding:0;
	margin:5px 0px;
	}
	#header .container .header-contact .header-phone a{
	display:block;
	font-size:16pt;
	line-height:18pt;
	text-align:center;
	padding:10px 0px;
	}
}

#main-content{
padding:40px 0px;
}



#mod-search{
border:1px solid #CCC;
-webkit-border-radius: 5px;
border-radius: 5px;
padding:20px 0px 0px 0px;
}

#mod-simple-search{
border:1px solid #CCC;
-webkit-border-radius: 5px;
border-radius: 5px;
padding:20px 0px 0px 0px;
}

.toggle{
color:#20409a;
cursor:pointer;
}
.toggle:hover{
color:#16317e;
}
.morecontent{
display:none;
}
.morecontent label{
display:block;
margin:3px 0px;
cursor:pointer;
}
.search-buttons{
margin:10px 0px;
}
.search-buttons a{
padding:10px 15px;
display:inline-block;
margin-right:10px;
-webkit-border-radius: 5px;
border-radius: 5px;
background:#20409a;
color:#FFF;
}
.search-buttons a:hover{
background:#16317e;
color:#FFF;
}
.search-buttons a.reset{
background:transparent;
color:#20409a;
}
.search-buttons a.reset:hover{
background:transparent;
color:#16317e;
}
.searching-for{
background:#f5f5f5;
text-align:center;
margin-top:10px;
padding:10px;
border-top:1px solid #CCC;
}

#mod-map{
padding-top:20px;
width:600px;
float:right;
}
#mod-list{
padding-top:20px;
width:33%;
float:left;
min-height:500px;
}
#mod-list .list-item{
-webkit-border-radius: 5px;
border-radius: 5px;
margin-bottom:10px;
background:#f5f5f5;
padding:25px 20px 15px 20px;
font-size:10pt;
line-height:12pt;
position:relative;
-webkit-transition: all 0.25s ease;
-moz-transition: all 0.25s ease;
-ms-transition: all 0.25s ease;
-o-transition: all 0.25s ease;
transition: all 0.25s ease;
}
#mod-list .list-item:hover{
background:#e9e9e9;
}
#mod-list .list-item .title,
#mod-list .list-item .codes,
#mod-list .list-item .location,
#mod-list .list-item .address,
#mod-list .list-item .time,
#mod-list .list-item .buttons{
display:block;
}
#mod-list .list-item .distance{
position:absolute;
top:0;
right:10px;
background:#999;
color:#FFF;
padding:3px 5px;
-webkit-border-radius: 0 0 5px 5px;
border-radius: 0 0 5px 5px;
font-weight:bold;
font-size:8pt;
line-height:10pt;
}
#mod-list .list-item .title{
font-size:14pt;
line-height:16pt;
padding-left:20px;
position:relative;
border-bottom:1px solid #CCC;
padding-bottom:5px;
margin-bottom:5px;
}
#mod-list .list-item .title:before{
font-family:"FontAwesome";
content:"\f041";
color:#be3a1b;
position:absolute;
left:0;
}
#mod-list .list-item .codes{
margin-bottom:3px;
}
#mod-list .list-item .location{
font-weight:bold;
}
#mod-list .list-item .buttons{
text-align:right;
padding-top:10px;
}
#mod-list .list-item .buttons a{
background:#20409a;
padding:5px 8px;
display:inline-block;
margin-left:3px;
-webkit-border-radius: 5px;
border-radius: 5px;
color:#FFF;
font-weight:bold;
}
#mod-list .list-item .buttons a:hover{
background:#16317e;
}


@media screen and (max-width: 980px) {

	#mod-map{
	width:100%;
	float:none;
	}
	#mod-list{
	width:100%;
	float:none;
	}

}

.content-block{
margin:10px 0px;
border:1px solid #CCC;
-webkit-border-radius: 5px;
border-radius: 5px;
padding:0px;
}
h2.content-block-title{
padding:20px;
background:#f5f5f5;
border-bottom:1px solid #CCC;
margin:0;
-webkit-border-radius: 5px 5px 0px 0px;
border-radius: 5px 5px 0px 0px;
font-weight:bold;
}
.content-block-inner{
padding:20px;
}

.location-display{

}
.location-display .location-item{
-webkit-border-radius: 5px;
border-radius: 5px;
margin-bottom:10px;
background:#f5f5f5;
padding:10px 20px 15px 20px;
position:relative;
-webkit-transition: all 0.25s ease;
-moz-transition: all 0.25s ease;
-ms-transition: all 0.25s ease;
-o-transition: all 0.25s ease;
transition: all 0.25s ease;
}
.location-display .location-item .address{
width:68%;
float:left;
}
.location-display .location-item .address .location-link{
font-size:10pt;
line-height:12pt;
display:inline-block;
white-space:no-wrap;
}
.location-display .location-item .image{
width:30%;
float:right;
text-align:right;
}
.location-display .location-item .image img{
width:100% !important;
height:auto !important;
}

@media screen and (max-width: 400px) {
	.location-display .location-item .address,
	.location-display .location-item .image{
	width:100%;
	float:none;
	}
}

#locations-grid{
text-align:center;
}
#locations-grid .location-display{
text-align:left;
width:48%;
margin-right:10px;
display:inline-block;
vertical-align:top;
}
@media screen and (max-width: 980px) {

	#locations-grid .location-display{
	width:100%;
	margin-right:0;
	}
}
.schedule-display{
margin-bottom:20px;
}
.schedule-display .schedule-title{
font-size:16pt;
line-height:18pt;
font-weight:bold;
background:#20409a;
-webkit-border-radius: 5px;
border-radius: 5px;
color:#FFF;
padding:10px;
margin:3px 0px;
}
.schedule-display .schedule-title:hover{
background:#16317e;
color:#FFF;
}
.schedule-display .schedule-title .fa{
display:inline-block;
float:right;
}
.schedule-display .schedule-list{
}
.schedule-display .schedule-list .schedule-item{
padding:10px;
background:#f5f5f5;
margin:5px;
font-size:10pt;
line-height:12pt;
-webkit-border-radius: 5px;
border-radius: 5px;
}
.schedule-display .schedule-list .schedule-item:hover{
background:#e9e9e9;
}
.schedule-display .schedule-list .schedule-item span{
display:inline-block;
margin-right:10px;
font-weight:bold;
}
.schedule-display .schedule-list .schedule-item .button{
display:inline-block;
float:right;
}
.schedule-display .schedule-list .schedule-item .button a{
background:#20409a;
padding:3px 5px;
display:inline-block;
margin-left:3px;
-webkit-border-radius: 5px;
border-radius: 5px;
color:#FFF;
font-weight:bold;
font-size:8pt;
line-height:10pt;
}
.schedule-display .schedule-list .schedule-item .button a:hover{
background:#16317e;
}


#footer{
padding:40px 0px;
background:#333;
color:#666;
}
#footer #footer-nav ul{
list-style:none;
padding:0;
margin:0;
text-align:center;
}
#footer #footer-nav ul li{
display:inline-block;
}
#footer #footer-nav ul li a{
display:block;
color:#CCC;
border:1px solid #CCC;
padding:5px 8px;
margin:5px;
}
#footer #footer-nav ul li a:hover{
border:1px solid #FFF;
color:#FFF;
}

.stickem-container {
  position: relative;
}

.stickit {
    position: fixed;
    top: 0px;
    margin-left:380px;
}

.stickit-end {
    bottom: 10px;
    position: absolute;
    right: 0;
}


@media screen and (max-width: 980px) {

	.stickit {
	position:relative;
	margin-left:0;
	}

	.stickit-end {
    	bottom: auto;
	    position: relative;
    	right: auto;
	}
}

#google-map {
    border: 1px solid #CCCCC;
    height: 500px;
    width: 100%;
}