html {
  /* Keep footer at bottom, regardless of page size */
  position: relative;
  min-height: 100%;
  padding-bottom: 6rem;
}

body {
    font-size:16px;
    line-height: 22px;
    font-family: Arial, Helvetica, sans-serif;
    -webkit-font-smoothing: antialiased; /* Fix for webkit rendering */
    -webkit-text-size-adjust: 100%;
}

h1, h2, h3 {
    font-family: 'Open Sans', sans-serif;
    font-weight: 300;
}

h1 {
    font-size: 44px;
    line-height: 44px;
    font-weight: 300;
    font-style: normal;
    text-align:center;
    text-transform:uppercase;
    position:relative;
    letter-spacing: 0.1em;
}

h2 {
    font-size: 25px;
}

h2.subTitle{
    font-size:24px;
    line-height: 24px;
    font-weight: 300;
    font-style: normal;
    padding:0;
    text-align:center;
}

h1.noSubtitle, h2.subTitle {
  margin-bottom:50px;
}

h2.subTitle:after, h1.noSubtitle:after, h1.noSubtitleSmallMargin:after {
    display:block;
    height:1px;
    width:100px;
    content:'';
    position:absolute;
    margin-left:-50px;
    margin-top: 20px;
    left:50%;
}

header {
    position: relative;
    height: 24rem;
    margin-bottom: 4rem;
    background-image: linear-gradient(rgba(0, 0, 0, 0.4), rgba(0, 0, 0, 0.4)), url("/static/img/capitol-building-2.jpg");
    background-position: 50% 50%;
    background-size: cover;
    color: #fff;
}

header a {
    color: #fff;
}

#logo {
    overflow: hidden;
    background-image: url(/static/img/logo.png);
    background-size: contain;
    background-repeat: no-repeat;
    margin: 3rem 0 3rem 0;
    width: 50%;
    height: 4rem;
    text-indent: 101%;
    white-space: nowrap;
    filter: invert(100%);
}

header h2 {
  font-size: 44px;
  line-height: 44px;
  margin-bottom: 0;
  font-weight: 300;
  font-family: 'Open Sans', sans-serif;
  padding-left: 0;
  border: none;
  color: #fff;
  text-transform: uppercase;
  text-align: center;
  text-shadow: 1px 1px 0 rgba(0, 0, 0, 0.2);
  letter-spacing: 0.1em;
}

.section-title {
    text-align: center;
    font-weight: bold;
}

footer {
  position: absolute;
  height: 4rem;
  bottom: 0;
  left: 0;
  right: 0;
  padding-top: 0.8rem;
  font-family: 'Open Sans', sans-serif;
  font-size: 80%;
}

footer a{
  font-weight: bold;
}

.steps {
  list-style: none;
  counter-reset: item;
  margin-left: 0;
  padding-left: 0;
}

.steps li {
  display: flex;
  border: thin solid #ddd;
  border-radius: 4px;
  margin: 1rem 0;
  font-size: 120%;
  counter-increment: item;
}

.steps li a {
  padding: 1rem;
  flex-grow: 1;
}

.steps li::before {
  content: counter(item);
  baaackground-color: red;
  width: 5%;
  border-right: thin solid #ddd;
  font-size: 144%;
  align-self: center;
  text-align: center;
}

.steps li.disabled {
  background: #eee;
}

.steps li.disabled a, .steps li.disabled::before {
  color: #999;
  border-color: #c4c4c4;
}

.steps li.enabled {
  background: #43B6B1;
  border-color: #4cada9;
}

.steps li.enabled a:hover {
  background: #30a6a1;
}

.steps li.enabled a, .steps li.enabled::before {
  color: white;
  border-color: #a1dad8;
}

.steps li.done {
  background: #8ed4d1;
  border-color: #8bc7c4;
}

.steps li.done a, .steps li.done::before {
  color: #d9f0ef;
  border-color: #bde5e3;
}

/* Disable underlining links without href */
.steps li a:hover {
  text-decoration: none;
}

.steps li a[href]:hover {
  text-decoration: underline;
}

div.session-date {
    font-family: 'Open Sans', sans-serif;
    font-size: 1.7rem;
    text-align: center;
    margin-top: .7142rem;
}

#apply-button {
    width: 8rem;
    margin: auto;
    margin-top: 1.5rem;
}

p.xl {
    font-size: 1.5714rem;
}

p.emphasis {
    font-style: italic;
}

h1.form-title {
    padding-bottom: 3rem;
}

.form-control {
    border: 0.0714285714rem solid #ccc;
    border-color: #777;
    border-radius: 0;
    color: #777;
    padding: .5rem .75rem;
    margin-bottom: 2.5rem;
}

.collapsing {
    float: left!important;
}

.collapse.in {
    float: left!important;
}

.modal-dialog {
    background: #fff;
}

.btn {
    text-transform:uppercase;
     -webkit-transition: all 0.2s ease-out;
    -moz-transition: all 0.2s ease-out;
    -o-transition: all 0.2s ease-out;
    -ms-transition: all 0.2s ease-out;
    transition: all 0.2s ease-out;
}

.btn.btn-sm:not(.btn-social) {
    padding:10px 13px;
    font-size:12px
}

.btn:not(.btn-social) {
    padding:15px 20px;
    font-size:18px;
}

.btn-lg:not(.btn-social) {
    padding:18px 23px;
    font-size:22px;
}

.btn-default {
    color: #fff;
}

.errors {
    color: #c71c22;
}

.col-form-label {
    padding-top: .5rem;
    padding-bottom: .5rem;
    margin-bottom: 0;
}

/*** utilies classes ***/
.mb5 {
        margin-top:0.5em;
}
.mb15 {
        margin-bottom:1.5em;
}
.mb20 {
        margin-bottom:2em;
}
.mb30 {
        margin-bottom:3em;
}
.mb40 {
        margin-bottom:4em;
}
.mt5 {
        margin-top:0.5em;
}
.mt10 {
        margin-top:1em;
}
.mt15 {
        margin-top:1.5em;
}
.mt20 {
        margin-top:2em;
}
.mt30 {
        margin-top:3em;
}
.mt40 {
        margin-top:4em;
}
