@import "bourbon";

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

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

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

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

#tve_44_set {
  [class*='44_set'] {
    a {
      color: inherit;
    }
    h2 {
      @include lato();
      color: #333;
      font-weight: 400;
      font-size: 30px;
      line-height: 1.5em;
      letter-spacing: normal;
    }
    h3 {
      @include lato();
      color: #136e2b;
      font-weight: 400;
      font-size: 28px;
      line-height: 1.5em;
      letter-spacing: normal;
    }
    h4 {
      @include lato();
      color: #666666;
      font-weight: 400;
      font-size: 24px;
      line-height: 1.667em;
      letter-spacing: normal;
    }
    h5 {
      @include lato();
      color: #136e2b;
      font-size: 22px;
      font-weight: 400;
      line-height: 1.875em;
      letter-spacing: normal;
    }
    h6 {
      @include lato();
      color: #136e2b;
      font-size: 20px;
      font-weight: 400;
      line-height: 1.875em;
      letter-spacing: normal;
    }
    p {
      @include lato();
      color: #bae5c5;
      font-weight: 400;
      font-size: 20px;
      letter-spacing: normal;
      line-height: 1.5em;
      margin-bottom: 20px;
    }
    h2, h3, h4, h5, h6 {
      clear: none;
      padding-bottom: 0;
    }
  }
}

#tve_44_set {
  @include lato();
  overflow: hidden;
  text-shadow: none;
  .tve_p_lb_close, .tve-screen-filler-close {
    border: 1px solid #8f8f8f;
    background: transparent;
    color: #8f8f8f;
    top: 15px;
    right: 15px;
  }
  .tve-screen-filler-close, .tve-form-close {
    @include lato();
    border-radius: 50%;
    border: 1px solid #8f8f8f;
    background: transparent;
    color: #8f8f8f;
    display: block;
    font-size: 20px;
    font-weight: 300;
    height: 23px;
    line-height: 18px;
    position: absolute;
    top: 20px;
    right: 20px;
    text-align: center;
    text-decoration: none;
    width: 23px;
  }
  .thrv-leads-form-box {
    .tve-form-close {
      color: #8f8f8f;
      font-size: 20px;
      line-height: 21px;
    }
  }
  .tve-leads-lightbox {
    .tve_p_lb_background .tve_p_lb_content {
      background: #126e29;
      border-radius: 0;
      box-shadow: 5px 5px 5px 0 rgba(#000, .14);
      max-width: 750px;
      padding: 0!important;
    }
    #tve_editor {
      .tve_p_lb_control {
        padding: 15px 20px 40px;
      }
    }
  }
  .thrv-leads-form-box {
    box-shadow: 5px 5px 5px 0 rgba(#000, .14);
    margin-bottom: 0;
    margin-top: 0;
    position: relative;
  }
  article {
    padding-bottom: 0;
  }
  .tve_image {
    position: relative;
    z-index: 1;
  }
  .thrv_contentbox_shortcode {
    margin-top: 0;
  }
  .thrv_content_container_shortcode {
    margin-bottom: 0;
  }
  .thrv-leads-screen-filler {
    .tve-screen-filler-content {
      padding: 20px;
    }
    .tve_cb.tve_cb5 {
      &:after {
        margin: 0 auto;
        left: 0;
        right: 0;
      }
    }
  }
  .tve_cb.tve_cb5 {
    border: 0;
    box-shadow: 0 4px 8px -4px #000000;
    position: relative;
    &:after {
      @include transform(rotate(144deg) skewX(20deg));
      background: inherit;
      content: '';
      display: block;
      height: 40px;
      position: absolute;
      left: 90px;
      bottom: -20px;
      width: 40px;
    }
  }
  .tve_btn.tve_btn1 {
    @include lato();
    border-radius: 0;
    border-width: 0!important;
    font-weight: 400;
    &.tve_normalBtn {
      .tve_btnLink {
        font-size: 20px;
        line-height: 30px;
        padding: 10px 20px 12px;
      }
    }
    .tve_btnLink {
      background: inherit;
      border-color: inherit;
      border-style: solid;
      border-width: 1px;
      color: #000107;
      margin: 3px;
      text-shadow: none;
      > span {
        color: inherit;
      }
    }
    &.tve_black {
      a.tve_btnLink {
        span {
          color: #fff;
        }
      }
    }
  }
  .thrv_lead_generation {
    &.tve_black {
      button {
        color: #fff;
        &:hover, &:active {
          color: #fff;
        }
      }
    }
    &.thrv_lead_generation_vertical {
      input[type="text"], input[type="email"] {
        margin-bottom: 10px;
      }
    }
    button {
      @include lato();
      border-radius: 0;
      border-style: solid;
      border-width: 3px;
      color: #000107;
      font-weight: 400;
      font-size: 20px;
      line-height: 30px;
      padding: 15px 10px;
      text-shadow: none;
    }
    input[type="text"], input[type="email"] {
      @include lato();
      border-radius: 0;
      box-shadow: none;
      border: 1px solid #fff;
      background: rgba(#fff, .06);
      color: #fff;
      font-size: 20px;
      font-weight: 400;
      height: auto;
      line-height: 28px;
      padding: 14px 20px !important;
      &:hover {
        background: rgba(#fff, .14);
      }
      &:focus {
        background: rgba(#fff, .03);
      }
    }
  }
  .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%;
      + label {
        @include lato();
        color: #fff;
        display: inline-block;
        position: relative;
        font-size: 18px;
        font-weight: 300;
        &:before {
          background-color: transparent;
          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: 7px;
          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 lato();
          color: #fff;
          cursor: pointer;
          font-size: 18px;
          font-weight: 300;
          position: relative;
          padding-left: 35px;
          &:before {
            background-color: transparent;
            content: '';
            height: 20px;
            position: absolute;
            left: 0;
            top: 4px;
            width: 20px;
          }
          &:after {
            @include transition(all, .2s);
            content: "\02713";
            font-size: 15px;
            font-weight: 600;
            position: absolute;
            top: 5px;
            left: 5px;
          }
        }
      }
      &: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 lato();
      background-color: rgba(#fff, .06);
      border: 1px solid #fff;
      color: #fff;
      border-radius: 0;
      cursor: pointer;
      display: inline-block;
      font-size: 22px;
      font-weight: 400;
      height: 60px;
      margin: 0;
      padding-right: 40px!important;
      outline: none;
      option {
        color: #333;
        font-size: 18px;
        font-weight: 400;
      }
      &:focus {
        background-color: rgba(#fff, .14);
      }
      &:hover {
        background-color: rgba(#fff, .14);
      }
    }
    .tve_sc_icon {
      margin-right: 20px;
    }
    &:after {
      background: transparent;
      border-radius: 100px;
      border: 1px solid #fff;
      color: #fff;
      content: "\022C1";
      font-size: 17px;
      height: 20px;
      line-height: 20px;
      pointer-events: none;
      position: absolute;
      top: 23px;
      right: 20px;
      text-align: center;
      width: 20px;
    }
  }
}

$color-pallete:
'blue' #d2f3fb #afeceb #d7f2f8 #8cd1d1 #b4e5ed #7cc2c2 #3b8185 #1c5a5e #3b8185,
'black' #5e5e5e #434343 #5e5e5e #303030 #4b4b4b #373737 #8a8686 #8a8686 #727070,
'green' #b7e6c3 #6dc985 #c6eed0 #5abb73 #ace2ba #5dbc76 #3e9655 #126e29 #3e9655,
'white' #fff #e4e4e4 #f5faf8 #d2d2d2 #ebefed #d6d7d7 #aeaeae #8f8f8f #aaaaaa,
'orange' #f4e7ca #ecdaaf #faefd8 #d8c8a1 #e8dec9 #d9c8a1 #837b65 #584f37 #837b65,
'purple' #efcff0 #ebafec #f1d5f3 #d096d0 #e5bfe7 #d39bd3 #c16ec1 #965997 #c16ec1,
'red' #d6b4b4 #c07272 #e5c0c0 #ad5a5a #d29d9e #b36465 #a44a4a #6e1f1f #883b3b,
'teal' #cff0e5 #9ce4d1 #cff0e5 #7fcdb8 #afe2d3 #8dd3c0 #52ae95 #327e69 #52ae95;

@each $color in $color-pallete {
  #tve_44_set {
    .thrv-leads-form-box.tve_#{nth($color, 1)} {
      background: nth($color, 9);
    }
    .thrv-leads-screen-filler.tve_#{nth($color, 1)} {
      background: nth($color, 9);
    }
    .tve_cb.tve_cb5.tve_#{nth($color, 1)} {
      background: nth($color, 2);
    }
    .tve_btn.tve_btn1.tve_#{nth($color, 1)} {
      @include linear-gradient(nth($color, 2) 0%, nth($color, 3) 100%);
      border-color: nth($color, 8);
      &:hover {
        @include linear-gradient(nth($color, 4) 0%, nth($color, 5) 100%);
        border-color: nth($color, 9);
      }
      &:active {
        @include linear-gradient(nth($color, 6) 0%, nth($color, 7) 100%);
        border-color: nth($color, 10);
      }
    }
    .thrv_lead_generation.tve_#{nth($color, 1)} {
      button {
        @include linear-gradient(nth($color, 2) 0%, nth($color, 3) 100%);
        -webkit-border-image:
        -webkit-gradient(linear, 0 0, 0 100%, from(nth($color, 2)), to(nth($color, 3))) 1 100%;
        -webkit-border-image:
        -webkit-linear-gradient(nth($color, 2), nth($color, 3)) 1 100%;
        -moz-border-image:
        -moz-linear-gradient(nth($color, 2), nth($color, 3)) 1 100%;
        -o-border-image:
        -o-linear-gradient(nth($color, 2), nth($color, 3)) 1 100%;
        border-image:
        linear-gradient(to bottom, nth($color, 2), nth($color, 3)) 1 100%;
        box-shadow: 0 0 0 1px nth($color, 8) inset;
        &:hover {
          @include linear-gradient(nth($color, 4) 0%, nth($color, 5) 100%);
          @include linear-gradient(nth($color, 4) 0%, nth($color, 5) 100%);
          -webkit-border-image:
          -webkit-gradient(linear, 0 0, 0 100%, from(nth($color, 4)), to(nth($color, 5))) 1 100%;
          -webkit-border-image:
          -webkit-linear-gradient(nth($color, 4), nth($color, 5)) 1 100%;
          -moz-border-image:
          -moz-linear-gradient(nth($color, 4), nth($color, 5)) 1 100%;
          -o-border-image:
          -o-linear-gradient(nth($color, 4), nth($color, 5)) 1 100%;
          border-image:
          linear-gradient(to bottom, nth($color, 4), nth($color, 5)) 1 100%;
          box-shadow: 0 0 0 1px nth($color, 9) inset;
        }
        &:active {
          @include linear-gradient(nth($color, 6) 0%, nth($color, 7) 100%);
          @include linear-gradient(nth($color, 6) 0%, nth($color, 7) 100%);
          -webkit-border-image:
          -webkit-gradient(linear, 0 0, 0 100%, from(nth($color, 6)), to(nth($color, 7))) 1 100%;
          -webkit-border-image:
          -webkit-linear-gradient(nth($color, 6), nth($color, 7)) 1 100%;
          -moz-border-image:
          -moz-linear-gradient(nth($color, 6), nth($color, 7)) 1 100%;
          -o-border-image:
          -o-linear-gradient(nth($color, 6), nth($color, 7)) 1 100%;
          border-image:
          linear-gradient(to bottom, nth($color, 6), nth($color, 7)) 1 100%;
          box-shadow: 0 0 0 1px nth($color, 9) inset;
        }
      }
      input[type="radio"] {
        + label {
          &:before {
            border: 1px solid nth($color, 2);
          }
        }
        &:checked + label {
          &:after {
            background: nth($color, 2);
          }
        }
      }
      input[type="checkbox"] {
        &:not(:checked) {
          + label {
            &:before {
              border: 1px solid nth($color, 2);
            }
          }
        }
        &:checked {
          + label {
            &:before {
              background: rgba(nth($color, 2), .5);
              border: 1px solid rgba(nth($color, 2), .5);
            }
            &:after {
              color: nth($color, 5);
            }
          }
        }
      }
    }
  }
}

@import "_responsive";

@media only screen and (max-width: 940px) {
  #tve_44_set {
    [class*="tve_44_set"] {
      .tve_oth {
        .tve_image_caption {
          margin-top: 10px!important;
        }
      }
    }
  }
}