* { -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box; }

body {
  color: #444;
  font-family: "HelveticaNeue-Light", "Helvetica Neue Light", "Helvetica Neue", Helvetica, Arial, "Lucida Grande", sans-serif; 
  font-weight: 300;
}

img.scale-width { width: 100%; }

.red { color: #ef4e3a; }
.strike-through { text-decoration: line-through; }

h3.break { margin-top: 1em; }
h3.break:before {
  content: '';
  display: block;
  width: 100%;
  height: 1px;
  background-color: rgb(255,225,225);
  margin-bottom: -20px;
}
h3.break span { background-color: white; padding-right: 10px; }

.card:first-child { margin-bottom: 4em; }

.list:last-child { margin-bottom: 2em; }

.item p {
  overflow: visible;
  white-space: normal;
}

.announce-panel {
  padding: 10px;
  margin: 10px;
  border: 2px solid #DF0000;
  border-radius: 2px;
  background: #FF7C7C;
  color: white !important;
}

.info-panel {
  padding: 10px;
  margin: 10px;
  border: 1px solid #A7C6FC;
  border-radius: 2px;
  background: #F6F9FE;
  color: #777;
}
.info-panel h3 { color: #00457c; }

table + h4 { margin-top: 50px; }

table { width: 100%; margin-bottom: 3em; }

table thead th { color: white; text-align: right; padding: 8px; }
table thead th:first-child {
  text-align: left;
  border-top-left-radius: 5px;
}
table thead th:last-child { border-top-right-radius: 5px; }

table thead tr:first-child, .item.item-divider { background-color: #ef4e3a; }
.item.item-divider { color: white; }

table tbody tr:nth-child(even), table tbody td[rowspan] { background-color: rgb(255,235,235); }
table tbody td[rowspan] { border-top: 1px solid #ffd0ca;}
table tbody tr:first-child > td[rowspan] { border-top: 0;}

table tbody tr:last-child td:first-child { border-bottom-left-radius: 5px; }
table tbody tr:last-child td:last-child { border-bottom-right-radius: 5px; }

table tbody td { 
  padding: 8px;
  vertical-align: middle;
  text-align: right;
}
table tbody td:first-child { text-align: left; }
table tbody.rs-override td:first-child { text-align: right; }
table tbody.rs-override td:first-child[rowspan] { text-align: center; }

table tbody td:last-child { color: #805858; font-style: italic; }
table tbody td.group-instructions { text-align: center; background-color: white; }
table tbody td.group-instructions span{
  font-style: italic;
  padding: 5px 20px;
  background-color: #ef4e3a;
  border-radius: 4px;
  color: white;
}

table tbody td[rowspan] {
  vertical-align: middle;
  text-align: center;
  color: #444;
  font-style: normal;
}
