body {
  font-family: 'Source Sans Pro', serif;
  font-size: 18px;
  letter-spacing: 0.5px;
  font-weight:bold;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  -o-user-select: none;
  user-select: none;
}
/* Formatting for top navigation bar */
.navbar {
  background-color: rgb(34,40,52) !important;
  color: #fff;
  border: 0;
  border-radius: 0px;
  margin-bottom: 0px;
  height: 50px;
}
.navbar p{
  text-align: center;
  margin-top: 10px;
  margin-bottom: 10px;
}
.navbar .mynavbar-header:focus,
.navbar .mynavbar-header:active,
.navbar .mynavbar-header:hover,
.navbar .mynavbar-header{
  color: #fff !important;
  font-size: 14px !important;
  letter-spacing: 4px;
  text-decoration: none;
  font-family: 'Lato', serif;
}
/* Formatting for left navigation-pane */
.accordionlist-navpane {
  margin-bottom: 20px;
}
.navpane-panel {
  margin-bottom: 0px !important;
  border: 0 !important;
  border-radius: 0 !important;
}
.navpane-coursehome {
  display: block;
  /* Need to change this and have a separate QuestionPageCSS for each subject */
  background-image: url("../statics.jpg");
  background-position: center center;
  background-size: 100% auto;
  height: 160px;
  color: #fff;
  text-align: left;
}
.navpane-coursehome-titlebg {
  background-color: rgba(0,0,0,0.75);
  padding: 10px 10px;
}
.navpane-coursehome-title {
  font-size: 30px;
  color: #fff;
}
.navpane-coursehome-link {
  font-size: 15px !important;
  letter-spacing: 1px;
  font-family: 'Lato', serif;
  color: #fff;
}
.navpane-coursehome-link:hover {
  color: rgb(175,175,175);
}
.navpane-coursehome-mobile:focus,
.navpane-coursehome-mobile:active,
.navpane-coursehome-mobile:hover,
.navpane-coursehome-mobile {
  display: block;
  background-image: url("../statics.jpg");
  background-position: center center;
  background-size: 100% auto;
  height: auto;
  text-decoration: none;
  color: #fff;
  margin-top: 10px;
}
.list-group-item-h1:focus,
.list-group-item-h1:active,
.list-group-item-h1:hover,
.list-group-item-h1 {
  position: relative;
  display: block;
  padding: 10px 10px;
  color: #fff;
  background-color: rgb(50,50,50);
  border: 0;
  font-size: 16px;
  font-family: 'Lato', serif;
  letter-spacing: 2px;
  text-decoration: none;
  text-align: left;
}
.list-group-item-h2 {
  position: relative;
  display: block;
  padding: 3px 7px;
  color: #fff;
  background-color: rgb(34,40,52);
  border: 0;
  font-size: 16px;
  font-weight: bold;
  text-decoration: none;
}
.list-group-item-h2:focus,
.list-group-item-h2:active,
.list-group-item-h2:hover {
  color: #fff;
  background-color: rgb(51,60,74);
  border-color: rgb(51,60,74);
  text-decoration: none;
}
.list-group-item-h3:focus,
.list-group-item-h3:active,
.list-group-item-h3 {
  position: relative;
  display: block;
  padding: 3px 7px;
  margin-bottom: -1px;
  color: #fff;
  background-color: rgb(34,40,52);
  border: 1px solid #ddd;
  font-family: 'Lato', serif;
  font-size: 14px;
  text-decoration: none;
}
.list-group-item-h3:hover {
  color: #fff;
  background-color: rgb(21,71,108);
  text-decoration: none;
}
.list-group-item-h3-active {
  font-weight: bold !important;
}
.list-group-item-h3:before {
  /* symbol for "opening" panels */
  font-family: 'Glyphicons Halflings';
  content: "\e114";
  float: left;
  color: #fff;
  margin-right: 3px;
  font-weight: 100;
}
.list-group-item-h3.collapsed:before {
  /* symbol for "collapsed" panels */
  content: "\e080";
}
.list-group-item-h4:focus,
.list-group-item-h4:active,
.list-group-item-h4 {
  position: relative;
  display: block;
  padding: 1px 7px;
  padding-left: 25px;
  margin-bottom: -1px;
  color: #323232;
  background-color: #fff;
  border: 1px solid #ddd;
  font-family: 'Lato', serif;
  font-size: 14px;
  font-weight: bold;
  text-decoration: none;
}
.list-group-item-h4:hover {
  color: #323232;
  background-color: rgb(198,217,241);
  border-color: rgb(198,217,241);
  text-decoration: none;
}
.list-group-item-h4-alt {
  position: relative;
  display: block;
  padding: 1px 7px;
  padding-left: 25px;
  margin-bottom: -1px;
  color: #323232;
  background-color: #e8f2f9;
  border: 1px solid #ddd;
  font-family: 'Lato', serif;
  font-size: 14px;
  font-weight: bold;
  text-decoration: none;
}
.list-group-item-h4-alt:focus,
.list-group-item-h4-alt:active,
.list-group-item-h4-alt:hover {
  color: #323232;
  background-color: rgb(198,217,241);
  border-color: rgb(198,217,241);
  text-decoration: none;
}
.list-group-item-h4-active:focus,
.list-group-item-h4-active:active,
.list-group-item-h4-active:hover,
.list-group-item-h4-active {
  position: relative;
  display: block;
  padding: 1px 7px;
  padding-left: 25px;
  margin-bottom: -1px;
  color: #323232;
  background-color: rgb(255,255,200);
  border: 1px solid #ddd;
  font-family: 'Lato', serif;
  font-size: 14px;
  font-weight: bold;
  text-decoration: none;
}
/* Formatting for page title and theory/question area */
.textsize-desktop .h1-font {
  margin-top:0px;
  margin-bottom:35px;
  font-size:36px !important;
  color: rgb(21,71,108);
  font-weight:bold;
}
.textsize-mobile .h1-font {
  margin-top:30px;
  margin-bottom:25px;
  font-size:26px !important;
  color: rgb(21,71,108);
  font-weight:bold;
}
.textsize-desktop .h1-font-nomarginbtm {
  margin-top:0px;
  margin-bottom:0px !important;
  font-size:36px !important;
  color: rgb(21,71,108);
  font-weight:bold;
}
.textsize-mobile .h1-font-nomarginbtm {
  margin-top:30px;
  margin-bottom:0px !important;
  font-size:26px !important;
  color: rgb(21,71,108);
  font-weight:bold;
}
.textsize-desktop .h2-font {
  margin-top:50px;
  margin-bottom:20px;
  font-size:26px !important;
  color: rgb(21,71,108);
  font-weight:bold;
}
.textsize-mobile .h2-font {
  margin-top:40px;
  margin-bottom:15px;
  font-size:20px !important;
  color: rgb(21,71,108);
  font-weight:bold;
}
.textsize-desktop .h3-font {
  margin-top:15px;
  margin-bottom:20px;
  font-size:24px !important;
  font-weight:bold;
}
.textsize-mobile .h3-font {
  margin-top:10px;
  margin-bottom:10px;
  font-size:18px !important;
  font-weight:bold;
}
/* Formatting for Theory content */
.theory-area {
  padding-top:20px;
  background-color:transparent;
}
/* Formatting for Question Steps Togglebar (question-stepbar) */
.question-step-area {
  padding-top:20px;
  background-color: #eee;
}
.question-clickshowanswer {
  margin-right: 1px;
  font-size: 12px;
  color: #fff;
  background-color: rgb(80,80,80);
  padding: 4px 5px;
  border: 0;
  border-radius: 4px;
}
#close {
  /* For .question-clickshowanswer 'X' button formatting */
  color:#fff;
  padding:2px 5px;
  font-family: 'Lato', serif;
}
#close:hover {
  padding:2px 5px;
  color:#fff;
}
.panel-group-accordion {
  margin-top:-26px;
}
.question-stepbar:focus,
.question-stepbar:active,
.question-stepbar {
  display: block;
  color: #fff;
  background-color: rgb(34,40,52);
  border-color: rgb(34,40,52);
  border-radius:0;
  text-decoration: none;
}
.question-stepbar:hover {
  color: #fff;
  background-color: rgb(21,71,108);
  border-color: rgb(21,71,108);
  text-decoration: none;
}
.panel-group .panel {
  border-width: 1px;
  border-color: #d2d2d2;
  border-radius: 0px !important;
}
h4.panel-title {
  font-size: 18px !important;
}
.panel-heading .question-stepbar-toggle:after {
  /* symbol for "opening" panels */
  font-family: 'Glyphicons Halflings';
  content: "\e114";
  float: right;
  color: #fff;
  margin-left: 15px;
}
.panel-heading.collapsed .question-stepbar-toggle:after {
  /* symbol for "collapsed" panels */
  content: "\e252";
}
/* Formatting for the advertisement panels */
.ad-topleft {
  height: 250px;
  text-align: center;
  border-radius: 0px;
  margin-bottom: 40px;
  padding-top:40px;
  display: none;
}
.ad-bottom {
  width: 728px;
  height: 90px;
  text-align: center;
  border-radius: 0px;
  margin-top: 30px;
  margin-bottom: 30px;
  margin-left: auto;
  margin-right: auto;
  display: none;
}
.ad-bottom-area-question {
  background-color: #eee;
}
.ad-bottom-area-theory {
  background-color: transparent;
}
.ad-top {
  width: 728px;
  height: 90px;
  text-align: center;
  border-radius: 0px;
  margin-top: 20px;
  margin-bottom: 20px;
  margin-left: auto;
  margin-right: auto;
  display: none;
}
/* Formatting for topbar 728px ad fixed-width and sidebar 300px ad fixed-width */
.col-topbarleft, .col-topbarright, .col-sidebar, .col-maincontent {
  position: relative;
  min-height: 1px;
  padding-right: 15px;
  padding-left: 15px;
}
@media (min-width: 768px) {
  .col-sidebar, .col-maincontent {
    float: left;
  }
  .col-sidebar {
    width: 44%; /* this is for 300px ad width - 330/750
                        - 330 has 15 left and right paddings
                        - 750 is container width for 768 media */
  }
  .col-maincontent {
    width: 56%;
  }
}
@media (min-width: 992px) {
  .col-sidebar, .col-maincontent {
    float: left;
  }
  .col-sidebar {
    width: 34.021%; /* this is for 300px ad width - 330/970
                        - 330 has 15 left and right paddings
                        - 970 is container width for 992 media */
  }
  .col-maincontent {
    width: 65.979%;
  }
}
@media (min-width: 1200px) {
  .col-topbarleft, .col-topbarright, .col-sidebar, .col-maincontent {
    float: left;
  }
  .col-sidebar {
    width: 28.205%; /* this is for 300px ad width - 330/1170
                        - 330 has 15 left and right paddings
                        - 1170 is container width for 1200 media */
  }
  .col-maincontent {
    width: 71.795%;
  }
  .col-topbarleft {
    width: 35.2137%;
  }
  .col-topbarright {
    width: 64.7863%; /* this is for 728px ad width - 758/1170
                        - 758 has 15 left and right paddings
                        - 1170 is container width for 1200 media */
  }
}
/* Formatting for footer */
.footer-container {
  color: rgb(175,190,195);
  background-color: rgb(34,40,52);
  font-size: 14px;
  line-height: 25px;
  padding-top: 15px;
  padding-bottom: 75px;
  text-align: center;
  font-family: 'Lato', serif;
}
.footer-link {
  display: inline-block;
  border: none;
  margin-left: auto;
  margin-right: auto;
  font-weight: bold;
  color: rgb(175,190,195);
  text-decoration: none;
  text-align: center;
  background-color: transparent;
  width: 135px;
}
.footer-link:focus,
.footer-link:active,
.footer-link:hover {
  color: #eee;
  text-decoration: none;
}
/* Miscellaneous formatting */
.fit-width {
  width: 100%;
  max-width: 100%;
}.fit-width-scanned-image {
  width: 100%;
  max-width: 700px; /* ~700 is width of pic snipped at 100% */
}
.bold-emphasis-font {
  font-family: 'Lato', serif;
  font-weight: bold;
  display: inline;
}
.textsize-desktop {
  font-size: 18px !important;
}
.textsize-mobile {
  font-size: 15px !important;
  line-height: 20px !important;
}
.textsize-desktop .alegreya-font { /* font for numbers and symbols (e.g. Ixx) */
  font-family: 'Alegreya', serif;
  font-weight: bold;
  font-size: 20px !important; /* 2px more than standard 18px */
}
.textsize-mobile .alegreya-font { /* font for numbers and symbols (e.g. Ixx) */
  font-family: 'Alegreya', serif;
  font-weight: bold;
  font-size: 17px !important; /* 2px more than standard 15px */
}
.bullet-spacing {
  margin-bottom: 5px;
}
.question-nextpage {
  margin-top: 30px;
  margin-bottom: 20px;
}
ol {
    counter-reset: list;
}
ol > li {
    list-style: none;
    position: relative;
}
ol > li:before {
    counter-increment: list;
    content: counter(list, lower-alpha) ") ";
    position: absolute;
    left: -1.2em;
}
.bg-grey {
  background-color: #d2d2d2;
}
.container-fluid {
  padding-left:0px !important;
  padding-right:0px !important;
}
