@import url('https://fonts.googleapis.com/css?family=VT323&display=swap');

@font-face {
font-family: 'MaryAnn';
src: url("fonts/MaryAnnBETA.woff2") format("woff2"), url("../fonts/MaryAnnBETA.woff") format("woff");
font-weight: normal;
font-style: normal
}

/* Core body styles */
.sh-content {
	font-family: Arial, sans-serif;
	font-size: 16px;
}
.sh-content h1, .sh-content h2, .sh-content h3, .sh-content h4, .sh-content h5, .sh-content h6, .sh-content ul, .sh-content li, .sh-content a {
	font-family: "MaryAnn", "Mary Ann BETA", arial, sans-serif;
}
.sh-content a { font-family: Arial, sans-serif; }
.sh-content .sh-receipt h2, .sh-content .sh-receipt h3, .sh-content .sh-receipt h4, .sh-content .sh-receipt h5, .sh-content .sh-receipt h6, .sh-content .sh-receipt ul, .sh-content .sh-receipt li, .sh-content .sh-receipt p, .sh-content .sh-receipt a {
	font-family: "VT323", monospace;
}

.sh-content sup { vertical-align: super; }

.sh-content p, .moneyMatters .contentContainer .sh-content p { margin: 0 0 12px 0; line-height: 24px; padding-right: 0; }
.sh-content label { width: auto; float: none; padding: 0; }
.sh-content a.sh-standard { color: #000; text-decoration: underline; }
.sh-content a.sh-standard:hover { text-decoration: none; }
.sh-content blockquote {
	color: #F06C00;
	text-align: center;
	font-size: 34px;
	margin: 0 0 22px 0 !important;
	width: 100% !important;
	background-image: none;
	float: none !important;
	padding: 0 !important;
	font-family: "MaryAnn", "Mary Ann BETA", arial, sans-serif;
}
.sh-content p.sh-attribute {
	color: #F06C00 !important;
	text-align: center;
	font-size: 1em !important;
	font-family: "MaryAnn", "Mary Ann BETA", arial, sans-serif !important;
}
p.sh-footnote, .moneyMatters .contentContainer .article p.sh-footnote { font-size: 14px; font-family: arial, sans-serif; color: #000; }

.sh-content .sh-spacer { overflow: auto; clear: both; font-family: arial, sans-serif !important; line-height: 24px; }
.sh-content .sh-spacer p { font-family: arial, sans-serif !important; color: #000 !important; line-height: 24px; }
.sh-content .sh-spacer a { color: #000; font-weight: normal; }
.sh-content .sh-spacer a:hover { text-decoration: none; }

.sh-content h3.sh-main, .sh-content h2 {
	color: #F06C00;
	font-size: 40px;
	font-weight: normal;
	margin: 42px 0 0 0;
}
.sh-content h3.sh-main, .sh-content .sh-end-copy h2 {
	font-size: 30px;
	margin: 0 0 32px 0;
}
.sh-content .sh-end-copy h2 {
	margin-bottom: 12px;
}

/* The main train ticket board and form */
.sh-train-board-wrapper {
	overflow: auto;
	background: #f5ae1b url('img/train-station.gif') right center / auto 100% no-repeat;
	/* background: #f5ae1b url('img/train-station.gif') right center / auto 100% no-repeat; */
	border-radius: 25px;
}
.sh-train-board-wrapper .sh-train-board {
	background: #000;
	color: #fff;
	border-radius: 25px;
	margin: 0;
	box-sizing: border-box;
	padding: 25px;
	min-height: 650px;
	width: 482px;
	font-family: "Helvetica Neue", arial, sans-serif;
}
.sh-train-board-wrapper .sh-train-board h3 {
	margin: 0 0 12px 0;
	font-weight: 400;
	font-size: 44px;
	font-family: Arial, sans-serif; color: #fff;
}
.sh-train-board-wrapper .sh-train-board p span, .sh-train-board-wrapper .sh-train-board .sh-pseudo-span {
	color: #fff100;
	font-family: "VT323", monospace;
	font-size: 48px;
	display: block;
	padding: 4px 12px;
	background: #404041;
	margin-bottom: 16px;
	font-weight: normal;
	overflow: hidden;
	position: relative;
	min-height: 56px;
	box-sizing: border-box;
	line-height: normal;
}
.sh-train-board-wrapper .sh-train-board .sh-pseudo-span.sh-lower { min-height: 50px; }
.sh-train-board-wrapper .sh-train-board p span > span {
	position: absolute;
	left: 100%;
	width: 450px;
	overflow-x: hidden;
	padding: 0;
	margin: 0;
}
.sh-train-board-wrapper .sh-train-board .sh-pseudo-span p {
	margin: 3px 0;
	font-size: 36px;
}
.sh-train-board-wrapper .sh-train-board .sh-pseudo-span p.paging {
	display: none;
	line-height: normal;
	color: #fff100;
	font: 36px "VT323", monospace;
}
.sh-train-board-wrapper .sh-train-board .sh-input {
	margin-top: 42px;
}
.sh-train-board-wrapper .sh-train-board .sh-input label {
	font-size: 30px;
	display: block;
	margin-bottom: 12px;
	font-family: "Helvetica Neue", arial, sans-serif;
	font-weight: normal;
}
.sh-train-board-wrapper .sh-train-board .sh-input input {
	font-size: 18px;
	font-family: "Helvetica Neue", arial, sans-serif;
	display: block;
	width: 100%;
	padding: 10px 12px 10px 32px;
	outline: none;
	border: none;
	background: #fff url('img/pound-sign.svg') left 12px center / 12px auto no-repeat;
	box-sizing: border-box;
	transition: border 0.25s ease;
	border: 1px solid #fff;
	box-sizing: border-box;
}
.sh-train-board-wrapper .sh-train-board .sh-input input:hover { border: 1px solid #f7af19; }
.sh-train-board-wrapper .sh-train-board .sh-input.sh-error input {
	border: 1px solid #ed3325; border-left: 3px solid #ed3325;
	/* background: url('img/pound-sign.svg') left 12px center / 12px auto no-repeat, url('img/exclaim.svg') right 12px center / 22px auto no-repeat; */
	background: url('img/pound-sign.svg') left 12px center / 12px auto no-repeat, url('img/exclaim.svg') right 12px center / 22px auto no-repeat;
	background-color: #fff;
}
.sh-train-board-wrapper .sh-train-board .sh-input #shError { color: #ed3325; font-size: 18px; margin: 2px 0 0 0; }
.sh-train-board-wrapper .sh-train-board .sh-radio-group {
	clear: left;
	margin-top: 22px;
	display: inline-block;
	display: none;
}
.sh-train-board-wrapper .sh-train-board .sh-radio-group > div {
	display: inline-block;
	margin-left: 4px;
	transition: background 0.25s ease;
	padding: 5px 0;
}
.sh-train-board-wrapper .sh-train-board .sh-radio-group > div label {
	font-size: 16px;
	margin-right: 36px;
	position: relative;
	font-family: "Helvetica Neue", arial, sans-serif;
	font-weight: normal;
	padding-left: 22px;
}
.sh-train-board-wrapper .sh-train-board .sh-radio-group > div:hover { background: rgba(255,255,255,0.2); }
.sh-train-board-wrapper .sh-train-board .sh-radio-group > div label:before {
	content: "";
	width: 22px;
	height: 22px;
	position: absolute;
	left: -12px;
	top: -2px;
	/* background: url('img/radio-sprites.svg') left top -22px / 22px 44px no-repeat; */
	background: url('img/radio-sprites.svg') left top -22px / 22px 44px no-repeat;
}
.sh-train-board-wrapper .sh-train-board .sh-radio-group > div input {
	opacity: 0;
}
.sh-train-board-wrapper .sh-train-board .sh-radio-group > div input:checked + label:before {
	background-position: left top 0px;
}
.sh-train-board-wrapper .sh-train-board button {
	border: none;
	color: #fff;
	background: #ed3325;
	padding: 10px 22px;
	font-size: 18px;
	font-weight: bold;
	border-radius: 12px;
	float: right;
	margin-top: 12px;
	cursor: pointer;
	transition: 0.5s;
	outline: none;
	font-family: "Helvetica Neue", arial, sans-serif;
}
.sh-train-board-wrapper .sh-train-board button:hover { background: #f7af19; color: #000; }

p.sh-footnote.sh-board-fn, .moneyMatters .contentContainer p.sh-footnote.sh-board-fn { margin: 5px 0 42px 18px; }

/* Social media stuff */
ul.sh-social, ul.sh-tabs {
	list-style: none;
	padding-left: 0;
	margin: 0 0 25px 0 !important;
}
ul.sh-social {
	text-align: right;
}
ul.sh-social li { display: inline-block; line-height: normal; }
ul.sh-social li a {
	display: block;
	margin: 0 5px;
	padding: 10px;
	background: #231f20;
	border-radius: 50%;
	color: #fff;
	transition: 0.5s;
	line-height: 1em;
}
ul.sh-social li a:hover { background: #F06C00; }
ul.sh-social li a img { width: 20px; height: 20px; line-height: normal; }

.sh-spacer .sh-social { margin: 24px 0 52px 0 !important; }

/* The dynamic content */
#shResults { margin-bottom: 42px; display: none; }
#shUnsubmitted { margin-bottom: 42px; overflow: auto; }

/* Tabs and buttons */
ul.sh-tabs li {
	display: inline-block;
}
ul.sh-tabs li + li {
	margin-left: 12px;
	padding-left: 12px;
	border-left: 2px solid #231f20;
}
ul.sh-tabs li a { color: #F06C00; }
ul.sh-tabs li a.active { color: #231f20; text-decoration: none; cursor: default; }
ul.sh-tabs li a:hover { text-decoration: none; }

#shGraphView {
	display: none;
}

/* Tickets */
.sh-ticket {
	margin-top: 18px;
	margin-bottom: 35px;
	font-family: 'VT323', monospace;
}
.sh-ticket h4, .sh-ticket .sh-ticket-footer {
	font-family: 'VT323', monospace;
	background: #F06C00;
	color: white;
	margin: 0;
	border-radius: 15px 15px 0 0;
	padding: 12px 22px;
	text-transform: uppercase;
	font-size: 40px;
	color: #404041;
	font-weight: normal;
}
.sh-ticket .sh-ticket-body {
	background: #f7f4e8;
	margin-top: 0;
	margin-bottom: 0;
	padding: 15px 22px;
	color: #58595b;
}
.sh-ticket.sh-modern .sh-ticket-body, .sh-ticket.sh-modern h4 { color: #404041; }

.sh-ticket .sh-ticket-body p, .moneyMatters .contentContainer .article .sh-ticket .sh-ticket-body p { margin-bottom: 0; font-size: 20px; text-transform: uppercase; font-family: "VT323", monospace; line-height: normal; }
.sh-ticket .sh-ticket-body p.sh-right, .moneyMatters .contentContainer .article .sh-ticket .sh-ticket-body p.sh-right { max-width: 135px; }
.sh-ticket .sh-ticket-body p.sh-right span, .moneyMatters .contentContainer .article .sh-ticket .sh-ticket-body p.sh-right span { font-size: 40px; display: block; }
.sh-ticket .sh-ticket-body p.ticket-cost, .moneyMatters .contentContainer .article .sh-ticket .sh-ticket-body p.ticket-cost { font-size: 60px; margin-top: 38px; margin-bottom: 0; }

.sh-ticket .sh-ticket-footer {
	border-radius: 0 0 15px 15px;
	color: #fff;
	padding: 8px 22px;
}
.sh-ticket .sh-ticket-footer img {
	height: 24px;
	width: auto;
}

/* SLider */
#shSlider { font-size: 0; padding: 12px 0 0 0; margin-top: 8px; margin-bottom: 8px; min-height: 32px; overflow: visible; }
#shSlider div.faux-label, #shSlider div.slide { width: 15%; display: block; float: left; font-size: 30px; box-sizing: border-box; text-align: left; font-family: "MaryAnn", "Mary Ann BETA", arial, sans-serif; }
#shSlider div.slide, #shSlider > div:not(.faux-label) { width: 70%; margin-top: 20px; }
#shSlider div:last-child { text-align: right; }

/* Stylings to handle the random div that is being added for no apparent reason on live */
#shSlider > div:not(.faux-label):not(.slide) { float: left; overflow: visible !important; height: 24px !important; margin-top: -0 !important; }
#shSlider > div > div.slide { overflow: visible !important; margin-top: 12px !important; width: 100% !important; }

/* Alternative to the slider */
.sh-slide-alt { display: none; }


.sh-content .sh-slide-wrap p.sh-footnote { margin-top: 16px; font-size: 20px; font-family: "MaryAnn", "Mary Ann BETA", arial, sans-serif; }
.sh-content .sh-slide-wrap blockquote { margin-top: 72px !important; }
.sh-content .sh-slide-wrap p.sh-attribute { margin-bottom: 72px; }

/* Receipts */
.sh-receipt {
	background: #f7f4e8;
	box-sizing: border-box;
	padding: 22px 18px 62px 18px;
	position: relative;
	color: #665349;
	font-family: 'VT323', monospace;
}
.sh-receipt.sh-prev {
	background: #e9e4c5;
}
.sh-receipt:after {
	background: linear-gradient(-45deg, #ffffff 16px, transparent 0), linear-gradient(45deg, #ffffff 16px, transparent 0);
  background-position: left-bottom;
  background-repeat: repeat-x;
  background-size: 32px 32px;
  content: " ";
  display: block;
  position: absolute;
	bottom: 0px;
  left: 0px;
  width: 100%;
  height: 32px;
}
.sh-receipt h4 {
	margin: 0 auto 28px auto;
	text-align: center;
	color: #665349;
	font-size: 80px;
	border-bottom: 5px dotted #665349;
	padding-bottom: 22px;
	max-width: 160px;
}
.sh-receipt h5 {
	font-size: 40px;
	margin-bottom: 5px;
	text-transform: uppercase;
	font-weight: normal;
}
.sh-receipt a { color: #665349; }
.sh-receipt a:after { content: ""; width: 18px; display: inline-block; margin-left: 8px; height: 18px; background: url('img/popup.svg') center center / 18px auto no-repeat; }
.sh-receipt a:hover { text-decoration: none; }

.sh-receipt p { font-size: 19px !important; }
.sh-receipt p.sh-amt {
	font-size: 80px !important;
	font-family: "VT323", monospace;
	padding-bottom: 18px;
	margin-bottom: 18px;
	border-bottom: 5px dotted #665349;
	border-top: 5px dotted #665349;
	line-height: 80px !important;
}

.sh-receipt .sh-img img {
	height: 80px;
	width: auto;
	display: block;
	margin: 80px auto 28px auto;
}
.sh-receipt .sh-img img.sh-pig { height: 90px; margin-top: 40px; }
.sh-receipt .sh-img img.sh-petrol { height: 70px; }

.sh-receipt h5 { margin-top: 0; }

/* Text stuff */
.sh-disclaimer {
	margin: 42px 0 0 0;
	padding-top: 42px;
	border-top: 2px solid #ccc;
}
.sh-disclaimer h6 {
	font-size: 1em;
	font-weight: 500;
	margin: 0 0 14px 0;
}

/* Graph styling */
.sh-content ul.sh-key { list-style: none; }
.sh-content ul.sh-key li {
	position: relative;
	text-align: left;
	padding: 0 0 10px 0;
	margin: 0;
	color: #000;
	font-family: arial, sans-serif;
}
.sh-content .sh-key li:before {
	content: "";
	width: 18px;
	height: 14px;
	position: absolute;
	left: -32px;
	top: 7px;
	background: #f7af19;
}
.sh-content .sh-key li.sh-standard-key:before { background: #ec7d23; }
.sh-content .sh-key li.sh-wage-key:before {
	background: #ed3325;
	height: 4px;
	top: 12px;
}

#shGraph .sh-canvas { width: 90%; float:left; }
#shGraph .sh-chart-axis { width: 5%; float: left; }
#shGraph .sh-chart-axis p { transform: rotate(270deg); width: 200px; margin-top: 180px; margin-left: -85px; color: #808184; }
#shGraph .sh-chart-axis.rght p { margin-left: -75px; }
.sh-content #shGraphView .sh-graph-desc { margin-top: 18px; font-family: arial, sans-serif; color: #000; }
.sh-content #shGraphView blockquote { margin-bottom: 72px !important; margin-top: 34px !important; }


/* Smaller screen styling */
@media only screen and (max-width: 920px)  {
	.sh-ticket .sh-ticket-body p { font-size: 18px; }
}

@media only screen and (max-width: 830px)  {
	.sh-ticket .sh-ticket-body p { font-size: 16px; }
	.sh-ticket .sh-ticket-body p.ticket-cost { font-size: 48px; }
	.sh-ticket .sh-ticket-body p.sh-right span { font-size: 32px; }
}

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

	.sh-content .sh-social-wrapper { width: 100%; clear: left; }
	.sh-content .sh-social-wrapper ul.sh-social { text-align: left; margin-top: 22px !important; }

	.sh-ticket .sh-ticket-body p, .moneyMatters .contentContainer .article .sh-ticket .sh-ticket-body p { font-size: 15px; }

}

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

	.sh-content .sh-train-board-wrapper { min-height: 0; background-position: bottom left; background-size: 100% auto; }
	.sh-content .sh-train-board-wrapper .sh-train-board { width: 100%; }

	.sh-ticket { min-width: 460px; margin: 10px auto; float: none; }
	.sh-content .sh-slide-wrap { margin-top: 42px; }

	#shGraph .sh-chart-axis p { margin-top: 132px; font-size: 14px; }

}

@media only screen and (max-width: 600px)  {
	.sh-content .sh-train-board-wrapper { min-height: 0; }

	.sh-content #shDataView .sh-receipt:first-child { margin-bottom: 22px; }
	.sh-content blockquote { font-size: 26px; }
	.sh-content h2 { margin-top: 18px; font-size: 36px; }
	.sh-content h3#2020-fare-increase { font-size: 22px; }

	.sh-content .sh-receipt h3#2020-fare-increase { font-size: 60px !important; max-width: 98px; padding-bottom: 12px; margin-bottom: 18px; }
	.sh-content .sh-receipt .sh-img img { margin: 44px auto 12px auto; }
	.sh-content .sh-receipt .sh-img img.sh-pig { margin-top: 24px; }
	.sh-content .sh-receipt h5 { font-size: 28px !important; padding-bottom: 18px; }
	.sh-content .sh-receipt p.sh-amt { font-size: 60px !important; line-height: 60px !important; }

	#shGraph .sh-chart-axis p { margin-top: 112px; }

}

@media only screen and (max-width: 540px)  {
	.sh-content .sh-train-board-wrapper { min-height: 0; }
	.sh-train-board-wrapper .sh-train-board button { float: none; }
	.sh-train-board-wrapper .sh-train-board { min-height: 0; }
	#shGraph .sh-chart-axis p { margin-top: 100px; }

	.sh-slide-wrap { display: none; }
	.sh-slide-alt {
		display: block;
		margin: 62px auto;
		text-align: auto;
		font-family: "MaryAnn", "Mary Ann BETA", arial, sans-serif;
		text-align: center;
	}
	.sh-slide-alt select {
		width: 50%;
		padding: 8px 15px;
		margin: 12px auto 0 auto;
		font-size: 18px;
		outline: none;
		display: block;
	}


}

@media only screen and (max-width: 480px)  {
	#shSlider div { width: 15%; }
	#shSlider div.slide { width: 70%; }

	.sh-content .sh-train-board-wrapper { min-height: 0; }

	.sh-ticket, .moneyMatters .contentContainer .article .sh-ticket { min-width: 0; width: 100%; }
	.sh-ticket h4, .moneyMatters .contentContainer .article .sh-ticket h4 { font-size: 32px; }
	.sh-ticket p, .moneyMatters .contentContainer .article .sh-ticket p { font-size: 14px; }
	.sh-ticket .sh-ticket-body p.sh-right, .moneyMatters .contentContainer .article .sh-ticket .sh-ticket-body p.sh-right { min-width: 90px; }
	.sh-ticket .sh-ticket-body p.sh-right span, .moneyMatters .contentContainer .article .sh-ticket .sh-ticket-body p.sh-right span { font-size: 26px; }
	.sh-ticket .sh-ticket-body p.ticket-cost, .moneyMatters .contentContainer .article .sh-ticket .sh-ticket-body p.ticket-cost { font-size: 40px; margin-top: 26px; }
	.sh-ticket .sh-ticket-footer img, .moneyMatters .contentContainer .article .sh-ticket .sh-ticket-footer img { height: 18px; }

	.sh-content .sh-train-board-wrapper .sh-train-board h3 { font-size: 30px; }
	.sh-train-board-wrapper .sh-train-board p span, .sh-train-board-wrapper .sh-train-board .sh-pseudo-span { font-size: 30px; min-height: 44px; }
	.sh-train-board-wrapper .sh-train-board .sh-pseudo-span p { font-size: 24px; }
	.sh-train-board-wrapper .sh-train-board .sh-pseudo-span.sh-lower { min-height: 40px; }
	.sh-train-board-wrapper .sh-train-board .sh-pseudo-span p.paging { font-size: 24px; }
	.sh-train-board-wrapper .sh-train-board .sh-input label { font-size: 18px; }
	.sh-train-board-wrapper .sh-train-board .sh-radio-group { margin-top: 10px; }
	.sh-train-board-wrapper .sh-train-board .sh-radio-group > div { margin-bottom: 8px; width: 100%; }
	.sh-train-board-wrapper .sh-train-board .sh-radio-group > div label { width: 100%; }
	.sh-train-board-wrapper .sh-train-board .sh-radio-group > div:first-child { margin-bottom: 15px; }

	.sh-content h2 { font-size: 32px; }
	.sh-content h3#2020-fare-increase { font-size: 18px; }

	.sh-content blockquote { font-size: 20px; }

	#shGraph .sh-chart-axis p { margin-top: 80px; }

}
