﻿@charset "UTF-8";
html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
  border: 0;
  box-sizing: border-box;
  font-family: inherit;
  font-size: 100%;
  margin: 0;
  outline: 0 none;
  padding: 0;
  vertical-align: baseline; }

audio,
canvas,
video {
  display: inline-block; }

ol,
ul {
  list-style: none; }

table {
  border-collapse: collapse;
  border-spacing: 0; }

caption,
th,
td {
  font-weight: normal;
  text-align: left;
  vertical-align: middle; }

q,
blockquote {
  quotes: none; }

q::before,
q::after,
blockquote::before,
blockquote::after {
  content: none; }

a img {
  border: 0; }

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

img {
  font-size: 0;
  height: auto; }

img,
object,
embed {
  max-width: 100%; }

/* .container {
  max-width: 100%;
  margin-left: 0.71429rem;
  margin-right: 0.71429rem; }
  .container:after {
    content: " ";
    display: block;
    clear: both; }
  .container::before, .container::after {
    content: '';
    display: table; }
  .container::after {
    clear: both; }
  @media (min-width: 54.85714em) {
    .container {
      max-width: 100%;
      margin-left: 2.85714rem;
      margin-right: 2.85714rem; }
      .container:after {
        content: " ";
        display: block;
        clear: both; } }
  @media (min-width: 60em) {
    .container {
      max-width: 1240px;
      margin-left: auto;
      margin-right: auto; }
      .container:after {
        content: " ";
        display: block;
        clear: both; } }
  @media (min-width: 91.42857em) {
    .container {
      max-width: 1240px;
      margin-left: auto;
      margin-right: auto; }
      .container:after {
        content: " ";
        display: block;
        clear: both; } } */

h1,
h2,
h3,
h4,
h5,
h6 {
  /* font-family: "Chronicle Display A", "Chronicle Display B", "Georgia", Times, Times New Roman, serif; */
  font-family: 'Lato', sans-serif;
  font-weight: normal;
  color: #181818; }

h1 {
  font-size: 30px;
  line-height: 1.1; margin:0 0 .5em;}

h2 {
  font-size: 27px;
  line-height: 1.1; margin:0 0 .5em; 
  color:#e94d22;
  }

h3 {
  font-size: 24px;
  line-height: 1.2; margin:0 0 .5em; 
  color:#446bbd;
  }

h4 {
  font-size: 21px;
  line-height: 1.2; margin:0 0 .5em; }

h5 {
  font-size: 18px;
  line-height: 1.2; margin:0 0 .5em; }

h6 {
  font-size: 17px;
  line-height: 1.2; margin:0 0 .5em; }

@media (min-width: 48em) {
  h1 {
    font-size: 34px; }
  h2 {
    font-size: 30px; }
  h3 {
    font-size: 26px; }
  h4 {
    font-size: 22px; }
  h5 {
    font-size: 19px; }
  h6 {
    font-size: 17px; } }

@media (min-width: 60em) {
  h1 {
    font-size: 40px; }
  h2 {
    font-size: 30px; }
  h3 {
    font-size: 26px; }
  h4 {
    font-size: 22px; }
  h5 {
    font-size: 20px; }
  h6 {
    font-size: 18px; } }
	
h2.lineTop {font-size:30px; color:#234174; position:relative; padding-top:.75em; margin-bottom:1em; text-align:center;}	
h2.lineTop:after {
	position:absolute;
	content:"";
	top:0;
	left:50%;
	margin-left:-90px;
	width:180px;
	height:3px;
	background:#e94d22;
}

@media (min-width: 60em) {
	h2.lineTop {font-size:40px;}	
}
/* p {
  color: #535353; } */
  p {margin:0 0 1em;}
  p.lead {
    /* font-family: "Chronicle Display A", "Chronicle Display B", "Georgia", Times, Times New Roman, serif; */
	font-family: 'Lato', sans-serif;
    font-size: 20px; font-weight:300; margin-bottom:25px;}
	@media (min-width:60em) {
		  p.lead {font-size:24px;}
	}	
a {
  color: #446bbd;
  text-decoration: underline; }
  a:visited {
    text-decoration: none; }
  a:hover, a:focus {
    color: #234174; }

a.email {
  color: #234174;
  text-decoration: none; }
  a.email:visited {
    text-decoration: none; }
  a.email:hover, a:focus {
    color: #222; }	
	
	
	
strong {
  font-weight: 700; }

em {
  font-style: italic; }

.pre-heading {
  /* font-family: "Gotham SSm A", "Gotham SSm B", "Helvetica Neue", Helvetica, Arial, sans-serif; */
  font-family: 'Lato', sans-serif;
  font-size: 18px;
  font-weight: bold;
  color: #446bbd;
  text-transform: uppercase;
  letter-spacing: 2px; }

.select {
  position: relative; }
  .select::after {
    content: '';
    width: 40px;
    height: 100%;
    background-image: url("/cms/images/ggb/down.png");
    background-position: center center;
    background-repeat: no-repeat;
    background-size: 12px 12px;
    position: absolute;
    top: 0;
    right: 0; }
  .select select {
    opacity: 0;
    width: 100%;
    height: 100%;
    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
    position: absolute;
    top: 0;
    left: 0; }
  .select:hover input {
    border-color: #dbe0e4;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.1); }

.margB0 {margin-bottom:0;}	
	
/* input {
  width: 100%;
  height: 40px;
  color: #181818;
  background: #fff;
  text-transform: uppercase;
  font-family: inherit;
  font-size: 12px;
  border: 1px solid #e5eaee;
  outline: none;
  padding: 10px; } */

button,
.button {
  width: auto;
  height: 40px;
  color: #fff;
  background: #d53f15;
  text-transform: uppercase;
  font-family: inherit;
  font-weight: 700;
  font-size: 12px;
  border: 0;
  outline: none;
  display: inline-block;
  padding: 10px 20px;
  cursor: pointer; }
  button:hover, button:focus, button:visited,
  .button:hover, .button:focus, .button:visited {
    color: #fff;
    background-color: #f3572d; }
  button.button--green,
  .button.button--green {
    background: #16763b; }
    button.button--green:hover,
    .button.button--green:hover {
      background: #208045; }

	  
.hero {
  background-size: cover;
  background-color: #181818;
  background-position: center center;
  position: relative; }
  .hero::after {
    content: '';
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.1);
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1; }
  .hero__content__text {
    max-width: 600px;
    padding: 50px 0 150px;
    position: relative;
    z-index: 2; }
    @media (min-width: 60em) {
      .hero__content__text {
        max-width: 60%;
        padding: 150px 0 250px; } }
    .hero__content__text h1,
    .hero__content__text p {
      color: #fff; }
    .hero__content__text h1 {
      font-weight: 800;
      margin-bottom: 20px; }
      @media (min-width: 60em) {
        .hero__content__text h1 {
          margin-bottom: 40px; } }
    .hero__content__text p {
      font-size: 16px; }
    .hero__content__text .breadcrumbs ul li,
    .hero__content__text .breadcrumbs ul a {
      color: #fff; }
  .hero--full {
    position: relative;
    overflow: hidden;
    height: calc(100vh - 70px);
    min-height: calc(100vh - 70px);
    display: table;
    width: 100%; }
    @media (min-width: 60em) {
      .hero--full {
        height: calc(100vh - 120px);
        min-height: calc(100vh - 120px); } }
    .hero--full .hero__content {
      display: table-cell;
      vertical-align: middle; }
      .hero--full .hero__content__text {
        margin: 0 auto;
        text-align: center;
        padding: 50px 0 200px; }
        @media (min-width: 60em) {
          .hero--full .hero__content__text {
            padding: 150px 0 250px; } }
        @media (min-width: 102.85714em) {
          .hero--full .hero__content__text {
            max-width: 90%; } }
        .hero--full .hero__content__text h1 {
          text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.3); }
          @media (min-width: 102.85714em) {
            .hero--full .hero__content__text h1 {
              font-size: 90px; } }
        .hero--full .hero__content__text p {
          text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.3); }
          @media (min-width: 102.85714em) {
            .hero--full .hero__content__text p {
              font-size: 20px;
              max-width: 90%;
              margin: 40px auto; } }
  .hero--video::after {
    background: rgba(0, 0, 0, 0.3); }
  .hero--video video {
    display: none;
    position: absolute;
    min-height: 100%;
    min-width: 100%; }
    @media (min-width: 54.85714em) {
      .hero--video video {
        display: block; } }

		
		
.social-icons {  font-size: 0; }
  .social-icons li {
    display: inline-block;
    padding: 0 10px; }
    .social-icons li a {
      width: 25px;
      height: 25px;
      display: block;
      position: relative;
      background-size: 18px 18px;
      background-repeat: no-repeat;
      background-position: 50% 49%;
      border: 2px solid transparent; }
      .social-icons li a:hover, .social-icons li a:focus { border-color: #fff; background: none; }
		
  .social-icons__facebook {
    background-image: url("/cms/images/ggb/facebook.png"); }
    .social-icons__facebook:hover:after, .social-icons__facebook:focus:after {
      content: " ";
      background-image: url(/cms/images/ggb/facebook.png);
      background-position: center;
      background-repeat: no-repeat;
      background-size: 73%;
      opacity: .7;
      position: absolute;
      left: -1px;
      top: -2px;
      height: 25px;
      width: 25px; }
  .social-icons__youtube {
    background-image: url("/cms/images/ggb/youtube.png"); }
    .social-icons__youtube:hover:after, .social-icons__youtube:focus:after {
      content: " ";
      background-image: url(/cms/images/ggb/youtube.png);
      background-position: center;
      background-repeat: no-repeat;
      background-size: 73%;
      opacity: .7;
      position: absolute;
      left: -1px;
      top: -2px;
      height: 25px;
      width: 25px; }
  .social-icons__twitter {
    background-image: url("/cms/images/ggb/twitter.png"); }
    .social-icons__twitter:hover:after, .social-icons__twitter:focus:after {
      content: " ";
      background-image: url("/cms/images/ggb/twitter.png");
      background-position: center;
      background-repeat: no-repeat;
      background-size: 73%;
      opacity: .7;
      position: absolute;
      left: -1px;
      top: -2px;
      height: 25px;
      width: 25px; }


  .social-icons__instagram {
    background-image: url("/cms/images/ggb/instagram.png"); }
    .social-icons__instagram:hover:after, .social-icons__instagram:focus:after {
      content: " ";
      background-image: url("/cms/images/ggb/instagram.png");
      background-position: center;
      background-repeat: no-repeat;
      background-size: 73%;
      opacity: .7;
      position: absolute;
      left: -2px;
      top: -2px;
      height: 25px;
      width: 25px; }

	  
  .social-icons__flickr {
    background-image: url("/cms/images/ggb/flickr.png"); }
    .social-icons__flickr:hover:after, .social-icons__flickr:focus:after {
      content: " ";
      background-image: url("/cms/images/ggb/flickr.png");
      background-position: center;
      background-repeat: no-repeat;
      background-size: 73%;
      opacity: .7;
      position: absolute;
      left: -1px;
      top: -2px;
      height: 25px;
      width: 25px; }
  .social-icons__rss {
    background-image: url("/cms/images/ggb/rss.png"); }
    .social-icons__rss:hover:after, .social-icons__rss:focus:after {
      content: " ";
      background-image: url("/cms/images/ggb/rss.png");
      background-position: center;
      background-repeat: no-repeat;
      background-size: 73%;
      opacity: .7;
      position: absolute;
      left: -1px;
      top: -2px;
      height: 25px;
      width: 25px; }
	.social-icons li a.social-icons__youtube {width: 46px; background-size: 46px 20px;}	
	
	
  .social-icons--large li a {
    width: 27px;
    height: 27px;
    background-size: 27px 27px; }
  .social-icons--black .social-icons__facebook {
    background-image: url("/cms/images/ggb/facebook-black.png"); }
    .social-icons--black .social-icons__facebook:hover:after, 
    .social-icons--black .social-icons__facebook:focus:after { background-image: url("/cms/images/ggb/facebook-black.png"); }
  .social-icons--black .social-icons__youtube {
    background-image: url("/cms/images/ggb/youtube-black.png"); }
    .social-icons--black .social-icons__youtube:hover:after, 
    .social-icons--black .social-icons__youtube:focus:after { background-image: url("/cms/images/ggb/youtube-black.png"); }
  .social-icons--black .social-icons__twitter {
    background-image: url("/cms/images/ggb/twitter-black.png"); }
    .social-icons--black .social-icons__twitter:hover:after, 
    .social-icons--black .social-icons__twitter:focus:after { background-image: url("/cms/images/ggb/twitter-black.png"); }
  .social-icons--black .social-icons__flickr {
    background-image: url("/cms/images/ggb/flickr-black.png"); }
    .social-icons--black .social-icons__flickr:hover:after, 
    .social-icons--black .social-icons__flickr:focus:after { background-image: url("/cms/images/ggb/flickr-black.png"); }
  .social-icons--black .social-icons__rss {
    background-image: url("/cms/images/ggb/rss-black.png"); }
    .social-icons--black .social-icons__rss:hover:after, 
    .social-icons--black .social-icons__rss:focus:after { background-image: url("/cms/images/ggb/rss-black.png"); }
  .social-icons--black .social-icons__instagram {
    background-image: url("/cms/images/ggb/instagram-black.png"); }
    .social-icons--black .social-icons__instagram:hover:after, 
    .social-icons--black .social-icons__instagram:focus:after { background-image: url("/cms/images/ggb/instagram-black.png"); }

	

.social-icons--dark li a {
    width: 27px;
    height: 27px;
    background-size: 27px 27px; }
   .social-icons--dark .social-icons__facebook {
    background-image: url("/cms/images/ggb/facebook-dark.png"); }
    .social-icons--dark .social-icons__facebook:hover:after, 
    .social-icons--dark .social-icons__facebook:focus:after { background-image: url("/cms/images/ggb/facebook-dark.png"); }
  .social-icons--dark .social-icons__youtube {
    background-image: url("/cms/images/ggb/youtube-dark.png"); }
    .social-icons--dark .social-icons__youtube:hover:after, 
    .social-icons--dark .social-icons__youtube:focus:after { background-image: url("/cms/images/ggb/youtube-dark.png"); }
  .social-icons--dark .social-icons__twitter {
    background-image: url("/cms/images/ggb/twitter-dark.png"); }
    .social-icons--dark .social-icons__twitter:hover:after, 
    .social-icons--dark .social-icons__twitter:focus:after { background-image: url("/cms/images/ggb/twitter-dark.png"); }
  .social-icons--dark .social-icons__flickr {
    background-image: url("/cms/images/ggb/flickr-dark.png"); }
    .social-icons--dark .social-icons__flickr:hover:after, 
    .social-icons--dark .social-icons__flickr:focus:after { background-image: url("/cms/images/ggb/flickr-dark.png"); }
  .social-icons--dark .social-icons__rss {
    background-image: url("/cms/images/ggb/rss-dark.png"); }
    .social-icons--dark .social-icons__rss:hover:after, 
    .social-icons--dark .social-icons__rss:focus:after { background-image: url("/cms/images/ggb/rss-dark.png"); }

  .social-icons--dark .social-icons__instagram {
    background-image: url("/cms/images/ggb/instagram-dark.png"); }
    .social-icons--dark .social-icons__instagram:hover:after, 
    .social-icons--dark .social-icons__instagram:focus:after { background-image: url("/cms/images/ggb/instagram-dark.png"); }	

	

	.social-icons--large li a.social-icons__youtube {width: 46px; background-size: 46px 20px;}

	.social-icons--dark .social-icons__youtube:hover:after, 
    .social-icons--dark .social-icons__youtube:focus:after {left: -1px; top: -2px; width: 50px; background-size: 50px 24px;}

	@media (min-width: 60em) {
	.social-icons li {
		padding: 0 15px; }		
	.social-icons--large li a {
		width: 27px;
		height: 27px;
		background-size: 27px 27px; }
		
		.social-icons--large li a.social-icons__youtube,
		.social-icons--dark li a.social-icons__youtube {width: 60px; background-size: 60px 27px;}		
	}
	 
	
.text-feature {
  text-align: center;
  margin-bottom: 40px; }
  @media (min-width: 60em) {
    .text-feature {
      width: 49.15254%;
      float: left;
      margin-right: 1.69492%;
      margin-left: 25.42373%; } }
  .text-feature .pre-heading {
    margin-bottom: 10px; }
  .text-feature p {
    margin-top: 30px;
    margin-bottom: 20px; }

	
	
.route-table {
	position: relative; 
	-webkit-box-shadow: inset 0px 0px 25px 0px rgba(50, 50, 50, 0.15);
	-moz-box-shadow:    inset 0px 0px 25px 0px rgba(50, 50, 50, 0.15);
	box-shadow:         inset 0px 0px 25px 0px rgba(50, 50, 50, 0.15);	
	}

	
  /* .route-table::after {
    content: '';
    width: 20px;
    height: 100%;
    background: linear-gradient(to left, rgba(0, 0, 0, 0.1) 0%, transparent 100%);
    position: absolute;
    top: 0;
    right: 0; } */
	
  /* .route-table__side {
    width: 140px;
    height: 100%;
    background: #16763b;
    position: absolute;
    top: 0;
    left: 0; }
    @media (min-width: 54.85714em) {
      .route-table__side {
        width: 300px; } }
    .route-table__side::after {
      content: '';
      width: 20px;
      height: 100%;
      background: linear-gradient(to right, rgba(0, 0, 0, 0.1) 0%, transparent 100%);
      position: absolute;
      top: 0;
      right: -20px; }
    .route-table__side table {
      position: relative; }
      .route-table__side table::before {
        content: '';
        width: 1px;
        height: calc(100% - 115px);
        background: #fff;
        position: absolute;
        top: 90px;
        left: 15px;
        transform: translateX(-0.5px); }
        @media (min-width: 54.85714em) {
          .route-table__side table::before {
            height: calc(100% - 100px);
            top: 80px; } }
      .route-table__side table tr {
        font-size: 10px; }
        @media (min-width: 54.85714em) {
          .route-table__side table tr {
            font-size: 12px; } }
        .route-table__side table tr:nth-child(even) {
          background: #208045; }
          .route-table__side table tr:nth-child(even) td::before {
            background: #208045; }
        .route-table__side table tr.hovering {
          background: #00581d; }
          .route-table__side table tr.hovering td::before {
            background: #00581d; }
      .route-table__side table td,
      .route-table__side table th {
        color: #fff;
        position: relative; }
        .route-table__side table td::before,
        .route-table__side table th::before {
          content: '';
          width: 10px;
          height: 10px;
          background: #16763b;
          border: 1px solid #fff;
          border-radius: 100%;
          position: absolute;
          top: 50%;
          left: 10px;
          transform: translateY(-50%);
          transition: all .2s ease-in-out; }
        .route-table__side table td span,
        .route-table__side table th span {
          display: block;
          height: 35px;
          overflow: hidden;
          position: relative;
          margin-left: 20px; }
          @media (min-width: 54.85714em) {
            .route-table__side table td span,
            .route-table__side table th span {
              height: 30px; } }
          .route-table__side table td span div,
          .route-table__side table th span div {
            position: absolute;
            top: 50%;
            transform: translateY(-50%); }
      .route-table__side table th {
        background: #00581d; }
        .route-table__side table th::before {
          display: none; } */
		  
		  
	.route-table__wrapper {
		/* width: calc(100% - 140px);
		margin-left: 140px; */	
		overflow-x: auto;
		-webkit-overflow-scrolling: touch; }
    /* @media (min-width: 54.85714em) {
		  .route-table__wrapper {
			width: calc(100% - 300px);
			margin-left: 300px; } } */
    .route-table__wrapper::-webkit-scrollbar {
        height: 10px; }
    .route-table__wrapper::-webkit-scrollbar-track {
        background: #e5eaee; }
    .route-table__wrapper::-webkit-scrollbar-thumb {
        background: #c7ccd0; }
    .route-table__wrapper table tr:last-child td {
        border-bottom: 0; }
    .route-table__wrapper table tr.hovering {
	    background: rgba(115, 115, 115, 0.03);
        color: #000; }
        .route-table__wrapper table tr.hovering td {
			font-weight: 700; 
			color: #000; }
		
		
    .route-table__wrapper table td,
    .route-table__wrapper table th {
		height: 40px;
		min-width: 70px;
		font-size: 12px;
		text-align: center;
		border-bottom: 1px solid #e5eaee; }
		
		@media (min-width: 60em) {
			.route-table__wrapper table td,
			.route-table__wrapper table th {
				min-width: 70px;
				height: 55px;
				font-size: 13px; } }
				
        .route-table__wrapper table td:last-child,
        .route-table__wrapper table th:last-child {
			border-right: 0; }
        .route-table__wrapper table td.hovering,
        .route-table__wrapper table th.hovering{
			font-weight: 700;
			background: rgba(115, 115, 115, 0.04);		
			color: #000; }
		
		.route-table__wrapper table th.hovering {background:rgba(115, 115, 115, 0);}
		.route-table__wrapper table tr.hovering th {
		    background:rgba(115, 115, 115, 0);
	    }	
			
    .route-table__wrapper table th {
      /* background: #00581d; */ }
        .route-table__wrapper table th div {
			font-size: 10px; }
      /* .route-table__wrapper table th.express {
        background: #0c6c31; } */
    .route-table__wrapper table td:nth-child(even) {
		background: rgba(229, 234, 238, 0.35); 
		background: #f3f5f9; }
    /* .route-table__wrapper table td.express {
      background: rgba(229, 234, 238, 0.5); } */
    .route-table table {
		min-width: 100%;
		border-collapse: collapse;
		border-spacing: 0; 
		position:relative; 
		table-layout:fixed; 
		}
		
	.route-table table tr:nth-child(2n+3) {
		border-bottom:2px solid #446bbd;
	}	
    .route-table table tr,
    .route-table table td {
        transition: all .2s ease-in-out; }
    .route-table table td,
    .route-table table th {
        padding: 10px;
        vertical-align: middle;}
    .route-table table th {
		/* height: 60px; */
		color: #232323;
		border-color: #fff;
		text-transform: uppercase;
		font-weight: 700; 
		border-bottom:none;
		font-size:12px;
		vertical-align:middle;
		line-height:1.1;
		/*padding-top: 55px;*/
		text-align:center;
		position:sticky;
    position: -webkit-sticky;
    top: 0;
    background: rgba(229, 234, 238, 1);
		}
    .route-table table th:hover,
    .route-table table th:active{ background: rgba(229, 234, 238, 1);}
		@media (min-width: 60em) {
			.route-table table th {font-size:12px;}
		}
	.route-table table th span{text-transform:none; font-size:12px; display:inline-block;}  
    .route-table table td {color:#1a3364; font-weight: 700;}

	.route-table table::before {
		content: '';
		/* width: 100%; */
		height: 1px;
		background: #3b527f;
		position: absolute;
		top: 30px;
		left: 30px;
		right:45px;
		transform: translateY(-0.5px);
		display:none !important;
	}
	
	.route-table table th::before {
		content: '';
		width: 12px;
		height: 12px;
		background: #fff;
		border: 1px solid #829cd3;
		border-radius: 100%;
		position: absolute;
		top: 30px;
		left: 25px;
		transform: translateY(-50%);
		transition: all .2s ease-in-out;
		display:none;
	}
	.route-table table th:last-child::before {
		left:auto;
		right:40px;
	}
	
	.route-table table caption {
		border: 0; clip: rect(0 0 0 0); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute; width: 1px; 
	}
	
/* Fixed Header */	
.route-table.mobile-table tr {display:none;}
.route-table.mobile-table tr:first-child {display:table-row;}
	/*@media (min-width: 48em) {*/
		/* .route-table.mobile-table  {position:relative;  right:9999em;
			height:0;
			line-height:0;
			padding:0;
		} */
		.route-table.mobile-table .route-table__wrapper {overflow-x:hidden; position:static !important;}
		.route-table.desktop-table .route-table__wrapper {height:100% !important; overflow-x:scroll;}
		
		/* .route-table.desktop-table th {line-height: 0 !important; height:0; visibility: hidden; padding-top:0; padding-bottom:0;} */
		
		.route-table.desktop-table table:before {display:none;}
		.route-table.mobile-table  table:before {display:block;}	

		/* .route-table.mobile-table  .route-table__wrapper {overflow-x:visible;} */
		.route-table.desktop-table .route-table__wrapper {overflow-y: scroll;  max-height:662px !important;}		
	/*}*/
	
	@media (max-width: 47.938em) {
		body.routes {padding-top:0;}
		body.routes .header {position:relative;}

		body.schedules {padding-top:140px;}
	
		.route {padding: 20px 40px;}
		.inner-container { height: 100%;  overflow: hidden;}
		
	/*	.route-table.desktop-table th {line-height: 0 !important; height:0; visibility: hidden; padding-top:0; padding-bottom:0;}
	
		.route-table table:before {display:none;}
		.route-table.mobile-table  table:before {display:block;}
		
		.route-table.mobile-table  .route-table__wrapper {overflow-x:visible;}*/
		.route-table.desktop-table .route-table__wrapper {overflow-y: scroll; max-height:482px !important; height: 100%!important; -webkit-overflow-scrolling: touch;}		
	}	

	

.route-table-controls {
	position:relative; }
	.route-table-controls::before, .route-table-controls::after {
		content: '';
		display: table; }
	.route-table-controls::after {
		clear: both; }
	.route-table-controls__left, 
  .route-table-controls__right, 
  button.route-table-controls__left, 
	button.route-table-controls__right {
		width: 27px;
		height: 50px;
		color: #fff;
		-webkit-user-select: none;
		   -moz-user-select: none;
			-ms-user-select: none;
				user-select: none;
		position: absolute;
		cursor: pointer; 
		overflow: hidden;
		bottom:-280px;
	}
	.route-table-controls__left, button.route-table-controls__left {left:-35px;} 
	.route-table-controls__right, button.route-table-controls__right {right:-35px;}	
	
	.route-table-controls__left span, 
  .route-table-controls__right span, 
  button.route-table-controls__left span, 
	button.route-table-controls__right span {
		display:inline-block;
		width: 50px;
		height: 50px;
		background: #9caed3;		
		-webkit-border-radius:50%; -moz-border-radius:50%; border-radius:50%;
	}
	.route-table-controls__right span, button.route-table-controls__right span {position:absolute; top:0; right:0;}
	.route-table-controls__left:after,
  .route-table-controls__right:after, 
  button.route-table-controls__left:after,
	button.route-table-controls__right:after {
		position:absolute;
		content:"";
		left:0;
		top:50%;
		-webkit-transform: translateY(-50%);
			-ms-transform: translateY(-50%);
				transform: translateY(-50%);	
		content: "\2329";
		font-family: 'icomoon';
		font-size:28px;
		font-weight:normal;
	}
	.route-table-controls__right:after, button.route-table-controls__right:after {
		left:auto;
		right:0;
		content: "\232a";
	}
	@media (min-width: 48em) {
		.route-table-controls__left, 
    .route-table-controls__right, 
    button.route-table-controls__left, 
    button.route-table-controls__right {
			width: 40px;
			height: 75px;
			bottom:-340px;			
		}
		.route-table-controls__left, button.route-table-controls__left {left:-48px;} 
		.route-table-controls__right, button.route-table-controls__right {right:-48px;}
		
		.route-table-controls__left span, 
    .route-table-controls__right span, 
    button.route-table-controls__left span, 
		button.route-table-controls__right span {
			display:inline-block;
			width: 75px;
			height: 75px;
		}
		.route-table-controls__left:after,
    .route-table-controls__right:after, 
    button.route-table-controls__left:after,
		button.route-table-controls__right:after {
			font-size:42px;
		}		
	}	
	@media (min-width: 75em) {
		.route-table-controls__left, 
    .route-table-controls__right, 
    button.route-table-controls__left, 
		button.route-table-controls__right {
			width: 55px;
			height: 100px;
			bottom:-385px;
		}
		.route-table-controls__left, button.route-table-controls__left {left:-65px;} 
		.route-table-controls__right, button.route-table-controls__right {right:-65px;}
		
		.route-table-controls__left span, 
    .route-table-controls__right span, 
    button.route-table-controls__left span, 
		button.route-table-controls__right span {
			display:inline-block;
			width: 100px;
			height: 100px;
		}
		.route-table-controls__left:after,
    .route-table-controls__right:after, 
    button.route-table-controls__left:after,
		button.route-table-controls__right:after {
			font-size:56px;
		}
	}
	
	.route-table-controls__left.disabled:focus span, 
  .route-table-controls__right.disabled:focus span,
  .route-table-controls__left.disabled:active span,
  .route-table-controls__right.disabled:active span,
  .route-table-controls__left.disabled:hover span,
  .route-table-controls__right.disabled:hover span{background:#edf1f7!important;}

	
  .route-table-controls__left.disabled, .route-table-controls__right.disabled, 
  button.route-table-controls__left.disabled, button.route-table-controls__right.disabled {
		cursor: default; }
  .route-table-controls__left.disabled span, .route-table-controls__right.disabled span, 
  button.route-table-controls__left.disabled span, button.route-table-controls__right.disabled span {
		background: #edf1f7; }		
      .route-table-controls__left.disabled:hover span, .route-table-controls__right.disabled:hover span, 
      button.route-table-controls__left.disabled:hover span, button.route-table-controls__right.disabled:hover span {
			background: #edf1f7; }			
  .route-table-controls__left:hover span, .route-table-controls__right:hover span, 
  button.route-table-controls__left:hover span, button.route-table-controls__right:hover span
  .route-table-controls__left:focus span, .route-table-controls__right:focus span, 
  button.route-table-controls__left:focus span, button.route-table-controls__right:focus span
  {
      background: #5880d3; }
      
  button.route-table-controls__left, button.route-table-controls__right {
    padding: 0;
    border: none;
    background:transparent;
  }


	
	
/* .title {
  background-color: #181818;
  padding-top: 30px;
  padding-bottom: 20px;
  position: relative; }
  @media (min-width: 54.85714em) {
    .title {
      padding-top: 0;
      padding-bottom: 30px; } }
  .title--image {
    background-position: center right;
    background-size: cover; }
    .title--image::before {
      content: '';
      width: 100%;
      height: 100%;
      background: #000;
      opacity: .4;
      position: absolute;
      top: 0;
      left: 0;
      z-index: 1; }
    .title--image::after {
      content: '';
      width: 100%;
      height: 100%;
      background: #16763b;
      opacity: .4;
      position: absolute;
      top: 0;
      left: 0;
      z-index: 2; }
  .title--bridge {
    background-color: #d53f15; }
  .title--bus {
    background-color: #16763b; }
  .title--ferry {
    background-color: #1c75bc; }
  .title .breadcrumbs {
    margin-bottom: 80px;
    position: relative;
    z-index: 3; }
    .title .breadcrumbs ul li {
      color: #fff; }
      .title .breadcrumbs ul li a {
        color: #fff; }
  .title h1 {
    color: #fff;
    position: relative;
    z-index: 3; }
  .title ol {
    margin-top: 10px; }
    .title ol li {
      color: #fff;
      font-weight: 700;
      text-transform: uppercase;
      font-size: 10px;
      display: inline-block; }
      .title ol li.sep {
        font-size: 16px;
        margin: 0 10px; }
  .title .route-chooser {
    position: relative; }
    .title .route-chooser h1,
    .title .route-chooser select {
      display: inline-block; }
    .title .route-chooser h1::after {
      content: '';
      width: 30px;
      height: 30px;
      background-image: url("/cms/images/ggb/routechooser.svg");
      background-size: 30px 30px;
      position: absolute;
      top: 50%;
      right: -40px;
      transform: translateY(-50%); }
    .title .route-chooser select {
      opacity: 0;
      width: auto;
      height: 100%;
      -webkit-appearance: none;
         -moz-appearance: none;
              appearance: none;
      position: absolute;
      top: 0;
      left: 0;
      z-index: 4; } */

.breadcrumbs {
  display: none;
  }
  @media (min-width: 54.85714em) {
    .breadcrumbs {
      display: block; } }
  .breadcrumbs ul li {
    font-size: 12px;
    display: inline-block; }
    .breadcrumbs ul li.sep {
      margin: 0 10px; }
    .breadcrumbs ul li a {
      color: #181818; }
      .breadcrumbs ul li a.active {
        opacity: .4; }

.page-card {
  position: relative;
  display: block;
  background: #fff;
  box-shadow: 0 0 20px rgba(0, 0, 0, 0.07); }
  .page-card__link {
    display: block;
    width: 100%; }
  .page-card__img {
    display: block;
    width: 100%; }
  .page-card__text {
    display: block;
    padding: 20px; }
    @media (min-width: 60em) {
      .page-card__text {
        padding: 30px; } }
    .page-card__text h6 {
      margin-bottom: 7px; }
  .page-card:hover {
    box-shadow: 0 0 20px rgba(0, 0, 0, 0.14); }

.service-alerts::before, .service-alerts::after {
  content: '';
  display: table; }

.service-alerts::after {
  clear: both; }

.service-alerts__alert h6 {
  margin-bottom: 5px; }

.service-alerts__alert p {
  margin-bottom: 15px; }

.action-link {
  color: #d53f15;
  font-weight: 700;
  margin-bottom: 10px; }
  .action-link::before {
    content: '';
    width: 20px;
    height: 2px;
    background: #d53f15;
    display: inline-block;
    vertical-align: middle;
    margin-right: 5px;
    transition: width 300ms ease; }
  .action-link:hover {
    color: #d53f15; }
    .action-link:hover::before {
      width: 30px; }

.list li {
  margin-bottom: 5px; }
  .list li:last-child {
    margin-bottom: 0; }
  .list li a {
    color: #666; }
    .list li a:hover {
      color: #525252; }

.list--bullet, .list--number {
  margin-left: 20px; }

.list--bullet {
  list-style: disc; }

.list--number {
  list-style: decimal; }

.news-grid__col {
  position: relative; }
  @media (min-width: 34.28571em) {
    .news-grid__col:nth-child(1) {
      width: 49.15254%;
      float: left;
      margin-right: 1.69492%;
      padding-right: 3.44828%; } }
  @media (min-width: 54.85714em) {
    .news-grid__col:nth-child(1) {
      width: 32.20339%;
      float: left;
      margin-right: 1.69492%; } }
  @media (min-width: 60em) {
    .news-grid__col:nth-child(1) {
      width: 49.15254%;
      float: left;
      margin-right: 1.69492%; } }
  @media (min-width: 34.28571em) {
    .news-grid__col:nth-child(2) {
      width: 49.15254%;
      float: right;
      margin-right: 0;
      padding-left: 1.69492%; } }
  @media (min-width: 54.85714em) {
    .news-grid__col:nth-child(2) {
      width: 66.10169%;
      float: right;
      margin-right: 0; } }
  @media (min-width: 60em) {
    .news-grid__col:nth-child(2) {
      width: 49.15254%;
      float: right;
      margin-right: 0; } }
  @media (min-width: 54.85714em) {
    .news-grid__col:nth-child(2) .news-grid__article {
      width: 45.45455%;
      float: left; }
      .news-grid__col:nth-child(2) .news-grid__article:nth-child(2n + 1) {
        margin-left: 0;
        margin-right: -100%;
        clear: both;
        margin-left: 0; }
      .news-grid__col:nth-child(2) .news-grid__article:nth-child(2n + 2) {
        margin-left: 54.54545%;
        margin-right: -100%;
        clear: none; } }
  .news-grid__col:nth-child(2) .news-grid__article:nth-child(3), .news-grid__col:nth-child(2) .news-grid__article:nth-child(4) {
    display: none; }
    @media (min-width: 54.85714em) {
      .news-grid__col:nth-child(2) .news-grid__article:nth-child(3), .news-grid__col:nth-child(2) .news-grid__article:nth-child(4) {
        display: block; } }

.news-grid__article {
  margin-bottom: 11.11111%; }
  @media (min-width: 54.85714em) {
    .news-grid__article {
      margin-bottom: 5.26316%; } }
  .news-grid__article img {
    margin-bottom: 20px; }
  .news-grid__article small {
    font-size: 12px;
    display: block;
    margin-bottom: 5px; }
  .news-grid__article h5,
  .news-grid__article h6 {
    margin-bottom: 20px; }
  .news-grid__article p {
    margin-bottom: 20px; }
  @media (min-width: 34.28571em) {
    .news-grid__article--featured::after {
      content: '';
      width: 1px;
      height: 100%;
      background: #e7e7e7;
      position: absolute;
      top: 0;
      right: 0; } }

@viewport {
  zoom: 1;
  width: extend-to-zoom; }

@-ms-viewport {
  width: extend-to-zoom;
  zoom: 1; }

html {
  box-sizing: border-box;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-smoothing: antialiased; }

*,
*::before,
*::after {
  box-sizing: inherit; }

body {
  /* font-family: "Gotham SSm A", "Gotham SSm B", "Helvetica Neue", Helvetica, Arial, sans-serif; */
  font-family: 'Lato', sans-serif;
  font-size: 16px;
  line-height: 1.5;
  color: #535353; }
  body.no-scroll {
    width: 100%;
    position: fixed;
    overflow: hidden; }

/* ::-moz-selection {
  color: #fff;
  background: #d53f15; }

::selection {
  color: #fff;
  background: #d53f15; } */

main {
  /* min-height: calc(100vh - 70px); */
  background: #fff;
  position: relative;
  z-index: 1; }
  @media (min-width: 60em) {
    /* main {
      min-height: calc(100vh - 140px); } */ }

body {padding-top: 146px;}
	@media (min-width: 60em) {
		body {
		  padding-top: 158px; } }
	@media (min-width: 75em) {
		body {
		  padding-top: 158px; } }
	  
.header {
	width: 100%;
	border-bottom:1px solid #7a7a7a;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 999;
	background: #fff;}
.header .container {max-width:1920px;}	
	.header__alerts {
		display: none;
		background-color: #e5eaee;
		height: 180px;
		margin-top: -180px;
		transition: all 500ms ease; }
		@media (min-width: 60em) {
			.header__alerts {
				display: block; } }
		.header__alerts ul li {
			width: 240px;
			float: right;
			margin: 30px 30px 0 60px;
			text-align: right; }
		.header__alerts.open {
			margin-top: 0; }
	  
    .header__top {
		width: 100%;
		height: 44px;
		background: #244175;
		display: none; }
		@media (min-width: 60em) {
		  .header__top {
			  display: table; } }
		.header__top__social, .header__top__nav, .header__top__utilities, .header__top__accessibility {
			display: table-cell;
			vertical-align: middle; }
		.header__top__accessibility {
			width: 85px;}
		
		.header__top__accessibility a {
			display:inline-block;
			width:100%;
			height:27px;
      margin-top:8px;
      position: relative;
			border-right:1px solid #5f749a;
			background:url(/cms/images/ggb/accessibility.png) no-repeat 50% 50%;}
		.header__top__accessibility a:hover,	
    .header__top__accessibility a:focus {opacity: .7;}
    .header__top__accessibility a:hover:after, .header__top__accessibility a:focus:after {
      content: " ";
      width: 55%;
      height: 2px;
      background: #fff;
      position: absolute;
      margin: auto;
      bottom: -5px;
      right: 0;
      left: 0;
  }
	
    .header__top__social {
		width: 220px;
		padding-left: 20px; }
    .header__top__social li {padding:0 4px;}
	.header__top__social .social-icons__youtube {}
        .header__top__social .social-icons {
			margin-top: 5px; }
		
	.header__top__nav {
		padding-right: 20px; }
		.header__top__nav ul {
			text-align: right; }
		.header__top__nav ul li {
			display: inline-block;
			margin-left: 18px; }
		.header__top__nav ul li .pay-a-toll {
			width:200px; 
			background:url(/cms/images/ggb/toll-bkgd.png) no-repeat 50% 50% /100% auto;
			text-align: center;} 	
			
			.header__top__nav ul li a {
				text-transform: uppercase;
				font-size: 13.7px;
				color: #fff;
				text-decoration: none; }
			.header__top__nav ul li a:hover, .header__top__nav ul li a:focus {
				color: rgba(255, 255, 255, 0.8); text-decoration: underline; }
			  
    .header__top__utilities {
		width:385px;
		position: relative; }
        .header__top__utilities::before, 
		.header__top__utilities::after {
			content: '';
			display: table; }
        .header__top__utilities::after {
			clear: both; }
        .header__top__utilities__language, 
		.header__top__utilities__alerts {
			color: #fff;
			height: 43px;
			font-size: 13.7px;
			text-align: center;
			text-decoration: none;
			text-transform: uppercase;
      padding-top: 10px;
      border: 2px solid transparent;
      display: block;
    }
        .header__top__utilities__language {float:left; width:200px;}
		.header__top__utilities__language {padding-top:8px;}
		.header__top__utilities__alerts {
      float: right;
      width: 180px;
      font-weight: bold;
			background: #d53f15;
			right: 0; 
    }
        .header__top__utilities__alerts:hover, 
        .header__top__utilities__alerts:focus {
          color: #d53f15;
          background: #fff;
          border-color: #d53f15;
        }
        .header__top__utilities__alerts span {
          color: #ca4f12;
          width: 16px;
          height: 16px;
          font-size: 10px;
          font-weight: 900;
          margin: -4px 0 0 5px;
          padding: 0;
          border-radius: 100%;
          background: #f4f3f3;
          vertical-align: middle;
          display: inline-block;
        }
        .header__top__utilities__alerts:hover span, 
        .header__top__utilities__alerts:focus span { color: #fff; background: #d53f15; }

		@media (min-width: 75em) and (max-width:81.250em) {
			.header__top__social li {padding: 0 5px;}
			.header__top__nav {padding-right: 10px;}
			.header__top__nav ul li {margin-left:10px;}
			.header__top__nav ul li a {font-size:13.4px;}
			.header__top__nav ul li .pay-a-toll {width:170px;}
			.header__top__utilities {width: 370px;}
			.header__top__utilities__language, 
			.header__top__utilities__alerts {font-size:13.5px;}
			.header__top__utilities__alerts {width:170px;}			
			
		}	
		@media (min-width: 60em) and (max-width:74.938em) {
			.header__top__social  {display:none;}
			.header__top__nav {padding-right: 10px;}			
			.header__top__nav ul li {margin-left:15px;}
			.header__top__nav ul li a {font-size:12px;}
			.header__top__nav ul li .pay-a-toll {width:auto;}
			.header__top__utilities {width: 360px;}
			.header__top__utilities__language, 
			.header__top__utilities__alerts {font-size:11.5px; /* padding-top: 13px; */}
			.header__top__utilities__alerts {width:160px;}
		}		
			

			
	.header__main {
		width: 100%;
		height: 65px;
		background: #fff;
		display: table; }
		@media (min-width: 75em) {
			.header__main {
				height: 113px; } }
    .header__main__logo {
		padding-top: 20px;
		padding-bottom: 20px;
		padding-left: 20px; }
		@media (min-width: 60em) {
			.header__main__logo {
				width: 360px;
				width:30%;
				padding-top: 0;
				padding-bottom: 0;
				padding-left: 30px;
				padding-right:20px;
				display: table-cell;
				vertical-align: middle; } }
        .header__main__logo a,
		.header__main__logo h1 {
			display: block;
			text-align:center;
			max-width: 240px;
			margin: 0 auto;	}
        .header__main__logo a img,
		.header__main__logo h1 img		{
			/* display: block; */
			height: 30px; }
            @media (min-width: 60em) {
				.header__main__logo a,
				.header__main__logo h1 {max-width:320px;}
				.header__main__logo a img,
				.header__main__logo h1 img {
				    /* height: 40px; */ 
					width:320px; } }
					
    /* .header__main__nav {
      display: none;
      font-size: 0; }
      @media (min-width: 60em) {
        .header__main__nav {
          display: table-cell;
          vertical-align: middle; } }
      .header__main__nav > li {
        width: 25%;
        display: inline-block;
        z-index: 10; }
        .header__main__nav > li > a {
          display: block;
          padding: 20px 0;
          text-transform: uppercase;
          text-decoration: none;
          color: #181818;
          font-size: 13px;
          font-weight: 700;
          border-left: 1px solid #e7e7e7;
          text-align: center; }
          @media (min-width: 54.85714em) {
            .header__main__nav > li > a {
              padding: 30px 0; } }
          .header__main__nav > li > a:hover {
            color: #d53f15; }
          .header__main__nav > li > a::after {
            content: '';
            width: 12px;
            height: 12px;
            background-image: url("/cms/images/ggb/down.png");
            background-position: center center;
            background-repeat: no-repeat;
            background-size: 12px 12px;
            display: inline-block;
            vertical-align: middle;
            margin-left: 9px;
            margin-top: -3px; }
        .header__main__nav > li ul {
          width: 100%;
          background-color: #fff;
          background-position: 120px center;
          background-size: 80px 80px;
          background-repeat: no-repeat;
          border-top: 1px solid #e7e7e7;
          box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
          padding: 30px 360px 15px 340px;
          position: absolute;
          top: 100%;
          left: 0;
          z-index: 9;
          opacity: 0;
          visibility: hidden;
          transition: all 400ms ease; }
          .header__main__nav > li ul::before, .header__main__nav > li ul::after {
            content: '';
            display: table; }
          .header__main__nav > li ul::after {
            clear: both; }
          .header__main__nav > li ul li {
            width: 33.33333%;
            margin-bottom: 20px;
            float: left; }
            .header__main__nav > li ul li a {
              display: block;
              text-decoration: none;
              color: #181818;
              font-size: 14px; }
              .header__main__nav > li ul li a:hover {
                color: #d53f15; }
        .header__main__nav > li:hover > a {
          color: #d53f15; }
        .header__main__nav > li:hover ul {
          opacity: 1;
          visibility: visible; }
      .header__main__nav__bridge {
        background-image: url("/cms/images/ggb/bridge-icon.svg"); }
      .header__main__nav__bus {
        background-image: url("/cms/images/ggb/bus-icon.svg"); }
      .header__main__nav__ferry {
        background-image: url("/cms/images/ggb/ferry-icon.svg"); }
      .header__main__nav__district {
        background-image: url("/cms/images/ggb/district-icon.svg"); } */
		
		
    /* .header__main__search {
		width: 360px;
		border-left: 1px solid #e7e7e7;
		position: relative;
		display: none; }
		@media (min-width: 60em) {
			.header__main__search {
			    display: table-cell;
			    vertical-align: middle; } }
        .header__main__search input {
			height: 80px;
			padding: 0 80px 0 40px;
			font-size: 13px;
			border: 0; }
        .header__main__search input::-webkit-input-placeholder {
			font-weight: 700;
			color: rgba(24, 24, 24, 0.3);
			text-transform: uppercase; }
		.header__main__search button {
			width: 20px;
			height: 20px;
			border: 0;
			outline: none;
			background-color: transparent;
			background-image: url("/cms/images/ggb/loupe.png");
			background-repeat: no-repeat;
			background-size: 20px 20px;
			position: absolute;
			top: 50%;
			right: 40px;
			margin-top: -10px;
			cursor: pointer; }
			.header__main__search button:hover {
			    opacity: .7; } */
		  
/* Search */
.searchToggle {
  display: inline-block;
  background:#fff;
  font-size:11px;
  font-weight:bold;
  color:#fff;
  z-index: 9;
  text-decoration:none;
  width: 165px;
  height:113px;
  text-align:center;
  text-transform:uppercase;
  float:right;
  background-image: url(/cms/images/ggb/icon-search.png);
  background-repeat: no-repeat;
  background-position: 50% 50%;
  border-left:1px solid #f0f0f0;
  border-right:1px solid #f0f0f0;	
}

.searchToggle:hover,
.searchToggle:focus {background-color:#eeeeee; color:#eee; border-style:none;}

.siteSearchWrpr {
    background: #eeeeee;
    display: none;
    left: 0;
    padding: 25px 0;
    position: absolute;
	left:0;
	right:0;
    top: 158px;
	/* z-index: 200; */
	transition: all 500ms ease;
}


.siteSearchWrpr .container {}

.siteSearch {
	margin:0 auto;
	position:relative;
	width:700px;
	padding-right:92px;
}

.siteSearch input[type="text"] {
    border: medium none;
    font-size: 19px;
    outline: medium none;
	height:60px;
    padding: 15px 30px 16px 30px;
    width: 100%;
	background:#fff;
	color:#000;
	font-weight: 600;
	font-family: 'Lato', sans-serif;
	font-style:italic;
	-webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box;
	-webkit-border-radius:10px; -moz-border-radius:10px; border-radius:10px;	
}

.siteSearch .btnWrapper {
	background:#446bbd;
    cursor: pointer;
    height: 60px;
    position: absolute;
    right: 0;
    top: 0;
    width: 85px;
	-webkit-border-radius:10px; -moz-border-radius:10px; border-radius:10px;	
}
.siteSearch .btn {
	background:none;
    border: medium none;
    height: 60px;
    padding: 0;
    width: 85px;
	min-width:85px;
	/* background-image: url(/cms/images/ggb/icon-search-white.png); */
	background-repeat: no-repeat;
	background-position: 14px 10px;
	-webkit-border-radius:10px; -moz-border-radius:10px; border-radius:10px;	
	font-size:17.2px;
	font-weight:900;
	text-transform:uppercase;
}

/*
.siteSearch .btnWrapper:after {
	position:absolute;
	content:"GO";
	left:30px;
	top:17px;
	font-size:17.2px;
	font-weight:900;
	color:#fff;
}
*/

.header__alerts.open + .header__top + .header__main .siteSearchWrpr {top:100%; transition: all 500ms ease;}

.navWrpr {margin-right:165px;}

@media (min-width: 75em) and (max-width:81.250em) {
	.searchToggle {width:170px;}
	.navWrpr { margin-right:170px;}
}	

@media (min-width: 60em) and (max-width:74.938em) {
	.siteSearch input[type="text"] {font-size:17px; height:45px; padding: 10px 30px 11px 30px;}
	.siteSearch .btnWrapper {height:45px;}
	.siteSearch .btn {height:45px;}
	.siteSearch .btnWrapper:after {top:10px;}
}		  

.headroom {
  will-change: transform;
  transition: transform 200ms linear; }

.headroom--pinned {
  transform: translateY(0); }
  @media (min-width: 60em) {
    .headroom--pinned {
      transform: translateY(-40px); }
      .headroom--pinned.headroom--top {
        transform: translateY(0); } }

.headroom--unpinned {
  transform: translateY(-100%);
  box-shadow: none; }

  
.mobile {
  width: 100%;
  height: 100%;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1000;
  transition: transform 600ms ease;
  transform: translate3d(-100%, 0, 0); }
  .mobile::before {
    content: '';
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 200%;
    height: 100%;
    background: rgba(0, 0, 0, 0.5);
    opacity: 0;
    visibility: hidden;
    transition: all 600ms ease; }
  .mobile__menu {
    width: 280px;
    max-width: calc(100% - 70px);
    height: 100%;
    background: #fff;
    box-shadow: 0 0 30px rgba(0, 0, 0, 0.2);
    position: absolute;
    top: 0;
    left: 0;
    overflow-x: hidden;
    overflow-y: scroll;
    -webkit-overflow-scrolling: touch; }
    .mobile__menu__logo {
      padding: 20px;
      border-bottom: 1px solid #e7e7e7; }
      .mobile__menu__logo a {
        display: block; }
        .mobile__menu__logo a img {
          display: block;
          height: 30px; }
    .mobile__menu__nav {
      padding: 20px 30px;
      border-bottom: 1px solid #e7e7e7; }
      .mobile__menu__nav li {
        position: relative; }
        .mobile__menu__nav li a {
          display: block;
          position: relative;
          text-transform: uppercase;
          color: #181818;
          font-size: 14px;
          font-weight: 700;
          padding: 15px 0; }
          .mobile__menu__nav li a span {
            width: 30px;
            height: 30px;
            border: 1px solid #d8d8d8;
            border-radius: 100%;
            position: absolute;
            top: 50%;
            right: 0;
            transform: translateY(-50%);
            cursor: pointer; }
            .mobile__menu__nav li a span::before {
              content: '';
              width: 10px;
              height: 10px;
              border-top: 2px solid #cecece;
              border-left: 2px solid #cecece;
              position: absolute;
              top: 50%;
              left: 50%;
              transform: rotate(225deg) translate(-50%, -50%);
              transform-origin: top left;
              margin-top: -1px; }
        .mobile__menu__nav li ul {
          display: none;
          margin-top: 10px;
          margin-bottom: 20px; }
          .mobile__menu__nav li ul li {
            margin-bottom: 10px; }
            .mobile__menu__nav li ul li:last-child {
              margin-bottom: 0; }
          .mobile__menu__nav li ul a {
            padding: 0;
            text-transform: none;
            font-weight: 400; }
        .mobile__menu__nav li.open span::before {
          transform: rotate(45deg) translate(-50%, -50%);
          margin-top: 2px; }
        .mobile__menu__nav li.open ul {
          display: block; }
    .mobile__menu__utilities {
      padding: 20px 30px;
      border-bottom: 1px solid #e7e7e7; }
      .mobile__menu__utilities li {
        margin-bottom: 10px; }
        .mobile__menu__utilities li:last-child {
          margin-bottom: 0; }
      .mobile__menu__utilities a {
        display: block;
        color: #666;
        font-size: 12px;
        font-weight: 700;
        text-transform: uppercase; }
        .mobile__menu__utilities a.language, .mobile__menu__utilities a.alerts {
          text-align: center;
          padding: 10px; }
        .mobile__menu__utilities a.language {
          position: relative;
          background: #e2e2e2;
          color: #181818;
          margin-top: 30px; }
          .mobile__menu__utilities a.language img {
            width: 20px;
            height: auto;
            display: inline-block;
            vertical-align: middle;
            margin-right: 6px;
            position: relative;
            top: -1px; }
          .mobile__menu__utilities a.language .dropup {
            display: none;
            width: 100%;
            height: 165px;
            background: #fff;
            box-shadow: 0 0 10px rgba(0, 0, 0, 0.2);
            padding: 10px 0;
            position: absolute;
            bottom: calc(100% + 5px);
            left: 0;
            z-index: 10;
            overflow-y: scroll;
            -webkit-overflow-scrolling: touch; }
            .mobile__menu__utilities a.language .dropup li {
              font-size: 11px;
              font-weight: 400;
              text-align: left;
              color: #181818;
              padding: 5px 20px;
              text-transform: none; }
              .mobile__menu__utilities a.language .dropup li:hover {
                background: #e5eaee; }
            .mobile__menu__utilities a.language .dropup .active {
              font-weight: 700; }
          .mobile__menu__utilities a.language.open .dropup {
            display: block; }
        .mobile__menu__utilities a.alerts {
          background: #d53f15;
          color: #fff; }
          .mobile__menu__utilities a.alerts span {
            width: 20px;
            height: 20px;
            border-radius: 100%;
            color: #fff;
            background: rgba(255, 255, 255, 0.2);
            display: inline-block;
            vertical-align: middle;
            margin-left: 5px;
            margin-top: -2px;
            padding-top: 2px;
            text-align: center; }
    .mobile__menu__search {
      height: 50px;
      position: relative;
      border-bottom: 1px solid #e7e7e7; }
      .mobile__menu__search input {
        width: 100%;
        height: 100%;
        padding: 0 70px 0 30px;
        font-family: inherit;
        font-size: 13px;
        outline: none;
        border: 0;
        position: absolute;
        top: 0;
        left: 0; }
        .mobile__menu__search input::-webkit-input-placeholder {
          font-weight: 700;
          color: rgba(24, 24, 24, 0.3);
          text-transform: uppercase; }
      .mobile__menu__search button {
        width: 20px;
        height: 20px;
        border: 0;
        outline: none;
        background-color: transparent;
        background-image: url("/cms/images/ggb/loupe.png");
        background-repeat: no-repeat;
        background-size: 20px 20px;
        position: absolute;
        top: 50%;
        right: 15px;
        margin-top: -10px;
        cursor: pointer;
        opacity: .7; }
    .mobile__menu__social {
      padding: 20px 30px; }
      .mobile__menu__social .social-icons {
        margin-top: 5px;
        text-align: center; }
  .mobile--open {
    transform: none; }
    .mobile--open::before {
      opacity: 1;
      visibility: visible; }


.header__main .header__top__utilities {display:none;}
.main-nav .top-nav-li{display:none;} 
.main-nav .social-icons-li {display:none;}




.main-content {padding:40px 0 20px; outline: none;
-webkit-box-sizing: content-box; -moz-box-sizing: content-box; box-sizing: content-box;
}
.corlnav {
	padding:40px 0 60px 0;
	position:relative;
	-webkit-box-sizing: content-box; -moz-box-sizing: content-box; box-sizing: content-box;
	/* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#ffffff+0,f5f4f3+50,f5f4f3+100 */
	background: #ffffff; /* Old browsers */
	background: -moz-linear-gradient(top,  #ffffff 0%, #f5f4f3 50%, #f5f4f3 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(top,  #ffffff 0%,#f5f4f3 50%,#f5f4f3 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to bottom,  #ffffff 0%,#f5f4f3 50%,#f5f4f3 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#f5f4f3',GradientType=0 ); /* IE6-9 */
}

.corlnav:before {
    position: absolute;
    content: "";
    width: 9999em;
    height: 100%;
    /* left: -100%; */
	right:30px;
    top: 0;
	background: #ffffff; /* Old browsers */
	background: -moz-linear-gradient(top,  #ffffff 0%, #f5f4f3 50%, #f5f4f3 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(top,  #ffffff 0%,#f5f4f3 50%,#f5f4f3 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to bottom,  #ffffff 0%,#f5f4f3 50%,#f5f4f3 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#f5f4f3',GradientType=0 ); /* IE6-9 */
    z-index: -1;
}

.side-right:before {
    left: 30px;
}

.sitebody {
	overflow-x:hidden;
}

@media (max-width:47.938em) {
	.main-content, .corlnav {min-height:0 !important;} 
}

@media (max-width:59.938em) {
	.two-column .main-content, 
	.two-column .corlnav {min-height:0 !important;} 
}

@media (max-width:59.938em) {
	/* body {padding:0;} */
	/* .header {position:static;} */
	.header__main {background:#234174;}
	.header__main__logo {background:#fff; padding:20px 20px 20px 85px; height:80px; border-bottom:3px solid #001b61;}
	.header__main__logo img {width:240px;}
	
	/* .main-content, .corlnav {min-height:0 !important;} */ 
	.corlnav {margin-right:0; padding-right:0; padding-bottom:20px;}
	.corlnav:before {right:0; margin-right:0;}
	
	.searchToggle {display:none;}
	
	/* a.searchToggle {background:none; border-left:none; border-right:none; width:90px; height:62px; background-image: url(/cms/images/ggb/icon-search-white.png); background-repeat: no-repeat; background-position: 50% 9px;}
	a.searchToggle .searchToggleTxt {position:relative; top:40px; color:#9fb6de;} 
	a.searchToggle:hover, a.searchToggle:focus {background-color:#234174; opacity:.8;} */
	
	.siteSearchWrpr {display:block !important; position:static; margin-left: 20px; margin-right:20px; padding:10px 0; background:none;}
	.siteSearch { width:100%; padding-right:0; }
	.siteSearch input[type="text"] {height:45px; padding: 10px 60px 10px 15px; font-size:16px; font-weight:bold; background:#425c8e; color:#fff; text-transform:none;}
	.siteSearch .btnWrapper {width:55px; height:45px; background:#425c8e;}
	.siteSearch .btnWrapper:hover, .siteSearch .btnWrapper:hover .btn, 
	.siteSearch .btnWrapper:focus, .siteSearch .btnWrapper:focus .btn {background:#425c8e 		url(/cms/images/ggb/icon-search-white.png) no-repeat 50% 50%; opacity:.8;}
	
	
	.siteSearch .btnWrapper:after {display:none;}
	.siteSearch .btn {background: url(/cms/images/ggb/icon-search-white.png) no-repeat 50% 50%; width:55px; height:45px; min-width:45px; color: transparent;}
	
	/* .header__main .pay-a-toll {display:block; position:absolute; left:50%; margin-left:-50px; bottom:12px; width:100px; padding:10px 10px;
		background: url(/cms/images/ggb/toll-bkgd.png) no-repeat 20px 0,
					url(/cms/images/ggb/toll-bkgd.png) no-repeat 15px 100%;
	}
	.header__main .pay-a-toll a {color:#fff; text-transform:uppercase;}
	.header__main .pay-a-toll:hover,
	.header__main .pay-a-toll:focus {opacity:.8;} */
	
	.header__main .header__top__utilities {display:block; width:80px; height:65px; position:absolute; left:0; bottom:0; padding-bottom:3px; }
	
	.header__main .header__top__utilities__alerts {display:none;}
	.mobile-nav .header__top__utilities__alerts {display:block; float: none; width: 100%;}
	.mobile-nav .header__top__utilities__alerts:hover,
	.mobile-nav .header__top__utilities__alerts:focus {color:#d53f15;}
	.mobile-nav .header__top__utilities__alerts + .header__top__utilities__alerts {display:none;}
	.header__main .header__top__utilities__language {padding-top:0; height:65px; padding-bottom:5px; font-size:12px; width:80px; padding:15px 0 3px; display:none;}
	.header__main .header__top__utilities__language:hover, 
	.header__main .header__top__utilities__language:focus {background:#234174;}
	.header__main .header__top__utilities__language:after {display:none;}
	.header__main .header__top__utilities__language img {margin:0 10px 3px 10px; width:24px;}
	
	.header__main .header__top__utilities__language__dropdown {width:180px;}
	
	.main-nav .top-nav-li {display:block;}
	.main-nav .social-icons-li {display:inline-block; padding-left: 25px; margin-top:40px;}
	.main-nav .social-icons-li a {width:20px; height:20px; background:#234174; background-size: 20px 20px; background-repeat: no-repeat; background-position: center; padding:0;}
	.main-nav .social-icons-li  .social-icons__facebook {
		background-image: url("/cms/images/ggb/facebook.png"); }
	.main-nav .social-icons-li  .social-icons__youtube {
		background-image: url("/cms/images/ggb/youtube.png"); }
	.main-nav .social-icons-li  .social-icons__twitter {
		background-image: url("/cms/images/ggb/twitter.png"); }
	.main-nav .social-icons-li  .social-icons__instagram {
		background-image: url("/cms/images/ggb/instagram.png"); }		
	.main-nav .social-icons-li  .social-icons__flickr {
		background-image: url("/cms/images/ggb/flickr.png"); }
	.main-nav .social-icons-li  .social-icons__rss {
		background-image: url("/cms/images/ggb/rss.png"); }
	.main-nav .social-icons-li a.social-icons__youtube {width: 46px; background-size: 46px 20px;}	

	.two-column .grid_8.push_4 {width:100%; left:0;}
	.two-column .grid_4.pull_8 {width:100%; left:0;}	
}	  
	  
  
.footer {
	width: 100%;
	background: #181818;
	padding: 20px 0 20px;
	z-index: 0; }
	@media (min-width:48em) {
		.footer {
			padding: 20px 0 30px; } 
	}	
	@media (min-width:75em) {
		.footer {
			padding: 60px 0 40px; } 
	}

	.footer__links__wrpr {display:none;}
		@media (min-width:48em) {
			.footer__links__wrpr {display:block;} 
		}	
	.footer__links {
		color:#fff;
		width: 100%;
		padding: 10px 0; }
		.footer__links h6 {
			color:#fff;
			font-size: 16px;
			/* font-family: "Gotham SSm A", "Gotham SSm B", "Helvetica Neue", Helvetica, Arial, sans-serif; */
			font-family: 'Lato', sans-serif;
			font-weight: 700;
			text-transform: uppercase;
			margin-bottom: 10px; }
			.footer__links h6 a {
				color: #fff;
				text-decoration:none;}
				.footer__links h6 a:hover, 
				.footer__links h6 a:focus  {text-decoration:underline;}
    .footer__links ul li a {
		position:relative;
		padding-right:10px;
		font-size: 14px; 
		color:#fff;
		text-decoration:none;}
		
		.footer__links ul li a:after {
			position: absolute;
			content: "\232a";
			font-family: 'icomoon';
			color: #757575;
			top:3px;
			right:0;
			width:5px;
			height:10px;
			font-size:10px;
		}
		.footer__links ul li a:hover, .footer__links ul li a:focus {color:#fff; text-decoration:underline;}  
		@media (min-width: 75em) {
			.footer__links ul li a {
			    font-size: 16px; }
		}
		  
	.footer__nav {
		text-align: center;
		padding: 20px 0;
		margin:0 0 30px 0; 
		border-top: 1px solid #373636;
		border-bottom: 1px solid #373636;}
		/* @media (min-width: 54.85714em) {
		  .footer__nav {
			width: 40.67797%;
			float: left;
			margin-right: 1.69492%;
			text-align: left;
			padding: 0;
			margin-bottom: 0; } } */
			@media (min-width: 48em) {
				.footer__nav  {display:block; margin: 40px 0; }
			}
			@media (min-width: 75em) {
				.footer__nav  {
					margin: 50px 0;}
			}
			
    .footer__nav ul li {
        display: inline-block;}
		.footer__nav ul li a {
			position:relative;
			font-size: 12px;
			padding:0 10px;
			text-decoration: none;
			text-transform: uppercase;
			color: #fff; }
			.footer__nav ul li a:hover, 
			.footer__nav ul li a:focus{
				text-decoration:underline; }
			.footer__nav ul li a:after {
				position:absolute;
				content:"";
				top:3px;
				right:0;
				width:1px;
				height:14px;
				background:#373636;
			}
			.footer__nav ul li:last-child a:after {display:none;}
			@media (min-width: 75em) {
				.footer__nav ul li a {font-size: 14px; padding:0 15px;}
			}
			
	.footer__social {
		margin-bottom: 20px;
		text-align: center; }
		/* @media (min-width: 54.85714em) {
		  .footer__social {
			width: 23.72881%;
			float: left;
			margin-right: 1.69492%;
			margin-bottom: 0; } } */
		.footer__social .social-icons {
			text-align: center;
			margin-top: 5px; }
	  
	.footer__legal {
		text-align: center;
		padding: 0 20px;
		font-size: 12px;
		color: #fff; }
    /* @media (min-width: 54.85714em) {
      .footer__legal {
        width: 32.20339%;
        float: left;
        margin-right: 1.69492%;
        float: right;
        margin-right: 0;
        text-align: right; } } */
			.footer__legal span{display:block;}
		@media (min-width: 48em) {
			.footer__legal {font-size: 14px;}
			.footer__legal span{display:inline-block;}
		}
		

.front {
  overflow-x: hidden; }
  .front .hero {
    background-position: 70% top; }
    @media tabket {
      .front .hero {
        background-position: center top; } }
  .front__featured {
    position: relative;
    background: #e5eaee;
    padding-bottom: 70px; }
    .front__featured__wrapper {
      background: #fff;
      box-shadow: 0 0 30px rgba(0, 0, 0, 0.1);
      margin-top: -100px;
      position: relative;
      z-index: 3; }
    .front__featured__tabs::before, .front__featured__tabs::after {
      content: '';
      display: table; }
    .front__featured__tabs::after {
      clear: both; }
    .front__featured__tabs li {
      width: 25%;
      background: #e5eaee;
      padding: 15px;
      text-align: center;
      text-transform: uppercase;
      font-size: 11px;
      float: left;
      cursor: pointer;
      border-right: 1px solid #fff; }
      @media (min-width: 54.85714em) {
        .front__featured__tabs li {
          padding: 20px; } }
      @media (min-width: 60em) {
        .front__featured__tabs li {
          font-size: 12px; } }
      .front__featured__tabs li:last-child {
        border-right: 0; }
      .front__featured__tabs li i {
        width: 32px;
        height: 32px;
        background-size: 32px 32px;
        display: inline-block;
        vertical-align: middle;
        opacity: .5; }
        @media (min-width: 54.85714em) {
          .front__featured__tabs li i {
            display: block;
            margin: 0 auto 10px; } }
      .front__featured__tabs li span {
        display: none; }
        @media (min-width: 54.85714em) {
          .front__featured__tabs li span {
            display: inline-block; } }
      .front__featured__tabs li.active {
        background: #fff;
        font-weight: 700;
        color: #181818; }
        .front__featured__tabs li.active i {
          opacity: 1; }
      .front__featured__tabs li:hover {
        background: #dbe0e4; }
        .front__featured__tabs li:hover.active {
          background: #fff; }
    .front__featured__tabs--route i {
      background-image: url("/cms/images/ggb/route-icon.svg"); }
    .front__featured__tabs--schedules i {
      background-image: url("/cms/images/ggb/schedules-icon.svg"); }
    .front__featured__tabs--toll i {
      background-image: url("/cms/images/ggb/toll-icon.svg"); }
    .front__featured__tabs--visit i {
      background-image: url("/cms/images/ggb/visit-icon.svg"); }
    .front__featured__content {
      width: 100%;
      display: none; }
      .front__featured__content.active {
        display: table; }
      .front__featured__content--route .front__featured__content__image {
        background-image: url("/cms/images/ggb/front-map.jpg"); }
      .front__featured__content--route form::before, .front__featured__content--route form::after {
        content: '';
        display: table; }
      .front__featured__content--route form::after {
        clear: both; }
      .front__featured__content--route form label[for="toInput"],
      .front__featured__content--route form label[for="fromInput"] {
        padding-bottom: 6px; }
      .front__featured__content--route form fieldset {
        float: left; }
        .front__featured__content--route form fieldset:nth-of-type(1), .front__featured__content--route form fieldset:nth-of-type(2) {
          width: 100%;
          margin-bottom: 30px; }
          @media (min-width: 54.85714em) {
            .front__featured__content--route form fieldset:nth-of-type(1), .front__featured__content--route form fieldset:nth-of-type(2) {
              width: calc(50% - 15px); } }
        @media (min-width: 54.85714em) {
          .front__featured__content--route form fieldset:nth-of-type(2) {
            margin-left: 30px; } }
        .front__featured__content--route form fieldset:nth-of-type(3) {
          width: 100%; }
          @media (min-width: 54.85714em) {
            .front__featured__content--route form fieldset:nth-of-type(3) {
              width: 25%; } }
          .front__featured__content--route form fieldset:nth-of-type(3) input {
            display: none; }
            .front__featured__content--route form fieldset:nth-of-type(3) input:checked + label::after {
              display: block; }
          .front__featured__content--route form fieldset:nth-of-type(3) label {
            width: 50%;
            margin-bottom: 10px;
            position: relative;
            padding-left: 25px;
            float: left; }
            @media (min-width: 54.85714em) {
              .front__featured__content--route form fieldset:nth-of-type(3) label {
                width: 100%;
                float: none; } }
            .front__featured__content--route form fieldset:nth-of-type(3) label::before {
              content: '';
              width: 20px;
              height: 20px;
              border: 2px solid #d8d8d8;
              border-radius: 100%;
              position: absolute;
              top: -2px;
              left: 0; }
            .front__featured__content--route form fieldset:nth-of-type(3) label::after {
              content: '';
              display: none;
              width: 10px;
              height: 10px;
              background: #1c75bc;
              border-radius: 100%;
              position: absolute;
              top: 3px;
              left: 5px; }
        .front__featured__content--route form fieldset:nth-of-type(4) {
          width: 100%; }
          .front__featured__content--route form fieldset:nth-of-type(4)::before, .front__featured__content--route form fieldset:nth-of-type(4)::after {
            content: '';
            display: table; }
          .front__featured__content--route form fieldset:nth-of-type(4)::after {
            clear: both; }
          @media (min-width: 54.85714em) {
            .front__featured__content--route form fieldset:nth-of-type(4) {
              width: 40%; } }
          .front__featured__content--route form fieldset:nth-of-type(4) input {
            width: calc(50% - 10px);
            float: left; }
            .front__featured__content--route form fieldset:nth-of-type(4) input:nth-of-type(2) {
              margin-left: 20px; }
        .front__featured__content--route form fieldset label {
          display: block;
          color: #181818;
          text-transform: uppercase;
          font-weight: 700;
          font-size: 12px; }
      .front__featured__content--route form button[type="submit"] {
        float: left;
        margin-top: 20px; }
        @media (min-width: 54.85714em) {
          .front__featured__content--route form button[type="submit"] {
            width: 30%;
            margin-top: 0;
            float: right; } }
      .front__featured__content--schedules::before, .front__featured__content--schedules::after, .front__featured__content--toll::before, .front__featured__content--toll::after, .front__featured__content--visit::before, .front__featured__content--visit::after {
        content: '';
        display: table; }
      .front__featured__content--schedules::after, .front__featured__content--toll::after, .front__featured__content--visit::after {
        clear: both; }
      .front__featured__content--schedules .pre-heading, .front__featured__content--toll .pre-heading, .front__featured__content--visit .pre-heading {
        margin-bottom: 20px; }
      .front__featured__content--schedules .list::before, .front__featured__content--schedules .list::after, .front__featured__content--toll .list::before, .front__featured__content--toll .list::after, .front__featured__content--visit .list::before, .front__featured__content--visit .list::after {
        content: '';
        display: table; }
      .front__featured__content--schedules .list::after, .front__featured__content--toll .list::after, .front__featured__content--visit .list::after {
        clear: both; }
      .front__featured__content--schedules .list li, .front__featured__content--toll .list li, .front__featured__content--visit .list li {
        margin-bottom: 10px; }
        @media (min-width: 54.85714em) {
          .front__featured__content--schedules .list li, .front__featured__content--toll .list li, .front__featured__content--visit .list li {
            width: calc(100% / 3 - 20px);
            float: left;
            margin: 10px 20px 10px 0; } }
        .front__featured__content--schedules .list li a, .front__featured__content--toll .list li a, .front__featured__content--visit .list li a {
          display: block; }
      .front__featured__content--schedules .front__featured__content__image, .front__featured__content--toll .front__featured__content__image, .front__featured__content--visit .front__featured__content__image {
        background-image: url("/cms/images/ggb/front-schedules.jpg"); }
      .front__featured__content--toll .front__featured__content__image {
        background-image: url("/cms/images/ggb/front-toll.jpg"); }
      .front__featured__content--visit .front__featured__content__image {
        background-image: url("/cms/images/ggb/front-visit.jpg"); }
      .front__featured__content__main {
        width: 100%;
        padding: 30px; }
        @media (min-width: 54.85714em) {
          .front__featured__content__main {
            width: 70%;
            display: table-cell;
            vertical-align: middle; } }
        .front__featured__content__main h3 {
          margin-bottom: 20px; }
          @media (min-width: 54.85714em) {
            .front__featured__content__main h3 {
              display: none; } }
      .front__featured__content__image {
        display: none;
        background-position: center center;
        background-size: cover; }
        @media (min-width: 54.85714em) {
          .front__featured__content__image {
            display: table-cell;
            vertical-align: middle;
            width: 30%;
            height: auto; } }
  .front__services {
    background: #e5eaee;
    position: relative;
    z-index: 2; }
    .front__services::before {
      content: '';
      width: 100%;
      height: 200px;
      background: linear-gradient(to top, white 0%, rgba(255, 255, 255, 0) 100%);
      position: absolute;
      bottom: 0;
      left: 0;
      z-index: 0; }
    .front__services__box {
      width: 100%;
      float: left;
      margin-left: 0;
      margin-right: 0;
      position: relative;
      background: #fff;
      box-shadow: 0 0 20px rgba(0, 0, 0, 0.05);
      margin-bottom: 1.69492%; }
      @media (min-width: 54.85714em) {
        .front__services__box {
          width: 49.15254%;
          float: left;
          margin-right: 1.69492%; } }
      .front__services__box:nth-child(2n + 2) {
        float: right;
        margin-right: 0; }
      .front__services__box__image {
        width: 30%;
        height: 100%;
        background-size: cover;
        position: absolute;
        top: 0;
        left: 0; }
        .front__services__box__image::after {
          content: '';
          width: 100%;
          height: 100%;
          position: absolute;
          top: 0;
          left: 0;
          opacity: .5; }
      .front__services__box__header,
      .front__services__box ul {
        margin-left: 30%;
        display: block; }
      .front__services__box__header {
        padding: 20px 30px 20px 20px;
        position: relative; }
        @media (min-width: 54.85714em) {
          .front__services__box__header {
            padding: 30px 60px 30px 30px; } }
        .front__services__box__header h5 {
          margin-bottom: 10px; }
        .front__services__box__header p {
          color: #666;
          font-size: 11px; }
          @media (min-width: 54.85714em) {
            .front__services__box__header p {
              font-size: 14px; } }
        .front__services__box__header span {
          width: 12px;
          height: 12px;
          border-top: 2px solid;
          border-right: 2px solid;
          position: absolute;
          top: 50%;
          right: 20px;
          transform: rotate(45deg) translateY(-50%); }
          @media (min-width: 54.85714em) {
            .front__services__box__header span {
              right: 30px; } }
      .front__services__box ul {
        padding-bottom: 20px; }
        .front__services__box ul li a {
          color: #181818;
          text-transform: uppercase;
          font-size: 12px;
          font-weight: 700;
          display: block;
          border-top: 1px solid #e7e7e7;
          padding: 15px 20px; }
          @media (min-width: 54.85714em) {
            .front__services__box ul li a {
              padding: 15px 30px; } }
      .front__services__box--bridge .front__services__box__image {
        background-image: url("/cms/images/ggb/services-bridge.jpg"); }
        .front__services__box--bridge .front__services__box__image::after {
          background: #d53f15; }
      .front__services__box--bridge h5 {
        color: #d53f15; }
      .front__services__box--bridge span {
        border-color: #d53f15; }
      .front__services__box--bridge ul li a:hover {
        color: #d53f15; }
      .front__services__box--bus .front__services__box__image {
        background-image: url("/cms/images/ggb/services-bus.jpg"); }
        .front__services__box--bus .front__services__box__image::after {
          background: #16763b; }
      .front__services__box--bus h5 {
        color: #16763b; }
      .front__services__box--bus span {
        border-color: #16763b; }
      .front__services__box--bus ul li a:hover {
        color: #16763b; }
      .front__services__box--ferry .front__services__box__image {
        background-image: url("/cms/images/ggb/services-ferry.jpg"); }
        .front__services__box--ferry .front__services__box__image::after {
          background: #1c75bc; }
      .front__services__box--ferry h5 {
        color: #1c75bc; }
      .front__services__box--ferry span {
        border-color: #1c75bc; }
      .front__services__box--ferry ul li a:hover {
        color: #1c75bc; }
      .front__services__box--district .front__services__box__image {
        background-image: url("/cms/images/ggb/services-district.jpg"); }
        .front__services__box--district .front__services__box__image::after {
          background: rgba(24, 24, 24, 0.5); }
      .front__services__box--district span {
        border-color: #181818; }
      .front__services__box--district h5 {
        color: #181818; }
      .front__services__box--district ul li a:hover {
        color: #666; }
  .front__bridge {
    padding: 50px 0;
    position: relative; }
    @media (min-width: 54.85714em) {
      .front__bridge {
        padding: 70px 0; } }
    .front__bridge::before {
      content: '';
      width: 100%;
      height: 100%;
      background-image: url("/cms/images/ggb/visit.jpg");
      background-repeat: no-repeat;
      background-position: top right;
      background-size: cover;
      position: absolute;
      bottom: 0;
      left: 0;
      z-index: -1; }
    .front__bridge .page-card {
      width: 100%;
      float: left;
      margin-left: 0;
      margin-right: 0;
      margin-bottom: 3.44828%; }
      @media (min-width: 34.28571em) {
        .front__bridge .page-card {
          width: 49.15254%;
          float: left;
          margin-right: 1.69492%; } }
      @media (min-width: 54.85714em) {
        .front__bridge .page-card {
          width: 23.72881%;
          float: left;
          margin-right: 1.69492%;
          margin-bottom: 0; } }
      @media (min-width: 60em) {
        .front__bridge .page-card {
          min-height: 320px; } }
      @media (min-width: 34.28571em) {
        .front__bridge .page-card:nth-child(2) {
          width: 49.15254%;
          float: right;
          margin-right: 0; } }
      @media (min-width: 54.85714em) {
        .front__bridge .page-card:nth-child(2) {
          width: 23.72881%;
          float: left;
          margin-right: 1.69492%; } }
    .front__bridge__content {
      width: 100%;
      float: left;
      margin-left: 0;
      margin-right: 0; }
      @media (min-width: 54.85714em) {
        .front__bridge__content {
          width: 49.15254%;
          float: left;
          margin-right: 1.69492%; } }
    .front__bridge__livefeed {
      width: 100%;
      float: left;
      margin-left: 0;
      margin-right: 0;
      position: relative; }
      @media (min-width: 54.85714em) {
        .front__bridge__livefeed {
          /* width: 49.15254%;
          float: right; */
          margin-right: 0; } }
      .front__bridge__livefeed video {
        display: block;
        max-width: 100%; }
      .front__bridge__livefeed span {
        width: 100%;
        padding: 20px;
        background: linear-gradient(to top, black 0%, transparent 100%);
        color: #fff;
        text-transform: uppercase;
        font-size: 12px;
        font-weight: 700;
        position: absolute;
        bottom: 0;
        left: 0; }
        .front__bridge__livefeed span::before {
          content: '';
          width: 10px;
          height: 10px;
          background: #d53f15;
          box-shadow: 0 0 10px rgba(233, 77, 35, 0.8);
          border-radius: 100%;
          display: inline-block;
          vertical-align: middle;
          margin-right: 10px;
          margin-bottom: 2px; }
  .front__news {
    padding: 50px 0; }
    @media (min-width: 54.85714em) {
      .front__news {
        padding: 70px 0; } }
  .front__jobs {
    padding: 60px 0;
    border-top: 1px solid #e7e7e7;
    overflow: hidden;
    position: relative; }
    @media (min-width: 54.85714em) {
      .front__jobs {
        padding: 100px 0; } }
    .front__jobs::before {
      content: '';
      width: 100%;
      height: 100%;
      background-image: url("/cms/images/ggb/jobs.jpg");
      background-repeat: no-repeat;
      background-position: bottom left;
      background-size: 100%;
      position: absolute;
      top: 0;
      left: 0;
      z-index: -1; }
      @media (min-width: 54.85714em) {
        .front__jobs::before {
          width: 60%; } }

.bus .hero::after {
  background: rgba(22, 118, 59, 0.3); }

.bus__featured {
  background: #e5eaee;
  padding-bottom: 50px; }
  @media (min-width: 54.85714em) {
    .bus__featured {
      padding-bottom: 70px; } }
  .bus__featured__wrapper {
    width: 100%;
    display: table;
    margin-top: -70px;
    box-shadow: 0 0 30px rgba(0, 0, 0, 0.1);
    position: relative;
    z-index: 3; }
  .bus__featured__col {
    position: relative; }
    @media (min-width: 54.85714em) {
      .bus__featured__col {
        display: table-cell;
        vertical-align: top; } }
    .bus__featured__col h4 {
      padding: 20px 20px 15px; }
      @media (min-width: 54.85714em) {
        .bus__featured__col h4 {
          padding: 30px 30px 15px; } }
    .bus__featured__col:nth-of-type(1) {
      width: 100%;
      background: #16763b; }
      @media (min-width: 54.85714em) {
        .bus__featured__col:nth-of-type(1) {
          width: 30%; } }
      .bus__featured__col:nth-of-type(1) h4 {
        color: #fff; }
    .bus__featured__col:nth-of-type(2) {
      width: 100%;
      background: #fff; }
      @media (min-width: 54.85714em) {
        .bus__featured__col:nth-of-type(2) {
          width: 70%; } }
  .bus__featured__nav {
    position: relative; }
    .bus__featured__nav::before, .bus__featured__nav::after {
      content: '';
      display: table; }
    .bus__featured__nav::after {
      clear: both; }
    .bus__featured__nav li a {
      color: #fff;
      text-transform: uppercase;
      font-size: 12px;
      font-weight: 700;
      padding: 15px 20px;
      display: block;
      border-top: 1px solid #026227; }
      @media (min-width: 54.85714em) {
        .bus__featured__nav li a {
          padding: 15px 30px; } }
      .bus__featured__nav li a:hover {
        color: rgba(255, 255, 255, 0.8); }
    .bus__featured__nav li:nth-child(2n + 2) a {
      border-left: 1px solid #026227; }
      @media (min-width: 54.85714em) {
        .bus__featured__nav li:nth-child(2n + 2) a {
          border-left: 0; } }
    .bus__featured__nav li:last-child a {
      border-bottom: 0; }
  .bus__featured__schedules::before, .bus__featured__schedules::after {
    content: '';
    display: table; }
  .bus__featured__schedules::after {
    clear: both; }
  .bus__featured__schedules .pre-heading {
    margin-bottom: 15px; }
  .bus__featured__schedules__form {
    padding: 30px; }
    .bus__featured__schedules__form form {
      margin-bottom: 20px; }
      .bus__featured__schedules__form form::before, .bus__featured__schedules__form form::after {
        content: '';
        display: table; }
      .bus__featured__schedules__form form::after {
        clear: both; }
      .bus__featured__schedules__form form fieldset {
        width: 100%;
        float: left; }
        @media (min-width: 54.85714em) {
          .bus__featured__schedules__form form fieldset {
            width: 200px; } }
        .bus__featured__schedules__form form fieldset label {
          display: block;
          color: #181818;
          text-transform: uppercase;
          font-weight: 700;
          font-size: 12px; }
      .bus__featured__schedules__form form .button {
        float: left;
        margin-top: 10px; }
        @media (min-width: 54.85714em) {
          .bus__featured__schedules__form form .button {
            margin-left: 20px;
            margin-top: 18px; } }
    .bus__featured__schedules__form .list li::before, .bus__featured__schedules__form .list li::after {
      content: '';
      display: table; }
    .bus__featured__schedules__form .list li::after {
      clear: both; }
    .bus__featured__schedules__form .list li a,
    .bus__featured__schedules__form .list li time {
      display: block;
      float: left; }
    .bus__featured__schedules__form .list li a {
      width: 100%;
      color: #181818; }
      @media (min-width: 54.85714em) {
        .bus__featured__schedules__form .list li a {
          width: 70%; } }
      .bus__featured__schedules__form .list li a strong {
        width: 100px;
        font-weight: 700;
        display: block;
        color: #16763b; }
        @media (min-width: 54.85714em) {
          .bus__featured__schedules__form .list li a strong {
            display: inline-block; } }
    .bus__featured__schedules__form .list li time {
      width: 100%;
      color: #181818;
      opacity: .3; }
      @media (min-width: 54.85714em) {
        .bus__featured__schedules__form .list li time {
          width: 30%;
          text-align: right; } }
  .bus__featured__schedules__alerts {
    width: 100%;
    border-top: 1px solid #d8d8d8;
    padding: 30px;
    float: left; }
    .bus__featured__schedules__alerts .pre-heading {
      display: block; }
      .bus__featured__schedules__alerts .pre-heading a {
        float: right;
        color: #181818;
        opacity: .3; }
        .bus__featured__schedules__alerts .pre-heading a:hover {
          opacity: 1; }
    .bus__featured__schedules__alerts ul li {
      margin-bottom: 20px; }
      @media (min-width: 54.85714em) {
        .bus__featured__schedules__alerts ul li {
          width: 50%;
          padding-right: 30px;
          float: left; } }
      .bus__featured__schedules__alerts ul li:last-child {
        margin-bottom: 0; }

.bus__schedules {
  background: #fff;
  padding: 50px 0; }
  @media (min-width: 54.85714em) {
    .bus__schedules {
      padding: 70px 0; } }
  .bus__schedules__list {
    border-top: 1px solid #e7e7e7; }
    @media (min-width: 54.85714em) {
      .bus__schedules__list {
        width: 30%;
        float: left; } }
    .bus__schedules__list:nth-of-type(1) {
      margin-bottom: 40px; }
      @media (min-width: 54.85714em) {
        .bus__schedules__list:nth-of-type(1) {
          margin-left: 20%;
          margin-bottom: 0; } }
    .bus__schedules__list .pre-heading {
      margin-top: 40px;
      margin-bottom: 10px; }

.bus__services {
  background: #16763b;
  position: relative; }
  .bus__services::before {
    content: '';
    width: 100%;
    height: 250px;
    background-image: url("/cms/images/ggb/fares.jpg");
    background-position: bottom center;
    background-size: cover;
    position: absolute;
    top: 0;
    left: 0; }
    @media (min-width: 54.85714em) {
      .bus__services::before {
        width: 50%;
        height: 100%; } }
  .bus__services__text {
    padding: 20px 10px;
    padding-top: 280px; }
    .bus__services__text::before, .bus__services__text::after {
      content: '';
      display: table; }
    .bus__services__text::after {
      clear: both; }
    @media (min-width: 54.85714em) {
      .bus__services__text {
        padding: 50px;
        padding-left: calc(50% + 60px); } }
    .bus__services__text h2,
    .bus__services__text .pre-heading {
      color: #fff; }
    .bus__services__text h2 {
      margin-bottom: 30px; }
    .bus__services__text .pre-heading {
      margin-bottom: 10px; }
    .bus__services__text__list {
      border-top: 1px solid rgba(0, 0, 0, 0.2);
      margin-bottom: 30px;
      padding-top: 15px; }
      @media (min-width: 54.85714em) {
        .bus__services__text__list {
          width: calc(50% - 30px);
          float: left;
          margin-right: 30px; } }
      .bus__services__text__list ul {
        margin-left: 20px; }
        .bus__services__text__list ul li {
          color: rgba(255, 255, 255, 0.7);
          list-style: disc;
          margin-bottom: 7px; }
          .bus__services__text__list ul li:last-child {
            margin-bottom: 0; }
          .bus__services__text__list ul li a {
            color: rgba(255, 255, 255, 0.7); }
            .bus__services__text__list ul li a:hover {
              color: #fff; }

			  
			  
.route {
	padding: 20px 40px; 
	overflow: hidden;
}

    @media (min-width: 48em) {
		.route {	padding: 35px 55px;}
	}			
    @media (min-width: 75em) {
		.route {	padding: 35px 75px;} 
	}			
    @media (min-width: 1420px) {
		.route {	padding: 35px 75px; margin:0 -75px}
	}			
			
    @media only screen and (max-width: 59.938em) {
		.route {
			width: 100%;
			margin-left: 0;
			margin-right: 0; }
	}
			
			
    .route__options {
		/* display: table;
		clear: both;
		width: 100%;
		margin-top:50px; */ }
		.routes-filter-bottom {display:none;}
		.route-options-right {display:none;}
		@media (min-width: 48em) {
			.route__options {padding-right:0; float:left;}
			.route__options ul {margin-bottom:0;}
			
			.routes-filter-bottom {margin-top:30px;}
			.route-options-right {display:block; float:right; width:270px; height:75px;}
		}
		@media (min-width: 60em) {
		    .route__options {
				text-align: left;
				/* margin-top: 100px; */
				margin-bottom: 0; 
				padding-right:0;}
				
			.routes-filter-bottom {margin-top:30px;}
			.route-options-right {width:270px; height:75px;}			
		}
		@media (min-width: 75em) {
		    .route__options {
				/* margin-top: 140px; */
				margin-bottom: 0; 
				padding-right:0;}

			.routes-filter-bottom {margin-top:50px;}				
			.route-options-right {width:400px; height:85px;}	
		}
		
    .route__options__toggle {
		display: block;
		width: 100%;
		margin-bottom: 10px; 
		list-style: none !important; }
        .route__options__toggle::before, .route__options__toggle::after {
			content: '';
			display: table; }
        .route__options__toggle::after {
			clear: both; }

        @media (min-width: 60em) {
			.route__options__toggle {
				/* width: auto;
				display: table-cell;
				vertical-align: middle;
				margin-bottom: 0;  */}
			    .route__options__toggle--days, .route__options__toggle--direction {
					float: left;
				}
				.route__options__toggle--direction {
					margin-right: 40px;
				}
		}
        @media (min-width: 1420px) {
			.route__options__toggle {padding:0 !important;}
		}
        .route__options__toggle li {
			float: left;
			/* width: 50%; */
			}
			@media (min-width: 60em) {
			    .route__options__toggle li {
					/* width: auto; */ } }
			.route__options__toggle li a {
				display: block;
				height: 40px;
				padding: 8px 10px;
				/* background: #fff; */
				color: #1a3364;
				border: 1px solid #1a3364;
				text-transform: uppercase;
				text-align: center;
				font-size: 13px;
				position: relative;
				margin-right: -1px;
				margin-top: -1px;
				z-index: 1; 
				text-decoration:none;
				background-color: #fff;}
				@media (min-width: 60em) {
					.route__options__toggle li a {
					   /*  width: auto;
					    display: inline-block; */ 
						padding: 8px 10px;
						font-size: 14px;} 
					}
				@media (min-width: 75em) {
					.route__options__toggle li a {font-size: 15px;}						
				}		
				.route__options__toggle li a.active {
					border-color: #1a3364;
					background:#446bbd;
					color: #fff;
					z-index: 2; }
				.route__options__toggle li a:hover {
					border-color: #dbe0e4;
					border-color: #446bbd;					
					box-shadow: 0 0 10px rgba(0, 0, 0, 0.1); }
				.route__options__toggle li a:hover.active {
				    border-color: #1a3364;
					background:#446bbd; 
					color:#fff;}
			.route__options__toggle--days li {
				width: calc(100% / 3); }
				@media (min-width: 60em) {
					.route__options__toggle--days li {
						width: auto; } 
				}
        @media (max-width: 47.938em) {
			.routes-filter {background: #3b527f;}
			.route__options {margin-top:25px;}
			.route__options.desktop-only {padding: 10px 88px 10px 0;}
			.route__options__toggle {padding: 0 !important;}
			.route__options__toggle li {width:100%;}
			.route__options__toggle li a {height:36px;}
		}
        @media (max-width: 29.938em) {
			.route__options.desktop-only {padding: 10px 68px 10px 0;}
			.route__options__toggle li a {font-size:12.5px;}
		}



		
.page {
  padding: 20px 0;
  position: relative;
  overflow: hidden; }
  @media (min-width: 54.85714em) {
    .page {
      padding: 50px 0; } }
  .page .container {
    position: relative; }
  .page__content {
    width: 100%;
    float: right;
    margin-right: 0;
    padding-bottom: 30px; }
    @media (min-width: 54.85714em) {
      .page__content {
        width: 66.10169%;
        float: left;
        margin-right: 1.69492%;
        padding-right: 3.38983%; } }
    .page__content h1,
    .page__content h2,
    .page__content h3,
    .page__content h4,
    .page__content h5,
    .page__content h6 {
      margin-bottom: 20px; }
    .page__content p {
      margin-bottom: 20px; }
      @media (min-width: 54.85714em) {
        .page__content p {
          margin-bottom: 40px; } }
    .page__content__quote {
      margin-bottom: 20px; }
      @media (min-width: 54.85714em) {
        .page__content__quote {
          margin-bottom: 40px; } }
      .page__content__quote blockquote {
        border-left: 2px solid #d53f15;
        padding-left: 20px; }
        .page__content__quote blockquote p {
          /* font-family: "Chronicle Display A", "Chronicle Display B", "Georgia", Times, Times New Roman, serif; */
		  font-family: 'Lato', sans-serif;
          font-size: 20px;
          margin-bottom: 10px; }
          .page__content__quote blockquote p::before {
            content: '“'; }
          .page__content__quote blockquote p::after {
            content: '”'; }
      .page__content__quote cite {
        display: block;
        font-size: 12px;
        opacity: .5; }
        .page__content__quote cite::before {
          content: '– '; }
    .page__content__video {
      margin-bottom: 5px; }
      /* @media (min-width: 54.85714em) {
        .page__content__video {
          margin-bottom: 40px; } } */
      .page__content__video__wrapper {
        position: relative;
        padding-bottom: 56.25%;
        height: 0; }
        .page__content__video__wrapper iframe {
          width: 100%;
          height: 100%;
          position: absolute;
          top: 0;
          left: 0; }
    .page__content__image {
      margin-bottom: 20px; }
      .page__content__image::before, .page__content__image::after {
        content: '';
        display: table; }
      .page__content__image::after {
        clear: both; }
      @media (min-width: 54.85714em) {
        .page__content__image {
          margin-bottom: 40px; } }
      .page__content__image img {
        display: block;
        margin-bottom: 10px; }
      .page__content__image small {
        text-align: right;
        display: block;
        /* font-size: 12px; */
        opacity: .5; }
      .page__content__image--double img {
        width: 50%; }
        .page__content__image--double img:nth-child(1) {
          float: left; }
        .page__content__image--double img:nth-child(2) {
          float: right; }
      .page__content__image--triple img {
        width: 33.33333%; }
        .page__content__image--triple img:nth-child(1) {
          float: left; }
        .page__content__image--triple img:nth-child(2) {
          float: right; }
  .page__side {
    width: 100%;
    float: right;
    margin-right: 0;
    padding-top: 40px;
    background: #e5eaee;
    position: relative; }
    @media (min-width: 54.85714em) {
      .page__side {
        width: 32.20339%;
        float: right;
        margin-right: 0;
        padding-left: 5.08475%;
        padding-top: 0;
        height: 100%; } }
    .page__side::before {
      content: '';
      width: 200%;
      height: 200%;
      background: #e5eaee;
      position: absolute;
      top: 0;
      left: 0;
      transform: translateX(-25%);
      z-index: -1; }
      @media (min-width: 54.85714em) {
        .page__side::before {
          width: 1000%;
          height: 1000%;
          transform: translateY(-50%); } }
    .page__side__section {
      margin-bottom: 40px; }
      @media (min-width: 60em) {
        .page__side__section {
          margin-bottom: 50px; } }
      .page__side__section:last-of-type {
        margin-bottom: 0; }
      .page__side__section .pre-heading {
        margin-bottom: 10px; }
      .page__side__section--news ul li {
        margin-bottom: 20px;
        padding-bottom: 20px;
        border-bottom: 1px solid #d1d6da; }
        .page__side__section--news ul li:last-child {
          margin-bottom: 0;
          padding-bottom: 0;
          border-bottom: 0; }
        .page__side__section--news ul li small {
          font-size: 12px;
          display: block;
          margin-bottom: 5px; }
        .page__side__section--news ul li h6 {
          margin-bottom: 10px; }
          .page__side__section--news ul li h6 a {
            color: #181818; }
			
      
	  /* .page__side__section--instagram ul {
        font-size: 0; }
        .page__side__section--instagram ul li {
          width: 23.72881%;
          float: left;
          padding-bottom: 1.69492%; }
          .page__side__section--instagram ul li:nth-child(4n + 1) {
            margin-left: 0;
            margin-right: -100%;
            clear: both;
            margin-left: 0; }
          .page__side__section--instagram ul li:nth-child(4n + 2) {
            margin-left: 25.42373%;
            margin-right: -100%;
            clear: none; }
          .page__side__section--instagram ul li:nth-child(4n + 3) {
            margin-left: 50.84746%;
            margin-right: -100%;
            clear: none; }
          .page__side__section--instagram ul li:nth-child(4n + 4) {
            margin-left: 76.27119%;
            margin-right: -100%;
            clear: none; }  
         @media (min-width: 60em) {
            .page__side__section--instagram ul li {
                width: 32.20339%;
                float: left;
                padding-bottom: 1.69492%; }
				.page__side__section--instagram ul li:nth-child(3n + 1) {
					margin-left: 0;
					margin-right: -100%;
					clear: both;
					margin-left: 0; }
				.page__side__section--instagram ul li:nth-child(3n + 2) {
					margin-left: 33.89831%;
					margin-right: -100%;
					clear: none; }
				.page__side__section--instagram ul li:nth-child(3n + 3) {
					margin-left: 67.79661%;
					margin-right: -100%;
					clear: none; }
		} 
          .page__side__section--instagram ul li img {
            width: 100%;
            height: auto;
            display: block; }
			*/

.page__side__section--instagram ul {
		display: -webkit-box;
	display: -moz-box;   
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	flex-wrap: wrap;
	-ms-flex-wrap:wrap;
	width: 100%;
	justify-content: center;
}

.page__side__section--instagram ul li {
	width:31%;
	margin:0 2% 2% 0;
	overflow:hidden;
}

.page__side__section--instagram ul li a {
	display:block;
	position:relative;
	padding-bottom:74.25%;
	padding-top:25px;
	height:0;
	overflow:hidden;
}

.page__side__section--instagram ul li a img {
	position:absolute;
	top:0;
	left:0;
    min-width: 100%;
	min-height: 100%;
    height: 100% !important;
    width: auto !important;
    max-width: 300px !important;
}
 
body.home {background:#fdfdfd;}
.sitebody.home main {background:none;}
@media (max-width:47.938em) {
	body.home {background:#e7ecef;}
	.sitebody.home main {background:#e7ecef;}
}
	
body.landing {background:#fdfdfd;}
.sitebody.landing {overflow-x:hidden;}
.sitebody.landing.schedules {overflow-y:hidden;}
.sitebody.landing main {background:#fdfdfd;}
.sitebody.landing.routes .main-content{padding-top:0;}	

.pageTopWrpr {
	text-align:center; 
	position:relative; 
	background:#eee; 
	overflow: hidden;
	height: 100px;
}

.pageTopImg {
	position: absolute;
	display: block;
	width: 1920px;
	height: 100px;
	left: 50%;
	right: 0;
	top: 0;
	bottom: 0;
	transform: translateX(-50%);
}

.pageTopImg:after {
	content:"";
	position:absolute; 
	top:0; left:0;
	width:100%;
	height:100%;
	display:block;
	background:rgba(36,65,117,0.6);
}

.pageTopImg p {margin:0;}

.pageTop {
	position: relative;
	margin: 0px auto;
	z-index: 2;
	display: block;
	top: 50%;
	transform: translateY(-50%);
	color: #fff;
	padding: 0 10px;	
	text-align: center;
}

.pageTop h1 {
	font-size:28px;
	color:#fff;
	display:inline-block;
	padding-top:15px;
	margin:0 !important;
	position:relative;
	font-family: 'Lora', serif;
}

.pageTop h1:after {
	position:absolute;
	content:"";
	height:3px;
	top:0;
	left:15%;
	right:15%;
	background:#fff;
}

.landing .pageTop h1 {color:#fff; display:block; font-family: 'Lora', serif; position:relative; margin-top:0;}
.landing .pageTop h1:after {display:none;}
.landing .pageTop img {width:55px; vertical-align:middle; }
.landing .pageTop p {font-size:18px; color:#fff; padding:10px 20px; background: rgba(66,104,184,.5); margin:0;}

.service-alerts .pageTopWrpr {background:#ca4f12; min-height:220px}
.service-alerts .pageTop {border-bottom:50px solid #e18050;}
.service-alerts .pageTop h1 {color:#fff; font-family: 'Lora', serif; position:relative; }
.service-alerts .pageTop h1:after {background:#fff;}
.service-alerts .pageTop img {width:48px; position:absolute; bottom:-80px; left:50%; margin-left:-24px;}

@media (min-width:48em) {
	.pageTop h1 {font-size:32px;}	
	
	.landing .pageTop  {
		width:100%;
		top:auto;
		bottom:0;
		transform: translateY(0%);
		position:absolute;
	}
	.landing .pageTop h1 {padding-bottom:25px;}
	.landing .pageTop p {margin:0 -10px;}
	
	.service-alerts .pageTopWrpr {min-height:160px}
	.service-alerts .pageTop {border-bottom:35px solid #e18050;}	
	.service-alerts .pageTop img {width:48px; bottom:-60px; margin-left:-24px;}	
}

@media (min-width:60em) {
	.pageTopWrpr,
	.pageTopImg {height: 180px;}
	.pageTop h1 {font-size:36px; padding-top:25px;}
	

	.landing .pageTop h1 {padding-bottom:55px;}
	.landing .pageTop img {
		position: absolute;
		bottom: -10px;
		left: 50%;
		margin-left: -28px;
	}
			
	.service-alerts .pageTopWrpr {min-height:190px}
	.service-alerts .pageTop {border-bottom:50px solid #e18050;}
	.service-alerts .pageTop img {width:56px; bottom:-65px; margin-left:-28px;}	
}
@media (min-width:75em) {
	.pageTopWrpr {min-height:170px;}
	.pageTop h1 {font-size:40px;}
	
	.landing .pageTop h1 {padding-bottom:60px;}
	
	.service-alerts .pageTopWrpr {min-height:220px}
	.service-alerts .pageTop img {bottom:-75px;}	
}
@media (min-width:86.250em) {	
	.service-alerts .pageTop img {width:64px; bottom:-80px; margin-left:-32px;}
}

@media (max-width:59.9em) {
	.landing .pageTop p {display:none;}
}
	
@media (max-width:47.938em) {
	.landing .pageTopImg {display:none;}
	.landing .pageTopImgOverlay  {display:none;}
	.landing .pageTop {position:relative; text-align:center;}
	.landing .pageTop h1 span {display:none;}
	.landing .pageTop img {bottom:auto; left:0; top:18px; margin-left:0;}	
	
	.landing .pageTopWrpr {background:#3b527f; height:100px;}

	.service-alerts .pageTop {border-bottom:none;}
	.service-alerts .pageTop h1 {font-size:24px; margin-top:0; padding-left:55px; display:inline-block; padding-top:0px;}
	.service-alerts .pageTop h1:after {display:none;}	
	.service-alerts .pageTop img {bottom:auto; left:0; top:-10px; margin-left:0;}
	.service-alerts .pageTopWrpr {height:90px; min-height:90px;}
}

/* Accessibility - Landing
-------------------------- */
h2.accessibility {padding-left:5%; padding-right:5%;}
.accessibility-content p {margin-bottom:1.5em;}	
@media (min-width: 480px) {
	h2.accessibility {padding-left:10%; padding-right:10%;}
}
@media (min-width: 60em) {
	h2.accessibility {padding-left:20%; padding-right:20%;}
}


.corlnav h3 {font-size:18px; font-weight:bold; text-transform:uppercase; color:#446bbd; margin-bottom:10px;}
.dotsDivider {
	margin:30px 0;
	height:10px;
	text-align:center;
	color:#afafaf;
	background: url(/cms/images/ggb/dots.png) no-repeat 50% 50%;
}


/* Bridge - Landing
------------------- */
.bridge .corlnav {background:none; padding-right:0; margin-right:0;}
.bridge .corlnav:before {display:none;}
.bridge .railNav {padding: 0 0 0 27px}
.bridge .main-content {padding-bottom:0;}


@media (min-width:48em) {
	.bridge .grid_7.custom {width:62.5%;}
	.bridge .grid_5.custom {width:37.5%;}	
	
	.bridge .grid_8.custom {width:58.6875%;}
	.bridge .grid_4.custom {width:41.3125%;}
	
	.container [class*="grid_"].padR30 {padding-right:20px;}
	.bridge-bottom .railNav {display:none;}
}
@media (max-width:47.938em) {
	.bridge-bottom .railNav {margin-left:10px;}
	.bridge .corlnav .railNav {display:none;}
	.bridge .corlnav {padding:0;}
}	
@media (min-width:75em) {
	.container [class*="grid_"].padL15 {padding-left:15px;}
	.container [class*="grid_"].padR15 {padding-right:15px;}
	
	.container [class*="grid_"].padR30 {padding-right:30px;}
}
@media (min-width:480px) and (max-width:47.938em) {
	.bridge .grid_8.custom {width:50%;}
	.bridge .grid_4.custom {width:50%;}
	.container [class*="grid_"].padR30 {padding-right:20px;}		
}
.getting-around {background:#3c5d99; color:#fff; border:26px solid #f6f5f5; margin-bottom:20px; padding:20px 7%; text-align:center;}
.getting-around h3 {font-size:19px; color:#fff; text-transform:uppercase; margin-bottom:10px; text-align: center;}

.fancy {
  line-height: 0.5;
  text-align: center;
}
.getting-around h3 span {
  display: inline-block;
  position: relative;  
}
.getting-around h3 span:before,
.getting-around h3 span:after {
  content: "";
  position: absolute;
  height: 5px;
  background: url(/cms/images/ggb/dots.png) no-repeat;
  top: 50%;
  margin-top:-2px;
  width: 103px;
}
.getting-around h3 span:before {
  right: 100%;
  margin-right: 15px;
}
.getting-around h3 span:after {
  left: 100%;
  margin-left: 15px;
}
@media (min-width:480px) and (max-width:47.938em) {	
	.getting-around h3 span:before,
	.getting-around h3 span:after {width:72px;}
}
@media (max-width:479px) {
	.getting-around h3 span:before,
	.getting-around h3 span:after {width:20px;}
}

.getting-around p {font-size:22px; font-weight:300; line-height:1.3; margin-bottom:10px;}
.getting-around a {color:#fff;}

.bridge .callout {display:inline-block; position:relative;  }
.bridge .callout a {display:inline-block; position:relative; margin:0 0 32px 0;}
.bridge .callout p {margin:0;}

.bridge .callout a:after {
	position:absolute;
	content:"";
	left:0;
	top:0;
	width:100%;
	height:100%;
	background: rgba(0,0,0,0.1);
    -wekbit-transition: all 0.3s ease-in-out;
            transition: all 0.3s ease-in-out;	
}
.bridge .callout a:hover:after, 
.bridge .callout a:focus:after { background: rgba(0,0,0,0.5);}
.bridge .callout img {vertical-align:top;}
.bridge .callout span,
.bridge .callout h2 {
	
	background:rgba(0,0,0,0.8);
	padding:10px 30px 10px 20px;
	line-height:1.2;
	text-align:left;
	
	position:absolute;
	top:20px;
	left:0;
	
	/*left:50%;
    -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%);
	*/
	font-size:17px;
	color:#fff;
	font-weight:bold;
	text-transform:uppercase;
	text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.9);
	z-index:9;
}

.bridge .callout span:after, 
.bridge .callout h2:after {
	position:absolute;
	content:"";
	right:6px;
	top:50%;
	margin-top:-9px;
	content: "\232a";
	font-family: 'icomoon';
	font-size:13px;
	font-weight:normal;
}
.bridge callout:hover span, 
.bridge callout:focus span, 
.bridge callout:hover h2, 
.bridge callout:focus h2 {text-shadow: 1px 1px 2px rgba(50, 50, 50, 1);}

.bridge .photo-gallery .callout {background:#d53f15; padding-top:32%; width:100%; text-align:center;
	-webkit-box-sizing: content-box; -moz-box-sizing: content-box; box-sizing: content-box;
}
.bridge .photo-gallery .callout:after {display:none;}
.bridge .photo-gallery .callout img {	width:52%;
	-webkit-box-shadow: 0px 0px 30px 0px rgba(50, 50, 50, 0.5);
	-moz-box-shadow:    0px 0px 30px 0px rgba(50, 50, 50, 0.5);
	box-shadow:         0px 0px 30px 0px rgba(50, 50, 50, 0.5);
	-ms-transform: rotate(-13deg); -webkit-transform: rotate(-13deg); transform: rotate(-13deg);
    -wekbit-transition: all 0.3s ease-in-out;
            transition: all 0.3s ease-in-out;	
}
.bridge .photo-gallery .callout:hover img, 
.bridge .photo-gallery .callout:focus img{
	-ms-transform: rotate(0deg); -webkit-transform: rotate(0deg); transform: rotate(0deg);	
}

.bridge .bannerText p {display:none;}



@media (min-width: 60em) {
	.getting-around {padding:20px 13%;}
	.getting-around h3 {font-size:21px;}
	.getting-around p {font-size:28px;}	
	
	.bridge .callout span,
	.bridge .callout h2 {font-size:21px;}
	.bridge .callout span:after, 
	.bridge .callout h2:after {	font-size:15px;}
}	

@media (min-width:75em) {
	.getting-around {margin-bottom:30px;}
}

@media (min-width: 48em) {
	.bridge .bridge-projects .callout span, 
	.bridge .bridge-projects .callout h2 {left:70%;}
}
@media (min-width:480px) and (max-width:47.938em) {	
	/* .bridge a.callout.photo-gallery {padding:90px 5% 0;} */
	.bridge .photo-gallery .callout {padding-top:25%;}
	.bridge .photo-gallery .callout img {width:30%;}
}
@media (max-width:479px) {
	.bridge .photo-gallery .callout {min-height:0 !important;}
	.bridge .gift-shop .callout {min-height:0 !important;}
	.bridge .photo-gallery .callout {padding-top:20%; padding-bottom:30px;}	
	.bridge .photo-gallery .callout img {width:30%;}
	
}

/* Schedules - Landing
---------------------- */
.schedules-wrpr {padding:10px 0 20px; position:relative;}
.filter.schedules {padding: 22px 260px 7px 35px;}
.filter.schedules span.or {color:#fff;}

.filter.schedules .filter-options {float:none;}
.filter.schedules .departure, 
.filter.schedules .arrival {float:left; width:25%; margin-right:13px;}
.filter.schedules .or {float:left; display:inline-block; margin-right:13px; margin-bottom:15px; padding:7px 0; text-align:center;}
.filter.schedules .stopID {float:left; width:180px; margin-right:13px;}
.filter.schedules .filter-button {float:left; width:42px; height:42px; }
.filter.schedules .filter-button button {height:42px;}
.filter.schedules .filter-button .btn {border:3px solid #fff; background:#7793cf; color:#fff; font-size:17.2px; font-weight:bold; padding:5px; position: relative; top: -2px;
	-webkit-border-radius:50%; -moz-border-radius:50%; border-radius:50%;
}
.filter.schedules .filter-button .btn:hover,
.filter.schedules .filter-button .btn:focus {background:#3b527f;}

@media (min-width: 48em) {
	.filter.schedules {padding: 16px 180px 2px 25px;}
	.filter.schedules {font-size:12.5px;}
	.filter.schedules .stopID {width:140px;}	
	
	.filter.schedules .filter-button {float:left; width:34px; height:34px; }
	.filter.schedules .filter-button button {height:34px;}	
	.filter.schedules .filter-button .btn {font-size:13px; top:0;}	
}	
@media (min-width:75em) {
	.filter.schedules {padding: 22px 260px 7px 35px;}
	.filter.schedules {font-size:16px;}
	.filter.schedules .filter-button {width:42px; height:42px; }	
	.filter.schedules .filter-button button {height:42px;}
	.filter.schedules .filter-button .btn {font-size:17.2px; padding:5px 6px; top:-2px}
	.filter.schedules .stopID {width:180px;}
}

@media (min-width: 48em)and (max-width:59.938em) {
	.filter.schedules {padding: 12px 25% 7px 25px;}
	.filter.schedules .departure, 
	.filter.schedules .arrival {float:left; width:48%; margin-right:2%;}	
	.filter.schedules .or {width:98%; margin-right:2%;}
	.filter.schedules .stopID {width:48%; margin-right:2%;}
}
@media (max-width:47.938em) {
	.landing.schedules {background:#3b527f;}	
	.landing.schedules .main-content {padding:0;}
	.landing.schedules .schedules-wrpr {padding:0; margin-bottom:40px;} 
	
	.filter.schedules {/* padding: 22px 10px 74px 10px; */ padding: 10px 10px 0; background:#3b527f; position:relative;}
	.filter.schedules:after {
		position:absolute;
		content:"";
		width:140px;
		height:2px;
		left:50%;
		margin-left:-70px;
		bottom:42px;
		background:#e94b24;
	}
	
	.filter.schedules .departure, 
	.filter.schedules .arrival {width:100%; margin-right:0;}
	.filter.schedules .or {width:100%; margin-right:0; padding:0;}
	.filter.schedules .stopID {width:calc(100% - 55px);}
}

.schedules-list {-webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box;}
.schedules-list ul {list-style:none; padding:0; margin: 0;}	
.schedules-list li {display:table; width:100%;}
.schedules-list span {display:table-cell; vertical-align:middle; background:#7793cf; color:#fff; text-align:center; font-weight:900; width:60px; font-size:17.8px; padding:10px 0 10px; border-bottom:1px solid #fff; line-height:1.1;}

.schedules-list a {display:table-cell; vertical-align:middle; border-bottom:1px solid #ddd; text-transform:uppercase; color:#333; font-size:12px; padding:0 30px 0 35px; line-height:1.2; position:relative;}
.schedules-list a:hover,
.schedules-list a:focus {background-color:#eee;}
.schedules-list a:after {
	position:absolute;
	content:"";
	right:5px;
	top:50%;
    -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%);	
	content: "\232a";
	font-family: 'icomoon';
	font-size:8px;
	font-weight:normal;
}

.schedules-list .effective {
	display:inline-block; 
	text-transform:none; 
	padding-left:0px;
	color:#666666;
}

.schedules-list a.alert {
	background-image: url(/cms/images/ggb/icon-alert.png);
	background-repeat: no-repeat;
	background-position: 10px 50%;
	background-size: 14px 14px;
	background-color: transparent;
	border:none;
	border-bottom:1px solid #ddd;
}
.schedules-list a.alert:hover,
.schedules-list a.alert:focus {background-color:#eee;}

.schedules-list li:hover span,
.schedules-list li:focus span {background:#b0bfdd;}

@media (min-width: 48em) {
	.schedules-list ul.cols2  {float: left;}
	.schedules-list ul.cols2:nth-child(1) {width:51%; padding-right:2%;}
	.schedules-list ul.cols2:nth-child(2) {width:49%;}
	.schedules-list span {width:45px; font-size:15.3px;}
	.schedules-list a {font-size:12px; padding:0 30px 0 30px;}
	.schedules-list a:after {
		right:7px;
		font-size:10px;
	}	
	.schedules-list a.alert {background-position: 8px 50%;}	
}
@media (min-width:75em) {
	.schedules-list span {width:70px; font-size:21px; padding:14px 0 10px;}
	.schedules-list a {font-size:16px; padding:10px 30px 10px 35px; }
	.schedules-list a:after {
		right:10px;
		font-size:13px;
	}	
	.schedules-list a.alert {background-size: 21px 21px;	background-position: 18px 50%;	}	
}



.tabs-menu {
    clear: both;
	display:none;
}

.tabs-menu li {
    float: left; list-style: none !important;
}
.tabs-menu li {border-right: 1px solid #fff;}
.tabs-menu li:last-child {border-right: none;}
.tabs-menu li img {vertical-align:bottom; display:block; margin:0 auto; opacity:.8;}
.tabs-menu li.current {
    position: relative;
    z-index: 5;
    pointer-events:none;
    cursor: default;
}
.tabs-menu li:last-child {float:right; border-right:none;}

.tabs-menu li a {
	padding: 5px 6px;
	text-decoration: none;
	text-align:center;
	display:block;
	font-size:12.1px;
	color:#eee;	
}
.tabs-menu li a:hover,
.tabs-menu li a:focus,
.tabs-menu .current a {
  color:#fff;
  border-color: #fff;
  background-color: rgba(255,255,255,0.1);
}
.tabs-menu li a:hover img,
.tabs-menu li a:focus img,
.tabs-menu .current a img{opacity:1;}

.route .tabs-menu li:first-child {
	float:left;
}
.route .tabs-menu li a {
    padding: 5px 10px;
    text-decoration: none;
	text-align:center;
	display:block;
	font-size:12.1px;
    background-color: #fdfdfd;
	color:#1a3364;	
	border:1px solid #fff;
}
.route .tabs-menu li a:hover,
.route .tabs-menu li a:focus {
	border: 1px solid #1a3364;
	/*box-shadow: 0 0 10px rgba(0, 0, 0, 0.4);*/}
	
.route .tabs-menu .current a {
    background-color: #e5e5e5;
	color:#1a3364;
	border:1px solid #1a3364;
}

.route .tabs-menu li img {opacity:1;}

a.route-alerts-btn.dropdownHeader {
  position: relative;
  bottom: 0;
  right: 0;
  left: 0;
  top: 0;
} 

.tab {
    margin-bottom: 20px;
    width: auto;
	position:relative;
}

.tab-content {
	/*
	position:relative;
	left:-9999em;
	height:0;
	*/
	display:none;
}

.tab-content.active {
	/*
	position: static;
	left:0;
	height:auto;
	*/
	display:block;
}

.tabs-menu {
	display:block;
	padding:0 8px !important;
}

@media (min-width:48em) {
	.schedules-wrpr .tabs-menu {width:100%;}
}

@media (min-width:60em) {
	.tabs-menu {
		right:15px;
		top:18px;
	}
}	

@media (min-width:75em) {
	.tabs-menu li a {padding: 8px 15px 5px; font-size:16px;}
	.route .tabs-menu li a {padding: 8px 15px 5px; font-size:16px;}
}

@media (max-width:47.938em) {
	
	.schedules #tab-2 {
		position:static !important;
		left:0 !important;
		height:auto !important;
	}
	.schedules #tab-1 {
		position:relative !important;
		left:-9999em !important;
		height:0 !important;
	}

}

.routes-map {position:relative;}
.routes-map .schedules-list {
	position:absolute;
	left:15px;
	top:25px;
	bottom:25px;
	width:31%;
	background:#fff;
	padding:10px 0;
	overflow-y: scroll;
	-webkit-box-shadow: 0px 0px 15px 0px rgba(50, 50, 50, 0.5);
	-moz-box-shadow:    0px 0px 15px 0px rgba(50, 50, 50, 0.5);
	box-shadow:         0px 0px 15px 0px rgba(50, 50, 50, 0.5);	
}
.routes-map .schedules-list:after {
	position:absolute;
	content:"";
	width:45px;
	height:10px;
	top:0;
	left:0;
	background: #7793cf;
}


.map-controls {position:absolute; top:20px; right:20px;}
.map-controls button {display:block; padding:0; width:37px; height:37px; 
	-webkit-border-radius:3px; -moz-border-radius:3px; border-radius:3px;
}
.map-controls .reset {border:1px solid #ccc;
	-webkit-border-radius:3px; -moz-border-radius:3px; border-radius:3px;
	-webkit-box-shadow: 0px 0px 7px 0px rgba(50, 50, 50, 0.5);
	-moz-box-shadow:    0px 0px 7px 0px rgba(50, 50, 50, 0.5);
	box-shadow:         0px 0px 7px 0px rgba(50, 50, 50, 0.5);	
}
.map-controls .reset {margin-bottom:3px; background: url(/cms/images/ggb/map-controls.png) no-repeat -6px -6px;}

.map-controls .zoom-wrpr {border:1px solid #ccc; background:#fff;
	-webkit-border-radius:3px; -moz-border-radius:3px; border-radius:3px;
	-webkit-box-shadow: 0px 0px 7px 0px rgba(50, 50, 50, 0.5);
	-moz-box-shadow:    0px 0px 7px 0px rgba(50, 50, 50, 0.5);
	box-shadow:         0px 0px 7px 0px rgba(50, 50, 50, 0.5);	
}
.map-controls .zoom-wrpr button {width:35px; height:35px;}
.map-controls .zoom-in {background: url(/cms/images/ggb/map-controls.png) no-repeat 0 -40px /35px auto;}
.map-controls .zoom-out {background: url(/cms/images/ggb/map-controls.png) no-repeat 0 -74px  /35px auto;}

@media (min-width: 48em) {
	.routes-map .schedules-list span {width:45px; font-size:15.3px; padding:3px 0;}
	.routes-map .schedules-list a {font-size:12px; padding:2px 30px 2px 25px; text-transform:none; line-height:1.1;}
	.routes-map .schedules-list a:after {
		right:7px;
		font-size:10px;
	}	
	.routes-map .schedules-list a.alert {background-size: 12px 12px; background-position: 7px 50%;}
}
@media (min-width:75em) {
	.routes-map .schedules-list:after {width:60px;}	
	.routes-map .schedules-list span {width:60px; font-size:20px; padding:0; }
	.routes-map .schedules-list a {font-size:15px; padding:5px 30px 5px 35px; }
	.routes-map .schedules-list a:after {
		right:10px;
		font-size:13px;
	}	
	.routes-map .schedules-list a.alert {background-size: 16px 16px;	background-position: 9px 50%;}	
	
	.map-controls button {width:47px; height:47px;}
	.map-controls .reset {background: url(/cms/images/ggb/map-controls.png) no-repeat 0 0;}	
	.map-controls .zoom-wrpr button {width:45px; height:45px;}
	.map-controls .zoom-in {background: url(/cms/images/ggb/map-controls.png) no-repeat 0 -51px;}
	.map-controls .zoom-out {background: url(/cms/images/ggb/map-controls.png) no-repeat 0 -95px;}	
}


/* Route - Landing
---------------------- */
/* .route {background:#fff;} */

.routes-filter {padding:0 5px; }

.routes-filter-top {background:#3b527f;  padding:0; position:relative; }
.routes-filter-top:before {
    position: absolute;
    content: "";
    width: 9999em;
    height: 100%;
    left: -100%;
    top: 0;
    background: #3b527f;
    z-index: -1;
}
.routes-filter-top .imgWrpr {width:110px; text-align:center; float:left; display:inline-block; padding:10px 10px 10px 0; margin-left:0; margin-right:12px; border-right:1px solid #7484a4; display:none;}
.routes-filter-top .imgWrpr a {text-transform:capitalize; color:#fff; line-height:1.2; display:block; text-decoration:none;}
.routes-filter-top .imgWrpr img {display:block; text-align:center; margin:0 auto 5px auto;}
.routes-filter-top.formee .select-wrpr {float:left; width:100%; /* max-width:730px; */ margin-top:0; position:relative; margin-bottom:10px;}

.effective-dates {color:#fff; font-size:18px; padding:0 15px;}

.routes-filter-top.formee select { font-size:16px; height:45px; text-transform:none; background:#627bb1; color:#fff; border:1px solid #fff; margin:0; padding: 8px 30px 8px 5px;}
.routes-filter-top.formee select {	
	background-image: url("/cms/images/layout/arrow_down_white.gif");
	background-repeat:no-repeat;
	background-position: right 7px top 18px;
	background-size: 14px 7px;
	-webkit-appearance: none;
	appearance: none;
	-webkit-appearance: none;
	-moz-appearance: none;	
}
.routes-filter-top.formee select::-ms-expand {
	display: none;
}
.routes-filter-top.formee .select-wrpr:before {
	position:absolute;
	content:"";
	width:1px;
	height:100%;
	top:0;
	right:30px;
	background:#fff;
	z-index:9;
}


.route-alerts-btn img.desktop-only {display:none;}
.route-alerts-btn img.mobile-only {display:block;}

/* .route__options.desktop-only {display:none;} */
.route__options.mobile-only {/* display:block; */ display:none; margin-top:0; padding:10px 88px 10px 0; background:#3b527f; position:relative;}
.route__options.mobile-only:before {
    position: absolute;
    content: "";
    width: 9999em;
    height: 100%;
    left: -100%;
    top: 0;
    background: #3b527f;
    z-index: -1;
}
.route__options.mobile-only.formee select {margin-bottom:8px; font-size:14px;}

@media (min-width: 48em) {
	.route-alerts-btn img.desktop-only {display:none;}
	.route-alerts-btn img.mobile-only {display:block;}	
	
	.routes .pageTopWrpr {display:none;}
	.routes-filter {padding:0;}
	
	.route__options.desktop-only {display:table; height:40px;}
	.route__options.mobile-only {display:none;}	

	.routes-filter {margin-top:46px;}
	
	.routes-filter-top {padding:10px 0;}
	.routes-filter-top .imgWrpr {padding:25px 25px 25px 0; margin-left:20px; margin-right:15px; display:block;}
	.routes-filter-top.formee .select-wrpr {/* width:calc(100% - 143px); */ margin-top:5px; width:100%; padding:0 15px;}
	
	.routes-filter-top.formee select {
		font-size:18px;
		padding: 8px 58px 8px 15px;
		background-position: right 17px top 18px;
		background-size: 24px 12px;
	}
	.routes-filter-top.formee .select-wrpr:before {right:73px;}
	
	.routes-filter-top .dropdowns-wrpr {
		float:left;
		width:calc(100% - 160px)
	}
}

@media (min-width: 60em) {
	.routes-filter {margin-top:0;}	
}	
@media (min-width:75em) {
	
	.routes-filter-top {padding:20px 0;}
	.routes-filter-top .imgWrpr {padding:10px 35px 10px 0; /* margin-right: 48px; */ margin-right: 30px;}
	
	.routes-filter-top.formee .select-wrpr {/* width:calc(100% - 143px); */width:50%; margin-top:10px;}
	.routes-filter-top.formee select { font-size:18px; height:50px;}
	
	.routes-filter-top .dropdowns-wrpr {width:calc(100% - 165px);}
}
@media (min-width:1300px) {
	.routes-filter-top .imgWrpr {margin-left:0;}
	
	.routes-filter-top.formee .select-wrpr {/* width:calc(100% - 163px); */}	
	
	.routes-filter-top .dropdowns-wrpr {width:calc(100% - 148px);}
}

.major-stops {margin-bottom:20px; position:relative; font-size:12px; font-weight:bold; text-transform:uppercase;}
.major-stops ul li {display:inline-block; padding-right:22px; margin-right:6px; color:#797979; 
	background: url("/cms/images/layout/arrow-right.png") no-repeat 100% 50%;
}
.major-stops ul li:last-child {background:none;}
.major-stops span {color:#1a3364;}
@media (min-width: 48em) {
	.major-stops {margin-bottom:30px; padding-left:92px;	}
	.major-stops span {position:absolute; left:0; top:0;}
}

.route-alerts-btn {
    padding: 5px 10px;
    text-decoration: none;
	text-align:center;
	font-size:12.1px;
	color:#d53f15;	
	position:absolute;
	left:138px;
	bottom:-58px;
	display:inline-block;
	widtH:50px;
}
.route-alerts-btn:hover,
.route-alerts-btn:focus {
	box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
}

@media (min-width:75em) {
	.route-alerts-btn {
		padding:8px 10px 5px;
		font-size:16px;
		bottom:-66px;
		left: 240px;
		width: 100px;
	}	
}

.route-alerts-btn span {
	font-size:13px; 
	background:#d53f15; 
	color:#eee; 
	font-weight:bold;
	position:absolute; 
	top:2px; 
	right:0;
	width:18px; 
	height:18px; 
	text-align:center;
	line-height: 1.4;
	-webkit-border-radius:50%; -moz-border-radius:50%; border-radius:50%;
}

.route-alerts-btn img {
    vertical-align: bottom;
    display: block;
    margin: 0 auto;
    height:28px;
}


.schedules-wrpr .tabs-menu {
	background:#1a3364;
	padding:8px !important;
}


@media (min-width: 48em) {
	.route-alerts-btn {right:0; display:block;}
	.route-alerts-btn:hover,
	.route-alerts-btn:focus {}
}
@media (min-width: 60em) {
	.route-alerts-btn span {right:10px;}
}
@media (min-width:75em) {
	.route-alerts-btn span {top:3px; right:23px;}
	.route-alerts-btn img {
		width: 28px;
	}
}

.route-alerts {background:#f7d61c; padding:2rem 1rem 1rem 1rem; color:#3b527f; position:relative;}
.route-alerts:before {
    position: absolute;
    content: "";
    width: 9999em;
    height: 100%;
    left: -100%;
    top: 0;
    background: #f7d61c;
    z-index: -1;
	display:none;
}
.route-alerts.active .close {
    display: block;
    position: absolute;
    width: 22px;
    height: 22px;
    top: 20px;
    right: 12px;
    background: url(/cms/images/ggb/icon-close.png) no-repeat 50% 50% / cover;
    cursor: pointer;
}
  .route-alerts.active button.close {
    background: transparent;
  }
  .route-alerts.active button.close:after {
    content: "x";
    color: #333;
    font-size: 20px;
    font-weight: 700;
    position: absolute;
    margin: auto;
    bottom: 0;
    right: 0;
    left: 0;
    top: 8px;
}
@media (min-width: 1420px) {
	.route-alerts.active .close {right: -40px;}
}
.route-alerts .close {
    display: none;
}
.route-alerts.active:after {
	position:absolute;
	content:"";
	right:26px;
	margin-right:-11px;
	top:0px;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 11px 11px 0 11px;
	border-color: #fdfdfd transparent transparent transparent;
}
@media (max-width:47.938em) {
	.landing.routes {background:#3b527f;}
	.landing.routes .main-content {padding-bottom:0;}
	.major-stops {display:none;}
	.routes .tab {margin-bottom:0;}
	
	/* .route-alerts.active {display:none !important;} */
	.route-alerts.active:after {display:none;}
	.route-alerts {padding:10px 5% 10px 5%; font-size:14px; line-height:1.2;}
	.route-alerts.active .close {top:10px; right:0;  width: 15px;  height: 15px;}
}	

.route-alerts .alert-item {
	padding: 5px 0 5px 55px;
	position: relative;
	margin-bottom:20px;
}
.route-alerts .capitals {font-weight:bold; text-transform:uppercase;}
.route-alerts .duration	{font-size:13.5px; color:#232323; display:inline-block;}

@media (min-width:60em) {
	.route-alerts.active:after {right:36px;}
}
@media (min-width:75em) {
	.route-alerts.active:after {right:51px;}
}


/* Service Alerts
---------------------- */

.alert-type.accordion-toggle, button.alert-type.accordion-toggle {
  width: 100%;
  height: auto;
  color: #234175;
  font-size: 20px;
  font-weight: normal;
  font-family: 'Lato', sans-serif;
  text-transform: uppercase;
  text-align: left;
  line-height: 1.1;
  margin: 0 0 .5em;
  padding: 20px 20px;
  background-color: #eee !important;
  display: block;
}

.accordion-toggle, button.accordion-toggle {
  width: 100%;
  height: auto;
  text-align: left;
  font-weight: normal;
  font-size: 20px;
  cursor: pointer;
  position: relative;
	padding:8px 40px 8px 20px;
	border-bottom:1px solid #eee;
	background: url(/cms/images/ggb/accordion-right.png) no-repeat 100% 50%;
}
.accordion-toggle.active, button.accordion-toggle.active {background: url(/cms/images/ggb/accordion-close.png) no-repeat 100% 50%;}
.accordion-content {display: none; border-bottom:1px solid #eee; padding:20px 30px 5px 30px; color:#3b527f; font-size:13px;}
.accordion-content.default {display: block;}
.accordion > .accordion-content {border-bottom:none; padding:0 10px 10px 10px;}


.accordion-header {display:table; width:100%;}
.service-number {display:table-cell; width:54px; padding-right:20px; vertical-align:top;}
.service-number span {background:#7793cf; color:#fff; text-align:center; width:54px; font-size:15.75px; font-weight:bold; padding:10px 0; line-height:1.1; display:inline-block;}

.service-name {display:table-cell; padding-right:20px; font-size:14px; color:#333; text-transform:uppercase; vertical-align:middle; line-height:1.1;}
.service-alert {display:table-cell; font-size:12.5px; color:#446bbd; padding-left:30px; width:100px; vertical-align:middle;
	background: url(/cms/images/ggb/icon-alert.png) no-repeat 0 50%;
}

.accordion-content,
.route-alerts {counter-reset: alerts-counter;}
.by-route .alert-item {padding:5px 0 5px 55px; margin-bottom:20px; position:relative;}
.by-route .alert-item:before,
.route-alerts .alert-item:before {
	content: counter(alerts-counter);
	counter-increment: alerts-counter;
	position: absolute;
	left: 5px;
	top: 0px;
	color:#234174;
	font-size:15.75px;
	font-weight: 900;
	padding:10px;
	line-height:1;
	border-right: 1px solid #e94d22;	
}
.service-alerts .capitals {font-weight:bold; text-transform:uppercase; font-size:12px;}
.service-alerts .duration	{font-size:12px; color:#232323; display:inline-block;}

.by-agency .alert-item {padding:5px 10px; margin-bottom:15px; }
.by-agency .service-name {padding:10px 20px 10px 0;}

.accordion-content button.accordion-toggle:hover, 
.accordion-content button.accordion-toggle:focus { background: #CA4F12; }
  .accordion-content button.accordion-toggle:hover .service-number span, 
  .accordion-content button.accordion-toggle:focus .service-number span { color: #CA4F12; background: #fff; }

  .accordion-content button.accordion-toggle:hover .service-name, 
  .accordion-content button.accordion-toggle:focus .service-name, 
  .accordion-content button.accordion-toggle:hover .service-alert, 
  .accordion-content button.accordion-toggle:focus .service-alert { color: #fff; }
  .accordion-content button.accordion-toggle:after {
    content: " ";
    width: 13px;
    height: 13px;
    transform: rotate(-45deg);
    border-right: 1.5px solid #fff;
    border-bottom: 1.5px solid #fff;
    position: absolute;
    bottom: 0;
    right: 18px;
    top: 0;
  }

@media (max-width:47.938em) {
	.accordion-toggle {cursor: pointer; padding:8px 30px 8px 10px; background-size:30px auto;}
	.accordion-toggle.active {background-size:30px auto;}
	.service-number {width:50px; padding-right:15px;}
	.service-number span {width:50px; font-size:15px;}
	.service-name {font-size:13px; padding-right:15px;}
	.service-alert {font-size:12px; width:80px;}
	
	.accordion-content {padding:10px 15px 5px 15px; }
	.service-alerts .alert-item {margin-bottom:10px;}
	
	.by-agency .service-name {padding:10px 15px 10px 10px;}
}	


.alert-signup {background:#eee; padding:30px 20px; font-size:16px;}
.alert-signup h2 {font-size:33px; color:#234175; font-family: 'Lora', serif; margin-bottom:30px;}
.alert-signup .formee input[type="text"] {color:#232323; margin-bottom:20px;}
.alert-signup .formee select {margin-bottom:20px;}
.alert-signup hr {border-top: 1px solid #fff;}
.alert-signup h4 {font-size:16px; color:#234175; text-transform:uppercase; margin-bottom:15px;}
.alert-signup .btnWrapper {margin:30px auto 5px; display:block; width:130px;}
.alert-signup .btn {width:130px;}
.alert-signup p {margin-bottom:15px;}

.alert-signup .chkOptOut input {position:absolute; top:10px; left:10px;}
.alert-signup .chkOptOut label {padding-left:25px;}
.alert-signup .formee select {height: 38px;}
@media (max-width:479px) {
	.alert-signup .chkOptOut input {left:0;}
}

.rail-contact {padding-right:10px;}
  .rail-contact a { text-decoration: underline; }
  .rail-contact a:hover, .rail-contact a:focus { text-decoration: none; }
  
.longEmail {
  overflow-wrap: break-word;
  word-wrap: break-word;
  -ms-word-break: break-all;
  word-break: break-all;
  word-break: break-word;
  -ms-hyphens: auto;
  -moz-hyphens: auto;
  -webkit-hyphens: auto;
  hyphens: auto;
}

/* Home Page
------------------- */
.slideshow-wrpr .container {max-width:1920px;}


.visiting-bridge {padding-bottom:20px;}
.home h2.heading {}
.home h2.heading {font-size:28px; color:#234174; display:inline-block; padding-top:.75em; position:relative; margin:10px 0 20px; font-family: 'Lora', serif;}
.home h2.heading:after {
	position:absolute;
	content:"";
	width:100px;
	height:2px;
	top:0;
	left:50%;
	margin-left:-50px;

	background:#e94d22;
}
.home p.leading {font-size:17px; color:#666; padding:0 3%; margin-bottom:40px;}

.home-callout {
	display:block;
	margin-bottom:35px;
	background:#fff;
	text-decoration:none;
	-webkit-box-shadow: 0px 0px 13px 0px rgba(50, 50, 50, 0.13);
	-moz-box-shadow:    0px 0px 13px 0px rgba(50, 50, 50, 0.13);
	box-shadow:         0px 0px 13px 0px rgba(50, 50, 50, 0.13);
}
.home-callout:hover, 
.home-callout:focus {
	-webkit-box-shadow: 0px 0px 13px 0px rgba(50, 50, 50, 0.25);
	-moz-box-shadow:    0px 0px 13px 0px rgba(50, 50, 50, 0.25);
	box-shadow:         0px 0px 13px 0px rgba(50, 50, 50, 0.25);	
}
.home-callout .inner {display:block; padding:7% 9%;}
.home-callout span.h3 {display:block; font-size:20px; line-height:1.2; margin-bottom:10px; display:inline-block; color:#3354a3;}
.home-callout:hover span.h3, 
.home-callout:focus span.h3 {text-decoration:underline;}
.home-callout span.p {display:block; font-size:16px; color:#222; line-height:1.3; margin-bottom:0;}


.news-events {padding:0;}




.work-with-us {padding:30px 0 80px; background:none;}
.work-with-us .btn,
.btn.theme1 {
	font-size:16px; 
	font-weight:900; 
	text-transform:uppercase;
	color:#ca4f12; 
	background:#fff; 
	border:1px solid #fbcab4; 
	display:inline-block;
	margin:10px 0 30px; 
	padding:15px 50px;
	-webkit-border-radius:0; -moz-border-radius:0; border-radius:0;
}

.btn.theme1:hover,
.btn.theme1:focus,
.work-with-us .btn:hover,
.work-with-us .btn:focus {
	border:1px solid #7A7A7A;
}


@media (min-width:48em) {
	.visiting-bridge {background: url(/cms/images/ggb/visit.jpg) no-repeat 100% 0 / cover; padding-bottom:40px;}	
	
	.home h2.heading {font-size:50px; padding-top:.5em; margin:20px 0 40px;}
	.home h2.heading:after {
		width:190px;
		height:3px;
		margin-left:-85px;
	}	
	
	.home p.leading {font-size:18px; padding:0 15%;}

	.home-callout span.h3 {font-size:22px;}
	.home-callout span.p	{font-size:17px; margin-bottom:15px;}

	.news-events {padding:60px 0;}	
	
	.work-with-us {padding:70px 0 70px; background: url(/cms/images/ggb/work-bkgd.jpg) no-repeat 50% 0 ;}
	.work-with-us .btn {font-size:19px; padding:15px 55px; margin:30px 0;}

}
@media (min-width:60em) {

}
@media (min-width:75em) {
	.home h2.heading {font-size:66px;}
	.home p.leading {font-size:21px;}

	.home-callout span.h3 {font-size:24px;}
	.home-callout span.p	{font-size:18px;}
	
	.home .work-with-us p.leading {padding:0 20%;}	
}

@media (max-width:59.938em) {
	.visiting-bridge .grid_3 {width:50%;}
	.visiting-bridge .grid_6 {width:100%;}
}
@media (max-width:47.938em) {
	.home .main-content {padding:20px 0;}
}
@media (max-width:479px) {
	.visiting-bridge .grid_3 {width:100%;}
	.home-callout {min-height:0 !important;}
}

.news-slider {padding:0 40px;}
.news-slider-item {
  width: 95% !important;
	padding:0 2px; 
	margin:10px 0; 
	background:#fff;
	-webkit-box-shadow: 0px 0px 5px 0px rgba(50, 50, 50, 0.25);
	-moz-box-shadow:    0px 0px 5px 0px rgba(50, 50, 50, 0.25);
	box-shadow:         0px 0px 5px 0px rgba(50, 50, 50, 0.25);
}
.news-slider-text {padding:10%;}
.news-slider-item h2 {font-size:20px; margin-bottom:.5em;}
.news-slider-item h2 a {color:#3354a3; text-decoration:none; }
.news-slider-item h2 a:hover,
.news-slider-item h2 a:focus {color:#234174; text-decoration:underline;}
.news-slider-item p {
	margin:0;
	color:#222;
    overflow: hidden;
}

@media (min-width:48em) {
	.news-slider {padding:0 60px;}
	.news-slider-item h2 {font-size:21px;}
}
@media (min-width:60em) {
	.news-slider {padding:0 70px;}	
	.news-slider {padding:0 80px;}
	.news-slider-item h2 {font-size:23px;}
}
@media (min-width:75em) {
	.news-slider {padding:0 120px;}	
	.news-slider-item h2 {font-size:25px; }
	.news-slider-item p  {font-size:16.5px;}
}
@media (min-width:1500px) {
	.news-slider {padding:0;}	
}
@media (max-width:479px) {
	.news-slider-item {padding:0;}
}	

.home .news-slider-item .time {
	display:none;
}

.interior .news-slider {
	margin:0 1rem 2rem 1rem;
	padding:0;
}

.interior .news-slider .slick-prev,
.interior .news-slider .slick-next {
	background:transparent;
}

.interior .news-slider .slick-prev {
	left:-40px;
}

.interior .news-slider .slick-next {
	right:-40px;
}

@media (max-width:59.938em) {
	.interior .news-slider .slick-prev {
		left:-30px;
	}
	.interior .news-slider .slick-next {
		right:-30px;
	}
}

.interior .news-slider .slick-prev::before,
.interior .news-slider .slick-next::before {
	color:#ca4f12;
}

.interior .news-slider-item {
	padding:0 1rem;
}

.interior .news-slider-item {
	padding:0 2px; 
	margin:10px 0; 
	background:#fff;
	-webkit-box-shadow: none;
	-moz-box-shadow:    none;
	box-shadow:         none;
}

.interior .news-slider-item > div {
	margin:0 1rem;
	
	-webkit-box-shadow: 0px 0px 5px 0px rgba(50, 50, 50, 0.25);
	-moz-box-shadow:    0px 0px 5px 0px rgba(50, 50, 50, 0.25);
	box-shadow:         0px 0px 5px 0px rgba(50, 50, 50, 0.25);
}

.interior .news-slider-item .time {
	color:#e94d22;
}




/* Homepage Tabs/Accordion
-------------------------- */
.home-accordion {z-index:9;}
.home-accordion-toggle, button.home-accordion-toggle {cursor: pointer;}
.home-accordion-content {display: none;}
.home-accordion-content.default {display: block;}

.home-accordion-toggle, button.home-accordion-toggle {font-size:18.5px; color:#ca4f12; background:#fff;}
.home-accordion-content {background:#f6f5f5; padding:20px 20px 40px 20px;}

.trip-planer .arrows {float:none; text-align:center; padding-top:0; margin-top:-10px;}
.trip-planer .arrows img {width:18px;
	-ms-transform: rotate(90deg); -webkit-transform: rotate(90deg); transform: rotate(90deg);
}

.trip-planer .date,
.trip-planer .time {position:relative;}

.trip-planer .formee select, 
.trip-planer .formee input {text-transform:none; font-size:16px; border:2px solid #dadada;}
.trip-planer .formee select {height:48px; padding:11px 35px 11px 10px;
	background-image: url("/cms/images/layout/arrow_down_blue.gif");
	background-size: 13px 7px;
	background-position: right 12px top 21px;
	background-repeat: no-repeat;
	
	-webkit-appearance: none;
	appearance: none;
	-webkit-appearance: none;
	-moz-appearance: none;	
}
.trip-planer .formee select::-ms-expand {
	display: none;
}

/* .trip-planer .formee select:focus, 
.trip-planer .formee input:focus {outline:0 !important;} */
	
.trip-planer .formee input {padding:11px 10px;}
.trip-planer .ui-datepicker-trigger {
	position: absolute;	
	width:28px;
	height:31px;
	top: 8px;
	right: 13px
}
.trip-planer .clock {
	position: absolute;	
	width:28px;
	height:28px;
	top: 10px;
	right:50px;
}

.trip-planer-right {text-align:center;}
.trip-planer-right .btn {font-weight:900; padding:16px 55px 16px 55px;}
.trip-planer-right a {display:none;}

.real-time .trip-planer-right a.btn {display:block;}

.real-time .tabs-menu li:last-child {float:none;}
.real-time .tab-content {display:block !important;}

@media (min-width:48em) {
	.home-accordion {width:615px; padding-top:36px; position:absolute; left:13%; bottom:60px; }
	.home-accordion-toggle {}
	.home-accordion-toggle, button.home-accordion-toggle {position:absolute; width:24%; top:0; padding:4px 0;  text-align:center; background:rgba(231,236,239,.97); height:36px; font-size:16px;
		-webkit-border-radius:13px 13px 0 0; 
		-moz-border-radius:13px 13px 0 0; 
		border-radius:13px 13px 0 0; 
	}
	/* .home-accordion-toggle.tab1, button.home-accordion-toggle.tab1 {left:2%;}	
	.home-accordion-toggle.tab2, button.home-accordion-toggle.tab2 {left:34%;}
	.home-accordion-toggle.tab3, button.home-accordion-toggle.tab3 {left:66%;} */
	
	.home-accordion-toggle.tab1, button.home-accordion-toggle.tab1 {left:2%;}	
	.home-accordion-toggle.tab2, button.home-accordion-toggle.tab2 {left:50%;}
	.home-accordion-toggle.tab3, button.home-accordion-toggle.tab3 {left:74%;}
	.home-accordion-toggle.tab4, button.home-accordion-toggle.tab4 {left:26%;}	
	
	.home-accordion-content {
		/* padding:35px 22px 20px 22px; height:187px; */ 
		padding: 40px 22px 25px 22px; height: 215px;
		-webkit-border-radius:13px; 
		-moz-border-radius:13px; 
		border-radius:13px;
	}
	
	.home-accordion-toggle.active, button.home-accordion-toggle.active {background:rgba(255,255,255,.95);}
	.home-accordion-content {background:rgba(255,255,255,.95);}
	
	
	.trip-planer-left {float:left; width:390px;}
	.trip-planer-right {float:right; width:80px; padding-left:5px;}
	
	.trip-planer .depart,
	.trip-planer .arrive {float:left; width:176px;}
	.trip-planer .select-route {padding-right:10px;}
	.trip-planer .arrows {float:left; width:28px; text-align:center; padding-top:21px; margin-top:0;}
	.trip-planer .arrows img {width:18px;
		-ms-transform: rotate(0deg); -webkit-transform: rotate(0deg); transform: rotate(0deg);
	}
	.trip-planer .date,
	.trip-planer .time {float:left; width:185px; margin-right:10px;}

	
	.trip-planer .formee select, 
	.trip-planer .formee input {font-size:16px;}
	.trip-planer .formee select {height:52px; padding:13px 40px 13px 10px;
		background-size: 13px 7px;
		background-position: right 12px top 23px;
	}	
	.trip-planer .formee input {padding:13px 10px;}
	.trip-planer .ui-datepicker-trigger {
		width:28px;
		height:31px;
		top: 8px;
		right: 13px;
	}
	.trip-planer .clock {
		width:28px;
		height:28px;
		top: 10px;
	}	
	
	/* .trip-planer-right .btnWrapper {margin-bottom:30px;} */	
	.trip-planer-right .btn {font-size:16px; padding:16px 25px 16px 25px;}
	.trip-planer-right a {display:inline-block; text-decoration:underline; margin-top:30px;}
}
@media (min-width:60em) {
	.home-accordion {bottom:60px; }
}
@media (min-width:75em) {
	.home-accordion {width:700px; padding-top:40px;}
	.home-accordion-toggle, button.home-accordion-toggle {position:absolute;  width:24%; top:0; padding:6px 0; height:40px; font-size:18.5px;
		-webkit-border-radius:15px 15px 0 0; 
		-moz-border-radius:15px 15px 0 0; 
		border-radius:15px 15px 0 0; 
	}
	.home-accordion-toggle.tab1, button.home-accordion-toggle.tab1 {left:2%;}	
	.home-accordion-toggle.tab2, button.home-accordion-toggle.tab2 {left:50%;}
	.home-accordion-toggle.tab3, button.home-accordion-toggle.tab3 {left:74%;}
	.home-accordion-toggle.tab4, button.home-accordion-toggle.tab4 {left:26%;}
	
	.home-accordion-content {padding:40px 25px 25px 25px; height:215px;
		-webkit-border-radius:15px; 
		-moz-border-radius:15px; 
		border-radius:15px;
	}

	.trip-planer-left {width:550px;}
	.trip-planer-right {width:100px;}
	
	.trip-planer .depart,
	.trip-planer .arrive {width:204px;}
	.trip-planer .select-route {padding-right:10px;}
	.trip-planer .arrows {width:32px; padding-top:19px;}
	.trip-planer .arrows img {width:22px;}
	.trip-planer .date,
	.trip-planer .time {width:214px; margin-right:11px;}
	

	.trip-planer .formee select, 
	.trip-planer .formee input {font-size:18px;}
	.trip-planer .formee select {
		height:60px; 
		padding:17px 40px 17px 10px;
		background-size: 13px 7px;
		background-position: right 15px top 27px;
	}	
	.trip-planer .formee input { padding: 17px 10px; }
    .trip-planer .formee .time input { padding: 17px 10px; }
	.trip-planer .ui-datepicker-trigger {
		width:32px;
		height:36px;
		top: 13px;
		right: 17px;
	}
	.trip-planer .clock {
		width:31px;
		height:31px;
		top: 15px;
	}

	/* .trip-planer-right .btnWrapper {margin-bottom:35px;} */
	.trip-planer-right .btn {font-size:17px; padding:19px 33px 20px 33px;}
	.trip-planer-right a {margin-top:35px;}	
}
@media (min-width:1400px) {
	.home-accordion {left:auto; right:50%;}
}

@media (max-width:47.938em) {	
	.home-accordion-toggle, button.home-accordion-toggle {font-size:18px; padding:15px 40px 15px 20px; border-top:1px solid #c2c2c2; position:relative;}
	.home-accordion-toggle:after, button.home-accordion-toggle:after {
		position:absolute;
		content:"";
		width:18px;
		height:18px;
		right:15px;
		top:20px;
		background: url(/cms/images/ggb/accordion-right-orange.png) no-repeat;
		-wekbit-transition: all 0.4s ease-in-out;
		transition: all 0.4s ease-in-out;
	}
	.home-accordion-toggle.active:after, button.home-accordion-toggle.active:after {
		-webkit-transform: rotate(90deg);
			-ms-transform: rotate(90deg);
				transform: rotate(90deg);		
	}
}

/* Real Time */
/* @media (min-width:75em) {
	.home-accordion-content.real-time {padding:75px 22px 20px 22px;}
}	
@media (min-width:75em) {
	.home-accordion-content.real-time {padding:80px 25px 25px 25px;}
} */

.home-accordion .transit-app-wrapper {max-height:200px; top:0; }
.home-accordion .real-time-left .icon {
    display: inline-block;
    background-color: #fff;
    border: 5px solid #d7d7d7;
    float: left;
    margin-right: 8px;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    border-radius: 50%;
    background-repeat: no-repeat;
    background-size: cover;
    width: 65px;
    height: 65px;	
	
	background-color: #446bbd;
	background-image: url(/cms/images/ggb/icon-real-time-white.png);
}
.home-accordion .real-time-left .text {line-height: 1.1; display: inline-block; font-size:14px;}

@media (min-width:48em) {
	.home-accordion .real-time .inner {display:table; width:100%;}
	.home-accordion .real-time-left {display:table-cell; width:160px; vertical-align:top;}
	.home-accordion .real-time-right	 {display:table-cell; }

	.home-accordion .real-time-left .icon {	
		width: 75px;
		height: 75px;
		float:none;
		margin-top: -10px;
	}
	.home-accordion .real-time-left .text {font-size:16px;}

	
	.home-accordion .transit-app-wrapper {height:200px; top:-30px;}
}
@media (min-width:75em) {
	.home-accordion .real-time-left .icon {	
		width: 86px;
		height: 86px;
	}
}

.transit-schedules .trip-planer-left{position:relative; }

.transit-schedules .tabs-menu {display:block; position:relative; left:0; top:0; margin: 5px 0 25px}
.transit-schedules #tab-1 {display: block;}

.transit-schedules .tabs-menu li {width:50%;}
.transit-schedules .tabs-menu li:first-child {border-right:none;}
.transit-schedules .tabs-menu li a {text-align:left; color:#424242; line-height:1.25; background-color: rgba(255,255,255,0); padding:0; width:100%; display:inline; font-size:14px;}	
.transit-schedules .tabs-menu li a:hover, 
.transit-schedules .tabs-menu li a:focus, 
.transit-schedules .tabs-menu .current a {background-color: rgba(255,255,255,0);}
.transit-schedules .tabs-menu li a .icon {display:inline-block; background-color:#fff; border:5px solid #d7d7d7; float:left; margin-right:8px;
	-webkit-border-radius:50%; -moz-border-radius:50%; border-radius:50%;
	background-repeat: no-repeat;
	background-size: cover;
	width:65px; 
	height:65px;
}
.transit-schedules .tabs-menu li a:hover .icon, 
.transit-schedules .tabs-menu li a:focus .icon {opacity:.8;}
.transit-schedules .tabs-menu li.current a:hover .icon, 
.transit-schedules .tabs-menu li.current a:focus .icon {opacity:1;}


.transit-schedules .tabs-menu li.current a .icon {background-color:#446bbd;}
.transit-schedules .tabs-menu li a .text {text-decoration:none; padding-top:15px; display:inline-block;}

.transit-schedules .tabs-menu li:nth-child(1) .icon {background-image: url(/cms/images/ggb/icon-bus-dark.png);}
.transit-schedules .tabs-menu li:nth-child(2) .icon {background-image: url(/cms/images/ggb/icon-ferry-dark.png);}

.transit-schedules .tabs-menu li:nth-child(1).current .icon {background-image: url(/cms/images/ggb/icon-bus-white.png);}
.transit-schedules .tabs-menu li:nth-child(2).current .icon {background-image: url(/cms/images/ggb/icon-ferry-white.png);}

.transit-schedules.real-time .tabs-menu li:nth-child(1).current .icon {background-image: url(/cms/images/ggb/icon-real-time-white.png);}

.transit-schedules.real-time .tabs-menu li {width:100%;}
@media (min-width:48em) {
	.transit-schedules .tabs-menu {padding-right:10px; margin:-20px 0 18px; }
	.transit-schedules .tabs-menu li a {font-size:17px;}
	.transit-schedules .tabs-menu li a .icon {width:75px; height:75px;}
	.transit-schedules .tabs-menu li a .text {padding-top:18px;}
	.transit-schedules .btnWrapper{margin-top:73px;}
	
	.transit-schedules.real-time .btnWrapper {margin-top:-15px;}
	.real-time .trip-planer-right a {margin-top:0; text-decoration:none;}	
}
@media (min-width:75em) {
	.transit-schedules .tabs-menu {padding-right:11px; margin:-25px 0 20px; }
	.transit-schedules .tabs-menu li a {font-size:19px;}
	.transit-schedules .tabs-menu li a .icon {width:86px; height:86px;}
	.transit-schedules .tabs-menu li a .text {padding-top:20px;}
	.transit-schedules .btnWrapper{margin-top:80px;}
}


.toll-links li {float:left; width:50%; text-align:center; border-right:1px solid #e1e0e0; padding:20px 0;}
.toll-links li:last-child {border-right:none;}
.toll-links li a {text-decoration:none; text-transform:uppercase; font-weight:bold; line-height:1.3; display:inline-block; font-size:14px;}
.toll-links li a span {background-color:#fff; border:6px solid #d7d7d7; display:inline-block;
	-webkit-border-radius:50%; -moz-border-radius:50%; border-radius:50%;
	background-repeat: no-repeat;
	background-size: cover;
	width:82px; 
	height:82px; 
	margin-bottom:10px;	
	
    -wekbit-transition: all 0.4s ease-in-out;
            transition: all 0.4s ease-in-out;	
}
.toll-links li a:hover span, 
.toll-links li a:focus span {background-color:#446bbd;}
.toll-links li:nth-child(1) a span {background-image: url(/cms/images/ggb/icon-invoice-dark.png);}
.toll-links li:nth-child(2) a span {background-image: url(/cms/images/ggb/icon-payment-dark.png);}
.toll-links li:nth-child(3) a span {background-image: url(/cms/images/ggb/icon-plate-dark.png);}
.toll-links li:nth-child(4) a span {background-image: url(/cms/images/ggb/icon-fastrak-dark.png);}

.toll-links li:nth-child(1) a:hover span,
.toll-links li:nth-child(1) a:focus span
	{background-image: url(/cms/images/ggb/icon-invoice-white.png);}
.toll-links li:nth-child(2) a:hover span, 
.toll-links li:nth-child(2) a:focus span 
	{background-image: url(/cms/images/ggb/icon-payment-white.png);}
.toll-links li:nth-child(3) a:hover span,
.toll-links li:nth-child(3) a:focus span
	{background-image: url(/cms/images/ggb/icon-plate-white.png);}
.toll-links li:nth-child(4) a:hover span, 
.toll-links li:nth-child(4) a:focus span
	{background-image: url(/cms/images/ggb/icon-fastrak-white.png);}


@media (min-width:48em) {
	.toll-links {margin-top:-17px;}
	.toll-links li {float:left; width:25%; padding:0;}
	.toll-links li a {font-size:14px; height:155px;}
	.toll-links li a span {width:86px; height:86px; margin-bottom:10px;}	
}
@media (min-width:75em) {
	.toll-links {margin-top:-20px;}
	.toll-links li a {font-size:15.6px; height:182px;}
	.toll-links li a span {width:100px; height:100px; margin-bottom:15px;}
}
@media (max-width:47.938em) {
	.toll-links li:nth-child(1) {border-bottom:1px solid #e1e0e0;}
	.toll-links li:nth-child(2) {border-bottom:1px solid #e1e0e0; border-right:none;}
}

/* Homepage Hero Banner
-------------------------- */
/* .slideshow-wrpr {overflow-x: hidden;} */
.banner-wrpr {position:relative;}

.slideshow-wrpr .bannerText {
	width:100%;
	padding:40px 20px 20px;
	color:#fff;
	text-align:center;
	display:none;
	z-index:9;
}
.slideshow-wrpr .bannerText h2 {display:inline-block; color:#fff; font-family: 'Lora', serif; padding-right:10px; margin-bottom:.2em; 
	text-shadow: 2px 2px 2px rgba(50, 50, 50, 1);
}
.slideshow-wrpr .bannerText p {display:inline-block; text-transform:uppercase; 
	text-shadow: 2px 2px 2px rgba(50, 50, 50, 1);
}
/* 16px baseline (768px +) */
@media only screen and (min-width:48em){
	.slideshow-wrpr .bannerText {
		position:absolute;
		top:0;
		left:0;
		display:block;
	}
}
@media (min-width:48em) {
	.slideshow-wrpr .bannerText h2 {font-size:32px;}
	.slideshow-wrpr .bannerText p {font-size:17px; letter-spacing:2px;}	
}			
@media (min-width:60em) {
	.slideshow-wrpr .bannerText h2 {font-size:36px;}
	.slideshow-wrpr .bannerText p {font-size:17px; letter-spacing:2px;}
}
@media (min-width:75em) {
	.slideshow-wrpr .bannerText h2 {font-size:40px;}
	.slideshow-wrpr .bannerText p {font-size:18px; letter-spacing:2px;}	
}
@media (min-width:1300px) {
	.slideshow-wrpr .bannerText h2 {font-size:50px;}
	.slideshow-wrpr .bannerText p {font-size:20px; letter-spacing:2px;}	
}	
@media (min-width:1500px) {
	.slideshow-wrpr .bannerText h2 {font-size:58px;}
	.slideshow-wrpr .bannerText p {font-size:23px; letter-spacing:2px;}
}

@media (min-width:60em) and (max-width:1520px){
	.slideshow-wrpr .banner-wrpr {
		display:block;
		position: relative;
		height: 523px;
	}
	.slideshow-wrpr .banner-wrpr img {
		position:absolute;
		width:1520px !important;
		max-width:none !important;
		top:0;
		left:50%;
		margin-left:-760px;		
	}
}


@media (min-width:48em) and (max-width:59.938em){
	.slideshow-wrpr .banner-wrpr {
		display:block;
		position: relative;
		height: 447px;
	}
	.slideshow-wrpr .banner-wrpr img {
		position:absolute;
		width:1300px !important;
		max-width:none !important;
		top:0;
		left:50%;
		margin-left:-650px;		
	}
}



	

/* FAQs
-------------------------- */
.FAQWrpr .questionList {margin-bottom:20px; list-style-type: disc; padding-left:22px;}
.FAQWrpr #CT_Main_0_phForm {background: #f2f2f2; padding: 20px;}

.FAQAnswerWrpr {margin-bottom:20px;}
.FAQAnswerWrpr .faqarea {
    padding: 5px 10px 5px 10px;
    margin: 10px 0;
}
.FAQAnswerWrpr .faqarea:nth-child(2n+1) {
    border: solid 1px #BCBCBC;
    background-color: #F7f7f7;
}
.faq-area > span {
    color: #234174;
    font: 700 26px/1em "Lato";
    display: inline-block;
    float: left;
    margin: 0 10px 0 0;
	padding-top:5px;
}
.faq-area p,
.faq-area h4 { margin-left: 35px;}
.faq-area h4 { padding-top: 5px;}
.faq-area p { padding-top: 10px;}
.faqarea .topOfPage {text-align: right;}
.faqarea .topOfPage a {
    background: transparent url(/cms/images/arrow.gif) no-repeat 100% 50%;
    padding-right: 13px;
}

/* FAQ accordion */	
.faq-toggle {
	width: 100%;
	height: auto;
	text-transform: none;
	text-align: left;
	padding: 0;
	background: none;
	display: block;
	padding-right:40px;
	position:relative;
}
.faq-toggle:hover,
.faq-toggle:focus {background: none;}

.faq-toggle:after {
	display: inline-block;
	position: absolute;
	top: 50%;
	right: 0;

	-wekbit-transition: all 0.4s ease-in-out;
	transition: all 0.4s ease-in-out;
	-webkit-transform: rotate(90deg);
	-ms-transform:  rotate(90deg);
	transform:  rotate(90deg);
	
	content: "\232a";
	font-family: 'icomoon';
	color: #ccc;
	width:20px;
	height:26px;
	font-size:20px;
	margin-top: -13px;
}
.faq-toggle.active:after {
	-webkit-transform: rotate(-90deg);
	-ms-transform:  rotate(-90deg);
	transform:  rotate(-90deg);	
}

.faq-panel {display:none;}




#CT_Main_0_dlSiteMap td {vertical-align:top;}
.adminFix .header {position:static;}
.adminFix .bridge .callout a::after {display:none;}
.adminFix .moduleContent {min-height:30px;}
.adminFix .routes .pageTopWrpr{display:block;}

.adminFix .pageTopWrpr {height:auto;}
.adminFix .landing .pageTopImgOverlay {display:none;}
.adminFix .pageTopImg {
    position: static;
    display: block;
    width: 100%;
    height: auto;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    transform: translateX(0);
}
.adminFix .pageTopImg .portlet-header {display:block !important;}
.adminFix .landing .pageTop {position:static;}

.schedules-wrpr.updates .tabs-menu  {
	background: #1e5e39;
}

.schedules-wrpr.updates .schedules-list span {
	background:#8dc558;
}

.schedules-wrpr.updates .schedules-list li:hover span,
.schedules-wrpr.updates .schedules-list li:focus span {background:#b4d398;}
 
/*! ________________
*   ___  ____/_  __ \
*   __  /_   _  / / /
*   _  __/   / /_/ /
*   /_/      \____/
*   Focus Overlay
*
*  Version: 0.9.5
*  Author: Maurice Mahan
*  License: MIT
*  Repo: https://github.com/MauriceMahan/FocusOverlay
*/

#focus-overlay {
  display: none; position: relative; border-radius: 2px;
  box-shadow: 0 0 3px 2px #78aeda; transition: all 0.2s cubic-bezier(0, 1, 0, 1); }
#focus-overlay::after {
content: ""; width: 100%; height: 100%; opacity: 0; 
top: 0; left: 0; position: absolute; 
  box-shadow: 0 0 2px 1px #008cff, 0 0 2px #008cff inset; transition: all 0.1s ease-out; }
#focus-overlay.focus-overlay-active { display: block; }
#focus-overlay.focus-overlay-animating::after { opacity: 1; }
.focus-overlay-target { outline: none; }

.transit-app-wrapper {
	height:860px;
	display:block; 
	position:relative;
}

/* UPDATED schedules */

.route-schedule-updates .routes-filter-top,
.route-schedule-updates .routes-filter-top:before {
	background: #1e5e39;
}

.route-schedule-updates .routes-filter-top.formee select {
	background-color:#8dc558;
}

.route-schedule-updates .route .tabs-menu li a {
	color: #1e5e39;
}

.route-schedule-updates .route .tabs-menu .current a {
	color: #1e5e39;
	border: 1px solid #1e5e39;
}

.route-schedule-updates .route .tabs-menu li a:hover, 
.route-schedule-updates .route .tabs-menu li a:focus {
	border: 1px solid #1e5e39;
}

.route-schedule-updates .route-table-controls__left span,
.route-schedule-updates .route-table-controls__right span,
.route-schedule-updates button.route-table-controls__left span,
.route-schedule-updates button.route-table-controls__right span {
	background:#8dc558;
}

.route-schedule-updates .route-table-controls__left:hover span, 
.route-schedule-updates .route-table-controls__right:hover span,
.route-schedule-updates button.route-table-controls__left:hover span,
.route-schedule-updates button.route-table-controls__right:hover span .route-table-controls__left:focus span,
.route-schedule-updates .route-table-controls__right:focus span,
.route-schedule-updates button.route-table-controls__left:focus span,
.route-schedule-updates button.route-table-controls__right:focus span {
	background:#1e5e39;
}

.route-schedule-updates .route-table-controls__left.disabled span,
.route-schedule-updates .route-table-controls__right.disabled span, 
.route-schedule-updates button.route-table-controls__left.disabled span, 
.route-schedule-updates button.route-table-controls__right.disabled span {
    background:#e2e3e0;
}

.route-schedule-updates .route-table table tr:nth-child(2n+3) {
    border-bottom: 2px solid #1e5e39;
}

.route-schedule-updates .route-table table td {
	color: #1e5e39;
}

.route-schedule-updates .route-table__wrapper table td:nth-child(2n) {
    background: #e2e3e0;
}

.divLeftRailWysiwyg .railNavwrpr ul {
    list-style-type: none !important;
    padding: 0px !important;
}