html,body {
  font: var(--t002-font-text-m);
  color: var(--t002-light-text);
  background: var(--t002-light-bg);
}

h1 {
  font: var(--t002-font-h1-m);
  text-transform: uppercase;
}
h2 { font: var(--t002-font-h2-m); }
h3 { font: var(--t002-font-h3-m); }
h4 { font: var(--t002-font-h4-m); }
h5 { font: var(--t002-font-h5-m); }

  h1 strong, h2 strong, h3 strong, h4 strong, h5 strong {
    font-size: 1.25em;
    color: var(--t002-light-accent);
  }

hr { border-color: #999; }

img {
  max-width: 100%;
}

p {
  margin-bottom: 1.5em;
}

a {
  color: var(--t002-light-accent);
}


#bf-flash-messages {
  position: fixed;
  top: 95px;
  z-index: 999;

  width: 100%;
}
  #bf-flash-messages .flash_message_info,
  #bf-flash-messages .flash_message_error {
    box-shadow: 10px 10px 10px rgba( 0, 0, 0, 0.25 );
  }

#b_head {
  position: fixed;
  top: 0;
  z-index: 4999;

  width: 100%;
  height: 95px;

  background: rgba(0,0,0,0.25);
  background: linear-gradient(to bottom, var(--t002-nav-gradient-top) 0%, var(--t002-nav-gradient-bot) 100%);

  transition: all 0.5s;
}
  #b_head.fixed {
    height: 60px;

    background-color: var(--t002-nav-bg);
  }
    #b_head.fixed #b_head_social { display: none; }
    #b_head.fixed #b_mobile_toggle { margin-top: 13px; }

    #b_head.fixed .logo {
      height: 40px;
      margin: 10px 0;
    }
    #b_head.fixed #b_nav {
      margin-top: 10px;
    }

  .bf-has-brand #b_head { top: 32px; }
  .bf-is-admin #b_head { top: 45px; }
  .bf-has-brand.bf-is-admin #b_head { top: 77px; }

  #b_head .logo {
    display: block;
    width: 153px;
    height: 57px;
    margin: 20px 0 10px;

    text-indent: -9999px;

    background: url('img/logo.png') no-repeat;
    image-rendering: -webkit-optimize-contrast;
    background-size: contain;

    cursor: pointer;
    overflow: hidden;
    outline: none;

    transition: all 0.5s;
  }


  #b_mobile_toggle {
    float: right;

    width: 40px;
    height: 40px;
    margin: 25px auto;

    text-align: center;

    color: #fff;

    transition: all 0.5s;
  }
    #b_mobile_toggle:before {
      content: '\f0c9';

      display: inline-block;
      margin-left: 5px;

      font-family: 'Font Awesome 5 Pro';
    }

  #b_nav {
    display: none;

    position: absolute;
    top: 95px;
    left: 0;
    right: 0;

    overflow-y: scroll;

    margin: 0 -20px;
    padding: 1em;

    text-align: center;

    background: #e5e5e5;
  }

    #b_nav ul {
      position: static;

      margin: 0;
      padding: 0;

      list-style: none;
    }
      #b_nav > ul > li > a {
        display: inline-block;

        font: var(--t002-font-nav-m);
        text-transform: uppercase;

        color: #000;
      }
        #b_nav > ul > li > a .bfcms-nav-label { display: none; }

        #b_nav > ul > li > ul {
          padding: 0px 20px;
          margin-bottom: 40px;

          font: var(--t002-font-nav-m);
          text-align: center;
        }

  #b_head_social {
    display: none; 

    margin-top: 33px;
    margin-bottom: 0px;

    font: var(--t002-font-nav-m);
    line-height: 1em;
    text-align: right;

    color: #bcbcbc;
  }
    .b_social_nav { 
      display: inline-block; 
      padding-left: 0; 
    }
      .b_social_nav li { display: inline-block; margin: 0 8px; }
        .b_social_nav .bfcms-nav-label { display: none; }
        .b_social_nav i.fa:before { 
          font-size: 18px;
          line-height: 18px;
          color: #bcbcbc;
        }

#b_content {
}


#b_foot {
  margin-top: 45px;
  padding: 50px 0 25px;

  font: var(--t002-font-footer-m);
  text-align: center;

  color: var(--t002-footer-fg);
  background: var(--t002-footer-bg);
}
  #b_foot a {
    text-decoration: underline;
    color: var(--t002-footer-links);
  }
    #b_foot a:hover, #b_foot a:focus, #b_foot a:active {
      text-decoration: none;

      filter: brightness(125%);
    }

  #b_footer_nav ul {
    margin: 1em 0;
    padding: 0;

    list-style: none;
  }
    #b_footer_nav li {
      display: inline-block;
      margin: 0 0 0 25px;
    }
      #b_footer_nav a {
        font: var(--t002-font-nav-m);
        text-transform: uppercase;
        text-decoration: none;
      }

  #b_foot .bf-t002-foot-contact { margin: 2.5em 0; }

  #b_foot .b_social_nav i.fa:before { color: inherit; }
  #b_foot .b_social_nav li:first-of-type { margin-left: 0; }

  #b_foot .bf-t002-foot-right { text-align: center; }

  #b_footer_subscribe {
    margin: 2.5em 0;
  }
    #b_footer_subscribe form {
      margin-top: 8px;
    }
      #b_footer_subscribe input[type="text"],
      #b_footer_subscribe input[type="email"],
      #b_footer_subscribe input[type="number"],
      #b_footer_subscribe select,
      #b_footer_subscribe textarea {
        max-width: 340px;
        font-size: 18px;
        line-height: 18px;
      }


.bf-valign-top, .bf-valign-middle, .bf-valign-bottom {
  transition: padding 0.5s;
}

#b_content > .bfcms-ctr-container,
#b_content > .bfcms_cell_zone > .bfcms-ctr-container {
  margin: 0 0 60px;
}

.bfcms-ctr-container > .container > .row > div[class^="col-"], .bfcms-ctr-container > .container-fluid > .row > div[class^="col-"] { margin-top: 55px; }
  .bfcms-ctr-container > .container > .row > div[class^="col-"]:first-child, .bfcms-ctr-container > .container-fluid > .row > div[class^="col-"]:first-child { margin-top: 0; }


.button,
.bf-t002-button,
.bf-article-btn,
.bf-listing-btn,
.bf-form-submit,
.bfc-summary-link a
{
  display: inline-block;
  padding: 15px 20px;

  font: var(--t002-font-button-m);
  text-transform: uppercase;
  text-decoration: none;

  border: 0;

  cursor: pointer;
}
  .button, .button:visited,
  .bf-t002-button, .bf-t002-button:visited,
  .bf-article-btn, .bf-article-btn:visited,
  .bf-listing-btn, .bf-listing-btn:visited,
  .bfc-summary-link a, .bfc-summary-link a:visited,
  .bf-form-submit {
    text-decoration: none;

    color: var(--t002-light-button-fg);
    background: var(--t002-light-button-bg);
  }

  .button:hover, .button:focus, .button:active,
  .bf-t002-button:hover, .bf-t002-button:focus, .bf-t002-button:active,
  .bf-article-btn:hover, .bf-article-btn:active, .bf-article-btn:focus,
  .bf-listing-btn:hover, .bf-listing-btn:active, .bf-listing-btn:focus,
  .bf-form-submit:hover, .bf-form-submit:active, .bf-form-submit:focus,
  .bfc-summary-link a:hover, .bfc-summary-link a:active, .bfc-summary-link a:focus {
    filter: brightness( 110% );

    color: var(--t002-light-button-fg);
    text-decoration: none;

    cursor: pointer;
  }


.bf-t002-bg-dark {
  position: relative;
  padding: 30px 0;

  color: var(--t002-dark-text);
  background-color: var(--t002-dark-bg);
}
  .bf-t002-bg-dark > .container {
    position: relative;
    z-index: 2;
  }

  .bf-t002-bg-dark-underlay {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1;
  }
    .parallax-mirror.desaturate,
    .bfcms-ctr-container:not(.full-colour) .bf-t002-bg-dark-underlay {
      filter: grayscale(100%) brightness(75%);
    }

  .bf-t002-bg-dark h1 { color: var(--t002-dark-text); }
  .bf-t002-bg-dark h2 { color: var(--t002-dark-text); }
  .bf-t002-bg-dark h3 { color: var(--t002-dark-text); }
  .bf-t002-bg-dark h4 { color: var(--t002-dark-text); }
  .bf-t002-bg-dark h5 { color: var(--t002-dark-text); }

  .bf-t002-bg-dark h1 { color: var(--t002-dark-accent); }

  .bf-t002-bg-dark h2 strong,
  .bf-t002-bg-dark h3 strong,
  .bf-t002-bg-dark h4 strong {
    color: var(--t002-dark-accent);
  }

  .bf-t002-bg-dark .button,
  .bf-t002-bg-dark .bf-t002-button,
  .bf-t002-bg-dark .bf-article-btn,
  .bf-t002-bg-dark .bf-listing-btn,
  .bf-t002-bg-dark .bf-form-submit {
    color: var(--t002-dark-button-fg);
    background: var(--t002-dark-button-bg);
  }

  .bf-t002-bg-dark .button:hover, .bf-t002-bg-dark .button:focus, .bf-t002-bg-dark .button:active,
  .bf-t002-bg-dark .bf-t002-button:hover, .bf-t002-bg-dark .bf-t002-button:focus, .bf-t002-bg-dark .bf-t002-button:active,
  .bf-t002-bg-dark .bf-article-btn:hover, .bf-t002-bg-dark .bf-article-btn:focus, .bf-t002-bg-dark .bf-article-btn:active,
  .bf-t002-bg-dark .bf-listing-btn:hover, .bf-t002-bg-dark .bf-listing-btn:active, .bf-t002-bg-dark .bf-listing-btn:focus,
  .bf-t002-bg-dark .bf-form-submit:hover, .bf-t002-bg-dark .bf-form-submit:active, .bf-t002-bg-dark .bf-form-submit:focus {
    color: var(--t002-dark-button-fg);
  }


.bf-t002-transparent,
.bf-t002-transparent-blue {
  position: relative;
}
  .bf-t002-transparent > .container-fluid,
  .bf-t002-transparent-blue > .container-fluid {
    position: relative;
    z-index: 2;
  }
  .bf-t002-transparent > .container-fluid > .row > div[class^=col],
  .bf-t002-transparent-blue > .container-fluid > .row > div[class^=col] {
    padding: 50px 40px 50px 40px;

    font: var(--t002-font-text-m);

    color: var(--t002-trans-text);
    background: var(--t002-trans-bg);/*rgba( 255, 227, 3, 0.75 );*/
  }
    .bf-t002-transparent-blue > .container-fluid > .row > div[class^=col] {
      background: var(--t002-trans-bg2); /* rgba( 0, 174, 239, 0.75 );*/
    }
    .bf-t002-transparent h2 strong, .bf-t002-transparent h3 strong, .bf-t002-transparent h4 strong,
    .bf-t002-transparent-blue h2 strong, .bf-t002-transparent-blue h3 strong, .bf-t002-transparent-blue h4 strong {
      color: var(--t002-trans-accent);
    }

    .bf-t002-transparent .button, .bf-t002-transparent .bf-t002-button, .bf-t002-transparent .bf-article-btn, .bf-t002-transparent .bf-listing-btn,
    .bf-t002-transparent-blue .button, .bf-t002-transparent-blue .bf-t002-button, .bf-t002-transparent-blue .bf-article-btn, .bf-t002-transparent-blue .bf-listing-btn {
      color: var(--t002-trans-button-fg);
      background: var(--t002-trans-button-bg);
    }

.bf-t002-fg-light    { color: var(--t002-light-text2); }
.bf-t002-fg-blue    { color: var(--t002-light-accent); }
.bf-t002-fg-yellow  { color: var(--t002-dark-accent); }


.bf-form {
}
  .bf-form-row {
    margin-bottom: 0.5em;
  }

  .bf-form input[type="text"], 
  .bf-form input[type="email"], 
  .bf-form input[type="number"],
  .bf-form input[type="password"],
  .bf-form textarea,
  .bf-form select {
    padding: 5px 8px;
    width: 100%;
    max-width: 100%;

    font: var(--t002-font-form-m)

    color: var(--t002-form-text);
    background: var(--t002-form-bg);
    border: 0;
    border-radius: 0;
  }
  .bf-t002-bg-dark .bf-form input[type="text"], 
  .bf-t002-bg-dark .bf-form input[type="email"], 
  .bf-t002-bg-dark .bf-form input[type="number"],
  .bf-t002-bg-dark .bf-form input[type="password"],
  .bf-t002-bg-dark .bf-form textarea,
  .bf-t002-bg-dark .bf-form select {
    color: var(--t002-form-bg);
    background: var(--t002-form-text);
  }


  .bf-form-field-radio h3 {
    font-size: 1em;
    line-height: 1.5em;
  }
    .bf-form-field-radio ul {
      margin: 0 0 1em;
      padding: 0 0 0 1.5em;

      list-style: none;
    }
      .bf-form-field-radio li {
        display: block;
      }

    .bf-form-field-radio label {
      font-size: 0.8em;
      line-height: 1em;
    }





.bf-product-summary {
  font-size: 14px;
  line-height: 24px;
  text-align: center;
}
  .bf-product-summary .bf-product-image {
    width: 50%;
    margin: 0 auto;

    border-radius: 300px;

    overflow: hidden;
  }
    .bf-product-summary .bf-product-image img {
      max-width: 100%;
    }


  .bf-product-summary legend { margin: 0; border-bottom: 0; }

  .bf-product-summary .bf-product-name {
    font: var(--t002-font-h4);
  }

  .bf-product-add {
    margin-top: 1.5em;
  }

  .bf-product-price {
    margin: 0 0 0.75em 0;

    font: var(--t002-font-h3);
    line-height: 1em;
    font-weight: bold;

    color: var(--t002-light-accent);
  }

  .bf-product-user-prices {
    margin: 1.5em 0; 
  }
    .bf-product-user-prices ul {
      margin: 0;
      padding: 0;

      list-style: none;
    }
    .bf-product-user-prices label {
      font-weight: 400;
    }


.bfcms-listing {
}
  .bfcms-listing .bf-listing-title {
    margin: 0 0 1em;
    text-align: center;
  }

  .bfcms-listing .bf-listing-inf {
    margin: 3em 0 1em;
    text-align: center;
  }
    .bfcms-listing .bf-listing-inf .bf-listing-btn {
      padding: 20px 30px;

      font-size: 1.25em;
      font-weight: 400;
    }

    .bfcms-listing:not(.no-margin) .bf-listing-row {
      margin-bottom: 40px;
    }


  .bf-listing-carousel {
    position: relative;

    overflow: hidden;
    width: 100%;
  }
    .bf-listing-carousel-ctr { position: relative; }
    .bf-listing-carousel-ctr > .bf-listing-row {
      position: absolute;
      top: 0;
      z-index: 1;
      margin-left: 0;
    }

  .bf-listing-next,
  .bf-listing-prev {
    display: block;
    position: absolute;
    top: 50%;

    z-index: 5;

    width: 58px;
    height: 80px;
    margin-top: -40px;

    font: 300 normal normal 50px/0.5 "Font Awesome 5 Pro";

    color: var(--t002-light-accent);

    cursor: pointer;
  }
    .bf-t002-bg-dark .bf-listing-next, .bf-t002-bg-dark .bf-listing-prev { color: var(--t002-dark-text); }

    .bf-listing-next:hover, .bf-listing-prev:hover { color: var(--t002-light-text); }
    .bf-t002-bg-dark .bf-listing-next:hover, .bf-t002-bg-dark .bf-listing-prev:hover { color: var(--t002-dark-accent); }
    .bf-listing-next {
      right: 0;
      text-align: right;
    }
      .bf-listing-next:after {
        content: "\f054";
      }

    .bf-listing-prev {
      left: 0;
      text-align: left;
    }
      .bf-listing-prev:after {
        content: "\f053";
      }

  .bf-listing-search {
    min-width: 300px;
    max-width: 600px;
    margin: 0 auto 2em;
    padding: 14px 15px;

    text-align: center;

    color: var(--t002-form-text);
    background: var(--t002-form-bg);
    border-radius: 8px;
  }
    .bf-listing-search input {
      width: 100%;

      text-align: center;

      background: transparent;
      outline: none;
      border: 0;
    }



.bfcms-article-summary {
  font-size: 14px;
  line-height: 20px;
  text-align: center;
}
  .bfcms-article-summary .bf-article-image {
    width: 175px;
    height: 175px;
    margin: 0 auto 2em;

    border: 4px solid #fff;
    border-radius: 100px;
    box-shadow: 5px 5px 10px rgba(0,0,0,0.25);

    overflow: hidden;
  }
    .bfcms-article-summary .bf-article-image img {
      max-width: 100%;
    }

  .bfcms-listing .bfcms-article-summary .bf-article-content {
    padding-bottom: 40px;
    border-bottom: 1px solid #959595;
  }

    .bfcms-article-summary .bf-article-date {
      font: var(--t002-font-h5);
      text-transform: uppercase;
    }

    .bfcms-article-summary h3,
    .bfcms-article-summary h3 a {
      margin: 0.25em 0;

      font: var(--t002-font-h4);

      color: var(--t002-light-accent);
    }
      .bf-t002-bg-dark .bfcms-article-summary h3,
      .bf-t002-bg-dark .bfcms-article-summary h3 a {
        color: var(--t002-dark-accent);
      }

    .bfcms-article-summary .bf-social-links {
      margin-top: 1em;

      text-align: center;
    }



.bfcms-testimonial {
  text-align: center;
}
  .bfcms-testimonial-quote {
    font-size: 28px;
    line-height: 1.5em;
    font-style: italic;

    color: var(--t002-light-text2);
  }
    .bfcms-testimonial-quote > p:last-child { margin-bottom: 0.5em; }
    .bfcms-testimonial.small .bfcms-testimonial-quote { font-size: 20px; }
    .bf-t002-bg-dark .bfcms-testimonial-quote { color: var(--t002-dark-text); }


  .bfcms-testimonial-author {
    font: var(--t002-font-h5);
    font-weight: 700;
    text-transform: uppercase;

    color: var(--t002-light-accent);
  }
    .bfcms-testimonial.small .bfcms-testimonial-author { font-size: 14px; }
    .bf-t002-bg-dark .bfcms-testimonial-author { color: var(--t002-dark-accent); }


.bfcms-icon-feature {
}
  .bficf-icon { text-align: center; }
  .bficf-icon i {
    color: var(--t002-light-accent);
    font-size: 50px;
  }
  .bf-t002-bg-dark .bficf-icon i { color: var(--t002-dark-text); }
  .bf-t002-transparent .bficf-icon i, .bf-t002-transparent-blue .bficf-icon i { color: var(--t002-trans-accent); }

    .if-icon-large .bficf-icon i { font-size: 75px; }
    .if-icon-xlarge .bficf-icon i { font-size: 100px; }


.bfcms-image-feature {
}
  .bfif-image {
    max-width: 100%;
    max-height: 250px;
    margin: 0 auto;

    background-size: cover;
    background-position: center center;
  }

  .bfif-circle .bfif-image {
    max-width: 200px;
    max-height: 200px;

    border: 4px solid #fff;
    border-radius: 150px;
    box-shadow: 5px 5px 10px rgba(0,0,0,0.25);
  }


.bf-faq-question {
  padding: 10px 25px;
  margin-bottom: 15px;

  font: var(--t002-font-form);
  font-weight: bold;

  background: #f1f1f1;

  cursor: pointer;
}
  .bf-faq-question:hover,
  .bf-faq-question:focus,
  .bf-faq-question:active {
    background: #e1e1e1;
  }
  .bf-t002-bg-dark .bf-faq-question { background: #a33; }

  .bf-faq-question:before {
    content: "\f0da";
    display: inline-block;
    margin-right: 15px;

    font: 900 normal normal 18px/1 'Font Awesome 5 Pro';
  }
    .bf-faq-question.open:before { content: "\f0d7"; }

.bf-faq-content {
  display: none;
  padding: 0 25px 30px;
}



.bfcms-gallery {
}
  .bfcms-gallery h2 {
    margin-bottom: 1em;
  }

  .bfcms-gallery .bf-listing-prev,
  .bfcms-gallery .bf-listing-next {
    margin-top: -15px;
  }

  .bfcms-gallery a {
    display: block;
    position: relative;
  }
    .bfcms-gallery .bfcms-listing-carousel {
      padding: 40px 60px;
    }

    .bfcms-gallery .bf-listing-carousel a:hover, .bfcms-gallery .bf-listing-carousel a:focus, .bfcms-gallery .bf-listing-carousel a:active {
      z-index: 10;

      width: 125%;
      height: 125%;
      margin-left: -12.5%;
      margin-top: -12.5%;
    }

    .bfcms-gallery a:hover:before, .bfcms-gallery a:focus:before, .bfcms-gallery a:active:before {
      content: ' ';

      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      bottom: 0;

      background: rgba(0,0,0,0.5);
    }

    .bfcms-gallery a:hover:after, .bfcms-gallery a:focus:after, .bfcms-gallery a:active:after {
      content: '\f00e';
      position: absolute;
      top: 50%;
      left: 0;
      right: 0;

      margin-top: -25px;

      font: 300 50px/1 'Font Awesome 5 Pro';
      text-align: center;

      color: #fff;
    }

  .bfcms-gallery .bf-listing-carousel div[class^="col-"] {
    margin: 0;
    padding: 0;
  }


.bf-resource {
}
  .bf-resource-link {
    margin-top: 1em;
  }


.bf-align-center .bf-ctable table {
  margin: 0 auto;
}


.bf-sys-login,
.bf-sys-logout,
.bf-is-admin .bfcms_cell_zone > .bfcms_pane {
  margin-top: 120px;
}


.bfe-summary {
}
  .bfe-summary-date {
    display: block;

    font-size: 0.6em;
    line-height: 1.5em;
    text-transform: uppercase;
  }


.twitter2 ul {
  margin: 0 0 1em;
  padding: 15px 20px;

  list-style: none;

  background: var(--t002-light-bg);
}
  .twitter2 ul > li {
    padding: 15px 0;
    border-top: 1px solid rgba(0,0,0,0.15);
  }
  .twitter2 ul > li:first-child {
    border-top: 0;
  }
    .twitter2 ul > li:before {
      content: '\f099';

      margin-right: 10px;

      font-family: 'Font Awesome 5 Brands';

      color: var(--t002-light-text);
    }



