.b1-display {
  font-size: 64px;
  font-family: "Futura PT Demi", sans-serif;
  line-height: 1; }
  @media (min-width: 768px) and (max-width: 991px) {
    .b1-display {
      font-size: 48px;
      line-height: 1.25; } }
  @media (max-width: 767px) {
    .b1-display {
      font-size: 36px;
      line-height: 1.25; } }

.b1-title1 {
  font-size: 48px;
  font-family: "Futura PT Demi", sans-serif;
  line-height: 1.25; }
  @media (min-width: 768px) and (max-width: 991px) {
    .b1-title1 {
      font-size: 36px;
      line-height: 1.25; } }
  @media (max-width: 767px) {
    .b1-title1 {
      font-size: 28px;
      line-height: 1.25; } }

.b1-title2 {
  font-size: 36px;
  font-family: "Futura PT Demi", sans-serif;
  line-height: 1.25; }
  @media (min-width: 768px) and (max-width: 991px) {
    .b1-title2 {
      font-size: 28px;
      line-height: 1.25; } }
  @media (max-width: 767px) {
    .b1-title2 {
      font-size: 24px;
      line-height: 1.25; } }

.b1-title3 {
  font-size: 28px;
  font-family: "Futura PT Demi", sans-serif;
  line-height: 1.25; }
  @media (min-width: 768px) and (max-width: 991px) {
    .b1-title3 {
      font-size: 24px;
      line-height: 1.25; } }
  @media (max-width: 767px) {
    .b1-title3 {
      font-size: 24px;
      line-height: 1.25; } }

.b1-large {
  font-size: 24px;
  font-family: "Futura PT Demi", sans-serif;
  line-height: 1.25; }
  @media (min-width: 768px) and (max-width: 991px) {
    .b1-large {
      font-size: 18px;
      line-height: 1.25; } }
  @media (max-width: 767px) {
    .b1-large {
      font-size: 18px;
      line-height: 1.25; } }

.b1-medium {
  font-size: 18px;
  font-family: "Futura PT Demi", sans-serif;
  line-height: 1.25; }

.b1-base {
  font-size: 16px;
  font-family: "Futura PT Book", sans-serif;
  line-height: 1.5; }

.b1-small {
  font-size: 14px;
  font-family: "Futura PT Book", sans-serif;
  line-height: 1.25; }

.b1-micro {
  font-size: 12px;
  font-family: "Futura PT Book", sans-serif;
  line-height: 1;
  text-transform: uppercase; }

.b1-bold {
  font-family: "Futura PT Demi", sans-serif; }

.b1-light {
  font-family: "Futura PT Book", sans-serif; }

.b1-display {
  font-size: 64px;
  font-family: "Futura PT Demi", sans-serif;
  line-height: 1; }
  @media (min-width: 768px) and (max-width: 991px) {
    .b1-display {
      font-size: 48px;
      line-height: 1.25; } }
  @media (max-width: 767px) {
    .b1-display {
      font-size: 36px;
      line-height: 1.25; } }

.b1-title1 {
  font-size: 48px;
  font-family: "Futura PT Demi", sans-serif;
  line-height: 1.25; }
  @media (min-width: 768px) and (max-width: 991px) {
    .b1-title1 {
      font-size: 36px;
      line-height: 1.25; } }
  @media (max-width: 767px) {
    .b1-title1 {
      font-size: 28px;
      line-height: 1.25; } }

.b1-title2 {
  font-size: 36px;
  font-family: "Futura PT Demi", sans-serif;
  line-height: 1.25; }
  @media (min-width: 768px) and (max-width: 991px) {
    .b1-title2 {
      font-size: 28px;
      line-height: 1.25; } }
  @media (max-width: 767px) {
    .b1-title2 {
      font-size: 24px;
      line-height: 1.25; } }

.b1-title3 {
  font-size: 28px;
  font-family: "Futura PT Demi", sans-serif;
  line-height: 1.25; }
  @media (min-width: 768px) and (max-width: 991px) {
    .b1-title3 {
      font-size: 24px;
      line-height: 1.25; } }
  @media (max-width: 767px) {
    .b1-title3 {
      font-size: 24px;
      line-height: 1.25; } }

.b1-large {
  font-size: 24px;
  font-family: "Futura PT Demi", sans-serif;
  line-height: 1.25; }
  @media (min-width: 768px) and (max-width: 991px) {
    .b1-large {
      font-size: 18px;
      line-height: 1.25; } }
  @media (max-width: 767px) {
    .b1-large {
      font-size: 18px;
      line-height: 1.25; } }

.b1-medium {
  font-size: 18px;
  font-family: "Futura PT Demi", sans-serif;
  line-height: 1.25; }

.b1-base {
  font-size: 16px;
  font-family: "Futura PT Book", sans-serif;
  line-height: 1.5; }

.b1-small {
  font-size: 14px;
  font-family: "Futura PT Book", sans-serif;
  line-height: 1.25; }

.b1-micro {
  font-size: 12px;
  font-family: "Futura PT Book", sans-serif;
  line-height: 1;
  text-transform: uppercase; }

.b1-bold {
  font-family: "Futura PT Demi", sans-serif; }

.b1-light {
  font-family: "Futura PT Book", sans-serif; }

.b1-load-container {
  position: relative; }

.b1-load-container div {
  width: 6px;
  height: 6px;
  background-color: #00879e;
  position: absolute;
  top: 45%;
  border-radius: 50%; }

.b1-load-container div:nth-child(1) {
  animation: load-move 3.8s infinite cubic-bezier(0.2, 0.64, 0.81, 0.23); }

.b1-load-container div:nth-child(2) {
  animation: load-move 3.8s 285ms infinite cubic-bezier(0.2, 0.64, 0.81, 0.23); }

.b1-load-container div:nth-child(3) {
  animation: load-move 3.8s 570ms infinite cubic-bezier(0.2, 0.64, 0.81, 0.23); }

.b1-load-container div:nth-child(4) {
  animation: load-move 3.8s 855ms infinite cubic-bezier(0.2, 0.64, 0.81, 0.23); }

@keyframes load-move {
  0% {
    left: 0%; }
  100% {
    left: 100%; } }

.chromeframe {
  margin: 0.2em 0;
  background: #ccc;
  color: #000;
  padding: 0.2em 0; }

.screen-loader-wrapper {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 9998; }

.screen-loader {
  display: block;
  position: relative;
  left: 50%;
  top: 50%;
  width: 150px;
  height: 150px;
  margin: -75px 0 0 -75px;
  border-radius: 50%;
  border: 4px solid transparent;
  border-top-color: #00879e;
  -webkit-animation: spin 2s linear infinite;
  /* Chrome, Opera 15+, Safari 5+ */
  animation: spin 2s linear infinite;
  /* Chrome, Firefox 16+, IE 10+, Opera */
  z-index: 9999; }
  .screen-loader:before {
    content: "";
    position: absolute;
    top: 5px;
    left: 5px;
    right: 5px;
    bottom: 5px;
    border-radius: 50%;
    border: 4px solid transparent;
    border-top-color: #00879e;
    -webkit-animation: spin 3s linear infinite;
    /* Chrome, Opera 15+, Safari 5+ */
    animation: spin 3s linear infinite;
    /* Chrome, Firefox 16+, IE 10+, Opera */ }
  .screen-loader:after {
    content: "";
    position: absolute;
    top: 15px;
    left: 15px;
    right: 15px;
    bottom: 15px;
    border-radius: 50%;
    border: 4px solid transparent;
    border-top-color: #00879e;
    -webkit-animation: spin 1.5s linear infinite;
    /* Chrome, Opera 15+, Safari 5+ */
    animation: spin 1.5s linear infinite;
    /* Chrome, Firefox 16+, IE 10+, Opera */ }

@keyframes spin-stretch {
  50% {
    transform: translate(-50%, -50%) rotate(360deg) scale(0.4, 0.4);
    border-width: 8px; }
  100% {
    transform: translate(-50%, -50%) rotate(720deg) scale(1, 1);
    border-width: 4px; } }

@-webkit-keyframes spin {
  0% {
    -webkit-transform: rotate(0deg);
    /* Chrome, Opera 15+, Safari 3.1+ */
    -ms-transform: rotate(0deg);
    /* IE 9 */
    transform: rotate(0deg);
    /* Firefox 16+, IE 10+, Opera */ }
  100% {
    -webkit-transform: rotate(360deg);
    /* Chrome, Opera 15+, Safari 3.1+ */
    -ms-transform: rotate(360deg);
    /* IE 9 */
    transform: rotate(360deg);
    /* Firefox 16+, IE 10+, Opera */ } }

@keyframes spin {
  0% {
    -webkit-transform: rotate(0deg);
    /* Chrome, Opera 15+, Safari 3.1+ */
    -ms-transform: rotate(0deg);
    /* IE 9 */
    transform: rotate(0deg);
    /* Firefox 16+, IE 10+, Opera */ }
  100% {
    -webkit-transform: rotate(360deg);
    /* Chrome, Opera 15+, Safari 3.1+ */
    -ms-transform: rotate(360deg);
    /* IE 9 */
    transform: rotate(360deg);
    /* Firefox 16+, IE 10+, Opera */ } }

.screen-loader-wrapper .screen-loader-section {
  position: fixed;
  top: 0;
  width: 100%;
  height: 100%;
  background: undefined;
  background: var(--color-light);
  z-index: 9998; }

/* Loaded styles */
.loaded .screen-loader-wrapper .screen-loader-section {
  opacity: 0;
  -webkit-transition: all 0.7s 0.3s cubic-bezier(0.645, 0.045, 0.355, 1);
  /* Android 2.1+, Chrome 1-25, iOS 3.2-6.1, Safari 3.2-6  */
  transition: all 0.7s 0.3s cubic-bezier(0.645, 0.045, 0.355, 1);
  /* Chrome 26, Firefox 16+, iOS 7+, IE 10+, Opera, Safari 6.1+  */ }

.loaded .screen-loader {
  opacity: 0;
  -webkit-transition: all 0.3s ease-out;
  /* Android 2.1+, Chrome 1-25, iOS 3.2-6.1, Safari 3.2-6  */
  transition: all 0.3s ease-out;
  /* Chrome 26, Firefox 16+, iOS 7+, IE 10+, Opera, Safari 6.1+  */ }

.loaded .screen-loader-wrapper {
  visibility: hidden;
  -webkit-transform: translateY(-100%);
  /* Chrome, Opera 15+, Safari 3.1+ */
  -ms-transform: translateY(-100%);
  /* IE 9 */
  transform: translateY(-100%);
  /* Firefox 16+, IE 10+, Opera */
  -webkit-transition: all 0.3s 1s ease-out;
  /* Android 2.1+, Chrome 1-25, iOS 3.2-6.1, Safari 3.2-6  */
  transition: all 0.3s 1s ease-out;
  /* Chrome 26, Firefox 16+, iOS 7+, IE 10+, Opera, Safari 6.1+  */ }

#content {
  margin: 0 auto;
  padding-bottom: 50px;
  width: 80%;
  max-width: 978px; }

/* ==========================================================================
   Helper classes
   ========================================================================== */
/*
 * Image replacement
 */
.ir {
  background-color: transparent;
  border: 0;
  overflow: hidden;
  /* IE 6/7 fallback */
  *text-indent: -9999px; }

.ir:before {
  content: "";
  display: block;
  width: 0;
  height: 150%; }

/*
 * Hide from both screenreaders and browsers: h5bp.com/u
 */
.hidden {
  display: none !important;
  visibility: hidden; }

/*
 * Hide only visually, but have it available for screenreaders: h5bp.com/v
 */
.visuallyhidden {
  border: 0;
  clip: rect(0 0 0 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px; }

/*
 * Extends the .visuallyhidden class to allow the element to be focusable
 * when navigated to via the keyboard: h5bp.com/p
 */
.visuallyhidden.focusable:active,
.visuallyhidden.focusable:focus {
  clip: auto;
  height: auto;
  margin: 0;
  overflow: visible;
  position: static;
  width: auto; }

/*
 * Hide visually and from screenreaders, but maintain layout
 */
.invisible {
  visibility: hidden; }

/*
 * Clearfix: contain floats
 *
 * For modern browsers
 * 1. The space content is one way to avoid an Opera bug when the
 *    `contenteditable` attribute is included anywhere else in the document.
 *    Otherwise it causes space to appear at the top and bottom of elements
 *    that receive the `clearfix` class.
 * 2. The use of `table` rather than `block` is only necessary if using
 *    `:before` to contain the top-margins of child elements.
 */
.clearfix:before,
.clearfix:after {
  content: " ";
  /* 1 */
  display: table;
  /* 2 */ }

.clearfix:after {
  clear: both; }

/*
 * For IE 6/7 only
 * Include this rule to trigger hasLayout and contain floats.
 */
.clearfix {
  *zoom: 1; }

/* ==========================================================================
   EXAMPLE Media Queries for Responsive Design.
   These examples override the primary ('mobile first') styles.
   Modify as content requires.
   ========================================================================== */
@media only screen and (min-width: 35em) {
  /* Style adjustments for viewports that meet the condition */ }

@media print, (-o-min-device-pixel-ratio: 5 / 4), (-webkit-min-device-pixel-ratio: 1.25), (min-resolution: 120dpi) {
  /* Style adjustments for high resolution devices */ }

/* ==========================================================================
   Print styles.
   Inlined to avoid required HTTP connection: h5bp.com/r
   ========================================================================== */
@media print {
  * {
    background: transparent !important;
    color: #000 !important;
    /* Black prints faster: h5bp.com/s */
    box-shadow: none !important;
    text-shadow: none !important; }
  a,
  a:visited {
    text-decoration: underline; }
  a[href]:after {
    content: " (" attr(href) ")"; }
  abbr[title]:after {
    content: " (" attr(title) ")"; }
  /*
     * Don't show links for images, or javascript/internal links
     */
  .ir a:after,
  a[href^="javascript:"]:after,
  a[href^="#"]:after {
    content: ""; }
  pre,
  blockquote {
    border: 1px solid #999;
    page-break-inside: avoid; }
  thead {
    display: table-header-group;
    /* h5bp.com/t */ }
  tr,
  img {
    page-break-inside: avoid; }
  img {
    max-width: 100% !important; }
  @page {
    margin: 0.5cm; }
  p,
  h2,
  h3 {
    orphans: 3;
    widows: 3; }
  h2,
  h3 {
    page-break-after: avoid; } }

/* 
	Ok so you have made it this far, that means you are very keen to on my code. 
	Anyway I don't really mind it. This is a great way to learn so you actually doing the right thing:)
	Follow me @ihatetomatoes
*/
/*WP loader*/
.wpLoader {
  font-size: 1px;
  font-family: "Lucida Grande", Helvetica, Arial, sans-serif;
  color: #333;
  text-align: center;
  margin-top: 0px;
  height: 0px; }

.wpLoader span {
  display: block;
  margin: 0 auto; }

.wpLoader span[class*="l-"] {
  height: 4px;
  width: 4px;
  background: #000;
  display: inline-block;
  margin: 0px 2px;
  border-radius: 100%;
  -webkit-border-radius: 100%;
  -moz-border-radius: 100%;
  -webkit-animation: loader 4s infinite;
  -webkit-animation-timing-function: cubic-bezier(0.03, 0.615, 0.995, 0.415);
  -webkit-animation-fill-mode: both;
  -moz-animation: loader 4s infinite;
  -moz-animation-timing-function: cubic-bezier(0.03, 0.615, 0.995, 0.415);
  -moz-animation-fill-mode: both;
  -ms-animation: loader 4s infinite;
  -ms-animation-timing-function: cubic-bezier(0.03, 0.615, 0.995, 0.415);
  -ms-animation-fill-mode: both;
  animation: loader 4s infinite;
  animation-timing-function: cubic-bezier(0.03, 0.615, 0.995, 0.415);
  animation-fill-mode: both; }

.wpLoader span.l-1 {
  -webkit-animation-delay: 1s;
  animation-delay: 1s;
  -ms-animation-delay: 1s;
  -moz-animation-delay: 1s; }

.wpLoader span.l-2 {
  -webkit-animation-delay: 0.8s;
  animation-delay: 0.8s;
  -ms-animation-delay: 0.8s;
  -moz-animation-delay: 0.8s; }

.wpLoader span.l-3 {
  -webkit-animation-delay: 0.6s;
  animation-delay: 0.6s;
  -ms-animation-delay: 0.6s;
  -moz-animation-delay: 0.6s; }

.wpLoader span.l-4 {
  -webkit-animation-delay: 0.4s;
  animation-delay: 0.4s;
  -ms-animation-delay: 0.4s;
  -moz-animation-delay: 0.4s; }

.wpLoader span.l-5 {
  -webkit-animation-delay: 0.2s;
  animation-delay: 0.2s;
  -ms-animation-delay: 0.2s;
  -moz-animation-delay: 0.2s; }

.wpLoader span.l-6 {
  -webkit-animation-delay: 0;
  animation-delay: 0;
  -ms-animation-delay: 0;
  -moz-animation-delay: 0; }

@-webkit-keyframes loader {
  0% {
    -webkit-transform: translateX(-30px);
    opacity: 0; }
  25% {
    opacity: 1; }
  50% {
    -webkit-transform: translateX(30px);
    opacity: 0; }
  100% {
    opacity: 0; } }

@-moz-keyframes loader {
  0% {
    -moz-transform: translateX(-30px);
    opacity: 0; }
  25% {
    opacity: 1; }
  50% {
    -moz-transform: translateX(30px);
    opacity: 0; }
  100% {
    opacity: 0; } }

@keyframes loader {
  0% {
    -transform: translateX(-30px);
    opacity: 0; }
  25% {
    opacity: 1; }
  50% {
    -transform: translateX(30px);
    opacity: 0; }
  100% {
    opacity: 0; } }

@-ms-keyframes loader {
  0% {
    -ms-transform: translateX(-30px);
    opacity: 0; }
  25% {
    opacity: 1; }
  50% {
    -ms-transform: translateX(30px);
    opacity: 0; }
  100% {
    opacity: 0; } }
