/*****************************************
  major breakpoints
*****************************************/
/* largeRes: 64em - 1024px*/
/* medRes: 48em - 768px*/
/* smallRest: 46.625em - 746px*/
/*****************************************
  layout
*****************************************/
html{
  background-color: #efefef;
}
body{
  position: relative;
  background-color: #efefef;
  min-width: 320px;
  height: auto;
  font-family: 'A1Sans', Verdana, Arial, sans-serif;
  font-weight: 400;
  font-size: 0.875rem;
  line-height: 1.5;
  color: #000;
  margin-bottom: 0;
}
*:focus{
  outline-color: #bbb;
}
.clearfix:before,
.clearfix:after{
  content: ' ';
  display: table;
}
.clearfix:after{
  clear: both;
}
.offscreen{
  position: absolute;
  width: 1px;
  height: 1px;
  clip: rect(1px, 1px, 1px, 1px);
  clip: rect(1px 1px 1px 1px);
  /* IE6, IE7 */
  overflow: hidden;
}
.right-aligned{
  float: right;
}
hr.divider{
  margin: 0;
}

/* section */
section header{
  padding: 2.5rem 1.875rem 0.625rem;
}
@media only screen and (max-width: 48em){
  section header{
    padding: 2.5rem 1.25rem 0; /* TODO: change in ppp (int647) */
  }
}
@media only screen and (max-width: 46.625em){
  section header{
    padding: 1.875rem 0.9375rem 0.625rem; /* TODO: change in ppp (int647) */
  }
}
section .small-padded{
  padding: 1.875rem;
}
@media only screen and (max-width: 48em){
  section .small-padded{
    padding: 1.25rem 0.9375rem 0.9375rem;
  }
}

/* article */
article{
  position: relative;
}

/*****************************************
  lists and bullets
*****************************************/
ul.grey-bullets{
  font-size: 0.875rem;
  list-style-type: none;
  margin: 0;
  padding: 0;
  margin-bottom: 1.625rem;
}
ul.grey-bullets li{
  padding-left: 1.625rem;
  margin-bottom: 0.625rem;
}
ul.grey-bullets li:before{
  display: inline-block;
  margin-left: -1.625rem;
  margin-right: 1.125rem;
  margin-top: 0.4375rem;
  font-family: 'A1iconfont';
  color: #6295ac;
  content: '\e60b';
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  line-height: 1;
  font-size: 0.625rem;
  float: left;
  text-transform: none;
}
ul.check-list{
  list-style-type: none;
  margin: 0 0 1.5625rem 2rem;
}
ul.check-list li{
  margin-bottom: 0.5rem;
}
ul.check-list li:before{
  display: inline-block;
  margin-left: -2rem;
  margin-right: 0;
  margin-top: 0.25rem;
  font-family: 'A1iconfont';
  font-size: 1rem;
  color: #6295ac;
  content: '\e610';
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  line-height: 1;
  float: left;
  text-transform: none;
}
@media only screen and (max-width: 48em){
  ul.grey-bullets li:before{
    margin-top: 0.25rem;
  }
  ul.check-list li:before{
    margin-top: 0.0625rem;
    font-size: 0.875rem;
  }
}
@media only screen and (max-width: 46.625em){
  ul.grey-bullets {
    font-size: 0.75rem;
  }
}

/*****************************************
  breadcrumb
*****************************************/
#breadcrumb-element{
  background-color: #fff;
}
#breadcrumb-element .row{
  margin-bottom: 0;
}
#breadcrumb-element a{
  font-size: 0.75rem;
  height: 2.25rem;
  line-height: 2.25rem;
  display: inline-block;
  color: #da291c;
}
#breadcrumb-element a:hover,
#breadcrumb-element a:focus{
  color: #ba2319;
}
#breadcrumb-element a:active{
  color: #000;
}
#breadcrumb-element ul{
  list-style-type: none;
  margin-left: -0.125rem;
}
#breadcrumb-element ul li{
  float: left;
}
#breadcrumb-element ul li:before{
  position: relative;
  top: 1px;
  margin: 0 0.75rem;
  font-family: 'A1iconfont';
  font-weight: 700;
  content: '\e607';
  height: 2.5rem;
  color: #808080;
  font-size: 0.75rem;
  line-height: 0.75rem;
}
#breadcrumb-element ul li:first-child:before{
  display: none;
}
#breadcrumb-element ul li:last-child a,
#breadcrumb-element ul li a.no-link,
#breadcrumb-element ul li:last-child a:hover,
#breadcrumb-element ul li:last-child a:focus,
#breadcrumb-element ul li:last-child a:active{
  color: #000;
  cursor: default;
}

/*****************************************
  button-container
*****************************************/
.button-container.right-aligned .button,
.button-container.right-aligned button{
  float: left;
  margin-left: 1rem;
}
.button-container.right-aligned .button:first-child,
.button-container.right-aligned button:first-child{
  margin-left: 0;
}
@media only screen and (max-width: 46.625em){
  .button-container.right-aligned{
    width: 100%;
    float: none;
  }
  .button-container.right-aligned .button.mobile-full,
  .button-container.right-aligned button.mobile-full{
    float: none;
    margin-left: 0;
    margin-right: 0;
    margin-top: 0.9375rem;
  }
  .button-container.right-aligned .button.mobile-full:first-child,
  .button-container.right-aligned button.mobile-full:first-child{
    margin-top: 0;
  }
}

/* inverse button order */
.button-container.right-aligned.inverse-button-order button,
.button-container.right-aligned.inverse-button-order .button{
  float: right;
  margin-left: 0rem;
  margin-right: 1rem;
}
.button-container.right-aligned.inverse-button-order button:first-child,
.button-container.right-aligned.inverse-button-order .button:first-child{
  margin-right: 0;
}
@media only screen and (max-width: 46.625em){
  .button-container.right-aligned.inverse-button-order button,
  .button-container.right-aligned.inverse-button-order .button{
    margin-left: 0;
    margin-right: 0;
  }
}