/* Applies to any 'INFO' table */
table.info {
  margin-left: 10%;
  width: 80%;
  border-spacing: 0px 0px
}

table.info tr:nth-child(even) {
  background-color: #f0f0f0
}

table.info tr:nth-child(odd) {
  background-color: #c0c0c0
}

table.info td {
  border-bottom: 2px solid #0f0f0f;
  text-align: center
}

table.info th {
  color: white;
  background-color: black
}

/* Applies to any 'INFO-Left' table */
table.info-left {
  text-align: center;
  margin-left: 10%;
  width: 80%;
  border-spacing: 0px 0px
}

table.info-left tr:nth-child(even) {
  background-color: #f0f0f0
}

table.info-left tr:nth-child(odd) {
  background-color: #c0c0c0
}

table.info-left td {
  border-bottom: 2px solid #0f0f0f;
  text-align: left;
  padding-left: 2px;
  padding-right: 2px
}

table.info-left th {
  color: white;
  background-color: black
}

/* Create two equal columns that floats next to each other */
div.start2column {
  float: left;
  width: 45%;
  padding: 10px;
}

/* Clear floats after the columns */
div.end2column:after {
  content: "";
  display: table;
  clear: both;
}

div.twocolumn {
  -webkit-column-count: 2;
  /* Chrome, Safari, Opera */
  -moz-column-count: 2;
  /* Firefox */
  column-count: 2;
}

/* Responsive layout - makes the two columns stack on top of each other instead of next to each other */
@media screen and (max-width: 500px) {
  div.start2column {
    width: 100%;
  }
}

/* Applies to sub-topics in body of page */
table.topics {
  border-spacing: 10px 5px
}

td.topics {
  padding-left: 15px;
  padding-right: 15px;
  text-align: center;
  background-color: #ff9900;
  font-weight: bold;
  font-size: large;
  height: 35px;
  border: 1px solid black;
}

table.topics a {
  display: block;
  text-decoration: none
}

/* Applies to the top banner navigation buttons defined via table */
table.nav {
  width: 90%;
  margin-left: 5%;
  border-spacing: 10px 0px
}

table.nav td {
  padding-left: 5px;
  padding-right: 5px;
  text-align: center;
  background-color: #ff9900;
  font-weight: bold;
  font-size: medium;
  height: 35px;
  border: 1px solid black;
  border-radius: 8px;
}

table.nav a {
  display: block;
  text-decoration: none
}

/* Applies to the title banner */
table.title {
  width: 100%
}

table.title tr {
  text-align: center;
  vertical-align: middle
}

table.title td {
  font-size: 200%;
  font-weight: bold;
  cursor: pointer
}

table.title a {
  display: block;
  text-decoration: none
}

/* Applies to the sub-panel */
div.subpanel {
  background-color: #C1E4F7;
  margin: 5px 5px;
  padding: 5px;
  border-style: solid;
  border-width: medium
}

div.subpanel table {
  width: 100%
}

div.subpanel tr {
  text-align: center;
  vertical-align: middle
}

div.subpanel td {
  font-size: large;
  font-weight: bold;
}

div.subpanel a {
  display: block;
  text-decoration: none
}

div.subpanel table.services {
  width: 85%;
  border-spacing: 10px 0px;
  border: 0px
}

div.subpanel td.services {
  background-color: white;
  color: green;
  border: 1px solid black;
  border-radius: 8px
}

body.image {
  text-align: center;
  background-color: #FFFFFF;
  border-style: none
}

/* Applies to the entire body of the page */
body {
  background-color: #E3F1FA;
  font-family: Calibri;
  font-size: 120%;
  max-width: 1000px;
  margin: auto;
  margin-top: 5px;
  padding: 5px;
  border-style: solid;
  border-width: medium;
}

/* Appliec to TOC */
/* Appliec to TOC */
.bf_toc_container {
  border: 2px solid #ddd;
  padding: 5px;
  font-size: 18px;
  overflow: hidden;
  border-radius: 5px;
  margin-bottom: 20px;
  background-color: #E3F1FA;
}

.bf_toc_container a {
  text-decoration: none;
}

.bf_toc_container a:hover {
  opacity: 0.9;
}

.bf_toc_container ol {
  counter-reset: item;
}

.bf_toc_container ol>li {
  counter-increment: item;
}

.bf_toc_container ol ol>li {
  display: block;
}

.bf_toc_container ol ol>li:before {
  content: counters(item, ".") ". ";
  margin-left: -20px;
}

.bf_toc_container .bf_toc_title {
  font-weight: 500;
  font-size: 120%;
  margin: 10px 10px 0px 10px;
}