@import "bourbon";

@mixin cabin {
  font-family: 'Cabin', sans-serif;
}

@mixin robotoslab {
  font-family: 'Roboto Slab', serif;
}

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

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

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

#tve_51_set {
  [class*='51_set'] {
    a {
      color: inherit;
    }
    h2 {
      @include robotoslab();
      color: #ffffff;
      font-weight: 300;
      font-size: 45px;
      line-height: 1.3em;
      .bold_text {
        color: #87c3ff;
      }
    }
    h3 {
      @include robotoslab();
      color: #87c3ff;
      font-weight: 300;
      font-size: 35px;
      line-height: 1.2em;
      letter-spacing: normal;
    }
    h4 {
      @include robotoslab();
      color: #fff;
      font-weight: 300;
      font-size: 30px;
      line-height: 1.2em;
      letter-spacing: normal;
    }
    h5 {
      @include robotoslab();
      color: #87c3ff;
      font-size: 26px;
      font-weight: 300;
      line-height: 1.5em;
      letter-spacing: normal;
    }
    h6 {
      @include robotoslab();
      color: #87c3ff;
      font-size: 24px;
      font-weight: 300;
      line-height: 1.5em;
      letter-spacing: normal;
    }
    p {
      @include cabin();
      color: #666666;
      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_51_set {
  @include cabin();
  text-shadow: none;
  [class*='51_set'] {
    .tve_p_lb_close {
      @include cabin();
      border: none;
      background: transparent;
      box-shadow: none;
      color: #ffffff;
      font-size: 20px;
      font-weight: 300;
      top: 10px;
      right: 10px;
    }
    .tve-screen-filler-close, .tve-form-close {
      @include cabin();
      border: none;
      background: none;
      cursor: pointer;
      display: block;
      font-size: 20px;
      font-weight: 300;
      height: 23px;
      line-height: 23px;
      position: absolute;
      top: 10px;
      right: 10px;
      text-align: center;
      text-decoration: none;
      width: auto;
      z-index: 100;
    }
    .tve-form-close {
      color: #ffffff;
    }
    .tve-screen-filler-close {
      color: #333;
    }
  }
  .tve-leads-lightbox {
    .tve_p_lb_background .tve_p_lb_content {
      background-color: #fff;
      border-radius: 5px;
      box-shadow: none;
      max-width: 750px;
      padding: 0!important;
      overflow: hidden;
    }
  }
  .thrv-leads-form-box {
    border: 0;
    border-radius: 5px;
    margin-bottom: 0;
    margin-top: 0;
    position: relative;
    overflow: hidden;
  }
  .thrv-leads-screen-filler {
    .tve_editor_main_content {
      max-width: 1080px;
    }
  }
  article {
    padding-bottom: 0;
  }
  .thrv_contentbox_shortcode {
    margin-top: 0;
    margin-bottom: 0;
    .tve_cb.tve_cb5 {
      border: 0;
    }
  }
  .tve_image_caption {
    position: relative;
    z-index: 1;
  }
  .tve_btn.tve_btn1 {
    @include cabin();
    border-radius: 7px;
    font-weight: 500;
    text-shadow: none;
    &.tve_normalBtn {
      .tve_btnLink {
        font-size: 25px;
        line-height: 30px;
        padding: 21px 30px;
      }
      &:active {
        .tve_btnLink {
          line-height: 31px;
        }
      }
    }
    .tve_btnLink {
      color: #fff;
      text-shadow: none;
      > span {
        color: inherit;
      }
    }
    &.tve_white {
      a.tve_btnLink {
        span {
          color: #4a4a4a;
        }
      }
    }
  }
  .thrv_lead_generation {
    &.tve_light {
      button {
        color: #4a4a4a;
      }
    }
    button {
      @include cabin();
      border-radius: 7px;
      color: #fff;
      font-weight: 500;
      font-size: 25px;
      line-height: 30px;
      padding: 21px 10px;
      text-shadow: none;
      &:active {
        line-height: 31px;
      }
    }
    input[type="text"], input[type="email"] {
      @include cabin();
      border-radius: 7px;
      box-shadow: 0 0 5px 0 rgba(#000, .24) inset;
      border: 1px solid #cdcdcd;
      background: #fff;
      color: #333333;
      font-size: 24px;
      font-weight: 400;
      height: auto;
      line-height: 28px;
      margin-bottom: 11px;
      padding: 21px 20px !important;
      &:hover {
        box-shadow: 0 0 5px 0 rgba(#000, .61) inset;
      }
      &:focus {
        border: 1px solid #8a8a8a;
      }
    }
  }
  .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: #7f7f7f;
          }
        }
      }
      + label {
        @include cabin();
        color: #666666;
        display: inline-block;
        position: relative;
        font-size: 24px;
        font-weight: 400;
        &:before {
          border: 1px solid #a3a3a3;
          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: 10px;
          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 cabin();
          color: #666666;
          cursor: pointer;
          font-size: 24px;
          font-weight: 400;
          position: relative;
          padding-left: 35px;
          &:before {
            border: 1px solid #a3a3a3;
            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: #7f7f7f;
            border: 1px solid #7f7f7f;
          }
        }
      }
      &: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 cabin();
      background-color: #fff;
      border: 1px solid #b2b2b2;
      box-shadow: 0 0 5px 0 rgba(#000, .24) inset;
      color: #5e5e5e;
      border-radius: 7px;
      cursor: pointer;
      display: inline-block;
      font-size: 24px;
      font-weight: 400;
      line-height: 26px;
      height: 70px;
      margin: 0;
      outline: none;
      padding-right: 40px!important;
      option {
        color: #5e5e5e;
        font-size: 24px;
        font-weight: 400;
      }
      &:hover {
        border: 1px solid #cdcdcd;
        background: #fff;
        box-shadow: 0 0 5px 0 rgba(#000, .57) inset;
      }
    }
    .tve_sc_icon {
      margin-right: 20px;
    }
    &:after {
      background: transparent;
      border-radius: 100px;
      border: 1px solid #a3a3a3;
      color: #a3a3a3;
      content: "\022C1";
      font-size: 17px;
      height: 20px;
      line-height: 21px;
      pointer-events: none;
      position: absolute;
      top: 25px;
      right: 20px;
      text-align: center;
      width: 20px;
    }
  }
}

$color-pallete:
'blue' #2e70b2 #3676b6 #3277bc #1a548d #306aa4 #3e96ef,
'black' #4f4f4f #5d5d5d #5e5e5e #2c2c2c #000 #494848,
'green' #3c8021 #448b28 #428d24 #2d6616 #3c8021 #73b758,
'white' #eaeaea #f2f2f2 #e6e6e6 #a6a6a6 #eaeaea #fff,
'orange' #c87600 #d78208 #da8000 #88611e #c87600 #dfb06c,
'purple' #7d488c #865195 #9457a6 #612789 #7d488c #c770df,
'red' #9f2828 #a73434 #c94949 #891e1e #9f2828 #e15c5c,
'teal' #239279 #2b9980 #31a183 #137167 #239279 #45d9b8;

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

@import "_responsive";

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