@import "bourbon";

@mixin lato {
  font-family: 'Lato', sans-serif;
}

@mixin opensans {
  font-family: 'Open Sans', serif;
}

$white: #fff;
$black: #000;

@mixin clearfix {
  &:after {
    content: "";
    display: block;
    clear: both;
    visibility: hidden;
    line-height: 0;
    height: 0;
  }
}

[class*='53_set'] {
  @include clearfix();
  &.tve_gray_bg {
    background-image: none;
    background: #c2c2c2;
  }
}

#tve_53_set {
  [class*='53_set'] {
    a {
      color: inherit;
    }
    h2 {
      @include lato();
      color: #333333;
      font-weight: 400;
      font-size: 40px;
      line-height: 1.375em;
      letter-spacing: normal;
    }
    h3 {
      @include lato();
      color: #009999;
      font-weight: 400;
      font-size: 35px;
      line-height: 1.2em;
      letter-spacing: normal;
    }
    h4 {
      @include lato();
      color: #3f3f3f;
      font-weight: 400;
      font-size: 30px;
      line-height: 1.2em;
      letter-spacing: normal;
    }
    h5 {
      @include lato();
      color: #009999;
      font-size: 26px;
      font-weight: 400;
      line-height: 1.5em;
      letter-spacing: normal;
    }
    h6 {
      @include lato();
      color: #009999;
      font-size: 24px;
      font-weight: 400;
      line-height: 1.5em;
      letter-spacing: normal;
    }
    p {
      @include opensans();
      color: #3f3f3f;
      font-weight: 400;
      font-size: 22px;
      letter-spacing: normal;
      line-height: 1.5em;
      margin-bottom: 20px;
    }
    h2, h3, h4, h5, h6 {
      clear: none;
      padding-bottom: 0;
    }
  }
}

#tve_53_set {
  @include opensans();
  text-shadow: none;
  [class*='53_set'] {
    .tve_p_lb_close {
      @include opensans();
      border: none;
      background: #c9c9cc;
      box-shadow: 1px 1px 0 0 rgba(#000, .3) inset;
      color: #ffffff;
      font-size: 20px;
      font-weight: 400;
      line-height: 20px;
      top: 10px;
      right: 10px;
    }
    .tve-screen-filler-close, .tve-form-close {
      @include opensans();
      border: none;
      background: #c9c9cc;
      border-radius: 50%;
      box-shadow: 1px 1px 0 0 rgba(#000, .3) inset;
      cursor: pointer;
      display: block;
      font-size: 20px;
      font-weight: 400;
      height: 23px;
      line-height: 20px;
      position: absolute;
      top: 10px;
      right: 10px;
      text-align: center;
      text-decoration: none;
      text-shadow: 1px 0 1px rgba(#000, .36);
      width: 23px;
      z-index: 100;
    }
    .tve-form-close {
      color: #ffffff;
    }
    .tve-screen-filler-close {
      color: #fff;
    }
  }
  .tve-leads-lightbox {
    .tve_p_lb_background .tve_p_lb_content {
      background-color: #fff;
      border-radius: 0;
      box-shadow: none;
      max-width: 890px;
      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: 20px 40px;
    overflow: hidden;
  }
  .thrv-leads-screen-filler {
    .tve_editor_main_content {
      //max-width: 1080px;
      padding-right: 50px;
    }
  }
  article {
    padding-bottom: 0;
  }
  .thrv_contentbox_shortcode {
    margin-top: 0;
    margin-bottom: 0;
    .tve_cb.tve_cb5 {
      border: 0;
      border-right: 8px solid #979797;
    }
  }
  .tve_btn.tve_btn1 {
    @include lato();
    border-radius: 7px;
    border: 3px solid #dbdbdb;
    font-weight: 400;
    text-shadow: none;
    &.tve_normalBtn {
      .tve_btnLink {
        font-size: 25px;
        line-height: 30px;
        padding: 17px 30px;
      }
    }
    .tve_btnLink {
      color: #fff;
      text-shadow: none;
      > span {
        color: inherit;
      }
    }
    &.tve_white, &.tve_orange {
      a.tve_btnLink {
        span {
          color: #333333;
        }
      }
    }
  }
  .thrv_lead_generation {
    &.tve_light, &.tve_orange {
      button {
        color: #333333;
      }
    }
    button {
      @include lato();
      border-radius: 7px;
      border: 3px solid #dbdbdb;
      color: #fff;
      font-weight: 400;
      font-size: 25px;
      line-height: 31px;
      padding: 17px 10px;
      text-shadow: none;
      &:active {
        line-height: 31px;
      }
    }
    input[type="text"], input[type="email"] {
      @include opensans();
      border-radius: 7px;
      box-shadow: 0 0 5px 0 rgba(#000, .14) inset;
      border: 1px solid #dbdbdb;
      background: #fff;
      color: #333333;
      font-size: 22px;
      font-weight: 400;
      height: auto;
      line-height: 31px;
      margin-bottom: 20px;
      padding: 17px 20px !important;
      &:hover {
        border: 1px solid #939393;
        color: #3f3f3f;
      }
      &:focus {
        border: 1px solid #565454;
        color: #333333;
      }
    }
  }
  .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 {
          &:after {
            background: #666666;
          }
        }
      }
      + label {
        @include opensans();
        color: #3f3f3f;
        display: inline-block;
        position: relative;
        font-size: 22px;
        font-weight: 400;
        &:before {
          border: 1px solid #666666;
          background-color: #fff;
          border-radius: 100%;
          content: '';
          display: inline-block;
          height: 20px;
          margin-right: 10px;
          vertical-align: middle;
          position: relative;
          top: -2px;
          width: 20px;
        }
        &:after {
          @include transition(background-color .3s);
          background-color: transparent;
          border-radius: 100%;
          content: '';
          height: 10px;
          position: absolute;
          top: 11px;
          left: 6px;
          width: 10px;
        }
      }
    }
  }
  .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 opensans();
          color: #3f3f3f;
          cursor: pointer;
          font-size: 22px;
          font-weight: 400;
          position: relative;
          padding-left: 35px;
          &:before {
            border: 1px solid #666666;
            background-color: #fff;
            border-radius: 1px;
            content: '';
            height: 20px;
            position: absolute;
            left: 0;
            top: 4px;
            width: 20px;
          }
          &:after {
            @include transition(all, .2s);
            content: "\02713";
            color: #fff;
            font-size: 15px;
            font-weight: 600;
            position: absolute;
            top: 4px;
            left: 5px;
          }
        }
      }
      &:checked {
        + label {
          &:before {
            background: #666666;
            border: 1px solid #666666;
          }
        }
      }
      &:not(:checked) + label:after {
        @include transform(scale(0));
        opacity: 0;
      }
      &:checked + label:after {
        @include transform(scale(1));
        opacity: 1;
      }
    }
  }
  .tve_lg_dropdown {
    position: relative;
    select {
      @include appearance(none);
      @include opensans();
      background-color: #fff;
      border: 1px solid #dbdbdb;
      box-shadow: 0 0 5px 0 rgba(#000, .14) inset;
      color: #5e5e5e;
      border-radius: 7px;
      cursor: pointer;
      display: inline-block;
      font-size: 22px;
      font-weight: 400;
      line-height: 26px;
      height: 65px;
      margin: 0;
      outline: none;
      padding-right: 40px!important;
      option {
        color: #5e5e5e;
        font-size: 22px;
        font-weight: 400;
      }
      &:hover {
        border: 1px solid #939393;
        background: #fff;
        box-shadow: 0 0 5px 0 rgba(#000, .14) inset;
      }
    }
    .tve_sc_icon {
      margin-right: 20px;
    }
    &:after {
      background: transparent;
      border-radius: 100px;
      border: 1px solid #dbdbdb;
      color: #dbdbdb;
      content: "\022C1";
      font-size: 17px;
      height: 20px;
      line-height: 21px;
      pointer-events: none;
      position: absolute;
      top: 20px;
      right: 20px;
      text-align: center;
      width: 20px;
    }
  }
}

$color-pallete: 'blue' #299ccc #0065ab #1987c0 #0065ab #1273a5,
'black' #676767 #4a4a4a #5f5f5f #4a4a4a #444444,
'green' #6acc29 #41ab00 #68b932 #41ab00 #5aaa24,
'white' #f9f9f9 #e5e5e5 #f1f1f1 #e5e5e5 #dcdcdc,
'orange' #fbef28 #d8c30c #f2e421 #d8c30c #e8da1b,
'purple' #9b4796 #792374 #903b8b #792374 #7c2e77,
'red' #cc2929 #ab0000 #c40000 #ac0101 #b10000,
'teal' #29ccbc #00ab98 #00c4ae #01ac99 #00b19d;

@each $color in $color-pallete {
  #tve_53_set {
    .thrv-leads-form-box.tve_#{nth($color, 1)} {
      background: nth($color, 3);
    }
    .thrv-leads-screen-filler.tve_#{nth($color, 1)} {
      background: nth($color, 3);
    }
    .tve_cb.tve_cb5.tve_#{nth($color, 1)} {
      background: nth($color, 3);
    }
    .tve_btn.tve_btn1.tve_#{nth($color, 1)} {
      @include linear-gradient(nth($color, 2), nth($color, 3));
      &:hover {
        @include linear-gradient(nth($color, 4), nth($color, 5));
      }
      &:active {
        @include linear-gradient(nth($color, 6), nth($color, 5));
      }
    }
    .thrv_lead_generation.tve_#{nth($color, 1)} {
      button {
        @include linear-gradient(nth($color, 2), nth($color, 3));
        &:hover {
          @include linear-gradient(nth($color, 4), nth($color, 5));
        }
        &:active {
          @include linear-gradient(nth($color, 6), nth($color, 5));
        }
      }
    }
  }
}

@import "_responsive";

@media only screen and (max-width: 940px) {
  #tve_53_set .tve-leads-lightbox #tve_editor .tve_p_lb_control {
    padding: 30px 15px;
  }
  #tve_53_set .thrv-leads-screen-filler .tve_editor_main_content {
    padding: 20px;
  }
  .set_53_cb {
    display: none!important;
  }
}