* { 
	box-sizing: border-box;
}

html {
    font-size: 62.5%;
}

html, body {
	background-color:#f8f9fa;
	color:#303030;
}

body {
    overflow-x:hidden;
	font-size: 1.6rem;
    font-family: 'Work Sans', sans-serif;
    font-weight: 400;
	text-rendering: optimizeLegibility;
    overflow-wrap: break-word;
	-webkit-touch-callout: none;
    -webkit-user-select: none;
	-khtml-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
}
	
ul, ol, dl {
	margin: 0;
}

article, aside, audio, 
footer, header, nav,
section, video {
	display: block; 
}
	
p { 
	-ms-word-break: break-all;
	word-break: break-all;
	word-break: break-word;
  line-height: 1.4;
}

a {
    color:inherit;
    text-decoration: none;
}
	
textarea { 
	resize: vertical;
}
 
table {
	border-collapse: collapse;
}

td {
	padding: .5rem;
}
	
img {
	max-width: 100%;
}

input[type="submit"] { 
	-webkit-appearance:none;
}
	
.right { 
	float: right;
	margin-left: 2rem;
	clear: right;
}

.left { 
	float: left;
	margin-right: 2rem;
	clear: left;
}

/*--------------------------------------------------------------
# Be creative!
--------------------------------------------------------------*/

.timetables {
  display:flex;
  flex-direction: column;
  justify-content: center;
  gap:4rem;
  padding:2rem;
}

.timetables h2 {
  position:relative;
  display:block;
  margin-left: 2rem;
  margin-bottom:3rem;
}

.timetables h2:before {
  position: absolute;
  content: url(./assets/losange.svg);
  top: -18px;
  left: -30px;
  width: 50px;
  pointer-events: none;
  z-index:2;
}
.timetables table {
	text-align: center;
}
.timetables table tr td {
	padding:10px 12px;
	vertical-align: middle;
}
.timetables table tr {
	height:60px;
}
.timetables table tr:last-child {
	background-color:#ededed;
}
.timetables table tr:hover {
	background-color:#f5f5f5;
}
.timetables table tr:hover:last-child {
	background-color:#e3e3e3;
}
.timetables table tr td:first-child {
	min-width: 127px;
	text-align: left;
	font-weight: bold;
	padding-left:10px;
	background-color:#66338A;
	color:#ffffff;
}
.timetables table tr:first-child td:first-child {
	background-color:#724096;
	/* background-color:#7f4fa1; */
}
.table-scroll {
	overflow-x: auto;
}
span.legend {
	text-align: left;
	display:block;
	margin-top:2rem;
	font-size:1.4rem;
}
.map {
	max-width:100%;
	width:1142px;
	margin:1rem auto 0 auto;
}
.map img {
	object-fit:contain;
	width:100%;
	height:100%;
}


@media screen and (min-width: 1100px) {
	.timetables {
		display:flex;
		flex-direction: row;
	}
	.timetables table tr td:first-child {
		max-width: 162px;
		min-width:auto;
	}
	span.legend {
		text-align: right;
	}
}