@import "bourbon";
@mixin roboto {
  font-family: 'Roboto', sans-serif;
}
$white: #fff;
$black: #000;

@mixin clearfix {
  &:after {
    content: "";
    display: block;
    clear: both;
    visibility: hidden;
    line-height: 0;
    height: 0;
  }
}
[class*='54_set'] {
  @include clearfix();
  &.tve_gray_bg {
    background-image: none;
    background: #c2c2c2;
  }
}
#tve_54_set {
  [class*='54_set'] {
    a {
      color: #1b77b3;
    }
    h1 {
      @include roboto();
      color: #313131;
      font-weight: 300;
      font-size: 31px;
      line-height: 1em;
      letter-spacing: normal;
      margin-bottom: 20px;
      &.bold_text {
        font-weight: 500;
      }
    }
    h2 {
      @include roboto();
      color: #313131;
      font-weight: 300;
      font-size: 31px;
      line-height: 1.387em;
      letter-spacing: normal;
      margin-bottom: 20px;
      &.bold_text {
        font-weight: 500;
      }
      .bold_text {
        font-weight: 500;
      }
    }
    h3 {
      @include roboto();
      color: #313131;
      font-weight: 300;
      font-size: 22px;
      line-height: 1.364em;
      letter-spacing: normal;
      margin-bottom: 20px;
      &.bold_text {
        font-weight: 500;
      }
    }
    h4 {
      @include roboto();
      color: #313131;
      font-weight: 300;
      font-size: 20px;
      line-height: 1.2em;
      letter-spacing: normal;
      margin-bottom: 20px;
      &.bold_text {
        font-weight: 500;
      }
    }
    h5 {
      @include roboto();
      color: #313131;
      font-weight: 300;
      font-size: 17px;
      line-height: 1.176em;
      letter-spacing: normal;
      margin-bottom: 20px;
      &.bold_text {
        font-weight: 500;
      }
    }
    h6 {
      @include roboto();
      color: #313131;
      font-size: 14px;
      font-weight: 300;
      line-height: 1.286em;
      letter-spacing: normal;
      margin-bottom: 20px;
      &.bold_text {
        font-weight: 500;
      }
    }
    p {
      @include roboto();
      color: #313131;
      font-weight: 300;
      font-size: 18px;
      letter-spacing: normal;
      line-height: 1.429em;
      margin-bottom: 20px;
      &.bold_text {
        font-weight: 500;
      }
    }
    blockquote {
      @include roboto();
      background: transparent;
      border: 0;
      color: #313131;
      font-style: normal;
      font-size: 14px;
      font-weight: 300;
      line-height: 1.786em;
      padding-left: 80px;
      position: relative;
      &:before {
        content: '\0201C';
        color: #fea62a;
        display: block;
        font-size: 160px;
        font-weight: 700;
        line-height: 120px;
        position: absolute;
        left: 0;
        top: 10px;
      }
    }
    ol.thrv_wrapper {
      counter-reset: ol-counter;
      list-style-type: none;
      li {
        @include roboto();
        color: #444349;
        font-size: 14px;
        font-weight: 300;
        line-height: 30px;
        &:before {
          color: #fea62a;
          content: counter(ol-counter) '.' !important;
          counter-increment: ol-counter;
          font-weight: 500;
          padding-right: 10px;
        }
        &.bold_text {
          font-weight: 700;
        }
      }
    }
    ul.thrv_wrapper {
      list-style-type: none;
      li {
        @include roboto();
        color: #444349;
        font-size: 14px;
        font-weight: 300;
        line-height: 30px;
        &:before {
          content: '\02218';
          color: #fea62a;
          font-weight: 500;
          font-size: 30px;
          line-height: 15px;
          padding-right: 10px;
          position: relative;
          top: 5px;
        }
        &.bold_text {
          font-weight: 700;
        }
      }
    }
    h1, h2, h3, h4, h5, h6 {
      clear: none;
      padding-bottom: 0;
      text-transform: none;
    }
  }
}
#tve_54_set {
  @include roboto();
  text-shadow: none;
  [class*='54_set'] {
    .tve_p_lb_close {
      border: 1px solid #fea62a;
      background: none;
      box-shadow: none;
      color: #fea62a;
      font-family: Arial;
      font-size: 16px;
      font-weight: 400;
      line-height: 20px;
      top: 10px;
      right: 10px;
    }
  }
  .tve-leads-lightbox {
    .tve_p_lb_background .tve_p_lb_content {
      background-color: #fff;
      border-radius: 9px;
      box-shadow: none;
      max-width: 615px;
      padding: 0 !important;
      overflow: hidden;
    }
    #tve_editor {
      .tve_p_lb_control {
        padding: 20px 40px;
      }
    }
  }
  .thrv-leads-form-box {
    border: 0;
    border-radius: 0;
    margin-bottom: 0;
    margin-top: 0;
    position: relative;
    padding: 5px 0;
  }
  article {
    padding-bottom: 0;
  }
  .thrv_contentbox_shortcode {
    margin-top: 0;
    margin-bottom: 0;
    .tve_cb.tve_cb5 {
      border-radius: 7px;
      .tve_cb_cnt {
        padding: 35px 20px;
      }
      p {
        text-shadow: none;
      }
    }
  }
  .thrv_lead_generation {
    &.tve_white {
      button {
        color: #2d2d2d;
      }
    }
    button {
      @include roboto();
      border-radius: 5px;
      border: 0;
      color: #fff;
      font-weight: 300;
      font-size: 20px;
      line-height: 32px;
      padding: 7px 10px;
      text-shadow: none;
    }
    input[type="text"], input[type="email"] {
      @include roboto();
      border-radius: 5px;
      box-shadow: none;
      border: 1px solid #dbdbdb;
      background: #fff;
      color: #4e4e4e;
      font-size: 18px;
      font-weight: 300;
      font-style: italic;
      height: auto;
      line-height: 32px;
      margin-bottom: 10px;
      padding: 7px 20px !important;
      &:hover {
        color: #969696;
      }
      &:focus {
        color: #4e4e4e;
      }
    }
  }
  .tve_lg_radio_wrapper {
    display: inline-block;
    position: relative;
    padding: 5px 20px 5px 0;
    input[type="radio"] {
      cursor: pointer;
      height: 100%;
      margin: 0;
      padding: 0;
      opacity: 0;
      position: absolute;
      left: 0;
      top: 0;
      z-index: 5;
      width: 100%;
      &:checked {
        + label {
          &:before {
            background: #fff;
          }
        }
      }
      + label {
        @include roboto();
        color: #707070;
        display: inline-block;
        position: relative;
        font-size: 14px;
        font-weight: 300;
        &:before {
          background-color: #fff;
          border-radius: 100%;
          content: '';
          display: inline-block;
          height: 14px;
          margin-right: 10px;
          vertical-align: middle;
          position: relative;
          top: -1px;
          width: 14px;
        }
        &:after {
          @include transition(background-color .3s);
          background-color: transparent;
          border-radius: 100%;
          content: '';
          height: 8px;
          position: absolute;
          top: 6px;
          left: 4px;
          width: 8px;
        }
      }
    }
  }
  .tve_lg_checkbox_wrapper {
    display: inline-block;
    position: relative;
    padding: 5px 20px 5px 0;
    width: auto;
    input[type="checkbox"] {
      &:not(:checked),
      &:checked {
        position: absolute;
        visibility: hidden;
        + label {
          @include roboto();
          color: #575757;
          cursor: pointer;
          font-size: 14px;
          font-weight: 300;
          position: relative;
          padding-left: 27px;
          &:before {
            border-radius: 1px;
            background-color: #fff;
            content: '';
            height: 14px;
            position: absolute;
            left: 0;
            top: 3px;
            width: 14px;
          }
          &:after {
            @include transition(all, .2s);
            content: "\02713";
            font-size: 13px;
            font-weight: 600;
            position: absolute;
            top: 1px;
            left: 3px;
          }
        }
      }
      &:not(:checked) + label:after {
        @include transform(scale(0));
        opacity: 0;
      }
      &:checked + label:after {
        @include transform(scale(1));
        color: #fff;
        opacity: 1;
      }
    }
  }
  .tve_lg_dropdown {
    position: relative;
    select {
      @include appearance(none);
      @include roboto();
      border: 0;
      color: #fff;
      border-radius: 5px;
      cursor: pointer;
      display: inline-block;
      font-size: 22px;
      font-weight: 300;
      line-height: 33px;
      height: 62px;
      margin: 0;
      outline: none;
      padding-right: 40px !important;
      option {
        background: #f7f7f7;
        color: #3a3a3a;
        font-size: 19px;
        font-weight: 300;
      }
    }
    .tve_sc_icon {
      margin-right: 20px;
    }
    &:after {
      border: 1px solid #fff;
      border-radius: 50%;
      color: #fff;
      content: "\022C1";
      font-size: 12px;
      font-weight: 700;
      height: 20px;
      line-height: 20px;
      pointer-events: none;
      position: absolute;
      top: 20px;
      right: 20px;
      text-align: center;
      width: 20px;
    }
  }
}
@font-face {
  font-family: 'tve-leads-54-set-icons';
  src: url('fonts/54_set/54_set_icons.eot?tm9238');
  src: url('fonts/54_set/54_set_icons.eot?#iefixtm9238') format('embedded-opentype'),
  url('fonts/54_set/54_set_icons.woff?tm9238') format('woff'),
  url('fonts/54_set/54_set_icons.ttf?tm9238') format('truetype'),
  url('fonts/54_set/54_set_icons.svg?tm9238#icomoon') format('svg');
  font-weight: normal;
  font-style: normal;
}
[class^="set-54"], [class*=" set-54"] {
  color: inherit;
  font-family: 'tve-leads-54-set-icons' !important;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;

  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.set-54-book:before {
  content: "\f02d";
}
$color-pallete:
'blue' #2574a9 #1c6494 #175077 #2574a9,
'black' #333333 #212121 #0a0a0a #333333,
'green' #90c695 #6ba970 #4c9152 #90c695,
'white' #eeeeee #dddbdb #c0c0c0 #fff,
'orange' #fea62a #ef991f #e48c0f #f9f0bb,
'purple' #674172 #5b3366 #4d2459 #674172,
'red' #d24d57 #b53943 #a62e37 #d24d57,
'teal' #36d7b7 #25c3a4 #1fb295 #36d7b7;

@each $color in $color-pallete {
  #tve_54_set {
    .thrv_icon.thrv_wrapper {
      span.tve_sc_icon.tve_#{nth($color, 1)} {
        color: nth($color, 2);
      }
    }
    .thrv-leads-form-box.tve_#{nth($color, 1)} {
      background: nth($color, 5);
    }
    .tve_cb.tve_cb5.tve_#{nth($color, 1)} {
      background: nth($color, 5);
      border: 1px solid rgba(nth($color, 2), .4);
    }
    .thrv_lead_generation.tve_#{nth($color, 1)} {
      input[type='text'], input[type='email'] {
        &:hover {
          border: 1px solid nth($color, 2);
        }
        &:focus {
          border: 1px solid nth($color, 3);
        }
      }
      button {
        background: nth($color, 2);
        border-bottom: 2px solid nth($color, 4);
        &:hover {
          background: nth($color, 3);
        }
        &:active {
          border-bottom: 2px solid nth($color, 3);
        }
      }
      select {
        background: nth($color, 2);
        border-bottom: 2px solid nth($color, 4);
        &:hover {
          background: nth($color, 3);
          border-bottom: 2px solid nth($color, 3);
        }
      }
      input[type="radio"] {
        + label {
          &:before {
            border: 1px solid nth($color, 2);
          }
        }
        &:checked + label {
          &:after {
            background-color: nth($color, 2);
          }
        }
      }
      input[type="checkbox"] {
        + label {
          &:before {
            border: 1px solid nth($color, 2);
          }
        }
        &:checked {
          + label {
            &:before {
              background: nth($color, 2);
            }
          }
        }
      }
    }
  }
}
@import "_responsive";
