html,body {
  font-family: effra,sans-serif;
  font-size: 16px;
  line-height: 28px;
}

h1, h2, h3, h4 {
  margin-top: 0;
  margin-bottom: 0.5em;
}

h1 {
  margin-bottom: 0.25em;

  font-size: 55px;
  line-height: 49px;
  font-weight: 300;
  text-transform: uppercase;
}

h2 {
  font-size: 50px;
  line-height: 44px;
  font-weight: 300;
}

h3,
.bf-faq-question {
  font-size: 30px;
  line-height: 38px;
  font-weight: 300;
}

h4 {
  font-size: 16px;
  font-weight: 400;
  line-height: 28px;
}


blockquote {
  margin: 0;
  padding-top: 40px;

  border-left: 0;
  border-top: 2px solid #c9dc48; 
}

p {
  margin-bottom: 1.5em;
}


input,select,textarea {
  max-width: 100%;
}
  .bf-form-field {
    margin-bottom: 0.5em;
  }
    .bf-form-field input[type="text"], .bf-form-field input[type="email"], .bf-form-field input[type="password"], .bf-form-field select, .bf-form-field textarea {
      width:100%;
      padding: 5px 15px;

      color: #000;
      background: #f8f8f8;
      border: 0;

      outline: none;
    }
      .bf-form-field input[type="text"]:focus, .bf-form-field input[type="email"]:focus, .bf-form-field input[type="password"]:focus, .bf-form-field select:focus, .bf-form-field textarea:focus {
        background: #eee;
      }



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

  width: 100%;
  height: 100px;

  background: #fff;
}
  .tmtel-header-dark #b_head, .tmtel-header-light #b_head { background: transparent; }
  .bf-is-admin #b_head { top: 46px; }

  #b_head .logo {
    display: inline-block;
    margin-top: 3px;

    text-indent: -9999px;

    background-size: contain;
    background-repeat: no-repeat;
    overflow: hidden;
  }
    .tmtel-header-light #b_head:not(.fixed) .logo {
      background-image: url('/res/pub/Template/tlmi-ko.svg') !important;
    }

  #b_head.fixed { height: 65px; background: #fff !important; }
    #b_head.fixed .logo { height: 55px !important; }

  #b_head #b_nav {
    display: none;
    position: absolute;
    top: 80px;
    left: 0;
    right: 0;

    margin-top: 20px;
    padding-bottom: 20px;
    text-align: center;

    background: #fff;
  }
    #b_head.fixed #b_nav { top: 55px; margin-top: 7px; }

    #b_mobile_toggle {
      float: right;

      width: 40px;
      height: 40px;
      margin-top: 27px;

      text-align: center;
    }
      #b_mobile_toggle:before {
        content: '\f0c9';

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

        font-family: 'FontAwesome';
        font-size: 25px;

        color: #000;
      }


    #b_head #b_nav > ul > li > a {
      display: inline-block;
      padding: 0 20px;

      font-size: 16px;
      font-weight: 700;
      line-height: 60px;
      text-transform: uppercase;

      color: #333;
    }
      #b_head.fixed #b_nav > ul > li > a { line-height: 50px; }
      #b_head.fixed #b_mobile_toggle { margin-top: 17px; }
      #b_head.fixed #b_mobile_toggle:before { color: #000; }

      #b_head #b_nav > ul > li:hover a, #b_head #b_nav > ul > li:focus a, #b_head #b_nav > ul > li:active a {
        color: #008752;
        text-decoration: none;
      }

      #b_head #b_nav > ul > li > a#tmtel-nav-donate {
        padding: 0 10px;

        line-height: 2.5em;

        color: #fff;
        background: #008752;
      }

      .tmtel-header-light #b_mobile_toggle:before { color: #fff; }

      #b_head #b_nav > ul > li > ul {
        display: none;

        padding: 20px 30px;

        text-align: left;

        border-top: 6px solid #c9dc48;
      }
        #b_head #b_nav > ul > li:hover > ul { display: block; }

        #b_head #b_nav > ul > li > ul a {
          font-size: 0.9em;
          line-height: 2em;

          color: #333;
        }


#b_main { margin-top: 100px; }
  .tmtel-header-dark #b_main, .tmtel-header-light #b_main { margin-top: 0; }

  #b_content .featurette > .container > .row > div:not(.col-md-12) { margin-top: 4em; }
  #b_content .featurette > .container > .row > div:first-child { margin-top: 0; }

  .bfcms-listing .bf-listing-row > div:not(.col-md-12) { margin-top: 4em; }
  .bfcms-listing .bf-listing-row > div:first-child { margin-top: 0; }


#b_foot {
  padding:60px;
  margin:0;
  
  color: #fff;
  background: #99CB4D url('/res/pub/Template/Backgrounds/b5.jpg') no-repeat;
  background-size:cover;

  font-size: 14px;
  text-align: center;
  line-height: 60px;
}

  .b_foot_nav.bfcms-nav { 
    display: block;
    text-align: left;
  }
  .b_foot_nav .bfcms-nav > li {
    display: block;
  }
    .b_foot_nav .bfcms-nav > li a {
      padding: 0;

      font-weight: 700;
      text-align: left;
      line-height: 1.75em;
      text-transform: uppercase;

      color: #fff
    }

  #b_foot .bf-photo-image {
    width: 75%;
    margin: 0 auto;
  }

.bfcms-nav {
  display: inline-block;

  margin: 0;
  padding: 0;

  list-style: none;
}

  .bfcms-nav > li {
    position: relative;
    display: inline-block;
    margin: 0;
  }
    .bfcms-nav > li > a {
    }

    .bfcms-nav > li > ul {
      display: none;

      position: absolute;
      z-index: 100;

      min-width: 250px;
      margin: 0;
      padding: 15px;

      list-style: none;

      background: #eee;
    }
      .bfcms-nav > li:hover > ul {
        display: block;
      }



.button,
.button-green,
.button-orange,
.button-lt-blue, 
.bf-form-submit
{
  display: inline-block;

  padding: 10px 30px;

  text-align: center;

  color: #fff;
  background: #4F4F4B;
  border: 0;

  cursor: pointer;
}
  .button-green { background: #008752; }
  .button-orange { background: #F78E1E; }
  .button-lt-blue { background: #7Ac143; }

  .button:hover, .button:focus, .button:active,
  .button-green:hover, .button-green:focus, .button-green:active,
  .button-orange:hover, .button-orange:focus, .button-orange:active,
  .button-lt-blue:hover, .button-lt-blue:focus, .button-lt-blue:active {
    text-decoration: none;

    color: #fff;
    filter: saturate( 120% );
  }


.tmtel-large {
  font-size: 20px;
  line-height: 32px;
  font-weight: 300;
}

.bfcms-ctr-container.tmtel-overlay {
  position: relative;
}
  .bfcms-ctr-container.tmtel-overlay:before {
    content: ' ';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1;

    background: rgba(0, 0, 0, 0.25);
  }
    .bfcms-ctr-container.tmtel-overlay .container {
      position: relative;
      z-index: 2;

      color: #fff;
    }


.tmtel-keyline-green, .tmtel-keyline-orange, .tmtel-keyline-lt-blue, .tmtel-keyline-drk-blue {
  padding-top: 50px;
  border-top: 2px solid #eee;
}
  .tmtel-keyline-green { border-color: #c9dc48; }
  .tmtel-keyline-orange { border-color: #f47d30; }
  .tmtel-keyline-lt-blue { border-color: #52b9d0; }
  .tmtel-keyline-drk-blue { border-color: #0084a9; }


.bf-product-summary {
  text-align: center;
}
  .bf-product-summary .bf-product-image img {
    max-width: 80%;
    margin: 0 auto 1.5em;
  }

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

  .bf-product-summary .bf-product-price {
    margin: 0.5em 0 1em;

    font-size: 24px;
    line-height: 24px;

    font-weight: bold;
  }


.bf-timeline {
  position: relative;
}
  .bf-timeline:after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;

    width: 50%;

    border-right: 1px solid #000;
  }

.bf-timeline ul.bf-tl-groups {
  margin: 0;
  padding: 0;
  list-style: none;
}
  li.bf-tl-group {
    clear: both;
    position: relative;

    padding-top: 2em;
  }
    li.bf-tl-group:before {
      content: '';
      position: absolute;
      top: 2.85em;
      left: 50%;
      z-index: 10;

      width: 24px;
      height: 24px;
      margin-left: -12px;

      border-radius: 12px;
      background: #0084a9;

      transition: background 0.25s;
    }
    li.bf-tl-group.has-children {
      cursor: pointer;
    }
      li.bf-tl-group.has-children:hover:before {
        background: #c9dc48;
      }

    .bf-tl-grp-image {
      width: 45%;
      float: left;
      text-align: right;
    }
    .bf-tl-grp-image img {
      max-width: 80%;
    }
    .bf-tl-grp-content {
      margin-left: 52%;
    }
    .bf-tl-grp-date {
      font-weight: bold;
      font-size: 2.5em;
      line-height: 1.25em;
    }    

  ul.bf-tl-times {
    clear: left;
    display: none;

    width: 80%;
    margin: 0 auto;
    padding: 0;

    list-style: none;
  }
    li.bf-tl-time {
      position: relative;

      clear: both;
      padding: 2em 0;
    }        
      li.bf-tl-time:before {
        position: absolute;

        top: 2.5em;
        left: 50%;
        z-index: 10;

        width: 15px;
        height: 15px;
        margin-left: -7.5px;


        background: #c9dc48;
        border-radius: 15px;
      }

    .bf-tl-te-image {
      width: 45%;
      float: left;
      text-align: right;
    }
      .bf-tl-te-image img {
        max-width: 75%;
      }
    .bf-tl-te-content {
      margin-left: 55%;
    }
    .bf-tl-te-date {
      font-weight: bold;
      font-size: 1.25em;
    }


.white-accent{ color:#fff; }

.b1 { padding:60px; margin:0; color: #fff; background: #008752 url('/res/pub/Template/Backgrounds/b1.jpg') no-repeat; background-size:cover; }
  .b1-accent{ color:#008752; }

.b2 { padding:60px; margin:0; color: #fff; background: #7AC143 url('/res/pub/Template/Backgrounds/b2.jpg') no-repeat; background-size:cover; }
  .b2-accent{ color:#7AC143; }

.b3 { padding:60px; margin:0; color: #fff; background: #F78E1E url('/res/pub/Template/Backgrounds/b3.jpg') no-repeat; background-size:cover; }
  .b3-accent{ color:#F78E1E; }

.b4 { padding:60px; margin:0; color: #fff; background: #4F4F4B url('/res/pub/Template/Backgrounds/b4.jpg') no-repeat; background-size:cover; }
  .b4-accent{ color:#4F4F4B; }

.b5 { padding:60px; margin:0; color: #fff; background: #99CB4D url('/res/pub/Template/Backgrounds/b5.jpg') no-repeat; background-size:cover; }
  .b5-accent{ color:#99CB4D; }

.b6 { padding:60px; margin:0; color: #fff; background: #E31837 url('/res/pub/Template/Backgrounds/b6.jpg') no-repeat; background-size:cover; }
  .b6-accent{ color:#E31837; }

.b7 { padding:60px; margin:0; color: #fff; background: #FDB924 url('/res/pub/Template/Backgrounds/b7.jpg') no-repeat; background-size:cover; }
  .b7-accent{ color:#FDB924; }

.b8 { padding:60px; margin:0; color: #333; background: #FFF45F url('/res/pub/Template/Backgrounds/b8.jpg') no-repeat; background-size:cover; }
  .b8-accent{ color:#FFF45F; }

.bf-faq-content {
    display: none;
}
.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;
}
