

@media only screen and (max-width: 1080px) {

	#regions_div, 
	#regions_div_2 {
	    height: 310%!important;
	    position: absolute;
	    top: -110%;
	    left: -120%;
	    width: 325%!important;
	}

}


@media only screen and (min-width: 961px) and (max-width: 1200px) {

	#pageWrapper nav.nav ul#main_navigation > li > a, 
	#pageWrapper nav.nav ul#main_navigation > li > span {
	    padding: 0 16px;
	}

	#pageWrapper #main_navigation > li.has-children > a:after, 
	#pageWrapper #main_navigation > li.has-children > span:after {
	    right: 8px;
	}

}


@media only screen and (min-width: 961px) {

	#header.shrink {
		box-shadow: 0 2px 2px rgba(0,0,0,0.1);
	}

	.APL-logo.front-logo {
		width: 183px;
		height: 38px;
		margin: 0 0 0 0;
	}

	.APL-logo.front-logo {
		width: 183px;
		height: 38px;
		transition: all .2s;
	}

	.shrink .APL-logo.front-logo {
		margin: 0 0 0 0;
		width: 145px;
		height: 30px;
		/* margin-left: -60px; */
	}
/*
	
*/
	#toggle-user-menu,
	#toggle-user-menu + label {
		display: none;
	}

	.nav {
		width: 100%;
		clear: both;
		position: relative;
	}

	#main_navigation li {
		float: left;
		position: relative;
	}

	#main_navigation > li.has-children:after {
		content: "";
		border-style: none;
		border-left: 5px solid transparent;
		border-right: 5px solid transparent;
		border-bottom: 6px solid #d5045f;
		position: absolute;
		bottom: 0;
		left: 50%;
		opacity: 0;
		margin: 0 0 0 -3px;
		transform: translate3d(0,0,0);
		-ms-transform: translate3d(0,0,0);
		-webkit-transform: translate3d(0,0,0);
	}

	#main_navigation > li.has-children:hover:after {
		opacity: 1;
	}

	#main_navigation li a,
	#main_navigation li > span {
		padding: 9px 16px;
		font-size: 12px;
		color: #606060;
		display: block;
		font-weight: 700;
		text-transform: uppercase;
	}

	#main_navigation li,
	#main_navigation a,
	#main_navigation span {
		transition: all .4s;
		transform: translate3d(0,0,0);
		-ms-transform: translate3d(0,0,0);
		-webkit-transform: translate3d(0,0,0);
	}

	#main_navigation li a:hover,
	#main_navigation li > span:hover {
		color: #212b55;
	}
	
	#main_navigation ul li.has-children > a {
		padding-right: 20px;
	}

	#main_navigation ul li.has-children > a:after {
		content: "\f105";
		font-family: first-icons;
		font-weight: normal;
		position:  absolute;
		right: 0;
		top: 50%;
		margin-top: -12px;
	}

	.more-open span,
	body #pageWraper li.active-trail.moreplus span {
		background: #d5045f;
		color: #fafafa;
	}

	.moreplus {
		cursor: pointer;
	}

	.user-menu ul,
	#main_navigation ul,
	.moreplus ul {
		position: absolute;
		left: 0;
	    height: auto;
	    max-height: 0;
		top: 100%;
		width: 240px;
		background: #fafafa;
		z-index: 1000;
		padding: 0;
		visibility: hidden;
		opacity: 0;
		transform: translate3d(0,0,0) translateX(-100px);
		-ms-transform: translate3d(0,0,0) translateX(-100px);
		-webkit-transform: translate3d(0,0,0) translateX(-100px);
	}

	#main_navigation > li > ul,
	.moreplus > li > ul {
		border-top: 2px solid #d5045f;
	}

	#main_navigation ul li,
	.moreplus ul li {
		width: 100%;
		padding: 10px 12px;
		position: relative;
	}

	.user-menu ul li {
		display: block;
		position: relative;
		padding: 0 12px;
	}

	.user-menu ul li a {
		display: block;
		text-align: left;
		text-transform: none;
	    letter-spacing: 0;
	    line-height: 24px;
	    padding: 10px 0;
	    font-size: 12px;
	    color: #666;
	    font-weight: 600;
	    transition: all .2s;
	    border-bottom: 1px solid rgba(0,0,0,0.1);
	}

	#main_navigation ul li:after,
	.moreplus ul li:after {
		content: "";
		background: rgba(0,0,0,0.05);
		width: calc(100% - 24px);
		height: 1px;
		position: absolute;
		bottom: 0;
		left: 12px;
	}

	#main_navigation ul li a,
	#main_navigation .moreplus ul li a {
		text-transform: none;
		letter-spacing: 0;
		line-height: 24px;
		padding: 0;
		color: #666;
		font-weight: 600;
		transition: all .2s;
	}

	.user-menu > li:hover > ul,
	#main_navigation > li:hover > ul,
	#main_navigation > li > a:hover > ul,
	#main_navigation .moreplus:hover ul,
	#main_navigation > li:hover > ul > li:hover > ul,
	#main_navigation > li > a:hover > ul > li:hover > ul,
	#main_navigation .moreplus:hover ul > li:hover > ul,
	#main_navigation > li:hover > ul > li:hover > ul > li:hover > ul,
	#main_navigation > li > a:hover > ul > li:hover > ul > li:hover > ul,
	#main_navigation .moreplus:hover ul > li:hover > ul > li:hover > ul {
		box-shadow: 0 2px 2px rgba(0,0,0,0.2);	
		visibility: visible;
		opacity: 1;
		max-height: none;
	}

	nav.nav ul#main_navigation > li:hover > a,
	#main_navigation ul li a:hover,
	#main_navigation ul li a.active,
	#main_navigation .moreplus ul li a:hover,
	#main_navigation .moreplus ul li a.active {
		background: transparent;
		color: #d5045f;
	}

	nav.nav {
		width: auto;
		float: right;
		clear: none;
		vertical-align: top;
	}
	
	#main_navigation {
		float: left;
	}

	#main_navigation > li:first-child {
		display: none;
	}

	nav.nav ul#main_navigation > li > a,
	nav.nav ul#main_navigation > li > span {
		line-height: 90px;
		padding: 0 24px;
		font-weight: 700;
		font-size: 11px;
		letter-spacing: 0.5px;
		color: #777;
		transition: all .2s;
		transform: translate3d(0,0,0);
		-ms-transform: translate3d(0,0,0);
		-webkit-transform: translate3d(0,0,0);
	}

	.shrink nav.nav ul#main_navigation > li > a,
	.shrink nav.nav ul#main_navigation > li > span {
		line-height: 70px;	
	}

	#main_navigation li a.active, 
	#main_navigation li a.active-trail, 
	#main_navigation li > span.active, 
	#main_navigation li > span.active-trail {
	    background: none;
	    color: #d5045f;
	}

	#top-navigation > li.arealist > a {
		position: relative;
		padding-right: 28px;
	}

	#top-navigation > li.arealist > a:after,
	#main_navigation > li.has-children > a:after,
	#main_navigation > li.has-children > span:after {
	    content: "";
	    position: absolute;
	    top: 50%;
	    right: 15px;
	    margin-top: -2px;
	    z-index: 9;
	    border-style: none;
	    border-left: 3px solid transparent;
	    border-right: 3px solid transparent;
	    border-top: 4px solid #777;
	}
	
	#top-navigation > li.arealist > a:after {
		border-top: 4px solid #212B55;
	}

	#main_navigation > li.has-children:hover > a:after,
	#main_navigation > li.has-children:hover > span:after {
		border-top: 4px solid #d5045f;
	}

	#main_navigation > li > ul li:hover > ul {
	    box-shadow: 0 2px 2px rgba(0,0,0,0.2);
	    visibility: visible;
	    opacity: 1;
	}

	.toggle-sub-menu,
	.toggle-sub-menu + label {
		display: none;
	}

	#main_navigation li.has-children ul {
		left: 100px;
	}

	.ie9 #main_navigation li.has-children ul {
		left: 0;
	}

	#main_navigation li.has-children ul ul {
		top: 0;
	}

	#main_navigation li.has-children ul li ul {
		left: calc(100% + 100px);
	}

	.ie9 #main_navigation li.has-children ul li ul {
		left: 100%;
	}

	#main_navigation li.has-children.slide-left ul li ul {
		right: calc(-100% - 100px);
	}

	.ie9 #main_navigation li.has-children.slide-left ul li ul {
		left: -100%;
	}

	#top-navigation > li.arealist:hover > a,
	#main_navigation li.has-children ul li.has-children:hover {
		background: rgba(0,0,0,0.03);
		color: #212B55;
	}

	#main_navigation li.has-children ul li.has-children:hover > a {
		color: #d5045f;
	}

	#main_navigation > li:nth-last-of-type(1).has-children ul,
	#main_navigation > li:nth-last-of-type(2).has-children ul,
	#main_navigation > li:nth-last-of-type(1).moreplus ul {
		left: auto;
		right: -100%;
	}

	#main_navigation > li:nth-last-of-type(1).has-children ul ul,
	#main_navigation > li:nth-last-of-type(2).has-children ul ul,
	#main_navigation > li:nth-last-of-type(1).moreplus ul ul {
		left: auto;
		right: calc(100% - 100px);
	}
	
	#toggle-search {
		position: absolute;
		top: -10000px;
		left: -10000px;
	}

	#toggle-search + label {
		font-size: 0;
		display: block;
		width: 36px;
		height: 90px;
		line-height: 90px;
		float: right;
		position: relative;
		text-align: right;
		transition: all .2s;
	}
	
	#toggle-search + label:before {
		font-family: first-icons;
		content: "\e98a";
		font-size: 12px;
		font-weight: normal;
	}
	
	.shrink #toggle-search + label {
		line-height: 70px;
		height: 70px;
		position: relative;
		display: block;
	}
	
	#toggle-search + label:after {
		content: "";
		border-style: none;
		border-left: 5px solid transparent;
		border-right: 5px solid transparent;
		border-bottom: 6px solid #d5045f;
		position: absolute;
		bottom: 0;
		right: 2px;
		transition: all .4s;
		opacity: 0;
		transform: translate3d(0,0,0);
		-ms-transform: translate3d(0,0,0);
		-webkit-transform: translate3d(0,0,0);
	}
	
	#toggle-search:checked + label,
	#toggle-search + label:hover {
		color: #d5045f;
	}
	
	#toggle-search:checked + label:after,
	#toggle-search + label:hover:after {
		opacity: 1;
	}
	
	#toggle-search:checked ~ .site-search,
	#toggle-search + label:hover ~ .site-search {
		display: block;
		position: absolute;
		top: 100%;
		right: -12px;
		background: #fcfcfc;
		width: 280px;
		padding: 12px;
		border-top: 2px solid #d5045f;
		box-shadow: 0 2px 2px rgba(0,0,0,0.2);
	}
	
	.site-search input[type="text"] {
		width: 100%;
		padding-right: 24px;
	}
	
	.site-search .form-type-textfield {
		position: relative;
	}
	
	.site-search .form-type-textfield:before {
		font-family: first-icons;
		content: "\e98a";
		font-size: 12px;
		font-weight: normal;
		position: absolute;
		right: 8px;
		color: #aaa;
		top: 9px;
	}
	
	ul#areaList {
	    width: calc(100% - 60px);
	    left: 30px;
	    top: 100%;
	    border: none;
	    margin: 0;
	    padding: 0 20px;
	    background: #fcfcfc;
		height: auto;
		display: none;
   		opacity: 0;
		position: absolute;
		z-index: 1000;
	    column-count: 3;
	    -moz-column-count: 3;
	    -webkit-column-count: 3;
		column-gap: 20px;
		-moz-column-gap: 20px;
		-webkit-column-gap: 20px;
		transition: all .3s;
		transform: translate3d(0,0,0);
		-ms-transform: translate3d(0,0,0);
		-webkit-transform: translate3d(0,0,0);
	    box-shadow: 0 2px 2px rgba(0,0,0,0.3);
	    border-top: 1px solid rgba(0,0,0,0.2);
	}

	#top-navigation > li:nth-of-type(4):hover ul#areaList {
	    opacity: 1;
	    display: block;
	}

	#top-navigation > li:nth-of-type(4):hover a:after {
		border-top-color: #212B55;
	}

	header#header ul#areaList li {
		display: inline-block;
		overflow: hidden;
		-webkit-margin-before: 0;
	  	-webkit-margin-after: 0;
	  	vertical-align: top;
	  	width: 100%;
	}

	ul#areaList li:first-child {
		padding: 0;
	}

	ul#areaList li a {
	    font-size: 12px;
	    font-weight: 600;
	    color: #777;
	    padding: 12px 0;
	    display: block;
	    border-bottom: 1px solid rgba(0,0,0,0.1);
	}

	#pageWrapper li.user-location button.location_geo {
		font-size: 12px;
	    font-weight: 600;
	    color: #777;
	}

	#top-navigation > li > span {
		padding-right: 36px;
		transition: all .4s;
		transform: translate3d(0,0,0);
		-ms-transform: translate3d(0,0,0);
		-webkit-transform: translate3d(0,0,0);
	}

	#top-navigation > li > span:after {
	    content: "";
	    width: 0;
	    height: 0;
	    border-left: 3px solid transparent;
	    border-right: 3px solid transparent;
	    border-top: 4px solid #777;
	    position: absolute;
	    top: 18px;
	    right: 24px;
	}

	#top-navigation > li:hover > span:after {
		border-top: 4px solid #fafafa;
	}

}



/*	----------------------------------------------------------
	Min 768
	---------------------------------------------------------- */

@media only screen and (min-width:769px) {

	.ctrls ul {
		padding:0 0 14px 0;
		position: relative;
	}

	.ctrls li.reset {
		width: 100%;
		position: absolute;
		right: 0;
		bottom: 0;	
		text-align: right;
		font-size: 12px;
		line-height: 14px;	
	}

	.ctrls li:nth-of-type(3),
	.ctrls li:nth-of-type(4) {
		padding-right:0 !important;
	}

	html,
	.wf-loading {
		transition: opacity .2s;
		opacity: 1;
	}

	.wf-inactive,
	.wf-active {
		opacity: 1;
		background: #1b1b1b;
	}
	
	#ticket_disp td {
		vertical-align: middle;
		min-width: 200px;
	}
	
	form#c_form.extra_mile fieldset:nth-of-type(3) ul li:nth-of-type(1),
	form#c_form.extra_mile fieldset:nth-of-type(3) ul li:nth-of-type(3),
	form#c_form.extra_mile fieldset:nth-of-type(4) ul li:nth-of-type(1),
	form#c_form.extra_mile fieldset:nth-of-type(5) ul li:nth-of-type(1),
	form#c_form.extra_mile fieldset:nth-of-type(5) ul li:nth-of-type(3)	{
		margin-right: 20px;
	}
	
	body #pageWrapper form#c_form.extra_mile fieldset:nth-of-type(5) ul li:nth-of-type(2n) {
		margin-right: 0;
	}

}









/*	----------------------------------------------------------
	Min 1024 & Max 1280
	---------------------------------------------------------- */

@media only screen and (min-width:1024px) and (max-width:1280px) {

	#ticket_disp td {
		min-width: 30%;
	}

	table.departure-content .departure td.desc {
		width: auto;
	}

}



/*	----------------------------------------------------------
	Min 769 & Max 1024
	---------------------------------------------------------- */

@media only screen and (min-width:769px) and (max-width:1024px) {

	#content table td,
	#content table th{
		min-width: 0;
	}

	table.departure-content .departure td.desc {
		width: auto;
	}

	ul.transport-types.transport-mode li span {
		left: 0;
		width: 21px;
	}

	#content #transportation-mode label {
	    padding: 0 6px;
	}

	#content #transportation-mode label:before {
		padding-right: 6px;
		font-size: 16px;
	}

	#content #transportation-mode label:after {
		font-size: 14px;
	}

	#journey-type input[type=radio] + label {
		padding-left: 6px;
		padding-right: 6px;
	    font-size: 12px;
	}
	
	#pageWrapper #sidebar .spider-share button {
		width: 100%;
	}
	
	#pageWrapper #sidebar .spider-share button:first-child {
		margin: 0 0 20px 0;
	}

}


















/*	----------------------------------------------------------
	Max 960
	---------------------------------------------------------- */

@media only screen and (max-width:960px) {
	
	#toggle-search,
	#toggle-search + label {
		display: none;
	}

	/* General */

	body {
		background: #f8f8f8;
	}

	.user-menu ul {
		display: none;
	}

	#user-profile-form .fieldset-wrapper > .form-item {
		height: auto;
	}

	.front-map-container {
		height: 158%;
		top: -25%;
	}

	.pagename-contact-us .front-map {
	    display: none;
	}

	.pagename-contact-us .find-opco {
        margin-bottom: 24px;
        width: 100%;
	}
	
	#area_selector {
		position: relative;
		margin-top: 12px;
		width: 100%;
	}
	
	#area_selector label {
		width: 100%;
	}

	#upper-footer .promo-title {
		font-size: 14px;
		padding: 10px;
	}

	.opco-name { 
		font-size: 14px;
	}

	.ticket-start-date label {
		width: 100%;
	}

	.ticket-start-date div.dates {
		width: calc(100% - 105px);
		padding-left: calc(100% - 455px);
	}





    /* Site Header */

    body {
    	padding-top: 0;
    }

    header#header {
    	position: relative;
    	top: auto;
    	left: auto;
    	right: auto;
    	height: 70px;
    	margin-top: 40px;
    }

    header#header > .wrap {
    	height: 70px;
    	box-shadow: 0 2px 2px rgba(0,0,0,0.08);
    }

    .APL-logo {
	    float: left;
	    margin: 12px 0;
	    width: 88px;
	    height: 28px;
	}

	.APL-logo svg {
		width: 88px;
	    height: 28px;
	}

	.APL-logo.front-logo {
	    width: 145px;
	    height: 46px;
	}

	.front-logo.APL-logo svg {
		margin: 8px 0;
		width: 145px;
	    height: 30px;
	}

	.APL-logo + .opco-name {
		position: relative;
		left: auto;
		bottom: auto;
		clear: both;
		margin: 0 0 12px 0;
		top: -12px;
		font-size: 12.5px;
		line-height: 18px;
	}

	.breadcrumbs {
    	display: none;
    }





	/* Site Navigation */

	.top-nav {
		position: fixed;
		top: 0;
		left: 0;
		z-index: 1500;
	}

    #toggle-menu,
    .toggle-sub-menu {
    	display: none;
    }

    #toggle-menu + label {
    	position: absolute;
    	right: 0;
    	top: 0;
    	font-size: 0;
    	display: block;
    	line-height: 70px;
    	height: 70px;
    	width: 40px;
    	text-align: center;
    }

	#toggle-menu + label:before {
		font-family: first-icons;
		content: "\e5d2";
		font-size: 22px;
		font-weight: normal;
		color: #656565;
	}

	#toggle-menu:checked + label:before {
		content: "\e117";
	}
	
	#areaList,
	nav.nav {
		background: #fafafa;
		position: fixed;
		height: calc(100% - 110px);
		width: 100%;
		left: 0;
		right: 0;
		bottom: 0;
		z-index: -1;
		padding-top: 64px;
		transition: all .3s;
		overflow-y: scroll;
		overflow-x: hidden;
		-webkit-overflow-scrolling: touch;
		transform: translate3d(0,0,0) translateX(-100%);
		-ms-transform: translate3d(0,0,0) translateX(-100%);
		-webkit-transform: translate3d(0,0,0) translateX(-100%);
	}

	ul#areaList {
		padding: 0 12px;
	}
	
	ul#areaList:after {  
		content: "";
		display: table;
		clear: both;
	}

	#areaList::-webkit-scrollbar,
	nav.nav::-webkit-scrollbar {
		display: none;
		visibility: hidden;
		width: 0;
		height: 0;
	}

	li.arealist.open #areaList {
		transform: translate3d(0,0,0) translateX(0);
		-ms-transform: translate3d(0,0,0) translateX(0);
		-webkit-transform: translate3d(0,0,0) translateX(0);
	}

	header#header .site-search {
		display: block;
		position: absolute;
		top: 12px;
		left: 0;
		width: calc(100% - 24px);
		margin: 0 12px;
	}

	#toggle-menu:checked ~ nav {
		transform: translate3d(0,0,0) translateX(0);
		-ms-transform: translate3d(0,0,0) translateX(0);
		-webkit-transform: translate3d(0,0,0) translateX(0);
	}

	ul#main_navigation {
		width: 100%;
		padding: 0 12px;
		border-top: 1px solid rgba(0,0,0,0.1);
	}

	nav.nav ul#main_navigation a:after, 
	nav.nav ul#main_navigation span:after {
		display: none;
	}

	#areaList li,
	ul#main_navigation li {
		display: block;
		width: 100%;
		position: relative;
		border-bottom: 1px solid rgba(0,0,0,0.1);
	}

	#areaList li a,
	nav.nav ul#main_navigation a, 
	nav.nav ul#main_navigation li span {
		width: 100%;
		padding: 14px 0;
		line-height: 24px;
		display: block;
		position: relative;
	}
	
	nav.nav ul#main_navigation ul {
		background: rgba(0,0,0,0.02);
	}
	
	nav.nav ul#main_navigation ul li {
		width: calc(100% - 16px);
		margin-left: 16px;
	}

	nav.nav ul#main_navigation a.active {
		color: #d5045f;
		padding-left: 16px;
		border-left: 3px solid #d5045f;
	}
	
	nav.nav ul#main_navigation li.active-trail > a {
		border-left: 3px solid rgba(0,0,0,0.3);
		padding-left: 16px;
	}

	nav.nav ul#main_navigation ul li:first-child {
		border-top: 1px solid rgba(0,0,0,0.1);
	}

	nav.nav ul#main_navigation ul li:last-child {
		border-bottom: none;
	}
	
	nav.nav ul#main_navigation ul {
		overflow: visible;
	}
	
	nav.nav ul#main_navigation ul:before {
		content: "";
		background: rgba(0,0,0,0.1);
		height: 1px;
		width: 16px;
		position: absolute;
		top: 0;
		left: 0;
	}

	.toggle-sub-menu + label {
		position: absolute;
		right: 0;
		top: 0;
		height: 52px;
		font-size: 0;
		display: block;
		width: 52px;
		border-left: 1px solid rgba(0,0,0,0.1);
	}

	.toggle-sub-menu + label:before {
		content: "\f105";
		font-family: first-icons;
		font-size: 16px;
		font-weight: normal;
		line-height: 52px;
		width: 52px;
		text-align: center;
		display: block;
		transition: all .5s;
		transform: translate3d(0,0,0) rotate(90deg);
		-ms-transform: translate3d(0,0,0) rotate(90deg);
		-webkit-transform: translate3d(0,0,0) rotate(90deg);
	}
	
	ul#main_navigation li.has-children > a {
		padding-right: 54px;
	}

	.toggle-sub-menu:checked + label:before {
		transform: translate3d(0,0,0) rotate(270deg);
		-ms-transform: translate3d(0,0,0) rotate(270deg);
		-webkit-transform: translate3d(0,0,0) rotate(270deg);
	}

	.toggle-sub-menu ~ ul {
		max-height: 0;
		overflow: hidden;
		transition: all .2s;
		transform: translate3d(0,0,0) scaleY(0) translateY(-50%);
		-ms-transform: translate3d(0,0,0) scaleY(0) translateY(-50%);
		-webkit-transform: translate3d(0,0,0) scaleY(0) translateY(-50%);
	}

	.toggle-sub-menu:checked ~ ul {
		max-height: none;
		transform: translate3d(0,0,0) scaleY(1) translateY(0);
		-ms-transform: translate3d(0,0,0) scaleY(1) translateY(0);
		-webkit-transform: translate3d(0,0,0) scaleY(1) translateY(0);	
	}

	#dropdown > div {
		padding: 0;
	}

	.user-menu > li, #top-navigation > li {
		height: 40px;
	}

	.user-menu > li > a.user-profile-link,
	.user-menu > li:last-child > a.user-logout, 
	.user-menu .user-logout, #top-navigation > li:first-child a, 
	#top-navigation > ul > li:last-child a,
	#top-navigation > li.arealist > span {
	    font-size: 0;
	    line-height: 40px;
	    height: 40px;
	    padding: 0;
	    width: 40px;
	    text-align: center;
	}

	.user-menu > li > a.user-profile-link:before {
		font-family: first-icons;
		content: "\f007";
		font-weight: normal;
		font-size: 13px;
	}

	.user-menu > li > a, 
	#top-navigation > li > a, 
	#top-navigation > li > span {
	    display: block;
	    line-height: 40px;
	    height: 40px;
	    padding: 0 12px;
	    color: #212B55;
	    font-weight: 700;
	    font-size: 10px;
	    cursor: pointer;
	    text-transform: uppercase;
	    margin: 0;
	}

	.header-login.timeout > div,
	.header-login:hover > div {
		display: none;
	}
	
	ul#areaList {
		box-shadow: inset 1px 4px 9px -6px;
	}




	/* Twitter Ticker */

	#twitter-ticker .wrap {
		padding: 0 12px;
	}

	.ticker-prev, .ticker-next, .twitter-logo {
		display: none;
	}

	#twitter-ticker ul.tweet_list {
		width: 100%;
	}




	/* Columns */

	#main.opco.sidebar-right,
	#main.opco.sidebar-right #content {
	    width: 100%;
	    padding: 0!Important;
	}

	#main.opco.sidebar-right, 
	#main.opco.sidebar-right #content {
		margin: 0;
	}

	#main.opco.sidebar-right #content .journey-planner {
		padding: 0 20px;
		margin: 30px 0 0 0;
	}

	#main.opco.sidebar-right #content + #sidebar {
		width: 100%;
		padding: 0 20px;
	}

	.wrap,
	.container, 
	#main {
		max-width: 1400px;
		margin: 0 auto;
		padding: 0 20px;
		position: relative;
	}

	#main {
		margin: 20px 0;
	}

	body.front .col-3.front-map {
		display: none;
	}

	body.front .col-3.left,
	body.front .col-3 {
		width: calc(50% - 10px);
		padding: 0;
		margin: 0;
		background: none;
	}
	
	body.front .col-3.left {
		margin-bottom: 20px;
	}

	body.front .col-3:first-child {
		margin-right: 20px;
	}
	
	body.front .row-bottom {
		margin-top: 0;
	}

	#main.opco.sidebar-right #content + #sidebar {
		margin-top: 30px;	
	}

		/* Order History */

	#eticket_filter > div {
		width: calc(50% - 10px);
	}

	#eticket_filter > div:nth-child(2) {
		margin-right: 0;
	}

	.order-user-details {
		width: 100%;
		margin-right: 0;
	}

}




/*	----------------------------------------------------------
	Min 540 & Max 959
	---------------------------------------------------------- */
 
@media only screen and (min-width:468px) and (max-width:959px) {

	.opco #sidebar > div.next-bus-mini,
	.opco #sidebar > div.timetable-search-mini {
		width: calc(50% - 10px);
		float: left;
		position: relative;
	}

	.opco #sidebar > div.next-bus-mini {
		margin-right: 20px;
	}

	body.front .row-bottom .col-3,
	.col-3, 
	.col-3:last-child, 
	#upper-footer .col-3, 
	#upper-footer .col-3:last-child {
    	margin: 0 20px 20px 0;
    	width: calc(50% - 10px);
    }

	body.front .row-bottom .col-3:nth-of-type(2n),
    .col-3:nth-of-type(2n), 
	#upper-footer .col-3:nth-of-type(2n) {
		margin-right: 0;
	}

}








/*	----------------------------------------------------------
	Max 768
	---------------------------------------------------------- */

@media only screen and (max-width:768px) {

	.wrap, 
	.container, 
	#main {
		padding: 0 12px;
	}
	
	#main.sidebar-left #content {
		margin-bottom: 0;
	}

	.shrink .top-nav {
		background: rgba(255,255,255,0.85);
	}

	div#cookieBanner {
		padding: 12px;
	}

	div#cookieBanner .container {
		padding-right: 32px;
	}

	div#cookieBanner a {
		float: none;
	}

	body div#cookieBanner button {
		right: 0;
	}

	.wrap {
		padding: 0 12px;
	}

	input[type="password"],
	input[type="text"],
	input[type="email"],
	textarea,
	select,
	button,
	.btn,
	.fieldsubmit, 
	input[type=submit], 
	.btn-p {
	    font-size: 14px;
	}

	.ctrls li.reset a {
		margin-top: 4px;
	}

	body.unscroll-y {
		overflow-y: hidden;
	}

	h1 {
		font-size: 22px;
		line-height: 32px;
		padding-bottom: 16px!important;
	}

	h2, 
	h2 a {
		font-size: 18px;
	}
	
	#content ul li:before {
		top: 0;
	}

	#sidebar, 
	#content,
	#main.sidebar-left #content, 
	#main.sidebar-right #content,
	#main, 
	.container,
	.col-3, 
	#journey-planner #journey-from,
	#journey-planner #journey-to,
	#journey-from, 
	#journey-to, 
	span#spinner-cont,
	#journey-type, 
	#transportation-mode, 
	.btn, 
	.btn-dd, 
	input[type=submit],
	#date-time input[type=text], 
	ul#external_navigation li,
	#content ul.transport-types.transport-mode {
		width: 100%;
	}
	
	.page-taxonomy #journey-from {
		margin-bottom: 20px;
	}

	.page-node #content {
		margin-top: 0;
	}

	.fg-home-slider-wrap {
		position: relative;
		height: 0;
		width: 100%;
		padding-bottom: 45%;
	}

	.slide-content {
	    position: absolute;
	    left: 12px;
	    font-size: 18px;
	    max-width: 100%;
	    width: calc(100% - 24px);
	    text-align: center;
	    color: #fff;
	    font-weight: 700;
	    bottom: 12px;
	    padding: 12px 12px 16px 12px;
	    background: rgba(213, 4, 95, 0.7);
	}

	input[type="password"], 
	input[type="text"], 
	input[type="email"], 
	textarea {
		font-size: 14px;
		
	}

	#ticket_disp table tr {
		padding: 10px 0;
		display: block;
	}

	#ticket_disp table {
		border-top: 1px solid #aaa;
		border-bottom: 1px solid #aaa;
	}

	#ticket_disp table tr:last-child {
		border: 0;
	}

	#ticket_disp table tr td {
		display: block;
		text-align: left;
		padding: 2px 0;
		font-weight: 600;
	}

	#ticket_disp table {
		border: 1px solid rgba(0,0,0,0.2);
		width: 100%;
	}

	#ticket_disp table tr:last-child {
		border:0;
	}

	#ticket_disp table tr td {
		display: block;
		text-align: left;
		font-weight: 600;
		padding: 10px;
	}
	
	#ticket_disp table tr td:first-child,
	#ticket_disp table tr td:nth-of-type(2) {
		width: 50%;
		float: left;
		position: relative;
		overflow: hidden;
		max-width: 50%; 
		padding: 0 10px;
		text-align: center;
	}
	
	#ticket_disp table tr td.full-width {
		padding: 5px;
		width: 100%;
		overflow: hidden;
		text-align: center;
	}
	
	#ticket_disp table thead {
		display: none;
	}
	
	#earlier.btn {
		margin-bottom: 10px;
	}

	.pagename-timetables #content table tr {
	  border-bottom: 1px solid #ddd;
	}

	.pagename-timetables #content table tr:last-child {
	  border-bottom: 1px solid #ccc;
	}

	.row-bottom, #footer{
		padding: 16px 0;
	}


	.credits-left, .credits-right {
		width: 100%;
	}

	ul#external_navigation li {
		margin-bottom: 0;
	}
	
	#upper-footer,
	.front .row-bottom {
		padding: 20px 0;
	}
	
	.front .row-bottom {
		padding: 20px 0;
	}

	body.front .row-bottom .col-3 {
		width: 100%;
		margin: 0 0 20px 0;
		padding: 0;
	}
	
	body.front .news-content h3 {
		margin-bottom: 6px;
	}
	
	body.front .news-content {
  		float: left;
  		width: calc(100% - 88px); 
  	}

	#header {	
		box-shadow: none;
	}	

	#content h1 {
		margin: 0 0 24px 0;
	}

	#lower-footer {
		padding: 0 12px;
	}

	.credits-right, .credits-left {
		margin: 15px 0;
	}

	.row-bottom {
		margin: 0;
	}

	.site-search {
		display: none;
		width: calc(60% - 60px);
		margin: 5px 30px;
	}

	#content {
		background: 0;
		border: 0;
		padding: 0;
	}

	#sidebar {
		float: right;
		padding: 20px 0;
		margin: 0;
	}

	ul#sidebar_navigation li a.active:after, 
	ul#sidebar_navigation li.active-trail a:after {
		content: none;
	}

	header .site-search input[type=text] {
		margin: 0;
		width: 100%;
	}
	
	/* More Menu */

	.inner-open li.arealist,
	body .moreplus ul {
		display: none;
	}
	
	.moreplus:after {
		border-left-color: #d5045f!important;
	}
	
	.moreplus span {
		cursor: pointer;
		height: 44px;
	}

	.pass-form label,
	.pass-form input[type="text"] {
		width: 100%!important;
		margin: 0;
	}

	#ukbus_nav_tabs {
		display: none;
	}



	/*	
	----------------------------------------------------------
	News and service updates
	---------------------------------------------------------- 
	*/

	.news-section {
		margin:0 0 30px 0;
	}

	#tweets ul.tweet_list li {
		width:100%;
		margin: 0 0 10px 0;
		padding:10px;
	}

	.tweet-section #tweets ul.tweet_list li span.tweet_text {
		display:block;
		font-size: 14px;
		line-height: 22px;
	}

	.tweet-section #tweets ul.tweet_list li span.tweet_text a {
		font-size: 14px;
		line-height: 22px;
	}

	.tweet-section #tweets ul.tweet_list li span.tweet_time {
		display:inline-block;
		font-size: 10px;
  		float: right;
	}
	

	



	/*	
	----------------------------------------------------------
	Opco slider
	---------------------------------------------------------- 
	*/

	.opco .slide-content {
		position: absolute;
		background: #212b55;
		margin-left: 0 ;
		font-size: 16px;
		color: #fff;
		font-weight: 700;
		padding: 10px;
		line-height: 24px;
	}

	.opco .flex-control-nav {
		width: auto;
	}

	.flex-control-nav {
	  right: 20px;
	  top: 20px;
	  bottom: auto;
	}

	body.front .col-3.left {
		background: 0;
		border: 0;
	}






	/*	
	----------------------------------------------------------
	Journey planner
	---------------------------------------------------------- 
	*/

	#journey-results {
	  margin: 20px 0;
	}

	span#spinner-cont {
		margin: 10px 0 8px 0;
		top: 0;
		height:35px;
		display: block;
		overflow: hidden;
		text-align: center;
		width: 100%;
	}

	.opco span#spinner-cont {
		width: 100%;	
	}

	#set-my-location-from, 
	#set-my-location-to {
		bottom: 0;
	}
	
	#set-my-location-from,
	#set-my-location-to,
	#set-my-location-from:before,
	#set-my-location-to:before	{
		height: 41px;
		width: 41px;
		line-height: 41px;
	}

	#date-time select {
		margin-left: 0;
	}

	#date-time select {
		width: 48%;
		margin: 10px 4% 0 0;
	}

	#date-time select#minute {
		margin-right: 0;
	}

	#pageWrapper .transportation-modes {
		display: none;
	}

	.route-summary-inner {
		width: 100%;
		padding: 10px 10px 6px 10px;
	}

	.first-services > h3,
	.all-services > h3 {
		text-align: center;
	}

	ul.transport-types.transport-mode {
		display:block;
		padding: 10px 0 5px 0;
		text-align: center;
		width: 100%;
	}
	
	ul.transport-types.transport-mode li.transport-mode {
		margin: 5px 0;
	}
	
	ul.transport-types.transport-mode li.transport-mode:last-child:after {
		content: "";
		display: none;
	}

	.route.headers {
		padding: 10px 20px;
		background: #e7e7e7;
	  	border: 1px solid #dcdcdc;
	}

	.depart, 
	.arrive, 
	.duration {
		width: 33.3333333333%;
		padding: 0;
		text-align: center;
	}

	#pageWrapper .legs, 
	#pageWrapper .total-legs {
		display: none;
	}

	.leg-line {
	    width: 24px;
	}

	#content ul.route-details li ul {
		width: calc(100% - 36px);
	}

	#content ul.route-details li {
		padding: 5px 0;
	}

	ul.route-details li ul li:before {
		display: none;
	}

	ul.route-details li ul li {
		line-height: 18px;
		padding: 5px 0;
		border: 0;
	}

	ul.route-details li ul li span {
		font-size: 12px;
	}

	ul.route-details li ul li span.approx-time {
		font-size: 12px;
	}

	ul.route-details li ul li span.time-at span {
		display: none;
	}

	.in-app #content {
		padding: 12px;
	}





	/*	
	----------------------------------------------------------
	Timetables
	---------------------------------------------------------- 
	*/

	#timetable_form .col-3{
		margin: 0;
		width: 100%;
	}

	form#timetable_form .time-container .time-separator {
  		padding-top: 24px;
  	}

  	.time-container {
  		left: auto;
  		margin-left: 0;
  		text-align: center;
  	}

  	.time-container select,
  	.time-container div {
  		float: none;
  		display: inline-block;
  	}

  	.time-container label {
		width: 100%;
		left: auto;
		margin-left: 0;
		text-align: center;
	}






	/*	
	----------------------------------------------------------
	Tickets
	---------------------------------------------------------- 
	*/

	.ctrls li {
		width: 100%;
		list-style:none;
		padding:0;
	}

	#ticket_disp h2 {
		font-size:16px;
		color:#252525;
	}

	#ticket_disp h3 {
		font-size:14px;
	}




	/*	
	----------------------------------------------------------
	Route maps
	---------------------------------------------------------- 
	*/

	.file-types {
		width:15%;
	}

	.network-map-title {
		width:80%;
	}




	/*	
	----------------------------------------------------------
	Cookie banner
	---------------------------------------------------------- 
	*/

	

	.careers-link:before,
	.careers-link:after {
		display: none;
	}






	/*	
	----------------------------------------------------------
	Next bus
	---------------------------------------------------------- 
	*/

	table.departure-content .departure td .icon {
		margin: 0;
		max-width: 99%;
		word-wrap: break-word;
	}

	#content table.departure-content tr.departure td.num {
		width:100%;
		text-align: left;
		padding: 8px 50px 0 0;
	}

	#content table.departure-content tr.departure td.first {
		width: 10%;
		position: absolute;
		right: 0;
		padding: 0;
		top: 10px;
		text-align: right;
	}

	#content table.departure-content tr.departure td.desc {
		width:100%;
		text-align: left;
		padding: 0;
	}

	#content table.departure-content tr.departure td.time {
		width: 100%;
		text-align: left;
		padding: 4px 0 4px 0;
		font-weight: 600;
		position: relative;
		top: auto;
	}

	#content table.departure-content tr.departure td.route{
		display: none;
	}
	
	#area_selector {
		width: 100%;
		max-width: 1000px;
	}
	
	#area_selector #area_filter {
		width: 100%;
		margin-bottom: 10px;
	}

	





	/*	
	----------------------------------------------------------
	Contact us
	---------------------------------------------------------- 
	*/

	form#c_form ul li {
		height:auto;
		width:100% !important;
	}

	form#c_form h2 {
		padding:10px 0;
		margin-bottom: 0;
	}

	form#c_form ul li.contacting-you label {
		width: calc(99% - 15%);
  		margin-left: 2%;
	}
	
	.network-map {
		background: #fff;
	}

	ul#ukbus_nav_tabs {
		margin-left:20px;
		margin-top:10px;
		width:100%;
	}






	/*	
	----------------------------------------------------------
	Scrolling nav sub menu
	---------------------------------------------------------- 
	*/
	
	.appended-menu {
		width: 100%;
		float: left;
		margin: 0;
		padding: 0;
		top: 0;
		left: 0;
		border: none;
		position: absolute;
		max-height: none;
		z-index: 1100;
		background: rgba(42, 42, 42, 0.96);
		white-space: nowrap;
		display: inline-block;
		overflow-y: auto;
		-webkit-overflow-scrolling: touch;
	}

	body #pageWrapper .appended-menu ul {
		margin: 0;
		display: block;
		position: relative;
		max-height: none;
		height: auto;
	    width:100%;
	    top: auto;
	    background: none;
	    border: none;
	    padding: 0;
	    margin: 0;
	    opacity: 1;
	}
	
	body #pageWrapper .appended-menu li {
		list-style-type: none;
		position: relative;
		padding: 0 12px;
	}
	
	body #pageWrapper .appended-menu li a {
		display: block;
		padding: 12px 0;
		width: 100%;
		border-bottom: 1px solid rgba(255,255,255,0.1);
		font-size: 14px;
		font-weight: 600;
		color: #fff;		
	}
	
	body #pageWrapper .appended-menu li a:after {
		content: "";
		border-top: 4px solid transparent;
		border-bottom: 4px solid transparent;
		border-left: 4px solid rgba(255,255,255,0.4);
		display: block;
		position: absolute;
		right: 15px;
		top: 19px;
	}

	body #pageWrapper .appended-menu ul > li:first-child {
		background: #252525;
	}

	.destroy-menu {
		background: none;
		color: #e0e0e0;
		width: 100%;
		padding: 8px 0;
		height: auto;
		line-height: 24px;
		text-align: left;
	}

	.destroy-menu:after {
		content: "\ea11";
		font-family:first-icons;
		border: none;
		font-weight: normal;
		float: right;
	}

	.destroy-menu:focus {
		outline: none;
	}





	#content .mobile-table th {
		width: 100%;
		display: block;
		border-left: 1px solid rgba(0,0,0,0.1);
		border-right: 1px solid rgba(0,0,0,0.1);
	}

	#content .mobile-table td {
		width: 100%!important;
		text-align: right!Important;
		display: block;
		border-bottom: 1px solid rgba(0,0,0,0.1);
		border-left: 1px solid rgba(0,0,0,0.1);
		border-right: 1px solid rgba(0,0,0,0.1);
	}

	.mobile-table td:before {
		content: attr(data-label);
		float: left!important;
		font-weight: 800;
		font-size: 12px;
		text-align: left!important;
		color: #212B55 !important;
	}

	#content .mobile-table tr {
		border: none!important;
		border-top: 1px solid rgba(0,0,0,0.1)!important;
		border-bottom: 12px solid #f4f4f4!important;
		display: block;
	}

	.mobile-table td span,
	.mobile-table td img {
		display: inline!important;
		float: none!important;
	}

	#options {
	    border: 1px dashed rgba(0,0,0,0.2);
	    border-top: 0;
	    padding: 10px;
	    margin: -20px 0 20px 0;
	    overflow: hidden;
	}

	#journey-type input[type=radio] + label {
	    width: 50%!important;
	    font-size: 12px;
	}

	#journey-type {
		margin-bottom: 16px;
	    background: none;
	    border: 1px solid rgba(0,0,0,0.1);
	}

	#journey-type h4 {
		display: block;
		background: #f6f6f6;
		border: 2px solid #f6f6f6;
		box-sizing: content-box;
		width: calc(100% + 2px);
		margin: -1px 0 17px -1px;
	}




	/* User Forms */

	body #content #user-register-form .description,
	body #content #user-register-form select,
	body #content #user-register-form input[type="text"],
	body #content #user-register-form input[type="password"],
	body #content #user-register-form label,
	#user-profile-form .description,
	#user-profile-form select, 
	#user-profile-form input[type="text"], 
	#user-profile-form input[type="password"],
	#user-profile-form label {
		width: 100%;
	}

	#user-register-form label,
	#user-profile-form label {
		line-height: 24px;
	}

	#user-register-form .fieldset-wrapper > .form-item,
	#user-profile-form .fieldset-wrapper > .form-item {
		height: auto;
		border: none;
	}

	#user-register-form input[type="text"].postcode,
	#user-profile-form input[type="text"].postcode {
		width: calc(100% - 105px)!important;
	}

	#user-register-form .postcode_check,
	#user-profile-form .postcode_check {
		top: 24px;
	}

	.form-type-password-confirm div.password-confirm, 
	.form-type-password-confirm .password-strength {
		left: auto;
		width: 100%;
	}

	.form-type-password-confirm .password-strength {
		bottom: 54px;
	}

	.form-type-password-confirm div.password-confirm {
		bottom: 0;
	}

	#user-register-form > div
	#user-profile-form > div {
		padding-left: 12px;
		padding-right: 12px;
	}

	#user-register-form .fieldset-wrapper .form-type-password-confirm,
	#user-profile-form .fieldset-wrapper .form-type-password-confirm {
		padding-bottom: 108px;
	}

	#user-register-form .form-item-mail .description, 
	#user-register-form .password-suggestions,
	#user-register-form .fieldset-wrapper > p,
	#user-profile-form .form-item-mail .description, 
	#user-profile-form .password-suggestions,
	#user-profile-form .fieldset-wrapper > p {
		font-size: 12px;
		font-weight: 400;
		padding: 6px 8px;
	}

	.logged-in #user-profile-form {
		padding-top: 12px!important;
	}

	#user-profile-form #edit-status,
	#user-profile-form #edit-roles {
		padding-left: 0;
	}
	
	.field-name-field-opco + #edit-actions input[type="submit"]:last-child {
		margin-top: 20px;
	}
	
	#user-profile-form #edit-status .form-type-radio,
	#user-profile-form #edit-roles .form-type-checkbox {
		width: 100%;
		margin: 0 0 12px 0;
	}
	
	#user-profile-form #edit-account .form-type-password-confirm {
		padding-bottom: 108px;
	}
	
	.form-item-timezone {
		padding-top: 20px;
	}
	
	#cart-buttons a:first-of-type {
		margin-bottom: 12px;
	}

	.or span {
		background: #fcfcfc;
	}

	.modal-ctrls a {
		width: auto!important;
	}

	body form fieldset.minimal-form {
		width: 100%;
		margin: 0;
	}

	#main.opco.sidebar-right #content .journey-planner {
		padding: 0 12px;
		margin: 0 0 20px 0;
	}

	#main.opco.sidebar-right #content + #sidebar {
		width: 100%;
		padding: 0 12px;
	}

	#top-navigation > li.menu-464 {
		display: none;
	}

	#top-navigation > li > a {
		font-size: 0;
	}

	#top-navigation > li.arealist > a:after {
		content: "\e569";
		font-family: first-icons;
		font-weight: normal;
		border: none;
	    width: auto;
	    height: auto;
	    position: relative;
	    top: auto;
	    right: auto;
	    font-size: 13px;
	    top: 1px;
	}

	#top-navigation > li.arealist.open > a:after {
		content: "\e117";
		top: auto;
	}
	
	
	/* Sidebar Widgets */
	
	#sidebar > div, 
	#sidebar > ul,
	#sidebar #favourites,
	#sidebar .spider-share,
	#sidebar > div#timetable_search	{
		padding: 12px;
	}
	
	#sidebar > ul#sidebar_navigation {
		padding: 0;
	}
	
	#sidebar .journey-planner input[type="submit"] {
		margin-bottom: 0;
	}
	
	#pageWrapper #sidebar .spider-share button {
		width: calc(50% - 6px);
	}
	
	#pageWrapper #sidebar .spider-share button:first-child {
		margin-right: 12px;
	}
	
	/* Micro Menu */
	
	.micro-menu input + label {
		display: block;
	}

	.micro-menu {
		width: 100%;
	}

	.micro-menu > ul {
		display: none;
	}
	
	.micro-menu input:checked + label + ul {
		display: block;
	}
	
	.micro-menu > ul > li {
		border-right: none;
		border-bottom: 2px solid rgba(0,0,0,0.1);
	}

	.micro-menu > ul > li,
	.micro-menu > ul > li > a	{
		width: 100%;
		text-align: left;
	}
		
	#main.opco.sidebar-right #content .journey-planner {
		margin-bottom: 0;
	}

	#eticket_filter > div {
		width: 100%;
		margin: 0 0 8px 0;
	}

	#eticket_filter > div:nth-child(4) input[type=submit], 
	#eticket_filter > div:nth-child(4) a.btn {
		margin: 8px 0 20px 0;
	}

	#top-navigation > ul > li:last-child a {
		width: 44px;
		font-size: 0;
		padding: 0;
	}

	#top-navigation > li.menu-466 a:before {
		font-family: 'first-icons';
		content: "\e158";
		font-size: 14px;
		margin-top: -1px;
		display: inline-block;
	}

	
}

















/*	----------------------------------------------------------
	Max 600
	---------------------------------------------------------- */

@media only screen and (max-width:600px) {

	.front .row-top {
		padding: 0;
	}

	body.front .col-3.left,
	body.front .col-3 {
		width: 100%;
	}

	.corporate-link {
		width: 100%;
		margin: 0 0 16px 0;
		padding-top: 30%;
		font-size:14px;
	}

	.float-img-left {
		max-width: 60px;
	}

	.float-img-left img {
		width: 100%;
		width: auto;
	}
	
	.view-content > div .nm-call {
		width: 100%;
		margin: 0 0 20px 0!important;
	}

	#user-profile-form .fieldset-title {
		width: 100%;
	}

	#user-profile-form .fieldset-title:before {
		display: none;
	}


	#user-profile-form fieldset:nth-of-type(1) .fieldset-title {
		top: -146px;
	}

	#user-profile-form fieldset:nth-of-type(2) .fieldset-title {
		left: 0;
		border-left: none;
		top: -96px;
	}

	#user-profile-form fieldset:nth-of-type(3) .fieldset-title {
		left: 0;
		border-left: none;
		top: -46px;
	}

	#user-profile-form > div {
		margin: 146px 0 0 0
	}

}





@media screen only and(max-width: 539px) {

	.wrap, .container, #main {
	    max-width: 1400px;
	    margin: 0 auto;
	    padding: 0 12px;
	    position: relative;
	}

	.col-3, 
	.col-3:last-child,
	#upper-footer .col-3,
	#upper-footer .col-3:last-child,
	.front .row-bottom .col-3,
	.front .row-bottom .col-3:last-child {
		margin: 0 0 20px 0;
  		width: 100%;
	}

}





/*	----------------------------------------------------------
	Max 468
	---------------------------------------------------------- */

@media only screen and (max-width:468px) {

	.ctrls select {
  		margin: 8px 0;
	}

	#pp-map {
	    height: 270px;
	}

	/* Ticket Pages */

	#ticket_disp table {
		border: none;
	}

	#ticket_disp table tr {
		padding: 0;
		border: none;
		margin-bottom: 12px;
		background: rgba(0,0,0,0.05);
	}

	#ticket_disp table tr td:first-child {
		width: 66.66666666666667%;
		border-right: 2px solid #fcfcfc;
		text-align: left;
		max-width: none;
		padding: 10px;
	}

	#ticket_disp table tr td:nth-of-type(2) {
		width: 33.33333333333333%;
		padding: 10px;
	}

	#ticket_disp table tr td.full-width {
		padding: 0;
	}

	#ticket_disp td [class^="custom-icon-"], 
	#ticket_disp td [class*=" custom-icon-"] {
		width: 16.66666666666667%;
		display: block;
		float: left;
		position: relative;
		border: 2px solid #fcfcfc;
		border-left: none;
		border-bottom: none;
		height: 0;
		padding-bottom: 16.66666666666667%;
	}

	#ticket_disp td [class^="custom-icon-"]:before, 
	#ticket_disp td [class*=" custom-icon-"]:before {
		position: absolute;
		top: 50%;
		left: 50%;
		margin: -14px 0 0 -14px;
		font-size: 22px;
		color: rgba(0,0,0,0.1);
	}

	#ticket_disp td [class^="custom-icon-"]:last-child, 
	#ticket_disp td [class*=" custom-icon-"]:last-child {
		border-right: 0;
	}
	
	.col-3, 
	.col-3:last-child, 
	#upper-footer .col-3, 
	#upper-footer .col-3:last-child, 
	.front .row-bottom .col-3, 
	.front .row-bottom .col-3:last-child {
    	margin: 0 0 20px 0;
    	width: 100%;
    }

    .col-3:last-child, 
	#upper-footer .col-3:last-child,
	.front .row-bottom .col-3:last-child {
		margin-bottom: 0;
	}
	
	#main.opco.sidebar-right #content + #sidebar {
		margin-top: 0;
	}
	
		
	#main.opco.sidebar-right #content .journey-planner {
		margin-bottom: 20px;
	}


}










/*	----------------------------------------------------------
	Min 768 & Max 960
	---------------------------------------------------------- */

@media only screen and (min-width: 768px) and (max-width: 960px){
	
	#sidebar .spider-share > a {
		width:80px;
	}

	#sidebar .spider-share .share-action {
		display:none;
	}

}










/*	----------------------------------------------------------
	Print Styles
	---------------------------------------------------------- */

@media print {
	
	body {
		padding-top: 0!important;
	}

	#header,
	#footer,
	.breadcrumbs,
	#sidebar,
	#toolbar {
	display: none!important;
	}

	#content {
		width: 100%!Important;
		padding: 0!important;
	}

    * { 
        background: transparent !important; 
        color: black !important; 
        box-shadow:none !important; 
        text-shadow: none !important; 
        filter:none !important; 
        -ms-filter: none !important; 
    }

    a, 
    a:visited { 
        text-decoration: underline; 
    }

    a[href]:after { 
        content: " (" attr(href) ")"; 
    }

    abbr[title]:after { 
        content: " (" attr(title) ")"; 
    }

    .ir a:after, 
    a[href^="javascript:"]:after, 
    a[href^="#"]:after { 
        content: ""; 
    } 

    pre, blockquote { 
        border: 1px solid #999; 
        page-break-inside: avoid; 
    }

    thead { 
        display: table-header-group; 
    }

    tr, img { 
        page-break-inside: avoid; 
    }

    img { 
        max-width: 100% !important; 
    }

    @page { 
        margin: 0.5cm; 
    }

    p, h2, h3 { 
        orphans: 3; 
        widows: 3; 
    }

    h2, h3 { 
        page-break-after: avoid; 
    }

}