<link href="https://fonts.googleapis.com/css?family=Open+Sans:300,400" rel="stylesheet">


@keyframes spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}




//Text element sizing {}
@media screen and (max-width : 1100px){
	
	.pagetitle{
		font-size: 17px;
	}

	.about_download{
		font-size: 0.7vw;
	}
	
	nav a {
		padding: 1em;
	}

	.mode{
		font-size: 0.7vw;
	}

	.option{
		font-size: 0.7vw;
	}

	.footer{
		font-size: 7.5px;
	}

	.alaska-text{
		font-size: 12px;
	}

	#legendTitle {
		font-size: 14px;
	}
	
	.defaultLegendText{
		font-size: 13px;
	}
	
	.textLegend{
		font-size: 12px;
	}

	.lineLabel{
		font-size:  12px;
	}

	.alert {
		font-size: 7.5px;
	}

	.mapTooltip{
		font-size: 7.5px;
	}


	.tab{
		font-size: 7.5px;
	}

	.chartNum{
		font-size: 7.5px;
		
	}

	.NaN {
		font-size: 7.5px;
		text-transform: uppercase;
	}

	.question{
		font-size: 1.2vmin;
	}
	
	.textLabel{
		font-size: 1.2vh;
	}
			
	.toggle-rect {
		font-size: 1.1vh;
	}

	.y-axis text{
		font-size: 1.2vh;
	}
	
	p{
		font-size: 1em;
	}

		
	.aboutSubTitle{
		font-size: 1.1em;
	}
	

	.downloadDiv a{
		font-size: 7.5px;
	}
		
	.downloadTitle{
		font-size: 14px;
	}

}

@media screen and (min-width: 1101px) and (max-width: 1400px){
	
	.pagetitle{
		font-size: 21px;
	}

	.about_download{
		font-size: 0.7vw;
	}
	
	nav a {
		padding: 1em;
	}

	.mode{
		font-size: 0.7vw;
	}

	.option{
		font-size: 0.7vw;
	}

	.footer{
		font-size: 10px;
	}

	.alaska-text{
		font-size: 12px;
	}

	#legendTitle {
		font-size: 14px;
	}
	
	.defaultLegendText{
		font-size: 13px;
	}
	
	.textLegend{
		font-size: 12px;
	}

	.lineLabel{
		font-size:  12px;
	}

	.alert {
		font-size: 10px;
	}

	.mapTooltip{
		font-size: 10px;
	}


	.tab{
		font-size: 10px;
	}

	.chartNum{
		font-size: 9px;
		
	}

	.NaN {
		font-size: 9px;
		text-transform: uppercase;
	}

	.question{
		font-size: 1.2vmin;
	}
	
	.textLabel{
		font-size: 1.2vh;
	}
			
	.toggle-rect {
		font-size: 1.1vh;
	}


	.y-axis text{
		font-size: 1.2vh;
	}
	
	p{
		font-size: 1em;
	}
		
	.aboutSubTitle{
		font-size: 1.1em;
	}


	.downloadDiv a{
		font-size: 10px;
	}
		
	.downloadTitle{
		font-size: 18px;
	}

}

@media screen and (min-width: 1401px){
	
	.pagetitle{
		font-size: 3.5vmin;
	}

	.about_download{
		font-size: 0.7vw;
	}
	
	nav a {
		padding: 1em;
	}

	.mode{
		font-size: 0.7vw;
	}

	.option{
		font-size: 0.7vw;
	}

	.footer{
		font-size: 1.3vmin;
	}

	.alaska-text{
		font-size: 1.3vmin;
	}

	#legendTitle {
		font-size: 14px;
	}
	
	.defaultLegendText{
		font-size: 13px;
	}
	
	.textLegend{
		font-size: 12px;
	}

	.lineLabel{
		font-size:  1.3vmin;
	}

	.alert {
		font-size: 1.3vmin;
	}

	.mapTooltip{
		font-size: 1.3vmin;
	}

	.tab{
		font-size: 1.3vmin;
	}

	.chartNum{
		font-size: 1.1vmin;
		
	}

	.NaN {
		font-size: 1.2vmin;;
		text-transform: uppercase;
	}

	.question{
		font-size: 1.2vmin;
	}
	
	.textLabel{
		font-size: 1.2vh;
	}
			
	.toggle-rect {
		font-size: 1.1vh;
	}


	.y-axis text{
		font-size: 1.2vmin;
	}
	
	p{
		font-size: 1em;
	}
		
	.aboutSubTitle{
		font-size: 1.1em;
	}

	.downloadDiv a{
		font-size: 1.3vmin;
	}
		
	.downloadTitle{
		font-size: 1.8vmin;
	}

}


//Page layout{}

/* Framework from Kim */ 

body {
	background-color: white;
	margin-top: 0px;
	margin-right: 0px;
	margin-bottom: 0px;
	margin-left: 0px;
	overflow: hidden;
	font-family: 'Open Sans', sans-serif;
	max-width: 2000px;
}

.pagecontent{
	float: left;
	clear:both;
}


nav {
	margin: 10px;
	text-transform: uppercase;
	font-family: 'Open Sans', sans-serif;
	color:#000000;
}
nav ul {
	list-style-type: none;
	margin: 0;
	padding: 0;
}
nav li {
	display: inline;
}
nav a {
	text-transform: uppercase;
	display: inline-block;
	text-decoration: none;
	color:#000000;
}

li{
  margin: 10px 0;
}


.about_download{
	position:absolute;
	top:5px;
	right:1%;
	font-family: 'Open Sans', sans-serif;
	cursor:pointer;
	text-decoration: none;
}

//This is the style for the about div{}

.aboutDiv {
	position: fixed;
	top:0;
	width: 100%;
	z-Index: 15;
	display:none;
	font-family: 'Open Sans', sans-serif;
}

.aboutDiv a{
	text-decoration:none;
}

.aboutInsideSvg{
	z-Index: 15;
	padding:2% 2%;
	height:80%;
	left:22.5%;
	width:55%;
}

.aboutMenu{
	float:left;
	background-color: rgba(125, 161, 196, 0.2);
	border-radius: 12px;
	width:18%;
	padding:1em;
}

.aboutMenu ul{
	list-style:none;
	padding:0%;
}

.aboutMenu li a{
	color: black;
	cursor:pointer;

}

.aboutMenu li a:hover{
	font-weight:600;
	color: #002855;	
}

.aboutMenu .activeAboutMenu a{
	color: #002855;
	font-weight:600;
}

.aboutContent{
	overflow-x:hidden;
	overflow-y:scroll;
	border-radius: 12px;
	padding:0% 3%;
}

#aboutClosingButton{
	position:absolute;
	top:1%;
	right:2%;
	cursor:pointer;
	font-family: 'Open Sans', sans-serif;
	color: #002855;
	text-decoration: none;
}

.aboutTitleDiv{
	padding-bottom:2%;
}

.aboutTitle{
	position:relative;
	color: #002855;
	font-family: 'Open Sans', sans-serif;
	font-size:3vmin;
	text-transform: uppercase;
	text-align:center;
}

.aboutSubTitle{
	color: #002855;
	font-family: 'Open Sans', sans-serif;
	text-transform: uppercase;
	text-align:left;
}

#toTheTop{
	text-align:right;
	padding-right:5%;
	padding-top:1%;
	cursor:pointer;	
	font-size:1.2vmin;
}


.loader {	
	position: absolute;
	z-index: 9;
	background-color: white;
	width: 100%;
	height: 100%;
}


//This is the style for the header{}

.header {
	background-color: white;
	font-family: sans-serif;
	position: fixed;
	z-index:13;
	width:96%;
	border-bottom: #47729D solid 1px;
	top:60px;
	left:2%;
	right:2%;
	box-shadow: none;
	clear: both;
}

.modeDiv{
	float: left;
	margin: 0.3em;
}

.mode{
	font-family: 'Open Sans', sans-serif;
	cursor:pointer;
	color:#000000;
}



.mode.modeSel{
	font-family: 'Open Sans', sans-serif;
	cursor:pointer;
	color:#FFFFFF;
	background-color:rgb(13,72,127);
	border-radius:5px;
}


.optionDiv{
		position:absolute;
		bottom:0px;
		right:0px;
		margin: 0.3em;
}

.option{
	font-family: 'Open Sans', sans-serif;
	cursor:pointer;
	color:#000000;
	float: left;
	margin-left: 0.3em;
}

.option.optionSel{	
	font-family: 'Open Sans', sans-serif;
	cursor:pointer;
	color:#FFFFFF;
	background-color:#7DA1C4;
	border-radius:5px;
	float: left;
}
	



//This is the style for the footer{}

.footer{
	position: fixed;
	right: 0;
	bottom: 0;
	left: 0;
	z-index:13;
	background-color: rgb(13,72,127);
	color:white;
	border-top: #FFFFFF solid 1px;
}

//Accessibility division{}

#accessDisclaimer{
	position:fixed;
	left:-10000px;
	top:-10000px;
}

//set question navigating map style option {}


#map.sub-division{
	position: fixed;
	width: 39%;
	border: 0px solid;
	margin-left: 2%;
	background-color:white;
	overflow:hidden;
}


#Bus_Routes{
	cursor:pointer;
}
#Bus_symbol{
	cursor:pointer;
}

.selectable{
	cursor:pointer;
}


.line{
	cursor:pointer;
}

.station{
	cursor:pointer;
}

.commuterLine{
	stroke: #a00a78;
	cursor:pointer;
}

.boatLine{
	stroke: #008EAA;
	cursor:pointer;
}

.commuterStation{
	cursor:pointer;
}

.boatStation{
	cursor:pointer;
}


#RED{stroke: #e1251b;}
#MATTAPAN{stroke: #E12D27;}
#BLUE{stroke: #003DA6;}
#SILVER12{stroke: #7b868c;}
#SILVER45{stroke: #7b868c;}
#GREEN{stroke: #00833e }
#ORANGE{stroke: #f18a00;}


.lineLabel{
	fill:black;
	font-family: 'Open Sans', sans-serif;
	cursor:pointer;
}

#legendTitle {
	fill:black;
	font-family: 'Open Sans', sans-serif;
	font-weight: 900;
}



// station label option {}

.stationLabel{
	fill:black;
	font-family:  'Open Sans', sans-serif;
	cursor:pointer;
}


.mapSelectionMenu {
	position: absolute;
	top:1%;
	left:2%;
}

.mapselectionAll {
	text-transform: uppercase;
}

.tab{
	float:left;
	margin:2px;
	font-family: 'Open Sans', sans-serif;
	text-align: center;
	border-radius:6px;
	background-color:#7DA1C4;
	padding-top:10px;
	padding-right:1em;
	padding-bottom:10px;
	padding-left: 1em;
	color:white;
	width:auto;
	opacity:0.88;
	cursor:pointer;
}

.mapselection.Bus{
	background-color:#7DA1C4;
	text-transform:capitalize;
}

.mapselection.CR{
	background-color:#a00a78;
	text-transform:capitalize;
}

.mapselection.RT.GREEN{
	background-color:#a00a78;
	text-transform:capitalize;
}

.mapselection.RT.RED{
	background-color: #e1251b;
	text-transform:capitalize;
	}
	
.mapselection.RT.MATTAPAN{
	background-color: #E12D27;
	text-transform:capitalize;
	}
	
.mapselection.RT.BLUE{
	background-color: #003DA6;
	text-transform:capitalize;
	}
	
.mapselection.RT.SILVER12{
	background-color: #7b868c;
	text-transform:capitalize;
	}
	
.mapselection.RT.SILVER45{
	background-color: #7b868c;
	text-transform:capitalize;
	}

.mapselection.RT.GREEN{
	background-color: #00833e; 
	text-transform:capitalize;
	}
	
.mapselection.RT.ORANGE{
	background-color: #f18a00;
	text-transform:capitalize;}
	
.mapselection.RT.TRANSFER{
	background-color: #fbb4ae;
	text-transform:capitalize;
	}


.close{
  font: 1.2vmin 'Open Sans', sans-serif;
  text-decoration: none;
  position:relative;
  top:-0.5em;
  right:-0.5em;
  padding:2px;
}


.bubbleLegend{
	position: absolute;
}

#legendFrame{
	fill:white;
	rx:12px;
}


//set question navigating menu style option {}

#menu.sub-division{
	clear:both;
	position: fixed;
	z-index:-1;
	right:2%;
	left: 42%;
	height:25%;
	border: 0px solid #000000;
	background-color:white;
}

.leftChangeMenu{
	cursor:pointer;
}

.rightChangeMenu{
	cursor:pointer;
}

.arrow{
	cursor:pointer;
}

.menu0 {
	fill:black;
	font-family: 'Open Sans', sans-serif;
}
			
.menu1 {
	fill:black;
	font-family: 'Open Sans', sans-serif;
}

.menu2 {
	fill:black;
	font-family: 'Open Sans', sans-serif;
}

.menu3 {
	fill:black;
	font-family: 'Open Sans', sans-serif;
}

.questionMarkGlossary {
	cursor:pointer;
}


.toggle-div{
	top:50%;
	left:5%;
	height:5%;
	position:relative;
	text-align: center;
}


.toggle-rect{
	padding-left:1em;
	padding-right:1em;
	padding-top:0.25em;
	padding-bottom:0.25em;
	width:10%;
	border: 0.8px solid #7DA1C4;
	color: rgb(0, 40, 85);
}

.toggle-line{
		top:0%;
		border-radius: 5px;
		cursor:pointer;
		box-shadow:2px 2px 2px rgba(125, 161, 196,0.8);
}

.toggle-station{
		position:relative;
		top:50%;
	    border-radius: 5px;
		cursor:pointer;
		box-shadow:2px 2px 2px rgba(125, 161, 196,0.8);
}


.toggle-rect.sel{
	background-color:#7DA1C4;
	color:white;
}

.lineStatus_toggle{
	display:none;
}



#chart.sub-division{
	position:absolute;
	left: 42%;
	right:2%;
	border: 0px solid #000000;
	background-color:white;
	font-family: 'Open Sans', sans-serif;
	cursor:pointer;
	overflow-y: auto;
	overflow-x: hidden;
	z-Index: 9;
}


.NaN {
	text-transform: uppercase;
}


.RED_bar{fill: #e1251b;}
.MATTAPAN_bar{fill: #E12D27;}
.BLUE_bar{fill: #003DA6;}
.SILVER12_bar{fill: #7b868c;}
.SILVER45_bar{fill: #7b868c;}
.GREEN_bar{fill: #00833e }
.ORANGE_bar{fill: #f18a00;}
.TRANSFER_bar{fill: #fbb4ae;}
.ALL_bar{fill: #fbb4ae;}

.mode-cr_bar{
	fill: #a00a78;
	
}

.mode-boat_bar{
	fill: rgb(0, 142, 170);
}

.Bus_bar{
	fill: rgb(13,72,127);
}

.pagetitle{
	color: #002855;
	font-family: 'Open Sans', sans-serif;
	text-transform: uppercase;
	margin-left:1%;
	margin-top:0.5%;
}


//Axis options{}


.y-axis path {
  fill: none;
  stroke: white;
  stroke-width: 0px;
}

.y-axis line {
  fill: none;
  stroke: #000;
  stroke-width: 0px;
}

.y-axis text{
	fill:black;
	font-family: 'Open Sans', sans-serif;
}
		
	
	//This set our tooltip {}
.tooltip {
	position: absolute;
	text-align: center;
	width: 103px;
	height: 18px;
	padding: 8px;
	margin-top: -10px;
	pointer-events: none;
}



.alert {
	position: absolute;
	text-align: center;
	background-color:white;
	left:22%;
	width:54%;
	padding-top:1%;
	padding-bottom:1%;
	color:black;
	font-family: 'Open Sans', sans-serif;
	font-weight:600;
	text-transform: uppercase;
	border-radius:5px;
	border: 2.5px solid #7DA1C4;
	pointer-events: none;
	opacity:0.85;
}

.mapTooltip{
	position: absolute;
	text-align: center;
	width: auto;
	height: auto;
	padding: 8px;
	margin-top: -20px;
	font-family: 'Open Sans', sans-serif;
	background: rgba(0,0,0,0.9);
	opacity:0.9;
	border:1px solid grey;
	border-radius:5px;
	color:white;
	pointer-events: none;
}

.questionMarkGlossary{
	opacity:0.8;
}

.questionMarkGlossary:hover{
	opacity:1;
}

.helpDiv {
	position: absolute;
	width: 100%;
	z-Index: 15;
	display:none;
	font-family: 'Open Sans', sans-serif;
}
	
.helpInsideSvg{
	z-Index: 15;
	padding:2% 2%;
}

.helpTitle{
	color: #002855;
	font-family: 'Open Sans', sans-serif;
	text-transform: uppercase;
	margin-top:2%;
	margin-left:5%;
	margin-right:5%;
	text-align:center;
	border-bottom: #47729D solid 1px;
	line-height: 3em;
}

.helpText{
	margin: 5%;
}

#helpClosingButton{
	position:absolute;
	top:1%;
	right:2%;
	cursor:pointer;
	font-family: 'Open Sans', sans-serif;
	color: #002855;
	text-decoration: none;
}


.ctpsHeader{
	height:59px;
	background-color:white
}

.lightBlue{
	height:27px;
	width:100%;
	background-color:#7DA1C4;
	z-index:10;
}

.darkBlue{
	height:16px;
	width:100%;
	background-color:rgb(13,72,127);
	z-index:10;
}

#banner{
	position:relative;
	height:100%;
	left:2%;
	top:-43px;
	z-index:15;
	border: none;
}

.mobile-wall{
	position: fixed;
	top:0;
	overflow-y:scroll;
	width: 100%;
	height:100%;
	display:none;
	z-index:900000;
	background-color:white;
}

.mobile-wall-content{
	margin:5%;
}

.mobileTitle{
	color: #002855;
	font-family: 'Open Sans', sans-serif;
	text-transform: uppercase;
	margin-top:0.5%;
	font-size:3vh;
}

#bannerMobile{
	position:relative;
	width:100%;
	border: none;
}

@media screen and (max-width: 450px) and (max-height: 750px){
	
	
	.aboutMenu{
		display:none;
	}
	
	.aboutContent{
		margin-top:5%;
	}
	
	
	.aboutContent p{
		font-size:0.8em;
		
	}
	
	.aboutContent h1{
		font-size:0.9em;
	}
	
	.aboutTitleDiv h1{
		font-size:1em;
		top:20%;
	}
	
	.aboutInsideSvg{
		z-Index: 15;
		padding:2% 2%;
		height:80%;
		left:15%;
		width:70%;
	}	
	
}
