* {
  box-sizing: border-box;
}

body {
  margin: 0;
}

/* Style the header */
.header {
  background-color: #cccccc;
  padding: 20px;
  /* text-align: center; */
}

.header img {
	float: left;
	max-width: 17%;
	margin-left: 0%;
	height: auto;
	border:none;
}

.header h1 {
	font-size: 200%;
}

/* Style the topnav links */
.nav {
	width: 100%;
	float: left;
    text-align: center;
	margin: 0 0 1em 0;
	padding: 0;
	background-color: #c2f0f0;
    /* background-color: #333; */
	border-bottom: 1px solid #ccc;  }
.nav ul {
	list-style: none;
	width: 800px;
	margin: 0 auto;
	padding: 0; }
.nav li {
	float: left; }
.nav li a {
	display: block;
	padding: 8px 15px;
	text-decoration: none;
	font-weight: bold;
	color: #069;
	border-right: 1px solid #ccc; }
.nav li:first-child a {
	border-left: 1px solid #ccc; }
.nav li a:hover {
	color: #ddd;
	background-color: black; }

/* Create three unequal columns that floats next to each other */
.column {
  float: left;
  padding: 10px;
}

/* Left and right column */
.column.side {
  width: 10%;
}

/* Middle column */
.column.middle {
  width: 80%;
  border-style: none solid none solid;
}

/* Clear floats after the columns */
.row:after {
  content: "";
  display: table;
  clear: both;
}

.columnTOC {
	float: left;
	width: 30%;
	padding: 1.6%;
	margin-left: 2.5%;
	
	/* flex-grow: 1; */
    /* flex-shrink: 1; */
    /* flex-basis: 0; */
    /* text-align: center; */
}

#toc_title {
  font-size: 158%;
  text-align: center;
  margin-bottom: 2%;
}

#toc_buttons {
	text-align: center;
	font-size: 158%;
	margin-bottom: 2%;
}

.columnTOC hr {
	border-top: 0.15em solid #ffcc00;
}

.columnTOC table {
	table-layout: fixed;
	height: 100px;
}

span.number {
	background: #e3e3e3;
	border-radius: 50%;
	-moz-border-radius: 50%;
	-webkit-border-radius: 50%;
	color: #000;
	display: inline-block;
	font-weight: bold;
	line-height: 30px;
	margin-right: 5px;
	text-align: center;
	width: 30px;
}


/* Responsive layout - makes the three columns stack on top of each other instead of next to each other */
@media screen and (max-width: 600px) {
  .column.side, .column.middle {
    width: 100%;
  }
  .columnTOC {
    width: 100%;
	height: 100%;
  }
}

@media screen and (min-width: 1000px) {
  .header h1 {
    font-size: 300%;
  }
}