/*
* Prefixed by https://autoprefixer.github.io
* PostCSS: v7.0.29,
* Autoprefixer: v9.7.6
* Browsers: last 4 version
*/

/*	--------------------------------------------------
=Global Reset
-------------------------------------------------- */

/*html,*/
body {
  min-width: -webkit-min-content;
  min-width: -moz-min-content;
  min-width: min-content;
  margin:0;
  /* padding:0; */
}

h1,h2,h3,h4,h5,h6,
p,blockquote,img,a,
pre,abbr,acronym,address,cite,code,del,dfn,q,s,samp,small,strike,strong,em,sub,sup,tt,var,
dd,dl,dt,li,ol,ul,
fieldset,form,label,legend,button,
table,caption,tbody,tfoot,thead,tr,th,td {
  margin:0;
  padding:0;
  border:0;
  font-size:100%;
  line-height:1;
  font-family:inherit;
  max-width: inherit;
}

table {
  border-collapse:collapse;
  border-spacing:0;
  }
ol,ul { list-style:none; }
q:before,
q:after,
blockquote:before,
blockquote:after { content:""; }

.print-info {
  display:none;
  }

  /* -------------------------------------------- */
  /*                   BUTTONS                    */
  /* -------------------------------------------- */

button,
.button,
.btn {
  display: inline-block;
  background: rgb(255,255,255);
  background: -o-linear-gradient(top, rgba(255,255,255,1) 0%, rgba(228,228,228,1) 55%, rgba(228,228,228,1) 100%);
  background: -webkit-gradient(linear, left top, left bottom, from(rgba(255,255,255,1)), color-stop(55%, rgba(228,228,228,1)), to(rgba(228,228,228,1)));
  background: linear-gradient(180deg, rgba(255,255,255,1) 0%, rgba(228,228,228,1) 55%, rgba(228,228,228,1) 100%);
  min-width: -webkit-max-content;
  min-width: -moz-max-content;
  min-width: max-content;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  padding: 5px 11px 5px 11px;
  border-radius: 5px;
  text-transform: uppercase;
  font-size: 9px;
  color: #2D9FBE;
  -webkit-text-fill-color: #2D9FBE;
  -webkit-text-stroke-width: 0.05em;
  -webkit-text-stroke-color: #2D9FBE;
  -webkit-box-shadow: 1px 1px 3px 0px rgba(50, 50, 50, 0.75);
  box-shadow: 1px 1px 3px 0px rgba(50, 50, 50, 0.75);
  cursor: pointer;
  text-decoration: none;
}

button:hover,
.button:hover,
.btn:hover {
  background: rgb(255,255,255);
}

button:active,
.button:active,
.btn:active {
  -webkit-box-shadow: none;
          box-shadow: none;
  -webkit-filter: brightness(1.1);
          filter: brightness(1.1);
  border: none;
}

button.blue,
.button.blue,
.btn.blue {
  background: rgb(68,170,197);
  background: -o-linear-gradient(top, rgba(68,170,197,1) 0%, rgba(41,142,170,1) 75%, rgba(41,142,170,1) 100%);
  background: -webkit-gradient(linear, left top, left bottom, from(rgba(68,170,197,1)), color-stop(75%, rgba(41,142,170,1)), to(rgba(41,142,170,1)));
  background: linear-gradient(180deg, rgba(68,170,197,1) 0%, rgba(41,142,170,1) 75%, rgba(41,142,170,1) 100%);
  color: white;
  -webkit-text-fill-color: white;
  -webkit-text-stroke-width: 0.02em;
  -webkit-text-stroke-color: white;
}

button.blue:hover,
.button.blue:hover,
.btn.blue:hover {
  background: rgb(68,170,197);
}

button.red,
.button.red,
.btn.red {
  background: rgb(217,58,33);
  background: -o-linear-gradient(top, rgba(217,58,33,1) 0%, rgba(203,44,19,1) 50%, rgba(190,32,6,1) 100%);
  background: -webkit-gradient(linear, left top, left bottom, from(rgba(217,58,33,1)), color-stop(50%, rgba(203,44,19,1)), to(rgba(190,32,6,1)));
  background: linear-gradient(180deg, rgba(217,58,33,1) 0%, rgba(203,44,19,1) 50%, rgba(190,32,6,1) 100%);
  color: white;
  -webkit-text-fill-color: white;
  -webkit-text-stroke-width: 0.02em;
  -webkit-text-stroke-color: white;
}

button.red:hover,
.button.red:hover,
.btn.red:hover {
  background: rgb(217,58,33);
}

button.green,
.button.green,
.btn.green {
  background: rgb(146,183,88);
  background: -o-linear-gradient(top, rgba(146,183,88,1) 0%, rgba(130,167,72,1) 50%, rgba(119,156,60,1) 100%);
  background: -webkit-gradient(linear, left top, left bottom, from(rgba(146,183,88,1)), color-stop(50%, rgba(130,167,72,1)), to(rgba(119,156,60,1)));
  background: linear-gradient(180deg, rgba(146,183,88,1) 0%, rgba(130,167,72,1) 50%, rgba(119,156,60,1) 100%);
  color: white;
  -webkit-text-fill-color: white;
  -webkit-text-stroke-width: 0.02em;
  -webkit-text-stroke-color: white;
}

button.green:hover,
.button.green:hover,
.btn.green:hover {
  background: rgb(146,183,88);
}

button.black,
.button.black,
.btn.black {
  background: black;
  color:  white;
  -webkit-text-fill-color: white;
  -webkit-text-stroke-width: 0.02em;
  -webkit-text-stroke-color: white;
  border: 1px solid black;
}

button.black:hover,
.button.black:hover,
.btn.black:hover {
  background: #ccc;
  color: black;
  -webkit-text-fill-color: black;
  -webkit-text-stroke-width: 0.05em;
  -webkit-text-stroke-color: black;
}

button.small,
.button.small,
.btn.small {
  min-width: 10px;
  padding: 6px 10px 6px 10px;
  font-size: 10px;
}

button.tiny,
.button.tiny,
.btn.tiny {
  min-width: 10px;
  padding: 3px 7px 3px 7px;
  font-size: 8px;
}

button.med,
.button.med,
.btn.med {
  padding: 8px 14px 7px 14px;
  font-size: 10px;
}

/* -------------------------------------------- */


/*	--------------------------------------------------
=Links
-------------------------------------------------- */

a,a:visited {
  color:#3597b2;
  text-decoration:underline;
  outline:0;
  font-style:inherit;
  font-weight:inherit;
  }
a:hover { color:#007d9a; }

h1 a,
h1 a:visited,
h2 a,
h2 a:visited,
h3 a,
h3 a:visited {
  color:#333;
  text-decoration:none;
  }
h4 a,
h4 a:visited,
h5 a,
h5 a:visited {
  text-decoration:none;
  line-height:inherit;
  }
h3 a:hover { color:auto; }
h4 a:hover,
h5 a:hover { text-decoration:underline; }
p a,
p a:visited { line-height:inherit; }

a.nav_link,
a.nav_link:visited { text-decoration:underline; }
a.nav_link:hover { text-decoration:none; }

/*	--------------------------------------------------
=Typography
-------------------------------------------------- */

h1,h2,h3,h4,h5,h6 {
  color:#333;
  font-weight:bold;
  }
h1 {
  font-size:2.4em;
  line-height:1.2;
  color:#333;
  }
h2 {
  font-size:1.8em;
  line-height:1.25;
  margin:0 0 9px 0;
  }
h3 {
  font-size:1.5em;
  line-height:1;
  margin:0;
  padding:0px 0 7px 0;
  text-transform:uppercase;
  position:relative;
  }

h1.small,
h2.small,
h3.small { text-transform:uppercase; }
h1.small { font-size:1.8em; }
h2.small { font-size:1.4em; }
h3.small { font-size:1.2em; }

div.more-hack {
  font-size: 9px;
  /* float applies when more-hack is not used in an a.more wrapper */
  float: right;
}

h3.block {
  padding-top: 8px;
  padding-right: 10px;
  margin-bottom: 14px;
  border-radius: 5px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
}

h3 a.more {
  font-size: 11px;
  text-transform: uppercase;
  margin-top: auto;
  margin-bottom: auto;
  padding-right: 5px;
  margin-left: auto;
}

h3.block.green {
  background: #E0EBD0;
  border-left: 12px solid #85AE43;
  padding-left: 5px;
}

h3.block.green a.more { color:#777; }

h3.block.black {
  color:#fff;
  background: black;
  border-left: 12px solid #85AE43;
  padding-left: 5px;
}

h3.block.black a.more { color:#ccc; }

h4 {
  font-size:11px;
  display:block;
  background:#eaeaea;
  height:12px;
  padding:5px 0 5px 7px;
  font-weight:normal;
  color:#797979;
  margin-bottom:12px;
  position:relative;
  }
h4 a {
  font-size:11px;
  position:absolute;
  right:10px;
  top:5px;
  color:#999 !important;
  text-decoration:underline !important;
  }

h5 {
  font-size:1.2em;
  line-height:1.285714;
  }
h6 {
  font-size:1.0em;
  line-height:1.5;
  }

p {
  font-size:12px;
  line-height:1.5;
  margin:0 0 1.2em;
  color:#444;
  /* max-width: fit-content; */
  }

em {
  font-style:italic;
  font-weight:inherit;
  line-height:inherit;
  color:#666;
  }
strong {
  font-style:inherit;
  font-weight:bold;
  line-height:inherit;
  }

p small {
  font-size:91.666667%;
  line-height:1.616161;
  color:#666;
  }
h1 small {
  font-size:66.666667%;
  color:#777;
  }

h1.muted,
h2.muted,
h3.muted,
h4.muted,
h5.muted { font-weight:normal; }

hr {
  border:0;
  border-top:1px solid #ddd;
  clear:both;
  margin:11px 0 12px;
  height:0;
}
hr.spacious { margin:26px 0 27px; }

address {
  color:#333;
  font-size:1.2em;
  line-height:1.5;
  margin:0 0 1.5em;
  }

code,pre {
  font:1.2em/1.6 "Monaco","Courier New","Courier",monospace;
  color:#444;
  }

blockquote {
  margin-top:10px;
  font-size:11px;
  }

/*	--------------------------------------------------
=Lists
-------------------------------------------------- */

dt {
  font-size:1.2em;
  line-height:1.5;
  font-weight:bold;
  color:#333;
  }
dd {
  margin:0 0 1.5em;
  font-size:1.2em;
  line-height:1.5;
  }

ol,ul { margin:0 0 1.8em 2.6em; }
ol { list-style:decimal; }

ul {
  list-style:square;
  /*
  min-width: -webkit-max-content;
  min-width: -moz-max-content;
  min-width: max-content;
  */
}

li {
  font-size:1.2em;
  line-height:1.5;
  }
li ol,li ul { margin:0 2em; }
li li { font-size:1em; }

/*	--------------------------------------------------
=Tables
-------------------------------------------------- */

table {
  /* width:100%; */
  margin:0 0 1.8em;
  }
thead,
ul li.thead {
  background:#555;
  cursor:pointer;
  }
thead.nopoint { cursor:default; }
td,
th,
ul li.thead span {
  font-size:1.2em;
  line-height:1.5;
  padding:2px 3px;
  }
th,
ul li.thead span {
  font-weight:bold;
  color:#fff;
  }
tr.alt td { background:#f5f5f5; }
tr { border-bottom:solid 1px #eee; }

table a,
table a:visited { text-decoration:none; }

th.headerSortUp { background:url(/images/column_sort_up.gif) no-repeat right #222; }
th.headerSortDown { background:url(/images/column_sort_down.gif) no-repeat right #222; }

th.right {
  text-align:right;
  background-position:left;
  }
td.right { text-align:right; }

table.sortable {
  width: 100%;
}

table.sortable tbody tr:hover {
  background: #eee;
}

table.light {
  margin:0 0 28px 0;
  padding:0;
  border:none;
  width: 100%;
}

table.last-in-line { margin-bottom:0; }
table.light tr { border-bottom:solid 1px #eee; }
table.light td {
  padding-left:0;
  border:none;
}
table.light td.right {
  text-align:right;
  font-weight:bold;
  }

/*

UP/DOWN Arrows on Price/% Changes

*/


span.up {
    font-weight:bold;
    color:#3da72e;
    white-space: nowrap;
}

span.down {
  font-weight:bold;
  color:#bf1f11;
  white-space: nowrap;
}

span.no_change {
  font-weight:bold;
  color:#999;
  white-space: nowrap;
}

span.no_change::before,
span.up::before,
span.down::before {
  content: '\27A4';
  display: inline-block;
  font-size: 0.8em;
  /* margin-right: -0.3em; */
}

span.no_change::before,
span.up::before {
  transform: rotateZ(-90deg) scaleY(1.4);
  padding-left: 0.3em;
}

span.down::before {
  transform: rotateZ(90deg) scaleY(1.4);
  padding-right: 0.3em;
}

span.no_change::before {
  color: #9990;
}


span.high {
  font-weight:bold;
  color:#3da72e;
}
span.low {
  font-weight:bold;
  color:#bf1f11;
}

/*
col { border-right:solid 1px #ddd; }
*/

tfoot tr td {
  background:#eee;
  font-weight:bold;
  }

/*	--------------------------------------------------
=Forms
-------------------------------------------------- */

form {
  margin:0 0 1.5em;
  text-align:left;
  }
form input { clear:both; }

div.form_block {
  display:block;
  padding:8px;
  margin-bottom:14px;
  margin-top:8px;
  }
div.form_block span {
  margin:0;
  padding:0;
  font-size:12px;
  }
div.form_block span a { color:#000; }
div.form_block.error {
  border-left:solid 10px red;
  background:#f9c5c5;
  color: black;
  font-size:14px;
  font-weight: bold;
}
div.form_block.info {
  border-left:solid 10px blue;
  background:#d0e8f7;
  color: black;
  font-size:14px;
  font-weight: bold;
}
div.form_block.warn {
  border-left:solid 10px orange;
  background: lightgoldenrodyellow;
  color: black;
  font-size:14px;
  font-weight: bold;
}
div.form_block.success {
  border-left:solid 10px green;
  background: #d1ffd1;
  color: black;
  font-size:14px;
  font-weight: bold;
}


input[type=text],
input[type=password],
textarea {
  background:#fff;
  display:block;
  margin:0 0 1em;
  padding:3px 4px;
  font:1.2em/1.5 Helvetica Neue,"Arial",Helvetica,Verdana,sans-serif;
  text-shadow:0 0 0 #000;
  border:1px solid #ddd;
  border-top-color:#777;
  border-left-color:#777;
  color:#555;
  display:inline;
  }
input.large.input { width:90%; }

form input[type=text] {
  width:200px;
  margin-right:8px;
  }
form input[type=password] {
  width:200px;
  margin-right:8px;
  }

form label {
  position:relative;
  top:-3px;
  margin-top:6px;
  font-size:12px;
  font-weight:bold;
  line-height:1.5;
  cursor:pointer;
  }
form input[type=text] + label { top:-3px; }
form label.above { top:0px; }

form textarea {
  clear:both;
  width:400px;
  height:120px;
  }

form p { margin-bottom:4px; }

div.form_error {
  display:inline-block;
  display:-moz-inline-box;
  height:16px;
  font-size:11px;
  padding:5px 8px 0px 14px;
  font-size:11px;
  color:#fff;
  background:url(/images/inline_error_background.gif) no-repeat top left #cb2c13;
  position:relative;
  left:4px;
  bottom:5px;
  border-radius:4px;
  -moz-border-radius:4px;
  -webkit-border-radius:4px;
}

.ff2 div.form_error { bottom:12px; }
div.form_error a {
  color:#fff;
  text-decoration:underline;
  }


/*	--------------------------------------------------
=Grid
-------------------------------------------------- */

div.column-row {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-line-pack: stretch;
      align-content: stretch;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}


div.column-row.nowrap {
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
}

.flex-row-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  flex-direction: row;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.flex-row-wrap.center {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
        }

.flex-column-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.flex-column-wrap.center {
  -ms-flex-line-pack: center;
  align-content: center;
}


div.columns {
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
}

div.columns.last {
  max-width: unset !important;
}

/*
div.columns:last-child {
  margin-right: auto;
}

div.columns:first-child {
  margin-left: auto;
}
*/

/*

!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

NOTE: The contextual usage of these number classes for columns is INCONSISTENT.
Some places the layout assumes 4 == 4 columns in the row and this column ia 1/4...
other places the layout assumes 4 == 4/12 = 33% of the row.

!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

*/

div.columns.twelve {
  width:100%;
}

div.columns.eight {
  -webkit-box-flex: 8;
  -ms-flex-positive: 8;
  flex-grow: 8;
}

/* 4 col == 3/12 ea = 25% */
div.columns.four {
  -ms-flex-preferred-size: 25%;
  flex-basis: 25%;
  -webkit-box-flex: 4;
  -ms-flex-positive: 4;
  flex-grow: 4;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: stretch;
  -ms-flex-align: stretch;
  align-items: stretch;
}

/* 3 col == 4/12 ea = 33% -> 30%*/
div.columns.three {
  -ms-flex-preferred-size: 30%;
  flex-basis: 30%;
  -webkit-box-flex: 4;
  -ms-flex-positive: 4;
  flex-grow: 4;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: stretch;
  -ms-flex-align: stretch;
  align-items: stretch;
}

div.columns.one {
  max-width: -webkit-fit-content;
  max-width: -moz-fit-content;
  max-width: fit-content;
  margin: 0 auto;
}

@media only screen and (min-width: 1200px) {
  #bodywrap div.column-row {
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto;
  }

  div.columns.eight {
    max-width: 725px;
  }

  div.columns.four {
    max-width: 325px;
  }

}

/*
div.columns.two { width:150px; }
*/

/* UNUSED
div.columns.three { width:232px; }
div.columns.five { width:396px; }
div.columns.six { width:478px; }
div.columns.seven { width:560px; }
div.columns.nine { width:724px; }
div.columns.ten { width:806px; }
div.columns.eleven { width:888px; }
div.columns.half { width:46em; }
div.columns.third { width:30em; }
*/

/*	--------------------------------------------------
=Layout
-------------------------------------------------- */

body {
  font:normal 62.5%/1 "Helvetica Neue",Helvetica,Arial,Verdana,sans-serif;
}

#announce_bar {
  background:#3b3b3b;
  color:#84b84b;
  text-align:center;
  font-size:1.2em;
  padding:5px 20px 3px 20px;
}

div#announce_bar a,a:visited,a:hover {
  color:#84b84b;
}
div#announce_bar a:hover {
  text-decoration: none;
}


#bodywrap {
  color:#333;
  background: -o-linear-gradient(bottom, rgba(255,255,255,1) 0%, rgba(221,221,221,1) 70%, rgba(217,217,217,1) 100%);
  background: -webkit-gradient(linear, left bottom, left top, from(rgba(255,255,255,1)), color-stop(70%, rgba(221,221,221,1)), to(rgba(217,217,217,1)));
  background: linear-gradient(0deg, rgba(255,255,255,1) 0%, rgba(221,221,221,1) 70%, rgba(217,217,217,1) 100%);
}

#bodywrap div.column-row {
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
}

div#container,
div.container {
  margin:0 auto;
  margin-right: 10px;
  margin-left: 10px;
  position:relative;
}

/* Whitebox - the means to create a rounded-corner white box against the gradient background */

div.whitebox_content {
  position:relative;
  padding: 10px;
  background: white;
  border-radius: 5px 5px 5px 5px;
  margin: 5px;
}

@media only screen and (max-width: 700px) {
  div.whitebox_content {
    padding: 5px;
  }
}
/*
  h3 -> not included as it's used all over without additional classes with a 'more' link that is
  supposed to be right-aligned. Adding H3 here limits the width of the H3 block when it's intention
  in the actual templates is to be a full-width block.
*/
div.whitebox_content p, h1, h2, h4, h5 {
  max-width: -webkit-fit-content;
  max-width: -moz-fit-content;
  max-width: fit-content;
}

div.whitebox_content li {
  max-width: -webkit-fit-content;
  max-width: -moz-fit-content;
  max-width: fit-content;
}

div.whitebox_content.outside {
  background:#fff;
  padding:0 0px 15px 0px;
  position:relative;
  z-index:1;
}


/*
div.navbox_start {
  display:block;
  height:10px;
  margin:-45px 0 0 0;
  position:relative;
  top:45px;
  background: #8f8f8f;
  border-radius: 5px 5px 0px 0px;
}
div.navbox_start span { float:left; }
div.navbox_start span.left {
  display:block;
  height:10px;
  width:50%;
  margin:0;
  padding:0;
  background:url(/images/navbox_start.gif) no-repeat top left;
  }
div.navbox_start span.right {
  display:block;
  height:10px;
  width:50%;
  margin:0;
  padding:0;
  background:url(/images/navbox_start.gif) no-repeat top right;
  }
*/

div.navbox_content {
  padding: 5px 10px 30px 10px;
  position: relative;
  z-index: 0;
  background: #8f8f8f;
  border-radius: 5px 5px 0px 0px;
  margin-bottom: -32px;
  margin-top: 5px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

div.spacer {
  width: 1px;
  clear: both;
}